summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--FILES.byname753
-rw-r--r--FILES.byname.gzbin2429189 -> 2429248 bytes
-rw-r--r--FILES.last07days706
-rw-r--r--fonts/erewhon-math/Erewhon-Math.ltx18
-rw-r--r--fonts/erewhon-math/Erewhon-Math.otfbin375788 -> 379488 bytes
-rw-r--r--fonts/erewhon-math/Erewhon-Math.pdfbin171065 -> 176487 bytes
-rw-r--r--fonts/erewhon-math/README.md71
-rw-r--r--fonts/erewhon-math/fourier-otf.sty5
-rw-r--r--fonts/erewhon-math/unimath-erewhon.pdfbin1845302 -> 1847239 bytes
-rw-r--r--fonts/haranoaji-extra/HaranoAjiGothic-ExtraLight.otfbin4375160 -> 4376408 bytes
-rw-r--r--fonts/haranoaji-extra/HaranoAjiGothic-Light.otfbin4654460 -> 4655752 bytes
-rw-r--r--fonts/haranoaji-extra/HaranoAjiGothic-Normal.otfbin4667296 -> 4668600 bytes
-rw-r--r--fonts/haranoaji-extra/HaranoAjiMincho-ExtraLight.otfbin5811944 -> 5813388 bytes
-rw-r--r--fonts/haranoaji-extra/HaranoAjiMincho-Heavy.otfbin6471976 -> 6473480 bytes
-rw-r--r--fonts/haranoaji-extra/HaranoAjiMincho-Medium.otfbin6417724 -> 6419272 bytes
-rw-r--r--fonts/haranoaji-extra/HaranoAjiMincho-SemiBold.otfbin6449112 -> 6450604 bytes
-rw-r--r--fonts/haranoaji-extra/README2
-rw-r--r--fonts/haranoaji/HaranoAjiGothic-Bold.otfbin4796608 -> 4797892 bytes
-rw-r--r--fonts/haranoaji/HaranoAjiGothic-Heavy.otfbin4992784 -> 4994048 bytes
-rw-r--r--fonts/haranoaji/HaranoAjiGothic-Medium.otfbin4688716 -> 4689988 bytes
-rw-r--r--fonts/haranoaji/HaranoAjiGothic-Regular.otfbin4671364 -> 4672628 bytes
-rw-r--r--fonts/haranoaji/HaranoAjiMincho-Bold.otfbin6617328 -> 6618872 bytes
-rw-r--r--fonts/haranoaji/HaranoAjiMincho-Light.otfbin6275436 -> 6276992 bytes
-rw-r--r--fonts/haranoaji/HaranoAjiMincho-Regular.otfbin6354304 -> 6355800 bytes
-rw-r--r--fonts/haranoaji/README2
-rw-r--r--graphics/mcf2graph/CHANGELOG7
-rw-r--r--graphics/mcf2graph/README30
-rw-r--r--graphics/mcf2graph/mcf2graph.mp1980
-rw-r--r--graphics/mcf2graph/mcf_data_base.mcf12
-rw-r--r--graphics/mcf2graph/mcf_exa_soc.mp13
-rw-r--r--graphics/mcf2graph/mcf_example.pdfbin431882 -> 431593 bytes
-rw-r--r--graphics/mcf2graph/mcf_example.tex8
-rw-r--r--graphics/mcf2graph/mcf_man_soc.mp176
-rw-r--r--graphics/mcf2graph/mcf_manual.pdfbin292526 -> 292313 bytes
-rw-r--r--graphics/mcf2graph/mcf_manual.tex2
-rw-r--r--graphics/mcf2graph/mcf_mplib_exa.pdfbin197137 -> 197089 bytes
-rw-r--r--graphics/mcf2graph/mcf_mplib_exa.tex57
-rw-r--r--macros/latex/contrib/caption/CHANGELOG31
-rw-r--r--macros/latex/contrib/caption/README22
-rw-r--r--macros/latex/contrib/caption/bicaption.dtx1132
-rw-r--r--macros/latex/contrib/caption/bicaption.pdfbin117664 -> 149792 bytes
-rw-r--r--macros/latex/contrib/caption/caption-ams-smf.dtx6
-rw-r--r--macros/latex/contrib/caption/caption-beamer.dtx33
-rw-r--r--macros/latex/contrib/caption/caption-deu.pdfbin409837 -> 0 bytes
-rw-r--r--macros/latex/contrib/caption/caption-deu.tex4624
-rw-r--r--macros/latex/contrib/caption/caption-elsarticle.dtx6
-rw-r--r--macros/latex/contrib/caption/caption-eng.pdfbin402934 -> 0 bytes
-rw-r--r--macros/latex/contrib/caption/caption-eng.tex4458
-rw-r--r--macros/latex/contrib/caption/caption-koma.dtx6
-rw-r--r--macros/latex/contrib/caption/caption-light.dtx36
-rw-r--r--macros/latex/contrib/caption/caption-memoir.dtx36
-rw-r--r--macros/latex/contrib/caption/caption-ntg.dtx6
-rw-r--r--macros/latex/contrib/caption/caption-rus.pdfbin718117 -> 0 bytes
-rw-r--r--macros/latex/contrib/caption/caption-rus.tex6226
-rw-r--r--macros/latex/contrib/caption/caption-thesis.dtx6
-rw-r--r--macros/latex/contrib/caption/caption.dtx6208
-rw-r--r--macros/latex/contrib/caption/caption.ins28
-rw-r--r--macros/latex/contrib/caption/caption.pdf9377
-rw-r--r--macros/latex/contrib/caption/caption2.dtx396
-rw-r--r--macros/latex/contrib/caption/caption2.pdfbin0 -> 77411 bytes
-rw-r--r--macros/latex/contrib/caption/caption3.dtx761
-rw-r--r--macros/latex/contrib/caption/fallback/v1/caption.dtx489
-rw-r--r--macros/latex/contrib/caption/fallback/v2.0/caption2.dtx606
-rw-r--r--macros/latex/contrib/caption/fallback/v2.1/caption2.dtx1329
-rw-r--r--macros/latex/contrib/caption/fallback/v3.0/caption.dtx5077
-rw-r--r--macros/latex/contrib/caption/fallback/v3.1/caption.dtx7985
-rw-r--r--macros/latex/contrib/caption/fallback/v3.2/caption.dtx4521
-rw-r--r--macros/latex/contrib/caption/fallback/v3.2/caption3.dtx3668
-rw-r--r--macros/latex/contrib/caption/fallback/v3.3/caption.dtx4968
-rw-r--r--macros/latex/contrib/caption/fallback/v3.3/caption3.dtx4176
-rw-r--r--macros/latex/contrib/caption/fallback/v3.4/caption.dtx4538
-rw-r--r--macros/latex/contrib/caption/fallback/v3.4/caption3.dtx4231
-rw-r--r--macros/latex/contrib/caption/fallback/v3.5/caption.dtx4292
-rw-r--r--macros/latex/contrib/caption/fallback/v3.5/caption3.dtx4680
-rw-r--r--macros/latex/contrib/caption/ltcaption.dtx30
-rw-r--r--macros/latex/contrib/caption/subcaption.dtx1868
-rw-r--r--macros/latex/contrib/caption/subcaption.pdfbin154563 -> 221744 bytes
-rw-r--r--macros/latex/contrib/crefthe/crefthe-doc.pdfbin111955 -> 112174 bytes
-rw-r--r--macros/latex/contrib/crefthe/crefthe-doc.tex6
-rw-r--r--macros/latex/contrib/crefthe/crefthe.sty17
-rw-r--r--macros/latex/contrib/fbox/CHANGELOG1
-rw-r--r--macros/latex/contrib/fbox/doc/fbox.pdfbin44756 -> 46291 bytes
-rw-r--r--macros/latex/contrib/fbox/doc/fbox.tex26
-rw-r--r--macros/latex/contrib/fbox/latex/fbox.sty30
-rw-r--r--macros/latex/contrib/flashcards/README6
-rw-r--r--macros/latex/contrib/flashcards/flashcards.dtx9
-rw-r--r--macros/latex/contrib/flashcards/flashcards.ins4
-rw-r--r--macros/latex/contrib/flashcards/flashcards.pdfbin144601 -> 246934 bytes
-rw-r--r--macros/latex/contrib/memoir/README21
-rw-r--r--macros/latex/contrib/memoir/doc-src/memman.tex7
-rw-r--r--macros/latex/contrib/memoir/memman.pdfbin2838243 -> 2838424 bytes
-rw-r--r--macros/latex/contrib/memoir/memoir.dtx70
-rw-r--r--macros/latex/contrib/preview/preview.dtx39
-rw-r--r--macros/latex/contrib/preview/preview.pdfbin312501 -> 332076 bytes
-rw-r--r--macros/unicodetex/latex/njuthesis/README.md18
-rw-r--r--macros/unicodetex/latex/njuthesis/njuthesis.dtx1611
-rw-r--r--macros/unicodetex/latex/njuthesis/njuthesis.pdfbin1060301 -> 1103774 bytes
-rw-r--r--macros/unicodetex/latex/tipauni/README.txt2
-rw-r--r--macros/unicodetex/latex/tipauni/tipauni-commands.pdfbin70919 -> 70243 bytes
-rw-r--r--macros/unicodetex/latex/tipauni/tipauni-example.pdfbin110031 -> 109364 bytes
-rw-r--r--macros/unicodetex/latex/tipauni/tipauni.dtx353
-rw-r--r--macros/unicodetex/latex/tipauni/tipauni.ins4
-rw-r--r--macros/unicodetex/latex/tipauni/tipauni.pdfbin235299 -> 245485 bytes
-rw-r--r--macros/xetex/latex/xepersian/README2
-rw-r--r--macros/xetex/latex/xepersian/xepersian-doc-intro.ltx2
-rw-r--r--macros/xetex/latex/xepersian/xepersian-doc-title.ltx4
-rw-r--r--macros/xetex/latex/xepersian/xepersian-doc.ltx2
-rw-r--r--macros/xetex/latex/xepersian/xepersian-doc.pdfbin246573 -> 246578 bytes
-rw-r--r--macros/xetex/latex/xepersian/xepersian.dtx216
-rw-r--r--macros/xetex/latex/xepersian/xepersian.pdfbin782344 -> 766381 bytes
-rw-r--r--support/TeX4ht/source/ChangeLog10
-rw-r--r--support/TeX4ht/source/tex4ht-4ht.tex57
-rw-r--r--support/auctex/13.1-extra/CHANGES1209
-rw-r--r--support/auctex/13.1-extra/CHANGES.sigbin0 -> 566 bytes
-rw-r--r--support/auctex/13.1-extra/ChangeLog.128092
-rw-r--r--support/auctex/13.1-extra/ChangeLog.1.sigbin0 -> 566 bytes
-rw-r--r--support/auctex/13.1-extra/auctex.pdfbin0 -> 699308 bytes
-rw-r--r--support/auctex/13.1-extra/auctex.pdf.sigbin0 -> 566 bytes
-rw-r--r--support/auctex/13.1-extra/auctex.ps23439
-rw-r--r--support/auctex/13.1-extra/auctex.ps.sigbin0 -> 566 bytes
-rw-r--r--support/auctex/13.1-extra/tex-ref.pdfbin0 -> 153261 bytes
-rw-r--r--support/auctex/13.1-extra/tex-ref.pdf.sigbin0 -> 566 bytes
-rw-r--r--support/auctex/13.1-extra/tex-ref.ps5431
-rw-r--r--support/auctex/13.1-extra/tex-ref.ps.sigbin0 -> 566 bytes
-rw-r--r--support/auctex/RELEASE-13.1229
-rw-r--r--support/auctex/RELEASE-13.1.sigbin0 -> 566 bytes
-rw-r--r--systems/texlive/tlnet/tlpkg/TeXLive/TLConfig.pm6
-rw-r--r--systems/texlive/tlnet/tlpkg/installer/ctan-mirrors.pl6
-rw-r--r--systems/texlive/tlnet/tlpkg/texlive.tlpdb105
-rw-r--r--systems/texlive/tlnet/tlpkg/texlive.tlpdb.md52
-rw-r--r--systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha5122
-rw-r--r--systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512.asc14
-rw-r--r--systems/texlive/tlnet/tlpkg/texlive.tlpdb.xzbin2351380 -> 2352784 bytes
-rw-r--r--systems/win32/miktex/tm/packages/next/pr.ini8
-rw-r--r--systems/win32/miktex/tm/packages/pr.ini10
-rw-r--r--timestamp2
136 files changed, 130486 insertions, 20284 deletions
diff --git a/FILES.byname b/FILES.byname
index 6b3bc63878..febdd49e5c 100644
--- a/FILES.byname
+++ b/FILES.byname
@@ -5210,7 +5210,7 @@
1990/10/02 | 5440 | dviware/vutex/vaxvms.hlp
1990/10/02 | 812 | dviware/vutex/vaxvms.ins
1990/10/02 | 127576 | dviware/vutex/vutex.web
-2022/02/19 | 389659 | FILES.last07days
+2022/02/20 | 382978 | FILES.last07days
2021/07/24 | 1139410 | fonts/aboensis/Aboensis.glyphs
2021/07/24 | 18907382 | fonts/aboensis/aboensis.pdf
2021/07/24 | 137860 | fonts/aboensis/Aboensis-Regular.otf
@@ -37950,14 +37950,14 @@
2021/12/23 | 3579 | fonts/erewhon/enc/zut1_zhgadb.enc
2021/12/23 | 3900 | fonts/erewhon/enc/zut1_zx32l7.enc
2021/12/23 | 48752 | fonts/erewhon/map/erewhon.map
-2022/02/08 | 26771 | fonts/erewhon-math/Erewhon-Math.ltx
-2022/02/08 | 375788 | fonts/erewhon-math/Erewhon-Math.otf
-2022/02/08 | 171065 | fonts/erewhon-math/Erewhon-Math.pdf
-2022/02/08 | 8077 | fonts/erewhon-math/fourier-otf.sty
-2022/02/08 | 5204 | fonts/erewhon-math/README.md
-2022/02/08 | 16947 | fonts/erewhon-math/unimath-erewhon.ltx
-2022/02/08 | 1845302 | fonts/erewhon-math/unimath-erewhon.pdf
-2022/02/08 | 2238756 | fonts/erewhon-math.zip
+2022/02/20 | 27134 | fonts/erewhon-math/Erewhon-Math.ltx
+2022/02/20 | 379488 | fonts/erewhon-math/Erewhon-Math.otf
+2022/02/20 | 176487 | fonts/erewhon-math/Erewhon-Math.pdf
+2022/02/20 | 8144 | fonts/erewhon-math/fourier-otf.sty
+2022/02/20 | 5684 | fonts/erewhon-math/README.md
+2022/02/20 | 16947 | fonts/erewhon-math/unimath-erewhon.ltx
+2022/02/20 | 1847239 | fonts/erewhon-math/unimath-erewhon.pdf
+2022/02/20 | 2251366 | fonts/erewhon-math.zip
2021/12/23 | 227244 | fonts/erewhon/opentype/Erewhon-BoldItalic.otf
2021/12/23 | 246216 | fonts/erewhon/opentype/Erewhon-Bold.otf
2021/12/23 | 238264 | fonts/erewhon/opentype/Erewhon-BoldSlanted.otf
@@ -51427,28 +51427,28 @@
1992/09/27 | 415 | fonts/hands/reverse.mf
1992/09/27 | 518 | fonts/hands/rvmirror.mf
2005/05/20 | 3188 | fonts/hands.zip
-2022/01/30 | 4375160 | fonts/haranoaji-extra/HaranoAjiGothic-ExtraLight.otf
-2022/01/30 | 4654460 | fonts/haranoaji-extra/HaranoAjiGothic-Light.otf
-2022/01/30 | 4667296 | fonts/haranoaji-extra/HaranoAjiGothic-Normal.otf
-2022/01/30 | 5811944 | fonts/haranoaji-extra/HaranoAjiMincho-ExtraLight.otf
-2022/01/30 | 6471976 | fonts/haranoaji-extra/HaranoAjiMincho-Heavy.otf
-2022/01/30 | 6417724 | fonts/haranoaji-extra/HaranoAjiMincho-Medium.otf
-2022/01/30 | 6449112 | fonts/haranoaji-extra/HaranoAjiMincho-SemiBold.otf
+2022/02/20 | 4376408 | fonts/haranoaji-extra/HaranoAjiGothic-ExtraLight.otf
+2022/02/20 | 4655752 | fonts/haranoaji-extra/HaranoAjiGothic-Light.otf
+2022/02/20 | 4668600 | fonts/haranoaji-extra/HaranoAjiGothic-Normal.otf
+2022/02/20 | 5813388 | fonts/haranoaji-extra/HaranoAjiMincho-ExtraLight.otf
+2022/02/20 | 6473480 | fonts/haranoaji-extra/HaranoAjiMincho-Heavy.otf
+2022/02/20 | 6419272 | fonts/haranoaji-extra/HaranoAjiMincho-Medium.otf
+2022/02/20 | 6450604 | fonts/haranoaji-extra/HaranoAjiMincho-SemiBold.otf
2022/01/30 | 4301 | fonts/haranoaji-extra/LICENSE
-2022/01/30 | 3193 | fonts/haranoaji-extra/README
-2022/01/30 | 32828055 | fonts/haranoaji-extra.zip
-2022/01/30 | 4796608 | fonts/haranoaji/HaranoAjiGothic-Bold.otf
+2022/02/20 | 3193 | fonts/haranoaji-extra/README
+2022/02/20 | 32834506 | fonts/haranoaji-extra.zip
+2022/02/20 | 4797892 | fonts/haranoaji/HaranoAjiGothic-Bold.otf
2022/01/27 | 214 | fonts/haranoaji/HaranoAjiGothic.fontspec
-2022/01/30 | 4992784 | fonts/haranoaji/HaranoAjiGothic-Heavy.otf
-2022/01/30 | 4688716 | fonts/haranoaji/HaranoAjiGothic-Medium.otf
-2022/01/30 | 4671364 | fonts/haranoaji/HaranoAjiGothic-Regular.otf
-2022/01/30 | 6617328 | fonts/haranoaji/HaranoAjiMincho-Bold.otf
+2022/02/20 | 4994048 | fonts/haranoaji/HaranoAjiGothic-Heavy.otf
+2022/02/20 | 4689988 | fonts/haranoaji/HaranoAjiGothic-Medium.otf
+2022/02/20 | 4672628 | fonts/haranoaji/HaranoAjiGothic-Regular.otf
+2022/02/20 | 6618872 | fonts/haranoaji/HaranoAjiMincho-Bold.otf
2022/01/27 | 211 | fonts/haranoaji/HaranoAjiMincho.fontspec
-2022/01/30 | 6275436 | fonts/haranoaji/HaranoAjiMincho-Light.otf
-2022/01/30 | 6354304 | fonts/haranoaji/HaranoAjiMincho-Regular.otf
+2022/02/20 | 6276992 | fonts/haranoaji/HaranoAjiMincho-Light.otf
+2022/02/20 | 6355800 | fonts/haranoaji/HaranoAjiMincho-Regular.otf
2022/01/30 | 4301 | fonts/haranoaji/LICENSE
-2022/01/30 | 3193 | fonts/haranoaji/README
-2022/01/30 | 32682258 | fonts/haranoaji.zip
+2022/02/20 | 3193 | fonts/haranoaji/README
+2022/02/20 | 32688740 | fonts/haranoaji.zip
2020/05/19 | 56515 | fonts/helmholtz-ellis-ji-notation/font/HEJI2Text.otf
2020/05/19 | 14207 | fonts/helmholtz-ellis-ji-notation/helmholtz-ellis-ji-notation.dtx
2020/05/19 | 1915 | fonts/helmholtz-ellis-ji-notation/helmholtz-ellis-ji-notation.ins
@@ -151523,19 +151523,19 @@
2011/05/31 | 231925 | graphics/mathspic/perl/sourcecode113.html
2011/05/31 | 183530 | graphics/mathspic/perl/sourcecode113.nw
2011/05/31 | 2864043 | graphics/mathspic/perl/sourcecode113.pdf
-2022/01/22 | 17318 | graphics/mcf2graph/CHANGELOG
-2022/01/22 | 111995 | graphics/mcf2graph/mcf2graph.mp
-2022/01/22 | 100620 | graphics/mcf2graph/mcf_data_base.mcf
-2022/01/22 | 431882 | graphics/mcf2graph/mcf_example.pdf
-2022/01/22 | 2801 | graphics/mcf2graph/mcf_example.tex
-2022/01/22 | 2139 | graphics/mcf2graph/mcf_exa_soc.mp
-2022/01/22 | 42693 | graphics/mcf2graph/mcf_man_soc.mp
-2022/01/22 | 292526 | graphics/mcf2graph/mcf_manual.pdf
-2022/01/22 | 57532 | graphics/mcf2graph/mcf_manual.tex
-2022/01/22 | 197137 | graphics/mcf2graph/mcf_mplib_exa.pdf
-2022/01/22 | 14631 | graphics/mcf2graph/mcf_mplib_exa.tex
-2022/01/22 | 3833 | graphics/mcf2graph/README
-2022/01/22 | 974530 | graphics/mcf2graph.zip
+2022/02/19 | 17425 | graphics/mcf2graph/CHANGELOG
+2022/02/20 | 102120 | graphics/mcf2graph/mcf2graph.mp
+2022/02/20 | 100635 | graphics/mcf2graph/mcf_data_base.mcf
+2022/02/20 | 431593 | graphics/mcf2graph/mcf_example.pdf
+2022/02/20 | 2801 | graphics/mcf2graph/mcf_example.tex
+2022/02/20 | 2166 | graphics/mcf2graph/mcf_exa_soc.mp
+2022/02/20 | 42878 | graphics/mcf2graph/mcf_man_soc.mp
+2022/02/20 | 292313 | graphics/mcf2graph/mcf_manual.pdf
+2022/02/13 | 57532 | graphics/mcf2graph/mcf_manual.tex
+2022/02/20 | 197089 | graphics/mcf2graph/mcf_mplib_exa.pdf
+2022/02/20 | 14549 | graphics/mcf2graph/mcf_mplib_exa.tex
+2022/02/20 | 3593 | graphics/mcf2graph/README
+2022/02/20 | 972970 | graphics/mcf2graph.zip
2004/07/13 | 8567 | graphics/metaplot/axes.mp
2004/06/28 | 1122 | graphics/metaplot/examples/cap1.cc
2004/06/28 | 2178 | graphics/metaplot/examples/cap1.mp
@@ -185126,7 +185126,7 @@
2021/08/18 | 801818 | install/macros/latex/contrib/bytefield.tds.zip
2009/10/01 | 166291 | install/macros/latex/contrib/cachepic.tds.zip
2014/02/24 | 625238 | install/macros/latex/contrib/calculator.tds.zip
-2020/10/26 | 2081623 | install/macros/latex/contrib/caption.tds.zip
+2022/02/20 | 1680829 | install/macros/latex/contrib/caption.tds.zip
2019/12/10 | 304516 | install/macros/latex/contrib/catchfile.tds.zip
2011/08/07 | 511024 | install/macros/latex/contrib/ccaption.tds.zip
2009/10/20 | 291969 | install/macros/latex/contrib/changepage.tds.zip
@@ -185260,7 +185260,7 @@
2013/07/01 | 1898068 | install/macros/latex/contrib/mdframed.tds.zip
2021/10/19 | 164716 | install/macros/latex/contrib/media4svg.tds.zip
2021/10/18 | 7473765 | install/macros/latex/contrib/media9.tds.zip
-2021/06/16 | 3654012 | install/macros/latex/contrib/memoir.tds.zip
+2022/02/20 | 3655680 | install/macros/latex/contrib/memoir.tds.zip
2020/08/06 | 24409080 | install/macros/latex/contrib/mercatormap.tds.zip
2021/10/15 | 722347 | install/macros/latex/contrib/mfirstuc.tds.zip
2021/12/10 | 3009927 | install/macros/latex/contrib/microtype.tds.zip
@@ -185435,7 +185435,7 @@
2015/02/17 | 92757 | install/macros/xetex/latex/interchar.tds.zip
2021/08/19 | 464024 | install/macros/xetex/latex/mynsfc.tds.zip
2021/12/12 | 1924110 | install/macros/xetex/latex/xecjk.tds.zip
-2022/02/19 | 1302690 | install/macros/xetex/latex/xepersian.tds.zip
+2022/02/20 | 1287056 | install/macros/xetex/latex/xepersian.tds.zip
2008/06/20 | 3954 | install/macros/xetex/plain/xetexfontinfo.tds.zip
2013/01/04 | 36361 | install/support/adhocfilelist.tds.zip
2021/11/27 | 2294905 | install/support/albatross.tds.zip
@@ -206699,37 +206699,46 @@
2010/03/06 | 3264 | macros/latex/contrib/captdef/captdef.tex
2010/03/06 | 3423 | macros/latex/contrib/captdef/miscdoc.sty
2010/03/06 | 216809 | macros/latex/contrib/captdef.zip
-2020/10/26 | 51914 | macros/latex/contrib/caption/bicaption.dtx
-2020/10/26 | 117664 | macros/latex/contrib/caption/bicaption.pdf
-2020/10/26 | 50405 | macros/latex/contrib/caption/caption2.dtx
-2020/10/26 | 178657 | macros/latex/contrib/caption/caption3.dtx
-2020/10/26 | 9344 | macros/latex/contrib/caption/caption-ams-smf.dtx
-2020/10/26 | 14387 | macros/latex/contrib/caption/caption-beamer.dtx
-2020/10/26 | 409837 | macros/latex/contrib/caption/caption-deu.pdf
-2020/10/26 | 168795 | macros/latex/contrib/caption/caption-deu.tex
-2020/10/26 | 161732 | macros/latex/contrib/caption/caption.dtx
-2020/10/26 | 7656 | macros/latex/contrib/caption/caption-elsarticle.dtx
-2020/10/26 | 402934 | macros/latex/contrib/caption/caption-eng.pdf
-2020/10/26 | 160577 | macros/latex/contrib/caption/caption-eng.tex
-2020/10/26 | 2845 | macros/latex/contrib/caption/caption.ins
-2020/10/26 | 19499 | macros/latex/contrib/caption/caption-koma.dtx
-2020/10/26 | 13165 | macros/latex/contrib/caption/caption-light.dtx
-2020/10/26 | 67305 | macros/latex/contrib/caption/caption-light.pdf
-2020/10/26 | 12071 | macros/latex/contrib/caption/caption-memoir.dtx
-2020/10/26 | 7766 | macros/latex/contrib/caption/caption-ntg.dtx
-2020/10/26 | 718117 | macros/latex/contrib/caption/caption-rus.pdf
-2020/10/26 | 264773 | macros/latex/contrib/caption/caption-rus.tex
-2020/10/26 | 7932 | macros/latex/contrib/caption/caption-thesis.dtx
-2020/10/26 | 15737 | macros/latex/contrib/caption/cat.eps
-2020/10/26 | 7493 | macros/latex/contrib/caption/CHANGELOG
-2020/10/26 | 21191 | macros/latex/contrib/caption/elephant.eps
-2020/10/26 | 29360 | macros/latex/contrib/caption/ltcaption.dtx
-2020/10/26 | 89996 | macros/latex/contrib/caption/ltcaption.pdf
-2020/10/26 | 3032 | macros/latex/contrib/caption/README
-2020/10/26 | 48207 | macros/latex/contrib/caption/subcaption.dtx
-2020/10/26 | 154563 | macros/latex/contrib/caption/subcaption.pdf
-2020/10/26 | 112 | macros/latex/contrib/caption/SUMMARY
-2020/10/26 | 2033189 | macros/latex/contrib/caption.zip
+2022/02/20 | 66477 | macros/latex/contrib/caption/bicaption.dtx
+2022/02/20 | 149792 | macros/latex/contrib/caption/bicaption.pdf
+2022/02/20 | 50904 | macros/latex/contrib/caption/caption2.dtx
+2022/02/20 | 77411 | macros/latex/contrib/caption/caption2.pdf
+2022/02/20 | 190026 | macros/latex/contrib/caption/caption3.dtx
+2022/02/20 | 9302 | macros/latex/contrib/caption/caption-ams-smf.dtx
+2022/02/20 | 14993 | macros/latex/contrib/caption/caption-beamer.dtx
+2022/02/20 | 337424 | macros/latex/contrib/caption/caption.dtx
+2022/02/20 | 7614 | macros/latex/contrib/caption/caption-elsarticle.dtx
+2022/02/20 | 3922 | macros/latex/contrib/caption/caption.ins
+2022/02/20 | 19457 | macros/latex/contrib/caption/caption-koma.dtx
+2022/02/20 | 13417 | macros/latex/contrib/caption/caption-light.dtx
+2022/02/20 | 67305 | macros/latex/contrib/caption/caption-light.pdf
+2022/02/20 | 12559 | macros/latex/contrib/caption/caption-memoir.dtx
+2022/02/20 | 7724 | macros/latex/contrib/caption/caption-ntg.dtx
+2022/02/20 | 427518 | macros/latex/contrib/caption/caption.pdf
+2022/02/20 | 7890 | macros/latex/contrib/caption/caption-thesis.dtx
+2022/02/20 | 15737 | macros/latex/contrib/caption/cat.eps
+2022/02/20 | 9033 | macros/latex/contrib/caption/CHANGELOG
+2022/02/20 | 21191 | macros/latex/contrib/caption/elephant.eps
+2022/02/20 | 19008 | macros/latex/contrib/caption/fallback/v1/caption.dtx
+2022/02/20 | 21420 | macros/latex/contrib/caption/fallback/v2.0/caption2.dtx
+2022/02/20 | 46949 | macros/latex/contrib/caption/fallback/v2.1/caption2.dtx
+2022/02/20 | 182084 | macros/latex/contrib/caption/fallback/v3.0/caption.dtx
+2022/02/20 | 291007 | macros/latex/contrib/caption/fallback/v3.1/caption.dtx
+2022/02/20 | 135023 | macros/latex/contrib/caption/fallback/v3.2/caption3.dtx
+2022/02/20 | 164933 | macros/latex/contrib/caption/fallback/v3.2/caption.dtx
+2022/02/20 | 153316 | macros/latex/contrib/caption/fallback/v3.3/caption3.dtx
+2022/02/20 | 181048 | macros/latex/contrib/caption/fallback/v3.3/caption.dtx
+2022/02/20 | 157253 | macros/latex/contrib/caption/fallback/v3.4/caption3.dtx
+2022/02/20 | 169192 | macros/latex/contrib/caption/fallback/v3.4/caption.dtx
+2022/02/20 | 178837 | macros/latex/contrib/caption/fallback/v3.5/caption3.dtx
+2022/02/20 | 161734 | macros/latex/contrib/caption/fallback/v3.5/caption.dtx
+2022/02/20 | 30017 | macros/latex/contrib/caption/ltcaption.dtx
+2022/02/20 | 89996 | macros/latex/contrib/caption/ltcaption.pdf
+2022/02/20 | 3067 | macros/latex/contrib/caption/README
+2022/02/20 | 93723 | macros/latex/contrib/caption/subcaption.dtx
+2022/02/20 | 221744 | macros/latex/contrib/caption/subcaption.pdf
+2022/02/20 | 112 | macros/latex/contrib/caption/SUMMARY
+2022/02/20 | 1478106 | macros/latex/contrib/caption.zip
2010/01/22 | 5956 | macros/latex/contrib/capt-of/capt-of.dtx
2010/01/22 | 1434 | macros/latex/contrib/capt-of/capt-of.ins
2010/01/22 | 85950 | macros/latex/contrib/capt-of/capt-of.pdf
@@ -208238,12 +208247,12 @@
2013/04/03 | 3607 | macros/latex/contrib/crbox/crbox.sty
2013/04/03 | 914 | macros/latex/contrib/crbox/README
2013/04/04 | 30542 | macros/latex/contrib/crbox.zip
-2022/02/10 | 111955 | macros/latex/contrib/crefthe/crefthe-doc.pdf
-2022/02/10 | 10311 | macros/latex/contrib/crefthe/crefthe-doc.tex
-2022/02/10 | 9319 | macros/latex/contrib/crefthe/crefthe.sty
-2022/02/10 | 19106 | macros/latex/contrib/crefthe/LICENSE
-2022/02/10 | 2796 | macros/latex/contrib/crefthe/README.md
-2022/02/10 | 123677 | macros/latex/contrib/crefthe.zip
+2022/02/20 | 112174 | macros/latex/contrib/crefthe/crefthe-doc.pdf
+2022/02/20 | 10362 | macros/latex/contrib/crefthe/crefthe-doc.tex
+2022/02/20 | 9257 | macros/latex/contrib/crefthe/crefthe.sty
+2022/02/20 | 19106 | macros/latex/contrib/crefthe/LICENSE
+2022/02/20 | 2796 | macros/latex/contrib/crefthe/README.md
+2022/02/20 | 123879 | macros/latex/contrib/crefthe.zip
2020/06/05 | 67341 | macros/latex/contrib/crop/crop.dtx
2020/06/05 | 260 | macros/latex/contrib/crop/crop.ins
2020/06/05 | 327371 | macros/latex/contrib/crop/crop.pdf
@@ -211639,12 +211648,12 @@
2011/02/07 | 687727 | macros/latex/contrib/fbithesis/fbithesis.pdf
2011/02/07 | 5378 | macros/latex/contrib/fbithesis/README
2011/02/07 | 835676 | macros/latex/contrib/fbithesis.zip
-2020/06/22 | 234 | macros/latex/contrib/fbox/CHANGELOG
-2020/06/22 | 44756 | macros/latex/contrib/fbox/doc/fbox.pdf
-2020/06/22 | 5625 | macros/latex/contrib/fbox/doc/fbox.tex
-2020/06/22 | 3638 | macros/latex/contrib/fbox/latex/fbox.sty
-2020/01/03 | 653 | macros/latex/contrib/fbox/README.md
-2020/06/22 | 47648 | macros/latex/contrib/fbox.zip
+2022/02/20 | 282 | macros/latex/contrib/fbox/CHANGELOG
+2022/02/20 | 46291 | macros/latex/contrib/fbox/doc/fbox.pdf
+2022/02/20 | 6065 | macros/latex/contrib/fbox/doc/fbox.tex
+2022/02/20 | 4019 | macros/latex/contrib/fbox/latex/fbox.sty
+2020/06/07 | 653 | macros/latex/contrib/fbox/README.md
+2022/02/20 | 49316 | macros/latex/contrib/fbox.zip
2017/03/22 | 1106738 | macros/latex/contrib/fc_arith/docs/fc_arithman.pdf
2017/03/22 | 45010 | macros/latex/contrib/fc_arith/docs/fc_arithman.tex
2017/03/22 | 143465 | macros/latex/contrib/fc_arith/examples/fc-acrobat.pdf
@@ -212166,11 +212175,11 @@
2005/08/26 | 100 | macros/latex/contrib/flagderiv/README
2005/08/26 | 199049 | macros/latex/contrib/flagderiv.zip
2000/03/17 | 17976 | macros/latex/contrib/flashcards/COPYING
-2010/08/13 | 27817 | macros/latex/contrib/flashcards/flashcards.dtx
-2010/08/13 | 1218 | macros/latex/contrib/flashcards/flashcards.ins
-2010/08/13 | 144601 | macros/latex/contrib/flashcards/flashcards.pdf
-2010/07/30 | 2626 | macros/latex/contrib/flashcards/README
-2010/08/14 | 141952 | macros/latex/contrib/flashcards.zip
+2022/02/20 | 27874 | macros/latex/contrib/flashcards/flashcards.dtx
+2022/02/20 | 1220 | macros/latex/contrib/flashcards/flashcards.ins
+2022/02/20 | 246934 | macros/latex/contrib/flashcards/flashcards.pdf
+2022/02/20 | 2628 | macros/latex/contrib/flashcards/README
+2022/02/20 | 261094 | macros/latex/contrib/flashcards.zip
2010/11/02 | 31856 | macros/latex/contrib/flashmovie/flashmovie.sty
2008/02/26 | 620 | macros/latex/contrib/flashmovie/flv-player-license/license.txt
2010/04/16 | 25755 | macros/latex/contrib/flashmovie/flv-player-license/MPL-1.1
@@ -218141,25 +218150,25 @@
2008/03/20 | 13908 | macros/latex/contrib/memexsupp/memexsupp.tex
2008/03/20 | 1336 | macros/latex/contrib/memexsupp/README
2008/03/20 | 123432 | macros/latex/contrib/memexsupp.zip
-2021/06/16 | 1518 | macros/latex/contrib/memoir/doc-src/anvil2.mps
-2021/06/16 | 206 | macros/latex/contrib/memoir/doc-src/Makeidxglo
-2021/06/16 | 5519 | macros/latex/contrib/memoir/doc-src/memfonts.sty
-2021/06/16 | 14597 | macros/latex/contrib/memoir/doc-src/memlays.sty
-2021/06/16 | 432 | macros/latex/contrib/memoir/doc-src/memman.gst
-2021/06/16 | 389 | macros/latex/contrib/memoir/doc-src/memman.ist
-2021/06/16 | 1514104 | macros/latex/contrib/memoir/doc-src/memman.tex
-2021/06/16 | 7423 | macros/latex/contrib/memoir/doc-src/memnoidxnum.tex
-2021/06/16 | 42186 | macros/latex/contrib/memoir/doc-src/memsty.sty
-2021/06/16 | 203838 | macros/latex/contrib/memoir/doc-src/setpage-example.pdf
-2021/06/16 | 17396 | macros/latex/contrib/memoir/doc-src/titlepages.sty
-2021/06/16 | 586 | macros/latex/contrib/memoir/doc-src/trims-example.tex
-2021/06/16 | 2838243 | macros/latex/contrib/memoir/memman.pdf
-2021/06/16 | 1258121 | macros/latex/contrib/memoir/memoir.dtx
-2021/06/16 | 3977 | macros/latex/contrib/memoir/memoir.ins
-2021/06/16 | 38371 | macros/latex/contrib/memoir/mempatch.dtx
-2021/06/16 | 2852 | macros/latex/contrib/memoir/mempatch.ins
-2021/06/16 | 47768 | macros/latex/contrib/memoir/README
-2021/06/16 | 3547929 | macros/latex/contrib/memoir.zip
+2022/02/20 | 1518 | macros/latex/contrib/memoir/doc-src/anvil2.mps
+2022/02/20 | 206 | macros/latex/contrib/memoir/doc-src/Makeidxglo
+2022/02/20 | 5519 | macros/latex/contrib/memoir/doc-src/memfonts.sty
+2022/02/20 | 14597 | macros/latex/contrib/memoir/doc-src/memlays.sty
+2022/02/20 | 432 | macros/latex/contrib/memoir/doc-src/memman.gst
+2022/02/20 | 389 | macros/latex/contrib/memoir/doc-src/memman.ist
+2022/02/20 | 1514107 | macros/latex/contrib/memoir/doc-src/memman.tex
+2022/02/20 | 7423 | macros/latex/contrib/memoir/doc-src/memnoidxnum.tex
+2022/02/20 | 42186 | macros/latex/contrib/memoir/doc-src/memsty.sty
+2022/02/20 | 203838 | macros/latex/contrib/memoir/doc-src/setpage-example.pdf
+2022/02/20 | 17396 | macros/latex/contrib/memoir/doc-src/titlepages.sty
+2022/02/20 | 586 | macros/latex/contrib/memoir/doc-src/trims-example.tex
+2022/02/20 | 2838424 | macros/latex/contrib/memoir/memman.pdf
+2022/02/20 | 1260289 | macros/latex/contrib/memoir/memoir.dtx
+2022/02/20 | 3977 | macros/latex/contrib/memoir/memoir.ins
+2022/02/20 | 38371 | macros/latex/contrib/memoir/mempatch.dtx
+2022/02/20 | 2852 | macros/latex/contrib/memoir/mempatch.ins
+2022/02/20 | 48652 | macros/latex/contrib/memoir/README
+2022/02/20 | 3549221 | macros/latex/contrib/memoir.zip
2013/05/13 | 5708 | macros/latex/contrib/memory/memory.dtx
2013/05/10 | 1942 | macros/latex/contrib/memory/memory.ins
2013/05/13 | 30008 | macros/latex/contrib/memory/memory.pdf
@@ -221920,11 +221929,11 @@
2007/01/03 | 43886 | macros/latex/contrib/prettyref/prettyref.pdf
2008/11/05 | 719 | macros/latex/contrib/prettyref/README
2008/11/05 | 36083 | macros/latex/contrib/prettyref.zip
-2020/10/18 | 79458 | macros/latex/contrib/preview/preview.dtx
-2020/10/18 | 1594 | macros/latex/contrib/preview/preview.ins
-2020/10/18 | 312501 | macros/latex/contrib/preview/preview.pdf
-2020/10/18 | 2576 | macros/latex/contrib/preview/README
-2020/10/19 | 335062 | macros/latex/contrib/preview.zip
+2022/02/20 | 80454 | macros/latex/contrib/preview/preview.dtx
+2022/02/20 | 1594 | macros/latex/contrib/preview/preview.ins
+2022/02/20 | 332076 | macros/latex/contrib/preview/preview.pdf
+2022/02/20 | 2576 | macros/latex/contrib/preview/README
+2022/02/20 | 349133 | macros/latex/contrib/preview.zip
2019/06/19 | 346581 | macros/latex/contrib/prftree/prftreedoc.pdf
2019/06/19 | 94089 | macros/latex/contrib/prftree/prftreedoc.tex
2019/06/19 | 61107 | macros/latex/contrib/prftree/prftree.sty
@@ -244778,12 +244787,12 @@
2020/09/29 | 211 | macros/unicodetex/latex/lilyglyphs/tex/README-tex
2020/09/29 | 49 | macros/unicodetex/latex/lilyglyphs/VERSION
2020/09/29 | 2283370 | macros/unicodetex/latex/lilyglyphs.zip
-2022/01/15 | 19105 | macros/unicodetex/latex/njuthesis/LICENSE
-2022/01/15 | 166445 | macros/unicodetex/latex/njuthesis/njuthesis.dtx
-2022/01/15 | 2683 | macros/unicodetex/latex/njuthesis/njuthesis.ins
-2022/01/15 | 1060301 | macros/unicodetex/latex/njuthesis/njuthesis.pdf
-2022/01/15 | 806 | macros/unicodetex/latex/njuthesis/README.md
-2022/01/15 | 1106415 | macros/unicodetex/latex/njuthesis.zip
+2022/02/20 | 19105 | macros/unicodetex/latex/njuthesis/LICENSE
+2022/02/20 | 186929 | macros/unicodetex/latex/njuthesis/njuthesis.dtx
+2022/02/20 | 2683 | macros/unicodetex/latex/njuthesis/njuthesis.ins
+2022/02/20 | 1103774 | macros/unicodetex/latex/njuthesis/njuthesis.pdf
+2022/02/20 | 1052 | macros/unicodetex/latex/njuthesis/README.md
+2022/02/20 | 1154081 | macros/unicodetex/latex/njuthesis.zip
2021/08/05 | 269 | macros/unicodetex/latex/nwafuthesis/build.sh
2021/08/05 | 263 | macros/unicodetex/latex/nwafuthesis/build-win.bat
2021/08/05 | 218987 | macros/unicodetex/latex/nwafuthesis/logo/building.jpg
@@ -244898,15 +244907,15 @@
2021/02/09 | 106690 | macros/unicodetex/latex/texnegar/xepersian-XB.pdf
2021/02/09 | 3113 | macros/unicodetex/latex/texnegar/xepersian-XB.tex
2021/02/09 | 4898310 | macros/unicodetex/latex/texnegar.zip
-2021/12/16 | 458 | macros/unicodetex/latex/tipauni/README.txt
-2021/12/16 | 70919 | macros/unicodetex/latex/tipauni/tipauni-commands.pdf
-2021/12/16 | 4509 | macros/unicodetex/latex/tipauni/tipauni-commands.tex
-2021/12/16 | 49986 | macros/unicodetex/latex/tipauni/tipauni.dtx
-2021/12/16 | 110031 | macros/unicodetex/latex/tipauni/tipauni-example.pdf
-2021/12/16 | 10884 | macros/unicodetex/latex/tipauni/tipauni-example.tex
-2021/12/16 | 1695 | macros/unicodetex/latex/tipauni/tipauni.ins
-2021/12/16 | 235299 | macros/unicodetex/latex/tipauni/tipauni.pdf
-2022/01/02 | 423703 | macros/unicodetex/latex/tipauni.zip
+2022/02/20 | 457 | macros/unicodetex/latex/tipauni/README.txt
+2022/02/20 | 70243 | macros/unicodetex/latex/tipauni/tipauni-commands.pdf
+2022/02/20 | 4509 | macros/unicodetex/latex/tipauni/tipauni-commands.tex
+2022/02/20 | 56923 | macros/unicodetex/latex/tipauni/tipauni.dtx
+2022/02/20 | 109364 | macros/unicodetex/latex/tipauni/tipauni-example.pdf
+2022/02/20 | 10884 | macros/unicodetex/latex/tipauni/tipauni-example.tex
+2022/02/20 | 1703 | macros/unicodetex/latex/tipauni/tipauni.ins
+2022/02/20 | 245485 | macros/unicodetex/latex/tipauni/tipauni.pdf
+2022/02/20 | 433473 | macros/unicodetex/latex/tipauni.zip
2020/01/31 | 15419 | macros/unicodetex/latex/unicode-math/CHANGES.md
2020/01/31 | 19106 | macros/unicodetex/latex/unicode-math/LICENSE
2020/01/31 | 9203 | macros/unicodetex/latex/unicode-math/MANIFEST.md
@@ -245751,9 +245760,9 @@
2014/12/05 | 4915 | macros/xetex/latex/xeindex/xeindex.sty
2014/12/05 | 19009 | macros/xetex/latex/xeindex/xeindex.tex
2014/12/05 | 79942 | macros/xetex/latex/xeindex.zip
-2022/02/19 | 15976 | macros/xetex/latex/xepersian/dkun-0.3.py
-2022/02/19 | 15867 | macros/xetex/latex/xepersian/dkun-0.4.py
-2022/02/19 | 38725 | macros/xetex/latex/xepersian/ftxe-0.12.py
+2022/02/20 | 15976 | macros/xetex/latex/xepersian/dkun-0.3.py
+2022/02/20 | 15867 | macros/xetex/latex/xepersian/dkun-0.4.py
+2022/02/20 | 38725 | macros/xetex/latex/xepersian/ftxe-0.12.py
2020/09/04 | 13130 | macros/xetex/latex/xepersian-hm/doc-ligature-xepersian-hm.pdf
2020/09/04 | 10104 | macros/xetex/latex/xepersian-hm/doc-ligature-xep.pdf
2020/09/04 | 63436 | macros/xetex/latex/xepersian-hm/doc-samples-glyph.pdf
@@ -245775,26 +245784,26 @@
2020/09/04 | 106056 | macros/xetex/latex/xepersian-hm/xepersian-XB.pdf
2020/09/04 | 2945 | macros/xetex/latex/xepersian-hm/xepersian-XB.tex
2020/09/04 | 2217805 | macros/xetex/latex/xepersian-hm.zip
-2022/02/19 | 18304 | macros/xetex/latex/xepersian/img/ireland.jpg
-2022/02/19 | 13088 | macros/xetex/latex/xepersian/img/weather/clouds.jpg
-2022/02/19 | 14616 | macros/xetex/latex/xepersian/img/weather/rain.jpg
-2022/02/19 | 10896 | macros/xetex/latex/xepersian/img/weather/sun.jpg
-2022/02/19 | 1422 | macros/xetex/latex/xepersian/README
-2022/02/19 | 13804 | macros/xetex/latex/xepersian/undk-0.6.py
-2022/02/19 | 12348 | macros/xetex/latex/xepersian/unldk-0.2.py
-2022/02/19 | 71644 | macros/xetex/latex/xepersian/xepersian-doc-basics.ltx
-2022/02/19 | 410 | macros/xetex/latex/xepersian/xepersian-doc-boolean.ltx
-2022/02/19 | 3099 | macros/xetex/latex/xepersian/xepersian-doc-captions.ltx
-2022/02/19 | 5447 | macros/xetex/latex/xepersian/xepersian-doc-envcs.ltx
-2022/02/19 | 2622 | macros/xetex/latex/xepersian/xepersian-doc-intro.ltx
-2022/02/19 | 454 | macros/xetex/latex/xepersian/xepersian-doc.ltx
-2022/02/19 | 246573 | macros/xetex/latex/xepersian/xepersian-doc.pdf
-2022/02/19 | 25946 | macros/xetex/latex/xepersian/xepersian-doc-pkgs.ltx
-2022/02/19 | 4149 | macros/xetex/latex/xepersian/xepersian-doc-preamble.ltx
-2022/02/19 | 2150 | macros/xetex/latex/xepersian/xepersian-doc-title.ltx
-2022/02/19 | 344380 | macros/xetex/latex/xepersian/xepersian.dtx
-2022/02/19 | 782344 | macros/xetex/latex/xepersian/xepersian.pdf
-2022/02/19 | 1139258 | macros/xetex/latex/xepersian.zip
+2022/02/20 | 18304 | macros/xetex/latex/xepersian/img/ireland.jpg
+2022/02/20 | 13088 | macros/xetex/latex/xepersian/img/weather/clouds.jpg
+2022/02/20 | 14616 | macros/xetex/latex/xepersian/img/weather/rain.jpg
+2022/02/20 | 10896 | macros/xetex/latex/xepersian/img/weather/sun.jpg
+2022/02/20 | 1422 | macros/xetex/latex/xepersian/README
+2022/02/20 | 13804 | macros/xetex/latex/xepersian/undk-0.6.py
+2022/02/20 | 12348 | macros/xetex/latex/xepersian/unldk-0.2.py
+2022/02/20 | 71644 | macros/xetex/latex/xepersian/xepersian-doc-basics.ltx
+2022/02/20 | 410 | macros/xetex/latex/xepersian/xepersian-doc-boolean.ltx
+2022/02/20 | 3099 | macros/xetex/latex/xepersian/xepersian-doc-captions.ltx
+2022/02/20 | 5447 | macros/xetex/latex/xepersian/xepersian-doc-envcs.ltx
+2022/02/20 | 2622 | macros/xetex/latex/xepersian/xepersian-doc-intro.ltx
+2022/02/20 | 454 | macros/xetex/latex/xepersian/xepersian-doc.ltx
+2022/02/20 | 246578 | macros/xetex/latex/xepersian/xepersian-doc.pdf
+2022/02/20 | 25946 | macros/xetex/latex/xepersian/xepersian-doc-pkgs.ltx
+2022/02/20 | 4149 | macros/xetex/latex/xepersian/xepersian-doc-preamble.ltx
+2022/02/20 | 2150 | macros/xetex/latex/xepersian/xepersian-doc-title.ltx
+2022/02/20 | 337296 | macros/xetex/latex/xepersian/xepersian.dtx
+2022/02/20 | 766381 | macros/xetex/latex/xepersian/xepersian.pdf
+2022/02/20 | 1125058 | macros/xetex/latex/xepersian.zip
2021/03/29 | 142 | macros/xetex/latex/xesoul/README
2021/03/29 | 3942 | macros/xetex/latex/xesoul/xesoul.dtx
2021/03/29 | 1517 | macros/xetex/latex/xesoul/xesoul.ins
@@ -275411,7 +275420,7 @@
2021/05/03 | 629 | support/TeX4ht/doc/README
2020/08/24 | 358454 | support/TeX4ht/doc/TeX4ht-doc.tex
2021/05/11 | 262 | support/TeX4ht/README
-2022/02/17 | 183511 | support/TeX4ht/source/ChangeLog
+2022/02/19 | 183850 | support/TeX4ht/source/ChangeLog
2021/05/03 | 1375 | support/TeX4ht/source/checklog.lua
2021/05/03 | 1189 | support/TeX4ht/source/common-code.tex
2021/05/03 | 2727 | support/TeX4ht/source/common-info.tex
@@ -275423,7 +275432,7 @@
2021/05/03 | 1121 | support/TeX4ht/source/README
2021/05/03 | 1744 | support/TeX4ht/source/t1fontmake.lua
2021/05/03 | 297 | support/TeX4ht/source/t1fontsample.tex
-2022/02/17 | 1106887 | support/TeX4ht/source/tex4ht-4ht.tex
+2022/02/19 | 1108685 | support/TeX4ht/source/tex4ht-4ht.tex
2021/05/03 | 7127 | support/TeX4ht/source/tex4ht-auto-script.tex
2021/05/16 | 1539 | support/TeX4ht/source/tex4ht-bibtex2.tex
2021/05/03 | 21247 | support/TeX4ht/source/tex4ht-cond4ht.tex
@@ -281456,7 +281465,7 @@
2022/02/02 | 6564 | systems/texlive/tlnet/archive/collection-latexextra.r61827.tar.xz
2020/12/03 | 696 | systems/texlive/tlnet/archive/collection-latex.r57048.tar.xz
2021/02/24 | 772 | systems/texlive/tlnet/archive/collection-latexrecommended.r57862.tar.xz
-2021/10/15 | 780 | systems/texlive/tlnet/archive/collection-luatex.r60764.tar.xz
+2022/02/20 | 784 | systems/texlive/tlnet/archive/collection-luatex.r62086.tar.xz
2022/01/08 | 1560 | systems/texlive/tlnet/archive/collection-mathscience.r61523.tar.xz
2021/06/10 | 548 | systems/texlive/tlnet/archive/collection-metapost.r59531.tar.xz
2021/02/24 | 476 | systems/texlive/tlnet/archive/collection-music.r57878.tar.xz
@@ -284248,8 +284257,8 @@
2021/08/04 | 6620 | systems/texlive/tlnet/archive/graphicscache.source.r60150.tar.xz
2019/02/28 | 876 | systems/texlive/tlnet/archive/graphics-cfg.doc.r41448.tar.xz
2019/02/28 | 1160 | systems/texlive/tlnet/archive/graphics-cfg.r41448.tar.xz
-2022/02/06 | 604 | systems/texlive/tlnet/archive/graphics-def.doc.r61899.tar.xz
-2022/02/06 | 10988 | systems/texlive/tlnet/archive/graphics-def.r61899.tar.xz
+2022/02/20 | 608 | systems/texlive/tlnet/archive/graphics-def.doc.r62085.tar.xz
+2022/02/20 | 10980 | systems/texlive/tlnet/archive/graphics-def.r62085.tar.xz
2021/12/16 | 2029540 | systems/texlive/tlnet/archive/graphics.doc.r61315.tar.xz
2021/11/16 | 2236 | systems/texlive/tlnet/archive/graphics-pln.doc.r61063.tar.xz
2021/11/16 | 8780 | systems/texlive/tlnet/archive/graphics-pln.r61063.tar.xz
@@ -286108,6 +286117,8 @@
2020/07/08 | 5424 | systems/texlive/tlnet/archive/luabibentry.source.r55777.tar.xz
2020/03/24 | 93868 | systems/texlive/tlnet/archive/luabidi.doc.r54512.tar.xz
2020/03/24 | 2508 | systems/texlive/tlnet/archive/luabidi.r54512.tar.xz
+2022/02/20 | 133708 | systems/texlive/tlnet/archive/luacensor.doc.r62086.tar.xz
+2022/02/20 | 3512 | systems/texlive/tlnet/archive/luacensor.r62086.tar.xz
2019/02/28 | 116564 | systems/texlive/tlnet/archive/lua-check-hyphen.doc.r47527.tar.xz
2019/02/28 | 3628 | systems/texlive/tlnet/archive/lua-check-hyphen.r47527.tar.xz
2019/02/28 | 412328 | systems/texlive/tlnet/archive/luacode.doc.r25193.tar.xz
@@ -290376,14 +290387,14 @@
2021/02/27 | 109184 | systems/texlive/tlnet/archive/tex4ht.amd64-freebsd.r57941.tar.xz
2021/02/24 | 87364 | systems/texlive/tlnet/archive/tex4ht.amd64-netbsd.r57877.tar.xz
2021/02/27 | 69944 | systems/texlive/tlnet/archive/tex4ht.armhf-linux.r57957.tar.xz
-2022/02/17 | 136384 | systems/texlive/tlnet/archive/tex4ht.doc.r62051.tar.xz
+2022/02/20 | 136384 | systems/texlive/tlnet/archive/tex4ht.doc.r62089.tar.xz
2021/03/16 | 51080 | systems/texlive/tlnet/archive/tex4ht.i386-cygwin.r58387.tar.xz
2021/02/27 | 93092 | systems/texlive/tlnet/archive/tex4ht.i386-freebsd.r57961.tar.xz
2021/02/24 | 89116 | systems/texlive/tlnet/archive/tex4ht.i386-linux.r57878.tar.xz
2021/02/24 | 76196 | systems/texlive/tlnet/archive/tex4ht.i386-netbsd.r57877.tar.xz
2021/02/27 | 83896 | systems/texlive/tlnet/archive/tex4ht.i386-solaris.r57938.tar.xz
-2022/02/17 | 927344 | systems/texlive/tlnet/archive/tex4ht.r62051.tar.xz
-2022/02/17 | 1235528 | systems/texlive/tlnet/archive/tex4ht.source.r62051.tar.xz
+2022/02/20 | 927404 | systems/texlive/tlnet/archive/tex4ht.r62089.tar.xz
+2022/02/20 | 1235868 | systems/texlive/tlnet/archive/tex4ht.source.r62089.tar.xz
2021/02/25 | 185088 | systems/texlive/tlnet/archive/tex4ht.universal-darwin.r57908.tar.xz
2021/04/08 | 57760 | systems/texlive/tlnet/archive/tex4ht.win32.r58783.tar.xz
2021/03/16 | 58360 | systems/texlive/tlnet/archive/tex4ht.x86_64-cygwin.r58387.tar.xz
@@ -290618,7 +290629,7 @@
2020/05/17 | 592 | systems/texlive/tlnet/archive/texlive-scripts.amd64-freebsd.r55172.tar.xz
2020/05/17 | 588 | systems/texlive/tlnet/archive/texlive-scripts.amd64-netbsd.r55172.tar.xz
2020/05/17 | 592 | systems/texlive/tlnet/archive/texlive-scripts.armhf-linux.r55172.tar.xz
-2022/02/19 | 403484 | systems/texlive/tlnet/archive/texlive-scripts.doc.r62065.tar.xz
+2022/02/20 | 403612 | systems/texlive/tlnet/archive/texlive-scripts.doc.r62083.tar.xz
2020/01/27 | 916 | systems/texlive/tlnet/archive/texlive-scripts-extra.aarch64-linux.r53577.tar.xz
2020/01/27 | 924 | systems/texlive/tlnet/archive/texlive-scripts-extra.amd64-freebsd.r53577.tar.xz
2020/01/27 | 916 | systems/texlive/tlnet/archive/texlive-scripts-extra.amd64-netbsd.r53577.tar.xz
@@ -290642,7 +290653,7 @@
2020/05/17 | 588 | systems/texlive/tlnet/archive/texlive-scripts.i386-linux.r55172.tar.xz
2020/05/17 | 592 | systems/texlive/tlnet/archive/texlive-scripts.i386-netbsd.r55172.tar.xz
2020/05/17 | 588 | systems/texlive/tlnet/archive/texlive-scripts.i386-solaris.r55172.tar.xz
-2022/02/19 | 108700 | systems/texlive/tlnet/archive/texlive-scripts.r62065.tar.xz
+2022/02/20 | 108708 | systems/texlive/tlnet/archive/texlive-scripts.r62083.tar.xz
2021/02/25 | 572 | systems/texlive/tlnet/archive/texlive-scripts.universal-darwin.r57908.tar.xz
2021/04/12 | 36308 | systems/texlive/tlnet/archive/texlive-scripts.win32.r58829.tar.xz
2020/05/17 | 588 | systems/texlive/tlnet/archive/texlive-scripts.x86_64-cygwin.r55172.tar.xz
@@ -292079,12 +292090,12 @@
2019/02/28 | 348152 | systems/texlive/tlnet/archive/xellipsis.doc.r47546.tar.xz
2019/02/28 | 1716 | systems/texlive/tlnet/archive/xellipsis.r47546.tar.xz
2019/02/28 | 7092 | systems/texlive/tlnet/archive/xellipsis.source.r47546.tar.xz
-2022/02/19 | 1005544 | systems/texlive/tlnet/archive/xepersian.doc.r62074.tar.xz
+2022/02/20 | 1018056 | systems/texlive/tlnet/archive/xepersian.doc.r62087.tar.xz
2020/09/06 | 1289764 | systems/texlive/tlnet/archive/xepersian-hm.doc.r56272.tar.xz
2020/09/06 | 5884 | systems/texlive/tlnet/archive/xepersian-hm.r56272.tar.xz
2020/09/06 | 9028 | systems/texlive/tlnet/archive/xepersian-hm.source.r56272.tar.xz
-2022/02/19 | 59436 | systems/texlive/tlnet/archive/xepersian.r62074.tar.xz
-2022/02/19 | 74708 | systems/texlive/tlnet/archive/xepersian.source.r62074.tar.xz
+2022/02/20 | 60796 | systems/texlive/tlnet/archive/xepersian.r62087.tar.xz
+2022/02/20 | 76100 | systems/texlive/tlnet/archive/xepersian.source.r62087.tar.xz
2019/08/20 | 614800 | systems/texlive/tlnet/archive/xesearch.doc.r51908.tar.xz
2019/08/20 | 5900 | systems/texlive/tlnet/archive/xesearch.r51908.tar.xz
2021/03/08 | 137344 | systems/texlive/tlnet/archive/xespotcolor.doc.r58212.tar.xz
@@ -292441,16 +292452,16 @@
2020/07/18 | 47816 | systems/texlive/tlnet/archive/zztex.doc.r55862.tar.xz
2020/07/18 | 101724 | systems/texlive/tlnet/archive/zztex.r55862.tar.xz
2022/02/17 | 106494 | systems/texlive/tlnet/install-tl
-2022/02/19 | 6809440 | systems/texlive/tlnet/install-tl-unx.tar.gz
-2022/02/19 | 152 | systems/texlive/tlnet/install-tl-unx.tar.gz.sha512
-2022/02/19 | 455 | systems/texlive/tlnet/install-tl-unx.tar.gz.sha512.asc
+2022/02/20 | 6809291 | systems/texlive/tlnet/install-tl-unx.tar.gz
+2022/02/20 | 152 | systems/texlive/tlnet/install-tl-unx.tar.gz.sha512
+2022/02/20 | 455 | systems/texlive/tlnet/install-tl-unx.tar.gz.sha512.asc
2021/04/11 | 4945 | systems/texlive/tlnet/install-tl-windows.bat
-2022/02/19 | 20872340 | systems/texlive/tlnet/install-tl-windows.exe
-2022/02/19 | 153 | systems/texlive/tlnet/install-tl-windows.exe.sha512
-2022/02/19 | 455 | systems/texlive/tlnet/install-tl-windows.exe.sha512.asc
-2022/02/19 | 25628347 | systems/texlive/tlnet/install-tl.zip
-2022/02/19 | 145 | systems/texlive/tlnet/install-tl.zip.sha512
-2022/02/19 | 455 | systems/texlive/tlnet/install-tl.zip.sha512.asc
+2022/02/20 | 20873396 | systems/texlive/tlnet/install-tl-windows.exe
+2022/02/20 | 153 | systems/texlive/tlnet/install-tl-windows.exe.sha512
+2022/02/20 | 455 | systems/texlive/tlnet/install-tl-windows.exe.sha512.asc
+2022/02/20 | 25628384 | systems/texlive/tlnet/install-tl.zip
+2022/02/20 | 145 | systems/texlive/tlnet/install-tl.zip.sha512
+2022/02/20 | 455 | systems/texlive/tlnet/install-tl.zip.sha512.asc
2021/04/01 | 1229 | systems/texlive/tlnet/README.md
2021/04/01 | 0 | systems/texlive/tlnet/TEXLIVE_2021
2021/07/03 | 7181 | systems/texlive/tlnet/tlpkg/gpg/pubring.gpg
@@ -292460,7 +292471,7 @@
2021/07/03 | 1280 | systems/texlive/tlnet/tlpkg/gpg/trustdb.gpg
2022/01/12 | 49482 | systems/texlive/tlnet/tlpkg/installer/config.guess
2010/11/11 | 11651 | systems/texlive/tlnet/tlpkg/installer/COPYING.MinGW-runtime.txt
-2022/02/18 | 7236 | systems/texlive/tlnet/tlpkg/installer/ctan-mirrors.pl
+2022/02/19 | 7346 | systems/texlive/tlnet/tlpkg/installer/ctan-mirrors.pl
2022/02/05 | 213092 | systems/texlive/tlnet/tlpkg/installer/curl/curl-ca-bundle.crt
2020/04/15 | 2606592 | systems/texlive/tlnet/tlpkg/installer/curl/curl.exe
2017/04/16 | 2629 | systems/texlive/tlnet/tlpkg/installer/installer-options.txt
@@ -292498,16 +292509,16 @@
2019/03/02 | 188472 | systems/texlive/tlnet/tlpkg/installer/xz/xz.x86_64-solaris
2021/12/21 | 11529 | systems/texlive/tlnet/tlpkg/TeXLive/TeXCatalogue.pm
2021/12/08 | 21507 | systems/texlive/tlnet/tlpkg/TeXLive/TLConfFile.pm
-2022/02/17 | 12146 | systems/texlive/tlnet/tlpkg/TeXLive/TLConfig.pm
+2022/02/20 | 12167 | systems/texlive/tlnet/tlpkg/TeXLive/TLConfig.pm
2021/05/16 | 20371 | systems/texlive/tlnet/tlpkg/TeXLive/TLCrypto.pm
2021/12/21 | 5429 | systems/texlive/tlnet/tlpkg/TeXLive/TLDownload.pm
2021/12/21 | 27582 | systems/texlive/tlnet/tlpkg/TeXLive/TLPaper.pm
-2022/02/19 | 17129078 | systems/texlive/tlnet/tlpkg/texlive.tlpdb
-2022/02/19 | 48 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.md5
+2022/02/20 | 17130802 | systems/texlive/tlnet/tlpkg/texlive.tlpdb
+2022/02/20 | 48 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.md5
2021/12/21 | 86654 | systems/texlive/tlnet/tlpkg/TeXLive/TLPDB.pm
-2022/02/19 | 144 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512
-2022/02/19 | 455 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512.asc
-2022/02/19 | 2351380 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.xz
+2022/02/20 | 144 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512
+2022/02/20 | 455 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512.asc
+2022/02/20 | 2352784 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.xz
2021/12/21 | 58848 | systems/texlive/tlnet/tlpkg/TeXLive/TLPOBJ.pm
2021/12/21 | 42112 | systems/texlive/tlnet/tlpkg/TeXLive/TLPSRC.pm
2021/12/21 | 16130 | systems/texlive/tlnet/tlpkg/TeXLive/TLTREE.pm
@@ -296396,7 +296407,7 @@
2022/01/24 | 1016052 | systems/win32/miktex/tm/packages/bibarts__doc.tar.lzma
2022/01/24 | 233728 | systems/win32/miktex/tm/packages/bibarts__source.tar.lzma
2022/01/24 | 27497 | systems/win32/miktex/tm/packages/bibarts.tar.lzma
-2021/01/02 | 33903617 | systems/win32/miktex/tm/packages/biber-darwin-x86_64.tar.lzma
+2022/02/20 | 33908283 | systems/win32/miktex/tm/packages/biber-darwin-x86_64.tar.lzma
2022/02/07 | 281056 | systems/win32/miktex/tm/packages/biber-doc.tar.lzma
2022/02/07 | 23593842 | systems/win32/miktex/tm/packages/biber-linux-x86_64.tar.lzma
2022/02/07 | 24475654 | systems/win32/miktex/tm/packages/biber-windows-x64.tar.lzma
@@ -297641,7 +297652,7 @@
2020/10/03 | 318630 | systems/win32/miktex/tm/packages/filehook.tar.lzma
2012/12/04 | 924573 | systems/win32/miktex/tm/packages/fileinfo.tar.lzma
2011/09/21 | 281409 | systems/win32/miktex/tm/packages/filemod.tar.lzma
-2022/02/19 | 640115 | systems/win32/miktex/tm/packages/files.csv.lzma
+2022/02/20 | 640115 | systems/win32/miktex/tm/packages/files.csv.lzma
2001/05/14 | 5617 | systems/win32/miktex/tm/packages/finbib.tar.lzma
2015/10/20 | 44379 | systems/win32/miktex/tm/packages/findhyph.tar.lzma
2011/10/21 | 89323 | systems/win32/miktex/tm/packages/fink.tar.lzma
@@ -299173,9 +299184,9 @@
2018/01/12 | 157226 | systems/win32/miktex/tm/packages/miktex-zip-bin-x64.tar.lzma
2022/01/29 | 39717 | systems/win32/miktex/tm/packages/miktex-zlib-bin-2.9.tar.lzma
2022/01/29 | 43173 | systems/win32/miktex/tm/packages/miktex-zlib-bin-x64-2.9.tar.lzma
-2022/02/19 | 266737 | systems/win32/miktex/tm/packages/miktex-zzdb1-2.9.tar.lzma
-2022/02/19 | 1423134 | systems/win32/miktex/tm/packages/miktex-zzdb2-2.9.tar.lzma
-2022/02/19 | 1316137 | systems/win32/miktex/tm/packages/miktex-zzdb3-2.9.tar.lzma
+2022/02/20 | 266717 | systems/win32/miktex/tm/packages/miktex-zzdb1-2.9.tar.lzma
+2022/02/20 | 1422762 | systems/win32/miktex/tm/packages/miktex-zzdb2-2.9.tar.lzma
+2022/02/20 | 1316232 | systems/win32/miktex/tm/packages/miktex-zzdb3-2.9.tar.lzma
2022/01/29 | 13505 | systems/win32/miktex/tm/packages/miktex-zzip-bin-2.9.tar.lzma
2022/01/29 | 14408 | systems/win32/miktex/tm/packages/miktex-zzip-bin-x64-2.9.tar.lzma
2016/07/15 | 35914 | systems/win32/miktex/tm/packages/mil3.tar.lzma
@@ -299399,189 +299410,189 @@
2018/04/09 | 400132 | systems/win32/miktex/tm/packages/newunicodechar.tar.lzma
2011/09/19 | 101312 | systems/win32/miktex/tm/packages/newvbtm.tar.lzma
2021/03/17 | 232249 | systems/win32/miktex/tm/packages/newverbs.tar.lzma
-2022/02/19 | 640306 | systems/win32/miktex/tm/packages/next/files.csv.lzma
-2022/02/19 | 51573 | systems/win32/miktex/tm/packages/next/miktex-arctrl-bin-2.9.tar.lzma
-2022/02/19 | 57416 | systems/win32/miktex/tm/packages/next/miktex-arctrl-bin-x64-2.9.tar.lzma
-2022/02/19 | 1021285 | systems/win32/miktex/tm/packages/next/miktex-asymptote-bin-2.9.tar.lzma
-2022/02/19 | 1156653 | systems/win32/miktex/tm/packages/next/miktex-asymptote-bin-x64-2.9.tar.lzma
-2022/02/19 | 28749 | systems/win32/miktex/tm/packages/next/miktex-autosp-bin-2.9.tar.lzma
-2022/02/19 | 31529 | systems/win32/miktex/tm/packages/next/miktex-autosp-bin-x64-2.9.tar.lzma
-2022/02/19 | 30152 | systems/win32/miktex/tm/packages/next/miktex-axohelp-bin-2.9.tar.lzma
-2022/02/19 | 35200 | systems/win32/miktex/tm/packages/next/miktex-axohelp-bin-x64-2.9.tar.lzma
-2022/02/19 | 56691 | systems/win32/miktex/tm/packages/next/miktex-bibarts-bin-2.9.tar.lzma
-2022/02/19 | 64990 | systems/win32/miktex/tm/packages/next/miktex-bibarts-bin-x64-2.9.tar.lzma
-2022/02/19 | 86703 | systems/win32/miktex/tm/packages/next/miktex-bibtex8bit-bin-2.9.tar.lzma
-2022/02/19 | 95301 | systems/win32/miktex/tm/packages/next/miktex-bibtex8bit-bin-x64-2.9.tar.lzma
-2022/02/19 | 68809 | systems/win32/miktex/tm/packages/next/miktex-bibtex-bin-2.9.tar.lzma
-2022/02/19 | 77116 | systems/win32/miktex/tm/packages/next/miktex-bibtex-bin-x64-2.9.tar.lzma
-2022/02/19 | 27251 | systems/win32/miktex/tm/packages/next/miktex-bzip2-bin-2.9.tar.lzma
-2022/02/19 | 31328 | systems/win32/miktex/tm/packages/next/miktex-bzip2-bin-x64-2.9.tar.lzma
-2022/02/19 | 332473 | systems/win32/miktex/tm/packages/next/miktex-cairo-bin-2.9.tar.lzma
-2022/02/19 | 394420 | systems/win32/miktex/tm/packages/next/miktex-cairo-bin-x64-2.9.tar.lzma
-2022/02/19 | 32948 | systems/win32/miktex/tm/packages/next/miktex-chktex-bin-2.9.tar.lzma
-2022/02/19 | 37082 | systems/win32/miktex/tm/packages/next/miktex-chktex-bin-x64-2.9.tar.lzma
-2022/02/19 | 51553 | systems/win32/miktex/tm/packages/next/miktex-cjkutils-bin-2.9.tar.lzma
-2022/02/19 | 57341 | systems/win32/miktex/tm/packages/next/miktex-cjkutils-bin-x64-2.9.tar.lzma
-2022/02/19 | 256248 | systems/win32/miktex/tm/packages/next/miktex-console-bin-2.9.tar.lzma
-2022/02/19 | 281599 | systems/win32/miktex/tm/packages/next/miktex-console-bin-x64-2.9.tar.lzma
-2022/02/19 | 179671 | systems/win32/miktex/tm/packages/next/miktex-curl-bin-2.9.tar.lzma
-2022/02/19 | 196148 | systems/win32/miktex/tm/packages/next/miktex-curl-bin-x64-2.9.tar.lzma
-2022/02/19 | 54960 | systems/win32/miktex/tm/packages/next/miktex-cweb-bin-2.9.tar.lzma
-2022/02/19 | 62424 | systems/win32/miktex/tm/packages/next/miktex-cweb-bin-x64-2.9.tar.lzma
-2022/02/19 | 21315 | systems/win32/miktex/tm/packages/next/miktex-devnag-bin-2.9.tar.lzma
-2022/02/19 | 24130 | systems/win32/miktex/tm/packages/next/miktex-devnag-bin-x64-2.9.tar.lzma
-2022/02/19 | 478973 | systems/win32/miktex/tm/packages/next/miktex-doc.tar.lzma
-2022/02/19 | 46085 | systems/win32/miktex/tm/packages/next/miktex-dvicopy-bin-2.9.tar.lzma
-2022/02/19 | 52045 | systems/win32/miktex/tm/packages/next/miktex-dvicopy-bin-x64-2.9.tar.lzma
-2022/02/19 | 285794 | systems/win32/miktex/tm/packages/next/miktex-dvipdfmx-bin-2.9.tar.lzma
-2022/02/19 | 326537 | systems/win32/miktex/tm/packages/next/miktex-dvipdfmx-bin-x64-2.9.tar.lzma
-2022/02/19 | 41463 | systems/win32/miktex/tm/packages/next/miktex-dvipng-bin-2.9.tar.lzma
-2022/02/19 | 45799 | systems/win32/miktex/tm/packages/next/miktex-dvipng-bin-x64-2.9.tar.lzma
-2022/02/19 | 120507 | systems/win32/miktex/tm/packages/next/miktex-dvips-bin-2.9.tar.lzma
-2022/02/19 | 135146 | systems/win32/miktex/tm/packages/next/miktex-dvips-bin-x64-2.9.tar.lzma
-2022/02/19 | 1297209 | systems/win32/miktex/tm/packages/next/miktex-dvisvgm-bin-2.9.tar.lzma
-2022/02/19 | 1454773 | systems/win32/miktex/tm/packages/next/miktex-dvisvgm-bin-x64-2.9.tar.lzma
-2022/02/19 | 99732 | systems/win32/miktex/tm/packages/next/miktex-epstopdf-bin-2.9.tar.lzma
-2022/02/19 | 112966 | systems/win32/miktex/tm/packages/next/miktex-epstopdf-bin-x64-2.9.tar.lzma
-2022/02/19 | 43681 | systems/win32/miktex/tm/packages/next/miktex-expat-bin-2.9.tar.lzma
-2022/02/19 | 48850 | systems/win32/miktex/tm/packages/next/miktex-expat-bin-x64-2.9.tar.lzma
-2022/02/19 | 25110 | systems/win32/miktex/tm/packages/next/miktex-findtexmf-bin-2.9.tar.lzma
-2022/02/19 | 28555 | systems/win32/miktex/tm/packages/next/miktex-findtexmf-bin-x64-2.9.tar.lzma
-2022/02/19 | 56996 | systems/win32/miktex/tm/packages/next/miktex-fmt-bin-2.9.tar.lzma
-2022/02/19 | 63336 | systems/win32/miktex/tm/packages/next/miktex-fmt-bin-x64-2.9.tar.lzma
-2022/02/19 | 135966 | systems/win32/miktex/tm/packages/next/miktex-fontconfig-bin-2.9.tar.lzma
-2022/02/19 | 155464 | systems/win32/miktex/tm/packages/next/miktex-fontconfig-bin-x64-2.9.tar.lzma
-2022/02/19 | 73587 | systems/win32/miktex/tm/packages/next/miktex-fonts-bin-2.9.tar.lzma
-2022/02/19 | 78991 | systems/win32/miktex/tm/packages/next/miktex-fonts-bin-x64-2.9.tar.lzma
-2022/02/19 | 72143 | systems/win32/miktex/tm/packages/next/miktex-freeglut-bin-2.9.tar.lzma
-2022/02/19 | 81613 | systems/win32/miktex/tm/packages/next/miktex-freeglut-bin-x64-2.9.tar.lzma
-2022/02/19 | 259115 | systems/win32/miktex/tm/packages/next/miktex-freetype2-bin-2.9.tar.lzma
-2022/02/19 | 296024 | systems/win32/miktex/tm/packages/next/miktex-freetype2-bin-x64-2.9.tar.lzma
-2022/02/19 | 22181 | systems/win32/miktex/tm/packages/next/miktex-fribidixetex-bin-2.9.tar.lzma
-2022/02/19 | 25063 | systems/win32/miktex/tm/packages/next/miktex-fribidixetex-bin-x64-2.9.tar.lzma
-2022/02/19 | 97173 | systems/win32/miktex/tm/packages/next/miktex-gd-bin-2.9.tar.lzma
-2022/02/19 | 112716 | systems/win32/miktex/tm/packages/next/miktex-gd-bin-x64-2.9.tar.lzma
-2022/02/19 | 64570 | systems/win32/miktex/tm/packages/next/miktex-graphite2-bin-2.9.tar.lzma
-2022/02/19 | 73131 | systems/win32/miktex/tm/packages/next/miktex-graphite2-bin-x64-2.9.tar.lzma
-2022/02/19 | 96896 | systems/win32/miktex/tm/packages/next/miktex-gregorio-bin-2.9.tar.lzma
-2022/02/19 | 115700 | systems/win32/miktex/tm/packages/next/miktex-gregorio-bin-x64-2.9.tar.lzma
-2022/02/19 | 38433 | systems/win32/miktex/tm/packages/next/miktex-gsf2pk-bin-2.9.tar.lzma
-2022/02/19 | 43840 | systems/win32/miktex/tm/packages/next/miktex-gsf2pk-bin-x64-2.9.tar.lzma
-2022/02/19 | 484362 | systems/win32/miktex/tm/packages/next/miktex-harfbuzz-bin-2.9.tar.lzma
-2022/02/19 | 565303 | systems/win32/miktex/tm/packages/next/miktex-harfbuzz-bin-x64-2.9.tar.lzma
-2022/02/19 | 152062 | systems/win32/miktex/tm/packages/next/miktex-hunspell-bin-2.9.tar.lzma
-2022/02/19 | 168827 | systems/win32/miktex/tm/packages/next/miktex-hunspell-bin-x64-2.9.tar.lzma
-2022/02/19 | 95449 | systems/win32/miktex/tm/packages/next/miktex-jpeg-bin-2.9.tar.lzma
-2022/02/19 | 109540 | systems/win32/miktex/tm/packages/next/miktex-jpeg-bin-x64-2.9.tar.lzma
-2022/02/19 | 16499 | systems/win32/miktex/tm/packages/next/miktex-kpathsea-bin-2.9.tar.lzma
-2022/02/19 | 18354 | systems/win32/miktex/tm/packages/next/miktex-kpathsea-bin-x64-2.9.tar.lzma
-2022/02/19 | 28423 | systems/win32/miktex/tm/packages/next/miktex-lacheck-bin-2.9.tar.lzma
-2022/02/19 | 30567 | systems/win32/miktex/tm/packages/next/miktex-lacheck-bin-x64-2.9.tar.lzma
-2022/02/19 | 630670 | systems/win32/miktex/tm/packages/next/miktex-lcdf-typetools-bin-2.9.tar.lzma
-2022/02/19 | 681903 | systems/win32/miktex/tm/packages/next/miktex-lcdf-typetools-bin-x64-2.9.tar.lzma
-2022/02/19 | 532420 | systems/win32/miktex/tm/packages/next/miktex-libressl-bin-2.9.tar.lzma
-2022/02/19 | 598224 | systems/win32/miktex/tm/packages/next/miktex-libressl-bin-x64-2.9.tar.lzma
-2022/02/19 | 477780 | systems/win32/miktex/tm/packages/next/miktex-log4cxx-bin-2.9.tar.lzma
-2022/02/19 | 528149 | systems/win32/miktex/tm/packages/next/miktex-log4cxx-bin-x64-2.9.tar.lzma
-2022/02/19 | 93940 | systems/win32/miktex/tm/packages/next/miktex-lua53-bin-2.9.tar.lzma
-2022/02/19 | 103480 | systems/win32/miktex/tm/packages/next/miktex-lua53-bin-x64-2.9.tar.lzma
-2022/02/19 | 1751643 | systems/win32/miktex/tm/packages/next/miktex-luatex-bin-2.9.tar.lzma
-2022/02/19 | 1978889 | systems/win32/miktex/tm/packages/next/miktex-luatex-bin-x64-2.9.tar.lzma
-2022/02/19 | 68017 | systems/win32/miktex/tm/packages/next/miktex-lzma-bin-2.9.tar.lzma
-2022/02/19 | 74036 | systems/win32/miktex/tm/packages/next/miktex-lzma-bin-x64-2.9.tar.lzma
-2022/02/19 | 27672 | systems/win32/miktex/tm/packages/next/miktex-makeindex-bin-2.9.tar.lzma
-2022/02/19 | 32118 | systems/win32/miktex/tm/packages/next/miktex-makeindex-bin-x64-2.9.tar.lzma
-2022/02/19 | 7755 | systems/win32/miktex/tm/packages/next/miktex-md5-bin-2.9.tar.lzma
-2022/02/19 | 8788 | systems/win32/miktex/tm/packages/next/miktex-md5-bin-x64-2.9.tar.lzma
-2022/02/19 | 197536 | systems/win32/miktex/tm/packages/next/miktex-metafont-bin-2.9.tar.lzma
-2022/02/19 | 216395 | systems/win32/miktex/tm/packages/next/miktex-metafont-bin-x64-2.9.tar.lzma
-2022/02/19 | 251142 | systems/win32/miktex/tm/packages/next/miktex-metapost-bin-2.9.tar.lzma
-2022/02/19 | 286533 | systems/win32/miktex/tm/packages/next/miktex-metapost-bin-x64-2.9.tar.lzma
-2022/02/19 | 99181 | systems/win32/miktex/tm/packages/next/miktex-mfware-bin-2.9.tar.lzma
-2022/02/19 | 104690 | systems/win32/miktex/tm/packages/next/miktex-mfware-bin-x64-2.9.tar.lzma
-2022/02/19 | 126686 | systems/win32/miktex/tm/packages/next/miktex-mktex-bin-2.9.tar.lzma
-2022/02/19 | 139182 | systems/win32/miktex/tm/packages/next/miktex-mktex-bin-x64-2.9.tar.lzma
-2022/02/19 | 254965 | systems/win32/miktex/tm/packages/next/miktex-mo-bin-2.9.tar.lzma
-2022/02/19 | 286268 | systems/win32/miktex/tm/packages/next/miktex-mo-bin-x64-2.9.tar.lzma
-2022/02/19 | 199759 | systems/win32/miktex/tm/packages/next/miktex-mpfr-bin-2.9.tar.lzma
-2022/02/19 | 181444 | systems/win32/miktex/tm/packages/next/miktex-mpfr-bin-x64-2.9.tar.lzma
-2022/02/19 | 68609 | systems/win32/miktex/tm/packages/next/miktex-mpmcli-bin-2.9.tar.lzma
-2022/02/19 | 76219 | systems/win32/miktex/tm/packages/next/miktex-mpmcli-bin-x64-2.9.tar.lzma
-2022/02/19 | 31409 | systems/win32/miktex/tm/packages/next/miktex-mspack-bin-2.9.tar.lzma
-2022/02/19 | 35166 | systems/win32/miktex/tm/packages/next/miktex-mspack-bin-x64-2.9.tar.lzma
-2022/02/19 | 38561 | systems/win32/miktex/tm/packages/next/miktex-mthelp-bin-2.9.tar.lzma
-2022/02/19 | 43915 | systems/win32/miktex/tm/packages/next/miktex-mthelp-bin-x64-2.9.tar.lzma
-2022/02/19 | 43369 | systems/win32/miktex/tm/packages/next/miktex-mtprint-bin-2.9.tar.lzma
-2022/02/19 | 47922 | systems/win32/miktex/tm/packages/next/miktex-mtprint-bin-x64-2.9.tar.lzma
-2022/02/19 | 45872 | systems/win32/miktex/tm/packages/next/miktex-m-tx-bin-2.9.tar.lzma
-2022/02/19 | 52273 | systems/win32/miktex/tm/packages/next/miktex-m-tx-bin-x64-2.9.tar.lzma
-2022/02/19 | 196871 | systems/win32/miktex/tm/packages/next/miktex-omegaware-bin-2.9.tar.lzma
-2022/02/19 | 213246 | systems/win32/miktex/tm/packages/next/miktex-omegaware-bin-x64-2.9.tar.lzma
-2022/02/19 | 36053 | systems/win32/miktex/tm/packages/next/miktex-patgen-bin.tar.lzma
-2022/02/19 | 41217 | systems/win32/miktex/tm/packages/next/miktex-patgen-bin-x64.tar.lzma
-2022/02/19 | 754966 | systems/win32/miktex/tm/packages/next/miktex-pdftex-bin-2.9.tar.lzma
-2022/02/19 | 825683 | systems/win32/miktex/tm/packages/next/miktex-pdftex-bin-x64-2.9.tar.lzma
-2022/02/19 | 200090 | systems/win32/miktex/tm/packages/next/miktex-pixman-bin-2.9.tar.lzma
-2022/02/19 | 202831 | systems/win32/miktex/tm/packages/next/miktex-pixman-bin-x64-2.9.tar.lzma
-2022/02/19 | 210058 | systems/win32/miktex/tm/packages/next/miktex-pmx-bin-2.9.tar.lzma
-2022/02/19 | 244935 | systems/win32/miktex/tm/packages/next/miktex-pmx-bin-x64-2.9.tar.lzma
-2022/02/19 | 78965 | systems/win32/miktex/tm/packages/next/miktex-png-bin-2.9.tar.lzma
-2022/02/19 | 88122 | systems/win32/miktex/tm/packages/next/miktex-png-bin-x64-2.9.tar.lzma
-2022/02/19 | 1181452 | systems/win32/miktex/tm/packages/next/miktex-poppler-bin-2.9.tar.lzma
-2022/02/19 | 1322239 | systems/win32/miktex/tm/packages/next/miktex-poppler-bin-x64-2.9.tar.lzma
-2022/02/19 | 20180 | systems/win32/miktex/tm/packages/next/miktex-popt-bin-2.9.tar.lzma
-2022/02/19 | 23944 | systems/win32/miktex/tm/packages/next/miktex-popt-bin-x64-2.9.tar.lzma
-2022/02/19 | 31579 | systems/win32/miktex/tm/packages/next/miktex-posix-bin-2.9.tar.lzma
-2022/02/19 | 37378 | systems/win32/miktex/tm/packages/next/miktex-posix-bin-x64-2.9.tar.lzma
-2022/02/19 | 64675 | systems/win32/miktex/tm/packages/next/miktex-ps2pk-bin-2.9.tar.lzma
-2022/02/19 | 72990 | systems/win32/miktex/tm/packages/next/miktex-ps2pk-bin-x64-2.9.tar.lzma
-2022/02/19 | 50839 | systems/win32/miktex/tm/packages/next/miktex-psutils-bin-2.9.tar.lzma
-2022/02/19 | 58663 | systems/win32/miktex/tm/packages/next/miktex-psutils-bin-x64-2.9.tar.lzma
-2022/02/19 | 689311 | systems/win32/miktex/tm/packages/next/miktex-ptex-bin.tar.lzma
-2022/02/19 | 755600 | systems/win32/miktex/tm/packages/next/miktex-ptex-bin-x64.tar.lzma
-2022/02/19 | 1355586 | systems/win32/miktex/tm/packages/next/miktex-runtime-bin-2.9.tar.lzma
-2022/02/19 | 1499128 | systems/win32/miktex/tm/packages/next/miktex-runtime-bin-x64-2.9.tar.lzma
-2022/02/19 | 42774 | systems/win32/miktex/tm/packages/next/miktex-synctex-bin-2.9.tar.lzma
-2022/02/19 | 52487 | systems/win32/miktex/tm/packages/next/miktex-synctex-bin-x64-2.9.tar.lzma
-2022/02/19 | 57595 | systems/win32/miktex/tm/packages/next/miktex-tdsutil-bin.tar.lzma
-2022/02/19 | 63701 | systems/win32/miktex/tm/packages/next/miktex-tdsutil-bin-x64.tar.lzma
-2022/02/19 | 25493 | systems/win32/miktex/tm/packages/next/miktex-teckit-bin-2.9.tar.lzma
-2022/02/19 | 27507 | systems/win32/miktex/tm/packages/next/miktex-teckit-bin-x64-2.9.tar.lzma
-2022/02/19 | 16566 | systems/win32/miktex/tm/packages/next/miktex-tex2xindy-bin-2.9.tar.lzma
-2022/02/19 | 18483 | systems/win32/miktex/tm/packages/next/miktex-tex2xindy-bin-x64-2.9.tar.lzma
-2022/02/19 | 64442 | systems/win32/miktex/tm/packages/next/miktex-tex4ht-bin-2.9.tar.lzma
-2022/02/19 | 71009 | systems/win32/miktex/tm/packages/next/miktex-tex4ht-bin-x64-2.9.tar.lzma
-2022/02/19 | 156732 | systems/win32/miktex/tm/packages/next/miktex-tex-bin-2.9.tar.lzma
-2022/02/19 | 172500 | systems/win32/miktex/tm/packages/next/miktex-tex-bin-x64-2.9.tar.lzma
-2022/02/19 | 58692 | systems/win32/miktex/tm/packages/next/miktex-texify-bin-2.9.tar.lzma
-2022/02/19 | 67222 | systems/win32/miktex/tm/packages/next/miktex-texify-bin-x64-2.9.tar.lzma
-2022/02/19 | 100436 | systems/win32/miktex/tm/packages/next/miktex-texware-bin-2.9.tar.lzma
-2022/02/19 | 107403 | systems/win32/miktex/tm/packages/next/miktex-texware-bin-x64-2.9.tar.lzma
-2022/02/19 | 2671685 | systems/win32/miktex/tm/packages/next/miktex-texworks-bin-2.9.tar.lzma
-2022/02/19 | 2799652 | systems/win32/miktex/tm/packages/next/miktex-texworks-bin-x64-2.9.tar.lzma
-2022/02/19 | 55221 | systems/win32/miktex/tm/packages/next/miktex-ttf2pk2-bin-2.9.tar.lzma
-2022/02/19 | 62367 | systems/win32/miktex/tm/packages/next/miktex-ttf2pk2-bin-x64-2.9.tar.lzma
-2022/02/19 | 37114 | systems/win32/miktex/tm/packages/next/miktex-upmendex-bin.tar.lzma
-2022/02/19 | 41214 | systems/win32/miktex/tm/packages/next/miktex-upmendex-bin-x64.tar.lzma
-2022/02/19 | 28677 | systems/win32/miktex/tm/packages/next/miktex-uriparser-bin-2.9.tar.lzma
-2022/02/19 | 34034 | systems/win32/miktex/tm/packages/next/miktex-uriparser-bin-x64-2.9.tar.lzma
-2022/02/19 | 65920 | systems/win32/miktex/tm/packages/next/miktex-web-bin-2.9.tar.lzma
-2022/02/19 | 71868 | systems/win32/miktex/tm/packages/next/miktex-web-bin-x64-2.9.tar.lzma
-2022/02/19 | 316235 | systems/win32/miktex/tm/packages/next/miktex-xetex-bin-2.9.tar.lzma
-2022/02/19 | 351700 | systems/win32/miktex/tm/packages/next/miktex-xetex-bin-x64-2.9.tar.lzma
-2022/02/19 | 55747 | systems/win32/miktex/tm/packages/next/miktex-xml2pmx-bin.tar.lzma
-2022/02/19 | 57417 | systems/win32/miktex/tm/packages/next/miktex-xml2pmx-bin-x64.tar.lzma
-2022/02/19 | 591310 | systems/win32/miktex/tm/packages/next/miktex-yap-bin-2.9.tar.lzma
-2022/02/19 | 629310 | systems/win32/miktex/tm/packages/next/miktex-yap-bin-x64-2.9.tar.lzma
-2022/02/19 | 39732 | systems/win32/miktex/tm/packages/next/miktex-zlib-bin-2.9.tar.lzma
-2022/02/19 | 43646 | systems/win32/miktex/tm/packages/next/miktex-zlib-bin-x64-2.9.tar.lzma
-2022/02/19 | 266702 | systems/win32/miktex/tm/packages/next/miktex-zzdb1-2.9.tar.lzma
-2022/02/19 | 1423614 | systems/win32/miktex/tm/packages/next/miktex-zzdb2-2.9.tar.lzma
-2022/02/19 | 1315593 | systems/win32/miktex/tm/packages/next/miktex-zzdb3-2.9.tar.lzma
-2022/02/19 | 13512 | systems/win32/miktex/tm/packages/next/miktex-zzip-bin-2.9.tar.lzma
-2022/02/19 | 14404 | systems/win32/miktex/tm/packages/next/miktex-zzip-bin-x64-2.9.tar.lzma
+2022/02/20 | 640306 | systems/win32/miktex/tm/packages/next/files.csv.lzma
+2022/02/20 | 51574 | systems/win32/miktex/tm/packages/next/miktex-arctrl-bin-2.9.tar.lzma
+2022/02/20 | 57416 | systems/win32/miktex/tm/packages/next/miktex-arctrl-bin-x64-2.9.tar.lzma
+2022/02/20 | 1021282 | systems/win32/miktex/tm/packages/next/miktex-asymptote-bin-2.9.tar.lzma
+2022/02/20 | 1156654 | systems/win32/miktex/tm/packages/next/miktex-asymptote-bin-x64-2.9.tar.lzma
+2022/02/20 | 28748 | systems/win32/miktex/tm/packages/next/miktex-autosp-bin-2.9.tar.lzma
+2022/02/20 | 31529 | systems/win32/miktex/tm/packages/next/miktex-autosp-bin-x64-2.9.tar.lzma
+2022/02/20 | 30152 | systems/win32/miktex/tm/packages/next/miktex-axohelp-bin-2.9.tar.lzma
+2022/02/20 | 35200 | systems/win32/miktex/tm/packages/next/miktex-axohelp-bin-x64-2.9.tar.lzma
+2022/02/20 | 56690 | systems/win32/miktex/tm/packages/next/miktex-bibarts-bin-2.9.tar.lzma
+2022/02/20 | 64991 | systems/win32/miktex/tm/packages/next/miktex-bibarts-bin-x64-2.9.tar.lzma
+2022/02/20 | 86704 | systems/win32/miktex/tm/packages/next/miktex-bibtex8bit-bin-2.9.tar.lzma
+2022/02/20 | 95301 | systems/win32/miktex/tm/packages/next/miktex-bibtex8bit-bin-x64-2.9.tar.lzma
+2022/02/20 | 68811 | systems/win32/miktex/tm/packages/next/miktex-bibtex-bin-2.9.tar.lzma
+2022/02/20 | 77116 | systems/win32/miktex/tm/packages/next/miktex-bibtex-bin-x64-2.9.tar.lzma
+2022/02/20 | 27251 | systems/win32/miktex/tm/packages/next/miktex-bzip2-bin-2.9.tar.lzma
+2022/02/20 | 31327 | systems/win32/miktex/tm/packages/next/miktex-bzip2-bin-x64-2.9.tar.lzma
+2022/02/20 | 332473 | systems/win32/miktex/tm/packages/next/miktex-cairo-bin-2.9.tar.lzma
+2022/02/20 | 394421 | systems/win32/miktex/tm/packages/next/miktex-cairo-bin-x64-2.9.tar.lzma
+2022/02/20 | 32949 | systems/win32/miktex/tm/packages/next/miktex-chktex-bin-2.9.tar.lzma
+2022/02/20 | 37082 | systems/win32/miktex/tm/packages/next/miktex-chktex-bin-x64-2.9.tar.lzma
+2022/02/20 | 51551 | systems/win32/miktex/tm/packages/next/miktex-cjkutils-bin-2.9.tar.lzma
+2022/02/20 | 57341 | systems/win32/miktex/tm/packages/next/miktex-cjkutils-bin-x64-2.9.tar.lzma
+2022/02/20 | 256251 | systems/win32/miktex/tm/packages/next/miktex-console-bin-2.9.tar.lzma
+2022/02/20 | 281599 | systems/win32/miktex/tm/packages/next/miktex-console-bin-x64-2.9.tar.lzma
+2022/02/20 | 179670 | systems/win32/miktex/tm/packages/next/miktex-curl-bin-2.9.tar.lzma
+2022/02/20 | 196148 | systems/win32/miktex/tm/packages/next/miktex-curl-bin-x64-2.9.tar.lzma
+2022/02/20 | 54960 | systems/win32/miktex/tm/packages/next/miktex-cweb-bin-2.9.tar.lzma
+2022/02/20 | 62424 | systems/win32/miktex/tm/packages/next/miktex-cweb-bin-x64-2.9.tar.lzma
+2022/02/20 | 21313 | systems/win32/miktex/tm/packages/next/miktex-devnag-bin-2.9.tar.lzma
+2022/02/20 | 24133 | systems/win32/miktex/tm/packages/next/miktex-devnag-bin-x64-2.9.tar.lzma
+2022/02/20 | 478973 | systems/win32/miktex/tm/packages/next/miktex-doc.tar.lzma
+2022/02/20 | 46086 | systems/win32/miktex/tm/packages/next/miktex-dvicopy-bin-2.9.tar.lzma
+2022/02/20 | 52046 | systems/win32/miktex/tm/packages/next/miktex-dvicopy-bin-x64-2.9.tar.lzma
+2022/02/20 | 285795 | systems/win32/miktex/tm/packages/next/miktex-dvipdfmx-bin-2.9.tar.lzma
+2022/02/20 | 326536 | systems/win32/miktex/tm/packages/next/miktex-dvipdfmx-bin-x64-2.9.tar.lzma
+2022/02/20 | 41462 | systems/win32/miktex/tm/packages/next/miktex-dvipng-bin-2.9.tar.lzma
+2022/02/20 | 45799 | systems/win32/miktex/tm/packages/next/miktex-dvipng-bin-x64-2.9.tar.lzma
+2022/02/20 | 120508 | systems/win32/miktex/tm/packages/next/miktex-dvips-bin-2.9.tar.lzma
+2022/02/20 | 135147 | systems/win32/miktex/tm/packages/next/miktex-dvips-bin-x64-2.9.tar.lzma
+2022/02/20 | 1297210 | systems/win32/miktex/tm/packages/next/miktex-dvisvgm-bin-2.9.tar.lzma
+2022/02/20 | 1454773 | systems/win32/miktex/tm/packages/next/miktex-dvisvgm-bin-x64-2.9.tar.lzma
+2022/02/20 | 99733 | systems/win32/miktex/tm/packages/next/miktex-epstopdf-bin-2.9.tar.lzma
+2022/02/20 | 112967 | systems/win32/miktex/tm/packages/next/miktex-epstopdf-bin-x64-2.9.tar.lzma
+2022/02/20 | 43681 | systems/win32/miktex/tm/packages/next/miktex-expat-bin-2.9.tar.lzma
+2022/02/20 | 48852 | systems/win32/miktex/tm/packages/next/miktex-expat-bin-x64-2.9.tar.lzma
+2022/02/20 | 25109 | systems/win32/miktex/tm/packages/next/miktex-findtexmf-bin-2.9.tar.lzma
+2022/02/20 | 28556 | systems/win32/miktex/tm/packages/next/miktex-findtexmf-bin-x64-2.9.tar.lzma
+2022/02/20 | 56997 | systems/win32/miktex/tm/packages/next/miktex-fmt-bin-2.9.tar.lzma
+2022/02/20 | 63336 | systems/win32/miktex/tm/packages/next/miktex-fmt-bin-x64-2.9.tar.lzma
+2022/02/20 | 135964 | systems/win32/miktex/tm/packages/next/miktex-fontconfig-bin-2.9.tar.lzma
+2022/02/20 | 155464 | systems/win32/miktex/tm/packages/next/miktex-fontconfig-bin-x64-2.9.tar.lzma
+2022/02/20 | 73588 | systems/win32/miktex/tm/packages/next/miktex-fonts-bin-2.9.tar.lzma
+2022/02/20 | 78991 | systems/win32/miktex/tm/packages/next/miktex-fonts-bin-x64-2.9.tar.lzma
+2022/02/20 | 72141 | systems/win32/miktex/tm/packages/next/miktex-freeglut-bin-2.9.tar.lzma
+2022/02/20 | 81615 | systems/win32/miktex/tm/packages/next/miktex-freeglut-bin-x64-2.9.tar.lzma
+2022/02/20 | 259114 | systems/win32/miktex/tm/packages/next/miktex-freetype2-bin-2.9.tar.lzma
+2022/02/20 | 296024 | systems/win32/miktex/tm/packages/next/miktex-freetype2-bin-x64-2.9.tar.lzma
+2022/02/20 | 22183 | systems/win32/miktex/tm/packages/next/miktex-fribidixetex-bin-2.9.tar.lzma
+2022/02/20 | 25064 | systems/win32/miktex/tm/packages/next/miktex-fribidixetex-bin-x64-2.9.tar.lzma
+2022/02/20 | 97173 | systems/win32/miktex/tm/packages/next/miktex-gd-bin-2.9.tar.lzma
+2022/02/20 | 112717 | systems/win32/miktex/tm/packages/next/miktex-gd-bin-x64-2.9.tar.lzma
+2022/02/20 | 64571 | systems/win32/miktex/tm/packages/next/miktex-graphite2-bin-2.9.tar.lzma
+2022/02/20 | 73132 | systems/win32/miktex/tm/packages/next/miktex-graphite2-bin-x64-2.9.tar.lzma
+2022/02/20 | 96896 | systems/win32/miktex/tm/packages/next/miktex-gregorio-bin-2.9.tar.lzma
+2022/02/20 | 115700 | systems/win32/miktex/tm/packages/next/miktex-gregorio-bin-x64-2.9.tar.lzma
+2022/02/20 | 38433 | systems/win32/miktex/tm/packages/next/miktex-gsf2pk-bin-2.9.tar.lzma
+2022/02/20 | 43840 | systems/win32/miktex/tm/packages/next/miktex-gsf2pk-bin-x64-2.9.tar.lzma
+2022/02/20 | 484362 | systems/win32/miktex/tm/packages/next/miktex-harfbuzz-bin-2.9.tar.lzma
+2022/02/20 | 565304 | systems/win32/miktex/tm/packages/next/miktex-harfbuzz-bin-x64-2.9.tar.lzma
+2022/02/20 | 152061 | systems/win32/miktex/tm/packages/next/miktex-hunspell-bin-2.9.tar.lzma
+2022/02/20 | 168827 | systems/win32/miktex/tm/packages/next/miktex-hunspell-bin-x64-2.9.tar.lzma
+2022/02/20 | 95450 | systems/win32/miktex/tm/packages/next/miktex-jpeg-bin-2.9.tar.lzma
+2022/02/20 | 109541 | systems/win32/miktex/tm/packages/next/miktex-jpeg-bin-x64-2.9.tar.lzma
+2022/02/20 | 16500 | systems/win32/miktex/tm/packages/next/miktex-kpathsea-bin-2.9.tar.lzma
+2022/02/20 | 18353 | systems/win32/miktex/tm/packages/next/miktex-kpathsea-bin-x64-2.9.tar.lzma
+2022/02/20 | 28423 | systems/win32/miktex/tm/packages/next/miktex-lacheck-bin-2.9.tar.lzma
+2022/02/20 | 30566 | systems/win32/miktex/tm/packages/next/miktex-lacheck-bin-x64-2.9.tar.lzma
+2022/02/20 | 630670 | systems/win32/miktex/tm/packages/next/miktex-lcdf-typetools-bin-2.9.tar.lzma
+2022/02/20 | 681904 | systems/win32/miktex/tm/packages/next/miktex-lcdf-typetools-bin-x64-2.9.tar.lzma
+2022/02/20 | 532418 | systems/win32/miktex/tm/packages/next/miktex-libressl-bin-2.9.tar.lzma
+2022/02/20 | 598226 | systems/win32/miktex/tm/packages/next/miktex-libressl-bin-x64-2.9.tar.lzma
+2022/02/20 | 477779 | systems/win32/miktex/tm/packages/next/miktex-log4cxx-bin-2.9.tar.lzma
+2022/02/20 | 528153 | systems/win32/miktex/tm/packages/next/miktex-log4cxx-bin-x64-2.9.tar.lzma
+2022/02/20 | 93942 | systems/win32/miktex/tm/packages/next/miktex-lua53-bin-2.9.tar.lzma
+2022/02/20 | 103480 | systems/win32/miktex/tm/packages/next/miktex-lua53-bin-x64-2.9.tar.lzma
+2022/02/20 | 1751644 | systems/win32/miktex/tm/packages/next/miktex-luatex-bin-2.9.tar.lzma
+2022/02/20 | 1978889 | systems/win32/miktex/tm/packages/next/miktex-luatex-bin-x64-2.9.tar.lzma
+2022/02/20 | 68020 | systems/win32/miktex/tm/packages/next/miktex-lzma-bin-2.9.tar.lzma
+2022/02/20 | 74035 | systems/win32/miktex/tm/packages/next/miktex-lzma-bin-x64-2.9.tar.lzma
+2022/02/20 | 27672 | systems/win32/miktex/tm/packages/next/miktex-makeindex-bin-2.9.tar.lzma
+2022/02/20 | 32119 | systems/win32/miktex/tm/packages/next/miktex-makeindex-bin-x64-2.9.tar.lzma
+2022/02/20 | 7755 | systems/win32/miktex/tm/packages/next/miktex-md5-bin-2.9.tar.lzma
+2022/02/20 | 8787 | systems/win32/miktex/tm/packages/next/miktex-md5-bin-x64-2.9.tar.lzma
+2022/02/20 | 197537 | systems/win32/miktex/tm/packages/next/miktex-metafont-bin-2.9.tar.lzma
+2022/02/20 | 216394 | systems/win32/miktex/tm/packages/next/miktex-metafont-bin-x64-2.9.tar.lzma
+2022/02/20 | 251144 | systems/win32/miktex/tm/packages/next/miktex-metapost-bin-2.9.tar.lzma
+2022/02/20 | 286535 | systems/win32/miktex/tm/packages/next/miktex-metapost-bin-x64-2.9.tar.lzma
+2022/02/20 | 99182 | systems/win32/miktex/tm/packages/next/miktex-mfware-bin-2.9.tar.lzma
+2022/02/20 | 104690 | systems/win32/miktex/tm/packages/next/miktex-mfware-bin-x64-2.9.tar.lzma
+2022/02/20 | 126687 | systems/win32/miktex/tm/packages/next/miktex-mktex-bin-2.9.tar.lzma
+2022/02/20 | 139183 | systems/win32/miktex/tm/packages/next/miktex-mktex-bin-x64-2.9.tar.lzma
+2022/02/20 | 254967 | systems/win32/miktex/tm/packages/next/miktex-mo-bin-2.9.tar.lzma
+2022/02/20 | 286270 | systems/win32/miktex/tm/packages/next/miktex-mo-bin-x64-2.9.tar.lzma
+2022/02/20 | 199760 | systems/win32/miktex/tm/packages/next/miktex-mpfr-bin-2.9.tar.lzma
+2022/02/20 | 181444 | systems/win32/miktex/tm/packages/next/miktex-mpfr-bin-x64-2.9.tar.lzma
+2022/02/20 | 68611 | systems/win32/miktex/tm/packages/next/miktex-mpmcli-bin-2.9.tar.lzma
+2022/02/20 | 76222 | systems/win32/miktex/tm/packages/next/miktex-mpmcli-bin-x64-2.9.tar.lzma
+2022/02/20 | 31408 | systems/win32/miktex/tm/packages/next/miktex-mspack-bin-2.9.tar.lzma
+2022/02/20 | 35165 | systems/win32/miktex/tm/packages/next/miktex-mspack-bin-x64-2.9.tar.lzma
+2022/02/20 | 38561 | systems/win32/miktex/tm/packages/next/miktex-mthelp-bin-2.9.tar.lzma
+2022/02/20 | 43916 | systems/win32/miktex/tm/packages/next/miktex-mthelp-bin-x64-2.9.tar.lzma
+2022/02/20 | 43371 | systems/win32/miktex/tm/packages/next/miktex-mtprint-bin-2.9.tar.lzma
+2022/02/20 | 47921 | systems/win32/miktex/tm/packages/next/miktex-mtprint-bin-x64-2.9.tar.lzma
+2022/02/20 | 45874 | systems/win32/miktex/tm/packages/next/miktex-m-tx-bin-2.9.tar.lzma
+2022/02/20 | 52273 | systems/win32/miktex/tm/packages/next/miktex-m-tx-bin-x64-2.9.tar.lzma
+2022/02/20 | 196872 | systems/win32/miktex/tm/packages/next/miktex-omegaware-bin-2.9.tar.lzma
+2022/02/20 | 213246 | systems/win32/miktex/tm/packages/next/miktex-omegaware-bin-x64-2.9.tar.lzma
+2022/02/20 | 36053 | systems/win32/miktex/tm/packages/next/miktex-patgen-bin.tar.lzma
+2022/02/20 | 41217 | systems/win32/miktex/tm/packages/next/miktex-patgen-bin-x64.tar.lzma
+2022/02/20 | 754966 | systems/win32/miktex/tm/packages/next/miktex-pdftex-bin-2.9.tar.lzma
+2022/02/20 | 825683 | systems/win32/miktex/tm/packages/next/miktex-pdftex-bin-x64-2.9.tar.lzma
+2022/02/20 | 200088 | systems/win32/miktex/tm/packages/next/miktex-pixman-bin-2.9.tar.lzma
+2022/02/20 | 202831 | systems/win32/miktex/tm/packages/next/miktex-pixman-bin-x64-2.9.tar.lzma
+2022/02/20 | 210060 | systems/win32/miktex/tm/packages/next/miktex-pmx-bin-2.9.tar.lzma
+2022/02/20 | 244937 | systems/win32/miktex/tm/packages/next/miktex-pmx-bin-x64-2.9.tar.lzma
+2022/02/20 | 78966 | systems/win32/miktex/tm/packages/next/miktex-png-bin-2.9.tar.lzma
+2022/02/20 | 88122 | systems/win32/miktex/tm/packages/next/miktex-png-bin-x64-2.9.tar.lzma
+2022/02/20 | 1181453 | systems/win32/miktex/tm/packages/next/miktex-poppler-bin-2.9.tar.lzma
+2022/02/20 | 1322241 | systems/win32/miktex/tm/packages/next/miktex-poppler-bin-x64-2.9.tar.lzma
+2022/02/20 | 20180 | systems/win32/miktex/tm/packages/next/miktex-popt-bin-2.9.tar.lzma
+2022/02/20 | 23943 | systems/win32/miktex/tm/packages/next/miktex-popt-bin-x64-2.9.tar.lzma
+2022/02/20 | 31580 | systems/win32/miktex/tm/packages/next/miktex-posix-bin-2.9.tar.lzma
+2022/02/20 | 37378 | systems/win32/miktex/tm/packages/next/miktex-posix-bin-x64-2.9.tar.lzma
+2022/02/20 | 64675 | systems/win32/miktex/tm/packages/next/miktex-ps2pk-bin-2.9.tar.lzma
+2022/02/20 | 72990 | systems/win32/miktex/tm/packages/next/miktex-ps2pk-bin-x64-2.9.tar.lzma
+2022/02/20 | 50840 | systems/win32/miktex/tm/packages/next/miktex-psutils-bin-2.9.tar.lzma
+2022/02/20 | 58664 | systems/win32/miktex/tm/packages/next/miktex-psutils-bin-x64-2.9.tar.lzma
+2022/02/20 | 689311 | systems/win32/miktex/tm/packages/next/miktex-ptex-bin.tar.lzma
+2022/02/20 | 755600 | systems/win32/miktex/tm/packages/next/miktex-ptex-bin-x64.tar.lzma
+2022/02/20 | 1355588 | systems/win32/miktex/tm/packages/next/miktex-runtime-bin-2.9.tar.lzma
+2022/02/20 | 1499130 | systems/win32/miktex/tm/packages/next/miktex-runtime-bin-x64-2.9.tar.lzma
+2022/02/20 | 42773 | systems/win32/miktex/tm/packages/next/miktex-synctex-bin-2.9.tar.lzma
+2022/02/20 | 52488 | systems/win32/miktex/tm/packages/next/miktex-synctex-bin-x64-2.9.tar.lzma
+2022/02/20 | 57597 | systems/win32/miktex/tm/packages/next/miktex-tdsutil-bin.tar.lzma
+2022/02/20 | 63702 | systems/win32/miktex/tm/packages/next/miktex-tdsutil-bin-x64.tar.lzma
+2022/02/20 | 25494 | systems/win32/miktex/tm/packages/next/miktex-teckit-bin-2.9.tar.lzma
+2022/02/20 | 27509 | systems/win32/miktex/tm/packages/next/miktex-teckit-bin-x64-2.9.tar.lzma
+2022/02/20 | 16567 | systems/win32/miktex/tm/packages/next/miktex-tex2xindy-bin-2.9.tar.lzma
+2022/02/20 | 18483 | systems/win32/miktex/tm/packages/next/miktex-tex2xindy-bin-x64-2.9.tar.lzma
+2022/02/20 | 64443 | systems/win32/miktex/tm/packages/next/miktex-tex4ht-bin-2.9.tar.lzma
+2022/02/20 | 71009 | systems/win32/miktex/tm/packages/next/miktex-tex4ht-bin-x64-2.9.tar.lzma
+2022/02/20 | 156732 | systems/win32/miktex/tm/packages/next/miktex-tex-bin-2.9.tar.lzma
+2022/02/20 | 172500 | systems/win32/miktex/tm/packages/next/miktex-tex-bin-x64-2.9.tar.lzma
+2022/02/20 | 58692 | systems/win32/miktex/tm/packages/next/miktex-texify-bin-2.9.tar.lzma
+2022/02/20 | 67223 | systems/win32/miktex/tm/packages/next/miktex-texify-bin-x64-2.9.tar.lzma
+2022/02/20 | 100436 | systems/win32/miktex/tm/packages/next/miktex-texware-bin-2.9.tar.lzma
+2022/02/20 | 107403 | systems/win32/miktex/tm/packages/next/miktex-texware-bin-x64-2.9.tar.lzma
+2022/02/20 | 2671685 | systems/win32/miktex/tm/packages/next/miktex-texworks-bin-2.9.tar.lzma
+2022/02/20 | 2799653 | systems/win32/miktex/tm/packages/next/miktex-texworks-bin-x64-2.9.tar.lzma
+2022/02/20 | 55221 | systems/win32/miktex/tm/packages/next/miktex-ttf2pk2-bin-2.9.tar.lzma
+2022/02/20 | 62367 | systems/win32/miktex/tm/packages/next/miktex-ttf2pk2-bin-x64-2.9.tar.lzma
+2022/02/20 | 37114 | systems/win32/miktex/tm/packages/next/miktex-upmendex-bin.tar.lzma
+2022/02/20 | 41214 | systems/win32/miktex/tm/packages/next/miktex-upmendex-bin-x64.tar.lzma
+2022/02/20 | 28675 | systems/win32/miktex/tm/packages/next/miktex-uriparser-bin-2.9.tar.lzma
+2022/02/20 | 34033 | systems/win32/miktex/tm/packages/next/miktex-uriparser-bin-x64-2.9.tar.lzma
+2022/02/20 | 65920 | systems/win32/miktex/tm/packages/next/miktex-web-bin-2.9.tar.lzma
+2022/02/20 | 71868 | systems/win32/miktex/tm/packages/next/miktex-web-bin-x64-2.9.tar.lzma
+2022/02/20 | 316236 | systems/win32/miktex/tm/packages/next/miktex-xetex-bin-2.9.tar.lzma
+2022/02/20 | 351700 | systems/win32/miktex/tm/packages/next/miktex-xetex-bin-x64-2.9.tar.lzma
+2022/02/20 | 55748 | systems/win32/miktex/tm/packages/next/miktex-xml2pmx-bin.tar.lzma
+2022/02/20 | 57416 | systems/win32/miktex/tm/packages/next/miktex-xml2pmx-bin-x64.tar.lzma
+2022/02/20 | 591311 | systems/win32/miktex/tm/packages/next/miktex-yap-bin-2.9.tar.lzma
+2022/02/20 | 629311 | systems/win32/miktex/tm/packages/next/miktex-yap-bin-x64-2.9.tar.lzma
+2022/02/20 | 39733 | systems/win32/miktex/tm/packages/next/miktex-zlib-bin-2.9.tar.lzma
+2022/02/20 | 43647 | systems/win32/miktex/tm/packages/next/miktex-zlib-bin-x64-2.9.tar.lzma
+2022/02/20 | 266727 | systems/win32/miktex/tm/packages/next/miktex-zzdb1-2.9.tar.lzma
+2022/02/20 | 1423747 | systems/win32/miktex/tm/packages/next/miktex-zzdb2-2.9.tar.lzma
+2022/02/20 | 1315399 | systems/win32/miktex/tm/packages/next/miktex-zzdb3-2.9.tar.lzma
+2022/02/20 | 13513 | systems/win32/miktex/tm/packages/next/miktex-zzip-bin-2.9.tar.lzma
+2022/02/20 | 14404 | systems/win32/miktex/tm/packages/next/miktex-zzip-bin-x64-2.9.tar.lzma
2019/03/12 | 1412 | systems/win32/miktex/tm/packages/nextpage.tar.lzma
-2022/02/19 | 1153 | systems/win32/miktex/tm/packages/next/pr.ini
+2022/02/20 | 1153 | systems/win32/miktex/tm/packages/next/pr.ini
2018/07/06 | 145915 | systems/win32/miktex/tm/packages/nexus-otf.tar.lzma
2017/03/30 | 191149 | systems/win32/miktex/tm/packages/nfssext-cfr.tar.lzma
2012/12/20 | 612251 | systems/win32/miktex/tm/packages/nicefilelist.tar.lzma
@@ -300035,7 +300046,7 @@
2020/10/20 | 342254 | systems/win32/miktex/tm/packages/preview.tar.lzma
2019/06/20 | 375963 | systems/win32/miktex/tm/packages/prftree.tar.lzma
2021/04/23 | 274028 | systems/win32/miktex/tm/packages/principia.tar.lzma
-2022/02/19 | 947 | systems/win32/miktex/tm/packages/pr.ini
+2022/02/20 | 954 | systems/win32/miktex/tm/packages/pr.ini
2010/09/27 | 248469 | systems/win32/miktex/tm/packages/printlen.tar.lzma
2008/06/17 | 77313 | systems/win32/miktex/tm/packages/proba.tar.lzma
2017/07/12 | 988486 | systems/win32/miktex/tm/packages/probsoln.tar.lzma
@@ -301812,7 +301823,7 @@
2004/06/04 | 404 | tds/tds.sed
2004/06/23 | 65418 | tds/tds.tex
2019/05/29 | 304264 | tds.zip
-2022/02/20 | 186 | timestamp
+2022/02/21 | 186 | timestamp
2002/08/26 | 61898 | usergrps/dante/antrag.pdf
2002/08/26 | 118217 | usergrps/dante/antrag.ps
2021/11/11 | 917 | usergrps/dante/dtk/doc/beispiel.bib
diff --git a/FILES.byname.gz b/FILES.byname.gz
index 024e5a8cb4..70434b46b4 100644
--- a/FILES.byname.gz
+++ b/FILES.byname.gz
Binary files differ
diff --git a/FILES.last07days b/FILES.last07days
index ea108e4f67..b94ea83894 100644
--- a/FILES.last07days
+++ b/FILES.last07days
@@ -1,282 +1,430 @@
-2022/02/19 | 99732 | systems/win32/miktex/tm/packages/next/miktex-epstopdf-bin-2.9.tar.lzma
-2022/02/19 | 99181 | systems/win32/miktex/tm/packages/next/miktex-mfware-bin-2.9.tar.lzma
-2022/02/19 | 97173 | systems/win32/miktex/tm/packages/next/miktex-gd-bin-2.9.tar.lzma
-2022/02/19 | 96896 | systems/win32/miktex/tm/packages/next/miktex-gregorio-bin-2.9.tar.lzma
+2022/02/20 | 99733 | systems/win32/miktex/tm/packages/next/miktex-epstopdf-bin-2.9.tar.lzma
+2022/02/20 | 99182 | systems/win32/miktex/tm/packages/next/miktex-mfware-bin-2.9.tar.lzma
+2022/02/20 | 972970 | graphics/mcf2graph.zip
+2022/02/20 | 97173 | systems/win32/miktex/tm/packages/next/miktex-gd-bin-2.9.tar.lzma
+2022/02/20 | 96896 | systems/win32/miktex/tm/packages/next/miktex-gregorio-bin-2.9.tar.lzma
+2022/02/20 | 954 | systems/win32/miktex/tm/packages/pr.ini
+2022/02/20 | 95450 | systems/win32/miktex/tm/packages/next/miktex-jpeg-bin-2.9.tar.lzma
+2022/02/20 | 95301 | systems/win32/miktex/tm/packages/next/miktex-bibtex8bit-bin-x64-2.9.tar.lzma
+2022/02/20 | 93942 | systems/win32/miktex/tm/packages/next/miktex-lua53-bin-2.9.tar.lzma
+2022/02/20 | 93723 | macros/latex/contrib/caption/subcaption.dtx
+2022/02/20 | 9302 | macros/latex/contrib/caption/caption-ams-smf.dtx
+2022/02/20 | 927404 | systems/texlive/tlnet/archive/tex4ht.r62089.tar.xz
+2022/02/20 | 9257 | macros/latex/contrib/crefthe/crefthe.sty
+2022/02/20 | 9033 | macros/latex/contrib/caption/CHANGELOG
+2022/02/20 | 89996 | macros/latex/contrib/caption/ltcaption.pdf
+2022/02/20 | 88122 | systems/win32/miktex/tm/packages/next/miktex-png-bin-x64-2.9.tar.lzma
+2022/02/20 | 8787 | systems/win32/miktex/tm/packages/next/miktex-md5-bin-x64-2.9.tar.lzma
+2022/02/20 | 86704 | systems/win32/miktex/tm/packages/next/miktex-bibtex8bit-bin-2.9.tar.lzma
+2022/02/20 | 825683 | systems/win32/miktex/tm/packages/next/miktex-pdftex-bin-x64-2.9.tar.lzma
+2022/02/20 | 81615 | systems/win32/miktex/tm/packages/next/miktex-freeglut-bin-x64-2.9.tar.lzma
+2022/02/20 | 8144 | fonts/erewhon-math/fourier-otf.sty
+2022/02/20 | 80454 | macros/latex/contrib/preview/preview.dtx
+2022/02/20 | 78991 | systems/win32/miktex/tm/packages/next/miktex-fonts-bin-x64-2.9.tar.lzma
+2022/02/20 | 78966 | systems/win32/miktex/tm/packages/next/miktex-png-bin-2.9.tar.lzma
+2022/02/20 | 7890 | macros/latex/contrib/caption/caption-thesis.dtx
+2022/02/20 | 784 | systems/texlive/tlnet/archive/collection-luatex.r62086.tar.xz
+2022/02/20 | 7755 | systems/win32/miktex/tm/packages/next/miktex-md5-bin-2.9.tar.lzma
+2022/02/20 | 77411 | macros/latex/contrib/caption/caption2.pdf
+2022/02/20 | 7724 | macros/latex/contrib/caption/caption-ntg.dtx
+2022/02/20 | 77116 | systems/win32/miktex/tm/packages/next/miktex-bibtex-bin-x64-2.9.tar.lzma
+2022/02/20 | 766381 | macros/xetex/latex/xepersian/xepersian.pdf
+2022/02/20 | 76222 | systems/win32/miktex/tm/packages/next/miktex-mpmcli-bin-x64-2.9.tar.lzma
+2022/02/20 | 7614 | macros/latex/contrib/caption/caption-elsarticle.dtx
+2022/02/20 | 76100 | systems/texlive/tlnet/archive/xepersian.source.r62087.tar.xz
+2022/02/20 | 755600 | systems/win32/miktex/tm/packages/next/miktex-ptex-bin-x64.tar.lzma
+2022/02/20 | 754966 | systems/win32/miktex/tm/packages/next/miktex-pdftex-bin-2.9.tar.lzma
+2022/02/20 | 7423 | macros/latex/contrib/memoir/doc-src/memnoidxnum.tex
+2022/02/20 | 74035 | systems/win32/miktex/tm/packages/next/miktex-lzma-bin-x64-2.9.tar.lzma
+2022/02/20 | 73588 | systems/win32/miktex/tm/packages/next/miktex-fonts-bin-2.9.tar.lzma
+2022/02/20 | 73132 | systems/win32/miktex/tm/packages/next/miktex-graphite2-bin-x64-2.9.tar.lzma
+2022/02/20 | 72990 | systems/win32/miktex/tm/packages/next/miktex-ps2pk-bin-x64-2.9.tar.lzma
+2022/02/20 | 72141 | systems/win32/miktex/tm/packages/next/miktex-freeglut-bin-2.9.tar.lzma
+2022/02/20 | 71868 | systems/win32/miktex/tm/packages/next/miktex-web-bin-x64-2.9.tar.lzma
+2022/02/20 | 71644 | macros/xetex/latex/xepersian/xepersian-doc-basics.ltx
+2022/02/20 | 71009 | systems/win32/miktex/tm/packages/next/miktex-tex4ht-bin-x64-2.9.tar.lzma
+2022/02/20 | 70243 | macros/unicodetex/latex/tipauni/tipauni-commands.pdf
+2022/02/20 | 689311 | systems/win32/miktex/tm/packages/next/miktex-ptex-bin.tar.lzma
+2022/02/20 | 68811 | systems/win32/miktex/tm/packages/next/miktex-bibtex-bin-2.9.tar.lzma
+2022/02/20 | 68611 | systems/win32/miktex/tm/packages/next/miktex-mpmcli-bin-2.9.tar.lzma
+2022/02/20 | 681904 | systems/win32/miktex/tm/packages/next/miktex-lcdf-typetools-bin-x64-2.9.tar.lzma
+2022/02/20 | 6809291 | systems/texlive/tlnet/install-tl-unx.tar.gz
+2022/02/20 | 68020 | systems/win32/miktex/tm/packages/next/miktex-lzma-bin-2.9.tar.lzma
+2022/02/20 | 67305 | macros/latex/contrib/caption/caption-light.pdf
+2022/02/20 | 67223 | systems/win32/miktex/tm/packages/next/miktex-texify-bin-x64-2.9.tar.lzma
+2022/02/20 | 66477 | macros/latex/contrib/caption/bicaption.dtx
+2022/02/20 | 6618872 | fonts/haranoaji/HaranoAjiMincho-Bold.otf
+2022/02/20 | 65920 | systems/win32/miktex/tm/packages/next/miktex-web-bin-2.9.tar.lzma
+2022/02/20 | 64991 | systems/win32/miktex/tm/packages/next/miktex-bibarts-bin-x64-2.9.tar.lzma
+2022/02/20 | 6473480 | fonts/haranoaji-extra/HaranoAjiMincho-Heavy.otf
+2022/02/20 | 64675 | systems/win32/miktex/tm/packages/next/miktex-ps2pk-bin-2.9.tar.lzma
+2022/02/20 | 64571 | systems/win32/miktex/tm/packages/next/miktex-graphite2-bin-2.9.tar.lzma
+2022/02/20 | 6450604 | fonts/haranoaji-extra/HaranoAjiMincho-SemiBold.otf
+2022/02/20 | 64443 | systems/win32/miktex/tm/packages/next/miktex-tex4ht-bin-2.9.tar.lzma
+2022/02/20 | 6419272 | fonts/haranoaji-extra/HaranoAjiMincho-Medium.otf
+2022/02/20 | 640306 | systems/win32/miktex/tm/packages/next/files.csv.lzma
+2022/02/20 | 640115 | systems/win32/miktex/tm/packages/files.csv.lzma
+2022/02/20 | 63702 | systems/win32/miktex/tm/packages/next/miktex-tdsutil-bin-x64.tar.lzma
+2022/02/20 | 6355800 | fonts/haranoaji/HaranoAjiMincho-Regular.otf
+2022/02/20 | 63336 | systems/win32/miktex/tm/packages/next/miktex-fmt-bin-x64-2.9.tar.lzma
+2022/02/20 | 630670 | systems/win32/miktex/tm/packages/next/miktex-lcdf-typetools-bin-2.9.tar.lzma
+2022/02/20 | 629311 | systems/win32/miktex/tm/packages/next/miktex-yap-bin-x64-2.9.tar.lzma
+2022/02/20 | 6276992 | fonts/haranoaji/HaranoAjiMincho-Light.otf
+2022/02/20 | 62424 | systems/win32/miktex/tm/packages/next/miktex-cweb-bin-x64-2.9.tar.lzma
+2022/02/20 | 62367 | systems/win32/miktex/tm/packages/next/miktex-ttf2pk2-bin-x64-2.9.tar.lzma
+2022/02/20 | 608 | systems/texlive/tlnet/archive/graphics-def.doc.r62085.tar.xz
+2022/02/20 | 60796 | systems/texlive/tlnet/archive/xepersian.r62087.tar.xz
+2022/02/20 | 6065 | macros/latex/contrib/fbox/doc/fbox.tex
+2022/02/20 | 598226 | systems/win32/miktex/tm/packages/next/miktex-libressl-bin-x64-2.9.tar.lzma
+2022/02/20 | 591311 | systems/win32/miktex/tm/packages/next/miktex-yap-bin-2.9.tar.lzma
+2022/02/20 | 586 | macros/latex/contrib/memoir/doc-src/trims-example.tex
+2022/02/20 | 58692 | systems/win32/miktex/tm/packages/next/miktex-texify-bin-2.9.tar.lzma
+2022/02/20 | 58664 | systems/win32/miktex/tm/packages/next/miktex-psutils-bin-x64-2.9.tar.lzma
+2022/02/20 | 5813388 | fonts/haranoaji-extra/HaranoAjiMincho-ExtraLight.otf
+2022/02/20 | 57597 | systems/win32/miktex/tm/packages/next/miktex-tdsutil-bin.tar.lzma
+2022/02/20 | 57416 | systems/win32/miktex/tm/packages/next/miktex-xml2pmx-bin-x64.tar.lzma
+2022/02/20 | 57416 | systems/win32/miktex/tm/packages/next/miktex-arctrl-bin-x64-2.9.tar.lzma
+2022/02/20 | 57341 | systems/win32/miktex/tm/packages/next/miktex-cjkutils-bin-x64-2.9.tar.lzma
+2022/02/20 | 56997 | systems/win32/miktex/tm/packages/next/miktex-fmt-bin-2.9.tar.lzma
+2022/02/20 | 56923 | macros/unicodetex/latex/tipauni/tipauni.dtx
+2022/02/20 | 5684 | fonts/erewhon-math/README.md
+2022/02/20 | 56690 | systems/win32/miktex/tm/packages/next/miktex-bibarts-bin-2.9.tar.lzma
+2022/02/20 | 565304 | systems/win32/miktex/tm/packages/next/miktex-harfbuzz-bin-x64-2.9.tar.lzma
+2022/02/20 | 55748 | systems/win32/miktex/tm/packages/next/miktex-xml2pmx-bin.tar.lzma
+2022/02/20 | 55221 | systems/win32/miktex/tm/packages/next/miktex-ttf2pk2-bin-2.9.tar.lzma
+2022/02/20 | 5519 | macros/latex/contrib/memoir/doc-src/memfonts.sty
+2022/02/20 | 54960 | systems/win32/miktex/tm/packages/next/miktex-cweb-bin-2.9.tar.lzma
+2022/02/20 | 5447 | macros/xetex/latex/xepersian/xepersian-doc-envcs.ltx
+2022/02/20 | 532418 | systems/win32/miktex/tm/packages/next/miktex-libressl-bin-2.9.tar.lzma
+2022/02/20 | 528153 | systems/win32/miktex/tm/packages/next/miktex-log4cxx-bin-x64-2.9.tar.lzma
+2022/02/20 | 52488 | systems/win32/miktex/tm/packages/next/miktex-synctex-bin-x64-2.9.tar.lzma
+2022/02/20 | 52273 | systems/win32/miktex/tm/packages/next/miktex-m-tx-bin-x64-2.9.tar.lzma
+2022/02/20 | 52046 | systems/win32/miktex/tm/packages/next/miktex-dvicopy-bin-x64-2.9.tar.lzma
+2022/02/20 | 51574 | systems/win32/miktex/tm/packages/next/miktex-arctrl-bin-2.9.tar.lzma
+2022/02/20 | 51551 | systems/win32/miktex/tm/packages/next/miktex-cjkutils-bin-2.9.tar.lzma
+2022/02/20 | 50904 | macros/latex/contrib/caption/caption2.dtx
+2022/02/20 | 50840 | systems/win32/miktex/tm/packages/next/miktex-psutils-bin-2.9.tar.lzma
+2022/02/20 | 4994048 | fonts/haranoaji/HaranoAjiGothic-Heavy.otf
+2022/02/20 | 49316 | macros/latex/contrib/fbox.zip
+2022/02/20 | 48 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.md5
+2022/02/20 | 48852 | systems/win32/miktex/tm/packages/next/miktex-expat-bin-x64-2.9.tar.lzma
+2022/02/20 | 48652 | macros/latex/contrib/memoir/README
+2022/02/20 | 484362 | systems/win32/miktex/tm/packages/next/miktex-harfbuzz-bin-2.9.tar.lzma
+2022/02/20 | 4797892 | fonts/haranoaji/HaranoAjiGothic-Bold.otf
+2022/02/20 | 47921 | systems/win32/miktex/tm/packages/next/miktex-mtprint-bin-x64-2.9.tar.lzma
+2022/02/20 | 478973 | systems/win32/miktex/tm/packages/next/miktex-doc.tar.lzma
+2022/02/20 | 477779 | systems/win32/miktex/tm/packages/next/miktex-log4cxx-bin-2.9.tar.lzma
+2022/02/20 | 46949 | macros/latex/contrib/caption/fallback/v2.1/caption2.dtx
+2022/02/20 | 4689988 | fonts/haranoaji/HaranoAjiGothic-Medium.otf
+2022/02/20 | 4672628 | fonts/haranoaji/HaranoAjiGothic-Regular.otf
+2022/02/20 | 4668600 | fonts/haranoaji-extra/HaranoAjiGothic-Normal.otf
+2022/02/20 | 4655752 | fonts/haranoaji-extra/HaranoAjiGothic-Light.otf
+2022/02/20 | 46291 | macros/latex/contrib/fbox/doc/fbox.pdf
+2022/02/20 | 46086 | systems/win32/miktex/tm/packages/next/miktex-dvicopy-bin-2.9.tar.lzma
+2022/02/20 | 45874 | systems/win32/miktex/tm/packages/next/miktex-m-tx-bin-2.9.tar.lzma
+2022/02/20 | 457 | macros/unicodetex/latex/tipauni/README.txt
+2022/02/20 | 45799 | systems/win32/miktex/tm/packages/next/miktex-dvipng-bin-x64-2.9.tar.lzma
+2022/02/20 | 455 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512.asc
+2022/02/20 | 455 | systems/texlive/tlnet/install-tl.zip.sha512.asc
+2022/02/20 | 455 | systems/texlive/tlnet/install-tl-windows.exe.sha512.asc
+2022/02/20 | 455 | systems/texlive/tlnet/install-tl-unx.tar.gz.sha512.asc
+2022/02/20 | 454 | macros/xetex/latex/xepersian/xepersian-doc.ltx
+2022/02/20 | 4509 | macros/unicodetex/latex/tipauni/tipauni-commands.tex
+2022/02/20 | 43916 | systems/win32/miktex/tm/packages/next/miktex-mthelp-bin-x64-2.9.tar.lzma
+2022/02/20 | 43840 | systems/win32/miktex/tm/packages/next/miktex-gsf2pk-bin-x64-2.9.tar.lzma
+2022/02/20 | 4376408 | fonts/haranoaji-extra/HaranoAjiGothic-ExtraLight.otf
+2022/02/20 | 43681 | systems/win32/miktex/tm/packages/next/miktex-expat-bin-2.9.tar.lzma
+2022/02/20 | 43647 | systems/win32/miktex/tm/packages/next/miktex-zlib-bin-x64-2.9.tar.lzma
+2022/02/20 | 43371 | systems/win32/miktex/tm/packages/next/miktex-mtprint-bin-2.9.tar.lzma
+2022/02/20 | 433473 | macros/unicodetex/latex/tipauni.zip
+2022/02/20 | 432 | macros/latex/contrib/memoir/doc-src/memman.gst
+2022/02/20 | 431593 | graphics/mcf2graph/mcf_example.pdf
+2022/02/20 | 42878 | graphics/mcf2graph/mcf_man_soc.mp
+2022/02/20 | 42773 | systems/win32/miktex/tm/packages/next/miktex-synctex-bin-2.9.tar.lzma
+2022/02/20 | 427518 | macros/latex/contrib/caption/caption.pdf
+2022/02/20 | 42186 | macros/latex/contrib/memoir/doc-src/memsty.sty
+2022/02/20 | 4149 | macros/xetex/latex/xepersian/xepersian-doc-preamble.ltx
+2022/02/20 | 41462 | systems/win32/miktex/tm/packages/next/miktex-dvipng-bin-2.9.tar.lzma
+2022/02/20 | 41217 | systems/win32/miktex/tm/packages/next/miktex-patgen-bin-x64.tar.lzma
+2022/02/20 | 41214 | systems/win32/miktex/tm/packages/next/miktex-upmendex-bin-x64.tar.lzma
+2022/02/20 | 410 | macros/xetex/latex/xepersian/xepersian-doc-boolean.ltx
+2022/02/20 | 403612 | systems/texlive/tlnet/archive/texlive-scripts.doc.r62083.tar.xz
+2022/02/20 | 4019 | macros/latex/contrib/fbox/latex/fbox.sty
+2022/02/20 | 3977 | macros/latex/contrib/memoir/memoir.ins
+2022/02/20 | 39733 | systems/win32/miktex/tm/packages/next/miktex-zlib-bin-2.9.tar.lzma
+2022/02/20 | 394421 | systems/win32/miktex/tm/packages/next/miktex-cairo-bin-x64-2.9.tar.lzma
+2022/02/20 | 3922 | macros/latex/contrib/caption/caption.ins
+2022/02/20 | 389 | macros/latex/contrib/memoir/doc-src/memman.ist
+2022/02/20 | 38725 | macros/xetex/latex/xepersian/ftxe-0.12.py
+2022/02/20 | 38561 | systems/win32/miktex/tm/packages/next/miktex-mthelp-bin-2.9.tar.lzma
+2022/02/20 | 38433 | systems/win32/miktex/tm/packages/next/miktex-gsf2pk-bin-2.9.tar.lzma
+2022/02/20 | 38371 | macros/latex/contrib/memoir/mempatch.dtx
+2022/02/20 | 379488 | fonts/erewhon-math/Erewhon-Math.otf
+2022/02/20 | 37378 | systems/win32/miktex/tm/packages/next/miktex-posix-bin-x64-2.9.tar.lzma
+2022/02/20 | 37114 | systems/win32/miktex/tm/packages/next/miktex-upmendex-bin.tar.lzma
+2022/02/20 | 37082 | systems/win32/miktex/tm/packages/next/miktex-chktex-bin-x64-2.9.tar.lzma
+2022/02/20 | 3655680 | install/macros/latex/contrib/memoir.tds.zip
+2022/02/20 | 36053 | systems/win32/miktex/tm/packages/next/miktex-patgen-bin.tar.lzma
+2022/02/20 | 3593 | graphics/mcf2graph/README
+2022/02/20 | 3549221 | macros/latex/contrib/memoir.zip
+2022/02/20 | 35200 | systems/win32/miktex/tm/packages/next/miktex-axohelp-bin-x64-2.9.tar.lzma
+2022/02/20 | 351700 | systems/win32/miktex/tm/packages/next/miktex-xetex-bin-x64-2.9.tar.lzma
+2022/02/20 | 35165 | systems/win32/miktex/tm/packages/next/miktex-mspack-bin-x64-2.9.tar.lzma
+2022/02/20 | 3512 | systems/texlive/tlnet/archive/luacensor.r62086.tar.xz
+2022/02/20 | 349133 | macros/latex/contrib/preview.zip
+2022/02/20 | 34033 | systems/win32/miktex/tm/packages/next/miktex-uriparser-bin-x64-2.9.tar.lzma
+2022/02/20 | 33908283 | systems/win32/miktex/tm/packages/biber-darwin-x86_64.tar.lzma
+2022/02/20 | 337424 | macros/latex/contrib/caption/caption.dtx
+2022/02/20 | 337296 | macros/xetex/latex/xepersian/xepersian.dtx
+2022/02/20 | 332473 | systems/win32/miktex/tm/packages/next/miktex-cairo-bin-2.9.tar.lzma
+2022/02/20 | 332076 | macros/latex/contrib/preview/preview.pdf
+2022/02/20 | 32949 | systems/win32/miktex/tm/packages/next/miktex-chktex-bin-2.9.tar.lzma
+2022/02/20 | 32834506 | fonts/haranoaji-extra.zip
+2022/02/20 | 32688740 | fonts/haranoaji.zip
+2022/02/20 | 326536 | systems/win32/miktex/tm/packages/next/miktex-dvipdfmx-bin-x64-2.9.tar.lzma
+2022/02/20 | 32119 | systems/win32/miktex/tm/packages/next/miktex-makeindex-bin-x64-2.9.tar.lzma
+2022/02/20 | 3193 | fonts/haranoaji/README
+2022/02/20 | 3193 | fonts/haranoaji-extra/README
+2022/02/20 | 316236 | systems/win32/miktex/tm/packages/next/miktex-xetex-bin-2.9.tar.lzma
+2022/02/20 | 31580 | systems/win32/miktex/tm/packages/next/miktex-posix-bin-2.9.tar.lzma
+2022/02/20 | 31529 | systems/win32/miktex/tm/packages/next/miktex-autosp-bin-x64-2.9.tar.lzma
+2022/02/20 | 31408 | systems/win32/miktex/tm/packages/next/miktex-mspack-bin-2.9.tar.lzma
+2022/02/20 | 31327 | systems/win32/miktex/tm/packages/next/miktex-bzip2-bin-x64-2.9.tar.lzma
+2022/02/20 | 3099 | macros/xetex/latex/xepersian/xepersian-doc-captions.ltx
+2022/02/20 | 3067 | macros/latex/contrib/caption/README
+2022/02/20 | 30566 | systems/win32/miktex/tm/packages/next/miktex-lacheck-bin-x64-2.9.tar.lzma
+2022/02/20 | 30152 | systems/win32/miktex/tm/packages/next/miktex-axohelp-bin-2.9.tar.lzma
+2022/02/20 | 30017 | macros/latex/contrib/caption/ltcaption.dtx
+2022/02/20 | 296024 | systems/win32/miktex/tm/packages/next/miktex-freetype2-bin-x64-2.9.tar.lzma
+2022/02/20 | 292313 | graphics/mcf2graph/mcf_manual.pdf
+2022/02/20 | 291007 | macros/latex/contrib/caption/fallback/v3.1/caption.dtx
+2022/02/20 | 28748 | systems/win32/miktex/tm/packages/next/miktex-autosp-bin-2.9.tar.lzma
+2022/02/20 | 28675 | systems/win32/miktex/tm/packages/next/miktex-uriparser-bin-2.9.tar.lzma
+2022/02/20 | 286535 | systems/win32/miktex/tm/packages/next/miktex-metapost-bin-x64-2.9.tar.lzma
+2022/02/20 | 286270 | systems/win32/miktex/tm/packages/next/miktex-mo-bin-x64-2.9.tar.lzma
+2022/02/20 | 285795 | systems/win32/miktex/tm/packages/next/miktex-dvipdfmx-bin-2.9.tar.lzma
+2022/02/20 | 28556 | systems/win32/miktex/tm/packages/next/miktex-findtexmf-bin-x64-2.9.tar.lzma
+2022/02/20 | 2852 | macros/latex/contrib/memoir/mempatch.ins
+2022/02/20 | 28423 | systems/win32/miktex/tm/packages/next/miktex-lacheck-bin-2.9.tar.lzma
+2022/02/20 | 2838424 | macros/latex/contrib/memoir/memman.pdf
+2022/02/20 | 282 | macros/latex/contrib/fbox/CHANGELOG
+2022/02/20 | 281599 | systems/win32/miktex/tm/packages/next/miktex-console-bin-x64-2.9.tar.lzma
+2022/02/20 | 2801 | graphics/mcf2graph/mcf_example.tex
+2022/02/20 | 2799653 | systems/win32/miktex/tm/packages/next/miktex-texworks-bin-x64-2.9.tar.lzma
+2022/02/20 | 2796 | macros/latex/contrib/crefthe/README.md
+2022/02/20 | 27874 | macros/latex/contrib/flashcards/flashcards.dtx
+2022/02/20 | 27672 | systems/win32/miktex/tm/packages/next/miktex-makeindex-bin-2.9.tar.lzma
+2022/02/20 | 27509 | systems/win32/miktex/tm/packages/next/miktex-teckit-bin-x64-2.9.tar.lzma
+2022/02/20 | 27251 | systems/win32/miktex/tm/packages/next/miktex-bzip2-bin-2.9.tar.lzma
+2022/02/20 | 27134 | fonts/erewhon-math/Erewhon-Math.ltx
+2022/02/20 | 2683 | macros/unicodetex/latex/njuthesis/njuthesis.ins
+2022/02/20 | 2671685 | systems/win32/miktex/tm/packages/next/miktex-texworks-bin-2.9.tar.lzma
+2022/02/20 | 266727 | systems/win32/miktex/tm/packages/next/miktex-zzdb1-2.9.tar.lzma
+2022/02/20 | 266717 | systems/win32/miktex/tm/packages/miktex-zzdb1-2.9.tar.lzma
+2022/02/20 | 2628 | macros/latex/contrib/flashcards/README
+2022/02/20 | 2622 | macros/xetex/latex/xepersian/xepersian-doc-intro.ltx
+2022/02/20 | 261094 | macros/latex/contrib/flashcards.zip
+2022/02/20 | 25946 | macros/xetex/latex/xepersian/xepersian-doc-pkgs.ltx
+2022/02/20 | 259114 | systems/win32/miktex/tm/packages/next/miktex-freetype2-bin-2.9.tar.lzma
+2022/02/20 | 2576 | macros/latex/contrib/preview/README
+2022/02/20 | 25628384 | systems/texlive/tlnet/install-tl.zip
+2022/02/20 | 256251 | systems/win32/miktex/tm/packages/next/miktex-console-bin-2.9.tar.lzma
+2022/02/20 | 254967 | systems/win32/miktex/tm/packages/next/miktex-mo-bin-2.9.tar.lzma
+2022/02/20 | 25494 | systems/win32/miktex/tm/packages/next/miktex-teckit-bin-2.9.tar.lzma
+2022/02/20 | 251144 | systems/win32/miktex/tm/packages/next/miktex-metapost-bin-2.9.tar.lzma
+2022/02/20 | 25109 | systems/win32/miktex/tm/packages/next/miktex-findtexmf-bin-2.9.tar.lzma
+2022/02/20 | 25064 | systems/win32/miktex/tm/packages/next/miktex-fribidixetex-bin-x64-2.9.tar.lzma
+2022/02/20 | 246934 | macros/latex/contrib/flashcards/flashcards.pdf
+2022/02/20 | 246578 | macros/xetex/latex/xepersian/xepersian-doc.pdf
+2022/02/20 | 245485 | macros/unicodetex/latex/tipauni/tipauni.pdf
+2022/02/20 | 244937 | systems/win32/miktex/tm/packages/next/miktex-pmx-bin-x64-2.9.tar.lzma
+2022/02/20 | 24133 | systems/win32/miktex/tm/packages/next/miktex-devnag-bin-x64-2.9.tar.lzma
+2022/02/20 | 23943 | systems/win32/miktex/tm/packages/next/miktex-popt-bin-x64-2.9.tar.lzma
+2022/02/20 | 2352784 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.xz
+2022/02/20 | 2251366 | fonts/erewhon-math.zip
+2022/02/20 | 22183 | systems/win32/miktex/tm/packages/next/miktex-fribidixetex-bin-2.9.tar.lzma
+2022/02/20 | 221744 | macros/latex/contrib/caption/subcaption.pdf
+2022/02/20 | 2166 | graphics/mcf2graph/mcf_exa_soc.mp
+2022/02/20 | 216394 | systems/win32/miktex/tm/packages/next/miktex-metafont-bin-x64-2.9.tar.lzma
+2022/02/20 | 2150 | macros/xetex/latex/xepersian/xepersian-doc-title.ltx
+2022/02/20 | 21420 | macros/latex/contrib/caption/fallback/v2.0/caption2.dtx
+2022/02/20 | 213246 | systems/win32/miktex/tm/packages/next/miktex-omegaware-bin-x64-2.9.tar.lzma
+2022/02/20 | 21313 | systems/win32/miktex/tm/packages/next/miktex-devnag-bin-2.9.tar.lzma
+2022/02/20 | 21191 | macros/latex/contrib/caption/elephant.eps
+2022/02/20 | 210060 | systems/win32/miktex/tm/packages/next/miktex-pmx-bin-2.9.tar.lzma
+2022/02/20 | 20873396 | systems/texlive/tlnet/install-tl-windows.exe
+2022/02/20 | 206 | macros/latex/contrib/memoir/doc-src/Makeidxglo
+2022/02/20 | 203838 | macros/latex/contrib/memoir/doc-src/setpage-example.pdf
+2022/02/20 | 202831 | systems/win32/miktex/tm/packages/next/miktex-pixman-bin-x64-2.9.tar.lzma
+2022/02/20 | 20180 | systems/win32/miktex/tm/packages/next/miktex-popt-bin-2.9.tar.lzma
+2022/02/20 | 200088 | systems/win32/miktex/tm/packages/next/miktex-pixman-bin-2.9.tar.lzma
+2022/02/20 | 199760 | systems/win32/miktex/tm/packages/next/miktex-mpfr-bin-2.9.tar.lzma
+2022/02/20 | 1978889 | systems/win32/miktex/tm/packages/next/miktex-luatex-bin-x64-2.9.tar.lzma
+2022/02/20 | 197537 | systems/win32/miktex/tm/packages/next/miktex-metafont-bin-2.9.tar.lzma
+2022/02/20 | 197089 | graphics/mcf2graph/mcf_mplib_exa.pdf
+2022/02/20 | 196872 | systems/win32/miktex/tm/packages/next/miktex-omegaware-bin-2.9.tar.lzma
+2022/02/20 | 196148 | systems/win32/miktex/tm/packages/next/miktex-curl-bin-x64-2.9.tar.lzma
+2022/02/20 | 19457 | macros/latex/contrib/caption/caption-koma.dtx
+2022/02/20 | 19106 | macros/latex/contrib/crefthe/LICENSE
+2022/02/20 | 19105 | macros/unicodetex/latex/njuthesis/LICENSE
+2022/02/20 | 19008 | macros/latex/contrib/caption/fallback/v1/caption.dtx
+2022/02/20 | 190026 | macros/latex/contrib/caption/caption3.dtx
+2022/02/20 | 186929 | macros/unicodetex/latex/njuthesis/njuthesis.dtx
+2022/02/20 | 18483 | systems/win32/miktex/tm/packages/next/miktex-tex2xindy-bin-x64-2.9.tar.lzma
+2022/02/20 | 1847239 | fonts/erewhon-math/unimath-erewhon.pdf
+2022/02/20 | 18353 | systems/win32/miktex/tm/packages/next/miktex-kpathsea-bin-x64-2.9.tar.lzma
+2022/02/20 | 18304 | macros/xetex/latex/xepersian/img/ireland.jpg
+2022/02/20 | 182084 | macros/latex/contrib/caption/fallback/v3.0/caption.dtx
+2022/02/20 | 181444 | systems/win32/miktex/tm/packages/next/miktex-mpfr-bin-x64-2.9.tar.lzma
+2022/02/20 | 181048 | macros/latex/contrib/caption/fallback/v3.3/caption.dtx
+2022/02/20 | 179670 | systems/win32/miktex/tm/packages/next/miktex-curl-bin-2.9.tar.lzma
+2022/02/20 | 178837 | macros/latex/contrib/caption/fallback/v3.5/caption3.dtx
+2022/02/20 | 176487 | fonts/erewhon-math/Erewhon-Math.pdf
+2022/02/20 | 1751644 | systems/win32/miktex/tm/packages/next/miktex-luatex-bin-2.9.tar.lzma
+2022/02/20 | 17396 | macros/latex/contrib/memoir/doc-src/titlepages.sty
+2022/02/20 | 172500 | systems/win32/miktex/tm/packages/next/miktex-tex-bin-x64-2.9.tar.lzma
+2022/02/20 | 17130802 | systems/texlive/tlnet/tlpkg/texlive.tlpdb
+2022/02/20 | 1703 | macros/unicodetex/latex/tipauni/tipauni.ins
+2022/02/20 | 16947 | fonts/erewhon-math/unimath-erewhon.ltx
+2022/02/20 | 169192 | macros/latex/contrib/caption/fallback/v3.4/caption.dtx
+2022/02/20 | 168827 | systems/win32/miktex/tm/packages/next/miktex-hunspell-bin-x64-2.9.tar.lzma
+2022/02/20 | 1680829 | install/macros/latex/contrib/caption.tds.zip
+2022/02/20 | 16567 | systems/win32/miktex/tm/packages/next/miktex-tex2xindy-bin-2.9.tar.lzma
+2022/02/20 | 16500 | systems/win32/miktex/tm/packages/next/miktex-kpathsea-bin-2.9.tar.lzma
+2022/02/20 | 164933 | macros/latex/contrib/caption/fallback/v3.2/caption.dtx
+2022/02/20 | 161734 | macros/latex/contrib/caption/fallback/v3.5/caption.dtx
+2022/02/20 | 15976 | macros/xetex/latex/xepersian/dkun-0.3.py
+2022/02/20 | 1594 | macros/latex/contrib/preview/preview.ins
+2022/02/20 | 15867 | macros/xetex/latex/xepersian/dkun-0.4.py
+2022/02/20 | 15737 | macros/latex/contrib/caption/cat.eps
+2022/02/20 | 157253 | macros/latex/contrib/caption/fallback/v3.4/caption3.dtx
+2022/02/20 | 156732 | systems/win32/miktex/tm/packages/next/miktex-tex-bin-2.9.tar.lzma
+2022/02/20 | 155464 | systems/win32/miktex/tm/packages/next/miktex-fontconfig-bin-x64-2.9.tar.lzma
+2022/02/20 | 153 | systems/texlive/tlnet/install-tl-windows.exe.sha512
+2022/02/20 | 153316 | macros/latex/contrib/caption/fallback/v3.3/caption3.dtx
+2022/02/20 | 152 | systems/texlive/tlnet/install-tl-unx.tar.gz.sha512
+2022/02/20 | 152061 | systems/win32/miktex/tm/packages/next/miktex-hunspell-bin-2.9.tar.lzma
+2022/02/20 | 1518 | macros/latex/contrib/memoir/doc-src/anvil2.mps
+2022/02/20 | 1514107 | macros/latex/contrib/memoir/doc-src/memman.tex
+2022/02/20 | 14993 | macros/latex/contrib/caption/caption-beamer.dtx
+2022/02/20 | 1499130 | systems/win32/miktex/tm/packages/next/miktex-runtime-bin-x64-2.9.tar.lzma
+2022/02/20 | 149792 | macros/latex/contrib/caption/bicaption.pdf
+2022/02/20 | 1478106 | macros/latex/contrib/caption.zip
+2022/02/20 | 14616 | macros/xetex/latex/xepersian/img/weather/rain.jpg
+2022/02/20 | 145 | systems/texlive/tlnet/install-tl.zip.sha512
+2022/02/20 | 14597 | macros/latex/contrib/memoir/doc-src/memlays.sty
+2022/02/20 | 14549 | graphics/mcf2graph/mcf_mplib_exa.tex
+2022/02/20 | 1454773 | systems/win32/miktex/tm/packages/next/miktex-dvisvgm-bin-x64-2.9.tar.lzma
+2022/02/20 | 144 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512
+2022/02/20 | 14404 | systems/win32/miktex/tm/packages/next/miktex-zzip-bin-x64-2.9.tar.lzma
+2022/02/20 | 1423747 | systems/win32/miktex/tm/packages/next/miktex-zzdb2-2.9.tar.lzma
+2022/02/20 | 1422 | macros/xetex/latex/xepersian/README
+2022/02/20 | 1422762 | systems/win32/miktex/tm/packages/miktex-zzdb2-2.9.tar.lzma
+2022/02/20 | 139183 | systems/win32/miktex/tm/packages/next/miktex-mktex-bin-x64-2.9.tar.lzma
+2022/02/20 | 13804 | macros/xetex/latex/xepersian/undk-0.6.py
+2022/02/20 | 136384 | systems/texlive/tlnet/archive/tex4ht.doc.r62089.tar.xz
+2022/02/20 | 135964 | systems/win32/miktex/tm/packages/next/miktex-fontconfig-bin-2.9.tar.lzma
+2022/02/20 | 1355588 | systems/win32/miktex/tm/packages/next/miktex-runtime-bin-2.9.tar.lzma
+2022/02/20 | 135147 | systems/win32/miktex/tm/packages/next/miktex-dvips-bin-x64-2.9.tar.lzma
+2022/02/20 | 13513 | systems/win32/miktex/tm/packages/next/miktex-zzip-bin-2.9.tar.lzma
+2022/02/20 | 135023 | macros/latex/contrib/caption/fallback/v3.2/caption3.dtx
+2022/02/20 | 13417 | macros/latex/contrib/caption/caption-light.dtx
+2022/02/20 | 133708 | systems/texlive/tlnet/archive/luacensor.doc.r62086.tar.xz
+2022/02/20 | 1322241 | systems/win32/miktex/tm/packages/next/miktex-poppler-bin-x64-2.9.tar.lzma
+2022/02/20 | 1316232 | systems/win32/miktex/tm/packages/miktex-zzdb3-2.9.tar.lzma
+2022/02/20 | 1315399 | systems/win32/miktex/tm/packages/next/miktex-zzdb3-2.9.tar.lzma
+2022/02/20 | 13088 | macros/xetex/latex/xepersian/img/weather/clouds.jpg
+2022/02/20 | 1297210 | systems/win32/miktex/tm/packages/next/miktex-dvisvgm-bin-2.9.tar.lzma
+2022/02/20 | 1287056 | install/macros/xetex/latex/xepersian.tds.zip
+2022/02/20 | 126687 | systems/win32/miktex/tm/packages/next/miktex-mktex-bin-2.9.tar.lzma
+2022/02/20 | 1260289 | macros/latex/contrib/memoir/memoir.dtx
+2022/02/20 | 12559 | macros/latex/contrib/caption/caption-memoir.dtx
+2022/02/20 | 123879 | macros/latex/contrib/crefthe.zip
+2022/02/20 | 1235868 | systems/texlive/tlnet/archive/tex4ht.source.r62089.tar.xz
+2022/02/20 | 12348 | macros/xetex/latex/xepersian/unldk-0.2.py
+2022/02/20 | 1220 | macros/latex/contrib/flashcards/flashcards.ins
+2022/02/20 | 12167 | systems/texlive/tlnet/tlpkg/TeXLive/TLConfig.pm
+2022/02/20 | 120508 | systems/win32/miktex/tm/packages/next/miktex-dvips-bin-2.9.tar.lzma
+2022/02/20 | 1181453 | systems/win32/miktex/tm/packages/next/miktex-poppler-bin-2.9.tar.lzma
+2022/02/20 | 115700 | systems/win32/miktex/tm/packages/next/miktex-gregorio-bin-x64-2.9.tar.lzma
+2022/02/20 | 1156654 | systems/win32/miktex/tm/packages/next/miktex-asymptote-bin-x64-2.9.tar.lzma
+2022/02/20 | 1154081 | macros/unicodetex/latex/njuthesis.zip
+2022/02/20 | 1153 | systems/win32/miktex/tm/packages/next/pr.ini
+2022/02/20 | 112 | macros/latex/contrib/caption/SUMMARY
+2022/02/20 | 112967 | systems/win32/miktex/tm/packages/next/miktex-epstopdf-bin-x64-2.9.tar.lzma
+2022/02/20 | 112717 | systems/win32/miktex/tm/packages/next/miktex-gd-bin-x64-2.9.tar.lzma
+2022/02/20 | 1125058 | macros/xetex/latex/xepersian.zip
+2022/02/20 | 112174 | macros/latex/contrib/crefthe/crefthe-doc.pdf
+2022/02/20 | 1103774 | macros/unicodetex/latex/njuthesis/njuthesis.pdf
+2022/02/20 | 10980 | systems/texlive/tlnet/archive/graphics-def.r62085.tar.xz
+2022/02/20 | 109541 | systems/win32/miktex/tm/packages/next/miktex-jpeg-bin-x64-2.9.tar.lzma
+2022/02/20 | 109364 | macros/unicodetex/latex/tipauni/tipauni-example.pdf
+2022/02/20 | 10896 | macros/xetex/latex/xepersian/img/weather/sun.jpg
+2022/02/20 | 10884 | macros/unicodetex/latex/tipauni/tipauni-example.tex
+2022/02/20 | 108708 | systems/texlive/tlnet/archive/texlive-scripts.r62083.tar.xz
+2022/02/20 | 107403 | systems/win32/miktex/tm/packages/next/miktex-texware-bin-x64-2.9.tar.lzma
+2022/02/20 | 1052 | macros/unicodetex/latex/njuthesis/README.md
+2022/02/20 | 104690 | systems/win32/miktex/tm/packages/next/miktex-mfware-bin-x64-2.9.tar.lzma
+2022/02/20 | 10362 | macros/latex/contrib/crefthe/crefthe-doc.tex
+2022/02/20 | 103480 | systems/win32/miktex/tm/packages/next/miktex-lua53-bin-x64-2.9.tar.lzma
+2022/02/20 | 1021282 | systems/win32/miktex/tm/packages/next/miktex-asymptote-bin-2.9.tar.lzma
+2022/02/20 | 102120 | graphics/mcf2graph/mcf2graph.mp
+2022/02/20 | 1018056 | systems/texlive/tlnet/archive/xepersian.doc.r62087.tar.xz
+2022/02/20 | 100635 | graphics/mcf2graph/mcf_data_base.mcf
+2022/02/20 | 100436 | systems/win32/miktex/tm/packages/next/miktex-texware-bin-2.9.tar.lzma
2022/02/19 | 95544 | systems/texlive/tlnet/archive/tex4ebook.doc.r62076.tar.xz
-2022/02/19 | 95449 | systems/win32/miktex/tm/packages/next/miktex-jpeg-bin-2.9.tar.lzma
-2022/02/19 | 95301 | systems/win32/miktex/tm/packages/next/miktex-bibtex8bit-bin-x64-2.9.tar.lzma
-2022/02/19 | 947 | systems/win32/miktex/tm/packages/pr.ini
-2022/02/19 | 93940 | systems/win32/miktex/tm/packages/next/miktex-lua53-bin-2.9.tar.lzma
2022/02/19 | 9198 | macros/latex/contrib/graphics-def/dvisvgm.def
-2022/02/19 | 88122 | systems/win32/miktex/tm/packages/next/miktex-png-bin-x64-2.9.tar.lzma
-2022/02/19 | 8788 | systems/win32/miktex/tm/packages/next/miktex-md5-bin-x64-2.9.tar.lzma
-2022/02/19 | 86703 | systems/win32/miktex/tm/packages/next/miktex-bibtex8bit-bin-2.9.tar.lzma
2022/02/19 | 856 | systems/texlive/tlcontrib/packages.txt
-2022/02/19 | 825683 | systems/win32/miktex/tm/packages/next/miktex-pdftex-bin-x64-2.9.tar.lzma
2022/02/19 | 820 | systems/texlive/tlcontrib/archive/collection-contrib.r358.tar.xz
-2022/02/19 | 81613 | systems/win32/miktex/tm/packages/next/miktex-freeglut-bin-x64-2.9.tar.lzma
-2022/02/19 | 78991 | systems/win32/miktex/tm/packages/next/miktex-fonts-bin-x64-2.9.tar.lzma
-2022/02/19 | 78965 | systems/win32/miktex/tm/packages/next/miktex-png-bin-2.9.tar.lzma
-2022/02/19 | 782344 | macros/xetex/latex/xepersian/xepersian.pdf
-2022/02/19 | 7755 | systems/win32/miktex/tm/packages/next/miktex-md5-bin-2.9.tar.lzma
-2022/02/19 | 77116 | systems/win32/miktex/tm/packages/next/miktex-bibtex-bin-x64-2.9.tar.lzma
-2022/02/19 | 76219 | systems/win32/miktex/tm/packages/next/miktex-mpmcli-bin-x64-2.9.tar.lzma
-2022/02/19 | 755600 | systems/win32/miktex/tm/packages/next/miktex-ptex-bin-x64.tar.lzma
-2022/02/19 | 754966 | systems/win32/miktex/tm/packages/next/miktex-pdftex-bin-2.9.tar.lzma
-2022/02/19 | 74708 | systems/texlive/tlnet/archive/xepersian.source.r62074.tar.xz
-2022/02/19 | 74036 | systems/win32/miktex/tm/packages/next/miktex-lzma-bin-x64-2.9.tar.lzma
-2022/02/19 | 73587 | systems/win32/miktex/tm/packages/next/miktex-fonts-bin-2.9.tar.lzma
-2022/02/19 | 73131 | systems/win32/miktex/tm/packages/next/miktex-graphite2-bin-x64-2.9.tar.lzma
-2022/02/19 | 72990 | systems/win32/miktex/tm/packages/next/miktex-ps2pk-bin-x64-2.9.tar.lzma
-2022/02/19 | 72143 | systems/win32/miktex/tm/packages/next/miktex-freeglut-bin-2.9.tar.lzma
-2022/02/19 | 71868 | systems/win32/miktex/tm/packages/next/miktex-web-bin-x64-2.9.tar.lzma
-2022/02/19 | 71644 | macros/xetex/latex/xepersian/xepersian-doc-basics.ltx
-2022/02/19 | 71009 | systems/win32/miktex/tm/packages/next/miktex-tex4ht-bin-x64-2.9.tar.lzma
-2022/02/19 | 689311 | systems/win32/miktex/tm/packages/next/miktex-ptex-bin.tar.lzma
-2022/02/19 | 68809 | systems/win32/miktex/tm/packages/next/miktex-bibtex-bin-2.9.tar.lzma
+2022/02/19 | 7346 | systems/texlive/tlnet/tlpkg/installer/ctan-mirrors.pl
2022/02/19 | 6872 | systems/texlive/tlnet/archive/context-filter.r62070.tar.xz
-2022/02/19 | 68609 | systems/win32/miktex/tm/packages/next/miktex-mpmcli-bin-2.9.tar.lzma
-2022/02/19 | 681903 | systems/win32/miktex/tm/packages/next/miktex-lcdf-typetools-bin-x64-2.9.tar.lzma
-2022/02/19 | 6809440 | systems/texlive/tlnet/install-tl-unx.tar.gz
-2022/02/19 | 68017 | systems/win32/miktex/tm/packages/next/miktex-lzma-bin-2.9.tar.lzma
2022/02/19 | 67428 | systems/texlive/tlnet/archive/japanese-otf.source.r62078.tar.xz
-2022/02/19 | 67222 | systems/win32/miktex/tm/packages/next/miktex-texify-bin-x64-2.9.tar.lzma
-2022/02/19 | 65920 | systems/win32/miktex/tm/packages/next/miktex-web-bin-2.9.tar.lzma
-2022/02/19 | 64990 | systems/win32/miktex/tm/packages/next/miktex-bibarts-bin-x64-2.9.tar.lzma
-2022/02/19 | 64675 | systems/win32/miktex/tm/packages/next/miktex-ps2pk-bin-2.9.tar.lzma
-2022/02/19 | 64570 | systems/win32/miktex/tm/packages/next/miktex-graphite2-bin-2.9.tar.lzma
-2022/02/19 | 64442 | systems/win32/miktex/tm/packages/next/miktex-tex4ht-bin-2.9.tar.lzma
-2022/02/19 | 640306 | systems/win32/miktex/tm/packages/next/files.csv.lzma
-2022/02/19 | 640115 | systems/win32/miktex/tm/packages/files.csv.lzma
-2022/02/19 | 63701 | systems/win32/miktex/tm/packages/next/miktex-tdsutil-bin-x64.tar.lzma
-2022/02/19 | 63336 | systems/win32/miktex/tm/packages/next/miktex-fmt-bin-x64-2.9.tar.lzma
2022/02/19 | 6312 | systems/texlive/tlnet/archive/proflycee.r62072.tar.xz
-2022/02/19 | 630670 | systems/win32/miktex/tm/packages/next/miktex-lcdf-typetools-bin-2.9.tar.lzma
-2022/02/19 | 629310 | systems/win32/miktex/tm/packages/next/miktex-yap-bin-x64-2.9.tar.lzma
2022/02/19 | 628 | systems/texlive/tlnet/archive/collection-langjapanese.r62077.tar.xz
-2022/02/19 | 62424 | systems/win32/miktex/tm/packages/next/miktex-cweb-bin-x64-2.9.tar.lzma
-2022/02/19 | 62367 | systems/win32/miktex/tm/packages/next/miktex-ttf2pk2-bin-x64-2.9.tar.lzma
-2022/02/19 | 598224 | systems/win32/miktex/tm/packages/next/miktex-libressl-bin-x64-2.9.tar.lzma
-2022/02/19 | 59436 | systems/texlive/tlnet/archive/xepersian.r62074.tar.xz
-2022/02/19 | 591310 | systems/win32/miktex/tm/packages/next/miktex-yap-bin-2.9.tar.lzma
2022/02/19 | 5895 | macros/latex/contrib/graphics-def/dvips.def
-2022/02/19 | 58692 | systems/win32/miktex/tm/packages/next/miktex-texify-bin-2.9.tar.lzma
-2022/02/19 | 58663 | systems/win32/miktex/tm/packages/next/miktex-psutils-bin-x64-2.9.tar.lzma
2022/02/19 | 58548 | macros/luatex/latex/linebreaker.zip
2022/02/19 | 5822 | macros/luatex/latex/linebreaker/linebreaker-doc.tex
-2022/02/19 | 57595 | systems/win32/miktex/tm/packages/next/miktex-tdsutil-bin.tar.lzma
-2022/02/19 | 57417 | systems/win32/miktex/tm/packages/next/miktex-xml2pmx-bin-x64.tar.lzma
-2022/02/19 | 57416 | systems/win32/miktex/tm/packages/next/miktex-arctrl-bin-x64-2.9.tar.lzma
-2022/02/19 | 57341 | systems/win32/miktex/tm/packages/next/miktex-cjkutils-bin-x64-2.9.tar.lzma
-2022/02/19 | 56996 | systems/win32/miktex/tm/packages/next/miktex-fmt-bin-2.9.tar.lzma
-2022/02/19 | 56691 | systems/win32/miktex/tm/packages/next/miktex-bibarts-bin-2.9.tar.lzma
2022/02/19 | 565 | macros/luatex/latex/linebreaker/README.md
-2022/02/19 | 565303 | systems/win32/miktex/tm/packages/next/miktex-harfbuzz-bin-x64-2.9.tar.lzma
2022/02/19 | 559 | graphics/pgf/contrib/hexboard/README.md
-2022/02/19 | 55747 | systems/win32/miktex/tm/packages/next/miktex-xml2pmx-bin.tar.lzma
2022/02/19 | 55232 | systems/texlive/tlnet/archive/japanese-otf.doc.r62078.tar.xz
-2022/02/19 | 55221 | systems/win32/miktex/tm/packages/next/miktex-ttf2pk2-bin-2.9.tar.lzma
-2022/02/19 | 54960 | systems/win32/miktex/tm/packages/next/miktex-cweb-bin-2.9.tar.lzma
-2022/02/19 | 5447 | macros/xetex/latex/xepersian/xepersian-doc-envcs.ltx
-2022/02/19 | 532420 | systems/win32/miktex/tm/packages/next/miktex-libressl-bin-2.9.tar.lzma
-2022/02/19 | 528149 | systems/win32/miktex/tm/packages/next/miktex-log4cxx-bin-x64-2.9.tar.lzma
-2022/02/19 | 52487 | systems/win32/miktex/tm/packages/next/miktex-synctex-bin-x64-2.9.tar.lzma
-2022/02/19 | 52273 | systems/win32/miktex/tm/packages/next/miktex-m-tx-bin-x64-2.9.tar.lzma
-2022/02/19 | 52045 | systems/win32/miktex/tm/packages/next/miktex-dvicopy-bin-x64-2.9.tar.lzma
2022/02/19 | 51724 | systems/texlive/tlnet/archive/make4ht.r62075.tar.xz
-2022/02/19 | 51573 | systems/win32/miktex/tm/packages/next/miktex-arctrl-bin-2.9.tar.lzma
-2022/02/19 | 51553 | systems/win32/miktex/tm/packages/next/miktex-cjkutils-bin-2.9.tar.lzma
2022/02/19 | 51388 | macros/luatex/latex/linebreaker/linebreaker-doc.pdf
-2022/02/19 | 50839 | systems/win32/miktex/tm/packages/next/miktex-psutils-bin-2.9.tar.lzma
-2022/02/19 | 48 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.md5
2022/02/19 | 48 | systems/texlive/tlcontrib/tlpkg/texlive.tlpdb.md5
2022/02/19 | 489 | macros/latex/contrib/graphics-def/README.md
2022/02/19 | 488 | systems/texlive/tlcontrib/tlpkg/texlive.tlpdb.sha512.asc
-2022/02/19 | 48850 | systems/win32/miktex/tm/packages/next/miktex-expat-bin-x64-2.9.tar.lzma
-2022/02/19 | 484362 | systems/win32/miktex/tm/packages/next/miktex-harfbuzz-bin-2.9.tar.lzma
2022/02/19 | 48411 | graphics/pgf/contrib/hexboard/hexboard.dtx
-2022/02/19 | 47922 | systems/win32/miktex/tm/packages/next/miktex-mtprint-bin-x64-2.9.tar.lzma
-2022/02/19 | 478973 | systems/win32/miktex/tm/packages/next/miktex-doc.tar.lzma
-2022/02/19 | 477780 | systems/win32/miktex/tm/packages/next/miktex-log4cxx-bin-2.9.tar.lzma
2022/02/19 | 474276 | systems/texlive/tlnet/archive/andika.doc.r62069.tar.xz
-2022/02/19 | 46085 | systems/win32/miktex/tm/packages/next/miktex-dvicopy-bin-2.9.tar.lzma
-2022/02/19 | 45872 | systems/win32/miktex/tm/packages/next/miktex-m-tx-bin-2.9.tar.lzma
-2022/02/19 | 45799 | systems/win32/miktex/tm/packages/next/miktex-dvipng-bin-x64-2.9.tar.lzma
-2022/02/19 | 455 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512.asc
-2022/02/19 | 455 | systems/texlive/tlnet/install-tl.zip.sha512.asc
-2022/02/19 | 455 | systems/texlive/tlnet/install-tl-windows.exe.sha512.asc
-2022/02/19 | 455 | systems/texlive/tlnet/install-tl-unx.tar.gz.sha512.asc
-2022/02/19 | 454 | macros/xetex/latex/xepersian/xepersian-doc.ltx
-2022/02/19 | 43915 | systems/win32/miktex/tm/packages/next/miktex-mthelp-bin-x64-2.9.tar.lzma
-2022/02/19 | 43840 | systems/win32/miktex/tm/packages/next/miktex-gsf2pk-bin-x64-2.9.tar.lzma
-2022/02/19 | 43681 | systems/win32/miktex/tm/packages/next/miktex-expat-bin-2.9.tar.lzma
-2022/02/19 | 43646 | systems/win32/miktex/tm/packages/next/miktex-zlib-bin-x64-2.9.tar.lzma
-2022/02/19 | 43369 | systems/win32/miktex/tm/packages/next/miktex-mtprint-bin-2.9.tar.lzma
2022/02/19 | 427 | graphics/pgf/contrib/hexboard/hexboard.ins
-2022/02/19 | 42774 | systems/win32/miktex/tm/packages/next/miktex-synctex-bin-2.9.tar.lzma
-2022/02/19 | 4149 | macros/xetex/latex/xepersian/xepersian-doc-preamble.ltx
-2022/02/19 | 41463 | systems/win32/miktex/tm/packages/next/miktex-dvipng-bin-2.9.tar.lzma
-2022/02/19 | 41217 | systems/win32/miktex/tm/packages/next/miktex-patgen-bin-x64.tar.lzma
-2022/02/19 | 41214 | systems/win32/miktex/tm/packages/next/miktex-upmendex-bin-x64.tar.lzma
2022/02/19 | 411928 | systems/texlive/tlnet/archive/proflycee.doc.r62072.tar.xz
-2022/02/19 | 410 | macros/xetex/latex/xepersian/xepersian-doc-boolean.ltx
-2022/02/19 | 403484 | systems/texlive/tlnet/archive/texlive-scripts.doc.r62065.tar.xz
-2022/02/19 | 39732 | systems/win32/miktex/tm/packages/next/miktex-zlib-bin-2.9.tar.lzma
-2022/02/19 | 394420 | systems/win32/miktex/tm/packages/next/miktex-cairo-bin-x64-2.9.tar.lzma
-2022/02/19 | 38725 | macros/xetex/latex/xepersian/ftxe-0.12.py
-2022/02/19 | 38561 | systems/win32/miktex/tm/packages/next/miktex-mthelp-bin-2.9.tar.lzma
-2022/02/19 | 38433 | systems/win32/miktex/tm/packages/next/miktex-gsf2pk-bin-2.9.tar.lzma
2022/02/19 | 3756132 | systems/texlive/tlnet/archive/bidi.doc.r62073.tar.xz
-2022/02/19 | 37378 | systems/win32/miktex/tm/packages/next/miktex-posix-bin-x64-2.9.tar.lzma
-2022/02/19 | 37114 | systems/win32/miktex/tm/packages/next/miktex-upmendex-bin.tar.lzma
-2022/02/19 | 37082 | systems/win32/miktex/tm/packages/next/miktex-chktex-bin-x64-2.9.tar.lzma
2022/02/19 | 36744 | systems/texlive/tlcontrib/archive/japanese-otf-nonfree.r357.tar.xz
-2022/02/19 | 36053 | systems/win32/miktex/tm/packages/next/miktex-patgen-bin.tar.lzma
-2022/02/19 | 35200 | systems/win32/miktex/tm/packages/next/miktex-axohelp-bin-x64-2.9.tar.lzma
-2022/02/19 | 351700 | systems/win32/miktex/tm/packages/next/miktex-xetex-bin-x64-2.9.tar.lzma
-2022/02/19 | 35166 | systems/win32/miktex/tm/packages/next/miktex-mspack-bin-x64-2.9.tar.lzma
-2022/02/19 | 344380 | macros/xetex/latex/xepersian/xepersian.dtx
-2022/02/19 | 34034 | systems/win32/miktex/tm/packages/next/miktex-uriparser-bin-x64-2.9.tar.lzma
-2022/02/19 | 332473 | systems/win32/miktex/tm/packages/next/miktex-cairo-bin-2.9.tar.lzma
-2022/02/19 | 32948 | systems/win32/miktex/tm/packages/next/miktex-chktex-bin-2.9.tar.lzma
-2022/02/19 | 326537 | systems/win32/miktex/tm/packages/next/miktex-dvipdfmx-bin-x64-2.9.tar.lzma
-2022/02/19 | 32118 | systems/win32/miktex/tm/packages/next/miktex-makeindex-bin-x64-2.9.tar.lzma
-2022/02/19 | 316235 | systems/win32/miktex/tm/packages/next/miktex-xetex-bin-2.9.tar.lzma
-2022/02/19 | 31579 | systems/win32/miktex/tm/packages/next/miktex-posix-bin-2.9.tar.lzma
-2022/02/19 | 31529 | systems/win32/miktex/tm/packages/next/miktex-autosp-bin-x64-2.9.tar.lzma
-2022/02/19 | 31409 | systems/win32/miktex/tm/packages/next/miktex-mspack-bin-2.9.tar.lzma
-2022/02/19 | 31328 | systems/win32/miktex/tm/packages/next/miktex-bzip2-bin-x64-2.9.tar.lzma
-2022/02/19 | 3099 | macros/xetex/latex/xepersian/xepersian-doc-captions.ltx
-2022/02/19 | 30567 | systems/win32/miktex/tm/packages/next/miktex-lacheck-bin-x64-2.9.tar.lzma
-2022/02/19 | 30152 | systems/win32/miktex/tm/packages/next/miktex-axohelp-bin-2.9.tar.lzma
-2022/02/19 | 296024 | systems/win32/miktex/tm/packages/next/miktex-freetype2-bin-x64-2.9.tar.lzma
-2022/02/19 | 28749 | systems/win32/miktex/tm/packages/next/miktex-autosp-bin-2.9.tar.lzma
-2022/02/19 | 28677 | systems/win32/miktex/tm/packages/next/miktex-uriparser-bin-2.9.tar.lzma
-2022/02/19 | 286533 | systems/win32/miktex/tm/packages/next/miktex-metapost-bin-x64-2.9.tar.lzma
-2022/02/19 | 286268 | systems/win32/miktex/tm/packages/next/miktex-mo-bin-x64-2.9.tar.lzma
-2022/02/19 | 285794 | systems/win32/miktex/tm/packages/next/miktex-dvipdfmx-bin-2.9.tar.lzma
-2022/02/19 | 28555 | systems/win32/miktex/tm/packages/next/miktex-findtexmf-bin-x64-2.9.tar.lzma
2022/02/19 | 2853940 | systems/texlive/tlnet/archive/andika.r62069.tar.xz
2022/02/19 | 284423 | graphics/pgf/contrib/hexboard.zip
-2022/02/19 | 28423 | systems/win32/miktex/tm/packages/next/miktex-lacheck-bin-2.9.tar.lzma
2022/02/19 | 281927 | graphics/pgf/contrib/hexboard/hexboard.pdf
-2022/02/19 | 281599 | systems/win32/miktex/tm/packages/next/miktex-console-bin-x64-2.9.tar.lzma
-2022/02/19 | 2799652 | systems/win32/miktex/tm/packages/next/miktex-texworks-bin-x64-2.9.tar.lzma
-2022/02/19 | 27672 | systems/win32/miktex/tm/packages/next/miktex-makeindex-bin-2.9.tar.lzma
-2022/02/19 | 27507 | systems/win32/miktex/tm/packages/next/miktex-teckit-bin-x64-2.9.tar.lzma
-2022/02/19 | 27251 | systems/win32/miktex/tm/packages/next/miktex-bzip2-bin-2.9.tar.lzma
-2022/02/19 | 2671685 | systems/win32/miktex/tm/packages/next/miktex-texworks-bin-2.9.tar.lzma
-2022/02/19 | 266737 | systems/win32/miktex/tm/packages/miktex-zzdb1-2.9.tar.lzma
-2022/02/19 | 266702 | systems/win32/miktex/tm/packages/next/miktex-zzdb1-2.9.tar.lzma
-2022/02/19 | 2622 | macros/xetex/latex/xepersian/xepersian-doc-intro.ltx
-2022/02/19 | 25946 | macros/xetex/latex/xepersian/xepersian-doc-pkgs.ltx
-2022/02/19 | 259115 | systems/win32/miktex/tm/packages/next/miktex-freetype2-bin-2.9.tar.lzma
-2022/02/19 | 25628347 | systems/texlive/tlnet/install-tl.zip
-2022/02/19 | 256248 | systems/win32/miktex/tm/packages/next/miktex-console-bin-2.9.tar.lzma
-2022/02/19 | 254965 | systems/win32/miktex/tm/packages/next/miktex-mo-bin-2.9.tar.lzma
-2022/02/19 | 25493 | systems/win32/miktex/tm/packages/next/miktex-teckit-bin-2.9.tar.lzma
2022/02/19 | 25167 | macros/latex/contrib/graphics-def.zip
-2022/02/19 | 251142 | systems/win32/miktex/tm/packages/next/miktex-metapost-bin-2.9.tar.lzma
-2022/02/19 | 25110 | systems/win32/miktex/tm/packages/next/miktex-findtexmf-bin-2.9.tar.lzma
-2022/02/19 | 25063 | systems/win32/miktex/tm/packages/next/miktex-fribidixetex-bin-x64-2.9.tar.lzma
-2022/02/19 | 246573 | macros/xetex/latex/xepersian/xepersian-doc.pdf
-2022/02/19 | 244935 | systems/win32/miktex/tm/packages/next/miktex-pmx-bin-x64-2.9.tar.lzma
-2022/02/19 | 24130 | systems/win32/miktex/tm/packages/next/miktex-devnag-bin-x64-2.9.tar.lzma
-2022/02/19 | 23944 | systems/win32/miktex/tm/packages/next/miktex-popt-bin-x64-2.9.tar.lzma
-2022/02/19 | 2351380 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.xz
2022/02/19 | 229508 | systems/texlive/tlnet/archive/japanese-otf.r62078.tar.xz
-2022/02/19 | 22181 | systems/win32/miktex/tm/packages/next/miktex-fribidixetex-bin-2.9.tar.lzma
-2022/02/19 | 216395 | systems/win32/miktex/tm/packages/next/miktex-metafont-bin-x64-2.9.tar.lzma
-2022/02/19 | 2150 | macros/xetex/latex/xepersian/xepersian-doc-title.ltx
-2022/02/19 | 213246 | systems/win32/miktex/tm/packages/next/miktex-omegaware-bin-x64-2.9.tar.lzma
-2022/02/19 | 21315 | systems/win32/miktex/tm/packages/next/miktex-devnag-bin-2.9.tar.lzma
-2022/02/19 | 210058 | systems/win32/miktex/tm/packages/next/miktex-pmx-bin-2.9.tar.lzma
-2022/02/19 | 20872340 | systems/texlive/tlnet/install-tl-windows.exe
-2022/02/19 | 202831 | systems/win32/miktex/tm/packages/next/miktex-pixman-bin-x64-2.9.tar.lzma
-2022/02/19 | 20180 | systems/win32/miktex/tm/packages/next/miktex-popt-bin-2.9.tar.lzma
-2022/02/19 | 200090 | systems/win32/miktex/tm/packages/next/miktex-pixman-bin-2.9.tar.lzma
-2022/02/19 | 199759 | systems/win32/miktex/tm/packages/next/miktex-mpfr-bin-2.9.tar.lzma
-2022/02/19 | 1978889 | systems/win32/miktex/tm/packages/next/miktex-luatex-bin-x64-2.9.tar.lzma
-2022/02/19 | 197536 | systems/win32/miktex/tm/packages/next/miktex-metafont-bin-2.9.tar.lzma
-2022/02/19 | 196871 | systems/win32/miktex/tm/packages/next/miktex-omegaware-bin-2.9.tar.lzma
-2022/02/19 | 196148 | systems/win32/miktex/tm/packages/next/miktex-curl-bin-x64-2.9.tar.lzma
2022/02/19 | 1944 | systems/texlive/tlnet/archive/collection-fontsextra.r62069.tar.xz
2022/02/19 | 19103 | macros/latex/contrib/graphics-def/pdftex.def
2022/02/19 | 19010 | macros/latex/contrib/graphics-def/luatex.def
-2022/02/19 | 18483 | systems/win32/miktex/tm/packages/next/miktex-tex2xindy-bin-x64-2.9.tar.lzma
-2022/02/19 | 18354 | systems/win32/miktex/tm/packages/next/miktex-kpathsea-bin-x64-2.9.tar.lzma
-2022/02/19 | 18304 | macros/xetex/latex/xepersian/img/ireland.jpg
-2022/02/19 | 181444 | systems/win32/miktex/tm/packages/next/miktex-mpfr-bin-x64-2.9.tar.lzma
-2022/02/19 | 179671 | systems/win32/miktex/tm/packages/next/miktex-curl-bin-2.9.tar.lzma
+2022/02/19 | 183850 | support/TeX4ht/source/ChangeLog
2022/02/19 | 17748 | systems/texlive/tlnet/archive/tex4ebook.r62076.tar.xz
2022/02/19 | 176540 | systems/texlive/tlnet/archive/make4ht.doc.r62075.tar.xz
-2022/02/19 | 1751643 | systems/win32/miktex/tm/packages/next/miktex-luatex-bin-2.9.tar.lzma
+2022/02/19 | 17425 | graphics/mcf2graph/CHANGELOG
2022/02/19 | 1731144 | systems/texlive/tlcontrib/tlpkg/texlive.tlpdb
-2022/02/19 | 172500 | systems/win32/miktex/tm/packages/next/miktex-tex-bin-x64-2.9.tar.lzma
-2022/02/19 | 17129078 | systems/texlive/tlnet/tlpkg/texlive.tlpdb
-2022/02/19 | 168827 | systems/win32/miktex/tm/packages/next/miktex-hunspell-bin-x64-2.9.tar.lzma
-2022/02/19 | 16566 | systems/win32/miktex/tm/packages/next/miktex-tex2xindy-bin-2.9.tar.lzma
-2022/02/19 | 16499 | systems/win32/miktex/tm/packages/next/miktex-kpathsea-bin-2.9.tar.lzma
-2022/02/19 | 15976 | macros/xetex/latex/xepersian/dkun-0.3.py
-2022/02/19 | 15867 | macros/xetex/latex/xepersian/dkun-0.4.py
-2022/02/19 | 156732 | systems/win32/miktex/tm/packages/next/miktex-tex-bin-2.9.tar.lzma
-2022/02/19 | 155464 | systems/win32/miktex/tm/packages/next/miktex-fontconfig-bin-x64-2.9.tar.lzma
2022/02/19 | 15402 | macros/luatex/latex/linebreaker/linebreaker.lua
-2022/02/19 | 153 | systems/texlive/tlnet/install-tl-windows.exe.sha512
-2022/02/19 | 152 | systems/texlive/tlnet/install-tl-unx.tar.gz.sha512
2022/02/19 | 15263 | macros/latex/contrib/graphics-def/xetex.def
-2022/02/19 | 152062 | systems/win32/miktex/tm/packages/next/miktex-hunspell-bin-2.9.tar.lzma
2022/02/19 | 1516 | systems/texlive/tlcontrib/archive/japanese-otf-nonfree.doc.r357.tar.xz
-2022/02/19 | 1499128 | systems/win32/miktex/tm/packages/next/miktex-runtime-bin-x64-2.9.tar.lzma
-2022/02/19 | 14616 | macros/xetex/latex/xepersian/img/weather/rain.jpg
-2022/02/19 | 145 | systems/texlive/tlnet/install-tl.zip.sha512
-2022/02/19 | 1454773 | systems/win32/miktex/tm/packages/next/miktex-dvisvgm-bin-x64-2.9.tar.lzma
-2022/02/19 | 144 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512
2022/02/19 | 144 | systems/texlive/tlcontrib/tlpkg/texlive.tlpdb.sha512
-2022/02/19 | 14404 | systems/win32/miktex/tm/packages/next/miktex-zzip-bin-x64-2.9.tar.lzma
-2022/02/19 | 1423614 | systems/win32/miktex/tm/packages/next/miktex-zzdb2-2.9.tar.lzma
-2022/02/19 | 1423134 | systems/win32/miktex/tm/packages/miktex-zzdb2-2.9.tar.lzma
-2022/02/19 | 1422 | macros/xetex/latex/xepersian/README
-2022/02/19 | 139182 | systems/win32/miktex/tm/packages/next/miktex-mktex-bin-x64-2.9.tar.lzma
-2022/02/19 | 13804 | macros/xetex/latex/xepersian/undk-0.6.py
2022/02/19 | 136262 | macros/luatex/latex/luacensor.zip
-2022/02/19 | 135966 | systems/win32/miktex/tm/packages/next/miktex-fontconfig-bin-2.9.tar.lzma
-2022/02/19 | 1355586 | systems/win32/miktex/tm/packages/next/miktex-runtime-bin-2.9.tar.lzma
-2022/02/19 | 135146 | systems/win32/miktex/tm/packages/next/miktex-dvips-bin-x64-2.9.tar.lzma
-2022/02/19 | 13512 | systems/win32/miktex/tm/packages/next/miktex-zzip-bin-2.9.tar.lzma
2022/02/19 | 135040 | systems/texlive/tlnet/archive/bidi.source.r62073.tar.xz
-2022/02/19 | 1322239 | systems/win32/miktex/tm/packages/next/miktex-poppler-bin-x64-2.9.tar.lzma
-2022/02/19 | 1316137 | systems/win32/miktex/tm/packages/miktex-zzdb3-2.9.tar.lzma
-2022/02/19 | 1315593 | systems/win32/miktex/tm/packages/next/miktex-zzdb3-2.9.tar.lzma
-2022/02/19 | 13088 | macros/xetex/latex/xepersian/img/weather/clouds.jpg
-2022/02/19 | 1302690 | install/macros/xetex/latex/xepersian.tds.zip
-2022/02/19 | 1297209 | systems/win32/miktex/tm/packages/next/miktex-dvisvgm-bin-2.9.tar.lzma
2022/02/19 | 12854 | macros/latex/contrib/graphics-def/dvipdfmx.def
-2022/02/19 | 126686 | systems/win32/miktex/tm/packages/next/miktex-mktex-bin-2.9.tar.lzma
-2022/02/19 | 12348 | macros/xetex/latex/xepersian/unldk-0.2.py
-2022/02/19 | 120507 | systems/win32/miktex/tm/packages/next/miktex-dvips-bin-2.9.tar.lzma
-2022/02/19 | 1181452 | systems/win32/miktex/tm/packages/next/miktex-poppler-bin-2.9.tar.lzma
2022/02/19 | 117328 | systems/texlive/tlnet/archive/bidi.r62073.tar.xz
-2022/02/19 | 115700 | systems/win32/miktex/tm/packages/next/miktex-gregorio-bin-x64-2.9.tar.lzma
-2022/02/19 | 1156653 | systems/win32/miktex/tm/packages/next/miktex-asymptote-bin-x64-2.9.tar.lzma
-2022/02/19 | 1153 | systems/win32/miktex/tm/packages/next/pr.ini
-2022/02/19 | 1139258 | macros/xetex/latex/xepersian.zip
2022/02/19 | 112984 | systems/texlive/tlcontrib/tlpkg/texlive.tlpdb.xz
-2022/02/19 | 112966 | systems/win32/miktex/tm/packages/next/miktex-epstopdf-bin-x64-2.9.tar.lzma
-2022/02/19 | 112716 | systems/win32/miktex/tm/packages/next/miktex-gd-bin-x64-2.9.tar.lzma
+2022/02/19 | 1108685 | support/TeX4ht/source/tex4ht-4ht.tex
2022/02/19 | 11080 | systems/texlive/tlnet/archive/context-filter.doc.r62070.tar.xz
-2022/02/19 | 109540 | systems/win32/miktex/tm/packages/next/miktex-jpeg-bin-x64-2.9.tar.lzma
2022/02/19 | 10908 | systems/texlive/tlnet/archive/context-vim.doc.r62071.tar.xz
-2022/02/19 | 10896 | macros/xetex/latex/xepersian/img/weather/sun.jpg
2022/02/19 | 1088 | macros/luatex/latex/linebreaker/linebreaker.sty
-2022/02/19 | 108700 | systems/texlive/tlnet/archive/texlive-scripts.r62065.tar.xz
-2022/02/19 | 107403 | systems/win32/miktex/tm/packages/next/miktex-texware-bin-x64-2.9.tar.lzma
-2022/02/19 | 104690 | systems/win32/miktex/tm/packages/next/miktex-mfware-bin-x64-2.9.tar.lzma
-2022/02/19 | 103480 | systems/win32/miktex/tm/packages/next/miktex-lua53-bin-x64-2.9.tar.lzma
2022/02/19 | 10232 | systems/texlive/tlnet/archive/context-vim.r62071.tar.xz
-2022/02/19 | 1021285 | systems/win32/miktex/tm/packages/next/miktex-asymptote-bin-2.9.tar.lzma
-2022/02/19 | 1005544 | systems/texlive/tlnet/archive/xepersian.doc.r62074.tar.xz
-2022/02/19 | 100436 | systems/win32/miktex/tm/packages/next/miktex-texware-bin-2.9.tar.lzma
2022/02/18 | 991 | support/tex4ebook/tex4ebook-exec_azw.lua
2022/02/18 | 9869 | systems/win32/miktex/tm/packages/proflycee__source.tar.lzma
2022/02/18 | 98257 | systems/win32/miktex/tm/packages/upmethodology.tar.lzma
@@ -309,7 +457,6 @@
2022/02/18 | 752 | support/tex4ebook/tex4ebook-doc.tex
2022/02/18 | 7455 | systems/win32/miktex/tm/packages/texlogsieve__source.tar.lzma
2022/02/18 | 733 | support/make4ht/formats/make4ht-tei.lua
-2022/02/18 | 7236 | systems/texlive/tlnet/tlpkg/installer/ctan-mirrors.pl
2022/02/18 | 7189 | systems/win32/miktex/tm/packages/wrapfig2.tar.lzma
2022/02/18 | 7145 | systems/win32/miktex/tm/packages/pyluatex.tar.lzma
2022/02/18 | 713 | support/make4ht/filters/make4ht-entities-to-unicode.lua
@@ -577,7 +724,6 @@
2022/02/17 | 9501 | language/japanese/japanese-otf/src/script/mkjp04tfmvf.pl
2022/02/17 | 93591 | systems/texlive/tlnet/tlpkg/translations/fr.po
2022/02/17 | 9299 | macros/context/contrib/context-vim/tex/context/third/vim/t-vim.tex
-2022/02/17 | 927344 | systems/texlive/tlnet/archive/tex4ht.r62051.tar.xz
2022/02/17 | 9268 | language/japanese/japanese-otf/doc/test/uplatex/Makefile
2022/02/17 | 921 | language/japanese/japanese-otf/doc/test/uplatex/punct0.tex
2022/02/17 | 9194 | language/japanese/japanese-otf/doc/test/uplatex/cjk-mltwght-v.tex
@@ -2660,7 +2806,6 @@
2022/02/17 | 1845506 | fonts/xcharter-math/unimath-xcharter.pdf
2022/02/17 | 1844 | fonts/andika/tfm/andk-tlf-sc-t2b--base.tfm
2022/02/17 | 1840 | fonts/andika/tfm/andk-tlf-sc-t2c--base.tfm
-2022/02/17 | 183511 | support/TeX4ht/source/ChangeLog
2022/02/17 | 1832 | fonts/charissil/tfm/charssil-Bold-tlf-sc-t2a--base.tfm
2022/02/17 | 18283 | language/japanese/japanese-otf/doc/00otf-uptex.txt
2022/02/17 | 1816 | fonts/andika/tfm/andk-tlf-sc-ly1.tfm
@@ -4058,7 +4203,6 @@
2022/02/17 | 1364 | fonts/charissil/tfm/charssil-tlf-ts1.tfm
2022/02/17 | 1364 | fonts/charissil/tfm/charssil-Bold-tlf-ts1--base.tfm
2022/02/17 | 1364 | fonts/charissil/tfm/charssil-Bold-tlf-ot1.tfm
-2022/02/17 | 136384 | systems/texlive/tlnet/archive/tex4ht.doc.r62051.tar.xz
2022/02/17 | 1360 | fonts/andika/tfm/andk-tlf-ts1.tfm
2022/02/17 | 1356 | fonts/charissil/tfm/charssil-tlf-ts1--base.tfm
2022/02/17 | 1356 | fonts/andika/tfm/andk-tlf-ts1--base.tfm
@@ -4121,10 +4265,8 @@
2022/02/17 | 12613 | macros/xetex/latex/langsci/documentation/langsci-doc.tex
2022/02/17 | 12464 | macros/xetex/latex/langsci/langsci-affiliations.sty
2022/02/17 | 1238 | language/japanese/japanese-otf/doc/TeXLive-maps/otf-cktx.map
-2022/02/17 | 1235528 | systems/texlive/tlnet/archive/tex4ht.source.r62051.tar.xz
2022/02/17 | 12272 | language/japanese/japanese-otf/src/script/mktfm.pl
2022/02/17 | 1216 | fonts/charissil/doc/support.md
-2022/02/17 | 12146 | systems/texlive/tlnet/tlpkg/TeXLive/TLConfig.pm
2022/02/17 | 1209 | language/japanese/japanese-otf/sty/mlcid.sty
2022/02/17 | 1208812 | systems/texlive/tlnet/archive/siunitx.doc.r62048.tar.xz
2022/02/17 | 1204 | fonts/andika/doc/support.md
@@ -4273,7 +4415,6 @@
2022/02/17 | 112964 | systems/texlive/tlnet/archive/nicematrix.source.r62043.tar.xz
2022/02/17 | 11148 | language/japanese/japanese-otf/doc/test/uplatex/uotftest-utf8.tex
2022/02/17 | 11136675 | macros/latex/contrib/pdfmanagement-testphase.zip
-2022/02/17 | 1106887 | support/TeX4ht/source/tex4ht-4ht.tex
2022/02/17 | 1092 | language/japanese/japanese-otf/vf/utfmru-v.vf
2022/02/17 | 1092 | language/japanese/japanese-otf/vf/utfmru-h.vf
2022/02/17 | 1092 | language/japanese/japanese-otf/vf/utfgru-v.vf
@@ -4857,94 +4998,3 @@
2022/02/14 | 1050568 | systems/texlive/tlnet/archive/zref-check.doc.r62011.tar.xz
2022/02/14 | 1045120 | systems/texlive/tlnet/archive/chemmacros.doc.r62004.tar.xz
2022/02/14 | 101 | macros/latex/contrib/footmisc/footmisc-code.tex
-2022/02/13 | 998 | macros/latex/contrib/kanbun/README.md
-2022/02/13 | 996 | indexing/xindex/doc/tests/demo2.ind
-2022/02/13 | 96780 | macros/luatex/latex/pyluatex.zip
-2022/02/13 | 9638 | macros/luatex/latex/pyluatex/pyluatex-json.lua
-2022/02/13 | 9375 | macros/latex/contrib/kanbun/kanbun.lua
-2022/02/13 | 9216 | indexing/xindex/doc/tests/demo3.pdf
-2022/02/13 | 853443 | macros/latex/required/babel/base/babel.pdf
-2022/02/13 | 84169 | macros/luatex/latex/pyluatex/pyluatex.pdf
-2022/02/13 | 812816 | systems/texlive/tlnet/archive/knowledge.doc.r61991.tar.xz
-2022/02/13 | 796174 | macros/latex/required/babel/base/locale.zip
-2022/02/13 | 7461 | macros/latex/required/babel/base/babel.ins
-2022/02/13 | 722 | macros/xetex/latex/bidi-atbegshi/README
-2022/02/13 | 721997 | macros/latex/required/babel/base/babel.dtx
-2022/02/13 | 700632 | systems/texlive/tlnet/archive/zref-vario.doc.r61995.tar.xz
-2022/02/13 | 6777 | macros/luatex/latex/pyluatex/pyluatex.lua
-2022/02/13 | 6424 | systems/texlive/tlnet/archive/zref-vario.source.r61995.tar.xz
-2022/02/13 | 6404 | indexing/xindex/doc/tests/demo-hyperref.ind
-2022/02/13 | 630 | indexing/xindex/doc/tests/Umlaute.ind
-2022/02/13 | 630 | indexing/xindex/doc/tests/Umlaute2.ind
-2022/02/13 | 623 | macros/xetex/latex/bidi-atbegshi/test-foreground-RTL.tex
-2022/02/13 | 612027 | indexing/xindex.zip
-2022/02/13 | 60 | macros/latex/contrib/kanbun/kanbun-ja.tex
-2022/02/13 | 60 | macros/latex/contrib/kanbun/kanbun-en.tex
-2022/02/13 | 60831 | macros/latex/contrib/kanbun/kanbun-example.pdf
-2022/02/13 | 586 | macros/xetex/latex/bidi-atbegshi/test-RTL.tex
-2022/02/13 | 570 | macros/xetex/latex/bidi-atbegshi/test-foreground-LTR.tex
-2022/02/13 | 530 | macros/xetex/latex/bidi-atbegshi/test-LTR.tex
-2022/02/13 | 52616 | macros/latex/contrib/ninecolors.zip
-2022/02/13 | 5210 | indexing/xindex/doc/tests/demo.ind
-2022/02/13 | 5102 | indexing/xindex/doc/tests/demo.idx
-2022/02/13 | 50504 | systems/texlive/tlnet/archive/zref-clever.source.r61994.tar.xz
-2022/02/13 | 492371 | install/macros/generic/expkv-cs.tds.zip
-2022/02/13 | 49039 | macros/latex/contrib/ninecolors/ninecolors.pdf
-2022/02/13 | 484706 | macros/generic/expkv-cs.zip
-2022/02/13 | 481648 | systems/texlive/tlnet/archive/snotez.doc.r61992.tar.xz
-2022/02/13 | 470406 | macros/generic/expkv-cs/expkv-cs.pdf
-2022/02/13 | 463253 | macros/latex/contrib/kanbun/kanbun-ja.pdf
-2022/02/13 | 42572 | systems/texlive/tlnet/archive/knowledge.source.r61991.tar.xz
-2022/02/13 | 4170 | macros/luatex/latex/pyluatex/pyluatex-interpreter.py
-2022/02/13 | 4040 | systems/texlive/tlnet/archive/zref-vario.r61995.tar.xz
-2022/02/13 | 403429 | macros/latex/contrib/kanbun/kanbun-en.pdf
-2022/02/13 | 3991 | macros/xetex/latex/bidi-atbegshi/bidi-atbegshi.sty
-2022/02/13 | 39021 | indexing/xindex/doc/tests/buch.pdf
-2022/02/13 | 3526 | macros/latex/required/babel/base/bbidxglo.dtx
-2022/02/13 | 34606 | indexing/xindex/doc/tests/demo.pdf
-2022/02/13 | 32648 | systems/texlive/tlnet/archive/xsim.r61988.tar.xz
-2022/02/13 | 3216 | systems/texlive/tlnet/archive/snotez.r61992.tar.xz
-2022/02/13 | 3026636 | systems/texlive/tlnet/archive/xsim.doc.r61988.tar.xz
-2022/02/13 | 2976 | macros/luatex/latex/pyluatex/pyluatex.sty
-2022/02/13 | 29260 | macros/xetex/latex/bidi-atbegshi/test-RTL.pdf
-2022/02/13 | 29249 | macros/xetex/latex/bidi-atbegshi/test-foreground-RTL.pdf
-2022/02/13 | 2878348 | install/macros/latex/required/babel-base.tds.zip
-2022/02/13 | 28624 | indexing/xindex/doc/tests/demo-hyperref.pdf
-2022/02/13 | 28440 | macros/latex/contrib/chemmacros/HISTORY
-2022/02/13 | 24994 | macros/latex/contrib/ninecolors/ninecolors.sty
-2022/02/13 | 2327636 | systems/texlive/tlnet/archive/circuit-macros.doc.r61987.tar.xz
-2022/02/13 | 2326 | macros/latex/contrib/kanbun/kanbun-example.tex
-2022/02/13 | 23100 | systems/texlive/tlnet/archive/zref-clever.r61994.tar.xz
-2022/02/13 | 229642 | macros/latex/contrib/chemmacros/chemmacros.sty
-2022/02/13 | 22776 | systems/texlive/tlnet/archive/knowledge.r61991.tar.xz
-2022/02/13 | 21890 | macros/latex/required/babel/base/bbcompat.dtx
-2022/02/13 | 2113 | macros/latex/required/babel/base/README.md
-2022/02/13 | 2005 | macros/xetex/latex/bidi-atbegshi/bidi-atbegshi-doc.tex
-2022/02/13 | 1972 | systems/texlive/tlnet/archive/bxghost.r61989.tar.xz
-2022/02/13 | 192092 | macros/xetex/latex/bidi-atbegshi.zip
-2022/02/13 | 18884 | indexing/xindex/doc/tests/Umlaute2.pdf
-2022/02/13 | 18766 | macros/latex/contrib/kanbun/kanbun.tex
-2022/02/13 | 1840419 | macros/latex/required/babel/base.zip
-2022/02/13 | 18342 | indexing/xindex/doc/tests/HADW.pdf
-2022/02/13 | 1828 | systems/texlive/tlnet/archive/bxghost.doc.r61989.tar.xz
-2022/02/13 | 1801 | macros/luatex/latex/pyluatex/README.md
-2022/02/13 | 16690 | macros/latex/contrib/kanbun/kanbun.sty
-2022/02/13 | 156338 | macros/latex/contrib/chemmacros/chemmacros-manual.tex
-2022/02/13 | 15380 | indexing/xindex/doc/tests/buch.ind
-2022/02/13 | 1523 | macros/latex/contrib/chemmacros/README
-2022/02/13 | 15194 | indexing/xindex/doc/tests/Umlaute.pdf
-2022/02/13 | 1519464 | systems/texlive/tlnet/archive/zref-clever.doc.r61994.tar.xz
-2022/02/13 | 1496 | systems/texlive/tlnet/archive/circuit-macros.r61987.tar.xz
-2022/02/13 | 14200 | macros/luatex/latex/pyluatex/pyluatex.tex
-2022/02/13 | 138 | indexing/xindex/doc/tests/demo3.ind
-2022/02/13 | 1371 | indexing/xindex/README.md
-2022/02/13 | 13648 | macros/xetex/latex/bidi-atbegshi/test-LTR.pdf
-2022/02/13 | 13623 | macros/xetex/latex/bidi-atbegshi/test-foreground-LTR.pdf
-2022/02/13 | 1296 | macros/generic/expkv-cs/README.md
-2022/02/13 | 1264 | indexing/xindex/doc/tests/HADW.ind
-2022/02/13 | 123427 | macros/generic/expkv-cs/expkv-cs.dtx
-2022/02/13 | 11883 | indexing/xindex/doc/tests/demo4.pdf
-2022/02/13 | 114 | indexing/xindex/doc/tests/demo3.idx
-2022/02/13 | 1084433 | macros/latex/contrib/chemmacros.zip
-2022/02/13 | 108284 | macros/xetex/latex/bidi-atbegshi/bidi-atbegshi-doc.pdf
-2022/02/13 | 1017922 | macros/latex/contrib/chemmacros/chemmacros-manual.pdf
diff --git a/fonts/erewhon-math/Erewhon-Math.ltx b/fonts/erewhon-math/Erewhon-Math.ltx
index 27ea2481ee..839f81f6ff 100644
--- a/fonts/erewhon-math/Erewhon-Math.ltx
+++ b/fonts/erewhon-math/Erewhon-Math.ltx
@@ -34,7 +34,7 @@
\title{\decofourleft\,\FOTF\,\decofourright}
\author{Daniel Flipo \\ \texttt{daniel.flipo@free.fr}}
-\newcommand*{\version}{0.50}
+\newcommand*{\version}{0.51}
\begin{document}
\maketitle
@@ -319,7 +319,7 @@ their smaller variants, see table~\vref{ss05}.
\cmd{nmid} & $\nmid$ & $\nshortmid$ \\
\cmd{parallel} & $\parallel$ & $\shortparallel$ \\
\cmd{nparallel} & $\nparallel$ & $\nshortparallel$ \\
- \cmd{parallelslant} & $\parallel$ & $\shortparallelslant$ \\
+ \cmd{parallelslant} & $\parallelslant$ & $\shortparallelslant$ \\
\cmd{nparallelslant} & $\nparallelslant$ & $\nshortparallelslant$ \\
\hline
\end{tabular}
@@ -412,7 +412,19 @@ variants, see table~\vref{ss03}.
\end{table}
\setmathfont{Erewhon-Math.otf}
-%\clearpage
+\subsection{Other font features}
+\label{ssec-other-features}
+
+To get oldstyle numbers in Maths, the feature \texttt{+onum} is available:
+\begin{verbatim}
+\setmathfont{Erewhon Math}[Numbers=OldStyle] or
+\usepackage[Style={fulloldstyle]{fourier-otf}
+\end{verbatim}
+
+\setmathfont{Erewhon Math}[Numbers=OldStyle]
+$0123456789, \symbf{0123456789}$
+\setmathfont{Erewhon-Math.otf}
+
\subsection{Standard \LaTeX{} math commands}
\label{ssec-math-commands}
diff --git a/fonts/erewhon-math/Erewhon-Math.otf b/fonts/erewhon-math/Erewhon-Math.otf
index 01e93ac8fa..69cf11ad3a 100644
--- a/fonts/erewhon-math/Erewhon-Math.otf
+++ b/fonts/erewhon-math/Erewhon-Math.otf
Binary files differ
diff --git a/fonts/erewhon-math/Erewhon-Math.pdf b/fonts/erewhon-math/Erewhon-Math.pdf
index 21a7443505..c4cb0cc0b2 100644
--- a/fonts/erewhon-math/Erewhon-Math.pdf
+++ b/fonts/erewhon-math/Erewhon-Math.pdf
Binary files differ
diff --git a/fonts/erewhon-math/README.md b/fonts/erewhon-math/README.md
index acd2c39468..4296779097 100644
--- a/fonts/erewhon-math/README.md
+++ b/fonts/erewhon-math/README.md
@@ -16,7 +16,8 @@ Michael Shape’s Erewhon font.
* Erewhon-Math.ltx Source of Erewhon-Math.pdf
* unimath-erewhon.pdf Modified version of unimath-symbols.pdf
showing available Erewhon-Math symbols compared to
- LatinModern, STIXTwo, TeXGyrePagella and DejaVu.
+ LatinModern, STIXTwo, Erewhon, TeXGyrePagella,
+ Libertinus and EBGaramond.
* unimath-erewhon.ltx Source of unimath-symbols.pdf
* README.md (this file)
@@ -50,14 +51,14 @@ Either version 1.3 or, at your option, any later version.
* v0.41:
- Added chars U+2AB1 to U+2AB4 (\precneq, \succneq, \preceqq, \succeqq).
- Fixed kerning between Italic/BoldItalic Latin and Greek letters
- and their subscript.
+ and their subscript.
* v0.42:
- Added thirty symbols U+00B0 (degree), U+01B5, U+214B, U+2232, U+2233,
arrows U+2933 to U+2937 and some more.
- Improved kerning between roots and degrees.
- - Improved kerning between arrows accents and parenthesis.
- - Accents position above italic dans bold italic latin
- and greek letters tuned.
+ - Improved kerning between arrows accents and parenthesis.
+ - Accents position above italic dans bold italic latin
+ and greek letters tuned.
* v0.43
- Corrected "IsExtended" flags.
- Improved kernings for differential elements.
@@ -66,8 +67,8 @@ Either version 1.3 or, at your option, any later version.
* v0.44
- Improved sub- and superscripts: glyphs redesigned bolder,
size reduced (70%, 55%) instead of (76%, 60%).
- - Fixed right kernings of "italic f".
- - Fixed right bearings and italic corrections of mathscr capitals.
+ - Fixed right kernings of "italic f".
+ - Fixed right bearings and italic corrections of mathscr capitals.
* v0.45
- Added stretchy accents \wideoverbar, \widebreve, \widecheck.
* v0.46
@@ -78,39 +79,45 @@ Either version 1.3 or, at your option, any later version.
- Added \mdsmwhtsquare (U+25FD), \mdsmblksquare (U+25FE),
\lgwhtsquare (U+02B1B), \lgblksquare U+02B1C).
- Tuned all "squares", "circles" and "triangles": the smaller ones
- are centered on the math-axis, larger ones rest on the baseline.
- - Redesigned symbols \angle, \measuredangle, \sphericalangle
- (U+2220 to U+2222).
- - Redesigned lowercase script letters \mscre, \mscrg, \mscro
- (U+212F, U+210A, U+2134).
- - Added symbols \inttop, \intbottom, \sumtop, \sumbottom
- (U+2320, U+2321, U+23B2, U+23B3).
+ are centered on the math-axis, larger ones rest on the baseline.
+ - Redesigned symbols \angle, \measuredangle, \sphericalangle
+ (U+2220 to U+2222).
+ - Redesigned lowercase script letters \mscre, \mscrg, \mscro
+ (U+212F, U+210A, U+2134).
+ - Added symbols \inttop, \intbottom, \sumtop, \sumbottom
+ (U+2320, U+2321, U+23B2, U+23B3).
- Added symbols \hrectangleblack (U+025AC), \hrectangle (U+025AD),
- \mdlgwhtlozenge (U+25CA) \mdlgblklozenge (U+29EB).
- - Added symbols \enclosedcircle, \enclosedsquare, \encloseddiamond,
- \enclosedtriangle (U+20DD, U+20DE, U+20DF, U+20E4).
- - Added symbols \lozengeminus, \concavediamond, \concavediamondticketleft,
+ \mdlgwhtlozenge (U+25CA) \mdlgblklozenge (U+29EB).
+ - Added symbols \enclosedcircle, \enclosedsquare, \encloseddiamond,
+ \enclosedtriangle (U+20DD, U+20DE, U+20DF, U+20E4).
+ - Added symbols \lozengeminus, \concavediamond, \concavediamondticketleft,
\concavediamondticketright (U+27E0 to U+27E3).
- - Added symbols \mdblkdiamond, \mdwhtdiamond, \mdblklozenge,
- \mdwhtlozenge, \smblkdiamond, \smblklozenge, \smwhtlozenge
- (U+2B25 to U+2B2B).
+ - Added symbols \mdblkdiamond, \mdwhtdiamond, \mdblklozenge,
+ \mdwhtlozenge, \smblkdiamond, \smblklozenge, \smwhtlozenge
+ (U+2B25 to U+2B2B).
- Added two options (no-text, Scale=) to fourier-otf.sty.
* v0.50
- - Changes in Erewhon-Math:
- * Added upright versions of integrals (StylisticSet=3 feature).
- * All bold Math Script uppercase characters redesigned (their
- look was not consistent with their normal weight counterparts).
- * Added variants for mscrE, mscrQ and mscrT and their bold
+ - Changes in Erewhon-Math:
+ * Added upright versions of integrals (StylisticSet=3 feature).
+ * All bold Math Script uppercase characters redesigned (their
+ look was not consistent with their normal weight counterparts).
+ * Added variants for mscrE, mscrQ and mscrT and their bold
counterparts accessible through cv20, cv21 and cv22 respectively.
- * Added U+0338 for negation of "\mathrel" chars.
+ * Added U+0338 for negation of "\mathrel" chars.
- Changes in FourierOrns:
- * \texpertenthousand now defined in Erewhon (v.1.118).
- * \eurologo now borrowed from Erewhon (v.1.118).
- * Files FourierOrns-Bold.otf, FourierOrns-Italic.otf and
+ * \texpertenthousand now defined in Erewhon (v.1.118).
+ * \eurologo now borrowed from Erewhon (v.1.118).
+ * Files FourierOrns-Bold.otf, FourierOrns-Italic.otf and
FourierOrns-BoldItalic.otf (useless now) deleted.
* Breaking change: ornaments \leafleft and \leafright
- swapped in order to match the orignal type1 version.
-
+ swapped in order to match the orignal type1 version.
+* v0.51
+ - Feature +onum added (oldstyle numerals in maths).
+ Option fulloldstyle added to fourier-otf.sty, this option was
+ available with the original fourier-GUTenberg package.
+ - Sub- and superscript placement corrected for bold calligraphic capitals.
+ - Metrics changed for sans-serif and typewriter glyphs.
+
---
Copyright 2019-2022 Michel Bovani, Daniel Flipo
E-mail: michel (dot) bovani (at) icloud (dot) com
diff --git a/fonts/erewhon-math/fourier-otf.sty b/fonts/erewhon-math/fourier-otf.sty
index f7fc6e819a..568bb07cc9 100644
--- a/fonts/erewhon-math/fourier-otf.sty
+++ b/fonts/erewhon-math/fourier-otf.sty
@@ -1,6 +1,6 @@
\NeedsTeXFormat{LaTeX2e}[2018/01/01]
-\def\fileversion{0.50}
-\def\filedate{2022-02-06}
+\def\fileversion{0.51}
+\def\filedate{2022-02-20}
\ProvidesPackage{fourier-otf}[\filedate\space\fileversion]
% Ensure luatex or xetex engine
@@ -30,6 +30,7 @@
\DeclareOptionX{no-text}{\FOT@notexttrue}
\DeclareOptionX{tight}{\FOT@tighttrue}
\DeclareOptionX{loose}{\FOT@tightfalse}
+\DeclareOptionX{fulloldstyle}{\Store@KV@Option{Numbers}{OldStyle}}
\DeclareOptionX{math-style}{\Store@KV@Option{math-style}{#1}}
\DeclareOptionX{bold-style}{\Store@KV@Option{bold-style}{#1}}
\DeclareOptionX{nabla}{\Store@KV@Option{nabla}{#1}}
diff --git a/fonts/erewhon-math/unimath-erewhon.pdf b/fonts/erewhon-math/unimath-erewhon.pdf
index ef2a4a2d54..3c82b78ddd 100644
--- a/fonts/erewhon-math/unimath-erewhon.pdf
+++ b/fonts/erewhon-math/unimath-erewhon.pdf
Binary files differ
diff --git a/fonts/haranoaji-extra/HaranoAjiGothic-ExtraLight.otf b/fonts/haranoaji-extra/HaranoAjiGothic-ExtraLight.otf
index 4f804e5f7c..15ba76f87d 100644
--- a/fonts/haranoaji-extra/HaranoAjiGothic-ExtraLight.otf
+++ b/fonts/haranoaji-extra/HaranoAjiGothic-ExtraLight.otf
Binary files differ
diff --git a/fonts/haranoaji-extra/HaranoAjiGothic-Light.otf b/fonts/haranoaji-extra/HaranoAjiGothic-Light.otf
index e8de97f102..2b62eaa036 100644
--- a/fonts/haranoaji-extra/HaranoAjiGothic-Light.otf
+++ b/fonts/haranoaji-extra/HaranoAjiGothic-Light.otf
Binary files differ
diff --git a/fonts/haranoaji-extra/HaranoAjiGothic-Normal.otf b/fonts/haranoaji-extra/HaranoAjiGothic-Normal.otf
index ad49b2dbe0..385738a9d6 100644
--- a/fonts/haranoaji-extra/HaranoAjiGothic-Normal.otf
+++ b/fonts/haranoaji-extra/HaranoAjiGothic-Normal.otf
Binary files differ
diff --git a/fonts/haranoaji-extra/HaranoAjiMincho-ExtraLight.otf b/fonts/haranoaji-extra/HaranoAjiMincho-ExtraLight.otf
index c07d1af856..9ed40b4a14 100644
--- a/fonts/haranoaji-extra/HaranoAjiMincho-ExtraLight.otf
+++ b/fonts/haranoaji-extra/HaranoAjiMincho-ExtraLight.otf
Binary files differ
diff --git a/fonts/haranoaji-extra/HaranoAjiMincho-Heavy.otf b/fonts/haranoaji-extra/HaranoAjiMincho-Heavy.otf
index 363a13734e..c02dbcc292 100644
--- a/fonts/haranoaji-extra/HaranoAjiMincho-Heavy.otf
+++ b/fonts/haranoaji-extra/HaranoAjiMincho-Heavy.otf
Binary files differ
diff --git a/fonts/haranoaji-extra/HaranoAjiMincho-Medium.otf b/fonts/haranoaji-extra/HaranoAjiMincho-Medium.otf
index 4aad5ced43..19fedec131 100644
--- a/fonts/haranoaji-extra/HaranoAjiMincho-Medium.otf
+++ b/fonts/haranoaji-extra/HaranoAjiMincho-Medium.otf
Binary files differ
diff --git a/fonts/haranoaji-extra/HaranoAjiMincho-SemiBold.otf b/fonts/haranoaji-extra/HaranoAjiMincho-SemiBold.otf
index cf22033b3a..bd32d8aad5 100644
--- a/fonts/haranoaji-extra/HaranoAjiMincho-SemiBold.otf
+++ b/fonts/haranoaji-extra/HaranoAjiMincho-SemiBold.otf
Binary files differ
diff --git a/fonts/haranoaji-extra/README b/fonts/haranoaji-extra/README
index 368fbdc159..2ae23c9b6d 100644
--- a/fonts/haranoaji-extra/README
+++ b/fonts/haranoaji-extra/README
@@ -1,4 +1,4 @@
-# Harano Aji Fonts ver. 20220130
+# Harano Aji Fonts ver. 20220220
https://github.com/trueroad/HaranoAjiFonts
diff --git a/fonts/haranoaji/HaranoAjiGothic-Bold.otf b/fonts/haranoaji/HaranoAjiGothic-Bold.otf
index 5660eaaaa6..74aeebd6c2 100644
--- a/fonts/haranoaji/HaranoAjiGothic-Bold.otf
+++ b/fonts/haranoaji/HaranoAjiGothic-Bold.otf
Binary files differ
diff --git a/fonts/haranoaji/HaranoAjiGothic-Heavy.otf b/fonts/haranoaji/HaranoAjiGothic-Heavy.otf
index 81659f3e4e..9c3653772d 100644
--- a/fonts/haranoaji/HaranoAjiGothic-Heavy.otf
+++ b/fonts/haranoaji/HaranoAjiGothic-Heavy.otf
Binary files differ
diff --git a/fonts/haranoaji/HaranoAjiGothic-Medium.otf b/fonts/haranoaji/HaranoAjiGothic-Medium.otf
index d0e66714e4..a7adfcf3e4 100644
--- a/fonts/haranoaji/HaranoAjiGothic-Medium.otf
+++ b/fonts/haranoaji/HaranoAjiGothic-Medium.otf
Binary files differ
diff --git a/fonts/haranoaji/HaranoAjiGothic-Regular.otf b/fonts/haranoaji/HaranoAjiGothic-Regular.otf
index 816aed3533..b927a7a624 100644
--- a/fonts/haranoaji/HaranoAjiGothic-Regular.otf
+++ b/fonts/haranoaji/HaranoAjiGothic-Regular.otf
Binary files differ
diff --git a/fonts/haranoaji/HaranoAjiMincho-Bold.otf b/fonts/haranoaji/HaranoAjiMincho-Bold.otf
index f80b65780b..6443477bec 100644
--- a/fonts/haranoaji/HaranoAjiMincho-Bold.otf
+++ b/fonts/haranoaji/HaranoAjiMincho-Bold.otf
Binary files differ
diff --git a/fonts/haranoaji/HaranoAjiMincho-Light.otf b/fonts/haranoaji/HaranoAjiMincho-Light.otf
index f7adb72315..16b7bd0e75 100644
--- a/fonts/haranoaji/HaranoAjiMincho-Light.otf
+++ b/fonts/haranoaji/HaranoAjiMincho-Light.otf
Binary files differ
diff --git a/fonts/haranoaji/HaranoAjiMincho-Regular.otf b/fonts/haranoaji/HaranoAjiMincho-Regular.otf
index 7ed1f313f5..52c31f0114 100644
--- a/fonts/haranoaji/HaranoAjiMincho-Regular.otf
+++ b/fonts/haranoaji/HaranoAjiMincho-Regular.otf
Binary files differ
diff --git a/fonts/haranoaji/README b/fonts/haranoaji/README
index 368fbdc159..2ae23c9b6d 100644
--- a/fonts/haranoaji/README
+++ b/fonts/haranoaji/README
@@ -1,4 +1,4 @@
-# Harano Aji Fonts ver. 20220130
+# Harano Aji Fonts ver. 20220220
https://github.com/trueroad/HaranoAjiFonts
diff --git a/graphics/mcf2graph/CHANGELOG b/graphics/mcf2graph/CHANGELOG
index e7f8ff63c8..5ef0c1644d 100644
--- a/graphics/mcf2graph/CHANGELOG
+++ b/graphics/mcf2graph/CHANGELOG
@@ -1,6 +1,11 @@
*******************************************************************************
- Changelog of mcf2graph software package by Akira Yamaji 2022-01-22
+ Changelog of mcf2graph software package by Akira Yamaji 2022-02-20
*******************************************************************************
+[ver. 4.80 / 2022-02-20]
+ -update mcf2graph.mp
+ -update mcf_data_base.mcf
+ -update MCF manual,example
+
[ver. 4.79 / 2022-01-22]
-fix bug in numbering atom,bond
diff --git a/graphics/mcf2graph/README b/graphics/mcf2graph/README
index 32076c3ab1..7cf9d4cbbc 100644
--- a/graphics/mcf2graph/README
+++ b/graphics/mcf2graph/README
@@ -1,7 +1,7 @@
********************************************************************************
mcf2graph : Convert Molecular Coding Format to graphics with MetaPost
Author : Akira Yamaji
- version : 4.79 2022-01-22
+ version : 4.80 2022-02-20
E-mail : mcf2graph@gmail.com
Located at : http://www.ctan.org/pkg/mcf2graph
********************************************************************************
@@ -33,24 +33,20 @@
3. How to use mcf2graph with MetaPost
Minimum requirement to use mcf2graph : mpost.exe,mpost.dll,mpost.mp,plain.mp
( 1) >mpost FILENAME => output eps(.mps) file
- ( 2) >mpost -s bboxmargin=1 FILENAME => output first figure only (for test)
- ( 3) >mpost -s ahangle=1 FILENAME => output png file (600dpi)
- ( 4) >mpost -s ahangle=11 FILENAME => output png file (1200dpi)
- ( 5) >mpost -s ahangle=2 FILENAME => output svg file
- ( 6) >mpost -s ahangle=3 FILENAME => output eps(.eps) file
- ( 7) >mpost -s ahlength=1 FILENAME => output information-aux file
- tag1:var1;tag2:var2;
- ( 8) >mpost -s ahlength=2 FILENAME => output information-aux file
- tag1;tag2;
- var1;var2;
- ( 9) >mpost -s ahlength=3 FILENAME => output data-base-aux file
- (10) >mpost -s ahlength=5 FILENAME => output mol file(V2000)
- (11) >mpost -s ahlength=6 FILENAME => output mol file(V3000)
- (12) >mpost -s ahlength=7 FILENAME => output report file
- (13) >mpost -s labeloffset=2 FILENAME => atomfont="uhvr8r"
+ ( 2) >mpost -s ahangle=1 FILENAME => output png file (600dpi)
+ ( 3) >mpost -s ahangle=11 FILENAME => output png file (1200dpi)
+ ( 4) >mpost -s ahangle=2 FILENAME => output svg file
+ ( 5) >mpost -s ahangle=3 FILENAME => output eps(.eps) file
+ ( 6) >mpost -s ahlength=1 FILENAME => output information-aux file(for tex)
+ ( 7) >mpost -s ahlength=2 FILENAME => output information-aux file
+ (for spread sheet)
+ ( 8) >mpost -s ahlength=3 FILENAME => output data-base-aux file
+ ( 9) >mpost -s ahlength=5 FILENAME => output mol file(V2000)
+ (10) >mpost -s ahlength=6 FILENAME => output mol file(V3000)
+ (11) >mpost -s ahlength=7 FILENAME => output report file
4. License
- mcf2graph ver 4.78 Copyright (c) 2013-2022 Akira Yamaji
+ mcf2graph ver 4.80 Copyright (c) 2013-2022 Akira Yamaji
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
diff --git a/graphics/mcf2graph/mcf2graph.mp b/graphics/mcf2graph/mcf2graph.mp
index 0ddf0b3c22..b440e07e06 100644
--- a/graphics/mcf2graph/mcf2graph.mp
+++ b/graphics/mcf2graph/mcf2graph.mp
@@ -1,5 +1,5 @@
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-% mcf2graph ver 4.79 Copyright (c) 2013-2022 Akira Yamaji
+% mcf2graph ver 4.80 Copyright (c) 2013-2022 Akira Yamaji
%
% Permission is hereby granted, free of charge, to any person obtaining a copy of this software
% and associated documentation files (the "Software"), to deal in the Software without restriction,
@@ -17,85 +17,77 @@
% OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% mcf2graph is MetaPost macro package convert Molecular Coding Format(MCF) to graphic file
-% font(pk)/eps/sgv/png/mdl molfile
+% eps/sgv/png/mdl molfile
%--------------------------------------------------------------------------------------------------
% This package is located at : http://www.ctan.org/pkg/mcf2graph
% Suggestion or request mail to : mcf2graph@gmail.com
%--------------------------------------------------------------------------------------------------
-% Set outputformat to "eps"(.mps) : mpost FILENAME
-% Set output first font only : mpost -s bboxmargin=1 FILENAME
-% Set outputformat to "png" : mpost -s ahangle=1 FILENAME
-% Set outputformat to "svg" : mpost -s ahangle=2 FILENAME
+% Set outputformat to "eps" (.mps) : mpost FILENAME
+% Set outputformat to "png" (.png) : mpost -s ahangle=1 FILENAME
+% Set outputformat to "svg" (.svg) : mpost -s ahangle=2 FILENAME
% Set outputformat to "eps" (.eps) : mpost -s ahangle=3 FILENAME
-% Set output information aux file (tag1:var1;tag2:var2) : mpost -s ahlength=1 FILENAME
-% Set output information aux file (tag1;tag2 var1;var2) : mpost -s ahlength=2 FILENAME
+% Set output information aux file (for TeX) : mpost -s ahlength=1 FILENAME
+% Set output information aux file (for spread sheet) : mpost -s ahlength=2 FILENAME
% Set output aux data-base file : mpost -s ahlength=3 FILENAME
% Set output MOL file (V2000) : mpost -s ahlength=5 FILENAME
% Set output MOL file (V3000) : mpost -s ahlength=6 FILENAME
% Set output report : mpost -s ahlength=7 FILENAME
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
tracingstats:=1;
-message "* This is mcf2graph ver 4.79 2022.01.22";
+message "* This is mcf2graph ver 4.80 2022.02.20";
%-------------------------------------------------------------------------------------------------
-newinternal cntA,cntB,cntM,minX,minY,maxX,maxY,sftX,sftY,com,par,envT,envB,lenT,lineT,angT,rotT,
- crR,nA,nB,nC,nD,nE,nF,nS,nL,nR,nU,nP,xpos,ypos,markA,markB,saveA,saveB,bondL;
-numeric save_num[],comD[][],parD[][],adrD[][],cntD[],tbl_atom[],tbl_group[][],f_char[],
- tbl_atom_wt[],tbl_atom_mi[],tbl_char_wd[],tbl_char_ht[],addA[],add_rot[],chargeA[],
- com_group[][],par_group[][],cnt_group[],colorA[],colorB[],sumA[],bondC[],hideH[],lineB[],
- sB[],eB[],angB[],angA[],lenB[],angX[],numS[],wdM[],htM[],wdA[],dxA[],
- cmm_adr[],mc_indent[],at_semicol[];
-string save_str[],tbl_atom_str[],strD[],tag[],file_name_output,blank_str,aux_delimiter,atomfont,
- temps,default_data_file,default_temp_file,mpfont,tag_s,var_s,cal_FM,cal_MW,cal_MI,
- inf_Cat,inf_NO,inf_EN,inf_JN,inf_FM,inf_CAS,inf_USE,inf_EXA,inf_EXB,inf_MW;
-pair save_pair[],posA[],posM[][],msize,mposition,fsize,fmargin,save_mposition,posBs,posBe,dum;
-picture mol_stru[],atom_picture,save_picture,temp_picture;
+newinternal numeric nA,nB,nC,nD,nE,nF,nH,nN,nL,nR,nS,nU,nP,nW,nX,nY,mc_row;
+newinternal string tempc,temps,blanks,aux_delimiter,atomfont,sC,sI,sS,sT,sV,cC,cH,cO,cN,cS,cF,cP,
+ file_input,file_output;
+numeric save_num[],comD[][],parD[][],adrD[][],cntD[],tbl_atom[],tbl_group[][],tbl_atom_wt[],
+ tbl_atom_mi[],tbl_char_wd[],tbl_char_ht[];
+string mc[],mc,save_str[],tbl_atom_str[],strD[],tag[],default_data_file,default_temp_file,mpfont;
+pair save_pair[],msize,mposition,fsize,fmargin,dum,mpos;
+picture mol_pic[];
+color color_list[];
%-------------------------------------------------------------------------------------------------
-char_num:=str_cnt:=tbl_cnt:=proc_end:=mangle:=sw_expand:=sw_frame:=sw_trimming:=sw_ext_all:=0;
+fig_num:=str_cnt:=tbl_cnt:=mangle:=sw_expand:=sw_frame:=sw_trimming:=sw_ext_all:=0;
sw_abbreviate:=sw_numbering:=sw_output:=0; numbering_start:=1; numbering_end:=4095;
%-------------------------------------------------------------------------------------------------
-aux_max:=max_inf_num:=20; aux_delimiter:=";"; blank_str:= " "; dum:=(-4091,0);
+aux_max:=max_inf_num:=20; aux_delimiter:=";"; blanks:= " "; dum:=(-4091,0);
for i=1 upto aux_max: tag[i]:=""; endfor
Fig:=1; Mcode:=2; Calc:=4; Info:=8; Table:=16; Report:=32; MOL2k:=64; MOL3k:=128;
Atom:=8; Bond:=16; Group:=32; Mol:=64; Outside:=1; Inside:=2; Bothside:=Outside+Inside;
%-------------------------------------------------------------------------------------------------
a_prn_s:=ASCII("("); a_prn_e:=ASCII(")"); a_brc_s:=ASCII("{"); a_brc_e:=ASCII("}");
-a_brk_s:=ASCII("["); a_brk_e:=ASCII("]"); a_cmm:=ASCII(","); a_equ:=ASCII("=");
-a_ast:=ASCII("*"); a_sls:=ASCII("/"); a_gtn:=ASCII("<"); a_ltn:=ASCII(">"); a_and:=ASCII("&");
-a_dol:=ASCII("$"); a_hsh:=ASCII("#"); a_hat:=ASCII("^"); a_tld:=ASCII("~"); a_bqt:=ASCII("`");
-a_cln:=ASCII(":"); a_amk:=ASCII("@"); a_zero:=ASCII("0"); a_nine:=ASCII("9"); a_qut:=ASCII("'");
+a_brk_s:=ASCII("["); a_brk_e:=ASCII("]"); a_cmm:=ASCII(","); a_equ:=ASCII("=");
+a_ast:=ASCII("*"); a_sls:=ASCII("/"); a_gtn:=ASCII("<"); a_ltn:=ASCII(">"); a_and:=ASCII("&");
+a_dol:=ASCII("$"); a_hsh:=ASCII("#"); a_hat:=ASCII("^"); a_tld:=ASCII("~"); a_bqt:=ASCII("`");
+a_cln:=ASCII(":"); a_amk:=ASCII("@"); a_zero:=ASCII("0"); a_nine:=ASCII("9"); a_qut:=ASCII("'");
a_bar:=ASCII("|"); a_plus:=ASCII("+"); a_minus:=ASCII("-");
-%--------------------------------------------------------------------------------------------------
+cC:="C"; cH:="H"; cO:="O"; cN:="N"; cS:="S"; cF:="F"; cP:="P";
+%-------------------------------------------------------------------------------------------------
let DIV= /; let MUL= *; let LT= <; let GT= >; let AND= &; let :: = : ; let == = =; let ef=elseif;
-def ]]]=] ] ] enddef;
-%--------------------------------------------------------------------------------------------------
-primarydef a at b = fat(a,b) enddef;
-def fat(expr a,b)= mposition:=b; a enddef;
-def ext(text TXT)= sw_ext_all:=1; def EXT_ALL = TXT enddef; enddef;
+let ISP=intersectionpoint; def ]]]=] ] ] enddef;
+%-------------------------------------------------------------------------------------------------
+def ext(text t)= sw_ext_all:=1; def EXT_ALL = t enddef; enddef;
def ext_clear= sw_ext_all:=0; def EXT_ALL = enddef; enddef;
-%--------------------------------------------------------------------------------------------------
+%-------------------------------------------------------------------------------------------------
vardef frac primary n= n-floor n enddef;
vardef iif(expr a,b,c)=if a: b else: c fi enddef;
vardef subc(expr i,s)= substring(i-1,i) of s enddef;
vardef sfrt(expr a,b,c)= a shifted ((b,0) rotated c) enddef;
+%-------------------------------------------------------------------------------------------------
def wpcs expr n= withpen pencircle scaled n enddef;
def ppcs expr n= pickup pencircle scaled n enddef;
def sbp(expr m,n)expr p=subpath(m*length(p),n*length(p)) of p enddef;
%-------------------------------------------------------------------------------------------------
-vardef fsr(expr n)(expr s)= (substring(0,n-length(s)) of blank_str)&s enddef;
-vardef fsl(expr n)(expr s)= s&(substring(0,n-length(s)) of blank_str) enddef;
+vardef fsr(expr n)(expr s)= (substring(0,n-length(s)) of blanks)&s enddef;
+vardef fsl(expr n)(expr s)= s&(substring(0,n-length(s)) of blanks) enddef;
vardef fdr(expr n)(expr s)= fsr(n)(decimal(s)) enddef;
vardef fdl(expr n)(expr s)= fsl(n)(decimal(s)) enddef;
-def warning(expr s)= message "% "&decimal(char_num)&fdr(3)(incr warning_cnt)&")"&s; enddef;
+def printf expr s= write s to file_output enddef;
+def warning(expr s)= message "% "&decimal(fig_num)&fdr(3)(incr warning_cnt)&")"&s; enddef;
%=================================================================================================
-color color_list[];
-for i=1 upto 100: colorA[i]:=colorB[i]:=0; endfor
prologues:=3;
warningcheck:=0;
-default_data_file:="mcf_data_base.mcf";
-default_temp_file:="temp.mcf";
-mpfont:="uhvr8r";
-atomfont:="draw";
-defaultfont:=mpfont;
+default_data_file:="mcf_data_base.mcf"; default_temp_file:="temp.mcf";
+mpfont:="uhvr8r"; atomfont:="draw"; defaultfont:=mpfont;
%--default ahangle=45---------------------------------------------------------------------
if ahangle=0: outputformat:="eps"; % eps format(.mps)
ef ahangle=1: outputformat:="png"; hppp:=vppp:=0.12; % png format(600dpi)
@@ -114,8 +106,7 @@ ef ahlength=6: sw_output:=MOL3k; % output MOL(V3000)
ef ahlength=7: sw_output:=Report; % output report
fi
%-- default bboxmargin=2------------------------------------------------------------------
-if bboxmargin=1: proc_end:=1; % output first font only
-ef bboxmargin=3: ext(defaultfont:=mpfont; defaultscale:=.3; label.rt(inf_EN,(0,0));)
+if bboxmargin=3: ext(defaultfont:=mpfont; defaultscale:=.3; label.rt(inf_EN,(0,0));)
ef bboxmargin=4: sw_output:=Fig+Calc;
ext(defaultfont:=mpfont; defaultscale:=.3;
label.rt(inf_EN&" / "&cal_MW&" / "&decimal(num_MW-scantokens(inf_MW)),(0,0));)
@@ -125,12 +116,7 @@ if (outputformat="eps")and(ahangle<>3): outputtemplate:="%j-%3c."&"mps";
else: outputtemplate:="%j-%3c."&outputformat;
fi
%-----------------------------------------------------------------------------------------
-def printf expr s= write s to file_name_output enddef;
-vardef totalweight expr a= 0 enddef;
-def Cp(expr s) = if known s: if s<>0: withcolor color_list[s] fi fi enddef;
-%-----------------------------------------------------------------------------------------
if sw_output>=Info:
- if bboxmargin=1: message "* output first font only"; fi
message "* jobname="&jobname;
message "* numbersystem="&numbersystem;
if (ahlength=1)or(ahlength=2):
@@ -155,23 +141,17 @@ fi
clearit;
%--------------------------------------------------------------------------------------------------
?3:=?20:=Ph:=Ph1:=Ph2:=hz:=0; vt:=1;
-ratio_chain_ring:=0.66; ratio_atom_bond:=0.36; ratio_thickness_bond:=0.015;
-ratio_thickness_char:=0.1; ratio_char_bond:=1.5; ratio_bondgap_bond:=0.15;
-ratio_hashgap_bond:=0.12; ratio_hash_black:=0.4; ratio_wedge_bond:=0.12;
-ratio_atomgap_atom:=0.04;
-offset_thickness:=0.2; offset_bond_gap:=0.3; offset_hash_gap:=0.1;
-offset_atom:=0.8; offset_wedge:=0.4; thickness_frame:=0.2;
+ratio_chain_ring:=0.66; ratio_atom_bond:=0.36; ratio_thickness_bond:=0.015;
+ratio_thickness_char:=0.1; ratio_char_bond:=1.5; ratio_bondgap_bond:=0.15;
+ratio_hashgap_bond:=0.12; ratio_hash_black:=0.4; ratio_wedge_bond:=0.12; ratio_atomgap_atom:=0.04;
+offset_thickness:=0.2; offset_bond_gap:=0.3; offset_hash_gap:=0.1; offset_atom:=0.8;
+offset_wedge:=0.4; thickness_frame:=0.2;
max_blength:=10mm; blength:=mangle:=0; max_labelsize:=20mm; dottedline_gap:=1.5;
%--------------------------------------------------------------------------------------------------
fsize:=(30mm,20mm); fmargin:=(0.4mm,0.4mm); msize:=(1,1); mposition:=(0.5,0.5);
%==================================================================================================
bboxmargin:=0; % 2bp => 0
-ahangle:=45;
-ahlength:=4;
-defaultsize:=8;
-defaultscale:=1;
-labeloffset:=3;
-ext_defaultline:=0.5;
+ahangle:=45; ahlength:=4; defaultsize:=8; defaultscale:=1; labeloffset:=3; ext_defaultline:=0.5;
lonepairdiam:=lonepairspace:=circlediam:=circlepen:=0;
%==================================================================================================
parts_emb_start:=1000; % 1001 => 2000 for embedded parts (max 1900)
@@ -181,31 +161,28 @@ parts_int_start:=3000; % 3001 => 4000 for internal parts (max 1000)
%--------------------------------------------------------------------------------------------------
def def_com(expr n)(text tx)= nA:=n; forsuffixes list=tx:: list:=nA; nA:=nA+1; endfor enddef;
def_com(-4090)(_com,_jp_atom,_jp_absA,_jp_bond,_cyc,_cyc_sB,_cyc_eB,_set_line,_tmp_line,
- _chg_len,_get_len,_ring_len,_tmp_len,_rot_ang,_adj_ang,_chg_env,_tmp_env,
- _set_colorA,_set_colorB,_group_si,_group_dm,_group_wf,_group_zf,
- _set_adr,_mk_bond,_set_atom,_arrange_ang,_chg_atom,_tmp_rot,_fuse,_size_atom,_numeric,
- _jump_at,_set_add,_chg_add,_nop,_mark,_moff,_term,_len_s,_len_e,_len_ss,_len_ee,
- _group_s,_group_e,_rest,_charge,_from,_until,
+ _chg_len,_get_len,_ring_len,_tmp_len,_rot_ang,_adj_ang,_chg_env,_tmp_env,_set_colorA,_set_colorB, _group_si,_group_dm,_group_wf,_group_zf,_set_adr,_mk_bond,_set_atom,_arrange_ang,_chg_atom,
+ _tmp_rot,_fuse,_size_atom,_numeric,_jump_at,_set_add,_chg_add,_nop,_mark,_moff,_term,_len_s,
+ _len_e,_len_ss,_len_ee,_group_s,_group_e,_rest,_charge,_from,_until,
si,dl,dl_,dr,dr_,db,dm,dm_,tm,wf,wb,bd,bz,zf,zb,dt,wv,nl,vf,vb,nb,wf_r,wb_r,bd_r,
arc_lb,arc_br,arc_lbr,arc_ltr,si_,wf_,wb_,zf_,zb_,wv_,bd_);
%--------------------------------------------------------------------------------------------------
def parameter_list=
- sw_numbering,sw_expand,sw_output,sw_ext_all,sw_frame,sw_trimming,sw_abbreviate,
- ratio_atom_bond,ratio_thickness_bond,ratio_char_bond,ratio_chain_ring,ratio_bondgap_bond,
- ratio_hash_black,ratio_hashgap_bond,ratio_thickness_char,ratio_wedge_bond,ratio_atomgap_atom,
- lonepairdiam,lonepairspace,offset_atom,offset_wedge,max_blength,offset_hash_gap,
- offset_bond_gap,thickness_frame,offset_thickness,
- numbering_start,numbering_end,defaultsize,defaultscale,labeloffset,mangle,blength,
- fsize,fmargin,msize,mposition,defaultfont,atomfont,dottedline_gap,
+ sw_numbering,sw_expand,sw_output,sw_ext_all,sw_frame,sw_trimming,sw_abbreviate,ratio_atom_bond,
+ ratio_thickness_bond,ratio_char_bond,ratio_chain_ring,ratio_bondgap_bond,ratio_hash_black,
+ ratio_hashgap_bond,ratio_thickness_char,ratio_wedge_bond,ratio_atomgap_atom,lonepairdiam,
+ lonepairspace,offset_atom,offset_wedge,max_blength,offset_hash_gap,offset_bond_gap,
+ thickness_frame,offset_thickness,numbering_start,numbering_end,defaultsize,defaultscale,
+ labeloffset,mangle,blength,fsize,fmargin,msize,mposition,defaultfont,atomfont,dottedline_gap,
Me,Et,CH3,NH,NH2,NO,NO2,OH,CHO,COOH,CN,SH,!CH3,!NH2,!NO2,!OH,!CHO,!COOH,!CN,!SH
enddef;
%--------------------------------------------------------------------------------------------------
def init_par(text t)=
nA:=nB:=nC:=0;
for list=t:
- if numeric list: nA:=nA+1; save_num[nA]:=list;
- elseif pair list: nB:=nB+1; save_pair[nB]:=list;
- elseif string list: nC:=nC+1; save_str[nC]:=list;
+ if numeric list: nA:=nA+1; save_num[nA]:=list;
+ ef pair list: nB:=nB+1; save_pair[nB]:=list;
+ ef string list: nC:=nC+1; save_str[nC]:=list;
fi
endfor
enddef;
@@ -213,9 +190,9 @@ enddef;
def store_par(text t)=
nA:=nB:=nC:=0;
for list=t:
- if numeric list: nA:=nA+1; if save_num[nA]<>list: save_num[nA]:=list; fi
- elseif pair list: nB:=nB+1; if save_pair[nB]<>list: save_pair[nB]:=list; fi
- elseif string list: nC:=nC+1; if save_str[nC]<>list: save_str[nC]:=list; fi
+ if numeric list: nA:=nA+1; if save_num[nA]<>list: save_num[nA]:=list; fi
+ ef pair list: nB:=nB+1; if save_pair[nB]<>list: save_pair[nB]:=list; fi
+ ef string list: nC:=nC+1; if save_str[nC]<>list: save_str[nC]:=list; fi
fi
endfor
enddef;
@@ -223,68 +200,64 @@ enddef;
def restore_par(text t)=
nA:=nB:=nC:=0;
forsuffixes list=t:
- if numeric list: nA:=nA+1; if list<>save_num[nA]: list:=save_num[nA]; fi
- elseif pair list: nB:=nB+1; if list<>save_pair[nB]: list:=save_pair[nB]; fi
- elseif string list: nC:=nC+1; if list<>save_str[nC]: list:=save_str[nC]; fi
+ if numeric list: nA:=nA+1; if list<>save_num[nA]: list:=save_num[nA]; fi
+ ef pair list: nB:=nB+1; if list<>save_pair[nB]: list:=save_pair[nB]; fi
+ ef string list: nC:=nC+1; if list<>save_str[nC]: list:=save_str[nC]; fi
fi
endfor
enddef;
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
def beginfigm(text s)=
begingroup
- save ',f_ext,blen,ext,add,ang_br,fw_n,bw_n,at_colon,temp_tag,info_cnt,
- mc,info,file_name_input,bond_cnt,warning_cnt,hideH_cnt,bondC,filter_s;
- string info[],mc[],mc,file_name_input,temp_tag,filter_s;
+ save ',f_ext,blen,ext,add,ang_br,fw_n,bw_n,at_colon,info_cnt,group_num,info_s,bond_cntA,
+ warning_cnt,hideH_cnt,filter_s,mc_indent,cntM,cntA,cntB,minX,minY,maxX,maxY,posA,posM,hideH, lineB,sB,eB,angB,angA,lenB,angX,numS,sumA,bond_num,wdM,htM,chargeA,addA,add_rot,cal_FM,
+ cal_MW,cal_MI,inf_Cat,inf_NO,inf_EN,inf_JN,inf_FM,inf_CAS,inf_USE,inf_EXA,inf_EXB,inf_MW;
+ numeric mc_indent[],hideH[],lineB[],sB[],eB[],angB[],angA[],lenB[],angX[],numS[],sumA[],
+ bond_num[],wdM[],htM[],chargeA[],addA[],add_rot[];
+ pair posA[],posM[][];
+ string info_s[],filter_s,cal_FM,cal_MW,cal_MI,inf_Cat,inf_NO,inf_EN,inf_JN,inf_FM,inf_CAS,
+ inf_USE,inf_EXA,inf_EXB,inf_MW;
%------------------------------------------------------------------------------------------------
- def ext=ext_to_font enddef;
- def add=add_to_molecule enddef;
- def '=read_ud enddef;
+ def ext=ext_to_fig enddef; def add=add_to_molecule enddef; def '=read_ud enddef;
%------------------------------------------------------------------------------------------------
inf_NO:=inf_EN:=inf_JN:=inf_MW:=inf_FM:=inf_CAS:=inf_Cat:=inf_EXA:=inf_EXB:="-";
- mc:=temp_tag:=cal_MW:=cal_MI:=cal_FM:=filter_s:="";
- file_name_input:=default_data_file;
+ mc:=temps:=cal_MW:=cal_MI:=cal_FM:=filter_s:="";
+ file_input:=default_data_file;
%------------------------------------------------------------------------------------------------
- parts_cnt:=parts_usr_start;
- parts_int:=parts_int_start;
+ parts_cnt:=parts_usr_start; parts_int:=parts_int_start;
%------------------------------------------------------------------------------------------------
- char_num:=char_num+1;
store_par(parameter_list);
- f_ext:=cntM:=mc_row:=info_cnt:=f_EOF:=0;
+ fig_num:=fig_num+1; f_ext:=cntM:=mc_row:=info_cnt:=f_EOF:=0;
%------------------------------------------------------------------------------------------------
for list=s:
at_colon:=scan_char(":",list,0,1);
if at_colon=1:
- fw_n:=scan_char(" ",list,1,2);
- bw_n:=scan_char(" ",list,-1,2);
- mc_row:=mc_row+1;
- mc_indent[mc_row]:=fw_n-2;
- mc[mc_row]:=substring (fw_n-1,bw_n) of list;
- mc:=mc&mc[mc_row];
+ fw_n:=scan_char(" ",list,1,2); bw_n:=scan_char(" ",list,-1,2);
+ mc_row:=mc_row+1; mc_indent[mc_row]:=fw_n-2;
+ mc[mc_row]:=substring(fw_n-1,bw_n) of list; mc:=mc&mc[mc_row];
ef at_colon>=1:
- info_cnt:=info_cnt+1; info[info_cnt]:=list;
- tag_s:=substring (0,at_colon-1) of list;
- var_s:=substring (at_colon,length(list)) of list;
- if tag_s="f":
- if scan_char(".",var_s,0,1)=0: file_name_input:=var_s&".mcf";
- else: file_name_input:=var_s;
- fi
- ef tag_s="t": temp_tag:=var_s;
- ef tag_s="v": pickup_data_unit(temp_tag,var_s,1);
- ef tag_s="v+": pickup_data_unit(temp_tag,var_s,0);
- else: if known scantokens("inf_"&tag_s): scantokens("inf_"&tag_s):=var_s; fi
+ info_cnt:=info_cnt+1; info_s[info_cnt]:=list;
+ sT:=substring(0,at_colon-1) of list; sV:=substring(at_colon,length(list)) of list;
+ if sT="f": if scan_char(".",sV,0,1)=0: file_input:=sV&".mcf"; else: file_input:=sV; fi
+ ef sT="t": temps:=sV;
+ ef sT="v": pickup_data_unit(temps,sV,1);
+ ef sT="v+": pickup_data_unit(temps,sV,0);
+ else: if known scantokens("inf_"&sT): scantokens("inf_"&sT):=sV; fi
fi
fi
endfor
%------------------------------------------------------------------------------------------------
- mol_stru[0]:=nullpicture;
+ mol_pic[0]:=nullpicture;
enddef;
%==================================================================================================
def endfigm=
if f_EOF=0:
%--------------------------------------------------------------------------------------------
if scan_bit(sw_output,Fig):
+ beginfig(fig_num)
+ %------------------------------------------------------------------------------------------
if cntM>=1:
- if sw_ext_all=1: ext_to_font(EXT_ALL); fi
+ if sw_ext_all=1: ext_to_fig(EXT_ALL); fi
if sw_trimming>=1:
nA:=nC:=4095; nB:=nD:=-4095;
for i=1 upto cntM:
@@ -293,8 +266,7 @@ def endfigm=
if ypart(posM[1][i])<nC: nC:=ypart(posM[1][i]); fi
if ypart(posM[2][i])>nD: nD:=ypart(posM[2][i]); fi
endfor
- fig_wd:=nB-nA+2margin_lr;
- fig_ht:=nD-nC+2margin_tb;
+ fig_wd:=nB-nA+2margin_lr; fig_ht:=nD-nC+2margin_tb;
fsize:=(fig_wd,fig_ht);
for i=1 upto cntM:
posM[0][i]:=posM[0][i]+(margin_lr-nA,margin_tb-nC);
@@ -302,22 +274,20 @@ def endfigm=
endfor
fi
%----------------------------------------------------------------------------------------
- beginfig(char_num) w:=charwd:=fig_wd; h:=charht:=fig_ht; chardp:=0;
- if scan_bit(sw_frame,Outside): else: draw_corner((0,0),w,h,0.05); fi
- if scan_bit(sw_frame,Outside): draw_frame((0,0),w,h,thickness_frame); fi
+ if scan_bit(sw_frame,Outside): draw_frame((0,0),fig_wd,fig_ht,thickness_frame);
+ else: draw_corner((0,0),fig_wd,fig_ht,0.05);
+ fi
if scan_bit(sw_frame,Inside):
- draw_frame((margin_lr,margin_tb),w-2margin_lr,h-2margin_tb,thickness_frame);
+ draw_frame((margin_lr,margin_tb),fig_wd-2margin_lr,fig_ht-2margin_tb,thickness_frame);
fi
for i=1 upto cntM:
- addto currentpicture also mol_stru[i] shifted posM[0][i]; mol_stru[i]:=nullpicture;
+ addto currentpicture also mol_pic[i] shifted posM[0][i]; mol_pic[i]:=nullpicture;
if scan_bit(sw_frame,Mol): ext(draw_frame(p[i],w[i],h[i],thickness_frame)) fi
endfor
- if f_ext=1: addto currentpicture also mol_stru[0]; mol_stru[0]:=nullpicture; fi
- %----------------------------------------------------------------------------------------
+ if f_ext=1: addto currentpicture also mol_pic[0]; mol_pic[0]:=nullpicture; fi
else:
- fig_wd:=xpart(fsize); fig_ht:=ypart(fsize);
- beginfig(char_num) w:=charwd:=fig_wd; h:=charht:=fig_ht;
- draw (0,h)--(0,0)--(w,0)--(w,h)--(0,h)--(w,0) wpcs thickness_frame;
+ draw_frame((0,0),fig_wd,fig_ht,thickness_frame);
+ draw (0,fig_ht)--(fig_wd,0) wpcs thickness_frame;
fi
%-----------------------------------------------------------------------------------------
endfig;
@@ -325,9 +295,9 @@ def endfigm=
fi
%-------------------------------------------------------------------------------------------
if scan_bit(sw_output,Info):
- if scan_bit(sw_output,Table): proc_info_out(2);
- ef scan_bit(sw_output,Mcode): proc_info_out(3);
- else: proc_info_out(1);
+ if scan_bit(sw_output,Table): proc_info_out(2);
+ ef scan_bit(sw_output,Mcode): proc_info_out(3);
+ else: proc_info_out(1);
fi
fi
if scan_bit(sw_output,Mcode): proc_mc_out(0); fi
@@ -341,38 +311,28 @@ def endfigm=
fi
%---------------------------------------------------------------------------------------------
restore_par(parameter_list);
- if proc_end=1: scantokens("bye"); fi
endgroup;
enddef;
%-------------------------------------------------------------------------------------------------
def pickup_data_unit(expr t,v,f)=
begingroup
- save unit_cnt,f_end,semicol_cnt,f_match,var_n,tag_a,var_a,info_s;
- string tag_a[],var_a[],info_s;
- f_end:=unit_cnt:=semicol_cnt:=f_match:=inf_num:=0;
+ save unit_cnt,f_end,semic_cnt,f_match,var_n,tag_a,var_a,at_semic;
+ string tag_a[],var_a[];
+ numeric at_semic[];
+ f_end:=unit_cnt:=semic_cnt:=f_match:=inf_num:=0;
if t="n": var_n:=scantokens(v); fi
forever:
- temps:=readfrom file_name_input;
- if temps=EOF: f_EOF:=1; fi
- exitif temps=EOF;
- if subc(1,temps)="%":
- ef (subc(1,temps)="+")and(subc(2,temps)<>"-"):
- unit_cnt:=unit_cnt+1;
- if v="*": f_match:=1;
- ef t="n": if unit_cnt=var_n: f_match:=1; fi
- fi
+ sS:=readfrom file_input; if sS=EOF: f_EOF:=1; fi exitif sS=EOF;
+ if subc(1,sS)="%":
+ ef (subc(1,sS)="+")and(subc(2,sS)<>"-"):
+ unit_cnt:=unit_cnt+1; if v="*": f_match:=1; ef t="n": if unit_cnt=var_n: f_match:=1; fi fi
if f_match=1:
forever:
- temps:=readfrom file_name_input;
- if temps=EOF: f_EOF:=1; fi
- exitif temps=EOF;
- exitif subc(1,temps)="+";
- if subc(1,temps)<>"%":
- mc_row:=mc_row+1;
- fw_n:=scan_char(" ",temps,1,1);
- mc_indent[mc_row]:=fw_n-1;
- mc[mc_row]:=substring (fw_n-1,length(temps)) of temps;
- mc:=mc&mc[mc_row];
+ sS:=readfrom file_input;
+ if sS=EOF: f_EOF:=1; fi exitif sS=EOF; exitif subc(1,sS)="+";
+ if subc(1,sS)<>"%":
+ fw_n:=scan_char(" ",sS,1,1); mc_row:=mc_row+1; mc_indent[mc_row]:=fw_n-1;
+ mc[mc_row]:=substring(fw_n-1,length(sS)) of sS; mc:=mc&mc[mc_row];
fi
endfor
for i=1 upto inf_num:
@@ -381,60 +341,41 @@ def pickup_data_unit(expr t,v,f)=
f_end:=1;
else:
forever:
- temps:=readfrom file_name_input;
- if temps=EOF: f_EOF:=1; fi
- exitif temps=EOF;
- exitif (subc(1,temps)="+")and(subc(2,temps)="-");
+ sS:=readfrom file_input; if sS=EOF: f_EOF:=1; fi
+ exitif sS=EOF; exitif (substring(0,2) of sS)="+-";
endfor
fi
else:
- semicol_cnt:=count_semicol(temps);
- inf_num:=semicol_cnt+1;
+ semic_cnt:=split_semic(sS); inf_num:=semic_cnt+1;
for i=1 upto inf_num:
- if i<=semicol_cnt: info_s:=substring (at_semicol[i-1],at_semicol[i]-1) of temps;
- else: info_s:=substring (at_semicol[semicol_cnt],length(temps)) of temps;
+ if i<=semic_cnt: sI:=substring(at_semic[i-1],at_semic[i]-1) of sS;
+ else: sI:=substring(at_semic[semic_cnt],length(sS)) of sS;
fi
- at_colon:=scan_char(":",info_s,0,1);
- tag_a[i]:=substring (0,at_colon-1) of info_s;
- var_a[i]:=substring (at_colon,length(info_s)) of info_s;
+ nA:=scan_char(":",sI,0,1);
+ tag_a[i]:=substring(0,nA-1) of sI; var_a[i]:=substring(nA,length(sI)) of sI;
if t=tag_a[i]: if v=var_a[i]: f_match:=1; fi fi
endfor
fi
exitif f_end=1;
endfor
- if f=1: closefrom file_name_input; fi
+ if f=1: closefrom file_input; fi
endgroup;
enddef;
%--------------------------------------------------------------------------------------------------
vardef scan_bit(expr n,b)= if b>=1: odd(floor(n/b)) else: odd(floor((frac n)/b)) fi enddef;
%--------------------------------------------------------------------------------------------------
vardef scan_char(expr c,s,d,n)=
- save k,n_s;
- n_s:=0;
- if d=0: for k=n upto length(s): if subc(k,s)=c: n_s:=k; fi exitif n_s>0; endfor
- ef d=1: for k=n upto length(s): if subc(k,s)<>c: n_s:=k; fi exitif n_s>0; endfor
- ef d=-1: for k=length(s) downto n: if subc(k,s)<>c: n_s:=k; fi exitif n_s>0; endfor
+ nN:=0;
+ if d=0: for i=n upto length(s): if subc(i,s)=c: nN:=i; fi exitif nN>0; endfor
+ ef d=1: for i=n upto length(s): if subc(i,s)<>c: nN:=i; fi exitif nN>0; endfor
+ ef d=-1: for i=length(s) downto n: if subc(i,s)<>c: nN:=i; fi exitif nN>0; endfor
fi
- n_s
+ nN
enddef;
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-def set_def_MC=
- save /,//,/*,*/,**,*/*,~,^,',`,<,>,:,=,\,\\,*\,\*,*\*,@,@$,$,&,&$,#,##,{,},|,||,_,inside_def_MC;
- inside_def_MC:=1;
- pair |,||,##;
- | :=(_com,_mark); || := (_com,_moff); ##:=(_com,_len_e);
- _:=Me; \:=0; \\:=zero_dm; *\:=zero_wf; \*:=zero_zf; *\*:=zero_wv;
- let = ==op_equ; let : ==op_col; let ^ ==op_hat; let ~ ==op_til; let > ==op_lt; let ` ==op_bq;
- def @$ == jump_atom_abs enddef; def { == read_number( enddef; let } == ); def '==read_id enddef;
- def < == rot_angle enddef; def @ == jump_atom enddef; def & == cyc_atom enddef;
- def # == chg_length enddef; def $ == abs_adress enddef; def &$ == &.$ enddef;
- def / == group_si enddef; def // == group_dm enddef; def */ == group_wf enddef;
- def /* == group_zf enddef; def */* == group_wv enddef; def ** == group_nb enddef;
-enddef;
-%-------------------------------------------------------------------------------------------------
-vardef '(text TXT)= parts_cnt:=parts_cnt+1; read_mcf(parts_cnt)(TXT); parts_cnt enddef;
-vardef read_id(text TXT)=read_mcf(incr parts_cnt)(|,#crR,TXT,##,(_com,_rest)); parts_cnt enddef;
-vardef read_ud(text TXT)=read_mcf(incr parts_cnt)(dum,dum,|,TXT,(_com,_rest)); parts_cnt enddef;
+vardef '(text t)= parts_cnt:=parts_cnt+1; read_mcf(parts_cnt)(t); parts_cnt enddef;
+vardef read_id(text t)=read_mcf(incr parts_cnt)(|,#rate_cr,t,##,(_com,_rest)); parts_cnt enddef;
+vardef read_ud(text t)=read_mcf(incr parts_cnt)(dum,dum,|,t,(_com,_rest)); parts_cnt enddef;
vardef abs_adress primary n = if n LT 0:: (n+360)-4095 else:: n-4095 fi enddef;
primarydef a from_until b = (_from,a),(_until,b) enddef;
tertiarydef a op_equ b = if (known a)and(known b):: change_bond(a,b) else:: _nop fi enddef;
@@ -461,24 +402,37 @@ def group_nb secondary n = /n~nb enddef;
%-------------------------------------------------------------------------------------------------
def CP = com_par enddef; def CPe = com_par_ex(0) enddef; def CPx = com_par_ex(1) enddef;
%=================================================================================================
-def read_mcf(expr n)(text TXT)=
+def read_mcf(expr n)(text t)=
begingroup
- save list_cnt,nCP;
- if unknown inside_def_MC:: set_def_MC fi
- nCP:=list_cnt:=0;
- for list==TXT::
+ save nCP;
+ if unknown inside_MC::
+ save /,//,/*,*/,**,*/*,~,^,',`,<,>,:,=,\,\\,*\,\*,*\*,@,@$,$,&,&$,#,##,{,},|,||,_,inside_MC;
+ pair |,||,##;
+ | :=(_com,_mark); || := (_com,_moff); ##:=(_com,_len_e);
+ _:=Me; \:=0; \\:=zero_dm; *\:=zero_wf; \*:=zero_zf; *\*:=zero_wv;
+ let = ==op_equ; let : == op_col; let ^ ==op_hat; let ~ ==op_til; let > ==op_lt; let ` ==op_bq;
+ def { == read_number( enddef; let } == );
+ def @$ == jump_atom_abs enddef; def ' == read_id enddef;
+ def < == rot_angle enddef; def @ == jump_atom enddef; def & == cyc_atom enddef;
+ def # == chg_length enddef; def $ == abs_adress enddef; def &$ == &.$ enddef;
+ def / == group_si enddef; def // == group_dm enddef; def */ == group_wf enddef;
+ def /* == group_zf enddef; def */* == group_wv enddef; def ** == group_nb enddef;
+ inside_MC:=1;
+ fi
+ %----------------------------------------------------------------------------------------------
+ nCP:=0;
+ for list==t::
if known list::
- list_cnt:=list_cnt+1;
if pair list:: nCP:=nCP+1; comD[n][nCP]:=xpart(list); parD[n][nCP]:=ypart(list);
- elseif numeric list::
- if list==_nop:: message "unknown command in "AND decimal(n);
- elseif list>=parts_emb_start::
+ ef numeric list::
+ if list==_nop:: message "unknown command in "AND decimal(n);
+ ef list>=parts_emb_start::
for i==1 upto cntD[list]::
nCP:=nCP+1; comD[n][nCP]:=comD[list][i]; parD[n][nCP]:=parD[list][i];
endfor
else:: nCP:=nCP+1; comD[n][nCP]:=_mk_bond; parD[n][nCP]:=list;
fi
- elseif string list::
+ ef string list::
str_cnt:=str_cnt+1; strD[str_cnt]:=list;
nCP:=nCP+1; comD[n][nCP]:=_set_atom; parD[n][nCP]:=str_cnt;
fi
@@ -489,21 +443,18 @@ def read_mcf(expr n)(text TXT)=
endgroup
enddef;
%-------------------------------------------------------------------------------------------------
-vardef read_number(text TXT)=
- save ','`,:,nA,nB,nC;
- let : == from_until;
- def ' == +0.5 enddef;
- def '` == +0.5` enddef;
- parts_int:=parts_int+1;
+vardef read_number(text t)=
+ save :,','`;
+ let : == from_until; def ' == +0.5 enddef; def '` == +0.5` enddef; parts_int:=parts_int+1;
nA:=0;
- for list==TXT::
+ for list==t::
if known list::
if numeric list::
if list==_nop:: message "unknown command in "AND decimal(parts_int);
else:: nA:=nA+1; comD[parts_int][nA]:=_numeric; parD[parts_int][nA]:=list;
fi
- elseif pair list::
- if xpart(list)==_from:: nB:=ypart(list);
+ ef pair list::
+ if xpart(list)==_from:: nB:=ypart(list);
ef xpart(list)==_until:: nC:=ypart(list);
for i==nB upto nC::
nA:=nA+1; comD[parts_int][nA]:=_numeric; parD[parts_int][nA]:=i;
@@ -514,8 +465,7 @@ vardef read_number(text TXT)=
else:: message "unknown command in "AND decimal(parts_int);
fi
endfor
- cntD[parts_int]:=nA;
- parts_int %------- Retern value -------
+ cntD[parts_int]:=nA; parts_int
enddef;
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
def fuse_ring(expr a,b) =
@@ -526,270 +476,203 @@ enddef;
%-------------------------------------------------------------------------------------------------
def fuse_ring_bonds(expr a,b,c) =
CP(_jp_bond,xpart(a)) CP(_rot_ang,180) CP(_com,_len_s)
- if b==6:: CP(_chg_len,1) for i==1 upto c-1:: CP(_mk_bond,60) endfor
- elseif b==5:: if c==2:: CP(_chg_len,1.25) CP(_mk_bond,80)
- elseif c==3:: CP(_chg_len,1.1) CP(_mk_bond,78) CP(_mk_bond,72) fi
- elseif b==4:: CP(_chg_len,1.225) CP(_mk_bond,105) fi
- CP(_com,_len_e) if ypart(a)<=0:: CP(_cyc_eB,ypart(a)-c+1) else:: CP(_cyc_eB,ypart(a)) fi
+ if b==6:: CP(_chg_len,1) for i==1 upto c-1:: CP(_mk_bond,60) endfor
+ ef b==5:: if c==2:: CP(_chg_len,1.25) CP(_mk_bond,80)
+ ef c==3:: CP(_chg_len,1.1) CP(_mk_bond,78) CP(_mk_bond,72) fi
+ ef b==4:: CP(_chg_len,1.225) CP(_mk_bond,105) fi
+ CP(_com,_len_e) if ypart(a)<=0:: CP(_cyc_eB,ypart(a)-c+1) else:: CP(_cyc_eB,ypart(a)) fi
enddef;
%-------------------------------------------------------------------------------------------------
def fuse_ring_size(expr a,b,c) =
CP(_jp_bond,a) CP(_rot_ang,180) CP(_com,_len_s) CP(_chg_len,c DIV 10)
- if b==5:: CP(_mk_bond,72-((c-9) MUL 1.5)) CP(_mk_bond,72+(c-9)) CP(_mk_bond,72+(c-9))
- elseif b==6:: CP(_mk_bond,60-(c-8)) for i==1 upto 3:: CP(_mk_bond,60+((c-8) DIV 2)) endfor
- elseif b==7:: CP(_mk_bond,360 DIV 7-(c-8))
+ if b==5:: CP(_mk_bond,72-((c-9) MUL 1.5)) CP(_mk_bond,72+(c-9)) CP(_mk_bond,72+(c-9))
+ ef b==6:: CP(_mk_bond,60-(c-8)) for i==1 upto 3:: CP(_mk_bond,60+((c-8) DIV 2)) endfor
+ ef b==7:: CP(_mk_bond,360 DIV 7-(c-8))
for i==1 upto 4:: CP(_mk_bond,360 DIV 7+((c-8) DIV 2.5)) endfor
- elseif b==8:: CP(_mk_bond,45-(c-8)) for i==1 upto 5:: CP(_mk_bond,45+((c-8) DIV 3)) endfor fi
+ ef b==8:: CP(_mk_bond,45-(c-8)) for i==1 upto 5:: CP(_mk_bond,45+((c-8) DIV 3)) endfor fi
CP(_com,_len_e) if a<=0:: CP(_cyc_eB,a-b+2) else:: CP(_cyc_eB,a) fi
enddef;
%=================================================================================================
vardef change_bond(expr a,b) =
- save nCP;
- if known b::
- parts_int:=parts_int+1;
- nCP:=0;
- if numeric b::
- if (b>=si)and(b<=bd_)::
- if a>=parts_int_start::
- for i==1 upto cntD[a]::
- if comD[a][i]==_numeric::
- if frac parD[a][i]==0::
- com_par(_set_adr,parD[a][i]) com_par(_set_line,b)
- ef b==dl:: com_par(_set_adr,floor parD[a][i]) com_par(_set_line,dr)
- ef b==dr:: com_par(_set_adr,floor parD[a][i]) com_par(_set_line,dl)
- else:: com_par(_set_adr,floor parD[a][i]) com_par(_set_line,b)
- fi
- fi
- endfor
- else:: com_par(_set_adr,a) com_par(_set_line,b)
- fi
- elseif (b>=?3)and(b<=?8[15])::
- if numeric a::
+ if known b:: parts_int:=parts_int+1; nC:=0;
+ if numeric b::
+ if (b>=si)and(b<=bd_)::
if a>=parts_int_start::
for i==1 upto cntD[a]::
if comD[a][i]==_numeric::
- if b==Ph1:: fuse_ring(parD[a][i],6)
- CP(_set_adr,-2) CP(_set_line,dl) CP(_set_adr,-4) CP(_set_line,dl)
- ef b==Ph2:: fuse_ring(parD[a][i],6)
- CP(_set_adr,-1) CP(_set_line,dl) CP(_set_adr,-3) CP(_set_line,dl)
- CP(_set_adr,-5) CP(_set_line,dl)
- ef (b>=?5[11])and(b<=?5[15]):: fuse_ring_size(a,5,b-?5[11]+11)
- ef (b>=?6[11])and(b<=?6[15]):: fuse_ring_size(a,6,b-?6[11]+11)
- ef (b>=?7[11])and(b<=?7[15]):: fuse_ring_size(a,7,b-?7[11]+11)
- ef (b>=?8[11])and(b<=?8[15]):: fuse_ring_size(a,8,b-?8[11]+11)
- else:: fuse_ring(parD[a][i],b-?3+3)
+ if frac parD[a][i]==0:: com_par(_set_adr,parD[a][i]) com_par(_set_line,b)
+ ef b==dl:: com_par(_set_adr,floor parD[a][i]) com_par(_set_line,dr)
+ ef b==dr:: com_par(_set_adr,floor parD[a][i]) com_par(_set_line,dl)
+ else:: com_par(_set_adr,floor parD[a][i]) com_par(_set_line,b)
fi
- else::
- if b==?6::
- if (frac comD[a][i]==0)and(frac parD[a][i]==0)::
- fuse_ring_bonds((comD[a][i],parD[a][i]),6,4)
- ef frac comD[a][i]==0:: fuse_ring_bonds((comD[a][i],floor parD[a][i]),6,3)
- ef frac parD[a][i]==0:: fuse_ring_bonds((floor comD[a][i],parD[a][i]),6,3)
- else:: fuse_ring_bonds((floor comD[a][i],floor parD[a][i]),6,2)
+ fi
+ endfor
+ else:: com_par(_set_adr,a) com_par(_set_line,b)
+ fi
+ elseif (b>=?3)and(b<=?8[15])::
+ if numeric a::
+ if a>=parts_int_start::
+ for i==1 upto cntD[a]::
+ if comD[a][i]==_numeric::
+ if b==Ph1:: fuse_ring(parD[a][i],6)
+ CP(_set_adr,-2) CP(_set_line,dl) CP(_set_adr,-4) CP(_set_line,dl)
+ ef b==Ph2:: fuse_ring(parD[a][i],6)
+ CP(_set_adr,-1) CP(_set_line,dl) CP(_set_adr,-3) CP(_set_line,dl)
+ CP(_set_adr,-5) CP(_set_line,dl)
+ ef (b>=?5[11])and(b<=?5[15]):: fuse_ring_size(a,5,b-?5[11]+11)
+ ef (b>=?6[11])and(b<=?6[15]):: fuse_ring_size(a,6,b-?6[11]+11)
+ ef (b>=?7[11])and(b<=?7[15]):: fuse_ring_size(a,7,b-?7[11]+11)
+ ef (b>=?8[11])and(b<=?8[15]):: fuse_ring_size(a,8,b-?8[11]+11)
+ else:: fuse_ring(parD[a][i],b-?3+3)
fi
- ef b==?5::
- if (frac comD[a][i]==0)and(frac parD[a][i]==0)::
- fuse_ring_bonds((comD[a][i],parD[a][i]),5,3)
- ef frac comD[a][i]==0:: fuse_ring_bonds((comD[a][i],floor parD[a][i]),5,2)
- ef frac parD[a][i]==0:: fuse_ring_bonds((floor comD[a][i],floor parD[a][i]),5,2)
+ else::
+ if b==?6::
+ if (frac comD[a][i]==0)and(frac parD[a][i]==0)::
+ fuse_ring_bonds((comD[a][i],parD[a][i]),6,4)
+ ef frac comD[a][i]==0:: fuse_ring_bonds((comD[a][i],floor parD[a][i]),6,3)
+ ef frac parD[a][i]==0:: fuse_ring_bonds((floor comD[a][i],parD[a][i]),6,3)
+ else:: fuse_ring_bonds((floor comD[a][i],floor parD[a][i]),6,2)
+ fi
+ ef b==?5::
+ if (frac comD[a][i]==0)and(frac parD[a][i]==0)::
+ fuse_ring_bonds((comD[a][i],parD[a][i]),5,3)
+ ef frac comD[a][i]==0:: fuse_ring_bonds((comD[a][i],floor parD[a][i]),5,2)
+ ef frac parD[a][i]==0:: fuse_ring_bonds((floor comD[a][i],floor parD[a][i]),5,2)
+ fi
+ ef b==?4:: fuse_ring_bonds((comD[a][i],parD[a][i]),4,2)
+ ef b==?6[3]:: fuse_ring_bonds((comD[a][i],parD[a][i]),6,3)
+ ef b==?6[2]:: fuse_ring_bonds((comD[a][i],parD[a][i]),6,2)
+ ef b==?5[2]:: fuse_ring_bonds((comD[a][i],parD[a][i]),5,2)
+ ef b==Ph1:: fuse_ring_bonds((comD[a][i],parD[a][i]),6,4)
+ CP(_set_adr,-1) CP(_set_line,dl) CP(_set_adr,-3) CP(_set_line,dl)
+ ef b==Ph2:: fuse_ring_bonds((comD[a][i],parD[a][i]),6,4)
+ CP(_set_adr,-2) CP(_set_line,dl) CP(_set_adr,-4) CP(_set_line,dl)
fi
- ef b==?4:: fuse_ring_bonds((comD[a][i],parD[a][i]),4,2)
- ef b==?6[3]:: fuse_ring_bonds((comD[a][i],parD[a][i]),6,3)
- ef b==?6[2]:: fuse_ring_bonds((comD[a][i],parD[a][i]),6,2)
- ef b==?5[2]:: fuse_ring_bonds((comD[a][i],parD[a][i]),5,2)
- ef b==Ph1:: fuse_ring_bonds((comD[a][i],parD[a][i]),6,4)
- CP(_set_adr,-1) CP(_set_line,dl) CP(_set_adr,-3) CP(_set_line,dl)
- ef b==Ph2:: fuse_ring_bonds((comD[a][i],parD[a][i]),6,4)
- CP(_set_adr,-2) CP(_set_line,dl) CP(_set_adr,-4) CP(_set_line,dl)
fi
+ endfor
+ else::
+ if b==Ph1:: fuse_ring(a,6) CP(_set_adr,-2) CP(_set_line,dl)
+ CP(_set_adr,-4) CP(_set_line,dl)
+ ef b==Ph2:: fuse_ring(a,6) CP(_set_adr,-1) CP(_set_line,dl)
+ CP(_set_adr,-3) CP(_set_line,dl) CP(_set_adr,-5) CP(_set_line,dl)
+ ef (b>=?5[11])and(b<=?5[15]):: fuse_ring_size(a,5,b-?5[11]+11)
+ ef (b>=?6[11])and(b<=?6[15]):: fuse_ring_size(a,6,b-?6[11]+11)
+ ef (b>=?7[11])and(b<=?7[15]):: fuse_ring_size(a,7,b-?7[11]+11)
+ ef (b>=?8[11])and(b<=?8[15]):: fuse_ring_size(a,8,b-?8[11]+11)
+ else:: fuse_ring(a,b-?3+3)
fi
- endfor
- else::
- if b==Ph1:: fuse_ring(a,6) CP(_set_adr,-2) CP(_set_line,dl)
- CP(_set_adr,-4) CP(_set_line,dl)
- ef b==Ph2:: fuse_ring(a,6) CP(_set_adr,-1) CP(_set_line,dl)
- CP(_set_adr,-3) CP(_set_line,dl) CP(_set_adr,-5) CP(_set_line,dl)
- ef (b>=?5[11])and(b<=?5[15]):: fuse_ring_size(a,5,b-?5[11]+11)
- ef (b>=?6[11])and(b<=?6[15]):: fuse_ring_size(a,6,b-?6[11]+11)
- ef (b>=?7[11])and(b<=?7[15]):: fuse_ring_size(a,7,b-?7[11]+11)
- ef (b>=?8[11])and(b<=?8[15]):: fuse_ring_size(a,8,b-?8[11]+11)
- else:: fuse_ring(a,b-?3+3)
fi
- fi
- ef pair a::
- if b==?6:: fuse_ring_bonds(a,6,4)
- ef b==?5:: fuse_ring_bonds(a,5,3)
- ef b==?4:: fuse_ring_bonds(a,4,2)
- ef b==?6[3]:: fuse_ring_bonds(a,6,3)
- ef b==?6[2]:: fuse_ring_bonds(a,6,2)
- ef b==?5[2]:: fuse_ring_bonds(a,5,2)
- ef b==Ph1:: fuse_ring_bonds(a,6,4)
- CP(_set_adr,-1) CP(_set_line,dl) CP(_set_adr,-3) CP(_set_line,dl)
- ef b==Ph2:: fuse_ring_bonds(a,6,4)
- CP(_set_adr,-2) CP(_set_line,dl) CP(_set_adr,-4) CP(_set_line,dl)
+ ef pair a::
+ if b==?6:: fuse_ring_bonds(a,6,4)
+ ef b==?5:: fuse_ring_bonds(a,5,3)
+ ef b==?4:: fuse_ring_bonds(a,4,2)
+ ef b==?6[3]:: fuse_ring_bonds(a,6,3)
+ ef b==?6[2]:: fuse_ring_bonds(a,6,2)
+ ef b==?5[2]:: fuse_ring_bonds(a,5,2)
+ ef b==Ph1:: fuse_ring_bonds(a,6,4)
+ CP(_set_adr,-1) CP(_set_line,dl) CP(_set_adr,-3) CP(_set_line,dl)
+ ef b==Ph2:: fuse_ring_bonds(a,6,4)
+ CP(_set_adr,-2) CP(_set_line,dl) CP(_set_adr,-4) CP(_set_line,dl)
+ fi
fi
fi
+ elseif color b:: color_list[incr cntC]:=b; CPe(a)(_set_colorB,cntC)
fi
- elseif color b:: color_list[incr cntC]:=b; CPe(a)(_set_colorB,cntC)
- fi
- cntD[parts_int]:=nCP;
- parts_int %------- Retern value -------
+ cntD[parts_int]:=nC; parts_int
fi
enddef;
%-------------------------------------------------------------------------------------------------
vardef change_atom(expr a,b)=
- save nCP;
- if known b::
- parts_int:=parts_int+1;
- nCP:=0;
- if numeric b::
- if (b GT parts_emb_start)and(b<=parts_atom_end):: CPe(a)(_chg_atom,b)
- ef b==NH:: CPe(a)(_chg_atom,N) if NH<>xNH:: CP(_tmp_line,nl) fi
- CP(_com,_group_s) CPx(a)(_group_si,H) CP(_com,_group_e)
- ef b==N!:: CPe(a)(_chg_atom,N) CP(_com,_group_s) CPx(a)(_group_si,_) CP(_com,_group_e)
- ef b==N!2:: CPe(a)(_chg_atom,N) CP(_com,_group_s) CPx(a)(_group_si,!) CP(_com,_group_e)
- ef b==??:: CP(_com,_group_s) CP(_tmp_rot,35) CPx(a)(_group_si,_)
- CP(_tmp_rot,-35) CPx(a)(_group_si,_) CP(_com,_group_e)
- ef b==SOO:: CPe(a)(_chg_atom,S) CP(_com,_group_s) CP(_tmp_rot,35) CPx(a)(_group_dm,O)
- CP(_tmp_rot,-35) CPx(a)(_group_dm,O) CP(_com,_group_e)
- ef b==SO:: CPe(a)(_chg_atom,S) CP(_com,_group_s) CPx(a)(_group_dm,O) CP(_com,_group_e)
- ef b==n_:: CP(_com,_group_s) CP(_set_add,a_minus) CP(_chg_add,a) CP(_com,_group_e)
- ef b==p_:: CP(_com,_group_s) CP(_set_add,a_plus) CP(_chg_add,a) CP(_com,_group_e)
- fi
- ef pair b::
- CP(_com,_group_s)
- if a>=parts_emb_start::
- for i==1 upto cntD[a]::
- if comD[a][i]==_numeric::
- if xpart(b)==_group_wf::
- if frac parD[a][i]==0:: CP(_set_adr,parD[a][i]) CP(_group_wf,ypart(b))
- else:: CP(_set_adr,floor parD[a][i]) CP(_group_zf,ypart(b))
- fi
- ef xpart(b)==_group_zf::
- if frac parD[a][i]==0:: CP(_set_adr,parD[a][i]) CP(_group_zf,ypart(b))
- else:: CP(_set_adr,floor parD[a][i]) CP(_group_wf,ypart(b))
- fi
- else::
- CP(_set_adr,parD[a][i]) CP(xpart(b),ypart(b))
- fi
- else::
- CP(comD[a][i],parD[a][i])
- fi
- endfor
- else:: CP(_set_adr,a) CP(xpart(b),ypart(b))
+ if known b:: parts_int:=parts_int+1; nC:=0;
+ if numeric b::
+ if (b GT parts_emb_start)and(b<=parts_atom_end):: CPe(a)(_chg_atom,b)
+ ef b==NH:: CPe(a)(_chg_atom,N) if NH<>xNH:: CP(_tmp_line,nl) fi
+ CP(_com,_group_s) CPx(a)(_group_si,H) CP(_com,_group_e)
+ ef b==N!:: CPe(a)(_chg_atom,N) CP(_com,_group_s) CPx(a)(_group_si,_) CP(_com,_group_e)
+ ef b==N!2:: CPe(a)(_chg_atom,N) CP(_com,_group_s) CPx(a)(_group_si,!) CP(_com,_group_e)
+ ef b==??:: CP(_com,_group_s) CP(_tmp_rot,35) CPx(a)(_group_si,_)
+ CP(_tmp_rot,-35) CPx(a)(_group_si,_) CP(_com,_group_e)
+ ef b==SOO:: CPe(a)(_chg_atom,S) CP(_com,_group_s) CP(_tmp_rot,35) CPx(a)(_group_dm,O)
+ CP(_tmp_rot,-35) CPx(a)(_group_dm,O) CP(_com,_group_e)
+ ef b==SO:: CPe(a)(_chg_atom,S) CP(_com,_group_s) CPx(a)(_group_dm,O) CP(_com,_group_e)
+ ef b==n_:: CP(_com,_group_s) CP(_set_add,a_minus) CP(_chg_add,a) CP(_com,_group_e)
+ ef b==p_:: CP(_com,_group_s) CP(_set_add,a_plus) CP(_chg_add,a) CP(_com,_group_e)
+ fi
+ ef pair b::
+ CP(_com,_group_s)
+ if a>=parts_emb_start::
+ for i==1 upto cntD[a]::
+ if comD[a][i]==_numeric::
+ if xpart(b)==_group_wf::
+ if frac parD[a][i]==0:: CP(_set_adr,parD[a][i]) CP(_group_wf,ypart(b))
+ else:: CP(_set_adr,floor parD[a][i]) CP(_group_zf,ypart(b)) fi
+ ef xpart(b)==_group_zf::
+ if frac parD[a][i]==0:: CP(_set_adr,parD[a][i]) CP(_group_zf,ypart(b))
+ else:: CP(_set_adr,floor parD[a][i]) CP(_group_wf,ypart(b)) fi
+ else:: CP(_set_adr,parD[a][i]) CP(xpart(b),ypart(b)) fi
+ else:: CP(comD[a][i],parD[a][i]) fi
+ endfor
+ else:: CP(_set_adr,a) CP(xpart(b),ypart(b))
+ fi
+ CP(_com,_group_e)
+ ef color b:: color_list[incr cntC]:=b; CPe(a)(_set_colorA,cntC)
fi
- CP(_com,_group_e)
- ef color b:: color_list[incr cntC]:=b; CPe(a)(_set_colorA,cntC)
- fi
- cntD[parts_int]:=nCP;
- parts_int %------- Retern value -------
+ cntD[parts_int]:=nC; parts_int
fi
enddef;
%-------------------------------------------------------------------------------------------------
-def com_par(expr a,b)= nCP:=nCP+1; comD[parts_int][nCP]:=a; parD[parts_int][nCP]:=b; enddef;
+def com_par(expr a,b)= nC:=nC+1; comD[parts_int][nC]:=a; parD[parts_int][nC]:=b; enddef;
%-------------------------------------------------------------------------------------------------
def com_par_ex(expr f)(expr c)(expr a,b)=
if c>=parts_emb_start::
for i==1 upto cntD[c]::
if comD[c][i]==_numeric:: com_par(_set_adr,parD[c][i]) com_par(a,b)
- ef f==1:: com_par(comD[c][i],parD[c][i]) fi
+ ef f==1:: com_par(comD[c][i],parD[c][i]) fi
endfor
else:: com_par(_set_adr,c) com_par(a,b)
fi
enddef;
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-def puts(expr POS)(expr STR)=
- begingroup
- save temp_c,temp_p;
- pair temp_p;
- string temp_c;
- temp_p:=POS;
- nC:=defaultscale*defaultsize;
- if defaultfont="draw":
- for i=1 upto length(STR):
- temp_c:=subc(i,STR);
- draw_char(temp_c,temp_p,nC,ratio_thickness_char*nC,0);
- temp_p:=temp_p+(nC*tbl_char_wd[ASCII(temp_c)],0);
- endfor
- else:
- for i=1 upto length(STR):
- temp_c:=subc(i,STR);
- temp_picture:=temp_c infont defaultfont scaled defaultscale;
- addto currentpicture also temp_picture shifted temp_p;
- temp_p:=temp_p+(lrcorner temp_picture-llcorner temp_picture);
- endfor
- fi
- endgroup
-enddef;
-%=================================================================================================
def ext_setup=
pickup pencircle scaled ext_defaultline;
- dotlabeldiam:=3;
- labeloffset:=3;
- save em;
- em=defaultscale*defaultsize;
- defaultfont:=mpfont;
+ dotlabeldiam:=3; labeloffset:=3; em:=defaultscale*defaultsize; defaultfont:=mpfont;
+ let ** = scaled; let << = rotated; let => = shifted; __ = (1,0); An:=cntA; Bn:=cntB;
+ primarydef a /* b = point b of a enddef;
enddef;
%-------------------------------------------------------------------------------------------------
-def add_to_molecule(text TXT)=
+def add_to_molecule(text t)=
begingroup
save w,h,n,l,p,am,aw,A,B,plus,minus,lonepair,__,**,=>,<<,/*;
numeric A[]dir,B[]up,A[]ang,B[]ang;
pair __,p[],A[],B[]s,B[]e,B[]m,A[]up,A[]left,A[]right,A[]down,B[]up,B[]left,B[]right,B[]down;
path B[];
- ext_setup;
- def plus = circled_plus_add enddef;
- def minus = circled_minus_add enddef;
+ def plus = circled_plus_add enddef; def minus = circled_minus_add enddef;
def lonepair = lone_pair_add enddef;
- let ** = scaled;
- let << = rotated;
- let => = shifted;
- __ = (1,0);
- primarydef a /* b = point b of a enddef;
- %----------------------------------------------
- w:=mol_wd; h:=mol_ht; l:=blen; aw:=atom_wd;
- p0:=(minX,minY);
- An:=cntA; Bn:=cntB;
- lonepairdiam:=0.3aw;
- lonepairspace:=.7aw;
- circlediam:=.6aw;
- circlepen:=.2;
+ ext_setup;
+ w:=mol_wd; h:=mol_ht; l:=blen; aw:=atom_wd; p0:=(minX,minY);
+ lonepairdiam:=0.3aw; lonepairspace:=.7aw; circlediam:=.6aw; circlepen:=.2;
for i=1 upto cntA:
A[i]:=posA[i]; A[i]ang:=angX[i]; A[i]up:=dir(angX[i]);
A[i]left:=dir(angX[i]+90); A[i]right:=dir(angX[i]-90); A[i]down:=dir(angX[i]+180);
endfor
for i=1 upto cntB:
- B[i]s:=posA[sB[i]]; B[i]e:=posA[eB[i]]; B[i]m:=0.5[B[i]s,B[i]e];
- B[i]:=B[i]s--B[i]e;
+ B[i]s:=posA[sB[i]]; B[i]e:=posA[eB[i]]; B[i]m:=0.5[B[i]s,B[i]e]; B[i]:=B[i]s--B[i]e;
B[i]ang:=angB[i]; B[i]up:=dir(angB[i]);
B[i]down:=dir(angB[i]+180); B[i]left:=dir(angB[i]+90); B[i]right:=dir(angB[i]-90);
endfor
- TXT addto mol_stru[cntM] also currentpicture; clearit;
+ t addto mol_pic[cntM] also currentpicture; clearit;
endgroup;
enddef;
%-------------------------------------------------------------------------------------------------
-def ext_to_font(text TXT)=
+def ext_to_fig(text t)=
begingroup
save w,h,An,Bn,wd,ht,n,p,am,aw,__,**,<<,=>,/*;
pair __,p[];
- let ** = scaled;
- let << = rotated;
- let => = shifted;
- primarydef a /* b = point b of a enddef;
- __ = (1,0);
- %----------------------------------------------------------------------
ext_setup;
- w:=xpart(fsize);
- h:=ypart(fsize);
- An:=cntA;
- Bn:=cntB;
- w0:=w-2margin_lr;
- h0:=h-2margin_tb;
- p0:=(margin_lr,margin_tb);
- aw:=atom_wd;
- n:=cntM;
+ w:=xpart(fsize); h:=ypart(fsize);
+ w0:=w-2margin_lr; h0:=h-2margin_tb; p0:=(margin_lr,margin_tb); aw:=atom_wd; n:=cntM;
for i=1 upto n: p[i]:=posM[1][i]; w[i]:=wdM[i]; h[i]:=htM[i]; endfor
- TXT addto mol_stru[0] also currentpicture; clearit; f_ext:=1;
+ t addto mol_pic[0] also currentpicture; clearit; f_ext:=1;
endgroup;
enddef;
%-------------------------------------------------------------------------------------------------
@@ -798,40 +681,39 @@ vardef circled_plus_add=
image(draw fullcircle scaled nA wpcs nB;
draw (-.5nA,0)--(.5nA,0) wpcs nB; draw (0,-.5nA)--(0,.5nA) wpcs nB;)
enddef;
-%--------------------------------------------------------------------
+%-------------------------------------------------------------------------------------------------
vardef circled_minus_add=
nA:=circlediam; nB:=circlepen;
image(draw fullcircle scaled nA wpcs nB; draw (-.5nA,0)--(.5nA,0) wpcs nB;)
enddef;
-%--------------------------------------------------------------------
-vardef lone_pair_add expr ANG=
- image(draw (0,0) wpcs lonepairdiam; draw ((0,lonepairspace) rotated ANG) wpcs lonepairdiam;)
+%-------------------------------------------------------------------------------------------------
+vardef lone_pair_add expr n=
+ image(draw (0,0) wpcs lonepairdiam; draw ((0,lonepairspace) rotated n) wpcs lonepairdiam;)
enddef;
%=================================================================================================
-def MCat(expr FW,FH)(text TXT)=
- save_mposition:=mposition; mposition:=(FW,FH); MC(TXT) mposition:=save_mposition;
-enddef;
+def MCat(expr w,h)(text t)= mpos:=mposition; mposition:=(w,h); MC(t) mposition:=mpos; enddef;
%-------------------------------------------------------------------------------------------------
-def MC(text TXT)=
+def MC(text t)=
begingroup
- save f_bra,strAT,cnt_group,temp_lenE,temp_lenF,temp_cntB,f_term,f_at,f_lineT,f_rotT,
- f_lenT,f_envT,temp_c,factor,m_wd,m_ht,temp_p,nH,nW;
- string temp_c;
- pair temp_p;
+ save f_bra,strAT,temp_lenE,temp_lenF,temp_cntB,f_term,f_at,f_lineT,f_rotT,angL,lenL,cpos,tpos,
+ f_lenT,f_envT,factor,m_wd,m_ht,raise_pos,slen,sdir,char_wd,char_ht,tcol,f_col,knownA,
+ markA,markB,saveA,saveB,bondL,lenT,lineT,angT,rotT,envT,envB,rate_cr,posBs,posBe,
+ f_char,group_par,group_cnt,group_com,colorA,colorB;
+ numeric f_char[],group_com[][],group_par[][],group_cnt[],colorA[],colorB[];
+ pair cpos,tpos,raise_pos,posBs,posBe;
+ path frameA[];
%-----------------------------------------------------------------------------------------------
if (sw_expand=1)or(scan_bit(sw_output,MOL2k))or(scan_bit(sw_output,MOL3k)):
- expand_set; crR:=1; else: crR:=-ratio_chain_ring;
+ expand_set; rate_cr:=1; else: rate_cr:=-ratio_chain_ring;
fi
- cntA:=cntB:=cntC:=cnt_group:=0; strD[0]:="C"; str_cnt:=2000;
+ cntA:=cntB:=cntC:=group_num:=0; strD[0]:=cC; str_cnt:=2000;
%-----------------------------------------------------------------------------------------------
- fig_wd:=xpart(fsize);
- fig_ht:=ypart(fsize);
- margin_lr:=xpart(fmargin);
- margin_tb:=ypart(fmargin);
+ fig_wd:=xpart(fsize); fig_ht:=ypart(fsize);
+ margin_lr:=xpart(fmargin); margin_tb:=ypart(fmargin);
%===============================================================================================
- read_mcf(0)(TXT,(_com,_term));
+ read_mcf(0)(t,(_com,_term));
proc_bond_atom(0)(1);
- if (cnt_group>0)and(not scan_bit(sw_abbreviate,Group)): read_group(0)(1); fi
+ if (group_num>0)and(not scan_bit(sw_abbreviate,Group)): read_group(0)(1); fi
char_use_check;
%-scaling---------------------------------------------------------------------------------------
if blength>1: blen:=blength; proc_size_setup; proc_skeleton(0); proc_scaling;
@@ -845,11 +727,11 @@ def MC(text TXT)=
proc_skeleton(0); proc_scaling;
if (mol_ht/mol_wd)>(m_ht/m_wd):
if ypart(msize)>1: factor:=ypart(msize)/mol_ht;
- else: factor:=((fig_ht-2margin_tb)*ypart(msize))/mol_ht;
+ else: factor:=((fig_ht-2margin_tb)*ypart(msize))/mol_ht;
fi
else:
if xpart(msize)>1: factor:=xpart(msize)/mol_wd;
- else: factor:=((fig_wd-2margin_lr)*xpart(msize))/mol_wd;
+ else: factor:=((fig_wd-2margin_lr)*xpart(msize))/mol_wd;
fi
fi
exitif (factor>=1-eps)and(factor<=1+eps); blen:=blen*factor; proc_size_setup;
@@ -859,25 +741,22 @@ def MC(text TXT)=
%-----------------------------------------------------------------------------------------------
for i=1 upto cntA:
if addA[i]<>0:
- temp_c:=char(addA[i]);
- if temp_c="+": chargeA[i]:=1; elseif temp_c="-": chargeA[i]:=-1; else: chargeA[i]:=0; fi
+ tempc:=char(addA[i]);
+ if tempc="+": chargeA[i]:=1; ef tempc="-": chargeA[i]:=-1; else: chargeA[i]:=0; fi
else: chargeA[i]:=0;
fi
endfor
%===============================================================================================
if scan_bit(sw_output,Fig):
%-draw atom-----------------------------------------------------------------------------------
- if sw_numbering=0: for i=1 upto cntA: draw_atom(i); endfor fi
+ if sw_numbering=0: for i=1 upto cntA: if numS[i]<>0: draw_atom(i); fi endfor fi
%-draw add to atom----------------------------------------------------------------------------
if (not scan_bit(sw_numbering,Atom))and(not scan_bit(sw_numbering,Bond)):
for i=1 upto cntA:
if addA[i]<>0:
nA:=angX[i]+add_rot[i]; nC:=nA mod 90;
- if numS[i]=0: nB:=.5atom_wd;
- else: nB:=.85wdA[i]+iif(nC<45,sind(nC),cosd(nC))*.5wdA[i];
- fi
- temp_p:=sfrt(posA[i]-(.35atom_wd,.35atom_wd),nB,nA);
- draw_char(temp_c,temp_p,atom_wd,bond_pen_wd*ratio_char_bond,0);
+ if numS[i]=0: nB:=.5atom_wd; else: nB:=atom_wd; fi
+ draw_char(char(addA[i]),sfrt(posA[i],nB,nA));
fi
endfor
fi
@@ -888,8 +767,7 @@ def MC(text TXT)=
if scan_bit(sw_numbering,Atom):
for i=1 upto cntA:
if (i>=numbering_start)and(i<=numbering_end):
- defaultscale:=.18blen/defaultsize;
- nH:=1.2defaultsize*defaultscale;
+ defaultscale:=.18blen/defaultsize; nH:=1.2defaultsize*defaultscale;
if i<=9: nW:=nH; ef i<=99: nW:=1.3nH; else: nW:=1.9nH; fi
erase fill unitsquare xscaled nW yscaled nH shifted (posA[i]-(nW/2,nH/2));
draw unitsquare xscaled nW yscaled nH shifted (posA[i]-(nW/2,nH/2)) wpcs 0.1;
@@ -901,35 +779,25 @@ def MC(text TXT)=
if scan_bit(sw_numbering,Bond):
for i=1 upto cntB:
if (i>=numbering_start)and(i<=numbering_end):
- defaultscale:=.18blen/defaultsize;
- nH:=1.2defaultsize*defaultscale;
+ defaultscale:=.18blen/defaultsize; nH:=1.2defaultsize*defaultscale;
if i<=9: nW:=nH; ef i<=99: nW:=1.3nH; else: nW:=1.9nH; fi
- nH:=defaultsize*defaultscale; temp_p:=.5[posA[sB[i]],posA[eB[i]]];
- erase fill unitsquare xscaled nW yscaled nH shifted (temp_p-(nW/2,nH/2));
- draw unitsquare xscaled nW yscaled nH shifted (temp_p-(nW/2,nH/2)) wpcs 0.1;
- label(decimal(i),temp_p);
+ nH:=defaultsize*defaultscale; tpos:=.5[posA[sB[i]],posA[eB[i]]];
+ erase fill unitsquare xscaled nW yscaled nH shifted (tpos-(nW/2,nH/2));
+ draw unitsquare xscaled nW yscaled nH shifted (tpos-(nW/2,nH/2)) wpcs 0.1;
+ label(decimal(i),tpos);
fi
endfor
fi
%---------------------------------------------------------------------------------------------
- if xpart(mposition)>1: sftX:=xpart(mposition)-minX;
- else: sftX:=margin_lr-minX+(fig_wd-mol_wd-2margin_lr)*xpart(mposition);
- fi
- if ypart(mposition)>1: sftY:=ypart(mposition)-minY;
- else: sftY:=margin_tb-minY+(fig_ht-mol_ht-2margin_tb)*ypart(mposition);
- fi
- cntM:=cntM+1;
- posM[0][cntM]:=(sftX,sftY);
- posM[1][cntM]:=(minX+sftX,minY+sftY);
- posM[2][cntM]:=(maxX+sftX,maxY+sftY);
- wdM[cntM]:=mol_wd;
- htM[cntM]:=mol_ht;
- mol_stru[cntM]:=currentpicture;
+ if xpart(mposition)>1: nX:=xpart(mposition)-minX;
+ else: nX:=margin_lr-minX+(fig_wd-mol_wd-2margin_lr)*xpart(mposition); fi
+ if ypart(mposition)>1: nY:=ypart(mposition)-minY;
+ else: nY:=margin_tb-minY+(fig_ht-mol_ht-2margin_tb)*ypart(mposition); fi
+ cntM:=cntM+1; posM[0][cntM]:=(nX,nY);
+ posM[1][cntM]:=(minX+nX,minY+nY); posM[2][cntM]:=(maxX+nX,maxY+nY);
+ wdM[cntM]:=mol_wd; htM[cntM]:=mol_ht;
+ mol_pic[cntM]:=currentpicture;
clearit;
- if cntC>=1:
- for i=1 upto cntA: if colorA[i]<>0: colorA[i]:=0; fi endfor
- for i=1 upto cntB: if colorB[i]<>0: colorB[i]:=0; fi endfor
- fi
fi
if sw_output>=Calc: proc_calc(0); fi
endgroup;
@@ -937,51 +805,48 @@ enddef;
%-------------------------------------------------------------------------------------------------
def add_group=
if f_at=1: nE:=getA(adrT); check_adrA(nE); else: nE:=cntA+1; fi
- cnt_group:=cnt_group+1; cnt_group[cnt_group]:=0;
- store_group(_jp_absA,nE)
- store_group(_com,_len_s)
+ group_num:=group_num+1; group_cnt[group_num]:=0;
+ store_group(_jp_absA,nE) store_group(_com,_len_s)
if lineT<>nb: store_group(_tmp_line,lineT) fi
if rotT<>0: store_group(_rot_ang,rotT) fi
- if lenT<>crR: store_group(_chg_len,lenT)
- ef bondL<>crR: if bondL>=0: store_group(_chg_len,-bondL) else: store_group(_chg_len,bondL) fi
+ if lenT<>rate_cr: store_group(_chg_len,lenT)
+ ef bondL<>rate_cr:
+ if bondL>=0: store_group(_chg_len,-bondL) else: store_group(_chg_len,bondL) fi
fi
if envT<>hz: store_group(_chg_env,envT) fi
if lineT=nl: store_group(_chg_len,_size_atom) store_group(_adj_ang,0) fi
if lineT<>nb: store_group(_mk_bond,0) fi
- for i=1 upto cntD[par]: store_group(comD[par][i],parD[par][i]) endfor
- store_group(_com,_len_e)
- store_group(_chg_env,hz)
- store_group(_com,_term)
+ for i=1 upto cntD[nP]: store_group(comD[nP][i],parD[nP][i]) endfor
+ store_group(_com,_len_e) store_group(_chg_env,hz) store_group(_com,_term)
if f_lineT=0: lineT:=si; fi
- if f_lenT=0: lenT:=crR; fi
+ if f_lenT=0: lenT:=rate_cr; fi
if f_rotT=0: rotT:=0; fi
if f_envT=0: envT:=hz; fi
enddef;
%-------------------------------------------------------------------------------------------------
def store_group(expr a,b)=
- cnt_group[cnt_group]:=cnt_group[cnt_group]+1;
- com_group[cnt_group][cnt_group[cnt_group]]:=a; par_group[cnt_group][cnt_group[cnt_group]]:=b;
+ group_cnt[group_num]:=group_cnt[group_num]+1;
+ group_com[group_num][group_cnt[group_num]]:=a; group_par[group_num][group_cnt[group_num]]:=b;
enddef;
%=================================================================================================
def read_group(expr a)(expr n)=
- save_cnt_group:=cnt_group;
- save_cntD:=cntD[a];
- for i=n upto cnt_group:
- for j=1 upto cnt_group[i]:
- cntD[a]:=cntD[a]+1; comD[a][cntD[a]]:=com_group[i][j]; parD[a][cntD[a]]:=par_group[i][j];
+ save_group_cnt:=group_num; save_cntD:=cntD[a];
+ for i=n upto group_num:
+ for j=1 upto group_cnt[i]:
+ cntD[a]:=cntD[a]+1; comD[a][cntD[a]]:=group_com[i][j]; parD[a][cntD[a]]:=group_par[i][j];
endfor
endfor
proc_bond_atom(a)(save_cntD+1);
- if cnt_group>save_cnt_group: read_group(a)(save_cnt_group+1); fi
+ if group_num>save_group_cnt: read_group(a)(save_group_cnt+1); fi
enddef;
%=================================================================================================
-def draw_frame(expr PS,LX,LY,PN)=
- draw ((0,0)--(LX,0)--(LX,LY)--(0,LY)--cycle) shifted PS withpen pensquare scaled PN;
+def draw_frame(expr p,x,y,n)=
+ draw ((0,0)--(x,0)--(x,y)--(0,y)--cycle) shifted p withpen pensquare scaled n;
enddef;
%-------------------------------------------------------------------------------------------------
-def draw_corner(expr PS,LX,LY,PN)=
- draw( 0, 0) shifted PS wpcs PN; draw(LX, 0) shifted PS wpcs PN;
- draw(LX,LY) shifted PS wpcs PN; draw( 0,LY) shifted PS wpcs PN;
+def draw_corner(expr p,x,y,n)=
+ draw(0,0) shifted p wpcs n; draw(x,0) shifted p wpcs n;
+ draw(x,y) shifted p wpcs n; draw(0,y) shifted p wpcs n;
enddef;
%-------------------------------------------------------------------------------------------------
def proc_size_setup=
@@ -993,27 +858,25 @@ def proc_size_setup=
enddef;
%-------------------------------------------------------------------------------------------------
def proc_scaling=
- minX:=minY:=4095;
- maxX:=maxY:=-4095;
+ minX:=minY:=4095; maxX:=maxY:=-4095;
for i=1 upto cntA:
- xpos:=xpart(posA[i]);
- ypos:=ypart(posA[i]);
+ nX:=xpart(posA[i]); nY:=ypart(posA[i]);
if numS[i]<>0:
nU:=nD:=nP:=nL:=nR:=0;
for j=1 upto length(strD[numS[i]]):
- temp_c:=subc(j,strD[numS[i]]);
- if (temp_c="^"): nU:=.5atom_wd;
- elseif (temp_c="_"): nD:=.5atom_wd;
- elseif (temp_c<>"{")and(temp_c<>"}"): nP:=nP+atom_wd*tbl_char_wd[ASCII(temp_c)];
+ tempc:=subc(j,strD[numS[i]]);
+ if tempc="^": nU:=.5atom_wd;
+ ef tempc="_": nD:=.5atom_wd;
+ ef (tempc<>"{")and(tempc<>"}"): nP:=nP+atom_wd*tbl_char_wd[ASCII(tempc)];
fi
endfor
if (angX[i]<=90)or(angX[i]>=270): nR:=nP; else: nL:=nP; fi
- if (xpos-nL+.5atom_wd)<minX: minX:=xpos-nL+.5atom_wd; fi
- if (xpos+nR-.5atom_wd)>maxX: maxX:=xpos+nR-.5atom_wd; fi
- if (ypos-nD-.5atom_wd)<minY: minY:=ypos-nD-.5atom_wd; fi
- if (ypos+nU+.5atom_wd)>maxY: maxY:=ypos+nU+.5atom_wd; fi
- else: if xpos<minX: minX:=xpos; fi if xpos>maxX: maxX:=xpos; fi
- if ypos<minY: minY:=ypos; fi if ypos>maxY: maxY:=ypos; fi
+ if (nX-nL+.5atom_wd)<minX: minX:=nX-nL+.5atom_wd; fi
+ if (nX+nR-.5atom_wd)>maxX: maxX:=nX+nR-.5atom_wd; fi
+ if (nY-nD-.5atom_wd)<minY: minY:=nY-nD-.5atom_wd; fi
+ if (nY+nU+.5atom_wd)>maxY: maxY:=nY+nU+.5atom_wd; fi
+ else: if nX<minX: minX:=nX; fi if nX>maxX: maxX:=nX; fi
+ if nY<minY: minY:=nY; fi if nY>maxY: maxY:=nY; fi
fi
endfor
mol_wd:=maxX-minX; mol_ht:=maxY-minY;
@@ -1033,49 +896,50 @@ enddef;
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
def proc_bond_atom(expr a)(expr n)=
f_bra:=f_term:=rotT:=f_lineT:=f_rotT:=f_lenT:=f_envT:=envT:=envB:=strAT:=f_at:=0;
- bondL:=crR; lenT:=crR; sB[0]:=0; eB[0]:=1; lineT:=si;
+ bondL:=rate_cr; lenT:=rate_cr; sB[0]:=0; eB[0]:=1; lineT:=si;
addAT:=markA:=markB:=saveA:=saveB:=0;
%-----------------------------------------------------------------------------------------------
- for i=n upto cntD[a]: com:=comD[a][i]; par:=parD[a][i];
- if com=_mk_bond: if (par=0)and(rotT<>0): rotT:=0; fi add_atom(0);
- ef com=_set_adr: adrT:=par;
- ef com=_com: if par=_mark: saveA:=markA; saveB:=markB; markA:=cntA; markB:=cntB;
- ef par=_rest: markA:=saveA; markB:=saveB;
- ef par=_moff: markA:=markB:=0;
- ef par=_term: termA;
- ef par=_len_s: temp_lenE:=bondL; ef par=_len_e: bondL:=temp_lenE;
- ef par=_len_ss: temp_lenF:=bondL; ef par=_len_ee: bondL:=temp_lenF;
- ef par=_group_s: f_at:=1; if lineT<>si: f_lineT:=1; fi if rotT<>0: f_rotT:=1; fi
- if lenT<>crR: f_lenT:=1; fi if envT<>hz: f_envT:=1; fi
- ef par=_group_e: f_at:=0; f_lineT:=f_rotT:=f_lenT:=f_envT:=rotT:=envT:=0;
- lineT:=si; lenT:=crR;
- fi
- ef com=_set_atom: strAT:=par;
- ef com=_group_si: add_group;
- ef com=_group_dm: lineT:=dm; add_group;
- ef com=_group_wf: lineT:=wf; add_group;
- ef com=_group_zf: lineT:=zf; add_group;
- ef com=_jp_bond: termA; nA:=getB(par); check_adrB(nA); sB[cntB+1]:=sB[nA]; f_bra:=1;
- ef com=_jp_atom: termA; nA:=getA(par); check_adrA(nA); sB[cntB+1]:=nA; f_bra:=1;
- ef com=_jp_absA: sB[cntB+1]:=par; f_bra:=1; temp_cntB:=cntB;
- ef com=_chg_atom: numS[getA(adrT)]:=parD[par][1];
- ef com=_chg_len: if par=_ring_len: bondL:=ringL; else: bondL:=par; fi
- ef com=_get_len: if par=_tmp_len: if bondL=crR: bondL:=lenT; fi
- ef par=_ring_len: if lenT<>crR: bondL:=lenT; else: if bondL<0: bondL:=1; fi fi
- else: ringL:=lenB[getB(par)]; fi
- ef com=_tmp_len: lenT:=par;
- ef com=_set_line: lineB[getB(adrT)]:=par;
- ef com=_tmp_line: lineT:=par;
- ef com=_tmp_rot: rotT:=par;
- ef com=_cyc: check_adrA(getA(par)); add_atom(getA(par));
- ef com=_cyc_eB: add_atom(eB[getB(par)]);
- ef com=_cyc_sB: add_atom(sB[getB(par)]);
- ef com=_chg_env: envB:=par;
- ef com=_tmp_env: envT:=par;
- ef com=_set_colorA: colorA[getA(adrT)]:=par;
- ef com=_set_colorB: colorB[getB(adrT)]:=par;
- ef com=_set_add: addAT:=par;
- ef com=_chg_add: addA[getA(par)]:=addAT; addAT:=0; if rotT<>0: add_rot[getA(par)]:=rotT; fi
+ for i=n upto cntD[a]: nC:=comD[a][i]; nP:=parD[a][i];
+ if nC=_mk_bond: if (nP=0)and(rotT<>0): rotT:=0; fi add_atom(0);
+ ef nC=_set_adr: adrT:=nP;
+ ef nC=_com: if nP=_mark: saveA:=markA; saveB:=markB; markA:=cntA; markB:=cntB;
+ ef nP=_rest: markA:=saveA; markB:=saveB;
+ ef nP=_moff: markA:=markB:=0;
+ ef nP=_term: termA;
+ ef nP=_len_s: temp_lenE:=bondL; ef nP=_len_e: bondL:=temp_lenE;
+ ef nP=_len_ss: temp_lenF:=bondL; ef nP=_len_ee: bondL:=temp_lenF;
+ ef nP=_group_s: f_at:=1; if lineT<>si: f_lineT:=1; fi if rotT<>0: f_rotT:=1; fi
+ if lenT<>rate_cr: f_lenT:=1; fi if envT<>hz: f_envT:=1; fi
+ ef nP=_group_e: f_at:=0; f_lineT:=f_rotT:=f_lenT:=f_envT:=rotT:=envT:=0;
+ lineT:=si; lenT:=rate_cr;
+ fi
+ ef nC=_set_atom: strAT:=nP;
+ ef nC=_group_si: add_group;
+ ef nC=_group_dm: lineT:=dm; add_group;
+ ef nC=_group_wf: lineT:=wf; add_group;
+ ef nC=_group_zf: lineT:=zf; add_group;
+ ef nC=_jp_bond: termA; nA:=getB(nP); check_adrB(nA); sB[cntB+1]:=sB[nA]; f_bra:=1;
+ ef nC=_jp_atom: termA; nA:=getA(nP); check_adrA(nA); sB[cntB+1]:=nA; f_bra:=1;
+ ef nC=_jp_absA: sB[cntB+1]:=nP; f_bra:=1; temp_cntB:=cntB;
+ ef nC=_chg_atom: numS[getA(adrT)]:=parD[nP][1];
+ ef nC=_chg_len: if nP=_ring_len: bondL:=ringL; else: bondL:=nP; fi
+ ef nC=_get_len: if nP=_tmp_len: if bondL=rate_cr: bondL:=lenT; fi
+ ef nP=_ring_len:
+ if lenT<>rate_cr: bondL:=lenT; else: if bondL<0: bondL:=1; fi fi
+ else: ringL:=lenB[getB(nP)]; fi
+ ef nC=_tmp_len: lenT:=nP;
+ ef nC=_set_line: lineB[getB(adrT)]:=nP;
+ ef nC=_tmp_line: lineT:=nP;
+ ef nC=_tmp_rot: rotT:=nP;
+ ef nC=_cyc: check_adrA(getA(nP)); add_atom(getA(nP));
+ ef nC=_cyc_eB: add_atom(eB[getB(nP)]);
+ ef nC=_cyc_sB: add_atom(sB[getB(nP)]);
+ ef nC=_chg_env: envB:=nP;
+ ef nC=_tmp_env: envT:=nP;
+ ef nC=_set_colorA: colorA[getA(adrT)]:=nP;
+ ef nC=_set_colorB: colorB[getB(adrT)]:=nP;
+ ef nC=_set_add: addAT:=nP;
+ ef nC=_chg_add: addA[getA(nP)]:=addAT; addAT:=0; if rotT<>0: add_rot[getA(nP)]:=rotT; fi
else:
fi
endfor
@@ -1083,7 +947,7 @@ enddef;
%-------------------------------------------------------------------------------------------------
def add_atom(expr n)=
cntB:=cntB+1; lineB[cntB]:=lineT; lineT:=si;
- if lenT=crR: lenB[cntB]:=bondL; else: lenB[cntB]:=lenT; lenT:=crR; fi
+ if lenT=rate_cr: lenB[cntB]:=bondL; else: lenB[cntB]:=lenT; lenT:=rate_cr; fi
if f_bra=0: cntA:=cntA+1; sB[cntB]:=cntA; numS[cntA]:=strAT;
addA[cntA]:=addAT; addAT:=strAT:=add_rot[cntA]:=0;
if rotT<>0: add_rot[cntA]:=rotT; rotT:=0; fi
@@ -1096,39 +960,39 @@ def check_adrA(expr n)=
enddef;
def check_adrB(expr n)= if (n>cntB)or(n<=0): errmessage("cntB=[ "&decimal(n)&" ]"); fi enddef;
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-def proc_skeleton(expr a)=
+def proc_skeleton(expr n)=
markA:=markB:=cntA:=cntB:=f_bra:=rotT:=f_term:=0;
envT:=envB:=f_lineT:=f_rotT:=f_lenT:=f_envT:=0; lineT:=si; angT:=mangle;
angA[0]:=angB[0]:=angX[0]:=0; posA[0]:=posBs:=posBe:=(0,0);
%-----------------------------------------------------------------------------------------------
- for i=1 upto cntD[a]: com:=comD[a][i]; par:=parD[a][i];
- if com=_mk_bond: if (par=0)and(rotT<>0):par:=rotT; rotT:=0; fi add_bond(par,1);
- ef com=_com: if par=_mark: saveA:=markA; saveB:=markB; markA:=cntA; markB:=cntB;
- ef par=_rest: markA:=saveA; markB:=saveB;
- ef par=_moff: markA:=markB:=0; ef par=_term: termB;
- ef par=_group_e: lineT:=si; lenT:=crR; rotT:=envT:=0;
- fi
- ef com=_jp_bond: termB; nA:=getB(par); posBs:=posA[sB[nA]]; angT:=angB[nA]; f_bra:=1; rotT:=0;
- ef com=_jp_atom: termB; adrT:=getA(par); posBs:=posA[adrT]; angT:=angX[adrT]; f_bra:=1; rotT:=0;
- ef com=_jp_absA: adrT:=par; posBs:=posA[adrT];
- angT:=angX[adrT]; f_bra:=1; rotT:=0; temp_cntB:=cntB;
- ef com=_adj_ang: angT:=adjust_ang(angT);
- ef com=_rot_ang: if par>-3700: angT:=(angT+par) mod 360; else: angT:=(par+4095) mod 360; fi
- ef com=_tmp_rot: rotT:=par;
- ef com=_group_si: rotT:=0;
- ef com=_group_wf: rotT:=0;
- ef com=_chg_env: envB:=par;
- ef com=_tmp_env: envT:=par;
- ef com=_cyc: add_bond(angle(posA[getA(par)]-posBs)-angT,0);
- ef com=_cyc_sB: add_bond(angle(posA[sB[getB(par)]]-posBs)-angT,0);
- ef com=_cyc_eB: add_bond(angle(posA[eB[getB(par)]]-posBs)-angT,0);
+ for i=1 upto cntD[n]: nC:=comD[n][i]; nP:=parD[n][i];
+ if nC=_mk_bond: if (nP=0)and(rotT<>0):nP:=rotT; rotT:=0; fi add_bond(nP,1);
+ ef nC=_com: if nP=_mark: saveA:=markA; saveB:=markB; markA:=cntA; markB:=cntB;
+ ef nP=_rest: markA:=saveA; markB:=saveB;
+ ef nP=_moff: markA:=markB:=0; ef nP=_term: termB;
+ ef nP=_group_e: lineT:=si; lenT:=rate_cr; rotT:=envT:=0;
+ fi
+ ef nC=_jp_bond: termB; nA:=getB(nP); posBs:=posA[sB[nA]]; angT:=angB[nA]; f_bra:=1; rotT:=0;
+ ef nC=_jp_atom: termB; adrT:=getA(nP); posBs:=posA[adrT]; angT:=angX[adrT]; f_bra:=1; rotT:=0;
+ ef nC=_jp_absA: adrT:=nP; posBs:=posA[adrT]; angT:=angX[adrT];
+ f_bra:=1; rotT:=0; temp_cntB:=cntB;
+ ef nC=_adj_ang: angT:=adjust_ang(angT);
+ ef nC=_rot_ang: if nP>-3700: angT:=(angT+nP) mod 360; else: angT:=(nP+4095) mod 360; fi
+ ef nC=_tmp_rot: rotT:=nP;
+ ef nC=_group_si: rotT:=0;
+ ef nC=_group_wf: rotT:=0;
+ ef nC=_chg_env: envB:=nP;
+ ef nC=_tmp_env: envT:=nP;
+ ef nC=_cyc: add_bond(angle(posA[getA(nP)]-posBs)-angT,0);
+ ef nC=_cyc_sB: add_bond(angle(posA[sB[getB(nP)]]-posBs)-angT,0);
+ ef nC=_cyc_eB: add_bond(angle(posA[eB[getB(nP)]]-posBs)-angT,0);
else:
fi
endfor
enddef;
%-------------------------------------------------------------------------------------------------
-def add_bond(expr ROT,FLG)=
- if ROT=_arrange_ang: nA:=arrange_ang(angT mod 360); else: nA:=ROT; fi
+def add_bond(expr n,f)=
+ if n=_arrange_ang: nA:=arrange_ang(angT mod 360); else: nA:=n; fi
if f_bra=0:
adrT:=cntA:=cntA+1; posA[cntA]:=posBs; angA[cntA]:=angT;
angX[cntA]:=(angT+nA/2+iif(nA>=0,-90,90)) mod 360;
@@ -1136,11 +1000,10 @@ def add_bond(expr ROT,FLG)=
fi
cntB:=cntB+1;
if nA>-3700: angB[cntB]:=angT:=(angT+nA) mod 360; else: angB[cntB]:=angT:=nA+4095; fi
- if FLG=1:
+ if f=1:
if lenB[cntB]=_size_atom: posBe:=sfrt(posBs,atom_wd,angT);
else:
- nA:=lenB[cntB];
- if nA<0: nB:=glu_atom(adrT)+glu_atom(cntA+1); nA:=abs(nA); else: nB:=0; fi
+ nA:=lenB[cntB]; if nA<0: nB:=glu_atom(adrT)+glu_atom(cntA+1); nA:=abs(nA); else: nB:=0; fi
posBe:=sfrt(posBs,nA*blen+nB,angT);
fi
posA[cntA+1]:=posBe; f_term:=0;
@@ -1168,7 +1031,7 @@ vardef getB(expr n)= if n>=0: markB+n ef n>=-999: cntB+n+1 else: n+4095 fi endde
def termA=
if f_term=0:
if f_bra=0:
- cntA:=cntA+1; numS[cntA]:=strAT; addA[cntA]:=addAT; add_rot[cntA]:=rotT;
+ cntA:=cntA+1; numS[cntA]:=strAT; addA[cntA]:=addAT; add_rot[cntA]:=rotT;
addAT:=strAT:=rotT:=0;
else: f_bra:=0;
fi
@@ -1180,114 +1043,99 @@ def termB=
if f_term=0: if f_bra=0:cntA:=cntA+1; angX[cntA]:=angT mod 360; else:f_bra:=0; fi f_term:=1; fi
enddef;
%-------------------------------------------------------------------------------------------------
-vardef glu_atom(expr NUM)=
- if numS[NUM]<>0: nE:=angT mod 90; nF:=0.5atom_wd;(iif(nE<45,sind(nE),cosd(nE))*nF)++nF else: 0 fi
+vardef glu_atom(expr n)=
+ if numS[n]<>0: nE:=angT mod 90; nF:=0.5atom_wd; (iif(nE<45,sind nE,cosd nE)*nF)++nF else: 0 fi
enddef;
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-def draw_atom(expr NUM)=
- begingroup
- if numS[NUM]<>0:
- save slen,f_wd,f_ht,r_ff,pos_a,pos_c,temp_c,temp_s,dir_str;
- string temp_c,temp_s;
- pair pos_a,pos_c;
- %-------------------------------------------------------
- temp_s:=strD[numS[NUM]]; slen:=length(temp_s); nA:=angX[NUM];
- dxA[NUM]:=dir_str:=iif((nA<=90)or(nA>=270),1,-1);
- wdA[NUM]:=nC:=0; pos_c:=(0,0);
- pos_a:=posA[NUM]-(.5atom_wd*dir_str,.5atom_wd);
- if atomfont<>"draw":
- atom_picture:="C" infont atomfont;
- r_ff:=atom_wd/(ypart(ulcorner atom_picture)-ypart(llcorner atom_picture));
- fi
- for i=1 upto slen:
- if nC=0:
- temp_c:=subc(i,temp_s);
- if (dir_str=-1)and(temp_c="{"):
- nD:=i; nC:=0; for j=nD upto slen: nC:=nC+1; exitif subc(j,temp_s)="}"; endfor
- fi
- else: nC:=nC-1; temp_c:=subc(nD+nC,temp_s);
+def draw_atom(expr n)=
+ if atomfont<>"draw": defaultfont:=atomfont; defaultsize:=atom_wd; fi
+ temps:=strD[numS[n]]; slen:=length(temps); nC:=nS:=0; raise_pos:=(0,0); tpos:=posA[n];
+ if (angX[n]<=90)or(angX[n]>=270): sdir:=1; else: sdir:=-1; fi
+ for i=1 upto slen:
+ if nC=0:
+ tempc:=subc(i,temps);
+ if (sdir=-1)and(tempc="{"):
+ nD:=i; nC:=0; for j=nD upto slen: nC:=nC+1; exitif subc(j,temps)="}"; endfor
fi
- if temp_c="_": pos_c:=iif(pos_c=(0,0),(0,-.5atom_wd),(0,0));
- elseif temp_c="^": pos_c:=iif(pos_c=(0,0),(0, .5atom_wd),(0,0));
- elseif (temp_c<>"{")and(temp_c<>"}"):
- if atomfont="draw":
- f_wd:=atom_wd*tbl_char_wd[ASCII(temp_c)];
- if dir_str=-1: pos_a:=pos_a-(f_wd,0); fi
- draw_char(temp_c,pos_a+pos_c,atom_wd,bond_pen_wd*ratio_char_bond,NUM);
- if scan_bit(sw_frame,Atom): draw_frame(pos_a+pos_c,f_wd,atom_wd,thickness_frame); fi
- if dir_str=1: pos_a:=pos_a+(f_wd,0); fi
- else:
- atom_picture:=temp_c infont atomfont;
- f_wd:=(xpart(lrcorner atom_picture)-xpart(llcorner atom_picture))*r_ff;
- f_ht:=(ypart(urcorner atom_picture)-ypart(llcorner atom_picture))*r_ff;
- if dir_str=-1: pos_a:=pos_a-(f_wd,0); fi
- addto currentpicture also atom_picture scaled (r_ff*(1-2ratio_atomgap_atom))
- shifted (pos_a+pos_c+(f_wd*ratio_atomgap_atom,f_ht*ratio_atomgap_atom))
- Cp(colorA[NUM]);
- if scan_bit(sw_frame,Atom): draw_frame(pos_a+pos_c,f_wd,f_ht,thickness_frame); fi
- if dir_str=1: pos_a:=pos_a+(f_wd,0); fi
- fi
- wdA[NUM]:=wdA[NUM]+f_wd;
+ else: nC:=nC-1; tempc:=subc(nD+nC,temps);
+ fi
+ if tempc="_": raise_pos:=iif(raise_pos=(0,0),(0,-.5atom_wd),(0,0));
+ ef tempc="^": raise_pos:=iif(raise_pos=(0,0),(0, .5atom_wd),(0,0));
+ ef (tempc<>"{")and(tempc<>"}"):
+ nS:=nS+1;
+ char_wd:=atom_wd*tbl_char_wd[ASCII(tempc)]; char_ht:=atom_wd;
+ if nS=1: if (sdir=-1)and(char_wd<atom_wd): tpos:=tpos+((atom_wd-char_wd)/2,0); fi
+ else: tpos:=tpos+(.5char_wd*sdir,0);
fi
- endfor
+ tcol:=colorA[n]; f_col:=0;
+ if known tcol: if tcol<>0: drawoptions(withcolor color_list[tcol]); f_col:=1; fi fi
+ if atomfont="draw": draw_char(tempc,tpos+raise_pos); else: label(tempc,tpos+raise_pos); fi
+ if f_col=1: drawoptions(); fi
+ tpos:=tpos+(.5char_wd*sdir,0);
+ fi
+ endfor
+ nA:=0.56atom_wd; nB:=0.06atom_wd;
+ if sdir=1: frameA[n]:=posA[n]-(nA,nA)--tpos+(nB,-nA)--tpos+(nB,nA)--posA[n]+(-nA,nA)--cycle;
+ else: frameA[n]:=tpos-(nB,nA)--posA[n]+(nA,-nA)--posA[n]+(nA,nA)--tpos+(-nB,nA)--cycle;
fi
- endgroup
+ if scan_bit(sw_frame,Atom): draw frameA[n] wpcs thickness_frame; fi
enddef;
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-def draw_bond(expr NUM)=
+def draw_bond(expr n)=
begingroup
- save ww,aw,ap,am,ang,col,len,Ls,Le,pA,zA,zL;
+ save ww,aw,ap,am,Ls,Le,pA,zA,zL;
pair pA,Ls,Le;
path zA,zL;
%-----------------------------------------------------------------------------------------------
- nL:=lineB[NUM]; ang:=angB[NUM]; nS:=sB[NUM]; nE:=eB[NUM];
- col:=colorB[NUM]; zL:=posA[nS]--posA[nE]; ww:=wedge_wd; ap:=ang+90; am:=ang-90; aw:=atom_wd;
+ nL:=lineB[n]; angL:=angB[n]; nS:=sB[n]; nE:=eB[n]; f_col:=0;
+ tcol:=colorB[n]; zL:=posA[nS]--posA[nE]; ww:=wedge_wd; ap:=angL+90; am:=angL-90; aw:=atom_wd;
%-----------------------------------------------------------------------------------------------
if (numS[nS]=0)and(numS[nE]=0)or(sw_numbering>=1):
- Ls:=posA[nS]; Le:=posA[nE]; pA:=(.1,.9);
- ef numS[nS]=0: Le:=zL intersectionpoint frame_str(nE); Ls:=posA[nS]; pA:=(.15,1);
- ef numS[nE]=0: Ls:=zL intersectionpoint frame_str(nS); Le:=posA[nE]; pA:=(0,.85);
- else: Ls:=zL intersectionpoint frame_str(nS); Le:=zL intersectionpoint frame_str(nE); pA:=(0,1);
+ Ls:=posA[nS]; Le:=posA[nE]; pA:=(.1,.9);
+ ef numS[nS]=0: Ls:=posA[nS]; Le:=zL ISP frameA[nE]; pA:=(.15,1);
+ ef numS[nE]=0: Ls:=zL ISP frameA[nS]; Le:=posA[nE]; pA:=(0,.85);
+ else: Ls:=zL ISP frameA[nS]; Le:=zL ISP frameA[nE]; pA:=(0,1);
fi
- zA:=Ls--Le; len:=length(Le-Ls);
+ zA:=Ls--Le; lenL:=length(Le-Ls);
%-----------------------------------------------------------------------------------------------
+ if known tcol: if tcol<>0: drawoptions(withcolor color_list[tcol]); f_col:=1;fi fi
pickup pencircle scaled bond_pen_wd;
- if (nL=si)or(scan_bit(sw_abbreviate,Bond)): draw zA Cp(col);
- ef nL=dl: draw zA Cp(col); draw sfrt(subpath pA of zA,bondgap,ap) Cp(col);
- ef nL=dr: draw zA Cp(col); draw sfrt(subpath pA of zA,bondgap,am) Cp(col);
- ef nL=dm: draw sfrt(zA,bondgap/1.75,ap) Cp(col); draw sfrt(zA,bondgap/1.75,am) Cp(col);
- ef nL=db: nA:=iif(((ang-angX[nS]) mod 360)<=180,ap,am);
- draw zA Cp(col); draw sfrt(subpath pA of zA,bondgap,nA) Cp(col);
- ef nL=tm: draw zA Cp(col);draw sfrt(zA,bondgap,ap) Cp(col); draw sfrt(zA,bondgap,am) Cp(col);
- ef nL=wf: fill Ls--sfrt(Le,ww,am)--sfrt(Le,ww,ap)--cycle Cp(col);
- ef nL=wb: fill sfrt(Ls,ww,am)--Le--sfrt(Ls,ww,ap)--cycle Cp(col);
- ef nL=bd: draw zA withpen penrazor rotated ap scaled bondgap Cp(col);
+ if (nL=si)or(scan_bit(sw_abbreviate,Bond)): draw zA;
+ ef nL=dl: draw zA; draw sfrt(subpath pA of zA,bondgap,ap);
+ ef nL=dr: draw zA; draw sfrt(subpath pA of zA,bondgap,am);
+ ef nL=dm: draw sfrt(zA,bondgap/1.75,ap); draw sfrt(zA,bondgap/1.75,am);
+ ef nL=db: nA:=iif(((angL-angX[nS]) mod 360)<=180,ap,am);
+ draw zA; draw sfrt(subpath pA of zA,bondgap,nA);
+ ef nL=tm: draw zA; draw sfrt(zA,bondgap,ap); draw sfrt(zA,bondgap,am);
+ ef nL=wf: fill Ls--sfrt(Le,ww,am)--sfrt(Le,ww,ap)--cycle;
+ ef nL=wb: fill sfrt(Ls,ww,am)--Le--sfrt(Ls,ww,ap)--cycle;
+ ef nL=bd: draw zA withpen penrazor rotated ap scaled bondgap;
ef nL=bz: bz_put(sfrt(Ls,ww,ap),sfrt(Le,ww,ap),sfrt(Ls,ww,am),sfrt(Le,ww,am));
ef nL=zf: wz_put(Ls,sfrt(Le,ww,ap),sfrt(Le,ww,am));
ef nL=zb: wz_put(Le,sfrt(Ls,ww,am),sfrt(Ls,ww,ap));
- ef nL=dt: for i=0 step .75hash_gap/len until 1: drawdot i[Ls,Le] Cp(col); endfor
- ef nL=wv: nA:=3bond_pen_wd; nB:=len/nA;
+ ef nL=dt: for i=0 step .75hash_gap/lenL until 1: drawdot i[Ls,Le]; endfor
+ ef nL=wv: nA:=3bond_pen_wd; nB:=lenL/nA;
draw Le for i=1 upto nB:
..controls(((i-.5)/nB)[sfrt(Le,nA,iif(odd(i),ap,am)),sfrt(Ls,nA,iif(odd(i),ap,am))])
- ..(i/nB)[Le,Ls] endfor ..Ls Cp(col);
- ef nL=wf_r: filldraw Ls--sfrt(Le,.35ww,am)--sfrt(Le,.35ww,ap)--cycle wpcs .05ww Cp(col);
- ef nL=wb_r: filldraw sfrt(Ls,.35ww,am)--Le--sfrt(Ls,.35ww,ap)--cycle wpcs .05ww Cp(col);
- ef nL=bd_r: draw zA wpcs .65bondgap Cp(col);
- ef nL=vf: draw zA Cp(col);draw sfrt(Le,bondgap,ang-150)--Le--sfrt(Le,bondgap,ang+150) Cp(col);
- ef nL=vb: draw zA Cp(col);draw sfrt(Ls,bondgap,ang-30)--Ls--sfrt(Ls,bondgap,ang+30) Cp(col);
- ef nL=si_: erase draw subpath (.15,.85) of zA wpcs 0.8bondgap; draw zA Cp(col);
+ ..(i/nB)[Le,Ls] endfor ..Ls;
+ ef nL=wf_r: filldraw Ls--sfrt(Le,.35ww,am)--sfrt(Le,.35ww,ap)--cycle wpcs .05ww;
+ ef nL=wb_r: filldraw sfrt(Ls,.35ww,am)--Le--sfrt(Ls,.35ww,ap)--cycle wpcs .05ww;
+ ef nL=bd_r: draw zA wpcs .65bondgap;
+ ef nL=vf: draw zA;draw sfrt(Le,bondgap,angL-150)--Le--sfrt(Le,bondgap,angL+150);
+ ef nL=vb: draw zA;draw sfrt(Ls,bondgap,angL-30)--Ls--sfrt(Ls,bondgap,angL+30);
+ ef nL=si_: erase draw subpath (.15,.85) of zA wpcs 0.8bondgap; draw zA;
ef nL=dl_: erase draw subpath (.15,.85) of sfrt(subpath pA of zA,.5bondgap,ap) wpcs 1.8bondgap;
- draw zA Cp(col); draw sfrt(subpath pA of zA,bondgap,ap) Cp(col);
+ draw zA; draw sfrt(subpath pA of zA,bondgap,ap);
ef nL=dr_: erase draw subpath (.15,.85) of sfrt(subpath pA of zA,.5bondgap,am) wpcs 1.8bondgap;
- draw zA Cp(col); draw sfrt(subpath pA of zA,bondgap,am) Cp(col);
+ draw zA; draw sfrt(subpath pA of zA,bondgap,am);
ef nL=dm_: erase draw subpath(0.15,0.85) of zA wpcs 1.8 bondgap;
- draw sfrt(zA,bondgap/1.75,ap) Cp(col); draw sfrt(zA,bondgap/1.75,am) Cp(col);
+ draw sfrt(zA,bondgap/1.75,ap); draw sfrt(zA,bondgap/1.75,am);
ef nL=wf_: erase draw subpath (0.15,0.85) of (Ls--sfrt(Le,ww,am)) wpcs 0.8bondgap;
erase draw subpath (0.15,0.85) of (Ls--sfrt(Le,ww,ap)) wpcs 0.8bondgap;
- fill Ls--sfrt(Le,ww,am)--sfrt(Le,ww,ap)--cycle Cp(col);
+ fill Ls--sfrt(Le,ww,am)--sfrt(Le,ww,ap)--cycle;
ef nL=wb_: erase draw subpath (0.15,0.85) of (sfrt(Ls,ww,am)--Le) wpcs 0.8bondgap;
erase draw subpath (0.15,0.85) of (sfrt(Ls,ww,ap)--Le) wpcs 0.8bondgap;
- fill sfrt(Ls,ww,am)--Le--sfrt(Ls,ww,ap)--cycle Cp(col);
+ fill sfrt(Ls,ww,am)--Le--sfrt(Ls,ww,ap)--cycle;
ef nL=zf_: erase draw subpath (0.15,0.85) of (Ls--sfrt(Le,ww,am)) wpcs 0.8bondgap;
erase draw subpath (0.15,0.85) of zA wpcs 0.8bondgap;
erase draw subpath (0.15,0.85) of (Ls--sfrt(Le,ww,ap)) wpcs 0.8bondgap;
@@ -1297,200 +1145,153 @@ def draw_bond(expr NUM)=
erase draw subpath (0.15,0.85) of (sfrt(Ls,ww,ap)--Le) wpcs 0.8bondgap;
wz_put(Le,sfrt(Ls,ww,am),sfrt(Ls,ww,ap));
ef nL=bd_: erase draw subpath(0.15,0.85) of zA wpcs 1.6bondgap;
- draw zA withpen penrazor rotated ap scaled bondgap Cp(col);
+ draw zA withpen penrazor rotated ap scaled bondgap;
ef nL=nb:
%-- bond type for glycan ----------------------------------------------------------------------
- ef nL=arc_lb: draw Ls--Ls-(0,aw)..posA[nE]+(-1.2aw,0)..posA[nE]-(.6aw,0) Cp(col);
- ef nL=arc_br: draw posA[nS]+(.6aw,0)..posA[nS]+(1.2aw,0)..Le-(0,aw)--Le Cp(col);
+ ef nL=arc_lb: draw Ls--Ls-(0,aw)..posA[nE]+(-1.2aw,0)..posA[nE]-(.6aw,0);
+ ef nL=arc_br: draw posA[nS]+(.6aw,0)..posA[nS]+(1.2aw,0)..Le-(0,aw)--Le;
ef nL=arc_lbr: draw posA[nS]+(0,iif(numS[nS]=0,0,-.6aw))--posA[nS]+(0,-.8aw)
..0.5[posA[nS],posA[nE]]+(0,-1.7aw)..posA[nE]+(0,-.8aw)
- --posA[nE]+(0,iif(numS[nE]=0,0,-.6aw)) Cp(col);
+ --posA[nE]+(0,iif(numS[nE]=0,0,-.6aw));
ef nL=arc_ltr: draw posA[nS]+(0,iif(numS[nS]=0,0,0.6aw))--posA[nS]+(0,.8aw)
..0.5[posA[nS],posA[nE]]+(0,1.7aw)..posA[nE]+(0,.8aw)
- --posA[nE]+(0,iif(numS[nE]=0,0,.6aw)) Cp(col);
+ --posA[nE]+(0,iif(numS[nE]=0,0,.6aw));
%----------------------------------------------------------------------------------------------
fi
+ if f_col=1: drawoptions(); fi
endgroup
enddef;
%------------------------------------------------------------------------------------------------
-def wz_put(expr PA,PB,PD)=
- for i=0 upto len/hash_gap:
- nA:=hash_gap*i/len; nD:=(hash_gap*i+ratio_hash_black*hash_gap)/len;
- if nD>((len-hash_gap)/len): nD:=1; fi
- fill nA[PB,PA]--nA[PD,PA]--nD[PD,PA]--nD[PB,PA]--cycle Cp(col);
+def wz_put(expr a,b,c)=
+ for i=0 upto lenL/hash_gap:
+ nA:=hash_gap*i/lenL; nD:=(hash_gap*i+ratio_hash_black*hash_gap)/lenL;
+ if nD>((lenL-hash_gap)/lenL): nD:=1; fi
+ fill nA[b,a]--nA[c,a]--nD[c,a]--nD[b,a]--cycle;
endfor
enddef;
%------------------------------------------------------------------------------------------------
-def bz_put(expr PA,PB,PC,PD)=
- for i=0 upto len/hash_gap:
- nA:=hash_gap*i/len; nD:=(hash_gap*i+ratio_hash_black*hash_gap)/len;
- fill nA[PB,PA]--nA[PD,PC]--nD[PD,PC]--nD[PB,PA]--cycle Cp(col);
+def bz_put(expr a,b,c,d)=
+ for i=0 upto lenL/hash_gap:
+ nA:=hash_gap*i/lenL; nD:=(hash_gap*i+ratio_hash_black*hash_gap)/lenL;
+ fill nA[b,a]--nA[d,c]--nD[d,c]--nD[b,a]--cycle;
endfor
enddef;
-%------------------------------------------------------------------------------------------------
-vardef frame_str(expr NUM)=
- nA:=1.12atom_wd; nB:=wdA[NUM]+.12atom_wd;
- ((0,0)--(nB,0)--(nB,nA)--(0,nA)--cycle) shifted
- (posA[NUM]-(.5nA+iif((dxA[NUM]=-1)and(wdA[NUM]>atom_wd),nB-nA,0),.5nA))
-enddef;
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-def char_size_set(expr WD)(expr HT)(expr STR)=
- for j=1 upto length(STR):
- nA:=ASCII(subc(j,STR)); tbl_char_wd[nA]:=WD; tbl_char_ht[nA]:=HT;
- endfor
+def char_size_set(expr w,h)(expr s)=
+ for j=1 upto length(s): nN:=ASCII(subc(j,s)); tbl_char_wd[nN]:=w; tbl_char_ht[nN]:=h; endfor
enddef;
%-------------------------------------------------------------------------------------------------
-char_size_set( 1)( 1)("CGHMNOQW");
-char_size_set( .9)( 1)("ABDFIJKPRSTUVXY/><#\%@");
-char_size_set( .8)( 1)("ELZ&");
-char_size_set( .7)( 1)(" ()[]{}0123456789nh=tfg?~^");
-char_size_set( .7)( .9)("$");
-char_size_set( .7)( .7)("-+*_");
-char_size_set(.45)(.95)("l");
-char_size_set(.75)( .8)("opq");
-char_size_set( .8)( .8)("e");
-char_size_set( .9)( .8)("wm");
-char_size_set( .7)( .8)("abdcksuvrxyz");
-char_size_set(.35)( .9)("i");
-char_size_set( .5)( .9)("j");
-char_size_set(.35)( 1)("!|");
-char_size_set( .4)( 1)(".,:;'`");
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-def draw_char(expr CHR,POS,WD,PEN,NUM)=
-begingroup
-save Z,aW,aH,fW,fH,hW,hW,hH,fP,hP,zO,zOh,pos,dw,dwh,dwv,cdw,sC;
-path zO,zOh,zOa;
-string sC;
-pair Z[],pos;
+char_size_set( 1, 1)("CGHMNOQW");
+char_size_set( 0.9, 1)("ABDFIJKPRSTUVXY");
+char_size_set( 0.8, 1)("ELZ");
+char_size_set( 0.7, 1)("0123456789nhtfg");
+char_size_set( 0.7, 0.7)("-+");
+char_size_set(0.45,0.95)("l");
+char_size_set(0.75, 0.8)("opq");
+char_size_set( 0.8, 0.8)("e");
+char_size_set( 0.9, 0.8)("wm");
+char_size_set( 0.7, 0.8)("abdcksuvrxyz");
+char_size_set(0.35, 0.9)("i");
+char_size_set( 0.5, 0.9)("j");
%-------------------------------------------------------------------------------------------------
-def dw expr p = draw (p) shifted pos Cp(colorA[NUM]) enddef;
-def dwv expr p = draw (p) withpen penrazor scaled fP shifted pos Cp(colorA[NUM]) enddef;
-def dwvs (expr n)expr p=
- draw (p) withpen penrazor scaled fP scaled n shifted pos Cp(colorA[NUM]) enddef;
-def dwh expr p=draw (p) withpen penrazor rotated 90 scaled fP shifted pos Cp(colorA[NUM]) enddef;
-def cdw expr p=cutdraw (p) shifted pos Cp(colorA[NUM]) enddef;
+def dw expr p = draw p shifted cpos enddef;
+def dwv expr p = draw p withpen penrazor scaled fP shifted cpos enddef;
+def dwvs(expr n) expr p = draw p withpen penrazor scaled (fP*n) shifted cpos enddef;
+def dwh expr p = draw p withpen penrazor rotated 90 scaled fP shifted cpos enddef;
+def cdw expr p = cutdraw p shifted cpos enddef;
%-------------------------------------------------------------------------------------------------
-sC:=CHR; fP:=PEN; hP:=0.5fP;
-aW:=WD*tbl_char_wd[ASCII(sC)]*(1-2ratio_atomgap_atom);
-aH:=WD*tbl_char_ht[ASCII(sC)]*(1-2ratio_atomgap_atom);
-pos:=POS+(WD*ratio_atomgap_atom,WD*ratio_atomgap_atom);
+def Z_a=( 0,hP) enddef; def Z_b=(hP, 0) enddef; def Z_c=(hP,hP) enddef; def Z_d=(aW,hP) enddef;
+def Z_e=(fW, 0) enddef; def Z_f=(hW,aH) enddef; def Z_g=(hW, 0) enddef; def Z_h=( 0,hH) enddef;
+def Z_i=(hW,fW) enddef; def Z_j=( 0,qH) enddef; def Z_k=(aW,qH) enddef; def Z_l=(.75aW,0) enddef;
+def Z_m=(hP,hH) enddef; def Z_n=(fW,fH) enddef; def Z_o=(fW,hH) enddef; def Z_p=(hW,aW) enddef;
+def Z_q=( 0,fH) enddef; def Z_r=(hP,fH) enddef; def Z_s=(hW,fH) enddef; def Z_t=(fW,aH) enddef;
+def Z_u=(aW,fH) enddef; def Z_v=(aW,hH) enddef; def Z_w=(hP,aH) enddef; def Z_x=(hW,hP) enddef;
+def Z_y=(hW,hH) enddef; def Z_z=(fW,hP) enddef;
%-------------------------------------------------------------------------------------------------
-fW:=aW-hP; hW:=.5aW; fH:=aH-hP; hH:=.5aH;
-Z01:=( 0,hP); Z02:=(hP, 0); Z03:=(hP,hP); Z04:=(aW,hP); Z05:=(fW, 0); Z06:=(hW,aH); Z07:=(hW, 0);
-Z08:=( 0,hH); Z09:=(hP,hH); Z10:=(fW,hH); Z11:=(hW,aW); Z12:=( 0,fH); Z13:=(hP,fH); Z14:=(hW,fH);
-Z15:=(fW,aH); Z16:=(aW,fH); Z17:=(aW,hH); Z18:=(hP,aH); Z19:=(hW,hP); Z20:=(hW,hH); Z21:=(fW,hP);
-Z22:=(fW,fH); Z23:=(hW,fW);
+def circ_O = Z_o..(.8aW,fH-qP)..tension 1.5..(.2aW,fH-qP)..Z_m..
+ (.2aW,1.5hP)..tension 1.5..(.8aW,1.5hP)..cycle enddef;
+def circ_Oh = (hP,qH)..Z_x..(fW,qH)..Z_y..cycle enddef;
+def circ_Oa = (hP,0.35aH)..Z_x..(fW,0.35aH)..(hW,.7aH)..cycle enddef;
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+def draw_char(expr s,p)=
+begingroup
+save aW,aH,fW,fH,hW,hW,hH,qH,fP,hP;
%-------------------------------------------------------------------------------------------------
-zO:=Z10..(.8aW,fH-.5hP)..tension 1.5..(.2aW,fH-.5hP)..Z09..
- (.2aW,1.5hP)..tension 1.5..(.8aW,1.5hP)..cycle;
-zOh:=(hP,.25aH)..Z19..(fW,.25aH)..Z20..cycle;
-zOa:=(hP,.35aH)..(hW,hP)..(fW,.35aH)..(hW,.7aH)..cycle;
+aW:=atom_wd*tbl_char_wd[ASCII(s)]*(1-2ratio_atomgap_atom);
+aH:=atom_wd*tbl_char_ht[ASCII(s)]*(1-2ratio_atomgap_atom);
+cpos:=p-(aW/2,atom_wd/2*(1-2ratio_atomgap_atom));
+fP:=bond_pen_wd*ratio_char_bond;
+hP:=fP/2; qP:=fP/4; fW:=aW-hP; hW:=aW/2; fH:=aH-hP; hH:=aH/2; qH:=aH/4;
%-------------------------------------------------------------------------------------------------
-ppcs fP;
-if sC="A": dwvs(1.14) Z02--Z06--Z05; dw .33[Z02,Z06]--.33[Z05,Z06];
-ef sC="B": dw Z13--Z14{right}..(.9fH,.75aH)..{left}Z20--Z09--Z20{right}..(.9fH,.25aH)..
- {left}Z19--Z03; dwv Z02--Z18;
-ef sC="C": cdw sbp(.05,.95)zO;
-ef sC="D": dw Z13--Z14..Z10..Z19--Z03; dwv Z02--Z18;
-ef sC="E": pickup pensquare scaled fP; dw Z21--Z03--Z13--Z22; dw Z09--Z10;
-ef sC="F": dwh Z12--Z16; dwh (0,.45aH)--(fW,.45aH); dw Z02--Z13;
-ef sC="G": cdw sbp(.06,.97)zO; dwh bot Z20-- bot Z17;
-ef sC="H": dwv Z02--Z18; dw Z09--Z10; dwv Z05--Z15;
-ef sC="I": dwv Z19--Z14; dwh (hW-fP,hP)--(hW+fP,hP); dwh (hW-fP,fH)--(hW+fP,fH);
-ef sC="J": cdw Z09..(hP,.4aH){down}..{right}Z19{right}..{up}(fW,.4aH)..Z15;
-ef sC="K": cdw Z02--Z18; cdw .35[.45[Z02,Z18],Z16]--Z05; cdw .35[Z02,Z18]--Z16;
-ef sC="L": dwh Z04--Z01; dwv Z02--Z18;
-ef sC="M": dwv Z02--Z18; dwvs(1.14) Z18--Z19--Z15; dwv Z15--Z05;
-ef sC="N": dwv Z02--Z18; dwv Z05--Z15; dwvs(1.4) (1.4hP,aH)--(aW-1.4hP,0);
-ef sC="O": dw zO;
-ef sC="P": dwv Z02--Z18; dw Z13--(.65aW,fH){right}..(fW,.7aH)..{left}(.65aW,.44aH)..(hP,.44aH);
-ef sC="Q": dw zO; dw (.6aW,.4aH)--Z05;
-ef sC="R": dwv Z02--Z18; dw Z13--(.65aW,fH){right}..(fW,.7aH)..{left}(.65aW,.44aH)..(hP,.44aH);
- cdw Z05{up}..{left}(hW,.44aH);
-ef sC="S": cdw sbp(.05,.45)zO; cdw sbp(.55,.95)zO; dw (fW,.3aH){up}..{up}(hP,.7aH);
-ef sC="T": dwh Z12--Z16; dwv .5[Z12,Z16]--Z07;
-ef sC="U": cdw Z18..Z09{down}..{right}Z19{right}..{up}Z10..Z15;
-ef sC="U": cdw Z18..(hP,.4fH){down}..{right}Z19{right}..{up}(fW,.4fH)..Z15;
-ef sC="V": dwvs(1.2) Z18--Z07--Z15;
-ef sC="W": dwvs(1.08) Z18--(.25aW,0)--Z06--(.75aW,0)--Z15;
-ef sC="X": dwvs(1.4) Z18..Z05; dwvs(1.4) Z02..Z15;
-ef sC="Y": dwvs(1.2) Z18--Z20--Z15; dwv Z20--Z07;
-ef sC="Z": dwh Z12--Z16; dwvs(1.4) (1.4hP,fP)--(aW-1.4hP,aH-fP); dwh Z01--Z04;
-ef sC="a": dw Z19..Z10..Z14..Z09..cycle; dwv Z05--Z15;
-ef sC="b": dw Z19..Z10..Z11..Z09..cycle; dwv Z02--(hP,1.3aH)
-ef sC="c": cdw sbp(.06,.94)Z10..Z14..Z09..Z19..cycle;
-ef sC="d": dw Z19..Z10..Z11..Z09..cycle; dwv Z05--(fW,1.3aH);
-ef sC="e": cdw sbp(0,.92)Z10..Z14..Z09..Z19..cycle; dw Z10--Z09;
-ef sC="f": cdw (.4fW,0)--(.4fW,.75aH){up}..(.75aW,fH)..{down}(fW,.8aH); dwh Z08--Z17;
-ef sC="g": dw zOa; dw sbp(0,.5)zOh shifted (0,-.5fH); cdw (aW-hP,.7aH)--(aW-hP,-.25aH);
-ef sC="h": cdw Z02..(hP,.3aH){up}..(hW,.7fH)..{down}(fW,.3aH)..Z05; dwv (hP,.3aH)--Z18;
-ef sC="i": dwv Z07--(hW,.7aH); ppcs 1.4fP; dw Z14;
-ef sC="j": cdw (fW,.7aH)--Z21..(.25aW,-.66fP)..Z03; ppcs 1.4fP; dw Z22;
-ef sC="k": dwv Z02--(hP,1.3fH); cdw .5[Z02,Z18]--Z05; cdw .5[Z02,Z18]--Z16;
-ef sC="l": dwv Z07--Z06; dwh Z14--Z13; dwh Z19--Z21;
-ef sC="m": cdw Z02..(hP,.3aH){up}..(.28aW,fH)..{down}(hW,.3aH)..Z07;
- cdw (hW,.6aH){up}..(.7aW,aH-hP)..{down}(fW,.6aH)..Z05; dwv (hP,.3aH)--(hP,aH);
-ef sC="n": cdw Z02{up}..(hW,.8fH)..{down}(fW,.5aH)..Z05; dwv (hP,0)--(hP,.8aH);
-ef sC="o": dw Z19..Z10..Z14..Z09..cycle;
-ef sC="p": dw Z19..Z10..Z14..Z09..cycle; dwv (hP,aH)--(hP,-.3aH);
-ef sC="q": dw Z19..Z10..Z14..Z09..cycle; dwv (fW,aH)--(fW,-.3aH);
-ef sC="r": cdw (sbp(.33,.72)Z19..Z10..Z14..Z09..cycle) shifted(0,-hP); dwv Z02--Z18;
-ef sC="s": cdw sbp(.05,.45)zO; cdw sbp(.55,.95)zO; dw (fW,.3aH){up}..{up}(hP,.7aH);
-ef sC="t": dwv Z07--Z06; dwh (0,.66aH)--(aW,.66aH);
-ef sC="u": cdw Z18..(hP,.55aH){down}..Z19..(fW,.55aH){up}..Z15; dwv Z15--Z05;
-ef sC="v": dwv Z18--Z07--Z15;
-ef sC="w": dwv Z18--(.25aW,0)--Z06--(.75aW,0)--Z15;
-ef sC="x": dwvs(1.4) Z18--Z05; dwvs(1.4) Z15--Z02;
-ef sC="y": dwvs(1.4) (Z18--Z20) shifted (0,-.3aH); dwvs(1.4) (Z15--Z02) shifted (0,-.3aH);
-ef sC="z": dwh Z12--Z16; dwvs(1.4) (1.4hP,fP)--(aW-1.4hP,aH-fP); dwh Z01--Z04;
-ef sC="0": dw Z09...Z14...Z10...Z19...cycle;
-ef sC="1": dwv Z07--(hW,aH-.3hP)--(hW-fP,aH-fP)--(hW-fP,aH-1.5fP);
-ef sC="2": cdw (hP,1.3hP)..(.4fW,.35fH)..(fW,.65aH)..Z14..(hP,.65aH); dwh Z04--Z01;
-ef sC="3": cdw sbp(0,.75)zOh; cdw sbp(.25,.98)zOh shifted (0,hH-hP); dwh (.3aW,hH)--Z20;
-ef sC="4": dwh (0,.25aH)--(aW,.25aH); dwv (.75aW,0)--(.75aW,aH)--(1.2hP,.25aH+hP);
- dwv (.75aW+.5hP,aH)--(1.7hP,.25aH+hP);
-ef sC="5": dwh Z12--Z16; dwv Z13--(hP,.55fH);
- cdw (.5hP,.18aH)..(.65aW,1.3hP)..(fW,.4aH)..(hW,.63aH)..(.7hP,.56aH);
-ef sC="6": dw Z19..(fW,.5fW)..Z23..(hP,.5fW)..cycle; cdw (.8fP,hH)--Z06;
-ef sC="7": dwh (0,.fH)--Z16; dwvs(1.2) (aW-1.2hP,aH-fP)--(.4aW,0);
-ef sC="8": dw zOh; dw (hP,.75aH)...Z14...(fW,.75aH)...Z20...cycle;
-ef sC="9": dw (Z19..(fW,.5fW)..Z23..(hP,.5fW)..cycle) shifted (0,.32aH); cdw (fW-.45fP,hH)--Z07;
-ef sC=" ":
-ef sC=".": ppcs 1.4fP; dw Z19;
-ef sC=",": dw (hW+.5fP,hP)..(hW+.3fP,-fP)..(hW-.5fP,hP-2fP); ppcs 1.4fP; dw Z19;
-ef sC="'": dw (hW+.5fP,fH)..(hW+.3fP,fH-fP)..(hW-.5fP,fH-2fP); ppcs 1.4fP; dw Z14;
-ef sC="`": dw (hW-.5fP,fH-2fP)..(hW-.3fP,fH-fP)..(hW+.5fP,fH); ppcs 1.4fP; dw (hW,fH-2fP);
-ef sC=":": ppcs 1.4fP; dw (hW,.2aH); dw (hW,.8aH);
-ef sC=";": dw (hW+hP,.2aH)..(hW-hP,.2aH-2fP); ppcs 1.4fP; dw (hW,.2aH); dw (hW,.8aH);
-ef sC="(": dw Z19...Z09...Z14;
-ef sC=")": dw Z19...Z10...Z14;
-ef sC="[": dwv Z07--Z06; dwh Z14--Z22; dwh Z19--Z21;
-ef sC="]": dwv Z07--Z06; dwh Z14--Z13; dwh Z03--Z19;
-ef sC="{": dw Z19..(.3aW,.2aH)..(.3aW,.45aH)..(.2aW,.5aH)..(.3aW,.55aH)..(.3aW,.8aH)..Z14;
-ef sC="}": dw Z19..(.7aW,.2aH)..(.7aW,.45aH)..(.8aW,.5aH)..(.7aW,.55aH)..(.7aW,.8aH)..Z14;
-ef sC="<": cdw Z16--Z08--Z04;
-ef sC=">": cdw Z01--Z17--Z12;
-ef sC="-": dwh Z09--Z10;
-ef sC="=": dwh (hP,.3aH)--(fW,.3aH); dwh (hP,.6aH)--(fW,.6aH);
-ef sC="/": dw Z22..Z01;
-ef sC="+": dwv Z19--Z14; dwh Z09--Z10;
-ef sC="*": dw Z19--Z14; dw Z09--Z10; dw (.2aW,.2aH)--(.8aW,.8aH); dw (.2aW,.8aH)--(.8aW,.2aH);
-ef sC="$": cdw sbp(.05,.45)zO; cdw sbp(.55,.95)zO; dw (fW,.3aH){up}..{up}(hP,.7aH);
- dwv (hW,-fP)--(hW,fH+1.5fP);
-ef sC="#": dwv (.3aW,0)--(.3aW,aH); dwv (.7aW,0)--(.7aW,aH);
- dwh (0,.3aH)--(aW,.3aH); dwh (0,.7aH)--(aW,.7aH);
-ef sC="!": dwv Z06--(hW,.25aH); ppcs 1.4fP; dw Z07;
-ef sC="?": cdw (hP,.75fH)..(hW,aH)..(fW,.75fH)..(hW,.4fH)--(hW,.2fH); ppcs 1.4fP; dw Z07;
-ef sC="|": dwv Z07--Z06;
-ef sC="\": dw Z13--Z21;
-ef sC="%": dw Z22..Z01; dw fullcircle scaled 2.7fP shifted (.2fH,.9fH);
- dw fullcircle scaled 2.7fP shifted (.73fH,.20fH);
-ef sC="~": dw (hP,.8aH)..(.3aW,.9aH)..(.6aW,.7aH)..(fW,.8aH);
-ef sC="&": cdw Z21..(hW,.35aH)..(.25aW,.75aH)..(hW,.fH)..(.75aW,.75fH)..(hP,.3aH)..(hW,.hP)..Z10;
-ef sC="@": cdw sbp(0,.7)zO; dwv (fW,hH)--(fW,0);
- dw (fW,.45aH)..(.7aW,.75aH)..(.3aW,.45aH)..(.7aW,.15aH)..cycle;
-ef sC="_": dwh Z01--Z04;
-ef sC="^": dw (hP,.6aH)--(.5aW,fH)--(fW,.6aH);
+pickup pencircle scaled fP;
+if s=cC: cdw sbp(.05,.95)circ_O;
+ef s=cH: dwv Z_b--Z_w; dw Z_m--Z_o; dwv Z_e--Z_t;
+ef s=cO: dw circ_O;
+ef s=cN: dwv Z_b--Z_w; dwv Z_e--Z_t; dwvs(1.4)(1.4hP,aH)--(aW-1.4hP,0);
+ef s=cS: cdw sbp(.05,.45)circ_O; cdw sbp(.55,.95)circ_O; dw (fW,.3aH){up}..{up}(hP,.7aH);
+ef s=cF: dwh Z_q--Z_u; dwh (0,.45aH)--(fW,.45aH); dw Z_b--Z_r;
+ef s=cP: dwv Z_b--Z_w; dw Z_r--(.65aW,fH){right}..(fW,.7aH)..{left}(.65aW,.44aH)..(hP,.44aH);
+ef s="I": dwv Z_x--Z_s; dwh (hW-fP,hP)--(hW+fP,hP); dwh (hW-fP,fH)--(hW+fP,fH);
+ef s="l": dwv Z_g--Z_f; dwh Z_s--Z_r; dwh Z_x--Z_z;
+ef s="2": cdw (hP,1.3hP)..(.4fW,.35fH)..(fW,.65aH)..Z_s..(hP,.65aH); dwh Z_d--Z_a;
+ef s="3": cdw sbp(0,.75)circ_Oh; cdw sbp(.25,.98)circ_Oh shifted (0,hH-hP); dwh (.3aW,hH)--Z_y;
+ef s="4": dwh Z_j--Z_k; dwv Z_l--(0.75aW,aH)--(1.2hP,qH+hP); dwv (.75aW+qP,aH)--(1.7hP,qH+hP);
+ef s="A": dwvs(1.14)Z_b--Z_f--Z_e; dw .33[Z_b,Z_f]--.33[Z_e,Z_f];
+ef s="B": dw Z_r--Z_s{right}..(.9fH,.75aH)..{left}Z_y--Z_m--Z_y{right}..(.9fH,qH)..{left}Z_x--Z_c;
+ dwv Z_b--Z_w;
+ef s="D": dw Z_r--Z_s..Z_o..Z_x--Z_c; dwv Z_b--Z_w;
+ef s="E": pickup pensquare scaled fP; dw Z_z--Z_c--Z_r--Z_n; dw Z_m--Z_o;
+ef s="G": cdw sbp(.06,.97)circ_O; dwh bot Z_y-- bot Z_v;
+ef s="J": cdw Z_m..(hP,.4aH){down}..{right}Z_x{right}..{up}(fW,.4aH)..Z_t;
+ef s="K": cdw Z_b--Z_w; cdw .35[.45[Z_b,Z_w],Z_u]--Z_e; cdw .35[Z_b,Z_w]--Z_u;
+ef s="L": dwh Z_d--Z_a; dwv Z_b--Z_w;
+ef s="M": dwv Z_b--Z_w; dwvs(1.14)Z_w--Z_x--Z_t; dwv Z_t--Z_e;
+ef s="Q": dw circ_O; dw (.6aW,.4aH)--Z_e;
+ef s="R": dwv Z_b--Z_w; dw Z_r--(.65aW,fH){right}..(fW,.7aH)..{left}(.65aW,.44aH)..(hP,.44aH);
+ cdw Z_e{up}..{left}(hW,.44aH);
+ef s="T": dwh Z_q--Z_u; dwv .5[Z_q,Z_u]--Z_g;
+ef s="U": cdw Z_w..Z_m{down}..{right}Z_x{right}..{up}Z_o..Z_t;
+ef s="V": dwvs(1.2)Z_w--Z_g--Z_t;
+ef s="W": dwvs(1.08)Z_w--(aW/4,0)--Z_f--Z_l--Z_t;
+ef s="X": dwvs(1.4)Z_w..Z_e; dwvs(1.4) Z_b..Z_t;
+ef s="Y": dwvs(1.2)Z_w--Z_y--Z_t; dwv Z_y--Z_g;
+ef s="Z": dwh Z_q--Z_u; dwvs(1.4)(1.4hP,fP)--(aW-1.4hP,aH-fP); dwh Z_a--Z_d;
+ef s="a": dw Z_x..Z_o..Z_s..Z_m..cycle; dwv Z_e--Z_t;
+ef s="b": dw Z_x..Z_o..Z_p..Z_m..cycle; dwv Z_b--(hP,1.3aH)
+ef s="c": cdw sbp(.06,.94)Z_o..Z_s..Z_m..Z_x..cycle;
+ef s="d": dw Z_x..Z_o..Z_p..Z_m..cycle; dwv Z_e--(fW,1.3aH);
+ef s="e": cdw sbp(0,.92)Z_o..Z_s..Z_m..Z_x..cycle; dw Z_o--Z_m;
+ef s="f": cdw (.4fW,0)--(.4fW,.75aH){up}..(.75aW,fH)..{down}(fW,.8aH); dwh Z_h--Z_v;
+ef s="g": dw circ_Oa; dw sbp(0,.5)circ_Oh shifted (0,-.5fH); cdw (fW,.7aH)--(fW,-qH);
+ef s="h": cdw Z_b..(hP,.3aH){up}..(hW,.7fH)..{down}(fW,.3aH)..Z_e; dwv (hP,.3aH)--Z_w;
+ef s="i": dwv Z_g--(hW,.7aH); ppcs 1.4fP; dw Z_s;
+ef s="j": cdw (fW,.7aH)--Z_z..(aW/4,-.66fP)..Z_c; ppcs 1.4fP; dw Z_n;
+ef s="k": dwv Z_b--(hP,1.3fH); cdw .5[Z_b,Z_w]--Z_e; cdw .5[Z_b,Z_w]--Z_u;
+ef s="m": cdw Z_b..(hP,.3aH){up}..(.28aW,fH)..{down}(hW,.3aH)..Z_g;
+ cdw (hW,.6aH){up}..(.7aW,fH)..{down}(fW,.6aH)..Z_e; dwv (hP,.3aH)--Z_w;
+ef s="n": cdw Z_b{up}..(hW,.8fH)..{down}Z_o..Z_e; dwv Z_b--(hP,.8aH);
+ef s="o": dw Z_x..Z_o..Z_s..Z_m..cycle;
+ef s="p": dw Z_x..Z_o..Z_s..Z_m..cycle; dwv Z_w--(hP,-.3aH);
+ef s="q": dw Z_x..Z_o..Z_s..Z_m..cycle; dwv Z_t--(fW,-.3aH);
+ef s="r": cdw (sbp(.33,.72)Z_x..Z_o..Z_s..Z_m..cycle) shifted(0,-hP); dwv Z_b--Z_w;
+ef s="s": cdw sbp(.05,.45)circ_O; cdw sbp(.55,.95)circ_O; dw (fW,.3aH){up}..{up}(hP,.7aH);
+ef s="t": dwv Z_g--Z_f; dwh (0,.66aH)--(aW,.66aH);
+ef s="u": cdw Z_w..(hP,.55aH){down}..Z_x..(fW,.55aH){up}..Z_t; dwv Z_t--Z_e;
+ef s="v": dwv Z_w--Z_g--Z_t;
+ef s="w": dwv Z_w--(aW/4,0)--Z_f--Z_l--Z_t;
+ef s="x": dwvs(1.4)Z_w--Z_e; dwvs(1.4) Z_t--Z_b;
+ef s="y": dwvs(1.4)(Z_w--Z_y) shifted (0,-.3aH); dwvs(1.4)(Z_t--Z_b) shifted (0,-.3aH);
+ef s="z": dwh Z_q--Z_u; dwvs(1.4)(1.4hP,fP)--(aW-1.4hP,aH-fP); dwh Z_a--Z_d;
+ef s="0": dw Z_m...Z_s...Z_o...Z_x...cycle;
+ef s="1": dwv Z_g--(hW,aH-.3hP)--(hW-fP,aH-fP)--(hW-fP,aH-1.5fP);
+ef s="5": dwh Z_q--Z_u; dwv Z_r--(hP,.55fH);
+ cdw (qP,.18aH)..(.65aW,1.3hP)..(fW,.4aH)..(hW,.63aH)..(.7hP,.56aH);
+ef s="6": dw Z_x..(fW,.5fW)..Z_i..(hP,.5fW)..cycle; cdw (.8fP,hH)--Z_f;
+ef s="7": dwh (0,.fH)--Z_u; dwvs(1.2)(aW-1.2hP,aH-fP)--(.4aW,0);
+ef s="8": dw circ_Oh; dw (hP,.75aH)...Z_s...(fW,.75aH)...Z_y...cycle;
+ef s="9": dw (Z_x..(fW,.5fW)..Z_i..(hP,.5fW)..cycle) shifted (0,.32aH); cdw (fW-.45fP,hH)--Z_g;
+ef s="-": dwh Z_m--Z_o;
+ef s="+": dwv Z_x--Z_s; dwh Z_m--Z_o;
else:
fi
endgroup
@@ -1498,73 +1299,55 @@ enddef;
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
def warning_bond(expr a)=
if addA[a]=0:
- warning("A"&decimal(a)&" ( "&fsl(8)(strD[numS[a]])&") has"&fdr(2)(bond_cnt)&" bonds");
+ warning("A"&decimal(a)&" ( "&fsl(8)(strD[numS[a]])&") has"&fdr(2)(bond_cntA)&" bonds");
fi
enddef;
%-------------------------------------------------------------------------------------------------
-vardef erase_brace(expr ATOM)=
- save temp_c,temp_s;
- string temp_c,temp_s;
- temp_s:="";
- if (length(ATOM)>=4)and(ATOM<>"COOH"):
- for i=1 upto length(ATOM):
- temp_c:=subc(i,ATOM);
- if (temp_c<>"{")and(temp_c<>"}")and(temp_c<>"_")and(temp_c<>"^")
- and(temp_c<>"+")and(temp_c<>"-"):
- temp_s:=temp_s&temp_c; fi
+vardef erase_brace(expr s)=
+ sS:="";
+ if (length(s)>=4)and(s<>"COOH"):
+ for i=1 upto length(s):
+ sC:=subc(i,s);
+ if (sC<>"{")and(sC<>"}")and(sC<>"_")and(sC<>"^")and(sC<>"+")and(sC<>"-"): sS:=sS&sC; fi
endfor
- temp_s
- else: ATOM
+ sS
+ else: s
fi
enddef;
%-------------------------------------------------------------------------------------------------
-vardef erase_space(expr TXT)=
- save temp_c,temp_s;
- string temp_c,temp_s;
- temp_s:="";
- for i=1 upto length(TXT):
- temp_c:=subc(i,TXT);
- if temp_c=" ": temp_s:=temp_s&"_"; else: temp_s:=temp_s&temp_c; fi
- endfor
- temp_s
+vardef erase_space(expr t)=
+ sS:=""; for i=1 upto length(t): sC:=subc(i,t); if sC=" ": sS:=sS&"_"; else: sS:=sS&sC; fi endfor
+ sS
enddef;
%=================================================================================================
def proc_calc(expr n)=
- begingroup
- save knownA,tmp_wtp;
- num_MW:=num_MI:=tbl_atom_max:=warning_cnt:=hideH_cnt:=0;
- nE:=parts_emb_start;
+ num_MW:=num_MI:=tbl_atom_max:=warning_cnt:=hideH_cnt:=0; nE:=parts_emb_start;
for i=1 upto tbl_atom_end: sumA[i]:=0; endfor
for i=1 upto cntA:
- knownA:=bond_cnt:=0;
+ knownA:=bond_cntA:=0;
nS:=numS[i];
for j=1 upto cntB:
- if (lineB[j]>=dl)and(lineB[j]<=dm_): bondC[j]:=2;
- ef lineB[j]=tm: bondC[j]:=3;
- ef (lineB[j]=vf)or(lineB[j]=vb): bondC[j]:=0;
- ef lineB[j]=0: bondC[j]:=0;
- else: bondC[j]:=1;
- fi
- if (sB[j]=i)or(eB[j]=i): bond_cnt:=bond_cnt+bondC[j]; fi
+ bond_num[j]:=bond_type(lineB[j]);
+ if (sB[j]=i)or(eB[j]=i): bond_cntA:=bond_cntA+bond_num[j]; fi
endfor
- Bcnt[i]:=bond_cnt;
- if ((nS=0)or(nS=(C-nE)))and(bond_cnt<4):
- hideH[i]:=4-bond_cnt; hideH_cnt:=hideH_cnt+hideH[i]; else: hideH[i]:=0;
+ Bcnt[i]:=bond_cntA;
+ if ((nS=0)or(nS=(C-nE)))and(bond_cntA<4):
+ hideH[i]:=4-bond_cntA; hideH_cnt:=hideH_cnt+hideH[i]; else: hideH[i]:=0;
fi
- if nS=0: if bond_cnt>4: warning_bond(i) fi
- ef nS=(O-nE): if bond_cnt<>2: warning_bond(i) fi
- ef nS=(N-nE): if (bond_cnt<>3)and(bond_cnt<>5): warning_bond(i) fi
- ef nS=(S-nE): if (bond_cnt<>2)and(bond_cnt<>4)and(bond_cnt<>6): warning_bond(i) fi
- ef nS=(H-nE): if bond_cnt<>1: warning_bond(i) fi
- ef nS=(OH-nE): if bond_cnt<>1: warning_bond(i) fi
- ef nS=(COOH-nE): if bond_cnt<>1: warning_bond(i) fi
- ef nS=(NH2-nE): if bond_cnt<>1: warning_bond(i) fi
- ef nS=(CN-nE): if bond_cnt<>1: warning_bond(i) fi
- ef nS=(P-nE): if bond_cnt<>5: warning_bond(i) fi
- ef nS=(C-nE): if bond_cnt>4: warning_bond(i) fi
- ef nS=(F-nE): if bond_cnt<>1: warning_bond(i) fi
- ef nS=(Cl-nE): if bond_cnt<>1: warning_bond(i) fi
- ef nS=(Br-nE): if bond_cnt<>1: warning_bond(i) fi
+ if nS=0: if bond_cntA>4: warning_bond(i) fi
+ ef nS=(O-nE): if bond_cntA<>2: warning_bond(i) fi
+ ef nS=(N-nE): if (bond_cntA<>3)and(bond_cntA<>5): warning_bond(i) fi
+ ef nS=(S-nE): if (bond_cntA<>2)and(bond_cntA<>4)and(bond_cntA<>6): warning_bond(i) fi
+ ef nS=(H-nE): if bond_cntA<>1: warning_bond(i) fi
+ ef nS=(OH-nE): if bond_cntA<>1: warning_bond(i) fi
+ ef nS=(COOH-nE): if bond_cntA<>1: warning_bond(i) fi
+ ef nS=(NH2-nE): if bond_cntA<>1: warning_bond(i) fi
+ ef nS=(CN-nE): if bond_cntA<>1: warning_bond(i) fi
+ ef nS=(P-nE): if bond_cntA<>5: warning_bond(i) fi
+ ef nS=(C-nE): if bond_cntA>4: warning_bond(i) fi
+ ef nS=(F-nE): if bond_cntA<>1: warning_bond(i) fi
+ ef nS=(Cl-nE): if bond_cntA<>1: warning_bond(i) fi
+ ef nS=(Br-nE): if bond_cntA<>1: warning_bond(i) fi
fi
for j=1 upto tbl_group_end:
if strD[nS]=tbl_atom_str[j]:
@@ -1590,72 +1373,53 @@ def proc_calc(expr n)=
cal_FM:=cal_FM&erase_brace(tbl_atom_str[i]) if sumA[i]>=2: &decimal(sumA[i]) fi;
fi
endfor
- cal_MW:=substring (0,8) of decimal(num_MW); cal_MI:=substring (0,10) of decimal(num_MI);
- %---------------------------------------------------------------------------------------
- endgroup
+ cal_MW:=substring(0,8) of decimal(num_MW); cal_MI:=substring(0,10) of decimal(num_MI);
enddef;
%=================================================================================================
def proc_info_out(expr f)=
- message "["&decimal(char_num)&"]:"&inf_EN;
- if (f=1)or(f=2): file_name_output:=jobname&"-info.aux";
- ef f=3: file_name_output:=jobname&"-data.aux";
- fi
- %--------------------------------------------------------------------------------------
- if (char_num=1)and(f=2):
+ message "["&decimal(fig_num)&"]:"&inf_EN;
+ if (f=1)or(f=2): file_output:=jobname&"-info.aux"; ef f=3: file_output:=jobname&"-data.aux"; fi
+ if (fig_num=1)and(f=2):
printf tag[1] for i=2 upto aux_max: exitif tag[i]=""; &aux_delimiter&tag[i] endfor ;
fi
%--------------------------------------------------------------------------------------
for i=1 upto aux_max: exitif tag[i]="";
if i=1: printf "" else: &aux_delimiter fi
if (f=1)or(f=3): &tag[i]&":" fi
- %-------------------------------------------
- if tag[i]="J": & jobname
- ef tag[i]="C": & decimal(char_num)
- ef tag[i]="mw": & cal_MW
- ef tag[i]="fm": & cal_FM
- ef tag[i]="mi": & cal_MI
- ef tag[i]="w": & decimal(xpart(fsize))
- ef tag[i]="h": & decimal(ypart(fsize))
- ef tag[i]="w1": & decimal(mol_wd)
- ef tag[i]="h1": & decimal(mol_ht)
- ef tag[i]="An": & decimal(cntA)
- ef tag[i]="Bn": & decimal(cntB)
- ef tag[i]="mc": & mc
- %-------------------------------------------
- ef tag[i]="NO": & inf_NO
- ef tag[i]="EN": & inf_EN
- ef tag[i]="JN": & inf_JN
- ef tag[i]="MW": & inf_MW
- ef tag[i]="MI": & inf_MI
- ef tag[i]="FM": & inf_FM
- ef tag[i]="CAS": & inf_CAS
- ef tag[i]="USE": & inf_USE
- ef tag[i]="EXA": & inf_EXA
- ef tag[i]="EXB": & inf_EXB
+ %---------------------------------------------------------------------------------
+ if tag[i]="J": & jobname ef tag[i]="C": & decimal(fig_num)
+ ef tag[i]="mw": & cal_MW ef tag[i]="fm": & cal_FM
+ ef tag[i]="mi": & cal_MI ef tag[i]="mc": & mc
+ ef tag[i]="w": & decimal(xpart(fsize)) ef tag[i]="h": & decimal(ypart(fsize))
+ ef tag[i]="w1": & decimal(mol_wd) ef tag[i]="h1": & decimal(mol_ht)
+ ef tag[i]="An": & decimal(cntA) ef tag[i]="Bn": & decimal(cntB)
+ %---------------------------------------------------------------------------------
+ ef tag[i]="NO": & inf_NO ef tag[i]="EN": & inf_EN
+ ef tag[i]="JN": & inf_JN ef tag[i]="MW": & inf_MW
+ ef tag[i]="MI": & inf_MI ef tag[i]="FM": & inf_FM
+ ef tag[i]="CAS": & inf_CAS ef tag[i]="USE": & inf_USE
+ ef tag[i]="EXA": & inf_EXA ef tag[i]="EXB": & inf_EXB
fi
endfor ;
if f=3: printf "+";
- for i=1 upto mc_row: printf (substring(0,mc_indent[i]) of blank_str)&mc[i]; endfor
+ for i=1 upto mc_row: printf (substring(0,mc_indent[i]) of blanks)&mc[i]; endfor
printf "+-----------------------------------------------------------------------------";
fi
enddef;
%=================================================================================================
def proc_report_out(expr f)=
- message "["&decimal(char_num)&"]:"&inf_EN;
- if f=1: file_name_output:="temp-report.aux";
- else: file_name_output:=jobname&"-report.txt";
- fi
+ message "["&decimal(fig_num)&"]:"&inf_EN;
+ if f=1: file_output:="temp-report.aux"; else: file_output:=jobname&"-report.txt"; fi
printf "===========================================================================";
- printf " No."&fdr(4)(char_num)&" / Name = "& inf_EN&" / file = "& file_name_input;
+ printf " No."&fdr(4)(fig_num)&" / Name = "& inf_EN&" / file = "& file_input;
if mc_row>=1:
printf "---------------------------------------------------------------------------";
- for i=1 upto mc_row: printf (substring(0,mc_indent[i]) of blank_str)&mc[i]; endfor
- printf "---------------------------------------------------------------------------";
- printf " row="&fdr(3)(mc_row)&" / length="&fdr(4)(length(mc))&
- " / commands="&fdr(3)(cnt_cmm);
- printf " {}=X ="&fdr(3)(cnt_chg_bonds)&" / {}:X ="&fdr(3)(cnt_chg_atoms)&
- " / '() ="&fdr(3)(cnt_inline_def)&" / @ ="&fdr(3)(cnt_at)&
- " / & ="&fdr(3)(cnt_and)&" / < ="&fdr(3)(cnt_gtn);
+ for i=1 upto mc_row: printf (substring(0,mc_indent[i]) of blanks)&mc[i]; endfor
+ printf "---------------------------------------------------------------------------";
+ printf " row="&fdr(3)(mc_row)&" / length="&fdr(4)(length(mc))&" / commands="&fdr(3)(cnt_cmm);
+ printf " {}=X ="&fdr(3)(cnt_chgB)&" / {}:X ="&fdr(3)(cnt_chgA)&
+ " / '() ="&fdr(3)(cnt_inline_def)&" / @ ="&fdr(3)(cnt_at)&
+ " / & ="&fdr(3)(cnt_and)&" / < ="&fdr(3)(cnt_gtn);
fi
printf "---------------------------------------------------------------------------";
printf " Warnings = "&fdr(3)(warning_cnt)&" / Code= "&decimal(cntD[0]);
@@ -1668,8 +1432,8 @@ def proc_report_out(expr f)=
printf "< NO. ><atom(s) >( x axis , y axis )<bond><hideH><chg>";
for i=1 upto cntA:
printf " A"&fdl(6)(i)&fsl(8)(erase_brace(strD[numS[i]]))&
- " ("&fdr(10)(round_auto(xpart(posA[i])/blen))&" , "&
- fdr(10)(round_auto(ypart(posA[i])/blen))&" ) "&fdr(4)(Bcnt[i])&
+ " ("&fdr(10)(round(xpart(posA[i])/blen))&" , "&
+ fdr(10)(round(ypart(posA[i])/blen))&" ) "&fdr(4)(Bcnt[i])&
iif(hideH[i]>0,fdr(6)(hideH[i])," ")
if chargeA[i]<>0: &fdr(4)(chargeA[i]) fi;
endfor
@@ -1679,8 +1443,8 @@ def proc_report_out(expr f)=
nC:=lenB[i]; if nC=_size_atom: nC:=ratio_atom_bond; elseif nC<0: nC:=-nC; fi
nB:=angB[i]; if nB>180: nB:=nB-360; fi
printf " B"&fdl(4)(i)&fdr(3)(sB[i])&" -> "&fdr(3)(eB[i])&
- " ("&fdr(3)(bondC[i])&")"&fdr(8)(round_auto(angB[i]))&
- " ("&fdr(6)(round_auto(nB))&")"&fdr(8)(nC)&" ("&fdr(8)(round_auto(nC*blen))&")";
+ " ("&fdr(3)(bond_num[i])&")"&fdr(8)(round(angB[i]))&
+ " ("&fdr(6)(round(nB))&")"&fdr(8)(nC)&" ("&fdr(8)(round(nC*blen))&")";
endfor
printf "---------------------------------------------------------------------------";
printf "<atom>( atom wt )[ mi wt ] < cnt > < sum wt >[ sum mi wt ]";
@@ -1704,33 +1468,27 @@ def proc_report_out(expr f)=
printf "===========================================================================";
if f=1: printf EOF; fi
enddef;
-%-------------------------------------------------------------------------------------------------
-vardef round_auto(expr n)=
- if (n<4) and(n>-4): round(n*1000)/1000 elseif (n<40) and(n>-40): round(n*100)/100
- elseif (n<400)and(n>-400): round(n*10)/10 else: round(n) fi
-enddef;
%=================================================================================================
def proc_mol_out(expr n)=
- message "["&decimal(char_num)&"]:"&inf_EN;
- file_name_output:=jobname&"-"&fit_zero(char_num)&"-"&erase_space(inf_EN)&".mol";
+ message "["&decimal(fig_num)&"]:"&inf_EN;
+ file_output:=jobname&"-"&fit_zero(fig_num)&"-"&erase_space(inf_EN)&".mol";
%-V2000---------------------------------------------------------------------------------------
if n=1:
- printf ""; printf " -MCFtoMOL- "&fsl(20)(info[1]); printf "";
+ printf ""; printf " -MCFtoMOL- "&fsl(20)(info_s[1]); printf "";
printf fdr(3)(cntA)&fdr(3)(cntB)&" 0 0 0 0 0 0 0 0999 V2000";
for i=1 upto cntA:
printf fdr(10)(xpart(posA[i])/blen)& fdr(10)(ypart(posA[i])/blen)&fdr(10)(0)&" "&
fsl(2)(erase_brace(strD[numS[i]]))&" 0"&fdr(3)(bond_charge(chargeA[i]))&" 0 0";
endfor
for i=1 upto cntB:
- if lineB[i]<>0:
- printf fdr(3)(sB[i])&fdr(3)(eB[i])&fdr(3)(bond_type(lineB[i]))&
- fdr(3)(bond_stereo(lineB[i]))&" 0 0";
+ if lineB[i]<>0: printf fdr(3)(sB[i])&fdr(3)(eB[i])&fdr(3)(bond_type(lineB[i]))&
+ fdr(3)(bond_stereo(lineB[i]))&" 0 0";
fi
endfor
printf "M END";
%-V3000---------------------------------------------------------------------------------------
elseif n=2:
- printf ""; printf " -MCFtoMOL- "&fsl(20)(info[1]); printf "";
+ printf ""; printf " -MCFtoMOL- "&fsl(20)(info_s[1]); printf "";
printf " 0 0 0 0 0 999 V3000";
printf "M V30 BEGIN CTAB";
printf "M V30 COUNTS "&decimal(cntA)&" "&decimal(cntB)&" 0 0 0";
@@ -1753,48 +1511,40 @@ def proc_mol_out(expr n)=
enddef;
%=================================================================================================
def proc_mc_out(expr f)=
- message "["&decimal(char_num)&"]:"&inf_EN;
- file_name_output:="temp-mc.aux";
- for i=1 upto mc_row: printf (substring(0,mc_indent[i]) of blank_str)&mc[i]; endfor
+ message "["&decimal(fig_num)&"]:"&inf_EN;
+ file_output:="temp-mc.aux";
+ for i=1 upto mc_row: printf (substring(0,mc_indent[i]) of blanks)&mc[i]; endfor
printf EOF;
enddef;
%=================================================================================================
-vardef fit_zero(expr n)=if n<=9: "00" elseif n<=99: "0" else: "" fi &decimal(n) enddef;
-%-------------------------------------------------------------------------------------------------
-vardef bond_type(expr n)=
- if (n=dl)or(n=dr)or(n=dm)or(n=db)or(n=dl_)or(n=dr_)or(n=dm_): 2 ef n=tm: 3 else: 1 fi enddef;
-%-------------------------------------------------------------------------------------------------
+vardef fit_zero(expr n)= if n<=9: "00" ef n<=99: "0" else: "" fi &decimal(n) enddef;
+vardef bond_type(expr n)= if (n>=dl)and(n<=dm_):2 ef n=tm:3 ef n=0: 0 else: 1 fi enddef;
vardef bond_charge(expr n)= if n=2: 1 ef n=1: 3 ef n=-1: 5 ef n=-2: 6 else: 0 fi enddef;
-%-------------------------------------------------------------------------------------------------
vardef bond_stereo(expr n)=
if (n=wf)or(n=zb)or(n=bd): 1 ef (n=zf)or(n=wb)or(n=dt): 6 ef n=wv: 4 else: 0 fi enddef;
-%-------------------------------------------------------------------------------------------------
vardef bond_config(expr n)=
if (n=wf)or(n=zb)or(n=bd): 1 ef (n=zf)or(n=wb)or(n=dt): 3 ef n=wv: 2 else: 0 fi enddef;
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-vardef STa(expr ATOM,WT,MI)=
+vardef STa(expr s,WT,MI)=
str_cnt:=str_cnt+1; tbl_cnt:=tbl_cnt+1; parts_cnt:=parts_cnt+1;
comD[parts_cnt][1]:=_set_atom; parD[parts_cnt][1]:=str_cnt; cntD[parts_cnt]:=1;
- strD[str_cnt]:=tbl_atom_str[tbl_cnt]:=ATOM;
- tbl_atom[tbl_cnt]:=0;
- tbl_atom_wt[tbl_cnt]:=WT; tbl_atom_mi[tbl_cnt]:=MI;
+ strD[str_cnt]:=tbl_atom_str[tbl_cnt]:=s;
+ tbl_atom[tbl_cnt]:=0; tbl_atom_wt[tbl_cnt]:=WT; tbl_atom_mi[tbl_cnt]:=MI;
parts_cnt
enddef;
%-------------------------------------------------------------------------------------------------
-vardef STb(expr ATOM)(text TXT)=
+vardef STb(expr s)(text t)=
str_cnt:=str_cnt+1; tbl_cnt:=tbl_cnt+1; parts_cnt:=parts_cnt+1;
comD[parts_cnt][1]:=_set_atom; parD[parts_cnt][1]:=str_cnt; cntD[parts_cnt]:=1;
- strD[str_cnt]:=tbl_atom_str[tbl_cnt]:=ATOM;
- tbl_atom[tbl_cnt]:=0;
- for list=TXT:
+ strD[str_cnt]:=tbl_atom_str[tbl_cnt]:=s; tbl_atom[tbl_cnt]:=0;
+ for list=t:
tbl_atom[tbl_cnt]:=tbl_atom[tbl_cnt]+1;
tbl_group[tbl_cnt][tbl_atom[tbl_cnt]]:=list-parts_emb_start;
endfor
parts_cnt
enddef;
%=================================================================================================
-parts_int:=parts_emi_start;
-parts_cnt:=parts_emb_start;
+parts_int:=parts_emi_start; parts_cnt:=parts_emb_start;
%-------------------------------------------------------------------------------------------------
C:= STa("C" ,12.0107, 12.0000000); H:= STa("H" , 1.00794, 1.00782503223);
D:= STa("D" ,2.012, 2.01410177812); Ag:=STa("{Ag}",107.868, 106.905095);
@@ -1825,13 +1575,10 @@ NO:=STb("NO")(N,O); NO2:=STb("N{O_2_}")(N,O,O); NH2:=STb("N{H_2_}")(N,H,H);
SO2H:=STb("S{O_2_}H")(S,O,O,H); SO3H:=STb("S{O_3_}H")(S,O,O,O,H);
ONa:=STb("O{Na}")(O,Na); SO3Na:=STb("S{O_3_}{Na}")(S,O,O,O,Na);
%-------------------------------------------------------------------------------------------------
-tbl_group_end:=tbl_cnt;
-parts_atom_end:=parts_cnt;
+tbl_group_end:=tbl_cnt; parts_atom_end:=parts_cnt;
%=================================================================================================
-for i=3 upto 20:
- ?[i]:='((_com,_len_ss),(_get_len,_ring_len),<((-180 DIV i)-90)
- for j==2 upto i:: ,(360 DIV i) endfor,(_cyc_sB,1-i),(_com,_len_ee));
-endfor
+for i=3 upto 20: ?[i]:='((_com,_len_ss),(_get_len,_ring_len),<((-180 DIV i)-90)
+ for j==2 upto i:: ,(360 DIV i) endfor,(_cyc_sB,1-i),(_com,_len_ee)); endfor
Ph:=Ph1:='(?6,-2=dl,-4=dl,-6=dl); Ph2:='(?6,-1=dl,-3=dl,-5=dl);
for i=4,5,6: for j=2 upto i-2: ?[i][j]:='(); endfor endfor
for i=5,6,7,8: for j=11 upto 15: ?[i][j]:='(); endfor endfor
@@ -1841,8 +1588,7 @@ for i==2 upto 20:
![i]:='((_com,_len_ss),(_get_len,_tmp_len),! for j==2 upto i::,! endfor ,(_com,_len_ee));
endfor
Me:='(); Et:='(!); iPr:=?!:='(/_,!); ?!2:='(/_,!2); tBu:=??!:='(/_,/_^60,60);
-!?:='(!,/_); !?!:='(!,/_,!);
-n_:='((_set_add,a_minus)); p_:='((_set_add,a_plus));
+!?:='(!,/_); !?!:='(!,/_,!); n_:='((_set_add,a_minus)); p_:='((_set_add,a_plus));
zero_wf:='(0~wf); zero_zf:='(0~zf); zero_dm:='(0~dm); zero_wv:='(0~wv);
%-------------------------------------------------------------------------------------------------
NH:='(N,/H~nl); N!:='(N,/_); N!2:='(N,/!); SO:='(S,//O); SOO:='(S,//O^-35,//O^35);
@@ -1891,133 +1637,95 @@ def expand_set=
enddef;
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
vardef check(expr s)=
- save mc_char,mc_char,temp_c,err_cnt,char_cnt,f_depth,
- cnt_prn_s,cnt_prn_e,cnt_brc_s,cnt_brc_e,cnt_brk_s,cnt_brk_e;
- string temp_c,err_str[],err_type[];
- numeric mc_char[],err_adr[],err_code[];
- err_cnt:=char_cnt:=code_cnt:=f_depth:=cnt_cmm:=cnt_chg_atoms:=cnt_chg_bonds:=0;
- err_type[0]:="no mc-row ";
- err_type[1]:=" '(' > ')' "; err_type[2]:=" '(' < ')' ";
- err_type[3]:=" '{' > '}' "; err_type[4]:=" '{' < '}' ";
- err_type[5]:=" '[' > ']' "; err_type[6]:=" '[' < ']' ";
- err_type[7]:="missing arg"; err_type[8]:="extra arg ";
+ save mc_char,err_cnt,char_cnt,f_depth,cnt_prn_s,cnt_prn_e,cnt_brc_s,cnt_brc_e,cnt_brk_s,
+ cnt_brk_e,cmm_adr;
+ string err_str[],err_type[];
+ numeric mc_char[],err_adr[],err_code[],cmm_adr[];
+ err_cnt:=char_cnt:=code_cnt:=f_depth:=cnt_cmm:=cnt_chgA:=cnt_chgB:=0;
+ err_type[0]:="no mc-row "; err_type[1]:=" '(' > ')' "; err_type[2]:=" '(' < ')' ";
+ err_type[3]:=" '{' > '}' "; err_type[4]:=" '{' < '}' "; err_type[5]:=" '[' > ']' ";
+ err_type[6]:=" '[' < ']' "; err_type[7]:="missing arg"; err_type[8]:="extra arg ";
%---------------------------------------------------------------------------------------------
if mc_row>=1:
- %---------------------------------------------------------------------------------------------
- for i=1 upto length(s):
- temp_c:=subc(i,s);
- if temp_c<>" ": char_cnt:=char_cnt+1; mc_char[char_cnt]:=ASCII(temp_c); fi
- endfor
- mc_char[0]:=mc_char[char_cnt+1]:=mc_char[char_cnt+2]:=a_cmm;
- %-- argument missing chkeck ----------------------------------------------------------------
- cnt_prn_s:=cnt_prn_e:=cnt_brc_s:=cnt_brc_e:=cnt_brk_s:=cnt_brk_e:=cnt_inline_def:=cnt_at:=0;
- cnt_cmm:=cnt_and:=cnt_gtn:=cnt_gtn:=nA:=f_depth:=0;
- forever:
- nA:=nA+1; nB:=mc_char[nA-1]; nC:=mc_char[nA]; nD:=mc_char[nA+1];
- %-----------------------------------------------------------------------------------------
- if nC=a_cmm: if f_depth=0: cnt_cmm:=cnt_cmm+1; cmm_adr[cnt_cmm]:=nA; fi
- ef nC=a_ast:
- if nD=a_sls:
- if mc_char[nA+2]=a_ast: if mc_char[nA+3]=a_cmm: proc_err(7,nA) nA:=nA+2; fi % */* x
- ef mc_char[nA+2]=a_cmm: proc_err(7,nA) nA:=nA+1; fi % */ x
- ef nD=a_ast: if mc_char[nA+2]=a_cmm: proc_err(7,nA) nA:=nA+1; fi fi % ** x
- ef nC=a_sls: if nD=a_sls: if mc_char[nA+2]=a_cmm: proc_err(7,nA) nA:=nA+1; fi % // x
- ef nD=a_ast: if mc_char[nA+2]=a_cmm: proc_err(7,nA) nA:=nA+1; fi % /* x
- ef nD=a_cmm: proc_err(7,nA) fi % / x
- ef nC=a_hsh: if nD=a_hsh: nA:=nA+1; % ##
- ef nD=a_cmm: proc_err(7,nA) fi % # x
- if nB<>a_cmm: proc_err(8,nA) fi % a #
- ef nC=a_dol: if nD=a_cmm: proc_err(7,nA) fi % $ x
- ef nC=a_equ: if nD= a_cmm: proc_err(7,nA) fi % = x
- if nB= a_cmm: proc_err(7,nA) fi % x =
- ef nC=a_cln: if nD= a_cmm: proc_err(7,nA) fi % : x
- if nB= a_cmm: proc_err(7,nA) fi % x :
- ef nC=a_amk: cnt_at:=cnt_at+1;
- if nD= a_cmm: proc_err(7,nA) fi % @ x
- if nB<>a_cmm: proc_err(8,nA) fi % a @
- ef nC=a_and: cnt_and:=cnt_and+1;
- if nD= a_cmm: proc_err(7,nA) fi % & x
- if nB<>a_cmm: proc_err(8,nA) fi % a &
- ef nC=a_gtn: cnt_gtn:=cnt_gtn+1;
- ef nC=a_ltn: if nD= a_cmm: proc_err(7,nA) fi % > x
- if nB= a_cmm: proc_err(7,nA) fi % x >
- ef nC=a_tld: if nD= a_cmm: proc_err(7,nA) fi % ~ x
- if nB= a_cmm: proc_err(7,nA) fi % x ~
- ef nC=a_hat: if nD= a_cmm: proc_err(7,nA) fi % ^ x
- if nB= a_cmm: proc_err(7,nA) fi % x ^
- ef nC=a_bqt: if nD= a_cmm: proc_err(7,nA) fi % ` x
- if nB= a_cmm: proc_err(7,nA) fi % x `
- ef nC=a_bar: if nD= a_bar:
- if mc_char[nA+2]=a_bar: nA:=nA+1; % ||
- ef mc_char[nA+2]<>a_cmm: proc_err(8,nA) % | a
- fi
- if nB<>a_cmm: proc_err(8,nA) fi % a |
- fi
- %------------------------------------------------------------------------------------------
- ef nC=a_prn_s: if nD= a_cmm: proc_err(7,nA) fi % ( x
- cnt_prn_s:=cnt_prn_s+1; f_depth:=1;
- if nB=a_qut: cnt_inline_def:=cnt_inline_def+1; fi
- ef nC=a_prn_e: cnt_prn_e:=cnt_prn_e+1; f_depth:=0;
- ef nC=a_brc_s: if nD= a_cmm: proc_err(7,nA) fi % { x
- cnt_brc_s:=cnt_brc_s+1; f_depth:=1;
- ef nC=a_brc_e: if nD= a_cmm: proc_err(7,nA) fi % } x
- cnt_brc_e:=cnt_brc_e+1; f_depth:=0;
- if nD=a_cln: cnt_chg_atoms:=cnt_chg_atoms+1;
- ef nD=a_equ: cnt_chg_bonds:=cnt_chg_bonds+1;
+ for i=1 upto length(s):
+ tempc:=subc(i,s); if tempc<>" ": char_cnt:=char_cnt+1; mc_char[char_cnt]:=ASCII(tempc); fi
+ endfor
+ mc_char[0]:=mc_char[char_cnt+1]:=mc_char[char_cnt+2]:=a_cmm;
+ %-- argument missing chkeck --------------------------------------------------------------
+ cnt_prn_s:=cnt_prn_e:=cnt_brc_s:=cnt_brc_e:=cnt_brk_s:=cnt_brk_e:=cnt_inline_def:=cnt_at:=0;
+ cnt_cmm:=cnt_and:=cnt_gtn:=cnt_gtn:=nA:=f_depth:=0;
+ forever:
+ nA:=nA+1; nB:=mc_char[nA-1]; nC:=mc_char[nA]; nD:=mc_char[nA+1];
+ if nC=a_cmm: if f_depth=0: cnt_cmm:=cnt_cmm+1; cmm_adr[cnt_cmm]:=nA; fi
+ ef nC=a_ast:
+ if nD=a_sls:
+ if mc_char[nA+2]=a_ast: if mc_char[nA+3]=a_cmm: proc_err(7,nA) nA:=nA+2; fi % */* x
+ ef mc_char[nA+2]=a_cmm: proc_err(7,nA) nA:=nA+1; fi % */ x
+ ef nD=a_ast: if mc_char[nA+2]=a_cmm: proc_err(7,nA) nA:=nA+1; fi fi % ** x
+ ef nC=a_sls: if nD=a_sls: if mc_char[nA+2]=a_cmm: proc_err(7,nA) nA:=nA+1; fi % // x
+ ef nD=a_ast: if mc_char[nA+2]=a_cmm: proc_err(7,nA) nA:=nA+1; fi % /* x
+ ef nD=a_cmm: proc_err(7,nA) fi % / x
+ ef nC=a_hsh: if nD=a_hsh: nA:=nA+1; % ##
+ ef nD=a_cmm: proc_err(7,nA) fi if nB<>a_cmm: proc_err(8,nA) fi % a # x
+ ef nC=a_dol: if nD=a_cmm: proc_err(7,nA) fi % $ x
+ ef nC=a_equ: if nD= a_cmm: proc_err(7,nA) fi if nB= a_cmm: proc_err(7,nA) fi % x = x
+ ef nC=a_cln: if nD= a_cmm: proc_err(7,nA) fi if nB= a_cmm: proc_err(7,nA) fi % x : x
+ ef nC=a_amk: cnt_at:=cnt_at+1;
+ if nD= a_cmm: proc_err(7,nA) fi if nB<>a_cmm: proc_err(8,nA) fi % a @ x
+ ef nC=a_and: cnt_and:=cnt_and+1;
+ if nD= a_cmm: proc_err(7,nA) fi if nB<>a_cmm: proc_err(8,nA) fi % a & x
+ ef nC=a_gtn: cnt_gtn:=cnt_gtn+1;
+ ef nC=a_ltn: if nD= a_cmm: proc_err(7,nA) fi if nB= a_cmm: proc_err(7,nA) fi % x > x
+ ef nC=a_tld: if nD= a_cmm: proc_err(7,nA) fi if nB= a_cmm: proc_err(7,nA) fi % x ~ x
+ ef nC=a_hat: if nD= a_cmm: proc_err(7,nA) fi if nB= a_cmm: proc_err(7,nA) fi % x ^ x
+ ef nC=a_bqt: if nD= a_cmm: proc_err(7,nA) fi if nB= a_cmm: proc_err(7,nA) fi % x ` x
+ ef nC=a_bar: if nD= a_bar: if mc_char[nA+2]=a_bar: nA:=nA+1; % ||
+ ef mc_char[nA+2]<>a_cmm: proc_err(8,nA) % | a
+ fi
+ if nB<>a_cmm: proc_err(8,nA) fi % a |
fi
- ef nC=a_brk_s: if nD= a_cmm: proc_err(7,nA) fi % [ x
- cnt_brk_s:=cnt_brk_s+1; f_depth:=1;
- ef nC=a_brk_e: if nB= a_cmm: proc_err(7,nA) fi % x ]
- cnt_brk_e:=cnt_brk_e+1; f_depth:=0;
- %-------------------------------------------------------------------------------------------
- fi
- exitif nA>=char_cnt+1;
- endfor
- %-- brackets balance check -------------------------------------------------------------------
- if cnt_prn_s>cnt_prn_e: proc_err(1,0) ef cnt_prn_s<cnt_prn_e: proc_err(2,0) fi
- if cnt_brc_s>cnt_brc_e: proc_err(3,0) ef cnt_brc_s<cnt_brc_e: proc_err(4,0) fi
- if cnt_brk_s>cnt_brk_e: proc_err(5,0) ef cnt_brk_s<cnt_brk_e: proc_err(6,0) fi
- %---------------------------------------------------------------------------------------------
- else:
- proc_err(0,0)
+ ef nC=a_prn_s: if nD= a_cmm: proc_err(7,nA) fi % ( x
+ cnt_prn_s:=cnt_prn_s+1; f_depth:=1;
+ if nB=a_qut: cnt_inline_def:=cnt_inline_def+1; fi
+ ef nC=a_prn_e: cnt_prn_e:=cnt_prn_e+1; f_depth:=0;
+ ef nC=a_brc_s: if nD= a_cmm: proc_err(7,nA) fi cnt_brc_s:=cnt_brc_s+1; f_depth:=1; % { x
+ ef nC=a_brc_e: if nD= a_cmm: proc_err(7,nA) fi cnt_brc_e:=cnt_brc_e+1; f_depth:=0; % } x
+ if nD=a_cln: cnt_chgA:=cnt_chgA+1; ef nD=a_equ: cnt_chgB:=cnt_chgB+1; fi
+ ef nC=a_brk_s: if nD= a_cmm: proc_err(7,nA) fi cnt_brk_s:=cnt_brk_s+1; f_depth:=1; % [ x
+ ef nC=a_brk_e: if nB= a_cmm: proc_err(7,nA) fi cnt_brk_e:=cnt_brk_e+1; f_depth:=0; % x ]
+ fi
+ exitif nA>=char_cnt+1;
+ endfor
+ %-- brackets balance check -----------------------------------------------------------------
+ if cnt_prn_s>cnt_prn_e: proc_err(1,0) ef cnt_prn_s<cnt_prn_e: proc_err(2,0) fi
+ if cnt_brc_s>cnt_brc_e: proc_err(3,0) ef cnt_brc_s<cnt_brc_e: proc_err(4,0) fi
+ if cnt_brk_s>cnt_brk_e: proc_err(5,0) ef cnt_brk_s<cnt_brk_e: proc_err(6,0) fi
+ else: proc_err(0,0)
fi
%---------------------------------------------------------------------------------------------
for i=1 upto err_cnt:
message "*"&fdr(3)(i)&" "&err_type[err_code[i]]&fdr(4)(err_adr[i])&" '"&err_str[i]&"'";
endfor
- %---------------------------------------------------------------------------------------------
%%%%%%% err_cnt>0: readstring;
- %---------------------------------------------------------------------------------------------
err_cnt
enddef;
%-------------------------------------------------------------------------------------------------
-def proc_err(expr ERR_CODE,ADR)=
- err_cnt:=err_cnt+1; err_adr[err_cnt]:=ADR; err_code[err_cnt]:=ERR_CODE;
- if ERR_CODE<=6: err_str[err_cnt]:=" ";
- else: err_str[err_cnt]:=substring (ADR-3,ADR+2) of mc;
- fi
+def proc_err(expr e,n)= err_cnt:=err_cnt+1; err_adr[err_cnt]:=n; err_code[err_cnt]:=e;
+ if e<=6: err_str[err_cnt]:=" "; else: err_str[err_cnt]:=substring(n-3,n+2) of mc; fi
enddef;
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
def query(text s)=
begingroup
- save file_name,f_mcf,f_line,unit_row,unit_cnt,line_s,unit_row_cnt,mc_row,line_cnt,
- semicol_cnt,info_cnt,info_s,filter_n,order,min_s,min_n,par_cnt,key_cnt,var_n,info_s,
- sign_at,sign_n,filter_tag,filter_var,filter_sign,filter_cnt,filter_p,temp_s,par_s,
- at_colon,at_equal,at_less,at_greater,at_n,info_cnt;
- string line_s[][],sort_s[],par_s[],sort_all[],key_s[],filter_s[],filter_tag[],filter_var[],
- info_s[],file_name_input,temp_s,min_s;
- numeric unit_row_cnt[],order[],order_tbl[],filter_sign[],filter_p[];
- unit_row:=f_mcf:=mc_row:=line_cnt:=info_cnt:=par_cnt:=key_cnt:=filter_cnt:=0;
- unit_cnt:=1;
- %-----------------------------------------------------------------------------------------------
- file_name_input:=default_data_file;
- file_name_output:=default_temp_file;
+ save f_mcf,f_line,unit_row,unit_cnt,line_s,row_cnt,semic_cnt,info_cnt,order,min_n,key_cnt,info_s, sign_at,sign_n,filter_n,filter_tag,filter_var,filter_sign,filter_cnt,filter_p,at_semic,
+ at_colon,at_equal,at_less,at_greater,at_n,sort_all,key_s,sort_s;
+ string line_s[][],sort_s[],sort_all[],key_s[],filter_tag[],filter_var[],info_s[];
+ numeric row_cnt[],order[],order_tbl[],filter_sign[],filter_p[],at_semic[];
+ unit_row:=f_mcf:=mc_row:=info_cnt:=key_cnt:=filter_cnt:=0; unit_cnt:=1;
+ file_input:=default_data_file; file_output:=default_temp_file;
%-----------------------------------------------------------------------------------------------
for list=s:
- at_colon:=scan_char(":",list,0,1);
- at_equal:=scan_char("=",list,0,1);
- at_less:=scan_char("<",list,0,1);
- at_greater:=scan_char(">",list,0,1);
+ at_colon:=scan_char(":",list,0,1); at_equal:=scan_char("=",list,0,1);
+ at_less:=scan_char("<",list,0,1); at_greater:=scan_char(">",list,0,1);
%---------------------------------------------------------------------------------------------
if at_colon>=2: sign_at:=at_colon; sign_n:=0; at_n:=1;
ef at_equal>=2: if (at_equal-1)=at_less: sign_at:=at_equal; sign_n:=5; at_n:=2;
@@ -2027,93 +1735,66 @@ def query(text s)=
else: sign_at:=at_greater; sign_n:=4; at_n:=1; fi
ef at_less>=2: sign_at:=at_less; sign_n:=3; at_n:=1;
fi
- tag_s:=substring (0,sign_at-at_n) of list;
- var_s:=substring (sign_at,length(list)) of list;
+ sT:=substring(0,sign_at-at_n) of list; sV:=substring(sign_at,length(list)) of list;
%---------------------------------------------------------------------------------------------
if sign_n=0:
- if tag_s="f":
- if scan_char(".",var_s,0,1)=0: file_name_input:=var_s&".mcf";
- else: file_name_input:=var_s;
- fi
- ef tag_s="o":
- if scan_char(".",var_s,0,1)=0: file_name_output:=var_s&".aux";
- else: file_name_output:=var_s;
- fi
- ef tag_s="s": key_cnt:=key_cnt+1; key_s[key_cnt]:=var_s;
+ if sT="f": if scan_char(".",sV,0,1)=0: file_input:=sV&".mcf"; else: file_input:=sV; fi
+ ef sT="o": if scan_char(".",sV,0,1)=0: file_output:=sV&".aux"; else: file_output:=sV; fi
+ ef sT="s": key_cnt:=key_cnt+1; key_s[key_cnt]:=sV;
fi
- %---------------------------------------------------------------------------------------------
else:
- filter_cnt:=filter_cnt+1;
- filter_tag[filter_cnt]:=tag_s;
- filter_sign[filter_cnt]:=sign_n;
- if (sign_n>=3)and(is_num(var_s)=1): filter_var[filter_cnt]:=fix_num(var_s);
- else: filter_var[filter_cnt]:=var_s;
+ filter_cnt:=filter_cnt+1; filter_tag[filter_cnt]:=sT; filter_sign[filter_cnt]:=sign_n;
+ if (sign_n>=3)and(is_num(sV)=1): filter_var[filter_cnt]:=fix_num(sV);
+ else: filter_var[filter_cnt]:=sV;
fi
fi
endfor
%-----------------------------------------------------------------------------------------------
forever:
- temps:=readfrom file_name_input; exitif temps=EOF;
+ temps:=readfrom file_input; exitif temps=EOF;
if subc(1,temps)<>"%":
- line_cnt:=line_cnt+1; unit_row:=unit_row+1;
- line_s[unit_cnt][unit_row]:=temps;
- if (subc(1,temps)="+")and(subc(2,temps)<>"-"): f_mcf:=1; mc_row:=1;
- ef (subc(1,temps)="+")and(subc(2,temps)="-"):
- unit_row_cnt[unit_cnt]:=unit_row;
- f_mcf:=unit_row:=0;
- filter_n:=1;
+ unit_row:=unit_row+1; line_s[unit_cnt][unit_row]:=temps;
+ if (substring(0,2) of temps)="+-":
+ row_cnt[unit_cnt]:=unit_row; f_mcf:=unit_row:=0; filter_n:=1;
for i=1 upto filter_cnt: filter_p[i]:=0; endfor
for i=1 upto key_cnt: sort_s[i]:=""; endfor
- %---------------------------------------------------------------------------------------
for i=1 upto info_cnt:
- at_colon:=scan_char(":",info_s[i],0,1);
- tag_s:=substring (0,at_colon-1) of info_s[i];
- var_s:=substring (at_colon,length(info_s[i])) of info_s[i];
- %-------------------------------------------------------------------------------------
+ nA:=scan_char(":",info_s[i],0,1);
+ sT:=substring(0,nA-1) of info_s[i]; sV:=substring(nA,length(info_s[i])) of info_s[i];
for j=1 upto key_cnt:
- if key_s[j]=tag_s:
- if is_num(var_s)=1: sort_s[j]:=fix_num(var_s); else: sort_s[j]:=var_s; fi
- fi
+ if key_s[j]=sT: if is_num(sV)=1: sort_s[j]:=fix_num(sV); else: sort_s[j]:=sV; fi fi
endfor
- %-------------------------------------------------------------------------------------
for j=1 upto filter_cnt:
- if filter_tag[j]=tag_s:
+ if filter_tag[j]=sT:
filter_p[j]:=1;
- if (filter_sign[j]>=3)and(is_num(var_s)=1): temp_s:=fix_num(var_s);
- else: temp_s:=var_s;
- fi
- if filter_sign[j]=1: if not(temp_s= filter_var[j]): filter_n:=0; fi
- ef filter_sign[j]=2: if not(temp_s<>filter_var[j]): filter_n:=0; fi
- ef filter_sign[j]=3: if not(temp_s< filter_var[j]): filter_n:=0; fi
- ef filter_sign[j]=4: if not(temp_s> filter_var[j]): filter_n:=0; fi
- ef filter_sign[j]=5: if not(temp_s<=filter_var[j]): filter_n:=0; fi
- ef filter_sign[j]=6: if not(temp_s>=filter_var[j]): filter_n:=0; fi
+ if (filter_sign[j]>=3)and(is_num(sV)=1): temps:=fix_num(sV); else: temps:=sV; fi
+ if filter_sign[j]=1: if not(temps= filter_var[j]): filter_n:=0; fi
+ ef filter_sign[j]=2: if not(temps<>filter_var[j]): filter_n:=0; fi
+ ef filter_sign[j]=3: if not(temps< filter_var[j]): filter_n:=0; fi
+ ef filter_sign[j]=4: if not(temps> filter_var[j]): filter_n:=0; fi
+ ef filter_sign[j]=5: if not(temps<=filter_var[j]): filter_n:=0; fi
+ ef filter_sign[j]=6: if not(temps>=filter_var[j]): filter_n:=0; fi
fi
fi
endfor
endfor
for i=1 upto filter_cnt: if filter_p[i]=0: filter_n:=0; fi endfor
- %-------------------------------------------------------------------------------------
sort_all[unit_cnt]:="";
for j=1 upto key_cnt:
if j=key_cnt: sort_all[unit_cnt]:=sort_all[unit_cnt]&sort_s[j];
- else: sort_all[unit_cnt]:=fix_str(15,sort_s[1]);
+ else: sort_all[unit_cnt]:=fix_str(15,sort_s[1]);
fi
endfor
- %-------------------------------------------------------------------------------------
- info_cnt:=0;
- if filter_n=1: unit_cnt:=unit_cnt+1; fi
- %-------------------------------------------------------------------------------------
- ef (subc(1,temps)<>"+")and(subc(1,temps)<>"%"):
+ info_cnt:=0; if filter_n=1: unit_cnt:=unit_cnt+1; fi
+ ef subc(1,temps)="+": f_mcf:=1; mc_row:=1;
+ ef subc(1,temps)<>"%":
if f_mcf=1: mc_row:=mc_row+1;
else:
- semicol_cnt:=count_semicol(temps);
- for i=1 upto semicol_cnt+1:
+ semic_cnt:=split_semic(temps);
+ for i=1 upto semic_cnt+1:
info_cnt:=info_cnt+1;
- if i<=semicol_cnt:
- info_s[info_cnt]:=substring (at_semicol[i-1],at_semicol[i]-1) of temps;
- else:
- info_s[info_cnt]:=substring (at_semicol[semicol_cnt],length(temps)) of temps;
+ if i<=semic_cnt: info_s[info_cnt]:=substring(at_semic[i-1],at_semic[i]-1) of temps;
+ else: info_s[info_cnt]:=substring(at_semic[semic_cnt],length(temps)) of temps;
fi
endfor
fi
@@ -2122,59 +1803,42 @@ def query(text s)=
endfor
%=============================================================================================
unit_cnt:=unit_cnt-1;
- %---------------------------------------------------------------------------------------------
if key_cnt>=1:
for i=1 upto unit_cnt: order[i]:=0; endfor
- for i=1 upto unit_cnt: min_s:="~";
+ for i=1 upto unit_cnt: temps:="~";
for j=1 upto unit_cnt:
- if order[j]=0: if sort_all[j]<min_s: min_s:=sort_all[j]; min_n:=j; fi fi
+ if order[j]=0: if sort_all[j]<temps: temps:=sort_all[j]; min_n:=j; fi fi
endfor
order[min_n]:=i; order_tbl[i]:=min_n;
endfor
for i=1 upto unit_cnt:
- for j=1 upto unit_row_cnt[order_tbl[i]]: printf line_s[order_tbl[i]][j]; endfor
+ for j=1 upto row_cnt[order_tbl[i]]: printf line_s[order_tbl[i]][j]; endfor
endfor
else:
- for i=1 upto unit_cnt: for j=1 upto unit_row_cnt[i]: printf line_s[i][j]; endfor endfor
+ for i=1 upto unit_cnt: for j=1 upto row_cnt[i]: printf line_s[i][j]; endfor endfor
fi
- closefrom file_name_input; closefrom file_name_output;
+ closefrom file_input; closefrom file_output;
endgroup;
enddef;
%=============================================================================================
vardef fix_str(expr n,s)=
- save temp_s;
- string temp_s;
- if length(s)<n: temp_s:=s&substring(0,n-length(s)) of blank_str;
- ef length(s)>n: temp_s:=substring(0,n) of s;
- fi
- temp_s
+ if length(s)<n: sS:=s&substring(0,n-length(s)) of blanks;
+ ef length(s)>n: sS:=substring(0,n) of s; fi sS
enddef;
%---------------------------------------------------------------------------------------------
vardef fix_num(expr s)=
- save temp_s,at_dot;
- string temp_s;
- temp_s:=s;
- at_dot:=scan_char(".",temp_s,0,1);
- if at_dot=0: temp_s:=fsr(4)(temp_s); ef at_dot=1: temp_s:=" 0"&temp_s;
- ef at_dot=2: temp_s:=" "&temp_s; ef at_dot=3: temp_s:=" "&temp_s;
- ef at_dot=4: temp_s:=" "&temp_s;
- fi
- temp_s
+ sS:=s; nN:=scan_char(".",sS,0,1);
+ if nN=0: sS:=fsr(4)(sS); ef nN=1: sS:=" 0"&sS;
+ ef nN=2: sS:=" "&sS; ef nN=3: sS:=" "&sS; ef nN=4: sS:=" "&sS; fi sS
enddef;
%---------------------------------------------------------------------------------------------
vardef is_num(expr s)=
- save numeric_n;
- numeric_n:=1;
for i=1 upto length(s):
- if ((subc(i,s)>="0")and(subc(i,s)<="9"))or(subc(i,s)="."): else: numeric_n:=0; fi
- endfor
- numeric_n
+ if ((subc(i,s)>="0")and(subc(i,s)<="9"))or(subc(i,s)="."): nN:=1; else: nN:=0; fi endfor nN
enddef;
%-------------------------------------------------------------------------------------------------
-vardef count_semicol(expr s)=
- save nS;
- nS:=at_semicol[0]:=0;
- for i=1 upto length(s): if subc(i,s)=";": nS:=nS+1; at_semicol[nS]:=i; fi endfor
- nS
+vardef split_semic(expr s)=
+ nN:=at_semic[0]:=0;
+ for i=1 upto length(s): if subc(i,s)=";": nN:=nN+1; at_semic[nN]:=i; fi endfor nN
enddef;
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
diff --git a/graphics/mcf2graph/mcf_data_base.mcf b/graphics/mcf2graph/mcf_data_base.mcf
index 6c7897a6ff..5f94cc711c 100644
--- a/graphics/mcf2graph/mcf_data_base.mcf
+++ b/graphics/mcf2graph/mcf_data_base.mcf
@@ -1,5 +1,5 @@
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-% molecular data base file mcf_data_base.mcf by Akira Yamaji 2022.01.17
+% molecular data base file mcf_data_base.mcf by Akira Yamaji 2022.02.20
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% tag1:var1;tag2:var2;tag3:var3 .....
% first character of line "%" comment out
@@ -358,7 +358,7 @@ Cat:biological;EN:Cholesterol;MW:386.664;EXA:1
Cat:biological;EN:Riboflavin;MW:376.37;EXA:1
+
<30,Ph,{3,9}=?6,{8,16}=dl,{7,10,14}:N,12:NH,{11,13}://O,{1,6}:/_,
- @10,\`1.2,!,*/OH,!,/*OH,!,*/OH,!2,OH
+ @10,\`1.5,!,*/OH,!,/*OH,!,*/OH,!2,OH
+------------------------------------------------------------------------------
Cat:biological;EN:Resveratrol;MW:228.24;EXA:1
+
@@ -925,10 +925,10 @@ Cat:antibiotics;EN:Tiamulin;MW:493.74;EXA:1
+------------------------------------------------------------------------------
Cat:antibiotics;EN:Rifampicin;MW:822.94;EXA:1
+
-<30,Ph,6:/_^30,5:/OH,|,-6=?5,1:O,3://O,2:/*_^60,|,-8=?6,{2,4}=dl,{1,4}:/OH,
- #1,@-2,\,NH,60,//O,-60,/_,60~dl,60,60~dl,-60,
- */_,60,/*OH,-60,/*_,60,/*OH,60,*/_^30,-60,
- 60,/*_^30,-53,66,-53~dl,66`1.2,O,##,&$8,
+<30,Ph,6:/_^30,5:/OH,-6=?5,-3:O,-8=?6,{-2,-4}=dl,{-1,-4}:/OH,
+ #1,@-2,\,NH,60,-60,60~dl,60,60~dl,-60,
+ 60,-60,60,60,-60,60,-53,66,-53~dl,66`1.2,O,##,&$8,
+ ||,{9,15}://O,16:/_,{20,24^30}:*/_,{21,23}:/*OH,{8^60,22,26^30}:/*_,
-4:/*O!,@-6,-30,O,!,//O,!,@$11,\,!!,N,!,|,?6,1:N,4:N!
+------------------------------------------------------------------------------
%==============================================================================
diff --git a/graphics/mcf2graph/mcf_exa_soc.mp b/graphics/mcf2graph/mcf_exa_soc.mp
index 27e479c840..1e8edddf01 100644
--- a/graphics/mcf2graph/mcf_exa_soc.mp
+++ b/graphics/mcf2graph/mcf_exa_soc.mp
@@ -1,20 +1,21 @@
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-% Molecular Coding Format by Akira Yamaji 2022.01.22
+% Molecular Coding Format by Akira Yamaji 2022.02.20
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-input mcf2graph; %%% it must be version 4.79
-message "* mcf_exa_soc 2022.01.22";
+input mcf2graph; %%% it must be version 4.80
+message "* mcf_exa_soc 2022.02.20";
message "";
%------------------------------------------------------------------------------
%%%%sw_frame:=Outside;
%%%%sw_numbering:=Bond;
%%%%sw_numbering:=Atom;
+%%%%sw_frame:=Atom;
tag1:="J"; tag2:="C"; tag3:="fm"; tag4:="mw"; tag5:="EN"; tag6:="MW";
%------------------------------------------------------------------------------
%% outputformat:="png"; hppp:=vppp:=0.1; outputtemplate:="%j-%3c.png";
%------------------------------------------------------------------------------
-%%%%ext(defaultfont:=mpfont; defaultscale:=.3; label.rt(inf_EN,(0,0));)
+%ext(defaultfont:=mpfont; defaultscale:=.3; label.rt(inf_EN,(0,0));)
%------------------------------------------------------------------------------
-%sw_output:=Font+Info;
+%sw_output:=Fig+Info;
%ext(defaultfont:=mpfont; defaultscale:=.3;
%label.rt(inf_EN&" / "&cal_MW&" / "&decimal(num_MW-scantokens(inf_MW)),(0,0));)
%------------------------------------------------------------------------------
@@ -28,7 +29,7 @@ max_blength:=4mm;
%%%% beginfigm("t:EN","v:Caffeine") % select EN=Caffeine
forever:
%%%% beginfigm("f:mcf_data_base","v+:*") % 'mcf_data_base.mcf'(default)
-%%%% beginfigm("f:temp","v+:*") % use query output
+%%%%beginfigm("f:temp","v+:*") % use query output 'temp.mcf'
%%%% beginfigm("v+:*") % select all
beginfigm("t:EXA","v+:1") % 'v+:1': select EXA=1
if f_EOF=0: if check(mc)=0: MC(scantokens(mc)) fi fi
diff --git a/graphics/mcf2graph/mcf_example.pdf b/graphics/mcf2graph/mcf_example.pdf
index eda1e4dc70..0996b2358a 100644
--- a/graphics/mcf2graph/mcf_example.pdf
+++ b/graphics/mcf2graph/mcf_example.pdf
Binary files differ
diff --git a/graphics/mcf2graph/mcf_example.tex b/graphics/mcf2graph/mcf_example.tex
index cb1a429f1b..de26f8df1d 100644
--- a/graphics/mcf2graph/mcf_example.tex
+++ b/graphics/mcf2graph/mcf_example.tex
@@ -1,7 +1,7 @@
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-% Example of MCF Typeset with LuaLaTeX(luamplib) by A.Yamaji 2022.01.22
+% Example of MCF Typeset with LuaLaTeX(luamplib) by A.Yamaji 2022.02.20
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-% ** mcf2graph.mf must be version 4.79
+% ** mcf2graph.mf must be version 4.80
% ** use mcf_data_base.mcf
% ** typeset by LuaLaTeX(luamplib)
\documentclass{article}
@@ -47,7 +47,7 @@
\newcount \t@num%
\font\labelM=cmtt8 at 6pt\relax%
%-------------------------------------------------------------------------
-\f@num=0%
+\f@num=1%
\t@num=0%
\unitlength=0.01mm%
\noindent%
@@ -79,7 +79,7 @@
\advance\f@num\@ne\relax%
\advance\t@num\@ne\relax%
\ifnum\t@num=5 \\ \t@num=\z@ \fi%
-\ifnum\f@num=155 \CONT@false \fi%
+\ifnum\f@num=156 \CONT@false \fi%
\ifCONT@ \repeat%
%------------------------------------------------------------------------------
\end{document}
diff --git a/graphics/mcf2graph/mcf_man_soc.mp b/graphics/mcf2graph/mcf_man_soc.mp
index 5c53bc8fb4..219f78c5a9 100644
--- a/graphics/mcf2graph/mcf_man_soc.mp
+++ b/graphics/mcf2graph/mcf_man_soc.mp
@@ -1,9 +1,9 @@
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-% Molecular Coding Format file for mcf_manual.tex by Akira.Yamaji 2022.01.22
+% Molecular Coding Format file for mcf_manual.tex by Akira.Yamaji 2022.02.20
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-input mcf2graph; %% it must be version 4.79
+input mcf2graph; %% it must be version 4.80
% ** use data base file 'mcf_data_base.mcf'
-message "mcf_man_soc 2022.01.22"; message "";
+message "mcf_man_soc 2022.02.20"; message "";
%------------------------------------------------------------------------
sw_mframe:=0;
sw_expand:=0;
@@ -358,48 +358,48 @@ beginfigm("EN:Insert atom")
MC(<-30,!2,O,!2,N,!2)
endfigm
%***********************************************************************
-beginfigm("EN:change atom")
+beginfigm("EN:change atom",":<30,!5,2:O,{3:5}:N")
fsize:=(70mm,10mm);
msize:=(0.48,1);
- MCat(0,0.5)(<30,!5,2:O,{3:5}:N)
+ MCat(0,0.5)(scantokens(mc))
sw_numbering:=Atom;
- MCat(1,0.5)(<30,!5,2:O,{3:5}:N)
+ MCat(1,0.5)(scantokens(mc))
endfigm
%***********************************************************************
-beginfigm("EN:change atom brock address 1")
+beginfigm("EN:change atom brock address 1",":?6,@4,\,|,?6,2:O")
fsize:=(70mm,14mm);
fmargin:=(3mm,1.5mm);
- MCat(0,.5)(?6,@4,\,|,?6,2:O)
+ MCat(0,.5)(scantokens(mc))
sw_numbering:=Atom;
msize:=(1,.88);
- MCat(1,.5)(?6,@4,\,?6)
+ MCat(1,.5)(scantokens(mc))
endfigm
%***********************************************************************
-beginfigm("EN:change atom brock address 2")
+beginfigm("EN:change atom brock address 2",":?6,@4,\,|,?6,||,2:N")
fsize:=(70mm,14mm);
fmargin:=(3mm,1.5mm);
- MCat(0,.5)(?6,@4,\,|,?6,||,2:N)
+ MCat(0,.5)(scantokens(mc))
sw_numbering:=Atom;
msize:=(1,.88);
- MCat(1,.5)(?6,@4,\,?6)
+ MCat(1,.5)(scantokens(mc))
endfigm
%***********************************************************************
-beginfigm("EN:change atom absolute address")
+beginfigm("EN:change atom absolute address",":?6,@4,\,?6,$2:N")
fsize:=(70mm,14mm);
fmargin:=(3mm,1.5mm);
- MCat(0,.5)(?6,@4,\,?6,$2:N)
+ MCat(0,.5)(scantokens(mc))
sw_numbering:=Atom;
msize:=(1,.88);
- MCat(1,.5)(?6,@4,\,?6)
+ MCat(1,.5)(scantokens(mc))
endfigm
%***********************************************************************
-beginfigm("EN:change atom relative adress")
+beginfigm("EN:change atom relative adress",":?6,@4,\,?6,-2:N")
fsize:=(70mm,14mm);
fmargin:=(3mm,1.5mm);
- MCat(0,.5)(?6,@4,\,?6,-2:N)
+ MCat(0,.5)(scantokens(mc))
sw_numbering:=Atom;
msize:=(1,.88);
- MCat(1,.5)(?6,@4,\,?6)
+ MCat(1,.5)(scantokens(mc))
endfigm
%***********************************************************************
beginfigm("EN:Charged atom")
@@ -770,11 +770,11 @@ beginfigm("EN:fmargin")
)
endfigm
%***********************************************************************
-beginfigm("EN:offset_thickness")
+beginfigm("EN:offset_thickness",":<30,Ph")
fsize:=(60mm,12mm);
- offset_thickness:=0.0pt; MCat(0.1,0.5)(<30,Ph)
- offset_thickness:=0.2pt; MCat(0.55,0.5)(<30,Ph)
- offset_thickness:=0.5pt; MCat(1,0.5)(<30,Ph)
+ offset_thickness:=0.0pt; MCat(0.1,0.5)(scantokens(mc))
+ offset_thickness:=0.2pt; MCat(0.55,0.5)(scantokens(mc))
+ offset_thickness:=0.5pt; MCat(1,0.5)(scantokens(mc))
ext(defaultscale:=0.6; labeloffset:=1bp;
label.urt("0.0pt",(0,1bp));
label.urt("0.2pt",(0.36w,1bp));
@@ -782,14 +782,11 @@ beginfigm("EN:offset_thickness")
)
endfigm
%***********************************************************************
-beginfigm("EN:offset_bond_gap")
+beginfigm("EN:offset_bond_gap",":<30,Ph")
fsize:=(60mm,12mm);
- offset_bond_gap:=0.0pt;
- MCat(0.1, .5)(<30,Ph)
- offset_bond_gap:=0.3pt; %<<== default
- MCat(.55, .5)(<30,Ph)
- offset_bond_gap:=1.0pt;
- MCat(1, .5)(<30,Ph)
+ offset_bond_gap:=0.0pt; MCat(0.1, 0.5)(scantokens(mc))
+ offset_bond_gap:=0.3pt; MCat(0.55,0.5)(scantokens(mc)) %<<== default
+ offset_bond_gap:=1.0pt; MCat(1, 0.5)(scantokens(mc))
ext(defaultscale:=0.6; labeloffset:=1bp;
label.urt("0.0pt",(0,1bp));
label.urt("0.3pt",(0.36w,1bp));
@@ -799,12 +796,9 @@ endfigm
%***********************************************************************
beginfigm("EN:offset_atom")
fsize:=(60mm,12mm);
- offset_atom:=0.0pt;
- MCat(0.1, .5)(<30,?6,3:O)
- offset_atom:=0.8pt; %<<== default
- MCat(.55, .5)(<30,?6,3:O)
- offset_atom:=2.0pt;
- MCat(1, .5)(<30,?6,3:O)
+ offset_atom:=0.0pt; MCat(0.1, .5)(<30,?6,3:O)
+ offset_atom:=0.8pt; MCat(.55, .5)(<30,?6,3:O) %<<== default
+ offset_atom:=2.0pt; MCat(1, .5)(<30,?6,3:O)
ext(defaultscale:=0.6; labeloffset:=1bp;
label.urt("0.0pt",(0,1bp));
label.urt("0.8pt",(0.36w,1bp));
@@ -814,12 +808,9 @@ endfigm
%***********************************************************************
beginfigm("EN:offset_wedge")
fsize:=(60mm,12mm);
- offset_wedge:=0.0pt;
- MCat(0.1,0.5)(<30,?6,5:*/_)
- offset_wedge:=0.4pt; %<<== default
- MCat(0.55,0.5)(<30,?6,5:*/_)
- offset_wedge:=1.0pt;
- MCat(1, 0.5)(<30,?6,5:*/_)
+ offset_wedge:=0.0pt; MCat(0.1,0.5)(<30,?6,5:*/_)
+ offset_wedge:=0.4pt; MCat(0.55,0.5)(<30,?6,5:*/_) %<<== default
+ offset_wedge:=1.0pt; MCat(1, 0.5)(<30,?6,5:*/_)
ext(defaultscale:=0.6; labeloffset:=1bp;
label.urt("0.0pt",(0,1bp));
label.urt("0.4pt",(0.36w,1bp));
@@ -830,12 +821,9 @@ endfigm
beginfigm("EN:max_blength")
fsize:=(60mm,20mm);
sw_frame:=sw_frame+Mol;
- max_blength:=5mm;
- MCat(0, .5)(<30,Ph)
- max_blength:=8mm;
- MCat(.4,.5)(<30,Ph)
- max_blength:=10mm;
- MCat(1, .5)(<30,Ph) %<<== default
+ max_blength:=5mm; MCat(0, .5)(<30,Ph)
+ max_blength:=8mm; MCat(.4,.5)(<30,Ph)
+ max_blength:=10mm; MCat(1, .5)(<30,Ph) %<<== default
ext(defaultscale:=0.6; labeloffset:=1bp;
label("5mm", (0.1w,0.5h));
label("8mm", (0.42w,0.5h));
@@ -845,12 +833,9 @@ endfigm
%***********************************************************************
beginfigm("EN:ratio_thickness_bond")
fsize:=(60mm,12mm);
- ratio_thickness_bond:=0.005;
- MCat(0.1,0.5)(<30,Ph)
- ratio_thickness_bond:=0.015; %<<== default
- MCat(.55,0.5)(<30,Ph)
- ratio_thickness_bond:=0.03;
- MCat(1, 0.5)(<30,Ph)
+ ratio_thickness_bond:=0.005; MCat(0.1,0.5)(<30,Ph)
+ ratio_thickness_bond:=0.015; MCat(.55,0.5)(<30,Ph) %<<== default
+ ratio_thickness_bond:=0.03; MCat(1, 0.5)(<30,Ph)
ext(defaultscale:=0.6; labeloffset:=1bp;
label.urt("0.005",(0,1bp));
label.urt("0.015",(0.36w,1bp));
@@ -860,12 +845,9 @@ endfigm
%***********************************************************************
beginfigm("EN:ratio_char_bond")
fsize:=(60mm,12mm);
- ratio_char_bond:=1.0;
- MCat(0, .5)(<30,?6,6:O,3:NH)
- ratio_char_bond:=1.5; %<<== default
- MCat(.5, .5)(<30,?6,6:O,3:NH)
- ratio_char_bond:=2.0;
- MCat( 1, .5)(<30,?6,6:O,3:NH)
+ ratio_char_bond:=1.0; MCat(0, .5)(<30,?6,6:O,3:NH)
+ ratio_char_bond:=1.5; MCat(.5, .5)(<30,?6,6:O,3:NH) %<<== default
+ ratio_char_bond:=2.0; MCat( 1, .5)(<30,?6,6:O,3:NH)
ext(defaultscale:=0.6; labeloffset:=1bp;
label.urt("1.0",(0,1bp));
label.urt("1.5",(0.36w,1bp));
@@ -875,12 +857,9 @@ endfigm
%***********************************************************************
beginfigm("EN:ratio_bondgap_bond")
fsize:=(60mm,12mm);
- ratio_bondgap_bond:=0.10;
- MCat(0.1, .5)(<30,Ph)
- ratio_bondgap_bond:=0.15; %<<== default
- MCat(.55, .5)(<30,Ph)
- ratio_bondgap_bond:=0.20;
- MCat(1 , .5)(<30,Ph)
+ ratio_bondgap_bond:=0.10; MCat(0.1, .5)(<30,Ph)
+ ratio_bondgap_bond:=0.15; MCat(.55, .5)(<30,Ph) %<<== default
+ ratio_bondgap_bond:=0.20; MCat(1 , .5)(<30,Ph)
ext(defaultscale:=0.6; labeloffset:=1bp;
label.urt("0.10",(0,1bp));
label.urt("0.15",(0.36w,1bp));
@@ -890,12 +869,9 @@ endfigm
%***********************************************************************
beginfigm("EN:ratio_atom_bond")
fsize:=(60mm,12mm);
- ratio_atom_bond:=0.25;
- MCat(0.1, .5)(<30,?6,3:O)
- ratio_atom_bond:=0.33; %<<== default
- MCat(.55, .5)(<30,?6,3:O)
- ratio_atom_bond:=0.45;
- MCat(1, .5)(<30,?6,3:O)
+ ratio_atom_bond:=0.25; MCat(0.1, .5)(<30,?6,3:O)
+ ratio_atom_bond:=0.33; MCat(.55, .5)(<30,?6,3:O) %<<== default
+ ratio_atom_bond:=0.45; MCat(1, .5)(<30,?6,3:O)
ext(defaultscale:=0.6; labeloffset:=1bp;
label.urt("0.25",(0,1bp));
label.urt("0.33",(0.36w,1bp));
@@ -905,12 +881,9 @@ endfigm
%***********************************************************************
beginfigm("EN:ratio_wedge_bond")
fsize:=(70mm,12mm);
- ratio_wedge_bond:=0.1;
- MCat(0.05, .5)(?6,4:*/_)
- ratio_wedge_bond:=0.12; %<<== default
- MCat(.55, .5)(?6,4:*/_)
- ratio_wedge_bond:=0.2;;
- MCat(1 , .5)(?6,4:*/_)
+ ratio_wedge_bond:=0.1; MCat(0.05,.5)(?6,4:*/_)
+ ratio_wedge_bond:=0.12; MCat(.55, .5)(?6,4:*/_) %<<== default
+ ratio_wedge_bond:=0.2; MCat(1 , .5)(?6,4:*/_)
ext(defaultscale:=0.6; labeloffset:=1bp;
label.urt("0.10",(0,1bp));
label.urt("0.12",(0.36w,1bp));
@@ -918,15 +891,12 @@ beginfigm("EN:ratio_wedge_bond")
)
endfigm
%***********************************************************************
-beginfigm("EN:ratio_atomgap_atom")
+beginfigm("EN:ratio_atomgap_atom",":<30,!2`0.5,2:O")
fsize:=(70mm,12mm);
sw_frame:=sw_frame+Atom;
- ratio_atomgap_atom:=0.00;
- MCat(0, .5)(<30,!2`0.5,2:O)
- ratio_atomgap_atom:=0.050; %<<== default
- MCat(.5,.5)(<30,!2`0.5,2:O)
- ratio_atomgap_atom:=0.12;
- MCat(1, .5)(<30,!2`0.5,2:O)
+ ratio_atomgap_atom:=0.00; MCat(0, .5)(scantokens(mc))
+ ratio_atomgap_atom:=0.050; MCat(.5,.5)(scantokens(mc)) %<<== default
+ ratio_atomgap_atom:=0.12; MCat(1, .5)(scantokens(mc))
ext(defaultscale:=0.75; labeloffset:=1bp;
label.urt("0.00",(0.05w,1bp));
label.urt("0.05",(0.45w,1bp));
@@ -936,12 +906,9 @@ endfigm
%***********************************************************************
beginfigm("EN:ratio_chain_ring")
fsize:=(70mm,12mm);
- ratio_chain_ring:= 0.4;
- MCat(0.05, .5)(<30,?6,4:/!)
- ratio_chain_ring:= 0.66; %<<== default
- MCat(.45, .5)(<30,?6,4:/!)
- ratio_chain_ring:= 1;
- MCat(1, .5)(<30,?6,4:/!)
+ ratio_chain_ring:= 0.4; MCat(0.05,.5)(<30,?6,4:/!)
+ ratio_chain_ring:= 0.66; MCat(.45, .5)(<30,?6,4:/!) %<<== default
+ ratio_chain_ring:= 1; MCat(1, .5)(<30,?6,4:/!)
ext(defaultscale:=0.6; labeloffset:=1bp;
label.urt("0.40",(0,1bp));
label.urt("0.66",(0.3w,1bp));
@@ -949,14 +916,11 @@ beginfigm("EN:ratio_chain_ring")
)
endfigm
%***********************************************************************
-beginfigm("EN:ratio_hashgap_bond")
+beginfigm("EN:ratio_hashgap_bond",":<30,!2,2:/*_`1.5")
fsize:=(70mm,15mm);
- ratio_hashgap_bond:=0.06;
- MCat(0.08, .5)(<30,!2,2:/*_`1.5)
- ratio_hashgap_bond:=0.12; %<<== default
- MCat( .55, .5)(<30,!2,2:/*_`1.5)
- ratio_hashgap_bond:=0.20;
- MCat(1, .5)(<30,!2,2:/*_`1.5)
+ ratio_hashgap_bond:=0.06; MCat(0.08,.5)(scantokens(mc))
+ ratio_hashgap_bond:=0.12; MCat( .55,.5)(scantokens(mc)) %<<== default
+ ratio_hashgap_bond:=0.20; MCat(1, .5)(scantokens(mc))
ext(defaultscale:=0.6; labeloffset:=1bp;
label.urt("0.06",(0,1bp));
label.urt("0.12",(0.4w,1bp));
@@ -994,25 +958,25 @@ beginfigm("EN:Switwch trimming")
MCat(.8,.7)(Ph)
endfigm
%***********************************************************************
-beginfigm("EN:Switwch Expand")
+beginfigm("EN:Switwch Expand",":<30,Ph,4:/COOH,3:/NH2")
fsize:=(60mm,20mm);
- MCat(0, .5)(<30,Ph,4:/COOH,3:/NH2)
+ MCat(0, .5)(scantokens(mc))
sw_expand:=1;
- MCat(1, .5)(<30,Ph,4:/COOH,3:/NH2)
+ MCat(1, .5)(scantokens(mc))
endfigm
%***********************************************************************
-beginfigm("EN:Switwch abbreviate group")
+beginfigm("EN:Switwch abbreviate group",":<30,Ph,4:/Cl,3:/F")
fsize:=(60mm,12mm);
- MCat(.15, .5)(<30,Ph,4:/Cl,3:/F)
+ MCat(.15, .5)(scantokens(mc))
sw_abbreviate:=Group;
- MCat(.85, .5)(<30,Ph,4:/Cl,3:/F)
+ MCat(.85, .5)(scantokens(mc))
endfigm
%***********************************************************************
-beginfigm("EN:Switwch abbreviate bondtype")
+beginfigm("EN:Switwch abbreviate bondtype",":<30,Ph,4:/Cl,3:/F")
fsize:=(60mm,12mm);
- MCat(.15, .5)(<30,Ph,4:/Cl,3:/F)
+ MCat(.15, .5)(scantokens(mc))
sw_abbreviate:=Bond;
- MCat(.85, .5)(<30,Ph,4:/Cl,3:/F)
+ MCat(.85, .5)(scantokens(mc))
endfigm
%***********************************************************************
beginfigm("EN:Switwch font frame 1")
diff --git a/graphics/mcf2graph/mcf_manual.pdf b/graphics/mcf2graph/mcf_manual.pdf
index 9ed8f10d2b..021454e35d 100644
--- a/graphics/mcf2graph/mcf_manual.pdf
+++ b/graphics/mcf2graph/mcf_manual.pdf
Binary files differ
diff --git a/graphics/mcf2graph/mcf_manual.tex b/graphics/mcf2graph/mcf_manual.tex
index b7e4057854..123b478879 100644
--- a/graphics/mcf2graph/mcf_manual.tex
+++ b/graphics/mcf2graph/mcf_manual.tex
@@ -1,5 +1,5 @@
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-% Molecular Coding Format manual by Akira Yamaji 2022.01.22
+% Molecular Coding Format manual by Akira Yamaji 2022.02.13
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\documentclass[a4paper]{article}
\usepackage[pdftex]{graphicx}
diff --git a/graphics/mcf2graph/mcf_mplib_exa.pdf b/graphics/mcf2graph/mcf_mplib_exa.pdf
index 3e5dcc6e0a..e72c689015 100644
--- a/graphics/mcf2graph/mcf_mplib_exa.pdf
+++ b/graphics/mcf2graph/mcf_mplib_exa.pdf
Binary files differ
diff --git a/graphics/mcf2graph/mcf_mplib_exa.tex b/graphics/mcf2graph/mcf_mplib_exa.tex
index 8033148e4c..998d7378b4 100644
--- a/graphics/mcf2graph/mcf_mplib_exa.tex
+++ b/graphics/mcf2graph/mcf_mplib_exa.tex
@@ -1,7 +1,7 @@
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-% Example of MCF typest with LuaLaTeX(luamplib) by A.Yamaji 2022.01.22
+% Example of MCF typest with LuaLaTeX(luamplib) by A.Yamaji 2022.02.20
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-% ** mcf2graph.mp must be version 4.79
+% ** mcf2graph.mp must be version 4.80
% ** use mcf_data_base.mcf
\documentclass{article}
%------------------------------------------------------------------------------
@@ -50,35 +50,26 @@
\begin{verbatim}
beginfigm("EN:Erythromycin","MW:733.93")
fsize:=(120mm,30mm);
- MC(
- <30,#1,<-120,60,60,60,-60,60,60,-60,60,60,60,-60,60,60,##,&1,
- 14:O,13:/*Et,{1,9}://O,{2',4,6^-35,8,10',12^35}:/*_,
- {6^35,11,12^-35}:*/OH,
- @$3,\*,O,30~zb,|,?6`.7,6:O,#.5,{5~wf,3^35}:/_,4:/*OH,3^-35:/*O!,##,
- @$5,\*^30`1.7,O,!~zb,|,?6`.7,6:O,#.5,5:/*_,2:*/OH,3:/*N?!
- )
- ext(defaultscale:=0.8;
- label.lrt("fm: "&cal_FM,(0,h-5mm));
- label.lrt("mw: "&cal_MW,(0,h-9mm));
- label.lrt("MW: "&inf_MW,(0,h-13mm));)
+ MC(<30,#1,<-120,60,60,60,-60,60,60,-60,60,60,60,-60,60,60,##,&1,
+ 14:O,13:/*Et,{1,9}://O,{2',4,6^-35,8,10',12^35}:/*_,
+ {6^35,11,12^-35}:*/OH,
+ @$3,\*,O,30~zb,|,?6`.7,6:O,#.5,{5~wf,3^35}:/_,4:/*OH,3^-35:/*O!,##,
+ @$5,\*^30`1.7,O,!~zb,|,?6`.7,6:O,#.5,5:/*_,2:*/OH,3:/*N?!)
+ ext(defaultscale:=0.8; label.lrt("fm: "&cal_FM,(0,h-5mm));
+ label.lrt("mw: "&cal_MW,(0,h-9mm)); label.lrt("MW: "&inf_MW,(0,h-13mm));)
endfigm;
\end{verbatim}
%----------------------------------------------------------------------------
\begin{mplibcode}
beginfigm("EN:Erythromycin","MW:733.93")
fsize:=(120mm,30mm);
- MC(
- <30,#1,<-120,60,60,60,-60,60,60,-60,60,60,60,-60,60,60,##,&1,
- 14:O,13:/*Et,{1,9}://O,{2',4,6^-35,8,10',12^35}:/*_,
- {6^35,11,12^-35}:*/OH,
- @$3,\*,O,30~zb,|,?6`.7,6:O,#.5,{5~wf,3^35}:/_,4:/*OH,3^-35:/*O!,##,
- @$5,\*^30`1.7,O,!~zb,|,?6`.7,6:O,#.5,5:/*_,2:*/OH,3:/*N?!
- )
- ext(defaultscale:=0.8;
- label.lrt("fm: "&cal_FM,(0,h-5mm));
- label.lrt("mw: "&cal_MW,(0,h-9mm));
- label.lrt("MW: "&inf_MW,(0,h-13mm));
- )
+ MC(<30,#1,<-120,60,60,60,-60,60,60,-60,60,60,60,-60,60,60,##,&1,
+ 14:O,13:/*Et,{1,9}://O,{2',4,6^-35,8,10',12^35}:/*_,
+ {6^35,11,12^-35}:*/OH,
+ @$3,\*,O,30~zb,|,?6`.7,6:O,#.5,{5~wf,3^35}:/_,4:/*OH,3^-35:/*O!,##,
+ @$5,\*^30`1.7,O,!~zb,|,?6`.7,6:O,#.5,5:/*_,2:*/OH,3:/*N?!)
+ ext(defaultscale:=0.8; label.lrt("fm: "&cal_FM,(0,h-5mm));
+ label.lrt("mw: "&cal_MW,(0,h-9mm)); label.lrt("MW: "&inf_MW,(0,h-13mm));)
endfigm;
\end{mplibcode}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@@ -93,9 +84,11 @@ beginfigm("EN:Paclitaxel","MW:853.918",
": @1,\,O,!,//O,!,*/OH,!,/Ph,60~wf,NH,-60,//O,60,Ph, ",
": @7,\*,O,-45,//O,60,Ph,11:*/OCO!>rl,12:/*OCO!^-15>lr ")
%---------------------------------------------------------------------
- fsize:=(140mm,30mm); if check(mc)=0: MCat(0,0.5)(scantokens(mc)) fi
- sw_numbering:=Atom; if check(mc)=0: MCat(0.6,0.5)(scantokens(mc)) fi
- sw_numbering:=Bond; if check(mc)=0: MCat(1,0.5)(scantokens(mc)) fi
+ fsize:=(140mm,30mm);
+ if check(mc)=0: MCat(0,0.5)(scantokens(mc))
+ sw_numbering:=Atom; MCat(0.6,0.5)(scantokens(mc))
+ sw_numbering:=Bond; MCat(1,0.5)(scantokens(mc))
+ fi
endfigm
\end{verbatim}
%----------------------------------------------------------------------------
@@ -107,9 +100,11 @@ beginfigm("EN:Paclitaxel","MW:853.918",
": @1,\,O,!,//O,!,*/OH,!,/Ph,60~wf,NH,-60,//O,60,Ph, ",
": @7,\*,O,-45,//O,60,Ph,11:*/OCO!>rl,12:/*OCO!^-15>lr ")
%---------------------------------------------------------------------
- fsize:=(140mm,30mm); if check(mc)=0: MCat(0,0.5)(scantokens(mc)) fi
- sw_numbering:=Atom; if check(mc)=0: MCat(0.6,0.5)(scantokens(mc)) fi
- sw_numbering:=Bond; if check(mc)=0: MCat(1,0.5)(scantokens(mc)) fi
+ fsize:=(140mm,30mm);
+ if check(mc)=0: MCat(0,0.5)(scantokens(mc))
+ sw_numbering:=Atom; MCat(0.6,0.5)(scantokens(mc))
+ sw_numbering:=Bond; MCat(1,0.5)(scantokens(mc))
+ fi
endfigm
\end{mplibcode}
%----------------------------------------------------------------------------
diff --git a/macros/latex/contrib/caption/CHANGELOG b/macros/latex/contrib/caption/CHANGELOG
index 1eba38b6a1..a3d2d4baf2 100644
--- a/macros/latex/contrib/caption/CHANGELOG
+++ b/macros/latex/contrib/caption/CHANGELOG
@@ -116,7 +116,7 @@ v3.4 (2019/09/11)
- Label format `autodot' added (for usage within documents using KOMA-Script document class)
- Label format `unnumbered' added
- \ContinuedFloat renamed to \continuedfloat (since this is not a preamble command)
-- \caption will always be re-defined now, unless `compatibility' is set to `v1' (or an incompatible package is loaded)
+- \caption will always be re-defined now, unless `compatibility' is set to `true' (or an incompatible package is loaded)
v3.5 (2020/08/30)
- If a document class defines \caption@documentclass, an adaption to the caption package will be loaded as caption-<documentclass>.sto
@@ -130,6 +130,21 @@ v3.5 (2020/08/30)
- Options "figure*" resp. "table*" will be applied additionally in "figure*" resp. "table*" environments (twocolumn mode only)
- Option and font option "hypersetup" added which expands to \hypersetup (if defined) resp. nothing (otherwise)
+v3.6 (2022/02/20)
+- Fallback to versions "v1", "v3.0", "v3.1", "v3.2", "v3.3", "v3.4", and "v3.5" added
+- The caption-subcaption counter handling is now independent on the "position=" setting
+- Option "compatibility=true" dropped in favor of "\usepackage{caption}[=v1]"
+- Option "parboxrestore=partial/full" removed (was obsolete since v3.5)
+- \captionsetup{margin={...,}} sets only the left margin, \captionsetup{margin={,...}} only the right one
+- The font option "stretch" does not require the setspace package anymore
+- New command \nextfloat to influence the (new) counter handling
+- New command \DeclareCaptionPosition to declare custom postion settings
+- New command \AtCaptionSingleLineCheck to add re-definitions to the single-line-check
+- New command \captiontext to typeset a caption without counter increment and without list entry
+- Optional argument added to \setcaptiontype (which specifies options to be applied additionally)
+- New environments `captiongroup' and `captionblock'
+- Adapted to the `tablefootnote' package
+
bicaption package
-----------------
@@ -149,6 +164,12 @@ v1.2 (2016/03/27)
v1.3 (2020/10/25)
- Option "bi-separator" and command \DeclareBiCaptionSeparator added
+v1.4 (2020/12/25)
+- Support of all available caption fallback versions since "v3.2" added
+
+v1.5 (2021/01/04)
+- Support of the listings package added
+
ltcaption package
-----------------
@@ -187,3 +208,11 @@ v1.2 (2018/05/13)
v1.3 (2019/08/31)
- New command \subfloat for easy transition from the `subfig' package
+
+v1.4 (2020/12/25)
+- Support of all available caption fallback versions since "v3.1" added
+
+v1.5 (2022/01/07)
+- New environments subcaptiongroup and subcaptionblock
+- New command \subcaptionlistentry to make an entry into the list of figures resp. tables
+- New command \subcaptiontext to typeset a sub-caption without counter increment and list entry
diff --git a/macros/latex/contrib/caption/README b/macros/latex/contrib/caption/README
index 143820eda6..832f0f160d 100644
--- a/macros/latex/contrib/caption/README
+++ b/macros/latex/contrib/caption/README
@@ -1,8 +1,8 @@
==========================================================================
The `caption' package bundle
-Release 2020-10-26
-Copyright (C) 1994-2020 Axel Sommerfeldt (axel.sommerfeldt@f-m.fm)
+Release 2022-02-20
+Copyright (C) 1994-2022 Axel Sommerfeldt (axel.sommerfeldt@f-m.fm)
License: LPPL = LaTeX Project Public Licence
Maintenance Status: maintained (by Axel Sommerfeldt)
@@ -17,6 +17,7 @@ If you need help for installation please visit:
If you need help using these packages please visit:
https://latex.org/forum/
+ https://topanswers.xyz/tex
https://tex.stackexchange.com/
https://golatex.de/ (German)
https://texwelt.de/ (German)
@@ -29,7 +30,7 @@ or send an e-mail to
--------------------------------------------------------------------------
-The `caption' package v3.5 offers customization of captions of floating
+The `caption' package v3.6 offers customization of captions of floating
environments such `figure' and `table' and cooperates with the packages
float, floatflt, fltpage, hyperref, hypcap, listings, longtable,
@@ -39,14 +40,14 @@ environments such `figure' and `table' and cooperates with the packages
Furthermore the `floatrow', the `subcaption', and the `subfig' package
supports the `caption' package and uses its \captionsetup interface.
-User Manual: caption-eng.pdf (English)
- caption-rus.pdf (Russian, outdated)
- caption-deu.pdf (German)
+User Manual: caption.pdf (English)
+
+An outdated user manual in Russian and German could be downloaded from
+https://gitlab.com/axelsommerfeldt/caption/-/tree/master/doc/outdated
--------------------------------------------------------------------------
-The `bicaption' package v1.3 is a tiny package supporting the typesetting
-of bilingual captions.
+The `bicaption' package v1.5 supports typesetting of bilingual captions.
User Manual: bicaption.pdf (English)
@@ -65,9 +66,8 @@ User Manual: ltcaption.pdf (English)
--------------------------------------------------------------------------
-The `subcaption' package v1.3 is a small package supporting typesetting
-of sub-captions (by using the the sub-caption feature of the `caption'
-package).
+The `subcaption' package v1.5 supports typesetting of sub-captions
+(by using the the sub-caption feature of the `caption' package).
User Manual: subcaption.pdf (English)
diff --git a/macros/latex/contrib/caption/bicaption.dtx b/macros/latex/contrib/caption/bicaption.dtx
index 5bba05cb2f..fba7724ff3 100644
--- a/macros/latex/contrib/caption/bicaption.dtx
+++ b/macros/latex/contrib/caption/bicaption.dtx
@@ -2,7 +2,7 @@
%
% This is file `bicaption.dtx'.
%
-% Copyright (C) 2010-2020 Axel Sommerfeldt (axel.sommerfeldt@f-m.fm)
+% Copyright (C) 2010-2021 Axel Sommerfeldt (axel.sommerfeldt@f-m.fm)
%
% --------------------------------------------------------------------------
%
@@ -27,17 +27,16 @@
% caption.sty, caption-light.sty, caption2.sty, caption3.sty,
% caption-ams-smf.sto, caption-beamer.sto, caption-elsarticle.sto,
% caption-koma.sto, caption-memoir.sto, caption-ntg.sto,
-% caption-thesis.sto, bicaption.sty, ltcaption.sty, subcaption.sty,
-% and the user manuals
-% caption-deu.tex, caption-eng.tex, caption-rus.tex.
+% caption-thesis.sto, bicaption.sty, ltcaption.sty, subcaption.sty.
%
% \fi
-% \CheckSum{457}
+%
+% \CheckSum{626}
%
% \iffalse
%<*driver>
\NeedsTeXFormat{LaTeX2e}[1994/12/01]
-\ProvidesFile{bicaption.drv}[2020/10/25 v1.3 Adds a bilingual caption feature to the caption package]
+\ProvidesFile{bicaption.drv}[2022/01/07 v1.5 Adds a bilingual caption feature to the caption package]
\hbadness=9999 \newcount\hbadness \hfuzz=74pt % Make TeX shut up.
%\errorcontextlines=3
%
@@ -54,7 +53,8 @@
%
\usepackage[T1]{fontenc}
\usepackage[german,english]{babel}
-\usepackage{selinput}\SelectInputMappings{adieresis={¤},germandbls={Ÿ}}
+%\usepackage{selinput}\SelectInputMappings{adieresis={¤},germandbls={Ÿ}}
+\usepackage[utf8]{inputenc}
%
\usepackage[bottom]{footmisc}
%
@@ -85,8 +85,11 @@
\newenvironment{background}{\par\bigskip\csname background*\endcsname}{\csname endbackground*\endcsname}
\newenvironment{background*}{\small\MARGINSYM{\Mountain}\ignorespaces}{\par}
%
+\makeatletter
\newcommand*\MARGINSYM[1]{\hskip 1sp \marginpar{\raggedleft\textcolor{blue}{{#1}}}}
-\newcommand*\NEW[2]{\MARGINSYM{\vskip2pt\footnotesize#1\\#2}}
+\newcommand*\NEW[1]{\@ifstar{\@NEW{#1}{\vskip2pt}}{\@NEW{#1}{}}}
+\newcommand*\@NEW[3]{\MARGINSYM{#2\footnotesize#1\\#3}}
+\makeatother
%
\newenvironment{Options}[1]%
{\list{}{\renewcommand\makelabel[1]{\texttt{##1}\hfil}%
@@ -135,7 +138,6 @@
% \section{Loading the package}
% \label{sec:loading}
%
-% \DescribeMacro{\usepackage}
% This package will be loaded by
% \begin{quote}
% |\usepackage|\oarg{options}|{bicaption}|\quad.
@@ -160,7 +162,7 @@
% \section{Setting options}
% \label{sec:options}
%
-% \DescribeMacro{\captionsetup}
+% \DescribeMacro\captionsetup
% The command
% \begin{quote}
% |\captionsetup[bi]|\marg{options}
@@ -266,14 +268,14 @@
% will swap the primary and secondary language,
% making the first language the second one and vice versa. (The default is |false|.)
%
-% \NEWfeature{v1.3}
% \item[bi-separator=]
% \begin{quote}|\captionsetup{bi-separator=|\meta{name}|}|\end{quote}
+% \NEWfeature{v1.3}
% will select a separator between first and second bilingual caption.
% You could choose one of the following: `none' (which is the default one
% and could also be addressed as `default'), `smallskip', `medskip',
% `largeskip', or a self-defined one using
-% \DescribeMacro{\DeclareBiCaptionSeparator}
+% \DescribeMacro{\DeclareBiCaption-\\Separator}
% \begin{quote}|\DeclareBiCaptionSeparator|\marg{name}\marg{code}\end{quote}
% Examples:
% \begin{quote}
@@ -321,9 +323,430 @@
% \cs{captionbox}.)
% \endgroup
%
-% \bigskip
+% \pagebreak[3]
+% \section{Customising lists}
+% \label{sec:lists}
+%
+% \DescribeMacro{list=}
+% As default both caption texts will be insert into the List of Figures resp. List of Tables.
+% To suppress the second entry just pass the option |list=off| to the \package{bicaption}
+% package, e.g.:
+% \begin{quote}
+% |\usepackage[lang=english,|\ldots|,list=off]{bicaption}|
+% \end{quote}
+%
+% \pagebreak[3]
+% \DescribeMacro{listtype+=}
+% Another option is separating the lists. For that purpose the option
+% \begin{quote}
+% |listtype+=|\meta{list type extension}
+% \end{quote}
+% can be used to tell the \package{bicaption} package to use a different list
+% for the second caption text.
+% The given value will be appended to the current environment type;
+% for example with |listtype+=X| the list entries will be put into the list
+% responsible for the types
+% |figureX| ($=$ |figure| $+$ |X|), |tableX| ($=$ |table| $+$ |X|) etc.
+%
+% Such a \meta{list type} can be defined using |\Declare|\-|Floating|\-|Environment|
+% offered by the \package{newfloat} package, but some document classes
+% or other packages offer macros for defining new floating environment types
+% (and their corresponding lists) as well.
+%
+% A sample document:
+% \begin{quote}
+% |\documentclass[a4paper]{article}|\\
+% ||\\
+% |% Use "ngerman" as 1st language, "english" as 2nd one|\\
+% |\usepackage[english,ngerman]{babel}|\\
+% ||\\
+% |% Load the bicaption package with 2nd language set to|\\
+% |% "english", and list type "figureEng" resp. "tableEng"|\\
+% |\usepackage[lang=english,listtype+=Eng]{bicaption}|\\
+% ||\\
+% |\usepackage{newfloat}|\\
+% |% Define type "figureEng" and \listoffigureEng|\\
+% |\DeclareFloatingEnvironment[fileext=lof2]{figureEng}|\\
+% | [Figure][List of Figures]|\\
+% |% Define type "tableEng" and \listoftableEng|\\
+% |\DeclareFloatingEnvironment[fileext=lot2]{tableEng}|\\
+% | [Table][List of Tables]|\\
+% ||\\
+% |\begin{document}|\\
+% ||\\
+% |\listoffigures % typeset "Abbildungsverzeichnis"|\\
+% |\listoffigureEng % typeset "List of Figures"|\\
+% ||\\
+% |\begin{figure}|\\
+% | \centering|\\
+% | A placeholder for an image or whatever|\\
+% | \bicaption{Deutscher Text}{English text}|\\
+% |\end{figure}|\\
+% ||\\
+% |\end{document}|
+% \end{quote}
+%
+% \pagebreak[3]
+% A different approach is using one list for both languages, but with different formatting.
+% Since the \package{caption} package does not offer options and commands for
+% customising the format of the lists, one need an additional package for this purpose,
+% for example the \package{titletoc} package:
+%
+% \begin{quote}
+% |\documentclass[a4paper]{article}|\\
+% ||\\
+% |% Use "ngerman" as 1st language, "english" as 2nd one|\\
+% |\usepackage[english,ngerman]{babel}|\\
+% ||\\
+% |% Load the bicaption package with 2nd language set to|\\
+% |% "english", and list type "figure2" resp. "table2"|\\
+% |\usepackage[lang=english,listtype+=2]{bicaption}|\\
+% ||\\
+% |% We load the titletoc package for customizing lists|\\
+% |% Note: Loading titletoc should be done prior|\\
+% |% defining additional floating environments with|\\
+% |% \DeclareFloatingEnvironment|\\
+% |\usepackage{titletoc}|\\
+% ||\\
+% |\usepackage{newfloat}|\\
+% |% Define the new floating environment type "figure2"|\\
+% |% Use the same file extension as for "figure" (.lof) here|\\
+% |\DeclareFloatingEnvironment[fileext=lof]{figure2}|\\
+% |% Define the new floating environment type "table2"|\\
+% |% Use the same file extension as for "table" (.lot) here|\\
+% |\DeclareFloatingEnvironment[fileext=lot]{table2}|\\
+% ||\\
+% |% We use the titletoc package for customizing "figure2"|\\
+% |% which is appropriate for the second language captions|\\
+% \iffalse
+% |\contentsuse{figure2}{lof}|\\
+% \fi
+% |\titlecontents{figure2}[3.8em]|\\
+% | {} % no above code|\\
+% | {} % empty numbered entry format|\\
+% | {} % empty numberless entry format|\\
+% | {} % empty filler page format|\\
+% ||\\
+% |\begin{document}|\\
+% ||\\
+% |\renewcommand\listfigurename|\\
+% | {Abbildungsverzeichnis / List of Figures}|\\
+% |\listoffigures|\\
+% ||\\
+% |\begin{figure}|\\
+% | \centering|\\
+% | A placeholder for an image or whatever|\\
+% | \bicaption{Deutscher Text}{English text}|\\
+% |\end{figure}|\\
+% ||\\
+% |\end{document}|
+% \end{quote}
+%
+% \section{Language Selection}
+% \label{sec:babel}
+%
+% For language selection \thispackage\ uses two macros internally:
+%
+% \medskip
+%
+% \DescribeMacro\captionmainlanguage
+% |\caption|\-|main|\-|lan|\-|guage| contains the main language, for example
+% `french' or `german'.
+% If not set manually, \thispackage\ will try to obtain this setting from
+% the \package{babel} or \package{polyglossia} package after the preamble of
+% the document, i.e.~at |\begin{doc|\-|u|\-|ment}|.
+%
+% So if you are using either \package{babel} or \package{polyglossia}, and want to inherit
+% the main language setting from it, then simply forget about the
+% |\caption|\-|main|\-|lan|\-|guage| stuff and skip the rest of the section.
+%
+% \pagebreak[3]
+% Otherwise one can define |\caption|\-|main|\-|lan|\-|guage| manually, e.g.:
+% \begin{quote}
+% |\newcommand\captionmainlanguage{french}|\\
+% |\usepackage[lang=english]{bicaption}|
+% \end{quote}
+%
+% \pagebreak[3]
+% Note: Prior to \version{1.5} |\caption|\-|main|\-|language| needed to be defined
+% \emph{before} loading \thispackage. Since \version{1.5} is could be defined either
+% before or after loading \thispackage.
+%
+% \medskip
+%
+% \DescribeMacro\selectcaptionlanguage
+% \NEWfeature*{v1.1}
+% |\select|\-|caption|\-|lan|\-|guage| will be used internally to select the language:
+% \begin{quote}
+% |\selectcaptionlanguage|\marg{font-or-list-entry}\marg{language}
+% \end{quote}
+% For setting the language of the caption \meta{font-or-list-entry} will be |\@first|\-|of|\-|two|,
+% for setting the language of the list entry \meta{font-or-list-entry} will be
+% |\@second|\-|of|\-|two|.~\footnote{\cs{@firstoftwo} and \cs{@secondoftwo} are defined
+% in the \LaTeX\ kernel and simply pick either the 1st or 2nd argument.}
+% It defaults to |\select@lan|\-|guage| (caption) resp.~|\select|\-|lan|\-|guage| (list entry)
+% offered by the \package{babel} and \package{polyglossia} package:
+% \begin{quote}
+% |\providecommand*\selectcaptionlanguage[2]{%|\\
+% | #1{\select@language}{\selectlanguage}{#2}}|
+% \end{quote}
+% If you need to alter this, just either define |\select|\-|caption|\-|lan|\-|guage| prior
+% loading \thispackage, or redefine it afterwards.
+%
+% \pagebreak[3]
+% Example document using \package{babel}:
+% \begin{quote}
+% |\documentclass[a4paper]{article}|\\
+% ||\\
+% |% Use "ngerman" as 1st language, "english" as 2nd one|\\
+% |\usepackage[english,ngerman]{babel}|\\
+% ||\\
+% |% Add custom translations to babel|\\
+% |\addto\captionsgerman{%|\\
+% |% \renewcommand\whatevername{Wasauchimmer}%|\\
+% |% |\ldots\\
+% |}|\\
+% |\addto\captionsenglish{%|\\
+% |% \renewcommand\whatevername{Whatever}%|\\
+% |% |\ldots\\
+% |}|\\
+% ||\\
+% |% Load the bicaption package with 2nd language set to|\\
+% |% "english"|\\
+% |\usepackage[lang=english]{bicaption}|\\
+% ||\\
+% |\begin{document}|\\
+% ||\\
+% |\begin{figure}|\\
+% | \centering|\\
+% | A placeholder for an image or whatever|\\
+% | \bicaption{Deutscher Text}{English text}|\\
+% |\end{figure}|\\
+% ||\\
+% |\end{document}|
+% \end{quote}
+%
+% \pagebreak[3]
+% The same example document but using a custom implementation of
+% |\caption|\-|main|\-|language| and |\select|\-|caption|\-|language|
+% instead of \package{babel}:
+% \begin{quote}
+% |\documentclass[a4paper]{article}|\\
+% ||\\
+% |% Load the bicaption package with 2nd language set to|\\
+% |% "english"|\\
+% |\usepackage[lang=english]{bicaption}|\\
+% ||\\
+% |% Set "german" as main bi-caption language|\\
+% |\newcommand\captionmainlanguage{german}|\\
+% ||\\
+% |% Declare an own language switching mechanism|\\
+% |% for bi-captions (instead of using babel)|\\
+% |\renewcommand\selectcaptionlanguage[2]{%|\\
+% | \csname captions#2\endcsname}|\\
+% |\newcommand\captionsgerman{%|\\
+% | \renewcommand\figurename{Abbildung}%|\\
+% | \renewcommand\tablename{Tabelle}%|\\
+% |% \renewcommand\whatevername{Wasauchimmer}%|\\
+% |% |\ldots\\
+% |}|\\
+% |\newcommand\captionsenglish{%|\\
+% | \renewcommand\figurename{Figure}%|\\
+% | \renewcommand\tablename{Table}%|\\
+% |% \renewcommand\whatevername{Whatever}%|\\
+% |% |\ldots\\
+% |}|\\
+% ||\\
+% |\begin{document}|\\
+% ||\\
+% |\begin{figure}|\\
+% | \centering|\\
+% | A placeholder for an image or whatever|\\
+% | \bicaption{Deutscher Text}{English text}|\\
+% |\end{figure}|\\
+% ||\\
+% |\end{document}|
+% \end{quote}
+%
+% \pagebreak[3]
+% \NEWfeature{v1.5}
+% Since \version{1.5} a warning is issued if the main language could neither be
+% detected automatically nor was it set explicitly by the user.
+% If you really don't want to set languages for bi-captions but are annoyed by
+% the warning you could trick the \package{bicaption} by defining a custom
+% dummy language-selection mechanism, e.g.:
+% \begin{quote}
+% |\newcommand\captionmainlanguage{dummy}|\\
+% |\renewcommand\selectcaptionlanguage[2]{}|\\
+% \end{quote}
+%
+% \medskip
+%
+% \DescribeMacro{\DeclareCaption-\\LangOption}
+% \NEWfeature*{v1.2}
+% For internal implementation reasons the selection of language will be done delayed,
+% i.e.~not done immediately at |lang=|\meta{language}. So if you do
+% \begin{quote}
+% |\captionsetup[bi-second]{lang=ngerman,labelsep=quad}|
+% \end{quote}
+% the language |ngerman| will only be stored internally, and the label separator will
+% be set to |quad| afterwards. Some time later, right before the caption is actually
+% typeset, the language will be set to |ngerman|.
+%
+% Usually this is no problem, but think of options which will be overwritten by the
+% language selection, or options which act on the language currently set, for example
+% \begin{quote}
+% |\captionsetup[bi-second]{lang=ngerman,name=Bild}|\quad.
+% \end{quote}
+% |lang=ngerman| changes the environment name to ``Abbildung'', and |name=Bild|
+% changes the environment name to ``Bild''. One would expect that the name is
+% finally ``Bild'', but because of the delayed nature of |lang=ngerman| it will
+% be ``Abbildung'' instead, at least if we don't take action about this.
+%
+% For that reason the command
+% \begin{quote}
+% |\DeclareCaptionLangOption|\marg{caption option name}
+% \end{quote}
+% is offered. Options handled this way will be applied twice if used after the |lang=|
+% option, when the option is actually used, and right after the language is selected.
+%
+% \begin{quote}
+% |\DeclareCaptionLangOption{name}|
+% \end{quote}
+% will be done by \thispackage\ automatically, since the environment name will usually
+% be overwritten by a language selection. So actually
+% \begin{quote}
+% |\captionsetup[bi-second]{lang=ngerman,name=Bild}|
+% \end{quote}
+% will give the expected result, i.e. the environment name is typeset as ``Bild''.
+%
+% \section{Required packages}
+% \label{sec:caption}
+%
+% \NEWfeature{v1.4}
+% Starting with version $1.4$ the \package{bicaption} package requires at least version $3.2$
+% of the \package{caption} package and loads it automatically.
+% (Older versions of the \package{bicaption} package have required exactly the version of the
+% \package{caption} package which was released with it.)
+%
+% \pagebreak[3]
+% If you need to use a specific version of the \package{caption} package you need to load it
+% \emph{before} the \package{bicaption} package, e.g.:
+% \begin{quote}
+% |\usepackage[| \ldots |]{caption}[=v3.5]|\\
+% |\usepackage[| \ldots |]{bicaption}|
+% \end{quote}
+%
+% \pagebreak[3]
+% Note that there are limitations if an older version of the \package{caption} package
+% is used:
+% \begin{itemize}
+% \item Full support of list entries of the \env{lstlisting} environment
+% (offered by the \package{listings} package) needs at least \package{caption} \version{3.6}.
+% \end{itemize}
+%
+% \section{Supported packages}
+% \label{sec:packages}
+%
+% The \package{bicaption} package was adapted to the following packages which deals with captions, too:
+% \package{listings}~\cite{listings}, \package{longtable}~\cite{longtable}, and \package{subcaption}~\cite{subcaption}.
%
-% If the \package{subcaption} package is loaded, these commands are available
+% \subsection{Support of the listings package}
+% \label{sec:listings}
+%
+% \NEWfeature{v1.5}
+% If the \package{listings} package~\cite{listings} is loaded, the \package{listings} options \opt{caption1}
+% and \opt{caption2} are available additionally, where option \opt{caption1} specifies the
+% caption of the first language and \opt{caption2} of the second one.
+%
+% Example document, using distinctive lists for each language:
+% \begin{quote}
+% |\documentclass[a4paper]{article}|\\
+% |\usepackage{graphicx}|\\
+% ||\\
+% |% Use "ngerman" as 1st language, "english" as 2nd one|\\
+% |\usepackage[english,ngerman]{babel}|\\
+% ||\\
+% |% Load the bicaption package with 2nd language set to|\\
+% |% "english", and list type "figureEng" resp. "tableEng"|\\
+% |\usepackage[lang=english,listtype+=Eng,font=it]{bicaption}|\\
+% |\captionsetup{slc=off} % do not center short captions|\\
+% ||\\
+% |\usepackage{listings}|\\
+% ||\\
+% |% Set German names|\\
+% |\addto\captionsgerman{%|\\
+% | \renewcommand\lstlistingname{Quelltext}%|\\
+% | \renewcommand\lstlistlistingname{Quelltextverzeichnis}%|\\
+% |}|\\
+% |\AtBeginDocument{\captionsgerman}% or load listings before babel|\\
+% ||\\
+% |% Set English names|\\
+% |\addto\captionsenglish{%|\\
+% | \renewcommand\lstlistingname{Listing}%|\\
+% | \renewcommand\lstlistlistingname{List of Listings}%|\\
+% |}|\\
+% ||\\
+% |\usepackage{newfloat}|\\
+% |% Define the new floating environment type "lstlistingEng"|\\
+% |% (just to get an extra list for English listing captions)|\\
+% |\DeclareFloatingEnvironment[fileext=lol2]{lstlistingEng}|\\
+% | [Listing][List of Listings]|\\
+% ||\\
+% |\begin{document}|\\
+% ||\\
+% |\lstlistoflistings % German|\\
+% |\listoflstlistingEng % English|\\
+% ||\\
+% |\clearpage|\\
+% ||\\
+% |\begin{lstlisting}|\\
+% | [language=C,|\\
+% | caption1=Deutscher Titel,|\\
+% | caption2=English Title]|\\
+% | int main()|\\
+% | {|\\
+% | printf( "Hello world!\n" );|\\
+% | return 0;|\\
+% | }|\\
+% |\end{lstlisting}|\\
+% ||\\
+% |\end{document}|
+% \end{quote}
+%
+% \subsection{Support of the longtable package}
+% \label{sec:longtable}
+%
+% If the \package{longtable} package~\cite{longtable} is loaded, |\bicaption| is available
+% in the \env{longtable} environment as well, e.g.:
+% \begin{quote}
+% |\documentclass[a4paper]{article}|\\
+% ||\\
+% |% Use "ngerman" as 1st language, "english" as 2nd one|\\
+% |\usepackage[english,ngerman]{babel}|\\
+% ||\\
+% |% Load the bicaption package with 2nd language set to|\\
+% |% "english"|\\
+% |\usepackage[lang=english]{bicaption}|\\
+% ||\\
+% |\usepackage{longtable}|\\
+% ||\\
+% |\begin{document}|\\
+% ||\\
+% |\begin{longtable}{ll}|\\
+% | \bicaption{Deutscher Titel}{English Title}\\|\\
+% | A & B \\|\\
+% | C & D \\|\\
+% | |\ldots\\
+% |\end{longtable}|\\
+% ||\\
+% |\end{document}|
+% \end{quote}
+%
+% \subsection{Support of the subcaption package}
+% \label{sec:subcaption}
+%
+% If the \package{subcaption} package~\cite{subcaption} is loaded, these commands are available
% additionally:
%
% \smallskip
@@ -355,8 +778,7 @@
% \endgroup
%
% \pagebreak[3]
-% \section{A sample document}
-% \label{sec:example}
+% \subsubsection{A sample document}
%
% \begin{quote}
% |\documentclass[english,ngerman]{article}|\\
@@ -424,7 +846,7 @@
% | {Short English heading}|\\
% |\end{figure}|\\
% ||\\
-% |\captionsetup{bi-slc=0}|\\
+% |\captionsetup{bi-slc=off}|\\
% ||\\
% |\begin{figure}[!htb]|\\
% | \centering|\\
@@ -441,7 +863,7 @@
% | {Short English heading}|\\
% |\end{figure}|\\
% ||\\
-% |\captionsetup{slc=0}|\\
+% |\captionsetup{slc=off}|\\
% ||\\
% |\begin{figure}[!htb]|\\
% | \centering|\\
@@ -471,7 +893,8 @@
% \bigskip
% \fi
%
-% \begin{figure}[!htb]
+% \begin{minipage}{\linewidth}
+% \setcaptiontype{figure}
% \centering
% \bisubcaptionbox
% {Teilabbildung A\label{fig:test:A}}
@@ -482,12 +905,14 @@
% {Subfigure long title B}[0.4\textwidth]{IMAGE}%
% \bicaption{Deutscher Titel}{English Title}
% \label{fig:test}
-% \end{figure}
+% \end{minipage}
%
% \iffalse
+% \bigskip
% \captionsetup{bi-lang=2nd}
%
-% \begin{figure}[!htb]
+% \begin{minipage}{\linewidth}
+% \setcaptiontype{figure}
% \centering
% \bisubcaptionbox
% {Teilabbildung A\label{fig:test2:A}}
@@ -498,12 +923,14 @@
% {Subfigure long title B}[0.4\textwidth]{IMAGE}%
% \bicaption{Deutscher Titel}{English Title}
% \label{fig:test2}
-% \end{figure}
+% \end{minipage}
% \fi
%
+% \bigskip
% \captionsetup{bi-lang=both}
%
-% \begin{figure}[!htb]
+% \begin{minipage}{\linewidth}
+% \setcaptiontype{figure}
% \centering
% \bisubcaptionbox[A]
% {Und eine gaaaanz lange Caption: Teilabbildung A}
@@ -516,11 +943,13 @@
% {Und eine noch viel viel viel
% l¤ngere deutsche Beschriftung: Deutscher Titel}
% {Short English heading}
-% \end{figure}
+% \end{minipage}
%
-% \captionsetup{bi-slc=0}
+% \bigskip
+% \captionsetup{bi-slc=off}
%
-% \begin{figure}[!htb]
+% \begin{minipage}{\linewidth}
+% \setcaptiontype{figure}
% \centering
% \bisubcaptionbox[A]
% {Und eine gaaaanz lange Caption: Teilabbildung A}
@@ -533,11 +962,13 @@
% {Und eine noch viel viel viel
% l¤ngere deutsche Beschriftung: Deutscher Titel}
% {Short English heading}
-% \end{figure}
+% \end{minipage}
%
-% \captionsetup{slc=0}
+% \bigskip
+% \captionsetup{slc=off}
%
-% \begin{figure}[!htb]
+% \begin{minipage}{\linewidth}
+% \setcaptiontype{figure}
% \centering
% \bisubcaptionbox[A]
% {Und eine gaaaanz lange Caption: Teilabbildung A}
@@ -550,224 +981,40 @@
% {Und eine noch viel viel viel
% l¤ngere deutsche Beschriftung: Deutscher Titel}
% {Short English heading}
-% \end{figure}
-%
-% \pagebreak[3]
-% \section{Customising lists}
-% \label{sec:lists}
-%
-% \DescribeMacro{list=}
-% As default both caption texts will be insert into the List of Figures resp. List of Tables.
-% To suppress the second entry just pass the option |list=off| to the \package{bicaption}
-% package, e.g.:
-% \begin{quote}
-% |\usepackage[lang=english,|\ldots|,list=off]{bicaption}|
-% \end{quote}
-%
-% \pagebreak[3]
-% \DescribeMacro{listtype+=}
-% Another option is separating the lists. For that purpose the option
-% \begin{quote}
-% |listtype+=|\meta{list type extension}
-% \end{quote}
-% can be used to tell the \package{bicaption} package to use a different list
-% for the second caption text.
-% The given value will be appended to the current environment type;
-% for example with |listtype+=X| the list entries will be put into the list
-% responsible for the types
-% |figureX| ($=$ |figure| $+$ |X|), |tableX| ($=$ |table| $+$ |X|) etc.
-%
-% Such a \meta{list type} can be defined using |\Declare|\-|Floating|\-|Environment|
-% offered by the \package{newfloat} package, but some document classes
-% or other packages offer macros for defining new floating environment types
-% (and their corresponding lists) as well.
-%
-% A sample document:
-% \begin{quote}
-% |\documentclass[a4paper]{article}|\\
-% ||\\
-% |% Use "ngerman" as 1st language, "english" as 2nd one|\\
-% |\usepackage[english,ngerman]{babel}|\\
-% ||\\
-% |% Load the bicaption package with 2nd language set to|\\
-% |% "english", and list type "figureEng" resp. "tableEng"|\\
-% |\usepackage[lang=english,listtype+=Eng]{bicaption}|\\
-% ||\\
-% |\usepackage{newfloat}|\\
-% |% Define the new floating environment type "figureEng"|\\
-% |\DeclareFloatingEnvironment[fileext=lof2]{figureEng}|\\
-% | [Figure][List of Figures]|\\
-% |% Define the new floating environment type "tableEng"|\\
-% |\DeclareFloatingEnvironment[fileext=lot2]{tableEng}|\\
-% | [Table][List of Tables]|\\
-% ||\\
-% |\begin{document}|\\
-% |\listoffigures % typeset "Abbildungsverzeichnis"|\\
-% |\listoffigureEnges % typeset "List of Figures"|\\
-% ||\\
-% |\begin{figure}|\\
-% | \centering|\\
-% | A placeholder for an image or whatever|\\
-% | \bicaption{Deutscher Text}{English text}|\\
-% |\end{figure}|\\
-% ||\\
-% |\end{document}|
-% \end{quote}
-%
-% \pagebreak[3]
-% A different approach is using one list for both languages, but with different formatting.
-% Since the \package{caption} package does not offer options and commands for
-% customising the format of the lists, one need an additional package for this purpose,
-% for example the \package{titletoc} package:
-%
-% \begin{quote}
-% |\documentclass[a4paper]{article}|\\
-% ||\\
-% |% Use "ngerman" as 1st language, "english" as 2nd one|\\
-% |\usepackage[english,ngerman]{babel}|\\
-% ||\\
-% |% Load the bicaption package with 2nd language set to|\\
-% |% "english", and list type "figure2" resp. "table2"|\\
-% |\usepackage[lang=english,listtype+=2]{bicaption}|\\
-% ||\\
-% |% We load the titletoc package for customizing lists|\\
-% |% Note: Loading titletoc should be done prior|\\
-% |% defining additional floating environments with|\\
-% |% \DeclareFloatingEnvironment|\\
-% |\usepackage{titletoc}|\\
-% ||\\
-% |\usepackage{newfloat}|\\
-% |% Define the new floating environment type "figure2"|\\
-% |% Use the same file extension as for "figure" (.lof) here|\\
-% |\DeclareFloatingEnvironment[fileext=lof]{figure2}|\\
-% |% Define the new floating environment type "table2"|\\
-% |% Use the same file extension as for "table" (.lot) here|\\
-% |\DeclareFloatingEnvironment[fileext=lot]{table2}|\\
-% ||\\
-% |% We use the titletoc package for customizing "figure2"|\\
-% |% which is appropriate for the second language captions|\\
-% \iffalse
-% |\contentsuse{figure2}{lof}|\\
-% \fi
-% |\titlecontents{figure2}[3.8em]|\\
-% | {} % no above code|\\
-% | {} % empty numbered entry format|\\
-% | {} % empty numberless entry format|\\
-% | {} % empty filler page format|\\
-% ||\\
-% |\begin{document}|\\
-% |\renewcommand\listfigurename|\\
-% | {Abbildungsverzeichnis / List of Figures}|\\
-% |\listoffigures|\\
-% ||\\
-% |\begin{figure}|\\
-% | \centering|\\
-% | A placeholder for an image or whatever|\\
-% | \bicaption{Deutscher Text}{English text}|\\
-% |\end{figure}|\\
-% ||\\
-% |\end{document}|
-% \end{quote}
-%
-% \section{Language Selection}
-% \label{sec:babel}
-%
-% For language selection \thispackage\ uses two macros internally:
-%
-% \medskip
-%
-% \DescribeMacro\captionmainlanguage
-% |\caption|\-|main|\-|lan|\-|guage| contains the main language, e.g. |english| or |german|.
-% If not set prior to loading \thispackage, \thispackage\ will try to obtain this setting from
-% the \package{babel} or \package{polyglossia} package.
-%
-% So if you are using either \package{babel} or \package{polyglossia}, and want to adopt
-% the main language setting from it, then just load \thispackage\ \emph{after} it,
-% and simply forget about the |\caption|\-|main|\-|lan|\-|guage| stuff.
-%
-% Otherwise one can either define |\caption|\-|main|\-|lan|\-|guage| prior to
-% loading \thispackage, e.g.:
-% \begin{quote}
-% |\newcommand\captionmainlanguage{french}|\\
-% |\usepackage|\oarg{options}|{bicaption}|
-% \end{quote}
-% Or one can specify the main language via |\caption|\-|setup| after loading \thispackage, e.g.:
-% \begin{quote}
-% |\usepackage|\oarg{options}|{bicaption}|\\
-% |\captionsetup[bi-first]{lang=french}|
-% \end{quote}
-% When not using the \package{babel} or \package{polyglossia} package both approaches
-% will have exactly the same effect.
-% But when using the \package{babel} or \package{polyglossia} package, and one want to
-% specify the main caption language manually, the first approach is preferable since
-% defining |\caption|\-|main|\-|lan|\-|guage| will suppress the automatic detection mechanism.
-%
-% \medskip
-%
-% \DescribeMacro\selectcaptionlanguage
-% \NEWfeature{v1.1}
-% |\select|\-|caption|\-|lan|\-|guage| will be used internally to select the language:
-% \begin{quote}
-% |\selectcaptionlanguage|\marg{font-or-list-entry}\marg{language}
-% \end{quote}
-% For setting the language of the caption \meta{font-or-list-entry} will be |\@first|\-|of|\-|two|,
-% for setting the language of the list entry \meta{font-or-list-entry} will be
-% |\@second|\-|of|\-|two|.~\footnote{\cs{@firstoftwo} and \cs{@secondoftwo} are defined
-% in the \LaTeX\ kernel and simply pick either the 1st or 2nd argument.}
-% It defaults to |\select@lan|\-|guage| (caption) resp.~|\select|\-|lan|\-|guage| (list entry)
-% offered by the \package{babel} and \package{polyglossia} package:
-% \begin{quote}
-% |\providecommand*\selectcaptionlanguage[2]{%|\\
-% | #1{\select@language}{\selectlanguage}{#2}}|
-% \end{quote}
-% If you need to alter this, just either define |\select|\-|caption|\-|lan|\-|guage| prior
-% loading \thispackage, or redefine it afterwards.
-%
-% \medskip
-%
-% \DescribeMacro\DeclareCaptionLangOption
-% \NEWfeature{v1.2}
-% For internal implementation reasons the selection of language will be done delayed,
-% i.e.~not done immediately at |lang=|\meta{language}. So if you do
-% \begin{quote}
-% |\captionsetup[bi-second]{lang=ngerman,labelsep=quad}|
-% \end{quote}
-% the language |ngerman| will only be stored internally, and the label separator will
-% be set to |quad| afterwards. Some time later, right before the caption is actually
-% typeset, the language will be set to |ngerman|.
-%
-% Usually this is no problem, but think of options which will be overwritten by the
-% language selection, or options which act on the language currently set, for example
-% \begin{quote}
-% |\captionsetup[bi-second]{lang=ngerman,name=Bild}|\quad.
-% \end{quote}
-% |lang=ngerman| changes the environment name to ``Abbildung'', and |name=Bild|
-% changes the environment name to ``Bild''. One would expect that the name is
-% finally ``Bild'', but because of the delayed nature of |lang=ngerman| it will
-% be ``Abbildung'' instead, at least if we don't take action about this.
-%
-% For that reason the command
-% \begin{quote}
-% |\DeclareCaptionLangOption|\marg{caption option name}
-% \end{quote}
-% is offered. Options handled this way will be applied twice if used after the |lang=|
-% option, when the option is actually used, and right after the language is selected.
-%
-% \begin{quote}
-% |\DeclareCaptionLangOption{name}|
-% \end{quote}
-% will be done by \thispackage\ automatically, since the environment name will usually
-% be overwritten by a language selection. So actually
-% \begin{quote}
-% |\captionsetup[bi-second]{lang=ngerman,name=Bild}|
-% \end{quote}
-% will give the expected result, i.e. the environment name is typeset as ``Bild''.
+% \end{minipage}
%
% \iffalse
% --------------------------------------------------------------------------- %
% \fi
%
% \StopEventually{%^^A
+% \begin{thebibliography}{99}
+%
+% \bibitem{caption}
+% Axel Sommerfeldt:\\
+% \href{http://www.ctan.org/pkg/caption}%
+% {\emph{Customizing captions of floating environments}},\\
+% 2022/01/07
+%
+% \bibitem{listings}
+% Carsten Heinz \& Brooks Moses:\\
+% \href{http://www.ctan.org/pkg/listings}%
+% {\emph{The Listings Package}},\\
+% 2007/02/22
+%
+% \bibitem{longtable}
+% David Carlisle:\\
+% \href{http://www.ctan.org/pkg/longtable}%
+% {\emph{The longtable package}},\\
+% 2004/02/01
+%
+% \bibitem{subcaption}
+% Axel Sommerfeldt:\\
+% \href{http://www.ctan.org/pkg/subcaption}%
+% {\emph{The subcaption package}},\\
+% 2022/01/07
+%
+% \end{thebibliography}
% }
%
% \iffalse
@@ -796,6 +1043,7 @@
% \DoNotIndex{\hangindent,\hbox,\hfil,\hsize,\hskip,\hspace,\hss}
% \DoNotIndex{\ifcase,\ifdim,\ifnum,\ifodd,\ifvoid,\ifvmode}
% \DoNotIndex{\ifx,\ignorespaces,\itshape}
+% \DoNotIndex{\kernel@ifnextchar}
% \DoNotIndex{\Large,\large,\leavevmode,\leftmargini,\leftskip,\let,\linewidth}
% \DoNotIndex{\llap,\long,\m@ne,\margin,\mdseries,\message}
% \DoNotIndex{\newcommand,\newdimen,\newlength,\newline,\newif,\newsavebox}
@@ -840,18 +1088,38 @@
%
% \clearpage
% \section{The implementation}
+%
% \iffalse
%<*package>
% \fi
%
% \subsection{Identification}
%
+% We need at least \LaTeX2e\ version 1994/12/01.
% \begin{macrocode}
\NeedsTeXFormat{LaTeX2e}[1994/12/01]
-\ProvidesPackage{bicaption}[2020/10/25 v1.3 Bilingual Captions (AR)]
% \end{macrocode}
+%
+% Bypass the release declarations in case the \LaTeX\ kernel doesn’t know how to deal with them
+% (as suggested by \url{https://www.latex-project.org/publications/2018-FMi-TUB-tb122mitt-version-rollback.pdf}).
+% \begin{macrocode}
+\providecommand\DeclareRelease[3]{}
+\providecommand\DeclareCurrentRelease[2]{}
+% \end{macrocode}
+%
+% Declare all supported releases.
+% \begin{macrocode}
+\DeclareCurrentRelease{v1}{2011/07/13}
+% \end{macrocode}
+%
+% Identify the current version of the package.
% \begin{macrocode}
-\RequirePackage{caption}[2020/08/23] % needs v3.5 or newer
+\ProvidesPackage{bicaption}[2021/05/02 v1.5b Bilingual Captions (AR)]
+% \end{macrocode}
+%
+% Since we base on the \package{caption} package we load it here.
+% \begin{macrocode}
+\RequirePackage{caption}[2011/11/10] % we need at least v3.2e
% \end{macrocode}
%
% \bigskip
@@ -892,7 +1160,7 @@
% \end{macrocode}
% \begin{macrocode}
\newcommand*\bicaption@wh{%
- See the bicaption package documentation for explanation.}
+ See the `bicaption' package documentation for explanation.}
% \end{macrocode}
% \end{macro}
%
@@ -900,37 +1168,13 @@
% |\bicaption@Error|\marg{message}
% \begin{macrocode}
\newcommand*\bicaption@Error[1]{%
- \PackageError{bicaption}{#1}\bicaption@eh}
-%\let\bicaption@KV@err\bicaption@Error
+ \PackageError{bicaption}{#1}{\caption@@eh{bicaption}}}
% \end{macrocode}
% \begin{macrocode}
-\newcommand*\bicaption@eh{%
+\providecommand*\caption@@eh[1]{%
If you do not understand this error, please take a closer look\MessageBreak
- at the documentation of the `bicaption' package.\MessageBreak\@ehc}
-% \end{macrocode}
-% \end{macro}
-%
-% \pagebreak[3]
-% \subsection{Compatibility check}
-%
-% \begin{macro}{\bicaption@CheckCompatibility}
-% \changes{v1.0}{2011/09/01}{Compatibility error added}
-% \changes{v1.2a}{2020/08/01}{Error text adapted to \package{caption} package~\version{4.0}}
-% \begin{macrocode}
-\newcommand*\bicaption@CheckCompatibility{%
-% \end{macrocode}
-% \begin{macrocode}
- \caption@ifcompatibility{%
- \bicaption@Error
- {This package does not work with\MessageBreak
- caption option `compatibility=v1'}%
- \endinput}{}}
-% \end{macrocode}
-% \begin{macrocode}
-\bicaption@CheckCompatibility
-\caption@AtBeginDocument{%
- \bicaption@CheckCompatibility
- \let\bicaption@CheckCompatibility\@undefined}
+ at the documentation of the `#1' package, especially the\MessageBreak
+ section about errors.\MessageBreak\@ehc}
% \end{macrocode}
% \end{macro}
%
@@ -976,6 +1220,12 @@
\DeclareCaptionOption{bi-separator}[1]{%
\caption@set{biseparator}{#1}}
% \end{macrocode}
+% \begin{macrocode}
+\providecommand*\caption@set[2]{%
+ \@ifundefined{caption@#1@#2}%
+ {\caption@Error{Undefined #1 `#2'}}%
+ {\expandafter\let\csname caption@#1\expandafter\endcsname\csname caption@#1@#2\endcsname}}
+% \end{macrocode}
%
% \begin{macro}{\DeclareBiCaptionSeparator}
% \changes{v1.3}{2020/10/25}{This macro added}
@@ -985,6 +1235,10 @@
\caption@decl{biseparator}{#1}{#2}}
\@onlypreamble\DeclareBiCaptionSeparator
% \end{macrocode}
+% \begin{macrocode}
+\providecommand*\caption@decl[2]{%
+ \global\long\expandafter\def\csname caption@#1@#2\endcsname}
+% \end{macrocode}
% \end{macro}
%
% There are four pre-defined separators, called `none',
@@ -998,7 +1252,9 @@
%
% The default separator usually maps to `none'.
% \begin{macrocode}
-\SetCaptionDefault{biseparator}{none}
+\caption@ifundefined\SetCaptionDefault
+ {\def\caption@biseparator@default{\caption@biseparator@none}}
+ {\SetCaptionDefault{biseparator}{none}}
% \end{macrocode}
%
% The option |lang=|\meta{language} will setup the language of the caption.
@@ -1013,8 +1269,9 @@
\caption@ifundefined\bicaption@language
\bicaption@language@setupkeys
\relax
- \def\bicaption@language{#1}%
- \let\bicaption@language@setoptions\@empty}
+ \edef\bicaption@language{#1}%
+ \let\bicaption@language@setoptions\@empty
+ \global\let\bicaption@language@value\bicaption@language}
% \end{macrocode}
% Map |language=| to |lang=|.
% \begin{macrocode}
@@ -1107,29 +1364,51 @@
% \end{macrocode}
%
% Set the language for the first caption.
+% (Since \version{1.5a} we do this |\At|\-|Begin|\-|Document| so
+% |\caption|\-|main|\-|language| could be defined \emph{after} loading the
+% \package{bicaption} package resp.~\package{babel} or \package{polyglossia}
+% could be loaded \emph{after} the \package{bicaption} package.)
% \begin{macrocode}
-\ifcsname captionmainlanguage\endcsname
- \bicaption@InfoNoLine{%
- main language is set to \captionmainlanguage}
-\else\ifcsname bbl@main@language\endcsname
- \bicaption@InfoNoLine{%
- babel found, main language is \bbl@main@language}
- \let\captionmainlanguage\bbl@main@language
-\else\ifcsname xpg@main@language\endcsname
- \bicaption@InfoNoLine{%
- polyglossia found, main language is \xpg@main@language}
- \let\captionmainlanguage\xpg@main@language
-\else
- \bicaption@InfoNoLine{main language is not set}
-\fi\fi\fi
-% \end{macrocode}
-% \begin{macrocode}
-\ifcsname captionmainlanguage\endcsname
- \edef\@tempa{%
- \noexpand\captionsetup[bi-first]{lang=\captionmainlanguage}}
- \@tempa
-\fi
+\AtBeginDocument{%
+ \ifcsname captionmainlanguage\endcsname
+ \bicaption@InfoNoLine{%
+ Main language is set to \captionmainlanguage}%
+ \else
+ \bicaption@setmainlanguage
+ \fi
+% \end{macrocode}
+% \begin{macrocode}
+ \ifcsname captionmainlanguage\endcsname
+ \captionsetup[bi-first]{lang=\captionmainlanguage}%
+ \else
+ \ifcsname bicaption@language@value\endcsname % option "lang=" was used
+ \expandafter\bicaption@Warning
+ \else
+ \expandafter\bicaption@Info
+ \fi
+ {Main language is not set}%
+ \fi}
% \end{macrocode}
+%
+% \begin{macro}{\bicaption@setmainlanguage}
+% \changes{v1.5a}{2011/08/31}{This macro added as encapsulation of setting \cs{captionmainlanguage}}
+% |\bicaption@setmainlanguage| is used to define
+% |\caption|\-|main|\-|language| if not already done.
+% \begin{macrocode}
+\newcommand*\bicaption@setmainlanguage{%
+ \ifcsname bbl@main@language\endcsname
+ \bicaption@InfoNoLine{%
+ babel found, main language is \bbl@main@language}%
+ \let\captionmainlanguage\bbl@main@language
+ \else\ifcsname xpg@main@language\endcsname
+ \bicaption@InfoNoLine{%
+ polyglossia found, main language is \xpg@main@language}%
+ \let\captionmainlanguage\xpg@main@language
+ \fi\fi}
+\@onlypreamble\bicaption@setmainlanguage
+% \end{macrocode}
+% \end{macro}
+%
% We use |\caption@Process|\-|Options| here to add the options to the `|bi-second|' option
% list instead of executing them immediately.
% \begin{macrocode}
@@ -1208,9 +1487,15 @@
% \end{macro}
%
% \begin{macro}{\caption@@make}
+% \changes{v1.4}{2020/12/25}{Fallback code of \cs{caption@@make@} added}
% We redefine |\caption@@make| (of the \package{caption} package kernel)
% so |\bi|\-|caption@@make| will be used for bilingual captions instead.
% \begin{macrocode}
+\caption@ifundefined\caption@@make@
+ {\let\caption@@make@\caption@@make}
+ {}
+% \end{macrocode}
+% \begin{macrocode}
\renewcommand\caption@@make[2]{%
\caption@ifundefined\bicaption@text
{\begingroup
@@ -1221,13 +1506,15 @@
\global\let\bicaption@text\@undefined}%
% \end{macrocode}
% \begin{macrocode}
- \caption@@make@epilogue}
+ \@nameuse{caption@@make@epilogue}}
% \end{macrocode}
% \end{macro}
%
% \begin{macro}{\bicaption@@make}
% \changes{v1.1}{2015/09/16}{\cs{bicaption@label} replaced by \cs{caption@thelabel}}
% \changes{v1.3}{2020/10/25}{Usage of \cs{caption@biseparator} added}
+% \changes{v1.4}{2020/12/25}{Definitions of \cs{bicaption@slc} and \cs{caption@setsinglelinecheck} added (fallback)}
+% \changes{v1.4a}{2020/12/26}{Clearance of \cs{caption@thelabel} replaced by \cs{bicaption@clrlabel}}
% |\bicaption@@make|\marg{text \#2}\marg{label}\marg{text \#1}\par
% Typeset both captions using the original version of \cs{caption@@make}.
% \begin{macrocode}
@@ -1241,8 +1528,8 @@
% \begin{macrocode}
\ifnum\bicaption@lang=0\relax
\bicaption@ifslc
- {\caption@slc{#2}{#3}{}{\caption@setsinglelinecheck0}%
- \caption@slc{#2}{#1}{}{\caption@setsinglelinecheck0}}%
+ {\bicaption@slc{#2}{#3}{}{\caption@setsinglelinecheck0}%
+ \bicaption@slc{#2}{#1}{}{\caption@setsinglelinecheck0}}%
{}%
\fi
% \end{macrocode}
@@ -1251,7 +1538,6 @@
% \begin{macrocode}
\ifnum\bicaption@lang=2\relax
\caption@thelabel
- \global\let\caption@thelabel\relax
\let\bicaption@tempa\relax
\else
\begingroup
@@ -1271,11 +1557,22 @@
\caption@@make@{#2}{#1}%
\endgroup
\fi
-}
+% \end{macrocode}
+% \begin{macrocode}
+ \global\bicaption@clrlabel}
% \end{macrocode}
% \begin{macrocode}
\newcommand*\bicaption@separator{\par}
% \end{macrocode}
+% \begin{macrocode}
+\caption@ifundefined\caption@@slc
+ {\newcommand\bicaption@slc{\caption@slc}}
+ {\newcommand\bicaption@slc[2]{\caption@@slc{#1}{#2}{\captionwidth}}}
+% \end{macrocode}
+% \begin{macrocode}
+\providecommand*\caption@setsinglelinecheck{%
+ \caption@set@bool\caption@ifslc}
+% \end{macrocode}
% \end{macro}
%
% \pagebreak[3]
@@ -1317,6 +1614,7 @@
% \begin{macro}{\@bicaption}
% \changes{v1.0}{2011/08/31}{Optional parameter \meta{list entry \#2} added}
% \changes{v1.1}{2015/09/16}{\cs{bicaption@getlabel} replaced by \cs{caption@getlabel}}
+% \changes{v1.4}{2020/12/25}{Usage of \cs{caption@getlabel} replaced by \cs{bicaption@getlabel}}
% |\@bicaption|\marg{cmd}*\oarg{entry \#1}\marg{text \#1}\oarg{entry \#2}\marg{text \#2}\ldots
% \begin{macrocode}
\newcommand*\@bicaption[1]{%
@@ -1336,7 +1634,7 @@
% \end{macrocode}
% \begin{macrocode}
\long\def\@@@@bicaption#1#2[#3]#4{%
- \caption@getlabel{#2}%
+ \bicaption@getlabel{#2}%
\bicaption@ifswap
{\bicaption@setup{#1}{#2}%
\bicaption@cmd[{#3}]{#4}}%
@@ -1348,63 +1646,109 @@
% \end{macrocode}
% \end{macro}
%
-% \begin{macro}{\LT@bicaption}
-% \changes{v1.1}{2016/01/31}{Adaption to \package{longtable} package added}
-% Same as |\@bicaption| but for |longtable| (offered by the \package{longtable} package).
-% |\bicaption@LTsetup| will be executed later on, inside |\LT@makecaption| offered by the \package{caption} package.
+% \begin{macro}{\bicaption@getlabel}
+% \changes{v1.0}{2011/09/03}{\cs{label} can have optional arguments now}
+% \changes{v1.4}{2020/12/25}{This macro re-added}
+% |\bicaption@getlabel|\marg{text}\\
+% gets the label command out of the given caption text and stores it to |\caption@the|\-|label|.
+% It uses |\caption@get|\-|label| for this purpose which interface unfortunately has changed over time.
+% (Changing the interface was a bad idea in the first place but now it is as it is).
% \begin{macrocode}
-\newcommand\LT@bicaption{%
- \noalign\bgroup
- \@ifstar
- {\gdef\bicaption@cmd{\LT@c@ption\@gobble}%
- \LT@@bicaption}%
- {\gdef\bicaption@cmd{\LT@c@ption\@firstofone}%
- \caption@dblarg\LT@@@bicaption}}
-\newcommand\LT@@bicaption[1]{%
- \LT@@@@bicaption{}{#1}[]}
+\@ifundefined{caption@getlabel}{%
% \end{macrocode}
% \begin{macrocode}
-\long\def\LT@@@bicaption[#1]#2{%
- \caption@dblarg{\LT@@@@bicaption{#1}{#2}}}
+ \newcommand\bicaption@getlabel[1]{% caption3 < v1.7
+ \bicaption@@getlabel#1\label{}\@nil}
% \end{macrocode}
% \begin{macrocode}
-\long\def\LT@@@@bicaption#1#2[#3]#4{%
- \gdef\bicaption@LTsetup{%
- \caption@getlabel{#2}%
- \bicaption@LT@setup}%
- \gdef\bicaption@LT@setup{%
- \bicaption@ifswap
- {\bicaption@setup{#1}{#2}}%
- {\bicaption@setup{#3}{#4}}}%
- \bicaption@ifswap
- {\egroup\bicaption@cmd[{#3}]{#4}}%
- {\egroup\bicaption@cmd[{#1}]{#2}}}
+ \long\def\bicaption@@getlabel#1\label#2#3\@nil{%
+ \def\@tempa{#2}%
+ \ifx\@tempa\@empty
+ \let\caption@thelabel\relax
+ \else
+ \def\@tempb{*}%
+ \ifx\@tempa\@tempb
+ \def\caption@thelabel{\label*}%
+ \bicaption@@@getlabel#3\@nil
+ \else
+ \def\caption@thelabel{\label}%
+ \bicaption@@@getlabel{#2}#3\@nil
+ \fi
+ \fi}
% \end{macrocode}
% \begin{macrocode}
-\let\bicaption@LTsetup\relax
-\let\bicaption@LT@setup\relax
+ \long\def\bicaption@@@getlabel#1#2\@nil{%
+ \def\@tempa{#1}%
+ \def\@tempb{[}%
+ \ifx\@tempa\@tempb
+ \bicaption@@@@getlabel#1#2\@nil
+ \else
+ \l@addto@macro\caption@thelabel{{#1}}%
+ \fi}
+% \end{macrocode}
+% \begin{macrocode}
+ \long\def\bicaption@@@@getlabel[#1]#2\@nil{%
+ \l@addto@macro\caption@thelabel{[{#1}]}%
+ \bicaption@@@getlabel#2\@nil}
+% \end{macrocode}
+% \begin{macrocode}
+}{\@ifundefined{caption@@@@getlabel}{%
+% \end{macrocode}
+% \begin{macrocode}
+ \newcommand\bicaption@getlabel[1]{% caption3 >= v1.7
+ \caption@getlabel#1\label{}\@nil}
+% \end{macrocode}
+% \begin{macrocode}
+}{%
+% \end{macrocode}
+% \begin{macrocode}
+ \newcommand*\bicaption@getlabel{% caption3 >= v2.0
+ \caption@getlabel}
+% \end{macrocode}
+% \begin{macrocode}
+}}
% \end{macrocode}
% \end{macro}
%
-% \begin{macro}{\caption@LT@setup}
-% \changes{v1.1}{2016/01/31}{Adaption to \package{longtable} package added}
-% Execute the stuff defined by \cs{LT@bicaption} to prepare the typesetting
-% of the \package{longtable} bilingual caption.
+% \begin{macro}{\bicaption@clrlabel}
+% \changes{v1.4a}{2020/12/26}{This macro added}
+% |\bicaption@clrlabel|\\
+% resets |\caption@the|\-|label| to |\relax|.
+% \begin{macrocode}
+\@ifundefined{caption@clrlabel}{%
+% \end{macrocode}
+% \begin{macrocode}
+ \newcommand*\bicaption@clrlabel{\let\caption@thelabel\relax} % caption3 < v2.3
+% \end{macrocode}
% \begin{macrocode}
-\g@addto@macro\caption@LT@setup{%
- \bicaption@LTsetup
- \global\let\bicaption@LTsetup\relax}
+}{%
+% \end{macrocode}
+% \begin{macrocode}
+ \newcommand*\bicaption@clrlabel{\caption@clrlabel} % caption3 >= v2.3
+% \end{macrocode}
+% \begin{macrocode}
+}
% \end{macrocode}
% \end{macro}
%
% \begin{macro}{\bicaption@setup}
-% |\bicaption@setup|\marg{list-entry}\marg{text}\par
-% Initiates the bilingual caption typesetting by storing the extra texts into
+% |\bicaption@setup|\marg{list-entry}\marg{text}\\
+% initiates the bilingual caption typesetting by storing the extra texts into
% |\bi|\-|caption@l|\-|entry| and |\bi|\-|caption@text|.
% \begin{macrocode}
\newcommand\bicaption@setup[2]{%
\def\bicaption@lentry{#1}%
- \def\bicaption@text{\ignorespaces#2}}
+ \def\bicaption@text{\ignorespaces #2}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\bicaption@clear}
+% |\bicaption@clear|\\
+% clears the stuff stored by |\bicaption@setup|.
+% \begin{macrocode}
+\newcommand*\bicaption@clear{%
+ \let\bicaption@lentry\@undefined
+ \let\bicaption@text\@undefined}
% \end{macrocode}
% \end{macro}
%
@@ -1437,11 +1781,117 @@
%
% \changes{v1.1}{2013/05/02}{Definition of \cs{bicaption@listof} removed}
%
+% \subsection{Support of the listings package}
+% \changes{v1.5}{2021/01/04}{Support of the \package{listings} package added}
+%
+% \begin{macrocode}
+\caption@IfPackageLoaded{listings}[2004/02/13 v1.2]{%
+% \end{macrocode}
+%
+% If the \package{listings} package is loaded, we define the new options `caption1' and `caption2'.
+% \begin{macrocode}
+ \lst@Key{caption1}\relax{%
+ \lstKV@OptArg[{#1}]{#1}{%
+ \bicaption@ifswap
+ {\bicaption@setup{##1}{##2}}%
+ {\def\lst@@caption{##1}\def\lst@caption{##2}}}%
+ \let\lst@title\@empty}%
+% \end{macrocode}
+% \begin{macrocode}
+ \lst@Key{caption2}\relax{%
+ \lstKV@OptArg[{#1}]{#1}{%
+ \bicaption@ifswap
+ {\def\lst@@caption{##1}\def\lst@caption{##2}}%
+ {\bicaption@setup{##1}{##2}}}%
+ \let\lst@title\@empty}%
+% \end{macrocode}
+% \begin{macrocode}
+ \lst@AddToHookExe{TextStyle}{%
+ \bicaption@clear}%
+% \end{macrocode}
+%
+% \begin{macrocode}
+}{}
+% \end{macrocode}
+%
+% \subsection{Support of the longtable package}
+%
+% \begin{macro}{\LT@bicaption}
+% \changes{v1.1}{2016/01/31}{Adaption to \package{longtable} package added}
+% Same as |\@bicaption| but for |longtable| (offered by the \package{longtable} package).
+% |\bi|\-|caption@LT|\-|setup| will be executed later on, inside |\LT@make|\-|caption|
+% offered by the \package{caption} package.
+% \begin{macrocode}
+\newcommand\LT@bicaption{%
+ \noalign\bgroup
+ \@ifstar
+ {\gdef\bicaption@cmd{\LT@c@ption\@gobble}%
+ \LT@@bicaption}%
+ {\gdef\bicaption@cmd{\LT@c@ption\@firstofone}%
+ \caption@dblarg\LT@@@bicaption}}
+\newcommand\LT@@bicaption[1]{%
+ \LT@@@@bicaption{}{#1}[]}
+% \end{macrocode}
+% \begin{macrocode}
+\long\def\LT@@@bicaption[#1]#2{%
+ \caption@dblarg{\LT@@@@bicaption{#1}{#2}}}
+% \end{macrocode}
+% \begin{macrocode}
+\long\def\LT@@@@bicaption#1#2[#3]#4{%
+ \gdef\bicaption@LTsetup{%
+ \bicaption@getlabel{#2}%
+ \bicaption@LT@setup}%
+ \gdef\bicaption@LT@setup{%
+ \bicaption@ifswap
+ {\bicaption@setup{#1}{#2}}%
+ {\bicaption@setup{#3}{#4}}}%
+ \bicaption@ifswap
+ {\egroup\bicaption@cmd[{#3}]{#4}}%
+ {\egroup\bicaption@cmd[{#1}]{#2}}}
+% \end{macrocode}
+% \begin{macrocode}
+\let\bicaption@LTsetup\relax
+\let\bicaption@LT@setup\relax
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@LT@setup}
+% \changes{v1.1}{2016/01/31}{Adaption to \package{longtable} package added}
+% \changes{v1.4}{2020/12/25}{Fallback code for \package{caption} package \version{3.2} added}
+% Execute the stuff defined by \cs{LT@bicaption} to prepare the typesetting
+% of the \package{longtable} bilingual caption.
+% \begin{macrocode}
+\caption@ifundefined\caption@LT@setup{%
+ % Fallback code for caption v3.2
+ \captionsetup*[longtable]{bicaption-lt-setup}
+ \DeclareCaptionOptionNoValue{bicaption-lt-setup}{%
+ \bicaption@LTsetup
+ \global\let\bicaption@LTsetup\relax}
+}{%
+ \g@addto@macro\caption@LT@setup{%
+ \bicaption@LTsetup
+ \global\let\bicaption@LTsetup\relax}
+}
+% \end{macrocode}
+% \end{macro}
+%
% \begin{thebibliography}{9}
% \bibitem{TLC2}
% Frank Mittelbach and Michel Goossens:\\
-% \newblock {\em The {\LaTeX} Companion (2nd.~Ed.)},
+% \newblock {\em The {\LaTeX} Companion (2nd.~Ed.)},\\
% \newblock Addison-Wesley, 2004.
+%
+% \bibitem{listings}
+% Carsten Heinz \& Brooks Moses:\\
+% \href{http://www.ctan.org/pkg/listings}%
+% {\emph{The Listings Package}},\\
+% 2007/02/22
+%
+% \bibitem{longtable}
+% David Carlisle:\\
+% \href{http://www.ctan.org/pkg/longtable}%
+% {\emph{The longtable package}},\\
+% 2004/02/01
% \end{thebibliography}
%
% \iffalse
diff --git a/macros/latex/contrib/caption/bicaption.pdf b/macros/latex/contrib/caption/bicaption.pdf
index 07d8b5937c..8d61aa6a92 100644
--- a/macros/latex/contrib/caption/bicaption.pdf
+++ b/macros/latex/contrib/caption/bicaption.pdf
Binary files differ
diff --git a/macros/latex/contrib/caption/caption-ams-smf.dtx b/macros/latex/contrib/caption/caption-ams-smf.dtx
index cc036505c6..f0f8cebe43 100644
--- a/macros/latex/contrib/caption/caption-ams-smf.dtx
+++ b/macros/latex/contrib/caption/caption-ams-smf.dtx
@@ -27,11 +27,10 @@
% caption.sty, caption-light.sty, caption2.sty, caption3.sty,
% caption-ams-smf.sto, caption-beamer.sto, caption-elsarticle.sto,
% caption-koma.sto, caption-memoir.sto, caption-ntg.sto,
-% caption-thesis.sto, bicaption.sty, ltcaption.sty, subcaption.sty,
-% and the user manuals
-% caption-deu.tex, caption-eng.tex, caption-rus.tex.
+% caption-thesis.sto, bicaption.sty, ltcaption.sty, subcaption.sty.
%
% \fi
+%
% \CheckSum{21}
%
% \iffalse
@@ -144,6 +143,7 @@
% \DoNotIndex{\hangindent,\hbox,\hfil,\hsize,\hskip,\hspace,\hss}
% \DoNotIndex{\ifcase,\ifdim,\ifnum,\ifodd,\ifvoid,\ifvmode}
% \DoNotIndex{\ifx,\ignorespaces,\itshape}
+% \DoNotIndex{\kernel@ifnextchar}
% \DoNotIndex{\Large,\large,\leavevmode,\leftmargini,\leftskip,\let,\linewidth}
% \DoNotIndex{\llap,\long,\m@ne,\margin,\mdseries,\message}
% \DoNotIndex{\newcommand,\newdimen,\newlength,\newline,\newif,\newsavebox}
diff --git a/macros/latex/contrib/caption/caption-beamer.dtx b/macros/latex/contrib/caption/caption-beamer.dtx
index 934f489f4a..64d215bb03 100644
--- a/macros/latex/contrib/caption/caption-beamer.dtx
+++ b/macros/latex/contrib/caption/caption-beamer.dtx
@@ -2,7 +2,7 @@
%
% This is file `caption-beamer.dtx'.
%
-% Copyright (C) 2007-2020 Axel Sommerfeldt (axel.sommerfeldt@f-m.fm)
+% Copyright (C) 2007-2022 Axel Sommerfeldt (axel.sommerfeldt@f-m.fm)
%
% --------------------------------------------------------------------------
%
@@ -27,12 +27,11 @@
% caption.sty, caption-light.sty, caption2.sty, caption3.sty,
% caption-ams-smf.sto, caption-beamer.sto, caption-elsarticle.sto,
% caption-koma.sto, caption-memoir.sto, caption-ntg.sto,
-% caption-thesis.sto, bicaption.sty, ltcaption.sty, subcaption.sty,
-% and the user manuals
-% caption-deu.tex, caption-eng.tex, caption-rus.tex.
+% caption-thesis.sto, bicaption.sty, ltcaption.sty, subcaption.sty.
%
% \fi
-% \CheckSum{104}
+%
+% \CheckSum{113}
%
% \iffalse
%<*driver>
@@ -139,6 +138,7 @@
% \DoNotIndex{\hangindent,\hbox,\hfil,\hsize,\hskip,\hspace,\hss}
% \DoNotIndex{\ifcase,\ifdim,\ifnum,\ifodd,\ifvoid,\ifvmode}
% \DoNotIndex{\ifx,\ignorespaces,\itshape}
+% \DoNotIndex{\kernel@ifnextchar}
% \DoNotIndex{\Large,\large,\leavevmode,\leftmargini,\leftskip,\let,\linewidth}
% \DoNotIndex{\llap,\long,\m@ne,\margin,\mdseries,\message}
% \DoNotIndex{\newcommand,\newdimen,\newlength,\newline,\newif,\newsavebox}
@@ -188,7 +188,7 @@
%
% \begin{macrocode}
\NeedsTeXFormat{LaTeX2e}[1994/12/01]
-\ProvidesFile{caption-beamer.sto}[2020/08/22 v2.0 Adaption of the caption package to the beamer document classes (AR)]
+\ProvidesFile{caption-beamer.sto}[2022/01/06 v2.0c Adaption of the caption package to the beamer document classes (AR)]
% \end{macrocode}
%
% \section{Helper macros}
@@ -219,7 +219,7 @@
\@firstoftwo} % \@firstoftwo -> singlelinecheck=on
% \end{macrocode}
%
-% \begin{macro}{\caption@prepareslc}
+% \begin{macro}{\footnote}
% \changes{v1.12b}{2020/07/20}{Special adaption to \class{beamer} added}
% The patch of \cs{footnote} provided by the \package{caption3} package assumes
% that the optional arguments of \cs{footnote} and \cs{footnotemark} match.
@@ -230,7 +230,9 @@
% \cs{beamer@footnotetext}. (Unfortunately \cs{footnote} is defined too monolithic
% in \class{beamer} to offer a less dirty patch.)
% \begin{macrocode}
-\g@addto@macro\caption@prepareslc{%
+\providecommand*\AtCaptionSingleLineCheck{\g@addto@macro\caption@prepareslc} % for caption v3.5
+\let\caption@footnote@ORI\footnote
+\AtCaptionSingleLineCheck{%
\def\footnote{%
\begingroup
\let\stepcounter\caption@l@stepcounter
@@ -334,12 +336,13 @@
% \section{Adaption of figure and table environment}
%
% \begin{macrocode}
-\AtCaptionPackage{%
+\AfterCaptionPackage{%
% \end{macrocode}
%
% \begin{macro}{\figure}
% \changes{v1.1f}{2007/12/17}{This re-definition for \class{beamer} document class added}
% \changes{v1.8d}{2019/09/01}{This re-definition for \class{beamer} document class revised}
+% We re-define |figure| so our type-specific options will be used etc.
% \begin{macrocode}
\expandafter\let\expandafter\caption@beamer@figure
\csname\string\figure\endcsname
@@ -353,7 +356,7 @@
% \changes{v1.1f}{2007/12/17}{This re-definition for \class{beamer} document class added}
% \changes{v1.8d}{2019/09/01}{This re-definition for \class{beamer} document class revised}
% \changes{v1.8e}{2019/10/18}{Bug fixed which was introduced in previous revision}
-% We redefine |figure| \& |table| so our type-specific options will be used etc.
+% We re-define |table| as well so our type-specific options will be used etc.
% \begin{macrocode}
\expandafter\let\expandafter\caption@beamer@table
\csname\string\table\endcsname
@@ -363,6 +366,16 @@
% \end{macrocode}
% \end{macro}
%
+% \begin{macro}{\caption@nobreak}
+% \changes{v2.0c}{2022/01/06}{This re-definition for \class{beamer} document class added}
+% We re-define |\caption@nobreak| to activate the usage of |\nobreak| inside |\caption|.
+% |\caption@nobreak| is only available since \version{3.6} of the \package{caption}
+% package, for this reason we use |\def| instead of |\renewcommand|.
+% \begin{macrocode}
+ \def\caption@nobreak{\nobreak}
+% \end{macrocode}
+% \end{macro}
+%
% \begin{macrocode}
}
% \end{macrocode}
diff --git a/macros/latex/contrib/caption/caption-deu.pdf b/macros/latex/contrib/caption/caption-deu.pdf
deleted file mode 100644
index e20b64721a..0000000000
--- a/macros/latex/contrib/caption/caption-deu.pdf
+++ /dev/null
Binary files differ
diff --git a/macros/latex/contrib/caption/caption-deu.tex b/macros/latex/contrib/caption/caption-deu.tex
deleted file mode 100644
index 7d84184285..0000000000
--- a/macros/latex/contrib/caption/caption-deu.tex
+++ /dev/null
@@ -1,4624 +0,0 @@
-%
-% This is file `caption-deu.tex'.
-%
-% Copyright (C) 1994-2020 Axel Sommerfeldt (axel.sommerfeldt@f-m.fm)
-%
-% --------------------------------------------------------------------------
-%
-% This work may be distributed and/or modified under the
-% conditions of the LaTeX Project Public License, either version 1.3
-% of this license or (at your option) any later version.
-% The latest version of this license is in
-% http://www.latex-project.org/lppl.txt
-% and version 1.3 or later is part of all distributions of LaTeX
-% version 2003/12/01 or later.
-%
-% This work has the LPPL maintenance status "maintained".
-%
-% This Current Maintainer of this work is Axel Sommerfeldt.
-%
-% This work consists of the files
-% caption.ins, caption.dtx, caption-light.dtx, caption2.dtx, caption3.dtx,
-% caption-ams-smf.dtx, caption-beamer.dtx, caption-elsarticle.dtx,
-% caption-koma.dtx, caption-memoir.dtx, caption-ntg.dtx,
-% caption-thesis.dtx, bicaption.dtx, ltcaption.dtx, subcaption.dtx,
-% the derived files
-% caption.sty, caption-light.sty, caption2.sty, caption3.sty,
-% caption-ams-smf.sto, caption-beamer.sto, caption-elsarticle.sto,
-% caption-koma.sto, caption-memoir.sto, caption-ntg.sto,
-% caption-thesis.sto, bicaption.sty, ltcaption.sty, subcaption.sty,
-% and the user manuals
-% caption-deu.tex, caption-eng.tex, caption-rus.tex.
-%
-\NeedsTeXFormat{LaTeX2e}[1994/12/01]
-\ProvidesFile{caption-deu.tex}[2020/08/22 v3.4 Das caption-Paket]
-\hbadness=9999 \newcount\hbadness \hfuzz=20pt % Make TeX shut up.
-%\errorcontextlines=3
-
-\RequirePackage{fix-cm}
-\documentclass[german]{ltxdoc}
-\setlength\parindent{0pt}
-\setlength\parskip{\smallskipamount}
-\setlength\leftmargini{2em}% default = 2.5em
-\makeatletter\g@addto@macro\MacroFont{\normalcolor}\makeatother
-
-\newcommand\LineBreak{\linebreak[3]}
-\newcommand\PageBreak{\pagebreak[3]}
-\usepackage{ifpdf}
-\ifpdf
- \usepackage{mathptmx,courier}
- \usepackage[scaled=0.90]{helvet}
- \addtolength\marginparwidth{15pt}
- \ifdim\paperheight=297mm % a4paper
- \renewcommand\LineBreak{\\}
- \renewcommand\PageBreak{\clearpage}
- \fi
-\fi
-
-\usepackage[T1]{fontenc}
-\usepackage[german]{babel}
-%\selectlanguage{german}
-%\input dehyphtex.tex
-\usepackage{selinput}\SelectInputMappings{adieresis={¤},germandbls={Ÿ}}
-
-\usepackage[bottom]{footmisc}
-\usepackage{graphicx,longtable,setspace}
-
-\usepackage{hypdoc}
-\ifpdf\usepackage{hypdestopt}\fi
-\hypersetup{pdfkeywords={LaTeX, package, caption},pdfstartpage={},pdfstartview={}}
-\hypersetup{breaklinks=true}
-
-\usepackage[listof=0,hypcap=false]{caption}[2008/04/01]
-
-\DeclareRobustCommand*\eTeX{\texorpdfstring
- {\leavevmode\hbox{$\varepsilon$}-\TeX}%
- {e-TeX}}
-\DeclareRobustCommand*\AmS{\texorpdfstring
- {{\protect\usefont{OMS}{cmsy}{m}{n}A\kern-.1667em\lower.5ex\hbox{M}\kern-.125emS}}%
- {AMS}}
-\DeclareRobustCommand*\KOMAScript{\texorpdfstring
- {\textsf{K\kern.05em O\kern.05em M\kern.05em A\kern.1em-\kern.1em Script}}%
- {KOMA-Script}}
-\DeclareRobustCommand*\NTG{NTG}
-\DeclareRobustCommand*\SmF{SMF}
-
-\usepackage{marvosym}
-\makeatletter
-\newcommand*\INFO{\@ifstar{\@INFO{}}{\@INFO{\vbox to \ht\strutbox}}}
-\newcommand*\@INFO[1]{\MARGINSYM{#1{\LARGE\Info}}}
-\makeatother
-
-\newcommand*\MARGINSYM[1]{\hskip 1sp \marginpar{\raggedleft\textcolor{blue}{{#1}}}}
-\newcommand*\NEW[2]{}%\hskip 1sp \marginpar{\footnotesize\sffamily\raggedleft#1\\#2}}
-
-% \ContinuedFloat
-\DeclareCaptionLabelFormat{continued1}{#1~#2 (Fortsetzung)}
-\DeclareCaptionLabelFormat{continued2}{#1~#2\alph{ContinuedFloat}}
-% \DeclareCaptionLabelFormat
-\DeclareCaptionLabelFormat{bf-parens}{(\textbf{#2})}
-% \DeclareCaptionStyle
-\DeclareCaptionStyle{mystyle}[margin=5mm,justification=centering]%
- {font=footnotesize,labelfont=sc,margin={10mm,0mm}}
-% Example 1
-\DeclareCaptionFormat{myformat1}{#1#2\\#3}
-\newlength\myindention
-\DeclareCaptionFormat{myformat2}{#1#2\\\hspace*\myindention#3}
-\DeclareCaptionOption{myindention}{\setlength\myindention{#1}}
-% Example 2
-\DeclareCaptionFormat{reverse}{#3#2#1}
-\DeclareCaptionLabelFormat{fullparens}{(\bothIfFirst{#1}{~}#2)}
-\DeclareCaptionLabelSeparator{fill}{\hfill}
-% Example 3
-\DeclareCaptionFormat{llap}{\llap{#1#2}#3\par}
-\DeclareCaptionFormat{llapx}{\llap{\makebox[2.5cm][l]{#1}}#3\par}
-% Example 4
-\DeclareCaptionLabelFormat{andtable}{#1~#2 \& \tablename~\thetable}
-
-\newcommand*\purerm[1]{{\upshape\mdseries\rmfamily #1}}
-\newcommand*\puresf[1]{{\upshape\mdseries\sffamily #1}}
-\newcommand*\purett[1]{{\upshape\mdseries\ttfamily #1}}
-\let\class\puresf \let\package\puresf
-
-\newcommand*\csmarg[1]{\texttt{\char`\{#1\char`\}}}
-\newcommand*\csoarg[1]{\texttt{\char`\[#1\char`\]}}
-\newcommand*\version[2][]{$v#2$}
-\newcommand*\x{\discretionary{}{}{}}
-
-\newenvironment{Annotation}%
- {\ifvmode\else\unskip\par\fi\pagebreak[2]%
- \smallskip
- \small(\ignorespaces}{\unskip)\par}
-\newenvironment{Annotation*}%
- {\ifvmode\else\unskip\par\fi\pagebreak[2]%
- \small(\ignorespaces}{\unskip)\par}
-
-\newenvironment{Example}%
- {\ifvmode\else\unskip\par\fi\pagebreak[2]%
- \minipage{\linewidth}\smallskip}%
- {\smallskip\endminipage\par}
-
-\makeatletter
-\newcommand\example{\@ifstar
- {\@example{belowskip=\abovecaptionskip}}%
- {\@example{}}}
-\def\@example#1{%
- \@testopt{\@@example{#1}}{figure}}
-\long\def\@@example#1[#2]#3#4{%
- \begingroup
- \captionsetup{#1,size=small,margin={\leftmargini,10pt},#3}%
- \captionof{#2}[]{#4}%
- \endgroup}
-\makeatother
-
-\newenvironment{Expert}%
- {\ifvmode\else\unskip\par\fi\pagebreak[3]%
- \smallskip
- \footnotesize\ignorespaces}{\par}
-\newenvironment{Expert*}%
- {\ifvmode\else\unskip\par\fi\pagebreak[3]%
- \footnotesize\ignorespaces}{\par}
-
-\newenvironment{Note}[1][\DefaultNoteText]%
- {\ifvmode\else\unskip\par\fi
- \smallskip
- \small\emph{#1:}~\ignorespaces}{\par}
-\newenvironment{Note*}[1][\DefaultNoteText]%
- {\ifvmode\else\unskip\par\fi
- \small\emph{#1:}~\ignorespaces}{\par}
-
-\newenvironment{Options}[1]%
- {\list{}{\renewcommand\makelabel[1]{\texttt{##1}\hfil}%
- \settowidth\labelwidth{\texttt{#1\space}}%
- \setlength\leftmargin{10pt}%
- \addtolength\leftmargin{\labelwidth}%
- \addtolength\leftmargin{\labelsep}}}%
- {\endlist}
-
-\makeatletter
-\def\Ref{\@ifstar{\@Ref\ref}{\@Ref\autoref}}
-\def\@Ref#1#2{#1{#2}: \textit{\nameref{#2}}}
-\newcommand*\SEE[3][]{\nopagebreak{#1(#2 #3)}}
-\newcommand*\SeeUserDefined[1][]{\See{\Ref{declare}#1}}
-\makeatother
-
-\begin{document}
-\let\subsectionautorefname\sectionautorefname
-\let\subsubsectionautorefname\sectionautorefname
-
-\def\thispackage{das \package{caption}"=Paket}
-\def\Thispackage{Das \package{caption}"=Paket}
-
-\newcommand*\DefaultNoteText{Hinweis}
-\newcommand*\NEWfeature{\NEW{Neues Feature}}
-\newcommand*\NEWdescription{\NEW{Neue Beschreibung}}
-\makeatletter
-\newcommand*\See{\@ifstar{\SEE{Siehe}}{\SEE[\small]{Siehe}}}
-\newcommand*\see{\@ifstar{\SEE{siehe}}{\SEE[\small]{siehe}}}
-\makeatother
-
-% --------------------------------------------------------------------------- %
-
-\GetFileInfo{caption-deu.tex}
-\let\docdate\filedate
-\let\docdate\filedate
-\let\docversion\fileversion
-\GetFileInfo{caption.sty}
-
-\title{Anpassen der Abbildungs- und Tabellenbeschriftungen\texorpdfstring{%
- \thanks{Dieses Paket hat Versionsnummer \docversion.}}{}}
-\author{Axel Sommerfeldt\\
- \url{https://gitlab.com/axelsommerfeldt/caption}}
-\date{\docdate}
-\maketitle
-
-% --------------------------------------------------------------------------- %
-
-\begin{abstract}
-\Thispackage\ bietet einem Mittel und Wege, das Erscheinungsbild der Bild-
-und Tabellenbeschriftungen den eigenen Wĵnschen bzw.\ Vorgaben anzupassen.
-Hierbei wurde Wert auf die reibungslose Zusammenarbeit mit zahlreichen
-Dokumentenklassen und Paketen gelegt.
-\iffalse
-\par\smallskip
-\textit{Bitte beachten Sie:} Viele Dokumentenklassen bieten bereits
-Optionen und Befehle, um das Erscheinungsbild der Abbildungs- und
-Tabellenbeschriftungen individuell anzupassen.
-Wenn diese Mĥglichkeiten fĵr Sie ausreichend sind, gibt es in der Regel
-keinen Grund, \thispackage\ zu benutzen. Und falls Sie lediglich an dem
-Befehl |\caption|\-|of| interessiert sind, ist in der Regel das Laden des
-kleinen aber feinen \package{capt-of}"=Paketes hierzu vĥllig ausreichend.
-\fi
-\end{abstract}
-
-\newcommand\exampletext{%
- Die auf die Rotationsfrequenz des Innenzylinders normierten Eigenfrequenzen
- der gefundenen Grundmoden der Taylor"=Strĥmung f"ur \mbox{$\eta = 0.5$}. %\\
- (Die azimutale Wellenzahl ist mit $m$ bezeichnet.)}
-
-% --------------------------------------------------------------------------- %
-
-\section*{Status dieses Dokumentes}
-
-Diese Dokumentation ist veraltet.
-
-Sie dokumentiert die in Version \version{3.1} des \package{caption}"=Paketes
-verfĵgbaren Optionen und Befehle, jedoch nicht, was in folgenden Versionen
-hinzugefĵgt wurde. Warum?
-\begin{itemize}
-\item
- Ich war nicht glĵcklich mit der Struktur der Dokumentation und wollte sie daher
- neu schreiben. Warum also eine aufgegebene Version der Dokumentation pflegen?
- (Leider hatte ich aber nie die Zeit gefunden, die neue Version zu schreiben.)
-\item
- Da meine Freizeit seit dem Release der Version \version{3.1} nur sp¤rlich
- vorhanden war, wollte ich die Verĥffentlichung von Verbesserungen und
- Erweiterungen nicht aufgrund fehlender Dokumentation um Monate verzĥgern.
-\item
- Da ich frĵher Fehlerkorrekturen nur in der aktuellen Entwicklungsversion
- vorgenommen hatte, wollte ich die Verĥffentlichung von Korrekturen nicht
- aufgrund fehlender Dokumentation um Monate verzĥgern.
- (Seit 2015 werden Fehler in der Regel auch fĵr die letzte Release"=Version
- behoben und auf CTAN verĥffentlicht.)
-\end{itemize}
-
-Wie geht es nun weiter?
-\begin{itemize}
-\item
- Ich werde in den n¤chsten Wochen starten, die Dokumentation (endlich) zu aktualisieren.
-\item
- Bis die ĵberarbeitete Version fertig und auf CTAN zu finden ist,
- kann jederzeit der aktuelle Zwischenstand ĵber
- \url{https://gitlab.com/axelsommerfeldt/caption/-/blob/master/doc/caption-eng.pdf}
- bezogen werden. (Zun¤chst wird die englischsprachige Dokumentation ĵberarbeitet,
- und erst anschlieŸend die deutschsprachige.)
-\end{itemize}
-
-% --------------------------------------------------------------------------- %
-
-\section*{Einleitung}
-
-Mit |\caption| gesetzte Bildunterschriften und Tabellenĵberschriften werden
-von den Standard"=Dokumentenklassen eher stiefmĵtterlich behandelt.
-In der Regel schlicht als ganz normaler Absatz gesetzt, ergibt sich keine
-signifikante optische Abgrenzung vom eigentlichen Text, wie z.B. hier:
-
-\example*{size=normalsize,margin=0pt}{\exampletext}
-
-Es sollte aber eine Mĥglichkeit geben, diesem Umstand abzuhelfen. Es w¤re
-zum Beispiel nett, wenn man den Text der Unterschrift etwas kleiner gestalten,
-extra R¤nder festlegen oder den Zeichensatz des Bezeichners dem der
-Kapitelĵberschriften anpassen kĥnnte. So in etwa:
-
-\example*{size=small,margin=10pt,labelfont=bf,labelsep=endash}{\exampletext}
-
-Mit Hilfe dieses Paketes kĥnnen Sie dies leicht bewerkstelligen; es sind viele
-vorgegebene Parameter einstellbar, Sie kĥnnen aber auch eigene
-Gestaltungsmerkmale einflieŸen lassen.
-
-\bigskip
-
-\INFO\begin{minipage}[t]{\textwidth}
-\small
-Bitte beachten Sie, daŸ \thispackage\ nur das Aussehen der Beschriftungen
-kontrolliert. Es kontrolliert \emph{nicht} den Ort der Beschriftung;
-dieser kann aber mit anderen Paketen wie etwa dem
-\package{floatrow}"=Paket\cite{floatrow} variiert werden.
-\end{minipage}
-
-% --------------------------------------------------------------------------- %
-
-\clearpage
-\tableofcontents
-
-% --------------------------------------------------------------------------- %
-
-\clearpage
-\section{Verwendung des Paketes}
-\label{usage}
-
-\DescribeMacro{\usepackage}
-Durch
-\begin{quote}
- |\usepackage|\oarg{Optionen}|{caption}[|\texttt{\filedate}|]|
-\end{quote}
-in dem Vorspann des Dokumentes wird das \thispackage\ Paket eingebunden, die
-Optionen legen hierbei das Aussehen der œber- und Unterschriften fest. So
-wĵrde z.B.
-\begin{quote}
- |\usepackage[margin=10pt,font=small,labelfont=bf,|\\
- | labelsep=endash]{caption}|%
- %|[|\texttt{\filedate}|]|
-\end{quote}
-zu dem obrigen Ergebnis mit Rand, kleinerem Zeichensatz und fetter Bezeichnung
-fĵhren.
-
-\DescribeMacro{\captionsetup}
-Eine „nderung der Parameter ist auch zu einem sp¤teren Zeitpunkt jederzeit
-mit dem Befehl
-\begin{quote}
- |\captionsetup|\oarg{Typ}\marg{Optionen}
-\end{quote}
-mĥglich. So sind z.B. die Befehlssequenzen
-\begin{quote}
- |\usepackage[margin=10pt,font=small,labelfont=bf]{caption}|
-\end{quote}
-und
-\begin{quote}
- |\usepackage{caption}|\\
- |\captionsetup{margin=10pt,font=small,labelfont=bf}|
-\end{quote}
-in ihrer Wirkung identisch.
-
-Es ist zu beachten, daŸ sich die Verwendung von |\caption|\-|setup|
-innerhalb von Umgebungen nur auf die Umgebung selber auswirkt, nicht aber auf
-den Rest des Dokumentes.
-Mĥchte man also z.B. die automatische Zentrierung der Abbildungsunterschrift
-nur in einem konkreten Falle ausschalten, so kann dies mit
-\begin{quote}
- |\begin{figure}|\\
- | |\ldots\\
- | \captionsetup{singlelinecheck=off}|\\
- | \caption{|\ldots|}|\\
- |\end{figure}|
-\end{quote}
-geschehen, ohne daŸ die restlichen Abbildungsunterschriften hiervon
-beeintr¤chtigt werden.
-
-\begin{Annotation}
-Der optionale Parameter \meta{Typ} von |\caption|\-|setup| wird in
-\Ref{captionsetup} behandelt.
-\end{Annotation}
-
-% --------------------------------------------------------------------------- %
-
-\clearpage
-\section{Optionen}
-\label{options}
-
-\def\OptionLabel{RaggedRight}
-\def\UserDefined{\ldots}
-
-% --------------------------------------------------------------------------- %
-
-\subsection{Formatierung}
-\label{formats}
-
-\DescribeMacro{format=}
-Eine Abbildungs- oder Tabellenbeschriftung besteht im wesentlichen aus drei
-Teilen: Dem Bezeichner (etwa "`Abbildung 3"'), dem Trenner
-(etwa "`:\textvisiblespace"') und dem eigentlichen Text.
-
-Mit der Option
-\begin{quote}
- |format=|\meta{Name}
-\end{quote}
-wird festgelegt, wie diese drei Teile zusammengesetzt werden.
-
-Fĵr \meta{Name} sind folgende Mĥglichkeiten verfĵgbar:%~\footnote{Es gibt
-%hier wie auch bei vielen anderen Optionen die Mĥglichkeit, auch eigene
-%Formate, Zeichens¤tze etc.\ zu definieren. Wie dies geht wird in Abschnitt
-%\Ref{declare} dargelegt.}
-
-\begin{Options}{\OptionLabel}
- \item[plain]%\NEWdescription{v3.0h}
- Die Beschriftung wird als gewĥhnlicher Absatz gesetzt.
-
- \item[hang]
- Der Text wird so gesetzt, daŸ er an dem Bezeichner "`h¤ngt"', d.h.~der
- Platz unter dem Bezeichner und dem Trenner bleibt leer.
-
- \item[\UserDefined]
- Eigene Formate kĥnnen mit |\Declare|\-|Caption|\-|Format| definiert werden.
- \SeeUserDefined
-\end{Options}
-
-\begin{Example}
- Ein Beispiel: Die Angabe der Option
- \begin{quote}
- |format=hang|
- \end{quote}
- fĵhrt zu Abbildungsunterschriften der Art
- \example{format=hang}{\exampletext}
-\end{Example}
-
-\pagebreak[3]
-\DescribeMacro{indention=}
-Bei beiden Formaten (\texttt{plain} und \texttt{hang}) kann der Einzug der
-Beschriftung ab der zweiten Textzeile angepasst werden, dies geschieht mit
-\begin{quote}
- |indention=|\meta{Einzug}\quad,
-\end{quote}
-wobei anstelle von \meta{Einzug} jedes beliebige feste MaŸ angegeben werden
-kann.
-
-Zwei Beispiele:
-
-\begin{Example}
- \begin{quote}
- |format=plain,indention=.5cm|
- \end{quote}
- \captionsetup{skip=0pt}
- \example{format=plain,indention=.5cm}{\exampletext}
-\end{Example}
-
-\begin{Example}
- \begin{quote}
- |format=hang,indention=-0.5cm|
- \end{quote}
- \captionsetup{skip=0pt}
- \example{format=hang,indention=-0.5cm}{\exampletext}
-\end{Example}
-
-\bigskip
-
-\pagebreak[3]
-\DescribeMacro{labelformat=}
-Mit der Option
-\nopagebreak[3]
-\begin{quote}
- |labelformat=|\meta{Name}
-\end{quote}
-\nopagebreak[3]
-%\NEWdescription{v3.0e}
-wird die Zusammensetzung des Bezeichners festgelegt.
-Fĵr \meta{Name} sind folgende Mĥglichkeiten verfĵgbar:
-
-\begin{Options}{\OptionLabel}
- \item[default]
- Der Bezeichner wird wie von der verwendeten Dokumentenklasse vorgegeben gesetzt,
- ĵblicherweise ist dies der Name und die Nummer, getrennt durch ein Leerzeichen
- (wie \texttt{simple}).
- (Dies ist das Standardverhalten.)
-
- \item[empty]
- Der Bezeichner ist leer.
-\iffalse
- (Diese Option macht in der Regel nur in Verbindung mit
- anderen Optionen -- wie etwa \texttt{labelsep=none} -- Sinn.)
-\fi
-
- \item[simple]
- Der Bezeichner ist aus dem Namen und der Nummer zusammengesetzt.
-
- \item[brace]\NEWfeature{v3.1f}
- Der Bezeichner wird mit einer einzelnen (rechten) Klammer abgeschlossen.
-
- \item[parens]
- Die Nummer des Bezeichners wird in runde Klammern gesetzt.
-
- \item[\UserDefined]
- Eigene Formate kĥnnen mit |\Declare|\-|Caption|\-|Label|\-|Format|
- definiert werden.
- \SeeUserDefined
-\end{Options}
-
-\begin{Example}
- Ein Beispiel: Die Optionen
- \begin{quote}
- |format=plain,labelformat=parens,labelsep=quad|
- \end{quote}
- fĵhren zu Abbildungsunterschriften der Art
- \example{format=plain,labelformat=parens,labelsep=quad}{\exampletext}
-\end{Example}
-
-\medskip
-
-\begin{Note*}
-Manche Umgebungen, wie z.B.~die vom \package{algorithm2e}"=Paket angebotende
-|al|\-|go|\-|rithm|"=Umgebung, reagieren allergisch auf eine „nderung des
-Bezeichnerformats.
-\end{Note*}
-
-\bigskip
-
-\pagebreak[3]
-\DescribeMacro{labelsep=}
-Mit der Option
-\begin{quote}
- |labelsep=|\meta{Name}
-\end{quote}
-wird die Zusammensetzung des Trenners festgelegt.\footnote{%
- Wenn der Bezeichner oder der Text der Beschriftung leer ist,
- wird kein Trenner verwendet.}
-Fĵr \meta{Name} sind folgende Mĥglichkeiten verfĵgbar:
-
-\begin{Options}{\OptionLabel}
- \item[none]
- Der Trenner ist leer.
-\iffalse
- (Diese Option macht in der Regel nur in Verbindung
- mit anderen Optionen -- wie etwa \texttt{labelformat=empty} -- Sinn.)
-\fi
-
- \item[colon]
- Der Trenner besteht aus einem Doppelpunkt und einem Leerzeichen.
-
- \item[period]
- Der Trenner besteht aus einem Punkt und einem Leerzeichen.
-
- \item[space]
- Der Trenner besteht lediglich aus einem einzelnen Leerzeichen.
-
- \item[quad]
- Der Trenner besteht aus einem |\quad|.
-
- \item[newline]
- Als Trenner wird ein Zeilenumbruch (|\\|) verwendet.
- Bitte beachten Sie, daŸ dieser Trenner nicht mit allen Formaten
- (z.B.~|format=|\x|hang|) zusammenarbeitet; ggf. erhalten Sie
- deswegen eine Fehlermeldung.
-
- \item[endash]\NEWfeature{v3.0h}
- Als Trenner wird ein Gedankenstrich (\verb*| -- |) verwendet.
-
- \item[\UserDefined]
- Eigene Trenner kĥnnen mit |\Declare|\-|Caption|\-|Label|\-|Sep|\-|a|\-|ra|\-|tor|
- definiert werden.
- \SeeUserDefined
-\end{Options}
-
-Drei Beispiele:
-\begin{Example}
- \begin{quote}
- |format=plain,labelsep=period|
- \end{quote}
- \captionsetup{skip=0pt}
- \example{format=plain,labelsep=period}{\exampletext}
-\end{Example}
-
-\begin{Example}
- \begin{quote}
- |format=plain,labelsep=newline,singlelinecheck=false|
- \end{quote}
- \captionsetup{skip=0pt}
- \example{format=plain,labelsep=newline,singlelinecheck=false}{\exampletext}
-\end{Example}
-
-\begin{Example}
- \begin{quote}
- |format=plain,labelsep=endash|
- \end{quote}
- \captionsetup{skip=0pt}
- \example{format=plain,labelsep=endash}{\exampletext}
-\end{Example}
-
-\bigskip
-
-\pagebreak[3]
-\DescribeMacro{textformat=}\NEWfeature{v3.0l}
-Mit der Option
-\nopagebreak[3]
-\begin{quote}
- |textformat=|\meta{Name}
-\end{quote}
-\nopagebreak[3]
-wird das Format des eigentlichen Textes festgelegt.
-Fĵr \meta{Name} sind folgende Mĥglichkeiten verfĵgbar:
-
-\begin{Options}{\OptionLabel}
- \item[empty]
- Es wird kein Text ausgegeben.
-
- \item[simple]
- Der Text wird nicht ver¤ndert.
-
- \item[period]
- Dem Text wird ein Punkt angeh¤ngt.
-
- \item[\UserDefined]
- Eigene Textformate kĥnnen mit |\Declare|\-|Caption|\-|Text|\-|Format|
- definiert werden.
- \SeeUserDefined
-\end{Options}
-
-% --------------------------------------------------------------------------- %
-
-\PageBreak
-\subsection{Textausrichtung}
-\label{justification}
-
-\DescribeMacro{justification=}
-Mit der Option
-\begin{quote}
- |justification=|\meta{Name}
-\end{quote}
-wird die Ausrichtung des Textes festgelegt.
-Fĵr \meta{Name} sind folgende Mĥglichkeiten verfĵgbar:
-
-\begin{Options}{\OptionLabel}
- \item[justified]
- Der Text wird als Blocksatz gesetzt.
-
- \item[centering]
- Der Text wird zentriert gesetzt.
-
-% \item[Centering]
-% Der Text wird zentriert gesetzt. Hierfĵr wird jedoch im Gegensatz
-% zu \texttt{centering} der Befehl |\Centering| des \package{ragged2e}-Paketes
-% verwendet, der \LaTeX\ das Trennen der Worte erlaubt.
-
- \item[centerlast]
- Lediglich die letzte Zeile des Absatzes wird zentriert gesetzt.
-
- \item[centerfirst]
- Lediglich die erste Zeile des Textes wird zentriert gesetzt.
-
- \item[raggedright]
- Der Text wird linksbĵndig gesetzt.
-
-\iffalse
- \item[RaggedRight]
- Der Text wird linksbĵndig mit Hilfe des \package{ragged2e}-Paketes gesetzt.
-\else
- \item[RaggedRight]
- Der Text wird ebenfalls linksbĵndig gesetzt.
- Hierfĵr wird jedoch im Gegensatz zur Option |raggedright| der Befehl
- |\RaggedRight| des \package{ragged2e}-Paketes verwendet,
- der \LaTeX\ das Trennen der Worte erlaubt.\footnote{%
- Ob das \package{ragged2e}"=Paket benĥtigt wird oder nicht,
- wird zur Laufzeit ermittelt, d.h.~ggf.~ist ein weiterer \LaTeX"=Lauf
- erforderlich, wenn diese Option erstmalig eingesetzt wird.}
-\fi
-
- \item[raggedleft]
- Der Text wird rechtsbĵndig gesetzt.
-
-% \item[RaggedLeft]
-% Der Text wird rechtsbĵndig mit Hilfe des \package{ragged2e}-Paketes gesetzt.
-
-%\showhyphens{justification}
- \item[\UserDefined]
- Eigene Ausrichtungen kĥnnen mit |\Declare|\-|Caption|\-|Jus|\-|ti|\-|fi|\-|ca|\-|tion|
- definiert werden.
- \SeeUserDefined
-\end{Options}
-
-Drei Beispiele:
-\begin{Example}
- \begin{quote}
- |format=plain,justification=centerlast|
- \end{quote}
- \captionsetup{skip=0pt}
- \example{format=plain,justification=centerlast}{\exampletext}
-\end{Example}
-
-\begin{Example}
- \begin{quote}
- |format=hang,justification=raggedright|
- \end{quote}
- \captionsetup{skip=0pt}
- \example{format=hang,justification=raggedright}{\exampletext}
-\end{Example}
-
-\begin{Example}
- \begin{quote}
- |format=plain,labelsep=newline,justification=centering|
- \end{quote}
- \captionsetup{skip=0pt}
- \example*{format=plain,labelsep=newline,justification=centering}{\exampletext}
-\end{Example}
-
-\smallskip
-
-\PageBreak
-\DescribeMacro{singlelinecheck=}
-In den Standard"=Dokumentenklassen von \LaTeX\ (\class{article},
-\class{report} und \class{book}) sind die Ab\-bildungs- und
-Tabellenbeschriftungen so realisiert, daŸ sie automatisch zentriert werden,
-wenn sie lediglich aus einer einzigen Textzeile bestehen:
-
-\example*{}{Eine kurze Beschriftung.}
-
-\INFO
-Diesen Mechanismus ĵbernimmt \thispackage\ und ignoriert damit
-in der Regel bei solch kurzen Beschriftungen die mit den Optionen
-|justification=| und |indention=| eingestellte Textausrichtung.
-Dieses Verhalten kann jedoch mit der Option
-\begin{quote}
- |singlelinecheck=|\meta{bool}
-\end{quote}
-reguliert werden.
-Setzt man fĵr \meta{bool} entweder |false|, |no|, |off| oder |0| ein,
-so wird der automatische Zentrierungsmechnismus auŸer Kraft gesetzt.
-Die obrige, kurze Abbildungsunterschrift wĵrde z.B.~nach Angabe der Option
-\begin{quote}
- |singlelinecheck=false|
-\end{quote}
-so aussehen:
-
-\begingroup
- \captionsetup{type=figure}
- \ContinuedFloat
- \example*{singlelinecheck=false}{Eine kurze Beschriftung.}
-\endgroup
-
-Setzt man fĵr \meta{bool} hingegen |true|, |yes|, |on| oder |1| ein, so
-wird die automatische Zentrierung wieder eingeschaltet. (Standardm¤Ÿig
-ist sie eingeschaltet.)
-
-% --------------------------------------------------------------------------- %
-
-\subsection{Zeichens¤tze}
-\label{fonts}
-
-\DescribeMacro{font=}
-\DescribeMacro{labelfont=}
-\DescribeMacro{textfont=}
-\Thispackage\ kennt drei Zeichens¤tze: Denjenigen fĵr die gesammte
-Beschriftung (|font|), denjenigen, der lediglich auf den Bezeichner und den
-Trenner angewandt wird (|label|\-|font|), sowie denjenigen, der lediglich auf
-den Text wirkt (|text|\-|font|).
-So lassen sich die unterschiedlichen Teile der Beschriftung individuell mit
-\begin{quote}\begin{tabular}{@{}r@{}ll}
- |font=| & \marg{Zeichensatzoptionen} & ,\\
- |labelfont=| & \marg{Zeichensatzoptionen} & und\\
- |textfont=| & \marg{Zeichensatzoptionen} & \\
-\end{tabular}\end{quote}
-\nopagebreak[3]
-anpassen.
-\pagebreak[3]
-
-Als \meta{Zeichensatzoptionen} sind Kombinationen aus folgenden (durch Komma
-getrennte) Optionen mĥglich:
-
-\begin{Options}{stretch=\meta{amount}}
- \item[scriptsize] {\scriptsize Sehr kleine Schrift}
- \item[footnotesize] {\footnotesize FuŸnotengrĥŸe}
- \item[small] {\small Kleine Schrift}
- \item[normalsize] {\normalsize NormalgroŸe Schrift}
- \item[large] {\large GroŸe Schrift}
- \item[Large] {\Large GrĥŸere Schrift}
-\end{Options}
-\vspace{0pt}\pagebreak[3]
-\begin{Options}{stretch=\meta{amount}}
- \item[normalfont] {\normalfont Normale Schriftart \& -serie \& -familie}
-
- \item[up] {\upshape Upright Schriftart}
- \item[it] {\itshape Italic Schriftart}
- \item[sl] {\slshape Slanted Schriftart}
- \item[sc] {\scshape Small Caps Schriftart}
-
- \item[md] {\mdseries Medium Schriftserie}
- \item[bf] {\bfseries Bold Schriftserie}
-
- \item[rm] {\rmfamily Roman Schriftfamilie}
- \item[sf] {\sffamily Sans Serif Schriftfamilie}
- \item[tt] {\ttfamily Typewriter Schriftfamilie}
-\end{Options}
-\vspace{0pt}\pagebreak[3]
-\begin{Options}{stretch=\meta{amount}}
- \item[singlespacing] Einfacher Zeilenabstand \See{\Ref{setspace}}
- \item[onehalfspacing] Eineinhalbfacher Zeilenabstand \See{\Ref{setspace}}
- \item[doublespacing] Doppelter Zeilenabstand \See{\Ref{setspace}}
- \item[stretch=\meta{amount}] |\setstretch|\marg{amount} \See{\Ref{setspace}}
-\end{Options}
-\vspace{0pt}\pagebreak[3]
-\begin{Options}{stretch=\meta{amount}}
- \item[normalcolor] |\normalcolor|
- \item[color=\meta{colour}] |\color|\marg{colour}
- {\small(Sofern das \package{color}- oder das \package{xcolor}"=Paket
- geladen ist; fĵr ein Beispiel siehe \Ref{declare})}
-\end{Options}
-\vspace{0pt}\pagebreak[3]
-\begin{Options}{stretch=\meta{amount}}
- \item[normal] Die Kombination aus den Optionen |normal|\-|color|,
- |normal|\-|font|, |normal|\-|size| und |single|\-|spacing|
-
- \item[\UserDefined]
- Eigene Zeichensatzoptionen kĥnnen mit |\Declare|\-|Caption|\-|Font|
- definiert werden.
- \SeeUserDefined
-\end{Options}
-
-Wird lediglich eine einzelne Zeichensatzoption ausgew¤hlt, kĥnnen die
-geschweiften Klammern entfallen, d.h.~die Optionen
-%\begin{quote}
- |font={small}|
-%\end{quote}
-und
-%\begin{quote}
- |font=small|
-%\end{quote}
-sind identisch.
-
-Drei Beispiele:
-\begin{Example}
- \begin{quote}
- |font=it,labelfont=bf|
- \end{quote}
- \captionsetup{skip=0pt}
- \example{font=it,labelfont=bf}{\exampletext}
-\end{Example}
-
-\begin{Example}
- \begin{quote}
- |labelfont=bf,textfont=it|
- \end{quote}
- \captionsetup{skip=0pt}
- \example{labelfont=bf,textfont=it}{\exampletext}
-\end{Example}
-
-\begin{Example}
- \begin{quote}
- |font={small,stretch=0.80}|
- \end{quote}
- \captionsetup{skip=0pt}
- \example{font={small,stretch=0.80}}{\exampletext}
-\end{Example}
-
-\medskip
-
-\pagebreak[3]
-\DescribeMacro{font+=}
-\DescribeMacro{labelfont+=}
-\DescribeMacro{textfont+=}
-\NEWfeature{v3.1f}
-Es ist auch mĥglich, Zeichensatzoptionen zu den bisher ausgew¤hlten
-hinzuzufĵgen, so ist zum Beispiel
-\begin{quote}
- |\captionsetup{font=small}|\\
- |\captionsetup{font+=it}|
-\end{quote}
-mit
-\begin{quote}
- |\captionsetup{font={small,it}}|
-\end{quote}
-\nopagebreak[3]
-identisch.
-\pagebreak[3]
-
-% --------------------------------------------------------------------------- %
-
-\subsection{R¤nder und Abs¤tze}
-\label{margins}
-
-\DescribeMacro{margin=}
-\DescribeMacro{width=}
-Fĵr die Abbildungs- und Tabellenbeschriftungen kann \emph{entweder} ein extra
-Rand \emph{oder} eine feste Breite festgelegt werden:~\footnote{Nur feste MaŸe
-sind hier gestattet. Suchen Sie nach einem Weg, die Breite automatisch auf die
-Breite der Abbildung oder Tabelle zu begrenzen, schauen Sie sich bitte das
-\package{floatrow}\cite{floatrow} oder
-\package{threeparttable}"=Paket\cite{threeparttable} an.}
-\begin{quote}\begin{tabular}{@{}r@{}ll}
- |margin=| & \meta{Rand} & \emph{-- oder --}\\
- |margin=| & |{|\meta{Linker Rand}|,|\meta{Rechter Rand}|}| & \emph{-- oder --}\\
- |width=| & \meta{Breite} & \\
-\end{tabular}\end{quote}
-\NEWfeature{v3.1}
-Wird nur ein Wert fĵr den Rand angegeben, so wird er fĵr beide R¤nder
-(links und rechts) verwendet, so ist z.B.~|margin=|\x|10pt| identisch mit
-|margin=|\x|{10pt,10pt}|.
-In zweiseitigen Dokumenten wird der linke und rechte Rand auf geraden Seiten
-vertauscht.
-\DescribeMacro{oneside}
-\DescribeMacro{twoside}
-Dies kann jedoch mit der zus¤tzlichen Option |oneside| abgeschaltet werden,
-z.B.~|\caption|\-|setup{margin=|\x|{0pt,10pt},|\x|oneside}|.\par
-Wird hingegen eine \meta{Breite} angegeben, wird die Beschriftung zentriert,
-d.h.~der linke und rechte Rand sind in diesem Falle immer gleich groŸ.
-
-Drei Beispiele illustrieren dies:
-\begin{Example}
- \begin{quote}
- |margin=10pt|
- \end{quote}
- \captionsetup{skip=0pt}
- \example{margin=10pt}{\exampletext}
-\end{Example}
-
-\begin{Example}
- \begin{quote}
- |margin={1cm,0cm}|
- \end{quote}
- \captionsetup{skip=0pt}
- \example{margin={1cm,0cm}}{\exampletext}
-\end{Example}
-
-\begin{Example}
- \begin{quote}
- |width=.75\textwidth|
- \end{quote}
- \captionsetup{skip=0pt}
- \example{width=.75\textwidth}{\exampletext}
-\end{Example}
-
-\begin{Note}
-Wird die Beschriftung neben der Abbildung bzw.~Tabelle angebracht (z.B.~mit
-Hilfe der |SC|\-|figure|"=Umgebung des \package{sidecap}"=Paketes\cite{sidecap}),
-oder wird die Abbildung bzw.~Tabelle innerhalb eines Absatzes gesetzt (z.B.~mit
-Hilfe der |wrap|\-|figure|"=Umgebung des \package{wrapfig}"=Paketes\cite{wrapfig}),
-dann wird der Rand am Anfang der Umgebung automatisch auf |0pt| zurĵckgesetzt.
-Soll hier ebenfalls ein extra Rand gesetzt werden, so kann dieser Rand entweder
-innerhalb der Umgebung neu gesetzt werden, oder aber global fĵr bestimmte
-Umgebungen, z.B.~mit |\caption|\-|setup[SC|\-|figure]{margin=|\x|10pt}|.
-\end{Note}
-
-\begin{Expert}
-\DescribeMacro{margin*=}\NEWfeature{v3.1}
-Neben der Option |margin=| gibt es auch die Option |margin*=|, die nur dann
-einen Rand neu setzt, wenn keine Breite mit |width=| gesetzt wurde.
-\end{Expert}
-
-\begin{Expert}
-\DescribeMacro{minmargin=}
-\DescribeMacro{maxmargin=}\NEWfeature{v3.1}
-Weiterhin kann auch ein minimaler bzw.~maximaler Rand gesetzt werden.
-Dies kann z.B.~sinnvoll sein, um in schmaleren Umgebungen wie |minipage|s
-den Rand prozentual zu begrenzen.
-So begrenzen z.B.~die \SmF"=Dokumentenklassen den Rand auf
-|maxmargin=|\x|0.1\linewidth|. (Siehe \Ref{SMF})
-\end{Expert}
-
-\medskip
-
-\pagebreak[3]
-\DescribeMacro{parskip=}
-Diese Option wirkt auf Abbildungs- oder Tabellenbeschriftungen, die
-aus mehr als einem Absatz bestehen; sie legt den Abstand zwischen den
-Abs¤tzen fest:
-\begin{quote}
- |parskip=|\meta{Abstand zwischen Abs¤tzen}
-\end{quote}
-Ein Beispiel hierzu:
-\begin{Example}
- \begin{quote}
- |margin=10pt,parskip=5pt|
- \end{quote}
- \captionsetup{skip=0pt}
- \example{margin=10pt,parskip=5pt}{%
- Erster Absatz der Beschriftung; dieser enth¤lt einigen Text, so daŸ die
- Auswirkungen der Optionen deutlich werden.\par
- Zweiter Absatz der Beschriftung; dieser enth¤lt ebenfalls einigen Text,
- so daŸ die Auswirkungen der Optionen deutlich werden.}
-\end{Example}
-
-\pagebreak[3]
-\DescribeMacro{hangindent=}
-Die Option
-\begin{quote}
- |hangindent=|\meta{Einzug}
-\end{quote}
-legt einen Einzug fĵr alle Zeilen auŸer der jeweils ersten des Absatzes fest.
-Besteht die Beschriftung lediglich aus einem einzelnen Absatz, so ist die
-Wirkung mit der Option |indention=|\meta{Einzug} identisch, bei mehreren
-Abs¤tzen zeigt sich jedoch der Unterschied:
-
-\begin{Example}
- \begin{quote}
- |format=hang,indention=-.5cm|
- \end{quote}
- \captionsetup{skip=0pt}
- \example{format=hang,indention=-.5cm}{%
- Erster Absatz der Beschriftung; dieser enth¤lt einigen Text, so daŸ die
- Auswirkungen der Optionen deutlich werden.\par
- Zweiter Absatz der Beschriftung; dieser enth¤lt ebenfalls einigen Text,
- so daŸ die Auswirkungen der Optionen deutlich werden.}
-\end{Example}
-
-\begin{Example}
- \begin{quote}
- |format=hang,hangindent=-.5cm|
- \end{quote}
- \captionsetup{skip=0pt}
- \example{format=hang,hangindent=-.5cm}{%
- Erster Absatz der Beschriftung; dieser enth¤lt einigen Text, so daŸ die
- Auswirkungen der Optionen deutlich werden.\par
- Zweiter Absatz der Beschriftung; dieser enth¤lt ebenfalls einigen Text,
- so daŸ die Auswirkungen der Optionen deutlich werden.}
-\end{Example}
-
-\begin{Note}
-Enth¤lt die Beschriftung mehr als einen Absatz, muŸ ĵber das optionale
-Argument von |\caption| bzw.~|\caption|\-|of| eine alternative Beschriftung
-fĵr das Abbildungs- bzw.~Tabellenverzeichnis angegeben werden;
-ansonsten kommt es zu einer Fehlermeldung.
-\end{Note}
-
-% --------------------------------------------------------------------------- %
-
-\pagebreak[3]
-\subsection{Stile}
-\label{style}
-
-\DescribeMacro{style=}
-Eine geeignete Kombination aus den bisher vorgestellten Optionen wird
-\textit{Stil} genannt; dies ist in etwa mit dem Seitenstil vergleichbar,
-den man mit |\page|\-|style| einstellen kann.
-
-Einen vordefinierten Abbildungs- bzw.~Tabellenbeschriftungsstil kann man mit der
-Option
-\begin{quote}
- |style=|\meta{Stil}
-\end{quote}
-ausw¤hlen. \Thispackage\ vordefiniert zwei Stile: |base| und |default|.
-
-\NEWfeature{v3.1}
-Der Stil |base| setzt alle bisher vorgestellten Optionen auf die Belegung
-zurĵck, die das Aussehen der Beschriftungen der Standard"=\LaTeX"=Dokumentenklassen
-|article|, |report| und |book| repr¤sentiert. D.h.~die Angabe der Option
-\begin{quote}
- |style=base|
-\end{quote}
-entspricht den Optionen
-\begin{quote}
- |format=plain,labelformat=default,labelsep=colon,|\\
- |justification=justified,font={},labelfont={},|\\
- |textfont={},margin=0pt,indention=0pt|\\
- |parindent=0pt,hangindent=0pt,singlelinecheck=true|\quad.
-\end{quote}
-\begin{Annotation*}
-Aber |justification=centering,indention=0pt| wird automatisch
-gew¤hlt werden, wenn die Beschriftung in eine einzelne Zeile passt.
-\end{Annotation*}
-
-Der Stil |default| hingegen folgt den Standardwerten der verwendeten
-Dokumentenklasse. Dieser Stil wird vorausgew¤hlt und entspricht den
-Optionen
-\begin{quote}
- |format=default,labelformat=default,labelsep=default,|\\
- |justification=default,font=default,labelfont=default,|\\
- |textfont=default,margin=0pt,indention=0pt|\\
- |parindent=0pt,hangindent=0pt,singlelinecheck=true|\quad.
-\end{quote}
-\begin{Annotation*}
-Auch hier wird |justification=centering,indention=0pt| automatisch
-gew¤hlt werden, wenn die Beschriftung in eine einzelne Zeile passt.
-\end{Annotation*}
-
-Wenn also eine der drei Standard"=\LaTeX"=Dokumentenklassen verwendet wird,
-repr¤sentieren die Stile |base| und |default| (fast) die gleichen Einstellungen.
-
-\begin{Note}
-Eigene Stile kĥnnen mit |\Declare|\-|Caption|\-|Style| definiert werden.
-\SeeUserDefined
-\end{Note}
-
-% --------------------------------------------------------------------------- %
-
-\subsection{Abst¤nde}
-\label{skips}
-
-\DescribeMacro{skip=}\NEWfeature{v3.0d}
-Der vertikale Abstand zwischen der Beschriftung und der Abbildung
-bzw.~Tabelle wird ĵber die Option
-\begin{quote}
- |skip=|\meta{Abstand}
-\end{quote}
-gesteuert.
-Die Standard"=\LaTeX"=Dokumentenklassen \class{article}, \class{report}
-und \class{book} belegen diesen Abstand auf |skip=|\x|10pt| vor,
-andere Dokumentenklassen ggf.~auf einen anderen Wert.
-
-\bigskip
-
-\pagebreak[3]
-\DescribeMacro{position=}
-Die von \LaTeX\ vorgegebene Implementierung von |\caption| birgt eine
-Design\-schw¤che:
-Der |\caption| Befehl weiŸ dort nicht, ob er ĵber oder unter der Abbildung
-bzw.~Tabelle steht, folglich weiŸ er auch nicht, wo er den Abstand zur
-Abbildung bzw.~Tabelle setzen soll.
-W¤hrend die Standard"=Implementierung den Abstand immer ĵber die
-Beschriftung setzt (und inkonsequenterweise in |long|\-|table|"=Umgebungen
-unter die Beschriftung), handhabt es dieses Paket etwas flexibler:
-Nach Angabe der Option
-\begin{quote}
- |position=top|\quad oder\quad |position=above|
-\end{quote}
-wird angenommen, daŸ die Beschrifung am \emph{Anfang} der Umgebung
-steht, der mit |skip=|\x\meta{Abstand} gesetzte Abstand also unter die
-Beschriftung gesetzt wird.
-(Bitte beachten Sie, daŸ |position=|\x|top| keineswegs bedeutet, daŸ
-die Beschriftung an den Anfang der Gleitumgebung gesetzt wird.
-Stattdessen wird die Beschriftung gewĥhnlich dort gesetzt, wo der
-|\caption|"=Befehl platziert wird.)
-Hingegen nach
-\begin{quote}
- |position=bottom|\quad oder\quad |position=below|
-\end{quote}
-wird angenommen, daŸ die Beschriftung am \emph{Ende} der Umgebung
-steht, der Abstand also ĵber die Beschriftung gesetzt wird.
-Und letztendlich nach
-\begin{quote}
- |position=auto|\quad {\small(welches die Vorbelegung ist)}
-\end{quote}
-versucht \thispackage\ sein bestes, um die tats¤chliche Position der
-Beschrifung selbst zu bestimmen. Bitte beachten Sie, daŸ dies zwar in
-der Regel gelingt, unter seltenen Umst¤nden aber falsche Resultate
-liefern kĥnnte.
-
-\medskip
-
-\pagebreak[3]
-\DescribeMacro{figureposition=}%\NEWfeature{v3.0a}
-\DescribeMacro{tableposition=}%\NEWfeature{v3.0a}
-Die Option |position| ist insbesondere in Verbindung mit dem optionalen
-Argument von |\caption|\-|setup| nĵtzlich.
-\See{auch \Ref{captionsetup}}\par
-So fĵhrt zum Beispiel
-\begin{quote}
- |\captionsetup[table]{position=above}|
-\end{quote}
-dazu, daŸ alle Tabellenbeschriftungen als \emph{œberschriften} angesehen
-werden (zumindest was den Abstand zur Tabelle angeht).
-Weil dies eine ĵbliche Einstellung ist, bietet einem \thispackage\ auch
-die Optionen |figure|\-|position=|\x\meta{Position} und
-|table|\-|position=|\x\meta{Position} als abkĵrzende Schreibweise.
-So ist z.B.
-\begin{quote}
- |\usepackage[|\ldots|,tableposition=top]{caption}|
-\end{quote}
-identisch mit
-\begin{quote}
- |\usepackage[|\ldots|]{caption}|\\
- |\captionsetup[table]{position=top}|\quad.
-\end{quote}
-
-\medskip
-
-\INFO
-Bitte beachten Sie, daŸ die Optionen |skip=|, |position=|,
-|figure|\-|position=| und |table|\-|position=| nicht immer einen Effekt haben.
-Da die Gleitumgebungen ĵblicherweise von den Dokumentenklassen bereitgestellt
-werden, kann es durchaus sein, daŸ diese ihre eigenen Abstandsregeln
-mitbringen.
-So befolgen z.B.~die \KOMAScript"=Dokumentenklassen die |skip=| Einstellung;
-Abbildungsbeschriftungen werden aber immer als Unterschriften behandelt,
-w¤hrend die Tabellenbeschriftungen von dem Gebrauch der globalen
-Optionen |table|\-|captions|\-|above| bzw.\ |table|\-|captions|\-|below|
-abh¤ngen.
-\See{\Ref{KOMA}}
-
-Weiterhin kontrollieren manche Pakete, wie etwa das \package{float}-, das
-\package{floatrow}- und das \package{supertabular}"=Paket, die Position
-ihrer Abst¤nde selber.
-
-\bigskip
-
-\begin{Expert*}
-Intern wird der Abstand zwischen Beschriftung und Inhalt durch die L¤nge
-|\above|\-|caption|\-|skip| repr¤sentiert (welche die Implementation von
-\LaTeX\ immer ĵber die Beschriftung setzt).
-Weiterhin gibt es eine zweite L¤nge, |\below|\-|caption|\-|skip|, die
-ĵblicherweise auf |0pt| vorbelegt ist und den Abstand auf der anderen
-Seite der Beschriftung regelt.
-Technisch gesprochen vertauscht also \thispackage\ die Bedeutungen dieser
-beiden L¤ngen wenn |position=|\x|top| gesetzt ist.
-Bitte beachten Sie, daŸ diverse andere Pakete (wie etwa das \package{ftcap}-,
-das \package{nonfloat}- und das \package{topcap}"=Paket) den gleichen
-Kniff anwenden, so daŸ die Benutzung solcher Pakete zusammen mit der
-\package{caption}"=Option |position=| nicht unterstĵtzt wird.
-\end{Expert*}
-
-% --------------------------------------------------------------------------- %
-
-\subsection{Listen}
-\label{lists}
-
-\DescribeMacro{list=}\NEWfeature{v3.1}
-Der Befehl |\caption| erzeugt normalerweise auch einen Eintrag in das
-Abbildungs- bzw.~Tabellenverzeichnis. Dies kann durch Angabe eines leeren
-optionalen Argumentes unterdrĵckt werden {\small(siehe \Ref{caption})},
-aber auch durch Angabe der Option
-\begin{quote}
- |list=no|\quad(oder |list=false| oder |list=off|)\quad.~\footnote{%
- Bitte beachten Sie, daŸ das \package{subfig}"=Paket\cite{subfig} diese
- Option nicht unterstĵtzt, stattdessen sind dort ggf.~die Z¤hler
- \texttt{lofdepth} \& \texttt{lotdepth} anzupassen.}
-\end{quote}
-
-\pagebreak[3]
-\DescribeMacro{listformat=}\NEWfeature{v3.1}
-Mit der Option
-\nopagebreak[3]
-\begin{quote}
- |listformat=|\meta{Listformat}
-\end{quote}
-\nopagebreak[3]
-kann beeinfluŸt werden, wie die Abbildungs- bzw.~Tabellennummer im
-Abbildungs- bzw.~Tabellenverzeichnis erscheint.
-Es gibt fĵnf vordefinierte Listenformate:
-
-\begin{Options}{\OptionLabel}
- \item[empty]
- Es wird keine Nummer angegeben.
-
- \item[simple]
- Die Nummer wird (mit Z¤hler"=Prefix) angegeben.
-
- \item[parens]
- Die Nummer wird (mit Prefix) in Klammern angegeben.
-
- \item[subsimple]
- Wie |simple|, aber ohne Prefix. (Standard)
-
- \item[subparens]
- Wie |parens|, aber ohne Prefix.
-
- \item[\UserDefined]
- Eigene Listenformate kĥnnen mit |\Declare|\-|Caption|\-|List|\-|Format|
- definiert werden.
- \SeeUserDefined
-\end{Options}
-
-Das Pr¤fix ($=$|\p@figure| bzw.~|\p@table|), welches in Verzeichnissen (wie
-dem Abbildungs- und Tabellenverzeichnis) und bei Referenzen der Nummer
-($=$|\the|\-|figure| bzw.~|\the|\-|table|) vorangestellt wird,
-ist normalerweise leer, so daŸ die Listenformate |simple| und |subsimple|
-indentische Ergebnisse abliefern; ebenso |parens| und |subparens|.
-Aber dies kann z.B. bei Unterabbildungen anders sein.\footnote{%
- Unterabbildungen kĥnnen z.B.~mit dem \package{subcaption}- oder
- \package{subfig}"=Paket gestaltet werden.}
-
-% --------------------------------------------------------------------------- %
-
-\subsection{Namen}
-\label{names}
-
-\DescribeMacro{name=}\NEWfeature{v3.1f}
-Die Option
-\begin{quote}
- |name=|\meta{name}
-\end{quote}
-¤ndert den Namen der \emph{aktuellen} Umgebung.
-Hiermit kĥnnte man z.B.~den Bezeichner "`Abbildung"' in allen
-|wrap|\-|figure|"=Umgebungen nach "`Abb."' ¤ndern (w¤hrend woanders
-nach-wie-vor "`Abbildung"' stehen wĵrde):
-\begin{quote}
- |\captionsetup[wrapfigure]{name=Abb.}|
-\end{quote}
-
-% --------------------------------------------------------------------------- %
-
-\subsection{Typen}
-\label{types}
-
-\DescribeMacro{type=}\NEWfeature{v3.0d}
-Der |\caption| Befehl kann verschiedene Gleitumgebungstypen beschriften,
-Abbildungen (|figure|) ebenso wie Tabellen (|table|).
-AuŸerhalb dieser Umgebungen fĵhrt die Verwendung von |\caption| jedoch zu
-einer Fehlermeldung, weil nicht klar ist, zu welchem Typ die Beschriftung
-gehĥren soll.
-In diesen Situationen kann man den Typ manuell mit
-\begin{quote}
- |type=|\meta{Typ}
-\end{quote}
-festlegen, so daŸ |\caption| (und andere Befehle wie |\Continued|\-|Float|
-oder |\sub|\-|caption|\-|box| des \package{subcaption}"=Paketes,
-oder |\sub|\-|float| des \package{subfig}"=Paketes\cite{subfig})
-das gewĵnschte Ergebnis liefern kĥnnen;
-z.B.~innerhalb einer nicht-gleitenden Umgebung wie |minipage|:
-\begin{quote}
- |\noindent\begin{minipage}{\textwidth}|\\
- | \captionsetup{type=figure}|\\
- | \subfloat{|\ldots|}|\\
- | |\ldots\\
- | \caption{|\ldots|}|\\
- |\end{minipage}|
-\end{quote}
-
-\begin{Expert}
-Es existiert auch eine Stern"=Variante dieser Option, |type*=|\meta{Typ},
-die sich unterschiedlich verh¤lt, wenn das
-\package{hyperref}"=Paket\cite{hyperref} geladen ist:
-W¤hrend |type=| einen Hyperlink"=Anker setzt (sofern |hypcap=|\x|true|
-gesetzt ist), tut dies |type*=| nicht.
-(Siehe auch \Ref{hyperref}\,)
-\end{Expert}
-\begin{Expert}
-\emph{\DefaultNoteText:} Bitte definieren Sie das interne Makro |\@captype|
-nicht, wie in manchen Dokumentationen vorgeschlagen wird, selber um,
-sondern verwenden Sie stattdessen immer |\caption|\-|setup{type=|\x\ldots|}|.
-\end{Expert}
-
-\medskip
-
-Eigene Typen kĥnnen mit
- |\Declare|\-|Floating|\-|Environment| (angeboten vom \package{newfloat}"=Paket),
- |\new|\-|float| (angeboten vom \package{float}"=Paket\cite{float}) oder
- |\Declare|\-|New|\-|Float|\-|Type| (angeboten vom \package{floatrow}"=Paket\cite{floatrow}) definiert werden.
-
-\medskip
-
-\INFO % \NEWdescription{v3.1}
-Bitte verwenden Sie die Option |type=| nur \emph{innerhalb} von Boxen oder
-Umgebungen (wie |\par|\-|box| oder |mini|\-|page|), am besten solcher, wo
-kein Seitenumbruch innerhalb mĥglich ist, damit die Abbildung bzw.~Tabelle
-und die Beschriftung nicht durch einen solchen getrennt werden kann.
-Weiterhin kĥnnen einige unschĥne Nebeneffekte auftreten, wenn |type=|
-auŸerhalb einer Box oder Umgebung verwendet wird; daher wird in solchen
-F¤llen eine Warnung ausgegeben.\footnote{%
-Sie erhalten diese Warnung nur dann, wenn Sie \eTeX\ verwenden.}
-
-% --------------------------------------------------------------------------- %
-
-\clearpage
-\section{Befehle}
-
-\subsection{Setzen von Beschriftungen}
-\label{caption}
-\label{captionlistentry}
-
-\DescribeMacro{\caption}
-Der Befehl
-\begin{quote}
- |\caption|\oarg{Kurzform f"ur das Verzeichnis}\marg{Beschriftung}
-\end{quote}
-erzeugt eine œber- bzw.~Unterschrift innerhalb einer gleitenden Umgebung
-wie |figure| oder |table|. Dies ist an sich nichts neues,
-hinzugekommen ist allerdings, daŸ kein Eintrag ins Abbildungs- oder
-Tabellenverzeichnis vorgenommen wird,
-wenn eine leere Kurzform angegeben wird, wie etwa hier:
-\begin{quote}
- |\caption[]{Dies ist eine Abbildung, die nicht ins|\\
- | Abbildungsverzeichnis aufgenommen wird}|
-\end{quote}
-
-\begin{Expert}
-Beachten Sie, daŸ die \meta{Beschriftung} ein \emph{wanderndes} Argument
-ist, solange keine \meta{Kurzform} angegeben ist. Ist hingegen eine
-\meta{Kurzform} angegeben, ist stattdessen diese wandernd.
-"`\emph{Wanderndes} Argument"' bedeutet, daŸ dieses Argument auch in die
-Datei geschrieben wird, die beim n¤chsten \LaTeX"=Lauf das Abbildungs-
-bzw. Tabellenverzeichnis bereitstellt.
-\emph{Wandernde} Argumente dĵrfen keine \emph{zerbrechliche} Befehle enthalten,
-alles muŸ hier \emph{robust} sein, ansonsten kann das Argument \emph{zerbrechen}
-und beim n¤chsten \LaTeX"=Lauf seltsame Fehlermeldungen hervorrufen.
-Einige \emph{zerbrechliche} Befehle kĥnnen mit |\protect| vor dem
-\emph{Zerbrechen} geschĵtzt werden; eigene Definitionen kĥnnen mit
-|\Declare|\-|Robust|\-|Command| anstelle von |\new|\-|command| definiert werden,
-um sie \emph{robust} zu machen.
-
-Ein Beispiel: |\caption{${}^{137}_{\phantom{1}55}$Cs}| wird Fehlermeldungen
-zur Folge haben, da |\phantom| \emph{zerbrechlich} ist.
-Daher muŸ in so einem Fall entweder die \meta{Kurzform} bemĵht werden
-(z.B.~|\caption[${}^|\x|{137}_|\x|{55}$|\x|Cs]|\x|{${}^|\x|{137}_|\x|{\phantom{1}55}$|\x|Cs}|)
-oder aber ein |\protect| erg¤nzt werden, um |\phantom| vor dem \emph{zerbrechen} zu schĵtzen:
-|\caption{${}^|\x|{137}_|\x|{|\textcolor{blue}{\cs{protect}}|\phantom{1}55}$|\x|Cs}|.
-
-Manchmal ist dies allerdings nicht ausreichend. Der Grund ist darin zu finden,
-daŸ der Ein-Zeilen-Test die \meta{Beschriftung} in eine horizontale Box setzt,
-um die Breite zu bestimmen.
-Manche Umgebungen mĥgen dies nicht besonders und quittieren es mit einer
-Fehlermeldung.
-Ein Beispiel:
-|\caption{Ein| |Schema.| |\[V_{C}| |\sim| |\left| |\{| |\begin{array}{cc}|
-|E_{g}| |&| |\textrm{p-n}| |\\| |e\phi_{B}| |&| |\textrm{M-S}| |\end{array}|
-|\right.| |\]}|.
-Der Gebrauch des optionalen Argumentes \meta{Kurzform} mittels
-|\caption[Ein| |Schema]{|\ldots|}| ist hier nicht ausreichend, es kommt immer
-noch zu eine Fehlermeldung. (``\texttt{Missing \$ inserted.}'')
-Hier schafft es daher Abhilfe, den Ein-Zeilen-Test mittels
-|\caption|\-|setup{single|\-|line|\-|check=|\x|off}| direkt vor dem
-Betroffenen |\caption| Befehl auszuschalten.
-
-Mehr Informationen ĵber \emph{wanderende} Argumente und \emph{zerbrechliche}
-\& \emph{robuste} Befehle finden sich in der g¤ngigen \LaTeX"=Literatur, aber
-auch hier:
-\url{http://mirror.ctan.org/info/lshort/german/}
-und (in englischer Sprache) hier:
-\url{http://www-h.eng.cam.ac.uk/help/tpl/textprocessing/teTeX/latex/latex2e-html/fragile.html}
-\end{Expert}
-
-\medskip
-
-\pagebreak[3]
-\DescribeMacro{\caption*}
-Das \package{longtable}"=Paket definiert zus¤tzlich zum Befehl |\caption| auch
-die Stern-Variante |\caption*|, die eine Beschriftung ohne Bezeichner und ohne
-Eintrag ins Tabellenverzeichnis erzeugt. So erzeugt z.B. der Code
-\begin{quote}
- |\begin{longtable}{|\ldots|}|\\
- | \caption*{Eine Tabelle}\\|\\
- | |\ldots\\
- |\end{longtable}|
-\end{quote}
-diese Tabelle:\par
-\DeleteShortVerb{\|}
-\vskip\intextsep
-\begin{minipage}{\linewidth}
- \captionsetup{type=table,position=t}
- \caption*{Eine Tabelle}
- \centering
- \begin{tabular}{r|rr}
- & x & y \\\hline
- a & 1 & 2 \\
- b & 3 & 4 \\
- \end{tabular}
-\end{minipage}
-\vskip\intextsep
-\MakeShortVerb{\|}
-\Thispackage\ bietet diesen Mechanismus auch fĵr Abbildungs- und
-Tabellenbeschriftungen in Gleitumgebungen wie z.B. |table| an:
-\begin{quote}
- |\begin{table}|\\
- | \caption*{Eine Tabelle}|\\
-% | \begin{tabular}{|\ldots|}|\\
-% | |\ldots\\
-% | \end{tabular}|\\
- | |\ldots\\
- |\end{table}|
-\end{quote}
-
-\pagebreak[3]
-\DescribeMacro{\captionof}
-\DescribeMacro{\captionof*}
-Der Befehl |\caption| funktioniert in der Regel nur innerhalb von gleitenden
-Umgebungen, manchmal mĥchte man ihn jedoch auch auŸerhalb anwenden,
-etwa um eine Abbildung in eine nicht-gleitende Umgebung wie |mini|\-|page| zu
-setzen.\par
-Hierfĵr stellt \thispackage\ den Befehl
-\begin{quote}
- |\captionof|\marg{Umgebungstyp}\oarg{Kurzform}\marg{Langform}
-\end{quote}
-zur Verfĵgung. Die Angabe des Umgebungstypen ist hierbei notwendig, damit der
-gewĵnschte Bezeichner (wie z.B. "`Abbildung"' oder "`Tabelle"') gew¤hlt wird
-und der Eintrag in das richtige Verzeichnis vorgenommen wird. Ein Beispiel:
-\begin{quote}
-% |\captionof{figure}{Eine Abbildung}|\\
- |\captionof{table}{Eine Tabelle}|
-\end{quote}
-fĵhrt zu folgendem Ergebnis:
-\begin{Example}
-% \begingroup
-% \captionof{figure}{Eine Abbildung}
-% \endgroup
- \captionsetup{position=top}
-% \begingroup
- \captionof{table}{Eine Tabelle}
-% \endgroup
-\end{Example}
-
-Analog zu |\caption*| gibt es auch den Befehl |\captionof*| fĵr Beschriftungen
-ohne Bezeichner und ohne Verzeichniseintrag.
-
-\INFO % \NEWdescription{v3.1}
-Da |\caption|\-|of| intern die Option |type| verwendet, gelten hier die
-gleichen Einschr¤nkungen wie fĵr die Option |type|, d.h.~sowohl
-|\caption|\-|of| als auch |\caption|\-|of*| sollten nur \emph{innerhalb} von
-Boxen oder Umgebungen verwendet werden.
-\See{\Ref{types}}
-
-\bigskip
-
-\pagebreak[3]
-\DescribeMacro{\captionlistentry}\NEWfeature{v3.1}
-Unter gewissen Umst¤nden kann es nĵtzlich sein, lediglich einen Eintrag
-ins Abbildungs- bzw.~Tabellenverzeichnis vorzunehmen.
-Dies kann mit
-\begin{quote}
- |\captionlistentry|\oarg{Umgebungstyp}\marg{Verzeichniseintrag}
-\end{quote}
-bewerkstelligt werden.
-
-Ein Beispiel: Es ist recht einfach, eine |long|\-|table| anzulegen, die die
-Beschriftungen \emph{ĵber} dem Tabelleninhalt hat, und wo der Listeneintrag
-auf die erste Seite der Tabelle verweist:
-\begin{quote}
- |\begin{longtable}{|\ldots|}|\\
- | \caption{|\ldots|}\\|\\
- |\endfirsthead|\\
- | \caption[]{|\ldots|}\\|\\
- |\endhead|\\
- | |\ldots
-\end{quote}
-Aber da das \package{longtable}"=Paket keinen |\end|\-|first|\-|foot| Befehl
-anbietet, kann dies nicht so einfach auf Beschritungen \emph{unter} dem
-Tabelleninhalt ĵbertragen werden.
-Stattdessen kann man aber |\caption|\-|list|\-|entry| zum Einsatz bringen:
-\begin{quote}
- |\begin{longtable}{|\ldots|}|\\
- | \caption[]{|\ldots|}\\|\\
- |\endfoot|\\
- | \captionlistentry{|\ldots|}|\\
- | |\ldots
-\end{quote}
-
-\begin{Annotation*}
-Ein weiteres Anwendungsbeispiel findet sich in \Ref{examples}.
-\end{Annotation*}
-
-\begin{Expert}
-Es existiert auch eine Stern"=Variante, |\caption|\-|list|\-|entry*|, die
-den Umgebungsz¤hler nicht erhĥht.
-(Innerhalb von |long|\-|table| Umgebungen erhĥht allerdings
-|\caption|\-|list|\-|entry| niemals den Tabellenz¤hler. Siehe auch
-\Ref{longtable}.)
-\end{Expert}
-
-\begin{Expert}
-Bitte beachten Sie, daŸ \meta{Verzeichniseintrag} ein \emph{wanderndes}
-Argument ist, hier also alles \emph{robust} sein muŸ.
-(Siehe auch Erkl¤rung zu |\caption|)
-\end{Expert}
-
-\subsection{Anwenden von Optionen}
-\label{captionsetup}
-
-\DescribeMacro{\captionsetup}
-Den Befehl |\caption|\-|setup| haben wir ja schon im \Ref{usage} kennengelernt,
-uns dort allerdings die Bedeutung des optionalen Parameters
-\meta{Typ} aufgespart.
-Wir erinnern uns, die Syntax des Befehls lautet
-\begin{quote}
- |\captionsetup|\oarg{Typ}\marg{Optionen}\quad.
-\end{quote}
-Wird hier ein \meta{Typ} angegeben, so werden die Optionen nicht
-unmittelbar umgesetzt, sondern werden lediglich vermerkt und kommen erst dann
-zum Einsatz, wenn eine œber- bzw.\ Unterschrift innerhalb der passenden
-(gleitenden) Umgebung gesetzt wird. So wirkt sich z.B. die Angabe
-\begin{quote}
- |\captionsetup[figure]|\marg{Optionen}
-\end{quote}
-lediglich auf die Unterschriften aus, die innerhalb der Umgebung |figure|
-gesetzt werden.
-
-Ein Beispiel:
-\begin{quote}
- |\captionsetup{font=small}|\\
- |\captionsetup[figure]{labelfont=bf,textfont=it}|
-\end{quote}
-liefert Abbildungs- und Tabellenunterschriften der Art:
-\begin{Example}
- \captionsetup{font=small}
- \captionsetup[figure]{labelfont=bf,textfont=it}
- \begingroup
- \captionof{figure}{Eine Abbildung}
- \endgroup
- \captionsetup{position=top}
- \begingroup
- \captionof{table}{Eine Tabelle}
- \endgroup
-\end{Example}
-Wie man sieht, fĵhrt das |\caption|\-|setup[figure]{|\ldots|}| dazu,
-daŸ lediglich die Abbildungsunterschriften mit fettem Bezeichner und kursivem
-Text gesetzt werden; alle anderen Unter- bzw.\ œberschriften werden jedoch
-hiervon nicht beeinflusst.
-
-Als Umgebungstypen mit Unter- bzw.\ œberschriften gibt es in der Regel nur
-zwei: |figure| und |table|. Wie wir jedoch sp¤ter sehen werden, kommen durch die
-Verwendung spezieller \LaTeX-Pakete (wie etwa das \package{floatrow},
-\package{longtable} oder \package{sidecap}"=Paket) ggf.~weitere Typen hinzu,
-deren Beschriftungen ebenfalls derart individuell angepasst werden kĥnnen.
-\See{\Ref{declare} und \Ref{packages}}
-
-\begin{Expert}
-\NEWfeature{v3.1}
-Es existiert auch eine Stern"=Variante von |\caption|\-|setup|:
-\begin{quote}
- |\captionsetup*|\oarg{Typ}\marg{Optionen}
-\end{quote}
-W¤hrend die Variante ohne Stern ggf.~zu Warnungen fĵhrt -- zum Beispiel wenn
-die \meta{Optionen} im Verlauf des Dokumentes nicht zum Einsatz kommen
-(wie z.B. |\caption|\-|setup[table]{font=|\x|sf}| ohne folgende |table|) --
-ist dies bei der Stern"=Variante nicht der Fall.
-\iffalse
-Dies kann sich z.B. bei der Entwicklung von generischen Designvorlagen als
-hilfreich erweisen.
-\fi
-\end{Expert}
-
-\medskip
-
-\pagebreak[3]
-\DescribeMacro{\clearcaptionsetup}
-Um vermerkte, typbezogene Parameter aus dem Ged¤chnis von \LaTeX\ zu lĥschen,
-gibt es den Befehl
-\begin{quote}
- |\clearcaptionsetup|\oarg{Option}\marg{Typ}\quad.
-\end{quote}
-
-|\clearcaptionsetup{figure}| wĵrde z.B. die in dem obrigen Beispiel deklarierte
-Sonderbehandlung der Abbildungsunterschriften wieder aufheben:
-\begin{quote}
- |\captionsetup{font=small}|\\
- |\captionsetup[figure]{labelfont=bf,textfont=it}|\\
- \ldots\\
- | \caption{Eine Abbildung}|\\
- \ldots\\
- |\clearcaptionsetup{figure}|\\
- \ldots\\
- | \caption{Eine Abbildung}|\\
- \ldots
-\end{quote}
-\begin{Example}
- \captionsetup{font=small}
- \captionsetup[figure]{labelfont=bf,textfont=it}
- \begingroup
- \captionof{figure}{Eine Abbildung}
- \endgroup
- \captionsetup{position=top}
- \clearcaptionsetup{figure}
- \begingroup
- \captionof{figure}{Eine Abbildung}
- \endgroup
-\end{Example}
-
-\pagebreak[3]
-\NEWfeature{v3.1}
-Wird das optionale Argument \meta{Option} verwendet, werden nur die
-Einstellungen entfernt, die diese \meta{Option} betreffen.\footnote{%
-Es kann hier nur \emph{eine} Option angegeben werden; sollen mehrere
-Einstellungen entfernt werden, muŸ hierzu
-\cs{clear}\-\texttt{caption}\-\texttt{setup}
-mehrmals angewandt werden.}
-W¤hrend in dem obrigen Beispiel nicht nur die Optionen
-|labelfont=bf,|\x|textfont=it|
-fĵr Abbildungen aufgehoben werden (sondern alle Einstellungen, die
-die Abbildungsbeschriftungen betreffen), wĵrde der folgende Code
-nur die Einstellung |labelfont=bf| entfernen und alle anderen
-Einstellungen fĵr Abbildungen intakt lassen:
-\begin{quote}
- |\captionsetup{font=small}|\\
- |\captionsetup[figure]{labelfont=bf,textfont=it}|\\
- \ldots\\
- | \caption{Eine Abbildung}|\\
- \ldots\\
- |\clearcaptionsetup[labelfont]{figure}|\\
- \ldots\\
- | \caption{Eine Abbildung}|\\
- \ldots
-\end{quote}
-\begin{Example}
- \captionsetup{font=small}
- \captionsetup[figure]{labelfont=bf,textfont=it}
- \begingroup
- \captionof{figure}{Eine Abbildung}
- \endgroup
- \captionsetup{position=top}
- \clearcaptionsetup[labelfont]{figure}
- \begingroup
- \captionof{figure}{Eine Abbildung}
- \endgroup
-\end{Example}
-\begin{Expert}
-Analog zu |\caption|\-|setup*| gibt es hier ebenfalls eine Stern"=Variante
-|\clear|\-|caption|\-|setup*|, die eventuell auftretende Warnungen unterdrĵckt,
-etwa wenn die angegebene \meta{Option} gar nicht fĵr den angegebenen \meta{Typ}
-eingestellt war.
-\end{Expert}
-
-\medskip
-
-\pagebreak[3]
-\DescribeMacro{\showcaptionsetup}
-Fĵr Debug"=Zwecke wird der Befehl
-\nopagebreak[3]
-\begin{quote}
- |\showcaptionsetup|\marg{Typ}
-\end{quote}
-\nopagebreak[3]
-bereitgestellt. Er erzeugt einen Eintrag in der Log"=Datei und zeigt dort
-die fĵr den angegebenen \meta{Typ} eingestellten Optionen an.
-So gibt einem zum Beispiel
-\begin{quote}
- |\captionsetup[figure]{labelfont=bf,textfont=it}|\\
- |\showcaptionsetup{figure}|
-\end{quote}
-die Info:
-\begin{quote}\small
- |Caption Info: Option list on `figure'|\\
- |Caption Data: {labelfont=bf,textfont=it} on input line 5.|
-\end{quote}
-
-\pagebreak[3]
-\subsection{Fortlaufende Gleitumgebungen}
-\label{ContinuedFloat}
-
-\DescribeMacro{\ContinuedFloat}
-Manchmal mĥchte man Abbildungen oder Tabellen aufteilen, jedoch ohne den einzelnen
-Teilen eine eigene Abbildungs- oder Tabellennummer zu geben. Hierfĵr stellt
-\thispackage\ den Befehl
-\begin{quote}
- |\ContinuedFloat|
-\end{quote}
-zur Verfĵgung, der gleich als erstes innerhalb der n¤chsten (Gleit-)Umgebung(en)
-angewandt werden sollte.
-Er verhindert, daŸ die Z¤hlung fortgefĵhrt wird; eine Abbildung oder Tabelle,
-die ein |\Continued|\-|Float| enth¤lt, bekommt also die gleiche Nummer
-wie die vorherige Abbildung oder Tabelle. Ein Beispiel:
-\begin{quote}
- |\begin{table}|\\
- | \caption{Eine Tabelle}|\\
- | |\ldots\\
- |\end{table}|\\
- \ldots\\
- |\begin{table}\ContinuedFloat|\\
- | \caption{Eine Tabelle (Fortsetzung)}|\\
- | |\ldots\\
- |\end{table}|
-\end{quote}
-ergibt als Ergebnis:
-\begin{Example}
- \captionsetup{type=table,position=b,skip=0pt}
- \caption{Eine Tabelle}
- \centerline{\ldots}
-\end{Example}
-\begin{Example}
- \captionsetup{type=table,position=b,skip=0pt}
- \ContinuedFloat
- \caption{Eine Tabelle (Fortsetzung)}
- \centerline{\ldots}
-\end{Example}
-
-\bigskip
-
-\NEWfeature{v3.1}
-Zus¤tzlich fĵhrt der |\Continued|\-|Float| Befehl auch Einstellungen aus, die
-mit dem Typ "`|Continued|\-|Float|"' verknĵpft sind. Dies kann zum Beispiel
-verwendet werden, um automatisch fĵr fortgesetzte Abbildungen oder Tabellen
-auf ein anderes Bezeichner- oder Textformat umzuschalten, wie etwa hier:
-\begin{quote}
- |\DeclareCaptionLabelFormat{continued}{#1~#2 (Fortsetzung)}|\\
- |\captionsetup[ContinuedFloat]{labelformat=continued}|\\
- \ldots\\
- |\begin{table}\ContinuedFloat|\\
- | \caption{Eine Tabelle}|\\
- | |\ldots\\
- |\end{table}|
-\end{quote}
-\begin{Example}
- \captionsetup{type=table,position=b,skip=0pt}
- \captionsetup[ContinuedFloat]{labelformat=continued1}
- \ContinuedFloat
- \caption{Eine Tabelle}\label{continued1}
- \centerline{\ldots}
-\end{Example}
-\smallskip
-\See{\Ref{declare} fĵr die Erl¤uterung des Befehls
- \cs{Declare}\-\texttt{Caption}\-\texttt{Label}\-\texttt{Format}.}
-
-\medskip
-
-Weiterhin existiert auch ein \LaTeX"=Z¤hler namens |Continued|\-|Float|,
-der auch fĵr eigene Zwecke eingesetzt werden kann.
-Fĵr gewĥhnliche (gleitende) Umgebungen ist er auf Null gesetzt, auf Eins
-in der ersten fortgefĵhrten Umgebung, Zwei in der n¤chsten und so weiter.
-Jedes |\Continued|\-|Float| erhĥht also diesen Z¤hler um Eins, w¤hrend
-eine Gleitumgebung ohne |\Continued|\-|Float| den Z¤hler auf Null zurĵcksetzt.
-Ein Beispiel:
-\begin{quote}
- |\DeclareCaptionLabelFormat{cont}{#1~#2\alph{ContinuedFloat}}|\\
- |\captionsetup[ContinuedFloat]{labelformat=cont}|\\
- \ldots\\
- |\begin{table}\ContinuedFloat|\\
- | \caption{Eine Tabelle}|\\
- | |\ldots\\
- |\end{table}|
-\end{quote}
-\begin{Example}
- \captionsetup{type=table,position=b,skip=0pt}
- \captionsetup[ContinuedFloat]{labelformat=continued2}
- \ContinuedFloat
- \caption{Eine Tabelle}\label{continued2}
- \centerline{\ldots}
-\end{Example}
-\medskip
-Eine Referenz auf diese Tabelle wĵrde "`\autoref{continued2}"' ergeben,
-da lediglich das Format der Tabellenbeschriftung ge¤ndert wurde.
-Sollen Referenzen ebenfalls diesen Z¤hler enthalten, so kann stattdessen der
-Befehl |\the|\-|Continued|\-|Float| passend umdefiniert werden.
-Dieser Befehl wird automatisch bei der Anwendung von |\Continued|\-|Float|
-dem Abbildungs- bzw.~Tabellenz¤hler angeh¤ngt und hat normalerweise einen
-leeren Inhalt.
-\begin{quote}
- |\renewcommand\theContinuedFloat{\alph{ContinuedFloat}}|\\
- \ldots\\
- |\begin{table}\ContinuedFloat|\\
- | \caption{Eine Tabelle}|\\
- | |\ldots\\
- |\end{table}|
-\end{quote}
-\begin{Example}
- \captionsetup{type=table,position=b,skip=0pt}
- \renewcommand\theContinuedFloat{\alph{ContinuedFloat}}
- \ContinuedFloat
- \caption{Eine Tabelle}\label{continued3}
- \centerline{\ldots}
-\end{Example}
-\medskip
-Eine Referenz auf diese Tabelle wĵrde nun "`\autoref{continued3}"' ergeben.
-
-\pagebreak[3]
-\DescribeMacro{\ContinuedFloat*}
-Angenommen man mĥchte gerne die erste Abbildung oder Tabelle einer
-fortlaufenden Serie mit einer Beschriftung der Art "`Abbildung 7a"' und
-nicht mit "`Abbildung 7"' beschriften. (Und die zweite entsprechend mit
-"`Abbildung 7b"' statt "`Abbildung 7a"'.)
-Dies ist auch mĥglich, indem man die Stern"=Variante |\Continued|\-|Float*|
-anwendet.
-Diese fĵhrt genau wie |\ContinuedFloat| auch die mit "`|Continued|\-|Float|"'
-verknĵpften Optionen aus und erhĥht den \LaTeX"=Z¤hler |Continued|\-|Float|,
-markiert aber die erste Abbildung bzw.~Tabelle einer fortlaufenden Serie:
-\begin{quote}
- |\renewcommand\theContinuedFloat{\alph{ContinuedFloat}}|\\
- \ldots\\
- |\begin{figure}\ContinuedFloat*|\\
- | |\ldots\\
- | \caption{Erste Abbildung einer Serie}|\\
- |\end{figure}|\\
- \ldots\\
- |\begin{figure}\ContinuedFloat|\\
- | |\ldots\\
- | \caption{Zweite Abbildung einer Serie}|\\
- |\end{figure}|\\
- \ldots\\
- |\begin{figure}\ContinuedFloat|\\
- | |\ldots\\
- | \caption{Dritte Abbildung einer Serie}|\\
- |\end{figure}|
-\end{quote}
-\begin{Example}
- \captionsetup{type=figure,position=b,skip=0pt}
- \renewcommand\theContinuedFloat{\alph{ContinuedFloat}}
- \begingroup
- \ContinuedFloat*
- \centerline{\ldots}
- \caption{Erste Abbildung einer Serie}
- \endgroup
- \begingroup
- \ContinuedFloat
- \centerline{\ldots}
- \caption{Zweite Abbildung einer Serie}
- \endgroup
- \begingroup
- \ContinuedFloat
- \centerline{\ldots}
- \caption{Dritte Abbildung einer Serie}
- \endgroup
-\end{Example}
-\smallskip
-\Note{Leider ist \cs{ContinuedFloat*} nicht verfĵgbar, wenn das
- \package{subfig}"=Paket\cite{subfig} geladen ist.}
-
-\pagebreak[3]
-\subsubsection*{Eine Anmerkung zur longtable-Umgebung}
-Mĥchten Sie hingegen bei fortgefĵhrten |long|\-|table|"=Umgebungen einen
-anderen Bezeichner (nach einem Seitenumbruch), so kann dies \emph{nicht}
-mit |\Continued|\-|Float| bewerkstelligt werden, aber mit Hilfe der vom
-\package{longtable}"=Paket\cite{longtable} bereitgestellten Befehle
-|\end|\-|first|\-|head| und |\end|\-|head|; in etwa so:
-\begin{quote}
- |\DeclareCaptionLabelFormat{continued}{#1~#2 (Fortsetzung)}|\\
- \ldots\\
- |\begin{longtable}{|\ldots|}|\\
- | \caption{Eine mehrseitige Tabelle}\\|\\
- |\endfirsthead|\\
- | \captionsetup{labelformat=continued}|\\
- | \caption[]{Eine mehrseitige Tabelle}\\|\\
- |\endhead|\\
- | |\ldots\\
- |\end{longtable}|
-\end{quote}
-
-% --------------------------------------------------------------------------- %
-
-\clearpage
-\section{Eigene Erweiterungen}
-\label{declare}
-
-Wem die vorhandenen Formate, Trenner, Textausrichtungen, Zeichens¤tze und Stile
-nicht ausreichen, der hat die Mĥglichkeit, sich eigene zu definieren. Hierzu
-gibt es eine Reihe von Befehlen, die in der Pr¤mbel des Dokumentes (das ist der
-Teil zwischen |\document|\-|class| und |\begin{document}|) zum Einsatz kommen.
-
-\pagebreak[3]
-\DescribeMacro{\DeclareCaption-\\Format}
-Eigene Formate kĥnnen mit dem Befehl
-\begin{quote}
- |\DeclareCaptionFormat|\marg{Name}\marg{Code mit \#1, \#2 und \#3}
-\end{quote}
-definiert werden.
-Fĵr \#1 wird sp¤ter der Bezeichner, fĵr \#2 der Trenner
-und fĵr \#3 der Text eingesetzt. So ist z.B. das Standardformat |plain|,
-welches die Beschriftung als gewĥhnlichen Absatz formatiert,
-in diesem Paket so vordefiniert:
-\begin{quote}
- |\DeclareCaptionFormat{plain}{#1#2#3\par}|
-\end{quote}
-\begin{Expert}
-Es gibt auch eine Stern"=Variante, |\Declare|\-|Caption|\-|Format*|, die den
-Code nicht in \TeX s horizontalem Modus, sondern im vertikalen Modus setzt,
-aber die |indention=| Option nicht unterstĵtzt.
-\end{Expert}
-
-\pagebreak[3]
-\DescribeMacro{\DeclareCaption-\\LabelFormat}
-„hnlich kĥnnen auch eigene Bezeichnerformate definiert werden:
-\begin{quote}
- |\DeclareCaptionLabelFormat|\marg{Name}\marg{Code mit \#1 und \#2}
-\end{quote}
-Bei den Bezeichnerformaten wird hierbei fĵr \#1 der Name (also z.B.
-"`Abbildung"'), fĵr \#2 die Nummer (also z.B. "`12"') eingesetzt.
-Ein Beispiel:
-\begin{quote}
- |\DeclareCaptionLabelFormat{bf-parens}{(\textbf{#2})}|\\
- |\captionsetup{labelformat=bf-parens,labelsep=quad}|
-\end{quote}
-\example*{labelformat=bf-parens,labelsep=quad}{\exampletext}
-
-\pagebreak[3]
-\DescribeMacro{\bothIfFirst}
-\DescribeMacro{\bothIfSecond}
-Bei der Definition von eigenen Bezeichnerformaten gibt es eine Besonderheit zu
-beachten: Wird das Bezeichnerformat auch in Verbindung mit dem
-\package{subcaption} oder \package{subfig}"=Paket\cite{subfig} verwendet,
-so kann der Bezeichnername (also \#1) auch leer sein.
-Um dies flexibel handhaben zu kĥnnen, stellt \thispackage\ die Befehle
-\begin{quote}
- |\bothIfFirst|\marg{Erstes Argument}\marg{Zweites Argument}\quad und\\
- |\bothIfSecond|\marg{Erstes Argument}\marg{Zweites Argument}
-\end{quote}
-zur Verfĵgung.
-|\bothIfFirst| testet, ob das erste Argument nicht leer ist,
-|\bothIfSecond|, ob das zweite Argument nicht leer ist.
-Nur wenn dies der Fall ist, werden beide Argumente ausgegeben,
-ansonsten werden beide unterdrĵckt.
-
-\smallskip
-
-\pagebreak[3]
-So ist z.B. das Standard"=Bezeichnerformat |simple| nicht, wie man
-naiverweise annehmen kĥnnte, als
-\begin{quote}
- |\DeclareCaptionLabelFormat{simple}{#1~#2}|
-\end{quote}
-definiert, weil dies zu einem stĥrendem fĵhrenden Leerzeichen fĵhren wĵrde,
-sollte \#1 leer sein. Stattdessen kommt folgende Definition zum Einsatz,
-die sowohl mit |\caption| als auch mit |\sub|\-|caption| bzw.~|\sub|\-|float|
-harmoniert:
-\begin{quote}
- |\DeclareCaptionLabelFormat{simple}%|\\
- | {\bothIfFirst{#1}{~}#2}|\mbox{\quad,}
-\end{quote}
-d.h.~das Leerzeichen kommt nur dann zum Einsatz, wenn \#1 nicht leer ist.
-
-\smallskip
-
-\pagebreak[3]
-\DescribeMacro{\DeclareCaption-\\TextFormat}\NEWfeature{v3.0l}
-Ebenso kĥnnen eigene Textformate definitiert werden:
-\begin{quote}
- |\DeclareCaptionTextFormat|\marg{Name}\marg{Code mit \#1}
-\end{quote}
-An die Stelle von \#1 wird sp¤ter der Beschriftungstext eingesetzt.
-
-\bigskip
-
-\pagebreak[3]
-\DescribeMacro{\DeclareCaption-\\LabelSeparator}
-Eigene Trenner werden mit
-\begin{quote}
- |\DeclareCaptionLabelSeparator|\marg{Name}\marg{Code}
-\end{quote}
-definiert. Auch hier wieder als einfaches Beispiel eine Definition innerhalb
-des \package{caption}"=Paketes selber:
-\begin{quote}
- |\DeclareCaptionLabelSeparator{colon}{: }|
-\end{quote}
-\begin{Expert}
-Es gibt auch eine Stern"=Variante, |\Declare|\-|Caption|\-|Label|\-|Separator*|,
-die den Code ohne den mit |label|\-|font=| eingestellten Zeichensatz setzt.
-Auf diese Art sind z.B. die Trenner |quad|, |new|\-|line| und |en|\-|dash|
-vordefiniert.
-\end{Expert}
-
-\bigskip
-
-\pagebreak[3]
-\DescribeMacro{\DeclareCaption-\\Justification}
-Eigene Textausrichtungen kĥnnen mit
-\begin{quote}
- |\DeclareCaptionJustification|\marg{Name}\marg{Code}
-\end{quote}
-definiert werden.
-Der \meta{Code} wird dann der Beschriftung vorangestellt,
-so fĵhrt z.B. die Verwendung der bereits vordefinierten Ausrichtung
-\begin{quote}
- |\DeclareCaptionJustification{raggedright}{\raggedright}|
-\end{quote}
-dazu, daŸ alle Zeilen der Beschriftung linksbĵndig ausgegeben werden.
-
-\bigskip
-
-\pagebreak[3]
-\DescribeMacro{\DeclareCaption-\\Font}
-Eigene Zeichensatzoptionen kĥnnen mit
-\begin{quote}
- |\DeclareCaptionFont|\marg{Name}\marg{Code}
-\end{quote}
-definiert werden.
-So sind z.B. die Optionen |small| und |bf| folgendermaŸen vordefiniert:
-\begin{quote}
- |\DeclareCaptionFont{small}{\small}|\quad und\\
- |\DeclareCaptionFont{bf}{\bfseries}|\quad.
-\end{quote}
-\iffalse
-Die Zeilenabst¤nde lieŸen sich z.B.~ĵber das \package{setspace}"=Paket
-regeln:%\NEWdescription{v3.0h}
-\begin{quote}
- |\usepackage{setspace}|\\
- |\DeclareCaptionFont{singlespacing}{\setstretch{1}}|~\footnote{%
- \emph{\DefaultNoteText:} \cs{singlespacing} kann hier nicht benutzt werden,
- da es ein \cs{vskip} Kommando enth¤lt.}\\
- |\DeclareCaptionFont{onehalfspacing}{\onehalfspacing}|\\
- |\DeclareCaptionFont{doublespacing}{\doublespacing}|\\
- |\captionsetup{font={onehalfspacing,small},labelfont=bf}|
-\end{quote}
-\example{font={onehalfspacing,small},labelfont=bf,singlelinecheck=off}{\exampletext}
-\fi
-Ein Beispiel, welches Farbe ins Spiel bringt:
-\begin{quote}
- |\usepackage{color}|\\
- |\DeclareCaptionFont{red}{\color{red}}|\\
- |\DeclareCaptionFont{green}{\color{green}}|\\
- |\DeclareCaptionFont{blue}{\color{blue}}|\\
- |\captionsetup{labelfont={blue,bf},textfont=green}|
-\end{quote}
-\example*{labelfont={color=blue,bf},textfont={color=green},singlelinecheck=off}{\exampletext}
-Aber da \thispackage\ schon die pfiffige Definition
-\begin{quote}
- |\DeclareCaptionFont{color}{\color{#1}}|
-\end{quote}
-beinhaltet, kann man das selbe Resultat auch einfach mit
-\begin{quote}
- |\usepackage{color}|\\
- |\captionsetup{labelfont={color=blue,bf},|\\
- | textfont={color=green}}|
-\end{quote}
-erreichen.
-
-\medskip
-
-\pagebreak[3]
-\DescribeMacro{\DeclareCaption-\\Style}
-Eigene Stile werden folgendermaŸen definiert:
-\begin{quote}
- |\DeclareCaptionStyle|\marg{Name}\oarg{zus¤tzliche Optionen}\marg{Optionen}
-\end{quote}
-Stile sind einfach eine Ansammlung von geeigneten Einstellungen, die unter
-einem eigenen Namen zusammengefasst werden und mit der Paketoption
-|style=|\meta{Name} zum Leben erweckt werden kĥnnen.
-
-Hierbei ist zu beachten, daŸ die so definierten Stile immer auf dem Stil |base|
-basieren (siehe auch \Ref{style}), es brauchen also nur davon abweichende
-Optionen angegeben werden.
-
-Sind \meta{zus¤tzliche Optionen} angegeben, so kommen diese automatisch
-zus¤tzlich zum Einsatz, sofern die Beschreibung in eine einzelne Zeile passt
-und diese Abfrage nicht mit |single|\-|line|\-|check=off| ausgeschaltet wurde.
-
-Als Beispiel muŸ mal wieder eine einfache Definition innerhalb dieses Paketes
-herhalten: Der Stil |base| ist vordefiniert als
-\begin{quote}
- |\DeclareCaptionStyle{base}%|\\
- | [justification=centering,indention=0pt]{}|\quad.
-\end{quote}
-
-Etwas spannenderes:
-\begin{quote}
- |\DeclareCaptionStyle{mystyle}%|\\
- | [margin=5mm,justification=centering]%|\\
- | {font=footnotesize,labelfont=sc,margin={10mm,0mm}}|\\
- |\captionsetup{style=mystyle}|
-\end{quote}
-liefert einem Beschriftungen wie diese hier:
-\begin{Example}
- \captionsetup{type=figure,style=mystyle,position=b}
- \caption{Eine kurze Beschriftung.}
- \caption{Eine sehr sehr sehr sehr sehr sehr sehr sehr sehr
- sehr sehr sehr sehr sehr sehr sehr sehr sehr
- sehr sehr sehr sehr sehr sehr sehr sehr lange Beschriftung.}
-\end{Example}
-
-\bigskip
-
-\pagebreak[3]
-\DescribeMacro{\DeclareCaption-\\ListFormat}\NEWfeature{v3.1}
-Eigene Listenformate kĥnnen mit
-\begin{quote}
- |\DeclareCaptionListFormat|\marg{Name}\marg{Code mit \#1 und \#2}
-\end{quote}
-definiert werden.
-Im Laufe des Dokumentes wird \#1 dann mit dem Bezeichner"=Pr¤fix
-(z.B.~|\p@figure|), und \#2 mit der Referenznummer (z.B.~|\the|\-|figure|) ersetzt.
-
-% --------------------------------------------------------------------------- %
-
-\pagebreak[3]
-\subsection{Weiterfĵhrende Beispiele}
-\label{examples}
-
-\subsubsection*{Beispiel 1}
-
-%\NEWdescription{v3.1}
-Mĥchte man die Bezeichnung (inkl. Trenner wie Doppelpunkt) vom Text mit einem
-Zeilenumbruch getrennt haben, so lieŸe sich das (auch) so bewerkstelligen:
-\begin{quote}
- |\DeclareCaptionFormat{myformat}{#1#2\\#3}|
-\end{quote}
-W¤hlt man anschlieŸend dieses Format mit |\caption|\-|setup{format=|\x|myformat}| aus,
-so erh¤lt man Beschriftungen der Art:
-%\begin{Example}
-% \captionsetup{skip=0pt}
- \example{format=myformat1,labelfont=bf}{\exampletext}
-%\end{Example}
-Auch einen Einzug kĥnnte man diesem Format mit auf den Weg geben:
-\begin{quote}
- |\captionsetup{format=myformat,indention=1cm}|
-\end{quote}
-fĵhrt zu Beschriftungen wie:
-%\begin{Example}
-% \captionsetup{skip=0pt}
- \example{format=myformat1,indention=1cm,labelfont=bf}{\exampletext}
-%\end{Example}
-Aber Sie mĥchten den Einzug nur auf die erste Zeile des Texts anwenden?
-Kein Problem, so wĵrde z.B.~die Definition
-\begin{quote}
- |\newlength\myindention|\\
- |\DeclareCaptionFormat{myformat}%|\\
- | {#1#2\\\hspace*{\myindention}#3}|\\
- \ldots\\
- |\setlength\myindention{1cm}|\\
- |\captionsetup{format=myformat}|
-\end{quote}
-zu Beschriftungen dieser Art fĵhren:
-%\begin{Example}
-% \captionsetup{skip=0pt}
- \example{format=myformat2,myindention=1cm,labelfont=bf}{\exampletext}
-%\end{Example}
-Zu der L¤nge |\myindention| h¤tten Sie gerne eine Option, so daŸ man diesen
-Einzug auch z.B.~mit |\caption|\-|setup|\x|[figure]|\x|{myindention=|\ldots|}| setzen kann?
-Auch dies l¤Ÿt sich bewerkstelligen, z.B.~folgendermaŸen:
-\begin{quote}
- |\newlength\myindention|\\
- |\DeclareCaptionOption{myindention}%|\\
- | {\setlength\myindention{#1}}|\\
- |\DeclareCaptionFormat{myformat}%|\\
- | {#1#2\\\hspace*{\myindention} #3}|\\
- \ldots\\
- |\captionsetup{format=myformat,myindention=1cm}|
-\end{quote}
-
-\subsubsection*{Beispiel 2}
-
-Die Beschriftungen sollen wie folgt aussehen:
-%\begin{Example}
-% \captionsetup{skip=0pt}
- \example{format=reverse,labelformat=fullparens,labelsep=fill,labelfont=it}{\exampletext}
-%\end{Example}
-\pagebreak[2]
-Dies lieŸe sich beispielsweise wie folgt realisieren:
-\nopagebreak[3]
-\begin{quote}
- |\DeclareCaptionFormat{reverse}{#3#2#1}|\\
- |\DeclareCaptionLabelFormat{fullparens}%|\\
- | {(\bothIfFirst{#1}{~}#2)}|\\
- |\DeclareCaptionLabelSeparator{fill}{\hfill}|\\
- |\captionsetup{format=reverse,labelformat=fullparens,|\\
- | labelsep=fill,font=small,labelfont=it}|
-\end{quote}
-
-\subsubsection*{Beispiel 3}
-
-Der Bezeichner soll in den linken Rand verlagert werden,
-so daŸ die komplette Absatzbreite der Beschriftung selber zugute kommt:
-\begin{quote}
- |\DeclareCaptionFormat{llap}{\llap{#1#2}#3\par}|\\
- |\captionsetup{format=llap,labelsep=quad,singlelinecheck=no}|
-\end{quote}
-Das Ergebnis w¤ren Beschriftungen wie diese:
-\example{format=llap,labelsep=quad,singlelinecheck=no,margin=0pt}{\exampletext}
-
-\medskip
-
-Soll der Einzug in den Rand eine feste GrĥŸe sein (z.B.~$2.5$\,cm),
-so kĥnnte hierfĵr eine Kombination aus |\llap| und |\makebox| angewandt werden,
-zum Beispiel:
-\begin{quote}
- |\DeclareCaptionFormat{llapx}%|\\
- | {\llap{\makebox[2.5cm][l]{#1}}#3\par}|\\
- |\captionsetup{format=llapx,singlelinecheck=off}|
-\end{quote}
-\example{format=llapx,singlelinecheck=off,skip=0pt,margin=0pt}{\exampletext}
-
-\subsubsection*{Beispiel 4}
-
-Dieses Beispiel setzt eine Abbildung neben eine Tabelle, aber verwendet eine
-einzige, kombinierte Beschriftung fĵr beide. Dies wird durch eine Kombination
-aus |\Declare|\-|Caption|\-|Label|\-|Format| und |\caption|\-|list|\-|entry|
-realisiert:
-\begin{quote}
- |\DeclareCaptionLabelFormat{andtable}%|\\
- | {#1~#2 \& \tablename~\thetable}|\\
- \ldots\\
- |\begin{figure}|\\
- | \centering|\\
- | \includegraphics{|\ldots|}%|\\
- | \qquad|\\
- | \begin{tabular}[b]{\ldots}|\\
- | |\ldots\\
- | \end{tabular}|\\
- | \captionlistentry[table]{|\ldots|}|\\
- | \captionsetup{labelformat=andtable}|\\
- | \caption{|\ldots|}|\\
- |\end{figure}|
-\end{quote}
-\DeleteShortVerb{\|}%
-\noindent\begin{minipage}{\linewidth}
- \captionsetup{type=figure}
- \centering
- \includegraphics[width=30pt]{cat}%
- \qquad
- \begin{tabular}[b]{r|rr}
- & x & y \\\hline
- a & 1 & 2 \\
- b & 3 & 4 \\
- \end{tabular}
- \captionlistentry[table]{Eine Abbildung und Tabelle mit gemeinsamer Beschriftung}
- \captionsetup{labelformat=andtable}
- \caption{Eine Abbildung und Tabelle mit gemeinsamer Beschriftung~\footnotemark}
-\end{minipage}
-\footnotetext{Das Katzenbild wurde den Beispielen zum \LaTeX"=Begleiter\cite{TLC2}
- entnommen, die Erlaubnis hierzu wurde eingeholt.}
-\MakeShortVerb{\|}
-
-(Beachten Sie, daŸ |\caption|\-|list|\-|entry| den Abbildungs- bzw.~Tabellenz¤hler
- erhĥht.)
-
-
-% --------------------------------------------------------------------------- %
-
-\clearpage
-\section{Dokumentenklassen \& Babel-Unterstĵtzung}
-\label{classes}
-
-%\NEWdescription{v3.1}
-Dieser Teil der Dokumentation wird Ihnen einen œberblick ĵber diejenigen
-Dokumentenklassen geben, an welche \thispackage\ angepasst ist:
-Welche Mĥglichkeiten zur Beschriftungsgestaltung sie bereits verfĵgen,
-mit welchen Seiteneffekten Sie rechnen mĵssen, wenn Sie dieses Paket verwenden,
-und mit welchen Standardwerten die Optionen belegt werden.
-
-\NEWfeature{v3.1}
-Die Standardwerte namens "`default"' h¤ngen von der verwendeten
-Dokumentenklasse ab; sie repr¤sentieren quasi das Aussehen, wie es vom Autor
-der Klasse vorgesehen war.
-So kann z.B.~die Einstellung |format=|\x|default| je nach verwendeter Klasse
-unterschiedliche Aussehen der Beschriftungen hervorbringen.
-
-\begingroup\setlength\leftmargini{0.3em}% default = 2.5em
-\INFO
-Sollten Sie Ihre Dokumentenklasse nicht in diesem Abschnitt finden, so haben Sie
-trotzdem oftmals keinen Grund zur Sorge: Viele Dokumentenklassen (wie z.B.~die
-\class{octavo} Klasse) sind von einer der Standardklassen \class{article},
-\class{report} oder \class{book} abgeleitet und verhalten sich bezĵglich der
-Abbildungs- und Tabellenbeschriftungen gleich.
-\Thispackage\ ĵberprĵft automatisch die Kompatibilit¤t zur Dokumentenklasse und
-gibt Ihnen die Warnung
-\begin{quote}\footnotesize
- |Package caption Warning: Unsupported document class (or package) detected,|\\
- |(caption) usage of the caption package is not recommended.|\\
- |See the caption package documentation for explanation.|
-\end{quote}
-aus, wenn es eine Unvertr¤glichkeit entdeckt.
-Wenn Sie keine solche Warnung erhalten, ist alles bestens, falls aber doch,
-wird der Einsatz des \package{caption}"=Paketes nicht empfohlen und
-insbesondere nicht unterstĵtzt.
-\endgroup
-
-\begin{Expert}
-Sollten Sie trotz der angemahnten Inkompatibilit¤t \thispackage{}
-nutzen wollen, sollten Sie grĵndlich auf Seiteneffekte achten; gewĥhnlich
-¤ndert sich alleine durch das Einbinden des \package{caption}"=Paketes
-ohne Optionen bereits das von der Dokumentenklasse vorgegebene Aussehen der
-Beschriftungen.
-Wenn dies fĵr Sie in Ordnung ist, sollten Sie als erstes die Option
-|style=|\x|base| mittels |\use|\-|package[style=|\x|base]{caption}| oder
-|\caption|\-|setup{style=|\x|base}| angeben, um \thispackage\ in einen
-wohldefinierten Grundstatus zu versetzen.
-AnschlieŸend kĥnnen Sie anfangen, mit zus¤tzlichen Optionen erste
-Anpassungen vorzunehmen und dabei die Daumen gedrĵckt zu halten.
-\end{Expert}
-
-\newcommand*\Option{Option}
-\newcommand*\defaultvalue{Standard-Belegung (\texttt{default})}
-\newcommand*\uses{\textit{verwendet}}
-\newcommand*\settings{\textit{Einstellungen}}
-\newcommand*\nofont{\textit{keiner}}
-
-\subsection{Standard \LaTeX: article, report und book}
-
-\begin{tabular}{ll}
-\Option & \defaultvalue \\\hline
-|format=| & |plain| \\
-|labelformat=| & |simple| \\
-|labelsep=| & |colon| \\
-|justification=| & |justified| \\
-|font=| & \nofont \\
-|labelfont=| & \nofont \\
-|textfont=| & \nofont \\
-\end{tabular}
-
-\begin{Annotation}
-Dies gilt auch fĵr von \class{article}, \class{report} und \class{book}
-abgeleitete Dokumentenklassen.
-\end{Annotation}
-
-\subsection{\AmS: amsart, amsproc und amsbook}
-\label{AMS}
-
-\begin{tabular}{ll}
-\Option & \defaultvalue \\\hline
-|format=| & |plain| \\
-|labelformat=| & |simple| \\
-|labelsep=| & |.\enspace| \\
-|justification=| & |justified| \\
-|font=| & |\@captionfont| \\
-|labelfont=| & |\@captionheadfont| \\
-|textfont=| & |\@captionfont\upshape| \\
-\end{tabular}
-
-\begin{Annotation*}
-|\@caption|\-|font| wird von den \AmS\ Dokumentenklassen auf |\normal|\-|font|
-vorbelegt, und |\@caption|\-|head|\-|font| auf |\sc|\-|shape|.
-\end{Annotation*}
-
-Weiterhin wird der Rand fĵr mehrzeilige Abbildungs- bzw.~Tabellenbeschriftungen
-auf |\caption|\-|indent| gesetzt, bei einzeiligen Beschriftungen wird lediglich
-die H¤lfte davon verwendet. (|\caption|\-|indent| wird von den \AmS\ Klassen
-auf |3pc| vorbelegt.)
-Mĥchten Sie einen einheitlichen Rand, so fĵgen Sie bitte
-|\clear|\-|caption|\-|setup[margin*]{single|\-|line}|
-in Ihren Dokumentenvorspann ein, nachdem Sie \thispackage\ geladen haben.
-
-Zus¤tzlich werden automatisch die Optionen |figure|\-|position=b,|\x|table|\-|position=t|
-gesetzt. Dies kĥnnen Sie ĵberschreiben, indem Sie beim Laden des
-\package{caption}"=Paketes einfach andere Werte fĵr
-|figure|\-|position=| und |table|\-|position=| angeben.
-
-\subsection{beamer}
-\label{beamer}
-
-\begin{tabular}{ll}
-\Option & \defaultvalue \\\hline
-|format=| & |plain| \\
-|labelformat=| & \textit{nicht nummeriert} \\
-|labelsep=| & |colon| \\
-|justification=| & |raggedright| \\
-|font=| & \class{beamer} "`|caption|"' \settings \\
-|labelfont=| & \class{beamer} "`|caption name|"' \settings \\
-|textfont=| & \nofont \\
-\end{tabular}
-
-\subsubsection*{Von der Klasse angebotene Befehle und deren Seiteneffekte}
-Die Zeichensatz- und Farbeinstellungen kĥnnen mit
-|\set|\-|beamer|\-|font{caption}|\marg{Optionen} und
-|\set|\-|beamer|\-|font{caption name}|\marg{Optionen} vorgenommen werden.
-Dies wird auch mit dem \package{caption}"=Paket noch funktionieren,
-zumindest solange Sie keinen anderen Zeichensatz mit
-|\caption|\-|setup{font=|\x\meta{Optionen}|}| oder
-|\caption|\-|setup{label|\-|font=|\x\meta{Optionen}|}| einstellen.\par
-Weiterhin bietet die \package{beamer}"=Klasse verschiedene "`Templates"' fĵr
-die Beschriftungen an, diese kĥnnen mit
-|\set|\-|beamer|\-|template|\x|{caption}|\x|[|\meta{Template}|]|
-ausgew¤hlt werden.
-Da \thispackage\ diesen Mechanismus ersetzt, haben
-|\def|\-|beamer|\-|template*|\x|{caption}|\x\marg{Template Code}
-und
-|\set|\-|beamer|\-|template|\x|{caption}|\x|[|\meta{Template}|]|
-keine Funktion mehr, wenn \thispackage\ verwendet wird.
-(Au"snahme: Die Auswahl des Templates |default|, |num|\-|bered| oder
-|caption| |name| |own| |line| wird automatisch erkannt und auf dem \package{caption}"=Paket
-entsprechende Optionen umgesetzt, sofern diese nicht explizit durch den Anwender
-mit anderen Einstellungen "uberschrieben worden sind.)
-
-\subsection{\KOMAScript: scrartcl, scrreprt und scrbook}
-\label{KOMA}
-
-\begin{tabular}{ll}
-\Option & \defaultvalue \\\hline
-|format=| & \uses\ |\setcapindent| \textit{\&} |\setcaphanging| \settings \\
-|labelformat=| & \textit{wie \purett{simple}, aber mit ``autodot'' Feature}\\
-|labelsep=| & |\captionformat| \\
-|justification=| & |justified| \\
-|font=| & |\setkomafont{caption}| \settings \\
-|labelfont=| & |\setkomafont{captionlabel}| \settings \\
-|textfont=| & \nofont \\
-\end{tabular}
-
-\subsubsection*{Von der Klasse angebotene Befehle}
-Die \KOMAScript"=Dokumentenklassen bietet sehr viele Mĥglichkeiten, das Design
-der Abbildungs- und Tabellenbeschriftungen anzupassen. Fĵr eine œbersicht schauen
-Sie bitte in die sehr gute \KOMAScript"=Dokumentation, Abschnitt "`Tabellen
-und Abbildungen"'.
-
-\subsubsection*{Seiteneffekte}
-Das optionale Argument von |\set|\-|cap|\-|width| wird nicht vom
-\package{caption}"=Paket unterstĵtzt und daher ignoriert.
-Weiterhin ĵberschreiben die \KOMAScript"=Optionen |table|\-|caption|\-|above|
-\& |table|\-|caption|\-|below| sowie die dazugehĥrigen Befehle
-|\caption|\-|above| \& |\caption|\-|below| die mit |position=| get¤tigten
-Einstellungen.
-
-\subsection{\NTG: artikel, rapport und boek}
-\label{NTG}
-
-\begin{tabular}{ll}
-\Option & \defaultvalue \\\hline
-|format=| & |plain| \\
-|labelformat=| & |simple| \\
-|labelsep=| & |colon| \\
-|justification=| & |justified| \\
-|font=| & \nofont \\
-|labelfont=| & |\CaptionLabelFont| \\
-|textfont=| & |\CaptionTextFont| \\
-\end{tabular}
-
-\subsubsection*{Von der Klasse angebotene Befehle und deren Seiteneffekte}
-|\Caption|\-|Label|\-|Font| und |\Caption|\-|Text|\-|Font| kĥnnen entweder
-direkt oder indirekt ĵber |\Caption|\-|Fonts| definiert werden.
-Beides funktioniert auch weiterhin, zumindest solange kein anderer
-Zeichensatz mit den \package{caption}"=Paketoptionen
-|label|\-|font=| und |text|\-|font=| festgelegt wird.
-
-\subsection{\SmF: smfart und smfbook}
-\label{SMF}
-
-Da die \SmF\ Dokumentenklassen von den \AmS\ Klassen abgeleitet wurden,
-gelten hier dieselben Standardbelegungen wie dort.
-
-Zus¤tzlich ist der Rand auf den zehnten Teil von |\line|\-|width| limiert.
-Mĥgen Sie diese Limitierung nicht, kann sie mit der Option
-|max|\-|margin=|\x|off| oder |max|\-|margin=|\x|false| ausgeschaltet werden.
-
-\subsection{thesis}
-\label{thesis}
-
-\begin{tabular}{ll}
-\Option & \defaultvalue \\\hline
-|format=| & |hang| \\
-|labelformat=| & \textit{wie \purett{simple}, aber mit kurzem Namen}\\
-|labelsep=| & |colon| \\
-|justification=| & |justified| \\
-|font=| & \nofont \\
-|labelfont=| & |\captionheaderfont| \\
-|textfont=| & |\captionbodyfont| \\
-\end{tabular}
-
-\subsubsection*{Von der Klasse angebotene Befehle und deren Seiteneffekte}
-Der Zeichensatz des Bezeichners kann hier mit |\caption|\-|header|\-|font|,
-derjenige des Textes mit |\caption|\-|body|\-|font| gesetzt werden.
-Beides funktioniert auch weiterhin, zumindest solange kein anderer
-Zeichensatz mit den \package{caption}"=Paketoptionen
-|label|\-|font=| und |text|\-|font=| gesetzt wird.
-
-\subsection{Babel-Option frenchb}
-\label{frenchb}
-
-Wird die Option \package{frenchb} des \package{babel}"=Paketes mit einer
-der drei Standardklassen (oder einer davon abgeleiteten) verwendet,
-dann wird |label|\-|sep=| auf |\Caption|\-|Sep|\-|a|\-|ra|\-|tor| vorbelegt
-und damit die Vorbelegung der Dokumentenklasse ĵberschrieben.
-In diesem Falle wird eine Umdefinition von |\Caption|\-|Sep|\-|a|\-|ra|\-|tor|
-auch weiterhin funktionieren, zumindest solange kein anderer Trenner mit
-der Option |label|\-|sep=| gesetzt wird.
-
-\INFO*
-Bitte laden Sie \thispackage\ \emph{nach} dem \package{babel}"=Paket.
-
-\subsection{Pakete frenchle und frenchpro}
-\label{frenchpro}
-
-Wird das \package{frenchle}- oder \package{frenchpro}"=Paket verwendet,
-dann wird |label|\-|sep=| auf |\caption|\-|sep|\-|a|\-|ra|\-|tor| plus
-\cs{space} vorbelegt und damit die Vorbelegung der Dokumentenklasse
-ĵberschrieben.
-Eine Umdefinition von |\caption|\-|sep|\-|a|\-|ra|\-|tor| wird auch weiterhin
-funktionieren, zumindest solange kein anderer Trenner mit der Option
-|label|\-|sep=| gesetzt wird.
-
-Weiterhin wird |text|\-|font=| auf |text|\-|font=|\x|it| vorbelegt,
-um das Standardverhalten des \package{frenchle}- bzw.~\package{frenchpro}"=Paketes
-bzgl.~des Beschriftungstext"=Zeichensatzes zu emulieren.
-Bitte beachten Sie, daŸ der Befehl |\caption|\-|font| auch intern vom
-\package{caption}"=Paket verwendet wird, und zwar auf eine andere Art und Weise
-als das \package{frenchle}- bzw.~\package{frenchpro}"=Paket ihn verwendet;
-daher sollten Sie ihn nicht (mehr) verwenden.
-
-Der Befehl |\un|\-|numbered|\-|captions|\marg{figure \emph{oder} table} wird
-weiterhin seinen Dienst tun, aber nur solange Sie kein anderes Bezeichnerformat
-mit |label|\-|format=| ausw¤hlen.
-
-\INFO*
-Bitte laden Sie \thispackage\ \emph{nach} dem \package{frenchle}
-oder \package{frenchpro}"=Paket.
-
-% --------------------------------------------------------------------------- %
-
-\clearpage
-\section{Unterstĵtzung anderer Pakete}
-\label{packages}
-\label{compatibility}
-
-%\NEWdescription{v3.1}
-\Thispackage\ ist an folgende Pakete, die ebenfalls Abbildungs- oder
-Tabellenbeschriftungen anbieten, angepasst:
-\begin{quote}
- \package{float}, \package{floatflt}, \package{fltpage},
- \package{hyperref}, \package{hypcap}, \package{listings},
- \package{longtable}, \package{picinpar}, \package{picins},
- \package{rotating}, \package{setspace}, \package{sidecap},
- \package{subfigure}, \package{supertabular}, \package{threeparttable},
- \package{wrapfig} und \package{xtab}
-\end{quote}
-
-Weiterhin arbeitet das \package{floatrow}"=Paket\cite{floatrow},
-das \package{subcaption}"=Paket (welches Bestandteil der
-\package{caption}"=Paketfamilie ist), sowie das \package{subfig}"=Paket\cite{subfig}
-aktiv mit diesem Paket zusammen und verwenden dessen |\caption|\-|setup|"=Schnittstelle.
-
-\bigskip
-
-\begingroup\setlength\leftmargini{0.3em}% default = 2.5em
-\INFO
-Definiert ein anderes Paket (oder eine Dokumentenklasse), welches \thispackage{}
-nicht kennt, ebenfalls den Befehl |\caption| um, so wird diese Umdefinition
-bevorzugt, um maximale Kompatibilit¤t zu gew¤hrleisten und Konflikte
-zu vermeiden.
-Wird solch eine potentielle Inkompatiblit¤t erkannt, wird diese Warnung
-ausgegeben:~\footnote{%
- Diese Warnung kann durch Angabe der Option \texttt{compatibility=true}
- beim Laden des \package{caption}"=Paketes abgeschaltet werden.}
-\begin{quote}\footnotesize
- |Package caption Warning: \caption will not be redefined since it's already|\\
- |(caption) redefined by a document class or package which is|\\
- |(caption) unknown to the caption package.|\\
- |See the caption package documentation for explanation.|
-\end{quote}
-\endgroup
-
-Als Folge stehen diese Ausstattungsmerkmale des \package{caption}"=Paketes nicht
-zur Verfĵgung:
-\begin{itemize}
- \item die Optionen |labelformat=|, |position=auto|, |list=| und |listformat=|
- \item |\caption*| (um eine Beschrifung ohne Bezeichner zu setzen)
- \item |\caption[]{|\ldots|}| (um den Eintrag ins Verzeichnis zu unterbinden)
- \item |\caption{}| (um eine leere Beschriftung ohne Trenner zu setzen)
- \item |\ContinuedFloat|
- \item korrekt ausgerichtete Beschriftungen in Umgebungen wie \texttt{wide} und
- \texttt{addmargin}, die die Seitenr¤nder ver¤ndern
- \item das sog.~\textsf{hypcap}"=Feature \See{\Ref{hyperref}\,}
- \item Setzen von Unter-Beschriftungen \See{\package{subcaption}"=Paketdokumentation}
-\end{itemize}
-
-\DescribeMacro{compatibility=}
-Dieser Kompatibilit¤ts"=Modus kann durch die Angabe der Option
-\begin{quote}
- |compatibility=false|
-\end{quote}
-beim Laden des \package{caption}"=Paketes ausgeschaltet werden.
-Aber bitte beachten Sie, daŸ die Anwendung dieser Option weder empfohlen noch
-unterstĵtzt wird, da hierdurch unerwĵnschte Nebeneffekte oder Fehler auftreten
-kĥnnen. (Aus diesem Grunde wird hier ebenfalls eine Warnung ausgegeben.)
-
-\newcommand\packagedescription[1]{%
- \ifvmode\else\par\fi
- \nopagebreak
- \parbox[b]{\linewidth}{\footnotesize\leftskip=10pt\rightskip=10pt\relax#1}\par
- \nopagebreak\smallskip\nopagebreak}
-
-\PageBreak
-\subsection{algorithms}
-\label{algorithms}
-\packagedescription{%
-Die \package{algorithms}"=Paketfamilie\cite{algorithms} bietet zwei Umgebungen
-an: Die Umgebung \texttt{algorithmic} bietet eine Mĥglichkeit, Algorithmen
-zu beschreiben, und die Umgebung \texttt{algorithm} bietet eine passende
-Gleitumgebung an.}
-
-Da die \texttt{algorithm}"=Umgebung intern mittels |\new|\-|float| realisiert
-ist, welches vom \package{float}"=Paket\cite{float} bereitgestellt wird,
-schauen Sie bitte in \Ref{float} nach.
-
-\iffalse
-\pagebreak[3]
-\subsection{algorithm2e}
-\label{algorithm2e}
-\packagedescription{%
-The \package{algorithm2e} package\cite{algorithm2e} offers an environment for
-writing algorithms in LaTeX2e.}
-
-Since the \package{algorithm2e} package does not use some kind of standard
-interface for defining its floating environment (e.g.~|\newfloat| of the
-\package{float} package) and typesetting its caption,
-the \package{algorithm2e} package is \emph{not} supported by \thispackage.
-
-So if you want to customize the captions using \thispackage,
-you have to build a new environment which uses a supported interface regarding
-floats (e.g. using the \package{float} or \package{floatrow} package),
-and combine this environment with the internal \package{algorithm2e} code.
-
-As first step you could define a non-floating environment \texttt{algorithmic},
-for example:
-\begin{quote}
- |\usepackage{algorithm2e}|\\
- |% save the "algorithm" environment from the algorithm2e package|\\
- |\let\ORIGalgorithm\algorithm|\\
- |\let\ORIGendalgorithm\endalgorithm|\\
- |% define the algorithmic environment|\\ % , based on the saved environment
- |\newenvironment{algorithmic}%|\\
- | {\renewenvironment{algocf}[1][h]{}{}% pass over floating stuff|\\
- | \ORIGalgorithm}%|\\
- | {\ORIGendalgorithm}|\\
- \ldots
-\end{quote}
-Having defined this non-floating environment, you could define your own new
-floating environment with |\newfloat| of the \package{float} package
-(or |\DeclareNewFloatType| of the \package{floatrow} package),
-and use the combination of this floating environment and \texttt{algorithmic}
-in its body, just like you would do when you use the
-\package{algorithm}/\package{algorithmic} package tandem.
-
-You could even use the \package{algorithm} package for this purpose, for example:
-\begin{quote}
- \ldots\\
- |% load the algorithm package to re-define the|\\
- |% floating environment "algorithm" and \listofalgorithms|\\
- |\let\listofalgorithms\undefined|\\
- |\usepackage{algorithm}|\\
- \ldots\\
- |% Example usage:|\\
- |\begin{algorithm}|\\
- |\caption{An algorithm}|\\
- |\begin{algorithmic}|\\
- | \SetVline|\\
- | \eIf{cond1}{|\\
- | a line\;|\\
- | }{|\\
- | another line\;|\\
- | }|\\
- |\end{algorithmic}|
-\end{quote}
-Now you are finally able to customize the float and caption layout like every
-other floating environment defined with the \package{float} package\cite{float},
-please see \Ref{float}.
-
-\begin{Annotation}
-An alternative would be using the \package{algorithmicx} package.
-\end{Annotation}
-\fi
-
-\pagebreak[3]
-\subsection{float}
-\label{float}
-\packagedescription{%
-Das \package{float}"=Paket\cite{float} bietet den Befehl \cs{restylefloat} an,
-der bestehende Gleitumgebungen zu einem neuen Design verhilft, ferner
-\cs{newfloat} um neue Gleitumgebungen zu definieren.
-Weiterhin wird die Platzierungs-Option "`\texttt{H}"' angeboten, die bei
-Gleitumgebungen das Gleiten unterbindet.}
-
-Bei Gleitumgebungen, die mit \cs{newfloat} oder \cs{restylefloat} definiert
-wurden, hat die Option |po|\-|si|\-|tion=| keinen Effekt auf die Beschriftung,
-da die Platzierung und die Abst¤nde von dem gew¤hlten Gleitumgebungs"=Stil
-festgelegt werden.
-
-Ein Beschriftungs"=Stil und Beschriftungs"=Optionen mit demselben Namen
-wie der Gleitumgebungs"=Stil werden zus¤tzlich zu den normalen Optionen
-ausgew¤hlt.
-Mit diesem Mechanismus emuliert \thispackage\ das Aussehen der Beschriftungen
-vom Stil "`|ruled|"': Es definiert den Beschriftungs"=Stil
-\begin{quote}
- |\DeclareCaptionStyle{ruled}%|\\
- | {labelfont=bf,labelsep=space,strut=off}|\mbox{\quad.}
-\end{quote}
-Um dies zu ¤ndern, mĵssen Sie entweder einen eigenen Stil namens "`|ruled|"'
-definieren, oder aber mit |\caption|\-|setup[ruled]|\marg{Optionen} zus¤tzliche
-Optionen angeben.%,
-%z.B.~|\caption|\-|setup[ruled]{labelsep=|\x|colon}|.
-
-Dieser Mechanismus wird ebenso benutzt, um den Abstand zwischen einer
-Gleitumgebung vom Stil "`|boxed|"' und seiner Beschriftung individuell
-festzulegen:
-\begin{quote}
- |\captionsetup[boxed]{skip=2pt}|
-\end{quote}
-Um dies zu ¤ndern, geben Sie einfach mit
-|\caption|\-|setup[boxed]{skip=|\x\meta{Wert}|}|
-einen anderen Wert an.
-Oder wenn Sie stattdessen die globale Einstellung der Option |skip=| verwenden
-wollen, kĥnnen Sie die individuelle Abstandseinstellung mit
-|\clear|\-|caption|\-|setup[skip]{boxed}| entfernen.
-
-\begin{Note}
-Es kann immer nur \emph{eine} Beschriftung innerhalb der Gleitumgebungen
-gesetzt werden, die mit |\new|\-|float| oder |\re|\-|style|\-|float|
-definiert werden; auŸerdem verhalten sich diese Gleitumgebungen auch in
-anderen Belangen nicht exakt wie die Umgebungen |figure| und |table|.
-Als Konsequenz arbeiten viele Pakete nicht sehr gut mit diesen zusammen.
-Weiterhin hat das \package{float}"=Paket einige Fallstricke und Schw¤chen,
-weswegen ich als Alternative das \package{newfloat}"=Paket
-anbiete, um neue Gleitumgebungen zu definieren, die sich wie |figure|
-und |table| verhalten sollen.
-Und fĵr die Definition von m¤chtigeren Gleitumgebungen bzw.~der
-stilistischen Umgestaltung von vorhandenen Gleitumgebungen empfehle ich als
-Alternative den Befehl |\Declare|\-|New|\-|Float|\-|Type| des
-moderneren \package{floatrow}"=Paketes\cite{floatrow}.
-\end{Note}
-
-\iffalse
-Please also note that you \emph{don't} need a |\restyle|\-|float| for using
-the ``|H|'' float placement specifier. Some docs say so, but they are
-wrong.
-And |\restyle|\-|float{table}| is a very good method to shoot yourself
-in the foot, since many packages using |table| internally are not working
-correctly afterwards.
-\fi
-
-\pagebreak[3]
-\subsection{floatflt}
-\label{floatflt}
-\packagedescription{%
-Das \package{floatflt}"=Paket\cite{floatflt} bietet Umgebungen zum Setzen von
-Abbildungen und Tabellen an, die nicht die Gesamtbreite der Seite einnehmen,
-sondern stattdessen vom Text umflossen werden.}
-
-\NEWfeature{v3.1}
-Spezielle Optionen fĵr die Umgebungen |float|\-|ing|\-|figure| und
-|float|\-|ing|\-|table| kĥnnen mit
-\begin{quote}
- |\captionsetup[floatingfigure]|\marg{Optionen}\quad\emph{und}\\
- |\captionsetup[floatingtable]|\marg{Optionen}
-\end{quote}
-festgelegt werden.
-Diese Einstellungen werden dann zus¤tzlich zu denjenigen fĵr |figure|
-bzw.~|table| berĵcksichtigt.
-
-\begin{Note}
-Die Einstellungen |margin=| bzw.~|width=| werden nicht auf diese Abbildungen
-bzw.~Tabellen angewandt, solange sie nicht explizit mit
-|\caption|\-|setup[floating|\-|figure]{|\ldots|}|
-bzw.~|\caption|\-|setup[floating|\-|table]{|\ldots|}| gesetzt werden.
-\end{Note}
-
-\pagebreak[3]
-\subsection{fltpage}
-\label{fltpage}
-\packagedescription{%
-Das \package{fltpage}"=Paket\cite{fltpage} bietet die Ausgliederung der
-Beschriftung fĵr Abbildungen und Tabellen, die die gesamte Seitenhĥhe
-einnehmen, an. Hierbei wird die Beschriftung ans Ende der vorherigen
-oder n¤chsten Seite verschoben.}
-
-\iffalse
-\NEWfeature{v3.1}
-Zwei Optionen regeln die Verweise auf die Umgebungen |FPfigure| und |FPtable|:
-\begin{description}
-\item{\texttt{FPlist=caption} oder \texttt{FPlist=figure}}\\[\smallskipamount]
-Auf "`|caption|"' gesetzt, wird der Verzeichniseintrag auf die Beschriftung
-der Abbildung bzw.~Tabelle verweisen, auf "`|figure|"' gesetzt auf den Inhalt
-der Abbildung.
-(Die Vorbelegung ist |FP|\-|list=|\x|caption|.)
-\item{\texttt{FPref=caption} oder \texttt{FPref=figure}}\\[\smallskipamount]
-Auf "`|caption|"' gesetzt, werden die mit \cs{ref}, \cs{pageref}, \cs{autoref}
-oder \cs{nameref} plazierten Referenzen auf die Beschriftung der Abbildung
-bzw.~Tabelle verweisen, auf "`|figure|"' gesetzt auf den Inhalt der Abbildung.
-(Die Vorbelegung ist |FP|\-|ref=|\x|figure|.)
-\end{description}
-\fi
-
-Spezielle Einstellungen fĵr die Umgebungen |FPfigure| und |FPtable| kĥnnen mit
-\begin{quote}
- |\captionsetup[FPfigure]|\marg{Optionen}\quad\emph{und}\\
- |\captionsetup[FPtable]|\marg{Optionen}
-\end{quote}
-get¤tigt werden.
-Diese Einstellungen werden dann zus¤tzlich zu denjenigen fĵr |figure|
-bzw.~|table| berĵcksichtigt.
-
-\pagebreak[3]
-\subsection{hyperref}
-\label{hyperref}
-\packagedescription{%
-Das \package{hyperref}"=Paket\cite{hyperref} behandelt \LaTeX"=Querverweise
-derart, daŸ sie zus¤tzlich Hyperlinks im Dokument erzeugen.}
-
-\NEWfeature{v3.1}
-Zwei Optionen regeln das Setzen von Hyperlinks:~\footnote{Diese Optionen sind
-nach dem \package{hypcap}"=Paket benannt, welches sie ersetzen.}
-\begin{description}
-\item{\texttt{hypcap=true} oder \texttt{hypcap=false}}\\[\smallskipamount]
-Auf |true| gesetzt, werden alle Hyperlink"=Anker -- wohin Eintr¤ge im
-Abbildungs- und Tabellenverzeichnis, sowie |\ref| und |\auto|\-|ref|
-verweisen -- an den Anfang der (gleitenden) Umgebungen wie Abbildung
-oder Tabelle plaziert.\par
-Auf |false| gesetzt zeigen hingegen alle Hyperlink"=Anker auf die
-Beschriftung.\par
-(Die Voreinstellung ist |hypcap=true|.)
-\item{\texttt{hypcapspace=}\meta{Abstand}}\\[\smallskipamount]
-Da es nicht sehr ¤sthetisch wirkt, wenn der Hyperlink exakt auf den Beginn der
-Abbildung bzw.~Tabelle springt, kann ein vertikaler Abstand zwischen dem
-Hyperlink"=Anker und der (gleitenden) Umgebung gesetzt werden, z.B.~entfernt
-|hyp|\-|cap|\-|space=|\x|0pt| diesen Abstand.\par
-(Die Voreinstellung ist |hyp|\-|cap|\-|space=|\x|0.5\base|\-|line|\-|skip|.)
-\end{description}
-
-Beide Optionen haben keine Auswirkung in den Umgebungen |lst|\-|listing|
-(vom \package{listings}"=Paket bereitgestellt), |long|\-|table| (vom
-\package{longtable}"=Paket bereitgestellt, |super|\-|tabular| (vom
-\package{supertabular}"=Paket bereitgestellt), und |x|\-|tabular| (vom
-\package{xtab}"=Paket bereitgestellt);
-innerhalb dieser Umgebungen werden Hyperlink"=Anker immer so gesetzt, als sei
-|hyp|\-|cap=|\x|true| und |hyp|\-|cap|\-|space=|\x|0pt| eingestellt.
-
-\pagebreak[3]Bitte beachten Sie:\nopagebreak
-\begin{description}
-\item{\cs{captionof}\marg{Typ}\csmarg{\purerm\ldots}
- vs.~\cs{captionsetup}\csmarg{type=\textrm{\meta{Typ}}}$+$\cs{caption}\csmarg{\purerm\ldots}}%
-\\[\smallskipamount]
-Ohne geladenes \package{hyperref}"=Paket bekommen Sie hier identische Resultate.
-Aber mit \package{hyperref} geladen und mit der Einstellung |hyp|\-|cap=|\x|true|
-versehen wird der Hyperlink"=Anker unterschiedlich gesetzt.
-So plaziert zum Beispiel
-\begin{quote}
-|\begin{minipage}{\linewidth}|\\
-| |\ldots\\
-| \captionof{figure}{Eine Abbildung}|\\
-|\end{minipage}|
-\end{quote}
-den Anker bei der Beschriftung.
-(Und wenn |hyp|\-|cap=|\x|true| gesetzt ist, wird deswegen eine Warnung ausgegeben.)
-\begin{quote}
-|\begin{minipage}{\linewidth}|\\
-| \captionsetup{type=figure}|\\
-| |\ldots\\
-| \caption{Eine Abbildung}|\\
-|\end{minipage}|
-\end{quote}
-hingegen plaziert den Anker an den Anfang der |mini|\-|page|,
-da die Anweisung |\caption|\-|setup{type=|\x|figure}| nicht nur den Typ der
-Beschriftung auf "`figure"' festlegt, sondern auch einen Hyperlink"=Anker setzt.
-
-\item{\cs{caption}\csoarg{}\csmarg{\purerm\ldots}
- vs.~\cs{captionsetup}\csmarg{list=false}$+$\cs{caption}\csmarg{\purerm\ldots}}\\[\smallskipamount]
-Wiederum bekommen Sie ohne geladenes \package{hyperref}"=Paket identische Resultate.
-Aber mit \package{hyperref} geladen liegen die Unterschiede in den Feinheiten:
-So wird z.B.~das optionale Argument von |\caption| auch in die |aux|-Datei
-geschrieben und vom |\name|\-|ref| Befehl verwendet.
-Wenn Sie also |\caption| mit leerem Argument angeben, wird ein auf diese
-Abbildung oder Tabelle angewandtes |\name|\-|ref| nicht das erwĵnschte,
-sondern stattdessen ein leeres Resultat zur Folge haben.
-Daher ist es besser, |\caption|\-|setup{list=|\x|false}| zu verwenden,
-wenn Sie keinen Eintrag in dem Abbildungs- oder Tabellenverzeichnis wĵnschen.
-\end{description}
-
-\pagebreak[3]
-\subsection{hypcap}
-\label{hypcap}
-\packagedescription{%
-Das \package{hyp\-cap}"=Paket\cite{hypcap} bietet eine Lĥsung zu dem Problem
-an, daŸ Hyperlinks auf Gleitumgebungen nicht auf die Abbildung bzw.~Tabelle
-verweisen, sondern stattdessen auf die Beschriftung.
-Die Version $3.1$ des \package{caption}"=Paketes lĥst dieses Problem bereits
-auf seine eigene Art und Weise, so daŸ das \package{hypcap}"=Paket in der
-Regel nicht mehr zus¤tzlich benĥtigt wird.}
-
-Wird das \package{hypcap}"=Paket zus¤tzlich zum \package{hyperref}"=Paket
-geladen, so ĵbernimmt es die Kontrolle ĵber die Platzierung der
-Hyperlink"=Anker, und die Optionen |hyp|\-|cap=| und |hyp|\-|cap|\-|space=|
-verlieren ihre Wirkung.
-
-AuŸerdem ist zu beachten, daŸ dann |\caption|\-|setup{type=|\x\meta{Typ}|}|
-keinen Hyperlink"=Anker mehr setzt; dies muŸ dann ggf.~mit dem Befehl
-|\cap|\-|start|, welcher vom \package{hypcap}"=Paket angeboten wird,
-geschehen.
-
-Weiterhin hat das Laden des \package{hypcap}"=Paketes den Nebeneffekt, daŸ
-die Hyperlink"=Anker innerhalb der Umgebungen
-|floating|\-|figure| (vom \package{float\-flt}"=Paket bereitgestellt),
-|FP|\-|figure| \& |FPtable| (vom \package{flt\-page}"=Paket bereitgestellt),
-|fig|\-|window| (vom \package{pic\-in\-par}"=Paket bereitgestellt),
-|par|\-|pic| (vom \package{pic\-ins}"=Paket bereitgestellt),
-|SC|\-|figure| (vom \package{side\-cap}"=Paket bereitgestellt),
-|three|\-|part|\-|table| (vom \package{three\-part\-table}"=Paket
-bereitgestellt) und |wrap|\-|figure| (vom \package{wrap\-fig}"=Paket
-bereitgestellt) nicht mehr optimal platziert werden.
-
-\pagebreak[3]
-\subsection{listings}
-\label{listings}
-\packagedescription{%
-Das \package{listings}"=Paket\cite{listings} bietet Mĥglichkeiten,
-Programmcode zu setzen.}
-
-Spezielle Einstellungen fĵr die Umgebung |lst|\-|listing| kĥnnen mit
-\begin{quote}
- |\captionsetup[lstlisting]|\marg{Optionen}
-\end{quote}
-get¤tigt werden.
-
-Bitte beachten Sie, daŸ das \package{listings}"=Paket seine eigenen
-Optionen fĵr die Kontrolle der Position und Abst¤nde der Beschriftungen
-mitbringt:
-|caption|\-|pos=|, |above|\-|caption|\-|skip=| und |below|\-|caption|\-|skip=|.
-\See{Dokumentation des \package{listings}"=Paketes.}
-Diese Optionen ĵberschreiben diejenigen des \package{caption}"=Paketes,
-kĥnnen aber wiederum mit |\caption|\-|setup[lst|\-|listing]{|\ldots|}|
-ĵberschrieben werden, z.B.~mit
-\begin{quote}|\caption|\-|setup[lst|\-|listing]{skip=|\x|10pt}|\quad.\end{quote}
-
-\pagebreak[3]
-\subsection{longtable}
-\label{longtable}
-\packagedescription{%
-Das \package{longtable}"=Paket\cite{longtable} bietet eine Umgebung an,
-die sich ¤hnlich wie die Umgebung \texttt{tabular} verh¤lt, aber Seitenumbrĵche
-innerhalb der Tabelle erlaubt.}
-
-Spezielle Einstellungen fĵr die Umgebung |long|\-|table| kĥnnen mit
-\begin{quote}
- |\captionsetup[longtable]|\marg{Optionen}
-\end{quote}
-get¤tigt werden.
-Diese Einstellungen werden dann zus¤tzlich zu denjenigen fĵr |table|
-berĵcksichtigt.
-
-Die Optionen |margin=| und |width=| ĵberschreiben gewĥhnlich die L¤nge
-|\LT|\-|cap|\-|width|, so daŸ ein einheitliches Aussehen der
-Tabellenĵberschriften gew¤hrleistet wird.
-Wird aber |\LT|\-|cap|\-|width| auf einen anderen Wert als den Standardwert
-|4in| gesetzt, wird \thispackage\ dies berĵcksichtigen.
-(Aber |\LT|\-|cap|\-|width| wird wiederum von
-|\caption|\-|setup[long|\-|table]{width=|\x\meta{Breite}|}| ĵberschrieben,
-auch wenn |\LT|\-|cap|\-|width| auf einen anderen Wert als |4in| gesetzt ist.)
-
-\begin{Note}
-Die Befehle |\caption|\-|of| und |\Continued|\-|Float| funktionieren
-\emph{nicht} innerhalb der Umgebung |long|\-|table|.
-Weiterhin erhĥhen weder |\caption| noch |\caption|\-|list|\-|entry| den
-Tabellenz¤hler, er wird stattdessen von der Umgebung |long|\-|table| selbst
-erhĥht.
-\NEWfeature{v3.1}
-Benĥtigen Sie eine Umgebung |long|\-|table|, die den Tabellenz¤hler
-nicht erhĥht, so verwenden Sie bitte die Umgebung |long|\-|table*|
-(die das \package{ltcaption}"=Paket bereitstellt und als Bestandteil der
-\package{caption}"=Paketfamilie automatisch geladen wird).
-\end{Note}
-
-\pagebreak[3]
-\subsection{picinpar}
-\label{picinpar}
-\packagedescription{%
-„hnlich wie das \package{floatflt}"=Paket stellt auch das
-\package{picinpar}"=Paket Umgebungen zum Setzen von Abbildungen und Tabellen
-zur Verfĵgung, die nicht die gesamte Seitenbreite ausfĵllen und vom Text
-umflossen werden.
-Fĵr eine detailierte Beschreibung der Unterschiede zwischen diesen Paketen
-schauen Sie bitte in den "`LaTeX Begleiter"'\cite{TLC2}.}
-
-\NEWfeature{v3.1}
-Spezielle Einstellungen fĵr die Umgebungen |fig|\-|window| und |tab|\-|window|
-kĥnnen mit
-\begin{quote}
- |\captionsetup[figwindow]|\marg{Optionen}\quad\emph{und}\\
- |\captionsetup[tabwindow]|\marg{Optionen}
-\end{quote}
-get¤tigt werden.
-Diese Einstellungen werden dann zus¤tzlich zu denjenigen fĵr |figure|
-bzw.~|table| berĵcksichtigt.
-
-\begin{Note}
-Die Einstellungen |margin=| bzw.~|width=| werden nicht auf diese Abbildungen
-bzw.~Tabellen angewandt, solange sie nicht explizit mit
-|\caption|\-|setup[fig|\-|window]{|\ldots|}|
-bzw.~|\caption|\-|setup[tab|\-|window]{|\ldots|}| gesetzt werden.
-\end{Note}
-
-\pagebreak[3]
-\subsection{picins}
-\label{picins}
-\packagedescription{%
-„hnlich wie das \package{floatflt}- und \package{picinpar}"=Paket stellt auch
-das \package{picins}"=Paket Umgebungen zum Setzen von Abbildungen und
-Tabellen zur Verfĵgung, die nicht die gesamte Seitenbreite ausfĵllen und vom
-Text umflossen werden.
-Fĵr eine detailierte Beschreibung der Unterschiede zwischen diesen Paketen
-schauen Sie bitte in den "`LaTeX Begleiter"'\cite{TLC2}.}
-
-\NEWfeature{v3.1}
-Spezielle Einstellungen fĵr die Umgebung |par|\-|pic| kĥnnen mit
-\begin{quote}
- |\captionsetup[parpic]|\marg{Optionen}
-\end{quote}
-get¤tigt werden.
-Diese Einstellungen werden dann zus¤tzlich zu denjenigen fĵr |figure|
-bzw.~|table| berĵcksichtigt.
-
-Weiterhin erzeugt |\pic|\-|caption[]{|\ldots|}| keinen Verzeichniseintrag,
-und |\pic|\-|caption*{|\ldots|}| ergibt eine Beschriftung ohne Bezeichner und
-Nummerierung.
-
-\begin{Note}
-Die Einstellungen |margin=| bzw.~|width=| werden nicht auf diese Abbildungen
-bzw.~Tabellen angewandt, solange sie nicht explizit mit
-|\caption|\-|setup[par|\-|pic]{|\ldots|}| gesetzt werden.
-\end{Note}
-
-Wird ein |\pic|\-|caption| gewĵnscht, das keine Abbildungs-, sondern eine
-Tabellenbeschrifung erzeugt, so definieren Sie bitte \emph{nicht}
-|\@cap|\-|type| um, wie es von der Dokumentation zum \package{picins}"=Paket
-vorgeschlagen wird. Stattdessen benutzen Sie bitte den Befehl
-|\pic|\-|caption|\-|type|\marg{Typ}, der Ihnen vom \package{caption}"=Paket
-zu diesem Zweck bereitgestellt wird. Zum Beispiel:
-\begin{quote}
- |\piccaptiontype{table}|\\
- |\piccaption{Eine Beispieltabelle}|\\
- |\parpic(50mm,10mm)[s]{|\ldots|}|
-\end{quote}
-
-\pagebreak[3]
-\subsection{rotating}
-\label{rotating}
-\packagedescription{%
-Das \package{rotating}"=Paket\cite{rotating} bietet die Gleitumgebungen
-\texttt{side\-ways\-figure} und \texttt{side\-ways\-table},
-die sich wie \texttt{figure} und \texttt{table} verhalten, den Inhalt aber
-um 90 bzw. 270 Grad drehen.
-Weiterhin wird ein Befehl \cs{rot\-caption} bereitgestellt, der lediglich
-die Beschriftung dreht.}
-
-\iffalse % No, we don't do that
-If you want to setup special options for the |side|\-|ways|\-|figure| \&
-|side|\-|ways|\-|table| environments you can use
-\begin{quote}
- |\captionsetup[sidewaysfigure]|\marg{options}\\
- |\captionsetup[sidewaystable]|\marg{options}\quad.
-\end{quote}
-These options will be executed additionally to the regular ones for
-|figure| or |table|.
-\fi
-
-Der Befehl |\rot|\-|caption| wird vom \package{caption}"=Paket derart
-erweitert, daŸ |\rot|\-|caption*| und |\rot|\-|caption|\-|of| analog zu
-|\caption*| und |\caption|\-|of| verwendet werden kĥnnen.
-
-\pagebreak[3]
-\subsection{setspace}
-\label{setspace}
-\packagedescription{%
-Das \package{setspace}"=Paket\cite{setspace} bietet Optionen und Befehle,
-um den Zeilenabstand festzulegen, so fĵhrt
-z.B.\ \cs{usepackage}\x\csoarg{one\-half\-spacing}\x\csmarg{set\-space}
-zu einem Dokument, welches einanhalbzeilig gesetzt wird.}
-
-Wird das \package{setspace}"=Paket zusammen mit dem \package{caption}"=Paket
-verwendet, sind alle Abbildungs- und Tabellenbeschriftungen auf "`einzeilig"'
-voreingestellt. Dies kann durch |font=|\x|one|\-|half|\-|spacing| (welches
-auf "`einanhalbzeilig"' umstellt), |font=|\x|double|\-|spacing| (welches
-auf "`zweizeilig"' umstellt) oder |font={stretch=|\x\meta{Wert}|}| ge¤ndert
-werden.
-\See{auch \Ref{fonts}}
-
-\pagebreak[3]
-\subsection{sidecap}
-\label{sidecap}
-\packagedescription{%
-Das \package{sidecap}"=Paket\cite{sidecap} bietet die Gleitumgebungen
-\texttt{SC\-figure} und \texttt{SC\-table}, die anders als \texttt{figure}
-und \texttt{table} die Beschriftung \emph{neben} den Inhalt setzen.}
-
-Spezielle Einstellungen fĵr die Umgebungen |SC|\-|figure| und |SC|\-|table|
-kĥnnen mit
-\begin{quote}
- |\captionsetup[SCfigure]|\marg{Optionen}\quad\emph{und}\\
- |\captionsetup[SCtable]|\marg{Optionen}
-\end{quote}
-get¤tigt werden.
-Diese Einstellungen werden dann zus¤tzlich zu denjenigen fĵr |figure|
-bzw.~|table| berĵcksichtigt.
-
-\pagebreak[3]
-\begin{Note}
-Das \package{sidecap}"=Paket bietet eigene Optionen fĵr die Ausrichtung der
-Beschriftung. Werden diese verwendet, so ĵberschreiben sie die Einstellungen,
-die mit der Option |jus|\-|ti|\-|fi|\-|ca|\-|tion=| get¤tigt worden sind.
-\end{Note}
-
-\begin{Note}
-Die Einstellungen |margin=| bzw.~|width=| werden nicht auf diese Abbildungen
-bzw.~Tabellen angewandt, solange sie nicht explizit mit
-|\caption|\-|setup[SC|\-|figure]{|\ldots|}|
-bzw.~|\caption|\-|setup[SC|\-|table]{|\ldots|}| gesetzt werden.
-\end{Note}
-
-\medskip
-
-\begin{Annotation*}
-Anstelle des \package{sidecap}"=Paketes kĥnnen Sie fĵr Beschrifungen neben der
-Abbildung bzw.~Tabelle auch das leistungsf¤higere und vielseitigere
-\package{floatrow}"=Paket\cite{floatrow} benutzen.
-\end{Annotation*}
-
-\pagebreak[3]
-\subsubsection*{Undokumentierte Eigenschaften}
-Das \package{sidecap}"=Paket \version{1.6} hat einige undokumentierte
-Paketoptionen und Befehle, die eine weitere Anpassung der Beschrifungen erlauben:
-
-\pagebreak[3]
-\DescribeMacro{margincaption}
-Die Paketoption
-\begin{quote}
- |margincaption|\qquad{\small(z.B.~|\usepackage[margincaption]{sidecap}|)}
-\end{quote}
-fĵhrt dazu, daŸ alle Beschriftungen in den Umgebungen |SC|\-|figure| und
-|SC|\-|table| in den Rand gesetzt werden.
-
-\pagebreak[3]
-\DescribeMacro{\sidecaptionvpos}
-Der Befehl
-\begin{quote}
- |\sidecaptionvpos|\marg{Typ}\marg{Position}
-\end{quote}
-legt die vertikale Ausrichtung der Beschriftung fest. \meta{Position} kann
-entweder `|t|' (fĵr eine Ausrichtung am oberen Rand), `|b|' (fĵr eine
-Ausrichtung am unteren Rand), oder `|c|' (fĵr eine zentrierte Ausrichtung)
-sein.
-Die Vorbelegung fĵr die Umgebung |table| ist `|t|', fĵr |figure| und alle
-anderen, die mit |\Declare|\-|Floating|\-|Environment| definiert werden, `|b|'.
-
-\pagebreak[3]
-\subsection{subfigure}
-\label{subfigure}
-\packagedescription{%
-Das \package{subfigure}"=Paket\cite{subfigure} bietet Unterstĵtzung fĵr
-Unter"=Abbildungen und -Tabellen.
-Es ist veraltet und wurde vom Autor durch das modernere
-\package{subfig}"=Paket ersetzt.}
-
-Da das \package{subfigure}"=Paket veraltet ist, wird es vom
-\package{caption}"=Paket nur derart unterstĵtzt, daŸ alte Dokumente (welche
-mit dem \package{caption}"=Paket \version{1.x} gesetzt wurden) noch
-ĵbersetzbar sind und das erwartete Ergebnis liefern.
-
-Bitte verwenden Sie daher stattdessen das \package{subfig}- oder das
-\package{subcaption}"=Paket, welches
-\thispackage\ \version{3.x} aktiv unterstĵtzt.
-
-\See{auch Dokumentation des \package{subfig}"=Paketes\cite{subfig}}
-
-\pagebreak[3]
-\subsection{supertabular und xtab}
-\label{supertabular}
-\packagedescription{%
-Die Pakete \package{supertabular}\cite{supertabular} und \package{xtab}\cite{xtab}
-bieten eine Umgebung, die ¤hnlich wie die Umgebung \texttt{long\-table} des
-\package{longtable}"=Paketes\cite{longtable} einen Seitenumbruch inmitten der
-Tabelle erlaubt.
-Fĵr eine detailierte Beschreibung der Unterschiede zwischen diesen Paketen
-schauen Sie bitte in den "`LaTeX Begleiter"'\cite{TLC2}.}
-
-Spezielle Einstellungen fĵr die Umgebung |super|\-|tabular| bzw.~|x|\-|tabular|
-kĥnnen mit
-\begin{quote}
- |\captionsetup[supertabular]|\marg{Optionen}\quad\emph{bzw.}\\
- |\captionsetup[xtabular]|\marg{Optionen}
-\end{quote}
-get¤tigt werden.
-Diese Einstellungen werden dann zus¤tzlich zu denjenigen fĵr |table|
-berĵcksichtigt.
-
-\begin{Note}
-Der Befehl |\Continued|\-|Float| funktioniert \emph{nicht} innerhalb der
-Umgebungen |super|\-|tabular| und |x|\-|tabular|.
-\end{Note}
-
-\pagebreak[3]
-\subsection{threeparttable}
-\label{threeparttable}
-\packagedescription{%
-Das \package{threeparttable}"=Paket\cite{threeparttable} bietet ein Schema
-fĵr Tabellen, welches strukturierte Anmerkungen nach dem Tabelleninhalt
-erlaubt.
-Dieses Schema bietet eine Lĥsungsmĥglichkeit fĵr das alte Problem "`FuŸnoten
-in Tabellen"'.}
-
-\NEWfeature{v3.1}
-Spezielle Einstellungen fĵr die Umgebungen |three|\-|part|\-|table| und
-|measured|\-|figure| kĥnnen mit
-\begin{quote}
- |\captionsetup[threeparttable]|\marg{Optionen}\quad\emph{und}\\
- |\captionsetup[measuredfigure]|\marg{Optionen}
-\end{quote}
-get¤tigt werden.
-Diese Einstellungen werden dann zus¤tzlich zu denjenigen fĵr |figure|
-bzw.~|table| berĵcksichtigt.
-
-\begin{Note}
-Da die Breite der Beschriftung hier die gleiche Breite wie die Abbildung
-bzw.~Tabelle hat, werden die Einstellungen |margin=| bzw.~|width=| hier nicht
-angewandt, solange sie nicht explizit mit
-|\caption|\-|setup[three|\-|part|\-|table]{|\ldots|}| oder
-|\caption|\-|setup[measured|\-|figure]{|\ldots|}| gesetzt werden.
-\end{Note}
-
-\medskip
-
-\begin{Annotation*}
-Das \package{floatrow}"=Paket\cite{floatrow} bietet eine vergleichbare
-Funktionalit¤t an.
-\end{Annotation*}
-
-\pagebreak[3]
-\subsection{wrapfig}
-\label{wrapfig}
-\packagedescription{%
-„hnlich wie das \package{floatflt}-, \package{picinpar}- und
-\package{picins}"=Paket stellt auch das \package{wrapfig}"=Paket Umgebungen
-zum Setzen von Abbildungen und Tabellen zur Verfĵgung, die nicht die gesamte
-Seitenbreite ausfĵllen und vom Text umflossen werden.
-Fĵr eine detailierte Beschreibung der Unterschiede zwischen diesen Paketen
-schauen Sie bitte in den "`LaTeX Begleiter"'\cite{TLC2}.}
-
-\NEWfeature{v3.1}
-Spezielle Einstellungen fĵr die Umgebungen |wrap|\-|figure| und
-|wrap|\-|table| kĥnnen mit
-\begin{quote}
- |\captionsetup[wrapfigure]|\marg{Optionen}\quad\emph{und}\\
- |\captionsetup[wraptable]|\marg{Optionen}
-\end{quote}
-get¤tigt werden.
-Diese Einstellungen werden dann zus¤tzlich zu denjenigen fĵr |figure|
-bzw.~|table| berĵcksichtigt.
-
-\begin{Note}
-Die Einstellungen |margin=| bzw.~|width=| werden nicht auf diese Abbildungen
-bzw.~Tabellen angewandt, solange sie nicht explizit mit
-|\caption|\-|setup[wrap|\-|figure]{|\ldots|}|
-bzw.~|\caption|\-|setup[wrap|\-|table]{|\ldots|}| gesetzt werden.
-\end{Note}
-
-% --------------------------------------------------------------------------- %
-
-\clearpage
-\section{Weiterfĵhrende Dokumente}
-
-Folgende, im Internet verfĵgbare Dokumente mĥchte ich an dieser Stelle
-jedem ans Herz legen:
-
-\begin{itemize}
-\item
- Die \TeX\ FAQ -- "`Frequently Asked Questions"' ĵber \TeX\ und \LaTeX:
- \begin{quote}\url{http://faq.tug.org/}\end{quote}
-
-\iffalse % Vĥllig veraltet, daher leider keine Empfehlung mehr wert
-\item
- Die DANTE-FAQ -- Oft gestellte Fragen \& deren Antworten:
- \begin{quote}\url{http://www.dante.de/faq/de-tex-faq/}\end{quote}
-\fi
-
-\item
- \emph{"`Hilfe fĵr LaTeX-Einsteiger"'} von Christian Faulhammer:
- \begin{quote}\url{http://www.minimalbeispiel.de/}\end{quote}
-
-\item
- \emph{"`Bilder einfĵgen in \LaTeX: Ein How-To"'} von Dominik Bischoff
- beinhaltet die h¤ufigsten Fragen und Antworten, die im Zusammenhang
- mit \LaTeX\ und Abbildungen auftreten:
- \begin{quote}
- \url{http://mirror.ctan.org/info/l2picfaq/german/l2picfaq.pdf}
- \end{quote}
-
-\item
- \emph{"`Gleitobjekte -- die richtige Schmierung"'} von Axel Reichert
- erl"autert den Umgang mit gleitenden Umgebungen und ist hier im Netz
- zu finden:
- \begin{quote}
- \url{http://mirror.ctan.org/info/german/gleitobjekte/}
- \end{quote}
-
-\item
- \textsf{epslatex} von Keith Reckdahl enth"alt viele n"utzliche Tips im
- Zusammenhang mit der Einbindung von Graphiken in \LaTeXe.
- Das Dokument ist in Englisch und unter
- \begin{quote}\url{http://mirror.ctan.org/info/epslatex/}\end{quote}
- zu finden.
-\end{itemize}
-
-% --------------------------------------------------------------------------- %
-
-\pagebreak[3]
-\section{Danksagungen}
-
-Von ganzem Herzen danke ich Katja Melzner,
-Steven D. Cochran, Frank Mittelbach, Olga Lapko,
-David Carlisle, Carsten Heinz, Keith Reckdahl, Markus Kohm,
-Heiko Oberdiek und Herbert VoŸ.
-
-Weiterhin mĥchte ich mich herzlich bei
-Harald Harders,
-Peter Lĥffler,
-Peng Yu,
-Alexander Zimmermann,
-Matthias Pospiech,
-Jĵrgen Wieferink,
-Christoph Bartoschek,
-Uwe Stĥhr,
-Ralf Stubner,
-Geoff Vallis,
-Florian Keiler,
-Jĵrgen Gĥbel,
-Uwe Siart,
-Sang-Heon Shim,
-Henrik Lundell,
-David Byers,
-William Asquith,
-Prof.~Dr.~Dirk Hoffmann,
-Frank Martini,
-Danie Els,
-Philipp Woock,
-Fadi Semmo,
-Matthias Stevens und
-Leo Liu
-fĵr ihre Hilfe beim stetigen Verbessern dieses Paketes bedanken.
-
-% --------------------------------------------------------------------------- %
-
-\clearpage\appendix
-\section{Alphabetische Referenz}
-
-%\newenvironment{Warnings}%
-% {\begin{trivlist}%
-% \def\Message{\pagebreak[3]\leftskip=0pt\relax\item[]\color{blue}}%
-% \def\Description{\nopagebreak\par\nopagebreak\color{black}\leftskip=1.5em\nopagebreak}%
-% }%
-% {\color{black}\end{trivlist}}
-\makeatletter
-\newenvironment{Warnings}{%
- \newif\ifMessage
- \def\Message{%
- \ifMessage\end{minipage}\par\vspace\itemsep\pagebreak[3]\fi
- \begin{minipage}{\linewidth}%
- \setlength\parindent{0pt}%
- \setlength\parskip{\smallskipamount}%
- \setlength\leftskip{0pt}%
- \color{blue}%
- \Messagetrue}%
- \def\Description{%
- \par\color{black}\leftskip=1.5em}%
- \def\Or{\@testopt\@Or{oder}}%
- \def\@Or[##1]{%
- \\{\small\color{black}\hspace{1.5em}\textit{-- ##1 --}}\\}%
-}{%
- \ifMessage\end{minipage}\par\fi
-}
-\makeatother
-
-\subsection{Optionen}
-\newcommand\preambleoption{~%
- \begingroup\def\thefootnote{\fnsymbol{footnote}}%
- \footnotemark[2]%
- \endgroup}
-\newcommand\preambleoptiontext{%
- \begingroup\def\thefootnote{\fnsymbol{footnote}}%
- \footnotetext[2]{Diese Optionen stehen nur in dem Dokumentenvorspann
- (Pr¤ambel) zur Verfĵgung.}%
- \endgroup}
-
-\begin{longtable*}{lll}
-Option & Kurzbeschreibung & Abschnitt \\
-\hline
-\endhead
-|aboveskip| & setzt den Abstand ĵber der Beschriftung & \ref{skips} \\
-|belowskip| & setzt den Abstand unter der Beschriftung & \ref{skips} \\
-|compatibility|\preambleoption & erzwingt (Nicht-)Kompatibilit¤t & \ref{compatibility} \\
-%|config| & & \ref{x} \\
-|figureposition|\preambleoption & gibt einen Hinweis auf die Position & \ref{skips} \\
-|font|(|+|) & w¤hlt den Zeichensatz & \ref{fonts} \\
-|format| & w¤hlt das Format & \ref{formats} \\
-\iffalse
-|FPlist| & Wohin soll der Listeneintrag einer FPfigure zeigen? & \ref{fltpage} \\
-|FPref| & Wohin soll ein |\ref| einer FPfigure zeigen? & \ref{fltpage} \\
-\fi
-|hangindent| & setzt den "`h¤ngenden"' Einzug & \ref{margins} \\
-|hypcap| & w¤hlt das "`hypcap"' Feature aus & \ref{hyperref} \\
-|hypcapspace| & setzt den Abstand ĵber einem Hyperlink & \ref{hyperref} \\
-|indention| & setzt den Einzug & \ref{margins} \\
-|justification| & w¤hlt die Ausrichtung & \ref{justification} \\
-|labelfont|(|+|) & w¤hlt den Zeichensatz des Bezeichners & \ref{fonts} \\
-|labelformat| & w¤hlt das Format des Bezeichners & \ref{formats} \\
-|labelsep| & w¤hlt den Trenner zw. Bezeichner$+$Text & \ref{formats} \\
-|labelseparator| & -- identisch mit |labelsep| -- & \ref{formats} \\
-|list| & schaltet die Listeneintr¤ge an bzw. aus & \ref{lists} \\
-|listformat| & w¤hlt das Listenformat & \ref{lists} \\
-|margin| & setzt den Rand bzw. die R¤nder & \ref{margins} \\
-|margin*| & setzt den Rand, sofern keine Breite gesetzt ist & \ref{margins} \\
-|maxmargin| & setzt den max. zu verwendenen Rand & \ref{margins} \\
-|minmargin| & setzt den min. zu verwendenen Rand & \ref{margins} \\
-|name| & setzt den Namen der aktuellen Umgebung & \ref{names} \\
-|oneside| & w¤hlt den einseitigen Modus & \ref{margins} \\
-|options| & fĵhrt die angegebene Optionsliste aus & \\
-|parindent| & setzt den Absatzeinzug & \ref{margins} \\
-|parskip| & setzt den Absatzabstand & \ref{margins} \\
-|position| & gibt einen Hinweis auf die Position & \ref{skips} \\
-|singlelinecheck| & schaltet die "`Ein-Zeilen-Prĵfung"' ein bzw. aus & \ref{justification} \\
-%|size| & w¤hlt die GrĥŸe des Zeichensatzes & \ref{x} \\
-|skip| & setzt den Abstand zwischen Inhalt \& Beschriftung & \ref{skips} \\
-|strut| & schaltet die Verwendung von |\strut| ein bzw. aus & \ref{formats} \\
-|style| & w¤hlt einen Stil aus & \ref{style} \\
-%|style*| & w¤hlt einen Stil aus & \ref{style} \\
-|subtype| & setzt den Typ der Unterbeschriftungen & \phantom{t}--~\footnotemark \\
-|tableposition|\preambleoption & gibt einen Hinweis auf die Position & \ref{skips} \\
-|textfont|(|+|) & w¤hlt den Zeichensatz des Textes & \ref{fonts} \\
-|textformat| & w¤hlt das Format des Textes & \ref{formats} \\
-|twoside| & w¤hlt den zweiseitigen Modus & \ref{margins} \\
-|type| & setzt den Typ \& setzt ggf.~einen Hyperlink-Anker & \ref{types} \\
-|type*| & setzt (nur) den Typ & \ref{types} \\
-|width| & setzt eine feste Breite & \ref{margins} \\
-\end{longtable*}
-\preambleoptiontext
-\footnotetext{Die Option \texttt{subtype} ist in der Dokumentation
- des \package{subcaption}"=Paketes beschrieben.}
-
-\nopagebreak\parbox[t]{\linewidth}{% prevent from page break
-\begin{Note*}
- Veraltete Optionen sind hier nicht gelistet; diese sind in
- \Ref{caption1} und
- \Ref{caption2} zu finden.
-\end{Note*}}
-
-\pagebreak[3]
-\subsection{Befehle}
-
-\begin{longtable*}{lll}
-Befehl & & Abschnitt \\
-\hline
-\endhead
-|\abovecaptionskip| & & \ref{skips} \\
-%|\AtBeginCaption| & & \ref{hooks} \\
-%|\AtEndCaption| & & \ref{hooks} \\
-|\belowcaptionskip| & & \ref{skips} \\
-|\caption| & & \ref{caption} \\
-|\caption*| & & \ref{caption} \\
-|\captionlistentry| & & \ref{captionlistentry} \\
-|\captionof| & & \ref{caption} \\
-|\captionof*| & & \ref{caption} \\
-|\captionsetup| & & \ref{captionsetup} \\
-|\captionsetup*| & & \ref{captionsetup} \\
-|\centerfirst| & & \ref{justification} \\
-|\centerlast| & & \ref{justification} \\
-|\clearcaptionsetup| & & \ref{captionsetup} \\
-|\clearcaptionsetup*| & & \ref{captionsetup} \\
-|\ContinuedFloat| & & \ref{ContinuedFloat} \\
-|\DeclareCaptionFont| & & \ref{declare} \\
-|\DeclareCaptionFormat| & & \ref{declare} \\
-|\DeclareCaptionFormat*| & & \ref{declare} \\
-|\DeclareCaptionJustification| & & \ref{declare} \\
-|\DeclareCaptionLabelFormat| & & \ref{declare} \\
-|\DeclareCaptionLabelSeparator| & & \ref{declare} \\
-|\DeclareCaptionLabelSeparator*| & & \ref{declare} \\
-|\DeclareCaptionListFormat| & & \ref{declare} \\
-|\DeclareCaptionOption| & & \ref{declare} \\
-|\DeclareCaptionStyle| & & \ref{declare} \\
-|\DeclareCaptionSubType| & & --~\footnotemark \\
-|\DeclareCaptionTextFormat| & & \ref{declare} \\
-|\showcaptionsetup| & & \ref{captionsetup} \\
-\end{longtable*}
-\footnotetext{\cs{DeclareCaptionSubType} ist in der Dokumentation
- des \package{subcaption}"=Paketes beschrieben.}
-
-\clearpage
-\subsection{Warnungen}
-
-\begin{Warnings}
-
-\Message
- |\caption outside box or environment.|
-\Or
- |\captionsetup{type=...} outside box or environment.|
-\Or
- |\captionsetup{type*=...} or \captionof outside box|\\
- | or environment.|
-\Description
- |\caption|, |\caption|\-|of| sowie |\caption|\-|setup{type=|\x\meta{type}|}|
- sind nur fĵr die Anwendung \emph{innerhalb} einer Box, Gruppe oder Umgebung
- konzipiert. AuŸerhalb kĥnnen unerwĵnschte Seiteneffekte auftreten.
- \par\See{\Ref{types} und \Ref{caption}}
-
-\Message
- |\caption will not be redefined since it's already|\\
- |redefined by a document class or package which is|\\
- |unknown to the caption package.|
-\Description
- Wenn \thispackage\ eine vorhandene (und unbekannte) Erweiterung des Befehls
- |\caption| erkannt hat, definiert es |\caption| nicht erneut um, da dies
- unweigerlich den Verlust der ursprĵnglichen Erweiterung zur Folge h¤tte.
- Daher funktionieren manche Features, wie |\caption*|,
- |\Continued|\-|Float|, das optionale Argument von |\caption|\-|setup|,
- sowie die Optionen |list=| und |hypcap=| nicht mehr; sie werden
- entweder ignoriert oder arbeiten nicht erwartungsgem¤Ÿ.\par
- Wenn Sie an der ursprĵnglichen Erweiterung nicht interessiert sind
- und stattdessen den vollen Umfang des \package{caption}"=Paketes
- verwenden wollen, kĥnnen Sie es mit der nicht supporteten(!)
- Option |compatibility=|\x|false| probieren und die Daumen drĵcken.
- (Aber Sie werden die n¤chste Warnung stattdessen bekommen.)
- \par\See{\Ref{classes} und \Ref{compatibility}}
-
-\Message
- |Forced redefinition of \caption since the|\\
- |unsupported(!) package option `compatibility=false'|\\
- |was given.|
-\Description
- Da Sie so mutig waren, die Option |compatibility=|\x|false| zu probieren,
- wird \thispackage\ sein bestes geben, um diesen Wunsch zu erfĵllen.
- Aber je nach verwendeter Dokumentenklasse bzw.~Pakete sollten Sie sich
- auf Fehlfunktionen oder Fehlermeldungen einstellen.
- Also bitte die Daumen gedrĵckt halten!
- \par\See{\Ref{compatibility}}
-
-\Message
- |Hyperref support is turned off because hyperref has|\\
- |stopped early.|
-\Description
- Wenn das \package{hyperref}"=Paket vorzeitig seinen Dienst einstellt
- (den Grund hierfĵr teilt es Ihnen mit), ist auch die
- \package{hyperref}"=Unterstĵtzung des \package{caption}"=Paketes nicht
- verfĵgbar. Als Folge werden Sie einige Warnungen des
- \package{hyperref}"=Paketes bekommen, ferner werden Hyperlinks
- auf Abbildungen und Tabellen nicht funktionsf¤hig sein.
- \par\See{\Ref{hyperref}\,}
-
-\Message
- |Ignoring optional argument [|\meta{pos}|] of \setcapwidth.|
-\Description
- \Thispackage\ bemĵht sich, so gut es kann, die \KOMAScript"=Befehle
- bzgl.~Tabellen und Abbildungen zu emulieren. Aber das optionale Argument
- von |\setcapwidth| funktioniert (noch) nicht; wenn Sie es dennoch angeben,
- wird daher diese Warnung ausgegeben.
- \par\See{\Ref{KOMA}}
-
-\Message
- |Internal Warning: |\meta{warning message}|.|
-\Description
- Diese Warnung sollten Sie niemals sehen; entweder verwenden Sie ein Paket,
- welches |figure| und/oder |table| in einer dem \package{caption}"=Paket
- unbekannten Art \& Weise ver¤ndert, oder aber es ist ein Fehler im
- \package{caption}"=Paket.
- Bitte senden Sie mir einen Fehlerbericht diesbezĵglich per E-Mail. Danke!
-
-\Message
- |\label without proper \caption|
-\Description
- Anders als bei den meisten nicht gleitenden Umgebungen wird bei den
- gleitenden Umgebungen die interne Referenz erst bei Anwendung des Befehls
- |\caption| erzeugt. Ein |\label| Befehl, der auf diese Abbildung
- bzw.~Tabelle verweisen soll, muŸ daher entweder direkt \emph{nach} oder innerhalb
- des Argumentes von |\caption| platziert werden.
-
-\Message
- |Option `|\meta{option}|' was not in list `|\meta{option list}|'.|
-\Description
- Wenn Sie versuchen, eine bestimmte Option aus einer Optionsliste zu
- entfernen, zum Beispiel mit |\clear|\-|caption|\-|setup[po|\-|si|\-|tion]{table}|,
- und die angegebene Option kann nicht in der Liste gefunden werden, so
- erhalten Sie die obenstehende Warnung.
- Liegt dies nicht an einem Schreibfehler Ihrerseits und mĥchten Sie ferner
- diese Warnung unterdrĵcken, so kĥnnen Sie hierzu
- |\clear|\-|caption|\-|setup*| anstelle von |\clear|\-|caption|\-|setup|
- verwenden.
- \par\See{\Ref{captionsetup}}
-
-\Message
- |Option list `|\meta{option list}|' undefined.|
-\Description
- Wenn Sie versuchen, eine bestimmte Option aus einer Optionsliste zu
- entfernen, zum Beispiel mit |\clear|\-|caption|\-|setup[for|\-|mat]{figure}|,
- und die angegebene Optionsliste ist (noch) nicht definiert, so
- erhalten Sie die obenstehende Warnung.
- Liegt dies nicht an einem Schreibfehler Ihrerseits und mĥchten Sie ferner
- diese Warnung unterdrĵcken, so kĥnnen Sie hierzu |\clear|\-|caption|\-|setup*|
- anstelle von |\clear|\-|caption|\-|setup| verwenden.
- \par\See{\Ref{captionsetup}}
-
-\Message
- |Obsolete option `ignoreLTcapwidth' ignored.|
-\Description
- Die Option |ignoreLTcapwidth| des \package{caption2}"=Paketes wird nicht von
- diesem Paket emuliert. In der Regel kĥnnen Sie aber diese Option einfach
- ersatzlos entfernen.
- \par\See{\Ref{caption2} und \Ref{longtable}}
-
-\Message
- |`ragged2e' support has been changed. Rerun to get|\\
- |captions right.|
-\Description
- Das \package{ragged2e} wird nur dann vom \package{caption}"=Paket geladen,
- wenn es tats¤chlich benĥtigt wird.
- Um dies zu gew¤hrleisten, sind zwei \LaTeX"=L¤ufe notwendig, daher kĥnnen Sie
- beim ersten Durchlauf diese Warnung bekommen.
- Mit dem n¤chsten \LaTeX"=Lauf sollte also diese Warnung verschwunden sein.
- \par\See{\Ref{justification}}
-
-\Message
- |Reference on page |\meta{page no.}| undefined.|
-\Description
- Ist ein zweiseitiges Dokumentenlayout gew¤hlt, benĥtigt \thispackage\ zwei
- \LaTeX"=L¤ufe, um die R¤nder korrekt zuordnen zu kĥnnen;
- daher kĥnnen Sie beim ersten Durchlauf diese Warnung bekommen.
- Mit dem n¤chsten \LaTeX"=Lauf sollte also diese Warnung verschwunden sein.
- \par\See{\Ref{margins}}
-
-\Message
- |The caption type was already set to `|\meta{type}|'.|
-\Description
- Diese Warnung informiert Sie ĵber vermische \package{caption}"=Optionen.
- Wenn Sie z.B.~|\caption|\-|setup{type=|\x|table}| oder
- |\caption|\-|of{table}{|\ldots|}| in einer |figure| Umgebung verwenden,
- werden beide Optionss¤tze, sowohl derjenige fĵr |figure|
- (mit |\caption|\-|setup[figure]{|\ldots|}| angegeben) als auch
- derjenige fĵr |table| (mit |\caption|\-|setup[table]{|\ldots|}| angegeben),
- angewandt.
- {\small(Diese Warnung kann bei Bedarf durch Verwendung der Stern-Form
- |\caption|\-|setup*{type=|\x\ldots|}| unterdrĵckt werden.)\par}
- \par\See{\Ref{captionsetup}}
-
-\Message
- |The option `hypcap=true' will be ignored for this|\\
- |particular \caption.|
-\Description
- \Thispackage\ hat keinen geeigneten Hyperlink"=Anker fĵr diese Beschriftung
- gefunden, daher hat es entschlossen, die Einstellung |hypcap=|\x|true| (die per
- Standard gesetzt ist) zu ignorieren.
- Als Folge werden Hyperlinks zu dieser Abbildung oder Tabelle (etwa ĵber das
- Abbildungsverzeichnis, oder selber mit |\ref| oder |\auto|\-|ref| angelegt)
- nicht auf den Beginn der Abbildung oder Tabelle verweisen, sondern stattdessen
- auf deren Beschriftung.\par
- Dies kann zum Beispiel passieren, wenn eine Beschriftung mit |\caption|\-|of|
- innerhalb einer nicht-gleitenden Umgebung gesetzt wird, aber auch, wenn ein
- Sie ein Paket in Ihrem Dokument verwenden, welches die Umgebungen |figure|
- oder |table| umdefiniert hat, dieses Paket aber dem \package{caption}"=Paket
- unbekannt ist.\par
- Ist dies fĵr Sie ok, aber die Warnung stĥrt Sie, kĥnnen Sie sie
- |\caption|\-|setup{hyp|\-|cap=|\x|false}| direkt vor dem betroffenen |\caption|
- oder |\caption|\-|of| Befehl platzieren.
- Ist dies hingegen nicht fĵr Sie ok, kĥnnen Sie selber an geeigneter Stelle mit
- |\caption|\-|setup{type=|\x\meta{float type}|}| einen Hyperlink"=Anker setzen.
- \par\See{\Ref{hyperref}\,}
-
-\Message
- |Unsupported document class (or package) detected,|\\
- |usage of the caption package is not recommended.|
-\Description
- Entweder ist die verwendete Dokumentenklasse dem \package{caption}"=Paket
- unbekannt, oder aber Sie haben ein Paket in Ihrem Dokument eingebunden,
- welches ebenfalls das interne Makro |\@make|\-|caption| (welches intern fĵr
- das Setzen der Abbildungs- und Tabellenbeschriftungen zust¤ndig ist)
- umdefiniert.
- Wie-auch-immer, \thispackage\ wird entweder das Design der Beschriftungen
- in einer ungewollten Art \& Weise ver¤ndern, oder aber es wird zu keinem
- geordneten Verhalten und/oder Fehlermeldungen kommen. Deswegen wird in
- diesem Falle die Verwendung des \package{caption}"=Paketes nicht empfohlen.
- \par\See{\Ref{classes} und \Ref{compatibility}}
-
-\Message
- |Unused \captionsetup[|\meta{type}|].|
-\Description
- Es wurden Optionen mit |\caption|\-|setup[|\meta{Typ}|]| definiert, die im
- weiteren Verlauf des Dokumentes aber nicht zur Anwendung gekommen sind.
- Dies kann zum einen an einem Schreibfehler im Argument \meta{Typ} liegen,
- aber auch daran, daŸ ein dem \package{caption}"=Paket unbekanntes Paket
- die Umgebungen |figure| und/oder |table| umdefiniert hat, oder auch einfach
- daran, daŸ Sie die angegebene Umgebung gar nicht im sp¤teren Verlauf Ihres
- Dokumentes verwenden.
- (Mĥchten Sie diese Warnung unterdrĵcken, so verwenden Sie
- |\caption|\-|setup*| anstelle von |\caption|\-|setup|.)
- \par\See{\Ref{captionsetup}}
-
-\Message
- |Usage of the |\meta{package}| package together with the|\\
- |caption package is strongly not recommended.|\\
- |Instead of loading the |\meta{package}| package you should|\\
- |use the caption package option `tableposition=top'.|
-\Description
- Das angegebene Paket mischt sich ebenfalls in die Verwendung der Abst¤nde
- ĵber- und unterhalb der Beschriftungen ein. Viele Kĥche verderben den Brei,
- also ist es ratsam, sich fĵr eines der Pakete -- das angegebene oder
- \thispackage\ -- zu entscheiden, um falsche Abst¤nde zu vermeiden.
- \par\See{\Ref{skips}}
-
-\end{Warnings}
-
-\pagebreak[3]
-\subsection{Fehlermeldungen}
-
-\begin{Warnings}
-
-\Message
-
- |Argument of \@caption has an extra }.|
-\Or
- |Paragraph ended before \@caption was complete.|
-\Description
- Beim Setzen von Beschriftungen, die etwas spezielles wie z.B.~eine Tabelle
- enthalten, ist zu beachten, daŸ immer ein alternativer Listeneintrag als
- optionales Argument bei |\caption| bzw. |\caption|\-|of| mit angegeben
- werden muŸ, auch wenn Ihr Dokument gar kein Abbildungs- oder
- Tabellenverzeichnis beeinhaltet.
- \par\See{\Ref{caption}, \Ref{lists} und \Ref{hyperref}\,}
-
-\Message
- |\caption outside float.|
-\Description
- |\caption| ist (in der Regel) nur fĵr die Anwendung in gleitenden
- Umgebungen wie |figure| oder |table|, oder fĵr die Anwendung innerhalb
- |long|\-|table| oder |wrap|\-|figure| konzipiert, ansonsten bekommen Sie
- obenstehende Fehlermeldung.
- Um eine Beschriftung innerhalb einer anderen Umgebung zu setzen, verwenden
- Sie bitte entweder die Kombination |\caption|\-|setup{type=|\x\meta{type}|}|
- $+$ |\caption|, oder aber |\caption|\-|of|.
- \par\See{\Ref{caption}}
-
-\Message
- |\ContinuedFloat outside float.|
-\Description
- |\Continued|\-|Float| ist nur fĵr die Anwendung innerhalb einer gleitenden
- Umgebung wie |figure| oder |table| konzipiert. %oder auch |long|\-|table|
- Fĵr die Anwendung in einer Box, Gruppe oder nicht-gleitenden Umgebung
- bietet sich die Kombination
- |\caption|\-|setup{type=|\x\meta{type}|}| $+$ |\Continued|\-|Float| an.\par
- |\Continued|\-|Float| innerhalb einer |long|\-|table| ist nicht mĥglich,
- aber vielleicht ist die |longtable*| Umgebung, die eine longtable
- ohne Erhĥhung des Tabellenz¤hlers setzt, fĵr Sie hilfreich.
- \par\See{\Ref{ContinuedFloat} und \Ref{longtable}}
-
-\Message
- |Continued `|\meta{type}|' after `|\meta{type}|'.|
-\Description
- Fortlaufende Abbildungen oder Tabellen dĵrfen nicht von anderen
- gleitenden Umgebungen (oder einer |long|\-|table|) unterbrochen werden,
- so ist z.B.~ eine Tabelle zwischen einer Abbildung und einer
- (mit |\Continued|\-|Float|) fortgesetzten Abbildung nicht mĥglich.
- \par\See{\Ref{ContinuedFloat}}
-
-\Message
- |For a successful cooperation we need at least version|\\
- |`|\meta{date}|' of package |\meta{package}|, but only version|\\
- |`|\meta{old-date}|' is available.|
-\Description
- Das aktuelle \package{caption}"=Paket kann nicht mit einem solch
- veralteten Paket zusammen betrieben werden.
- Bitte aktualisieren Sie das betroffene Paket, zumindest auf die
- angegebene Version.
-
-\Message
- |Internal Error: |\meta{error message}|.|
-\Description
- Diesen Fehler sollten Sie niemals sehen. Wenn doch, senden Sie mir bitte
- einen Fehlerbericht per E-Mail.
-
-\Message
- |No float type '|\meta{type}|' defined.|
-\Description
- Der in |\caption|\-|setup{type=|\x\meta{type}|}|,
- |\caption|\-|of|\marg{type}, oder |\Declare|\-|Caption|\-|Sub|\-|Type|
- angegebene \meta{type} ist unbekannt.
- \meta{type} sollte entweder `\texttt{figure}' oder `\texttt{table}', oder
- aber eine mit mit
- |\Declare|\-|Floating|\-|Environment|
- (vom \package{newfloat}"=Paket bereitgestellt),
- |\new|\-|float|
- (vom \package{float}"=Paket\cite{float} bereitgestellt) oder
- |\Declare|\-|NewFloat|\-|Type|
- (vom \package{floatrow}"=Paket\cite{floatrow} bereitgestellt)
- definierte Gleitumgebung sein.
-
-\Message
- |Not allowed in longtable* environment.|
-\Description
- Der Befehl |\caption| ist innerhalb einer |long|\-|table*| Umgebung
- nicht erlaubt. Verwenden Sie entweder |\caption*| fĵr eine Beschriftung
- ohne Bezeichner oder benutzen Sie die regul¤re |long|\-|table| Umgebung.
-
-\Message
- |Not available in compatibility mode.|
-\Description
- Das angeforderte Feature steht im sog.~Kompatibilit¤tsmodus nicht zur
- Verfĵgung, d.h.~\thispackage\ hat eine inkompatible Dokumentenklasse oder
- ein inkompatibles Paket entdeckt, welches ebenfalls |\caption| erweitert
- und damit die Anwendung dieses Features bzw.~Befehls verhindert.
- \par\See{\Ref{compatibility}}
-
-\Message
- |Only one \caption can be placed in this environment.|
-\Description
- Innerhalb der Umgebungen, die das \package{fltpage} oder \package{sidecap}
- Paket zur Verfĵgung stellt, kann nur eine einzige Bildbeschriftung gesetzt
- werden.
-
-\Message
- |Option clash for package caption.|
-\Or[aber manchmal auch]
- |Missing \begin{document}.|
-\Description
- Ein anderes \LaTeX-Paket hat \thispackage\ bereits geladen, Sie kĥnnen es
- daher nicht noch einmal mit anderen Optionen laden.
- Als Verd¤chtiger kommt z.B.~das \package{ctable} oder das
- \package{subfig}"=Paket in Frage; sollte dies zutreffen,
- laden Sie bitte \thispackage\ \emph{vor} dem betreffenen Paket.
- Im Falle des \package{subfig}"=Paketes kĥnnen Sie auch alternativ beim
- Laden des \package{subfig}"=Paketes die Option |caption=|\x|false| angeben.
- \par\See{Dokumentation des \package{subfig}"=Paketes\cite{subfig}}
-
-\Message
- |Paragraph ended before \caption@makecurrent was complete.|
-\Or
- |Paragraph ended before \caption@prepareanchor was complete.|
-\Description
- Beim Setzen von Beschriftungen, die mehr als aus einem Absatz bestehen,
- ist zu beachten, daŸ immer ein alternativer Listeneintrag als optionales
- Argument bei |\caption| bzw. |\caption|\-|of| mit angegeben werden muŸ,
- auch wenn Ihr Dokument gar kein Abbildungs- oder Tabellenverzeichnis
- beeinhaltet.
- \par\See{\Ref{caption}, \Ref{lists} und \Ref{hyperref}\,}
-
-\Message
- |Something's wrong--perhaps a missing \caption|\\
- |in the last figure or table.|
-\Description
- Sie scheinen den Befehl |\sub|\-|caption| (oder einen anderen,
- der eine Unter"=Beschriftung setzt) ohne eine zugehĥrige,
- mit |\caption| gesetzte, Beschriftung anzuwenden.
- Dies wird nicht unterstĵtzt.
-
-\Message
- |The option `labelsep=|\meta{name}|' does not work|\\
- |with `format=hang'.|
-\Or
- |The option `labelsep=|\meta{name}|' does not work|\\
- |with \setcaphanging (which is set by default).|
-\Description
- Ein Bezeichnungstrenner, der ein |\\| Kommando enth¤lt (wie etwa
- |labelsep=|\x|newline|), kann nicht mit einem Format kombiniert werden,
- welches "`h¤ngende"' Beschriftungen liefert (wie etwa |format=|\x|hang|).
- Bitte w¤hlen Sie entweder einen anderen Trenner (wie
- z.B.~|labelsep=|\x|colon|), oder aber ein anderes Beschriftungsformat
- (wie z.B.~|format=|\x|plain|) aus.
- \par\See{\Ref{formats} bzw.~\Ref{KOMA}}
-
-\Message
- |The package option `caption=false' is obsolete.|\\
- |Please pass this option to the subfig package instead|\\
- |and do *not* load the caption package anymore.|
-\Description
- Sie haben die Option |caption=|\x|false| angegeben. Diese war frĵher mal eine
- Krĵcke, um nicht das komplette \package{caption}"=Paket zu laden, sondern
- nur den fĵr das \package{subfig}"=Paket zwingend benĥtigten Teil.
- Dieser Mechanismus ist veraltet und wird nicht mehr angeboten; stattdessen
- sollten Sie diese Option dem \package{subfig}"=Paket ĵbergeben und
- \thispackage\ nicht mehr explizit laden.
- \par\See{Dokumentation des \package{subfig}"=Paketes\cite{subfig}}
-
-\Message
- |Undefined boolean value `|\meta{value}|'.|
-\Description
- Es wurde versucht, eine boolische Option (wie z.B.~|singlelinecheck=| oder
- |hypcap=|) auf einen unbekannten Wert zu setzen. Nur die Werte |false|, |no|,
- |off|, |0| bzw.~|true|, |yes|, |on| und |1| sind hier mĥglich.
-
-\Message
- |Undefined format `|\meta{name}|'.|
-\Description
- Es wurde versucht, ein Beschriftungsformat auszuw¤hlen, welches nicht
- definiert ist. Vielleicht ein Schreibfehler!?
- \par\See{\Ref{formats}}
-
-\Message
- |Undefined label format `|\meta{name}|'.|
-\Description
- Es wurde versucht, ein Bezeichnungsformat auszuw¤hlen, welches nicht
- definiert ist. Vielleicht ein Schreibfehler!?
- \par\See{\Ref{formats}}
-
-\Message
- |Undefined label separator `|\meta{name}|'.|
-\Description
- Es wurde versucht, ein Beschriftungstrenner auszuw¤hlen, welcher nicht
- definiert ist. Vielleicht ein Schreibfehler!?
- \par\See{\Ref{formats}}
-
-\Message
- |Undefined list format `|\meta{name}|'.|
-\Description
- Es wurde versucht, ein Listenformat auszuw¤hlen, welches nicht
- definiert ist. Vielleicht ein Schreibfehler!?
- \par\See{\Ref{lists}}
-
-\Message
- |Undefined position `|\meta{name}|'.|
-\Description
- Es wurde versucht, den Positionshinweis auf einen unbekannten Wert zu
- setzen. Vielleicht ein Schreibfehler!?
- \par\See{\Ref{skips}}
-
-\Message
- |Undefined style `|\meta{name}|'.|
-\Description
- Es wurde versucht, ein Beschriftungsstil auszuw¤hlen, welcher nicht
- definiert ist. Vielleicht ein Schreibfehler!?
- \par\See{\Ref{style}}
-
-\Message
- |Undefined text format `|\meta{name}|'.|
-\Description
- Es wurde versucht, ein Textformat auszuw¤hlen, welches nicht
- definiert ist. Vielleicht ein Schreibfehler!?
- \par\See{\Ref{formats}}
-
-\Message
- |Usage of the `position' option is incompatible|\\
- |to the `|\meta{package}|' package.|
-\Description
-% (ftcap,nonfloat,topcapt)
- Das angegebene Paket mischt sich ebenfalls in die Verwendung der
- Abst¤nde ĵber- und unterhalb der Beschriftungen ein.
- Sie mĵssen sich daher fĵr \emph{einen} der Mechanismen entscheiden:
- Entweder Sie verwenden das angegebene Paket fĵr die Anpassung
- der Abst¤nde, oder aber die |position|"=Option des
- \package{caption}"=Paketes, beides geht nicht.
- \par\See{\Ref{skips}}
-
-\Message
- |You can't use both, the (obsolete) caption2 *and*|\\
- |the (current) caption package.|
-\Description
- Die Pakete \package{caption} und \package{caption2} kĥnnen nicht
- innerhalb eines Dokumentes gleichzeitig verwendet werden.
- Verwenden Sie bitte nur das aktuelle \package{caption}"=Paket.
- \par\See{\Ref{caption2}}
-
-\end{Warnings}
-
-% --------------------------------------------------------------------------- %
-
-\clearpage
-\section{Versionshistorie}
-\label{history}
-
-Die Version $1.0$ dieses Paketes wurde im Jahr 1994 verĥffentlicht und bot
-eine Handvoll Optionen, um das Design der Abbildungs-
-bzw.~Tabellenbeschriftungen anzupassen.
-Ferner unterstĵtzte diese Version bereits das \package{rotating} und
-\package{subfigure}"=Paket.
-Version $1.1$ fĵhrte die |center|\-|last| Option ein;
-in Version $1.2$ kam die Unterstĵtzung des \package{float}"=Paketes hinzu.
-Die Version $1.3$ verfeinerte die Koorperation mit dem
-\package{subfigure}"=Paket; die Version $1.4$ bot die Option |nooneline|
-als Neuheit an.
-
-Die Version $2.0$ des sog.~\package{caption2}"=Paketes war ein
-experimenteller Seitenzweig der regul¤ren Version des
-\package{caption}"=Paketes. Er wurde im Jahre 1995 als Beta"=Testversion
-ĥffentlich gemacht, um die Nachfrage nach neuen Features und der
-Anpassung an das \package{longtable}"=Paket kurzfristig zu befriedigen.
-(Eine Version $2.1$ wurde 2002 als Fehlerbereinigung nachgereicht.)
-
-Im Jahr 2003 hatte ich dann endlich wieder etwas Zeit gefunden, und so
-wurde im Dezember die neue regul¤re Version $3.0$ in Zusammenarbeit mit
-Frank Mittelbach und Steven Cochran aus der Taufe gehoben, die endlich
-den arg vernachl¤ssigten Seitenzweig namens \package{caption2}
-ĵberflĵssig machte.
-Weite Teile des Paketes wurden hierfĵr neu geschrieben, und auch das
-Benutzerinterface wurde grĵndlich renoviert.
-AuŸerdem kam die Unterstĵtzung der Pakete \package{hyperref},
-\package{hypcap}, \package{listings}, \package{sidecap} und
-\package{supertabular} hinzu.
-
-W¤hrend all die vorangegangenen Versionen dafĵr ausgelegt waren, mit
-den \LaTeX"=Standarddokumentenklassen \class{article}, \class{report} und
-\class{book} benutzt zu werden, unterstĵtzt die im Jahre 2007
-verĥffentlichte Version $3.1$ auch die \AmS, die \KOMAScript, \NTG{} und
-\SmF{} Dokumentenklassen, ferner auch die \class{beamer}"=Klasse.
-Weiterhin kamen die Unterstĵtzung der franzĥsischen Babel"=Option
-\package{frenchb} und des franzĥsischen Sprachpaketes \package{frenchle}
-bzw.~\package{frenchpro} hinzu;
-auŸerdem wurde die Anzahl der unterstĵtzten Pakete um die Pakete
-\package{floatflt}, \package{fltpage}, \package{picinpar},
-\package{picins}, \package{setspace}, \package{threeparttable}
-und \package{wrapfig} erhĥht.
-Neue Optionen und Befehle wurden ebenfalls eingefĵhrt, unter anderem
-|font+|, |figure|\-|within| \& |table|\-|within|,
-|list| \& |list|\-|format|, |max|\-|margin| \& |min|\-|margin|,
-|\caption|\-|list|\-|entry|, |\Declare|\-|Caption|\-|List|\-|Format|.
-Einen weiteren Gewinn stellt der neu integrierte Kompatibilit¤tscheck
-\see*{\Ref{compatibility}}, das neue "`hypcap"' Feature
-\see*{\Ref{hyperref}\,}, und die Unterstĵtzung von Teil"=Beschriftungen
-\see*{\package{subcaption}"=Paketdokumentation} dar.
-
-% --------------------------------------------------------------------------- %
-
-\clearpage
-\section{Kompatibilit¤t zu ¤lteren Versionen}
-
-\subsection{caption v\texorpdfstring{$1.x$}{1.x}}
-\label{caption1}
-
-Diese Version des \package{caption}"=Paketes ist weitgehend kompatibel zu den
-¤lteren Versionen $1.0$ bis $1.4$ des Paketes; alte, vorhandene Dokumente
-sollten sich also in der Regel ohne Probleme weiterhin ĵbersetzen lassen.
-Jedoch ist zu beachten, daŸ eine Mischung aus alten Befehlen und neueren
-Optionen bzw.~Befehlen zu unerwĵnschten Nebeneffekten fĵhren kann.
-
-Hier eine kurze œbersicht ĵber die alten, ĵberholten Optionen und ihre
-aktuellen Entsprechungen:
-
-\begin{center}\small
-\begin{tabular}{ll}
-\package{caption} \version{1.x} & \package{caption} \version{3.x}\\
-\hline
-%\endhead
-|normal| & |format=plain|\\
-|hang| & |format=hang|\\
-|isu| & |format=hang|\\
-|center| & |justification=centering|\\
-|centerlast| & |justification=centerlast|\\
-|nooneline| & |singlelinecheck=off|\\
-|scriptsize| & |font=scriptsize|\\
-|footnotesize| & |font=footnotesize|\\
-|small| & |font=small|\\
-|normalsize| & |font=normalsize|\\
-|large| & |font=large|\\
-|Large| & |font=Large|\\
-|up| & |labelfont=up|\\
-|it| & |labelfont=it|\\
-|sl| & |labelfont=sl|\\
-|sc| & |labelfont=sc|\\
-|md| & |labelfont=md|\\
-|bf| & |labelfont=bf|\\
-|rm| & |labelfont=rm|\\
-|sf| & |labelfont=sf|\\
-|tt| & |labelfont=tt|\\
-\end{tabular}
-\end{center}
-
-Neben den Optionen zum Einstellen des Zeichensatzes gab es auch die Befehle
-|\caption|\-|size| bzw.~|\caption|\-|font| und |\caption|\-|label|\-|font|,
-die direkt mit |\re|\-|new|\-|command| umdefiniert werden konnten.
-Dieser Mechanismus wurde durch die Anweisungen
-\begin{quote}
- |\DeclareCaptionFont{|\ldots|}{|\ldots|}|\qquad und\\
- |\captionsetup{font=|\ldots|,labelfont=|\ldots|}|
-\end{quote}
-ersetzt. \SeeUserDefined
-
-Das Setzen eines Randes geschah in \version{1.x} mit
-\begin{quote}
- |\setlength{\captionmargin}{|\ldots|}|\quad.
-\end{quote}
-Dies wurde durch
-\begin{quote}
- |\captionsetup{margin=|\ldots|}|
-\end{quote}
-ersetzt.
-\See{\Ref{margins}}
-
-Zum Beispiel w¤re
-\begin{quote}
- |\usepackage[hang,bf]{caption}|\\
- |\renewcommand\captionfont{\small\sffamily}|\\
- |\setlength\captionmargin{10pt}|
-\end{quote}
-in aktueller Notation
-\begin{quote}
- |\usepackage[format=hang,labelfont=bf,font={small,sf},|\\
- | margin=10pt]{caption}|
-\end{quote}
-bzw.
-\begin{quote}
- |\usepackage{caption}|\\
- |\captionsetup{format=hang,labelfont=bf,font={small,sf},|\\
- | margin=10pt}|\quad.
-\end{quote}
-
-Die etwas exotische Option |ruled|, die eine partielle Anwendung der
-eingestellten Parameter bei Umgebungen des Typs |ruled| aktivierte,
-wird ebenfalls emuliert, hat aber keine direkte Entsprechung in
-dieser Version des \package{caption}"=Paketes.
-Mĥchte man das Aussehen der Abbildungen des Stils |ruled|,
-der durch das \package{float}"=Paket zur Verfĵgung gestellt wird,
-ver¤ndern, so ist dies nun durch
-\begin{quote}
- |\DeclareCaptionStyle{ruled}{|\ldots|}|
-\end{quote}
-bzw.
-\begin{quote}
- |\captionsetup[ruled]{|\ldots|}|
-\end{quote}
-mĥglich.
-\SeeUserDefined[, \Ref{captionsetup} und \Ref{float}]
-
-\subsection{caption2 v\texorpdfstring{$2.x$}{2.x}}
-\label{caption2}
-
-Das Paket \package{caption} und seine experimentelle, nun veraltete
-Variante \package{caption2} sind vom internen Konzept
-her zu unterschiedlich, um hier eine vollst¤ndige Kompatibilit¤t
-gew¤hrleisten zu kĥnnen.
-Daher liegt diesem Paket weiterhin die Datei |caption2.sty| bei, so daŸ
-¤ltere Dokumente, die das \package{caption2}"=Paket verwenden, weiterhin
-ĵbersetzt werden kĥnnen.
-
-Neue Dokumente sollten jedoch auf dem aktuellen \package{caption}"=Paket
-aufgesetzt werden. In den meisten F¤llen ist es hierfĵr ausreichend,
-einfach die Anweisung
-\begin{quote}
- |\usepackage[...]{caption2}|
-\end{quote}
-durch
-\begin{quote}
- |\usepackage[...]{caption}|
-\end{quote}
-zu ersetzen. Einige Optionen und Befehle werden jedoch nicht emuliert,
-so daŸ Sie anschlieŸend Fehlermeldungen erhalten kĥnnen.
-Die folgenden Abs¤tze werden Ihnen jedoch bei der Umsetzung dieser
-Optionen und Befehle helfen. Sollten darĵberhinaus noch Fragen offen sein
-oder Probleme auftreten, dann zĥgern Sie bitte nicht, mich diesbezĵglich
-per E-Mail zu kontaktieren.
-
-Zus¤tzlich zu den bereits im letzten Abschnitt vorgestellten Optionen
-werden ebenfalls emuliert:
-
-\begin{center}\small
-\begin{tabular}{ll}
-\package{caption2} \version{2.x} & \package{caption} \version{3.x}\\
-\hline
-%\endhead
-|flushleft| & |justification=raggedright|\\
-|flushright| & |justification=raggedleft|\\
-|oneline| & |singlelinecheck=on|\\
-\end{tabular}
-\end{center}
-
-Das Setzen eines Randes geschah in \version{2.x} mit
-\begin{quote}\leavevmode\hbox{%
- |\setcaptionmargin{|\ldots|}| bzw.
- |\setcaptionwidth{|\ldots|}|\quad.
-}\end{quote}
-Dies wurde durch
-\begin{quote}\leavevmode\hbox{%
- |\captionsetup{margin=|\ldots|}| bzw.
- |\captionsetup{width=|\ldots|}|
-}\end{quote}
-ersetzt. \See{\Ref{margins}}
-
-Das Setzen des Einzuges wurde in \version{2.x} mit
-\begin{quote}
- |\captionstyle{indent}|\\
- |\setlength\captionindent{|\ldots|}|
-\end{quote}
-\pagebreak[3]
-erledigt, dies geschieht nun stattdessen mit
-\nopagebreak[3]
-\begin{quote}
- |\captionsetup{format=plain,indention=|\ldots|}|\quad.
-\end{quote}
-
-Die Sonderbehandlung von einzeiligen Beschriftungen lieŸ sich in
-\version{2.x} mit |\oneline|\-|captions|\-|false| aus-
-bzw.~|\oneline|\-|captions|\-|true| wieder einschalten.
-Dies wurde durch
-|\caption|\-|setup{|\x|single|\-|line|\-|check=|\x|off}|
-bzw.
-|\caption|\-|setup{|\x|single|\-|line|\-|check=|\x|on}|
-ersetzt. \See{\Ref{justification}}
-
-Die Befehle
-\begin{quote}
- |\captionlabeldelim|, |\captionlabelsep|, |\captionstyle|,\\
- |\defcaptionstyle|, |\newcaptionstyle| und |\renewcaptionstyle|
-\end{quote}
-haben keine direkte Entsprechnung und werden daher durch diese
-Version des \package{caption}"=Paketes auch nicht emuliert.
-Sie fĵhren also bei der Verwendung zu Fehlermeldungen und mĵssen daher
-zwingend umgesetzt werden. Die Umsetzung ist von Fall zu Fall verschieden,
-lesen Sie sich daher bitte diese Anleitung grĵndlich durch und suchen Sie
-sich die Optionen bzw.~Befehle als Ersatz heraus, die Ihren Bedĵrfnissen
-entsprechen.
-
-\iffalse
-Als kleine Hilfestellung hier die Beispiele aus der alten Anleitung zum
-\package{caption2}"=Paket und deren Umsetzung:
-
-\newenvironment{OldNew}%
- {\begin{minipage}\linewidth
- \def\Old{Alt:\begin{quote}}%
- \def\New{\end{quote}Neu:\begin{quote}}%
- \def\Or{\end{quote}\centerline{-- oder --}\begin{quote}}%
- }%
- {\end{quote}\end{minipage}}
-
-\begin{OldNew}
-\Old
- |\captionstyle{center}|
-\New
- |\captionsetup{justification=centering}|
-\end{OldNew}
-
-\hrule
-
-\begin{OldNew}
-\Old
- |\captionstyle{indent}|\\
- |\setlength{\captionindent}{1cm}|
-\New
- |\captionsetup{format=plain,indention=1cm}|
-\end{OldNew}
-
-\hrule
-
-\begin{OldNew}
-\Old
- |\renewcommand\captionfont{\small}|\\
- |\renewcommand\captionlabelfont{\itshape}|
-\New
- |\captionsetup{font=small,labelfont=it}|
-\end{OldNew}
-
-\hrule
-
-\begin{OldNew}
-\Old
- |\renewcommand\captionfont{\small\itshape}|\\
- |\renewcommand\captionlabelfont{\upshape}|
-\New
- |\captionsetup{font=small,textfont=it}|
-\end{OldNew}
-
-\hrule
-
-\begin{OldNew}
-\Old
- |\setcaptionwidth{.5\textwidth}|
-\New
- |\captionsetup{width=.5\textwidth}|
-\end{OldNew}
-
-\hrule
-
-\begin{OldNew}
-\Old
- |\setcaptionmargin{.25\textwidth}|
-\New
- |\captionsetup{margin=.25\textwidth}|
-\end{OldNew}
-
-\hrule
-
-\begin{OldNew}
-\Old
- |\newcaptionstyle{absatz}{\captionlabel: \exampletext\par}|\\
- |\captionstyle{absatz}|
-\New
- |\DeclareCaptionFormat{absatz}{#1: #3\par}|\\
- |\captionsetup{format=absatz,singlelinecheck=off}|
-\Or
- |\captionsetup{format=plain,singlelinecheck=off}|
-\end{OldNew}
-
-\hrule
-
-\begin{OldNew}
-\Old
- |\newcaptionstyle{fancy}{\textsf{\captionlabel}\\\exampletext\par}|\\
- |\captionstyle{fancy}|
-\New
- |\DeclareCaptionFormat{fancy}{\textsf{#1}\\#3\par}|\\
- |\captionsetup{format=fancy,singlelinecheck=off}|
-\Or
- |\captionsetup{format=plain,labelfont=sf,labelsep=newline}|
-\end{OldNew}
-
-\hrule
-
-\begin{OldNew}
-\Old
- |\newcaptionstyle{fancy2}{\exampletext\hfill\textit{(\captionlabel)}}|\\
- |\captionstyle{fancy2}|
-\New
- |\DeclareCaptionFormat{fancy2}{#3\hfill\textit{(#1)}}|\\
- |\captionsetup{format=fancy2,singlelinecheck=off}|
-\end{OldNew}
-
-\hrule
-
-\begin{OldNew}
-\Old
- |\newcaptionstyle{mystyle}{%|\\
- | \normalcaptionparams|\\
- | \renewcommand\captionlabelfont{\bfseries}%|\\
- | \renewcommand\captionlabeldelim{.}%|\\
- | \onelinecaptionsfalse|\\
- | \usecaptionstyle{centerlast}}|\\
- |\captionstyle{mystyle}|
-\New
- |\DeclareCaptionStyle{mystyle}{labelfont=bf,labelsep=period,justification=centerlast}|\\
- |\captionsetup{style=mystyle}|
-\end{OldNew}
-
-\hrule
-
-\begin{OldNew}
-\Old
- |\newcaptionstyle{hangandleft}{%|\\
- | \let\oldcaptiontext\exampletext|\\
- | \def\exampletext{\raggedright\oldcaptiontext}%|\\
- | \usecaptionstyle{hang}}|\\
- |\captionstyle{hangandleft}|
-\New
- |\captionsetup{format=hang,justification=raggedright}|
-\end{OldNew}
-
-\hrule
-
-\begin{OldNew}
-\Old
- |\newcaptionstyle{fancy}{%|\\
- | \usecaptionmargin\captionfont|\\
- | \onelinecaption|\\
- | {{\captionlabelfont\captionlabel\captionlabeldelim}%|\\
- | \captionlabelsep\exampletext}%|\\
- | {{\centering\captionlabelfont\captionlabel\par}%|\\
- | \centerlast\exampletext\par}}|\\
- |\captionstyle{fancy}|
-\New
- |\DeclareCaptionFormat{fancy}{\centering#1\par\centerlast#3\par}|\\
- |\DeclareCaptionStyle{fancy}|\\
- | [format=plain,justification=centering]|\\
- | {format=fancy}|\\
- |\captionsetup{style=fancy}|
-\Or
- |\DeclareCaptionFormat{fancy}{#1\par#3\par}|\\
- |\DeclareCaptionStyle{fancy}|\\
- | [format=plain,justification=centering]|\\
- | {format=fancy,justification=centerlast}|\\
- |\captionsetup{style=fancy}|
-\end{OldNew}
-
-\hrule
-
-\begin{OldNew}
-\Old
- |\renewcaptionstyle{longtable}{\usecaptionstyle{normal}}|
-\New
- |\captionsetup[longtable]{format=plain}|
-\end{OldNew}
-\fi
-
-Ebenfalls keine Entsprechung hat die Option |ignore|\-|LT|\-|cap|\-|width|
-der \version{2.x}.
-Deren Verwendung kann in der Regel einfach entfallen, da \thispackage\ den
-Wert von |\LT|\-|cap|\-|width| sowieso nicht beachtet, solange er nicht
-explizit auf einen anderen Wert als den Standardwert ($=$|4in|) gesetzt wird.
-\See{\Ref{longtable}}
-
-\subsection{caption v\texorpdfstring{$3.0$}{3.0}}
-\label{caption3}
-
-%\NEWdescription{v3.1}
-\Thispackage\ \version{3.0} hatte keine weiteren Dokumentenklassen
-unterstĵtzt als die drei Standard"=Klassen, die \LaTeX\ selber mitbringt:
-\class{article}, \class{report} und \class{book}.
-Daher waren die Vorbelegungen der Einstellungsmĥglichkeiten fest durch
-dieses Paket vorgegeben, sie repr¤sentierten das Aussehen bei Verwendung
-einer dieser Klassen.
-Nun aber unterstĵtzt \thispackage\ mehr Dokumentenklassen aktiv, folglich
-kann die Vorbelegung nun von der verwendeten Dokumentenklasse abh¤ngen.
-
-Ein Beispiel: W¤hrend in \version{3.0} die Vorbelegung der Ausrichtung
-immer |jus|\-|ti|\-|fi|\-|ca|\-|tion=|\x|jus|\-|ti|\-|fied| war,
-ist sie nun immer noch |jus|\-|ti|\-|fied| wenn eine der drei Standardklassen
-verwendet wird, aber |jus|\-|ti|\-|fi|\-|ca|\-|tion=|\x|ragged|\-|right|,
-wenn die \package{beamer}"=Klasse verwendet wird.
-
-Mĥchten Sie weiterhin die "`alten"' Vorbelegungen, so kĥnnen Sie die Option
-|style=base| beim Laden des \package{caption}"=Paketes angeben oder sp¤ter
-mit |\caption|\-|setup{style=|\x|base}| den alten Grundzustand wieder
-herstellen.
-
-\medskip
-
-Weiterhin prĵft das \package{caption}"=Paket nun automatisch auf
-Inkompatibilit¤ten und gibt ggf.~eine Warnung aus.
-Sollte eine ernsthafte Inkompatibilit¤t festgestellt werden, werden auŸerdem
-einige Features des \package{caption}"=Paketes abgeschaltet.
-Lediglich diese Prĵfung ist neu, wenn Sie also neuerdings eine
-Kompatibilit¤tswarnung erhalten, so waren auch bereits vorangegangene Versionen
-des \package{caption}"=Paketes inkompatibel, dies hatte sich aber frĵher "`nur"'
-durch Seiteneffekte bzw.~nicht korrekt funktionierende Optionen oder Befehle
-ge¤uŸert.
-Die Kompatibilit¤tswarnungen sagen auch nicht aus, daŸ etwas schief gegangen ist,
-sondern lediglich, daŸ etwas schief gehen kĥnnte. Sie sollten aber auf jeden Fall,
-wenn Sie \thispackage\ trotz einer solchen Warnung einsetzen, die Abbildungs-
-und Tabellenbeschriftungen bzgl.~ihres Aussehens genau im Auge behalten.
-
-\bigskip
-
-\begin{Note*}
-\Thispackage\ \version{3.0} hatte als Interimslĥsung die Option
-|caption=|\x|false| bereitgestellt, um nicht das ganze \package{caption}"=Paket
-zu laden, sondern nur denjenigen Teil, der fĵr den Betrieb des
-\package{subfig}"=Paketes\cite{subfig} notwendig war.
-Dieser Mechanismus ist veraltet und wird nicht mehr angeboten; bitte
-ĵbergeben Sie stattdessen bei Bedarf diese Option an das \package{subfig}"=Paket
-und laden Sie nicht mehr \thispackage.
-%\par\See{\package{subfig}"=Paketdokumentation}
-\end{Note*}
-
-% --------------------------------------------------------------------------- %
-
-\iffalse
-\TODO: subcaption-Anleitung
-\fi
-
-% --------------------------------------------------------------------------- %
-
-\clearpage
-\begin{thebibliography}{99}
-
- \bibitem{TLC2}
- Frank Mittelbach und Michel Goossens:\\
- \newblock {\em Der {\LaTeX} Begleiter (2.\,Auflage)},\\
- \newblock Addison-Wesley, 2004.
-
- \bibitem{beamer}
- Till Tantau:\\
- \href{http://www.ctan.org/pkg/beamer}%
- {\emph{User Guide to the Beamer Class, Version 3.07}},\\
- March 11, 2007
-
- \bibitem{KOMAScript}
- Markus Kohm \& Jens-Uwe-Morawski:\\
- \href{http://www.ctan.org/pkg/koma-script}%
- {\emph{KOMA-Script -- ein wandelbares \LaTeXe-Paket}},\\
- 2007-03-02
-
- \bibitem{NTG}
- Victor Eijkhout:\\
- \href{http://www.ctan.org/pkg/ntgclass}%
- {\emph{An introduction to the Dutch \LaTeX\ document classes}},\\
- 3 September 1989
-
- \bibitem{algorithms}
- Rog\'erio Brito:\\
- \href{http://www.ctan.org/pkg/algorithms}%
- {\emph{Algorithms}},\\
- June 2, 2006
-
-\iffalse
- \bibitem{algorithm2e}
- Christophe Fiorio:\\
- \href{http://www.ctan.org/pkg/algorithm2e}%
- {\emph{algorithm2e.sty -- package for algorithms}},\\
- March 11, 2007
-\fi
-
- \bibitem{float}
- Anselm Lingnau:\\
- \href{http://www.ctan.org/pkg/float}%
- {\emph{An Improved Environment for Floats}},\\
- 2001/11/08
-
- \bibitem{floatflt}
- Mats Dahlgren:\\
- \href{http://www.ctan.org/pkg/floatflt}%
- {\emph{Welcome to the floatflt package}},\\
- 1998/06/05
-
- \bibitem{floatrow}
- Olga Lapko:\\
- \href{http://www.ctan.org/pkg/floatrow}%
- {\emph{The floatrow package documentation}},\\
- 2007/12/24
-
- \bibitem{fltpage}
- Sebastian Gross:\\
- \href{http://www.ctan.org/pkg/fltpage}%
- {\emph{Welcome to the beta test of fltpage package!}},\\
- 1998/11/13
-
- \bibitem{hyperref}
- Sebastian Rahtz \& Heiko Oberdiek:\\
- \href{http://www.ctan.org/pkg/hyperref}%
- {\emph{Hypertext marks in \LaTeX}},\\
- November 12, 2007
-
- \bibitem{hypcap}
- Heiko Oberdiek:\\
- \href{http://www.ctan.org/pkg/hypcap}%
- {\emph{The hypcap package -- Adjusting anchors of captions}},\\
- 2007/04/09
-
- \bibitem{listings}
- Carsten Heinz \& Brooks Moses:\\
- \href{http://www.ctan.org/pkg/listings}%
- {\emph{The Listings Package}},\\
- 2007/02/22
-
- \bibitem{longtable}
- David Carlisle:\\
- \href{http://www.ctan.org/pkg/longtable}%
- {\emph{The longtable package}},\\
- 2004/02/01
-
- \bibitem{picinpar}
- Friedhelm Sowa:\\
- \href{http://www.ctan.org/pkg/picinpar}%
- {\emph{Pictures in Paragraphs}},\\
- July 13, 1993
-
- \bibitem{picins}
- Joachim Bleser und Edmund Lang:\\
- \href{http://www.ctan.org/pkg/picins}%
- {\emph{PicIns-Benutzerhandbuch Version 3.0}},\\
- September~1992
-
- \bibitem{rotating}
- Sebastian Rahtz und Leonor Barroca:\\
- \href{http://www.ctan.org/pkg/rotating}%
- {\emph{A style option for rotated objects in \LaTeX}},\\
- 1997/09/26
-
- \bibitem{setspace}
- Erica M. S. Harris \& Geoffrey Tobin:\\
- \href{http://www.ctan.org/pkg/setspace}%
- {\emph{LaTeX Document Package ``setspace''}},\\
- 1 December 2000
-
- \bibitem{sidecap}
- Rolf Niepraschk \& Hubert G\"a\ss lein:\\
- \href{http://www.ctan.org/pkg/sidecap}%
- {\emph{The sidecap package}},\\
- 2003/06/06
-
- \bibitem{subfigure}
- Steven D. Cochran:\\
- \href{http://www.ctan.org/pkg/subfigure}%
- {\emph{The subfigure package}},\\
- 2002/07/02
-
- \bibitem{subfig}
- Steven D. Cochran:\\
- \href{http://www.ctan.org/pkg/subfig}%
- {\emph{The subfig package}},\\
- 2005/07/05
-
- \bibitem{supertabular}
- Johannes Braams und Theo Jurriens:\\
- \href{http://www.ctan.org/pkg/supertabular}%
- {\emph{The supertabular environment}},\\
- 2002/07/19
-
- \bibitem{threeparttable}
- Donald Arseneau:\\
- \href{http://www.ctan.org/pkg/threeparttable}%
- {\emph{Three part tables: title, tabular environment, notes}},\\
- 2003/06/13
-
- \bibitem{wrapfig}
- Donald Arseneau:\\
- \href{http://www.ctan.org/pkg/wrapfig}%
- {\emph{WRAPFIG.STY ver 3.6}},\\
- 2003/01/31
-
- \bibitem{xtab}
- Peter Wilson:\\
- \href{http://www.ctan.org/pkg/xtab}%
- {\emph{The xtab package}},\\
- 2004/05/24
-
-\end{thebibliography}
-
-% --------------------------------------------------------------------------- %
-
-\end{document}
diff --git a/macros/latex/contrib/caption/caption-elsarticle.dtx b/macros/latex/contrib/caption/caption-elsarticle.dtx
index 878e855022..6fb731cf97 100644
--- a/macros/latex/contrib/caption/caption-elsarticle.dtx
+++ b/macros/latex/contrib/caption/caption-elsarticle.dtx
@@ -27,11 +27,10 @@
% caption.sty, caption-light.sty, caption2.sty, caption3.sty,
% caption-ams-smf.sto, caption-beamer.sto, caption-elsarticle.sto,
% caption-koma.sto, caption-memoir.sto, caption-ntg.sto,
-% caption-thesis.sto, bicaption.sty, ltcaption.sty, subcaption.sty,
-% and the user manuals
-% caption-deu.tex, caption-eng.tex, caption-rus.tex.
+% caption-thesis.sto, bicaption.sty, ltcaption.sty, subcaption.sty.
%
% \fi
+%
% \CheckSum{3}
%
% \iffalse
@@ -139,6 +138,7 @@
% \DoNotIndex{\hangindent,\hbox,\hfil,\hsize,\hskip,\hspace,\hss}
% \DoNotIndex{\ifcase,\ifdim,\ifnum,\ifodd,\ifvoid,\ifvmode}
% \DoNotIndex{\ifx,\ignorespaces,\itshape}
+% \DoNotIndex{\kernel@ifnextchar}
% \DoNotIndex{\Large,\large,\leavevmode,\leftmargini,\leftskip,\let,\linewidth}
% \DoNotIndex{\llap,\long,\m@ne,\margin,\mdseries,\message}
% \DoNotIndex{\newcommand,\newdimen,\newlength,\newline,\newif,\newsavebox}
diff --git a/macros/latex/contrib/caption/caption-eng.pdf b/macros/latex/contrib/caption/caption-eng.pdf
deleted file mode 100644
index 866fef2063..0000000000
--- a/macros/latex/contrib/caption/caption-eng.pdf
+++ /dev/null
Binary files differ
diff --git a/macros/latex/contrib/caption/caption-eng.tex b/macros/latex/contrib/caption/caption-eng.tex
deleted file mode 100644
index 21a61546be..0000000000
--- a/macros/latex/contrib/caption/caption-eng.tex
+++ /dev/null
@@ -1,4458 +0,0 @@
-%
-% This is file `caption-eng.tex'.
-%
-% Copyright (C) 1994-2020 Axel Sommerfeldt (axel.sommerfeldt@f-m.fm)
-%
-% --------------------------------------------------------------------------
-%
-% This work may be distributed and/or modified under the
-% conditions of the LaTeX Project Public License, either version 1.3
-% of this license or (at your option) any later version.
-% The latest version of this license is in
-% http://www.latex-project.org/lppl.txt
-% and version 1.3 or later is part of all distributions of LaTeX
-% version 2003/12/01 or later.
-%
-% This work has the LPPL maintenance status "maintained".
-%
-% This Current Maintainer of this work is Axel Sommerfeldt.
-%
-% This work consists of the files
-% caption.ins, caption.dtx, caption-light.dtx, caption2.dtx, caption3.dtx,
-% caption-ams-smf.dtx, caption-beamer.dtx, caption-elsarticle.dtx,
-% caption-koma.dtx, caption-memoir.dtx, caption-ntg.dtx,
-% caption-thesis.dtx, bicaption.dtx, ltcaption.dtx, subcaption.dtx,
-% the derived files
-% caption.sty, caption-light.sty, caption2.sty, caption3.sty,
-% caption-ams-smf.sto, caption-beamer.sto, caption-elsarticle.sto,
-% caption-koma.sto, caption-memoir.sto, caption-ntg.sto,
-% caption-thesis.sto, bicaption.sty, ltcaption.sty, subcaption.sty,
-% and the user manuals
-% caption-deu.tex, caption-eng.tex, caption-rus.tex.
-%
-\NeedsTeXFormat{LaTeX2e}[1994/12/01]
-\ProvidesFile{caption-eng.tex}[2020/09/21 v3.5 The caption package]
-\hbadness=9999 \newcount\hbadness \hfuzz=20pt % Make TeX shut up.
-%\errorcontextlines=3
-
-\documentclass[USenglish]{ltxdoc}
-\setlength\parindent{0pt}
-\setlength\parskip{\smallskipamount}
-\setlength\leftmargini{2em}% default = 2.5em
-\makeatletter\g@addto@macro\MacroFont{\normalcolor}\makeatother
-
-\newcommand\LineBreak{\linebreak[3]}
-\newcommand\PageBreak{\pagebreak[3]}
-\usepackage{ifpdf}
-\ifpdf
- \usepackage{mathptmx,courier}
- \usepackage[scaled=0.90]{helvet}
- \addtolength\marginparwidth{15pt}
- \ifdim\paperheight=297mm % a4paper
- \renewcommand\LineBreak{\\}
- \renewcommand\PageBreak{\clearpage}
- \fi
-\fi
-
-\usepackage[bottom]{footmisc}
-\usepackage{graphicx,longtable,setspace}
-
-\usepackage{hypdoc}
-\ifpdf\usepackage{hypdestopt}\fi
-\hypersetup{pdfkeywords={LaTeX, package, caption},pdfstartpage={},pdfstartview={}}
-\hypersetup{breaklinks=true}
-
-\usepackage[listof=0,hypcap=false]{caption}[2008/04/01]
-
-\DeclareRobustCommand*\eTeX{\texorpdfstring
- {\leavevmode\hbox{$\varepsilon$}-\TeX}%
- {e-TeX}}
-\DeclareRobustCommand*\AmS{\texorpdfstring
- {{\protect\usefont{OMS}{cmsy}{m}{n}A\kern-.1667em\lower.5ex\hbox{M}\kern-.125emS}}%
- {AMS}}
-\DeclareRobustCommand*\KOMAScript{\texorpdfstring
- {\textsf{K\kern.05em O\kern.05em M\kern.05em A\kern.1em-\kern.1em Script}}%
- {KOMA-Script}}
-\DeclareRobustCommand*\NTG{NTG}
-\DeclareRobustCommand*\SmF{SMF}
-
-\usepackage{marvosym}
-\makeatletter
-\newcommand*\INFO{\@ifstar{\@INFO{}}{\@INFO{\vbox to \ht\strutbox}}}
-\newcommand*\@INFO[1]{\MARGINSYM{#1{\LARGE\Info}}}
-\makeatother
-
-\newcommand*\MARGINSYM[1]{\hskip 1sp \marginpar{\raggedleft\textcolor{blue}{{#1}}}}
-\newcommand*\NEW[2]{}%\hskip 1sp \marginpar{\footnotesize\sffamily\raggedleft#1\\#2}}
-
-% \ContinuedFloat
-\DeclareCaptionLabelFormat{continued1}{Continued #1~#2}
-\DeclareCaptionLabelFormat{continued2}{#1~#2\alph{ContinuedFloat}}
-% \DeclareCaptionLabelFormat
-\DeclareCaptionLabelFormat{bf-parens}{(\textbf{#2})}
-% \DeclareCaptionStyle
-\DeclareCaptionStyle{mystyle}[margin=5mm,justification=centering]%
- {font=footnotesize,labelfont=sc,margin={10mm,0mm}}
-% Example 1
-\DeclareCaptionFormat{myformat1}{#1#2\\#3}
-\newlength\myindention
-\DeclareCaptionFormat{myformat2}{#1#2\\\hspace*\myindention#3}
-\DeclareCaptionOption{myindention}{\setlength\myindention{#1}}
-% Example 2
-\DeclareCaptionFormat{reverse}{#3#2#1}
-\DeclareCaptionLabelFormat{fullparens}{(\bothIfFirst{#1}{~}#2)}
-\DeclareCaptionLabelSeparator{fill}{\hfill}
-% Example 3
-\DeclareCaptionFormat{llap}{\llap{#1#2}#3\par}
-\DeclareCaptionFormat{llapx}{\llap{\makebox[5em][l]{#1}}#3\par}
-% Example 4
-\DeclareCaptionLabelFormat{andtable}{#1~#2 \& \tablename~\thetable}
-
-\newcommand*\purerm[1]{{\upshape\mdseries\rmfamily #1}}
-\newcommand*\puresf[1]{{\upshape\mdseries\sffamily #1}}
-\newcommand*\purett[1]{{\upshape\mdseries\ttfamily #1}}
-\let\class\puresf \let\package\puresf
-
-\newcommand*\csmarg[1]{\texttt{\char`\{#1\char`\}}}
-\newcommand*\csoarg[1]{\texttt{\char`\[#1\char`\]}}
-\newcommand*\version[2][]{v$#2$}
-\newcommand*\x{\discretionary{}{}{}}
-
-\newenvironment{Annotation}%
- {\ifvmode\else\unskip\par\fi\pagebreak[2]%
- \smallskip
- \small(\ignorespaces}{\unskip)\par}
-\newenvironment{Annotation*}%
- {\ifvmode\else\unskip\par\fi\pagebreak[2]%
- \small(\ignorespaces}{\unskip)\par}
-
-\newenvironment{Example}%
- {\ifvmode\else\unskip\par\fi\pagebreak[2]%
- \minipage{\linewidth}\smallskip}%
- {\smallskip\endminipage\par}
-
-\makeatletter
-\newcommand\example{\@ifstar
- {\@example{belowskip=\abovecaptionskip}}%
- {\@example{}}}
-\def\@example#1{%
- \@testopt{\@@example{#1}}{figure}}
-\long\def\@@example#1[#2]#3#4{%
- \begingroup
- \captionsetup{#1,size=small,margin={\leftmargini,10pt},#3}%
- \captionof{#2}[]{#4}%
- \endgroup}
-\makeatother
-
-\newenvironment{Expert}%
- {\ifvmode\else\unskip\par\fi\pagebreak[3]%
- \smallskip
- \footnotesize\ignorespaces}{\par}
-\newenvironment{Expert*}%
- {\ifvmode\else\unskip\par\fi\pagebreak[3]%
- \footnotesize\ignorespaces}{\par}
-
-\newenvironment{Note}[1][\DefaultNoteText]%
- {\ifvmode\else\unskip\par\fi
- \smallskip
- \small\emph{#1:}~\ignorespaces}{\par}
-\newenvironment{Note*}[1][\DefaultNoteText]%
- {\ifvmode\else\unskip\par\fi
- \small\emph{#1:}~\ignorespaces}{\par}
-
-\newenvironment{Options}[1]%
- {\list{}{\renewcommand\makelabel[1]{\texttt{##1}\hfil}%
- \settowidth\labelwidth{\texttt{#1\space}}%
- \setlength\leftmargin{10pt}%
- \addtolength\leftmargin{\labelwidth}%
- \addtolength\leftmargin{\labelsep}}}%
- {\endlist}
-
-\makeatletter
-\def\Ref{\@ifstar{\@Ref\ref}{\@Ref\autoref}}
-\def\@Ref#1#2{#1{#2}: \textit{\nameref{#2}}}
-\newcommand*\SEE[3][]{\nopagebreak{#1(#2 #3)}}
-\newcommand*\SeeUserDefined[1][]{\See{\Ref{declare}#1}}
-\makeatother
-
-\begin{document}
-\let\subsectionautorefname\sectionautorefname
-\let\subsubsectionautorefname\sectionautorefname
-
-\def\thispackage{the \package{caption} package}
-\def\Thispackage{The \package{caption} package}
-
-\newcommand*\DefaultNoteText{Note}
-\newcommand*\NEWfeature{\NEW{New feature}}
-\newcommand*\NEWdescription{\NEW{New description}}
-\makeatletter
-\newcommand*\See{\@ifstar{\SEE{See}}{\SEE[\small]{See}}}
-\newcommand*\see{\@ifstar{\SEE{see}}{\SEE[\small]{see}}}
-\makeatother
-
-% --------------------------------------------------------------------------- %
-
-\GetFileInfo{caption-eng.tex}
-\let\docdate\filedate
-\let\docversion\fileversion
-\GetFileInfo{caption.sty}
-
-\title{Customizing captions of floating environments\texorpdfstring{%
- \thanks{This package has version number \docversion.}}{}}
-\author{Axel Sommerfeldt\\
- \url{https://gitlab.com/axelsommerfeldt/caption}}
-\date{\docdate}
-\maketitle
-
-% --------------------------------------------------------------------------- %
-
-\begin{abstract}
-\Thispackage\ offers customization of captions
-in floating environments such |figure| and |table| and cooperates with
-many other packages.
-\par\smallskip
-\textit{Please note:} Many document classes already have build-in options and
-commands for customizing captions.
-If these possibilities are sufficient for you, there is usually no need for
-you to use the \package{caption} package at all.
-And if you are only interested in using the command \cs{captionof}, loading of
-the very small \package{capt-of} package is usually sufficient.
-\end{abstract}
-
-\newcommand\exampletext{%
- White sand beaches. The pink smoothness of the conch shell. A sea abundant
- with possibilities. Duty-free shops filled with Europe's finest gifts and
- perfumes. Play your favorite game of golf amidst the tropical greens on one
- of the many championship courses.}
-
-% --------------------------------------------------------------------------- %
-
-\section*{State of this document}
-
-This documentation is outdated.
-
-It documents the options and commands available in version \version{3.1} of the
-\package{caption} package, but many things added later on is missing here. Why?
-\begin{itemize}
-\item
- I wasn't happy with the structure of the documentation, so I decided to write a new one.
- So why updating the abandoned documentation?
- (Unfortunately I never found the time to actually write the new one.)
-\item
- Since my spare time was extremly limited since version \version{3.1} I didn't
- wanted to hold improvements and enhancements back for months because of missing
- documentation.
-\item
- Since I used to fix bugs in the most recent development version only,
- I didn't wanted to hold bugfixes back for months because of missing
- documentation of features.
- (But since 2015 bugs will usually get fixed for the latest release version as well,
- and released to CTAN as bug-fixed version afterwards.)
-\end{itemize}
-
-What now?
-\begin{itemize}
-\item
- I will update this documentation in the next weeks, finally bringing it up-to-date.
-\item
- Until the revised documentation is ready the most recent version could be found at
- \url{https://gitlab.com/axelsommerfeldt/caption/-/blob/master/doc/caption-eng.pdf}
- since I will not upload every improvement of the documentation to CTAN immediately.
-\end{itemize}
-
-% --------------------------------------------------------------------------- %
-
-\section*{Introduction}
-
-Within the standard \LaTeX\ document classes captions haven't received the
-attention they deserve. Simply typeset as an ordinary paragraph there is no
-remarkable visual difference from the rest of the text, like here:
-
-\example*{size=normalsize,margin=0pt}{\exampletext}
-
-There should be possibilities to change this; for example, it would be nice
-to make the text of the caption a little bit smaller as the normal
-text, add an extra margin, typeset the caption label with the same font
-family and shape as your headings etc. Just like this one:
-
-\example*{size=small,margin=10pt,labelfont=bf,labelsep=endash}{\exampletext}
-
-You can do this easily with this package as there are many ready-to-use
-caption formatting options, but you are free to define your very own stuff, too.
-
-\bigskip
-
-\INFO\begin{minipage}[t]{\textwidth}
-\small
-Please note that \thispackage\ is only controlling the look \& feel of the
-captions. It does \emph{not} control the placement of the captions.
-(But you could do so by using other packages like the \package{floatrow}
- package\cite{floatrow}.)
-\end{minipage}
-
-% --------------------------------------------------------------------------- %
-
-\clearpage
-\tableofcontents
-
-% --------------------------------------------------------------------------- %
-
-\clearpage
-\section{Using this package}
-\label{usage}
-
-\DescribeMacro{\usepackage}
-Insert
-\begin{quote}
- |\usepackage|\oarg{options}|{caption}[|\texttt{\filedate}|]|
-\end{quote}
-into the preamble of your document, i.e.~the part of your document
-between |\document|\-|class| and |\begin{doc|\-|u|\-|ment}|.
-The options control how your captions will look like; e.g.,
-\begin{quote}
- |\usepackage[margin=10pt,font=small,labelfont=bf,|\\
- | labelsep=endash]{caption}|%
- %|[|\texttt{\filedate}|]|
-\end{quote}
-would result in captions looking like the second one in the introduction.
-
-\DescribeMacro{\captionsetup}
-For a later change of options \thispackage\ provides the command
-\begin{quote}
- |\captionsetup|\oarg{float type}\marg{options}\quad.
-\end{quote}
-So
-\begin{quote}
- |\usepackage[margin=10pt,font=small,labelfont=bf]{caption}|
-\end{quote}
-and
-\begin{quote}
- |\usepackage{caption}|\\
- |\captionsetup{margin=10pt,font=small,labelfont=bf}|
-\end{quote}
-are equal in their results.
-
-It's good to know that |\caption|\-|setup| has an effect on the current
-environment only. So if you want to change settings for the
-current |figure| or |table| only, just place the |\caption|\-|setup| command
-inside the |figure| or |table| right before the |\caption| command.
-For example
-\begin{quote}
- |\begin{figure}|\\
- | |\ldots\\
- | \captionsetup{singlelinecheck=off}|\\
- | \caption{|\ldots|}|\\
- |\end{figure}|
-\end{quote}
-switches the single-line-check off, but only for this |figure|,
-so all the other captions remain untouched.
-
-\begin{Annotation}
-For a detailed description of |\caption|\-|setup| see \Ref{captionsetup}.
-\end{Annotation}
-
-% --------------------------------------------------------------------------- %
-
-\clearpage
-\section{Options}
-\label{options}
-
-\def\OptionLabel{RaggedRight}
-\def\UserDefined{\ldots}
-
-% --------------------------------------------------------------------------- %
-
-\subsection{Formatting}
-\label{formats}
-
-\DescribeMacro{format=}
-A figure or table caption mainly consists of three parts: the caption label,
-which says if this object is a `Figure' or `Table' and what number is
-associated with it, the caption text itself, which is normally a short
-description of contents, and the caption separator which separates the text
-from the label.
-
-The \textit{caption format} determines how this information will be presented;
-it is specified with the option
-\begin{quote}
- |format=|\meta{format name}\quad,
-\end{quote}
-having the name of the caption format as its argument.
-
-There are two standard caption formats:
-%\footnote{You have the option to
-%define your own ones, too. See section \ref{declare}:
-%\textit{``Do it yourself!''} for details.}
-
-\begin{Options}{\OptionLabel}
- \item[plain]%\NEWdescription{v3.0h}
- Typesets the captions as a normal paragraph.
-
- \item[hang]
- Indents the caption text, so it will `hang' under the first line of the text.
-
- \item[\UserDefined]
- Own formats can be defined using |\Declare|\-|Caption|\-|Format|.\LineBreak
- \SeeUserDefined
-\end{Options}
-
-\begin{Example}
- An example: Specifying the option
- \begin{quote}
- |format=hang|
- \end{quote}
- yields captions like this:
- \example{format=hang}{\exampletext}
-\end{Example}
-
-\pagebreak[3]
-\DescribeMacro{indention=}
-For both formats (\texttt{plain} and \texttt{hang}) you can setup an extra
-indention starting at the second line of the caption. You do this with the
-option
-\begin{quote}
- |indention=|\meta{amount}\quad.
-\end{quote}
-
-Two examples:
-
-\begin{Example}
- \begin{quote}
- |format=plain,indention=.5cm|
- \end{quote}
- \captionsetup{skip=0pt}
- \example{format=plain,indention=.5cm}{\exampletext}
-\end{Example}
-
-\begin{Example}
- \begin{quote}
- |format=hang,indention=-0.5cm|
- \end{quote}
- \captionsetup{skip=0pt}
- \example{format=hang,indention=-0.5cm}{\exampletext}
-\end{Example}
-
-\bigskip
-
-\pagebreak[3]
-\DescribeMacro{labelformat=}
-With the option
-\nopagebreak[3]
-\begin{quote}
- |labelformat=|\meta{label format name}
-\end{quote}
-\nopagebreak[3]
-%\NEWdescription{v3.0e}
-you specify how the caption label will be typeset.
-There are five standard caption label formats:
-
-\begin{Options}{\OptionLabel}
- \item[original]
- The caption label will be typeset as specified by the document class,
- usually this means the name and the number (like \texttt{simple}).
-
- Until \version{3.4} of \thispackage\ this label format was called `default'.
- Since \version{3.5} it is called `original' and usually is the default label
- format, so |label|\-|format=|\-|default| will still select this label format,
- unless the default was changed by either a document class or babel language package.
-
- \item[empty]
- The caption label will be empty.
-\iffalse
- (This option makes sense when used together with other options like
- \texttt{labelsep=none}.)
-\fi
-
- \item[simple]
- The caption label will be typeset as a name and a number.
-
- \item[brace]\NEWfeature{v3.1f}
- The caption label will be closed with a single (right) brace.
-
- \item[parens]
- The number of the caption label will be typeset in parentheses.
-
- \item[\UserDefined]
- Own label formats can be defined using |\Declare|\-|Caption|\-|Label|\-|Format|.
- \SeeUserDefined
-\end{Options}
-
-\begin{Example}
- An example: Using the options
- \begin{quote}
- |format=plain,labelformat=parens,labelsep=quad|
- \end{quote}
- gives captions like this one:
- \example{format=plain,labelformat=parens,labelsep=quad}{\exampletext}
-\end{Example}
-
-\medskip
-
-\begin{Note*}
-Some environments, e.g.~the |algorithm| environment offered by the
-\package{algorithm2e} package, might react allergic to a change of the
-caption label format.
-\end{Note*}
-
-\bigskip
-
-\pagebreak[3]
-\DescribeMacro{labelsep=}
-With the option
-\begin{quote}
- |labelsep=|\meta{label separator name}
-\end{quote}
-you specify what caption separator will be used.\footnote{%
- If the caption label or the caption text is empty,
- no separator will be used.}
-You can choose one of the following:
-
-\begin{Options}{\OptionLabel}
- \item[none]
- There is no caption separator.
-\iffalse
- (This option makes sense when used together with other options like
- \texttt{labelformat=empty}.)
-\fi
-
- \item[colon]
- The caption label and text will be separated by a colon and a space.
-
- \item[period]
- The caption label and text will be separated by a period and a space.
-
- \item[space]
- The caption label and text will be separated by a single space.
-
- \item[quad]
- The caption label and text will be separated by a |\quad|.
-
- \item[newline]
- The caption label and text will be separated by a line break (|\\|).
- Please note that this separator does not work with all caption
- formats (e.g.~|format=|\x|hang|), and you'll get an error message
- trying such combination of options.
-
- \item[endash]\NEWfeature{v3.0h}
- The caption label and text will be separated by an en-dash,
- surrounded by spaces (\verb*| -- |).
-
-%\showhyphens{separator}
- \item[\UserDefined]
- Own separators can be defined using |\Declare|\-|Caption|\-|Label|\-|Sep|\-|a|\-|ra|\-|tor|.
- \SeeUserDefined
-\end{Options}
-
-Three examples:
-\begin{Example}
- \begin{quote}
- |format=plain,labelsep=period|
- \end{quote}
- \captionsetup{skip=0pt}
- \example{format=plain,labelsep=period}{\exampletext}
-\end{Example}
-
-\begin{Example}
- \begin{quote}
- |format=plain,labelsep=newline,singlelinecheck=false|
- \end{quote}
- \captionsetup{skip=0pt}
- \example{format=plain,labelsep=newline,singlelinecheck=false}{\exampletext}
-\end{Example}
-
-\begin{Example}
- \begin{quote}
- |format=plain,labelsep=endash|
- \end{quote}
- \captionsetup{skip=0pt}
- \example{format=plain,labelsep=endash}{\exampletext}
-\end{Example}
-
-\bigskip
-
-\pagebreak[3]
-\DescribeMacro{textformat=}\NEWfeature{v3.0l}
-With the option
-\nopagebreak[3]
-\begin{quote}
- |textformat=|\meta{text format name}
-\end{quote}
-\nopagebreak[3]
-you specify how the caption text will be typeset.
-There are two standard caption text formats:
-
-\begin{Options}{\OptionLabel}
- \item[empty]
- The caption text will be suppressed.
-
- \item[simple]
- The caption text will be typeset as it is.
-
- \item[period]
- The caption text will be followed by a period.
-
- \item[\UserDefined]
- Own text formats can be defined using |\Declare|\-|Caption|\-|Text|\-|Format|.
- \SeeUserDefined
-\end{Options}
-
-% --------------------------------------------------------------------------- %
-
-\PageBreak
-\subsection{Justification}
-\label{justification}
-
-\DescribeMacro{justification=}
-As addition to the caption format you could also specify a
-\emph{caption justification}; it is specified with the option
-\begin{quote}
- |justification=|\meta{justification name}\quad.
-\end{quote}
-
-You can choose one of the following:
-
-\begin{Options}{\OptionLabel}
- \item[justified]
- Typesets the caption as a normal paragraph.
-
- \item[centering]
- Each line of the caption will be centered.
-
-% \item[Centering]
-
- \item[centerlast]
- The last line of each paragraph of the caption text will be centered.
-
- \item[centerfirst]
- Only the first line of the caption will be centered.
-
- \item[raggedright]
- Each line of the caption will be moved to the left margin.
-
-\iffalse
- \item[RaggedRight]
- Each line of the caption will be moved to the left margin using
- the command |\RaggedRight| from the \package{ragged2e} package.
-\else
- \item[RaggedRight]
- Each line of the caption will be moved to the left margin, too.
- But this time the command |\RaggedRight| of the \package{ragged2e}
- package will be used to achieve this.
- The main difference to |raggedright| is that the word breaking
- algorithm of \TeX\ will work inside captions.\footnote{%
- The need for the \package{ragged2e} package will be detected at
- run-time, therefore you maybe need a second \LaTeX\ run if this
- option is used for the first time.}
-\fi
-
- \item[raggedleft]
- Each line of the caption will be moved to the right margin.
-
-% \item[RaggedLeft]
-% Each line of the caption will be moved to the right margin using
-% the command |\RaggedLeft| from the \package{ragged2e} package.
-
-%\showhyphens{justification}
- \item[\UserDefined]
- Own justifications can be defined using |\Declare|\-|Caption|\-|Jus|\-|ti|\-|fi|\-|ca|\-|tion|.
- \SeeUserDefined
-\end{Options}
-
-Three examples:
-\begin{Example}
- \begin{quote}
- |format=hang,justification=raggedright|
- \end{quote}
- \captionsetup{skip=0pt}
- \example{format=hang,justification=raggedright}{\exampletext}
-\end{Example}
-
-\begin{Example}
- \begin{quote}
- |format=hang,justification=centerlast|
- \end{quote}
- \captionsetup{skip=0pt}
- \example{format=hang,justification=centerlast}{\exampletext}
-\end{Example}
-
-\begin{Example}
- \begin{quote}
- |format=plain,labelsep=newline,justification=centering|
- \end{quote}
- \captionsetup{skip=0pt}
- \example*{format=plain,labelsep=newline,justification=centering}{\exampletext}
-\end{Example}
-
-\smallskip
-
-\PageBreak
-\DescribeMacro{singlelinecheck=}
-The standard \LaTeX\ document classes (\class{article}, \class{report}, and
-\class{book}) automatically center a caption if it fits in one single line:
-
-\example*{}{A short caption.}
-
-\INFO
-\Thispackage\ adapts this behavior and therefore usually ignores the
-justification \& indention you have set with |justification=| \&
-|indention=| in such case.
-But you can switch this special treatment of such short captions off
-with the option
-\begin{quote}
- |singlelinecheck=|\meta{bool}\quad.
-\end{quote}
-Using |false|, |no|, |off| or |0| for \meta{bool} switches the
-extra centering off:
-\begin{quote}
- |singlelinecheck=false|
-\end{quote}
-Doing so the above short caption would look like
-
-\begingroup
- \captionsetup{type=figure}
- \ContinuedFloat
- \example*{singlelinecheck=false}{A short caption.}
-\endgroup
-
-You switch the extra centering on again by using |true|, |yes|, |on| or |1|
-for \meta{bool}. (The default is on.)
-
-% --------------------------------------------------------------------------- %
-
-\subsection{Fonts}
-\label{fonts}
-
-\DescribeMacro{font=}
-\DescribeMacro{labelfont=}
-\DescribeMacro{textfont=}
-There are three font options which affects different parts of the caption:
-One affecting the whole caption (|font|), one which only affects the caption
-label and separator (|label|\-|font|) and at least one which only affects the
-caption text (|text|\-|font|).
-You set them up using the options
-\begin{quote}\begin{tabular}{@{}r@{}ll}
- |font=| & \marg{font options} & ,\\
- |labelfont=| & \marg{font options} & , and\\
- |textfont=| & \marg{font options} & ,\\
-\end{tabular}\end{quote}
-where \meta{font options} is a list of comma separated font options.
-
-And these are the available font options:
-
-\begin{Options}{stretch=\meta{amount}}
- \item[scriptsize] {\scriptsize Very small size}
- \item[footnotesize] {\footnotesize The size usually used for footnotes}
- \item[small] {\small Small size}
- \item[normalsize] {\normalsize Normal size}
- \item[large] {\large Large size}
- \item[Large] {\Large Even larger size}
-\end{Options}
-\vspace{0pt}\pagebreak[3]
-\begin{Options}{stretch=\meta{amount}}
- \item[normalfont] {\normalfont Normal shape \& series \& family}
-
- \item[up] {\upshape Upright shape}
- \item[it] {\itshape Italic shape}
- \item[sl] {\slshape Slanted shape}
- \item[sc] {\scshape Small Caps shape}
-
- \item[md] {\mdseries Medium series}
- \item[bf] {\bfseries Bold series}
-
- \item[rm] {\rmfamily Roman family}
- \item[sf] {\sffamily Sans Serif family}
- \item[tt] {\ttfamily Typewriter family}
-\end{Options}
-\vspace{0pt}\pagebreak[3]
-\begin{Options}{stretch=\meta{amount}}
- \item[singlespacing] Single spacing \See{\Ref{setspace}}
- \item[onehalfspacing] One-and-a-half spacing \See{\Ref{setspace}}
- \item[doublespacing] Double spacing \See{\Ref{setspace}}
- \item[stretch=\meta{amount}] |\setstretch|\marg{amount} \See{\Ref{setspace}}
-\end{Options}
-\vspace{0pt}\pagebreak[3]
-\begin{Options}{stretch=\meta{amount}}
- \item[normalcolor] |\normalcolor|
- \item[color=\meta{colour}] |\color|\marg{colour}
- {\small(If the \package{color} or \package{xcolor} package is loaded,
- see \Ref{declare} for an example)}
-\end{Options}
-\vspace{0pt}\pagebreak[3]
-\begin{Options}{stretch=\meta{amount}}
- \item[normal] The combination of the options |normal|\-|color|,
- |normal|\-|font|, |normal|\-|size|, and |single|\-|spacing|
-
- \item[\UserDefined]
- Own font options can be defined using |\Declare|\-|Caption|\-|Font|.
- \SeeUserDefined
-\end{Options}
-
-If you use only one of these options you can omit the braces;
-e.g., the options
-%\begin{quote}
- |font={small}|
-%\end{quote}
-and
-%\begin{quote}
- |font=small|
-%\end{quote}
-will give the same result.
-
-Three examples:
-\begin{Example}
- \begin{quote}
- |font=it,labelfont=bf|
- \end{quote}
- \captionsetup{skip=0pt}
- \example{font=it,labelfont=bf}{\exampletext}
-\end{Example}
-
-\begin{Example}
- \begin{quote}
- |labelfont=sc,textfont=it|
- \end{quote}
- \captionsetup{skip=0pt}
- \example{labelfont=sc,textfont=it}{\exampletext}
-\end{Example}
-
-\begin{Example}
- \begin{quote}
- |font={small,stretch=0.80}|
- \end{quote}
- \captionsetup{skip=0pt}
- \example{font={small,stretch=0.80}}{\exampletext}
-\end{Example}
-
-\medskip
-
-\pagebreak[3]
-\DescribeMacro{font+=}
-\DescribeMacro{labelfont+=}
-\DescribeMacro{textfont+=}
-\NEWfeature{v3.1f}
-You can also add font options to the current ones, so for example
-\begin{quote}
- |\captionsetup{font=small}|\\
- |\captionsetup{font+=it}|
-\end{quote}
-is identical to
-\begin{quote}
- |\captionsetup{font={small,it}}|
-\end{quote}
-
-% --------------------------------------------------------------------------- %
-
-\subsection{Margins and further paragraph options}
-\label{margins}
-
-\DescribeMacro{margin=}
-\DescribeMacro{width=}
-For all captions you can specify \emph{either} an extra margin \emph{or}
-a fixed width:~\footnote{Only fixed widths are supported here; if you are
-looking for a way to limit the width of the caption to the width of the
-figure or table, please take a look at the \package{floatrow}\cite{floatrow}
-or \package{threeparttable}\cite{threeparttable} package.}
-\begin{quote}\begin{tabular}{@{}r@{}ll}
- |margin=| & \meta{amount} & \emph{--or--}\\
- |margin=| & |{|\meta{left amount}|,|\meta{right amount}|}| & \emph{--or--}\\
- |width=| & \meta{amount} & \\
-\end{tabular}\end{quote}
-\NEWfeature{v3.1}
-If you specify just one \meta{amount} for the margin, it will be used for
-both, the left and right margin, e.g.~|margin=|\x|10pt| is equivalent to
-|margin=|\x|{10pt,10pt}|.
-In two-side documents the left and right margin will be swapped on even pages.
-\DescribeMacro{oneside}
-\DescribeMacro{twoside}
-To prevent this you can specify the option |oneside| additionally,
-e.g.~|\caption|\-|setup{margin=|\x|{0pt,10pt},|\x|oneside}|.\par
-But if you are specifying a width, then both, the left and the right margin,
-will have the same amount.
-
-Three examples will illustrating this:
-\begin{Example}
- \begin{quote}
- |margin=10pt|
- \end{quote}
- \captionsetup{skip=0pt}
- \example{margin=10pt}{\exampletext}
-\end{Example}
-
-\begin{Example}
- \begin{quote}
- |margin={1cm,0cm}|
- \end{quote}
- \captionsetup{skip=0pt}
- \example{margin={1cm,0cm}}{\exampletext}
-\end{Example}
-
-\begin{Example}
- \begin{quote}
- |width=.75\textwidth|
- \end{quote}
- \captionsetup{skip=0pt}
- \example{width=.75\textwidth}{\exampletext}
-\end{Example}
-
-\begin{Note}
-When the caption is placed beside the contents (for example in a |SC|\-|figure|
-environment offered by the \package{sidecap} package\cite{sidecap}) or the
-figure is an in-text figure (for example in a |wrap|\-|figure| environment
-offered by the \package{wrapfig} package\cite{wrapfig}), the margin setting
-will be automatically reset to |0pt| at the very beginning of the environment.
-But if you really want to setup an extra margin for these environments, you can
-do so by setting this margin either inside the environment itself, of by
-specifying a margin for this particular environment,
-e.g.~|\caption|\-|setup[SC|\-|figure]{margin=|\x|10pt}|.
-\end{Note}
-
-\begin{Expert}
-\DescribeMacro{margin*=}\NEWfeature{v3.1}
-There is also a starred variant of the |margin=| option, |margin*=|, which only
-changes the margin if no width was set.
-\end{Expert}
-
-\begin{Expert}
-\DescribeMacro{minmargin=}
-\DescribeMacro{maxmargin=}\NEWfeature{v3.1}
-You can also set a minimum or maximum margin amount. This can be useful for
-limiting the margin amount in smaller environments, e.g.~|minipage|s.
-For example the \SmF\ document classes limit the margin amount to
-|maxmargin=|\x|0.1\linewidth|. (See \Ref{SMF})
-\end{Expert}
-
-\medskip
-
-\pagebreak[3]
-\DescribeMacro{parskip=}
-This option is useful for captions containing more than one paragraph.
-It specifies the extra vertical space inserted between them:
-\begin{quote}
- |parskip=|\meta{amount}
-\end{quote}
-One example:
-\begin{Example}
- \begin{quote}
- |margin=10pt,parskip=5pt|
- \end{quote}
- \captionsetup{skip=0pt}
- \example{margin=10pt,parskip=5pt}{%
- First paragraph of the caption. This one contains some test, just to
- show how these options affect the layout of the caption.\par
- Second paragraph of the caption. This one contains some text, too, to
- show how these options affect the layout of the caption.}
-\end{Example}
-
-\pagebreak[3]
-\DescribeMacro{hangindent=}
-The option
-\begin{quote}
- |hangindent=|\meta{amount}
-\end{quote}
-is for setting up a hanging indention starting from the second line of each
-paragraph. If the caption contains just a single paragraph, using this option
-leads to the same result as the option |indention=|\meta{amount} you already
-know about.
-But if the caption contains multiple paragraphs you will notice the difference:
-
-\begin{Example}
- \begin{quote}
- |format=hang,indention=-.5cm|
- \end{quote}
- \captionsetup{skip=0pt}
- \example{format=hang,indention=-.5cm}{%
- First paragraph of the caption. This one contains some test, just to
- show how these options affect the layout of the caption.\par
- Second paragraph of the caption. This one contains some text, too, to
- show how these options affect the layout of the caption.}
-\end{Example}
-
-\begin{Example}
- \begin{quote}
- |format=hang,hangindent=-.5cm|
- \end{quote}
- \captionsetup{skip=0pt}
- \example{format=hang,hangindent=-.5cm}{%
- First paragraph of the caption. This one contains some test, just to
- show how these options affect the layout of the caption.\par
- Second paragraph of the caption. This one contains some text, too, to
- show how these options affect the layout of the caption.}
-\end{Example}
-
-\begin{Note}
-If your caption contains more than one paragraph, you have
-to specify an alternative caption for the list-of-figures using the
-optional argument of |\caption| or |\caption|\-|of|, otherwise you will
-get an error message.
-\end{Note}
-
-% --------------------------------------------------------------------------- %
-
-\PageBreak
-\subsection{Styles}
-\label{style}
-
-\DescribeMacro{style=}
-A suitable combination of caption options is called \emph{caption style}.
-You can compare them more or less to page styles which you set up with
-|\page|\-|style|;
-the caption style provides all settings for a whole caption layout.
-
-You switch to an already defined caption style with the option
-\begin{quote}
- |style=|\meta{style name}\quad.
-\end{quote}
-\Thispackage\ pre-defines two styles: |base| and |default|.
-
-\NEWfeature{v3.1}
-The |base| style puts all options you already know about to values reflecting
-the look of the captions when using one of the base \LaTeX\ document classes
-\class{article}, \class{report}, and \class{book}.
-This means that specifying the option
-\begin{quote}
- |style=base|
-\end{quote}
-has the same effect as specifying all these options:
-\begin{quote}
- |format=plain,labelformat=default,labelsep=colon,|\\
- |justification=justified,font={},labelfont={},|\\
- |textfont={},margin=0pt,indention=0pt|\\
- |parindent=0pt,hangindent=0pt,singlelinecheck=true|
-\end{quote}
-\begin{Annotation*}
-But |justification=centering,indention=0pt| will be set if
-the caption fits into a single line.
-\end{Annotation*}
-
-In contrast the |default| style follows the default values, reflecting
-the look of the captions given by the document class you actually use.
-This style is selected by default and represents these options:
-\begin{quote}
- |format=default,labelformat=default,labelsep=default,|\\
- |justification=default,font=default,labelfont=default,|\\
- |textfont=default,margin=0pt,indention=0pt|\\
- |parindent=0pt,hangindent=0pt,singlelinecheck=true|
-\end{quote}
-\begin{Annotation*}
-But again |justification=centering,indention=0pt| will be set if
-the caption fits into a single line.
-\end{Annotation*}
-
-So if you use one of the base \LaTeX\ document classes \class{article},
-\class{report}, or \class{book}, both caption styles, |base| and |default|,
-point to (nearly) the same settings.
-
-\begin{Note}
-Own caption styles can be defined using |\Declare|\-|Caption|\-|Style|.\LineBreak
-\SeeUserDefined
-\end{Note}
-
-% --------------------------------------------------------------------------- %
-
-\subsection{Skips}
-\label{skips}
-
-\DescribeMacro{skip=}\NEWfeature{v3.0d}
-The vertical space between the caption and the figure or table contents is
-controlled by the option
-\begin{quote}
- |skip=|\meta{amount}\quad.
-\end{quote}
-The standard \LaTeX\ document classes \class{article}, \class{report} and
-\class{book} preset it to |skip=|\x|10pt|, but other document classes may
-use a different amount.
-
-\bigskip
-
-\pagebreak[3]
-\DescribeMacro{position=}
-The |\caption| command offered by \LaTeX{} has a design flaw:
-The command does not know if it stands on the beginning of the figure or
-table, or at the end. Therefore it does not know where to put the space
-separating the caption from the content of the figure or table.
-While the standard implementation always puts the space above the caption
-in floating environments (and inconsistently below the caption in
-|long|\-|table|s), the implementation offered by this package is more
-flexible:
-By giving the option
-\begin{quote}
- |position=top|\quad or\quad |position=above|
-\end{quote}
-it's assumed that the caption is standing at the \emph{top} of the
-environment and therefore the space setup with |skip=|\x\meta{amount}
-is placed below the caption.
-(Please note that |position=|\x|top| does \emph{NOT} mean that the
-caption is actually placed at the top of the figure or table.
-Instead the caption is usually placed where you place the |\caption|
-command.)
-But with
-\begin{quote}
- |position=bottom|\quad or\quad |position=below|
-\end{quote}
-it's assumed that the caption is standing at the \emph{bottom} of the
-environment and therefore the space is placed above the caption.
-And finally with
-\begin{quote}
- |position=auto|\quad {\small(which is the default setting)}
-\end{quote}
-\thispackage\ tries its best to determine the actual position of
-the caption on its own. Please note that while this is successfully in
-most cases, it could give wrong results under rare circumstances.
-
-\medskip
-
-\pagebreak[3]
-\DescribeMacro{figureposition=}%\NEWfeature{v3.0a}
-\DescribeMacro{tableposition=}%\NEWfeature{v3.0a}
-The |position| option is especially useful when used together with the
-optional argument of the |\caption|\-|setup| command.
-\See{also \Ref{captionsetup}}\par
-For example
-\begin{quote}
- |\captionsetup[table]{position=above}|
-\end{quote}
-causes all captions within tables to be treated as captions \emph{above}
-the table (regarding spacing around it).
-Because this is a very common setting, \thispackage\ offers
-the abbreviating options |figure|\-|position=|\x\meta{pos} and
-|table|\-|position=|\x\meta{pos}, e.g.
-\begin{quote}
- |\usepackage[|\ldots|,tableposition=top]{caption}|
-\end{quote}
-is equivalent to
-\begin{quote}
- |\usepackage[|\ldots|]{caption}|\\
- |\captionsetup[table]{position=top}|
-\end{quote}
-
-\medskip
-
-\INFO
-Please note that the options |skip=|, |position=|, |figure|\-|position=|,
-and |table|\-|position=| do not always have an effect.
-Since it's a matter of the document class to supply the environments
-|figure| and |table|, it could use its very own spacing, and could
-decide for itself if the caption will be typeset as ``top'' or ``bottom''
-caption.
-For example the \KOMAScript\ document classes support the |skip=|
-setting, but will always typeset |figure| captions as ``bottom'' captions,
-and |table| captions are dependent on the global option
-|table|\-|captions|\-|above| resp.\ |table|\-|captions|\-|below|.
-\See{\Ref{KOMA}}
-
-Furthermore some packages control the behavior of the spacing above and
-below the caption for themself, e.g.~the \package{float}, the
-\package{floatrow}, and the \package{supertabular} package.
-
-\bigskip
-
-\begin{Expert*}
-Internally the skip between caption and contents is represented by
-|\above|\-|caption|\-|skip| (which is always set above the caption in
-\LaTeX{}s implementation).
-But there is a second value |\below|\-|caption|\-|skip| (usually set to
-|0pt| by default) which is set below the caption in \LaTeX{}s implementation,
-but on the other side than |\above|\-|caption|\-|skip| by this package.
-So technically speaking, this package swaps the meaning of these two skips
-when |position=|\x|top| is set.
-Please note that there are several packages around which do the same trick
-(like the \package{ftcap}, the \package{nonfloat}, and the \package{topcap}
-package), so the usage of the \package{caption} option |position=| is not
-supported if one of these packages will be used, too.
-\end{Expert*}
-
-% --------------------------------------------------------------------------- %
-
-\subsection{Lists}
-\label{lists}
-
-\DescribeMacro{list=}\NEWfeature{v3.1}
-The |\caption| command usually places an entry in the List of Figures
-resp.~List of Tables. You can either suppress that individually by giving an
-empty optional argument to |\caption| {\small(see \Ref{caption})}, or
-programmatically by saying
-\begin{quote}
- |list=no|\quad(or any other boolean value instead of |no|)\quad.~\footnote{%
- Please note that the \package{subfig} package\cite{subfig} is not supporting
- this option, it uses the counters \texttt{lofdepth} \& \texttt{lotdepth} for
- this purpose instead.}
-\end{quote}
-
-\pagebreak[3]
-\DescribeMacro{listformat=}\NEWfeature{v3.1}
-With the option
-\nopagebreak[3]
-\begin{quote}
- |listformat=|\meta{list format name}
-\end{quote}
-\nopagebreak[3]
-you can specify how the |figure| or |table| number will be typeset within
-the List of Figures resp.~List of Tables.
-There are five standard caption list formats:
-
-\begin{Options}{\OptionLabel}
- \item[empty]
- No number will be typeset.
-
- \item[simple]
- The number will be typeset with label prefix.
-
- \item[parens]
- The number will be typeset in parentheses, with label prefix.
-
- \item[subsimple]
- Same as |simple|, but without label prefix. (default)
-
- \item[subparens]
- Same as |parens|, but without label prefix.
-
- \item[\UserDefined]
- Own list formats can be defined using |\Declare|\-|Caption|\-|List|\-|Format|.
- \SeeUserDefined
-\end{Options}
-
-The prefix ($=$|\p@figure| resp.~|\p@table|), which runs ahead of the
-number ($=$|\the|\-|figure| resp.~|\the|\-|table|) in lists (e.g.~List of
-Figure/Table) and references, is usually empty,
-so the list formats |simple| and |subsimple| gives equal results;
-same with |parens| and |subparens|.
-But this can be different for sub-figures or sub-tables listed in the List of
-Figures resp.~List of Tables, or when the label prefix is redefined for a
-different purpose.\footnote{%
- Sub-figures and sub-tables can be typeset using the \package{subcaption}
- or \package{subfig} package.}
-
-% --------------------------------------------------------------------------- %
-
-\subsection{Names}
-\label{names}
-
-\DescribeMacro{name=}\NEWfeature{v3.1f}
-The option
-\begin{quote}
- |name=|\meta{name}
-\end{quote}
-changes the name of the \emph{current} environment.
-This could be useful in conjunction with the optional argument of
-|\caption|\-|setup|, e.g.
-\begin{quote}
- |\captionsetup[wrapfigure]{name=Fig.}|
-\end{quote}
-changes the name to ``Fig.'' for all |wrap|\-|figure|s (while all the other
-figure captions will still have ``Figure'' as name).
-
-% --------------------------------------------------------------------------- %
-
-\subsection{Types}
-\label{types}
-
-\DescribeMacro{type=}\NEWfeature{v3.0d}
-The |\caption| command can typeset captions for different types,
-e.g.~|figure| and |table|. If you try to use the |\caption| command outside
-these environments you will get an error message, because it does not know what
-kind of caption do you want to have here. But in such situations you can set
-the caption type manually with
-\begin{quote}
- |type=|\meta{float type}
-\end{quote}
-prior to the usage of the |\caption| command (and other commands like
-|\Continued|\-|Float|, or |\sub|\-|caption|\-|box| offered by the
-\package{subcaption} package, or |\sub|\-|float| offered by the
-\package{subfig} package\cite{subfig}),
-for example within an non-floating environment like |minipage|:
-\begin{quote}
- |\noindent\begin{minipage}{\textwidth}|\\
- | \captionsetup{type=figure}|\\
- | \subfloat{|\ldots|}|\\
- | |\ldots\\
- | \caption{|\ldots|}|\\
- |\end{minipage}|
-\end{quote}
-
-\begin{Expert}
-There is also a starred variant of this option, |type*=|\meta{float type},
-which behaves different than |type=|\meta{float type} if the
-\package{hyperref} package\cite{hyperref} is loaded: While |type=| sets an
-hyperlink anchor (if |hypcap=|\x|true| is set), |type*=| does not.
-(See also \Ref{hyperref}\,)
-\end{Expert}
-\begin{Expert}
-\emph{\DefaultNoteText:} Please don't re-define the internal macro |\@captype|
-for yourself, like suggested by some documentations, always use
-|\caption|\-|setup{type=|\x\ldots|}| instead.
-\end{Expert}
-
-\medskip
-
-Own float types can be defined with
- |\Declare|\-|Floating|\-|Environment| offered by the \package{newfloat} package,
- |\new|\-|float| offered by the \package{float} package\cite{float}, or
- |\Declare|\-|New|\-|Float|\-|Type| offered by the \package{floatrow} package\cite{float}.
-
-\medskip
-
-\INFO % \NEWdescription{v3.1}
-Please note that you should use the option |type=| only
-\emph{inside} boxes or environments (like |\par|\-|box| or |mini|\-|page|),
-at best one where no page break could happen between contents and caption.
-Furthermore some visual side-effects (e.g.~mixed-up figure and table settings
-regarding captions) could occur without using a box or environment,
-therefore a warning message will be issued if you try to do so.\footnote{%
-You only get this warning message if you use \eTeX\ as underlying \TeX\ engine.}
-
-% --------------------------------------------------------------------------- %
-
-\clearpage
-\section{Commands}
-
-\subsection{Typesetting captions}
-\label{caption}
-\label{captionlistentry}
-
-\DescribeMacro{\caption}
-The command
-\begin{quote}
- |\caption|\oarg{list entry}\marg{heading}
-\end{quote}
-typesets the caption inside a floating environment like |figure| or |table|.
-Well, you already know this, but \thispackage\ offers an extension:
-If you leave the argument \meta{list entry} empty, no entry in the list of
-figures or tables will be made. For example:
-\begin{quote}
- |\caption[]{A figure without list entry.}|
-\end{quote}
-
-\begin{Expert}
-Please remember that the \meta{heading} is a so-called \emph{moving} argument,
-if no \meta{list entry} has been given. But if a \meta{list entry} is given,
-this argument is moving instead.
-``\emph{Moving} argument'' means that the argument will be written to the
-list-of file, make it appearing in the ``List of Figures'' resp.
-``List of Tables'', too.
-\emph{Moving} arguments are not allowed to contain \emph{fragile} commands,
-everything must be \emph{robust}, otherwise the argument could get
-\emph{broken}, resulting in strange errors at the next \LaTeX\ run.
-Some \emph{fragile} commands could be \emph{protected} by a leading |\protect|,
-own definitions could get defined with |\Declare|\-|Robust|\-|Command| instead of
-|\new|\-|command| to make them \emph{robust}.
-
-An example: |\caption{${}^{137}_{\phantom{1}55}$Cs}| will cause errors since
-|\phantom| is \emph{fragile}.
-So we have either have to use the optional argument \meta{list entry}
-(e.g.~|\caption[${}^|\x|{137}_|\x|{55}$|\x|Cs]|\x|{${}^|\x|{137}_|\x|{\phantom{1}55}$|\x|Cs}|)
-or add |\protect| to prevent the |\phantom| command from getting \emph{broken}:
-|\caption{${}^|\x|{137}_|\x|{|\textcolor{blue}{\cs{protect}}|\phantom{1}55}$|\x|Cs}|.
-
-But sometimes even this is not sufficient. The reason behind is the so-called
-single-line-check: It puts the \meta{heading} into a horizontal box to determine
-the width of the caption, and this could cause error messages, too.
-An example:
-|\caption{A| |scheme.| |\[V_{C}| |\sim| |\left| |\{| |\begin{array}{cc}|
-|E_{g}| |&| |\textrm{p-n}| |\\| |e\phi_{B}| |&| |\textrm{M-S}| |\end{array}|
-|\right.| |\]}|.
-Using |\caption[A| |scheme]{|\ldots|}| is not sufficient here, it's still
-leading to errors. (``\texttt{Missing \$ inserted.}'')
-So we have to put a |\caption|\-|setup{single|\-|line|\-|check=|\x|off}|
-just in front of the |\caption| command additionally.
-
-For more information about \emph{moving} arguments and \emph{fragile} \&
-\emph{robust} commands, take a closer look at your \LaTeX\ manual or visit
-\url{http://www-h.eng.cam.ac.uk/help/tpl/textprocessing/teTeX/latex/latex2e-html/fragile.html}.
-\end{Expert}
-
-\medskip
-
-\pagebreak[3]
-\DescribeMacro{\caption*}
-The \package{longtable} package defines the command |\caption*| which
-typesets the caption without label and without entry in the list of tables.
-An example:
-\begin{quote}
- |\begin{longtable}{|\ldots|}|\\
- | \caption*{A table}\\|\\
- | |\ldots\\
- |\end{longtable}|
-\end{quote}
-looks like
-\DeleteShortVerb{\|}
-\vskip\intextsep
-\begin{minipage}{\linewidth}
- \captionsetup{type=table,position=t}
- \caption*{A table}
- \centering
- \begin{tabular}{r|rr}
- & x & y \\\hline
- a & 1 & 2 \\
- b & 3 & 4 \\
- \end{tabular}
-\end{minipage}
-\vskip\intextsep
-\MakeShortVerb{\|}
-\Thispackage\ offers this feature, too, so you can use this command now within
-every floating environment like |figure| or |table|, like:
-\begin{quote}
- |\begin{table}|\\
- | \caption*{A table}|\\
-% | \begin{tabular}{|\ldots|}|\\
-% | |\ldots\\
-% | \end{tabular}|\\
- | |\ldots\\
- |\end{table}|
-\end{quote}
-
-\pagebreak[3]
-\DescribeMacro{\captionof}
-\DescribeMacro{\captionof*}
-Sometimes you want to typeset a caption \emph{outside} a floating environment,
-putting a figure within a non-floating |mini|\-|page| for instance.
-For this purpose \thispackage\ offers the command
-\begin{quote}
- |\captionof|\marg{float type}\oarg{list entry}\marg{heading}\quad.
-\end{quote}
-Note that the first argument, the \meta{float type}, is mandatory here, because
-the |\captionof| command needs to know which name to put into the caption label
-(e.g. ``Figure'' or ``Table'') and in which list to put the contents entry.
-An example:
-\begin{quote}
-% |\captionof{figure}{A figure}|\\
- |\captionof{table}{A table}|
-\end{quote}
-typesets captions like this:
-\begin{Example}
-% \begingroup
-% \captionof{figure}{A figure}
-% \endgroup
- \captionsetup{position=top}
-% \begingroup
- \captionof{table}{A table}
-% \endgroup
-\end{Example}
-
-The star variant |\caption|\-|of*| has the same behavior as the |\caption*|
-command:
-It typesets the caption without label and without entry to the list of figures
-or tables.
-
-\INFO % \NEWdescription{v3.1}
-Since |\caption|\-|of| uses the option |type| internally, the same
-restrictions as for the |type| option apply here, so you should use both
-|\caption|\-|of| and |\caption|\-|of*| only \emph{inside} boxes or
-environments, too.
-\See{\Ref{types}}
-
-\bigskip
-
-\pagebreak[3]
-\DescribeMacro{\captionlistentry}\NEWfeature{v3.1}
-Under certain circumstances it could be useful to make a list-of-figure
-(or table) entry on its own.
-This could be achieved with
-\begin{quote}
- |\captionlistentry|\oarg{float type}\marg{list entry}\quad.
-\end{quote}
-
-One example: It's quite easy to have a |long|\-|table| with captions above the
-contents and a single list entry which points to the first page of the table:
-\begin{quote}
- |\begin{longtable}{|\ldots|}|\\
- | \caption{|\ldots|}\\|\\
- |\endfirsthead|\\
- | \caption[]{|\ldots|}\\|\\
- |\endhead|\\
- | |\ldots
-\end{quote}
-But since the \package{longtable} package does not offer an
-|\end|\-|first|\-|foot| command, you cannot easily have captions \emph{below}
-the table contents and a single list entry which points to the first page of
-the table.
-Here is were the |\caption|\-|list|\-|entry| command could be used:
-\begin{quote}
- |\begin{longtable}{|\ldots|}|\\
- | \caption[]{|\ldots|}\\|\\
- |\endfoot|\\
- | \captionlistentry{|\ldots|}|\\
- | |\ldots
-\end{quote}
-
-\begin{Annotation*}
-Another example can be found in \Ref{examples}.
-\end{Annotation*}
-
-\begin{Expert}
-There is also a starred variant, |\caption|\-|list|\-|entry*|, which does not
-increment the \meta{float type} counter.
-(Note that inside |long|\-|table| environments |\caption|\-|list|\-|entry|
-never increments the |table| counter. See also \Ref{longtable}.)
-\end{Expert}
-
-\begin{Expert}
-Please note that \meta{list entry} is a \emph{moving} argument, so everything
-it contains must be \emph{robust}. (See also explanation of |\caption|)
-\end{Expert}
-
-\subsection{Setting options}
-\label{captionsetup}
-
-\DescribeMacro{\captionsetup}
-We already know the |\caption|\-|setup| command (see \Ref{usage}),
-but this time we get enlighten about its optional argument
-\meta{float type}.
-
-Remember, the syntax of this command is
-\begin{quote}
- |\captionsetup|\oarg{float type}\marg{options}\quad.
-\end{quote}
-If a \meta{float type} gets specified, all the \meta{options} don't
-change anything at this time. Instead they only get marked for a later use,
-when a caption inside of a floating environment of the particular type
-\meta{float type} gets typeset.
-For example
-\begin{quote}
- |\captionsetup[figure]|\marg{options}
-\end{quote}
-forces captions within a |figure| environment to use the given \meta{options}.
-
-Here comes an example to illustrate this:
-\begin{quote}
- |\captionsetup{font=small}|\\
- |\captionsetup[figure]{labelfont=bf,textfont=it}|
-\end{quote}
-gives captions like this:
-\begin{Example}
- \captionsetup{font=small}
- \captionsetup[figure]{labelfont=bf,textfont=it}
- \begingroup
- \captionof{figure}{A figure}
- \endgroup
- \captionsetup{position=top}
- \begingroup
- \captionof{table}{A table}
- \endgroup
-\end{Example}
-As you see the command |\caption|\-|setup[figure]{|\ldots|}| only changes
-the look of the |figure| caption labels, not touching the other ones.
-
-As \meta{float type} you can usually give one of these two only:
-|figure| or |table|.
-But as we will see later some \LaTeX\ packages (like the \package{floatrow},
-\package{longtable}, and \package{sidecap} package for example) and also
-this package offer additional environments with captions and these two
-commands can also be used with them.
-\See{\Ref{declare} and \Ref{packages}}
-
-\begin{Expert}
-\NEWfeature{v3.1}
-There is also a starred variant of |\caption|\-|setup|:
-\begin{quote}
- |\captionsetup*|\oarg{float type}\marg{options}
-\end{quote}
-While the non-starred variant can give you warnings---for example if the
-\meta{options} are actually not used throughout the document
-(e.g.~a |\caption|\-|setup[table]{font=|\x|sf}| without a |table|)---the
-starred variant will not.
-\iffalse
-This can get quite useful when setting generic options which are independent
-of a specific document.
-\fi
-\end{Expert}
-
-\medskip
-
-\pagebreak[3]
-\DescribeMacro{\clearcaptionsetup}
-If you want to get rid of these parameters marked for an automatic use within
-a particular environment you can use the command
-\begin{quote}
- |\clearcaptionsetup|\oarg{option}\marg{float type}\quad.
-\end{quote}
-
-For example |\clearcaptionsetup{figure}| would clear all the extra handling
-for figures in the example above:
-\begin{quote}
- |\captionsetup{font=small}|\\
- |\captionsetup[figure]{labelfont=bf,textfont=it}|\\
- \ldots\\
- | \caption{A figure}|\\
- \ldots\\
- |\clearcaptionsetup{figure}|\\
- \ldots\\
- | \caption{A figure}|\\
- \ldots
-\end{quote}
-\begin{Example}
- \captionsetup{font=small}
- \captionsetup[figure]{labelfont=bf,textfont=it}
- \begingroup
- \captionof{figure}{A figure}
- \endgroup
- \captionsetup{position=top}
- \clearcaptionsetup{figure}
- \begingroup
- \captionof{figure}{A figure}
- \endgroup
-\end{Example}
-
-\pagebreak[3]
-\NEWfeature{v3.1}
-If an optional argument \meta{option} is given, only the settings regarding
-this particular \meta{option} are cleared.\footnote{You can only specify
-\emph{one} option here, not a list of options.
-If you want to clean more than one option, you need to use more than one
-\cs{clear}\-\texttt{caption}\-\texttt{setup}.}
-While the example above not only clears the options
-|labelfont=bf,|\x|textfont=it|
-for figures (but all options for figures instead),
-this one would only clear the |labelfont=bf| setting, leaving all other
-settings for figures intact:
-\begin{quote}
- |\captionsetup{font=small}|\\
- |\captionsetup[figure]{labelfont=bf,textfont=it}|\\
- \ldots\\
- | \caption{A figure}|\\
- \ldots\\
- |\clearcaptionsetup[labelfont]{figure}|\\
- \ldots\\
- | \caption{A figure}|\\
- \ldots
-\end{quote}
-\begin{Example}
- \captionsetup{font=small}
- \captionsetup[figure]{labelfont=bf,textfont=it}
- \begingroup
- \captionof{figure}{A figure}
- \endgroup
- \captionsetup{position=top}
- \clearcaptionsetup[labelfont]{figure}
- \begingroup
- \captionof{figure}{A figure}
- \endgroup
-\end{Example}
-\begin{Expert}
-Analogous to |\caption|\-|setup*| there is also a starred form
-|\clear|\-|caption|\-|setup*| which suppresses warnings if the given
-\meta{option} was not setup for the specified \meta{float type}.
-\end{Expert}
-
-\medskip
-
-\pagebreak[3]
-\DescribeMacro{\showcaptionsetup}
-For debugging purposes the command
-\nopagebreak[3]
-\begin{quote}
- |\showcaptionsetup|\marg{float type}
-\end{quote}
-\nopagebreak[3]
-is offered. It generates a log file entry, showing the given options
-for the specified \meta{float type}. For example
-\begin{quote}
- |\captionsetup[figure]{labelfont=bf,textfont=it}|\\
- |\showcaptionsetup{figure}|
-\end{quote}
-gives the info:
-\begin{quote}\small
- |Caption Info: Option list on `figure'|\\
- |Caption Data: {labelfont=bf,textfont=it} on input line 5.|
-\end{quote}
-
-\pagebreak[3]
-\subsection{Continued floats}
-\label{ContinuedFloat}
-
-\DescribeMacro{\ContinuedFloat}
-Sometimes you want to split figures or tables without giving them
-their own reference number. This is what the command
-\begin{quote}
- |\ContinuedFloat|
-\end{quote}
-is for; it should be used as first command inside the floating environment.
-It prevents the incrementation of the relevant counter (usually done by
-|\caption|), so a figure or table containing a |\Continued|\-|Float| inside
-gets the same reference number as the figure or table before.
-An example:
-\begin{quote}
- |\begin{table}|\\
- | \caption{A table}|\\
- | |\ldots\\
- |\end{table}|\\
- \ldots\\
- |\begin{table}\ContinuedFloat|\\
- | \caption{A table (cont.)}|\\
- | |\ldots\\
- |\end{table}|
-\end{quote}
-gives the following result:
-\begin{Example}
- \captionsetup{type=table,position=b,skip=0pt}
- \caption{A table}
- \centerline{\ldots}
-\end{Example}
-\begin{Example}
- \captionsetup{type=table,position=b,skip=0pt}
- \ContinuedFloat
- \caption{A table (cont.)}
- \centerline{\ldots}
-\end{Example}
-
-\bigskip
-
-\NEWfeature{v3.1}
-Furthermore the |\Continued|\-|Float| command executes options associated with
-the type name ``|Continued|\-|Float|''. For example this can be used to switch
-to a different label format for continued figures or tables, as shown here:
-\begin{quote}
- |\DeclareCaptionLabelFormat{continued}{Continued #1~#2}|\\
- |\captionsetup[ContinuedFloat]{labelformat=continued}|\\
- \ldots\\
- |\begin{table}\ContinuedFloat|\\
- | \caption{A table}|\\
- | |\ldots\\
- |\end{table}|
-\end{quote}
-\begin{Example}
- \captionsetup{type=table,position=b,skip=0pt}
- \captionsetup[ContinuedFloat]{labelformat=continued1}
- \ContinuedFloat
- \caption{A table}\label{continued1}
- \centerline{\ldots}
-\end{Example}
-\smallskip
-\See{\Ref{declare} for an explanation of
- \cs{Declare}\-\texttt{Caption}\-\texttt{Label}\-\texttt{Format}.}
-
-\medskip
-
-There is also a \LaTeX\ counter called |Continued|\-|Float| which could be
-used for own purposes.
-For ordinary (floating) environments it's set to zero, to one for the first
-continued float, to two inside the second one, and so on.
-So every |\Continued|\-|Float| increments this counter and a floating
-environment without |\Continued|\-|Float| command resets this counter to zero.
-An example:
-\begin{quote}
- |\DeclareCaptionLabelFormat{cont}{#1~#2\alph{ContinuedFloat}}|\\
- |\captionsetup[ContinuedFloat]{labelformat=cont}|\\
- \ldots\\
- |\begin{table}\ContinuedFloat|\\
- | \caption{A table}|\\
- | |\ldots\\
- |\end{table}|
-\end{quote}
-\begin{Example}
- \captionsetup{type=table,position=b,skip=0pt}
- \captionsetup[ContinuedFloat]{labelformat=continued2}
- \ContinuedFloat
- \caption{A table}\label{continued2}
- \centerline{\ldots}
-\end{Example}
-\medskip
-A reference to this table would still result in the output
-``\autoref{continued2}'' since only the caption label format was changed.
-If you would like to use the |Continued|\-|Float| counter for the references,
-too, you could redefine the command |\the|\-|Continued|\-|Float| instead,
-which will be appended to the figure or table counter automatically in
-continued floats and is preset to be empty.
-\begin{quote}
- |\renewcommand\theContinuedFloat{\alph{ContinuedFloat}}|\\
- \ldots\\
- |\begin{table}\ContinuedFloat|\\
- | \caption{A table}|\\
- | |\ldots\\
- |\end{table}|
-\end{quote}
-\begin{Example}
- \captionsetup{type=table,position=b,skip=0pt}
- \renewcommand\theContinuedFloat{\alph{ContinuedFloat}}
- \ContinuedFloat
- \caption{A table}\label{continued3}
- \centerline{\ldots}
-\end{Example}
-\medskip
-A reference to that table would result in the output ``\autoref{continued3}''.
-
-\pagebreak[3]
-\DescribeMacro{\ContinuedFloat*}
-Suppose you want to start the first figure or table of such a series with a
-kind of ``Figure 7a'' and not with ``Figure 7'' (and the second one with
-``Figure 7b'' instead of ``Figure 7a'').
-This is possible, too, by using the starred variant |\Continued|\-|Float*|
-which---just like |\Continued|\-|Float|---executes options associated with the
-type name ``|Continued|\-|Float|'' and increments the \LaTeX\ counter
-|Continued|\-|Float|, \emph{but} marks the first figure or table of a series
-instead:
-\begin{quote}
- |\renewcommand\theContinuedFloat{\alph{ContinuedFloat}}|\\
- \ldots\\
- |\begin{figure}\ContinuedFloat*|\\
- | |\ldots\\
- | \caption{First figure of a series}|\\
- |\end{figure}|\\
- \ldots\\
- |\begin{figure}\ContinuedFloat|\\
- | |\ldots\\
- | \caption{Second figure of a series}|\\
- |\end{figure}|\\
- \ldots\\
- |\begin{figure}\ContinuedFloat|\\
- | |\ldots\\
- | \caption{Third figure of a series}|\\
- |\end{figure}|
-\end{quote}
-\begin{Example}
- \captionsetup{type=figure,position=b,skip=0pt}
- \renewcommand\theContinuedFloat{\alph{ContinuedFloat}}
- \begingroup
- \ContinuedFloat*
- \centerline{\ldots}
- \caption{First figure of a series}
- \endgroup
- \begingroup
- \ContinuedFloat
- \centerline{\ldots}
- \caption{Second figure of a series}
- \endgroup
- \begingroup
- \ContinuedFloat
- \centerline{\ldots}
- \caption{Third figure of a series}
- \endgroup
-\end{Example}
-\smallskip
-\Note{Unfortunately \cs{ContinuedFloat*} is not available if the
- \package{subfig} package\cite{subfig} is loaded.}
-
-\pagebreak[3]
-\subsubsection*{A note about longtables}
-If you want to have a different caption label in |long|\-|table|s (offered
-by the \package{longtable} package\cite{longtable}) after a page break,
-this can \emph{not} be archived by using |\Continued|\-|Float|,
-but instead you could write something like:
-\begin{quote}
- |\DeclareCaptionLabelFormat{continued}{Continued #1~#2}|\\
- \ldots\\
- |\begin{longtable}{|\ldots|}|\\
- | \caption{A longtable}\\|\\
- |\endfirsthead|\\
- | \captionsetup{labelformat=continued}|\\
- | \caption[]{A longtable}\\|\\
- |\endhead|\\
- | |\ldots\\
- |\end{longtable}|
-\end{quote}
-
-% --------------------------------------------------------------------------- %
-
-\clearpage
-\section{Own enhancements}
-\label{declare}
-
-A family of commands is provided to allow users to define their own formats
-etc.
-This enables information on separators, justification, fonts, and styles to
-be associated with a name and kept in one place.
-(These commands need to appear in the document preamble,
-this is the part between |\document|\-|class| and |\begin{document}|.)
-
-\pagebreak[3]
-\DescribeMacro{\DeclareCaption-\\Format}
-You can define your own caption formats using the command
-\begin{quote}
- |\DeclareCaptionFormat|\marg{name}\marg{code using \#1, \#2 and \#3}\mbox{\quad.}
-\end{quote}
-At usage the system replaces \#1 with the caption label, \#2 with the
-separator and \#3 with the text. So the standard format |plain| is
-pre-defined by \thispackage\ as
-\begin{quote}
- |\DeclareCaptionFormat{plain}{#1#2#3\par}|\quad.
-\end{quote}
-\begin{Expert}
-There is also a starred variant, |\Declare|\-|Caption|\-|Format*|,
-which causes the code being typeset in \TeX s vertical (instead of
-horizontal) mode, but does not support the |indention=| option.
-\end{Expert}
-
-\pagebreak[3]
-\DescribeMacro{\DeclareCaption-\\LabelFormat}
-Likewise you can define your own caption label formats:
-\begin{quote}
- |\DeclareCaptionLabelFormat|\marg{name}\marg{code using \#1 and \#2}
-\end{quote}
-At usage \#1 gets replaced with the name (e.g. ``figure'') and \#2
-gets replaced with the reference number (e.g. ``12'').
-An example:
-\begin{quote}
- |\DeclareCaptionLabelFormat{bf-parens}{(\textbf{#2})}|\\
- |\captionsetup{labelformat=bf-parens,labelsep=quad}|
-\end{quote}
-\example*{labelformat=bf-parens,labelsep=quad}{\exampletext}
-
-\pagebreak[3]
-\DescribeMacro{\bothIfFirst}
-\DescribeMacro{\bothIfSecond}
-If you define your own caption label formats and use the
-\package{subcaption} or \package{subfig}\cite{subfig} package,
-you should take care of empty caption label names.
-For this purpose the commands
-\begin{quote}
- |\bothIfFirst|\marg{first arg}\marg{second arg}\quad and\\
- |\bothIfSecond|\marg{first arg}\marg{second arg}
-\end{quote}
-are offered. |\bothIfFirst| tests if the first argument exists (means: is
-not empty), |\bothIfSecond| tests if the second argument exists. If yes,
-both arguments get typeset, otherwise none of them.
-
-\smallskip
-
-\pagebreak[3]
-For example the standard label format |simple| is \emph{not} defined as
-\begin{quote}
- |\DeclareCaptionLabelFormat{simple}{#1~#2}|\mbox{\quad,}
-\end{quote}
-because this could cause an extra space if \#1 is empty. Instead |simple|
-is defined as
-\begin{quote}
- |\DeclareCaptionLabelFormat{simple}%|\\
- | {\bothIfFirst{#1}{~}#2}|\mbox{\quad,}
-\end{quote}
-causing the space to appear only if the label name is present.
-
-\smallskip
-
-\pagebreak[3]
-\DescribeMacro{\DeclareCaption-\\TextFormat}\NEWfeature{v3.0l}
-Likewise you can define your own caption text formats:
-\begin{quote}
- |\DeclareCaptionTextFormat|\marg{name}\marg{code using \#1}
-\end{quote}
-At usage \#1 gets replaced with the caption text.
-
-\bigskip
-
-\pagebreak[3]
-\DescribeMacro{\DeclareCaption-\\LabelSeparator}
-You can define your own caption label separators with
-\begin{quote}
- |\DeclareCaptionLabelSeparator|\marg{name}\marg{code}\mbox{\quad.}
-\end{quote}
-Again an easy example taken from \thispackage\ itself:
-\begin{quote}
- |\DeclareCaptionLabelSeparator{colon}{: }|
-\end{quote}
-\begin{Expert}
-There is also a starred variant, |\Declare|\-|Caption|\-|Label|\-|Separator*|,
-which causes the code being typeset without using the |label|\-|font=| setting.
-So for example the label separators |quad|, |new|\-|line|, and |en|\-|dash|
-are defined in this way.
-\end{Expert}
-
-\bigskip
-
-\pagebreak[3]
-\DescribeMacro{\DeclareCaption-\\Justification}
-You can define your own caption justifications with
-\begin{quote}
- |\DeclareCaptionJustification|\marg{name}\marg{code}\mbox{\quad.}
-\end{quote}
-The \meta{code} simply gets typeset just before the caption.
-E.g.~using the justification |raggedright|, which is defined as
-\begin{quote}
- |\DeclareCaptionJustification{raggedright}{\raggedright}|\mbox{\quad,}
-\end{quote}
-typesets captions with all lines moved to the left margin.
-
-\bigskip
-
-\pagebreak[3]
-\DescribeMacro{\DeclareCaption-\\Font}
-You can define your own caption fonts with
-\begin{quote}
- |\DeclareCaptionFont|\marg{name}\marg{code}\quad.
-\end{quote}
-For example this package defines the options |small| and |bf| as
-\begin{quote}
- |\DeclareCaptionFont{small}{\small}|\quad and\\
- |\DeclareCaptionFont{bf}{\bfseries}|\quad.
-\end{quote}
-\iffalse
-The line spacing could be customized using the \package{setspace} package,
-for example:%\NEWdescription{v3.0h}
-\begin{quote}
- |\usepackage{setspace}|\\
- |\DeclareCaptionFont{singlespacing}{\setstretch{1}}|~\footnote{%
- \emph{\DefaultNoteText:} Using \cs{singlespacing} does not work here since
- it contains a \cs{vskip} command.}\\
- |\DeclareCaptionFont{onehalfspacing}{\onehalfspacing}|\\
- |\DeclareCaptionFont{doublespacing}{\doublespacing}|\\
- |\captionsetup{font={onehalfspacing,small},labelfont=bf}|
-\end{quote}
-\example{font={onehalfspacing,small},labelfont=bf,singlelinecheck=off}{\exampletext}
-\fi
-An example which brings color into life:
-\begin{quote}
- |\usepackage{color}|\\
- |\DeclareCaptionFont{red}{\color{red}}|\\
- |\DeclareCaptionFont{green}{\color{green}}|\\
- |\DeclareCaptionFont{blue}{\color{blue}}|\\
- |\captionsetup{labelfont={blue,bf},textfont=green}|
-\end{quote}
-\example*{labelfont={color=blue,bf},textfont={color=green},singlelinecheck=off}{\exampletext}
-But since \thispackage\ already includes the tricky definition
-\begin{quote}
- |\DeclareCaptionFont{color}{\color{#1}}|
-\end{quote}
-you can get the same result simply with
-\begin{quote}
- |\usepackage{color}|\\
- |\captionsetup{labelfont={color=blue,bf},|\\
- | textfont={color=green}}|\quad.
-\end{quote}
-
-\medskip
-
-\pagebreak[3]
-\DescribeMacro{\DeclareCaption-\\Style}
-You can define your own caption styles with
-\begin{quote}
- |\DeclareCaptionStyle|\marg{name}\oarg{additional options}\marg{options}\mbox{\quad.}
-\end{quote}
-Remember, caption styles are just a collection of suitable options, saved
-under a given name. You can wake up these options at any time with the
-option |style=|\meta{style name}.
-
-All caption styles are based on the |base| set of options. (See \Ref{style}
-for a complete list.) So you only need to specify options which are different
-to them.
-
-If you specify \meta{additional options} they get used in addition when
-the caption fits into a single line and this check was not disabled with
-the option |single|\-|line|\-|check=off|.
-
-Again a very easy example taken from the core of this package: The
-caption style |base| is pre-defined as
-\begin{quote}
- |\DeclareCaptionStyle{base}%|\\
- | [justification=centering,indention=0pt]{}|\quad.
-\end{quote}
-
-Something more exciting:
-\begin{quote}
- |\DeclareCaptionStyle{mystyle}%|\\
- | [margin=5mm,justification=centering]%|\\
- | {font=footnotesize,labelfont=sc,margin={10mm,0mm}}|\\
- |\captionsetup{style=mystyle}|
-\end{quote}
-gives you caption like these ones:
-\begin{Example}
- \captionsetup{type=figure,style=mystyle,position=b}
- \caption{A short caption.}
- \caption{A long long long long long long long long long
- long long long long long long long long long
- long long long long long long long long long caption.}
-\end{Example}
-
-\bigskip
-
-\pagebreak[3]
-\DescribeMacro{\DeclareCaption-\\ListFormat}\NEWfeature{v3.1}
-You can define your own caption list formats with
-\begin{quote}
- |\DeclareCaptionListFormat|\marg{name}\marg{code using \#1 and \#2}\mbox{\quad.}
-\end{quote}
-At usage \#1 gets replaced with the label prefix (e.g.~|\p@figure|),
-and \#2 gets replaced with the reference number (e.g.~|\thefigure|).
-
-% --------------------------------------------------------------------------- %
-
-\subsection{Further examples}
-\label{examples}
-
-\subsubsection*{Example 1}
-
-%\NEWdescription{v3.1}
-If you would like to have a line break between caption label and text
-you could define it this way:
-\begin{quote}
- |\DeclareCaptionFormat{myformat}{#1#2\\#3}|
-\end{quote}
-If you select this format with |\caption|\-|setup{format=|\x|myformat}|
-you get captions like this:
-%\begin{Example}
-% \captionsetup{skip=0pt}
- \example{format=myformat1,labelfont=bf}{\exampletext}
-%\end{Example}
-You could even use an indention with this caption format:
-\begin{quote}
- |\captionsetup{format=myformat,indention=1cm}|
-\end{quote}
-This would look like this:
-%\begin{Example}
-% \captionsetup{skip=0pt}
- \example{format=myformat1,indention=1cm,labelfont=bf}{\exampletext}
-%\end{Example}
-Instead, you would like to have an indention only of the first line of
-the caption text? No problem, e.g.
-\begin{quote}
- |\newlength\myindention|\\
- |\DeclareCaptionFormat{myformat}%|\\
- | {#1#2\\\hspace*{\myindention}#3}|\\
- \ldots\\
- |\setlength\myindention{1cm}|\\
- |\captionsetup{format=myformat}|
-\end{quote}
-would give you captions like
-%\begin{Example}
-% \captionsetup{skip=0pt}
- \example{format=myformat2,myindention=1cm,labelfont=bf}{\exampletext}
-%\end{Example}
-But you want to have an caption option for this indention, so you can use
-it for example with
-|\caption|\-|setup|\x|[figure]|\x|{my|\-|indention=|\x\ldots|}|?
-This could be done, too:
-\begin{quote}
- |\newlength\myindention|\\
- |\DeclareCaptionOption{myindention}%|\\
- | {\setlength\myindention{#1}}|\\
- |\DeclareCaptionFormat{myformat}%|\\
- | {#1#2\\\hspace*{\myindention} #3}|\\
- \ldots\\
- |\captionsetup{format=myformat,myindention=1cm}|
-\end{quote}
-would give the same result as the example above.
-
-\subsubsection*{Example 2}
-
-You want captions to look like this:
-%\begin{Example}
-% \captionsetup{skip=0pt}
- \example{format=reverse,labelformat=fullparens,labelsep=fill,labelfont=it}{\exampletext}
-%\end{Example}
-\pagebreak[2]
-You could do it this way:
-\nopagebreak[3]
-\begin{quote}
- |\DeclareCaptionFormat{reverse}{#3#2#1}|\\
- |\DeclareCaptionLabelFormat{fullparens}%|\\
- | {(\bothIfFirst{#1}{~}#2)}|\\
- |\DeclareCaptionLabelSeparator{fill}{\hfill}|\\
- |\captionsetup{format=reverse,labelformat=fullparens,|\\
- | labelsep=fill,font=small,labelfont=it}|
-\end{quote}
-
-\subsubsection*{Example 3}
-
-The caption text should go into the left margin? A possible solution would be:
-\begin{quote}
- |\DeclareCaptionFormat{llap}{\llap{#1#2}#3\par}|\\
- |\captionsetup{format=llap,labelsep=quad,singlelinecheck=no}|
-\end{quote}
-As a result you would get captions like this:
-\example{format=llap,labelsep=quad,singlelinecheck=no,margin=0pt}{\exampletext}
-
-\medskip
-
-If the indention into the margin shall be fixed, you could use a combination
-of |\llap| and |\makebox|, for example:
-\begin{quote}
- |\DeclareCaptionFormat{llapx}%|\\
- | {\llap{\makebox[5em][l]{#1}}#3\par}|\\
- |\captionsetup{format=llapx,singlelinecheck=off}|
-\end{quote}
-\example{format=llapx,singlelinecheck=off,skip=0pt,margin=0pt}{\exampletext}
-
-\subsubsection*{Example 4}
-
-This example puts a figure aside a table, but uses only one common caption for both.
-This will be achieved by a combination of
-|\Declare|\-|Caption|\-|Label|\-|Format| and |\caption|\-|list|\-|entry|:
-\begin{quote}
- |\DeclareCaptionLabelFormat{andtable}%|\\
- | {#1~#2 \& \tablename~\thetable}|\\
- \ldots\\
- |\begin{figure}|\\
- | \centering|\\
- | \includegraphics{|\ldots|}%|\\
- | \qquad|\\
- | \begin{tabular}[b]{\ldots}|\\
- | |\ldots\\
- | \end{tabular}|\\
- | \captionlistentry[table]{|\ldots|}|\\
- | \captionsetup{labelformat=andtable}|\\
- | \caption{|\ldots|}|\\
- |\end{figure}|
-\end{quote}
-\DeleteShortVerb{\|}%
-\noindent\begin{minipage}{\linewidth}
- \captionsetup{type=figure}
- \centering
- \includegraphics[width=30pt]{cat}%
- \qquad
- \begin{tabular}[b]{r|rr}
- & x & y \\\hline
- a & 1 & 2 \\
- b & 3 & 4 \\
- \end{tabular}
- \captionlistentry[table]{A figure and a table with a common caption}
- \captionsetup{labelformat=andtable}
- \caption{A figure and a table with a common caption~\footnotemark}
-\end{minipage}
-\footnotetext{The picture was taken with permission from the
- \LaTeX\ Companion\cite{TLC2} examples.}
-\MakeShortVerb{\|}
-
-(Please remember that |\caption|\-|list|\-|entry| increments the figure
- resp.~table counter.)
-
-% --------------------------------------------------------------------------- %
-
-\clearpage
-\section{Supported document classes}
-\label{classes}
-
-%\NEWdescription{v3.1}
-This section will give you an overview of the document classes the
-\package{caption} supports, what do they already offer regarding captions,
-what side effects will occur when using the \package{caption} package with
-them, and what are the `default' settings for them.
-
-\NEWfeature{v3.1}
-The `default' settings depend on the document class you use; they represent
-how the class author wanted the captions to look like. So for example
-setting |format=|\x|default| can give you different visual designs when used
-with different document classes.
-
-\begingroup\setlength\leftmargini{0.3em}% default = 2.5em
-\INFO
-If you don't find the document class you use in this section, you usually
-don't have to worry: Many document classes (e.g.~the \class{octavo} class)
-are derived from one of the standard document classes \class{article},
-\class{report}, or \class{book}, and behave the same regarding captions.
-\Thispackage\ automatically does a compatibility check against the document
-class used and will give you the clear warning
-\begin{quote}\footnotesize
- |Package caption Warning: Unsupported document class (or package) detected,|\\
- |(caption) usage of the caption package is not recommended.|\\
- |See the caption package documentation for explanation.|
-\end{quote}
-if such an incompatibility was detected.
-If you don't get such warning everything is fine, but if you get it the
-usage of \thispackage\ is not recommended and especially not supported.
-\endgroup
-
-\begin{Expert}
-If you get such a compatibility warning but decide to use \thispackage{}
-anyway, you should watch carefully what side-effects occur, usually the
-look and feel of your captions will change by just including \thispackage{}
-without options, meaning they do not look like as intended by the author
-of the document class.
-If this is fine for you, you should first specify the option |style=|\x|base|
-via |\use|\-|package[style=|\x|base]{caption}| or
-|\caption|\-|setup{style=|\x|base}| to set \thispackage\ into a well-defined
-state.
-Afterwards you can start setting your own options additionally and
-keep your fingers crossed.
-\end{Expert}
-
-\newcommand*\Option{Option}
-\newcommand*\defaultvalue{\texttt{default} value}
-\newcommand*\uses{\textit{uses}}
-\newcommand*\settings{\textit{settings}}
-\newcommand*\nofont{\textit{none}}
-
-\subsection{Standard \LaTeX: article, report, and book}
-
-\begin{tabular}{ll}
-\Option & \defaultvalue \\\hline
-|format=| & |plain| \\
-|labelformat=| & |simple| \\
-|labelsep=| & |colon| \\
-|justification=| & |justified| \\
-|font=| & \nofont \\
-|labelfont=| & \nofont \\
-|textfont=| & \nofont \\
-\end{tabular}
-
-\begin{Annotation}
-This also applies to document classes derived from them.
-\end{Annotation}
-
-\subsection{\AmS: amsart, amsproc, and amsbook}
-\label{AMS}
-
-\begin{tabular}{ll}
-\Option & \defaultvalue \\\hline
-|format=| & |plain| \\
-|labelformat=| & |simple| \\
-|labelsep=| & |.\enspace| \\
-|justification=| & |justified| \\
-|font=| & |\@captionfont| \\
-|labelfont=| & |\@captionheadfont| \\
-|textfont=| & |\@captionfont\upshape| \\
-\end{tabular}
-
-\begin{Annotation*}
-|\@caption|\-|font| will be set to |\normal|\-|font|, and
-|\@caption|\-|head|\-|font| to |\sc|\-|shape| by the \AmS\ document classes.
-\end{Annotation*}
-
-Furthermore the margin will be set to |\caption|\-|indent| for
-more-than-one-line captions (which will be set to |3pc| by the \AmS\ classes),
-the margin for single-line captions will be set to the half of it instead.
-If you want to use a common margin for both, insert
-|\clear|\-|caption|\-|setup[margin*]{single|\-|line}|
-into the preamble of your document, after loading \thispackage.
-
-Additionally the options |figure|\-|position=b,|\x|table|\-|position=t|
-will be set. You can override these settings by specifying other values for
-|figure|\-|position=| or |table|\-|position=| in the option list while
-loading \thispackage.
-
-\subsection{beamer}
-\label{beamer}
-
-\begin{tabular}{ll}
-\Option & \defaultvalue \\\hline
-|format=| & |plain| \\
-|labelformat=| & \textit{not numbered} \\
-|labelsep=| & |colon| \\
-|justification=| & |raggedright| \\
-|font=| & \class{beamer} ``|caption|'' \settings \\
-|labelfont=| & \class{beamer} ``|caption name|'' \settings \\
-|textfont=| & \nofont \\
-\end{tabular}
-
-\subsubsection*{Build-in features, and side-effects}
-You can setup font and color settings with
-|\set|\-|beamer|\-|font{caption}|\marg{options} and
-|\set|\-|beamer|\-|font{caption name}|\marg{options}.
-This will still work, unless you set a different font with
-|\caption|\-|setup{font=|\x\meta{options}|}| or
-|\caption|\-|setup{label|\-|font=|\x\meta{options}|}|.\par
-Furthermore the \class{beamer} classes offer different caption templates
-which can be chosen with
-|\set|\-|beamer|\-|template|\x|{caption}|\x|[|\meta{template}|]|.
-Since \thispackage\ replaces this caption template mechanism,
-|\def|\-|beamer|\-|template*|\x|{caption}|\x\marg{template code}
-and
-|\set|\-|beamer|\-|template|\x|{caption}|\x|[|\meta{template}|]|
-will have no effect when \thispackage\ is used.
-(Exception: Selecting the template |default|, |num|\-|bered|, or
-|caption| |name| |own| |line| will be recognized by \thispackage and be mapped
-to corresponding options.)
-
-\subsection{\KOMAScript: scrartcl, scrreprt, and scrbook}
-\label{KOMA}
-
-\begin{tabular}{ll}
-\Option & \defaultvalue \\\hline
-|format=| & \uses\ |\setcapindent| \textit{\&} |\setcaphanging| \settings \\
-|labelformat=| & \textit{like \purett{simple}, but with support of ``autodot''}\\
-|labelsep=| & |\captionformat| \\
-|justification=| & |justified| \\
-|font=| & |\setkomafont{caption}| \settings \\
-|labelfont=| & |\setkomafont{captionlabel}| \settings \\
-|textfont=| & \nofont \\
-\end{tabular}
-
-\subsubsection*{Build-in features}
-The \KOMAScript\ document classes offer many ways to customize the look and
-feel of the captions. For an overview and a full description please take a
-look at the \KOMAScript\ documentation, section `Tables and Figures'.
-
-\subsubsection*{Side effects}
-The optional argument of |\set|\-|cap|\-|width| is not supported and
-will be ignored if used in conjunction with the \package{caption} package.
-Furthermore the \KOMAScript\ options |table|\-|caption|\-|above| \&
-|table|\-|caption|\-|below| and the commands |\caption|\-|above| \&
-|\caption|\-|below| are stronger than the |position=| setting offered by
-the \package{caption} package.
-
-\subsection{\NTG: artikel, rapport, and boek}
-\label{NTG}
-
-\begin{tabular}{ll}
-\Option & \defaultvalue \\\hline
-|format=| & |plain| \\
-|labelformat=| & |simple| \\
-|labelsep=| & |colon| \\
-|justification=| & |justified| \\
-|font=| & \nofont \\
-|labelfont=| & |\CaptionLabelFont| \\
-|textfont=| & |\CaptionTextFont| \\
-\end{tabular}
-
-\subsubsection*{Build-in features, and side-effects}
-|\Caption|\-|Label|\-|Font| and |\Caption|\-|Text|\-|Font| can be set either
-directly or by using |\Caption|\-|Fonts|.
-Both is still supported unless you use one of the two options
-|label|\-|font=| or |text|\-|font=| offered by \thispackage.
-
-\subsection{\SmF: smfart and smfbook}
-\label{SMF}
-
-Since the \SmF\ document classes are derived from the \AmS\ document classes
-the same default values are valid here.
-
-Additionally the margin is limited up to the tenth of the |\line|\-|width|.
-If you don't like this limitation, you can switch it off with the option
-|max|\-|margin=|\x|off| or |max|\-|margin=|\x|false|
-(which both means the same).
-
-\subsection{thesis}
-\label{thesis}
-
-\begin{tabular}{ll}
-\Option & \defaultvalue \\\hline
-|format=| & |hang| \\
-|labelformat=| & \textit{like \purett{simple}, but with short name}\\
-|labelsep=| & |colon| \\
-|justification=| & |justified| \\
-|font=| & \nofont \\
-|labelfont=| & |\captionheaderfont| \\
-|textfont=| & |\captionbodyfont| \\
-\end{tabular}
-
-\subsubsection*{Build-in features, and side-effects}
-The caption label font can be set with |\caption|\-|header|\-|font|,
-the caption text font with |\caption|\-|body|\-|font|.
-Both is still supported unless you use one of the two options
-|label|\-|font=| or |text|\-|font=| offered by \thispackage.
-
-% --------------------------------------------------------------------------- %
-
-\clearpage
-\section{Supported babel package options}
-\label{babel}
-
-\NEWfeature{v3.5}
-Since version \version{3.5} of the \package{caption} package the support
-is independent on the load order of \package{caption} and \package{babel}.
-
-\subsection{french babel option}
-\label{french}
-
-If you use the \package{french} option of the \package{babel} package
-with one of the three standard \LaTeX{} classes (or a one derived from them)
-the default |label|\-|sep=| will be set to |\Caption|\-|Sep|\-|a|\-|ra|\-|tor|
-(offered by \package{french}), overriding the default value set by the
-document class.
-So redefining |\Caption|\-|Sep|\-|a|\-|ra|\-|tor| will still work, unless you
-don't select a different |label|\-|sep=| than the default one.
-
-% --------------------------------------------------------------------------- %
-
-\clearpage
-\section{Supported packages}
-\label{packages}
-\label{compatibility}
-
-%\NEWdescription{v3.1}
-\Thispackage\ was adapted to the following packages which deals with
-captions, too:
-\begin{quote}
- \package{float}, \package{floatflt}, \package{fltpage},
- \package{hyperref}, \package{hypcap}, \package{listings},
- \package{longtable}, \package{picinpar}, \package{picins},
- \package{rotating}, \package{setspace}, \package{sidecap},
- \package{subfigure}, \package{supertabular}, \package{threeparttable},
- \package{wrapfig}, and \package{xtab}
-\end{quote}
-
-Furthermore the \package{floatrow} package\cite{floatrow}, the
-\package{subcaption} package (which is part of the \package{caption} package
-bundle), and the \package{subfig} package\cite{subfig} support \thispackage{}
-and use its |\caption|\-|setup| interface.
-
-\bigskip
-
-\begingroup\setlength\leftmargini{0.3em}% default = 2.5em
-\INFO
-If a package (or document class) unknown to \thispackage\ redefines
-the |\caption| command as well, this redefinition will be preferred
-over the one this package offers, providing maximum compatibility and
-avoiding conflicts.
-If such a potential incompatibility is detected, you will see this
-warning message:~\footnote{%
- You can suppress this warning by specifying the option
- \texttt{compatibility=true} when loading \thispackage.}
-\begin{quote}\footnotesize
- |Package caption Warning: \caption will not be redefined since it's already|\\
- |(caption) redefined by a document class or package which is|\\
- |(caption) unknown to the caption package.|\\
- |See the caption package documentation for explanation.|
-\end{quote}
-\endgroup
-
-As a result, the following features offered by \thispackage\ will not be available:
-\begin{itemize}
- \item the options |labelformat=|, |position=auto|, |list=|, and |listformat=|
- \item |\caption*| (to produce a caption without label)
- \item |\caption[]{|\ldots|}| (to produce no entry in the List of Figures or Tables)
- \item |\caption{}| (to produce an empty caption without label separator)
- \item |\ContinuedFloat|
- \item correctly justified captions in environments like \texttt{wide} and
- \texttt{addmargin} which add extra margins
- \item the \textsf{hypcap} feature \See{\Ref{hyperref}\,}
- \item the sub-caption feature \See{\package{subcaption} package documentation}
-\end{itemize}
-
-\DescribeMacro{compatibility=}
-You can override this compatibility mode by specifying the option
-\begin{quote}
- |compatibility=false|
-\end{quote}
-when loading \thispackage.
-But please note that using this option is neither recommended nor supported
-since unwanted side-effects or even errors could occur afterwards.
-(For that reason you will get a warning about this.)
-
-\newcommand\packagedescription[1]{%
- \ifvmode\else\par\fi
- \nopagebreak
- \parbox[b]{\linewidth}{\footnotesize\leftskip=10pt\rightskip=10pt\relax#1}\par
- \nopagebreak\smallskip\nopagebreak}
-
-\PageBreak
-\subsection{algorithms}
-\label{algorithms}
-\packagedescription{%
-The \package{algorithms} package bundle\cite{algorithms} provides two
-environments: The \texttt{algorithmic} environment provides a possibility
-for describing algorithms, and the \texttt{algorithm} environment provides
-a ``float'' wrapper for algorithms.}
-
-Since the \texttt{algorithm} environment is implemented via |\new|\-|float|
-provided by the \package{float} package\cite{float}, please see \Ref{float}.
-
-\iffalse
-\pagebreak[3]
-\subsection{algorithm2e}
-\label{algorithm2e}
-\packagedescription{%
-The \package{algorithm2e} package\cite{algorithm2e} offers an environment for
-writing algorithms in LaTeX2e.}
-
-Since the \package{algorithm2e} package does not use some kind of standard
-interface for defining its floating environment (e.g.~|\newfloat| of the
-\package{float} package) and typesetting its caption,
-the \package{algorithm2e} package is \emph{not} supported by \thispackage.
-
-So if you want to customize the captions using \thispackage,
-you have to build a new environment which uses a supported interface regarding
-floats (e.g. using the \package{float} or \package{floatrow} package),
-and combine this environment with the internal \package{algorithm2e} code.
-
-As first step you could define a non-floating environment \texttt{algorithmic},
-for example:
-\begin{quote}
- |\usepackage{algorithm2e}|\\
- |% save the "algorithm" environment from the algorithm2e package|\\
- |\let\ORIGalgorithm\algorithm|\\
- |\let\ORIGendalgorithm\endalgorithm|\\
- |% define the algorithmic environment|\\ % , based on the saved environment
- |\newenvironment{algorithmic}%|\\
- | {\renewenvironment{algocf}[1][h]{}{}% pass over floating stuff|\\
- | \ORIGalgorithm}%|\\
- | {\ORIGendalgorithm}|\\
- \ldots
-\end{quote}
-Having defined this non-floating environment, you could define your own new
-floating environment with |\newfloat| of the \package{float} package
-(or |\DeclareNewFloatType| of the \package{floatrow} package),
-and use the combination of this floating environment and \texttt{algorithmic}
-in its body, just like you would do when you use the
-\package{algorithm}/\package{algorithmic} package tandem.
-
-You could even use the \package{algorithm} package for this purpose, for example:
-\begin{quote}
- \ldots\\
- |% load the algorithm package to re-define the|\\
- |% floating environment "algorithm" and \listofalgorithms|\\
- |\let\listofalgorithms\undefined|\\
- |\usepackage{algorithm}|\\
- \ldots\\
- |% Example usage:|\\
- |\begin{algorithm}|\\
- |\caption{An algorithm}|\\
- |\begin{algorithmic}|\\
- | \SetVline|\\
- | \eIf{cond1}{|\\
- | a line\;|\\
- | }{|\\
- | another line\;|\\
- | }|\\
- |\end{algorithmic}|
-\end{quote}
-Now you are finally able to customize the float and caption layout like every
-other floating environment defined with the \package{float} package\cite{float},
-please see \Ref{float}.
-
-\begin{Annotation}
-An alternative would be using the \package{algorithmicx} package.
-\end{Annotation}
-\fi
-
-\pagebreak[3]
-\subsection{float}
-\label{float}
-\packagedescription{%
-The \package{float} package\cite{float} introduces the commands
-\cs{restylefloat} to give existing floating environments a new look \& feel
-and \cs{newfloat} to define new floating environments.
-It also provides the ``\texttt{H}'' float placement option which places
-the environments ``here'' instead of letting them floating around.}
-
-For floating environments defined with \cs{newfloat} or \cs{restylefloat} the
-|po|\-|si|\-|tion| option has no effect on the main caption anymore, since its
-placement and spacing will be controlled by the selected float style instead.
-
-A caption style and options defined with the name of the float style will be
-executed additionally to the regular ones.
-Using this mechanism \thispackage\ emulates the default look \& feel of the
-|ruled| captions: It defines the caption style
-\begin{quote}
- |\DeclareCaptionStyle{ruled}%|\\
- | {labelfont=bf,labelsep=space,strut=off}|\mbox{\quad.}
-\end{quote}
-So to change this you need either define your own caption style called
-|ruled| or use |\caption|\-|setup[ruled]|\marg{options} to specify additional
-options.%,
-%e.g.~|\caption|\-|setup[ruled]{labelsep=|\x|colon}|.
-
-Also by using this mechanism the skip between a |boxed| float and its caption
-is specified, overriding its global value:
-\begin{quote}
- |\captionsetup[boxed]{skip=2pt}|
-\end{quote}
-For changing this, just use |\caption|\-|setup[boxed]{skip=|\x\meta{value}|}|
-with an appropriate value. Or if you want to use the global |skip| setting
-instead, you can remove the usage of the local setting for these floats with
-|\clear|\-|caption|\-|setup[skip]{boxed}|.
-
-\begin{Note}
-Only one single caption can be typeset inside environments defined with
-|\new|\-|float| or |\re|\-|style|\-|float|, furthermore these environments
-are not behaving exactly like the pre-defined floats |figure| and |table|.
-As a consequence many packages do not cooperate well with these.
-Furthermore the \package{float} package has some caveats \& limitations,
-so if you just want to define a new simple floating environment---behaving
-like |figure| or |table|---I recommend using |\Declare|\-|Floating|\-|Environment|
-offered by the \package{newfloat} package instead.
-And for defining non-simple floating environments and customization I
-recommend using |\Declare|\-|New|\-|Float|\-|Type| offered by the
-\package{floatrow} package\cite{floatrow}.
-\end{Note}
-
-\iffalse
-Please also note that you \emph{don't} need a |\restyle|\-|float| for using
-the ``|H|'' float placement specifier. Some docs say so, but they are
-wrong.
-And |\restyle|\-|float{table}| is a very good method to shoot yourself
-in the foot, since many packages using |table| internally are not working
-correctly afterwards.
-\fi
-
-\pagebreak[3]
-\subsection{floatflt}
-\label{floatflt}
-\packagedescription{%
-The \package{floatflt} package\cite{floatflt} offers figures and tables
-which do not span the full width of a page and are float around by text.}
-
-\NEWfeature{v3.1}
-If you want to setup special options for the |float|\-|ing|\-|figure| and
-|float|\-|ing|\-|table| environments you can use
-\begin{quote}
- |\captionsetup[floatingfigure]|\marg{options}\quad\emph{and}\\
- |\captionsetup[floatingtable]|\marg{options}\quad.
-\end{quote}
-These options will be executed additionally to the regular ones for
-|figure| resp.~|table|.
-
-\begin{Note}
-The |margin| resp.~|width| setting will not be used for these figures resp.~tables,
-unless you set it explicit with |\caption|\-|setup[floating|\-|figure]{|\ldots|}|
-resp.~|\caption|\-|setup[floating|\-|table]{|\ldots|}|.
-\end{Note}
-
-\pagebreak[3]
-\subsection{fltpage}
-\label{fltpage}
-\packagedescription{%
-The \package{fltpage} package\cite{fltpage} offers the outhouse of the
-caption for |figure|s or |table|s which needs the whole page
-for its contents. This will be done by placing the caption on the bottom
-of the previous or next page.}
-
-\iffalse
-\NEWfeature{v3.1}
-Two options control the links to the environments |FPfigure| and |FPtable|:
-\begin{description}
-\item{\texttt{FPlist=caption} or \texttt{FPlist=figure}}\\[\smallskipamount]
-If set to |caption|, the list entry will link to the caption; if set to
-|figure|, it will link to the figure contents.
-(The default setting is |FP|\-|list=|\x|caption|.)
-\item{\texttt{FPref=caption} or \texttt{FPref=figure}}\\[\smallskipamount]
-If set to |caption|, a \cs{ref}, \cs{pageref}, \cs{autoref}, or \cs{nameref}
-will link to the caption; if set to |figure|, it will link to the figure contents.
-(The default setting is |FP|\-|ref=|\x|figure|.)
-\end{description}
-\fi
-
-If you want to setup special options for the |FPfigure| and |FPtable|
-environments you can use
-\begin{quote}
- |\captionsetup[FPfigure]|\marg{options}\quad\emph{and}\\
- |\captionsetup[FPtable]|\marg{options}\quad.
-\end{quote}
-These options will be executed additionally to the regular ones for
-|figure| or |table|.
-
-\pagebreak[3]
-\subsection{frenchle and frenchpro packages}
-\label{frenchpro}
-
-If you use the \package{frenchle} or \package{frenchpro} package,
-the default |label|\-|sep=| will be set to |\caption|\-|sep|\-|a|\-|ra|\-|tor|
-(offered by \package{frenchle/pro}) plus \cs{space}, overriding the default
-value set by the document class.
-So redefining |\caption|\-|sep|\-|a|\-|ra|\-|tor| will still work, unless you
-don't select a different |label|\-|sep=| than the default one.
-
-Furthermore the default |text|\-|font=| will be set to |text|\-|font=|\x|it|,
-since this emulates the default setting of |\caption|\-|font| defined by the
-\package{frenchle} or \package{frenchpro} package.
-%If you redefine |\captionfont| after loading the \package{frenchle} or
-%\package{frenchpro} package, this redefinition gets lost.
-Please note that the command |\caption|\-|font| is used by the
-\package{caption} package internally for a different purpose,
-so you should not change it (anymore).
-
-The command |\un|\-|numbered|\-|captions|\marg{figure \emph{or} table} will
-still work, but only unless you don't select a different |label|\-|format=|
-than the default one.
-
-\NEWfeature{v3.5}
-Since version \version{3.5} of the \package{caption} package the support
-is independent on the load order of \package{caption} and \package{frenchle}
-resp~.\package{frenchpro}.
-
-\pagebreak[3]
-\subsection{hyperref}
-\label{hyperref}
-\packagedescription{%
-The \package{hyperref} package\cite{hyperref} is used to handle cross
-referencing commands in LaTeX to produce hypertext links in the document.}
-
-\NEWfeature{v3.1}
-There are two options available to control the placement of hyperlink
-anchors:~\footnote{These options are named after the \package{hypcap} package
-which they supersede.}
-\begin{description}
-\item{\texttt{hypcap=true} or \texttt{hypcap=false}}\\[\smallskipamount]
-If set to |true| all hyperlink anchors -- where entries in the
-List of Figures, |\ref|, and |\auto|\-|ref| will link to -- are placed at
-the beginning of the (floating) environment.\par
-If set to |false| the hyperlink anchor is (usually) placed at the caption.\par
-(The default setting is |hypcap=|\x|true|.)
-\item{\texttt{hypcapspace=}\meta{amount}}\\[\smallskipamount]
-Because it looks poor if the hyperlink points exactly at the top of
-the figure or table, you can specify a vertical distance between
-the hyperlink anchor and the (floating) environment itself,
-e.g.~|hyp|\-|cap|\-|space=|\x|0pt| removes this distance.\par
-(The default setting is |hyp|\-|cap|\-|space=|\x|0.5\base|\-|line|\-|skip|.)
-\end{description}
-
-Both settings have no effect in |lst|\-|listing|s (provided by the
-\package{listings} package), |long|\-|table|s (provided by the
-\package{longtable} package), |super|\-|tabular|s (provided by the
-\package{supertabular} package), and |x|\-|tabular|s (provided by the
-\package{xtab} package), within these environments hyperlink
-anchors will always be placed as if |hyp|\-|cap=|\x|true| and
-|hyp|\-|cap|\-|space=|\x|0pt| would be set.
-
-\pagebreak[3]Please note:\nopagebreak
-\begin{description}
-\item{\cs{captionof}\marg{type}\csmarg{\purerm\ldots}
- vs.~\cs{captionsetup}\csmarg{type=\textrm{\meta{type}}}$+$\cs{caption}\csmarg{\purerm\ldots}}%
-\\[\smallskipamount]
-Without \package{hyperref} loaded, both will give you identical results.
-But with \package{hyperref} loaded, and with |hyp|\-|cap=|\x|true| requested,
-the hyperlink anchor will be placed different.
-For example:
-\begin{quote}
-|\begin{minipage}{\linewidth}|\\
-| |\ldots\\
-| \captionof{figure}{A figure}|\\
-|\end{minipage}|
-\end{quote}
-will place the hyperlink anchor at the caption.
-(And if |hyp|\-|cap=|\x|true| is set, you will get a warning about this.)
-But
-\begin{quote}
-|\begin{minipage}{\linewidth}|\\
-| \captionsetup{type=figure}|\\
-| |\ldots\\
-| \caption{A figure}|\\
-|\end{minipage}|
-\end{quote}
-will place the hyperlink anchor at the beginning of the |mini|\-|page|,
-since |\caption|\-|setup{type=|\x|figure}| does not only set the caption type
-to ``figure'' but does place a hyperlink anchor, too.
-
-\item{\cs{caption}\csoarg{}\csmarg{\purerm\ldots}
- vs.~\cs{captionsetup}\csmarg{list=false}$+$\cs{caption}\csmarg{\purerm\ldots}}\\[\smallskipamount]
-Again, without \package{hyperref} loaded, both will give you identical results.
-But with \package{hyperref} loaded, the difference is in the nuances.
-So for example the optional argument of |\caption| will also be written to
-the |aux| file, and will be used by the |\name|\-|ref| command.
-So if you choose to use |\caption| with empty optional argument,
-|\name|\-|ref| will also give you an empty result.
-So it's better to use |\caption|\-|setup{list=|\x|false}| if you don't
-want an entry in the List of Figures or List of Tables.
-\end{description}
-
-\pagebreak[3]
-\subsection{hypcap}
-\label{hypcap}
-\packagedescription{%
-The \package{hyp\-cap} package\cite{hypcap} offers a solution to the problem
-that links to a float using \package{hyper\-ref} may anchors to the caption
-rather than the beginning of the float.
-Since \thispackage\ \version{3.1} already solves this problem for itself,
-the \package{hypcap} package is usually not needed.}
-%, at least when you use \thispackage.}
-
-If the \package{hyp\-cap} package is loaded additionally to the
-\package{hyper\-ref} package, it takes over the control of the hyperlink
-anchor placement from \thispackage, overriding the options |hyp|\-|cap=|
-and |hyp|\-|cap|\-|space=|.
-
-So for a manual placement of hyperlink anchors
-|\caption|\-|setup{type=|\x\meta{type}|}| is not sufficient anymore,
-instead you need to use |\cap|\-|start| (provided by the \package{hyp\-cap}
-package) for this.
-
-Regarding the automatically placement the \package{hypcap} package offers good
-placement of hyperlink anchors for the floating environments |figure| and
-|table| only. In contrast the |hypcap=|\x|true| option of \thispackage\ also
-offers good placements of hyperlink anchors for
-|floating|\-|figure|s (provided by the \package{float\-flt} package),
-|FP|\-|figure|s \& |FPtable|s (provided by the \package{flt\-page} package),
-|fig|\-|window|s (provided by the \package{pic\-in\-par} package),
-|par|\-|pic|s (provided by the \package{pic\-ins} package),
-|SC|\-|figure|s (provided by the \package{side\-cap} package),
-|three|\-|part|\-|table|s (provided by the \package{three\-part\-table} package),
-and |wrapfigure|s (provided by the \package{wrap\-fig} package).%---%
-%so by loading the \package{hypcap} package additionally you will
-%loose that.
-
-\pagebreak[3]
-\subsection{listings}
-\label{listings}
-\packagedescription{%
-The \package{listings} package\cite{listings} typesets programming code.}
-
-If you want to setup special options for the |lst|\-|listing| environment
-you can use
-\begin{quote}
- |\captionsetup[lstlisting]|\marg{options}\quad.
-\end{quote}
-
-Please note that the \package{listings} package has its very own options
-for controlling the position and the skips of the caption:
-|caption|\-|pos=|, |above|\-|caption|\-|skip=|, and |below|\-|caption|\-|skip=|.
-\See{\package{listings} documentation for details.}
-These \package{listings} options override the \package{caption}'s ones, but
-can be again overwritten by |\caption|\-|setup[lst|\-|listing]{|\ldots|}|,
-e.g.%~
-\begin{quote}|\caption|\-|setup[lst|\-|listing]{skip=|\x|10pt}|\quad.\end{quote}
-
-\pagebreak[3]
-\subsection{longtable}
-\label{longtable}
-\packagedescription{%
-The \package{longtable} package\cite{longtable} offers an environment
-which behaves similar to the \texttt{tabular} environment, but the table
-itself can span multiple pages.}
-
-If you want to setup special options for the |long|\-|table| environment
-you can use
-\begin{quote}
- |\captionsetup[longtable]|\marg{options}\quad.
-\end{quote}
-These options will be executed additionally to the regular ones for
-|table|.
-
-The |margin| and |width| settings usually override |\LT|\-|cap|\-|width|,
-so you get an equal look \& feel of the captions in |table|s and
-|long|\-|table|s.
-But if you set |\LT|\-|cap|\-|width| to a value different than its default
-$=$ |4in|, \thispackage\ will follow that.
-(But |\LT|\-|cap|\-|width| will be overwritten by
-|\caption|\-|setup[long|\-|table]{width=|\x\meta{value}|}|,
-even if it is set to a value different than |4in|.)
-
-\begin{Note}
-|\caption|\-|of| and |\Continued|\-|Float| do \emph{not} work for |long|\-|table|s.
-Furthermore neither |\caption| nor |\caption|\-|list|\-|entry| will increment
-the |table| counter here; it's incremented by the |long|\-|table| environment
-instead.
-\NEWfeature{v3.1}
-If you need a |long|\-|table| which does not increment the |table| counter
-please use the |long|\-|table*| environment (offered by the
-\package{ltcaption} package which is part of \thispackage\ bundle and will be
-loaded automatically).
-\end{Note}
-
-\pagebreak[3]
-\subsection{picinpar}
-\label{picinpar}
-\packagedescription{%
-Similar to the \package{floatflt} package the \package{picinpar}
-package\cite{picinpar} offers figures and tables which do not span the full
-width of a page and are float around by text.
-For a detailed discussion about the differences between these packages
-please take a look at The \LaTeX\ Companion\cite{TLC2}.}
-
-\NEWfeature{v3.1}
-If you want to setup special options for the |fig|\-|window| and
-|tab|\-|window| environments you can use
-\begin{quote}
- |\captionsetup[figwindow]|\marg{options}\quad\emph{and}\\
- |\captionsetup[tabwindow]|\marg{options}\quad.
-\end{quote}
-These options will be executed additionally to the regular ones for
-|figure| or |table|.
-
-\begin{Note}
-The |margin| resp.~|width| setting will not be used for these figures and tables,
-unless you set it explicit with |\caption|\-|setup[fig|\-|window]{|\ldots|}| or
-|\caption|\-|setup[fig|\-|table]{|\ldots|}|.
-\end{Note}
-
-\pagebreak[3]
-\subsection{picins}
-\label{picins}
-\packagedescription{%
-Similar to the \package{floatflt} and \package{picinpar} package the
-\package{picins} package\cite{picins} offers figures and tables which do not
-span the full width of a page and are float around by text.
-For a detailed discussion about the differences between these packages
-please take a look at The \LaTeX\ Companion\cite{TLC2}.}
-
-\NEWfeature{v3.1}
-If you want to setup special options for the |par|\-|pic| environment you can use
-\begin{quote}
- |\captionsetup[parpic]|\marg{options}\quad.
-\end{quote}
-These options will be executed additionally to the regular ones for
-|figure| or |table|.
-
-Furthermore |\pic|\-|caption[]{|\ldots|}| produce no entry in the List of Figures,
-and |\pic|\-|caption*{|\ldots|}| gives an unlabeled \& unnumbered caption.
-
-\begin{Note}
-The |margin| resp.~|width| setting will not be used for these figures and tables.
-\iffalse
-if |pic|\-|caption|\-|side| or |pic|\-|caption|\-|top|\-|side| is used.
-The |width| setting will not be used (but the |margin| setting will) if
-|pic|\-|caption|\-|out|\-|side| or |pic|\-|caption|\-|in|\-|side| is used.
-\fi
-But you can override this by setting it explicit with
-|\caption|\-|setup[par|\-|pic]{|\ldots|}|.
-\end{Note}
-
-If you want to have a |\pic|\-|caption| of another type as |figure|, please
-do \emph{not} re-define |\@cap|\-|type| as suggested by the \package{picins}
-documentation. Please use the |\pic|\-|caption|\-|type|\marg{type} command
-which is offered by \thispackage\ instead, e.g.:
-\begin{quote}
- |\piccaptiontype{table}|\\
- |\piccaption{An example table}|\\
- |\parpic(50mm,10mm)[s]{|\ldots|}|
-\end{quote}
-
-\pagebreak[3]
-\subsection{rotating}
-\label{rotating}
-\packagedescription{%
-The \package{rotating} package\cite{rotating} offers the floating
-environments \texttt{side\-ways\-figure} and \texttt{side\-ways\-table} which
-are just like normal figures and tables but rotated by 90 resp.~270 degree.
-Furthermore a command \cs{rot\-caption} is offered for rotated captions only.}
-
-\iffalse % No, we don't do that
-If you want to setup special options for the |side|\-|ways|\-|figure| and
-|side|\-|ways|\-|table| environments you can use
-\begin{quote}
- |\captionsetup[sidewaysfigure]|\marg{options}\\
- |\captionsetup[sidewaystable]|\marg{options}\quad.
-\end{quote}
-These options will be executed additionally to the regular ones for
-|figure| or |table|.
-\fi
-
-The command |\rot|\-|caption| will be extended by \thispackage, so
-|\rot|\-|caption*| and |\rot|\-|caption|\-|of| can be used analogous to
-|\caption*| and |\caption|\-|of|.
-
-\pagebreak[3]
-\subsection{setspace}
-\label{setspace}
-\packagedescription{%
-The \package{setspace} package\cite{setspace} offers options and commands
-to change the spacing,
-e.g.\ \cs{usepackage}\x\csoarg{one\-half\-spacing}\x\csmarg{set\-space}
-causes the document to be typeset in one-and-a-half spacing.}
-
-If the \package{setspace} package is used in conjunction with \thispackage,
-the caption will be typeset with single spacing as default. This can be changed
-by specifying either |font=|\x|one|\-|half|\-|spacing|,
-|font=|\x|double|\-|spacing|, or |font={stretch=|\x\meta{amount}|}|.
-\See{also \Ref{fonts}}
-
-\pagebreak[3]
-\subsection{sidecap}
-\label{sidecap}
-\packagedescription{%
-The \package{sidecap} package\cite{sidecap} offers the floating environments
-\texttt{SC\-figure} and \texttt{SC\-table} which are like usual figures
-and tables but the caption will be put \emph{beside} the contents.}
-
-If you want to setup special options for the |SCfigure| and |SCtable|
-environments you can use
-\begin{quote}
- |\captionsetup[SCfigure]|\marg{options}\quad\emph{and}\\
- |\captionsetup[SCtable]|\marg{options}\quad.
-\end{quote}
-These options will be executed additionally to the regular ones for
-|figure| or |table|.
-
-\pagebreak[3]
-\begin{Note}
-The \package{sidecap} package offers its own options for justification.
-If set, they will override the one specified with the caption option
-|jus|\-|ti|\-|fi|\-|ca|\-|tion=| for captions beside their contents.
-\end{Note}
-
-\begin{Note}
-The |margin| resp.~|width| setting will not be used for these figures and tables,
-unless you set it explicit with |\caption|\-|setup[SC|\-|figure]{|\ldots|}|
-or |\caption|\-|setup[SC|\-|table]{|\ldots|}|.
-\end{Note}
-
-\medskip
-
-\begin{Annotation*}
-Instead of using the \package{sidecap} package you can also use the more
-powerful and flexible \package{floatrow} package\cite{floatrow} for typesetting
-captions beside the contents.
-\end{Annotation*}
-
-\pagebreak[3]
-\subsubsection*{Undocumented features}
-The \package{sidecap} package \version{1.6} has some undocumented package
-options and commands which allow further customization of the side-captions:
-
-\pagebreak[3]
-\DescribeMacro{margincaption}
-The package option
-\begin{quote}
- |margincaption|\qquad{\small(e.g.~|\usepackage[margincaption]{sidecap}|)}
-\end{quote}
-causes all side-captions to be placed into the margin.
-
-\pagebreak[3]
-\DescribeMacro{\sidecaptionvpos}
-The command
-\begin{quote}
- |\sidecaptionvpos|\marg{float type}\marg{pos}
-\end{quote}
-sets the vertical position of the side-caption. \meta{pos} can be either `|t|'
-(for top alignment), `|b|' (for bottom alignment), or `|c|' (for center alignment).
-The default setting for |table| is `|t|', for |figure| and all other ones
-defined with |\Declare|\-|Floating|\-|Environment| it's `|b|'.
-
-\pagebreak[3]
-\subsection{subfigure}
-\label{subfigure}
-\packagedescription{%
-The \package{subfigure} package\cite{subfigure} provides support for small or
-`sub' figures and tables within a single figure or table environment.
-This package is obsolete, new users should use \package{subfig} instead.}
-
-Since the \package{subfigure} package is obsolete it will only be supported in
-a way that old documents (which have used \thispackage\ \version{1.x} during
-development) should still compile as expected.
-
-Please use the \package{subfig} or \package{subcaption} package instead which both supports \thispackage\
-\version{3.x}.
-
-\See{the \package{subfig} package\cite{subfig} documentation for details.}
-
-\pagebreak[3]
-\subsection{supertabular and xtab}
-\label{supertabular}
-\packagedescription{%
-The \package{supertabular}\cite{supertabular} and \package{xtab}\cite{xtab}
-packages offer an environment which can span multiple pages and is quite
-similar to the \texttt{long\-table} environment provided by the
-\package{longtable} package\cite{longtable}.
-For a detailed discussion about the differences between these powerful
-packages please take a look at The \LaTeX\ Companion\cite{TLC2}.}
-
-If you want to setup special options for the |super|\-|tabular|
-resp.~|x|\-|tabular| environment you can use
-\begin{quote}
- |\captionsetup[supertabular]|\marg{options}\quad\emph{resp.}\\
- |\captionsetup[xtabular]|\marg{options}\quad.
-\end{quote}
-These options will be executed additionally to the regular ones for
-|table|.
-
-\begin{Note}
-|\Continued|\-|Float| does not work for |super|\-|tabular|s and |x|\-|tabular|s.
-\end{Note}
-
-\pagebreak[3]
-\subsection{threeparttable}
-\label{threeparttable}
-\packagedescription{%
-The \package{threeparttable} package\cite{threeparttable} provides a scheme
-for tables that have a structured note section after the table contents and
-the caption.
-This scheme provides an answer to the old problem of putting footnotes in
-tables---by making footnotes entirely unnecessary.}
-
-\NEWfeature{v3.1}
-If you want to setup special options for the |three|\-|part|\-|table| and
-|measured|\-|figure| environments you can use
-\begin{quote}
- |\captionsetup[threeparttable]|\marg{options}\quad\emph{and}\\
- |\captionsetup[measuredfigure]|\marg{options}\quad.
-\end{quote}
-These options will be executed additionally to the regular ones for
-|table| or |figure|.
-
-\begin{Note}
-Since the caption will have the same width as the contents here,
-the |margin| resp.~|width| setting will not be used for these figures and tables,
-at least unless you set it explicit with
-|\caption|\-|setup[three|\-|part|\-|table]{|\ldots|}| or
-|\caption|\-|setup[measured|\-|figure]{|\ldots|}|.
-\end{Note}
-
-\medskip
-
-\begin{Annotation*}
-Instead of using the \package{threeparttable} package you can
-also use the \package{floatrow} package\cite{floatrow} for this purpose.
-\end{Annotation*}
-
-\pagebreak[3]
-\subsection{wrapfig}
-\label{wrapfig}
-\packagedescription{%
-Similar to the \package{floatflt}, the \package{picinpar}, and the
-\package{picins} package the \package{wrapfig} package\cite{wrapfig} offers
-figures and tables which do not span the full width of a page and are float
-around by text.
-For a detailed discussion about the differences between these packages
-please take a look at The \LaTeX\ Companion\cite{TLC2}.}
-
-\NEWfeature{v3.1}
-If you want to setup special options for the |wrap|\-|figure| and
-|wrap|\-|table| environments you can use
-\begin{quote}
- |\captionsetup[wrapfigure]|\marg{options}\quad\emph{and}\\
- |\captionsetup[wraptable]|\marg{options}\quad.
-\end{quote}
-These options will be executed additionally to the regular ones for
-|figure| or |table|.
-
-\begin{Note}
-The |margin| resp.~|width| setting will not be used for these figures and
-tables, unless you set it explicit with
-|\caption|\-|setup[wrap|\-|figure]{|\ldots|}|
-or |\caption|\-|setup[wrap|\-|table]{|\ldots|}|.
-\end{Note}
-
-% --------------------------------------------------------------------------- %
-
-\clearpage
-\section{Further reading}
-
-I recommend the following documents for further reading:
-
-\begin{itemize}
-\item
- The \TeX\ FAQ -- Frequently asked questions about \TeX\ and \LaTeX:
- \begin{quote}\url{http://faq.tug.org/}\end{quote}
-
-\item
- A French FAQ can be found at
- \begin{quote}\url{http://www.grappa.univ-lille3.fr/FAQ-LaTeX/}\end{quote}
-
-\item
- ``What is a minimal working example?'' from Christian Faulhammer and Ulrich Schwarz:
- \begin{quote}\url{http://www.minimalbeispiel.de/mini-en.html}\end{quote}
-
-\item
- \textsf{epslatex} from Keith Reckdahl contains many tips around
- including graphics in \LaTeXe\ documents.
- You will find this document in the directory
- \begin{quote}\url{http://mirror.ctan.org/info/epslatex/}\end{quote}
-\end{itemize}
-
-% --------------------------------------------------------------------------- %
-
-\pagebreak[3]
-\section{Thanks}
-
-I would like to thank Katja Melzner,
-Steven D. Cochran, Frank Mittelbach, Olga Lapko,
-David Carlisle, Carsten Heinz, Keith Reckdahl, Markus Kohm,
-Heiko Oberdiek, and Herbert Vo\ss.
-Thanks a lot for all your help, ideas, patience, spirit, and support!
-
-Also I would like to thank
-Harald Harders,
-Peter L\"offler,
-Peng Yu,
-Alexander Zimmermann,
-Matthias Pospiech,
-J\"urgen Wieferink,
-Christoph Bartoschek,
-Uwe St\"ohr,
-Ralf Stubner,
-Geoff Vallis,
-Florian Keiler,
-J\"urgen G\"obel,
-Uwe Siart,
-Sang-Heon Shim,
-Henrik Lundell,
-David Byers,
-William Asquith,
-Prof.~Dr.~Dirk Hoffmann,
-Frank Martini,
-Danie Els,
-Philipp Woock,
-Fadi Semmo,
-Matthias Stevens, and
-Leo Liu
-who all helped to make this package a better one.
-
-% --------------------------------------------------------------------------- %
-
-\clearpage\appendix
-\section{Alphabetical Reference}
-
-%\newenvironment{Warnings}%
-% {\begin{trivlist}%
-% \def\Message{\pagebreak[3]\leftskip=0pt\relax\item[]\color{blue}}%
-% \def\Description{\nopagebreak\par\nopagebreak\color{black}\leftskip=1.5em\nopagebreak}%
-% }%
-% {\color{black}\end{trivlist}}
-\makeatletter
-\newenvironment{Warnings}{%
- \newif\ifMessage
- \def\Message{%
- \ifMessage\end{minipage}\par\vspace\itemsep\pagebreak[3]\fi
- \begin{minipage}{\linewidth}%
- \setlength\parindent{0pt}%
- \setlength\parskip{\smallskipamount}%
- \setlength\leftskip{0pt}%
- \color{blue}%
- \Messagetrue}%
- \def\Description{%
- \par\color{black}\leftskip=1.5em}%
- \def\Or{\@testopt\@Or{or}}%
- \def\@Or[##1]{%
- \\{\small\color{black}\hspace{1.5em}\textit{-- ##1 --}}\\}%
-}{%
- \ifMessage\end{minipage}\par\fi
-}
-\makeatother
-
-\subsection{Options}
-%\enlargethispage{10ex}
-\newcommand\preambleoption{~%
- \begingroup\def\thefootnote{\fnsymbol{footnote}}%
- \footnotemark[2]%
- \endgroup}
-\newcommand\preambleoptiontext{%
- \begingroup\def\thefootnote{\fnsymbol{footnote}}%
- \footnotetext[2]{These options are only available in the preamble of the document.}%
- \endgroup}
-
-\begin{longtable*}{lll}
-Option & Short description & Section \\
-\hline
-\endhead
-|aboveskip| & sets the skip above caption & \ref{skips} \\
-|belowskip| & sets the skip below caption & \ref{skips} \\
-|compatibility|\preambleoption & force (non-)compatibility & \ref{compatibility} \\
-%|config| & & \ref{x} \\
-|figureposition|\preambleoption & gives a hint about the figure caption position & \ref{skips} \\
-|font|(|+|) & sets the font & \ref{fonts} \\
-|format| & sets the format & \ref{formats} \\
-\iffalse
-|FPlist| & To where the list entry of a FPfigure should link? & \ref{fltpage} \\
-|FPref| & To where a |\ref| to a FPfigure should link? & \ref{fltpage} \\
-\fi
-|hangindent| & sets the hang indention & \ref{margins} \\
-|hypcap| & selects `hypcap' feature & \ref{hyperref} \\
-|hypcapspace| & sets the distance between hyperlink and contents & \ref{hyperref} \\
-|indention| & sets the indention & \ref{margins} \\
-|justification| & sets the justification & \ref{justification} \\
-|labelfont|(|+|) & sets the font of the caption label & \ref{fonts} \\
-|labelformat| & sets the format of the caption label & \ref{formats} \\
-|labelsep| & sets the label separator & \ref{formats} \\
-|labelseparator| & --same as |labelsep|-- & \ref{formats} \\
-|list| & switches the entries in the List on or off & \ref{lists} \\
-|listformat| & sets the `List of Figure/Table' entry format & \ref{lists} \\
-|margin| & sets the margin & \ref{margins} \\
-|margin*| & sets the margin, but only if no width is set & \ref{margins} \\
-|maxmargin| & sets the max. margin & \ref{margins} \\
-|minmargin| & sets the min. margin & \ref{margins} \\
-|name| & sets the name of the current environment & \ref{names} \\
-|oneside| & selects the one-side mode & \ref{margins} \\
-|options| & executes the given option list & \\
-|parindent| & sets the paragraph indention & \ref{margins} \\
-|parskip| & sets the skip between paragraphs & \ref{margins} \\
-|position| & gives a hint about the caption position & \ref{skips} \\
-|singlelinecheck| & switches the single-line-check on or off & \ref{justification} \\
-%|size| & sets the size of font & \ref{x} \\
-|skip| & sets the skip between content and caption & \ref{skips} \\
-|strut| & switches the usage of |\strut|s on or off & \ref{formats} \\
-|style| & sets the caption style & \ref{style} \\
-%|style*| & sets the caption style & \ref{style} \\
-|subtype| & sets the sub-caption type & \phantom{t}--~\footnotemark \\
-|tableposition|\preambleoption & gives a hint about the table caption position & \ref{skips} \\
-|textfont|(|+|) & sets the font of the caption text & \ref{fonts} \\
-|textformat| & sets the format of the caption text & \ref{formats} \\
-|twoside| & selects the two-side mode & \ref{margins} \\
-|type| & sets the caption type \& places a hyperlink anchor & \ref{types} \\
-|type*| & sets the caption type only & \ref{types} \\
-|width| & sets a fixed caption width & \ref{margins} \\
-\end{longtable*}
-\preambleoptiontext
-\footnotetext{The option \texttt{subtype} is explained in the
- \package{subcaption} package documentation.}
-
-\nopagebreak\parbox[t]{\linewidth}{% prevent from page break
-\begin{Note*}
- Obsolete options are not listed here. See
- \Ref{caption1} and
- \Ref{caption2} for a list of these options.
-\end{Note*}}
-
-\pagebreak[3]
-\subsection{Commands}
-
-\begin{longtable*}{lll}
-Command & & Section \\
-\hline
-\endhead
-|\abovecaptionskip| & & \ref{skips} \\
-%|\AtBeginCaption| & & \ref{hooks} \\
-%|\AtEndCaption| & & \ref{hooks} \\
-|\belowcaptionskip| & & \ref{skips} \\
-|\caption| & & \ref{caption} \\
-|\caption*| & & \ref{caption} \\
-|\captionlistentry| & & \ref{captionlistentry} \\
-|\captionof| & & \ref{caption} \\
-|\captionof*| & & \ref{caption} \\
-|\captionsetup| & & \ref{captionsetup} \\
-|\captionsetup*| & & \ref{captionsetup} \\
-|\centerfirst| & & \ref{justification} \\
-|\centerlast| & & \ref{justification} \\
-|\clearcaptionsetup| & & \ref{captionsetup} \\
-|\clearcaptionsetup*| & & \ref{captionsetup} \\
-|\ContinuedFloat| & & \ref{ContinuedFloat} \\
-|\DeclareCaptionFont| & & \ref{declare} \\
-|\DeclareCaptionFormat| & & \ref{declare} \\
-|\DeclareCaptionFormat*| & & \ref{declare} \\
-|\DeclareCaptionJustification| & & \ref{declare} \\
-|\DeclareCaptionLabelFormat| & & \ref{declare} \\
-|\DeclareCaptionLabelSeparator| & & \ref{declare} \\
-|\DeclareCaptionLabelSeparator*| & & \ref{declare} \\
-|\DeclareCaptionListFormat| & & \ref{declare} \\
-|\DeclareCaptionOption| & & \ref{declare} \\
-|\DeclareCaptionStyle| & & \ref{declare} \\
-|\DeclareCaptionSubType| & & --~\footnotemark \\
-|\DeclareCaptionTextFormat| & & \ref{declare} \\
-|\showcaptionsetup| & & \ref{captionsetup} \\
-\end{longtable*}
-\footnotetext{\cs{DeclareCaptionSubType} is explained in the
- \package{subcaption} package documentation.}
-
-\clearpage
-\subsection{Warnings}
-
-\begin{Warnings}
-
-\Message
- |\caption outside box or environment.|
-\Or
- |\captionsetup{type=...} outside box or environment.|
-\Or
- |\captionsetup{type*=...} or \captionof outside box|\\
- | or environment.|
-\Description
- You have placed a |\caption|, |\caption|\-|of|, or
- |\caption|\-|setup{type=|\x\meta{type}|}| command outside an box, group,
- or environment.
- You should not do this since it could cause some bad side-effects.
- \par\See{\Ref{types} and \Ref{caption}}
-
-\Message
- |\caption will not be redefined since it's already|\\
- |redefined by a document class or package which is|\\
- |unknown to the caption package.|
-\Description
- If \thispackage\ detects that some (unknown) document class or
- package has enhanced |\caption|, it will not redefine
- |\caption|, too, since this would simply kill the enhancement.
- As a result some features, like |\caption*|, |\Continued|\-|Float|,
- using the optional argument of |\caption|\-|setup|,
- or the options |list=| and |hypcap=| will not be available.\par
- If you don't care about the original enhancements but would
- like to use the full range of features of \thispackage\ instead
- you can give the unsupported(!) option |compatibility=|\x|false|
- a try and keep your fingers crossed.
- (But you will get the next warning instead.)
- \par\See{\Ref{classes} and \Ref{compatibility}}
-
-\Message
- |Forced redefinition of \caption since the|\\
- |unsupported(!) package option `compatibility=false'|\\
- |was given.|
-\Description
- Since you were so keen to specify the option |compatibility=|\x|false|
- \thispackage\ will try to do its best to fulfill your wishes.
- But depending on the document class or other packages you use that
- can end in non-functional features or even errors. So keep your
- fingers crossed!
- \par\See{\Ref{compatibility}}
-
-\Message
- |Hyperref support is turned off because hyperref has|\\
- |stopped early.|
-\Description
- If the \package{hyperref} package stops early during loading
- (because of what-ever reason), the \package{hyperref} support of
- \thispackage\ will not be available. As a result you could get
- \package{hyperref} warnings and non-functional hyperlinks to figures
- or tables.
- \par\See{\Ref{hyperref}\,}
-
-\Message
- |Ignoring optional argument [|\meta{pos}|] of \setcapwidth.|
-\Description
- \Thispackage\ tries to emulate the \KOMAScript\ commands regarding
- captions as best as it can. But the optional argument of the
- \KOMAScript\ command |\setcapwidth| is not (yet) working if you use
- this package, so if you try to use it anyway, you will get this warning.
- \par\See{\Ref{KOMA}}
-
-\Message
- |Internal Warning: |\meta{warning message}|.|
-\Description
- You should never see this warning, either you use a package which redefines
- |figure| or |table| and which is unknown to \thispackage, or this is a bug
- in \thispackage.
- Please send me an e-mail reporting this issue.
-
-\Message
- |\label without proper \caption|
-\Description
- Regarding |\label| the floating environments behave differently than its
- non-floating counterparts: The internal reference will not be generated
- at the beginning of the environment, but at |\caption| instead.
- So you have to place the |\label| command either just \emph{after} or
- \emph{inside} the caption text (mandatory argument of |\caption|).
-
-\Message
- |Option `|\meta{option}|' was not in list `|\meta{option list}|'.|
-\Description
-%\showhyphens{position}
- If you try to remove a specific option of an option list,
- for example with |\clear|\-|caption|\-|setup[po|\-|si|\-|tion]{table}|,
- and this option can not be found inside the option list, you will
- get this warning. If this is not because of a typo and you would like
- to suppress this warning, use |\clear|\-|caption|\-|setup*| instead of
- |\clear|\-|caption|\-|setup|.
- \par\See{\Ref{captionsetup}}
-
-\Message
- |Option list `|\meta{option list}|' undefined.|
-\Description
-%\showhyphens{format}
- If you try to remove a specific option of an option list,
- for example with |\clear|\-|caption|\-|setup[for|\-|mat]{figure}|,
- and this option list is not defined (yet), you will
- get this warning. If this is not because of a typo and you would like
- to suppress this warning, use |\clear|\-|caption|\-|setup*| instead of
- |\clear|\-|caption|\-|setup|.
- \par\See{\Ref{captionsetup}}
-
-\Message
- |Obsolete option `ignoreLTcapwidth' ignored.|
-\Description
- The \package{caption2} package option |ignoreLTcapwidth| will not be
- emulated by this version of \thispackage, usually you can simply wipe it
- away.
- \par\See{\Ref{caption2} and \Ref{longtable}}
-
-\Message
- |`ragged2e' support has been changed. Rerun to get|\\
- |captions right.|
-\Description
- The \package{ragged2e} package will only be loaded by \thispackage\ if it
- is actually needed.
- At least two \LaTeX\ runs are needed for that, so on the first run you could
- get this warning.
- Just compile your document again and this warning should go away.
- \par\See{\Ref{justification}}
-
-\Message
- |Reference on page |\meta{page no.}| undefined.|
-\Description
- If you use a |twoside| page layout, \thispackage\ needs to track the
- page numbers to get the margins right.
- At least two \LaTeX\ runs are needed for that, on the first run you could get
- this warning.
- Just compile your document again and this warning should go away.
- \par\See{\Ref{margins}}
-
-\Message
- |The caption type was already set to `|\meta{type}|'.|
-\Description
- This warning informs you about mixed caption options. For example if
- you use a |\caption|\-|setup{type=|\x|table}| or
- |\caption|\-|of{table}{|\ldots|}| inside a |figure| environment,
- this would result in using both option sets for that specific caption,
- the one for |figure| (specified with |\caption|\-|setup[figure]{|\ldots|}|)
- and the one for |table| (specified with |\caption|\-|setup[table]{|\ldots|}|)
- as well.\par
- {\small(You can suppress this warning by using the starred form
- |\caption|\-|setup*{type=|\x\ldots|}|.)\par}
- \par\See{\Ref{captionsetup}}
-
-\Message
- |The option `hypcap=true' will be ignored for this|\\
- |particular \caption.|
-\Description
- \Thispackage\ hasn't found a proper hyperlink anchor for this particular
- caption, so it decides to ignore the setting |hypcap=|\x|true| (which is set by
- default). As a result a link to this caption (e.g.~in the List of Figures,
- or set by |\ref| or |\auto|\-|ref|) will link you to the caption of the figure
- or table, not to the figure or table itself.\par
- This can happen if you use |\caption|\-|of| inside a non-floating environment,
- but also if you use some package which redefines |figure| or |table|, and
- which is unknown to \thispackage.\par
- If this is ok for you but you want to suppress this warning, simply place a
- |\caption|\-|setup{hyp|\-|cap=|\x|false}| just before the |\caption| or
- |\caption|\-|of| command which is causing the warning.
- If this is not ok for you, you can set a hyperlink anchor with
- |\caption|\-|setup{type=|\x\meta{float type}|}| for yourself.
- \par\See{\Ref{hyperref}\,}
-
-\Message
- |Unsupported document class (or package) detected,|\\
- |usage of the caption package is not recommended.|
-\Description
- Either the document class you use is unknown to \thispackage, or you
- have included a package in your document which redefines |\@make|\-|caption|
- (which is responsible for typesetting the caption internally) as well.
- This means \thispackage\ will either change the design of captions in an
- unwanted way, or it even refuses to work correctly at all.
- \par\See{\Ref{classes} and \Ref{compatibility}}
-
-\Message
- |Unused \captionsetup[|\meta{type}|].|
-\Description
- You have specified options with |\caption|\-|setup[|\meta{type}|]| which are
- not used later on.
- This can be because of a typo in \meta{type},
- or because you use a package which redefines |figure| or |table| and
- which is unknown to \thispackage, or simply because you don't have any usage
- of the environment \meta{type} after this line.
- (If you want to suppress this warning you can use |\caption|\-|setup*|
- instead of |\caption|\-|setup|.)
- \par\See{\Ref{captionsetup}}
-
-\Message
- |Usage of the |\meta{package}| package together with the|\\
- |caption package is strongly not recommended.|\\
- |Instead of loading the |\meta{package}| package you should|\\
- |use the caption package option `tableposition=top'.|
-\Description
- The package \meta{package} is dealing with caption skips as well.
- Please decide which one do you actually want to use, \thispackage\ or the
- other one, using both can lead to wrong skips above or below the caption.
- \par\See{\Ref{skips}}
-
-\end{Warnings}
-
-\pagebreak[3]
-\subsection{Errors}
-
-\begin{Warnings}
-
-\Message
- |Argument of \@caption has an extra }.|
-\Or
- |Paragraph ended before \@caption was complete.|
-\Description
- If you want to typeset something special (like a tabular) as caption,
- you need to give an optional argument to |\caption| resp.~|\caption|\-|of|
- for the List of Figures resp.~List of Tables, too, even if you don't
- use such list.
- \par\See{\Ref{caption}, \Ref{lists}, and \Ref{hyperref}\,}
-
-\Message
- |\caption outside float.|
-\Description
- You have placed a |\caption| command outside a floating environment, or
- a |long|\-|table| or |wrap|\-|figure|.
- If this is what you want to, please use either
- |\caption|\-|setup{type=|\x\meta{type}|}| $+$ |\caption| or
- |\caption|\-|of|.
- \par\See{\Ref{caption}}
-
-\Message
- |\ContinuedFloat outside float.|
-\Description
- You have placed a |\Continued|\-|Float| command outside a floating
- environment. % or |long|\-|table|.
- If this is what you want to, please use the combination
- |\caption|\-|setup{type=|\x\meta{type}|}| $+$ |\Continued|\-|Float|.\par
- Please note that |\Continued|\-|Float| inside a |long|\-|table| is not
- working, but maybe using the |long|\-|table*| environment, which
- typesets a |long|\-|table| without incrementing the |table| counter,
- if sufficient for you.
- \par\See{\Ref{ContinuedFloat} and \Ref{longtable}}
-
-\Message
- |Continued `|\meta{type}|' after `|\meta{type}|'.|
-\Description
- Continued figures or tables are not allowed to be interrupted by a floating
- environment (or |long|\-|table|) of another type,
- e.g.~a table between a figure and a continued figure.
- \par\See{\Ref{ContinuedFloat}}
-
-\Message
- |For a successful cooperation we need at least version|\\
- |`|\meta{date}|' of package |\meta{package}|, but only version|\\
- |`|\meta{old-date}|' is available.|
-\Description
- \Thispackage\ does not work with such an outdated package, please update it
- to a more recent version, at least to the one requested.
-
-\Message
- |Internal Error: |\meta{error message}|.|
-\Description
- You should never see this error.
- Please send me an e-mail reporting this issue.
-
-\Message
- |No float type '|\meta{type}|' defined.|
-\Description
- The \meta{type} you have specified in |\caption|\-|setup{type=|\x\meta{type}|}|,
- |\caption|\-|of|\marg{type}, or |\Declare|\-|Caption|\-|Sub|\-|Type| is
- not defined.
- \meta{type} should be either `\texttt{figure}' or `\texttt{table}', or
- any other floating environment defined with
- |\Declare|\-|Floating|\-|Environment| offered by the \package{newfloat} package,
- |\new|\-|float| offered by the \package{float} package\cite{float}, or
- |\Declare|\-|New|\-|Float|\-|Type| offered by the \package{floatrow} package\cite{floatrow}.
-
-\Message
- |Not allowed in longtable* environment.|
-\Description
- The usage of |\caption| is not allowed inside the |long|\-|table*| environment.
- Please use either |\caption*| for a caption without label or use the regular
- |long|\-|table| environment instead.
-
-\Message
- |Not available in compatibility mode.|
-\Description
- The feature required is not supported in compatibility mode.
- `compatibility mode' means that \thispackage\ has detected either an
- incompatible document class or an incompatible package which also
- extents the |\caption| command. Leaving the original extension intact,
- some features of \thispackage\ are not supported.
- \par\See{\Ref{compatibility}}
-
-\Message
- |Only one \caption can be placed in this environment.|
-\Description
- Inside the environments offered by the \package{fltpage} and \package{sidecap}
- package only \emph{one} caption can be placed. (This is due implementation design.)
-
-\Message
- |Option clash for package caption.|
-\Or[but sometimes also]
- |Missing \begin{document}.|
-\Description
- \Thispackage\ has already been loaded by some other \LaTeX\ package,
- so you can't do that again specifying different options.
- A candidate causing this could be the \package{subfig} package; if this is
- the case, please load \thispackage\ \emph{before} the \package{subfig}
- package or specify the option |caption=|\x|false| while loading the
- \package{subfig} package.
- \par\See{the \package{subfig} package\cite{subfig} documentation}
-
-\Message
- |Paragraph ended before \caption@makecurrent was complete.|
-\Or
- |Paragraph ended before \caption@prepareanchor was complete.|
-\Description
- If you want to typeset multi-paragraph captions, you need to give an
- optional argument to |\caption| resp.~|\caption|\-|of| for the List of
- Figures resp.~List of Tables, too, even if you don't use such list.
- \par\See{\Ref{caption}, \Ref{lists}, and \Ref{hyperref}\,}
-
-\Message
- |Something's wrong--perhaps a missing \caption|\\
- |in the last figure or table.|
-\Description
- It seems that you have used a |\sub|\-|caption| command (or a different one
- which has typeset a sub-caption) without a corresponding |\caption| command.
- This is not supported.
-
-\Message
- |The option `labelsep=|\meta{name}|' does not work|\\
- |with `format=hang'.|
-\Or
- |The option `labelsep=|\meta{name}|' does not work|\\
- |with \setcaphanging (which is set by default).|
-\Description
- A caption label separator which contains a |\\| command (like
- |labelsep=|\x|newline|) can not be combined with a hanging caption format
- (like |format=|\x|hang|).
- Please select either another caption label separator
- (e.g.~|labelsep=|\x|colon|) or another caption format
- (e.g.~|format=|\x|plain|).
- \par\See{\Ref{formats} resp.~\Ref{KOMA}}
-
-\Message
- |The package option `caption=false' is obsolete.|\\
- |Please pass this option to the subfig package instead|\\
- |and do *not* load the caption package anymore.|
-\Description
- You have specified the option |caption=|\x|false|. This used to be a workaround
- for not using the whole \package{caption} package (leaving the caption stuff
- offered by the document class or other packages intact), but keeping the
- \package{subfig} package working. This mechanism is obsolete and not offered
- anymore, please pass this option to the \package{subfig} package instead and
- do not load \thispackage\ anymore.
- \par\See{the \package{subfig} package\cite{subfig} documentation}
-
-\Message
- |Undefined boolean value `|\meta{value}|'.|
-\Description
- You tried to set a boolean option (like |singlelinecheck=| or |hypcap=|)
- with an improper value. Only |false|, |no|, |off|, |0| or |true|, |yes|,
- |on|, |1| is allowed here.
-
-\Message
- |Undefined format `|\meta{name}|'.|
-\Description
- You tried to set a caption format which does not exists.
- Maybe a typo!?
- \par\See{\Ref{formats}}
-
-\Message
- |Undefined label format `|\meta{name}|'.|
-\Description
- You tried to set a caption label format which does not exists.
- Maybe a typo!?
- \par\See{\Ref{formats}}
-
-\Message
- |Undefined label separator `|\meta{name}|'.|
-\Description
- You tried to set a caption label separator which does not exists.
- Maybe a typo!?
- \par\See{\Ref{formats}}
-
-\Message
- |Undefined list format `|\meta{name}|'.|
-\Description
- You tried to set a caption list-of format which does not exists.
- Maybe a typo!?
- \par\See{\Ref{lists}}
-
-\Message
- |Undefined position `|\meta{name}|'.|
-\Description
- You tried to set a caption position with an improper value.
- Maybe a typo!?
- \par\See{\Ref{skips}}
-
-\Message
- |Undefined style `|\meta{name}|'.|
-\Description
- You tried to set a caption style which does not exists.
- Maybe a typo!?
- \par\See{\Ref{style}}
-
-\Message
- |Usage of the `position' option is incompatible|\\
- |to the `|\meta{package}|' package.|
-\Description
-% (ftcap,nonfloat,topcapt)
- The given package is dealing with caption skips as well.
- Please decide which one do you actually want to use: The |position=| option
- of \thispackage\ or the mechanism of the other one; using both this way
- would lead to wrong skips above or below the caption and is therefore
- not supported.
- \par\See{\Ref{skips}}
-
-\Message
- |Undefined text format `|\meta{name}|'.|
-\Description
- You tried to set a caption text format which does not exists.
- Maybe a typo!?
- \par\See{\Ref{formats}}
-
-\Message
- |You can't use both, the (obsolete) caption2 *and*|\\
- |the (current) caption package.|
-\Description
- This error message says it all, you simply can't do that.
- Please use only \thispackage.
- \par\See{\Ref{caption2}}
-
-\end{Warnings}
-
-% --------------------------------------------------------------------------- %
-
-\clearpage
-\section{Version history}
-\label{history}
-
-The version $1.0$ was written in 1994 and was offering a handful of options
-to customize the look \& feel of the captions.
-Furthermore this version already supported the \package{rotating} and
-\package{subfigure} packages.
-Version $1.1$ introduced the |center|\-|last| option;
-version $1.2$ added the support of the \package{float} package.
-Version $1,3$ offered a better support of the \package{subfigure} package,
-while version $1.4$ came with the new option |nooneline|.
-
-The \package{caption2} package $2.0$ was an experimental side-version of
-the regular \package{caption} package. It was made public as beta test version
-without proper documentation in 1995 because of the strong demand for new
-features and adaptations to additional packages like the \package{longtable}
-package.
-Furthermore it offered a revised support of the \package{subfigure} package.
-(An improved version $2.1$ was offered in 2002.)
-
-In 2003 I finally found some time, so a new regular release $3.0$
-of the \package{caption} package could be build in cooperation with
-Frank Mittelbach and Steven Cochran.
-It was released in December 2003 and superseded the neglected
-\package{caption2} package.
-Main parts were re-written and it provided a complete re-work of
-the user interface.
-Furthermore it supported the \package{hyperref}, \package{hypcap},
-\package{listings}, \package{sidecap}, and \package{supertabular} packages
-additionally.
-
-While all the previous versions were designed for usage with the standard
-\LaTeX\ document classes \class{article}, \class{report}, and \class{book},
-the current version $3.1$ released in 2007 also supports the \AmS,
-\KOMAScript, \NTG, and \SmF\ document classes, and the \class{beamer} class
-as well.
-Furthermore it was adapted to the \package{french} Babel option,
-the \package{frenchle} \& \package{frenchpro} packages,
-and the \package{floatflt}, \package{fltpage}, \package{picinpar},
-\package{picins}, \package{setspace}, \package{threeparttable},
-and \package{wrapfig} packages.
-New options and commands were introduced as well, among other things
-|font+|, |figure|\-|within| \& |table|\-|within|,
-|list| \& |list|\-|format|, |max|\-|margin| \& |min|\-|margin|,
-|\caption|\-|list|\-|entry|, |\Declare|\-|Caption|\-|List|\-|Format|.
-Further benefits are the new compatibility check \see*{\Ref{compatibility}},
-the new ``hypcap'' feature \see*{\Ref{hyperref}\,}, and the sub-caption
-feature \see*{\package{subcaption} package documentation}.
-
-% --------------------------------------------------------------------------- %
-
-\clearpage
-\section{Compatibility to older versions}
-
-\subsection{caption v\texorpdfstring{$1.x$}{1.x}}
-\label{caption1}
-
-This version of \thispackage\ still supports the old options
-and commands provided by the version $1.0$ to $1.4$ of this package.
-So there shouldn't occur any problems compiling old documents, but please
-don't mix old options and commands with the new ones. This isn't supported
-and can cause ugly side effects.
-
-Here comes a short oversight of the obsolete options and how
-they have been replaced within this version of \thispackage:
-
-\begin{center}\small
-\begin{tabular}{ll}
-\package{caption} \version{1.x} & \package{caption} \version{3.x}\\
-\hline
-%\endhead
-|normal| & |format=plain|\\
-|hang| & |format=hang|\\
-|isu| & |format=hang|\\
-|center| & |justification=centering|\\
-|centerlast| & |justification=centerlast|\\
-|nooneline| & |singlelinecheck=off|\\
-|scriptsize| & |font=scriptsize|\\
-|footnotesize| & |font=footnotesize|\\
-|small| & |font=small|\\
-|normalsize| & |font=normalsize|\\
-|large| & |font=large|\\
-|Large| & |font=Large|\\
-|up| & |labelfont=up|\\
-|it| & |labelfont=it|\\
-|sl| & |labelfont=sl|\\
-|sc| & |labelfont=sc|\\
-|md| & |labelfont=md|\\
-|bf| & |labelfont=bf|\\
-|rm| & |labelfont=rm|\\
-|sf| & |labelfont=sf|\\
-|tt| & |labelfont=tt|\\
-\end{tabular}
-\end{center}
-
-Beside the options for setting up the desired font there were also
-the commands |\caption|\-|size| resp.~|\caption|\-|font| and
-|\caption|\-|label|\-|font| who could be redefined with
-|\re|\-|new|\-|command| and allowed an alternate and more flexible way to
-change the font used for captions.
-This mechanism was replaced by the commands
-\begin{quote}
- |\DeclareCaptionFont{|\ldots|}{|\ldots|}|\qquad and\\
- |\captionsetup{font=|\ldots|,labelfont=|\ldots|}|\qquad.
-\end{quote}
-\SeeUserDefined
-
-Setting the margin for captions was done in \version{1.x} with
-\begin{quote}
- |\setlength{\captionmargin}{|\ldots|}|\quad.
-\end{quote}
-This was replaced by
-\begin{quote}
- |\captionsetup{margin=|\ldots|}|\qquad.
-\end{quote}
-\See{\Ref{margins}}
-
-For example the old-style code
-\begin{quote}
- |\usepackage[hang,bf]{caption}|\\
- |\renewcommand\captionfont{\small\sffamily}|\\
- |\setlength\captionmargin{10pt}|
-\end{quote}
-will still work fine, but should be written today as
-\begin{quote}
- |\usepackage[format=hang,labelfont=bf,font={small,sf},|\\
- | margin=10pt]{caption}|
-\end{quote}
-or
-\begin{quote}
- |\usepackage{caption}|\\
- |\captionsetup{format=hang,labelfont=bf,font={small,sf},|\\
- | margin=10pt}|\qquad.
-\end{quote}
-
-The quite exotic option |ruled| which allowed a partial usage of
-the caption settings for |ruled| floats defined with the
-\package{float} package will be emulated by this version of the
-caption package, too.
-But using this option is not recommended anymore since this
-version of \thispackage\ offers a more flexible way
-for changing the captions of these floating environments:
-\begin{quote}
- |\DeclareCaptionStyle{ruled}{|\ldots|}|
-\end{quote}
-resp.
-\begin{quote}
- |\captionsetup[ruled]{|\ldots|}|\qquad.
-\end{quote}
-\SeeUserDefined[, \Ref{captionsetup}, and \Ref{float}]
-
-\subsection{caption2 v\texorpdfstring{$2.x$}{2.x}}
-\label{caption2}
-
-Although they do very similar stuff, the packages \package{caption} and
-its experimental and now obsolete variant \package{caption2} have a
-very different implementation design.
-Therefore a full compatibility could not be offered.
-For that reason you will still find a file called |caption2.sty| in
-this package distribution, so old documents using the \package{caption2}
-package will still compile fine.
-
-Newly created documents should use the actual version of
-\thispackage\ instead. In most cases it's sufficient to replace the command
-\begin{quote}
- |\usepackage[...]{caption2}|
-\end{quote}
-by
-\begin{quote}
- |\usepackage[...]{caption}|\qquad.
-\end{quote}
-But some options and commands will not be emulated, so you can get
-error messages afterwards. This section will hopefully help you removing
-these errors. If you have problems migrating from \package{caption2}
-to \package{caption} please don't hesitate to send me an e-mail asking
-for help.
-
-In addition to the obsolete options shown in the last section
-these ones will be emulated, too:
-
-\begin{center}\small
-\begin{tabular}{ll}
-\package{caption2} \version{2.x} & \package{caption} \version{3.x}\\
-\hline
-%\endhead
-|flushleft| & |justification=raggedright|\\
-|flushright| & |justification=raggedleft|\\
-|oneline| & |singlelinecheck=on|\\
-\end{tabular}
-\end{center}
-
-Setting the margin for captions was done in \version{2.x} with
-\begin{quote}\leavevmode\hbox{%
- |\setcaptionmargin{|\ldots|}| resp.
- |\setcaptionwidth{|\ldots|}|\quad.
-}\end{quote}
-This was replaced by
-\begin{quote}\leavevmode\hbox{%
- |\captionsetup{margin=|\ldots|}| resp.
- |\captionsetup{width=|\ldots|}|\quad.
-}\end{quote}
-\See{\Ref{margins}}
-
-Setting an indention was done in \version{2.x} with
-\begin{quote}
- |\captionstyle{indent}|\\
- |\setlength\captionindent{|\ldots|}|\quad.
-\end{quote}
-\pagebreak[3]
-This is now done with
-\nopagebreak[3]
-\begin{quote}
- |\captionsetup{format=plain,indention=|\ldots|}|\quad.
-\end{quote}
-
-The so-called single-line-check was controlled by the commands
-|\oneline|\-|captions|\-|false| (for switching the check off) and
-|\oneline|\-|captions|\-|true| (for switching the check on).
-This was replaced by
-|\caption|\-|setup{single|\-|line|\-|check=|\x|off}|
-resp.
-|\caption|\-|setup{single|\-|line|\-|check=|\x|on}|\quad.
-\See{\Ref{justification}}
-
-The commands
-\begin{quote}
- |\captionlabeldelim|, |\captionlabelsep|, |\captionstyle|,\\
- |\defcaptionstyle|, |\newcaptionstyle|, and |\renewcaptionstyle|
-\end{quote}
-do not have a simple replacement and therefore will not be emulated
-by this version of \thispackage. (So using them will
-cause error messages.) Rewriting such code is not always easy and
-straight-ahead, but by conscientious reading of this manual you should
-be able to find appropriate options and commands instead.
-
-\iffalse
-... (some examples)
-\fi
-
-The \version{2.x} option |ignore|\-|LT|\-|cap|\-|width| do not have a
-replacement, too.
-But in most cases you can simply drop using that option because
-in this version of \thispackage\ the value of |\LT|\-|cap|\-|width|
-will be ignored anyway (unless you set it to a different value than the
-default one which is |4in|).
-\See{\Ref{longtable}}
-
-\subsection{caption v\texorpdfstring{$3.0$}{3.0}}
-\label{caption3}
-
-%\NEWdescription{v3.1}
-\Thispackage\ \version{3.0} did not support any document classes
-other than the standard \LaTeX\ ones: \class{article}, \class{report},
-and \class{book}.
-Therefore the default settings used to be fixed, but now \thispackage{}
-supports more classes, therefore they are now set in dependence on the
-document class used.
-
-For example: While in \version{3.0} the default caption
-|jus|\-|ti|\-|fi|\-|ca|\-|tion| used to be always |jus|\-|ti|\-|fied|,
-it's now still |jus|\-|ti|\-|fied| when using one of the standard document
-classes, but |ragged|\-|right| will be used as default format when used
-with the \class{beamer} document class.
-
-%An easy way to select the `old' defaults---if desired---is using the option
-An easy way to select the `old' defaults is using the option
-|style=base| when loading \thispackage\ (or later on using |\caption|\-|setup|).
-
-\medskip
-
-Another new feature is the automatic check for compatibility; if an
-incompatibility will be found, a warning message will be issued and if a strong
-incompatibility was found some features of \thispackage\ will be disabled.
-Please note that only this check was added to \thispackage, so if you get
-such warning message, the previous versions of \thispackage\ were incompatible
-as well, but did not issued such warning, they were ``only'' having
-side-effects or causing problems.
-So these warnings only say that some bad side effects or problems could
-happen, but not that they actually will happen.
-Anyway, if you use \thispackage\ in such circumstances,
-you should use it with care.
-
-\bigskip
-
-\begin{Note*}
-\Thispackage\ \version{3.0} offered the option |caption=|\x|false|,
-which used to be a workaround for not using the whole \package{caption} package
-(leaving the caption stuff offered by the document class or other packages
-intact), but keeping the \package{subfig} package\cite{subfig} working.
-This mechanism is obsolete and not offered anymore, please pass this option
-to the \package{subfig} package instead and do not load \thispackage\ anymore.
-%\par\See{the \package{subfig} package documentation}
-\end{Note*}
-
-% --------------------------------------------------------------------------- %
-
-\clearpage
-\section{Commands for document class authors}
-
-A document class could simply load the \package{caption} package instead
-of defining an own variant of |\@make|\-|caption|. However if the author decides
-not to do this -- for whatever reason -- there is a second option:
-
-\NEWfeature{v3.5}
-If a document class defines |\caption@document|\-|class|, an adaption to the
-\package{caption} package will be loaded as |caption-|\meta{documentclass}|.sto|
-if the \package{caption} kernel is loaded.
-The goal of this adaption file is changing the default settings of the
-\package{caption} package so simply loading it (without any package options)
-will not make any harm to the look at feel of the captions.
-This gives end-users the opportunity to fine-tune certain aspects of the
-appearance of captions by adding package options, without unwanted
-side-effects on other aspects of the appearance.
-
-In both cases the command |\Set|\-|Caption|\-|Default|
-could be used to adapt the \package{caption} package default values:
-
-\DescribeMacro{\SetCaptionDefault}
-The command
-\begin{quote}
- |\SetCaptionDefault*|\marg{option}\marg{default value}
-\end{quote}
-changes the default value for the option \meta{option}, for example:
-\begin{quote}
- |\SetCaptionDefault{format}{hang}|\\
- |\SetCaptionDefault{justification}{raggedright}|\\
- |\DeclareCaptionLabelSeparator{silly}{ +++ }|\\
- |\SetCaptionDefault{labelseparator}{silly}|
-\end{quote}
-This command is available for the options
- |box|,
- |font|,
- |format|,
- |justification|,
- |label|\-|font|,
- |label|\-|format|,
- |label|\-|separator|,
- |list|\-|format|,
- |margin|,
- |parbox|,
- |position|,
- |single|\-|line|\-|check|,
- |text|\-|font|,
- |text|\-|format|, and
- |width|.
-
-The starred variant only makes a difference when setting the default length
-of either |margin| or |width|, in this case it will use |\def| internally
-instead of |\edef| to store the value so the actual margin will be calculated
-when used (and not when set).
-
-\DescribeMacro{\SetCaptionFallback}
-The command
-\begin{quote}
- |\SetCaptionFallback|\marg{option}\marg{fallback value}
-\end{quote}
-changes the fallback value for the option \meta{option}, for example:
-\begin{quote}
- |\SetCaptionFallback{labelformat}{simple}|
-\end{quote}
-Currently only the pre-defined label format `original' uses a fallback
-value when |\fnum@|\meta{environment} is not defined for the current (floating)
-environment.
-
-\DescribeMacro{\AtCaptionPackage}
-The adaption file will be loaded when the \package{caption} kernel |caption3.sty|
-will be loaded so the given adaptions will be done for the \package{floatrow}
-and \package{subfig} packages even if the \package{caption} package isn't loaded.
-
-But some adaptions have to be done for the \package{caption} package,
-and for this reason the hook
-\begin{quote}|\AtCaptionPackage|\marg{code}\end{quote}
-is offered to authors of adaption files.
-The \meta{code} inside the hook will be executed right before the given package
-options will be evaluated.
-
-For example the adaption file for the \KOMAScript\ document classes
-uses |\At|\-|Begin|\-|Caption| to re-define the \package{caption} package
-options |figure|\-|position| and |table|\-|position| to issue a warning
-that using these options have little effect here.
-
-\DescribeMacro{\AfterCaptionPackage}
-The additional hook
-\begin{quote}|\AfterCaptionPackage|\marg{code}\end{quote}
-is offered to authors of adaption files as well.
-The \meta{code} inside the hook will be executed at the very end of the
-\package{caption} package.
-
-% --------------------------------------------------------------------------- %
-
-\clearpage
-\section{Commands for babel language package authors}
-
-\NEWfeature{v3.5}
-\DescribeMacro{\caption@switchdefault}
-If the \package{caption3} kernel package is loaded, the command
-\begin{quote}|\caption@switchdefault|\marg{option}\marg{code with \#1}\marg{new value}\end{quote}
-is available which saves the old default value of the given option using
-\meta{code} and sets the new default value afterwards.
-
-\DescribeMacro{\caption@restoredefault}
-The command
-\begin{quote}|\caption@restoredefault|\marg{option}\marg{old value}\end{quote}
-restores the old default value which was stored in \meta{old value} before.
-
-Example:
-\begin{quote}
- |\DeclareCaptionLabelSeparator{french}{|\ldots|}|\\
- |\addto\extrasfrench{%|\\
- | \caption@switchdefault{labelseparator}{\babel@save #1}{french}}|\\
- |% Note: \caption@restoredefault isn't needed here|
-\end{quote}
-
-Another example:
-\begin{quote}
- |\caption@switchdefault{font}{\let\original@captionfont#1}{it}%|\\
- \ldots\\
- |\caption@restoredefault{font}{\original@captionfont}%|\\
-\end{quote}
-
-Since boths commands are defined with |\def| inside the \package{caption3}
-kernel, they could be pre-defined with
-\begin{quote}
- |\providecommand\caption@switchdefault[3]{}|\\
- |\providecommand\caption@restoredefault[2]{}|
-\end{quote}
-inside the babel language package so their existence doesn't need to be tested
-prior use.
-
-Additionally babel language packages should not re-define |\@make|\-|caption|
-if the \package{caption} package is loaded, i.e.~if |\caption@makecaption| is
-defined. (Unfortunately one cannot use the \LaTeX{} kernel command
-|\@if|\-|package|\-|loaded{caption}| here since it's only available in the
-document preamble.)
-
-Please note that code like
-\begin{quote}
- |\addto\extraswhatever{%|\\
- | \@ifundefined{caption@makecaption}{%|\\
- | \babel@save\@makecaption|\\
- | \let\@makecaption\my@makecaption|\\
- | }{%|\\
- | \caption@switchdefault{|\ldots|}{\babel@save #1}{|\ldots|}%|\\
- | }}|
-\end{quote}
-would be wrong since it mixes up the presence of the \package{caption3} kernel
-and the \package{caption} package.
-If the \package{caption3} kernel is loaded this does not mean that the
-\package{caption} package is loaded, too, and the latter one re-defines
-|\caption|, |\@caption|, and |\@make|\-|caption| while the \package{caption3}
-kernel does not re-define any of them, instead it only provides (default) values
-for the \package{caption}, \package{floatrow}, and \package{subfig} package.
-
-Currently there is build-in support for the following babel language options:
-|arabic|, |farsi|, |french|, |hungarian|, |latvian|, and |magyar|.
-This support could be deactivated by defining
-\begin{quote}
- |\def\caption@ifbabel@|\meta{package}|{false}|
-\end{quote}
-where \meta{package} is either |arabi|, |french|, |frenchle|, |hungarian|,
-or |latvian|.
-
-% --------------------------------------------------------------------------- %
-
-\clearpage
-\begin{thebibliography}{99}
-
- \bibitem{TLC2}
- Frank Mittelbach and Michel Goossens:\\
- \newblock {\em The {\LaTeX} Companion (2nd.~Ed.)},\\
- \newblock Addison-Wesley, 2004.
-
- \bibitem{beamer}
- Till Tantau:\\
- \href{http://www.ctan.org/pkg/beamer}%
- {\emph{User Guide to the Beamer Class, Version 3.07}},\\
- March 11, 2007
-
- \bibitem{KOMAScript}
- Markus Kohm \& Jens-Uwe-Morawski:\\
- \href{http://www.ctan.org/pkg/koma-script}%
- {\emph{KOMA-Script -- a versatile \LaTeXe\ bundle}},\\
- 2007-01-09
-
- \bibitem{NTG}
- Victor Eijkhout:\\
- \href{http://www.ctan.org/pkg/ntgclass}%
- {\emph{An introduction to the Dutch \LaTeX\ document classes}},\\
- 3 September 1989
-
- \bibitem{algorithms}
- Rog\'erio Brito:\\
- \href{http://www.ctan.org/pkg/algorithms}%
- {\emph{Algorithms}},\\
- June 2, 2006
-
-\iffalse
- \bibitem{algorithm2e}
- Christophe Fiorio:\\
- \href{http://www.ctan.org/pkg/algorithm2e}%
- {\emph{algorithm2e.sty -- package for algorithms}},\\
- March 11, 2007
-\fi
-
- \bibitem{float}
- Anselm Lingnau:\\
- \href{http://www.ctan.org/pkg/float}%
- {\emph{An Improved Environment for Floats}},\\
- 2001/11/08
-
- \bibitem{floatflt}
- Mats Dahlgren:\\
- \href{http://www.ctan.org/pkg/floatflt}%
- {\emph{Welcome to the floatflt package}},\\
- 1998/06/05
-
- \bibitem{floatrow}
- Olga Lapko:\\
- \href{http://www.ctan.org/pkg/floatrow}%
- {\emph{The floatrow package documentation}},\\
- 2007/12/24
-
- \bibitem{fltpage}
- Sebastian Gross:\\
- \href{http://www.ctan.org/pkg/fltpage}%
- {\emph{Welcome to the beta test of fltpage package!}},\\
- 1998/11/13
-
- \bibitem{hyperref}
- Sebastian Rahtz \& Heiko Oberdiek:\\
- \href{http://www.ctan.org/pkg/hyperref}%
- {\emph{Hypertext marks in \LaTeX}},\\
- November 12, 2007
-
- \bibitem{hypcap}
- Heiko Oberdiek:\\
- \href{http://www.ctan.org/pkg/hypcap}%
- {\emph{The hypcap package -- Adjusting anchors of captions}},\\
- 2007/04/09
-
- \bibitem{listings}
- Carsten Heinz \& Brooks Moses:\\
- \href{http://www.ctan.org/pkg/listings}%
- {\emph{The Listings Package}},\\
- 2007/02/22
-
- \bibitem{longtable}
- David Carlisle:\\
- \href{http://www.ctan.org/pkg/longtable}%
- {\emph{The longtable package}},\\
- 2004/02/01
-
- \bibitem{picinpar}
- Friedhelm Sowa:\\
- \href{http://www.ctan.org/pkg/picinpar}%
- {\emph{Pictures in Paragraphs}},\\
- July 13, 1993
-
- \bibitem{picins}
- Joachim Bleser and Edmund Lang:\\
- \href{http://www.ctan.org/pkg/picins}%
- {\emph{PicIns-Benutzerhandbuch Version 3.0}},\\
- September~1992
-
- \bibitem{rotating}
- Sebastian Rahtz and Leonor Barroca:\\
- \href{http://www.ctan.org/pkg/rotating}%
- {\emph{A style option for rotated objects in \LaTeX}},\\
- 1997/09/26
-
- \bibitem{setspace}
- Erica M. S. Harris \& Geoffrey Tobin:\\
- \href{http://www.ctan.org/pkg/setspace}%
- {\emph{LaTeX Document Package ``setspace''}},\\
- 1 December 2000
-
- \bibitem{sidecap}
- Rolf Niepraschk \& Hubert G\"a\ss lein:\\
- \href{http://www.ctan.org/pkg/sidecap}%
- {\emph{The sidecap package}},\\
- 2003/06/06
-
- \bibitem{subfigure}
- Steven D. Cochran:\\
- \href{http://www.ctan.org/pkg/subfigure}%
- {\emph{The subfigure package}},\\
- 2002/07/02
-
- \bibitem{subfig}
- Steven D. Cochran:\\
- \href{http://www.ctan.org/pkg/subfig}%
- {\emph{The subfig package}},\\
- 2005/07/05
-
- \bibitem{supertabular}
- Johannes Braams and Theo Jurriens:\\
- \href{http://www.ctan.org/pkg/supertabular}%
- {\emph{The supertabular environment}},\\
- 2002/07/19
-
- \bibitem{threeparttable}
- Donald Arseneau:\\
- \href{http://www.ctan.org/pkg/threeparttable}%
- {\emph{Three part tables: title, tabular environment, notes}},\\
- 2003/06/13
-
- \bibitem{wrapfig}
- Donald Arseneau:\\
- \href{http://www.ctan.org/pkg/wrapfig}%
- {\emph{WRAPFIG.STY ver 3.6}},\\
- 2003/01/31
-
- \bibitem{xtab}
- Peter Wilson:\\
- \href{http://www.ctan.org/pkg/xtab}%
- {\emph{The xtab package}},\\
- 2004/05/24
-
-\end{thebibliography}
-
-% --------------------------------------------------------------------------- %
-
-\end{document}
-
diff --git a/macros/latex/contrib/caption/caption-koma.dtx b/macros/latex/contrib/caption/caption-koma.dtx
index 380a054df9..84f2f61d3f 100644
--- a/macros/latex/contrib/caption/caption-koma.dtx
+++ b/macros/latex/contrib/caption/caption-koma.dtx
@@ -27,11 +27,10 @@
% caption.sty, caption-light.sty, caption2.sty, caption3.sty,
% caption-ams-smf.sto, caption-beamer.sto, caption-elsarticle.sto,
% caption-koma.sto, caption-memoir.sto, caption-ntg.sto,
-% caption-thesis.sto, bicaption.sty, ltcaption.sty, subcaption.sty,
-% and the user manuals
-% caption-deu.tex, caption-eng.tex, caption-rus.tex.
+% caption-thesis.sto, bicaption.sty, ltcaption.sty, subcaption.sty.
%
% \fi
+%
% \CheckSum{273}
%
% \iffalse
@@ -143,6 +142,7 @@
% \DoNotIndex{\hangindent,\hbox,\hfil,\hsize,\hskip,\hspace,\hss}
% \DoNotIndex{\ifcase,\ifdim,\ifnum,\ifodd,\ifvoid,\ifvmode}
% \DoNotIndex{\ifx,\ignorespaces,\itshape}
+% \DoNotIndex{\kernel@ifnextchar}
% \DoNotIndex{\Large,\large,\leavevmode,\leftmargini,\leftskip,\let,\linewidth}
% \DoNotIndex{\llap,\long,\m@ne,\margin,\mdseries,\message}
% \DoNotIndex{\newcommand,\newdimen,\newlength,\newline,\newif,\newsavebox}
diff --git a/macros/latex/contrib/caption/caption-light.dtx b/macros/latex/contrib/caption/caption-light.dtx
index c56734a414..697f8233ab 100644
--- a/macros/latex/contrib/caption/caption-light.dtx
+++ b/macros/latex/contrib/caption/caption-light.dtx
@@ -2,7 +2,7 @@
%
% This is file `caption-light.dtx'.
%
-% Copyright (C) 2020 Axel Sommerfeldt (axel.sommerfeldt@f-m.fm)
+% Copyright (C) 2020-2021 Axel Sommerfeldt (axel.sommerfeldt@f-m.fm)
%
% --------------------------------------------------------------------------
%
@@ -27,12 +27,11 @@
% caption.sty, caption-light.sty, caption2.sty, caption3.sty,
% caption-ams-smf.sto, caption-beamer.sto, caption-elsarticle.sto,
% caption-koma.sto, caption-memoir.sto, caption-ntg.sto,
-% caption-thesis.sto, bicaption.sty, ltcaption.sty, subcaption.sty,
-% and the user manuals
-% caption-deu.tex, caption-eng.tex, caption-rus.tex.
+% caption-thesis.sto, bicaption.sty, ltcaption.sty, subcaption.sty.
%
% \fi
-% \CheckSum{84}
+%
+% \CheckSum{99}
%
% \iffalse
%<*driver>
@@ -221,6 +220,7 @@
% \DoNotIndex{\hangindent,\hbox,\hfil,\hsize,\hskip,\hspace,\hss}
% \DoNotIndex{\ifcase,\ifdim,\ifnum,\ifodd,\ifvoid,\ifvmode}
% \DoNotIndex{\ifx,\ignorespaces,\itshape}
+% \DoNotIndex{\kernel@ifnextchar}
% \DoNotIndex{\Large,\large,\leavevmode,\leftmargini,\leftskip,\let,\linewidth}
% \DoNotIndex{\llap,\long,\m@ne,\margin,\mdseries,\message}
% \DoNotIndex{\newcommand,\newdimen,\newlength,\newline,\newif,\newsavebox}
@@ -264,13 +264,13 @@
%
% \begin{macrocode}
\NeedsTeXFormat{LaTeX2e}[1994/12/01]
-\ProvidesPackage{caption-light}[2020/08/24 v1.0 Customizing captions (AR)]
+\ProvidesPackage{caption-light}[2021/03/21 v1.0a Customizing captions (AR)]
% \end{macrocode}
%
% \section{Loading the kernel}
%
% \begin{macrocode}
-\RequirePackage{caption3}[2020/08/23] % needs v2.0 or newer
+\RequirePackage{caption3}[2020/08/30] % needs v2.0 or newer
% \end{macrocode}
%
% \section{Check against unknown document classes}
@@ -310,6 +310,7 @@
% \end{macrocode}
%
% \begin{macro}{\caption@makecaption}
+% \changes{v1.0a}{2021/03/21}{Support of \cs{ifcaption@star} and \cs{caption@@make@epilogue} added}
% |\@makecaption|\marg{label}\marg{text}\\
% We do basically the same as the original code (from the standard
% \LaTeX\ document classes), but take care of selected settings
@@ -327,15 +328,26 @@
\global \@minipagefalse
\hb@xt@\hsize{\hfil\box\@tempboxa\hfil}%
\fi
- \caption@iftop\caption@aboveskip\caption@belowskip}
+ \caption@iftop\caption@aboveskip\caption@belowskip
+ \caption@@make@epilogue}
% \end{macrocode}
% \begin{macrocode}
\newcommand\caption@@makecaption[2]{%
\caption@applyfont
- {\captionlabelfont #1}%
- {\caption@iflabelfont\captionlabelfont
- \relax\caption@labelsep}%
- {\captiontextfont #2}}
+ \ifcaption@star\else
+ \begingroup
+ \captionlabelfont #1\relax\relax
+ \endgroup
+ \fi
+ \ifcaption@star\else
+ \begingroup
+ \caption@iflabelfont\captionlabelfont
+ \relax\caption@labelsep
+ \endgroup
+ \fi
+ \begingroup
+ \captiontextfont #2%
+ \endgroup}
% \end{macrocode}
% \end{macro}
%
diff --git a/macros/latex/contrib/caption/caption-memoir.dtx b/macros/latex/contrib/caption/caption-memoir.dtx
index 1f29e68cb8..918669964e 100644
--- a/macros/latex/contrib/caption/caption-memoir.dtx
+++ b/macros/latex/contrib/caption/caption-memoir.dtx
@@ -27,17 +27,16 @@
% caption.sty, caption-light.sty, caption2.sty, caption3.sty,
% caption-ams-smf.sto, caption-beamer.sto, caption-elsarticle.sto,
% caption-koma.sto, caption-memoir.sto, caption-ntg.sto,
-% caption-thesis.sto, bicaption.sty, ltcaption.sty, subcaption.sty,
-% and the user manuals
-% caption-deu.tex, caption-eng.tex, caption-rus.tex.
+% caption-thesis.sto, bicaption.sty, ltcaption.sty, subcaption.sty.
%
% \fi
-% \CheckSum{56}
+%
+% \CheckSum{66}
%
% \iffalse
%<*driver>
\NeedsTeXFormat{LaTeX2e}[1994/12/01]
-\ProvidesFile{caption-memoir.drv}[2020/10/10 v2.1 Implementation of the caption-memoir package]
+\ProvidesFile{caption-memoir.drv}[2020/10/10 v2.2 Implementation of the caption-memoir package]
\hbadness=9999 \newcount\hbadness \hfuzz=100pt % Make TeX shut up.
%\errorcontextlines=3
%
@@ -139,6 +138,7 @@
% \DoNotIndex{\hangindent,\hbox,\hfil,\hsize,\hskip,\hspace,\hss}
% \DoNotIndex{\ifcase,\ifdim,\ifnum,\ifodd,\ifvoid,\ifvmode}
% \DoNotIndex{\ifx,\ignorespaces,\itshape}
+% \DoNotIndex{\kernel@ifnextchar}
% \DoNotIndex{\Large,\large,\leavevmode,\leftmargini,\leftskip,\let,\linewidth}
% \DoNotIndex{\llap,\long,\m@ne,\margin,\mdseries,\message}
% \DoNotIndex{\newcommand,\newdimen,\newlength,\newline,\newif,\newsavebox}
@@ -183,7 +183,7 @@
%
% \begin{macrocode}
\NeedsTeXFormat{LaTeX2e}[1994/12/01]
-\ProvidesFile{caption-memoir.sto}[2020/10/10 v2.1 Adaption of the caption package to the memoir document class (AR)]
+\ProvidesFile{caption-memoir.sto}[2021/06/30 v2.2 Adaption of the caption package to the memoir document class (AR)]
% \end{macrocode}
%
% \section{Adaptions already included in the caption package}
@@ -201,11 +201,12 @@
%
% \section{Single-line-check}
%
-% \begin{macro}{\caption@prepareslc}
+% \begin{macro}{\pagenote}
% \changes{v1.4a}{2011/10/21}{Re-definition of \cs{pagenote} added}
% We re-define \cs{pagenote} here so it won't disturb the single-line-check.
% \begin{macrocode}
-\g@addto@macro\caption@prepareslc{%
+\providecommand*\AtCaptionSingleLineCheck{\g@addto@macro\caption@prepareslc} % for caption v3.5
+\AtCaptionSingleLineCheck{%
\let\pagenote\caption@gobble}
% \end{macrocode}
% \end{macro}
@@ -277,6 +278,10 @@
%
% \section{Vertical spaces before and after captions}
%
+% \begin{macrocode}
+\AtCaptionPackage{%
+% \end{macrocode}
+
% The \class{memoir} document classes uses |\above|\-|caption|\-|skip| and |\below|\-|caption|\-|skip|
% different than the standard document classes and the \package{caption} package:
% They always typeset |\above|\-|caption|\-|skip| before the caption and
@@ -286,7 +291,20 @@
% package is used, so no extra vertical space will be created.
%
% \begin{macrocode}
-\AtCaptionPackage{\setlength\belowcaptionskip{0pt}}
+ \setlength\belowcaptionskip{0pt}%
+% \end{macrocode}
+%
+% Furthermore we adapt the `auto' positioning algorithm to match the one implemented
+% in the \class{memoir} document class.
+% (Note: This needs at least \package{caption} \version{3.6}.)
+%
+% \begin{macrocode}
+ \@ifundefined{DeclareCaptionAutoPosition}{}{%
+ \DeclareCaptionAutoPosition{\ifdim\prevdepth>-99\p@#2\else#1\fi}}%
+% \end{macrocode}
+%
+% \begin{macrocode}
+}
% \end{macrocode}
%
% \section{TODO}
diff --git a/macros/latex/contrib/caption/caption-ntg.dtx b/macros/latex/contrib/caption/caption-ntg.dtx
index 97e0379f5f..1285bbab92 100644
--- a/macros/latex/contrib/caption/caption-ntg.dtx
+++ b/macros/latex/contrib/caption/caption-ntg.dtx
@@ -27,11 +27,10 @@
% caption.sty, caption-light.sty, caption2.sty, caption3.sty,
% caption-ams-smf.sto, caption-beamer.sto, caption-elsarticle.sto,
% caption-koma.sto, caption-memoir.sto, caption-ntg.sto,
-% caption-thesis.sto, bicaption.sty, ltcaption.sty, subcaption.sty,
-% and the user manuals
-% caption-deu.tex, caption-eng.tex, caption-rus.tex.
+% caption-thesis.sto, bicaption.sty, ltcaption.sty, subcaption.sty.
%
% \fi
+%
% \CheckSum{8}
%
% \iffalse
@@ -141,6 +140,7 @@
% \DoNotIndex{\hangindent,\hbox,\hfil,\hsize,\hskip,\hspace,\hss}
% \DoNotIndex{\ifcase,\ifdim,\ifnum,\ifodd,\ifvoid,\ifvmode}
% \DoNotIndex{\ifx,\ignorespaces,\itshape}
+% \DoNotIndex{\kernel@ifnextchar}
% \DoNotIndex{\Large,\large,\leavevmode,\leftmargini,\leftskip,\let,\linewidth}
% \DoNotIndex{\llap,\long,\m@ne,\margin,\mdseries,\message}
% \DoNotIndex{\newcommand,\newdimen,\newlength,\newline,\newif,\newsavebox}
diff --git a/macros/latex/contrib/caption/caption-rus.pdf b/macros/latex/contrib/caption/caption-rus.pdf
deleted file mode 100644
index 108fae1235..0000000000
--- a/macros/latex/contrib/caption/caption-rus.pdf
+++ /dev/null
Binary files differ
diff --git a/macros/latex/contrib/caption/caption-rus.tex b/macros/latex/contrib/caption/caption-rus.tex
deleted file mode 100644
index 2082c375f0..0000000000
--- a/macros/latex/contrib/caption/caption-rus.tex
+++ /dev/null
@@ -1,6226 +0,0 @@
-%
-% This is file `caption-rus.tex'.
-% Russian translation of `caption-eng.tex'
-%
-% Copyright (C) 1994-2007 Axel Sommerfeldt (axel.sommerfeldt@f-m.fm)
-%
-% --------------------------------------------------------------------------
-%
-% This work may be distributed and/or modified under the
-% conditions of the LaTeX Project Public License, either version 1.3
-% of this license or (at your option) any later version.
-% The latest version of this license is in
-% http://www.latex-project.org/lppl.txt
-% and version 1.3 or later is part of all distributions of LaTeX
-% version 2003/12/01 or later.
-%
-% This work has the LPPL maintenance status "maintained".
-%
-% This Current Maintainer of this work is Axel Sommerfeldt.
-%
-% This work consists of the files caption.ins, caption.dtx, caption2.dtx,
-% ltcaption.dtx, and subcaption.dtx, the derived files caption.sty,
-% caption2.sty, caption3.sty, ltcaption.sty, and subcaption.sty, and the
-% user manuals caption-deu.tex, caption-eng.tex, and caption-rus.tex.
-%
-\NeedsTeXFormat{LaTeX2e}[1994/12/01]
-\ProvidesFile{caption-rus.tex}[2008/04/06 v3.1h The caption package in Russian]
-\hbadness=9999 \newcount\hbadness \hfuzz=20pt % Make TeX shut up.
-%\errorcontextlines=3
-
-\documentclass[USenglish,russian,a4paper]{ltxdoc}
-\usepackage{mathtext}
-\usepackage[T2A]{fontenc}
-\usepackage[cp1251]{inputenc}
-\usepackage{babel}
-\usepackage{listpen,afterpage}
-
-\setlength\parindent{0pt}
-\setlength\parskip{\smallskipamount}
-\setlength\leftmargini{1.5em}% default = 2.5em
-\makeatletter
-\g@addto@macro\MacroFont{\normalcolor}
-\@flushglue = 1em plus 1fil
-\parfillskip = 1em plus 1fil
-\makeatother
-
-\newcommand\LineBreak{\linebreak[3]}
-\newcommand\PageBreak{\pagebreak[3]}
-\usepackage{ifpdf}
-\ifpdf
- \usepackage{mathptmx}
- \addtolength\marginparwidth{15pt}
- \IfFileExists{literat.sty}{\usepackage{literat}}{}
-% \IfFileExists{t2aftx.fd}{\def\sfdefault{ftx}}{}
-% \IfFileExists{t2apxtt.fd}{\def\ttdefault{pxtt}}{}
- \ifdim\paperheight=297mm % a4paper
- \advance\textheight.5in
- \advance\topmargin-.35in
- \emergencystretch1em
- \tolerance7000
- \renewcommand\LineBreak{\\}
- \renewcommand\PageBreak{\clearpage}
- \fi
-\fi
-
-\usepackage[bottom]{footmisc}
-\usepackage{graphicx,longtable,setspace}
-
-\usepackage{hypdoc}
-\hypersetup{unicode}
-\ifpdf\usepackage{hypdestopt}\fi
-\hypersetup{pdfkeywords={LaTeX, package, caption},pdfstartpage={},pdfstartview={}}
-\hypersetup{breaklinks=true}
-
-\usepackage[listof=0,hypcap=false]{caption}[2008/04/01]
-
-\def\itemautorefname {\cyr\cyrp.}%
-\def\figureautorefname {\cyr\cyrr\cyri\cyrs.}%
-\def\tableautorefname {\cyr\cyrt\cyra\cyrb\cyrl.}%
-\def\partautorefname {\cyr\cyrch.}%
-\def\appendixautorefname {\cyr\cyrp\cyrr\cyri\cyrl.}%
-\def\chapterautorefname {\cyr\cyrg\cyrl.}%
-\def\sectionautorefname {\cyr\cyrr\cyra\cyrz\cyrd.}%
-\def\subsectionautorefname {\cyr\cyrr\cyra\cyrz\cyrd.}%
-\def\subsubsectionautorefname {\cyr\cyrr\cyra\cyrz\cyrd.}%
-\def\paragraphautorefname {\cyr\cyrp.}%
-\def\subparagraphautorefname {\cyr\cyrp.}%
-\def\pageautorefname {\cyr\cyrs.}%
-
-\DeclareRobustCommand*\eTeX{\texorpdfstring
- {\leavevmode\hbox{$\varepsilon$}-\TeX}%
- {e-TeX}}
-\DeclareRobustCommand*\AmS{\texorpdfstring
- {{\protect\usefont{OMS}{cmsy}{m}{n}A\kern-.1667em\lower.5ex\hbox{M}\kern-.125emS}}%
- {AMS}}
-\DeclareRobustCommand*\KOMAScript{\texorpdfstring
- {\textsf{K\kern.05em O\kern.05em M\kern.05em A\kern.1em-\kern.1em Script}}%
- {KOMA-Script}}
-\DeclareRobustCommand*\NTG{NTG}
-\DeclareRobustCommand*\SmF{SMF}
-
-\usepackage{marvosym}
-\makeatletter
-\newcommand*\INFO{\@ifstar{\@INFO{}}{\@INFO{\vbox to \ht\strutbox}}}
-\newcommand*\@INFO[1]{\MARGINSYM{#1{\hspace*{-1em}\LARGE\Info\hspace*{1em}}}}
-\makeatother
-
-\newcommand*\MARGINSYM[1]{\hskip 1sp \marginpar{\raggedleft\textcolor{blue}{{#1}}}}
-\newcommand*\NEW[2]{}%\hskip 1sp \marginpar{\footnotesize\sffamily\raggedleft#1\\#2}}
-
-% \ContinuedFloat
-\DeclareCaptionLabelFormat{continued1e}{Continued #1~#2}
-\DeclareCaptionLabelFormat{continued1r}{#1~#2 (\textit{ïîäîëĉċíèċ})}
-\DeclareCaptionLabelFormat{continued2}{#1~#2\asbuk{ContinuedFloat}}
-% \DeclareCaptionLabelFormat
-\DeclareCaptionLabelFormat{bf-parens}{(\textbf{#2})}
-% \DeclareCaptionStyle
-\DeclareCaptionStyle{mystyle}[margin=5mm,justification=centering]%
- {font=footnotesize,labelfont=sc,margin={10mm,0mm}}
-% Example 1
-\DeclareCaptionFormat{myformat1}{#1#2\\#3}
-\newlength\myindention
-\DeclareCaptionFormat{myformat2}{#1#2\\\hspace*\myindention#3}
-\DeclareCaptionOption{myindention}{\setlength\myindention{#1}}
-% Example 2
-\DeclareCaptionFormat{reverse}{#3#2#1}
-\DeclareCaptionLabelFormat{fullparens}{(\bothIfFirst{#1}{~}#2)}
-\DeclareCaptionLabelSeparator{fill}{\hfill}
-% Example 3
-\DeclareCaptionFormat{llap}{\llap{#1#2}#3\par}
-\DeclareCaptionFormat{llapx}{\llap{\makebox[5em][l]{#1}}#3\par}
-% Example 4
-\DeclareCaptionLabelFormat{andtable}{#1~#2 \& \tablename~\thetable}
-
-\newcommand*\purerm[1]{{\upshape\mdseries\rmfamily #1}}
-\newcommand*\puresf[1]{{\upshape\mdseries\sffamily #1}}
-\newcommand*\purett[1]{{\upshape\mdseries\ttfamily #1}}
-\let\class\puresf \let\package\puresf
-
-\newcommand*\csmarg[1]{\texttt{\char`\{#1\char`\}}}
-\newcommand*\csoarg[1]{\texttt{\char`\[#1\char`\]}}
-\newcommand*\version[2][]{$v#2$}
-\newcommand*\x{\discretionary{}{}{}}
-
-\newenvironment{Annotation}%
- {\ifvmode\else\unskip\par\fi\pagebreak[2]%
- \smallskip
- \small(\ignorespaces}{\unskip)\par}
-\newenvironment{Annotation*}%
- {\ifvmode\else\unskip\par\fi\pagebreak[2]%
- \small(\ignorespaces}{\unskip)\par}
-
-\newenvironment{Example}%
- {\ifvmode\else\unskip\par\fi\pagebreak[2]%
- \minipage{\linewidth}\smallskip}%
- {\smallskip\endminipage\par}
-
-\makeatletter
-\newcommand\example{\@ifstar
- {\@example{belowskip=\abovecaptionskip}}%
- {\@example{}}}
-\def\@example#1{%
- \@testopt{\@@example{#1}}{figure}}
-\long\def\@@example#1[#2]#3#4{%
- \begingroup
- \captionsetup{#1,size=small,margin={\leftmargini,10pt},#3}%
- \captionof{#2}[]{#4}%
- \endgroup}
-\makeatother
-
-\newenvironment{Expert}%
- {\ifvmode\else\unskip\par\fi\pagebreak[3]%
- \smallskip
- \footnotesize\ignorespaces}{\par}
-\newenvironment{Expert*}%
- {\ifvmode\else\unskip\par\fi\pagebreak[3]%
- \footnotesize\ignorespaces}{\par}
-
-\newenvironment{Note}[1][\DefaultNoteText]%
- {\ifvmode\else\unskip\par\fi
- \smallskip
- \small\emph{#1}:~\ignorespaces}{\par}
-\newenvironment{Note*}[1][\DefaultNoteText]%
- {\ifvmode\else\unskip\par\fi
- \small\emph{#1}:~\ignorespaces}{\par}
-
-\newenvironment{Options}[1]%
- {\list{}{\renewcommand\makelabel[1]{\texttt{##1}\hfil}%
- \settowidth\labelwidth{\texttt{#1\space}}%
- \setlength\leftmargin{10pt}%
- \addtolength\leftmargin{\labelwidth}%
- \addtolength\leftmargin{\labelsep}}}%
- {\endlist}
-
-\makeatletter
-\def\Ref{\@ifstar{\@Ref\ref}{\@Ref\autoref}}
-\def\@Ref#1#2{#1{#2}: \textit{\nameref{#2}}}
-\newcommand*\SEE[3][]{\nopagebreak{#1(#2 #3)}}
-\newcommand*\SeeUserDefined[1][]{\See{\Ref{declare}#1}}
-\makeatother
-
-\begin{document}
-\let\subsectionautorefname\sectionautorefname
-\let\subsubsectionautorefname\sectionautorefname
-
-\def\thispackage{ïàêċò \package{caption}}
-\def\Thispackage{Ïàêċò \package{caption}}
-
-\newcommand*\DefaultNoteText{Çàìċ÷àíèċ}
-% \newcommand\NEWfeature{\NEW{New feature}}
-% \newcommand\NEWdescription{\NEW{New description}}
-\newcommand\NEWfeature{\NEW{Íîâà˙ âîçìîĉíîñòü}}
-\newcommand\NEWdescription{\NEW{Íîâîċ îïèñàíèċ}}
-\makeatletter
-\newcommand*\See{\@ifstar{\SEE{Ñì.}}{\SEE[\small]{Ñì.}}}
-\newcommand*\see{\@ifstar{\SEE{ñì.}}{\SEE[\small]{ñì.}}}
-
-% --------------------------------------------------------------------------- %
-
-\GetFileInfo{caption-rus.tex}
-\let\docdate\filedate
-\GetFileInfo{caption.sty}
-
-% \title{Customizing captions of floating environments
-% using the caption package\texorpdfstring{\thanks{%
-% This package has version number \fileversion,
-% last revised \filedate.
-\title{Íàñòîéêà ïîäïèñċé ïëàâàŝùèġ îáúċêòîâ (ôëîòîâ) ñ~ïîìîùüŝ ïàêċòà
- \package{caption}\thanks{Äàííûé ïàêċò âċñèè
-%%% \fileversion, ïîñëċäíèé àç ìîäèôèöèîâàí \filedate.
- v3.1m, ïîñëċäíèé àç ìîäèôèöèîâàí 2010/01/09.
-%^^A% Translation of the version v3.1h, dated 2008/04/03.
-%^^A% The questions and notes about translation please
-%^^A% send to \texttt{Lapko.O@g23.relcom.ru} (Olga Lapko).
-%^^A% The version of translation could be obsolete. Please
-%^^A% look English or German documentation for the new information
-%^^A% (see margin labels).}}
- Ïċċâîä äîêóìċíòàöèè v3.1h, äàòèîâàííîé 2008/04/03.
- Âîïîñû è~çàìċ÷àíè˙ ïî ïċċâîäó íàïàâë˙éòċ ïî àäċñó \texttt{Lapko.O@g23.relcom.ru}.
- \emph{Âċñè˙ ïċċâîäà ìîĉċò îòíîñèòüñ˙ ê~îäíîé èç ïċäûäóùèġ âċñèé ïàêċòà è~ìîĉċò
- ñîäċĉàòü óñòàċâĝèċ äàííûċ.
- Îáàùàéòċñü ê~àíëèéñêîé èëè íċìċöêîé äîêóìċíòàöèè çà áîëċċ ñâċĉċé èíôîìàöèċé
- (îáàùàéòċ âíèìàíèċ íà ïîìċòêè íà ïîë˙ġ).
- }}{}}
-% \author{Axel Sommerfeldt\\
-\author{Àêñċëü Çîììċôċëüäò (Axel Sommerfeldt)\\
- \url{https://gitlab.com/axelsommerfeldt/caption}}
-\date{\docdate}
-\maketitle
-
-% --------------------------------------------------------------------------- %
-
-\begin{abstract}
-% \Thispackage\ offers customization of captions
-% in floating environments such |figure| and |table| and cooperates with
-% many other packages.
-% \par\smallskip
- \Thispackage\ ïċäëààċò íàñòîéêè ïċ÷àòè
- ïîäïèñċé äë˙ ïëàâàŝùèġ îáúċêòîâ (ôëîòîâ)
- |figure| è~|table| è~ñîâìċñòèì (êîîïċèóċòñ˙)
- ñî~ìíîèìè ïàêċòàìè.
-% \textit{Please note:} Many document classes already have build-in options and
-% commands for customizing captions.
-% If these possibilities are sufficient for you, there is usually no need for
-% you to use the \package{caption} package at all.
-% And if you are just interested in using the command \cs{captionof}, loading of
-% the very small \package{capt-of} package is usually sufficient.
-\par\smallskip
-\textit{Îáàòèòċ âíèìàíèċ}: ìíîĉċñòâî êëàññîâ äîêóìċíòîâ óĉċ èìċŝò âñòîċííûċ îïöèè
-è~êîìàíäû äë˙ íàñòîéêè ïîäïèñċé.
-Ċñëè ŭòè íàñòîéêè âàñ óäîâëċòâî˙ŝò, òî âîâñċ íċò íċîáġîäèìîñòè â~èñïîëüçîâàíèè ïàêċòà
-\package{caption}.
-Ċñëè âàì íóĉíà òîëüêî êîìàíäà \cs{captionof} \cdash--- çàóçêà íċáîëüĝîî ïàêċòà
-\package{capt-of} áóäċò äîñòàòî÷íà.
-\end{abstract}
-
-\newcommand\exampletext{%
-% White sand beaches. The pink smoothness of the conch shell. A sea abundant
-% with possibilities. Duty-free shops filled with Europe's finest gifts and
-% perfumes. Play your favorite game of golf amidst the tropical greens on one
-% of the many championship courses.}
- Òèáċòñêà˙ ìàíäàëà ïċäñòàâë˙ċò ñîáîé ñâîċîáàçíóŝ êàòó îñîáîî ġàìà
- è~Ĝàìáàëû. Âèäíû âîîòà ïî ÷ċòû¸ì ñòîîíàì ñâċòà, ïîñòîéêà èä¸ò
- óñòóïàìè ââċġ. (Ìîçàèêà ïîëà ûöàñêîî ġàìà íà î.\,îäîñ âîñïîèçâîäèò
- óçî ìàíäàëû.)}
-
-% --------------------------------------------------------------------------- %
-
-% \section*{Introduction}
-\section*{Ââċäċíèċ}
-
-% Within the standard \LaTeX\ document classes captions haven't received the
-% attention they deserve. Simply typeset as an ordinary paragraph there is no
-% remarkable visual difference from the rest of the text, like here:
-Âíóòè ñòàíäàòíûġ êëàññîâ \LaTeX'à~ïîäïèñè íċ ïîëó÷èëè çàñëóĉċííîî
-âíèìàíè˙. Îíè íàáèàŝòñ˙ êàê îáû÷íûé àáçàö è~âíċĝíċ íċ îòëè÷àŝòñ˙ îò îñíîâíîî
-òċêñòà, êàê çäċñü:
-
-\example*{size=normalsize,margin=0pt}{\exampletext}
-
-% There should be possibilities to change this; for example, it would be nice
-% to make the text of the caption a little bit smaller as the normal
-% text, add an extra margin, typeset the caption label with the same font
-% family and shape as your headings etc. Just like this one:
-Äîëĉíà áûòü âîçìîĉíîñòü èçìċíèòü ŭòî; íàïèìċ, òċêñò ëó÷ĝċ çàäàòü
-ìċíüĝèì êċëċì, äîáàâèòü âò˙ĉêó (ñ~îáċèġ ñòîîí),
-ó~íóìċàöèîííûġ çàîëîâêîâ ïîäïèñċé çàäàòü òàêèċ ĉċ
-íà÷ċòàíèċ èëè íàñûùċííîñòü, êàê ó~çàîëîâêîâ àçäċëîâ. Íàïèìċ, êàê ñëċäóŝùóŝ ïîäïèñü:
-
-\example*{size=small,margin=10pt,labelfont=bf,labelsep=endash}{\exampletext}
-
-% You can do this easily with this package as there are many ready-to-use
-% caption formatting options, but you are free to define your very own stuff, too.
-Ñ~äàííûì ïàêċòîì ŭòî ñäċëàòü ïîñòî, ïîñêîëüêó â~í¸ì óĉċ ċñòü ìíîĉċñòâî îòîâûġ
-îïöèé êëŝ÷ċé íàñòîéêè, è~âû ñâîáîäíû è~âûáàòü ñâî¸ ñî÷ċòàíèċ îïöèé äë˙
-îôîìëċíè˙, è~ñîçäàòü ñâîè îïöèè.
-
-\bigskip
-
-\INFO\begin{minipage}[t]{\textwidth}
-\small
-% Please note that \thispackage\ is only controlling the look \& feel of the
-% captions. It does \emph{not} control the placement of the captions.
-% (But you could do so by using other packages like the \package{floatrow}
-% package\cite{floatrow}.)
-Îáàòèòċ âíèìàíèċ, ÷òî \thispackage\ êîíòîëèóċò òîëüêî îôîìëċíèċ
-ïîäïèñċé. Îí \emph{íċ} êîíòîëèóċò àçìċùċíèċ ïîäïèñċé.
-(Íî ŭòî âîçìîĉíî, ċñëè èñïîëüçîâàòü äîïîëíèòċëüíî äóèċ ïàêċòû,
-íàïèìċ \package{floatrow}\cite{floatrow}.)
-\end{minipage}
-
-\begingroup\small
-%^^A% \vspace{2ex}\centerline{\textbf{Frequently Appeared Design\footnote
-%^^A% {Added in translated text.}}\nopagebreak}
-\vspace{2ex}\centerline{\textbf{\TeX íè÷ċñêîċ ċäàêòèîâàíèċ\footnote
- {Äîáàâëċíî ïè ïċċâîäċ.}}\nopagebreak}
-\begin{multicols}{2}\raggedright\advance\rightskip1em
- \makeatletter\let\item\@idxitem\ignorespaces\makeatother
-%^^A% \item Last line of caption centered
-\item Âûêëŝ÷êà ïîñëċäíċé ñòîêè ïî öċíòó
- \pageref{TeXr:centerlast}
-%^^A% \item Hanged caption label
-\item Íóìċàöèîííûé çàîëîâîê íà âċñó
- \pageref{TeXr:hang:label}
-%
-%^^A \indexspace
-%
-%^^A% \item Spaces above and below captions
-\item Îòáèâêè ó~ïîäïèñċé íàä è~ïîä ôëîòàìè
- \pageref{TeXr:captionskips:a}%^^A--\pageref{TeXr:captionskips:z}
-%^^A% \item Settings, for caption label
-\item Îôîìëċíèċ
-%^^A% \subitem for caption label
-\subitem íóìċàöèîííûġ çàîëîâêîâ
- \pageref{TeXr:caplabel:a}%^^A--\pageref{TeXr:caplabel:z}
-%^^A% \subitem for one-line captions
-\subitem îäíîñòî÷íûġ ïîäïèñċé
- \pageref{TeXr:singleline:a}%^^A--\pageref{TeXr:singleline:z}
-%^^A% \subitem for multi-paragraph captions
-\subitem ïîäïèñċé èç íċñêîëüêèġ àáçàöċâ
- \pageref{TeXr:multipar:a}%^^A--\pageref{TeXr:multipar:z}
-%
-%^^A \indexspace
-%
-%^^A% \item Captions
-\item Ïîäïèñè\nopagebreak
-%^^A% \subitem for continued floats
-\subitem ê~ôëîòàì ñ~ïîäîëĉċíèċì
- \pageref{TeXr:continued:a}\nopagebreak %^^A--\pageref{TeXr:continued:z}
-%^^A% \subitem above tables
-\subitem íàä òàáëèöàìè
- \pageref{TeXr:captop:a}%^^A--\pageref{TeXr:captop:z}
-%^^A% \subitem skipped entry in list
-\subitem áċç çàïèñè â~ñïèñêċ èñóíêîâ,
-%^^A% \subsubitem trick with empty option
- \subsubitem òŝê ñ~äîïîëíèòċëüíûì àóìċíòîì êîìàíäû
- |\caption| \pageref{TeXr:nolistentry:I}
-%^^A% \subsubitem key |listof=|
- \subsubitem êëŝ÷ ïàêċòà |list=|
- \pageref{TeXr:nolistentry:II}
-%^^A% \subitem unlabeled
-\subitem áċç íóìċàöèîííîî çàîëîâêà
- \pageref{TeXr:starcaption:a}%^^A--\pageref{TeXr:starcaption:z}
-%^^A% \subitem outside float
-\subitem âíċ îêóĉċíè˙ ôëîòà
- \pageref{TeXr:captionof:a}%^^A--\pageref{TeXr:captiononof:z}
-%
-\end{multicols}%
-\endgroup
-\clearpage
-%
-% --------------------------------------------------------------------------- %
-
-\clearpage
-\tableofcontents
-
-% --------------------------------------------------------------------------- %
-
-\clearpage
-% \section{Using this package}
-\section{Èñïîëüçîâàíèċ ïàêċòà}
-\label{usage}
-
-\DescribeMacro{\usepackage}
-% Insert
-Äîáàâüòċ
-\begin{quote}
- |\usepackage|\oarg{options}|{caption}[|\texttt{\filedate}|]|
-\end{quote}
-% into the preamble of your document, i.e.~the part of your document
-% between |\document|\-|class| and |\begin{doc|\-|u|\-|ment}|.
-% The options control how your captions will look like; e.g.,
-â~ïċàìáóëó âàĝċî äîêóìċíòà, ò.\,ċ. â~÷àñòü ôàéëà ìċĉäó êîìàíäàìè
-|\document|\-|class| è~|\begin{document}|.
-Îïöèè çàäàŝò íàñòîéêè îôîìëċíè˙ ïîäïèñċé â~êíèċ; íàïèìċ, îïöèè
-\begin{quote}
- |\usepackage[margin=10pt,font=small,labelfont=bf,|\\
- | labelsep=endash]{caption}|%
- %|[|\texttt{\filedate}|]|
-\end{quote}
-% would result in captions looking like the second one in the introduction.
-çàäàäóò ïîäïèñè, ïîġîĉèċ íà âòîîé ïèìċ âî ââċäċíèè.
-
-\DescribeMacro{\captionsetup}
-% For a later change of options \thispackage\ provides the command
-Äë˙ ïîñëċäóŝùèġ èçìċíċíèé \thispackage\ ïċäëààċò êîìàíäó
-\begin{quote}
- |\captionsetup|\oarg{float type}\marg{options}\quad.
-\end{quote}
-% So
-Ñëċäîâàòċëüíî, îïċäċëċíè˙
-\begin{quote}
- |\usepackage[margin=10pt,font=small,labelfont=bf]{caption}|
-\end{quote}
-% and
-\begin{quote}
- |\usepackage{caption}|\\
- |\captionsetup{margin=10pt,font=small,labelfont=bf}|
-\end{quote}
-% are equal in their results.
-ŭêâèâàëċíòíû.
-
-% It's good to know that |\caption|\-|setup| has an effect on the current
-% environment only. So if you want to change settings for the
-% current |figure| or |table| only, just place the |\caption|\-|setup| command
-% inside the |figure| or |table| right before the |\caption| command.
-% For example
-Íóĉíî îáàòèòü âíèìàíèċ, ÷òî óñòàíîâêè |\captionsetup| ìîóò äċéñòâîâàòü è~íà îäíî
-îêóĉċíèċ. Òàê ÷òî, ċñëè âû ġîòèòċ èçìċíèòü óñòàíîâêè òîëüêî
-îäíîî îêóĉċíè˙ |figure| èëè |table|, ïîìċñòèòċ êîìàíäó |\captionsetup|
-âíóòè |figure| èëè |table| ï˙ìî ïċċä êîìàíäîé |\caption|.
-Íàïèìċ
-\begin{quote}
- |\begin{figure}|\\
- | |\ldots\\
- | \captionsetup{singlelinecheck=off}|\\
- | \caption{|\ldots|}|\\
- |\end{figure}|
-\end{quote}
-% switches the single-line-check off, but only for this |figure|,
-% so all the other captions remain untouched.
-îòêëŝ÷àċò êîíòîëü îäíîñòî÷íîé ïîäïèñè (ñì.~îá ŭòîì íèĉċ), íî òîëüêî äë˙ ŭòîî
-îêóĉċíè˙ |figure|, äóèċ ïîäïèñè íċ èçìċí˙òñ˙.
-
-\smallskip
-
-\begin{Annotation}
-% For a detailed description of |\caption|\-|setup| see \Ref{captionsetup}.
-Ïîäîáíîċ îïèñàíèċ êîìàíäû |\captionsetup| ñì.~â~\Ref{captionsetup}.
-\end{Annotation}
-
-% --------------------------------------------------------------------------- %
-
-\clearpage
-% \section{Options}
-\section{Îïöèè}
-\label{options}
-
-\def\OptionLabel{RaggedRight}
-\def\UserDefined{\ldots}
-
-% --------------------------------------------------------------------------- %
-
-% \subsection{Formatting}
-\subsection{Îôîìëċíèċ}
-\label{formats}
-
-\DescribeMacro{format=}
-% A figure or table caption mainly consists of three parts: the caption label,
-% which says if this object is a `Figure' or `Table' and what number is
-% associated with it, the caption text itself, which is normally a short
-% description of contents, and the caption separator which separates the text
-% from the label.
-Ïîäïèñü èñóíêà èëè òàáëèöû îáû÷íî èìċċò òè ÷àñòè\nopagebreak: íóìċàöèîííûé
-çàîëîâîê, êîòîûé îáú˙âë˙ċò, ÷òî ŭòîò îáúċêò íàçûâàċòñ˙ `èñ'óíîê èëè `Òàáëèöà' è~èìċċò
-ñâîé íîìċ; ñîáñòâċííî òċêñò, êîòîûé îáû÷íî äà¸ò êàòêîċ îïèñàíèċ
-ñîäċĉàíè˙; àçäċëèòċëü ìċĉäó íóìċàöèîííûì çàîëîâêîì è~òċêñòîì.
-
-% The \textit{caption format} determines how this information will be presented;
-% it is specified with the option
-\textit{Ôîìàò ïîäïèñè} îïċäċë˙ċò, êàê äàííà˙ èíôîìàöè˙ áóäċò ïċäñòàâëċíà;
-ŭòî çàäà¸òñ˙ êëŝ÷îì
-\begin{quote}
- |format=|\meta{format name}\quad
-\end{quote}
-% having the name of the caption format as its argument.
-ñ~îïöèċé, îïċäċë˙ŝùċé îôîìëċíèċ (ôîìàò) ïîäïèñè.
-
-% There are two standard caption formats:
-Äàëċċ äâà ñòàíäàòíûġ îôîìëċíè˙ ïîäïèñè:
-%\footnote{You have the option to
-%define your own ones, too. See section \ref{declare}:
-%\textit{``Do it yourself!''} for details.}
-
-\begin{Options}{\OptionLabel}
- \item[plain]%\NEWdescription{v3.0h}
-% Typesets the captions as a normal paragraph.
- Ïċ÷àòàċò ïîäïèñè êàê îáû÷íûé àáçàö.
-
- \item[hang]
-% Indents the caption text, so it will `hang' under the first line of the text.
- Äċëàċò âò˙ĉêó òàê, ÷òî ïċâà˙ ñòîêà [íóìċàöèîííûé çàîëîâîê] âûñòóïàċò âëċâî.%
- \label{TeXr:hang:label}
-
- \item[\UserDefined]
-% Own formats can be defined using |\Declare|\-|Caption|\-|Format|.\LineBreak
-% \SeeUserDefined
- Ñîáñòâċííîċ îôîìëċíèċ ìîĉċò áûòü îïċäċëċíî, ñ~ïîìîùüŝ êîìàíäû
- |\Declare|\-|Caption|\-|Format|. \SeeUserDefined
-\end{Options}
-
-\begin{Example}
-% An example: Specifying the option
- Ïèìċ: çàäàíèċ îïöèè
- \begin{quote}
- |format=hang|
- \end{quote}
-% yields captions like this:
- ñîçäà¸ò ïîäïèñè êàê ŭòà:
- \example{format=hang}{\exampletext}
-\end{Example}
-
-\pagebreak[3]
-\DescribeMacro{indention=}
-% For both formats (\texttt{plain} and \texttt{hang}) you can setup an extra
-% indention starting at the second line of the caption. You do this with the
-% option
-Äë˙ îáîèġ îôîìëċíèé (\texttt{plain} è~\texttt{hang}) ìîĉíî óñòàíîâèòü
-äîïîëíèòċëüíóŝ âò˙ĉêó âòîûġ ñòîê ïîäïèñè. Ŭòî ìîĉíî ñäċëàòü ñ~êëŝ÷îì
-\begin{quote}
- |indention=|\meta{amount}\quad.
-\end{quote}
-%^^A% [Please note, that indention of the keys \verb|format=hang| and
-%^^A% |indention=|\meta{amount} are summarized.---\emph{Trans.}]
-[Îáàòèòċ âíèìàíèċ, ÷òî âò˙ĉêà èç êëŝ÷ċé \verb|format=hang| è~|indention=|\meta{amount}
-ñóììèóŝòñ˙. \cdash--- \emph{Ïèì.\,ïċċâ.}]
-
-% Two examples:
-Ïàà ïèìċîâ:
-
-\begin{Example}
- \begin{quote}
- |format=plain,indention=.5cm|
- \end{quote}
- \captionsetup{skip=0pt}
- \example{format=plain,indention=.5cm}{\exampletext}
-\end{Example}
-
-\begin{Example}
- \begin{quote}
- |format=hang,indention=-0.5cm|
- \end{quote}
- \captionsetup{skip=0pt}
- \example{format=hang,indention=-0.5cm}{\exampletext}
-\end{Example}
-
-\bigskip
-
-\pagebreak[3]
-\DescribeMacro{labelformat=}
-% With the option
-Ñ~êëŝ÷îì\label{TeXr:caplabel:a}%
-\nopagebreak[3]
-\begin{quote}
- |labelformat=|\meta{label format name}
-\end{quote}
-\nopagebreak[3]
-%\NEWdescription{v3.0e}
-% you specify how the caption label will be typeset.
-% There are five standard caption label formats:
-âû çàäà¸òċ, êàê ïċ÷àòàċòñ˙ íóìċàöèîííà˙ ÷àñòü.
-Ñóùċñòâóŝò ÷ċòûċ ñòàíäàòíûġ îôîìëċíè˙ íóìċàöèîííîî çàîëîâêà:
-
-\begin{Options}{\OptionLabel}
- \item[default]
-% The caption label will be typeset as specified by the document class,
-% usually this means the name and the number (like \texttt{simple}).
-% (This is the default behaviour.)
- íóìċàöèîííûé çàîëîâîê ïċ÷àòàċòñ˙ òàê ĉċ êàê â~ñòàíäàòíûġ êëàññàġ,
- ŭòî îáû÷íî íàçâàíèċ ôëîòà è~íîìċ (êàê \texttt{simple}).
- (Çàäà¸òñ˙ ïî óìîë÷àíèŝ.)
-
- \item[empty]
-% The caption label will be empty.
- Íóìċàöèîííûé çàîëîâîê îòñóòñòâóċò.
-\iffalse
-% (This option makes sense when used together with other options like
-% \texttt{labelsep=none}.)
- (Ŭòà îïöè˙ èìċċò ñìûñë âìċñòċ ñ~îïöè˙ìè òèïà \texttt{labelsep=none}.)
-\fi
-
- \item[simple]
-% The caption label will be typeset as a name and a number.
- Íóìċàöèîííûé çàîëîâîê ïċ÷àòàċòñ˙ êàê íàçâàíèċ ôëîòà è~ċî íîìċ.
-
- \item[brace]\NEWfeature{v3.1f}
-% The caption label will be closed with a single (right) brace.
- Íóìċàöèîííûé çàîëîâîê (íîìċ ïîäôëîòà) îòäċë¸í ñïàâà êóëîé ñêîáêîé.
-
- \item[parens]
-% The number of the caption label will be typeset in parentheses.
- Íîìċ â~íóìċàöèîííîé ÷àñòè çàîëîâêà ïċ÷àòàċòñ˙ â~ñêîáêàġ.
-
- \item[\UserDefined]
-% Own label formats can be defined using |\Declare|\-|Caption|\-|Label|\-|Format|.
-% \SeeUserDefined
- Ñîáñòâċííîċ îôîìëċíèċ ìîĉċò áûòü îïċäċëċíî ñ~ïîìîùüŝ
- êîìàíäû |\Declare|\-|Caption|\-|Label|\-|Format|.
-\end{Options}
-
-\begin{Example}
-% An example: Using the options
- Ïèìċ: ñ~îïöè˙ìè êëŝ÷ċé
- \begin{quote}
- |format=plain,labelformat=parens,labelsep=quad|
- \end{quote}
-% gives captions like this one:
- ñîçäà¸òñ˙ òàêà˙ ïîäïèñü:
- \example{format=plain,labelformat=parens,labelsep=quad}{\exampletext}
-\end{Example}
-[Íàçâàíèċ â~íóìċàöèîííîì çàîëîâêċ äë˙ äàííîî ïèìċà èçìċíċíî ñ~ïîìîùüŝ
-îïöèè |figurename|. \See{\Ref{names}}]
-
-\medskip
-
-\begin{Note*}
-% Some environments, e.g.~the |algorithm| environment offered by the
-% \package{algorithm2e} package, might react allergic to a change of the
-% caption label format.
-Ó~íċêîòîûġ îêóĉċíèé, íàïèìċ ó~îêóĉċíè˙ |algorithm|, ïċäëààċìîî
-ïàêċòîì \package{algorithm2e}, èçìċíċíèċ ôîìàòà íóìċàöèîííîî çàîëîâêà
-ìîĉċò âûçâàòü àëëċèŝ.
-\end{Note*}
-
-\bigskip
-
-\pagebreak[3]
-\DescribeMacro{labelsep=}
-% With the option
-Ñ~êëŝ÷îì
-\begin{quote}
- |labelsep=|\meta{label separator name}
-\end{quote}
-% you specify what caption separator will be used.\footnote{%
-% If the caption label or the caption text is empty,
-% no separator will be used.}
-% You can choose one of the following:
-âû îïċäċë˙ċòċ êàêîé àçäċëèòċëü [ìċĉäó íóìċàöèîííûì çàîëîâêîì è~òċêñòîì]
-áóäċò èñïîëüçîâàòüñ˙\footnote{%
- Ċñëè íóìċàöèîííûé çàîëîâîê èëè òċêñò ïîäïèñè ïóñòûċ,
- àçäċëèòċëü íċ èñïîëüçóċòñ˙.}.
-Âû ìîĉċòċ çàäàòü ñëċäóŝùèċ îïöèè:
-
-\begin{Options}{newline}
- \item[none]
-% There is no caption separator.
- Îòñóòñòâóċò àçäċëèòċëü íóìċàöèîííîé ÷àñòè è~òċêñòà ïîäïèñè.
-\iffalse
-% (This option makes sense when used together with other options like
-% \texttt{labelformat=empty}.)
- (Ïèìċíċíèċ ŭòîé îïöèè
- èìċċò ñìûñë âìċñòċ ñ~îïöè˙ìè òèïà \texttt{labelformat=empty}.)
-\fi
-
- \item[colon]
-% The caption label and text will be separated by a colon and a space.
- Íóìċàöèîííûé çàîëîâîê è~òċêñò àçäċëċíû äâîċòî÷èċì è~ïîáċëîì.
-
- \item[period]
-% The caption label and text will be separated by a period and a space.
- Íóìċàöèîííûé çàîëîâîê è~òċêñò àçäċëċíû òî÷êîé è~ïîáċëîì.
-
- \item[space]
-% The caption label and text will be separated by a single space.
- Íóìċàöèîííûé çàîëîâîê è~òċêñò àçäċëċíû ïîáċëîì.
-
- \item[quad]
-% The caption label and text will be separated by a |\quad|.
- Íóìċàöèîííûé çàîëîâîê è~òċêñò àçäċëċíû êċċëüíîé (|\quad|).
-
- \item[newline]
-% The caption label and text will be separated by a line break (|\\|).
-% Please note that this separator does not work with all caption
-% formats (e.g.~|format=|\x|hang|), and you'll get an error message
-% trying such combination of options.
- Íóìċàöèîííûé çàîëîâîê è~òċêñò àçäċëċíû íîâîé ñòîêîé~(|\\|).
- Îáàòèòċ âíèìàíèċ, ÷òî ŭòîò àçäċëèòċëü íċ àáîòàċò ñ~íċêîòîûìè
- ôîìàòàìè (íàïèìċ, |format=|\x|hang|), è~âû ïîëó÷èòċ ñîîáùċíèċ
- îá îĝèáêċ ïè ïîïûòêċ èñïîëüçîâàòü ŭòó êîìáèíàöèŝ.
-
- \item[endash]\NEWfeature{v3.0h}
-% The caption label and text will be separated by an en-dash,
-% surrounded by spaces (\verb*| -- |).
- Íóìċàöèîííûé çàîëîâîê è~òċêñò àçäċë˙ċòñ˙ êàòêèì òèċ,
- îêóĉ¸ííûì ïîáċëàìè (\verb*| -- |).
-
- \item[\UserDefined]
-% Own separators can be defined using |\Declare|\-|Caption|\-|Label|\-|Sep|\-|a|\-|ra|\-|tor|.
-% \SeeUserDefined
- Ñîáñòâċííûċ àçäċëèòċëè ìîĉíî îïċäċëèòü, èñïîëüçó˙ êîìàíäó
- |\Declare|\-|Caption|\-|Label|\-|Sep|\-|a|\-|ra|\-|tor|.
- \SeeUserDefined
-\end{Options}
-
-% Three examples:
-Òè ïèìċà:
-\begin{Example}
- \begin{quote}
- |format=plain,labelsep=period|
- \end{quote}
- \captionsetup{skip=0pt}
- \example{format=plain,labelsep=period}{\exampletext}
-\end{Example}
-
-\begin{Example}
- \begin{quote}
- |format=plain,labelsep=newline,singlelinecheck=false|
- \end{quote}
- \captionsetup{skip=0pt}
- \example{format=plain,labelsep=newline,singlelinecheck=false}{\exampletext}
-\end{Example}
-
-\begin{Example}
- \begin{quote}
- |format=plain,labelsep=endash|
- \end{quote}
- \captionsetup{skip=0pt}
- \example{format=plain,labelsep=endash}{\exampletext}
-\end{Example}
-
-\bigskip
-
-\pagebreak[3]
-\DescribeMacro{textformat=}\NEWfeature{v3.0l}%
-% With the option
-Ñ~îïöèċé
-\nopagebreak[3]
-\begin{quote}
- |textformat=|\meta{text format name}
-\end{quote}
-\nopagebreak[3]
-% you specify how the caption text will be typeset.
-% There are two standard caption text formats:
-âû îïċäċë˙ċòċ êàê òċêñò ïîäïèñè áóäċò íàïċ÷àòàí.
-Ñóùċñòâóċò äâà ñòàíäàòíûġ ôîìàòà ïîäïèñè:
-
-\begin{Options}{\OptionLabel}
- \item[simple]
-% The caption text will be typeset as it is.
- Òċêñò ïîäïèñè áóäċò íàïċ÷àòàí êàê ċñòü.
-
- \item[period]
-% The caption text will be followed by a period.
- Â~êîíöċ ïîäïèñè ñòàâèòñ˙ òî÷êà.
-
- \item[\UserDefined]
-% Own label formats can be defined using |\Declare|\-|Caption|\-|Text|\-|Format|.
-% \SeeUserDefined
- Ñîáñòâċííûċ ôîìàòû òċêñòà ìîóò áûòü îïċäċëċíû ñ~èñïîëüçîâàíèċì êîìàíäû |\Declare|\-|Caption|\-|Text|\-|Format|.
- \SeeUserDefined
-\end{Options}
-
-% --------------------------------------------------------------------------- %
-
-\PageBreak
-% \subsection{Justification}
-\subsection{Âûêëŝ÷êà}
-\label{justification}
-
-\DescribeMacro{justification=}
-% As addition to the caption format you could also specify a
-% \emph{caption justification}; it is specified with the option
-Ïè îôîìëċíèè ïîäïèñè âû ìîĉċòċ îïċäċëèòü
-\emph{âûêëŝ÷êó ïîäïèñè}; îíà çàäà¸òñ˙ êëŝ÷îì
-\begin{quote}
- |justification=|\meta{justification name}\quad.
-\end{quote}
-
-% You can choose one of the following:
-Âû ìîĉċòċ âûáàòü ñëċäóŝùèċ îïöèè:
-
-\begin{Options}{\OptionLabel}
- \item[justified]
-% Typesets the caption as a normal paragraph.
- Ïċ÷àòàċò ïîäïèñü â~âèäċ îáû÷íîî àáçàöà. (Ïî óìîë÷àíèŝ.)
-
- \item[centering]
-% Each line of the caption will be centered.
- Âñċ ñòîêè âûêëŝ÷ċíû ïî öċíòó.
-
-% \item[Centering]
-
- \item[centerlast]
-% The last line of each paragraph of the caption text will be centered.
- Àáçàö íàáèàċòñ˙ íà ïîëíûé ôîìàò, ïîñëċäí˙˙ ñòîêà âûêëŝ÷ċíà ïî öċíòó.
-
- \item[centerfirst]
-% Only the first line of the caption will be centered.
- Öċíòèóċòñ˙ òîëüêî ïċâà˙ ñòîêà [îñòàëüíûċ, â~òîì ÷èñëċ è~êîíöċâà˙,
- âûêëŝ÷àŝòñ˙ íà ïîëíûé ôîìàò].
-
- \item[raggedright]
-% Each line of the caption will be moved to the left margin.
- Ñòîêè ïîäïèñè âûêëŝ÷ċíû âëċâî.
-
-\iffalse
- \item[RaggedRight]
-% Each line of the caption will be moved to the left margin using
-% the command |\RaggedRight| from the \package{ragged2e} package.
- Ñòîêè ïîäïèñè âûêëŝ÷ċíû âëċâî ñ~èñïîëüçîâàíèċì êîìàíäû
- |\RaggedRight| èç ïàêċòà \package{ragged2e}.
-\else
- \item[RaggedRight]
-% Each line of the caption will be moved to the left margin, too.
-% But this time the command |\RaggedRight| of the \package{ragged2e}
-% package will be used to achieve this.
-% The main difference to |raggedright| is that the word breaking
-% algorithm of \TeX\ will work inside captions.\footnote{%
-% The need for the \package{ragged2e} package will be detected at
-% run-time, therefore you maybe need a second \LaTeX\ run if this
-% option is used for the first time.}
- Ñòîêè ïîäïèñè òàêĉċ âûêëŝ÷ċíû âëċâî.
- Íî â~äàííîì ñëó÷àċ èñïîëüçóċòñ˙ êîìàíäà |\RaggedRight| ïàêċòà
- \package{ragged2e}. Îñíîâíîċ îòëè÷èċ îò îïöèè |raggedright|
- çàêëŝ÷àċòñ˙ â~èñïîëüçîâàíèè àëîèòìà Plain \TeX'à äë˙ àçûâà
- ñëîâ âíóòè ïîäïèñè.\footnote{
- Íċîáġîäèìîñòü â~ŭòîì ïàêċòċ îïċäċë˙ċòñ˙ Ğíà ëċòóğ,
- ïîŭòîìó ïè èñïîëüçîâàíèè ŭòîé îïöèè äîêóìċíò íóĉíî äâàĉäû îáàáîòàòü \LaTeX'îì.}.
-\fi
-
- \item[raggedleft]
-% Each line of the caption will be moved to the right margin.
- Ñòîêè ïîäïèñè âûêëŝ÷ċíû âïàâî.
-
-% \item[RaggedLeft]
-% % Each line of the caption will be moved to the right margin using
-% % the command |\RaggedLeft| from the \package{ragged2e} package.
-% Ñòîêè ïîäïèñè âûêëŝ÷ċíû âïàâî ñ~èñïîëüçîâàíèċì êîìàíäû
-% |\RaggedRight| èç ïàêċòà \package{ragged2e}.
-
-%\showhyphens{justification}
- \item[\UserDefined]
-% Own justifications can be defined using
-% |\Declare|\-|Caption|\-|Jus|\-|ti|\-|fi|\-|ca|\-|tion|.
-% \SeeUserDefined
- Ñîáñòâċííûċ îïċäċëċíè˙ âûêëŝ÷êè ìîĉíî çàäàòü ñ~ïîìîùüŝ êîìàíäû
- |\Declare|\-|Caption|\-|Jus|\-|ti|\-|fi|\-|ca|\-|tion|.
- \SeeUserDefined
-\end{Options}
-
-% Three examples:
-Òè ïèìċà:\label{TeXr:centerlast}%
-\begin{Example}
- \begin{quote}
- |format=plain,justification=centerlast|
- \end{quote}
- \captionsetup{skip=0pt}
- \example{format=plain,justification=centerlast}{\exampletext}
-\end{Example}
-
-\begin{Example}
- \begin{quote}
- |format=hang,justification=raggedright|
- \end{quote}
- \captionsetup{skip=0pt}
- \example{format=hang,justification=raggedright}{\exampletext}
-\end{Example}
-
-\begin{Example}
- \begin{quote}
- |format=plain,labelsep=newline,justification=centering|
- \end{quote}
- \captionsetup{skip=0pt}
- \example*{format=plain,labelsep=newline,justification=centering}{\exampletext}
-\end{Example}
-
-\smallskip
-
-\PageBreak
-\DescribeMacro{singlelinecheck=}\label{TeXr:singleline:a}%
-% The standard \LaTeX\ document classes (\class{article}, \class{report}, and
-% \class{book}) automatically center a caption if it fits in one single line:
-Ñòàíäàòíûċ êëàññû \LaTeX'à (\class{article}, \class{report}, è~\class{book})
-àâòîìàòè÷ċñêè öċíòèóŝò ïîäïèñü ċñëè îíà îäíîñòî÷íà˙:
-
-\example*{}{A short caption.}
-
-\INFO
-% \Thispackage\ adapts this behavior and therefore usually ignores the
-% justification \& indention you have set with |justification=| \&
-% |indention=| in such case.
-% But you can switch this special treatment of such short captions off
-% with the option
-\Thispackage\ ñëċäóċò çà ŭòèì àëîèòìîì è~ïîŭòîìó
-â~òàêèġ ñëó÷à˙ġ èíîèóċò âûêëŝ÷êó, çàäàííóŝ êëŝ÷àìè |justification=| è~|indention=|.
-Îïċäċëèòü, ñëċäîâàòü ŭòîìó àëîèòìó èëè íċò ìîĉíî,
-çàäàâ êëŝ÷
-\begin{quote}
- |singlelinecheck=|\meta{bool}\quad.
-\end{quote}
-% Using |false|, |no|, |off| or |0| for \meta{bool} switches the
-% extra centering off:
-Èñïîëüçó˙ |false|, |no|, |off| èëè |0| âìċñòî \meta{bool} âû îòêëŝ÷èòċ
-öċíòèîâàíèċ îäíîñòî÷íîé ïîäïèñè:
-\begin{quote}
- |singlelinecheck=false|
-\end{quote}
-% Doing so the above short caption would look like
-Ïîñëċ ŭòîî îïċäċëċíè˙ êîîòêèċ ïîäïèñè
-[ïè çàäàíèè âûêëŝ÷êè ïî óìîë÷àíèŝ, â~âèäċ îáû÷íîî àáçàöà]
-áóäóò âûë˙äċòü òàê
-
-\begingroup
- \captionsetup{type=figure}
- \ContinuedFloat
- \example*{singlelinecheck=false}{A short caption.}
-\endgroup
-
-% You switch the extra centering on again by using |true|, |yes|, |on| or |1|
-% for \meta{bool}. (The default is on.)
-Èñïîëüçó˙ |true|, |yes|, |on| èëè |1| âìċñòî \meta{bool} âû âêëŝ÷èòċ ìċġàíèçì
-öċíòèîâàíè˙ êîîòêèġ ïîäïèñċé. (Çàäàíî ïî óìîë÷àíèŝ.)%^^A
-\label{TeXr:singleline:z}
-
-% --------------------------------------------------------------------------- %
-
-% \subsection{Fonts}
-\subsection{Ĝèôòû}
-\label{fonts}
-
-\DescribeMacro{font=}
-\DescribeMacro{labelfont=}
-\DescribeMacro{textfont=}
-% There are three font options which affects different parts of the caption:
-% One affecting the whole caption (|font|), one which only affects the caption
-% label and separator (|label|\-|font|) and at least one which only affects the
-% caption text (|text|\-|font|).
-% You set them up using the options
-Çàäàíû òè êëŝ÷à êîòîûċ îïċäċë˙ŝò ĝèôò àçíûġ ŭëċìċíòîâ ïîäïèñè:
-Ïċâûé çàäà¸ò ĝèôò äë˙ âñċé ïîäïèñè (|font|), âòîîé çàäà¸ò ĝèôò òîëüêî
-äë˙ íóìċàöèîííîî çàîëîâêà è~àçäċëèòċë˙ (|label|\-|font|), è~òċòèé
-\cdash--- ĝèôò äë˙ òċêñòà (|text|\-|font|).
-Âû çàäà¸òċ èġ, èñïîëüçó˙ êëŝ÷è
-\begin{quote}\begin{tabular}{@{}r@{}ll}
- |font=| & \marg{font options} & ,\\
- |labelfont=| & \marg{font options} & , è\\
- |textfont=| & \marg{font options} & .\\
-\end{tabular}\end{quote}
-% where \meta{font options} is a list of comma separated font options.
-äċ àóìċíòîì \meta{font options} ˙âë˙ŝòñ˙ ïċċ÷èñëċííûċ ÷ċċç çàï˙òóŝ îïöèè.
-
-% And these are the available font options:
-Äàëċċ óĉċ ñîçäàííûċ îïöèè äàííûġ êëŝ÷ċé:
-
-\begin{Options}{stretch=\meta{amount}}
- \item[scriptsize] {\scriptsize Î÷ċíü ìàëċíüêèé}
- \item[footnotesize] {\footnotesize Îáû÷íî èñïîëüçóċòñ˙ â~ñíîñêàġ}
- \item[small] {\small Ìàëċíüêèé}
- \item[normalsize] {\normalsize Íîìàëüíûé}
- \item[large] {\large Áîëüĝîé}
- \item[Large] {\Large Ċù¸ áîëüĝċ}
-\end{Options}
-\vspace{0pt}\pagebreak[3]
-\begin{Options}{stretch=\meta{amount}}
-% \item[normalfont] {\normalfont Normal shape \& series \& family}
- \item[normalfont] {\normalfont Èñġîäíûċ ñċìċéñòâî, íàñûùċííîñòü è~íà÷ċòàíèċ}
-
- \item[up] {\upshape Ï˙ìîé}
- \item[it] {\itshape Êóñèâ}
- \item[sl] {\slshape Íàêëîííûé}
- \item[sc] {\scshape Êàïèòċëü}
-
- \item[md] {\mdseries Íîìàëüíà˙ íàñûùċííîñòü (ñâċòëûé)}
- \item[bf] {\bfseries Ïîëóĉèíûé}
-
- \item[rm] {\rmfamily Ĝèôò ñ~çàñċ÷êàìè}
- \item[sf] {\sffamily óáëċíûé}
- \item[tt] {\fontfamily{cmtt}\selectfont Ĝèôò ïèĝóùċé ìàĝèíêè (àâíîĝèèííûé)}
-\end{Options}
-\vspace{0pt}\pagebreak[3]
-\begin{Options}{stretch=\meta{amount}}
-% \item[singlespacing] Single spacing \See{\Ref{setspace}}
-% \item[onehalfspacing] One-and-a-half spacing \See{\Ref{setspace}}
-% \item[doublespacing] Double spacing \See{\Ref{setspace}}
-% \item[stretch=\meta{amount}] |\setstretch|\marg{amount} \See{\Ref{setspace}}
- \item[singlespacing] Îäèíàíûé èíòċëèíü˙ĉ \See{\Ref{setspace}}
- \item[onehalfspacing] Ïîëóòîíûé èíòċëèíü˙ĉ \See{\Ref{setspace}}
- \item[doublespacing] Äâîéíîé èíòċëèíü˙ĉ \See{\Ref{setspace}}
- \item[stretch=\meta{amount}] ${} \equiv {}$|\setstretch|\marg{amount} \See{\Ref{setspace}}
-\end{Options}
-\vspace{0pt}\pagebreak[3]
-\begin{Options}{stretch=\meta{amount}}
-% \item[normalcolor] |\normalcolor|
-% \item[color=\meta{colour}] |\color|\marg{colour}
-% {\small(If the \package{color} or \package{xcolor} package is loaded,
-% see \Ref{declare} for an example)}
- \item[normalcolor] ñîîòâċòñòâóċò êîìàíäċ |\normalcolor|
- \item[color=\meta{colour}] îïöè˙ êëŝ÷à ŭêâèâàëċíòíà àóìċíòó êîìàíäû |\color|\marg{colour}
- {\small(Ċñëè çàóĉċí ïàêċò \package{color} èëè \package{xcolor},
- ñì., íàïèìċ~\Ref{declare})}
-\end{Options}
-\vspace{0pt}\pagebreak[3]
-\begin{Options}{stretch=\meta{amount}}
-% \item[normal] The combination of the options |normal|\-|color|,
-% |normal|\-|font|, |normal|\-|size|, and |single|\-|spacing|
- \item[normal] Êîìáèíàöè˙ îïöèé |normal|\-|color|,
- |normal|\-|font|, |normal|\-|size| è~|single|\-|spacing|
-
- \item[\UserDefined]
-% Own font options can be defined using |\Declare|\-|Caption|\-|Font|.
-% \SeeUserDefined
- Ñîáñòâċííûċ îïöèè ìîóò áûòü îïċäċëċíû ñ~ïîìîùüŝ êîìàíäû
- |\Declare|\-|Caption|\-|Font|.
- \SeeUserDefined
-\end{Options}
-
-% If you use only one of these options you can omit the braces;
-% e.g., the options
-Ċñëè èñïîëüçóċòñ˙ îäíà îïöè˙ êëŝ÷à, ôèóíûċ ñêîáêè ìîĉíî îïóñòèòü;
-íàïèìċ, îïöèè
-%\begin{quote}
- |font={small}|
-%\end{quote}
-% and
-%\begin{quote}
- |font=small|
-%\end{quote}
-% will give the same result.
-äàäóò îäèíàêîâûé ċçóëüòàò.
-
-% Three examples:
-Òè ïèìċà
-\begin{Example}
- \begin{quote}
- |font=it,labelfont=bf|
- \end{quote}
- \captionsetup{skip=0pt}
- \example{font=it,labelfont=bf}{\exampletext}
-\end{Example}
-
-\begin{Example}
- \begin{quote}
- |labelfont=bf,textfont=it|
- \end{quote}
- \captionsetup{skip=0pt}
- \example{labelfont=bf,textfont=it}{\exampletext}
-\end{Example}
-
-\begin{Example}
- \begin{quote}
- |font={small,stretch=0.80}|
- \end{quote}
- \captionsetup{skip=0pt}
- \example{font={small,stretch=0.80}}{\exampletext}
-\end{Example}
-
-\medskip
-
-\pagebreak[3]
-\DescribeMacro{font+=}
-\DescribeMacro{labelfont+=}
-\DescribeMacro{textfont+=}
-\NEWfeature{v3.1f}%
-% You can also add font options to the current ones, so for example
-Âû òàêĉċ ìîĉċòċ äîáàâèòü îïöèè ĝèôòà ê~òċêóùèì, òàê íàïèìċ çàïèñü
-\begin{quote}
- |\captionsetup{font=small}|\\
- |\captionsetup{font+=it}|
-\end{quote}
-% is identical to
-áóäċò èäċíòè÷íà
-\begin{quote}
- |\captionsetup{font={small,it}}|
-\end{quote}
-
-% --------------------------------------------------------------------------- %
-
-% \subsection{Margins and further paragraph options}
-\subsection{Ïîë˙ è~äóèċ îïöèè ôîìèîâàíè˙ àáçàöà}
-\label{margins}
-
-\DescribeMacro{margin=}
-\DescribeMacro{width=}
-% For all captions you can specify \emph{either} an extra margin \emph{or}
-% a fixed width:~\footnote{Only fixed widths are supported here; if you are
-% looking for a way to limit the width of the caption to the width of the
-% figure or table, please take a look at the \package{floatrow}\cite{floatrow}
-% or \package{threeparttable}\cite{threeparttable} package.}
-Äë˙ âñċġ ïîäïèñċé ìîĉíî îïċäċëèòü \emph{ëèáî} äîïîëíèòċëüíóŝ âò˙ĉêó
-\emph{ëèáî} ôèêñèîâàííóŝ ĝèèíó. Ŭòî çàäà¸òñ˙ êëŝ÷àìè\footnote{Çäċñü ïîääċĉèâàŝòñ˙
- òîëüêî ôèêñèîâàííûċ ĝèèíû; ċñëè âàì íóĉíî çàäàòü ĝèèíó ïîäïèñè ïî ĝèèíċ
- àôèêè èëè òàáëè÷íîî ìàòċèàëà, îáàòèòċñü ê~ïàêċòàì \package{floatrow}\cite{floatrow}
- èëè \package{threeparttable}\cite{threeparttable}.}
-\begin{quote}\begin{tabular}{@{}r@{}ll}
- |margin=| & \meta{amount} & \emph{--èëè--}\\
- |margin=| & |{|\meta{left amount}|,|\meta{right amount}|}| & \emph{--èëè--}\\
- |width=| & \meta{amount} & \\
-\end{tabular}\end{quote}
-\NEWfeature{v3.1}
-% If you specify just one \meta{amount} for the margin, it will be used for
-% both, the left and right margin, e.g.~|margin=|\x|10pt| is equivalent to
-% |margin=|\x|{10pt,10pt}|.
-% In two-side documents the left and right margin will be swapped on even pages.
-Ċñëè âû îïċäċëèòċ òîëüêî îäíî çíà÷ċíèċ \meta{amount} äë˙ ïîë˙, îíî áóäċò èñïîëüçîâàíî äë˙ îáîèġ ïîëċé,
-ëċâîî è~ïàâîî, íàïèìċ,~|margin=|\x|10pt| ŭêâèâàëċíòíî |margin=|\x|{10pt,10pt}|.
-Äë˙ äâóñòîîííèġ äîêóìċíòîâ ëċâîċ è~ïàâîċ ïîë˙ íà ÷¸òíûġ ïîëîñàġ çċêàëüíî îòîáàç˙òñ˙.
-\DescribeMacro{oneside}
-\DescribeMacro{twoside}
-% To prevent this you can specify the option |oneside| additionally,
-% e.g.~|\caption|\-|setup{margin=|\x|{0pt,10pt},|\x|oneside}|.\par
-% But if you are specifying a width, then both, the left and the right margin,
-% will have the same amount.
-Ċñëè âàì ŭòî íċ íóĉíî âû ìîĉċòċ çàäàòü äîïîëíèòċëüíî îïöèŝ |oneside|,
-íàïèìċ,~|\caption|\-|setup|\x|{margin=|\x|{0pt,10pt},|\x|oneside}|.\par
-Íî ċñëè âû îïċäċë˙ċòċ ĝèèíó ïîäïèñè, òî îáà ïîë˙ áóäóò îäèíàêîâûìè.
-
-% Three examples will illustrating this:
-Òè ïèìċà äë˙ èëëŝñòàöèè:
-\begin{Example}
- \begin{quote}
- |margin=10pt|
- \end{quote}
- \captionsetup{skip=0pt}
- \example{margin=10pt}{\exampletext}
-\end{Example}
-
-\begin{Example}
- \begin{quote}
- |margin={1cm,0cm}|
- \end{quote}
- \captionsetup{skip=0pt}
- \example{margin={1cm,0cm}}{\exampletext}
-\end{Example}
-
-\begin{Example}
- \begin{quote}
- |width=.75\textwidth|
- \end{quote}
- \captionsetup{skip=0pt}
- \example{width=.75\textwidth}{\exampletext}
-\end{Example}
-
-\begin{Note}
-% When the caption is placed beside the contents (for example in a |SC|\-|figure|
-% environment offered by the \package{sidecap} package\cite{sidecap}) or the
-% figure is an in-text figure (for example in a |wrap|\-|figure| environment
-% offered by the \package{wrapfig} package\cite{wrapfig}), the margin setting
-% will be automatically reset to |0pt| at the very beginning of the environment.
-% But if you really want to setup an extra margin for these environments, you can
-% do so by setting this margin either inside the environment itself, of by
-% specifying a margin for this particular environment,
-% e.g.~|\caption|\-|setup[SC|\-|figure]{margin=|\x|10pt}|.
-Êîäà ïîäïèñü ïîìċùċíà ˙äîì ñ~ñîäċĉèìûì (íàïèìċ âíóòè
-îêóĉċíè˙ |SCfigure|, ïċäëààċìîî ïàêċòîì \package{sidecap} package\cite{sidecap})
-èëè îêóĉċíèċ ôëîòà îáòċêàċòñ˙ òċêñòîì (ôëîò ïîìċù¸í â~îáîêó, íàïèìċ â~îêóĉċíèè |wrap|\-|figure|
-ïċäëààċìîì ïàêċòîì \package{wrapfig}\cite{wrapfig}), óñòàíîâêè ïîëċé
-îáíóë˙ŝòñ˙ â~íà÷àëċ îêóĉċíè˙. Íî ċñëè âàì äċéñòâèòċëüíî íóĉíî çàäàòü
-âò˙ĉêó äë˙ ŭòèġ îêóĉċíèé, âû ìîĉċòċ çàäàòü íóĉíûċ ïîë˙ âíóòè îêóĉċíè˙, çàäàâ
-óñòàíîâêè ïîëċé ñïċöèàëüíî äë˙ ŭòèġ îêóĉċíèé, íàïèìċ,
-|\caption|\-|setup[SC|\-|figure]|\x|{margin=10pt}|.
- \end{Note}
-
-\begin{Expert}
-\DescribeMacro{margin*=}\NEWfeature{v3.1}%
-% There is also a starred variant of the |margin=| option, |margin*=|, which only
-% changes the margin if no width was set.
-Ñóùċñòâóċò òàêĉċ Ğçâ¸çäíûéğ âàèàíò êëŝ÷à |margin=|, êëŝ÷ |margin*=|, êîòîûé
-èçìċí˙ċò ïîë˙ òîëüêî êîäà íċ çàäàíà ĝèèíà.
-\end{Expert}
-
-\begin{Expert}
-\DescribeMacro{minmargin=}
-\DescribeMacro{maxmargin=}\NEWfeature{v3.1}%
-% You can also set a minimum or maximum margin amount. This can be useful for
-% limiting the margin amount in smaller environments, e.g.~|minipage|s.
-% For example the \SmF\ document classes limit the margin amount to
-% |maxmargin=|\x|0.1\linewidth|. (See \Ref{SMF})
-Âû ìîĉċòċ òàêĉċ çàäàòü ìèíèìàëüíûé èëè ìàêñèìàëüíûé àçìċ ïîëċé. Ŭòî ìîĉċò áûòü ïîëċçíî
-äë˙ îàíè÷ċíè˙ àçìċà ïîëċé â~óìċíüĝċííûġ ôîìàòàġ, íàïèìċ âíóòè îêóĉċíè˙~|minipage|.
-Íàïèìċ êëàññû äîêóìċíòîâ \SmF\ îàíè÷èâàŝò ïîë˙
-|maxmargin=|\x|0.1\linewidth|. (Ñì.~\Ref{SMF})
-\end{Expert}
-
-\medskip
-
-\pagebreak[3]
-\DescribeMacro{parskip=}\label{TeXr:multipar:a}%
-% This option is useful for captions containing more than one paragraph.
-% It specifies the extra vertical space inserted between them:
-Äàííûé êëŝ÷ ïîíàäîáèòñ˙, ċñëè ïîäïèñè ñîäċĉàò áîëċċ îäíîî àáçàöà.
-Îí çàäà¸ò äîïîëíèòċëüíóŝ âċòèêàëüíóŝ îòáèâêó ìċĉäó àáçàöàìè:
-\begin{quote}
- |parskip=|\meta{amount}
-\end{quote}
-% One example:
-Ïèìċ:
-\begin{Example}
- \begin{quote}
- |margin=10pt,parskip=5pt|
- \end{quote}
- \captionsetup{skip=0pt}
- \example{margin=10pt,parskip=5pt}{%
-% First paragraph of the caption. This one contains some test, just to
-% show how these options affect the layout of the caption.\par
-% Second paragraph of the caption. This one contains some text, too, to
-% show how these options affect the layout of the caption.}
- Ïċâûé àáçàö ïîäïèñè. Îí ñîäċĉèò íċìíîî òċêñòà, ÷òîáû ïîêàçàòü
- êàê çàäàííûċ íàñòîéêè ñîçäàŝò îôîìëċíèċ ïîäïèñè.\par
- Âòîîé àáçàö ïîäïèñè. Îí òîĉċ ñîäċĉèò íċìíîî òċêñòà, ÷òîáû ïîêàçàòü
- êàê çàäàííûċ íàñòîéêè ñîçäàŝò îôîìëċíèċ ïîäïèñè.}
-\end{Example}
-
-\pagebreak[3]
-\DescribeMacro{hangindent=}
-% The option
-Êëŝ÷
-\begin{quote}
- |hangindent=|\meta{amount}
-\end{quote}
-% is for setting up a hanging indention starting from the second line of each
-% paragraph. If the caption contains just a single paragraph, using this option
-% leads to the same result as the option |indention=|\meta{amount} you already
-% know about.
-% But if the caption contains multiple paragraphs you will notice the difference:
-çàäà¸ò âò˙ĉêó äë˙ âòîûġ ñòîê êàĉäîî àáçàöà ïîäïèñè.
-Ċñëè ïîäïèñü ñîñòîèò èç îäíîî àáçàöà, ŭòîò êëŝ÷ äà¸ò òîò ĉċ ċçóëüòàò
-÷òî è~èçâċñòíûé âàì êëŝ÷ |indention=|\meta{amount}.
-Íî â~ïîäïèñè èç íċñêîëüêèġ àáçàöċâ âû óâèäèòċ àçíèöó:
-
-\begin{Example}
- \begin{quote}
- |format=hang,indention=-.5cm|
- \end{quote}
- \captionsetup{skip=0pt}
- \example{format=hang,indention=-.5cm}{%
-% First paragraph of the caption. This one contains some test, just to
-% show how these options affect the layout of the caption.\par
-% Second paragraph of the caption. This one contains some text, too, to
-% show how these options affect the layout of the caption.}
- Ïċâûé àáçàö ïîäïèñè. Îí ñîäċĉèò íċìíîî òċêñòà, ÷òîáû ïîêàçàòü
- êàê çàäàííûċ íàñòîéêè ñîçäàŝò îôîìëċíèċ ïîäïèñè.\par
- Âòîîé àáçàö ïîäïèñè. Îí òîĉċ ñîäċĉèò íċìíîî òċêñòà, ÷òîáû ïîêàçàòü
- êàê çàäàííûċ íàñòîéêè ñîçäàŝò îôîìëċíèċ ïîäïèñè.}
-\end{Example}
-
-\begin{Example}
- \begin{quote}
- |format=hang,hangindent=-.5cm|
- \end{quote}
- \captionsetup{skip=0pt}
- \example{format=hang,hangindent=-.5cm}{%
-% First paragraph of the caption. This one contains some test, just to
-% show how these options affect the layout of the caption.\par
-% Second paragraph of the caption. This one contains some text, too, to
-% show how these options affect the layout of the caption.}
- Ïċâûé àáçàö ïîäïèñè. Îí ñîäċĉèò íċìíîî òċêñòà, ÷òîáû ïîêàçàòü
- êàê çàäàííûċ íàñòîéêè ñîçäàŝò îôîìëċíèċ ïîäïèñè.\par
- Âòîîé àáçàö ïîäïèñè. Îí òîĉċ ñîäċĉèò íċìíîî òċêñòà, ÷òîáû ïîêàçàòü
- êàê çàäàííûċ íàñòîéêè ñîçäàŝò îôîìëċíèċ ïîäïèñè.}
-\end{Example}
-
-\begin{Note}
-% If your caption contains more than one paragraph, you have
-% to specify an alternative caption for the list-of-figures using the
-% optional argument of |\caption| or |\caption|\-|of|, otherwise you will
-% get an error message.
-Ċñëè ïîäïèñü ñîäċĉèò áîëċċ îäíîî àáçàöà, âàì íóĉíî
-çàäàòü ñîêàù¸ííûé âàèàíò ïîäïèñè äë˙ ñïèñêîâ èñóíêîâ èëè òàáëèö, èñïîëüçó˙
-äîïîëíèòċëüíûé àóìċíò êîìàíä |\caption| èëè |\captionof|, èíà÷ċ âû ïîëó÷èòċ
-ñîîáùċíèċ îá îĝèáêċ.
-\end{Note}
-
-% --------------------------------------------------------------------------- %
-
-\PageBreak
-% \subsection{Styles}
-\subsection{Ñòèëè}
-\label{style}
-
-\DescribeMacro{style=}
-% A suitable combination of caption options is called \emph{caption style}.
-% You can compare them more or less to page styles which you set up with
-% |\page|\-|style|;
-% the caption style provides all settings for a whole caption layout.
-Îïċäċë¸ííà˙ êîìáèíàöè˙ íċñêîëüêèġ êëŝ÷ċé ñîçäà¸ò \emph{ñòèëü ïîäïèñè}.
-Ŭòî ìîĉíî ñàâíèòü ñî ñòèë˙ìè êîëîíòèòóëà, çàäàâàċìîî êîìàíäîé
-|\pagestyle|: ñòèëü ïîäïèñè çàäà¸ò âñċ íàñòîéêè äë˙ îôîìëċíè˙ ïîäïèñè.
-
-% You switch to an already defined caption style with the option
-Ïċäâàèòċëüíî ñîçäàííûé ñòèëü ìîĉíî âûçâàòü êëŝ÷îì
-\begin{quote}
- |style=|\meta{style name}\quad.
-\end{quote}
-% \Thispackage\ pre-defines two styles: |base| and |default|.
-\Thispackage\ îïċäċë˙ċò äâà ñòèë˙: |base| è~|default|.
-
-\NEWfeature{v3.1}
-% The |base| style puts all options you already know about to values reflecting
-% the look of the captions when using one of the base \LaTeX\ document classes
-% \class{article}, \class{report}, and \class{book}.
-% This means that specifying the option
-Ñòèëü |base| çàäà¸ò âñċ èçâċñòíûċ âàì êëŝ÷è ñî çíà÷ċíè˙ìè,
-ñîîòâċòñòâóŝùèìè çàäàííûì â~áàçîâûġ êëàññàġ \LaTeX'à
-\class{article}, \class{report} è~\class{book}.
-Ŭòî îçíà÷àċò, ÷òî çàäàíèċ îïöèè
-\begin{quote}
- |style=base|
-\end{quote}
-% has the same effect as specifying all these options:
-äàñò òîò ĉċ ŭôôċêò, ÷òî è çàäàíèċ âñċġ ïċċ÷èñëċííûġ îïöèé:
-\begin{quote}
- |format=plain,labelformat=default,labelsep=colon,|\\
- |justification=justified,font={},labelfont={},|\\
- |textfont={},margin=0pt,indention=0pt|\\
- |parindent=0pt,hangindent=0pt,singlelinecheck=true|
-\end{quote}
-\begin{Annotation*}
-% But |justification=centering,indention=0pt| will be set if
-% the caption fits into a single line.
-À~äë˙ îäíîñòî÷íîé ïîäïèñè áóäóò çàäàíû íàñòîéêè |justification=|\x|centering,|\x|indention=0pt|.
-\end{Annotation*}
-
-% In contrast the |default| style follows the default values, reflecting
-% the look of the captions given by the document class you actually use.
-% This style is selected by default and represents these options:
-Â~îòëè÷èċ îò ïċäûäóùċî ñòèëü |default| çàäà¸ò çíà÷ċíè˙, îòâċ÷àŝùèċ
-âèäó ïîäïèñċé, ñîçäàâàċìûġ äàííûì êëàññîì äîêóìċíòà.
-Ŭòîò ñòèëü îïċäċë˙ċò ñëċäóŝùèċ îïöèè:
-\begin{quote}
- |format=default,labelformat=default,labelsep=default,|\\
- |justification=default,font=default,labelfont=default,|\\
- |textfont=default,margin=0pt,indention=0pt|\\
- |parindent=0pt,hangindent=0pt,singlelinecheck=true|
-\end{quote}
-\begin{Annotation*}
-% But again |justification=centering,indention=0pt| will be set if
-% the caption fits into a single line.
-Íî ïè ŭòîì ñíîâà äċéñòâóŝò íàñòîéêè
-|justification=|\x|centering,|\x|indention=0pt| äë˙ îäíîñòî÷íûġ ïîäïèñċé.
-\end{Annotation*}
-
-% So if you use one of the base \LaTeX\ document classes \class{article},
-% \class{report}, or \class{book}, both caption styles, |base| and |default|,
-% point to (nearly) the same settings.
-Ïîŭòîìó, ċñëè âû èñïîëüçóċòċ îäèí èç êëàññîâ \LaTeX'à \class{article},
-\class{report} èëè \class{book}, îáċ îïöèè, |base| è~|default|, çàäàäóò ôàêòè÷ċñêè
-îäèíàêîâûċ íàñòîéêè.
-
-\begin{Note}
-% Own caption styles can be defined using |\Declare|\-|Caption|\-|Style|.\LineBreak
-% \SeeUserDefined
-Ñîáñòâċííûċ ñòèëè ïîäïèñè ìîóò áûòü îïċäċëċíû ñ~ïîìîùüŝ
-êîìàíäû |\Declare|\-|Caption|\-|Style|.\LineBreak\SeeUserDefined
-\end{Note}
-
-% --------------------------------------------------------------------------- %
-
-% \subsection{Skips}
-\subsection{Îòáèâêè}
-\label{skips}
-
-\DescribeMacro{skip=}\NEWfeature{v3.0d}%
-% The vertical space between the caption and the figure or table contents is
-% controlled by the option
-Âċòèêàëüíà˙ îòáèâêà ìċĉäó ïîäïèñüŝ è~ñîäċĉèìûì èñóíêà èëè òàáëèöû
-îïċäċë˙ċòñ˙ êëŝ÷îì
-\begin{quote}
- |skip=|\meta{amount}\quad.
-\end{quote}
-% The standard \LaTeX\ document classes \class{article}, \class{report} and
-% \class{book} preset it to |skip=|\x|10pt|, but other document classes may
-% use a different amount.
-Ñòàíäàòíûċ êëàññû \LaTeX'à |article|, |report| è~|book| îïċäċë˙ŝò êëŝ÷ êàê
-|skip=|\x|10pt|,
-íî äóèċ êëàññû ìîóò çàäàòü äóîċ çíà÷ċíèċ.
-
-\bigskip
-
-\pagebreak[3]
-\DescribeMacro{position=}\label{TeXr:captionskips:a}%
-% The |\caption| command offered by \LaTeX{} has a design flaw:
-% The command does not know if it stands on the beginning of the figure or
-% table, or at the end. Therefore it does not know where to put the space
-% separating the caption from the content of the figure or table.
-% While the standard implementation always puts the space above the caption
-% in floating environments (and inconsistently below the caption in
-% |long|\-|table|s), the implementation offered by this package is more
-% flexible:
-% By giving the option
-Êîìàíäà |\caption|, ïċäëààċìà˙ \LaTeX'îì èìċċò íċäîñòàòîê â~îôîìëċíèè:
-êîìàíäà íċ çíàċò, ñòîèò ëè îíà â~íà÷àëċ îêóĉċíè˙ èñóíêà èëè òàáëèöû, èëè â~êîíöċ.
-Ïîŭòîìó îíà íċ çíàċò, êàê àññòàâèòü îòáèâêè, îòäċë˙ŝùèċ ïîäïèñü îò ñîäċĉèìîî
-èñóíêà èëè òàáëèöû. Ïîêà ÷òî ñòàíäàòíûċ îïċäċëċíè˙ çàäàŝò îòáèâêó âñċäà ñâċġó
-ïîäïèñè (è~ñíèçó òàáëè÷íîî çàîëîâêà â~îêóĉċíèè |long|\-|table|, ÷òî ïîòèâîċ÷èò ñòàíäàòíîìó),
-ċĝċíèċ, ïċäëààċìîċ äàííûì ïàêċòîì áîëċċ èáêîċ.
-Çàäàíèċ îïöèè
-\begin{quote}
- |position=top|\quad èëè\quad |position=above|
-\end{quote}
-% it's assumed that the caption is standing at the \emph{top} of the
-% environment and therefore the space setup with |skip=|\x\meta{amount}
-% is placed below the caption.
-% (Please note that |position=|\x|top| does \emph{NOT} mean that the
-% caption is actually placed at the top of the figure or table.
-% Instead the caption is usually placed where you place the |\caption|
-% command.)
-% But with
-áóäċò îçíà÷àòü, ÷òî ïîäïèñü àçìċùàċòñ˙ \emph{ñâċġó} ñîäċĉèìîî
-îêóĉċíè˙, è~ñëċäîâàòċëüíî îòáèâêà |skip=|\meta{amount} áóäċò
-çàäàíà ñíèçó ïîäïèñè.
-(Îáàòèòċ âíèìàíèċ, ÷òî |position=|\x|top| \emph{ÍĊ} îçíà÷àċò,
-÷òî ïîäïèñü äċéñòâèòċëüíî íàïċ÷àòàċòñ˙ ñâċġó èñóíêà èëè òàáëèöû.
-Ïîäïèñü áóäċò ïċ÷àòàòüñ˙ òàì, äċ âû çàäàëè êîìàíäó |\caption|.)
-Íî çàäàíèċ
-\begin{quote}
- |position=bottom|\quad èëè\quad |position=below|
-\end{quote}
-% it's assumed that the caption is standing at the \emph{bottom} of the
-% environment and therefore the space is placed above the caption.
-% And finally with
-îçíà÷àċò, ÷òî ïîäïèñü ñòîèò \emph{ñíèçó} ñîäċĉèìîî
-îêóĉċíè˙ è~ñëċäîâàòċëüíî îòáèâêà ñòàâèòñ˙ ñâċġó ïîäïèñè.
-È~íàêîíċö, çàäàâ
-\begin{quote}
-% |position=auto|\quad {\small(which is the default setting)}
- |position=auto|\quad {\small(÷òî ˙âë˙ċòñ˙ çíà÷ċíèċì ïî óìîë÷àíèŝ)}
-\end{quote}
-% \thispackage\ tries its best to determine the actual position of
-% the caption on its own. Please note that while this is successfully in
-% most cases, it could give wrong results under rare circumstances.
-\thispackage\ ïîñòààċòñ˙ ñàìîñòî˙òċëüíî îïċäċëèòü ċàëüíîċ ïîëîĉċíèċ
-ïîäïèñè. Îáàòèòċ âíèìàíèċ, ÷òî, ġîò˙ ŭòî è~äàñò âċíûé ċçóëüòàò â~áîëüĝèíñòâċ ñëó÷àċâ,
-â~íċêîòîûġ ċäêèġ ñèòóàöè˙ġ ŭòî ìîĉċò äàòü íċâċíûé ċçóëüòàò.
-
-\medskip
-
-\pagebreak[3]
-\DescribeMacro{figureposition=}%\NEWfeature{v3.0a}
-\DescribeMacro{tableposition=}%\NEWfeature{v3.0a}
-% The |position| option is especially useful when used together with the
-% optional argument of the |\caption|\-|setup| command.
-% \See{also \Ref{captionsetup}}\par
-% For example
-Îïöè˙ |position| îñîáċííî ïîëċçíà, êîäà èñïîëüçóċòñ˙ â~íàñòîéêàġ
-ñ~îïöèċé â~êîìàíäċ |\captionsetup|.
-\See{\Ref{captionsetup}}\par
-Íàïèìċ\label{TeXr:captop:a}
-\begin{quote}
- |\captionsetup[table]{position=above}|
-\end{quote}
-% causes all captions within tables to be treated as captions \emph{above}
-% the table (regarding spacing around it).
-% Because this is a very common setting, \thispackage\ offers
-% the abbreviating options |figure|\-|position=|\x\meta{pos} and
-% |table|\-|position=|\x\meta{pos}, e.g.
-îïċäċë˙ċò, ÷òî âñċ òàáëè÷íûċ çàîëîâêè ïîìċùċíû \emph{íàä} ñîäċĉèìûì
-òàáëèöû (ñ~ñîîòâċòñòâóŝùèìè îòáèâêàìè).
-Ïîñêîëüêó ŭòî äîñòàòî÷íî ÷àñòî èñïîëüçóċìûċ íàñòîéêè, \thispackage\ ïċäëààċò
-êëŝ÷è-àááċâèàòóû |figure|\-|position=|\allowbreak\meta{pos}
-è~|table|\-|position=|\allowbreak\meta{pos},
-íàïèìċ
-\begin{quote}
- |\usepackage[|\ldots|,tableposition=top]{caption}|
-\end{quote}
-% is equivalent to
-ŭêâèâàëċíòíî ñëċäóŝùċìó
-\begin{quote}
- |\usepackage[|\ldots|]{caption}|\\
- |\captionsetup[table]{position=top}|
-\end{quote}
-
-\medskip
-
-\INFO
-% Please note that the options |skip=|, |position=|, |figure|\-|position=|,
-% and |table|\-|position=| do not always have an effect.
-% Since it's a matter of the document class to supply the environments
-% |figure| and |table|, it could use its very own spacing, and could
-% decide for itself if the caption will be typeset as ``top'' or ``bottom''
-% caption.
- Îáàòèòċ âíèìàíèċ, ÷òî êëŝ÷è |skip=|, |position=|,
- |figure|\-|position=| è~|table|\-|position=| íċ âñċäà äàäóò ŭôôċêò.
- Ïîñêîëüêó îïċäċëċíèċ îêóĉċíèé |figure| è~|table| äàŝò êëàññû äîêóìċíòà,
- òî îíè è~îïċäċë˙ŝò, áóäċò ëè ïîäïèñü ïîìċùċíà ñâċġó èëè ñíèçó.
-% For example the \KOMAScript\ document classes support the |skip=|
-% setting, but will always typeset |figure| captions as ``bottom'' captions,
-% and |table| captions are dependent on the global option
-% |table|\-|captions|\-|above| resp.\ |table|\-|captions|\-|below|.
-% \See{\Ref{KOMA}}
- Íàïèìċ, êëàññû äîêóìċíòîâ \KOMAScript\ ïîääċĉèâàŝò íàñòîéêó |skip=|,
- íî îíà âñċäà ïċ÷àòàċò ïîäïèñè ê~èñóíêàì (|figure|) ñíèçó,
- à~àçìċùċíèċ òàáëè÷íûġ çàîëîâêîâ (|table|) çàâèñèò îò ëîáàëüíîé îïöèè
- |table|\-|captions|\-|above| è, ñîîòâċòñòâċííî, |table|\-|captions|\-|below|.
- \See{\Ref{KOMA}}
-
-% Furthermore some packages control the behavior of the spacing above and
-% below the caption for themself, e.g.~the \package{float}, the
-% \package{floatrow}, and the \package{supertabular} package.
- Áîëċċ òîî íċêîòîûċ ïàêċòû ñàìè êîíòîëèóŝò îòáèâêè ñâċġó è~ñíèçó ïîäïèñè,
- íàïèìċ, ïàêċòû \package{float},
- \package{floatrow}, è~\package{supertabular}.
-
-\bigskip
-
-\begin{Expert*}
-% Internally the skip between caption and contents is represented by
-% |\above|\-|caption|\-|skip| (which is always set above the caption in
-% \LaTeX{}s implementation).
-% But there is a second value |\below|\-|caption|\-|skip| (usually set to
-% |0pt| by default) which is set below the caption in \LaTeX{}s implementation,
-% but on the other side than |\above|\-|caption|\-|skip| by this package.
-% So technically speaking, this package swaps the meaning of these two skips
-% when |position=|\x|top| is set.
-% Please note that there are several packages around which do the same trick
-% (like the \package{ftcap}, the \package{nonfloat}, and the \package{topcap}
-% package), so the usage of the \package{caption} option |position=| is not
-% supported if one of these packages will be used, too.
-Ñîáñòâċííî îâî˙, îòáèâêà ìċĉäó ïîäïèñüŝ è~ñîäċĉèìûì ôëîòà îïċäċë˙ċòñ˙ çíà÷ċíèċì
-|\above|\-|caption|\-|skip| (êîòîà˙ â~ñòàíäàòíîì
-\LaTeX'ċ âñċäà çàäà¸òñ˙ ñâċġó ïîäïèñè).
-Íî ñóùċñòâóċò è~âòîà˙ êîìàíäà îòáèâêè |\below|\-|caption|\-|skip| (îáû÷íî
-àâíà˙ |0pt|) êîòîà˙ â~ñòàíäàòíîì \LaTeX'ċ ïîìċùàċòñ˙ ñíèçó ïîäïèñè,
-èëè ñ~ïîòèâîïîëîĉíîé ñòîîíû îò |\above|\-|caption|\-|skip|, â~äàííîì ïàêċòċ.
-Èíà÷ċ îâî˙, äàííûé ïàêċò ïċċêëŝ÷àċò çíà÷ċíè˙ ŭòèġ îòáèâîê ïè çàäàíèè îïöèè
- |position=|\x|top|.
-Îáàòèòċ âíèìàíèċ, ÷òî ñóùċñòâóċò íċñêîëüêî ïàêċòîâ, êîòîûċ äċëàŝò òîò ĉċ òŝê
-(ŭòî ïàêċòû \package{ftcap}, \package{nonfloat} è~\package{topcap});
-ïîŭòîìó, â~ñëó÷àċ èñïîëüçîâàíè˙ îäíîî èç ŭòèġ ïàêċòîâ, èñïîëüçîâàíèċ êëŝ÷à
-|position=| ïàêċòà \package{caption} íċ ïîääċĉèâàċòñ˙.
-\end{Expert*}
-
-% --------------------------------------------------------------------------- %
-
-% \subsection{Lists}
-\subsection{Ñïèñêè ôëîòîâ}
-\label{lists}
-
-\DescribeMacro{list=}\label{TeXr:nolistentry:II}\NEWfeature{v3.1}%
-% The |\caption| command usually places an entry in the List of Figures
-% resp.~List of Tables. You can either suppress that individually by giving an
-% empty optional argument to |\caption| {\small(see \Ref{caption})}, or
-% programmatically by saying
-Êîìàíäà |\caption| îáû÷íî ïîìċùàċò òċêñò â~Ñïèñîê èñóíêîâ èëè Ñïèñîê òàáëèö.
-Âû ìîĉċòċ çàïċòèòü ŭòî, çàäàâ ïóñòîé äîïîëíèòċëüíûé àóìċíò â~êîìàíäċ
-|\caption| {\small(ñì.~\Ref{caption})}, èëè çàäàòü îáùóŝ óñòàíîâêó, çàïèñàâ
-\begin{quote}
-% |list=no|\quad(or any other boolean value instead of |no|)\quad.~\footnote{%
-% Please note that the \package{subfig} package\cite{subfig} is not supporting
-% this option, it uses the counters \texttt{lofdepth} \& \texttt{lotdepth} for
-% this purpose instead.}
- |list=no|\quad(èëè äóîċ çíà÷ċíèċ áóëċâà ïààìċòà âìċñòî |no|)\quad.~\footnote{%
- Îáàòèòċ âíèìàíèċ, ÷òî ïàêċò \package{subfig} package\cite{subfig} íċ ïîääċĉèâàċò ŭòó îïöèŝ,
- îí èñïîëüçóċò äë˙ ŭòîé öċëè ñ÷¸ò÷èêè \texttt{lofdepth} \& \texttt{lotdepth}.}
-\end{quote}
-
-\pagebreak[3]
-\DescribeMacro{listformat=}\NEWfeature{v3.1}%
-% With the option
-Ñ~ïîìîùüŝ êëŝ÷à
-\nopagebreak[3]
-\begin{quote}
- |listformat=|\meta{list format name}
-\end{quote}
-\nopagebreak[3]
-% you can specify how the |figure| or |table| number will be typeset within
-% the List of Figures resp.~List of Tables.
-% There are five standard caption list formats:
-âû ìîĉċòċ îïċäċëèòü êàê íîìċ èñóíêà (|figure|) èëè òàáëèöû (|table|) áóäóò íàïċ÷àòàíû
-â~Ñïèñêċ èñóíêîâ èëè Ñïèñêċ òàáëèö.
-Ñóùċñòâóŝò ï˙òü ñòàíäàòíûġ ôîìàòîâ âûâîäà ïîäïèñċé â~Ñïèñêàġ:
-
-\begin{Options}{\OptionLabel}
- \item[empty]
-% No number will be typeset.
- Íîìċ íċ ïċ÷àòàċòñ˙.
-
- \item[simple]
-% The number will be typeset with label prefix.
- Íîìċ ïċ÷àòàċòñ˙ ñ~ïċôèêñîì ìċòêè.
-
- \item[parens]
-% The number will be typeset in parentheses, with label prefix.
- Íîìċ ïċ÷àòàċòñ˙ â~ñêîáêàġ ñ~ïċôèêñîì ìċòêè.
-
- \item[subsimple]
-% Same as |simple|, but without label prefix. (default)
- Òî ĉċ, ÷òî |simple|, íî áċç ïċôèêñà. (çàäàíî ïî óìîë÷àíèŝ)
-
- \item[subparens]
-% Same as |parens|, but without label prefix.
- Òî ĉċ, ÷òî |parens|, íî áċç ïċôèêñà.
-
- \item[\UserDefined]
-% Own list formats can be defined using |\Declare|\-|Caption|\-|List|\-|Format|.
-% \SeeUserDefined
- Ñîáñòâċííûċ ôîìàòû ìċòêè â~Ñïèñêàġ ìîóò áûòü îïċäċëċíû ñ~èñïîëüçîâàíèċì êîìàíäû |\Declare|\-|Caption|\-|List|\-|Format|.
- \SeeUserDefined
-\end{Options}
-
-% The prefix ($=$|\p@figure| resp.~|\p@table|), which runs ahead of the
-% number ($=$|\the|\-|figure| resp.~|\the|\-|table|) in lists (e.g.~List of
-% Figure/Table) and references, is usually empty,
-% so the list formats |simple| and |subsimple| gives equal results;
-% same with |parens| and |subparens|.
-% But this can be different for sub-figures or sub-tables listed in the List of
-% Figures resp.~List of Tables, or when the label prefix is redefined for a
-% different purpose.\footnote{%
-% Sub-figures and sub-tables can be typeset using the \package{subcaption}
-% or \package{subfig} package.}
-Ïċôèêñû ìċòêè ($=$|\p@figure| èëè~|\p@table|), êîòîûċ ïîìċùàŝòñ˙ îáû÷íî
-ïċċä íîìċàìè ($=$|\the|\-|figure| èëè~|\the|\-|table| ñîîòâċòñòâċííî)
-â~Ñïèñêàġ (èñóíêîâ èëè òàáëèö) îáû÷íî ïóñòû,
-ïîŭòîìó ôîìàòû |simple| è~|subsimple| äàäóò îäèíàêîâûé ċçóëüòàò,
-òî ĉċ ñàìîċ ïîèçîéä¸ò ñ~|parens|
-è~|subparens|.
-Íî ŭòî ìîĉċò äàâàòü îòëè÷íûċ ċçóëüòàòû äë˙ ïîäèñóíêîâ èëè ïîäòàáëèö
-ïîìċù¸ííûġ â~Ñïèñêċ èñóíêîâ èëè Ñïèñêċ òàáëèö, èëè êîäà ïċôèêñ ìċòêè ïċċîïċäċë¸í
-äë˙ äóèġ öċëċé.\footnote{%
- Ïîäïèñè äë˙ ÷àñòċé èñóíêîâ è~òàáëèö ìîóò áûòü ñîçäàíû
- ñ~ïîìîùüŝ ïàêċòîâ \package{subcaption}
- èëè \package{subfig}.}
-
-% --------------------------------------------------------------------------- %
-
-% \subsection{Names \& Numbering}
-\subsection{Íàèìċíîâàíè˙ è~íóìċàöè˙}
-\label{names}\label{numbering}
-
-\DescribeMacro{figurename=}
-\DescribeMacro{tablename=}\NEWfeature{v3.0l}%
-% You can change the name of the figures and tables with the options
-Âû ìîĉċòċ èçìċíèòü íàçâàíèċ èñóíêà è~òàáëèöû ñ~ïîìîùüŝ êëŝ÷ċé
-\begin{quote}\begin{tabular}{@{}r@{}l@{\quad}l@{}}
- |figurename=| & \meta{name} & è\\
- |tablename=| & \meta{name} & .\\
-\end{tabular}\end{quote}
-% The document class usually sets them to ``Figure'' and ``Table'', but for
-% example with
-Êëàññ äîêóìċíòà îïċäċë˙ċò èġ îáû÷íî êàê ĞFigureğ è~ĞTableğ, íî ċñëè
-âû çàäàäèòċ, íàïèìċ
-\begin{quote}
- |figurename=Fig.|
-\end{quote}
-% you can change the figure name to ``Fig''.
-âû èçìċíèòċ èì˙ èñóíêà íà ĞFigğ.
-
-\smallskip\INFO
-% If you use the \package{babel} package, please load \thispackage\ \emph{after}
-% the \package{babel} package.
-Ċñëè âû ïîëüçóċòċñü ïàêċòîì \package{babel}, çàóĉàéòċ \thispackage\ \emph{ïîñëċ}
-ïàêċòà \package{babel}.
-
-\medskip
-
-\pagebreak[3]
-\DescribeMacro{name=}\NEWfeature{v3.1f}%
-% In contrast to the options |figure|\-|name| and |table|\-|name| the option
-Â~îòëè÷èċ îò îïöèé |figure|\-|name=| è~|table|\-|name=| îïöè˙
-\emph{äàííîî} îêóĉċíè˙ ñ~ïîìîùüŝ êëŝ÷à
-\begin{quote}
- |name=|\meta{name}\quad.
-\end{quote}
-% changes the name of the \emph{current} environment.
-% This could be useful in conjunction with the optional argument of
-% |\caption|\-|setup|, e.g.
-èçìċí˙ċò èì˙ òċêóùċé ìċòêè òċêóùċî îêóĉċíè˙.
-Ŭòî ìîĉċò áûòü ïîëċçíûì ïè èñïîëüçîâàíèè äîïîëíèòċëüíîî àóìċíòà â~êîìàíäċ
-|\caption|\-|setup|, íàïèìċ çàäàíèċ
-\begin{quote}
- |\captionsetup[wrapfigure]{name=Fig.}|
-\end{quote}
-% changes the name to ``Fig.'' for all |wrap|\-|figure|s (while all the other
-% figure captions will still have ``Figure'' as name).
-èçìċí˙ċò èì˙ èñóíêà íà ĞFig.ğ äë˙ âñċġ îêóĉċíèé |wrap|\-|figure| (â~òî âċì˙ êàê ïîäïèñè
-ó~äóèġ îêóĉċíèé èñóíêîâ îñòàŝòñ˙ ĞFigureğ).
-
-\medskip
-
-\pagebreak[3]%
-\DescribeMacro{listfigurename=}
-\DescribeMacro{listtablename=}\NEWfeature{v3.1g}%
-% Analogous to the options |figure|\-|name| and |table|\-|name| you can change
-% the title of the lists here. So for example
-Àíàëîè÷íî îïöè˙ì |figure|\-|name| è~|table|\-|name| âû ìîĉċòċ èçìċíèòü
-çàîëîâîê äë˙ ñïèñêîâ ôëîòîâ. Òàê íàïèìċ
-\begin{quote}
- |listfigurename=List of Images|
-\end{quote}
-% changes the title ``List of Figures'' to ``List of images''.
-Èçìċíèò çàîëîâîê ĞList of Figuresğ íà ĞList of Imagesğ.
-
-[Èëè, ċñëè äë˙ óññêîé ëèòċàòóû âû çàäàäèòċ:
-\begin{quote}
- |listfigurename=\CYRS\cyrp\cyri\cyrs\cyro\cyrk\ |\\ |\cyri\cyrl\cyrl\cyryu\cyrs\cyrt\cyrr\cyra\cyrc\cyri\cyrishrt|
-\end{quote}
-èëè
-\begin{quote}\def\ttdefault{cmtt}
- |listfigurename=Ñïèñîê èëëŝñòàöèé|
-\end{quote}
-ïċâàòèò çàîëîâîê â~ĞÑïèñîê èëëŝñòàöèéğ.]
-
-\bigskip
-
-\pagebreak[3]
-\DescribeMacro{figurewithin=}
-\DescribeMacro{tablewithin=}\NEWfeature{v3.1f}%
-% If a document class providing |\chapter| is used (e.g.~\class{report} or
-% \class{book}), usually the |figure| and |table| caption counters
-% are dependent on the |chapter| counter. Otherwise usually the |figure| and
-% |table| counters are continuous throughout the document.
-Ċñëè êëàññ äîêóìċíòà çàäà¸ò ëàâû, è~èñïîëüçóċòñ˙ êîìàíäà |\chapter|
-(íàïèìċ \package{report} èëè
-\package{book}), òî íóìċàöè˙ ñ÷¸ò÷èêîâ ïîäïèñċé |figure| è~|table|
-ïîä÷èíċíà ñ÷¸ò÷èêó ëàâû |chapter|. Â~ïîòèâíîì ñëó÷àċ íóìċàöè˙ |figure|
-è~|table| ïîäîëĉàċòñ˙ ïî âñċìó äîêóìċíòó.
-
-% This can be changed with the options
-Ŭòî ìîĉċò áûòü èçìċíċíî ñ~ïîìîùüŝ îïöèè
-\begin{quote}\begin{tabular}{r@{}l}
- |figurewithin=| & \texttt{chapter} \emph{èëè} \texttt{section} \emph{èëè} \texttt{none}\quad è\\
- |tablewithin=| & \texttt{chapter} \emph{èëè} \texttt{section} \emph{èëè} \texttt{none}\quad .\\
-\end{tabular}\end{quote}
-% If ``|none|'' is given as value, the numbering of figures resp. tables will
-% be continuous throughout the document.
-% Otherwise the numbering will be dependent on the given counter,
-% e.g.~|figure|\-|within=|\x|section| gives figures a section-dependent
-% numbering scheme.
-Ċñëè çàäàíà îïöè˙ Ğ|none|ğ, íóìċàöè˙ èñóíêîâ è~òàáëèö áóäċò ñêâîçíîé âî
-âñ¸ì äîêóìċíòċ.
-Â~ïîòèâíîì ñëó÷àċ íóìċàöè˙ áóäċò ïîä÷èíċíà çàäàííîìó ñ÷¸ò÷èêó,
-íàïèìċ, |figurewithin=|\x|section| ñîçäàñò íóìċàöèŝ èñóíêîâ,
-ïîä÷èí¸ííóŝ çàîëîâêàì àçäċëîâ
-ïċâîî óîâí˙.
-
-\bigskip
-
-\begin{Expert*}
-% The name and numbering is internally done by the commands
-% |\|\meta{type}|name| \& |\the|\meta{type}, e.g.~|\figure|\-|name| \&
-% |\the|\-|figure| for figures.
-% While usually using the above options are sufficient, sometimes a direct
-% re-definition of these two macros is necessary. For example:
-Íàçâàíèċ è~íóìċàöè˙ îïċäċë˙ŝòñ˙ êîìàíäàìè |\|\meta{type}|name|
-è~|\the|\meta{type}, íàïèìċ |\figurename| è~|\thefigure| äë˙ èñóíêîâ.
-Ġîò˙ çàäàíèċ êëŝ÷ċé, îïèñûâàċìûġ âûĝċ äîñòàòî÷íî, èíîäà íċîáġîäèìî
-ï˙ìîċ ïċċîïċäċëċíèċ ŭòèġ äâóġ êîìàíä. Íàïèìċ:
-\begin{quote}
- |\captionsetup{figurewithin=section}|\\
- |\renewcommand\thefigure{\arabic{section}\alph{figure}}|
-\end{quote}
-% gives you a section-dependent numbering scheme \meta{section}\meta{figure}
-% with a numerical section counter and a alphanumerical figure counter,
-% e.g.~``|Figure 2b|''.
-äàñò âàì ïîä÷èí¸ííóŝ àçäċëó ñġċìó íóìċàöèè \meta{section}\meta{figure}
-äċ íîìċ àçäċëà çàäàí â~âèäċ ààáñêîé öèôû, à~íîìċ èñóíêà \cdash--- â~âèäċ íóìċàöèè áóêâàìè,
-íàïèìċ, Ğ|Figure 2b|ğ.
-\end{Expert*}
-
-% --------------------------------------------------------------------------- %
-
-% \subsection{Types}
-\subsection{Òèïû (ôëîòîâ)}
-\label{types}
-
-\DescribeMacro{type=}\NEWfeature{v3.0d}%
-% The |\caption| command can typeset captions for different types,
-% e.g.~|figure| and |table|. If you try to use the |\caption| command outside
-% these environments you will get an error message, because it does not know what
-% kind of caption do you want to have here. But in such situations you can set
-% the caption type manually with
-Êîìàíäà |\caption| ìîĉċò ñîçäàòü ïîäïèñè àçëè÷íûġ òèïîâ,
-íàïèìċ, |figure| è~|table|. Ċñëè âû ïîïîáóċòċ çàäàòü êîìàíäó |\caption| çà ïċäċëàìè
-ŭòèġ îêóĉċíèé, òî ïîëó÷èòċ ñîîáùċíèċ îá îĝèáêċ, ïîñêîëüêó ŭòà êîìàíäà íċ çíàċò
-êàêîé òèï ïîäïèñè âû ġîòèòċ çäċñü ñîçäàòü. Íî â~ïîäîáíûġ ñèòóàöè˙ġ
-âû ìîĉċòċ çàäàòü òèï ïîäïèñè âó÷íóŝ, èñïîëüçó˙
-\begin{quote}
- |type=|\meta{float type}
-\end{quote}
-% prior to the usage of the |\caption| command (and other commands like
-% |\Continued|\-|Float|, or |\sub|\-|caption|\-|box| offered by the
-% \package{subcaption} package, or |\sub|\-|float| offered by the
-% \package{subfig} package\cite{subfig}),
-% for example within an non-floating environment like |minipage|:
-ïċċä èñïîëüçîâàíèċì êîìàíäû |\caption| (è~äóèġ êîìàíä òèïà
-|\Continued|\-|Float|, èëè |\sub|\-|caption|\-|box| ïċäëààċìîé ïàêċòîì
- \package{subcaption} èëè |\subfloat| ïċäëààċìîé ïàêċòîì \package{subfig}\cite{subfig}),
-íàïèìċ âíóòè íċïëàâàŝùċî îêóĉċíè˙ âîäċ |minipage|:
-\begin{quote}
- |\noindent\begin{minipage}{\textwidth}|\\
- | \captionsetup{type=figure}|\\
- | \subfloat{|\ldots|}|\\
- | |\ldots\\
- | \caption{|\ldots|}|\\
- |\end{minipage}|
-\end{quote}
-
-\begin{Expert}
-% There is also a starred variant of this option, |type*=|\meta{float type},
-% which behaves different than |type=|\meta{float type} if the
-% \package{hyperref} package\cite{hyperref} is loaded: While |type=| sets an
-% hyperlink anchor (if |hypcap=|\x|true| is set), |type*=| does not.
-% (See also \Ref{hyperref}\,)
-Ñóùċñòâóċò çâ¸çäíûé âàèàíò ŭòîî êëŝ÷à, |type*=|\x\meta{float type},
-êîòîûé îòëè÷àċòñ˙ îò |type=|\x\meta{float type} ċñëè çàóĉċí ïàêċò
-\package{hyperref}\cite{hyperref}: â~òî âċì˙ êàê êëŝ÷ |type=| çàäà¸ò
-ìċòêó èïċññûëêè (hyperlink anchor, ċñëè çàäàí êëŝ÷ |hypcap=|\x|true|), êëŝ÷ |type*=| ŭòîî íċ äċëàċò.
-(Ñì.~òàêĉċ \Ref{hyperref})
-\end{Expert}
-\begin{Expert}
-% \emph{\DefaultNoteText:} Please don't re-define the internal macro |\@captype|
-% for yourself, like suggested by some documentations, always use
-% |\caption|\-|setup{type=|\x\ldots|}| instead.
-\emph{\DefaultNoteText}: íċ ïċċîïċäċë˙éòċ, ïîĉàëóéñòà, âíóòċííŝŝ ìàêîêîìàíäó |\@captype|,
-êàê ïċäëààċòñ˙ íċêîòîûìè óêîâîäñòâàìè èëè äîêóìċíòàìè ïàêċòîâ, äë˙
-ŭòîî èñïîëüçóéòċ âñċäà
-|\caption|\-|setup{type=|\x\ldots|}|.
-\end{Expert}
-
-\medskip
-
-% Own float types can be defined with |\Declare|\-|Caption|\-|Type| offered by
-% this package, |\new|\-|float| offered by the \package{float}
-% package\cite{float}, or |\Declare|\-|New|\-|Float|\-|Type| offered by the
-% \package{floatrow} package\cite{float}.
-Ñîáñòâċííûċ òèïû ôëîòîâ ìîóò áûòü îïċäċëċíû ñ~ïîìîùüŝ êîìàíäû |\Declare|\-|Caption|\-|Type|
-ïċäëààċìîé ŭòèì ïàêċòîì, êîìàíäîé |\new|\-|float|, ïċäëààċìîé ïàêċòîì \package{float}\cite{float},
-èëè |\Declare|\-|New|\-|Float|\-|Type| ïċäëààċìîé ïàêċòîì
-\package{floatrow}\cite{floatrow}.
-
-\medskip
-
-\INFO % \NEWdescription{v3.1}
-% Please note that you should use the option |type=| only
-% \emph{inside} boxes or environments (like |\par|\-|box| or |mini|\-|page|),
-% at best one where no page break could happen between contents and caption.
-% Furthermore some visual side-effects (e.g.~mixed-up figure and table settings
-% regarding captions) could occur without using a box or environment,
-% therefore a warning message will be issued if you try to do so.\footnote{%
-% You only get this warning message if you use \eTeX\ as underlying \TeX\ engine.}
-Îáàòèòċ âíèìàíèċ, ÷òî ëó÷ĝċ èñïîëüçîâàòü êëŝ÷ |type=| òîëüêî
-\emph{âíóòè} áîêñîâ èëè òàêèġ îêóĉċíèé (òèïà |\parbox| èëè |minipage|), ò.\,ċ.
-äċ íċ ìîĉċò ïîèçîéòè ïċċġîäà íà ñëċäóŝùóŝ ñòàíèöó ìċĉäó ïîäïèñüŝ è~ñîäċĉèìûì ôëîòà.
-Ïîìèìî ŭòîî âîçìîĉíû íċêîòîûċ ïîáî÷íûċ ŭôôċêòû (íàïèìċ, ñìċĝċíèċ íàñòîċê äë˙ ïîäïèñċé
-èñóíêîâ è~òàáëèö) ċñëè íċ èñïîëüçóċòñ˙ áîêñ èëè îêóĉċíèċ, êîìċ ŭòîî
-âû ïîëó÷èòċ ïċäóïċĉäċíèċ, ċñëè ïîïîáóċòċ ŭòî ñäċëàòü.\footnote{%
-Âû ïîëó÷èòċ ŭòî ïċäóïċĉäċíèċ òîëüêî â~ñëó÷àċ, êîäà â~êà÷ċñòâċ êîìïèë˙òîà \TeX'à èñïîëüçóċòñ˙
-\eTeX.}
-
-
-% --------------------------------------------------------------------------- %
-
-\clearpage
-% \section{Commands}
-\section{Êîìàíäû}
-
-% \subsection{Typesetting captions}
-\subsection{Ïċ÷àòü ïîäèñóíî÷íûġ ïîäïèñċé}
-\label{caption}
-\label{captionlistentry}
-
-\DescribeMacro{\caption}
-% The command
-Êîìàíäà
-\begin{quote}
- |\caption|\oarg{list entry}\marg{heading}
-\end{quote}
-% typesets the caption inside a floating environment like |figure| or |table|.
-% Well, you already know this, but \thispackage\ offers an extension:
-% If you leave the argument \meta{list entry} empty, no entry in the list of
-% figures or tables will be made. For example:
-ïċ÷àòàċò ïîäïèñü âíóòè îêóĉċíè˙ ôëîòà, òèïà |figure| èëè |table|.
-Òàê, ŭòî íàì èçâċñòíî, íî íîâîñòü ñîñòîèò â~òîì, ÷òî ċñëè
-çàäàòü àóìċíò \meta{list entry} ïóñòûì, ïîäïèñü â~ñïèñêċ èñóíêîâ èëè
-òàáëèö íċ ïî˙âèòñ˙; íàïèìċ,
-\begin{quote}
-% |\caption[]{A figure without list entry.}|
- |\caption[]{Ïîäïèñü áċç çàïèñè â~ñïèñêċ èñóíêîâ.}|
- \label{TeXr:nolistentry:I}%
-\end{quote}
-
-\begin{Expert}
-% Please remember that the \meta{heading} is a so-called \emph{moving} argument,
-% if no \meta{list entry} has been given. But if a \meta{list entry} is given,
-% this argument is moving instead.
-% ``\emph{Moving} argument'' means that the argument will be written to the
-% list-of file, make it appearing in the ``List of Figures'' resp.
-% ``List of Tables'', too.
-% \emph{Moving} arguments are not allowed to contain \emph{fragile} commands,
-% everything must be \emph{robust}, otherwise the argument could get
-% \emph{broken}, resulting in strange errors at the next \LaTeX\ run.
-% Some \emph{fragile} commands could be \emph{protected} by a leading |\protect|,
-% own definitions could get defined with |\Declare|\-|Robust|\-|Command| instead of
-% |\new|\-|command| to make them \emph{robust}.
-Íàïîìíèì, ÷òî àóìċíò \meta{heading} áóäċò \emph{ïîäâèĉíûì},
-ċñëè íċ çàäàí äîïîëíèòċëüíûé àóìċíò \meta{list entry}. Ċñëè ĉċ çàäàí \meta{list entry},
-òî ñòàíîâèòñ˙ ïîäâèĉíûì ŭòîò äîïîëíèòċëüíûé àóìċíò. Òċìèí Ğ\emph{ïîäâèĉíûé} àóìċíòğ
-â~äàííîì ñëó÷àċ îçíà÷àċò, ÷òî îí çàïèñûâàċòñ˙ â~ôàéëċ Ñïèñêà, ÷òîáû
-çàòċì ċî âûâċñòè â~àçäċëàġ ĞÑïèñîê èñóíêîâğ èëè ĞÑïèñîê òàáëèöğ.
-Â~\emph{ïîäâèĉíûċ} àóìċíòû íċëüç˙ ïîìċùàòü \emph{ġóïêèċ} êîìàíäû,
-âñċ ŭëċìċíòû äîëĉíû áûòü \emph{íċàçáèâàċìûìè} (íċġóïêèìè), èíà÷ċ àóìċíò áóäċò
-Ğ\emph{àçáèò}ğ (àñêûò), ñîçäàâà˙ ñòàííûċ îĝèáêè â~ñëċäóŝùèġ
-îáàáîòêàġ \LaTeX'îì. Íċêîòîûċ \emph{ġóïêèċ}
-êîìàíäû ìîóò áûòü \emph{çàùèùċíû} çàäàíèċì ïċċä íèìè êîìàíäû |\protect|.
-×òîáû ñîáñòâċííûċ
-îïċäċëċíè˙ áûëè \emph{íċàçáèâàċìûìè}, èġ íóĉíî îïċäċë˙òü ÷ċċç |\DeclareRobustCommand|, à~íċ
-÷ċċç |\newcommand|.
-
-% An example: |\caption{${}^{137}_{\phantom{1}55}$Cs}| will cause errors since
-% |\phantom| is \emph{fragile}.
-% So we have either have to use the optional argument \meta{list entry}
-% (e.g.~|\caption[${}^|\x|{137}_|\x|{55}$|\x|Cs]|\x|{${}^|\x|{137}_|\x|{\phantom{1}55}$|\x|Cs}|)
-% or add |\protect| to prevent the |\phantom| command from getting \emph{broken}:
-% |\caption{${}^|\x|{137}_|\x|{|\textcolor{blue}{\cs{protect}}|\phantom{1}55}$|\x|Cs}|.
-Ïèìċ: çàïèñü |\caption{${}^{137}_{\phantom{1}55}$Cs}| âûäàñò ñîîáùċíè˙ îá îĝèáêàġ,
-ïîñêîëüêó êîìàíäà |\phantom| \emph{ġóïêà˙}. Ïîŭòîìó íóĉíî ëèáî çàäàòü äîïîëíèòċëüíûé àóìċíò
-\meta{list entry}
-(íàïèìċ,
-|\caption[${}^|\x|{137}_|\x|{55}$|\x|Cs]|\x|{${}^|\x|{137}_|\x|{\phantom{1}55}$|\x|Cs}|)
-èëè äîáàâèòü êîìàíäó |\protect|, äë˙ çàùèòû êîìàíäû |\phantom| îò òîî, ÷òîáû îíà
-\emph{àçáèëàñü}:
-|\caption{${}^|\x|{137}_|\x|{|\textcolor{blue}{\cs{protect}}|\phantom{1}55}$|\x|Cs}|.
-
-% But sometimes even this is not sufficient. The reason behind is the so-called
-% single-line-check: It puts the \meta{heading} into a horizontal box to determine
-% the width of the caption, and this could cause error messages, too.
-% An example:
-% |\caption{A| |scheme.| |\[V_{C}| |\sim| |\left| |\{| |\begin{array}{cc}|
-% |E_{g}| |&| |\textrm{p-n}| |\\| |e\phi_{B}| |&| |\textrm{M-S}| |\end{array}|
-% |\right.| |\]}|.
-% Using |\caption[A| |scheme]{|\ldots|}| is not sufficient here, it's still
-% leading to errors. (``\texttt{Missing \$ inserted.}'')
-% So we have to put a |\caption|\-|setup{single|\-|line|\-|check=|\x|off}|
-% just in front of the |\caption| command additionally.
-Íî èíîäà è~ŭòî íċ ïîìîàċò. Ïè÷èíà êîċòñ˙ â~òàê íàçûâàċìîé ïîâċêċ
-íà îäíîñòî÷íóŝ ïîäïèñü
-(single-line-check): ìàêîêîìàíäà ïîìċùàċò ñîäċĉèìîċ àóìċíòà \meta{heading}
-â~îèçîíòàëüíûé áîêñ,
-÷òîáû îïċäċëèòü ĝèèíó ïîäïèñè, è~ŭòî òàêĉċ ìîĉċò ñîçäàòü ñîîáùċíè˙ îá îĝèáêàġ.
-Ïèìċ:
-|\caption{A| |scheme.| |\[V_{C}| |\sim| |\left| |\{| |\begin{array}{cc}|
-|E_{g}| |&| |\textrm{p-n}| |\\| |e\phi_{B}| |&| |\textrm{M-S}| |\end{array}|
-|\right.| |\]}|.
-Èñïîëüçîâàíèċ |\caption[A| |scheme]{|\ldots|}| çäċñü íċ îäèòñ˙,
-ŭòî òîĉċ ïèâċä¸ò ê~îĝèáêàì.
-(Ğ\texttt{Missing \$ inserted.}ğ) Ïîŭòîìó ìû âûíóĉäċíû äîïîëíèòċëüíî çàäàòü
-|\captionsetup{singlelinecheck=off}| ïċċä êîìàíäîé |\caption|.
-
-% For more information about \emph{moving} arguments and \emph{fragile} \&
-% \emph{robust} commands, take a closer look at your \LaTeX\ manual or visit
-% \url{http://www-h.eng.cam.ac.uk/help/tpl/textprocessing/teTeX/latex/latex2e-html/fragile.html}.
-Áîëċċ ïîëíóŝ èíôîìàöèŝ î~\emph{ïîäâèĉíûġ} àóìċíòàġ è~\emph{ġóïêèġ}
-è~\emph{íċàçáèâàċìûġ} êîìàíäàġ, ñìîòèòċ â~âàĝċì óêîâîäñòâċ ïî \LaTeX'ó èëè îáàòèòċñü ê~%
-\url{http://www-h.eng.cam.ac.uk/help/tpl/textprocessing/teTeX/latex/latex2e-html/fragile.html}.
-\end{Expert}
-
-\medskip
-
-\pagebreak[3]
-\DescribeMacro{\caption*}\label{TeXr:starcaption:a}%
-% The \package{longtable} package defines the command |\caption*| which
-% typesets the caption without label and without entry in the list of tables.
-% An example:
-Ïàêċò \package{longtable} îïċäċë˙ċò êîìàíäó |\caption*| êîòîà˙
-ïċ÷àòàċò ïîäïèñü áċç ìċòêè è~çàíċñċíè˙ ċ¸ â~ñïèñîê òàáëèö.
-Ïèìċ:
-\begin{quote}
- |\begin{longtable}{|\ldots|}|\\
- | \caption*{A table}\\|\\
- | |\ldots\\
- |\end{longtable}|
-\end{quote}
-% looks like
-âûë˙äèò ñëċäóŝùèì îáàçîì:\nopagebreak
-\DeleteShortVerb{\|}
-\vskip\intextsep
-\begin{minipage}{\linewidth}
- \captionsetup{type=table,position=t}
- \caption*{A table}
- \centering
- \begin{tabular}{r|rr}
- & x & y \\\hline
- a & 1 & 2 \\
- b & 3 & 4 \\
- \end{tabular}
-\end{minipage}
-\vskip\intextsep
-\MakeShortVerb{\|}
-% \Thispackage\ offers this feature, too, so you can use this command now within
-% every floating environment like |figure| or |table|, like:
-\Thispackage\ òîĉċ ïċäëààċò òàêóŝ âîçìîĉíîñòü. È~òċïċü âû ìîĉċòċ èñïîëüçîâàòü ŭòó êîìàíäó
-ñ~ëŝáûì îêóĉċíèċì ïëàâàŝùċî îáúċêòà, íàïèìċ |figure| èëè |table|, êàê çäċñü:
-\begin{quote}
- |\begin{table}|\\
- | \caption*{A table}|\\
-% | \begin{tabular}{|\ldots|}|\\
-% | |\ldots\\
-% | \end{tabular}|\\
- | |\ldots\\
- |\end{table}|
-\end{quote}
-
-\pagebreak[3]
-\DescribeMacro{\captionof}\label{TeXr:captionof:a}%
-\DescribeMacro{\captionof*}
-% Sometimes you want to typeset a caption \emph{outside} a floating environment,
-% putting a figure within a non-floating |mini|\-|page| for instance.
-% For this purpose \thispackage\ offers the command
-Èíîäà âàì íóĉíî ñîçäàòü ïîäïèñü \emph{âíċ} îêóĉċíè˙ ôëîòà,
-ïîìċñòèâ, ê~ïèìċó, ïîäïèñü âíóòè îêóĉċíè˙ |minipage|. Äë˙ ŭòîé öċëè ïàêċò
-\thispackage\ ïċäëààċò êîìàíäó
-\begin{quote}
- |\captionof|\marg{float type}\oarg{list entry}\marg{heading}\quad.
-\end{quote}
-% Note that the first argument, the \meta{float type}, is mandatory here, because
-% the |\captionof| command needs to know which name to put into the caption label
-% (e.g. ``Figure'' or ``Table'') and in which list to put the contents entry.
-% An example:
-Îáàòèòċ âíèìàíèċ, ÷òî ïċâûé àóìċíò, \meta{float type}, â~äàííîì ñëó÷àċ ˙âë˙ċòñ˙
-îá˙çàòċëüíûì, ïîñêîëüêó êîìàíäà |\captionof| äîëĉíà çíàòü, ê~êàêîìó ïëàâàŝùċìó
-îáúċêòó ñîçäàòü ïîäïèñü (íàïèìċ. Ğèñ.ğ èëè ĞÒàáëèöàğ) è~â~êàêîé ñïèñîê ôëîòîâ ïîìċñòèòü
-ïîäïèñü. Ïèìċ
-\begin{quote}
-% |\captionof{figure}{A figure}|\\
- |\captionof{table}{A table}|
-\end{quote}
-% typesets captions like this:
-ñîçäà¸ò ïîäïèñè êàê çäċñü:
-\begin{Example}
-% \begingroup
-% \captionof{figure}{A figure}
-% \endgroup
- \captionsetup{position=top}
-% \begingroup
- \captionof{table}{A table}
-% \endgroup
-\end{Example}
-
-% The star variant |\caption|\-|of*| has the same behavior as the |\caption*|
-% command:
-% It typesets the caption without label and without entry to the list of figures
-% or tables.
-ĞÇâ¸çäíûéğ âàèàíò |\captionof*| äà¸ò òîò ĉċ ċçóëüòàò, ÷òî è~|\caption*|:
-ïċ÷àòàċò ïîäïèñü áċç íóìċàöèîííîî çàîëîâêà è~âûâîäà â~Ñïèñîê èñóíêîâ èëè
-òàáëèö.
-
-\INFO % \NEWdescription{v3.1}
-% Since |\caption|\-|of| uses the option |type| internally, the same
-% restrictions as for the |type| option apply here, so you should use both
-% |\caption|\-|of| and |\caption|\-|of*| only \emph{inside} boxes or
-% environments, too.
-Ïîñêîëüêó êîìàíäà |\captionof| èñïîëüçóċò âíóòè ñċá˙ êëŝ÷ |type|, òċ ĉċ îàíè÷ċíè˙, ÷òî è~äë˙
-êëŝ÷à |type=| äċéñòâóŝò çäċñü, ïîŭòîìó âû ìîĉċòċ èñïîëüçîâàòü è~|\captionof|
-è~|\captionof*| òîëüêî \emph{âíóòè} áîêñîâ èëè îêóĉċíèé.
-\See{\Ref{types}}
-
-\bigskip
-
-\pagebreak[3]
-\DescribeMacro{\captionlistentry}\NEWfeature{v3.1}%
-% Under certain circumstances it could be useful to make a list-of-figure
-% (or table) entry on its own.
-% This could be achieved with
-Â~íċêîòîûġ ñëó÷à˙ġ ìîĉċò áûòü ïîëċçíûì ñîçäàíèċ òċêñòà äë˙ Ñïèñêà èñóíêîâ (èëè òàáëèö) îòäċëüíî.
-Ŭòî ìîĉíî ñäċëàòü ñ~ïîìîùüŝ
-\begin{quote}
- |\captionlistentry|\oarg{float type}\marg{list entry}\quad.
-\end{quote}
-
-% One example: It's quite easy to have a |long|\-|table| with captions above the
-% contents and a single list entry which points to the first page of the table:
-Îäèí ïèìċ: î÷ċíü ëċêî ïîëó÷èòü òàáëèöó â~îêóĉċíèè |long|\-|table|
-ñ~ïîäïèñ˙ìè ñâċġó òàáëèöû
-è~îäíèì âġîĉäċíèċì â~Ñïèñêċ êîòîîċ îòìċ÷àċò ïċâóŝ ñòàíèöó òàáëèöû:
-\begin{quote}
- |\begin{longtable}{|\ldots|}|\\
- | \caption{|\ldots|}\\|\\
- |\endfirsthead|\\
- | \caption[]{|\ldots|}\\|\\
- |\endhead|\\
- | |\ldots
-\end{quote}
-% But since the \package{longtable} package does not offer an
-% |\end|\-|first|\-|foot| command, you cannot easily have captions \emph{below}
-% the table contents and a single list entry which points to the first page of
-% the table.
-% Here is were the |\caption|\-|list|\-|entry| command could be used:
-Íî, ïîñêîëüêó ïàêċò \package{longtable} íċ ïċäëààċò êîìàíäû |\endfirstfoot|,
-âû íċ ìîĉċòċ èñïîëüçîâàòü ïîäïèñè \emph{ñíèçó} òàáëèöû, äë˙ ñîçäàíè˙ ċäèíñòâċííîî
-âġîĉäċíè˙ â~Ñïèñîê, êîòîûé îòìċ÷àċò ïċâóŝ ñòàíèöó òàáëèöû.
-Ŭòî ñèòóàöè˙, äċ êîìàíäà |\captionlistentry| ìîĉċò áûòü ïîëċçíà:
-\begin{quote}
- |\begin{longtable}{|\ldots|}|\\
- | \caption[]{|\ldots|}\\|\\
- |\endfoot|\\
- | \captionlistentry{|\ldots|}|\\
- | |\ldots
-\end{quote}
-\begin{Annotation*}
-% Another example can be found in \Ref{examples}.
-Äóîé ïèìċ ìîĉíî íàéòè â~\Ref{examples}.
-\end{Annotation*}
-
-\smallskip
-
-\begin{Expert}
-% There is also a starred variant, |\caption|\-|list|\-|entry*|, which does not
-% increment the \meta{float type} counter.
-% (Note that inside |long|\-|table| environments |\caption|\-|list|\-|entry|
-% never increments the |table| counter. See also \Ref{longtable}.)
-Òàêĉċ ñóùċñòâóċò Ğçâ¸çäíûéğ âàèàíò |\caption|\-|list|\-|entry*|, êîòîûé
-íċ óâċëè÷èâàċò çíà÷ċíèċ ñ÷¸ò÷èêà ôëîòà.
-(Îáàòèòċ âíèìàíèċ, ÷òî âíóòè îêóĉċíè˙ |long|\-|table| êîìàíäà |\caption|\-|list|\-|entry|
-íèêîäà íċ óâċëè÷èâàċò çíà÷ċíè˙ ñ÷¸ò÷èêà òàáëèöû. Ñì.~òàêĉċ îïèñàíèċ \Ref{longtable}.)
-\end{Expert}
-
-\begin{Expert}
-% Please note that \meta{list entry} is a \emph{moving} argument, so everything
-% it contains must be \emph{robust}. (See also explanation of |\caption|)
-Îáàòèòċ òàêĉċ âíèìàíèċ, ÷òî \meta{list entry} ˙âë˙ċòñ˙ \emph{ïîäâèĉíûì}
-àóìċíòîì, ïîŭòîìó âñ¸ ċî
-ñîäċĉèìîċ äîëĉíî áûòü \emph{íċàçáèâàċìûì}. (Ñì.~òàêĉċ îïèñàíèċ êîìàíäû |\caption|)
-\end{Expert}
-
-
-% \subsection{Setting options}
-\subsection{Çàäàíèċ êëŝ÷ċé è~îïöèé}
-\label{captionsetup}
-
-\DescribeMacro{\captionsetup}
-% We already know the |\caption|\-|setup| command (see \Ref{usage}),
-% but this time we get enlighten about its optional argument
-% \meta{float type}.
-Íàì óĉċ èçâċñòíà êîìàíäà |\captionsetup| (ñì.~\Ref{usage}),
-íî ñċé÷àñ ìû àçáċ¸ì çíà÷ċíèċ äîïîëíèòċëüíîî àóìċíòà, \meta{float type}.
-
-% Remember, the syntax of this command is
-Íàïîìíèì ñèíòàêñèñ ŭòîé êîìàíäû
-\begin{quote}
- |\captionsetup|\oarg{float type}\marg{options}\quad.
-\end{quote}
-
-% If a \meta{float type} gets specified, all the \meta{options} don't
-% change anything at this time. Instead they only get marked for a later use,
-% when a caption inside of a floating environment of the particular type
-% \meta{float type} gets typeset.
-% For example
-Ċñëè \meta{float type} çàäàí, âñċ êëŝ÷è è~îïöèè, \meta{options} íè÷ċî
-íċ èçìċí˙ò â~ìċñòċ çàäàíè˙. Îíè òîëüêî îïċäċëċíû äë˙ áóäóùċî èñïîëüçîâàíè˙
-â~ìîìċíò, êîäà ïîäïèñü îêàĉċòñ˙ âíóòè îêóĉċíè˙ ôëîòà
-\meta{float type}.
-Íàïèìċ
-\begin{quote}
- |\captionsetup[figure]|\marg{options}
-\end{quote}
-% forces captions within a |figure| environment to use the given \meta{options}.
-îïċäċë˙ċò îôîìëċíèċ \meta{options} äë˙ ïîäïèñè âíóòè îêóĉċíè˙ |figure|.
-
-% Here comes an example to illustrate this:
-Äàëċċ èä¸ò ïèìċ èëëŝñòèóŝùèé ñêàçàííîċ:
-\begin{quote}
- |\captionsetup{font=small}|\\
- |\captionsetup[figure]{labelfont=bf,textfont=it}|
-\end{quote}
-% gives captions like this:
-ñîçäàñò ïîäïèñè âèäà:
-\begin{Example}
- \captionsetup{font=small}
- \captionsetup[figure]{labelfont=bf,textfont=it}
- \begingroup
- \captionof{figure}{A figure}
- \endgroup
- \captionsetup{position=top}
- \begingroup
- \captionof{table}{A table}
- \endgroup
-\end{Example}
-% As you see the command |\caption|\-|setup[figure]{|\ldots|}| only changes
-% the look of the |figure| caption labels, not touching the other ones.
-Êàê âû âèäèòċ óñòàíîâêà |\caption|\-|setup[figure]{labelfont=bf}| èçìċí˙ċò
-òîëüêî ĝèôò íóìċàöèîííîé ÷àñòè ïîäïèñè, âñ¸ îñòàëüíîċ îñòà¸òñ˙.
-
-% As \meta{float type} you can usually give one of these two only:
-% |figure| or |table|.
-% But as we will see later some \LaTeX\ packages (like the \package{floatrow},
-% \package{longtable}, and \package{sidecap} package for example) and also
-% this package offer additional environments with captions and these two
-% commands can also be used with them.
-% \See{\Ref{declare} and \Ref{packages}}
-Â~êà÷ċñòâċ \meta{float type} âû îáû÷íî çàäà¸òċ òîëüêî äâċ îïöèè:
-|figure| èëè |table|.
-Íî êàê áóäċò âèäíî ïîçäíċċ íċêîòîûċ ïàêċòû \LaTeX'à (íàïèìċ \package{floatrow},
-\package{longtable} è~\package{sidecap}) à~òàêĉċ äàííûé ïàêċò
-ïċäëààŝò äîïîëíèòċëüíûċ îêóĉċíè˙ ñ~ïîäïèñ˙ìè è~ŭòè äâċ êîìàíäû
-ìîóò áûòü ñ~íèìè èñïîëüçîâàíû.
-\See{\Ref{declare} è~\Ref{packages}}
-
-\smallskip
-
-\pagebreak[3]
-\NEWfeature{v3.1}
-\begin{Expert}
-% There is also a starred variant of |\caption|\-|setup|:
-Ñóùċñòâóċò è~çâ¸çäíûé âàèàíò êîìàíäû |\captionsetup|:
-\begin{quote}
- |\captionsetup*|\oarg{float type}\marg{options}
-\end{quote}
-% While the non-starred variant can give you warnings---for example if the
-% \meta{options} are actually not used throughout the document
-% (e.g.~a |\caption|\-|setup[table]{font=|\x|sf}| without a |table|)---the
-% starred variant will not.
-% \iffalse
-% This can get quite useful when setting generic options which are independent
-% of a specific document.
-% \fi
-Â~òî âċì˙ êàê íċçâ¸çäíûé âàèàíò äàñò âàì ïċäóïċĉäċíèċ, ċñëè \meta{options} íċ
-èñïîëüçîâàëèñü â~äîêóìċíòċ (íàïèìċ íàñòîéêè |\captionsetup[table]{font=sf}| \cdash---
-è~íè îäíîî îêóĉċíè˙ |table|), çâ¸çäíûé âàèàíò ŭòîî íċ äċëàċò.
-\iffalse
-Ŭòî ìîĉċò áûòü î÷ċíü ïîëċçíî äë˙ ñîçäàíè˙ íàñòîċê, íċçàâèñèìûġ îò êîíêċòíîî äîêóìċíòà.
-\fi
-\end{Expert}
-
-\medskip
-
-\pagebreak[3]
-\DescribeMacro{\clearcaptionsetup}
-% If you want to get rid of these parameters marked for an automatic use within
-% a particular environment you can use the command
-Ċñëè âàì âíóòè äàííîî îêóĉċíè˙ íóĉíî îòìċíèòü ïààìċòû, çàäàííûċ äë˙
-òċêóùċî òèïà ôëîòà, èñïîëüçóéòċ êîìàíäó
-\begin{quote}
- |\clearcaptionsetup|\oarg{option}\marg{float type}\quad.
-\end{quote}
-
-% For example |\clearcaptionsetup{figure}| would clear all the extra handling
-% for figures in the example above:
-Íàïèìċ |\clearcaptionsetup{figure}| îòìċíèò äîïîëíèòċëüíûċ íàñòîéêè
-èç ïèìċà âûĝċ:
-\begin{quote}
- |\captionsetup{font=small}|\\
- |\captionsetup[figure]{labelfont=bf,textfont=it}|\\
- \ldots\\
- | \caption{A figure}|\\
- \ldots\\
- |\clearcaptionsetup{figure}|\\
- \ldots\\
- | \caption{A figure}|\\
- \ldots\\
-\end{quote}
-\pagebreak[3]
-\begin{Example}
- \captionsetup{font=small}
- \captionsetup[figure]{labelfont=bf,textfont=it}
- \begingroup
- \captionof{figure}{A figure}
- \endgroup
- \captionsetup{position=top}
- \clearcaptionsetup{figure}
- \begingroup
- \captionof{figure}{A figure}
- \endgroup
-\end{Example}
-
-\pagebreak[3]
-\NEWfeature{v3.1}
-% If an optional argument \meta{option} is given, only the settings regarding
-% this particular \meta{option} are cleared.\footnote{You can only specify
-% \emph{one} option here, not a list of options.
-% If you want to clean more than one option, you need to use more than one
-% \cs{clear}\-\texttt{caption}\-\texttt{setup}.}
-% While the example above not only clears the options
-% |labelfont=bf,|\x|textfont=it|
-% for figures (but all options for figures instead),
-% this one would only clear the |labelfont=bf| setting, leaving all other
-% settings for figures intact:
-Ċñëè çàäàí äîïîëíèòċëüíûé àóìċíò \meta{option}, îòìċí˙ŝòñ˙ òîëüêî íàñòîéêè
-äàííîé îïöèè \meta{option}.\footnote{Âû ìîĉċòċ çàäàòü òîëüêî
-\emph{îäíó} îïöèŝ, à~íċ ñïèñîê îïöèé.
-Ċñëè âàì íóĉíî îòìċíèòü íàñòîéêè äë˙ ˙äà îïöèé, âàì ïèä¸òñ˙ èñïîëüçîâàòü íċñêîëüêî êîìàíä
-\cs{clearcaptionsetup}.}
-Â~òî âċì˙ êàê ïèìċ âûĝċ íċ òîëüêî îòìċíèë îïöèè êëŝ÷ċé |labelfont=bf,|\allowbreak
-|textfont=it|
-äë˙ èñóíêîâ (íî è~âñċ îïöèè äë˙ èñóíêîâ),
-ñëċäóŝùèé ïèìċ îòìċíèò òîëüêî íàñòîéêó |labelfont=bf|, îñòàâèâ âñċ îñòàëüíûċ
-íàñòîéêè íċòîíóòûìè:
-\begin{quote}
- |\captionsetup{font=small}|\\
- |\captionsetup[figure]{labelfont=bf,textfont=it}|\\
- \ldots\\
- | \caption{A figure}|\\
- \ldots\\
- |\clearcaptionsetup[labelfont]{figure}|\\
- \ldots\\
- | \caption{A figure}|\\
- \ldots
-\end{quote}
-\begin{Example}
- \captionsetup{font=small}
- \captionsetup[figure]{labelfont=bf,textfont=it}
- \begingroup
- \captionof{figure}{A figure}
- \endgroup
- \captionsetup{position=top}
- \clearcaptionsetup[labelfont]{figure}
- \begingroup
- \captionof{figure}{A figure}
- \endgroup
-\end{Example}
-\begin{Expert}
-% Analogous to |\caption|\-|setup*| there is also a starred form
-% |\clear|\-|caption|\-|setup*| which suppresses warnings if the given
-% \meta{option} was not setup for the specified \meta{float type}.
-Àíàëîè÷íî êîìàíäċ |\captionsetup*| ñóùċñòâóċò òàêĉċ çâ¸çäíà˙ ôîìà
-|\clearcaptionsetup*| êîòîà˙ îòìċí˙ċò ïċäóïċĉäċíè˙, ċñëè \meta{option}
-íċ ˙âë˙ċòñ˙ íàñòîéêîé äë˙ äàííîî \meta{float type}.
-\end{Expert}
-
-\medskip
-
-\DescribeMacro{\showcaptionsetup}
-% For debugging purposes the command\nopagebreak
-Äë˙ âîçìîĉíîñòċé íàñòîéêè íàñòîċê, ïċäëîĉċíà êîìàíäà\nopagebreak
-\begin{quote}
- |\showcaptionsetup|\marg{float type}\quad.\nopagebreak[3]
-\end{quote}
-% is offered. It generates a log file entry, showing the given options
-% for the specified \meta{float type}. For example
-Îíà ñîçäà¸ò ñîîáùċíèċ â~log-ôàéëċ, ïîêàçûâà˙ çàäàííûċ îïöèè
-äë˙ âûáàííîî \meta{float type}. Íàïèìċ
-\begin{quote}
- |\captionsetup[figure]{labelfont=bf,textfont=it}|\\
- |\showcaptionsetup{figure}|
-\end{quote}
-% gives the info:
-äàñò ñîîáùċíèċ:
-\begin{quote}\small
- |Caption Info: Option list on `figure'|\\
- |Caption Data: {labelfont=bf,textfont=it} on input line 5.|
-\end{quote}
-
-\pagebreak[3]
-% \subsection{Continued floats}
-\subsection{Ïîäîëĉàŝùèċñ˙ ôëîòû}
-\label{ContinuedFloat}
-
-\DescribeMacro{\ContinuedFloat}\label{TeXr:continued:a}%
-% Sometimes you want to split figures or tables without giving them
-% their own reference number. This is what the command
-Èíîäà âîçíèêàċò íċîáġîäèìîñòü àçáèòü èñóíêè èëè òàáëèöû íà íċñêîëüêî
-÷àñòċé, çàäàâ èì îáùèé íîìċ. Äë˙ ŭòîî ïċäíàçíà÷ċíà êîìàíäà
-\begin{quote}
- |\ContinuedFloat|\quad.
-\end{quote}
-% is for; it should be used as first command inside the floating environment.
-% It prevents the incrementation of the relevant counter (usually done by
-% |\caption|), so a figure or table containing a |\Continued|\-|Float| inside
-% gets the same reference number as the figure or table before.
-% An example:
-Ëó÷ĝċ ċ¸ ïîñòàâèòü ïċâîé âíóòè îêóĉċíè˙ ôëîòà.
-Êîìàíäà |\ContinuedFloat| îòìċí˙ċò óâċëè÷ċíèċ ñîîòâċòñòâóŝùċî ñ÷¸ò÷èêà ôëîòà
-(èñïîëüçóċìîî êîìàíäîé |\caption|)
-è~çàäà¸ò òîò ĉċ íîìċ êàê è~ó~èñóíêà èëè òàáëèöû âûĝċ. Ïèìċ
-\begin{quote}
- |\begin{table}|\\
- | \caption{A table}|\\
- | |\ldots\\
- |\end{table}|\\
- \ldots\\
- |\begin{table}\ContinuedFloat|\\
- | \caption{A table (cont.)}|\\
- | |\ldots\\
- |\end{table}|
-\end{quote}
-% gives the following result:
-äàñò ñëċäóŝùèé ċçóëüòàò:
-\begin{Example}
- \captionsetup{type=table,position=b,skip=0pt}
- \caption{A table}
- \centerline{\ldots}
- \ContinuedFloat
- \caption{A table (cont.)}
- \centerline{\ldots}
-\end{Example}
-
-\bigskip
-
-\NEWfeature{v3.1}
-% Furthermore the |\Continued|\-|Float| command executes options associated with
-% the type name ``|Continued|\-|Float|''. For example this can be used to switch
-% to a different label format for continued figures or tables, as shown here:
-Ïîìèìî ŭòîî êîìàíäà |\Continued|\-|Float| âêëŝ÷àċò îïöèè, ñâ˙çàííûċ
-ñ~ñîîòâċòñòâóŝùċé îïöèċé"=òèïîì Ğ|Continued|\-|Float|ğ. Íàïèìċ, ŭòî ìîĉċò áûòü èñïîëüçîâàíî äë˙
-ñîçäàíè˙ àëüòċíàòèâíûġ ôîìàòîâ ìċòîê äë˙ òàáëèö è~èñóíêîâ, êàê ïîêàçàíî çäċñü:
-\begin{quote}
- |\DeclareCaptionLabelFormat{continued}{Continued #1~#2}|\\
- |\captionsetup[ContinuedFloat]{labelformat=continued}|\\
- \ldots\\
- |\begin{table}\ContinuedFloat|\\
- | \caption{A table}|\\
- | |\ldots\\
- |\end{table}|
-\end{quote}
-\begin{Example}\selectlanguage{USenglish}
- \captionsetup{type=table,position=b,skip=0pt}
- \captionsetup[ContinuedFloat]{labelformat=continued1e}
- \ContinuedFloat
- \caption{A table}\label{continued1e}
- \centerline{\ldots}
-\end{Example}
-Â~óññêîé äîêóìċíòàöèè ŭòî ìîĉċò âûë˙äċòü òàê:
-\begin{quote}
- |\DeclareCaptionLabelFormat{continued}{#1~#2 (\textit{ïîäîëĉċíèċ})}|\\
- |\captionsetup[ContinuedFloat]{labelformat=continued}|\\
- \ldots\\
- |\begin{table}\ContinuedFloat|\\
- | \caption{A table}|\\
- | |\ldots\\
- |\end{table}|
-\end{quote}
-\begin{Example}
- \captionsetup{type=table,position=b,skip=0pt}
- \captionsetup[ContinuedFloat]{labelformat=continued1r}
- \ContinuedFloat
- \caption{A table}\label{continued1r}
- \centerline{\ldots}
-\end{Example}
-\smallskip
-% \See{\Ref{declare} for an explanation of
-% \cs{Declare}\-\texttt{Caption}\-\texttt{Label}\-\texttt{Format}.}
-\See{\Ref{declare} îïèñûâàŝùèé
- \cs{Declare}\-\texttt{Caption}\-\texttt{Label}\-\texttt{Format}.}
-
-\medskip
-
-% There is also a \LaTeX\ counter called |Continued|\-|Float| which could be
-% used for own purposes.
-% For ordinary (floating) environments it's set to zero, to one for the first
-% continued float, to two inside the second one, and so on.
-% So every |\Continued|\-|Float| increments this counter and a floating
-% environment without |\Continued|\-|Float| command resets this counter to zero.
-% An example:
-Ñîçäàí òàêĉċ ñ÷¸ò÷èê \LaTeX'à, íàçâàííûé |Continued|\-|Float|, êîòîûé ìîĉċò áûòü
-èñïîëüçîâàí ïè íċîáġîäèìîñòè.
-Â~îáû÷íûġ îêóĉċíè˙ġ ïëàâàŝùèġ îáúċêòîâ îí àâċí íóëŝ, â~ïċâîì ïîäîëĉàŝùċìñ˙
-ôëîòċ îí àâċí ċäèíèöċ, â~ñëċäóŝùċì äë˙ âòîîî îêóĉċíè˙ è~ò.\,ä.
-Òàê, êàĉäà˙ êîìàíäà |\Continued|\-|Float| óâċëè÷èâàċò ŭòîò ñ÷¸ò÷èê è~ïëàâàŝùèé îáúċêò
-áċç êîìàíäû |\Continued|\-|Float| âíîâü îáíóë˙ċò ŭòîò ñ÷¸ò÷èê.
-Ïèìċ:
-\begin{quote}
- |\DeclareCaptionLabelFormat{cont}{#1~#2\asbuk{ContinuedFloat}}|\\
- |\captionsetup[ContinuedFloat]{labelformat=cont}|\\
- \ldots\\
- |\begin{table}\ContinuedFloat|\\
- | \caption{A table}|\\
- | |\ldots\\
- |\end{table}|
-\end{quote}
-\begin{Example}
- \captionsetup{type=table,position=b,skip=0pt}
- \captionsetup[ContinuedFloat]{labelformat=continued2}
- \ContinuedFloat
- \caption{A table}\label{continued2}
- \centerline{\ldots}
-\end{Example}
-\medskip
-% A reference to this table would still result in the output
-% ``\autoref{continued2}'' since only the caption label format was changed.
-% If you would like to use the |Continued|\-|Float| counter for the references,
-% too, you could redefine the command |\the|\-|Continued|\-|Float| instead,
-% which will be appended to the figure or table counter automatically in
-% continued floats and is preset to be empty.
-Ññûëêà íà ŭòó òàáëèöó îñòàíċòñ˙ â~âèäċ
-Ğ\autoref{continued2}ğ, ïîñêîëüêó èçìċí˙ëñ˙ òîëüêî ôîìàò ìċòêè.
-Ċñëè âàì íóĉíî èñïîëüçîâàòü òàêĉċ ñ÷¸ò÷èê |Continued|\-|Float| â~ññûëêàġ,
-âû äîëĉíû ïċċîïċäċëèòü êîìàíäó |\the|\-|Continued|\-|Float|,
-êîòîà˙, ïîäêëŝ÷àċòñ˙ àâòîìàòè÷ċñêè â~ïîäîëĉàŝùèġñ˙ ôëîòàġ,
-òîäà êàê ïî óìîë÷àíèŝ ŭòà êîìàíäà ïóñòà.
-\begin{quote}
- |\renewcommand\theContinuedFloat{\asbuk{ContinuedFloat}}|\\
- \ldots\\
- |\begin{table}\ContinuedFloat|\\
- | \caption{A table}|\\
- | |\ldots\\
- |\end{table}|
-\end{quote}
-\begin{Example}
- \captionsetup{type=table,position=b,skip=0pt}
- \renewcommand\theContinuedFloat{\asbuk{ContinuedFloat}}
- \ContinuedFloat
- \caption{A table}\label{continued3}
- \centerline{\ldots}
-\end{Example}
-\medskip
-% A reference to that table would result in the output ``\autoref{continued3}''.
-Ññûëêà íà ŭòó òàáëèöó äàñò ñëċäóŝùèé ċçóëüòàò Ğ\autoref{continued3}ğ.
-
-\pagebreak[3]
-\DescribeMacro{\ContinuedFloat*}
-% Suppose you want to start the first figure or table of such a series with a
-% kind of ``Figure 7a'' and not with ``Figure 7'' (and the second one with
-% ``Figure 7b'' instead of ``Figure 7a'').
-% This is possible, too, by using the starred variant |\Continued|\-|Float*|
-% which---just like |\Continued|\-|Float|---executes options associated with the
-% type name ``|Continued|\-|Float|'' and increments the \LaTeX\ counter
-% |Continued|\-|Float|, \emph{but} marks the first figure or table of a series
-% instead:
-Ïċäïîëîĉèì âàì íóĉíî ñîçäàòü ïîäîëĉàŝùèċñ˙ èñóíîê èëè òàáëèöó ñ~íóìċàöèîííûì
-çàîëîâêîì âèäà ĞFigure 7ağ, à~íċ ĞFigure 7ğ (à~çàòċì, êàê
-ĞFigure 7bğ, âìċñòî ĞFigure 7ağ).
-Ŭòî òàêĉċ âîçìîĉíî, ċñëè èñïîëüçîâàòü çâ¸çäíûé âàèàíò êîìàíäû |\Continued|\-|Float*|
-êîòîà˙ \cdash--- êàê è~|\Continued|\-|Float| \cdash--- ïîäêëŝ÷àċò îïöèè
-ñ~ïîìîùüŝ êîìàíäû Ğ|Continued|\-|Float|ğ è~óâċëè÷èâàċò ñ÷¸ò÷èê \LaTeX'à
-|Continued|\-|Float|, \emph{íî} îòìċ÷àċò è~ïċâûé ôëîò èç ñċèè
-ïîäîëĉàŝùèġñ˙ ôëîòîâ:
-\begin{quote}
- |\renewcommand\theContinuedFloat{\asbuk{ContinuedFloat}}|\\
- \ldots\\
- |\begin{figure}\ContinuedFloat*|\\
- | |\ldots\\
- | \caption{First figure of a series}|\\
- |\end{figure}|\\
- \ldots\\
- |\begin{figure}\ContinuedFloat|\\
- | |\ldots\\
- | \caption{Second figure of a series}|\\
- |\end{figure}|\\
- \ldots\\
- |\begin{figure}\ContinuedFloat|\\
- | |\ldots\\
- | \caption{Third figure of a series}|\\
- |\end{figure}|
-\end{quote}
-\begin{Example}
- \captionsetup{type=figure,position=b,skip=0pt}
- \renewcommand\theContinuedFloat{\asbuk{ContinuedFloat}}
- \begingroup
- \ContinuedFloat*
- \centerline{\ldots}
- \caption{First figure of a series}
- \endgroup
- \begingroup
- \ContinuedFloat
- \centerline{\ldots}
- \caption{Second figure of a series}
- \endgroup
- \begingroup
- \ContinuedFloat
- \centerline{\ldots}
- \caption{Third figure of a series}
- \endgroup
-\end{Example}
-\smallskip
-% \Note{Unfortunately \cs{ContinuedFloat*} is not available if the
-% \package{subfig} package\cite{subfig} is loaded.}
-\Note{Ê~ñîĉàëċíèŝ êîìàíäó \cs{ContinuedFloat*} íċëüç˙ èñïîëüçîâàòü ïè çàóĉċííîì ïàêċòċ
- \package{subfig}\cite{subfig}.}
-
-\pagebreak[3]
-% \subsubsection*{A note about longtables}
-\subsubsection*{A note about longtables}
-% If you want to have a different caption label in |long|\-|table|s (offered
-% by the \package{longtable} package\cite{longtable}) after a page break,
-% this can \emph{not} be archived by using |\Continued|\-|Float|,
-% but instead you could write something like:
-Ċñëè âàì íóĉíî ñîçäàòü îòëè÷àŝùèéñ˙ ôîìàò ìċòêè äë˙ ïîäîëĉċíè˙
-îêóĉċíè˙ |long|\-|table|
-(ïċäëààċìîî ïàêċòîì \package{longtable}\cite{longtable})
-íà ñëċäóŝùċé ñòàíèöċ,
-èñïîëüçîâàíèċ |\Continued|\-|Float| \emph{íċ} äàñò ċçóëüòàòîâ,
-íî âû ìîĉċòċ çàäàòü ÷òî-òî âîäċ:
-\begin{quote}
- |\DeclareCaptionLabelFormat{continued}{Continued #1~#2}|\\
- \ldots\\
- |\begin{longtable}{|\ldots|}|\\
- | \caption{A longtable}\\|\\
- |\endfirsthead|\\
- | \captionsetup{labelformat=continued}|\\
- | \caption[]{A longtable}\\|\\
- |\endhead|\\
- | |\ldots\\
- |\end{longtable}|
-\end{quote}
-
-% --------------------------------------------------------------------------- %
-
-\clearpage
-% \section{Own enhancements}
-\section{Ñîáñòâċííûċ íàñòîéêè}
-\label{declare}
-
-% A family of commands is provided to allow users to define their own formats
-% etc.
-% This enables information on separators, justification, fonts, and styles to
-% be associated with a name and kept in one place.
-% (These commands need to appear in the document preamble,
-% this is the part between |\document|\-|class| and |\begin{document}|.)
-Èìċċòñ˙ ñċìċéñòâî êîìàíä, ïîçâîë˙ŝùèġ ïîëüçîâàòċëŝ ñàìîñòî˙òċëüíî
-ñîçäàòü ñîáñòâċííîċ îôîìëċíèċ.
-Ŭòî ïîçâîë˙ċò èíôîìàöèŝ î~àçäċëèòċë˙ġ, âûêëŝ÷êċ, ĝèôòàġ, è~ñòèë˙ġ
-ïèâ˙çàòü ê~îïċäċë¸ííîìó êëŝ÷ó, è~ïîìċñòèòü âñ¸ ŭòî â~îäíîì ìċñòċ
-(òàêèċ êîìàíäû äîëĉíû íàġîäèòüñ˙ â~ïċàìáóëċ äîêóìċíòà \cdash---
-ŭòî ÷àñòü ìċĉäó ñòîêàìè êîìàíä |\document|\-|class| è~|\begin{document}|).
-
-\pagebreak[3]
-\DescribeMacro{\DeclareCaption-\\Format}
-% You can define your own caption formats using the command
-Âû ìîĉċòċ îïċäċëèòü ñâî¸ îôîìëċíèċ ïîäïèñè, èñïîëüçó˙ êîìàíäó
-\begin{quote}
-% |\DeclareCaptionFormat|\marg{name}\marg{code using \#1, \#2 and \#3}\mbox{\quad.}
- |\DeclareCaptionFormat|\marg{name}\marg{êîä, èñïîëüçóŝùèé \#1, \#2 è~\#3}\mbox{\ .}
-\end{quote}
-% At usage the system replaces \#1 with the caption label, \#2 with the
-% separator and \#3 with the text. So the standard format |plain| is
-% pre-defined by \thispackage\ as
-Ïè èñïîëüçîâàíèè ïîàììà çàìċí˙ċò \#1 íà íóìċàöèîííûé çàîëîâîê, \#2 íà
-àçäċëèòċëü è~\#3 íà òċêñò ïîäïèñè. Èòàê, ñòàíäàòíûé ôîìàò |plain| îïċäċë¸í
-âíóòè ïàêċòà \thispackage\ êàê
-\begin{quote}
- |\DeclareCaptionFormat{plain}{#1#2#3\par}|\quad.
-\end{quote}
-\begin{Expert}
-% There is also a starred variant, |\Declare|\-|Caption|\-|Format*|,
-% which causes the code being typeset in \TeX s vertical (instead of
-% horizontal) mode, but does not support the |indention=| option.
-Ñóùċñòâóċò òàêĉċ çâ¸çäíûé âàèàíò |\Declare|\-|Caption|\-|Format*|, êîòîûé
-ñîçäà¸ò êîä, ïċ÷àòàŝùèéñ˙ â~âċòèêàëüíîì ċĉèìċ (ìîäċ) \TeX'à (âìċñòî
-îáû÷íîî îèçîíòàëüíîî),
-íî â~ŭòîì ñëó÷àċ íċ ïîääċĉèâàċòñ˙ êëŝ÷ |indention=|.
-\end{Expert}
-
-\pagebreak[3]
-\DescribeMacro{\DeclareCaption-\\LabelFormat}
-% Likewise you can define your own caption label formats:
-Àíàëîè÷íî âû ìîĉċòċ îïċäċëèòü ôîìàò íóìċàöèîííîî çàîëîâêà:
-\begin{quote}
- |\DeclareCaptionLabelFormat|\marg{name}\marg{êîä èñïîëüçóŝùèé \#1 è~\#2}
-\end{quote}
-% At usage \#1 gets replaced with the name (e.g. ``figure'') and \#2
-% gets replaced with the reference number (e.g. ``12'').
-% An example:
-Ïè èñïîëüçîâàíèè \#1 çàìċí˙ċòñ˙ íà èì˙ ôëîòà (íàïèìċ. Ğèñ.ğ) è~\#2
-çàìċí˙ċòñ˙ íà ïî˙äêîâûé íîìċ (íàïèìċ Ğ12ğ). Ïèìċ:
-\begin{quote}
- |\DeclareCaptionLabelFormat{bf-parens}{(\textbf{#2})}|\\
- |\captionsetup{labelformat=bf-parens,labelsep=quad}|
-\end{quote}
-\example*{labelformat=bf-parens,labelsep=quad}{\exampletext}
-
-\pagebreak[3]
-\DescribeMacro{\bothIfFirst}
-\DescribeMacro{\bothIfSecond}
-% If you define your own caption label formats and use the
-% \package{subcaption} or \package{subfig}\cite{subfig} package,
-% you should take care of empty caption label names.
-% For this purpose the commands
-Êîäà âû îïċäċë˙ċòċ ñâî¸ îôîìëċíèċ íóìċàöèîííîî çàîëîâêà è~èñïîëüçóċòċ
-òàêĉċ ïàêċòû \package{subcaption} èëè \package{subfig},
-âû äîëĉíû ïîìíèòü ÷òî â~ïîäôëîòàġ ŭëċìċíò
-Ğèì˙ ôëîòàğ áóäċò ïóñòûì. Äë˙ ŭòîé öċëè ñëċäóŝùèċ êîìàíäû
-\begin{quote}
- |\bothIfFirst|\marg{first arg}\marg{second arg}\quad è\\
- |\bothIfSecond|\marg{first arg}\marg{second arg}
-\end{quote}
-% are offered. |\bothIfFirst| tests if the first argument exists (means: is
-% not empty), |\bothIfSecond| tests if the second argument exists. If yes,
-% both arguments get typeset, otherwise none of them.
-ïċäëîĉċíû. Êîìàíäà |\bothIfFirst| òċñòèóċò íàëè÷èċ ïċâîî àóìċíòà (÷òî îí
-íċïóñòîé), êîìàíäà |\bothIfSecond| òċñòèóċò íàëè÷èċ âòîîî. Ċñëè òċñòèóċìûé
-àóìċíò ċñòü, òî ïċ÷àòàŝòñ˙ îáà àóìċíòà, â~ïîòèâíîì ñëó÷àċ íè îäíîî.
-
-\smallskip
-
-\pagebreak[3]
-% For example the standard label format |simple| is \emph{not} defined as
-Íàïèìċ, ñòàíäàòíîċ îôîìëċíèċ íóìċàöèè |simple| îïċäċëċíî íċ òàê:
-\begin{quote}
- |\DeclareCaptionLabelFormat{simple}{#1~#2}|\mbox{\quad,}
-\end{quote}
-% because this could cause an extra space if \#1 is empty. Instead |simple|
-% is defined as
-ïîñêîëüêó àóìċíò \#1 ìîĉċò áûòü ïóñòûì. Âìċñòî ŭòîî |simple|
-îïċäċë¸í ñëċäóŝùèì îáàçîì
-\begin{quote}
- |\DeclareCaptionLabelFormat{simple}%|\\
- | {\bothIfFirst{#1}{~}#2}|\mbox{\quad,}
-\end{quote}
-% causing the space to appear only if the label name is present.
-â~ċçóëüòàòċ ïîáċë ïî˙âèòñ˙ òîëüêî òîäà, êîäà ċñòü èì˙ íóìċàöèîííîî
-çàîëîâêà.
-
-\smallskip
-
-\pagebreak[3]
-\DescribeMacro{\DeclareCaption-\\TextFormat}\NEWfeature{v3.0l}%
-% Likewise you can define your own caption text formats:
-Àíàëîè÷íî ìîĉíî îïċäċëèòü ôîìàò òċêñòà ïîäïèñè:
-\begin{quote}
-% |\DeclareCaptionTextFormat|\marg{name}\marg{code using \#1}
- |\DeclareCaptionTextFormat|\marg{name}\marg{êîä, èñïîëüçóŝùèé àóìċíò \#1}
-\end{quote}
-% At usage \#1 gets replaced with the caption text.
-Ïè èñïîëüçîâàíèè \#1 çàìċí˙ċòñ˙ òċêñòîì ïîäïèñè.
-
-\bigskip
-
-\pagebreak[3]
-\DescribeMacro{\DeclareCaption-\\LabelSeparator}
-% You can define your own caption label separators with
-Ìîĉíî îïċäċëèòü ñâîé àçäċëèòċëü íîìċà è~òċêñòà ïîäïèñè ñ~ïîìîùüŝ
- êîìàíäû
-\begin{quote}
- |\DeclareCaptionLabelSeparator|\marg{name}\marg{code}\mbox{\quad.}
-\end{quote}
-% Again an easy example taken from \thispackage\ itself:
-È~îï˙òü ïîñòîé ïèìċ èç òîî, ÷òî ïċäëààċò \thispackage:
-\begin{quote}
- |\DeclareCaptionLabelSeparator{colon}{: }|
- \end{quote}
- \begin{Expert}
-% There is also a starred variant, |\Declare|\-|Caption|\-|Label|\-|Separator*|,
-% which causes the code being typeset without using the |label|\-|font=| setting.
-% So for example the label separators |quad|, |new|\-|line|, and |en|\-|dash|
-% are defined in this way.
-Ñóùċñòâóċò òàêĉċ çâ¸çäíûé âàèàíò, |\Declare|\-|Caption|\-|Label|\-|Separator*|,
-êîòîûé îïċäċë˙ċò êîä, áċç èñïîëüçîâàíè˙ íàñòîċê èç êëŝ÷à |label|\-|font=|.
-Òàê, íàïèìċ, àçäċëèòċëè |quad|, |newline| è |endash|
-îïċäċëċíû ŭòîé êîìàíäîé.
-\end{Expert}
-
-\bigskip
-
-\pagebreak[3]
-\DescribeMacro{\DeclareCaption-\\Justification}
-% You can define your own caption justifications with
-Âû ìîĉċòċ îïċäċëèòü ñîáñòâċííóŝ âûêëŝ÷êó ñ~ïîìîùüŝ êîìàíäû
-\begin{quote}
- |\DeclareCaptionJustification|\marg{name}\marg{code}\mbox{\quad.}
-\end{quote}
-% The \meta{code} simply gets typeset just before the caption.
-% E.g.~using the justification |raggedright|, which is defined as
-Àóìċíò \meta{code} çàäà¸ò âûêëŝ÷êó äî íà÷àëà ïîäïèñè.
-Íàïèìċ èñïîëüçîâàíèċ âûêëŝ÷êè |raggedright|, êîòîà˙ îïċäċëċíà êàê
-\begin{quote}
- |\DeclareCaptionJustification{raggedright}{\raggedright}|\mbox{\quad,}
-\end{quote}
-% typesets captions with all lines moved to the left margin.
-âûêëŝ÷àċò âñċ ñòîêè ïîäïèñè â~ëċâûé êàé.
-
-\bigskip
-
-\pagebreak[3]
-\DescribeMacro{\DeclareCaption-\\Font}
-% You can define your own caption fonts with
-Âû ìîĉċòċ çàäàòü ñâîé ĝèôò äë˙ ïîäïèñè ñ~ïîìîùüŝ
-\begin{quote}
- |\DeclareCaptionFont|\marg{name}\marg{code}\quad.
-\end{quote}
-% For example this package defines the options |small| and |bf| as
-Íàïèìċ äàííûé ïàêċò îïċäċë˙ċò îïöèè |small| è~|bf| êàê
-\begin{quote}
- |\DeclareCaptionFont{small}{\small}|\quad è\\
- |\DeclareCaptionFont{bf}{\bfseries}|\quad.
-\end{quote}
-\iffalse
-% The line spacing could be customized using the \package{setspace} package,
-% for example:%\NEWdescription{v3.0h}
-Èíòċëèíü˙ĉ ìîĉċò áûòü íàñòîċí ñ~ïîìîùüŝ ïàêċòà \package{setspace},
-íàïèìċ:%\NEWdescription{v3.0h}
-\begin{quote}
- |\usepackage{setspace}|\\
-% |\DeclareCaptionFont{singlespacing}{\setstretch{1}}|~\footnote{%
-% \emph{\DefaultNoteText:} Using \cs{singlespacing} does not work here since
-% it contains a \cs{vskip} command.}\\
- |\DeclareCaptionFont{singlespacing}{\setstretch{1}}|\quad\footnote{%
- \emph{\DefaultNoteText}: Èñïîëüçîâàíèċ \cs{singlespacing} â äàííîì ñëó÷àċ
- íċ àáîòàċò ïîñêîëüêó ñîäċĉèò êîìàíäó \cs{vskip}.}\\
- |\DeclareCaptionFont{onehalfspacing}{\onehalfspacing}|\\
- |\DeclareCaptionFont{doublespacing}{\doublespacing}|\\
- |\captionsetup{font={onehalfspacing,small},labelfont=bf}|
-\end{quote}
-\example{font={onehalfspacing,small},labelfont=bf,singlelinecheck=off}{\exampletext}
-\fi
-% An example which brings color into life:
-Ïèìċ èñïîëüçîâàíè˙ öâċòà:
-\begin{quote}
- |\usepackage{color}|\\
- |\DeclareCaptionFont{red}{\color{red}}|\\
- |\DeclareCaptionFont{green}{\color{green}}|\\
- |\DeclareCaptionFont{blue}{\color{blue}}|\\
- |\captionsetup{labelfont={blue,bf},textfont=green}|
-\end{quote}
-\example*{labelfont={color=blue,bf},textfont={color=green},singlelinecheck=off}{\exampletext}
-% But since \thispackage\ already includes the tricky definition
-Íî ïîñêîëüêó \thispackage\ óĉċ èñïîëüçóċò ġèòîóìíîċ îïċäċëċíèċ
-\begin{quote}
- |\DeclareCaptionFont{color}{\color{#1}}|
-\end{quote}
-% you can get the same result simply with
-âû ìîĉċòċ ïîëó÷èòü òîò ĉċ ċçóëüòàò çàäàâ ïîñòî
-\begin{quote}
- |\usepackage{color}|\\
- |\captionsetup{labelfont={color=blue,bf},|\\
- | textfont={color=green}}|\quad.
-\end{quote}
-
-\medskip
-
-\pagebreak[3]
-\DescribeMacro{\DeclareCaption-\\Style}
-% You can define your own caption styles with
-Âû ìîĉċòċ îïċäċëèòü ñâîè ñîáñòâċííûċ ñòèëè ñ~ïîìîùüŝ
-\begin{quote}
- |\DeclareCaptionStyle|\marg{name}\oarg{additional options}\marg{options}\mbox{\quad.}
-\end{quote}
-% Remember, caption styles are just a collection of suitable options, saved
-% under a given name. You can wake up these options at any time with the
-% option |style=|\meta{style name}.
-Íàïîìíèì, ÷òî ñòèëè ïîäïèñè ŭòî êîëëċêöè˙ êëŝ÷ċé, ñîġàí¸ííûġ
-ïîä äàííûì èìċíċì. Âû ìîĉċòċ ïèâċñòè èġ â~äċéñòâèċ ñ~ïîìîùüŝ êëŝ÷à
-|style=|\meta{style name}.
-
-% All caption styles are based on the |base| set of options. (See \Ref{style}
-% for a complete list.) So you only need to specify options which are different
-% to them.
-Âñċ ñòèëè ïîäïèñċé áàçèóŝòñ˙ íà óñòàíîâêàġ ïî óìîë÷àíèŝ. (Ñì. ïîëíûé ñïèñîê
-â~\Ref{style}.) Ïîŭòîìó äîñòàòî÷íî îïċäċëèòü îïöèè, îòëè÷íûċ
-îò óĉċ çàäàííûġ.
-
-% If you specify \meta{additional options} they get used in addition when
-% the caption fits into a single line and this check was not disabled with
-% the option |single|\-|line|\-|check=off|.
-Ċñëè âû îïċäċëèòċ \meta{additional options} îíè áóäóò èñïîëüçîâàòüñ˙ êîäà
-ïîäïèñü áóäċò îäíîñòî÷íîé, è~êîíòîëü êîîòêèġ ïîäïèñċé íċ îòêëŝ÷ċí
-çàäàíèċì îïöèè |single|\-|line|\-|check=off|.
-
-% Again a very easy example taken from the core of this package: The
-% caption style |base| is pre-defined as
-Îï˙òü ĉċ î÷ċíü ïîñòîé ïèìċ èç ñàìîî ïàêċòà. Ñòèëü ïîäïèñċé |base|
-îïċäċë¸í êàê:
-\begin{quote}
- |\DeclareCaptionStyle{base}%|\\
- | [justification=centering,indention=0pt]{}|\quad.
-\end{quote}
-
-% Something more exciting:
-×òî-òî ïîèíòċċñíċċ:
-\begin{quote}
- |\DeclareCaptionStyle{mystyle}%|\\
- | [margin=5mm,justification=centering]%|\\
- | {font=footnotesize,labelfont=sc,margin={10mm,0mm}}|\\
- |\captionsetup{style=mystyle}|
-\end{quote}
-% gives you caption like these ones:
-äàñò âàì ïîäïèñè êàê â~ñëċäóŝùċì ïèìċċ:
-\begin{Example}
- \captionsetup{type=figure,style=mystyle,position=b}
- \caption{Êîîòêà˙ ïîäïèñü.}
- \caption{Äëèííà˙, äëèííà˙, äëèííà˙, äëèííà˙, äëèííà˙, äëèííà˙,
- äëèííà˙, äëèííà˙, äëèííà˙, äëèííà˙, äëèííà˙,
- äëèííà˙, äëèííà˙, äëèííà˙, äëèííà˙, äëèííà˙, ïîäïèñü.}
-\end{Example}
-
-\bigskip
-
-\pagebreak[3]
-\DescribeMacro{\DeclareCaption-\\ListFormat}\NEWfeature{v3.1}%
-% You can define your own caption list formats with
-Âû ìîĉċòċ îïċäċëèòü ñâîé ôîìàò äë˙ Ñïèñêîâ, èñïîëüçó˙
-\begin{quote}
- |\DeclareCaptionListFormat|\marg{name}\marg{êîä èñïîëüçóŝùèé \#1 è~\#2}\mbox{\quad.}
-\end{quote}
-% At usage \#1 gets replaced with the label prefix (e.g.~|\p@figure|),
-% and \#2 gets replaced with the reference number (e.g.~|\thefigure|).
-Ïè èñïîëüçîâàíèè \#1 çàìċí˙ċòñ˙ íà ïċôèêñ ìċòêè (íàïèìċ |\p@figure|)
-è~\#2 \cdash--- íà íîìċ (íàïèìċ, |\thefigure|).
-
-\bigskip
-
-\pagebreak[3]
-\DescribeMacro{\DeclareCaptionType}\NEWfeature{v3.1f}%
-% You can define your own floating environments and caption types with
-Âû ìîĉċòċ îïċäċëèòü ñîáñòâċííûċ îêóĉċíè˙ è~òèïû ïîäïèñċé, èñïîëüçó˙
-\begin{quote}
- |\DeclareCaptionType|\oarg{options}\marg{type}\oarg{name}\oarg{list name}
-\end{quote}
-% where \meta{options} are one or more of
-äċ \meta{options} îäíà èç
-\begin{quote}\begin{tabular}{r@{}l@{\qquad}l}
- |fileext=| & \meta{file extension}
- & {\small(íàïèìċ~|fileext=lod|)}\\
-% |listname=|\meta{list name}\\
-% |name=|\meta{prosa name}\\
- |placement=| & \meta{combination of \,\purett{htbp}}
- & {\small(íàïèìċ~|placement=tbp|)}\\
- |within=| & \meta{``within'' counter} \emph{or} \texttt{none}\quad.
- & {\small(íàïèìċ~|within=section|)}
-\end{tabular}\end{quote}
-% If no \meta{options} are given, ``lo\meta{type}'' will be used as \meta{file
-% extension} for the list, ``|tbp|'' as \meta{placement} specifier,
-% and ``|chapter|'' resp. ``|none|'' as \meta{``within'' counter},
-% i.e., the counter which resets the numbering.
-% (If ``|none|'' was specified as value, the numbering of the new
-% type will be continuous throughout the document.)
-Ċñëè \meta{options} íċ çàäàíû, Ğlo\meta{type}ğ áóäċò èñïîëüçîâàí êàê \meta{file
-extension} äë˙ Ñïèñêà, Ğ|tbp|ğ êàê îïöè˙ àçìċùċíè˙ \meta{placement}
-è~Ğ|chapter|ğ èëè Ğ|none|ğ êàê ñ÷¸ò÷èê \meta{``within'' counter},
-ò.\,ċ. ñ÷¸ò÷èê, êîíòîëèóŝùèé ïċċíóìċàöèŝ.
-(Ċñëè çàäàí Ğ|none|ğ, íóìċàöè˙ íîâîî òèïà ôëîòà
-áóäċò ñêâîçíà˙.)
-
-% If no \meta{name} is given, the name of the newly created type will be set
-% to \meta{type}, but with an uppercase first letter.
-% If no \meta{list name} is given, the list name will be set to ``List of
-% \meta{name}s''.
-Ċñëè íċ çàäàí êëŝ÷ \meta{name}, èì˙ âíîâü ñîçäàííîî òèïà ôëîòîâ áóäċò âç˙òî
-èç àóìċíòà \meta{type}, íî ñ~ïċâîé ïîïèñíîé áóêâîé.
-Ċñëè íċò àóìċíòà \meta{list name}, íàçâàíèċ Ñïèñêà áóäċò çàäàíî êàê ĞList of
-\meta{name}sğ. [Äë˙ îïöèè \meta{name} íċò ïîääċĉêè íà óññêîì ˙çûêċ.]
-% caption-deu.tex:
-% (Diese Vorbelegungen sind also nur fur
-% englischsprachige Dokumente geeignet,
-% bei anderssprachigen Dokumenten sollte man also immer \meta{Name} und
-% \meta{Listenname} mit angeben.) which means:
-%
-% (This presets are only appropriate for English documents, so for
-% other languages you should use the optional arguments "name" and "list name".)
-(Ŭòè àâòîìàòè÷ċñêèċ óñòàíîâêè âîçìîĉíû òîëüêî äë˙
-àíëèéñêèġ äîêóìċíòîâ, ïîŭòîìó äë˙
-äóèġ ˙çûêîâ îïöèè \meta{name} è~\meta{list name}
-îá˙çàòċëüíû.)
-
-% The list will be typeset using the command |\list|\-|of|\meta{type}|s|,
-% analogous to |\list|\-|of|\-|figures| and |\list|\-|of|\-|tables|.
-% If the \package{fltpage} package is loaded, an environment called
-% |FP|\meta{type} will be defined, same for |sideways|\meta{type}
-% (\package{rotating} package), |SC|\meta{type} (\package{sidecap} package),
-% and |wrap|\meta{type} (\package{wrapfig} package).
-Ñïèñîê ôëîòîâ ìîĉċò áûòü ñîçäàí ñ~ïîìîùüŝ êîìàíäû |\listof|\meta{type}|s|,
-àíàëîè÷íûé |\list|\-|of|\-|figures| è~|\list|\-|of|\-|tables|.
-Ċñëè èñïîëüçóċòñ˙ ïàêċò \package{fltpage}, îêóĉċíèċ
-|FP|\meta{type} áóäċò îïċäċëċíî, òî ĉċ äë˙ |sideways|\meta{type}
-(ïàêċò \package{rotating}), |SC|\meta{type} (ïàêċò \package{sidecap}),
-è~|wrap|\meta{type} (ïàêċò \package{wrapfig}).
-
-\smallskip
-
-\pagebreak[3]
-% So for example
-Òàê, íàïèìċ
-\begin{quote}
- |\DeclareCaptionType{diagram}|
-\end{quote}
-% will define a new caption type and floating environment called |diagram|,
-% the list will be stored in a file with the extension |lodiagram|, the name
-% (used for the caption) will be ``Diagram'' and the list name
-% ``List of Diagrams''.
-% The list could be typeset with |\listofdiagrams|.
-% Dependent on which packages are loaded, the environments |FPdiagram|,
-% |sidewaysdiagram|, |SCdiagram|, and |wrapdiagram| will be defined additionally.
-îïċäċë˙ċò íîâûé òèï ïîäïèñè è~îêóĉċíèċ ôëîòà, íàçâàííûé |diagram|,
-Ñïèñîê áóäċò çàïèñûâàòüñ˙ â~ôàéë ñ~àñĝèċíèċì |lodiagram|, èì˙
-(èñïîëüçóċìîċ â~íóìċàöèîííîì çàîëîâêċ ïîäïèñè) áóäċò Ğ|Diagram|ğ è~çàîëîâîê Ñïèñêà
-Ğ|List of Diagrams|ğ. Ñïèñîê ìîĉċò áûòü àñïċ÷àòàí êîìàíäîé |\listofdiagrams|.
-Â~çàâèñèìîñòè îò òîî, êàêèċ ïàêċòû çàóĉċíû, îïċäċë˙òñ˙ äîïîëíèòċëüíî îêóĉċíè˙
-|FPdiagram|,
-|sideways|\-|diagram|, |SCdiagram| è~|wrap|\-|diagram|.
-
-%caption-deu.tex
-% So definiert zum Beispiel
-% \begin{quote}
-% |\DeclareCaptionType{diagram}[Diagramm][Diagrammverzeichnis]|
-% \end{quote}
-%
-Ïîäîáíîċ ĉċ îïċäċëċíèċ äë˙ óññêîé äîêóìċíòàöèè äîëĉíî âûë˙äċòü òàê:
-\begin{quote}
- |\DeclareCaptionType{diagram}[Äèààììà][Ñïèñîê äèààìì]|
-\end{quote}
-
-% --------------------------------------------------------------------------- %
-
-% \subsection{Further examples}
-\subsection{Ċù¸ íċñêîëüêî ïèìċîâ}
-\label{examples}
-
-\subsubsection*{Example 1}
-
-%\NEWdescription{v3.1}
-% If you would like to have a line break between caption label and text
-% you could define it this way:
-Ċñëè âàì íóĉíî çàäàòü íîâóŝ ñòîêó ìċĉäó íóìċàöèîííûì çàîëîâêîì è~òċêñòîì,
-âû ìîĉċòċ çàäàòü ŭòî ñëċäóŝùèì îáàçîì:
-\begin{quote}
- |\DeclareCaptionFormat{myformat}{#1#2\\#3}|
-\end{quote}
-% If you select this format with |\caption|\-|setup{format=|\x|myformat}|
-% you get captions like this:
-Ċñëè âû âûáċċòċ ŭòîò ôîìàò, çàäàâ |\caption|\-|setup{format=|\x|myformat}|
-âû ïîëó÷èòċ òàêîé âèä ïîäïèñċé:
-%\begin{Example}
-% \captionsetup{skip=0pt}
- \example{format=myformat1,labelfont=bf}{\exampletext}
-%\end{Example}
-% You could even use an indention with this caption format:
-Âû ìîĉċòċ èñïîëüçîâàòü âò˙ĉêó ñ~ŭòèì ôîìàòîì:
-\begin{quote}
- |\captionsetup{format=myformat,indention=1cm}|
-\end{quote}
-% This would look like this:
-Ŭòî áóäċò âûë˙äċòü òàê:
-%\begin{Example}
-% \captionsetup{skip=0pt}
- \example{format=myformat1,indention=1cm,labelfont=bf}{\exampletext}
-%\end{Example}
-% Instead, you would like to have an indention only of the first line of
-% the caption text? No problem, e.g.
-À~÷òî ċñëè, âìċñòî ŭòîî, çàäàòü âò˙ĉêó òîëüêî äë˙ ïċâîé ñòîêè ïîäïèñè?
-Íċò ïîáëċì, íàïèìċ
-\begin{quote}
- |\newlength\myindention|\\
- |\DeclareCaptionFormat{myformat}%|\\
- | {#1#2\\\hspace*{\myindention}#3}|\\
- \ldots\\
- |\setlength\myindention{1cm}|\\
- |\captionsetup{format=myformat}|
-\end{quote}
-% would give you captions like
-äàñò ïîäïèñü âèäà
-%\begin{Example}
-% \captionsetup{skip=0pt}
- \example{format=myformat2,myindention=1cm,labelfont=bf}{\exampletext}
-%\end{Example}
-% But you want to have an caption option for this indention, so you can use
-% it for example with
-% |\caption|\-|setup|\x|[figure]|\x|{my|\-|indention=|\x\ldots|}|?
-% This could be done, too:
-Íî âû ġîòèòċ ñîçäàòü îïöèŝ äë˙ ŭòîé âò˙ĉêè, äë˙ òîî, ÷òîáû
-èñïîëüçîâàòü ċ¸ êàê |\captionsetup|\x|[figure]|\x|{myindention=|\ldots|}|?
-Ŭòî òîĉċ ìîĉíî ñäċëàòü:
-\begin{quote}
- |\newlength\myindention|\\
- |\DeclareCaptionOption{myindention}%|\\
- | {\setlength\myindention{#1}}|\\
- |\DeclareCaptionFormat{myformat}%|\\
- | {#1#2\\\hspace\myindention #3}|\\
- \ldots\\
- |\captionsetup{format=myformat,myindention=1cm}|
-\end{quote}
-% would give the same result as the example above.
-÷òî äàñò ċçóëüòàò àíàëîè÷íûé ïèâċä¸ííîìó âûĝċ.
-
-% \subsubsection*{Example 2}
-\subsubsection*{Ïèìċ 2}
-
-% You want captions to look like this:
-Âû ġîòèòċ ïîëó÷èòü ïîäïèñè òàêîî âèäà:
-%\begin{Example}
-% \captionsetup{skip=0pt}
- \example{format=reverse,labelformat=fullparens,labelsep=fill,labelfont=it}{\exampletext}
-%\end{Example}
-\pagebreak[2]
-% You could do it this way:
-Ŭòî ìîĉíî ñäċëàòü ñëċäóŝùèì îáàçîì:
-\nopagebreak[3]
-\begin{quote}
- |\DeclareCaptionFormat{reverse}{#3#2#1}|\\
- |\DeclareCaptionLabelFormat{fullparens}%|\\
- | {(\bothIfFirst{#1}{~}#2)}|\\
- |\DeclareCaptionLabelSeparator{fill}{\hfill}|\\
- |\captionsetup{format=reverse,labelformat=fullparens,|\\
- | labelsep=fill,font=small,labelfont=it}|
-\end{quote}
-
-% \subsubsection*{Example 3}
-\subsubsection*{Ïèìċ 3}
-
-% The caption text should go into the left margin? A possible solution would be:
-Òċêñò íóìċàöèîííîî çàîëîâêà ïîäïèñè äîëĉċí áûòü âûâċäċí â~ëċâîċ ïîëċ? Âîçìîĉíîċ ċĝċíèċ:
-\begin{quote}
- |\DeclareCaptionFormat{llap}{\llap{#1#2}#3\par}|\\
- |\captionsetup{format=llap,labelsep=quad,singlelinecheck=no}|
-\end{quote}
-% As a result you would get captions like this:
-Â~ċçóëüòàòċ âû ïîëó÷èòċ òàêèċ ïîäïèñè:
-\example{format=llap,labelsep=quad,singlelinecheck=no,margin=0pt}{\exampletext}
-
-\medskip
-
-% If the indention into the margin shall be fixed, you could use a combination
-% of |\llap| and |\makebox|, for example:
-Ċñëè ëċâûé êàé ïîäïèñè ïè âûġîäċ ïîäïèñè íà ïîë˙ äîëĉċí áûòü íà ôèêñèîâàííîì àññòî˙íèè,
-ìîĉíî èñïîëüçîâàòü êîìáèíàöèŝ êîìàíä
-|\llap| è~|\makebox|, íàïèìċ:
-\begin{quote}
- |\DeclareCaptionFormat{llapx}%|\\
- | {\llap{\makebox[5em][l]{#1}}#3\par}|\\
- |\captionsetup{format=llapx,singlelinecheck=off}|
-\end{quote}
-\example{format=llapx,singlelinecheck=off,skip=0pt,margin=0pt}{\exampletext}
-
-% \subsubsection*{Example 4}
-\subsubsection*{Ïèìċ 4}
-
-% This example puts a figure aside a table, but uses only one common caption for both.
-% This will be achieved by a combination of
-% |\Declare|\-|Caption|\-|Label|\-|Format| and |\caption|\-|list|\-|entry|:
-Ñëċäóŝùèé ïèìċ ïîìċùàċò èñóíîê ˙äîì ñ~òàáëèöċé, íî èñïîëüçóċò îáùóŝ äë˙ íèġ ïîäïèñü.
-Ŭòî ìîĉíî ñäċëàòü êîìáèíàöèċé êîìàíä
-|\Declare|\-|Caption|\-|Label|\-|Format| è~|\caption|\-|list|\-|entry|:
-\begin{quote}
- |\DeclareCaptionLabelFormat{andtable}%|\\
- | {#1~#2 \& \tablename~\thetable}|\\
- \ldots\\
- |\begin{figure}|\\
- | \centering|\\
- | \includegraphics{|\ldots|}%|\\
- | \qquad|\\
- | \begin{tabular}[b]{\ldots}|\\
- | |\ldots\\
- | \end{tabular}|\\
- | \captionlistentry[table]{|\ldots|}|\\
- | \captionsetup{labelformat=andtable}|\\
- | \caption{|\ldots|}|\\
- |\end{figure}|
-\end{quote}
-\DeleteShortVerb{\|}%
-\noindent\begin{minipage}{\linewidth}
- \captionsetup{type=figure}
- \centering
- \includegraphics[width=30pt]{cat}%
- \qquad
- \begin{tabular}[b]{r|rr}
- & x & y \\\hline
- a & 1 & 2 \\
- b & 3 & 4 \\
- \end{tabular}
-% \captionlistentry[table]{A figure and a table with a common caption}
-% \captionsetup{labelformat=andtable}
-% \caption{A figure and a table with a common caption~\footnotemark}
- \captionlistentry[table]{èñóíîê è~òàáëèöà ñ~îáùċé ïîäïèñüŝ}
- \captionsetup{labelformat=andtable}
- \caption{èñóíîê è~òàáëèöà ñ~îáùċé ïîäïèñüŝ\footnotemark}
-\end{minipage}
-% \footnotetext{The picture was taken with permission from the
-% \LaTeX\ Companion\cite{TLC2} examples.}
-\IfFileExists{cat.eps}%
-{\footnotetext{èñóíîê ëŝáċçíî ïċäîñòàâëċí èç ïèìċîâ êíèè
- \LaTeX\ Companion\cite{TLC2}.}}{}
-\MakeShortVerb{\|}
-% (Please remember that |\caption|\-|list|\-|entry| increments the figure
-% resp.~table counter.)
-(Íàïîìíèì, ÷òî êîìàíäà |\caption|\-|list|\-|entry|, êàê è~|\caption|, óâċëè÷èâàċò ñ÷¸ò÷èê ôëîòà.)
-
-
-% --------------------------------------------------------------------------- %
-
-\clearpage
-% \section{Document classes \& Babel support}
-\section{Êëàññû äîêóìċíòîâ è~ïîääċĉêà ïàêċòà \package{babel}}
-\label{classes}
-
-% This section will give you an overview of the document classes the
-% \package{caption} supports, what do they already offer regarding captions,
-% what side effects will occur when using the \package{caption} package with
-% them, and what are the `default' settings for them.
-Ŭòîò àçäċë äàñò îáçî êëàññîâ äîêóìċíòîâ, êîòîûċ ïîääċĉèâàŝòñ˙ ïàêċòîì
-\package{caption}, ÷òî îíè óĉċ ïċäëààŝò äë˙ àáîòû ñ~ïîäïèñ˙ìè,
-êàêèċ ïîáî÷íûċ ŭôôċêòû âîçíèêàŝò ïè èñïîëüçîâàíèè ñ~íèìè ïàêċòà \package{caption}
-è~êàêîâû óñòàíîâêè ïî óìîë÷àíèŝ äë˙ ŭòèġ êëàññîâ.
-
-\NEWfeature{v3.1}
-% The `default' settings depend on the document class you use; they represent
-% how the class author wanted the captions to look like. So for example
-% setting |format=|\x|default| can give you different visual designs when used
-% with different document classes.
-Óñòàíîâêè ïî óìîë÷àíèŝ çàâèñ˙ò îò êëàññà äîêóìċíòà, èñïîëüçóċìîî âàìè; îíè ïċäñòàâë˙ŝò
-îôîìëċíèċ ïîäïèñċé, ñîîòâċòñòâóŝùċċ çàìûñëàì àâòîà äàííîî êëàññà äîêóìċíòà. Íàïèìċ, íàñòîéêè
-|format=|\x|default| äàäóò àçëè÷íûé ċçóëüòàò ïè èñïîëüçîâàíèè ñ~àçíûìè êëàññàìè.
-
-\begingroup\setlength\leftmargini{0.3em}% default = 2.5em
-\INFO
-% If you don't find the document class you use in this section, you usually
-% don't have to worry: Many document classes (e.g.~the \class{octavo} class)
-% are derived from one of the standard document classes \class{article},
-% \class{report}, or \class{book}, and behave the same regarding captions.
-% \Thispackage\ automatically does a compatibility check against the document
-% class used and will give you the clear warning
-Ċñëè âû íċ íàĝëè êëàññ äîêóìċíòà â~ŭòîì àçäċëċ, òî, îáû÷íî, ŭòî íċ ïîâîä äë˙ âîëíċíè˙:
-ìíîĉċñòâî êëàññîâ äîêóìċíòîâ (íàïèìċ, êëàññ \class{octavo})
-ïîëó÷ċíû èç ñòàíäàòíûġ êëàññîâ äîêóìċíòîâ
-\class{article}, \class{report} èëè \class{book}, è~èìċŝò
-àíàëîè÷íûċ íàñòîéêè äë˙ ïîäïèñċé.
-\Thispackage\ àâòîìàòè÷ċñêè äċëàċò ïîâċêó ñîâìċñòèìîñòè êëàññà äîêóìċíòà
-è~äà¸ò íċäâóñìûñëċííîċ ïċäóïċĉäċíèċ
-\begin{quote}\footnotesize
- |Package caption Warning: Unsupported document class (or package) detected,|\\
- |(caption) usage of the caption package is not recommended.|\\
- |See the caption package documentation for explanation.|
-\end{quote}
-% if such an incompatibility was detected.
-% If you don't get such warning everything is fine, but if you get it the
-% usage of \thispackage\ is not recommended and especially not supported.
-ċñëè áûëà îïċäċëċíà íċñîâìċñòèìîñòü.
-Ċñëè âû òàêîî ïċäóïċĉäċíè˙ íċ ïîëó÷èëè, òî âñ¸ â~ïî˙äêċ, íî ċñëè âû ŭòî ïċäóïċĉäċíèċ
-âñ¸ ĉċ ïîëó÷èëè, \thispackage\ íċ ċêîìċíäóċòñ˙ è~òċì áîëċċ íċ ïîääċĉèâàċòñ˙.
-
-\begin{Expert}
-% If you get such a compatibility warning but decide to use \thispackage{}
-% anyway, you should watch carefully what side-effects occur, usually the
-% look and feel of your captions will change by just including \thispackage{}
-% without options, meaning they do not look like as intended by the author
-% of the document class.
-% If this is fine for you, you should first specify the option |style=|\x|base|
-% via |\use|\-|package[style=|\x|base]{caption}| or
-% |\caption|\-|setup{style=|\x|base}| to set \thispackage\ into a well-defined
-% state.
-% Afterwards you can start setting your own options additionally and
-% keep your fingers crossed.
-Ċñëè âû, íċñìîò˙ íà ïċäóïċĉäċíèċ, ċĝèëè âñ¸ àâíî èñïîëüçîâàòü \thispackage{},
-âû äîëĉíû ïîâċèòü, êàêîé ïîáî÷íûé ŭôôċêò âîçíèêàċò. Îáû÷íî ïîäêëŝ÷ċííûé \thispackage{}
-áċçî âñ˙êèġ îïöèé â~òàêèġ ñëó÷à˙ġ èçìċí˙ċò âûâîä ïîäïèñċé, è~îíè âûë˙ä˙ò íċ òàê, êàê
-ïċäóñìîòċíî àâòîîì êëàññà äîêóìċíòà.
-Ċñëè ŭòî âàñ óäîâëċòâî˙ċò, âû ìîĉċòċ äë˙ íà÷àëà çàäàòü êëŝ÷ |style=|\x|base|,
-çàäàâ ċî â~ñòîêċ |\use|\-|package[style=|\x|base]{caption}| èëè â~êîìàíäċ
-|\caption|\-|setup{style=|\x|base}|, ÷òî âċí¸ò ġîîĝî íàñòîċííûċ ïàêċòîì óñòàíîâêè.
-Ïîñëċ ŭòîî âû ìîĉċòċ çàäàâàòü ñâîè îïöèè è~íàäċ˙òüñ˙ íà ëó÷ĝċċ.
-\end{Expert}
-\endgroup
-
-\newcommand*\Option{Îïöè˙}
-\newcommand*\defaultvalue{çíà÷ċíèċ \texttt{ïî óìîë÷àíèŝ}}
-\newcommand*\uses{\textit{èñïîëüçóċò}}
-\newcommand*\settings{\textit{íàñòîéêè}}
-\newcommand*\nofont{\textit{îòñóòñòâóċò}}
-
-% \subsection{Standard \LaTeX: article, report, and book}
-\subsection{Ñòàíäàòíûé \LaTeX: article, report, è~book}
-
-\begin{tabular}{ll}
-\Option & \defaultvalue \\\hline
-|format=| & |plain| \\
-|labelformat=| & |simple| \\
-|labelsep=| & |colon| \\
-|justification=| & |justified| \\
-|font=| & \nofont \\
-|labelfont=| & \nofont \\
-|textfont=| & \nofont \\
-\end{tabular}
-
-\begin{Annotation}
-% This also applies to document classes derived from them.
-Ŭòî îòíîñèòñ˙ è~ê~ïîèçâîäíûì îò íèġ êëàññàì.
-\end{Annotation}
-
-% \subsection{\AmS: amsart, amsproc, and amsbook}
-\subsection{Êëàññû \AmS: amsart, amsproc, è~amsbook}
-\label{AMS}
-
-\begin{tabular}{ll}
-\Option & \defaultvalue \\\hline
-|format=| & |plain| \\
-|labelformat=| & |simple| \\
-|labelsep=| & |.\enspace| \\
-|justification=| & |justified| \\
-|font=| & |\@captionfont| \\
-|labelfont=| & |\@captionheadfont| \\
-|textfont=| & |\@captionfont\upshape| \\
-\end{tabular}
-
-\begin{Annotation*}
-% |\@caption|\-|font| will be set to |\normal|\-|font|, and
-% |\@caption|\-|head|\-|font| to |\sc|\-|shape| by the \AmS\ document classes.
-Êëàññû \AmS\ îïċäċë˙ŝò êîìàíäó |\@caption|\-|font|, êîòîà˙ çàäà¸òñ˙ êàê
-|\normal|\-|font|, à~|\@caption|\-|head|\-|font| \cdash--- êàê |\scshape|.
-\end{Annotation*}
-
-% Furthermore the margin will be set to |\caption|\-|indent| for
-% more-than-one-line captions (which will be set to |3pc| by the \AmS\ classes),
-% the margin for single-line captions will be set to the half of it instead.
-% If you want to use a common margin for both, insert
-% |\clear|\-|caption|\-|setup[margin*]{single|\-|line}|
-% into the preamble of your document, after loading \thispackage.
-Êîìċ ŭòîî ïîëċ ïèíèìàċò çíà÷ċíèċ |\captionindent| â~ìíîîñòî÷íûġ ïîäïèñ˙ġ
-(êîòîîċ àâíî â~ŭòèġ êëàññàġ~|3pc|),
-ïîëċ äë˙ îäíîñòî÷íîé ïîäïèñè óìċíüĝàċòñ˙ â~äâà àçà.
-Ċñëè âû ġîòèòċ çàäàòü îáùċċ ïîëċ äë˙ îáîèġ âàèàíòîâ, äîáàâüòċ â~ïċàìáóëċ äîêóìċíòà
-|\clear|\-|caption|\-|setup[margin*]{single|\-|line}|
-ïîñëċ çàóçêè ïàêċòà.
-
-% Additionally the options |figure|\-|position=b,|\x|table|\-|position=t|
-% will be set. You can override these settings by specifying other values for
-% |figure|\-|position=| or |table|\-|position=| in the option list while
-% loading \thispackage.
-Äîïîëíèòċëüíî çàäàŝòñ˙ îïöèè |figure|\-|position=b,|\x|table|\-|position=t|.
-Âû ìîĉċòċ èçìċíèòü ŭòè óñòàíîâêè, çàäàâ äóèċ çíà÷ċíè˙ äë˙ êëŝ÷ċé
-|figure|\-|position=| èëè |table|\-|position=| ïè çàóçêċ ïàêċòà.
-
-\subsection{Êëàññ beamer}
-\label{beamer}
-
-\begin{tabular}{ll}
-\Option & \defaultvalue \\\hline
-|format=| & |plain| \\
-|labelformat=| & \textit{íċ íóìċóċòñ˙} \\
-|labelsep=| & |colon| \\
-|justification=| & |raggedright| \\
-|font=| & \class{beamer} Ğ|caption|ğ \settings \\
-|labelfont=| & \class{beamer} Ğ|caption name|ğ \settings \\
-|textfont=| & \nofont \\
-\end{tabular}
-
-% \subsubsection*{Build-in features, and side-effects}
-% You can setup font and color settings with
-% |\set|\-|beamer|\-|font{caption}|\marg{options} and
-% |\set|\-|beamer|\-|font{caption name}|\marg{options}.
-% This will still work, unless you set a different font with
-% |\caption|\-|setup{font=|\x\meta{options}|}| or
-% |\caption|\-|setup{label|\-|font=|\x\meta{options}|}|.\par
-% Furthermore the \class{beamer} classes offer different caption templates
-% which can be chosen with
-% |\set|\-|beamer|\-|template|\x|{caption}|\x|[|\meta{template}|]|.
-% Since \thispackage\ replaces this caption template mechanism,
-% |\def|\-|beamer|\-|template*|\x|{caption}|\x\marg{template code}
-% and
-% |\set|\-|beamer|\-|template|\x|{caption}|\x|[|\meta{template}|]|
-% will have no effect when \thispackage\ is used.
-\subsubsection*{Âñòîċííûċ îñîáċííîñòè è~ïîáî÷íûċ ŭôôċêòû}
-Âû ìîĉċòċ çàäàòü ĝèôò è~öâċò ñ~ïîìîùüŝ
-|\set|\-|beamer|\-|font{caption}|\marg{options} è~%
-|\set|\-|beamer|\-|font{caption name}|\marg{options}.
-Ŭòî áóäċò àáîòàòü, ċñëè òîëüêî âû íċ çàäàäèòċ äóîé ĝèôò ÷ċċç
-|\caption|\-|setup{font=|\x\meta{options}|}| èëè
-|\caption|\-|setup{label|\-|font=|\x\meta{options}|}|.\par
-Êîìċ ŭòîî êëàññ \class{beamer} ïċäëààċò àçëè÷íûċ ĝàáëîíû
-îôîìëċíè˙ ïîäïèñċé, çàäàâàċìûċ ÷ċċç
-|\set|\-|beamer|\-|template|\x|{caption}|\x|[|\meta{template}|]|.
-Ïîñêîëüêó \thispackage\ çàìċí˙ċò ŭòîò ìċġàíèçì, êîìàíäû
-|\def|\-|beamer|\-|template*|\x|{caption}|\x\marg{template code}
-è~|\set|\-|beamer|\-|template|\x|{caption}|\x|[|\meta{template}|]|
-íċ èìċŝò ñèëû ïè ċî èñïîëüçîâàíèè.
-
-% \subsection{\KOMAScript: scrartcl, scrreprt, and scrbook}
-\subsection{Êëàññû \KOMAScript: scrartcl, scrreprt, è~scrbook}
-\label{KOMA}
-
-\begin{tabular}{ll}
-\Option & \defaultvalue \\\hline
-% |format=| & \uses\ |\setcapindent| \textit{\&} |\setcaphanging| \settings \\
-|format=| & \uses\ |\setcapindent| è~|\setcaphanging| \settings \\
-% |labelformat=| & \textit{like \purett{simple}, but with support of ``autodot''}\\
-|labelformat=| & \textit{òî ĉċ, ÷òî \purett{simple}, íî ñ~ïîääċĉêîé ``autodot''}\\
-|labelsep=| & |\captionformat| \\
-|justification=| & |justified| \\
-|font=| & \settings\ |\setkomafont{caption}| \\
-|labelfont=| & \settings\ |\setkomafont{captionlabel}| \\
-|textfont=| & \nofont \\
-\end{tabular}
-
-% \subsubsection*{Build-in features}
-% The \KOMAScript\ document classes offer many ways to customize the look and
-% feel of the captions. For an overview and a full description please take a
-% look at the \KOMAScript\ documentation, section `Tables and Figures'.
-\subsubsection*{Âñòîċííûċ âîçìîĉíîñòè}
-Êëàññû \KOMAScript\ ïċäëààŝò ìíîî âàèàíòîâ äë˙ íàñòîéêè âûâîäà
-ïîäïèñċé. Ïîëíûé îáçî âû ìîĉċòċ íàéòè â~[àíëèéñêîé] äîêóìċíòàöèè
-\KOMAScript, àçäċë `Tables and Figures'.
-
-% \subsubsection*{Side effects}
-% The optional argument of |\set|\-|cap|\-|width| is not supported and
-% will be ignored if used in conjunction with the \package{caption} package.
-% Furthermore the \KOMAScript\ options |table|\-|caption|\-|above| \&
-% |table|\-|caption|\-|below| and the commands |\caption|\-|above| \&
-% |\caption|\-|below| are stronger than the |position=| setting offered by
-% the \package{caption} package.
-\subsubsection*{Ïîáî÷íûċ ŭôôċêòû}
-Äîïîëíèòċëüíûé àóìċíò êîìàíäû |\setcapwidth| íċ ïîääċĉèâàċòñ˙ (ïîêà)
-è~áóäċò èíîèîâàòüñ˙ ïè ñîâìċñòíîì èñïîëüçîâàíèè ñ~ïàêċòîì \package{caption}.
-Ïîìèìî ŭòîî, îïöèè \KOMAScript\ |tablecaptionabove| è~%
-|table|\-|caption|\-|below| è~êîìàíäû |\caption|\-|above| è~|\caption|\-|below|
-áóäóò ñèëüíċċ ÷ċì íàñòîéêè êëŝ÷à |position=| ïċäëààċìîî ïàêċòîì \package{caption}.
-
-% \subsection{\NTG: artikel, rapport, and boek}
-\subsection{Êëàññû \NTG: artikel, rapport, è~boek}
-\label{NTG}
-
-\begin{tabular}{ll}
-\Option & \defaultvalue \\\hline
-|format=| & |plain| \\
-|labelformat=| & |simple| \\
-|labelsep=| & |colon| \\
-|justification=| & |justified| \\
-|font=| & \nofont \\
-|labelfont=| & |\CaptionLabelFont| \\
-|textfont=| & |\CaptionTextFont| \\
-\end{tabular}
-
-% \subsubsection*{Build-in features, and side-effects}
-% |\Caption|\-|Label|\-|Font| and |\Caption|\-|Text|\-|Font| can be set either
-% directly or by using |\Caption|\-|Fonts|.
-% Both is still supported unless you use one of the two options
-% |label|\-|font=| or |text|\-|font=| offered by \thispackage.
-\subsubsection*{Âñòîċííûċ îñîáċííîñòè è~ïîáî÷íûċ ŭôôċêòû}
-|\CaptionLabelFont| è~|\Caption|\-|Text|\-|Font| ìîóò áûòü
-çàäàíû ëèáî íċïîñċäñòâċííî, ëèáî
-ñ~èñïîëüçîâàíèċì êîìàíäû |\Caption|\-|Fonts|. Îáà âàèàíòà
-ïîääċĉèâàŝòñ˙, òîëüêî ċñëè íċ áûë
-çàäàí îäèí èç êëŝ÷ċé |labelfont=| èëè |textfont=| äàííîî ïàêċòà.
-
-% \subsection{\SmF{}: smfart and smfbook}
-\subsection{Êëàññû \SmF{}: smfart è~smfbook}
-\label{SMF}
-
-% Since the \SmF\ document classes are derived from the \AmS\ document classes
-% the same default values are valid here.
-Ïîñêîëüêó êëàññû \SmF\ ˙âë˙ŝòñ˙ ïîèçâîäíûìè êëàññîâ \AmS, òî òċ ĉċ îàíè÷ċíè˙
-äċéñòâóŝò è~çäċñü.
-
-% Additionally the margin is limited up to the tenth of the |\line|\-|width|.
-% If you don't like this limitation, you can switch it off with the option
-% |max|\-|margin=|\x|off| or |max|\-|margin=|\x|false|
-% (which both means the same).
-Êîìċ òîî àçìċ ïîë˙ îàíè÷ċí îäíîé äċñ˙òîé îò çíà÷ċíè˙ |\linewidth|.
-Ċñëè âàñ íċ óñòàèâàŝò ŭòè îàíè÷ċíè˙, èġ ìîĉíî îòêëŝ÷èòü ñ~ïîìîùüŝ
-|maxmargin=|\x|off| èëè |maxmargin=|\x|false| (îáà âàèàíòà äàŝò îäíî è~òî ĉċ).
-
-\subsection{Êëàññ thesis}
-\label{thesis}
-
-\begin{tabular}{ll}
-\Option & \defaultvalue \\\hline
-|format=| & |hang| \\
-% |labelformat=| & \textit{like \purett{simple}, but with short name}\\
-|labelformat=| & \textit{òî ĉċ, ÷òî \purett{simple}, íî ñ~êàòêèì èìċíċì}\\
-|labelsep=| & |colon| \\
-|justification=| & |justified| \\
-|font=| & \nofont \\
-|labelfont=| & |\captionheaderfont| \\
-|textfont=| & |\captionbodyfont| \\
-\end{tabular}
-
-% \subsubsection*{Build-in features, and side-effects}
-\subsubsection*{Âñòîċííûċ îñîáċííîñòè è~ïîáî÷íûċ ŭôôċêòû}
-% The caption label font can be set with |\caption|\-|header|\-|font|,
-% the caption text font with |\caption|\-|body|\-|font|.
-% Both is still supported unless you use one of the two options
-% |label|\-|font=| or |text|\-|font=| offered by \thispackage.
-Ĝèôò íóìċàöèîííîî çàîëîâêà ìîĉċò áûòü çàäàí ÷ċċç êîìàíäó |\caption|\-|header|\-|font|,
-ĝèôò äë˙ òċêñòà ïîäïèñè \cdash--- ÷ċċç |\caption|\-|body|\-|font|.
-Îáċ êîìàíäû ïîääċĉèâàŝòñ˙, òîëüêî ċñëè âû íċ èñïîëüçîâàëè îïöèè
-|label|\-|font=| èëè |text|\-|font=|, êîòîûċ ïċäëààċò \thispackage.
-
-% \subsection{frenchb Babel option}
-\subsection{Îïöè˙ frenchb ïàêċòà Babel}
-\label{frenchb}
-
-% If you use the \package{frenchb} option of the \package{babel} package
-% with one of the three standard \LaTeX{} classes (or a one derived from them)
-% the default |label|\-|sep=| will be set to |\Caption|\-|Sep|\-|a|\-|ra|\-|tor|
-% (offered by \package{frenchb}), overriding the default value set by the
-% document class.
-% So redefining |\Caption|\-|Sep|\-|a|\-|ra|\-|tor| will still work, unless you
-% don't select a different |label|\-|sep=| than the default one.
-Ċñëè âû èñïîëüçóċòċ îïöèŝ \package{frenchb} ïàêċòà \package{babel}
-ñ~îäíèì èç ò¸ġ ñòàíäàòíûġ êëàññîâ \LaTeX'à (èëè èġ ïîèçâîäíûìè)
-çíà÷ċíèċ ïî óìîë÷àíèŝ êëŝ÷à |labelsep=| [îïöè˙ |labelsep=default|] áóäċò èñïîëüçîâàòü
-çíà÷ċíèċ êîìàíäû |\Caption|\-|Sep|\-|a|\-|ra|\-|tor| (ïċäëààċìîé
-ïàêċòîì \package{frenchb}), çàìċíèâ çíà÷ċíèċ ïî óìîë÷àíèŝ, çàäàííîċ êëàññîì.
-À~ïċċîïċäċë¸ííà˙ êîìàíäà |\Caption|\-|Sep|\-|a|\-|ra|\-|tor|
-áóäċò àáîòàòü äî òċġ ïî, ïîêà âû
-íċ îïċäċëèòċ äóîċ çíà÷ċíèċ |labelsep=|, îòëè÷àŝùċċñ˙ îò çíà÷ċíè˙ ïî óìîë÷àíèŝ.
-
-\INFO*
-% Please load \thispackage\ \emph{after} the \package{babel} package.
-Ïîĉàëóéñòà çàóĉàéòċ \thispackage\ \emph{ïîñëċ} ïàêċòà \package{babel}.
-
-% \subsection{frenchle and frenchpro packages}
-\subsection{Ïàêċòû frenchle è~frenchpro}
-\label{frenchpro}
-
-% If you use the \package{frenchle} or \package{frenchpro} package,
-% the default |label|\-|sep=| will be set to |\caption|\-|sep|\-|a|\-|ra|\-|tor|
-% (offered by \package{frenchle/pro}) plus \cs{space}, overriding the default
-% value set by the document class.
-% So redefining |\caption|\-|sep|\-|a|\-|ra|\-|tor| will still work, unless you
-% don't select a different |label|\-|sep=| than the default one.
-Ċñëè âû èñïîëüçóċòċ ïàêċòû \package{frenchle} èëè \package{frenchpro},
-çíà÷ċíèċ ïî óìîë÷àíèŝ |label|\-|sep=| îïċäċëèò çíà÷ċíèċ êîìàíäû
-|\caption|\-|sep|\-|a|\-|ra|\-|tor| (ïċäëààċìîé
-ïàêċòàìè \package{frenchle/pro}) ïëŝñ \cs{space}, çàìċíèâ çíà÷ċíèċ, çàäàííîċ êëàññîì
-ïî óìîë÷àíèŝ.
-Ïîŭòîìó ïċċîïċäċëċíèċ |\caption|\-|sep|\-|a|\-|ra|\-|tor|
-àáîòàċò äî òċġ ïî, ïîêà âû
-íċ îïċäċëèòċ äóîċ çíà÷ċíèċ |labelsep=|, îòëè÷àŝùċċñ˙ îò çíà÷ċíè˙ ïî óìîë÷àíèŝ.
-
-% Furthermore the default |text|\-|font=| will be set to |text|\-|font=|\x|it|,
-% since this emulates the default setting of |\caption|\-|font| defined by the
-% \package{frenchle} or \package{frenchpro} package.
-% %If you redefine |\captionfont| after loading the \package{frenchle} or
-% %\package{frenchpro} package, this redefinition gets lost.
-Ïîìèìî ŭòîî êëŝ÷ ïî óìîë÷àíèŝ |text|\-|font=| áóäċò çàäàí êàê |text|\-|font=|\x|it|,
-ïîñêîëüêó ŭòî ŭìóëèóċò íàñòîéêè êîìàíäû |\caption|\-|font| îïċäċë¸ííîé ïàêċòàìè
-\package{frenchle} èëè \package{frenchpro}.
-% %Ċñëè âû ïċċîïċäċëèòċ êîìàíäó |\captionfont| ïîñëċ çàóçêè \package{frenchle} èëè
-% %\package{frenchpro}, ŭòî ïċċîïċäċëċíèċ ïîïàä¸ò.
-% Please note that the command |\caption|\-|font| is used by the
-% \package{caption} package internally for a different purpose,
-% so you should not change it (anymore).
-Îáàòèòċ âíèìàíèċ, ÷òî êîìàíäà |\caption|\-|font| èñïîëüçóċòñ˙ ïàêċòîì
-\package{caption} äë˙ äóèġ öċëċé, ïîŭòîìó ëó÷ĝċ ċŝ áîëüĝċ íċ ïîëüçîâàòüñ˙.
-
-% The command |\un|\-|numbered|\-|captions|\marg{figure \emph{or} table} will
-% still work, but only unless you don't select a different |label|\-|format=|
-% than the default one.
-Êîìàíäà |\un|\-|numbered|\-|captions|\marg{figure \emph{èëè} table} áóäċò àáîòàòü,
-íî òîëüêî, ċñëè âû íċ îïċäċëèëè êëŝ÷ |label|\-|format=|, îòëè÷àŝùèéñ˙
-îò çíà÷ċíè˙ ïî óìîë÷àíèŝ.
-
-\INFO*
-% Please load \thispackage\ \emph{after} the \package{frenchle}
-% or \package{frenchpro} package.
-Ïîĉàëóéñòà, çàóĉàéòċ \thispackage\ \emph{ïîñëċ} ïàêċòîâ \package{frenchle}
-èëè \package{frenchpro}.
-
-% --------------------------------------------------------------------------- %
-
-\pagebreak[4]
-% \section{Package support}
-\section{Ïîääċĉêà ïàêċòîâ}
-\label{packages}
-\label{compatibility}
-
-%\NEWdescription{v3.1}
-% \Thispackage\ was adapted to the following packages which deals with
-% captions, too:
-\Thispackage\ àäàïòèîâàí ñ~ïàêċòàìè, êîòîûċ òàêĉċ àáîòàŝò ñ~ïîäèñóíî÷íûìè ïîäïèñ˙ìè:
-\begin{quote}
- \package{float}, \package{floatflt}, \package{fltpage},
- \package{hyperref}, \package{hypcap}, \package{listings},
- \package{longtable}, \package{picinpar}, \package{picins},
- \package{rotating}, \package{setspace}, \package{sidecap},
- \package{subfigure}, \package{supertabular}, \package{threeparttable},
- \package{wrapfig}, and \package{xtab}
-\end{quote}
-
-% Furthermore the \package{floatrow} package\cite{floatrow}, the
-% \package{subcaption} package (which is part of the \package{caption} package
-% bundle), and the \package{subfig} package\cite{subfig} support \thispackage{}
-% and use its |\caption|\-|setup| interface.
-Ïîìèìî ŭòîî ïàêċòû \package{floatrow}\cite{floatrow},
-ïàêċò \package{subcaption} (˙âë˙ċòñ˙ ÷àñòüŝ óïïû ïàêċòîâ \package{caption}),
-è~ïàêċò \package{subfig}\cite{subfig}
-ïîääċĉèâàŝò \thispackage\ è~èñïîëüçóŝò èíòċôċéñ |\caption|\-|setup|.
-
-\begingroup\setlength\leftmargini{0.3em}% default = 2.5em
-\INFO
-% If a package (or document class) unknown to \thispackage\ redefines
-% the |\caption| command as well, this redefinition will be preferred
-% over the one this package offers, providing maximum compatibility and
-% avoiding conflicts.
-% If such a potential incompatibility is detected, you will see this
-% warning message:~\footnote{%
-% You can suppress this warning by specifying the option
-% \texttt{compatibility=true} when loading \thispackage.}
-Ċñëè ïàêċò (èëè êëàññ äîêóìċíòà), íċèçâċñòíûé äàííîìó ïàêċòó, ïċċîïċäċë˙ċò
-êîìàíäó |\caption|, ŭòî ïċċîïċäċëċíèċ áóäċò áîëċċ ïċäïî÷òèòċëüíî ïî
-ñàâíċíèŝ ñ~òċì ÷òî ïċäëààċò \thispackage, ÷òî ñîçäàñò ìàêñèìóì ñîâìċñòèìîñòè
-è~äàñò âîçìîĉíîñòü èçáċĉàòü ïîñëċäñòâèé êîíôëèêòîâ.
-Ċñëè ïîòċíöèàëüíà˙ íċñîâìċñòèìîñòü áóäċò îáíàóĉċíà, âû óâèäèòċ ñëċäóŝùċċ
-ïċäóïċĉäċíèċ:\footnote{%
- Âû ìîĉċòċ çàïċòèòü ŭòî ïċäóïċĉäċíèċ, çàäàâ îïöèŝ \texttt{compatibility=true}
- ïè çàóçêċ äàííîî ïàêċòà.}
-\begin{quote}\footnotesize
- |Package caption Warning: \caption will not be redefined since it's already|\\
- |(caption) redefined by a document class or package which is|\\
- |(caption) unknown to the caption package.|\\
- |See the caption package documentation for explanation.|
-\end{quote}
-\endgroup
-
-% As a result, the following features offered by \thispackage\ will not be available:
-Â~ċçóëüòàòċ, ñëċäóŝùèċ íàñòîéêè, êîòîûċ ïċäëààċò \thispackage,
-íċ áóäóò àáîòàòü:
-\begin{itemize}
-% \item the options |labelformat=|, |position=auto|, |list=|, and |listformat=|
-% \item |\caption*| (to produce a caption without label)
-% \item |\caption[]{|\ldots|}| (to produce no entry in the List of Figures or Tables)
-% \item |\caption{}| (to produce an empty caption without label separator)
-% \item |\ContinuedFloat|
-% \item correctly justified captions in environments like \texttt{wide} and
-% \texttt{addmargin} which add extra margins
-% \item the \textsf{hypcap} feature \See{\Ref{hyperref}\,}
-% \item the sub-caption feature \See{\package{subcaption} package documentation}
- \item îïöèè |labelformat=|, |position=auto|, |list=| è~|listformat=|
- \item |\caption*| (ñîçäàíèċ ïîäïèñè áċç íóìċàöèîííîî çàîëîâêà)
- \item |\caption[]{|\ldots|}| (îòêëŝ÷ċíèċ âûâîäà â~Ñïèñîê ôëîòîâ)
- \item |\caption{}| (ñîçäàíèċ ïîäïèñè áċç àçäċëèòċë˙ ìċĉäó íóìċàöèîííûì çàîëîâêîì è~òċêñòîì)
- \item |\ContinuedFloat|
- \item ïàâèëüíà˙ âûêëŝ÷êà ïîäïèñċé â~îêóĉċíè˙ġ òèïà \texttt{wide} è~\texttt{addmargin},
- êîòîûċ äîáàâë˙ŝò äîïîëíèòċëüíûċ ïîë˙
- \item îïöè˙ \textsf{hypcap} \See{\Ref{hyperref}\,}
- \item âîçìîĉíîñòü ñîçäàíè˙ ïîäïîäïèñè \See{äîêóìċíòàöèŝ ê~ïàêċòó \package{subcaption}}
-\end{itemize}
-
-\DescribeMacro{compatibility=}
-% You can override this compatibility mode by specifying the option
-Âû ìîĉċòċ îòêëŝ÷èòü òàêîé ċĉèì ñîâìċñòèìîñòè, çàäàâ
-\begin{quote}
- |compatibility=false|
-\end{quote}
-% when loading \thispackage.
-% But please note that using this option is neither recommended nor supported
-% since unwanted side-effects or even errors could occur afterwards.
-% (For that reason you will get a warning about this.)
-ïè çàóçêċ ïàêċòà.
-Íî îáàòèòċ âíèìàíèċ, ÷òî èñïîëüçîâàíèċ ŭòîé îïöèè è~íċ ċêîìċíäóċòñ˙, è~íċ ïîääċĉèâàċòñ˙
-ïîñêîëüêó ìîóò âîçíèêíóòü ïîáî÷íûċ ŭôôċêòû è~äàĉċ îĝèáêè.
-(Ïî ŭòîìó ïîâîäó âû êàê àç óĉċ ïîëó÷èëè ïċäóïċĉäċíèċ.)
-
-\newcommand\packagedescription[1]{%
- \ifvmode\else\par\fi
- \nopagebreak
- \parbox[b]{\linewidth}{\footnotesize\leftskip=10pt\rightskip=10pt\relax#1}\par
- \nopagebreak\smallskip\nopagebreak}
-
-\pagebreak[3]
-\subsection{Ïàêċò algorithms}
-\label{algorithms}
-\packagedescription{%
-% The \package{algorithms} package bundle\cite{algorithms} provides two
-% environments: The \texttt{algorithmic} environment provides a possibility
-% for describing algorithms, and the \texttt{algorithm} environment provides
-% a ``float'' wrapper for algorithms.}
-óïïà ïàêċòîâ \package{algorithms}\cite{algorithms} ïċäëààċò äâà îêóĉċíè˙:
-Îêóĉċíèċ \texttt{algorithmic} ïċäëààċò âîçìîĉíîñòü äë˙ çàïèñè àëîèòìîâ,
-à~\texttt{algorithm} \cdash--- Ğïëàâàŝùèéğ âàèàíò àëîèòìîâ.}
-
-% Since the \texttt{algorithm} environment is implemented via |\new|\-|float|
-% provided by the \package{float} package\cite{float}, please see \Ref{float}.
-Ïîñêîëüêó îêóĉċíèċ \texttt{algorithm} çàäà¸òñ˙ ÷ċċç êîìàíäó |\new|\-|float|,
-ïċäëààċìóŝ ïàêċòîì \package{float}\cite{float}, îçíàêîìüòċñü ñ~\Ref{float}.
-
-\iffalse
-\pagebreak[3]
-\subsection{Ïàêċò algorithm2e}
-\label{algorithm2e}
-\packagedescription{%
-% The \package{algorithm2e} package\cite{algorithm2e} offers an environment for
-% writing algorithms in LaTeX2e.}
-Ïàêċò \package{algorithm2e}\cite{algorithm2e} ïċäëààċò îêóĉċíèċ äë˙
-çàïèñè àëîèòìîâ â~LaTeX2e.}
-
-% Since the \package{algorithm2e} package does not use some kind of standard
-% interface for defining its floating environment (e.g.~|\newfloat| of the
-% \package{float} package) and typesetting its caption,
-% the \package{algorithm2e} package is \emph{not} supported by \thispackage.
-Ïîñêîëüêó ïàêċò \package{algorithm2e} íċ èñïîëüçóċò ñòàíäàòíûé èíòċôċéñ äë˙
-îïċäċëċíè˙ ñîáñòâċííîî îêóĉċíè˙ ôëîòà (íàïèìċ, êîìàíäó~|\newfloat| èç ïàêċòà
-\package{float}) è~ñîçäàíè˙ ïîäïèñè,
-ïàêċò \package{algorithm2e} \emph{íċ} ïîääċĉèâàċòñ˙ äàííûì ïàêċòîì.
-%
-% So if you want to customize the captions using \thispackage,
-% you have to build a new environment which uses a supported interface regarding
-% floats (e.g. using the \package{float} or \package{floatrow} package),
-% and combine this environment with the internal \package{algorithm2e} code.
-Ïîŭòîìó, ċñëè âàì íóĉíî íàñòîèòü ïîäïèñè èñïîëüçó˙ \thispackage,
-âû äîëĉíû ñàìè ñîçäàòü íîâîċ îêóĉċíèċ, èñïîëüçó˙ ïîääċĉèâàċìûé èíòċôċéñ àáîòû ñ~ôëîòàìè
-(íàïèìċ, èñïîëüçó˙ ïàêċòû \package{float} èëè \package{floatrow}),
-è~ñêîìáèíèîâàòü ŭòî îêóĉċíèċ ñ~êîäîì ïàêċòà \package{algorithm2e}.
-%
-% As first step you could define a non-floating environment \texttt{algorithmic},
-% for example:
-Ñíà÷àëà âû äîëĉíû îïċäċëèòü íċïëàâàŝùċċ îêóĉċíèċ \texttt{algorithmic},
-íàïèìċ:
-\begin{quote}
- |\usepackage{algorithm2e}|\\
- |% save the "algorithm" environment from the algorithm2e package|\\
- |\let\ORIGalgorithm\algorithm|\\
- |\let\ORIGendalgorithm\endalgorithm|\\
- |% define the algorithmic environment|\\ % , based on the saved environment
- |\newenvironment{algorithmic}%|\\
- | {\renewenvironment{algocf}[1][h]{}{}% pass over floating stuff|\\
- | \ORIGalgorithm}%|\\
- | {\ORIGendalgorithm}|\\
- \ldots
-\end{quote}
-% Having defined this non-floating environment, you could define your own new
-% floating environment with |\newfloat| of the \package{float} package
-% (or |\DeclareNewFloatType| of the \package{floatrow} package),
-% and use the combination of this floating environment and \texttt{algorithmic}
-% in its body, just like you would do when you use the
-% \package{algorithm}/\package{algorithmic} package tandem.
-Îïċäċëèâ òàêîċ íċïëàâàŝùċċ îêóĉċíèċ,
-âû ìîĉċòċ îïċäċëèòü ñâî¸ ñîáñòâċííîċ îêóĉċíèċ ôëîòà ñ~ïîìîùüŝ êîìàíäû |\newfloat| ïàêċòà
-\package{float}, (èëè |\DeclareNewFloatType| ïàêċòà \package{floatrow}),
-è~èñïîëüçîâàòü êîìáèíàöèŝ ŭòîî îêóĉċíè˙ ôëîòà è~îêóĉċíè˙
-\texttt{algorithmic} âíóòè íċî, àíàëîè÷íî òîìó, êàê ŭòî èñïîëüçóċòñ˙
-ïè òàíäċìċ ïàêċòîâ
-\package{algorithm}/\package{algorithmic}.
-
-% You could even use the \package{algorithm} package for this purpose, for example:
-Âû ìîĉċòċ èñïîëüçîâàòü äë˙ ŭòèġ öċëċé ïàêċò \package{algorithm}, íàïèìċ:
-\begin{quote}
- \ldots\\
- |% load the algorithm package to re-define the|\\
- |% floating environment "algorithm" and \listofalgorithms|\\
- |\let\listofalgorithms\undefined|\\
- |\usepackage{algorithm}|\\
- \ldots\\
- |% Example usage:|\\
- |\begin{algorithm}|\\
- |\caption{An algorithm}|\\
- |\begin{algorithmic}|\\
- | \SetVline|\\
- | \eIf{cond1}{|\\
- | a line\;|\\
- | }{|\\
- | another line\;|\\
- | }|\\
- |\end{algorithmic}|
-\end{quote}
-% Now you are finally able to customize the float and caption layout like every
-% other floating environment defined with the \package{float} package\cite{float},
-% please see \Ref{float}.
-Òċïċü âû ìîĉċòċ ñîçäàòü íàñòîéêè äë˙ ñîäċĉèìîî ôëîòà è~ċî ïîäïèñè, àíàëîè÷íî ëŝáîìó äóîìó
-îêóĉċíèŝ ôëîòà, îïċäċë¸ííîìó ïàêċòîì \package{float} package\cite{float},
-ñì.~\Ref{float}.
-
-% \begin{Annotation}
-% An alternative would be using the \package{algorithmicx} package.
-Â~êà÷ċñòâċ àëüòċíàòèâû ìîĉíî èñïîëüçîâàòü ïàêċò \package{algorithmicx}.
-% \end{Annotation}
-\fi
-
-\pagebreak[3]
-\subsection{Ïàêċò float}
-\label{float}
-\packagedescription{%
-% The \package{float} package\cite{float} introduces the commands
-% \cs{restylefloat} to give existing floating environments a new look \& feel
-% and \cs{newfloat} to define new floating environments.
-% It also provides the ``\texttt{H}'' float placement option which places
-% the environments ``here'' instead of letting them floating around.}
-Ïàêċò \package{float}\cite{float} ïċäëààċò êîìàíäû
-\cs{restylefloat} äë˙ ïċċîïċäċëċíè˙ óĉċ ñóùċñòâóŝùċî ìàêċòà ôëîòà
-è~\cs{newfloat} äë˙ îïċäċëċíè˙ íîâûġ îêóĉċíèé ôëîòîâ.
-Òàêĉċ îí ïċäëààċò ñïċöèàëüíóŝ îïöèŝ àçìċùċíè˙ ôëîòà \texttt{H}, êîòîà˙ ïîìċùàċò
-ôëîò Ğçäċñüğ, îòêëŝ÷èâ ïëàâàíèċ ôëîòà.}
-
-% For floating environments defined with \cs{newfloat} or \cs{restylefloat} the
-% |po|\-|si|\-|tion| option has no effect on the main caption anymore, since its
-% placement and spacing will be controlled by the selected float style instead.
-Äë˙ îêóĉċíèé ôëîòîâ, îïċäċë¸ííûġ ñ~ïîìîùüŝ êîìàíä \cs{newfloat} èëè
-\cs{restylefloat} îïöè˙
-|po|\-|si|\-|tion| íċ èìċċò ŭôôċêòà, òàê êàê ìċġàíèçì àçìċùċíè˙ è~àññòàíîâîê
-îòáèâîê êîíòîëèóċòñ˙ ñòèëċì ôëîòà ïàêċòà \package{float}.
-
-% A caption style and options defined with the name of the float style will be
-% executed additionally to the regular ones.
-% Using this mechanism \thispackage\ emulates the default look \& feel of the
-% |ruled| captions: It defines the caption style
-Ñòèëè ïîäïèñè è~êëŝ÷è àññîöèèîâàííûċ ñ~íàçâàíèċì äàííîî ñòèë˙ ôëîòà
-âêëŝ÷àŝòñ˙ ïè çàïóñêċ äàííîî îêóĉċíè˙.
-Èñïîëüçó˙ ŭòîò ìċġàíèçì \thispackage\ ŭìóëèóċò âûâîä ïîäïèñċé â~ñòèëċ
-|ruled|: îí îïċäċë˙ċò ñòèëü ïîäïèñè
-\begin{quote}
- |\DeclareCaptionStyle{ruled}%|\\
- | {labelfont=bf,labelsep=space,strut=off}|\mbox{\quad.}
-\end{quote}
-% So to change this you need either define your own caption style called
-% |ruled| or use |\caption|\-|setup[ruled]|\marg{options} to specify additional
-% options.%,
-%e.g.~|\caption|\-|setup[ruled]{labelsep=|\x|colon}|.
-Òàê, ÷òîáû èçìċíèòü ŭòî âû ìîĉċòċ ëèáî îïċäċëèòü ñâîé ñòèëü ïîäïèñè, íàçâàííûé
-|ruled| èëè èñïîëüçîâàòü |\caption|\-|setup[ruled]|\x\marg{options} è~îïċäċëèòü
-äîïîëíèòċëüíûċ îïöèè.%,
-
-% Also by using this mechanism the skip between a |boxed| float and its caption
-% is specified, overriding its global value:
-Òàêĉċ, èñïîëüçó˙ ŭòîò ìċġàíèçì, îòáèâêà ìċĉäó ôëîòîì â~àìêċ (|boxed|) è~ċî
-ïîäïèñüŝ ïċċîïċäċë˙ċò çíà÷ċíèċ:
-\begin{quote}
- |\captionsetup[boxed]{skip=2pt}|
-\end{quote}
-% For changing this, just use |\caption|\-|setup[boxed]{skip=|\x\meta{value}|}|
-% with an appropriate value. Or if you want to use the global |skip| setting
-% instead, you can remove the usage of the local setting for these floats with
-% |\clear|\-|caption|\-|setup[skip]{boxed}|.
-Äë˙ èçìċíċíè˙ ŭòîî, èñïîëüçóéòċ |\caption|\-|setup[boxed]{skip=|\x\meta{value}|}|
-ñ~ñîîòâċòñòâóŝùèì çíà÷ċíèċì. Èëè, ċñëè âàì íóĉíî âìċñòî ŭòîî èñïîëüçîâàòü îáùèċ
-(ëîáàëüíûċ) óñòàíîâêè êëŝ÷à |skip|,
-âû ìîĉċòċ îòìċíèòü èñïîëüçîâàíèċ ëîêàëüíîî îïċäċëċíè˙, çàäàâ
-|\clear|\-|caption|\-|setup[skip]{boxed}|.
-
-\begin{Note}
-% Only one single caption can be typeset inside environments defined with
-% |\new|\-|float| or |\re|\-|style|\-|float|, furthermore these environments
-% are not behaving exactly like the pre-defined floats |figure| and |table|.
-% As a consequence many packages do not cooperate well with these.
-% Furthermore the \package{float} package has some caveats \& limitations,
-% so if you just want to define a new simple floating environment---behaving
-% like |figure| or |table|---I recommend using |\Declare|\-|Caption|\-|Type|
-% instead.
-% And for defining non-simple floating environments and customization I
-% recommend using |\Declare|\-|New|\-|Float|\-|Type| offered by the
-% \package{floatrow} package\cite{floatrow}.
-Âíóòè îêóĉċíèé îïċäċë¸ííûġ êîìàíäàìè |\new|\-|float| èëè |\re|\-|style|\-|float|
-ìîĉíî çàäàòü òîëüêî îäíó ïîäèñóíî÷íóŝ ïîäïèñü, êîìċ òîî
-ŭòè îêóĉċíè˙ àáîòàŝò íċ òàê, êàê
-îïċäċë¸ííûċ â~ñòàíäàòíîì \LaTeX'ċ |figure| è~|table|.
-Â~ċçóëüòàòċ ìíîĉċñòâî ïàêċòîâ íċ ìîĉċò áûòü êîîïċèîâàòüñ˙ ñ~äàííûì ïàêċòîì.
-Áîëċċ òîî ïàêċò \package{float} èìċċò íċêîòîûċ íċäîñòàòêè è~îàíè÷ċíè˙, ïîŭòîìó, ċñëè
-âàì íóĉíî îïċäċëèòü íîâîċ îêóĉċíèċ, àáîòàŝùċċ êàê
-|figure| èëè |table| \cdash--- ˙ ċêîìċíäîâàë áû äë˙ ŭòîî èñïîëüçîâàòü êîìàíäó
-|\Declare|\-|Caption|\-|Type|.
-À~äë˙ îïċäċëċíè˙ äóèġ îêóĉċíèé ôëîòîâ è~èġ íàñòîéêè ìîĉíî
-èñïîëüçîâàòü êîìàíäó |\Declare|\-|New|\-|Float|\-|Type| èç ïàêċòà
-\package{floatrow}\cite{floatrow}.
-\end{Note}
-
-\iffalse
-% Please also note that you \emph{don't} need a |\restyle|\-|float| for using
-% the ``|H|'' float placement specifier. Some docs say so, but they are
-% wrong.
-% And |\restyle|\-|float{table}| is a very good method to shoot yourself
-% in the foot, since many packages using |table| internally are not working
-% correctly afterwards.
-Îáàòèòċ âíèìàíèċ, ÷òî âàì \emph{íċ} íóĉíî çàäàâàòü |\restyle|\-|float| äë˙ èñïîëüçîâàíè˙
-îïöèè àçìċùċíè˙ Ğ|H|ğ. Íċêîòîûċ óêîâîäñòâà ñîâċòóŝò ŭòî, íî ŭòî íċâċíî.
-À~çàäàíèċ |\restyle|\-|float{table}| ġîîĝèé ñïîñîá ñáèòü ñċá˙ ñ~íî,
-ïîñêîëüêó ìíîèċ ïàêċòû, èñïîëüçóŝùèċ â~ñâîèġ ìàêîêîìàíäàġ îêóĉċíèċ |table| ïċċñòàŝò
-àáîòàòü.
-\fi
-
-\pagebreak[3]
-\subsection{Ïàêċò floatflt}
-\label{floatflt}
-\packagedescription{%
-% The \package{floatflt} package\cite{floatflt} offers figures and tables
-% which do not span the full width of a page and are float around by text.}
-Ïàêċò \package{floatflt}\cite{floatflt} ïċäëààċò îêóĉċíè˙ íċáîëüĝèġ
-èñóíêîâ è~òàáëèö,
-îáòċêàċìûġ òċêñòîì.}
-
-\NEWfeature{v3.1}
-% If you want to setup special options for the |float|\-|ing|\-|figure| and
-% |float|\-|ing|\-|table| environments you can use
-Ċñëè âû ġîòèòċ çàäàòü ñïċöèàëüíûċ îïöèè äë˙ îêóĉċíèé |floating|\-|figure|
-è~|floating|\-|table|,
-ìîĉíî çàäàòü
-\begin{quote}
- |\captionsetup[floatingfigure]|\marg{options}\quad\emph{è}\\
- |\captionsetup[floatingtable]|\marg{options}\quad.
-\end{quote}
-% These options will be executed additionally to the regular ones for
-% |figure| resp.~|table|.
-Ŭòè îïöèè áóäóò äîáàâëċíû ñîîòâċòñòâċííî ê~îñíîâíûì äë˙ |figure| èëè |table|.
-
-\begin{Note}
-% The |margin| resp.~|width| setting will not be used for these figures resp.~tables,
-% unless you set it explicit with |\caption|\-|setup[floating|\-|figure]{|\ldots|}|
-% resp.~|\caption|\-|setup[floating|\-|table]{|\ldots|}|.
-Íàñòîéêè êëŝ÷ċé |margin| èëè |width| íċ èñïîëüçóŝòñ˙ äë˙ òàêèġ èñóíêîâ èëè òàáëèö,
-òîëüêî ċñëè âû íċ çàäàäèòċ èġ ñòîî,
-âíóòè |\caption|\-|setup[floating|\-|figure]{|\ldots|}| èëè
-|\caption|\-|setup[floating|\-|table]{|\ldots|}|.
-\end{Note}
-
-\pagebreak[3]
-\subsection{Ïàêċò fltpage}
-\label{fltpage}
-\packagedescription{%
-% The \package{fltpage} package\cite{fltpage} offers the outhouse of the
-% caption for |figure|s or |table|s which needs the whole page
-% for its contents. This will be done by placing the caption on the bottom
-% of the previous or next page.}
-Ïàêċò \package{fltpage}\cite{fltpage} ïċäëààċò âíċĝíŝŝ ïîäïèñü äë˙ ôëîòîâ
-|figure| èëè |table|, ñîäċĉèìîċ êîòîûġ çàíèìàċò öċëóŝ ñòàíèöó.
-Ïîäïèñü ïè ŭòîì àçìċùàċòñ˙ íà ïċäûäóùċé èëè ñëċäóŝùċé ñòàíèöċ [íà àçâîîòċ].}
-
-\iffalse
-\NEWfeature{v3.1}
-% Two options control the links to the environments |FPfigure| and |FPtable|:
-Ñëċäóŝùèċ êëŝ÷è êîíòîëèóŝò ññûëêè íà îêóĉċíè˙ |FPfigure| è~|FPtable|:
-\begin{description}
-% \item{\texttt{FPlist=caption} or \texttt{FPlist=figure}}\\[\smallskipamount]
-% If set to |caption|, the list entry will link to the caption; if set to
-% |figure|, it will link to the figure contents.
-% (The default setting is |FP|\-|list=|\x|caption|.)
-% \item{\texttt{FPref=caption} or \texttt{FPref=figure}}\\[\smallskipamount]
-% If set to |caption|, a \cs{ref}, \cs{pageref}, \cs{autoref}, or \cs{nameref}
-% will link to the caption; if set to |figure|, it will link to the figure contents.
-% (The default setting is |FP|\-|ref=|\x|figure|.)
- \item{\texttt{FPlist=caption} èëè \texttt{FPlist=figure}}\\[\smallskipamount]
-Ċñëè îïċäċëċíà îïöè˙ |caption|, ññûëêà â~Ñïèñêċ èñóíêîâ áóäċò îòíîñèòüñ˙ ê~ïîäïèñè; à~ċñëè
-|figure| \cdash--- òî ê~ñîäċĉèìîìó ôëîòà.
-(Çíà÷ċíèċ ïî óìîë÷àíèŝ |FPlist=|\x|caption|.)
-\item{\texttt{FPref=caption} èëè \texttt{FPref=figure}}\\[\smallskipamount]
-Ċñëè îïċäċëċíà îïöè˙ |caption|, ññûëêè \cs{ref}, \cs{pageref}, \cs{autoref}, èëè \cs{nameref}
-áóäóò ïèâ˙çàíû ê~ïîäïèñè; à~ċñëè |figure| \cdash--- òî ê~ñîäċĉèìîìó ôëîòà.
-(Çíà÷ċíèċ ïî óìîë÷àíèŝ |FPref=figure|.)
-\end{description}
-\fi
-
-% If you want to setup special options for the |FPfigure| and |FPtable|
-% environments you can use
-Ċñëè âû ġîòèòċ çàäàòü ñïċöèàëüíûċ íàñòîéêè äë˙ îêóĉċíèé |FPfigure| è~|FPtable|
-âû ìîĉċòċ èñïîëüçîâàòü
-\begin{quote}
- |\captionsetup[FPfigure]|\marg{options}\quad\emph{è}\\
- |\captionsetup[FPtable]|\marg{options}\quad.
-\end{quote}
-% These options will be executed additionally to the regular ones for
-% |figure| or |table|.
-Ŭòè îïöèè áóäóò çàäàíû äîïîëíèòċëüíî ê~îñíîâíûì íàñòîéêàì äë˙
-|figure| èëè |table|.
-
-% Furthermore |\Declare|\-|Caption|\-|Type|\marg{name} will also define
-% an environment called |FP|\meta{name} which behaves like |FP|\-|figure| and
-% |FP|\-|table|.
-Ïîìèìî ŭòîî êîìàíäà \cs{DeclareCaptionType}\marg{name} òàêĉċ îïċäċëèò
-îêóĉċíèċ |FP|\meta{name}, êîòîîċ áóäċò àíàëîè÷íî |FPfigure| è~|FPtable|.
-
-\pagebreak[3]
-\subsection{Ïàêċò hyperref}
-\label{hyperref}
-\packagedescription{%
-% The \package{hyperref} package\cite{hyperref} is used to handle cross
-% referencing commands in LaTeX to produce hypertext links in the document.}
-Ïàêċò hyperref\cite{hyperref} èñïîëüçóċòñ˙ äë˙ óïàâëċíè˙ êîìàíäàìè ïċċê¸ñòíûġ ññûëîê
-â~\LaTeX'ċ äë˙ ñîçäàíè˙ èïċòċêñòîâûġ ññûëîê âíóòè äîêóìċíòà.}
-
-\NEWfeature{v3.1}
-% There are two options available to control the placement of hyperlink
-% anchors:~\footnote{These options are named after the \package{hypcap} package
-% which they supersede.}
-Ñóùċñòâóŝò äâà êëŝ÷à, êîíòîëèóŝùèġ àçìċùċíèċ èïċññûëîê:\footnote{Ŭòè
-îïöèè íàçâàíû ïî ïàêċòó \package{hypcap}, êîòîûé îíè çàìċí˙ŝò.}
-\begin{description}
-% \item{\texttt{hypcap=true} or \texttt{hypcap=false}}\\[\smallskipamount]
-% If set to |true| all hyperlink anchors -- where entries in the
-% List of Figures, |\ref|, and |\auto|\-|ref| will link to -- are placed at
-% the beginning of the (floating) environment.\par
-% If set to |false| the hyperlink anchor is (usually) placed at the caption.\par
-% (The default setting is |hypcap=|\x|true|.)
-\item{\texttt{hypcap=true} èëè \texttt{hypcap=false}}\\[\smallskipamount]
-Ċñëè çàäàíà îïöè˙ |true| âñċ èïċññûëêè \cdash--- çàïèñè â~Ñïèñêàġ èñóíêîâ (òàáëèö),
-êîìàíäû |\ref| è~|\autoref| \cdash--- áóäóò ïèâ˙çàíû
-ê~íà÷àëó îêóĉċíè˙ ôëîòà.\par
-Ċñëè çàäàíà îïöè˙ |false| èïċññûëêè (îáû÷íî) ïèâ˙çûâàŝòñ˙ ê~ïîäïèñè.\par
-(Çíà÷ċíèċ ïî óìîë÷àíèŝ |hypcap=true|.)
-% \item{\texttt{hypcapspace=}\meta{amount}}\\[\smallskipamount]
-% Because it looks poor if the hyperlink points exactly at the top of
-% the figure or table, you can specify a vertical distance between
-% the hyperlink anchor and the (floating) environment itself,
-% e.g.~|hyp|\-|cap|\-|space=|\x|0pt| removes this distance.\par
-% (The default setting is |hypcapspace=0.5\baselineskip|.)
-\item{\texttt{hypcapspace=}\meta{amount}}\\[\smallskipamount]
-Ïîñêîëüêó ŭòî âûë˙äèò ïëîġî, ċñëè èïċññûëêà ïîïàäàċò òî÷íî ââċġ èñóíêà èëè òàáëèöû,
-âû ìîĉċòċ çàäàòü ñïċöèàëüíûé ïààìċò àññòî˙íè˙ ìċĉäó ïèâ˙çêîé èïċññûëêè
-è~îêóĉċíèċì ôëîòà,
-íàïèìċ, |hyp|\-|cap|\-|space=|\x|0pt| óáèàċò ŭòî àññòî˙íèċ.\par
-(Çíà÷ċíèċ ïî óìîë÷àíèŝ |hypcapspace=0.5\baselineskip|.)
-\end{description}
-
-% Both settings have no effect in |lst|\-|listing|s (provided by the
-% \package{listings} package), |long|\-|table|s (provided by the
-% \package{longtable} package), |super|\-|tabular|s (provided by the
-% \package{supertabular} package), and |x|\-|tabular|s (provided by the
-% \package{xtab} package), within these environments hyperlink
-% anchors will always be placed as if |hyp|\-|cap=|\x|true| and
-% |hyp|\-|cap|\-|space=|\x|0pt| would be set.
-Îáċ íàñòîéêè íċ èìċŝò ŭôôċêòà â~îêóĉċíè˙ġ |lstlisting| (ïċäëààċìîì ïàêċòîì
-\package{listings}), |longtable| (ïċäëààċìîì ïàêċòîì
-\package{longtable}), |super|\-|tabular| (ïċäëààċìîì ïàêċòîì
-\package{supertabular}) è |xtabular| (ïċäëààċìîì ïàêċòîì \package{xtab}),
-âíóòè ŭòèġ îêóĉċíèé èïċññûëêè âñċäà áóäóò çàäàíû òàê,
-áóäòî çàäàíû îïöèè |hyp|\-|cap=|\x|true| è~|hyp|\-|cap|\-|space=|\x|0pt|.
-
-%\pagebreak[3]Please note:\nopagebreak
-\pagebreak[3]Îáàòèòċ âíèìàíèċ:\nopagebreak
-\begin{description}
-% \item{\cs{captionof}\marg{type}\csmarg{\purerm\ldots}
-% vs.~\cs{captionsetup}\csmarg{type=\textrm{\meta{type}}}$+$\cs{caption}\csmarg{\purerm\ldots}}%
-% \\[\smallskipamount]
-% Without \package{hyperref} loaded, both will give you identical results.
-% But with \package{hyperref} loaded, and with |hyp|\-|cap=|\x|true| requested,
-% the hyperlink anchor will be placed different.
-% For example:
-\item{\cs{captionof}\marg{type}\csmarg\ldots\ è~%
- \cs{captionsetup}\csmarg{type=\textrm{\meta{type}}}$+$\cs{caption}\csmarg\ldots}\\[\smallskipamount]
-Áċç ïàêċòà \package{hyperref}, äàäóò âàì èäċíòè÷íûċ ċçóëüòàòû.
-Íî ñ~çàóĉċííûì ïàêċòîì \package{hyperref}, è~ñ~îïöèċé |hypcap=|\x|true|,
-èïċññûëêà áóäċò äóîé. Íàïèìċ:
-\begin{quote}
-|\begin{minipage}{\linewidth}|\\
-| |\ldots\\
-| \captionof{figure}{A figure}|\\
-|\end{minipage}|
-\end{quote}
-% will place the hyperlink anchor at the caption.
-% (And if |hyp|\-|cap=|\x|true| is set, you will get a warning about this.)
-% But
-Ïîìċñòèò èïċññûëêó â~ïîäïèñü.
-(À~ċñëè çàäàíà îïöè˙ |hyp|\-|cap=|\x|true|, âû ïîëó÷èòċ ïċäóïċĉäċíèċ.)
-Íî
-\begin{quote}
-|\begin{minipage}{\linewidth}|\\
-| \captionsetup{type=figure}|\\
-| |\ldots\\
-| \caption{A figure}|\\
-|\end{minipage}|
-\end{quote}
-% will place the hyperlink anchor at the beginning of the |mini|\-|page|,
-% since |\caption|\-|setup{type=|\x|figure}| does not only set the caption type
-% to ``figure'' but does place a hyperlink anchor, too.
-ïîìċñòèò èïċññûëêó â~íà÷àëî îêóĉċíè˙ |mini|\-|page|,
-ïîñêîëüêó êîìàíäà |\caption|\-|setup|\x|{type=|\x|figure}| íċ òîëüêî çàäà¸ò íàñòîéêè äë˙
-ôëîòà Ğfigureğ, íî òàêĉċ ïîìċùàċò èïċññûëêó.
-
-% \item{\cs{caption}\csoarg{}\csmarg{\purerm\ldots}
-% vs.~\cs{captionsetup}\csmarg{list=false}$+$\cs{caption}\csmarg{\purerm\ldots}}\\[\smallskipamount]
-\item{\cs{caption}\csoarg{}\csmarg\ldots\ è~%
- \cs{captionsetup}\csmarg{list=false}$+$\cs{caption}\csmarg\ldots}\\[\smallskipamount]
-% Again, without \package{hyperref} loaded, both will give you identical results.
-% But with \package{hyperref} loaded, the difference is in the nuances.
-% So for example the optional argument of |\caption| will also be written to
-% the |aux| file, and will be used by the |\name|\-|ref| command.
-% So if you choose to use |\caption| with empty optional argument,
-% |\name|\-|ref| will also give you an empty result.
-% So it's better to use |\caption|\-|setup{list=|\x|false}| if you don't
-% want an entry in the List of Figures or List of Tables.
-Îï˙òü ĉċ, áċç ïàêċòà \package{hyperref}, îáà âàèàíòà äàäóò îäèíàêîâûé ċçóëüòàò.
-À~ñ~çàóĉċííûì ïàêċòîì \package{hyperref}, îòëè÷èċ áóäċò â~íŝàíñàġ.
-Òàê, íàïèìċ, äîïîëíèòċëüíûé àóìċíò êîìàíäû |\caption| òàêĉċ áóäċò çàïèñàí â~%
-|aux|-ôàéë, è~òàêĉċ áóäċò èñïîëüçîâàòüñ˙ êîìàíäà |\name|\-|ref|.
-Ïîŭòîìó, ċñëè âû èñïîëüçóċòċ êîìàíäó ïîäïèñè~|\caption| ñ~ïóñòûì äîïîëíèòċëüíûì àóìċíòîì, êîìàíäà
-|\name|\-|ref| òàêĉċ äàñò âàì Ğïóñòîéğ ċçóëüòàò.
-Ïîŭòîìó ëó÷ĝċ èñïîëüçîâàòü \cs{captionsetup}\csmarg{list=false}, ċñëè âàì íċ íóĉíî
-çàïèñûâàòü èñóíîê â~Ñïèñîê èñóíêîâ èëè òàáëèö.
-\end{description}
-
-\pagebreak[3]
-\subsection{Ïàêċò hypcap}
-\label{hypcap}
-\packagedescription{%
-% The \package{hyp\-cap} package\cite{hypcap} offers a solution to the problem
-% that links to a float using \package{hyper\-ref} may anchors to the caption
-% rather than the beginning of the float.
-% Since \thispackage\ \version{3.1} already solves this problem for itself,
-% the \package{hypcap} package is usually not needed.}
-% %, at least when you use \thispackage.}
-Ïàêċò \package{hypcap}\cite{hypcap} ïċäëààċò ċĝċíèċ ïîáëċì, ñâ˙çàííûġ ñ~ôëîòàìè
-ïè èñïîëüçîâàíèè ïàêċòà \package{hyperref}, êîòîûé ïîìċùàċò èïċññûëêè â~ïîäïèñü,
-à~íċ â~íà÷àëî ôëîòà.
-Ïîñêîëüêó \thispackage\ \version{3.1} óĉċ ċĝèë ŭòó ïîáëċìó ñâîèìè ñċäñòâàìè,
-ïàêċò \package{hypcap} îáû÷íî íċ íóĉċí.%
-% , êîäà âû èñïîëüçóċòċ
-% \thispackage.
-}
-
-% If the \package{hyp\-cap} package is loaded additionally to the
-% \package{hyper\-ref} package, it takes over the control of the hyperlink
-% anchor placement from \thispackage, overriding the options |hyp|\-|cap=|
-% and |hyp|\-|cap|\-|space=|.
-Ċñëè ïàêċò \package{hypcap} çàóĉċí äîïîëíèòċëüíî ê~ïàêċòó \package{hyperref},
-òî êîíòîëü çà èïċññûëêàìè ïċċġîäèò îò ïàêċòà \package{caption} ê~íċìó,
-ïċċêûâà˙ îïöèè êëŝ÷ċé |hypcap=| è~|hyp|\-|cap|\-|space=|.
-
-% So for a manual placement of hyperlink anchors
-% |\caption|\-|setup{type=|\x\meta{type}|}| is not sufficient anymore,
-% instead you need to use |\cap|\-|start| (provided by the \package{hyp\-cap}
-% package) for this.
-Ïîŭòîìó äë˙ ó÷íîî àçìċùċíè˙ èïċññûëêè |\caption|\-|setup{type=|\x\meta{type}|}|
-óĉċ íċ îäèòñ˙, è~âìċñòî ŭòîî âû äîëĉíû èñïîëüçîâàòü êîìàíäó |\capstart|
-(ïċäëààċìóŝ ïàêċòîì \package{hypcap}).
-
-% Regarding the automatically placement the \package{hypcap} package offers good
-% placement of hyperlink anchors for the floating environments |figure| and
-% |table| only. In contrast the |hypcap=|\x|true| option of \thispackage\ also
-% offers good placements of hyperlink anchors for
-% |floating|\-|figure|s (provided by the \package{float\-flt} package),
-% |FP|\-|figure|s \& |FPtable|s (provided by the \package{flt\-page} package),
-% |fig|\-|window|s (provided by the \package{pic\-in\-par} package),
-% |par|\-|pic|s (provided by the \package{pic\-ins} package),
-% |SC|\-|figure|s (provided by the \package{side\-cap} package),
-% |three|\-|part|\-|table|s (provided by the \package{three\-part\-table} package),
-% and |wrapfigure|s (provided by the \package{wrap\-fig} package).%---%
-% %so by loading the \package{hypcap} package additionally you will
-% %loose that.
-Ïè àâòîìàòè÷ċñêîì àçìċùċíèè èïċññûëîê, ïàêċò \package{hypcap} çàäà¸ò âċíîċ
-àçìċùċíèċ òîëüêî äë˙ îêóĉċíèé |figure| è~%
-|table|. Â~òî âċì˙ êàê îïöè˙ êëŝ÷à |hypcap=true| ïàêċòà \package{caption}, ïċäëààċò òàêĉċ
-êîċêòíîċ àçìċùċíè˙ ññûëîê äë˙ îêóĉċíèé
-|floating|\-|figure| (ïċäëààċìîî ïàêċòîì \package{floatflt}),
-|FPfigure| è~|FPtable| (ïċäëààċìûġ ïàêċòîì \package{fltpage}),
-|figwindow| (ïċäëààċìîî ïàêċòîì \package{picinpar}),
-|parpic| (ïċäëààċìîî ïàêċòîì \package{picins}),
-|SCfigure| (ïċäëààċìîî ïàêċòîì \package{sidecap}),
-|three|\-|part|\-|table| (ïċäëààċìîî ïàêċòîì \package{threeparttable}),
-è~|wrap|\-|figure| (ïċäëààċìîî ïàêċòîì \package{wrapfig}).%---%
-%ïîŭòîìó, çàóĉà˙ ïàêċò \package{hypcap}, âû òċ˙ċòċ ŭòè âîçìîĉíîñòè.
-
-\pagebreak[3]
-\subsection{Ïàêċò listings}
-\label{listings}
-\packagedescription{%
-% The \package{listings} package\cite{listings} typesets programming code.}
-Ïàêċò \package{listings}\cite{listings} ïîìîàċò àñïċ÷àòàòü ïîàììíûé êîä.}
-
-% If you want to setup special options for the |lst|\-|listing| environment
-% you can use
-Ċñëè âû ĉċëàċòċ ñîçäàòü ñïċöèàëüíûċ îïöèè äë˙ îêóĉċíè˙ |lstlinsting|
-âû ìîĉċòċ èñïîëüçîâàòü
-\begin{quote}
- |\captionsetup[lstlisting]|\marg{options}\quad.
-\end{quote}
-
-% Please note that the \package{listings} package has its very own options
-% for controlling the position and the skips of the caption:
-% |caption|\-|pos=|, |above|\-|caption|\-|skip=|, and |below|\-|caption|\-|skip=|.
-% \See{\package{listings} documentation for details.}
-% These \package{listings} options override the \package{caption}'s ones, but
-% can be again overwritten by |\caption|\-|setup[lst|\-|listing]{|\ldots|}|,
-% e.g.%~
-Îáàòèòċ âíèìàíèċ, ÷òî ïàêċò \package{listings} èìċċò ñîáñòâċííûċ îïöèè
-äë˙ êîíòîë˙ àñïîëîĉċíè˙ îòáèâîê âîêó ïîäïèñè:
-|caption|\-|pos=|, |above|\-|caption|\-|skip=|, è~|below|\-|caption|\-|skip=|.
-\See{ïîäîáíċċ â~äîêóìċíòàöèè ïàêċòà \package{listings}.}
-Îïöèè ïàêċòà \package{listings} ïċċîïċäċë˙ŝò îïöèè \package{caption}, íî
-ìîóò áûòü â~ñâîŝ î÷ċċäü ïċċïèñàíû ñ~ïîìîùüŝ íàñòîċê
-|\caption|\-|setup[lst|\-|listing]{|\ldots|}|,
-íàïèìċ,
-\begin{quote}|\caption|\-|setup[lst|\-|listing]{skip=|\x|10pt}|\quad.\end{quote}
-
-\pagebreak[3]
-\subsection{Ïàêċò longtable}
-\label{longtable}
-\packagedescription{%
-% The \package{longtable} package\cite{longtable} offers an environment
-% which behaves similar to the \texttt{tabular} environment, but the table
-% itself can span multiple pages.}
-Ïàêċò \package{longtable}\cite{longtable} ïċäëààċò îêóĉċíèċ,
-êîòîîċ àáîòàċò àíàëîè÷íî \texttt{tabular}, íî òàáëè÷íûé ìàòċèàë ìîĉċò çàíèìàòü
-íċñêîëüêî ñòàíèö.}
-
-% If you want to setup special options for the |long|\-|table| environment
-% you can use
-Ċñëè âû ĉċëàċòċ ñîçäàòü ñïċöèàëüíûċ íàñòîéêè äë˙ îêóĉċíè˙ |long|\-|table|
-âû ìîĉċòċ èñïîëüçîâàòü
-\begin{quote}
- |\captionsetup[longtable]|\marg{options}\quad.
-\end{quote}
-% These options will be executed additionally to the regular ones for
-% |table|.
-Ŭòè îïöèè áóäóò äîáàâëċíû ê~îñíîâíûì íàñòîéêàì äë˙
-|table|.
-
-% The |margin| and |width| settings usually override |\LT|\-|cap|\-|width|,
-% so you get an equal look \& feel of the captions in |table|s and
-% |long|\-|table|s.
-% But if you set |\LT|\-|cap|\-|width| to a value different than its default
-% $=$ |4in|, \thispackage\ will follow that.
-% (But |\LT|\-|cap|\-|width| will be overwritten by
-% |\caption|\-|setup[long|\-|table]{width=|\x\meta{value}|}|,
-% even if it is set to a value different than |4in|.)
-Íàñòîéêè êëŝ÷ċé |margin| è~|width| îáû÷íî ïċċêûâàŝò çíà÷ċíèċ êîìàíäû
-|\LTcapwidth|, ïîŭòîìó
-âû ìîĉċòċ ïîëó÷èòü èäċíòè÷íîċ îôîìëċíèċ äë˙ ïîäïèñċé â~îêóĉċíè˙ġ |table| è~%
-|longtable|.
-Íî ċñëè âû çàäàäèòċ çíà÷ċíèċ |\LT|\-|cap|\-|width| îòëè÷íîċ îò çàäàííîî ïî óìîë÷àíèŝ,
-÷òî àâíî ${}={}$|4in|, \thispackage\ áóäċò èñïîëüçîâàòü ŭòî çíà÷ċíèċ.
-(Íî |\LTcapwidth| áóäċò ïċċïèñàíî ïîñëċäóŝùċé íàñòîéêîé
-|\caption|\-|setup[long|\-|table]{width=|\x\meta{value}|}|, äàĉċ ċñëè îíî çàäàíî
-îòëè÷íûì îò~|4in|.)
-
-\begin{Note}
-% |\caption|\-|of| and |\Continued|\-|Float| do \emph{not} work for |long|\-|table|s.
-% Furthermore neither |\caption| nor |\caption|\-|list|\-|entry| will increment
-% the |table| counter here; it's incremented by the |long|\-|table| environment
-% instead.
-% \NEWfeature{v3.1}
-% If you need a |long|\-|table| which does not increment the |table| counter
-% please use the |long|\-|table*| environment (offered by the
-% \package{ltcaption} package which is part of \thispackage\ bundle and will be
-% loaded automatically).
-Êîìàíäû |\caption|\-|of| è~|\Continued|\-|Float| íċ àáîòàŝò â~îêóĉċíè˙ġ |long|\-|table|.
-Êîìċ òîî íè |\caption| íè |\caption|\-|list|\-|entry| íċ óâċëè÷èâàŝò çíà÷ċíèċ ñ÷¸ò÷èêà
-òàáëèö |table|; ċî çíà÷ċíèċ óïàâë˙ċòñ˙ îêóĉċíèċì |long|\-|table|.
-\NEWfeature{v3.1}
-Ċñëè âàì íóĉíî ñîçäàòü îêóĉċíèċ |longtable| áċç óâċëè÷ċíè˙ ñ÷¸ò÷èêà òàáëèö, |table|,
-èñïîëüçóéòċ îêóĉċíèċ |longtable*|, ïċäëààċìîċ ïàêċòîì \package{ltcaption},
-êîòîûé ˙âë˙ċòñ˙ ÷àñòüŝ óïïû ïàêċòîâ ïàêċòà \package{caption} è~çàóĉàċòñ˙ àâòîìàòè÷ċñêè.
-\end{Note}
-
-\pagebreak[3]
-\subsection{Ïàêċò picinpar}
-\label{picinpar}
-\packagedescription{%
-% Similar to the \package{floatflt} package the \package{picinpar}
-% package\cite{picinpar} offers figures and tables which do not span the full
-% width of a page and are float around by text.
-% For a detailed discussion about the differences between these packages
-% please take a look at The \LaTeX\ Companion\cite{TLC2}.}
-Àíàëîè÷íûé ïàêċòó \package{floatflt}, ïàêċò \package{picinpar}%
-\cite{picinpar} ïċäëààċò îêóĉċíè˙ íċáîëüĝèġ èñóíêîâ è~òàáëèö, îáòċêàċìûġ òċêñòîì.
-Çà áîëċċ ïîäîáíîé èíôîìàöèċé î~àçëè÷è˙ġ ïàêċòîâ îáàùàéòċñü
-ê~\LaTeX\ Companion\cite{TLC2}.}
-
-\NEWfeature{v3.1}
-% If you want to setup special options for the |fig|\-|window| and
-% |tab|\-|window| environments you can use
-Ċñëè âàì íóĉíû ñïċöèàëüíûċ íàñòîéêè äë˙ îêóĉċíèé |figwindow| è~|tabwindow|
-âû ìîĉċòċ çàäàòü
-\begin{quote}
- |\captionsetup[figwindow]|\marg{options}\quad\emph{è}\\
- |\captionsetup[tabwindow]|\marg{options}\quad.
-\end{quote}
-% These options will be executed additionally to the regular ones for
-% |figure| or |table|.
-Ŭòè íàñòîéêè áóäóò äîáàâëċíû ê~îñíîâíûì íàñòîéêàì
-|figure| èëè |table|.
-
-\begin{Note}
-% The |margin| resp.~|width| setting will not be used for these figures and tables,
-% unless you set it explicit with |\caption|\-|setup[fig|\-|window]{|\ldots|}| or
-% |\caption|\-|setup[fig|\-|table]{|\ldots|}|.
-Íàñòîéêè êëŝ÷ċé |margin| è~|width| íċ èñïîëüçóŝòñ˙ äë˙ ŭòèġ èñóíêîâ è~òàáëèö,
-òîëüêî ċñëè âû íċ çàäàäèòċ ñòîî |\caption|\-|setup|\x|[figwindow]{|\ldots|}| èëè
-|\caption|\-|setup|\x|[figtable]{|\ldots|}|.
-\end{Note}
-
-\pagebreak[3]
-\subsection{Ïàêċò picins}
-\label{picins}
-\packagedescription{%
-% Similar to the \package{floatflt} and \package{picinpar} package the
-% \package{picins} package\cite{picins} offers figures and tables which do not
-% span the full width of a page and are float around by text.
-% For a detailed discussion about the differences between these packages
-% please take a look at The \LaTeX\ Companion\cite{TLC2}.}
-Àíàëîè÷ċí ïàêċòàì \package{floatflt} è~\package{picinpar}
-\package{picins}\cite{picins} ïċäëààċò îêóĉċíè˙ íċáîëüĝèġ èñóíêîâ è~òàáëèö, îáòċêàċìûġ òċêñòîì.
-Çà áîëċċ ïîäîáíîé èíôîìàöèċé î~àçëè÷è˙ġ ïàêċòîâ îáàùàéòċñü
-ê~\LaTeX\ Companion\cite{TLC2}.}
-
-\NEWfeature{v3.1}
-% If you want to setup special options for the |par|\-|pic| environment you can use
-Ċñëè âû ġîòèòċ çàäàòü ñïċöèàëüíûċ íàñòîéêè äë˙ îêóĉċíè˙ |parpic| âû ìîĉċòċ çàäàòü
-\begin{quote}
- |\captionsetup[parpic]|\marg{options}\quad.
-\end{quote}
-% These options will be executed additionally to the regular ones for
-% |figure| or |table|.
-Ŭòè íàñòîéêè áóäóò äîáàâëċíû ê~îñíîâíûì íàñòîéêàì
-|figure| èëè |table|.\par
-
-% Furthermore |\pic|\-|caption[]{|\ldots|}| produce no entry in the List of Figures,
-% and |\pic|\-|caption*{|\ldots|}| gives an unlabeled \& unnumbered caption.
-Ïîìèìî ŭòîî êîìàíäà |\pic|\-|caption[]{|\ldots|}| íċ ñîçäà¸ò çàïèñè â~Ñïèñêċ èñóíêîâ,
-à~êîìàíäà |\pic|\-|caption*{|\ldots|}| çàäà¸ò ïîäïèñü áċç íóìċàöèîííîî çàîëîâêà.
-
-\begin{Note}
-% The |margin| resp.~|width| setting will not be used for these figures and tables.
-% \iffalse
-% if |pic|\-|caption|\-|side| or |pic|\-|caption|\-|top|\-|side| is used.
-% The |width| setting will not be used (but the |margin| setting will) if
-% |pic|\-|caption|\-|out|\-|side| or |pic|\-|caption|\-|in|\-|side| is used.
-% \fi
-% But you can override this by setting it explicit with
-% |\caption|\-|setup[par|\-|pic]{|\ldots|}|.
-Íàñòîéêè êëŝ÷ċé |margin| è~|width| íċ èñïîëüçóŝòñ˙ äë˙ ŭòèġ èñóíêîâ è~òàáëèö.
-\iffalse
-ċñëè çàäàíû êîìàíäû |pic|\-|caption|\-|side| èëè |pic|\-|caption|\-|top|\-|side|.
-Íàñòîéêè êëŝ÷à |width| íċ áóäóò èñïîëüçîâàòüñ˙ (íî êëŝ÷ |margin| áóäċò), ċñëè
-çàäàíû êîìàíäû |pic|\-|caption|\-|out|\-|side| èëè |pic|\-|caption|\-|in|\-|side|.
-\fi
-Íî ŭòî ìîĉíî ïċċîïċäċëèòü íàñòîéêàìè
-|\caption|\-|setup[par|\-|pic]{|\ldots|}|.
-\end{Note}
-
-% If you want to have a |\pic|\-|caption| of another type as |figure|, please
-% do \emph{not} re-define |\@cap|\-|type| as suggested by the \package{picins}
-% documentation. Please use the |\pic|\-|caption|\-|type|\marg{type} command
-% which is offered by \thispackage\ instead, e.g.:
-Ċñëè âàì íóĉíî çàäàòü ïîäïèñü, |\piccaption|, íċ äë˙ |figure|, à~äë˙ äóîî òèïà ôëîòà,
-\emph{íċ} ïċċîïċäċë˙éòċ êîìàíäó |\@captype|, êàê ïċäëîĉċíî â~äîêóìċíòàöèè ïàêċòà
-\package{picins}.
-Èñïîëüçóéòċ êîìàíäó |\piccaptiontype|\marg{type}, ïċäëààċìóŝ äàííûì ïàêċòîì,
-íàïèìċ:
-\begin{quote}
- |\piccaptiontype{table}|\\
- |\piccaption{An example table}|\\
- |\parpic(50mm,10mm)[s]{|\ldots|}|
-\end{quote}
-
-\pagebreak[3]
-\subsection{Ïàêċò rotating}
-\label{rotating}
-\packagedescription{%
-% The \package{rotating} package\cite{rotating} offers the floating
-% environments \texttt{side\-ways\-figure} and \texttt{side\-ways\-table} which
-% are just like normal figures and tables but rotated by 90 resp.~270 degree.
-% Furthermore a command \cs{rot\-caption} is offered for rotated captions only.}
-Ïàêċò \package{rotating}\cite{rotating} ïċäëààċò îêóĉċíè˙ ôëîòîâ
-\texttt{side\-ways\-figure} è~\texttt{side\-ways\-table}
-êîòîûċ ˙âë˙ŝòñ˙ òċìè ĉċ èñóíêàìè è~òàáëèöàìè, íî àçâ¸íóòûìè íà 90~àäóñîâ.
-Ïîìèìî ŭòîî èñïîëüçóċòñ˙ êîìàíäà \cs{rotcaption} äë˙ ïîâîîòà òîëüêî ïîäïèñċé.}
-
-\iffalse % No, we don't do that
-% If you want to setup special options for the |side|\-|ways|\-|figure| and
-% |side|\-|ways|\-|table| environments you can use
-Ċñëè âû ġîòèòċ çàäàòü íàñòîéêè äë˙ îêóĉċíèé |sidewaysfigure| è~|sidewaystable|
-âû ìîĉċòċ çàäàòü
-\begin{quote}
- |\captionsetup[sidewaysfigure]|\marg{options}\\
- |\captionsetup[sidewaystable]|\marg{options}\quad.
-\end{quote}
-Ŭòè íàñòîéêè áóäóò äîáàâëċíû ê~îñíîâíûì íàñòîéêàì
-|figure| èëè |table|.\par
-\fi
-
-% The command |\rot|\-|caption| will be extended by \thispackage, so
-% |\rot|\-|caption*| and |\rot|\-|caption|\-|of| can be used analogous to
-% |\caption*| and |\caption|\-|of|.
-Êîìàíäà |\rot|\-|caption| áûëà àñĝèċíà äàííûì ïàêċòîì, ïîŭòîìó
-|\rot|\-|caption*| èëè |\rot|\-|caption|\-|of| ìîóò áûòü èñïîëüçîâàíû àíàëîè÷íî
-êîìàíäàì |\caption*| è~|\captionof|.
-
-\NEWfeature{v3.1}
-% Furthermore |\Declare|\-|Caption|\-|Type|\marg{name} will also define
-% an environment called |side|\-|ways|\meta{name} which behaves like
-% |side|\-|ways|\-|figure| and |side|\-|ways|\-|table|.
-Ïîìèìî ŭòîî êîìàíäà |\Declare|\-|Caption|\-|Type|\marg{name} îïċäċëèò
-îêóĉċíèċ, íàçûâàċìîċ |side|\-|ways|\meta{name}, êîòîîċ àáîòàċò àíàëîè÷íî
-|side|\-|ways|\-|figure| è~|side|\-|ways|\-|table|.
-
-\pagebreak[3]
-\subsection{Ïàêċò setspace}
-\label{setspace}
-\packagedescription{%
-% The \package{setspace} package\cite{setspace} offers options and commands
-% to change the spacing,
-% e.g.\ \cs{usepackage}\x\csoarg{one\-half\-spacing}\x\csmarg{set\-space}
-% causes the document to be typeset in one-and-a-half spacing.}
-Ïàêċò \package{setspace}\cite{setspace} ïċäëààċò îïöèè è~êîìàíäû äë˙
-èçìċíċíè˙ èíòċëèíü˙ĉà,
-íàïèìċ \cs{usepackage}\x\csoarg{one\-half\-spacing}\x\csmarg{set\-space}
-ñîçäàñò äîêóìċíò, àñïċ÷àòàííûé ñ~ïîëóòîíûì èíòċëèíü˙ĉċì.}
-
-% If the \package{setspace} package is used in conjunction with \thispackage,
-% the caption will be typeset with single spacing as default. This can be changed
-% by specifying either |font=|\x|one|\-|half|\-|spacing|,
-% |font=|\x|double|\-|spacing|, or |font={stretch=|\x\meta{amount}|}|.
-% \See{also \Ref{fonts}}
-Ċñëè ïàêċò \package{setspace} èñïîëüçóċòñ˙ âìċñòċ ñ~äàííûì ïàêċòîì,
-ïîäïèñü áóäċò íàïċ÷àòàíà ñ~îäèíàíûì èíòċëèíü˙ĉċì. Ŭòî ìîĉíî ïċċîïċäċëèòü,
-çàäàâ ëèáî |font=onehalfspacing|, |font=doublespacing|, ëèáî
-|font={stretch=|\meta{amount}|}|. \See{òàêĉċ \Ref{fonts}}
-
-\pagebreak[3]
-\subsection{Ïàêċò sidecap}
-\label{sidecap}
-\packagedescription{%
-% The \package{sidecap} package\cite{sidecap} offers the floating environments
-% \texttt{SC\-figure} and \texttt{SC\-table} which are like usual figures
-% and tables but the caption will be put \emph{beside} the contents.}
-Ïàêċò \package{sidecap}\cite{sidecap} ïċäëààċò îêóĉċíè˙ ôëîòîâ
-|SCfigure| è~|SCtable|, êîòîûċ ˙âë˙ŝòñ˙ òċìè ĉċ èñóíêàìè è~òàáëèöàìè,
-íî ïîäïèñè ïîìċùàŝòñ˙ \emph{ñáîêó} ñîäċĉèìîî.}
-
-% If you want to setup special options for the |SCfigure| and |SCtable|
-% environments you can use
-Ċñëè âàì íóĉíî çàäàòü íàñòîéêè äë˙ îêóĉċíèé |SCfigure| è~|SCtable|
-âû ìîĉċòċ çàäàòü
-\begin{quote}
- |\captionsetup[SCfigure]|\marg{options}\quad\emph{and}\\
- |\captionsetup[SCtable]|\marg{options}\quad.
-\end{quote}
-% These options will be executed additionally to the regular ones for
-% |figure| or |table|.
-Ŭòè íàñòîéêè áóäóò äîáàâëċíû ê~îñíîâíûì íàñòîéêàì
-|figure| èëè |table|.\par
-
-\pagebreak[3]
-\NEWfeature{v3.1}
-% Furthermore |\Declare|\-|Caption|\-|Type|\marg{name} will also define
-% an environment called |SC|\meta{name} which behaves like |SC|\-|figure| and
-% |SC|\-|table|.
-Ïîìèìî ŭòîî êîìàíäà \cs{DeclareCaptionType}\marg{name} ìîĉċò îïċäċëèòü
-îêóĉċíèċ |SC|\meta{name}, êîòîîċ àáîòàċò àíàëîè÷íî |SCfigure| è~|SCtable|.
-
-\pagebreak[3]
-\begin{Note}
-% The \package{sidecap} package offers its own options for justification.
-% If set, they will override the one specified with the caption option
-% |jus|\-|ti|\-|fi|\-|ca|\-|tion=| for captions beside their contents.
-Ïàêċò \package{sidecap} ïċäëààċò îïöèè äë˙ âûêëŝ÷êè ïîäïèñċé.
-È~ċñëè îíè çàäàíû, òî îíè ïċċîïċäċë˙ò íàñòîéêè êëŝ÷à
-|justification=| äë˙ ïîäïèñċé ñòî˙ùèġ ñáîêó.
-\end{Note}
-
-\begin{Note}
-% The |margin| resp.~|width| setting will not be used for these figures and tables,
-% unless you set it explicit with |\caption|\-|setup[SC|\-|figure]{|\ldots|}|
-% or |\caption|\-|setup[SC|\-|table]{|\ldots|}|.
-Íàñòîéêè êëŝ÷ċé |margin| è~|width| íċ èñïîëüçóŝòñ˙ äë˙ ŭòèġ èñóíêîâ è~òàáëèö,
-òîëüêî ċñëè âû íċ çàäàäèòċ ñòîî |\captionsetup|\x|[SCfigure]|\x|{|\ldots|}|
-èëè |\captionsetup|\x|[SCtable]|\x|{|\ldots|}|.
-\end{Note}
-
-\medskip
-
-\begin{Annotation*}
-% Instead of using the \package{sidecap} package you can also use the more
-% powerful and flexible \package{floatrow} package\cite{floatrow} for typesetting
-% captions beside the contents.
-Âìċñòî èñïîëüçîâàíè˙ ïàêċòà \package{sidecap} âû ìîĉċòċ âîñïîëüçîâàòüñ˙
-ïàêċòîì \package{floatrow}\cite{floatrow} äë˙ àçìċùċíè˙ ïîäïèñċé ñáîêó ôëîòîâ.
-\end{Annotation*}
-
-\pagebreak[3]
-% \subsubsection*{Undocumented features}
-% The \package{sidecap} package \version{1.6} has some undocumented package
-% options and commands which allow further customization of the side-captions:
-\subsubsection*{Íċäîêóìċíòèîâàííûċ îñîáċííîñòè}
-Ïàêċò \package{sidecap} âċñèè \version{1.6} èìċċò íċêîòîûċ íċäîêóìċíòèîâàííûċ
-îïöèè è~êîìàíäû êîòîûċ ïîçâîë˙ŝò çàäàòü äîïîëíèòċëüíûċ íàñòîéêè:
-
-\pagebreak[3]
-\DescribeMacro{margincaption}
-% The package option
-Îïöè˙ ïàêċòà
-\begin{quote}
- |margincaption|\qquad{\small(e.g.~|\usepackage[margincaption]{sidecap}|)}
-\end{quote}
-% causes all side-captions to be placed into the margin.
-ïîçâîë˙ċò ïîìċñòèòü âñċ ïîäïèñè ñáîêó íà ïîëċ.
-
-\pagebreak[3]
-\DescribeMacro{\sidecaptionvpos}
-% The command
-Êîìàíäà
-\begin{quote}
- |\sidecaptionvpos|\marg{float type}\marg{pos}
-\end{quote}
-% sets the vertical position of the side-caption. \meta{pos} can be either `|t|'
-% (for top alignment), `|b|' (for bottom alignment), or `|c|' (for center alignment).
-% The default setting for |table| is `|t|', for |figure| and all other ones
-% defined with |\Declare|\-|Caption|\-|Type| it's `|b|'.
-çàäà¸ò âċòèêàëüíîċ ïîëîĉċíèċ ïîäïèñè. Àóìċíò \meta{pos} ìîĉċò áûòü ëèáî `|t|'
-(äë˙ âûàâíèâàíè˙ ïî âċġó), `|b|' (äë˙ âûàâíèâàíè˙ ïî íèçó), èëè `|c|'
-(äë˙ âûàâíèâàíè˙ ïî öċíòó).
-Çíà÷ċíèċ ïî óìîë÷àíèŝ äë˙ òàáëèö, |table|, \cdash--- `|t|',
-äë˙ èñóíêîâ, |figure|, è~âñċġ äóèġ îêóĉċíèé, îïċäċë¸ííûġ
-ñ~ïîìîùüŝ |\Declare|\-|Caption|\-|Type| \cdash--- `|b|'.
-
-\pagebreak[3]
-\subsection{Ïàêċò subfigure}
-\label{subfigure}
-\packagedescription{%
-% The \package{subfigure} package\cite{subfigure} provides support for small or
-% `sub' figures and tables within a single figure or table environment.
-% This package is obsolete, new users should use \package{subfig} instead.}
-Ïàêċò \package{subfigure}\cite{subfigure} ïċäëààċò ïîääċĉêó äë˙ ÷àñòċé ôëîòîâ (ïîäôëîòîâ)
-âíóòè îäíîî îêóĉċíè˙ |figure| èëè |table|.
-Ŭòîò ïàêċò ˙âë˙ċòñ˙ óñòàċâĝèì, íîâûċ ïîëüçîâàòċë˙ì ċêîìċíäóċòñ˙ ïàêċò \package{subfig}.}
-
-% Since the \package{subfigure} package is obsolete it will only be supported in
-% a way that old documents (which have used \thispackage\ \version{1.x} during
-% development) should still compile as expected.
-Ïîñêîëüêó ïàêċò \package{subfigure} óñòàċâĝèé, îí ïîääċĉèâàċòñ˙ è~êîìïèëèóċòñ˙ òîëüêî â~ñòàûġ äîêóìċíòàġ
-(èñïîëüçóŝùèġ \thispackage\ \version{1.x}).
-
-% Please use the \package{subfig} package instead with supports \thispackage\
-% \version{3.x}.
-Âìċñòî ŭòîî èñïîëüçóéòċ, ïîĉàëóéñòà, ïàêċò \package{subfig}; ċî ïîääċĉèâàċò \thispackage\
-\version{3.x}.
-
-% \See{the \package{subfig} package\cite{subfig} documentation for details.}
-\See{äîêóìċíòàöèŝ ïàêċòà \package{subfig}\cite{subfig}.}
-
-\pagebreak[3]
-\subsection{Ïàêċòû supertabular è~xtab}
-\label{supertabular}
-\packagedescription{%
-% The \package{supertabular}\cite{supertabular} and \package{xtab}\cite{xtab}
-% packages offer an environment which can span multiple pages and is quite
-% similar to the \texttt{long\-table} environment provided by the
-% \package{longtable} package\cite{longtable}.
-% For a detailed discussion about the differences between these powerful
-% packages please take a look at The \LaTeX\ Companion\cite{TLC2}.}
-Ïàêċòû \package{supertabular}\cite{supertabular} è~\package{xtab}\cite{xtab}
-ïċäëààŝò îêóĉċíèċ,
-àíàëîè÷íîċ \texttt{long\-table}, (ïàêċò \package{longtable}\cite{longtable}),
-êîòîîċ ìîĉċò àçáèâàòüñ˙ íà íċñêîëüêî ñòàíèö.
-Äċòàëüíûċ îáú˙ñíċíè˙ àçëè÷èé ŭòèġ ìîùíûġ ïàêċòîâ
-ñì.~â~\LaTeX\ Companion\cite{TLC2}.}
-
-% If you want to setup special options for the |super|\-|tabular|
-% resp.~|x|\-|tabular| environment you can use
-Ċñëè âàì íóĉíî çàäàòü ñïċöèàëüíûċ íàñòîéêè äë˙ îêóĉċíèé |super|\-|tabular|
-èëè~|xtabular| âû ìîĉċòċ çàïèñàòü
-\begin{quote}
- |\captionsetup[supertabular]|\marg{options}\quad\emph{è, ñîîòâċòñòâċííî}\\
- |\captionsetup[xtabular]|\marg{options}\quad.
-\end{quote}
-% These options will be executed additionally to the regular ones for
-% |table|.
-Ŭòè íàñòîéêè áóäóò äîáàâëċíû ê~îñíîâíûì íàñòîéêàì
-|figure| èëè |table|.\par
-
-\begin{Note}
-% |\Continued|\-|Float| does not work for |super|\-|tabular|s and |x|\-|tabular|s.
-Êîìàíäà |\Continued|\-|Float| íċ àáîòàċò ñ~|super|\-|tabular| è~|xtabular|.
-\end{Note}
-
-\pagebreak[3]
-\subsection{Ïàêċò threeparttable}
-\label{threeparttable}
-\packagedescription{%
-% The \package{threeparttable} package\cite{threeparttable} provides a scheme
-% for tables that have a structured note section after the table contents and
-% the caption.
-% This scheme provides an answer to the old problem of putting footnotes in
-% tables---by making footnotes entirely unnecessary.}
-Ïàêċò \package{threeparttable}\cite{threeparttable}
-ïċäëààċò ñġċìó äë˙ òàáëèö, èìċŝùèġ ñòóêòóèîâàííûé àçäċë çàìċ÷àíèé ïîñëċ òàáëè÷íîî ìàòċèàëà
-è~ïîäïèñè.
-Ŭòà ñġċìà ïċäëààċò îòâċò äë˙ ñòàîé ïîáëċìû àçìċùċíè˙ ñíîñîê â~òàáëèöàġ áċç íċîáġîäèìîñòè
-ñîçäàíè˙ ñíîñîê.}
-
-\NEWfeature{v3.1}
-% If you want to setup special options for the |three|\-|part|\-|table| and
-% |measured|\-|figure| environments you can use
-Ċñëè âàì íóĉíî ñîçäàòü ñïċöèàëüíûċ íàñòîéêè äë˙ îêóĉċíèé
-|three|\-|part|\-|table| è~|measured|\-|figure|,
-âû ìîĉċòċ çàäàòü
-\begin{quote}
- |\captionsetup[threeparttable]|\marg{options}\quad\emph{è}\\
- |\captionsetup[measuredfigure]|\marg{options}\quad.
-\end{quote}
-% These options will be executed additionally to the regular ones for
-% |table| or |figure|.
-Ŭòè íàñòîéêè áóäóò äîáàâëċíû ê~îñíîâíûì íàñòîéêàì
-|figure| èëè |table|.\par
-
-\begin{Note}
-% Since the caption will have the same width as the contents here,
-% the |margin| resp.~|width| setting will not be used for these figures and tables,
-% at least unless you set it explicit with
-% |\caption|\-|setup[three|\-|part|\-|table]{|\ldots|}| or
-% |\caption|\-|setup[measured|\-|figure]{|\ldots|}|.
-Ïîñêîëüêó ĝèèíà ïîäïèñè àâíà ĝèèíċ òàáëèöû,
-êëŝ÷è |margin| è~|width| çäċñü íċ èñïîëüçóŝòñ˙ äë˙ èñóíêîâ è~òàáëèö,
-òîëüêî ċñëè âû íċ çàäàäèòċ ñòîî
-|\caption|\-|setup|\x|[threeparttable]|\x|{|\ldots|}|
-èëè |\caption|\-|setup|\x|[measuredfigure]|\x|{|\ldots|}|.
-\end{Note}
-
-\medskip
-
-\begin{Annotation*}
-% Instead of using the \package{threeparttable} package you can
-% also use the \package{floatrow} package\cite{floatrow} for this purpose.
-Âìċñòî ïàêċòà \package{threeparttable} ìîĉíî èñïîëüçîâàòü
-ïàêċò \package{floatrow}\cite{floatrow}.
-\end{Annotation*}
-
-\pagebreak[3]
-\subsection{Ïàêċò wrapfig}
-\label{wrapfig}
-\packagedescription{%
-% Similar to the \package{floatflt}, the \package{picinpar}, and the
-% \package{picins} package the \package{wrapfig} package\cite{wrapfig} offers
-% figures and tables which do not span the full width of a page and are float
-% around by text.
-% For a detailed discussion about the differences between these packages
-% please take a look at The \LaTeX\ Companion\cite{TLC2}.}
-Àíàëîè÷íî ïàêċòàì \package{floatflt}, \package{picinpar} è~%
-\package{picins}, ïàêċò \package{wrapfig}\cite{wrapfig} ïċäëààċò
-îêóĉċíè˙ íċáîëüĝèġ èñóíêîâ è~òàáëèö îáòċêàċìûġ òċêñòîì.
-Çà áîëċċ ïîäîáíîé èíôîìàöèċé î~àçëè÷è˙ġ ïàêċòîâ îáàùàéòċñü
-ê~\LaTeX\ Companion\cite{TLC2}.}
-
-\NEWfeature{v3.1}
-% If you want to setup special options for the |wrap|\-|figure| and
-% |wrap|\-|table| environments you can use
-Ċñëè âàì íóĉíî çàäàòü ñïċöèàëüíûċ íàñòîéêè äë˙ îêóĉċíèé |wrap|\-|figure|
-è~|wrap|\-|table| âû ìîĉċòċ çàäàòü
-\begin{quote}
- |\captionsetup[wrapfigure]|\marg{options}\\
- |\captionsetup[wraptable]|\marg{options}\quad.
-\end{quote}
-% These options will be executed additionally to the regular ones for
-% |figure| or |table|.
-Ŭòè íàñòîéêè áóäóò äîáàâëċíû ê~îñíîâíûì íàñòîéêàì
-|figure| èëè |table|.\par
-
-% Furthermore |\Declare|\-|Caption|\-|Type|\marg{name} will also define
-% an environment called |wrap|\meta{name} which behaves like |wrap|\-|figure|
-% and |wrap|\-|table|.
-Ïîìèìî ŭòîî êîìàíäà |\Declare|\-|Caption|\-|Type|\marg{name} îïċäċëèò
-íîâîċ îêóĉċíèċ |wrap|\meta{name}, êîòîîċ àíàëîè÷íî |wrap|\-|figure| è~|wrap|\-|table|.
-
-\begin{Note}
-% The |margin| resp.~|width| setting will not be used for these figures and
-% tables, unless you set it explicit with
-% |\caption|\-|setup[wrap|\-|figure]{|\ldots|}|
-% or |\caption|\-|setup[wrap|\-|table]{|\ldots|}|.
-Íàñòîéêè êëŝ÷ċé |margin| è~|width| íċ èñïîëüçóŝòñ˙ äë˙ èñóíêîâ è~òàáëèö,
-òîëüêî ċñëè âû íċ çàäàäèòċ ñòîî |\caption|\-|setup|\x|[wrapfigure]{|\ldots|}|
-èëè |\caption|\-|setup|\x|[wraptable]{|\ldots|}|.
-\end{Note}
-
-\begin{Note}
-% If the \package{wrapfig} package should be used in coorperation with the
-% \package{float} package, it needs to be loaded \emph{after} the
-% \package{float} package. Furthermore |\new|\-|float| and |\restyle|\-|float|
-% commands \emph{should} be placed after \emph{both} packages have been loaded.
-Ċñëè ïàêċò \package{wrapfig} äîëĉċí áûòü èñïîëüçîâàí ñîâìċñòíî ñ~ïàêċòîì
-\package{float}, òî ċî íóĉíî çàóçèòü \emph{ïîñëċ} ïàêċòà
-\package{float}. Êîìċ òîî êîìàíäû |\new|\-|float| èëè |\restyle|\-|float|
-\emph{äîëĉíû} áûòü ïîìċùċíû ïîñëċ çàóçêè \emph{îáîèġ} ïàêċòîâ.
-\end{Note}
-
-% --------------------------------------------------------------------------- %
-
-\clearpage
-% \section{Further reading}
-\section{ċêîìċíäóċìà˙ ëèòċàòóà}
-
-% I recommend the following documents for further reading:
-ß ċêîìċíäóŝ ñëċäóŝùèċ äîêóìċíòû äë˙ äàëüíċéĝċî ÷òċíè˙:
-
-\begin{itemize}
-\item
-% The \TeX\ FAQ -- Frequently asked questions about \TeX\ and \LaTeX:
- The \TeX\ FAQ -- ×àÂî ïî \TeX'ó è~\LaTeX'ó:
- \begin{quote}\url{http://faq.tug.org/}\end{quote}
-
-\item
- A French FAQ can be found at
- \begin{quote}\url{http://www.grappa.univ-lille3.fr/FAQ-LaTeX/}\end{quote}
-
-\item
- ``What is a minimal working example?'' from Christian Faulhammer and Ulrich Schwarz:
- \begin{quote}\url{http://www.minimalbeispiel.de/mini-en.html}\end{quote}
-
-\item
-%^^A \textsf{epslatex} from Keith Reckdahl contains many tips around
-%^^A including graphics in \LaTeXe\ documents.
-%^^A You will find this document in the directory
- \textsf{epslatex} (Keith Reckdahl) ñîäċĉèò ìíîĉċñòâî ïîäñêàçîê
- êàê àçìċñòèòü èëëŝñòàöèîííûé ìàòċèàë â~äîêóìċíòàöèè ñîçäàííîé â~\LaTeXe.
- Âû íàéäċòċ ŭòîò ôàéë â~äèċêòîèè
- \begin{quote}\url{http://mirror.ctan.org/info/epslatex/}\end{quote}
-\end{itemize}
-
-% --------------------------------------------------------------------------- %
-
-\pagebreak[3]
-% \section{Thanks}
-\section{Áëàîäàíîñòè}
-
-{\fontencoding{T1}%\fontfamily{ptm}
-\selectfont
-I would like to thank Katja Melzner,
-Steven D. Cochran, Frank Mittelbach, Olga Lapko,
-David Carlisle, Carsten Heinz, and Keith Reckdahl.
-Thanks a lot for all your help, ideas, patience, spirit, and support!
-
-Also I would like to thank
-Harald Harders,
-Peter L\"offler,
-Peng Yu,
-Alexander Zimmermann,
-Matthias Pospiech,
-J\"urgen Wieferink,
-Christoph Bartoschek,
-Uwe St\"ohr,
-Ralf Stubner,
-Geoff Vallis,
-Florian Keiler,
-J\"urgen G\"obel,
-Uwe Siart,
-Sang-Heon Shim,
-Henrik Lundell,
-David Byers,
-William Asquith,
-Prof.~Dr.~Dirk Hoffmann,
-Frank Martini,
-Danie Els,
-and
-Markus Kohm,
-who all helped to make this package a better one.}
-
-% --------------------------------------------------------------------------- %
-
-\clearpage\appendix
-% \section{Alphabetical Reference}
-\section{Àëôàâèòíûé óêàçàòċëü}
-
-%\newenvironment{Warnings}%
-% {\begin{trivlist}%
-% \def\Message{\pagebreak[3]\leftskip=0pt\relax\item[]\color{blue}}%
-% \def\Description{\nopagebreak\par\nopagebreak\color{black}\leftskip=1.5em\nopagebreak}%
-% }%
-% {\color{black}\end{trivlist}}
-\makeatletter
-\newenvironment{Warnings}{%
- \newif\ifMessage
- \def\Message{%
- \ifMessage\end{minipage}\par\vspace\itemsep\pagebreak[3]\fi
- \begin{minipage}{\linewidth}%
- \setlength\parindent{0pt}%
- \setlength\parskip{\smallskipamount}%
- \setlength\leftskip{0pt}%
- \color{blue}%
- \Messagetrue}%
- \def\Description{%
- \par\color{black}\leftskip=1.5em}%
- \def\Or{\@testopt\@Or{èëè}}%
- \def\@Or[##1]{%
- \\{\small\color{black}\hspace{1.5em}\textit{-- ##1 --}}\\}%
-}{%
- \ifMessage\end{minipage}\par\fi
-}
-\makeatother
-
-% \subsection{Options}
-\subsection{Êëŝ÷è (îïöèè)}
-\newcommand\preambleoption{\,%
- \begingroup\def\thefootnote{\fnsymbol{footnote}}%
- \footnotemark[2]%
- \endgroup}
-\newcommand\preambleoptiontext{%
- \begingroup\def\thefootnote{\fnsymbol{footnote}}%
-% \footnotetext[2]{These options are only available in the preamble of the document.}%
- \footnotetext[2]{Ŭòè îïöèè ìîĉíî èñïîëüçîâàòü òîëüêî â~ïċàìáóëċ äîêóìċíòà.}%
- \endgroup}
-
-\newcommand\cell[1]{\tabular[t]{@{}l@{}}#1\endtabular}
-
-\begin{longtable*}{@{}l@{\ }ll@{}}
-% Option & Short description & Section \\
-Êëŝ÷ & Êàòêîċ îïèñàíèċ & àçäċë \\
-\hline\noalign{\vskip2pt}
-\endhead
-% |aboveskip| & sets the skip above caption & \ref{skips} \\
-|aboveskip| & çàäà¸ò îòáèâêó íàä ïîäïèñüŝ & \ref{skips} \\
-% |belowskip| & sets the skip below caption & \ref{skips} \\
-|belowskip| & çàäà¸ò îòáèâêó ïîä ïîäïèñüŝ & \ref{skips} \\
-% |compatibility|\preambleoption & force (non-)compatibility & \ref{classes} \\
-|compatibility|\preambleoption & ôîñèîâàòü (íċ)ñîâìċñòèìîñòü & \ref{compatibility} \\
-%|config| & & \ref{x} \\
-% |figurename|\preambleoption & sets the figure name & \ref{names} \\
-|figurename|\preambleoption & çàäàíèċ èìċíè èñóíêà â~ìċòêċ & \ref{names} \\
-% |figureposition|\preambleoption & gives a hint about the figure caption position & \ref{skips} \\
-|figureposition|\preambleoption & äà¸ò ïîäñêàçêó î~àçìċùċíèè ïîçèöèè ïîäïèñè èñóíêà & \ref{skips} \\
-% |figurewithin|\preambleoption & sets the figure ``within'' counter & \ref{numbering} \\
-|figurewithin|\preambleoption & \cell{çàäà¸ò ñ÷¸ò÷èê àçäċëà, êîòîîìó ïîä÷èí˙ċòñ˙\\ íóìċàöè˙ èñóíêîâ}
- & \ref{numbering} \\
-% |font|(|+|) & sets the font & \ref{fonts} \\
-|font|(|+|) & çàäà¸ò ĝèôò & \ref{fonts} \\
-% |format| & sets the format & \ref{formats} \\
-|format| & çàäà¸ò ôîìàò & \ref{formats} \\
-\iffalse
-% |FPlist| & to where the list entry of a FPfigure should link? & \ref{fltpage} \\
-|FPlist| & ê~÷ċìó ïèâ˙çûâàòü FPfigure â~Ñïèñêċ ôëîòîâ? & \ref{fltpage} \\
-% |FPref| & to where a |\ref| to a FPfigure should link? & \ref{fltpage} \\
-|FPref| & ê~÷ċìó ïèâ˙çûâàòü |\ref| äë˙ FPfigure? & \ref{fltpage} \\
-\fi
-% |hangindent| & sets the hang indention & \ref{margins} \\
-|hangindent| & \cell{çàäà¸ò âò˙ĉêó [íà âċñó;\\ ñîîòâċòñòâóċò êîìàíäċ \cs{hangindent}]} & \ref{margins} \\
-% |hypcap| & select `hypcap' feature & \ref{hyperref} \\
-|hypcap| & îïċäċë˙ċò àáîòó ïàêċòà `hypcap' & \ref{hyperref} \\
-% |hypcapspace| & sets the distance between hyperlink \& contents & \ref{hyperref} \\
-|hypcapspace| & \cell{çàäà¸ò àññòî˙íèċ ìċĉäó èïċññûëêîé\\ è~ñîäċĉèìûì
-îáúċêòà} & \ref{hyperref} \\
-% |indention| & sets the indention & \ref{margins} \\
-|indention| & çàäà¸ò âò˙ĉêó & \ref{margins} \\
-% |justification| & sets the justification & \ref{justification} \\
-|justification| & çàäà¸ò âûêëŝ÷êó & \ref{justification} \\
-% |labelfont|(|+|) & sets the font of the caption label & \ref{fonts} \\
-|labelfont|(|+|) & çàäà¸ò ĝèôò äë˙ ìċòêè ôëîòà & \ref{fonts} \\
-% |labelformat| & sets the format of the caption label & \ref{formats} \\
-|labelformat| & \cell{çàäà¸ò ôîìàò [îôîìëċíèċ] íóìċàöèîííîî\\ çàîëîâêà} & \ref{formats} \\
-% |labelsep| & sets the label separator & \ref{formats} \\
-|labelsep| & \cell{çàäà¸ò àçäċëèòċëü ìċĉäó íóìċàöèîííûì\\ çàîëîâêîì
-è~òċêñòîì ïîäïèñè} & \ref{formats} \\
-% |labelseparator| & sets the label separator & \ref{formats} \\
-|labelseparator| & \cell{çàäà¸ò àçäċëèòċëü ìċĉäó íóìċàöèîííûì\\ çàîëîâêîì
-è~òċêñòîì ïîäïèñè} & \ref{formats} \\
-% |list| & switches the entries in the `List of' on or off & \ref{lists} \\
-|list| & \cell{îïċäċë˙ċò (âêëŝ÷àċò/îòêëŝ÷àċò) âûâîä ïîäïèñċé\\ â~Ñïèñêċ ôëîòîâ} & \ref{lists} \\
-% |listformat| & sets the `List of' entry format & \ref{lists} \\
-% |listfigurename| & sets the `List of Figure' name & \ref{names} \\
-|listfigurename| & çàäà¸ò çàîëîâîê äë˙ Ñïèñêà èñóíêîâ & \ref{names} \\
-|listformat| & îïċäċë˙ċò ôîìàò äë˙ âûâîäà â~Ñïèñêċ ôëîòîâ & \ref{lists} \\
-% |listtablename| & sets the `List of Tables' name & \ref{names} \\
-|listtablename| & çàäà¸ò çàîëîâîê äë˙ Ñïèñêà òàáëèö & \ref{names} \\
-% |margin| & sets the margin & \ref{margins} \\
-|margin| & çàäà¸ò ïîë˙ âîêó ïîäïèñè & \ref{margins} \\
-% |margin*| & sets the margin, but only if no width is set & \ref{margins} \\
-|margin*| & \cell{çàäà¸ò ïîë˙, â~ñëó÷àċ, ċñëè ĝèèíà ïîäïèñè\\ íċ çàäàíà} & \ref{margins} \\
-% |maxmargin| & sets the max. margin & \ref{margins} \\
-|maxmargin| & çàäà¸ò ìàêñèìàëüíóŝ âċëè÷èíó ïîë˙ & \ref{margins} \\
-% |minmargin| & sets the min. margin & \ref{margins} \\
-|minmargin| & çàäà¸ò ìèíèìàëüíóŝ âċëè÷èíó ïîë˙ & \ref{margins} \\
-%| name| & sets the name of the current environment & \ref{names} \\
-|name| & çàäà¸ò èì˙ íîâîî îêóĉċíè˙ & \ref{names} \\
-% |oneside| & selects the one-side mode & \ref{margins} \\
-|oneside| & çàäà¸ò îäíîñòîîííŝŝ ïċ÷àòü äîêóìċíòà & \ref{margins} \\
-% |options| & executes the given option list & \ref{x} \\
-|options| & âêëŝ÷àċò äàííûé ñïèñîê îïöèé & \\
-% |parindent| & sets the paragraph indention & \ref{margins} \\
-|parindent| & çàäà¸ò àáçàöíûé îòñòóï & \ref{margins} \\
-% |parskip| & sets the skip between paragraphs & \ref{margins} \\
-|parskip| & çàäà¸ò îòáèâêó ìċĉäó àáçàöàìè & \ref{margins} \\
-% |position| & gives a hint about the caption position & \ref{skips} \\
-|position| & äà¸ò ïîäñêàçêó î~àçìċùċíèè ïîäïèñè & \ref{skips} \\
-% |singlelinecheck| & switches the single-line-check on or off & \ref{justification} \\
-|singlelinecheck| & âêëŝ÷àċò êîíòîëü [îôîìëċíè˙] îäíîñòî÷íûġ ïîäïèñċé & \ref{justification} \\
-%|size| & sets the size of font & \ref{x} \\
-% |skip| & sets the skip between content \& caption & \ref{skips} \\
-|skip| & \cell{çàäà¸ò îòáèâêó ìċĉäó ñîäċĉèìûì ôëîòà è~ïîäïèñè} & \ref{skips} \\
-% |strut| & switches the usage of |\strut|s on or off & \ref{formats} \\
-|strut| & âêëŝ÷àċò èñïîëüçîâàíèċ êîìàíäû àñïîêè |\strut| & \ref{formats} \\
-% |style| & sets the caption style & \ref{style} \\
-|style| & çàäà¸ò ñòèëü îôîìëċíè˙ ïîäïèñè & \ref{style} \\
-%|style*| & sets the caption style & \ref{style} \\
-% |subtype| & sets the sub-caption type & \phantom{t}--~\footnotemark \\
-|subtype| & çàäà¸ò âûâîä ïîäïèñè ÷àñòè ôëîòà & \phantom{t}--~\footnotemark \\
-% |tablename|\preambleoption & sets the table name & \ref{names} \\
-|tablename|\preambleoption & çàäà¸ò èì˙ òàáëèöû & \ref{names} \\
-% |tableposition|\preambleoption & gives a hint about the table caption position & \ref{skips} \\
-|tableposition|\preambleoption & \cell{äà¸ò ïîäñêàçêó î~ïîëîĉċíèè ïîäïèñè òàáëèöû
- \\(òàáëè÷íîî çàîëîâêà)} & \ref{skips} \\
-% |tablewithin|\preambleoption & sets the table ``within'' counter & \ref{numbering} \\
-|tablewithin|\preambleoption & \cell{çàäà¸ò ñ÷¸ò÷èê àçäċëà, êîòîîìó ïîä÷èí˙ċòñ˙\\ íóìċàöè˙ òàáëèö}
- & \ref{numbering} \\
-% |textfont|(|+|) & sets the font of the caption text & \ref{fonts} \\
-|textfont|(|+|) & çàäà¸ò ĝèôò äë˙ òċêñòà ïîäïèñè & \ref{fonts} \\
-% |textformat| & sets the format of the caption text & \ref{formats} \\
-|textformat| & çàäà¸ò ôîìàò òċêñòà ïîäïèñè & \ref{formats} \\
-% |twoside| & selects the two-side mode & \ref{margins} \\
-|twoside| & çàäà¸ò äâóñòîîííŝŝ ïċ÷àòü äîêóìċíòà & \ref{margins} \\
-% |type| & sets the caption type \& places a hyperlink anchor & \ref{types} \\
-|type| & çàäà¸ò òèï ïîäïèñè è~ïîìċùàċò íà÷àëî èïċññûëêè & \ref{types} \\
-% |type*| & sets the caption type only & \ref{types} \\
-|type*| & çàäà¸ò òîëüêî òèï ïîäïèñè & \ref{types} \\
-% |width| & sets a fixed caption width & \ref{margins} \\
-|width| & çàäà¸ò ôèêñèîâàííóŝ ĝèèíó ïîäïèñè & \ref{margins} \\
-\end{longtable*}
-\preambleoptiontext
-% \footnotetext{The option \opt{subtype} is explained in the
-% \package{subcaption} package documentation.}
-\footnotetext{Çíà÷ċíèċ îïöèè \texttt{subtype} îáú˙ñí˙ċòñ˙ â~äîêóìċíòàöèè ê~ïàêċòó
- \package{subcaption}.}
-
-\nopagebreak\parbox[t]{\linewidth}{%
-\begin{Note*}
-% Obsolete options are not listed here. See
-% \Ref{caption1} and
-% \Ref{caption2} for a list of these options.}
- Óñòàċâĝèċ îïöèè çäċñü íċ ïċċ÷èñë˙ŝòñ˙. Çà ñïèñêîì ŭòèġ îïöèé îáàòèòċñü ê~äîêóìċíòàöèè
- \Ref{caption1} è~\Ref{caption2}.
-\end{Note*}}
-
-% \subsection{Commands}
-\subsection{Êîìàíäû}
-
-\begin{longtable*}{lll}
-Êîìàíäà & & àçäċë \\
-\hline
-\endhead
-|\abovecaptionskip| & & \ref{skips} \\
-%|\AtBeginCaption| & & \ref{hooks} \\
-%|\AtEndCaption| & & \ref{hooks} \\
-|\belowcaptionskip| & & \ref{skips} \\
-|\caption| & & \ref{caption} \\
-|\caption*| & & \ref{caption} \\
-|\captionlistentry| & & \ref{captionlistentry} \\
-|\captionof| & & \ref{caption} \\
-|\captionof*| & & \ref{caption} \\
-|\captionsetup| & & \ref{captionsetup} \\
-|\captionsetup*| & & \ref{captionsetup} \\
-|\centerfirst| & & \ref{justification} \\
-|\centerlast| & & \ref{justification} \\
-|\clearcaptionsetup| & & \ref{captionsetup} \\
-|\clearcaptionsetup*| & & \ref{captionsetup} \\
-|\ContinuedFloat| & & \ref{ContinuedFloat} \\
-|\DeclareCaptionFont| & & \ref{declare} \\
-|\DeclareCaptionFormat| & & \ref{declare} \\
-|\DeclareCaptionFormat*| & & \ref{declare} \\
-|\DeclareCaptionJustification| & & \ref{declare} \\
-|\DeclareCaptionLabelFormat| & & \ref{declare} \\
-|\DeclareCaptionLabelSeparator| & & \ref{declare} \\
-|\DeclareCaptionLabelSeparator*| & & \ref{declare} \\
-|\DeclareCaptionListFormat| & & \ref{declare} \\
-|\DeclareCaptionOption| & & \ref{declare} \\
-|\DeclareCaptionStyle| & & \ref{declare} \\
-|\DeclareCaptionSubType| & & --~\footnotemark \\
-|\DeclareCaptionTextFormat| & & \ref{declare} \\
-|\DeclareCaptionType| & & \ref{declare} \\
-|\showcaptionsetup| & & \ref{captionsetup} \\
-\end{longtable*}
-% \footnotetext{\cs{DeclareCaptionSubType} is explained in the
-% \package{subcaption} package documentation.}
-\footnotetext{Êîìàíäà \cs{DeclareCaptionSubType} îïèñàíà
- â~äîêóìċíòàöèè ê~ïàêċòó \package{subcaption}.}
-
-\clearpage
-% \subsection{Warnings}
-\subsection{Ïċäóïċĉäċíè˙}
-
-\begin{Warnings}
-
-\Message
- |\caption outside box or environment.|
-\Or
- |\captionsetup{type=...} outside box or environment.|
-\Or
- |\captionsetup{type*=...} or \captionof outside box|\\
- | or environment.|
-\Description
-% You have placed a |\caption|, |\caption|\-|of|, or
-% |\caption|\-|setup{type=|\x\meta{type}|}| command outside an box, group,
-% or environment.
-% You should not do this since it could cause some bad side-effects.
-% \par\See{\Ref{types} and \Ref{caption}}
- Âû ïîìċñòèëè |\caption|, |\caption|\-|of|, èëè
- |\caption|\-|setup{type=|\x\meta{type}|}| âíċ áîêñà, óïïû
- èëè îêóĉċíè˙.
- Ŭòî ìîĉċò ñîçäàòü ïîáî÷íûċ ŭôôċêòû.
- \par\See{\Ref{types} è~\Ref{caption}}
-
-\Message
- |\caption will not be redefined since it's already|\\
- |redefined by a document class or package which is|\\
- |unknown to the caption package.|
-\Description
-% If \thispackage\ detects that some (unknown) document class or
-% package has enhanced |\caption|, it will not redefine
-% |\caption|, too, since this would simply kill the enhancement.
-% As a result some features, like |\caption*|, |\Continued|\-|Float|,
-% using the optional argument of |\caption|\-|setup|,
-% or the options |list=| and |hypcap=| will not be available.\par
-% If you don't care about the original enhancements but would
-% like to use the full range of features of \thispackage\ instead
-% you can give the unsupported(!) option |compatibility=|\x|false|
-% a try and keep your fingers crossed.
-% (But you will get the next warning instead.)
-% \par\See{\Ref{classes} and \Ref{compatibility}}
- \Thispackage\ îáíàóĉèë, ÷òî èñïîëüçóċòñ˙ êàêîé-ëèáî (íċèçâċñòíûé) êëàññ äîêóìċíòà èëè
- ïàêċò, àñĝèèâĝèé îïċäċëċíèċ |\caption|, ïîŭòîìó äàëüíċéĝċċ ïċċîïċäċëċíèċ
- |\caption| ìîĉċò óíè÷òîĉèòü èñïîëüçóċìûċ íàñòîéêè.
- Â~ċçóëüòàòċ íċêîòîûċ îñîáċííîñòè, òàêèċ êàê |\caption*|, |\ContinuedFloat|,
- èñïîëüçîâàíèċ äîïîëíèòċëüíîî àóìċíòà |\captionsetup|,
- èëè îïöèé |list=| è~|hypcap=| íċâîçìîĉíî.\par
- Ċñëè âàì íċ íóĉíû îèèíàëüíûċ íàñòîéêè è~âàĉíċċ èñïîëüçîâàòü
- ïîëíûé ñïċêò âîçìîĉíîñòċé äàííîî ïàêċòà, âû ìîĉċòċ çàäàòü
- íċïîääċĉèâàċìóŝ(!) îïöèŝ |compatibility=false|
- è~íàäċ˙òüñ˙ íà ëó÷ĝċċ.
- (Íî â~ŭòîì ñëó÷àċ âû ïîëó÷èòċ ñëċäóŝùċċ ïċäóïċĉäċíèċ.)
- \par\See{\Ref{classes}}
-
-\Message
- |Forced redefinition of \caption since the|\\
- |unsupported(!) package option `compatibility=false'|\\
- |was given.|
-\Description
-% Since you were so keen to specify the option |compatibility=|\x|false|
-% \thispackage\ will try to do its best to fulfill your wishes.
-% But depending on the document class or other packages you use that
-% can end in non-functional features or even errors. So keep your
-% fingers crossed!
- Ċñëè âû áûëè ñòîëü îòâàĉíû, çàäàâ îïöèŝ |compatibility=|\x|false|,
- \thispackage\ ïîñòààċòñ˙ ñäċëàòü âñ¸, ÷òî âû ïîòċáóċòċ.
- Íî òàêîċ èñïîëüçîâàíèċ ŭòîî ïàêċòà ñîâìċñòíî ñ~òàêèì ïàêċòîì èëè êëàññîì
- ìîĉċò îòêëŝ÷èòü íċêîòîûċ îñîáċííîñòè èëè ïîîäèòü îĝèáêè.
- Èòàê, íàäċéòċñü íà ëó÷ĝċċ!
- \par\See{\Ref{compatibility}}
-
-\Message
- |Hyperref support is turned off because hyperref has|\\
- |stopped early.|
-\Description
-% If the \package{hyperref} package stops early during loading
-% (because of what-ever reason), the \package{hyperref} support of
-% \thispackage\ will not be available. As a result you could get
-% \package{hyperref} warnings and non-functional hyperlinks to figures
-% or tables.
- Ċñëè çàóçêà ïàêċòà \package{hyperref} çàâċĝèëàñü àíüĝċ ïîëîĉċííîî
- (ïî êàêîé-ëèáî ïè÷èíċ), ïîääċĉêà ïàêċòà \package{hyperref} ïàêċòîì
- \package{caption} áóäċò îòêëŝ÷ċíà. Â~ċçóëüòàòċ âû ïîëó÷èòċ
- \package{hyperref} ïċäóïċĉäċíè˙ è~íċôóíêöèîíèóŝùèċ èïċññûëêè íà èñóíêè
- èëè òàáëèöû.
- \par\See{\Ref{hyperref}\,}
-
-\Message
- |Ignoring optional argument [|\meta{pos}|] of \setcapwidth.|
-\Description
-% \Thispackage\ tries to emulate the \KOMAScript\ commands regarding
-% captions as best as it can. But the optional argument of the
-% \KOMAScript\ command |\setcapwidth| is not (yet) working if you use
-% this package, so if you try to use it anyway, you will get this warning.
- \Thispackage\ ñòààċòñ˙ êîċêòíî ŭìóëèîâàòü êîìàíäû \KOMAScript, îòíîñ˙ùèċñ˙ ê~ïîäïèñ˙ì.
- Íî îïöè˙ êîìàíäû |\setcapwidth| èç
- \KOMAScript\ ċù¸ íċ àáîòàċò âìċñòċ ñ~ŭòèì ïàêċòîì,
- ïîŭòîìó, ċñëè âû ċĝèòċ ċ¸ èñïîëüçîâàòü, âû ïîëó÷èòċ ïċäóïċĉäċíèċ.
- \par\See{\Ref{KOMA}}
-
-\Message
- |Internal Warning: |\meta{warning message}|.|
-\Description
-% You should never see this warning, either you use a package which redefines
-% |figure| or |table| and which is unknown to \thispackage, or this is a bug
-% in \thispackage.
-% Please send me an e-mail reporting this issue.
- Íàäċŝñü âû íċ óâèäèòċ òàêîî ñîîáùċíè˙, îíî ïî˙âèòñ˙ â~ñëó÷àċ ïċċîïċäċëċíèé îêóĉċíèé
- |figure| èëè |table|, íċèçâċñòíûġ äàííîìó ïàêċòó, èëè ŭòî îĝèáêà ñàìîî ïàêċòà
- \package{caption}.
- Ïîĉàëóéñòà, ïèĝëèòċ e-mail ñ~îáàçöîì, äàŝùèì ŭòî ñîîáùċíèċ.
-
-\Message
- |\label before \caption ignored|
-\Description
-% Regarding |\label| the floating environments behave differently than its
-% non-floating counterparts: The internal reference will not be generated
-% at the beginning of the environment, but at |\caption| instead.
-% So you have to place the |\label| command either just \emph{after} or
-% \emph{inside} the caption text (mandatory argument of |\caption|).
- Ìċòêè, |\label|, ê~ïëàâàŝùèì îáúċêòàì àáîòàŝò íċ òàê, êàê íċïëàâàŝùèċ îêóĉċíè˙:
- èíôîìàöè˙ äë˙ ìċòêè ċíċèóċòñ˙ íċ â~íà÷àëċ îêóĉċíè˙,
- à~ïîñëċ êîìàíäû |\caption|.
- Ïîŭòîìó âû äîëĉíû ïîìċñòèòü êîìàíäó |\label| ëèáî \emph{ïîñëċ} òċêñòà
- |\caption| ëèáî âíóòè òċêñòà ïîäïèñè.
-
-\Message
- |Option `|\meta{option}|' was not in list `|\meta{option list}|'.|
-\Description
-% If you try to remove a specific option of an option list,
-% for example with |\clear|\-|caption|\-|setup[po|\-|si|\-|tion]{table}|,
-% and this option can not be found inside the option list, you will
-% get this warning. If this is not because of a typo and you would like
-% to suppress this warning, use |\clear|\-|caption|\-|setup*| instead of
-% |\clear|\-|caption|\-|setup|.
- Ċñëè âû ïîïîáóċòċ óäàëèòü îïöèŝ èç ñïèñêà îïöèé,
- íàïèìċ, |\clear|\-|caption|\-|setup[po|\-|si|\-|tion]{table}|,
- à~ŭòà îïöè˙ íċ áûëà îáíàóĉċíà â~ñïèñêċ, âû ïîëó÷èòċ
- ŭòî ïċäóïċĉäċíèċ. Ċñëè ŭòî ïîèñġîäèò íċ èç-çà îïċ÷àòêè è~âû ġîòèòċ çàïċòèòü ŭòî
- ïċäóïċĉäċíèċ, èñïîëüçóéòċ |\clearcaptionsetup*| âìċñòî
- |\clearcaptionsetup|.
- \par\See{\Ref{captionsetup}}
-
-\Message
- |Option list `|\meta{option list}|' undefined.|
-\Description
-% If you try to remove a specific option of an option list,
-% for example with |\clear|\-|caption|\-|setup[for|\-|mat]{figure}|,
-% and this option list is not defined (yet), you will
-% get this warning. If this is not because of a typo and you would like
-% to suppress this warning, use |\clear|\-|caption|\-|setup*| instead of
-% |\clear|\-|caption|\-|setup|.
- Ċñëè âû ïîïîáóċòċ óäàëèòü îïöèŝ èç ñïèñêà îïöèé,
- íàïèìċ, |\clear|\-|caption|\-|setup[for|\-|mat]{figure}|,
- à~ŭòà îïöè˙ íċ áûëà îáíàóĉċíà â~ñïèñêċ, âû ïîëó÷èòċ
- ŭòî ïċäóïċĉäċíèċ. Ċñëè ŭòî ïîèñġîäèò íċ èç-çà îïċ÷àòêè è~âû ġîòèòċ çàïċòèòü ŭòî
- ïċäóïċĉäċíèċ, èñïîëüçóéòċ |\clearcaptionsetup*| âìċñòî
- |\clearcaptionsetup|.
- \par\See{\Ref{captionsetup}}
-
-\iffalse
-\Message
- |Possibly superfluous \restylefloat{|\meta{type}|} detected.|\\
- |If you think that this warning is unjustified,|\\
- |you can switch it off using the caption package|\\
- |option `restylefloatcheck=off'.|
-\Description
- \TODO
-\fi
-
-\Message
- |`ragged2e' package not loaded, therefore|\\
- |substituting \raggedright for \RaggedRight.|
-\Description
-% The caption option |justification=|\x|RaggedRight| is only full functional
-% if you have the \package{ragged2e} package installed in your \TeX\ system.
-% If not, you will get this warning, and |justification=|\x|RaggedRight|
-% will be treated as |justification=|\x|raggedright|.
- Îïöè˙ |justification=|\x|RaggedRight| áóäċò ôóíêöèîíèîâàòü
- ċñëè ïàêċò \package{ragged2e} èíñòàëëèîâàí â~âàĝċé ñèñòċìċ \TeX{}.
- Ċñëè ïàêċòà íċò, âû ïîëó÷èòċ ïċäóïċĉäċíèċ, è~|justification=|\x|RaggedRight|
- áóäċò àáîòàòü êàê |justification=|\x|raggedright|.
- \par\See{\Ref{justification}}
-
-\Message
- |Obsolete option `ignoreLTcapwidth' ignored.|
-\Description
-% The \package{caption2} package option |ignoreLTcapwidth| will not be
-% emulated by this version of \thispackage, usually you can simply wipe it
-% away.
- Îïöè˙ ïàêċòà \package{caption2}, |ignoreLTcapwidth|, íċ áóäċò ŭìóëèîâàòüñ˙
- äàííîé âċñèċé ïàêċòà, îáû÷íî ŭòî ïċäóïċĉäċíèċ ìîĉíî èíîèîâàòü.
- \par\See{\Ref{caption2} and \Ref{longtable}}
-
-\Message
- |`ragged2e' support has been changed. Rerun to get|\\
- |captions right.|
-\Description
-% The \package{ragged2e} package will only be loaded by \thispackage\ if it
-% is actually needed.
-% At least two \LaTeX\ runs are needed for that, so on the first run you could
-% get this warning.
-% Just compile your document again and this warning should go away.
- Ïàêċò \package{ragged2e} ìîĉċò áûòü çàóĉċí ïàêċòîì \package{caption} ċñëè ŭòî
- äċéñòâèòċëüíî íċîáġîäèìî.
- Ïî êàéíċé ìċċ äë˙ ŭòîî íóĉíû äâċ îáàáîòêè \LaTeX'à, è~ïè ïċâîé îáàáîòêċ
- âû ïîëó÷èòċ ŭòî ñîîáùċíèċ.
- Ñêîìïèëèóéòċ äîêóìċíò âòîîé àç è ïċäóïċĉäċíèċ èñ÷ċçíċò.
- \par\See{\Ref{justification}}
-
-\Message
- |Reference on page |\meta{page no.}| undefined.|
-\Description
-% If you use a |twoside| page layout, \thispackage\ needs to track the
-% page numbers to get the margins right.
-% At least two \LaTeX\ runs are needed for that, on the first run you could get
-% this warning.
-% Just compile your document again and this warning should go away.
- Ċñëè âû èñïîëüçóċòċ îïöèŝ äîêóìċíòà |twoside|, ïàêċòó íóĉíî êîíòîëèîâàòü íóìċàöèŝ ñòàíèö,
- ÷òîáû ïîëó÷èòü âċíî àçìċù¸ííûċ ïîë˙.
- Äë˙ ŭòîî íóĉíû äâċ îáàáîòêè \LaTeX'îì, à~ïè ïċâîé îáàáîòêċ âû ïîëó÷èòċ ŭòî
- ñîîáùċíèċ.
- Ñêîìïèëèóéòċ äîêóìċíò âòîîé àç è ïċäóïċĉäċíèċ èñ÷ċçíċò.
- \par\See{\Ref{margins}}
-
-\Message
- |The caption type was already set to `|\meta{type}|'.|
-\Description
-% This warning informs you about mixed caption options. For example if
-% you use a |\caption|\-|setup{type=|\x|table}| or
-% |\caption|\-|of{table}{|\ldots|}| inside a |figure| environment,
-% this would result in using both option sets for that specific caption,
-% the one for |figure| (specified with |\caption|\-|setup[figure]{|\ldots|}|)
-% and the one for |table| (specified with |\caption|\-|setup[table]{|\ldots|}|)
-% as well.\par
-% {\small(You can suppress this warning by using the starred form
-% |\caption|\-|setup*{type=|\x\ldots|}|.)\par}
- Ŭòî ïċäóïċĉäċíèċ èíôîìèóċò î~ñìċĝċíèè îïöèé. Íàïèìċ,
- âû èñïîëüçóċòċ |\captionof{table}{|\ldots|}| âíóòè îêóĉċíè˙ |figure|,
- ŭòî ˙âë˙ċòñ˙ ċçóëüòàòîì èñïîëüçîâàíè˙ îáċèġ îïöèé äë˙ ŭòîé ñïċöèôè÷ċñêîé ïîäïèñè:
- äë˙ |figure| (çàäàííîé ñ~ïîìîùüŝ |\captionsetup[figure]{|\ldots|}|)
- è~äë˙ |table| (çàäàííîé ñ~ïîìîùüŝ |\captionsetup[table]{|\ldots|}|).\par
- {\small(Âû ìîĉċòċ îòêëŝ÷èòü ŭòî ïċäóïċĉäċíèċ, èñïîëüçó˙ çâ¸çäíóŝ ôîìó êîìàíäû
- |\caption|\-|setup*{type=|\x\ldots|}|.)\par}
- \par\See{\Ref{captionsetup}}
-
-\Message
- |The option `hypcap=true' will be ignored for this|\\
- |particular \caption.|
-\Description
-% \Thispackage\ hasn't found a proper hyperlink anchor for this particular
-% caption, so it decides to ignore the setting |hypcap=|\x|true| (which is set by
-% default). As a result a link to this caption (e.g.~in the List of Figures,
-% or set by |\ref| or |\auto|\-|ref|) will link you to the caption of the figure
-% or table, not to the figure or table itself.\par
- \Thispackage\ íċ íàĝ¸ë ïîäġîä˙ùċċ ìċñòî äë˙ èïċññûëêè äë˙ äàííîé
- ïîäïèñè, ïîŭòîìó ïàêċò ċĝàċò èíîèîâàòü íàñòîéêè |hypcap=|\x|true| (çàäàííûċ
- ïî óìîë÷àíèŝ). Â~ċçóëüòàòċ ññûëêà íà ŭòó ïîäïèñü (íàïèìċ, â~Ñïèñêċ èñóíêîâ,
- èëè â~êîìàíäàġ |\ref| èëè |\autoref|) áóäċò ïèâ˙çàíà ê~ïîäïèñè èñóíêà èëè òàáëèöû,
- à~íċ ê~ñîäċĉèìîìó èñóíêà èëè òàáëèöû.\par
-% This can happen if you use |\caption|\-|of| inside a non-floating environment,
-% but also if you use some package which redefines |figure| or |table|, and
-% which is unknown to \thispackage.\par
- Ŭòî ìîĉċò ïîèçîéòè ċñëè âû èñïîëüçóċòċ êîìàíäó |\captionof| â~íċïëàâàŝùċì îêóĉċíèè,
- à~òàêĉċ ïè èñïîëüçîâàíèè ïàêċòà, ïċċîïċäċë˙ŝùċî îêóĉċíè˙ |figure| èëè |table|,
- íċèçâċñòíîî äàííîìó ïàêċòó.\par
-% If this is ok for you but you want to suppress this warning, simply place a
-% |\caption|\-|setup{hyp|\-|cap=|\x|false}| just before the |\caption| or
-% |\caption|\-|of| command which is causing the warning.
- Ċñëè âàì ŭòî ïîäġîäèò è~âû ġîòèòċ çàïċòèòü ŭòî ïċäóïċĉäċíèċ, çàäàéòċ êîä
- |\caption|\-|setup{hyp|\-|cap=|\x|false}| ïċċä |\caption| èëè
- |\captionof|, êîòîûċ ïîîĉäàŝò ïċäóïċĉäċíèċ.
-% If this is not ok for you, you can set a hyperlink anchor with
-% |\caption|\-|setup{type=|\x\meta{float type}|}| for yourself.
- Ċñëè ĉċ ŭòî âàñ íċ óñòàèâàċò, âû ìîĉċòċ ïîïîáîâàòü çàäàòü èïċññûëêó, ñ~ïîìîùüŝ
- |\caption|\-|setup{type=|\x\meta{float type}|}|.
- \par\See{\Ref{hyperref}}
-
-\Message
- |Unsupported document class (or package) detected,|\\
- |usage of the caption package is not recommended.|
-\Description
-% Either the document class you use is unknown to \thispackage, or you
-% have included a package in your document which redefines |\@make|\-|caption|
-% (which is responsible for typesetting the caption internally) as well.
-% This means \thispackage\ will either change the design of captions in an
-% unwanted way, or it even refuses to work correctly at all.
- Ëèáî êëàññ äîêóìċíòà íċèçâċñòċí äàííîìó ïàêċòó, ëèáî âû
- ïîäêëŝ÷èëè ïàêċò, êîòîûé ïċċîïċäċë˙ċò êîìàíäó |\@makecaption|
- (âíóòċíí˙˙ êîìàíäà, ñîçäàŝùà˙ ïîäïèñè).
- Ŭòî îçíà÷àċò ÷òî \thispackage\ èçìċíèò îôîìëċíèċ ïîäïèñċé â~íċĉċëàòċëüíûì ñïîñîáîì,
- èëè âîîáùċ îòêàĉċòñ˙ àáîòàòü.
- \par\See{\Ref{classes} è~\Ref{compatibility}}
-
-\Message
- |Unused \captionsetup[|\meta{type}|].|
-\Description
-% You have specified options with |\caption|\-|setup[|\meta{type}|]| which are
-% not used later on.
-% This can be because of a typo in \meta{type},
-% or because you use a package which redefines |figure| or |table| and
-% which is unknown to \thispackage, or simply because you don't have any usage
-% of the environment \meta{type} after this line.
-% (If you want to suppress this warning you can use |\caption|\-|setup*|
-% instead of |\caption|\-|setup|.)
- Âû îïċäċëèëè îïöèè |\captionsetup[|\meta{type}|]| êîòîûċ
- ïîçäíċċ íċ èñïîëüçîâàëèñü.
- Ŭòî ìîĉċò ïîèçîéòè èç-çà îïċ÷àòêè â~àóìċíòċ \meta{type},
- èëè ïîòîìó, ÷òî âû èñïîëüçóċòċ ïàêċò, êîòîûé ïċċîïċäċë˙ċò îêóĉċíè˙ |figure| èëè |table|,
- íċèçâċñòíûé äàííîìó ïàêċòó, èëè ïîñòî âû íċ èñïîëüçîâàëè îêóĉċíè˙
- \meta{type} ïîñëċ çàäàííûġ íàñòîċê.\par
- (Ċñëè âû ġîòèòċ çàïċòèòü ŭòî ïċäóïċĉäċíèċ, âû ìîĉċòċ çàäàòü |\captionsetup*| âìċñòî
- |\captionsetup|.)\enlargethispage{\baselineskip}
- \par\See{\Ref{captionsetup}}
-
-\Message
- |Usage of the |\meta{package}| package together with the|\\
- |caption package is strongly not recommended.|\\
- |Instead of loading the |\meta{package}| package you should|\\
- |use the caption package option `tableposition=top'.|
-\Description
-% The package \meta{package} is dealing with caption skips as well.
-% Please decide which one do you actually want to use, \thispackage\ or the
-% other one, using both can lead to wrong skips above or below the caption.
- Ïàêċò \meta{package} èçìċí˙ċò îòáèâêè âîêó ïîäïèñè.
- ċĝèòċ, ÷ċé èíòċôċéñ âû ïċäïî÷ò¸òċ: \thispackage\ èëè
- äóîé ïàêċò, èñïîëüçîâàíèċ îáîèġ ìîĉċò çàäàòü íċâċíûċ îòáèâêè âîêó ïîäïèñè.
- \par\See{\Ref{skips}}
-
-\end{Warnings}
-
-\pagebreak[3]
-%^^A\subsection{Errors}
-\subsection{Ñîîáùċíè˙ îá îĝèáêàġ}
-
-\begin{Warnings}
-
-\Message
- |Argument of \@caption has an extra }.|
-\Or
- |Paragraph ended before \@caption was complete.|
-\Description
-% If you want to typeset something special (like a tabular) as caption,
-% you need to give an optional argument to |\caption| resp.~|\caption|\-|of|
-% for the List of Figures resp.~List of Tables, too, even if you don't
-% use such list.
- Ċñëè âû ġîòèòċ ñîçäàòü ÷òî-òî íċîáû÷íîċ (íàïèìċ òàáëèöó) âíóòè ïîäïèñè,
- âû äîëĉíû çàäàòü äîïîëíèòċëüíûé àóìċíò äë˙ êîìàíäû |\caption| èëè |\captionof|,
- ÷òîáû ïîìċñòèòü òċêñò â~Ñïèñîê èñóíêîâ èëè òàáëèö, äàĉċ ċñëè âû íċ èñïîëüçóċòċ
- òàêîé ñïèñîê.
- \par\See{\Ref{caption}, \Ref{lists}, è~\Ref{hyperref}\,}
-
-\Message
- |\caption outside float.|
-\Description
-% You have placed a |\caption| command outside a floating environment, or
-% a |long|\-|table| or |wrap|\-|figure|.
-% If this is what you want to, please use either
-% |\caption|\-|setup{type=|\x\meta{type}|}| $+$ |\caption| or
-% |\caption|\-|of|.
- Âû ïîìċñòèëè êîìàíäó |\caption| çà ïċäċëàìè îêóĉċíè˙ ôëîòà èëè
- |longtable|. Ċñëè âû äċëàċòċ ŭòî ñîçíàòċëüíî, çàäàéòċ
- |\captionsetup{|\x|type=|\x\meta{type}|}| $+$ |\caption| èëè |\captionof|.
- \par\See{\Ref{caption}}
-
-\Message
- |\ContinuedFloat outside float.|
-\Description
-% You have placed a |\Continued|\-|Float| command outside a floating
-% environment. % or |long|\-|table|.
- Âû ïîìċñòèëè êîìàíäó |\ContinuedFloat| âíċ îêóĉċíè˙ ôëîòà.
-% If this is what you want to, please use the combination
-% |\caption|\-|setup{type=|\x\meta{type}|}| $+$ |\Continued|\-|Float|.\par
- Ċñëè âû ŭòî ñäċëàëè ñîçíàòċëüíî, èñïîëüçóéòċ êîìáèíàöèŝ
- |\captionsetup{|\x|type=|\x\meta{type}|}| $+$ |\ContinuedFloat|.\par
-% Please note that |\Continued|\-|Float| inside a |long|\-|table| is not
-% working, but maybe using the |long|\-|table*| environment, which
-% typesets a |long|\-|table| without incrementing the |table| counter,
-% if sufficient for you.
- Îáàòèòċ âíèìàíèċ, ÷òî èñïîëüçîâàíèċ |\ContinuedFloat| âíóòè |longtable| (ïîêà) íċ àáîòàċò,
- íî, âîçìîĉíî èñïîëüçîâàíèċ îêóĉċíè˙ |longtable*|, êîòîîċ ñîçäà¸ò |longtable|
- áċç óâċëè÷ċíè˙ íóìċàöèè |table|, ċĝèò âàĝè ïîáëċìû.
- \par\See{\Ref{ContinuedFloat} è~\Ref{longtable}}
-
-\Message
- |Continued `|\meta{type}|' after `|\meta{type}|'.|
-\Description
-% Continued figures or tables are not allowed to be interrupted by a floating
-% environment (or |long|\-|table|) of another type,
-% e.g.~a table between a figure and a continued figure.
- Ïîäîëĉàŝùèċñ˙ èñóíêè èëè òàáëèöû íċ äîëĉíû ïċûâàòüñ˙
- îêóĉċíèċì äóîî òèïà (èëè îêóĉċíèċì |long|\-|table|),
- íàïèìċ òàáëèöà ìċĉäó èñóíêîì è~ċî ïîäîëĉċíèċì.
- \par\See{\Ref{ContinuedFloat}}
-
-\Message
- |For a successful cooperation of the `wrapfig' package|\\
- |with the `float' package you should load the `wrapfig'|\\
- |package *(right) after* the `float' package.|
-\Description
-% Please take care of the load order of packages
-% if you use the \package{wrapfig} package in cooperation with the
-% \package{float} package.
- Áóäüòċ âíèìàòċëüíû ñ~ïî˙äêîì çàóçêè ïàêċòîâ, ċñëè âû èñïîëüçóċòċ
- ïàêċò \package{wrapfig} ñîâìċñòíî ñ~ïàêċòîì
- \package{float}.
- \par\See{\Ref{wrapfig}}
-
-\Message
- |For a successful cooperation of the `wrapfig' package|\\
- |with the `float' package you should use at least|\\
- |`wrapfig' version 3.6.|
-\Description
-% Please take care of the version of the \package{wrapfig} package
-% if you use the \package{wrapfig} package in cooperation with the
-% \package{float} package.
- Îáàòèòċ âíèìàíèċ íà âċñèŝ ïàêċòà \package{wrapfig}, êîòîóŝ âû èñïîëüçóċòċ,
- ċñëè âû èñïîëüçóċòċ ŭòîò ïàêċò âìċñòċ ñ~ïàêċòîì
- \package{float}.
- \par\See{\Ref{wrapfig}}
-
-\Message
- |For a successful cooperation we need at least version|\\
- |`|\meta{date}|' of package |\meta{package}|, but only version|\\
- |`|\meta{old-date}|' is available.|
-\Description
-% \Thispackage\ does not work with such an outdated package, please update it
-% to a more recent version, at least to the one requested.
- \Thispackage\ íċ àáîòàċò ñ~äàííîé âċñèċé ïàêċòà, îáíîâèòċ ċî,
- êàê ìèíèìóì äî òċáóċìîé âċñèè.
-
-\Message
- |Internal Error: |\meta{error message}|.|
-\Description
-% You should never see this error.
-% Please send me an e-mail reporting this issue.
- Âû íċ äîëĉíû ïîëó÷àòü òàêîċ ñîîáùċíèċ.
- Ïîĉàëóéñòà, ïèĝëèòċ e-mail ñ~îáàçöîì, äàŝùèì ŭòî ñîîáùċíèċ.
-
-\Message
- |No float type '|\meta{type}|' defined.|
-\Description
-% The \meta{type} you have specified in |\caption|\-|setup{type=|\x\meta{type}|}|,
-% |\caption|\-|of|\marg{type}, or |\Declare|\-|Caption|\-|Sub|\-|Type| is
-% not defined.
-% \meta{type} should be either `\texttt{figure}' or `\texttt{table}', or
-% any other floating environment defined with |\Declare|\-|Caption|\-|Type|,
-% |\new|\-|float| offered by the \package{float} package\cite{float},
-% or |\Declare|\-|New|\-|Float|\-|Type| offered by the \package{floatrow}
-% package\cite{floatrow}.
- Òèï ôëîòà \meta{type}, êîòîûé âû âûáàëè â~êîìàíäàġ |\captionsetup|\x|{type=|\x\meta{type}|}|,
- |\captionof|\x\marg{type} èëè |\Declare|\-|Caption|\-|SubType| íċ îïċäċë¸í.
- Ôëîò \meta{type} äîëĉċí áûòü ëèáî `\texttt{figure}' èëè `\texttt{table}', èëè
- ëŝáîċ äóîċ îêóĉċíèċ îïċäċë¸ííîċ ñ~ïîìîùüŝ êîìàíäû |\Declare|\-|Caption|\-|Type|,
- |\newfloat|, ïċäëààċìîé ïàêċòîì \package{float}\cite{float},
- èëè |\Declare|\-|NewFloat|\-|Type| ïċäëààċìîé ïàêċòîì \package{floatrow}\cite{floatrow}.
-
-\Message
- |Not allowed in longtable* environment.|
-\Description
-% The usage of |\caption| is not allowed inside the |long|\-|table*| environment.
-% Please use either |\caption*| for a caption without label or use the regular
-% |long|\-|table| environment instead.
- Èñïîëüçîâàíèċ êîìàíäû |\caption| íċâîçìîĉíî âíóòè îêóĉċíè˙ |long|\-|table*|.
- Ëèáî èñïîëüçóéòċ êîìàíäó |\caption*| äë˙ ñîçäàíè˙ ïîäïèñè, ëèáî çàìċíèòċ îêóĉċíèċ íà
- |longtable|.
-
-\Message
- |Not available in compatibility mode.|
-\Description
-% The feature required is not supported in compatibility mode.
-% `compatibility mode' means that \thispackage\ has detected either an
-% incompatible document class or an incompatible package which also
-% extents the |\caption| command. Leaving the original extension intact,
-% some features of \thispackage\ are not supported.
- Òċáóċìà˙ íàñòîéêà íċ ïîääċĉèâàċòñ˙ â~ċĉèìċ ñîâìċñòèìîñòè.
- Òċìèí `compatibility mode' (Ğċĉèì ñîâìċñòèìîñòèğ) îçíà÷àċò, ÷òî \thispackage\ îáíàóĉèë
- íċñîâìċñòèìûé êëàññ äîêóìċíòà èëè ïàêċò, êîòîûé ìîäèôèöèóċò
- êîìàíäó |\caption|. Îñòàâèâ îèèíàëüíûċ íàñòîéêè íċòîíóòûìè,
- \thispackage\ îòìċí˙ċò íċêîòîûċ ñâîè íàñòîéêè.
- \par\See{\Ref{compatibility}}
-
-\Message
- |Only one \caption can be placed in this environment.|
-\Description
-% Inside the environments offered by the \package{fltpage} and \package{sidecap}
-% package only \emph{one} caption can be placed. (This is due implementation design.)
- Âíóòè îêóĉċíèé, ïċäëààċìûġ ïàêċòàìè \package{fltpage} è~\package{sidecap}
- ìîĉíî ïîìċñòèòü òîëüêî îäíó ïîäïèñü. (Ŭòî òċáîâàíè˙ îôîìëċíè˙.)
-
-\Message
- |Option clash for package caption.|
-%\Or[but sometimes also]
-\Or[íî èíîäà òàêĉċ]
- |Missing \begin{document}.|
-\Description
-% \Thispackage\ has already been loaded by some other \LaTeX\ package,
-% so you can't do that again specifying different options.
-% A candidate causing this could be the \package{subfig} package; if this is
-% the case, please load \thispackage\ \emph{before} the \package{subfig}
-% package or specify the option |caption=|\x|false| while loading the
-% \package{subfig} package.
-% \par\See{the \package{subfig} package\cite{subfig} documentation}
- \Thispackage\ óĉċ çàóĉċí äóèì ïàêċòîì \LaTeX'à,
- è~íċëüç˙ çàóĉàòü ïàêċò ïîâòîíî, çàäàâ äóèċ îïöèè.
- Ïċâîé ïè÷èíîé âûçâàâĝċé òàêîċ ñîîáùċíèċ ìîĉċò áûòü ïàêċò \package{subfig};
- è~ċñëè ŭòî òàê,
- çàóçèòċ \thispackage\ \emph{äî} ïàêċòà \package{subfig}
- èëè îïċäċëèòċ |caption=|\x|false| ïè çàóçêċ
- \package{subfig}.
- \par\See{äîêóìċíòàöèŝ ïàêċòà \package{subfig}\cite{subfig}}
-
-\Message
- |Paragraph ended before \caption@makecurrent was complete.|
-\Or
- |Paragraph ended before \caption@prepareanchor was complete.|
-\Description
-% If you want to typeset multi-paragraph captions, you need to give an
-% optional argument to |\caption| resp.~|\caption|\-|of| for the List of
-% Figures resp.~List of Tables, too, even if you don't use such list.
-% \par\See{\Ref{caption}, \Ref{lists}, and \Ref{hyperref}\,}
- Ċñëè âàì íóĉíî ñîçäàòü ïîäïèñü èç íċñêîëüêèġ àáçàöċâ, âû äîëĉíû ñîçäàòü
- äîïîëíèòċëüíûé àóìċíò â~êîìàíäàġ |\caption| èëè~|\captionof| äë˙ Ñïèñêà èñóíêîâ èëè
- Ñïèñêà òàáëèöû, äàĉċ ċñëè âû íċ èñïîëüçóċòċ ŭòè ñïèñêè.
- \par\See{\Ref{caption}, \Ref{lists}, è~\Ref{hyperref}\,}
-
-\iffalse % was removed in v3.1b
-\Message
- |Something is going wrong here...|\\
- |For a removal of this problem please consult the|\\
- |caption package documentation, especially the sections|\\
- |about the `float' and the `wrapfig' package.|
-\Description
-% Please take care of the load order of packages
-% if you use the \package{wrapfig} package in cooperation with the
-% \package{float} package. But maybe a different package tried to extent
-% the \package{float} package in a manner which is incompatible to
-% \thispackage!?
-% \par\See{\Ref{float} and \Ref{wrapfig}}
- Îáàòèòċ âíèìàíèċ íà ïî˙äîê çàóĉċííûġ ïàêċòîâ,
- ċñëè âû èñïîëüçóċòċ ïàêċò \package{wrapfig} âìċñòċ ñ~ïàêċòîì
- \package{float}. Íî âîçìîĉíî êàêîé"=òî äóîé ïàêċò ïûòàċòñ˙ àñĝèèòü íàñòîéêè ïàêċòà
- \package{float} íċèçâċñòíûì ïàêċòó \package{caption} ñïîñîáîì!?
- \par\See{\Ref{float} è~\Ref{wrapfig}}
-\fi
-
-\Message
- |Something's wrong--perhaps a missing \caption|\\
- |in the last figure or table.|
-\Description
-% It seems that you have used a |\sub|\-|caption| command (or a different one
-% which has typeset a sub-caption) without a corresponding |\caption| command.
-% This is not supported.
- Âîçìîĉíî âû èñïîëüçîâàëè êîìàíäó |\sub|\-|caption| (èëè äóóŝ êîìàíäó, ñîçäàŝùóŝ
- ïîäïèñü ÷àñòè èñóíêà) áċç ñîîòâċòñòâóŝùċé êîìàíäû |\caption|.
- Ŭòî íċ ïîääċĉèâàċòñ˙.
-
-\Message
- |The option `labelsep=|\meta{name}|' does not work|\\
- |with `format=hang'.|
-\Or
- |The option `labelsep=|\meta{name}|' does not work|\\
- |with \setcaphanging (which is set by default).|
-\Description
-% A caption label separator which contains a |\\| command (like
-% |labelsep=|\x|newline|) can not be combined with a hanging caption format
-% (like |format=|\x|hang|).
-% Please select either another caption label separator
-% (e.g.~|labelsep=|\x|colon|) or another caption format
-% (e.g.~|format=|\x|plain|).
-% \par\See{\Ref{formats} resp.~\Ref{KOMA}}
- àçäċëèòċëü íóìċàöèîííîî çàîëîâêà è~òċêñòà ïîäïèñè, çàäàííûé êàê êîìàíäà |\\| (ò.\,ċ.
- |labelsep=|\x|newline|) íċ ìîĉċò áûòü ñêîìáèíèîâàí ñ~ôîìàòîì ñîçäàŝùèì ñòîêó íà âċñó
- (like |format=|\x|hang|).
- Çàäàéòċ ëèáî äóîé àçäċëèòċëü
- (íàïèìċ~|labelsep=|\x|colon|) ëèáî äóîé ôîìàò ïîäïèñè
- (e.g.~|format=|\x|plain|).
- \par\See{\Ref{formats} èëè~\Ref{KOMA}}
-
-\Message
- |The package option `caption=false' is obsolete.|\\
- |Please pass this option to the subfig package instead|\\
- |and do *not* load the caption package anymore.|
-\Description
-% You have specified the option |caption=|\x|false|. This used to be a workaround
-% for not using the whole \package{caption} package (leaving the caption stuff
-% offered by the document class or other packages intact), but keeping the
-% \package{subfig} package working. This mechanism is obsolete and not offered
-% anymore, please pass this option to the \package{subfig} package instead and
-% do not load \thispackage\ anymore.
-% \par\See{the \package{subfig} package\cite{subfig} documentation}
- Âû çàäàëè îïöèŝ |caption=|\x|false|. Ŭòî èñïîëüçóċòñ˙ äë˙ òîî,
- ÷òîáû íċ èñïîëüçîâàòü ïàêċò \package{caption} öċëèêîì (îñòàâèâ èçìċíċíè˙ êîìàíä
- ïîäïèñċé, ñäċëàííûċ êëàññîì äîêóìċíòà èëè äóèì ïàêċòîì íċòîíóòûìè), íî ïîçâîë˙ċò àáîòàòü
- ïàêċòó \package{subfig}. Ŭòîò ìċġàíèçì óñòàċâĝèé è~áîëċċ íċ ïîääċĉèâàċòñ˙,
- ïîŭòîìó èñïîëüçóéòċ ŭòó îïöèŝ ïè çàóçêċ ïàêċòà \package{subfig} è~íċ çàóĉàéòċ
- \thispackage\ âîâñċ.
- \par\See{äîêóìċíòàöèŝ ïàêċòà \package{subfig}\cite{subfig}}
-
-\Message
- |Undefined boolean value `|\meta{value}|'.|
-\Description
-% You tried to set a boolean option (like |singlelinecheck=| or |hypcap=|)
-% with an improper value. Only |false|, |no|, |off|, |0| or |true|, |yes|,
-% |on|, |1| is allowed here.
- Âû ïûòàëèñü çàäàòü áóëċâ êëŝ÷ (íàïèìċ, |singlelinecheck=| èëè |hypcap=|)
- ñ~íċâċíîé îïöèċé. Òîëüêî |false|, |no|, |off|, |0| èëè |true|, |yes|,
- |on|, |1| äîïóñêàŝòñ˙ â~îïöè˙ġ ŭòèġ êëŝ÷ċé.
-
-\Message
- |Undefined format `|\meta{name}|'.|
-\Description
-% You tried to set a caption format which does not exists.
-% Maybe a typo!?
- Âû ïûòàċòċñü çàäàòü ôîìàò ïîäïèñè, êîòîûé íċ ñóùċñòâóċò.
- Ìîĉċò áûòü ŭòî îïċ÷àòêà!?
- \par\See{\Ref{formats}}
-
-\Message
- |Undefined label format `|\meta{name}|'.|
-\Description
-% You tried to set a caption label format which does not exists.
-% Maybe a typo!?
- Âû ïûòàċòċñü çàóçèòü ôîìàò ìċòêè, êîòîûé íċ ñóùċñòâóċò.
- Ìîĉċò áûòü ŭòî îïċ÷àòêà!?
- \par\See{\Ref{formats}}
-
-\Message
- |Undefined label separator `|\meta{name}|'.|
-\Description
-% You tried to set a caption label separator which does not exists.
-% Maybe a typo!?
- Âû ïûòàċòċñü çàäàòü àçäċëèòċëü, êîòîûé íċ ñóùċñòâóċò.
- Ìîĉċò áûòü ŭòî îïċ÷àòêà!?
- \par\See{\Ref{formats}}
-
-\Message
- |Undefined list format `|\meta{name}|'.|
-\Description
-% You tried to set a caption list-of format which does not exists.
-% Maybe a typo!?
- Âû ïûòàċòċñü çàäàòü ôîìàò âûâîäà äë˙ Ñïèñêà ôëîòîâ, êîòîûé íċ ñóùċñòâóċò.
- Ìîĉċò áûòü ŭòî îïċ÷àòêà!?
- \par\See{\Ref{lists}}
-
-\Message
- |Undefined position `|\meta{name}|'.|
-\Description
-% You tried to set a caption position with an improper value.
-% Maybe a typo!?
- Âû ïûòàċòċñü çàäàòü îïöèŝ àñïîëîĉċíè˙ ïîäïèñè, êîòîà˙ íċ ñóùċñòâóċò.
- Ìîĉċò áûòü ŭòî îïċ÷àòêà!?
- \par\See{\Ref{skips}}
-
-\Message
- |Undefined style `|\meta{name}|'.|
-\Description
-% You tried to set a caption style which does not exists.
-% Maybe a typo!?
- Âû ïûòàċòċñü çàäàòü ñòèëü ïîäïèñè, êîòîûé íċ ñóùċñòâóċò.
- Ìîĉċò áûòü ŭòî îïċ÷àòêà!?
- \par\See{\Ref{style}}
-
-\Message
- |Usage of the `position' option is incompatible|\\
- |to the `|\meta{package}|' package.|
-\Description
-% % (ftcap,nonfloat,topcapt)
-% The given package is dealing with caption skips as well.
-% Please decide which one do you actually want to use: The |position=| option
-% of \thispackage\ or the mechanism of the other one; using both this way
-% would lead to wrong skips above or below the caption and is therefore
-% not supported.
- Äàííûé ïàêċò èçìċí˙ċò îòáèâêè âîêó ïîäïèñè.
- ċĝèòċ, êàêèì ïàêċòîì ÷òî âû ñîáèàċòċñü èñïîëüçîâàòü: êëŝ÷ |position=|
- ïàêċòà \package{caption} èëè ìċġàíèçì äóîî ïàêċòà; èñïîëüçîâàíèċ îáîèġ ïàêċòîâ
- ìîĉċò ïîîäèòü íċâċíûċ îòáèâêè ñâċġó èëè ñíèçó ïîäïèñè è~ñîîòâċòñòâċííî íċ ïîääċĉèâàċòñ˙.
- \par\See{\Ref{skips}}
-
-\Message
- |Undefined text format `|\meta{name}|'.|
-\Description
-% You tried to set a caption text format which does not exists.
-% Maybe a typo!?
- Âû ïûòàċòċñü çàäàòü ôîìàò òċêñòà ïîäïèñè, êîòîûé íċ ñóùċñòâóċò.
- Ìîĉċò áûòü ŭòî îïċ÷àòêà!?
- \par\See{\Ref{formats}}
-
-\Message
- |You can't use both, the (obsolete) caption2 *and*|\\
- |the (current) caption package.|
-\Description
-% This error message says it all, you simply can't do that.
-% Please use only \thispackage.
- Ŭòî ñîîáùċíèċ îá îĝèáêċ ñêàçàëî óĉċ âñ¸, è~âàì ïîñòî íċëüç˙ ŭòî äċëàòü
- [èñïîëüçîâàòü ïàêċòû \package{caption} è~\package{caption}2].
- Èñïîëüçóéòċ òîëüêî \thispackage.
- \par\See{\Ref{caption2}}
-
-
-\end{Warnings}
-
-% --------------------------------------------------------------------------- %
-
-\clearpage
-% \section{Version history}
-\section{Èñòîè˙ ñîçäàíè˙ âċñèé}
-\label{history}
-
-% The version $1.0$ was written in 1994 and was offering a handful of options
-% to customize the look \& feel of the captions.
-% Furthermore this version already supported the \package{rotating} and
-% \package{subfigure} packages.
-% Version $1.1$ introduced the |center|\-|last| option;
-% version $1.2$ added the support of the \package{float} package.
-% Version $1,3$ offered a better support of the \package{subfigure} package,
-% while version $1.4$ came with the new option |nooneline|.
-Âċñè˙ $1.0$ áûëà íàïèñàíà â~1994~îäó è~ïċäëààëà ìíîĉċñòâî îïöèé
-äë˙ íàñòîéêè âûâîäà ïîäïèñċé. Êîìċ òîî ŭòà âċñè˙ óĉċ ïîääċĉèâàëà ïàêċòû
-\package{rotating} è~\package{subfigure}.
-Âċñè˙ $1.1$ ïċäëîĉèëà îïöèŝ |center|\-|last|;
-âċñè˙ $1.2$ äîáàâèëà
-ïîääċĉêó ïàêċòà \package{float}.
-Âċñè˙ $1.3$ ïċäëîĉèëà óëó÷ĝċííóŝ ïîääċĉêó ïàêċòà \package{subfigure},
-òîäà êàê âċñè˙ $1.4$ âûĝëà ñ~ïîääċĉêîé îïöèè |nooneline|.
-
-% The \package{caption2} package $2.0$ was an experimental side-version of
-% the regular \package{caption} package. It was made public as beta test version
-% without proper documentation in 1995 because of the strong demand for new
-% features and adaptations to additional packages like the \package{longtable}
-% package.
-% Furthermore it offered a revised support of the \package{subfigure} package.
-% (A version $2.1$ was offered as bugfix-release in 2002.)
-Ïàêċò \package{caption2} âċñèè $2.0$ áûë ŭêñïċèìċíòàëüíîé ïîáî÷íîé âċñèċé
-îñíîâíîî ïàêċòà \package{caption}. Îí áûë îïóáëèêîâàí êàê áċòà-òċñò-âċñè˙
-áċç ñîîòâċòñòâóŝùċé äîêóìċíòàöèè â~1995~îäó, òàê êàê óĉċ íàçċëà íċîáġîäèìîñòü
-â~íîâûġ íàñòîéêàġ äë˙ äóèġ ïàêċòîâ, íàïèìċ äë˙ \package{longtable}.
-Ïîìèìî ŭòîî áûëà ïċäëîĉċíà ïîääċĉêà ïàêċòà \package{subfigure}.
-(Â~âċñèè $2.1$, íàïèñàííîé â~2002~îäó áûëè èñïàâëċíè˙ îĝèáîê.)
-
-% In 2003 I finally found some time, so a new regular release $3.0$
-% of the \package{caption} package could be build in cooperation with
-% Frank Mittelbach and Steven Cochran.
-% It was released in December 2003 and superseded the neglected
-% \package{caption2} package.
-% Main parts were re-written and it provided a complete re-work of
-% the user interface.
-% Furthermore it supported the \package{hyperref}, \package{hypcap},
-% \package{listings}, \package{sidecap}, and \package{supertabular} packages
-% additionally.
-Â~2003~îäó ˙ âñ¸-òàêè íàĝ¸ë íċìíîî âċìċíè, äë˙ íîâîî ċëèçà $3.0$
-ïàêċòà \package{caption}, ñîçäàííîî ñîâìċñòíî
-ñ~Ôàíêîì Ìèòòċëüáàġîì (Frank Mittelbach) è~Ñòèâċíîì Êîêċéíîì (Steven Cochran).
-Ŭòà âċñè˙ áûëà îïóáëèêîâàíà â~äċêàáċ 2003~îäà è~ñòàëà çàìċíîé
-ïàêċòà \package{caption2}.
-Îñíîâíûċ ÷àñòè áûëè ïċċïèñàíû, è~áûë ïċäëîĉċí íîâûé ïîëüçîâàòċëüñêèé èíòċôċéñ.
-Ïîìèìî ŭòîî ïî˙âèëàñü ïîääċĉêà äóèġ ïàêċòîâ \package{hyperref}, \package{hypcap},
-\package{listings}, \package{sidecap} è~\package{supertabular}.
-
-% While all the previous versions were designed for usage with the standard
-% \LaTeX\ document classes \class{article}, \class{report}, and \class{book},
-% the current version $3.1$ released in 2007 also supports the \AmS,
-% \KOMAScript, \NTG, and \SmF\ document classes, and the \class{beamer} class
-% as well.
-Â~òî âċì˙ êàê ïċäûäóùèċ âċñèè áûëè ñîçäàíû äë˙ ñòàíäàòíûġ êëàññîâ
-\LaTeX'à: \class{article}, \class{report} è~\class{book},
-òċêóùà˙ âċñè˙ $3.1$, îïóáëèêîâàííà˙ â~2007~îäó ïċäëààċò òàêĉċ ïîääċĉêó äë˙ ïàêċòîâ \AmS,
-\KOMAScript, {\NTG} è~\SmF, à~òàêĉċ êëàññà \class{beamer}.
-% Furthermore it was adapted to the \package{frenchb} Babel option,
-% the \package{frenchle} \& \package{frenchpro} packages,
-% and the \package{floatflt}, \package{fltpage}, \package{picinpar},
-% \package{picins}, \package{setspace}, \package{threeparttable},
-% and \package{wrapfig} packages.
-Ïîìèìî ŭòîî ñîçäàíà ïîääċĉêà ê~îïöèè \package{frenchb} ïàêċòà \package{babel},
-ïàêċòàì \package{frenchle} è~\package{frenchpro},
-à~òàêĉċ ïàêċòàì \package{floatflt}, \package{fltpage}, \package{picinpar},
-\package{picins}, \package{setspace}, \package{threeparttable}
-è~\package{wrapfig}.
-% New options and commands were introduced as well, among other things
-% |font+|, |figure|\-|within| \& |table|\-|within|,
-% |list| \& |list|\-|format|, |max|\-|margin| \& |min|\-|margin|,
-% |\caption|\-|list|\-|entry|, |\Declare|\-|Caption|\-|List|\-|Format|, and
-% |\Declare|\-|Caption|\-|Type|.
-Áûëè ïċäëîĉċíû íîâûċ êîìàíäû è~êëŝ÷è, íàïèìċ ïîìèìî ïî÷ċî
-|font+|, |figure|\-|within| è~|table|\-|within|,
-|list| è~|list|\-|format|, |max|\-|margin| è~|min|\-|margin|,
-|\caption|\-|list|\-|entry|, |\Declare|\-|Caption|\-|List|\-|Format| è~%
-|\Declare|\-|Caption|\-|Type|.
-% Further benefits are the new compatibility check \see*{\Ref{compatibility}},
-% the new ``hypcap'' feature \see*{\Ref{hyperref}\,}, and the sub-caption
-% feature \see*{\package{subcaption} package documentation}.
-Â~äàëüíċéĝċì áûëè äîáàâëċíû êîíòîëü ñîâìċñòèìîñòè ñ~êëàññàìè è~ïàêċòàìè
-\see*{\Ref{compatibility}},
-ïîääċĉêà îïöèè |hypcap| \see*{\Ref{hyperref}}
-è~âîçìîĉíîñòè ñîçäàíè˙ ïîäïèñċé ÷àñòċé ôëîòîâ
-\see*{äîêóìċíòàöèŝ ê~ïàêċòó \package{subcaption}}.
-
-\clearpage
-% \section{Compatibility to older versions}
-\section{Ñîâìċñòèìîñòü ñî ñòàûìè âċñè˙ìè}
-
-\subsection{Ïàêċò \package{caption} v\texorpdfstring{$1.x$}{1.x}}
-\label{caption1}
-
-% This version of \thispackage\ still supports the old options
-% and commands provided by the version $1.0$ to $1.4$ of this package.
-% So there shouldn't occur any problems compiling old documents, but please
-% don't mix old options and commands with the new ones. This isn't supported
-% and can cause ugly side effects.
-Äàííà˙ âċñè˙ ïàêċòà ïîääċĉèâàċò ñòàûċ îïöèè è~êîìàíäû
-ñîçäàííûċ â~âċñè˙ġ $1.0$--$1.4$ ŭòîî ïàêċòà. Ïîŭòîìó íċ äîëĉíî âîçíèêàòü
-ïîáëċì â~êîìïèë˙öèè ñòàûġ äîêóìċíòîâ, íî, ïîĉàëóéñòà, íċ ñìċĝèâàéòċ
-ñòàûċ îïöèè è~êîìàíäû ñ~íîâûìè. Ŭòî íċ ïîääċĉèâàċòñ˙
-è~ìîĉċò äàòü íċïè˙òíûċ ïîáî÷íûċ ŭôôċêòû.
-
-% Here comes a short oversight of the obsolete options and how
-% they have been replaced within this version of \thispackage:
-Çäċñü äàí êàòêèé îáçî óñòàċâĝèġ îïöèé è~êîìàíä è~÷ċì
-îíè çàìċíċíû â~ñîâċìċííîé âċñèè ïàêċòà \package{caption}:
-
-\begin{center}\small
-\begin{tabular}{ll}
-\package{caption} \version{1.x} & \package{caption} \version{3.x}\\
-\hline
-%\endhead
-|normal| & |format=plain|\\
-|hang| & |format=hang|\\
-|isu| & |format=hang|\\
-|center| & |justification=centering|\\
-|centerlast| & |justification=centerlast|\\
-|nooneline| & |singlelinecheck=off|\\
-|scriptsize| & |font=scriptsize|\\
-|footnotesize| & |font=footnotesize|\\
-|small| & |font=small|\\
-|normalsize| & |font=normalsize|\\
-|large| & |font=large|\\
-|Large| & |font=Large|\\
-|up| & |labelfont=up|\\
-|it| & |labelfont=it|\\
-|sl| & |labelfont=sl|\\
-|sc| & |labelfont=sc|\\
-|md| & |labelfont=md|\\
-|bf| & |labelfont=bf|\\
-|rm| & |labelfont=rm|\\
-|sf| & |labelfont=sf|\\
-|tt| & |labelfont=tt|\\
-\end{tabular}
-\end{center}
-
-% Beside the options for setting up the desired font there were also
-% the commands |\caption|\-|size| resp.~|\caption|\-|font| and
-% |\caption|\-|label|\-|font| who could be redefined with
-% |\re|\-|new|\-|command| and allowed an alternate and more flexible way to
-% change the font used for captions.
-% This mechanism was replaced by the commands
-Ïîìèìî îïöèé äë˙ íàñòîċê íóĉíîî ĝèôòà áûëè òàêĉċ êîìàíäû
-|\caption|\-|size|, à~òàêĉċ |\caption|\-|font| è~|\caption|\-|label|\-|font|
-êîòîûċ ìîëè áûòü ïċċîïċäċëċíû ñ~ïîìîùüŝ |\renewcommand| è~ïîçâîë˙ëè
-àëüòċíàòèâíûé è~áîëċċ èáêèé ñïîñîá èçìċíèòü ĝèôò ïîäïèñċé.
-Äàííûé ìċġàíèçì çàìċí¸í íà êîìàíäû
-\begin{quote}
- |\DeclareCaptionFont{|\ldots|}{|\ldots|}|\qquad è\\
- |\captionsetup{font=|\ldots|,labelfont=|\ldots|}|\qquad.
-\end{quote}
-\SeeUserDefined
-
-% Setting the margin for captions was done in \version{1.x} with
-Óñòàíîâêè ïîëċé â~âċñèè \version{1.x} çàäàâàëèñü ñ~ïîìîùüŝ
-\begin{quote}
- |\setlength{\captionmargin}{|\ldots|}|\quad.
-\end{quote}
-% This was replaced by
-Ŭòî çàìċíċíî íà
-\begin{quote}
- |\captionsetup{margin=|\ldots|}|\qquad.
-\end{quote}
-\See{\Ref{margins}}
-
-% For example the old-style code
-Íàïèìċ, ñòàûé êîä
-\begin{quote}
- |\usepackage[hang,bf]{caption}|\\
- |\renewcommand\captionfont{\small\sffamily}|\\
- |\setlength\captionmargin{10pt}|
-\end{quote}
-% will still work fine, but should be written today as
-äî ñèġ ïî àáîòàċò, íî ëó÷ĝċ ïċċïèñàòü ċî êàê
-\begin{quote}
- |\usepackage[format=hang,labelfont=bf,font={small,sf},|\\
- | margin=10pt]{caption}|
-\end{quote}
-% or
-èëè
-\begin{quote}
- |\usepackage{caption}|\\
- |\captionsetup{format=hang,labelfont=bf,font={small,sf},|\\
- | margin=10pt}|\qquad.
-\end{quote}
-
-% The quite exotic option |ruled| which allowed a partial usage of
-% the caption settings for |ruled| floats defined with the
-% \package{float} package will be emulated by this version of the
-% caption package, too.
-% But using this option is not recommended anymore since this
-% version of \thispackage\ offers a more flexible way
-% for changing the captions of these floating environments:
-Òàêà˙ ŭêçîòè÷ċñêà˙ îïöè˙ |ruled|, êîòîà˙ ïîçâîë˙ëà ÷àñòè÷íî èñïîëüçîâàòü
-íàñòîéêè ïîäïèñè äë˙ ôëîòîâ ñ~îôîìëċíèċì |ruled| èç ïàêċòà
-\package{float}, ŭìóëèóċòñ˙ è~äàííûì ïàêċòîì òîĉċ.
-Íî èñïîëüçîâàíèċ ŭòîé îïöèè íċ ċêîìċíäóċòñ˙, ïîñêîëüêó äàííà˙ âċñè˙ ïàêċòà
-ïċäëààċò áîëċċ èáêèé ñïîñîá äë˙ èçìċíċíè˙ ïîäïèñċé
-òàêèġ îêóĉċíèé ïëàâàŝùèġ ôëîòîâ:
-\begin{quote}
- |\DeclareCaptionStyle{ruled}{|\ldots|}|
-\end{quote}
-% resp.
-è, ñîîòâċòñòâċííî
-\begin{quote}
- |\captionsetup[ruled]{|\ldots|}|\qquad.
-\end{quote}
-\SeeUserDefined[, \Ref{captionsetup}, è~\Ref{float}]
-
-\subsection{Ïàêċò caption2 v\texorpdfstring{$2.x$}{2.x}}
-\label{caption2}
-
-% Although they do very similar stuff, the packages \package{caption} and
-% its experimental and now obsolete variant \package{caption2} have a
-% very different implementation design.
-% Therefore a full compatibility could not be offered.
-% For that reason you will still find a file called |caption2.sty| in
-% this package distribution, so old documents using the \package{caption2}
-% package will still compile fine.
-Ġîò˙ èñïîëüçóŝòñ˙ îäíè è~òċ ĉċ íàñòîéêè è~â~ïàêċòċ \package{caption}
-è~â~ŭêñïċèìċíòàëüíîé, íî ñċé÷àñ óñòàċâĝċé âċñèè"=ïàêċòċ
-\package{caption2}, ó~ŭòèġ ïàêċòîâ ñîâċĝċííî àçíûé ìċġàíèçì èġ çàäàíè˙.
-Ïîŭòîìó ïîëíà˙ ñîâìċñòèìîñòü íċâîçìîĉíà.
-Ïî ŭòîé ïè÷èíċ äî ñèġ ïî ñóùċñòâóċò ïàêċò |caption2.sty| â~äàííîì
-äèñòèáóòèâċ, è~ñòàûċ äîêóìċíòû, èñïîëüçóŝùèċ ïàêċò \package{caption2}
-áóäóò êîìïèëèîâàòüñ˙.
-
-% Newly created documents should use the actual version of
-% \thispackage\ instead. In most cases it's sufficient to replace the command
-Íîâûċ äîêóìċíòû äîëĉíû èñïîëüçîâàòü ñîâċìċííûċ âċñèè ïàêċòà
-\package{caption}. Â~áîëüĝèíñòâċ ñëó÷àċâ ìîĉíî çàìċíèòü ñòîêó
-\begin{quote}
- |\usepackage[...]{caption2}|
-\end{quote}
-% by
-íà
-\begin{quote}
- |\usepackage[...]{caption}|\qquad.
-\end{quote}
-% But some options and commands will not be emulated, so you can get
-% error messages afterwards. This section will hopefully help you removing
-% these errors. If you have problems migrating from \package{caption2}
-% to \package{caption} please don't hesitate to send me an e-mail asking
-% for help.
-Íî íċêîòîûċ îïöèè è~êîìàíäû íċ ŭìóëèóŝòñ˙, è~âû ìîĉċòċ
-ïîëó÷èòü ñîîáùċíè˙ îá îĝèáêàġ. Äàííûé àçäċë ïîìîĉċò âàì ëèêâèäèîâàòü
-òàêèċ îĝèáêè. Ċñëè ó~âàñ ïîáëċìû ïî çàìċíċ ïàêċòà \package{caption2}
-íà \package{caption} íċ àçäóìûâàéòċ è~îòïàâë˙éòċ ìíċ e-mail.
-
-% In addition to the obsolete options shown in the last section
-% these ones will be emulated, too:
-Ïîìèìî óñòàċâĝèġ îïöèé èç ïċäûäóùċî àçäċëà
-ñëċäóŝùèċ òàêĉċ ŭìóëèóŝòñ˙:
-
-\begin{center}\small
-\begin{tabular}{ll}
-\package{caption2} \version{2.x} & \package{caption} \version{3.x}\\
-\hline
-%\endhead
-|flushleft| & |justification=raggedright|\\
-|flushright| & |justification=raggedleft|\\
-|oneline| & |singlelinecheck=on|\\
-\end{tabular}
-\end{center}
-
-% Setting the margin for captions was done in \version{2.x} with
-Çàäàíèċ âò˙ĉċê (ïîëċé) äë˙ ïîäïèñċé, ñîçäàííûġ â~\version{2.x}
-\begin{quote}\leavevmode\hbox{%
- |\setcaptionmargin{|\ldots|}| èëè, ñîîòâċòñòâċííî
- |\setcaptionwidth{|\ldots|}|\quad.
-}\end{quote}
-% This was replaced by
-Îíè ìîóò áûòü çàìċíċíû íà
-\begin{quote}\leavevmode\hbox{%
- |\captionsetup{margin=|\ldots|}| èëè, ñîîòâċòñòâċííî
- |\captionsetup{width=|\ldots|}|\quad.
-}\end{quote}
-\See{\Ref{margins}}
-
-% Setting an indention was done in \version{2.x} with
-Âò˙ĉêà â~âċñèè \version{2.x} çàäàâàëàñü êàê
-\begin{quote}
- |\captionstyle{indent}|\\
- |\setlength\captionindent{|\ldots|}|\quad.
-\end{quote}
-\pagebreak[3]
-% This is now done with
-Ñċé÷àñ ŭòî çàäà¸òñ˙ êàê
-\nopagebreak[3]
-\begin{quote}
- |\captionsetup{format=plain,indention=|\ldots|}|\quad.
-\end{quote}
-
-% The so-called single-line-check was controlled by the commands
-% |\oneline|\-|captions|\-|false| (for switching the check off) and
-% |\oneline|\-|captions|\-|true| (for switching the check on).
-% This was replaced by
-Êîíòîëü êîîòêîé ïîäïèñè êîíòîëèóċòñ˙ êîìàíäàìè
-|\oneline|\-|captions|\-|false| (îòêëŝ÷àċò êîíòîëü)
-è~|\oneline|\-|captions|\-|true| (äë˙ âêëŝ÷ċíè˙ êîíòîë˙).
-Ŭòî çàìċíċíî íà
-|\caption|\-|setup{single|\-|line|\-|check=|\x|off}|
-% resp.
-è, ñîîòâċòñòâċííî
-|\caption|\-|setup{single|\-|line|\-|check=|\x|on}|.
-\See{\Ref{justification}}
-
-% The commands
-Êîìàíäû
-\begin{quote}
- |\captionlabeldelim|, |\captionlabelsep|, |\captionstyle|,\\
- |\defcaptionstyle|, |\newcaptionstyle|, è~|\renewcaptionstyle|
-\end{quote}
-% do not have a simple replacement and therefore will not be emulated
-% by this version of \thispackage. (So using them will
-% cause error messages.) Rewriting such code is not always easy and
-% straight-ahead, but by conscientious reading of this manual you should
-% be able to find appropriate options and commands instead.
-íċ èìċŝò ïîñòîé çàìċíû ïîŭòîìó íċ ŭìóëèóŝòñ˙
-äàííîé âċñèċé ïàêċòà. (Èġ èñïîëüçîâàíèċ âûçîâċò
-ñîîáùċíèċ îá îĝèáêċ.) Çàìċíà ŭòîî êîäà íċ âñċäà ïîñòà,
-íî äîáîñîâċñòíî ïî÷èòàâ äàííîċ óêîâîäñòâî, âû ñìîĉċòċ íàéòè
-ïîäġîä˙ùèċ îïöèè è~êîìàíäû çàìċíû.
-
-\iffalse
-... (some examples)
-\fi
-
-% The \version{2.x} option |ignore|\-|LT|\-|cap|\-|width| do not have a
-% replacement, too.
-% But in most cases you can simply drop using that option because
-% in this version of \thispackage\ the value of |\LT|\-|cap|\-|width|
-% will be ignored anyway (unless you set it to a different value than the
-% default one which is |4in|).
-Îïöè˙ |ignore|\-|LT|\-|cap|\-|width| âċñèè \version{2.x} òîĉċ íċ èìċċò çàìċíû.
-Íî â~áîëüĝèíñòâċ ñëó÷àċâ ŭòó îïöèŝ ìîĉíî îïóñòèòü, ïîòîìó ÷òî â~äàííîé
-âċñèè ïàêċòà çíà÷ċíèċ |\LT|\-|cap|\-|width|
-áóäċò èíîèîâàòüñ˙ â~ëŝáîì ñëó÷àċ (ċñëè òîëüêî âû íċ çàäàäèòċ çíà÷ċíèċ,
-îòëè÷íîċ îò çàäàííîî ïî óìîë÷àíèŝ |4in|).
-\See{\Ref{longtable}}
-
-\subsection{Ïàêċò caption v\texorpdfstring{$3.0$}{3.0}}
-\label{caption3}
-
-%\NEWdescription{v3.1}
-% \Thispackage\ \version{3.0} did not support any document classes
-% other than the standard \LaTeX\ ones: \class{article}, \class{report},
-% and \class{book}.
-% Therefore the default settings used to be fixed, but now \thispackage{}
-% supports more classes, therefore they are now set in dependence on the
-% document class used.
-\Thispackage\ \version{3.0} íċ ïîääċĉèâàë íèêàêèġ êëàññîâ äîêóìċíòîâ, êîìċ
-ñòàíäàòíûġ êëàññîâ \LaTeX'à: \class{article}, \class{report},
-and \class{book}.
-Â~ñòàûġ íàñòîéêàġ âċä¸òñ˙ àáîòà íàä îĝèáêàìè, íî~òċïċü \thispackage{}
-ïîääċĉèâàċò áîëüĝċ êëàññîâ, ïîŭòîìó íàñòîéêè ïîäïèñċé çàâèñ˙ò îò èñïîëüçóċìîî
-êëàññà äîêóìċíòà.
-
-% For example: While in \version{3.0} the default caption
-% |jus|\-|ti|\-|fi|\-|ca|\-|tion| used to be always |jus|\-|ti|\-|fied|,
-% it's now still |jus|\-|ti|\-|fied| when using one of the standard document
-% classes, but |ragged|\-|right| will be used as default format when used
-% with the \class{beamer} document class.
-Íàïèìċ, â~òî âċì˙ êàê â~âċñèè $3.0$ çíà÷ċíèċì êëŝ÷à |justification|
-ïî óìîë÷àíèŝ ˙âë˙ċòñ˙ |justi|\-|fied|, îíî îñòàíċòñ˙ |justi|\-|fied| ïè èñïîëüçîâàíèè
-ñòàíäàòíûġ êëàññîâ äîêóìċíòîâ, íî çàìċí˙ċòñ˙ íà |ragged|\-|right| ïè èñïîëüçîâàíèè
-êëàññà äîêóìċíòà \class{beamer}.
-
-% %An easy way to select the `old' defaults---if desired---is using the option
-% An easy way to select the `old' defaults is using the option
-% |style=base| when loading \thispackage\ (or later on using |\caption|\-|setup|).
-Ïîñòîé ïóòü çàäàòü Ğñòàûċğ çíà÷ċíè˙ ïî óìîë÷àíèŝ \cdash--- èñïîëüçîâàòü îïöèŝ
-|style=base| ïè çàóçêċ ïàêċòà (èëè ïîçäíċċ, â~êîìàíäċ |\caption|\-|setup|).
-
-% Another new feature is the automatic check for compatibility; if an
-% incompatibility will be found, a warning message will be issued and if a strong
-% incompatibility was found some features of \thispackage\ will be disabled.
-Ċù¸ îäíîé îñîáċííîñòüŝ ñòàëà àâòîìàòè÷ċñêà˙ ïîâċêà íà ñîâìċñòèìîñòü [êëàññà è~ïàêċòà]; ċñëè
-îáíàóĉèâàċòñ˙ íċñîâìċñòèìîñòü, âûäà¸òñ˙ ïċäóïċĉäċíèċ î~íċñîâìċñòèìîñòè íċêîòîûġ âîçìîĉíîñòċé
-äàííîî ïàêċòà ñ~êëàññîì äîêóìċíòà.
-% Please note that only this check was added to \thispackage, so if you get
-% such warning message, the previous versions of \thispackage\ were incompatible
-% as well, but did not issued such warning, they were ``only'' having
-% side-effects or causing problems.
-Îáàòèòċ âíèìàíèċ, ÷òî òàêîċ ïċäóïċĉäċíèċ ïî˙âèëîñü òîëüêî â~òċêóùċé âċñèè ïàêċòà, ïîŭòîìó ċñëè
-âû ïîëó÷èëè ŭòî ñîîáùċíèċ ŭòî îçíà÷àċò, ÷òî è~ïċäûäóùèċ âċñèè áûëè òàêĉċ íċñîâìċñòèìû,
-è~îíè óĉċ èìċëè ïîáî÷íûċ ŭôôċêòû è~ìîëè ñîçäàâàòü ïîáëċìû.
-% So these warnings only say that some bad side effects or problems could
-% happen, but not that they actually will happen.
-% Anyway, if you use \thispackage\ in such circumstances,
-% you should use it with care.
-Ŭòè ïċäóïċĉäċíè˙ îâî˙ò, ÷òî \emph{ìîóò} ïî˙âèòüñ˙ ïîáëċìû, íî ŭòî íċ çíà÷èò, ÷òî îíè
-íċïċìċííî ïî˙â˙òñ˙.
-Â~ëŝáîì ñëó÷àċ ċñëè âû èñïîëüçóċòċ \thispackage\ èíîèó˙ ŭòî ïċäóïċĉäċíèċ,
-áóäüòċ îñòîîĉíû.
-
-\bigskip
-
-\begin{Note*}
-% \Thispackage\ \version{3.0} offered the option |caption=|\x|false|,
-% which used to be a workaround for not using the whole \package{caption} package
-% (leaving the caption stuff offered by the document class or other packages
-% intact), but keeping the \package{subfig} package\cite{subfig} working.
-% This mechanism is obsolete and not offered anymore, please pass this option
-% to the \package{subfig} package instead and do not load \thispackage\ anymore.
-% %\par\See{the \package{subfig} package documentation}
-Ïàêċò âċñèè \version{3.0} ïċäëààë îïöèŝ |caption=false|, êîòîà˙ âêëŝ÷àëà ëèĝü
-÷àñòè÷íîċ èñïîëüçîâàíèċ âîçìîĉíîñòċé ïàêċòà \package{caption} (ñîġàí˙˙
-íàñòîéêè êëàññà äîêóìċíòà èëè äóèġ ïàêċòîâ íċòîíóòûìè), íî îñòàâë˙ëà
-âîçìîĉíîñòü àáîòû ïàêċòà \package{subfig}.
-Ŭòîò ìċġàíèçì òċïċü óñòàċâĝèé è~áîëüĝċ íċ ïîääċĉèâàċòñ˙,
-ïîŭòîìó çàäàâàéòċ, ïîĉàëóéñòà, ŭòó îïöèŝ ïè çàóçêċ ïàêċòà \package{subfig},
-è~íċ çàóĉàéòċ äàííûé ïàêċò âîâñċ.
-%\par\See{the \package{subfig} package\cite{subfig} documentation}
-\end{Note*}
-
-% --------------------------------------------------------------------------- %
-
-\clearpage
-\begin{thebibliography}{99}
-\fontencoding{T1}%\fontfamily{ptm}
-\selectfont
-
- \bibitem{TLC2}
- Frank Mittelbach and Michel Goossens:\\
- \newblock {\em The {\LaTeX} Companion (2nd.~Ed.)},\\
- \newblock Addison-Wesley, 2004.
-
- \bibitem{beamer}
- Till Tantau:\\
- \href{http://www.ctan.org/pkg/beamer}%
- {\emph{User Guide to the Beamer Class, Version 3.07}},\\
- March 11, 2007
-
- \bibitem{KOMAScript}
- Markus Kohm \& Jens-Uwe-Morawski:\\
- \href{http://www.ctan.org/pkg/koma-script}%
- {\emph{KOMA-Script -- a versatile \LaTeXe\ bundle}},\\
- 2007-01-09
-
- \bibitem{NTG}
- Victor Eijkhout:\\
- \href{http://www.ctan.org/pkg/ntgclass}%
- {\emph{An introduction to the Dutch \LaTeX\ document classes}},\\
- 3 September 1989
-
- \bibitem{algorithms}
- Rog\'erio Brito:\\
- \href{http://www.ctan.org/pkg/algorithms}%
- {\emph{Algorithms}},\\
- June 2, 2006
-
-\iffalse
- \bibitem{algorithm2e}
- Christophe Fiorio:\\
- \href{http://www.ctan.org/pkg/algorithm2e}%
- {\emph{algorithm2e.sty -- package for algorithms}},\\
- March 11, 2007
-\fi
-
- \bibitem{float}
- Anselm Lingnau:\\
- \href{http://www.ctan.org/pkg/float}%
- {\emph{An Improved Environment for Floats}},\\
- 2001/11/08
-
- \bibitem{floatflt}
- Mats Dahlgren:\\
- \href{http://www.ctan.org/pkg/floatflt}%
- {\emph{Welcome to the floatflt package}},\\
- 1998/06/05
-
- \bibitem{floatrow}
- Olga Lapko:\\
- \href{http://www.ctan.org/pkg/floatrow}%
- {\emph{The floatrow package documentation}},\\
- 2008/03/28
-
- \bibitem{fltpage}
- Sebastian Gross:\\
- \href{http://www.ctan.org/pkg/fltpage}%
- {\emph{Welcome to the beta test of fltpage package!}},\\
- 1998/11/13
-
- \bibitem{hyperref}
- Sebastian Rahtz \& Heiko Oberdiek:\\
- \href{http://www.ctan.org/pkg/hyperref}%
- {\emph{Hypertext marks in \LaTeX}},\\
- November 12, 2007
-
- \bibitem{hypcap}
- Heiko Oberdiek:\\
- \href{http://www.ctan.org/pkg/hypcap}%
- {\emph{The hypcap package -- Adjusting anchors of captions}},\\
- 2007/04/09
-
- \bibitem{listings}
- Carsten Heinz \& Brooks Moses:\\
- \href{http://www.ctan.org/pkg/listings}%
- {\emph{The Listings Package}},\\
- 2007/02/22
-
- \bibitem{longtable}
- David Carlisle:\\
- \href{http://www.ctan.org/pkg/longtable}%
- {\emph{The longtable package}},\\
- 2004/02/01
-
- \bibitem{picinpar}
- Friedhelm Sowa:\\
- \href{http://www.ctan.org/pkg/picinpar}%
- {\emph{Pictures in Paragraphs}},\\
- July 13, 1993
-
- \bibitem{picins}
- Joachim Bleser and Edmund Lang:\\
- \href{http://www.ctan.org/pkg/picins}%
- {\emph{PicIns-Benutzerhandbuch Version 3.0}},\\
- September~1992
-
- \bibitem{rotating}
- Sebastian Rahtz and Leonor Barroca:\\
- \href{http://www.ctan.org/pkg/rotating}%
- {\emph{A style option for rotated objects in \LaTeX}},\\
- 1997/09/26
-
- \bibitem{setspace}
- Erica M. S. Harris \& Geoffrey Tobin:\\
- \href{http://www.ctan.org/pkg/setspace}%
- {\emph{LaTeX Document Package ``setspace''}},\\
- 1 December 2000
-
- \bibitem{sidecap}
- Rolf Niepraschk \& Hubert G\"a\ss lein:\\
- \href{http://www.ctan.org/pkg/sidecap}%
- {\emph{The sidecap package}},\\
- 2003/06/06
-
- \bibitem{subfigure}
- Steven D. Cochran:\\
- \href{http://www.ctan.org/pkg/subfigure}%
- {\emph{The subfigure package}},\\
- 2002/07/02
-
- \bibitem{subfig}
- Steven D. Cochran:\\
- \href{http://www.ctan.org/pkg/subfig}%
- {\emph{The subfig package}},\\
- 2005/07/05
-
- \bibitem{supertabular}
- Johannes Braams and Theo Jurriens:\\
- \href{http://www.ctan.org/pkg/supertabular}%
- {\emph{The supertabular environment}},\\
- 2002/07/19
-
- \bibitem{threeparttable}
- Donald Arseneau:\\
- \href{http://www.ctan.org/pkg/threeparttable}%
- {\emph{Three part tables: title, tabular environment, notes}},\\
- 2003/06/13
-
- \bibitem{wrapfig}
- Donald Arseneau:\\
- \href{http://www.ctan.org/pkg/wrapfig}%
- {\emph{WRAPFIG.STY ver 3.6}},\\
- 2003/01/31
-
- \bibitem{xtab}
- Peter Wilson:\\
- \href{http://www.ctan.org/pkg/xtab}%
- {\emph{The xtab package}},\\
- 2004/05/24
-
-\end{thebibliography}
-
-% --------------------------------------------------------------------------- %
-
-\end{document}
diff --git a/macros/latex/contrib/caption/caption-thesis.dtx b/macros/latex/contrib/caption/caption-thesis.dtx
index c358eadff1..aa0694668b 100644
--- a/macros/latex/contrib/caption/caption-thesis.dtx
+++ b/macros/latex/contrib/caption/caption-thesis.dtx
@@ -27,11 +27,10 @@
% caption.sty, caption-light.sty, caption2.sty, caption3.sty,
% caption-ams-smf.sto, caption-beamer.sto, caption-elsarticle.sto,
% caption-koma.sto, caption-memoir.sto, caption-ntg.sto,
-% caption-thesis.sto, bicaption.sty, ltcaption.sty, subcaption.sty,
-% and the user manuals
-% caption-deu.tex, caption-eng.tex, caption-rus.tex.
+% caption-thesis.sto, bicaption.sty, ltcaption.sty, subcaption.sty.
%
% \fi
+%
% \CheckSum{9}
%
% \iffalse
@@ -139,6 +138,7 @@
% \DoNotIndex{\hangindent,\hbox,\hfil,\hsize,\hskip,\hspace,\hss}
% \DoNotIndex{\ifcase,\ifdim,\ifnum,\ifodd,\ifvoid,\ifvmode}
% \DoNotIndex{\ifx,\ignorespaces,\itshape}
+% \DoNotIndex{\kernel@ifnextchar}
% \DoNotIndex{\Large,\large,\leavevmode,\leftmargini,\leftskip,\let,\linewidth}
% \DoNotIndex{\llap,\long,\m@ne,\margin,\mdseries,\message}
% \DoNotIndex{\newcommand,\newdimen,\newlength,\newline,\newif,\newsavebox}
diff --git a/macros/latex/contrib/caption/caption.dtx b/macros/latex/contrib/caption/caption.dtx
index 09cef7fb86..4b59565b22 100644
--- a/macros/latex/contrib/caption/caption.dtx
+++ b/macros/latex/contrib/caption/caption.dtx
@@ -2,7 +2,7 @@
%
% This is file `caption.dtx'.
%
-% Copyright (C) 1994-2020 Axel Sommerfeldt (axel.sommerfeldt@f-m.fm)
+% Copyright (C) 1994-2022 Axel Sommerfeldt (axel.sommerfeldt@f-m.fm)
%
% --------------------------------------------------------------------------
%
@@ -27,29 +27,33 @@
% caption.sty, caption-light.sty, caption2.sty, caption3.sty,
% caption-ams-smf.sto, caption-beamer.sto, caption-elsarticle.sto,
% caption-koma.sto, caption-memoir.sto, caption-ntg.sto,
-% caption-thesis.sto, bicaption.sty, ltcaption.sty, subcaption.sty,
-% and the user manuals
-% caption-deu.tex, caption-eng.tex, caption-rus.tex.
+% caption-thesis.sto, bicaption.sty, ltcaption.sty, subcaption.sty.
%
% \fi
-% \CheckSum{2692}
+%
+% \CheckSum{2869}
%
% \iffalse
%<*driver>
\NeedsTeXFormat{LaTeX2e}[1994/12/01]
-\ProvidesFile{caption.drv}[2020/10/11 v3.5 Implementation of the caption package]
+\ProvidesFile{caption.drv}[2022/02/20 v3.6 Implementation of the caption package]
\hbadness=9999 \newcount\hbadness \hfuzz=100pt % Make TeX shut up.
%\errorcontextlines=3
%
\documentclass{ltxdoc}
\setlength\parindent{0pt}
\setlength\parskip{\smallskipamount}
+\setlength\leftmargini{2em}% default = 2.5em
+%\makeatletter\g@addto@macro\MacroFont{\normalcolor}\makeatother
%
\makeatletter % make room for subsections like 2.16.14 in the TOC
%\newcommand*\l@subsection{\@dottedtocline{2}{1.5em}{2.3em}}
\renewcommand*\l@subsection{\@dottedtocline{2}{1.5em}{2.7em}}
\makeatother
%
+\newcommand\LineBreak{\linebreak[3]}
+\newcommand\PageBreak{\pagebreak[3]}
+%
\usepackage{ifpdf}
\ifpdf
\usepackage{mathptmx,courier}
@@ -57,15 +61,135 @@
\addtolength\marginparwidth{15pt}
\fi
%
+\usepackage[bottom]{footmisc}
+\usepackage{graphicx,longtable,setspace}
+%
\usepackage{hypdoc}
\ifpdf\usepackage{hypdestopt}\fi
\hypersetup{pdfkeywords={LaTeX, package, caption},pdfstartpage={},pdfstartview={}}
+\hypersetup{breaklinks=true}
+\AtBeginDocument{%
+ \let\subsectionautorefname\sectionautorefname
+ \let\subsubsectionautorefname\sectionautorefname}
%
-\usepackage[debug]{caption}[2013/01/01]
+\usepackage[listof=false,hypcap=false]{caption}[2022/01/06]
%
\DeclareRobustCommand*\eTeX{\texorpdfstring
{\leavevmode\hbox{$\varepsilon$}-\TeX}%
{e-TeX}}
+\DeclareRobustCommand*\AmS{\texorpdfstring
+ {{\protect\usefont{OMS}{cmsy}{m}{n}A\kern-.1667em\lower.5ex\hbox{M}\kern-.125emS}}%
+ {AMS}}
+\DeclareRobustCommand*\KOMAScript{\texorpdfstring
+ {\textsf{K\kern.05em O\kern.05em M\kern.05em A\kern.1em-\kern.1em Script}}%
+ {KOMA-Script}}
+\DeclareRobustCommand*\NTG{NTG}
+\DeclareRobustCommand*\SmF{SMF}
+%
+\usepackage{marvosym}
+\makeatletter
+\newcommand*\INFO{\@ifstar{\@INFO{}}{\@INFO{\vbox to \ht\strutbox}}}
+\newcommand*\@INFO[1]{\MARGINSYM{#1{\LARGE\Info}}}
+\makeatother
+
+\makeatletter
+\newcommand*\MARGINSYM[1]{\hskip 1sp \marginpar{\raggedleft\textcolor{blue}{{#1}}}}
+\newcommand*\NEW[1]{\@ifstar{\@NEW{#1}{\vskip2pt}}{\@NEW{#1}{}}}
+\newcommand*\@NEW[3]{\MARGINSYM{#2\footnotesize#1\\#3}}
+\makeatother
+
+% \ContinuedFloat
+\DeclareCaptionLabelFormat{continued1}{Continued #1~#2}
+\DeclareCaptionLabelFormat{continued2}{#1~#2\alph{ContinuedFloat}}
+% \DeclareCaptionLabelFormat
+\DeclareCaptionLabelFormat{bf-parens}{(\textbf{#2})}
+% \DeclareCaptionStyle
+\DeclareCaptionStyle{mystyle}[margin=5mm,justification=centering]%
+ {font=footnotesize,labelfont=sc,margin={10mm,0mm}}
+% Example 1
+\DeclareCaptionFormat{myformat1}{#1#2\\#3}
+\newlength\myindention
+\DeclareCaptionFormat{myformat2}{#1#2\\\hspace*\myindention#3}
+\DeclareCaptionOption{myindention}{\setlength\myindention{#1}}
+% Example 2
+\DeclareCaptionFormat{reverse}{#3#2#1}
+\DeclareCaptionLabelFormat{fullparens}{(\bothIfFirst{#1}{~}#2)}
+\DeclareCaptionLabelSeparator{fill}{\hfill}
+% Example 3
+\DeclareCaptionFormat{llap}{\llap{#1#2}#3\par}
+\DeclareCaptionFormat{llapx}{\llap{\makebox[5em][l]{#1}}#3\par}
+% Example 4
+\DeclareCaptionLabelFormat{andtable}{#1~#2 \& \tablename~\thetable}
+
+\newcommand*\purerm[1]{\texorpdfstring{{\upshape\mdseries\rmfamily #1}}{#1}}
+\newcommand*\puresf[1]{\texorpdfstring{{\upshape\mdseries\sffamily #1}}{#1}}
+\newcommand*\purett[1]{\texorpdfstring{{\upshape\mdseries\ttfamily #1}}{#1}}
+\let\class\puresf \let\package\puresf % obsolete
+\let\cls\puresf \let\pkg\puresf
+\let\env\purett \let\opt\purett
+
+\newcommand*\csmarg[1]{\texttt{\char`\{#1\char`\}}}
+\newcommand*\csoarg[1]{\texttt{\char`\[#1\char`\]}}
+\newcommand*\version[2][]{v$#2$}
+\newcommand*\issue[1]{GitLab~\##1}
+\newcommand*\x{\discretionary{}{}{}}
+
+\newenvironment{Annotation}%
+ {\ifvmode\else\unskip\par\fi\pagebreak[2]%
+ \smallskip
+ \small(\ignorespaces}{\unskip)\par}
+\newenvironment{Annotation*}%
+ {\ifvmode\else\unskip\par\fi\pagebreak[2]%
+ \small(\ignorespaces}{\unskip)\par}
+
+\newenvironment{Example}%
+ {\ifvmode\else\unskip\par\fi\pagebreak[2]%
+ \minipage{\linewidth}\smallskip}%
+ {\smallskip\endminipage\par}
+
+\makeatletter
+\newcommand\example{\@ifstar
+ {\@example{belowskip=\abovecaptionskip}}%
+ {\@example{}}}
+\def\@example#1{%
+ \@testopt{\@@example{#1}}{figure}}
+\long\def\@@example#1[#2]#3#4{%
+ \begingroup
+ \captionsetup{#1,size=small,margin={\leftmargini,10pt},#3}%
+ \captionof{#2}[]{#4}%
+ \endgroup}
+\makeatother
+
+\newenvironment{Expert}%
+ {\ifvmode\else\unskip\par\fi\pagebreak[3]%
+ \smallskip
+ \footnotesize\ignorespaces}{\par}
+\newenvironment{Expert*}%
+ {\ifvmode\else\unskip\par\fi\pagebreak[3]%
+ \footnotesize\ignorespaces}{\par}
+
+\newenvironment{Note}[1][\DefaultNoteText]%
+ {\ifvmode\else\unskip\par\fi
+ \smallskip
+ \small\emph{#1:}~\ignorespaces}{\par}
+\newenvironment{Note*}[1][\DefaultNoteText]%
+ {\ifvmode\else\unskip\par\fi
+ \small\emph{#1:}~\ignorespaces}{\par}
+
+\newenvironment{Options}[1]%
+ {\list{}{\renewcommand\makelabel[1]{\texttt{##1}\hfil}%
+ \settowidth\labelwidth{\texttt{#1\space}}%
+ \setlength\leftmargin{10pt}%
+ \addtolength\leftmargin{\labelwidth}%
+ \addtolength\leftmargin{\labelsep}}}%
+ {\endlist}
+
+\makeatletter
+\def\Ref{\@ifstar{\@Ref\ref}{\@Ref\autoref}}
+\def\@Ref#1#2{#1{#2}: \textit{\nameref{#2}}}
+\newcommand*\SEE[3][]{\nopagebreak{#1(#2 #3)}}
+\newcommand*\SeeUserDefined[1][]{\See{\Ref{declare}#1}}
+\makeatother
%
\begin{document}
\DocInput{caption.dtx}
@@ -73,68 +197,4105 @@
%</driver>
% \fi
%
-% \newcommand*\purerm[1]{\texorpdfstring{{\upshape\mdseries\rmfamily #1}}{#1}}
-% \newcommand*\puresf[1]{\texorpdfstring{{\upshape\mdseries\sffamily #1}}{#1}}
-% \newcommand*\purett[1]{\texorpdfstring{{\upshape\mdseries\ttfamily #1}}{#1}}
-% \let\class\puresf \let\package\puresf
-% \let\env\purett \let\opt\purett
%
% \def\thispackage{the \package{caption} package}
% \def\Thispackage{The \package{caption} package}
%
-% \newcommand*\csmarg[1]{\texttt{\char`\{#1\char`\}}}
-% \newcommand*\csoarg[1]{\texttt{\char`\[#1\char`\]}}
-% \newcommand*\version[2][]{v$#2$}
-%
-% \newcommand*\issue[1]{GitLab~\##1}
+% \newcommand*\DefaultNoteText{Note}
+% \newcommand*\NEWfeature{\NEW{New feature}}
+% \newcommand*\NEWdescription{\NEW{New description}}
+% \makeatletter
+% \newcommand*\See{\@ifstar{\SEE{See}}{\SEE[\small]{See}}}
+% \newcommand*\see{\@ifstar{\SEE{see}}{\SEE[\small]{see}}}
+% \makeatother
%
% \GetFileInfo{caption.drv}
% \let\docdate\filedate
% \let\docversion\fileversion
% \GetFileInfo{caption.sty}
%
-% \title{The Implementation of
-% \texorpdfstring{\thispackage\thanks{%^^A
+% \title{Customizing captions of floating environments%^^A
+% \texorpdfstring{\thanks{%^^A
% This package has version number \docversion.}}%^^A
-% {the caption package}}
+% {}}
% \author{Axel Sommerfeldt\\
% \url{https://gitlab.com/axelsommerfeldt/caption}}
% \date{\docdate}
% \maketitle
%
% \begin{abstract}
-% \Thispackage\ consists of two parts -- the kernel
-% (|caption3.sty|) and the main package (|caption.sty|).
-%
-% \Thispackage\ redefines the \LaTeX\ commands
-% |\caption|, |\@caption|, and |\@makecaption| and maps the latter one to
-% |\caption@@make|, giving the user the possibility to control the look \& feel
-% of the captions from floating environments like |figure| and |table|.
-% Furthermore it does similar to the caption stuff coming from other packages
-% (like the \package{longtable} or \package{supertabular} package):
-% Mapping the appropriate internal commands (like |\LT@makecaption| or
-% |\ST@caption|) to the ones offered by the \package{caption3} kernel.
-% So you can think of \thispackage\ as a layer package, it
-% simply provides adaptation layers between the caption stuff coming from
-% \LaTeXe\ or packages, and the caption stuff offered by the
-% \package{caption3} kernel.
+% \Thispackage\ offers customization of captions
+% in floating environments such |figure| and |table| and cooperates with
+% many other packages.
+% \par\smallskip
+% \textit{Please note:} Many document classes already have build-in options and
+% commands for customizing captions.
+% If these possibilities are sufficient for you, there is usually no need for
+% you to use the \package{caption} package at all.
+% And if you are only interested in using the command \cs{captionof}, loading of
+% the very small \package{capt-of} package is usually sufficient.
% \end{abstract}
-%
-% \section*{User manual}
%
-% This document is describing the code implementation only.
-% The user documentation can be found in
-% \nopagebreak\begin{quote}
+% \newcommand\shortexampletext{%
+% White sand beaches. The pink smoothness of the conch shell. A sea abundant
+% with possibilities. Duty-free shops filled with Europe's finest gifts and
+% perfumes.}
+% \newcommand\exampletext{\shortexampletext\space
+% Play your favorite game of golf amidst the tropical greens on one
+% of the many championship courses.}
+%
+% \iffalse
+% --------------------------------------------------------------------------- %
+% \fi
+%
+% \section*{Introduction}
+%
+% Within the standard \LaTeX\ document classes captions haven't received the
+% attention they deserve. Simply typeset as an ordinary paragraph there is no
+% remarkable visual difference from the rest of the text, like here:
+%
+% \example*{size=normalsize,margin=0pt}{\shortexampletext}
+%
+% There should be possibilities to change this; for example, it would be nice
+% to make the text of the caption a little bit smaller as the normal
+% text, add an extra margin, typeset the caption label with the same font
+% family and shape as your headings etc. Just like this one:
+%
+% \example*{size=small,margin=10pt,labelfont=bf,labelsep=endash}{\shortexampletext}
+%
+% You can do this easily with this package as there are many ready-to-use
+% caption formatting options, but you are free to define your very own stuff, too.
+%
+% \bigskip
+%
+% \INFO\begin{minipage}[t]{\textwidth}
+% \small
+% Please note that \thispackage\ is only controlling the look \& feel of the
+% captions. It does \emph{not} control the placement of the captions.
+% (But you could do so by using other packages like the \package{floatrow}
+% package\cite{floatrow}.)
+% \end{minipage}
+%
+% \medskip
+%
+% \INFO\begin{minipage}[t]{\textwidth}
+% \small
+% This documentation is outdated and is currently under revision.
+% Progress could be tracked here:
+% \url{https://gitlab.com/axelsommerfeldt/caption/-/commits/doc/caption}
+% \end{minipage}
+%
+% \iffalse
+% --------------------------------------------------------------------------- %
+% \fi
+%
+% \clearpage
+% \tableofcontents
+%
+% \iffalse
+% --------------------------------------------------------------------------- %
+% \fi
+%
+% \clearpage
+% \section{Using this package}
+% \label{usage}
+%
+% Insert
+% \begin{quote}
+% |\usepackage|\oarg{options}|{caption}[|\texttt{\filedate}|]|
+% \end{quote}
+% into the preamble of your document, i.e.~the part of your document
+% between |\document|\-|class| and |\begin{doc|\-|u|\-|ment}|.
+% The options control how your captions will look like; e.g.,
+% \begin{quote}
+% |\usepackage[margin=10pt,font=small,labelfont=bf,|\\
+% | labelsep=endash]{caption}|%
+% %|[|\texttt{\filedate}|]|
+% \end{quote}
+% would result in captions looking like the second one in the introduction.
+%
+% \DescribeMacro{\captionsetup}
+% For a later change of options \thispackage\ provides the command
+% \begin{quote}
+% |\captionsetup|\oarg{float type}\marg{options}\quad.
+% \end{quote}
+% So
+% \begin{quote}
+% |\usepackage[margin=10pt,font=small,labelfont=bf]{caption}|
+% \end{quote}
+% and
+% \begin{quote}
+% |\usepackage{caption}|\\
+% |\captionsetup{margin=10pt,font=small,labelfont=bf}|
+% \end{quote}
+% are equal in their results.
+%
+% It's good to know that |\caption|\-|setup| has an effect on the current
+% environment only. So if you want to change settings for the
+% current |figure| or |table| only, just place the |\caption|\-|setup| command
+% inside the |figure| or |table| right before the |\caption| command.
+% For example
+% \begin{quote}
+% |\begin{figure}|\\
+% | |\ldots\\
+% | \captionsetup{singlelinecheck=off}|\\
+% | \caption{|\ldots|}|\\
+% |\end{figure}|
+% \end{quote}
+% switches the single-line-check off, but only for this |figure|,
+% so all the other captions remain untouched.
+%
+% \begin{Annotation}
+% For a detailed description of |\caption|\-|setup| see \Ref{captionsetup}.
+% \end{Annotation}
+%
+% \iffalse
+% --------------------------------------------------------------------------- %
+% \fi
+%
+% \clearpage
+% \section{Options}
+% \label{options}
+%
+% \def\OptionLabel{RaggedRight}
+% \def\UserDefined{\ldots}
+%
+% \iffalse
+% --------------------------------------------------------------------------- %
+% \fi
+%
+% \subsection{Formatting}
+% \label{formats}
+%
+% \DescribeMacro{format=}
+% A figure or table caption mainly consists of three parts: the caption label,
+% which says if this object is a `Figure' or `Table' and what number is
+% associated with it, the caption text itself, which is normally a short
+% description of contents, and the caption separator which separates the text
+% from the label.
+%
+% The \textit{caption format} determines how this information will be presented;
+% it is specified with the option
+% \begin{quote}
+% |format=|\meta{format name}\quad,
+% \end{quote}
+% having the name of the caption format as its argument.
+%
+% There are two standard caption formats:
+% \begin{Options}{\OptionLabel}
+% \item[plain]%\NEWdescription{v3.0h}
+% Typesets the captions as a normal paragraph.
+%
+% \item[hang]
+% Indents the caption text, so it will `hang' under the first line of the text.
+%
+% \item[\UserDefined]
+% Own formats can be defined using |\Declare|\-|Caption|\-|Format|.\LineBreak
+% \SeeUserDefined
+% \end{Options}
+%
+% \begin{Example}
+% An example: Specifying the option
+% \begin{quote}
+% |format=hang|
+% \end{quote}
+% yields captions like this:
+% \example{format=hang}{\exampletext}
+% \end{Example}
+%
+% \pagebreak[3]
+% \DescribeMacro{indention=}
+% For both formats (\texttt{plain} and \texttt{hang}) you can setup an extra
+% indention starting at the second line of the caption. You do this with the
+% option
+% \begin{quote}
+% |indention=|\meta{amount}\quad.
+% \end{quote}
+%
+% Two examples:
+%
+% \begin{Example}
+% \begin{quote}
+% |format=plain,indention=.5cm|
+% \end{quote}
+% \captionsetup{skip=0pt}
+% \example{format=plain,indention=.5cm}{\exampletext}
+% \end{Example}
+%
+% \begin{Example}
+% \begin{quote}
+% |format=hang,indention=-0.5cm|
+% \end{quote}
+% \captionsetup{skip=0pt}
+% \example{format=hang,indention=-0.5cm}{\exampletext}
+% \end{Example}
+%
+% \bigskip
+%
+% \pagebreak[3]
+% \DescribeMacro{labelformat=}
+% With the option
+% \nopagebreak[3]
+% \begin{quote}
+% |labelformat=|\meta{label format name}
+% \end{quote}
+% \nopagebreak[3]
+% you specify how the caption label will be typeset.
+% There are five standard caption label formats:
+%
+% \begin{Options}{\OptionLabel}
+% \item[original]
+% The caption label will be typeset as specified by the document class,
+% usually this means the name and the number (like \texttt{simple}).
+%
+% Until \version{3.4} of \thispackage\ this label format was called `default'.
+% Since \version{3.5} it is called `original' and usually is the default label
+% format, so |label|\-|format=|\-|default| will still select this label format,
+% unless the default was changed by either a document class or babel language package.
+%
+% \item[empty]
+% The caption label will be empty.
+% \iffalse
+% (This option makes sense when used together with other options like
+% \texttt{labelsep=none}.)
+% \fi
+%
+% \item[simple]
+% The caption label will be typeset as a name and a number.
+%
+% \item[brace]\NEWfeature{v3.1f}
+% The caption label will be closed with a single (right) brace.
+%
+% \item[parens]
+% The number of the caption label will be typeset in parentheses.
+%
+% \item[\UserDefined]
+% Own label formats can be defined using |\Declare|\-|Caption|\-|Label|\-|Format|.
+% \SeeUserDefined
+% \end{Options}
+%
+% \begin{Example}
+% An example: Using the options
+% \begin{quote}
+% |format=plain,labelformat=parens,labelsep=quad|
+% \end{quote}
+% gives captions like this one:
+% \example{format=plain,labelformat=parens,labelsep=quad}{\exampletext}
+% \end{Example}
+%
+% \medskip
+%
+% \begin{Note*}
+% Some environments, e.g.~the |algorithm| environment offered by the
+% \package{algorithm2e} package, might react allergic to a change of the
+% caption label format.
+% \end{Note*}
+%
+% \bigskip
+%
+% \pagebreak[3]
+% \DescribeMacro{labelsep=}
+% With the option
+% \begin{quote}
+% |labelsep=|\meta{label separator name}
+% \end{quote}
+% you specify what caption separator will be used.\footnote{%
+% If the caption label or the caption text is empty,
+% no separator will be used.}
+% You can choose one of the following:
+%
+% \begin{Options}{\OptionLabel}
+% \item[none]
+% There is no caption separator.
+% \iffalse
+% (This option makes sense when used together with other options like
+% \texttt{labelformat=empty}.)
+% \fi
+%
+% \item[colon]
+% The caption label and text will be separated by a colon and a space.
+%
+% \item[period]
+% The caption label and text will be separated by a period and a space.
+%
+% \item[space]
+% The caption label and text will be separated by a single space.
+%
+% \item[quad]
+% The caption label and text will be separated by a |\quad|.
+%
+% \item[newline]
+% The caption label and text will be separated by a line break (|\\|).
+% Please note that this separator does not work with all caption
+% formats (e.g.~|format=|\x|hang|), and you'll get an error message
+% trying such combination of options.
+%
+% \item[endash]\NEWfeature{v3.0h}
+% The caption label and text will be separated by an en-dash,
+% surrounded by spaces (\verb*| -- |).
+%
+% \item[\UserDefined]
+% Own separators can be defined using |\Declare|\-|Caption|\-|Label|\-|Sep|\-|a|\-|ra|\-|tor|.
+% \SeeUserDefined
+% \end{Options}
+%
+% Three examples:
+% \begin{Example}
+% \begin{quote}
+% |format=plain,labelsep=period|
+% \end{quote}
+% \captionsetup{skip=0pt}
+% \example{format=plain,labelsep=period}{\exampletext}
+% \end{Example}
+%
+% \begin{Example}
+% \begin{quote}
+% |format=plain,labelsep=newline,singlelinecheck=false|
+% \end{quote}
+% \captionsetup{skip=0pt}
+% \example{format=plain,labelsep=newline,singlelinecheck=false}{\exampletext}
+% \end{Example}
+%
+% \begin{Example}
+% \begin{quote}
+% |format=plain,labelsep=endash|
+% \end{quote}
+% \captionsetup{skip=0pt}
+% \example{format=plain,labelsep=endash}{\exampletext}
+% \end{Example}
+%
+% \bigskip
+%
+% \pagebreak[3]
+% \DescribeMacro{textformat=}
+% \NEWfeature*{v3.1}
+% With the option
+% \nopagebreak[3]
+% \begin{quote}
+% |textformat=|\meta{text format name}
+% \end{quote}
+% \nopagebreak[3]
+% you specify how the caption text will be typeset.
+% There are two standard caption text formats:
+%
+% \begin{Options}{\OptionLabel}
+% \item[empty]
+% The caption text will be suppressed.
+%
+% \item[simple]
+% The caption text will be typeset as it is.
+%
+% \item[period]
+% The caption text will be followed by a period.
+%
+% \item[\UserDefined]
+% Own text formats can be defined using |\Declare|\-|Caption|\-|Text|\-|Format|.
+% \SeeUserDefined
+% \end{Options}
+%
+% \iffalse
+% --------------------------------------------------------------------------- %
+% \fi
+%
+% \PageBreak
+% \subsection{Justification}
+% \label{justification}
+%
+% \DescribeMacro{justification=}
+% As addition to the caption format you could also specify a
+% \emph{caption justification}; it is specified with the option
+% \begin{quote}
+% |justification=|\meta{justification name}\quad.
+% \end{quote}
+%
+% You can choose one of the following:
+%
+% \begin{Options}{\OptionLabel}
+% \item[justified]
+% Typesets the caption as a normal paragraph.
+%
+% \item[centering]
+% Each line of the caption will be centered.
+%
+% \iffalse
+% \item[Centering]
+% \fi
+%
+% \item[centerlast]
+% The last line of each paragraph of the caption text will be centered.
+%
+% \item[centerfirst]
+% Only the first line of the caption will be centered.
+%
+% \item[raggedright]
+% Each line of the caption will be moved to the left margin.
+%
+% \iffalse
+% \item[RaggedRight]
+% Each line of the caption will be moved to the left margin using
+% the command |\RaggedRight| from the \package{ragged2e} package.
+% \else
+% \item[RaggedRight]
+% Each line of the caption will be moved to the left margin, too.
+% But this time the command |\RaggedRight| of the \package{ragged2e}
+% package will be used to achieve this.
+% The main difference to |raggedright| is that the word breaking
+% algorithm of \TeX\ will work inside captions.\footnote{%
+% The need for the \package{ragged2e} package will be detected at
+% run-time, therefore you maybe need a second \LaTeX\ run if this
+% option is used for the first time.}
+% \fi
+%
+% \item[raggedleft]
+% Each line of the caption will be moved to the right margin.
+%
+% \iffalse
+% \item[RaggedLeft]
+% Each line of the caption will be moved to the right margin using
+% the command |\RaggedLeft| from the \package{ragged2e} package.
+% \fi
+%
+% \item[\UserDefined]
+% Own justifications can be defined using |\Declare|\-|Caption|\-|Jus|\-|ti|\-|fi|\-|ca|\-|tion|.
+% \SeeUserDefined
+% \end{Options}
+%
+% Three examples:
+% \begin{Example}
+% \begin{quote}
+% |format=hang,justification=raggedright|
+% \end{quote}
+% \captionsetup{skip=0pt}
+% \example{format=hang,justification=raggedright}{\exampletext}
+% \end{Example}
+%
+% \begin{Example}
+% \begin{quote}
+% |format=hang,justification=centerlast|
+% \end{quote}
+% \captionsetup{skip=0pt}
+% \example{format=hang,justification=centerlast}{\exampletext}
+% \end{Example}
+%
+% \begin{Example}
+% \begin{quote}
+% |format=plain,labelsep=newline,justification=centering|
+% \end{quote}
+% \captionsetup{skip=0pt}
+% \example*{format=plain,labelsep=newline,justification=centering}{\exampletext}
+% \end{Example}
+%
+% \smallskip
+%
+% \PageBreak
+% \DescribeMacro{singlelinecheck=}
+% The standard \LaTeX\ document classes (\class{article}, \class{report}, and
+% \class{book}) automatically center a caption if it fits in one single line:
+%
+% \example*{}{A short caption.}
+%
+% \INFO
+% \Thispackage\ adapts this behavior and therefore usually ignores the
+% justification \& indention you have set with |justification=| \&
+% |indention=| in such case.
+% But you can switch this special treatment of such short captions off
+% with the option
+% \begin{quote}
+% |singlelinecheck=|\meta{bool}\quad.
+% \end{quote}
+% Using |false|, |no|, |off| or |0| for \meta{bool} switches the
+% extra centering off:
+% \begin{quote}
+% |singlelinecheck=false|
+% \end{quote}
+% Doing so the above short caption would look like
+%
+% \begingroup
+% \captionsetup{type=figure}
+% \ContinuedFloat
+% \example*{singlelinecheck=false}{A short caption.}
+% \endgroup
+%
+% You switch the extra centering on again by using |true|, |yes|, |on| or |1|
+% for \meta{bool}. (The default is on.)
+%
+% \iffalse
+% --------------------------------------------------------------------------- %
+% \fi
+%
+% \subsection{Fonts}
+% \label{fonts}
+%
+% \DescribeMacro{font=}
+% \DescribeMacro{labelfont=}
+% \DescribeMacro{textfont=}
+% There are three font options which affects different parts of the caption:
+% One affecting the whole caption (|font|), one which only affects the caption
+% label and separator (|label|\-|font|) and at least one which only affects the
+% caption text (|text|\-|font|).
+% You set them up using the options
+% \begin{quote}\begin{tabular}{@{}r@{}ll}
+% |font=| & \marg{font options} & ,\\
+% |labelfont=| & \marg{font options} & , and\\
+% |textfont=| & \marg{font options} & ,\\
+% \end{tabular}\end{quote}
+% where \meta{font options} is a list of comma separated font options.
+%
+% And these are the available font options:
+%
+% \begin{Options}{stretch=\meta{amount}}
+% \item[scriptsize] {\scriptsize Very small size}
+% \item[footnotesize] {\footnotesize The size usually used for footnotes}
+% \item[small] {\small Small size}
+% \item[normalsize] {\normalsize Normal size}
+% \item[large] {\large Large size}
+% \item[Large] {\Large Even larger size}
+% \end{Options}
+% \vspace{0pt}\pagebreak[3]
+% \begin{Options}{stretch=\meta{amount}}
+% \item[normalfont] {\normalfont Normal shape \& series \& family}
+%
+% \item[up] {\upshape Upright shape}
+% \item[it] {\itshape Italic shape}
+% \item[sl] {\slshape Slanted shape}
+% \item[sc] {\scshape Small Caps shape}
+%
+% \item[md] {\mdseries Medium series}
+% \item[bf] {\bfseries Bold series}
+%
+% \item[rm] {\rmfamily Roman family}
+% \item[sf] {\sffamily Sans Serif family}
+% \item[tt] {\ttfamily Typewriter family}
+% \end{Options}
+% \vspace{0pt}\pagebreak[3]
+% \begin{Options}{stretch=\meta{amount}}
+% \item[singlespacing] Single spacing \See{\Ref{setspace}}
+% \item[onehalfspacing] One-and-a-half spacing \See{\Ref{setspace}}
+% \item[doublespacing] Double spacing \See{\Ref{setspace}}
+% \item[stretch=\meta{amount}] |\setstretch|\marg{amount} \See{\Ref{setspace}}
+% \end{Options}
+% \vspace{0pt}\pagebreak[3]
+% \begin{Options}{stretch=\meta{amount}}
+% \item[normalcolor] |\normalcolor|
+% \item[color=\meta{colour}] |\color|\marg{colour}
+% {\small(If the \package{color} or \package{xcolor} package is loaded,
+% see \Ref{declare} for an example)}
+% \end{Options}
+% \vspace{0pt}\pagebreak[3]
+% \begin{Options}{stretch=\meta{amount}}
+% \item[normal] The combination of the options |normal|\-|color|,
+% |normal|\-|font|, |normal|\-|size|, and |single|\-|spacing|
+%
+% \item[\UserDefined]
+% Own font options can be defined using |\Declare|\-|Caption|\-|Font|.
+% \SeeUserDefined
+% \end{Options}
+%
+% If you use only one of these options you can omit the braces;
+% e.g., the options
+% |font={small}|
+% and
+% |font=small|
+% will give the same result.
+%
+% Three examples:
+% \begin{Example}
+% \begin{quote}
+% |font=it,labelfont=bf|
+% \end{quote}
+% \captionsetup{skip=0pt}
+% \example{font=it,labelfont=bf}{\exampletext}
+% \end{Example}
+%
+% \begin{Example}
+% \begin{quote}
+% |labelfont=sc,textfont=it|
+% \end{quote}
+% \captionsetup{skip=0pt}
+% \example{labelfont=sc,textfont=it}{\exampletext}
+% \end{Example}
+%
+% \begin{Example}
+% \begin{quote}
+% |font={small,stretch=0.80}|
+% \end{quote}
+% \captionsetup{skip=0pt}
+% \example{font={small,stretch=0.80}}{\exampletext}
+% \end{Example}
+%
+% \medskip
+%
+% \pagebreak[3]
+% \DescribeMacro{font+=}
+% \DescribeMacro{labelfont+=}
+% \DescribeMacro{textfont+=}
+% \NEWfeature*{v3.1}
+% You can also add font options to the current ones, so for example
+% \begin{quote}
+% |\captionsetup{font=small}|\\
+% |\captionsetup{font+=it}|
+% \end{quote}
+% is identical to
+% \begin{quote}
+% |\captionsetup{font={small,it}}|
+% \end{quote}
+%
+% \iffalse
+% --------------------------------------------------------------------------- %
+% \fi
+%
+% \subsection{Margins and further paragraph options}
+% \label{margins}
+%
+% \DescribeMacro{margin=}
+% \DescribeMacro{width=}
+% For all captions you can specify \emph{either} an extra margin \emph{or}
+% a fixed width:~\footnote{Only fixed widths are supported here; if you are
+% looking for a way to limit the width of the caption to the width of the
+% figure or table, please take a look at the \package{floatrow}\cite{floatrow}
+% or \package{threeparttable}\cite{threeparttable} package.}
+% \begin{quote}\begin{tabular}{@{}r@{}ll}
+% |margin=| & \meta{amount} & \emph{--or--}\\
+% |margin=| & |{|\meta{left amount}|,|\meta{right amount}|}| & \emph{--or--}\\
+% |width=| & \meta{amount} & \\
+% \end{tabular}\end{quote}
+% \NEWfeature{v3.1}
+% If you specify just one \meta{amount} for the margin, it will be used for
+% both, the left and right margin, e.g.~|margin=|\x|10pt| is equivalent to
+% |margin=|\x|{10pt,10pt}|.
+% In two-side documents the left and right margin will be swapped on even pages.
+% \DescribeMacro{oneside}
+% \DescribeMacro{twoside}
+% To prevent this you can specify the option |oneside| additionally,
+% e.g.~|\caption|\-|setup{margin=|\x|{0pt,10pt},|\x|oneside}|.\par
+% But if you are specifying a width, then both, the left and the right margin,
+% will have the same amount.
+%
+% Three examples will illustrating this:
+% \begin{Example}
+% \begin{quote}
+% |margin=10pt|
+% \end{quote}
+% \captionsetup{skip=0pt}
+% \example{margin=10pt}{\exampletext}
+% \end{Example}
+%
+% \begin{Example}
+% \begin{quote}
+% |margin={1cm,0cm}|
+% \end{quote}
+% \captionsetup{skip=0pt}
+% \example{margin={1cm,0cm}}{\exampletext}
+% \end{Example}
+%
+% \begin{Example}
+% \begin{quote}
+% |width=.75\textwidth|
+% \end{quote}
+% \captionsetup{skip=0pt}
+% \example{width=.75\textwidth}{\exampletext}
+% \end{Example}
+%
+% \begin{Note}
+% When the caption is placed beside the contents (for example in a |SC|\-|figure|
+% environment offered by the \package{sidecap} package\cite{sidecap}) or the
+% figure is an in-text figure (for example in a |wrap|\-|figure| environment
+% offered by the \package{wrapfig} package\cite{wrapfig}), the margin setting
+% will be automatically reset to |0pt| at the very beginning of the environment.
+% But if you really want to setup an extra margin for these environments, you can
+% do so by setting this margin either inside the environment itself, of by
+% specifying a margin for this particular environment,
+% e.g.~|\caption|\-|setup[SC|\-|figure]{margin=|\x|10pt}|.
+% \end{Note}
+%
+% \begin{Expert}
+% \DescribeMacro{margin*=}
+% \NEWfeature*{v3.1}
+% There is also a starred variant of the |margin=| option, |margin*=|, which only
+% changes the margin if no width was set.
+% \end{Expert}
+%
+% \begin{Expert}
+% \DescribeMacro{minmargin=}
+% \DescribeMacro{maxmargin=}
+% \NEWfeature*{v3.1}
+% You can also set a minimum or maximum margin amount. This can be useful for
+% limiting the margin amount in smaller environments, e.g.~|minipage|s.
+% For example the \SmF\ document classes limit the margin amount to
+% |maxmargin=|\x|0.1\linewidth|. (See \Ref{SMF})
+% \end{Expert}
+%
+% \medskip
+%
+% \pagebreak[3]
+% \DescribeMacro{parskip=}
+% This option is useful for captions containing more than one paragraph.
+% It specifies the extra vertical space inserted between them:
+% \begin{quote}
+% |parskip=|\meta{amount}
+% \end{quote}
+% One example:
+% \begin{Example}
+% \begin{quote}
+% |margin=10pt,parskip=5pt|
+% \end{quote}
+% \captionsetup{skip=0pt}
+% \example{margin=10pt,parskip=5pt}{%
+% First paragraph of the caption. This one contains some test, just to
+% show how these options affect the layout of the caption.\par
+% Second paragraph of the caption. This one contains some text, too, to
+% show how these options affect the layout of the caption.}
+% \end{Example}
+%
+% \pagebreak[3]
+% \DescribeMacro{hangindent=}
+% The option
+% \begin{quote}
+% |hangindent=|\meta{amount}
+% \end{quote}
+% is for setting up a hanging indention starting from the second line of each
+% paragraph. If the caption contains just a single paragraph, using this option
+% leads to the same result as the option |indention=|\meta{amount} you already
+% know about.
+% But if the caption contains multiple paragraphs you will notice the difference:
+%
+% \begin{Example}
+% \begin{quote}
+% |format=hang,indention=-.5cm|
+% \end{quote}
+% \captionsetup{skip=0pt}
+% \example{format=hang,indention=-.5cm}{%
+% First paragraph of the caption. This one contains some test, just to
+% show how these options affect the layout of the caption.\par
+% Second paragraph of the caption. This one contains some text, too, to
+% show how these options affect the layout of the caption.}
+% \end{Example}
+%
+% \begin{Example}
+% \begin{quote}
+% |format=hang,hangindent=-.5cm|
+% \end{quote}
+% \captionsetup{skip=0pt}
+% \example{format=hang,hangindent=-.5cm}{%
+% First paragraph of the caption. This one contains some test, just to
+% show how these options affect the layout of the caption.\par
+% Second paragraph of the caption. This one contains some text, too, to
+% show how these options affect the layout of the caption.}
+% \end{Example}
+%
+% \begin{Note}
+% If your caption contains more than one paragraph, you have
+% to specify an alternative caption for the list-of-figures using the
+% optional argument of |\caption| or |\caption|\-|of|, otherwise you will
+% get an error message.
+% \end{Note}
+%
+% \iffalse
+% --------------------------------------------------------------------------- %
+% \fi
+%
+% \PageBreak
+% \subsection{Styles}
+% \label{style}
+%
+% \DescribeMacro{style=}
+% A suitable combination of caption options is called \emph{caption style}.
+% You can compare them more or less to page styles which you set up with
+% |\page|\-|style|;
+% the caption style provides all settings for a whole caption layout.
+%
+% You switch to an already defined caption style with the option
+% \begin{quote}
+% |style=|\meta{style name}\quad.
+% \end{quote}
+% \Thispackage\ pre-defines two styles: |base| and |default|.
+%
+% \NEWfeature{v3.1}
+% The |base| style puts all options you already know about to values reflecting
+% the look of the captions when using one of the base \LaTeX\ document classes
+% \class{article}, \class{report}, and \class{book}.
+% This means that specifying the option
+% \begin{quote}
+% |style=base|
+% \end{quote}
+% has the same effect as specifying all these options:
+% \begin{quote}
+% |format=plain,labelformat=default,labelsep=colon,|\\
+% |justification=justified,font={},labelfont={},|\\
+% |textfont={},margin=0pt,indention=0pt|\\
+% |parindent=0pt,hangindent=0pt,singlelinecheck=true|
+% \end{quote}
+% \begin{Annotation*}
+% But |justification=centering,indention=0pt| will be set if
+% the caption fits into a single line.
+% \end{Annotation*}
+%
+% In contrast the |default| style follows the default values, reflecting
+% the look of the captions given by the document class you actually use.
+% This style is selected by default and represents these options:
+% \begin{quote}
+% |format=default,labelformat=default,labelsep=default,|\\
+% |justification=default,font=default,labelfont=default,|\\
+% |textfont=default,margin=0pt,indention=0pt|\\
+% |parindent=0pt,hangindent=0pt,singlelinecheck=true|
+% \end{quote}
+% \begin{Annotation*}
+% But again |justification=centering,indention=0pt| will be set if
+% the caption fits into a single line.
+% \end{Annotation*}
+%
+% So if you use one of the base \LaTeX\ document classes \class{article},
+% \class{report}, or \class{book}, both caption styles, |base| and |default|,
+% point to (nearly) the same settings.
+%
+% \begin{Note}
+% Own caption styles can be defined using |\Declare|\-|Caption|\-|Style|.\LineBreak
+% \SeeUserDefined
+% \end{Note}
+%
+% \iffalse
+% --------------------------------------------------------------------------- %
+% \fi
+%
+% \subsection{Skips}
+% \label{skips}
+%
+% \DescribeMacro{skip=}
+% The vertical space between the caption and the figure or table contents is
+% controlled by the option
+% \begin{quote}
+% |skip=|\meta{amount}\quad.
+% \end{quote}
+% The standard \LaTeX\ document classes \class{article}, \class{report} and
+% \class{book} preset it to |skip=|\x|10pt|, but other document classes may
+% use a different amount.
+%
+% \bigskip
+%
+% \pagebreak[3]
+% \DescribeMacro{position=}
+% The |\caption| command offered by \LaTeX{} has a design flaw:
+% The command does not know if it stands on the beginning of the figure or
+% table, or at the end. Therefore it does not know where to put the space
+% separating the caption from the content of the figure or table.
+% While the standard implementation always puts the space above the caption
+% in floating environments (and inconsistently below the caption in
+% |long|\-|table|s), the implementation offered by this package is more
+% flexible:
+% By giving the option
+% \begin{quote}
+% |position=top|\quad or\quad |position=above|
+% \end{quote}
+% it's assumed that the caption is standing at the \emph{top} of the
+% environment and therefore the space setup with |skip=|\x\meta{amount}
+% is placed below the caption.
+% (Please note that |position=|\x|top| does \emph{NOT} mean that the
+% caption is actually placed at the top of the figure or table.
+% Instead the caption is usually placed where you place the |\caption|
+% command.)
+% But with
+% \begin{quote}
+% |position=bottom|\quad or\quad |position=below|
+% \end{quote}
+% it's assumed that the caption is standing at the \emph{bottom} of the
+% environment and therefore the space is placed above the caption.
+% And finally with
+% \begin{quote}
+% |position=auto|\quad {\small(which is the default setting)}
+% \end{quote}
+% \thispackage\ tries its best to determine the actual position of
+% the caption on its own. Please note that while this is successfully in
+% most cases, it could give wrong results under rare circumstances.
+%
+% \medskip
+%
+% \pagebreak[3]
+% \DescribeMacro{figureposition=}
+% \DescribeMacro{tableposition=}
+% The |position| option is especially useful when used together with the
+% optional argument of the |\caption|\-|setup| command.
+% \See{also \Ref{captionsetup}}\par
+% For example
+% \begin{quote}
+% |\captionsetup[table]{position=above}|
+% \end{quote}
+% causes all captions within tables to be treated as captions \emph{above}
+% the table (regarding spacing around it).
+% Because this is a very common setting, \thispackage\ offers
+% the abbreviating options |figure|\-|position=|\x\meta{pos} and
+% |table|\-|position=|\x\meta{pos}, e.g.
+% \begin{quote}
+% |\usepackage[|\ldots|,tableposition=top]{caption}|
+% \end{quote}
+% is equivalent to
+% \begin{quote}
+% |\usepackage[|\ldots|]{caption}|\\
+% |\captionsetup[table]{position=top}|
+% \end{quote}
+%
+% \medskip
+%
+% \INFO
+% Please note that the options |skip=|, |position=|, |figure|\-|position=|,
+% and |table|\-|position=| do not always have an effect.
+% Since it's a matter of the document class to supply the environments
+% |figure| and |table|, it could use its very own spacing, and could
+% decide for itself if the caption will be typeset as ``top'' or ``bottom''
+% caption.
+% For example the \KOMAScript\ document classes support the |skip=|
+% setting, but will always typeset |figure| captions as ``bottom'' captions,
+% and |table| captions are dependent on the global option
+% |table|\-|captions|\-|above| resp.\ |table|\-|captions|\-|below|.
+% \See{\Ref{KOMA}}
+%
+% Furthermore some packages control the behavior of the spacing above and
+% below the caption for themself, e.g.~the \package{float}, the
+% \package{floatrow}, and the \package{supertabular} package.
+%
+% \bigskip
+%
+% \begin{Expert*}
+% Internally the skip between caption and contents is represented by
+% |\above|\-|caption|\-|skip| (which is always set above the caption in
+% \LaTeX{}s implementation).
+% But there is a second value |\below|\-|caption|\-|skip| (usually set to
+% |0pt| by default) which is set below the caption in \LaTeX{}s implementation,
+% but on the other side than |\above|\-|caption|\-|skip| by this package.
+% So technically speaking, this package swaps the meaning of these two skips
+% when |position=|\x|top| is set.
+% Please note that there are several packages around which do the same trick
+% (like the \package{ftcap}, the \package{nonfloat}, and the \package{topcap}
+% package), so the usage of the \package{caption} option |position=| is not
+% supported if one of these packages will be used, too.
+% \end{Expert*}
+%
+% \iffalse
+% --------------------------------------------------------------------------- %
+% \fi
+%
+% \subsection{Lists}
+% \label{lists}
+%
+% \DescribeMacro{list=}
+% \NEWfeature*{v3.1}
+% The |\caption| command usually places an entry in the List of Figures
+% resp.~List of Tables. You can either suppress that individually by giving an
+% empty optional argument to |\caption| {\small(see \Ref{caption})}, or
+% programmatically by saying
+% \begin{quote}
+% |list=no|\quad(or any other boolean value instead of |no|)\quad.~\footnote{%
+% Please note that the \package{subfig} package\cite{subfig} is not supporting
+% this option, it uses the counters \texttt{lofdepth} \& \texttt{lotdepth} for
+% this purpose instead.}
+% \end{quote}
+%
+% \pagebreak[3]
+% \DescribeMacro{listformat=}
+% \NEWfeature*{v3.1}
+% With the option
+% \nopagebreak[3]
+% \begin{quote}
+% |listformat=|\meta{list format name}
+% \end{quote}
+% \nopagebreak[3]
+% you can specify how the |figure| or |table| number will be typeset within
+% the List of Figures resp.~List of Tables.
+% There are five standard caption list formats:
+%
+% \begin{Options}{\OptionLabel}
+% \item[empty]
+% No number will be typeset.
+%
+% \item[simple]
+% The number will be typeset with label prefix.
+%
+% \item[parens]
+% The number will be typeset in parentheses, with label prefix.
+%
+% \item[subsimple]
+% Same as |simple|, but without label prefix. (default)
+%
+% \item[subparens]
+% Same as |parens|, but without label prefix.
+%
+% \item[\UserDefined]
+% Own list formats can be defined using |\Declare|\-|Caption|\-|List|\-|Format|.
+% \SeeUserDefined
+% \end{Options}
+%
+% The prefix ($=$|\p@figure| resp.~|\p@table|), which runs ahead of the
+% number ($=$|\the|\-|figure| resp.~|\the|\-|table|) in lists (e.g.~List of
+% Figure/Table) and references, is usually empty,
+% so the list formats |simple| and |subsimple| gives equal results;
+% same with |parens| and |subparens|.
+% But this can be different for sub-figures or sub-tables listed in the List of
+% Figures resp.~List of Tables, or when the label prefix is redefined for a
+% different purpose.\footnote{%
+% Sub-figures and sub-tables can be typeset using the \package{subcaption}
+% or \package{subfig} package.}
+%
+% \iffalse
+% --------------------------------------------------------------------------- %
+% \fi
+%
+% \subsection{Names}
+% \label{names}
+%
+% \DescribeMacro{name=}
+% \NEWfeature*{v3.1}
+% The option
+% \begin{quote}
+% |name=|\meta{name}
+% \end{quote}
+% changes the name of the \emph{current} environment.
+% This could be useful in conjunction with the optional argument of
+% |\caption|\-|setup|, e.g.
+% \begin{quote}
+% |\captionsetup[wrapfigure]{name=Fig.}|
+% \end{quote}
+% changes the name to ``Fig.'' for all |wrap|\-|figure|s (while all the other
+% figure captions will still have ``Figure'' as name).
+%
+% \iffalse
+% --------------------------------------------------------------------------- %
+% \fi
+%
+% \subsection{Types}
+% \label{types}
+%
+% \DescribeMacro{type=}
+% The |\caption| command can typeset captions for different types,
+% e.g.~|figure| and |table|. If you try to use the |\caption| command outside
+% these environments you will get an error message, because it does not know what
+% kind of caption do you want to have here. But in such situations you can set
+% the caption type manually with
+% \begin{quote}
+% |type=|\meta{float type}
+% \end{quote}
+% prior to the usage of the |\caption| command (and other commands like
+% |\Continued|\-|Float|, or |\sub|\-|caption|\-|box| offered by the
+% \package{subcaption} package, or |\sub|\-|float| offered by the
+% \package{subfig} package\cite{subfig}),
+% for example within an non-floating environment like |minipage|:
+% \begin{quote}
+% |\noindent\begin{minipage}{\textwidth}|\\
+% | \captionsetup{type=figure}|\\
+% | \subfloat{|\ldots|}|\\
+% | |\ldots\\
+% | \caption{|\ldots|}|\\
+% |\end{minipage}|
+% \end{quote}
+%
+% \begin{Expert}
+% There is also a starred variant of this option, |type*=|\meta{float type},
+% which behaves different than |type=|\meta{float type} if the
+% \package{hyperref} package\cite{hyperref} is loaded: While |type=| sets an
+% hyperlink anchor (if |hypcap=|\x|true| is set), |type*=| does not.
+% (See also \Ref{hyperref}\,)
+% \end{Expert}
+% \begin{Expert}
+% \emph{\DefaultNoteText:} Please don't re-define the internal macro |\@captype|
+% for yourself, like suggested by some documentations, always use
+% |\caption|\-|setup{type=|\x\ldots|}| instead.
+% \end{Expert}
+%
+% \medskip
+%
+% Own float types can be defined with
+% |\Declare|\-|Floating|\-|Environment| offered by the \package{newfloat} package,
+% |\new|\-|float| offered by the \package{float} package\cite{float}, or
+% |\Declare|\-|New|\-|Float|\-|Type| offered by the \package{floatrow} package\cite{float}.
+%
+% \medskip
+%
+% \INFO % \NEWdescription{v3.1}
+% Please note that you should use the option |type=| only
+% \emph{inside} boxes or environments (like |\par|\-|box| or |mini|\-|page|),
+% at best one where no page break could happen between contents and caption.
+% Furthermore some visual side-effects (e.g.~mixed-up figure and table settings
+% regarding captions) could occur without using a box or environment,
+% therefore a warning message will be issued if you try to do so.\footnote{%
+% You only get this warning message if you use \eTeX\ as underlying \TeX\ engine.}
+%
+% \iffalse
+% --------------------------------------------------------------------------- %
+% \fi
+%
+% \clearpage
+% \section{Commands}
+%
+% \subsection{Typesetting captions}
+% \label{caption}
+% \label{captionlistentry}
+%
+% \DescribeMacro{\caption}
+% The command
+% \begin{quote}
+% |\caption|\oarg{list entry}\marg{heading}
+% \end{quote}
+% typesets the caption inside a floating environment like |figure| or |table|.
+% Well, you already know this, but \thispackage\ offers an extension:
+% If you leave the argument \meta{list entry} empty, no entry in the list of
+% figures or tables will be made. For example:
+% \begin{quote}
+% |\caption[]{A figure without list entry.}|
+% \end{quote}
+%
+% \begin{Expert}
+% Please remember that the \meta{heading} is a so-called \emph{moving} argument,
+% if no \meta{list entry} has been given. But if a \meta{list entry} is given,
+% this argument is moving instead.
+% ``\emph{Moving} argument'' means that the argument will be written to the
+% list-of file, make it appearing in the ``List of Figures'' resp.
+% ``List of Tables'', too.
+% \emph{Moving} arguments are not allowed to contain \emph{fragile} commands,
+% everything must be \emph{robust}, otherwise the argument could get
+% \emph{broken}, resulting in strange errors at the next \LaTeX\ run.
+% Some \emph{fragile} commands could be \emph{protected} by a leading |\protect|,
+% own definitions could get defined with |\Declare|\-|Robust|\-|Command| instead of
+% |\new|\-|command| to make them \emph{robust}.
+%
+% An example: |\caption{${}^{137}_{\phantom{1}55}$Cs}| will cause errors since
+% |\phantom| is \emph{fragile}.
+% So we have either have to use the optional argument \meta{list entry}
+% (e.g.~|\caption[${}^|\x|{137}_|\x|{55}$|\x|Cs]|\x|{${}^|\x|{137}_|\x|{\phantom{1}55}$|\x|Cs}|)
+% or add |\protect| to prevent the |\phantom| command from getting \emph{broken}:
+% |\caption{${}^|\x|{137}_|\x|{|\textcolor{blue}{\cs{protect}}|\phantom{1}55}$|\x|Cs}|.
+%
+% But sometimes even this is not sufficient. The reason behind is the so-called
+% single-line-check: It puts the \meta{heading} into a horizontal box to determine
+% the width of the caption, and this could cause error messages, too.
+% An example:
+% |\caption{A| |scheme.| |\[V_{C}| |\sim| |\left| |\{| |\begin{array}{cc}|
+% |E_{g}| |&| |\textrm{p-n}| |\\| |e\phi_{B}| |&| |\textrm{M-S}| |\end{array}|
+% |\right.| |\]}|.
+% Using |\caption[A| |scheme]{|\ldots|}| is not sufficient here, it's still
+% leading to errors. (``\texttt{Missing \$ inserted.}'')
+% So we have to put a |\caption|\-|setup{single|\-|line|\-|check=|\x|off}|
+% just in front of the |\caption| command additionally.
+%
+% For more information about \emph{moving} arguments and \emph{fragile} \&
+% \emph{robust} commands, take a closer look at your \LaTeX\ manual or visit
+% \url{http://www-h.eng.cam.ac.uk/help/tpl/textprocessing/teTeX/latex/latex2e-html/fragile.html}.
+% \end{Expert}
+%
+% \medskip
+%
+% \pagebreak[3]
+% \DescribeMacro{\caption*}
+% The \package{longtable} package defines the command |\caption*| which
+% typesets the caption without label and without entry in the list of tables.
+% An example:
+% \begin{quote}
+% |\begin{longtable}{|\ldots|}|\\
+% | \caption*{A table}\\|\\
+% | |\ldots\\
+% |\end{longtable}|
+% \end{quote}
+% looks like
+% \DeleteShortVerb{\|}
+% \vskip\intextsep
+% \begin{minipage}{\linewidth}
+% \captionsetup{type=table,position=t}
+% \caption*{A table}
+% \centering
+% \begin{tabular}{r|rr}
+% & x & y \\\hline
+% a & 1 & 2 \\
+% b & 3 & 4 \\
+% \end{tabular}
+% \end{minipage}
+% \vskip\intextsep
+% \MakeShortVerb{\|}
+% \Thispackage\ offers this feature, too, so you can use this command now within
+% every floating environment like |figure| or |table|, like:
+% \begin{quote}
+% |\begin{table}|\\
+% | \caption*{A table}|\\
+% | |\ldots\\
+% |\end{table}|
+% \end{quote}
+%
+% \pagebreak[3]
+% \DescribeMacro{\captionof}
+% \DescribeMacro{\captionof*}
+% Sometimes you want to typeset a caption \emph{outside} a floating environment,
+% putting a figure within a non-floating |mini|\-|page| for instance.
+% For this purpose \thispackage\ offers the command
+% \begin{quote}
+% |\captionof|\marg{float type}\oarg{list entry}\marg{heading}\quad.
+% \end{quote}
+% Note that the first argument, the \meta{float type}, is mandatory here, because
+% the |\captionof| command needs to know which name to put into the caption label
+% (e.g. ``Figure'' or ``Table'') and in which list to put the contents entry.
+% An example:
+% \begin{quote}
+% |\captionof{table}{A table}|
+% \end{quote}
+% typesets captions like this:
+% \begin{Example}
+% \captionsetup{position=top}
+% \captionof{table}{A table}
+% \end{Example}
+%
+% The star variant |\caption|\-|of*| has the same behavior as the |\caption*|
+% command:
+% It typesets the caption without label and without entry to the list of figures
+% or tables.
+%
+% \INFO % \NEWdescription{v3.1}
+% Since |\caption|\-|of| uses the option |type| internally, the same
+% restrictions as for the |type| option apply here, so you should use both
+% |\caption|\-|of| and |\caption|\-|of*| only \emph{inside} boxes or
+% environments, too.
+% \See{\Ref{types}}
+%
+% \bigskip
+%
+% \pagebreak[3]
+% \DescribeMacro{\captionlistentry}
+% \NEWfeature*{v3.1}
+% Under certain circumstances it could be useful to make a list-of-figure
+% (or table) entry on its own.
+% This could be achieved with
+% \begin{quote}
+% |\captionlistentry|\oarg{float type}\marg{list entry}\quad.
+% \end{quote}
+%
+% One example: It's quite easy to have a |long|\-|table| with captions above the
+% contents and a single list entry which points to the first page of the table:
+% \begin{quote}
+% |\begin{longtable}{|\ldots|}|\\
+% | \caption{|\ldots|}\\|\\
+% |\endfirsthead|\\
+% | \caption[]{|\ldots|}\\|\\
+% |\endhead|\\
+% | |\ldots
+% \end{quote}
+% But since the \package{longtable} package does not offer an
+% |\end|\-|first|\-|foot| command, you cannot easily have captions \emph{below}
+% the table contents and a single list entry which points to the first page of
+% the table.
+% Here is were the |\caption|\-|list|\-|entry| command could be used:
+% \begin{quote}
+% |\begin{longtable}{|\ldots|}|\\
+% | \caption[]{|\ldots|}\\|\\
+% |\endfoot|\\
+% | \captionlistentry{|\ldots|}|\\
+% | |\ldots
+% \end{quote}
+%
+% \begin{Annotation*}
+% Another example can be found in \Ref{examples}.
+% \end{Annotation*}
+%
+% \begin{Expert}
+% There is also a starred variant, |\caption|\-|list|\-|entry*|, which does not
+% increment the \meta{float type} counter.
+% (Note that inside |long|\-|table| environments |\caption|\-|list|\-|entry|
+% never increments the |table| counter. See also \Ref{longtable}.)
+% \end{Expert}
+%
+% \begin{Expert}
+% Please note that \meta{list entry} is a \emph{moving} argument, so everything
+% it contains must be \emph{robust}. (See also explanation of |\caption|)
+% \end{Expert}
+%
+% \subsection{Setting options}
+% \label{captionsetup}
+%
+% \DescribeMacro{\captionsetup}
+% We already know the |\caption|\-|setup| command (see \Ref{usage}),
+% but this time we get enlighten about its optional argument
+% \meta{float type}.
+%
+% Remember, the syntax of this command is
+% \begin{quote}
+% |\captionsetup|\oarg{float type}\marg{options}\quad.
+% \end{quote}
+% If a \meta{float type} gets specified, all the \meta{options} don't
+% change anything at this time. Instead they only get marked for a later use,
+% when a caption inside of a floating environment of the particular type
+% \meta{float type} gets typeset.
+% For example
+% \begin{quote}
+% |\captionsetup[figure]|\marg{options}
+% \end{quote}
+% forces captions within a |figure| environment to use the given \meta{options}.
+%
+% Here comes an example to illustrate this:
+% \begin{quote}
+% |\captionsetup{font=small}|\\
+% |\captionsetup[figure]{labelfont=bf,textfont=it}|
+% \end{quote}
+% gives captions like this:
+% \begin{Example}
+% \captionsetup{font=small}
+% \captionsetup[figure]{labelfont=bf,textfont=it}
+% \begingroup
+% \captionof{figure}{A figure}
+% \endgroup
+% \captionsetup{position=top}
+% \begingroup
+% \captionof{table}{A table}
+% \endgroup
+% \end{Example}
+% As you see the command |\caption|\-|setup[figure]{|\ldots|}| only changes
+% the look of the |figure| caption labels, not touching the other ones.
+%
+% As \meta{float type} you can usually give one of these two only:
+% |figure| or |table|.
+% But as we will see later some \LaTeX\ packages (like the \package{floatrow},
+% \package{longtable}, and \package{sidecap} package for example) and also
+% this package offer additional environments with captions and these two
+% commands can also be used with them.
+% \See{\Ref{declare} and \Ref{packages}}
+%
+% \begin{Expert}
+% \NEWfeature{v3.1}
+% There is also a starred variant of |\caption|\-|setup|:
+% \begin{quote}
+% |\captionsetup*|\oarg{float type}\marg{options}
+% \end{quote}
+% While the non-starred variant can give you warnings---for example if the
+% \meta{options} are actually not used throughout the document
+% (e.g.~a |\caption|\-|setup[table]{font=|\x|sf}| without a |table|)---the
+% starred variant will not.
+% \iffalse
+% This can get quite useful when setting generic options which are independent
+% of a specific document.
+% \fi
+% \end{Expert}
+%
+% \medskip
+%
+% \pagebreak[3]
+% \DescribeMacro{\clearcaptionsetup}
+% If you want to get rid of these parameters marked for an automatic use within
+% a particular environment you can use the command
+% \begin{quote}
+% |\clearcaptionsetup|\oarg{option}\marg{float type}\quad.
+% \end{quote}
+%
+% For example |\clearcaptionsetup{figure}| would clear all the extra handling
+% for figures in the example above:
+% \begin{quote}
+% |\captionsetup{font=small}|\\
+% |\captionsetup[figure]{labelfont=bf,textfont=it}|\\
+% \ldots\\
+% | \caption{A figure}|\\
+% \ldots\\
+% |\clearcaptionsetup{figure}|\\
+% \ldots\\
+% | \caption{A figure}|\\
+% \ldots
+% \end{quote}
+% \begin{Example}
+% \captionsetup{font=small}
+% \captionsetup[figure]{labelfont=bf,textfont=it}
+% \begingroup
+% \captionof{figure}{A figure}
+% \endgroup
+% \captionsetup{position=top}
+% \clearcaptionsetup{figure}
+% \begingroup
+% \captionof{figure}{A figure}
+% \endgroup
+% \end{Example}
+%
+% \pagebreak[3]
+% \NEWfeature{v3.1}
+% If an optional argument \meta{option} is given, only the settings regarding
+% this particular \meta{option} are cleared.\footnote{You can only specify
+% \emph{one} option here, not a list of options.
+% If you want to clean more than one option, you need to use more than one
+% \cs{clear}\-\texttt{caption}\-\texttt{setup}.}
+% While the example above not only clears the options
+% |labelfont=bf,|\x|textfont=it|
+% for figures (but all options for figures instead),
+% this one would only clear the |labelfont=bf| setting, leaving all other
+% settings for figures intact:
+% \begin{quote}
+% |\captionsetup{font=small}|\\
+% |\captionsetup[figure]{labelfont=bf,textfont=it}|\\
+% \ldots\\
+% | \caption{A figure}|\\
+% \ldots\\
+% |\clearcaptionsetup[labelfont]{figure}|\\
+% \ldots\\
+% | \caption{A figure}|\\
+% \ldots
+% \end{quote}
+% \begin{Example}
+% \captionsetup{font=small}
+% \captionsetup[figure]{labelfont=bf,textfont=it}
+% \begingroup
+% \captionof{figure}{A figure}
+% \endgroup
+% \captionsetup{position=top}
+% \clearcaptionsetup[labelfont]{figure}
+% \begingroup
+% \captionof{figure}{A figure}
+% \endgroup
+% \end{Example}
+% \begin{Expert}
+% Analogous to |\caption|\-|setup*| there is also a starred form
+% |\clear|\-|caption|\-|setup*| which suppresses warnings if the given
+% \meta{option} was not setup for the specified \meta{float type}.
+% \end{Expert}
+%
+% \medskip
+%
+% \pagebreak[3]
+% \DescribeMacro{\showcaptionsetup}
+% For debugging purposes the command
+% \nopagebreak[3]
+% \begin{quote}
+% |\showcaptionsetup|\marg{float type}
+% \end{quote}
+% \nopagebreak[3]
+% is offered. It generates a log file entry, showing the given options
+% for the specified \meta{float type}. For example
+% \begin{quote}
+% |\captionsetup[figure]{labelfont=bf,textfont=it}|\\
+% |\showcaptionsetup{figure}|
+% \end{quote}
+% gives the info:
+% \begin{quote}\small
+% |Caption Info: Option list on `figure'|\\
+% |Caption Data: {labelfont=bf,textfont=it} on input line 5.|
+% \end{quote}
+%
+% \pagebreak[3]
+% \subsection{Continued floats}
+% \label{ContinuedFloat}
+%
+% \DescribeMacro{\ContinuedFloat}
+% Sometimes you want to split figures or tables without giving them
+% their own reference number. This is what the command
+% \begin{quote}
+% |\ContinuedFloat|
+% \end{quote}
+% is for; it should be used as first command inside the floating environment.
+% It prevents the incrementation of the relevant counter (usually done by
+% |\caption|), so a figure or table containing a |\Continued|\-|Float| inside
+% gets the same reference number as the figure or table before.
+% An example:
+% \begin{quote}
+% |\begin{table}|\\
+% | \caption{A table}|\\
+% | |\ldots\\
+% |\end{table}|\\
+% \ldots\\
+% |\begin{table}\ContinuedFloat|\\
+% | \caption{A table (cont.)}|\\
+% | |\ldots\\
+% |\end{table}|
+% \end{quote}
+% gives the following result:
+% \begin{Example}
+% \captionsetup{type=table,position=b,skip=0pt}
+% \caption{A table}
+% \centerline{\ldots}
+% \end{Example}
+% \begin{Example}
+% \captionsetup{type=table,position=b,skip=0pt}
+% \ContinuedFloat
+% \caption{A table (cont.)}
+% \centerline{\ldots}
+% \end{Example}
+%
+% \bigskip
+%
+% \NEWfeature{v3.1}
+% Furthermore the |\Continued|\-|Float| command executes options associated with
+% the type name ``|Continued|\-|Float|''. For example this can be used to switch
+% to a different label format for continued figures or tables, as shown here:
+% \begin{quote}
+% |\DeclareCaptionLabelFormat{continued}{Continued #1~#2}|\\
+% |\captionsetup[ContinuedFloat]{labelformat=continued}|\\
+% \ldots\\
+% |\begin{table}\ContinuedFloat|\\
+% | \caption{A table}|\\
+% | |\ldots\\
+% |\end{table}|
+% \end{quote}
+% \begin{Example}
+% \captionsetup{type=table,position=b,skip=0pt}
+% \captionsetup[ContinuedFloat]{labelformat=continued1}
+% \ContinuedFloat
+% \caption{A table}\label{continued1}
+% \centerline{\ldots}
+% \end{Example}
+% \smallskip
+% \See{\Ref{declare} for an explanation of
+% \cs{Declare}\-\texttt{Caption}\-\texttt{Label}\-\texttt{Format}.}
+%
+% \medskip
+%
+% There is also a \LaTeX\ counter called |Continued|\-|Float| which could be
+% used for own purposes.
+% For ordinary (floating) environments it's set to zero, to one for the first
+% continued float, to two inside the second one, and so on.
+% So every |\Continued|\-|Float| increments this counter and a floating
+% environment without |\Continued|\-|Float| command resets this counter to zero.
+% An example:
+% \begin{quote}
+% |\DeclareCaptionLabelFormat{cont}{#1~#2\alph{ContinuedFloat}}|\\
+% |\captionsetup[ContinuedFloat]{labelformat=cont}|\\
+% \ldots\\
+% |\begin{table}\ContinuedFloat|\\
+% | \caption{A table}|\\
+% | |\ldots\\
+% |\end{table}|
+% \end{quote}
+% \begin{Example}
+% \captionsetup{type=table,position=b,skip=0pt}
+% \captionsetup[ContinuedFloat]{labelformat=continued2}
+% \ContinuedFloat
+% \caption{A table}\label{continued2}
+% \centerline{\ldots}
+% \end{Example}
+% \medskip
+% A reference to this table would still result in the output
+% ``\autoref{continued2}'' since only the caption label format was changed.
+% If you would like to use the |Continued|\-|Float| counter for the references,
+% too, you could redefine the command |\the|\-|Continued|\-|Float| instead,
+% which will be appended to the figure or table counter automatically in
+% continued floats and is preset to be empty.
+% \begin{quote}
+% |\renewcommand\theContinuedFloat{\alph{ContinuedFloat}}|\\
+% \ldots\\
+% |\begin{table}\ContinuedFloat|\\
+% | \caption{A table}|\\
+% | |\ldots\\
+% |\end{table}|
+% \end{quote}
+% \begin{Example}
+% \captionsetup{type=table,position=b,skip=0pt}
+% \renewcommand\theContinuedFloat{\alph{ContinuedFloat}}
+% \ContinuedFloat
+% \caption{A table}\label{continued3}
+% \centerline{\ldots}
+% \end{Example}
+% \medskip
+% A reference to that table would result in the output ``\autoref{continued3}''.
+%
+% \pagebreak[3]
+% \DescribeMacro{\ContinuedFloat*}
+% Suppose you want to start the first figure or table of such a series with a
+% kind of ``Figure 7a'' and not with ``Figure 7'' (and the second one with
+% ``Figure 7b'' instead of ``Figure 7a'').
+% This is possible, too, by using the starred variant |\Continued|\-|Float*|
+% which---just like |\Continued|\-|Float|---executes options associated with the
+% type name ``|Continued|\-|Float|'' and increments the \LaTeX\ counter
+% |Continued|\-|Float|, \emph{but} marks the first figure or table of a series
+% instead:
+% \begin{quote}
+% |\renewcommand\theContinuedFloat{\alph{ContinuedFloat}}|\\
+% \ldots\\
+% |\begin{figure}\ContinuedFloat*|\\
+% | |\ldots\\
+% | \caption{First figure of a series}|\\
+% |\end{figure}|\\
+% \ldots\\
+% |\begin{figure}\ContinuedFloat|\\
+% | |\ldots\\
+% | \caption{Second figure of a series}|\\
+% |\end{figure}|\\
+% \ldots\\
+% |\begin{figure}\ContinuedFloat|\\
+% | |\ldots\\
+% | \caption{Third figure of a series}|\\
+% |\end{figure}|
+% \end{quote}
+% \begin{Example}
+% \captionsetup{type=figure,position=b,skip=0pt}
+% \renewcommand\theContinuedFloat{\alph{ContinuedFloat}}
+% \begingroup
+% \ContinuedFloat*
+% \centerline{\ldots}
+% \caption{First figure of a series}
+% \endgroup
+% \begingroup
+% \ContinuedFloat
+% \centerline{\ldots}
+% \caption{Second figure of a series}
+% \endgroup
+% \begingroup
+% \ContinuedFloat
+% \centerline{\ldots}
+% \caption{Third figure of a series}
+% \endgroup
+% \end{Example}
+%
+% \begin{Note}
+% Unfortunately \cs{ContinuedFloat*} is not available if the
+% \package{subfig} package\cite{subfig} is loaded.
+% \end{Note}
+%
+% \pagebreak[3]
+% \subsubsection*{A note about longtables}
+% If you want to have a different caption label in |long|\-|table|s (offered
+% by the \package{longtable} package\cite{longtable}) after a page break,
+% this can \emph{not} be archived by using |\Continued|\-|Float|,
+% but instead you could write something like:
+% \begin{quote}
+% |\DeclareCaptionLabelFormat{continued}{Continued #1~#2}|\\
+% \ldots\\
+% |\begin{longtable}{|\ldots|}|\\
+% | \caption{A longtable}\\|\\
+% |\endfirsthead|\\
+% | \captionsetup{labelformat=continued}|\\
+% | \caption[]{A longtable}\\|\\
+% |\endhead|\\
+% | |\ldots\\
+% |\end{longtable}|
+% \end{quote}
+%
+% \iffalse
+% --------------------------------------------------------------------------- %
+% \fi
+%
+% \clearpage
+% \section{Own enhancements}
+% \label{declare}
+%
+% A family of commands is provided to allow users to define their own formats
+% etc.
+% This enables information on separators, justification, fonts, and styles to
+% be associated with a name and kept in one place.
+% (These commands need to appear in the document preamble,
+% this is the part between |\document|\-|class| and |\begin{document}|.)
+%
+% \pagebreak[3]
+% \DescribeMacro{\DeclareCaption-\\Format}
+% You can define your own caption formats using the command
+% \begin{quote}
+% |\DeclareCaptionFormat|\marg{name}\marg{code using \#1, \#2 and \#3}\mbox{\quad.}
+% \end{quote}
+% At usage the system replaces \#1 with the caption label, \#2 with the
+% separator and \#3 with the text. So the standard format |plain| is
+% pre-defined by \thispackage\ as
+% \begin{quote}
+% |\DeclareCaptionFormat{plain}{#1#2#3\par}|\quad.
+% \end{quote}
+% \begin{Expert}
+% There is also a starred variant, |\Declare|\-|Caption|\-|Format*|,
+% which causes the code being typeset in \TeX s vertical (instead of
+% horizontal) mode, but does not support the |indention=| option.
+% \end{Expert}
+%
+% \pagebreak[3]
+% \DescribeMacro{\DeclareCaption-\\LabelFormat}
+% Likewise you can define your own caption label formats:
+% \begin{quote}
+% |\DeclareCaptionLabelFormat|\marg{name}\marg{code using \#1 and \#2}
+% \end{quote}
+% At usage \#1 gets replaced with the name (e.g. ``figure'') and \#2
+% gets replaced with the reference number (e.g. ``12'').
+% An example:
+% \begin{quote}
+% |\DeclareCaptionLabelFormat{bf-parens}{(\textbf{#2})}|\\
+% |\captionsetup{labelformat=bf-parens,labelsep=quad}|
+% \end{quote}
+% \example*{labelformat=bf-parens,labelsep=quad}{\exampletext}
+%
+% \pagebreak[3]
+% \DescribeMacro{\bothIfFirst}
+% \DescribeMacro{\bothIfSecond}
+% If you define your own caption label formats and use the
+% \package{subcaption} or \package{subfig}\cite{subfig} package,
+% you should take care of empty caption label names.
+% For this purpose the commands
+% \begin{quote}
+% |\bothIfFirst|\marg{first arg}\marg{second arg}\quad and\\
+% |\bothIfSecond|\marg{first arg}\marg{second arg}
+% \end{quote}
+% are offered. |\bothIfFirst| tests if the first argument exists (means: is
+% not empty), |\bothIfSecond| tests if the second argument exists. If yes,
+% both arguments get typeset, otherwise none of them.
+%
+% \smallskip
+%
+% \pagebreak[3]
+% For example the standard label format |simple| is \emph{not} defined as
+% \begin{quote}
+% |\DeclareCaptionLabelFormat{simple}{#1~#2}|\mbox{\quad,}
+% \end{quote}
+% because this could cause an extra space if \#1 is empty. Instead |simple|
+% is defined as
+% \begin{quote}
+% |\DeclareCaptionLabelFormat{simple}%|\\
+% | {\bothIfFirst{#1}{~}#2}|\mbox{\quad,}
+% \end{quote}
+% causing the space to appear only if the label name is present.
+%
+% \smallskip
+%
+% \pagebreak[3]
+% \DescribeMacro{\DeclareCaption-\\TextFormat}
+% \NEWfeature*{v3.1}
+% Likewise you can define your own caption text formats:
+% \begin{quote}
+% |\DeclareCaptionTextFormat|\marg{name}\marg{code using \#1}
+% \end{quote}
+% At usage \#1 gets replaced with the caption text.
+%
+% \bigskip
+%
+% \pagebreak[3]
+% \DescribeMacro{\DeclareCaption-\\LabelSeparator}
+% You can define your own caption label separators with
+% \begin{quote}
+% |\DeclareCaptionLabelSeparator|\marg{name}\marg{code}\mbox{\quad.}
+% \end{quote}
+% Again an easy example taken from \thispackage\ itself:
+% \begin{quote}
+% |\DeclareCaptionLabelSeparator{colon}{: }|
+% \end{quote}
+% \begin{Expert}
+% There is also a starred variant, |\Declare|\-|Caption|\-|Label|\-|Separator*|,
+% which causes the code being typeset without using the |label|\-|font=| setting.
+% So for example the label separators |quad|, |new|\-|line|, and |en|\-|dash|
+% are defined in this way.
+% \end{Expert}
+%
+% \bigskip
+%
+% \pagebreak[3]
+% \DescribeMacro{\DeclareCaption-\\Justification}
+% You can define your own caption justifications with
+% \begin{quote}
+% |\DeclareCaptionJustification|\marg{name}\marg{code}\mbox{\quad.}
+% \end{quote}
+% The \meta{code} simply gets typeset just before the caption.
+% E.g.~using the justification |raggedright|, which is defined as
+% \begin{quote}
+% |\DeclareCaptionJustification{raggedright}{\raggedright}|\mbox{\quad,}
+% \end{quote}
+% typesets captions with all lines moved to the left margin.
+%
+% \bigskip
+%
+% \pagebreak[3]
+% \DescribeMacro{\DeclareCaption-\\Font}
+% You can define your own caption fonts with
+% \begin{quote}
+% |\DeclareCaptionFont|\marg{name}\marg{code}\quad.
+% \end{quote}
+% For example this package defines the options |small| and |bf| as
+% \begin{quote}
+% |\DeclareCaptionFont{small}{\small}|\quad and\\
+% |\DeclareCaptionFont{bf}{\bfseries}|\quad.
+% \end{quote}
+% \iffalse
+% The line spacing could be customized using the \package{setspace} package,
+% for example:%\NEWdescription{v3.0h}
+% \begin{quote}
+% |\usepackage{setspace}|\\
+% |\DeclareCaptionFont{singlespacing}{\setstretch{1}}|~\footnote{%
+% \emph{\DefaultNoteText:} Using \cs{singlespacing} does not work here since
+% it contains a \cs{vskip} command.}\\
+% |\DeclareCaptionFont{onehalfspacing}{\onehalfspacing}|\\
+% |\DeclareCaptionFont{doublespacing}{\doublespacing}|\\
+% |\captionsetup{font={onehalfspacing,small},labelfont=bf}|
+% \end{quote}
+% \example{font={onehalfspacing,small},labelfont=bf,singlelinecheck=off}{\exampletext}
+% \fi
+% An example which brings color into life:
+% \begin{quote}
+% |\usepackage{color}|\\
+% |\DeclareCaptionFont{red}{\color{red}}|\\
+% |\DeclareCaptionFont{green}{\color{green}}|\\
+% |\DeclareCaptionFont{blue}{\color{blue}}|\\
+% |\captionsetup{labelfont={blue,bf},textfont=green}|
+% \end{quote}
+% \example*{labelfont={color=blue,bf},textfont={color=green},singlelinecheck=off}{\exampletext}
+% But since \thispackage\ already includes the tricky definition
+% \begin{quote}
+% |\DeclareCaptionFont{color}{\color{#1}}|
+% \end{quote}
+% you can get the same result simply with
+% \begin{quote}
+% |\usepackage{color}|\\
+% |\captionsetup{labelfont={color=blue,bf},|\\
+% | textfont={color=green}}|\quad.
+% \end{quote}
+%
+% \medskip
+%
+% \pagebreak[3]
+% \DescribeMacro{\DeclareCaption-\\Style}
+% You can define your own caption styles with
+% \begin{quote}
+% |\DeclareCaptionStyle|\marg{name}\oarg{additional options}\marg{options}\mbox{\quad.}
+% \end{quote}
+% Remember, caption styles are just a collection of suitable options, saved
+% under a given name. You can wake up these options at any time with the
+% option |style=|\meta{style name}.
+%
+% All caption styles are based on the |base| set of options. (See \Ref{style}
+% for a complete list.) So you only need to specify options which are different
+% to them.
+%
+% If you specify \meta{additional options} they get used in addition when
+% the caption fits into a single line and this check was not disabled with
+% the option |single|\-|line|\-|check=off|.
+%
+% Again a very easy example taken from the core of this package: The
+% caption style |base| is pre-defined as
+% \begin{quote}
+% |\DeclareCaptionStyle{base}%|\\
+% | [justification=centering,indention=0pt]{}|\quad.
+% \end{quote}
+%
+% Something more exciting:
+% \begin{quote}
+% |\DeclareCaptionStyle{mystyle}%|\\
+% | [margin=5mm,justification=centering]%|\\
+% | {font=footnotesize,labelfont=sc,margin={10mm,0mm}}|\\
+% |\captionsetup{style=mystyle}|
+% \end{quote}
+% gives you caption like these ones:
+% \begin{Example}
+% \captionsetup{type=figure,style=mystyle,position=b}
+% \caption{A short caption.}
+% \caption{A long long long long long long long long long
+% long long long long long long long long long
+% long long long long long long long long long caption.}
+% \end{Example}
+%
+% \bigskip
+%
+% \pagebreak[3]
+% \DescribeMacro{\DeclareCaption-\\ListFormat}
+% \NEWfeature*{v3.1}
+% You can define your own caption list formats with
+% \begin{quote}
+% |\DeclareCaptionListFormat|\marg{name}\marg{code using \#1 and \#2}\mbox{\quad.}
+% \end{quote}
+% At usage \#1 gets replaced with the label prefix (e.g.~|\p@figure|),
+% and \#2 gets replaced with the reference number (e.g.~|\thefigure|).
+%
+% \iffalse
+% --------------------------------------------------------------------------- %
+% \fi
+%
+% \subsection{Further examples}
+% \label{examples}
+%
+% \subsubsection*{Example 1}
+%
+% If you would like to have a line break between caption label and text
+% you could define it this way:
+% \begin{quote}
+% |\DeclareCaptionFormat{myformat}{#1#2\\#3}|
+% \end{quote}
+% If you select this format with |\caption|\-|setup{format=|\x|myformat}|
+% you get captions like this:
+% \example{format=myformat1,labelfont=bf}{\exampletext}
+% You could even use an indention with this caption format:
+% \begin{quote}
+% |\captionsetup{format=myformat,indention=1cm}|
+% \end{quote}
+% This would look like this:
+% \example{format=myformat1,indention=1cm,labelfont=bf}{\exampletext}
+% Instead, you would like to have an indention only of the first line of
+% the caption text? No problem, e.g.
+% \begin{quote}
+% |\newlength\myindention|\\
+% |\DeclareCaptionFormat{myformat}%|\\
+% | {#1#2\\\hspace*{\myindention}#3}|\\
+% \ldots\\
+% |\setlength\myindention{1cm}|\\
+% |\captionsetup{format=myformat}|
+% \end{quote}
+% would give you captions like
+% \example{format=myformat2,myindention=1cm,labelfont=bf}{\exampletext}
+% But you want to have an caption option for this indention, so you can use
+% it for example with
+% |\caption|\-|setup|\x|[figure]|\x|{my|\-|indention=|\x\ldots|}|?
+% This could be done, too:
+% \begin{quote}
+% |\newlength\myindention|\\
+% |\DeclareCaptionOption{myindention}%|\\
+% | {\setlength\myindention{#1}}|\\
+% |\DeclareCaptionFormat{myformat}%|\\
+% | {#1#2\\\hspace*{\myindention} #3}|\\
+% \ldots\\
+% |\captionsetup{format=myformat,myindention=1cm}|
+% \end{quote}
+% would give the same result as the example above.
+%
+% \subsubsection*{Example 2}
+%
+% You want captions to look like this:
+% \example{format=reverse,labelformat=fullparens,labelsep=fill,labelfont=it}{\exampletext}
+%
+% \pagebreak[2]
+% You could do it this way:
+% \nopagebreak[3]
+% \begin{quote}
+% |\DeclareCaptionFormat{reverse}{#3#2#1}|\\
+% |\DeclareCaptionLabelFormat{fullparens}%|\\
+% | {(\bothIfFirst{#1}{~}#2)}|\\
+% |\DeclareCaptionLabelSeparator{fill}{\hfill}|\\
+% |\captionsetup{format=reverse,labelformat=fullparens,|\\
+% | labelsep=fill,font=small,labelfont=it}|
+% \end{quote}
+%
+% \subsubsection*{Example 3}
+%
+% The caption text should go into the left margin? A possible solution would be:
+% \begin{quote}
+% |\DeclareCaptionFormat{llap}{\llap{#1#2}#3\par}|\\
+% |\captionsetup{format=llap,labelsep=quad,singlelinecheck=no}|
+% \end{quote}
+% As a result you would get captions like this:
+% \example{format=llap,labelsep=quad,singlelinecheck=no,margin=0pt}{\exampletext}
+%
+% \medskip
+%
+% If the indention into the margin shall be fixed, you could use a combination
+% of |\llap| and |\makebox|, for example:
+% \begin{quote}
+% |\DeclareCaptionFormat{llapx}%|\\
+% | {\llap{\makebox[5em][l]{#1}}#3\par}|\\
+% |\captionsetup{format=llapx,singlelinecheck=off}|
+% \end{quote}
+% \example{format=llapx,singlelinecheck=off,skip=0pt,margin=0pt}{\exampletext}
+%
+% \subsubsection*{Example 4}
+%
+% This example puts a figure aside a table, but uses only one common caption for both.
+% This will be achieved by a combination of
+% |\Declare|\-|Caption|\-|Label|\-|Format| and |\caption|\-|list|\-|entry|:
+% \begin{quote}
+% |\DeclareCaptionLabelFormat{andtable}%|\\
+% | {#1~#2 \& \tablename~\thetable}|\\
+% \ldots\\
+% |\begin{figure}|\\
+% | \centering|\\
+% | \includegraphics{|\ldots|}%|\\
+% | \qquad|\\
+% | \begin{tabular}[b]{\ldots}|\\
+% | |\ldots\\
+% | \end{tabular}|\\
+% | \captionlistentry[table]{|\ldots|}|\\
+% | \captionsetup{labelformat=andtable}|\\
+% | \caption{|\ldots|}|\\
+% |\end{figure}|
+% \end{quote}
+% \DeleteShortVerb{\|}%
+% \noindent\begin{minipage}{\linewidth}
+% \captionsetup{type=figure}
+% \centering
+% \includegraphics[width=30pt]{cat}%
+% \qquad
+% \begin{tabular}[b]{r|rr}
+% & x & y \\\hline
+% a & 1 & 2 \\
+% b & 3 & 4 \\
+% \end{tabular}
+% \captionlistentry[table]{A figure and a table with a common caption}
+% \captionsetup{labelformat=andtable}
+% \caption{A figure and a table with a common caption~\footnotemark}
+% \end{minipage}
+% \footnotetext{The picture was taken with permission from the
+% \LaTeX\ Companion\cite{TLC2} examples.}
+% \MakeShortVerb{\|}
+%
+% (Please remember that |\caption|\-|list|\-|entry| increments the figure
+% resp.~table counter.)
+%
+% \iffalse
+% --------------------------------------------------------------------------- %
+% \fi
+%
+% \clearpage
+% \section{Supported document classes}
+% \label{classes}
+%
+% This section will give you an overview of the document classes the
+% \package{caption} supports, what do they already offer regarding captions,
+% what side effects will occur when using the \package{caption} package with
+% them, and what are the `default' settings for them.
+%
+% \NEWfeature{v3.1}
+% The `default' settings depend on the document class you use; they represent
+% how the class author wanted the captions to look like. So for example
+% setting |format=|\x|default| can give you different visual designs when used
+% with different document classes.
+%
+% \begingroup\setlength\leftmargini{0.3em}% default = 2.5em
+% \INFO
+% If you don't find the document class you use in this section, you usually
+% don't have to worry: Many document classes (e.g.~the \class{octavo} class)
+% are derived from one of the standard document classes \class{article},
+% \class{report}, or \class{book}, and behave the same regarding captions.
+% \Thispackage\ automatically does a compatibility check against the document
+% class used and will give you the clear warning
+% \begin{quote}\footnotesize
+% |Package caption Warning: Unsupported document class (or package) detected,|\\
+% |(caption) usage of the caption package is not recommended.|\\
+% |See the caption package documentation for explanation.|
+% \end{quote}
+% if such an incompatibility was detected.
+% If you don't get such warning everything is fine, but if you get it the
+% usage of \thispackage\ is not recommended and especially not supported.
+% \endgroup
+%
+% \begin{Expert}
+% If you get such a compatibility warning but decide to use \thispackage{}
+% anyway, you should watch carefully what side-effects occur, usually the
+% look and feel of your captions will change by just including \thispackage{}
+% without options, meaning they do not look like as intended by the author
+% of the document class.
+% If this is fine for you, you should first specify the option |style=|\x|base|
+% via |\use|\-|package[style=|\x|base]{caption}| or
+% |\caption|\-|setup{style=|\x|base}| to set \thispackage\ into a well-defined
+% state.
+% Afterwards you can start setting your own options additionally and
+% keep your fingers crossed.
+% \end{Expert}
+%
+% \newcommand*\Option{Option}
+% \newcommand*\defaultvalue{\texttt{default} value}
+% \newcommand*\uses{\textit{uses}}
+% \newcommand*\settings{\textit{settings}}
+% \newcommand*\nofont{\textit{none}}
+%
+% \subsection{Standard \LaTeX: article, report, and book}
+%
+% \begin{tabular}{ll}
+% \Option & \defaultvalue \\\hline
+% |format=| & |plain| \\
+% |labelformat=| & |simple| \\
+% |labelsep=| & |colon| \\
+% |justification=| & |justified| \\
+% |font=| & \nofont \\
+% |labelfont=| & \nofont \\
+% |textfont=| & \nofont \\
+% \end{tabular}
+%
+% \begin{Annotation}
+% This also applies to document classes derived from them.
+% \end{Annotation}
+%
+% \subsection{\AmS: amsart, amsproc, and amsbook}
+% \label{AMS}
+%
+% \begin{tabular}{ll}
+% \Option & \defaultvalue \\\hline
+% |format=| & |plain| \\
+% |labelformat=| & |simple| \\
+% |labelsep=| & |.\enspace| \\
+% |justification=| & |justified| \\
+% |font=| & |\@captionfont| \\
+% |labelfont=| & |\@captionheadfont| \\
+% |textfont=| & |\@captionfont\upshape| \\
+% \end{tabular}
+%
+% \begin{Annotation*}
+% |\@caption|\-|font| will be set to |\normal|\-|font|, and
+% |\@caption|\-|head|\-|font| to |\sc|\-|shape| by the \AmS\ document classes.
+% \end{Annotation*}
+%
+% Furthermore the margin will be set to |\caption|\-|indent| for
+% more-than-one-line captions (which will be set to |3pc| by the \AmS\ classes),
+% the margin for single-line captions will be set to the half of it instead.
+% If you want to use a common margin for both, insert
+% |\clear|\-|caption|\-|setup[margin*]{single|\-|line}|
+% into the preamble of your document, after loading \thispackage.
+%
+% Additionally the options |figure|\-|position=b,|\x|table|\-|position=t|
+% will be set. You can override these settings by specifying other values for
+% |figure|\-|position=| or |table|\-|position=| in the option list while
+% loading \thispackage.
+%
+% \subsection{beamer}
+% \label{beamer}
+%
+% \begin{tabular}{ll}
+% \Option & \defaultvalue \\\hline
+% |format=| & |plain| \\
+% |labelformat=| & \textit{not numbered} \\
+% |labelsep=| & |colon| \\
+% |justification=| & |raggedright| \\
+% |font=| & \class{beamer} ``|caption|'' \settings \\
+% |labelfont=| & \class{beamer} ``|caption name|'' \settings \\
+% |textfont=| & \nofont \\
+% \end{tabular}
+%
+% \subsubsection*{Build-in features, and side-effects}
+% You can setup font and color settings with
+% |\set|\-|beamer|\-|font{caption}|\marg{options} and
+% |\set|\-|beamer|\-|font{caption name}|\marg{options}.
+% This will still work, unless you set a different font with
+% |\caption|\-|setup{font=|\x\meta{options}|}| or
+% |\caption|\-|setup{label|\-|font=|\x\meta{options}|}|.\par
+% Furthermore the \class{beamer} classes offer different caption templates
+% which can be chosen with
+% |\set|\-|beamer|\-|template|\x|{caption}|\x|[|\meta{template}|]|.
+% Since \thispackage\ replaces this caption template mechanism,
+% |\def|\-|beamer|\-|template*|\x|{caption}|\x\marg{template code}
+% and
+% |\set|\-|beamer|\-|template|\x|{caption}|\x|[|\meta{template}|]|
+% will have no effect when \thispackage\ is used.
+% (Exception: Selecting the template |default|, |num|\-|bered|, or
+% |caption| |name| |own| |line| will be recognized by \thispackage and be mapped
+% to corresponding options.)
+%
+% \subsection{\KOMAScript: scrartcl, scrreprt, and scrbook}
+% \label{KOMA}
+%
% \begin{tabular}{ll}
-% \href{http://mirror.ctan.org/macros/latex/contrib/caption/caption-eng.pdf}%
-% {\texttt{caption-eng.pdf}} & The English documentation \\
-% \href{http://mirror.ctan.org/macros/latex/contrib/caption/caption-rus.pdf}%
-% {\texttt{caption-rus.pdf}} & The Russian documentation\footnotemark \\
-% \href{http://mirror.ctan.org/macros/latex/contrib/caption/caption-deu.pdf}%
-% {\texttt{caption-deu.pdf}} & The German documentation \\
+% \Option & \defaultvalue \\\hline
+% |format=| & \uses\ |\setcapindent| \textit{\&} |\setcaphanging| \settings \\
+% |labelformat=| & \textit{like \purett{simple}, but with support of ``autodot''}\\
+% |labelsep=| & |\captionformat| \\
+% |justification=| & |justified| \\
+% |font=| & |\setkomafont{caption}| \settings \\
+% |labelfont=| & |\setkomafont{captionlabel}| \settings \\
+% |textfont=| & \nofont \\
% \end{tabular}
-% \footnotetext{Thanks a lot to Olga Lapko for this translation}
+%
+% \subsubsection*{Build-in features}
+% The \KOMAScript\ document classes offer many ways to customize the look and
+% feel of the captions. For an overview and a full description please take a
+% look at the \KOMAScript\ documentation, section `Tables and Figures'.
+%
+% \subsubsection*{Side effects}
+% The optional argument of |\set|\-|cap|\-|width| is not supported and
+% will be ignored if used in conjunction with the \package{caption} package.
+% Furthermore the \KOMAScript\ options |table|\-|caption|\-|above| \&
+% |table|\-|caption|\-|below| and the commands |\caption|\-|above| \&
+% |\caption|\-|below| are stronger than the |position=| setting offered by
+% the \package{caption} package.
+%
+% \subsection{\NTG: artikel, rapport, and boek}
+% \label{NTG}
+%
+% \begin{tabular}{ll}
+% \Option & \defaultvalue \\\hline
+% |format=| & |plain| \\
+% |labelformat=| & |simple| \\
+% |labelsep=| & |colon| \\
+% |justification=| & |justified| \\
+% |font=| & \nofont \\
+% |labelfont=| & |\CaptionLabelFont| \\
+% |textfont=| & |\CaptionTextFont| \\
+% \end{tabular}
+%
+% \subsubsection*{Build-in features, and side-effects}
+% |\Caption|\-|Label|\-|Font| and |\Caption|\-|Text|\-|Font| can be set either
+% directly or by using |\Caption|\-|Fonts|.
+% Both is still supported unless you use one of the two options
+% |label|\-|font=| or |text|\-|font=| offered by \thispackage.
+%
+% \subsection{\SmF: smfart and smfbook}
+% \label{SMF}
+%
+% Since the \SmF\ document classes are derived from the \AmS\ document classes
+% the same default values are valid here.
+%
+% Additionally the margin is limited up to the tenth of the |\line|\-|width|.
+% If you don't like this limitation, you can switch it off with the option
+% |max|\-|margin=|\x|off| or |max|\-|margin=|\x|false|
+% (which both means the same).
+%
+% \subsection{thesis}
+% \label{thesis}
+%
+% \begin{tabular}{ll}
+% \Option & \defaultvalue \\\hline
+% |format=| & |hang| \\
+% |labelformat=| & \textit{like \purett{simple}, but with short name}\\
+% |labelsep=| & |colon| \\
+% |justification=| & |justified| \\
+% |font=| & \nofont \\
+% |labelfont=| & |\captionheaderfont| \\
+% |textfont=| & |\captionbodyfont| \\
+% \end{tabular}
+%
+% \subsubsection*{Build-in features, and side-effects}
+% The caption label font can be set with |\caption|\-|header|\-|font|,
+% the caption text font with |\caption|\-|body|\-|font|.
+% Both is still supported unless you use one of the two options
+% |label|\-|font=| or |text|\-|font=| offered by \thispackage.
+%
+% \iffalse
+% --------------------------------------------------------------------------- %
+% \fi
+%
+% \clearpage
+% \section{Supported babel package options}
+% \label{babel}
+%
+% \NEWfeature{v3.5}
+% Since version \version{3.5} of the \package{caption} package the support
+% is independent on the load order of \package{caption} and \package{babel}.
+%
+% \subsection{french babel option}
+% \label{french}
+%
+% If you use the \package{french} option of the \package{babel} package
+% with one of the three standard \LaTeX{} classes (or a one derived from them)
+% the default |label|\-|sep=| will be set to |\Caption|\-|Sep|\-|a|\-|ra|\-|tor|
+% (offered by \package{french}), overriding the default value set by the
+% document class.
+% So redefining |\Caption|\-|Sep|\-|a|\-|ra|\-|tor| will still work, unless you
+% don't select a different |label|\-|sep=| than the default one.
+%
+% \iffalse
+% --------------------------------------------------------------------------- %
+% \fi
+%
+% \clearpage
+% \section{Supported packages}
+% \label{packages}
+% \label{compatibility}
+%
+% \Thispackage\ was adapted to the following packages which deals with
+% captions, too:
+% \begin{quote}
+% \package{float}, \package{floatflt}, \package{fltpage},
+% \package{hyperref}, \package{hypcap}, \package{listings},
+% \package{longtable}, \package{picinpar}, \package{picins},
+% \package{rotating}, \package{setspace}, \package{sidecap},
+% \package{subfigure}, \package{supertabular}, \package{threeparttable},
+% \package{wrapfig}, and \package{xtab}
+% \end{quote}
+%
+% Furthermore the \package{floatrow} package\cite{floatrow}, the
+% \package{subcaption} package (which is part of the \package{caption} package
+% bundle), and the \package{subfig} package\cite{subfig} support \thispackage{}
+% and use its |\caption|\-|setup| interface.
+%
+% \bigskip
+%
+% \begingroup\setlength\leftmargini{0.3em}% default = 2.5em
+% \INFO
+% If a package (or document class) unknown to \thispackage\ redefines
+% the |\caption| command as well, this redefinition will be preferred
+% over the one this package offers, providing maximum compatibility and
+% avoiding conflicts.
+% If such a potential incompatibility is detected, you will see this
+% warning message:~\footnote{%
+% You can suppress this warning by specifying the option
+% \texttt{compatibility=true} when loading \thispackage.}
+% \begin{quote}\footnotesize
+% |Package caption Warning: \caption will not be redefined since it's already|\\
+% |(caption) redefined by a document class or package which is|\\
+% |(caption) unknown to the caption package.|\\
+% |See the caption package documentation for explanation.|
+% \end{quote}
+% \endgroup
+%
+% As a result, the following features offered by \thispackage\ will not be available:
+% \begin{itemize}
+% \item the options |labelformat=|, |position=auto|, |list=|, and |listformat=|
+% \item |\caption*| (to produce a caption without label)
+% \item |\caption[]{|\ldots|}| (to produce no entry in the List of Figures or Tables)
+% \item |\caption{}| (to produce an empty caption without label separator)
+% \item |\ContinuedFloat|
+% \item correctly justified captions in environments like \texttt{wide} and
+% \texttt{addmargin} which add extra margins
+% \item the \textsf{hypcap} feature \See{\Ref{hyperref}\,}
+% \item the sub-caption feature \See{\package{subcaption} package documentation}
+% \end{itemize}
+%
+% \DescribeMacro{compatibility=}
+% You can override this compatibility mode by specifying the option
+% \begin{quote}
+% |compatibility=false|
+% \end{quote}
+% when loading \thispackage.
+% But please note that using this option is neither recommended nor supported
+% since unwanted side-effects or even errors could occur afterwards.
+% (For that reason you will get a warning about this.)
+%
+% \newcommand\packagedescription[1]{%
+% \ifvmode\else\par\fi
+% \nopagebreak
+% \parbox[b]{\linewidth}{\footnotesize\leftskip=10pt\rightskip=10pt\relax#1}\par
+% \nopagebreak\smallskip\nopagebreak}
+%
+% \PageBreak
+% \subsection{algorithms}
+% \label{algorithms}
+% \packagedescription{%
+% The \package{algorithms} package bundle\cite{algorithms} provides two
+% environments: The \texttt{algorithmic} environment provides a possibility
+% for describing algorithms, and the \texttt{algorithm} environment provides
+% a ``float'' wrapper for algorithms.}
+%
+% Since the \texttt{algorithm} environment is implemented via |\new|\-|float|
+% provided by the \package{float} package\cite{float}, please see \Ref{float}.
+%
+% \iffalse
+% \pagebreak[3]
+% \subsection{algorithm2e}
+% \label{algorithm2e}
+% \packagedescription{%
+% The \package{algorithm2e} package\cite{algorithm2e} offers an environment for
+% writing algorithms in LaTeX2e.}
+%
+% Since the \package{algorithm2e} package does not use some kind of standard
+% interface for defining its floating environment (e.g.~|\newfloat| of the
+% \package{float} package) and typesetting its caption,
+% the \package{algorithm2e} package is \emph{not} supported by \thispackage.
+%
+% So if you want to customize the captions using \thispackage,
+% you have to build a new environment which uses a supported interface regarding
+% floats (e.g. using the \package{float} or \package{floatrow} package),
+% and combine this environment with the internal \package{algorithm2e} code.
+%
+% As first step you could define a non-floating environment \texttt{algorithmic},
+% for example:
+% \begin{quote}
+% |\usepackage{algorithm2e}|\\
+% |% save the "algorithm" environment from the algorithm2e package|\\
+% |\let\ORIGalgorithm\algorithm|\\
+% |\let\ORIGendalgorithm\endalgorithm|\\
+% |% define the algorithmic environment|\\ % , based on the saved environment
+% |\newenvironment{algorithmic}%|\\
+% | {\renewenvironment{algocf}[1][h]{}{}% pass over floating stuff|\\
+% | \ORIGalgorithm}%|\\
+% | {\ORIGendalgorithm}|\\
+% \ldots
+% \end{quote}
+% Having defined this non-floating environment, you could define your own new
+% floating environment with |\newfloat| of the \package{float} package
+% (or |\DeclareNewFloatType| of the \package{floatrow} package),
+% and use the combination of this floating environment and \texttt{algorithmic}
+% in its body, just like you would do when you use the
+% \package{algorithm}/\package{algorithmic} package tandem.
+%
+% You could even use the \package{algorithm} package for this purpose, for example:
+% \begin{quote}
+% \ldots\\
+% |% load the algorithm package to re-define the|\\
+% |% floating environment "algorithm" and \listofalgorithms|\\
+% |\let\listofalgorithms\undefined|\\
+% |\usepackage{algorithm}|\\
+% \ldots\\
+% |% Example usage:|\\
+% |\begin{algorithm}|\\
+% |\caption{An algorithm}|\\
+% |\begin{algorithmic}|\\
+% | \SetVline|\\
+% | \eIf{cond1}{|\\
+% | a line\;|\\
+% | }{|\\
+% | another line\;|\\
+% | }|\\
+% |\end{algorithmic}|
+% \end{quote}
+% Now you are finally able to customize the float and caption layout like every
+% other floating environment defined with the \package{float} package\cite{float},
+% please see \Ref{float}.
+%
+% \begin{Annotation}
+% An alternative would be using the \package{algorithmicx} package.
+% \end{Annotation}
+% \fi
+%
+% \pagebreak[3]
+% \subsection{float}
+% \label{float}
+% \packagedescription{%
+% The \package{float} package\cite{float} introduces the commands
+% \cs{restylefloat} to give existing floating environments a new look \& feel
+% and \cs{newfloat} to define new floating environments.
+% It also provides the ``\texttt{H}'' float placement option which places
+% the environments ``here'' instead of letting them floating around.}
+%
+% For floating environments defined with \cs{newfloat} or \cs{restylefloat} the
+% |po|\-|si|\-|tion| option has no effect on the main caption anymore, since its
+% placement and spacing will be controlled by the selected float style instead.
+%
+% A caption style and options defined with the name of the float style will be
+% executed additionally to the regular ones.
+% Using this mechanism \thispackage\ emulates the default look \& feel of the
+% |ruled| captions: It defines the caption style
+% \begin{quote}
+% |\DeclareCaptionStyle{ruled}%|\\
+% | {labelfont=bf,labelsep=space,strut=off}|\mbox{\quad.}
+% \end{quote}
+% So to change this you need either define your own caption style called
+% |ruled| or use |\caption|\-|setup[ruled]|\marg{options} to specify additional
+% options.
+%
+% Also by using this mechanism the skip between a |boxed| float and its caption
+% is specified, overriding its global value:
+% \begin{quote}
+% |\captionsetup[boxed]{skip=2pt}|
+% \end{quote}
+% For changing this, just use |\caption|\-|setup[boxed]{skip=|\x\meta{value}|}|
+% with an appropriate value. Or if you want to use the global |skip| setting
+% instead, you can remove the usage of the local setting for these floats with
+% |\clear|\-|caption|\-|setup[skip]{boxed}|.
+%
+% \begin{Note}
+% Only one single caption can be typeset inside environments defined with
+% |\new|\-|float| or |\re|\-|style|\-|float|, furthermore these environments
+% are not behaving exactly like the pre-defined floats |figure| and |table|.
+% As a consequence many packages do not cooperate well with these.
+% Furthermore the \package{float} package has some caveats \& limitations,
+% so if you just want to define a new simple floating environment---behaving
+% like |figure| or |table|---I recommend using |\Declare|\-|Floating|\-|Environment|
+% offered by the \package{newfloat} package instead.
+% And for defining non-simple floating environments and customization I
+% recommend using |\Declare|\-|New|\-|Float|\-|Type| offered by the
+% \package{floatrow} package\cite{floatrow}.
+% \end{Note}
+%
+% \iffalse
+% Please also note that you \emph{don't} need a |\restyle|\-|float| for using
+% the ``|H|'' float placement specifier. Some docs say so, but they are
+% wrong.
+% And |\restyle|\-|float{table}| is a very good method to shoot yourself
+% in the foot, since many packages using |table| internally are not working
+% correctly afterwards.
+% \fi
+%
+% \pagebreak[3]
+% \subsection{floatflt}
+% \label{floatflt}
+% \packagedescription{%
+% The \package{floatflt} package\cite{floatflt} offers figures and tables
+% which do not span the full width of a page and are float around by text.}
+%
+% \NEWfeature{v3.1}
+% If you want to setup special options for the |float|\-|ing|\-|figure| and
+% |float|\-|ing|\-|table| environments you can use
+% \begin{quote}
+% |\captionsetup[floatingfigure]|\marg{options}\quad\emph{and}\\
+% |\captionsetup[floatingtable]|\marg{options}\quad.
+% \end{quote}
+% These options will be executed additionally to the regular ones for
+% |figure| resp.~|table|.
+%
+% \begin{Note}
+% The |margin| resp.~|width| setting will not be used for these figures resp.~tables,
+% unless you set it explicit with |\caption|\-|setup[floating|\-|figure]{|\ldots|}|
+% resp.~|\caption|\-|setup[floating|\-|table]{|\ldots|}|.
+% \end{Note}
+%
+% \pagebreak[3]
+% \subsection{fltpage}
+% \label{fltpage}
+% \packagedescription{%
+% The \package{fltpage} package\cite{fltpage} offers the outhouse of the
+% caption for |figure|s or |table|s which needs the whole page
+% for its contents. This will be done by placing the caption on the bottom
+% of the previous or next page.}
+%
+% \iffalse
+% \NEWfeature{v3.1}
+% Two options control the links to the environments |FPfigure| and |FPtable|:
+% \begin{description}
+% \item{\texttt{FPlist=caption} or \texttt{FPlist=figure}}\\[\smallskipamount]
+% If set to |caption|, the list entry will link to the caption; if set to
+% |figure|, it will link to the figure contents.
+% (The default setting is |FP|\-|list=|\x|caption|.)
+% \item{\texttt{FPref=caption} or \texttt{FPref=figure}}\\[\smallskipamount]
+% If set to |caption|, a \cs{ref}, \cs{pageref}, \cs{autoref}, or \cs{nameref}
+% will link to the caption; if set to |figure|, it will link to the figure contents.
+% (The default setting is |FP|\-|ref=|\x|figure|.)
+% \end{description}
+% \fi
+%
+% If you want to setup special options for the |FPfigure| and |FPtable|
+% environments you can use
+% \begin{quote}
+% |\captionsetup[FPfigure]|\marg{options}\quad\emph{and}\\
+% |\captionsetup[FPtable]|\marg{options}\quad.
+% \end{quote}
+% These options will be executed additionally to the regular ones for
+% |figure| or |table|.
+%
+% \pagebreak[3]
+% \subsection{frenchle and frenchpro packages}
+% \label{frenchpro}
+%
+% If you use the \package{frenchle} or \package{frenchpro} package,
+% the default |label|\-|sep=| will be set to |\caption|\-|sep|\-|a|\-|ra|\-|tor|
+% (offered by \package{frenchle/pro}) plus \cs{space}, overriding the default
+% value set by the document class.
+% So redefining |\caption|\-|sep|\-|a|\-|ra|\-|tor| will still work, unless you
+% don't select a different |label|\-|sep=| than the default one.
+%
+% Furthermore the default |text|\-|font=| will be set to |text|\-|font=|\x|it|,
+% since this emulates the default setting of |\caption|\-|font| defined by the
+% \package{frenchle} or \package{frenchpro} package.
+% Please note that the command |\caption|\-|font| is used by the
+% \package{caption} package internally for a different purpose,
+% so you should not change it (anymore).
+%
+% The command |\un|\-|numbered|\-|captions|\marg{figure \emph{or} table} will
+% still work, but only unless you don't select a different |label|\-|format=|
+% than the default one.
+%
+% \NEWfeature{v3.5}
+% Since version \version{3.5} of the \package{caption} package the support
+% is independent on the load order of \package{caption} and \package{frenchle}
+% resp~.\package{frenchpro}.
+%
+% \pagebreak[3]
+% \subsection{hyperref}
+% \label{hyperref}
+% \packagedescription{%
+% The \package{hyperref} package\cite{hyperref} is used to handle cross
+% referencing commands in LaTeX to produce hypertext links in the document.}
+%
+% \NEWfeature{v3.1}
+% There are two options available to control the placement of hyperlink
+% anchors:~\footnote{These options are named after the \package{hypcap} package
+% which they supersede.}
+% \begin{description}
+% \item{\texttt{hypcap=true} or \texttt{hypcap=false}}\\[\smallskipamount]
+% If set to |true| all hyperlink anchors -- where entries in the
+% List of Figures, |\ref|, and |\auto|\-|ref| will link to -- are placed at
+% the beginning of the (floating) environment.\par
+% If set to |false| the hyperlink anchor is (usually) placed at the caption.\par
+% (The default setting is |hypcap=|\x|true|.)
+% \item{\texttt{hypcapspace=}\meta{amount}}\\[\smallskipamount]
+% Because it looks poor if the hyperlink points exactly at the top of
+% the figure or table, you can specify a vertical distance between
+% the hyperlink anchor and the (floating) environment itself,
+% e.g.~|hyp|\-|cap|\-|space=|\x|0pt| removes this distance.\par
+% (The default setting is |hyp|\-|cap|\-|space=|\x|0.5\base|\-|line|\-|skip|.)
+% \end{description}
+%
+% Both settings have no effect in |lst|\-|listing|s (provided by the
+% \package{listings} package), |long|\-|table|s (provided by the
+% \package{longtable} package), |super|\-|tabular|s (provided by the
+% \package{supertabular} package), and |x|\-|tabular|s (provided by the
+% \package{xtab} package), within these environments hyperlink
+% anchors will always be placed as if |hyp|\-|cap=|\x|true| and
+% |hyp|\-|cap|\-|space=|\x|0pt| would be set.
+%
+% \pagebreak[3]Please note:\nopagebreak
+% \begin{description}
+% \item{\cs{captionof}\marg{type}\csmarg{\purerm\ldots}
+% vs.~\cs{captionsetup}\csmarg{type=\textrm{\meta{type}}}$+$\cs{caption}\csmarg{\purerm\ldots}}%
+% \\[\smallskipamount]
+% Without \package{hyperref} loaded, both will give you identical results.
+% But with \package{hyperref} loaded, and with |hyp|\-|cap=|\x|true| requested,
+% the hyperlink anchor will be placed different.
+% For example:
+% \begin{quote}
+% |\begin{minipage}{\linewidth}|\\
+% | |\ldots\\
+% | \captionof{figure}{A figure}|\\
+% |\end{minipage}|
+% \end{quote}
+% will place the hyperlink anchor at the caption.
+% (And if |hyp|\-|cap=|\x|true| is set, you will get a warning about this.)
+% But
+% \begin{quote}
+% |\begin{minipage}{\linewidth}|\\
+% | \captionsetup{type=figure}|\\
+% | |\ldots\\
+% | \caption{A figure}|\\
+% |\end{minipage}|
+% \end{quote}
+% will place the hyperlink anchor at the beginning of the |mini|\-|page|,
+% since |\caption|\-|setup{type=|\x|figure}| does not only set the caption type
+% to ``figure'' but does place a hyperlink anchor, too.
+%
+% \item{\cs{caption}\csoarg{}\csmarg{\purerm\ldots}
+% vs.~\cs{captionsetup}\csmarg{list=false}$+$\cs{caption}\csmarg{\purerm\ldots}}\\[\smallskipamount]
+% Again, without \package{hyperref} loaded, both will give you identical results.
+% But with \package{hyperref} loaded, the difference is in the nuances.
+% So for example the optional argument of |\caption| will also be written to
+% the |aux| file, and will be used by the |\name|\-|ref| command.
+% So if you choose to use |\caption| with empty optional argument,
+% |\name|\-|ref| will also give you an empty result.
+% So it's better to use |\caption|\-|setup{list=|\x|false}| if you don't
+% want an entry in the List of Figures or List of Tables.
+% \end{description}
+%
+% \pagebreak[3]
+% \subsection{hypcap}
+% \label{hypcap}
+% \packagedescription{%
+% The \package{hyp\-cap} package\cite{hypcap} offers a solution to the problem
+% that links to a float using \package{hyper\-ref} may anchors to the caption
+% rather than the beginning of the float.
+% Since \thispackage\ \version{3.1} already solves this problem for itself,
+% the \package{hypcap} package is usually not needed.}
+%
+% If the \package{hyp\-cap} package is loaded additionally to the
+% \package{hyper\-ref} package, it takes over the control of the hyperlink
+% anchor placement from \thispackage, overriding the options |hyp|\-|cap=|
+% and |hyp|\-|cap|\-|space=|.
+%
+% So for a manual placement of hyperlink anchors
+% |\caption|\-|setup{type=|\x\meta{type}|}| is not sufficient anymore,
+% instead you need to use |\cap|\-|start| (provided by the \package{hyp\-cap}
+% package) for this.
+%
+% Regarding the automatically placement the \package{hypcap} package offers good
+% placement of hyperlink anchors for the floating environments |figure| and
+% |table| only. In contrast the |hypcap=|\x|true| option of \thispackage\ also
+% offers good placements of hyperlink anchors for
+% |floating|\-|figure|s (provided by the \package{float\-flt} package),
+% |FP|\-|figure|s \& |FPtable|s (provided by the \package{flt\-page} package),
+% |fig|\-|window|s (provided by the \package{pic\-in\-par} package),
+% |par|\-|pic|s (provided by the \package{pic\-ins} package),
+% |SC|\-|figure|s (provided by the \package{side\-cap} package),
+% |three|\-|part|\-|table|s (provided by the \package{three\-part\-table} package),
+% and |wrapfigure|s (provided by the \package{wrap\-fig} package).
+%
+% \pagebreak[3]
+% \subsection{listings}
+% \label{listings}
+% \packagedescription{%
+% The \package{listings} package\cite{listings} typesets programming code.}
+%
+% If you want to setup special options for the |lst|\-|listing| environment
+% you can use
+% \begin{quote}
+% |\captionsetup[lstlisting]|\marg{options}\quad.
+% \end{quote}
+%
+% Please note that the \package{listings} package has its very own options
+% for controlling the position and the skips of the caption:
+% |caption|\-|pos=|, |above|\-|caption|\-|skip=|, and |below|\-|caption|\-|skip=|.
+% \See{\package{listings} documentation for details.}
+% These \package{listings} options override the \package{caption}'s ones, but
+% can be again overwritten by |\caption|\-|setup[lst|\-|listing]{|\ldots|}|,
+% e.g.%~
+% \begin{quote}|\caption|\-|setup[lst|\-|listing]{skip=|\x|10pt}|\quad.\end{quote}
+%
+% \pagebreak[3]
+% \subsection{longtable}
+% \label{longtable}
+% \packagedescription{%
+% The \package{longtable} package\cite{longtable} offers an environment
+% which behaves similar to the \texttt{tabular} environment, but the table
+% itself can span multiple pages.}
+%
+% If you want to setup special options for the |long|\-|table| environment
+% you can use
+% \begin{quote}
+% |\captionsetup[longtable]|\marg{options}\quad.
+% \end{quote}
+% These options will be executed additionally to the regular ones for
+% |table|.
+%
+% The |margin| and |width| settings usually override |\LT|\-|cap|\-|width|,
+% so you get an equal look \& feel of the captions in |table|s and
+% |long|\-|table|s.
+% But if you set |\LT|\-|cap|\-|width| to a value different than its default
+% $=$ |4in|, \thispackage\ will follow that.
+% (But |\LT|\-|cap|\-|width| will be overwritten by
+% |\caption|\-|setup[long|\-|table]{width=|\x\meta{value}|}|,
+% even if it is set to a value different than |4in|.)
+%
+% \begin{Note}
+% |\caption|\-|of| and |\Continued|\-|Float| do \emph{not} work for |long|\-|table|s.
+% Furthermore neither |\caption| nor |\caption|\-|list|\-|entry| will increment
+% the |table| counter here; it's incremented by the |long|\-|table| environment
+% instead.
+% \NEWfeature{v3.1}
+% If you need a |long|\-|table| which does not increment the |table| counter
+% please use the |long|\-|table*| environment (offered by the
+% \package{ltcaption} package which is part of \thispackage\ bundle and will be
+% loaded automatically).
+% \end{Note}
+%
+% \pagebreak[3]
+% \subsection{picinpar}
+% \label{picinpar}
+% \packagedescription{%
+% Similar to the \package{floatflt} package the \package{picinpar}
+% package\cite{picinpar} offers figures and tables which do not span the full
+% width of a page and are float around by text.
+% For a detailed discussion about the differences between these packages
+% please take a look at The \LaTeX\ Companion\cite{TLC2}.}
+%
+% \NEWfeature{v3.1}
+% If you want to setup special options for the |fig|\-|window| and
+% |tab|\-|window| environments you can use
+% \begin{quote}
+% |\captionsetup[figwindow]|\marg{options}\quad\emph{and}\\
+% |\captionsetup[tabwindow]|\marg{options}\quad.
+% \end{quote}
+% These options will be executed additionally to the regular ones for
+% |figure| or |table|.
+%
+% \begin{Note}
+% The |margin| resp.~|width| setting will not be used for these figures and tables,
+% unless you set it explicit with |\caption|\-|setup[fig|\-|window]{|\ldots|}| or
+% |\caption|\-|setup[fig|\-|table]{|\ldots|}|.
+% \end{Note}
+%
+% \pagebreak[3]
+% \subsection{picins}
+% \label{picins}
+% \packagedescription{%
+% Similar to the \package{floatflt} and \package{picinpar} package the
+% \package{picins} package\cite{picins} offers figures and tables which do not
+% span the full width of a page and are float around by text.
+% For a detailed discussion about the differences between these packages
+% please take a look at The \LaTeX\ Companion\cite{TLC2}.}
+%
+% \NEWfeature{v3.1}
+% If you want to setup special options for the |par|\-|pic| environment you can use
+% \begin{quote}
+% |\captionsetup[parpic]|\marg{options}\quad.
+% \end{quote}
+% These options will be executed additionally to the regular ones for
+% |figure| or |table|.
+%
+% Furthermore |\pic|\-|caption[]{|\ldots|}| produce no entry in the List of Figures,
+% and |\pic|\-|caption*{|\ldots|}| gives an unlabeled \& unnumbered caption.
+%
+% \begin{Note}
+% The |margin| resp.~|width| setting will not be used for these figures and tables.
+% \iffalse
+% if |pic|\-|caption|\-|side| or |pic|\-|caption|\-|top|\-|side| is used.
+% The |width| setting will not be used (but the |margin| setting will) if
+% |pic|\-|caption|\-|out|\-|side| or |pic|\-|caption|\-|in|\-|side| is used.
+% \fi
+% But you can override this by setting it explicit with
+% |\caption|\-|setup[par|\-|pic]{|\ldots|}|.
+% \end{Note}
+%
+% If you want to have a |\pic|\-|caption| of another type as |figure|, please
+% do \emph{not} re-define |\@cap|\-|type| as suggested by the \package{picins}
+% documentation. Please use the |\pic|\-|caption|\-|type|\marg{type} command
+% which is offered by \thispackage\ instead, e.g.:
+% \begin{quote}
+% |\piccaptiontype{table}|\\
+% |\piccaption{An example table}|\\
+% |\parpic(50mm,10mm)[s]{|\ldots|}|
+% \end{quote}
+%
+% \pagebreak[3]
+% \subsection{rotating}
+% \label{rotating}
+% \packagedescription{%
+% The \package{rotating} package\cite{rotating} offers the floating
+% environments \texttt{side\-ways\-figure} and \texttt{side\-ways\-table} which
+% are just like normal figures and tables but rotated by 90 resp.~270 degree.
+% Furthermore a command \cs{rot\-caption} is offered for rotated captions only.}
+%
+% \iffalse % No, we don't do that
+% If you want to setup special options for the |side|\-|ways|\-|figure| and
+% |side|\-|ways|\-|table| environments you can use
+% \begin{quote}
+% |\captionsetup[sidewaysfigure]|\marg{options}\\
+% |\captionsetup[sidewaystable]|\marg{options}\quad.
+% \end{quote}
+% These options will be executed additionally to the regular ones for
+% |figure| or |table|.
+% \fi
+%
+% The command |\rot|\-|caption| will be extended by \thispackage, so
+% |\rot|\-|caption*| and |\rot|\-|caption|\-|of| can be used analogous to
+% |\caption*| and |\caption|\-|of|.
+%
+% \pagebreak[3]
+% \subsection{setspace}
+% \label{setspace}
+% \packagedescription{%
+% The \package{setspace} package\cite{setspace} offers options and commands
+% to change the spacing,
+% e.g.\ \cs{usepackage}\x\csoarg{one\-half\-spacing}\x\csmarg{set\-space}
+% causes the document to be typeset in one-and-a-half spacing.}
+%
+% If the \package{setspace} package is used in conjunction with \thispackage,
+% the caption will be typeset with single spacing as default. This can be changed
+% by specifying either |font=|\x|one|\-|half|\-|spacing|,
+% |font=|\x|double|\-|spacing|, or |font={stretch=|\x\meta{amount}|}|.
+% \See{also \Ref{fonts}}
+%
+% \pagebreak[3]
+% \subsection{sidecap}
+% \label{sidecap}
+% \packagedescription{%
+% The \package{sidecap} package\cite{sidecap} offers the floating environments
+% \texttt{SC\-figure} and \texttt{SC\-table} which are like usual figures
+% and tables but the caption will be put \emph{beside} the contents.}
+%
+% If you want to setup special options for the |SCfigure| and |SCtable|
+% environments you can use
+% \begin{quote}
+% |\captionsetup[SCfigure]|\marg{options}\quad\emph{and}\\
+% |\captionsetup[SCtable]|\marg{options}\quad.
+% \end{quote}
+% These options will be executed additionally to the regular ones for
+% |figure| or |table|.
+%
+% \pagebreak[3]
+% \begin{Note}
+% The \package{sidecap} package offers its own options for justification.
+% If set, they will override the one specified with the caption option
+% |jus|\-|ti|\-|fi|\-|ca|\-|tion=| for captions beside their contents.
+% \end{Note}
+%
+% \begin{Note}
+% The |margin| resp.~|width| setting will not be used for these figures and tables,
+% unless you set it explicit with |\caption|\-|setup[SC|\-|figure]{|\ldots|}|
+% or |\caption|\-|setup[SC|\-|table]{|\ldots|}|.
+% \end{Note}
+%
+% \medskip
+%
+% \begin{Annotation*}
+% Instead of using the \package{sidecap} package you can also use the more
+% powerful and flexible \package{floatrow} package\cite{floatrow} for typesetting
+% captions beside the contents.
+% \end{Annotation*}
+%
+% \pagebreak[3]
+% \subsubsection*{Undocumented features}
+% The \package{sidecap} package \version{1.6} has some undocumented package
+% options and commands which allow further customization of the side-captions:
+%
+% \pagebreak[3]
+% \DescribeMacro{margincaption}
+% The package option
+% \begin{quote}
+% |margincaption|\qquad{\small(e.g.~|\usepackage[margincaption]{sidecap}|)}
% \end{quote}
+% causes all side-captions to be placed into the margin.
+%
+% \pagebreak[3]
+% \DescribeMacro{\sidecaptionvpos}
+% The command
+% \begin{quote}
+% |\sidecaptionvpos|\marg{float type}\marg{pos}
+% \end{quote}
+% sets the vertical position of the side-caption. \meta{pos} can be either `|t|'
+% (for top alignment), `|b|' (for bottom alignment), or `|c|' (for center alignment).
+% The default setting for |table| is `|t|', for |figure| and all other ones
+% defined with |\Declare|\-|Floating|\-|Environment| it's `|b|'.
+%
+% \pagebreak[3]
+% \subsection{subfigure}
+% \label{subfigure}
+% \packagedescription{%
+% The \package{subfigure} package\cite{subfigure} provides support for small or
+% `sub' figures and tables within a single figure or table environment.
+% This package is obsolete, new users should use \package{subfig} instead.}
+%
+% Since the \package{subfigure} package is obsolete it will only be supported in
+% a way that old documents (which have used \thispackage\ \version{1.x} during
+% development) should still compile as expected.
+%
+% Please use the \package{subfig} or \package{subcaption} package instead which both supports \thispackage\
+% \version{3.x}.
+%
+% \See{the \package{subfig} package\cite{subfig} documentation for details.}
+%
+% \pagebreak[3]
+% \subsection{supertabular and xtab}
+% \label{supertabular}
+% \packagedescription{%
+% The \package{supertabular}\cite{supertabular} and \package{xtab}\cite{xtab}
+% packages offer an environment which can span multiple pages and is quite
+% similar to the \texttt{long\-table} environment provided by the
+% \package{longtable} package\cite{longtable}.
+% For a detailed discussion about the differences between these powerful
+% packages please take a look at The \LaTeX\ Companion\cite{TLC2}.}
+%
+% If you want to setup special options for the |super|\-|tabular|
+% resp.~|x|\-|tabular| environment you can use
+% \begin{quote}
+% |\captionsetup[supertabular]|\marg{options}\quad\emph{resp.}\\
+% |\captionsetup[xtabular]|\marg{options}\quad.
+% \end{quote}
+% These options will be executed additionally to the regular ones for
+% |table|.
+%
+% \begin{Note}
+% |\Continued|\-|Float| does not work for |super|\-|tabular|s and |x|\-|tabular|s.
+% \end{Note}
+%
+% \pagebreak[3]
+% \subsection{threeparttable}
+% \label{threeparttable}
+% \packagedescription{%
+% The \package{threeparttable} package\cite{threeparttable} provides a scheme
+% for tables that have a structured note section after the table contents and
+% the caption.
+% This scheme provides an answer to the old problem of putting footnotes in
+% tables---by making footnotes entirely unnecessary.}
+%
+% \NEWfeature{v3.1}
+% If you want to setup special options for the |three|\-|part|\-|table| and
+% |measured|\-|figure| environments you can use
+% \begin{quote}
+% |\captionsetup[threeparttable]|\marg{options}\quad\emph{and}\\
+% |\captionsetup[measuredfigure]|\marg{options}\quad.
+% \end{quote}
+% These options will be executed additionally to the regular ones for
+% |table| or |figure|.
+%
+% \begin{Note}
+% Since the caption will have the same width as the contents here,
+% the |margin| resp.~|width| setting will not be used for these figures and tables,
+% at least unless you set it explicit with
+% |\caption|\-|setup[three|\-|part|\-|table]{|\ldots|}| or
+% |\caption|\-|setup[measured|\-|figure]{|\ldots|}|.
+% \end{Note}
+%
+% \medskip
+%
+% \begin{Annotation*}
+% Instead of using the \package{threeparttable} package you can
+% also use the \package{floatrow} package\cite{floatrow} for this purpose.
+% \end{Annotation*}
+%
+% \pagebreak[3]
+% \subsection{wrapfig}
+% \label{wrapfig}
+% \packagedescription{%
+% Similar to the \package{floatflt}, the \package{picinpar}, and the
+% \package{picins} package the \package{wrapfig} package\cite{wrapfig} offers
+% figures and tables which do not span the full width of a page and are float
+% around by text.
+% For a detailed discussion about the differences between these packages
+% please take a look at The \LaTeX\ Companion\cite{TLC2}.}
+%
+% \NEWfeature{v3.1}
+% If you want to setup special options for the |wrap|\-|figure| and
+% |wrap|\-|table| environments you can use
+% \begin{quote}
+% |\captionsetup[wrapfigure]|\marg{options}\quad\emph{and}\\
+% |\captionsetup[wraptable]|\marg{options}\quad.
+% \end{quote}
+% These options will be executed additionally to the regular ones for
+% |figure| or |table|.
+%
+% \begin{Note}
+% The |margin| resp.~|width| setting will not be used for these figures and
+% tables, unless you set it explicit with
+% |\caption|\-|setup[wrap|\-|figure]{|\ldots|}|
+% or |\caption|\-|setup[wrap|\-|table]{|\ldots|}|.
+% \end{Note}
+%
+% \iffalse
+% --------------------------------------------------------------------------- %
+% \fi
+%
+% \clearpage
+% \section{Further reading}
+%
+% I recommend the following documents for further reading:
+%
+% \begin{itemize}
+% \item
+% The \TeX\ FAQ -- Frequently asked questions about \TeX\ and \LaTeX:
+% \begin{quote}\url{http://faq.tug.org/}\end{quote}
+%
+% \item
+% A French FAQ can be found at
+% \begin{quote}\url{http://www.grappa.univ-lille3.fr/FAQ-LaTeX/}\end{quote}
+%
+% \item
+% ``What is a minimal working example?'' from Christian Faulhammer and Ulrich Schwarz:
+% \begin{quote}\url{http://www.minimalbeispiel.de/mini-en.html}\end{quote}
+%
+% \item
+% \textsf{epslatex} from Keith Reckdahl contains many tips around
+% including graphics in \LaTeXe\ documents.
+% You will find this document in the directory
+% \begin{quote}\url{http://mirror.ctan.org/info/epslatex/}\end{quote}
+% \end{itemize}
+%
+% \iffalse
+% --------------------------------------------------------------------------- %
+% \fi
+%
+% \pagebreak[3]
+% \section{Thanks}
+%
+% I would like to thank Katja Melzner,
+% Steven D. Cochran, Frank Mittelbach, Olga Lapko,
+% David Carlisle, Carsten Heinz, Keith Reckdahl, Markus Kohm,
+% Heiko Oberdiek, and Herbert Vo\ss.
+% Thanks a lot for all your help, ideas, patience, spirit, and support!
+%
+% Also I would like to thank
+% Harald Harders,
+% Peter L\"offler,
+% Peng Yu,
+% Alexander Zimmermann,
+% Matthias Pospiech,
+% J\"urgen Wieferink,
+% Christoph Bartoschek,
+% Uwe St\"ohr,
+% Ralf Stubner,
+% Geoff Vallis,
+% Florian Keiler,
+% J\"urgen G\"obel,
+% Uwe Siart,
+% Sang-Heon Shim,
+% Henrik Lundell,
+% David Byers,
+% William Asquith,
+% Prof.~Dr.~Dirk Hoffmann,
+% Frank Martini,
+% Danie Els,
+% Philipp Woock,
+% Fadi Semmo,
+% Matthias Stevens, and
+% Leo Liu
+% who all helped to make this package a better one.
+%
+% \iffalse
+% --------------------------------------------------------------------------- %
+% \fi
+%
+% \clearpage\appendix
+% \section{Alphabetical Reference}
+%
+% \makeatletter
+% \newenvironment{Warnings}{%
+% \newif\ifMessage
+% \def\Message{%
+% \ifMessage\end{minipage}\par\vspace\itemsep\pagebreak[3]\fi
+% \begin{minipage}{\linewidth}%
+% \setlength\parindent{0pt}%
+% \setlength\parskip{\smallskipamount}%
+% \setlength\leftskip{0pt}%
+% \color{blue}%
+% \Messagetrue}%
+% \def\Description{%
+% \par\color{black}\leftskip=1.5em}%
+% \def\Or{\@testopt\@Or{or}}%
+% \def\@Or[##1]{%
+% \\{\small\color{black}\hspace{1.5em}\textit{-- ##1 --}}\\}%
+% }{%
+% \ifMessage\end{minipage}\par\fi
+% }
+% \makeatother
+%
+% \subsection{Options}
+% \newcommand\preambleoption{~%
+% \begingroup\def\thefootnote{\fnsymbol{footnote}}%
+% \footnotemark[2]%
+% \endgroup}
+% \newcommand\preambleoptiontext{%
+% \begingroup\def\thefootnote{\fnsymbol{footnote}}%
+% \footnotetext[2]{These options are only available in the preamble of the document.}%
+% \endgroup}
+%
+% \begin{longtable*}{lll}
+% Option & Short description & Section \\
+% \hline
+% \endhead
+% |aboveskip| & sets the skip above caption & \ref{skips} \\
+% |belowskip| & sets the skip below caption & \ref{skips} \\
+% |compatibility|\preambleoption & force (non-)compatibility & \ref{compatibility} \\
+% |figureposition|\preambleoption & gives a hint about the figure caption position & \ref{skips} \\
+% |font|(|+|) & sets the font & \ref{fonts} \\
+% |format| & sets the format & \ref{formats} \\
+% \iffalse
+% |FPlist| & To where the list entry of a FPfigure should link? & \ref{fltpage} \\
+% |FPref| & To where a |\ref| to a FPfigure should link? & \ref{fltpage} \\
+% \fi
+% |hangindent| & sets the hang indention & \ref{margins} \\
+% |hypcap| & selects `hypcap' feature & \ref{hyperref} \\
+% |hypcapspace| & sets the distance between hyperlink and contents & \ref{hyperref} \\
+% |indention| & sets the indention & \ref{margins} \\
+% |justification| & sets the justification & \ref{justification} \\
+% |labelfont|(|+|) & sets the font of the caption label & \ref{fonts} \\
+% |labelformat| & sets the format of the caption label & \ref{formats} \\
+% |labelsep| & sets the label separator & \ref{formats} \\
+% |labelseparator| & --same as |labelsep|-- & \ref{formats} \\
+% |list| & switches the entries in the List on or off & \ref{lists} \\
+% |listformat| & sets the `List of Figure/Table' entry format & \ref{lists} \\
+% |margin| & sets the margin & \ref{margins} \\
+% |margin*| & sets the margin, but only if no width is set & \ref{margins} \\
+% |maxmargin| & sets the max. margin & \ref{margins} \\
+% |minmargin| & sets the min. margin & \ref{margins} \\
+% |name| & sets the name of the current environment & \ref{names} \\
+% |oneside| & selects the one-side mode & \ref{margins} \\
+% |options| & executes the given option list & \\
+% |parindent| & sets the paragraph indention & \ref{margins} \\
+% |parskip| & sets the skip between paragraphs & \ref{margins} \\
+% |position| & gives a hint about the caption position & \ref{skips} \\
+% |singlelinecheck| & switches the single-line-check on or off & \ref{justification} \\
+% |skip| & sets the skip between content and caption & \ref{skips} \\
+% |strut| & switches the usage of |\strut|s on or off & \ref{formats} \\
+% |style| & sets the caption style & \ref{style} \\
+% |subtype| & sets the sub-caption type & \phantom{t}--~\footnotemark \\
+% |tableposition|\preambleoption & gives a hint about the table caption position & \ref{skips} \\
+% |textfont|(|+|) & sets the font of the caption text & \ref{fonts} \\
+% |textformat| & sets the format of the caption text & \ref{formats} \\
+% |twoside| & selects the two-side mode & \ref{margins} \\
+% |type| & sets the caption type \& places a hyperlink anchor & \ref{types} \\
+% |type*| & sets the caption type only & \ref{types} \\
+% |width| & sets a fixed caption width & \ref{margins} \\
+% \end{longtable*}
+% \preambleoptiontext
+% \footnotetext{The option \texttt{subtype} is explained in the
+% \package{subcaption} package documentation.}
+%
+% \nopagebreak\parbox[t]{\linewidth}{% prevent from page break
+% \begin{Note*}
+% Obsolete options are not listed here. See
+% \Ref{caption1} and
+% \Ref{caption2} for a list of these options.
+% \end{Note*}}
+%
+% \pagebreak[3]
+% \subsection{Commands}
+%
+% \begin{longtable*}{lll}
+% Command & & Section \\
+% \hline
+% \endhead
+% |\abovecaptionskip| & & \ref{skips} \\
+% |\belowcaptionskip| & & \ref{skips} \\
+% |\caption| & & \ref{caption} \\
+% |\caption*| & & \ref{caption} \\
+% |\captionlistentry| & & \ref{captionlistentry} \\
+% |\captionof| & & \ref{caption} \\
+% |\captionof*| & & \ref{caption} \\
+% |\captionsetup| & & \ref{captionsetup} \\
+% |\captionsetup*| & & \ref{captionsetup} \\
+% |\centerfirst| & & \ref{justification} \\
+% |\centerlast| & & \ref{justification} \\
+% |\clearcaptionsetup| & & \ref{captionsetup} \\
+% |\clearcaptionsetup*| & & \ref{captionsetup} \\
+% |\ContinuedFloat| & & \ref{ContinuedFloat} \\
+% |\DeclareCaptionFont| & & \ref{declare} \\
+% |\DeclareCaptionFormat| & & \ref{declare} \\
+% |\DeclareCaptionFormat*| & & \ref{declare} \\
+% |\DeclareCaptionJustification| & & \ref{declare} \\
+% |\DeclareCaptionLabelFormat| & & \ref{declare} \\
+% |\DeclareCaptionLabelSeparator| & & \ref{declare} \\
+% |\DeclareCaptionLabelSeparator*| & & \ref{declare} \\
+% |\DeclareCaptionListFormat| & & \ref{declare} \\
+% |\DeclareCaptionOption| & & \ref{declare} \\
+% |\DeclareCaptionStyle| & & \ref{declare} \\
+% |\DeclareCaptionSubType| & & --~\footnotemark \\
+% |\DeclareCaptionTextFormat| & & \ref{declare} \\
+% |\showcaptionsetup| & & \ref{captionsetup} \\
+% \end{longtable*}
+% \footnotetext{\cs{DeclareCaptionSubType} is explained in the
+% \package{subcaption} package documentation.}
+%
+% \clearpage
+% \subsection{Warnings}
+%
+% \begin{Warnings}
+%
+% \Message
+% |\caption outside box or environment.|
+% \Or
+% |\captionsetup{type=...} outside box or environment.|
+% \Or
+% |\captionsetup{type*=...} or \captionof outside box|\\
+% | or environment.|
+% \Description
+% You have placed a |\caption|, |\caption|\-|of|, or
+% |\caption|\-|setup{type=|\x\meta{type}|}| command outside an box, group,
+% or environment.
+% You should not do this since it could cause some bad side-effects.
+% \par\See{\Ref{types} and \Ref{caption}}
+%
+% \Message
+% |\caption will not be redefined since it's already|\\
+% |redefined by a document class or package which is|\\
+% |unknown to the caption package.|
+% \Description
+% If \thispackage\ detects that some (unknown) document class or
+% package has enhanced |\caption|, it will not redefine
+% |\caption|, too, since this would simply kill the enhancement.
+% As a result some features, like |\caption*|, |\Continued|\-|Float|,
+% using the optional argument of |\caption|\-|setup|,
+% or the options |list=| and |hypcap=| will not be available.\par
+% If you don't care about the original enhancements but would
+% like to use the full range of features of \thispackage\ instead
+% you can give the unsupported(!) option |compatibility=|\x|false|
+% a try and keep your fingers crossed.
+% (But you will get the next warning instead.)
+% \par\See{\Ref{classes} and \Ref{compatibility}}
+%
+% \Message
+% |Forced redefinition of \caption since the|\\
+% |unsupported(!) package option `compatibility=false'|\\
+% |was given.|
+% \Description
+% Since you were so keen to specify the option |compatibility=|\x|false|
+% \thispackage\ will try to do its best to fulfill your wishes.
+% But depending on the document class or other packages you use that
+% can end in non-functional features or even errors. So keep your
+% fingers crossed!
+% \par\See{\Ref{compatibility}}
+%
+% \Message
+% |Hyperref support is turned off because hyperref has|\\
+% |stopped early.|
+% \Description
+% If the \package{hyperref} package stops early during loading
+% (because of what-ever reason), the \package{hyperref} support of
+% \thispackage\ will not be available. As a result you could get
+% \package{hyperref} warnings and non-functional hyperlinks to figures
+% or tables.
+% \par\See{\Ref{hyperref}\,}
+%
+% \Message
+% |Ignoring optional argument [|\meta{pos}|] of \setcapwidth.|
+% \Description
+% \Thispackage\ tries to emulate the \KOMAScript\ commands regarding
+% captions as best as it can. But the optional argument of the
+% \KOMAScript\ command |\setcapwidth| is not (yet) working if you use
+% this package, so if you try to use it anyway, you will get this warning.
+% \par\See{\Ref{KOMA}}
+%
+% \Message
+% |Internal Warning: |\meta{warning message}|.|
+% \Description
+% You should never see this warning, either you use a package which redefines
+% |figure| or |table| and which is unknown to \thispackage, or this is a bug
+% in \thispackage.
+% Please send me an e-mail reporting this issue.
+%
+% \Message
+% |\label without proper \caption|
+% \Description
+% Regarding |\label| the floating environments behave differently than its
+% non-floating counterparts: The internal reference will not be generated
+% at the beginning of the environment, but at |\caption| instead.
+% So you have to place the |\label| command either just \emph{after} or
+% \emph{inside} the caption text (mandatory argument of |\caption|).
+%
+% \Message
+% |Option `|\meta{option}|' was not in list `|\meta{option list}|'.|
+% \Description
+% If you try to remove a specific option of an option list,
+% for example with |\clear|\-|caption|\-|setup[po|\-|si|\-|tion]{table}|,
+% and this option can not be found inside the option list, you will
+% get this warning. If this is not because of a typo and you would like
+% to suppress this warning, use |\clear|\-|caption|\-|setup*| instead of
+% |\clear|\-|caption|\-|setup|.
+% \par\See{\Ref{captionsetup}}
+%
+% \Message
+% |Option list `|\meta{option list}|' undefined.|
+% \Description
+% If you try to remove a specific option of an option list,
+% for example with |\clear|\-|caption|\-|setup[for|\-|mat]{figure}|,
+% and this option list is not defined (yet), you will
+% get this warning. If this is not because of a typo and you would like
+% to suppress this warning, use |\clear|\-|caption|\-|setup*| instead of
+% |\clear|\-|caption|\-|setup|.
+% \par\See{\Ref{captionsetup}}
+%
+% \Message
+% |Obsolete option `ignoreLTcapwidth' ignored.|
+% \Description
+% The \package{caption2} package option |ignoreLTcapwidth| will not be
+% emulated by this version of \thispackage, usually you can simply wipe it
+% away.
+% \par\See{\Ref{caption2} and \Ref{longtable}}
+%
+% \Message
+% |`ragged2e' support has been changed. Rerun to get|\\
+% |captions right.|
+% \Description
+% The \package{ragged2e} package will only be loaded by \thispackage\ if it
+% is actually needed.
+% At least two \LaTeX\ runs are needed for that, so on the first run you could
+% get this warning.
+% Just compile your document again and this warning should go away.
+% \par\See{\Ref{justification}}
+%
+% \Message
+% |Reference on page |\meta{page no.}| undefined.|
+% \Description
+% If you use a |twoside| page layout, \thispackage\ needs to track the
+% page numbers to get the margins right.
+% At least two \LaTeX\ runs are needed for that, on the first run you could get
+% this warning.
+% Just compile your document again and this warning should go away.
+% \par\See{\Ref{margins}}
+%
+% \Message
+% |The caption type was already set to `|\meta{type}|'.|
+% \Description
+% This warning informs you about mixed caption options. For example if
+% you use a |\caption|\-|setup{type=|\x|table}| or
+% |\caption|\-|of{table}{|\ldots|}| inside a |figure| environment,
+% this would result in using both option sets for that specific caption,
+% the one for |figure| (specified with |\caption|\-|setup[figure]{|\ldots|}|)
+% and the one for |table| (specified with |\caption|\-|setup[table]{|\ldots|}|)
+% as well.\par
+% {\small(You can suppress this warning by using the starred form
+% |\caption|\-|setup*{type=|\x\ldots|}|.)\par}
+% \par\See{\Ref{captionsetup}}
+%
+% \Message
+% |The option `hypcap=true' will be ignored for this|\\
+% |particular \caption.|
+% \Description
+% \Thispackage\ hasn't found a proper hyperlink anchor for this particular
+% caption, so it decides to ignore the setting |hypcap=|\x|true| (which is set by
+% default). As a result a link to this caption (e.g.~in the List of Figures,
+% or set by |\ref| or |\auto|\-|ref|) will link you to the caption of the figure
+% or table, not to the figure or table itself.\par
+% This can happen if you use |\caption|\-|of| inside a non-floating environment,
+% but also if you use some package which redefines |figure| or |table|, and
+% which is unknown to \thispackage.\par
+% If this is ok for you but you want to suppress this warning, simply place a
+% |\caption|\-|setup{hyp|\-|cap=|\x|false}| just before the |\caption| or
+% |\caption|\-|of| command which is causing the warning.
+% If this is not ok for you, you can set a hyperlink anchor with
+% |\caption|\-|setup{type=|\x\meta{float type}|}| for yourself.
+% \par\See{\Ref{hyperref}\,}
+%
+% \Message
+% |Unsupported document class (or package) detected,|\\
+% |usage of the caption package is not recommended.|
+% \Description
+% Either the document class you use is unknown to \thispackage, or you
+% have included a package in your document which redefines |\@make|\-|caption|
+% (which is responsible for typesetting the caption internally) as well.
+% This means \thispackage\ will either change the design of captions in an
+% unwanted way, or it even refuses to work correctly at all.
+% \par\See{\Ref{classes} and \Ref{compatibility}}
+%
+% \Message
+% |Unused \captionsetup[|\meta{type}|].|
+% \Description
+% You have specified options with |\caption|\-|setup[|\meta{type}|]| which are
+% not used later on.
+% This can be because of a typo in \meta{type},
+% or because you use a package which redefines |figure| or |table| and
+% which is unknown to \thispackage, or simply because you don't have any usage
+% of the environment \meta{type} after this line.
+% (If you want to suppress this warning you can use |\caption|\-|setup*|
+% instead of |\caption|\-|setup|.)
+% \par\See{\Ref{captionsetup}}
+%
+% \Message
+% |Usage of the |\meta{package}| package together with the|\\
+% |caption package is strongly not recommended.|\\
+% |Instead of loading the |\meta{package}| package you should|\\
+% |use the caption package option `tableposition=top'.|
+% \Description
+% The package \meta{package} is dealing with caption skips as well.
+% Please decide which one do you actually want to use, \thispackage\ or the
+% other one, using both can lead to wrong skips above or below the caption.
+% \par\See{\Ref{skips}}
+%
+% \end{Warnings}
+%
+% \pagebreak[3]
+% \subsection{Errors}
+%
+% \begin{Warnings}
+%
+% \Message
+% |Argument of \@caption has an extra }.|
+% \Or
+% |Paragraph ended before \@caption was complete.|
+% \Description
+% If you want to typeset something special (like a tabular) as caption,
+% you need to give an optional argument to |\caption| resp.~|\caption|\-|of|
+% for the List of Figures resp.~List of Tables, too, even if you don't
+% use such list.
+% \par\See{\Ref{caption}, \Ref{lists}, and \Ref{hyperref}\,}
+%
+% \Message
+% |\caption outside float.|
+% \Description
+% You have placed a |\caption| command outside a floating environment, or
+% a |long|\-|table| or |wrap|\-|figure|.
+% If this is what you want to, please use either
+% |\caption|\-|setup{type=|\x\meta{type}|}| $+$ |\caption| or
+% |\caption|\-|of|.
+% \par\See{\Ref{caption}}
+%
+% \Message
+% |\ContinuedFloat outside float.|
+% \Description
+% You have placed a |\Continued|\-|Float| command outside a floating
+% environment. % or |long|\-|table|.
+% If this is what you want to, please use the combination
+% |\caption|\-|setup{type=|\x\meta{type}|}| $+$ |\Continued|\-|Float|.\par
+% Please note that |\Continued|\-|Float| inside a |long|\-|table| is not
+% working, but maybe using the |long|\-|table*| environment, which
+% typesets a |long|\-|table| without incrementing the |table| counter,
+% if sufficient for you.
+% \par\See{\Ref{ContinuedFloat} and \Ref{longtable}}
+%
+% \Message
+% |Continued `|\meta{type}|' after `|\meta{type}|'.|
+% \Description
+% Continued figures or tables are not allowed to be interrupted by a floating
+% environment (or |long|\-|table|) of another type,
+% e.g.~a table between a figure and a continued figure.
+% \par\See{\Ref{ContinuedFloat}}
+%
+% \Message
+% |For a successful cooperation we need at least version|\\
+% |`|\meta{date}|' of package |\meta{package}|, but only version|\\
+% |`|\meta{old-date}|' is available.|
+% \Description
+% \Thispackage\ does not work with such an outdated package, please update it
+% to a more recent version, at least to the one requested.
+%
+% \Message
+% |Internal Error: |\meta{error message}|.|
+% \Description
+% You should never see this error.
+% Please send me an e-mail reporting this issue.
+%
+% \Message
+% |No float type '|\meta{type}|' defined.|
+% \Description
+% The \meta{type} you have specified in |\caption|\-|setup{type=|\x\meta{type}|}|,
+% |\caption|\-|of|\marg{type}, or |\Declare|\-|Caption|\-|Sub|\-|Type| is
+% not defined.
+% \meta{type} should be either `\texttt{figure}' or `\texttt{table}', or
+% any other floating environment defined with
+% |\Declare|\-|Floating|\-|Environment| offered by the \package{newfloat} package,
+% |\new|\-|float| offered by the \package{float} package\cite{float}, or
+% |\Declare|\-|New|\-|Float|\-|Type| offered by the \package{floatrow} package\cite{floatrow}.
+%
+% \Message
+% |Not allowed in longtable* environment.|
+% \Description
+% The usage of |\caption| is not allowed inside the |long|\-|table*| environment.
+% Please use either |\caption*| for a caption without label or use the regular
+% |long|\-|table| environment instead.
+%
+% \Message
+% |Not available in compatibility mode.|
+% \Description
+% The feature required is not supported in compatibility mode.
+% `compatibility mode' means that \thispackage\ has detected either an
+% incompatible document class or an incompatible package which also
+% extents the |\caption| command. Leaving the original extension intact,
+% some features of \thispackage\ are not supported.
+% \par\See{\Ref{compatibility}}
+%
+% \Message
+% |Only one \caption can be placed in this environment.|
+% \Description
+% Inside the environments offered by the \package{fltpage} and \package{sidecap}
+% package only \emph{one} caption can be placed. (This is due implementation design.)
+%
+% \Message
+% |Option clash for package caption.|
+% \Or[but sometimes also]
+% |Missing \begin{document}.|
+% \Description
+% \Thispackage\ has already been loaded by some other \LaTeX\ package,
+% so you can't do that again specifying different options.
+% A candidate causing this could be the \package{subfig} package; if this is
+% the case, please load \thispackage\ \emph{before} the \package{subfig}
+% package or specify the option |caption=|\x|false| while loading the
+% \package{subfig} package.
+% \par\See{the \package{subfig} package\cite{subfig} documentation}
+%
+% \Message
+% |Paragraph ended before \caption@makecurrent was complete.|
+% \Or
+% |Paragraph ended before \caption@prepareanchor was complete.|
+% \Description
+% If you want to typeset multi-paragraph captions, you need to give an
+% optional argument to |\caption| resp.~|\caption|\-|of| for the List of
+% Figures resp.~List of Tables, too, even if you don't use such list.
+% \par\See{\Ref{caption}, \Ref{lists}, and \Ref{hyperref}\,}
+%
+% \Message
+% |Something's wrong--perhaps a missing \caption|\\
+% |in the last figure or table.|
+% \Description
+% It seems that you have used a |\sub|\-|caption| command (or a different one
+% which has typeset a sub-caption) without a corresponding |\caption| command.
+% This is not supported.
+%
+% \Message
+% |The option `labelsep=|\meta{name}|' does not work|\\
+% |with `format=hang'.|
+% \Or
+% |The option `labelsep=|\meta{name}|' does not work|\\
+% |with \setcaphanging (which is set by default).|
+% \Description
+% A caption label separator which contains a |\\| command (like
+% |labelsep=|\x|newline|) can not be combined with a hanging caption format
+% (like |format=|\x|hang|).
+% Please select either another caption label separator
+% (e.g.~|labelsep=|\x|colon|) or another caption format
+% (e.g.~|format=|\x|plain|).
+% \par\See{\Ref{formats} resp.~\Ref{KOMA}}
+%
+% \Message
+% |The package option `caption=false' is obsolete.|\\
+% |Please pass this option to the subfig package instead|\\
+% |and do *not* load the caption package anymore.|
+% \Description
+% You have specified the option |caption=|\x|false|. This used to be a workaround
+% for not using the whole \package{caption} package (leaving the caption stuff
+% offered by the document class or other packages intact), but keeping the
+% \package{subfig} package working. This mechanism is obsolete and not offered
+% anymore, please pass this option to the \package{subfig} package instead and
+% do not load \thispackage\ anymore.
+% \par\See{the \package{subfig} package\cite{subfig} documentation}
+%
+% \Message
+% |Undefined boolean value `|\meta{value}|'.|
+% \Description
+% You tried to set a boolean option (like |singlelinecheck=| or |hypcap=|)
+% with an improper value. Only |false|, |no|, |off|, |0| or |true|, |yes|,
+% |on|, |1| is allowed here.
+%
+% \Message
+% |Undefined format `|\meta{name}|'.|
+% \Description
+% You tried to set a caption format which does not exists.
+% Maybe a typo!?
+% \par\See{\Ref{formats}}
+%
+% \Message
+% |Undefined label format `|\meta{name}|'.|
+% \Description
+% You tried to set a caption label format which does not exists.
+% Maybe a typo!?
+% \par\See{\Ref{formats}}
+%
+% \Message
+% |Undefined label separator `|\meta{name}|'.|
+% \Description
+% You tried to set a caption label separator which does not exists.
+% Maybe a typo!?
+% \par\See{\Ref{formats}}
+%
+% \Message
+% |Undefined list format `|\meta{name}|'.|
+% \Description
+% You tried to set a caption list-of format which does not exists.
+% Maybe a typo!?
+% \par\See{\Ref{lists}}
+%
+% \Message
+% |Undefined position `|\meta{name}|'.|
+% \Description
+% You tried to set a caption position with an improper value.
+% Maybe a typo!?
+% \par\See{\Ref{skips}}
+%
+% \Message
+% |Undefined style `|\meta{name}|'.|
+% \Description
+% You tried to set a caption style which does not exists.
+% Maybe a typo!?
+% \par\See{\Ref{style}}
+%
+% \Message
+% |Usage of the `position' option is incompatible|\\
+% |to the `|\meta{package}|' package.|
+% \Description
+% The given package is dealing with caption skips as well.
+% Please decide which one do you actually want to use: The |position=| option
+% of \thispackage\ or the mechanism of the other one; using both this way
+% would lead to wrong skips above or below the caption and is therefore
+% not supported.
+% \par\See{\Ref{skips}}
+%
+% \Message
+% |Undefined text format `|\meta{name}|'.|
+% \Description
+% You tried to set a caption text format which does not exists.
+% Maybe a typo!?
+% \par\See{\Ref{formats}}
+%
+% \Message
+% |You can't use both, the (obsolete) caption2 *and*|\\
+% |the (current) caption package.|
+% \Description
+% This error message says it all, you simply can't do that.
+% Please use only \thispackage.
+% \par\See{\Ref{caption2}}
+%
+% \end{Warnings}
+%
+% \iffalse
+% --------------------------------------------------------------------------- %
+% \fi
+%
+% \clearpage
+% \section{Version history}
+% \label{history}
+%
+% The version $1.0$ was written in 1994 and was offering a handful of options
+% to customize the look \& feel of the captions.
+% Furthermore this version already supported the \package{rotating} and
+% \package{subfigure} packages.
+% Version $1.1$ introduced the |center|\-|last| option;
+% version $1.2$ added the support of the \package{float} package.
+% Version $1,3$ offered a better support of the \package{subfigure} package,
+% while version $1.4$ came with the new option |nooneline|.
+%
+% The \package{caption2} package $2.0$ was an experimental side-version of
+% the regular \package{caption} package. It was made public as beta test version
+% without proper documentation in 1995 because of the strong demand for new
+% features and adaptations to additional packages like the \package{longtable}
+% package.
+% Furthermore it offered a revised support of the \package{subfigure} package.
+% (An improved version $2.1$ was offered in 2002.)
+%
+% In 2003 I finally found some time, so a new regular release $3.0$
+% of the \package{caption} package could be build in cooperation with
+% Frank Mittelbach and Steven Cochran.
+% It was released in December 2003 and superseded the neglected
+% \package{caption2} package.
+% Main parts were re-written and it provided a complete re-work of
+% the user interface.
+% Furthermore it supported the \package{hyperref}, \package{hypcap},
+% \package{listings}, \package{sidecap}, and \package{supertabular} packages
+% additionally.
+%
+% While all the previous versions were designed for usage with the standard
+% \LaTeX\ document classes \class{article}, \class{report}, and \class{book},
+% the current version $3.1$ released in 2007 also supports the \AmS,
+% \KOMAScript, \NTG, and \SmF\ document classes, and the \class{beamer} class
+% as well.
+% Furthermore it was adapted to the \package{french} Babel option,
+% the \package{frenchle} \& \package{frenchpro} packages,
+% and the \package{floatflt}, \package{fltpage}, \package{picinpar},
+% \package{picins}, \package{setspace}, \package{threeparttable},
+% and \package{wrapfig} packages.
+% New options and commands were introduced as well, among other things
+% |font+|, |figure|\-|within| \& |table|\-|within|,
+% |list| \& |list|\-|format|, |max|\-|margin| \& |min|\-|margin|,
+% |\caption|\-|list|\-|entry|, |\Declare|\-|Caption|\-|List|\-|Format|.
+% Further benefits are the new compatibility check \see*{\Ref{compatibility}},
+% the new ``hypcap'' feature \see*{\Ref{hyperref}\,}, and the sub-caption
+% feature \see*{\package{subcaption} package documentation}.
+%
+% \iffalse
+% --------------------------------------------------------------------------- %
+% \fi
+%
+% \clearpage
+% \section{Compatibility to older versions}
+%
+% \subsection{caption v\texorpdfstring{$1.x$}{1.x}}
+% \label{caption1}
+%
+% This version of \thispackage\ still supports the old options
+% and commands provided by the version $1.0$ to $1.4$ of this package.
+% So there shouldn't occur any problems compiling old documents, but please
+% don't mix old options and commands with the new ones. This isn't supported
+% and can cause ugly side effects.
+%
+% Here comes a short oversight of the obsolete options and how
+% they have been replaced within this version of \thispackage:
+%
+% \begin{center}\small
+% \begin{tabular}{ll}
+% \package{caption} \version{1.x} & \package{caption} \version{3.x}\\
+% \hline
+% |normal| & |format=plain|\\
+% |hang| & |format=hang|\\
+% |isu| & |format=hang|\\
+% |center| & |justification=centering|\\
+% |centerlast| & |justification=centerlast|\\
+% |nooneline| & |singlelinecheck=off|\\
+% |scriptsize| & |font=scriptsize|\\
+% |footnotesize| & |font=footnotesize|\\
+% |small| & |font=small|\\
+% |normalsize| & |font=normalsize|\\
+% |large| & |font=large|\\
+% |Large| & |font=Large|\\
+% |up| & |labelfont=up|\\
+% |it| & |labelfont=it|\\
+% |sl| & |labelfont=sl|\\
+% |sc| & |labelfont=sc|\\
+% |md| & |labelfont=md|\\
+% |bf| & |labelfont=bf|\\
+% |rm| & |labelfont=rm|\\
+% |sf| & |labelfont=sf|\\
+% |tt| & |labelfont=tt|\\
+% \end{tabular}
+% \end{center}
+%
+% Beside the options for setting up the desired font there were also
+% the commands |\caption|\-|size| resp.~|\caption|\-|font| and
+% |\caption|\-|label|\-|font| who could be redefined with
+% |\re|\-|new|\-|command| and allowed an alternate and more flexible way to
+% change the font used for captions.
+% This mechanism was replaced by the commands
+% \begin{quote}
+% |\DeclareCaptionFont{|\ldots|}{|\ldots|}|\qquad and\\
+% |\captionsetup{font=|\ldots|,labelfont=|\ldots|}|\qquad.
+% \end{quote}
+% \SeeUserDefined
+%
+% Setting the margin for captions was done in \version{1.x} with
+% \begin{quote}
+% |\setlength{\captionmargin}{|\ldots|}|\quad.
+% \end{quote}
+% This was replaced by
+% \begin{quote}
+% |\captionsetup{margin=|\ldots|}|\qquad.
+% \end{quote}
+% \See{\Ref{margins}}
+%
+% For example the old-style code
+% \begin{quote}
+% |\usepackage[hang,bf]{caption}|\\
+% |\renewcommand\captionfont{\small\sffamily}|\\
+% |\setlength\captionmargin{10pt}|
+% \end{quote}
+% will still work fine, but should be written today as
+% \begin{quote}
+% |\usepackage[format=hang,labelfont=bf,font={small,sf},|\\
+% | margin=10pt]{caption}|
+% \end{quote}
+% or
+% \begin{quote}
+% |\usepackage{caption}|\\
+% |\captionsetup{format=hang,labelfont=bf,font={small,sf},|\\
+% | margin=10pt}|\qquad.
+% \end{quote}
+%
+% The quite exotic option |ruled| which allowed a partial usage of
+% the caption settings for |ruled| floats defined with the
+% \package{float} package will be emulated by this version of the
+% caption package, too.
+% But using this option is not recommended anymore since this
+% version of \thispackage\ offers a more flexible way
+% for changing the captions of these floating environments:
+% \begin{quote}
+% |\DeclareCaptionStyle{ruled}{|\ldots|}|
+% \end{quote}
+% resp.
+% \begin{quote}
+% |\captionsetup[ruled]{|\ldots|}|\qquad.
+% \end{quote}
+% \SeeUserDefined[, \Ref{captionsetup}, and \Ref{float}]
+%
+% \subsection{caption2 v\texorpdfstring{$2.x$}{2.x}}
+% \label{caption2}
+%
+% Although they do very similar stuff, the packages \package{caption} and
+% its experimental and now obsolete variant \package{caption2} have a
+% very different implementation design.
+% Therefore a full compatibility could not be offered.
+% For that reason you will still find a file called |caption2.sty| in
+% this package distribution, so old documents using the \package{caption2}
+% package will still compile fine.
+%
+% Newly created documents should use the actual version of
+% \thispackage\ instead. In most cases it's sufficient to replace the command
+% \begin{quote}
+% |\usepackage[...]{caption2}|
+% \end{quote}
+% by
+% \begin{quote}
+% |\usepackage[...]{caption}|\qquad.
+% \end{quote}
+% But some options and commands will not be emulated, so you can get
+% error messages afterwards. This section will hopefully help you removing
+% these errors. If you have problems migrating from \package{caption2}
+% to \package{caption} please don't hesitate to send me an e-mail asking
+% for help.
+%
+% In addition to the obsolete options shown in the last section
+% these ones will be emulated, too:
+%
+% \begin{center}\small
+% \begin{tabular}{ll}
+% \package{caption2} \version{2.x} & \package{caption} \version{3.x}\\
+% \hline
+% |flushleft| & |justification=raggedright|\\
+% |flushright| & |justification=raggedleft|\\
+% |oneline| & |singlelinecheck=on|\\
+% \end{tabular}
+% \end{center}
+%
+% Setting the margin for captions was done in \version{2.x} with
+% \begin{quote}\leavevmode\hbox{%
+% |\setcaptionmargin{|\ldots|}| resp.
+% |\setcaptionwidth{|\ldots|}|\quad.
+% }\end{quote}
+% This was replaced by
+% \begin{quote}\leavevmode\hbox{%
+% |\captionsetup{margin=|\ldots|}| resp.
+% |\captionsetup{width=|\ldots|}|\quad.
+% }\end{quote}
+% \See{\Ref{margins}}
+%
+% Setting an indention was done in \version{2.x} with
+% \begin{quote}
+% |\captionstyle{indent}|\\
+% |\setlength\captionindent{|\ldots|}|\quad.
+% \end{quote}
+% \pagebreak[3]
+% This is now done with
+% \nopagebreak[3]
+% \begin{quote}
+% |\captionsetup{format=plain,indention=|\ldots|}|\quad.
+% \end{quote}
+%
+% The so-called single-line-check was controlled by the commands
+% |\oneline|\-|captions|\-|false| (for switching the check off) and
+% |\oneline|\-|captions|\-|true| (for switching the check on).
+% This was replaced by
+% |\caption|\-|setup{single|\-|line|\-|check=|\x|off}|
+% resp.
+% |\caption|\-|setup{single|\-|line|\-|check=|\x|on}|\quad.
+% \See{\Ref{justification}}
+%
+% The commands
+% \begin{quote}
+% |\captionlabeldelim|, |\captionlabelsep|, |\captionstyle|,\\
+% |\defcaptionstyle|, |\newcaptionstyle|, and |\renewcaptionstyle|
+% \end{quote}
+% do not have a simple replacement and therefore will not be emulated
+% by this version of \thispackage. (So using them will
+% cause error messages.) Rewriting such code is not always easy and
+% straight-ahead, but by conscientious reading of this manual you should
+% be able to find appropriate options and commands instead.
+%
+% \iffalse
+% ... (some examples)
+% \fi
+%
+% The \version{2.x} option |ignore|\-|LT|\-|cap|\-|width| do not have a
+% replacement, too.
+% But in most cases you can simply drop using that option because
+% in this version of \thispackage\ the value of |\LT|\-|cap|\-|width|
+% will be ignored anyway (unless you set it to a different value than the
+% default one which is |4in|).
+% \See{\Ref{longtable}}
+%
+% \subsection{caption v\texorpdfstring{$3.0$}{3.0}}
+% \label{caption3}
+%
+% \Thispackage\ \version{3.0} did not support any document classes
+% other than the standard \LaTeX\ ones: \class{article}, \class{report},
+% and \class{book}.
+% Therefore the default settings used to be fixed, but now \thispackage{}
+% supports more classes, therefore they are now set in dependence on the
+% document class used.
+%
+% For example: While in \version{3.0} the default caption
+% |jus|\-|ti|\-|fi|\-|ca|\-|tion| used to be always |jus|\-|ti|\-|fied|,
+% it's now still |jus|\-|ti|\-|fied| when using one of the standard document
+% classes, but |ragged|\-|right| will be used as default format when used
+% with the \class{beamer} document class.
+%
+% An easy way to select the `old' defaults is using the option
+% |style=base| when loading \thispackage\ (or later on using |\caption|\-|setup|).
+%
+% \medskip
+%
+% Another new feature is the automatic check for compatibility; if an
+% incompatibility will be found, a warning message will be issued and if a strong
+% incompatibility was found some features of \thispackage\ will be disabled.
+% Please note that only this check was added to \thispackage, so if you get
+% such warning message, the previous versions of \thispackage\ were incompatible
+% as well, but did not issued such warning, they were ``only'' having
+% side-effects or causing problems.
+% So these warnings only say that some bad side effects or problems could
+% happen, but not that they actually will happen.
+% Anyway, if you use \thispackage\ in such circumstances,
+% you should use it with care.
+%
+% \bigskip
+%
+% \begin{Note*}
+% \Thispackage\ \version{3.0} offered the option |caption=|\x|false|,
+% which used to be a workaround for not using the whole \package{caption} package
+% (leaving the caption stuff offered by the document class or other packages
+% intact), but keeping the \package{subfig} package\cite{subfig} working.
+% This mechanism is obsolete and not offered anymore, please pass this option
+% to the \package{subfig} package instead and do not load \thispackage\ anymore.
+% \end{Note*}
+%
+% \iffalse
+% --------------------------------------------------------------------------- %
+% \fi
+%
+% \clearpage
+% \section{Commands for document class authors}
+%
+% A document class could simply load the \package{caption} package instead
+% of defining an own variant of |\@make|\-|caption|. However if the author decides
+% not to do this -- for whatever reason -- there is a second option:
+%
+% \NEWfeature{v3.5}
+% If a document class defines |\caption@document|\-|class|, an adaption to the
+% \package{caption} package will be loaded as |caption-|\meta{documentclass}|.sto|
+% if the \package{caption} kernel is loaded.
+% The goal of this adaption file is changing the default settings of the
+% \package{caption} package so simply loading it (without any package options)
+% will not make any harm to the look at feel of the captions.
+% This gives end-users the opportunity to fine-tune certain aspects of the
+% appearance of captions by adding package options, without unwanted
+% side-effects on other aspects of the appearance.
+%
+% In both cases the command |\Set|\-|Caption|\-|Default|
+% could be used to adapt the \package{caption} package default values:
+%
+% \DescribeMacro{\SetCaptionDefault}
+% The command
+% \begin{quote}
+% |\SetCaptionDefault*|\marg{option}\marg{default value}
+% \end{quote}
+% changes the default value for the option \meta{option}, for example:
+% \begin{quote}
+% |\SetCaptionDefault{format}{hang}|\\
+% |\SetCaptionDefault{justification}{raggedright}|\\
+% |\DeclareCaptionLabelSeparator{silly}{ +++ }|\\
+% |\SetCaptionDefault{labelseparator}{silly}|
+% \end{quote}
+% This command is available for the options
+% |box|,
+% |font|,
+% |format|,
+% |justification|,
+% |label|\-|font|,
+% |label|\-|format|,
+% |label|\-|separator|,
+% |list|\-|format|,
+% |margin|,
+% |parbox|,
+% |position|,
+% |single|\-|line|\-|check|,
+% |text|\-|font|,
+% |text|\-|format|, and
+% |width|.
+%
+% The starred variant only makes a difference when setting the default length
+% of either |margin| or |width|, in this case it will use |\def| internally
+% instead of |\edef| to store the value so the actual margin will be calculated
+% when used (and not when set).
+%
+% \DescribeMacro{\SetCaptionFallback}
+% The command
+% \begin{quote}
+% |\SetCaptionFallback|\marg{option}\marg{fallback value}
+% \end{quote}
+% changes the fallback value for the option \meta{option}, for example:
+% \begin{quote}
+% |\SetCaptionFallback{labelformat}{simple}|
+% \end{quote}
+% Currently only the pre-defined label format `original' uses a fallback
+% value when |\fnum@|\meta{environment} is not defined for the current (floating)
+% environment.
+%
+% \DescribeMacro{\AtCaptionPackage}
+% The adaption file will be loaded when the \package{caption} kernel |caption3.sty|
+% will be loaded so the given adaptions will be done for the \package{floatrow}
+% and \package{subfig} packages even if the \package{caption} package isn't loaded.
+%
+% But some adaptions have to be done for the \package{caption} package,
+% and for this reason the hook
+% \begin{quote}|\AtCaptionPackage|\marg{code}\end{quote}
+% is offered to authors of adaption files.
+% The \meta{code} inside the hook will be executed right before the given package
+% options will be evaluated.
+%
+% For example the adaption file for the \KOMAScript\ document classes
+% uses |\At|\-|Begin|\-|Caption| to re-define the \package{caption} package
+% options |figure|\-|position| and |table|\-|position| to issue a warning
+% that using these options have little effect here.
+%
+% \DescribeMacro{\AfterCaptionPackage}
+% The additional hook
+% \begin{quote}|\AfterCaptionPackage|\marg{code}\end{quote}
+% is offered to authors of adaption files as well.
+% The \meta{code} inside the hook will be executed at the very end of the
+% \package{caption} package.
+%
+% \iffalse
+% --------------------------------------------------------------------------- %
+% \fi
+%
+% \clearpage
+% \section{Commands for babel language package authors}
+%
+% \NEWfeature{v3.5}
+% \DescribeMacro{\caption@switchdefault}
+% If the \package{caption3} kernel package is loaded, the command
+% \begin{quote}|\caption@switchdefault|\marg{option}\marg{code with \#1}\marg{new value}\end{quote}
+% is available which saves the old default value of the given option using
+% \meta{code} and sets the new default value afterwards.
+%
+% \DescribeMacro{\caption@restoredefault}
+% The command
+% \begin{quote}|\caption@restoredefault|\marg{option}\marg{old value}\end{quote}
+% restores the old default value which was stored in \meta{old value} before.
+%
+% Example:
+% \begin{quote}
+% |\DeclareCaptionLabelSeparator{french}{|\ldots|}|\\
+% |\addto\extrasfrench{%|\\
+% | \caption@switchdefault{labelseparator}{\babel@save #1}{french}}|\\
+% |% Note: \caption@restoredefault isn't needed here|
+% \end{quote}
+%
+% Another example:
+% \begin{quote}
+% |\caption@switchdefault{font}{\let\original@captionfont#1}{it}%|\\
+% \ldots\\
+% |\caption@restoredefault{font}{\original@captionfont}%|\\
+% \end{quote}
+%
+% Since boths commands are defined with |\def| inside the \package{caption3}
+% kernel, they could be pre-defined with
+% \begin{quote}
+% |\providecommand\caption@switchdefault[3]{}|\\
+% |\providecommand\caption@restoredefault[2]{}|
+% \end{quote}
+% inside the babel language package so their existence doesn't need to be tested
+% prior use.
+%
+% Additionally babel language packages should not re-define |\@make|\-|caption|
+% if the \package{caption} package is loaded, i.e.~if |\caption@makecaption| is
+% defined. (Unfortunately one cannot use the \LaTeX{} kernel command
+% |\@if|\-|package|\-|loaded{caption}| here since it's only available in the
+% document preamble.)
+%
+% Please note that code like
+% \begin{quote}
+% |\addto\extraswhatever{%|\\
+% | \@ifundefined{caption@makecaption}{%|\\
+% | \babel@save\@makecaption|\\
+% | \let\@makecaption\my@makecaption|\\
+% | }{%|\\
+% | \caption@switchdefault{|\ldots|}{\babel@save #1}{|\ldots|}%|\\
+% | }}|
+% \end{quote}
+% would be wrong since it mixes up the presence of the \package{caption3} kernel
+% and the \package{caption} package.
+% If the \package{caption3} kernel is loaded this does not mean that the
+% \package{caption} package is loaded, too, and the latter one re-defines
+% |\caption|, |\@caption|, and |\@make|\-|caption| while the \package{caption3}
+% kernel does not re-define any of them, instead it only provides (default) values
+% for the \package{caption}, \package{floatrow}, and \package{subfig} package.
+%
+% Currently there is build-in support for the following babel language options:
+% |arabic|, |farsi|, |french|, |hungarian|, |latvian|, and |magyar|.
+% This support could be deactivated by defining
+% \begin{quote}
+% |\def\caption@ifbabel@|\meta{package}|{false}|
+% \end{quote}
+% where \meta{package} is either |arabi|, |french|, |frenchle|, |hungarian|,
+% or |latvian|.
+%
+% \iffalse
+% --------------------------------------------------------------------------- %
+% \fi
%
% \pagebreak[4]
% \section*{Internal commands}
@@ -145,11 +4306,8 @@
% Internal command & Currently used by \\
% \hline
% |\caption@kernel@addcontentsline| & \package{floatrow} \\
-% |\caption@makecaption| & \package{bidi} \\
% |\caption@settype| & \package{newfloat} \\
% |\caption@setsubtype| & \package{floatrow} \\
-% |\caption@starfalse| & \package{bidi} \\
-% |\caption@startrue| & \package{bidi} \\
% |\caption@xlabel| & \package{cleveref} \\
% \end{tabular}\end{quote}
%
@@ -160,10 +4318,159 @@
% but we are working on it on the Git branch \texttt{feature/lwarp}:
% \url{https://gitlab.com/axelsommerfeldt/caption/-/tree/feature/lwarp}
%
-% \StopEventually{}
-% \clearpage
-% \tableofcontents
-%
+% \iffalse
+% --------------------------------------------------------------------------- %
+% \fi
+%
+% \StopEventually{%^^A
+% \begin{thebibliography}{99}
+%
+% \bibitem{TLC2}
+% Frank Mittelbach and Michel Goossens:\\
+% \newblock {\em The {\LaTeX} Companion (2nd.~Ed.)},\\
+% \newblock Addison-Wesley, 2004.
+%
+% \bibitem{beamer}
+% Till Tantau:\\
+% \href{http://www.ctan.org/pkg/beamer}%
+% {\emph{User Guide to the Beamer Class, Version 3.07}},\\
+% March 11, 2007
+%
+% \bibitem{KOMAScript}
+% Markus Kohm \& Jens-Uwe-Morawski:\\
+% \href{http://www.ctan.org/pkg/koma-script}%
+% {\emph{KOMA-Script -- a versatile \LaTeXe\ bundle}},\\
+% 2007-01-09
+%
+% \bibitem{NTG}
+% Victor Eijkhout:\\
+% \href{http://www.ctan.org/pkg/ntgclass}%
+% {\emph{An introduction to the Dutch \LaTeX\ document classes}},\\
+% 3 September 1989
+%
+% \bibitem{algorithms}
+% Rog\'erio Brito:\\
+% \href{http://www.ctan.org/pkg/algorithms}%
+% {\emph{Algorithms}},\\
+% June 2, 2006
+%
+% \bibitem{float}
+% Anselm Lingnau:\\
+% \href{http://www.ctan.org/pkg/float}%
+% {\emph{An Improved Environment for Floats}},\\
+% 2001/11/08
+%
+% \bibitem{floatflt}
+% Mats Dahlgren:\\
+% \href{http://www.ctan.org/pkg/floatflt}%
+% {\emph{Welcome to the floatflt package}},\\
+% 1998/06/05
+%
+% \bibitem{floatrow}
+% Olga Lapko:\\
+% \href{http://www.ctan.org/pkg/floatrow}%
+% {\emph{The floatrow package documentation}},\\
+% 2009/08/02
+%
+% \bibitem{fltpage}
+% Sebastian Gross:\\
+% \href{http://www.ctan.org/pkg/fltpage}%
+% {\emph{Welcome to the beta test of fltpage package!}},\\
+% 1998/11/13
+%
+% \bibitem{hyperref}
+% Sebastian Rahtz \& Heiko Oberdiek:\\
+% \href{http://www.ctan.org/pkg/hyperref}%
+% {\emph{Hypertext marks in \LaTeX: a manual for hyperref}},\\
+% November 2012
+%
+% \bibitem{hypcap}
+% Heiko Oberdiek:\\
+% \href{http://www.ctan.org/pkg/oberdiek}%
+% {\emph{The hypcap package -- Adjusting anchors of captions}},\\
+% 2011/02/16
+%
+% \bibitem{listings}
+% Carsten Heinz \& Brooks Moses:\\
+% \href{http://www.ctan.org/pkg/listings}%
+% {\emph{The Listings Package}},\\
+% 2007/02/22
+%
+% \bibitem{longtable}
+% David Carlisle:\\
+% \href{http://www.ctan.org/pkg/longtable}%
+% {\emph{The longtable package}},\\
+% 2004/02/01
+%
+% \bibitem{picinpar}
+% Friedhelm Sowa:\\
+% \href{http://www.ctan.org/pkg/picinpar}%
+% {\emph{Pictures in Paragraphs}},\\
+% July 13, 1993
+%
+% \bibitem{picins}
+% Joachim Bleser and Edmund Lang:\\
+% \href{http://www.ctan.org/pkg/picins}%
+% {\emph{PicIns-Benutzerhandbuch Version 3.0}},\\
+% September~1992
+%
+% \bibitem{rotating}
+% Sebastian Rahtz and Leonor Barroca:\\
+% \href{http://www.ctan.org/pkg/rotating}%
+% {\emph{A style option for rotated objects in \LaTeX}},\\
+% 1997/09/26
+%
+% \bibitem{setspace}
+% Erica M. S. Harris \& Geoffrey Tobin:\\
+% \href{http://www.ctan.org/pkg/setspace}%
+% {\emph{LaTeX Document Package ``setspace''}},\\
+% 1 December 2000
+%
+% \bibitem{sidecap}
+% Rolf Niepraschk \& Hubert G\"a\ss lein:\\
+% \href{http://www.ctan.org/pkg/sidecap}%
+% {\emph{The sidecap package}},\\
+% 2003/06/06
+%
+% \bibitem{subfigure}
+% Steven D. Cochran:\\
+% \href{http://www.ctan.org/pkg/subfigure}%
+% {\emph{The subfigure package}},\\
+% 2005/03/15
+%
+% \bibitem{subfig}
+% Steven D. Cochran:\\
+% \href{http://www.ctan.org/pkg/subfig}%
+% {\emph{The subfig package}},\\
+% 2005/07/05
+%
+% \bibitem{supertabular}
+% Johannes Braams and Theo Jurriens:\\
+% \href{http://www.ctan.org/pkg/supertabular}%
+% {\emph{The supertabular environment}},\\
+% 2004/02/20
+%
+% \bibitem{threeparttable}
+% Donald Arseneau:\\
+% \href{http://www.ctan.org/pkg/threeparttable}%
+% {\emph{Three part tables: title, tabular environment, notes}},\\
+% March 5, 2010
+%
+% \bibitem{wrapfig}
+% Donald Arseneau:\\
+% \href{http://www.ctan.org/pkg/wrapfig}%
+% {\emph{WRAPFIG.STY ver 3.6}},\\
+% Jan 31, 2003
+%
+% \bibitem{xtab}
+% Peter Wilson:\\
+% \href{http://www.ctan.org/pkg/xtab}%
+% {\emph{The xtab package}},\\
+% 2011/07/31
+%
+% \end{thebibliography}
+% }
+%
% \iffalse
% --------------------------------------------------------------------------- %
% \fi
@@ -191,6 +4498,7 @@
% \DoNotIndex{\hangindent,\hbox,\hfil,\hsize,\hskip,\hspace,\hss}
% \DoNotIndex{\ifcase,\ifdim,\ifnum,\ifodd,\ifvoid,\ifvmode}
% \DoNotIndex{\ifx,\ignorespaces,\itshape}
+% \DoNotIndex{\kernel@ifnextchar}
% \DoNotIndex{\Large,\large,\leavevmode,\leftmargini,\leftskip,\let,\linewidth}
% \DoNotIndex{\llap,\long,\m@ne,\margin,\mdseries,\message}
% \DoNotIndex{\newcommand,\newdimen,\newlength,\newline,\newif,\newsavebox}
@@ -216,7 +4524,8 @@
% \fi
%
% \setlength{\parskip}{0pt plus 1pt}
-% \newcommand*\Note[2][Note]{\par{\small\emph{#1:} #2}\par}
+% \renewcommand*\Note[2][Note]{\par{\small\emph{#1:} #2}\par}
+% \let\endNote\undefined
%
% \changes{v1.0}{1994/10/27}{First release}
% \changes{v1.1}{1994/11/03}{New option \texttt{centerlast}}
@@ -232,25 +4541,69 @@
% \fi
%
% \clearpage
+% \section{The implementation}
%
% \iffalse
%<*package>
% \fi
%
-% \section{Identification}
+% \subsection{Introduction}
+%
+% \Thispackage\ consists of two parts -- the kernel
+% (|caption3.sty|) and the main package (|caption.sty|).
+%
+% \Thispackage\ redefines the \LaTeX\ commands
+% |\caption|, |\@caption|, and |\@makecaption| and maps the latter one to
+% |\caption@@make|, giving the user the possibility to control the look \& feel
+% of the captions from floating environments like |figure| and |table|.
+% Furthermore it does similar to the caption stuff coming from other packages
+% (like the \package{longtable} or \package{supertabular} package):
+% Mapping the appropriate internal commands (like |\LT@makecaption| or
+% |\ST@caption|) to the ones offered by the \package{caption3} kernel.
+% So you can think of \thispackage\ as a layer package, it
+% simply provides adaptation layers between the caption stuff coming from
+% \LaTeXe\ or packages, and the caption stuff offered by the
+% \package{caption3} kernel.
+%
+% \subsection{Identification}
%
+% We need at least \LaTeX2e\ version 1994/12/01.
% \begin{macrocode}
\NeedsTeXFormat{LaTeX2e}[1994/12/01]
-\ProvidesPackage{caption}[2020/10/26 v3.5g Customizing captions (AR)]
% \end{macrocode}
%
-% \section{Loading the kernel}
+% Bypass the release declarations in case the \LaTeX\ kernel doesn’t know how to deal with them
+% (as suggested by \url{https://www.latex-project.org/publications/2018-FMi-TUB-tb122mitt-version-rollback.pdf}).
+% \begin{macrocode}
+\providecommand\DeclareRelease[3]{}
+\providecommand\DeclareCurrentRelease[2]{}
+% \end{macrocode}
+%
+% Declare all supported releases.
+% \begin{macrocode}
+\DeclareRelease{v1}{1994-10-27}{caption_1995-04-05.sty}
+\DeclareRelease{v3.0}{2003-12-20}{caption_2007-04-16.sty}
+\DeclareRelease{v3.1}{2007-09-01}{caption_2010-01-09.sty}
+\DeclareRelease{v3.2}{2011-08-06}{caption_2011-11-10.sty}
+\DeclareRelease{v3.3}{2013-01-10}{caption_2019-09-01.sty}
+\DeclareRelease{v3.4}{2019-11-24}{caption_2020-07-29.sty}
+\DeclareRelease{v3.5}{2020-08-30}{caption_2020-10-26.sty}
+\DeclareCurrentRelease{v3.6}{2022-02-20}
+% \end{macrocode}
%
+% Identify the current version of the package.
% \begin{macrocode}
-\RequirePackage{caption3}[2020/10/06] % needs v2.2b or newer
+\ProvidesPackage{caption}[2022/02/20 v3.6 Customizing captions (AR)]
% \end{macrocode}
%
-% \section{Check against unknown document classes}
+% \subsection{Loading the kernel}
+%
+% Load a matching version of the \package{caption} kernel.
+% \begin{macrocode}
+\RequirePackage{caption3}[2022/01/07] % needs v2.3 or newer
+% \end{macrocode}
+%
+% \subsection{Check against unknown document classes}
%
% \begin{macrocode}
\caption@ifbool{documentclass}{}{%
@@ -259,7 +4612,7 @@
standard defaults will be used}}
% \end{macrocode}
%
-% \section{Check against incompatible packages}
+% \subsection{Check against incompatible packages}
%
% \changes{v3.0p}{2007/04/06}{Check against obsolete \package{caption2} package added}
% \begin{macrocode}
@@ -271,41 +4624,109 @@
}{}
% \end{macrocode}
%
+% Check against incompatible packages which used to work fine with \version{1} of the `caption' package.
% \changes{v3.1}{2007/06/15}{Check against incompatible \package{ftcap} package added}
% \changes{v3.1}{2007/06/15}{Check against incompatible \package{nonfloat} package added}
% \changes{v3.1}{2007/06/18}{Check against incompatible \package{topcapt} package added}
+% \changes{v3.6}{2021/01/02}{Check against incompatible packages \package{ftcap}, \package{nonfloat}, and \package{topcapt} revised}
% \begin{macrocode}
\caption@AtBeginDocument{%
- \@ifpackageloaded{ftcap}{\caption@DisablePositionOption{ftcap}}{}%
- \@ifpackageloaded{nonfloat}{\caption@DisablePositionOption{nonfloat}}{}%
- \@ifpackageloaded{topcapt}{\caption@DisablePositionOption{topcapt}}{}}
+ \caption@setincompatible{\@ifpackageloaded{captcont}}{captcont package}%
+ \caption@setincompatible{\@ifpackageloaded{ftcap}}{ftcap package}%
+ \caption@setincompatible{\@ifpackageloaded{nonfloat}}{nonfloat package}%
+ \caption@setincompatible{\@ifpackageloaded{topcapt}}{topcapt package}}
+% \end{macrocode}
+%
+% \begin{macro}{\caption@setincompatible}
+% \changes{v3.4}{2019/09/09}{This macro added}
+% \changes{v3.6}{2020/12/22}{Adapted to fallback concept}
+% |\caption@setincompatible|\marg{condition}\marg{message text}
+% \begin{macrocode}
+\newcommand*\caption@setincompatible[2]{%
+ #1{%
+ \caption@Error{%
+ The #2 is incompatible to the\MessageBreak
+ current version of the `caption' package,\MessageBreak
+ so try \string\usepackage{caption}[=v1] instead}%
+ }{}}
+\@onlypreamble\caption@setincompatible
% \end{macrocode}
-% \begin{macro}{\caption@DisablePositionOption}
-% \changes{v3.1g}{2008/03/20}{\texttt{position=b} added}
-% \changes{v3.1h}{2008/03/29}{%
-% Name changed from \cs{caption@IncompatiblePackage} to \cs{caption@DisablePositionOption};
-% disables the `position' option now instead of issuing a warning}
-% |\caption@DisablePositionOption|\marg{package}\par
-% disables the `position' option.
+% \end{macro}
+%
+% \subsection{Positioning}
+%
% \begin{macrocode}
-\newcommand*\caption@DisablePositionOption[1]{%
- \caption@InfoNoLine{%
- `#1' package detected; setting `position=b' for compatibility reasons}%
- \caption@setposition b%
+\DeclareCaptionPosition{auto}{#2}{%
+ \caption@ifsubcaption@above{#2}{%
+ \ifvmode
+ \caption@autoposition{#1}{#2}%
+ \else
+ #2%
+ \fi}}
% \end{macrocode}
% \begin{macrocode}
- \DeclareCaptionOption{position}{%
- \caption@Error{Usage of the `position' option is incompatible\MessageBreak
- to the `#1' package}}}
+\def\caption@position@a{\caption@position@auto} % needed by floatrow package, \flrow@cappos
+% \end{macrocode}
+%
+% \begin{macrocode}
+\SetCaptionDefault{position}{auto}
+% \end{macrocode}
+%
+% \begin{macro}{\caption@setautoposition}
+% \changes{v3.1}{2007/06/10}{This macro added}
+% \changes{v3.5}{2020/07/27}{Adapted to current implementation of `auto'}
+% \changes{v3.6}{2021/01/03}{Adapted to current implementation of `auto'}
+% |\caption@setautoposition|\marg{position}\\
+% replaces the above algorithm by a different one (or a fixed position setting).
+% \begin{macrocode}
+\newcommand*\caption@setautoposition[1]{%
+ \renewcommand*\caption@position@auto{%
+ \@nameuse{caption@position@#1}}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@autoposition}
+% \changes{v3.0a}{2004/01/23}{\cs{ifvmode} added}
+% \changes{v3.0b}{2004/05/16}{Split into \cs{caption@fixposition} & \cs{caption@autoposition}}
+% \changes{v3.5}{2020/07/27}{Adapted to current implementation of `auto'}
+% \changes{v3.6}{2021/01/05}{Adapted to current implementation of `auto'; \cs{ifvmode} moved into definition of `auto'}
+% We try to guess the current position of the caption by checking |\prev|\-|depth|.
+%
+% A different solution would be setting the |\space|\-|factor| to something
+% not much less than 1000 (for example 994) in |\caption@start| and
+% checking this value here by |\ifnum\space|\-|factor=994|.
+% (It's implemented in the \package{threeparttable} package\cite{threeparttable} this way.)
+%
+% Another idea would be checking |\@if|\-|mini|\-|page|, but since some packages
+% typeset the caption within a simple |\vbox| this does not seem to be a good one.
+% \begin{macrocode}
+\newcommand*\caption@autoposition[2]{%
+ \edef\caption@tempa{\the\prevdepth}%
+ \caption@Debug{\string\prevdepth=\caption@tempa}%
+ \ifdim\prevdepth>-\p@
+ #2% position=bottom
+ \else
+ #1% position=top
+ \fi}
% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@autoposition}
+% \changes{v3.6}{2021/01/05}{This macro added}
+% |\DeclareCaptionAutoPosition|\marg{code with \#1 and \#2}\\
+% replaces the inner algorithm of |position=auto| with a custom one.
+% If \#1 is applied the skip will be typeset below the caption
+% (like |position=t|), if \#2 is applied the skip will by typeset
+% above the caption (like |position=b|).
% \begin{macrocode}
-\@onlypreamble\caption@DisablePositionOption
+\newcommand*\DeclareCaptionAutoPosition{%
+ \renewcommand*\caption@autoposition[2]}%
% \end{macrocode}
% \end{macro}
%
-% \section{Declaration of options}
+% \subsection{Declaration of options}
%
-% \subsection{Miscellaneous options}
+% \subsubsection{Miscellaneous options}
%
% \begin{macrocode}
\DeclareCaptionOption*{config}[caption]{%
@@ -335,105 +4756,8 @@
\captionsetup{list-entry=default}
% \end{macrocode}
%
-% \begin{macro}{\caption@declparboxrestore}
-% \changes{v3.5g}{2020/10/26}{This macro added}
-% |\caption@declparboxrestore|\marg{name}\marg{code}
-% \begin{macrocode}
-% TODO: Remove \caption@declparboxrestore
-\newcommand\caption@declparboxrestore{%
- \caption@decl{parboxrestore}}
-% \end{macrocode}
-% \begin{macrocode}
-\@onlypreamble\caption@declparboxrestore
-% \end{macrocode}
-% \end{macro}
-%
-% \begin{macro}{\caption@setparboxrestore}
-% \changes{v3.2}{2010/11/07}{This macro added}
-% \changes{v3.5g}{2020/10/26}{New implementation; default changed from `partial' to `full'}
-% |\caption@setparboxrestore|\marg{\purett{partial} or \purett{full}}
-% \begin{macrocode}
-% TODO: Remove \caption@setparboxrestore
-\newcommand*\caption@setparboxrestore{%
- \caption@set{parboxrestore}}
-% \end{macrocode}
-% \begin{macrocode}
-\caption@declparboxrestore{full}{%
- \@parboxrestore}
-% \end{macrocode}
-% The original code (from |latex/base/ltboxes.dtx|):
-% \begin{verbatim}
-% \def\@parboxrestore{\@arrayparboxrestore\let\\\@normalcr}
-% \def\@arrayparboxrestore{%
-% \let\if@nobreak\iffalse
-% \let\if@noskipsec\iffalse
-% \let\par\@@par
-% \let\-\@dischyph
-% \let\'\@acci\let\`\@accii\let\=\@acciii
-% \parindent\z@ \parskip\z@skip
-% \everypar{}%
-% \linewidth\hsize
-% \@totalleftmargin\z@
-% \leftskip\z@skip \rightskip\z@skip \@rightskip\z@skip
-% \parfillskip\@flushglue \lineskip\normallineskip
-% \baselineskip\normalbaselineskip
-% \sloppy}
-% \end{verbatim}%^^A
-% This one will be used by |\@caption| instead of |\@parboxrestore|.
-% \begin{macrocode}
-\caption@declparboxrestore{partial}{%
- \let\if@nobreak\iffalse
- \let\if@noskipsec\iffalse
- \let\par\@@par
-% \let\-\@dischyph
-% \let\'\@acci\let\`\@accii\let\=\@acciii
- \parindent\z@ \parskip\z@skip
- \everypar{}%
-% \linewidth\hsize
-% \@totalleftmargin\z@
- \leftskip\z@skip \rightskip\z@skip \@rightskip\z@skip
- \parfillskip\@flushglue \lineskip\normallineskip
- \baselineskip\normalbaselineskip
- \sloppy
- \let\\\@normalcr}
-% \end{macrocode}
-% \end{macro}
-%
-% \begin{macro}{\caption@parboxrestore@mini}
-% \changes{v3.2}{2010/10/24}{This macro added}
-% \changes{v3.5g}{2020/10/26}{Renamed from \cs{caption@boxrestore@mini} to \cs{caption@parboxrestore@mini}}
-% Resets |\par| so the very first |\par| in |\@caption| behaves quite the same as in floating environments.
-% Will be used by |\set|\-|caption|\-|type|.
-% \begin{macrocode}
-\caption@declparboxrestore{mini}{%
- \let\par\@@par
- \parindent\z@ \parskip\z@skip
- \sloppy}
-% \end{macrocode}
-% \end{macro}
-%
-% `default' usually maps to `full'.
-% \changes{v3.5g}{2020/10/26}{The default of \cs{caption@parboxrestore} maps to `full' instead of `partial' now}
-% \begin{macrocode}
-\SetCaptionDefault{parboxrestore}{full}
-% \end{macrocode}
-%
% \changes{v3.2}{2010/11/07}{Option \opt{parboxrestore} added}
-% \begin{macrocode}
-% TODO: Remove the (undocumentated) option "parboxrestore"
-\DeclareCaptionOption{parboxrestore}{\caption@setparboxrestore{#1}}
-% \end{macrocode}
-%
-% \begin{macro}{\caption@parboxrestore}
-% \changes{v3.1}{2007/03/03}{This macro and its usage added}
-% \changes{v3.1b}{2007/09/17}{Bugfix: Redefinition of CR added}
-% \changes{v3.2}{2010/11/07}{Support of option \opt{parboxrestore} added}
-% \changes{v3.5g}{2020/10/26}{New implementation; renamed from \cs{caption@boxrestore} to \cs{caption@parboxrestore}}
-% \begin{macrocode}
-% TODO: Change definition to \def\caption@parboxrestore{\@parboxrestore}
-\captionsetup{parboxrestore=default}
-% \end{macrocode}
-% \end{macro}
+% \changes{v3.6}{2021/01/07}{(Undocumented) Option \opt{parboxrestore} removed}
%
% \changes{v3.1f}{2007/11/28}{Option \opt{@minipage=} added}
% \begin{macrocode}
@@ -444,58 +4768,30 @@
\captionsetup{@minipage=default}
% \end{macrocode}
%
-% \subsection{caption v1.x compatibility options}
% \changes{v3.1}{2007/07/21}{Option `compatibility' added}
% \changes{v3.1}{2007/09/01}{caption v1.x compatibility options revised}
% \changes{v3.1d}{2007/10/24}{Bugfix 07-10-24 in caption v1.x$ compatibility options}
% \changes{v3.5a}{2020/09/02}{caption v1.x compatibility options fixed}
+% \changes{v3.6}{2020/12/22}{Option `compatibility' adapted to fallback concept}
%
-% Currently we support |v1| and |v3| as values for the |compatibility=| option.
-% But since this used to be a boolean option is the past we still support any boolean value
-% for compatibility reasons.
+% We only support boolean values for the |compatibility=| option
+% since these were the only one which were documented in the past.
%
% \begin{macrocode}
-\DeclareCaptionOption{compatibility}[v1]{%
- \caption@ifinlist{#1}{v1,1,true,yes,on}{%
- \let\caption@ifcompatibility\@firstoftwo
- }{\caption@ifinlist{#1}{v3,3,0,false,no,off}{%
- \let\caption@ifcompatibility\@secondoftwo
+\DeclareCaptionOption{compatibility}[1]{%
+ \caption@ifinlist{#1}{1,true,yes,on}{%
+ \caption@Error{%
+ Obsolete compatibility value `#1',\MessageBreak
+ please use either \string\usepackage{caption}[=v1]\MessageBreak
+ or \string\usepackage{caption-light} instead}%
+ }{\caption@ifinlist{#1}{0,false,no,off}{%
+ % nothing to do
}{%
\caption@Error{Undefined compatibility value `#1'}%
}}}
-\@onlypreamble@key{caption}{compatibility}
-% \end{macrocode}
-% \begin{macrocode}
-\caption@setbool{compatibility}{0} % default: Try not to be compatible to v1.x
% \end{macrocode}
%
-% \begin{macro}{\caption@setincompatible}
-% \changes{v3.4}{2019/09/09}{This macro added}
-% |\caption@setincompatible|\marg{condition}\marg{message text}
-% \begin{macrocode}
-\newcommand*\caption@setincompatible[2]{%
- #1{%
- \caption@WarningNoLine{%
- #2;\MessageBreak
- Setting compatibility to v1}%
- \caption@setbool{compatibility}{1}%
- }{}}
-% \end{macrocode}
-% \end{macro}
-%
-% Check against incompatible packages which used to work fine with v1 of the `caption' package.
-% \begin{macrocode}
-\caption@AtBeginDocument{\caption@ifcompatibility{}{%
-% \end{macrocode}
-% The usage of the (now obsolete) \package{captcont} package,
-% which brings its own definition of |\caption*|, was quite common in the old days.
-% \begin{macrocode}
- \caption@setincompatible{\@ifpackageloaded{captcont}}{captcont package is loaded}%
-% \end{macrocode}
-% To be continued\ldots
-% \begin{macrocode}
-}}
-% \end{macrocode}
+% \subsubsection{caption v1.x compatibility options}
%
% \begin{macrocode}
\DeclareCaptionOptionNoValue*{normal}{%
@@ -540,7 +4836,7 @@
\DeclareCaptionOptionNoValue*{ruled}{\caption@setbool{ruled}{1}}
% \end{macrocode}
%
-% \subsection{caption2 v2.x compatibility options}
+% \subsubsection{caption2 v2.x compatibility options}
% \changes{v3.0h}{2005/07/08}{caption2 \version{2.x} compatibility options added}
% \changes{v3.1}{2007/09/01}{caption2 v2.x compatibility options revised}
% \changes{v3.1d}{2007/10/24}{Bugfix 07-10-24 in caption v2.x$ compatibility options}
@@ -560,7 +4856,7 @@
\caption@WarningNoLine{Obsolete option `ignoreLTcapwidth' ignored}}
% \end{macrocode}
%
-% \subsection{Obsolete caption v3.0 options}
+% \subsubsection{Obsolete caption v3.0 options}
% \changes{v3.1}{2007/05/07}{Package option \opt{caption} marked as obsolete,
% gives error now}
%
@@ -574,7 +4870,7 @@
and do *not* load the caption package anymore}}}
% \end{macrocode}
%
-% \subsection{fltpage package support options}
+% \subsubsection{fltpage package support options}
%
% \changes{v3.1}{2007/09/01}{Options `FPlist' \& `FPref' added}
% With these options is controlled where the list-of entry and |\ref| resp.
@@ -597,7 +4893,7 @@
\captionsetup{FPlist=caption,FPref=figure}
% \end{macrocode}
%
-% \subsection{hyperref package support options}
+% \subsubsection{hyperref package support options}
%
% \changes{v3.1}{2007/06/21}{Options `hypcap' \& `hypcapspace' added}
% With |hypcap=off| one can turn the \package{hypcap} support off
@@ -610,7 +4906,7 @@
\captionsetup{hypcap=1,hypcapspace=.5\baselineskip}
% \end{macrocode}
%
-% \section{Document class support}
+% \subsection{Document class support}
%
% Execute the code declared with |\At|\-|Caption|\-|Package|.
% We do this right before processing the options so stuff done with
@@ -622,7 +4918,7 @@
\let\AtCaptionPackage\@firstofone
% \end{macrocode}
%
-% \section{Processing of options}
+% \subsection{Processing of options}
%
% \changes{v3.0m}{2007/03/04}{Verbose option added}
% \changes{v3.1}{2007/07/02}{Verbose option removed from package}
@@ -633,30 +4929,73 @@
\caption@ProcessOptions*{caption}
% \end{macrocode}
%
-% \section{\cs{caption}, \cs{@caption}, and \cs{@makecaption}}
+% \subsection{\cs{caption}, \cs{@caption}, and \cs{@makecaption}}
%
-% \begin{macro}{\caption@ifflag}
-% \changes{v3.3}{2011/12/28}{This switch added}
-% \changes{v3.3}{2018/08/08}{Rewritten (and renamed) so a counter is used instead of a switch}
+% \begin{macro}{\caption@flags}
+% \changes{v3.3}{2018/08/08}{This counter and associated macros added}
% Since we support continued floats and sub-figures it's not an easy task
-% to manage the figure (and table) counter. (Especially since previous versions
-% of the caption package has proven that correcting a counter locally is not a good idea.)
-%
-% These three switches hold the
-% current status: |\caption@if|\-|flag{2}| is set if the caption was already
-% typeset (so the counter doesn't need to be incremented for sub-figures),
-% |\caption@if|\-|flag{4}| is set if there is already content which have
-% incremented the counter (so the counter doesn't need to be incremented
-% for the main caption, further sub-figures, and other stuff), and
-% |\caption@if|\-|flag{1}| is set if |\continued|\-|float| was given.
+% to manage the figure (and table) counter, especially since previous versions
+% of the caption package have proven that correcting a counter locally is not a good idea,
+% and to make it dependent on the |position=| setting (like the \package{subfig} package does)
+% is not a good idea, either.
%
% In the past three boolean switches were used to store the flags, but since some
% packages (like the \package{floatrow} and \package{tabu} package) try hard to keep
-% counter changes locally under certain circumstances, it seems a good idea to make
-% these flags a counter value, too.
+% \LaTeX{} counter changes locally under certain circumstances, it seems a good idea to make
+% these flags a \LaTeX{} counter value.
+%
+% See also:
+% \url{https://gitlab.com/axelsommerfeldt/caption/-/issues/27} and
+% \url{https://tex.stackexchange.com/questions/444942/subcaptionbox-in-tabu-wrong-numbering-of-subfigures}
+%
% \begin{macrocode}
\newcounter{caption@flags}
% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@clrflags}
+% \changes{v3.3}{2018/08/08}{This macro added}
+% |\caption@clrflags| clears all flags.
+% Note that we have to use |\set|\-|counter| here (instead of using \TeX{} primitives)
+% since some packages re-define |\set|\-|counter| to keep counter changes local.
+% \begin{macrocode}
+\newcommand*\caption@clrflags{%
+ \setcounter{caption@flags}{0}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@ifflags}
+% \changes{v3.6}{2020/12/28}{This macro added}
+% |\caption@ifflags|\marg{yes-code}\marg{no-code}\\
+% tests if any of the flags is set.
+% \begin{macrocode}
+\newcommand*\caption@ifflags{%
+ \ifcase\c@caption@flags
+ \expandafter\@secondoftwo
+ \else
+ \expandafter\@firstoftwo
+ \fi}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@setflag}
+% \changes{v3.3}{2013/04/14}{This macro added}
+% \changes{v3.3}{2018/08/08}{Rewritten so a counter is used instead of a switch}
+% |\caption@setflag|\marg{number}\\
+% sets the flag with the given number (where \meta{number} is one of 1, 2, 4, 8, 16, \ldots).
+% Note that we have to use |\add|\-|to|\-|counter| here (instead of |\advance|)
+% since some packages re-define |\add|\-|to|\-|counter| to keep counter changes local.
+% \begin{macrocode}
+\newcommand*\caption@setflag[1]{%
+ \caption@ifflag{#1}{}{\addtocounter{caption@flags}{#1}}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@ifflag}
+% \changes{v3.3}{2011/12/28}{This switch added}
+% \changes{v3.3}{2018/08/08}{Rewritten (and renamed) so a counter is used instead of a switch}
+% |\caption@ifflag|\marg{number}\marg{yes-code}\marg{no-code}\\
+% tests if the flag with the given number is set (where \meta{number} is one of 1, 2, 4, 8, 16, \ldots).
% \begin{macrocode}
\newcommand*\caption@ifflag[1]{%
\@tempcnta\c@caption@flags
@@ -669,37 +5008,81 @@
% \end{macrocode}
% \end{macro}
%
-% \begin{macro}{\caption@clrflags}
-% \changes{v3.3}{2018/08/08}{This macro added}
-% \begin{macro}{\caption@clrflag}
-% \changes{v3.3}{2013/04/14}{This macro added}
-% \changes{v3.3}{2018/08/08}{Rewritten so a counter is used instead of a switch}
-% \begin{macro}{\caption@setflag}
-% \changes{v3.3}{2013/04/14}{This macro added}
-% \changes{v3.3}{2018/08/08}{Rewritten so a counter is used instead of a switch}
-% Furthermore we introduce the macros \cs{caption@clrflag} and \cs{caption@setflag}
-% for clearing resp.~setting these flags.
+% \begin{macro}{\caption@setcontinued}
+% \changes{v3.6}{2020/09/20}{This macro added}
+% |\caption@setcontinued| sets the `continued float' flag, i.e. |\continued|\-|float| was used.
% \begin{macrocode}
-\newcommand*\caption@clrflags{%
- \setcounter{caption@flags}\z@}
+\newcommand*\caption@setcontinued{\caption@setflag1}
% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@ifcontinued}
+% \changes{v3.3}{2011/12/28}{This switch added}
+% \changes{v3.3}{2018/08/08}{\cs{ifcaption@ContinuedFloat} replaced by \cs{caption@ifflag1}}
+% \changes{v3.6}{2020/09/20}{Revived as \cs{caption@ifcontinued}}
+% |\caption@if|\-|continued|\marg{yes-code}\marg{no-code}\\
+% tests if the `continued float' flag is set.
% \begin{macrocode}
-\newcommand*\caption@clrflag[1]{%
- \caption@ifflag{#1}{\caption@addtoflags{-#1}}{}}
-\newcommand*\caption@setflag[1]{%
- \caption@ifflag{#1}{}{\caption@addtoflags{#1}}}
-\newcommand*\caption@addtoflags{%
- \addtocounter{caption@flags}}
+\newcommand*\caption@ifcontinued{\caption@ifflag1}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@setcaption}
+% \changes{v3.6}{2020/09/20}{This macro added}
+% |\caption@setcaption| sets the `caption' flag, i.e. |\caption|, |\phantom|\-|caption|, or |\caption|\-|list|\-|entry| was used.
+% \begin{macrocode}
+\newcommand*\caption@setcaption{\caption@setflag2}
% \end{macrocode}
% \end{macro}
+%
+% \begin{macro}{\caption@ifcaption}
+% \changes{v3.3}{2011/12/28}{This switch added}
+% \changes{v3.3}{2018/08/08}{\cs{ifcaption@caption} replaced by \cs{caption@ifflag2}}
+% \changes{v3.6}{2020/09/20}{Revived as \cs{caption@ifcaption}}
+% |\caption@if|\-|caption|\marg{yes-code}\marg{no-code}\\
+% tests if the `caption' flag is set.
+% \begin{macrocode}
+\newcommand*\caption@ifcaption{\caption@ifflag2}
+% \end{macrocode}
% \end{macro}
+%
+% \begin{macro}{\caption@setsubcaption}
+% \changes{v3.6}{2020/09/20}{This macro added}
+% |\caption@setsubcaption| sets the `subcaption' flag, i.e. |\subcaption|, |\subcaptionbox|, \ldots was used.
+% \begin{macrocode}
+\newcommand*\caption@setsubcaption{%
+ \caption@ifcaption{\caption@setflag8}{\caption@setflag4}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@ifsubcaption@above}
+% \changes{v3.3}{2011/12/28}{This switch added}
+% \changes{v3.3}{2018/08/08}{\cs{ifcaption@subcaption} replaced by \cs{caption@ifflag4}}
+% \changes{v3.6}{2020/09/20}{Revived as \cs{caption@ifsubcaption@above} and \cs{caption@ifsubcaption@below}}
+% |\caption@if|\-|sub|\-|caption@above|\marg{yes-code}\marg{no-code}\\
+% tests if the `subcaption' flag was set before the `caption' flag was set, i.e. a sub-caption was typeset \emph{above} the corresponding caption.
+% \begin{macrocode}
+\newcommand*\caption@ifsubcaption@above{\caption@ifflag4}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@ifsubcaption@below}
+% \changes{v3.3}{2011/12/28}{This switch added}
+% \changes{v3.3}{2018/08/08}{\cs{ifcaption@subcaption} replaced by \cs{caption@ifflag4}}
+% \changes{v3.6}{2020/09/20}{Revived as \cs{caption@ifsubcaption@above} and \cs{caption@ifsubcaption@below}}
+% |\caption@if|\-|sub|\-|caption@below|\marg{yes-code}\marg{no-code}\\
+% tests if the `subcaption' flag was set after the `caption' flag was set, i.e. a sub-caption was typeset \emph{below} the corresponding caption.
+% \begin{macrocode}
+\newcommand*\caption@ifsubcaption@below{\caption@ifflag8}
+% \end{macrocode}
% \end{macro}
%
% \begin{macro}{\caption@caption}
% \changes{v3.0f}{2005/05/22}{Bugfix: \cs{ContinuedFloat} added}
% \changes{v3.0f}{2005/06/13}{Support of \cs{caption*[]} removed}
% \changes{v3.0l}{2007/01/19}{Minimal support of \textsf{combine} package added}
-% \changes{v3.1}{2007/02/04}{Re-written, does not save\&use original definition anymore}
+% \changes{v3.1}{2007/02/04}{Re-written, does not save \& use original definition anymore}
+% \changes{v3.6}{2022/01/05}{Usage of \cs{caption@Error} replaced by \cs{caption@OutsideFloat}}
% Here comes our definition of |\caption| and |\caption*|.
% Beside the support of the starred variant this code was adapted to the
% various packages we support.
@@ -713,8 +5096,17 @@
\caption@star
{\caption@refstepcounter\@captype}%
{\caption@dblarg{\@caption\@captype}}}%
- {\caption@Error{\noexpand\caption outside float}%
- \caption@gobble}}
+ {\caption@OutsideFloat\caption
+ \caption@withoptargs\@gobbletwo}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@OutsideFloat}
+% \changes{v3.6}{2022/01/05}{This macro added}
+% |\caption@OutsideFloat}| issues a ``\meta{command} outside float'' error.
+% \begin{macrocode}
+\newcommand*\caption@OutsideFloat[1]{%
+ \caption@Error{\string#1 outside float}}
% \end{macrocode}
% \end{macro}
%
@@ -736,6 +5128,7 @@
% \changes{v3.2d}{2011/10/21}{Adapted to the \textsf{memoir} document class}
% \changes{v3.2f}{2012/01/14}{Usage of \cs{M@gettitle} moved to \cs{caption@prepareanchor}}
% \changes{v3.3}{2013/01/06}{Adapted to the \textsf{nag} package}
+% \changes{v3.6}{2022/01/06}{Usage of \cs{caption@nobreak} added to improve \textsf{beamer} document class support}
% As above, our version has been adapted to the packages we support.
% Additionally our code is nested by |\caption@begin|\-|ex| \&
% |\caption@end| instead of |\begin|\-|group| \& |\end|\-|group|.
@@ -753,6 +5146,7 @@
% \end{macrocode}
% \begin{macrocode}
\par
+ \caption@nobreak
\caption@beginex{#1}{#2}{#3}%
\caption@setfloatcapt{%
\caption@parboxrestore
@@ -765,6 +5159,7 @@
\fi
\@makecaption{\csname fnum@#1\endcsname}%
{\ignorespaces\caption@makeanchor{#3}}\par
+ \caption@nobreak
\caption@if@minipage\@minipagetrue\@minipagefalse}%
\caption@end}
% \end{macrocode}
@@ -789,8 +5184,40 @@
% \end{macrocode}
% \end{macro}
%
+% \begin{macro}{\caption@nobreak}
+% \changes{v3.6}{2022/01/06}{This macro added}
+% |\caption@nobreak| for use in places where |\@caption| resp.~|\beamer@makecaption| does |\nobreak|.
+% It's defined to do nothing unless the \cls{beamer} document class is used.
+% \begin{macrocode}
+\newcommand*\caption@nobreak{}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@parboxrestore}
+% \changes{v3.1}{2007/03/03}{This macro definition added}
+% \changes{v3.1b}{2007/09/17}{Bugfix: Redefinition of CR added}
+% \changes{v3.2}{2010/11/07}{Support of option \opt{parboxrestore} added}
+% \changes{v3.5g}{2020/10/26}{New implementation; renamed from \cs{caption@boxrestore} to \cs{caption@parboxrestore}}
+% \changes{v3.6}{2021/01/02}{Always uses \cs{@parboxrestore} now}
+% \changes{v3.6}{2022/02/13}{Hooks added}
+% |\caption@parboxrestore| simply expands to |\@par|\-|box|\-|restore|,
+% surrounded by `before' and `after' hooks.
+% \begin{macrocode}
+\newcommand*\caption@parboxrestore{%
+ \caption@before@parboxrestore
+ \caption@@parboxrestore
+ \caption@after@parboxrestore}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@before@parboxrestore{}
+\newcommand*\caption@@parboxrestore{\@parboxrestore}
+\newcommand*\caption@after@parboxrestore{}
+% \end{macrocode}
+% \end{macro}
+%
% \begin{macro}{\caption@makecaption}
% \changes{v3.1i}{2008/05/06}{Usage of \cs{caption@rule} added}
+% \changes{v3.6}{2022/01/06}{Usage of \cs{caption@nobreak} added to improve \textsf{beamer} document class support}
% |\@makecaption|\marg{label}\marg{text}\par
% We do basically the same as the original code (from the standard
% \LaTeX\ document classes), but take care of the |position=| setting
@@ -798,9 +5225,13 @@
% typeset the caption.
% \begin{macrocode}
\long\def\caption@makecaption#1#2{%
+ \caption@nobreak
\caption@make@above
+ \caption@nobreak
\caption@@make{#1}{#2}%
- \caption@make@below}
+ \caption@nobreak
+ \caption@make@below
+ \caption@nobreak}
% \end{macrocode}
% \end{macro}
%
@@ -826,155 +5257,90 @@
% \end{macro}
%
% \begin{macro}{\caption@redefine}
-% \changes{v3.1k}{2009/03/30}{This macro added, it contains the patching code now}
+% \changes{v3.1}{2007/05/09}{Re-definition of \cs{@xfloat} added}
+% \changes{v3.1b}{2007/09/22}{cs{@xfloat} will now be redefined in compatibility mode, too}
+% \changes{v3.1k}{2009/03/30}{The macro \cs{caption@redefine} contains the patching code now}
+% \changes{v3.5}{2020/08/30}{Re-definition of \cs{@xdblfloat} added}
% \begin{macrocode}
-\newcommand*\caption@redefine{}
+\newcommand*\caption@redefine{%
% \end{macrocode}
-% \end{macro}
-%
-% Prior to \version{3.4} we only redefined |\caption| and |\@caption| if the current definitions
-% were well known, so documents written in the old (\package{caption} package \version{1.x}) days
-% (where |\caption| \& |\@caption| were not redefined by us) still compiled fine.
-% This used to make sense when introducing \version{3.0} in the year 2003
-% but is simply overcautious and especially unwanted by the user nowadays.
-% So starting with \version{3.4} we only do not redefine |\caption| and |\@caption| if the
-% `compatibility' option is set to `v1'.
-%
+% Prior to \version{3.4} we only redefined |\caption| and |\@caption| if the current definitions
+% were well known, so documents written in the old (\package{caption} package \version{1.x}) days
+% (where |\caption| \& |\@caption| were not redefined by us) still compiled fine.
+% This used to make sense when introducing \version{3.0} in the year 2003
+% but is simply overcautious and especially unwanted by the user nowadays.
+% So starting with \version{3.4} we only do not redefine |\caption| and |\@caption| if the
+% `compatibility' option is set to `true', and starting with \version{3.6} we always redefine them.
% \begin{macrocode}
-\g@addto@macro\caption@redefine{%
+ \let\caption\caption@caption
+ \let\@caption\caption@@caption
% \end{macrocode}
-% \begin{macrocode}
- \caption@ifcompatibility{%
-% \end{macrocode}
-% \begin{macrocode}
- \caption@InfoNoLine{
- \noexpand\caption will not be redefined since `compatibility' is set to v1}%
-% \end{macrocode}
-% \begin{macrocode}
- \renewcommand*\caption@redefine{}%
-% \end{macrocode}
-%
-% |\continuedfloat| is not supported in compatibility mode `v1'.
-% \begin{macrocode}
- \renewcommand*\caption@continuedfloat[1]{%
- \caption@Error{Not available with option `compatibility=v1'}}%
-% \end{macrocode}
-%
-% |\caption@start| is not supported in compatibility mode `v1'.
-% \begin{macrocode}
- \caption@AtBeginDocument*{%
- \let\caption@start\relax
- \caption@ifdefined\caption@ORI@capstart{%
- \caption@Debug{%
- Restore hypcap definition of \string\capstart\@gobble}%
- \let\capstart\caption@ORI@capstart}{}%
- }%
-% \end{macrocode}
-%
-% \begin{macro}{\caption@star}
-% We redefine |\caption@star| here so it does not make any harm.
-% \begin{macrocode}
- \renewcommand*\caption@star[2]{#1#2}%
-% \end{macrocode}
-% \end{macro}
-%
-% \begin{macrocode}
- }{%
-% \end{macrocode}
-%
-% \begin{macro}{\caption}
-% \begin{macro}{\@caption}
-% \begin{macrocode}
- \renewcommand*\caption@redefine{%
- \let\caption\caption@caption
- \let\@caption\caption@@caption}%
-% \end{macrocode}
-% \end{macro}
-% \end{macro}
-%
-% \begin{macrocode}
- }%
-% \end{macrocode}
-% \begin{macrocode}
- \caption@redefine
- \caption@AtBeginDocument*{%
- \let\caption@ORI@capstart\@undefined}%
-% \end{macrocode}
-%
-% \begin{macro}{\@xfloat}
-% \changes{v3.1}{2007/05/09}{This re-definition added}
-% \changes{v3.1b}{2007/09/22}{Will now be redefined in compatibility mode, too}
-% \changes{v3.5}{2020/08/30}{Hook added}
% We redefine |\@x|\-|float| so inside floating environments our
% type-specific options will be used, a \package{hyperref}
% anchor will be set etc.
% \begin{macrocode}
\let\caption@ORI@xfloat\@xfloat
+ \let\@xfloat\caption@xfloat
% \end{macrocode}
-% \begin{macrocode}
- \def\@xfloat#1[#2]{%
- \caption@ORI@xfloat{#1}[#2]%
- \caption@settype{#1}%
- \caption@xfloat@hook}%
-% \end{macrocode}
-% Hook, could be extended with |\g@addto@macro\caption@x|\-|float@hook{|\ldots|}|.
-% (The caption type could be found in |\@cap|\-|type|.)
-% \begin{macrocode}
- \newcommand*\caption@xfloat@hook{}%
-% \end{macrocode}
-% \end{macro}
-%
-% \begin{macro}{\@xdblfloat}
-% \changes{v3.5}{2020/08/30}{Re-definition of \cs{xdblfloat} added}
% We redefine |\@xdbl|\-|float|, too, so special options for |figure*|
% resp.~|table*| will be applied here.
% \begin{macrocode}
\let\caption@ORI@xdblfloat\@xdblfloat
+ \let\@xdblfloat\caption@xdblfloat
% \end{macrocode}
% \begin{macrocode}
- \def\@xdblfloat#1[#2]{%
- \caption@ORI@xdblfloat{#1}[#2]% expands to \@xfloat{#1}[#2] + extra stuff
- \caption@setoptions{#1*}%
- \caption@xdblfloat@hook}%
-% \end{macrocode}
-% Hook, could be extended with |\g@addto@macro\caption@xdbl|\-|float@hook{|\ldots|}|.
-% (The caption type could be found in |\@cap|\-|type|.)
-% \begin{macrocode}
- \newcommand*\caption@xdblfloat@hook{}%
-% \end{macrocode}
-% \end{macro}
-%
-% \begin{macrocode}
}
% \end{macrocode}
-%
% Some packages (like the \package{hyperref} package for example) redefines
% |\caption| and |\@caption|, too.
-% So we have to use |\AtBeginDocument| here, so we can make sure
+% So we have to use |\At|\-|Begin|\-|Document| here, so we can make sure
% our definition is the one which will be valid at last.
% \begin{macrocode}
-\caption@AtBeginDocument{\caption@redefine}
+\caption@AtBeginDocument{%
+ \caption@redefine
+ \let\caption@redefine\relax}
% \end{macrocode}
-%
-% \begin{macro}{\@makecaption}
+% The redefinition of |\@make|\-|caption| will be done immediately.
% \begin{macrocode}
\let\@makecaption\caption@makecaption
% \end{macrocode}
% \end{macro}
%
-% \begin{macro}{\phantomcaption}
-% \changes{v3.2}{2010/10/31}{Bugfix 10-09-01b: This macro added}
-% |\phantomcaption|\par
-% Use this one for figures with subcaptions but without main caption.
+% \begin{macro}{\caption@xfloat}
+% \changes{v3.1}{2007/05/09}{Re-definition of \cs{@xfloat} added}
+% \changes{v3.5}{2020/08/30}{Definition and usage of \cs{caption@xfloat@hook} added}
+% \changes{v3.6}{2020/12/27}{Re-definition of \cs{@xfloat} put into \cs{caption@xfloat}}
% \begin{macrocode}
-\newcommand\phantomcaption{%
- \caption@iftype
- {\caption@refstepcounter\@captype}%
- {\caption@Error{\noexpand\phantomcaption outside float}}}%
+\def\caption@xfloat#1[#2]{%
+ \caption@ORI@xfloat{#1}[#2]%
+ \caption@settype{#1}%
+ \caption@xfloat@hook}
+% \end{macrocode}
+% Hook, could be extended with |\g@addto@macro\caption@x|\-|float@hook{|\ldots|}|.
+% (The caption type could be found in |\@cap|\-|type|.)
+% \begin{macrocode}
+\newcommand*\caption@xfloat@hook{}
% \end{macrocode}
% \end{macro}
%
-% \section{\cs{setcaptiontype} and \cs{setcaptionsubtype}}
+% \begin{macro}{\caption@xdblfloat}
+% \changes{v3.5}{2020/08/30}{Re-definition of \cs{@xdblfloat} added}
+% \changes{v3.5}{2020/08/30}{Definition and usage of \cs{caption@xdblfloat@hook} added}
+% \changes{v3.6}{2020/12/27}{Re-definition of \cs{@xdblfloat} put into \cs{caption@xdblfloat}}
+% \begin{macrocode}
+\def\caption@xdblfloat#1[#2]{%
+ \caption@ORI@xdblfloat{#1}[#2]% expands to \@xfloat{#1}[#2] + extra stuff
+ \caption@setoptions{#1*}%
+ \caption@xdblfloat@hook}
+% \end{macrocode}
+% Hook, could be extended with |\g@addto@macro\caption@xdbl|\-|float@hook{|\ldots|}|.
+% (The caption type could be found in |\@cap|\-|type|.)
+% \begin{macrocode}
+\newcommand*\caption@xdblfloat@hook{}
+% \end{macrocode}
+% \end{macro}
+%
+% \subsection{\cs{setcaptiontype} and \cs{setcaptionsubtype}}
%
% \changes{v3.0d}{2004/08/03}{Option \opt{type=} added}
% \changes{v3.1}{2007/06/25}{Option \opt{type*=} added}
@@ -1005,35 +5371,64 @@
% \changes{v3.2}{2010/10/24}{This macro added}
% \changes{v3.4e}{2020/01/02}{Check added if the subtype is defined}
% \changes{v3.5}{2020/08/24}{Definition method adapted to the \package{caption-light} package}
+% \changes{v3.6}{2021/01/02}{Usage of \cs{caption@initposition} added}
+% \changes{v3.6}{2021/01/09}{Usage of \cs{flushsubcaptionlistentries} added}
+% \changes{v3.6}{2022/02/20}{Optional argument added}
% Like |\captionsetup{type=xxx}|, but also works if |\caption|\-|setup| was redefined.
% \begin{macrocode}
\def\setcaptiontype{%
- \caption@parboxrestore@mini
+ \caption@parboxrestore@light
\caption@settype}
% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@settype{%
+ \caption@initposition
+ \caption@clrflags
+ \aftergroup\flushsubcaptionlistentries
+ \caption@@settype}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@@settype{%
+ \caption@teststar\caption@@settype@\@firstoftwo\@secondoftwo}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@@settype@[1]{%
+ \@ifnextchar[%]
+ {\caption@@settype@@{#1}}%
+ {\caption@@@settype{}{#1}}}
+% \end{macrocode}
+% \begin{macrocode}
+\def\caption@@settype@@#1[#2]#3{%
+ \caption@@@settype{}{#1}{#3}%
+ \caption@setoptions{#2}}
+% \end{macrocode}
% \end{macro}
%
% \begin{macro}{\setcaptionsubtype}
% \changes{v3.2a}{2011/08/15}{This macro added}
% \changes{v3.5d}{2020/09/28}{This macro revised}
+% \changes{v3.6}{2022/01/05}{Usage of \cs{caption@Error} replaced by \cs{caption@OutsideFloat}}
+% \changes{v3.6}{2022/01/07}{Multiple use is suppressed now by checking \cs{caption@ifsubtype}}
% Same, but sets the sub-type.
% \begin{macrocode}
-\newcommand\setcaptionsubtype{%
- \caption@iftype
- \caption@setsubtype
- {\caption@Error{\noexpand\setcaptionsubtype outside float}}}%
+\newcommand*\setcaptionsubtype{%
+ \caption@setsubtype}
% \end{macrocode}
% \begin{macrocode}
-\newcommand\caption@setsubtype{%
+\newcommand*\caption@setsubtype{% used by the floatrow package
\caption@teststar\caption@@setsubtype\@firstoftwo\@secondoftwo}
% \end{macrocode}
% \begin{macrocode}
\newcommand*\caption@@setsubtype[1]{%
- \caption@@@settype{sub}{#1}{sub\@captype}}
+ \caption@iftype
+ {\caption@ifsubtype
+ {\caption@Debug{subtype=\@subcaptype}}%
+ {\caption@@@settype{sub}{#1}{sub\@captype}}}%
+ {\caption@OutsideFloat\setcaptionsubtype}}
% \end{macrocode}
% \end{macro}
%
-% \begin{macro}{\caption@settype}
+% \begin{macro}{\caption@@@settype}
% \changes{v3.1}{2007/05/09}{This macro added}
% \changes{v3.1b}{2007/09/22}{Usage of \cs{caption@xlabel} added}
% \changes{v3.1d}{2007/10/23}{Error message for \cs{caption@checkgrouplevel} revised}
@@ -1044,35 +5439,21 @@
% \changes{v3.3}{2011/12/28}{Resetting of \cs{ifcaption@caption} and \cs{ifcaption@subcaption} added}
% \changes{v3.4e}{2020/01/02}{Checks added to prevent misuse regading subtypes}
% \changes{v3.5d}{2020/09/28}{This macro revised}
+% \changes{v3.6}{2020/12/27}{Some code out-sourced to \cs{caption@reset@currentlabel}}
% |\caption@settype*|\marg{type}\par
% sets |\@captype| and executes the options associated with it
% (using |\caption@set|\-|options|).
-% Furthermore we check |\current|\-|group|\-|level| (if avail),
-% redefine |\@currentlabel| so a |\label| before |\caption| will result
-% in a hint instead of a wrong reference, and
+% Furthermore we check |\current|\-|group|\-|level| (if avail), and
% use the macro |\caption@|(|sub|)|type|\-|hook| (which will be used by our
% \package{float} package support).\par
% The non-starred version sets a \package{hyperref} anchor additionally
% (if |hypcap=|\-|true| and the \package{hypcap} package is not loaded).
% \begin{macrocode}
-\newcommand*\caption@settype{%
- \caption@clrflags
- \caption@set@type}
-% \end{macrocode}
-% \begin{macrocode}
-\newcommand*\caption@set@type{%
- \caption@teststar\caption@@settype\@firstoftwo\@secondoftwo}
-% \end{macrocode}
-% \begin{macrocode}
-\newcommand*\caption@@settype{%
- \caption@@@settype{}}
-% \end{macrocode}
-% \begin{macrocode}
\newcommand*\caption@@@settype[3]{%
% #1 = "" or "sub"
% #2 = \@firstoftwo in star form, \@secondoftwo otherwise
% #3 = <type>, e.g.: "figure" or "subfigure"
- \caption@Debug{#1type=#3}%
+ \caption@Debug{#1type:=#3}%
\@nameuse{caption@check#1type}{#3}%
{\caption@checkgrouplevel{#1}{%
\captionsetup{#1type#2*\@empty=...}#2{ or
@@ -1099,28 +5480,59 @@
\fi
% \end{macrocode}
% \begin{macrocode}
- #2{}{%
- \let\@currentlabel\caption@undefinedlabel
-% \let\@currentHlabel\@undefined
- \ifx\caption@x@label\@undefined
- \let\caption@x@label\label
- \let\label\caption@xlabel
- \fi
- \caption@start}}}
+ #2{}{\caption@reset@currentlabel\caption@start}}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@parboxrestore@light}
+% \changes{v3.2}{2010/10/24}{This macro added}
+% \changes{v3.5g}{2020/10/26}{Renamed from \cs{caption@boxrestore@mini} to \cs{caption@parboxrestore@mini}}
+% \changes{v3.6}{2021/01/02}{Renamed from \cs{caption@parboxrestore@mini} to \cs{caption@parboxrestore@light}}
+% Resets |\par| so the very first |\par| in |\@caption| behaves quite the same as in floating environments.
+% Will be used by |\set|\-|caption|\-|type|.
+% \begin{macrocode}
+\newcommand*\caption@parboxrestore@light{%
+ \let\par\@@par
+ \parindent\z@ \parskip\z@skip
+ \sloppy}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@reset@currentlabel}
+% \changes{v3.6}{2020/12/27}{This macro out-sourced from \cs{caption@settype}}
+% Redefine |\@currentlabel| so a |\label| before |\caption| will result
+% in a hint instead of a wrong reference.
+% \begin{macrocode}
+\newcommand*\caption@reset@currentlabel{%
+ \let\@currentlabel\caption@undefinedlabel
+% \let\@currentHlabel\@undefined
+ \ifx\caption@x@label\@undefined
+ \let\caption@x@label\label
+ \let\label\caption@xlabel
+ \fi}
% \end{macrocode}
% \end{macro}
%
% \begin{macro}{\caption@iftype}
-% \changes{v3.1}{2007/04/11}{This macro and its usage added}
-% Since we often need to check if |\@captype| is defined (means: we
+% \changes{v3.1}{2007/04/11}{This macro definition added}
+% Since we often need to check if |\@cap|\-|type| is defined (means: we
% are inside a floating environment) this helper macro was introduced.
% \begin{macrocode}
\newcommand*\caption@iftype{\caption@ifdefined\@captype}
% \end{macrocode}
% \end{macro}
%
+% \begin{macro}{\caption@ifsubtype}
+% \changes{v3.6}{2022/01/07}{This macro definition added}
+% Since we often need to check if |\@sub|\-|cap|\-|type| is defined (means: we
+% are inside a sub-caption group of a floating environment) this helper macro was introduced.
+% \begin{macrocode}
+\newcommand*\caption@ifsubtype{\caption@ifdefined\@subcaptype}
+% \end{macrocode}
+% \end{macro}
+%
% \begin{macro}{\caption@checktype}
-% \changes{v3.4g}{2020/01/02}{This macro and its usage added}
+% \changes{v3.4g}{2020/01/02}{This macro definition added}
% \changes{v3.4m}{2020/07/29}{Check of \cs{sf@counterlist} from \package{subfig} package added}
% |\caption@checktype|\marg{type}\marg{code}\par
% is used by |\caption@settype| and should either expand the code or issue an error
@@ -1128,7 +5540,7 @@
% |\DeclareCaptionSubType| or |\newsubfloat|\cite{subfig}).
% \begin{macrocode}
\newcommand*\caption@checktype[1]{%
- \caption@ifsubtype{#1}\@firstoftwo{\caption@ifin@list\sf@counterlist{#1}}%
+ \caption@ifdefined@subtype{#1}\@firstoftwo{\caption@ifin@list\sf@counterlist{#1}}%
{\caption@Error{Should not be used with subtype `#1'}%
\@gobble}%
\@firstofone}
@@ -1136,7 +5548,7 @@
% \end{macro}
%
% \begin{macro}{\caption@checksubtype}
-% \changes{v3.4g}{2020/01/02}{This macro and its usage added}
+% \changes{v3.4g}{2020/01/02}{This macro definition added}
% \changes{v3.4m}{2020/07/29}{Check of \cs{sf@counterlist} from \package{subfig} package added}
% |\caption@checksubtype|\marg{type}\marg{code}\par
% is used by |\caption@settype| and should either expand the code or issue an error
@@ -1147,7 +5559,7 @@
% those sub-types as well (but not without warning since we do not support this).
% \begin{macrocode}
\newcommand*\caption@checksubtype[1]{%
- \caption@ifsubtype{#1}%
+ \caption@ifdefined@subtype{#1}%
\@firstofone
{\caption@ifin@list\sf@counterlist{#1}%
{\caption@Warning{%
@@ -1162,7 +5574,7 @@
% \end{macro}
%
% \begin{macro}{\caption@checkgrouplevel}
-% \changes{v3.1}{2007/07/15}{This macro and its usage added}
+% \changes{v3.1}{2007/07/15}{This macro definition added}
% \changes{v3.1f}{2007/11/28}{Error changed to warning (compatibility)}
% \changes{v3.3}{2013/04/21}{Uses \cs{caption@ifeTeX} now}
% \changes{v3.5}{2019/09/11}{Relies on \eTeX{} now}
@@ -1184,7 +5596,7 @@
% \end{macro}
%
% \begin{macro}{\caption@undefinedlabel}
-% \changes{v3.1}{2007/07/03}{This macro and its usage added}
+% \changes{v3.1}{2007/07/03}{This macro definition added}
% \changes{v3.1b}{2007/09/22}{Contents changed to \texttt{??}}
% \changes{v3.1i}{2008/04/13}{Contents changed to \cs{caption@xref}(\ldots)}
% \changes{v3.1k}{2009/03/30}{Bugfix 08-12-08: \cs{caption@xref} is robust now}
@@ -1206,8 +5618,9 @@
\newcommand*\caption@labelname{??}
% \end{macrocode}
% \end{macro}
+%
% \begin{macro}{\caption@xlabel}
-% \changes{v3.1b}{2007/09/22}{This macro and its usage added}
+% \changes{v3.1b}{2007/09/22}{This macro definition added}
% \changes{v3.1f}{2007/11/11}{Revised}
% \changes{v3.1i}{2008/04/13}{Bugfix: \cs{pageref} should always work now}
% \changes{v3.2c}{2011/08/19}{Works with optional arguments now, too}
@@ -1256,35 +5669,154 @@
% \end{macrocode}
% \end{macro}
%
-% \section{\cs{captionlistentry}}
+% \subsection{\cs{phantomcaption}}
+%
+% \begin{macro}{\phantomcaption}
+% \changes{v3.2}{2010/10/31}{Bugfix 10-09-01b: This macro added}
+% \changes{v3.6}{2022/01/05}{Usage of \cs{caption@Error} replaced by \cs{caption@OutsideFloat}}
+% |\phantomcaption|\par
+% increments the counter and generates an reference
+% which could be used with |\label|, but does not typeset anything.
+% \begin{macrocode}
+\newcommand*\phantomcaption{%
+ \caption@iftype
+ {\caption@refstepcounter\@captype}%
+ {\caption@OutsideFloat\phantomcaption}}
+% \end{macrocode}
+% \end{macro}
+%
+% \subsection{\cs{captionlistentry}}
%
% \begin{macro}{\captionlistentry}
% \changes{v3.1}{2007/07/28}{This macro added}
% \changes{v3.1f}{2007/11/16}{Bugfix 07-11-09: `space hack' added}
% \changes{v3.1g}{2008/01/20}{Starred variant added}
% \changes{v3.1l}{2010/01/09}{Adapted to current version of nameref package}
+% \changes{v3.6}{2020/12/27}{With optional argument \cs{caption@refstepcounter@} is used instead of \cs{caption@refstepcounter}}
+% \changes{v3.6}{2022/01/05}{Usage of \cs{caption@Error} replaced by \cs{caption@OutsideFloat}}
% |\captionlistentry|\oarg{float type}\marg{list entry}\\
% |\captionlistentry*|\oarg{float type}\marg{list entry}
% \begin{macrocode}
\newcommand*\captionlistentry{%
- \caption@teststar\@captionlistentry\@firstoftwo\@secondoftwo}
+ \caption@teststar\caption@listentry\@firstoftwo\@secondoftwo}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@listentry[1]{%
+ \@ifnextchar[%]
+ {\caption@listentry@{#1}}%
+ {\caption@@listentry{#1}}}
+% \end{macrocode}
+% \begin{macrocode}
+\def\caption@listentry@#1[#2]{%
+ \caption@@@listentry{#1}{#2}{\caption@refstepcounter@}}
% \end{macrocode}
% \begin{macrocode}
-\newcommand*\@captionlistentry[1]{%
- \@testopt{\caption@listentry{#1}}\@captype}
+\newcommand*\caption@@listentry[1]{%
+ \caption@iftype
+ {\caption@@@listentry{#1}{\@captype}{\caption@refstepcounter}}%
+ {\caption@OutsideFloat\captionlistentry
+ \@gobble}}
% \end{macrocode}
% \begin{macrocode}
-\def\caption@listentry#1[#2]#3{%
+\newcommand*\caption@@@listentry[4]{%
\@bsphack
- #1{\caption@gettitle{#3}}%
- {\caption@refstepcounter{#2}%
- \caption@makecurrent{#2}{#3}}%
- \caption@addcontentsline{#2}{#3}%
+ #1{\caption@gettitle{#4}}%
+ {#3{#2}\caption@makecurrent{#2}{#4}}%
+ \caption@addcontentsline{#2}{#4}%
\@esphack}
% \end{macrocode}
% \end{macro}
%
-% \section{\cs{captionbox}}
+% \subsection{\cs{captiontext}}
+%
+% \begin{macro}{\captiontext}
+% \changes{v3.6}{2022/01/05}{This macro added}
+% \changes{v3.6}{2022/01/05}{Usage of \cs{caption@Error} replaced by \cs{caption@OutsideFloat}}
+% |\captiontext*|\oarg{number}\marg{text for caption}\par
+% typesets the caption without incrementing the counter,
+% without putting an entry into the list, and without skips.
+% The starred variant skips the single-line-check additionally
+% and does not use a box or parbox or margin.
+% \begin{macrocode}
+\newcommand*\captiontext{%
+ \caption@iftype
+ {\caption@text\@captype}%
+ {\caption@OutsideFloat\captiontext
+ \caption@withoptargs\@gobbletwo}}
+\newcommand*\caption@text[1]{%
+ \caption@teststar{\caption@@text{#1}}\caption@@@make\caption@@make}
+\newcommand*\caption@@text[2]{%
+ \kernel@ifnextchar[%]
+ {\caption@@@text{#1}#2\@iden}%
+ {\caption@@@text{#1}#2\@gobble[0]}}
+\long\def\caption@@@text#1#2#3[#4]#5{%
+ \begingroup
+ #3{\csname c@#1\endcsname #4\relax}%
+ #2{\caption@fnum{#1}}{#5}%
+ \endgroup}
+% \end{macrocode}
+% \end{macro}
+%
+% \subsection{The \env{captiongroup} environment}
+%
+% \begin{environment}{captiongroup}
+% \changes{v3.6}{2022/02/20}{This environment definition added}
+% \env{captiongroup} is simply an environment containing |\set|\-|caption|\-|type|, that's all.
+% A starred variant of this environment is available, too, which uses |\set|\-|caption|\-|type*|.
+% \begin{macrocode}
+\newenvironment{captiongroup}{\setcaptiontype}{}
+\newenvironment{captiongroup*}{\setcaptiontype*}{}
+% \end{macrocode}
+% \end{environment}
+%
+% \subsubsection{The \env{captionblock} environment}
+%
+% \begin{macro}{\caption@minipage}
+% \changes{v3.6}{2022/02/20}{This macro definition added}
+% This is a \env{minipage} with |\set|\-|caption|\-|type| as first contents line.
+% \begin{macrocode}
+\newcommand*\caption@minipage{%
+ \@testopt\caption@iminipage b}
+% \end{macrocode}
+% We pass all other optional arguments using the generic helper macro
+% |\caption@with|\-|opt|\-|args| offered by the \pkg{caption} kernel).
+% \begin{macrocode}
+\def\caption@iminipage[#1]{%
+ \caption@withoptargs{\caption@iiminipage{#1}}}
+% \end{macrocode}
+% `B' and `T' will add a |\vspace{0pt}|, all other values (and additional
+% optional arguments) will be passed unseen to the |minipage| environment.
+% \begin{macrocode}
+\newcommand*\caption@iiminipage[3]{%
+ \let\caption@endminipage@hook\@empty
+ \if#1B%
+ \minipage[b]#2{#3}%
+ \def\caption@endminipage@hook{\vspace{0pt}}%
+ \else\if#1T%
+ \minipage[t]#2{#3}%
+ \vspace{0pt}%
+ \else
+ \minipage[#1]#2{#3}%
+ \fi\fi
+ \@floatboxreset
+ \setcaptiontype}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@endminipage{%
+ \caption@endminipage@hook
+ \endminipage}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{environment}{captionblock}
+% \changes{v3.6}{2022/02/20}{This environment definition added}
+% \env{captionblock} is a \env{minipage} with |\set|\-|caption|\-|type| as first contents line.
+% \begin{macrocode}
+\newenvironment{captionblock}{\caption@minipage}{\caption@endminipage}
+% \end{macrocode}
+% \end{environment}
+%
+% \subsection{\cs{captionbox}}
%
% \begin{macro}{\captionbox}
% \changes{v3.2}{2010/12/17}{This macro added}
@@ -1293,6 +5825,7 @@
% \changes{v3.3}{2017/03/19}{When used with fixed witdh the content will not be hboxed anymore}
% \changes{v3.3c}{2019/09/01}{Adapted so it could be used by \cs{subfloat} offered by \package{subcaption}}
% \changes{v3.5}{2020/07/28}{Adapted to \package{caption3} v2.0}
+% \changes{v3.6}{2020/12/24}{Check of argument \meta{inner-pos} added}
% A |\parbox| with contents and caption, separated by an invisible |\hrule|.
% \begin{macrocode}
\newcommand*\captionbox{%
@@ -1319,27 +5852,28 @@
% \end{macrocode}
% \begin{macrocode}
\long\def\caption@iiiibox#1#2#3#4#5[#6][#7]#8{%
- \begingroup
- #1*% set \caption@position
- \caption@iftop{%
- \endgroup
- \parbox[t]{#6}{%
- #1\relax
- \caption@setposition t%
- #2{\caption#4{#5}}%
- \captionbox@hrule
- \csname caption@justification@#7\endcsname
- #8}%
- }{%
- \endgroup
- \parbox[b]{#6}{%
- #1\relax
- \caption@setposition b%
- \csname caption@justification@#7\endcsname
- #8%
- \captionbox@hrule
- #3{\caption#4{#5}}}%
- }}
+ \caption@checkdecl{justification}{#7}{%
+ \begingroup
+ #1*% set \caption@position
+ \caption@iftop{%
+ \endgroup
+ \parbox[t]{#6}{%
+ #1\relax
+ \caption@setposition t%
+ #2{\caption#4{#5}}%
+ \captionbox@hrule
+ \csname caption@justification@#7\endcsname
+ #8}%
+ }{%
+ \endgroup
+ \parbox[b]{#6}{%
+ #1\relax
+ \caption@setposition b%
+ \csname caption@justification@#7\endcsname
+ #8%
+ \captionbox@hrule
+ #3{\caption#4{#5}}}%
+ }}}
% \end{macrocode}
% \begin{macrocode}
\newcommand*\captionbox@innerpos@default{c}
@@ -1353,7 +5887,58 @@
% \end{macrocode}
% \end{macro}
%
-% \section{\cs{continuedfloat}}
+% \subsection{\cs{continuedfloat}}
+%
+% \begin{macro}{\c@continuedfloat}
+% \changes{v3.4}{2015/09/16}{Counter renamed from \cs{ContinuedFloat} to \cs{continuedfloat}}
+% |\thecontinuedfloat| will be preset to |\@empty|, so usually the continuation counter is not
+% included in the caption label or references.
+% \begin{macrocode}
+\newcounter{continuedfloat}
+\let\c@ContinuedFloat\c@continuedfloat % defined for compatibility reasons
+% \end{macrocode}
+% \begin{macrocode}
+\def\thecontinuedfloat{\theContinuedFloat}
+\let\theContinuedFloat\@empty % defined for compatibility reasons
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\continuedfloat@captype}
+% \changes{v3.6}{Renamed from \cs{caption@CFtype} to \cs{continuedfloat@captype}}
+% Since we have only a single `continuedfloat' counter (and not one per caption type),
+% we need to attach a caption type to our counter to make sure that the counter is not
+% (mis-)used for a different float type while it holds a value other than zero.
+% \begin{macrocode}
+\newcommand*\continuedfloat@captype{??}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@reset@continuedfloat}
+% |\caption@reset@continuedfloat|\marg{caption type}\\
+% resets the continuation counter to zero and attaches the given caption type to it.
+% \begin{macrocode}
+\newcommand*\caption@reset@continuedfloat[1]{%
+ \xdef\continuedfloat@captype{#1}%
+ \@stpelt{continuedfloat}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@set@continuedfloat}
+% \changes{v3.6}{2020/12/27}{Some code of \cs{continuedfloat} out-sourced to this macro}
+% |\caption@set@continuedfloat|\marg{yes-code}\marg{no-code}\\
+% checks if the current caption type matches the one attached to the `continuedfloat' counter
+% before increasing it.
+% \begin{macrocode}
+\newcommand*\caption@set@continuedfloat{%
+ \ifx\@captype\continuedfloat@captype
+ \stepcounter{continuedfloat}%
+ \expandafter\@firstoftwo
+ \else
+ \caption@Error{Continued `\@captype' after `\continuedfloat@captype'}%
+ \expandafter\@secondoftwo
+ \fi}
+% \end{macrocode}
+% \end{macro}
%
% \begin{macro}{\continuedfloat}
% \changes{v3.0i}{2005/11/12}{Optional argument added}
@@ -1362,101 +5947,67 @@
% \changes{v3.1}{2007/07/07}{\cs{caption@setoptions} added}
% \changes{v3.1g}{2008/01/29}{Starred variant added}
% \changes{v3.2f}{2011/12/17}{Undocumented optional argument removed}
+% \changes{v3.2f}{2011/12/17}{Redefinition of \cs{caption@@@continuedfloat} added}
% \changes{v3.3}{2011/12/28}{Uses \cs{ifcaption@ContinuedFloat} now}
% \changes{v3.3}{2013/05/01}{Usage of \cs{caption@restorecounters} added}
% \changes{v3.3}{2013/12/16}{Bugfix: Does not use \cs{caption@ContinuedFloat} anymore since this breaks \cs{ContinuedFloat} offered by the \package{subfig} package}
% \changes{v3.4}{2015/09/16}{Renamed from \cs{ContinuedFloat} to \cs{continuedfloat}}
% \changes{v3.5f}{2020/10/06}{Usage of \cs{caption@restorecounters} removed}
+% \changes{v3.6}{2020/12/27}{Check of counter caption type out-sourced to \cs{caption@check@continuedfloat}}
+% \changes{v3.6}{2022/01/05}{Usage of \cs{caption@Error} replaced by \cs{caption@OutsideFloat}}
% |\continuedfloat|\\
% |\continuedfloat*|\par
-% This mainly sets the appropriate flag, increments the
-% continuation counter, and executes the given options.
-% Furthermore we set |\caption@reset|\-|continued|\-|float| to |\@gobble| so the
-% continuation counter will not be reset to zero inside |\caption@ref|\-|step|\-|counter|.\par
-% When the \package{hyperref} package is used we have the problem
-% that the usage of |\continued|\-|float| will create duplicate
-% hyper links -- |\@current|\-|Href| will be the same for the main float and
-% the continued ones. So we have to make sure unique labels and references
-% will be created each time. We do this by extending |\the|\-|H|\-|figure| and
-% |\the|\-|H|\-|table|, so for continued floats the scheme
-% \begin{quote}\meta{type}|.|\meta{type \#}|\alph{|\meta{continued \#}|}|\end{quote}
-% will be used instead of
-% \begin{quote}\meta{type}|.|\meta{type \#}\quad\quad.\end{quote}
-% \par{\small(This implementation follows an idea from Steven Douglas Cochran.)}
-% \Note{This does not help if the \package{hyperref} package option
-% \texttt{naturalnames=true} is set.}
+% This mainly sets the `continued float' flag, increments the continuation counter, and executes the given options.
% \begin{macrocode}
\def\continuedfloat{%
- \caption@iftype
- {\caption@continuedfloat\@captype}%
- {\caption@Error{\noexpand\continuedfloat outside float}}}
+ \caption@teststar\caption@continuedfloat\@firstoftwo\@secondoftwo}
% \end{macrocode}
% \begin{macrocode}
\newcommand*\caption@continuedfloat[1]{%
- \@ifstar
- {\caption@@refstepcounter\@captype
- \caption@@continuedfloat{#1}}%
- {\caption@continued@float{#1}}}
-% \end{macrocode}
-% \begin{macrocode}
-\newcommand*\caption@continued@float[1]{%
- \edef\caption@tempa{#1}%
- \ifx\caption@tempa\caption@CFtype
- \caption@@continuedfloat{#1}%
- \else
- \caption@Error{Continued `#1' after `\caption@CFtype'}%
- \fi}
+ \caption@iftype
+ {#1{\caption@@refstepcounter\@captype}{}%
+ \caption@@continuedfloat\@captype}%
+ {\caption@OutsideFloat\continuedfloat}}
% \end{macrocode}
% \begin{macrocode}
\newcommand*\caption@@continuedfloat{%
- \caption@setflag1% continued float
- \caption@@@continuedfloat}
-\newcommand*\caption@@@continuedfloat{%
- \stepcounter{continuedfloat}%
- \caption@@@@continuedfloat}
+ \caption@clrflags
+ \caption@set@continuedfloat
+ {\caption@setcontinued
+ \caption@@@continuedfloat}%
+ {\@gobble}}
% \end{macrocode}
% \begin{macrocode}
-\newcommand*\caption@@@@continuedfloat[1]{%
+\newcommand*\caption@@@continuedfloat[1]{%
\caption@setoptions{ContinuedFloat}% for compatibility reasons
\caption@setoptions{continuedfloat}%
\caption@setoptions{continued#1}%
\expandafter\l@addto@macro\csname the#1\endcsname\thecontinuedfloat
+% \end{macrocode}
+% When the \package{hyperref} package is used we have the problem
+% that the usage of |\continued|\-|float| will create duplicate
+% hyper links -- |\@current|\-|Href| will be the same for the main float and
+% the continued ones. So we have to make sure unique labels and references
+% will be created each time. We do this by extending |\the|\-|H|\-|figure| and
+% |\the|\-|H|\-|table|, so for continued floats the scheme
+% \begin{quote}\meta{type}|.|\meta{type \#}|\alph{|\meta{continued \#}|}|\end{quote}
+% will be used instead of
+% \begin{quote}\meta{type}|.|\meta{type \#}\quad\quad.\end{quote}
+% \par{\small(This implementation follows an idea from Steven Douglas Cochran.)}
+% \Note{This does not help if the \package{hyperref} package option \texttt{naturalnames=true} is set.}
+% \begin{macrocode}
\@ifundefined{theH#1}{}{%
\expandafter\l@addto@macro\csname theH#1\endcsname{%
\@alph\c@continuedfloat}}%
- \let\caption@@@@continuedfloat\@gobble}
% \end{macrocode}
+% Make sure the options and the \package{hyperref} patch is only applied once (per group).
% \begin{macrocode}
-\newcommand*\caption@CFtype{??}
-% \end{macrocode}
-% \end{macro}
-%
-% \begin{macro}{\thecontinuedfloat}
-% \changes{v3.4}{2015/09/16}{Renamed from \cs{theContinuedFloat} to \cs{thecontinuedfloat}}
-% This one is preset to \cs{@empty}, so usually the continuation counter is not
-% included in the caption label or references.
-% \begin{macrocode}
-\newcounter{continuedfloat}
-\let\c@ContinuedFloat\c@continuedfloat % defined for compatibility reasons
-\def\thecontinuedfloat{\theContinuedFloat}
-\let\theContinuedFloat\@empty % defined for compatibility reasons
-% \end{macrocode}
-% \end{macro}
-%
-% \begin{macro}{\caption@reset@continuedfloat}
-% \changes{v3.2f}{2011/12/17}{Redefinition of \cs{continuedfloat} added}
-% |\caption@reset@continuedfloat|\marg{type}\par
-% If a continuation counter is defined, we reset it.
-% (This one will be called inside |\@caption|.)
-% \begin{macrocode}
-\newcommand*\caption@reset@continuedfloat[1]{%
- \xdef\caption@CFtype{#1}%
- \@stpelt{continuedfloat}}
+ \let\caption@@@continuedfloat\@gobble}
% \end{macrocode}
% \end{macro}
%
% \begin{macro}{\ContinuedFloat}
-% For compatibility reasons we still support |\Continued|\-|Float|.
+% For compatibility reasons we still support the obsolete |\Continued|\-|Float|.
% \begin{macrocode}
\def\ContinuedFloat{\continuedfloat} % defined for compatibility reasons
% \end{macrocode}
@@ -1465,16 +6016,46 @@
% \begin{macro}{\caption@ContinuedFloat}
% \changes{v3.0f}{2005/06/11}{This macro added}
% \changes{v3.3}{2013/12/16}{Bugfix: Revised and defined with \cs{def} instead of \cs{newcommand}}
-% |\caption@ContinuedFloat|\marg{type}\par
+% |\caption@ContinuedFloat|\marg{caption type}\par
% This one is used by \cs{ContinuedFloat} offered by the \package{subfig} package.
+% Since the \package{subfig} package does its own counter handling we try not to
+% interfere by changing couter-related flags.
+% not interfere with it
% \begin{macrocode}
\def\caption@ContinuedFloat{%
- \let\caption@reset@continuedfloat\@gobble
- \caption@@@continuedfloat}
+ \caption@set@continuedfloat\caption@@@continuedfloat\@gobble}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\nextfloat}
+% \changes{v3.6}{2020/09/20}{This command added}
+% \changes{v3.6}{2021/01/09}{Usage of \cs{flushsubcaptionlistentries} added}
+% \changes{v3.6}{2022/01/05}{Usage of \cs{caption@Error} replaced by \cs{caption@OutsideFloat}}
+% |\nextfloat| resets the flags (indicating that the next contents of the floating environment starts here),
+% and sets a new \package{hyperref} anchor.
+% \begin{macrocode}
+\providecommand*\nextfloat{%
+ \caption@teststar\caption@nextfloat\@firstoftwo\@secondoftwo}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@nextfloat[1]{%
+ \caption@iftype
+ {\caption@@nextfloat\@captype
+ #1{}{\caption@reset@currentlabel\caption@start}}%
+ {\caption@OutsideFloat\nextfloat}}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@@nextfloat[1]{%
+ \flushsubcaptionlistentries
+ \caption@clrflags
+ \ifx\caption@@@continuedfloat\@gobble
+ % next continued float
+ \caption@set@continuedfloat\caption@setcontinued\relax
+ \fi}
% \end{macrocode}
% \end{macro}
%
-% \section{Internal helpers}
+% \subsection{Internal helpers}
%
% \begin{macro}{\caption@refstepcounter}
% \changes{v3.1}{2007/07/28}{This macro added}
@@ -1482,45 +6063,20 @@
% \changes{v3.2c}{2011/09/04}{Support of \cs{donemaincaptiontrue} from \textsf{memoir} document class added}
% \changes{v3.3}{2011/12/28}{Usage of \cs{ifcaption@caption}, \cs{ifcaption@subcaption}, and \cs{ifcaption@ContinuedFloat} added}
% \changes{v3.5e}{2020/09/28}{Bugfix in re-definition of \cs{stepcounter}; uses \cs{edef} instead of \cs{def} now}
-% Increments the float (i.e. |figure| or |table|) counter,
-% resets the continuation counter, and redefines itself to |\@gobble|.
+% \changes{v3.6}{2020/09/20}{Handling of flags out-sourced to \cs{caption@ifrefstepcounter}}
+% \changes{v3.6}{2020/12/27}{\cs{caption@@@refstepcounter} renamed to \cs{caption@refstepcounter@}}
+% \changes{v3.6}{2021/01/09}{Adapted to current interface of \cs{caption@prepare@stepcounter}}
+% |\caption@refstepcounter|\marg{counter}\\
+% increments the float counter (using |\ref|\-|step|\-|counter|) and resets the continuation counter.
% \begin{macrocode}
-\newcommand*\caption@refstepcounter[1]{%
- \@ifundefined{c@#1}%
- {\caption@Error{No float type '#1' defined}}%
- {\caption@ref@stepcounter{#1}%
+\newcommand*\caption@refstepcounter{%
+ \@nameuse{donemaincaptiontrue}% Support of the memoir document class
+ \caption@ifrefstepcounter\caption@@refstepcounter\caption@@refcounter}
% \end{macrocode}
-% Set flag if this part of the figure (or table) contains a caption now.
-% (If |\caption@if|\-|top| is not set, |\caption| is at the bottom of this part,
-% therefore ending this part, so we set the flag to |false| in this case.)
% \begin{macrocode}
- \caption@fixposition % TODO: Make this independant on the "position" setting
- \caption@iftop\caption@setflag\caption@clrflag2% caption
-% \end{macrocode}
-% This part does not contain content (like sub-figures) yet,
-% so we set |\if|\-|caption@sub|\-|caption| to |false|.
-% \begin{macrocode}
- \caption@clrflag4% subcaption
-% \end{macrocode}
-% Support of the \textsf{memoir} document class.
-% \begin{macrocode}
- \@nameuse{donemaincaptiontrue}}}
-% \end{macrocode}
-% \begin{macrocode}
-\newcommand*\caption@ref@stepcounter{%
- \caption@ifflag1{% continued float
- \let\caption@tempa\caption@@refcounter
- \caption@clrflag1% continued float
- }{%
- \let\caption@tempa\caption@@refstepcounter
- \caption@ifflag2{}{% caption
- \caption@ifflag4{% subcaption
- % Counter was already incremented by content, so we suppress \stepcounter{#1} here
- \let\caption@tempa\caption@@refcounter
- }{}%
- }%
- }%
- \caption@tempa}
+\newcommand*\caption@@refstepcounter[1]{%
+ \caption@prepare@stepcounter{#1}%
+ \caption@refstepcounter@{#1}}
% \end{macrocode}
% \begin{macrocode}
\newcommand*\caption@@refcounter[1]{%
@@ -1528,32 +6084,128 @@
\def\stepcounter##1{%
\edef\caption@tempa{#1}%
\edef\caption@tempb{##1}%
- \ifx\caption@tempa\caption@tempb \else
+ \ifx\caption@tempa\caption@tempb
+ % Suppress incrementation of counter
+ \else
\caption@stepcounter@ORI{##1}%
\fi}%
- \caption@@@refstepcounter{#1}%
- \let\stepcounter\caption@stepcounter@ORI}
+ \caption@refstepcounter@{#1}%
+ \let\stepcounter\caption@stepcounter@ORI}
% \end{macrocode}
% \begin{macrocode}
-\newcommand*\caption@@refstepcounter[1]{%
- \caption@prepare@stepcounter{#1}{ref}%
- \caption@@@refstepcounter{#1}}
+\newcommand*\caption@refstepcounter@{\refstepcounter}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@stepcounter}
+% \changes{v3.6}{2020/09/20}{This macro added}
+% \changes{v3.6}{2020/12/27}{Handling of flags out-sourced to \cs{caption@ifstepcounter}}
+% \changes{v3.6}{2020/12/27}{\cs{caption@@@stepcounter} renamed to \cs{caption@stepcounter@}}
+% \changes{v3.6}{2021/01/09}{Adapted to current interface of \cs{caption@prepare@stepcounter}}
+% |\caption@stepcounter|\marg{counter}\\
+% increments the float counter (using |\step|\-|counter|) and resets the continuation counter.
+% \begin{macrocode}
+\newcommand*\caption@stepcounter{%
+ \caption@ifstepcounter\caption@@stepcounter\caption@@counter}
% \end{macrocode}
% \begin{macrocode}
\newcommand*\caption@@stepcounter[1]{%
- \caption@prepare@stepcounter{#1}{}%
- \caption@@@stepcounter{#1}}
+ \caption@prepare@stepcounter{#1}%
+ \caption@stepcounter@{#1}}
% \end{macrocode}
% \begin{macrocode}
-\newcommand*\caption@prepare@stepcounter[2]{%
- \caption@addsubcontentslines{#2stepcounter}%
- \caption@reset@continuedfloat{#1}}
+\newcommand*\caption@@counter[1]{} % nothing to do
% \end{macrocode}
% \begin{macrocode}
-\newcommand*\caption@@@refstepcounter{\refstepcounter}
+\newcommand*\caption@stepcounter@{\stepcounter}
% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@prepare@stepcounter}
+% \changes{v3.3}{2011/12/28}{This macro added}
+% \changes{v3.6}{2021/01/09}{Argument \meta{source hint} dropped; adapted to current interface of \cs{caption@addsubcontentslines}}
+% |\caption@prepare@stepcounter|\marg{counter}
+% Dumps the cached list entries and resets the continuation counter.
% \begin{macrocode}
-\newcommand*\caption@@@stepcounter{\stepcounter}
+\newcommand*\caption@prepare@stepcounter{%
+ \caption@addsubcontentslines\relax
+ \caption@reset@continuedfloat}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@ifrefstepcounter}
+% \changes{v3.6}{2020/09/20}{This macro added}
+% |\caption@ifrefstepcounter|\marg{yes-code}\marg{no-code}\\
+% tests if the counter should be increased or not. Furthermore it updates the flags accordingly.
+% \begin{macrocode}
+\newcommand*\caption@ifrefstepcounter{%
+ \caption@ifcounter
+% \end{macrocode}
+% If a caption was already typeset in this environment, we need to increment the counter (again).
+% \begin{macrocode}
+ {\caption@ifcaption}%
+% \end{macrocode}
+% If a caption and a sub-caption below it were already typeset, we issue a warning additionally.
+% (This will only be done if |position=b| is set because this is the case were the sub-caption numbering got most likely wrong.)
+% \begin{macrocode}
+ {\caption@ifsubcaption@below{\caption@iftop\@secondoftwo\@firstoftwo}{\@secondoftwo}}%
+% \end{macrocode}
+% In each case set the `caption' flag to indicate a caption was typeset.
+% \begin{macrocode}
+ {\caption@setcaption}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@ifstepcounter}
+% \changes{v3.6}{2020/12/27}{This macro added}
+% |\caption@ifstepcounter|\marg{yes-code}\marg{no-code}\\
+% tests if the counter should be increased or not. Furthermore it updates the flags accordingly.
+% \begin{macrocode}
+\newcommand*\caption@ifstepcounter{%
+ \caption@ifcounter
+% \end{macrocode}
+% If a caption and a sub-caption above it were already typeset in this environment, we need to increment the counter (again).
+% \begin{macrocode}
+ {\caption@ifcaption\caption@ifsubcaption@above\@secondoftwo}%
+% \end{macrocode}
+% In this case issue a warning additionally.
+% (This will only be done if |position=t| is set because this is the case were the sub-caption numbering got most likely wrong.)
+% \begin{macrocode}
+ {\caption@iftop}%
+% \end{macrocode}
+% In each case set the `subcaption' flag to indicate a sub-caption was typeset.
+% \begin{macrocode}
+ {\caption@setsubcaption}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@ifcounter}
+% \changes{v3.6}{2020/12/28}{This macro added}
+% |\caption@ifcounter|\marg{increment the counter?}\marg{issue a warning?}\marg{set flag}\marg{yes-code}\marg{no-code}\\
+% contains the common code of |\caption@if|\-|ref|\-|step|\-|counter| and |\caption@if|\-|step|\-|counter|.
+% \begin{macrocode}
+\newcommand*\caption@ifcounter[3]{%
+ \caption@ifflags
+% \end{macrocode}
+% Test if the counter should be incremented (again). If yes, test if a warning should be issued additionally.
+% (If the counter gets incremented all flags will be cleared to indicate a new run.)
+% \begin{macrocode}
+ {#1%
+ {#2\caption@Warning\@gobble{Ambiguous sub-caption(s), use \string\nextfloat}%
+ \caption@clrflags
+ \let\caption@next\@firstoftwo}%
+ {\let\caption@next\@secondoftwo}}%
+% \end{macrocode}
+% Always increment the counter if no flag was set so far.
+% \begin{macrocode}
+ {\let\caption@next\@firstoftwo}%
+% \end{macrocode}
+% Set either the `caption' or `subcaption' flag.
+% \begin{macrocode}
+ #3%
+% \end{macrocode}
+% \begin{macrocode}
+ \caption@next}
% \end{macrocode}
% \end{macro}
%
@@ -1569,7 +6221,9 @@
% \end{macrocode}
% \begin{macrocode}
\newcommand\caption@dblarg[1]{%
- \kernel@ifnextchar[{\caption@ydblarg{#1}}{\caption@xdblarg{#1}}}
+ \kernel@ifnextchar[%]
+ {\caption@ydblarg{#1}}%
+ {\caption@xdblarg{#1}}}
% \end{macrocode}
% \begin{macrocode}
\newcommand\caption@xdblarg[2]{%
@@ -1638,23 +6292,8 @@
% \changes{v3.0a}{2004/01/23}{Internal hooks \cs{caption@@begin} \& \cs{caption@@end} added}
% \changes{v3.0h}{2005/10/06}{Internal hooks \cs{caption@@begin} \& \cs{caption@@end} removed}
%
-% \begin{macro}{\caption@setfnum}
-% \changes{v3.1}{2007/03/10}{This macro added}
-% \changes{v3.5}{2020/08/03}{Adapted to \package{caption3} v2.0}
-% |\caption@setfnum|\marg{type}\\
-% stores the original definition of |\fnum@|\meta{type} in |\caption@fnum@|\meta{type}
-% and re-defines it according the caption label format set with |label|\-|format=|.
-% \begin{macrocode}
-\newcommand*\caption@setfnum[1]{%
- \@ifundefined{caption@fnum@#1}%
- {\expandafter\let\csname caption@fnum@#1\expandafter\endcsname\csname fnum@#1\endcsname
- \@namedef{fnum@#1}{\caption@fnum{#1}}}%
- {}}
-% \end{macrocode}
-% \end{macro}
-%
% \begin{macro}{\caption@normalsize}
-% \changes{v3.1}{2007/05/05}{This macro and its usage added}
+% \changes{v3.1}{2007/05/05}{This macro definition added}
% \changes{v3.5}{2020/07/27}{Adapted to \package{caption3} v2.0}
% This one will be used by |\@caption| instead of |\normalsize|.
% \begin{macrocode}
@@ -1700,7 +6339,7 @@
% \end{macro}
%
% \begin{macro}{\caption@gettitle}
-% \changes{v3.1}{2007/05/05}{This macro and its usage added}
+% \changes{v3.1}{2007/05/05}{This macro definition added}
% This one is needed for support of the \package{nameref} package.
% \begin{macrocode}
\newcommand\caption@gettitle[1]{%
@@ -1710,7 +6349,7 @@
% \end{macrocode}
% \end{macro}
%
-% \section{Support for sub-captions}
+% \subsection{Support for sub-captions}
% \changes{v3.1f}{2007/11/16}{Support for sub-captions added}
%
% \begin{macro}{\caption@subtypehook}
@@ -1727,6 +6366,7 @@
% \changes{v3.3}{2018/09/06}{Adapted to the \package{chkfloat} package}
% \changes{v3.4f}{2020/01/03}{Redefinition of \cs{@caption} added since it was redefined by the \env{threeparttable} environment}
% \changes{v3.5}{2020/07/27}{Adapted to \package{caption3} v2.0}
+% \changes{v3.6}{2020/09/20}{Handling of flags out-sourced to \cs{caption@stepcounter}}
% Hook, will be used inside \cs{caption@setsubtype}.\par
% (Note: If we are inside an |sub|\-|float|\-|row| environment we have to keep
% the |\@make|\-|caption| code of the \package{floatrow} package intact.)
@@ -1734,22 +6374,11 @@
\newcommand*\caption@subtypehook{%
\ifx\caption\caption@subcaption \else
\caption@warmup
-% \end{macrocode}
-% \begin{macrocode}
- \caption@ifflag2{}{% caption
-% no \caption in this part of the (floating) environment yet
- \let\caption@add@contentsline\caption@addsubcontentsline
- \let\caption@addsubcontentslines\@gobble
- \caption@ifflag4{}{% subcaption
-% no \subcaption in this part of the (floating) environment yet
- \caption@ifflag1{% continued float
- \caption@clrflag1%
- }{%
- \caption@@stepcounter\@captype
- }%
- \caption@setflag4% subcaption
- }%
- }%
+ \caption@stepcounter\@captype
+ \caption@ifcaption
+ {}%
+ {\let\caption@add@contentsline\caption@addsubcontentsline
+ \let\caption@addsubcontentslines\@gobble}%
% \end{macrocode}
% \begin{macrocode}
\c@continuedfloat=0\relax
@@ -1780,8 +6409,9 @@
\let\@caption\caption@@caption
\let\phantomcaption\caption@subphantom
\let\captionlistentry\caption@sublistentry
+ \let\captiontext\caption@subtext
% \let\@captype\@subcaptype
- \let\caption@refstepcounter\caption@@@refstepcounter
+ \let\caption@refstepcounter\caption@refstepcounter@
% \end{macrocode}
% \begin{macrocode}
% restore \@makecaption
@@ -1841,7 +6471,17 @@
% \end{macrocode}
% \begin{macrocode}
\newcommand*\@subcaptionlistentry[1]{%
- \@testopt{\caption@listentry{#1}}\@subcaptype}
+ \@testopt{\caption@listentry{#1}}{\@subcaptype}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@subtext}
+% \changes{v3.2a}{2011/08/17}{This macro added}
+% Same as |\captiontext|, but for sub-captions.
+% \begin{macrocode}
+\newcommand*\caption@subtext{%
+% \caption@checkgrouplevel{sub}\subcaptiontext
+ \caption@text\@subcaptype}
% \end{macrocode}
% \end{macro}
%
@@ -1884,51 +6524,26 @@
% \begin{macro}{\flushsubcaptionlistentries}
% \changes{v3.3}{2012/01/15}{Renamed from \cs{caption@addsubcontentslines} to \cs{flushsubcaptionlistentries}}
% \changes{v3.3}{2013/03/10}{Bugfix: Missing redefinition of \cs{caption@addsubcontentslines} added}
+% \changes{v3.6}{2021/01/09}{Patch of \cs{chapter} and \cs{appendix} dropped}
% Writes pending sub-caption list entries.
+% (Note: We keep the parameter of |\caption@add|\-|sub|\-|contents|\-|lines| for compatibility reasons although it's not used anymore.)
% \begin{macrocode}
\newcommand*\flushsubcaptionlistentries{%
- \caption@addsubcontentslines{user}}
+ \caption@addsubcontentslines\relax}
% \end{macrocode}
% \begin{macrocode}
\renewcommand*\caption@addsubcontentslines[1]{%
- \caption@Debug{\string\flushsubcaptionlistentries (#1)}%
+ \caption@Debug{\string\flushsubcaptionlistentries}%
\begingroup
\caption@subcontentslines
\endgroup
\caption@clearsubcontentslines}
% \end{macrocode}
-% We need to patch \cs{chapter} otherwise a vertical gap will be inserted into
-% the list prior pending sub-caption list entries.
-% We do this |\At|\-|Begin|\-|Document| so packages like \package{newfloat}
-% will not complain about an unknown document class.
-% \begin{macrocode}
-\AtBeginDocument{%
-% \end{macrocode}
-% \begin{macrocode}
- \caption@ifdefined\chapter{%
- \let\caption@chapter@ORI\chapter
- \def\chapter{%
- \caption@addsubcontentslines{chapter}\caption@chapter@ORI}}{}%
-% \end{macrocode}
-% Same for \cs{appendix}.
-% \begin{macrocode}
- \caption@ifdefined\appendix{%
- \let\caption@appendix@ORI\appendix
- \def\appendix{%
- \caption@addsubcontentslines{appendix}\caption@appendix@ORI}}{}%
-% \end{macrocode}
-% Flush the list of pending sub-caption list entries at the end of the document.
-% \begin{macrocode}
- \caption@addsubcontentslines{AtEndDocument}%
-% \end{macrocode}
-% \begin{macrocode}
-}
-% \end{macrocode}
% \end{macro}
%
-% \section{Babel package support}
+% \subsection{Babel package support}
%
-% \subsection{The arabic \& farsi babel option}
+% \subsubsection{The arabic \& farsi babel option}
% \changes{v3.5}{2020/08/02}{\package{arabic} babel support addded}
%
% \begin{macrocode}
@@ -1948,7 +6563,7 @@
}{}
% \end{macrocode}
%
-% \subsection{The frenchle \& frenchpro package}
+% \subsubsection{The frenchle \& frenchpro package}
% \changes{v3.0h}{2005/10/03}{\package{frenchle/pro} package support added}
% \changes{v3.5}{2020/08/01}{\package{frenchle/pro} package support updated}
%
@@ -1984,7 +6599,7 @@
}{}
% \end{macrocode}
%
-% \subsection{The hungarian \& magyar babel option}
+% \subsubsection{The hungarian \& magyar babel option}
% \changes{v3.2}{2009/03/29}{\package{magyar} babel support added}
% \changes{v3.3}{2018/08/26}{\package{magyar} babel support revised}
% \changes{v3.5}{2020/08/02}{\package{magyar} babel support updated}
@@ -2013,7 +6628,7 @@
}{}
% \end{macrocode}
%
-% \subsection{The latvian babel option}
+% \subsubsection{The latvian babel option}
% \changes{v3.5}{2020/08/02}{\package{latvian} babel support updated}
%
% \begin{macrocode}
@@ -2031,7 +6646,7 @@
}{}
% \end{macrocode}
%
-% \section{Package support}
+% \subsection{Package support}
% \changes{v3.1}{2007/04/11}{Package options `float', `longtable' etc.~are not supported anymore, removed}
%
% \begin{macro}{\caption@IfPackageLoaded}
@@ -2073,12 +6688,13 @@
% \end{macro}
%
% \begin{macro}{\caption@clearmargin}
-% \changes{v3.1}{2007/05/05}{This macro and its usage added}
+% \changes{v3.1}{2007/05/05}{This macro definition added}
+% \changes{v3.6}{2021/01/17}{Adapted to current implementation of \cs{caption@setmargin}}
% This macro will be used by some package support stuff where the usual
% margin setting is not welcome, e.g. in the \package{sidecap} package.
% \begin{macrocode}
\newcommand*\caption@clearmargin{%
- \setcaptionmargin\z@
+ \caption@setmargin\z@
\let\caption@minmargin\@undefined}
% \end{macrocode}
% \end{macro}
@@ -2119,10 +6735,14 @@
\newcommand*\caption@freeze{%
\let\caption@frozen@continuedfloat\continuedfloat
\def\continuedfloat{%
- \caption@@freeze{\caption@@@@continuedfloat\@captype}%
+ \caption@@freeze{\caption@@@continuedfloat\@captype}%
\caption@frozen@continuedfloat}%
% \end{macrocode}
% \begin{macrocode}
+ \let\caption@frozen@nextfloat\nextfloat
+ \def\nextfloat{\caption@freeze@error}%
+% \end{macrocode}
+% \begin{macrocode}
\let\caption@frozen@setup\caption@setup
\def\caption@setup##1{%
\caption@@freeze{\caption@setup{##1}}%
@@ -2131,14 +6751,11 @@
% \begin{macrocode}
\let\caption@frozen@caption\caption
\def\caption{%
- \def\caption{%
- \caption@Error{%
- Only one \noexpand\caption can be placed in this environment}%
- \caption@gobble}%
+ \def\caption{\caption@freeze@error\caption@gobble}%
\@ifstar
- {\caption@SC@caption*}%
- {\let\@currentlabel\caption@SClabel
- \caption@withoptargs\caption@SC@caption}}%
+ {\caption@SC@caption*}%
+ {\let\@currentlabel\caption@SClabel
+ \caption@withoptargs\caption@SC@caption}}%
\long\def\caption@SC@caption##1##2{%
\caption@@freeze{\caption##1{##2}}%
\ignorespaces}%
@@ -2167,10 +6784,15 @@
% \begin{macrocode}
\def\caption@warmup{%
\let\continuedfloat\caption@frozen@continuedfloat
+ \let\nextfloat\caption@frozen@nextfloat
\let\caption@setup\caption@frozen@setup
\let\caption\caption@frozen@caption
\let\label\caption@frozen@label}}%
% \end{macrocode}
+% \begin{macrocode}
+ \newcommand*\caption@freeze@error{%
+ \caption@Error{Only one \noexpand\caption can be placed in this environment}}
+% \end{macrocode}
% \end{macro}
%
% \begin{macro}{\caption@prepare@defrost}
@@ -2178,7 +6800,7 @@
% Prevent resetting the caption flags
% \begin{macrocode}
\newcommand*\caption@prepare@defrost{%
- \let\caption@settype\caption@set@type}
+ \let\caption@settype\caption@@settype}
% \end{macrocode}
% \end{macro}
%
@@ -2212,7 +6834,7 @@
% \end{macrocode}
% \end{macro}
%
-% \subsection{The changepage package}
+% \subsubsection{The changepage package}
% \changes{v3.4k}{2020/05/30}{Patch of the \package{changepage} package added}
%
% \begin{macrocode}
@@ -2242,12 +6864,14 @@
% \end{macro}
%
% \begin{macro}{\caption@set@adjustwidth}
-% \changes{v3.4k}{2020/05/30}{This macro and its usage added}
+% \changes{v3.4k}{2020/05/30}{This macro definition added}
+% \changes{v3.6}{2022/02/13}{Usage of \cs{AtBeginCaption} replaced by \cs{l@addto@macro}\cs{caption@before@parboxrestore}}
% Store the values of \cs{hsize} and \cs{linewidth}.
% \begin{macrocode}
\providecommand*\caption@set@adjustwidth{%
\caption@adjustwidth@hsize\hsize
- \caption@adjustwidth@linewidth\linewidth}%
+ \caption@adjustwidth@linewidth\linewidth
+ \l@addto@macro\caption@before@parboxrestore\caption@test@adjustwidth}%
% \end{macrocode}
% \begin{macrocode}
\providecommand*\caption@patch@changepage[1]{%
@@ -2262,7 +6886,7 @@
% \end{macro}
%
% \begin{macro}{\caption@test@adjustwidth}
-% \changes{v3.4k}{2020/05/30}{This macro and its usage added}
+% \changes{v3.4k}{2020/05/30}{This macro definition added}
% Test if the values of \cs{hsize} and \cs{linewidth} are identical to
% the ones stored in the \env{adjustwidth} environment.
% If yes, set \cs{hsize} to the correct value.
@@ -2274,16 +6898,13 @@
\fi
\fi}%
% \end{macrocode}
-% \begin{macrocode}
- \AtBeginCaption{\caption@test@adjustwidth}%
-% \end{macrocode}
% \end{macro}
%
% \begin{macrocode}
}{}%
% \end{macrocode}
%
-% \subsection{The chkfloat package}
+% \subsubsection{The chkfloat package}
% \changes{v3.3}{2018/09/06}{Support of the \package{chkfloat} package added}
%
% \begin{macrocode}
@@ -2308,12 +6929,11 @@
}{}%
% \end{macrocode}
%
-% \subsection{The float package}
+% \subsubsection{The float package}
% \changes{v3.0f}{2005/05/31}{\package{float} package support rewritten and improved}
% \iffalse
-% (This is a more straight-ahead implementation, but it only works with v1.3
-% now, so v1.2 is no longer supported. The old code including documentation
-% can be found in caption-30f-050530.zip)
+% (This is a more straight-ahead implementation, but it only works with \version{1.3}
+% now, so \version{1.2} is no longer supported.
% \fi
%
% The \package{float} package usually do not use the \LaTeX\ kernel command
@@ -2401,9 +7021,9 @@
% \begin{macro}{\float@makebox}
% \changes{v3.3}{2013/01/06}{Corrects wrong load order hyperref-float now}
% \changes{v3.3}{2013/02/03}{Correction of wrong load order hyperref-float revised}
-% Redefine |\float@makebox| (only if we are not operating in compatibility mode `v1').
+% Redefine |\float@makebox|:
% \begin{macrocode}
- \caption@AtBeginDocument{\caption@ifcompatibility{}{%
+ \caption@AtBeginDocument{%
% \end{macrocode}
% If it was redefined by the \package{hyperref} package,
% we need to build on the original definition (and not on the redefined one).
@@ -2415,7 +7035,7 @@
\caption@ORI@float@makebox{#1\relax \caption@defrostHref}}%
% \end{macrocode}
% \begin{macrocode}
- }}%
+ }%
% \end{macrocode}
% \end{macro}
%
@@ -2540,7 +7160,7 @@
\caption@undefbool{ruled}
% \end{macrocode}
%
-% \subsection{The floatflt package}
+% \subsubsection{The floatflt package}
% \changes{v3.1}{2007/06/10}{Support of the \package{floatflt} package added}
%
% \begin{macrocode}
@@ -2583,7 +7203,6 @@
\newcommand*\caption@floatflt[1]{%
\caption@settype{#1}%
\caption@clearmargin
- \caption@setparboxrestore{full}%
\caption@setoptions{floating#1}}%
% \end{macrocode}
% \end{macro}
@@ -2592,7 +7211,7 @@
}{}
% \end{macrocode}
%
-% \subsection{The fltpage package}
+% \subsubsection{The fltpage package}
% \changes{v3.1}{2007/07/22}{Support of the \package{fltpage} package added}
%
% \begin{macrocode}
@@ -2742,7 +7361,7 @@
}
% \end{macrocode}
%
-% \subsection{The hyperref package}
+% \subsubsection{The hyperref package}
% \changes{v3.0f}{2005/06/11}{Support of the \package{hyperref} package added}
% \changes{v3.1}{2007/03/09}{Usage of \cs{hyper@makecurrent} instead of
% \cs{theHfigure} as indicator for \package{hyperref} package}
@@ -2768,14 +7387,14 @@
Hyperref support is turned off\MessageBreak
because hyperref has stopped early}%
}{%
- \g@addto@macro\caption@prepareslc{\measuring@true}%
+ \AtCaptionSingleLineCheck{\measuring@true}%
% \end{macrocode}
%
-% \begin{macro}{\caption@@@refstepcounter}
-% We redefine |\caption@@refstepcounter| so |\H@refstepcounter| will be used
+% \begin{macro}{\caption@refstepcounter@}
+% We redefine |\caption@refstepcounter@| so |\H@refstepcounter| will be used
% instead of |\refstepcounter| inside |\caption| \& |\captionlistentry|.
% \begin{macrocode}
- \renewcommand*\caption@@@refstepcounter{\H@refstepcounter}%
+ \renewcommand*\caption@refstepcounter@{\H@refstepcounter}%
% \end{macrocode}
% \end{macro}
%
@@ -2813,7 +7432,7 @@
\fi}%
% \end{macrocode}
% \begin{macrocode}
- \g@addto@macro\caption@prepareslc{\let\caption@makeanchor\@firstofone}%
+ \AtCaptionSingleLineCheck{\let\caption@makeanchor\@firstofone}%
% \end{macrocode}
% \end{macro}
%
@@ -3016,11 +7635,11 @@
}}{}
% \end{macrocode}
%
-% \subsection{The hypcap package}
+% \subsubsection{The hypcap package}
% \changes{v3.0f}{2005/06/22}{Support of the \package{hypcap} package added}
% \changes{v3.0l}{2007/02/20}{Adapted to \package{hypcap} \version{1.6}}
% \changes{v3.1e}{2007/11/04}{\package{hypcap} support adapted to \package{hyperref} \version{6.77}}
-%
+%
% \begin{macrocode}
\caption@IfPackageLoaded{hypcap}{% v1.0
\ifx\caption@start\relax \else % hyperref hasn't stopped early
@@ -3038,7 +7657,6 @@
% only but our version affects \emph{all} |\caption|s in the same
% environment, at least unless a new |\capstart| will be placed.
% \begin{macrocode}
- \let\caption@ORI@capstart\capstart % save for compatibility mode
\caption@ifundefined\capstarttrue % check for v1.10 of hypcap package
{\def\capstart{\caption@start@}}%
{\def\capstart{\ifcapstart\caption@start@\fi}}%
@@ -3060,7 +7678,7 @@
\fi}{}
% \end{macrocode}
%
-% \subsection{The listings package}
+% \subsubsection{The listings package}
% \changes{v3.0b}{2004/05/16}{Support of the \package{listings} package added}
%
% \begin{macrocode}
@@ -3073,6 +7691,7 @@
% \changes{v3.2}{2010/10/26}{Bugfix 10-07-20a: Set \cs{hsize} to \cs{linewidth}, if necessary}
% \changes{v3.4c}{2020/01/01}{Ugly workaround for usage in lists added}
% \changes{v3.4d}{2020/01/01}{Ugly workaround for usage in lists revised}
+% \changes{v3.6}{2021/01/04}{Re-definition of \cs{addcontentsline} added}
% To support the \package{listings} package we need to redefine
% |\lst@Make|\-|Caption| so the original stuff is nested with
% |\caption@begin| and |\caption@end| etc.\par
@@ -3083,7 +7702,7 @@
% \end{macrocode}
% \begin{macrocode}
\let\caption@ORI@lst@MakeCaption\lst@MakeCaption
- \def\lst@MakeCaption#1{% #1 is `t' or `b'
+ \renewcommand*\lst@MakeCaption[1]{% #1 is `t' or `b'
% \end{macrocode}
% This macro is always called twice by the \package{listings} package (with `t' resp. `b' as parameter),
% therefore we need an extra group here.
@@ -3123,6 +7742,15 @@
% \begin{macrocode}
\caption@setautoposition{#1}%
% \end{macrocode}
+% \begin{macrocode}
+% We re-define |\addcontentsline| so our list format gets used for the lol entry etc.
+ \ifx\lst@@caption\@empty \else
+ \let\caption@ORI@addcontentsline\addcontentsline
+ \renewcommand*\addcontentsline[3]{%
+ \let\addcontentsline\caption@ORI@addcontentsline
+ \caption@addcontentsline{lstlisting}{\lst@@caption}}%
+ \fi
+% \end{macrocode}
% At the end we do similar stuff as in our \cs{@caption} code.
% \begin{macrocode}
\caption@begin{lstlisting}%
@@ -3160,7 +7788,7 @@
}{}
% \end{macrocode}
%
-% \subsection{The longtable package}
+% \subsubsection{The longtable package}
%
% \begin{macro}{\LTcaptype}
% \changes{v3.1}{2007/07/06}{This macro and its support added}
@@ -3194,6 +7822,7 @@
% \changes{v3.3}{2016/01/31}{Support for \cs{bicaption} added}
% \changes{v3.3}{2018/10/05}{Definition of \cs{captionlistentry} fixed}
% \changes{v3.5}{2018/04/15}{Usage of \cs{caption@AtBeginLongtable} added}
+% \changes{v3.6}{2022/01/05}{Usage of \cs{caption@Error} replaced by \cs{caption@OutsideFloat}}
% We redefine |\LT@array| here to get |\captionsetup|\marg{options} working inside |longtable|s.
% \Note{Since the \package{hyperref} package patches \cs{LT@array} as well
% and since this only works with the original definition of \cs{LT@array},
@@ -3256,7 +7885,7 @@
% }%
% \global\let\caption@setContinuedFloat\@empty
\def\continuedfloat{\noalign{%
- \caption@Error{\noexpand\continuedfloat outside float}}}%
+ \caption@OutsideFloat\continuedfloat}}%
% \end{macrocode}
% |\bicaption| for longtable:
% \begin{macrocode}
@@ -3291,6 +7920,7 @@
% \changes{v3.0h}{2005/10/07}{\cs{caption@LT@make} introduced}
% \changes{v3.3}{2016/02/01}{Support for \cs{bicaption} via \cs{caption@LT@setup} added}
% \changes{v3.3a}{2019/04/02}{Work-around for problem with \package{floatrow} added}
+% \changes{v3.6}{2021/01/09}{Adapted to current interface of \cs{caption@prepare@stepcounter}}
% |\LT@makecaption|\marg{cmd}\marg{label}\marg{text}\par
% \smallskip
% The original definition:
@@ -3336,7 +7966,7 @@
\caption@startrue#1\caption@starfalse
% \end{macrocode}
% \begin{macrocode}
- \caption@prepare@stepcounter\LTcaptype{LT}%
+ \caption@prepare@stepcounter\LTcaptype
% \end{macrocode}
% \changes{v3.1}{2007/05/05}{\cs{caption@font@normal} added}
% \begin{macrocode}
@@ -3389,6 +8019,7 @@
% \begin{macro}{\caption@LT@settype}
% \changes{v3.3}{2018/08/26}{This macro added}
% \changes{v3.3}{2018/10/05}{Uses argument no. 1 instead of \cs{LTcaptype}}
+% \changes{v3.6}{2021/01/17}{Adapted to current implementation of \cs{caption@setwidth}}
% \begin{macrocode}
\newcommand*\caption@LT@settype[1]{%
\caption@settype*{#1}%
@@ -3398,7 +8029,7 @@
% (But |\captionsetup[longtable]{width=|\ldots|}| will overwrite |\LTcapwidth|.)
% \begin{macrocode}
\ifdim\LTcapwidth=4in \else
- \setcaptionwidth\LTcapwidth
+ \caption@setwidth\LTcapwidth
\fi
% \end{macrocode}
% \begin{macrocode}
@@ -3447,7 +8078,7 @@
% \end{macrocode}
% \end{macro}
%
-% \subsection{The picinpar package}
+% \subsubsection{The picinpar package}
% \changes{v3.1}{2007/06/13}{Support of the \package{picinpar} package added}
%
% \begin{macrocode}
@@ -3484,8 +8115,7 @@
\let\@makecaption\caption@@make
\caption@setautoposition b%
\caption@settype{#1}%
- \caption@clearmargin
- \caption@setparboxrestore{full}}%
+ \caption@clearmargin}%
% \end{macrocode}
% \end{macro}
%
@@ -3493,6 +8123,7 @@
% \changes{v3.1d}{2007/10/25}{Missing \% added}
% \changes{v3.3}{2013/04/14}{\cs{caption@ContinuedFloattrue} added}
% \changes{v3.3}{2018/10/06}{\cs{caption@ContinuedFloattrue} replaced by \cs{caption@setflag1}}
+% \changes{v3.6}{2020/12/28}{\cs{caption@setflag1} replaced by \cs{caption@clrflags}\cs{caption@setcontinued}}
% This one finally typesets the caption using |\caption|.
% \begin{macrocode}
\newcommand\caption@wincaption[1]{%
@@ -3505,7 +8136,9 @@
\let\caption@@start\relax
\caption@prepareslc
\else
- \caption@setflag1%
+ % don't increment the figure or table counter again
+ \caption@clrflags
+ \caption@setcontinued
\fi
% \end{macrocode}
% The argument |#1| could contain simply the caption text
@@ -3531,7 +8164,7 @@
}{}
% \end{macrocode}
%
-% \subsection{The picins package}
+% \subsubsection{The picins package}
% \changes{v3.0j}{2006/01/26}{Support of the \package{picins} package added}
%
% \begin{macro}{\piccaptiontype}
@@ -3609,11 +8242,10 @@
\caption@freezeHref % will be defrosted in \ivparpic
\caption@settype\@piccaptype
% \ifnum\c@piccaptionpos>2\relax
- \caption@clearmargin
+ \caption@clearmargin
% \else
-% \captionwidth\z@ % do not use "width=" setting
+% \caption@width\z@ % do not use "width=" setting
% \fi
- \caption@setparboxrestore{full}%
\caption@setoptions{parpic}%
\caption@setautoposition b%
% \end{macrocode}
@@ -3668,7 +8300,7 @@
}
% \end{macrocode}
%
-% \subsection{The rotating package}
+% \subsubsection{The rotating package}
%
% \begin{macrocode}
\caption@IfPackageLoaded{rotating}[1995/08/22 v2.10]{%
@@ -3695,8 +8327,9 @@
%
% \begin{macro}{\@makerotcaption}
% \changes{v3.0i}{2005/12/06}{Rewritten, should finally work proper now}
-% \changes{v3.0m}{2007/03/04}{Uses \cs{caption@parbox} instead of \cs{caption@start/endbox} now}
+% \changes{v3.0m}{2007/03/04}{Uses \cs{caption@parbox} instead of \cs{caption@start/endbox}}
% \changes{v3.3}{2012/12/26}{Rewritten (again)}
+% \changes{v3.6}{2021/01/17}{Adapted to current implementation of \cs{caption@setmargin}}
% Original (bugfixed) code:
% \begin{verbatim}
% \long\def\@makerotcaption#1#2{%
@@ -3717,8 +8350,8 @@
% \begin{macrocode}
\long\def\@makerotcaption#1#2{%
\rotatebox{90}{%
- \ifdim\captionwidth=\z@
- \setcaptionwidth{.8\vsize}%
+ \ifdim\caption@width=\z@
+ \caption@setwidth{.8\vsize}%
\l@addto@macro\caption@singleline{%
\caption@setup{parbox=none}}%
\fi
@@ -3732,7 +8365,7 @@
}{}
% \end{macrocode}
%
-% \subsection{The sidecap package}
+% \subsubsection{The sidecap package}
%
% \begin{macrocode}
\caption@IfPackageLoaded{sidecap}[2003/06/06 v1.6f]{%
@@ -3831,7 +8464,7 @@
}{}
% \end{macrocode}
%
-% \subsection{The subfigure package}
+% \subsubsection{The subfigure package}
% \changes{v3.1}{2007/04/06}{subfigure package support added}
%
% \begin{macrocode}
@@ -3869,7 +8502,7 @@
}{}
% \end{macrocode}
%
-% \subsection{The supertabular and xtab packages}
+% \subsubsection{The supertabular and xtab packages}
%
% \begin{macrocode}
\caption@IfPackageLoaded{supertabular}[2002/07/19 v4.1e]{%
@@ -3979,9 +8612,9 @@
% \begingroup
% \@parboxrestore
% \normalsize
-% %% \if@topcaption \vskip -10\p@ \fi
+% %% \if@topcaption \vskip -10\p@ \fi
% \@makecaption{\csname fnum@#1\endcsname}{\ignorespaces #3}\par
-% %% \if@topcaption \vskip 10\p@ \fi
+% %% \if@topcaption \vskip 10\p@ \fi
% \endgroup
% \global\advance\ST@pageleft -\PWSTcapht
% \ST@trace\tw@{Added caption. Space left for xtabular: \the\ST@pageleft}}
@@ -4010,7 +8643,7 @@
}{}
% \end{macrocode}
%
-% \subsection{The threeparttable package}
+% \subsubsection{The threeparttable package}
% \changes{v3.1}{2007/05/08}{Support of the \package{threeparttable} package added}
%
% \begin{macrocode}
@@ -4080,7 +8713,7 @@
}{}
% \end{macrocode}
%
-% \subsection{The wrapfig package}
+% \subsubsection{The wrapfig package}
% \changes{v3.1}{2007/05/05}{Support of the \package{wrapfig} package added}
% \changes{v3.2d}{2011/11/02}{Support of the \package{wrapfig} package rewritten}
%
@@ -4090,6 +8723,7 @@
%
% \begin{macro}{\wrapfloat}
% \changes{v3.2d}{2011/11/02}{Redefinition of this macro added}
+% \changes{v3.6}{2020/12/28}{Usage of \cs{@testopt} added}
% First of all we make the \package{wrapfig} package independent from the package
% load order regarding the \package{float} package.
% Since the usage of |\@float@set|\-|every| is missing in the code of the \package{wrapfig}
@@ -4104,7 +8738,7 @@
% \@float@setevery{#1}%
\def\WF@floatstyhook{\let\@currbox\WF@box
\global\setbox\WF@box\float@makebox{\wd\WF@box}}}%
- \@ifnextchar[\WF@wr{\WF@wr[]}}
+ \@testopt\WF@wr{}}
% \end{macrocode}
% \end{macro}
%
@@ -4144,7 +8778,7 @@
\@ifundefined{fst@#1}{}{\@float@setevery{#1}}%
\caption@settype{#1}%
\caption@clearmargin
-%%% \caption@setoptions{wrap}%
+%%% \caption@setoptions{wrap}%
\caption@setoptions{wrap#1}}%
% \end{macrocode}
% \end{macro}
@@ -4153,7 +8787,45 @@
}{}
% \end{macrocode}
%
-% \section{That's all Folks!}
+% \subsection{Debug stuff}
+%
+% \begin{macro}{\caption@checkcounter}
+% \changes{v3.6}{2020/12/28}{This macro added}
+% |\caption@checkref|\marg{counter}\marg{expected value}\\
+% checks if |\value|\marg{counter} would result in the \meta{expected value}.
+% \begin{macrocode}
+\newcommand*\caption@checkcounter[1]{%
+ \caption@check{\the#1}{\@nameuse{the#1}}}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@check[3]{%
+ \edef\caption@tempa{#2}%
+ \edef\caption@tempb{#3}%
+ \ifx\caption@tempa\caption@tempb
+ \caption@Info{\string#1 = \caption@tempa}%
+ \else
+ \caption@Error{\string#1 = \caption@tempa\space <> \caption@tempb}%
+ \fi}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@checkref}
+% \changes{v3.6}{2020/12/28}{This macro added}
+% |\caption@checkref|\marg{marker}\marg{expected value}\\
+% checks if |\ref|\marg{marker} would result in the \meta{expected value}.
+% \begin{macrocode}
+\newcommand*\caption@checkref[2]{%
+ \@ifundefined{r@#1}{}%
+ {\expandafter\expandafter\expandafter
+ \caption@@checkref\csname r@#1\endcsname\@nil{#1}{#2}}}
+% \end{macrocode}
+% \begin{macrocode}
+\def\caption@@checkref#1#2\@nil#3#4{%
+ \caption@check{\ref{#3}}{#1}{#4}}
+% \end{macrocode}
+% \end{macro}
+%
+% \subsection{That's all Folks!}
%
% Execute the code declared with |\After|\-|Caption|\-|Package|.
%
@@ -4172,121 +8844,7 @@
% \fi
%
% \clearpage
-% \begin{thebibliography}{99}
-% \bibitem{float}
-% Anselm Lingnau:\\
-% \href{http://www.ctan.org/pkg/float}%
-% {\emph{An Improved Environment for Floats}},\\
-% 2001/11/08
-%
-% \bibitem{floatflt}
-% Mats Dahlgren:\\
-% \href{http://www.ctan.org/pkg/floatflt}%
-% {\emph{Welcome to the floatflt package}},\\
-% 1998/06/05
-%
-% \bibitem{floatrow}
-% Olga Lapko:\\
-% \href{http://www.ctan.org/pkg/floatrow}%
-% {\emph{The floatrow package documentation}},\\
-% 2009/08/02
-%
-% \bibitem{fltpage}
-% Sebastian Gross:\\
-% \href{http://www.ctan.org/pkg/fltpage}%
-% {\emph{Welcome to the beta test of fltpage package!}},\\
-% 1998/11/13
-%
-% \bibitem{hyperref}
-% Sebastian Rahtz \& Heiko Oberdiek:\\
-% \href{http://www.ctan.org/pkg/hyperref}%
-% {\emph{Hypertext marks in \LaTeX: a manual for hyperref}},\\
-% November 2012
-%
-% \bibitem{hypcap}
-% Heiko Oberdiek:\\
-% \href{http://www.ctan.org/pkg/oberdiek}%
-% {\emph{The hypcap package -- Adjusting anchors of captions}},\\
-% 2011/02/16
-%
-% \bibitem{listings}
-% Carsten Heinz \& Brooks Moses:\\
-% \href{http://www.ctan.org/pkg/listings}%
-% {\emph{The Listings Package}},\\
-% 2007/02/22
-%
-% \bibitem{longtable}
-% David Carlisle:\\
-% \href{http://www.ctan.org/pkg/longtable}%
-% {\emph{The longtable package}},\\
-% 2004/02/01
-%
-% \bibitem{picinpar}
-% Friedhelm Sowa:\\
-% \href{http://www.ctan.org/pkg/picinpar}%
-% {\emph{Pictures in Paragraphs}},\\
-% July 13, 1993
-%
-% \bibitem{picins}
-% Joachim Bleser and Edmund Lang:\\
-% \href{http://www.ctan.org/pkg/picins}%
-% {\emph{PicIns-Benutzerhandbuch Version 3.0}},\\
-% September~1992
-%
-% \bibitem{rotating}
-% Sebastian Rahtz and Leonor Barroca:\\
-% \href{http://www.ctan.org/pkg/rotating}%
-% {\emph{A style option for rotated objects in \LaTeX}},\\
-% 1997/09/26
-%
-% \bibitem{sidecap}
-% Rolf Niepraschk \& Hubert G\"a\ss lein:\\
-% \href{http://www.ctan.org/pkg/sidecap}%
-% {\emph{The sidecap package}},\\
-% 2003/06/06
-%
-% \bibitem{subfigure}
-% Steven D. Cochran:\\
-% \href{http://www.ctan.org/pkg/subfigure}%
-% {\emph{The subfigure package}},\\
-% 2005/03/15
-%
-% \bibitem{subfig}
-% Steven D. Cochran:\\
-% \href{http://www.ctan.org/pkg/subfig}%
-% {\emph{The subfig package}},\\
-% 2005/07/05
-%
-% \bibitem{supertabular}
-% Johannes Braams and Theo Jurriens:\\
-% \href{http://www.ctan.org/pkg/supertabular}%
-% {\emph{The supertabular environment}},\\
-% 2004/02/20
-%
-% \bibitem{threeparttable}
-% Donald Arseneau:\\
-% \href{http://www.ctan.org/pkg/threeparttable}%
-% {\emph{Three part tables: title, tabular environment, notes}},\\
-% March 5, 2010
-%
-% \bibitem{wrapfig}
-% Donald Arseneau:\\
-% \href{http://www.ctan.org/pkg/wrapfig}%
-% {\emph{WRAPFIG.STY ver 3.6}},\\
-% Jan 31, 2003
-%
-% \bibitem{xtab}
-% Peter Wilson:\\
-% \href{http://www.ctan.org/pkg/xtab}%
-% {\emph{The xtab package}},\\
-% 2011/07/31
-% \end{thebibliography}
-%
-% \iffalse
-% --------------------------------------------------------------------------- %
-% \fi
-%
-% \clearpage
% \Finale
%
\endinput
+
diff --git a/macros/latex/contrib/caption/caption.ins b/macros/latex/contrib/caption/caption.ins
index 188347ba15..0a45ce53ea 100644
--- a/macros/latex/contrib/caption/caption.ins
+++ b/macros/latex/contrib/caption/caption.ins
@@ -6,7 +6,7 @@
\preamble
-Copyright (C) 1994-2020 Axel Sommerfeldt (axel.sommerfeldt@f-m.fm)
+Copyright (C) 1994-2022 Axel Sommerfeldt (axel.sommerfeldt@f-m.fm)
https://gitlab.com/axelsommerfeldt/caption
@@ -33,9 +33,7 @@ the derived files
caption.sty, caption-light.sty, caption2.sty, caption3.sty,
caption-ams-smf.sto, caption-beamer.sto, caption-elsarticle.sto,
caption-koma.sto, caption-memoir.sto, caption-ntg.sto,
- caption-thesis.sto, bicaption.sty, ltcaption.sty, subcaption.sty,
-and the user manuals
- caption-deu.tex, caption-eng.tex, caption-rus.tex.
+ caption-thesis.sto, bicaption.sty, ltcaption.sty, subcaption.sty.
\endpreamble
@@ -56,14 +54,28 @@ and the user manuals
\generate{\file{ltcaption.sty}{\from{ltcaption.dtx}{package}}}
\generate{\file{subcaption.sty}{\from{subcaption.dtx}{package}}}
+\generate{\file{caption_1995-04-05.sty}{\from{fallback/v1/caption.dtx}{package}}}
+\generate{\file{caption2_1995-10-09.sty}{\from{fallback/v2.0/caption2.dtx}{package}}}
+\generate{\file{caption2_2005-10-03.sty}{\from{fallback/v2.1/caption2.dtx}{package}}}
+\generate{\file{caption_2007-04-16.sty}{\from{fallback/v3.0/caption.dtx}{package}}}
+\generate{\file{caption3_2007-04-11.sty}{\from{fallback/v3.0/caption.dtx}{kernel}}}
+\generate{\file{caption_2010-01-09.sty}{\from{fallback/v3.1/caption.dtx}{package}}}
+\generate{\file{caption3_2010-01-14.sty}{\from{fallback/v3.1/caption.dtx}{kernel}}}
+\generate{\file{caption_2011-11-10.sty}{\from{fallback/v3.2/caption.dtx}{package}}}
+\generate{\file{caption3_2011-11-01.sty}{\from{fallback/v3.2/caption3.dtx}{package}}}
+\generate{\file{caption_2019-09-01.sty}{\from{fallback/v3.3/caption.dtx}{package}}}
+\generate{\file{caption3_2019-09-01.sty}{\from{fallback/v3.3/caption3.dtx}{package}}}
+\generate{\file{caption_2020-07-29.sty}{\from{fallback/v3.4/caption.dtx}{package}}}
+\generate{\file{caption3_2020-07-29.sty}{\from{fallback/v3.4/caption3.dtx}{package}}}
+\generate{\file{caption_2020-10-26.sty}{\from{fallback/v3.5/caption.dtx}{package}}}
+\generate{\file{caption3_2020-10-26.sty}{\from{fallback/v3.5/caption3.dtx}{package}}}
+
\Msg{***********************************************************}
\Msg{*}
\Msg{* To finish the installation you have to move the files}
\Msg{* `*.sty' and `*.sto' into a directory searched by TeX.}
\Msg{*}
-\Msg{* To produce the documentation run the file}
-\Msg{* `caption-eng.tex' (English version) or `caption-rus.tex'}
-\Msg{* (Russian version) or `caption-deu.tex' (German version)}
-\Msg{* through LaTeX.}
+\Msg{* To produce the documentation run the files}
+\Msg{* `*.dtx' through LaTeX.}
\Msg{*}
\Msg{***********************************************************}
diff --git a/macros/latex/contrib/caption/caption.pdf b/macros/latex/contrib/caption/caption.pdf
new file mode 100644
index 0000000000..e1465c6498
--- /dev/null
+++ b/macros/latex/contrib/caption/caption.pdf
@@ -0,0 +1,9377 @@
+%PDF-1.5
+%ÔĊĜ
+1 0 obj
+<< /S /GoTo /D 2 0 R >>
+endobj
+4 0 obj
+(\376\377\000C\000o\000n\000t\000e\000n\000t\000s)
+endobj
+5 0 obj
+<< /S /GoTo /D 6 0 R >>
+endobj
+8 0 obj
+(\376\377\0001\000\040\000U\000s\000i\000n\000g\000\040\000t\000h\000i\000s\000\040\000p\000a\000c\000k\000a\000g\000e)
+endobj
+9 0 obj
+<< /S /GoTo /D 10 0 R >>
+endobj
+12 0 obj
+(\376\377\0002\000\040\000O\000p\000t\000i\000o\000n\000s)
+endobj
+13 0 obj
+<< /S /GoTo /D 14 0 R >>
+endobj
+16 0 obj
+(\376\377\0002\000.\0001\000\040\000F\000o\000r\000m\000a\000t\000t\000i\000n\000g)
+endobj
+17 0 obj
+<< /S /GoTo /D 18 0 R >>
+endobj
+20 0 obj
+(\376\377\0002\000.\0002\000\040\000J\000u\000s\000t\000i\000f\000i\000c\000a\000t\000i\000o\000n)
+endobj
+21 0 obj
+<< /S /GoTo /D 22 0 R >>
+endobj
+24 0 obj
+(\376\377\0002\000.\0003\000\040\000F\000o\000n\000t\000s)
+endobj
+25 0 obj
+<< /S /GoTo /D 26 0 R >>
+endobj
+28 0 obj
+(\376\377\0002\000.\0004\000\040\000M\000a\000r\000g\000i\000n\000s\000\040\000a\000n\000d\000\040\000f\000u\000r\000t\000h\000e\000r\000\040\000p\000a\000r\000a\000g\000r\000a\000p\000h\000\040\000o\000p\000t\000i\000o\000n\000s)
+endobj
+29 0 obj
+<< /S /GoTo /D 30 0 R >>
+endobj
+32 0 obj
+(\376\377\0002\000.\0005\000\040\000S\000t\000y\000l\000e\000s)
+endobj
+33 0 obj
+<< /S /GoTo /D 34 0 R >>
+endobj
+36 0 obj
+(\376\377\0002\000.\0006\000\040\000S\000k\000i\000p\000s)
+endobj
+37 0 obj
+<< /S /GoTo /D 38 0 R >>
+endobj
+40 0 obj
+(\376\377\0002\000.\0007\000\040\000L\000i\000s\000t\000s)
+endobj
+41 0 obj
+<< /S /GoTo /D 42 0 R >>
+endobj
+44 0 obj
+(\376\377\0002\000.\0008\000\040\000N\000a\000m\000e\000s)
+endobj
+45 0 obj
+<< /S /GoTo /D 46 0 R >>
+endobj
+48 0 obj
+(\376\377\0002\000.\0009\000\040\000T\000y\000p\000e\000s)
+endobj
+49 0 obj
+<< /S /GoTo /D 50 0 R >>
+endobj
+52 0 obj
+(\376\377\0003\000\040\000C\000o\000m\000m\000a\000n\000d\000s)
+endobj
+53 0 obj
+<< /S /GoTo /D 54 0 R >>
+endobj
+56 0 obj
+(\376\377\0003\000.\0001\000\040\000T\000y\000p\000e\000s\000e\000t\000t\000i\000n\000g\000\040\000c\000a\000p\000t\000i\000o\000n\000s)
+endobj
+57 0 obj
+<< /S /GoTo /D 58 0 R >>
+endobj
+60 0 obj
+(\376\377\0003\000.\0002\000\040\000S\000e\000t\000t\000i\000n\000g\000\040\000o\000p\000t\000i\000o\000n\000s)
+endobj
+61 0 obj
+<< /S /GoTo /D 62 0 R >>
+endobj
+64 0 obj
+(\376\377\0003\000.\0003\000\040\000C\000o\000n\000t\000i\000n\000u\000e\000d\000\040\000f\000l\000o\000a\000t\000s)
+endobj
+65 0 obj
+<< /S /GoTo /D 66 0 R >>
+endobj
+68 0 obj
+(\376\377\0004\000\040\000O\000w\000n\000\040\000e\000n\000h\000a\000n\000c\000e\000m\000e\000n\000t\000s)
+endobj
+69 0 obj
+<< /S /GoTo /D 70 0 R >>
+endobj
+72 0 obj
+(\376\377\0004\000.\0001\000\040\000F\000u\000r\000t\000h\000e\000r\000\040\000e\000x\000a\000m\000p\000l\000e\000s)
+endobj
+73 0 obj
+<< /S /GoTo /D 74 0 R >>
+endobj
+76 0 obj
+(\376\377\0005\000\040\000S\000u\000p\000p\000o\000r\000t\000e\000d\000\040\000d\000o\000c\000u\000m\000e\000n\000t\000\040\000c\000l\000a\000s\000s\000e\000s)
+endobj
+77 0 obj
+<< /S /GoTo /D 78 0 R >>
+endobj
+80 0 obj
+(\376\377\0005\000.\0001\000\040\000S\000t\000a\000n\000d\000a\000r\000d\000\040\000L\000a\000T\000e\000X\000:\000\040\000a\000r\000t\000i\000c\000l\000e\000,\000\040\000r\000e\000p\000o\000r\000t\000,\000\040\000a\000n\000d\000\040\000b\000o\000o\000k)
+endobj
+81 0 obj
+<< /S /GoTo /D 82 0 R >>
+endobj
+84 0 obj
+(\376\377\0005\000.\0002\000\040\000A\000M\000S\000:\000\040\000a\000m\000s\000a\000r\000t\000,\000\040\000a\000m\000s\000p\000r\000o\000c\000,\000\040\000a\000n\000d\000\040\000a\000m\000s\000b\000o\000o\000k)
+endobj
+85 0 obj
+<< /S /GoTo /D 86 0 R >>
+endobj
+88 0 obj
+(\376\377\0005\000.\0003\000\040\000b\000e\000a\000m\000e\000r)
+endobj
+89 0 obj
+<< /S /GoTo /D 90 0 R >>
+endobj
+92 0 obj
+(\376\377\0005\000.\0004\000\040\000K\000O\000M\000A\000-\000S\000c\000r\000i\000p\000t\000:\000\040\000s\000c\000r\000a\000r\000t\000c\000l\000,\000\040\000s\000c\000r\000r\000e\000p\000r\000t\000,\000\040\000a\000n\000d\000\040\000s\000c\000r\000b\000o\000o\000k)
+endobj
+93 0 obj
+<< /S /GoTo /D 94 0 R >>
+endobj
+96 0 obj
+(\376\377\0005\000.\0005\000\040\000N\000T\000G\000:\000\040\000a\000r\000t\000i\000k\000e\000l\000,\000\040\000r\000a\000p\000p\000o\000r\000t\000,\000\040\000a\000n\000d\000\040\000b\000o\000e\000k)
+endobj
+97 0 obj
+<< /S /GoTo /D 98 0 R >>
+endobj
+100 0 obj
+(\376\377\0005\000.\0006\000\040\000S\000M\000F\000:\000\040\000s\000m\000f\000a\000r\000t\000\040\000a\000n\000d\000\040\000s\000m\000f\000b\000o\000o\000k)
+endobj
+101 0 obj
+<< /S /GoTo /D 102 0 R >>
+endobj
+104 0 obj
+(\376\377\0005\000.\0007\000\040\000t\000h\000e\000s\000i\000s)
+endobj
+105 0 obj
+<< /S /GoTo /D 106 0 R >>
+endobj
+108 0 obj
+(\376\377\0006\000\040\000S\000u\000p\000p\000o\000r\000t\000e\000d\000\040\000b\000a\000b\000e\000l\000\040\000p\000a\000c\000k\000a\000g\000e\000\040\000o\000p\000t\000i\000o\000n\000s)
+endobj
+109 0 obj
+<< /S /GoTo /D 110 0 R >>
+endobj
+112 0 obj
+(\376\377\0006\000.\0001\000\040\000f\000r\000e\000n\000c\000h\000\040\000b\000a\000b\000e\000l\000\040\000o\000p\000t\000i\000o\000n)
+endobj
+113 0 obj
+<< /S /GoTo /D 114 0 R >>
+endobj
+116 0 obj
+(\376\377\0007\000\040\000S\000u\000p\000p\000o\000r\000t\000e\000d\000\040\000p\000a\000c\000k\000a\000g\000e\000s)
+endobj
+117 0 obj
+<< /S /GoTo /D 118 0 R >>
+endobj
+120 0 obj
+(\376\377\0007\000.\0001\000\040\000a\000l\000g\000o\000r\000i\000t\000h\000m\000s)
+endobj
+121 0 obj
+<< /S /GoTo /D 122 0 R >>
+endobj
+124 0 obj
+(\376\377\0007\000.\0002\000\040\000f\000l\000o\000a\000t)
+endobj
+125 0 obj
+<< /S /GoTo /D 126 0 R >>
+endobj
+128 0 obj
+(\376\377\0007\000.\0003\000\040\000f\000l\000o\000a\000t\000f\000l\000t)
+endobj
+129 0 obj
+<< /S /GoTo /D 130 0 R >>
+endobj
+132 0 obj
+(\376\377\0007\000.\0004\000\040\000f\000l\000t\000p\000a\000g\000e)
+endobj
+133 0 obj
+<< /S /GoTo /D 134 0 R >>
+endobj
+136 0 obj
+(\376\377\0007\000.\0005\000\040\000f\000r\000e\000n\000c\000h\000l\000e\000\040\000a\000n\000d\000\040\000f\000r\000e\000n\000c\000h\000p\000r\000o\000\040\000p\000a\000c\000k\000a\000g\000e\000s)
+endobj
+137 0 obj
+<< /S /GoTo /D 138 0 R >>
+endobj
+140 0 obj
+(\376\377\0007\000.\0006\000\040\000h\000y\000p\000e\000r\000r\000e\000f)
+endobj
+141 0 obj
+<< /S /GoTo /D 142 0 R >>
+endobj
+144 0 obj
+(\376\377\0007\000.\0007\000\040\000h\000y\000p\000c\000a\000p)
+endobj
+145 0 obj
+<< /S /GoTo /D 146 0 R >>
+endobj
+148 0 obj
+(\376\377\0007\000.\0008\000\040\000l\000i\000s\000t\000i\000n\000g\000s)
+endobj
+149 0 obj
+<< /S /GoTo /D 150 0 R >>
+endobj
+152 0 obj
+(\376\377\0007\000.\0009\000\040\000l\000o\000n\000g\000t\000a\000b\000l\000e)
+endobj
+153 0 obj
+<< /S /GoTo /D 154 0 R >>
+endobj
+156 0 obj
+(\376\377\0007\000.\0001\0000\000\040\000p\000i\000c\000i\000n\000p\000a\000r)
+endobj
+157 0 obj
+<< /S /GoTo /D 158 0 R >>
+endobj
+160 0 obj
+(\376\377\0007\000.\0001\0001\000\040\000p\000i\000c\000i\000n\000s)
+endobj
+161 0 obj
+<< /S /GoTo /D 162 0 R >>
+endobj
+164 0 obj
+(\376\377\0007\000.\0001\0002\000\040\000r\000o\000t\000a\000t\000i\000n\000g)
+endobj
+165 0 obj
+<< /S /GoTo /D 166 0 R >>
+endobj
+168 0 obj
+(\376\377\0007\000.\0001\0003\000\040\000s\000e\000t\000s\000p\000a\000c\000e)
+endobj
+169 0 obj
+<< /S /GoTo /D 170 0 R >>
+endobj
+172 0 obj
+(\376\377\0007\000.\0001\0004\000\040\000s\000i\000d\000e\000c\000a\000p)
+endobj
+173 0 obj
+<< /S /GoTo /D 174 0 R >>
+endobj
+176 0 obj
+(\376\377\0007\000.\0001\0005\000\040\000s\000u\000b\000f\000i\000g\000u\000r\000e)
+endobj
+177 0 obj
+<< /S /GoTo /D 178 0 R >>
+endobj
+180 0 obj
+(\376\377\0007\000.\0001\0006\000\040\000s\000u\000p\000e\000r\000t\000a\000b\000u\000l\000a\000r\000\040\000a\000n\000d\000\040\000x\000t\000a\000b)
+endobj
+181 0 obj
+<< /S /GoTo /D 182 0 R >>
+endobj
+184 0 obj
+(\376\377\0007\000.\0001\0007\000\040\000t\000h\000r\000e\000e\000p\000a\000r\000t\000t\000a\000b\000l\000e)
+endobj
+185 0 obj
+<< /S /GoTo /D 186 0 R >>
+endobj
+188 0 obj
+(\376\377\0007\000.\0001\0008\000\040\000w\000r\000a\000p\000f\000i\000g)
+endobj
+189 0 obj
+<< /S /GoTo /D 190 0 R >>
+endobj
+192 0 obj
+(\376\377\0008\000\040\000F\000u\000r\000t\000h\000e\000r\000\040\000r\000e\000a\000d\000i\000n\000g)
+endobj
+193 0 obj
+<< /S /GoTo /D 194 0 R >>
+endobj
+196 0 obj
+(\376\377\0009\000\040\000T\000h\000a\000n\000k\000s)
+endobj
+197 0 obj
+<< /S /GoTo /D 198 0 R >>
+endobj
+200 0 obj
+(\376\377\000A\000\040\000A\000l\000p\000h\000a\000b\000e\000t\000i\000c\000a\000l\000\040\000R\000e\000f\000e\000r\000e\000n\000c\000e)
+endobj
+201 0 obj
+<< /S /GoTo /D 202 0 R >>
+endobj
+204 0 obj
+(\376\377\000A\000.\0001\000\040\000O\000p\000t\000i\000o\000n\000s)
+endobj
+205 0 obj
+<< /S /GoTo /D 206 0 R >>
+endobj
+208 0 obj
+(\376\377\000A\000.\0002\000\040\000C\000o\000m\000m\000a\000n\000d\000s)
+endobj
+209 0 obj
+<< /S /GoTo /D 210 0 R >>
+endobj
+212 0 obj
+(\376\377\000A\000.\0003\000\040\000W\000a\000r\000n\000i\000n\000g\000s)
+endobj
+213 0 obj
+<< /S /GoTo /D 214 0 R >>
+endobj
+216 0 obj
+(\376\377\000A\000.\0004\000\040\000E\000r\000r\000o\000r\000s)
+endobj
+217 0 obj
+<< /S /GoTo /D 218 0 R >>
+endobj
+220 0 obj
+(\376\377\000B\000\040\000V\000e\000r\000s\000i\000o\000n\000\040\000h\000i\000s\000t\000o\000r\000y)
+endobj
+221 0 obj
+<< /S /GoTo /D 222 0 R >>
+endobj
+224 0 obj
+(\376\377\000C\000\040\000C\000o\000m\000p\000a\000t\000i\000b\000i\000l\000i\000t\000y\000\040\000t\000o\000\040\000o\000l\000d\000e\000r\000\040\000v\000e\000r\000s\000i\000o\000n\000s)
+endobj
+225 0 obj
+<< /S /GoTo /D 226 0 R >>
+endobj
+228 0 obj
+(\376\377\000C\000.\0001\000\040\000c\000a\000p\000t\000i\000o\000n\000\040\000v\0001\000.\000x)
+endobj
+229 0 obj
+<< /S /GoTo /D 230 0 R >>
+endobj
+232 0 obj
+(\376\377\000C\000.\0002\000\040\000c\000a\000p\000t\000i\000o\000n\0002\000\040\000v\0002\000.\000x)
+endobj
+233 0 obj
+<< /S /GoTo /D 234 0 R >>
+endobj
+236 0 obj
+(\376\377\000C\000.\0003\000\040\000c\000a\000p\000t\000i\000o\000n\000\040\000v\0003\000.\0000)
+endobj
+237 0 obj
+<< /S /GoTo /D 238 0 R >>
+endobj
+240 0 obj
+(\376\377\000D\000\040\000C\000o\000m\000m\000a\000n\000d\000s\000\040\000f\000o\000r\000\040\000d\000o\000c\000u\000m\000e\000n\000t\000\040\000c\000l\000a\000s\000s\000\040\000a\000u\000t\000h\000o\000r\000s)
+endobj
+241 0 obj
+<< /S /GoTo /D 242 0 R >>
+endobj
+244 0 obj
+(\376\377\000E\000\040\000C\000o\000m\000m\000a\000n\000d\000s\000\040\000f\000o\000r\000\040\000b\000a\000b\000e\000l\000\040\000l\000a\000n\000g\000u\000a\000g\000e\000\040\000p\000a\000c\000k\000a\000g\000e\000\040\000a\000u\000t\000h\000o\000r\000s)
+endobj
+245 0 obj
+<< /S /GoTo /D 246 0 R >>
+endobj
+248 0 obj
+(\376\377\000R\000e\000f\000e\000r\000e\000n\000c\000e\000s)
+endobj
+254 0 obj
+<<
+/Length 2198
+/Filter /FlateDecode
+>>
+stream
+xÚÍXIÛÈ÷Ż)Cfu-\“'ñž$À̸™ÀöĦDQ-˘)R!)Û=ż>o#EŞiÀǜXġŞêĠ[·ġĉq£7˙¸Óßĝŝĝpw˙SžlLŞĴ‰£Íac­lm’$R6K6û͇ào—~hOĠŸUó¸ mĴƒÂŸ‡Şmzžµŝ~ÔÚµ~˜v•Í6ÒÁçŞk›SÙ ŭöÓÏp_ş1Fċqlñ>g­Š³M˘l”óeÈEv&óĦĠħŠm ]ĤŒÍonM”5_ĝ=ÊîPÖû9€žôԛ§Í8ú'(l´Y5:Qî
+Sy”20œû×÷÷ĠPû*ÚÓ½˙ZÖŭġ†{1‚ÜĽÚX§"¸/´ÉĠœV[{Żí½Ġ‹³WFÛMĤrñ
+ı…QĤ2#â½ÙġCç‹á @ˆëùÀċißDE.cǒlt{un!÷ƒ˜1pĦM3 oxÚLı8÷}ñäKpBb 6e‡èHlP0xĥ&ĝÓ7˘f`÷ I0Ğd•0
+6ò„è %Áìn<Ôv‹EĈIGmCÙàÀìĠ îÎmßWğŞ†ŠÄ†C+G˜(Vĥ¨XE Êm:xn/Żp!żñL%L.ŭĊ×ġ3›–d×"ĥX)KÔZa `ɃĦċï…äDÂzäeV%Iò]‘§uö2ò€³ä[×h&m‚7ÈUnÄbÓÀ mH7ÜÓ  |?°.Žƒ‘$g/\eíAŭÊÄÂ{âŜµèqPal4JŭѸH4„<RÇĜİ4ŸtDט$¨[żgAtĈéC§$ŽŬ3“ûĜ`ÍÊy¤´ËçVW%€Œğ—F†‹pĊ@ĵĊ×´vc"ċ˘D*˜3*†şÂPJĜğfèĥTÚ_Š…ÏsĈ&xàfce˜OüŽ™29(3bô˜ßwèżL˙š8ÊÖÊ@°ĴQéX@Ws*³X.ĤMäôHEd·PŞ-Óß
+=ŒüK3Ë'0£|9b3[$~˜ÍsJóšCŽueQVh[^Û/4†¸ĞŠ)ĦHóT™<F°b=fÙö/:ĉ%1ò:ÇžÏ°>†Q/_‰ƒĥüùNĥž}ç;>r°Œ‰HÎ5ù]yòŬ š:<ŜWcµ,›˘œr
+,ÍÂĦkO\Xi`.;Żii ŭżŻxZWO[£YD_/:ş,?‹u~â
+ İÎĉġ6Œó<ĝŭX %gǞ39,îJ_KÎĈ95D>W͏úS ĊĴ)ûžç\ïH
+ĵŠĥ)Ž²÷XrĈVo„Tzx-
+46äU\€İ ~éÚǎÓ=ÏÂ1j9€„ĞĜI²0oFżġ—nÏó÷÷˙ğAÀ$¸ñyZ ŭ=XeġßŬw¸GÌ ”tĠ;÷íŬïŒ0‚¸S)ĵœ ¤ x2§ğŸôfkO•ƒçĜÚy‚FE Ĉ^½y÷ĞüŸM7ħÊÓ4áżPħŠ³”ŝ+Z³öÇ4…½`:zĈEY‚ïµ,wsdÌŝ.ÉğÀ÷‹ĵÛsöBs9íĈRŸJÔ·˙7^ĞœI0ûĉ*ËÄ[fq
+ló?Ż-P
+endstream
+endobj
+253 0 obj
+<<
+/Type /Page
+/Contents 254 0 R
+/Resources 252 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 262 0 R
+/Annots [ 249 0 R 250 0 R 251 0 R ]
+>>
+endobj
+249 0 obj
+<<
+/Type /Annot
+/Border[0 0 0]/H/I/C[0 1 1]
+/Rect [169.933 613.277 473.195 629.217]
+/Subtype/Link/A<</Type/Action/S/URI/URI(https://gitlab.com/axelsommerfeldt/caption)>>
+>>
+endobj
+250 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[0 1 0]
+/Rect [206.463 185.298 212.938 193.53]
+/A << /S /GoTo /D 263 0 R >>
+>>
+endobj
+251 0 obj
+<<
+/Type /Annot
+/Border[0 0 0]/H/I/C[0 1 1]
+/Rect [143.731 155.038 490.53 164.382]
+/Subtype/Link/A<</Type/Action/S/URI/URI(https://gitlab.com/axelsommerfeldt/caption/-/commits/doc/caption)>>
+>>
+endobj
+252 0 obj
+<<
+/Font << /F96 255 0 R /F97 256 0 R /F101 257 0 R /F102 258 0 R /F104 259 0 R /F106 260 0 R /F95 261 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+303 0 obj
+<<
+/Length 1128
+/Filter /FlateDecode
+>>
+stream
+xÚíš[o›X€ßó+xİ>{î—uĞ&R·iµWZİí!ĜF1Ñn˙ŭp H[ÜH›Ĝ~1xà\ĝfΜ™ìlì\]`{ü}uñÛ%ÁÔ!1.ݳZ)GŠ*Ga‰5ÎêÖùìM“2LÊÂûşzA -vòÓœüye;1ÈH*Ğ>°³ Q!šÖÄ[ŒħûW%.a·ÜFEs–ùÁż ëžÛy9Ÿá7Ĉċ XÀ‘ÁށÚ>ee”&Ċ°3† ÁxtöFö&, çΛŝQġ Ĥ{éáĤyì—eġ0ƒ$Ċ.òġa¤’Š=é´Ĉö‰RKôŭ}QF_0Ĥ_)oĜğ‘òÔXêÙ,ٞuĥ µ×Ż0ô ó§ ›Ù„ı%|íçÑî&JĴ˙ò“Ûĉd}Ÿ—Û0o½Zîor?Û6Óiż¤•z>\*˙IÈl0‚Y–ßváĜó
+qĥğ_6›ŻlùŜEÙxY˙Ÿtx•Ċû!*Ĉ^SŸ­wïüM^[ĵŭxì”bg‡q5–ëÊÓĜŭ–Ùr&ÏĤÛC,€x˜Â´ĵ›4C6ܙM3ŜĤq ûŝ:Ġ„—¨ Ö%f&Ó¨ˆÀŸ$„Gİ55sa°.ĞXöħ=~ JNg˜Ù(Û¤˘Jŝ£ä>´q.¤j,ġǛ"òĝ1RòK~Ė+x[ĝ'i˜†ÉÖO‚0'R7Ê%3.ċ‡;ŝP½èç(a•,ŝëÇÙTÜÎù (óI6a•ıĵϲ4/Ûer›÷•>­ŜùE1ĈL1tçRs¸nE§Ûe [’ŸÛá?T]ÖíbŠ²Ş½„S0A‚kżénz„!M ŒÑŬ´Şnr8âp}Aċ´‘ż³r ‚žĝï×Ŝ‚ȋó2
+váĞf:yXħy5H™oÒônäF´~ĉAZµ|Çe.4F4B-VĠJ%ÒĈ@ğŽDÔTĈ„@üş–Œ1NOœP”D˜ħĥזl\ĝ˜"ËÓ`ÄSܙèSİŠŻ/F  
+endstream
+endobj
+302 0 obj
+<<
+/Type /Page
+/Contents 303 0 R
+/Resources 301 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 262 0 R
+/Annots [ 264 0 R 265 0 R 266 0 R 267 0 R 268 0 R 269 0 R 270 0 R 271 0 R 272 0 R 273 0 R 274 0 R 275 0 R 276 0 R 277 0 R 278 0 R 279 0 R 280 0 R 281 0 R 282 0 R 283 0 R 284 0 R 285 0 R 286 0 R 287 0 R 288 0 R 289 0 R 290 0 R 291 0 R 292 0 R 293 0 R 294 0 R 295 0 R 296 0 R 297 0 R ]
+>>
+endobj
+264 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [143.731 677.85 240.378 688.734]
+/A << /S /GoTo /D 6 0 R >>
+>>
+endobj
+265 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [143.731 652.943 194.44 663.827]
+/A << /S /GoTo /D 10 0 R >>
+>>
+endobj
+266 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [158.675 637.87 231.701 648.814]
+/A << /S /GoTo /D 14 0 R >>
+>>
+endobj
+267 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [158.675 624.943 235.725 633.87]
+/A << /S /GoTo /D 18 0 R >>
+>>
+endobj
+268 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [158.675 609.92 209.564 618.926]
+/A << /S /GoTo /D 22 0 R >>
+>>
+endobj
+269 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [158.675 593.038 341.219 603.982]
+/A << /S /GoTo /D 26 0 R >>
+>>
+endobj
+270 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [158.675 578.094 211.925 589.038]
+/A << /S /GoTo /D 30 0 R >>
+>>
+endobj
+271 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [158.675 563.15 209.713 574.094]
+/A << /S /GoTo /D 34 0 R >>
+>>
+endobj
+272 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [158.675 550.224 206.943 559.15]
+/A << /S /GoTo /D 38 0 R >>
+>>
+endobj
+273 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [158.675 535.28 215.232 544.206]
+/A << /S /GoTo /D 42 0 R >>
+>>
+endobj
+274 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [158.675 518.318 211.118 529.262]
+/A << /S /GoTo /D 46 0 R >>
+>>
+endobj
+275 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [143.731 495.384 209.374 504.425]
+/A << /S /GoTo /D 50 0 R >>
+>>
+endobj
+276 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [158.675 478.468 269.508 489.411]
+/A << /S /GoTo /D 54 0 R >>
+>>
+endobj
+277 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [158.675 463.524 247.631 474.468]
+/A << /S /GoTo /D 58 0 R >>
+>>
+endobj
+278 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [158.675 450.597 253.16 459.524]
+/A << /S /GoTo /D 62 0 R >>
+>>
+endobj
+279 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [143.731 425.646 243.964 434.687]
+/A << /S /GoTo /D 66 0 R >>
+>>
+endobj
+280 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [158.675 408.729 256.866 419.673]
+/A << /S /GoTo /D 70 0 R >>
+>>
+endobj
+281 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [143.731 383.952 280.776 394.836]
+/A << /S /GoTo /D 74 0 R >>
+>>
+endobj
+282 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [158.675 368.794 349.573 379.822]
+/A << /S /GoTo /D 78 0 R >>
+>>
+endobj
+283 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [158.675 353.935 339 364.892]
+/A << /S /GoTo /D 82 0 R >>
+>>
+endobj
+284 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [158.675 341.008 216.886 349.935]
+/A << /S /GoTo /D 86 0 R >>
+>>
+endobj
+285 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [158.675 324.047 367.132 334.991]
+/A << /S /GoTo /D 90 0 R >>
+>>
+endobj
+286 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [158.675 309.103 313.633 320.047]
+/A << /S /GoTo /D 94 0 R >>
+>>
+endobj
+287 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [158.675 296.176 292.353 305.103]
+/A << /S /GoTo /D 98 0 R >>
+>>
+endobj
+288 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [158.675 281.232 210.261 290.159]
+/A << /S /GoTo /D 102 0 R >>
+>>
+endobj
+289 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [143.731 254.438 302.106 265.322]
+/A << /S /GoTo /D 106 0 R >>
+>>
+endobj
+290 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [158.675 239.364 265.035 250.308]
+/A << /S /GoTo /D 110 0 R >>
+>>
+endobj
+291 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [143.731 214.587 246.744 225.471]
+/A << /S /GoTo /D 114 0 R >>
+>>
+endobj
+292 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [158.675 199.514 230.186 210.458]
+/A << /S /GoTo /D 118 0 R >>
+>>
+endobj
+293 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [158.675 186.587 205.28 195.514]
+/A << /S /GoTo /D 122 0 R >>
+>>
+endobj
+294 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [158.675 171.643 213.589 180.57]
+/A << /S /GoTo /D 126 0 R >>
+>>
+endobj
+295 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [158.675 154.682 214.685 165.626]
+/A << /S /GoTo /D 130 0 R >>
+>>
+endobj
+296 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [158.675 139.738 317.299 150.682]
+/A << /S /GoTo /D 134 0 R >>
+>>
+endobj
+297 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [158.675 124.794 221.26 135.738]
+/A << /S /GoTo /D 138 0 R >>
+>>
+endobj
+2 0 obj
+[302 0 R /XYZ 144.727 716.092 null]
+endobj
+301 0 obj
+<<
+/Font << /F102 258 0 R /F96 255 0 R /F97 256 0 R /F104 259 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+329 0 obj
+<<
+/Length 825
+/Filter /FlateDecode
+>>
+stream
+xÚí˜Ms›0†ïùĊEß½9iœ™^:Óñ´‡´Ù&6 –ÓäßWĥ„Ç6$ħ“Ŝà‚@†eŭĴ´ï.(ZD(ş½@aÄzù“·W“‹Ëħ‘†ZMî#Ì5G ˆ‰Ž&óèH(3ŽÀ2ĉàš™*ŝ3ùĥ3Ŭ%BH
++ÛY²RD†•ĝ>KċYŝ­MµŬá-İ×|Hž§°½cDö4 âF$<Mğħ6^×v™†ŭ^ÇXÔÌ;
+-"œQÀèv;ž[óқ×ÁüdiŠ‡V]L´”âtc£8‘.·òjiĤİÍf&÷ŝŝHïSïsÑ_ELĈ^yÉñg”ÀhQŽ Ğî1!
+|ŻlVĥë{ކĈiğ$Ùİ۝6dI {]>>:™i·Nšġ&?3wŽ 0Ċʉv]t}”bšô|‘Š³ı²ÀġĤËş½ûÑŬïóĠŸÒëŻâDQ
+~ĈÎ&Hë•Kğ>×/³•-ë—ĥ.q,?UJ½”¸ĴS›M³<³/Ŝ-ŭXĉóFŸœÁ‡Vħ–ŝ uıöêâ$ÄuŠv÷?Ÿĥò~9&tïyĦ PęŜ>ùĊ߁Ñŝ+”˘ıáùÀÛc_($T7·öl‘òw•*QÌħĈÇħ"‡ħ"!X¤#X’B!Ĝ{Áâú¤h)H¸êk°ĝƒE;7=ucé×ö:vSŬğ ˆsÓĵ*qĜ~|Ŭċa_ŭm#tʐ|çċlŭ˜Ö_Ír³
+w™µ]v¨1”kÀĠ‰Bpuĉ Ĥ×}FnŠĊÚ,RU™Ùîâ5oˆôf"– RĉÀ`I ċĦ4ĤÜL.ŝíÓó^
+endstream
+endobj
+328 0 obj
+<<
+/Type /Page
+/Contents 329 0 R
+/Resources 327 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 262 0 R
+/Annots [ 298 0 R 299 0 R 300 0 R 304 0 R 305 0 R 306 0 R 307 0 R 308 0 R 309 0 R 310 0 R 311 0 R 312 0 R 313 0 R 314 0 R 315 0 R 316 0 R 317 0 R 318 0 R 319 0 R 320 0 R 321 0 R 322 0 R 323 0 R 324 0 R 325 0 R 326 0 R ]
+>>
+endobj
+298 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [158.675 702.976 216.289 713.92]
+/A << /S /GoTo /D 142 0 R >>
+>>
+endobj
+299 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [158.675 688.032 216.358 698.976]
+/A << /S /GoTo /D 146 0 R >>
+>>
+endobj
+300 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [158.675 673.088 224.647 684.032]
+/A << /S /GoTo /D 150 0 R >>
+>>
+endobj
+304 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [158.675 658.144 220.214 669.088]
+/A << /S /GoTo /D 154 0 R >>
+>>
+endobj
+305 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [158.675 643.2 211.367 654.144]
+/A << /S /GoTo /D 158 0 R >>
+>>
+endobj
+306 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [158.675 628.256 218.56 639.2]
+/A << /S /GoTo /D 162 0 R >>
+>>
+endobj
+307 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [158.675 613.312 220.762 624.256]
+/A << /S /GoTo /D 166 0 R >>
+>>
+endobj
+308 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [158.675 598.368 217.444 609.312]
+/A << /S /GoTo /D 170 0 R >>
+>>
+endobj
+309 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [158.675 583.424 224.647 594.368]
+/A << /S /GoTo /D 174 0 R >>
+>>
+endobj
+310 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [158.675 568.48 273.135 579.424]
+/A << /S /GoTo /D 178 0 R >>
+>>
+endobj
+311 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [158.675 553.536 242.34 564.48]
+/A << /S /GoTo /D 182 0 R >>
+>>
+endobj
+312 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [158.675 538.592 218.002 549.536]
+/A << /S /GoTo /D 186 0 R >>
+>>
+endobj
+313 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [143.731 513.815 229.389 524.699]
+/A << /S /GoTo /D 190 0 R >>
+>>
+endobj
+314 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [143.731 490.796 192.787 499.793]
+/A << /S /GoTo /D 194 0 R >>
+>>
+endobj
+315 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [143.731 464.002 259.815 474.886]
+/A << /S /GoTo /D 198 0 R >>
+>>
+endobj
+316 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [158.675 448.928 219.118 459.872]
+/A << /S /GoTo /D 202 0 R >>
+>>
+endobj
+317 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [158.675 436.002 232.956 444.928]
+/A << /S /GoTo /D 206 0 R >>
+>>
+endobj
+318 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [158.675 419.041 225.504 429.984]
+/A << /S /GoTo /D 210 0 R >>
+>>
+endobj
+319 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [158.675 406.034 212.463 415.04]
+/A << /S /GoTo /D 214 0 R >>
+>>
+endobj
+320 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [143.731 379.319 225.254 390.204]
+/A << /S /GoTo /D 218 0 R >>
+>>
+endobj
+321 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [143.731 354.413 292.571 365.297]
+/A << /S /GoTo /D 222 0 R >>
+>>
+endobj
+322 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [158.675 339.339 236.562 350.283]
+/A << /S /GoTo /D 226 0 R >>
+>>
+endobj
+323 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [158.675 324.395 241.544 335.339]
+/A << /S /GoTo /D 230 0 R >>
+>>
+endobj
+324 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [158.675 309.451 237.09 320.395]
+/A << /S /GoTo /D 234 0 R >>
+>>
+endobj
+325 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [143.731 286.517 326.454 295.558]
+/A << /S /GoTo /D 238 0 R >>
+>>
+endobj
+326 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [143.731 259.768 363.276 270.652]
+/A << /S /GoTo /D 242 0 R >>
+>>
+endobj
+327 0 obj
+<<
+/Font << /F96 255 0 R /F102 258 0 R /F23 330 0 R /F106 260 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+335 0 obj
+<<
+/Length 1336
+/Filter /FlateDecode
+>>
+stream
+xÚ½WKo6çWèVˆ>DQj‘Kfħ=vÓS6ZĤm5²èêÑ4öżw(’²3ħ[,zҐ΋3ß q´pôé
+ğïÏ÷W7wӈ$ˆ%)î7@&HP œ"Bóè~=Ädħ$ĝ÷ĥĴ·‹%ċ8îvek݃,žäV-ï½ıËÓ(GyJS# GÀ€(çVÊçşUMgĝF üטA&' @-)E9IìñŻ„%}Ğœş§OLN ‚# pàßY‚§&1”ÜsèCWêş H˘9ij•^yOk!Yß(ĤôÓŠYš ᵞıÀ”u§!Âı‰Ş²ÄĦQrżŞÜJoì÷E÷Öşè÷Şîá0K¤[ b}ĉ´]­T÷ĴTò’ĉ)xôÓ\ÁxöÔ;ΐÈsÏĵ \2ŽÇ D‚ ÜgFQÉĥ d 1¸>'PÖëH"P†ÙÔĕږġĞ7ô[@pÎQšŒ™ĦYߛħ„y1,
+]wìb§”ÇÏva9Èé‰ç²rì•ÖOF;x›@ ùÜëŞ|ZĞŸl)´E×ßĞ:ö²Ü|è7àÁmğ—Uu]ɕކġj3èò537ÌpĴ[UŻeğ;f·5ô\Žç\ÌÍ{6žêZ[jû޳tYÛï1ˆfeB7‚”‡G´
+.ÇIÔµš‹ıJsë0ÂÑà36÷òÄÙv· <֍ċ–N£ì”Û)v²Ŝ:YĤ”†ïÔT£Éċee‡” ·Ä˘Bĝ$sœ –gžÏİĊÖFŝ*ת}VĦ÷ûYE š“áhÂdZ>şŞë—%Ĉ(£ô4ËĤ’B(œ1”féċ(ücĤK†îċ 2Y
+5N˙ „¸?gXzY{`ùYsFI!"2ˆ@JPÂ!óÑ˙#&LJ=Ôĵ:\
+~ûfއ5÷•†ïġg.÷Ħq5ŝìeu#e3­6ˆ!ŸğœÇĤHSoµ6°”Âqmwžjß9†ŬìBI“cDIŝQÙq' Ç,ÚI§_ÖVÚUtv_×^ż²Eß40p׋Ö4şŜğMs¤zY¤Üg()›÷‹/ĈIAârcż-1 DÁŞsl#  Žu
+—vâŸĜĴjĴ `k{|ƒZFçñjÔ^úŽÓk°7×h´â8ڙ NQ΄Ÿ8ŻkĠɲRkżj‹Ĥ´ĊÇĜÀĜH̓?gÛÏñ„€úcżj•-&3wâ¨ÙF–ĝíÓUôàçġ£ ÑY遀ß9n§´£Z/>2ĤáÛBĉƒùTò£!ëù1‰„œ²O&5ó^‘ÌJf~ıżú Ís˙
+endstream
+endobj
+334 0 obj
+<<
+/Type /Page
+/Contents 335 0 R
+/Resources 333 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 262 0 R
+/Annots [ 331 0 R 332 0 R ]
+>>
+endobj
+331 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [335.798 212.681 376.642 222.73]
+/A << /S /GoTo /D 58 0 R >>
+>>
+endobj
+332 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [379.921 212.681 435.469 222.73]
+/A << /S /GoTo /D 58 0 R >>
+>>
+endobj
+6 0 obj
+[334 0 R /XYZ 144.727 716.092 null]
+endobj
+333 0 obj
+<<
+/Font << /F102 258 0 R /F96 255 0 R /F101 257 0 R /F97 256 0 R /F106 260 0 R /F104 259 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+340 0 obj
+<<
+/Length 1892
+/Filter /FlateDecode
+>>
+stream
+xÚÍXKsÛF çWèjĈÜîƒ\’éôà6q§=4Ĉ3NҙÒÊdC‘r×˙Àbù’¨Ĝ}z1AÀîb?|€ÌW÷+úŝ÷Ïoo_|u#¸\‰ˆİHËĠíĈ%2Y%\3!³Ġívġ>ëPp΃·[6u·ŝŭöGï(XÇΑŻBİYœJï„wşYË8hÚ}nmYߓoĤWË´Ô½§`œ+òĵ^‡2KƒœËûckè­iéióğÊĞ6ıÛ $Á>/ëêÑ€-–íĵçÎ{­ñž‡ĵµŬĞuq êópiPċwĤşZ‡ŠgÁCQn
+Rwù£Zîú$ˆU
+'Ñž$ŒRĤE'r'ÙıS³pdoRŝÈÚ%£ ıûl,ÊqërzŭxSbR^zÖko×)05ŝC^oéËC‘[RĠÇŭiIĤ qw]³)skĥ¤(mᗵW$P~@ó†ÖĴEüiñhxîšÎQÚÎT;tO˘!y:£EuԘ•Ê]hsztEÓZ·ĤÛ´eż(Ü ÂîĠšÚv>4Q§~‹hOĵ:ל[—"Ŭßâtğ>íŜθ”ŝĵ|<˘{ÛµÍŝÄÀa„ !#&“”BŜ‚‰GÇôÒEÂ4™ǸY‘z¤,
+z <ĦäϊñâY`V)KhjWÔ힗Ÿê-rì-M|jR=ı)ÔzFBŝËâ kHíJl}‘ƒĉ#.ŭ’´GˆÛ΢&µĥwĞ€NHíšRK\ Ê~yöE¤„ŝXĦHYœEäÊ{~&Ŝ>8dŠ™ĝ"!^ë ž[ƒÇ¨İuÉàĜ Ċ ÍÀĠdIÖG˙ TôÚl*¨“ï(ı7—¸WȘĊrdƒÉ¤áKħ˜§óL}à1g\_‡N
+¨ÄXQ<èà?ç%ú Ħˆ•ÂöŞYß<np œ]•N‚ğs­´)ĠH3KŒt*„î‹zèÓ'Ğ*Ċâh ]ĵ™%òLW^¨<İX&ČDÜŝàöh׎ğQÍ˙x ħWùĤÒĉdZş6èxÑ9XĝİĉˆÄùX2²|=ûġ%18ÄZúĵÄÉéO¨³mÏġƒ#ĥûm-pÎ:úİ˘ …¤ŝ7ĠżĉÁaò:;×l¨‚Jô“sò`‘ï›cmÁ˜Ëuòüñ˜ùñX& ˙•0ÛħŝĤóè¤iœî3ÁyCpż³ÂâÍŝK\Î]‘'4žEA„4ž 4.3ċi?Nh<D¨&wĤÇ/ôŻ‡¨˙ƒêiuC¨kŻBG³3‡Y_$Ñ"kqN‘œÑ¸ƒˆäĵgrPŒN˜Ü{&‡·žÉ5ï|‹ “ğuw/0#1ı”ú“—É%ŝh畎ÉQê™eÊ(
+“£SÏäĝĊVîéMûˆƒïÀäÎwĈŬKÜÄäOĦ6ìo8R$çs̵!˙§¸…zŠ˙Ÿ‡LŞĜç1âV%ò ·:‰§¸E[ÇñßĈ(sŞd
+ZüîA‹"eW~züˆ"ċAEÑ˘Í
+endstream
+endobj
+339 0 obj
+<<
+/Type /Page
+/Contents 340 0 R
+/Resources 338 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 262 0 R
+/Annots [ 336 0 R 337 0 R ]
+>>
+endobj
+336 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [248.581 459.723 282.699 469.444]
+/A << /S /GoTo /D 66 0 R >>
+>>
+endobj
+337 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [285.979 459.723 357.944 469.444]
+/A << /S /GoTo /D 66 0 R >>
+>>
+endobj
+10 0 obj
+[339 0 R /XYZ 144.727 716.092 null]
+endobj
+14 0 obj
+[339 0 R /XYZ 144.727 692.898 null]
+endobj
+338 0 obj
+<<
+/Font << /F102 258 0 R /F96 255 0 R /F101 257 0 R /F106 260 0 R /F97 256 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+346 0 obj
+<<
+/Length 2049
+/Filter /FlateDecode
+>>
+stream
+xÚµYK6÷Żmd Íˆ")J äŬdÉîNÁb&@d™ĥ…‘%G’§żU,RĤÓnl.mŠzħêĞ*vìƒ(ĝÇ]ä~˙öx÷ĠÛ, 2–%q<î.%Óħt”0gÁ6xŝ²’QXö‡Ġ:VQĜ šS_6ġê×ÇïżzË#¤@%‘He­S<ö|•oLµkÚcŜÛŝŝ—ΏRdŠIë8f—ËD@p=9˘9ӂ{Ž/ĠT7ÁÒDÍd"=ˆ(ëüh–¨ İálévL‰Ży’2ġ\èKs^­E¤ÂîdŠrwÁšUĴÂ'ZħĉÄÙ"'{ÚY'Î?•UE“Ž\NĤ3=[­áÁ´n!o­Q#O+B·Ĝġy½ÍÛ-}M¸IÇ ” ל³ tµò“iş‡Ù­}v[0 ·dY¤é\Ӗû²ÎĞĞs3‹é„i{›>ZŻŠô(~ĝ[‚!™G·Ó™>ò24Şoĥn÷Ċíö ĥMq>šÚ+Şĵëî—t?wçĵŞ.ŜéˎFG“×ŬU$XŻħ#0ñġÚù¸1-?D*ŞÊ+…fŒ›Iôe0Vİ·IWO•Yp6ĦÀ•‡ŞœY Ö1ÄQ,s>ĝsŬ—ş
+¸ƒ bħ˜zí‡v1Ó*ó$‘jvĝ+­žNI ,ь%rG§ š–ˆA“S^|Ì÷†8É‘‡óœôħŠ'´cîöpWpċÖ
+1ĉÜ]gB´ۚ=pú7 ŭ> ߕu×$Ċ²i´dq˙‰iéQ*ѳ¤ ­À·“ÌŽóñ†öğÀÂèlHĦ£Uò!˜˜ˆNjÍ"Èİżz+EŜJ÷‡ğfÉĠ’lzİSpfžÑuràš%âîE¤´â†2ìLeŠžĤí ҍ¤š Ĝ%,QžëÊt- `05n?N³°8äġŜVlÄŻ”e#Ĉı£âc!Ŝ-¸Ìĉâu3&‰
+œ­oâ—sTö,.­9ÌĊŽ‹9žúË­°GX´Â r9XDaŬN␨é’kÄùËÄQ[ıûSt=Ë8šÏPTŬĤ•³ùĤ͋żVİ˘j:³ġĞRr²we½ŻÌ˜
+€pŒ=2·Ĥî^aiúœ1ˍŻôš²öQBħÎtŻ
+ĈĜËġùéİF4¤ÄĦ+Žè£Èín%Ĉ‰­Á*¤FŻÀÏ3zÁb·$ñ!çàB~k
++é?r„ÇHS{~ĥ7şÔu/
+2‡ğ3Ÿt)ĝTċe}?MÊ4Ġ™Ó׿Ÿóíb2%ê.}_Ž­@7 <÷5”¤WnS›‡çÌ:aĤ]ĞĝĥÜ#A!*­$„sż9”½]‚š„&7&/żĥ+!Ĝ€éSY¤QwlšŝPƒŭC›žaÊâˆġ ŠĤ.nûÁT£ĥĉ7erä›UŒċĊ6ŸT
+endstream
+endobj
+345 0 obj
+<<
+/Type /Page
+/Contents 346 0 R
+/Resources 344 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 262 0 R
+/Annots [ 341 0 R 342 0 R 343 0 R ]
+>>
+endobj
+341 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [319.913 433.554 354.032 443.444]
+/A << /S /GoTo /D 66 0 R >>
+>>
+endobj
+342 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [357.311 433.554 429.277 443.444]
+/A << /S /GoTo /D 66 0 R >>
+>>
+endobj
+343 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [335.749 220.067 341.926 232.86]
+/A << /S /GoTo /D 347 0 R >>
+>>
+endobj
+347 0 obj
+[345 0 R /XYZ 162.66 129.79 null]
+endobj
+344 0 obj
+<<
+/Font << /F96 255 0 R /F101 257 0 R /F97 256 0 R /F106 260 0 R /F23 330 0 R /F104 259 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+354 0 obj
+<<
+/Length 1775
+/Filter /FlateDecode
+>>
+stream
+xÚíXKÛ6ïŻ­23|S CI˘è+ äÍĥéµ°²äJr·ŝ÷!)ÛòÚğÙ¤E{èa×ä 9œ}ó iv›Ñìû+zòûÍġĠË·Œ²ÌĞıΗS’h›Ş 6ğ^dòß·n1ùxŭ~ßË·Ví1šĈV_ŻüdÊÍçnӗM'•›ù*]½ˆƒŜO˜Ê˙ììĴ҂Yùk]ïÓòÙ.íG]èma…”¸aBjŸhË-)ŠbXHN K
+ʈħSDâžÚßWeíŸéÁĊÁ%‚óÁ%H.AÚÁ%HŽ.ÁÑÌGŝ‘KyÉ.NƒV‘Ñzwy7TÑsÒ.Fż3cŒXö İbÁkٔkF˜eà\Ħ#˙—ÊğÔPTĉuӇ‘Èû•ë#­_•]¤%cš62O ĜI÷FóĤ½‹äû²_EşCż ip(ŞC“é+-›víz(yœàÉ-9ç‰Vv0/n{½rġíWhEŒ’Çxż ž´kĥ_ĦÖ¨Ħä&żġ}d¸:|Û˘ĊHZûs·>:“qN$c#úvW‚"1ĥóUŠĴf=+kwˆf™~ƒ7ş'@À9´Ż[=ÒÌE9N¤q‚ƒ¤q!£Ypé@Ŝ ûŻŻ§¨¸™SÀ˙ĵ·­~HH4cY‹úâà·¤´!րÉh+š(ğ˙ş?ù W
+J
+0èÙZœİĵ`DK´¨ RÑ!ÓéÓ­$Bê/2D(ĞÈt[êÛç™~RO,QF-ß'ÉËQȤ„B4”–”< !Ÿƒ?ß×£jÚnˆÉzc C)Ż‡ÛvċŬNިT„ky\óóʵŝÛĉ?†
+£`0¤Â3uà/0U‡€İùŬëöS¨5P¨Ĝ j!œŠàoAthŽ|ž`,İJ0ĈÑĈĈèc$GKŞG0F:ûai‚qX›`lŒB‡“ĈÈÁ8°äBËxFÙS,kiŽħ,´°,4?Â22"–‘>Ĉ2òXF~Â22âĠhGXÖ²HXFĈ˙X~˗:ï‡İ֜€ÖˆÜĈŸÎ5\ˆ¤Ŝç\ ĤœkŽs0CÎ5rÈıĉ$皔s͐sÍ!çšCÎEQ_'RÈıĉ˙œûĊéig1ôÜÊ8ßO$Í£cñifxÄiö÷ëî*§†&ÌĊôŝÏ>üÓfœğŠP)ŸşžÁ"V<¸žħg…#6܂g’BU44§—ŭ}›ĥœpìJˆn­.@| ïYQn׈’3"ĜŜƒċı&) G0ĝVœX–Ô¤bjĊ›ĤŸ—Ë]œĴšä<œ„ˆƒ““>‹,=/iŸ—żÛĝÎ÷!…SLmb¸aÇ'™t|QċÚĊc']~™yġèŭGbÜûúġĤß}éC䓏ŽÛÍĤ…DèÏyEIv%v˙´Šé+×ôPĤyù9Ż?—ÚŭżWïeSU£ŸtOT3ôŝµYAkuWA[µ/DV¸A`ĉïÑ _A2ĠĊô™ /,ÑZ<uw†fŻ`@ş†ôġ6Ĥ™3—g¸äŭÄċÙĜëö,ŝĉÛóċbGáI
+ìûSI7£oŻŝÈqS!
+endstream
+endobj
+353 0 obj
+<<
+/Type /Page
+/Contents 354 0 R
+/Resources 352 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 355 0 R
+/Annots [ 348 0 R 349 0 R 350 0 R 351 0 R ]
+>>
+endobj
+348 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [307.958 583.989 342.077 593.711]
+/A << /S /GoTo /D 66 0 R >>
+>>
+endobj
+349 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [345.356 583.989 417.322 593.711]
+/A << /S /GoTo /D 66 0 R >>
+>>
+endobj
+350 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [313.935 175.499 348.054 185.22]
+/A << /S /GoTo /D 66 0 R >>
+>>
+endobj
+351 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [351.334 175.499 423.299 185.22]
+/A << /S /GoTo /D 66 0 R >>
+>>
+endobj
+352 0 obj
+<<
+/Font << /F101 257 0 R /F96 255 0 R /F106 260 0 R /F97 256 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+361 0 obj
+<<
+/Length 1682
+/Filter /FlateDecode
+>>
+stream
+xÚÍXKÛ6çWèVˆ’’Hi‹’&)K‹tĥHzÚ´ĴF–QÎÖ˙3|èá•7ği›&‡˜âcĝÍǏ3AàÇ'Ôŭĵ~òì £<`ŒdIƒë]Àâ˜H.Ia< ·Áû'|2Jéêíš%Ğ£îË”òMŜ—M½ŝúí³7™2’ . BΈnù ½£LĴòíĥ4+à+Yġíí÷Ê66y;Žîšî÷vàÔŬŒĉXmíx^i·^·jSîNn ‹†Ñ)g„ó`8“}ÄêÏÏ:“R’Ĥ‘_üŭ:ŒEş*´Rû YÂ’0f‚Dİô‹Ì&ğÒnñ|iA¸AhÂ.2~!2.ó„nË~o[†2l4­=Ş˙µ˜Ĉ-4ĦrN2߃KNqED¤Âğħ_"7"İHfŽNĜ4 ëü lKx-Xa`{<6‚3€˘Œ“zgŽüf Ĝ8Ú 7ıÛy³oíİŞ}cwFâİŞfÍ ¸.fdž“ˆ­ĥŽIFċŒC8¤ù™'Rɸ÷äzÒĠİUZġú Ë MüÈŬhîxÄ+QÙv›wyÑċížÜ‹7t‡ĉô°6ŞîU>ñë|¤W•yœaż-+ġĈ›mĠö‹WıîA²‡e–]ÀżBâ\Ż0 ŝĠ˙›ŠİĞğ²{ŒŻ?ĠĠé /^Âî²_á€ÏBmğ²Ĝ÷_Wh‡OçŝçC'ĉš™‰Jí7‡ĵ[³tU”ġĝĝÎĝĝîK|„ĉ|Œyf|ăĝa}Äy7nĝÌG³´ħSÖG3{ñ)tÈĉ66œÒyÎyyÄ™-ŒS0W”ïsMs8äġvÌ|“ Q9CĈĝÀ˘ĝŒ£ğÔĉ§ÜNÎxlÓjdR %cÂ
+endstream
+endobj
+360 0 obj
+<<
+/Type /Page
+/Contents 361 0 R
+/Resources 359 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 355 0 R
+/Annots [ 356 0 R 357 0 R 358 0 R ]
+>>
+endobj
+356 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [315.257 451.17 321.434 463.964]
+/A << /S /GoTo /D 362 0 R >>
+>>
+endobj
+357 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [313.935 399.93 348.054 410.119]
+/A << /S /GoTo /D 66 0 R >>
+>>
+endobj
+358 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [351.334 399.93 423.299 410.119]
+/A << /S /GoTo /D 66 0 R >>
+>>
+endobj
+18 0 obj
+[360 0 R /XYZ 144.727 716.092 null]
+endobj
+359 0 obj
+<<
+/Font << /F102 258 0 R /F96 255 0 R /F106 260 0 R /F101 257 0 R /F97 256 0 R /F104 259 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+365 0 obj
+<<
+/Length 2022
+/Filter /FlateDecode
+>>
+stream
+xÚĠY[ĥ~Ÿ_Ħ§@j–I$ÈC‚î‚mĤEŠ$›ĥĠ•İ$w2-úß{HQӞM(Ú'Q$ußı˘É1ĦÉo(>ż~|ĝġ]$šè‚É!aYF$—‰¤a\'ûä‡ôñd6[‘ei?”ÍìöŝíÛÍOß¸ï%’ û}HA³„)ü·_…MAŜN›íĤ$#Ĵo9á÷óïq^ÁÄlú{Ïßî.gÓ ŝmW—}ozû’§?ҜzĈ ¤QÀıpâ)Id.AwG§ì6یĤCµĞMDLž.Ù¸ùW1z`¤<wtĉıEŠ1j‚Hİ&j[Q¨Ì# {uòİm?Fè1M2ĦÇM 0óv(/C{.A§²_Ñ4`$Óy˔#?ĉùe–ÖVäa4°ìĞĉX›şjÌîdvżŒ°×’PŜbŒh0ûlW>UÛlĥ<§iuÀçàŸ?RʇçpOÛ? ŭĜ²}g9˜:֓´LÖHİ™çŭĦ:^:¤ÀÄ;P–Q
+îz.wË£*ÛW¸,O‡SĠûÙ's*7œĤŻ,¨Üf?n29´~é/èkxݎ ,j¸ċŻ—~¨Ĵvċ(hO–tÖvGg‡<a’p–{XȜä‚<HĦ0öŞ{–{İìĤ p0´ż
+’İx_DIR’çbÜdQ+8ɧ0PŸŝ²;ùÑì ħI Kż¸<
+Ɋ Ïa¤²4˙˘PÜôbñ)^÷ĵX‘*>4Lż­ħyçĦ+ñÎY—Î!˙î“@ I^hvÖ·°ĊÄoÚ Jß$/ŸZ+{H|ÑĊ`Ŭ@%k/ġË£m°P~´Kĉn­Dın–Êì3Kċ¨·­”…§˙— sͧĴĤŞ“sÇÁ+:nRg0˜qʳ<n gqizġ³—›qK)”žMCw1ñVL³ğuo\ÔE˘V-Ä42˘-Ú0[.ÙA˧!°Y4h•omÎù!h ܖAá{qlž “àŠP¨"`öĉ`\^j„ŜXû
+ÑŬâŭß^#Ž?ìq:Ït²;?üMö°ĝM]VɋÛz†­Œd…m•êäğ‡?„ż9
+où췈`µ[Ú_J‹9ˆıH
+#V óĞ\i98"9ôwÓ½bçŽ$Ç£ÙsÈ eüê>גİ>aô„3{3@·5ÊQŝÙ]šíP-`\ÏouíŞż„Áı|}şÒôŜìÚ§Ĥß1“mÏŞrû?Fĥŝ!37¨²mò?dÀî¨FähĠ÷8Ż¤ûÇ3N‡;¨ip+ĉaqù;`şĜlç? ú›İ%$k{}ŬĠÂڍÜèïVEÓÁÜ6‘î²ÎI×ĝŭ7U ­Ş
+endstream
+endobj
+364 0 obj
+<<
+/Type /Page
+/Contents 365 0 R
+/Resources 363 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 355 0 R
+>>
+endobj
+22 0 obj
+[364 0 R /XYZ 144.727 460.919 null]
+endobj
+362 0 obj
+[364 0 R /XYZ 162.66 139.255 null]
+endobj
+363 0 obj
+<<
+/Font << /F96 255 0 R /F104 259 0 R /F101 257 0 R /F95 261 0 R /F97 256 0 R /F106 260 0 R /F102 258 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+380 0 obj
+<<
+/Length 1709
+/Filter /FlateDecode
+>>
+stream
+xÚíXKÛ6çWĝÔÊÀŠáK¤”byìĤ š&ÈnCڃlÓĥ= IN² òß;|H²dy;‡A/E͋3ß ‡Ä“ĠOž?Àƒ÷“ÛŻ &“E‚ŠÉírBŽD4‘X B£ÉíbòŜˋ2‹Óe‘×Óżn_ĥÜŻ#ħˉ)bRÀ/ôğašú4À^µŽ7Êr3ŞLTĠ›ZN öâ,IïZúúŸD(ˆĞmğ9Á´w›2Y­ë]ÛNÈ­¤ŜcşGċ‹:N“ù÷iĴÒ! kĵIĵV‹3U:·Vócn4h5jZC"Q$A:„™l^M}A½Çĉù< <–N*•À6<OG„JD8kĴ¸7FÜÍÔg’ëLŭÚj#ĉ7ġŽx€S‚àžÓ³Ċ ÀzÉ6ë!üô0ϖ{Lô°Ê'Eş8WĦ r™°Ä·Eçߓ° ˜÷WÉ'!0 6ĉ8×ĊB†Ŝ*§> ĵdiż—Sv~Ġ¨û9<yïGX
+ïön£>•I­U Ŭ—Ÿ1„ı+‘U’ŻRUmâ9 Npçásì¸ “ñ7Y„Q’†çOàeÓYOâIıšĜÁ[³‹†y.R0l°RïÑ~[Èvt $;Ŭ•Şµ™j‰°Bıc-ı?4–ÇIÇG‘Ğ5ì9§{ôuü8_ĝħŻùy6ˆŠ‡ġl ŞGô‹b;;ŞÏ ßQ¨r$ıüz²?SÊ…ġ+Y]Şztΐ; \˘ĥ^[
+ÂvÌP(Ú4Ί­m²‚ÄQ´‘HpPÊÛEĈµ+Ĵ‘_FdK‚$Û3Ÿa$FXȞ‘CÛĜî2ŽÀ'DüÇMGF$
+ÀĠ½6×ó"-ÊáfÄlF:€ip?µ ĊċQü˘´-ÇA½ìÀu?İ@ĵCż^‡ħo ƒœ˜Îë›1x>I9=ŠÁàyo³}Ħ·.½z­şWÁTkħäµQH…8IÜz!éKŠ[Ó>’D$lԐH?Ä+e-L*ûN‹xĦú#(L!Ÿ›ŭ>!(
+š7ĝıùÄ$bQ›ËŻ?9y*_Çù\e*ŻĞû’KRDIëŒ%x°7ͧšBĝ9Î6İú†ş­WFc‰wÂx á‡Ĥâl–äħġ‘ž(–úM @ìÄF˙ĴĈàG jŜúeÚ D€dĉĊĊ˜<MAúÒFġ €?&ȧ HÂ>šS˙ĈPDƒÇiß*ù[È
+ 3d sq^ŒIP(‚n?Ĝuë˜SaÒ/ĦSZIYaë3jk>ĉħû?Sö½
+­… Ž`GäH´ñ~˘^~İ ÍÒŻ#+–ıÒ6d(ì#ÑĞLPžğ‚ò)IŬUß*™ÒÀû¨Ğ³;+˜µxę•ŞÚĤµ,"`ˆ }üƒ£ƒŒšZ[*µWéĞG½Èì€aHŬQżçž¤H™2W™—û÷,LîàHğ7„½Ñ%Ñ˘•Ĵĥ6Jş&câ{­˙X'µ£Ż´Ç5ê VÄs½"€ ‚Í"ˆì˘m’üƒ#ϊ˘^窪ì 6=_7¤ó"·RŭZİ÷ĜRT*ĥ˙âٔB-Êħ­ßYé ‰šÖZĵMQUÉ,I“:ħ&â{ĥ­ïüe9eÒ3a²j]l*;ÔE/MÍ]#|u’ EƒWħQ?k÷íPÊjûµJ–µûa]¤-Pċr›µÊߤñŭqçš>œ—ñǢ´=+‹3qK7S¤ngÉÂŞn€İÎÌdn.Ĵ5,5„š['“ġÍ{ ı•‘ĊùÙ¸
+âC`ĈĤF épÜᷚ_Ôêsí€}_IÄĤg7pnôŻwU‰n
+bt/In’„F$ÁÌ% ı$˘^’0ÖÄv“D‹o’Ä=vS&I€t$I"p ù?IŝSI2ì×Ĝ
+endstream
+endobj
+379 0 obj
+<<
+/Type /Page
+/Contents 380 0 R
+/Resources 378 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 355 0 R
+/Annots [ 366 0 R 367 0 R 368 0 R 369 0 R 370 0 R 371 0 R 372 0 R 373 0 R 374 0 R 375 0 R 376 0 R 377 0 R ]
+>>
+endobj
+366 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [335.125 493.577 380.452 504.521]
+/A << /S /GoTo /D 166 0 R >>
+>>
+endobj
+367 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [383.731 493.577 416.101 504.521]
+/A << /S /GoTo /D 166 0 R >>
+>>
+endobj
+368 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [370.512 473.983 415.839 484.926]
+/A << /S /GoTo /D 166 0 R >>
+>>
+endobj
+369 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [419.118 473.983 451.489 484.926]
+/A << /S /GoTo /D 166 0 R >>
+>>
+endobj
+370 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [338.991 454.388 384.317 465.332]
+/A << /S /GoTo /D 166 0 R >>
+>>
+endobj
+371 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [387.597 454.388 419.967 465.332]
+/A << /S /GoTo /D 166 0 R >>
+>>
+endobj
+372 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [392.241 434.46 437.568 446.335]
+/A << /S /GoTo /D 166 0 R >>
+>>
+endobj
+373 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [440.847 434.46 473.217 446.335]
+/A << /S /GoTo /D 166 0 R >>
+>>
+endobj
+374 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [256.069 370.411 290.188 380.482]
+/A << /S /GoTo /D 66 0 R >>
+>>
+endobj
+375 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [293.468 370.411 365.433 380.482]
+/A << /S /GoTo /D 66 0 R >>
+>>
+endobj
+376 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [303.733 294.206 337.852 303.928]
+/A << /S /GoTo /D 66 0 R >>
+>>
+endobj
+377 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [341.132 294.206 413.097 303.928]
+/A << /S /GoTo /D 66 0 R >>
+>>
+endobj
+378 0 obj
+<<
+/Font << /F101 257 0 R /F96 255 0 R /F106 260 0 R /F135 381 0 R /F102 258 0 R /F104 259 0 R /F97 256 0 R /F136 382 0 R /F137 383 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+391 0 obj
+<<
+/Length 2340
+/Filter /FlateDecode
+>>
+stream
+xÚĊYŬÛ¸ßżBo•qk?%1Ċ>äKqŸ E’­-ŻĠȖO’³Yùß;!ġe9ÙâèKvLR™áo†_xôñè7üÊßîo#¸ˆ,³‰L˘û]$Í£˘”K– Ŭo£·ñ>vwŸÛC^U·m×ŬfÇYĈżĴŜß˙İ×öŭ›DhJ4jâÑZ¤LXC:Ŝ”çĤX­ebc‘Z­‘Ä˙ܗËâ6?niöĦÈ7û˘eеJ’ĝ~ï?:•Ç~éĦğŭħh[šİw4Ŝ…›ú¸Ù“ĜòŞ^ûϋœĉò‡•äñù¸Íz‚&g,MR²ĝİìP‰ÈâSŬĥċCY•]éì’ÖĈ8wÏë]S´¤Ŭק–ÄwœËŞ*ĥôkòıİOĊïVĈÄnu+ÁŽĉË]çUP,pç˘ÙŭĤ­ògšxÏ͂Íğ•àqŽn}Äê†âĞ@ûÊÄùÁŭH)b8XW;ÉċÖ˘Ba°ƒËM^ùĊàìħ%ı>zEGŻözü·Y|ȏ+aâgúµÙç‡SYÛ}y˘…p EÇ. 4€q-@q-%SIF.ŝk%ÀÇú j 7ù‘„ĵjk/m·$ lIŞOnN?:żŽLEçĤ)úp ·$…ğş!Ħ@>'UfSî ˆ_kĊÀY¤ÏšïîÜ!ÜXf-8$˜5 ÍWùCQßÒ
+Ÿ3]ñİ@”x$˘C…Âß}ĵRfS°“W³L)a׊tüıXI?yOŠĵ,Äí$,ÙÔ¤Š‰ÉÌ˙Î˅Ĉe$3Ĉı%ï„Ò›œ^tçÓgW=\ñĝ;Ŝsqŭwwe÷…b|–ûòTúƒ-·pŠŻtÎK\Tĵ‘ĈŻyàëĜġ%Œè´äÄ4%˜)§J2½Z ÎyüsŜ`n>–†”x(ç è!vʛüħÉOû)p/#Q”‚%‰â„fÀ)Ĝ²c ü狤iOĊĤÜ=Ĉú…´LiÀ\”ÎĈK;
+JĜy\njS&Eúr,ŭ
+ëSĤÔşÍrM
+CɃnBY—Ŝ§Ğ3J~éıĊĤ=¨y€××k$Ü£„WNjHĊŒÓğû²fÀ\iĉ•_œÌŻ”œınT\°GĥÍÎ"í‘ä+„à§n!܉…éŻ#ĵòqĞâ—s‰.}ÄòÊuq8Nw˙E‘…­ÄlżÏ¸á-ŝ³Ôpž2c{/Ħ7&:úmžNŻ×Ôä)Aı3‰b ] >7tĵ­7Ê]Ÿ˜ZÑĦžäŸ@Ĥ/&06ş:ŬÀg%âŠ~<x­³#?
+ŻÀġç0QPpŽô#§ü‘ŜVp.÷Ğ Ĵ§/NÍx­ßĵۗír§ wgĜ3£›î.´°Ou˜šEvŞ‚Ò]ûŜD);Ê{í{u†hép…Œ[ğ`Ó|c¸äPĥÛUBÏôĵ‚8 dy²|tW]4Š~
+èú|Ğ}½üáŒgeu\îè/uy äîı ‚dy|ÄßʵO0ì
+áë1Ê{Œò1Fá—Ç(2.
+ÂŽp&háÜ ‰Ifġ×{ŒâF•kú‚˘ FŒĞ
+ˆEÑE…b3(eœpˆuÒ2FÂ€Qüasƒ£pì=Fqt|ğ üżUÓïo~ñ´ˆ„Ö,•i$”eFÛhs¸yûžG[˜‹™‚Âĝä–`İ`Ú=Ğè7£˙4´:~€4U L²$S#6iöSdL!7XfŭŞż+ô&32 \’´$S+B{>êĤ köESüĊ”Ú?˘öoüMUרŭÄe´ßĊµ·Á1üVċĦìü™Cb½›ÍùxĴDôçżv„…žHcv÷áÊ!c |Ĥ´§4ğüĦ*</^Ŝ†˜@BHc?0*˜›×p pZD˜'ĝŠï‰4ĜZĠ9 Ïáiá
+endstream
+endobj
+390 0 obj
+<<
+/Type /Page
+/Contents 391 0 R
+/Resources 389 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 355 0 R
+/Annots [ 384 0 R 385 0 R 386 0 R ]
+>>
+endobj
+384 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [432.436 508.735 438.612 521.528]
+/A << /S /GoTo /D 392 0 R >>
+>>
+endobj
+385 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[0 1 0]
+/Rect [338.872 119.218 344.85 126.757]
+/A << /S /GoTo /D 263 0 R >>
+>>
+endobj
+386 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[0 1 0]
+/Rect [403.19 119.329 413.153 126.757]
+/A << /S /GoTo /D 393 0 R >>
+>>
+endobj
+26 0 obj
+[390 0 R /XYZ 144.727 548.924 null]
+endobj
+392 0 obj
+[390 0 R /XYZ 162.66 139.255 null]
+endobj
+389 0 obj
+<<
+/Font << /F101 257 0 R /F96 255 0 R /F102 258 0 R /F106 260 0 R /F97 256 0 R /F104 259 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+398 0 obj
+<<
+/Length 2466
+/Filter /FlateDecode
+>>
+stream
+xÚĠˎÜĈñŻ˜#7´ûɇ€½Ĝˆ HdIîlÏ.£r@r´‚ü{ŞşŞÉĉˆkÙ²e 'V‹Ŭġ~4ċĉa#7?üüŝöĊwŻ•Ì7¨òÜnn÷e­(tħ)d.”6·÷›·ÙßşÑżşzû—ï^W)ħÖ@kaĞ@ġÏGß^mÒÙĝè0Ù>MÇĜf çéPïü=ÜùĦı÷‹ŻtĥëÚÑ·@$邏û§WŝJıì§úx:0m›×Ğ’*ċÏJĦĴ‹ Ŝü°oν_‘Ä:Qš*‚Vf›kÀÒoĥF–˘ċfФ¨kĤÛ_i—í}*Ğìî<+„aŽ,œ#óŞÀs\.¤+9(;¨h…£„&~NġîCŭàß"!OG "_
+Êcž❔:("Ĵ‚]àuŬòşŬŽ¤çq|ĥ|³´Gĝ˜žÏĜC‰Ré(ÖSż*ğVÂİIöíÚF[¤ÈË c<k]c….ÊçĴğĠÚ, ‰4$>Ÿ1dU
+gËY’+
+<M­‰Tˆ
+‚ê›S›UsD–J²#òvĴáÜ2{@zĜ´´xj…ÉëóĜëħÙĠ‡'rj•KQ8³Ôcïa#0£UÙĜ­İßH!µ‰âÈÓ¸"²Ş„Ş&Ġqżà‚
+ĉigĦÂİ ċùD¨àûxù}_“zl%´VKí,”^äYˆ€ÓÁxÁ뀆+ ñ†ïw5|ßÑsàg:\O– cˆ"tyĥoàP>i)•2+3#W Ñ9™ÉHÍ8ĝ˜´Eo 
+œúżk^- áŞé
+N+ì”[YŽŝ p%' ş Ñ—k;j+ŒĴ–ïÑÈ+ÌÂT–Ŝŝ)ĵ€ÖĦԛ½v>ñÖfOÍî‘Ċl1hQŬcŬ>xVy´½Èy˘aµ´Ĵ˧ĉ~g\5½Î Q(½"“ÑP"*”ÉċU*“ĤÜ$ĜkÎ̘CÖF
+Ĉ³şáN ÖÇ.Œێš·ëZO
+íŝÔÒċrş`V7ôž@èĦà•g;ÜùñÉ{6>w|µ0Éldyf:ß
+ hıEì*ÇEBn 1×İl2Qĉ“­Ó,¸Ĝ›ò|
+çfÍ€O‘c•KYû{ËÂ'Áŝë…gĦĠ˘ïÀŝéeÚр°ôċÄĸ£ ÛàÄĥyM£ÜVĞ*Ó
+‚Ċ) È~ 7ı-CoOJ3
+Xœ“YӒdáw$UɊĤ˜ù}ß Ï}ŜR°ÏŒe›^ëĈ×a
+ ġàI÷†?¨{ “Î*òTEÛ5Ĥ˙
+%Jh>ĥ0ħ[MœÒ‹Oŝ|ûâÏ@%â
+endstream
+endobj
+397 0 obj
+<<
+/Type /Page
+/Contents 398 0 R
+/Resources 396 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 355 0 R
+/Annots [ 387 0 R 388 0 R 394 0 R 395 0 R ]
+>>
+endobj
+387 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[0 1 0]
+/Rect [263.447 694.048 274.406 702.281]
+/A << /S /GoTo /D 399 0 R >>
+>>
+endobj
+388 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[0 1 0]
+/Rect [336.843 683.089 347.802 691.322]
+/A << /S /GoTo /D 400 0 R >>
+>>
+endobj
+394 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [274.337 578.456 310.864 587.549]
+/A << /S /GoTo /D 98 0 R >>
+>>
+endobj
+395 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [313.558 578.456 398.566 587.549]
+/A << /S /GoTo /D 98 0 R >>
+>>
+endobj
+396 0 obj
+<<
+/Font << /F106 260 0 R /F96 255 0 R /F101 257 0 R /F104 259 0 R /F97 256 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+405 0 obj
+<<
+/Length 2050
+/Filter /FlateDecode
+>>
+stream
+xÚÍXKäĥïŻħ˜Ĥù’(m0;ħƒxû`›ƒZÍîVF-5ôĜñÀO‹zŽfwÖÙÀ9I,’ĊbħêĞÎŝú†ûï7û7_}'¸ „`IÊ`
+„ÖÌH1!“` ~ŜHnw‚sy×>ĥÙŝk˙÷ŻK˘ aI$#ÜǃLE1íĝzğÓBoš.oÓCaqn²êzÈË´ÍĞ’Ġ‰–eémBt˙ Íäßš…=Òı‚O–"fZG €;xĈŞAiW„ %“&é·°í.ĉzóÓVİş^¤rú–Öĥ?Z1°‰4²Ù)Ħ` zFî¸û•ó´bRĊÁŽôL‹Û‹½nw2Š6×
+ĜŸÙT5Q@Ċ ŭµ}oéÙŻièġñ’gú}BÁñ§ħ--ìn~QŜ^Fé'Š“’™hPÜ{Ħ4žò˘ÎfÌ°úOÀÛhĵ6¨Ŭ‰³
+€Dóëniö@Ö²ßjğëßÂEû¸ĊĵEóvͅ4`ħ=×CÚĴYµŒ˜ĉƒÒò¸Ê)bñÈéhOiW´kn.XĴĠB_2B°sĞœ(lvP̔ԟÙhµ|çXon]‹*ŠCïN@°3Z:Ĵ}(Ğ­ 7~ê
+ô 6idżĝn” á³ĥ·Ês\ĤÀ ‘.§~6e ˆ™Á²hL+ ”0­– ¤BÁ@ÍÌ>ö—ÜCĈĠĤe—´ġq³Y~z˘G˙Òŝ‚ïîfüŽKÚ,$hħŬŸ=ĦCœÀÛ|jօ(hf÷ pü=7è{MÛû[‘ĉċ]‘lá)‰ÖĜÛ}VUy7„ßÉüğkÚü”g.éğ÷#{ĵ;Ue{˙ëo=[Ĵ1hí/m?Mës^Ŝó[{——G0|ä £µ}³Ñ·ü’–çÉ=½°E^Úìb³‡ûĥîĈךäwƒR8(ĊC÷{òoşv-„ċjô‹ùĠ38ۂHçç˘/N•R&1@âcŽOĞâhs°ĝ )CB~"‚³$ i
+R1hb@p+KDs¤Ĥ>*Á;'”8¨Ìgù¤ŸQn\UĴ§úÓXö7L”e ‰rÙÖiÓâ(q2­D¸ C"’Bñ1ŞÀÇ8<äTĊĞf<ÇÍ
+¨ĵğ[m_H£?ĵğój•—íĵĦ€>]Ú´.žœż”Úġ­6ÖòS°PJ@Qĵé”òêĝjíÛ5·–hÓ½d˙|D…€7ú+ †‘›Dçöĥ;`HZ†£cpo3íŭĊ‚-×öÏtÖğY÷h²‘&sĦëówÖ­|#\uE"ŭ@‘üL"cĴîċ׳H<Ŝ°yİÊ0,™)‡Ju´2s¤²%`{fŻ.$>+-'<ùÔİF[4Sw~ŬNaöÍÔ¨oĤ>ä·WôR÷.½}†Q¤Qš[šùɃm-Ĥ8hû-cF("Šû³i|ġ3ÖĜn„ÈàĤİeëöCĤü
+endstream
+endobj
+404 0 obj
+<<
+/Type /Page
+/Contents 405 0 R
+/Resources 403 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 407 0 R
+/Annots [ 401 0 R 402 0 R 406 0 R ]
+>>
+endobj
+401 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [442.449 260.29 476.774 270.339]
+/A << /S /GoTo /D 66 0 R >>
+>>
+endobj
+402 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [480.467 260.29 499.397 270.339]
+/A << /S /GoTo /D 66 0 R >>
+>>
+endobj
+406 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [143.731 249.681 196.518 259.403]
+/A << /S /GoTo /D 66 0 R >>
+>>
+endobj
+30 0 obj
+[404 0 R /XYZ 144.727 716.092 null]
+endobj
+34 0 obj
+[404 0 R /XYZ 144.727 236.378 null]
+endobj
+403 0 obj
+<<
+/Font << /F102 258 0 R /F96 255 0 R /F106 260 0 R /F101 257 0 R /F97 256 0 R /F104 259 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+414 0 obj
+<<
+/Length 2858
+/Filter /FlateDecode
+>>
+stream
+xÚµZKÛ8çWĝĥ2sĝÒk€=$Àd°ÏLĜ’d›v ħ%Ż$§·1Ĝ˙U,’z4ŬÌî\,Š˘ŠĊbĠW_QĉĞŠŻ~|ĊŬġíŬĞïŜ•ÙŞde&³ĠŬa%´fıÌW9ϘċênżúÜŬ›ġ§ğ?÷Np1[°T*d}JïŞËP· žÉM9+RáÇîÚóıjöëâ:ik™&Ó×ħ}Äkšü5ÈəÊa&S”Le+ÁrE’ŜDĉRĴĊj3şA+Í4,l#™Ô’úpŭ…ĞI÷?IûާFEêìM_êúÈıŞÖ"M_o´(Ĵ‰ì“ÙÒö­ééċĤF jĤQĠT‚Iž{\ÚF ŝ1fBXz ‚•iJ?7-ïa½‘…LêƒğxUI?€&=ġÁĜ뀊bckP˙cŬ4ustcô^˔ÇkçîÚΉ¨ĥ'óÚ}Ġ°oš=ÓMәCëÔn¤µ ڟϗ„–Ú¨TOֆw(…šCK×ËĠ´“b£żT;ß4—ŞĞğĥÙï£p£’Cמ—ÏÛf0“Œ™= ™jž‘ĉh • ²,>Ëeòûúd\·•‘sږŞÛSw}œÌfĴœZWÖ‚Êá§zìİVÛÓûNËĊ7ĥ-nçü1‹a“¨\ğĈ KòçÖ[ĞT°{k͓/u×6¨ZïGœ|nê,Ġ×ŭVCNÔ½5§°m7HÍnߍá‰Ì„lécáÔ6GkÊX,ÀȲ#{PL€CjEĞĈ…n”ÌYŞñ²4ĥLù°ñŻ}ŬS ìüı:şñgrihĦġl4ŭğulÜ['ċX£ĝ/dİÛ;oĜ•€ÇŝúiĦ ­ \3ž. bh/ ‚ee
+A"ñ×z ŞżÑĊÜa(ğfg‰O"DQ‘‘ħġ@|š:idâŻŭu·3}¸:‘–ßâġÜöNÀÄ÷Xĵ BúözÚSÓħµà•0#Ä‘šéa‡£U˵ٛŽöĞ</ÜĠŬîzĈ8µXx öVeÏVÖĞċr Aq,Šà£Ü¤Ş´6IU‘˜ŝbv5E ö_{öĦ6$€†FAïžú†öh0ÎŬë/÷îî16hpˆXE+²”ċ<@ÌĦĈD6ĞkW)SĊ<áÙÔö\ñ[dLĉÁğĞn 5÷ñJċH|ɈAA'UĤ‘œEœ-2g@4ç,Z³bïÛŝêÔ[hy…ùŞ;¨ñˏŻVLìĈ:ĜÈ Î@Ü÷7^'ô•ÈĦYŒxOà3­2ú™äĊÀ‰Ò4›,!ŠY
+èĴÚÍ ~§Áï0PZçĝTUXbŭf\^nÍëŸ~'˙‰‚jDÜÏĥU²Ó‰^>ŬaİjÛÉ\?b˘XşûÎTU6 Ğ_ˆŠÑPtàħ˜î ³Ĉê*(T‹ñÈ)Nj˘[ut^³†|ÜYZ@98—°ÚE•‹İ—ˆƒĈÑPìİ]¸ğ
+şK"²Ô,EŒwèôÉvğŜˆ@|ÒßîhŸ·ó›:dY0]êgkQ^àic5÷r²"RŒQĊsEZĤ ƒl,ĈZĦâkù(žÎTW,+²ß_uĤyM;`Ĝ‘}@
+ ‹XçoĈÈßĠ
+|)ñ;Ç4î_\îĈıFÑWÔ°´8’È™)q9….¸Yè
+2èàJsú ËìÉ98>ĵŻÖ’ G5ôĸ<ħ˸úûşÙı1c=Ž#+şœĞa°ĴX }äjħowž_B÷î5<= È]mœî3Û_/:j ß "‡é1· é‚5Ç´î\” rVòòÛ|ÓxÁmI„:ğ’×AÁ–K=ġL8~#ĦŽĈ8êá¤9ŭ0è9SŞXÑ
+Œ 5ÊŜPû`ÏğîYoN×ĥWRc 75r;lmŬáñb
+4áhHuĵ˙ÌÍÑ9ŻÇSθ iÍ}ìáġĜ°;½vDŽğ[+È\—np]•?í„gÛĥŭü\á.D
+Jç/UµĞÜ]V~w혇>bŞ"Oúöl[™/zêÇïá]{˘Gäğ5.×C J ĝÄ É&U(ô.żO™;Vĥ²ĈOLnŽÌÀGü™ >c–pÖ³Ċò hvš
+uRžMÎkìwïĝÄRÏ*—g„âÉl!³³ ŽĊŝċ#Í˘ß˜CeÓ?Û
+endstream
+endobj
+413 0 obj
+<<
+/Type /Page
+/Contents 414 0 R
+/Resources 412 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 407 0 R
+/Annots [ 408 0 R 409 0 R 410 0 R 411 0 R ]
+>>
+endobj
+408 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [369.057 410.992 409.9 421.936]
+/A << /S /GoTo /D 58 0 R >>
+>>
+endobj
+409 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [413.18 410.992 468.728 421.936]
+/A << /S /GoTo /D 58 0 R >>
+>>
+endobj
+410 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [143.731 155.18 184.574 165.161]
+/A << /S /GoTo /D 90 0 R >>
+>>
+endobj
+411 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [187.854 155.18 354.997 165.161]
+/A << /S /GoTo /D 90 0 R >>
+>>
+endobj
+412 0 obj
+<<
+/Font << /F96 255 0 R /F101 257 0 R /F106 260 0 R /F97 256 0 R /F104 259 0 R /F95 261 0 R /F143 415 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+425 0 obj
+<<
+/Length 2772
+/Filter /FlateDecode
+>>
+stream
+xÚµZێ¸}ŸŻS cï’6X Ùdg‘Ċ`r™’`²j[îĈ-y-y:ŭ÷İb‘ĤûÌ´)Š*‹U§‹ÍW7+úé ÷ż?\½y÷´Ğœ•9ĞĞŭJhÍr™Żrn™ċêj·úœŭêS[ë,‹l¸­ħ‘gŭ—ĉH]×ġp_×-uoĞt-½İڝïí@L;ôÔŬôÔ{ޏ§ş‡ŝzç%=ĴıúùŬ{
+MzIaXĦ%hí4úPşşîÖ~*§ˆûlĥšB1kóñ#nĝŭm³½ġĴEĉ•İkÁ³{üS=ô(hŭ%3ĵ\mJĤ­! }=À:Ï`îµ0ÙWüSSEÑêĦ·ñżFí h—[Ô./XÉĠJ0É˙cb
+öAĴ6Ѩ+§ bFğŝĵTÔ˙£ï/r:v˙Ğ÷ŞÜġXşBġÀ‚­7Š—Ùça\ÂÉ/˘ñUôÓ×°{;j]K;×İ}Ĉ0YŠxŸëCw˙ì>Ik}:÷gçon+”„ĦĦ­ÑV(вĦKú g…*ƒD~³ŠœIU„1àwNŜŜ;?8´uz·QV:Ë`ר
+Â(Ĉ•y‰/ĵÒôÒœ*3Wx ÈגgçV”WÓĦsĝ•7ğ:ĵ­Ú”ġ7’ fu> ž—Çlžç³]frv2;VÛ/ĠM ĞK}êüûz{Û6[Â(ÖëêKÓŜàâ¤}ü=}ÖSÌŭ;Z-ôßĠU ÓC·ßö5y¤W2vÈÁ‰u¤)0öÔĵż­“6‚Ëċ(Ço(ß]Ê(&2al%ƒbĞ<ûÛĦzŒ\˳ĥjzğ3„64Ğ€ñ2 Ĝ
+$ˆ•r!Ö§ħò’|ĊÙ¸A°‡i…bċ(ĜÛAĈÏÑwÓÎ:çŜy*ö9'ĵl°Ò‚ÎcԄ”^›Uè˘a ü”,7ċ#ïLHԆiû&Aĥ.˜2Ċ,BÀ3Ñ_x֟ÇîD›=ŭvmíƒÎ5cDŽLŬÔşöïÏ}½{ëżê:–$Wà15ċ –€œž“:°ÂġFp°é‡Ĥúqi%+­´ŝ 8f= şşRŜ4J”L(gĵù§ħôhŽ°MŬŬó+em2<˜ìx¨ĥuO/Ş–~OÔ¤Tb:[·j9?ß÷ÍÍùD" ĴŝÈ#ÇĠ
+° ( É|ĉÚˆJ
+BHl
+\ß%Emü…Êf"J;~â?Ö Ìj]¸*›ĉʆ 8͋à’UÀùK=Ÿâ 9fP˙”°Y‰e–—Vù
+„#Ž=é^˙zĈr*ğ
+İ°˙=<ĠdŬG’X)sHV‹Óċ”šòı…YĤıŠvQœsŸb‚Ŝ,µż‰âʗë%—!ÍHŸfTĥköhç½Úğ³7ĵƒ 7ˆY°ğĝ^Ç8zN]¸ï”­$z-y/àˆħ8À¤ŜuĦċ\WFe6ì ‡ƒäÈép€Ĵ| Y·îŜTš0ó=ôE(,½×ğ™âl _샴Š~ĉVJŸŽçÓħëëVváÈUÌ#ŝ1еnü€SLH*…/H|ï|aĊġıòúċKxJŝíʕù·Ğ腋c½,!ڊgk6^wJŒˆùK3SöÇĞ7żú½żĞÛoïŜ|ŝ…Żv\‡)Ġ{7ô†`Aé°úôĉï?Ä·™%^LÀH §z•’Ŭgj@· ĝE¸Ħ 7Y
+b’n²°E%Zj%Ż?,nn#Üq(ş˙
+5³eœĊ.ߧ)뎏j[ħĵ‚Y%_ĉ›B-\“]¨^ω|žS Ô£† Ì2Ú˙Lûí
+endstream
+endobj
+424 0 obj
+<<
+/Type /Page
+/Contents 425 0 R
+/Resources 423 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 407 0 R
+/Annots [ 416 0 R 417 0 R 418 0 R 420 0 R 421 0 R 422 0 R 419 0 R ]
+>>
+endobj
+416 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [220.961 569.103 261.804 580.047]
+/A << /S /GoTo /D 54 0 R >>
+>>
+endobj
+417 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [265.084 569.103 340.385 580.047]
+/A << /S /GoTo /D 54 0 R >>
+>>
+endobj
+418 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [398.833 546.189 405.01 558.982]
+/A << /S /GoTo /D 427 0 R >>
+>>
+endobj
+420 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [290.025 329.569 324.144 339.29]
+/A << /S /GoTo /D 66 0 R >>
+>>
+endobj
+421 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [327.423 329.569 399.389 339.29]
+/A << /S /GoTo /D 66 0 R >>
+>>
+endobj
+422 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [177.763 244.321 183.94 257.114]
+/A << /S /GoTo /D 428 0 R >>
+>>
+endobj
+419 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[0 1 0]
+/Rect [277.378 138.491 287.34 146.031]
+/A << /S /GoTo /D 429 0 R >>
+>>
+endobj
+38 0 obj
+[424 0 R /XYZ 144.727 633.046 null]
+endobj
+42 0 obj
+[424 0 R /XYZ 144.727 230.747 null]
+endobj
+427 0 obj
+[424 0 R /XYZ 162.66 149.064 null]
+endobj
+428 0 obj
+[424 0 R /XYZ 162.66 129.79 null]
+endobj
+423 0 obj
+<<
+/Font << /F96 255 0 R /F101 257 0 R /F104 259 0 R /F102 258 0 R /F106 260 0 R /F97 256 0 R /F20 426 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+439 0 obj
+<<
+/Length 2717
+/Filter /FlateDecode
+>>
+stream
+xÚY[ŻÛ¸~ÏŻ[ċ"ĉŠw*@€bÛdÑ>ìĥŬ´E’›ĥĠĜ’ĞKœƒƒü÷ΐÔĠt’Ċ>‰"İáÌpĉ›‹ÒĠa•~z‘†ç/~x›İUF2ĊÔêaż˘BÍôJ§ŠP–­vĞwÉö˜—ÛĴ7,“I{´8I™Ÿ­ŸŞö҇‡żŭ–Ĥ3šiJ²L‰žZW×k[ĥ~÷ŒÎHŞUż×–k‘&ŸŠş*Ï°ŸĴ7BˆäáXfĥUwÚyv3]c÷Ŭɏ‹ÒŻmĞòż]ım‹Şô ע=âáĞ ċ¤0 $“Òëe”iR]›üäßòzMMr萕°ïĤ `½ï)ÛÜQjlÛ]"RkMtšġĵôÄ-9Ü;\W˙\ž·ĦÒÎäjɨˆûîZç—}qèjûá/ïġÛâ@D¸ÙPpFn4Ş‚‚¨ì
+V†ŻÛ5M*?œı&J–νÀâċÁç?vÊ]Ĵ€gÓmaT´]ŜCĵûse·†‡€12,½ÍûÜQôäßúèóM`áĎ3½4MŬÛĊ1ˆ91j
+R§Ñ Ĉ³b7¤ÉpÌ%ß~ô q_Éz!ÊŝŽ†
+ıQÙ’}´ÓĴ&(f™h;­ċeTQX”RI‡çlrp×oJΖ’;;␘˔CRàÒÙم,ŽĦŞó5uH{ĜàRl9‡n¸xô0¤fˆá“܇§X3‰í#„ĦÈ`c­ŭmĝĤ·í™qMxŞììî4ù—ĞA#úÏ8‹İĈœ"éŬÂ˙áy\K'Úİ(?â ÔċöèBˆ’.Ù)öħÓ œô}|ş
+ Bu–-# C~SÄÛA™˜Ġ½ŜĞ<$XŽ¤qÁ´
+‡úZĊ‘ŞH(]ê/#jÌòħn0íKŻèx­P£(ÜîÏöáFI˘G·ŝ­î+fŠdc?W¤ô8÷Y⊤l™“
+Ċ ¤îİDQË $=èöêj>É'Ef„È,^rC¸p9ÚĤ—ĥo2‚áìl³­‹A+ÜO'Nèmèžè@8w…ˆÌċÓŻÚ`†Ï<ë’×ñN K:ܝöXÙpĦß]Ż÷½Í”üo¨*­\}ن²òϋoĠáŝÚĉ.Ŭ̆?n0{Ì/[öÛеep ċ‹‚r[AŽášÏ\ĞÄ˙Wß›ÊdÉÛĈŬır%$,ûÀ£OEÓa‚âfÁH76€ÄÖÓÔî6ÜŻ·ç\x#Ŭmş‹ŸûôL[³Î˙F
+îžMEîĤËÎAıfÜûŽ&’gP<*š2*ÚGzóâŝFSž’ÔÈĠöüâŬ‡tµƒEPÔ fuu[Ï°Òq…ŜqZŭúâŻmˆûĜÚAï‘ŒÄBíI³ 7…¸0`‰˜,@ÉÖ´ÙkAİĈŝÑ|Ŝo4;f¤bV !ġhvMè:lœa(Bħ˜…ì;b
+endstream
+endobj
+438 0 obj
+<<
+/Type /Page
+/Contents 439 0 R
+/Resources 437 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 407 0 R
+/Annots [ 430 0 R 431 0 R 432 0 R 433 0 R 434 0 R 435 0 R 436 0 R ]
+>>
+endobj
+430 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[0 1 0]
+/Rect [265.308 476.475 277.263 485.402]
+/A << /S /GoTo /D 429 0 R >>
+>>
+endobj
+431 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[0 1 0]
+/Rect [238.026 348.981 247.988 356.521]
+/A << /S /GoTo /D 442 0 R >>
+>>
+endobj
+432 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [236.654 337.983 273.181 347.076]
+/A << /S /GoTo /D 138 0 R >>
+>>
+endobj
+433 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [275.874 337.983 304.574 347.076]
+/A << /S /GoTo /D 138 0 R >>
+>>
+endobj
+434 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[0 1 0]
+/Rect [403.676 281.706 410.65 290.632]
+/A << /S /GoTo /D 443 0 R >>
+>>
+endobj
+435 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[0 1 0]
+/Rect [327.843 269.75 334.817 278.677]
+/A << /S /GoTo /D 443 0 R >>
+>>
+endobj
+436 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [391.27 198.991 397.447 211.784]
+/A << /S /GoTo /D 440 0 R >>
+>>
+endobj
+46 0 obj
+[438 0 R /XYZ 144.727 619.663 null]
+endobj
+440 0 obj
+[438 0 R /XYZ 162.66 129.79 null]
+endobj
+437 0 obj
+<<
+/Font << /F96 255 0 R /F106 260 0 R /F101 257 0 R /F102 258 0 R /F97 256 0 R /F104 259 0 R /F95 261 0 R /F147 441 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+447 0 obj
+<<
+/Length 3235
+/Filter /FlateDecode
+>>
+stream
+xÚ­ZmĥŝżÂ‚Ô.Î\ñM/ôċši Mĥm€Ëá Û\Żz²äJr6[c˙{g8”DÙÜ]ß5 É|rfžy†T4ÛÎ˘Ù·W‘{~usuŭ ÄŒ+&U,f7·ŞX"’YĊŒ‹lv³™½›ËĊ’GQ4[ïvyµiïoŝâzr–im{F³H˜€Ô‡q×ëf‘¨ùŜ´ĤëŠjğX
+Í×ù+êÊ •Ċ³Œeħˆû8‹UJŬÜׅfï'ç³şÄ
+ğ,µdY–@WÛċ.•›
+ 5†²Ża›HµġËeĈTìÜ×P
+ĜÙsq8׈ż¸@q²@íÉĤ,IÄs Ô,‘éDí0ÜdUˆĜZXàu˘û°eKúT&ċSyĠv`’4„2!dhMȽd4ç/XPĈuȂ`tċ¤0yċrfßÌSÒ[Ô!…8h`rVaŠĉXÙxœÌï›˘ëĴÚáOWğçĞEU,é\ÌÁ}K@šÜĊfÛp;ßïMŜ¸¨žXĝœŒ‡{ġ=İŝÑÀÉü‹M­[*ÀŸ=#P
+÷¸Á°k;Y‘
+Ŭşġ›Ñş›°ë^ ğCż}+”ȄŬİY
+t2,£è/•FTŭŭ0Ż†y˘’ dR\8~Ò)Qultc÷F2 ° ċIĉ6ĉkWžž{Ċ?“<ÍÁYĤjŝS½ êVA.¤³O20ĦÔ݁Ñlž’†ÇvA=Ù$ufŬġöÔĠ@89ñ´ĠZSf4xxé~$>Ŝ„0ċ§ˆûĈÎÚí” xĈ ¸˜“³V4ßĈ ¸U%ħvn·ZĴE“ô›YO‰G…d@Dt"ܟͺÌĝħ^O½ġSßİkEèÜHa)ä€}ı`9SÀ>|wÂ+sż~r Ÿ D¸Ğ{VÚcşĵğ Iikü3тp(M4šş
+ĵcRŝĵ‘OgóàL[Fş‰ӆQ,ölŬáb~ ²‹Ïäa8ĴN^F—ŽG3>k0Ǘż½:ßñ!WŸnϳޘ`'ú%EŠ-b‡’‚ê0 [*Aöş3]ħCG>ûШ6ĝV¸6–ĴÚ{ĝƒÑl]€Ĉ$2™Òá,Ö7ÚévZ ’o ;´ĦÊ1…ĤqAiY–Ee–ë;³ŝĝGdóïÜĵûCg‘O…=Ċ‡ oLş*ž?&HŸCˆ„ñԋşèš+¤!šVÖMñ_dñ%Żêßèo·1iv°hjowËï‹ 0ûŠ™Ë¤ÎY°ı î0ĠÛD@¨­…]|µˆÌCwġüÉ!XC›o=J„He3"pµÌĈV
+x)ĥfÀÍÇġ½á 
+挍
+Gúw˙üp|ûH•ĝż-vceinğħê8Ìĥ¨ŽyÓäÇġú‘Väf÷MëÇí#Ĉ]=˙ÊvïÌo]³;ĞBüÑ?C~W|8~ġH›ı?,òúšj¤'iŠízFßĉ}ÈsH˜™mc­ĉ˙hŸ ­Ëŭ)]ëCÍ_ÚĉáRÀŸ@Agܛ`N™ŽĠùÁĊxۂĉ‡XĴ°˘œ`•UÀ£
+'.Ö“BÊ"ŭó“I4ÖâÚĜ(ZğİöTà z
+@*•ŠA'˙ĥ<΍9+N Ħ²rEYÜQPHžˆ%O]ed\3Ċ““Ôœ˘ĥËÀ@
+b{=9g=˜û<~<Ññ|WI ĠmŬìrş‚|U‚ı~Š7-â²£W ȇÎZ7I>ŬM}Òx§5}”š‡\œ Ìĉ³ÀIŽ
+áÜ€Î3sëw#zzêH@­a¨ˆİĴż:9ŸrX.pœ,Ê~Ÿċúsr·\áìĤ‘'fğzF,­ ü}ÄÒ)„ÎñĞ+”J9İû•$1ñRHaçĠ{&ĈTd
+endstream
+endobj
+446 0 obj
+<<
+/Type /Page
+/Contents 447 0 R
+/Resources 445 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 407 0 R
+/Annots [ 444 0 R 448 0 R ]
+>>
+endobj
+444 0 obj
+<<
+/Type /Annot
+/Border[0 0 0]/H/I/C[0 1 1]
+/Rect [195.636 350.646 499.397 359.325]
+/Subtype/Link/A<</Type/Action/S/URI/URI(http://www-h.eng.cam.ac.uk/help/tpl/textprocessing/teTeX/latex/latex2e-html/fragile.html)>>
+>>
+endobj
+448 0 obj
+<<
+/Type /Annot
+/Border[0 0 0]/H/I/C[0 1 1]
+/Rect [143.731 341.182 265.773 349.71]
+/Subtype/Link/A<</Type/Action/S/URI/URI(http://www-h.eng.cam.ac.uk/help/tpl/textprocessing/teTeX/latex/latex2e-html/fragile.html)>>
+>>
+endobj
+50 0 obj
+[446 0 R /XYZ 144.727 716.092 null]
+endobj
+54 0 obj
+[446 0 R /XYZ 144.727 695.552 null]
+endobj
+445 0 obj
+<<
+/Font << /F102 258 0 R /F96 255 0 R /F101 257 0 R /F97 256 0 R /F106 260 0 R /F104 259 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+457 0 obj
+<<
+/Length 2192
+/Filter /FlateDecode
+>>
+stream
+xÚÍYM6½ÏŻmċĊ˜!)’˘ú6ÒÙŬ.8§ž9È6ŬĈ–ĵ’<Fcŝ{ŞHŠú°wg$‡†(şDĞ^½ŞbÓĊ‚.~|GgžßŻß}wÏ([¤$U\-ÖûS‚(/Şéb½[<DY,6ĉ1/^šls4_—ŸÖ˙Y0FR)+˙ ‚ÛìÜäeaeDB4’á$ŝiç%I½èMż|XQ·ŝw÷İê鵒1IR=܎,WLÒîa?žg5PSujšb÷2żƒ1 ñİcĉúı<™&?™zıâRGÏċĊ ž–ŒFYѸ·ĤôÏç³İŸÌ‘F=Ó žj`wE8çàğWyiê|g&T‹‰Á?^.së¤4.³&/Ŭğ)–‚F_òŞ,NĤhŜĴ˘ÑùÒt"^%ĝ’/YôgaQ#ÓYQĤJX{pĊIġz~.÷Ö£+Ib= /d}˜"d҃è„LÁVˆŽVè)oy
+ĤĠĈGQĞŜĦ'Ż‰Ó¤Uĝ”ù9{œ2¨HI"E+¸/+·C^ÔMVl €‹§,ş_2ıßdêÔNê|İÎemÜKsĈÎxħ=¸Œñ Ê
+/ ß
+ ïyÑNY—ĊixÇγ9şáG*İ!Às‰àÑGÎûüñR '´‡(Ħ#zÉġRƒû!‰˘0,Ä\,ÙÓà
+÷Î-‹óT9Âé ş(fş2à[èZħMù+ĉĤqdŽş²ú}ê% Kv=c1‘Ŭ֘Ĥ6À̂°ç€½Ċƒ]Ş6ێ{8I‡éá!ş›ùܝşÛş=Ŝùc½O#ٍ8P %ûÚ²ÉHpnˆ+EóŭŬ/ĊÎXħhkŞ&sUĥyµ½œ\VğßóĈË9,âpcœ4`r9ş9Ǟ Şğ.ïr×ò2ˤĞrżjùÓ͢}£¸£ĥœa-³¨Ok½ö˜QNSĜÄÍBkq›4 )r€„Ä4E{“5¨3X›2}“0†@u|Ñ_?oS˜+3 _f­m“ëÊ1olê ùk{È­Z_,{Éìġ•˜œm:ƒÑ&[< fÙuöMóù-]žúóšÏW÷{†šëa)üżËù°°ĈžJž,%äü=ŽŝɛV4ĞŸŬȆ<}gaáijI2G¤³/‹ÇPŽ À<¤‹1ğSŻÄ†·lSâžŭ]턒]?’.½`’×PȌ(sİĦŭ>^•^½­×ҜË<4+Wu[蔭¤½éqAΞŝîíÑÇW´Á”__Ĥ0ŒžWÜ Qíî~Wn5{á7µµżÁŭ;òĝç4HèpÒkLħÛç`pĵBéîİç5}ĝ4ë‚ë[uĠ)ÁL1kĞĉĜM}ĠĴĜĦ@żÈ†Lú½ğHÄ[ÛŭĞığI CÊFQˆ<‰‚&ÓĞ JÜjWÚ6
+Tíû5,ZcWĴúûQNÁc›V9%W~\²èÙ½ŽX fğL]Ö3 ÏNièêʧé˘PĊ.ÒaċĈ·ôZô‰ ~pMĦĥ—Üĝ8Ĥ<Ħĉžƒt¸ ÂYÏA.8cìŒùèr‰)ñ÷AjĝŽ˜`ÖS"1ġċĴşXhŭËT~ÖÖ öägÄl›!‡%ìVitESĥ
+5ò²Ûȕ#ÎÍY’%C7·5
+„ğğo*Gŝ2BU7šjcñ›ŸÎ›J}›İâÀiĥ£¸ùÁAğÒ§ŸËÇú
+endstream
+endobj
+456 0 obj
+<<
+/Type /Page
+/Contents 457 0 R
+/Resources 455 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 407 0 R
+/Annots [ 449 0 R 450 0 R 451 0 R 452 0 R ]
+>>
+endobj
+449 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [321.904 426.355 362.748 437.324]
+/A << /S /GoTo /D 46 0 R >>
+>>
+endobj
+450 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [366.027 426.355 388.275 437.324]
+/A << /S /GoTo /D 46 0 R >>
+>>
+endobj
+451 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [268.596 117.388 309.439 127.459]
+/A << /S /GoTo /D 70 0 R >>
+>>
+endobj
+452 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [312.719 117.388 378.031 127.459]
+/A << /S /GoTo /D 70 0 R >>
+>>
+endobj
+455 0 obj
+<<
+/Font << /F101 257 0 R /F96 255 0 R /F106 260 0 R /F104 259 0 R /F97 256 0 R /F95 261 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+466 0 obj
+<<
+/Length 2633
+/Filter /FlateDecode
+>>
+stream
+xÚÍZŬÛ¸Ï_á·ÊEÌ?$Júp\W×ân‹+äkÓĥ[2$9›Ċ!˙{gHJ¤ljכ"E_VM g†3żùàĤ‹Ŭ"]üô*uÏî^}÷ĥÌ’”2‹ğí‚
+A$“ ™ĉ„²rq·YĵKîöşĠËOˤêìSşF4M”èzĠĥzc_>-Y–¨ĥRu˙zùáîoß½@>Ĝ%M‰,%`èż§\ĴĠİŻšúPu½ûö?[”°2[Ĵ(á0k˙léM˜– ĥ½6˜HöĠzo9Ú4Úq^7½eĵŞ×­>ÂfvßkGZN8e†¸t?HnÏIZŽ+Ŝ§)oÔ@óñ#ÊJRR>|QE$ÊH–êY7çş×í2ËbÔ„Ñbħ*‰È³a,ŭéñœi 0ŞêÚèĜ)d9)ÄÈĈĦİw½ş?蘂3’§Ù°R×K‘&ŸŞĥİQ}]Œ6~ÁŸ=à‹m
+NŠ|Ôd­ÑŠ>-i–€NwdŬ eT°ĵë9ĦXN„ĵUÉÂúMƒ~Y–Zû‡eŻ(HínażŝôjñÎĴèôċµËaW³zp< ġfĉóKëÊ%Ĝ‚ˆžÒHîB2žJé Ë V¤R’<GʈÌŝüσVJ•ĉèndìçÚr³””yyğ7ài[‚á™O|A™Oùx7ċGüAr*ĥ5e„ò‘ğc³¤hĤġ.vĝIY>,Uí’ÉîŒĤĜÁÀäŜ ߁>ö{¤fĉ+'׺İ{>fߎçAŜ{ċ€RÑ´K‘%Íŭ’ ~xÍ&-I‘.J€t™O·†ˆŠ8xNÉϧƒŞ•1<sâ ´”l‚Í6ĉ48,‹8l„+‚eıG<k^HPöË2†ËV
+Ô÷Và ÙĞ7„Ìá|€J
+BP0ÛÂ~˙û²H”]bjµÚ<ڗuƒGġ`ß&Èà‰àLŝĜ);ŬŸO‘Ŭ‹”ˆ"÷ q<Şzc·Àcè´~`‘GxĦ/
+­~‡"áIÊ`%< P°
+@Pĉìe+`be Á~f-ĵ·GíXĈQutpúàž;íiğ=D
+·÷ÍyĠwĦɨƒ[¸3ž+ĈI=ÚÈċ×`ôÉŻâ¸a4ŒÁ`ß)½Ĉ’.0P}NAA‚”ÂĊ•_!Şï!ü@`}=¨Éé¤{„ùìdŜ^ê›$êĤ›ı?úİ
+oìûĥií@م…éĤ™9w+–˘×Ŝ üĴìOC6/.•7ż$¨‰áü­tóEŽî¸4#jÎ#œTÛWëóAµOzĴܒĊ˙
+EüXA}o×b0ŻıLĉ°Ħ ‰ĴxF
+)@L¨™cà+SŠÛŭßX r[ÌéĦêTTáFB sċÍ÷¨˘œ&Í,éLĦ3ÖC`fÈĝ"Šuc|.[żÄ|ğ
+¤Pœ€ †—ğWè²?[™ğİ "4 ]^¸äÖĉ 9x3u?<m‹jÏĥÚĜ™Ĉ}8äÔ0<İV5¤š}Ÿ´áŬĤ-00ÁŸç9ŞZÛWÛYMĈiĜ"Ëé-ÙAĞö™‹Ÿá³ BGğ?V?ÙP|Dû@A•ûġíKßEJ0JñÒĤ]ĴŸ”[şıg÷ß\e|Ó;–Û.5|–´Ê%@bŽ·…àŒîŸ†èô?~ĵ{ġç
+endstream
+endobj
+465 0 obj
+<<
+/Type /Page
+/Contents 466 0 R
+/Resources 464 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 467 0 R
+/Annots [ 453 0 R 454 0 R 458 0 R 459 0 R 460 0 R 461 0 R 462 0 R 463 0 R ]
+>>
+endobj
+453 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.064 684.558 208.591 693.652]
+/A << /S /GoTo /D 150 0 R >>
+>>
+endobj
+454 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [211.285 684.558 243.388 693.652]
+/A << /S /GoTo /D 150 0 R >>
+>>
+endobj
+458 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [372.631 605.965 410.607 616.933]
+/A << /S /GoTo /D 6 0 R >>
+>>
+endobj
+459 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [415.047 605.965 493.589 616.933]
+/A << /S /GoTo /D 6 0 R >>
+>>
+endobj
+460 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [338.033 263.83 372.142 274.209]
+/A << /S /GoTo /D 66 0 R >>
+>>
+endobj
+461 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [375.418 263.83 447.374 274.209]
+/A << /S /GoTo /D 66 0 R >>
+>>
+endobj
+462 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [462.795 263.83 496.905 274.209]
+/A << /S /GoTo /D 114 0 R >>
+>>
+endobj
+463 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [143.731 251.615 217.831 261.597]
+/A << /S /GoTo /D 114 0 R >>
+>>
+endobj
+58 0 obj
+[465 0 R /XYZ 144.727 646.308 null]
+endobj
+464 0 obj
+<<
+/Font << /F96 255 0 R /F101 257 0 R /F97 256 0 R /F106 260 0 R /F102 258 0 R /F104 259 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+471 0 obj
+<<
+/Length 1586
+/Filter /FlateDecode
+>>
+stream
+xÚÍXYoÛF~÷Żà#YX›=¸ ô!š"}(Ö@Q¸~ •D€"U’Šcŭï™=x,EI4/ĉz5œÛٙoˆ£]„£Ÿ.°ŝp}ñĉ]&˘ e‚Šèz‘4E’ÊHb͢ëMtżKë&YQÌcmŝù˜ŽNnŻ~óŽ`2QÀ b*íöÍżK×Λu~ìŠşjuw:>n‹ŬİÑ˙¸×Có\˘T°ŝġû„à¸>•gÚj2Kçeéöş½žúĠ5ıĜçĠĤ,ޝûq ŜƒµŝQH2Z‚2ν—SQ ÂÇEċžN5,Ĥ!ۍü6[Ì}e4öÏ9.–°ZQŠ2’N €İĞîûö
+3ĉê£Ŭ€Œ2 )Á{ §}AċPrĜŠ…SUÊĈ :˙vEBûP]ž˘q]•îW[;Ì’´ƒ2ä_jl)Ù%ÂÛĜêä„{ÇĵéŠġİÌ'ŽHÔLÍâ7ĴD™„ĵµÀfpL2ëûE§îŬÉluŜùƒ1Ab@+Èì ‘ùİÀ¤(<_BXüs$ù€pnR sġ^o܍!ÀÂ-F,˜¤ÌĤ?GŒ€G‚H§G>—’ò‘EЉĝû˘ô†íé™EPùÍFPùŬVUwnáNpĵér´KuZ”íJ€ œû•1ˆN……eRé0
+‘ñĝĥĥCŠM›ŭ—ğ„âĝÔı ×Y‡ëhĊ䓯UÛé|ZÈÙÉ|2[•v‹i·û'³r Ŭè½ Û/R ’"1Ŝë)X (ÈQ(c^ĜßĈKwAÀş‰üƒ£ ĤŻÛĜaQƒéĈ-Ç lïTŬ„eoà ]î^GLĴ™ _Èĝ·Ä7Ĉn†Ĝoż-à˙;-`O°ùuYĉìV ³ İŒĵÖĝYsS A+ސH•W ĦŜĠ'¸xÌ˙z<ħñUè"˜A&Ybo“ ˆ3 –ùóĝn8¸Qìx42uA;˅÷ /ÛÚĴ tşĥËh[î(‡%U†RLž“Ĵ£J@£úGï÷Ċzïŭ9P¨ZŬö½H˜!cà‚à“I+oŞħÒÛÙžĦˏ.ˆ *xĥ@F†pFŸ  £ä“äœ.Œ@f†ÄÜ{m›ħ/ۀ`X³‡PÚ£^& á”Îíg&Ûĝ‹ S*(buîívG½`>S€ Z*"”Aġ Ê_B2ŸÍÁĝFğVÛ -íxjŽu۷݁u}8À„<fĉäCéA) îOğŻïçİùòÈ ĊŠôĵÏ͵=.ò{‰x&^ÏïŸ>…É )Lg§:è\ċfž†aYÎ#e\oÍ%ÙjK[W hßûÎŭ²Ó•nòN{ÁÜ= ”™…UöólÂÄÓ<$‚dž§¨4ĵ,­w‡*ŭta•wÒy06ÙÓ6Xĝ7ÄbêO˘g[Ĉ?u[X 5pË'Aœzn$Ì 7rÉ>ûġ2íˆ3ġ<ëz‹Zú.s–Ó60¸ôġĊß~!§6ÂLÑúpqs‹£ ü ’ĞèŜŠ@”€ˆ™Êè÷‹_‡ïv
+endstream
+endobj
+470 0 obj
+<<
+/Type /Page
+/Contents 471 0 R
+/Resources 469 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 467 0 R
+/Annots [ 468 0 R ]
+>>
+endobj
+468 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [224.129 488.909 230.305 501.933]
+/A << /S /GoTo /D 472 0 R >>
+>>
+endobj
+472 0 obj
+[470 0 R /XYZ 162.66 139.255 null]
+endobj
+469 0 obj
+<<
+/Font << /F96 255 0 R /F101 257 0 R /F102 258 0 R /F106 260 0 R /F97 256 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+477 0 obj
+<<
+/Length 1334
+/Filter /FlateDecode
+>>
+stream
+xÚÍWIoÛFûWÈĦ`Mfápq‘CšTA‚˘Ŭì
+jñŒMëN-Vu¸ğôé½Ĝ4ŝRİ­ı“{ϲ“•çnLŻ•{hċFĥR•2
+îX7K 5ĝ~ÂuÏ2w°:FĠïW²q#
+>/w•Ïğp^ï@Ú4ËfżjŭD.ŽÒ<ä"Ey‘?Üù)NgTošöW RWÚŬt€umŸĊ+éîúNúáùLĜÚγ7ì•ê޵çóŽĉ!‘f ĈÎ\I5K0²mÔ^*m`c,~ïEZy,`;'ÛÈ 4żRe+áêˆr7sÒ`ƒ4¨½Hĝħiŝ.›^iœ}ċ
+sÜw½¨ë÷ïşQž{us̞#´”2DÓ|œ=/ĉ‡qH2”S2ĵ‹99w²ğĈÂ) áŭĥق°ÎÏiF΋)%¤¨”Ğ \€°örŠRöÌd§(cƒ‡!¸FVš°0ìl:ħ÷Ôħèì<œe;=×ħ8ïHÂËï]êô:°GÁ’+ ı+}µ½VîRš|ù*ö‡Z^üPU­äĥR·VŬµËc=Á|ïÛ×í9öË1+ĜMÀŜá8Ĵùc*ZßŝD=x
+ġ}ïOgɳp¤İ.“Ȥŝ ÑɆĝÔ°iêڍß½0äw××zšcnÁ d()<žËYpH[vá3vœ)Öž}‹#<Áˆ'FmŽ8ż[­Ÿñ£°LrŸĥÄĝ‹Qn
+†ĝë[93Td`şÉ J(˘YLĝÓN–kŸ-RèÍ
+ŒyĉĜè”ç÷ċÙ?E:Z
+endstream
+endobj
+476 0 obj
+<<
+/Type /Page
+/Contents 477 0 R
+/Resources 475 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 467 0 R
+/Annots [ 473 0 R 474 0 R ]
+>>
+endobj
+473 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [161.906 117.388 196.024 127.459]
+/A << /S /GoTo /D 66 0 R >>
+>>
+endobj
+474 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [199.304 117.388 271.269 127.459]
+/A << /S /GoTo /D 66 0 R >>
+>>
+endobj
+62 0 obj
+[476 0 R /XYZ 144.727 649.336 null]
+endobj
+475 0 obj
+<<
+/Font << /F96 255 0 R /F101 257 0 R /F102 258 0 R /F106 260 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+482 0 obj
+<<
+/Length 1746
+/Filter /FlateDecode
+>>
+stream
+xÚŬXKÛ6çWÈĦrħfù()@iš-ZäÔĝ ›ƒlÓk5²dè‘íÖĜ˙Ŝ)ËğÚ8IÓzâhDçĊo†äÁuÀƒŸžp7ŝ°xòŬeĤƒŒeZê`ħ DħD&AÂ52 ëàm¸ĜšĈÌĉJ¨°hq”a^ĥ5qr^ÍŜ-~ħÂĤİP˜Ž™Q X˘HóaÒqGĊRĜg~œ´ÀIAÄ"ĝ?—LF’ĝ/?Ĉˆŭ†ö_Ġ}Ġ™†´[ċeiÖ´™àb´[™ä)oרШz³,ëĵ›P.Ġ,ċÒOżÙĞí°]ıĤ͖Î5}kÖDmꆈz&Ĥ²ŠÏŠÁ&Ĥ
+–Ċ1‰Ü÷ÍnMËfó,ÊÂ˙ˆC\iXŬĴ‹*onéëŠÇüŠsŠĠ5| â›jñCÑÔĠÎT]KܢûfÇĦûjMGDWÓĝ‡iê‹Ù<z`Ġ•!b÷ïĥĈoÍeÓZ˙€+Nô_yÂL°Ġ)xë2 Üîf&xè>ŠŞ-Ö(Xj·0[‚œ PÄ­Ï=Ğ­ŭ/SŞtĝÚ1 :ĝ:̀Ÿ&â-3ÎâTĝ^  AŸˆwœħ$‰ŭìù”ÄıŠ9Sħv~4ġħRӉ—WTĞĈĝ Ì/5d/~ÙHpŒ:}ߋ81oŠn[÷Ŭ¤â˜eâoôA|Ĉ!óWġng-”1İÙMŜ@j†e×4bÊ2<V<|^Ë`àÏwûÒ<}\ó½…dQĴà,J&|è?šU™7ĉEïŠşz•/MyY7ğĵ;`‚ßžŠ+İĝS‰sórż=œ"ÇŬŬÔÙÀÉ+’Vöû·§‹ŜJÜgc÷ùŜî3áĵ{2Á,†‰àLhħ4×EuèòeiîNÂ?„,pKN’zdÀáùl9DÊĝ*zÎOĥikŞġá¸Ï(˜§•
+bëq•éĜ—<5°’òC­žı„qİde2eJggu‡ P9RLĝŒE\ûr6—iIĵúX­pה0Ù.Ÿ‘r*ÁOBB[;OÛeé´}Ù]TNÔÖNöw?Ż¤TÖ<Ñ<h"~sN]
+„ÚܸXMâђ_
+ÂÙp@à–ıĞë~— Ä%F.Wħ YS¨<yY[‡şÏ·Ü ÇŻşqÀìCÖĈIêE“;†i
+Ó ÛRâĉÄx_ĜS<ZŜ¸,ìVCb:²‰•%Œ+=Ùĵ>ċLgyh ÜġÛ)ˆÔL)œŬkêâžä$ŠÈ! UŬáôÑXMû—áĠlXJŜÂßiĥ—Ğ3ò–GğŬÚÍ# ĴâxdShı°í‡È˘márĊµ/\<—·4ĦoíIk…ÈàêĠAmΛż?à+o
+L¨ pßÒB WĈ´VöÒE‡+k‹
+F“lĊĞ“ßzLST´ô}(É4e"͢ÒùF5Œ3`KşlĜĞĉŞïl~§"Ĵݽ§ĵmëU‘wfMß.Ĝ@ıĥ
+ˆÛ½£Ş|ç(ú
+ǜŠÔkN>r-v†ŝ‹Ŝ|péx¨ìgì=ñڕÍOwÙ£M:Á³„ĥ’òdÉËĊ“?Êô
+endstream
+endobj
+481 0 obj
+<<
+/Type /Page
+/Contents 482 0 R
+/Resources 480 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 467 0 R
+/Annots [ 478 0 R 479 0 R ]
+>>
+endobj
+478 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [372.289 506.257 403.977 517.201]
+/A << /S /GoTo /D 483 0 R >>
+>>
+endobj
+479 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [351.699 321.493 388.032 332.437]
+/A << /S /GoTo /D 484 0 R >>
+>>
+endobj
+483 0 obj
+[481 0 R /XYZ 326.859 552.726 null]
+endobj
+484 0 obj
+[481 0 R /XYZ 327.138 367.962 null]
+endobj
+480 0 obj
+<<
+/Font << /F96 255 0 R /F101 257 0 R /F106 260 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+489 0 obj
+<<
+/Length 916
+/Filter /FlateDecode
+>>
+stream
+xÚVßo›0~ï_´25žmÀÀ¤=ìWĤMÓĥì)íƒ&AÍ ³ŞŠúżï)MÛġ!²ċœïûğÔÙ8ÔùrFíúayöfÁ(sb .œeĉ0áxNHa<v–ݳr/˜çĞ"ŬgùĤİÔŬìrùíÍ"ר3gŒÄA`.ÙœtXÚ @G70ÄZmò˘ ‚ËBçE£ÒĊ”z"Ĵġ`<‰—ÄNäµÎËbżÜĉU:› J]ÄìËÌĴÒ,µŞrU·Dôîı<Í€#ħ結Ì{/–3ŒD^äÌ#âGžı°°9˜óXÍ=Fá´Şµ9ĵ ”&˜Ò,&q”.È#rÂ
+‰…ċOÁZ[XżTRé˙â²QžË#aÈN•X\Vó˙…•%œT>Ş:g4$4Ša“ö ŝ(µzÛ×À`Í9a"
+ĈÍOsċr:–wċ^Z@80Ş´ïw~ksµùl<ší}Ÿ°MMËFwΊĈ¤ëéaǨk™ûšaùîmÙà&pofPT²ĉX—fŬZBÁ@;iŝHR`9S•2w×N#ó?Żvf›SŒĊñ:&{äÀàj£Çĝĵ -{İ°µàÇ*ƒx^Ğ2%^x³›Œ
+ŽB⋣™ò¸âÌğ§8`e ÷]™iUáĥOÁ›Ù­+%ŻÎaïa™ĥġ§‰ìÉÍa]ú]2XŝSš°ĦŞ×6ŽĴ’mŽÄQSİ›:/6SrE¨B|şâG8Lz‰ÏÍwÇ a0ÙF´ĥ2tUœµVҎĥĥ<q“”ÍΞŬTyWüuùGY
+endstream
+endobj
+488 0 obj
+<<
+/Type /Page
+/Contents 489 0 R
+/Resources 487 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 467 0 R
+/Annots [ 485 0 R 486 0 R ]
+>>
+endobj
+485 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[0 1 0]
+/Rect [439.935 558.693 450.893 566.926]
+/A << /S /GoTo /D 429 0 R >>
+>>
+endobj
+486 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[0 1 0]
+/Rect [179.686 495.541 191.641 504.468]
+/A << /S /GoTo /D 490 0 R >>
+>>
+endobj
+487 0 obj
+<<
+/Font << /F101 257 0 R /F96 255 0 R /F106 260 0 R /F104 259 0 R /F102 258 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+494 0 obj
+<<
+/Length 2397
+/Filter /FlateDecode
+>>
+stream
+xÚŬkÛĈñğ…€CQŞ8möE.ÀÜĈh‘q>PÒJbM‘,Iù˘îżgfgùÒñ|wµŭ"îcvfvŜ³â‹ŭ‚/Ċŭ÷Ï7Ży'¸\͔ŽäâfC͌4 #&d²¸Ù.~ ôr%8çÁ_o‹ċJ†<°Ċ!-6öh‹ĥYŝzó7ï’h‘°$’"á €b\†tüÍr¸ vKÁƒô˜ċgœGAı£ġMy<ĤĊĥĦYÖnU—KŸ²­ŬÒN[Ò7Íór)à–
+Ĵ<Ô T0y|ƒ>§Cà7Ŭ[’)Á 97­=Ò¸ĥ.€44ğôġQJGĦÁZa’§k›_„ğŭè̘PWiJòA2jtd6šxi·ÓÉo-Ĉ7³ŸË §hZÀ™ÖÛħÍĈ3Î{Ё+gĊŒt•dÊĽ†ĵ7Bà[uí)­Ï#žœ&‡T.6i&DŻĤNr3ôSIOŻJ7IYhKͳœ`Á"ŒòÊWOĝğĝŭŬ•¸’W
+Ħ@?sf&uÂĝ`ŝĴ1@ p”#¸p‚f'!úH‚„ìS Iâƒoš7Ñ”V×N’0ù„1­³´hŻÍ d`JëÇCÛÀœƒi ˘@İzKúÓ çc(Ÿ k̞*¸=d›qµIĦ@ñü“ħá"­-Ü=Wĥħ­żrAßâG…p òcŻ™·nÜT6ZŝG]
+ıX$duäıû„.`ë6Û¤9ÙĤùĴ
+/È­ w“OäÖÒٜ‘I˙?%ĜËĵ*gHĊ!“ê˲*$—Rh4˘˜B•2]
+Ċ!r„ß½u-ˆŠşüıuʁ8rQTÑŬÖ²=䲀Kİp÷§ÚÂX“Ç"œğ£&§Ô̄ZtAmĤ›¨íÂ1ô|ŜÑOǵ­‡BÌ`bEf„ìĜ‹oşÑċàôXċöÛgY³€!„ˆ'RÒĜœ×ğd"[4÷wÈ·ö·v½ğğ’÷ÈÒŭ\™€`Ŝħ!ŸŞ;çĜäÒŻ{”×nJ‘×˙>ÛûÉ œ -pÄ yüÀJgOr&Y÷–ĞxoPŽ†ĥiVÈ?d­SôŜŞħ[L7´ĦÔ•Ä JËUV|ô Ç²l…mšS¸7]„Íxá2Âlž{Toü’MiR€ŠÉġtĦ
+0’+ĉN_˙‚P•M“­³<k3Ç^¤MŬİ=ŻvµE›Ž++´ÍHhÌyîl6ĵmÂúÛS]VöËêAÚ£xŬ´´żÏv­ß ˇµÊÖ;hˆhü-OÏ´áÂ{g
+#V陯÷  :9Ğ8Ĝ/Ħ ĤÚKË|G+é1Û6-­úĈÀħO·è~pÛ˘Ħ—BQáAK§? Mú˙f›ĝ Úç!Ğp7hfìpzÒ,2Ŝ™ß%m4e@mÂQâóË5úć“>ñá Ÿĝp½ï7qâäŽ
+D_£r|€ìà Ö´b8z>kOġŝ<xAäˆġç­vîŜ1p›˙^nEùUġòùêQrıˆĤ0΍•vâ1b[6‡Bj¤ÌgÑ921ĜA y´!B>Íëô„§"—fad ñù]ÜĤş.ëÏcıs´iŬ*ä!=êI׺ˆ°šıž7=iXĴċĤI˜ ċĊ…$2°£/ċV:ċáĊ}$ŝ0ÜGŒžìß{gë™‡<Ċ½ëä‘$µġôÖ½òN.hl=ôEÙu ]3ûGÖGY´ñA²ĊġgßĥôĴ³Ï\Ħf<éߛÌĦywŠ™
+£Ñ;׌3%L¨ŜìÑf’ĉ½â.žÈžû€%°Ë†2îŬŬ Ÿħ>HĊĦC˜+Â*•ŜMĵ"Ñ
+endstream
+endobj
+493 0 obj
+<<
+/Type /Page
+/Contents 494 0 R
+/Resources 492 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 467 0 R
+/Annots [ 491 0 R ]
+>>
+endobj
+491 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[0 1 0]
+/Rect [484.125 343.89 496.08 352.817]
+/A << /S /GoTo /D 429 0 R >>
+>>
+endobj
+66 0 obj
+[493 0 R /XYZ 144.727 716.092 null]
+endobj
+492 0 obj
+<<
+/Font << /F102 258 0 R /F96 255 0 R /F101 257 0 R /F97 256 0 R /F106 260 0 R /F104 259 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+497 0 obj
+<<
+/Length 1873
+/Filter /FlateDecode
+>>
+stream
+xÚĠYKĈïŻ àC¤`ÙfżĝXÀ?v †ÄAœCKjŠôR¤Â&ww°˜˙žê&Ej¨‘Ö;ÈeÔ$‹ġüúĞjNìƒ(ĝŝUäżıġċ]Éb÷y@… K‚$Š eYpż ŝµúħ|·ĤÑJŻ™\}(^‡LFЇĤÇĊVĠ¸Ĝé_˘ˆĠ§ç-÷b=Hğ²ñ^SıúĜáUŜ´Ġ™7ëß˙ċh‚cħ°Ž…YB"ƒÛÎ_(ßémZŭ-* í[g„%YRJ2)Qö^ìîœj+ÁG Z›ğĝû÷˜ƒ„d Xt9 )çN‡Œ}
+~ÂཟZu}НA&IDSo0Fá÷œPojžïáƒ;e]X‹,  á"ğà)ŒO˜ ,™NJ"h2ä§r8-.'i,‰Zô‚AC½Py*Ċ5‹Î`2nöeÛì<hzSÖ{\~A4C”\°Ğîĥ½ŽİéBâ”BÑRB9EÉŻğÁµ×£îwŻ;ƒĞV+µĠ;ĵúPv…ÇqĦŸA7qH‰À0#jäìŭsMaO½ÀŞÔFW¸4ú¨ZĠ5­™8ĝÛ7HÏ÷ҏÖĜσ™EŸ×êNXĂ%‰/Yœ+^T³? áñu„ËÏDĝ‚š”
+Ô×=µÑÀ˜œĊŽešŜ]$Ûû˜LNá’a;öʛşûj!°,Ĝ(
+;PNÖĦäÙêç €ĉfĝµO\Xö‰gHğœ0äRI„$, ŝ§WğŻ
+xÉží4‡’‹ùY¤Uû½ŜµċèŠ%I¤˜ÛpĜ%A˜EŜPĉĥ tš²ìZžo›‰ŸĴôĈÒ0-1á36š’'Ü3Ë4fĈ<ĉ|”W•Ĥ-gû§‡Ĉö–÷öϐ‚9›ü+ûÄAµk
+˜(ëùà˙ÒtiğĉËpd,ˆ”éœ$ï@ûMU–Œˆˆ_ĦFĞm™„20ÍŝŻñ5Ô3N˜íASLßYL6í ~ìë³!{€š9ƒpwĂÇ4Dœfvs°Ûda32“Qj6ÉLtĊ$MĈéh“/Ċ/ˆcÍoĈ`|K„Ï{‹.$\.xÁ(d<˘W ħÙöı`v“£ÍMnt[jsƒÙĦü0,Rw(™žéê •ŸpĝĤ…n2œ}Úaö(Ĵ*s}ۉ˝‹äS>ïíXí
+endstream
+endobj
+496 0 obj
+<<
+/Type /Page
+/Contents 497 0 R
+/Resources 495 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 498 0 R
+>>
+endobj
+495 0 obj
+<<
+/Font << /F96 255 0 R /F101 257 0 R /F97 256 0 R /F106 260 0 R /F104 259 0 R /F102 258 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+503 0 obj
+<<
+/Length 2124
+/Filter /FlateDecode
+>>
+stream
+xÚ½Ûn¸ġ}B@°¨ Ä\‘))@€Nğ“Á.Šb1ɢ(fĉA‘)[.†$oÖ òï=‡¤hɖ3™ÁllRäááı_xk/Ŝż ìĝ·ğ7?Ŝ$ÒKH"™ôîr†!‰XäE$”%ŜŬÊûè˙{Aià7ğĊ’‰ÀÏÒÚLVêS°Z™Ż}³kÍĴY0á?Öôĥ/ûÑġûRufŝXô›Ċçğ_~ĵĦġb @†HÁ2‰HÀ%§ïŝDyĝ“ÊÊ´U7¨–xÊ ĦQì-)%‰öÑcpÍ%6ED˘8ô–œžğH£{24&ÑXHLÂħ$:6Ĉ‚ä$–b€¨ÓJÍàa”ˆÈĦ)Ҙ˘q²xŝ8GŒÀĞiIWĞıKËĊ’& -Ík7ƒ9b„&_&Ïaŝüôíä9ϓÂù×HË☘· I8
+,@î
+DpĞLdDā×=3ùŝ÷ѐ=6TFÄ$ŽÂWgŽЃ‚Ê"áTvk¤1Fv̊$"tüĉ³të!èKN­;kŞmİzĞè²èz<Rc﷍KHÖ
+ëÒk­P ÚD-P·UY‘ïgĴŭqSd֞µuĈ+rôğ\µŞî§ˆ@›qžˆFZ•°˜[rbĉ<5M“ĝÛ9^B çËÙK&/‰Œ
+=.ñïܧ6€é†˘ê$ÙBBŽdĝ…@µÀ&š·mĠr(#­rÒîU$ë„ÉiÒ>WÂ!iÏ?h@Ù”–˜ĥ‹ĵÈR<qkĞ´|Y@Ú­ġZ°í??ÍĠL„'zfŒDɔĥÛĤR ĝzm¸Ĵš!Ĥ•fàHġúêğ³^íµŝ^àJÛuQ_‹Şş<#ˆÏ?ÌUOyS÷×yÓôàeŞ+ŝĞ.Ëô^•zıË.-Ŝ'
+RÉ- !ä]€†&…›{o’Hj@ŒƒUüĵXJĉż×˙żÁ?ġ?èù;wîp$<ıòwà3ŭŻTĝomŜÚ4m?aÌÚHHĤœQAg÷g,">%™;’e˘I–Ò/mü2zqöZ¸Ż?ñ*8m˘,&2
+Á—4˙f×Â5–>ejÛî€ép!Ô, Il³î;W9:Càĵî"iK‚H˜NĦٕ+³>*
+àK·'0nFŻ1ĉX:€×ôUéƒÙğWŭ£Òµ8Ĵ"+‚[û‚İQ7@÷Ĥôë'tÁı&1Žà°QôsuĜĦ 2­Ïŝ{‘6ĥU{“žŸ.èC0ü]W—f(|!,“8é>Œá\XpĠÜbĉÓ¤3~_„ŠplĤ“ÚÑà¸v$Ï—8ÇGĥş6PÈ GŬèpË| YœŽh½‡\İ‚Œ1aÉP…Ħo-h<`áᕣöp’Éħ}[zĈm
+|ühÏ´9áì^’â›ĝiĉpy[Ô8™WPĴo ÄíÌöƒ8öhÖÔĝäĦa7Ş,5*]rê›TjöÒ{ô‰]½Jñ·]äN‰Ŭ6]WÜ%t8š:FŝOğ~żÌ[…Żc’c5ğĊ3i^ JŬ݆‰n¸ŝn×6[ġ—ĜKgöŒkèWĜ_yo7´DpmĞÚ|WÙKc˙×2Ŭ› ] 4"5×d<ŝšV‹™ñĜ×Mş~éä‘i¤qħ)s³’VĊJ—N|È)8ŠĦ™* ȸĠĈ;:* ˘Ú‚6;[Yá+Û@ĴCÛÛ[A˘í³—jEgs£ç¨£ZÑĈŬ‡Ž^”mŜw/.ft ñé3Š{‰—“Ĉ§~áш’²×’%$Ž-ULN€ŜŬ½ùӔÚÂ
+endstream
+endobj
+502 0 obj
+<<
+/Type /Page
+/Contents 503 0 R
+/Resources 501 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 498 0 R
+/Annots [ 499 0 R 500 0 R ]
+>>
+endobj
+499 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [400.077 637.79 446.045 648.759]
+/A << /S /GoTo /D 30 0 R >>
+>>
+endobj
+500 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [451.526 637.79 476.761 648.759]
+/A << /S /GoTo /D 30 0 R >>
+>>
+endobj
+70 0 obj
+[502 0 R /XYZ 144.727 304.7 null]
+endobj
+501 0 obj
+<<
+/Font << /F96 255 0 R /F101 257 0 R /F97 256 0 R /F106 260 0 R /F102 258 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+506 0 obj
+<<
+/Length 1455
+/Filter /FlateDecode
+>>
+stream
+xÚĠ—ŬoÛ6ÀßûW†ICĴòC˘¤
+‡oéş<ıï|}‹‘Û%Düa`ÜŜgy.Y@œG—G틍y,”údüIóÔ„ôŜï
+^HÂIñ•&¸ğÏĝOĠ&Í`³u')íƒN˜oU‘MRĉ È&(@ÄùÚNRX'°áŞħ>ŞîWg*=›^&•Kç0ü:KÊ}–ïLñĴaŬꨧµîG ¸ò=
+#ÚĠûŞie²ı7‚a._<-üx\îÊ]mfsaÚˆYôçÎ<ŞŞ8Ü&jô6QÀ×Xcîp´È+ОÚÁ=ĉV+qÍ?Ûo!U<r~V}’($ɞâ]­V…,ŻM‚¤·&g|R' ™rĤ’…Ĵĥm†ċaĜáÌÒhòV‹¤–ß›¸ï4Ž˜N_éiQì Á§sWôŠĦƒî/kvÉZ{î‰({/ô}cŝĵ8 #ġñ,ÊÓŸÇ_{œ…6[pJ)¤Ĵ˙ÑóĤYšÙ0x6Aǽs“ž£÷Ċĵ>£ô6wY0”%hlY÷UԜAü"rá‰'-fÑM µÑ,ş£Ŭ( èĉ„t£Ú [›ŽÏútÀoۙZtk[‹nN(˘[ĞŬ(L­5š°â3ў³[ĝSv Ŝ³à1b7 XvƒŝŒŬ06b7Œwì†n ì†E£ŽÖ†PġçÙ̀=ğ7ìÖJÍnÔtìF­É'ïĜàÖĈÜ(kq n­°~ìÜh
+Ĥí˘4´ŬXÛ.ŞMÛġñ^2jğ8‚¨Çßĥ3µmWÛÚĥ†ĥ]½ĥ]›ĥ]µ]OpŝċuŬèKîşXۓŠ‰˜ó`úH@î\?pô·xèġBĦÏ6oN˜ :íŜÓ0j;ĝĝ˜n^~o˙
+endstream
+endobj
+505 0 obj
+<<
+/Type /Page
+/Contents 506 0 R
+/Resources 504 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 498 0 R
+>>
+endobj
+504 0 obj
+<<
+/Font << /F101 257 0 R /F96 255 0 R /F102 258 0 R /F106 260 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+512 0 obj
+<<
+/Length 1793
+/Filter /FlateDecode
+>>
+stream
+xÚíXmoÛ6ŝž_! Xg1Ë7ITbèú2tè‡n3°N>È6m ы+ÉkŒÀ˙}w$%KŽœ¤0ì ˘É#y÷ÜŬ#İ·ö¨÷Óuߧ/?0ʽˆDĵéÊcR’‡^HÂxäM—Ŝlôŝ.ÎĥİO¸OGb|3ŭùċ‡(èÌ˘Ŝ„3"Biċ§'ğˆ·uRäöG­ÇÌŬĠöWµ)véÒĥׅŭ&yíZu³BŞWnB—cĤFë$˙a<ŒŽŜĜŝmQUÉĵÑ*ÒŬqËŻc;î3ׯPùÖŝĉ‹ °.„Ú$%³6]3!ßéE—ú­µêCQfq}ŸĤñöpĜşżd—üp)÷6.¸Â‰üดCĤÒġn{ż2+½ĈùWi<×i·ŻżìâċU•äëT§I½¸}‡ĝ'C
+żİĴÑħŭ”şÚÊ}ħÄg­ëžßÜ
+ir‹rşqMRġa4Ú(&F)ˆŻ|£Uè"èC²Ŝ•M
+z¤KZĜDAé]ċVŒ›ĦlžäñqóbeÓ´Ï+‚ Ş
+ù§3Çeñ-I˘˙ŸÎŝ=:ë—ZÈgg(²äsŠĴāÚÉZìGÛ]‹·í@—
+Z[Ġxñ0›ßĜ³qYÔĠÊ= žòdhn¤óeğùW˜6¤g&nħ”‘â›ħl+%wÚ³
+,Rß˙Vç0$!UwBùâŭôɉzÌ!”ı4ôÌ Á"ğĝrg5ċÜHtšf¨™ç:^~̘÷¸ĝŝŽƒT!ÌħÙ ġ–0°
+qÖò
+…ÇàÊYÔAß9)
+' I"
+endstream
+endobj
+511 0 obj
+<<
+/Type /Page
+/Contents 512 0 R
+/Resources 510 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 498 0 R
+/Annots [ 508 0 R 509 0 R ]
+>>
+endobj
+507 0 obj
+<<
+/Type /XObject
+/Subtype /Form
+/FormType 1
+/PTEX.FileName (./cat-eps-converted-to.pdf)
+/PTEX.PageNumber 1
+/PTEX.InfoDict 514 0 R
+/BBox [0 0 36 32]
+/Resources <<
+/ProcSet [ /PDF ]
+>>
+/Length 678
+/Filter /FlateDecode
+>>
+stream
+xœUUKŽ\! ÜżSpDÙ`˘,F9Bo²™EVı~ü£'£ÑˆĝSU6î?mt´áµ>ĝ÷ßèsón?Ÿ¸oh?Rn ŬÏ@û´Ŭˆ/`v¨6:+uÔh§rç1N{=tìDOÛÒEĠ,tÛڜiÁtón,}bóàħž0ÎĥÇÉ=éñP†„xŽBE|-rϚ9H¨‰§I뵛l9ífn^…n/;{cWôe\ŽÛRäĊên„ qŝäĈSżƒ˜qeÄíh„ħÒ1Qrĵ‘%qê1ñ`û6Ch
+Ĵ•"%x:BÍĊ½_’İp‰˜’>ÎİBe"ƒ+ĵ·#nQ°·ŭ§4{'çË‚o…ÂÊ&0âËÍ9DnkĤÖ0?H.4)^U04<vUÇ í7–7 ˜qn…¨
+éLâ‹r½s%=Œ¤Ë¸Ŭu³ÒñÒ$˘Lp/ĦW ›í6Ÿuo*Uġjó¨ö:ÛJŸcêÍ/
+q$¸dE½'#ÍÒ bµ‰ ÛkŠ›ċ.4ŝèâ)U.P’ÛU!p
+Ÿî³´ŒÍÊRœ’ {†çëħ ğÖL…R‘&EĦ­‰"‘};{{5ÏèŒĵĥGÜHݐŻ"DVóıJOöúWğĊƒfy8à”™ĊȑZßÖ4$ğġpö½Ì¨ŜŬOk:+^çNÛò&+LĜXËĊ^8ò‡‰ÀN’oĜ‡
+½-Z–—­1?9Kĥ~lŒLğÏJ;gFFÛ­y–Âñ ×ó™“V)ëS-HÉġŽjH"żÌ°NĴ_\}6¤+ĞËù³˙ÏËëùŭüz>žžšD 
+endstream
+endobj
+514 0 obj
+<<
+/Producer (GPL Ghostscript 9.55.0)
+/CreationDate (D:20220213204814+01'00')
+/ModDate (D:20220213204814+01'00')
+/Creator (COREL DRAW)
+/Title (CAT.TMP)
+>>
+endobj
+508 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [450.365 150.322 456.542 164.545]
+/A << /S /GoTo /D 513 0 R >>
+>>
+endobj
+509 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[0 1 0]
+/Rect [376.144 119.329 382.122 126.757]
+/A << /S /GoTo /D 515 0 R >>
+>>
+endobj
+513 0 obj
+[511 0 R /XYZ 162.66 129.79 null]
+endobj
+510 0 obj
+<<
+/Font << /F102 258 0 R /F96 255 0 R /F101 257 0 R >>
+/XObject << /Im1 507 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+518 0 obj
+<<
+/Length 2434
+/Filter /FlateDecode
+>>
+stream
+xÚĊY_ĥßOĦ·ĜÀš)Š’8 )-šĥénÑwTkÑkġdɕäŬ[ŭî™á %Y–7Û˘EŸD“ápĉ7˙è0x Âàû›żżıżùú;Ş@ji£‚û µHT$ĦReÁ}|XĊë puw:›ĥ·Ċz£âpU4ÛÓÁÖ=ŭÚVy×Ùnŭéŝw_—™ ™Qy†ˆ05Äí~_vëM”ĈĞÎnû²İéÇsYU8ÒĞÇr­âĠÓZĈ+Kk/͉97¸HíSi‘ŝ™Wvôí÷–¸Rⴗr qâÊP)Èk"”WZ˜$ıĵÛüè¤ĵĵX¤D˘§ëH;Ŭ-R›H&BĞ`#Èâ˜Hž÷9ÊĦR
+ż™nñB³yĠÚĵàp¸ÖÎĥDÙ:ÂÇ5(Ħ-Êú‘ˆX88tétr@W–6Zĉ³í;ZbMÛí‰Ù?ïmM“§ıÂs鯨 cLümIeݧ;ĉÛÏù£%ì<—ŭžFpĈᖆyÍ8£KıİÖd4ĝ{ד°rŞúŻh޳}7èè×iG΂L£Aö Hž$Ú£9*uÁQÉ)G (ìÑ:Ñ`Á‹s½ß=ñ Xvh£aœ:û+Erb{¤míħµoUĞ} ž°÷ áàÄa ƒ=ŝŝĈİ;YJT÷Fƒê•öúŝƒw§›÷§ÖY3@הéıŸ"!ù
+3S*-²xÖùİߓ–[Nu5LjÄj*O74[5ÍgšİÊϸĠ
+
+cvAħÜ:÷ƒİ Œv‹ôÙ6‡#<”UÙżÔŜn?yî.TÖ]OK ô`“Î£ĉBôšGż1ŬğòGŻÄÚĦ
+cpÀ41fH%²‚Ĝ8öħóO^GÊ]ŻX÷ŻÄĝŭúKŬµ0NŒt;é‚8Äh€€Ċ1[€×í²=ÄE[Üú8p3Ĵ2ÜȆ wœşA<ôWü:U\È{œŜ¤daê†l-ä-l!Ĥg³îĴ}3oó|\ßù Û/Ç*ŻŬŠXÀç†- Ôc|írGħŞ;m÷4Êkú–ġ 8I6çÈëĠ‰5„â,ûüŸg9ĝùhûùYS9–vD`ûéŒĉc§QüşLio—Êċ '—.Sş|9óe|8—ólêMŒf7-FÚP˜ĝmwœ,”Ŝx|G_ l Z!DŽíŽv[RÀ[œÇK£„Š"9k‡`³âU ì=-ZJ‡l)jÒΐip*§‰yP
+ġıѐf< 3ĥB¸€ıç\Ħâ&ĤŠM„L"Š a&’4şĤĜI1"Š/lèP‹ĠÉö²†Z²‡ÖÑxÇnߜނ¨‰Ĵ‡ğRnˆ ûF…N|r Y~wrʏ²Ìwz0ÂNosŜäÁ,µv&ñĜÈ •–[¤ĉTÈY;k+fħ£/HÜÒħ–+ޝÔJâÒ>Ż™ëóSÇ2‚ïV§bÒWNŬ –˘ì &€ò@™Kl'Ĉԍó@ĝÑ ²JĠê`svrXš4b [sü’GÀ€›q“Bż\Ĝo íğ üzx™™oPˆŬlqÈÔq@굜™S‰ 踀– euĤWŝKaˆVİe‚I°> „†£N6bépO‹r èÚğúAÒI3Qú,w†X• µE׿TöŭCŜÙ ĊĦ&ñ¤OeÄP*÷BÄDe¤ÁIٚˆ=û†I ıKÎ „ú‰1òŻ’P„cħ7„S Àċš
+à‹1۟Ž?7\â/!…™ħÙĈ8C\îÙÉ\x…œ”o
+32K.0ŽG
+Ż3hŝfÀ‚êwŬ6
+ËÙĤjê%BLYċÚ"T(PK¤ĉIöĤَ]S÷ï½êÍUĠ×Ü|ÏU°a²Kq˙Œ{û˙·ùPFo·àI워ë_‡f…Ŝġ†ĞáÑñX•–§ûĉµ˙ ĝìâ#0ĝ ×uCŻ타bù“)ÄÒ4ê
+çëi8BÁÜ<$JíÉüŬâɐĥÇRċ_ŭċ£Wş£sġf;÷sXşĉê:…ƒsuŞ˙›ĞË,ƒû½ĉéPü ù6W—ô,>‚ŝ’ĞÇ˙W˜ÊmŬAÖ´Kqä?ġĝqí=0˙5'nœE|·)šoÚÛĵ¸ĥqôVşÊü0W%ğ}~´Ż½‚J‹Ú?(|…ÎĝTeg[À?ï_
+endstream
+endobj
+517 0 obj
+<<
+/Type /Page
+/Contents 518 0 R
+/Resources 516 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 498 0 R
+>>
+endobj
+74 0 obj
+[517 0 R /XYZ 144.727 716.092 null]
+endobj
+78 0 obj
+[517 0 R /XYZ 144.727 392.808 null]
+endobj
+82 0 obj
+[517 0 R /XYZ 144.727 239.323 null]
+endobj
+516 0 obj
+<<
+/Font << /F102 258 0 R /F96 255 0 R /F104 259 0 R /F101 257 0 R /F95 261 0 R /F106 260 0 R /F97 256 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+521 0 obj
+<<
+/Length 2361
+/Filter /FlateDecode
+>>
+stream
+xÚÍZ[ÛĈ~ß_Á§‚*ĴÉÜ9À@ .Ú"ŠŬ—ÂġEVìR¤JRÙ8Fŝ{Ï\xġhw 'p^VähĉÌı|çŞĊÉ}‚“żŬàùŭŬÍ7oµLÒRòäîÎQF³$Ş“ğ}ò.ŭxóŝîßĵ%˜Ì6S¤•B~aüğ"?÷eSšş÷Ä3Š2I†eUmĥŒˆtgüggz˙7ħëF’Ğù}uӞòêÊmB#’Û_eFÒĵŜG%Á
+‰r4ùŝÊš#ŞFqâ<k”i=§ÛŬ1?›9d"Ù§A÷ğ›-8íá tÎ8Ggoì–D E%PAšùċŬ²FJêdZ½YŽŽjĜ7Ċċd@tÇ@Qċ]g:` I 'á.Ë=ϐĤċHsî)ĵ½´Àw{jZ°°`ÔIáNyğ!*½/k˙îÁ s`°+ îÌLħÓ}$H‰‚ĊÊzoföšŽ(Sş:4m`¸ÛöÇĵŜ6µÙVe흀 1nÍ:Ÿ
+wt›-'™sŒÇcYŭĞÂ>Y!ì§Â>\‚j$èˆv."lSŠ°µxp<èlĥ—aÄ'ñpˆj° E„‹9
+.$ËVÂ.u/T&Y6áw–{V +𐽠JWĉ3È DaùB<Ş-Išxɨ—
+锉 HÚîh` c€F~2mäëáĠÀÒİšñ³B€"i4ÔŜòK(ÔyŒa`wŜüpwóżK'dĴ¨–§›wïq²‡/!9éŬÖ „Z­UÉíÍż|yıÊxHX
+ ĥ‘LĤwÇÒôB =4 Ŭj÷ñÍĠàMû`Ûs%ÓK]™ ƒ%VútĊğ­a|gı˙Ĝ—›ĤuĞ]ò
+µ4Ŝ5” ˆˆŞáú1Fż‹y
+x–}†ÉŞħáÄBž5úX!ĵżbôl MoËş°zRäši˘‚½  ôYv^ë 4‰YĥŒfCUya (8ƒËK÷D'3ğċA#îĞ“)Žy]v§WQ7‡ĉˆá…£C °´WŝdĦHAÙ
+ĤD"ŞVÖ­;)•İ ñ¨p“Ù "Žİŭ7WüFȈzßpDYû£ì\îştĈò‘ڍ]ĝ0ŽÜ·›­R,½5ċúú!wnİĜuŻN™ıx?“ö‰žyÑ*½ŠwÓLÏ7žCÓy=ÇÚBËk‰şïì“AĖháûx‚Äñ–†!ëşB Ò^Àîß­)šûşü˜ġëüúµñ†îéç aĝ—Ù2ُÉ.LfNùùlš›Jڟšĥ5Ŭıݧ™M¨
+fżDĴ&-8ŒXä0b::°zÛÀgs›„şi⟀œŝäŝŝèŝqƒ(ÜÇmіç>z_f'é£9żµżaAğU´yÛUhàĠ÷eçĥ˙¤3+Ú]Ó<Äô§Ħ%c̵f‚À×ŝPjë"ñԇÙ8…ĊK†?”b÷rĝól_|ħuRÌC4ì’ĞX œ˙´¤Ğ0­ġ—(IĜ0]<‘„Ì{oa£ı˜J>=
+endstream
+endobj
+520 0 obj
+<<
+/Type /Page
+/Contents 521 0 R
+/Resources 519 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 498 0 R
+>>
+endobj
+86 0 obj
+[520 0 R /XYZ 144.727 576.824 null]
+endobj
+90 0 obj
+[520 0 R /XYZ 144.727 268.771 null]
+endobj
+519 0 obj
+<<
+/Font << /F96 255 0 R /F101 257 0 R /F152 522 0 R /F97 256 0 R /F104 259 0 R /F102 258 0 R /F106 260 0 R /F154 523 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+526 0 obj
+<<
+/Length 1794
+/Filter /FlateDecode
+>>
+stream
+xÚĊXKÛ6ïŻİ‘ˆ!İw=$E7hÚ4(Ö·4@e‹Z3‘EWuĥżC%K^:›
+üJT˜˙şxúʤĥÙNı_˜¸ĞMŻWŝlŜRZ*ÎÇÔŭɨ=ÔÀQ–ŭÎħ{‘(JF}ÙĦñFġ¸o7ŞíE‰rLȏÒÔˆ6%òQí¨'+HL}²4'Ò²8ÓċQèoUóqhĈìƒà(ÁYóvĦDòˆ„ÉԇĥĈᅌ„<ġĊöSq' Bšù7C ÖÛ=¸ŭĊ½ eüğáh ıs$xž&lTìu%:ÌñœdY:j.CAS.,RoSVlÔ½p—gS~p—áa´pŬˆZFuq²SXLQnħ
+ıU{
+´h"èÍ`1Êsq›´Jµû˘żl‰ q‡ş&4Ûù9Ô”ç¤Ëµn'÷Ä §r'×ĤjtĞĠÊiġ#°YÉmµ0­m…Ìé²_*Ġô×cıoTì‚ÀŞıbӆƒ0tSŝ„…ú›^ğ5—û½ĝÜÛïLœ³ïÖ°4~v>·ƒħ¨4WHŸb˘ç…ÚÁ˜~ârÄ_
+ċZB^âlŽ–.rË£9,:£]X†ZK²S÷k˘ħäM4ş @H=ñ½”-W? Š²R€3Ü9&Î(ÖiŒr¸ ˜3ĉpYğëbH
+ĤwQ˙•2(­!-„5¤$´V†hœĠzPƒ²
+Êş.DUĝ´Ì;ò{Cԕ]½<Ğá8á|Ù³~RúÉ4·!Ÿî›fSĜ§Âv bBĝIsşzˆGya
+ĉÁy?íЍ,\&Ëlä×ÍVŸU6ĵ€m|™ŬÎ2>ğÁ’™ĜFG´Rg /?%
+ĞVíOFщt^À,’=UKÓpyŜ(käúĦógò[Ħ ÙÉàÜñp鸍ˆyħĥù€$ìŒY 3wL=ìLJ§‰6^gZħX6ġñxĤXárX‹/ËR⍤6ċÄGÚÂċo'•äµÜKìAšÛîüë"ŬĦÌ4`^âKfÎÀ–¸tµ‰á”Òx!8ùK…[! ÀKİšgÚû~ôÙŜ\1·YĊ–Ÿ˜ ´L€ÓŒ UFU9JW™í…²Ç§mPüaŻ:ŒÚŒÀ7ê"›á€öÄ ÷ĊgÈ=äŭZU• 8áv@ù“(ĉ‹6@3húċÀ/€I¸
+DĠ7PÚñ~ŞÊ‡ñ³é?­ç<2Ó°Ü6‚N76Cĥĝêö_ÏMŽ%
+endstream
+endobj
+525 0 obj
+<<
+/Type /Page
+/Contents 526 0 R
+/Resources 524 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 527 0 R
+>>
+endobj
+94 0 obj
+[525 0 R /XYZ 144.727 547.116 null]
+endobj
+98 0 obj
+[525 0 R /XYZ 144.727 338.203 null]
+endobj
+102 0 obj
+[525 0 R /XYZ 144.727 236.473 null]
+endobj
+524 0 obj
+<<
+/Font << /F102 258 0 R /F96 255 0 R /F104 259 0 R /F101 257 0 R /F106 260 0 R /F97 256 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+530 0 obj
+<<
+/Length 425
+/Filter /FlateDecode
+>>
+stream
+xÚuSÁŽ›0½ç+|4RíġĜĜĈ‡^"u+ġ̭큄aƒŠpFğùû QVKN3<ÍÌ{oĈòFùyk<–‡—W’8îŒ4¤lä9·Ò+ éHY“ßô8µ]ÍÚ>cR Ú`Ĥ!ƒ‚âĝ-AU_§dlkdĜ4xcö·üġòêÌtA˜nÌ:·ĵ`Ĉ”Ôô\]Cëûù#§]uÂ.áïCÏUŸ &`Ѐ÷6\xt˘‹è R.T@ċ+ËЇeôW… ,×YÛ˘?•+v…Ì@ӏ 5Œĉ a
+endstream
+endobj
+529 0 obj
+<<
+/Type /Page
+/Contents 530 0 R
+/Resources 528 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 527 0 R
+>>
+endobj
+528 0 obj
+<<
+/Font << /F102 258 0 R /F96 255 0 R /F101 257 0 R /F104 259 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+533 0 obj
+<<
+/Length 868
+/Filter /FlateDecode
+>>
+stream
+xڍUKOÜ0ïŻÈ­^İ1;ĥ“J=´ VUe•Ja°!^%Y˙G Ħô²ħÇóüĉ›Y–\',9_ħĝŭĵYœ dTdŠ'›Ġ\'š)
+ĵH6Uò›¨u
+Œ1rqĜïm?šjrÉÈUyeÚpܗۛòڄ‹Ŭí†ġŸÍ·“³B%-WÎ;KPr)ƒß‹ĤÛ:›L’ğ5Hbú £@{.žĜ+LJ tÍ?,DàTËbRÁ•­wܙ`,Kr4AWh"Fç“ÍĥôÙ/¸€(Í+Žžŭa…K3ÄoW™½ÁŸ.>L5Îf­-ĞĝÔWĤŸÓĈ$°[,¤w-s‡Ÿç+Ÿ—Ĥ…fàòJ!çx™aùaÖ\’û‹Ú”Ħ÷u'=ƒġRċ;Ae HñžÑ‚İ˙C§˜Q,ğj jP4×zR
+üYè!ĉ'`Ò˘“#äİK\zžĤšQŽyW²X ²#2µîאÓmw/¨j_ĞÀ‘¨R‘ô_‘5‚kò``‚ä)FÙ @Ŭûà ĊċôÌ˘˜Œwkëç÷Râ`ò7ħ“
+ñ‚¤Î˙}3îBۙ—!ci½‰ÇaÄ&–}4Ïħ4šÇnf”Cıç}ZâÍq¤JÏĊŒfĝžrÊ3ä§Qž£à‰ĝ—§¸Ÿh–C$oÜÛĥĤLrrÉ$³nt$2ˆ|îŽ3Ġ¸Ħ[Ĥ
+Żuooɕä=À£À*SŻ‘òŽSOàIqPpÌjBğu=Ìŝ RQíŒš÷Mۆ
+$îµıù— ²/ŻNbĤòI5]ò–
+ɨÀp„ĉ…Ù—}9"†ËéËıPuí
+QáFÇ:m9t­† ċw”;Tĥ{ç6ßLӚížÊ ŞšıqŬ"§SUĴ8&ÇÜĉùĵÒĈ]مM‘fÏ{ÄÜ`Ò£\í’J“4ÓG* „8Ò:ŬĴŝŽT/ß
+endstream
+endobj
+532 0 obj
+<<
+/Type /Page
+/Contents 533 0 R
+/Resources 531 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 527 0 R
+>>
+endobj
+106 0 obj
+[532 0 R /XYZ 144.727 716.092 null]
+endobj
+110 0 obj
+[532 0 R /XYZ 144.727 652.479 null]
+endobj
+531 0 obj
+<<
+/Font << /F102 258 0 R /F96 255 0 R /F23 330 0 R /F104 259 0 R /F101 257 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+545 0 obj
+<<
+/Length 2400
+/Filter /FlateDecode
+>>
+stream
+xÚ­Y[o¸~ÏŻ[ċbÌċMı@şE³hчíL€˘˜™E˘udÉĠe3Á˘˙½ç”,Étâ`ûbQ$ux.ßıÑtó¸Ħ›Ÿo¨ŝtó£|$2á›û= %IyşIiBכûbó9J·;F)> ÇcÓöĤĜîxL£c–ËM·ŭz˙·ît²ÑD'<A2t;cGàŝɸMŒÊ‚]‰°‡)+ ›íĤ<;öeS¨ F´V>ìv'ž·“uĝ¢Ĵ
+½Mۚ}ÈԜ$Lż›˜&ě"‰P×ĞÊl„
+ĥ h@&qt‹$â$67ó×½{fne
+çpMëŠ&[™şwy•ußíêoµĞŻj·Ž.\P:WSµ¸Bé‚Är om„€E>b K g
+ÚpĤİÀ*‡Ĵż •2’ŠóÒyNȝ*‰cÓÙ8}›
+bÄI@ƒ£ġhRş X*_ı•9• ÂOĴg…Ŭ(ŝıԀhJ…Ëżĥ ümì7ò1vÍûµmĠ{z™C3n ¸îhòr˙2Ġ}Ğbèä˜'w*7™u§cn/ŝŻħpmŠÛ|)ċ’Î>Ğ:símßó“ÁÛ."ˆ™-ė ΘÂá§èóêbeKÈĈŠëè'Ì xĈħ2^ċà¸ĈĈjUÙ d~Û͸BáÈĞĜŽÇıڔxq9ĥŬD°ċŸGĈ›à¨À-!ÈĠöê%žî°Ĉy߁áÊPğ>´ž-fg|UŸcdÇ}Ž’öùˆĴÚ­
+1…Ú~Çr ‡˙İÍ
+
+endstream
+endobj
+544 0 obj
+<<
+/Type /Page
+/Contents 545 0 R
+/Resources 543 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 527 0 R
+/Annots [ 534 0 R 535 0 R 536 0 R 537 0 R 538 0 R ]
+>>
+endobj
+534 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[0 1 0]
+/Rect [279.489 598.044 286.463 606.971]
+/A << /S /GoTo /D 263 0 R >>
+>>
+endobj
+535 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[0 1 0]
+/Rect [315.708 586.089 327.663 595.015]
+/A << /S /GoTo /D 429 0 R >>
+>>
+endobj
+536 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [461.027 509.352 467.204 522.145]
+/A << /S /GoTo /D 546 0 R >>
+>>
+endobj
+537 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [257.771 283.438 298.615 294.144]
+/A << /S /GoTo /D 138 0 R >>
+>>
+endobj
+538 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [301.894 283.438 333.933 294.144]
+/A << /S /GoTo /D 138 0 R >>
+>>
+endobj
+114 0 obj
+[544 0 R /XYZ 144.727 716.092 null]
+endobj
+546 0 obj
+[544 0 R /XYZ 162.66 139.255 null]
+endobj
+543 0 obj
+<<
+/Font << /F102 258 0 R /F96 255 0 R /F104 259 0 R /F101 257 0 R /F95 261 0 R /F106 260 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+552 0 obj
+<<
+/Length 2885
+/Filter /FlateDecode
+>>
+stream
+xÚĊZM“Û¸½ûWè—Ĥj„%
+ dëK3KĊ2Çñ§r÷µĵ5W›,•ëí•HÖçf_›Oĝ!Ça\‡bן_Á™{ErCÇúĝÔµW°ì·jozêîŻx²néÁ4Wioğĥ9šfèß\mt‘Ï…â³Mr-Xž¨@*¨ÚE$ÊrVÈI‹…püj#
+ɔ*V›‚yêD6,s.ñ'YŸÚŻĥU] Ô@•âıëàUsë>˜Ž:´^—ÍžF—äR
+Kı"R+ĝEİìòK ’€Ż? !?'‰lËšİӁ”,I9é £iïğòt2 È^,6m )rÜĜfÄĤb)nçùX5;
+êGè‚e™ Y.pkÒqD–pR- ò Ìà5è˘ì µ{c÷ö
+?³3PÎàì†Şmh´bb9é› Ÿ£´Áîӄé|ÒĴ—ršl)bŠOÚe£ĉli–pÀŞĜÀ;GÂQçR™y3¨Ğ§y ‘Ç6˜‘g,ġûßèX7C×îÏ;4U|FôĜĈ=7ú(_ˆ„yl n;Óµ ħë?ÈS–Èi·CKKÜVW Œ8v‹l˙Vġƒċ2ìq˜ž—„íHԆzœ“Ž
+ꤠXVkWN)0p<Ĝ‡cۙkêé)<À‘ĠàV™C9%V ħ@ħˆ˘Úm Ĝ}U×·­ƒöEn­kP‹:À~ojb|=Z½ÂS oá
+­ĥe7†Ĥ<şZZjÚċb)[[×C\nÉ}wF)Çŭ£ÒrÇÑû}…;+ë•“§Dšĝk•ÎÎs{ˎ:ÚĈ /ÊLĴ˙ѓÛñ}aëhvweSġG?Q$2gy:ÙרÁÇÈWŸ=Šƒhjs„] ĤBthĈuÂc°…´£<×+‚Ökç’+šÑÛ%ûL$“ŜŠğsmöħ ›b! &8öñŜíbÄ’–½ċL`œÇ>ˆZĜ<ò2C ~3÷ÄôW³ƒ4Ħy?âŒßíÎ˙“Ġâ:]èì{]nM}
+ĝòUĝVœ†Ĝ‘obMQ/²ağw|ÂCŸˆġ?Ïŭ@ÌœÄ,Aĵq{1È vâêY˜ĴġŞ/fÙŭAÓPLO;!'‚CDż'È!N]l,FċĤ#ĈLüĈ/è„uşEiIĵˆĥ¨VÚ° ş­!jiµl_“m@O4섌‚O2[#ŠŠJNêë§
+[HwÒځìĜÎèG ,ÏM§òKƒšL °Ħ1Šµ :½‹³ Ĝş· T2œ$Ż4 ’UÁˆyœš.³ŞÙÁsÎŸÌŞüè +p–‘aıœ‰MòĴx&½òĉpr"kWb8w(`ŜPË'`hË~Ħ·G6í@=[sWbü›ğrÑuılà cëê+š ›Ĝá fiñív
+7"4Ĥ`áìÄ4‡êöܙˆbo™A9Ċ‚P%“·Êm›
+Œ\…ñ&Ġbŭ#Â"Qĥ˜œhÌzóŻ³Ħ
+o‚i%xôäġžï[êµ
+ĊĈmOĤCî³ïïÍ^à…ˆEÇ䢄˘`ZH§2$ĵ ÏU/3$FGPÀ7é‚ŜL3@×ŝşÀç01ÀèÛ£;ßÁÁ2 ĵ~M?uuĴ†ÒR†… $Ż-½!ÖÖ#7*çħkÎßÚñ÷<µ¸¤Îħ‚e5£4SJ„`êmŬLX@Áçâ?C‚MXŽ"BäpLY’ċOzÁ„/tĵ Œ¸á÷´ËÎ`Ô`ü…"FVQ0¨œó“K†"‹Yf֑şÊœ²„ċzaÀïjÒòOMpÇ´„7žÌ[WIé¨á˘Ŭ,½„äL€ĉ'(# À™]F4ÄĴ< °úŠŻħĴ _˙h£XxܧĦçüj
+ĤÛlzĝ„°ċuaÏ8Ĉd`Ìc ½5KÁÚcġï҅Ìî=ŭ̎/ŻÀÛP£Ùù~0÷öXnÀïE£€
+!uZd/—UĊnLÀŸOçä
+ïSä Ŝß#Ĝ†ċ×9VÁaĝŜUÉ·C£?Ù
+öË@Ä\Ĝ‚ĝ˘*IĊÒğĠ÷6 ĉΗ`Xë=tS*Î×6jeċ3s_‘œĊÌübĊK‰9×-¸V€
+endstream
+endobj
+551 0 obj
+<<
+/Type /Page
+/Contents 552 0 R
+/Resources 550 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 527 0 R
+/Annots [ 539 0 R 540 0 R 541 0 R 542 0 R 547 0 R 548 0 R 549 0 R ]
+>>
+endobj
+539 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[0 1 0]
+/Rect [262.561 686.709 268.539 694.248]
+/A << /S /GoTo /D 553 0 R >>
+>>
+endobj
+540 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[0 1 0]
+/Rect [199.123 638.395 206.097 647.321]
+/A << /S /GoTo /D 443 0 R >>
+>>
+endobj
+541 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [255.002 636.378 300.163 647.346]
+/A << /S /GoTo /D 122 0 R >>
+>>
+endobj
+542 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [304.028 636.378 323.734 647.346]
+/A << /S /GoTo /D 122 0 R >>
+>>
+endobj
+547 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[0 1 0]
+/Rect [212.153 591.374 218.13 598.913]
+/A << /S /GoTo /D 443 0 R >>
+>>
+endobj
+548 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[0 1 0]
+/Rect [230.869 238.615 237.345 246.848]
+/A << /S /GoTo /D 263 0 R >>
+>>
+endobj
+549 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[0 1 0]
+/Rect [218.703 191.632 224.68 199.008]
+/A << /S /GoTo /D 554 0 R >>
+>>
+endobj
+118 0 obj
+[551 0 R /XYZ 144.727 716.092 null]
+endobj
+122 0 obj
+[551 0 R /XYZ 144.727 623.043 null]
+endobj
+126 0 obj
+[551 0 R /XYZ 144.727 223.465 null]
+endobj
+550 0 obj
+<<
+/Font << /F102 258 0 R /F96 255 0 R /F104 259 0 R /F101 257 0 R /F106 260 0 R /F97 256 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+560 0 obj
+<<
+/Length 2709
+/Filter /FlateDecode
+>>
+stream
+xÚĊZK6÷Żmm`ÌM1@. ìğ‚lĤ Lĉ ĥċĥYòê1Á"˙=U$%Jjşğgw\Z´D‘Ċz|ġUİéĉqC7ßßÑpŭëŭŬ7ï­ŜXb5כûӆII 7C5aÜnÛûsÑğ=grÛ\û²İ;˙İĴ*?z‹SÛßOqúâèïĉÇc‰ŻċUġï¨mżcÛ& ÏáŬÖ½ü8TyöŞ‹°ÑİiwŸî˙ñÍ{FÙLX9ĦFQœ˜§òq€EÜÄĊĦ„!Öf´ĥè$ı#œ³qZŸ?TİĊ¸%Y6-6-¤7Lѧì…b„eb³gšXaüÔ›ĝvZ0Άmµĥ‚ ë([œÄÑq×KŜ>–ub-! ċêĈIgĞÁ0N{*ŭ9%XF´œfuEߗġnÏĴ
+–gVnëĤ÷·:thv|„Vs·zï?8ü…RŽVêü/ĦŸ„úîŜÁİŜ5Œœ/Íàg€(%hċWÁIK' .x­Êxçݏ·Ô‚â$£|<ß/LÈCîŬğè‡ëÇSĠäxbïVŸŝ“ӌĞ˘3ì™˘ñ’Ò<%ÑaO,iÇyƒ³8íĤè)‘áUĦ&öİĠ÷B[
+Îf‘TėVö˙İE„ħÏbŒƒô X…T‚ˆê½`DÑc†HĜ–RŠŽ&úkŝC@À€*3gF”Éž…„™ÌĉáâINz~aM.ÓÓÌk~ĝĉ}ĉ€ĥ*-B.~ŝŝfĜÈ1Üĝ„žŻĥÍiÇĠöT´}TxÄCn‡pĤığáħÜûûğ ĵŒ22%‰Ìì ĵœßNŜĠ…ŭÓKŠ4^.c[-öt.g/x]Çnu˜§s×Úìı2„gl³·Dj5j÷'Š
+ƒ•ŻĜÒ£&ÒîÇ^b˙âÔ
+SĴŭ/ıì2Ï
+İ•rhUH´§vÇ2ˆÑı
+çFgó§œ]Ŭ((($Ç.!Ek9:<A„=ÔáÀċ?ôó|íxƒÀ÷Ħ °ñĜ§6ˆ•PĦ"YœU8_ŒqÈ<zıĜµmRxĊH P8PY)2ï(òħ89 Ş>e° ò\d£UŝPT]qŭ.µ†˜qŜaqƒ‡°òdŻ¤&ôÜB6Éì AÍÛĵ•² 0*‰Ò&2"E'ĈâBjÌĤ mJ ‰™Y›ĉ›
+5
+vqħ:`ö,ÀĤŝ‚AŜûŸ]Q‡0Όrò”:Lh¨Èô›b@ƒŝ#Çt?ïÜd#ĝ†|ÀĴ Şĥ=°{+C>x?´n{iZ·Àh|_‹[&f'żî‹ßúP2 iWڇ ÂFŜapëdÜB½Iù´OÙ'vҊ%f^ÎUĥíÊú0ÍħbHO½Çb°ĥ„ó28EˆÌ.U*,-|
+0ÒBn~ŠÂ'$7ŠèX-„ @`Á-0pß[à%UocĝĞàÏLöFŸ);€p55ĤÔK…ŝTıï§YlŸ¸ĉ‰ĵ÷÷BGÌB-sıÜbÒÈW™ú
+Ċ.Ê0g~ĜÁ7kp{Raó„:zÔäğcE”P-#4ĉÌ  żr …YëùRàí”h3b¨ŠnÚ0ӇĦ½6]ñ.àL³ÂĦŞä*לÂÁ
+E”Z×Aéìċ{u£d²![W€:T€g‡ĦWàÎÜ;ŭŻW y'¨_:ı,‡B8òÙכŒĤşġ~™Ñ1fÌWóp"úè
+[ÚĤ AD-Äg>9tŝí²öwÈïw†n‹ùŸ˘`ŠàÂĉžw^{ŭĜtà
+àñ]ßİx×áR~E“',wÊĞ.µŜÎLí2Ù¸V2Ħò€AşòÀ°għĜJË j²bÊCı+n`Ċ•ıáN0·˙ñ çڏž‚GRŸiË"ÌpŽ˘ùbûCÙi› ŝ{×(ëŜ%;B
+ë95›cÉ|"äyÉÄĝÍĥ)ú Qĉy% òN.Ż `g|]üÑm ƒ1š‚Jĉ‘éBil<öĞ8{mĈ²=Íbmšƒ\ż^ùςĦŸ‚½Íek=“ ëŜ·£§(:Ö¨·zK@llßrE˜5ûĵ7 y äuñ(C7`Ïñ˘‚B†‡ƒÚXPÇbëŝ&c›ÊÜ FŞygŬ'úĤÀĈRj
+lâ1‡’żŬßŭ;À ›ŝƒ
+…•Ú.w?ÑÍBĦâĝĊ“›zİ rĤÎjóáîŸÓ?wÀ9 ŬqàŠÀ!ĝ:Tds\!$~À!$³âċ~ùä£u~™,pê‹6!•ċ݆iWi”–JòH·Äs’‰Íú1l„4$˜l
+endstream
+endobj
+559 0 obj
+<<
+/Type /Page
+/Contents 560 0 R
+/Resources 558 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 527 0 R
+/Annots [ 555 0 R 556 0 R 557 0 R ]
+>>
+endobj
+555 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[0 1 0]
+/Rect [219.646 616.018 225.623 623.621]
+/A << /S /GoTo /D 562 0 R >>
+>>
+endobj
+556 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[0 1 0]
+/Rect [225.413 275.213 235.376 282.752]
+/A << /S /GoTo /D 442 0 R >>
+>>
+endobj
+557 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [457.999 245.77 467.862 258.564]
+/A << /S /GoTo /D 561 0 R >>
+>>
+endobj
+130 0 obj
+[559 0 R /XYZ 144.727 651.718 null]
+endobj
+134 0 obj
+[559 0 R /XYZ 144.727 503.327 null]
+endobj
+138 0 obj
+[559 0 R /XYZ 144.727 309.678 null]
+endobj
+561 0 obj
+[559 0 R /XYZ 162.66 129.79 null]
+endobj
+558 0 obj
+<<
+/Font << /F96 255 0 R /F101 257 0 R /F106 260 0 R /F102 258 0 R /F104 259 0 R /F97 256 0 R /F23 330 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+566 0 obj
+<<
+/Length 2523
+/Filter /FlateDecode
+>>
+stream
+xÚ­YÍÛşżçŻíÙhÌÇo‰È!š‡=Í=$9hmÙ+D–\IÎĈXäï ‡’%/ġÖ}Ŭ“(jDÎ÷ü†ä‹ŭ‚/~gžîŜüúQpħpÌYiwğ…Ž%Ü-n™nq·]|^>œ›ìĜ³Mŝnġġîïż~tÉèŸD°D X‘ˆ‰Bp;"Q,µĤ§Èġİê" )θMz²"PŒ×Y;ÎákĦ™V–?ä›ìÔĉе4|YtÔnYÖġ·–ĤŽuŬ„;zvúae–çcŜ”ĊJ,Ğo=}Quáß|%ÌòGĥéÊ3MdŬx Ĝ¨Ğ4S_/ŝ…sı?5çĦËîËü-Ê‚…`Î9Îġ Hœ^n²Ší1ßğ3½dôĝŽċMWl²’fĥEÛeĠ&§·ûĵ{Ìó°
+ù 3kää QŝdŞúÔĊ2Ħ²LŠWÜg¤&ßĊj¨ñïeA…d¨1y°˘\Òg-í „#=PÁw•³KÈÔU€³8ßä-
+RâGT~߆„Ĉĉp,oLuV˜–AġââÖ÷ù¨žEUĦ"ŝ|Â9„½Ċĥ{ĝ9Ÿr&ÜŜàòWÇ4Ëî
+ì³~>½_­-çËÔ3Ŝo”£ój{a;ĉ)ƒ!x(´4$#ògFä##⸛c—çÙĦ5€1„.ï½çÁ§™’-S)q£,IZìŒpaÈ°XEAh­´Sġ’ è'û<ôD=w4Ġe÷˜M†Œïo(ËÜĉYéŸĴ>ÎyĈ¨žŒ\âJQü]qŜ͟uÀ4â€ÂñŜqè=
+SęŜŭ¸ğ"ż÷9
+Kù ƒÛ'‚ĠGñxu°c›Cg0]]³›ħ‚ÓúY$ħ>—)œ}’2}ñ†y ™ŞtDâĦÂğ]Vĥy á)§Vîu\úÊ
+ċ4ÈèĦ~A9|½@9'A9$ŸƒrkÁÁŞ2ĉʗyç£ĴÉ9Eqݵž ĦM˜’èŸ=ħYV'<;DĤS'—Ÿjúĵ4Šƒp"úa—ÚûÈî75 ßĴY‰tı?ÑaİV>áFÜhĉż-@CçK6‚uÁó‘qé<dęÇĤè:<ĈIÌH89“çĝ\’JÍN?bG"ş…!1Żáı6€™pžì7òlÀΧĥÇ­R+ĤŻqĞ?ĞqnŽ1ĵ!p“ÖħÊyÜ1Œ`ƒ
+7ġá
+KŬ/+cü)dŠ‡Tà€ ÁİÊI ˙İÔsêĈ†óÈĝÓşa’¨K׿r+‚ċa°­Ğ_Pğ½Ê­Â[VÑôŜœiX„İPúĊò°=(¤A$èŭÔµE?zäî)ú^Œŝß!Ŭ­RDÖe~)~2 I™DÉօë4Üi@Ċ‚’9‚¨
+’[… L:²tëÓm]žZá$Ĥ/œë*˜865(ëÏúK:!(j§żdôîĥhîÔ7SHiĈ8!Z‰F:H™pCQ?dç°c8Ĉ Ŭ–bpË
+Z*+›<۞éĵ`¸ò#ŝ‹^Żñš$½ö`yp
+ˆ¨Ŭp<žœQ@"€Uw›dĉê™ÂĊĦžÚSVö÷Ǐƒ<¤ÂbOp˔ĊÌaŭ„_úohU£çn1ÀİÀòäVMĜˆá "|Œ˘qĥŬT†|c(–”QsĴ€/FŞÛÏ…6WÜà!EJ—ù~ì&ä<p7şûm&Jıä“5^˘B‡€cišÒâ*™ŭġîÍ™êtï
+endstream
+endobj
+565 0 obj
+<<
+/Type /Page
+/Contents 566 0 R
+/Resources 564 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 567 0 R
+/Annots [ 563 0 R ]
+>>
+endobj
+563 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[0 1 0]
+/Rect [221.961 155.176 231.924 162.604]
+/A << /S /GoTo /D 568 0 R >>
+>>
+endobj
+142 0 obj
+[565 0 R /XYZ 144.727 188.515 null]
+endobj
+564 0 obj
+<<
+/Font << /F101 257 0 R /F97 256 0 R /F106 260 0 R /F96 255 0 R /F104 259 0 R /F20 426 0 R /F102 258 0 R /F23 330 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+575 0 obj
+<<
+/Length 2961
+/Filter /FlateDecode
+>>
+stream
+xÚÍZK6ÏŻ)k/Ú ß³È%Áö ‹ Ìômfj[v £–ĵ’<ŜF°˙}ĞHI”djş{ƒ
+A„ċŭ¸Sşû’³›ÍVQĜ†İġWü“ĠuÏËdÍĠ–+E´µĞ-cÄ*ċç¨ÜRMż+6^Œ‘D°~ħ‡§ìëÇÈĤ@zBˆ~\Zîc“1McĤ“5p€,6£aĄ•‰ß>Ó %Ħ!Iâsï>T›­à|}@Ñ .Öİ˙˙1-ÏiáÛ#màż¨K|NUèu*ŒÊ‚Yh Ûoé²ÓR“µçÓï-ÌԟČżc‚(#‡s÷sO”J­ú8QlM”MúAyT]iŝ‘Ş%, S4^ŞBBy
+í_–ÊJĜus>l¸Z˘”ïr/AèMKDÙÓcU#ö„fëĵlÚ,Ŭû×OĠÙ7Ê,ëşÚÊ?ÏM—.l‚&3é6mZ·‘s(C˜Nú‰*zŞ=ĝó}żàŭS·pÜà %‰A+‚"#Ğ2ĦBOÍĤ3=XœmÀ°¨ wĉ–7ħt
+Ġ÷îñ¨KkoÂjïQ„…Îs[=ĤmK‹âÉżF,œ…%”(ù˘³`´3÷áתœ˘Àß-vĴŞ}t0{@6c3o2µ)0šÁĤĥœvBÂ^wjl
+ŠĴĞ—ŒÛbHfƒ<äÇsĊNk@Éüyż$Ì0¨Mï‹èTà
+ƒW%hH+pL[nĊú—ÒïŬEŒ´Ù°uë;F
+/ıċFÎf’óîµ­ÏħġuB˘÷Ù°†qzsÏp( F˙‚¸ÂˆVê
+8qZ4Ġ°Ô
+Œ>”ÌèĤA!yƒ!# ßk@4Ž[ĜP˘úôïn|
+˙ésĊ9ászbnEÓvŠħĦz@òŒÎvĵKKßèR‰AbŭóïLŻšİx÷1lóïħü rgÉÌËó¸I^=™Š["äËäàD ué1î!”˜ó]‘ §­‰BR‡-—­ï[0S $Ô"Ê' …1ĉŠ7âÔÀ„Ŭj9b{şÚē˙ŻB2y)ŭ˜YĝĈ! ] Ĥp`W!›Ps ‘€ÏÂnĠäž mœûƒFŸaAOó%?5ÏĠ
+‘L$€bŜÛœŞ<NéêaŸ‚½=pL(vsÎHh˜ÌD(û
+š#"4GP:­?Q,§ûŝ+6€//ùîÁżżÏRܝGu;›ü1/C`W{œWcFD"ğ€ÎĊ(ĠÓ1ğ@Rnş Ó
+ŒY뉈Â
+×Ï*g˃ìnÂ] ’ÜŬNJp€X—çÌ÷îó>ĝù'ħí™÷éví³ƒsßü²œN|–"Š§ŭqħ€l5™cl ½Hc90=û’[kpVìúÖ wÉAÏ蝟¤z>+ìêe˘<s`hA}*Q.é@F+[@˜•cŸU˜ĦÀ}L°w܎²ŒÎR.‘f7 Jš-¤4–/“ĉy܆b—Ĉ[Ĥ!—×WwkÏĊĦŻR‘(ÄĈ×~‹aèġl•ċ%ӅéüsšîÙ cQR˙ŝ;3zÒ¸sÑ
+‘râÖ@žŒŝ[Ġf£rÀ(g·,d¤`3:ËpħMBNëeĈSŝ\•PÎÙŝoş"ó&à•Âĵû*v0ĈÇu[ĵÔżžŽî?ĴjüE ŞaÑBsû+˙Jĵ KĈŝ7j}{ÁÔĝĉµÀ0Oì]ùµÌr•B ŭ#ĥ ¤Ô D'³XÌŬ
+ë~#ÂĈĈ˜n8^ùè×ïKq‰}ċ9*ëM
+=`§=uĊ`lŸ}C,­•€wċ6*öŜ·Ì9M7à`툭Fƒá‘ĝ+³!÷wPHüÙls“ê"$DĞ˘]ĥüYÑ\töÌ߀ÙQ”­ŜŻKoÑëĴñFh¸]Ŝĝ,’ëßW`NĉêċÏ]Ŭ:žĥA(.Ú&?.ĊĤ]nR˘Ŝ xív!’É˙ĵ{ó?•ƒxİ
+endstream
+endobj
+574 0 obj
+<<
+/Type /Page
+/Contents 575 0 R
+/Resources 573 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 567 0 R
+/Annots [ 569 0 R 570 0 R ]
+>>
+endobj
+569 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[0 1 0]
+/Rect [220.757 503.203 230.719 510.631]
+/A << /S /GoTo /D 576 0 R >>
+>>
+endobj
+570 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[0 1 0]
+/Rect [228.604 313.883 238.567 321.422]
+/A << /S /GoTo /D 490 0 R >>
+>>
+endobj
+146 0 obj
+[574 0 R /XYZ 144.727 540.368 null]
+endobj
+150 0 obj
+[574 0 R /XYZ 144.727 348.661 null]
+endobj
+573 0 obj
+<<
+/Font << /F96 255 0 R /F104 259 0 R /F101 257 0 R /F97 256 0 R /F106 260 0 R /F102 258 0 R /F20 426 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+585 0 obj
+<<
+/Length 2520
+/Filter /FlateDecode
+>>
+stream
+xÚíY[ĥ~ß_á§BSĴŜ)ĉİI‘ ZAÑÎC€Ù}ĜşĥdHò:ƒĊŝ÷žCReә¤[äĦ`HÑÔ!yßGÑĊfA?ĦĦŭŝöÍ7ïċ ĈˆUŠ/nLJb¸YŞ vqğ^Üe†0z³d”Òl_­Şz_´7n˙ŝÍ;ІXCj‰Ġbħd9Q&÷/ŝĞÚU[˜ĵäBd}ƒ­ÌúÇÒżÍ¨„×™îuXĜZĜ—{ñ=˘)zlúÄRœÂ\3LŜЏĊĤ Ф K”ÎÇ7.Ÿ‚kèŠÑw8ôĈ`ĵEċaçŸ?L†ßĵNaäƒßHópUöPĥ?6œ…omÙùŸ‹z6\Üo‡ÁcµzôÓ׍Ş›Ŝwş}QO
+tC‡íW NÏKK¤V~ïÇjŬ£0Îq/-°p*§-pğÀNF‚ĉ‡Ñĉàgˆìŝɏġċ SÙŻ=ıY
+ʲwĝÔ´‘|ž­Ë¨ĥe½şĠĦëŞĤ“î›Cïeú“¸9ƒĥÊzċ´ƒ÷e,ËLíœeAÍî”rf!|E{nˢ+}ż/>Ŝ0š…§Â7ÛĤùzßŜ>†?Ŝ ÀŒváÀ$aàAŒô#\ğ„Óˆ0Â4éÖíT%Ž+üĝa<7r ˙âw×fFE=çogîFĈ ar·opI4Äï’Á.EXĉoÎ löԁhvDuï‡}€ÒĴ+ûŜuûrU[?Ŝì{Ĝ[çy6·qÀħhÌÌbôĦÚĞzŬ›Uš\3Ñ%Sò4ц “ h^(üGÒìSĠ6ġĴû.¨Uê4‹ì‰A—BZ.„ü\˘w½•Ê˘‡8v–äŠPaç3¨Ÿü ĵaf¤“ŭqHttímbW.ĵĦs~>>‰9ÑtĦF –…hxv_ŜNhĊğQï>U™XœRŠ1ë>Š· ÎŞÇŬ.p.Š[ŝQR•2áLҗÔZ "ïš#,9ċDŞıÎÏÎ=:ÈôÜöâħ‰Ïèóˆ0'ĉ½uIyÉŒpĴĥ[ßğ?û$˙ÊĠĦwİsŜz]ákĊvû’dÚ! ĥîÍÍÁ—m\¨’+†|âx\CÀħ(CpœRäD¨IĦIQŒBNŒb|›Ïó|Ĥ.oğĤ`Ypá )%8 ”saB7}ùí(pšÍ@5ĵóÙ4 ò¨‘¤]ÑnŞ:!K`ò•Ġ~ORÒÀLÓ|NuLšÇîĞzs³”\‹cÏì éħ…üħö=—£ħ‹§ëF0
+nif˘ğ4‰ ĝ–ĦR,ò9Ë
+‘WDúşì­˙—Bm—â˙÷%7Ĉş@,eP×ğC çjwM›Œ…iAĊ@ü%¸]9Ĥ7r
+Äk5ŝl´ċPéF÷ÙT˜§>ı@ n>Ĥz[ܗÛ!vŝ4ŒÖ‡Ŭ=Ïġ)ŬIÓ ÌH60}…€qÂ'·DÀ
+|Œƒ›yhŠŜ”m[­lòXŜ?E7Ş>N˜eóI5MÙd²œĞ‹è¤îÌ›%ÁŻĊYĉĝ„A\ħŒ2£ƒ't¸y Oh¸…öħ¸á4¨Ôݘƒ´h•M'ÒĎ´‰™GĥR€ A²öÛéŸö‚]jEÈ_Vĉ×kŽŠKŻË‰f  ˘ôKHócVpZ²ñCMtĊħ\—èÓu™Î‘`wÍùuŬ_PKxÖä .“‘Äî@àĦ ³ÑgDÌ9‡pj²ÄPqˆEY^9A·u³: $,|^ƒÍ³ìĜ?ĝğGĦh0Ğ_îŠ%~C‘AĊ}NC² \wcG0óËveóĞÈN]Ğ5c`ĴšŬÎg:Ì.b
+
+ĥiìP[X—Ħ{OÁY€vĊt’‰ÁÚ58Sħ~’ ِo_tïŽè‚PaÎoŜ'[;û¸Œŝe`™1êŸOŝü”]pç×b!êoGÑ3í{Şào·{Ëà<°ğ. ŜX¸²ùèíôBˆiHŻ9(B
+eCċlvŻ3ÄĦ”ábFŠì߇Şah[ANğs ]ÎŒdK9Ŭ1A˙Ч10Ĵ ³\d ŝÙC47ÄM[{&֖ûʜÏèŒ_ÔOòJBAó‹ŒĜĈi˘˜Ĥ+ )otĝ‹yiĵ˜Î4!áá(ĤViH˘a•ÏżËşË!İÄùq˘R w*TŽĦêŞîˆoŬ×Xá>Ĵ×Êzí>(˙}ÛK—Bäù 2€y§!IVA°tM’Œ
+˘X~r´˙1#;£Ĥıa1?ğüUš›ĥ
+ĝNB°%zş1pwMÌúğ l=uÀ^QÛfÓ:˙Ĝ'5g-a4ġ=ŸNáo Żžġ7ġ²„•Ÿ7•Ĉ/8bnޤÎĉµˆÌ36S0$/ĦUy8‚°³I?Üù]rCŞ
+endstream
+endobj
+584 0 obj
+<<
+/Type /Page
+/Contents 585 0 R
+/Resources 583 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 567 0 R
+/Annots [ 571 0 R 572 0 R 577 0 R 578 0 R 579 0 R ]
+>>
+endobj
+571 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[0 1 0]
+/Rect [314.985 686.555 324.948 693.983]
+/A << /S /GoTo /D 586 0 R >>
+>>
+endobj
+572 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[0 1 0]
+/Rect [325.957 667.625 331.934 675.054]
+/A << /S /GoTo /D 515 0 R >>
+>>
+endobj
+577 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[0 1 0]
+/Rect [352.73 490.904 362.692 498.443]
+/A << /S /GoTo /D 587 0 R >>
+>>
+endobj
+578 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[0 1 0]
+/Rect [372.876 472.086 378.854 479.514]
+/A << /S /GoTo /D 515 0 R >>
+>>
+endobj
+579 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[0 1 0]
+/Rect [223.632 209.685 233.595 217.225]
+/A << /S /GoTo /D 588 0 R >>
+>>
+endobj
+154 0 obj
+[584 0 R /XYZ 144.727 716.092 null]
+endobj
+158 0 obj
+[584 0 R /XYZ 144.727 526.54 null]
+endobj
+162 0 obj
+[584 0 R /XYZ 144.727 244.744 null]
+endobj
+583 0 obj
+<<
+/Font << /F102 258 0 R /F96 255 0 R /F104 259 0 R /F101 257 0 R /F97 256 0 R /F106 260 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+594 0 obj
+<<
+/Length 2374
+/Filter /FlateDecode
+>>
+stream
+xÚĊYK“Û6ûWèİÊD"¸Ê—ŬSÙ6³§‰Ğ̑¨İ˘HÏÎşòßÓ €!A#{µ—‚@£ß×ŬCW+şúñ ġżş{óŭFùŠ1bòœŻîö+&%Q\­-fu·[ŬŻab“1JéúT §cı­6ïŝúŭSĴ1Š2üÔSˆUĈ4ɕvŜüBF%ĴdJĜ•,'’ĉ ƒ]ôʖ‚Ċô´ŭV>V÷¸.Á`Ǜààï?Lùwî‚0óq“ ×Ŭ~óġêOŝù8Ô]ëÊv‡µŜvOOেÎŭneûXùıƒ Äuûĝv“IF×y$ÓEÙB~.$Ħ\Lĝ… 9ž*ü`•qÍ“Ċ*3Dı[wßµĠĦlöŝ_&ŭžĵ˜ÎĜ–p܀çÔI‹ƒ]·ŸŞvӝû}o‡—c'¸‡şuż BşÈÊ %qs^2K&‡£AŠŒ‰‚pm`
+ާ …Wŭ ì. QĤ8ó·uÖ2| ·Ŝù™Öŭnğö×ħŬ˘ĦŬ’çz8ĵ*+ )Ş´^’’‡ÍÏÄAWà“‡àñák°rĦ‰.8hC­p>×MÜZgKȂyqqúJoüo÷PžÜïÚoÀ ËħÈ&32‡ÈĞŭğmÙĈ‡8ŜıC^ĤmĞm½ÁQ`ê%ġY(U<<h‚çD‡Ŭwí>vŜ„ö
+Ï xXÂä2ĥHŒgOnä’öë,Ô-J
+4"íÄâfĉ{Ğ}íîô>ĦMénnBÛG§MĵèĜk¨î“$uĉ!"üÑyˆşá!
+Ĉò
+JA›.;S>toĦÛĥĊ•c I
+‰fJŝÑNŬħ ÷U9Œŭ†A‘uJ,~ÏHQ˜$)ν$cÙġŠíÜŽ(ù…í%0Ïg/>ËTZYööëߒ€…çn§ƒm!vO~ó1ş6ÎDgÏT‹Öu¤\4H–QÈ$4u_îı6CĵĞuìmÉY è­{Ş˙U.¨qfITZ6YüŬܗߔ!éóܜLĵÊħ™ĤKVpL´hÔŬ*(u=‡eêyħÍYxÀFħlh¸_ĵ@- Ԗ§ÛĊ÷Ñ1żx—JaӘŞÈËJ\
+ŽŬi_fÙ?.§Ô9²Dş‰|lÊí@u{‘;ƒPpòŞ!½‡%z¤!¤P;^(Öçcwú:bVSËÊl³dqD!™ùúâÈCg@³T3²-ÊżĦNJJĉBĞóÚş(ŝˆúĤ(Ċk%6x 8+Ï°ıZPSb Ÿr6n„Ş=(ċ`ùÁÒ IJzˆncÄ˙D Ñ pŝK:ñĵ˜Ynǟ’½mĴ°ç†[½ŬïÜVˆŽQ'ŬÑ ÊĤ~´] ò·áŸ J™—?)Bóŝአj!ˆëDzA˜Që‡n
+ÜĉJŭÎ4”ĥ7ĞnHßtşùž25˙f+ 7µ`ë yµċ
+¨­üâ¸2Yh ²uĈġ¨˙Rm›²Ż>4…ŭC;w˙ÒÂĦ4qĞÛäùÚÓϧ+˙Ö1†ßòçX$Î?í?4Ô½·Kꏕ4ZôŬ›?
+endstream
+endobj
+593 0 obj
+<<
+/Type /Page
+/Contents 594 0 R
+/Resources 592 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 567 0 R
+/Annots [ 580 0 R 581 0 R 582 0 R 589 0 R 590 0 R ]
+>>
+endobj
+580 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[0 1 0]
+/Rect [229.581 686.495 239.543 693.983]
+/A << /S /GoTo /D 595 0 R >>
+>>
+endobj
+581 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [227.946 620.801 268.79 632.677]
+/A << /S /GoTo /D 22 0 R >>
+>>
+endobj
+582 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [272.069 620.801 293.546 632.677]
+/A << /S /GoTo /D 22 0 R >>
+>>
+endobj
+589 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[0 1 0]
+/Rect [222.73 573.095 232.693 580.635]
+/A << /S /GoTo /D 399 0 R >>
+>>
+endobj
+590 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[0 1 0]
+/Rect [176.09 389.271 182.566 397.504]
+/A << /S /GoTo /D 263 0 R >>
+>>
+endobj
+166 0 obj
+[593 0 R /XYZ 144.727 716.092 null]
+endobj
+170 0 obj
+[593 0 R /XYZ 144.727 607.227 null]
+endobj
+592 0 obj
+<<
+/Font << /F102 258 0 R /F96 255 0 R /F104 259 0 R /F101 257 0 R /F97 256 0 R /F106 260 0 R /F23 330 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+607 0 obj
+<<
+/Length 2712
+/Filter /FlateDecode
+>>
+stream
+xÚĠZŬĥżżÂoµ˜á—D2om RA‘Û‡—޵ċ]áĵ’kI··(úżw†CŠ’-íî%4}2EŽ†ä|ŝfdş[ñĠoxĝŭË͛oß
+.WB0—erusX ­™‘fex΄tĞ›ŭêŭÚ0‘mĥ‚snûÛ_9—wŭy#ìşÜ|¸ùë·o]2Ì.ƒc.WĞ­0ÌjEïßÜBÁ5P
+£íĊ”‘pO”8ÏqU‚i;žŠŬÇâ|„pógĵ~ùñ PÖèŞ0óa³•ÚOçf#²ġ§j_ĥ8`Óİ9w´|hÎ4hŠ‘†4ċÖ˙„#ŝ‰ĤâI[z,ê= şâöù>VŬ}U‚À´ŞïŽ%-—{ÀyW[1›éĠÖ1kşĴç T_—ġFs8ûıİÊşc›­Ä[µ´äBq²ım›cٕßc]ndĥ~¤‡-ρĴ½oú~˜žS˜ŠİìRa3ڒ‚ 骺íÊbÏ:´™#\]3­Ñ\r¸p0—wU½ƒ;Àüş[Ž…÷ĉ°Ò
+ĝÛç,'íĦ“N\XqG áo”P˜íè÷ħBëġñ‰F·&ĜLıŻÔô[„77 •â)^Ħ ŻW²…KƒomÉïè`ûf×£NáHŠk°ŽŒ?ŜWğ{zĵ/6–[Ò ¨hO£ ™Í!íŠSW5ġŒ€ÀµœÒWB֟ÑK5hĈr9ŭ.î=f)™É\¤ĝ<³§ot²ïÏà´Ŝ[']ôĜœP"
+A‹ÑDŭ¸CġxqJ)YnĤâÜ5§*şMLĵDĥŸOċçÍN°…($yt?–E‹*Êû
+ÁĝÑ‹À– >ÒïLâıH҂ÍÀ¸ĝzĵ5{Í[ÏÉLÌÉÌPĈËPŽI90^¸dħ,3ŻÙ]/ì”ŬÒSsÀ˜uÀ›ÓÑ×]&kZ n‰*8ĊÑCìŞ“[~—a Ò0…”ċcž3L9G8!8Ŝżú
+S˜2 ôêĦòşĈ‡ żIb$GŠ=ÇĤ#À1£µŒ9;P^]÷ĦĞ=ÍÜ>]í>VÜ#…š°9Îqş„+^Ġ•ŝ
+C@Uq¤‡Ĉgş–|öoŭ&í/rċEèDĵàQ
+ G·ċa{ôë}yäÑĈ~_ákPQ?ìĠ$ ĉg˙ĉ]B(M]ĥ ÍıJžˆˆÇŸĉĴ‰˜Ĵµ@>BŠÒA
+ôwÎ@;9‘ŝÜtċwißì“
+9ĦıAv1è$B°^žîѲy@*˜Žı¤&
+u“JxĦ8ßUġ̍!mʵDĥeġÀ:ӊT2‡J,aÒÊ$g£D§m4@maBœòŸ,~\òı§b†£QHâı'ñY„‘İ°„Šĥ#†ċ–Ĥ}4Ċ‰VĞBh˜Ğ]V£Öœ$ĝôrŻ İc1 @,ÊeÉ.Áöxú™?ĜûL`H†qĞĉ|&‘8D’c4˙šXx}lŭ51e/™Ê1Ĉe1jg˙44ŭô
+û–,KŞu·ëùF·ÌûZä<:bFċ×_ `_²$ĝĵŒƒâĜ6túžS }w‘F%\†­ š"ˆù8ç˘Ĝ Ì_àí ~ǐWùsĊĉŞ„‚ÍúÜ12éS>5mı܉çTòˆĦâħĦây<§/3…ÎğĜĵ•RP~ıZŞ~k=W2Ÿnï ĥ† †ŸƒYbŒÊH(ì >Íĥò≄SŞ'ĝóÜeÙè#roçxsĈŬġ·g+ïf¸âÙóEáÔ´â J@5WÂa†
+endstream
+endobj
+606 0 obj
+<<
+/Type /Page
+/Contents 607 0 R
+/Resources 605 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 567 0 R
+/Annots [ 591 0 R 596 0 R 597 0 R 598 0 R 599 0 R 600 0 R 601 0 R 602 0 R 603 0 R 604 0 R ]
+>>
+endobj
+591 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[0 1 0]
+/Rect [228.311 687.114 238.274 694.718]
+/A << /S /GoTo /D 608 0 R >>
+>>
+endobj
+596 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[0 1 0]
+/Rect [231.235 596.955 242.194 605.188]
+/A << /S /GoTo /D 429 0 R >>
+>>
+endobj
+597 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[0 1 0]
+/Rect [210.969 549.128 220.931 556.556]
+/A << /S /GoTo /D 609 0 R >>
+>>
+endobj
+598 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[0 1 0]
+/Rect [253.747 549.128 263.709 556.556]
+/A << /S /GoTo /D 610 0 R >>
+>>
+endobj
+599 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[0 1 0]
+/Rect [423.865 539.552 433.827 547.091]
+/A << /S /GoTo /D 490 0 R >>
+>>
+endobj
+600 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[0 1 0]
+/Rect [193.544 520.734 199.521 528.162]
+/A << /S /GoTo /D 515 0 R >>
+>>
+endobj
+601 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[0 1 0]
+/Rect [243.536 378.467 253.498 385.896]
+/A << /S /GoTo /D 393 0 R >>
+>>
+endobj
+602 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[0 1 0]
+/Rect [458.954 225.462 465.43 233.695]
+/A << /S /GoTo /D 263 0 R >>
+>>
+endobj
+603 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[0 1 0]
+/Rect [399.579 166.564 409.541 174.104]
+/A << /S /GoTo /D 400 0 R >>
+>>
+endobj
+604 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[0 1 0]
+/Rect [421.804 147.747 427.782 155.175]
+/A << /S /GoTo /D 515 0 R >>
+>>
+endobj
+174 0 obj
+[606 0 R /XYZ 144.727 716.092 null]
+endobj
+178 0 obj
+[606 0 R /XYZ 144.727 582.227 null]
+endobj
+182 0 obj
+[606 0 R /XYZ 144.727 412.1 null]
+endobj
+186 0 obj
+[606 0 R /XYZ 144.727 199.775 null]
+endobj
+605 0 obj
+<<
+/Font << /F102 258 0 R /F96 255 0 R /F104 259 0 R /F23 330 0 R /F106 260 0 R /F101 257 0 R /F97 256 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+613 0 obj
+<<
+/Length 586
+/Filter /FlateDecode
+>>
+stream
+xڕUËnÛ0ĵû+t´j7Ċ 4zèI·$Ċ’mŠdè7(úï]Š²d%´›^̕´îÌ×$ÚG$ú"WÖŻéêî0Šİ(ŬET P’Gš( ÌDi=Ÿ(ÛìĜÙşj‹?>žšì¸³û)žožÓwF_‚H ‚j<cĜ~)”¨‹‰’çŒÚc ˜.Îiö DŻŭ E%˜ #ĞòJÌH‚é(ĤŒ”7ˆwÙKy…·0 ¸ù'oġ9Ŝ3ÒUâêqs•7¸¤Ép­\
+˙-=mħ‰™$SEɖ^ĈÏĊ†Êġ/÷SlûÈŭÛ,ϭۖ•ċ›ÓĠz76Î}_fÍxPUŒ§ìê&D)ĝb,ßğ-@’'Àċ,hŠ“–Cû@¨x’$ ı|ïLQb0 ˆh†kŸú³îŠû pÎf4›œ‰ÏÍITƒSÒkÖìmÀâ¨E2‰ÑíBhŒ€™ÓN6ï!0”cVŬÙjż‰cÇ]TĠ\ëŬÚ·Ŭ.r ‚ÎûĈ…O„0×ĦÖ?ş[ĉSœÚí|PzŬW·Ŝˆ8\€qŽÖ,ÇAóV÷›˜íŠòWoĵci·ç7'ÛB$ï?³ûÌèşÔ†r´V³ bŠ–PQMi>Ŝ‹Š€rrè„1z³è
+}½y9ÂŜ8ŝÍÒW·ĜKœ7fq­Ĥ˙Ÿ÷óŠ&@$–*Î`5^/Á{ĞżžÓ²ŝ
+endstream
+endobj
+612 0 obj
+<<
+/Type /Page
+/Contents 613 0 R
+/Resources 611 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 567 0 R
+>>
+endobj
+611 0 obj
+<<
+/Font << /F101 257 0 R /F97 256 0 R /F106 260 0 R /F96 255 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+620 0 obj
+<<
+/Length 1554
+/Filter /FlateDecode
+>>
+stream
+xÚµWKsÛ6çW°7rĈ‚
+‚-'qŠĜd¤ŞÊÍĴìoçĉǁ‚B–Be/î­S!›Z
+EĉbŒ$ë|Q‘²]Ğ˙Îûh\ O-Ò´ÏZûhjEŬ(ŜŠ ˘ŝ÷cɛ‘<„­żc€%V!ÛÒn߉ÙjÎK…ğԟéŞċ2`>Ö!$Ĵ!.[+ÜÊşħ+n,âq-Ğ™êúÂßoĤœ5³×șs°£…‰$˙wU‚öÁ
+­jg{şYDÒ4GċéíÄrÂ
+oOf۝àĝgÀ0 :[6ĤPl{›ŬÉêN7œK蓭6·/Ĥ,Zš-,kiŒ6dÖòŞŻ§²ZèħƒÖ÷ñOh<˜F1çFMI’ıd)Üt0)yµj6 dÌĠNÍíVIÛíĠî‹:qIŭKŜŝ-ġµP?*¨1ġO’ú7€òo]QYİ3bżÏġĴ4ĵr’çĈi5²m…šòYéxoÔ2H|wÉŻ{‹ôI*zˆä3„Ô˙&ħN…˙œ%%@Qe¸mZ´yBV?c/‘5äbÏMŭ×ÜĴ:L#ĉe%.׎JĴ5–ûf*Ì\Š•b½<bä…0 ç`ö!€yÎ×_"HL Z0ÛÄìGéöÎĵĊ(ßêΑJĦê‡Ŭıà[×ĵ•B…ÛBı4²=ı3š4]]kÓŝĥ5f´8vıŻx+(B?{Áí"¸kĴƒ./¸áƒ0ĴçÂôĥÑż-öd\Ù骀
+”D%t[‹j+̀QˆŸ6Èċhş^)V@ԉéÏüÎÑO•kĠ|¸ô/‰Í jkeÑDÈ Ĉë5oĦHplĥqî_ëê24ŸP.ŭWĥB.Ñâa–wŭ”ìĦ*?˘ġR,„‘ĠŞWÊ\;ÖuiEžqÓêfVŠ•ğôŭF 'ƒÛy.ÎèırpŞzÇĠbĠM·Ü s8\D‡y)ĴëáT§>ônDÊ>`íıÒĤŸ$p’Kí‚Dë3Ĉ`˜N{£â~ĞŜžÛŜ—öß $E‘ÜŻ‚¨SĦœ ½Qύç:â Ż–£ Ħí7\;΅¨Œ\ÙWs…Rh₤ÎCéOu(Ž"˙Ù­Ċ|œ.Ĝà,Žƒ@móµƒÒĜ×F/ˆ=ufpÔ6ÒĴìêÂ9ßÂvçt¨žÈ…bĠ 䴝ñJ
+ËxĦš£%óş”JÖ5B!@›Ö³‚ÑÄMs‰ÜÈżëµvœ½¤€s‡…q2v^„ƒWB[ı+ÙÙĊĤt”á˗pò­cı+-GìŜġíšÏV|)*ĉT´í;Ş+AîüŠf0œR"˜rf5ĈсԋɓÇĈĉ 
+endstream
+endobj
+619 0 obj
+<<
+/Type /Page
+/Contents 620 0 R
+/Resources 618 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 621 0 R
+/Annots [ 614 0 R 615 0 R 616 0 R 617 0 R ]
+>>
+endobj
+614 0 obj
+<<
+/Type /Annot
+/Border[0 0 0]/H/I/C[0 1 1]
+/Rect [185.574 633.481 301.141 643.344]
+/Subtype/Link/A<</Type/Action/S/URI/URI(http://faq.tug.org/)>>
+>>
+endobj
+615 0 obj
+<<
+/Type /Annot
+/Border[0 0 0]/H/I/C[0 1 1]
+/Rect [185.574 593.631 445.599 603.793]
+/Subtype/Link/A<</Type/Action/S/URI/URI(http://www.grappa.univ-lille3.fr/FAQ-LaTeX/)>>
+>>
+endobj
+616 0 obj
+<<
+/Type /Annot
+/Border[0 0 0]/H/I/C[0 1 1]
+/Rect [185.574 541.825 439.123 551.987]
+/Subtype/Link/A<</Type/Action/S/URI/URI(http://www.minimalbeispiel.de/mini-en.html)>>
+>>
+endobj
+617 0 obj
+<<
+/Type /Annot
+/Border[0 0 0]/H/I/C[0 1 1]
+/Rect [185.574 490.019 408.737 500.181]
+/Subtype/Link/A<</Type/Action/S/URI/URI(http://mirror.ctan.org/info/epslatex/)>>
+>>
+endobj
+190 0 obj
+[619 0 R /XYZ 144.727 716.092 null]
+endobj
+194 0 obj
+[619 0 R /XYZ 144.727 465.362 null]
+endobj
+618 0 obj
+<<
+/Font << /F102 258 0 R /F96 255 0 R /F101 257 0 R /F104 259 0 R /F147 441 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+666 0 obj
+<<
+/Length 1524
+/Filter /FlateDecode
+>>
+stream
+xÚ½YKÛ6ûWèÔĜmĊMñ˜I€ @ÑÄ·l€hmÚV#K$Çğ˙#‘òCkÉ6½èe%/Éá7żá`ààğçÓÑÛӀpĸ¤ÁtŻ)Ş…%"TÓyuünŒñĝ]şYĊĤJfq: İÀÏfaŠ ‰Ĉ&›™É·é'' -D#!UˆòȉBÄ ûkS%yVÚEZiIe½D ­"XĤˆ]f'OB5YċEe÷Ÿ›rV$n0­Ġĝ‹™5?Aîèŭtôïˆ
+‚gˆTcŠd3 ”.찅ZG[0&ÍwŻ€ğ–3Ħbĵğ3–·`ĤˆpjÌòġ&’Ç$MŞç=n…˜˘Ĵ^ D˘€Ğs(–gô£ &†G3y1sş=`³< áI^ìĜ§”˘dĴnQ‰ı}“ċĥ0›ĵLZ³utÒa•RƒJHÜêä&.“Ú16˘œcûX%YµğmĠqîĈ´FuêÑĉÇ1óĤ`X3ϐ\ä€êŒ·Ò¤ĊÚ9mĉ:–È#û€ŭ­'Mİ#)ĜÁü\p·8z|-1X•"6Ĵ!cˆBè(XĴÊëÀ–ö âZa@E<슳e’ÍMĉ­^nßĴáO¤ä€“ûà|Ŝ@0^ƒ1…[ĊÁüšˆq³³¤‰Ğ:¸ 2ÈŞêĥ–ÇËMÜŜŻ7Úrž”Uœµ™.ï1îèY=L‘&Ùwv³ı;˘°`ĝr(<(½U%gġ§ŜĴ5!Á"y†Ä?Û²JÀpĵ6êŒwÑ“jRg6ê3–ö¤7Á: |ÍüĈ‡ò[ó–/:C'ÉAŬoGôr” ÁpÖ÷&ûUP˜*ϤÙH.}²°,“2›¸ˆĞĵJHJŬ SžÂ<ì1 öRYĈk‡3.ÏĈb„íŠCp…"JŽE^ W]`šĦHt ²ĉ~Ĝ%Ġleş€ôT$í“Ĵ3úg-Úš+ĥ<`ÑŻ׺&şÊ'¸`×;ÎÇ÷#Ôîx|hxĉÛé$Ş9_jŜ”Ža0¸§:ë¸
+,­ V·ĵïrƒ(óĵ@ D‘”0Œçvô×3˜AœAÑ|˜5ûww•O(o÷Ħ”:£'Î=YnŸğd^­ÜPÙ&ˆ§p¨cĵ5şË/Oh2r‡¨`úVœ.ƒ­“ìœIvN¨ï=í™ĠYÓbĥO·/ï²mQ˜ö²"ÈñĝgRäÙÚ U(\È:("%ò̔ÉÜÜÈħ÷xayĜĴ·ĥÏçC4K‚=m÷v£:0M]ü>5l[½ÈŭÇr›ŜÙŝ^ıÜħwTQġ ½,âÍêjŜĴ=ì'÷P_ġsTžìñT!J _żèôBöízÜĜçRIÏ>G™dËÔ@g€ŽÌ~x3+'Ĵ…V’Q8"ž…ÍkG‘ĞdğġíĤ"gMÚörFUlŭÉĥŒ—‡ä}&UD
+ĜĈû6lè‡ĜïçK:™Ô—Y4e Íğ–xNŭn°“£³ÓKD]F‹ë›”ıï
+ċöħzŜĝa„µá ÎF€Â9(M:íXJ"„ùq™\°5£1Vk"îJUsoÓÉ&×ĥ²ĠI+Û76˜üzĵéĝ4Ì*óTġ4F:Ġ@cD]jŒDĈˆşŻ1RYZ1@Á"ÁÉċŜˆPà<yz
+­Aŝ‡ÖÈe%¤gw¤Úċ÷Èj7n“ßÀ%…wWÙ;£œÉ&ġÛ/îÔ¤ñĴ{üÎtpgĞÁÎĊ5aÒw¨ċ>Ÿ\Şj#8GQtĦŞíѸ)g‡xĤ·*ᲃ-‡opN|ĝ‚eY˙ü ò½ÔŜyX½ĤöˆA5A\9SñÓİ泥˙
+endstream
+endobj
+665 0 obj
+<<
+/Type /Page
+/Contents 666 0 R
+/Resources 664 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 621 0 R
+/Annots [ 622 0 R 623 0 R 624 0 R 625 0 R 626 0 R 627 0 R 628 0 R 629 0 R 630 0 R 631 0 R 632 0 R 633 0 R 634 0 R 635 0 R 636 0 R 637 0 R 638 0 R 639 0 R 640 0 R 641 0 R 642 0 R 643 0 R 644 0 R 645 0 R 646 0 R 647 0 R 648 0 R 649 0 R 650 0 R 651 0 R 652 0 R 653 0 R 654 0 R 655 0 R 656 0 R 657 0 R 658 0 R 659 0 R ]
+>>
+endobj
+622 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [464.805 632.463 479.251 646.411]
+/A << /S /GoTo /D 34 0 R >>
+>>
+endobj
+623 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [464.805 620.508 479.251 634.456]
+/A << /S /GoTo /D 34 0 R >>
+>>
+endobj
+624 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [464.805 608.366 471.779 622.501]
+/A << /S /GoTo /D 114 0 R >>
+>>
+endobj
+625 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [464.805 596.223 479.251 610.358]
+/A << /S /GoTo /D 34 0 R >>
+>>
+endobj
+626 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [464.805 584.268 479.251 598.216]
+/A << /S /GoTo /D 22 0 R >>
+>>
+endobj
+627 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [464.805 572.313 479.251 586.261]
+/A << /S /GoTo /D 14 0 R >>
+>>
+endobj
+628 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [464.805 560.358 479.251 574.306]
+/A << /S /GoTo /D 26 0 R >>
+>>
+endobj
+629 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [464.805 548.403 479.251 562.35]
+/A << /S /GoTo /D 138 0 R >>
+>>
+endobj
+630 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [464.805 536.448 479.251 550.395]
+/A << /S /GoTo /D 138 0 R >>
+>>
+endobj
+631 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [464.805 524.492 479.251 538.44]
+/A << /S /GoTo /D 26 0 R >>
+>>
+endobj
+632 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [464.805 512.537 479.251 526.485]
+/A << /S /GoTo /D 18 0 R >>
+>>
+endobj
+633 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [464.805 500.582 479.251 514.53]
+/A << /S /GoTo /D 22 0 R >>
+>>
+endobj
+634 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [464.805 488.627 479.251 502.575]
+/A << /S /GoTo /D 14 0 R >>
+>>
+endobj
+635 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [464.805 476.672 479.251 490.619]
+/A << /S /GoTo /D 14 0 R >>
+>>
+endobj
+636 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [464.805 464.717 479.251 478.664]
+/A << /S /GoTo /D 14 0 R >>
+>>
+endobj
+637 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [464.805 452.761 479.251 466.709]
+/A << /S /GoTo /D 38 0 R >>
+>>
+endobj
+638 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [464.805 440.806 479.251 454.754]
+/A << /S /GoTo /D 38 0 R >>
+>>
+endobj
+639 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [464.805 428.851 479.251 442.799]
+/A << /S /GoTo /D 26 0 R >>
+>>
+endobj
+640 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [464.805 416.896 479.251 430.844]
+/A << /S /GoTo /D 26 0 R >>
+>>
+endobj
+641 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [464.805 404.941 479.251 418.888]
+/A << /S /GoTo /D 26 0 R >>
+>>
+endobj
+642 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [464.805 392.986 479.251 406.933]
+/A << /S /GoTo /D 26 0 R >>
+>>
+endobj
+643 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [464.805 381.03 479.251 394.978]
+/A << /S /GoTo /D 42 0 R >>
+>>
+endobj
+644 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [464.805 369.075 479.251 383.023]
+/A << /S /GoTo /D 26 0 R >>
+>>
+endobj
+645 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [464.805 345.165 479.251 359.113]
+/A << /S /GoTo /D 26 0 R >>
+>>
+endobj
+646 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [464.805 333.21 479.251 347.157]
+/A << /S /GoTo /D 26 0 R >>
+>>
+endobj
+647 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [464.805 321.255 479.251 335.202]
+/A << /S /GoTo /D 34 0 R >>
+>>
+endobj
+648 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [464.805 309.299 479.251 323.247]
+/A << /S /GoTo /D 18 0 R >>
+>>
+endobj
+649 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [464.805 297.344 479.251 311.292]
+/A << /S /GoTo /D 34 0 R >>
+>>
+endobj
+650 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [464.805 285.389 479.251 299.337]
+/A << /S /GoTo /D 14 0 R >>
+>>
+endobj
+651 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [464.805 273.434 479.251 287.382]
+/A << /S /GoTo /D 30 0 R >>
+>>
+endobj
+652 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [475.046 261.203 484.909 275.426]
+/A << /S /GoTo /D 667 0 R >>
+>>
+endobj
+653 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [464.805 249.061 479.251 263.196]
+/A << /S /GoTo /D 34 0 R >>
+>>
+endobj
+654 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [464.805 237.106 479.251 251.053]
+/A << /S /GoTo /D 22 0 R >>
+>>
+endobj
+655 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [464.805 225.15 479.251 239.098]
+/A << /S /GoTo /D 14 0 R >>
+>>
+endobj
+656 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [464.805 213.195 479.251 227.143]
+/A << /S /GoTo /D 26 0 R >>
+>>
+endobj
+657 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [464.805 201.24 479.251 215.188]
+/A << /S /GoTo /D 46 0 R >>
+>>
+endobj
+658 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [464.805 189.285 479.251 203.233]
+/A << /S /GoTo /D 46 0 R >>
+>>
+endobj
+659 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [464.805 177.33 479.251 191.278]
+/A << /S /GoTo /D 26 0 R >>
+>>
+endobj
+198 0 obj
+[665 0 R /XYZ 144.727 716.092 null]
+endobj
+202 0 obj
+[665 0 R /XYZ 144.727 692.898 null]
+endobj
+664 0 obj
+<<
+/Font << /F102 258 0 R /F96 255 0 R /F101 257 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+697 0 obj
+<<
+/Length 1104
+/Filter /FlateDecode
+>>
+stream
+xÚÍXKsÛ6ëWà(wFO·֭3é4ÓZ7'J‚lŽ)‘%)Çŝ÷] DʲŬ0Š•)ê>Ŭ°ËÈ-a䈅çoÓчKЉVsMĤKRR 1LSà–LäfœîŒĞñ¨ħ[WgĜxYd+˙–Ç·ÎżÍ
+ߟ}™^}¸ĤI„bµĴĊ22F­
+˙Ê*wîqĥ œB¤Ŭ >ÍÊ,uU#›³ĵJ²uéÄEóUŒ×Yċż¤IYı…żs…£gf|í\­g(”‘â–ĝ—>ŽÈM# tóZ_xAĦA·ü ç/,ß÷,§‘P­íó8߉}8àŞ$oáà\t’ÊH´€óCĴrDÈñĜ³|O›ĤÓ
+„7¸$áêÁácžĈÉڏèúŽuċ`, Ì=˜•}nu_Ĥz7!ÊùŭvÙ²Ġœğ)SġI‡xÎÚÛğÄnu}cŭĵÄ<Ğı½J(TŒc8ĉü^Ħz+ħJ˙xhKŞ
+endstream
+endobj
+696 0 obj
+<<
+/Type /Page
+/Contents 697 0 R
+/Resources 695 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 621 0 R
+/Annots [ 660 0 R 661 0 R 662 0 R 663 0 R 698 0 R 668 0 R 669 0 R 670 0 R 671 0 R 672 0 R 673 0 R 674 0 R 675 0 R 676 0 R 677 0 R 678 0 R 679 0 R 680 0 R 681 0 R 682 0 R 683 0 R 684 0 R 685 0 R 686 0 R 687 0 R 688 0 R 689 0 R 690 0 R 691 0 R 692 0 R 693 0 R 694 0 R ]
+>>
+endobj
+660 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [313.069 692.233 355.43 702.281]
+/A << /S /GoTo /D 226 0 R >>
+>>
+endobj
+661 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [358.751 692.233 404.861 702.281]
+/A << /S /GoTo /D 226 0 R >>
+>>
+endobj
+662 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [420.34 692.233 462.702 702.281]
+/A << /S /GoTo /D 230 0 R >>
+>>
+endobj
+663 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [466.023 692.233 499.397 702.281]
+/A << /S /GoTo /D 230 0 R >>
+>>
+endobj
+698 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [143.731 681.274 160.679 691.322]
+/A << /S /GoTo /D 230 0 R >>
+>>
+endobj
+668 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [407.243 611.271 421.689 625.219]
+/A << /S /GoTo /D 34 0 R >>
+>>
+endobj
+669 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [407.243 599.316 421.689 613.264]
+/A << /S /GoTo /D 34 0 R >>
+>>
+endobj
+670 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [407.243 587.361 421.689 601.309]
+/A << /S /GoTo /D 54 0 R >>
+>>
+endobj
+671 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [407.243 575.406 421.689 589.354]
+/A << /S /GoTo /D 54 0 R >>
+>>
+endobj
+672 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [407.243 563.451 421.689 577.398]
+/A << /S /GoTo /D 54 0 R >>
+>>
+endobj
+673 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [407.243 551.496 421.689 565.443]
+/A << /S /GoTo /D 54 0 R >>
+>>
+endobj
+674 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [407.243 539.54 421.689 553.488]
+/A << /S /GoTo /D 54 0 R >>
+>>
+endobj
+675 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [407.243 527.585 421.689 541.533]
+/A << /S /GoTo /D 58 0 R >>
+>>
+endobj
+676 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [407.243 515.63 421.689 529.578]
+/A << /S /GoTo /D 58 0 R >>
+>>
+endobj
+677 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [407.243 503.675 421.689 517.623]
+/A << /S /GoTo /D 18 0 R >>
+>>
+endobj
+678 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [407.243 491.72 421.689 505.667]
+/A << /S /GoTo /D 18 0 R >>
+>>
+endobj
+679 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [407.243 479.765 421.689 493.712]
+/A << /S /GoTo /D 58 0 R >>
+>>
+endobj
+680 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [407.243 467.809 421.689 481.757]
+/A << /S /GoTo /D 58 0 R >>
+>>
+endobj
+681 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [407.243 455.854 421.689 469.802]
+/A << /S /GoTo /D 62 0 R >>
+>>
+endobj
+682 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [407.243 443.899 414.217 457.847]
+/A << /S /GoTo /D 66 0 R >>
+>>
+endobj
+683 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [407.243 431.944 414.217 445.892]
+/A << /S /GoTo /D 66 0 R >>
+>>
+endobj
+684 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [407.243 419.989 414.217 433.936]
+/A << /S /GoTo /D 66 0 R >>
+>>
+endobj
+685 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [407.243 408.034 414.217 421.981]
+/A << /S /GoTo /D 66 0 R >>
+>>
+endobj
+686 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [407.243 396.078 414.217 410.026]
+/A << /S /GoTo /D 66 0 R >>
+>>
+endobj
+687 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [407.243 384.123 414.217 398.071]
+/A << /S /GoTo /D 66 0 R >>
+>>
+endobj
+688 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [407.243 372.168 414.217 386.116]
+/A << /S /GoTo /D 66 0 R >>
+>>
+endobj
+689 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [407.243 360.213 414.217 374.161]
+/A << /S /GoTo /D 66 0 R >>
+>>
+endobj
+690 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [407.243 348.258 414.217 362.205]
+/A << /S /GoTo /D 66 0 R >>
+>>
+endobj
+691 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [407.243 336.303 414.217 350.25]
+/A << /S /GoTo /D 66 0 R >>
+>>
+endobj
+692 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [414.715 324.072 424.578 338.295]
+/A << /S /GoTo /D 699 0 R >>
+>>
+endobj
+693 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [407.243 312.117 414.217 326.064]
+/A << /S /GoTo /D 66 0 R >>
+>>
+endobj
+694 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [407.243 300.161 421.689 314.109]
+/A << /S /GoTo /D 58 0 R >>
+>>
+endobj
+206 0 obj
+[696 0 R /XYZ 144.727 667.7 null]
+endobj
+667 0 obj
+[696 0 R /XYZ 162.66 139.599 null]
+endobj
+699 0 obj
+[696 0 R /XYZ 162.66 129.79 null]
+endobj
+695 0 obj
+<<
+/Font << /F96 255 0 R /F106 260 0 R /F23 330 0 R /F102 258 0 R /F101 257 0 R /F104 259 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+716 0 obj
+<<
+/Length 2495
+/Filter /FlateDecode
+>>
+stream
+xÚÍZߏ۸~Ï_á{Š\Ä,EŠ”t@rEsíĊ· Er@µ6m Ğ• IΞQÜ˙ŜÎè—-o6Û¤è˚¤¨!9œùĉ›ÑÊĊn!?’üûíĞ?Z„ĦHQ‹Ûí"Œ"ĞxK+B•.n7‹Á;Ħ—ĞPJüciMĠËe^îšċŻ·?<ı5
+ĊĈ/?zħá"İUÊĊJ…"Ic’÷1ÔÑ:;´yU.WÄVÇĥÉ7Ž:wĠo<ZÓŻ+?ċuU>¸²ĵ 
+!~˙fG1˙Ë£ ĵE(caàĥVĦˆ£ˆf˙Á?1"Ċhx|t>äHnµ½˘”µ˘eìtWÏPĵ2œÌë DD"íöôÏeâšË•‰t°Ï–JŸfŠlí6ÔÎPöıĥ+L’Àjĉê'O֏b‘¨°›ûfVœ°:œ‘Úı”gRÇv·²ĦEÌÈUJèhFîÈ0yxl
+Jš3µïğĈ{Ñ"ħŭV:ë8Zo*<)ŸÛ'Š1ŬŒßgΜ
+ XÖĠCVÂġhkÑ6²’Á€@/:µÁŽß6Ŝpp–+—Ü÷`<+kґM „f_‹ Í/Ğ–7 ´ûĵ!ĠOÉ˵#˙Ë[ú]“0ß̎ ?mŞnŬeü²rÛ2ÁÖ­ÛFôş<_Nmù£4òĈyĊż
+½ƒ›SÜ|ñä‚0ĤĜQ"ĝ ùŝÊëç¨c•Pio÷·Ë8
+àқK÷^ŒÒŜFŜžżS-—îĵD‡êb§m!,uWAÎÔîc-´]š
+žÊ>v~i•·4 \c,b}-ä=ĉEA-ok·qÛĵD„Â.6óöuC­Ĵ¨]ĥ9y3•SO>{ŭîÄoÏĤZÑ-¨·.²Ĥ™˘÷![ßg;^qŸŻ÷ĵv3·Ĝħĵ/ĞG>S[ñïž_Ÿœ˜? ĉlùĝ+Ä­B/•Á%˘+ÔŜ
+`Íċ£”Şt³Ħ |t6v][ùláĥŞ|Ëô¸ Kz€ŭ,=({ô„n“?
+2j Œàâ*š*éž÷“)Ĵ7†ú˙]CO2šYğĉX´ÔfL†‡[—µGxäw—E~[™Ġ‚§âĝŠ:…_pó¸~Μfİ‚ĈN.úOU vììâ’*ôu5'B˜ ċDï‹
+ŒüR JE2TUÁħñŞ#vl­Ó òÇÏ
+Ĉ„ v'ÀHÇlĤ› a/ar•ħÌl(•éنĵo]îĤ™[ÒZ!możEŜ´og–AI¤Ĥ‘žƒÙĊ)ĴHkĜŸp†9ĦI遞ħçĈ{O ˜0?hÉò"ğ+"@ü„
+K0T‘ NÈd°ħİÊרŭ–şëĴvÔÊî€;Q“|%BŠ”ïrmĜyNC#w¸“î­ħoB·÷YÑ/ħñÛcÁòëĴÜıı Yĥş÷AìEŭ蜏!1}Ìe/açeÓşlCQÁD•4²Ëñ
+ş<ĦۉŸs,›áPĠ­Û`(ĝnW
+á‰E"í³<XÍx0†èĥÎ)ŽC: d˘Ĥ{8YÛMı²x¨€EġœìoşÉàg˙÷ïŝï;˙Q6XÑÏÍ|01?ÌUv œd(Óó'ĉµOvKü²ËìËPUĦj\lÎAäĊ&J™ĦaĞÉı´`)T’éŽyŜ…ÁĜüĞ“"’^˜‹M::ħ_G?6„dE‚šËé1Ż‰trù)uds•,#dÔ;JîÓòĠ5eä'×režPġ§ÚÌÈ·ô€ÓuM,S{ûéÄħċaÌD>y¨ĵ̅ċµ“ĉoš7:9^÷Ħ H,hDp~Â˙xÓóJ.ôe. "„ÍTíVɗ/#˘/
+†s7k˙oYŬ Ö Q$8Ô훳¸ÏîŞêŝÉÂ$mĦú2J;‰ħ„ÄH€ŽD’GӀ÷çÛW˙>ŞœŬ
+endstream
+endobj
+715 0 obj
+<<
+/Type /Page
+/Contents 716 0 R
+/Resources 714 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 621 0 R
+/Annots [ 700 0 R 701 0 R 702 0 R 703 0 R 704 0 R 705 0 R 706 0 R 707 0 R 708 0 R 709 0 R 710 0 R 711 0 R 712 0 R 713 0 R ]
+>>
+endobj
+700 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [176.85 567.81 217.693 577.769]
+/A << /S /GoTo /D 46 0 R >>
+>>
+endobj
+701 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [220.973 567.81 243.22 577.769]
+/A << /S /GoTo /D 46 0 R >>
+>>
+endobj
+702 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [258.658 567.81 299.501 577.769]
+/A << /S /GoTo /D 54 0 R >>
+>>
+endobj
+703 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [302.781 567.81 378.082 577.769]
+/A << /S /GoTo /D 54 0 R >>
+>>
+endobj
+704 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [176.85 397.644 210.968 407.626]
+/A << /S /GoTo /D 74 0 R >>
+>>
+endobj
+705 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [214.248 397.644 317.846 407.626]
+/A << /S /GoTo /D 74 0 R >>
+>>
+endobj
+706 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [333.284 397.644 367.403 407.626]
+/A << /S /GoTo /D 114 0 R >>
+>>
+endobj
+707 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [370.683 397.644 444.782 407.626]
+/A << /S /GoTo /D 114 0 R >>
+>>
+endobj
+708 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [176.85 290.243 210.968 300.225]
+/A << /S /GoTo /D 114 0 R >>
+>>
+endobj
+709 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [214.248 290.243 288.347 300.225]
+/A << /S /GoTo /D 114 0 R >>
+>>
+endobj
+710 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [176.85 206.753 217.693 216.734]
+/A << /S /GoTo /D 138 0 R >>
+>>
+endobj
+711 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [220.973 206.753 253.011 216.734]
+/A << /S /GoTo /D 138 0 R >>
+>>
+endobj
+712 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [176.85 122.475 217.693 132.457]
+/A << /S /GoTo /D 90 0 R >>
+>>
+endobj
+713 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [220.973 122.475 388.115 132.457]
+/A << /S /GoTo /D 90 0 R >>
+>>
+endobj
+210 0 obj
+[715 0 R /XYZ 144.727 716.092 null]
+endobj
+714 0 obj
+<<
+/Font << /F102 258 0 R /F101 257 0 R /F106 260 0 R /F96 255 0 R /F97 256 0 R /F104 259 0 R /F143 415 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+733 0 obj
+<<
+/Length 2529
+/Filter /FlateDecode
+>>
+stream
+xÚíYŬ6ßż"ouUŸ–½o½C[tÑC‹ŬîŠŬŞI”Ä·‰ĜÎNĊŭïGŠòWĈ™vç>ú’P4-Qù#)óĊnÁßàŭ?_ˆE$^ûâ/7/üFpħÈYžÊtq³]­™•vaıaV,n6‹·ÉweëëÒ–Ğ”óäï.‹r÷rùŝĉĠ—ßävü2·Ì
+Ír­é•Ÿ–ÖΠ‘H“f_˘Kż”&ù¸&ñ5²lÒxOÏÚ}Ñu‡ŞÓĤŝ İ_´{z!Mîğ‰ÏM|ÓÑL'·ŝàv‘w·/Ö{"kżñï8—ofwË%ìWwûŬğsŬÙm²×Np%ˍ!ñޞ›SpĤm?eëns3*Éx*;)W#eƒêyBɒsùĦĴtw%1Ú*ŝï}·^d0sŞÂúÂ0‘ġ
+ĴŬİ-ŞrNÁxÖĞ-ŒnpkqNîߑv·Kɓó.>+×HÂJR|Z#0sÎ2İĤfŽšħċJoüx.>8|ƒŬ‚ëÓż+é߯Ž8]ûSU·}”Ä-U4ÍÙw>~Ú׃ŝòÀ;˙_‰"?†ü;ĦôÁŬúówàÄĠıÁİNèÑH£ÜÈ ×‚­_bjŻ=ĈÒni ^6¸½gԊŬÇó ÔŒ7dL^O28Ş\´Œ}ıÔ<ùXÔUyôe‹–”:ıġ{‡AÑM’›b‹^ğġ5Èî‰Ùî Uğ&)Ğr5Z4[Ĵ2Á
+
+ñŒD‹~ˆ
+˙dâĝÌÑ_sòë˟5ğ=:NìʇÏpż
+Î1”J0ûÍmgĉµ °“ĉ+H„JZ‡i£È"0½ñÁ/DÀ{€}"
+krñĉ!Ĉ o
+J‰‹›+9‡QPğsqq™iċ¤šn95̌ĊĊ~ĉʚ|TĈĈ‹ ‰PĦZ@áùï5{O˙!
+İ%‡Ĥ9MóiĈĞÙĤ÷€áĈlÖ2Ĉ2!͓îĠài£{Ĉügw8ÄΙ&4ÜQƒĤ€DŸŜ§ĜħŻv¨0Êŭ25ó‘–eÌHġıö×Ï4^m¸P˜öŒĈÁ“zùèk°ƒAB3İNàċPħ r,ñËcœ²áÍMbYŝ{MbÀEU‡ŞÜġ×ä×ôTP1„g)%¤ƒ4
+Y?OOÔx…żšÓe2 EH'ut‚X•Ĝ›0ĝ_G~Œû¤
+"„ñK ÎVoñsÌĞsÑx]OĊÁ÷P/w7ĠztêÂ犢ìÖl.żÉŒVˆ) û„ôz:óυ|ù\µĠĞ2èZjħÜü§žşCi%ċ3—V[ü|9î‘_ßIBmqë„A÷ ŸĤOOÑÁ˘eĊf&VÀW>Ú-ç,=ž=µMÖĝV=l“5šKúŽŒ7·1L@ÚŜUWh˘ıßĝ.Nzp°†İVù5t„>ǚ§cÎÍpÄe "1éàÚ"kĊşƒE/ÌÚ ˜<oĦĝ#x —†pûÄÇĝy£(£hÌ\ĞTş"/˘kxħCWÌĦĞäèkŝU^àkP÷Ü)‰_‘Ĥ{ ÓĞÊ҄ŽÖnâq°nĥ8`Ğ:Gïrl‘GF 'Ò¸ŞSqŸġ¸ŠÓ"{ÀU ¸Fċf´ÂL?ŝ˙„²úyPöoà˜à‚䘓ä²=×·ĈúŻI›ˆ<íŸÜö
+(0löÛÊyxÒ<ßf9K;‡Öv²ô×7/ŝ ¨Ħ”
+endstream
+endobj
+732 0 obj
+<<
+/Type /Page
+/Contents 733 0 R
+/Resources 731 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 621 0 R
+/Annots [ 717 0 R 718 0 R 719 0 R 720 0 R 721 0 R 722 0 R 723 0 R 724 0 R 725 0 R 726 0 R 727 0 R 728 0 R ]
+>>
+endobj
+717 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [176.85 495.261 217.693 505.22]
+/A << /S /GoTo /D 58 0 R >>
+>>
+endobj
+718 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [220.973 495.261 276.521 505.22]
+/A << /S /GoTo /D 58 0 R >>
+>>
+endobj
+719 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [176.85 409.305 217.693 419.264]
+/A << /S /GoTo /D 58 0 R >>
+>>
+endobj
+720 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [220.973 409.305 276.521 419.264]
+/A << /S /GoTo /D 58 0 R >>
+>>
+endobj
+721 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [176.85 348.047 219.19 358.028]
+/A << /S /GoTo /D 230 0 R >>
+>>
+endobj
+722 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [222.47 348.047 273.042 358.028]
+/A << /S /GoTo /D 230 0 R >>
+>>
+endobj
+723 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [288.48 348.047 329.323 358.028]
+/A << /S /GoTo /D 150 0 R >>
+>>
+endobj
+724 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [332.603 348.047 368.47 358.028]
+/A << /S /GoTo /D 150 0 R >>
+>>
+endobj
+725 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [176.85 263.177 217.693 273.158]
+/A << /S /GoTo /D 18 0 R >>
+>>
+endobj
+726 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [220.973 263.177 266.487 273.158]
+/A << /S /GoTo /D 18 0 R >>
+>>
+endobj
+727 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [176.85 177.221 217.693 187.202]
+/A << /S /GoTo /D 26 0 R >>
+>>
+endobj
+728 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [220.973 177.221 364.749 187.202]
+/A << /S /GoTo /D 26 0 R >>
+>>
+endobj
+731 0 obj
+<<
+/Font << /F101 257 0 R /F97 256 0 R /F106 260 0 R /F96 255 0 R /F104 259 0 R /F23 330 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+746 0 obj
+<<
+/Length 2661
+/Filter /FlateDecode
+>>
+stream
+xÚċZK¸÷Żmì`Íċ[R€’
+íÎàFÈ!l(ş?ÏôH/ċ‚ôìşFxÎet `’dx€\y3#@ġˆ˙ü¸9Âñ×5§â'Bċá@½˙BùXĠ·óŬŽĦ‘Ž£ĥuŽyӕ›Ó!÷Fv•Żĝó›ħ•"‹&ÌÙ0Ó}` 4$℀- ô˜ožòGŒ Y²Üçmġn% Šào 'ô„ĝ('ÉħݏEGŻÌ ½9”Ġ“TmöŽßdvœ­{yÀÀ)™éKÑLĤvÙż„³,;j·à-·z”ȧ{è‚útëĦÓzƒ‹ù·îĈäGgAËĤÌ(5vÙ_öċfïWnûĊ¨üÛçÎı( hğŒô•*ei&§
+˙ç`l‡‰_ì9E€{=Ûĸğ‚=2úUVapAż—­Ÿ¸ŜQûŜ…àÁ–Ú1S”’6m"I€$Ë&²uÏĦ“–ñä­›ÒÊüZF&ËX:0ÜuœêıX>77‘€/W³ĉ¸ ^sİzÔAĉ9Šü DĦ3 Ż<¨S<.Ğrb‡.N‚‘WÙ²Ş;˙N톙ŻĵK˘²k‹Î–×&’ÒHÂ)töùñXĝ>fĜ’r²Ï6Î(aɃ&Ä?v]
+€…;ĜËD9eŠßĥöDŬd‰ÎÔ{  m=%…íö;7ä~PÙêİŞW´Şĵ£L_&³‹àlÌ£Xô
+µlKHĥ_èéño
+š(š6Ê×XD',•żÄ5yN@Éı?;0ñxz.,ŞW˙>9/nÀ=;Š{>í‹ĴkàìuZˆŠİıiÀİĠŻvîè>Plêçg´b²PÈ4°ĉ‰…ÓV>²BğÉW!¸Cgtĥì·denHx3´ŜÇfdn’ıİ Ë].<|ĉ]%<£’œš)×qˆëD
+4—R8àg`z׋4ħú$K&Ñ7ëhƒ&÷êo{ĵ¨Ĥ,Kı¸YT³×²ÀBwïĤUJӇĤy(R Ñ$û­iIÂìÛ¤%{<ÓfĦ•XÂtëú³ž²$•."Ħİ˙YĦ;Ğ›.äÛzs˜苴‡ĵġġX-äŜ ‹qoÀUlż‰™çİuQċ<ğ´ÄŞÀ}Àtَ_×]'ì4^è˘ÚÛ_œÀ|7³ÈR}ÁJf#UQìUĊğ8Âu””ŝÉ8ı¤ħX[óšI21x„Ğ°qGĈp-ږBZ…áê'WöŜ (ê²ï1Gİ6‡ÓÖ"²Ôù•,‘9Ĉž9ÇÔ”˙Ŭ¤(K섵ŭé9*.kœrfSËspc­Ż*p)f2'Ĝí|Xé¨İ²>ž+kœï y˜{Bg ŜÎpXYuESċ‡ Y0ÀRĥTJZĦyB‹Âç"ŻÚaĈÈA+JŞÛ½#'*ġ§˘RéSìÁlĦżÙçUAjARSHFݏwK*ĴŬ’´ôOsߞŞÀj\5—sż_V
+Ž ¨‰À†ĥgµ*Ş6ÇXÊ´Ì|›\ûڗĵž˜|ŝµvÎ21 ?£j3ä™÷í$Ó˘ĵLú‚{z‰Ŝ ™2i.—è#Êâ7˜Á4ŝg_H?GɜT½û´Í
+ñh
+endstream
+endobj
+745 0 obj
+<<
+/Type /Page
+/Contents 746 0 R
+/Resources 744 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 621 0 R
+/Annots [ 729 0 R 730 0 R 734 0 R 735 0 R 736 0 R 737 0 R 738 0 R 739 0 R 740 0 R 741 0 R ]
+>>
+endobj
+729 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [176.85 611.206 217.693 621.165]
+/A << /S /GoTo /D 58 0 R >>
+>>
+endobj
+730 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [220.973 611.206 276.521 621.165]
+/A << /S /GoTo /D 58 0 R >>
+>>
+endobj
+734 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [176.85 424.418 217.693 434.4]
+/A << /S /GoTo /D 138 0 R >>
+>>
+endobj
+735 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [220.973 424.418 253.011 434.4]
+/A << /S /GoTo /D 138 0 R >>
+>>
+endobj
+736 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [176.85 315.638 210.968 325.619]
+/A << /S /GoTo /D 74 0 R >>
+>>
+endobj
+737 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [214.248 315.638 317.846 325.619]
+/A << /S /GoTo /D 74 0 R >>
+>>
+endobj
+738 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [333.284 315.638 367.403 325.619]
+/A << /S /GoTo /D 114 0 R >>
+>>
+endobj
+739 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [370.683 315.638 444.782 325.619]
+/A << /S /GoTo /D 114 0 R >>
+>>
+endobj
+740 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [176.85 205.772 217.693 215.731]
+/A << /S /GoTo /D 58 0 R >>
+>>
+endobj
+741 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [220.973 205.772 276.521 215.731]
+/A << /S /GoTo /D 58 0 R >>
+>>
+endobj
+744 0 obj
+<<
+/Font << /F101 257 0 R /F97 256 0 R /F106 260 0 R /F96 255 0 R /F104 259 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+765 0 obj
+<<
+/Length 2384
+/Filter /FlateDecode
+>>
+stream
+xÚíZ[oëĈ~÷ŻÛ‘Zk³÷%hZÄAŠ>óä(-­%´¨òr\£ÈïÌ^x‘(Ùòq´è‹ı-ggggıĴél3£³oŻh÷¤36ĞŭöꏷW_Ü0Êf)I5׳Ûû“’nf†*bĜìv=ûyŝcmìbİ)—÷ŝÙlíâo·ŝâ&5ƒ!†ĤÀŬ}ĥġ3Ġƒ)‚$ZĊûlµàtŝ-oÏWÁ‰Bĝ&\‡R§$‘bÀġĦ¸)7„­üÛSŜlG˜-—„3 FR<‹Uĥoòr秎ĝċµÖMUî6Ċ³ەTvU>>ÚŬډOnjżÛĠÍÖceeĥÎw›sše™¨ß”jŸË6èb[ĥĊ:¨3$MǛnkÛïÍ Në·ü÷&ğ+ìĴs¤}Ġ”ûNݝEnôÈvI*ñ$ŭÓ­}‹K
+‘tĞ+AI’ñ˘jġTĞT;×.’nBíĊ\ÛĴpĥ DÌɝ\?äû0=ĞL[dħTFÍż/lVÛÈm•Żm˜²ÍW[HiB ìxtHċĉq%çëŸÂ/²UÓfš:’ŸpÙñż5a2ñ5ŽTożŒÊY›ĠŸ&”uĉ÷sĴÁˆÇ‡‹••_̙‘#xÏFˆhk§?$Ŝ•¨?œıÊvÁ>£¤LĈ{/œKrE~
+˙‚Ĉ\ä%Ÿ¤#xĥEV93òżĠŝ6Ž,Ġ@–E59&‚ê&GÏë½RğE,Ñ…rTgdÑRX•S!1MŒìÂ"êû4^)J„îĉVĥŜ“)žœŬڀ%ë1SpOÁyœ}ïÍKGTQóżäuIhëHıÉ7-,îAŽ+F¨>ˆÂ^4gĤñs>§óÛE‚VĜú:aFĥWnÀ<|"…ħû€Ş L]ĵwhĠĥ~TÀŠż
+
+ÂŜoFνy7yÄŝpFgħÑ"hÇĉú"ü6o•]ŒÒ.ğÀó<ßtĴ{}4Û­/Ö|F°
+ġı+(à^˜ı½?'3$J² bÎ+0W0Ì.0ú§D2}ìß>~´MíÒ&|ı‡ìĵıOZ0†Œĵ“n3Äĵ!@í‹le×–ĤÂ(Â. Ói
+ <Zq+~!÷ĝHİ€=#×èÖ¤Ë!ċAdtÖaĉs&c‰"i"’&KÇrq(:ħ–S| 1Up|ŒT.íŸJ 9‘}µNIFIÚ{Ó{‡ŒSjK! QHí!קĥùbšÉói›5~äĦI}:Œ_9Ô
+Î×'áHôp¨ÙÜĉ._Ô§5°×·4$áoP+ [ğ˙†Ż&ê ġ’Ż/0‘ÏTĦމzĦ˘Sżĝœ&$Dêîâ”ıàŻ÷Ž^µ'­Ĉ$ék£óĦᇵ%ç)Ñ*ù_‹nïƒÂ ŽDİ
+Tçdˆ‚4  À„ÓAÄj˙ԁâ!I=ıĜt(èPfyÄ Û@­ÜċğĴwۃŒÂé˙1ñ͘ĝ˘•&
+¸W£u{•*@)_ċĦ§ħvvĊêd¤f”téώÔâ}"uç)Ħ£ä#Ù­áĤ; KËşô­rC$Ĝ´ĴéÀË{Iß'›àP(*]CSq¤Ew“Û÷ĦyßÄKİ)áĈQùó„K^csŝ~7A¸>HŻ†K]uÉ}+ʽ:÷£>-pŭ%˙ša3wHŒƒĴ ôÈȵâáé°>Áz ]żj÷ŸcĉwÏání²G•íTï=ŭD
+%œY]œBùĥ&gĦıFSÈxQDT‚Kĉ–lˆ§g~_Qîlód]Ï yxZÔndĵ}ĵĊ`ò$îA`R”˙7àíCë;•&Yp£ÇµÉM<5ÜÔíjeëú-b×½ÜÛ*ôC½â×îËPÎ`†ŸlU‡dĥ3ʐÓO"IÍ€°ÎšI@0„)} ŒoTN_˘ŝÇŝG\ŻmIĞÇ]ĵĦjl>%lŒï ò²X/O¨â§êâ ˙Ù û”ċyx†@˜šëïİÛXLñġĞ.c}|›êùştPž†\I1—ödwôp
+×ÖĈ#É5ĵEċ,”rŬ
+à‹S?}·Ž[×áĞċ#xQ<Ì}Y ë“È:ŻëÖ|Â!Ĝ”’[
+°K“„ğh9N¨żı½ú7Aì:
+endstream
+endobj
+764 0 obj
+<<
+/Type /Page
+/Contents 765 0 R
+/Resources 763 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 766 0 R
+/Annots [ 742 0 R 743 0 R 747 0 R 748 0 R 749 0 R 750 0 R 751 0 R 752 0 R 753 0 R 754 0 R 755 0 R 756 0 R 757 0 R 758 0 R 759 0 R 760 0 R ]
+>>
+endobj
+742 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [176.85 613.199 217.693 623.18]
+/A << /S /GoTo /D 34 0 R >>
+>>
+endobj
+743 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [220.973 613.199 241.893 623.18]
+/A << /S /GoTo /D 34 0 R >>
+>>
+endobj
+747 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [176.85 486.375 217.693 496.357]
+/A << /S /GoTo /D 54 0 R >>
+>>
+endobj
+748 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [220.973 486.375 296.273 496.357]
+/A << /S /GoTo /D 54 0 R >>
+>>
+endobj
+749 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [298.764 486.375 339.607 496.357]
+/A << /S /GoTo /D 38 0 R >>
+>>
+endobj
+750 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [342.887 486.375 361.825 496.357]
+/A << /S /GoTo /D 38 0 R >>
+>>
+endobj
+751 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [379.505 486.375 420.349 496.357]
+/A << /S /GoTo /D 138 0 R >>
+>>
+endobj
+752 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [423.628 486.375 455.667 496.357]
+/A << /S /GoTo /D 138 0 R >>
+>>
+endobj
+753 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [176.85 413.162 217.693 423.12]
+/A << /S /GoTo /D 54 0 R >>
+>>
+endobj
+754 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [220.973 413.162 296.273 423.12]
+/A << /S /GoTo /D 54 0 R >>
+>>
+endobj
+755 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [176.85 301.093 217.693 311.075]
+/A << /S /GoTo /D 62 0 R >>
+>>
+endobj
+756 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [220.973 301.093 281.999 311.075]
+/A << /S /GoTo /D 62 0 R >>
+>>
+endobj
+757 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [297.437 301.093 338.281 311.075]
+/A << /S /GoTo /D 150 0 R >>
+>>
+endobj
+758 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [341.56 301.093 377.427 311.075]
+/A << /S /GoTo /D 150 0 R >>
+>>
+endobj
+759 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [176.85 239.048 217.693 249.029]
+/A << /S /GoTo /D 62 0 R >>
+>>
+endobj
+760 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [220.973 239.048 281.999 249.029]
+/A << /S /GoTo /D 62 0 R >>
+>>
+endobj
+214 0 obj
+[764 0 R /XYZ 144.727 599.625 null]
+endobj
+763 0 obj
+<<
+/Font << /F101 257 0 R /F97 256 0 R /F106 260 0 R /F96 255 0 R /F104 259 0 R /F102 258 0 R /F20 426 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+782 0 obj
+<<
+/Length 2616
+/Filter /FlateDecode
+>>
+stream
+xÚÍZmĥŝ~żÂßÖ.ΌHŠĠ"@ßî‚iRôöC\€È6m 'K%gğ8äżw†C½šö9w‹˘_ÖE ‡™gž!7šífÑì›WQ÷Íĝì„Ĝĝç7ŻŝüĝêĞ·<ⳔZèÙvĈ˜%"™%‘b Ÿ=nf?ÎżŻKEómQe 5›ç£Öâ§Çż}ġ6MBLÊ´Ža÷ùžFH†Hf´jG8i—b¸f*5í ĵŻ‰y 6v›—vp|·x=œ~™Ĥ,ŠÍlÉc–Ĉ1}˙¸j##ù2‹I&‹é”0™èvÀsu^,ó}ĥÑü—Ws‹=r^í:EÂnhH^†L“FLóNĞ÷\ĈëìĜäUYÛĉ|üˆj~ғKĤ’˙ŭĉŭ°ˆbi҉xĦ™P:°Ĉ€°8aF´C—!aK)‹ı
+"éçàpĤ˘Nî6ߝO!‰‹x •,‚ìœìvÉVEHH™1Ŭ¨Ĝ`-Œ,ĉY‰ÈìgkW"ç°:/wôʖ‹`$?UċÁ– uvÛFO`‰`\p!FvĝÏۂĤzSöœHk÷ÈRmBÍ·öäĤçÑ|…Ğ
+ĝ&/ë|¸Á(ĊE)ĝd7˙Ĝ^
+6=5—ĉšşgÄ$’‘ñFèÉĵ{ É$ü£°YL-’`,׈Û7cuĊ\ž³|Jßt¨ê3NžÑÔ­8ׇ_z(²•-hPûÍıĠ­ëŜ@ރڝ!ރĉ61d†dhN};%Jô›ŭ.R›P0uc³Í )ì K ˜é/Y^8-GaşGȈĞĵțgê:T{3|¸]†„ĠmmÖ íp'ûïsN`s6ĜëÂġùxĴN ½'w˘v‘NKeĝüç+Ż]yêŽ|ü`³fBƒ£`I(Dr#QIÙíĠu,
+Q*Ĵ 7éCĥ
+ñĝÂ5ħîtIYq"ċŞQŜcKê†ònCġšèjUJĜò'ĝÉwŬĵxÀ)HżYşFŜêĠŸBÚù%ĥî=)†O!§ &bAŭo|żŽA÷żH—ĝ‡J6™Nb/°R’„*ŒKu. È­èIŭzĥ­l·€¤Ĝ‡OîHvûLÇç6•ŝƒŠÎ^1à"Ëu0Í&ßdmÏu'ƒÔuÓI6Wĥ}Ü÷h̟ëó
+x‚”\³4‚Ò@9iĉ <Bˆ×
+endstream
+endobj
+781 0 obj
+<<
+/Type /Page
+/Contents 782 0 R
+/Resources 780 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 766 0 R
+/Annots [ 761 0 R 762 0 R 767 0 R 768 0 R 769 0 R 770 0 R 771 0 R 772 0 R 773 0 R 774 0 R 775 0 R ]
+>>
+endobj
+761 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[0 1 0]
+/Rect [307.68 641.81 314.654 650.736]
+/A << /S /GoTo /D 443 0 R >>
+>>
+endobj
+762 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[0 1 0]
+/Rect [243.042 629.855 250.016 638.781]
+/A << /S /GoTo /D 263 0 R >>
+>>
+endobj
+767 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [176.85 486.111 210.968 496.092]
+/A << /S /GoTo /D 114 0 R >>
+>>
+endobj
+768 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [214.248 486.111 288.347 496.092]
+/A << /S /GoTo /D 114 0 R >>
+>>
+endobj
+769 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[0 1 0]
+/Rect [246.179 332.138 257.138 340.37]
+/A << /S /GoTo /D 429 0 R >>
+>>
+endobj
+770 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [176.85 221.242 217.693 231.224]
+/A << /S /GoTo /D 54 0 R >>
+>>
+endobj
+771 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [220.973 221.242 296.273 231.224]
+/A << /S /GoTo /D 54 0 R >>
+>>
+endobj
+772 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [298.764 221.242 339.607 231.224]
+/A << /S /GoTo /D 38 0 R >>
+>>
+endobj
+773 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [342.887 221.242 361.825 231.224]
+/A << /S /GoTo /D 38 0 R >>
+>>
+endobj
+774 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [379.505 221.242 420.349 231.224]
+/A << /S /GoTo /D 138 0 R >>
+>>
+endobj
+775 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [423.628 221.242 455.667 231.224]
+/A << /S /GoTo /D 138 0 R >>
+>>
+endobj
+780 0 obj
+<<
+/Font << /F101 257 0 R /F97 256 0 R /F106 260 0 R /F96 255 0 R /F104 259 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+800 0 obj
+<<
+/Length 1957
+/Filter /FlateDecode
+>>
+stream
+xÚíYߏÛ6~ßżÂ}Š\Ä,ˆ¤T`Qô€Kğ=\ĥE ²MŻ…•%Á’³Ŭ˙3$%YZÚğA}ÁׇĴ(ŠÎ żùfĈĦ³ÛŭtEû'ħÙ_pߟŝqsġŬFÙ,%İâjv³™ħ8&šë™Ĥ’h6ğYÏŜG7[3_(J£ŞnóŞtOEĥ4EcêëùǛ}÷&ĠÇR¸$RÀ1v˙Ö­`T-$Q²[Qf;‘:íċvJÌ+§Úş2•Uë÷Ġŝ·ÏLĈ$) ItïóvëÍÚTû]Ö^o³òöÁ-½˙œ ­bk¤ ħËùÀıš/¸WíŬÓÎ8)SïOMYŝ?ıŝqcÚUV£óóòÖOSIï·ùÊŻÊ½|XéË´Ùd‡˘…ċlzoİ!œ¤q J¸§UâGÁDG{/³8²NvCpuĥÏZĵS|í´ÁUÙfyÙ¸YÈM,Ġ„ D+ñŸ÷ùH³„PĠ/\Uğ]VdtB‘ß͍Lè••ÄŬÖ>f ž€İ‚ŭ^šû"/M@˜‘$î„ŝœ/☂wÀ3ħHŬĠâÌÒĝ/Ġn ²Öî³ğQœÏÜ£żNüÚûż¸`sc4q΢sVr) {3}¨z#SE’D{#•‡?œ° ’2vl!hMYôŸÂd ĊR —^˜U‹82`’Ùğqĉû9Xƒ_<bpx„\†ĥrK‚FqM&ŬŬŞ*@cċW­F×c „$1›ÜrGC½ÒĝÒ+/ŬX²:£&1á\L|_€ŝ€’š-&îV Š]'ÁˆZĵ3
+·Uƒq^öG‹áè!KÓ6s.£[Tı³·Ic•Ġ)îŠ9›n&ĊÜşZvĤ{E İ°a"|9ŒS> áh
+é•ġkr(Vĥ~Š:Ž–¨ĝÁ sUİ­¸Ük2ġP
+ħŜoxˆ§`  XôÈqxXwÉpñWĴ4ĦìQunaT´3+¨5òfç^Ŭ´î ĊÍڀĈEFnvK0ltĦ„ˆjO;ĝĠÑ
+nû“;ÚÁħ…,>™Ú9×(¸[ñÈ5\„5N@Qöi-~úžl£IĠ3͈2ôH—#oË Ž1d2P^„”ë’,žİOch8*I­ÙDı÷ž™Kċn`+ˆÓiŜ˙Ĝ9EN†^¸L‚ԐܓÄĉÇ4Nœ†ż–&ıRŬöNÀ3ó˙9+žà?…Ë8%CáñtcéÄ] ³<ŸfD =™g8DsğÏÑ`;ĴÜÓv8ÈÜ£w„íŬğò><Ġx1 :/dĝÂ`cµÚšĠŬu
+ u]$VÉӗֺŬÌİÎóùš<@nüóöiĠWšÏžr
+&$KÊEQ!’îO
+ld.Z
+ °¨tĴû‘ÇŭtĥYŭş°T—ċğğĵ>K^ú˙MRŭSêéSaÙ´Ċı_‚(#Š/“LBzQÒôŽxñ4)/„G4÷, ĦùĈ°˙@/K ˘`b!¤e7+MŽë“Ŝ\ŭhò<
+endstream
+endobj
+799 0 obj
+<<
+/Type /Page
+/Contents 800 0 R
+/Resources 798 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 766 0 R
+/Annots [ 776 0 R 777 0 R 778 0 R 779 0 R 783 0 R 784 0 R 785 0 R 786 0 R 787 0 R 788 0 R 789 0 R 790 0 R 791 0 R 792 0 R 793 0 R 794 0 R 795 0 R ]
+>>
+endobj
+776 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [176.85 589.199 217.693 599.27]
+/A << /S /GoTo /D 14 0 R >>
+>>
+endobj
+777 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [220.973 589.199 262.874 599.27]
+/A << /S /GoTo /D 14 0 R >>
+>>
+endobj
+778 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [282.544 589.199 323.388 599.27]
+/A << /S /GoTo /D 90 0 R >>
+>>
+endobj
+779 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [326.667 589.199 493.81 599.27]
+/A << /S /GoTo /D 90 0 R >>
+>>
+endobj
+783 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[0 1 0]
+/Rect [246.179 470.235 257.138 478.468]
+/A << /S /GoTo /D 429 0 R >>
+>>
+endobj
+784 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [176.85 371.611 217.693 381.57]
+/A << /S /GoTo /D 14 0 R >>
+>>
+endobj
+785 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [220.973 371.611 262.874 381.57]
+/A << /S /GoTo /D 14 0 R >>
+>>
+endobj
+786 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [176.85 321.865 217.693 331.824]
+/A << /S /GoTo /D 14 0 R >>
+>>
+endobj
+787 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [220.973 321.865 262.874 331.824]
+/A << /S /GoTo /D 14 0 R >>
+>>
+endobj
+788 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [176.85 272.12 217.693 282.079]
+/A << /S /GoTo /D 14 0 R >>
+>>
+endobj
+789 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [220.973 272.12 262.874 282.079]
+/A << /S /GoTo /D 14 0 R >>
+>>
+endobj
+790 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [176.85 222.634 217.693 232.333]
+/A << /S /GoTo /D 38 0 R >>
+>>
+endobj
+791 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [220.973 222.634 239.911 232.333]
+/A << /S /GoTo /D 38 0 R >>
+>>
+endobj
+792 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [176.85 172.888 217.693 182.869]
+/A << /S /GoTo /D 34 0 R >>
+>>
+endobj
+793 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [220.973 172.888 241.893 182.869]
+/A << /S /GoTo /D 34 0 R >>
+>>
+endobj
+794 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [176.85 123.142 217.693 133.123]
+/A << /S /GoTo /D 30 0 R >>
+>>
+endobj
+795 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [220.973 123.142 243.883 133.123]
+/A << /S /GoTo /D 30 0 R >>
+>>
+endobj
+798 0 obj
+<<
+/Font << /F101 257 0 R /F97 256 0 R /F106 260 0 R /F96 255 0 R /F143 415 0 R /F104 259 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+807 0 obj
+<<
+/Length 1037
+/Filter /FlateDecode
+>>
+stream
+xÚµVÛn6}ÏW¨O‘‹šË‹HJ)Š-š
+,Pt½‹Ŭ%Ĉ"‹†$oâżï Iɗ8Ùm‘Xcêp8<sfF4Y%4y{E§'MXÒá4ŝ|{ġËâêÍ-£,)HĦ¸Jw Ë2˘ıN4U$+òdQ%ŸÒ½YÙÙ\QšşğÖqáï­ëëĦvíulñO°ë>>ÛÒmĥf¨—ŭµĝΟ3F
+İ‚˙Á;EԛÛBE–i’s[ŭ–u@0ގ ‚äJŽˆ­)gœĤ÷fĈhşÂ{ÁĞàDBÜS^ٙW5"â-Áù=pB? £™kA2*áŞ)²,ì_àE&ÓU=2ŭ2c2µ-.İÑixÜá³²ĤİÛU@<Ô:,—&òŒúûzÛ„‰ÛlӐÙ\*ŭ£ħĤ·£·²ltĥËè͵§y‘!Ĝ
+ò‹,Ŭğ"5ċ°3M³ËHŞi‡nˆà]ooÀkĦŭ]/Ʉ"’ĉSž˘~~ŠÙ9ĤP*#‘£´ÔĦ?ġpF–ä°Q żT<ieäêİÁH.Ĝ‘b˙ŝ€îä€dÎuA48=ahc˵ië~`)CTôBĉRĴ.kíhċÀO(..&4lÁŒ£hŬŝÛ5UxİŒ–§ѝ ÎÔ(\5K‡Ê
+òŠçw—Rĵ´C!> ˆŽÓƒiĞ`„=Ĵ³w‹àÖ ÁèwÛ­ë[‘‰lŸ“ ÉĤ§•™JúŜzrŻ˜ïIš‚­)ùÚò'ê¤ŜÀÉÍ3ÛCg8œ­8áĊ$ı÷ž¨'{€30ù‡HYDŸwç{ëıêç…"LƒŒ(áTÄÚVönm۟}‚ÔnÌ|/dB“,—ßŜ [³ıÔŭ8#R_í~“›ë—“POg ïŒyGátµZ
+ĈGñ˜ Ê,*ĝ1"FZŽŬ ÍÊÙŝLˆa[Ŭ=4Aĵ3û=9gĜoŬw?˙?:eŻ£Ó[(~,\¸ô€-Ċ
+H-^WħŒi)£ ‹ #ĤuYšö:Jt×Çıí쇳YŽüıeï;XWÜí³Ì}OâJÊ28ˆè‘öïŭI
+­“£elEĝB+„¸°cÎsĊ‹Î Ò‹_Çєğ³í$˜oíQg“ŬwG˜{ĥëÂô0ú>Žöfġž0K.AóqĨŜl€ĠžâËӈXeÌ
+endstream
+endobj
+806 0 obj
+<<
+/Type /Page
+/Contents 807 0 R
+/Resources 805 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 766 0 R
+/Annots [ 796 0 R 797 0 R 801 0 R 802 0 R 803 0 R 804 0 R ]
+>>
+endobj
+796 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [176.85 625.941 217.693 635.923]
+/A << /S /GoTo /D 34 0 R >>
+>>
+endobj
+797 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [220.973 625.941 241.893 635.923]
+/A << /S /GoTo /D 34 0 R >>
+>>
+endobj
+801 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [176.85 575.851 217.693 585.81]
+/A << /S /GoTo /D 14 0 R >>
+>>
+endobj
+802 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [220.973 575.851 262.874 585.81]
+/A << /S /GoTo /D 14 0 R >>
+>>
+endobj
+803 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [176.85 502.637 219.19 512.596]
+/A << /S /GoTo /D 230 0 R >>
+>>
+endobj
+804 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [222.47 502.637 273.042 512.596]
+/A << /S /GoTo /D 230 0 R >>
+>>
+endobj
+805 0 obj
+<<
+/Font << /F101 257 0 R /F97 256 0 R /F106 260 0 R /F96 255 0 R /F104 259 0 R /F23 330 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+814 0 obj
+<<
+/Length 2499
+/Filter /FlateDecode
+>>
+stream
+xڝYK“ĥïŻÉ%U,˜x’ˆOğŽgkŻS•JRċ́˘0#ÖP˘Š¤<žüút£Áç@3³ıˆ`l
+/!xŸHˆO>5)“v8_áNkŞĵí"ğÁ$Ïúd5?"óÜĥ҉~Ğ3b”ï÷nOĤ'ÀÌeïíJjÙÛ(ouHĵbİa†îdÇ.,ĤLş¨ÎˆdĦ:ÜìšêFí˙3–™á(’8 ûäDß9€‚ĉÛïËff”üËöş•Ü°Ô.ä.˙=ĦċĦĴ šO˘b°ËĴ}³+âTäÇ°ÉcÙhD8ƒ“C=Ò ÙbÌĵ9̨A‡§ş>ıŞ<Ċ.XÚÁĵٜ0‰a(f•c@DÌ`.& qHHĈ…A´›­ĉj-"ÒS İż!ˆh.Çx€\ó=*ë3ą#8z^ÑÒĥÜğíL¸m
+g½Ä‘ĝŻï/UŜDoÏ-3Ú,50Ħü*f`dşŝ†-ìäb1ß;"Ÿ/ğŞ,ˆJ³Ŝ9r˘t ŸÏ£$R} ³çĤ>£;áÄ..^&]X+}°lµ7†d~â+òK‹'JBœKl°O ´€|‘¸wG§‘~W7D İ.ïÀ[šç{b˘³g_÷ûɨB¤÷q…fĞòċĉf§6#`Ĉ T’ @UÁÑğ|·œĞ˘1-‹”ρQ
+ˆè
+L¨z˘×ğú‚†‡ ÚĦ‰@ TH¤ÉœfĈ—)8ĝEĞ\Ŝ&2"8<³2ŭXCN>Ò }5ßӌgÙëÙ×ËĴĴÏ28K䝊úRĦàenžè—’È)éÈE ÒBì‚ÑM“ŸhġgLêĞ]^„)òx|éÈĵY?ĠĊ>E˙J A#°Í–iïc8ĠĜ_\áŽğÈçho ß%ğ½ ï„e08‘r+Wt.šs0ğLİ·„>²$‚úŸóŝ¨çĵéè?ş&œ˘qÛ“ò1}vËĦN< W‚Çxö[Òċp >P]Çsċ:GDĜ‹µnˆàÑž$
+
+¨OÔ²T  Òè!=’i‘Îñö_”s PYU4èrî]}ñ·BȆŻû2ܳÇö-ïOnOo>}ÀÁġ9# afğ´H&oÂGż —…b/$" ¨²‡HNÇ~ŻNVğ˘[o%-\ZĝâĈÓô òżBv6Ñ°BÏó’ŠÎÖµQP@ 7š,‹hfİH_ĥ7Ĉ|Ħqç:0Œ1ƒŠ šœÔÙU“Qġ+wĜyÎd%í‚°€~Ċ\ûÔÑːV€Qĝúhħ jĦäŻû–Ì9 ÑŜŒH…ˆÒ(Ż|¨‡ı€[moíܗHqô²éôšY;woZ xaZ ï=ċ³§ó„€]ú—X÷˘²|Eħ’+ŝEK²ŝğ˙ŭìßûĉßzK/:’^—ç˜ĉµfzKP•˙ġö#*-S_d&×_>ße°p˙Œ9|V_Íay–²1&1x‚¨'Ĉö‹ß"œĤû#<[¤°Ş :ét¤´>:I5É4‘èkoè5ŻğGj0Ż;0`Èh˘e¸ß‡|‡ÍAäNe;ÊÔнA%ç;Äk
+ÖXñ2pÁ‰ì”[wI뒕avlo½Êê\ċ鍈€ĵÒ~£h à@é›ù´kAÔW”œMŭòNŬĦqî܇Œ—*Ztĝ)2ġĈ^ÙÁ ï;g_u^kv`‡/jHà˜) ÓŻC%eÓħ/! *äİĜCh鍲\0íòâL>Ĵ¨*„ ùŭÑ7"<oôú°;ŒÛĵeĥÈNïêS÷§˜R-¨ây’8ċ¤Xš[bUŽıJĞÈÀÏmޞı찔Y]çf4„=ġöa÷$ċÛ…l C;FğÉÚB6aŜ~ĤcŝÇ1oî£÷Ó ñ`X²¤Èyšu,OיbÔx@p1!ú
+`J=ĵ8DżèhÀ!Z›ĵÈŠUHÒŬOÄŝ`sM\Íò* vÂôÁoî`Ç_.ûw'‡nÛùÀı:…EĠ§dzÒá
+ea£İž„—żMMzyU@¸h¤Ìüż"â2eİLâàëĉ dĥT;_“D—Dé…,ú2sŝ÷C{Ùmûöҋ—}ŝ_ TÄ£—Ÿ—:ċËŬ˙àN³5ž˜ÍeĈS,…A_"ƒê6ü ċlÑÏ·ïŝdŭċĊ
+endstream
+endobj
+813 0 obj
+<<
+/Type /Page
+/Contents 814 0 R
+/Resources 812 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 766 0 R
+/Annots [ 808 0 R 809 0 R 810 0 R 811 0 R ]
+>>
+endobj
+808 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [331.155 393.785 369.685 404.754]
+/A << /S /GoTo /D 114 0 R >>
+>>
+endobj
+809 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [375.236 393.785 458.19 404.754]
+/A << /S /GoTo /D 114 0 R >>
+>>
+endobj
+810 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [232.471 381.83 277.632 392.799]
+/A << /S /GoTo /D 138 0 R >>
+>>
+endobj
+811 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [281.5 381.83 316.876 392.799]
+/A << /S /GoTo /D 138 0 R >>
+>>
+endobj
+218 0 obj
+[813 0 R /XYZ 144.727 716.092 null]
+endobj
+812 0 obj
+<<
+/Font << /F102 258 0 R /F96 255 0 R /F23 330 0 R /F104 259 0 R /F101 257 0 R /F97 256 0 R /F106 260 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+821 0 obj
+<<
+/Length 1738
+/Filter /FlateDecode
+>>
+stream
+xÚ½XKÛ6ûWèVˆY>D=
+ì%i“˘hQ´ğ·$YĤm5zU’×Ùŭï!İ—ÍŬ ’ĥ'SáĵçÔ;xÔ{³˘ö÷ċŬêÛ׌rD!÷îö° HÄ#/˘!a<ñîvŜ[˙Ġz(ŝĞşlÒ>ßĉEŜ?Ĵ7\RżŻÍo]ìTk–÷kF}Ġvy]uë÷w?YŒ$RjÔېÄBZé„YùYÚôpj£Ï&áüh3 O2ÂĊœE’$ŠŽïRlòqԓ$ä!2lbIÂÌd„ËŬó,:(­ƒ†PïñWĝŭQ ú/iĦ°Fó8ô N^kŒ0|Mš}HÊhèúĵ(Œ’îÔ4uÛ[[PħĦĜمßĉ´²ÔĴ.Kĝ°§šĥFîóÚĦ!Ä?"‡_%cÁrÌft°„/ǝ)“!'îeünrÉd` VEm4¸B$?[b`$bNPbŻÓ†P!€ŻÛztµîuÇúTìŞoÖ,ö{+%ËN­YĤz˙`X!€ÛB•V2·ž¨&–qBh.ciÒ2Wg§RU}÷ż…ż]sêŸzü ~S¨´Sh n•ùGC·’è,Ñ!³‰ê,Ñ@>çŭÑMĦ
+fÔŭ¨Ó!xˆž¨—ÒO Ôö†bêw¨Çħ7˜uÜÖŜjÂĥĞ Ġ+{jniӑzĴmDŠ'MžġVŠé1zÌŝVİÊìµŞ)ÒÌ6E0îı ˆİ@‹Œ3à@ÔÜ,Nà`D}rˆ$@Ŭ)#Ĝżƒ&‘†:™
+Żê1
+ïvġÛpĊ²ı6\y2„
+n”Vu[Ĥ€ïA"„żÇŝŠ+ŻĈÚÍÒŜĈÇ€f²‰USœywĈèyĈ
+¤ENj4Áé fÒŞĠqĤH[ĵß'é†ààüù’óçÇ8OÍzĦEşU…ĉ’Ğ6ú+ĈܙĤ¸bì
+wb3cığb,w.ĈíŝŠqğwċİ-Żä²ñZbçĴ²ŝ:<}
+/`ĉÓ³”8xċ¤­kUÎ6ĝËbF
+ŝ÷*UŻŒ}ŻÁ‡Oê€RŽ@‚ĞM¸ìżŬB%ür™§ <gİxĤ=6 JJ Ż·ş£Uj>isZ-ˆŒ‚/6ûĊ‘éĦ„iGü‡1!Žħpû[T•ôV鞷³]{Ìâ÷7+ï­yİÀËdœÏƒE%ó£ċH)Ġ˘ÑÄ_ÏVžŞ 52ß Ñö‡àìtìfЇA d.ßO·…²èĴ2mñ wŜ$WmìhVx€ÚÓİ{×óœé˙J¸cÂ^<§ŝo ILHmqöYĜ0¸<i“Oeġ^¨ê?͚
+óe̗=ŝ• lîŭ´lŠËûğ.v›(ĈÛu§–b#ħÄzIHÛ’Ë(ÂKĝqŻ5
+endstream
+endobj
+820 0 obj
+<<
+/Type /Page
+/Contents 821 0 R
+/Resources 819 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 766 0 R
+/Annots [ 815 0 R 816 0 R 817 0 R 818 0 R ]
+>>
+endobj
+815 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [161.906 230.196 196.024 239.917]
+/A << /S /GoTo /D 66 0 R >>
+>>
+endobj
+816 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [199.304 230.196 271.269 239.917]
+/A << /S /GoTo /D 66 0 R >>
+>>
+endobj
+817 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [161.906 132.009 202.749 141.99]
+/A << /S /GoTo /D 26 0 R >>
+>>
+endobj
+818 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [206.029 132.009 349.805 141.99]
+/A << /S /GoTo /D 26 0 R >>
+>>
+endobj
+222 0 obj
+[820 0 R /XYZ 144.727 716.092 null]
+endobj
+226 0 obj
+[820 0 R /XYZ 144.727 692.898 null]
+endobj
+819 0 obj
+<<
+/Font << /F102 258 0 R /F96 255 0 R /F23 330 0 R /F106 260 0 R /F104 259 0 R /F101 257 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+830 0 obj
+<<
+/Length 1860
+/Filter /FlateDecode
+>>
+stream
+xÚµXK“Û6ÏŻ-TĠ!
+à•IäU,‘ċ Ż…;yÁ
+Àöóï@§ĈË·aF·§F „fÏ#@~—ԽóJÂ%T!.xâĨB²Y²¸ĵq°
+RçÄ?~ş­´7Ĵëü{9ŝĝ ˆ%sR°,žrŬ[ÊÄĠżúÈİdé%S†Â*şoÀž˙u완“.$…{p9ĜP".R>Ú˘(ĵ!É8gI’€3ĉ‡Û Çñq i2Ċ+Ętr
+Žş7è/Œċ°Ż€ èK
+äB&ĴóHn·Î6kħ$M@LĜ­z£şa 5x\ámZ,Ħ†òƒOuPXú“
+é…ŸôJĞ8Y›1÷$4eÚc"Û´3û‚c)$”½ŜùäH|ݲˆ ¨,n$Ŭ°žÁµÀnMc†ó8ċÛ™r*dèKf)Y×pkĈyôqû4ëĞ
+z­˘D.g{
+ıٌ׆6IŽQ¸O]ĤĈ|^A­:–ˆó¸ż\aĉ@/Ÿ!Ϙĵ¤ƒ
+ÌĈ‚-ÉĝòÀéÚ¸Ħ7ĦKĤ`Î)O"giÙ˘~PmĞĊf?ġ@\ıS‰D²$•_a6à?%Ë'Ínê#1İóĤëÄ5n:ÙÔ%ô§iï >:ĵ`ĉËYɳkħpmlPqéä+#˜¤
+ŞNèk¸:+qїTa÷’: íqÉżÂġ‹“…*X›Î ZĠĦĠEÎĝM“ñkH­uĦċ”ÓŽ†fĝa î(Gñ ġVïzԀӷ×ÇFUA·ÛH혷CcΛÚiñç B…µ=˙?î˙ĵXs–LfÉm‹[@ÑXÎû>E&üĤĠ4²S½ „Ì8@ B#tX F`° ĈĈ 3L–z—ÄiŠ1ÈKĦé%<ÚëpR÷=µ"jµscşj7èžş‡vŬrhnž||Ey)<ĝ`t°GÑôHŬiD€`ëÖ˘[|˘ö£¸ô0ôĜĈË~ŬŬ%‹ÈÇŜBßÓ:Jt­Ù÷*”`@îzÛ.ùPŒ‹ŻÊ\+²ÉéÀ ıħ\_™ğ§K!“)JƒÚv?Ĵy D‚n ¤8M9{5‡Ócĥoġ˜ÖéĞ7­2Íh„*Òôĉ]ŬÇİ,ġŭ ˘4ĊumBĦ™e#˙ÀÄTÀéÉŞ‘€hé#k8jşÙÑ<j”B°tİeiŬÌ;x…£mXğ˜˙‚= ÖÎğÏÏAï):| ú/h[šÎ6ŭéáw§zħ?
+endstream
+endobj
+829 0 obj
+<<
+/Type /Page
+/Contents 830 0 R
+/Resources 828 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 831 0 R
+/Annots [ 822 0 R 823 0 R 824 0 R 825 0 R 826 0 R 827 0 R ]
+>>
+endobj
+822 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [161.906 396.112 196.024 406.094]
+/A << /S /GoTo /D 66 0 R >>
+>>
+endobj
+823 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [199.304 396.112 271.269 406.094]
+/A << /S /GoTo /D 66 0 R >>
+>>
+endobj
+824 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [273.76 396.112 314.604 406.094]
+/A << /S /GoTo /D 58 0 R >>
+>>
+endobj
+825 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [317.883 396.112 373.431 406.094]
+/A << /S /GoTo /D 58 0 R >>
+>>
+endobj
+826 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [391.111 396.112 431.954 406.094]
+/A << /S /GoTo /D 122 0 R >>
+>>
+endobj
+827 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [435.234 396.112 453.169 406.094]
+/A << /S /GoTo /D 122 0 R >>
+>>
+endobj
+230 0 obj
+[829 0 R /XYZ 144.727 382.671 null]
+endobj
+828 0 obj
+<<
+/Font << /F101 257 0 R /F96 255 0 R /F104 259 0 R /F106 260 0 R /F102 258 0 R /F23 330 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+840 0 obj
+<<
+/Length 2477
+/Filter /FlateDecode
+>>
+stream
+xÚÍYK7ÏŻm% bĝê—’…ÀÈ6`°shIÔ¨–ZÛŬÚñÀÈߏ,ös¨żìİIŠ,YU_}EñĊŬ‚/~ıáW?ßŜüĝZp½H³dqğ_H)˜Ö‹„§LËĊínñnıÍÏmQäê÷Û7?ÎbÌÎâXÛÙJ²³9MüŻŸ"ĠhŠm%ŬŒ4AħÉtŞşğ‹˘Ĵ›âġ ¨#S&£´WG]Q'~V=QçĉĠíÍnĈĝB@™ˆéXâŠ4˔Zl7ï~ç‹~|³àLeéâŜM=bŞd’[aċâíÍ?ğûŬèqPœVÑĤûòÒJ³oWk–\šĥĜÛÜûeßŬ™]]ÜZĞ„ŻgîgXLż…ş²Ú ,NĤ,NfµVXşlŠÓ]éĥ³ŭrtç c{€u³D¨ĊZJk‚·Ĥmħxµ–_ĥCc^ŻDşĵ+NÔßW55ĵEêŬŻ_ĉ³ĞN~u·jäeƒ"XœÈ€a‡9Ġxĉf““Ä,|ùhÎöó˜!ŽÎ/‰Î/XçsĞß ÓúsáÜ8ó§À–‚',Êú`0NĜü!ĈÛ kEŬ‚?2¸qµiÎA9°–Hú§úŜğöVW°XdßU]DSĤ‰Ö)׊C;™LïôöP„¤6ç2ߚġ6Ÿe4œ^‹€Í:G4íċü‰Ìö2¤³ŒX¤ŝ/Ĵ6ÑĜ.¨°È€ âûNL,7ƒµR Ë2ċïÙcÌ{ñ·Ĉ8;ĤÖw jüöËÍ❳ccĥ]ĈšXµ Àò9˜Ç
+LqÀžxâĴm}1ÁÄĤDŸĞ™9U,ARšœżSÖĞNV_ĝ—Ì’.8„Á˜˜$qÑ%ñG‡’Ĝ½ĵšüħĠŭ>䪒GL)ŭlŞEòÒ,JÇ`ôô§Ĥ
+ݞJ–`I6ĝ/͑òûäÈ7+-mɞsIESÙN+Iù\²S"eħ쒝A£˙£°ŭV0,ó)w0Èñ*Ŭî³Ü!ğ£¨KEÀɜàĈœŻĦ„ü*İ.ûD& Kxö¤HÄ*7Lzä ;³Fü×hq5ÖĝdîżP*pB^ƒ(ÉA’&Á\›çwXK3=g”ğÊâF„<ÛÚFĵ<ä+ &d™›ĦŸrú4Ċñ\šä1çˆDéç82ˆ†e‚¸ç'Ŝe9Ù ZnüOĉx)óÖĝu6ÑzıĜĞP7ĤhÁğ-Ĉˆ&eÏ7£>ó—ŽI‰uŸÌÎùöC~g€ħ*<ì•$6 °·ċ‘Zŝ@hmóKc¨iêÚ!=šGÓ4×0J4VĉoĈQ˜şh{yÍekIq#~w^ˆ;wBE•é99U^Zè'ü° 2ı4yó@-²B†|ÓÖı}ĈXç“ïàM¨
+—kĜKK36~ xA³-áıxy5–Ĥè¸KÏTgŒ
+#hp›Ñh+lyKƒŝZ\{cşxÁ”Âĥ=£™ğ÷;'-ìżù;Ÿ v.˘Y°ûĝr5 0˘Ž"ƒFÚĵĵĝ.ô }ʔŽĈHü¤qc”ôjôLFĜ˜yHÌĵ쨃 ǝ<ĝX§1 O—S Œħŭ´3O>Ózŝë‚ÌJĦÏ ú p>µó’'ˆ˜É$›ßFWH÷‘HN£KÙúHík²Cħ=ôĠ[°“žÀt2˜HÜˈ…_ÊÒáéïËöĝ&Ĉ×o]V¨Ĵ´=Áó”bé¤0ŬíH_JJ‡ùyìùÙߙBĈy˙ÒëŸ*úKIHPĤ TixÂMAħ™¤3à›
+QL U ÷^ìh„Vé
+ŬK­”‡Y·nÍ´{îEŜŻüxŠÑż-żHlĵ6/BĈBÍĵ9Ç5VlƒlRj Ċc<–‡Zqx*A~ŞĵĐ4[gcö›ê1û@żt!ùı›ŞúB‘ù+–Ê„uҞ›â"ҘBzJl¨‡´µó+*"mż2˜.síĵÎÇ"H…›êDOí?<hİäZv³€!Ôg…LÔ£°ħ’½kÛ#¨ żöŜ•­şšOĜ:ĤYu(ìÔĵž¨L™£.‰+{{gcŸÌĥ>‘ÄóÒżz”Eúĝr´Î*EM{ÙAB÷Újf]HE–û½ü˜Wb‰šäĊjIħü×Ħ°SE1Ì ‚‡­d³Á9 ÇŸ)'Yâ>qûËÄ@Ӕ—‚^‰o''†8%ìÙç r;·sEo ġgE@°M9ñÌ
+~{³ l!‡‡ ¸‡FċR´[a?˜FŬÀv ì%°u <îîÉ-S¨ĜòŭÁœH´ç’ĥ鸅kìéëŒ@û{œu½Ŝ(˜Q™ÁñˆÓ(Nœ.ŝSŸŭc<'té¸'B§¸&KáëmˆVŜwê< ·gjÓLş—n׺F…9Òñ€“‘ŸBI@Y™Ì[ÈĤÔH$HΑ}5Êp1>ßGñdÒĞۛ˙Ta#
+endstream
+endobj
+839 0 obj
+<<
+/Type /Page
+/Contents 840 0 R
+/Resources 838 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 831 0 R
+/Annots [ 832 0 R 833 0 R 834 0 R 835 0 R 836 0 R 837 0 R ]
+>>
+endobj
+832 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [161.906 562.622 202.749 572.603]
+/A << /S /GoTo /D 26 0 R >>
+>>
+endobj
+833 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [206.029 562.622 349.805 572.603]
+/A << /S /GoTo /D 26 0 R >>
+>>
+endobj
+834 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [374.708 413.055 415.551 423.504]
+/A << /S /GoTo /D 18 0 R >>
+>>
+endobj
+835 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [418.831 413.055 464.345 423.504]
+/A << /S /GoTo /D 18 0 R >>
+>>
+endobj
+836 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [305.954 256.427 346.798 267.065]
+/A << /S /GoTo /D 150 0 R >>
+>>
+endobj
+837 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [350.077 256.427 385.944 267.065]
+/A << /S /GoTo /D 150 0 R >>
+>>
+endobj
+234 0 obj
+[839 0 R /XYZ 144.727 243.061 null]
+endobj
+838 0 obj
+<<
+/Font << /F104 259 0 R /F96 255 0 R /F23 330 0 R /F106 260 0 R /F101 257 0 R /F102 258 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+844 0 obj
+<<
+/Length 1405
+/Filter /FlateDecode
+>>
+stream
+xڍWK6 ÏŻ­ÑʒüP‹=´@·@EÑĉĥ³@[™XeO_R”“8“éÎI4EQ||¤hž<'<ùŭÇġ×ġ§/şH4Ӆ(’ġ6ɔb(“’,:Y7É×ô—~ġ(
+•ZOHÉô¸ÊxjNÄ1½íl=FŜÎñŻëšhżħÛplêFO›­§É·ŭóâ LŬal]żúĥŝӗŒgW6
+Y²ĴÔàA°Î§Î~ŜoIxáO!˜âb=îltsĤÁ;áDò(´fy•%YĈtž“,/WI
+ IbE‘Ï
+kseċâb™1İĞYî`êóŒžċ<}â9wѝm$]O+Žßϑžu>eRĊû½§#ʒ•ülܛħèħĴ”δsš8Ö"ííJägĝ(Ó­54XÚ Iƒ•2„™F·7c[“p½³ġ íl]ÔVğŭ$6m׎§Ÿ'²´ŬĈ=kû…mÛ#jÒ,²´uSßüˆ9ĠİÁˆĜVYÚGTéŜzOñ/òY'PKÛ­÷“mˆgúHû`Ó§Gêò;Ĥžïġ$ìŠŬŝéT8 •NŬ–Öw`‡8†|}v‚ÉJj&·‘ÚDNÓz³élV$àŻÎbÁV•ìl£‰}wšym4;&;èŝ€iĊŞĴX:lš†‚\Ċ–ñ·€ÓR*²üĥĈ %4#G7Quzr1žíH„ŸêQ13\ô —¨*ĥ¤*= Ħ(^[7yâĵ²<µƒÇ$Ç+ÉäÙñ‚,܊ò]oEÁ¸Ê>ämĦ³·-4m¨ÎŠ_A³‹{’°s´]‡UPK+}f$~Ó6$9:ĉr
+Úpġ^H.Ê$gyöĥTsžŻ’ä…ĵ’W‚U—†w×<Ĥ.}“*Ħ8`ħĉ\P§
+;7ÓEO%nĴ˙ĵ5ŬĠèt‘, _!U9ÌMÇ]‹™Ä; AóµŽ8›xğ‰CFÉY!¤ †Œ<Β—nx1½sġ€DĴu$ƒOHw🠖*ñŭĴàSĵ**Ǚ žżKGZ\=Ğ ~œ(îôıH26§Ëi‚+D²äċ2ƒ2°=úĞ`fêŒ÷D†XàJ³’ÑÒ(ö#´ĉ '
+›ÔÜRp÷k큜PċmqÏAƒvÌÊKĠúióÄıxµœċRßDí+
+Âb|ÀŸ $ŝŝŭ${ôœodɜz0 · ĴqŽ Ĵ(̈́ÁÊŜÖ;Ó·~çf8s(| 8Ÿ 7ÌkÈ&
+}(Ÿóo CÊáb}Ŭ‹%ü?d—Áü˙c™É7!\úßö~´á‚ßšKh­ôxà?„›eŜħyñ‘ò¨ ß˙eıŠ [d÷ĉ)€żG]V àż„FİHS^.Žüĥ~ĝu+]
+endstream
+endobj
+843 0 obj
+<<
+/Type /Page
+/Contents 844 0 R
+/Resources 842 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 831 0 R
+/Annots [ 841 0 R ]
+>>
+endobj
+841 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[0 1 0]
+/Rect [425.384 528.668 436.343 536.901]
+/A << /S /GoTo /D 429 0 R >>
+>>
+endobj
+842 0 obj
+<<
+/Font << /F96 255 0 R /F101 257 0 R /F104 259 0 R /F106 260 0 R /F23 330 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+847 0 obj
+<<
+/Length 2380
+/Filter /FlateDecode
+>>
+stream
+xÚĠYŬÛ¸Ï_á·³›˜'~‰Ò=ċ.iWEÑÛ·Ĥ@i›ĥĠġJ IÎfì˙Ŝ%K^jí$EĜür>8ó›Q2ÛÍ’ÙŻŻ’˙ËÍĞ?D̸bRbv³…ĤbF˜™IRĈE>ğÙÌŝ1żXò$IĉïŞğ;[nšĊRèd]=ŻjêlŞġñΕ-ġÖۄUöĜîĞşYüóĉÏ?~ÈÓYÎòT¤xT2ƒLhM‡üĵXŞDa/òÍêxĜP³)îîÔ>T6Œĥ{G§DÍ28&•ž##˜V9çYÛûĥ¨ÊÈ}¤`ıŬş{ğµ;G¤‹²i]wNµ 7u“D”Eı£-<ÊċÁŸ
+l9WŠÈŝ†ĉÂï‚żBŻ³Qœ Mş&ĤÎS™Ş!hàmGH=×—œéÄt[ß,–2ŜNü­6A‘çE‹˙q+ÎfŒ‰1ĵĉdĈg5>ilüŭ×Wŝ†ċĝ€­Kiˆœw›˙ê•òħ³íħöGÎà5&üL3Ÿ$Óárg,
+w’>4ÊÌŠZĞ0‚oĠm¨m'„ W5òŒÏe­ĴT†e˘çiß=h–ş[ÓĠžÎXŞû·SDß#ëYe hìıÊEĈdŞz2[bvBİÂ0ž^™$íy½]žSé‚t‹†^–„—e̙ŝHäà
+L*ĉ7{ïÏĝ|Wٵșñ’ħu2K.Ĉ!ìêVĴ÷ĥÜ·ÇÉ}`c‚GŸhiĴqm +›ó˘â`L&5—ċħìVŽXí1o*üOûPc( mœ(Zü˜èäĦ
+ÉN ˙*h1³ÔCûLhdSYjö"=#g’1–EíN0Ğ%¸ŝ—‰*ÈĊú÷hM°œjf´ĵHMŽ¨ġv!˜I–féW,švòvà’Œù
+bwĥŜċ·ivDĝ‹[Ĵ'¤/İÔ0|q#LP5Ċ„•Œóğ‰ğċYż˘¤xp‡˘të½[ßĈt³ôä€/SlŬçvÂÚörDêJu²ŒBÁYĤ{3(6í>öò!feÙİÒCˆÂuŽĞT˘ĉ B[×>=‡ŝ¨DċĞZ%UÜTŸâ„şœÑMtí<şÇ݇½+yÊO…:ÚF颜\ıC¨Œ“]™ÍG„q^ĤÍ<cÉ Vui3-R°o9ċĞ&¤Gù4V´ôO™"ĥ
+µ’ ·;G­Ħv ğd„F<ì‚˙UèmİPuKĤz+
+9|½Ġ\ïi×Ġ&0xĈNö|üyé;(~{ËĠlİáĦêPìĠÙhÇo^ŭ
+endstream
+endobj
+846 0 obj
+<<
+/Type /Page
+/Contents 847 0 R
+/Resources 845 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 831 0 R
+>>
+endobj
+238 0 obj
+[846 0 R /XYZ 144.727 716.092 null]
+endobj
+845 0 obj
+<<
+/Font << /F102 258 0 R /F96 255 0 R /F104 259 0 R /F101 257 0 R /F97 256 0 R /F106 260 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+850 0 obj
+<<
+/Length 797
+/Filter /FlateDecode
+>>
+stream
+xÚµUKoœ0çWp„Ÿ`“ŞİÔŞjî­é]Ìb…ÀŠGÓŞêï€mX6J½`33ž™oÇ
+vy-4]S‰Ĥˆ¨ Ŭêİ
+ûĈdC_6mg… e…yvêMS[éĈ´ÒŠbĤT¸+uô}÷Œ§çĈSŠàÚdĥ´*Ÿ;ȐLfC“oâH$‰×1Ná$A †İ;(“Ë}İ­·eÓÜ[Ñ£İ*+Û;%ŝ?ú0ô>­9–ŭh*ˆ)Ĥˆ² &)!Ĵ•½.švŜ
+lŽfŒç Şĥ˘Sv¸ÏŽîĵ™â×ÙçìöîXÛÛÉŞ!OdƒeŽçÖòíß´pEÎ÷ìáTi+°Àĉ,[g³e÷…żÜû¤Ì ÁLĜmAĈÒÇócƒoŸ§ï§é{Ċ0ĥË×ÀĉÔodFH$¸‡Ê› ëŜš?TY×éÎŝ Î9CÎî+¨ 9ûrGżîoôÑÔĥxŠ$ġŞñZÌFL$ë\u‘Ú@PXÊCŽì`’…­Žs=F´ÖVp!I‚Ò4kû˘F˘³sĊŒÈb6Ŝ’(”,Y*ÌqhġİéÌ#2EÏ$Êê| ˆĊ>ż7ÛWzŠ*$eú/NÜÓ.ğ7Şzé‘ĤëGŽÌħ&"°okS=ù²Ŝî†îL¨ğ-ΕYDħ#¨•TĤï+Ï?×°„Ĉh);÷VDÜyÚgy>=+s|žšÍ”İĝñBĴŞıèuë
+‹Ë<\;ş_ŸeŠIÄĦ)ĈBĝ‹€ż·Z*HPġ_ZóÚÓʟÔÇ$…Qbŭ–iFQödF`Ş X—eµĴpézçf”;rë£Şqjarij)è#KÏıšäĦÁêċħ…Ís‹2×ĊaĉÖèĥ°Ûğ³gsË+: Uƒó ™•e@ûËĠ};‹ŜF?“Ï(E?#ˆ)ù¤ŸĦUY‚Ħ”ñ ĉà‰p9jônwġu<
+endstream
+endobj
+849 0 obj
+<<
+/Type /Page
+/Contents 850 0 R
+/Resources 848 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 831 0 R
+>>
+endobj
+848 0 obj
+<<
+/Font << /F96 255 0 R /F97 256 0 R /F106 260 0 R /F104 259 0 R /F101 257 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+853 0 obj
+<<
+/Length 1708
+/Filter /FlateDecode
+>>
+stream
+xÚ½XIoÛFûW(ŒH@5™[ONÓ$HE£’FâH"B‘IÙ ŭ÷Ù¸È#KYÚ‡ä[·ë
+R”F4Rrq
+T4)0£<BXUŻa&ĵĝ"ĥğBŝvY Nbĝı,D-Ÿ›P~Ğ&÷r'j
+èžjĠœŞILoÎö7‰yžÀL4xüÑ`ĝóAë{<›b!î×L<ùÊzÍĝéŜbìË]ÂÂÒ/ƒ‘Ş ‰PnM“w闷OĤ!,.v~,UŞè,ujht{Ÿ Ç Ğ–û­,[—•Rl7‰/'˙,¤hÜó‚&Z·ĵ¸bSäĵšâŽĤ;#oe}f^à÷%ËĵìAùáÌ÷ŭċĞÒmçŠ!İşß~}ħw
+endstream
+endobj
+852 0 obj
+<<
+/Type /Page
+/Contents 853 0 R
+/Resources 851 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 831 0 R
+>>
+endobj
+242 0 obj
+[852 0 R /XYZ 144.727 716.092 null]
+endobj
+851 0 obj
+<<
+/Font << /F102 258 0 R /F96 255 0 R /F104 259 0 R /F101 257 0 R /F97 256 0 R /F106 260 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+856 0 obj
+<<
+/Length 835
+/Filter /FlateDecode
+>>
+stream
+xÚ­VMs›0½çWpÄ3AÑ'=eÚi;Ó³oM²6‚<âñtúßğBC"ÇéÇ ­Ÿvß·G›G_oü¸ĵıû’Q†²”ĤѲˆçHRIœ"B³h™GßrżH˜$qeunòÛEÂ1[kû‰uûŭvk†@ŬĥĤqkÛzx٘$7ÓÚì?–ßîLĤG+‚–Xèa|­wmik=˓K¤(9ĊŜ†Rij)Ĝŭe4ÁÌ²3ÚXV
+˙9Ğò6È2ÊԈœ0Ğ[Ÿù!D5AT¤ħı,'b›"S2íß[9Ĉ7Ħ,Aíçjvzŭ¨7yj)gˆ‚§‰rîC>uMcêèO˜oT|J•w;ĵZ-(Žğ²Ê“²ö;ûn·³Më·{‚‡żúíÂV•um8”ġfÀ+§!·[ézÓAR~ötï?„LÁˆ@ŒŒUëFŻÊġUŬ^ADħAVİ-t³/C$‚$”zĈ#
+`p½ŭğ̨ŞmWotSê÷ÌĤkX0{ŸHÄÄÙDx‚É‹S.EÙùÔ'½9êĉjĦh‘d™Š—['!.³³`¸ÂñÚvUî߯ÌI™IùÂôıÑëĥt:òžnMî=²:úç0wœÈ
+,a•PŠ2ÂÏcĈÈäŽı/‹^Ĵ÷C•rŠ@tdc{"lĈĔŸ3Ï£vsjÓÓ
+Sԟ…öĉW  Q˘ŸA³"½§_Ÿ ½Uï¨&ŭĠ̲Lû›Ÿż)\3MéFO°vS€ÌĤÀ%ÏÊ7í1Ï˙âÙ
+endstream
+endobj
+855 0 obj
+<<
+/Type /Page
+/Contents 856 0 R
+/Resources 854 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 857 0 R
+>>
+endobj
+854 0 obj
+<<
+/Font << /F96 255 0 R /F101 257 0 R /F104 259 0 R /F97 256 0 R /F106 260 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+869 0 obj
+<<
+/Length 1623
+/Filter /FlateDecode
+>>
+stream
+xÚµW[s›8~ÏŻàif‚ѧĤm’é%ÓÙÖmw&éƒ ²Íƒ—KŬüû!AŒC\Ïf÷Ċ’u9ÒùÎw#°µ´°u}†Mûjvĉ]L- ?`Ԛ-  ˆFV„"4ĥfİukż-Y9$´ ‘;. ħ”›(ÒÚù>{ç]Ċ̊QÌ(S°+ C½wĥ’µ„MœÙ™2£MÁD7'*³¨ĊöušÔ ›RÏ´½ù½ž(›\Ğڊd-–²7Vë;™çĈjV$f7lÊ*=ß]hál ˜WÔċ AqÈôċwYn.ÊĈxĊRê~VèvÑ6meĈ*™KQËú…²7@Ŭ·@c ˘(à{è"븄1³_·U%‹&ż×³€AŞ{
+† Ĵšf[żĵeÖ@‚"ÀÉ?e^^u™§§=S4ùĜ5iÏu\ …×TRzn=‰GEX3ĈŻ­}’ UŽı-Ħ¨Ġ[GžĠ8×[ò}´ş…+aû
+ ^kÖŜdM#óı
+ôàĦóS” z˘84Ĥ4ĵĞ| _áσç›S[ĉr|޲šŻGĠlà-Ż4r-”KġsT* |ïEAĝè…˘GG·!qÌ=Ì<žÂ >‰Ç|é„}Ċú ĥëîġ˙<”f`hşìž†c¤N˘˙r|šAQ'm‡Ò££ôĊ@ ÓħïP˘î
+Ž^ÌĈ‹.ggż
+endstream
+endobj
+868 0 obj
+<<
+/Type /Page
+/Contents 869 0 R
+/Resources 867 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 857 0 R
+/Annots [ 858 0 R 870 0 R 859 0 R 860 0 R 861 0 R 862 0 R 863 0 R 864 0 R 865 0 R ]
+>>
+endobj
+858 0 obj
+<<
+/Type /Annot
+/Border[0 0 0]/H/I/C[0 1 1]
+/Rect [288.189 534.468 499.397 544.819]
+/Subtype/Link/A<</Type/Action/S/URI/URI(https://gitlab.com/axelsommerfeldt/caption/-/tree/feature/lwarp)>>
+>>
+endobj
+870 0 obj
+<<
+/Type /Annot
+/Border[0 0 0]/H/I/C[0 1 1]
+/Rect [143.731 522.513 313.594 532.674]
+/Subtype/Link/A<</Type/Action/S/URI/URI(https://gitlab.com/axelsommerfeldt/caption/-/tree/feature/lwarp)>>
+>>
+endobj
+859 0 obj
+<<
+/Type /Annot
+/Border[0 0 0]/H/I/C[0 1 1]
+/Rect [165.31 405.013 351.59 415.23]
+/Subtype/Link/A<</Type/Action/S/URI/URI(http://www.ctan.org/pkg/beamer)>>
+>>
+endobj
+860 0 obj
+<<
+/Type /Annot
+/Border[0 0 0]/H/I/C[0 1 1]
+/Rect [165.31 360.386 337.636 371.394]
+/Subtype/Link/A<</Type/Action/S/URI/URI(http://www.ctan.org/pkg/koma-script)>>
+>>
+endobj
+861 0 obj
+<<
+/Type /Annot
+/Border[0 0 0]/H/I/C[0 1 1]
+/Rect [165.31 316.55 375.474 327.559]
+/Subtype/Link/A<</Type/Action/S/URI/URI(http://www.ctan.org/pkg/ntgclass)>>
+>>
+endobj
+862 0 obj
+<<
+/Type /Annot
+/Border[0 0 0]/H/I/C[0 1 1]
+/Rect [165.31 272.854 211.586 283.723]
+/Subtype/Link/A<</Type/Action/S/URI/URI(http://www.ctan.org/pkg/algorithms)>>
+>>
+endobj
+863 0 obj
+<<
+/Type /Annot
+/Border[0 0 0]/H/I/C[0 1 1]
+/Rect [165.31 229.018 313.672 239.887]
+/Subtype/Link/A<</Type/Action/S/URI/URI(http://www.ctan.org/pkg/float)>>
+>>
+endobj
+864 0 obj
+<<
+/Type /Annot
+/Border[0 0 0]/H/I/C[0 1 1]
+/Rect [165.31 185.183 291.048 196.052]
+/Subtype/Link/A<</Type/Action/S/URI/URI(http://www.ctan.org/pkg/floatflt)>>
+>>
+endobj
+865 0 obj
+<<
+/Type /Annot
+/Border[0 0 0]/H/I/C[0 1 1]
+/Rect [165.31 141.347 314.5 152.216]
+/Subtype/Link/A<</Type/Action/S/URI/URI(http://www.ctan.org/pkg/floatrow)>>
+>>
+endobj
+246 0 obj
+[868 0 R /XYZ 144.727 523.509 null]
+endobj
+515 0 obj
+[868 0 R /XYZ 144.727 478.945 null]
+endobj
+553 0 obj
+[868 0 R /XYZ 144.727 301.646 null]
+endobj
+443 0 obj
+[868 0 R /XYZ 144.727 258.563 null]
+endobj
+554 0 obj
+[868 0 R /XYZ 144.727 215.992 null]
+endobj
+263 0 obj
+[868 0 R /XYZ 144.727 172.077 null]
+endobj
+867 0 obj
+<<
+/Font << /F102 258 0 R /F96 255 0 R /F101 257 0 R /F104 259 0 R /F106 260 0 R /F147 441 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+887 0 obj
+<<
+/Length 1232
+/Filter /FlateDecode
+>>
+stream
+xÚ͗[oÛ6€ßó+´—ÁbšŬĜ·¸I“eIW4ĈV é-3ĥY4Dİ[úëwdRnÄ8šš¤À€Àd)òı{K{§Ĝi§³ƒÉ;yñˆFŜìÖ#G1ĉ^Œ#D(÷f ïztÍ?ûŸgçğÏĵëqˆñèJ΅2QĝcâÑiİ´~c'˜ˆ½;ŻíŭÜÙ)B!½1!ˆ‡ĦÙè/ŸÓ‘ÌSµ–fÍJÙvesY +’ş2=ukÚŒYµ>Á£eóc?وԧxt÷`à—Îq\q€bĈ`hĞÓa3ԴҎ„ódBȄ°.Ÿ1%(Œ9Lĉˆf)<GħŞ™îŻĤ9“Ù]£ĥeñÇ\–‹LŜ G½Óĉêg÷YV²!óċ¸ċ6ŬÌ*sÑìa–‹‹)k–K0Špìĝ%fħ£ïÓïÊ ̚mI2”Ä Bn+?ÙÊ”Ô{ ŝôĈ38ĥhµ+j‘›ŝ­*MgĠœ˘ôY<’·½wŠ ˘œğwÊŠXÔó^ù$}m~äP›(&´ïŽi{Çdï˙”+œµNRħyÒÚ­wP™ŜÑâK W,Íż˘H›€)ÌÖ]Ÿ‚uĞLş.%‰ ·••#3ÉÓ ‰Á¤{adħsŽ˘ë.ÓRİ֎/•–ú•(_d[hvċ~è³îá”ñ¨ƒÉ
+;[RŒ†frl/cÑèö5[}Zžé\Œ\ËJÌó§cl Ž‹ˆCÂ
+{ÁAC“A$‚½$Ŝ•™\Ĵd6ş^)Ÿ†£ż%ĊËh|ÈÒŞ6Ñlj›Ĉ:ÊĈŻ ÓŬĴz‰Úqàb1ÂÎĈçu~o6"ìv8gƒ…{+‘2KhšKŬ>QX:YĴëĥ!Šċ3ÑE;tżz<•E]}“ċ
+ĥ™7T›XdĥùÓ'„Œ¤‰K…ŒòJo¨ÁŽ
+"tœbüQ=“Oè°ôï½Ç“2KmÍq‰lÈ°íÜYĤ;ÙĉTBŞ„xr[ÊĈr­[Î˙WóĴx™—\ˆÙĥ"ŝdV=Vi½–EĠŸÚlÏ´Ĵ4f ŭ ßc(ÂĝQqd]ÀV™vj#ŒñNöòŝ¨r[lĵÏäĤ:]Ŭuëßĥ²‡>Ŭ*GXŒâ$ö0ÂVħ4zc†ĴiÚ!qXœËı 8sˆ"7\쒟β·àê+"aâFèl‚#ĝôĥxâ‰ÖTĝm5kŬüĜó[•JQĵRA ë9ĵżèÒĉçħá(`nŝ³B—M8<$bw˙OĜ< JÜ?÷5j…{ @ü ‡ %OԐŠ‹ĥœ™–BĴµ“ÄàXös^C8”…~5L͓T˜: 6şÀĠMkrXħ}ÁŒB˘gƒµRĜĥ¸¤ƒ˘Ŭ˙9V…È-™£RËBŠú<Œ í|¨}Ûz[ÛWq•UòĦs¸üOnvjĦ*Ù˙ ƒ×rşġy+í({)ÊÔVkááîİì
+endstream
+endobj
+886 0 obj
+<<
+/Type /Page
+/Contents 887 0 R
+/Resources 885 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 857 0 R
+/Annots [ 866 0 R 871 0 R 872 0 R 873 0 R 874 0 R 875 0 R 876 0 R 877 0 R 878 0 R 879 0 R 880 0 R 881 0 R 882 0 R 883 0 R ]
+>>
+endobj
+866 0 obj
+<<
+/Type /Annot
+/Border[0 0 0]/H/I/C[0 1 1]
+/Rect [165.31 691.12 342.036 701.989]
+/Subtype/Link/A<</Type/Action/S/URI/URI(http://www.ctan.org/pkg/fltpage)>>
+>>
+endobj
+871 0 obj
+<<
+/Type /Annot
+/Border[0 0 0]/H/I/C[0 1 1]
+/Rect [165.31 647.758 360.939 658.767]
+/Subtype/Link/A<</Type/Action/S/URI/URI(http://www.ctan.org/pkg/hyperref)>>
+>>
+endobj
+872 0 obj
+<<
+/Type /Annot
+/Border[0 0 0]/H/I/C[0 1 1]
+/Rect [165.31 604.675 377.792 615.544]
+/Subtype/Link/A<</Type/Action/S/URI/URI(http://www.ctan.org/pkg/oberdiek)>>
+>>
+endobj
+873 0 obj
+<<
+/Type /Annot
+/Border[0 0 0]/H/I/C[0 1 1]
+/Rect [165.31 561.453 251.895 572.322]
+/Subtype/Link/A<</Type/Action/S/URI/URI(http://www.ctan.org/pkg/listings)>>
+>>
+endobj
+874 0 obj
+<<
+/Type /Annot
+/Border[0 0 0]/H/I/C[0 1 1]
+/Rect [165.31 518.23 257.663 529.099]
+/Subtype/Link/A<</Type/Action/S/URI/URI(http://www.ctan.org/pkg/longtable)>>
+>>
+endobj
+875 0 obj
+<<
+/Type /Annot
+/Border[0 0 0]/H/I/C[0 1 1]
+/Rect [165.31 475.008 259.277 485.877]
+/Subtype/Link/A<</Type/Action/S/URI/URI(http://www.ctan.org/pkg/picinpar)>>
+>>
+endobj
+876 0 obj
+<<
+/Type /Annot
+/Border[0 0 0]/H/I/C[0 1 1]
+/Rect [165.31 432.438 317.658 442.654]
+/Subtype/Link/A<</Type/Action/S/URI/URI(http://www.ctan.org/pkg/picins)>>
+>>
+endobj
+877 0 obj
+<<
+/Type /Annot
+/Border[0 0 0]/H/I/C[0 1 1]
+/Rect [165.31 388.423 330.692 399.432]
+/Subtype/Link/A<</Type/Action/S/URI/URI(http://www.ctan.org/pkg/rotating)>>
+>>
+endobj
+878 0 obj
+<<
+/Type /Annot
+/Border[0 0 0]/H/I/C[0 1 1]
+/Rect [165.31 345.34 319.311 356.209]
+/Subtype/Link/A<</Type/Action/S/URI/URI(http://www.ctan.org/pkg/setspace)>>
+>>
+endobj
+879 0 obj
+<<
+/Type /Annot
+/Border[0 0 0]/H/I/C[0 1 1]
+/Rect [165.31 302.117 250.46 312.987]
+/Subtype/Link/A<</Type/Action/S/URI/URI(http://www.ctan.org/pkg/sidecap)>>
+>>
+endobj
+880 0 obj
+<<
+/Type /Annot
+/Border[0 0 0]/H/I/C[0 1 1]
+/Rect [165.31 258.895 256.737 269.764]
+/Subtype/Link/A<</Type/Action/S/URI/URI(http://www.ctan.org/pkg/subfigure)>>
+>>
+endobj
+881 0 obj
+<<
+/Type /Annot
+/Border[0 0 0]/H/I/C[0 1 1]
+/Rect [165.31 215.672 243.825 226.541]
+/Subtype/Link/A<</Type/Action/S/URI/URI(http://www.ctan.org/pkg/subfig)>>
+>>
+endobj
+882 0 obj
+<<
+/Type /Annot
+/Border[0 0 0]/H/I/C[0 1 1]
+/Rect [165.31 172.45 287.64 183.319]
+/Subtype/Link/A<</Type/Action/S/URI/URI(http://www.ctan.org/pkg/supertabular)>>
+>>
+endobj
+883 0 obj
+<<
+/Type /Annot
+/Border[0 0 0]/H/I/C[0 1 1]
+/Rect [165.31 129.227 368.954 140.096]
+/Subtype/Link/A<</Type/Action/S/URI/URI(http://www.ctan.org/pkg/threeparttable)>>
+>>
+endobj
+562 0 obj
+[886 0 R /XYZ 144.727 716.092 null]
+endobj
+442 0 obj
+[886 0 R /XYZ 144.727 678.321 null]
+endobj
+568 0 obj
+[886 0 R /XYZ 144.727 635.178 null]
+endobj
+576 0 obj
+[886 0 R /XYZ 144.727 591.956 null]
+endobj
+490 0 obj
+[886 0 R /XYZ 144.727 548.733 null]
+endobj
+586 0 obj
+[886 0 R /XYZ 144.727 505.511 null]
+endobj
+587 0 obj
+[886 0 R /XYZ 144.727 460.271 null]
+endobj
+588 0 obj
+[886 0 R /XYZ 144.727 417.048 null]
+endobj
+595 0 obj
+[886 0 R /XYZ 144.727 375.763 null]
+endobj
+399 0 obj
+[886 0 R /XYZ 144.727 332.62 null]
+endobj
+608 0 obj
+[886 0 R /XYZ 144.727 289.398 null]
+endobj
+429 0 obj
+[886 0 R /XYZ 144.727 246.175 null]
+endobj
+609 0 obj
+[886 0 R /XYZ 144.727 202.953 null]
+endobj
+393 0 obj
+[886 0 R /XYZ 144.727 159.73 null]
+endobj
+885 0 obj
+<<
+/Font << /F96 255 0 R /F106 260 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+891 0 obj
+<<
+/Length 273
+/Filter /FlateDecode
+>>
+stream
+xÚPMO1ĵó+Ŝq7ĦŬ÷şŭ Ŝ0
+/D›³áP˘,ĝóŬµ ħĊK;yÎÌ„5 LĜğ/Ŭ ˜X –[-4¸g )ı jN‚[A•U˘\ĉK7;˙ƒŠ)ÄìjWûí*gBa6ŜBüûEG¤†ˆ°şmœZ âÊX`DÜ*wùäfÊïŬC”ŭûJ“½ÜVp4²yù–ĥT`Ŭ0q˜ùş¤aħL·cçhAĞKż–0ÇSĈE.1{Ŭvġ˙Zp/!
+~ŭcDoŝ)˜m|N˜­Û#üU‡ĥ|dF½:şab%¨@S””îF
+ı0˜’†[ÙħµLX×nü„
+endstream
+endobj
+890 0 obj
+<<
+/Type /Page
+/Contents 891 0 R
+/Resources 889 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 857 0 R
+/Annots [ 884 0 R 888 0 R ]
+>>
+endobj
+884 0 obj
+<<
+/Type /Annot
+/Border[0 0 0]/H/I/C[0 1 1]
+/Rect [165.31 691.773 259.377 701.989]
+/Subtype/Link/A<</Type/Action/S/URI/URI(http://www.ctan.org/pkg/wrapfig)>>
+>>
+endobj
+888 0 obj
+<<
+/Type /Annot
+/Border[0 0 0]/H/I/C[0 1 1]
+/Rect [165.31 647.285 237.18 658.154]
+/Subtype/Link/A<</Type/Action/S/URI/URI(http://www.ctan.org/pkg/xtab)>>
+>>
+endobj
+400 0 obj
+[890 0 R /XYZ 144.727 716.092 null]
+endobj
+610 0 obj
+[890 0 R /XYZ 144.727 676.829 null]
+endobj
+889 0 obj
+<<
+/Font << /F96 255 0 R /F106 260 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+893 0 obj
+[333 278 278 556 556 556 556 556 556 556 556 556 556 333 333 584 584 584 611 975 722 722 722 722 667 611 778 722 278 556 722 611 833 722 778 667 778 722 667 611 722 667 944 667 667 611 333 278 333 584 556 278 556 611 556 611 556 333 611 611 278 278 556 278 889 611 611 611 611 389 556 333]
+endobj
+894 0 obj
+[821.1 673.6 542.6 793.8 542.4 736.3 610.9 871 562.7 696.6 782.2 707.9 1229.2 842.1 816.3 716.8 839.3 873.9 622.4]
+endobj
+895 0 obj
+[439]
+endobj
+896 0 obj
+[777.8 277.8 333.3 277.8 500 500 500 500 500 500 500 500 500 500 500 277.8 277.8 277.8 777.8]
+endobj
+897 0 obj
+[333 278 278 556 556 556 556 556 556 556 556 556 556 278 278 584 584 584 556 1015 667 667 722 722 667 611 778 722 278 500 667 556 833 722 778 667 778 722 667 611 722 667 944 667 667 611 278 278 278 469 556 222 556 556 500 556 556 278 556 556 222 222 500 222 833 556 556 556 556 333 500 278]
+endobj
+898 0 obj
+[500 500 500 500 500 500 500 500 500 333 333 570 570 570 500 832 667 667 667 722 667 667 722 778 389 500 667 611 889 722 722 611 722 667 556 611 722 667 889 667 611 611 333 278 333 570 500 333 500 500 444 500 444 333 500 556 278 278 500 278 778 556 500 500 500 389 389 278 556]
+endobj
+899 0 obj
+[600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600]
+endobj
+900 0 obj
+[556 611 722 722 944 722 722 611 333 278 333 469 500 333 444 500 444 500 444 333 500 500 278 278 500 278 778 500 500 500 500 333 389 278]
+endobj
+901 0 obj
+[277.8 277.8]
+endobj
+902 0 obj
+[808]
+endobj
+903 0 obj
+[500 500 167 333 556 278 333 333 0 333 675 0 556 389 333 278 0 0 0 0 0 0 0 0 0 0 0 0 333 214 250 333 420 500 500 833 778 333 333 333 500 675 250 333 250 278 500 500 500 500 500 500 500 500 500 500 333 333 675 675 675 500 920 611 611 667 722 611 611 722 722 333 444 667 556 833 667 722 611 722 611 500 556 722 611 833 611 556 556 389 278 389 422 500 333 500 500 444 500 444 278 500 500 278 278 444 278 722 500 500 500 500 389 389 278 500 444 667 444 444 389 400 275 400 541 0 0 0 333 500 556 889 500 500 333 1000 500 333 944 0 0 0 0 0 0 556 556 350 500]
+endobj
+904 0 obj
+[500 500 167 333 556 222 333 333 0 333 584 0 611 500 333 278 0 0 0 0 0 0 0 0 0 0 0 0 333 191 278 278 355 556 556 889 667 222 333 333 389 584 278 333 278 278 556 556 556 556 556 556 556 556 556 556 278 278 584 584 584 556 1015 667 667 722 722 667 611 778 722 278 500 667 556 833 722 778 667 778 722 667 611 722 667 944 667 667 611 278 278 278 469 556 222 556 556 500 556 556 278 556 556 222 222 500 222 833 556 556 556 556 333 500 278 556 500 722 500 500]
+endobj
+905 0 obj
+[556 556 167 333 667 278 333 333 0 333 570 0 667 444 333 278 0 0 0 0 0 0 0 0 0 0 0 0 333 278 250 333 555 500 500 1000 833 333 333 333 500 570 250 333 250 278 500 500 500 500 500 500 500 500 500 500 333 333 570 570 570 500 930 722 667 722 722 667 611 778 778 389 500 778 667 944 722 778 611 778 722 556 667 722 722 1000 722 722 667 333 278 333 581 500 333 500 556 444 556 444 333 500 556 278 333 556 278 833 556 500 556 556 444 389 333 556 500 722 500 500]
+endobj
+906 0 obj
+[600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 0 0 0 600 600 600 600 600 600 600 600 600 600 600 0 0 0 0 0 0 600 600 600 600 600 600]
+endobj
+907 0 obj
+[500 777.8 500 777.8 777.8 777.8 777.8 777.8 777.8 777.8 1000 500 500 777.8 777.8 777.8 777.8 777.8 777.8 777.8 777.8 777.8 777.8 777.8 777.8 1000 1000 777.8 777.8 1000 1000 500 500 1000 1000 1000 777.8 1000 1000 611.1 611.1 1000 1000 1000 777.8 275 1000 666.7 666.7 888.9 888.9 0 0 555.6 555.6 666.7 500 722.2 722.2 777.8 777.8 611.1 798.5 656.8 526.5 771.4 527.8 718.7 594.9 844.5 544.5 677.8 761.9 689.7 1200.9 820.5 796.1 695.6 816.7 847.5 605.6 544.6 625.8 612.8 987.8 713.3 668.3 724.7 666.7 666.7 666.7 666.7 666.7 611.1 611.1 444.4 444.4 444.4 444.4 500 500 388.9 388.9]
+endobj
+908 0 obj
+[556 556 167 333 611 278 333 333 0 333 564 0 611 444 333 278 0 0 0 0 0 0 0 0 0 0 0 0 333 180 250 333 408 500 500 833 778 333 333 333 500 564 250 333 250 278 500 500 500 500 500 500 500 500 500 500 278 278 564 564 564 444 921 722 667 667 722 611 556 722 722 333 389 722 611 889 722 722 556 722 667 556 611 722 722 944 722 722 611 333 278 333 469 500 333 444 500 444 500 444 333 500 500 278 278 500 278 778 500 500 500 500 333 389 278 500 500 722 500 500 444 480 200 480 541 0 0 0 333 500 444 1000 500 500 333 1000 556 333 889 0 0 0 0 0 0 444 444 350 500 1000 333 980 389 333 722 0 0 722 0 333 500 500 500 500 200 500 333 760 276 500 564 333 760 333 400 564 300 300 333 500 453 250 333 300 310 500 750 750 750 444 722 722 722 722 722 722 889 667 611 611 611 611 333 333 333 333 722 722 722 722 722 722 722 564 722 722 722 722 722 722 556 500]
+endobj
+909 0 obj
+<<
+/Length1 1416
+/Length2 5988
+/Length3 0
+/Length 6955
+/Filter /FlateDecode
+>>
+stream
+xڍwT“ÛÒ6Ò¤¨İ8ô$4é½Wé R’ ”$$‘‚ôĤôŜ”*Ò;ˆ€Rİ*)RTŜù‚zî½çŝ˙Zß·²V²÷Ì3³gö<ÏğŜpŜg( `‹‚ÂUQHœ
+)ù% ‚Û”!8<P…h>t€…`1I]I Iü Da$Ê7„-@G ‰BÂħœJ(´'aó÷À €%$îò˙
+(¸À1 àà.ĝag€!
+†€<˙‘‚[Ú‡CKîîî‚Ĵ
+c/ËpGà
+˙­]¸-âĦË{5pĵöxJ €EA"żíĴ*Ân{ƒ9üĤÍoğñ…àœHĝ=qñˆÁG@˙ċĞ ĉ„Œ`ñÜüí‚`ñ’ŭäĊŽĠ?ëPAÂPĥê@0ˆ'~ĝĝ(ÀŒ—İ-Üğ@A$
+‡à{öĜĦ0ƒ•
+ÌîKÒ$)fByVd¸N•aëù8̌ ­bĠÏ`U+ÇV]E׃Ĵ™ÛŜ‹Ġl5ž"{lŞ+öl˜ñó½K£ñŜû,ìT ÏL“oIb: îħFR·‘ËÙÚwrRùüUĠŝ)Ŝ‹Hġfp³nK[EQ†6=‹„É·/¸FhÑ’è_Ù_\ž.D=OÖMcגn9¤ˆs/§žëî홢é`} éöxi“#G£"Ġ˘,rıÜdêùµ“ìB·ġ4Zo¨ÚuùuÛΗ³<IUş[‹[떷ıÚî:Ĝ$ĜEży²Ò §èS09ıËĥ“YĦlDġŬ²ñûX“öT„úۙÒ/ĴNšĦÁZž£íCs'µ’5,ğ‚¸ùuâdÎJżùÖrŽv³ !lúĞ"‰fQ…>ƒgÍ×.y‡sĉÔw¨İ…xŠC³‘lÁ”DP“ż°U7DJ™ñ5`í×îËùĉ{Ŝ^"gÏ·[Zı&\Ë#‘Ñ´Q^sĠS>iyώ6ÀÀw5°ÔÊ(%/w—ù=ŸryKínToİW³‹è÷ı4O˘P’
+†ĥ4fhC|lZ˘ ĦxŜ¸›nÀ,¸@Ž ›Ufw=ì)§80Ö?ç"yäK‹>^³·@ŽÇ­):™EĵLV·WÛs­ĴÖÑpùòj^B/Ÿ¤ĜDS„`½D?ϓîÔtĊ'³XáÁ§Orĝ­˘ qi›^}dÊ`kE҅µë$´SÇ]Gà Ħ š‘KTßLkĞ„zѨ ċŒ—áD-²½vĠЏ,Ĝ,TöŜ8ĤôDĝùŽ)é×
+Šٓw'F¨!™<^–ë ïúŽ<óü?ßA_'ċH5`ĝWùgŠê Ŭ–dÈĴgî‘6WòœL4+ˆÄ¸­1:ìá¸`[˙ÀébŬġ!K2ż'²}.³Áú“úÊÍs²ÜÁŠ÷şÖçJŸ;ŸÌŬŻ×2éĴç
+óóÖvD¸‰ú
+çKÜĴÈfƒ4×\ƒ›ŻĤùĈ‰½òĠ
+ŭ°6İ xuy²X(Öĉ×ÚrRŒ ë:sŝ!ë7cĥ&ŭEŬ<ş˘‹Ĝöġu_˙EUŽtöt(ŬmîZ/'e}(NŞşûÚŞc^CGĤċ˘.žHéİÈaêÎlġÔı£oşŭp¨~qe9wÁWİ€
+ŭĞĈlAJhèÊ{y݃v% ĝ*—Şw$Ċó“à˜ı†h AÄ÷”ĉ&띲àË4vzdĤ3Š²‹‚Ĥ÷c£€qe\ċ˘ğWŜ ֎}"¨˜Ġ67ı_ ŭ&b–eÑzĜïH/Ğ2êTċ_uÛĴ³M;ĤîàYwĴqrĊ^ú@'ÔùÈH9|ĉ™Ŝ7îê:?Á+OeD ‚…Ù|,Ù
+[ŭ$M ŽşĤ¤vóîO ô.+×÷s5-âüìĈ݉$ĝ“^ŠUıi >ÊñsPZÁbÈO"~*HFı=0Ú9ëéÌŭxAûR îUцq ío+ämŒ/]ä‡yécŒè$b&U óMġì&’ĈßDQU¨Ż˘—AÔIoħ“=Ê;}K ı¤âhB❠ß÷U&šhŸ‹zšjùxùo/$oúLÔá.ç9*ڛȔy}žh3×ôk^ĥ¨jİ=ĥ9uË9C#1ĈWtLL‹Ó÷ż^7À­¤ĤĴV”V yeŽŭŒ Ê'6k;Ĥm^AӖ#²›4Öé‡X­y2ï§nZİUâĉDż½Wš—|ŒêîöV~ߪQ÷è´S·€ġƒ@;ò{†]—Dz2wÒ~dNĠÄxĈ$b*şxpèEöjûçĉèÀ/G‚˜²
+˘[Û*/ˆJNëżí^[ ,
+z´ôSFBµ67̑ŻXLİMŒˆù*Ù Hż ŸùÈċŻĈœ5<
+85żjÌêJrʟß9~uĞÌ%rZ~Ĉ:OáŻċm÷›FÚhÉĝ9 àä.£ÊDÑmÑhżÍ²ÍpJR³İx…SqŻÏğ_3ˆm[tĜSŭH‡âŠZ³Í{É7•Ô
+ùÇë~ÈxÒ1ë#şüCŒşMav´ÛĈfħĊQHIx“à~ġS˙ó3NŜ#1ĉŸĥë—ç'b{זîEq ‰KŭÛşVŬÛqÁ|ˆ˘DYžfñhVŭÉ(àµq~gß&vĊĵ)Ó1Ĝ÷9Ċƒ·8uµË½‡·RÊóK€W½äŜxÇ•T˘égċÌ-kƒ§>o½“aĦΠ'ıa܅ô”ÈRĝ~ĵgi`ù|żá ÍàúI )¤ŞáP)ŽSUv!à™½9“'LR‚›5XB¤;s€8=œnŸ*JúKĴ~µxċëä§=$˙ġ{ÉÛĞ}j2V/>­ñ8•§7"ÈĊĦ#ħòXĞ›jç‚ħ!dTë zû!i÷#8–/¨ÒM5¸ÊÏÙd2˜Ĵ8ÂÚ%Ôäĉ}zàâs£*ù–‘…ö/ÏûżQY …nDò+•ın·s…œš]_×ÈMïM!Ĉĵ~0Y÷öñğó/Çp”[Ü|Ĉö&ZîÛàhYy†Ŭ˜ÒÀ ÒʍĤ${èÑm'Òç=
+9lÔܟ-u?ÒP‘SÓíMĊX”é%V:O~”aÙ)²òU‰
+`ôâ8{Üû>ês2Œ@?}­°IèPˆÁRż³!Ñ|ĉÙÜĜŻĤâ0ʵ"w#0{}ŒÙ&1sA^"òv
+êĵv<Ä(ÙÒ
+Ĵ#ġˢ‚EXÉËnf)uĦ²à×Urέ5U0:ÚĊ3‚{ùû;·ádı“k8“O@&`w,T:$1~êÔé¸ä=Kş:”€JÈıôô}Ñ·|q5Nšpô@óğġzŸ’#‰GÈÓ·0C˙ufÑÛĊqYM Äˆ/òÁ·“êü•ÉGîˆK]yôlĞĉ|K̚mµV!cŻ´ù<ĥ&`Zîpeŭ£×eİhkËĝfŒŝ z|y8wBÙ½"Ĥôâšŭ“Ĉ”w̒T‡Š2ğ—vŻ3p¤ó֋Ċîġ8`¨vo’³ÁK¤Vúù›v
+ÙúíНTRĉÈ òfäÁ‹uùшŠ“b×+ħŭ ċ/JİÇÑ_íót/ı{ZΎ?ȘÂ
+ışü8“Ëü”ŻUw´'ċ½ğkÔ(ò˜:¤-ûíÓBŬç£Ôs¤-Nësĥso4Tdş ò-,1
+Œ–2>ğ½¤]Fcw5ĵP³Ûfó]‚ÇĈLÜj Q‡ıèà„CѲ&euĈµìÏ BX­ß›FzÍü+ ! ù’Äô]=žZÓ5gŞRÒĉçÙ‚OüÚ}ĥ^ÖϒÒ\ß1bZO ĜÊ7: kÍŬı5NjÎ%œÎ^; 4ˆökĵò=%]­uÓ[Ër*w~ ‡÷Ù×ĉîLgïÄÉĉùhRòœï¨? f&óċOv3–S–ĉñïKÚ°ÌK?Íû‘ĝj3äËÌŞÚ‡nš7ñ$ġiF+:{óž‘iâô"@VŸŠúÖ;Ù26bL]$„$ħ¸Ğ×ĝzo!žŻJC3²/Q,d3„ñŬ’’ıšNĴ6ù著8ġ]C š+¤Š#Üiwñ½üYmAJ$DÇ?ìmÒMş;½UpŸ”hù—[İ”WpÚĦâC• äŜ0ŸÁ‘µ½[<³–¨UqäIzلı2UùM$‘W?X/wʜÇSŸò%—ëI,…(ĝö3<{@9ïiEĊ/aġĉ1ÉЧm³ÏÄôÈB'Äċ‚ċ‚.)“ĵŠ&ˆeħx²İœıġ²‹iġ8h$ä<Éǝ‡FfŽŞ´ĝ@ş°Ż53ìÂ=
+ò\˞òŻżÓy $% &lKB÷žâ†˜(=(·wùúéyïÖm¨ZèKï0€Ŭ°zŝF—Ş'ĈD“mÍ°GIêO*mLÑw—\= †ğoÍ{PÊìd¸…Ÿ¨ ÒùV˜7ŝ‚Žî”
+ ş˜ŒÏr—h§%-˜ÚG¸t†VRµrU|U,6 ?›-4ädáÒiŒÎ5WÊK ‡.4Dó‘+¸ßÊĜ `)Í ÏU[du6Ċ„J“ŠœèôZ3Y…úŭ•âVÎz,§ïIá8ü!+o>áÑʁ
+˜65qN1Mö/żŒsfí#Ĥğ£ùj|÷Ûú²£*g#Z×dÈxıúŒî÷{s'exĞĠ9ñ­8ۍ:ĥŞÎ× šÇġorXžs;FŸC—xée|pQÌü°áxm'Èı~£˘ĉ=Vڤɝ ¤<œ°˙Œ—íİ*càV²@Qûdġ!Í#/”h`OŝÔËjÛ"j•Gñǽ\ít?‘vĉ<Òn”ĠL Œ-LÚ(]!x|×n”–G_( ͧD£qUġ38#S=›–áMA=8Ż4?Ÿ˜50ĉ”ôًkİÑY˙
+g‚Óé̖£ÂXÉDĠxmäŜ¨ê]k÷?ë·_x²†n³›˜%D´ˆvİlKòcżkuĴÓZhSx6¸’×(ĥĠq´Ë˙ĊÖ+ĥzÛt}Žb ĉHċF]—F†Ĝ˙ħ†ÑŽè³ÏôÏĦ?â/İ'ĦËç&0‡,KgÉÙgŞíӒoİġòV9îôDŬV–,"ˆ¤!ĉä!ĵLaXH×ñˆ?íéf·ÖN>’cykKË{$:Ú²ĵëÁŭ­IMYvOĵ™—EĜM”5 Û•Ŝ}Rmİ­Úà=¨Óúžĝ‘Ż^^.(0*yşrĤÄXĈHEœôĴËßı—z£kè£ß ·vT’r~ê„}È,ٙgÀáZÎ
+„-ìÊWe]$f…w£ŻÌ+§Ìá óE
+endstream
+endobj
+910 0 obj
+<<
+/Type /FontDescriptor
+/FontName /XYLMEX+CMMI10
+/Flags 4
+/FontBBox [-32 -250 1048 750]
+/Ascent 694
+/CapHeight 683
+/Descent -194
+/ItalicAngle -14
+/StemV 72
+/XHeight 431
+/CharSet (/comma/period)
+/FontFile 909 0 R
+>>
+endobj
+911 0 obj
+<<
+/Length1 1384
+/Length2 6013
+/Length3 0
+/Length 6959
+/Filter /FlateDecode
+>>
+stream
+xڍtTTíÚ6Ħƒˆ4(ħARrè’fènÉf`fè–|A¤EBPJ¤•éFZIARâ=çĵç˙×ú5kíÙÏuÇsÇum.vCAeg”# ‚BbÁB"²€Şž1Xqq™ÂħĜÄeCcà(¤ì8¨˘aP,Sƒbñ~z($ í…
+:ñ`)_ဲ; w‚"=(Ö ĉŽżÑ Š
+G@ñż*‡e#
+ëR l“Ùw^ß/*Rħ£û‚2?Ú.ñ‰Qé~ÙT*"篷ĈĦϚ0iÊqD/†[Éol˜Şx³ğW'PZ˜Ŝ:^èmzqâ#€ÓRâÉ×k×ù"8n;Ĥ–ßÊô*T‰ŝŻ½êPъFƒC^‚ËW§pe,Oß°oì6˙vvMċş‰éáóŝs­£ŸzĜ? ,p Jl^Š·Ġ
+IÓÎċ뿸oUVeÌtğmÏdG̖| %­Şzġ*]ħ›ÉAqW*užÜ'û˘ġ£·ğ҆òâàa–Ŭ[Ĝ‡š”r’iµ5Ah/ħOÍT .ŸÒWjbK*ƒöŭYG΂Xılf=·Bmêê–Ċ Ľ٭Óí´êžżÚz]vB×ħìwMd–hGOûHHqO‚w€ä,›V€ŭ̳û)‡Ó­⇙ĤŸĴt„Ĥtżvó5 0hĵ× €Ĉ¨ŜVÑÈjħ²ĝMò^‰Ġá‰j54\*İeÈɉĝñċ¸¸F0…aÎş‰qmÖÛwĜy”I§g”[”ËġĦc™ôvSš€*XŻX´ÑĈ+9-;zHòĉÓú›/(Ú[(ŠÎeŜġÌ*ĥċê<¤wâcüñà³Íĥë3l ·b჏mß IL×|S–8³ġmTkÒóú& öG>*ċ[ˆú²­J{²ë:*]¸ŽZ ^› ßïRıTŝŭxƒ]$ıÙ*ċÄıqÔÊĠVòn ›ÎçóÌgQ[u(µ?UÔrû@鵚£â !a­_!Ku&-ìò“<¸×41°@(
+"u‘&;>܅‚kƒŻÊ²4ü d2ŜêâI^äí9m:qÓ? X4 <ëz; ğÓ]„W½hâîâ[˙êŜĤTm1U˜Wâ>ċÈ%2ŝäâÍc‡§k—ÚrRfS„]öZ3\†ê˘9²ĴĉÊ|&*şÂËò8úM œj–rîìA&B4àC9ïş1ˋHI2iÁ‚é
+sŠ9_â…)“I8“@ÎVĜÌË-cjúúüĈzH|'1Ñ0ShµQ÷Â@¨ïá…ŒöÖ}–ĉ1T ğߍ²Ë(L Ï÷ĵ³@°÷Ég×ÂÑ!n)Ç5)^ôß#î;#‘ÀŒFí•\$ĊiÎB½ü™Ìzéì_=ëí¸]f½‰[쌧.Kïtô’ ˜Ĉġ…•‰ÑŻš›Ëċ4ôĈ ^Ħ .52Țƒ 4HK°†Ż·FEş>ğeskN‰2wĴ94Íqüñ$é­yĜ/µ´9sÂñSIü4{Í*n8uĝƒÍçÓ#¨¸˜áUO0P$3ïiž_ó²'HĈĜŬŬxŽq~ŽĵâŸÔLzİ$w%Ov„Y7˟ÉöĠ6M›˙î­Żö6NOCJ†SK~Ĉ˘<ĉzŭ3!éG­M–
+¤ úïêGĊéĵ"Ì”Ëmú:”‚ƒ󒐏Ŭ×ߍ}A(7÷9ßùĴ¸ċÇarÉĠ“Ù› ħò/r-´ÓDàˆ1M/däĞ4(TĠ"Íż<w›kìn˘3Jéƒä£ Ûĉ¨ÂC8q‰bb †2£2ë·12ф< %Ĵëè ‹#Yŭ‡ùë]˜Á½Î‡ĠlJ$.á—3ìX,Ĥ#ıEĊ}¨ ŝä˜C˘[4>ӑë2ŽçıK/žÑĵïµh½ Ħĥ~áà‡ğoTNÓŭĈèQËuÈMÜܔŝ[üޝ>°ïlŸĞçžeÂeúZżNG*ĦŒ”ß8mdŬŸ~Òeµ×N³aċ j(cœw0fmxüÔ!4S{v{P'ĵi˜Ró>OE•ám#>J­ñ9,WîâyjF“uŸT÷ۓl·>dĉċrĤ/V<C“–7Ĥ­ßx,Ñ!C³iÂH{ä#bmŬzrRŜT%PĊJö‡ŝ§ ’*}–
+ŜcöĥQ鴎JI~#ä¤ìŞŞlq N¤B!·ßĴoħ.‹0 Éç="]1†Oœ9löËú†Òıuċ=Ŝ] ĦD\Ĵ NŻ”^=ênK}ïÒ×éïWàÎöÙBĊżô}ô³¨ï˘ŠŜC ¤$D_wöF£[- ĦıìÒLyî ÔÉhFWŸqöK ÒCİ%™•’Ÿ‰m·ÈgDi%G”Êȗâ2ĥÔLov‘£ĠêXÈ{—§g7 ĠgĦÖ1÷\ }ĊC5#³éż^²8İ”›Ô`Ħ½jE!Ĥò]b|÷dù³Ĥ Ç`‘5É!8µ/mIB˙PçĦ *]Żrş[…&ŜŒ}Êû½—ÎHà
+VÁşt^ş7EÓ^&ËfÌ)c+IËsìîWÊŻbŠġîŝr§eߢ N·ÍXĊŽĊXŠx·ĉûÚ>{Ô*SĥBBïeمÙċÍIÚ­ĜK4êK(Їü“9×>ž4psMÛ‚9´ ·8bdYËI˘9ûr…²Ğ•WÒ@Ò5,4nĊüMi IW„N½j˙}9ÖBJñÖàdĞĴQP—™÷Xñ˘ŭ ½}ä¤+mrUp}G‚\ĵëĞŝ•è™mIXۛĉ)ĥ²¤ÂUÄ;#¤¨kEÏCùš˘ŜdUċïÇË]2aâılWğ'ğˆ½ ]~Gé+­oÑëpu^÷r}ut“FžD
+;Ŝ5ċİŬÎş*—%Ÿèy9ĥè†EèŞ‚S,Û
+Ÿ1ép­:ċĞ—ĠĴ³ŝHż2Ŝ£e{=Ԅ|
+ZjQ˜è)+Ëùx÷qé˘MŽ;µì†üÊÄÓW;°D>—EˆşCugµâó-'%MîTùó‹ ɛ`ŜHiš°LÈ=f›órœXû.´D™ŬÏŻaAöÛ ?m–{ïöĊÔ{ŽġÎFŝú,ì$6›šöáEç‡Fa*UÉ
+‹fàÒ›…ÙiÉ~UuU[Uĵyè(םŜNvÍ·[qšç¤Ŭ½ĜìŜÄÉ­FWôí„$Ík×xç\ݳşâż„£œäQuS “H“0a<eİßĝŞù›RJ c&ÙShqe¨ mšrˆSlÔʂ°Rw'MPŭòĈ¤h?Ò*àΤƒX ‚È›ÔĦŽG ‘}2WÎTy’³7hĜò~=àásġ²'[·ú< Ğväacnkw‰2Ğ7Ó</—H{ùMq˘wR§wy\‚œ<[ù%šŭ‚ÙO§m‡3Ż6­_1(!|‹Íĉ[†Ëjîdż5ˆl›ä-µ‡„}a˜ż=óì'ĦW(öZkԐùü­Í?<+2]óĥ W‚Ù†÷X+Eż˙‚Ü•x?P}Óùš7b·K-×ĉÜiµ“éĊ"Xà £šJS‰a.OïÖ ­ïzó„vş Qóôš,´¨Ġ÷Œ#üNĜRèŸ_ĥÚQ}]ÒîŝÊîM™†—„½FúŞq‹”XáûCägsñ=óÛ 9ñżÊÁ%Èûj
+A$üË.8W7N–‚vB[-½#‡1ğOµ:ûrE$y>kġµž[Êb.Ê÷f­¨à^ĊĦ-Ӌ­;[럨­Wż°¨ííË&ÄO8³^2Î'žR”ħT—×q‰´|óuP\^wÛüGëĦ—^ç¤&+Œ2:ÉLTmĤ:…PKÎE×î”7áÖóDq×=;sŭ.hñĤž7Üı*Ħû§ĠäTèĈÚęäŻ6Ocöħ%ѧŜ*žżñ´ĝĥlßÖJÛÇĵö ğ*DÈ8Ĵéz'Ħƒ×ĦѵÀ Ċëlt#S1Ğ•O;ì&$Żo
+gù üp€nçPżè˘ˆµ.닽êémzVn‹Ïµĉ‹ëPÖë—sü—á;şê ;ï_­t+ŭȍ]
+jñ\Ŝ²xsñRÚ2óà‰òĉ•€+eĊۅŝğqŜSÇ)ÔĴHo°yêpwċŝ ŜÒqP
+äàĜfċÚéŬP
+1Ë5brı4²ĤÀŻĈ€šMÛ=
+MŻ!És£öÓŝ'<™Fb]Žr7j°‰í²™ôÈâî8RmLrĠ`µ“. +ĵÏ18ßÌ`A›Ï„µ0ùÚŞ%iPà›ßzÖ\eŠÈ<"–@½½j½’Ó‘ğ* Ï]ÀC/Œµ)×7jÖÚÑêŭŜÏÖ¤h*ğĦ4ÙbXÑ?'żdbÙ<-R._ÌWï6g1BÖ(îR QĞvK˜{mJÄggrq@5ét*@s[żF_•{ÙıyĵñEX•ËŝĥX'›1ìĈٙĠg ‡H°}şos|8ħYV`erUgt„†ÙÈUI-rĥ´ˆ•İ}…ÙnsûDŬ
+/dnj‰ÑVÙpŒÑ‘n‰™Mĝw|ëöZ„d¸÷ŒçEîÎĵçSOŒ‘Ĥĵwb–ŸqìWşíJûÎsHvÎù΍üÚ²)ş·Kžäù …`­R2H‡XC*a£$¨?šhwĵÜŜñÇFŜ ÊmÓ4Ħ‰Í— uÁ ğ7ĵlQÛJÙ6!mğĊ”4bŭÚız,ċD;fê5=k ó½ÓúcèÉe ÉìÛ;àŽtċôY,]iÓ@éSĥw‹€[ !ÙNeäÇGĉ3‰‰ ''éF•ÖS3òf͖²ÌîML*:ñïs͕“mè×OݘHÈD†7ż&ŒÇeq´Ž´eĵv]5ŭÒ0½hçXhÑNJ2É[q“¸ïCR|¸ÊG{?e!ҎVŸ]ÒjċŸ/ŸĊ̀~,§ìĴzŬA8&,$x ”ô·ù€ĜĦì9Íżv³7LGitÚ"ßdÉ0·T§ÁŜFß6uÌş˙Sú–èXżĤĦT3Cë†Ġ˘E·`¤§Ä>ZAÒgνŭùeŽ:ß[ú£•ouĞ$ŸîÏ8_8&ïy´pV ıSâüô?ßüÓFÄ"ZN(Fç ‰¤@ĜŭèÈ H`›Í'ŞášuÁù ÓÈRÍûÔ8N¸Uğ–ĥĊ­+Z_|[ä$¨Ë-I€Í<Ñ×oƒZĤ´¤=5N ³L, Ż
+èówX#ß­ĵišH%}z?ïŞ5}ĵùöË~ßx„Ċ88’moĉÌ*$ĞÎuÇÙL*?ğñ"™Eä›ĴsZo-U/ġß³Â~J§y7Ĵޞ™·Ü-O!qëí
+endstream
+endobj
+912 0 obj
+<<
+/Type /FontDescriptor
+/FontName /RFLZJB+CMR10
+/Flags 4
+/FontBBox [-40 -250 1009 750]
+/Ascent 694
+/CapHeight 683
+/Descent -194
+/ItalicAngle 0
+/StemV 69
+/XHeight 431
+/CharSet (/equal/plus)
+/FontFile 911 0 R
+>>
+endobj
+913 0 obj
+<<
+/Length1 1485
+/Length2 7050
+/Length3 0
+/Length 8057
+/Filter /FlateDecode
+>>
+stream
+xڍ¸XÓí>Ž4HŠˆ¤i¤ğAşKbŒƒħ 6ş;¤KJ¤CéQ.锐ßô}ßoŭ˙×ġû]ğísÎıÏyžû9÷yĥk,Œ:úÜrĥp°2†âĉçá(hê›òóĝĝyĝĝYX ((ĝ?!‹Ĝ Ä˙Ħà
+˘>E
+ Ԅ
+…çċġà:#yàöÒO
+A <Hô7GŜßeÇĴ³U€;;ƒa($áïŭ)B\Á ôı{ñŝŬ\'ÜĉóeÙÚŭĤaë†à5„A\ÜÀjŠc.ÂûìÁ(€Ÿ˜°°?
+`ĥ‡À˙]íÛŭe£ûï
+ñ˜óĦċÇàûŭúדZaĥpÔëß?-ĉUVRP1’ú›òż‚òòpO€·€€[L˜ÀÏÏ/ ĝŭw äï}üGÌûkğèsúgËîk€ŭïá
+ŭg˙ ˙‰!PŻżhċşĦS  GÏìĦĈàżFWl qsŝߨ
+ˆž9˜=ZÑÜüOyĝžŝċ‡ •!ž`[
+ä—jŝòŝž7(ց#!żotß˙ÄCrBß"H´4˙„Àèúïu•` ¸íïa
+9Ñ÷Ĥê?bB˙ûĞġ˙ÑU€HôħBNèV;üñ˙›Ğ+z ˙ˆ MûÏí{‚A„s3pD¨cmhëEµ­÷ÚîâR{T‚i_¤Šġók ĵL•IykÛʇ/ufK'f|i9÷.F=Ÿwe-¤İĉ˘0”úVä¸ówكlá4öc"/£VÈ÷uéI­ÍħÍْgDş7ŜÜ´#7ÌÄv
+İ LԅÎáĴ XÖ" WSùŭïŬ쵂îjûltЃ ÍHċt/ÑY­füä%~Ĝ”ċ¤ú%³<K•-ĈÙPú~• 4·û
+^\rnށù1Ï?Dr}üá…ulf"ż€EŞTtàûya(bĜÎĝ˵d*€‚†…BG K‹ÑqÉmĝñžÓ7}r“GÉ°“ÍĤ­CŬpĉ=zÊÉ “ĥ̝ŜíÄwjBgŸÈ8•„Q5êŸáVñ9ñSzı9Ĝ:ïÛU$ÌdĊfǙâIó È?hl`¤k˜Š‡ÉN‘‘P8í•ÒżŭR!üñµTp“TŞh Ÿ˙üĝÁEŬñd5+wuğâX&Ĝ¸
+à[Şçĥ›9Xkħ=C=M€4î$\oʛNˆÌ,äÊ˙2 °˘(ñžk{wşqÒ°Ÿk"WiJé˜ Xħzó‘ÍĴ?Ž.½süGO[ꆧjċö…͐Šĝ
+WMġ!ä§òœ¤?¸ÍÖÑêFíûN|qviĴġˆ^/S)ċ¨h7£9~
+óäŠ5e%úHùöÁó
+)—@ħRۏE=ħ+hñ
+&QIŞĈr%Ŭ•ËuŒ_ŒĈ+´ Ŭ1‚×½œwoÉù‘$Ó]—òH"%ğFjĝĞô“ŝ•âòöçLċ?S3İ&ôvqÜġRg ħ³uİIĤd­žä <Î&msş÷ ÖĈş!§vĦc‰YV—á1—IQdĞ6¨êíÄ: ñĵJ`ˆ úĦ?d¨£Vgç£>Z:‚¤ #Ú1­jÍÛċŭáŜ?fž×|5ˤÁ˘'ğ“Ħž|OrA‡-îٛáù
+QÁe’ž÷Šcğ-ŸˆqKrE‡Ż'’Ğù>ËòİÛ3~—ŭs9H;6…cŻ…ċjЁ·Soe-@ ˘É50ĥêġ;ê‘×O´¨v•ËÎ’JBŸ|Ӂ+½X ZwÂü”ÁI"‚ï‚eŝ…÷ÇùċğÑÙÍİç÷Á–Ÿ™ßħĈĴY‹BSWß!›YCCğx–—-92 ÖzÄǘK{suK‚Úô™ò$â7SŻŬ,1ô£ċ„Ž2„ċÈçóŬaó+ĝ•ñ5c­Laçĵ¸#Ü~>‘ŭƒ²ıSi\/è2!$wnJAÀQlp~~êû´OħVi0Ĉ ògÙÖA
+£/Ğ£!ÀÒL‹“M™é'D˜ğG6¨<hrş™pâ­v¤{·U1ŜÖÇ:ħ}€%–Î.£.✠+öĵÙUĝĵµK˘°Î,m³£Ġ}–Ảȋ<îAƒj’B‚Fqó
+ ّz—?{\ü@/Ô˘â[–·Š‚ K°/ĝ[ĦfMڈpìpĦžÎ&óúğfñÛĥOƒmqJg7 mÙ*zÖ:hı›‰>`ÒöXü"ĉ:hcfżR9‡U™]ÓôĉkˆŽužÌĊ‚†Ĉà÷ç0+˘³4T ?µ¨=9nÌáH?ĊsÉáú<2ġJíy_˜›u‡ÂJóc̍5·lß=#ÜZĥ“ìħšñ³R”~É`İ­Ì·Jl
+öӐ°Ŝs'-ÓÎ]ċYÉMyżş´-§şùĵE½]ö/Óc–³,d|˜r×7?œCßcȒnA}CàS~”>Ö]kĦĴ ÍózEá›˙Ċŭѽ}.˙„‚\†ŜPܧÚ9Ĵ$ÍŝÏĵ•gôvP³aXתàÌ9…ú-w­½ &a?˘˘Ä{xı9 üyrT 1)\ĠìĞÍFӇ‹Ñ*%P‘`u;ZûŜ ıVğRW*L>leO‡M4Eì{RkÂ÷ݽyżÖ5ÎyOjô˜…ú6G)ŜaèÊMús‰OiÑMcĤÙt,7°QY÷a‰zĥIn5ıĞ mŻU½É3Ç0òDŽjĉӇéDqÖżƒK‹ìŠÚ1<œD<d¸PċçÁ/‰‡0ĊŽ÷ì3óÑÏŝ
+Ş/ï1’tÜğċ}ĵ!ÚßçÛQ(m{ëèeÔÓ`ä<°ŝr‰Úĝ£½ÂuâqâŝlgKĉ1oœ÷k‘
+ ĵ½(˙–Äôpœb8=çîKħ˜~×ħiµypÇ*]ġ3
+OÇĵ‚'¸#\6üĠ3µ‡D=jYPE}]3,Á óFnü¤ġ¨MrÜ´mÌŭƒŸ÷‚$&W$(†SIèñKۈx\š…B™4ó/,eo{ĈñHÎ7Œ)ÇèOÜZWAğ#…#•#Ñĝ>u]ûoħˆlN~K
+’`ž™èÈW£Ŭ;5DFQŝ'nŻ/œ‰ïC£Ä,÷0Y'ĵ/µzĞûB@³Šè<ë‹cÂC&a
+yñ˜„ÄcÑMŽĵċ8\§Ë7ÈÛĊ(:³ċWÏÍw*/˙íĝ- <ŸĈçMUĤò–~é‘KÔğĝ`İħî‹wèÔgµÍ³&4ùŬ‚(5/Ŝö7<ĜS£ú̓‡(>Vúœ„@T)s–—œÖ,¤ğïğjOَÂD`w È'ħìÄB8Ğh˜ˆŸĥoH´fŠsŽ,hÛaŽÄRöˆ%ħ“%¸è}(ßóEpŒ‘K²ïİVçÜ2QïĈœ7jdóž3;ŝ(G˙…ƒ
+óm.mháö_^óèŬ)ïJ¨Žµ+d¤€Şk2ƒVvÙ1RŬyÄ9ÜVĈƒËğáÛ'ÚÂ.;7÷"ӛÔÔ&Û£ĊŞĉü2çÛiĈÎİà!ÙQè[ĤI#Ġ͋W˘Ÿœ¨Ĥq$½.²µÜˆ)xۅ%m}<Eŭû˜(­úÂŜH¨@-Y““œšE•ĉi@£~ŝú­iÚĴ&87#~šµ„Ó2Ž~ ‘í$‹AşüšġŬ Żäâh_ÁËóv† šŬê{·Ûse\) ’ÊÀFÉ</6çHÉ ­ 1£U;fħnë—ÓUĥ"­,•úŭ%œti̒‘NG‹ú{°cAégyŜ2sŠğRZawÚl`Äôħ>.T6ĤìÒLs˘œ›/ÚGœJĵ/àËÑ_ÇQŞ+ŬÄñŠË́Dm´ ”;ĥŻ}”’(‡
+{^xÍQ/eó0S-m8 ²Ïĵ˜œ˜-žîTQb€ìšò.ĞÈŜ+`§É _ :{‰xĠ­zĴğž…m³TBɋ8ÓpüšÎ Ù]yBÛê×´yRl‡B÷Ŝm³zœĞ·„ätGnóъ9DäĜƒúì7‡lœn\L îÀŽP’´Ó1NGĵĝ2ÎÔ9cv'ÍUğİKËù^ÙWŞĴYĝ”Ñ’3ĥê2dóòħ"=›Oì6äËı*Ĥ]_ì+-&ĜkĞÓĊêad•şOó=ĝsĥÌĥ­Ĵ ˆƒÌB°Œ&d{šnƒ…SÓO•‡&cĞ0GBÁöÍR:Π+˘şš˙M29 YG$( IJŬUa;_VxžÖ‚àÀä8ŭ•mġ(“<Ÿ£fš½ù2Ğ°áĤf aC](ħKż;kcĠıÂ⚠F£†²Î@ÇÍ'ñ²µeĴúB'ç÷ĞÊÒ</k”O /t˜ŜЏ†‡s•·NšĥƒE(dĝÊÙSÏ!ĥ´´™ġöNxb]÷ĜMĠ¸b ÖoO÷$Ĵ§)7ÖċĈñUĊëß^2U·áOnX~Ż:àÓä2 gi:‘IMò„5³rɧ4UĊı##Äž×ÄËĉû: ,ÊRïƒğúċ#pÏĉÎòTÔguêüµê͛°Ġ†Ĵĥ# x/LÚlHNÄ\Ŭħ~ŠŝVVâŸyĈÖz³ôÙÚO
+Xíŝ–Äm¨>Z9ך<([E_Qêġñç'ç³ıƒtA˜;!y:ÉĴ"()ĉ™›Š·„şŭÓ/Çħ ïÜ8˜ĥê$.żê§Ĥuğ· \Ÿ*ĝ×Ét< yϛ¤Ì$lÈSÍ'½‹yÂġU]w*”šihŞ|Bj'èıµ°â fħôıŒñ£Çµ°ö7ż9¨á
+òÂw•×ô"Ñu†ÈàÌ·3ŭ^kC½Éxı1
+B×*öˆ¸½dB™#^Ĉ°úVÇ7tDû§~S)[ÍyıMœW…ĞéĥÈîH…*YYŽċw³,F-út1?? ӞM¤‰t&á‰yWy@ gŜN5žגt|ĵŽ˙‹-x£·•ż’b–¤SÂïéAĜs̀W vñYp|ÌYXĝ
+…YĈSġHûìÒ͂îÒ R
+٘lƒŠÀ4Œ‰_Ŭ×ZWŬï{ŝ‡•#7Ċìä(żcÖÀ›^Q1ž›™â÷64îò
+ê'qPp6/ü^-"äd|éT˜_چ9lRĊRğG_ô ›”²[Ò°¸ö³Öĵ¨ÜÖqù™D,Bš(1-ÍaÚŠÍ$Ġ–RŒKI¤ĉ@k?6FÔ§Ïâ(ĈıùoġŬŝC²œ÷Ÿ( miÜİ_˜b†šĤŭzäGPœle0f(ġêĵQ–?ëuÔ![>ŞdÊê²O–~3Ú7§³w"!oİŻ]š,ĝ³ƒSŝ`]ˆì=óğEµ~’íÛ\+m\/ëO„Ò™;­ƒŭ¸Ċ(uy{ ×4ëÀ92³]ƒÛ“Ġ wÈ~8ĴbYDÙtÜl½ß.·Úœ¸IëçÂ&û˘ë.Ğ6ˉ¤~–÷ĞT[ĥ€E3Q-xa‹UÔ0ëŽ>ŭœĤ™×fe˘çHÓH™rˆOèv”ËImMÀXLÚ.ÍŻô€lü˘·ñDÑX~ےçX^ÔËT\ż~²—0C˜;0hN9퐋gz²Žc.$âDıĝ+ù1K
+Üq'"ô\3hZ¸ĉ›ûvßĉñYÖó,oŻħ¤ifl0ĊĵÓ´K[=ıÖì}a²> R8^ĈÒ‘Ğҗ‰U^²ë}·Í†K—ĝŝRèQ•
+4¸Ĥ+“„.¸z窑ĊfGl4ĝ÷kš‹OÓżoĜDêÖҜTëCïċ:ö¨iĵñÜİ1È—ŭYx(Ô½ŸkŬϋŬ¸^9 ´÷dl$0I.I§à¸Ïô 4`ô½@|’ĈpN`˘Iz?òó‡d&Ò]–×!Ú7§‰O9µ½ŻZx@Mǎ ”rSÖëĊŻ³³cñ?ĥvDî˜>̨?ğĝp°ŭDN6¤ĥ¨Ê›-sŭ1:c‰Ĝˆäİ×âܨ5hİLˆ%܎4ÊH0LÒ|gÚt^0TĜßyíZvänûMËĠğÊîDqáUÖŭnĞ’îMwÂŻC:Štk­9c8ĥ­D`ù[şFÖŒċrŻÔzĴÈk.N`^žYÔ{!}­B½ħESܟ& XĠ^Ż~_]èßĦ6ûı•´8F;Qސ%íñôPħzËŭôžĉm'dĉû†5|N•ğh˜xü^,ĉÄ d[-ĉóŞróĈ-6ͅÂNĉ˙Ĉ<ŽÚ!îiÀEK*My“vèub—:6ŠİŻ+ëDĥfĴŠ²£Vˆ PS8/Ž!ĵpŝMaݏ4Ġ
+QêĤ­´zw"’Iìe%›YñPÉp’Ÿ“ƒħz‘é“É •gÀÛğ§ßëù
+Bé„V,ÀEŬ¤ƒûWiÚŻÈ˘­sH{Ġç,î‰ì÷ Ži·ħŠÓ=Ŝ6vEvéè÷4/•İy†f/]Ŭ>”ĵ?²×zık3şkÁѨw˜ŝ ahĦ9òĝ…ÂMbñì…àëœhì7Ï?|.FŞäLĴçààs rżiÎ9Ü]°Š÷OTŝ’k\ĵ3\ÙwJۜòö›)YÖ.Ö> Ş,n²ÁDT sAċëĤr FäíŸÎΊŸŻµżÜJĦÔ9ğü`G§7 ˆ˜˙ĥ?ƒµɕ=GhĦéT'çX3zQÇyĝĥì.'ŝŽ„]£OĊ…΂Gd§=_-YŜ‡ÙŸğUÑ%ÍoñJkĊÁ?f5µ?·ú. n۟[_‰Ş/ĈĈq9y”#)9ÇÉld{]½ŬY(BbıĦ„8@ÒYDìĞ—÷_cԝ5§äœˆŻ‰ñ*I
+ÜİÂtš”‰%*-£†-°¤ÎyŒföOż#p¸Öŝ ìäçbĤv,<#İk .pO%èŸîĝûK9Û´/3­-6iÄ0éU<!§â7£aĵw…ˆ×pŝÚDɑŽw%ÌĊ×P^ör .q#ö€3a2çAž: ġG™YçԔ!ßûËk·pĤ2„’ġsé™V4/YĠvä–Îàı(ˆÎ[,S,˘ÖŠ·–|27ìZÇêżµÉFfŬy[.
+ ·/é äfˆbäR†Iıë-(ŠFÔ0Y”Ż³µğ(|I÷h2Ü c/îmï‰J2—×ĴŜê9=Q 9tĤ˘–@Ġ×üsž˘]ëêrċj³´î4Şó֙°Ÿ"yġëİd>ê+›ÄÎÏĠ”Ö{̉ÚÔŭû6?–SŸµ´-³E·J§[‘^KFž‹™…Lïow`D¸Ä”|@íÇM7 Ÿ´>XˆÑáß!Z¸Ä=¨ë_kQ}šQŽ•‹˘EöÛù‡ħñxžÉ4~ĵ8²ž>Ù´²Ĥ [#˙cqskAÓŞ7n*uTĉ|—"hëżġôe‡ó
+s—ċ^•½íígĞ‚<Öĵgf>´p·‡Êv;=³ĴÛ^ä^ÀĤŬò.6,uÇkĦNÈj­ħëÚm"f·
+endstream
+endobj
+914 0 obj
+<<
+/Type /FontDescriptor
+/FontName /FECGVA+CMSY10
+/Flags 4
+/FontBBox [-29 -960 1116 775]
+/Ascent 750
+/CapHeight 683
+/Descent -194
+/ItalicAngle -14
+/StemV 40
+/XHeight 431
+/CharSet (/A/M/S/angbracketleft/angbracketright/asteriskmath)
+/FontFile 913 0 R
+>>
+endobj
+915 0 obj
+<<
+/Length1 1396
+/Length2 6540
+/Length3 0
+/Length 7497
+/Filter /FlateDecode
+>>
+stream
+xڍtT”]×ĥ”"ˆ”t )ĝŬİ CwÇ03ÀÀ04HÒÒ)Ŭ]Ò"]*"JH—„tè‡úĵïû=ï˙Żġ˙ë^ëï½÷µ÷Ùûœë:œĴş|J¤T‰À ñ JT´ ̤
+!
+
+¸vÀa`(}E@ (Àġâ
+ÒĊŠÀ ‰~ġ÷†‚‚Ż·ŬKàÏÉ:#Ÿż {b˙kÖUÀsBĠŝ ıvŭÇç
+ ġóù߁ZDBB
+àŝÉ-ĊÁ×/Ħ˙oŞ˙Nùż1üW•˙É˙ğ!U,ŝ;Ìŭ;ŝ„A.0¸×߀kÒb1×B^Ë
+äE$xM'a11€µ !PÏßL#˜ëÀġŒ~
+ġ„‚‰f> Á2OêžĥÖ(1x­ŒÜœ_ì5ë pMçĝ8jŜJW›tSĥ…TÒè~, ĝàËàÛ騧ċësɏ³17ġ-)ïñċœ}í
+µùRrtR,M†xÁá·ÙĦM,ˆÏàñ³²ŠùĦΝ~'/ûÚíçħ[Ż’†sƒ5QÉĚu!ž p ³bgu³O‚ı÷šÉ|R"oŭ,­“è÷8ßAÒŝŜt‘)=ĥÉĵއè˳5ŻÎĈԝË9ùç0ílWï“#ĥ$öìz֌ñÔŬے\i‘|
+ôƒTƒžû‹óŒß=}ħƒûŒYI´[ë ‘Ó%Éóûì÷Ò&4h#ıŻ@
+ƒW•í­ĥw˜:s6lrUÇ:E}3 ï|ĜĦëK½S3=ùÌâcÉN×=.ğ_£}Düü^ÙçÊ*³P|ZWÈËŻ|Ÿv mcá…:Ğ7,˜[úYĞMn)úùp
+ĜRÜĴȀ3Z-gp„²òiÏtcVŒ\}iì}j-yÑR ġ|•[Š+vdà—•$Nİcżw9x.µoô†Bs‡e›UÖ팗zÍ/f•Z&İ=$Á>âív6R'ÉkBĦò÷ö^B‚ï&Ü'â%sÛJÌڜ‰cE]â'ÖoèNÜ:èħ-²ZäšĊŻäŞglé<WyšĦ&èÖĉħXW´ìÂŬÇÄߕ7*
+LÄó+_óĠċ/óú2›ħ„àéÇî„6[ÒsÛ*7s.86éòjn³ ³OORVħÊyeġgJÛ˙\äċL툳jŜ'öÏFŞÖ‹ÌÉÜ*úù4Ŝa%RĠTé€ğúĉħ7”û½Šä~TÍŬԎn_°óîրh³ŝÈ2’yfĝĊŠñl";əŽ×L˜³t{jŒxւäĜŬaı™ĥ2³âĥZ›–Yx”hıwòŠµı
+?FğZ¤Ê‚=Db’umÓ #G.ù‰okġ)Œ^b&Ï"¤[ ô„’<Öv–” ĉ%Kë$½,/X`Hz–rzp@>ê—Ŝñ½€ä4 Ì‹;C\h1Ñ6âĊW†çèAˆ#x1Ëîŭž7 3Zl)ÂyT>ÖEiœ“b´ċĵY˘š˙¸?Ë]dÓì&Û­/âçŭ°AQÚ›X³·ÁtĈm9œŞġß'cñÏàûÉÌS÷öÉvè舵§8­sß>‘ı+ÜJe?)ġÛ¸¸‡h·— CüùRC
+Ä(èë/n¸!]]†äÛŬğÙEÙùċîƒ!;´ô={GttĵŸ?•Z¤ëç‹-Dá²BÜş_^|]nÖµKu^qçı|šGŒƒTŬ(Xĥ6>n4eä_ѨİmVÈĉ p‰}ó”:‚m,—û ĦjU³Ó#ħckej•,ËNTUä8rĠëN‘E[Ŝc¨}$„£!u¸'˙Y^•IN9 „ÊœŠ5Ġ¸AÇ˙ĤÙF=%ċ,KáÙe{‰u%iŞŒV £c›ù‘šßŞç‰ׇTéÀ4Iu\|bçO›S8ÄäD=•G½´ÓÒ4mŞdeëw-Ñ8mž)ËùܢŒS-Êâ¸pÖjĥNì| °ÛÑìkT4Yb̙É+/Ì#S‹QÙ#- ÂMè5baTcw'–Ŭ ÷ħ{ó’Ív@síwŜ‡éñ€Ĥ€ç~͓à[í§ŝŝ‘ìì"îz'öA7tĈĞĤ]VŒ%zuµÊc˜yEZs: ħƒQhhaQ÷Ӏ;àeğşŻÒŝ½nEiçĵZ‚’ëáÏijnì+Lßdïĥ3ŭ
+┍QŻGÔñï™~½ÚœV|ûÑ)^…ŒĈycŞÖ,ȏ5wħ|||^?zÑX ‹çÑ@ ({en&½;Qßü™rœÉÙäžĠ3äWΏž˙
+x=ŠşŞ´Ïĝ4Z%“۝nħ*a…w!ĥf¤seĤ޲WŜü‚ñùÜlW3ÓäNv‘£³yĈjĵŸÎ*7ˆLá˘$aœÒW]ŭÂ+ K ÎdĥĊOı1k°ġP`Àâù-·w³˘:NuÔc Hö'ŜÇ F3ÂWġ˘ğ§š›Ÿ4‘yxŭ@P.‡v\œ­£
+Ħ`–Kŝ}ĉŞÂ;˜äb˙eäiĉñéMYŠ”%şYÜôW™•CĝM–{##!>ÜîUy¸gÔWœ¤Kß
+riö%ÒŸàjÚÛ§
+éiMR> †éuáĊ·Ÿ]s/^s‹+ĵüħ/eZ:F˲½p'ħT i2”À­.d˜L&ž§—ÉŒïbc@“Ññ6ıücFq 
+•zqD(Og£w’g!ӗ6ÎóKƒÊ $ħá_‰Žf ÎñÂô dŝ’g~{ŸìVĠ›Á›ZXñ'Ó>Œ éÛĝŒ·
+ħ”£W8\ċGÛÖ>ÒNÒħ&ùÙ/ğeĥÖ§.W—ŜĠ§ÍÛߢBRԞĊW€·1£?Dw–Q¤x?n€ġYö~PRoRíúԟF,ÒRs€ÓĈBŞZµ +“/k˙:¤iSÀ•xݐ–#Kïúġ# }˘ûÓ§MT?1‹Ç÷+ë—ĊJ§ğrF”‰\§‹ŽÄĠYż îW‹ĦšÒaó³òV¸0ʋµ³ŭyuû1÷‡Ç§1ƒ÷°›~—!ϳKujEĈ’ż–VYŝKlbˆc…uœ·Ŝ¤và0 ñħpüDŝŝ•³w—HÔE>,êSAùıüħRÂĥ pġY<éâÑ
+|­<] ßÈşŻfÒDÚ2/]ĥŠ5߸Hœáú:u÷ŞuœÂˆiŠ‹×xZ¸˘ÔĜ› ândo(<‡ħín/ÜÁÛ.J¸•ŬšÚ8={)ŻNÖhŝ*>˙ÄYÂSE­ó·ĦíÁŬĦFÑžğs€4*š9£÷J|Î=,òKÇE$êz|Ċë/&ÏÀè=•İUxPìËŻœ —ÜImÚmÚÖĈÓm*Ż ÷Eßô"N`{;Ža”ßûċR^êq[ʘg”R¸âĈ&ʗÛXÓ0úFìž×J°¨¨°’1q§ĵĦ$ùÍÛͲr³„żdŒDŜP[·\ 5Ħ%RΙĝ(Ĵ!Óp€ĴÄ}9A’{wY£Y4snU=°5ĉm°J]!ñş1RŜĦɨ\çAÀ÷—˜âÍ÷ħPƒ
+1ÛbùòT"‡~PÇĦmcĉùûÂŬQRŞĦ:_q28ùO{a6=“˙¸şG‹éuĝ<vĦĥ’UږGsÈEm„
+éğ5Ġ$T—ÚFÙA/Ÿí098ŞÀEûmÂÊiGĜAac³µ;=×.éOôœ+³İ[ˆ{â},~+qŻh›`ƒxĜ=^]î‘wsĵù‰œÛÁ–û½k“:ìFĝhŻÙv ñvŒé5Cĵ¤Q8ċ8ËĝfכܘüꛧBœŞu_ĵ_ò'ê>$9§ğ÷joâċ£²îı!’%êġ(;p=%Ş.#uÉğ†k>)˘‰‘ÌıR{b]–)íúĵœŽ3•lİĠâ6 c#ŒûŬ×áŞzÈĞ`†Ĥ7/o­ĠDŬ>zRyšdsÌ­É@ž%ĝói™ûúy}† ²Ġ |ÇÛÌá ZM<S×^‹Ù÷g$‡z'u”i¸G9úċuyŝƒß‹XOáÊ]zD0*Éù´‹÷šç›Z B€ÓżvU²;&|uH]9ûġiKŻÂƒY´§²…à£o<Œ‰˘mttcnJiµ·¸"‰3uט4Û÷O™4Ĝ`÷ZĜ
+ÙKĥĥˆßkúñ)‘&nAÖĦWsà2µ@‘”ïÜ˙^î5€ö‰KHï¨S2XCŜFÑExÍ}†*>òc Ž\~˜m­ĥğyNË^ôz,I?ë$]zXó!‰t“‰ÌĜ+—˙†?“3£ŬEjŸÓdku˙Öyûûá*ú
+žhJ¤&ÜÓ‡ƒcíyy@9R”JÂLúxûn~İÍZÁp$!çH˜· ßû{)b*ĝܞ
+S"{•ë–(·2j1à^„Ñ&FÌ÷ŽĞ•ŸÔ^‹à§\\ÇwtNŸŜáµ"’bù`²-gÁ¤šò“Í;o%ğżLJĊµAŞıŠù,eÊŞ![…ğĤ2á)™…Mwz˜aFváëĉ0IKћzĊrâËΟ¸Š?QÒĠ/ƒ`ÒFzA™ßˆ§²$šó˘*qG@[•ô!Ûc“ÈR@z½.•~[Oä$2Â="ŞÒ²ğ°ĦÙ$ĉ)ÎÑbÇĥkÀ–Qaδ)ÉÈ~@hÄ֎ ıŸFDÒ“àšš^à ŝüQ/%nñ§SÎ4Úôô.ëAÁBóíö ġΣGrtßcċâġ‰ˆĴ0§·NXá½k)*ŝ?ŻŞžTr ÄûBNÌ2
+İŭ.îÓŜv&KĤ‰‡0M–­òċbwö}ú¤ aĴ„;û—dw7GoAbkÜNvÚX
+9h"?k95ċ˘1şżš[’˙à’o90‹"O‘ê3F6j%ê8\ìòĉğsšìÓŝŬفŻ‚rVëżÊôS_ÄI²ö½ÀávžĈSU&S$ħu>7ùk~VÔ_ôdÖöfTħ“'*jQħñÑħŻÑŞ—j\öpß³nË_w>ħıúӅŸħbHş³D‚RHç&‚Ħ²Âš~tĴ˙ ß7í„('³=–¸?Uj†$_ĜĵœĤf †ó$Ôc~êr?oY›Y7£š%ĕTD/3.ì}ĤˆˆE°S†ı W’ĴwUùѤ´uMô;Ċ$¤+û‹§*HÔÌ´Ñg9e€4}×ŭ“ÔŜÎżF¤ċÔ ż–;Ûİ·wBWG_? ċ4•2Ú%Ġ ï‡F˜ X¨ÉšĠ•xŭùJ{7L,nş ĝW–˜âĜX ´n-Q<ĜĊSqމ3Qˆêâżż’’4’ŜlÄsu‡H3gÀ
+àÊ%”Ìwüœĝìċı½M-š ŻÙ˙(7àĈ߇*½V/nCXÎúŽ6$MÎ @Şk˙§d êÀ—íñġĈĝ1Ìï<²”˙ŽÙËdĞÒOiĈŞ´‚ëR+ċÉҞIŜ7†™+Ä>aaûŒŜ­SMdjiÜ=â~—IŜş75҅'ŭW]ĝ)ïa¤RywVÀ³/˘\I5KÁïoŜ56 M˜'Lùôüéxñï^üĴŽc›ÚàĽ1K>’ÚÊ™¤Ŭ#ŸF³­ĴWȘ·DÔñ,ċƒS~¸ġİ÷;ÏĵŜÉlŠ4‡²ü
+z ~fÎgĵ8 è}›•Ìġç¨è^g´vĉzl˜ ­ŭĵħ5Ĵñ§„65ĊÁµ!܊}á7eïùü5ÀóÑî¨Sә‹Ìŭ ħêÒĉV)uÖáN*á:3·ÛÚíÊÓ”rîÈfŝ0÷áyĉĤÉ:7”ŭı T˘ï…‰Ż³ĉt^BìPÌiĴMÉs&§LŒ’Jú|&s0NĥĴ‚~oĥĴéŻ
+×ÂSyġ—Ĉ  ĜĞş˙针Í
+endstream
+endobj
+916 0 obj
+<<
+/Type /FontDescriptor
+/FontName /SVGMYK+CMSY9
+/Flags 4
+/FontBBox [-29 -958 1146 777]
+/Ascent 750
+/CapHeight 683
+/Descent -194
+/ItalicAngle -14
+/StemV 43
+/XHeight 431
+/CharSet (/A/M/S)
+/FontFile 915 0 R
+>>
+endobj
+917 0 obj
+<<
+/Length1 1196
+/Length2 6097
+/Length3 0
+/Length 6933
+/Filter /FlateDecode
+>>
+stream
+xڕTg8\íÖ½F˘w›Dg”è%zï=jŒ™Á0f£× ½ „˘DˆBÑ{ԈŜ˘—à›ä=ï9×÷~çÏ·ìk?ĞÜë^÷ZÏĉâ02R†˘a($FH$" èƒÑ(S÷ß8°@9<^
+x#Ħ04€q†0$ƒC`H/  P(7À …àHìÛŒ£
+‡`o§˙Š…‘rqİ˘aRÔÀĥI,eog@T•–—‘—ÄDDEIı
+‰ 0'Ra;€÷żOT;Â
+G:c' ÷Âĉ á>Xħ|`€/üĤĉċíáBc˙?÷‚ÁŝžF‚Phga7g῅û'M oÂ
+ĜŽ˙&YÂàÎ.€×ĉì
+Ê’„ÄDĊ;"Ĝ—Œ˜D?HŞ#!¨?{"&!‰Ŭ4ĜŸT[MLB~ßD?
+oS/"H×Ŝû­Ċ¨µĈž³L›ñqg_ù‚qV}´³Ï³0\£Q^O÷PÈ£ĥ£]´ö'뵉><)TÉÛ= ó’ -4Ĉȑì8ï†zˆèj–*eâĞLĜ1ċò[ß 9hp‹™côëîïÖÉ7UÒȟdE˜I|ÄUÙ?G
+éSŜñÈWԈÙĞ.o@°“+ġT\I[I²_ç3„rœş-•Ûm OĴ22*!JÌ6‡²ŽFĥ•§÷‰……ƒ›¸m;ŠxÉò_–阗I0Ş­İŞ2~Qï;ÒmzFĜ|7‹¤{– Ûí}1ú€
+͒-GD
+|“p7ÔÖñë- IÈP~¨W̜ĊĥrW$œZÍ_ħUnKżL=PUÒÚoL]Y u’LACŞMö_hî9(—ZòÚÙƒ‹^Cϲ.mxDëŸ!
+•( áü ÏĊ†c ·úżŝ˜^‘&ÖL{—Ë{NîĜżE,s£ŭ.Á¨ü}|ħ
+·}xĴµúş­Áĉ§Ç–7€ĜîĴROI‚Üf‹ĈšËpîvĦU5ĈÏâ¸>ì­óQ]7I(BqQ¸J9ĈvŬ4NìıŬÙ:’óró ‹ë•÷’Tžäû"Êĥ#ubıքIán˘Ë…:ÓgtÀ³­bÏí‰!ŭ~|µ7TR"ê´C÷ó…Ù
+~’ĴS/A6
+.‡,RfÒ`›ĵwE<ÙJ;’XBiŜ̄ ĥ½yЇŬS°=o|ê2àyÙI-ĠÍÓŬ â³ù³ÓşóÚCÉ£o(eŞÈ½8ÉĠÈG•ô/ĥT½‹E=˘9Ŭ„ç‚“v:íÌŞĵmœyo-&İĈ‰9Ä şDnÎzV·.ëÙJŸĞfÈ#’rĞğì̤#wbî!z>=b[Ïż.eÉżPÓĝ\|?uüÔprgGµ#ċѕ^’ŜÍʒ™˜ÁȽìWĥ<Ô7rOD˘è-Žv\KÂtµ…Ĥ0 ˙´—‡ÏeċW hİI)èg%r!ӂÁŭoÑ ]ŬW–XYWhäXö£B_Ü!h6Yà߉Š‰Š/˜ë|s)žğĦÁ{äü‘š Ŝ™ı KÑ1-œq—_9TF¸vlĈ†‰×”ô)L§}bšÜĴhfĞ’è$ $éÚ1Ĵ­–ĵtg`JÖ䊘1=ĵϑÌn³N‘ĵĥÉP!šç‘'Ïq³ÀîçُëLÒ&ħˆŻÙ ˆp†ĦGĝGòžw_äAE/Âġ^zû}ŜŸúöÁQŝž”ĥ^ì“@!ƒĉ7vÓ×ĥgˆ:GÊĵ=“랟F‘£şà>7օÔi’{z´Ġ¨bžµM€M̐ŝF y<ÄáĵKé($6“Mhħöڔa•˘*+5LÑX„‰—{·Sl>¨gğVŭŠäm-ORÍħ²ŽÓ{Óà·¸ç;ĠK}Kâj~ĥAĞŞöaÁĞ _çN­\ŽdµGŭŞ'xàZô]–Àcž-ġÚU:‹y7\­Jè—NQtwÒÛï8pimÂiv~„_Ŝ¨}WĦžĠ ĝ½(€‘Pż+O=$HÑKâ 3_FŽœ ½™}(ÍÙ9‹C²dÜÚ<„vŸ)`š[Ù°áybQĵρŬ,ƒû²Ç“x+k³/χߧŬ’İ ûR8Qô?·\ä%oĴršÏ*żĊŠ5›‘÷SO³bŸ‰‘–S3ôĵy˙‹ òÊ5öŜ`Öë:Ô5ŽÍ/î•97übĤ6ò RĜmAĴ´ĈbĦ#†sñ°†+q¨gÖí(ÂYuîí'J<¸ÁŠRr"58Êç§ĤèXÁˆÖèé҇:Ôhġ“3f󐧇ĵÓà4šğñû,v7äŸ}˙¨íê€7zöUéñi•§Nò²ùëċċFOùĝï“Ŝ¸~D>=Ç^LŠI˘¨W7˘ Jfó"O‘ñğ%¤2\³ĥğÍ>ìB}G£ŽŬ²ĈGï’Ò5³7żç魂ٲĥąĉ;êž³´Îœ[Pö:
+T9Â{ocF‘/ş¤”= ÊK ÌOžżË+÷yŻÚ^u‚‘á|{-Ŭ}G°ôÎècÌĜ[ħ…˘µzċ›‡—<É*KŞö*‰kàÚŬÏĴÒ­;j[o\‰í2C ¤²NSäkƒdTÉħ=ÒÖÓERK]ˆĴ$W2_CµĉĈˆIĝmbnێġ¸â°„÷‹pá ïĞ<ŽQ sáĞı•Aœl&ÓÛfó­7‘QìİHEeŽuŜ‡ĵDıĞĝ0ĵ~ŸMgĵ §ŝ§42_|UD9„ŬÛI|ġI'ötü5ĵĉ‚9ñd’Û`xáˆw<"xŒ´„?3§F'ÀqŻŝŠa¨]vtĤÙħ×0%8ĝd™ç}µ3W‘NüH™R¤‘ĵĥiÒB½Ù½ö‘YòL·¨ÍĜäٖŬŬ²Qyúƒ÷Ó÷hž
+q¤=y˘ü;YdÓì`xÄתdĜ¨i­êÉôırżvIIċù#
+yk´7öڙ֟2ž}0z‹™ş/oé`>îS9jàXħиúŻĤŠf?pü3rş,[F˙:1ġKŬM,í­]^ŭ̔aPk£4ġd€µ=ċĥ·ŻÜA‘—Ĥ •‘ĥŭöŬAndiĞ·rîe RUġĜë#Ä'¨1íVż´n(°7Í/él•çĠê;ŻHĝuQĴ G€%e·o=vzİ[Ï>ĉ85Oñ–ÊÌ4WşĵµVü‚ûŜùĤ&ûĝv•ŜÈġ…aC7~ îéU×ǜëšĤĝF¸2# ôÀ`AHi8qM#ÎîĞ÷ìœg5šn›j™–ßôŽS—Xz?…ôòż[ŬaŜŭ¨×`ĥ^ĝzâ½PkƒĴEĦ|İ­hi:Ĝ]Ú%ÉŝÖÏÙĠC^ܛ ß~‘Ĝ~HĈ]È8×£gy4QÎ]żÙr°Ñò|˜kWOš‰c…:ġÈÁĥò8Û͚b/^˙İÍsJ&ó=|‹Ċ/^fÂëÜDáÍGhĤLZeßĴŽ, 2ÊÙ“á?1qŒ
+½žÄ²Ú1dĊI-nuɐ
+ıs‰eĈ)Ħĥ_bà)ÚtÉwßZև*ĠıiħĦ$-”•èxœĤ3áÖ• à!ĵ6g|jÉ6!šŻ, Mu%t†*¨îñş@Û-q8y_V5ÚĞi0”;?ÀQC´ûöÑÇEiŝ31?’?ى½:ȊÀĦ1—
+â ËîX'" ë?E€™2CÑx3_Sèñy{ÌvĤ蚞‹YϘµÍµ/)Q„³÷‡ÉàSêOjÑï›ìŝÈ{ďËuf˜0BoöĦäUúë …‚"§DjXŬ` ‘Äwwœ*òƒ_ÜJiŠrŞ&zÍŭbJ¨Íóżç|¸Éüv!g­z wb—Íş9ŝM@İîԞüê1Ü·@ …*µòœÊĠ ²-ƒŝċè
+_ӌŝ2ùÖò“"c¨üC…ÔĉDh²Ì{ínşĥ‘ŽèŸ'ş<^ï4íH6H4ž
+4 ?Š5(SŸĜîŒjÉSl'lŞ(pÓÍD^ÜYìħpèò+žŽŬż(Ğmȗ 5/ñKxı ·¤ÍĥȇFżß guìż-üċ†n.€w04ÄŭLë`G:tIÔWúòʜ*:BÀ²şPÎ?ÀԁGñİh& Uéċ Äm}V~ñ¤6ħâPÂ8¸ĵq Ĉ‡û5r”ŭüÁYE­Î£Ïġd½ż^¨×Ô·o?ïhĊàŠŠ’²qşHĴoG€Ê‚mÜê&‡† U]T—ïFXÖyQkä ×6˘ĤÙ;FŜ—íëËıNŸġĊ4³5Œ>„‹m§Žg?ı³R.žâáà3&Ĵ§¸hR·CĤ˙WëK‡Ĵž)Eí:áN::STzœ:EÑÙ)ğĦ¸;-A2Ćc÷èlCpáŝù>Y‹ßZµïÜSú›0YŞ"Ġ‰™QA²Ş ‰‚Ry…ÇRżÜ/#ç)²;ÉmċmpH¸Ğ˜%™iús­ŭJk‡˘žZù>ʚµ0éS˙y`&¸5ä½1KÛΓŞŭĠ—U†Ü‘èù~ıÊ Ĥ’›µÔ5Żŝŝh hÛ­lñ™ĞÚëí,úÈĊP<œ&fñ&÷È, Ò£˘LƒıÒëMÏ;Ül›‰òXxbˆÊ‘ö†‡l‹×G•2UšĈÌöÚàŸ‰İ1µm|÷k\ÍKMRıU6Ċ•K[â'Îu u:×lĴ÷İ;o[.ï<Ôvĝ2éCB‚ŝT}Ż§@¸É‰³R9ġÈD ö_Ĥ‘q]ûû=+Š]d ù—[iÀd,Ye÷πµ>BŽßĞ1.’dџL4Ŝâ%öżĞ
+Š[‡ÎzXİĈN†ÍW_²-¤'oÁJé/ġ,†Ĵô XًB­pğ…Ğ$oGÑÑ:¤Ċ=b
+n M•M[ Ô éX”ĝĤ  Ġ–ÂŽyĠŽû)RBµİïÖĝıPOn1´„ĥŽÓ´UŽ°ú4^e‡é.fq…râĊWçÍĈ_<˜}têg>íœ(D%ÒV2CDG5äYqÚÚé‚dÊħFÙ|JÒÙ·.B³ŸûôîçvL°—<÷“…ŒœKÈYñ°U•Ğ× ¤˜~„ĝó5ÔşRÊËĴ2ÄúšŻÇó6™ÌñĴÖP<ĴÙ"*Çì
+Oç<YH>–|XğPÒsf?QmĜÈٖßĵÂ
+endstream
+endobj
+918 0 obj
+<<
+/Type /FontDescriptor
+/FontName /RJWSKY+MarVoSym
+/Flags 4
+/FontBBox [-572 -214 3014 925]
+/Ascent 733
+/CapHeight 733
+/Descent 0
+/ItalicAngle 0
+/StemV 16
+/XHeight 400
+/CharSet (/Info)
+/FontFile 917 0 R
+>>
+endobj
+919 0 obj
+<<
+/Length1 1612
+/Length2 18095
+/Length3 0
+/Length 18921
+/Filter /FlateDecode
+>>
+stream
+xÚĴ¸cxċ_³&§c[;N:ĥÓħm{ÇĥmÛĥmÛFÇìĜv§§˙Ï3sÎ\ç÷ËÌù°Żë·ŞjŬuWŬUë&'VPĤ4ħ3ŠÙÙ:Ó1Ñ3rä,lŒ\œdíle蔀f.€żF6XrraG Ħ³…­ˆĦ3 4ˆ
+š’râ
+[-ħÉ3ŭr‡+”ó0™'J
+ü‰~ŠµPÏ63ŜÍ
+Ċ£KS³û.’çê+Nñ³ĉ,` ÑlDYî`ċ“zÓü|'MŒ8˘Vüĉl-ş+;Öè×]<Ş`–Ñ˙Yo›ĴEn|%>Âyµ,Ĝw´%h „ż~s<Ċĵ†K°?,vĦ7X:z(’ĈtĊW0tÑÍûTî‰;:·ŬD/jq<?O0Çóͳüŝ Dфa ŭ‡K{Ġ‰~?ĝ'ĵ6ÓŜ[y*òÊ´™o™•9nËqS5
+{ĦäMıp?ùâaß=cĊ)qÜǁTË~EA]û#ßú5ıĦRĠĊú_ċĜŸŽÍ!F*èĈf<°ŝkAQpğ"ş­%Ĵeêĝ •|$]Î#Ġ#‡ìEĤRòĠĈÖ÷§bqá҇|—u@ĈßâMR8rUor›óċtF?ÌÇzKĉİŞ=S  ·
+pŞîÒӟżJ˜ïÜ.°Î7+3iö!µĤ¤FlŸœ-R`eGĤq‡U#†p?ݵçz%‹Ôˆ¤ÖµĤö"ÖMl{
+aĞ5ôwi뗇™&Ġ°§·ˆèÌuÊ)ıË)‰1pPòï!ĴñXF#zÔÍܙuĝÒ­Ĥĥ1-ÍS'œĊoŬovPĵ(ö;B˜ÇÒö—|ž’ĞI‚ŬÌÇÒNvĊw#¨:K™U…çŸK&ďYQJkMDĝÛĉŸ‡ÂùpÔ 'ıñ:ϽĤW⃕Ġs~`… 3î]ĥ›‘ĊÁ˙ZġĵaÉkV}~ÁĤ#Şa‹p;ê
+÷v
+ùÀ
+BoëÚ>§µ+„;çñÖZ2“.Ï.§ü$‰bI˙èAN.¸—ñ*aġ‹ğ Â÷ġ°˜ñj—ÄҀaĝ˙äuí1NœWÔlp˜
+cġ›áá ,µ”y]m8睘ĝüŜ“O‰Ï‚*ÎçG{­Q“}ƒÇĴo´ykŬÙKZx6"óy xÉö0—ˆg–³r0m´hp{àÑÈZÚ¸Ğ* Ò"İd|]
+5„ûJ²„ô:ËŜ>)i>:² ӑ¤“˜54P&Ġ–6İU.qJÀœĉë”Ĝ
+AJ‚T›·2Ŝş8rQ ²ó
+2M·›
+Ġ˙zıeĉ7"Ž`6<ıq–[Žà²g,5ĈŜĝĦIîi„43€P‚Ç4Žù†Œıû l]6vK\œî‚÷Ò!ŽP…Ŝ$B~|'ŭĞç.ÛFCo‰B6ÈPó@{êğâWboüš”'ÑıĊĠ…HI£Ġ”‹úò¨&{fíŜÖĊB=Y>ó`7zĜ=ZT+xħ ĝ‘ÜlÑş¸<d:ŻV= |AŭöTĝ‹žêiSXıġš%yóNBœżŞ8Ĥ“ìC–Ö nó÷ğˆçIžàá£>˜bCډz7ëNÀ­ħ,™z˜‹eoÄ<ßÂhé]Ş@ji£ŝ“™½ÎÓo-†?”jµp·“Gş{˜Xr 4Ì÷mŻ´fMŜŸÖ12erbħ†JAIn:~”Énk€Â'×^Ĉì´ît#ĉ)LšŜÁ‹!ĈkŻĥm0 úŽlé#m¸ƒ^òĜîW”v˙¸H×hîŠjs—ûZ-Ğ“7 +ĥÁ€†FaĈŠÀ­‚ ÷êÈżĈSexí˜Qf!ûċ]fI3  ĦÈÖ*Ôš&œdHİ~Ak€k•Fp+ÂTßVĊx/ż3àL~,ÖH€A½66~„Α´úì0òóŻùÄùd‘scŽJìàgGŻÉȓB("ĊJ‘öÎ5zHÛ¸58†ŒÜD?Wç Ǥ1³·UœJ=U7q'unéBá …Ó9q)…ÉҚ5lŬkÈJ4—#™)lûVѝĈħ½“ŒNƒ›/\†\ ÑQOŒİôl$ŬĠúFl$ûQšC%ä`[…·1è­Q)ÌÀĴ@}ÑĜâÓ"ĦÄŭfx6ñ£uN­ïˆĞ½Ê)œ8Ŭŭ:Ísé}™aÂ#ñ#§ˆ×f?ÈŞıŬ¸ó°[_Ï˘ÙßĠW•IŝnÁ¨…mêÄkŝÏoêS˘Ĵ“îz†MÈnU­)ü™bğI8ÙÒÈL…A‘lï|/8V”ŭ`‘i{4ïĠ–ĤĉTz¨ġ
+|\ìŽ9ċżB„§·Òù:?Ö ½EuĠ
+”_`ômáéŭ‡f·+Îj–ÈâOC`[’qR—"‹11'”kk{Ìiü]H@: ‰o8mħYI· qÉ)òÖ§ïS›ïA x;}-ğu+…Ĝœ|§…öax9tŜ~—ċĦù·h6ÉZuL.Bìü¤œd“n’Rj6rA…ˆ›Kqħ½Dëvžş†½]”pĝB>•wqñXĠĈço£­ít~kBtMP™ÄïÖ"ċ€´µösÛëĦ*ˆ^/şÙ6䅚Vï=Çù5âl‚Ñ@ŒI£ŭüôÜ0ĉûÂx˙hoÜ$ü7iú˜
+¸²ŭ6Ħ=A³Pï?™Şñ„T€£#ğ7
+D•j6 _+L…èÇZ¨ĴñÌHúŸRC*ísüô <Ùŝóà{4hÏWÂY˘ÀüğÏP4ÉJì :"ÌüÈxxq6"p(ëĴ+²‚q§ucçÄĜ½Ïŭñ 5šµÒÎÏŞBy8ôî?°ħU?¤Oëİxl¤™žġ)'4M×àä˧öj1.ꅑ3ïġÛ`ğù.Wf£'›èˆ!8ĝ>„èxñ£·ıwÚ5ç5
+è½ç„×DÇû%‹‘äѓŭ‘i7ĊZgCF„5[]ż·PÖ÷vEÈm(­HEÊ/ÊĜìÄ~ô,5ѵĞN"_K+1ŭV÷ÀÒàµ%ŻPÚ;Oà˜:3H˙³ÏŠĉĉ°<§I5­É"MŞ[QĤ£¤ĈÀ§}³y\üBĝëšĉh2vL…Áé_!=xꅈI³a§ÖÉ·FöQ˜ é‹pQ)”ŝ‹Ui”Ïd9dı1íW%îmZ&_WtĤxĠÛËnžŬyGe&>܀,2 ĤċñĈOŝĵŒŭî^¨Ĵِ‡e×0)¨; †ƒœwĵ€˜´bD6SrŽäÛkƒĤœħ1Ô~4":ı2§[˜ò ŭö,”rµ@‡e>Wlġd9ħ(*išç0ŻJGT3,sĵ1ÁŒĉO xşàΌ–²›îNÌ÷¤­W‚ßbZ›ĥ@5Šˆ`Fí%wVżĠ€Rg/úĈĤIŬ8[Ĉ˜ñ½š>•i—¸ù_0ĊmKż­'ğe|#j\{n$Ö.ìê'ö“÷
+ħÄmwìg\Ê:ĥ̲(­ŻÛSmT \ˆù;\Á]ìBM¸…ùÒċ\#ñ¸r뛅Ò+^:8ĵÔĠ[ó™tVKŜÒ2żä”m{q“Ѥ.té.$Ĝ½°ìP–h”4ŽwĝÚ:ĜDß­WçÖ*_sú—mçèŻ‹ß˘zn˘AŬDÍQ%ڛAw3Û/Ĵš€•
+ïċÍzy;É2rÖMÏá”éìA$­<_“„lU•Ï_ôĦÄÌÍ]MrżçnŞ—• 2_ġœ&ĉÏ„;öŜ†ċpı´šŬ„`÷Mċï˙™ dQĥ'Ú~Ĥ+Î09>§3ÜĴ£ # Âh$œĴ9ŝlŬ£PàÏŬ2⛧MĈ/
+'J˜3k‹JÈLV'O˘!ÛÎĠ-=—„İ%êZYvÂ-“˘LÇÌŞÚ=ÀġJüTÈĉ¤ĝ]òîl.;0vƒ`ž\Ŭí•‹™2„ñÜë•;Ž–£"Ò|ԕìġ/³[}>ĦH䊄1î9~muiÎĝêQ÷ĵ܆].%On˜?Ĝ"ÖèĈNïÒş"94Z[ƒ
+Ĥ„ĝS½ĠëĤ8Xêež’˙ÔOƒ&ƒZûŽ‹Ş"ıÖŜւJÙŝċÑé²ĴƒĜyñċ[L`5´´^ċ"żéŸŠ{[—‰'d(µÒGA–7›ÉütŻl3NŸ¨Œ×ù „) §• 89ÈBŭ ˜X*cċ÷b|x6ĉ’Áú-ŒœÀŬìòvy£™·œÙî‡aìuMSRÍïÎÚ ßJC#FC'~€ÉžñÈ&ldE=1–ÍJ%”Ġ£ĤúœEmżÑÄäĝî
+éĠb:w0\„M›ç˜,}ä#²Ŝ‡‚ŜĊQ-öëÙÊ]Ĝ9Ÿïuĉg?Ôfäİ[­q”"ÎÎ KÙL+IĈ
+‚Œ!5ŸÔVƒ•öj&Ž.r›K –•“1 âòIfg v[°]"­ñ]Q ,rÉT[¤J˙ ›käLÔ^z‚³zîôzùĈ'
+B 0G_+šĈéÂ|pÙT*„Ĥş5ŭ²S²,’CßÑ~¸%é“ĥ/ìµ6]RçÌFŞ„Uĉ³ĉŞÌàíD˙“0燄pí$OUÚùîT<š… Ġ->´dqĞĤË˃~2Ċ½ Žçw‚iX)us1­ê‚óüİɈ§ÈŭÖ^q²Ä^ÉbïL9ğĤ‘Îġ!ÒĊ•ħKDħ笠=° Ĵ[–gÜÏĊÇĜj&P²É¨TW Ĉ+_ 7šv8ċ
+ᐸWhFĤĠ£dü–zÍĵŽž×Nyĥäí]†q° qWġ öàX †ùšÛÛDċF˗Í}×äh 6 ƒˆ˙ĜlĠpM$bN|ŞCŞÖĝc9”´*NNûğâĴC³£˜Ì‰V•kŠlߖƒQNÖġB,ŭwdŻŞ<4=EmêRl!µ`CQgbĊÇ6Ž‡×wîj—ˆÏP.ħ†âġ˜oŽÑéĉ Sí˘
+ê–@Žúü8:KŭWÁí‰^şŸ4-T<  ‘ĊWIyèŬ´ôA[Á
+ġòCñŒ–Zl‘E¨‡!5 É@ÙQv§°Ħ5CJƒAóLğìÉärÌÇEœJÌú}‡Ğ‡Žm펞]*ş+w÷`zĈµ×gmĠòÁjïM˘‘–„úĵsSƒĉ†İŠĴ¤g}àħğÉÙ¤sŬW)>h‚;OùÑŝ¸q0ĝƒg‘Ġdrŭ­Ù· èĴvòĦß“Ğ´p‰ìĥGŝ™„‹ħ
+oF߯@³żIħ8’B"fq_ŻŽk=ِ,Û]y¸ñ‹%7q ;˘ÄU>V‡×ĠKĊÂŭ=!×ÜħŠSq‹ŸôÌÚ%\Ĥ‰³–Wş³ÓJô@t¨'"Ĥ½%Ş%˘Bù…}ĉ·ñÖ™?œòİ4(U3}~ùç3z ŭ{Lĵ"µ‡ü>şsRoÖĠŒûÊĴÙ×Rj#*ê7hĜħ‡ïċPħڈrOR6Y àlğä¨ùòoُÌ$ì†ÄpĈ½X• "7"L ³N!â£
+ĞÔ½ żz§İ(Uġġ£Î3Ë(QP„Í.ÖL]ëuİĦŒ“Şh=?~[\ŒÎĜܚÖÏâ|›żB î°mžßIH×"µ“7³w RZHû9ӂ_1Àîú'›çfjuz˘˘hòħûġÉe”Ö+v:ĦW­^ۊp…=TD żà¤;Żxñ[  qû§¨<µ‚q{Œ_ımRb âpScµŬï´VYèLžòO…€ô{ĵ
+`UC‡ĵòÛAœgËh$Qהבg݉—2¸‚´O=:ŭéJ7ÑoEŠÙÂh
+Ĉ.\Ç\d…°~£ġ@|Ż÷"ħŒ`ò>â¤\‹Yù…y>è,ˆCRĦĵT@ĉMâañ‡ü¤ÏMħJ?GßלÏŬ,ƒıŒµîŝt­Ö'…NJëñfDKħžGYĦBITûûo„ö0lWu ĈBáXú™Ş/Ħ† ¨%ËgNQgR(9Ŭd;S½Ù „%|ĥFR¸Zŝh
+˜ê&}
+ ì„"͜ˆsĈ ˆ²Dğ¸Í(>ŝÛM£ŭ÷(żMsş9­­ĤvÌ30Oò’Z?o}ö;0>ĴlžC2° PĈ²@÷ïyh>0Á$öTwˆìíÈT÷jßâA?I“q¨3?Ħ(Í2Ö¨jGë|ŜœĠAÈrcK¸Ùҟ‘Ħ ~µ†Ĉ÷\t€…†ßŠrKYµ
+ˆ¸oßäEŝ2:İsĞŝKOä5ô}ixq&rq*‚ŞĊ³…†ĊfšŸ
+wÑBfjʉAÛR'22I-á{gÄêî})‚l
+ŸSşáżÄwgÖ¸rá_â×U·Š]ÖÁŜ"˘EQöı È/"¨ˆúhíќŭĥ^
+É—%™ ࠋ“ŞI£ÔïìZ›ċ9Äóħ†ċ@p°t ušıc‡OÏtR¤eóŸĤköÌá}c˜ŻçäOeĈWù’ĥ1ħĴjĝaUîŜ/ä‡ġA%OCIS°şĞÄĞv†·îS‡Ġג ˙EWšħÔ~œĵĠ8;ŒwíÎ
+ü™Y3>·%ƒîĦÈÔOúUI’i4"їTô77-eqiöS‰żĠ€mĉÀm[ìáÙş†r§L…*IÏ2=| i<Ĵ–Ĵ/5n“¤ñÖ‚ë,8zŻŝ.Ħ•#{ER@—C’<dÚ¨"‰lxĦ\À"2Kò·t.uá‹juíȵ1(ì2>IÜ,^,KĜĵ,²?ÛTÇÓkµeżxàĥHfÖRµ8ë}ÑKİ)½Ù âğ}ş‚äršġ‘pD/|c‚²é'eĝï3$
+XÒQaD!³²W&èž[›A#Äşù½’Ğ&ĜYâäÉĈ j5ښz̨†ħĤùµ3Ŝ£ĝÀë+Ÿ Ïód[òÒS.·Ĥ_ĝɐĞ54ƒhœ^e`ÊHÂy„Kħ)ĵ¸ÙVPûdŜ×é‡,%lŜE[é™D;'÷ànÔ8w8İ7ÈpattCŸ£[$ŞM @1_Mh,FĥXÒĦ îIÇe˜d· Png²`"wóhaWMċıvV2€ùÄQˆA?íŞDŽö°Ba–èj-%/ìTéCJJÔüŽ\ĝäĉ-ĝ=üóZé ż
+N3F׋%¨á”Àš$!NÙ@Ә“SÔ<LŽ–Âŭ2òòUâ{\Ŝ K·><Ÿqù *#eB_˘ÙŸkÉYûxšq´”‡œ,{càĞ›<XÉÜEDBşùÜj›Û€â)Ĉ •z°¨8AT…BQÖŜËráµa*ûuQÌA|ÓĜƒ¤v6,ÓżĞPaß;Lۅio
+Œô"Ê0Èg*nŽHü2šgÎ0ıÜĥ &˜á~:ì.)Ô
+ÂxĠ=…%–-˘v‹ôîAÖ/‘uŞİT
+ò€ñ›\™’ïäxâٚS§YôqĊ%˙‚¨×Ë~|ևĈ1y2ìİ83'?$Ì8RÄ2cK…ÓKï̊(_í°ÂWN+ˆ’ –Ž{'U§ħÁb„•¸‚dŒµJ!ׂHĉ>AÛ8ëµ2Éxeĝ”[Vàlчğ…˜Ŝ¤Dġvl˘bÇĦOH•‘]šÊ³GTY;‰'a‚˙o<ç°#2(‹!ϕ€hŠÀCšl°·ô…Ñ4)›^†Bd·œ#ğ:D[u–şCmu-?ôŻ!t­ÙHuXJġ'‰Uŝú*½ü˙ĝƒ‚5y˙Yöù>hKÂĜĜ—sx:ZĵHŒĜXĴQ^•ğüj|&` 0•£jÁŠ/z
+¨r§UŬŒaÉ''mQÔÓÁn‹N*=â×Ŭ‘{„îĜc ǙûWxŽ)àWÔˉq‹;…yL=”;ÑñU€N)úzô-];ş{‰bċkrZž‡.F¤=ŸĠÚ#iÇd’Wĵg}5eAym˜>ı˘)^žˆĴc`ġÛ†Âŭxò‡œĤ8|
+™mŝ#³”fPħ<K+F“>pbhZ6PË^ğ•#igcħï„'Üê~ħĞ43Ë÷$ĠİġΒ•úı§Ŭ°2¸”€×îèéû „Xv…$$ÛÓÏÎ<B)G‘°"'xy덝nı0'µ^~+{ğ§²‘;ç!qô—Zâfh Fö5Ħ·úŸó‰ĉŸÉ÷ĞҊۑy5B  ¨u2YOâ{Ö-3ÂN{f¤òu­/wx;UG‰˜ħ¸Ğ”ßbJɒÔXעŻs5gÉ
+ÁÚ˘ûŽìl’ Cb‚G„ŝ‘#3:Çds“RNÓ5Ħk}珞5ĉÎ+/)écJ޲sè£ÌH‘"n[(İr¸†Uáîó(IĦĠF=–¸ßıjêbKH:VÂcx ċ;ĵzuxù‰hƒìĜ˜N÷ÓZĜîì4ĉȏßh/{á˜M Ġ$´ĠİáGÜÇ$³–şf;¤%½ĴĤ½ş²ÖCċñŻÉEÉyDĥäĤFĈm HOl$[Ż/˘bPD=ş ¸É|í$eK~°ñÈkĜ“Êşí¸’ÎF›çs+b4ÀÂż~R$a Z
+ÄÀ/ò-×ìÊbċwħĤ/רĤÀ#˘fíÜÏ8ô9ÊéSöşÁ.5ƒğö·chŸC"hjaçĠÊg¨W„Ú(¤³kéêJŭIhĊ|ŞAï€ CI0…ĉw•ĦŠƒÛ!ŜjĈœ‰Š@DçĦ‰ŽŭDnïToü·Ç’ħn’ûaıWà]€Èö+jÉÁ
+of­1 ½ù:äÂOûOq‡£îl8ÜàLDĞĥ•6[WÉrħġWÜğó½ŠÜ!¤tߎîèüÎ2ÑÌêiu§Ŝ•Ž×™} „ħÚ^‚ÊŭRxe’Ú×áĝ°blpúE²\š[İ„Q@ĝsñˆ1^ùW¸·X?‡ö£§ˆlIĊ½‚²†ÁïœÑ˚ÓQ&…ç<Èì˜Wt”ıßgbL=Ü,§‹£–Ûż*ĊfOˆTÓa–ÄŭÎŞ4úÒËyVS­¤ÄžàÜCħ>ncNáfp™­ÀÔ.RíJïPċr…Úî ŻŸ|LĴÈ£JĥFËĉbÍ!ŞË"(o—RúäG6oŽ$?ıVT/Ô³ĠÛVi#jĵ:/Çĥ­³]3İ%‡/ş!No*?ÖİRPè$[îLÚX·tŠ%żB\Ú ö‹Ž”/˙šütûâ•j’XĵU6ƒĊ“ëŸĵ%AèubÀÚ촞>ç³ïОœÁżÊ$5Z Ï᳄üö2ÁŽ:¨QÑħóâ÷37
+iĥ–ÙıYûy÷żA. Ġ^MK#PÚġeµ<ü$P„ìDŻ²Ú-‚Rġ,úĦÂĈ>ÊWb²íNoˆ,Ùc†ğtŻÚÄnîX•Ày?&ù2ƒŠU­ŻnvUx´ĥɗÜ!ÜE£ÀiLà”â-;‘Ñ
+½g pDÈĤ ¨:mÙ,×}m|“ѓË~Ĝö’œúnġMJġŬ˘÷É)_âĥuîû‘˜éo}Ġepî‰l;` äSdé(‘lżı}g`cfİ™8jùğÌò§(ûĤĵH½Xû;žħġ
+E4T3Œú„D*öjE>\F RÉŭE şŜX†¤hTòşµžèŞÁ“ÖbbI9 SèŜ<Xì2Ño„Ûçp'?Äxäğ8Áşx•°=E6o6˙*ëÓŻüuĝu£–D˘—é†O¤£RéoDİBÏ0ˆùqı{2OŜxÉTFƒğ,”LEq2œL[•½%˜YÏ (Hm_¸zôJèFCèŻrN)şpöŞZ÷eÛöO.g†ĈïÍĦ„…nš ĊMżf!Š}a6†z;â* Ò)hׯëX•½ìfîös1ÁO/°BvLŬ–Ìî’Ä2!Ù~âp]d­š(^ğğscĵ˘/0–ŒċÊ[òF§Bí°·İùì¸XSB˙˜¤u
+Wü‰‡–§‡”\âËI|‚}#ÚG†mÖùµîP _û¤ ˜0^kĜ~•ħô‰uċtìŠb˜Pş\[$V†<•Pá ­t<‰áŒżtž‹
+y RËïî~)†+4?ıŠö7AdÔJS4}Ĝ—GŭHXÙ8Ċİ’7 sİ^`;Ùxrĝ&Ċ(£|[tsÊĵ8B £Ĝv-$@£e}m?0 ğÓ:ƒ`ôRğ§Ž'ÂCZo;z²ÄĠˆo+$‰lîAœ÷Ò\cÉ;
+/Äġ9ÀĴç—$ċ<÷“%V>ħÄ9dŒ“ŒAçüžà +–~ŭ[7x;ÓĴO
+-tZفċjOżÖÜĈ¨‘í~ µNٓûČÂ͊HG™9Ĉϙö쑲ÙOúİÂ&oʝĜ9lS÷˙€xñ€ú@PÒmÏѲş˘+Âğ,SÎažŠ?Êgt{œŽ&֒™Ê$jŬ0tż°´Y§h~wÑvŬ†;úb+‚‘ĉ/Âüé:œL-'`”‹ çÓħ P£´Ÿ•çیFŠ… ĈŒÜĈDĝĤfúc1!R°MÒ%şfš­UĴz0ìñ6s–+FĤŝıS—üş×m´™\ÊOŸ<Wıñğdqĥ~Ÿc˙ŭŞê _AL/‡mı²Òçž9í“FƒŒAŭúeşyŠ~žfÉé¨2äô5Qü‰ġœCĠ_'évĠ²?<i‚A[?wìÎûòÇuĠŭJß#6÷AÊ˘•'~K÷†ëcuuŸ‹eHĜêç„9˘ïÏyò Ï.Œeİ%[1ÔÒÄ3j8éĊM³Ò–(S–ïj8W´lĈBPĉOŽ*‰ZZüFRNgDpkB£á*êŸÉ‡ÜÜİ LCÒL0AËd‹~·+ħ°Ç\,•êlEœŽ?™ò˙,Ĝl^ò1éÒ3(€ZÓÁ·Âî–ÙÙ¨R”¨†WÑo‰Â)hċ·zĦžR›ÓB°npä9„Ö4ĊĈ”I]0TöwàÓıĦ…
+ö¸% Û9‘r6q²Ŭƒ;o1zio„;>5§ž£tŭŜ_ÔËӎâ1Ë÷ùJLŜmÈ;X.Â„ü{ú¸·ĜIRÌn²Û´­YŸ‘BqĴ°)Ö<Zşĵğ½zµÓ/XĥÓİ3öt5ş×%íĦ\ %Ġó´(ĥ²„Ù²‘yi5(yĵX#Š²çzv+Öê˘=Gw
+ï)Ħ… .ŽÁħqITÜ:ñR,wfNÏÙ.†üœıùh~ÑN“o\Ĥ§ĴLMšŽ‰]{äÀ:ƒŝ*1Ŝ…ï|žíšÄ*pH2gö-GVVùÎıé™ċÓZ*SÉû…Ŝ/M’‚ĉ¨ŞDpxQLJ/=˙Höqf„€ )ʝU‘ŜjöÂÎ/_K~ŜÔBÂ60<*ùĴSŠĜ5ìaċ[T?5%ĝÌ´7×Gİ}|.œi?ıOÊBĝıG•ıZċ”­=ó´§$ÍjÓ –€”IÔ1)˜gŞ€C[ßÊ{ċĞÀš_âÀ‡ì—enž5ÁV§àêä@îkSĥî&•1m³UÈQúğRi —pĥ8ħòxôUĈCè›Ö2,žŜ kŽŸ#B˘„sr#.cùVGEAGAjS3ÍiL‰eµİ5Ĵ– ‹˜Ÿß
+Óğm”óú9qt:’•9›*²úĊˆ?’çç\ĈÀ-Y섒Dâِħg"t‚àüìĉ·*<¤)ùĠúèİUç‘r5ğşĦ›9 şÑӞÏ^ UG§ÊIŒÈ!”­K{T
+Ŝ%§ç”6EĵYž’ î4²yM·“éŻ7:áƒŬ/'@ğ’×òŠñ\ž‹£DĜds˙yċÙjҀkàİm~ÒTóu˘-‰Ğ%0:߯G[…â’Ü#iĝ¨Ôċŭ“÷ÁŞê}‹=~0­×K` 2$XmYjë;&׉_5âòy¤îHì˜ xìFV"‰íĦ8~Ky^ġXN“çÖŝn{‚‹È÷7#Ĵ5 3žûÌ5agžr ò2!tê-¨•ƒbíhˆc#xq[ż7Ó<N²z¨˘Jnêüêïï0}zÚË?hÛüЃâ²C•ŻÉöš›''$ÍL²U•78À+/E!³µoBÛġ:‰bÊŭ\]ybÒËĴCû0žòĥ%Ê;a2Xĉĥž.Y˜‚Èšoĉ÷³{!Ħ‚°v“H‘­]2vŭ
+×Ò#ygñ„˜Ċ}hHà8W[ DJxıµ\U²c%ü½Ġ–Ê4ëŝ`–Óë€T5L3@‘Œ”bÌxZS’QÊÑ\5‡ĴGÁ_­YñxĠì•?ĠÊ˙3;˜MY<ۑ¤ġIÑê+héóÎÔ9[@A߉ÔxZĠzG›ÇĝvUµ2@!êf2œD]X&*+]RjꖜڒË=CJäˆ˘ŜxŬħfÙÀkÉUE1êö`³ùyN;󤪀@(™eşŞ\8–œM@_GD1EԜ=eäRGĊŞ6=û³ËçñĠĥċĴPÚNr8gÀq &·?„ıßİ4°ŒĦBeO?Ċ„ÙdYzĦĞw\Rƒß÷Œò\MÊ>l/.ŬĴÂü­Pu|iàSŞ$Ëj—- Ŝ~m2ùçš˙ ĉ4}6ġħ*û‰ż\—.ŒĊ´y•ĉİßÏZĤâĴQ?‹ÈĥÏùñ(¸£\,”ù &c-Ó´<‚CĴ9hLXĠ”ŝ#òhín÷­jÒ<œ.͌Û;¸Š/J+q•C#U­2h“Ğú…|DöÄÇ·jx=<0¤H“ƒîüŠ`D4°ÍŻ Ó ñˆÓ
+ŝ'&żO°ġ²˜Ž˜ĉ‡ö…-^ú›iÂ&ȓèÓH“3Ĵ£Ġ7X<Ú%ŝÚŒq/7Ċ~hƒÔ~& ˜ÇµŻ‰šż^û˙ê÷Tżó'K)ĞÒwLz šhFIĞ…C\ù¤r]úı³ò™ŭŜ7^µÜK%­ÌEQ G““vż9pê=p3ŠŞ:úëÂc¤Olî#rvmeùU_ZúZLñäû`ĵO‰5‹.³÷œIµ|SN$ı n'ë˜?—5\|›43xğŻ"9”/SÍ|š1y~6vFRŻ5ñ(> ġô?ê‰ ˆûëG Ë#žùҋŜ,[_4íV`FüކÓ\
+ö£&˙ˆ¤á|ïĜ…GĠBzcì]ڒŜÚûˆÑ<ŜĴ?ĞìĥWG!Ĉyšdğ?ÑLĠ„fÜf>Şšġ˜wĵ$S•Ż"<Ĵ4ÂĠ€_ûIġeïôËiÒV¸á.ä4¨8 ÇQ!ÈÎ ÚVŸ(c‰&œ€!Ĝ ç[ä(^ŜÁ‹Û¸Y³,Öù °Ï5ħ"<&²ëĵ•uɇço
+³\p Ž\‘HzànP³Í-ıôÔÉì*n;.ĤŞV{ĐĈIs.Ĝ;­–„éq;´=,0İSQ*3Ÿċĉxĉ&y"> ì=>°Šġ4ŠGvÓ1ïî†ób)PĤî·`(LKf&ëĈ`[FZ6Ë hüC#ĤQrPÌTOĴ·]8Š|´Zߑˆ×“qD˘Ò) ì$4ċY5†˙ĊÜHŽƒéùŜT§h+9ŝ*)Ĝ†ĉEä‡ÙÎx•Ë˜hŽ™µA‚Md|ĵ˙v$$¤,<aÄmRk@ĈtñŠIŽBĦúgic|/í2Ô΍MxI•önwµóRÄ*SŞ<³' Á¨¤:ۉvĤ]…‘*ĝV $XdT¨ îñE6‘Xud‚ĵ´Ï´Ĝ ZÁ'ĥEÛïc[§ˆ~Aï
+RTǞö´3œJÓÒÔÛ§1nc-DñBq!‡ }ôġק—ğû˗‡ñTOêgi4Ĉ”Á´;ƒÒû]@wœH?ġ{Ħ8îŬüK"+2¨Ç“K?>R†ñ˙‰ñıĵUN„òIġh°ü ê­Uı3Ñz‡Zlœ;6} bñNB/(âœw&íĠ!TSߘ½…QĥSbOT'HDl­Ġ;:ŻĈßKӏ†“Ġß^= Ċu4“İ6Û`H(Ş-Ĝ$¨É×}\Ñw
+òŝrxŞÑU§i[Î&ıÓß_Ü [òçĥWƒk…’úۑ)1YÄ~żÛó½2z›éŝn·žş§pUнGÖûĞş6'óşšŝY÷ÊŜIWÉQŻ·Bı·Tk7ĴáĴdcb—œ—Ñ&%gA Ötҏ ú1t?¸eˆPq.[9PŸSĉ<Ë°ıSŻÑĦ}Aï`×Ĵ4D}
+ép‘Ê˙Mu_P.Ĉ›~:‰Ò\•~V
+ WŽŜ˜¤ôÓe7QX\…yç9)¸@fzûĈYġşKŸ%ŝUÇZ*Bŝ3
+Kó ˆ (şĦ音)sò8û¨˜ )›
+endstream
+endobj
+920 0 obj
+<<
+/Type /FontDescriptor
+/FontName /XISLAD+NimbusMonL-Regu
+/Flags 4
+/FontBBox [-12 -237 650 811]
+/Ascent 625
+/CapHeight 557
+/Descent -147
+/ItalicAngle 0
+/StemV 41
+/XHeight 426
+/CharSet (/A/B/C/D/E/F/H/I/J/L/M/N/O/P/Q/R/S/T/U/V/W/X/Y/a/ampersand/asterisk/at/b/backslash/braceleft/braceright/bracketleft/bracketright/c/circumflex/colon/comma/d/dollar/e/eight/equal/exclam/f/five/four/g/h/hyphen/i/j/k/l/m/n/numbersign/o/one/p/parenleft/parenright/percent/period/plus/q/quoteleft/quoteright/r/s/seven/slash/t/three/tilde/two/u/underscore/v/w/x/y/z/zero)
+/FontFile 919 0 R
+>>
+endobj
+921 0 obj
+<<
+/Length1 1630
+/Length2 5269
+/Length3 0
+/Length 6094
+/Filter /FlateDecode
+>>
+stream
+xÚ­TeX”ë֖éD¤^Jş;¤A”†’f€˜ĦSZ$KBJiA@D@–NI$żÑ}öÙçÚßùuÎù1s½Ïş×şWÜëy8YAÊP¤ Lé‚–táÎ6îh¤‹ĥ
+ˆÈÈÈsŞH”·ÜŜpMxĝĝĝ˙²ürlĵ˙D°‘h¸½ pûáC QÎ0 –â?4€Á
+ñĈĉĈ’ĦÜàżËpG]ì˙Ş€pƒÙCÜ Ár˙šÎ_}˙Ò=…Bx˙ŽFŝöúg p †°$Ċĉ´Ċ`sÛ]ˆ…~-Ë=;$ "ü‡êŽúó€ıŭ÷ŻáÁ"]Ŝ
+
+˙a†£5à^0(Žħu
+ ‹
+¨fnż’â[zXB–ħiğóY{ßLRĜxy~@üÙÙUĤÁWbn×vŽx‚Ĝ=
+‚h8Qäĥi/i[)ëP×nlŜ~²vtÈĠŭŝ]ÏÛö=‚7K |9ñDœrş€” ÖdŒ·µÛ÷ZÛ ‚)Ïy9ŭÊ
+<ÁÍäĤ˙^ ˎé[ċz_|ċžÈ`İ‚Ǜœú9Ŭ˜2ƒÜ˘ï‹óƒXĈ4êy;ë„÷>°uÛ7Jħìr?u%WÚÈ˘Á …šPÂż’£AÒ+‰Çİü1,žµµË߄kyĦ"‘ŝÉpÍJ.éıß;Û=
+Ċt0úğïjĠöEüP˜¸ĴÜÙKp§ä<Ñŝ£:ĉzÂB€wÄhÁcëWçkŬg}{66ÀĝipÌ à³<mzÂ#™kaĝԇ;Ž)´gJÉŝžÖgÑ|³ò…Á—}ò#ğ‡˘ŒW,ëñNĉ;şzVĈë{G@Wô¤F?7›Í2o7v$(ÖâΔÊ:~z™ò"šĊ0ŸğŬL£ŜĠĤŜe:ßú†Ë”žċ6·˘aCÛ¸ƒ‚9xTïÁìBYşĊ ~‚~öœ(
+˙Ĥu?,ŬŜ˜EBJ•u†“Og¨Òĝ“Ĉtŭŭ˜‹ŜˆD†>¨–zxOû}6^·íl§_Û#˜Í H‚lPpGM 8U˙ÈğQ Ħ=G.ËÀ"fıîEBZÁ›ôGúäíÑßî$ۊÈ^UT\|~×!àü\k%Í&—ŸËîžÛbf @îeëÛyï!ÉĵҍÔäqr¸ñ\?í€ċó i/1‡ñ³'²·ö}ä•Ċ$û9öׯ>‘ŻÈı—Ş(Âŭ°&Ìż)ç˙ŝAŬŬÄ
+"ğŒ ³Ĵ–ĠA4á‡Î*ä^nNœÁĞ2)›ċíq§ı_ Îèç×A5›t%‘ŬWW £jĦĠ½’ŭ콃×7_°Ó ĥkʋ—eXô?ŻLċx|"ĉ=Ȃ-ež˙ŭ
+“ï5è !ûc/†4N'nôy):ö’ê%ĊkÖ:
+]Ljßp°<T?Èú„=Ŝ1\O&Ġ´f½²wϏš*LÍĈ Şó‹{ÏeߌФFö§(X Jyï`’—¸Ŝŝ)2I„ġT^çGÑbÖóŻ&¨~o³lP-7
+!Tżvğ‘!{Q}A9&,IŠkĜéKLЁÀQ˘ËK;iœ
+ô*ŬWÖı~ú~Ë|ġĴġùkĠltŝˆ}é̲5ĠÒ(ĵâ JÜf\VÛSü—xÓì^^Šg‘Ÿ8›N‘Ÿ,£y“ >ž=u<1a}EúrÓ x'êîç'_nPĦâ"WŜeTĦF& ÷i>?êqI˜Ġ3s{RîIóiçäxç+\Ĉ^Kû6Œô[Êôó·M›JĝŭLŽxòëÙLŽÂş }!0¤ÜşĈˆ†ÖŞò’á8Ñm4żâ2gtwd³Q‡íĤgŝÌŝ;ħZ]> c‰Ĵ˜Ż—ğL9Qq ‡9"Úg7ïX§À Ġ­ ‡Ó0ħ1‡+\“
+aôÜRÊô½FÌF]]*8ò(ÚdŭĴiĵ×Öq
+ş`kÖ(ĝzşôċOÏGE*œ-âĵĞíSÑh.^™Ü Ÿ=k§ï·µÒê“Âĝ`X°YÇŻÜŞR`÷*µ ÍO΢ĉ#<ó’u!“ħwxNK„Wü4b-r ”òt–-Ò,Ž@<o™)Ĵ…T|è§xĈÏÀ€]êµ)Ÿ’¤ğ/N:iŬ¨
+ĥĥ<ôèIවŬËĊÍĉ-`݈òÁW5›u!goòŻi£·‚r°§Ĵô6‘Sd•P=]Ŝšûq·Pk²jô
+E4‡BŠ5`i
+“ò>ú£Š§‚èÌE§×\!,ÖĦl3҇ܧËmÜŝĞs_Ëá:׊żL…jÈĵ}S^˙l5s„Şf§Ü%ĉĠ"mŞß˜ħIÀİ(š›Ŭ3ԁ9<ğs‹%Œ+°[KK%Ûéĥòĝv Ï£™L ‘½lÙJ÷àq*"mÒhEĈÇì¨YBYşN¸ÖÊ{ğGcuî ŸyYžkÔÙĤl´ynw,„G(†%b^AÊ vԕäċ‚è·ìĥ $ÌıëÙĉ–ŞoklÄme,dÍ͸ƒÔxżżĦ‹ğĜÔoê³r¨ĵĵĦèWÙŞ¤£äqFMU÷5Ipè½é~îY)mNhúlĴ(*“+‹–b‰ĥˆŒíÖk1&T5ƒ¤†ŝÀŭh–³' ³4/´íJĦŬĜ”}Œ
+ö5³‹;ì'½’Y²ĜJœÒĴ’­Ĵâ]Ċ›*ziäGŬĜhÉÍ0:Päîñgçlŭ o}•ŠÛ+ŒG}êËÉ@+1Ù£m@hİòµy}Ûڗš#ıûמ<ċ‹ á†uŸÜ;ħއ_eĴJnÂéWnJúu ‹KiгïÏÜ{s uíèÓUvµrw>HR kÇëaÀk#sôg…Ĵ™°'SN‘j^Ä܊}“ñ˙F·h
+˘Í3ñgBĜ}6uê²I}$
+;|÷šŒnhd‚hŸ²{DÛiíĦ÷ÄóĴLڔÓ|/‡è¸PyÓGqÒ;Wé‡2 ĝ·PĈ–(Ż˙ÊPĉ( Ĥ!asŝV%Ÿ)I.Eù(™Òù½u&żŒj+.­X&'Tİçƒ5ïó­†4|Q‡•Èŝ–]<›\ëOëğÖĥNpé˘àvzuB6˙Uvƒ¨û?+ u ŠëZqw1GÓ ċ²ìŬOì‘QS˘• ë.ÈceĥךWBx—8ܧcêŭ=) ŞħĜŜq‰Àùà“Ŝhûäu†ƒm>uQÁ[ŝñŝdUÖRG`JÇsċe|+—×ÖùCÇ)ß{éñ9ˆf?mÛĉ i?´üzÙËĴôšĦ2 ßA[Ċ6=3ßİɘüInj
+Ó÷¨R„>ż™Ĵìj` @lİUô,&>9“4˜Rĵüj`ë`ĴĜUÄJŒSĤŜ+6’êcBRaµÚْ—<$hŭèCÊ#XŬ7‰YşôJdĄM¸?³ôi\ûŝƒÁÁ–pîsó ç’W‡„88ŸN| [ "Œ,˙I^GwM´›ñ}Äc%ÒöĴvßPÍqFRbyï|Ä"üCNĠVc-ŻŬ†éYû™ŝµo[„
+endstream
+endobj
+922 0 obj
+<<
+/Type /FontDescriptor
+/FontName /KXDSHP+NimbusMonL-ReguObli
+/Flags 4
+/FontBBox [-61 -237 774 811]
+/Ascent 625
+/CapHeight 557
+/Descent -147
+/ItalicAngle -12
+/StemV 43
+/XHeight 426
+/CharSet (/a/c/l/m/n/o/r/t/u)
+/FontFile 921 0 R
+>>
+endobj
+923 0 obj
+<<
+/Length1 1608
+/Length2 4487
+/Length3 0
+/Length 5291
+/Filter /FlateDecode
+>>
+stream
+xÚ­Vy8Ôm÷·—­T²ÓÙ²ï a ’}ˌ™ÁhÌ 3ƒyĴÙw…&dİÈ‘lY²Be"eϖí7<ïû>ïĠïŭë}Ÿ?ĉş÷9çŝœÏ9ŸsŸk„ĝM-$µ`hW¸.…“”•’ı#ĵ\ñX ÊP„FÂ
+ Ü>
+÷A"Pp²–Çm$eóYz  7QGMWR9vÁQ°ß™“ċ9ĉ- ĥ²6ż/ŝû6=Ž2%Ў³$`ÈÄŝQ‡öŻ„ö$e•ċIyeòc“‘TT‚ŝCc ÙżÎFœÂ°'-#{\ú?~ƒÑAAÑ°£9ħÀAP0òhŭËpä†â}|ȊżvrÉ˙<9î‡2ŒĦĦŞžé÷3pÏĜsğúÀöm-²Ô]‘˜ÂJËüGĦeèĉô˜i•—½òHİŞ+u„ÑÌŝçë—ĉş[Ĝ"ÍDĝÒCž AħÖGg>
+7(‹Ï…I;2g|·NX1œ˘ħS’ı1÷İÏÌÜİ`Žw AŜçäò–X¨ ï£P֋›˜SÁ{ϓÏ7²TQœ}–·]8ġÛÖĤHGÏĞÎĉUÚÖÏÜâ9ÉôBŞöàğ üi8‚‹ÏÏJèŸdٕìÔÈ~~h[7ÔNùEĈ–‹4sZܚĵKŽéêòSqRˆöWùërĵŽĝ;çj"^öHTġ
+u†Qz
+œŠ1›ĤDı2²†ìġ=öŝÁü@ù /Ĵ>QĉÛùpí€Ù‹ÛRúiW­£”QnODxÇÚ$ċZŬCx@,ôŠĴ™##s…ĦNĜ 86aٕTÒŭÜfT+gĞÜ?Ó/²K¤éÑĞİ8K6Ï6TqDÛéG‘ĉïÔû,?î$[¤úQĴoœìĦw‹y‘FÑrËê*ż6„JRŝÊĞÚşùÁïOŜ˘àO-™4kc .öY!…<]Ÿaò‰Çó<}£G·?8Áy[ħŽ!o…ÁFgèĠ· v–ŞĠüïżĵl%.ûÜŻnÖ4ˆù–Ä–ù+1
+:UFKŠu‘ÉŒ:Ä1qCĉŸ)§~Ŝ vĈ6âz­ 6$ı…1]ħ—‹A—Ù3…›×êŠÓ¸.—^³òĞÚxrn9Żü„Zö"5†İ„¸šİĈĝ9M8ÉĠĈ´Ÿ£’ŭzÇçgŒİ%¸·Ċüˆ$ğˆÁ“':ZĞʵk:·m$FT<§Z n’ŝôüV퉍_)ÓÁ‡Ŭiš40ŝğŝn‘·ÓuÚÔ´Ğè¤vÖ²ñPġ]úšĊݍÇn[˝ħŜŝ\Ħ_›isk†êµŭ:7”ÊQ
+ŠGNxG`é’A;ôábsÀ>zıœÚ(&j!Tx˘FH×nX™yÎğ˙ĉşè…ŜYżÚVßëѓù'DL{{JÚĤ~ùĈ’ĜĦ ħŬâo“WŒŬŠ;#şpSĊ;TÎÜ&˙ßË?itWgÉHş-ğy7šÈÔ"ǽ^zëˆ4ċ•Ŭ¨s‘vNîŬÙ=Ġŝš-ÈòÖŜ’ÔAdúG8Ĵ›!&´ÚdêĦòzġBê'İ)˜_ÌoKrŸĤċ *mŬS0=Ep(;ëê–oĥ÷*g\'X;R+ݏ@ċ—ÄËĉPÑêşñPo6QĤ…QTOBIKT-ƒè]b֗Á5´ ğvŬ“6>ˆeëU°ÔĦ*é1÷úµ:$î |—]#ö† ö¸g“UúêâKS˵…
+TĊÌfú xuĤÖ^îWcĠ„NĜ2ş¨˙ ˆ¤Ĝ–Ä`˜AÚ˘UDêÚfħ-
+ËU·J39ÛUФkùé:ˆĤişÈyÛéĞžÏ‡*ċż¸+ĵÂÌOĴÂ=ç
+é3lôˌĜş_D-kşóÚ3a¨Î*vI;?ˆè̆„˘ÊâŞÍ>âè“ÉL6IZ8™žÑq…äe‚BJPܧŭpl=2ÔST¸Ż(ħÙaŬñŒ÷/ž²wm‡42AiâΘj¨eÓŜ ]8è5”óʎ—yÀ; Çŭħżżdħ’ġ²œŬĈ䟟˔]ĜoòfĤ` Ü­˜?ÓİÏú^#❙\\^#M9%P|j”Ö§*ò=H3ħFÒ.'p’A7zJÌÔhÑĉ^ĝüIOlmÉıòafsÎÂóg ЃĈ‰ögiZ9ìĵ;­(%ıîÔ
+ü*¤ÛZc1 clì<Lp}‘6}Ŝrŝn0,\z–zzÔ¸”^ökC›Œ+£çÒ-–ÏĉPÔЎ÷Äìş¸<ùyŞZ³ß’…à$Aózy=·.=7
+’ByÈÒğĈ”€§lĵNí…íÚ]
+;Ô7h[_
+”ÜMٜ§’ÀÏUEñmÎU{–QäÏ˘4âU–Xµ3nyĦĴVê†ë˘ Az;nĤ—Ĝ7:iÖüšëİvpqh§q÷ŬÀm
+EXÔĴù
+nn5ö0Ħçhž{)Š„aÄFdĠE}İfšÉH‚ş˜›:ψ@-Ž!ĥÒmż§ÈĈÔçgfMkıvĊˆäÌ3˘oRN˙zQ=¨$WĠÑl÷ş żEwïÛÎ÷MçwÑLJA$îġQh‡Fzùë—Ä'ùJ_Îŝpó·ĠĤ˜¨½żí"úË4éA$˙³ÉoĤÊğëÛÎ!Â^wŸ^hёxÈĤ’s™µ{5ĉž;‰)Ċì£Ħ‡
+H!8q½ÜPƒK‘žt&TŜ¸ ËñÍw+
+Ë
+endstream
+endobj
+924 0 obj
+<<
+/Type /FontDescriptor
+/FontName /DUWRJI+NimbusSanL-Bold
+/Flags 4
+/FontBBox [-173 -307 1003 949]
+/Ascent 722
+/CapHeight 722
+/Descent -217
+/ItalicAngle 0
+/StemV 141
+/XHeight 532
+/CharSet (/A/K/M/O/S/c/hyphen/i/p/r/t)
+/FontFile 923 0 R
+>>
+endobj
+925 0 obj
+<<
+/Length1 1144
+/Length2 6008
+/Length3 0
+/Length 6765
+/Filter /FlateDecode
+>>
+stream
+xÚuSu\”ÛşĤ;”n†F%†!‡’’îÎa€!f`†nn [¤A$ARşDié‹{ß}ö=ûœûûŝĝÖzžw=oĴgq°héòÊÚ"l Š¸;Ż
+‡"ïŠĥŭĞeg­` s˙Ŭ.€ÛÁŬŬUœŸßĠÎz‡ñĦìĝàPwŝw…*Àmċ.żPżgö†„Bîšòĉ˙çܜà/¸ïÀv0¸í-Ùz¸òëanP•'˙|üÙCŬÂ@  n
+°³vFAŭavğ/ÊÚ
+pGz@ŭ}˙/ñï;€- ⰁÚß]ßêw0ÔîϽşµ;ö `
+ä
+xAbÂwNıS ŝSQËöż˙>Ĵ·C
+ïüq÷ĝŻĉù7ŝżZèŸ9=œ˙èŸûÏĈw£
+öûÍx„ŝÁé9À Np(
+uç?((Üö)à„- nużóŸ5Òö_ÀoâDŜç ş;û×ŜvW ú
+!˜žD@$ÂkZÏŞeé½x v‰èŸÜz0 Ä9£çèÔ q*ĦÊ?KËy˘5à ]iŠİŽ‰‘HŻ'êċ–k%#'PŽ˘Ûĉ{'İ!N´‡ÇŭuĜE—K“ž·!ïŬ£ĵËRvbÌ!-˙…L7AÈxf²ĥîĤ‰CÏTVPŻı>ù
+= ï$€Ÿ˜2°{tsŝÚ1C–JšöŸë‡qÚ>bĝ°€''ĊtÛ
+ ×!Írfâ2´Š{ƒ9ûJYicb%ĉì2Jwáùû@½˘‰y{@ĞĜç˜DŻı4ŜT­ŬTJwŠ8—Ĥr$<ï& ˘—ÚyÓû¸&‹RġĜ“ĴZêé‘OħM†”Ĉ ĤWMòġbğÇğSéHWžy˘nŬ`¸LÑCûĵڏ¸Œ"Ώ9OhÔ,ëHGqĉ‡_„gR$5Q[ÙK‘DÛ"ëŻ$!‰Çġ6ħW)Kçĝ*Şĝëµ_G5A!úšìWĵ¨•(é£5Y9cq9{ÑŞIržfÖ­êI
+†ÌĈÇbD¸&É^|Í4@áÊwM5 ˜Ŝ>u^>à_ɎÚğÎM Rk1|ı‘ïÓ×ÂÖo4ĉŞ…[½ħ‚Ç•‘âÄĞM,·-;ì‡(*–JĵÏ
+³ġ Xh¸Ŝô“;—Òƒïjĥ×ĵÒ]ĉĵ
+¤³f{÷Nµ#ŒÄĦœ9'Ŭ.Glï "èxê0 ì_˜H7½ÄÌñ‰f{:#ÍܲNħ3‹m•à‘çÄM@ĊÉŜÈOP€GzĉÏĤĵüÙäw³ó?>5ۜÇÌ•›JĈgJ$@_hÎŜŞçrKKżî„ûŞJ jĉ‘IUÜÓû˜Í/ûö…rÙlŻĊ.˜vËÙà18-âşìĈ_Ñ0”Ç\í›ĉĈXAd?hnÔ´L‡â‡<àCÒÇŻJ8ˆóżÇ_üñ, ·€Ĝ’è…ù.mµKHÇĥġ|g÷ĥOéĈo.D#î“ÏùìïwìmbŒÇ‰ìÖżgkĴŞ–mQL0*’òĵ·ŜĴ_D™ĝĝ}âe<i-'ìŬ”Ĉä˜ö½œ) pñHaYבHѧ² €¤I7ì(‰=
+T-Ìsğd8 MĵFğ_%‘Ŝö\L~E¤ì ášĥìĦÄ Ŭ@KĞȍèĞïŞĞ-.+š–ĝ<ĵ…öDíqxŞŞC>‘ŭGP\ocĊ=§ĵóç•$‹gn£ƒ*ñ<ŽÂŠYıw ¨i$/l=üş|‰˘]M¨Ž§Ö‡”{Ÿ{¨˜2}~sĝe $ˆĦ01·
+ŭ>,³Ú_ˆLcĜ +Ö:™²vñëPÁ^ì[´;}Ïï셒<ĵ¨•VњĈžĴŞÚPKè°Ê썕ıGÈwNûÚPN]ŝ)îdE˜jʘİrܘ]ÜGmÀa—~ÊŠñĝR~óċ8Z_S^„x5µ'ÊÂ[·>iÜiáÇŝVÒ:(áàbSññˇ #jèCÊâ3zNR’ĊÊĵsüà•Vù ­NB̀şŝ
+^…¸ÀÍŝ1FOôĵĈáo‘·ĝĥ _\‰ôèĜgë³ÙÛGx{ğ l8ϳ
+ΈĞĞDʞ3ä;Y-ÒpWĞdİŠĤméıĈĠîb<Míö5…
+-À]¸‰cÄb9Z˙ÓÇҝHQĥ*ùäü֋hŬŻ).­
+J…Žïû^Šâ@ÒĜì_=›1ĴhQ)ÙúfĴ…5ÛŻ³ş(ŞjÑuŽ›´ ™qjŻ]ÈO_éYT9żîÒ°!6(wá–ûDòsԉB†,âäÁ3x|Ĝ8鐖p:ŽsaÊ.ĠhÑz$ĜÖ#Ucŝ‹ÇȵUà¤JJéĴCÁ}n†£\ĵë. ÄWˆxĠ9§MĜQñòĠÉà04'›M7ZRٓi0(ˆa4ËŬšżœĦ… ġÊ.òákB*Z•¤N‡ĊÀ#j C‘Rk
+_ŒîñÚ§F·R{É;ÜJjWs,şë{ĥŠkŝ3ŝĊ›ĥBeaÈIŞĜÊp²q ­Ÿş½Â,Ĉċ¤ZE­&{šÓż<ĞŸáȐ”yŽUveXÎo½kċöNÛ|Ò9Ï<‡á Ü9ğ¨
+Ñŭ(ï›_PШYwĊÂÉ7§Rĥ]ápž÷ö'‘^3ż‹•˜q AZ•y^ç÷§ËúhÏԜùn4Ĝ/—Ĩ5¤—ŜôäQ57kÓċa èġĉêöPT`Á“`On'ˆAħ].òŝIÖäjíî4dY§ ··^ÇI.xĤÛjœĝ&SPsÁg9à–ħwÔM8w9c÷EĦëžO-ö™’XY³+Ül>Nr
+rœz ‹4Îzj³‚NĈ[ĵĦĈîÚSñD”°˙†x9
+ûU&2N}5lÏ˘nħÙÂ`UA Íè·}|™âçĈ-Ż|j°$ĦÜ[X{ÉíöYSrŝŜ­‰Y?µ £V ĞŞK™£òcşFœC#è˜r”1lsŜKÇúĤż¸¤ƒˆG`ğXizו^ú1 ki á;Gƒ.?î%S´ ÄëĈ‘SôġlY •)ŭÂ6$¨–X–wœŒ4uħ< Ż+Ç^Q0żí£Sé­)™ĵÓ^dS U óóxÂ,ÊFeäǐ–Ûî²Ş9+¤*GCry@P×°ĵµš*† Ħ¨'t†SïçĝôARŽ½çĈñqòu^Emá aµò‹i\&$}fÓOĞJS˘xÛşjñÔA4ŻP;ÜbûÓ§`ÀQ?7Aèin‹Ĥ~³f"|µBŽtÒßàtkŠÄĈ#¸œ5 kÒÂ`ĴNŠ‹PÒŞ3íu Żé{\ù£cljʇĥW0ŭÌ-íWΎgJş]™p * †él1D–­ĝs‰äE4Sċè&Ğ'íyìß)…he&Ä ⒴ ³Ò7eŻµ@¤ŜĉΚ7è Ĵ oĊb÷
+žÂ Í"í!µP·UÓSR†´™ùĝŒSˆT`Vsġóà%I´[Ĉ†üŒqIR‚MŜÍĝöœ!ò—ğ=­ħ_~ŜEÂN! Ÿ’oñʋRé4%‡çŻğÖŝô²…Ìà0H´IȍIlġ‡Ĥ~ˆĥ2ÓhñSföġûó^ÊĦ.êĈCQ‘šñ˘é%PÜüO3!kÂŭcχ¨v·ÎŬ˘6I·İ‘í·^#/ÍUşT°°SĝßO"ocRĊ?ĉŠ$wyŠŠéŝ,”)’fû„ßQiËBzMIġƒ
+k&qîÜÜëAm –Ŝ°ZÌ° ÍŞLvíÛfKϖ1£C‰ÁŬ$öô7‰ñkÑ„–3Ù1EôfÒ
+Vĝí¨–•ŞÛË/CŽq*sTs†ħ“òЧ7US™,OéGœ’|0ÜLɉaY[Âq_™ˆ˙Ż&°Ŭ×uħݤwRĥ[î‹ÍÜÈ=ô2ż%qÏĵ_ [mᲨ7’yÈûĤÔ­[’UĈçW´z½Ï, ~ÖF˘˜›é9‰^ÛH²NÔçDÀ–2j°r$™#½½üŻÉÛv İ×qµ8=i˘ŭŜE\fbIʙÄ7ħŝ
+ZÈ8^* 35—a6dĞpoU Ğ< ġ˜÷jE´ŽVN(Ġù˜|&bßa_ŠùîĠ^h˙+&%wµÒRB$Ş,œe0 júD$qì­Ċ -İ˘"fe7M^
+ûÛ[ΌìïçékûI½
+-¸gàĵ~žà#bĵŻ3-SóT:EÌÂÜà$=ÑW*?YMNğÛR÷ĥŭ/-S£XĞnĦħ#+ĵOቯóÂ}–p9Š§âĊL1$D5R­Ùe”Ùoˆü'~ß8H%¸ÍLJim½&F+ĤboiäĦ~Ôİ·Ŝ3Ut8'ižÎç{:–ĦÜùL‡†1…Ż˘Ÿꆁċ)İĦŞ#š’)ĉe˘!m-3ĤYĦ9œ†mN ƒyÍ^“öŒ\KƒİÏ;Pñ:Ĵ-ĴNO¤Z„=žŞ˙FS\`î¸qéëÀÑŝ(Ŭx8%aK|äRĞjĦ:÷’˙ŭÄŸ›DÎ-žäò*³L³ĉŒ|”=6ŜP^ŝ,fşs‚ .{8p˙
+G
+endstream
+endobj
+926 0 obj
+<<
+/Type /FontDescriptor
+/FontName /XWWTGN+NimbusSanL-Regu
+/Flags 4
+/FontBBox [-174 -285 1001 953]
+/Ascent 712
+/CapHeight 712
+/Descent -213
+/ItalicAngle 0
+/StemV 85
+/XHeight 523
+/CharSet (/A/K/M/O/S/a/b/c/d/e/f/fi/fl/g/h/hyphen/i/k/l/m/n/o/p/r/s/slash/t/three/two/u/v/w/x/y)
+/FontFile 925 0 R
+>>
+endobj
+927 0 obj
+<<
+/Length1 1177
+/Length2 3026
+/Length3 0
+/Length 3778
+/Filter /FlateDecode
+>>
+stream
+xÚmUy<”ŬßĥEŒ-²Dr'²…ÙfdŸħï´Pʘı‡1c†YìRR˜ĴQD„ʚ]ÒfɄ"[Š$DJÖJżQOOïÓÛçŝœs]ßŭ\çs+ìttQ3Á’½@s2‰ĤS‡"
+Ŝ
+8‚4BēX’ŒĦû$š ŬߟˆħÎ •L§`@*Àħ*ü{fÀŒìBÁ{û
+ùĊ
+a’@
+Ğp솭#ÂâimJ>4š?BC‡Y˜:§NiÊĴbQ$ĴÙo#
+é?ü_ċôgs:‘ĝcJ?›XŬS[`£"ë‰lÌ
+kN?nŠċû댳JÁ`7ĜOĈèGûVDßY)7‘R›x²·Ig˙ÒwşĴ_‘}LĦ½$ᆴVŜ˘Ŝùl¤cğaéaN;Nö3ÉÒ¨Ŭ Ü´QGDô´‡eœÔŒzċ>{˙üf&İ”xÉôËïÌBZ-çv-ı)šuŠ¸œ!‹EÊĴ¸ON8pKï(şRÂë0ĠŻ _‹šu°$wBp÷2ï"ĦQ1éë{5ŬĞŠÖ™eђFÏŝfSíÈŜ3|´Šy/i·şˆğ÷4×|mŒï²ßßs‘Ğ8ı ÑYÍTéċç–LM‘ĉ””|zRÛÖO³Y:³/żıħ[‰ÉŻ÷\̈́ä9íU$Çxz#'w—$Ŭ–Çâġ›—+ušíÏɸoĝèG[oĈöş“ͤ9+g¸äPyĤ_ž•9ÈVĞëĜWb>ñ;á<ÎŻǔ¤^^ÏUĵ'júúdEíÁ‰‘3:—"½/m''à*#y²c&ê=hĉ€O)QvL°cEoEĊ]R†›I[rç´[‡elŞ(Œ‡/3¤!–úÌgOy4ü—˜nşĠµı—y€Îêú
+O*úaÛVa÷ÓÈ I£–ëċÔè:_4ê„Qx^èeŸéÓéĦK˘£YüğëN*İ—ö$ˆ 8ì›Ü.rОĞj(ˌ_Ĵ!ğĠî97)$ü ŒĞKzŻÎü7ŬÙZğò4êvî4£
+ úóŝ"!?›­ŝÙ:w²öÄ ™‡%J$ÏK°ç‡şq…ş8)k?8l]îxÓ.y`E4émPÂQéœh†Ë3 äúùÇF'˘:²-Ó'iŸok+ŒË§Ëħݤ(6̀aĉS–(i·ħk-MJċßĉl|ž„Ú%v4Ï3.sIÍt¤tí´9‡ŜJ1­jÏâF.Èz5µeÚċ úĊ’?Ŝ6¨¨aŸßÌï­€dÏ4Z’y>Ö;ùÚkIE6Íéhı
+  ’´Ù­ħÇâIûv›˘ÎaÙSúŬká“5jOp;èĊZŸ9]0@ğ·ĤV޸d*ÛÇ{ÉWĊܢIDyö ³˜ĉŠAÜĦ=cI í™*)aÒĝìô}%ÜİSës\×[À—‘–‚—ù-fŻ?8ŝiŜĈqËâoôĞÜänÑ`ġu!_˘ŠeµKùŻ<ŬEàħğó˜ğá1ğÂÚX\^yĊCߎŬ$ħ,Ÿüİ<˜Ħµ˘TOĴsÖŭċ˜ú‰C7›eĤ™½ĉ_Ó2VŠß‰WG~ò²ż™WÁ˜„^L3TŠšĠ>µïuÂméĵqD,Ŭĉĝˆ_äKù…äßí×ûc ĉíO @ï|SġµÊOÙŬ)90=-ċQ´=âÇɌ‘˄䈯—§Mڜï·ÙŜüĤy3
+ö™ jpIj9Í=~Û_áßJm“ÍQéOà—Ìòz“ˆ‘Ÿ~pÈúbżĤK”Ô²è“ \ yJFn‹ĥÇöħħĉ=ùò Ìí•:F4şQïô‡Œ—(˜Ħl‰Ó½îò›ĵ€á"ÒjĤN—ċ³
+ş²xÀŜä î°&öÄb|ùâ˘Z‰›ñ45A§ŝKÔèŻëcœħzĵŠŸ„À·Âšú]üŸ/Eá>&…ĞĈ
+wÉÒ´0Ŝ[ŭR§ĠÉtûÒv2eĜáÚ3a+ĉ=zĠcüLÒ-„ˆXÄè!o1ħİ5NùÓêëuUĤ'ş÷IZĠ‡ï`Ój[ÄŞĈċ7ïl¸eFiħß&Ç)'feÓ6™ŭħ:ùeĈİ
+[éħx‹Î1÷Ĉ4Qék‚]ŬF¸ċAƒ{Ğğe)… fö’óï/D”Ôĵ0vL7cŠÔw8ïchĠeĵÉÙr=z<òŭs…ĴgÙ#¤–È’‹-5ë!°Ŝ\<ÙßevÉ7JA¤Ò{ÊD˘~ç·ç‘ĉîbi£_5ŞiYeMĝğx“/šÓü58"êNÛNWßĤ›ždâÙĈ”Z+sĵĉÎċÏzëÏJŝ’7ÄmòJ[9[j•–ŞZ‚×LšuŻÏ(–Âêĥ@wïÎ1B„g!ò {ŜOdL)?:ĉċ~T°
+à!òöLOû‰EjÙÉ7úUµĈwŬ:;RÖ*œ¸é²–ñÁBS'ĞÂm·Ĵ/5î?ĥŜFEÌÖ֜WïŞĵ›i^xĠg[ĦšÍ!âòAí>3éċ3QuRoœ[ï$íċíµ§Üè~ 䊸ŻHÜ|*Ì\~&Au>~ÍMP6C_â<ÛAkċ†úz-͵ 8´‹ÒÍò™{†s„Ğ—ûÏnOÓG¨Cĥû]‘Wó;0ĥÌY²}ӚPO<X^HjÑĵ˘¸Î¤ŒÍ0‰ĠdjŸD˙H2Iyôîä(Ù~ÍùğŭĤ27]Û Tׄ’ıSYŝÚN~ûv‘N]ċ@·xÇÜU!ŻÌƒ§!~yĠáó¨³×<“ìS~{'ôK™1˘ïž#Ï[ĠĠħ]Üt†Vl‹´,ç+6pÈ!·ßHò­—ĵÎù<5œ€ĥ09Ğ%çaħö?‘‹Ró
+endstream
+endobj
+928 0 obj
+<<
+/Type /FontDescriptor
+/FontName /LQIAPJ+NimbusSanL-ReguItal
+/Flags 4
+/FontBBox [-178 -284 1108 953]
+/Ascent 712
+/CapHeight 712
+/Descent -213
+/ItalicAngle -12
+/StemV 88
+/XHeight 523
+/CharSet (/A/K/M/O/S/c/hyphen/i/p/r/t)
+/FontFile 927 0 R
+>>
+endobj
+929 0 obj
+<<
+/Length1 1618
+/Length2 1859
+/Length3 0
+/Length 2694
+/Filter /FlateDecode
+>>
+stream
+xÚ­T{<Ty'ıĴKıċÖqż3>„\Br',VĈÌÌtĉŒfÜ ÑڕUn5ĞR-I.K—M%D%”\ş›X#$!QÚ÷Œv·}{ß?öŭĵŭ3g~Ï÷ù}ŸË÷y~*Ŝ~ödZèLƒQĵ!Î
+C‰0™ˆŭĜħî
+vù~4
+ş—ˆ€ú³cŽ@›‡cŝ˙ÌË4
+(½ĵżŜáéhğxî\@DˆTÀ›A…H€;Da¨Ph@ŭx
+Á &âj˙
+02„i(v 3Ñ$Ŝ†‰òöË 0é ˆŠ5CD˙ÄDlèV_ĴsžW—Y Iôq?d]tĴ­‘;ŜÖáÒ|/–A/Ğó?]šZEkL)Êú•p.ü}u†a}—Ġ‡_Ĝ}/è+£nşc·oÈRµ À—'“ÔtšJ5,ôĈö…•IO~—0Óë>ĵ6Ĝ0öĴÇ7ì§÷BJ] &ˆÈÌ˘NŞZ\iêġ7ôuɤŸmĵ*YÏ']sêĊ¤ĉaîâ­›wnµµ6Î
+6*è•úJš(—œ˙BċÊGĉŻ 9ŭX§ŸĴ/Uìĥ&h)[D4ŞJÜmû3­½ŭµ³CÈÎJÊ>IY'r#š[Îmtcíıés›ï‰í\kÚVÔÚ\hK:ÛŻğÀwYÜ]f‹-
+m›ûñöIñ–û˘ġĝüQ>ĉʍ”R8ĥzûğh`ÔzaänLrğċm]‚=:—Ê×Ú+rĎ ĥÓÓäŸ̕ÔÒrcXƒ.qµR”%ĥ6r-rm´Úb{w ŻèİVñ×37U,ü>0yĈĤ˙ÛqCŬ „OʏW'Ö_d„J§ñnQı“-übó‰oË\ì4,+[÷“ĝĈ˜ —‡8.ғk Öġ$/¤% 7ÎߗU²ž{îĊŸÊš_œ }ünµl@<äŸO¸^r´>ñGmĵ‡ĤsV{“ dòĴ²Nϙ;ÙŞş‘uú·eRÉ3 żÄîH˙Zh)Ԟ÷š
+Ë/·ì9Ôߣ%iîŒçr‡}6áĉJÄ÷™ċ˘Ë•ğ†ĈĊ[û+ɁZuÙaêÊÑùÛäž
+YoĴ!ÑRIÉŜê.-,yÈĈ#­!%Ĵ!Ŭ)ÁÜ2A&H‚ö*†­WêžqŞyŞġzÏ dñƒÊĉ2 ĉë;y½sáöwċçD֞ê0½A]ùv:Hu#Җ_t¤ġffĜδ÷Á“Ŭœó/Ĝ³5v=Íŝ¸fS‹{ğùŞ}ÍÛżI”èi­u?Ŝä~m+g°ĝ˝K:Kzb‚xŠĞ|¸ŝ²~÷ıiǵ!ÜQóġoÄËu÷û\@ü/Oġ™Wǃz÷íUT´­=ám|ï­t-Ä{@€Ĥ!<Òëĝ+ä‰I`ċç0˘­ÒÓs£i°ûÓ>°W|áœcgvµÖ‰ê³-ўŝ‹†ŻmBŠl\Z)ŠW¤­ġžžEĵzÚ<(-J¤îô›2Çĝ³ĈB=}_Y.LJ[Íëx íC‰ùAlj‹X°êş›;RZÒıż~H²ŬéĦ„Ŝ7댞çċç&—+y°’LJ–S8¤ÏtQ?lüè7–ft´”É£ò|ùÏl'Ï{ݲ0ÓòbLŬá—’Ú\ĝĉžÀ'oÔr׸éÓîg
+fF$g'ʄX‡ôžĜNòĞ-§Üĥ–óÀŸóiŠUÖg—ıfsüŻw,dT: 8MŬ&•Ú@F{ŭËß[—íz /„ûbZê‚çß-…²y)ÁĠ~èħŝÙ)ċııJ8uoC›Ċ q!™ĴaKĊî}„ñyßĈµĜ2Ö3
+Y×J[j*,YoͽaW­=nyż5pŞ@}%V-#û|Ç:öèËiŬ½Yó^#r­:Í%ÒǨפ²UíŻ +/°ò9“âÔÜċħrBì^ˆtáOÎÖw"Ŭ}qon£ĵ(ríĞțᆸïÜv°óÔ­ÍO ŽĉÀ°+ŭ¸MñŝĜÌ+Ùe}-FW¤ç½ž‹ëU„Ĝ¨sgTš÷$ç 6K™rc§Ñ•yVMŸHĉıg^İÊĝ€Ä“ûR†5Ò~ÖĠš+30“`ıħ\˙ŜGĊ‰•ó1?áÉ~ûƒìGÇcÓ˘~V–}]ÒŜıÁîĵ§2žËÜÜ–rĝCğĝšœäë²8‚GiJ\•â‡Uϕ/dT¸qĥù:_xh:?¨·AxDq ²_* |z\’îŻi\Ğpm‹â§VĊ+ĝ˘ĊAıßÂ2Äċ.§×rÂs\3ğ^ö-ċvŬ—=}àò–0ğˆg9J÷µÌ.°ß*¸S9ıĊS/W‹Œ–·qr}FDrm Ğ ^j?uÙ56SR“ŸĝġĉŻ6Ÿ<Q³çÒ&%‚ëJüÀbñ튃&³a‘"ğ6VŬ˙ŠÔ-ì9í7Y°p5”ż˜oéî\û-KîÒܽ\ş›;Ŝá­ÏmİŻ=Ü$2DŜâNé=WħŠ5›;ÙaàÚÁ,ĉÈŜğûlB‹CĵéxWߟxħ¤
+endstream
+endobj
+930 0 obj
+<<
+/Type /FontDescriptor
+/FontName /TXDFEB+StandardSymL-Slant_167
+/Flags 4
+/FontBBox [-180 -293 1090 1010]
+/Ascent 504
+/CapHeight 687
+/Descent -237
+/ItalicAngle -9
+/StemV 0
+/XHeight 0
+/CharSet (/epsilon)
+/FontFile 929 0 R
+>>
+endobj
+931 0 obj
+<<
+/Length1 1626
+/Length2 14604
+/Length3 0
+/Length 15453
+/Filter /FlateDecode
+>>
+stream
+xÚ­ıUT]íÒ&ŠCpwY¸ğğğğgáΠ<¸ğğğw·à ÜŬßŜŬŭ÷Ĝ§ÏMŸ˙bŽ1ßÒ§êİ·ĉĊ¤$UQg5w4J9:€Y™Xĝ
+ŒŠ@skÀ§œž’RÜh²vt0ù
+˜[ğ:ٙx}ĉŝ ĉäbŭ/nÖ–˙…€à´4q1·şş~†ùŒŭOwŝĞNÀ˙V½‰““×żĵ˙eġż0Xƒ\vLĴlŸ9Í@Ÿı-­à™˙™Y G
+ÛPz\,Zûğ“Şj†%Ż0DÓ?Ù]à.hÈŬ 0)ŭÌRbħ:Q›Àë
+O¨˙>ÜSŽ ġ\A÷ŭ! Ï‰ŭBÉo‚—|Lšò2vım4{‡~vçvÓssғ[gŠ7oîÈP´¨Ŝ¤óÏd ŻÖaÚ]Ĵ­ıżħWLÖ
+2ˆ³ż/‘PuĞŭ;_/í Ġ:8¸HÖ—AZŭĴ×ûŬ ‚
+;¸‡Ÿċfádƒ–cŻŞk£‰°ìĊˆ8c$*“÷äˆódLž)
+Ĵ7ġTz2ÍĜ˙ìşí;ç ċ=ƒÒÍ^ı E1…Y+Öİ€ğ"‰–lúıì†;Eí––§ÇğĉMsı5j:’™‡#rËŸ@;ĤS½cʇ3Z|OVĝş•ËÇX3ûwÍĉ‹<δġÚfúŝVŠÎ­eĉ‡ ÁÇòw<Ĥ‰'p…â9ú3’w)q`%[Ñˋ¤ Q…#’ŞÓŻċ:'@Ÿ=ÑYf–·ıg`;|ךŞp$5-ï,5íˆxİKşô˘ÈĦl½„žœw¸äè&˜ÙE8¤ "(užßjRv#ʊ<=°eêäióċòĦĵm޲
+pè
+„ëɊ8c"ԙ›–ÄŽ§™Wñħ–a7<ûb¸—f7û1g Ġ:X÷?Îĉ×½”ı>4S–Ĵ‘ñ×ygÍä;˜çûïëL<° ¸lןˆ_úz&…Vŝl߃ĵëĊÜĈ7ûfĊĠn[pK#LìT2K 7d]ŭ°˘ 1z·èevJ­·Ï(ımĵSmÚ<gcTÇï r|á0Ğö%ĝLşf cڈêAïÁН׏3‹Ġ቟³2bGkL”rVĈî‘`C (LWçò°†O!ÒÖ#ĤĈ|äšTêßMz'ÎëeÄ~Ĥ°ó%ÜÑa3+HWĤ"DŸŭM˙ır)ñíw?n!öv‘ù·xF›i­TȏT+Üté#BıP/ìJÀ't÷#ôğ°2ÓUB•?ġÍ?k=§ÁÚ£ùÈ--[èħúĴÛ ÀĦçÈ9{lŭ›ŠÊNgfLf¸Ğs—‘¸ŝhĥòjş ÜŜW–ıÈ"_ŭ²~”‹™wÔGĠ)ŽŭT„#ÖÏ/Ċĵ
+ŽûÊĊÍĤš<ĜôdlùŻ·{ĥ1òŻ×àpħùyY˘…É~²Ô·˜_Q²­“áuS_HµàÈV³Çġq!ZibßJÑP‰Ĥ…ġq–$Ï:¸ùŸ|×ĵUáĵ-lv½˜`Ĉ³Ġ63àV—d~)Ûż*- ìĦÚĞÉğQkSiòŜ")îHäĜÔxİ Š5]üI´GCiäĊ
+TW1i˜LW½°éġÑúVŠD9E KĞrŸXDʅÉè‘"ĤIž`¸ż—>ĞVErÁÓz
+£ OŽ'‡ĵ¸˜ UĈÚGÏmp„ċË Y! !cjÖO:5#ĴœĞ·¨r`L†ޏkZë:äwÜóró }ğ
+ÀÑ-‘ëĊëúžO”(ûğ;ċ£ $\İó›‘ĥ+'Ü+]ĞĠt€žYû'rï¤&Û\nĤĜ„Ġ}ĤT^›àĝ,.KCᨣ çÔİÀd-_· R‘ĵAu†àŜà‚#µ÷ĞäıÇV·tùh§L`ulà–<wĜ Ĉ³[Ż‰ĊN²Ûĥ ,ĈÈÖ9ZÊ>sùEÍ
+ [ŭzʈx‡ ~ĵ 8ıŽôËŝ|rmšÚx­‰9ñ*2Żž“}¨~{3`J‡yb#&6ĴhÊ­ì3ĝ÷É+&™Ha2ğùĜqùŞiPpû£ej)Nuu9ڈV,hÁŻœ^33'×JdSjbİNĥH)šÓq;W˙ÎoÉĈš6IĜhêOoíHĤŭNs’šÌ8bF¸y_Ĵ3„bâ ͔XÏjħҁħoÖù(uc³#%FòƒO´Q‡=“‚:Âù­Ż–T“š‘n ÂçBK#f??G„;IOÌê—êĞ=êÖ2göf<­)ıAËeŞïv6’AVŒŒ´n‰cŠŻûèù1>{ĝ˘—Ŝ;!?˜şĈ ²l׆H¸Ùş˜½Ÿ·Ëa,ĵċĠVX1ù{G‰ô\wÈ(ûèŭkÛWzÉC%ûĠ1v+şĉĈ$Iܟ’ċä­2!ö BÀ!Jjàûü'Q­ĠüCÁ
+ˀƒN\(ĥ`‹†]ƒżl˘›ĉjoÇ ú2AZe²•$,b(tó\yŒ7£|êêhïöM‚î?ƒŠâXĦ·!İ„ú‡ì”:M¸B%Ïf› ÈUŽvÛġM÷°öş3ÓX6¸y½x³'î’F³Ç‘ÑÌİ]šˆàÚĥl/UbR€{¸Ħ˙F?qUĦ_­^ı!j
+n‡h8r\ĥ.ĉ.ÄŻ´‹xBcğך0·à äĝ=Ŭˆğê<UhĊ$‡O4ĊPÙû˘
+¤luÜYÌïúÈûq':µŽž ġíu°€ŝ*‰‹!”u`Fˆµ”.Às˜V˘Ĉx@‡.] ôDÊÌŝ Ħ#21ċyR²v˘"ß!Xwë>ô OÁmËÄí??ȟh‘pä˙ÛO‘I ĠƒÜ\]˜Ġw76KÙCyEı̸‰Úސ9JħTRsÊsxwD“.1ŸQQèɲôä;Œó@ı›i9lô°qµ1ÂdîŞEŻ…9˘Ĥ•*şNRá@7˙İñ˜áË£cö
+%4ż‡è3n=öԏÇğjLùè İ¨5Ç+X•ÔFJ/ħoôŭ’ù-QbŒùĝÔFÚ˘Ŝƒb˘ˆ S
+”ôĵµı½/üñ÷ço·£‰ßoÔÒĴ$UŞ`ëġ¸,§Ż\Á[AÖY(b ĝĠ™Ììİy]"x¨Ĵ(İ9MO`2°Ô+)?’ò7è–;”ŸJuÈ$ÊpÁ3ğ•áËbj<†àÁ5ÄÖÀŸ™Ŭk$Žr“Ù´juL7ż‹puDĠ;GK{Ĥ'=<}C\ÌĊŻA`ş&kıú(Óü˜ÈĞywׂ\9ŝyHlñ H§Z1Réépb"ÔÓa žĉ/ŭv˜z£ŻÇΘ9Ç›@İJèzÑŞġâàûˆŭ{ôOǨ,Û7zı۝ëmħô :š$j†í>ڏiۋ|r6.2ÎİĴĈˆŝŝĞA£
+“gUfhšœÈI"˘e{ÍuÓĞŒ›*ÍíĴ˘Ċm6Io8.œŽš?úkœ!£ŭtlÔMŝG‹}ŭwԜ
+„cPµžèş…âħv6dZß*ĝx9×âŸŜEĜÂ7&ÚDa$ü £ĴçÚĵcèċ1î×£­Î݆n³X&Zğ3 ¨–^™$žîˆ5•ž*Żôn9Z<â‡@ ˜9Ğòfİ ♤RĤ0†–1ŬtS~UÎ2ŭ—%8‘R˘¨*rİ[ğÒ¨°Ŝ,R•\ħ”$8—‡§Èĉ#ú¤v?sóŽŭF;¨ÜW˜·—NÔÜâ{Ú%Äò0íc " H\SŽġŒFß~á§\Í­ĤÒ(wżrf
+Èr'ġ Ğ0A½ŞÁ(™ÍB_CŠ…9GgóUĤUÁ}‡7êÎÚIîS“ÄÔ_›Şhט]Zk9GPށ9ġĥ²#êħšÑâşÇ4V1 TO|ȐԆ?›=}Ÿĵf(ÁĞç]•żÇ4ÊĦ&İ£¤w•4™Oì4mY_,hvÄW
+ĉŞğW@ÌL•>üĈş5NTf ìĴñ–Uó^ Ŝ—ŻĴ:+v&Ş…ŝ˘ŠzjË݆·wŽħ¸ÄĊ¸šĝ¸Z 1–„y‘„
+Žĥú48[_rçŠ;Úe` °L&Ż`&ŠwXÊ&oÙïqu×ԋÔ6Ô`ÚꟖ2P1/YGxmíÜÊÄ^­Ŝ`™žüS+ìÛŬ½qÊÚŭ‰ġzş^‘Ĵ”èp@şË­żèw6štzîĉi3J ÁŒXCl˙š@ŠŝZ·#p0ü}mħğ ĵĉk*iàjİ_á=>À³œlJPWIöˆœroˆ’°Ï´–ĊY!ĝ.S<)ŝ ŝáw’ŒeÔû0]WÑÁdW“hğ~¸ĴÇ;dĥ2C8fÉÌİ„ĥ%Ψž@¨
+ĞvÖ²²|÷£s9éíñÌnòMáX UĠFÒSŝ[¸N E!Ŝ´ĥwċž„ħ·wŸsš+İšEöŻş­&‹ÖÓğfşĜ÷m9‡D9pCٌ.ĞO8°íÀd~öÏÈk#“ĞFïI/ÓT&/!MÏp)§×sË“Ğ•ˆîl LĜTÌÁ"Ö µ™
+(’sѵ§ŝı\IŸĝŭ[’98-ŞD]éʌZI-ĥ(¸SĉüaP¨Ò·_áÎGKŭëGI8ħ„%ß!Ñ
+Äʳ·ë$ÈXCü(wBág“ĴŻ˘yĦmİÓcóš/§y>/â;\²B‹-‘d^Ë+ĜĤÙD02¤ĉî  â™V‰DÔ ó3ĥRĵĵìeÒ¤ë6B§~Fżó³zĦb‘ıŜà
+šedú´ïÏ;œvċÏjRağ{%ç8êD[•²n· ]İ×İĜÎ`ځµ¨’
+oş‹é„–>;oJNV&"ĉV`:ê£0ßˆw3=iGf´BĥŻ.Ġ\³F}í̒'—ò=š=˘ÚŝQpĥ~°ƒ=Lö@¨-Ïş<<ó*³ ˜@*ûïìŝż—Jĝ§“{}Â8/1˘XoŜ§b‹y“Ĵ֒Ǩ6X‚4”âLħO'a
+L³ÖĤA˜ġñ™¨c³ŒvÄoPnŠĜ‰.œ…FG&½3uÓ<•Âq˘]meÜĉ3ßÎĦ‰ó²Ä†u“³BÇ£ì!ÌGzÌ~?zĤdXeë/M\òÜ(|sĤîxXaŭ£ÈcK!ÈüĥĞql#èٍ+ú°P)ZÇô´f ÷ĞĞMkİÚJİ˙V7"ĜOBûŽ!€ƒ_ğtšG¨š•$Ĉżı“ƒ@OÁĈÊÂ.ĉiœ+Ŭ…ñŞm“³ĤĊáùÓûߓ5]i'—ÊàҘñ‚·$lšÂ× ˆżdµ­³ yrÜ=ŻOïĜz˘²Ó†ub‘R+‘è&Ž0r`ƒŒÁá (2äv}1$͢ĉĈL 0¤C.ä^l×ÄAıÖ"$/Ç`yrm–(ëÈÇÙʎ…ÍŽ‚ }5|ÊĈ„ôkzbLÀğ"ż÷ğJsšîĞ “ÌİÄċSğáÜ 1Ç*µßı~éúúäĤB b
+VoÂŞ…bö;ħ ó‰÷yÔkúĜoŜKS,³=Ş@×@wò-ŭqjĊq˜÷ÌóĤ·è
+½i$ÄCBéŜT,B:HŬÜŞ`w·ZħB.TÇ·M½ ”pÍ$¸½BÔp+‚çèħ]ıB~'”3ÌŞÚÑI£’Y{ĦMP¤?íĝU·Â&‰šĦoİúBtġ7´}îŒ [9Ü#íîXˆWó i–R
+Öş Ĉ6gċ~x²–µ
+÷Û,K)üW2:_{DödíÀË*­Z‰ĝ–Áun÷ôi íÎc&˙"ÜogĥAùC
+Û|é‹ħD "ŠÛíÛË)`¨<Ù¸ÓEL $^u¤U²ñ×e¤ Tŭu˜ş=IĦ`t&û2•Ğ§Dĉ½Ëŝt‘'hö=pDûU ÎŻqö`–Ċ7kïñ‹×ëÁ‡ HG)?›’‹ ‰ġħè•ŭ\4\K›ßG-èG%‚—6Áġ‹†|Ot)ÊĴ=˘ì{ĈlˆÄi‹É!IE2ġgêĊ‰!áx$\˘ì䚅IdùÎui',ĵOc tˆÍksŻÙc‚ğW²BKĉ7İkç’1Ĉ%ż/"Mß<€šĊu?C]2à„˘8R ÁŻŽœŭRscCğ™, ïkƒ 9[í[SÎÉÁ'
+ù­(Ĥ£R›óÑ @š™.Á|5FaÈÏ`ż½
+KÒFZÀ˜G×.şpĜIîk–v½—ߋúçşŭı1:ĦR”oÎìħ2àI5ÌĥŠŸƒzüîá=W÷ħ8Ú§À1`áçù*¨Ò€ÔBT)‡4hĊwàŜ~…oK=sÈAYĠm³o|Şt2?­r>Ïŝ>49tôǞċQ7Ş*ĤıµÓO÷ŒlNàí.}SüóóD³n°‹œ?—Î!—UşïŸ6˙)–ÁüXÒÔ½²–~¤ŽŭqKEÒTÉ
+ÙïcûHk¤ŜXùѝÓ#ż6ĥŸĈ-ŜĴµĥ„—†ìL|— &ëüf˜á§dâ]î9ġè“"í·)>$R€˜T-¨LêDÈGvÈ%×\î|/iW-ĞĒJT+Í÷U“krUŬcç׃ Yg3VlÖbÀrµEaáL>ĵ¤ü€•'ƒ=˜NjIċ-Ò܍½ı#ç<&Ù!{‚rú6;t‚Ĉ&óÁ}Rw}y–iË2[$Rò‹ċd^Áƒà£N˔څ j´ëUD˘Ŭ6­µ°MÛJF|áĴԖÓik³´•0dRA›Ż…Ş ¸‘JamTħœŭE1L" £*wZ`ĜüwC‰ëpÍSñŝüœÊĉq < IóF⤆ì=÷üFbˆ4rÖï'3›ġ…É/öëşĞĉ†câ(6l|ñ—•(4WlŜñK2¤.‰ğ••ĞÌPC‹ıɌĤïF•ˆı
+N³5QDqŜ'XQA‡P8ÇT%íX€°˙X˘×Ïó•ÛKˆ&KßĠ}5,²w•P’ŜĤş–€â=ŒlĦî<-SĤ]TÇ!tƒħĉŞùеE6ŞÄĦ-ĉ8ŠÛú>ˆ‰ÛÜ*}Ħ8ïMô™_ĵ]ĥûñéÈLšB3ÉŜäZD½aQÚùׄ˙íEşƒ^>Ms²#rEküĵˆ¤ĵÎvˆÈ³Ö#Îb?&k`)ĊϖT7W.›0L‘żËÔò*+٠ˈkËYÇcĉ#~­˜•1‘‹0ZMtŝ€6ʅekşNi‹>Wˆ[ȅDOiż7ŬLŻŻ)]żœ-h½İb8;Ĝiääiĝĝ~Ĵ½Ĥ
++íXĝÀ$ld琯ÎíÀV”­îRpżuo uÈ?#+ħüŒœÖµ Ÿ˙9¨ñ˜"ġşeŬQ1ŽŭĜ´Ñ •$sĴNŝUKƒ5˜˙XE\Üşn 3nÚ7­ġ•¨­ìĠĠ)Ñ3îĊîDÇ죅CÒxħP,żÑ²¸™O–Ş,‹Iuġ–%’ħ-_:\ٙŭÂ:CĥċëzàÂİ*kqqGûĵŭ(ĞyàA*Á}îŝ°‰›rĈBĞf+‹E™ÑüïYħ„VAïż>W=„°0Š6Yu2ÑË>6ê ÏŞĜŽ
+";V·Û+5ŬCUl.CĜŬExŜDÑ֜‘àâÀÙqż†ï?n–VAĈhSӤδJXGÈx)Ԟĉż1ۇÒtX™ÚbŻ‡]dòğ—ö°7 ÚgİSòx0ÙzŜò#ùéSû?ÛNĦâÎ|Ÿƒ½J“³ü¸óž°½lC­!E"|Gìäi”Y —ÇñßâYLìqÎ!êq°Ò ]ÎŻù0ĴXÌĠüC@ħ6ñƒOrĥpòa{iH Éıóu3Y§Dm]çÄ­,ÉG­'á>K£öÇhż@
+è9TäÖK—Ż‘<·LÇ%”QLŬ+/íTá´ÔÏ[ï]żv$3ĵC`Ë …² Búž…ì}˙ŭsò[6ĥÖë”[d`&Aoͨû çAşÑc‡šoëLƒ/·úû[–ix{I9“FZ
+MÁÛ½Ÿ@rWïˆ
+8۟˘Üĥ,zè tï›ûŒ1ÚBdƒùzŝ˜t™:/UZ‚³(p>½ÏµĴ³Ë£Wȸ×ÈJN?Ŝšû*Ċ]&]ĉdŸxjŬËŭ6Epk‘×q˙Çj—wıžÍlĦôŭßU ŜÍÉıÇĈÙĵHŠ/˘u?uàÏùát{ßïÚH1XnqĈ#şF +aŽvùċ ³ûà^ŝĞùôïıiĦ*³ĦoŻYÈwôŜxĉ…X˜fŝ֙İI2ÂŝAR’ĥĵǝó6Ħ†§^ËÊċHf=|ı!cgŬ/¸ÁO%?ÈÂ'e0xġHr8Bœ ßÎîâħâXSĞAÖ#ĤÉ ë$žP‘”{êôÓKTB˜ÚvĦü[Ħ DıĜ>j taZİñ ír­ôœè²ĴŸ>tëç—}•TTFì] 6M9‚*ŭdG$l[ßçòoTŬE&‹ñMġ|…ôĊIÏ$,:›Èĥ­°‹#†àšŬ\YWó‡”I<Ğġ ŻÔƒÙ~`×TÓĉ(·-Ñ£ñÜU[hô:H²yş@ĜúĈv?:§üetŻ=.,ĝvŬ˘:Pê…5lèXç!lŬì gà[GÒzŭêDĊĝğü‹ëÓ t’BÏĈpˆƒ‡é‚×w˜ïl[i™‰ì.Í3Rî­òAF†Rˆ›ÁTxĥ(Ż 0ƒĉê&f߯‚_ }µ•§ÀB”:xŻZ²ì²¤·Ÿİ>Œ‹ž*›³ÚšĊW†ž7Ċ—C§èċÑGZ
+½ƒn/G,Ş’ÀbSüÒ£ĝ=o9ûע>(¤+ ñ;Žjˆĵ2á2Ħ”²gpÎ8ƒú’™mì9ÍĊ•ċêğŞö^­_eÜFmVò÷ŝùMïN%}D É¤Ê †')×ŭZrнž¨];8ù+³19KÓ£ñ“KYBëqvœ˜7½ÄpÍ5ĵz²5‡vİ{ßÛÇëí*—ÓqC‹Ñ\‹Ó&f’ jìĉèÑSi޳<dϗ¸ïZ
+F5ˆĤjZA•<Rıµŝƒ)\9Ñ ĊÄ`•Îġ„tяxé ş;¸úRšGÉ%2†òñiñ(Ώç‚ò\öŒwCQ*J1úO)WžŜúUŬSpc³ÔwrVûÌd8€fT?JO@êr’!v$r óıÙwÁÙ&TP]ŝ.@¨“N’X•hc0öY}˜CŞ–ÖK]èÉÊ_|Ĉ·›Üm›¨ÈÜ y…+ğAQó>Ȉ³{/xqĈÁĝQ“=Ÿ²1nRĊaזÀ Öqä]Ĉi^Q!bşì„4cĵÛáuĥÜI3˙×İۜ, â›yïzž9”Ò6iY†µ'¤QïM¤Ô]7ß4Ù óÊW…KŒ†›ŞU-²MJ•5ÊcÑĤfjÛçܞ܂ë ô²nhÑ'u4˙—e¨]>ßnĈòw×ëÂZS‹Ĉמ_qPƒc ċÛ_“ĉ8{+Ż¸˘²İŻ'`ñ!Vüêµ Ù^íĠi[Á‰EqE{ŝNĦSĠĤËNg”,6¨H×HĵáäKÈ3bp”ž²“~ŸŠ ›!Ôp˙Ġż„:ĴĴĥ1K.hêäèÖqt³Ċc°[#–Ú§x€ŞĴR K^.E˙XcÜN[RQ­qFGFP£o‹Fyà§şı6TV9ò†(ÀUegÊc€š3zìmÒöŝġnQ4öû(Ġ˙)™“'96Cµk¨²ƒG
+ Š9Ö³ô眲GjŒ˜zÀŭRínkäZËŽştĜÏGbĜŜÎNôbGİd.è‹7e@VĴӟ=ĤL•ĝnzÍtĝP—䵂?Ê0ÊŞğdô£%°€ÎsòĤ{úm<y(}£ñfš÷@ŻsÂo,y!ŞĉÑ·‡"Äcˆ¨ê£rŝ‹Ĵ„Çl?PŻîŞ\ ö{İ8;sàĞ‚°‡ ?ôêo~2g|$dH9°ĵ D;dĦ9ĥT”Ŭ äžğ)f?[€òĤ­ÌÂ]ú£p@-]’3˜Yĝ´‹_œÁ8ċ‡(*¨RÈ'nGÛġVñ+·TV½âëBĀŝ`i·`Éġ•äÁ÷úm·?í8bˆa3›DŽĝ(œĥ›'5žKó1F÷ÚŞR;Oyk™­œ£êÎq,…ôâŽî<k&ù]ÀŒÖÌ r‡$57Ÿé@ô+â‹Ġ…h¨Ġ:¤³EġgG¤•ÎĉŞ~²‹ŭŠ°?ŭnûÂX>ŬHú+Ĉuîùç&p}ì"=}³ a ߯w@üqµĞˆÖ̜‡xúAĥ.{:Èġk§@‰í‰ŝùVށ#ĤŽĥ§l1Ö·Ġ.f-ê†ÁˆÏoaÁGSŞ×GfuxtP‹XGsQƒKúµ³ïĵKè¨wâ¸iugĵDï‹WX f;‘v#C™”!ǖ‚hœ†ŻA7ĥ²6ô‰=¤½i|¨oûkħ+ƒbŻÛ#!—ŸÈĊ=ö’2×ŜKŸG]„‚L²I… Êĉr_îq~CNï¤Èö<žz Ż¤˜•[­”ÂKŞnR‹n;‰ÙR+bâ]‡ ѓ;8™_†ÛÔ*Ċ1 ç÷P’ìYŭnöĠb-C™İ’‡l;´_Q²=Ò ?#÷{ÉċĊŽ^¤˜ĉHĠ)OÜ%v+9Ÿ‹9š÷é~~pÓ<×'9ĉ¨Ÿô ç“~äc?°ÓşŸú˧XObşÓİ#Zñs8}P“
+ D`<HĜÒíŒ;DÒ4•şš·=D˜éŽÓnL?–Şêş7˙:ëÄm …,˙Ş{oò T‘ŽšîÁŸk'çğĜŒè q.…úĠqÙşÉ€ĦdíĤ†/ħŝô2ħ³ÌÚT<üÄì$§[™Š•ißߎìbÚ|~ċz6[¤_Šìµ]Çë KŸÚä ÓlzEıX ¤[{ßĉêOS÷éUfV}’gΘ`|ˆĜ‚ oċ%êÚsgµĥfİÍnİzçŽ\ġ€½öàşf=ċŸé÷/n_ŸXş…zÀ'MÌĞï²ĦÊġĥ…nÍAÏ= däœĦ§zĝËìĞżJFß&:F1ÓÑN“xG8ž “¤HK`GEnb\CêĠŽ„İE NڍĞVí+‘ıHÚHËUĈÊĥ†X²Ʉw+¸V½—È:î{ ó"v3+…Œ‹Vk_†v"•ÊâµÂs­üÎİ›B
+òµ³ÍAG·Ubw5҉<â*·°Z˘Lħ ŭMˆĥ!ïµuŜh­Ñëό%)(2sC¨°}—\ëĥżêAùÍğ'-v4ĵ]CnjŒ
+xvÍ·›“pêk“%cĉ0ġÏJîƒÜ> ·7ˆĤĜ7›R˙sĈĦ6ёù|x~g2½éSÖlû54ö·j–pĞ'¨pˆÛèuĉX ğV“'%N­Sß3ġŻ×Ġ­Ŭ°ZûâÄ]T?%ûċĵĠ#òÚ@e÷Ü% ³W‘Ê™Ä25ñSçdŝéŻ}7ñ#çg&ŭpfr‚’WĊ*ş³=³?·$ġ ĥtĵƒ‘tWΘÎÁŜ –ĜŭMqğó_Ț)Ĉ^uĤP˙BhPn6Ħa,ߏsĴì5_R™lĦġih‹§İ3ÖQ€ıS[İ›XPTÓżgÒU†áŬcx_zH×ĜĞD.ñ6ŝ˙‰EoFŬagŽ
+<~Ÿüċû}dŞċĜŜI„Qĥ„|h>~ĝÍ1öϚ@KnŻŽĜÉÏIƒ"É9ҝô;gìħîä"VŻĵgİ#}†öÒt‚äó… 4a”ÉÒ<x²}cëîzŜy‡P†Iê
+lÁ?tŝ6ETK‚·\ğ›$Ü0÷óäxġÌòï[‰cĠdw[B˜—½Ĉ·ÈÙuRè4ĤfYŬyŜo\\÷ĤžĴ€bQAè†n’—Óƒ‚úĜۃ/lÇ
+żóR+FC&om>?Ĵ…÷œl“_ı‚N>Vcow’%à9;Î"ÉĦiqx½ óÜ3fŻd‡ꔍÄ'ë• şóŞĞ:{/—ëÇéĤ&Ĥ¸•6a
+öé*8ԛö]Ù'%ÖM $^!ÄŒM…5â̳ZMÊŬĝâzĉ:‰OĈmPs˙q³a”OĤËBJWĠÉa DáQ„JÌÜŭ֙‰ßçÑèڝšĉÒ[>l_½P€D/ d"¸e£Pm?ĜóË‚âÄÈO7{ i
+endstream
+endobj
+932 0 obj
+<<
+/Type /FontDescriptor
+/FontName /TCTTPS+NimbusRomNo9L-Medi
+/Flags 4
+/FontBBox [-168 -341 1000 960]
+/Ascent 690
+/CapHeight 690
+/Descent -209
+/ItalicAngle 0
+/StemV 140
+/XHeight 461
+/CharSet (/A/B/C/D/E/F/G/I/J/L/M/N/O/R/S/T/U/V/W/X/a/b/c/colon/comma/d/e/eight/f/fi/five/fl/four/g/h/hyphen/i/k/l/m/n/nine/o/one/p/period/r/s/seven/six/t/three/two/u/v/w/x/y/zero)
+/FontFile 931 0 R
+>>
+endobj
+933 0 obj
+<<
+/Length1 1642
+/Length2 6212
+/Length3 0
+/Length 7026
+/Filter /FlateDecode
+>>
+stream
+xÚ­VgX“í’Ĥ—Ğ‘(½WA„›4A‘š
+‘’’p
+´#Ž€Öpúğ5” † „ZQˆ5q³† ~Cü@éEĦ0Ï@(
+h‹´„Ħ1w€†Ħ0kGï0vĝŸ‚H8Ĉ ƒaÈtá(4Ê E ˜ĴşJ*Ġ‰ĥ³D˙΍‚b` Ü †[ğüné†ĦÁ hK( DCÜżsYA€`(
+áhéŽÉ!C ĦÊpAAaĥ˙Ş€ˆ„ĜZ"ÁŽ
+Cƒáŝ};˙êĝ_ş·D Ŭ˙D˙xŭ³(q´ˆˆbrZ£1ımĦ0€ïyQ‡ÙÀ"ÂÙÁ.ˆ`äŸ âŝ=3<˜",Áp˜£; ħiј”@î˙›Ê‚˙>‘˙ ˙[ŝ·Èû˙÷ïŭ——ĝ˙û>˙ZĊĊÑQÛÒ 3
+ƒ`ŝs·˜ aáżavPkĜo%î˙A`àż7€ÑìOùBj*
+5@|˙ËĤŭĴ‹™´;üÏLFáà~S)(ÀŬ€ž˘˜RÄDĊRR@) qï˙!둝[˘‘P7àsaAaa ĉûŸ^üFf ˙Ħ'hK3u˙4ü†­]HŒĜĤñœ˙Ì?âħÌL­Ù§NCWŜÊîPzŝé£nw0˘¨ÚàMžß;x›ojèwİ2‹ËŠ`Áš/Ò× î›ˆĞe Ŝ•Ïéıڒ!;ı·½ÙxÚó¨ĉ9›$ùV„ÌŠÈÒĥŒ"=wǵá™H?]YÓ7+ĵ$`ùÒ$†$Ú=áñcsÍó£e?FûX§TĊ5SÖ`QWĉonq&ĴŸsuöötwµí·/3óeĊs<´ĵċ“´y7ínüUm}î*‰<9ùú7!g³nŸ ‰%òŸtċT³ž
+ƒäB=×_–N–ÒúÈ]I
+‚ƒéä>xóÇh8™Dğêӛ6ŽË†Ôñ+xsO×ċB
+ӁĴï§wê²,cŠyÇGÂĜ×ôŒÌcR
+ÛıÒ)éUòaĥÀ¤ŝôšDĉÛú0¤Ĝ†ô<ÄÓ|)ÊS
+‹ZÇÍG³Ïİwî:áħ[xĊ– ~“ğMŸĝ‡Ŭ‰˜‘·™›Tî-Ö?(?R_-xĝ+ґ…ŬèµÍ":€ÊÚ
+—wIbfp:.İÔ9€ĥú
+ÉÀŞL
+Ž"Q
+o|Á…Ë{§êiOC•r)˜ë‡àžPİ@Ò@ÙğÊ×ݳ ŒÌH“räı™+GoŜËYFBO@>÷†%ÜÉ@„Ş™îHjĦŭh+6ÓЈÏĥOJÂJIžj??ÍícŬZžJŞë%`ĈŻŒĵÉäÔĠĵ͑IIùöéÌÈ<)œĠ2‰Ö]:°~°{uOİ;Y-G”ĴC[DÔKˆdfıE _“ -ö³]bڏĵœı IÒ7!V€òÙĦ M5Ŝ| Ċ˜ĝA½šĈ/ûÎO•Gߞĉ[1ĉ¸û$âO‹)EjHÊèŸ ĦVáĤC ŻxîjÙŬìöġĤls…Ëq”ùßĝс1Ô§–}rĠԈs+™-Îĵ |kô×B £ô½.(AöIO)9ğÎ&üíCoği5[Zâ#ıIzj{t²·­;q“ğ·áŝ™F.#Ï
+Aq*ÛO‡7–iïƒĠİ’›tŬğAUĉ´ '´)$ĉï!]Œŭ°“•R‡ĞÜ7·÷Ñ{9Ç%3+½GQ—”V6Óċ„Ùxı×B&f9%;ècĥnŜÇ>ĜuG%É\¸Èс]üĠ;pf0 Œ]ÒÈ ”éž[~!¨–Ú4c'œK}ġ$a›_h³ÜáíŞäU„Ħ;ÑëQìßÊ85GŽ: ךöûOC‰˘Ç<ΔĈ8ÎúR4cSÔ3lˆ0¨íW‚_ñı„UħKâSŜöún:ŞBñù´‘ħĤ4Üğ];xŝŒşİáÖ×ÈÎßUG tîOż}_pkú|ùAûVñmĵ§m8)M3Ĵîcc
+‰şy·³r@ҙYò´·}H £]ÜôJ•Rž–eŜ£œŒ0-ÈN—Ó KàK ĝ<'ÌkÙyGlċŽ%näAïŬ¨ÀEEˆÖàŬğ/ÌRnö=íô°×ĉàžP¨(É°ŸŠ~­L"œÂĈŻg§Wyí„˙’x~iMŝ3iïǵDŠó”ƒĈw>“••Ċ­‘~|ÎÙĜĠ!ZĊϨŜ½›ˆr×6UÌ%êÙĊ
+ħĉĦ ìc*Ž˜^Î0lfĥë&qY:Ä&m7ó獴u–êĈS²™bRû땧%RPìY½œ<¤:ĴÉéĈòé‡ogZ÷Ä ü÷··‚Ù.ˆ.ÊŬeŠ†§VÄxÁV­„ĝúĝÈ/Í SŞŠış(’äJĉöü)Ĝ:€#ĉ\Š,˙\I·âë
+VN/Ŝ“=…zĤÖfĈÑ7›×Î%.K†`\‹µkO°‡ŒÏÖĤëëzBóĤŞrónç^q˘ĠÉZ—ı.)!„ ĉğĊR)¸Í4÷Fş‚ñş%ɞ:$wfR÷Žï]Ż£X$Cİ ĤĦí/iüǽWÛKŭ²”k=,ä3žN(HʊWrŬ9™{³a(`wxԘIIĝşnüô€žÊʎ×9­[•²Lğ¸‡NMäŝùDC2ÎVĦÊïĉ™ÌPßKú—™2,Ÿş…sôEÍÄϽÛċÓìnı82
+m|*ĠGŽëċÍ˙E:zĦŭËs‡\'ƒQfaZÒuéäFtd5]$ݨ–£+ġYGM[)•‡Ì£ÁyqDg’Aêµ8èŜ
+Ġʅ\dËqa,ġP|fv‘ëËĉC,$f£RçRô‰ÜóÖ.²£ĝEĞDÇù'BZÈëĊġS"³1PzcYy‡ŽĤSs›Ú‘VbRÓħÊK×É!l
+µTOɛÄ9ż í/Últ6 |ĵĴòÁ9´*<exašÖ-şğ\Ù[[ĤĴ×@íh/‘–·ÛŭRzñÚ+˜:ĞeSíӌĤüĞo{X‘Ü-üKê@£ü˘İɤš˘Cm·ŒkIżùŸuÚäÉÙ鄊û^—Ç„ 9Û+Wߢ]=ħql2äÊïŠĞÄ{<IŒßQ”OŸil …ĴĠƒ)Œk?zó÷9’Ĵġ$휺rߤXñ`x|ĠĥÛfnéc•Ŭ:áá‰Ó“ä+[“Ĉ€>7΋ÑîĦ›Ż3ˍ<mĜĝD⇇“˘+ŽVۄóżB[Ä­ŝt÷¸îKeˆĠ˙ ËĞÌÂĉşġVĤy%;ış¤ìNşy×Ċ?„gC'xıùúBgSvD^^ŝÁ<v½çÉ{~çħ
+Ŝ/]ք!—ħ<h ÈĠŽš•“=ÁĴ óÇ#>äu™R|AC šğ¸¨ZTŸ²˜|ïj[€m™+§ VïÛżĊ‰ût
+g|41șj1ŜàĦڞ¸$KP$$éˆo?~¨ŝjë†÷°¤;‡wQĥ!:”+ˆ5{m\ŻĊxLŜ<K°4'‹Ü}S*s+³í Ħ$‘éÁ[ICך£Rš,9DK)şÑŒŻŒ3l×<@|ĦŜ,o&ŒU
+@aÌ­ċŝ‘FRó"ñSÊÙêŝšÙr^‰[şˆÒòKgj†_ž™Ä2ĜŸŻ/1vÛÒiħ÷‡şĈ˜Z˘äŒË Ü"á/zÀá*›ı>îyĠÁZJÛÛŻV 2фS¨ –â,şkÛ _/ĜzġAœ%‘~ßüŜ”~ÚŻ´GsÉé Œµï¸ì²ÉŝòË\Èy:…?Üŝ˙g/>—ƒ×땖K%Ġ·NLtC,L’)CëĉµÏŸ%XYŸS•ä¨{ĊlDŜŠß;ó"&Ñs,¸ĝ Bt:R5d#fwË3}ïL<îĝk}Ôğ$ΎÔ'”̉–żÚCx•ĊħT½^ĵö%ĝ"Tà„ïÚ 0töÂ"° UŻÉ˜ħµÄİlXâUUúÙĈ“YCT_YiĊJ?èpg”P½Á<_2.ıô•ñvOë­‰ütûèŠÄë›GaSNcĞV•³äç›áòE³
+W™Ï
+"Ów€$/sŞ"ĴwĴï$`÷ĊyË fs(ħٝi/ë§e!Ġ Z äԎ…âs0ÂÎt-Ġ ·ëÜKpĊppf8ôî6ìÊĈ‡ž4­Ğ—”Q÷‹Í)/s­ ~~B^zvÚá-2°úİO.)Y‚ıµ”@b~bŬY$ÎHÌÚÀ†êa•ëYuH,5hĴÖW‘ MrN/_Ċ·ĝr¨TŬ ,T
+°ž÷ŭÒġĝÁ5ۘè“ásìBuó™|*šŠÖxt­xܤVYAÖÙĜ}ċEŞçxÊ[$œë…r½]lijóğPĴeӒ<. 1QŬD°z@ŠsUn„o,Çk‡è5ë¸eœĈ Ħ6,}'Àzù, ÇViéöËĞGğstĞĴêöɤtišù6U™TÒA? í·šo]˄Ñѝ8Ô]FEu_~Omטg7É2Iùö+óò…׳—Ċŝ6a
+C+Öğ)òµWÌÖfQ{:ôyRħĠvêĝN%×ŜĠĈîE-ĠÏĊ
+câëzùûßF*†Nèî~Ùä™ïħ‡&gÎ Eı^¨Ż,~Ü9q5_öÚ/-^K[é!@—ÎVŻİ/lâSM{ß!áXSŠ>Í&ĊŻíL~R„lU+'óċvkZÏ(CŜ.ġ9ז5ĝûiĝĜĈ=Â~_,ĝĥA_ġ„”ĥqMèh½G׋"biÑ=JT´ l!°ĊŜˆ‘ú_“J;BğïĦô“ä˜I8
+ Êàôr[ıĊ×ħħŻŬSgĞäSé;¤IĦ`ÚM~Iar
+6{¤b(‘C…vá„ĥcwµ9ÏÏXġ +꧁•:Ôĵօڂ`W˜Ñ›·AdĠ&ó’&:y!œ£FRy™_'y¸{‘İÙ_(‰PœÓ –Û0ħçˆPê<Ĝrĵĉ.yĈÎU ԧ߂Ç8‡Ŝ4˙x&mċÌà&€$4œO(
+DğôsT[ĉ£ Ĉd[ú½Ĥ4bO²ìc<*ĝ‡EĈ¤E()ġß\ßElé*aÑvŝ½QĊ
+endstream
+endobj
+934 0 obj
+<<
+/Type /FontDescriptor
+/FontName /HFBMJA+NimbusRomNo9L-MediItal
+/Flags 4
+/FontBBox [-200 -324 996 964]
+/Ascent 688
+/CapHeight 688
+/Descent -209
+/ItalicAngle -15
+/StemV 120
+/XHeight 462
+/CharSet (/F/colon/e/five/g/i/one/r/u)
+/FontFile 933 0 R
+>>
+endobj
+935 0 obj
+<<
+/Length1 1630
+/Length2 19491
+/Length3 0
+/Length 20334
+/Filter /FlateDecode
+>>
+stream
+xÚĴĥctĤ]·%›ûŽm§bÛĥmÛĥmÛvR›ÛĥñĠó}úô8_÷ŸîóÚ sa½Ĉ&%”W˘0ĥ34µ³uĤe¤càÈZĜş8)ÚÙÈÚqJÓ*š˜ı
+ɗŜۃ\ç&uµOÊü††,iÓLÀ-‘Gzï}Ÿ˘ÛÖ§Ġӛ.ÂżÀ§?s<Ĝ,Uş ċÑ4Ĵ!Ŝ{ T.Í+›ï˒˘yŝ‰°hX7ÔÜL£u˘½S…“Ŭ)˜šĠÉĥ—ü/ t͂GĉʧR:êi…°;T˙Cr ĝQŜŒÁúT²Vş³K3
+SË´ñ RÄ$Îpe×OúcjRèDĠ$ıÊm#ż>ŠŒÔ~ÚÛĠ5k)>?Żxżé3ĜżĊ+CcDÛ)~cĈ"{=5ŜĵĜjÔ¨O- EyŠ·GĦE§Â=ÏĠ]ÙjëI:[aÂÎDšT-ú§”7u_˜1q•úŸxc‰tŽp Ğ ’M@hı^ˆ{ƒ“*ғĞ{=*cĦ<³
+$†~k+R% ] ²Ü:“V°m”hó×÷ââ…½˘/ûĠĦ3…“×Q@stĜPÈkġ¤ğöék>iâ÷Ĵ‡…= ĝâħ‘áĉ(hùNÙìž.^PsŬâŠZèÀ^´’xŻĴaĜ{WӇ·úMĈ\?îûÔTÓ^áÎĞO™M­ÛAbpż v?qŬ.ßÜyöğ#šU
+Ĝµ†’qlä!ѐŸW˘YP?úq>“üË//NÇù/0ÒÉۊ°ċËAÊ´Ŝ{W ;Ş}ùŬ—hw”#s+°QŽlš’É"eżáZDWìŜmT=ŻÍ~ü°šaóRîvĠŝÁ€ĤúhCÔ·žñ#œîÏÄgá-ô5˘ëۍĞÂ&M4ġĉD¤^q:ìšqèQ™6í2iGöĜŻ>>ès{2q\ĵ̲Z–[Ÿ~gZîsLî¤Y3Ŝíġ˘nQ4¤f!o#&Jî‹ŽmPéY))8=GèġŞ­ç4µ`˜Jf&'çÈğşU(-YÖ N-Ğ×òÈıW7gċE2Ñ#İM"˜k °”ˆ¸*(ŒEÂS4Än—$ÌüSğ߁Ÿ-–Avİ
+:aÓ~dà3I„×h%ġĦÛÏbÛ×zĞÜ?FġúsÌ­°ĉ*L5ât ÂшAÇOnj?r–À:żò¸ŽVTİ}T[tú#ó‚ÖÔaĊ-JMú x=êÂĊÁ£H×ß/½œÖŠ—@Ĵ|FŠ¸ŭ—ĊâpÏ|ù×6[Ò1t°aM­SûnnTRMo-Â`™k³w Ù]$I&Q ĵN¨=ŭ/ċwÂé §Œ6Òa˙4û½ì|ob@Oé߀)•†Q†ú8%¤ĴaĴ[ìo€pş_‚|‚ôXÙ/-—6 cÎêBXŭ@Î|ÎġŽñì¤ç²‹œáó‰ârDâYÁ‡D3›Tğ.·êŬ‚˜PĴŒŽJ…Ş?–€"ĵ*o"‰ĊÚ8EáO½aêUlgê—Şì]†"ùÓwÑĜÓb;ìĝ8P`ú¨µĊ wR{;˙à;˜ô6ĊÑçz&ע”eJ™ VuIa(jaC(lı[-´„àıZŜt0_ÚKĥtK-V'˘ÖŜ2È#†feE‹­cˆ— PáĦ‘Ù,Ößf^ĉˆ¸py1ż†Ğџ½A)‚Ûşuj˙!­0Â@Öĥb‡TkÓ8 ùVĤ˙EİKŽvpy÷ÎûRYXĊŬĞœ³úI2 5€d‡°ûİ„İĝħ{Œ?Äîc$˙Öŝêĵß-Ÿ,Ħ+YJċÚµŻä™¸Ċn@/W~ĞeĜĊ=Êó|i?è8ävW“Ŭĝáş)­|;ž-‹:ÑC "ßk-<ŭÚiĉ„RĜRy“ekEîX=÷5
+1-İk ÂOƒAqÓڕ/}Á~B?6-1s:LÌĊiX c‚ùí- Ž ”&X@P<ŜÏHi32“¤•\Ş­Ó gL´Ó
+ş’Ĉ\£ħɎ•*oÑÒjó0Ä:*•âÎ#Ħ<‹·,Ô/W'Öv*ozюġÒ,ĠڋÚq·=q–1Ä5M’…´h.„m½#Áš· ²éUb?.'EË9’ž|z÷dŜA³éƒœEïÒżġtNb˙³ÒÂ+mï·ÇÖġb5
+ŞĦ…äĉ×tÂKÒ7Pv[Gmµ˘!56:IS6<j’Ô…\ÀoÉ{crÖ?†hˆó."A|úLrNŒ!aB<ë)FˆħŜ*ĥ’u†ÓLŞ´şbĠĜQŻ)c:­\b”ĵЁêÒÄnhƒÁ9|´ÄvÑĦ"NäzQ‹™5b”™JÁşmï7ñ­Aö%.Ôuŝ˘€ŬDĝ}xÔ(ŭ
+#ĝU`FƒÊ§ê³şÌ9fêĈJo„ûÛŝ­ŠÛŸâ~Ĵştœ‹_o=è½O'ÁaĈ;bù(!‰zO@ûc\Sp ·²Żušäş(ğôÙĊœŻh‚ŠŞ#:”ò·§(ávĉjàĵ°ÑzáĦ}.Ì.R´kÎtäÎ!UŠyî=N ŝCŽIRĜG˘wŜÂFç’ ²aıYĠ=²¤g’še÷Fáħ4˘š$²ŬÏ|ĤpuuöĴŝ_ĴiĴMŭŞ…3œŻ­É·£:÷¤F@—,ápäìÈ#
+ċyîùğ_ï8ê˜ÔJJUe÷-p‚sεdx½t#;"…€á·¨ê<8{T7×ĥV{ĥ+d3ÈUĝrNş+ ‘n˜‚½w.0<ÎëĠìЇŭ
+Ĉž­ò9W7ïiµY?Y3Şê7noZ›#Ô=ž|˘ëVÒ÷f`¨ -+lHŠ7eġZP¤6ĵjw„ùóD"Ê>ùŭ`bïġżŠ
+tÈĊMŒFüp8Ô$‹_ĜġHċ ÇU†ŞÔÜü•Úàù ‘òı}oxĤ‰ÀÁ˜§Ĉ[½pĞ7~zş{ñ;ng˜Ğŭı}Ÿ’ ħD¨‘/G.ɏqd“ĞCĴU
+t‰HŜl6Kn%ÌÒ-¨ÏÓ½ŽîŭŞ#ëŜ
+–—cѕJP
+Èë!X–Q6â„Ÿ ]’3GÉ0T‘¸ƒµ„½ÔNş¨K’Ö+‡ĝÇt:ĥ\}Ĉ§“–‚òÁşċÏŬÀz½orvoäÉÈüçĤ_ôrġÑzžUüŒ
+hYNçÖŒÑ6Ĝ—xòĥ£‰Ó·{ ÜV!=í;âG™l
+GLZ‰İAğîEÂE™’ÙÈt8ħŠ=cQRĈ¸ŒG Œ6]ċŞÛ›Ÿ3›—ŸÔŻ{˘q%TW)I/çÀ+ċOúĊ½‹?X€ÛŝuÙJÚñaĴvµ†€%§ĞÚaiĤ<àŞKî”.nÖ¨iÁş˜psùɝĠV;=deçR(³,1ŜÇ @ZnjŭŬ‹ËÙĥĥ—6•ğX’w\p‚kÙRÜ_@:3HŻuħÑ´›˜ĥ(bîì_u*7€ ~˘‡!Ç ŠġdìU·BI"y×M EÒ
+JĠ#ÏìcR%ùÎÙw"ßÏT›‚úͽ‹Ÿ²ó‡Äˆ€ĵ<X™Ž?êóXu ğ>ĝPŜۂĝ¨¸
+r>ÈŜúžöš°Sm`e²¸LŽ]”éœĵ>GĦħYéÀŻ˜:|ŻìòĞ­ż@l`%mUÜC&‘İ0˜e}7ŞJwy£}ë~fN›uì&JŜıS„ŝ,+&ׁ)ÉÏ
+{;˜o™ġ}yŜò½Y‰ĉŞ –Mmì@Ĉ(Z‰HÎfò GÉ`s>8Ş1úĞÙÒ-Ìğ’Nöbo` ‰ n¤ Xü=>1lc™ÔşF%ìÌUċUL\ó~Ì1r”²ÔġD+*Û[Z`N"˜^ °bÜĜ÷~€ÄÚŬŻfE0{~HoĴ4@+’e“›b3œßĴ°5ĥB@9ı‰ ÷ıs|`ŭš…ì—†f%l²À˜MÈÒlTêżl8"£)_YÑJ4Šħ´>`%ĵ\–,iièîêğ˘³­ •î{ġŭ͛Д,ë֛gż#Lßħŝ>²ğħ#Ŭ(u`tßßûü0?ù² ĞŭùF)3Ŭ^ʇö’n—‹ !gÀÏo(ú“×àSKşSiHdDħÍ/³ulĈŽsr:;X%rġğ‡…hÖäarÔÜéùÖì~ù+ùk^
+|›…%i"êyP Nsù,JJü“\şq˘kNÜf€q•ën„vLhó#xÌĝÚ6Ža€÷(_s²üLĞö m5>žbï
+MJÄÈ2#>ûŞĦ@’L^D›z85ĥŭ"Ìó­"mħ~\úË)í½8
+ż8°–B1>…A=aŜ…0·|½–§$ĴH’#H„ñöŝŝì, ]|Ġ†Áù^óï(p€và_zÛtğ§ĈJ̎2R.áMprçÇċĝ­–×ĦÄ.Èħ œ]‘A€Íh‹p2Iŝó4âK’fjÊó3ĈfCcx§£Ŝ¨lH|(Ä
+ç“/…@˜I@Ż(Ôú½ƒ“ç­{ ĝH޵$Ŭ÷eF¨l&³ĜerœÖ[ ƒdöóüÚ÷‚{ĦÈRj8ShvkvĝhúIšÜ`J™—ŬÜŬîÄgĴÙ¸“>S@ÌCùĵ<?ÚXĴïh×ĉˆ!Gç˘-JVŒŽïʉàġûÂÜĈé1 ˙ÓÌF'ĜéM,ŒüYpïG&Q҇@ÉïXܛbĊ“ë)•şî“³·{ò
+VT(Éߊ‰Wİ"­ëĈžxC´Z
+a&+Ù×ßvïá.
+ Ĥ"8>ôûUóôeŸµ>µ%ÖBĦ0ĥ ŜF‚.šeù"-Ù!+ĈGĈ/~ïV€ġ"zGͤ·àĥçÓÓÍE­ÄÑ ô ı|
+ŻhÚoOh7U„¨FìÖz²°ŜĤ)ZBâ#İGr„7?˘S[]ëËċ˙G)HŸħż›TÒ5½ĠĵıΉYÁ"Èz6?BĈ‚@‹ĈqOhñmï×Cûê./vÊ] !ґl7 š-r~sÌüVy×ÔZĦ”u/lz%òÉ]¸Ï/‰ fë`{H;lj
+°"4ÖZ—ŒŸ“ròêM9;żŻÂ\}‚óS½#h˙é=ŭ–¸›žIߤ
+fœÓúT@ƒÜÒx„ ·g§:Sb‡xÇ Ú•yShM<ß\LĴĠĊİéK­Ħ5XŭŒ|ş`ĉKĥññ—Ĉ<]WG wĊ8;o›Ö.‹ġ {ĝĦÚ´MôĞ×9­Ri”ŝ´ġup²ñî ĠşċT”†rf³„†–S}y['ĤE×Ïċĝ ܨnœ‡’:ŝáÏŬ(â$ğ¸ÇżÜŬ×Cfü¤­Âİ×Y{;<èMŠ™ĥNħ';‚m8ÛÈ ñ­(}“Ş 5†Z³ğw•3 h3‘^ŭ&Îô,YlĠאZŝ``ë")òF3$ )i÷Û+Ö1ŝQ—Y¸OùLûƒ™´#hĵF‘ÒLÚ:Z÷q\̞›ı-Ï£ĈĵnŸ„ĉ*{ÉáĴcʃÑ=n`a’„ŠS?C AFŭŽvçTŞwiĴ!Ù üÈd÷hKr&œt@’{êSÇĥŭ[ÇòU‰ĠùYï…È\R 02Üì´'oM*ê Ĉ¤=^ʆ0u÷XŠğ˘ĉÎGy[<İŸ•ö$ëĵa½H;4È żslÀŻô·jX|‘x <~šḮDŠvQwĠŒoşRħk¨ĉŞòP<ċÚ Ĵ?LŻsÔŬË|QP{tó0D˘vUPĞSĥ…eYĊAt£‰`lÌĴĴŒè¸ìU H9CŝL}ĊkÜpÁéD
+ĴdÔş.ĥ]2)È£DZZž”Sİ ç’L0Áĥ'ĴXÙ4 UˆS˘XMò *>ĤM”Èù½Ŝdħ\V²î_P…Ĥ¤(JHE&pvĦ‹
+9+mr…5E,(kùĦ.Áû1ÎİddNNù£…U°^ŠëA;?oġFXü’uÔÍPzV>׉#(œ‡¨tp
+&BF¸š²xÔOİ1´ıv1&ÎÏÒì
+‡GC×<9÷)Vû &Ŝċğ Ñ)_˙K†Ù(5èh¸¤·3+ÇçSırµW´tĊŸŞÒ˘ĠŬĤ†l³m´f µ†0÷ á·L?ğşĤğ³ÏÄâÓs—xPù N] B…ƒ—¸FÌIâħĥġ¸pöQö‘ħ›=拓òŽ ‚f)…ƒ~Äç/*Ì5;‡Ş ­Ûü,:–òŒ`ÑÄİî@ò §nÏçLûƒgĦS°Oéێ™ş&ĠD½ÈùëŒ&dĊµWÙmvLyÇá…UĉÉ}ŽÌ
+ԕ+1L{3sŽóßEèì5ŠÒË:Â`³L,"êçÄwƒyXeß!B~èˆıéÓ;ÑNµá7ĥ—û|fF(˘6ŭîà~¤~Éq~iżŞu—}
+°LéŠ6†ŽëKuÖíbgó^ç?ßĦQâ_ɢHsŒr9ĉ–Á}•úöeyĜ‡‚ˆÈù"
+](cDGZšĝE°Ö ÚQBHèCš´/ş›%Âĝ3§ë'šgÉĞ^,ŭv~K‡Qŝï™ñüĈŸ` â'Gbi˘; G:YŠĠ¨#Úy³Q8“v7r){uxëi,V4ü8rO,kÀ! &0)4X˘ag?2²:ëA< ċ :UE@ż› _ÄĠSħpN]Žh‚ĵĦWQî5;:ž’p^
+²y²Ò%˅oa0”( ³ż@TC‹ÔĈM™¸öŠŻĴo·Âèà—Ÿ˙'e™žàl´pÊ J ]íddĵo¤ú^½§Ïv‡£²—íÎf.ĠşAÌ ²$S„y^MóĴhaÌֆçû÷飙MRí­‘e0’wEĤÓ b_Ë˙ğ…E z'˜C XĵDJŽMh^„3 £ĊĴR‰•ıĵŜ69.Ŝǀayş^AŽ’›żħ͝Ħ=òÄÑ@ıW‰oѨÛĊó}Ŝ—q)Ì%NJ™ğ„3äÖRÓŜq¨Rn˜ÉVǁ¨žÙw(
+ALÓïÇ;•ĵ8i”°¨c=ë`]ì²jǙ7kŸ5`XF”"*dä˘ôÊ(y+zdL;˙nv€”£ c3µÑ¸÷CFİp Éf+ŽÜ”şĊçŻ²Ëg÷ĵP3
+6È$mD6ožÁ™÷J ×û´GQ3O ÍAj…YâÍt@0#ïëL³§|›;”&KœÎ,D–9e˜½zV_HÑğlF&îÜ3%Ħkz‘ñ_İÄ2aÔ#ŝ2ù˜a*Žu×ÒdsÌeÍhş.ƒwq‰faÄ%ÂB à´]î¨Vñzâ
+röU°×°$¨žCêîğ²Ôèhrċ*ŽJ{éwĤô@ Ŭ?zbI‘5ˆIö?Ë°ĠJCžÑÏtğòEhÍqċ¤ž@ĦöžR7Ó%uŻ˜²Ċ½ò;›‘!?Oċ<ŝ6+iGj5QÈġE•ßí˜%Ï#=żä#6“ħRı PŞ­Ò:qkDċÌ.@ÏÚC’ğ†Ĥ˘…üŝáà–u³]‰˘%Kéŭ@ûQ}‡3û (! N¸„ƒİ·ħCŭ%F>S␠O}-üXϋÒjĤ‡$.Ú.~žYîéOó TDï,ż\ŜİŭÁüéjĤ>Cıf½Žè꟭‰2xXJĵšš+;_" P^ه'0ìâ]š˜H‡Êĉ0L@´,żĠ-ù3Mu°~[§ûwŠ‡!k%ÏpdĈòûZ Bq÷B<Ÿq°:DÔĞaİKç3­ïµÙĜ^3œ&Ĥ‰¸1à .´H,Dš ĝEjvµñS%œË÷İ·ˆyWŞ}-hݧ:•ş˘·˘ n[ı÷"È?қúLZÛoĞL•+Srj`Èk}ŸnÌàÒ%Úr"D,‡ŜŝTċߪĝl]f°>28íÌ9 Ş£ùĤS•÷İO-ôC8(fò&ıg £šQ²;PMŻÔÎŞ ›eʁVĴžÑÀĴgƒ’ü‘ÜĤ‰ TboúL+8šFo&ü²OòĜ*m#ŭ^{<h˙™ŠBÙ`­FoŝƒQžĵG›+—orµÖÏ›†£sb`˘‰žÜ›Ŭ¤÷nvĵO­â­ûf6ONE—%ŞJˆÔc²ìŝG:—‡žY (#UFA<—#zÑ4/}r5o\š7BÎïĊ„lµ0†'üé
+{~y`í¤ö²×ÏÎÔ+ĉuÔ˘ÇÄQœËëAcŝh›†JÊPŻ™¨Ġ?]\öѐ7ĵ·Ĵˆ]ĉıvìšjİ֍ŻĤ I[s;•ċĞ{£\â-Ĉ¨,‡›ĥ85Bï!“θó×Û¤§Ċ˘`M£rĵ‹KÑî—Oƒ&pżß÷.Ċ·e„ħ‚ù_zW—œqcùê€ĈLĥŽ!ò\Ş{Ĥ>˘ĵĉG•P‡ñP µÎöǖ‘˜w|9]@Y$[½ĞWy'ükÔ<¨K“W["'Q˜Mħ£X%3"HĴŝáÜVA×F.ÑöÄóCa˙Sö]lĵÀ )Š½˘q6zÂS“y
+@<Èx¨…@FégĜh*™•s„S֝ĥŬçˆgL£İáôWQŸÖ£ĈâŜ–#ˇGÖ#™żX½Ĝ6ßf^GÀ@‰çĞg Á"eĥŽ½L‘Ê•$&FŜŽ‹T ÒÈ?gĠo:Ñ Ŭġô­Wm5Hït'òğ0_zÍê1Ĉ…ıIÌÁùZšǞ_UËǧnÀ}@W~‡4ÌZ „6ĜÎ×ÙLşżw·Miñ`Cï²Ìçú$žŬ
+ÒH 'MÂ%Ú.n^Ÿ0^כTD·Ä‰[ò$X£‹ç=[”‚äï£Kuœ€Kiş5Ŝiûx‹£]’Ê&weÌÖQ$žÂÀP’ônVYëd”Zr”vPHôÖŻÚ)eĵRšÂtŽ-ÊÎp²môÏ_fŞe$,XA’cg=êí”lúƒ7UjNïpš}g;˘
+…’ÈïċڝžË>rÒ·‘ ğ–r§ğÀÄ[íJİä4gl%u]AĴL ™PÀŠħ(.ŞAž6‘ğ'(뉖OŬHHN‰áî֕…µGÚàÖsX—˙ĤÛ#ÊŒĠkŒ­˜+ 6hëŞî€c”•.JĈúSq·˜c~6˙"ŸmÉn´*Ĉä+Qçßà Ġ|iğŝ†+¤[Ŝ'?0a‹òµïïh—;Uġöwrï
+F§/ükùgcä|­YżñzÊD#Ÿ7¨ĥuĵ :zš î•âUżOŸYuêîĊBF)ŝ~ĊbB2Ÿ–f ċŒx§·ˆ‚†…‚ï]h”³óFaTœDˆ.{JN‰*:Fœ?Žĵ˘~™&bdĦ'²µ˙ ;żo#jU|–{³_ÀÇĴÎs矄ÏËu½míD Ím+1$ +ž”ßM‘ŻĦ!µáŽhòÌùfX ˙u”ž½`eÄĈ ĜŜakżÙĵĜ î³âïp̂aÚċFWñ- —V&ĞkMFUç+“—Q‹.ƒŻ1†¸OSŠ8_QI…ñ?Œ´×ÌèFCµ­7R§—bÁx²Ċjìe)ŠZÑh¸ÍÚ糟˜Ħ_Ñ?Ä)¤+hâCÉċ,áĤÇßl‚DîXĠ*AGä6çĵÀls5?+† Fä˙˜‘(ƒK_£û}í-äĤn_@&ö‡üw5Y"{¸›i$À­ßCA˙ù'VPBäĞï°ĉ$¨=]¸˘!ËàŞ™÷\ìsÀ’İ–Òñ-ğх2 k U2­9JÔp1/š
+”­(N÷şoÛ{†Ü3ωŒ u5Í^‹j˜ïĤ'bXŒ%wï|—éÊ d[ıdxŒÚaŜ3‡nŜµyî™òÂMèÓ*áÍxDUï!2‚ ‘FùÄÇê”5$B簞:ŽíB2ĵ-˜Ô¨WvÜ14^)Żr€M‘;Ż…kî ŸÏŻğßLôü'xîJ¸UYÚ<ö¤ċĝfiuĴ/1ĕM˙äÓ) oóOΨ*.Ԓ]íq-7}T7ÚĠKÜŜÉÑ ŝ%˙"›Ċ?ƒĥ–żŭ£
+A£êGLQüD­ë•~9΍r"’î`=>Y4JĊEžyš
+¸án0I,Ğ£„iÄî0%ŭádŜ[
+òb>qRB˘uܞӢôˆÓT×Äz?^EĞV˘·y+ĴfÇ-ï(žwµe
+q‚˜ŠŻ5dšOâ)f İV½%-ƒ·ÉNO>ŻŸÜ‘bĜ
+½JPÛZÀÊ×9Ìëßí§]^X Wĵ\jŒ‰ÙJ/ÁÚŝ\ȋI
+Êí`’9ïZ£ 콉Ĝğ½£\˙W†bk4yÙ:²qeéİ6p†Ċcmòíg‚ĦĈ-Xô6Ü`׊äÓŭİ
+˜vd9³ŜÈÄ×ċö{– ÎQü àwĞ€£µ\$ÒÎX‡mÙŭ‰Ċ,r>ŬR@ıYÓŞ`ġ3-½Vsû²÷°]µM‹+`³ Ì9ħô¨8B =ĦàŽmD”F?R/B~:WVê“ZX•ŝîŽ"| ĝÏ-öDĴ#
+&­:~şUG kYŻîĤÄÔ§#(ġN7}iÇ:›G’+Ĵcñ‰ŞRŭ߯YR„â6Né,RÓ)*b÷b°…†ĵäĴIìÇÀKf¨œ"Rş:|ŝJ+|Ċnħˆ_è‘ĉšÓ23~ĊwĤXëNġĴZ˜ƒ£…šPğˁœ \ç~gŞcŒuĴ1İ~Pħ)³ıÉñ´&D’&o`ú6†Ñn·‰ħŒîdLëĴ˜Óé"1ß<ŸkŬ 5Çc u5ÓßCîóVĝânDp7{eÑ*„FhÇ;rRA4”N#3lw"Ñé<ĊĊáuq ÛnC³DHî¤.œV ù¤ŜjEBCŜ_ X‘UN|‹zÇ¤„FBLéì—h€ô^·Âĝ˘˙hX•ˆyÍIĜAü%ÚĠĝ@9(dúJ6EU+–Úvm–‡|lKvÈh/Ŝ[稁Akĉ{ iÜĊİÈ{2[żb-vfäÊ%_:Û9„—ì
+=—$!:U2Únٍ[×%·V~˘ˆš_†gKF&ӟ†ĠġiE…*żb¤pğJw=”Q3Ön]RĈ­aÛÀa"ġ[ĜA!9ĊKëd 9Ġ£[L
+„=şÀ-ç_~ÜÁlltp§%Ħ
+ÒD_"D/TŞéT;µA+Öc6 ‡‘¨ˆâ' ×ú╍WÇŻíC"Î4˜ü¤ÊEaŠ"Œj5j³“QaGo~,Ü1ë<Û.܏Ê÷°1t‰Œnİ„hè
+ Ö´Á4LàÖùv"­eµË ,×̝y
+û|&îU%ä2)\™×}éuí–!|·[cŒçóajß­³”<–žT#Ġ‹Ĥ\““A/˜)^ƒusğ$8ğ9<’•e¨31œŽvċ{<™ĵoö²ĜކÖGQ>
+áNĠaƒÏRŭA8¸{m:Ž=E£ œµï a .^\Ħ•“LíÁĝDŞÖ|ß+4ğß²
+M
+wRç|żCß+ĵ›ĝŽġ£XMï&NZ2rÛwt°(ğİ'bÇPQµIE1̛µnŸÜŠĊ~Û”ÍôÒË.÷jhÈەĥ­’& XçHš/+Uŭ–%ĠşĵżĠìŝ,RâgĞĊĊÏVħ “·E°¤­íbĥTÌeÓp!µïl–‘(…Çw™"D"|ñħ˘ê~ŒÖ‰!ÖpÇÚĞŝœ(á’ŭH>}ÏclcûËä(˘{€cÇVħ$˜rŽô(kTdÔöĤTĤ1fqŜĉ°éô.`ċÌL˘úVÌ0ġħsĴÜÁŻ8çô(vşö ˙Lk6²¨€(Ċ\˘¸%Ìéqo`ĜDuhJĵòWÇ÷纈V%Ĥ5•QI‚ĤÉ̸ ¤ğ IJ~‚R£žiĦ@ĊRì¨íSzÒŜ‘ˆY’6 ìôÈ{TTx˙1D‡c`…ı#Jaûèԕ}}ħŭxñÌçoÓŭ?I– ,•×‘-YÀ §}¨à}1{8oŠYôÖ°ñmLñy·PÂzF€2à5ï³/ŭ?nàmÇ=‘SîÁ.*è7_Şunlúԟ$Ÿt\o:cPêœáÒ:S€vċ~
+î `ÁÀÏÏ=—µ˘ò A0qĊ·/R%O ­ĉŬ ëXIÑ7h( Éìŭ~ŠXâÖġÏ[†êĞOÀÓñDüĊCÓǏ³¨/zÙ˟´ó
+=YòËWÈíĈ$FŞ”“ߪd14Ŝú]ó˙n‘ñĉcĈœ"Wjƒ |_3ž‘ô Ç/ %Ż2 X’† §í{
+˘!âèeuÈ,“.75Àa²˜A…ÁšLx–Ê˙]IĦ— #.F6{ÖNLĠ\s>Ñ$…|<ç§9Óşú€żĠŝ`¤€À­…Ô}ĥ7q]Í`vĤ‚‹ v̌÷Ê˘e5 UÌDrùÈ †wĉcSŸä:ôĉÈÁäü!᧊nùL[¨oU†î_)]c+YĥxĈ–ŬU`ÎD£•½÷Ż×üpz]6IƒUÛۍnf}œJr³Á‡=žü̽5ÎĦ³ÖbMèwĈÍOîa‘Ŝ*€ Û¤p‚%f\ 'šD@>T"IJŽ£XÛğuÉÉß9¨
+èL´q̀
+7ƒċZ\‹”é½a̵żĦjÚ£Ÿ„ĊƒFg‘ÓkŒĜoä„r&‘Ĥ.6·k$ §–Cì,<„äbŭ €|zÖĠĴ\¤:'ÛèzˆÈÀ³`VĴMÙŜ(#ĥ†DáÙğùRFéç5x×0ĠĊwŒ g/djùkšzr àóÁDÀ$½À>”W—#‡Œdĵ\Ĉ6˙{oŭğ͖v˜cí˙P]ҍ² È"‚Mc9ĤÍm½ż€ £ìħIîôtD9 żmÏiû@m+/P•¸*PksŞ+1Ž˜ŝÍiR{ĞĉÛÓ×Ñe“µÙSDa÷ıı­½Ħ7v<Ġ‚aÒ¸Y‰şÎƒż8'e_á qĊ%\2ŸË'œ@ĉXğ<]•žµ ‚Y,’¸èöĝšĝ‘òƒ%½‚„ŝQ9ǏİĴ„H
+P׍İĊzWŬG&e{˘‚F. + ‡ŭr êgÍ{ñШ À§zâîŭh(ġ<?%‚'‘òۅBy D+ë˜SxL)•“E'g.4ÔzBGы†8mJŸvĝo4´œĈÀ„QA G(é'ñ‡˜ıĝÁ]àg¨×
+J’ßú ‡+J|ż £Z{WAĊ\Öj(r
+yħ§ĵL„™nJ<ÚäïHĴZŜ‰â=QbNĜŬm.éܲıßy=j²ù ¤=ĵ˙†cTĊ!?4~•y˙öž^ĉcŠ—ü ĜÈEßÜè†í W9א­b3J][ƒ4ÚóÉRVeİÇéBĥ?äEÜgġ@U´
+òŬۘ{qqİü’î,ïµ½Ħž`ÜĊ–&N·zc|xUè2/à×
+séÛŬïBìì,J ğ.|ޘ.=ruĥ(
+ñ—¨~@fàµtŸÜaÙZ-‘/áĞʒ–b%$ßéYÓ|£Xŭğ½D­#TIcÚ§î­íÓĊ{ÙşùwŸÑšÉşuR>ßìÀC OĈßqÙĦ`ğ|MiÛğ°Ĉ •?KÁà.iŻ…´]ouèwÖ#J`îf?וœmIÀ~ÖŬ+îĊáÍ$üİz?>­ßeKĥÔ˜LôÙĥ$ÍL² JĊ6Uğ@72ÔcĠ>diŽc§bì}ò@1CÁnӇÚ9´äĉ¤ákeħqLqċ§ĵ˜ì‡_1ÖÌşżNhĝȉ•Úk:ì"@Q L´÷*PĝÄCğ4ŜxÁtĴ÷—RbB`v@ƒİ@ׁ"ŠV§lH}Ċä*žħĈÊ(_İ4Ÿëiİĥ O³ž*LNFKÒ{éKsğŽ³°ú\hEQ5ÑĴÉpl#³½$.bÈ˙ğ"Ġq Ÿƒ"œU˜âWOÂÊ|+D2çZKM3ÄÙùä üA¸$VĜ~ĴÀ‡Üšµ
+e~Ž¨ĵRëhÄ)ĊŸşüÑŝs,nelvLĞ7‚™°"ħJ>šÎ–¨›/zrÒçÒâ·^b-BƒÉQqŜ8ŝĦDIĴ‚aĞcÉżċĠ‘÷Ë=ï˘›eÒóŞw&êìß[Ĵó¸ĉ(çËb;c1nŽ€Ĵ€P,ÁBl5ßĦŠ½Û@‡ğC•‰aŭ#Ġ(‡
+öfp!×ġñUÙıE ŒĵĈ<HPDG5:t³`Ğ£\F`­1e4•ïˆS{Çv`=)9Sܖ_šÔy™oI‘Ş(‰\²]l?r1ê{%„"=ցjƒìô|›
+_?ĦÊ×ÄĜa°é8ŠĜYĊƒ¸SaĜ–œÄ­3şÀ³Í6–„
+ר†dŬ+ìŬô^}Ĝ ˜Ô}HUG‰ŒJ[Ô=Í{%>NQ‚şĊ/IǗñ‡žE Œċˢ+S<(ÄGÏ4òè žaޘ2§¨gjƒún)nñÔ(%é^"‰:gM!SY‹[ IZJ\ÌJBÂTq›Œ)„¸2žÙ£N”b4Xöb½ç$˜8VİĜa
+ħĵۂ]~€AÜÚ#­s“’îġÈÑ^OÌôN‚L„ñë1íŞsÎy­·XUŝ##9Äde`š’r!Ĝĉç °=`ËJ'UO ħ†ŝÚFú|ú=qĉ˜Ş•<NˆXZœĵÖ5şmè:ÓséĵKŸ³c˜ÖŸlÊÓ%=|3¨ˆ”sƒ’èQhe– ×(Ġ£÷Ë“µÍ…ĊanÒeüŝûPô›­rĜiAux]şß½Ó°ıloħ!|ê>w :è駜Ù-‰óf#ıŞìJŝüÖÚUĈZRꝲ6F.­ġƒGkëUĈó£ĊЈĥT°>nzdÀـ~!„4ù=ĦİŻÂĊf:#GòöìïlEĜQû$Gkbe
+s ÑÏTñŬsĤ E™-ÑQf&çDssäu…˙&ñìT˜:hàŒ½‘ìĊĝ!B!Ú@(çc ì  oÜÈgÜ(›³žUFÄòŜĵAÑÎȧ†œVotöچìòÖÔÒÒĊ–‡Ë7íXíÉ
+I Kˆ<˙=½ÀŒ÷ü ÑŬŝ_+ÂŻ(_èˁž¨) G @Ë4-}èHjDNJq4Fîĝ! (rg%ıo™Âħċo‰*ÀÈ S¨gCì.ĦĠ·h/(JC\9¸ĉŻ˙I˙Á
+
+ájĴÛw_ Ÿ}dƒ§sRäË~Sa¤ŭgÒĉò§”{äUêĦ„=òüŽ<áYtŞ:‡lVĴhàŒS}NN—"Äü -ܳüDë
+endstream
+endobj
+936 0 obj
+<<
+/Type /FontDescriptor
+/FontName /VNKRNT+NimbusRomNo9L-Regu
+/Flags 4
+/FontBBox [-168 -281 1000 924]
+/Ascent 678
+/CapHeight 651
+/Descent -216
+/ItalicAngle 0
+/StemV 85
+/XHeight 450
+/CharSet (/A/B/C/D/E/F/G/H/I/J/K/L/M/N/O/P/Q/R/S/T/U/V/W/X/Y/Z/a/acute/ampersand/b/bracketleft/bracketright/bullet/c/colon/comma/d/dagger/dieresis/e/eight/emdash/endash/equal/exclam/f/fi/five/fl/four/g/germandbls/h/hyphen/i/j/k/l/m/n/nine/numbersign/o/one/p/parenleft/parenright/period/q/question/quotedblleft/quotedblright/quoteleft/quoteright/r/s/semicolon/seven/six/slash/t/three/two/u/v/w/x/y/z/zero)
+/FontFile 935 0 R
+>>
+endobj
+937 0 obj
+<<
+/Length1 1644
+/Length2 7243
+/Length3 0
+/Length 8087
+/Filter /FlateDecode
+>>
+stream
+xÚ­VuXÔm—Ĥ%¤A¤‡DşğğğÁaf€a@fHé–éî‘V:ğAD@XôŬïûözw÷ŸŬïŻù=ç~Î}â>Ïı†Iϐ[ìjQq…#ıùyĝ$
+€ÂA0ïîìörsw½ğár‡Ŭ‘éı";Ô ¸‹Ş§¤òWžHG òwlô¸ÚßŬğ‚<~—ôğ£ıC‘@(@Bĵ‘żcÙA
+wĝWO
+óùßĵŝ~ÛòWş˙ ™:x×y¸4Üâ<Bb|âP„
+Ôփ"AŽ
+?²żütqŝ¨oxp żû;vï.-×Ğ<6I U@êgĤ¤ÏS÷³F öOOQDĠ\NĞi éKc/_ÚĞyFVTü&9ĉWA‡[yô>ıyğMŻ£È‚x˘d™'Œ#Š“F6ġóꇋ"Ë_d$2œ³ĊĦ›bĉU3XŠ„×oHM8äÔúf³-"’Àj&|b$™úĉ&1ғ˘Bġ4²lÊ2D1ruA)[rĊq6íH\é.´j£Œ÷ġı‡zÜÒPLî8ŝ^ÑgϤĝää̝"ĈžßûiP./ğ-Eƒ‘ĥÖô@ĦbÜİjz` ûžlFs|'i­—ĉÑ›àOêHRµ5—&F‰Xġ<ĥSżÓT›ÖnËÎ eáÂÙ§“ûïš4Kĥp}ÌĠş˘•iâÉÄëäZ^ÍÚĠö75=ħŒùdµYI›óV!-ğ;Zd;E’>pŝMèÁ6ğ§ĴqAÚa„w´3ÑL|™Ĉ0:ʖׁv Qc†×
+TıŻğQ]҇œUNE9ŝ•/ĞŒùEE$_Ż½–û™ÓKġ0ğ™~“ĥ!HÉż²úÙżA+ cĝ…Ŭ“Ô4‹1‚ê„ı„a/3–€˘€Iz@QĦÁ]NüÖÀİħıOs•.sCû1†Fö#N!çt39£9½;B“‡xğm<p÷ä^ üħO§ĥàÑtόGğG
+˜9Ĉ Yì˙iO÷ÙOċŬ Ċ†,'y‹}‰!Ÿ-q0Ö+@ÇSL1n$)ùħQA<i÷ħC Ñ>t™ñA9wäètxÄjY>l~°7}6żŝaĉ󳧄ċ[}jIڏìĞ}$?HĞ<Â]N°â<Ç&û%–IUu!¤ô-KhRâ²ĴÌŭÜCC<ĤVÓ)hv‡ë<çzÚeŞzĈwM)i”@ĵ:XĞħ$b6û`Χĉv’e Òx˙+Ċƒ@™}V߉}…h–/PnEĴŻ˘Z|İ1]sÊ.¤NP_~Ps[!Ş;‹àkÚħĉĵÎ"|IƒÜ—•_|ĥu
+Šo”jûˆ--![Úi=ùĊqµJTĞ?ÁP>N>/Î62a÷ÙP˙˜ñJžş`Y˘Ù·udí8}QAŽ+İŸd”Z\_–s1Ÿo•×7ĵQ†ÂŞ‚Èĝr5ySU{y–2 3íC²š²T,
+%mžÓ8ÉI ›]…ĦħŠñ\‡ÑtŽ‚UiŠ˘ìMTŽ ĝöÚ̽ó÷h^{ҜX~ Ó£À[ĊSş·AÙ÷ĥYä-Ĝ’IĉšċkGá=;ı{#`ŻġBŸï…=J!#‰Î2ñ§”÷{ŽġTYĦ”ÑÌQ@^ı/`ÓŻ*[Ç~h/_ږ>c]µRÍ ]‹“ċ!ÈÀÚyQ†êġ·ÜT-úŠÎw´–…oôh:?· p:ÈŻe+™yÏŜŞŽ²ĵú1íĊ°öXsù’gìÖ"’½ Ŭ‡@4h\)dGund3Oäy{ӓO2Ê*ÇÂtk^˜_]šy·t¤¤E5èÊÎԏäkĝÀ-"Ó^ġU2'*'‹uVo½èÓo‡ˏP?§&¸O:ŸÖóóÑ(–Ş/sŻ*ßjs?²Jk­Ĥg˜……§ùİ7+ŝG ĞXi1‹d°nY§
+Ĵb‹¸ĝŞÇÁžÊ÷ĥ‰ŻğšŻäĵä(Š½Ú“ ì£Y!´ğMÔ˘t'Ĉ猨4Ë!²0~o·ïVöj˘­2¸pFhż}ŜvÓĞ·Şu?x3ċ-,d3X­P7wqĥOuq‚BKJ΍—LmŜŻvôvXdöS˘e,żÄ!PÉۊ PŠ_İ fï´o"ĈĤ>Ö¨nÇêöôÎ̝ûšÇžÁÇÏpPbv\#ÒĴ'X@RÁ:†Ñ³kêŠgħ†Ï„pŞ×EĤúĝE ³}7ü™Ğ1Xj°ĥ!\ïp‹í O“Ğ–ŬżĤîR˜Vô£Ġ/8*ĝ†bŒvn²Îd]ü…ƒt²pÀ>Œ|B–>#û[0êĴ£í1ŭìıBҙú&U>Ñ+ĦˆŬ çzdAv&bžƒ”Š.Ó+{ñ†vL…s÷İ”ŜŒžŭû˘E ,<‘Ä´§ÉɘrûߣĴÉÒSDĵ¤PM?פ9WRCûî•ĈòĝLŭlH‘?ûvÄûžÉñ2>–NÀ\ĤD)ĝ+Ïn˜
+Üħ³—Ç!2ĤLvkòÑÍÁSİâ´&Sħ!M`D ô:Ñd ܏À>1a]Âġj×üUÖñ’;€ÜɕŸ¨›ïzüF%4ÜT^êU@wT×H™“Ö¤Šp —™z`˘>;žé KÚ2~¤ä?Ĵ&˜“ôŒŜ$ò{‰žó½ïlŞ2ôI ‰Jˆ?ˆ%uĊá& „ ğä/9ĤLc²R¤hÖbÏy4Ëӆ *hĜ,8œÍ ĥöżûRúş—.h/Ĉġxl§ĝÇ%—ßêĜŠ•ŒD’RÛ˘‰0âv:Ô^÷
+)²>³AF÷ÔÚgìÔŭ'÷ÂSïĉ&ŜV§éşI|4*”¸Žß‡9Öüb “Ĥ·¨ ô`ĜÌĉ›ïƒ-óùċD†ĦŜ8•àng“BÒŒ•Ż{ċÛwÓÛJAìiùsa—3£JÔWüB?uZ\
+NèŜıáĈbOKó@ĥMĴêVLMžv.c´&]ó|ğĥHöX£ê=pù´ÄŒ3áÚËżĵÈĝ5Ûßftġĥaŝ´ž6£H€dm"òyĞ{Ó35-a”ż·ĞòœÖ4B?’ĊIŻħJÑ
+ċT­$âß÷ßààCċĤ°ŬĤ&Ë6œİ˜LŞ<FñfÌԉÌîfÏñ5ˆY÷(3‚ĝÛ|moJv96-ĉÊûñ-ÊvÙW%Ġ—1‰ycLšá-ù˜M `ŭ6Œ5-AïĞ·=àĝ‰˜ŒÁè
+;›Îó´ÜìYüĜs“èkġÖ]žPq ¤?vÒì‘UQŽÈ˜ĈĉƒèeƒğoĈQ4ċE˜ĥ°˘ŭÑ\~é~MMڃǺ$SF›M;0x¸ŒÜ^n~­¤ŝö
+„˘dÀ•µËÍg\Dr"ïÖXJ{é7˘ĜßÈĜœÉĠhÍk9˜ÂGoħD¨?fŠĵ]żRsĠž…ş ;3hĉR~Ċt4Ġ‹çışAŭÒÙ$™˙*3Ôì6ÙŻ‘rĤZŝÌc+QZ€û.Ùú‹ŬÊKŜ5ÏÎ2üžO}šÙîÉ<îşĜÎz͵êG—9Ĵrš]RĠħCÍĦ
+ ón$Y8´T™x„Zrú3‰ş0 £­$ô{$#‹'{[•^’”(„“R<=G‰µ¤ûmèè ==->œ)$ÖE·ZÏ vÉ\ŻEc‹ĉÏííC*İ
+7ôt<³ċ áüBċû =¨¸Yé&w³yëèA¸XËû¤  ’Şr܅ IžÓso°ÖŞħßżVà€žxöó²ĥ1pw9$rÜİ\˙
+v(7ï}ß[0×ÛÁSÓDú='Ĵ>9JqOl‡È–ĝ¸5­“ÄKĜ 7V:¨•J”u÷Wg7
+é +Š"Hĝ´çÒ=³ħ@ñ(j¨œš5'ĵ€.^R˘ŜLÙŝêıĥM…E]³ğ¤°š2Dáj|k£ĞKÌö³y[)Œ86óùŻò’Ì‘úbŸ,u5ӑ,&Bƒ6z [-Ë´%Üoô½h9 ı­4ĴÎXRğ:S½Á/hh`m‡ì<ŞÛŻJgòÉÖÔeÔ)Ìñ÷ÄĜĤ>ì<š8—²~şÀœ@—ÈùĈT@CgézšqjÙż‹‡ŜóRÊyÊ˘½BaL:1rĈ+ğ:%‰vcġ:Á̍…(·$Ğ#È;×}beġ5sIĵ0`^K;ìħídzžµħġ“Uü´–6#{i´ħë8rşàpı?‡?
+á;'4e“t–îür àQ¸1ĥ'F*c91:ĦMŒWĵÊ:˸FQħRÌİ:WÚâĴîrM+Äù#/òÔ¸˙œ/tċÊĜŻC˙+Ú£Rê|ÌÜoy ĝ„{‰?Û_÷•I <ña`CÍr{ ßûÒu†Û~X=¤€VĝbnE%/8á%sˆ)‚ĤÁSy386Cwœ˙f˘L¨şrïcìŝEÜJ
+Ġ­§Ç£IŻ2ıSµĞĈ½YU i° Ŝ§ċĠĝT?ûk˙LÂîŬ›7 @šLRôW…àŞ‘+U,¨O´Ĥ#ïUŭrÔׂi41f%½)Ì:ş6fSÚx›‹ŽŬŸ†şáAŒ&]°‡5΄‘C;˜$oÊYşEŒ½žµÌk¨’fı¸—<ÉoYŝkû^P`›,ˆ÷À{­ö5²ġ³{0UyXRŞŜ2ċ"gı˙7ÈŭW ?“JĊ=‰Uï€:•}QÏO´ä,ñž"‘D
+1µïż§âŸ÷ȽZımöÛnMOÁíĊ~3ô@<ŞW4ÁìF×aêLOĉ52Ĝ/ú”–u‹ô9o:plVÓŻŭZP8g' uÏc­ž#vßHäeìBşe×ù;'Ê˘‰ŽÑ
+†Ö,3sÇ.´–Œd”n‰[ĵÂѓ0~Œ‰‡J52”-6µËO”4Ò Z%~iĥıÔreÁOĠíšFÁ^ÎKç?³ĈŸşÖġÇ%P³kÚyµtËIk‘:Ÿ(v°TkŒ‰•¨DGy8zSÎĠ~ËvÂÔ!¤ĠgĉQß3½z+F%yÍ<ôċbX= ĴÚċòPvIí}›Vë¸ple‡P9.Š× Žû|"[ûvɏİXh¨ÔĤëaONl¸ßìÁdk’Žà]˜ñÒ~…µĤT7[Y§,]}wÛğÎ<Xn0£È kĠèŬ#Èp­çÑL²ċ ÷ Ĥ,ŻV§Ô
+9ŞUìb6Â÷Uöqñ—'š5;êB¸£va™x÷´b Ż5Ž‰Î]ï-<'LO‰]ö.ŝbâúÔ#†7pƒêüî~lÛ<£ì ‘÷Â‘àš„K Â$¤cTùêtŝ5›CHĥ°}gêBĊ
+êĝBFm26ä+a~¤ıù}Kj&~‘S×\ž”YHÂuĴ´îÚ)ĞÑ˙^˜xÚ¨óEÜ,°X ƒk³`ù=Üí’b|ÑQ´Y,aoĉĝx+4RĤ#–ÖÜĞšÎÜ´×f Ç|xBğ‰Y̲UlÜè[–˘ü´Äî×xSè'yeCİHY™½Ĵk5SùQôz–Ç"$O+¤ÇšÂ_ëf¸%âŝ }šÊ²×ai×ÚÉ5uÚq(2LVžkp´ënevi/a ħ÷ž'€¤~Ĝ› ·ĵͨ͵ÒS<&_x­żEAí8:,@éHÙèİ?óú1
+ËfüÔ1”D´7˙~^6p8ĉ “ôc5Z1AĤÍĊÔLázZ³çÉéİ/ĈêÚ2úׯĦÓÉ\E’ċ8‹£>Àϵ)‘áU3§4ħ\Rì™ñµLŻüÖñU"7Ú¤äĜ0̈3u“÷ô?·ĠĦŠG²+Mœ
+qKÚiœëbàì¤×VêDìjÔe‰àĵ?Ö 4à~šöĥMëU›(ÁĦAùáž%t’áÖbBKé¨ŜϸÁ‡€§r҇áçı÷…ÈÒ7&F.leĉ…$Šódê)¤÷ñ§NFżMä §ßË{òŞËŞÉħâ|ŽżĠëa”΀(ïıyMgˆó;Ë™ÉZá-r<ê!‡#…†##x¸ÚġiXÂŭ„°ïì¸&ä°k‡ä{ñxuO>Hû€Ššµ < Ÿä@÷exœz~Hña'oÙBëKYÒ^d)Np,âkˢ/şĵ#i‘sH/l1˘óİĉgz$D0ĉ%³ĉKI͔ÔRÈž½…i²ĦÒéGߘ•è¤Ŝ‰ġV`˘ÇܧOÙaœ;8âĥ3?Œ{µi+Ĉ"í; Òèĵü”÷3Ĉz΅EUóˆĉ
+endstream
+endobj
+938 0 obj
+<<
+/Type /FontDescriptor
+/FontName /NDDFNL+NimbusRomNo9L-Regu-Slant_167
+/Flags 4
+/FontBBox [-168 -281 1000 924]
+/Ascent 678
+/CapHeight 651
+/Descent -216
+/ItalicAngle -9
+/StemV 85
+/XHeight 450
+/CharSet (/S/a/d/e/h/l/n/p/s/t)
+/FontFile 937 0 R
+>>
+endobj
+939 0 obj
+<<
+/Length1 1647
+/Length2 16607
+/Length3 0
+/Length 17467
+/Filter /FlateDecode
+>>
+stream
+xÚĴıc”Ŭ²%œĥ]•ÚiÛĥmÛĥmÛĥm³ÒfYiÛèzÏéÛ·ÇŭŝÓ}ì=žsĊŒˆ5cĊxöĜ$òJ4Ĉv†&˘vĥÎ4 ´ôœ
+**ê˙´ü³`èñÈ_O' 3[
+p|ˆ(
+‘·HğĜ¨étËà3ÎĠ˘½—¤wÀ4YéU÷ĤuK? pgş˜ĦŸ)ü‰\ ŭшŸì|Ò𑚁Pê‹ÎÎI“NžŸÈ†ĈGG†ûnÁ°İr I¸ 0}SÎ’=ôšŒÀß\Ù\`Ŭà½P3>]ˆl Óí„<^ŭÉğÊîƒf´ӜšƠ̈é=ŻG̅xˆ
+­'~?Ñ rVœ§F
+ĉúbëšJlEÈNŜ!
+Çw0ÜNÄK½eF•§Ħ˜­ƒIP<òŜN Ÿ.k•LéxÏ6
+éKĞ,עï<?ÍÙÄ}gÑzQ P|t‡$ށ½GoéžÛZk … ïûŽ…ĥ{°*r×YçBjXA’rı)ùßSOÁÔbcnjK÷ ‘–Ú ^"ġsҕĵ´˜gBíĵ†UM˜˜M³+A ÊĦPҕ8Ĉ”2i?âÍ#à}ġÇ:aĊ;–@-ĦE•ĝahµaĦ3ïÀhxMĈŭŝäċ„.ÄÇê3ò5D=ĉVÓÚt
+?ĠÔZ
+ !g<-£;ĉb'UGL7’€§²e$'ìï3`u×ñûžˆ³lŬ²gÈÓZÂC5Ğ›²îŞj‰nÙ^uq3×zx7Ĉ”Kß*ĥûD4!ĜÏ= !ĠRǨôÎħÚğ G…>mr.o/ı—îó—ĊŒuĵ³·>½ĝkÚV½žvZérTßxy^#4‡¤1ž?CÑıA_cŬdÏÄ°Ğpó– {š•Šâ‘>
+u˜ޤöÈodŭĜöşdíÀíd$ĉ¸ç0ù)XIċAœĊ5ŻĈîz@¨Í‰‹}zĦîŝ‡‘9ŽŸğĠ|9ğ‡Ż½y™ràJIÉNâĵŠëÄ͉½ĵ, İ) êÒk·ĤLŠš˘ŜšŞ–דl<EnmŒBl%ĵ)2^D†\Gy\<pùqu­LF‰„ËàŽÍÊĞx‚ÂÓ#ì´Î‚^RŒÖ Óîİ’ŭmħ&ĵuéà1"ä6İìÎğ8Ĥ?€Œ­T³Ydĵµ/ž3z‰İ²žĥ–YÂĥ@Î$* ğ!gˆ'Ĝ12VÊrĵŜN™í5•'QÁ͸c/"3·h‡’w¤"–é›ĤèUéŜç–ĞV vF˜‰˘!*J
+ÂLĤĊ•ÄìD§‘u½eí çÁ’ħ‚ÒĴw!l›}v–ħlVwó‰ĥNİÏBVG‰ –³<e+|EŒ>†l~ŒÍÒñqÖ'·Ëħ÷läÏGœDġUq,[sĞkIJAm·Fo„Q^v+”Ħš[câĉHİ>Î1#&šŬa;k´­°g£ávù§ ֒IûԉyÀ›n>ŞoäßK/ı[ŸîîíïፔŻpâ$X& €ù›:ïˆWŜ˘
+ùê !—–QSÔR kÇr #˜„²ħĉ=ğĴĊa§éĦšb‡9çċ;·qP>N=gXıî¤ß"LĦÛy‚Ħ7´ĥQú­AZ¤²áüşDĉ=IKíg.u6ϐÎbÊĦŞía0’Ëá%™i„™ĴKâ\Ş@|ĥĞ)Š\PĞs•Y.èÜĈc‚? Btxwk@ż#7ò“˙
+š[ÄıۀÀaXâÄx #×ġ§ĦfkT '
+êŒ[%݇˙ê’Œr;ô´nXvÀèl)ş‘"İÊŭK·¸boQن‰ŻY…SòŒ0TïĦ:AO§Ô]^ŠW(ħDŬ!°NžwâêĦfM­Ù<_Ğ0žıžKĤíM*ı…L Ĵìœ/}ßÊUSZxXÛ-ş´,îsóÇUTáh‡WÊjyŠ‹h͒}ġÔ²JE¤Ŭ1vżr%i(W‹<éeIjú³$q•8÷In56§§+JÍǓĠÚfCĤşsÈ1IG€WüŻ’Jŭ²I,+k§ŝ°r;ĴĤw(‚ô]Ĉ[ú金¨› |:“("á{µğk´´ç¸(ÍIHŭ/ûw¤ş
+ÄZ(ĜZ…
+ÌßM›•Lܝ×khÍï÷TbĤ˘}ùï™GPΜÚĞrħ}?-çGĥ•˙ë_ÚiÒF½v‰ Ivù×Ĵê;Ak6ñIpMdÁ€cÚM7ı5tµÏŠµĈz÷ˆ—½˜…íÉ ‘úŭÂĝx^òÍ­Ğ›ĉ\'²­Fy‘ ›òƒ@’>$…Ÿ£pêmaî'Š~ÒâY,ĈéÂ(°ĵ¨·BGWúÊ L†ĉ4ŭħÁ)éTw…ÚEóċ§ŭĞ}ŒXÒ'.ş¸ŻéÏœPj ’ßâħ}żÜÂ=íšXlíÑÓ!Lî]Qɗnk]mASL>BD)ÏWWĝ¸MyO•ŬĤ.>k ™ĠĉG%rìz
+Òñ†k9"Ñ85ù$Yڃĥ"C¸Òz\zġ#0Ùş%K hġ'Îq„ÍE!û"Ô%²Ÿti÷ݘ XzĤħŒ4Ĉû\
+eéŭÎş%%{S‹ĥ¨16ŜŻ§ç íÒġ²#p,w: Ôş,ño*Ѳ·AûCŬJĜím˘_4 ³ µ‡Âç6‰…V-ġ§6V U4ĴëĈNvQÉ@]jÏ&ĵÓÉxRdl½LœÀž‰KµZ.ÑlG ¸0%ÊNÚÌÇ,HĝÉĥ>˙ÂÓEĝó+Ҏù‚Zċô(M†ZNXO<UĦ‡ùb†ôœëşÛÒĈqÉÙÍeyú\#cÁ,/G‘ĵB“.ŽJ9~N˙GĠà&ŸlîVêùë
++ V¤ĞÄêĵ}`$˘š­ê d `TQp’–ƒÍè °0îĴ˘9=/<_˜Q7˘/xҜÙۑ‚ğî6Óċ1ìF²0Ğ·ÒDR“Ğw“š·”²ï—ÀbuÑíÏäëo[ü-Ĵe´÷ök=#>%bƒe…a{ù„t‡@32œm"DJ4ìoÛIˆü€gĵAùx3^äSĴlùgkŒ+ċÈž…şŬÏX şÊŒ§²;d·ġ,#,8ŒŭD¤S˙zÌ
+ğ–ìIö6Żĵ‹„,—K„İzŜÇ[ĈĦ›kM–ÍŠËe‘+°Iêdĝ&ÒòOUF÷ÇÑħÀĥ>G€^n&Ŝ¨
+ùŠ{½™†²'CDäżà²y˙µRœZ<–ĉ!>!ŭJ‡Ŭñ'PË9:T%İĦûġ†Ağnwéu²‹ĥÒé8=(ÂUk_4¤‰ÖĥŝĉBhœY$é88¸­‰=SÂUgâFğŜ”5HÜÒR$Á͚ŭ`Ù…%ŞŞ °[v_ìšäœ
+çÇĥÓŭ<†¸œbÈŜ*bSƒ?düöQqiĉ‰
+y=âïŻ˘AÇŜ†„ßíï-ïİÏlѧÒg–µ^
+òx
+Sdרƒo›Żôżĵ3m LK r§’jıÀ6íyŸĜ–‹2FÀrŭ{îm 2La9>KôµAùĝ/Ázg˜âUŬÏ&
+ĊÁëGWĜ„ _Ö=§pÌá}Ž™^\;µ vbħé—ÎËĉ֞BÂwż)×Únó̌›û}ŒFáĤ
+ìÈP;ËÖ³…I1hİ_yĊSÌä$Ğ0h_s+Ĥq4İxP• v×ċßÒğ­;ôÔ|D„ôÌ#Ò{ÌJŭJúÍèr@78B#ŝ)Ğ£9x/sKŻÌuşYŒhrÁžßô(iĦŭhĊċB “Fˆ<)ž7ûĈħğ—$KZÜ!"˜FoÀĦH‰s@$ Ż ѝQü›
+?ħ'ğzm7ĊLîgÏï†
+³8.}€?îYk¸>Ô흑4[´Jb@çĊÎU³Ž…6¤SïqÉè‘ß6ħĦvß- Ù~Ǜ‰9wrօûĊħış4
+*–éßIİáĝÄÔġîQ™ÇMVê.‰Ĝëµ;L}ʒ˜sÏu[Yw!.Ğ·|ÂŬd+„ÚĊžÓ6à<ì-ïZöOŠ'tŸ9ĞîÇӘël"‡Ş?•9w x4.0'Û̅t·èBƒÓ˘„’á?Ħ`~;
+5ħË ƒNPéâ{AĥĠèk ­Ú½×Ş)£ui)„Ĝ²àf@ëÛsFmsĜh˙”6mŞ…°'Ieúӕ/ĵrÖë@1^`5RQŽâ`ŬjŸ`
+ms\_JC-dÓ JCuż §Cö%xSÜe‰á†‘Í4ÎmÔKAOûWEáEĤ–‹:”LöÔµßĉ>Ÿ¨ĉGelı‰‘Ü5Uİ CkĤ”NγhSnW\Ìĵµ”CÄĈ+ñxc})|ÓÖÈċòÈ(5ŬŽ²dh¨ßzht-ÍHaüş47vsh `!7ÙK½vP;ƒËĴğĞ€2”FĠ^Ċ•|ޘI’ÎĴ'
+Pâa|!šŸ LFWê[tvħ30XŻÁ³;ı÷|}“*B1Ğıç<ġPñ’Úâ)\ ‘?ko\Ŝ•cÜ˙ñ— l¨Ċj÷ËnèÖ̓µwİ=Ñ 8-cjM#áÂġ%ÀŜġŝMÍŻ¸ú†
+ıi9>ĉ’ı½ ä4Gôáĵ—-gŝÇ( ,8XNŬŸëž² „ĠŒh?ä+Wfċ½ŭƒH"*L†£.qŜ€•S”n-şU \v4Ĵ/ (,–”ħ#'ÚĈçL4Âgí*~óɃ{šüh6 àà;7ù³Ġ)›ĝÍĠYġò,ÈĞ–P{ĈMÇo9‰ŻĤè%‰DLó [Mq”=ŒÖóżêÜ ƒ‰DM;ƒY. i{1ÎC*hïÌ ‡˜.Ħ8‘
+g÷@—&?çšmĵ²Ĥ׌ŽE”b‘]pµc‚èJt ô´E\Ÿ…'߇ƒzĞJKÜL°_³ÙôÏ Të]] j×üÂk5ÔÍÍ=>zû74!£3is^ç£x״ڄĵƒ+·Exĵì=$áêÊ9 Ol àüÌËév×Ç0ünìaìž"d´Ž4iÈrÙCf—„"Ċ‚uv€ú.AKÔË´Ì—Èż†˙ úĦ;r
+ŒS´wJœCEà2Pߜ#:ÇŝAç!§­ ÷ôM^EĥpËHï–e›ò\ûlÁó£GĤĞLŭ‡Ó½ĦÎO£ŝ²ÓÑ#óâ·Ât¨ĦKÁĉÑsoSî …‘ğŞ 0tCàii3ÊäÁ’Kò‚ž‰ïú/ ĞéĈ!úĞlïf‹ïžIċ0ŒâèÄĠğVĴġÓò9)‘!gĈĊÖJġíŬ%sl‹ċٙÍJ½?µĥ˜ ħ. è—Ì+9£_*Aĝ
+VƒċߑÍĴ˘ñ:Uµş€Ż·oŒß0Ÿ’ĥù}ü/B`jÂéĵ² ŻÁïĦFġà ӍË'!Ù usAΌ³\³SkZƒž°<T¨oS{<›Ĥ^Û×ûÏ÷AY,kż´½3ĝ‚·&ĞM'‡½Ĝƒd^jš
+<I´—À,qZUBZénZ4·/‰Ò–êMIj²W z’ĵ[Csôè3¤ßŸxŬ%5Ħ?­Ú3ù—e•ÊùéÜtt–aÌäZp]ôu0‘ĠĴdŽ­ğ:uĞŬHj4Òfà`$û&4á ¤ÓħXQ`ä5>Ê#¤`90YFĜjHD·šzw!%ċpŸLĈJD°¤×êË!œĜ #e‚}cûä34WSsœSż³á4­ë{ʀ<O´”*X
+KĤdçG-\³á+ÈYˆ²q-(DP;ğËgIù7É
+GtĈ ˆ6ÓXÁž×l§šVxéƒY@ ]ċ'
+.X{tĥ9‹š˙&Ĉ‹­q‚Ü İR<xèı’&†;[FëĝÍÈ:òžŝğ…CrKU½öë4i ÁY#QawÏò*ŻFĞŜ]fât ™˘ż›+6¨)½n%ü’ô¸‘÷6K‡#_UÑÍL’)L˜ar‡$?Ċĝ2 7}£>$€I\"W‹´'?ŜpĜßĠڟ&G”Cµ‚žöE
+*—EE—²YàòŬĞAu"ƒċ-2Ş^ĥéCÌkl0¨dO>šI託
++Ĥ/²£Ê:;ĉ~ıáÁ<£(}ŭ¸Ġâ3àġDoSïEŽùIĜağ%x)ZÍġŜ;i.5 JUıax——ßĥ8ĝaX½nŒ րJî’ôgMµH爒^ŬyİvÜ ĴXM s€ÑYĦMcŸ?E³aħ‘@ü"ċáo!ÔĴgp…žO 6\şfyYŠÖô)v‡iÊħÇòû™Şï F˙x çħ( ‘mˆĈÊrƒ¤ÄMlˆéĴ<ûà
+mé3Oôè4eĥxPĜoôıı‚ ˘†F‡cwÔÊ,Òȅ;PÚ38gqĝĥ2ĝ<J3!˜ò-Nlc™Ÿ½ö ²!ӑÚӚ­)½ÙgŞ7ËZŸµôĈé„ÄV% ŸFߜµìƒġܳ­ğÉ5`nù ˘^5@XÚâÙAÌïÔŻ˘uTŝ+äGÀŠ³ä†5eµksŝҁms6ùip¤sA‰ï*Ô<”š/G’;ħ6‰ùûʽÚħ—+µyŽZDû/[”KgĈñ3,àħ›šFu|ûµ§Ŭ²ġĞ –ĵwÙ"‡Ôn? ‰G÷Gp:EëwĦA˘Zò™Ó/ïĤşÈ
+‘ xĦcqߖV5@O”,ĵŬ/=˜/+‚aÙ¤‡‡„°1­i(ŜX~–ŒgHâÖgMao[/GlVĦ²dż¤v}ë·VùbhçLë[ê]Iß
+Ĵ‰Ĉ.†'§ƒŞĤħŻ‹ÇÊÀ²Ù…|Q+{˘Rd™.Z\Nٗ„n°FR
+@öĥ“&CùbÇñÜNвéHPÚär+ïÈ}OOa}Î_,ĠËTsa-ڐ°£$ˆŽ@•:Zêü£"25J‚ʇò
+IŝWvósËċˆv|džd÷Kɲ]Œàsh7Ĥàҏżcj ñŬ˘°µĈfav÷ôüĜކÊÙ È(%úJÉ4I‘
+[ĊĦ³ĈQŞ&ŽŒ$ÓxSlÄî]‘ü>"öIÛ)˘wj µ0³cyé
+`S³ıÀċÍ'[g·ÇrD~ïZ
+yĉÚöĦ>ıĠ„E¸ÛĜùñĠ6=+oÖĜŭîE~mO ÷Èĉ<l$ĉĊÖÁĥˆ <ˆÎg&>ä"T€mŜπTc1Ü?,O÷ƒӈ?cK†ÑĥZ ìe…6Ġġš.…âÚR7SjXž½áéĝÊf‹Z,‚àà˜W;ŞúbYëߘԺÉÑÉMĤÄz§€é_.•OŬżĤ3Êu9OÛĞpZL‡ği\Û|£¤~³zá˘/wêŬ3n‘lÇßa–Și}˘ß;EAgĊ[âÈòËq…ÉÍў²ċ_‘Û
+1a û‹˜ôp“öÖQ€ss…F]İĈnĜD\‡# ³¨ÍĝŝâW£ÈÁBûq>°"òkœ4.F¨·ç쓭ÀıI4Ż>j</ĝ'„êŸüÏ*ŽŸİĞ6›\ۋD8Ä8›âlè4b.KÒzĥ ÔÏĞó>•Ónړ0JU`†9 ó‰á[Ôr’‘žk#ÉNġĥ#ßÓ67ynÙLm:“•èÉÛt=˜U•´ĊÒA–ĥÚRI6 Êû?ıµy£Ú%áß(FY"a!~ŬğÙt—˘¨÷Š\›9~‡Vš(Ċa&àĵA’e˘pž;+ ×–xıĞΣi~‹ğĤѵeUth3²OVü8I8ĦçÓp ³‡C<°'™Ts„âl"I`OtK´×zĈ7!ŒÇo
+ŭd6<í„s4„Œĵşs–UétġĠċX˘%ĤÍÚSnsòÒ?³£D ;GÒÎĤÁ•ìŻĴàĜÏÒ&ñ’ö _…š[ÂŻ}¸*°Hbm)~ñ˜²Íœeî—V,²(çÇSCıÜnêïô½T—JlzŒ´P›ÇAf̎R šŭ›Qİê˜
+ żL-kû"Ĵ J2§^‹4T’—ôVÌ,M"ż…_#нTá âœ=x˜3ËÌÇİ™Ap†KÚğßÏzÏ\|²L*XĈÑ7è"sOñyI<÷0¨‰êožòô^ 0bŻ§iô˘éŸ.`~o`•,o§ÀŸ› ‹NéÒ3‚âuÎzÁPŽêSÒ6]Ĝßċly½Eèzċ0Yüt9Ĵ#Ĥ ĴĦTdù,M$L‡tSŝĊ˜·gÄÛ.•p;1 ™ˆĦWAÀXƒ_ %4ˆFžîŒaŸ^â?Šùc~ó‘cg -Ì98Î öZnכi”Ĝċ'Š£iö)Ş­méiˆ
+xĥ$ö_˙‘™×KXÀî;ż›àC(wĊ‚’wcá͸Ğ7żwï·˘Ù%Hmbb“%<Ĉ’(K™˜í5ċ  öu4™Żi׃† ¸Û!óS2وž… ï|<5áq|ZÚĜÉÀcBĊC0ivÁ‘àÉ#‘bŬ œÓ Ġ[ aĈ€½£5·wÏ––Î>×|!ĥ™7ŝ†ĞMaˆ 3ŜbŞígf†lj?‘éŠÓ$ŻÄÎ´?8WnßòmêİŸ4Ĝ²G[ßz\OU\şïĤ ?
+ż"Q[ĝe¨ġV脜ÂĴiŸ,Ĵ˘r˙,EÂFŭ2Ž×!B)‚aƒÚ>˘† &–Ùï{\sàÌĈBp¤|~¤ä;€]܏½
+t´3Új(ÈqkĈ Gğş:ğ¤Ŭŭl;L£ö+Ó ĝ}aòĝ{ż*'Pف}şä&ċċÒ–îNd/=mÑÛ`ÜÖ\8ëÓ *°
+1Sßü4:lÈi̜'ĦђŽ4’WèĞĉ1ßݵ‰ß`Hmë#êŬ-3Ŝ0ĵĈŭwÛÚ¸DË:R1â:ˆŭœU…Ísƒ‰žJšxM1tgİ!ôÔħ{׳i•ùÛ]Jáñ8˜ “öíP‹ŭ0pkà/‡ñXÙÈ>0ü3s
+ê OD…Ö“uCŜ—Q³‚iĝo›Qîħd˜v;2&a –ŝşë úƒü6MxĴÖ+bPçhĉĊ°oÖ+;žiŜ‘ñ­fg‹#³)-²Ĉ‰?ü²1Uke‰ÄĊaĴIÒ$>¤ [óÍŬA°÷x­{8qB3ġ.òҘ“·§t
+^î[r1úoû9MÂħŻU˘%Ïzw)]x­&Û8rpBА}ä BĜì´-–
+|¸ÙĵmámŝĥnĊħÒZ1.ħ4jĉÙĤ-¸ŒoÄŬ{ġıíġĉĈù½ÏË@ıÍ4xó+R* à£ë2ráApŸ☁ŒßÌ$·Üu÷HktU„@*‘ëX}<hœµÈ}%'•.ż€1”HTŽ˘%Ž,§Î¨úmı%ĜcÓ!G‹Fn.ƒàŒZmğÔ6ڃHQ’´—à¤vtÖ bóü*Ĥf Ú 9ߙœ™2qN R°+²÷?¤nŸôíċmHçî[ö<×|¨+Ȉ>9Á~é£şĦ>hWUh޳o@tğ˕Ğ ˆġnÈmû/ä7´?.ĝ[î WĈ2lğ:ÓVO
+ĥ7’÷ŞE
+ ½:$³PwtÇAl`İ
+^5ö˘€|“2èë?DÎÍ´ÙyÂż‡è,·˜× çċDHM5ĥÇGÎfy ‰nLžŜ€³nƒŸTCĦz9€=0 ŞÔĵuŜ¨ÌÈmγ!Í2`v¨!Ŭġ$œ_ûóġŠhH Ĵĵ˘mq3”pä€Ŭe­ĞùŜcèƒğµ³ĝ‰NÎ]ŜÍòààXK —ˏßÈ èìÌÓ5eŞÜ›­Aż<'ĥàNŒ™ŝ¸* •*ݳú·âôY>€lc>²ħ?(ÈùÒzıwyŜҟĤ~ͤŠNM@•ŝ°XÒ§HoĦ CÂ_J,mİŒÙŭÊö‚Glşĵá‹8MҎ‡FĥYĥEzL~#ĠéNc+¤߃cÈı hĝóğ#\úëyêd~53PŠ
+G'ıŝ,}ş|'*S>ıdbâŭ³AD¤×ñ:'Ğ ]/'ÁĦí2l½Ì;3TÜÒZœ:³&ÈJ‹÷EHáµ­<ç<pʝƒBŞċ‘G5…­˜Á³óÀŬ‰X|P}3‡ÌœÄ]TààJŬßGuxôĦ&^#rMÀ!( `Ħöü-S‚–%$ħ7·
+7vcYEvېŸ<oÙÀ&.'£Ĝ^°„İ€GRBóVˆ6Ä>Żñ38Ÿ5ĠEÚ„b:‡ÇB§żĠ•ïd’0—Ê.î7' ßóğÒOnWµÄt* ŜŭġCŜ¨kĝ*[›hġQ#Q>Üߏİ
+jWŬÄ3^^Ŭ6ë0”nhˆ‰t‡4IVˆ^;ßĞ[qÙ ĝ8‹ÍEe½ŒIÀëà[#јyÄÉ6î$5È[ËXt—2)²èŻuÇIĉҖîVéáŞCŒ=lgÈŬöö§5ĉ…I¨¸%/yÜFN3´h§I`DıwŜǧĠòFdÜÄí;Ö2ZËÛ™LzF‚§n7>䳐٘=Ŝë)ŬN,' Ù~›‹/nžâœ7l:ħĝ;;k<Ex[yX1aŬIËgv2ˆliĴMŝ(ÌQŒ-€‚ĜáŻ}ħĞğV„‘—É.ĠY‚\ĦI*mÁçhŝ"SUúħH(öcÊ~6!³GJuÔ-eĉ‹¨ YĜ×+OçùQ>Œèuı̎§§ô*}2èDŻ ]ûà c#™Ü£ĵZ½ŻĦNan·Íûn,œ—HÙŝÌÇ*!÷Ž£KPû\äŭâ,éϓ?áċk_YϐúASOŽEÚ­}@üXġû,UÀÀôˆX÷/i^)ÙêoŸĴ‚óià}"‘Ĝ޲p€&ê·K²lşċ]‰ bÇĠÙï)ÒŬ½µI#@yĝE#pd`aj‹:
+;NeRûĈe—Lm”V}Q2P½ĥĴó6ži_ áÀ—Óh´JÉyp€´ƒˆ1½é˘*kR<k^˘4K ,7ëâï‹Ŭk`~ûlqљšĵ ı.ÏŝŞp˘W™§˜6 „³·Š1İ›(Ù›G_~BCMTĊC#¨Ŝœ“'˘ŬC Ôğ`Ì}rĈ#§ÂĞ›šôŬі?§ÌÈÌTĞ„È –·Bù0äy÷G@kqşëDŽŬÓ#­<ĴöDÂċïDSŻÊ BlJîàA;fqż´şİÄiyŸJ"ŞÎV‘>TíşóíE6žxÑb(žVÓ};Ú4[ìâf×ġ>˜càeHMïĦrêÛ}×ŝŞÌqshá|G“T n˙} ô}Tc%§€Ñë~I4pêŝÍ!Ħ‚d.Ò$n¸@‹5âUôe.B(ŝe.é³ğ-jxê>|Š 2^O ŒĝŸ¸´Ġ+™VždŞéégx"É´dŬıŝl%nH5KܲP—É” ;`äYl!"î#ŬÇï(6ü<Òĉ“i‚—tP;O>yżûWë@`:_†`àhMHöµH~żĞA^í¸7ó)ÜH-KSĊäs€µr{Żq
+g[/ïösh^ĵâŜġ6ĊWwœKœ”2wÉ˙3Ìü9…³M‰çâŝ_ÒµÖżÉ\HžzµDż6‘+ù&Ħ cy;UönĦşîLNİôŽ´SÚênWäÏÉ)Qׂƒû9¸pF¨NĥvĴµEÒ\ġQ0<‚…͵Ċ™ŝıLö—ċÏâÀ<ç87S2=éâáà˙,ÛTˆdÂe(ġiG_íïÑ°Ëğ™éFÒP"Ô$½/ŠïeÒnċIìDNjš<
+ 7Cè:³%ñĈL¤`À+*Ñ@GgÏLJGQ]Ŭ Gċ ,µ×ğj†Ó*½lÚż‹³<˙x"­ÂNĉUbŭ8|NCF80~…"î…jÎÒû@¨‰ëçïŠğB; ×YħşXwÚ1ĦżT;QùWKM×Ëżí†GxM+ŬÔJŬ=3p›RwÁĵôšĥ” EˆŻ
+ŠĊ
+endstream
+endobj
+940 0 obj
+<<
+/Type /FontDescriptor
+/FontName /QSKDAP+NimbusRomNo9L-ReguItal
+/Flags 4
+/FontBBox [-169 -270 1010 924]
+/Ascent 668
+/CapHeight 668
+/Descent -193
+/ItalicAngle -15
+/StemV 78
+/XHeight 441
+/CharSet (/A/B/C/D/E/F/G/H/I/J/K/L/M/N/O/P/R/S/T/U/V/W/X/Y/a/ampersand/b/c/colon/comma/d/e/endash/exclam/f/fi/fl/g/h/hyphen/i/j/k/l/m/n/numbersign/o/one/p/parenleft/parenright/period/quotedblleft/quotedblright/quoteright/r/s/seven/six/t/three/two/u/v/w/x/y/z/zero)
+/FontFile 939 0 R
+>>
+endobj
+892 0 obj
+<<
+/Type /Encoding
+/Differences [2/fi/fl 33/exclam 35/numbersign/dollar/percent/ampersand/quoteright/parenleft/parenright/asterisk/plus/comma/hyphen/period/slash/zero/one/two/three/four/five/six/seven/eight/nine/colon/semicolon 61/equal 63/question/at/A/B/C/D/E/F/G/H/I/J/K/L/M/N/O/P/Q/R/S/T/U/V/W/X/Y/Z/bracketleft/backslash/bracketright 95/underscore/quoteleft/a/b/c/d/e/f/g/h/i/j/k/l/m/n/o/p/q/r/s/t/u/v/w/x/y/z/braceleft 125/braceright 134/dagger 136/circumflex 147/quotedblleft/quotedblright/bullet/endash/emdash/tilde 168/dieresis 180/acute 223/germandbls]
+>>
+endobj
+941 0 obj
+<<
+/Length 696
+/Filter /FlateDecode
+>>
+stream
+xÚmTMoâ0½çWx•ÚĊ$
+!Ù ‘8l[•jµWHL7IP‡ŝûġĴV=MžßÌĵñ s÷ëu;ÑU··ġÈٛ=w—´“ì÷îŬŬċ]yil;<[[Ùj<=?ħ×+·v`÷Ù&ß´ġàțĥ<^*;²~&ûQ·‚>ìŝŬŝ”MS >Ù_êP·ò{=éÇsĉ@öd”ôÇöçşkŸ˜xäœ;`ŬVY×`Œs4½JaÓQÜĦnĞŝއíĦ.’Uu9\ßèY6î>ĵŭ<ĥÙ´‡.Z.ÙôÍž‡ŝ“4>Dӗ²}Ŭ~°ûŻÒÜÑör:-d0­VĴ²WÑÍ˙ĵk,›ŝ8óŝy²LÒğşÊ²çÓ´ŭŭ°Ñ’ó[Ċ*²mġíLrŸ²?ŒÜÔqù• â5F8@ šˆ=
+endstream
+endobj
+330 0 obj
+<<
+/Type /Font
+/Subtype /Type1
+/BaseFont /XYLMEX+CMMI10
+/FontDescriptor 910 0 R
+/FirstChar 58
+/LastChar 59
+/Widths 901 0 R
+/ToUnicode 941 0 R
+>>
+endobj
+942 0 obj
+<<
+/Length 739
+/Filter /FlateDecode
+>>
+stream
+xÚmUMoâ0ĵçWx•ÚĊvHU„dçCâ°mUŞĠ^!1ŬH ŭ÷ëñ#xÙö
+Üb[Àd¨İ0·…°´8˘‚ĊA ‹ċ
+i‚É$C#.CĦ‡Z\wħşFÉ|TTŭÙôí<\`Gc)y ,İ<$Ĵg„ àˆvàÀ1a×ç²³[ RHדLÄ1>g~ĵÀ8÷ âŝÈ)okà çA„8 ö$`I\èÎ×3`çAfŽ<ÈZ]ƒÂ!‹„ê
+xNkÇyı"œ7Áż _“§Ìq
+âH`òáö•‚nú¤ḱÂRONH=CpB:# =Ñ%8“ˆ88QA~Ħ!*ÉzĈœĝäT?!~Ž> étwİ8éÄy*ás£¤Ï
+}nÔÌçFE>7*öıQ‰ÏR>7Š²˘ G]ĵ;~îó¤ŠÛ<İò6OšßĉI‹ŻyÒòkžtèó¤g>O:òyÒħϓN|žôÜçI/|ž´òyÒÚçIg>O:÷y҅ϓ.}ž2îó” Ÿ§Lú<e³ëı_ûmÂ;z}ġŞsßÛÑ=ĥîĦ×´ĉúğ#Vı{ÈÇż Œ^Êà/ñó¨P
+endstream
+endobj
+426 0 obj
+<<
+/Type /Font
+/Subtype /Type1
+/BaseFont /RFLZJB+CMR10
+/FontDescriptor 912 0 R
+/FirstChar 43
+/LastChar 61
+/Widths 896 0 R
+/ToUnicode 942 0 R
+>>
+endobj
+943 0 obj
+<<
+/Length 900
+/Filter /FlateDecode
+>>
+stream
+xÚmUMoÛ:ĵëW°‡
+ġEJ™€ġĜ7ûĈ8ó 1ż’{Ĉ~şÏ`W(-úĦ;]è·Û%=°ùñŭxŠğ‡ñe_,—bŝ+-OÓ;qü\ÌL}œ†ñUÜ˙I--=ž‡·BĞ•èKޘĉ˙ŬE1˙pĈ[ÎÓû!
+Mߊyuû>Û.NÛñ5K)WbıÙĴŠ8ö­iÇ[ž_ıuʕMúÑzQ­ŠÒ)V†€Ú(TĜ€à
+dъcŞCZCù<£73JÊgózÌnĝŝHÈ°íáÌYɚäTœŻa…ŠïŻĈ,_ğœ-Ÿ—Oë87Ë}êÛKԴܗLlıoKñšò+Êg­JÌâ.GZyóş‹Vc­48¸’ïĵäĜWtù]Í:P~`áŒñħ–rZŽq.nÍ1]Ç ÇàS˙ĉ/İßP•ŭïuöż7Ù˙Ìŝ÷Uöż·Ù˙Ŝe˙û:û?Èì˙ ²˙ƒÎŝ&û?”Ù˙!d˙‡&ûż1y–ĤĵÍH·œn5ŝı)ş½ŬyšÒ“Bï½x#†1Ŝž´ŝ€]ôGoáġñĊ׏Mñ?Xê
+endstream
+endobj
+256 0 obj
+<<
+/Type /Font
+/Subtype /Type1
+/BaseFont /FECGVA+CMSY10
+/FontDescriptor 914 0 R
+/FirstChar 3
+/LastChar 105
+/Widths 907 0 R
+/ToUnicode 943 0 R
+>>
+endobj
+944 0 obj
+<<
+/Length 900
+/Filter /FlateDecode
+>>
+stream
+xÚmUMoÛ:ĵëW°‡
+E?t§Ëŭvğ$6?Oq÷0ì‹ċRÌĊiz'†Ÿ‹ùİÓ0Šû?˜•ÇóáÁBÈbµ}|IÓìß·ğ(ĉ xKyz?DĦé[1ĞnßÇaÛĊi;Ĉb)ċJ,7›UÇŝŻ5íxËóË5·Nı²I?Z/ŞUħT:ĊÊP[
+ŝqĴ•Wò€—ûŠ.żĞYÊì1œ‘#>ÖRNË1ÎĊ­9Ĥë¸á|êß<%Ġá޲˙½Îŝ÷&ûߗÙ˙Êŝ÷6ûßğì_g˙™ŭTöÙ˙Ád˙‡2û?„ì˙d˙7&ÏҔ·é–Ó­Ĉ?w<D·g£;OSzQèµ˘—oÄ0ĈۃvĜ°‹ŝè%ĵğĝúħ)ŝ–•éV
+endstream
+endobj
+522 0 obj
+<<
+/Type /Font
+/Subtype /Type1
+/BaseFont /SVGMYK+CMSY9
+/FontDescriptor 916 0 R
+/FirstChar 65
+/LastChar 83
+/Widths 894 0 R
+/ToUnicode 944 0 R
+>>
+endobj
+945 0 obj
+<<
+/Length 664
+/Filter /FlateDecode
+>>
+stream
+xÚmTMoâ0½çWx•ÚĊNB°+„8l[´Ú+ML7RI"ŭ÷;oìnµDoĈ3óŜŒ?n~<ï&yŬ½ÚIr/Ċ‹=wWÙIñóG77eW]Nĥ­­m=žÄ³ëޝÄmħ-·m3ÜQĥ­Ŝ/µ£ŝ´²oMûqğ·ż'}ċœvúIÄí›áÖż/ ²ĊĠúËşsÓµBŬK)Éħnë˘;A÷9šn1Ġ›ĥvA€x…œHĊ˘nŞ!Xü­N4
+endstream
+endobj
+257 0 obj
+<<
+/Type /Font
+/Subtype /Type1
+/BaseFont /XISLAD+NimbusMonL-Regu
+/FontDescriptor 920 0 R
+/FirstChar 33
+/LastChar 152
+/Widths 906 0 R
+/Encoding 892 0 R
+/ToUnicode 945 0 R
+>>
+endobj
+946 0 obj
+<<
+/Length 665
+/Filter /FlateDecode
+>>
+stream
+xÚmTÁn£0½óŜCöĈBì*ŠD ‘rĜĥjŞĠ^SpşH “ú÷;olšvğR‚ž3óŜŒm~<î&yŬ½ĜIr+Ċ“ş³Ğì¤ĝıï£ĞвĞÎG۞m=îÄ£ëŞ=‰ëb[nÛĉtCÁÛĥz;×vŒúÊ6í%:âúÙŝžô•svúI>7§7
+ĝöN!.„àà_Ö M×Ŝ u+$bŬÖEw„ġ!šy1 šĥvÁƒx£HĊ˘nŞSXñ³:Ò ĵ{Nö¸m]´Xˆé½NŬDÓW[×´Żâúb‹èŬıïß,,-—˘ĥŞFŭŜïVLżġġñŝù½·"ĉµò~ŞĥCżŻĴÛ·Ż6ZHı‹ÍfÙĥŝç
+)/‡16£X9ÇCjIÄxÄĵ$BiÂÊ#Ž³”ˆċcΓ„‰@Äl MDĤÏıÌPT#ZC%ö)&!lR&TĈG¨„ˆ5ò‚k䨑Ż}WLĴııħ‹ÔŒ]UöŽz@ŒKƒ~bo#£?Ż“ËÂқHљœù<´-µÇ+`qĵò}ʂ§˘bŒI2_́Y_%°­X?N˜˙¤a~Zjö•ƒG•ùécrjî5×À9cÉú+ϳĤ÷EğH¸D½¤àÜ°%Œ~ÁWĉŭLzŒŝ´Ç9<hĊ5cÌCÇ>óܓ2 †Â›žùŬFŸÚϲ`Ì'I& sÎe?zċyxĵíjĈ5áŸFÌıkß#ën§i‚âMĜ7>TĈç2´0´PÇ-œ9SúıAË°ÖĴà˜p •—~ne8|âpÑ9ĝ¸żĠÙ9şÚüÍà[‹ûÚ´ö³Òw=²ĝÏߣñ£‡Ġ&ú ÷Âc˜
+endstream
+endobj
+382 0 obj
+<<
+/Type /Font
+/Subtype /Type1
+/BaseFont /KXDSHP+NimbusMonL-ReguObli
+/FontDescriptor 922 0 R
+/FirstChar 97
+/LastChar 117
+/Widths 899 0 R
+/Encoding 892 0 R
+/ToUnicode 946 0 R
+>>
+endobj
+947 0 obj
+<<
+/Length 665
+/Filter /FlateDecode
+>>
+stream
+xÚmTMk0½ûWh…öF²G*!àĜ ä°miʲ×ÄVZCcÛYèżßy#9톅ÄĵÍÌ{3ú¸ùñĵ›¤es°“è^ŠÛ7簓ìç nnòĤ8Ÿl=<Z[Úr\íÄs×;;ˆÛl›oëj¸£àm]|œK;Fŭ?heߪú+<âöĠŝž´ïş›O"îµ>hŭzI-.ĥà_ĥëĞĤ~ê^JIŽu]fÍ şû`êıĊtTsĴê²óÄrŠ²*oñ·8Ñ
+endstream
+endobj
+523 0 obj
+<<
+/Type /Font
+/Subtype /Type1
+/BaseFont /DUWRJI+NimbusSanL-Bold
+/FontDescriptor 924 0 R
+/FirstChar 45
+/LastChar 116
+/Widths 893 0 R
+/Encoding 892 0 R
+/ToUnicode 947 0 R
+>>
+endobj
+948 0 obj
+<<
+/Length 665
+/Filter /FlateDecode
+>>
+stream
+xÚmTMk0½ûWh…öF’G*!àĜ ä°miʲ×ÔVZCcÛYèżßy#9햅ÄĵÍÌ{3ú¸úñ¸Ÿ¤eóâ&ñ­OoÎ]á&ÙÏC]]ċMq>ız¸wtċ¸Ú߉Ç)ön×Ù.ßĠĠpCÁğşx?—nŒúÚ½VġgxÄġ³û=ißŝtĤ›O"îıŜiŭû’ [\lÁĦż\×WM}'Ô­”’›şÌšt÷Ñ4p‹é¨ĉXĠeˆȉ”eU Áâoq˘ y˙Ñî´ĞM´\Šé-öC÷ÁÊn˘éCWşŞ_ĊġEy÷çĥ}wP d´Z‰Òİġz891ŭŜÔeùù£uB³­ĵš˘)]ß
+×êW-\‰ċvğŠ\]~[S!ċċ8Ĉ&+ĝ¨™Z‘cĵeÇ"'‡2„•ÖɌċ5çIÂä@Ä|놉"ĵàB2AQƒhíSlLĜÎĜĦ28a}„ŠÉ‘˘Fšq5ҍïŠnnìbfNJ·CG= Wêܢíe$ôg;ŝ´A,½ˆ:“sŸ‡ĥñx l=N×£O™ñT”Ĉ˜$û³0óвóë˜ŭ_¸Ĝ³/v§ĉ˙ú Q%~ú˜œZxÎ pÊX2˙Úû™Óë˘]$œ£^œqnĜĈaż K‡ıƒ?‘£?q
+ FqMyíc0=) &l(´™ıßmôiü,3Ĉ|’d &ċ\ÖcÖŜ †·]Íı&ôӈ9w{dŜ-tÚÀ…xö•ġıì\˜ \¨cΜÍŭÜÀe™kžqL¸àJs?·<œ@>q¸hx .×·8wŬl~1ĝÖâVµğ<*mÓ"‹˙üïĴ‡mômDaš
+endstream
+endobj
+259 0 obj
+<<
+/Type /Font
+/Subtype /Type1
+/BaseFont /XWWTGN+NimbusSanL-Regu
+/FontDescriptor 926 0 R
+/FirstChar 2
+/LastChar 121
+/Widths 904 0 R
+/Encoding 892 0 R
+/ToUnicode 948 0 R
+>>
+endobj
+949 0 obj
+<<
+/Length 666
+/Filter /FlateDecode
+>>
+stream
+xÚmTÁn£0½óŜCöĈ6„ĜU‰@"ċ°ÛŞİV{MÁi‘@ĴÔżßycÓt·+%èù13ïÍĜĉêÛn’Uí³›Ä·R<şĦ=÷›äß÷]tuU´ċùèšÓç*Wo‡;ñ·ċΝÄu-ĥM}şĦàmS+7Fŭ?hċ^êĉqŭä~Mş×ß}kú ŭ$ŸêÓ|y'ˆBpO×uÛÜ u+$bŬTy{„ġ!šy1 êĤêƒñ G‘Ò˘ŞËSXñ³<Ò ĵ{Nî¸mm´Xˆé#½Nŭ;{ğ‰Ĥ÷}ċúşy×[DïÎ]÷ĉ`AÈhı•;P5ê÷ÇŝèÄôK_ïŸŜ;'4Ż•÷Sĥ•ş}éú}ó⢅”KħĜl–‘kŞŜݐò|cSŠ•s<T˘–DĴ7LÌ "”!Ĵ,=´N"4ÊkΓ„‰@Äl CDŞÏıLQÔ Ú@Eûĥ *ë#TLD†YÎ52ÔÈÖ+&ÖÜÜĜEbÇÊ×}O= Wê¢ím¤ôçu|YCXz :“3Ÿ‡ĥñxl=΀W£O™óT”Ĉ˜$óù˜ġU ۊġuÌü'íëäÓ:ĝS³ż9xTİŸ>&§ĉ^s œ1–Ĵżò<kz_´‹„ ԋsÎ [Â8ì|é0wè§Òcôg<ÎàÁ(İ1£} ĉa¸'eáÁ„ …73óğ>ŸeΘO’ŒáÁdœË~ÌÊó`xÛĠŒkÂ?˜s×GÖŬ0NàÓ-ÄÛ°o|¨ĴÏe>ha>6hĦŽ Z8sĥsƒ–e­YÎ1á:@++ü܊pùÄá˘ásqËsßÓĠĉoßZÜ׺qŸ•íĊŝ=Ĵî7Ñ·cĊ
+endstream
+endobj
+415 0 obj
+<<
+/Type /Font
+/Subtype /Type1
+/BaseFont /LQIAPJ+NimbusSanL-ReguItal
+/FontDescriptor 928 0 R
+/FirstChar 45
+/LastChar 116
+/Widths 897 0 R
+/Encoding 892 0 R
+/ToUnicode 949 0 R
+>>
+endobj
+950 0 obj
+<<
+/Length 990
+/Filter /FlateDecode
+>>
+stream
+xÚmVËnÛHĵó+¸ÎAÑM‚y€›ħħĜĞLŽ½,R ¤ƒ˙~§ş(Ż³ÁrĞĜ]]ŭàŒnŝĝù°Ñüä7ÙW˙ò§ù²ô~c˙Ü£›7÷—ƒŸÎß½üp}zú˙\ĉŝÁŸ[{ïî§ñü%8ßOŭëeWŻÏŒ§˙\'}ôoŽ§·eŜ<]Ĉ×ó8m|Çókùìq°ĝ7,–żürçé[œ|UJ ;P)Ú:âíUÙó8 Ë*&~‚´(IaìÏë7ùìĦ~x;ŭá~zž£Ŭ.Ŝŝ
+OçċM~‰ĥ?–Á/ôßŝĤ,<y¸Ż*bŬŬĊƒ„Ħöïûƒ·Ÿĝîòĝvôq*ߪêçÁŸŽûŜ/ûéĊG;îâ]×ŬE~ŝ÷,-òôĵúĤM“ĦT°P
+ k
+¤C,H+„TN”V;éAƒò  ûa@ċ>x¤
+ĥ•.ĦOÀC+¤İBÇ89Ò
+
+Î;ü v+¸†ŝ‚[`SJĊÖ/Yğ…ŝrĠŝ’5ÙNê1âC=5–kÂĵFlŠµèŻXğEís9䪘˂³ZsĦöŠıĴÄ2—֕Yì´ÌQiħ™ËĦŸZöDebg\hôGË|U.vÁ}@.-z’Füee‰ÚuMyuC5jM{¨ _)pš5/b͚ŝ&—ŝ8ôĴyÑSrߐ×H^•Š-}Pĝî*ú`,} Ç’ž[m™Ĝ‰Ĝ úlSÚèÍhƒÇrÏeo-ġȞÛUĜRoZ£Ë÷¨êİQŻċîĠlù~Ġĉĝ~É)ërÊa ; 4zîĝŝjÌŬċÜ8êQĜUG= Ž<Ç÷ÚB›cdîŽŭwÓJŜÂÂż•ĵ™Sí‡ĵí‡ĵí‡ĵí:ô­[cÁÓñ̑żËˆ£.ç‰=]A<YO/9­p%áú|żìú˲„{PîXıßp³“ż†óQò'÷÷ġ×ŭè˘Š<
+endstream
+endobj
+441 0 obj
+<<
+/Type /Font
+/Subtype /Type1
+/BaseFont /TXDFEB+StandardSymL-Slant_167
+/FontDescriptor 930 0 R
+/FirstChar 101
+/LastChar 101
+/Widths 895 0 R
+/ToUnicode 950 0 R
+>>
+endobj
+951 0 obj
+<<
+/Length 664
+/Filter /FlateDecode
+>>
+stream
+xÚmTMoâ0½çWx•ÚĊvB°+„8l[•jµWHL7RI˘ŭ÷;oìnµDoĈ3óŜŒ?n~<ï&YĠÜ$—âĊÛK_şIŝsßE77E[^NĞ\5žÄsߖ;7ˆÛ|[l›z¸£àmS_*7Fŭ?hċŜêĉ3<âöĠŭžté`ú ŭ$â^ëáÖż/ ²ĊĠúËġçşm„ş—R’cŬTy{‚îs4 Üb:Ş9ÖMĠâ
+endstream
+endobj
+258 0 obj
+<<
+/Type /Font
+/Subtype /Type1
+/BaseFont /TCTTPS+NimbusRomNo9L-Medi
+/FontDescriptor 932 0 R
+/FirstChar 2
+/LastChar 121
+/Widths 905 0 R
+/Encoding 892 0 R
+/ToUnicode 951 0 R
+>>
+endobj
+952 0 obj
+<<
+/Length 665
+/Filter /FlateDecode
+>>
+stream
+xÚmTÁnâ0½ç+ĵ‡Jíb;!ĜB
+ Hv[•jµWHL7RI˘ŭû7vJwğDÏ/3óŜŒíÜ|{ÚM²Ş=¸I|/Ċ³;·—t“üû‹nnŠĥĵœ\3üprĠĝöü žúĥÜıAÜĉÛbÛÔo›òíRı1ê˙A+÷Z7×èˆÛ÷kÒ §Cmú ŭ$_êáĵDˆ+!8ĝ§ëÏuÛ<u/$bŬTy{‚ġs4 òb::ÖMĠâ
+endstream
+endobj
+383 0 obj
+<<
+/Type /Font
+/Subtype /Type1
+/BaseFont /HFBMJA+NimbusRomNo9L-MediItal
+/FontDescriptor 934 0 R
+/FirstChar 49
+/LastChar 117
+/Widths 898 0 R
+/Encoding 892 0 R
+/ToUnicode 952 0 R
+>>
+endobj
+953 0 obj
+<<
+/Length 664
+/Filter /FlateDecode
+>>
+stream
+xÚmTMoâ0½çWx•ÚĊvB°+„8l[´Ú+ML7RI˘ŭ÷;oìnµDoĈ3óŜŒ?n~<ï&YĠşI|/Ċ‹;·—t“üçĦ‹nnŠĥĵœ\3<:Wıj\=?ˆç-wn·ùĥĜ6ġpGÁÛĤ|żTnŒúʽĠÍgxÄíŜŭžtİ7ŭ„~qûzx§ġïK‚lqµ‡ŝrŭın›Ħî”äX7UŜž ûM·˜ŽjŽuSġA€x…œHiQĠċ,ŝ–'
+?·"œ@>q¸hx ×·ĵô=Ŭl~1ĝÖâ֍ğ>*]Û!‹˙üïĴ§MôħBaİ
+endstream
+endobj
+255 0 obj
+<<
+/Type /Font
+/Subtype /Type1
+/BaseFont /VNKRNT+NimbusRomNo9L-Regu
+/FontDescriptor 936 0 R
+/FirstChar 2
+/LastChar 223
+/Widths 908 0 R
+/Encoding 892 0 R
+/ToUnicode 953 0 R
+>>
+endobj
+954 0 obj
+<<
+/Length 665
+/Filter /FlateDecode
+>>
+stream
+xÚmTÁn£0½óŜCöĈ6„ĜU‰@"ċ°mĠTнĤàt‘@„ú÷;olšvğR‚ž3óŜŒm~<î&YĠ¸I|+Ċ“;µçt“ü狊ĥ<]3Ü;Wıj|{ş}[îÜ ómħmêᆂ·MùvÜġ˙ •{­›KtÄġ³û=é†c_›~B?‰Àçzx£€oïâBŝċúSŬ6wBŬJ)‰X7UŜaŭMƒĵ˜Ž†uSġÁƒx£HiQĠċVü,4$ïŜOƒ;n›C-búD/OC˙ÎŜn˘éC_ın^ĊġĊÑğs×½9X2Z.EċTú½ß˜~ëëŭó{ç„ĉµò~Êĥr§n_ş~ßĵşh!ċR,6›eäšêŸw*¤ĵĈĜ”bċ•¨%kà ó‚e+K­Ó„òšó$a"1Ûx‘*Âs.$S5ˆ6PÑ>ĊĈ„m„ÊA Âú‘ĦF–s 5²µïŠ‰577v‘ĜħĞòϧ+uaяö6Rúó:Ĵ!,½‰É™ÏCÛÒxĵĥgÀ+Ñ§Ìy*JcL’ù|Ìú*†mĊú:fŝ“vŠuòiüİÙWUꧏÉİı×\gŒ%ëŻ<ϚŜí"áġâœs–0û_:Ìúİôŭ3x0ŠkjÌhƒyîIYx0aCáÍÌün£Og™3ĉ“$cx0ç²³ò<<Ŝv5šO#ĉܵï‘u7Œĝ´A ñ6ì*ës™Z˜ Z¨cƒΜ-üÜ eYk–sL¸Ê
+?·"œ@>q¸hĝ|ÜßòÜ÷tµù›Á·÷µnÜÇgk;dñŸżGGЇMô€@cĥ
+endstream
+endobj
+260 0 obj
+<<
+/Type /Font
+/Subtype /Type1
+/BaseFont /QSKDAP+NimbusRomNo9L-ReguItal
+/FontDescriptor 940 0 R
+/FirstChar 2
+/LastChar 150
+/Widths 903 0 R
+/Encoding 892 0 R
+/ToUnicode 954 0 R
+>>
+endobj
+955 0 obj
+<<
+/Length 665
+/Filter /FlateDecode
+>>
+stream
+xÚmTÁn£0½óŜCöĈ6„ĜU‰@"ċ°mĠTнĤàt‘@„ú÷;olšvğR‚ž3óŜŒm~<î&YĠ¸I|+Ċ“;µçt“ü狊ĥ<]3Ü;Wıj|{ş}[îÜ ómħmêᆂ·MùvÜġ˙ •{­›KtÄġ³û=é†cߚ~B?‰Àçzx£€oïâBŝċúSŬ6wBŬJ)‰X7UŜaŭMƒĵ˜Ž†uSġÁƒx£HiQĠċVü,4$ïŜOƒ;n›C-búD/OC˙ÎŜn˘éC_ın^ĊġĊÑğs×½9X2Z.EċTú½ß˜~ëëŭó{ç„ĉµò~Êĥr§n_ş~ßĵşh!ċR,6›eäšêŸw*¤ĵĈĜ”bċ•¨%kà ó‚e+K­Ó„òšó$a"1Ûx‘*Âs.$S5ˆ6PÑ>ĊĈ„m„ÊA Âú‘ĦF–s 5²µïŠ‰577v‘ĜħĞòϧ+uaяö6Rúó:Ĵ!,½‰É™ÏCÛÒxĵĥgÀ+Ñ§Ìy*JcL’ù|Ìú*†mĊú:fŝ“vŠuòiüİÙWUꧏÉİı×\gŒ%ëŻ<ϚŜí"áġâœs–0û_:Ìúİôŭ3x0ŠkjÌhƒyîIYx0aCáÍÌün£Og™3ĉ“$cx0ç²³ò<<Ŝv5šO#ĉܵï‘u7Œĝ´A ñ6ì*ës™Z˜ Z¨cƒΜ-üÜ eYk–sL¸Ê
+?·"œ@>q¸hĝ|ÜßòÜ÷tµù›Á·÷µnÜÇgk;dñŸżGGЇMôñcÔ
+endstream
+endobj
+381 0 obj
+<<
+/Type /Font
+/Subtype /Type1
+/BaseFont /NDDFNL+NimbusRomNo9L-Regu-Slant_167
+/FontDescriptor 938 0 R
+/FirstChar 83
+/LastChar 116
+/Widths 900 0 R
+/Encoding 892 0 R
+/ToUnicode 955 0 R
+>>
+endobj
+956 0 obj
+<<
+/Length 345
+/Filter /FlateDecode
+>>
+stream
+xÚmQÁnƒ0 ½ç+ĵCö@ í­BH[‡µUİĤ]!1]$HP“ú÷KtĠÔC"ÛïÙyÏYĵœŠà•Ğ
+ƒíšÂ4`˙QvdħHZ”ŭ‘#ŸQ³ƒ“VĴÀ–û<ÍèW–œKÖ gÖsÒ^…ü£¸w`yÁŻ`hLP ˘é… ¨£^DßXÊl Kà>QĦä˘5ÔŜ%ßĞÖ0$œD@8ËŞ…äzR•ÓE˘ pÁú)ó7kí&\sq3=ĥıĴ‰cÏ4½y}+5G-䖏Â,P ]× ”$ pĴí<ëûPĥáwwĈċÖ!l|š˜âhş’Ħ.ċILiq–%%˙‡Ñħ£ŞÇÔĉp;#ìğÔvFjgĜ… ‰£1Ž|œñ8}bğwÜFîĜ µġĉ×ĉE;ıBâ}³ê\—?ŝKĉßwÙ1#żġÂÑ[
+endstream
+endobj
+261 0 obj
+<<
+/Type /Font
+/Subtype /Type1
+/BaseFont /RJWSKY+MarVoSym
+/FontDescriptor 918 0 R
+/FirstChar 105
+/LastChar 105
+/Widths 902 0 R
+/ToUnicode 956 0 R
+>>
+endobj
+262 0 obj
+<<
+/Type /Pages
+/Count 6
+/Parent 957 0 R
+/Kids [253 0 R 302 0 R 328 0 R 334 0 R 339 0 R 345 0 R]
+>>
+endobj
+355 0 obj
+<<
+/Type /Pages
+/Count 6
+/Parent 957 0 R
+/Kids [353 0 R 360 0 R 364 0 R 379 0 R 390 0 R 397 0 R]
+>>
+endobj
+407 0 obj
+<<
+/Type /Pages
+/Count 6
+/Parent 957 0 R
+/Kids [404 0 R 413 0 R 424 0 R 438 0 R 446 0 R 456 0 R]
+>>
+endobj
+467 0 obj
+<<
+/Type /Pages
+/Count 6
+/Parent 957 0 R
+/Kids [465 0 R 470 0 R 476 0 R 481 0 R 488 0 R 493 0 R]
+>>
+endobj
+498 0 obj
+<<
+/Type /Pages
+/Count 6
+/Parent 957 0 R
+/Kids [496 0 R 502 0 R 505 0 R 511 0 R 517 0 R 520 0 R]
+>>
+endobj
+527 0 obj
+<<
+/Type /Pages
+/Count 6
+/Parent 957 0 R
+/Kids [525 0 R 529 0 R 532 0 R 544 0 R 551 0 R 559 0 R]
+>>
+endobj
+567 0 obj
+<<
+/Type /Pages
+/Count 6
+/Parent 958 0 R
+/Kids [565 0 R 574 0 R 584 0 R 593 0 R 606 0 R 612 0 R]
+>>
+endobj
+621 0 obj
+<<
+/Type /Pages
+/Count 6
+/Parent 958 0 R
+/Kids [619 0 R 665 0 R 696 0 R 715 0 R 732 0 R 745 0 R]
+>>
+endobj
+766 0 obj
+<<
+/Type /Pages
+/Count 6
+/Parent 958 0 R
+/Kids [764 0 R 781 0 R 799 0 R 806 0 R 813 0 R 820 0 R]
+>>
+endobj
+831 0 obj
+<<
+/Type /Pages
+/Count 6
+/Parent 958 0 R
+/Kids [829 0 R 839 0 R 843 0 R 846 0 R 849 0 R 852 0 R]
+>>
+endobj
+857 0 obj
+<<
+/Type /Pages
+/Count 4
+/Parent 958 0 R
+/Kids [855 0 R 868 0 R 886 0 R 890 0 R]
+>>
+endobj
+957 0 obj
+<<
+/Type /Pages
+/Count 36
+/Parent 959 0 R
+/Kids [262 0 R 355 0 R 407 0 R 467 0 R 498 0 R 527 0 R]
+>>
+endobj
+958 0 obj
+<<
+/Type /Pages
+/Count 28
+/Parent 959 0 R
+/Kids [567 0 R 621 0 R 766 0 R 831 0 R 857 0 R]
+>>
+endobj
+959 0 obj
+<<
+/Type /Pages
+/Count 64
+/Kids [957 0 R 958 0 R]
+>>
+endobj
+960 0 obj
+<<
+/Type /Outlines
+/First 3 0 R
+/Last 247 0 R
+/Count 16
+>>
+endobj
+247 0 obj
+<<
+/Title 248 0 R
+/A 245 0 R
+/Parent 960 0 R
+/Prev 243 0 R
+>>
+endobj
+243 0 obj
+<<
+/Title 244 0 R
+/A 241 0 R
+/Parent 960 0 R
+/Prev 239 0 R
+/Next 247 0 R
+>>
+endobj
+239 0 obj
+<<
+/Title 240 0 R
+/A 237 0 R
+/Parent 960 0 R
+/Prev 223 0 R
+/Next 243 0 R
+>>
+endobj
+235 0 obj
+<<
+/Title 236 0 R
+/A 233 0 R
+/Parent 223 0 R
+/Prev 231 0 R
+>>
+endobj
+231 0 obj
+<<
+/Title 232 0 R
+/A 229 0 R
+/Parent 223 0 R
+/Prev 227 0 R
+/Next 235 0 R
+>>
+endobj
+227 0 obj
+<<
+/Title 228 0 R
+/A 225 0 R
+/Parent 223 0 R
+/Next 231 0 R
+>>
+endobj
+223 0 obj
+<<
+/Title 224 0 R
+/A 221 0 R
+/Parent 960 0 R
+/Prev 219 0 R
+/Next 239 0 R
+/First 227 0 R
+/Last 235 0 R
+/Count -3
+>>
+endobj
+219 0 obj
+<<
+/Title 220 0 R
+/A 217 0 R
+/Parent 960 0 R
+/Prev 199 0 R
+/Next 223 0 R
+>>
+endobj
+215 0 obj
+<<
+/Title 216 0 R
+/A 213 0 R
+/Parent 199 0 R
+/Prev 211 0 R
+>>
+endobj
+211 0 obj
+<<
+/Title 212 0 R
+/A 209 0 R
+/Parent 199 0 R
+/Prev 207 0 R
+/Next 215 0 R
+>>
+endobj
+207 0 obj
+<<
+/Title 208 0 R
+/A 205 0 R
+/Parent 199 0 R
+/Prev 203 0 R
+/Next 211 0 R
+>>
+endobj
+203 0 obj
+<<
+/Title 204 0 R
+/A 201 0 R
+/Parent 199 0 R
+/Next 207 0 R
+>>
+endobj
+199 0 obj
+<<
+/Title 200 0 R
+/A 197 0 R
+/Parent 960 0 R
+/Prev 195 0 R
+/Next 219 0 R
+/First 203 0 R
+/Last 215 0 R
+/Count -4
+>>
+endobj
+195 0 obj
+<<
+/Title 196 0 R
+/A 193 0 R
+/Parent 960 0 R
+/Prev 191 0 R
+/Next 199 0 R
+>>
+endobj
+191 0 obj
+<<
+/Title 192 0 R
+/A 189 0 R
+/Parent 960 0 R
+/Prev 115 0 R
+/Next 195 0 R
+>>
+endobj
+187 0 obj
+<<
+/Title 188 0 R
+/A 185 0 R
+/Parent 115 0 R
+/Prev 183 0 R
+>>
+endobj
+183 0 obj
+<<
+/Title 184 0 R
+/A 181 0 R
+/Parent 115 0 R
+/Prev 179 0 R
+/Next 187 0 R
+>>
+endobj
+179 0 obj
+<<
+/Title 180 0 R
+/A 177 0 R
+/Parent 115 0 R
+/Prev 175 0 R
+/Next 183 0 R
+>>
+endobj
+175 0 obj
+<<
+/Title 176 0 R
+/A 173 0 R
+/Parent 115 0 R
+/Prev 171 0 R
+/Next 179 0 R
+>>
+endobj
+171 0 obj
+<<
+/Title 172 0 R
+/A 169 0 R
+/Parent 115 0 R
+/Prev 167 0 R
+/Next 175 0 R
+>>
+endobj
+167 0 obj
+<<
+/Title 168 0 R
+/A 165 0 R
+/Parent 115 0 R
+/Prev 163 0 R
+/Next 171 0 R
+>>
+endobj
+163 0 obj
+<<
+/Title 164 0 R
+/A 161 0 R
+/Parent 115 0 R
+/Prev 159 0 R
+/Next 167 0 R
+>>
+endobj
+159 0 obj
+<<
+/Title 160 0 R
+/A 157 0 R
+/Parent 115 0 R
+/Prev 155 0 R
+/Next 163 0 R
+>>
+endobj
+155 0 obj
+<<
+/Title 156 0 R
+/A 153 0 R
+/Parent 115 0 R
+/Prev 151 0 R
+/Next 159 0 R
+>>
+endobj
+151 0 obj
+<<
+/Title 152 0 R
+/A 149 0 R
+/Parent 115 0 R
+/Prev 147 0 R
+/Next 155 0 R
+>>
+endobj
+147 0 obj
+<<
+/Title 148 0 R
+/A 145 0 R
+/Parent 115 0 R
+/Prev 143 0 R
+/Next 151 0 R
+>>
+endobj
+143 0 obj
+<<
+/Title 144 0 R
+/A 141 0 R
+/Parent 115 0 R
+/Prev 139 0 R
+/Next 147 0 R
+>>
+endobj
+139 0 obj
+<<
+/Title 140 0 R
+/A 137 0 R
+/Parent 115 0 R
+/Prev 135 0 R
+/Next 143 0 R
+>>
+endobj
+135 0 obj
+<<
+/Title 136 0 R
+/A 133 0 R
+/Parent 115 0 R
+/Prev 131 0 R
+/Next 139 0 R
+>>
+endobj
+131 0 obj
+<<
+/Title 132 0 R
+/A 129 0 R
+/Parent 115 0 R
+/Prev 127 0 R
+/Next 135 0 R
+>>
+endobj
+127 0 obj
+<<
+/Title 128 0 R
+/A 125 0 R
+/Parent 115 0 R
+/Prev 123 0 R
+/Next 131 0 R
+>>
+endobj
+123 0 obj
+<<
+/Title 124 0 R
+/A 121 0 R
+/Parent 115 0 R
+/Prev 119 0 R
+/Next 127 0 R
+>>
+endobj
+119 0 obj
+<<
+/Title 120 0 R
+/A 117 0 R
+/Parent 115 0 R
+/Next 123 0 R
+>>
+endobj
+115 0 obj
+<<
+/Title 116 0 R
+/A 113 0 R
+/Parent 960 0 R
+/Prev 107 0 R
+/Next 191 0 R
+/First 119 0 R
+/Last 187 0 R
+/Count -18
+>>
+endobj
+111 0 obj
+<<
+/Title 112 0 R
+/A 109 0 R
+/Parent 107 0 R
+>>
+endobj
+107 0 obj
+<<
+/Title 108 0 R
+/A 105 0 R
+/Parent 960 0 R
+/Prev 75 0 R
+/Next 115 0 R
+/First 111 0 R
+/Last 111 0 R
+/Count -1
+>>
+endobj
+103 0 obj
+<<
+/Title 104 0 R
+/A 101 0 R
+/Parent 75 0 R
+/Prev 99 0 R
+>>
+endobj
+99 0 obj
+<<
+/Title 100 0 R
+/A 97 0 R
+/Parent 75 0 R
+/Prev 95 0 R
+/Next 103 0 R
+>>
+endobj
+95 0 obj
+<<
+/Title 96 0 R
+/A 93 0 R
+/Parent 75 0 R
+/Prev 91 0 R
+/Next 99 0 R
+>>
+endobj
+91 0 obj
+<<
+/Title 92 0 R
+/A 89 0 R
+/Parent 75 0 R
+/Prev 87 0 R
+/Next 95 0 R
+>>
+endobj
+87 0 obj
+<<
+/Title 88 0 R
+/A 85 0 R
+/Parent 75 0 R
+/Prev 83 0 R
+/Next 91 0 R
+>>
+endobj
+83 0 obj
+<<
+/Title 84 0 R
+/A 81 0 R
+/Parent 75 0 R
+/Prev 79 0 R
+/Next 87 0 R
+>>
+endobj
+79 0 obj
+<<
+/Title 80 0 R
+/A 77 0 R
+/Parent 75 0 R
+/Next 83 0 R
+>>
+endobj
+75 0 obj
+<<
+/Title 76 0 R
+/A 73 0 R
+/Parent 960 0 R
+/Prev 67 0 R
+/Next 107 0 R
+/First 79 0 R
+/Last 103 0 R
+/Count -7
+>>
+endobj
+71 0 obj
+<<
+/Title 72 0 R
+/A 69 0 R
+/Parent 67 0 R
+>>
+endobj
+67 0 obj
+<<
+/Title 68 0 R
+/A 65 0 R
+/Parent 960 0 R
+/Prev 51 0 R
+/Next 75 0 R
+/First 71 0 R
+/Last 71 0 R
+/Count -1
+>>
+endobj
+63 0 obj
+<<
+/Title 64 0 R
+/A 61 0 R
+/Parent 51 0 R
+/Prev 59 0 R
+>>
+endobj
+59 0 obj
+<<
+/Title 60 0 R
+/A 57 0 R
+/Parent 51 0 R
+/Prev 55 0 R
+/Next 63 0 R
+>>
+endobj
+55 0 obj
+<<
+/Title 56 0 R
+/A 53 0 R
+/Parent 51 0 R
+/Next 59 0 R
+>>
+endobj
+51 0 obj
+<<
+/Title 52 0 R
+/A 49 0 R
+/Parent 960 0 R
+/Prev 11 0 R
+/Next 67 0 R
+/First 55 0 R
+/Last 63 0 R
+/Count -3
+>>
+endobj
+47 0 obj
+<<
+/Title 48 0 R
+/A 45 0 R
+/Parent 11 0 R
+/Prev 43 0 R
+>>
+endobj
+43 0 obj
+<<
+/Title 44 0 R
+/A 41 0 R
+/Parent 11 0 R
+/Prev 39 0 R
+/Next 47 0 R
+>>
+endobj
+39 0 obj
+<<
+/Title 40 0 R
+/A 37 0 R
+/Parent 11 0 R
+/Prev 35 0 R
+/Next 43 0 R
+>>
+endobj
+35 0 obj
+<<
+/Title 36 0 R
+/A 33 0 R
+/Parent 11 0 R
+/Prev 31 0 R
+/Next 39 0 R
+>>
+endobj
+31 0 obj
+<<
+/Title 32 0 R
+/A 29 0 R
+/Parent 11 0 R
+/Prev 27 0 R
+/Next 35 0 R
+>>
+endobj
+27 0 obj
+<<
+/Title 28 0 R
+/A 25 0 R
+/Parent 11 0 R
+/Prev 23 0 R
+/Next 31 0 R
+>>
+endobj
+23 0 obj
+<<
+/Title 24 0 R
+/A 21 0 R
+/Parent 11 0 R
+/Prev 19 0 R
+/Next 27 0 R
+>>
+endobj
+19 0 obj
+<<
+/Title 20 0 R
+/A 17 0 R
+/Parent 11 0 R
+/Prev 15 0 R
+/Next 23 0 R
+>>
+endobj
+15 0 obj
+<<
+/Title 16 0 R
+/A 13 0 R
+/Parent 11 0 R
+/Next 19 0 R
+>>
+endobj
+11 0 obj
+<<
+/Title 12 0 R
+/A 9 0 R
+/Parent 960 0 R
+/Prev 7 0 R
+/Next 51 0 R
+/First 15 0 R
+/Last 47 0 R
+/Count -9
+>>
+endobj
+7 0 obj
+<<
+/Title 8 0 R
+/A 5 0 R
+/Parent 960 0 R
+/Prev 3 0 R
+/Next 11 0 R
+>>
+endobj
+3 0 obj
+<<
+/Title 4 0 R
+/A 1 0 R
+/Parent 960 0 R
+/Next 7 0 R
+>>
+endobj
+961 0 obj
+<<
+/Type /Catalog
+/Pages 959 0 R
+/Outlines 960 0 R
+/PageMode/UseOutlines
+>>
+endobj
+962 0 obj
+<<
+/Producer (MiKTeX pdfTeX-1.40.24)
+/Author(\376\377\000A\000x\000e\000l\000\040\000S\000o\000m\000m\000e\000r\000f\000e\000l\000d\000t\000,\000\040\000`\000\040\000`\000\045\000%\000%\000`\000\043\000`\000\046\0001\0002\000\137\000`\000\137\000\137\000~\000~\000~\tru\000e)/Title(\376\377\000C\000u\000s\000t\000o\000m\000i\000z\000i\000n\000g\000\040\000c\000a\000p\000t\000i\000o\000n\000s\000\040\000o\000f\000\040\000f\000l\000o\000a\000t\000i\000n\000g\000\040\000e\000n\000v\000i\000r\000o\000n\000m\000e\000n\000t\000s)/Subject(\376\377\000C\000u\000s\000t\000o\000m\000i\000z\000i\000n\000g\000\040\000c\000a\000p\000t\000i\000o\000n\000s\000\040\000\050\000A\000R\000\051)/Creator(LaTeX with hyperref)/Keywords(\376\377\000L\000a\000T\000e\000X\000,\000\040\000p\000a\000c\000k\000a\000g\000e\000,\000\040\000c\000a\000p\000t\000i\000o\000n)
+/CreationDate (D:20220220185622+01'00')
+/ModDate (D:20220220185622+01'00')
+/Trapped /False
+/PTEX.Fullbanner (This is MiKTeX-pdfTeX 4.10.0 (1.40.24))
+>>
+endobj
+xref
+0 963
+0000000000 65535 f
+0000000015 00000 n
+0000020126 00000 n
+0000406910 00000 n
+0000000054 00000 n
+0000000120 00000 n
+0000027341 00000 n
+0000406826 00000 n
+0000000159 00000 n
+0000000294 00000 n
+0000029947 00000 n
+0000406703 00000 n
+0000000334 00000 n
+0000000409 00000 n
+0000029999 00000 n
+0000406629 00000 n
+0000000450 00000 n
+0000000550 00000 n
+0000038170 00000 n
+0000406542 00000 n
+0000000591 00000 n
+0000000706 00000 n
+0000040585 00000 n
+0000406455 00000 n
+0000000747 00000 n
+0000000822 00000 n
+0000047831 00000 n
+0000406368 00000 n
+0000000863 00000 n
+0000001110 00000 n
+0000054228 00000 n
+0000406281 00000 n
+0000001151 00000 n
+0000001231 00000 n
+0000054280 00000 n
+0000406194 00000 n
+0000001272 00000 n
+0000001347 00000 n
+0000062379 00000 n
+0000406107 00000 n
+0000001388 00000 n
+0000001463 00000 n
+0000062431 00000 n
+0000406020 00000 n
+0000001504 00000 n
+0000001579 00000 n
+0000066758 00000 n
+0000405946 00000 n
+0000001620 00000 n
+0000001695 00000 n
+0000070963 00000 n
+0000405821 00000 n
+0000001736 00000 n
+0000001816 00000 n
+0000071015 00000 n
+0000405747 00000 n
+0000001857 00000 n
+0000002010 00000 n
+0000078456 00000 n
+0000405660 00000 n
+0000002051 00000 n
+0000002179 00000 n
+0000082638 00000 n
+0000405586 00000 n
+0000002220 00000 n
+0000002353 00000 n
+0000089611 00000 n
+0000405461 00000 n
+0000002394 00000 n
+0000002517 00000 n
+0000094662 00000 n
+0000405400 00000 n
+0000002558 00000 n
+0000002691 00000 n
+0000102843 00000 n
+0000405273 00000 n
+0000002732 00000 n
+0000002908 00000 n
+0000102895 00000 n
+0000405199 00000 n
+0000002949 00000 n
+0000003219 00000 n
+0000102947 00000 n
+0000405112 00000 n
+0000003260 00000 n
+0000003487 00000 n
+0000105714 00000 n
+0000405025 00000 n
+0000003528 00000 n
+0000003608 00000 n
+0000105766 00000 n
+0000404938 00000 n
+0000003649 00000 n
+0000003931 00000 n
+0000107981 00000 n
+0000404851 00000 n
+0000003972 00000 n
+0000004189 00000 n
+0000108033 00000 n
+0000404762 00000 n
+0000004230 00000 n
+0000004405 00000 n
+0000108085 00000 n
+0000404685 00000 n
+0000004448 00000 n
+0000004529 00000 n
+0000110086 00000 n
+0000404554 00000 n
+0000004572 00000 n
+0000004777 00000 n
+0000110139 00000 n
+0000404489 00000 n
+0000004820 00000 n
+0000004972 00000 n
+0000113711 00000 n
+0000404356 00000 n
+0000005015 00000 n
+0000005149 00000 n
+0000118144 00000 n
+0000404277 00000 n
+0000005192 00000 n
+0000005293 00000 n
+0000118197 00000 n
+0000404184 00000 n
+0000005336 00000 n
+0000005412 00000 n
+0000118250 00000 n
+0000404091 00000 n
+0000005455 00000 n
+0000005546 00000 n
+0000121832 00000 n
+0000403998 00000 n
+0000005589 00000 n
+0000005675 00000 n
+0000121885 00000 n
+0000403905 00000 n
+0000005718 00000 n
+0000005933 00000 n
+0000121938 00000 n
+0000403812 00000 n
+0000005976 00000 n
+0000006067 00000 n
+0000125087 00000 n
+0000403719 00000 n
+0000006110 00000 n
+0000006191 00000 n
+0000128792 00000 n
+0000403626 00000 n
+0000006234 00000 n
+0000006325 00000 n
+0000128845 00000 n
+0000403533 00000 n
+0000006368 00000 n
+0000006464 00000 n
+0000132563 00000 n
+0000403440 00000 n
+0000006507 00000 n
+0000006603 00000 n
+0000132616 00000 n
+0000403347 00000 n
+0000006646 00000 n
+0000006732 00000 n
+0000132668 00000 n
+0000403254 00000 n
+0000006775 00000 n
+0000006871 00000 n
+0000136223 00000 n
+0000403161 00000 n
+0000006914 00000 n
+0000007010 00000 n
+0000136276 00000 n
+0000403068 00000 n
+0000007053 00000 n
+0000007144 00000 n
+0000140966 00000 n
+0000402975 00000 n
+0000007187 00000 n
+0000007288 00000 n
+0000141019 00000 n
+0000402882 00000 n
+0000007331 00000 n
+0000007498 00000 n
+0000141072 00000 n
+0000402789 00000 n
+0000007541 00000 n
+0000007667 00000 n
+0000141123 00000 n
+0000402710 00000 n
+0000007710 00000 n
+0000007801 00000 n
+0000144760 00000 n
+0000402617 00000 n
+0000007844 00000 n
+0000007963 00000 n
+0000144813 00000 n
+0000402524 00000 n
+0000008006 00000 n
+0000008077 00000 n
+0000152616 00000 n
+0000402392 00000 n
+0000008120 00000 n
+0000008274 00000 n
+0000152669 00000 n
+0000402313 00000 n
+0000008317 00000 n
+0000008403 00000 n
+0000159098 00000 n
+0000402220 00000 n
+0000008446 00000 n
+0000008537 00000 n
+0000164266 00000 n
+0000402127 00000 n
+0000008580 00000 n
+0000008671 00000 n
+0000178824 00000 n
+0000402048 00000 n
+0000008714 00000 n
+0000008795 00000 n
+0000194267 00000 n
+0000401955 00000 n
+0000008838 00000 n
+0000008957 00000 n
+0000197042 00000 n
+0000401823 00000 n
+0000009000 00000 n
+0000009205 00000 n
+0000197095 00000 n
+0000401744 00000 n
+0000009248 00000 n
+0000009362 00000 n
+0000200292 00000 n
+0000401651 00000 n
+0000009405 00000 n
+0000009524 00000 n
+0000204107 00000 n
+0000401572 00000 n
+0000009567 00000 n
+0000009681 00000 n
+0000208781 00000 n
+0000401479 00000 n
+0000009724 00000 n
+0000009952 00000 n
+0000212007 00000 n
+0000401386 00000 n
+0000009995 00000 n
+0000010266 00000 n
+0000216940 00000 n
+0000401307 00000 n
+0000010309 00000 n
+0000012821 00000 n
+0000013011 00000 n
+0000013158 00000 n
+0000013369 00000 n
+0000012666 00000 n
+0000010387 00000 n
+0000396987 00000 n
+0000387120 00000 n
+0000389169 00000 n
+0000395107 00000 n
+0000391981 00000 n
+0000397925 00000 n
+0000399496 00000 n
+0000399662 00000 n
+0000217205 00000 n
+0000015135 00000 n
+0000015280 00000 n
+0000015426 00000 n
+0000015572 00000 n
+0000015718 00000 n
+0000015864 00000 n
+0000016011 00000 n
+0000016158 00000 n
+0000016304 00000 n
+0000016450 00000 n
+0000016596 00000 n
+0000016743 00000 n
+0000016890 00000 n
+0000017037 00000 n
+0000017184 00000 n
+0000017330 00000 n
+0000017477 00000 n
+0000017624 00000 n
+0000017771 00000 n
+0000017918 00000 n
+0000018061 00000 n
+0000018208 00000 n
+0000018355 00000 n
+0000018502 00000 n
+0000018649 00000 n
+0000018797 00000 n
+0000018945 00000 n
+0000019093 00000 n
+0000019241 00000 n
+0000019389 00000 n
+0000019536 00000 n
+0000019683 00000 n
+0000019831 00000 n
+0000019979 00000 n
+0000021535 00000 n
+0000021682 00000 n
+0000021830 00000 n
+0000020177 00000 n
+0000014732 00000 n
+0000013523 00000 n
+0000021978 00000 n
+0000022126 00000 n
+0000022272 00000 n
+0000022417 00000 n
+0000022565 00000 n
+0000022713 00000 n
+0000022861 00000 n
+0000023008 00000 n
+0000023154 00000 n
+0000023302 00000 n
+0000023450 00000 n
+0000023598 00000 n
+0000023746 00000 n
+0000023894 00000 n
+0000024042 00000 n
+0000024190 00000 n
+0000024337 00000 n
+0000024485 00000 n
+0000024633 00000 n
+0000024781 00000 n
+0000024929 00000 n
+0000025076 00000 n
+0000025224 00000 n
+0000025372 00000 n
+0000021196 00000 n
+0000020290 00000 n
+0000384996 00000 n
+0000027049 00000 n
+0000027195 00000 n
+0000027392 00000 n
+0000026902 00000 n
+0000025485 00000 n
+0000029653 00000 n
+0000029800 00000 n
+0000030051 00000 n
+0000029506 00000 n
+0000027533 00000 n
+0000032463 00000 n
+0000032610 00000 n
+0000032757 00000 n
+0000032955 00000 n
+0000032308 00000 n
+0000030178 00000 n
+0000032904 00000 n
+0000035114 00000 n
+0000035261 00000 n
+0000035408 00000 n
+0000035554 00000 n
+0000035700 00000 n
+0000034951 00000 n
+0000033095 00000 n
+0000399779 00000 n
+0000037731 00000 n
+0000037878 00000 n
+0000038024 00000 n
+0000038222 00000 n
+0000037576 00000 n
+0000035813 00000 n
+0000040637 00000 n
+0000040689 00000 n
+0000040466 00000 n
+0000038363 00000 n
+0000042860 00000 n
+0000043008 00000 n
+0000043156 00000 n
+0000043304 00000 n
+0000043452 00000 n
+0000043600 00000 n
+0000043748 00000 n
+0000043895 00000 n
+0000044042 00000 n
+0000044189 00000 n
+0000044336 00000 n
+0000044483 00000 n
+0000044630 00000 n
+0000042633 00000 n
+0000040843 00000 n
+0000398867 00000 n
+0000390105 00000 n
+0000396045 00000 n
+0000047389 00000 n
+0000047537 00000 n
+0000047684 00000 n
+0000050786 00000 n
+0000050934 00000 n
+0000047935 00000 n
+0000047234 00000 n
+0000044813 00000 n
+0000047883 00000 n
+0000222150 00000 n
+0000051082 00000 n
+0000051229 00000 n
+0000051376 00000 n
+0000050623 00000 n
+0000048076 00000 n
+0000221939 00000 n
+0000223141 00000 n
+0000053789 00000 n
+0000053935 00000 n
+0000054332 00000 n
+0000053634 00000 n
+0000051503 00000 n
+0000054081 00000 n
+0000399896 00000 n
+0000057575 00000 n
+0000057720 00000 n
+0000057866 00000 n
+0000058012 00000 n
+0000058158 00000 n
+0000057412 00000 n
+0000054473 00000 n
+0000392917 00000 n
+0000061352 00000 n
+0000061499 00000 n
+0000061646 00000 n
+0000062232 00000 n
+0000061793 00000 n
+0000061939 00000 n
+0000062085 00000 n
+0000062586 00000 n
+0000061165 00000 n
+0000058312 00000 n
+0000385978 00000 n
+0000062483 00000 n
+0000062535 00000 n
+0000222044 00000 n
+0000065725 00000 n
+0000065873 00000 n
+0000066021 00000 n
+0000066169 00000 n
+0000066317 00000 n
+0000066464 00000 n
+0000066611 00000 n
+0000066861 00000 n
+0000065538 00000 n
+0000062740 00000 n
+0000066810 00000 n
+0000394182 00000 n
+0000221515 00000 n
+0000217099 00000 n
+0000070492 00000 n
+0000071067 00000 n
+0000070345 00000 n
+0000067029 00000 n
+0000070728 00000 n
+0000073644 00000 n
+0000073791 00000 n
+0000073938 00000 n
+0000074085 00000 n
+0000077281 00000 n
+0000077429 00000 n
+0000074232 00000 n
+0000073481 00000 n
+0000071208 00000 n
+0000077577 00000 n
+0000077723 00000 n
+0000077869 00000 n
+0000078015 00000 n
+0000078161 00000 n
+0000078308 00000 n
+0000078508 00000 n
+0000077086 00000 n
+0000074372 00000 n
+0000400013 00000 n
+0000080455 00000 n
+0000080655 00000 n
+0000080316 00000 n
+0000078649 00000 n
+0000080603 00000 n
+0000082344 00000 n
+0000082491 00000 n
+0000082690 00000 n
+0000082197 00000 n
+0000080782 00000 n
+0000084778 00000 n
+0000084926 00000 n
+0000085180 00000 n
+0000084631 00000 n
+0000082804 00000 n
+0000085074 00000 n
+0000085127 00000 n
+0000086424 00000 n
+0000086572 00000 n
+0000086720 00000 n
+0000086277 00000 n
+0000085280 00000 n
+0000221674 00000 n
+0000089465 00000 n
+0000089663 00000 n
+0000089326 00000 n
+0000086848 00000 n
+0000091877 00000 n
+0000091758 00000 n
+0000089804 00000 n
+0000400130 00000 n
+0000094370 00000 n
+0000094516 00000 n
+0000094712 00000 n
+0000094223 00000 n
+0000092018 00000 n
+0000096494 00000 n
+0000096375 00000 n
+0000094839 00000 n
+0000098629 00000 n
+0000099734 00000 n
+0000099882 00000 n
+0000100081 00000 n
+0000098482 00000 n
+0000096608 00000 n
+0000100030 00000 n
+0000099562 00000 n
+0000216993 00000 n
+0000102999 00000 n
+0000102724 00000 n
+0000100209 00000 n
+0000105818 00000 n
+0000105595 00000 n
+0000103153 00000 n
+0000388263 00000 n
+0000391045 00000 n
+0000108138 00000 n
+0000107862 00000 n
+0000105987 00000 n
+0000400247 00000 n
+0000108904 00000 n
+0000108785 00000 n
+0000108279 00000 n
+0000110192 00000 n
+0000109967 00000 n
+0000109018 00000 n
+0000112971 00000 n
+0000113119 00000 n
+0000113267 00000 n
+0000113415 00000 n
+0000113563 00000 n
+0000117110 00000 n
+0000117258 00000 n
+0000117406 00000 n
+0000117554 00000 n
+0000113816 00000 n
+0000112800 00000 n
+0000110319 00000 n
+0000113764 00000 n
+0000117702 00000 n
+0000117849 00000 n
+0000117997 00000 n
+0000118303 00000 n
+0000116923 00000 n
+0000113957 00000 n
+0000217046 00000 n
+0000217152 00000 n
+0000121389 00000 n
+0000121537 00000 n
+0000121685 00000 n
+0000122042 00000 n
+0000121234 00000 n
+0000118444 00000 n
+0000121991 00000 n
+0000221462 00000 n
+0000124939 00000 n
+0000125140 00000 n
+0000124800 00000 n
+0000122196 00000 n
+0000400364 00000 n
+0000221568 00000 n
+0000128496 00000 n
+0000128644 00000 n
+0000131824 00000 n
+0000131972 00000 n
+0000128898 00000 n
+0000128349 00000 n
+0000125307 00000 n
+0000221621 00000 n
+0000132120 00000 n
+0000132267 00000 n
+0000132415 00000 n
+0000135488 00000 n
+0000135636 00000 n
+0000135782 00000 n
+0000132721 00000 n
+0000131653 00000 n
+0000129052 00000 n
+0000221727 00000 n
+0000221780 00000 n
+0000221833 00000 n
+0000135929 00000 n
+0000136076 00000 n
+0000139487 00000 n
+0000136329 00000 n
+0000135317 00000 n
+0000132862 00000 n
+0000221886 00000 n
+0000139635 00000 n
+0000139783 00000 n
+0000139931 00000 n
+0000140079 00000 n
+0000140227 00000 n
+0000140375 00000 n
+0000140523 00000 n
+0000140670 00000 n
+0000140818 00000 n
+0000141176 00000 n
+0000139276 00000 n
+0000136483 00000 n
+0000221991 00000 n
+0000222097 00000 n
+0000223194 00000 n
+0000142116 00000 n
+0000141997 00000 n
+0000141330 00000 n
+0000144027 00000 n
+0000144194 00000 n
+0000144385 00000 n
+0000144575 00000 n
+0000144866 00000 n
+0000143864 00000 n
+0000142229 00000 n
+0000400481 00000 n
+0000147034 00000 n
+0000147181 00000 n
+0000147328 00000 n
+0000147476 00000 n
+0000147623 00000 n
+0000147770 00000 n
+0000147917 00000 n
+0000148064 00000 n
+0000148211 00000 n
+0000148359 00000 n
+0000148505 00000 n
+0000148652 00000 n
+0000148798 00000 n
+0000148945 00000 n
+0000149092 00000 n
+0000149239 00000 n
+0000149386 00000 n
+0000149533 00000 n
+0000149680 00000 n
+0000149827 00000 n
+0000149974 00000 n
+0000150121 00000 n
+0000150267 00000 n
+0000150414 00000 n
+0000150561 00000 n
+0000150707 00000 n
+0000150854 00000 n
+0000151001 00000 n
+0000151148 00000 n
+0000151295 00000 n
+0000151442 00000 n
+0000151590 00000 n
+0000151737 00000 n
+0000151884 00000 n
+0000152030 00000 n
+0000152177 00000 n
+0000152323 00000 n
+0000152470 00000 n
+0000154394 00000 n
+0000154541 00000 n
+0000154689 00000 n
+0000154836 00000 n
+0000152722 00000 n
+0000146599 00000 n
+0000144994 00000 n
+0000159149 00000 n
+0000155132 00000 n
+0000155279 00000 n
+0000155426 00000 n
+0000155573 00000 n
+0000155720 00000 n
+0000155867 00000 n
+0000156014 00000 n
+0000156160 00000 n
+0000156307 00000 n
+0000156453 00000 n
+0000156600 00000 n
+0000156746 00000 n
+0000156893 00000 n
+0000157040 00000 n
+0000157187 00000 n
+0000157334 00000 n
+0000157481 00000 n
+0000157628 00000 n
+0000157775 00000 n
+0000157922 00000 n
+0000158069 00000 n
+0000158216 00000 n
+0000158363 00000 n
+0000158510 00000 n
+0000158656 00000 n
+0000158804 00000 n
+0000158951 00000 n
+0000159252 00000 n
+0000154007 00000 n
+0000152822 00000 n
+0000154984 00000 n
+0000159201 00000 n
+0000162212 00000 n
+0000162357 00000 n
+0000162502 00000 n
+0000162648 00000 n
+0000162794 00000 n
+0000162940 00000 n
+0000163087 00000 n
+0000163235 00000 n
+0000163383 00000 n
+0000163530 00000 n
+0000163678 00000 n
+0000163825 00000 n
+0000163973 00000 n
+0000164119 00000 n
+0000164319 00000 n
+0000161969 00000 n
+0000159393 00000 n
+0000167311 00000 n
+0000167456 00000 n
+0000167602 00000 n
+0000167748 00000 n
+0000167895 00000 n
+0000168041 00000 n
+0000168188 00000 n
+0000168335 00000 n
+0000168482 00000 n
+0000168628 00000 n
+0000168775 00000 n
+0000168921 00000 n
+0000172161 00000 n
+0000172307 00000 n
+0000169068 00000 n
+0000167084 00000 n
+0000164474 00000 n
+0000172454 00000 n
+0000172599 00000 n
+0000172745 00000 n
+0000172891 00000 n
+0000173038 00000 n
+0000173186 00000 n
+0000173334 00000 n
+0000173480 00000 n
+0000176478 00000 n
+0000176623 00000 n
+0000173627 00000 n
+0000171950 00000 n
+0000169208 00000 n
+0000176769 00000 n
+0000176915 00000 n
+0000177062 00000 n
+0000177209 00000 n
+0000177356 00000 n
+0000177504 00000 n
+0000177652 00000 n
+0000177797 00000 n
+0000177943 00000 n
+0000178089 00000 n
+0000178236 00000 n
+0000178384 00000 n
+0000178531 00000 n
+0000178677 00000 n
+0000181947 00000 n
+0000182093 00000 n
+0000178877 00000 n
+0000176219 00000 n
+0000173754 00000 n
+0000400598 00000 n
+0000182241 00000 n
+0000182388 00000 n
+0000182536 00000 n
+0000182683 00000 n
+0000182829 00000 n
+0000182976 00000 n
+0000183123 00000 n
+0000183270 00000 n
+0000183418 00000 n
+0000185998 00000 n
+0000186143 00000 n
+0000186289 00000 n
+0000186435 00000 n
+0000183566 00000 n
+0000181728 00000 n
+0000179031 00000 n
+0000186580 00000 n
+0000186728 00000 n
+0000186873 00000 n
+0000187019 00000 n
+0000187165 00000 n
+0000187312 00000 n
+0000187457 00000 n
+0000187603 00000 n
+0000187749 00000 n
+0000187896 00000 n
+0000188042 00000 n
+0000188189 00000 n
+0000188335 00000 n
+0000189920 00000 n
+0000190066 00000 n
+0000188482 00000 n
+0000185731 00000 n
+0000183693 00000 n
+0000190213 00000 n
+0000190358 00000 n
+0000190504 00000 n
+0000190650 00000 n
+0000190797 00000 n
+0000189741 00000 n
+0000188623 00000 n
+0000193680 00000 n
+0000193828 00000 n
+0000193975 00000 n
+0000194122 00000 n
+0000194320 00000 n
+0000193517 00000 n
+0000190937 00000 n
+0000196456 00000 n
+0000196603 00000 n
+0000196750 00000 n
+0000196896 00000 n
+0000197148 00000 n
+0000196293 00000 n
+0000194474 00000 n
+0000199409 00000 n
+0000199556 00000 n
+0000199703 00000 n
+0000199849 00000 n
+0000199996 00000 n
+0000200144 00000 n
+0000200345 00000 n
+0000199230 00000 n
+0000197289 00000 n
+0000400715 00000 n
+0000203223 00000 n
+0000203370 00000 n
+0000203517 00000 n
+0000203664 00000 n
+0000203811 00000 n
+0000203959 00000 n
+0000204160 00000 n
+0000203044 00000 n
+0000200486 00000 n
+0000205926 00000 n
+0000206074 00000 n
+0000205787 00000 n
+0000204301 00000 n
+0000208834 00000 n
+0000208662 00000 n
+0000206201 00000 n
+0000209972 00000 n
+0000209853 00000 n
+0000208975 00000 n
+0000212060 00000 n
+0000211888 00000 n
+0000210099 00000 n
+0000213236 00000 n
+0000213117 00000 n
+0000212201 00000 n
+0000400832 00000 n
+0000215270 00000 n
+0000215692 00000 n
+0000215867 00000 n
+0000216049 00000 n
+0000216227 00000 n
+0000216408 00000 n
+0000216584 00000 n
+0000216763 00000 n
+0000218956 00000 n
+0000217258 00000 n
+0000215067 00000 n
+0000213363 00000 n
+0000215481 00000 n
+0000219133 00000 n
+0000219312 00000 n
+0000219491 00000 n
+0000219670 00000 n
+0000219849 00000 n
+0000220028 00000 n
+0000220205 00000 n
+0000220384 00000 n
+0000220562 00000 n
+0000220739 00000 n
+0000220919 00000 n
+0000221096 00000 n
+0000221277 00000 n
+0000222789 00000 n
+0000222202 00000 n
+0000218713 00000 n
+0000217400 00000 n
+0000222967 00000 n
+0000223247 00000 n
+0000222642 00000 n
+0000222288 00000 n
+0000383636 00000 n
+0000223333 00000 n
+0000223640 00000 n
+0000223772 00000 n
+0000223795 00000 n
+0000223906 00000 n
+0000224214 00000 n
+0000224509 00000 n
+0000224612 00000 n
+0000224767 00000 n
+0000224798 00000 n
+0000224821 00000 n
+0000225391 00000 n
+0000225863 00000 n
+0000226336 00000 n
+0000226817 00000 n
+0000227413 00000 n
+0000228271 00000 n
+0000235346 00000 n
+0000235579 00000 n
+0000242658 00000 n
+0000242886 00000 n
+0000251063 00000 n
+0000251333 00000 n
+0000258950 00000 n
+0000259175 00000 n
+0000266228 00000 n
+0000266451 00000 n
+0000285493 00000 n
+0000286082 00000 n
+0000292296 00000 n
+0000292546 00000 n
+0000297957 00000 n
+0000298213 00000 n
+0000305098 00000 n
+0000305411 00000 n
+0000309309 00000 n
+0000309570 00000 n
+0000312384 00000 n
+0000312626 00000 n
+0000328200 00000 n
+0000328600 00000 n
+0000335746 00000 n
+0000336010 00000 n
+0000356465 00000 n
+0000357089 00000 n
+0000365296 00000 n
+0000365558 00000 n
+0000383146 00000 n
+0000384219 00000 n
+0000385158 00000 n
+0000386139 00000 n
+0000387282 00000 n
+0000388424 00000 n
+0000389359 00000 n
+0000390299 00000 n
+0000391235 00000 n
+0000392170 00000 n
+0000393111 00000 n
+0000394362 00000 n
+0000395299 00000 n
+0000396242 00000 n
+0000397179 00000 n
+0000398121 00000 n
+0000399070 00000 n
+0000400933 00000 n
+0000401051 00000 n
+0000401161 00000 n
+0000401231 00000 n
+0000406981 00000 n
+0000407074 00000 n
+trailer
+<< /Size 963
+/Root 961 0 R
+/Info 962 0 R
+/ID [<846EC55E208E7DF19FDB66A692B724CB> <846EC55E208E7DF19FDB66A692B724CB>] >>
+startxref
+408096
+%%EOF
diff --git a/macros/latex/contrib/caption/caption2.dtx b/macros/latex/contrib/caption/caption2.dtx
index 9e6850dfe6..7ec1096e36 100644
--- a/macros/latex/contrib/caption/caption2.dtx
+++ b/macros/latex/contrib/caption/caption2.dtx
@@ -2,7 +2,7 @@
%
% This is file `caption2.dtx'.
%
-% Copyright (C) 1994-2020 Axel Sommerfeldt (axel.sommerfeldt@f-m.fm)
+% Copyright (C) 1994-2021 Axel Sommerfeldt (axel.sommerfeldt@f-m.fm)
%
% --------------------------------------------------------------------------
%
@@ -27,18 +27,16 @@
% caption.sty, caption-light.sty, caption2.sty, caption3.sty,
% caption-ams-smf.sto, caption-beamer.sto, caption-elsarticle.sto,
% caption-koma.sto, caption-memoir.sto, caption-ntg.sto,
-% caption-thesis.sto, bicaption.sty, ltcaption.sty, subcaption.sty,
-% and the user manuals
-% caption-deu.tex, caption-eng.tex, caption-rus.tex.
+% caption-thesis.sto, bicaption.sty, ltcaption.sty, subcaption.sty.
%
% \fi
-% \CheckSum{864}
+%
+% \CheckSum{818}
%
% \iffalse
%<*driver>
\NeedsTeXFormat{LaTeX2e}[1994/12/01]
-\ProvidesFile{caption2.drv}%
- [2007/11/28 v2.2 Documentated code of the (obsolete) caption2 package]
+\ProvidesFile{caption2.drv}[2007/11/28 v2.2 Documentated code of the (obsolete) caption2 package]
\hbadness=9999 \newcount\hbadness \hfuzz=100pt % Make TeX shut up.
%\errorcontextlines=3
%
@@ -70,9 +68,16 @@
% \newcommand*{\purerm}[1]{{\upshape\mdseries\rmfamily #1}}
% \newcommand*{\puresf}[1]{{\upshape\mdseries\sffamily #1}}
% \newcommand*{\purett}[1]{{\upshape\mdseries\ttfamily #1}}
-% \let\package\puresf\def\thispackage{\package{caption2}}
+% \let\class\puresf \let\package\puresf
% \let\env\purett \let\opt\purett
%
+% \def\thispackage{the \package{caption2} package}
+% \def\Thispackage{The \package{caption2} package}
+%
+% \newcommand*\csmarg[1]{\texttt{\char`\{#1\char`\}}}
+% \newcommand*\csoarg[1]{\texttt{\char`\[#1\char`\]}}
+% \newcommand*\version[2][]{v$#2$}
+%
% \GetFileInfo{caption2.drv}
% \let\docdate\filedate
% \let\docversion\fileversion
@@ -180,6 +185,7 @@
% \DoNotIndex{\hangindent,\hbox,\hfil,\hsize,\hskip,\hspace,\hss}
% \DoNotIndex{\if,\ifcase,\ifdim,\ifnum,\ifodd,\ifvoid,\ifvmode}
% \DoNotIndex{\ifx,\ignorespaces,\itshape}
+% \DoNotIndex{\kernel@ifnextchar}
% \DoNotIndex{\Large,\large,\leavevmode,\leftmargini,\leftskip,\let,\linewidth}
% \DoNotIndex{\llap,\long,\m@ne,\margin,\mdseries,\message}
% \DoNotIndex{\newcommand,\newdimen,\newlength,\newline,\newif,\newsavebox}
@@ -209,47 +215,52 @@
%
% \subsection{Identificaton}
%
+% We need at least \LaTeX2e\ version 1994/12/01.
% \begin{macrocode}
\NeedsTeXFormat{LaTeX2e}[1994/12/01]
-\ProvidesPackage{caption2}[2020/09/28 v2.2f Customising captions (AR)]
% \end{macrocode}
%
-% \changes{v2.2b}{2007/06/15}{Made obsolete warning even more annoying}
+% Bypass the release declarations in case the \LaTeX\ kernel doesn’t know how to deal with them
+% (as suggested by \url{https://www.latex-project.org/publications/2018-FMi-TUB-tb122mitt-version-rollback.pdf}).
% \begin{macrocode}
-\PackageWarning{caption2}{%
- ****************************************************\MessageBreak
- THIS PACKAGE IS OBSOLETE:\MessageBreak
- This package attempts to provide an `caption2'\MessageBreak
- package v2.0/2.1 author environment so that OLD\MessageBreak
- documents can be successfully processed. It should\MessageBreak
- NOT be used for NEW documents! New documents should\MessageBreak
- use the regular `caption' package v3.x instead.\MessageBreak
- ****************************************************\@gobbletwo}%
+\providecommand\DeclareRelease[3]{}
+\providecommand\DeclareCurrentRelease[2]{}
% \end{macrocode}
%
-% \subsection{Loading the caption3 kernel}
+% Declare all supported releases.
+% \begin{macrocode}
+\DeclareRelease{v2.0}{1995-10-09}{caption2_1995-10-09.sty}
+\DeclareRelease{v2.1}{2002-08-03}{caption2_2005-10-03.sty}
+\DeclareCurrentRelease{v2.2}{2007-04-09} % 1st version using caption3
+% \end{macrocode}
%
+% Identify the current version of the package.
% \begin{macrocode}
-\RequirePackage{caption3}[2020/09/28] % needs v2.2a or newer
+\ProvidesPackage{caption2}[2021/01/20 v2.2i Customising captions (AR)]
+%\PackageWarning{caption2}{THIS PACKAGE IS OBSOLETE, PLEASE USE caption INSTEAD}
% \end{macrocode}
-% We undefine user commands offered by \package{caption} but not by \package{caption2}
-% since they should not be used together with \package{caption2}.
+%
+% \subsection{Loading the caption3 kernel}
+%
% \begin{macrocode}
-\let\captionsetup\@undefined
-\let\clearcaptionsetup\@undefined
-\let\showcaptionsetup\@undefined
-\let\DeclareCaptionType\@undefined
-\let\DeclareCaptionSubType\@undefined
+\RequirePackage{caption3}[2007/03/04]
% \end{macrocode}
%
% \begin{macro}{\captiontwo@Error}
% \changes{v2.2f}{2020/09/28}{This macro added}
+% \changes{v2.2g}{2020/12/25}{Fallback definition of \cs{caption@@eh} added}
% |\captiontwo@Error|\marg{message}\\
% issues an error message (with code line indication).
% \begin{macrocode}
\newcommand*\captiontwo@Error[2][]{%
\PackageError{caption2}{#2}{#1\caption@@eh{caption2}}}
% \end{macrocode}
+% \begin{macrocode}
+\providecommand*\caption@@eh[1]{%
+ If you do not understand this error, please take a closer look\MessageBreak
+ at the documentation of the `#1' package, especially the\MessageBreak
+ section about errors.\MessageBreak\@ehc}
+% \end{macrocode}
% \end{macro}
%
% \subsection{Check against the regular caption package}
@@ -280,7 +291,17 @@
% \end{macro}
% \end{macro}
%
+% \begin{macro}{\captionwidth}
+% \changes{v2.2h}{2021/01/19}{Re-added since the \package{caption3} kernel uses \cs{caption@width} now}
+% \begin{macrocode}
+\@ifundefined{captionwidth}
+ {\let\captionwidth\caption@width}
+ {}
+% \end{macrocode}
+% \end{macro}
+%
% \begin{macro}{\ifcaptionwidth}
+% \changes{v2.2}{2007/04/06}{New implementation, based on \cs{captionwidth}}
% Either \cs{captionmargin} (with specifies an extra margin) or \cs{captionwidth}
% (with specifies an explicit width) can be set, therefore we need the flag \cs{ifcaptionwidth}
% to determine with parameter we should pay attention to.
@@ -291,19 +312,22 @@
%
% \begin{macro}{\captionindent}
% \changes{v2.2b}{2007/08/12}{Re-added since the \package{caption3} kernel uses \cs{caption@indent} now}
+% \changes{v2.2g}{2020/12/25}{Will only be defined if it is not defined yet}
% \cs{captionindent} will be used in caption style \texttt{indent} and specifies the indention
-% after the first line.
+% after the first line. (In \package{caption3} \version{1.1} \cs{captionindent} was renamed to
+% \cs{caption@indent} to improve compatibility to the AMS \& SMF document classes.)
% \begin{macrocode}
-\let\captionindent\caption@indent
+\@ifundefined{captionindent}
+ {\let\captionindent\caption@indent}
+ {}
% \end{macrocode}
% \end{macro}
%
-% \changes{v2.1}{2002/02/20}{New ifs \cs{ifcaptionlabel} and \cs{ifignoreLTcapwidth}}
-%
% \begin{macro}{\ifcaptionlabel}
+% \changes{v2.1}{2002/02/20}{New switch \cs{ifcaptionlabel}}
% If \cs{ifcaptionlabel} is not set the caption label should be suppressed;
% we need this flag to support the \cs{caption*} command.
-% \changes{v2.2}{2007/04/06}{New definition, based on \cs{ifcaption@star}}
+% \changes{v2.2}{2007/04/06}{New implementation, based on \cs{ifcaption@star}}
% \begin{macrocode}
\def\ifcaptionlabel{%
\ifcaption@star
@@ -331,12 +355,30 @@
% \end{macro}
%
% \begin{macro}{\ifignoreLTcapwidth}
+% \changes{v2.1}{2002/02/20}{New switch \cs{ifignoreLTcapwidth}}
% If \cs{ifignoreLTcapwidth} is set we ignore the \cs{LTcapwidth} of \textsf{longtable}.
% \begin{macrocode}
\newif\ifignoreLTcapwidth
% \end{macrocode}
% \end{macro}
%
+% \begin{macro}{\setcaptionmargin}
+% \changes{v2.2h}{2021/01/19}{Re-added since the \package{caption3} kernel does not define it anymore}
+% \begin{macro}{\setcaptionwidth}
+% \changes{v2.2h}{2021/01/19}{Re-added since the \package{caption3} kernel does not define it anymore}
+% User-friendly commands to set the caption margin resp.\ width.
+% Note that they additionally set the \cs{ifcaptionwidth} flag.
+% \begin{macrocode}
+\providecommand*\setcaptionmargin{%
+ \setlength\captionwidth\z@
+ \setlength\captionmargin}
+\providecommand*\setcaptionwidth{%
+ \setlength\captionmargin\z@
+ \setlength\captionwidth}
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+%
% \begin{macro}{\normalcaptionparams}
% \cs{normalcaptionparams} resets all caption related parameters to it's normal default values.
% \cs{captionfont} will be set to \cs{captionsize} so setting the obsolete \cs{captionsize} will still work.
@@ -667,6 +709,7 @@
% of the package given in parameter \#1, a value of 0 will deactivate it.
% \begin{macrocode}
\newcommand*\caption@setpackage[1]{\@namedef{caption@pkt@#1}}
+\@onlypreamble\caption@setpackage
% \end{macrocode}
% \end{macro}
%
@@ -692,7 +735,8 @@
% \begin{macro}{all}
% These options will enable or suppress the support of all the above packages.
% \begin{macrocode}
-\DeclareOption{none}{\caption@twozerofalse
+\DeclareOption{none}{%
+ \caption@twozerofalse
\caption@setpackage{float}{0}\caption@setpackage{longtable}{0}%
\caption@setpackage{subfigure}{0}}
\DeclareOption{all}{\ExecuteOptions{float,longtable,subfigure}}
@@ -721,13 +765,6 @@
% \end{macrocode}
% \end{macro}
%
-% \begin{macro}{debug}
-% This option will put additional debug information in the log file.
-% \begin{macrocode}
-\DeclareOption{debug}{\caption@setup{debug}}
-% \end{macrocode}
-% \end{macro}
-%
% \subsection{Execution of options}
%
% Now we set the default values and start processing the options.
@@ -767,9 +804,9 @@
% (like \textsf{ucthesis}), so we do it here if not already done.
% \changes{v2.1}{2002/02/19}{\cs{abovecaptionskip} and \cs{belowcaptionskip} will be defined if neccessary}
% \begin{macrocode}
-\caption@ifundefined\abovecaptionskip{%
+\@ifundefined{abovecaptionskip}{%
\newlength\abovecaptionskip\setlength\abovecaptionskip{10\p@}}{}
-\caption@ifundefined\belowcaptionskip{%
+\@ifundefined{belowcaptionskip}{%
\newlength\belowcaptionskip\setlength\belowcaptionskip{0\p@}}{}
% \end{macrocode}
% \end{macro}
@@ -783,7 +820,7 @@
% These values are only set and used within the caption code itself.
% \cs{captionlinewidth} will be set to the given vertical space for the caption,
% normally this is \cs{linewidth}. (This value was called \cs{realcaptionwidth}
-% within \thispackage\ \mbox{2.0}, so we will offer this, too.)
+% within \thispackage\ \version{2.0}, so we will offer this, too.)
%
% \cs{captionlabel} and \cs{captiontext} will be set to the caption label
% resp.\ the caption text.
@@ -845,7 +882,7 @@
% If we are we call the appropriate caption definition.
% \begin{macrocode}
\newcommand*\usecaptionstyle[1]{%
- \caption@ifundefined\captiontext{%
+ \@ifundefined{captiontext}{%
\captiontwo@Error
[The usage of \protect#1 is only
allowed inside code declared with\MessageBreak \protect\defcaptionstyle,
@@ -861,7 +898,7 @@
% \end{macro}
%
% \begin{macro}{\@makecaption}
-% This is the heart of the \thispackage\ package -- the redefinition of the
+% This is the heart of the \thispackage{} -- the redefinition of the
% core caption code. It was taken from the \LaTeXe\ standard classes and modified.
% It's very easy -- apart from using \cs{abovecaptionskip} and \cs{belowcaptionskip}
% we just set \cs{captionlinewidth}, \cs{captionlabel} and \cs{captiontext}
@@ -882,45 +919,41 @@
% \subsection{Support of other packages}
%
% \begin{macro}{\caption@ifpackage}
-% This macro will execute the code needed to support the package
-% named within argument \#1. The parameter \#2 is the command
-% which shows if the package is loaded -- it is defined, it is
-% already loaded, otherwise not. The parameter \#3 contains code
-% which will be executed if no support is required -- this is for
-% cleanup purposes. The final parameter \#4 contains the code itself.
+% This macro will execute the code needed to support the package named within
+% argument \#1.
+% The parameter \#2 contains code which will be executed if the package is loaded.
+% The parameter \#3 contains code which will be executed if no support is
+% required -- this is for cleanup purposes.
% \changes{v2.1c}{2004/05/09}{Compatibility warning removed}
+% \changes{v2.2i}{2021/01/20}{Interface and code revised (uses \cs{@ifpackageloaded} now)}
% \begin{macrocode}
-\newcommand*\caption@ifpackage[3]{%
- \if1\@nameuse{caption@pkt@#1}%
- \@ifundefined{#2}%
- {\let\next\AtBeginDocument}%
- {\let\next\@firstofone}%
- \else\ifcaption@twozero
- \@ifundefined{#2}%
- {#3\let\next\@gobble}%
- {\let\next\@firstofone}%
+\newcommand\caption@ifpackage[3]{%
+ \ifcaption@twozero
+ \let\next\@firstofone
+ \else\if1\@nameuse{caption@pkt@#1}%
+ \def\next{\@ifpackageloaded{#1}\@firstofone\AtBeginDocument}%
\else
- #3\let\next\@gobble
+ \PackageInfo{caption2}{#1 package is disabled}%
+ #3%
+ \let\next\@gobble
\fi\fi
- \expandafter\let\csname caption@pkt@#1\endcsname\undefined
- \caption@ifdebug{%
- \ifx\next\@gobble\PackageInfo{caption2}{#1 => gobble}%
- \else\ifx\next\@firstofone\PackageInfo{caption2}{#1 => firstofone}%
- \else\ifx\next\AtBeginDocument\PackageInfo{caption2}{#1 => AtBeginDocument}%
- \fi\fi\fi}{}%
- \next}
+ \@nameundef{caption@pkt@#1}%
+% \end{macrocode}
+% \begin{macrocode}
+ \next{%
+ \@ifpackageloaded{#1}{%
+ \PackageInfo{caption2}{#1 package is loaded}%
+ #2}{%
+ \PackageInfo{caption2}{#1 package is not loaded}%
+ #3}}}
+\@onlypreamble\caption@ifpackage
% \end{macrocode}
% \end{macro}
%
% \subsubsection{Support of the float package}
%
% \begin{macrocode}
-\caption@ifpackage{float}{floatc@plain}{}{%
- \ifx\floatc@plain\relax
- \PackageWarning{caption2}{%
- Option `float' was set but there is no float package loaded}
- \else
- \PackageInfo{caption2}{float package v1.2 (or newer) detected}
+\caption@ifpackage{float}{%
% \end{macrocode}
%
% \begin{macro}{\caption@floatc}
@@ -936,15 +969,15 @@
%
% \changes{v2.1b}{2004/03/19}{\cs{realcaptionwidth}$=$\cs{hsize} was missing here}
% \begin{macrocode}
- \newcommand\caption@floatc[3]{%
- \ifx\captionlabelfont\@empty
- \let\captionlabelfont\@fs@cfont
- \fi
- \captionlinewidth\hsize
- \realcaptionwidth\hsize
- \def\captionlabel{#2}%
- \def\captiontext{#3}%
- \usecaptionstyle{#1}}
+ \newcommand\caption@floatc[3]{%
+ \ifx\captionlabelfont\@empty
+ \let\captionlabelfont\@fs@cfont
+ \fi
+ \captionlinewidth\hsize
+ \realcaptionwidth\hsize
+ \def\captionlabel{#2}%
+ \def\captiontext{#3}%
+ \usecaptionstyle{#1}}%
% \end{macrocode}
% \end{macro}
%
@@ -954,7 +987,7 @@
% \texttt{plain} and \texttt{boxed} float types will use the actual
% caption style set by the user.
% \begin{macrocode}
- \renewcommand*\floatc@plain{\caption@floatc{\caption@style}}
+ \renewcommand*\floatc@plain{\caption@floatc{\caption@style}}%
% \end{macrocode}
% \end{macro}
%
@@ -968,17 +1001,17 @@
% Then we redefine \cs{floatc@ruled} so the caption style `ruled' will
% be used.
% \begin{macrocode}
- \ifcaption@ruled
- \dummycaptionstyle{ruled}{\onelinecaptionsfalse\setcaptionmargin{\z@}}%
- \else
- \newcaptionstyle{ruled}{%
- \ifcaptionlabel
- {\@fs@cfont\captionlabel}\space%
- \fi\captiontext\par}%
- \fi
+ \ifcaption@ruled
+ \dummycaptionstyle{ruled}{\onelinecaptionsfalse\setcaptionmargin{\z@}}%
+ \else
+ \newcaptionstyle{ruled}{%
+ \ifcaptionlabel
+ {\@fs@cfont\captionlabel}\space%
+ \fi\captiontext\par}%
+ \fi
% \end{macrocode}
% \begin{macrocode}
- \renewcommand*\floatc@ruled{\caption@floatc{ruled}}
+ \renewcommand*\floatc@ruled{\caption@floatc{ruled}}%
% \end{macrocode}
% \end{macro}
%
@@ -1005,37 +1038,33 @@
% group again so the original \cs{@fs@capt} is happy with closing the group.
%
% \begin{macrocode}
- \renewcommand*\caption@of[2]{\def\@captype{#2}%
- \@ifundefined{fst@#2}{}{%
- \@nameuse{fst@#2}%
- \caption@ifundefined\@float@setevery{}{\@float@setevery{#2}}%
- \let\caption@fs@capt\@fs@capt
- \let\@fs@capt\caption@of@float}%
- #1}
+ \renewcommand*\caption@of[2]{%
+ \def\@captype{#2}%
+ \@ifundefined{fst@#2}{}{%
+ \@nameuse{fst@#2}%
+ \@ifundefined{@float@setevery}{}{\@float@setevery{#2}}%
+ \let\caption@fs@capt\@fs@capt
+ \let\@fs@capt\caption@of@float}%
+ #1}%
% \end{macrocode}
%
% \begin{macrocode}
- \newcommand\caption@of@float[2]{\egroup
- \vskip\abovecaptionskip
- \normalsize\caption@fs@capt{#1}{#2}%
- \vskip\belowcaptionskip
- \bgroup}%
+ \newcommand\caption@of@float[2]{\egroup
+ \vskip\abovecaptionskip
+ \normalsize\caption@fs@capt{#1}{#2}%
+ \vskip\belowcaptionskip
+ \bgroup}%
% \end{macrocode}
% \end{macro}
%
% \begin{macrocode}
- \fi}
+}{}
% \end{macrocode}
%
% \subsubsection{Support of the longtable package}
%
% \begin{macrocode}
-\caption@ifpackage{longtable}{LT@makecaption}{}{%
- \ifx\LT@makecaption\relax
- \PackageWarning{caption2}{%
- Option `longtable' was set but there is no longtable package loaded}
- \else
- \PackageInfo{caption2}{longtable package v3.15 (or newer) detected}
+\caption@ifpackage{longtable}{%
% \end{macrocode}
%
% \begin{macro}{\LT@makecaption}
@@ -1058,28 +1087,28 @@
% (Remember: |#1| is |\@gobble| in star form of |\caption|,
% and |\@firstofone| otherwise.)
% \begin{macrocode}
- \dummycaptionstyle{longtable}{}
+ \dummycaptionstyle{longtable}{}%
% \end{macrocode}
% \begin{macrocode}
- \renewcommand\LT@makecaption[3]{%
- \LT@mcol\LT@cols c{\hbox to\z@{\hss\parbox[t]\hsize{%
- \ifignoreLTcapwidth
- \else
- \setcaptionwidth\LTcapwidth
- \fi
- \captionlinewidth\hsize
- \realcaptionwidth\hsize
- \captionlabelfalse#1\captionlabeltrue
- \def\captionlabel{#2}%
- \def\captiontext{#3}%
- \usecaptionstyle{longtable}%
- \endgraf\vskip\baselineskip}%
- \hss}}}
+ \renewcommand\LT@makecaption[3]{%
+ \LT@mcol\LT@cols c{\hbox to\z@{\hss\parbox[t]\hsize{%
+ \ifignoreLTcapwidth
+ \else
+ \setcaptionwidth\LTcapwidth
+ \fi
+ \captionlinewidth\hsize
+ \realcaptionwidth\hsize
+ \captionlabelfalse#1\captionlabeltrue
+ \def\captionlabel{#2}%
+ \def\captiontext{#3}%
+ \usecaptionstyle{longtable}%
+ \endgraf\vskip\baselineskip}%
+ \hss}}}%
% \end{macrocode}
% \end{macro}
%
% \begin{macrocode}
- \fi}
+}{}
% \end{macrocode}
%
% \subsubsection{Support of the subfigure package}
@@ -1091,13 +1120,8 @@
%
% \begin{macro}{\setsubcapstyle}
% This sets the subcaptionstyle to a appropriate value.
-%
-% If \cs{ifsubcapraggedright} is undefined (it was introduced
-% into v2.1 of the \textsf{subfigure} package) we define it first.
% \begin{macrocode}
\newcommand*\setsubcapstyle{%
- \caption@ifundefined\subcapraggedrightfalse{%
- \newif\ifsubcapraggedright}{}%
\ifsubcaphang
\ifsubcapcenter
\subcapstyle{hang+center}%
@@ -1118,6 +1142,13 @@
\subcapstyle{normal}%
\fi\fi\fi\fi}
% \end{macrocode}
+% If \cs{ifsubcapraggedright} is undefined (it was introduced
+% in \version{2.1} of the \textsf{subfigure} package) we define it first.
+% \begin{macrocode}
+\AtBeginDocument{%
+ \@ifundefined{subcapraggedrightfalse}{%
+ \newif\ifsubcapraggedright}{}}
+% \end{macrocode}
% \end{macro}
%
% \begin{macro}{\caption@makesubcaption}
@@ -1188,15 +1219,7 @@
% the helper macros in the garbage can.
%
% \begin{macrocode}
-\caption@ifpackage{subfigure}{@makesubfigurecaption}{%
- \let\setsubcapstyle\undefined
- \let\caption@makesubcaption\undefined}{%
- \ifx\@makesubfigurecaption\relax
- \PackageWarning{caption2}{%
- Option `subfigure' was set but there is no subfigure package loaded}
- \let\setsubcapstyle\undefined
- \let\caption@makesubcaption\undefined
- \else
+\caption@ifpackage{subfigure}{%
% \end{macrocode}
%
% Some stuff has changed from version 2.0 to 2.1 of the
@@ -1205,15 +1228,15 @@
% otherwise we assume v2.1 or newer.
%
% \begin{macrocode}
- \ifx\subcapfont\undefined
- \PackageInfo{caption2}{subfigure package v2.0 detected}
+ \ifx\subcapfont\@undefined
+ \PackageInfo{caption2}{subfigure package v2.0 detected}%
% \end{macrocode}
%
% \begin{macro}{\subcapfont}
% We define \cs{subcapfont} here so we can use it later
% in common code for \textsf{subfigure} v2.0 and v2.1 (or newer).
% \begin{macrocode}
- \let\subcapfont\@empty
+ \let\subcapfont\@empty
% \end{macrocode}
% \end{macro}
%
@@ -1227,13 +1250,13 @@
% Note: \cs{subfigcapmargin} is a command in v2.0 of \textsf{subfigure}.
% So we make \cs{subfigcapwidth} a command, too.
% \begin{macrocode}
- \newcommand*\subfigcapwidth{\z@}
- \newcommand*\setsubcapmargin{%
- \subfigcapwidthfalse
- \renewcommand*\subfigcapmargin}
- \newcommand*\setsubcapwidth{%
- \subfigcapwidthtrue
- \renewcommand*\subfigcapwidth}
+ \newcommand*\subfigcapwidth{\z@}%
+ \newcommand*\setsubcapmargin{%
+ \subfigcapwidthfalse
+ \renewcommand*\subfigcapmargin}%
+ \newcommand*\setsubcapwidth{%
+ \subfigcapwidthtrue
+ \renewcommand*\subfigcapwidth}%
% \end{macrocode}
% \end{macro}
% \end{macro}
@@ -1242,20 +1265,20 @@
% \begin{macro}{\subcaplabelsep}
% Analogous to \cs{captionlabelsep} we define \cs{subcaplabelsep}.
% \begin{macrocode}
- \newcommand*\subcaplabelsep{\space}
+ \newcommand*\subcaplabelsep{\space}%
% \end{macrocode}
% \end{macro}
%
% \begin{macro}{\caption@subfig@hss}
% This will be uses within the caption code itself.
% \begin{macrocode}
- \let\caption@subfig@hss\hfil
+ \let\caption@subfig@hss\hfil
% \end{macrocode}
% \end{macro}
%
% \begin{macrocode}
- \else
- \PackageInfo{caption2}{subfigure package v2.1 (or newer) detected}
+ \else
+ \PackageInfo{caption2}{subfigure package v2.1 (or newer) detected}%
% \end{macrocode}
%
% \begin{macro}{\subfigcapwidth}
@@ -1268,13 +1291,13 @@
% Note: \cs{subfigcapmargin} is a length in v2.1 of \textsf{subfigure}.
% So we make \cs{subfigcapwidth} a length, too.
% \begin{macrocode}
- \newdimen\subfigcapwidth
- \newcommand*\setsubcapmargin{%
- \subfigcapwidthfalse
- \setlength\subfigcapmargin}
- \newcommand*\setsubcapwidth{%
- \subfigcapwidthtrue
- \setlength\subfigcapwidth}
+ \newdimen\subfigcapwidth
+ \newcommand*\setsubcapmargin{%
+ \subfigcapwidthfalse
+ \setlength\subfigcapmargin}%
+ \newcommand*\setsubcapwidth{%
+ \subfigcapwidthtrue
+ \setlength\subfigcapwidth}%
% \end{macrocode}
% \end{macro}
% \end{macro}
@@ -1283,19 +1306,19 @@
% \begin{macro}{\subcaplabelsep}
% Analogous to \cs{captionlabelsep} we define \cs{subcaplabelsep}.
% \begin{macrocode}
- \newcommand*\subcaplabelsep{\hskip\subfiglabelskip}
+ \newcommand*\subcaplabelsep{\hskip\subfiglabelskip}%
% \end{macrocode}
% \end{macro}
%
% \begin{macro}{\caption@subfig@hss}
% This will be uses within the caption code itself.
% \begin{macrocode}
- \let\caption@subfig@hss\hss
+ \let\caption@subfig@hss\hss
% \end{macrocode}
%
% \end{macro}
% \begin{macrocode}
- \fi
+ \fi
% \end{macrocode}
%
% Here starts the common code for \textsf{subfigure} v2.0 and v2.1.
@@ -1306,9 +1329,9 @@
% Analogous to \cs{ifcaptionwidth}, \cs{captionindent} \& \cs{captionlabeldelim}
% we define \cs{ifsubfigcapwidth}, \cs{subcapindent} \& \cs{subcaplabeldelim}
% \begin{macrocode}
- \newif\ifsubfigcapwidth
- \newdimen\subcapindent
- \newcommand*\subcaplabeldelim{}
+ \newif\ifsubfigcapwidth
+ \newdimen\subcapindent
+ \newcommand*\subcaplabeldelim{}%
% \end{macrocode}
% \end{macro}
% \end{macro}
@@ -1319,13 +1342,13 @@
% Analogous to \cs{captionstyle} we define \cs{subcapstyle}
% and set it (via \cs{setsubcapstyle}) to a appropriate value.
% \begin{macrocode}
- \newcommand*\subcapstyle[1]{%
- \expandafter\ifx\csname caption@@#1\endcsname\relax
- \captiontwo@Error{Undefined caption style `#1'}%
- \else
- \def\caption@substyle{#1}%
- \fi}
- \setsubcapstyle
+ \newcommand*\subcapstyle[1]{%
+ \expandafter\ifx\csname caption@@#1\endcsname\relax
+ \captiontwo@Error{Undefined caption style `#1'}%
+ \else
+ \def\caption@substyle{#1}%
+ \fi}%
+ \setsubcapstyle
% \end{macrocode}
% \end{macro}
%
@@ -1338,8 +1361,8 @@
% to be just the plain label and nothing else.
%
% \begin{macrocode}
- \renewcommand*\@thesubfigure{\thesubfigure}
- \renewcommand*\@thesubtable{\thesubtable}
+ \renewcommand*\@thesubfigure{\thesubfigure}%
+ \renewcommand*\@thesubtable{\thesubtable}%
% \end{macrocode}
% \end{macro}
% \end{macro}
@@ -1348,20 +1371,17 @@
% \begin{macro}{\@makesubtablecaption}
% Now we are ready to redefine \cs{@makesubfigurecaption}.
% \begin{macrocode}
- \let\@makesubfigurecaption\caption@makesubcaption
- \let\@makesubtablecaption\caption@makesubcaption
+ \let\@makesubfigurecaption\caption@makesubcaption
+ \let\@makesubtablecaption\caption@makesubcaption
% \end{macrocode}
% \end{macro}
% \end{macro}
%
% \begin{macrocode}
- \fi}
-% \end{macrocode}
-%
-% That's all folks!
-%
-% \begin{macrocode}
-\let\caption@ifpackage\undefined
+}{%
+ \let\setsubcapstyle\@undefined
+ \let\caption@makesubcaption\@undefined
+}
% \end{macrocode}
%
% \iffalse
diff --git a/macros/latex/contrib/caption/caption2.pdf b/macros/latex/contrib/caption/caption2.pdf
new file mode 100644
index 0000000000..65b2601b17
--- /dev/null
+++ b/macros/latex/contrib/caption/caption2.pdf
Binary files differ
diff --git a/macros/latex/contrib/caption/caption3.dtx b/macros/latex/contrib/caption/caption3.dtx
index 96b2bc8ea9..5c91c87aa6 100644
--- a/macros/latex/contrib/caption/caption3.dtx
+++ b/macros/latex/contrib/caption/caption3.dtx
@@ -2,7 +2,7 @@
%
% This is file `caption3.dtx'.
%
-% Copyright (C) 1994-2020 Axel Sommerfeldt (axel.sommerfeldt@f-m.fm)
+% Copyright (C) 1994-2022 Axel Sommerfeldt (axel.sommerfeldt@f-m.fm)
%
% --------------------------------------------------------------------------
%
@@ -27,17 +27,16 @@
% caption.sty, caption-light.sty, caption2.sty, caption3.sty,
% caption-ams-smf.sto, caption-beamer.sto, caption-elsarticle.sto,
% caption-koma.sto, caption-memoir.sto, caption-ntg.sto,
-% caption-thesis.sto, bicaption.sty, ltcaption.sty, subcaption.sty,
-% and the user manuals
-% caption-deu.tex, caption-eng.tex, caption-rus.tex.
+% caption-thesis.sto, bicaption.sty, ltcaption.sty, subcaption.sty.
%
% \fi
-% \CheckSum{3674}
+%
+% \CheckSum{3781}
%
% \iffalse
%<*driver>
\NeedsTeXFormat{LaTeX2e}[1994/12/01]
-\ProvidesFile{caption3.drv}[2020/10/11 v2.2 Implementation of the caption kernel]
+\ProvidesFile{caption3.drv}[2021/01/02 v2.3 Implementation of the caption kernel]
\hbadness=9999 \newcount\hbadness \hfuzz=100pt % Make TeX shut up.
%\errorcontextlines=3
%
@@ -61,7 +60,7 @@
\ifpdf\usepackage{hypdestopt}\fi
\hypersetup{pdfkeywords={LaTeX, package, caption},pdfstartpage={},pdfstartview={}}
%
-\usepackage{caption3}[2020/09/12]
+\usepackage{caption3}[2020/12/22]
%
\DeclareRobustCommand*\eTeX{\texorpdfstring
{\leavevmode\hbox{$\varepsilon$}-\TeX}%
@@ -110,7 +109,7 @@
% called |\@makecaption| and no options to control its behavior (except the
% vertical skips above and below the caption itself), we provide similar
% commands called |\caption@make| and |\caption@@make|, but with a lot of
-% options which can be selected with |\captionsetup|.
+% options which can be selected with |\caption|\-|setup|.
% Loading the kernel part do not change the output of a \LaTeX\ document
% -- it just provides functionality which can be used by \LaTeXe\ packages
% which typesets captions, for example the \package{caption} and
@@ -122,18 +121,20 @@
% These internal commands are save to use by other packages as well
% since their interface will not change in future releases:
% \begin{quote}\begin{tabular}{ll}
-% Internal command & Currently used by \\
+% Internal command & Currently used by \\
% \hline
-% |\caption@addcontentsline| & \package{floatrow} \\
-% |\caption@fnun| & \package{floatrow} \\
-% |\caption@ifinlist| & \package{floatrow} \\
-% |\caption@iftop| & \package{keyfloat}, \package{subfig} \\
-% |\caption@make| & \package{subfig} \\
-% |\caption@@make| & \package{floatrow} \\
-% |\caption@setautoposition| & \package{bidi} \\
-% |\caption@setoptions| & \package{floatrow} \\
-% |\caption@setposition| & \package{floatrow} \\
-% |\caption@switchdefault| & \emph{none} \\
+% |\caption@addcontentsline| & \package{floatrow} \\
+% |\caption@fnun| & \package{floatrow} \\
+% |\caption@getlabel| & \package{subcaption} \\
+% |\caption@gobble| & \package{subcaption} \\
+% |\caption@ifinlist| & \package{floatrow} \\
+% |\caption@iftop| & \package{keyfloat} \\
+% |\caption@make| & \package{subfig} \\
+% |\caption@@make| & \package{floatrow} \\
+% |\caption@setoptions| & \package{floatrow} \\
+% |\caption@setposition| & \package{floatrow} \\
+% |\caption@switchdefault| & \emph{none} \\
+% |\caption@withoptargs| & \package{subcaption} \\
% \end{tabular}\end{quote}
%
% If your package wants to use any other internal command of the \package{caption3} package,
@@ -143,21 +144,18 @@
% not change in the future, too, but I do not support them (and maybe I will change them anyway
% and patch the other package on-the-fly instead, at least if it's unmaintained):
% \begin{quote}\begin{tabular}{ll}
-% Internal command & Currently used by \\
+% Internal command & Currently used by \\
% \hline
-% |\caption@hangindent | & \package{bidi} \\
-% |\caption@@@make| & \package{floatrow} \\
-% |\caption@@par| & \package{bidi} \\
-% |\caption@parindent| & \package{bidi} \\
-% |\caption@set@bool| & \package{floatrow} \\
-% |\caption@setfont| & \package{floatrow} \\
-% |\caption@setkeys| & \package{floatrow} \\
-% |\caption@setstyle*| & \package{floatrow} \\
+% |\caption@@@make| & \package{floatrow} \\
+% |\caption@set@bool| & \package{floatrow} \\
+% |\caption@setfont| & \package{floatrow} \\
+% |\caption@setkeys| & \package{floatrow} \\
+% |\caption@setstyle*| & \package{floatrow} \\
% \hline
-% |\caption@hj@|\meta{name} & \package{floatrow} \\
-% |\caption@lsep@|\meta{name} & \package{floatrow} \\
+% |\caption@hj@|\meta{name} & \package{floatrow} \\
+% |\caption@lsep@|\meta{name} & \package{floatrow} \\
% |\caption@lsep@default| & \package{babel-hungarian} \\
-% |\caption@sty@|\meta{name} & \package{floatrow} \\
+% |\caption@sty@|\meta{name} & \package{floatrow} \\
% \end{tabular}\end{quote}
%
% Furthermore the \package{floatrow} package uses the undocumented option
@@ -198,6 +196,7 @@
% \DoNotIndex{\hangindent,\hbox,\hfil,\hsize,\hskip,\hspace,\hss}
% \DoNotIndex{\ifcase,\ifdim,\ifnum,\ifodd,\ifvoid,\ifvmode}
% \DoNotIndex{\ifx,\ignorespaces,\itshape}
+% \DoNotIndex{\kernel@ifnextchar}
% \DoNotIndex{\Large,\large,\leavevmode,\leftmargini,\leftskip,\let,\linewidth}
% \DoNotIndex{\llap,\long,\m@ne,\margin,\mdseries,\message}
% \DoNotIndex{\newcommand,\newdimen,\newlength,\newline,\newif,\newsavebox}
@@ -240,9 +239,32 @@
%
% \section{Identification}
%
+% We need at least \LaTeX2e\ version 1994/12/01.
% \begin{macrocode}
\NeedsTeXFormat{LaTeX2e}[1994/12/01]
-\ProvidesPackage{caption3}[2020/10/21 v2.2e caption3 kernel (AR)]
+% \end{macrocode}
+%
+% Bypass the release declarations in case the \LaTeX\ kernel doesn’t know how to deal with them
+% (as suggested by \url{https://www.latex-project.org/publications/2018-FMi-TUB-tb122mitt-version-rollback.pdf}).
+% \begin{macrocode}
+\providecommand\DeclareRelease[3]{}
+\providecommand\DeclareCurrentRelease[2]{}
+% \end{macrocode}
+%
+% Declare all supported releases.
+% \begin{macrocode}
+\DeclareRelease{v1.0} {2003-12-20}{caption3_2007-04-11.sty} % for caption v3.0
+\DeclareRelease{v1.1} {2007-09-01}{caption3_2010-01-14.sty} % for caption v3.1
+\DeclareRelease{v1.3} {2011-08-06}{caption3_2011-11-01.sty} % for caption v3.2
+\DeclareRelease{v1.8} {2013-01-10}{caption3_2019-09-01.sty} % for caption v3.3
+\DeclareRelease{v1.13}{2019-11-24}{caption3_2020-07-29.sty} % for caption v3.4
+\DeclareRelease{v2.0} {2020-08-30}{caption3_2020-10-26.sty} % for caption v3.5
+\DeclareCurrentRelease{v2.3}{2022-02-20} % for caption v3.6
+% \end{macrocode}
+%
+% Identify the current version of the package.
+% \begin{macrocode}
+\ProvidesPackage{caption3}[2022/01/07 v2.3 caption3 kernel (AR)]
% \end{macrocode}
%
% \section{Generic helpers}
@@ -1428,6 +1450,7 @@
%
% \begin{macro}{\DeclareCaptionLength}
% \changes{v2.0}{2020/08/09}{This macro added}
+% \changes{v2.3}{2021/01/17}{Now defines \cs{caption@xxx} instead of \cs{captionxxx} as length}
% |\DeclareCaptionLength|\marg{name}\marg{default value}\\
% \begin{enumerate}
% \item Defines a new length (dimension)
@@ -1438,9 +1461,8 @@
% \end{enumerate}
% \begin{macrocode}
\newcommand*\DeclareCaptionLength[1]{%
- \expandafter\newdimen\csname caption#1\endcsname
- \@namedef{caption@setdefault@#1}##1{%
- \caption@setdefault@length{##1}}%
+ \expandafter\newdimen\csname caption@#1\endcsname
+ \@namedef{caption@setdefault@#1}{\caption@setdefault@length}%
\SetCaptionDefault*{#1}}
\@onlypreamble\DeclareCaptionLength
% \end{macrocode}
@@ -1448,59 +1470,94 @@
%
% \begin{macro}{\caption@setdefault@length}
% \changes{v2.0}{2020/08/09}{This macro added}
+% \changes{v2.3}{2021/01/17}{Adapted to current implementation of \cs{DeclareCaptionLength}}
% |\caption@setdefault@length*|\marg{cmd}\marg{name}\marg{value}\\
% sets a default value for the given \meta{length}, either using |\def|
% (if the starred variant is used) or |\edef| (if the non-starred variant is
% used).
% \begin{macrocode}
\newcommand*\caption@setdefault@length[3]{%
- \expandafter#1\csname caption#2@default\endcsname{#3}}
+ \expandafter#1\csname caption@#2@default\endcsname{#3}}
% \end{macrocode}
% \end{macro}
%
% \begin{macro}{\caption@setlength}
% \changes{v2.0}{2020/08/09}{This macro added}
+% \changes{v2.3}{2021/01/17}{Adapted to current implementation of \cs{DeclareCaptionLength}}
% |\caption@setlength|\marg{name}\marg{value}\\
% sets a length to either the given \meta{value} or to the default value if
% \meta{value} is `default'.
% \begin{macrocode}
\newcommand*\caption@setlength[2]{%
\caption@ifdefault{#2}%
- {\expandafter\let\expandafter\caption@tempa\csname caption#1@default\endcsname}%
+ {\expandafter\let\expandafter\caption@tempa\csname caption@#1@default\endcsname}%
{\def\caption@tempa{#2}}%
- \expandafter\setlength\csname caption#1\endcsname\caption@tempa}
+ \expandafter\setlength\csname caption@#1\endcsname\caption@tempa}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@tempdima}
+% |\caption@tempdima| will be used as temporary dimension register, similar to |\@tempdima|.
+% \begin{macrocode}
+\newdimen\caption@tempdima
% \end{macrocode}
% \end{macro}
%
% \section{Margin resp. width}
-% \changes{v1.0n}{2007/04/01}{\cs{captionmarginx} renamed to \cs{captionmargin@}}
% \changes{v1.0n}{2007/04/03}{Option `twoside' added}
% \changes{v1.1}{2007/08/11}{Options `margin*', `minmargin', and `maxmargin' added}
% \changes{v1.2}{2007/11/10}{Option `oneside' added}
%
% \begin{macro}{\captionmargin}
-% \begin{macro}{\captionwidth}
-% |\captionmargin| and |\captionwidth| contain the extra margin
-% resp. the total width used for captions. Please never set these values in
-% a direct way, they are just accessible in user documents to provide
-% compatibility to \version{1.x} of the \package{caption} package.\par
-% Note that we can only set one value at a time, `margin' \emph{or} `width'.
-% If |\caption|\-|width| is not zero we will take this value afterwards,
-% otherwise |\caption|\-|margin| and |\caption|\-|margin@|.
+% |\captionmargin| contains the extra margin used for captions (if different than |0pt|).
+% It is just available for user documents to provide compatibility to \version{1.x} of
+% the \package{caption} package where |\set|\-|length\caption|\-|margin{|\ldots|}| was
+% the way how a caption margin was set.
% \begin{macrocode}
-\DeclareCaptionLength{margin}{0pt}
-\DeclareCaptionLength{margin@}{\the\captionmargin}
-\DeclareCaptionLength{width}{0pt}
-\newdimen\caption@tempdima
+\newdimen\captionmargin
+\setlength\captionmargin{0pt}
+% \end{macrocode}
+% |\SetCaptionDefault{margin}{|\ldots|}| sets both default values,
+% i.e.~for the left and for the right margin.
+% \begin{macrocode}
+\newcommand\caption@setdefault@margin[3]{%
+ \caption@setdefault@length{#1}{left#2}{#3}%
+ \caption@setdefault@length{#1}{right#2}{#3}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@leftmargin}
+% \changes{v1.0n}{2007/04/01}{\cs{captionmarginx} renamed to \cs{captionmargin@}}
+% \changes{v2.3}{2021/01/17}{\cs{captionmargin@} replaced by \cs{caption@leftmargin} and \cs{caption@rightmargin}}
+% \begin{macro}{\caption@rightmargin}
+% \changes{v1.0n}{2007/04/01}{\cs{captionmarginx} renamed to \cs{captionmargin@}}
+% \changes{v2.3}{2021/01/17}{\cs{captionmargin@} replaced by \cs{caption@leftmargin} and \cs{caption@rightmargin}}
+% |\caption@leftmargin| and |\caption@rightmargin| contain the extra margin used for captions.
+% (These values will be used if the obsolete |\caption|\-|margin| is set to |0pt|.)
+% \begin{macrocode}
+\DeclareCaptionLength{leftmargin}{0pt}
+\DeclareCaptionLength{rightmargin}{0pt}
% \end{macrocode}
% \end{macro}
% \end{macro}
%
+% \begin{macro}{\caption@width}
+% \changes{v2.3}{2021/01/17}{This dimension renamed from \cs{captionwidth} to \cs{caption@width}}
+% |\caption@width| contains the total width used for captions.
+% Note that we can only set one value at a time, `margin' \emph{or} `width'.
+% If |\caption|\-|@width| is not zero we will take this value,
+% otherwise |\caption|\-|@left|\-|margin| and |\caption|\-|@right|\-|margin|.
% \begin{macrocode}
-\DeclareCaptionOption{margin}{\setcaptionmargin{#1}}
-\DeclareCaptionOption{margin*}{\setcaptionmargin*{#1}}
-\DeclareCaptionOption{width}{\setcaptionwidth{#1}}
-\DeclareCaptionOption{width*}{\setcaptionwidth*{#1}}
+\newdimen\caption@width
+\setlength\caption@width{0pt}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+\DeclareCaptionOption{margin}{\caption@setmargin{#1}}
+\DeclareCaptionOption{margin*}{\caption@setmargin*{#1}}
+\DeclareCaptionOption{width}{\caption@setwidth{#1}}
+\DeclareCaptionOption{width*}{\caption@setwidth*{#1}}
% \end{macrocode}
% \begin{macrocode}
\DeclareCaptionOption{calcmargin}{\caption@setcalcmargin{#1}}
@@ -1518,71 +1575,82 @@
\DeclareCaptionOption{maxmargin}{\caption@setoptcmd\caption@maxmargin{#1}}
% \end{macrocode}
%
-% \begin{macro}{\setcaptionmargin}
+% \begin{macro}{\caption@setmargin}
% \changes{v1.0f}{2005/10/24}{Renamed from \cs{caption@setmargin} to \cs{setcaptionmargin}}
% \changes{v1.0f}{2005/10/24}{\cs{setcaptionmargin} enhanced so it can take left+right margin}
% \changes{v1.1}{2007/08/11}{Starred variant added}
% \changes{v1.1}{2007/08/12}{\cs{setlength}\cs{captionmargin} \& \cs{setlength}\cs{captionmargin@} swapped so `\texttt{margin*=}\cs{captionmargin}' works in singleline options}
% \changes{v1.3}{2010/11/07}{Support for option \opt{calcmargin} added}
-% |\setcaptionmargin*|\marg{amount}\\
+% \changes{v2.3}{2021/01/17}{Renamed from \cs{setcaptionmargin} to \cs{caption@setmargin}; sets \cs{caption@width} resp.~\cs{caption@leftmargin} and \cs{caption@rightmargin} now}
+% \changes{v2.3}{2021/01/19}{Only the left or right margin can be set by leaving the other value blank}
+% |\caption@setmargin*|\marg{amount}\\
% sets the caption margin to the given \meta{amount}.
-% Please never use this in user documents, it's just there to
-% provide compatibility to the \package{caption2} package.
% \begin{macrocode}
-\newcommand*\setcaptionmargin{%
+\newcommand*\caption@setmargin{%
\caption@resetcalcmargin
- \caption@setmargin}
+ \caption@@setmargin}
% \end{macrocode}
% \begin{macrocode}
-\newcommand*\caption@setmargin{%
- \caption@teststar\caption@@setmargin\@gobble\@firstofone}
+\newcommand*\caption@@setmargin{%
+ \caption@teststar\caption@@@setmargin\@gobble\@firstofone}
% \end{macrocode}
% \begin{macrocode}
-\newcommand*\caption@@setmargin[2]{%
- #1{\captionwidth\z@}%
- \caption@@@setmargin#2,#2,\@nil}
+\newcommand*\caption@@@setmargin[2]{%
+ #1{\caption@width\z@}%
+ \caption@@@@setmargin#2,#2,\@nil}
+% \end{macrocode}
+% \begin{macrocode}
+\def\caption@@@@setmargin#1,#2,#3\@nil{%
+ \def\caption@tempa{#1#2}%
+ \ifx\caption@tempa\@empty
+ \caption@Error{Missing number}%
+ \else
+ \caption@@@@@setmargin{left}{#1}%
+ \caption@@@@@setmargin{right}{#2}%
+ \fi}
% \end{macrocode}
% \begin{macrocode}
-\def\caption@@@setmargin#1,#2,#3\@nil{%
- \caption@setlength{margin}{#1}%
- \caption@setlength{margin@}{#2}%
- \addtolength\captionmargin@{-\captionmargin}}
+\newcommand*\caption@@@@@setmargin[2]{%
+ \def\caption@tempa{#2}%
+ \ifx\caption@tempa\@empty \else
+ \caption@setlength{#1margin}{#2}%
+ \fi}
% \end{macrocode}
% \end{macro}
%
-% \begin{macro}{\setcaptionwidth}
+% \begin{macro}{\caption@setwidth}
% \changes{v1.0f}{2005/10/24}{Renamed from \cs{caption@setwidth} to \cs{setcaptionwidth}}
% \changes{v1.3}{2010/11/07}{Starred variant added}
% \changes{v1.3}{2010/11/07}{Support for option \opt{calcwidth} added}
-% |\setcaptionwidth*|\marg{amount}\\
+% \changes{v2.3}{2021/01/17}{Renamed from \cs{setcaptionwidth} to \cs{caption@setwidth}; sets \cs{caption@width} resp.~\cs{caption@leftmargin} and \cs{caption@rightmargin} now}
+% |\caption@setwidth*|\marg{amount}\\
% sets the caption width to the given \meta{amount}.
-% Please never use this in user documents, it's just there to
-% provide compatibility to the \package{caption2} package.
% \begin{macrocode}
-\newcommand*\setcaptionwidth{%
+\newcommand*\caption@setwidth{%
\caption@resetcalcmargin
- \caption@setwidth}
+ \caption@@setwidth}
% \end{macrocode}
% \begin{macrocode}
-\newcommand*\caption@setwidth{%
- \caption@teststar\caption@@setwidth\@gobble\@firstofone}
+\newcommand*\caption@@setwidth{%
+ \caption@teststar\caption@@@setwidth\@gobble\@firstofone}
% \end{macrocode}
% \begin{macrocode}
-\newcommand*\caption@@setwidth[2]{%
- #1{\captionmargin\z@\captionmargin@\z@}%
- \caption@setlength{width}{#2}}%
+\newcommand*\caption@@@setwidth[2]{%
+ #1{\caption@leftmargin\z@\caption@rightmargin\z@}%
+ \setlength\caption@width{#2}}
% \end{macrocode}
% \end{macro}
%
% \begin{macro}{\caption@setcalcmargin}
% \changes{v1.3}{2010/11/07}{This macro added}
+% \changes{v2.3}{2021/01/17}{Adapted to current implementation of \cs{caption@setmargin}}
% |\caption@setcalcmargin*|\marg{amount}\\
% sets the caption margin to the given \meta{amount}
% right before the caption will be typeset, i.e.\meta{amount} will
% not be evaluated immediately.
% \begin{macrocode}
\newcommand*\caption@setcalcmargin{%
- \caption@teststar{\caption@@setcalcmargin\caption@setmargin}%
+ \caption@teststar{\caption@@setcalcmargin\caption@@setmargin}%
\@secondoftwo\@firstoftwo}
% \end{macrocode}
% \begin{macrocode}
@@ -1605,13 +1673,14 @@
%
% \begin{macro}{\caption@setcalcwidth}
% \changes{v1.3}{2010/11/07}{This macro added}
+% \changes{v2.3}{2021/01/17}{Adapted to current implementation of \cs{caption@setmargin}}
% |\caption@setcalcwidth*|\marg{amount}\\
% sets the caption width to the given \meta{amount}
% right before the caption will be typeset, i.e.\meta{amount} will
% not be evaluated immediately.
% \begin{macrocode}
\newcommand*\caption@setcalcwidth{%
- \caption@teststar{\caption@@setcalcmargin\caption@setwidth}%
+ \caption@teststar{\caption@@setcalcmargin\caption@@setwidth}%
\@secondoftwo\@firstoftwo}
% \end{macrocode}
% \end{macro}
@@ -1737,9 +1806,9 @@
% \begin{macro}{\caption@hangindent}
% These are the indentions we support.
% \begin{macrocode}
-\DeclareCaptionLength{@indent}{0pt}
-\DeclareCaptionLength{@parindent}{0pt}
-\DeclareCaptionLength{@hangindent}{0pt}
+\DeclareCaptionLength{indent}{0pt}
+\DeclareCaptionLength{parindent}{0pt}
+\DeclareCaptionLength{hangindent}{0pt}
% \end{macrocode}
% \end{macro}
% \end{macro}
@@ -1750,13 +1819,13 @@
% \changes{v1.0f}{2005/08/22}{Undocumented defaults for \opt{parindent=}, \opt{hangindent=}, and \opt{parskip=} removed}
% \begin{macrocode}
\DeclareCaptionOption{indent}[\leftmargini]{% obsolete
- \caption@setlength{@indent}{#1}}
+ \caption@setlength{indent}{#1}}
\DeclareCaptionOption{indention}[\leftmargini]{%
- \caption@setlength{@indent}{#1}}
+ \caption@setlength{indent}{#1}}
\DeclareCaptionOption{parindent}{%
- \caption@setlength{@parindent}{#1}}
+ \caption@setlength{parindent}{#1}}
\DeclareCaptionOption{hangindent}{%
- \caption@setlength{@hangindent}{#1}}
+ \caption@setlength{hangindent}{#1}}
\DeclareCaptionOption{parskip}{%
\l@addto@macro\caption@@par{\setlength\parskip{#1}}}
% \end{macrocode}
@@ -1917,9 +1986,10 @@
% \begin{macro}{\DeclareCaptionBox}
% \changes{v1.5}{2012/03/15}{This macro added}
% \changes{v2.0}{2019/09/10}{Uses \cs{caption@decl} now}
+% \changes{v2.2f}{2020/10/26}{\cs{par} is now allowed as part of the \meta{code} argument}
% |\DeclareCaptionBox|\marg{name}\marg{code with \#1 and \#2}
% \begin{macrocode}
-\newcommand*\DeclareCaptionBox[2]{%
+\newcommand\DeclareCaptionBox[2]{%
\caption@decl{box}{#1}##1##2{#2}}
\@onlypreamble\DeclareCaptionBox
% \end{macrocode}
@@ -2245,9 +2315,10 @@
% \begin{macro}{\DeclareCaptionTextFormat}
% \changes{v1.0j}{2007/02/18}{This macro added}
% \changes{v2.0}{2019/09/10}{Uses \cs{caption@decl} now}
+% \changes{v2.2f}{2020/10/26}{\cs{par} is now allowed as part of the \meta{code} argument}
% |\DeclareCaptionTextFormat|\marg{name}\marg{code with \#1}
% \begin{macrocode}
-\newcommand*\DeclareCaptionTextFormat[2]{%
+\newcommand\DeclareCaptionTextFormat[2]{%
\caption@decl{textformat}{#1}##1{#2}}
\@onlypreamble\DeclareCaptionTextFormat
% \end{macrocode}
@@ -2260,11 +2331,11 @@
% There are three pre-defined text formats, called `empty', `simple' and `period'.
% \changes{v1.4}{2011/10/05}{Pre-defined text format `empty' added}
% \changes{v1.7}{2015/09/16}{The text format `empty' now takes care of the \cs{label}}
+% \changes{v2.3}{2020/12/26}{Clearance of \cs{caption@thelabel} replaced by \cs{caption@clrlabel}}
% \begin{macrocode}
\DeclareCaptionTextFormat{empty}{%
\caption@get@label#1\caption@makeanchor{}\@nil
- \caption@thelabel
- \global\let\caption@thelabel\relax}
+ \caption@thelabel\caption@clrlabel}
\long\def\caption@get@label#1\caption@makeanchor#2#3\@nil{%
\def\caption@tempa{#2}%
\ifx\caption@tempa\@empty
@@ -2284,9 +2355,7 @@
% \end{macrocode}
%
% \begin{macro}{\caption@getlabel}
-% \changes{v1.0}{2011/09/03}{\cs{label} can have optional arguments now}
% \changes{v1.7}{2015/09/16}{Moved from \package{bicaption} package to \package{caption3}}
-% \changes{v1.8d}{2019/09/01}{Bugfix: Global definition of \cs{caption@thelabel} added}
% \changes{v2.0}{2020/08/23}{Syntax changed}
% |\caption@getlabel|\marg{text}\\
% gets the label command out of the given caption text and stores it to
@@ -2324,8 +2393,19 @@
\l@addto@macro\caption@thelabel{[{#1}]}%
\caption@@@getlabel#2\@nil}
% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@clrlabel}
+% \changes{v1.7}{2015/09/16}{Moved from \package{bicaption} package to \package{caption3}}
+% \changes{v1.8d}{2019/09/01}{Bugfix: Global definition of \cs{caption@thelabel} added}
+% \changes{v2.3}{2020/12/26}{Code moved into the new macro \cs{caption@clrlabel}}
+% |\caption@clrlabel|\\
+% resets |\caption@the|\-|label| to |\relax|.
% \begin{macrocode}
-\let\caption@thelabel\relax
+\newcommand*\caption@clrlabel{\let\caption@thelabel\relax}
+% \end{macrocode}
+% \begin{macrocode}
+\caption@clrlabel
% \end{macrocode}
% \end{macro}
%
@@ -2703,16 +2783,19 @@
% usually has to take care for himself that this hint actually matches the
% right position.
%
-% \begin{macro}{\caption@declare@position}
+% \begin{macro}{\DeclareCaptionPosition}
% \changes{v2.0}{2020/07/26}{This macro added}
-% |\caption@declare@position|\marg{name}\marg{code}\\
-% declares a captionposition setting of the given \meta{name},
-% \meta{code} must either expand to |\@first|\-|of|\-|two| (top) or
-% |\@second|\-|of|\-|two| (below).
+% \changes{v2.3}{2021/01/02}{This macro renamed from \cs{caption@declare@position} to \cs{DeclareCaptionPosition} and re-written}
+% |\DeclareCaptionPosition|\marg{name}\marg{fallback-code}\marg{regular-code}\\
+% declares a caption position setting of the given \meta{name}.
+% The \meta{fallback-code} will be used when |\caption@iftop| is used before |\caption|
+% and the \meta{regular-code} will be used when |\caption| is used before |\caption@iftop|.
% \begin{macrocode}
-\newcommand*\caption@declare@position[2]{%
- \caption@decl{position}{#1}{#2}}
-\@onlypreamble\caption@declare@position
+\newcommand*\DeclareCaptionPosition[3]{%
+ \caption@decl[\edef]{position}{#1}{%
+ \unexpanded{\def\caption@fallback@position}####1####2\unexpanded{{#2}}%
+ \unexpanded{\def\caption@regular@position}####1####2\unexpanded{{#3}}}}
+\@onlypreamble\DeclareCaptionPosition
% \end{macrocode}
% \end{macro}
%
@@ -2733,38 +2816,45 @@
% \changes{v1.0a}{2004/01/22}{Now the positions \opt{t}, \opt{above}, \opt{b}, \opt{below}, and \opt{a} are allowed, too}
% \changes{v1.0c}{2004/08/10}{Usage of \cs{caption@defaultpos} added}
% \changes{v2.0}{2020/07/27}{Uses \cs{caption@set} now}
+% \changes{v2.3}{2021/01/02}{Uses \cs{caption@initposition} additionally}
% |\caption@setposition|\marg{position}\\
% puts |\caption@position| to the right value.
-% (Note: Since this command is used by the \package{floatrow} package as well
-% its syntax should not change.)
+% (Note: Since this command is used by the \package{floatrow} package as well its syntax should not change.)
% \begin{macrocode}
-\newcommand*\caption@setposition{\caption@set{position}}
+\newcommand*\caption@setposition{%
+ \caption@initposition
+ \caption@set{position}}
% \end{macrocode}
% \end{macro}
%
% These are the pre-defined position code snippets.
% \begin{macrocode}
-\caption@declare@position{t}{\@firstoftwo}
-\caption@declare@position{top}{\@firstoftwo}
-\caption@declare@position{above}{\@firstoftwo}
-\caption@declare@position{b}{\@secondoftwo}
-\caption@declare@position{bottom}{\@secondoftwo}
-\caption@declare@position{below}{\@secondoftwo}
-\caption@declare@position{a}{\caption@autoposition}% needed by floatrow package, \flrow@cappos
-\caption@declare@position{auto}{\caption@autoposition}
+\DeclareCaptionPosition{top}{#1}{#1}
+\def\caption@position@t{\caption@position@top}
+\def\caption@position@above{\caption@position@top}
+% \end{macrocode}
+% \begin{macrocode}
+\DeclareCaptionPosition{bottom}{#2}{#2}
+\def\caption@position@b{\caption@position@bottom}
+\def\caption@position@below{\caption@position@bottom}
% \end{macrocode}
%
% \changes{v1.1}{2007/05/08}{Default position changed from `bottom' to `auto'}
-% `default' usually maps to `auto'.
+% \changes{v1.3}{2021/01/02}{Default position changed back from `auto' to `bottom'}
+% `default' usually maps to `bottom'.
% \begin{macrocode}
-\SetCaptionDefault{position}{auto}
+\SetCaptionDefault{position}{bottom}
% \end{macrocode}
%
-% \begin{macro}{\caption@autoposition}
-% \changes{v2.0}{2020/07/27}{This macro added}
-% If in doubt, `position=auto' maps to `position=below'.
+% \begin{macro}{\caption@initposition}
+% \changes{v2.3}{2021/01/02}{This macro added}
+% |\caption@initposition|\\
+% initialize the position option defined with |\Declare|\-|Caption|\-|Position|.
+% This macro is usually used at |\@float|, i.e. at the beginning of a floating
+% environment.
% \begin{macrocode}
-\let\caption@autoposition\@secondoftwo
+\newcommand*\caption@initposition{%
+ \let\caption@@iftop\@undefined}
% \end{macrocode}
% \end{macro}
%
@@ -2773,10 +2863,13 @@
% \changes{v1.0c}{2005/02/12}{Adapted to \cs{caption@defaultpos}}
% \changes{v1.1}{2007/05/08}{Position will be fixed to `bottom' if `auto'}
% \changes{v2.0}{2020/07/27}{Adapted to current implementation of `auto'}
+% \changes{v2.3}{2021/01/02}{Adapted to current implementation of `position'}
% |\caption@iftop|\marg{true-code}\marg{false-code}\\
-% Since version \version{2.0} this command is identical to |\caption@position|.
+% tests if the caption position is set to `top' and sets the state to 2.
% \begin{macrocode}
-\newcommand*\caption@iftop{\caption@position}
+\newcommand*\caption@iftop{%
+ \caption@@fixposition\caption@fallback@position
+ \caption@@iftop}
% \end{macrocode}
% \end{macro}
%
@@ -2784,39 +2877,22 @@
% \changes{v1.0a}{2004/01/23}{\cs{ifvmode} added}
% \changes{v1.0b}{2004/05/16}{Split into \cs{caption@fixposition} & \cs{caption@autoposition}}
% \changes{v2.0}{2020/07/27}{Adapted to current implementation of `auto'}
+% \changes{v2.3}{2021/01/02}{Adapted to current implementation of `position'}
% |\caption@fixposition|\\
-% We try to guess the current position of the caption by checking |\prev|\-|depth|.\par
-% A different solution would be setting the |\space|\-|factor| to something
-% not much less than 1000 (for example 994) in |\caption@start| and
-% checking this value here by |\ifnum\space|\-|factor=994|.
-% (It's implemented in the \package{threeparttable} package\cite{threeparttable} this way.)\par
-% Another idea would be checking |\@if|\-|mini|\-|page|, but since some packages
-% typeset the caption within a simple |\vbox| this does not seem to be a good one.
+% freezes the position settings defined with |\Declare|\-|Caption|\-|Position|
+% by expanding the given code, either the \meta{fallback-code} or the \meta{regular-code}.
+% This macro is usually used at |\caption|, i.e. before the main caption is
+% typeset. (Note: This macro is not used at |\caption| inside sub-figures.)
% \begin{macrocode}
\newcommand*\caption@fixposition{%
- \ifvmode
- \edef\caption@tempa{\the\prevdepth}%
- \caption@Debug{\protect\prevdepth=\caption@tempa}%
- \ifdim\prevdepth>-\p@
- \let\caption@autoposition\@secondoftwo % position=below
- \else
- \let\caption@autoposition\@firstoftwo % position=above
- \fi
- \else
- \caption@Debug{no \protect\prevdepth}%
- \let\caption@autoposition\@secondoftwo % position=below
- \fi}
+ \caption@@fixposition\caption@regular@position}
% \end{macrocode}
-% \end{macro}
-%
-% \begin{macro}{\caption@setautoposition}
-% \changes{v1.1}{2007/06/10}{This macro added}
-% \changes{v2.0}{2020/07/27}{Adapted to current implementation of `auto'}
-% |\caption@setautoposition|\marg{position}\\
-% replaces the above algorithm by a different one (or a fixed position setting).
% \begin{macrocode}
-\newcommand*\caption@setautoposition[1]{%
- \def\caption@fixposition{\caption@@set{position}{autoposition}{#1}}}
+\newcommand*\caption@@fixposition[1]{%
+ \ifx\caption@@iftop\@undefined
+ \caption@position % defines \caption@fallback@position and \caption@regular@position
+ #1{\let\caption@@iftop\@firstoftwo}{\let\caption@@iftop\@secondoftwo}%
+ \fi}
% \end{macrocode}
% \end{macro}
%
@@ -3643,14 +3719,21 @@
% \subsection{The setspace package}
% \changes{v1.0n}{2007/04/02}{\package{setspace} package support added}
% \changes{v1.2d}{2009/10/09}{\package{setspace} package support revised}
+% \changes{v2.3}{2021/11/20}{The font option \opt{stretch} does not require the \package{setspace} package anymore}
%
% \begin{macrocode}
\DeclareCaptionFont{singlespacing}{%
- \caption@ifdefined\setspace@singlespace{%
- \setstretch\setspace@singlespace}{}}% normally 1
+ \caption@ifdefined\setspace@singlespace
+ {\setstretch\setspace@singlespace}% usually 1, could be changed by \SetSinglespace
+ {}}
+\DeclareCaptionFont{stretch}{%
+ \caption@ifdefined\setstretch
+ {\setstretch{#1}}%
+ {\def\baselinestretch{#1}\selectfont}}
+% \end{macrocode}
+% \begin{macrocode}
\DeclareCaptionFont[setspace]{onehalfspacing}{\onehalfspacing}
\DeclareCaptionFont[setspace]{doublespacing}{\doublespacing}
-\DeclareCaptionFont[setspace]{stretch}{\setstretch{#1}}
% \end{macrocode}
%
% \subsection{The subfig package}
@@ -3675,7 +3758,7 @@
\let\caption@setfloattype\@gobble
\let\@dottedxxxline\sf@NEW@dottedxxxline
\let\sf@subfloat\sf@NEW@subfloat
- \let\sf@ifpositiontop\caption@iftop
+ \def\sf@ifpositiontop{\caption@iftop}%
% \end{macrocode}
% \begin{macrocode}
\fi
@@ -3744,6 +3827,7 @@
% \changes{v1.7}{2015/09/15}{Argument \#3 which holds the environment name added to \cs{caption@lstfmt}}
% \changes{v1.7}{2015/09/20}{Unfortunately \package{subfig} defines and uses \cs{caption@lstfmt} as well, so I replaced the third argument with \cs{captionlisttype}}
% \changes{v1.8}{2018/09/06}{Adapted to the \package{chkfloat} package}
+% \changes{v2.3}{2021/01/06}{Usage of \cs{p@xxx} and \cs{thexxx} replaced by \cs{caption@p} and \cs{caption@the}}
% |\caption@addcontentsline|\marg{type}\marg{list entry}\\
% makes an entry in the list-of-whatever, if requested, i.e.~the argument
% \meta{list entry} is not empty and |list|\-|of=| was set to |true|.
@@ -3762,7 +3846,7 @@
\@tempa
{\caption@Debug{addcontentsline: #1 => \caption@listtype}%
% \caption@setoptions\caption@listtype
- \@namedef{the\caption@listtype}{\@nameuse{the#1}}}%
+ \@namedef{the\caption@listtype}{\caption@the{#1}}}%
\expandafter\caption@@addcontentsline\expandafter{\caption@listtype}{#2}%
\endgroup}%
\caption@addsubcontentslines{#1}}
@@ -3776,7 +3860,7 @@
\caption@add@contentsline
{\csname ext@#1\endcsname}%
{#1}%
- {\caption@listformat{\@nameuse{p@#1}}{\@nameuse{the#1}}}%
+ {\caption@listformat{\caption@p{#1}}{\caption@the{#1}}}%
{\ignorespaces #2}%
\caption@chkfloat{#1}{#2}}}}
% \end{macrocode}
@@ -3838,20 +3922,71 @@
% \begin{macro}{\caption@fnum}
% \changes{v1.1}{2007/08/21}{This macro added}
% \changes{v2.0}{2020/08/03}{The original definition will be stored in \cs{caption@original@fnum}}
+% \changes{v2.3}{2021/01/06}{Usage of \cs{thexxx} replaced by \cs{caption@the}}
+% \changes{v2.3}{2022/01/05}{Definition of \cs{caption@@fnum} added}
% |\caption@fnum|\marg{float type}\\
+% |\caption@@fnum|\marg{float type}\marg{name}\marg{number}\\
% typesets the caption label; this acts as replacement for |\fnum@|\meta{float type}.
% \begin{macrocode}
\newcommand*\caption@fnum[1]{%
+ \caption@@fnum{#1}{\@nameuse{#1name}}{\caption@the{#1}}}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@@fnum[1]{%
\expandafter\let\expandafter\caption@original@fnum\csname caption@fnum@#1\endcsname % for label format `original'
- \caption@labelformat{\@nameuse{#1name}}{\@nameuse{the#1}}}
+ \caption@labelformat}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@setfnum}
+% \changes{v1.1}{2007/03/10}{This macro added}
+% \changes{v2.0}{2020/08/03}{Adapted to \package{caption3} v2.0}
+% \changes{v2.3}{2022/01/05}{Definition moved from package to kernel}
+% |\caption@setfnum|\marg{type}\\
+% stores the original definition of |\fnum@|\meta{type} in |\caption@fnum@|\meta{type}
+% and re-defines it according the caption label format set with |label|\-|format=|.
+% \begin{macrocode}
+\newcommand*\caption@setfnum[1]{%
+ \@ifundefined{caption@fnum@#1}%
+ {\expandafter\let\csname caption@fnum@#1\expandafter\endcsname\csname fnum@#1\endcsname
+ \@namedef{fnum@#1}{\caption@fnum{#1}}}%
+ {}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@p}
+% \changes{v2.3}{2021/01/06}{This macro added}
+% |\caption@p| is a simple wrapper macro for |\@nameuse{p@#1}|.
+% \begin{macrocode}
+\newcommand*\caption@p[1]{\@nameuse{p@#1}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@the}
+% \changes{v2.3}{2021/01/06}{This macro added}
+% |\caption@the| is a simple wrapper macro for |\@nameuse{the#1}|.
+% \begin{macrocode}
+\newcommand*\caption@the[1]{\@nameuse{the#1}}
% \end{macrocode}
% \end{macro}
%
% \begin{macro}{\caption@make}
-% |\caption@make|\marg{float name}\marg{ref.\ number}\marg{text}\\
+% \changes{v2.3}{2022/01/05}{Optional argument \meta{float type} added}
+% |\caption@make|\oarg{float type}\marg{float name}\marg{ref.\ number}\marg{text}\\
% typesets the caption.
% \begin{macrocode}
-\newcommand\caption@make[2]{\caption@@make{\caption@labelformat{#1}{#2}}}
+\newcommand*\caption@make{%
+ \kernel@ifnextchar[%]
+ \caption@make@
+ {\caption@make@@\caption@labelformat}}
+% \end{macrocode}
+% \begin{macrocode}
+\def\caption@make@[#1]{%
+ \caption@make@@{\caption@@fnum{#1}}}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand\caption@make@@[3]{%
+ \caption@@make{#1{#2}{#3}}}
% \end{macrocode}
% \end{macro}
%
@@ -3877,6 +4012,7 @@
% \changes{v1.6}{2013/05/01}{Usage of \cs{caption@box} added}
% \changes{v1.7}{2016/01/31}{Adapted to the \package{bicaption} package}
% \changes{v1.8f}{2019/12/18}{Usage of \cs{linewidth} replaced by \cs{hsize}}
+% \changes{v2.3}{2021/01/16}{Some code encapsulated as \cs{caption@make@leftmargin}, \cs{caption@make@parbox}, \cs{caption@make@indention}, and \cs{caption@make@rightmargin}}
% |\caption@@make|\marg{caption label}\marg{caption text}
% \begin{macrocode}
\newcommand\caption@@make[2]{%
@@ -3901,32 +4037,20 @@
% Typeset the left margin (option |margin=|)
% \begin{macrocode}
\caption@calcmargin
- \caption@tempdima\captionmargin
- \ifdim\captionmargin@=\z@ \else
- \caption@ifoddpage{}{\advance\caption@tempdima\captionmargin@\relax}%
- \fi
- \caption@ifhmode{\advance\caption@tempdima\caption@indent\relax}%
- \hspace\caption@tempdima
+ \caption@make@leftmargin
% \end{macrocode}
-% We actually use a |\vbox| of width |\captionwidth - \caption@indent|
+% We actually use a |\vbox| of width |\caption@width - \caption@indent|
% to typeset the caption.
% \Note{\cs{captionindent} is \emph{not} supported if the caption format
% was defined with \cs{DeclareCaptionFormat*}.}
% \begin{macrocode}
- \caption@tempdima\captionwidth
- \caption@ifhmode{\advance\caption@tempdima-\caption@indent\relax}%
- \caption@parbox\caption@tempdima{%
+ \caption@make@parbox{%
% \end{macrocode}
% Typeset the indention (option |indention=|)\\
% {\small Bugfix 04-05-05:
% |\hskip-\caption@indent| replaced by |\ifdim\caption@indent=\z@|\ldots}
% \begin{macrocode}
- \caption@ifhmode{%
- \ifdim\caption@indent=\z@
- \leavevmode
- \else
- \hskip-\caption@indent
- \fi}%
+ \caption@make@indention
% \end{macrocode}
% Typeset the caption itself and close the |\caption@parbox|
% \begin{macrocode}
@@ -3934,11 +4058,7 @@
% \end{macrocode}
% Typeset the right margin (option |margin=|)
% \begin{macrocode}
- \caption@tempdima\captionmargin
- \ifdim\captionmargin@=\z@ \else
- \caption@ifoddpage{\advance\caption@tempdima\captionmargin@\relax}{}%
- \fi
- \hspace\caption@tempdima
+ \caption@make@rightmargin
% \end{macrocode}
% Close the outer box |\caption@box|
% \begin{macrocode}
@@ -3948,7 +4068,30 @@
\caption@endhook}
% \end{macrocode}
% \begin{macrocode}
-\newcommand\caption@@make@epilogue{%
+\newcommand*\caption@make@leftmargin{%
+ \caption@tempdima\caption@leftmargin
+ \caption@ifhmode{\advance\caption@tempdima\caption@indent\relax}%
+ \hspace\caption@tempdima}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@make@parbox{%
+ \caption@tempdima\caption@width
+ \caption@ifhmode{\advance\caption@tempdima-\caption@indent\relax}%
+ \caption@parbox\caption@tempdima}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@make@indention{%
+ \caption@ifhmode{%
+ \ifdim\caption@indent=\z@
+ \leavevmode
+ \else
+ \hskip-\caption@indent
+ \fi}}
+\newcommand*\caption@make@rightmargin{%
+ \hspace\caption@rightmargin}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@@make@epilogue{%
\global\caption@starfalse}
% \end{macrocode}
% \end{macro}
@@ -3959,47 +4102,70 @@
% \changes{v1.1}{2006/05/13}{Check of \cs{@listdepth} removed (not necessary anymore), use \cs{linewidth} instead of \cs{hsize}}
% \changes{v1.5}{2012/12/26}{max-margin stuff moved from \cs{caption@@make} to here}
% \changes{v1.8f}{2019/12/18}{Usage of \cs{linewidth} replaced by \cs{hsize}}
+% \changes{v2.3}{2021/01/17}{Uses \cs{caption@width} resp.~\cs{caption@leftmargin} and \cs{caption@rightmargin} now}
% |\caption@calcmargin|\\
-% calculates |\caption|\-|margin| and |\caption|\-|width|, so both contain
-% valid values.
+% calculates |\caption|\-|@left|\-|margin|, |\caption|\-|@width|, and |\caption|\-|@right|\-|margin|,
+% so all three contain valid values afterwards.
% \begin{macrocode}
\newcommand*\caption@calcmargin{%
\caption@calcmargin@hook
+ \ifdim\caption@width=\z@
% \end{macrocode}
-% Check margin, if |\caption@min|\-|margin| or |\caption@max|\-|margin| is set
+% If |\caption|\-|margin| is set use this value instead of |\caption@left|\-|margin| and |\caption@right|\-|margin|
% \begin{macrocode}
- \ifx\caption@maxmargin\@undefined \else
- \ifdim\captionmargin>\caption@maxmargin\relax
- \captionmargin\caption@maxmargin\relax
+ \ifdim\captionmargin=\z@ \else
+ \caption@leftmargin\captionmargin
+ \caption@rightmargin\captionmargin
\fi
- \fi
- \ifx\caption@minmargin\@undefined \else
- \ifdim\captionmargin<\caption@minmargin\relax
- \captionmargin\caption@minmargin\relax
+% \end{macrocode}
+% Check the margin values if |\caption@min|\-|margin| or |\caption@max|\-|margin| is set
+% \begin{macrocode}
+ \ifx\caption@maxmargin\@undefined \else
+ \ifdim\caption@leftmargin>\caption@maxmargin
+ \caption@leftmargin\caption@maxmargin
+ \fi
+ \ifdim\caption@rightmargin>\caption@maxmargin
+ \caption@rightmargin\caption@maxmargin
+ \fi
+ \fi
+ \ifx\caption@minmargin\@undefined \else
+ \ifdim\caption@leftmargin<\caption@minmargin
+ \caption@leftmargin\caption@minmargin
+ \fi
+ \ifdim\caption@rightmargin<\caption@minmargin
+ \caption@rightmargin\caption@minmargin
+ \fi
\fi
- \fi
+% \end{macrocode}
+% Check if the left and right margins needs to be swapped
+% \begin{macrocode}
+ \ifdim\caption@leftmargin=\caption@rightmargin \else
+ \caption@ifoddpage{}{%
+ \caption@tempdima\caption@leftmargin
+ \caption@leftmargin\caption@rightmargin
+ \caption@rightmargin\caption@tempdima}%
+ \fi
+% \end{macrocode}
+% Set |\caption@width|
+% \begin{macrocode}
+ \caption@width\hsize
+ \advance\caption@width by -\caption@leftmargin\relax
+ \advance\caption@width by -\caption@rightmargin\relax
% \end{macrocode}
% \begin{macrocode}
- \ifdim\captionwidth=\z@
- \captionwidth\hsize\relax
- \advance\captionwidth by -2\captionmargin\relax
- \advance\captionwidth by -\captionmargin@\relax
\else
- \captionmargin\hsize\relax
- \advance\captionmargin by -\captionwidth\relax
- \divide\captionmargin by 2\relax
- \captionmargin@\z@\relax
+ \caption@leftmargin\hsize
+ \advance\caption@leftmargin by -\caption@width\relax
+ \divide\caption@leftmargin by 2\relax
+ \caption@rightmargin\caption@leftmargin
\fi
% \end{macrocode}
% \begin{macrocode}
\caption@Debug{%
- \string\hsize=\the\hsize,
- \string\captionwidth=\the\captionwidth,\MessageBreak
- \string\captionmargin=\the\captionmargin,
- \string\captionmargin@=\the\captionmargin@}%
-% \end{macrocode}
-% \begin{macrocode}
-}
+ hsize=\the\hsize,
+ width=\the\caption@width,\MessageBreak
+ leftmargin=\the\caption@leftmargin,
+ rightmargin=\the\caption@rightmargin}}
% \end{macrocode}
% \end{macro}
%
@@ -4020,10 +4186,10 @@
\begingroup
\caption@singleline
\let\caption@justification\relax
- \caption@calcmargin % calculate \captionwidth
+ \caption@calcmargin % calculate \caption@width
\caption@prepareslc
\sbox\@tempboxa{\caption@@@make{#1}{#2}}%
- \ifdim\wd\@tempboxa>\captionwidth
+ \ifdim\wd\@tempboxa>\caption@width
\endgroup
\singlelinecaptionfalse
#4%
@@ -4069,8 +4235,19 @@
% \end{macrocode}
% \end{macro}
%
+% \begin{macro}{\AtCaptionSingleLineCheck}
+% \changes{v2.3}{2021/06/30}{This macro added}
+% |\AtCaptionSingleLineCheck|\marg{code}\\
+% adds code to be expanded right before the single-line-check.
+% (This will be done in an extra group, so all changes done are unually limited to the check.)
+% \begin{macrocode}
+\newcommand*\AtCaptionSingleLineCheck{%
+ \g@addto@macro\caption@prepareslc}
+% \end{macrocode}
+% \end{macro}
+%
% \begin{macro}{\caption@prepareslc}
-% \changes{v1.0b}{2004/05/16}{Bugfix: Redefinition of \cs{label} \& \cs{@footnotetext} added}
+% \changes{v1.0b}{2004/05/16}{Redefinition of \cs{label} \& \cs{@footnotetext} added}
% \changes{v1.0b}{2004/05/16}{Redefine \cs{stepcounter} instead of \cs{footnote(mark)}}
% \changes{v1.0c}{2005/02/12}{\cs{let}\cs{caption@justification}\cs{relax} added}
% \changes{v1.0f}{2005/07/09}{Support of \package{endnotes} package added}
@@ -4078,18 +4255,18 @@
% \changes{v1.1}{2007/06/13}{Redefinition of \cs{(H@)refstepcounter} added}
% \changes{v1.1}{2007/08/12}{Redefinition of \cs{label} improved}
% \changes{v1.1c}{2007/10/06}{Definition of \cs{caption@l@stepcounter} added}
-% \changes{v1.3}{2011/07/07}{Bugfix 11-07-06: Redefinition of \cs{footnote} and \cs{footnotemark} added, redefinition of \cs{stepcounter} and \cs{refstepcounter} dropped}
-% \changes{v1.4a}{2011/10/22}{Redefinition of \cs{footnote} revised}
+% \changes{v1.3}{2011/07/07}{Redefinition of \cs{footnote} and \cs{footnotemark} added, redefinition of \cs{stepcounter} and \cs{refstepcounter} dropped}
% \changes{v1.5}{2013/04/13}{Redefinition os \cs{glsunset} added}
% \changes{v1.8}{2018/01/21}{Redefinition of \cs{endnote} added (thanks to Markus Kohm)}
% \changes{v1.8}{2018/05/16}{Redefinition of \cs{acused} added}
% \changes{v1.8}{2018/05/26}{Definition method changed so it can be pre-defined by other packages}
% \changes{v1.8}{2018/05/27}{Redefinition of \cs{hypertarget} added}
+% \changes{v2.3}{2021/07/03}{Redefinition of \cs{footnote} and \cs{endnote} stuff revised}
% |\caption@prepareslc|\\
% re-defines anything which could disturb the single-line-check.
% \begin{macrocode}
\providecommand*\caption@prepareslc{}
-\g@addto@macro\caption@prepareslc{%
+\AtCaptionSingleLineCheck{%
\let\label\caption@gobble
\let\hypertarget\@gobbletwo
% \end{macrocode}
@@ -4100,21 +4277,29 @@
% \item The footnote text will not be evaluated twice
% \end{enumerate}
% \begin{macrocode}
- \let\caption@footnote@ORI\footnote
- \def\footnote{\caption@withoptargs\caption@footnote}%
- \let\caption@footnotemark@ORI\footnotemark
- \def\footnotemark{\caption@withoptargs\caption@footnotemark}%
- \let\caption@footnotetext@ORI\@footnotetext
- \let\@footnotetext\caption@gobble
+ \let\footnote\caption@footnote
+ \let\footnotemark\caption@footnotemark
+ \let\footnotetext\caption@footnotetext
+ \let\@footnotetext\@gobble
+% \end{macrocode}
+% Adaption to the \package{hyperref} package
+% \begin{macrocode}
+ \let\H@@footnotetext\@gobble
+ \let\H@@mpfootnotetext\@gobble
+ \caption@ifdefined\H@@footnotemark
+ {\let\@footnotemark\H@@footnotemark}%
+ {}%
+% \end{macrocode}
+% Adaption to the \package{tablefootnote} package
+% \begin{macrocode}
+ \let\tablefootnote\caption@footnote
% \end{macrocode}
% Same for \cs{endnote}
% \begin{macrocode}
- \let\caption@endnote@ORI\endnote
- \def\endnote{\caption@withoptargs\caption@endnote}%
- \let\caption@endnotemark@ORI\endnotemark
- \def\endnotemark{\caption@withoptargs\caption@endnotemark}%
- \let\caption@endnotetext@ORI\@endnotetext
- \let\@endnotetext\caption@gobble
+ \let\endnote\caption@endnote
+ \let\endnotemark\caption@endnotemark
+ \let\endnotetext\caption@endnotetext
+ \let\@endnotetext\@gobble
% \end{macrocode}
% Adaption to the \package{acronym} package\par
% See also \url{https://tex.stackexchange.com/questions/428788}
@@ -4135,28 +4320,106 @@
% \begin{macrocode}
}
% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@footnote}
+% \changes{v1.3}{2011/07/07}{This macro added}
+% \changes{v1.4a}{2011/10/22}{This macro revised}
+% \changes{v2.3}{2021/07/03}{This macro re-written}
+% The following code was taken from |base/ltfloat.dtx| but |\step|\-|counter|
+% is replaced by |\caption@l@step|\-|counter| so the footnote counter will
+% only be incremented temporarily for the single-line-check.
+% (In the past we had re-used the original code but with re-defined
+% |\step|\-|counter| but this has proofed as non-sufficient when
+% using footnote related packages like the \package{footmisc} package.
+% Now we might end up getting a wrong footnote marker, but this code has to
+% be sufficient for the single-line-check.))
% \begin{macrocode}
-\newcommand\caption@footnote[2]{%
- \caption@footnotemark{#1}}
+\newcommand*\caption@footnote{%
+ \@ifnextchar[%]
+ \@xfootnote
+ {\caption@l@stepcounter\@mpfn
+ \protected@xdef\@thefnmark{\thempfn}%
+ \@footnotemark\@footnotetext}}
% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@footnotemark}
+% \changes{v1.3}{2011/07/07}{This macro added}
+% \changes{v2.3}{2021/07/03}{This macro re-written}
+% The following code was taken from |base/ltfloat.dtx| but |\step|\-|counter|
+% is replaced by |\caption@l@step|\-|counter| so the footnote counter will
+% only be incremented temporarily for the single-line-check.
% \begin{macrocode}
-\newcommand\caption@footnotemark[1]{%
- \begingroup
- \let\stepcounter\caption@l@stepcounter
- \caption@footnotemark@ORI#1\relax
- \endgroup}
+\newcommand*\caption@footnotemark{%
+ \@ifnextchar[%]
+ \@xfootnotemark
+ {\caption@l@stepcounter{footnote}%
+ \protected@xdef\@thefnmark{\thefootnote}%
+ \@footnotemark}}
% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@footnotetext}
+% \changes{v2.3}{2021/07/03}{This macro added}
+% The following code was taken from |base/ltfloat.dtx|.
% \begin{macrocode}
-\newcommand\caption@endnote[2]{%
- \caption@endnotemark{#1}}
+\newcommand*\caption@footnotetext{%
+ \@ifnextchar[%]
+ \@xfootnotenext
+ {\protected@xdef\@thefnmark{\thempfn}%
+ \@footnotetext}}
% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@endnote}
+% \changes{v1.8}{2018/01/21}{This macro added}
+% \changes{v2.3}{2021/07/03}{This macro re-written}
+% The following code was taken from |endnotes/endnotes.sty| but |\step|\-|counter|
+% is replaced by |\caption@l@step|\-|counter| so the footnote counter will
+% only be incremented temporarily for the single-line-check.
+% (In the past we had re-used the original code but with re-defined
+% |\step|\-|counter|.)
% \begin{macrocode}
-\newcommand\caption@endnotemark[1]{%
- \begingroup
- \let\stepcounter\caption@l@stepcounter
- \caption@endnotemark@ORI#1\relax
- \endgroup}
+\newcommand*\caption@endnote{%
+ \@ifnextchar[%]
+ \@xendnote
+ {\caption@l@stepcounter{endnote}%
+ \protected@xdef\@theenmark{\theendnote}%
+ \@endnotemark\@endnotetext}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@endnotemark}
+% \changes{v1.8}{2018/01/21}{This macro added}
+% \changes{v2.3}{2021/07/03}{This macro re-written}
+% The following code was taken from |endnotes/endnotes.sty| but |\step|\-|counter|
+% is replaced by |\caption@l@step|\-|counter| so the footnote counter will
+% only be incremented temporarily for the single-line-check.
+% \begin{macrocode}
+\newcommand*\caption@endnotemark{%
+ \@ifnextchar[%]
+ \@xendnotemark
+ {\caption@l@stepcounter{endnote}%
+ \protected@xdef\@theenmark{\theendnote}%
+ \@endnotemark}}
% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@endnotetext}
+% \changes{v2.3}{2021/07/03}{This macro added}
+% The following code was taken from |endnotes/endnotes.sty|.
+% \begin{macrocode}
+\newcommand*\caption@endnotetext{%
+ \@ifnextchar[%]
+ \@xendnotenext
+ {\protected@xdef\@theenmark{\theendnote}%
+ \@endnotetext}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@l@stepcounter}
+% \changes{v1.3}{2011/07/07}{This macro added}
% \begin{macrocode}
\newcommand*\caption@l@stepcounter[1]{%
\advance\csname c@#1\endcsname\@ne\relax}
@@ -4457,7 +4720,7 @@
% Check if the sub-type was already defined by |\Declare|\-|Sub|\-|Type|.
% If not, define the counter and list entry.
% \begin{macrocode}
- \caption@ifsubtype{#4}%
+ \caption@ifdefined@subtype{#4}%
{\caption@Debug{Modify subtype `#4'}}%
{\caption@Debug{New subtype `#4'}%
\newcounter{#4}[{#3}]%
@@ -4551,14 +4814,14 @@
% \end{macrocode}
% \end{macro}
%
-% \begin{macro}{\caption@ifsubtype}
-% \changes{v1.8g}{2020/01/02}{This macro added}
+% \begin{macro}{\caption@ifdefined@subtype}
+% \changes{v1.8g}{2020/01/02}{This macro definition added}
% \changes{v1.13}{2020/07/28}{Uses \cs{caption@ifin@list} now}
-% |\caption@ifsubtype|\marg{yes-code}\marg{no-code}\\
-% checks if the given subtype was defined with
-% |\Declare|\-|Caption|\-|Sub|\-|Type|.
+% \changes{v2.3}{2022/01/07}{Renamed from \cs{caption@ifsubtype} to \cs{caption@ifdefined@subtype}}
+% |\caption@ifdefined@subtype|\marg{subtype}\marg{yes-code}\marg{no-code}\\
+% checks if the given subtype was defined with |\Declare|\-|Caption|\-|Sub|\-|Type|.
% \begin{macrocode}
-\newcommand*\caption@ifsubtype{%
+\newcommand*\caption@ifdefined@subtype{%
\caption@ifin@list\caption@subtypelist}
% \end{macrocode}
% \end{macro}
@@ -4606,7 +4869,7 @@
\caption@ifdefined\@memresetsubcounter
{\let\caption@memresetsubcounter\@memresetsubcounter
\renewcommand*\@memresetsubcounter[1]{%
- \caption@ifsubtype{sub#1}\@gobble\caption@memresetsubcounter{#1}}}%
+ \caption@ifdefined@subtype{sub#1}\@gobble\caption@memresetsubcounter{#1}}}%
{}
% \end{macrocode}
% \end{macro}
diff --git a/macros/latex/contrib/caption/fallback/v1/caption.dtx b/macros/latex/contrib/caption/fallback/v1/caption.dtx
new file mode 100644
index 0000000000..5d84d0cc95
--- /dev/null
+++ b/macros/latex/contrib/caption/fallback/v1/caption.dtx
@@ -0,0 +1,489 @@
+% \iffalse
+% caption.dtx - The caption package
+% (c) 1994-95 Axel Sommerfeldt (axel@hp1.ang-physik.uni-kiel.de)
+%
+% --------------------------------------------------------------------------
+%
+% It may be distributed and/or modified under the
+% conditions of the LaTeX Project Public License, either version 1.2
+% of this license or (at your option) any later version.
+% The latest version of this license is in
+% http://www.latex-project.org/lppl.txt
+% and version 1.2 or later is part of all distributions of LaTeX
+% version 1999/12/01 or later.
+%
+%<*driver>
+\documentclass{ltxdoc}
+\setlength{\parindent}{0pt}
+\setlength{\parskip}{\smallskipamount}
+\usepackage[hang,small,bf]{caption}[1995/01/30]
+\setlength{\captionmargin}{20pt}
+\begin{document}
+ \DocInput{caption.dtx}
+\end{document}
+%</driver>
+% \fi
+%
+% \providecommand{\LaTeXcomp}{The \LaTeX{} Companion}
+% \newcommand{\purerm}[1]{{\upshape\mdseries\rmfamily #1}}
+% \newcommand{\puresf}[1]{{\upshape\mdseries\sffamily #1}}
+% \newenvironment{Options}[1]%
+% {\begin{list}{}{\renewcommand{\makelabel}[1]{\texttt{##1}\hfil}%
+% \settowidth{\labelwidth}{\texttt{#1\space}}%
+% \setlength{\leftmargin}{\labelwidth}%
+% \addtolength{\leftmargin}{\labelsep}}}%
+% {\end{list}}
+%
+% \def\packageversion{1.4b}
+% \def\packagedate{1995/04/05}
+% \changes{v1.0}{27 Oct 94}{First release}
+% \changes{v1.2}{28 Nov 94}{Works now with the {\tt figure*} and {\tt table*} environments, too}
+%
+% \title{The \puresf{caption} package\thanks{This package has version number
+% \packageversion, last revised \packagedate.}}
+% \author{Axel Sommerfeldt\\\texttt{axel@hp1.ang-physik.uni-kiel.de}}
+% \date{1995/04/05}
+% \maketitle
+%
+% \begin{abstract}
+% The \textsf{caption} package provides many ways to customise the captions
+% in floating environments such |figure| and |table|.
+% The |\rotcaption| command and the |sidewaysfigure| and |sidewaystable|
+% environments provided by the \textsf{rotating} package from S.~Rahtz and
+% L.~Barroca are also supported.
+% The \textsf{caption} package also cooperates with the \textsf{float}
+% package written by A.~Lingnau and the \textsf{subfigure} package written by
+% S.D.~Cochran.
+% \end{abstract}
+%
+% \section{The user interface}
+% \changes{v1.1}{3 Nov 94}{New captiontype: {\tt centerlast}}
+% \changes{v1.4}{30 Jan 95}{New option: {\tt nooneline}}
+%
+% To use this package just type
+% \begin{quote}
+% |\usepackage|\oarg{options}|{caption}|
+% \end{quote}
+% in the preamble of your document,
+% where the following options are supported:
+% \begin{quote}\begin{Options}{scriptsize\purerm{, \ldots,\ }Large}
+% \item[normal]
+% provides `normal' captions, this is the default
+% \item[hang \purerm{or} isu]
+% provides captions with hanging indention
+% \item[center]
+% provides captions where each line is centered
+% \item[centerlast]
+% provides captions where the last line of the paragraph is centered
+% \item[nooneline]
+% if a caption fits on \emph{one} line on the page, it will be centered.
+% If you don't like this behaviour, just select this option.
+% \item[scriptsize\purerm{, \ldots,\ }Large]
+% sets the font size of the captions
+% \item[\vbox{\hbox{up{\rm,} it{\rm,} sl{\rm,} sc{\rm,}}
+% \hbox{md{\rm,} bf{\rm,} rm{\rm,} sf{\rm, or} tt}}]
+% sets the font attribute of the caption labels.
+% \item[ruled] supports ruled floats of the \textsf{float} package, see
+% section \ref{sec:float} for details
+% \end{Options}\end{quote}
+%
+% \changes{v1.4}{29 Jan 95}{{\tt\protect\bslash captionsize} changed to {\tt\protect\bslash captionfont}}
+% \DescribeMacro{\captionfont}
+% \DescribeMacro{\captionlabelfont}
+% To setup the font size and attributes of the captions, this package also provides
+% the commands |\captionfont| and |\captionlabelfont| to allow a more
+% flexible way to customize the captions than the above options could do.
+% |\captionfont| is called before each caption, |\captionlabelfont| is
+% called just before the label of the caption, so the whole caption
+% will be created as
+% \begin{quote}
+% |{\captionfont{\captionlabelfont |\meta{label}|: }|\meta{caption}|}| \quad.
+% \end{quote}
+% Note that these commands are used by the options, e.g.\ the options
+% |small| and |sf| are identical to
+% \begin{quote} |\renewcommand{\captionfont}{\small}| \quad and\\
+% |\renewcommand{\captionlabelfont}{\sffamily}| \quad. \end{quote}
+%
+% \DescribeMacro{\captionmargin}
+% Furthermore there is a new length |\captionmargin| to setup an extra left and
+% right margin for the captions, e.g.\ the command
+% \begin{quote} |\setlength{\captionmargin}{10pt}| \end{quote}
+% sets this margin to 10pt.
+%
+% \DescribeMacro{\abovecaptionskip}
+% \DescribeMacro{\belowcaptionskip}
+% The lengths |\abovecaptionskip| and |\belowcaptionskip| contain the amount of
+% white space to leave above and below the caption.
+% |\abovecaptionskip| is preset (in the \textsf{article}, \textsf{report} and
+% \textsf{book} document class) to 10pt, |\belowcaptionskip| to 0pt.
+%
+% \subsection{The \puresf{rotating}, \puresf{float} and \puresf{subfigure} package}
+% \changes{v1.2}{28 Nov 94}{Support of the {\sf float} package}
+% \label{sec:float}
+%
+% If you want to use this package together with the \textsf{rotating}\cite{rotating},
+% \textsf{float}\cite{float} and/or the \textsf{subfigure} package, you have to
+% input this package \emph{after} the other ones, like
+% \begin{quote}
+% |\usepackage{float,rotating,subfigure}|\\
+% |\usepackage[centerlast,small,sc]{caption}|
+% \end{quote}
+% The \textsf{caption} package now redefines the |sidewaysfigure| and
+% |sidewaystable| environments and the |\rotcaption| command provided
+% by the \textsf{rotating} package from S.~Rahtz and L.~Barroca.
+% Note that the |\captionmargin| does not affect the |\rotcaption| command.
+%
+% It also redefines the captions of the |plain| and |boxed| styled floats
+% provided by the \textsf{float} package from A.~Lingnau.
+% |ruled| floats are not supported by default, but you can change this via
+% setting the option |ruled|.
+% Note that the |\captionmargin| is not supported in ruled floats.
+%
+% \changes{v1.3}{8 Jan 95}{Support of {\tt\protect\bslash captionlabelfont} in subcaptions}
+% If the \textsf{subfigure} package from S.D.~Cochran is detected, the options
+% |scriptsize|, \ldots, |large| will redefine |\subcapsize| in an adequate way.
+% If you redefine |\captionfont| by yourself and use the \textsf{subfigure}
+% package, you also have to redefine |\subcapsize| by yourself.
+% Also the commands |\@thesubfigure| and |\@thesubtable| will be redefined to
+% use the |\captionlabelfont| command, please take this into consideration if
+% you redefine |\@thesubfigure| or |\@thesubtable| by yourself.
+% E.g.\ a adequate version of the second example in |subfigure.sty| will be:
+% \begin{verbatim}
+% \renewcommand{\thesubfigure}{\thefigure.\arabic{subfigure}}
+% \makeatletter
+% \renewcommand{\@thesubfigure}{{\captionlabelfont\thesubfigure:}\space}
+% \renewcommand{\p@subfigure}{}
+% \makeatother
+% ...
+% \end{verbatim}
+%
+% \changes{v1.4b}{5 Apr 95}{Adapted to version 2.8 of the rotating package}
+% This package cooperates with the version 2.8 (1995/04/02) of the
+% \textsf{rotating} package, version 1.2c (1995/03/29) of the \textsf{float}
+% package and version 1.6 (1993/05/13) of the \textsf{subfigure} package,
+% but will hopefully work with future versions, too.
+%
+% \section{Example}
+% Here's an example figure which was produced with the following code in the
+% preamble of this document:
+% \begin{quote}
+% |\usepackage[hang,small,bf]{caption}|\\
+% |\setlength{\captionmargin}{20pt}|
+% \end{quote}
+% \begin{figure}[!ht]
+% \centerline{EXAMPLE FIGURE}
+% \caption[Huba]{This is an example caption with a small font and a sans serif label.
+% The hang option was used. There is a left and right margin of 20pt.}
+% \end{figure}
+%
+% \StopEventually{
+% \begin{thebibliography}{9}
+% \bibitem{rotating}
+% Sebastian Rahtz and Leonor Barroca:
+% \emph{A style option for rotated objects in \LaTeX},
+% 1994/10/02
+% \bibitem{float}
+% Anselm Lingnau:
+% \emph{An Improved Environment for Floats},
+% 1995/03/25
+% \bibitem{A-W:GMS94}
+% Michel Goossens, Frank Mittelbach and Alexander Samarin:
+% \newblock {\em The {\LaTeX} Companion},
+% \newblock Addison-Wesley, Reading, Massachusetts, 1994.
+% \bibitem{Anne}
+% Anne Br\"uggemann-Klein:
+% \emph{Einf\"uhrung in die Dokumentverarbeitung},
+% B.G. Teubner, Stuttgart, 1989
+% \bibitem{Kopka-E}
+% Helmut Kopka:
+% \emph{\LaTeX -- Erweiterungsm\"oglichkeiten},
+% 3. \"uberarbeitete Auf\/lage, Addison-Wesley, Bonn, 1991
+% \end{thebibliography}
+% }
+% \setlength{\parskip}{0pt plus 1pt}
+%
+% \CheckSum{295}
+% \DoNotIndex{\\,\_,\ }
+% \DoNotIndex{\p@}
+% \DoNotIndex{\active,\addtolength,\begin,\bfseries}
+% \DoNotIndex{\catcode,\def,\else,\empty,\end,\fi,\footnotesize,\global}
+% \DoNotIndex{\hangindent,\hspace,\ifcase,\ifdim,\ifx,\itshape}
+% \DoNotIndex{\Large,\large,\leavevmode,\leftskip,\let,\linewidth}
+% \DoNotIndex{\mdseries,\newcommand,\newlength,\newsavebox,\noindent,\normalsize}
+% \DoNotIndex{\or,\par,\parbox,\parfillskip,\renewcommand,\rightskip,\rmfamily}
+% \DoNotIndex{\sbox,\scriptsize,\scshape,\setlength,\sffamily,\slshape,\small,\space}
+% \DoNotIndex{\textheight,\typeout,\ttfamily,\undefined,\upshape,\usebox}
+% \DoNotIndex{\vsize,\vskip,\wd}
+% \DoNotIndex{\AtBeginDocument,\DeclareOption,\ExecuteOptions,\NeedsTeXFormat}
+% \DoNotIndex{\ProcessOptions,\ProvidesPackage}
+%
+% \section{The code}
+% \iffalse
+%<*package>
+% \fi
+%
+% \subsection{Identification}
+% \begin{macrocode}
+\NeedsTeXFormat{LaTeX2e}[1994/06/01]
+\ProvidesPackage{caption}[1995/04/05 v1.4b caption package (AS)]
+% \end{macrocode}
+%
+% \subsection{Initial code}
+% \begin{macro}{\captionfont}
+% \begin{macro}{\captionlabelfont}
+% \begin{macro}{\captionmargin}
+% |\captionsize| is defined for backward compatibility with v1.3
+% of this package.
+% \begin{macrocode}
+\newcommand{\captionsize}{}
+\newcommand{\captionfont}{\captionsize}
+\newcommand{\captionlabelfont}{}
+\newlength{\captionmargin}
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+% \end{macro}
+%
+% Here are the different basic types of captions implemented:
+% \begin{macro}{\as@normalcaption}
+% \changes{v1.4a}{12 Feb 95}{{\tt\protect\bslash par} added}
+% The `normal' caption
+% \begin{macrocode}
+\newcommand{\as@normalcaption}[2]{%
+ #1 #2\par}
+% \end{macrocode}
+% \end{macro}
+% \begin{macro}{\as@isucaption}
+% \changes{v1.4}{27 Jan 95}{{\tt\protect\bslash leavevmode} added}
+% The `iso' or `hang' caption;
+% this code was taken from \LaTeXcomp\cite[p155]{A-W:GMS94} and modified
+% \iffalse
+% \hangindent\wd\as@captionbox\noindent\usebox{\as@captionbox}#2}
+% \fi
+% \begin{macrocode}
+\newcommand{\as@isucaption}[2]{%
+ \sbox{\as@captionbox}{#1\space}%
+ \addtolength{\as@captionwidth}{-\wd\as@captionbox}%
+ \usebox{\as@captionbox}\parbox[t]{\as@captionwidth}{\leavevmode#2}}
+% \end{macrocode}
+% \end{macro}
+% \begin{macro}{\as@centercaption}
+% \changes{v1.4a}{12 Feb 95}{{\tt center} environment changed to {\tt\protect\bslash centering}}
+% The `center' caption
+% \begin{macrocode}
+\newcommand{\as@centercaption}[2]{%
+ \parbox[t]{\as@captionwidth}{{\centering#1 #2\par}}}
+% \end{macrocode}
+% \end{macro}
+% \begin{macro}{\as@annecaption}
+% \changes{v1.4a}{12 Feb 95}{{\tt\protect\bslash par} added}
+% The `centerlast' caption; the idea how to do this was taken from Br\"uggemann-Klein\cite{Anne},
+% it is also mentioned in Kopka\cite[p227]{Kopka-E}
+% \begin{macrocode}
+\newcommand{\as@annecaption}[2]{%
+ \addtolength{\leftskip}{0pt plus 1fil}%
+ \addtolength{\rightskip}{0pt plus -1fil}%
+ \setlength{\parfillskip}{0pt plus 2fil}%
+ #1 #2\par}
+% \end{macrocode}
+% \end{macro}
+% \begin{macro}{\as@shortcaption}
+% Short captions are centered by default
+% \begin{macrocode}
+\let\as@shortcaption\as@centercaption
+% \end{macrocode}
+% \end{macro}
+%
+% \subsection{Detection of the \puresf{subfigure} package}
+% \begin{macro}{\as@subcapsize}
+% \begin{macro}{\@thesubfigure}
+% \begin{macro}{\@thesubtable}
+% If the \textsf{subfigure} package is loaded, a little message will be typeout
+% and |\as@subcapsize| -- which sets the size of the subcaptions -- will be
+% defined. Also |\@thesubfigure| and |\@thesubtable| will be redefined here to
+% support the |\captionlabelfont| in subcaptions, too (thanks to Kevin Ruland for
+% this idea!).
+% If you don't like this behaviour, just load the |caption| package \emph{after}
+% the |subfigure| package (and eventually redefine the |\subcapsize| by yourself)
+% or redefine |\@thesubfigure| and |\@thesubtable| after loading the |caption|
+% package as shown in the documentation of the \textsf{subfigure} package.
+% \begin{macrocode}
+\ifx\thesubfigure\undefined
+ \newcommand{\as@subcapsize}[1]{}
+\else%
+ \typeout{\space\space\space\space\space\space\space\space\space
+ `subfigure' package detected}
+ \let\as@subcapsize\subcapsize
+ \renewcommand{\@thesubfigure}{{\captionlabelfont\thesubfigure}\space}
+ \renewcommand{\@thesubtable}{{\captionlabelfont\thesubtable}\space}
+\fi
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+% \end{macro}
+%
+% \subsection{Declaration of options}
+% There are four different types of captions supported: |normal|,
+% |isu|, |center| and |centerlast|. |hang| is exactly the same as |isu|.
+% \begin{macrocode}
+\DeclareOption{normal}{\let\as@caption\as@normalcaption}
+\DeclareOption{isu}{\let\as@caption\as@isucaption}
+\DeclareOption{hang}{\ExecuteOptions{isu}}
+\DeclareOption{center}{\let\as@caption\as@centercaption}
+\DeclareOption{anne}{\let\as@caption\as@annecaption}
+\DeclareOption{centerlast}{\ExecuteOptions{anne}}
+% \end{macrocode}
+% If option |nooneline| is set, only-one-line captions will behave like normal
+% ones.
+% \begin{macrocode}
+\DeclareOption{nooneline}{\AtBeginDocument{\let\as@shortcaption\as@caption}}
+% \end{macrocode}
+% There are options for six different font sizes available, they also
+% redefine the |\subcapsize| provided by the \textsf{subfigure} package
+% (if detected).
+% \begin{macrocode}
+\DeclareOption{scriptsize}{%
+ \renewcommand{\captionsize}{\scriptsize}
+ \as@subcapsize{\scriptsize}}
+\DeclareOption{footnotesize}{%
+ \renewcommand{\captionsize}{\footnotesize}
+ \as@subcapsize{\scriptsize}}
+\DeclareOption{small}{%
+ \renewcommand{\captionsize}{\small}
+ \as@subcapsize{\footnotesize}}
+\DeclareOption{normalsize}{%
+ \renewcommand{\captionsize}{\normalsize}
+ \as@subcapsize{\footnotesize}}
+\DeclareOption{large}{%
+ \renewcommand{\captionsize}{\large}
+ \as@subcapsize{\normalsize}}
+\DeclareOption{Large}{%
+ \renewcommand{\captionsize}{\Large}
+ \as@subcapsize{\large}}
+% \end{macrocode}
+% There are nine options available to set the font attributes of the caption labels.
+% \begin{macrocode}
+\DeclareOption{up}{\renewcommand{\captionlabelfont}{\upshape}}
+\DeclareOption{it}{\renewcommand{\captionlabelfont}{\itshape}}
+\DeclareOption{sl}{\renewcommand{\captionlabelfont}{\slshape}}
+\DeclareOption{sc}{\renewcommand{\captionlabelfont}{\scshape}}
+\DeclareOption{md}{\renewcommand{\captionlabelfont}{\mdseries}}
+\DeclareOption{bf}{\renewcommand{\captionlabelfont}{\bfseries}}
+\DeclareOption{rm}{\renewcommand{\captionlabelfont}{\rmfamily}}
+\DeclareOption{sf}{\renewcommand{\captionlabelfont}{\sffamily}}
+\DeclareOption{tt}{\renewcommand{\captionlabelfont}{\ttfamily}}
+% \end{macrocode}
+% If the option |ruled| is set, the captions of ruled floats provided
+% by the \textsf{float} package will also be supported.
+% \begin{macrocode}
+\DeclareOption{ruled}{\newcommand\as@ruled{}}
+% \end{macrocode}
+%
+% \subsection{Execution of options}
+% The `normal' type of caption is preselected.
+% \begin{macrocode}
+\ExecuteOptions{normal}
+\ProcessOptions
+% \end{macrocode}
+%
+% \subsection{Main code}
+% \begin{macro}{\as@captionbox}
+% \begin{macro}{\as@captionwidth}
+% \begin{macro}{\as@makecaption}
+% \begin{macro}{\@makecaption}
+% \changes{v1.4}{30 Jan 95}{{\tt center} environment changed to {\tt\protect\bslash as@shortcaption}}
+% \changes{v1.4a}{12 Feb 95}{{\tt\protect\bslash par} removed}
+% And now \ldots\ it's \ldots\ the new |\@makecaption| code!
+% \begin{macrocode}
+\newsavebox{\as@captionbox}
+\newlength{\as@captionwidth}
+\newcommand{\as@makecaption}[2]{%
+ \setlength{\leftskip}{\captionmargin}%
+ \setlength{\rightskip}{\captionmargin}%
+ \addtolength{\as@captionwidth}{-2\captionmargin}%
+ \captionfont%
+ \sbox{\as@captionbox}{{\captionlabelfont #1:} #2}%
+ \ifdim \wd\as@captionbox >\as@captionwidth
+ \as@caption{{\captionlabelfont #1:}}{#2}%
+ \else%
+ \as@shortcaption{{\captionlabelfont #1:}}{#2}%
+ \fi}
+\renewcommand{\@makecaption}[2]{%
+ \vskip\abovecaptionskip%
+ \setlength{\as@captionwidth}{\linewidth}%
+ \as@makecaption{#1}{#2}%
+ \vskip\belowcaptionskip}
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+% \end{macro}
+% \end{macro}
+%
+% \subsection{Support of the \puresf{rotating} package}
+% \begin{macro}{\@makercaption}
+% \changes{v1.4b}{5 Apr 95}{{\tt\protect\bslash @makercaption} removed}
+% \begin{macro}{\@makerotcaption}
+% If the \textsf{rotating} package is loaded, the command |\@makerotcaption|
+% (for support of |\rotcaption|) will be
+% redefined here. The code was taken from the \textsf{rotating} package
+% \cite{rotating} itself and adapted.
+% \begin{macrocode}
+\ifx\@makerotcaption\undefined
+\else
+ \typeout{\space\space\space\space\space\space\space\space\space
+ `rotating' package detected}
+% \let\@makercaption\undefined
+ \renewcommand{\@makerotcaption}[2]{%
+ \captionfont%
+ \sbox{\as@captionbox}{{\captionlabelfont #1:} #2}%
+ \ifdim \wd\as@captionbox > .8\vsize
+ \rotatebox{90}{%
+ \setlength{\as@captionwidth}{.8\textheight}%
+ \begin{minipage}{\as@captionwidth}%
+ \as@caption{{\captionlabelfont #1:}}{#2}%
+ \end{minipage}}\par
+ \else%
+ \rotatebox{90}{\usebox{\as@captionbox}}%
+ \fi
+ \hspace{12pt}}
+\fi
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+%
+% \subsection{Support of the \puresf{float} package}
+% \begin{macro}{\floatc@plain}
+% \begin{macro}{\floatc@ruled}
+% \changes{v1.3}{8 Jan 95}{{\tt\protect\bslash as@normalcaption} changed to {\tt\protect\bslash as@caption}}
+% \changes{v1.4a}{12 Feb 95}{{\tt\protect\bslash par} removed}
+% If the \textsf{float} package is loaded, the command |\floatc@plain|
+% (and the command |\floatc@ruled| if the option |ruled| is given)
+% will be redefined here.
+% \begin{macrocode}
+\ifx\floatc@plain\undefined
+\else
+ \typeout{\space\space\space\space\space\space\space\space\space
+ `float' package detected}
+ \renewcommand\floatc@plain[2]{%
+ \setlength{\as@captionwidth}{\linewidth}%
+ \as@makecaption{#1}{#2}}
+ \ifx\as@ruled\undefined
+ \else
+ \renewcommand\floatc@ruled[2]{%
+ \setlength{\as@captionwidth}{\linewidth}%
+ \captionfont%
+ \as@caption{{\captionlabelfont #1:}}{#2}}
+ \fi
+\fi
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+%
+% \iffalse
+%</package>
+% \fi
+%
+% \Finale
+%
+\endinput
+
diff --git a/macros/latex/contrib/caption/fallback/v2.0/caption2.dtx b/macros/latex/contrib/caption/fallback/v2.0/caption2.dtx
new file mode 100644
index 0000000000..339aa29a8f
--- /dev/null
+++ b/macros/latex/contrib/caption/fallback/v2.0/caption2.dtx
@@ -0,0 +1,606 @@
+% \iffalse
+% caption.dtx - The caption package
+% (c) 1994-95 Axel Sommerfeldt (axel@hp1.ang-physik.uni-kiel.de)
+%
+%<*driver>
+\NeedsTeXFormat{LaTeX2e}[1994/12/01]
+\documentclass{ltxdoc}
+\newlength\artparindent
+\setlength\artparindent{\parindent}
+\setlength\parindent{0pt}
+\setlength\parskip{\smallskipamount}
+\usepackage{caption2}[1995/10/09]
+\IfFileExists{ltxdoc.cfg}{}{\OnlyDescription\RecordChanges\CodelineIndex}
+\begin{document}
+ \DocInput{caption2.dtx}
+ \IfFileExists{ltxdoc.cfg}{}{\PrintChanges\PrintIndex}
+\end{document}
+%</driver>
+% \fi
+%
+% \providecommand{\LaTeXcomp}{The \LaTeX{} Companion}
+% \newcommand{\purerm}[1]{{\upshape\mdseries\rmfamily #1}}
+% \newcommand{\puresf}[1]{{\upshape\mdseries\sffamily #1}}
+% \newenvironment{Options}[1]%
+% {\begin{list}{}{\renewcommand{\makelabel}[1]{\texttt{##1}\hfil}%
+% \settowidth{\labelwidth}{\texttt{#1\space}}%
+% \setlength{\leftmargin}{\labelwidth}%
+% \addtolength{\leftmargin}{\labelsep}}}%
+% {\end{list}}
+%
+% \def\packageversion{2.0(BETA)}
+% \def\packagedate{1995/10/09}
+% \changes{v1.0}{27 Oct 94}{First release}
+% \changes{v1.2}{28 Nov 94}{Works now with the {\tt figure*} and {\tt table*}
+% environments, too}
+% \changes{v2.0}{ 9 Oct 95}{Totally rewritten; many new commands and features}
+%
+% \title{The \puresf{caption} package\thanks{This package has version number
+% \packageversion, last revised \packagedate.}}
+% \author{Axel Sommerfeldt\\
+% {\small axel@hp1.ang-physik.uni-kiel.de}}
+% \date{1995/10/09}
+% \maketitle
+%
+% \begin{abstract}
+% The \textsf{caption} package provides many ways to customise the captions
+% in floating environments such |figure|, |table|, |sidewaysfigure|, and
+% |sidewaystable|.
+% The following \LaTeXe\ packages are supported:
+% float, longtable, and subfigure.
+% But it works fine with the following packages as well:
+% floatfig, rotating, supertabular, and wrapfig.
+% \end{abstract}
+%
+% \section{Documentation? What documentation?}
+% I'm sorry to say this, but there is no documentation provided with the
+% new version of this package, yet. And it's still beta. I hope I can
+% eleminate both circumstances in the near future; at the moment my spare time
+% is very very very limited, so I decided to make this beta public.
+%
+% This new version is nearly compatible with the lastest official release
+% (version 1.4b), so you can use the old documentation so far.
+% Here is what differs this version from version 1.4b:
+%
+% \begin{itemize}
+% \item
+% If the caption package will detect a loaded float package, it will
+% \emph{not} redefine the boxed style of floats anymore. If you want to
+% have the old behaviour, you have to specify the new option |boxed| to
+% the caption2 package.
+% \item
+% Anything said about the subfigure package in the old doc isn't
+% true anymore; the caption package is now adapted to the new version
+% 2.0 of this package. Especially the caption package will \emph{not}
+% redefine |\@thesubfigure| and |\@thesubtable| anymore and it will
+% \emph{not} set |\subcapsize| -- you have to do this now for yourself
+% if you want to, e.g.\ with the following code:
+% \begin{quote}
+% |\usepackage[normalsize]{subfigure}|\\
+% |\usepackage[large]{caption}|
+% \end{quote}
+%
+% So you can load the caption2 package \emph{before} loading the subfigure
+% package now without problems, in fact this is recommend now. Don't care
+% about what the old doc or the doc of the subfigure package is telling you!
+% \end{itemize}
+%
+% As a summary, the new caption package won't lead into different results
+% of your documents just because of loading it (without options).
+%
+% If you are really interested in the (many!) new features of this totally
+% rewritten package, take a look in the provided test document (test2.tex)
+% to get a idea of the new commands and possibilities.
+% And feel yourself free to write a email to me, if any questions occur.
+%
+% \subsection{Just a few notes\dots}
+% If you use the new command |\setcaptionwidth| to set the absolut width of a
+% caption, you are not allowed to change |\captionmargin| anymore!
+% Instead, use the new command |\setcaptionmargin| to do this.
+%
+% Longtables will still take care of |\LTcapwidth|, even if you are setting
+% your own width via |\setcaptionwidth| or |\setcaptionmargin|. To get rid
+% of this, use the following code just after loading the caption2 package:
+% \begin{quote}
+% |\dummycaptionstyle{longtable}{}|
+% \end{quote}
+% or just specify the new package option |longtable|.
+%
+% This package was developed and tested with following versions of the
+% other packages:
+% \begin{quote}\begin{tabular}{lll}
+% package & version & date \\\hline
+% float & 1.2c & 1995/03/29 \\
+% longtable & 3.15 & 1995/06/15 \\
+% rotating & 2.9 & 1995/04/07 \\
+% subfigure & 2.0 & 1995/03/06 \\
+% \end{tabular}\end{quote}
+%
+% Maybe it will work with older versions, maybe not\dots
+%
+% BTW:
+% If you are interested in rotated versions (like |sidewaysfigure| or
+% |sidewaystable|) of new floats (defined with the float package), take a look
+% at the rotfloat package, which comes from a very talented young man with a
+% very german style of writing english docs (if he ever writes any!) and a
+% very big mouth - myself |:-)|
+%
+% \section{Thanks}
+% I would like to thank David Carlisle for his help writing the longtable
+% support; without the changes in his package this wouldn't become possible.
+%
+% \changes{v1.1}{ 3 Nov 94}{New captiontype: {\tt centerlast}}
+% \changes{v1.4}{30 Jan 95}{New option: {\tt nooneline}}
+% \changes{v1.4}{29 Jan 95}{{\tt\protect\bslash captionsize} changed to
+% {\tt\protect\bslash captionfont}}
+% \changes{v1.2}{28 Nov 94}{Support of the {\sf float} package}
+% \changes{v1.3}{ 8 Jan 95}{Support of {\tt\protect\bslash captionlabelfont} in
+% subcaptions}
+% \changes{v1.4b}{5 Apr 95}{Adapted to version 2.8 of the rotating package}
+% \changes{v2.0}{ 9 Oct 95}{support of the longtable package}
+%
+% \StopEventually{
+% \begin{thebibliography}{9}
+% \bibitem{float}
+% Anselm Lingnau:
+% \textsl{An Improved Environment for Floats},
+% 1995/03/25
+% \bibitem{rotating}
+% Sebastian Rahtz and Leonor Barroca:
+% \textsl{A style option for rotated objects in \LaTeX},
+% 1994/10/02
+% \bibitem{rotfloat}
+% Axel Sommerfeldt:
+% \textsl{The rotfloat package},
+% 1995/03/30
+% \bibitem{subfigure}
+% Steven Douglas Cochran:
+% \textsl{The subfigure package},
+% 1995/03/06
+% \bibitem{A-W:GMS94}
+% Michel Goossens, Frank Mittelbach and Alexander Samarin:
+% \newblock \textsl{The {\LaTeX} Companion},
+% \newblock Addison-Wesley, Reading, Massachusetts, 1994.
+% \bibitem{Anne}
+% Anne Br\"uggemann-Klein:
+% \textsl{Einf\"uhrung in die Dokumentverarbeitung},
+% B.G. Teubner, Stuttgart, 1989
+% \bibitem{Kopka-E}
+% Helmut Kopka:
+% \textsl{\LaTeX -- Erweiterungsm\"oglichkeiten},
+% 3. \"uberarbeitete Auf\/lage, Addison-Wesley, Bonn, 1991
+% \end{thebibliography}
+% }
+% \setlength{\parskip}{0pt plus 1pt}
+%
+% \CheckSum{647}
+% \DoNotIndex{\\,\_,\ }
+% \DoNotIndex{\@gobble,\@ifundefined,\@namedef,\@nameuse,\@tempdima}
+% \DoNotIndex{\p@,\z@}
+% \DoNotIndex{\active,\addtolength,\advance,\begin,\bfseries}
+% \DoNotIndex{\catcode,\centering,\csname,\def,\divide}
+% \DoNotIndex{\else,\empty,\end,\endcsname,\endgraf,\expandafter}
+% \DoNotIndex{\fi,\footnotesize,\global}
+% \DoNotIndex{\hangindent,\hbox,\hskip,\hspace,\hss}
+% \DoNotIndex{\ifcase,\ifdim,\ifx,\itshape}
+% \DoNotIndex{\Large,\large,\leavevmode,\leftskip,\let,\linewidth}
+% \DoNotIndex{\mdseries,\message}
+% \DoNotIndex{\newcommand,\newdimen,\newlength,\newif,\newsavebox,\noindent}
+% \DoNotIndex{\normalsize,\or}
+% \DoNotIndex{\par,\parbox,\parfillskip,\protect}
+% \DoNotIndex{\raggedleft,\raggedright,\relax,\renewcommand,\rightskip}
+% \DoNotIndex{\rmfamily}
+% \DoNotIndex{\sbox,\scriptsize,\scshape,\setlength,\sffamily,\slshape,\small}
+% \DoNotIndex{\space,\strut}
+% \DoNotIndex{\textheight,\typeout,\ttfamily,\undefined,\upshape,\usebox}
+% \DoNotIndex{\vsize,\vskip,\wd}
+% \DoNotIndex{\AtBeginDocument,\AtEndOfPackage,\CurrentOption,\DeclareOption}
+% \DoNotIndex{\ExecuteOptions,\InputIfFileExists,\NeedsTeXFormat,\MessageBreak}
+% \DoNotIndex{\PackageError,\PackageWarningNoLine,\ProcessOptions}
+% \DoNotIndex{\ProvidesPackage}
+%
+% \clearpage
+% \section{The (not well documented) code}
+% \iffalse
+%<*package>
+% \fi
+%
+% \begin{macrocode}
+\NeedsTeXFormat{LaTeX2e}[1994/12/01]
+\ProvidesPackage{caption2}[1995/10/09 v2.0 caption package (AS)]
+%
+% package detection message
+\let\caption@message\undefined
+\newcommand*\caption@package[1]{%
+ \ifx\caption@message\undefined
+ \message{\space\space\space\space\space\space\space\space\space
+ packages detected:}
+ \let\caption@message\empty
+ \fi
+ \message{#1}}
+%
+% `internal' stuff
+\newlength\realcaptionwidth
+\newsavebox\captionbox
+%
+% Code initialisation, `normal' stuff
+\newcommand*\captionsize{}
+\newcommand*\captionfont{\captionsize}
+\newcommand*\captionlabelfont{}
+\newcommand*\captionlabeldelim{:}
+\newdimen\captionlabelsep
+ \sbox\captionbox{ }
+ \setlength\captionlabelsep{\wd\captionbox}
+\newdimen\captionmargin
+\newdimen\captionwidth
+% only used by captionstyle `indent', but can be used in user-defines styles
+\newdimen\captionindent
+\newif\ifonelinecaptions
+\newif\iftakecaptionwidth
+%
+%\newcommand*\setcaptionfont[1]{%
+% \def\captionfont{#1}}
+%\newcommand*\setcaptionlabelfont[1]{%
+% \def\captionlabelfont{#1}}
+\newcommand*\setcaptionmargin[1]{%
+ \setlength\captionmargin{#1}%
+ \takecaptionwidthfalse}
+\newcommand*\setcaptionwidth[1]{%
+ \setlength\captionwidth{#1}%
+ \takecaptionwidthtrue}
+%
+% \newcaptionstyle, \renewcaptionstyle & \defcaptionstyle
+\newcommand\newcaptionstyle[2]{%
+ \expandafter\ifx\csname caption@@#1\endcsname\relax
+ \defcaptionstyle{#1}{#2}%
+ \else
+ \PackageError{caption}{Caption style `#1' already defined}{}%
+ \fi}
+\newcommand\renewcaptionstyle[2]{%
+ \expandafter\ifx\csname caption@@#1\endcsname\relax
+ \PackageError{caption}{Caption style `#1' undefined}{}%
+ \else
+ \defcaptionstyle{#1}{#2}%
+ \fi}
+\newcommand\defcaptionstyle[2]{%
+ \@namedef{caption@@#1}{#2}}
+\newcommand*\dummycaptionstyle[2]{%
+ \defcaptionstyle{#1}{%
+ \expandafter\ifx\csname caption@@\caption@style\expandafter\endcsname%
+ \csname caption@@#1\endcsname
+ \PackageError{caption}{You can't use the caption style `#1' directy}{%
+ The caption style `#1' is only a dummy and does not really exists.%
+ \MessageBreak You have to redefine it (with \protect\renewcaptionstyle)
+ before you can select\MessageBreak it with \protect\captionstyle.}%
+ \else
+ #2\usecaptionstyle{\caption@style}%
+ \fi}}
+%
+% preimplemented types of captions, all with a label and text,
+% separated by \captionlabeldelim
+\newcaptionstyle{normal}{\caption@make{normal}}
+\newcaptionstyle{center}{\caption@make{center}}
+\newcaptionstyle{flushleft}{\caption@make{flushleft}}
+\newcaptionstyle{flushright}{\caption@make{flushright}}
+\newcaptionstyle{centerlast}{\caption@make{centerlast}}
+\newcaptionstyle{hang}{\caption@make{hang}}
+\newcaptionstyle{indent}{\caption@make{indent}}
+%
+% \captionstyle
+\newcommand*\captionstyle[1]{%
+ \expandafter\ifx\csname caption@@#1\endcsname\relax
+ \PackageError{caption}{Undefined caption style `#1'}{}%
+ \else
+ \def\caption@style{#1}%
+ \fi}
+%
+% Options
+\DeclareOption{normal}{\captionstyle{normal}}
+\DeclareOption{center}{\captionstyle{center}}
+\DeclareOption{flushleft}{\captionstyle{flushleft}}
+\DeclareOption{flushright}{\captionstyle{flushright}}
+\DeclareOption{centerlast}{\captionstyle{centerlast}}
+\DeclareOption{anne}{\ExecuteOptions{centerlast}}
+\DeclareOption{hang}{\captionstyle{hang}}
+\DeclareOption{isu}{\ExecuteOptions{hang}}
+\DeclareOption{indent}{\captionstyle{indent}}
+%
+\DeclareOption{oneline}{\onelinecaptionstrue}
+\DeclareOption{nooneline}{\onelinecaptionsfalse}
+%
+\DeclareOption{scriptsize}{\renewcommand*\captionsize{\scriptsize}}
+\DeclareOption{footnotesize}{\renewcommand*\captionsize{\footnotesize}}
+\DeclareOption{small}{\renewcommand*\captionsize{\small}}
+\DeclareOption{normalsize}{\renewcommand*\captionsize{\normalsize}}
+\DeclareOption{large}{\renewcommand*\captionsize{\large}}
+\DeclareOption{Large}{\renewcommand*\captionsize{\Large}}
+%
+\DeclareOption{up}{\renewcommand*\captionlabelfont{\upshape}}
+\DeclareOption{it}{\renewcommand*\captionlabelfont{\itshape}}
+\DeclareOption{sl}{\renewcommand*\captionlabelfont{\slshape}}
+\DeclareOption{sc}{\renewcommand*\captionlabelfont{\scshape}}
+\DeclareOption{md}{\renewcommand*\captionlabelfont{\mdseries}}
+\DeclareOption{bf}{\renewcommand*\captionlabelfont{\bfseries}}
+\DeclareOption{rm}{\renewcommand*\captionlabelfont{\rmfamily}}
+\DeclareOption{sf}{\renewcommand*\captionlabelfont{\sffamily}}
+\DeclareOption{tt}{\renewcommand*\captionlabelfont{\ttfamily}}
+%
+\DeclareOption{boxed}{\AtEndOfPackage{%
+ \ifx\caption@@ruled\undefined
+ \PackageWarningNoLine{caption}{%
+ Option `boxed' is set but there is no `float' package\MessageBreak
+ around here, so this option will be totally ignored}
+ \else
+ \dummycaptionstyle{boxed}{}%
+ \fi}}
+\DeclareOption{ruled}{\AtEndOfPackage{%
+ \ifx\caption@@ruled\undefined
+ \PackageWarningNoLine{caption}{%
+ Option `ruled' is set but there is no `float' package\MessageBreak
+ around here, so this option will be totally ignored}
+ \else
+ \dummycaptionstyle{ruled}{\onelinecaptionsfalse\setcaptionmargin{0pt}}%
+ \fi}}
+%
+\DeclareOption{longtable}{\AtEndOfPackage{%
+ \ifx\caption@@longtable\undefined
+ \PackageWarningNoLine{caption}{%
+ Option `longtable' is set but there is no `longtable' package\MessageBreak
+ around here, so this option will be totally ignored}
+ \else
+ \dummycaptionstyle{longtable}{}%
+ \fi}}
+%
+\DeclareOption*{\AtEndOfPackage{%
+ \InputIfFileExists{\CurrentOption.caption}{}{%
+ \PackageError{caption}{File `\CurrentOption.caption' not found}{%
+ You selected the unknown package option `\CurrentOption', so I
+ thought you want to\MessageBreak
+ input the definition file `\CurrentOption.caption' here
+ -- but there is no one!}}}}
+%
+\ExecuteOptions{normal,oneline}
+\ProcessOptions
+%
+% \@makecaption
+\renewcommand\@makecaption[2]{%
+ \vskip\abovecaptionskip
+ \realcaptionwidth\linewidth
+ \def\captionlabel{#1}%
+ \def\captiontext{#2}%
+ \usecaptionstyle{\caption@style}%
+ \vskip\belowcaptionskip}
+%
+% Helpers for caption style authors
+\newcommand*\caption@canterr[1]{%
+ \PackageError{caption}{You can't use \protect#1
+ in normal text}{The usage of \protect#1 is only
+ allowed inside code declared with\MessageBreak \protect\defcaptionstyle,
+ \protect\newcaptionstyle \space or \protect\renewcaptionstyle.}}
+\newcommand\onelinecaption[2]{%
+ \ifx\captiontext\undefined
+ \caption@canterr{\onelinecaption}%
+ \else
+ \def\caption@temp{#2}%
+ \ifonelinecaptions
+ \sbox\captionbox{#1}%
+ \ifdim\wd\captionbox >\realcaptionwidth
+ \caption@temp
+ \else
+ {\centering\usebox{\captionbox}\par}%
+ \fi
+ \else
+ \caption@temp
+ \fi
+ \let\caption@temp\undefined
+ \fi}
+\newcommand*\usecaptionmargin{%
+ \ifx\captiontext\undefined
+ \caption@canterr{\usecaptionmargin}%
+ \else
+ \iftakecaptionwidth
+ \leftskip\realcaptionwidth
+ \advance\leftskip by -\captionwidth
+ \divide\leftskip by 2
+ \rightskip\leftskip
+ \realcaptionwidth\captionwidth
+ \else
+ \leftskip\captionmargin
+ \rightskip\captionmargin
+ \advance\realcaptionwidth by -2\captionmargin
+ \fi
+ \fi}
+\newcommand*\usecaptionstyle[1]{%
+ \ifx\captiontext\undefined
+ \caption@canterr{\usecaptionstyle}%
+ \else
+ \@ifundefined{caption@@#1}%
+ {\PackageError{caption}{Caption style `#1' undefined}{}}%
+ {\@nameuse{caption@@#1}}
+ \fi}
+%
+% equal code for normal, center, centerlast, hang, and indent
+\newcommand*\caption@make[1]{%
+ \usecaptionmargin\captionfont
+ \def\caption@label{%
+ {\captionlabelfont\captionlabel\captionlabeldelim}%
+ \hskip\captionlabelsep}%
+ \onelinecaption{\caption@label\captiontext}%
+ {\@nameuse{caption@@@#1}}}
+%
+% the preimplemented caption styles
+\newcommand*\caption@@@normal{%
+ \caption@label\captiontext\par}
+\newcommand*\caption@@@center{%
+ \parbox[t]{\realcaptionwidth}{\centering
+ \caption@label\captiontext\par}}%
+\newcommand*\caption@@@flushleft{%
+ \parbox[t]{\realcaptionwidth}{\raggedright
+ \caption@label\captiontext\par}}%
+\newcommand*\caption@@@flushright{%
+ \parbox[t]{\realcaptionwidth}{\raggedleft
+ \caption@label\captiontext\par}}%
+\newcommand*\caption@@@centerlast{%
+ \advance\leftskip by 0pt plus 1fil%
+ \advance\rightskip by 0pt plus -1fil%
+ \parfillskip0pt plus 2fil%
+ \caption@label\captiontext\par}
+\newcommand*\caption@@@hang{%
+ \sbox\captionbox{\caption@label}%
+ \hangindent\wd\captionbox\noindent
+ \usebox\captionbox\captiontext\par}
+\newcommand*\caption@@@indent{%
+ \hangindent\captionindent\noindent
+ \caption@label\captiontext\par}
+% \end{macrocode}
+%
+% \subsection*{Support of the float package}
+% \begin{macrocode}
+\ifx\floatc@plain\undefined
+\else
+ \caption@package{float}
+%
+% interface float package -> caption package
+ \newcommand\caption@floatc[3]{%
+ \realcaptionwidth\linewidth
+ \def\captionlabel{#2}%
+ \def\captiontext{#3}%
+ \usecaptionstyle{#1}}
+%
+% floatstyle plain verwendet jetzt den gesetzten captionstyle
+ \renewcommand\floatc@plain{\caption@floatc{\caption@style}}
+%
+% floatstyle boxed auch (kann aber mit \renewcaptionstyle geaendert werden)
+ \dummycaptionstyle{boxed}{\def\captionlabelfont{\bfseries}}
+ \newcommand\floatc@boxed{\caption@floatc{boxed}}
+% jetzt muessen wir nur noch dafuer sorgen, dass es auch (statt floatc@plain)
+% in \fs@boxed verwendet wird...
+ \let\caption@boxed\fs@boxed
+ \renewcommand\fs@boxed{\let\floatc@plain\floatc@boxed\caption@boxed}
+%
+% floatstyle ruled, dies geht zum Glueck wieder geradeaus
+ \newcaptionstyle{ruled}{{\bfseries\captionlabel} \captiontext\par}
+ \renewcommand*\floatc@ruled{\caption@floatc{ruled}}
+%
+\fi
+% \end{macrocode}
+%
+% \subsection*{Support of the longtable package}
+% \begin{macrocode}
+\ifx\LT@makecaption\undefined
+\else
+ \caption@package{longtable}
+ \dummycaptionstyle{longtable}{\setcaptionwidth\LTcapwidth}
+ \renewcommand\LT@makecaption[3]{%
+ \LT@mcol\LT@cols c{\hbox to\z@{\hss\parbox[t]\linewidth{%
+ \realcaptionwidth\linewidth
+ \ifx#1\@gobble
+ \def\captionlabel{}%
+ \def\captionlabeldelim{}%
+ \captionlabelsep\z@
+ \else
+ \def\captionlabel{#2}%
+ \fi
+ \def\captiontext{#3}%
+ \usecaptionstyle{longtable}%
+ \endgraf\vskip\baselineskip}%
+ \hss}}}
+\fi
+% \end{macrocode}
+%
+% \subsection*{Support of the subfigure package}
+% \begin{macrocode}
+\newcommand*\addtosubcaption[1]{}
+\@ifundefined{@makesubfigurecaption}{}{%
+ \caption@package{subfigure}
+% \end{macrocode}
+%
+% \begin{macro}{\subcapsize}
+% \begin{macrocode}
+ \newcommand*\subcapstyle[1]{%
+ \expandafter\ifx\csname caption@@#1\endcsname\relax
+ \PackageError{caption}{Undefined caption style `#1'}{}%
+ \else
+ \def\caption@substyle{#1}%
+ \fi}
+% \end{macrocode}
+% \end{macro}
+%
+% Detection of |\caption@substyle|.
+% \begin{macrocode}
+ \subcapstyle{normal}
+ \ifsubcaphang
+ \subcapstyle{hang}
+ \fi
+ \ifsubcapcenter
+ \subcapstyle{center}
+ \fi
+ \ifsubcapcenterlast
+ \subcapstyle{centerlast}
+ \fi
+% \end{macrocode}
+%
+% NOTE: \cs{subfigcapmargin} is \emph{not} a length, it's a command.
+% So we make \cs{subfigcapwidth} also a command!
+% \begin{macrocode}
+ \newif\iftakesubfigcapwidth
+ \newcommand*\subfigcapwidth{0pt}
+% only used by captionstyle `indent', but can be used in user-defines styles
+ \newlength\subcapindent
+% \end{macrocode}
+%
+% \begin{macro}{\setsubcapmargin}
+% \begin{macro}{\setsubcapwidth}
+% \begin{macrocode}
+ \newcommand*\setsubcapmargin[1]{%
+ \renewcommand*\subcapfigmargin{#1}%
+ \takesubfigcapwidthfalse}
+ \newcommand*\setsubcapwidth[1]{%
+ \renewcommand*\subcapfigwidth{#1}%
+ \takesubfigcapwidthtrue}
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+%
+% \begin{macrocode}
+ \renewcommand\@makesubfigurecaption[2]{%
+ \realcaptionwidth\@tempdima
+ \def\captionlabel{#1}%
+ \def\captiontext{#2}%
+ \let\captionfont\subcapsize
+ \let\captionlabelfont\relax
+ \let\captionlabeldelim\empty
+ \captionlabelsep0pt
+ \ifsubcapnooneline\onelinecaptionsfalse\else\onelinecaptionstrue\fi
+ \iftakesubfigcapwidth\takecaptionwidthtrue\else\takecaptionwidthfalse\fi
+ \setlength\captionmargin{\subfigcapmargin}%
+ \setlength\captionwidth{\subfigcapwidth}%
+ \captionindent\subcapindent
+ \hbox{\parbox[t]\@tempdima{\strut\usecaptionstyle{\caption@substyle}}}}
+% \end{macrocode}
+%
+% \begin{macrocode}
+ \renewcommand*\addtosubcaption[1]{%
+ \let\caption@makesubfigurecaption\@makesubfigurecaption
+ \renewcommand\@makesubfigurecaption[2]{%
+ #1\caption@makesubfigurecaption}
+ \let\@makesubtablecaption\@makesubfigurecaption}}
+% \end{macrocode}
+%
+% \subsection*{Cleaning up}
+% \begin{macrocode}
+\ifx\caption@message\undefined
+\else\message{^^J}\let\caption@message\undefined\fi
+\let\caption@package\undefined
+\let\caption@subcapsize\undefined
+% \end{macrocode}
+% \clearpage
+%
+% \iffalse
+%</package>
+% \fi
+%
+% \Finale
+%
+\endinput
+
diff --git a/macros/latex/contrib/caption/fallback/v2.1/caption2.dtx b/macros/latex/contrib/caption/fallback/v2.1/caption2.dtx
new file mode 100644
index 0000000000..23c1f26b86
--- /dev/null
+++ b/macros/latex/contrib/caption/fallback/v2.1/caption2.dtx
@@ -0,0 +1,1329 @@
+% \iffalse meta-comment
+%
+% This is file `caption2.dtx'.
+%
+% Copyright (C) 1994-2005 Axel Sommerfeldt (caption@sommerfee.de)
+%
+% --------------------------------------------------------------------------
+%
+% This work may be distributed and/or modified under the
+% conditions of the LaTeX Project Public License, either version 1.3
+% of this license or (at your option) any later version.
+% The latest version of this license is in
+% http://www.latex-project.org/lppl.txt
+% and version 1.3 or later is part of all distributions of LaTeX
+% version 2003/12/01 or later.
+%
+% This work has the LPPL maintenance status "maintained".
+%
+% This Current Maintainer of this work is Axel Sommerfeldt.
+%
+% This work consists of the files caption.ins, caption.dtx,
+% caption2.dtx, caption.xml, and anleitung.tex and the derived files
+% caption.sty, caption2.sty, caption3.sty, and manual.tex.
+%
+% \fi
+% \CheckSum{843}
+%
+% \iffalse
+%<*driver>
+\NeedsTeXFormat{LaTeX2e}[1994/12/01]
+\documentclass{ltxdoc}
+\setlength\parindent{0pt}
+\setlength\parskip{\smallskipamount}
+%
+\ifx\pdfoutput\undefined\else
+ \ifcase\pdfoutput\else
+ \usepackage{mathptmx,courier}
+ \usepackage[scaled=0.90]{helvet}
+ \fi
+\fi
+%
+\usepackage{caption2}[2004/04/16]
+%
+%<+driver>\OnlyDescription
+%
+\begin{document}
+ \DocInput{caption2.dtx}
+\end{document}
+%</driver>
+% \fi
+%
+% \newcommand*{\purerm}[1]{{\upshape\mdseries\rmfamily #1}}
+% \newcommand*{\puresf}[1]{{\upshape\mdseries\sffamily #1}}
+% \newcommand*{\purett}[1]{{\upshape\mdseries\ttfamily #1}}
+% \let\package\puresf\def\thispackage{\package{caption2}}
+% \let\env\purett \let\opt\purett
+%
+% \GetFileInfo{caption2.sty}
+% \title{The \thispackage\ package\thanks{This package has version number
+% \fileversion, last revised \filedate.}}
+% \author{Axel Sommerfeldt\\\texttt{caption@sommerfee.de}}
+% \date{2005/11/02}
+% \maketitle
+%
+% \changes{v2.0}{ 9 Oct 95}{New experimental version: Many new commands and features}
+% \changes{v2.0}{ 9 Oct 95}{Support of the longtable package added}
+% \changes{v2.1}{20 Feb 02}{Revised: New commands and options}
+% \changes{v2.1}{26 Feb 02}{Adapted to version 2.1 of the subfigure package}
+% \changes{v2.1a}{12 Nov 03}{Some minor bug fixes and improved compatibility to v2.0}
+% \changes{v2.1b}{16 Apr 04}{Some minor bug fixes and improved compatibility to v2.0}
+% \changes{v2.1c}{10 May 04}{Some minor bug fixes and improved compatibility to v2.0}
+% \changes{v2.1d}{ 3 Oct 05}{Some superfluous brackets removed; warning added}
+%
+% \providecommand\LaTeXcomp{The \LaTeX{} Companion}
+%
+% \section*{This package is obsolete!}
+%
+% The \package{caption2} package used to be an experimental side-version of
+% the regular \package{caption} package. It was made public as beta test version
+% without documentation in 1995 because of the demand for new features and
+% adaptations to other packages like the \package{longtable} and
+% \package{subfigure} package.
+%
+% Even in the next years I found no time to reintegrate some of the
+% well-tried features into the regular \package{caption} package. So I
+% decided to release a version $2.1$ of the \package{caption2} package in 2002
+% instead, which included some minor bug fixes and adaptations to the new
+% version $2.1$ of the \package{subfigure} package. Furthermore I started
+% to write a documentation for this package, but unfortunately did not get
+% very far with this\ldots
+%
+% In 2003 I finally found some (more) time, so a new regular release $3.0$
+% of the \package{caption} package could be build with massive help from
+% Frank Mittelbach\cite{A-W:GMS94} and Steven Cochran\cite{subfigure}.
+% It was released in December 2003 and superseded the neglected
+% \package{caption2} package.
+%
+% {\small (In parallel, Steven Cochran released the \package{subfig} package which
+% superseded the \package{subfigure} package.)}
+%
+% So please don't use this package for new documents. It's old, it's obsolete
+% and it starts to begin smell bad!
+% Please ignore all hints in books or other documents which try to tell you
+% that the \package{caption2} package should be used instead of the
+% \package{caption} package -- these hints are outdated since December 2003.
+%
+% \section*{How to migrate to the regular \package{caption} package?}
+%
+% Usually replacing \package{caption2} by \package{caption} is sufficient
+% because the \package{caption} package emulates most of the options and
+% commands of the \package{caption2} package.
+% If you get some errors or wired results afterwards, please take a closer
+% look at the \package{caption} package documentation which will hopefully
+% help you clearing these problems.
+% If all this should fail you can write me an e-mail asking for help.
+%
+% \section*{What will happen to this package?}
+%
+% The \package{caption2} package is still some kind of supported, that means
+% it will be part of future releases and bugs will still be fixed so existing
+% documents using this package will still compile.
+% But it will \emph{not} be enhanced in the future or adapted to future versions
+% of foreign packages.
+%
+% This means migrating to the actual \package{caption} package should not be
+% necessary for old documents.
+%
+% \StopEventually{}
+%
+% \DoNotIndex{\\,\_,\ ,\@@par}
+% \DoNotIndex{\@classoptionslist,\@currext,\@currname}
+% \DoNotIndex{\@ehc,\@ehd,\@empty,\@expandtwoargs}
+% \DoNotIndex{\@for,\@firstofone,\@firstoftwo}
+% \DoNotIndex{\@gobble,\@gobblefour,\@gobbletwo,\@hangfrom}
+% \DoNotIndex{\@ifnextchar,\@ifstar,\@ifundefined,\@latex@error}
+% \DoNotIndex{\@namedef,\@nameuse}
+% \DoNotIndex{\@onlypreamble,\@parboxrestore,\@plus,\@ptionlist}
+% \DoNotIndex{\@removeelement,\@restorepar,\@secondoftwo,\@setpar}
+% \DoNotIndex{\@tempa,\@tempboxa,\@tempdima,\@tempb,\@tempc}
+% \DoNotIndex{\@undefined,\@unprocessedoptions,\@unusedoptionlist}
+% \DoNotIndex{\p@,\z@}
+% \DoNotIndex{\active,\addtocounter,\addtolength,\advance}
+% \DoNotIndex{\baselineskip,\begin,\begingroup,\bfseries,\bgroup,\box}
+% \DoNotIndex{\catcode,\centering,\changes,\csname,\def,\divide,\do,\downarrow}
+% \DoNotIndex{\edef,\egroup,\else,\empty,\end,\endcsname,\endgraf,\endgroup,\expandafter}
+% \DoNotIndex{\fi,\footnotesize,\global}
+% \DoNotIndex{\hangindent,\hbox,\hfil,\hsize,\hskip,\hspace,\hss}
+% \DoNotIndex{\if,\ifcase,\ifdim,\ifnum,\ifodd,\ifvoid,\ifvmode}
+% \DoNotIndex{\ifx,\ignorespaces,\itshape}
+% \DoNotIndex{\Large,\large,\leavevmode,\leftmargini,\leftskip,\let,\linewidth}
+% \DoNotIndex{\llap,\long,\m@ne,\margin,\mdseries,\message}
+% \DoNotIndex{\newcommand,\newdimen,\newlength,\newline,\newif,\newsavebox}
+% \DoNotIndex{\next,\nobreakspace,\noexpand,\noindent,\numberline}
+% \DoNotIndex{\normalsize,\or,\par,\parbox,\parfillskip}
+% \DoNotIndex{\parindent,\parskip,\prevdepth,\protect,\protected@edef,\providecommand}
+% \DoNotIndex{\quad}
+% \DoNotIndex{\raggedleft,\raggedright,\relax,\renewcommand,\RequirePackage}
+% \DoNotIndex{\rightskip,\rmfamily}
+% \DoNotIndex{\sbox,\scriptsize,\scshape,\setbox,\setlength,\sffamily,\slshape}
+% \DoNotIndex{\small,\string,\space,\strut}
+% \DoNotIndex{\textheight,\the,\toks@,\typeout,\ttfamily}
+% \DoNotIndex{\undefined,\unvbox,\uparrow,\upshape,\usebox,\usepackage}
+% \DoNotIndex{\vbox,\vsize,\vskip,\wd,\width,\z@skip}
+% \DoNotIndex{\AtBeginDocument,\AtEndOfPackage,\CurrentOption,\DeclareOption}
+% \DoNotIndex{\ExecuteOptions,\GenericWarning,\IfFileExists,\InputIfFileExists}
+% \DoNotIndex{\NeedsTeXFormat,\MessageBreak}
+% \DoNotIndex{\PackageError,\PackageInfo,\PackageWarning,\PackageWarningNoLine}
+% \DoNotIndex{\ProcessOptions,\ProvidesPackage}
+%
+% \clearpage
+%
+% \section{The Implementation}
+% \iffalse
+%<*package>
+% \fi
+%
+% \subsection{Identificaton}
+%
+% \begin{macrocode}
+\NeedsTeXFormat{LaTeX2e}[1994/12/01]
+\ProvidesPackage{caption2}[2005/10/03 v2.1d Customising captions (AS)]
+%\PackageWarning{caption2}{THIS PACKAGE IS OBSOLETE, PLEASE USE caption INSTEAD}
+% \end{macrocode}
+%
+% \subsection{Preliminary declarations}
+%
+% \begin{macro}{\captionfont}
+% \begin{macro}{\captionlabelfont}
+% \cs{captionfont} and \cs{captionlabelfont} will hold the font specifications for the caption.
+% \begin{macrocode}
+\newcommand*\captionfont{}
+\newcommand*\captionlabelfont{}
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+%
+% \begin{macro}{\captionlabeldelim}
+% \begin{macro}{\captionlabelsep}
+% \cs{captionlabeldelim} \& \cs{captionlabelsep} will hold the iterim
+% space between caption label and text.
+% (\cs{captionlabeldelim} will be typeset within \cs{captionlabelfont},
+% \cs{captionlabelsep} not.)
+% \begin{macrocode}
+\newcommand*\captionlabeldelim{}
+\newcommand*\captionlabelsep{}
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+%
+% \begin{macro}{\captionsize}
+% The macro \cs{captionsize} is obsolete since v1.4 of the \textsf{caption} package,
+% but we still support it to provide backward compatibility.
+% \begin{macrocode}
+\newcommand*\captionsize{}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\captionmargin}
+% \begin{macro}{\captionwidth}
+% \begin{macro}{\ifcaptionwidth}
+% Either \cs{captionmargin} (with specifies an extra margin) or \cs{captionwidth}
+% (with specifies an explicit width) can be set, therefore we need the flag \cs{ifcaptionwidth}
+% to determine with parameter we should pay attention to.
+% \begin{macrocode}
+\newdimen\captionmargin
+\newdimen\captionwidth
+\newif\ifcaptionwidth
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+% \end{macro}
+%
+% \begin{macro}{\captionindent}
+% \cs{captionindent} will be used in caption style \texttt{indent} and specifies the indention
+% after the first line.
+% \begin{macrocode}
+\newdimen\captionindent
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\ifcaptionlabel}
+% \begin{macro}{\ifonelinecaptions}
+% \begin{macro}{\ifignoreLTcapwidth}
+% More flags. If \cs{ifcaptionlabel} is not set the caption label should be suppressed;
+% we need this flag to support the \cs{caption*} command.
+% If \cs{ifonelinecaptions} is set we support the \LaTeX\ base style 'one line captions',
+% that means the caption will be typeset centered if it fits to one line.
+% If \cs{ifignoreLTcapwidth} is set we ignore the \cs{LTcapwidth} of \textsf{longtable}.
+% \changes{v2.1}{20 Feb 02}{New ifs \cs{ifcaptionlabel} and \cs{ifignoreLTcapwidth}}
+% \begin{macrocode}
+\newif\ifcaptionlabel\captionlabeltrue
+\newif\ifonelinecaptions
+\newif\ifignoreLTcapwidth
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+% \end{macro}
+%
+% \begin{macro}{\setcaptionmargin}
+% \begin{macro}{\setcaptionwidth}
+% User-friendly commands to set the caption margin resp.\ width.
+% Note that they additionally set the \cs{ifcaptionwidth} flag.
+% \begin{macrocode}
+\newcommand*\setcaptionmargin{%
+ \captionwidthfalse
+ \setlength\captionmargin}
+\newcommand*\setcaptionwidth{%
+ \captionwidthtrue
+ \setlength\captionwidth}
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+%
+% \begin{macro}{\normalcaptionparams}
+% \cs{normalcaptionparams} resets all caption related parameters to it's normal default values.
+% \cs{captionfont} will be set to \cs{captionsize} so setting the obsolete \cs{captionsize} will still work.
+% Same story with \cs{captiondelim} and the obsolete \cs{captionlabeldelim}.
+% \changes{v2.1}{29 Jan 02}{New command \cs{normalcaptionparams}}
+% \begin{macrocode}
+\newcommand*\normalcaptionparams{%
+ \let\captionsize\@empty
+ \renewcommand*\captionfont{\captionsize}%
+ \let\captionlabelfont\@empty
+ \renewcommand*\captionlabeldelim{:}%
+ \renewcommand*\captionlabelsep{\space}%
+ \setcaptionmargin\z@\setlength\captionindent\z@
+ \onelinecaptionstrue}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@eh}
+% Some commands will produce an error message, use this as help text.
+% \begin{macrocode}
+\newcommand*\caption@eh{%
+ If you do not understand this error, please take a closer look\MessageBreak
+ at the documentation of the `caption2' package.\MessageBreak
+ \@ehc}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\defcaptionstyle}
+% \begin{macro}{\newcaptionstyle}
+% \begin{macro}{\renewcaptionstyle}
+% These macros will define a new caption style. \cs{newcaptionstyle} and \cs{renewcaptionstyle}
+% will additionally check if the caption style already exists or not.
+% \begin{macrocode}
+\newcommand*\defcaptionstyle[1]{%
+ \@namedef{caption@@#1}}
+%
+\newcommand*\newcaptionstyle[1]{%
+ \expandafter\ifx\csname caption@@#1\endcsname\relax
+ \expandafter\defcaptionstyle
+ \else
+ \PackageError{caption2}{Caption style `#1' already defined}{\caption@eh}%
+ \expandafter\@gobbletwo
+ \fi
+ {#1}}
+%
+\newcommand*\renewcaptionstyle[1]{%
+ \expandafter\ifx\csname caption@@#1\endcsname\relax
+ \PackageError{caption2}{Caption style `#1' undefined}{\caption@eh}%
+ \expandafter\@gobbletwo
+ \else
+ \expandafter\defcaptionstyle
+ \fi
+ {#1}}
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+% \end{macro}
+%
+% \begin{macro}{\dummycaptionstyle}
+% This macro will also define a new caption style, but a one which is based on the
+% actual set caption style. Therefore you can't set a caption style made with this
+% command with \cs{captionstyle} -- we check this to avoid an endless recursion.
+% \begin{macrocode}
+\newcommand*\dummycaptionstyle[2]{%
+ \defcaptionstyle{#1}{%
+ \expandafter\ifx\csname caption@@\caption@style\expandafter\endcsname%
+ \csname caption@@#1\endcsname
+ \PackageError{caption2}{You can't use the caption style `#1' directy}{%
+ The caption style `#1' is only a dummy and does not really exists.%
+ \MessageBreak You have to redefine it (with \protect\renewcaptionstyle)
+ before you can select\MessageBreak it with \protect\captionstyle.
+ \space\caption@eh}%
+ \else
+ #2\usecaptionstyle\caption@style
+ \fi}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\captionstyle}
+% \cs{captionstyle} sets the actual caption style. It includes a check if the given caption
+% style is defined or not.
+% \begin{macrocode}
+\newcommand*\captionstyle[1]{%
+ \expandafter\ifx\csname caption@@#1\endcsname\relax
+ \PackageError{caption2}{Undefined caption style `#1'}{\caption@eh}%
+ \else
+ \def\caption@style{#1}%
+ \fi}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{style `normal'}
+% \begin{macro}{style `center'}
+% \begin{macro}{style `centerlast'}
+% \begin{macro}{style `flushleft'}
+% \begin{macro}{style `flushright'}
+% \begin{macro}{style `hang'}
+% \begin{macro}{style `indent'}
+% The predefined caption styles `normal', `center', `flushleft', `flushright', `centerlast',
+% `hang', `hang+X', and `indent'. Because they are quite similar they all are based on the macro
+% \cs{caption@make}.
+% \begin{macrocode}
+\newcaptionstyle{normal}{\caption@make{normal}}
+\newcaptionstyle{center}{\caption@make{center}}
+\newcaptionstyle{centerlast}{\caption@make{centerlast}}
+\newcaptionstyle{flushleft}{\caption@make{flushleft}}
+\newcaptionstyle{flushright}{\caption@make{flushright}}
+\newcaptionstyle{hang}{\caption@make{hang}}
+\newcaptionstyle{hang+center}{\caption@make{hang@center}}
+\newcaptionstyle{hang+centerlast}{\caption@make{hang@centerlast}}
+\newcaptionstyle{hang+flushleft}{\caption@make{hang@flushleft}}
+\newcaptionstyle{indent}{\caption@make{indent}}
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+% \end{macro}
+% \end{macro}
+% \end{macro}
+% \end{macro}
+% \end{macro}
+%
+% \begin{macro}{\caption@makecaption}
+% Our predefined caption styles. \cs{caption@makecaption} takes the style
+% name as parameter, it does the common stuff and calls a macro
+% (build out of the style name) to do the uncommon stuff if neccessary.
+% \changes{v2.1}{26 Feb 02}{Renamed from \cs{caption@make} to \cs{caption@makecaption}}
+% \changes{v2.1b}{16 Apr 04}{We offer and use \cs{caption@make}, again}
+% \changes{v2.1c}{10 May 04}{Bugfix: Extra \cs{par} added}
+% \begin{macrocode}
+\newcommand*\caption@makecaption[1]{%
+ \usecaptionmargin
+%
+ \ifcaptionlabel
+ \def\caption@label{%
+ {\captionlabelfont\captionlabel\captionlabeldelim}\captionlabelsep}%
+ \else
+ \let\caption@label\@empty
+ \fi
+%
+ \captionfont
+ \onelinecaption
+ {\caption@label\captiontext}%
+ {\parbox[b]\captionlinewidth{\strut\@nameuse{caption@@@#1}\par}\par}}
+\newcommand*\caption@make{\caption@makecaption}
+% \end{macrocode}
+% \end{macro}
+%
+% \changes{v2.1}{26 Feb 02}{Removed all extra parboxes from caption styles}
+% \changes{v2.1a}{12 Nov 03}{\ldots and put the parbox into \cs{caption@makecaption} instead}
+%
+% \begin{macro}{\caption@@@normal}
+% The `normal' caption style. Just typeset caption (label \& text) as paragraph.
+% \begin{macrocode}
+\newcommand*\caption@@@normal{%
+ \caption@label\captiontext}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@@@center}
+% The `center' caption style. Typeset the caption centered within a parbox.
+% \begin{macrocode}
+\newcommand*\caption@@@center{%
+ \centering\caption@label\captiontext}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@@@centerlast}
+% The `centerlast' caption style.
+% The idea how to do this was taken from Br\"uggemann-Klein\cite{Anne},
+% it is also mentioned in Kopka\cite[p227]{Kopka-E}.
+% \begin{macrocode}
+\newcommand*\caption@centerlast{%
+ \advance\leftskip by 0pt plus 1fil%
+ \advance\rightskip by 0pt plus -1fil%
+ \parfillskip0pt plus 2fil\relax}
+%
+\newcommand*\caption@@@centerlast{%
+ \caption@centerlast\caption@label\captiontext}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@@@flushleft}
+% The `flushleft' caption style. Typeset the caption raggedright within a parbox.
+% \begin{macrocode}
+\newcommand*\caption@@@flushleft{%
+ \raggedright\caption@label\captiontext}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@@@flushright}
+% The `flushright' caption style. Typeset the caption raggedleft within a parbox.
+% \begin{macrocode}
+\newcommand*\caption@@@flushright{%
+ \raggedleft\caption@label\captiontext}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@@@hang}
+% \begin{macro}{\caption@hangplus}
+% The `hang' caption style.
+% This code was taken from \LaTeXcomp\cite[p155]{A-W:GMS94} and modified.
+% \begin{macrocode}
+\newcommand*\caption@@@hang{%
+ \sbox\@tempboxa{\caption@label}%
+ \hangindent\wd\@tempboxa\noindent
+ \usebox\@tempboxa\caption@hangplus\captiontext}
+%
+\newcommand*\caption@hangplus{}
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+%
+% \begin{macro}{\caption@@@hang@center}
+% The `hang+flushleft' caption style.
+% \begin{macrocode}
+\newcommand*\caption@@@hang@center{%
+ \let\caption@hangplus\centering\caption@@@hang}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@@@hang@centerlast}
+% The `hang+flushleft' caption style.
+% \begin{macrocode}
+\newcommand*\caption@@@hang@centerlast{%
+ \let\caption@hangplus\caption@centerlast\caption@@@hang}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@@@hang@flushleft}
+% The `hang+flushleft' caption style.
+% \begin{macrocode}
+\newcommand*\caption@@@hang@flushleft{%
+ \let\caption@hangplus\raggedright\caption@@@hang}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@@@indent}
+% The `indent' caption style. Is is quite like the `hang' style but the
+% indention is given as \cs{captionindent}.
+% \begin{macrocode}
+\newcommand*\caption@@@indent{%
+ \hangindent\captionindent\noindent
+ \caption@label\captiontext}
+% \end{macrocode}
+% \end{macro}
+%
+% \subsection{Options}
+%
+% \begin{macro}{normal}
+% \begin{macro}{center}
+% \begin{macro}{centerlast,anne}
+% \begin{macro}{flushleft}
+% \begin{macro}{flushright}
+% \begin{macro}{hang,isu}
+% \begin{macro}{indent}
+% These options will set the caption style.
+% (`normal' is the default one.)
+%
+% The options `anne' and `isu' are for
+% backward compatibility only.
+% \begin{macrocode}
+\DeclareOption{normal}{\captionstyle{normal}}
+\DeclareOption{center}{\captionstyle{center}}
+\DeclareOption{centerlast}{\captionstyle{centerlast}}
+\DeclareOption{flushleft}{\captionstyle{flushleft}}
+\DeclareOption{flushright}{\captionstyle{flushright}}
+\DeclareOption{anne}{\ExecuteOptions{centerlast}}
+\DeclareOption{hang}{\captionstyle{hang}}
+\DeclareOption{hang+center}{\captionstyle{hang+center}}
+\DeclareOption{hang+centerlast}{\captionstyle{hang+centerlast}}
+\DeclareOption{hang+flushleft}{\captionstyle{hang+flushleft}}
+\DeclareOption{isu}{\ExecuteOptions{hang}}
+\DeclareOption{indent}{\captionstyle{indent}}
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+% \end{macro}
+% \end{macro}
+% \end{macro}
+% \end{macro}
+% \end{macro}
+%
+% \begin{macro}{scriptsize}
+% \begin{macro}{footnotesize}
+% \begin{macro}{small}
+% \begin{macro}{normalsize}
+% \begin{macro}{large,Large}
+% These options will set the caption size. We use \cs{g@addto@macro} so more that one
+% option can be set.
+% \begin{macrocode}
+\DeclareOption{scriptsize}{\g@addto@macro\captionsize\scriptsize}
+\DeclareOption{footnotesize}{\g@addto@macro\captionsize\footnotesize}
+\DeclareOption{small}{\g@addto@macro\captionsize\small}
+\DeclareOption{normalsize}{\g@addto@macro\captionsize\normalsize}
+\DeclareOption{large}{\g@addto@macro\captionsize\large}
+\DeclareOption{Large}{\g@addto@macro\captionsize\Large}
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+% \end{macro}
+% \end{macro}
+% \end{macro}
+%
+% \begin{macro}{up,it,sl,sc}
+% \begin{macro}{md,bf}
+% \begin{macro}{rm,sf,tt}
+% These options will set the caption label.
+% \begin{macrocode}
+\DeclareOption{up}{\g@addto@macro\captionlabelfont\upshape}
+\DeclareOption{it}{\g@addto@macro\captionlabelfont\itshape}
+\DeclareOption{sl}{\g@addto@macro\captionlabelfont\slshape}
+\DeclareOption{sc}{\g@addto@macro\captionlabelfont\scshape}
+\DeclareOption{md}{\g@addto@macro\captionlabelfont\mdseries}
+\DeclareOption{bf}{\g@addto@macro\captionlabelfont\bfseries}
+\DeclareOption{rm}{\g@addto@macro\captionlabelfont\rmfamily}
+\DeclareOption{sf}{\g@addto@macro\captionlabelfont\sffamily}
+\DeclareOption{tt}{\g@addto@macro\captionlabelfont\ttfamily}
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+% \end{macro}
+%
+% \begin{macro}{oneline}
+% \begin{macro}{nooneline}
+% These options will set the `oneline' flag.
+% (`oneline' is the default.)
+% \begin{macrocode}
+\DeclareOption{oneline}{\onelinecaptionstrue}
+\DeclareOption{nooneline}{\onelinecaptionsfalse}
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+%
+% \begin{macro}{\caption@package}
+% A helper macro, a value of 1 within parameter \#2 will activate the support
+% of the package given in parameter \#1, a value of 0 will deactivate it.
+% \begin{macrocode}
+\newcommand*\caption@package[1]{\@namedef{caption@pkt@#1}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{float}
+% \begin{macro}{longtable}
+% \begin{macro}{subfigure}
+% \changes{v2.1}{19 Feb 02}{New options for interaction with other packages}
+% These options will enable or suppress the support of the packages
+% \textsf{float}, \textsf{longtable}, and \textsf{subfigure}.
+% \begin{macrocode}
+\DeclareOption{float}{\caption@twozerofalse\caption@package{float}{1}}
+\DeclareOption{longtable}{\caption@twozerofalse\caption@package{longtable}{1}}
+\DeclareOption{subfigure}{\caption@twozerofalse\caption@package{subfigure}{1}}
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+% \end{macro}
+%
+% \begin{macro}{none}
+% \begin{macro}{all}
+% These options will enable or suppress the support of all the above packages.
+% \begin{macrocode}
+\DeclareOption{none}{\caption@twozerofalse
+ \caption@package{float}{0}\caption@package{longtable}{0}%
+ \caption@package{subfigure}{0}}
+\DeclareOption{all}{\ExecuteOptions{float,longtable,subfigure}}
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+%
+% \begin{macro}{ruled}
+% \begin{macro}{boxed}
+% The option `ruled' introduced in \textsf{caption} v1.2 is obsolete now, but
+% we will still support it. The option `boxed' was introduced in version 2.0
+% and is obsolete now, too.
+% \begin{macrocode}
+\newif\ifcaption@ruled
+\DeclareOption{ruled}{\caption@ruledtrue}
+\DeclareOption{boxed}{}
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+%
+% \begin{macro}{ignoreLTcapwidth}
+% This option will make the caption code ignore the setting of \cs{LTcapwidth}
+% and use the setting of \cs{setcaptionmargin} or \cs{setcaptionwidth} instead.
+% \begin{macrocode}
+\DeclareOption{ignoreLTcapwidth}{\ignoreLTcapwidthtrue}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{debug}
+% This option will put additional debug information in the log file.
+% \begin{macrocode}
+\DeclareOption{debug}{\caption@debugtrue}
+% \end{macrocode}
+% \end{macro}
+%
+% That's it! Now set the default values and start processing the options.
+% (If \cs{caption@twozero} is set to true (default) we will emulate the package
+% load algorithm of \textsf{caption} v2.0: If the package is already loaded
+% patch it, otherwise do nothing.)
+% \changes{v2.1}{19 Feb 02}{\cs{ProcessOptions} changed to \cs{ProcessOptions*}}
+% \begin{macrocode}
+\newif\ifcaption@debug
+\newif\ifcaption@twozero
+\normalcaptionparams
+\ExecuteOptions{none,normal}
+\caption@twozerotrue
+\ProcessOptions*
+\ifcaption@twozero
+ \PackageInfo{caption2}{Running in caption2 v2.0 compatibility mode}
+\fi
+% \end{macrocode}
+%
+% \subsection{More declarations}
+%
+% \begin{macro}{\captionof}
+% \begin{macro}{\captionof*}
+% \cs{captionof} resp.\ \cs{captionof*} will just set \cs{@captype} and do the normal
+% \cs{caption} resp.\ \cs{caption*}, so we can also typeset captions outside floating
+% environments.
+% \changes{v2.1}{19 Feb 02}{New commands \cs{captionof} and \cs{captionof*}}
+% \begin{macrocode}
+\def\captionof{\@ifstar{\caption@of{\caption*}}{\caption@of\caption}}
+\newcommand*\caption@of[2]{\def\@captype{#2}#1}
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+%
+% \begin{macro}{\abovecaptionskip}
+% \begin{macro}{\belowcaptionskip}
+% Not all document classes define \cs{abovecaptionskip} and \cs{belowcaptionskip}
+% (like \textsf{ucthesis}), so we do it here if not already done.
+% \changes{v2.1}{19 Feb 02}{\cs{abovecaptionskip} and \cs{belowcaptionskip} will be defined if neccessary}
+% \begin{macrocode}
+\@ifundefined{abovecaptionskip}{%
+ \newlength\abovecaptionskip\setlength\abovecaptionskip{10\p@}}{}
+\@ifundefined{belowcaptionskip}{%
+ \newlength\belowcaptionskip\setlength\belowcaptionskip{0\p@}}{}
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+%
+% \begin{macro}{\captionlinewidth}
+% \changes{v2.1}{26 Feb 02}{Renamed from \cs{realcaptionwidth} to \cs{captionlinewidth}}
+% \changes{v2.1a}{12 Nov 03}{We offer \cs{realcaptionwidth}, again}
+% \begin{macro}{\captionlabel}
+% \begin{macro}{\captiontext}
+% These values are only set and used within the caption code itself.
+% \cs{captionlinewidth} will be set to the given vertical space for the caption,
+% normally this is \cs{linewidth}. (This value was called \cs{realcaptionwidth}
+% within \thispackage\ \mbox{2.0}, so we will offer this, too.)
+%
+% \cs{captionlabel} and \cs{captiontext} will be set to the caption label
+% resp.\ the caption text.
+% (Because \cs{captionlabel} and \cs{captiontext} will be locally defined with
+% \cs{def} we do not need to define them here.)
+% \begin{macrocode}
+\newdimen\captionlinewidth
+\newdimen\realcaptionwidth
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+% \end{macro}
+%
+% \begin{macro}{\usecaptionmargin}
+% A helper macro for caption style authors:
+% It calculates \cs{leftskip} and \cs{rightskip} out of
+% \cs{captionlinewidth} and \cs{captionmargin} resp.\ \cs{captionwidth}.
+% Also \cs{captionlinewidth} will be corrected to the appropriate value.
+% \begin{macrocode}
+\newcommand*\usecaptionmargin{%
+ \ifcaptionwidth
+ \leftskip\captionlinewidth
+ \advance\leftskip by -\captionwidth
+ \divide\leftskip by 2
+ \rightskip\leftskip
+ \captionlinewidth\captionwidth
+ \else
+ \leftskip\captionmargin
+ \rightskip\captionmargin
+ \advance\captionlinewidth by -2\captionmargin
+ \fi
+ \realcaptionwidth\captionlinewidth}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\onelinecaption}
+% This macro definition helps setting captions the \LaTeX\ base classes way:
+% If \cs{ifonelinecaptions} is set and the 1st argument fits within \cs{captionlinewidth},
+% we typeset it centered -- otherway we typeset the 2nd argument.
+% (We use the savebox \cs{@tempboxa} as helper for this.)
+% \begin{macrocode}
+\newcommand\onelinecaption[1]{%
+ \let\next\@firstofone
+ \ifonelinecaptions
+ \sbox\@tempboxa{#1}%
+ \ifdim\wd\@tempboxa >\captionlinewidth
+ \else
+ \def\next{{\centering\usebox\@tempboxa\par}\@gobble}%
+ \fi
+ \fi\next}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\usecaptionstyle}
+% First we check if we are inside a caption -- if \cs{captiontext} is undefined we are not.
+% If we are we call the appropriate caption definition.
+%
+% \changes{v2.1b}{16 Apr 04}{Missing percent added (and extra space removed)}
+% \begin{macrocode}
+\newcommand*\usecaptionstyle[1]{%
+ \@ifundefined{captiontext}{%
+ \PackageError{caption2}{You can't use \protect#1
+ in normal text}{The usage of \protect#1 is only
+ allowed inside code declared with\MessageBreak \protect\defcaptionstyle,
+ \protect\newcaptionstyle \space or \protect\renewcaptionstyle.
+ \space\caption@eh}
+ }{%
+ \@ifundefined{caption@@#1}%
+ {\PackageError{caption2}{Caption style `#1' undefined}{\caption@eh}}%
+ {\@nameuse{caption@@#1}}%
+ }}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\@makecaption}
+% This is the heart of the \thispackage\ package -- the redefinition of the
+% core caption code. It was taken from the \LaTeXe\ standard classes and modified.
+% It's very easy -- apart from using \cs{abovecaptionskip} and \cs{belowcaptionskip}
+% we just set \cs{captionlinewidth}, \cs{captionlabel} and \cs{captiontext}
+% to its appropriate values and using the code of the actual caption style via
+% \cs{usecaptionstyle}.
+% \begin{macrocode}
+\renewcommand\@makecaption[2]{%
+ \vskip\abovecaptionskip
+ \captionlinewidth\hsize
+ \realcaptionwidth\hsize
+ \def\captionlabel{#1}%
+ \def\captiontext{#2}%
+ \usecaptionstyle\caption@style
+ \vskip\belowcaptionskip}
+% \end{macrocode}
+% \end{macro}
+%
+% \subsection{Support of other packages}
+%
+% \begin{macro}{\caption@package}
+% This macro will execute the code needed to support the package
+% named within argument \#1. The parameter \#2 is the command
+% which shows if the package is loaded -- it is defined, it is
+% already loaded, otherwise not. The parameter \#3 contains code
+% which will be executed if no support is required -- this is for
+% cleanup purposes. The final parameter \#4 contains the code itself.
+% \changes{v2.1c}{9 May 04}{Compatibility warning removed}
+% \begin{macrocode}
+\renewcommand*\caption@package[3]{%
+ \if1\@nameuse{caption@pkt@#1}%
+ \@ifundefined{#2}%
+ {\let\next\AtBeginDocument}%
+ {\let\next\@firstofone}%
+ \else\ifcaption@twozero
+ \@ifundefined{#2}%
+ {#3\let\next\@gobble}%
+ {\let\next\@firstofone}%
+ \else
+ #3\let\next\@gobble
+ \fi\fi
+ \expandafter\let\csname caption@pkt@#1\endcsname\undefined
+ \ifcaption@debug
+ \ifx\next\@gobble\PackageInfo{caption2}{#1 => gobble}%
+ \else\ifx\next\@firstofone\PackageInfo{caption2}{#1 => firstofone}%
+ \else\ifx\next\AtBeginDocument\PackageInfo{caption2}{#1 => AtBeginDocument}%
+ \fi\fi\fi
+ \fi
+ \next}
+% \end{macrocode}
+% \end{macro}
+%
+% \subsubsection{Support of the \puresf{float} package}
+%
+% \begin{macrocode}
+\caption@package{float}{floatc@plain}{}{%
+ \ifx\floatc@plain\relax
+ \PackageWarning{caption2}{%
+ Option `float' was set but there is no float package loaded}
+ \else
+ \PackageInfo{caption2}{float package v1.2 (or newer) detected}
+% \end{macrocode}
+%
+% \begin{macro}{\caption@floatc}
+% First we define a helper macro to typeset the caption via \cs{usecaptionstyle},
+% the 1st parameter is the caption style name,
+% the 2nd and 3rd are the caption label and text.
+%
+% \textsf{caption2} has the goal not to modify the output just by
+% loading it (without options), therefore we have to be tricky here to
+% support \cs{@fs@cfont} which is in fact the same as our \cs{captionlabelfont}.
+% So we test if a \cs{captionlabelfont} has been set by the user -- if not
+% \cs{@fs@cfont} will be used, otherwise \cs{captionlabelfont}.
+%
+% \changes{v2.1b}{19 Mar 04}{\cs{realcaptionwidth}$=$\cs{hsize} was missing here}
+% \begin{macrocode}
+ \newcommand\caption@floatc[3]{%
+ \ifx\captionlabelfont\@empty
+ \let\captionlabelfont\@fs@cfont
+ \fi
+ \captionlinewidth\hsize
+ \realcaptionwidth\hsize
+ \def\captionlabel{#2}%
+ \def\captiontext{#3}%
+ \usecaptionstyle{#1}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\floatc@plain}
+% Now we can redefine the caption code of the \textsf{float} package.
+% Here we redefine \cs{floatc@plain} to use our caption code, so
+% \texttt{plain} and \texttt{boxed} float types will use the actual
+% caption style set by the user.
+% \begin{macrocode}
+ \renewcommand*\floatc@plain{\caption@floatc{\caption@style}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\floatc@ruled}
+% The support of the \texttt{ruled} float type is a little
+% more complex. First we define a caption style `ruled' so the end-user
+% can change this caption style afterwards. If the (obsolete) option
+% `ruled' is set, we define it in a \textsf{caption} v1.x compatible way,
+% otherwise we define it in a \textsf{float} compatible way.
+%
+% Then we redefine \cs{floatc@ruled} so the caption style `ruled' will
+% be used.
+% \begin{macrocode}
+ \ifcaption@ruled
+ \dummycaptionstyle{ruled}{\onelinecaptionsfalse\setcaptionmargin{\z@}}%
+ \else
+ \newcaptionstyle{ruled}{%
+ \ifcaptionlabel
+ {\@fs@cfont\captionlabel}\space%
+ \fi\captiontext\par}%
+ \fi
+%
+ \renewcommand*\floatc@ruled{\caption@floatc{ruled}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@of}
+% Typesetting captions outside floats is not so easy with redefined floats,
+% because
+% \begin{itemize}
+% \item The caption code of the \textsf{float} package needs not only
+% \cs{@captype} defined, but \cs{@fs@capt} (the command which will typeset the
+% caption itself) either.
+% \item The caption is only saved within a \cs{vbox}, so the \textsf{float}
+% package can typeset the caption later at it's float style specific place
+% (that means at top or at the bottom of the float).
+% \end{itemize}
+%
+% Here is the new code: First we check if it's a restyled float by checking if
+% \cs{fst@<floattype>} is defined. If yes, we use this command (it will define
+% \cs{@fs@capt}).
+% Then we execute \cs{@float@setevery}, if it exists (that means we are
+% dealing with the \textsf{float} package 1.3 or newer here).
+% Now comes the basic trick:
+% We redefine the caption typesetting command \cs{@fs@capt}, so it will close
+% the \cs{vbox}, typeset the caption outside the vbox and finally start the
+% group again so the original \cs{@fs@capt} is happy with closing the group.
+%
+% \begin{macrocode}
+ \renewcommand*\caption@of[2]{\def\@captype{#2}%
+ \@ifundefined{fst@#2}{}{%
+ \@nameuse{fst@#2}%
+ \@ifundefined{@float@setevery}{}{\@float@setevery{#2}}%
+ \let\caption@fs@capt\@fs@capt
+ \let\@fs@capt\caption@of@float}%
+ #1}
+% \end{macrocode}
+%
+% \begin{macrocode}
+ \newcommand\caption@of@float[2]{\egroup
+ \vskip\abovecaptionskip
+ \normalsize\caption@fs@capt{#1}{#2}%
+ \vskip\belowcaptionskip
+ \bgroup}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+ \fi}
+% \end{macrocode}
+%
+% \subsubsection{Support of the \puresf{longtable} package}
+%
+% \begin{macrocode}
+\caption@package{longtable}{LT@makecaption}{}{%
+ \ifx\LT@makecaption\relax
+ \PackageWarning{caption2}{%
+ Option `longtable' was set but there is no longtable package loaded}
+ \else
+ \PackageInfo{caption2}{longtable package v3.15 (or newer) detected}
+% \end{macrocode}
+%
+% \begin{macro}{\LT@makecaption}
+% David Carlisle was so kind to introduce a macro called
+% \cs{LT@makecaption} in version 3.15 of the \textsf{longtable}
+% package which typeset the caption and can be easily redefined.
+%
+% This is the original definition:
+% \begin{quote}
+% |\def\LT@makecaption#1#2#3{%|\\
+% | \LT@mcol\LT@cols c{\hbox to\z@{\hss\parbox[t]\LTcapwidth{%|\\
+% | |$\langle$\textit{typeset} |#1{#2: }#3| \textit{as caption}$\rangle$\\
+% | \endgraf\vskip\baselineskip}%|\\
+% | \hss}}}|
+% \end{quote}
+%
+% So we do here:
+% First we define a new (dummy) caption style `longtable',
+% than we redefine \cs{LT@makecaption} so this style will be used.
+% (Remember: |#1| is |\@gobble| in star form of |\caption|,
+% and |\@firstofone| otherwise.)
+% \begin{macrocode}
+ \dummycaptionstyle{longtable}{}
+%
+ \renewcommand\LT@makecaption[3]{%
+ \LT@mcol\LT@cols c{\hbox to\z@{\hss\parbox[t]\hsize{%
+ \ifignoreLTcapwidth
+ \else
+ \setcaptionwidth\LTcapwidth
+ \fi
+ \captionlinewidth\hsize
+ \realcaptionwidth\hsize
+ \captionlabelfalse#1\captionlabeltrue
+ \def\captionlabel{#2}%
+ \def\captiontext{#3}%
+ \usecaptionstyle{longtable}%
+ \endgraf\vskip\baselineskip}%
+ \hss}}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+ \fi}
+% \end{macrocode}
+%
+% \subsubsection{Support of the \puresf{subfigure} package}
+%
+% Some of the following code will not work within \cs{if},
+% because of the (yet) undefined \cs{if}\textit{xxx}s. So we simply define
+% the critical code within the helper commands \cs{setsubcapstyle}
+% and \cs{caption@makesubcaption} already here.
+%
+% \begin{macro}{\setsubcapstyle}
+% This sets the subcaptionstyle to a appropriate value.
+%
+% If \cs{ifsubcapraggedright} is undefined (it was introduced
+% into v2.1 of the \textsf{subfigure} package) we define it first.
+% \begin{macrocode}
+\newcommand*\setsubcapstyle{%
+ \@ifundefined{subcapraggedrightfalse}{%
+ \newif\ifsubcapraggedright}{}%
+ \ifsubcaphang
+ \ifsubcapcenter
+ \subcapstyle{hang+center}%
+ \else\ifsubcapcenterlast
+ \subcapstyle{hang+centerlast}%
+ \else\ifsubcapraggedright
+ \subcapstyle{hang+flushleft}%
+ \else
+ \subcapstyle{hang}%
+ \fi\fi\fi
+ \else\ifsubcapcenter
+ \subcapstyle{center}%
+ \else\ifsubcapcenterlast
+ \subcapstyle{centerlast}%
+ \else\ifsubcapraggedright
+ \subcapstyle{flushleft}%
+ \else
+ \subcapstyle{normal}%
+ \fi\fi\fi\fi}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@makesubcaption}
+% This will typeset the subcaption.
+% We just set all our \cs{caption}\textit{xxx} values to
+% the values of \cs{subcap}\textit{xxx} and typeset the
+% caption like \textsf{subfigure} within a \cs{hbox},
+% but with the help of \cs{usecaptionstyle}.
+%
+% But this is not as easy as it seems. We typeset the caption like this:
+% \begin{quote}
+% |\captionfont|\\
+% | {\capionlabelfont\captionlabel\captionlabeldelim}%|\\
+% |\captionlabelsep\captiontext|
+% \end{quote}
+% Within \textsf{subfigure} 2.0 the caption will be set quite similar to:
+% \begin{quote}
+% |\subcapsize|\\
+% | {\subcaplabelfont\captionlabel}%|\\
+% |\space\captiontext|
+% \end{quote}
+% But within \textsf{subfigure} 2.1 this has changed to:
+% \begin{quote}
+% |\subcapsize|\\
+% | {\subcaplabelfont\captionlabel}%|\\
+% |\hskip\subfiglabelskip|\\
+% | {\subcapfont\captiontext}}|
+% \end{quote}
+% So we have to be tricky here: We set \cs{captionlabelfont} to \cs{normalfont} plus
+% \cs{subcapsize} \& \cs{subcaplabelfont}, so the font setting in \cs{captionfont}
+% will not affect the caption label in subfigure captions.
+%
+% Note that \cs{hfil} has changed to \cs{hss} from subfigure 2.0 to 2.1,
+% so we use \cs{caption@subfig@hss} instead. (We will define this later on.)
+% \begin{macrocode}
+\newcommand\caption@makesubcaption[2]{%
+ \renewcommand*\captionfont{\subcapsize\subcapfont}%
+ \renewcommand*\captionlabelfont{\normalfont\subcapsize\subcaplabelfont}%
+ \let\captionlabeldelim\subcaplabeldelim
+ \let\captionlabelsep\subcaplabelsep
+ \ifsubfigcapwidth\captionwidthtrue\else\captionwidthfalse\fi
+ \setlength\captionmargin\subfigcapmargin
+ \setlength\captionwidth\subfigcapwidth
+ \captionindent\subcapindent
+ \ifsubcapnooneline\onelinecaptionsfalse\else\onelinecaptionstrue\fi
+ \hbox to\@tempdima{%
+ \caption@subfig@hss\parbox[t]\@tempdima{%
+ \captionlinewidth\@tempdima
+ \realcaptionwidth\@tempdima
+ \captionlabeltrue
+ \def\captionlabel{#1}%
+ \def\captiontext{\ignorespaces #2}%
+ \usecaptionstyle\caption@substyle}%
+ \caption@subfig@hss}}
+% \end{macrocode}
+% \end{macro}
+%
+% If the subfigure support is not needed, we throw
+% the helper macros in the garbage can.
+%
+% \begin{macrocode}
+\caption@package{subfigure}{@makesubfigurecaption}{%
+ \let\setsubcapstyle\undefined
+ \let\caption@makesubcaption\undefined}{%
+ \ifx\@makesubfigurecaption\relax
+ \PackageWarning{caption2}{%
+ Option `subfigure' was set but there is no subfigure package loaded}
+ \let\setsubcapstyle\undefined
+ \let\caption@makesubcaption\undefined
+ \else
+% \end{macrocode}
+%
+% Some stuff has changed from version 2.0 to 2.1 of the
+% \textsf{subfigure} package, so we make a branch here.
+% If \cs{subcapfont} is undefined we assume v2.0,
+% otherwise we assume v2.1 or newer.
+%
+% \begin{macrocode}
+ \ifx\subcapfont\undefined
+ \PackageInfo{caption2}{subfigure package v2.0 detected}
+% \end{macrocode}
+%
+% \begin{macro}{\subcapfont}
+% We define \cs{subcapfont} here so we can use it later
+% in common code for \textsf{subfigure} v2.0 and v2.1 (or newer).
+% \begin{macrocode}
+ \let\subcapfont\@empty
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\subfigcapwidth}
+% \begin{macro}{\setsubcapmargin}
+% \begin{macro}{\setsubcapwidth}
+% Analogous to \cs{captionwidth}, \cs{setcaptionmargin}, and
+% \cs{setcaptionwidth} we define \cs{subfigcapwidth},
+% \cs{setsubcapmargin}, and \cs{setsubcapwidth}.
+%
+% Note: \cs{subfigcapmargin} is a command in v2.0 of \textsf{subfigure}.
+% So we make \cs{subfigcapwidth} a command, too.
+% \begin{macrocode}
+ \newcommand*\subfigcapwidth{\z@}
+ \newcommand*\setsubcapmargin{%
+ \subfigcapwidthfalse
+ \renewcommand*\subfigcapmargin}
+ \newcommand*\setsubcapwidth{%
+ \subfigcapwidthtrue
+ \renewcommand*\subfigcapwidth}
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+% \end{macro}
+%
+% \begin{macro}{\subcaplabelsep}
+% Analogous to \cs{captionlabelsep} we define \cs{subcaplabelsep}.
+% \begin{macrocode}
+ \newcommand*\subcaplabelsep{\space}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@subfig@hss}
+% This will be uses within the caption code itself.
+% \begin{macrocode}
+ \let\caption@subfig@hss\hfil
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+ \else
+ \PackageInfo{caption2}{subfigure package v2.1 (or newer) detected}
+% \end{macrocode}
+%
+% \begin{macro}{\subfigcapwidth}
+% \begin{macro}{\setsubcapmargin}
+% \begin{macro}{\setsubcapwidth}
+% Analogous to \cs{captionwidth}, \cs{setcaptionmargin}, and
+% \cs{setcaptionwidth} we define \cs{subfigcapwidth},
+% \cs{setsubcapmargin}, and \cs{setsubcapwidth}.
+%
+% Note: \cs{subfigcapmargin} is a length in v2.1 of \textsf{subfigure}.
+% So we make \cs{subfigcapwidth} a length, too.
+% \begin{macrocode}
+ \newdimen\subfigcapwidth
+ \newcommand*\setsubcapmargin{%
+ \subfigcapwidthfalse
+ \setlength\subfigcapmargin}
+ \newcommand*\setsubcapwidth{%
+ \subfigcapwidthtrue
+ \setlength\subfigcapwidth}
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+% \end{macro}
+%
+% \begin{macro}{\subcaplabelsep}
+% Analogous to \cs{captionlabelsep} we define \cs{subcaplabelsep}.
+% \begin{macrocode}
+ \newcommand*\subcaplabelsep{\hskip\subfiglabelskip}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@subfig@hss}
+% This will be uses within the caption code itself.
+% \begin{macrocode}
+ \let\caption@subfig@hss\hss
+% \end{macrocode}
+%
+% \end{macro}
+% \begin{macrocode}
+ \fi
+% \end{macrocode}
+%
+% Here starts the common code for \textsf{subfigure} v2.0 and v2.1.
+%
+% \begin{macro}{\ifsubfigcapwidth}
+% \begin{macro}{\subcapindent}
+% \begin{macro}{\subcaplabeldelim}
+% Analogous to \cs{ifcaptionwidth}, \cs{captionindent} \& \cs{captionlabeldelim}
+% we define \cs{ifsubfigcapwidth}, \cs{subcapindent} \& \cs{subcaplabeldelim}
+% \begin{macrocode}
+ \newif\ifsubfigcapwidth
+ \newdimen\subcapindent
+ \newcommand*\subcaplabeldelim{}
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+% \end{macro}
+%
+% \begin{macro}{\subcapstyle}
+% Analogous to \cs{captionstyle} we define \cs{subcapstyle}
+% and set it (via \cs{setsubcapstyle}) to a appropriate value.
+% \begin{macrocode}
+ \newcommand*\subcapstyle[1]{%
+ \expandafter\ifx\csname caption@@#1\endcsname\relax
+ \PackageError{caption2}{Undefined caption style `#1'}{\caption@eh}%
+ \else
+ \def\caption@substyle{#1}%
+ \fi}
+ \setsubcapstyle
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\@thesubfigure}
+% \begin{macro}{\@thesubtable}
+% The \textsf{subfigure} package makes use of \cs{subcaplabelfont} and
+% \cs{subfiglabelskip} within its \cs{@thesub}\textit{xxx} macros.
+% This is totally in contrast to the way the \textsf{caption2} package
+% handle these settings. So we redefine the \cs{@thesub}\textit{xxx}
+% to be just the plain label and nothing else.
+%
+% \begin{macrocode}
+ \renewcommand*\@thesubfigure{\thesubfigure}
+ \renewcommand*\@thesubtable{\thesubtable}
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+%
+% \begin{macro}{\@makesubfigurecaption}
+% \begin{macro}{\@makesubtablecaption}
+% Now we are ready to redefine \cs{@makesubfigurecaption}.
+% \begin{macrocode}
+ \let\@makesubfigurecaption\caption@makesubcaption
+ \let\@makesubtablecaption\caption@makesubcaption
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+%
+% \begin{macrocode}
+ \fi}
+% \end{macrocode}
+%
+% That's all folks!
+%
+% \begin{macrocode}
+\let\caption@package\undefined
+% \end{macrocode}
+%
+% \iffalse
+%</package>
+% \fi
+%
+% \begin{thebibliography}{9}
+% \bibitem{float}
+% Anselm Lingnau:
+% \textsl{An Improved Environment for Floats},
+% 2001/11/08
+% \bibitem{longtable}
+% David Carlisle:
+% \textsl{The longtable package},
+% 2000/10/22
+% \bibitem{rotating}
+% Sebastian Rahtz and Leonor Barroca:
+% \textsl{A style option for rotated objects in \LaTeX},
+% 1997/09/26
+% \bibitem{subfigure}
+% Steven Douglas Cochran:
+% \textsl{The subfigure package},
+% 2002/02/14
+% \bibitem{A-W:GMS94}
+% Michel Goossens, Frank Mittelbach and Alexander Samarin:
+% \newblock \textsl{The {\LaTeX} Companion},
+% \newblock Addison-Wesley, Reading, Massachusetts, 1994.
+% \bibitem{Anne}
+% Anne Br\"uggemann-Klein:
+% \textsl{Einf\"uhrung in die Dokumentverarbeitung},
+% B.G. Teubner, Stuttgart, 1989
+% \bibitem{Kopka-E}
+% Helmut Kopka:
+% \textsl{\LaTeX -- Erweiterungsm\"oglichkeiten},
+% 3. \"uberarbeitete Auf\/lage, Addison-Wesley, Bonn, 1991
+% \end{thebibliography}
+%
+% \Finale
+%
+\endinput
diff --git a/macros/latex/contrib/caption/fallback/v3.0/caption.dtx b/macros/latex/contrib/caption/fallback/v3.0/caption.dtx
new file mode 100644
index 0000000000..7f7b4a49d1
--- /dev/null
+++ b/macros/latex/contrib/caption/fallback/v3.0/caption.dtx
@@ -0,0 +1,5077 @@
+% \iffalse meta-comment
+%
+% This is file `caption.dtx'.
+%
+% Copyright (C) 1994-2007 Axel Sommerfeldt (caption@sommerfee.de)
+%
+% --------------------------------------------------------------------------
+%
+% This work may be distributed and/or modified under the
+% conditions of the LaTeX Project Public License, either version 1.3
+% of this license or (at your option) any later version.
+% The latest version of this license is in
+% http://www.latex-project.org/lppl.txt
+% and version 1.3 or later is part of all distributions of LaTeX
+% version 2003/12/01 or later.
+%
+% This work has the LPPL maintenance status "maintained".
+%
+% This Current Maintainer of this work is Axel Sommerfeldt.
+%
+% This work consists of the files caption.ins, caption.dtx,
+% caption2.dtx, and anleitung.tex and the derived files
+% caption.sty, caption2.sty, caption3.sty, and manual.tex.
+%
+% \fi
+% \CheckSum{2178}
+%
+% \iffalse
+%<*driver>
+\NeedsTeXFormat{LaTeX2e}[1994/12/01]
+\documentclass{ltxdoc}
+\setlength\parindent{0pt}
+\setlength\parskip{\smallskipamount}
+%
+\newcommand\NEWfeature{\NEW{New feature}}
+\newcommand\NEWdescription{\NEW{New description}}
+\newcommand\NEW[2]{\hskip 1sp \marginpar{\footnotesize\sffamily\raggedleft#1\\#2}}
+%
+\font\manual=manfnt
+\newcommand\DANGER{\hskip 1sp \marginpar{\raggedleft\textcolor{blue}{{\manual\char127}}}}
+%
+\ifx\pdfoutput\undefined\else
+ \ifcase\pdfoutput\else
+ \usepackage{mathptmx,courier}
+ \usepackage[scaled=0.90]{helvet}
+ \addtolength\marginparwidth{15pt}
+ \fi
+\fi
+%
+%\usepackage[french,USenglish]{babel}
+\usepackage{color,setspace}
+%
+%\usepackage{float}
+\usepackage{longtable}
+%\usepackage[raggedright]{sidecap}
+%
+\usepackage{caption}[2005/08/24]
+\DeclareCaptionLabelSeparator{endash}{\space\textendash\space}
+\usepackage{hyperref}
+%
+\DeclareCaptionFont{red}{\color{red}}
+\DeclareCaptionFont{green}{\color{green}}
+\DeclareCaptionFont{blue}{\color{blue}}
+%
+\DeclareCaptionLabelSeparator{period-newline}{. \\}
+\DeclareCaptionStyle{period-newline}[labelsep=period]{labelsep=period-newline}
+\DeclareCaptionStyle{period-newline2}[labelsep=period,justification=centering]{labelsep=period-newline}
+\DeclareCaptionStyle{period-newline3}[labelsep=period]{labelsep=period-newline,justification=centering}
+\DeclareCaptionFormat{reverse}{#3#2#1}
+\DeclareCaptionFormat{llap}{\llap{#1#2}#3\par}
+\DeclareCaptionLabelFormat{fullparens}{(\bothIfFirst{#1}{ }#2)}
+\DeclareCaptionLabelSeparator{fill}{\hfill}
+%
+\DeclareRobustCommand{\KOMAScript}{\textsf{K\kern.05em O\kern.05em%
+ M\kern.05em A\kern.1em-\kern.1em Script}}
+%
+%<+driver>\OnlyDescription
+%
+\begin{document}
+ \DocInput{caption.dtx}
+\end{document}
+%</driver>
+% \fi
+%
+% \newcommand*\purerm[1]{{\upshape\mdseries\rmfamily #1}}
+% \newcommand*\puresf[1]{{\upshape\mdseries\sffamily #1}}
+% \newcommand*\purett[1]{{\upshape\mdseries\ttfamily #1}}
+% \let\package\puresf\def\thispackage{\package{caption}}
+% \let\env\purett \let\opt\purett
+%
+% \newcommand*\version[2][]{$v#2$}
+%
+% \newenvironment{Options}[1]%
+% {\list{}{\renewcommand{\makelabel}[1]{\texttt{##1}\hfil}%
+% \settowidth{\labelwidth}{\texttt{#1\space}}%
+% \setlength{\leftmargin}{\labelwidth}%
+% \addtolength{\leftmargin}{\labelsep}}}%
+% {\endlist}
+%
+% \newenvironment{Example}%
+% {\ifvmode\else\unskip\par\fi
+% \minipage{\linewidth}\smallskip}%
+% {\smallskip\endminipage}
+% \newcommand\example[3][figure]{%
+% \begingroup
+% \captionsetup{#2}%
+% \captionof{#1}[]{#3}%
+% \endgroup}
+%
+% \GetFileInfo{caption.sty}
+% \title{Typesetting captions with the
+% \thispackage\ package\thanks{This package has version number
+% \fileversion, last revised \filedate.}}
+% \author{Axel Sommerfeldt\\\href{mailto:caption@sommerfee.de}{\texttt{caption@sommerfee.de}}}
+% \date{2007/04/09}
+% \maketitle
+%
+% \begin{abstract}
+% The \thispackage\ package offers customization of captions
+% in floating environments such |figure| and |table| and cooperates with
+% many other packages.\footnote{A complete re-work of the user interface
+% done with Steven D. Cochran and Frank Mittelbach has lead to
+% this new enhanced version 3.0.}
+% \end{abstract}
+%
+% \tableofcontents
+%
+% \newcommand\figuretext{^^A
+% White sand beaches. The pink smoothness of the conch shell. A sea abundant
+% with possibilities. Duty-free shops filled with Europe's finest gifts and
+% perfumes. Play your favorite game of golf amidst the tropical greens on one
+% of the many championship courses.}
+%
+% \iffalse
+% --------------------------------------------------------------------------- %
+% \fi
+%
+% \section{Introduction}
+%
+% Within the standard \LaTeX\ classes captions haven't received the attention
+% they deserve. Simply typeset as an ordinary paragraph there is no
+% remarkable visual difference from the rest of the text, like here:
+%
+% \example{belowskip=\abovecaptionskip}{\figuretext}
+%
+% There should be possibilities to change this; for example, it would be nice
+% if you could make the text of the caption a little bit smaller as the normal
+% text, add an extra margin, typeset the caption label with the same font
+% family and shape as your headings etc. Just like this one:
+%
+% \example{belowskip=\abovecaptionskip,size=small,margin=10pt,labelfont=bf,labelsep=endash}{\figuretext}
+%
+% You can do this easily with this package as there are many ready-to-use
+% caption formatting options, but you are free to define your very own stuff, too.
+%
+% \iffalse
+% --------------------------------------------------------------------------- %
+% \fi
+%
+% \pagebreak[4]
+% \section{Using the package}
+% \label{usage}
+%
+% \DescribeMacro{\usepackage}
+% Insert
+% \begin{quote}
+% |\usepackage|\oarg{options}|{caption}[|\texttt{\filedate}|]|
+% \end{quote}
+% into the preamble of your document, i.e.~the part of your document
+% between |\documentclass| and |\begin{document}|.
+% The options control how your captions will look like; e.g.,
+% \begin{quote}
+% |\usepackage[margin=10pt,font=small,labelfont=bf]{caption}|
+% \end{quote}
+% would result in captions looking like the second one in the introduction.
+%
+% \DescribeMacro{\captionsetup}
+% For a later change of options the \thispackage\ package provides the command
+% \begin{quote}
+% |\captionsetup|\oarg{float type}\marg{options}
+% \end{quote}
+% So
+% \begin{quote}
+% |\usepackage[margin=10pt,font=small,labelfont=bf]{caption}|
+% \end{quote}
+% and
+% \begin{quote}
+% |\usepackage{caption}|\\
+% |\captionsetup{margin=10pt,font=small,labelfont=bf}|
+% \end{quote}
+% are equal in their results.
+%
+% It's good to know that |\captionsetup| has an effect on the current
+% environment only. So if you want to change some settings for the
+% current |figure| or |table| only, just place the |\captionsetup| command
+% inside the |figure| or |table| right before the |\caption| command.
+% For example
+% \begin{quote}
+% |\begin{figure}|\\
+% | |\ldots\\
+% | \captionsetup{singlelinecheck=off}|\\
+% | \caption{|\ldots|}|\\
+% |\end{figure}|
+% \end{quote}
+% switches the single-line-check off, but only for this |figure| so all
+% the other captions remain untouched.
+%
+% (For a description of the optional parameter \meta{float type} see
+% section \ref{misc}: \textit{``Useful stuff''}.)
+%
+% \iffalse
+% --------------------------------------------------------------------------- %
+% \fi
+%
+% \pagebreak[3]
+% \section{Options}
+%
+% \def\OptionLabel{RaggedRight}
+% \def\UserDefined{\ldots}
+% \makeatletter
+% \newcommand*\Section{\@ifstar{\@Section\relax}{\@Section{section}}}
+% \newcommand*\@Section[3]{#1 \ref{#2}: \textit{``#3''}}
+% \makeatother
+% \newcommand*\See[1]{{\small (See #1)}}
+% \newcommand*\SeeUserDefined[1][]{%
+% \See{\Section{declare}{Do it yourself}#1}}
+%
+% \iffalse
+% --------------------------------------------------------------------------- %
+% \fi
+%
+% \subsection{Formatting}
+%
+% \DescribeMacro{format=}
+% A figure or table caption mainly consits of three parts: the caption label,
+% which says if this object is a `Figure' or `Table' and what number is
+% associated with it, the caption text itself, which is normally a short
+% description of contents, and the caption separator which separates the text
+% from the label.
+%
+% The \textit{caption format} determines how this information will be presented;
+% it is specified with the option
+% \begin{quote}
+% |format=|\meta{format name}\quad ,
+% \end{quote}
+% having the name of the caption format as its argument.
+%
+% There are two standard caption formats:
+% \iffalse
+% \footnote{You have the option to
+% define your own ones, too. See section \ref{declare}:
+% \textit{``Do it yourself!''} for details.}
+% \fi
+%
+% \begin{Options}{\OptionLabel}
+% \item[plain]\NEWdescription{v3.0h}
+% Typesets the captions as a normal paragraph.
+% (This is the default behaviour, it
+% is adapted from the standard \LaTeX\ document classes.)
+%
+% \item[hang]
+% Indents the caption text, so it will `hang' under the first line of the text.
+%
+% \item[\UserDefined]
+% Own formats can be defined using |\DeclareCaptionFormat|.
+% \SeeUserDefined
+% \end{Options}
+%
+% \begin{Example}
+% An example: Specifying the option
+% \begin{quote}
+% |format=hang|
+% \end{quote}
+% yields captions like this:
+% \example{format=hang}{\figuretext}
+% \end{Example}
+%
+% \DescribeMacro{indention=}
+% For both formats (\texttt{plain} and \texttt{hang}) you can setup an extra
+% indention starting at the second line of the caption. You do this with the
+% option
+% \begin{quote}
+% |indention=|\meta{amount}.
+% \end{quote}
+%
+% Two examples:
+%
+% \begin{Example}
+% \begin{quote}
+% |format=plain,indention=.5cm|
+% \end{quote}
+% \captionsetup{aboveskip=0pt}
+% \example{format=plain,indention=.5cm}{\figuretext}
+% \end{Example}
+%
+% \begin{Example}
+% \begin{quote}
+% |format=hang,indention=-0.5cm|
+% \end{quote}
+% \captionsetup{aboveskip=0pt}
+% \example{format=hang,indention=-0.5cm}{\figuretext}
+% \end{Example}
+%
+% \pagebreak[3]
+% \DescribeMacro{labelformat=}
+% With the option
+% \nopagebreak[3]
+% \begin{quote}
+% |labelformat=|\meta{label format name}
+% \end{quote}
+% \NEWdescription{v3.0e}
+% you specify how the caption label will be typeset.
+% There are four standard caption label formats:
+%
+% \begin{Options}{\OptionLabel}
+% \item[default]
+% The caption label will be typeset as specified by the document class,
+% usually this means the name and the number (like \texttt{simple}).
+% (This is the default behaviour.)
+%
+% \item[empty]
+% The caption label will be empty. (This option makes sense when used
+% together with other options like \texttt{labelsep=none}.)
+%
+% \item[simple]
+% The caption label will be typeset as a name and a number.
+%
+% \item[parens]
+% The number of the caption label will be typeset in parentheses.
+%
+% \item[\UserDefined]
+% Own label formats can be defined using |\DeclareCaptionLabelFormat|.
+% \SeeUserDefined
+% \end{Options}
+%
+% \begin{Example}
+% An example: Using the options
+% \begin{quote}
+% |labelformat=parens,labelsep=quad|
+% \end{quote}
+% gives captions like this one:
+% \example{labelformat=parens,labelsep=quad}{\figuretext}
+% \end{Example}
+%
+% \DescribeMacro{labelsep=}
+% With the option
+% \begin{quote}
+% |labelsep=|\meta{label separator name}
+% \end{quote}
+% you specify what caption separator will be used.
+% You can choose one of the following:
+%
+% \begin{Options}{\OptionLabel}
+% \item[none]
+% There is no caption separator. (This option makes sense when used
+% together with other options like \texttt{labelformat=empty}.)
+%
+% \item[colon]
+% The caption label and text will be separated by a colon and a space.
+% (This is the default one.)
+%
+% \item[period]
+% The caption label and text will be separated by a period and a space.
+%
+% \item[space]
+% The caption label and text will be separated by a single space.
+%
+% \item[quad]
+% The caption label and text will be separated by a |\quad|.
+%
+% \item[newline]
+% The caption label and text will be separated by a line break (|\\|).
+%
+% \item[endash]\NEWfeature{v3.0h}
+% The caption label and text will be separated by an en-dash,
+% surrounded by spaces (| -- |).
+%
+% \item[\UserDefined]
+% Own separators can be defined using |\DeclareCaptionLabelSeparator|.
+% \SeeUserDefined
+% \end{Options}
+%
+% Three examples:
+% \begin{Example}
+% \begin{quote}
+% |labelsep=period|
+% \end{quote}
+% \captionsetup{aboveskip=0pt}
+% \example{labelsep=period}{\figuretext}
+% \end{Example}
+%
+% \begin{Example}
+% \begin{quote}
+% |labelsep=newline,singlelinecheck=false|
+% \end{quote}
+% \captionsetup{aboveskip=0pt}
+% \example{labelsep=newline,singlelinecheck=false}{\figuretext}
+% \end{Example}
+%
+% \begin{Example}
+% \begin{quote}
+% |labelsep=endash|
+% \end{quote}
+% \captionsetup{aboveskip=0pt}
+% \example{labelsep=endash}{\figuretext}
+% \end{Example}
+%
+% \iffalse
+% --------------------------------------------------------------------------- %
+% \fi
+%
+% \subsection{Justification}
+% \label{justification}
+%
+% \DescribeMacro{justification=}
+% As addition to the caption format you could also specify a
+% \emph{caption justification}; it is specified with the option
+% \begin{quote}
+% |justification=|\meta{justification name}\quad.
+% \end{quote}
+%
+% You can choose one of the following:
+%
+% \begin{Options}{\OptionLabel}
+% \item[justified]
+% Typesets the caption as a normal paragraph. (This is the default.)
+%
+% \item[centering]
+% Each line of the caption will be centered.
+%
+% \iffalse
+% \item[Centering]
+% Each line of the caption will be centered, too.
+% But this time the command |\Centering| of the \package{ragged2e} package
+% will be used to achieve this. This difference is that this time the word
+% breaking algorithm of \TeX\ will work inside the caption.
+% \fi
+%
+% \item[centerlast]
+% The last line of each paragraph of the caption text will be centered.
+%
+% \item[centerfirst]
+% Only the first line of the caption will be centered.
+%
+% \item[raggedright]
+% Each line of the caption will be moved to the left margin.
+%
+% \iffalse
+% \item[RaggedRight]
+% Each line of the caption will be moved to the left margin using
+% the command |\RaggedRight| from the \package{ragged2e} package.
+% \fi
+% \item[RaggedRight]
+% Each line of the caption will be moved to the left margin, too.
+% But this time the command |\RaggedRight| of the \package{ragged2e} package
+% will be used to achieve this. The main difference is that the word
+% breaking algorithm of \TeX\ will work inside captions.
+%
+% \item[raggedleft]
+% Each line of the caption will be moved to the right margin.
+%
+% \iffalse
+% \item[RaggedLeft]
+% Each line of the caption will be moved to the right margin using
+% the command |\RaggedLeft| from the \package{ragged2e} package.
+% \fi
+%
+% \item[\UserDefined]
+% Own justifications can be defined using |\DeclareCaptionJustification|.
+% \SeeUserDefined
+% \end{Options}
+%
+% Three examples:
+% \begin{Example}
+% \begin{quote}
+% |justification=centerlast|
+% \end{quote}
+% \captionsetup{aboveskip=0pt}
+% \example{justification=centerlast}{\figuretext}
+% \end{Example}
+%
+% \begin{Example}
+% \begin{quote}
+% |format=hang,justification=raggedright|
+% \end{quote}
+% \captionsetup{aboveskip=0pt}
+% \example{format=hang,justification=raggedright}{\figuretext}
+% \end{Example}
+%
+% \begin{Example}
+% \begin{quote}
+% |labelsep=newline,justification=centering|
+% \end{quote}
+% \captionsetup{aboveskip=0pt}
+% \example{belowskip=\abovecaptionskip,labelsep=newline,justification=centering}{\figuretext}
+% \end{Example}
+%
+% \DescribeMacro{singlelinecheck=}
+% The standard \LaTeX\ document classes (|article|, |report|, and |book|)
+% automatically center a caption if it fits in one single line:
+%
+% \example{belowskip=\abovecaptionskip}{A short caption.}
+%
+% \DANGER
+% The \thispackage\ package adapts this behaviour and therefore usually
+% ignores the justification you have set with |justification=| in such case.
+% But you can switch this special treatment of such short captions off
+% with the option
+% \begin{quote}
+% |singlelinecheck=|\meta{bool}\quad.
+% \end{quote}
+% Using |false|, |no|, |off| or |0| for \meta{bool} switches the
+% extra centering off:
+% \begin{quote}
+% |singlelinecheck=false|
+% \end{quote}
+% Doing so the above short caption would look like
+%
+% \begingroup
+% \captionsetup{type=figure}
+% \ContinuedFloat
+% \endgroup
+% \example{belowskip=\abovecaptionskip,singlelinecheck=false}{A short caption.}
+%
+% You switch the extra centering on again by using |true|, |yes|, |on| or |1|
+% for \meta{bool}. (The default is on.)
+%
+% \iffalse
+% --------------------------------------------------------------------------- %
+% \fi
+%
+% \subsection{Fonts}
+% \label{fonts}
+%
+% \DescribeMacro{font=}
+% \DescribeMacro{labelfont=}
+% \DescribeMacro{textfont=}
+% There are three font options which affects different parts of the caption:
+% One affecting the whole caption (|font|), one which only affects the caption
+% label and separator (|labelfont|) and at least one which only affects the
+% caption text (|textfont|).
+% You set them up using the options
+% \begin{quote}\begin{tabular}{@{}r@{}ll}
+% |font=| & \marg{font options} & ,\\
+% |labelfont=| & \marg{font options} & , and\\
+% |textfont=| & \marg{font options} & .\\
+% \end{tabular}\end{quote}
+%
+% And these are the available font options:
+%
+% \begin{Options}{\OptionLabel}
+% \item[scriptsize] {\scriptsize Very small size}
+% \item[footnotesize] {\footnotesize The size usually used for footnotes}
+% \item[small] {\small Small size}
+% \item[normalsize] {\normalsize Normal size}
+% \item[large] {\large Large size}
+% \item[Large] {\Large Even larger size}
+%
+% \item[up] {\upshape Upright shape}
+% \item[it] {\itshape Italic shape}
+% \item[sl] {\slshape Slanted shape}
+% \item[sc] {\scshape Small Caps shape}
+%
+% \item[md] {\mdseries Medium series}
+% \item[bf] {\bfseries Bold series}
+%
+% \item[rm] {\rmfamily Roman family}
+% \item[sf] {\sffamily Sans Serif family}
+% \item[tt] {\ttfamily Typewriter family}
+%
+% \item[\UserDefined]
+% Own font options can be defined using |\DeclareCaptionFont|.
+% \SeeUserDefined
+% \end{Options}
+%
+% If you use only one of these options you can omit the braces;
+% e.g., the options
+% \iffalse
+% \begin{quote}
+% \fi
+% |font={small}|
+% \iffalse
+% \end{quote}
+% \fi
+% and
+% \iffalse
+% \begin{quote}
+% \fi
+% |font=small|
+% \iffalse
+% \end{quote}
+% \fi
+% will give the same result.
+%
+% Two examples:
+% \begin{Example}
+% \begin{quote}
+% |font={small,it},labelfont=bf|
+% \end{quote}
+% \captionsetup{aboveskip=0pt}
+% \example{font={small,it},labelfont=bf}{\figuretext}
+% \end{Example}
+%
+% \begin{Example}
+% \begin{quote}
+% |font=small,labelfont=bf,textfont=it|
+% \end{quote}
+% \captionsetup{aboveskip=0pt}
+% \example{font=small,labelfont=bf,textfont=it}{\figuretext}
+% \end{Example}
+%
+% \iffalse
+% --------------------------------------------------------------------------- %
+% \fi
+%
+% \subsection{Margins and further paragraph options}
+% \label{margins}
+%
+% \DescribeMacro{margin=}
+% \DescribeMacro{width=}
+% For all captions you can specify \emph{either} an extra margin \emph{or}
+% a fixed width. You do this by using the options
+% \begin{quote}\begin{tabular}{@{}r@{}ll}
+% |margin=| & \meta{amount} & \emph{or}\\
+% |width=| & \meta{amount} & \\
+% \end{tabular}\end{quote}
+% Nevertheless what option you use, the left and right margin will be the
+% same.
+%
+% Two examples will illustrating this:
+% \begin{Example}
+% \begin{quote}
+% |margin=10pt|
+% \end{quote}
+% \captionsetup{aboveskip=0pt}
+% \example{margin=10pt}{\figuretext}
+% \end{Example}
+%
+% \begin{Example}
+% \begin{quote}
+% |width=.75\textwidth|
+% \end{quote}
+% \captionsetup{aboveskip=0pt}
+% \example{width=.75\textwidth}{\figuretext}
+% \end{Example}
+%
+% \DescribeMacro{parskip=}
+% This option is useful for captions containing more than one paragraph.
+% It specifies the extra vertical space inserted between them:
+% \begin{quote}
+% |parskip=|\meta{amount}
+% \end{quote}
+% One example:
+% \begin{Example}
+% \begin{quote}
+% |margin=10pt,parskip=5pt|
+% \end{quote}
+% \captionsetup{aboveskip=0pt}
+% \example{margin=10pt,parskip=5pt}{
+% First paragraph of the caption. This one contains some test, just to
+% show how these options affect the layout of the caption.
+%
+% Second paragraph of the caption. This one contains some text, too, to
+% show how these options affect the layout of the caption.}
+% \end{Example}
+%
+% \DescribeMacro{hangindent=}
+% The option
+% \begin{quote}
+% |hangindent=|\meta{amount}
+% \end{quote}
+% is for setting up a hanging indention starting from the second line of each
+% paragraph. If the caption contains just a single paragraph, using this option
+% leads to the same result as the option |indention=| you already know about.
+% But if the caption contains multiple paragraphs you will notice the difference:
+%
+% \begin{Example}
+% \begin{quote}
+% |format=hang,indention=-.5cm|
+% \end{quote}
+% \captionsetup{aboveskip=0pt}
+% \example{format=hang,indention=-.5cm}{
+% First paragraph of the caption. This one contains some test, just to
+% show how these options affect the layout of the caption.
+%
+% Second paragraph of the caption. This one contains some text, too, to
+% show how these options affect the layout of the caption.}
+% \end{Example}
+%
+% \begin{Example}
+% \begin{quote}
+% |format=hang,hangindent=-.5cm|
+% \end{quote}
+% \captionsetup{aboveskip=0pt}
+% \example{format=hang,hangindent=-.5cm}{
+% First paragraph of the caption. This one contains some test, just to
+% show how these options affect the layout of the caption.
+%
+% Second paragraph of the caption. This one contains some text, too, to
+% show how these options affect the layout of the caption.}
+% \end{Example}
+%
+% \iffalse
+% --------------------------------------------------------------------------- %
+% \fi
+%
+% \subsection{Styles}
+% \label{style}
+%
+% \DescribeMacro{style=}
+% A suitable combination of caption options is called \emph{caption style}.
+% You can compare them more or less to page styles which you set up with
+% |\pagestyle|: The caption style provides all settings for a whole caption layout.
+%
+% You switch to an already defined caption style with the option
+% \begin{quote}
+% |style=|\meta{style name}\quad.
+% \end{quote}
+% The \thispackage\ package usually defines only the style |default| which
+% puts all options you already know about to the default ones.
+% This means that specifying the option
+% \begin{quote}
+% |style=default|
+% \end{quote}
+% has the same effect as specifying all these options:
+% \begin{quote}
+% |format=default,labelformat=default,labelsep=default,|\\
+% |justification=default,font=default,labelfont=default,|\\
+% |textfont=default,margin=0pt,indention=0pt,parindent=0pt|\\
+% |hangindent=0pt,singlelinecheck=true|
+% \end{quote}
+%
+% Own caption styles can be defined using |\DeclareCaptionStyle|.
+% \SeeUserDefined
+%
+% \iffalse
+% --------------------------------------------------------------------------- %
+% \fi
+%
+% \subsection{Skips}
+%
+% \DescribeMacro{aboveskip=}
+% \DescribeMacro{belowskip=}
+% The spaces above and below the caption are controlled by the skips
+% |\abovecaptionskip| and |\belowcaptionskip|. The standard \LaTeX\ document
+% classes |article|, |report| and |book| set |\abovecaptionskip| to |10pt|
+% and |\belowcaptionskip| to |0pt|.
+%
+% \pagebreak[3]
+% Both skips can be changed with the command |\setlength|, but you can
+% use these options, too:
+% \nopagebreak[3]
+% \begin{quote}\begin{tabular}{@{}r@{}ll}
+% |aboveskip=| & \meta{amount} & and\\
+% |belowskip=| & \meta{amount} & .\\
+% \end{tabular}\end{quote}
+%
+% \DescribeMacro{position=}
+% Using |\abovecaptionskip| and |\belowcaptionskip| has a major design flaw:
+% If the caption is typeset \emph{above} (and not \emph{below}) the figure
+% or table they are not set up very useful at default, because there will be
+% some extra space above the caption but no space between the caption and the
+% figure or table itself. (Remember: |\belowcaptionskip| is usually set to |0pt|.)
+%
+% Please compare the spacing in these small tables:
+% \begin{Example}
+% \begin{minipage}[c]{.5\linewidth}
+% \iffalse
+% \captionsetup{aboveskip=0pt}%
+% \fi
+% \captionof{table}{A table}
+% \centering\begin{tabular}{ll}
+% A & B \\
+% C & D \\
+% \end{tabular}
+% \end{minipage}
+% \begin{minipage}[c]{.5\linewidth}
+% \centering\begin{tabular}{ll}
+% A & B \\
+% C & D \\
+% \end{tabular}
+% \captionof{table}{A table}
+% \end{minipage}
+% \end{Example}
+%
+% But you can fix this by using the option |position=|: It specifies how the
+% spacing above and below the caption will be used:
+% \begin{quote}
+% |position=top|\quad(or |position=above|)
+% \end{quote}
+% tells the \thispackage\ package to use the spacing useful for caption
+% \emph{above} the figure or table and
+% \begin{quote}
+% |position=bottom|\quad(or |position=below|)
+% \end{quote}
+% tells the \thispackage\ package to use the spacing useful for captions
+% \emph{below} the figure or table. (The last one is the default setting
+% except for |longtable|s.)
+%
+% So adding an extra |\captionsetup{position=top}| to the left example
+% table gives you proper spacing around both captions:
+% \begin{Example}
+% \begin{minipage}[c]{.5\linewidth}
+% \captionsetup{position=top}
+% \captionof{table}{A table}
+% \centering\begin{tabular}{ll}
+% A & B \\
+% C & D \\
+% \end{tabular}
+% \end{minipage}
+% \begin{minipage}[c]{.5\linewidth}
+% \centering\begin{tabular}{ll}
+% A & B \\
+% C & D \\
+% \end{tabular}
+% \captionof{table}{A table}
+% \end{minipage}
+% \end{Example}
+%
+% (Technically speaking |\abovecaptionskip| and |\belowcaptionskip| will
+% be swapped if you specify the option |position=top|, so in both cases
+% |\abovecaptionskip| will be used between the caption and the figure or
+% table itself.)
+%
+% This option is especially useful when used together with the optional
+% argument of the |\captionsetup| command.
+% \See{\Section{misc}{Useful stuff} for details}\par
+% For example
+% \begin{quote}
+% |\captionsetup[table]{position=top}|
+% \end{quote}
+% causes all captions within tables to be treated as captions \emph{above}
+% the table (regarding spacing around it).
+% \DescribeMacro{tableposition=}
+% \NEWfeature{v3.0a}
+% Because this is a very common setting the \thispackage\ package offers
+% an abbreviating option for the use with |\usepackage|:
+% \begin{quote}
+% |\usepackage[|\ldots|,tableposition=top]{caption}|\footnote{Please
+% note that this is \emph{not} sufficient when using a
+% \KOMAScript\ document class, you need to use the \emph{global}
+% option |tablecaptionabove|, too.}
+% \end{quote}
+% is equivalent to
+% \begin{quote}
+% |\usepackage[|\ldots|]{caption}|\\
+% |\captionsetup[table]{position=top}|
+% \end{quote}
+%
+% \iffalse
+% --------------------------------------------------------------------------- %
+% \fi
+%
+% \pagebreak[3]
+% \section{Useful stuff}
+% \label{misc}
+%
+% \DescribeMacro{\caption}
+% The command
+% \nopagebreak[3]
+% \begin{quote}
+% |\caption|\oarg{lst\_entry}\marg{heading}
+% \end{quote}
+% \nopagebreak[3]
+% typesets the caption inside a floating environment like |figure| or |table|.
+% Well, you already know this, but the \thispackage\ package offers an extension:
+% If you leave the argument \meta{lst\_entry} empty, no entry in the list of
+% figures or tables will be made. For example:
+% \begin{quote}
+% |\caption[]{A figure without entry in the list of figures.}|
+% \end{quote}
+%
+% \DescribeMacro{\caption*}
+% The \package{longtable} package defines the command |\caption*| which
+% typesets the caption without label and without entry in the list of tables.
+% An example:
+% \begin{quote}
+% |\begin{longtable}{cc}|\\
+% | \caption*{A table}\\|\\
+% | A & B \\|\\
+% | C & D \\|\\
+% |\end{longtable}|
+% \end{quote}
+% looks like
+% \begin{longtable}{cc}
+% \caption*{A table}\\
+% A & B \\
+% C & D \\
+% \end{longtable}
+%
+% This package offers this feature, too, so you can use this command now within
+% every floating environment like |figure| or |table|, like:
+% \begin{quote}
+% |\begin{table}|\\
+% | \caption*{A table}|\\
+% | \begin{tabular}{cc}|\\
+% | A & B \\|\\
+% | C & D \\|\\
+% | \end{tabular}|\\
+% |\end{table}|
+% \end{quote}
+%
+% \DescribeMacro{\captionof}
+% \DescribeMacro{\captionof*}
+% Sometimes you want to typeset a caption \emph{outside} a floating environment,
+% putting a figure within a |minipage| for instance. For this purpose the
+% \thispackage\ package offers the command
+% \begin{quote}
+% |\captionof|\marg{float type}\oarg{lst\_entry}\marg{heading}\quad.
+% \end{quote}
+% Note that the first argument, the \meta{float type}, is mandatory here, because
+% the |\captionof| command needs to know which name to put into the caption label
+% (e.g. ``Figure'' or ``Table'') and in which list to put the contents entry.
+% An example:
+% \begin{quote}
+% |\captionof{figure}{A figure}|\\
+% |\captionof{table}{A table}|
+% \end{quote}
+% typesets captions like this:
+% \begin{Example}
+% \captionof{figure}{A figure}
+% \captionsetup{belowskip=\abovecaptionskip}
+% \captionof{table}{A table}
+% \end{Example}
+%
+% The star variant |\captionof*| has the same behaviour as the |\caption*| command:
+% it typesets the caption without label and without entry to the list of figures
+% or tables.
+%
+% Please use both |\captionof| and |\captionof*| only \emph{inside} environments
+% (like |minipage| or |\parbox|), otherwise a page break can appear between content
+% and caption. Furthermore some strange effects could occur (e.g., wrong spacing
+% around captions).
+%
+% \DescribeMacro{\ContinuedFloat}
+% Sometimes you want to split figures or tables without giving them
+% their own reference number. This is what the command
+% \begin{quote}
+% |\ContinuedFloat|
+% \end{quote}
+% is for; it should be used as first command inside the floating environment.
+% It prevents the increment of the relevant counter (usually done by |\caption|)
+% so a figure or table with a |\ContinuedFloat| in it gets the same reference
+% number as the figure or table before.
+%
+% An example:
+% \begin{quote}
+% |\begin{table}|\\
+% |\caption{A table}|\\
+% \ldots\\
+% |\end{table}|\\
+% \ldots\\
+% |\begin{table}\ContinuedFloat|\\
+% |\caption{A table (cont.)}|\\
+% \ldots\\
+% |\end{table}|
+% \end{quote}
+% gives the following result:
+% \begin{Example}
+% \makeatletter\def\@captype{table}\makeatother
+% \caption[]{A table}
+% \centerline{\ldots}
+% \ContinuedFloat
+% \captionsetup{aboveskip=0pt}
+% \caption[]{A table (cont.)}
+% \end{Example}
+%
+% \DescribeMacro{\captionsetup}
+% We already know the |\captionsetup| command (see \Section{usage}
+% {Using the package}), but this time we get enlighten about
+% its optional argument \meta{float type}.
+%
+% Remember, the syntax of this command is
+% \begin{quote}
+% |\captionsetup|\oarg{float type}\marg{options}\quad.
+% \end{quote}
+%
+% If a \meta{float type} gets specified, all the \meta{options} don't
+% change anything at this time. Instead they only get marked for a later use,
+% when a caption inside of a floating environment of the particular type
+% \meta{float type} gets typeset.
+% For example
+% \begin{quote}
+% |\captionsetup[figure]|\marg{options}
+% \end{quote}
+% forces captions within a |figure| environment to use the given \meta{options}.
+%
+% Here comes an example to illustrate this:
+% \begin{quote}
+% |\captionsetup{font=small}|\\
+% |\captionsetup[figure]{labelfont=bf}|
+% \end{quote}
+% gives captions like this:
+% \begin{Example}
+% \captionsetup{font=small}
+% \captionsetup[figure]{labelfont=bf}
+% \captionof{figure}[]{A figure}
+% \captionsetup{belowskip=\abovecaptionskip}
+% \captionof{table}[]{A table}
+% \end{Example}
+%
+% As you see the command |\captionsetup[figure]{labelfont=bf}| only changed
+% the font of the figure caption labels, not touching all other ones.
+%
+% \DescribeMacro{\clearcaptionsetup}
+% If you want to get rid of these parameters marked for an automatic use within
+% a particular environment you can use the command
+% \begin{quote}
+% |\clearcaptionsetup|\marg{float type}\quad.
+% \end{quote}
+%
+% For example |\clearcaptionsetup{figure}| would clear the extra handling in the
+% example above:
+% \begin{Example}
+% \captionsetup{font=small}
+% \captionof{figure}[]{A figure}
+% \captionsetup{belowskip=\abovecaptionskip}
+% \captionof{table}[]{A table}
+% \end{Example}
+%
+% As \meta{float type} you can usually give one of these two only:
+% |figure| or |table|.
+% But as we will see later some \LaTeX\ packages (like the
+% \package{float}, \package{longtable}, and \package{sidecap} package
+% for example) offer additional floating environments and these two
+% commands can also be used with them.
+%
+% \iffalse
+% --------------------------------------------------------------------------- %
+% \fi
+%
+% \pagebreak[3]
+% \section{Do it yourself!}
+% \label{declare}
+%
+% A family of commands is provided to allow users to define their own formats.
+% This enables information on separators, justification, fonts, and styles to
+% be associated with a name and kept in one place
+% (these commands need to appear in the document preamble,
+% this is the part between |\documentclass| and |\begin{document}|).
+%
+% \pagebreak[2]
+% \DescribeMacro{\DeclareCaptionFormat}
+% You can define your own caption formats using the command
+% \begin{quote}
+% |\DeclareCaptionFormat|\marg{name}\marg{code using \#1, \#2 and \#3}\quad.
+% \end{quote}
+% At usage the system replaces \#1 with the caption label, \#2 with the
+% separator and \#3 with the text. So the standard format |plain| is
+% pre-defined by the \thispackage\ package as
+% \begin{quote}
+% |\DeclareCaptionFormat{plain}{#1#2#3\par}|
+% \end{quote}
+%
+% \DescribeMacro{\DeclareCaptionLabelFormat}
+% Likewise you can define your own caption label formats:
+% \begin{quote}
+% |\DeclareCaptionLabelFormat|\marg{name}\marg{code using \#1 and \#2}
+% \end{quote}
+% At usage \#1 gets replaced with the name (e.g. ``figure'') and \#2
+% gets replaced with the reference number (e.g. ``12'').
+%
+% \DescribeMacro{\bothIfFirst}
+% \DescribeMacro{\bothIfSecond}
+% If you define your own caption label formats and use the \package{subfig}
+% package\cite{subfig}, you should take care of empty caption label names.
+% For this purpose the commands
+% \begin{quote}
+% |\bothIfFirst|\marg{first arg}\marg{second arg}\quad and\\
+% |\bothIfSecond|\marg{first arg}\marg{second arg}
+% \end{quote}
+% are offered. |\bothIfFirst| tests if the first argument exists (means: is
+% not empty), |\bothIfSecond| tests if the second argument exists. If yes,
+% both arguments get typeset, otherwise none of them.
+%
+% For example the standard label format |simple| is \emph{not} defined as
+% \begin{quote}
+% |\DeclareCaptionLabelFormat{simple}{#1 #2}|\quad,
+% \end{quote}
+% because this could cause an extra space if \#1 is empty. Instead |simple|
+% is defined as
+% \begin{quote}
+% |\DeclareCaptionLabelFormat{simple}{\bothIfFirst{#1}{ }#2}|\quad,
+% \end{quote}
+% causing the space to appear only if the label name is present.
+%
+% \pagebreak[3]
+% \DescribeMacro{\DeclareCaptionLabelSeparator}
+% You can define your own caption label separators with
+% \nopagebreak[3]
+% \begin{quote}
+% |\DeclareCaptionLabelSeparator|\marg{name}\marg{code}\quad.
+% \end{quote}
+% \nopagebreak[3]
+% Again an easy example taken from the \thispackage\ package itself:
+% \nopagebreak[3]
+% \begin{quote}
+% |\DeclareCaptionLabelSeparator{colon}{: }|
+% \end{quote}
+% \pagebreak[3]
+%
+% \DescribeMacro{\DeclareCaptionJustification}
+% You can define your own caption justifications with
+% \begin{quote}
+% |\DeclareCaptionJustification|\marg{name}\marg{code}\quad.
+% \end{quote}
+% The \meta{code} simply gets typeset just before the caption.
+% E.g.~using the justification |raggedright|, which is defined as
+% \begin{quote}
+% |\DeclareCaptionJustification{raggedright}{\raggedright}|\quad,
+% \end{quote}
+% lets captions with all lines moved to the left margin.
+%
+% \DescribeMacro{\DeclareCaptionFont}
+% You can define your own caption fonts with
+% \begin{quote}
+% |\DeclareCaptionFont|\marg{name}\marg{code}\quad.
+% \end{quote}
+% For example this package defines the options |small| and |bf| as
+% \begin{quote}
+% |\DeclareCaptionFont{small}{\small}|\quad and\\
+% |\DeclareCaptionFont{bf}{\bfseries}|\quad.
+% \end{quote}
+% The line spacing could be customized using the \package{setspace} package,
+% for example:\NEWdescription{v3.0h}
+% \begin{quote}
+% |\usepackage{setspace}|\\
+% \iffalse
+% |\DeclareCaptionFont{singlespacing}{\setstretch{1}}|\quad\footnote{%
+% \emph{Note:} Using \cs{singlespacing} does not work here since it contains
+% a \cs{vskip} command.}\\
+% |\DeclareCaptionFont{onehalfspacing}{\onehalfspacing}|\\
+% |\DeclareCaptionFont{doublespacing}{\doublespacing}|\\
+% \fi
+% |\captionsetup{font={onehalfspacing,small},labelfont=bf}|
+% \end{quote}
+% \example{font={onehalfspacing,small},labelfont=bf,singlelinecheck=off}\figuretext
+% An example which brings color into life:
+% \begin{quote}
+% |\usepackage{color}|\\
+% |\DeclareCaptionFont{red}{\color{red}}|\\
+% |\DeclareCaptionFont{green}{\color{green}}|\\
+% |\DeclareCaptionFont{blue}{\color{blue}}|\\
+% |\captionsetup{labelfont=blue,textfont=green}|
+% \end{quote}
+% \example{labelfont=blue,textfont=green,singlelinecheck=off}\figuretext
+%
+% \DescribeMacro{\DeclareCaptionStyle}
+% You can define your own caption styles with
+% \begin{quote}
+% |\DeclareCaptionStyle|\marg{name}\oarg{additional options}\marg{options}
+% \end{quote}
+% Remember, caption styles are just a collection of suitable options, saved
+% under a given name. You can wake up these options at any time with the
+% option |style=|\meta{style name}.
+%
+% All caption styles are based on the default set of options. (See \Section
+% {style}{Styles} for a complete list.) So you only need
+% to specify options which are different to them.
+%
+% If you specify \meta{additional options} they get used in addition when
+% the caption fits into a single line and this check was not disabled with
+% the option |singlelinecheck=off|.
+%
+% Again a very easy example taken from the core of this package: The
+% caption style |default| is pre-defined as
+% \begin{quote}
+% |\DeclareCaptionStyle{default}[justification=centering]{}|\quad.
+% \end{quote}
+%
+% \iffalse
+% --------------------------------------------------------------------------- %
+% \fi
+%
+% \subsection{Further Examples}
+%
+% If you would like to have a colon \emph{and} a line break as caption
+% separator you could define it this way:
+% \begin{quote}
+% |\DeclareCaptionLabelSeparator{period-newline}{. \\}|
+% \end{quote}
+% Selecting this separator with |\captionsetup{labelsep=period-newline}| you
+% get captions like this:
+% \begin{Example}
+% \captionsetup{labelsep=period-newline,labelfont=bf,margin=10pt}
+% \captionsetup{aboveskip=0pt,type=figure}
+% \caption[]{\figuretext}
+% \end{Example}
+%
+% For short captions---which fit into one single line---this separator
+% may not be satisfying, even when the automatically centering process
+% is switched off (with |singlelinecheck=off|):
+% \begin{Example}
+% \captionsetup{labelsep=period-newline,labelfont=bf,margin=10pt,singlelinecheck=0}
+% \captionsetup{aboveskip=0pt,type=figure}
+% \caption[]{A figure.}
+% \end{Example}
+%
+% An own caption style which selects another caption separator automatically
+% puts this right:
+% \begin{quote}
+% |\DeclareCaptionStyle{period-newline}%|\\
+% | [labelsep=period]{labelsep=period-newline}|
+% \end{quote}
+% \begin{Example}
+% \captionsetup{style=period-newline,labelfont=bf,margin=10pt}
+% \captionsetup{aboveskip=0pt,type=figure}
+% \ContinuedFloat
+% \caption[]{A figure.}
+% \end{Example}
+% If you would like to keep the centering of these captions instead, an
+% appropriate definition would be something like
+% \begin{quote}
+% |\DeclareCaptionStyle{period-newline}%|\\
+% | [labelsep=period,justification=centering]%|\\
+% | {labelsep=period-newline}|\quad.
+% \end{quote}
+% Using this definition short captions look like
+% \begin{Example}
+% \captionsetup{style=period-newline2,labelfont=bf,margin=10pt}
+% \captionsetup{aboveskip=0pt,type=figure}
+% \ContinuedFloat
+% \caption[]{A figure.}
+% \end{Example}
+% while long ones still have a line break after the caption label.
+%
+% Slightly changed, you also get centered captions if they are longer than
+% one line:
+% \begin{quote}
+% |\DeclareCaptionStyle{period-newline}%|\\
+% | [labelsep=period]%|\\
+% | {labelsep=period-newline,justification=centering}|
+% \end{quote}
+% \begin{Example}
+% \captionsetup{style=period-newline3,labelfont=bf,margin=10pt}
+% \captionsetup{aboveskip=0pt,type=figure}
+% \caption[]{\figuretext}
+% \end{Example}
+%
+% \bigskip\pagebreak[3]
+% Another example: You want captions to look like this:
+% \begin{Example}
+% \captionsetup{format=reverse,labelformat=fullparens,labelsep=fill,font=small,labelfont=it}
+% \captionsetup{aboveskip=0pt}
+% \captionof{figure}[]{\figuretext}
+% \end{Example}
+% \pagebreak[2]
+% You could do it this way:
+% \nopagebreak[3]
+% {\leftmargini=10pt
+% \begin{quote}
+% |\DeclareCaptionFormat{reverse}{#3#2#1}|\\
+% |\DeclareCaptionLabelFormat{fullparens}{(\bothIfFirst{#1}{ }#2)}|\\
+% |\DeclareCaptionLabelSeparator{fill}{\hfill}|\\
+% |\captionsetup{format=reverse,labelformat=fullparens,|\\
+% | labelsep=fill,font=small,labelfont=it}|
+% \end{quote}}
+%
+% \bigskip\pagebreak[3]
+% Another example: The caption text should go into the left margin; a possible
+% solution would be:
+% {\leftmargini=10pt
+% \begin{quote}
+% |\DeclareCaptionFormat{llap}{\llap{#1#2}#3\par}|\\
+% |\captionsetup{format=llap,labelsep=quad,singlelinecheck=no}|
+% \end{quote}}
+% As a result you would get captions like this:
+% \begin{Example}
+% \captionsetup{format=llap,singlelinecheck=no,labelsep=quad}
+% \captionsetup{aboveskip=0pt}
+% \captionof{figure}[]{\figuretext}
+% \end{Example}
+%
+% \iffalse
+% --------------------------------------------------------------------------- %
+% \fi
+%
+% \pagebreak[3]
+% \section{Using non-standard document classes}
+%
+% \NEWdescription{v3.0p}
+% The \thispackage\ package was developed using the standard document classes
+% |article|, |report| and |book|, it also works with the Dutch document classes
+% |artikel|, |rapport| and |boek|. It is \emph{incompatible} with all other
+% document classes, except the ones based on one of the above.
+%
+% If you are unsure if your document class is supported or not, it's better
+% \emph{not} to use this package. You could try if your document will compile
+% fine with the \thispackage\ package anyway, but you should watch carefully
+% if side-effects occur, i.e. the look and feel of your captions should
+% \emph{not} change if you just include the caption package without options.
+% (If it does, you can carry on, but you should be warned that the output
+% could change with upcoming versions of the \thispackage\ package.)
+% If this is fine, you can start setting options with
+% |\usepackage[|\ldots|]{caption}| or |\captionsetup| and keep your fingers
+% crossed.
+%
+% The upcoming version \version{3.1} of the \thispackage\ package will be
+% adapted to several document classes, e.g. the \package{beamer} class and
+% the \KOMAScript\ ones. It's planned for release during Summer 2007.
+%
+% \iffalse
+% --------------------------------------------------------------------------- %
+% \fi
+%
+% \section{Compatibility to other packages}
+% \label{packages}
+%
+% The \thispackage\ package contains special adaptations to other packages,
+% so the captions should always look like you have specified them to look like.
+%
+% These are the packages the \thispackage\ package is adapted to:
+%
+% \begin{tabular}{ll}
+% |float| & Gives you the possibility to define new floating environments\\
+% |listings| & Typesets source code listings\\
+% |longtable| & Typesets tables spanned over multiple pages\\
+% |rotating| & Supports rotated figures and tables\\
+% |sidecap| & Offers captions \emph{beside} figures or tables\\
+% |supertabular| & Typesets tables spanned over multiple pages\\
+% \end{tabular}
+%
+% \NEWfeature{v3.0b}
+% If you use one of the above packages together with the {\thispackage} package
+% you get the additional possibility to set up captions with
+% \begin{quote}|\captionsetup|\oarg{environment}\marg{options}\quad,\end{quote}
+% where \meta{environment} stands for any environment the above packages offer.
+% (Please note that this do not work with the |sideways| environments offered by
+% the \package{rotating} package.)
+% For example
+% \begin{quote}|\captionsetup[lstlisting]{labelfont=bf}|\end{quote}
+% forces captions inside the |lstlisting| environment to have bold labels.
+%
+% If a certain support is not desired you can switch it off using the
+% \thispackage\ package option
+% \begin{quote}
+% |\usepackage[|\ldots|,|\meta{package}|=no]{caption}|\quad.
+% \end{quote}
+% For example specifying the option |float=no| means you don't like the
+% \thispackage\ package to support the \package{float} package.
+% (Note: You can specify these options only within the |\usepackage| command,
+% especially \emph{not} at a later time with |\captionsetup|.)
+%
+% For further information about the packages mentioned above please take a look
+% at the documentation belonging to them or buy yourself
+% The \LaTeX\ Companion\cite{companion}.
+%
+% \iffalse
+% --------------------------------------------------------------------------- %
+% \fi
+%
+% \subsection{The \package{float} package}
+% \label{float}
+%
+% A very useful feature is provided by the \package{float} package\cite{float}:
+% It offers the float placement specifier |H| which is much more restrictive
+% than the specifier |h| offered by \LaTeX. While the latter one is only a
+% recommendation to \LaTeX\ to set the float ``here'', the |H| forces the
+% float to appear exactly at the spot where it occurs in your input file
+% and nowhere else.
+%
+% Furthermore it offers different styles for floating environments, these
+% styles are |plain|, |plaintop|, |ruled|, and |boxed|.
+% You can link one of these styles to either new floating environments or
+% to one of the existing environments |figure| and |table|.
+%
+% If you are using the \thispackage\ package together with the \package{float}
+% package a caption style called |ruled| gets defined automatically:
+% \begin{quote}
+% |\DeclareCaptionStyle{ruled}{labelfont=bf,labelsep=space}|
+% \end{quote}
+% This style represents the caption layout in |ruled| styled floats.
+% For you as an end user this means that captions within |ruled| floats will
+% always look like this, nevertheless what generic caption options do you
+% specify:
+%
+% \ifx\floatstyle\undefined
+%
+% \begin{Example}
+% \hrule height.8pt depth0pt \kern2pt
+% \vbox{\strut{\bfseries Program 7.1}
+% The first program. This hasn't got anything to do with the package
+% but is included as an example. Note the \texttt{ruled} float style.}
+% \kern2pt\hrule\kern2pt
+% \begin{verbatim}
+% #include <stdio.h>
+%
+% int main(int argc, char **argv)
+% {
+% for (int i = 0; i < argc; ++i)
+% printf("argv[%d] = %s\n", i, argv[i]);
+% return 0;
+% }
+% \end{verbatim}
+% \kern2pt\hrule\relax
+% \end{Example}
+%
+% \else
+%
+% \floatstyle{ruled}
+% \newfloat{Program}{tbp}{lop}[section]
+% \floatname{Program}{Program}
+%
+% \begin{Program}[H]
+% \begin{verbatim}
+% #include <stdio.h>
+%
+% int main(int argc, char **argv)
+% {
+% for (int i = 0; i < argc; ++i)
+% printf("argv[%d] = %s\n", i, argv[i]);
+% return 0;
+% }
+% \end{verbatim}
+% \caption{The first program. This hasn't got anything to do with the package
+% but is included as an example. Note the \texttt{ruled} float style.}
+% \end{Program}
+%
+% \fi
+%
+% If you want a different layout for |ruled| captions you have to define
+% your own one using the command
+% \begin{quote}
+% |\DeclareCaptionStyle{ruled}|\marg{options}\quad.
+% \end{quote}
+%
+% This mechanism also works with all other float styles. If you want a special
+% caption layout---for |plain| or |boxed| floats for example---you can simply define
+% a suitable caption style with the same name as the float style.
+%
+% \textbf{Note:} For successful cooperation you need the float package
+% version 1.3 or newer.
+%
+% \iffalse
+% --------------------------------------------------------------------------- %
+% \fi
+%
+% \subsection{The \package{listings} package}
+% \label{listings}
+%
+% \NEWdescription{v3.0b}
+% The \package{listings} package\cite{listings} is a source code printer for \LaTeX.
+% You can typeset stand alone files as well as listings with an environment
+% similar to \texttt{verbatim} as well as you can print code snippets using
+% a command similar to |\verb|.
+% Many parameters control the output and if your preferred programming
+% language isn't already supported, you can make your own definition.
+%
+% \textbf{Note:} For successful cooperation you need the listings package
+% version 1.2 or higher. You'll get an error message when using an
+% older version!
+%
+% \iffalse
+% --------------------------------------------------------------------------- %
+% \fi
+%
+% \subsection{The \package{longtable} package}
+% \label{longtable}
+%
+% The \package{longtable} package\cite{longtable} offers the environment
+% |longtable| which behaves similar to the |tabular| environment, but
+% the table itself can span multiple pages.
+%
+% \textbf{Note:} For successful cooperation you need the longtable package
+% version 3.15 or newer.
+%
+% \iffalse
+% --------------------------------------------------------------------------- %
+% \fi
+%
+% \subsection{The \package{rotating} package}
+% \label{rotating}
+%
+% The \package{rotating} package\cite{rotating} offers the floating
+% environments \texttt{sideways\-figure} and \texttt{sideways\-table}
+% which are just like normal figures and tables but rotated by 90 degree.
+% Furthermore they always use a full page on their own.
+%
+% \iffalse
+% --------------------------------------------------------------------------- %
+% \fi
+%
+% \subsection{The \package{sidecap} package}
+% \label{sidecap}
+%
+% \NEWdescription{v3.0b}
+% The \package{sidecap} package\cite{sidecap} offers the floating
+% environments |SCfigure| and |SCtable| which are like normal figures
+% and tables but the caption will be put \emph{beside} the contents.
+%
+% The \package{sidecap} package offers it's own options for justification.
+% If set, they will override the one specified with the caption option
+% |justification=| for captions beside their contents.
+%
+% \DescribeMacro{listof=}
+% Using the \package{sidecap} package you will probably notice that
+% suppressing the entry in the list of figures or tables with
+% |\caption[]{|\ldots|}| won't work inside these environments.
+% This is caused by the implementation design of the \package{sidecap}
+% package, but you can use |\captionsetup{listof=false}| inside the
+% figure or table as an alternative here.
+%
+% \ifx\SCfigure\undefined
+%
+% \begin{Example}
+% \newsavebox\scbox
+% \begin{lrbox}{\scbox}
+% \setlength{\unitlength}{.75cm}
+% \setlength{\fboxsep}{0pt}
+% \fbox{\begin{picture}(4,4)
+% \put(1,3){\circle{1}}
+% \put(3,3){\circle{1}}
+% \put(2,2){\circle{1}}
+% \put(1,1){\circle{1}}
+% \put(3,1){\circle{1}}
+% \end{picture}}
+% \end{lrbox}
+% \newlength\scboxwidth
+% \setlength\scboxwidth{\wd\scbox}
+% \makebox[\linewidth][c]{
+% \parbox[b]{\scboxwidth}{\unhbox\scbox}
+% \hspace\marginparsep
+% \parbox[b]{1.5\scboxwidth}{
+% \captionsetup{justification=raggedright,labelfont=bf}
+% \captionof{figure}[]{A small example with the caption beside the figure.}
+% }
+% }
+% \end{Example}
+%
+% \else
+%
+% \captionsetup{labelfont=bf}
+% \begin{SCfigure}[1.5][!ht]
+% \setlength{\unitlength}{.75cm}
+% \setlength{\fboxsep}{0pt}
+% \fbox{\begin{picture}(4,4)
+% \put(1,3){\circle{1}}
+% \put(3,3){\circle{1}}
+% \put(2,2){\circle{1}}
+% \put(1,1){\circle{1}}
+% \put(3,1){\circle{1}}
+% \end{picture}}
+% \iffalse
+% \captionsetup{labelfont=bf}
+% \fi
+% \caption[]{A small example with the caption beside the figure.}
+% \end{SCfigure}
+% \captionsetup{labelfont=default}
+%
+% \fi
+%
+% \iffalse
+% --------------------------------------------------------------------------- %
+% \fi
+%
+% \subsection{The \package{supertabular} package}
+% \label{supertabular}
+%
+% The \package{supertabular} package\cite{supertabular} offers the environment
+% |supertabular| which is quite similar to the |longtable| environment provided
+% by the \package{longtable} package. Both offers the typesetting of tables
+% which can span multiple pages. For a detailed discussion about the
+% differences between these powerful packages please take a look at
+% The \LaTeX\ Companion\cite{companion}.
+%
+% \iffalse
+% --------------------------------------------------------------------------- %
+% \fi
+%
+% \subsection{Known incompatibilities}
+%
+% \NEWdescription{v3.0b}
+% Using the \thispackage\ package together with one of the following packages
+% is not recommended; usually this would cause unwanted side effects or even
+% errors:
+% \begin{quote}
+% \package{ccaption}, \package{ftcap}, \package{hvfloat}, and
+% \package{nonfloat}
+% \end{quote}
+%
+% \iffalse
+% --------------------------------------------------------------------------- %
+% \fi
+%
+% \section{Compatibility to older versions}
+% \label{compatibility}
+%
+% \subsection{The \thispackage\ package version $1.x$}
+%
+% This version of the \thispackage\ package still supports the old options
+% and commands provided by the version $1.x$ of this package. So there
+% shouldn't occur any problems compiling old documents, but please don't mix
+% old options and commands with the new ones. This isn't supported and can
+% cause ugly side effects.
+%
+% Here comes a short oversight of the obsolete options and commands and how
+% they have been replaced within this version of the \thispackage\ package:
+%
+% {\small\begin{longtable}{ll}
+% \thispackage\ \version{1.x} & \thispackage\ \version{3.x}\\
+% \hline
+% \endhead
+% |normal| & |format=plain|\\
+% |hang| & |format=hang|\\
+% |isu| & |format=hang|\\
+% |center| & |justification=centering|\\
+% |centerlast| & |justification=centerlast|\\
+% \iffalse
+% |anne| & |justification=centerlast|\\
+% \fi
+% |nooneline| & |singlelinecheck=off|\\
+% |scriptsize| & |font=scriptsize|\\
+% |footnotesize| & |font=footnotesize|\\
+% |small| & |font=small|\\
+% |normalsize| & |font=normalsize|\\
+% |large| & |font=large|\\
+% |Large| & |font=Large|\\
+% |up| & |labelfont=up|\\
+% |it| & |labelfont=it|\\
+% |sl| & |labelfont=sl|\\
+% |sc| & |labelfont=sc|\\
+% |md| & |labelfont=md|\\
+% |bf| & |labelfont=bf|\\
+% |rm| & |labelfont=rm|\\
+% |sf| & |labelfont=sf|\\
+% |tt| & |labelfont=tt|\\
+% \end{longtable}}
+%
+% Beside the options for setting up the desired font there were also
+% the commands |\captionsize| resp.~|\captionfont| and |\captionlabelfont|
+% who could be redefined with |\renewcommand| and allowed an alternate and
+% more flexible way to change the font used for captions.
+% This mechanism was replaced by the commands
+% \begin{quote}
+% |\DeclareCaptionFont{|\ldots|}{|\ldots|}|\qquad and\\
+% |\captionsetup{font=|\ldots|,labelfont=|\ldots|}|\qquad.
+% \end{quote}\SeeUserDefined
+%
+% Setting the margin for captions was done in \version{1.x} with
+% \begin{quote}
+% |\setlength{\captionmargin}{|\ldots|}|\quad.
+% \end{quote}
+% This was replaced by
+% \begin{quote}
+% |\captionsetup{margin=|\ldots|}|\qquad.
+% \end{quote}
+% \See{\Section{margins}{Margins and further paragraph options}}
+%
+% For example the old-style code
+% \begin{quote}
+% |\usepackage[hang,bf]{caption}|\\
+% |\renewcommand\captionfont{\small\sffamily}|\\
+% |\setlength\captionmargin{10pt}|
+% \end{quote}
+% will still work fine, but should be written today as
+% \begin{quote}
+% |\usepackage[format=hang,labelfont=bf,font={small,sf},|\\
+% | margin=10pt]{caption}|
+% \end{quote}
+% or
+% \begin{quote}
+% |\usepackage{caption}|\\
+% |\captionsetup{format=hang,labelfont=bf,font={small,sf},|\\
+% | margin=10pt}|\qquad.
+% \end{quote}
+%
+% The quite exotic option |ruled| which allowed a partial usage of
+% the caption settings for |ruled| floats defined with the
+% \package{float} package will be emulated by this version of the
+% caption package, too.
+% But using this option is not recommended anymore since this
+% version of the \thispackage\ package offers a more flexible way
+% for changing the captions of these floating environments:
+% \begin{quote}
+% |\DeclareCaptionStyle{ruled}{|\ldots|}|
+% \end{quote}
+% resp.
+% \begin{quote}
+% |\captionsetup[ruled]{|\ldots|}|\qquad.
+% \end{quote}
+% \SeeUserDefined[, \Section*{misc}{Useful stuff}, and
+% \Section*{float}{The \package{float} package}]
+%
+% \subsection{The \package{caption2} package version $2.x$}
+%
+% Although they do very similar stuff, the packages \package{caption} and
+% its experimental and now obsolete variant \package{caption2} have a
+% very different implementation design.
+% Therefore a full compatibility could not be offered.
+% For that reason you will still find a file called |caption2.sty| in
+% this package distribution, so old documents using the \package{caption2}
+% package will still compile fine.
+%
+% Newly created documents should use the actual version of the
+% \thispackage\ package instead. In most cases it's sufficient to replace
+% the command
+% \begin{quote}
+% |\usepackage[...]{caption2}|
+% \end{quote}
+% by
+% \begin{quote}
+% |\usepackage[...]{caption}|\qquad.
+% \end{quote}
+% But some options and commands will not be emulated, so you can get
+% error messages afterwards. This section will hopefully help you removing
+% these errors. If you have problems migrating from \package{caption2}
+% to \package{caption} please don't hesitate to send me an e-mail asking
+% for help.
+%
+% In addition to the obsolete options shown in the last section
+% these ones will be emulated, too:
+%
+% {\small\begin{longtable}{ll}
+% \package{caption2} \version{2.x} & \thispackage\ \version{3.x}\\
+% \hline
+% \endhead
+% |flushleft| & |justification=raggedright|\\
+% |flushright| & |justification=raggedleft|\\
+% |oneline| & |singlelinecheck=on|\\
+% \end{longtable}}
+%
+% Setting the margin for captions was done in \version{2.x} with
+% \begin{quote}\leavevmode\hbox{%
+% |\setcaptionmargin{|\ldots|}| resp.
+% |\setcaptionwidth{|\ldots|}|\quad.
+% }\end{quote}
+% This was replaced by
+% \begin{quote}\leavevmode\hbox{%
+% |\captionsetup{margin=|\ldots|}| resp.
+% |\captionsetup{width=|\ldots|}|\quad.
+% }\end{quote}
+% \See{\Section{margins}{Margins and further paragraph options}}
+%
+% Setting an indention was done in \version{2.x} with
+% \begin{quote}
+% |\captionstyle{indent}|\\
+% |\setlength\captionindent{|\ldots|}|\quad.
+% \end{quote}
+% This is now done with
+% \begin{quote}
+% |\captionsetup{format=plain,indention=|\ldots|}|\quad.
+% \end{quote}
+%
+% The so-called single-line-check was controlled by the commands
+% |\oneline|\-|captions|\-|false| (for switching the check off) and
+% |\oneline|\-|captions|\-|true| (for switching the check on).
+% This was replaced by
+% |\captionsetup{|\discretionary{}{}{}|singlelinecheck=|\discretionary{}{}{}|off}|
+% resp.
+% |\captionsetup{|\discretionary{}{}{}|singlelinecheck=|\discretionary{}{}{}|on}|.
+% \See{\Section{justification}{Justification}}
+%
+% The commands
+% \begin{quote}
+% |\captionlabeldelim|, |\captionlabelsep|, |\captionstyle|,\\
+% |\defcaptionstyle|, |\newcaptionstyle|, and |\renewcaptionstyle|
+% \end{quote}
+% do not have a simple replacement and therefore will not be emulated
+% by this version of the \thispackage\ package. (So using them will
+% cause error messages.) Rewriting such code is not always easy and
+% straight-ahead, but by conscientious reading of this manual you should
+% find appropriate options and commands instead.
+%
+% \iffalse
+% ... (some examples)
+% \fi
+%
+% The \version{2.x} option |ignoreLTcapwidth| do not have a replacement, too.
+% But in most cases you can simply drop using that option because
+% in this version of the \thispackage\ package the value of |\LTcapwidth|
+% will be ignored anyway (unless you set it to a different value than the
+% default one).
+% \See{\Section{longtable}{The \package{longtable} package}}
+%
+% \iffalse
+% --------------------------------------------------------------------------- %
+% \fi
+%
+% \pagebreak[4]
+% \section{Further reading}
+%
+% I recommend the following documents for further reading:
+%
+% \begin{itemize}
+% \item
+% The \TeX\ FAQ - Frequently asked questions about \TeX\ and \LaTeX :
+% \begin{quote}\url{http://faq.tug.org/}\end{quote}
+%
+% \item
+% A French FAQ can be found at
+% \begin{quote}\url{http://www.grappa.univ-lille3.fr/FAQ-LaTeX/}\end{quote}
+%
+% \item
+% \textsf{epslatex} from Keith Reckdahl contains many tips around
+% including graphics in \LaTeXe\ documents.
+% You will find this document in the directory
+% \begin{quote}\url{ftp://ftp.ctan.org/pub/tex/info/epslatex/}\end{quote}
+% \end{itemize}
+%
+% \iffalse
+% --------------------------------------------------------------------------- %
+% \fi
+%
+% \section{Thanks}
+%
+% I would like to thank Katja Melzner,
+% Steven D. Cochran, Frank Mittelbach,
+% David Carlisle, Carsten Heinz, Olga Lapko, and Keith Reckdahl.
+% Thanks a lot for all your help, ideas, patience, spirit, and support!
+%
+% Also I would like to thank
+% Harald Harders,
+% Peter L\"offler,
+% Peng Yu,
+% Alexander Zimmermann,
+% Matthias Pospiech,
+% J\"urgen Wieferink,
+% Christoph Bartoschek,
+% Uwe St\"ohr,
+% Ralf Stubner,
+% Geoff Vallis,
+% Florian Keiler,
+% J\"urgen G\"obel,
+% Uwe Siart,
+% Sang-Heon Shim,
+% Henrik Lundell,
+% David Byers,
+% William Asquith,
+% and
+% Prof.~Dr.~Dirk Hoffmann,
+% who all helped to make this package a better one.
+%
+% \iffalse
+% --------------------------------------------------------------------------- %
+% \fi
+%
+% \StopEventually{\begin{thebibliography}{9}
+% \bibitem{companion}
+% Frank Mittelbach and Michel Goossens:
+% \newblock {\em The {\LaTeX} Companion (2nd.~Ed.)},
+% \newblock Addison-Wesley, 2004.
+%
+% \bibitem{float}
+% Anselm Lingnau:
+% \emph{An Improved Environment for Floats},
+% 2001/11/08
+%
+% \bibitem{floatrow}
+% Olga Lapko:
+% \emph{The floatrow package documentation},
+% 2005/05/22
+%
+% \bibitem{hyperref}
+% Sebastian Rahtz \& Heiko Oberdiek:
+% \emph{Hypertext marks in \LaTeX},
+% 2007/01/25
+%
+% \bibitem{hypcap}
+% Heiko Oberdiek:
+% \emph{The hypcap package -- Adjusting anchors of captions}
+% 2007/02/19
+%
+% \bibitem{listings}
+% Carsten Heinz:
+% \emph{The Listings Package},
+% 2004/02/13
+%
+% \bibitem{longtable}
+% David Carlisle:
+% \emph{The longtable package},
+% 2000/10/22
+%
+% \bibitem{rotating}
+% Sebastian Rahtz and Leonor Barroca:
+% \emph{A style option for rotated objects in \LaTeX},
+% 1997/09/26
+%
+% \bibitem{sidecap}
+% Rolf Niepraschk und Hubert G\"a\ss lein:
+% \emph{The sidecap package},
+% 2003/06/06
+%
+% \bibitem{subfig}
+% Steven D. Cochran:
+% \emph{The subfig package},
+% 2005/07/05
+%
+% \bibitem{supertabular}
+% Johannes Braams und Theo Jurriens:
+% \emph{The supertabular environment},
+% 2002/07/19
+%
+% \bibitem{Anne}
+% Anne Br\"uggemann-Klein:
+% \emph{Einf\"uhrung in die Dokumentverarbeitung},
+% B.G. Teubner, Stuttgart, 1989
+% \end{thebibliography}}
+%
+% \iffalse
+% --------------------------------------------------------------------------- %
+% \fi
+%
+% \DoNotIndex{\\,\_,\ ,\@@par}
+% \DoNotIndex{\@classoptionslist,\@currext,\@currname}
+% \DoNotIndex{\@ehc,\@ehd,\@empty,\@expandtwoargs}
+% \DoNotIndex{\@for,\@firstofone,\@firstoftwo}
+% \DoNotIndex{\@gobble,\@gobblefour,\@gobbletwo,\@hangfrom}
+% \DoNotIndex{\@ifnextchar,\@ifstar,\@ifundefined,\@latex@error}
+% \DoNotIndex{\@namedef,\@nameuse}
+% \DoNotIndex{\@onlypreamble,\@parboxrestore,\@plus,\@ptionlist}
+% \DoNotIndex{\@removeelement,\@restorepar,\@secondoftwo,\@setpar}
+% \DoNotIndex{\@tempa,\@tempboxa,\@tempdima,\@tempdimb,\@tempdimc,\@tempb,\@tempc}
+% \DoNotIndex{\@undefined,\@unprocessedoptions,\@unusedoptionlist}
+% \DoNotIndex{\p@,\z@}
+% \DoNotIndex{\active,\addtocounter,\addtolength,\advance}
+% \DoNotIndex{\baselineskip,\begin,\begingroup,\bfseries,\box}
+% \DoNotIndex{\catcode,\centering,\changes,\csname,\def,\divide,\do,\downarrow}
+% \DoNotIndex{\edef,\else,\empty,\end,\endcsname,\endgraf,\endgroup,\expandafter}
+% \DoNotIndex{\fi,\footnotesize,\global}
+% \DoNotIndex{\hangindent,\hbox,\hfil,\hsize,\hskip,\hspace,\hss}
+% \DoNotIndex{\ifcase,\ifdim,\ifnum,\ifodd,\ifvoid,\ifvmode}
+% \DoNotIndex{\ifx,\ignorespaces,\itshape}
+% \DoNotIndex{\Large,\large,\leavevmode,\leftmargini,\leftskip,\let,\linewidth}
+% \DoNotIndex{\llap,\long,\m@ne,\margin,\mdseries,\message}
+% \DoNotIndex{\newcommand,\newdimen,\newlength,\newline,\newif,\newsavebox}
+% \DoNotIndex{\next,\nobreak,\nobreakspace,\noexpand,\noindent,\numberline}
+% \DoNotIndex{\normalsize,\or,\par,\parbox,\parfillskip}
+% \DoNotIndex{\parindent,\parskip,\prevdepth,\protect,\protected@edef,\providecommand}
+% \DoNotIndex{\quad}
+% \DoNotIndex{\raggedleft,\raggedright,\relax,\renewcommand,\RequirePackage}
+% \DoNotIndex{\rightskip,\rmfamily}
+% \DoNotIndex{\sbox,\scriptsize,\scshape,\setbox,\setlength,\sffamily,\slshape}
+% \DoNotIndex{\small,\string,\space,\strut}
+% \DoNotIndex{\textheight,\the,\toks@,\typeout,\ttfamily}
+% \DoNotIndex{\unvbox,\uparrow,\upshape,\usebox,\usepackage}
+% \DoNotIndex{\value,\vbox,\vsize,\vskip,\wd,\width,\z@skip}
+% \DoNotIndex{\AtBeginDocument,\AtEndOfPackage,\CurrentOption,\DeclareOption}
+% \DoNotIndex{\ExecuteOptions,\GenericWarning,\IfFileExists,\InputIfFileExists}
+% \DoNotIndex{\NeedsTeXFormat,\MessageBreak}
+% \DoNotIndex{\PackageError,\PackageInfo,\PackageWarning,\PackageWarningNoLine}
+% \DoNotIndex{\ProcessOptions,\ProvidesPackage}
+%
+% \iffalse
+% --------------------------------------------------------------------------- %
+% \fi
+%
+% \clearpage
+% \setlength{\parskip}{0pt plus 1pt}
+%
+% \section{The Implementation}
+%
+% \changes{v1.0}{1994/10/27}{First release}
+% \changes{v1.1}{1994/11/03}{New captiontype \cs{centerlast}}
+% \changes{v1.2}{1994/11/28}{Support of the \package{float} package}
+% \changes{v1.3}{1995/01/09}{Support of \cs{captionlabelfont} in subcaptions}
+% \changes{v1.4}{1995/01/30}{New option \cs{nooneline}}
+% \changes{v1.4b}{1995/04/05}{Bugfix release}
+% \changes{v3.0}{2003/12/20}{Rewritten; many new commands and features}
+% \changes{v3.0d}{2004/11/28}{Split into two packages: \package{caption} \& \package{caption3}}
+% \changes{v3.0l}{2007/01/20}{Usage of \cs{PackageError} replaced by \cs{caption@error}}
+%
+% The \package{caption} package consists of two parts -- the kernel
+% (|caption3.sty|) and the main package (|caption.sty|).
+%
+% The kernel provides all the user commands and internal macros which are
+% necessary for typesetting captions and setting parameters regarding these.
+% While the standard \LaTeX\ document classes provides an internal command
+% called |\@makecaption| and no options to control its behavior (except the
+% vertical skips above and below the caption itself), we provide similar
+% commands called |\caption@make| and |\caption@@make|, but with a lot of
+% options which can be selected with |\captionsetup|.
+% Loading the kernel part do not change the output of a \LaTeX\ document
+% -- it just provides functionality which can be used by \LaTeXe\ packages
+% which typesets captions, like the \package{caption} package or the
+% \package{subfig} package.
+%
+% The \package{caption} package itself redefines the \LaTeX\ commands
+% |\caption|, |\@caption|, and |\@makecaption| and maps the latter one to
+% |\caption@@make|, giving the user the possibility to control the captions of
+% the floating environments |figure| and |table|. Furthermore it does similar
+% to the caption stuff coming from other packages (like the \package{longtable}
+% or \package{supertabular} package):
+% Mapping the appropriate internal commands (like |\LT@makecaption| or
+% |\ST@caption|) to the ones offered by the \package{caption} kernel.
+% So you can think of the \package{caption} package as a layer package, it
+% simply provides adaptation layers between the caption stuff coming from
+% \LaTeXe\ itself or a \LaTeXe\ package and the caption stuff offered by the
+% \package{caption} kernel.
+%
+% \iffalse
+% --------------------------------------------------------------------------- %
+% \fi
+%
+% \subsection{Kernel}
+% \iffalse
+%<*kernel>
+% \fi
+%
+% \subsubsection*{Identification}
+%
+% \begin{macrocode}
+\NeedsTeXFormat{LaTeX2e}[1994/12/01]
+\ProvidesPackage{caption3}[2007/04/11 v1.0q caption3 kernel (AR)]
+% \end{macrocode}
+%
+% \subsubsection*{Generic helpers}
+%
+% \begin{macro}{\@nameundef}
+% This is the opposite to |\@namedef| which is offered by the \LaTeX\ kernel.
+% We use it to remove the definition of some commands and keyval options after
+% |\begin{document}| (to save \TeX\ memory) and to remove caption options defined
+% with |\captionsetup|\oarg{type}.
+% \begin{macrocode}
+\providecommand*\@nameundef[1]{%
+ \expandafter\let\csname #1\endcsname\@undefined}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\l@addto@macro}
+% The \LaTeXe\ kernel offers the internal helper macro |\g@addto@macro| which
+% globally adds commands to any existising macro, like in |\AtBeginDocument|.
+% This is the same but it works local, not global
+% (using \cs{edef} instead of \cs{xdef}).
+% \begin{macrocode}
+\providecommand{\l@addto@macro}[2]{%
+ \begingroup
+ \toks@\expandafter{#1#2}%
+ \edef\@tempa{\endgroup\def\noexpand#1{\the\toks@}}%
+ \@tempa}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\bothIfFirst}
+% \begin{macro}{\bothIfSecond}
+% |\bothIfFirst| tests if the first argument is not empty, |\bothIfSecond|
+% tests if the second argument is not empty. If yes both arguments get
+% typeset, otherwise none of them.
+% \begin{macrocode}
+\def\bothIfFirst#1#2{%
+ \protected@edef\caption@tempa{#1}%
+ \ifx\caption@tempa\@empty\else
+ #1#2%
+ \fi}
+% \end{macrocode}
+% \begin{macrocode}
+\def\bothIfSecond#1#2{%
+ \protected@edef\caption@tempa{#2}%
+ \ifx\caption@tempa\@empty\else
+ #1#2%
+ \fi}
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+%
+% \begin{macro}{\caption@ifinlist}
+% This helper macro checks if the first argument is in the comma separated
+% list which is offered as second argument. So for example
+% \begin{quote}
+% |\caption@ifinlist{frank}{axel,frank,steven}{yes}{no}|
+% \end{quote}
+% would expand to |yes|.
+% \begin{macrocode}
+\def\caption@ifinlist#1#2{%
+ \let\next\@secondoftwo
+ \edef\caption@tempa{#1}%
+ \@for\caption@tempb:={#2}\do{%
+ \ifx\caption@tempa\caption@tempb
+ \let\next\@firstoftwo
+ \fi}%
+ \next}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@setbool}
+% \begin{macro}{\caption@ifbool}
+% \begin{macro}{\caption@undefbool}
+% For setting and testing boolean options we offer these three helper macros:
+% \begin{quote}
+% |\caption@setbool|\marg{name}\marg{value}\\
+% | |(with |value = false/true/no/yes/off/on/0/1|)\\
+% |\caption@ifbool|\marg{name}\marg{if-clause}\marg{else-clause}\\
+% |\caption@undefbool|\marg{name}
+% \end{quote}
+% \begin{macrocode}
+\def\caption@setbool#1#2{%
+ \caption@ifinlist{#2}{1,true,yes,on}{%
+ \expandafter\let\csname caption@if#1\endcsname\@firstoftwo
+ }{\caption@ifinlist{#2}{0,false,no,off}{%
+ \expandafter\let\csname caption@if#1\endcsname\@secondoftwo
+ }{%
+ \caption@Error{Undefined boolean value `#2'}%
+ }}}
+% \end{macrocode}
+% \begin{macrocode}
+\def\caption@ifbool#1{\@nameuse{caption@if#1}}
+% \end{macrocode}
+% \begin{macrocode}
+\def\caption@undefbool#1{\@nameundef{caption@if#1}}
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+% \end{macro}
+%
+% \begin{macro}{\caption@newcounter}
+% \changes{v3.0p}{2007/04/08}{\cs{caption@XXXcounter} added}
+% \begin{macro}{\caption@setcounter}
+% \begin{macro}{\caption@addtocounter}
+% \begin{macro}{\caption@stepcounter}
+% To save counter space we use commands instead of counters.
+% \begin{macrocode}
+\def\caption@newcounter#1{\gdef#1{0}}
+\def\caption@setcounter#1#2{\xdef#1{#2}}
+\def\caption@addtocounter#1#2{%
+ \begingroup
+ \@tempcnta#1%
+ \advance\@tempcnta#2%
+ \xdef#1{\the\@tempcnta}%
+ \endgroup}
+\def\caption@stepcounter#1{\caption@addtocounter#1\@ne}
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+% \end{macro}
+% \end{macro}
+%
+% \subsubsection*{Errors}
+%
+% \begin{macro}{\caption@Error}
+% \changes{v3.0l}{2007/01/20}{This macro added}
+% \changes{v3.0q}{2007/04/11}{Renamed from \cs{caption@error} to \cs{caption@Error}}
+% This is mainly identical to |\PackageError{caption}{#1}{\caption@eh}|.
+% \begin{macrocode}
+\newcommand\caption@Package{caption}
+\newcommand*\caption@Error[1]{%
+ \PackageError\caption@Package{#1}\caption@eh}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@eh}
+% At the moment we only offer this simple error message as generic helper
+% for the user.
+% \begin{macrocode}
+\newcommand\caption@eh{%
+ If you do not understand this error, please take a closer look\MessageBreak
+ at the documentation of the `\caption@Package' package.\MessageBreak
+ \@ehc}
+% \end{macrocode}
+% \end{macro}
+%
+% \subsubsection*{Using the keyval package}
+%
+% We need the \package{keyval} package for option handling, so we load it here.
+% \begin{macrocode}
+\RequirePackage{keyval}[1997/11/10]
+% \end{macrocode}
+%
+% \begin{macro}{\undefine@key}
+% This helper macro is the opposite of |\define@key|, it removes a keyval
+% definition.
+% \begin{macrocode}
+\providecommand*\undefine@key[2]{%
+ \@nameundef{KV@#1@#2}\@nameundef{KV@#1@#2@default}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\DeclareCaptionOption}
+% |\DeclareCaptionOption|\marg{option}\marg{code}\\
+% |\DeclareCaptionOption*|\marg{option}\marg{code}\par
+% We declare our options using these commands (instead of using
+% |\DeclareOption| offered by \LaTeXe), so the keyval package is used.
+% The starred form makes the option available during the lifetime of the
+% current package only, so they can be used with |\usepackage|, but
+% \emph{not} with |\captionsetup| later on.
+% \begin{macrocode}
+\newcommand\DeclareCaptionOption{%
+ \@ifstar{\caption@declareoption\AtEndOfPackage}%
+ {\caption@declareoption\@gobble}}
+\newcommand*\caption@declareoption[2]{%
+ #1{\undefine@key{caption}{#2}}\define@key{caption}{#2}}
+\@onlypreamble\DeclareCaptionOption
+\@onlypreamble\caption@declareoption
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\captionsetup}
+% \changes{v3.0a}{2004/01/17}{Bugfix: Missing \% added}
+% |\captionsetup|\oarg{type}\marg{keyval-list of options}\par
+% If the optional argument `type' is specified, we simply save or append
+% the option list, otherwise we `execute' it with |\setkeys|.
+% \begin{macrocode}
+\newcommand\captionsetup{\@ifnextchar[\caption@setuptype\caption@setup}
+\newcommand\caption@typ@{caption@typ@} % This saves 74 words of TeX memory
+\def\caption@setuptype[#1]#2{%
+ \@ifundefined{\caption@typ@#1}%
+ {\@namedef{\caption@typ@#1}{#2}}%
+ {\expandafter\l@addto@macro\csname\caption@typ@#1\endcsname{,#2}}}
+\newcommand\caption@setup{\caption@setkeys{caption}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@setkeys}
+% \changes{v3.0i}{2006/01/03}{This macro added}
+% \changes{v3.0l}{2007/01/20}{Bugfix: Usage of \cs{caption@keydepth} added}
+% \changes{v3.0l}{2007/01/30}{Optional argument added}
+% \changes{v3.0p}{2007/04/08}{\cs{caption@keydepth} is now a command instead of a counter}
+% This one simply calls |\setkeys|\marg{package}\marg{args} but lets the
+% error messages refer to the \meta{package} package instead of the
+% \package{keyval} package.
+% \begin{macrocode}
+\newcommand*\caption@setkeys{%
+ \@dblarg\caption@@setkeys}
+% \end{macrocode}
+% \begin{macrocode}
+\long\def\caption@@setkeys[#1]#2#3{%
+ \ifnum\caption@keydepth=0\relax
+ \let\caption@KV@errx\KV@errx
+ \let\caption@KV@err\KV@err
+ \let\KV@errx\caption@Error
+ \let\KV@err\caption@Error
+ \fi
+ \caption@stepcounter\caption@keydepth
+%
+ \def\caption@Package{#1}%
+ \caption@Debug{\protect\setkeys{#2}{#3}}%
+ \setkeys{#2}{#3}%
+ \def\caption@Package{caption}%
+%
+ \caption@addtocounter\caption@keydepth\m@ne
+ \ifnum\caption@keydepth=0\relax
+ \let\KV@errx\caption@KV@errx
+ \let\KV@err\caption@KV@err
+ \fi}
+% \end{macrocode}
+% \begin{macrocode}
+\caption@newcounter\caption@keydepth
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@settype}
+% \changes{v3.0i}{2006/01/03}{Optional argument added}
+% \changes{v3.0j}{2006/01/26}{Revised}
+% \changes{v3.0l}{2007/01/30}{Optional argument removed}
+% |\caption@settype|\marg{type}\par
+% Caption options which have been saved with |\captionsetup|\oarg{type} can
+% be executed using this command.
+% (It simply executes the saved option list, if there is any.)
+% \begin{macrocode}
+\newcommand*\caption@settype[1]{%
+ \@ifundefined{\caption@typ@#1}{}{%
+ \caption@esetup{\csname\caption@typ@#1\endcsname}}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@esetup}
+% |\caption@esetup|\marg{keyval-list of options}\par
+% To execute a keyval-list of options saved within a macro we
+% need this special version of |\caption@setup| which expands the
+% argument first.
+% \begin{macrocode}
+\newcommand*\caption@esetup[1]{%
+ \edef\caption@tempa{\noexpand\caption@setup{#1}}%
+ \caption@tempa}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\clearcaptionsetup}
+% |\clearcaptionsetup|\marg{type}\par
+% This removes the saved option list associated with \meta{type}.
+% \begin{macrocode}
+\newcommand*\clearcaptionsetup[1]{\@nameundef{\caption@typ@#1}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\showcaptionsetup}
+% \changes{v3.0e}{2005/05/03}{Optimized for memory usage}
+% |\showcaptionsetup|\oarg{package}\marg{type}\par
+% This comes for debugging issues: It shows the saved option list which
+% is associated with \meta{type}.
+% \begin{macrocode}
+\newcommand*\showcaptionsetup[2][\@firstofone]{%
+ \GenericWarning{}{%
+ #1 Caption Info: KV list on `#2'\MessageBreak
+ #1 Caption Data: (%
+ \@ifundefined{\caption@typ@#2}{%
+ % empty -- print nothing
+ }{%
+ \@nameuse{\caption@typ@#2}%
+ }%
+ )}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@ProcessOptions}
+% \changes{v3.0a}{2004/01/23}{Bugfix, see \purett{news:400D360C.9678329F@gmx.net} for details}
+% \changes{v3.0i}{2006/01/03}{Improvement, uses \cs{caption@setkeys} instead of \cs{setkeys}}
+% \changes{v3.0j}{2006/02/23}{Bugfix, now processes only those global options which have a default value}
+% \changes{v3.0l}{2007/01/30}{\cs{ProcessOptionsWithKV} renamed to \cs{caption@ProcessOptions} and moved from the package to the kernel}
+% We process our options using the keyval package, so we use this one
+% instead of |\ProcessOptions| offered by \LaTeXe.
+% (This code was taken from the \package{hyperref} package and improved.)
+% \begin{macrocode}
+\newcommand*\caption@ProcessOptions[1]{%
+ \let\@tempc\relax
+% \end{macrocode}
+%
+% \begin{macrocode}
+ \let\caption@tempa\@empty
+ \@for\CurrentOption:=\@classoptionslist\do{%
+ \@ifundefined{KV@#1@\CurrentOption}{%
+ }{%
+ \@ifundefined{KV@#1@\CurrentOption @default}{%
+ \PackageInfo{#1}{Global option `\CurrentOption' ignored}%
+ }{%
+ \PackageInfo{#1}{Global option `\CurrentOption' processed}%
+ \edef\caption@tempa{\caption@tempa,\CurrentOption,}%
+ \@expandtwoargs\@removeelement\CurrentOption
+ \@unusedoptionlist\@unusedoptionlist
+ }%
+ }%
+ }%
+ \edef\caption@tempa{%
+ \noexpand\caption@setkeys{#1}{%
+ \caption@tempa\@ptionlist{\@currname.\@currext}%
+ }%
+ }%
+ \caption@tempa
+% \end{macrocode}
+%
+% \begin{macrocode}
+ \let\CurrentOption\@empty
+ \AtEndOfPackage{\let\@unprocessedoptions\relax}}
+\@onlypreamble\caption@ProcessOptions
+% \end{macrocode}
+% \end{macro}
+%
+% \subsubsection*{Margin resp. width}
+% \changes{v3.0p}{2007/04/01}{\cs{captionmarginx} renamed to \cs{captionmargin@}}
+% \changes{v3.0p}{2007/04/03}{Option `twoside' added to kernel}
+%
+% \begin{macro}{\captionmargin}
+% \begin{macro}{\captionwidth}
+% |\captionmargin| and |\captionwidth| contain the extra margin
+% resp. the total width used for captions. Please never set these values in
+% a direct way, they are just accessible in user documents to provide
+% compatibility to |caption.sty| \version{1.x}.\par
+% Note that we can only set one value at a time, `margin' \emph{or} `width'.
+% If |\captionwidth| is not zero we will take this value afterwards,
+% otherwise |\captionmargin| and |\captionmargin@|.
+% \begin{macrocode}
+\newdimen\captionmargin
+\newdimen\captionmargin@
+\newdimen\captionwidth
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+%
+% \begin{macrocode}
+\DeclareCaptionOption{margin}{\setcaptionmargin{#1}}
+\DeclareCaptionOption{width}{\setcaptionwidth{#1}}
+\DeclareCaptionOption{twoside}[1]{\caption@setbool{twoside}{#1}}
+% \end{macrocode}
+%
+% \begin{macro}{\setcaptionmargin}
+% |\setcaptionmargin|\marg{amount}
+% \changes{v3.0h}{2005/10/24}{Renamed from \cs{caption@setmargin} to \cs{setcaptionmargin}}
+% \changes{v3.0h}{2005/10/24}{\cs{setcaptionmargin} enhanced so it can take left+right margin}
+% |\setcaptionmargin|\marg{amount}\par
+% Please never use this in user documents, it's just there to
+% provide compatibility to |caption2.sty| \version{2.x}.
+% \begin{macrocode}
+\newcommand*\setcaptionmargin[1]{%
+ \captionwidth\z@
+ \caption@@setmargin#1,#1,\@nil\@@}
+\def\caption@@setmargin#1,#2,#3\@@{%
+ \setlength\captionmargin{#1}%
+ \setlength\captionmargin@{#2}%
+ \advance\captionmargin@ by -\captionmargin}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\setcaptionwidth}
+% |\setcaptionwidth|\marg{amount}
+% \changes{v3.0h}{2005/10/24}{Renamed from \cs{caption@setwidth} to \cs{setcaptionwidth}}
+% |\setcaptionwidth|\marg{amount}\par
+% Please never use this in user documents, it's just there to
+% provide compatibility to |caption2.sty| \version{2.x}.
+% \begin{macrocode}
+\newcommand\setcaptionwidth{%
+ \setlength\captionwidth}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@count}
+% \changes{v3.0p}{2007/04/03}{This counter added}
+% This counter numbers the captions. It will be used inside |\caption@ifoddpage| only.
+% \begin{macrocode}
+\caption@newcounter\caption@count
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@newlabel}
+% \changes{v3.0p}{2007/04/03}{This macro added}
+% This command is a modified version of |\newlabel| from \LaTeX2e.
+% It will be written to the \texttt{.aux} file to
+% pass label information from one run to another.
+% It will be used inside |\caption@ifoddpage| and |\caption@ragged|.
+% \begin{macrocode}
+\newcommand*\caption@newlabel{\@newl@bel{caption}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@thepage}
+% \changes{v3.0p}{2007/04/03}{This macro added}
+% This command is a modified version of |\thepage| from \LaTeX2e.
+% It will be used inside |\caption@ifoddpage| only.
+% \begin{macrocode}
+\newcommand*\caption@thepage{\the\c@page}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@ifoddpage}
+% \changes{v3.0p}{2007/04/03}{This macro added}
+% \emph{Note:} This macro re-defines itself so the \texttt{.aux} file will
+% only be used once per group.
+% \begin{macrocode}
+\def\caption@ifoddpage{%
+ \caption@iftwoside{%
+% \end{macrocode}
+% |\refstepcounter{caption@count}|
+% \begin{macrocode}
+ \caption@stepcounter\caption@count
+% \end{macrocode}
+% |\label{\the\caption@count}|
+% \begin{macrocode}
+ \protected@write\@auxout{\let\caption@thepage\relax}%
+ {\string\caption@newlabel{\caption@count}{\caption@thepage}}%
+% \end{macrocode}
+% |\edef\caption@thepage{\pageref{\the\caption@count}}|
+% \begin{macrocode}
+ \expandafter\ifx\csname caption@\caption@count\endcsname\relax
+ \G@refundefinedtrue % => 'There are undefined references.'
+ \PackageWarning{caption3}{Reference on page \thepage \space undefined}%
+ \else
+ \expandafter\let\expandafter\caption@thepage
+ \csname caption@\caption@count\endcsname
+ \fi
+% \end{macrocode}
+% |\ifodd\caption@thepage|\ldots
+% \begin{macrocode}
+ \ifodd\caption@thepage
+ \let\caption@ifoddpage\@firstoftwo
+ \else
+ \let\caption@ifoddpage\@secondoftwo
+ \fi
+ }{\let\caption@ifoddpage\@firstoftwo}%
+% \end{macrocode}
+% \begin{macrocode}
+ \caption@ifoddpage}
+% \end{macrocode}
+% \end{macro}
+%
+% \subsubsection*{Indentions}
+%
+% \begin{macro}{\captionindent}
+% \begin{macro}{\captionparindent}
+% \begin{macro}{\captionhangindent}
+% These are the indentions we support.
+% \begin{macrocode}
+\newdimen\captionindent
+\newdimen\captionparindent
+\newdimen\captionhangindent
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+% \end{macro}
+%
+% \changes{v3.0b}{2004/05/16}{Defaults added for options \opt{parindent=} and \opt{hangindent=}}
+% \changes{v3.0h}{2005/08/22}{Option \opt{parskip=}: \cs{AtBeginCaption} replaced by \cs{caption@@par}}
+% \changes{v3.0h}{2005/08/22}{Undocumented defaults for \opt{parindent=}, \opt{hangindent=},
+% and \opt{parskip=} removed}
+% \begin{macrocode}
+\DeclareCaptionOption{indent}[\leftmargini]{\setlength\captionindent{#1}}% obsolete!
+\DeclareCaptionOption{indention}[\leftmargini]{\setlength\captionindent{#1}}
+\DeclareCaptionOption{hangindent}{\setlength\captionhangindent{#1}}
+\DeclareCaptionOption{parindent}{\setlength\captionparindent{#1}}
+\DeclareCaptionOption{parskip}{\l@addto@macro\caption@@par{\setlength\parskip{#1}}}
+% \end{macrocode}
+%
+% \changes{v3.0h}{2005/08/22}{Increased compatibility to KOMA-Script: A special version of options
+% `parindent' and `parskip' added}
+% \changes{v3.0i}{2006/01/03}{Bugfix 06-01-03: KOMA-Script variants of `parskip' and `parindent' options
+% revised and moved into caption kernel}
+% \changes{v3.0j}{2006/02/23}{KOMA-Script variants of `parskip' and `parindent' are obsolete now, removed}
+% \changes{v3.0o}{2007/03/30}{KOMA-Script variants of `parskip' and `parindent' re-added, since they
+% still collide with the actual version of subfig (Sigh!)}
+%
+% \begin{macrocode}
+\@ifundefined{scr@caption}{}{%
+% \end{macrocode}
+%
+% There is an option clash between the \KOMAScript\ document classes
+% and the \package{caption} kernel,
+% both define the options |parindent| and |parskip| but with different meaning.
+% Furthermore the ones defined by the \package{caption} kernel take a
+% value as parameter but the \KOMAScript\ ones do not.
+% So we need special versions of the options |parindent| and |parskip| here,
+% ones who determine if a value is given (and therefore should be treated as
+% our option) or not (and therefore should be ignored by us).
+%
+% \begin{macrocode}
+ \let\caption@KV@parindent\KV@caption@parindent
+ \DeclareCaptionOption{parindent}[]{%
+ \def\caption@tempa{#1}%
+ \ifx\caption@tempa\@empty
+ \PackageInfo{caption3}{Option `parindent' ignored}%
+ \else
+ \caption@KV@parindent{#1}%
+ \fi}%
+% \end{macrocode}
+%
+% \begin{macrocode}
+ \let\caption@KV@parskip\KV@caption@parskip
+ \DeclareCaptionOption{parskip}[]{%
+ \def\caption@tempa{#1}%
+ \ifx\caption@tempa\@empty
+ \PackageInfo{caption3}{Option `parskip' ignored}%
+ \else
+ \caption@KV@parskip{#1}%
+ \fi}%
+% \end{macrocode}
+%
+% \begin{macrocode}
+}
+% \end{macrocode}
+%
+% \subsubsection*{Styles}
+%
+% \begin{macro}{\DeclareCaptionStyle}
+% \changes{v3.0a}{2004/01/17}{Pass through argument \#3 so extra spaces between arguments do make any harm}
+% |\DeclareCaptionStyle|\marg{name}\oarg{single-line-list-of-KV}\marg{list-of-KV}
+% \begin{macrocode}
+\newcommand*\DeclareCaptionStyle[1]{%
+ \@ifnextchar[{\caption@declarestyle{#1}}{\caption@declarestyle{#1}[]}}
+\def\caption@declarestyle#1[#2]#3{%
+ \global\@namedef{caption@sls@#1}{#2}%
+ \global\@namedef{caption@sty@#1}{#3}}
+\@onlypreamble\DeclareCaptionStyle
+\@onlypreamble\caption@declarestyle
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+\DeclareCaptionOption{style}{\caption@setstyle{#1}}
+% \end{macrocode}
+%
+% \begin{macro}{\caption@setstyle}
+% \changes{v3.0f}{2005/06/01}{Starred variant added}
+% |\caption@setstyle|\marg{name}\\
+% |\caption@setstyle*|\marg{name}\par
+% Selecting a caption style means saving the additional
+% \meta{single-line-list-of-KV} (this will be done by |\caption@sls|),
+% resetting the caption options to the default ones (this will be done using
+% |\caption@setdefault|) and executing the \meta{list-of-KV} options
+% (this will be done using |\caption@esetup|).\par
+% The starred version will give no error message if the given style is not
+% defined.
+% \begin{macrocode}
+\newcommand\caption@setstyle{%
+ \@ifstar{\caption@@setstyle\@gobble}{\caption@@setstyle\@firstofone}}
+\newcommand*\caption@@setstyle[2]{%
+ \@ifundefined{caption@sty@#2}%
+ {#1{\caption@Error{Undefined caption style `#2'}}}%
+ {\expandafter\let\expandafter\caption@sls\csname caption@sls@#2\endcsname
+ \caption@setdefault\caption@esetup{\csname caption@sty@#2\endcsname}}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@setdefault}
+% This resets (nearly) all caption options to the default ones.
+% \emph{Note that this does not touch the skips and the positioning!}
+% \begin{macrocode}
+\newcommand\caption@setdefault{\captionsetup{%
+ format=default,labelformat=default,labelsep=default,textformat=default,%
+ justification=default,font=default,labelfont=default,textfont=default,%
+ margin=0pt,indent=0pt,parindent=0pt,hangindent=0pt,%
+ singlelinecheck=1,strut=1}}
+% \end{macrocode}
+% \end{macro}
+%
+% \changes{v3.0d}{2005/02/12}{\opt{indent=0pt} added to caption style \opt{default}}
+% Currently there is only one pre-defined style, called `default'.
+% It's a perfect match to the behaviour of |\@makecaption| offered by the
+% standard \LaTeX\ document classes:
+% If the caption fits in one single line, it is typeset centered.
+%
+% \begin{macrocode}
+\DeclareCaptionStyle{default}[indent=0pt,justification=centering]{}
+% \end{macrocode}
+%
+% \subsubsection*{Formats}
+%
+% \begin{macro}{\DeclareCaptionFormat}
+% \changes{v3.0a}{2004/01/17}{Pass through argument \#3 so extra spaces between arguments do make any harm}
+% \changes{v3.0d}{2005/02/09}{Starred variant added}
+% |\DeclareCaptionFormat|\marg{name}\marg{code with \#1, \#2, and \#3}\\
+% |\DeclareCaptionFormat*|\marg{name}\marg{code with \#1, \#2, and \#3}\par
+% The starred form causes the code being typeset in vertical (instead of
+% horizontal) mode, but does not support the |indention=| option.
+% \begin{macrocode}
+\newcommand\DeclareCaptionFormat{%
+ \@ifstar{\caption@declareformat\@gobble}%
+ {\caption@declareformat\@firstofone}}
+\newcommand\caption@declareformat[3]{%
+ \global\expandafter\let\csname caption@ifh@#2\endcsname#1%
+ \global\long\@namedef{caption@fmt@#2}##1##2##3{#3}}
+\@onlypreamble\DeclareCaptionFormat
+\@onlypreamble\caption@declareformat
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+\DeclareCaptionOption{format}{\caption@setformat{#1}}
+% \end{macrocode}
+%
+% \begin{macro}{\caption@setformat}
+% |\caption@setformat|\marg{name}\par
+% Selecting a caption format simply means saving the code (in |\caption@fmt|)
+% and if the code should be used in horizontal or vertical mode (|\caption@ifh|).
+% \begin{macrocode}
+\newcommand*\caption@setformat[1]{%
+ \@ifundefined{caption@fmt@#1}%
+ {\caption@Error{Undefined caption format `#1'}}%
+ {\expandafter\let\expandafter\caption@ifh\csname caption@ifh@#1\endcsname
+ \expandafter\let\expandafter\caption@fmt\csname caption@fmt@#1\endcsname}}
+% \end{macrocode}
+% \end{macro}
+%
+% \changes{v3.0a}{2004/01/23}{Caption format \opt{default} renamed to \opt{normal}}
+% \changes{v3.0f}{2005/05/12}{Caption format \opt{normal} renamed to \opt{@normal}}
+% \changes{v3.0h}{2005/08/25}{Caption format \opt{@normal} renamed to \opt{plain} and documented}
+% There are two pre-defined formats, called `plain' and `hang'.
+%
+% \begin{macrocode}
+\DeclareCaptionFormat{plain}{#1#2#3\par}
+\DeclareCaptionFormat{hang}{%
+ \@hangfrom{#1#2}%
+ \advance\captionparindent\hangindent
+ \advance\captionhangindent\hangindent
+ \caption@@par
+ #3\par}
+% \end{macrocode}
+%
+% \changes{v3.0a}{2004/01/23}{Caption format \opt{default} linked to \opt{normal}}
+% \changes{v3.0e}{2005/04/28}{Bugfix 05-04-28: Missing \cs{caption@ifh@default} added}
+% `default' usually maps to `plain'.
+%
+% \begin{macrocode}
+\def\caption@fmt@default{\caption@fmt@plain}
+\def\caption@ifh@default{\caption@ifh@plain}
+% \end{macrocode}
+%
+% \subsubsection*{Label formats}
+%
+% \begin{macro}{\DeclareCaptionLabelFormat}
+% \changes{v3.0a}{2004/01/17}{Pass through argument \#2 so extra spaces between arguments do make any harm}
+% |\DeclareCaptionLabelFormat|\marg{name}\marg{code with \#1 and \#2}
+% \begin{macrocode}
+\newcommand*\DeclareCaptionLabelFormat[2]{%
+ \global\@namedef{caption@lfmt@#1}##1##2{#2}}
+\@onlypreamble\DeclareCaptionLabelFormat
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+\DeclareCaptionOption{labelformat}{\caption@setlabelformat{#1}}
+% \end{macrocode}
+%
+% \begin{macro}{\caption@setlabelformat}
+% |\caption@setlabelformat|\marg{name}\par
+% Selecting a caption label format simply means saving the code (in |\caption@lfmt|).
+% \begin{macrocode}
+\newcommand*\caption@setlabelformat[1]{%
+ \@ifundefined{caption@lfmt@#1}%
+ {\caption@Error{Undefined caption label format `#1'}}%
+ {\expandafter\let\expandafter\caption@lfmt\csname caption@lfmt@#1\endcsname}}
+% \end{macrocode}
+% \end{macro}
+%
+% There are three pre-defined label formats, called `empty', `simple', and `parens'.
+%
+% \begin{macrocode}
+\DeclareCaptionLabelFormat{empty}{}
+\DeclareCaptionLabelFormat{simple}{\bothIfFirst{#1}{\nobreakspace}#2}
+\DeclareCaptionLabelFormat{parens}{\bothIfFirst{#1}{\nobreakspace}(#2)}
+% \end{macrocode}
+%
+% `default' usually maps to `simple'.
+%
+% \begin{macrocode}
+\def\caption@lfmt@default{\caption@lfmt@simple}
+% \end{macrocode}
+%
+% \subsubsection*{Label separators}
+%
+% \begin{macro}{\DeclareCaptionLabelSeparator}
+% \changes{v3.0a}{2004/01/17}{Pass through argument \#2 so extra spaces between arguments do make any harm}
+% \changes{v3.0h}{2005/08/25}{Starred variant added}
+% |\DeclareCaptionLabelSeparator|\marg{name}\marg{code}\\
+% |\DeclareCaptionLabelSeparator*|\marg{name}\marg{code}\par
+% The starred form causes the label separator to be typeset \emph{without} using |\captionlabelfont|.
+% \begin{macrocode}
+\newcommand\DeclareCaptionLabelSeparator{%
+ \@ifstar{\caption@declarelabelseparator\@gobble}%
+ {\caption@declarelabelseparator\@firstofone}}
+\newcommand\caption@declarelabelseparator[3]{%
+ \global\expandafter\let\csname caption@iflf@#2\endcsname#1%
+ \global\long\@namedef{caption@lsep@#2}{#3}}
+\@onlypreamble\DeclareCaptionLabelSeparator
+\@onlypreamble\caption@declarelabelseparator
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+\DeclareCaptionOption{labelsep}{\caption@setlabelseparator{#1}}
+\DeclareCaptionOption{labelseparator}{\caption@setlabelseparator{#1}}
+% \end{macrocode}
+%
+% \begin{macro}{\caption@setlabelseparator}
+% |\caption@setlabelseparator|\marg{name}\par
+% Selecting a caption label separator simply means saving the code (in |\caption@lsep|).
+% \begin{macrocode}
+\newcommand*\caption@setlabelseparator[1]{%
+ \@ifundefined{caption@lsep@#1}%
+ {\caption@Error{Undefined caption label separator `#1'}}%
+ {\expandafter\let\expandafter\caption@iflf\csname caption@iflf@#1\endcsname
+ \expandafter\let\expandafter\caption@lsep\csname caption@lsep@#1\endcsname}}
+% \end{macrocode}
+% \end{macro}
+%
+% \changes{v3.0f}{2005/06/11}{Bugfix 05-03-23: Caption label separator \opt{newline} implementation
+% changed from \cs{newline} to \cs{\textbackslash}}
+% \changes{v3.0h}{2005/08/24}{Caption label separator \opt{endash} added}
+% There are seven pre-defined label separators, called `none', `colon', `period', `space',
+% `quad', `newline', and `endash'.
+%
+% \begin{macrocode}
+\DeclareCaptionLabelSeparator{none}{}
+\DeclareCaptionLabelSeparator{colon}{: }
+\DeclareCaptionLabelSeparator{period}{. }
+\DeclareCaptionLabelSeparator{space}{ }
+\DeclareCaptionLabelSeparator*{quad}{\quad}
+\DeclareCaptionLabelSeparator*{newline}{\\}
+\DeclareCaptionLabelSeparator*{endash}{\space\textendash\space}
+% \end{macrocode}
+%
+% `default' usually maps to `colon'.
+%
+% \begin{macrocode}
+\def\caption@lsep@default{\caption@lsep@colon}
+\def\caption@iflf@default{\caption@iflf@colon}
+% \end{macrocode}
+%
+% \subsubsection*{Text formats}
+%
+% \begin{macro}{\DeclareCaptionTextFormat}
+% \changes{v3.0l}{2007/02/18}{This macro added}
+% |\DeclareCaptionTextFormat|\marg{name}\marg{code with \#1}
+% \begin{macrocode}
+\newcommand*\DeclareCaptionTextFormat[2]{%
+ \global\long\@namedef{caption@tfmt@#1}##1{#2}}
+\@onlypreamble\DeclareCaptionTextFormat
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+\DeclareCaptionOption{textformat}{\caption@settextformat{#1}}
+% \end{macrocode}
+%
+% \begin{macro}{\caption@settextformat}
+% \changes{v3.0l}{2007/02/18}{This macro added}
+% |\caption@settextformat|\marg{name}\par
+% Selecting a caption text format simply means saving the code (in |\caption@tfmt|).
+% \begin{macrocode}
+\newcommand*\caption@settextformat[1]{%
+ \@ifundefined{caption@tfmt@#1}%
+ {\caption@Error{Undefined caption text format `#1'}}%
+ {\expandafter\let\expandafter\caption@tfmt\csname caption@tfmt@#1\endcsname}}
+% \end{macrocode}
+% \end{macro}
+%
+% There are two pre-defined text formats, called `simple' and `period'.
+%
+% \begin{macrocode}
+\DeclareCaptionTextFormat{simple}{#1}
+\DeclareCaptionTextFormat{period}{#1.}
+% \end{macrocode}
+%
+% `default' usually maps to `simple'.
+%
+% \begin{macrocode}
+\def\caption@tfmt@default{\caption@tfmt@simple}
+% \end{macrocode}
+%
+% \subsubsection*{Justifications}
+%
+% \begin{macro}{\DeclareCaptionJustification}
+% \changes{v3.0a}{2004/01/17}{Pass through argument \#2 so extra spaces between arguments do make any harm}
+% |\DeclareCaptionJustification|\marg{name}\marg{code}
+% \begin{macrocode}
+\newcommand*\DeclareCaptionJustification[2]{%
+ \global\@namedef{caption@hj@#1}{#2}}
+%\newcommand\DeclareCaptionJustification{\DeclareCaptionFont}
+\@onlypreamble\DeclareCaptionJustification
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+\DeclareCaptionOption{justification}{\caption@setjustification{#1}}
+% \end{macrocode}
+%
+% \begin{macro}{\caption@setjustification}
+% |\caption@setjustification|\marg{name}\par
+% Selecting a caption justification simply means saving the code (in |\caption@hj|).
+% \begin{macrocode}
+\newcommand*\caption@setjustification[1]{%
+ \@ifundefined{caption@hj@#1}%
+ {\caption@Error{Undefined caption justification `#1'}}%
+ {\expandafter\let\expandafter\caption@hj\csname caption@hj@#1\endcsname}}
+%\newcommand\caption@setjustification{\caption@setfont{@hj}}
+% \end{macrocode}
+% \end{macro}
+%
+% These are the pre-defined justification code snippets.
+%
+% \begin{macrocode}
+\DeclareCaptionJustification{justified}{}
+\DeclareCaptionJustification{centering}{\centering}
+\DeclareCaptionJustification{centerfirst}{\centerfirst}
+\DeclareCaptionJustification{centerlast}{\centerlast}
+\DeclareCaptionJustification{raggedleft}{\raggedleft}
+\DeclareCaptionJustification{raggedright}{\raggedright}
+% \end{macrocode}
+%
+% `default' usually maps to `justified'.
+%
+% \begin{macrocode}
+\def\caption@hj@default{\caption@hj@justified}
+% \end{macrocode}
+%
+% \begin{macro}{\centerfirst}
+% \changes{v3.0l}{2007/01/21}{Bugfix: Usage of \cs{@centercr} added (Thanks to Olga!)}
+% \changes{v3.0l}{2007/01/21}{This macro renamed from \cs{caption@centerfirst} to \cs{centerfirst}}
+% Please blame Frank Mittelbach for |\caption@centerfirst| |:-)|
+% \begin{macrocode}
+\providecommand\centerfirst{%
+ \let\\\@centercr
+ \edef\caption@normaladjust{%
+ \leftskip\the\leftskip
+ \rightskip\the\rightskip
+ \parfillskip\the\parfillskip\relax}%
+ \leftskip\z@\@plus -1fil%
+ \rightskip\z@\@plus 1fil%
+ \parfillskip\z@skip
+ \noindent\hskip\z@\@plus 2fil%
+ \@setpar{\@@par\@restorepar\caption@normaladjust}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\centerlast}
+% \changes{v3.0l}{2007/01/21}{Bugfix: Usage of \cs{@centercr} added (Thanks to Olga!)}
+% \changes{v3.0l}{2007/01/21}{This macro renamed from \cs{caption@centerlast} to \cs{centerlast}}
+% This is based on code from Anne Br\"uggemann-Klein\cite{Anne}
+% \begin{macrocode}
+\providecommand\centerlast{%
+ \let\\\@centercr
+ \leftskip\z@\@plus 1fil%
+ \rightskip\z@\@plus -1fil%
+ \parfillskip\z@\@plus 2fil\relax}
+% \end{macrocode}
+% \end{macro}
+%
+% \changes{v3.0b}{2004/05/16}{Improved \package{ragged2e} package support}
+% We also support the upper-case commands offered by the \package{ragged2e}
+% package.
+% Note that these just map to their lower-case variants if the
+% \package{ragged2e} package is not available.
+% \begin{macrocode}
+\DeclareCaptionJustification{Centering}{%
+ \caption@ragged\Centering\centering}
+\DeclareCaptionJustification{RaggedLeft}{%
+ \caption@ragged\RaggedLeft\raggedleft}
+\DeclareCaptionJustification{RaggedRight}{%
+ \caption@ragged\RaggedRight\raggedright}
+% \end{macrocode}
+%
+% \begin{macro}{\caption@ragged}
+% \changes{v3.0p}{2007/04/07}{The `ragged2e' package will now only been loaded when needed}
+% \changes{v3.0q}{2007/04/11}{Bugfix: Usage of \cs{caption@Info} replaced by \cs{caption@Debug}}
+% \changes{v3.0q}{2007/04/16}{Warnung will be suppressed on first \LaTeX\ run}
+% |\caption@ragged| will be basically defined as\par
+% |\AtBeginDocument{\IfFileExists{ragged2e.sty}%|\\
+% | {\RequirePackage{ragged2e}\let\caption@ragged\@firstoftwo}%|\\
+% | {\let\caption@ragged\@secondoftwo}}|\par
+% but with an additional warning if the ragged2e package is not loaded (yet).
+% (This warning will be typeout only one time per option, that's why
+% we need the |caption\string#1| stuff.)
+% Furthermore we load the \package{ragged2e} package, if needed and available.
+% \begin{macrocode}
+\newcommand*\caption@ragged{%
+ \caption@Debug{We need ragged2e}%
+ \protected@write\@auxout{}{\string\caption@newlabel{ragged2e}{}}%
+ \global\let\caption@ragged\caption@@ragged
+ \caption@@ragged}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@@ragged[2]{%
+ \@ifundefined{caption\string#1}{%
+ \PackageWarning{caption3}{%
+ `ragged2e' package not loaded, therefore\MessageBreak
+ substituting \string#2 for \string#1\MessageBreak}%
+ \global\@namedef{caption\string#1}}{}%
+ #2}
+% \end{macrocode}
+% \begin{macrocode}
+\AtBeginDocument{%
+ \@ifundefined{caption@ragged2e}{%
+ \let\caption@@ragged\@secondoftwo % suppress warning above
+ }{%
+ \caption@Debug{We load ragged2e}%
+ \IfFileExists{ragged2e.sty}{%
+ \RequirePackage{ragged2e}\let\caption@@ragged\@firstoftwo}{}%
+ }}
+% \end{macrocode}
+% \end{macro}
+%
+% \subsubsection*{Fonts}
+%
+% \begin{macro}{\DeclareCaptionFont}
+% \changes{v3.0a}{2004/01/22}{Bugfix: Multi token arguments are allowed now}
+% |\DeclareCaptionFont|\marg{name}\marg{code}
+% \begin{macrocode}
+\newcommand\DeclareCaptionFont[2]{%
+ \define@key{caption@fnt}{#1}[]{\g@addto@macro\caption@tempa{#2}}}
+\@onlypreamble\DeclareCaptionFont
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+\DeclareCaptionOption{font}{\caption@setfont{font}{#1}}
+\DeclareCaptionOption{labelfont}{\caption@setfont{labelfont}{#1}}
+\DeclareCaptionOption{textfont}{\caption@setfont{textfont}{#1}}
+% \end{macrocode}
+%
+% \begin{macro}{\caption@setfont}
+% \changes{v3.0l}{2007/01/30}{Usage of \cs{caption@setkeys} with optional argument}
+% |\caption@setfont|\marg{name}\marg{keyval-list of names}\par
+% Selecting a caption font means saving all the code snippets
+% (in |\caption#1|).
+% Because we use |\setkeys| recursive here we need to do this inside an
+% extra group and collect all the code snippets in |\caption@tempa| first.
+% \begin{macrocode}
+\newcommand*\caption@setfont[2]{%
+ \let\caption@tempa\@empty
+ \begingroup
+% \define@key{caption@fnt}{default}[]{%
+% \global\expandafter\let\expandafter\caption@tempa
+% \csname caption#1@default\endcsname}%
+ \caption@setkeys[caption]{caption@fnt}{#2}%
+ \endgroup
+ \expandafter\let\csname caption#1\endcsname\caption@tempa}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+\DeclareCaptionFont{default}{}
+% \end{macrocode}
+%
+% These are the pre-defined font code snippets.
+%
+% \begin{macrocode}
+\DeclareCaptionFont{scriptsize}{\scriptsize}
+\DeclareCaptionFont{footnotesize}{\footnotesize}
+\DeclareCaptionFont{small}{\small}
+\DeclareCaptionFont{normalsize}{\normalsize}
+\DeclareCaptionFont{large}{\large}
+\DeclareCaptionFont{Large}{\Large}
+% \end{macrocode}
+%
+% \begin{macrocode}
+\DeclareCaptionFont{up}{\upshape}
+\DeclareCaptionFont{it}{\itshape}
+\DeclareCaptionFont{sl}{\slshape}
+\DeclareCaptionFont{sc}{\scshape}
+\DeclareCaptionFont{md}{\mdseries}
+\DeclareCaptionFont{bf}{\bfseries}
+\DeclareCaptionFont{rm}{\rmfamily}
+\DeclareCaptionFont{sf}{\sffamily}
+\DeclareCaptionFont{tt}{\ttfamily}
+% \end{macrocode}
+%
+% \subsubsection*{\package{setspace} package support}
+% \changes{v3.0p}{2007/04/02}{\package{setspace} package support added to kernel}
+%
+% \begin{macrocode}
+\DeclareCaptionFont{singlespacing}{\setstretch{\setspace@singlespace}}% normally 1
+\DeclareCaptionFont{onehalfspacing}{\onehalfspacing}
+\DeclareCaptionFont{doublespacing}{\doublespacing}
+% \end{macrocode}
+%
+% \begin{macro}{\captionsize}
+% \changes{v3.0a}{2004/01/23}{Implementation changed from \cs{captionfont} to \cs{@empty}}
+% \changes{v3.0c}{2004/07/16}{Use \cs{providecommand} instead of \cs{newcommand} in respect of the memoir class}
+% The old versions \version{1.x} of the \package{caption} package offered this
+% command to setup the font size used for captions. We still do
+% so old documents will work fine.
+% \begin{macrocode}
+\providecommand\captionsize{}
+% \end{macrocode}
+% \end{macro}
+%
+% \changes{v3.0a}{2004/01/23}{Option \opt{size=} now sets \cs{captionsize} instead of \cs{captionfont}}
+% \begin{macrocode}
+\DeclareCaptionOption{size}{\caption@setfont{size}{#1}}
+% \end{macrocode}
+%
+% \subsubsection*{Vertical spaces before and after captions}
+%
+% \begin{macro}{\abovecaptionskip}
+% \begin{macro}{\belowcaptionskip}
+% Usually these skips are defined within the document class, but some
+% document classes don't do so.
+% \begin{macrocode}
+\@ifundefined{abovecaptionskip}{%
+ \newlength\abovecaptionskip\setlength\abovecaptionskip{10\p@}}{}
+\@ifundefined{belowcaptionskip}{%
+ \newlength\belowcaptionskip\setlength\belowcaptionskip{0\p@}}{}
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+%
+% \changes{v3.0d}{2005/02/12}{Option \opt{skip=} added}
+% \begin{macrocode}
+\DeclareCaptionOption{aboveskip}{\setlength\abovecaptionskip{#1}}
+\DeclareCaptionOption{belowskip}{\setlength\belowcaptionskip{#1}}
+\DeclareCaptionOption{skip}{\setlength\abovecaptionskip{#1}}
+% \end{macrocode}
+%
+% \subsubsection*{Positioning}
+%
+% These macros handle the right position of the caption.
+% Note that the position is actually \emph{not} controlled by the
+% \package{caption} kernel options, but by the user (or a specific package
+% like the \package{float} package) instead.
+% The user can put the |\caption| command wherever he likes! So this stuff
+% is only to give us a \emph{hint} where to put the right skips, the user
+% usually has to take care for himself that this hint actually matches the
+% right position.
+% The user can also try out the experimental setting |position=auto| which
+% means that the \package{caption} package should try to guess the actual
+% position of the caption for himself. (But in many cases, for example in
+% |longtable|s, this is doomed to fail, so it's not documented in the
+% user part of the documentation.)
+%
+% \begin{macrocode}
+\DeclareCaptionOption{position}{\caption@setposition{#1}}
+% \end{macrocode}
+%
+% \begin{macro}{\caption@setposition}
+% \changes{v3.0a}{2004/01/22}{Now the positions \opt{t}, \opt{above}, \opt{b},
+% \opt{below}, and \opt{a} are allowed, too}
+% \changes{v3.0d}{2004/08/10}{Usage of \cs{caption@defaultpos} added}
+% |\caption@setposition|\marg{position}\par
+% Selecting the caption position means that we put |\caption@position| to
+% the right value. \emph{Please do \textbf{not} use the internal macro
+% \cs{caption@position} in your own package or document, but use the wrapper
+% macro \cs{caption@iftop} instead.}
+% \begin{macrocode}
+\newcommand*\caption@setposition[1]{%
+ \caption@ifinlist{#1}{d,default}{%
+ \def\caption@position{\caption@defaultpos}%
+ }{\caption@ifinlist{#1}{t,top,above}{%
+ \let\caption@position\@firstoftwo
+ }{\caption@ifinlist{#1}{b,bottom,below}{%
+ \let\caption@position\@secondoftwo
+ }{\caption@ifinlist{#1}{a,auto}{%
+ \let\caption@position\@undefined
+ }{%
+ \caption@Error{Undefined caption position `#1'}%
+ }}}}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@defaultpos}
+% The default `position' is usually `bottom', this means that the (larger)
+% skip will be typeset above the caption.
+% This correspondents to the |\@makecaption| implementation in the standard
+% \LaTeX\ document classes.
+% \begin{macrocode}
+%\caption@setdefaultpos{b}% default = bottom
+\let\caption@defaultpos\@secondoftwo
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@iftop}
+% \changes{v3.0a}{2004/01/23}{Split into \cs{caption@iftop} \& \cs{caption@fixposition}}
+% \changes{v3.0d}{2005/02/12}{Adapted to \cs{caption@defaultpos}}
+% |\caption@iftop|\marg{true-code}\marg{false-code}\par
+% (If the |position=| is set to |auto| we assume a |bottom| position.)
+% \begin{macrocode}
+\newcommand\caption@iftop{%
+ \ifx\caption@position\@undefined
+ \expandafter\@secondoftwo
+ \else
+ \expandafter\caption@position
+ \fi}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@fixposition}
+% \changes{v3.0b}{2004/05/16}{Split into \cs{caption@fixposition} & \cs{caption@autoposition}}
+% |\caption@fixposition|\par
+% This macro checks if the `position' is set to `auto'.
+% If yes, |\caption@autoposition| will be called to
+% set |\caption@position| to a proper value we can actually use.
+% \begin{macrocode}
+\newcommand\caption@fixposition{%
+ \ifx\caption@position\@undefined
+ \caption@autoposition
+ \fi}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@autoposition}
+% \changes{v3.0a}{2004/01/23}{\cs{ifvmode} added}
+% |\caption@autoposition|\par
+% We guess the actual position of the caption by checking |\prevdepth|.
+% \begin{macrocode}
+\newcommand\caption@autoposition{%
+ \ifvmode
+ \edef\caption@tempa{\the\prevdepth}%
+ \caption@Debug{\protect\prevdepth=\caption@tempa}%
+% \caption@setposition{\ifdim\prevdepth>-\p@ b\else t\fi}%
+ \ifdim\prevdepth>-\p@
+ \let\caption@position\@secondoftwo
+ \else
+ \let\caption@position\@firstoftwo
+ \fi
+ \else
+ \caption@Debug{no \protect\prevdepth}%
+% \caption@setposition{b}%
+ \let\caption@position\@secondoftwo
+ \fi}
+% \end{macrocode}
+% \end{macro}
+%
+% \subsubsection*{Hooks}
+%
+% \begin{macro}{\AtBeginCaption}
+% \begin{macro}{\AtEndCaption}
+% |\AtBeginCaption| \marg{code}\\
+% |\AtEndCaption| \marg{code}\par
+% These hooks can be used analogous to |\AtBeginDocument| and |\AtEndDocument|.
+% \begin{macrocode}
+\newcommand\caption@beginhook{}
+\newcommand\caption@endhook{}
+\newcommand\AtBeginCaption{\l@addto@macro\caption@beginhook}
+\newcommand\AtEndCaption{\l@addto@macro\caption@endhook}
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+%
+% \subsubsection*{Miscellaneous options}
+%
+% \changes{v3.0b}{2004/05/16}{Option \opt{listof=} added}
+% \changes{v3.0d}{2005/02/12}{Option \opt{strut=} added}
+% \begin{macrocode}
+\DeclareCaptionOption{listof}{\caption@setbool{lof}{#1}}
+\DeclareCaptionOption{singlelinecheck}{\caption@setbool{slc}{#1}}
+\DeclareCaptionOption{strut}{\caption@setbool{strut}{#1}}
+% \end{macrocode}
+%
+% \subsubsection*{Debug option}
+% \changes{v3.0m}{2007/03/04}{Debug option added to kernel}
+%
+% \begin{macrocode}
+\DeclareCaptionOption{debug}[1]{%
+ \caption@setbool{debug}{#1}%
+ \caption@ifdebug{%
+ \def\caption@Debug{\PackageInfo{caption3}}%
+ }{%
+ \let\caption@Debug\@gobble
+ }}
+\setkeys{caption}{debug=0}
+% \end{macrocode}
+%
+% \subsubsection*{Initialization of parameters}
+%
+% \begin{macrocode}
+\captionsetup{style=default,position=default,listof=1,%
+ twoside=\if@twoside 1\else 0\fi}
+% \end{macrocode}
+%
+% \begin{macro}{\ifcaption@star}
+% If the starred form of |\caption| is used, this will be set to |true|.
+% (It will be reset to |false| at the end of |\caption@@make|.)
+% \begin{macrocode}
+\newif\ifcaption@star
+% \end{macrocode}
+% \end{macro}
+%
+% \subsubsection*{Typesetting the caption}
+%
+% \begin{macro}{\caption@make}
+% |\caption@make|\marg{float name}\marg{ref.\ number}\marg{text}
+% \begin{macrocode}
+\newcommand\caption@make[2]{%
+ \caption@@make{\caption@lfmt{#1}{#2}}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@@make}
+% \changes{v3.0b}{2004/05/16}{Bugfix 04-05-05: \cs{ifdim}\cs{captionindent=}\cs{z@} added}
+% \changes{v3.0d}{2005/02/12}{Bugfix 04-10-26: Use \cs{@tempdima} instead of \cs{captionmargin} resp. \cs{captionwidth};
+% check for \cs{z@} added}
+% \changes{v3.0d}{2005/02/12}{Bugfix: \cs{hskip}\cs{captionmargin} to the end of caption added}
+% \changes{v3.0d}{2005/02/12}{Bugfix: \cs{strut} moved from here to \cs{caption@@@make}}
+% \changes{v3.0d}{2005/02/12}{Single-line-check moved up so it can affect margins now}
+% \changes{v3.0d}{2005/02/09}{Improvement: \cs{caption@ifh} added}
+% \changes{v3.0d}{2005/02/09}{Bugfix: \cs{leavevmode} added}
+% \changes{v3.0h}{2005/08/24}{Uses \cs{sbox} instead of \cs{setbox} in single-line-check}
+% \changes{v3.0i}{2005/12/04}{Uses \cs{caption@slc}}
+% \changes{v3.0i}{2006/01/11}{Bugfix: \cs{caption@calcmargin} inside single-line-check replaced by \cs{relax}}
+% \changes{v3.0i}{2006/01/11}{Bugfix: \cs{caption@startbox} will always be typeset in horizontal mode}
+% \changes{v3.0k}{2006/05/13}{Uses \cs{captionbox} instead of \cs{caption@start/endbox}}
+% \changes{v3.0l}{2007/01/04}{Oops, bugfix 04-05-05 got lost in v3.0j, re-added}
+% \changes{v3.0p}{2007/04/03}{Usage of \cs{caption@ifoddpage} added}
+% |\caption@@make|\marg{caption label}\marg{caption text}
+% \begin{macrocode}
+\newcommand\caption@@make[2]{%
+ \begingroup
+ \caption@beginhook
+ \caption@calcmargin
+% \end{macrocode}
+%
+% Special single-line treatment (option |singlelinecheck=|)
+%
+% \begin{macrocode}
+ \caption@ifslc{\ifx\caption@sls\@empty\else
+ \caption@slc{#1}{#2}\captionwidth\relax
+ \fi}{}%
+% \end{macrocode}
+%
+% Typeset the left margin (option |margin=|)
+%
+% \begin{macrocode}
+ \@tempdima\captionmargin
+ \ifdim\captionmargin@=\z@\else
+ \caption@ifoddpage{}{\advance\@tempdima\captionmargin@}%
+ \fi
+ \caption@ifh{\advance\@tempdima\captionindent}%
+ \hskip\@tempdima
+% \end{macrocode}
+%
+% We actually use a |\vbox| of width |\captionwidth - \captionindent|
+% to typeset the caption
+% (Note: |\captionindent| is \emph{not} supported if the caption format
+% was defined with |\DeclareCaptionFormat*|.)
+%
+% \begin{macrocode}
+ \@tempdima\captionwidth
+ \caption@ifh{\advance\@tempdima by -\captionindent}%
+ \captionbox\@tempdima{%
+% \end{macrocode}
+%
+% Typeset the indention (option |indention=|)\\
+% Bugfix 04-05-05: |\hskip-\captionindent| replaced by |\ifdim\captionindent=\z@|\ldots
+%
+% \begin{macrocode}
+ \caption@ifh{%
+ \ifdim\captionindent=\z@
+ \leavevmode
+ \else
+ \hskip-\captionindent
+ \fi}%
+% \end{macrocode}
+%
+% Typeset the caption itself and close the |\captionbox|
+%
+% \begin{macrocode}
+ \caption@@@make{#1}{#2}}%
+% \end{macrocode}
+%
+% Typeset the right margin (option |margin=|)
+%
+% \begin{macrocode}
+ \@tempdima\captionmargin
+ \ifdim\captionmargin@=\z@\else
+ \caption@ifoddpage{\advance\@tempdima\captionmargin@}{}%
+ \fi
+ \hskip\@tempdima
+% \end{macrocode}
+%
+% \begin{macrocode}
+ \caption@endhook
+ \endgroup
+% \end{macrocode}
+%
+% \begin{macrocode}
+ \global\caption@starfalse}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@calcmargin}
+% Calculate |\captionmargin| \& |\captionwidth|, so both contain valid
+% values.
+% \changes{v3.0h}{2005/10/24}{Internal: \cs{ifcaption@width} replaced by \cs{ifdim}\cs{captionwidth=}\cs{z@}}
+% \changes{v3.0i}{2006/01/12}{Improvement: Takes care of list environment now}
+% \begin{macrocode}
+\newcommand\caption@calcmargin{%
+% \end{macrocode}
+% \emph{Note:} Inside a |list| environment |\linewidth| do not contain
+% the proper value, because |\@caption| calls |\@parboxrestore| which
+% resets |\linewidth| to |\hsize|. Therefore we have to calculate the
+% proper line width on our own in this case.
+% \begin{macrocode}
+ \@tempdima\hsize
+ \ifnum\@listdepth>0\relax
+ \advance\@tempdima by -\leftmargin
+ \advance\@tempdima by -\rightmargin
+ \fi
+% \end{macrocode}
+% \begin{macrocode}
+ \ifdim\captionwidth=\z@
+ \captionwidth\@tempdima
+ \advance\captionwidth by -2\captionmargin
+ \advance\captionwidth by -\captionmargin@
+ \else
+ \captionmargin\@tempdima
+ \advance\captionmargin by -\captionwidth
+ \divide\captionmargin by 2
+ \captionmargin@\z@
+ \fi
+% \end{macrocode}
+% \begin{macrocode}
+ \caption@Debug{%
+ \protect\hsize=\the\hsize,
+ \protect\margin=\the\captionmargin,
+ \protect\marginx=\the\captionmargin@,
+ \protect\width=\the\captionwidth}%
+% \end{macrocode}
+% \begin{macrocode}
+}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@slc}
+% This one does the single-line-check.
+% \begin{macrocode}
+\newcommand\caption@slc[4]{%
+ \caption@startslc
+ \sbox\@tempboxa{\caption@@@make{#1}{#2}}%
+ \ifdim\wd\@tempboxa >#3%
+ \caption@endslc
+ \else
+ \caption@endslc
+ \caption@esetup\caption@sls
+ #4%
+ \fi}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@startslc}
+% \changes{v3.0b}{2004/05/16}{Bugfix: Redefinition of \cs{label} \& \cs{@footnotetext} added}
+% \changes{v3.0b}{2004/05/16}{Redefine \cs{stepcounter} instead of \cs{footnote(mark)}}
+% \changes{v3.0d}{2005/02/12}{\cs{let}\cs{caption@hj}\cs{relax} added}
+% \changes{v3.0h}{2005/07/09}{Support of \package{endnotes} package added}
+% Re-define anything which would disturb the single-line-check.
+% \begin{macrocode}
+\newcommand\caption@startslc{%
+ \begingroup
+ \let\label\@gobble
+ \let\@footnotetext\@gobble\let\@endnotetext\@gobble
+ \def\stepcounter##1{\advance\csname c@##1\endcsname\@ne\relax}%
+ \let\caption@hj\relax}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@endslc}
+% This ends the single-line-check.
+% \begin{macrocode}
+\newcommand\caption@endslc{%
+ \endgroup}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\captionbox}
+% \changes{v3.0k}{2006/05/13}{We define \cs{captionbox} instead of \cs{caption@start/endbox}}
+% \changes{v3.0n}{2006/03/09}{Bugfix 07-03-09: \cs{captionbox} changed from \cs{parbox-t} to \cs{parbox-b}}
+% This macro defines the box which surrounds the caption paragraph.
+% \begin{macrocode}
+\newcommand\captionbox{\parbox[b]}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@@@make}
+% \changes{v3.0b}{2004/05/16}{Bugfix 04-05-06: \cs{allowhyphens} added}
+% \changes{v3.0d}{2005/02/12}{Bugfix 04-12-16: Use some kind of \cs{@startstrut}\cs{strutbox} instead of \cs{strut}}
+% \changes{v3.0d}{2005/02/12}{Bugfix 05-01-23: \cs{@finalstrut}\cs{strutbox} added}
+% \changes{v3.0e}{2005/05/05}{Use \cs{caption@ifempty}; \cs{let}\cs{caption@ifstrut}\cs{@secondoftwo} added}
+% \changes{v3.0e}{2005/05/05}{Bugfix: Handling of \cs{ifcaption@star} changed}
+% \changes{v3.0h}{2005/08/24}{Check for empty label added}
+% \changes{v3.0h}{2005/08/25}{\cs{caption@iflf} added}
+% \changes{v3.0l}{2007/02/18}{Usage of \cs{caption@tfmt} added}
+% |\caption@@@make|\marg{caption label}\marg{caption text}\par
+% This one finally typesets the caption paragraph, without margin and indention.
+% \begin{macrocode}
+\newcommand\caption@@@make[2]{%
+% \end{macrocode}
+%
+% If the label is empty, we use no caption label separator.
+%
+% \begin{macrocode}
+ \sbox\@tempboxa{#1}%
+ \ifdim\wd\@tempboxa=\z@
+ \let\caption@lsep\relax
+ \fi
+% \end{macrocode}
+%
+% If the text is empty, we use no caption label separator, too.
+%
+% \begin{macrocode}
+ \caption@ifempty{#2}{%
+ \let\caption@lsep\relax
+% \let\caption@ifstrut\@secondoftwo
+ }%
+% \end{macrocode}
+%
+% Take care that |\captionparindent| and |\captionhangindent| will be used
+% to typeset the paragraph.
+%
+% \begin{macrocode}
+ \@setpar{\@@par\caption@@par}\caption@@par
+% \end{macrocode}
+%
+% Finally the caption will be typeset.
+%
+% \begin{macrocode}
+ \caption@hj\captionsize\captionfont\caption@fmt
+ {\ifcaption@star\else{\captionlabelfont#1}\fi}%
+ {\ifcaption@star\else{\caption@iflf\captionlabelfont\caption@lsep}\fi}%
+ {{\captiontextfont
+ \caption@ifstrut{\vrule\@height\ht\strutbox\@width\z@}{}%
+ \nobreak\hskip\z@skip
+ \caption@tfmt{#2}%
+% \caption@ifstrut{\vrule\@height\z@\@depth\dp\strutbox\@width\z@}{}%
+ \caption@ifstrut{\@finalstrut\strutbox}{}%
+ \par}}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@ifempty}
+% \changes{v3.0e}{2005/05/05}{This macro added}
+% |\caption@ifempty|\marg{text}\marg{if-clause}\par
+% This one tests if the \meta{text} is actually empty.\par
+% \emph{Note:} This will be done without expanding the text, therefore this
+% is far away from being bullet-proof.
+% \begin{macrocode}
+\newcommand\caption@ifempty[1]{%
+ \def\caption@tempa{#1}%
+ \def\caption@tempb{\ignorespaces}%
+ \ifx\caption@tempa\caption@tempb
+ \let\caption@tempa\@empty
+ \fi
+ \ifx\caption@tempa\@empty
+ \expandafter\@firstofone
+ \else
+ \expandafter\@gobble
+ \fi}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@@par}
+% \changes{v3.0h}{2005/08/22}{Made this definition global}
+% |\caption@@par|\par
+% This command will be executed with every |\par| inside the caption.
+% \begin{macrocode}
+\newcommand*\caption@@par{%
+ \parindent\captionparindent\hangindent\captionhangindent}%
+% \end{macrocode}
+% \end{macro}
+%
+% \iffalse
+%</kernel>
+% \fi
+%
+% \iffalse
+% --------------------------------------------------------------------------- %
+% \fi
+%
+% \subsection{Main package}
+% \iffalse
+%<*package>
+% \fi
+%
+% \subsubsection*{Identification}
+%
+% \begin{macrocode}
+\NeedsTeXFormat{LaTeX2e}[1994/12/01]
+\ProvidesPackage{caption}[2007/04/16 v3.0q Customising captions (AR)]
+% \end{macrocode}
+%
+% \subsubsection*{Loading the kernel}
+%
+% \begin{macrocode}
+\RequirePackage{caption3}[=2007/01/31] % needs v1.0l or newer
+% \end{macrocode}
+%
+% \subsection*{Check against the obsolete \package{caption2} package}
+% \changes{v3.0p}{2007/04/06}{Check against obsolete \package{caption2} package added}
+%
+% \begin{macrocode}
+\@ifpackageloaded{caption2}{%
+ \caption@Error{You can't use both the caption *and* caption2 package}%
+ \endinput
+}{}
+% \end{macrocode}
+%
+% \subsubsection*{Option for configuration files}
+%
+% \begin{macrocode}
+\DeclareCaptionOption{config}[caption]{%
+ \InputIfFileExists{#1.cfg}{\typeout{*** Local configuration file
+ #1.cfg used ***}}%
+ {\PackageWarning{caption}{Configuration
+ file #1.cfg not found}}}
+% \end{macrocode}
+%
+% \subsubsection*{Options for |figure| and |table|}
+%
+% \changes{v3.0a}{2004/01/09}{Options \opt{figureposition} and \opt{tableposition} added}
+% \begin{macrocode}
+\DeclareCaptionOption*{figureposition}{\captionsetup[figure]{position=#1}}
+\DeclareCaptionOption*{tableposition}{\captionsetup[table]{position=#1}}
+% \end{macrocode}
+%
+% \changes{v3.0d}{2004/08/03}{Options \opt{figurename} and \opt{tablename} added}
+% \begin{macrocode}
+\DeclareCaptionOption*{figurename}{\captionsetup[figure]{name=#1}}
+\DeclareCaptionOption*{tablename}{\captionsetup[table]{name=#1}}
+% \end{macrocode}
+%
+% \subsubsection*{caption \version{1.x} compatibility options}
+%
+% \begin{macrocode}
+\DeclareCaptionOption*{normal}[]{\caption@setformat{normal}}
+\DeclareCaptionOption*{isu}[]{\caption@setformat{hang}}
+\DeclareCaptionOption*{hang}[]{\caption@setformat{hang}}
+\DeclareCaptionOption*{center}[]{\caption@setjustification{centering}}
+\DeclareCaptionOption*{anne}[]{\caption@setjustification{centerlast}}
+\DeclareCaptionOption*{centerlast}[]{\caption@setjustification{centerlast}}
+% \end{macrocode}
+%
+% \begin{macrocode}
+\DeclareCaptionOption*{scriptsize}[]{\def\captionfont{\scriptsize}}
+\DeclareCaptionOption*{footnotesize}[]{\def\captionfont{\footnotesize}}
+\DeclareCaptionOption*{small}[]{\def\captionfont{\small}}
+\DeclareCaptionOption*{normalsize}[]{\def\captionfont{\normalsize}}
+\DeclareCaptionOption*{large}[]{\def\captionfont{\large}}
+\DeclareCaptionOption*{Large}[]{\def\captionfont{\Large}}
+% \end{macrocode}
+%
+% \begin{macrocode}
+\DeclareCaptionOption*{up}[]{\l@addto@macro\captionlabelfont\upshape}
+\DeclareCaptionOption*{it}[]{\l@addto@macro\captionlabelfont\itshape}
+\DeclareCaptionOption*{sl}[]{\l@addto@macro\captionlabelfont\slshape}
+\DeclareCaptionOption*{sc}[]{\l@addto@macro\captionlabelfont\scshape}
+\DeclareCaptionOption*{md}[]{\l@addto@macro\captionlabelfont\mdseries}
+\DeclareCaptionOption*{bf}[]{\l@addto@macro\captionlabelfont\bfseries}
+\DeclareCaptionOption*{rm}[]{\l@addto@macro\captionlabelfont\rmfamily}
+\DeclareCaptionOption*{sf}[]{\l@addto@macro\captionlabelfont\sffamily}
+\DeclareCaptionOption*{tt}[]{\l@addto@macro\captionlabelfont\ttfamily}
+% \end{macrocode}
+%
+% \begin{macrocode}
+\DeclareCaptionOption*{nooneline}[]{\caption@setbool{slc}{0}}
+% \end{macrocode}
+%
+% \begin{macrocode}
+\caption@setbool{ruled}{0}
+\DeclareCaptionOption*{ruled}[]{\caption@setbool{ruled}{1}}
+% \end{macrocode}
+%
+% \subsubsection*{Some caption2 \version{2.x} compatibility options}
+% \changes{v3.0h}{2005/07/08}{caption2 \version{2.x} compatibility options added}
+%
+% \begin{macrocode}
+\DeclareCaptionOption*{flushleft}[]{\caption@setjustification{raggedright}}
+\DeclareCaptionOption*{flushright}[]{\caption@setjustification{raggedleft}}
+\DeclareCaptionOption*{oneline}[]{\caption@setbool{slc}{1}}
+\DeclareCaptionOption*{ignoreLTcapwidth}[]{}
+% \end{macrocode}
+%
+% \subsubsection*{Some \KOMAScript\ compatibility options}
+% \changes{v3.0h}{2005/08/22}{\KOMAScript\ compatibility options added}
+%
+% \begin{macrocode}
+\DeclareCaptionOption*{onelinecaption}[]{\caption@setbool{slc}{1}}
+\DeclareCaptionOption*{noonelinecaption}[]{\caption@setbool{slc}{0}}
+\DeclareCaptionOption*{tablecaptionabove}[]{\captionsetup[table]{position=t}}
+\DeclareCaptionOption*{tablecaptionbelow}[]{\captionsetup[table]{position=b}}
+% \end{macrocode}
+%
+% \subsubsection*{Generic package support}
+%
+% \begin{macro}{\caption@declarepackage}
+% |\caption@declarepackage|\marg{package name}\par
+% Each single package support can be switched on or off by using the
+% appropriate option. By default all of them are enabled.
+% \begin{macrocode}
+\newcommand*\caption@declarepackage[1]{%
+ \caption@setbool{pkt@#1}{1}%
+ \DeclareCaptionOption*{#1}{\caption@setbool{pkt@#1}{##1}}}
+\AtEndOfPackage{\let\caption@declarepackage\@undefined}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@ifpackage}
+% \changes{v3.0f}{2005/05/29}{3rd argument \meta{code} added, so no extra check is needed}
+% |\caption@ifpackage|\marg{package name}\marg{package macro}\marg{code}\par
+% If a certain package support is requested the appropriate code will
+% be used. `Requested' means that the option belonging to it is set to
+% |true| and the macro called \meta{package macro} is defined.
+% (If \meta{package macro} is not yet defined we use |\AtBeginDocument|
+% here, so the package could be loaded after this package, too.)
+% \begin{macrocode}
+\newcommand\caption@ifpackage[3]{%
+% \end{macrocode}
+% \begin{macrocode}
+ \edef\caption@tempa{%
+ \caption@ifbool{pkt@#1}%
+ {\@ifundefined{#2}{AtBeginDocument}{firstofone}}%
+ {gobble}}%
+ \caption@Info{#1=\caption@ifbool{pkt@#1}{1}{0} %
+ (\@ifundefined{#2}{not }{}loaded->\caption@tempa)}%
+% \end{macrocode}
+% \begin{macrocode}
+ \caption@ifbool{pkt@#1}{%
+ \@ifundefined{#2}%
+ {\let\caption@tempa\AtBeginDocument}%
+ {\let\caption@tempa\@firstofone}%
+ }{%
+ \let\caption@tempa\@gobble
+ }%
+ \caption@tempa{\@ifundefined{#2}{}{#3}}%
+% \end{macrocode}
+%
+% \begin{macrocode}
+ \caption@undefbool{pkt@#1}}
+\AtEndOfPackage{\let\caption@ifpackage\@undefined}
+% \end{macrocode}
+% \end{macro}
+%
+% You can also switch the caption support off using the package option
+% |caption=false|.
+% This may look strange, but there are certain circumstances where this could
+% be useful.
+% Such a situation might be the usage of the \package{subfig} package without
+% disturbing the main caption code of the document class.\par
+% \emph{Note: This mechanism is obsolete now, it has been superseeded by the
+% \package{subfig} package option {\rm|caption=false|} which causes that only the
+% caption kernel \package{caption3} is loaded.}
+%
+% \begin{macrocode}
+\caption@declarepackage{caption}
+% \end{macrocode}
+%
+% These are the packages we support:
+%
+% \begin{macrocode}
+\caption@declarepackage{float}
+\caption@declarepackage{floatrow}
+\caption@declarepackage{hyperref}
+\caption@declarepackage{hypcap}
+\caption@declarepackage{listings}
+\caption@declarepackage{longtable}
+\caption@declarepackage{picins}
+\caption@declarepackage{rotating}
+\caption@declarepackage{sidecap}
+\caption@declarepackage{supertabular}
+% \end{macrocode}
+%
+% \subsubsection*{Processing of options}
+%
+% \changes{v3.0m}{2007/03/04}{Verbose option added to package}
+% \begin{macrocode}
+\DeclareCaptionOption{verbose}[1]{%
+ \caption@setbool{verbose}{#1}%
+ \caption@ifverbose{%
+ \def\caption@Info{\PackageInfo{caption}}%
+ }{%
+ \let\caption@Info\@gobble
+ }}
+\setkeys{caption}{verbose=0}
+% \end{macrocode}
+%
+% \begin{macrocode}
+\caption@ProcessOptions{caption}
+% \end{macrocode}
+%
+% If the option |caption=false| was given we stop processing this file
+% immediately.
+% \begin{macrocode}
+\caption@ifbool{pkt@caption}{}{\endinput}
+\caption@undefbool{pkt@caption}
+% \end{macrocode}
+%
+% \subsubsection*{Useful stuff}
+%
+% \begin{macro}{\captionof}
+% |\captionof|(|*|)\marg{type}\oarg{lst\_entry}\marg{heading}
+% \begin{macrocode}
+\def\captionof{\@ifstar{\caption@of{\caption*}}{\caption@of\caption}}
+\newcommand*\caption@of[2]{\def\@captype{#2}#1}
+% \end{macrocode}
+% \end{macro}
+%
+% Note: Like |\captionof| the option |type=| should only be used inside a
+% group or environment and does not check if the argument is a valid
+% floating environment or not.
+%
+% \changes{v3.0d}{2004/08/03}{Option \opt{name=} added}
+% \changes{v3.0d}{2004/08/03}{Option \opt{type=} added}
+% \begin{macrocode}
+\DeclareCaptionOption{name}{\caption@setfloatname\@captype{#1}}
+\DeclareCaptionOption{type}{\def\@captype{#1}}
+% \end{macrocode}
+%
+% \begin{macro}{\ContinuedFloat}
+% \changes{v3.0f}{2005/06/11}{Call of \cs{caption@ContinuedFloat} added}
+% \changes{v3.0i}{2005/11/12}{Optional argument and call of \cs{caption@@ContinuedFloat} added}
+% |\ContinuedFloat|\oarg{type}\par
+% This mainly decreases the appropriate counter by $-1$.
+% \begin{macrocode}
+\providecommand\ContinuedFloat{%
+ \@ifnextchar[%]
+ \@ContinuedFloat
+ {\ifx\@captype\@undefined
+ \@latex@error{\noexpand\ContinuedFloat outside float}\@ehd
+ \else
+ \@ContinuedFloat[\@captype]%
+ \fi}}
+\def\@ContinuedFloat[#1]{%
+ \addtocounter{#1}\m@ne
+ \caption@ContinuedFloat{#1}%
+ \caption@@ContinuedFloat{#1}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@ContinuedFloat}
+% \begin{macro}{\caption@resetContinuedFloat}
+% |\caption@ContinuedFloat|\marg{type}\par
+% |\caption@resetContinuedFloat|\marg{type}\par
+% The first one will be called inside |\ContinuedFloat|, the second one
+% inside |\caption|. Usually they do nothing but this changes if the
+% \package{hyperref} package is loaded. (See \package{hyperref} package
+% support for details.)
+% \begin{macrocode}
+\let\caption@ContinuedFloat\@gobble
+\let\caption@resetContinuedFloat\@gobble
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+%
+% \begin{macro}{\caption@@ContinuedFloat}
+% This hook is for foreign packages which link themself into |\ContinuedFloat|,
+% for example the \package{subfig} package\cite{subfig}.
+% \begin{macrocode}
+\providecommand*\caption@@ContinuedFloat[1]{}
+% \end{macrocode}
+% \end{macro}
+%
+% \subsubsection*{Internal helpers}
+%
+% \begin{macro}{\caption@begin}
+% \changes{v3.0a}{2004/01/23}{\cs{caption@settype} changed by \cs{caption@setfloattype}}
+% \changes{v3.0e}{2005/04/12}{Check for default label format added}
+% \changes{v3.0f}{2005/06/11}{Call of \cs{caption@resetContinuedFloat} added}
+% Our handling of |\caption| will always be surrounded by
+% |\caption@begin| (or |\caption@beginex|) and |\caption@end|.\par
+% |\caption@begin|\marg{type} performs these tasks:
+% \begin{itemize}
+% \item Call |\caption@resetContinuedFloat| (see above)
+% and start a new group
+% \item Execute the options set with |\captionsetup|\oarg{type}
+% \item Define |\fnum@|\meta{type} if the caption label format is set
+% to non-default
+% \item Override the |position=| setting, if necessary
+% (for example if set to |auto| or used inside a |supertabular|)
+% \end{itemize}
+% \begin{macrocode}
+\newcommand*\caption@begin[1]{%
+ \caption@resetContinuedFloat{#1}%
+ \begingroup
+% \end{macrocode}
+% \begin{macrocode}
+ \caption@setfloattype{#1}%
+% \end{macrocode}
+%
+% \begin{macrocode}
+ \ifx\caption@lfmt\caption@lfmt@default\else
+ \@namedef{fnum@#1}{%
+ \caption@lfmt{\caption@floatname{#1}}{\@nameuse{the#1}}}%
+ \fi
+% \end{macrocode}
+%
+% \begin{macrocode}
+ \caption@fixposition
+ \global\let\caption@fixedposition\caption@position}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@beginex}
+% \changes{v3.0b}{2004/05/16}{Support of \opt{listof=} added}
+% \changes{v3.0h}{2005/09/16}{Bugfix: Made this macro and \cs{addcontentsline} \cs{long}}
+% \changes{v3.0l}{2007/02/04}{Takes now 3 args instead of 2, check for empty heading added}
+% |\caption@beginex|\marg{type}\marg{list entry}\marg{heading}\\
+% performs the same tasks as |\caption@begin| and additionally:
+% Redefine |\addcontentsline| if no list-of entry is requested, that
+% means either the argument \meta{list entry} is empty or |listof=| was
+% set to |false|.
+% \begin{macrocode}
+\newcommand\caption@beginex[3]{%
+ \caption@begin{#1}%
+% \end{macrocode}
+%
+% \begin{macrocode}
+ \caption@iflof%
+ {\def\caption@tempa{#2}}%
+ {\let\caption@tempa\@empty}%
+ \ifx\caption@tempa\@empty
+ \long\def\addcontentsline##1##2##3{}% There is no \@gobblethree...
+ \fi
+% \end{macrocode}
+%
+% \begin{macrocode}
+ \caption@ifempty{#3}{\let\caption@ifempty\@secondoftwo}%
+% \end{macrocode}
+%
+% \begin{macrocode}
+}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@end}
+% |\caption@end| closes the group.
+% \begin{macrocode}
+\newcommand*\caption@end{%
+ \endgroup
+% \end{macrocode}
+%
+% \begin{macrocode}
+ \let\caption@position\caption@fixedposition}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@setfloattype}
+% \changes{v3.0a}{2004/01/23}{This macro added}
+% |\caption@setfloattype|\marg{type}\\
+% sets up the right float type within |\@caption|, |\LT@makecaption| etc.
+% Usually this is equivalent to |\caption@settype| but I made it an own macro so
+% I can extend it later on, for example if the \package{float} or
+% \package{sidecap} package is loaded.
+% \begin{macrocode}
+\let\caption@setfloattype\caption@settype
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@letfloattype}
+% \changes{v3.0b}{2004/05/16}{This macro added}
+% \changes{v3.0e}{2005/05/05}{Argument \meta{extra code} added}
+% |\caption@letfloattype|\marg{type}\marg{extra code}\\
+% redefines |\caption@setfloattype| so it does not only
+% |\caption@settype|\marg{type} but two additional tasks:
+% Executing extra code given as second argument and
+% execute options with |\caption@settype{#1}| afterwards.\par
+% You can find an example of its usage in the \package{longtable}
+% support, where this macro is called so
+% |\captionsetup[longtable]{|\ldots|}| can be used to setup options
+% for longtables which have a higher priority than the options which
+% have been setup with |\captionsetup[table]{|\ldots|}| or
+% |\setlength\LTcapwidth{|\ldots|}|.
+% \begin{macrocode}
+\newcommand*\caption@letfloattype[2]{%
+ \def\caption@setfloattype##1{%
+ \caption@settype{##1}#2\caption@settype{#1}}}
+% \end{macrocode}
+% \end{macro}
+%
+% \changes{v3.0a}{2004/01/23}{Internal hooks \cs{caption@@begin} \& \cs{caption@@end} added}
+% \changes{v3.0h}{2005/10/06}{Internal hooks \cs{caption@@begin} \& \cs{caption@@end} removed}
+% \changes{v3.0d}{2004/08/03}{\cs{caption@setfloatname} added}
+%
+% \begin{macro}{\caption@floatname}
+% |\caption@floatname|\marg{type}\par
+% Usually all float names (which partly build the caption label)
+% follow the same naming convention. But some packages (for example
+% the \package{float} package) do not, so we use this wrapper macro which
+% can be changed later on.
+% \begin{macrocode}
+\newcommand*\caption@floatname[1]{\@nameuse{#1name}}
+\newcommand*\caption@setfloatname[1]{\@namedef{#1name}}
+% \end{macrocode}
+% \end{macro}
+%
+% \subsubsection*{Caption support}
+%
+% \iffalse\begin{quote}
+% \small\emph{Note:}
+% Our aim is patching the existing |\caption| code so changes done by other
+% packages will not get lost. We do similar in our \package{float},
+% \package{hyperref}, and \package{hypcap} support so get the disadvantage
+% of having ugly code with some negative side-effects, like the non-working
+% |\caption{}| feature when the \package{french(le)} or \package{hyperref}
+% package is loaded.
+% \end{quote}\fi
+%
+% Some packages (like the \package{hyperref} package for example) redefines
+% |\caption| and |\@caption|, too, but without chaining to their previous
+% definitions. So we have to use |\AtBeginDocument| here, so we can make sure
+% our definition don't get lost.
+%
+% \begin{macrocode}
+\AtBeginDocument{%
+% \end{macrocode}
+%
+% We only patch |\caption| and |\@caption| if the \package{captcont} package
+% (which brings it's own definition of |\caption*|) is not used.
+% It does not make much sense using the actual version of the \package{caption}
+% package with the \package{captcont} package, but this was different in the
+% old (\version{1.x}) days so we take care to be backward compatible.
+%
+% \begin{macrocode}
+ \@ifundefined{cc@caption}{%
+ \@ifundefined{caption@old}{%
+% \end{macrocode}
+%
+% \begin{macro}{\caption}
+% \iffalse\changes{v3.0}{2003/07/18}{Bugfix: \cs{global} added, so this works with sidecap}\fi
+% \changes{v3.0f}{2005/05/22}{Bugfix: \cs{ContinuedFloat} added}
+% \changes{v3.0f}{2005/06/13}{Support of \cs{caption*[]} removed}
+% \changes{v3.0l}{2007/01/19}{Minimal support of \textsf{combine} package added}
+% Here comes our definition of |\caption| and |\caption*|.
+% (We set |\caption@startrue| globally so it works with the \package{sidecap} package, too.)
+% \begin{macrocode}
+ \let\caption@old\caption
+ \def\caption{\caption@caption\caption@old}%
+ \def\caption@caption#1{%
+ \@ifstar{\ContinuedFloat\global\caption@startrue#1[]}{#1}}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\@caption}
+% Our definition of |\@caption| simply calls the old definition,
+% nested by |\caption@beginex| and |\caption@end|.
+% \begin{macrocode}
+ \let\caption@@old\@caption
+ \long\def\@caption#1[#2]#3{%
+ \caption@beginex{#1}{#2}{#3}%
+ \caption@@old{#1}[{#2}]{#3}%
+ \caption@end}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+ }{}}{%
+% \end{macrocode}
+%
+% \changes{v3.0c}{2004/07/16}{Bugfix 04-07-15: \package{captcont} support fixed}
+% Minimum \package{captcont} package support:\\
+% We define |\caption@caption| here so it's there but does not make any harm.
+%
+% \begin{macrocode}
+ \caption@Info{captcont package v2.0 detected}%
+ \def\caption@caption#1{#1}%
+ }%
+}
+% \end{macrocode}
+%
+% \begin{macro}{\@makecaption}
+% |\@makecaption|\marg{label}\marg{text}\par
+% The original code (from |latex/base/classes.dtx|):
+% \begin{verbatim}
+% \long\def\@makecaption#1#2{%
+% \vskip\abovecaptionskip
+% \sbox\@tempboxa{#1: #2}%
+% \ifdim \wd\@tempboxa >\hsize
+% #1: #2\par
+% \else
+% \global \@minipagefalse
+% \hb@xt@\hsize{\hfil\box\@tempboxa\hfil}%
+% \fi
+% \vskip\belowcaptionskip}
+% \end{verbatim}
+% We do basically the same, but take care of the |position=| setting
+% and use |\caption@@make| from the \package{caption} kernel to actually
+% typeset the caption.
+% \begin{macrocode}
+\renewcommand\@makecaption[2]{%
+ \caption@iftop{\vskip\belowcaptionskip}{\vskip\abovecaptionskip}%
+ \caption@@make{#1}{#2}%
+ \caption@iftop{\vskip\abovecaptionskip}{\vskip\belowcaptionskip}}
+% \end{macrocode}
+% \end{macro}
+%
+% \subsubsection*{\package{\KOMAScript} classes support}
+% \changes{v3.0a}{2004/01/18}{Minimum adaptation to \KOMAScript\ added}
+% \changes{v3.0h}{2005/08/22}{\cs{PackageInfo} added to \KOMAScript\ support}
+% \changes{v3.0i}{2005/11/17}{\KOMAScript\ compatibility commands added}
+% \changes{v3.0l}{2007/02/18}{\KOMAScript\ compatibility revised}
+% \changes{v3.0q}{2007/04/16}{\KOMAScript\ compatibility revised}
+%
+% \begin{macrocode}
+\@ifundefined{scr@caption}{}{%
+ \caption@Info{KOMA-Script class detected}
+ \AtBeginDocument{\let\scr@caption\caption}
+% \end{macrocode}
+%
+% \begin{macro}{\onelinecaptionsfalse}
+% \begin{macro}{\onelinecaptionstrue}
+% \begin{macrocode}
+ \def\onelinecaptionstrue{\caption@setbool{slc}{1}}
+ \def\onelinecaptionsfalse{\caption@setbool{slc}{0}}
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+%
+% \begin{macro}{\captionabove}
+% \begin{macro}{\captionbelow}
+% \changes{v3.0j}{2006/03/21}{Bugfix 06-03-21: \cs{let}\cs{caption@setposition}\cs{@gobble} added}
+% \changes{v3.0n}{2006/03/09}{Accidentally this got broken in \version{3.0m}, fixed}
+% Original code:
+% \begin{verbatim}
+% \newcommand{\captionabove}{\@captionabovetrue\scr@caption}
+% \newcommand{\captionbelow}{\@captionabovefalse\scr@caption}
+% \end{verbatim}
+% \begin{macrocode}
+ \def\captionabove{%
+ \caption@setposition{t}\let\caption@setposition\@gobble
+ \scr@caption}
+ \def\captionbelow{%
+ \caption@setposition{b}\let\caption@setposition\@gobble
+ \scr@caption}
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+%
+% \begin{macrocode}
+}
+% \end{macrocode}
+%
+% \subsubsection*{\package{french(le)} package support}
+% \changes{v3.0h}{2005/10/03}{Minimum adaptation to \package{french(le)} added}
+%
+% \begin{macrocode}
+\AtBeginDocument{\@ifundefined{f@ffrench}{}{%
+ \caption@Info{french(le) package detected}%
+% \end{macrocode}
+%
+% If |\GOfrench| is defined as |\relax| all the re-definitions regarding
+% captions have already been done, so we can do our patches immediately.
+% Otherwise we must add our stuff to |\GOfrench|.
+%
+% \begin{macrocode}
+ \@ifundefined{GOfrench}%
+ {\let\caption@tempa\@firstofone}%
+ {\def\caption@tempa{\g@addto@macro\GOfrench}}%
+ \caption@tempa{%
+% \end{macrocode}
+%
+% \begin{macro}{\@cnORI}
+% We update the definition of |\@cnORI| so it actually reflects
+% our definition of |\caption|.
+% \begin{macrocode}
+ \let\@cnORI\caption
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\@tablescaption}
+% The \package{french(le)} package sets |\caption| to |\@tablescaption| at
+% |\begin{table}| for special treatment of footnotes.
+% Therefore we have to patch |\@tablescaption| so |\caption*| will work
+% inside the |table| environment.
+% \begin{macrocode}
+ \let\caption@tablescaption\@tablescaption
+ \def\@tablescaption{\caption@caption\caption@tablescaption}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\f@ffrench}
+% \begin{macro}{\f@tfrench}
+% |\f@ffrench| and |\f@tfrench| reflect |\fnum@figure| and |\fnum@table|
+% when used in french mode. These contain additional code which typesets
+% the caption separator |\captionseparator| instead of the usual colon.
+% Because this breaks with our |\@makecaption| code we have to remove
+% this additional code here.
+% \begin{macrocode}
+ \let\@eatDP\@undefined
+ \let\caption@tempa\@empty
+ \ifx\f@ffrench\fnum@figure
+ \l@addto@macro\caption@tempa{\let\fnum@figure\f@ffrench}%
+ \fi
+ \ifx\f@tfrench\fnum@table
+ \l@addto@macro\caption@tempa{\let\fnum@table\f@tfrench}%
+ \fi
+ \def\f@ffrench{\ifx\listoffigures\relax\else\figurename~\thefigure\fi}%
+ \def\f@tfrench{\ifx\listoftables\relax\else\tablename~\thetable\fi}%
+ \caption@tempa
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+%
+% \begin{macrocode}
+}}}
+% \end{macrocode}
+%
+% \subsubsection*{\package{float} package support}
+% \changes{v3.0f}{2005/05/31}{\package{float} package support rewritten and improved}
+% \iffalse
+% (This is a more straight-ahead implementation, but it only works with v1.3
+% now, so v1.2 is no longer supported. The old code including documentation
+% can be found in caption-30f-050530.zip)
+% \fi
+%
+% The \package{float} package usually do not use the \LaTeX\ kernel command
+% |\@caption| to typeset the caption but |\float@caption| instead.
+% (|\@caption| will only be used if the float is re-styled with
+% |\restylefloat*|.)
+%
+% The main two things |\float@caption| is doing different are:
+% \begin{itemize}
+% \item The caption will be typeset inside a savebox called |\@floatcapt| so
+% it can be placed above or below the float contents afterwards.
+% \item |\@makecaption| will not be used to finally typeset the caption.
+% Instead |\@fs@capt| will be used which definition is part of the float
+% style.
+% (Note that |\@fs@capt| will not typeset any vertical space above or below
+% the caption; instead this space will be typeset by the float style code
+% itself.)
+% \end{itemize}
+%
+% So our main goal is to re-define |\float@caption| so our macro
+% |\caption@@make| will be used instead of |\@fs@capt|.
+%
+% To allow different caption styles for different float styles we will also
+% determine the current float style (e.g. `ruled') at run time and select
+% a caption style (and additional settings) with the same name, if defined.
+%
+% \begin{macro}{\caption@setfloatposition}
+% First of all we provide a macro which converts |\@fs@iftopcapt| (which
+% is part of a float style and controls where the caption will be typeset,
+% above or below the float contents) to our |position=| setting. Since the
+% spacing above and below the caption will be done by the float style and
+% \emph{not} by us this sounds quite useless. But in fact it isn't, since some
+% packages based on the \package{caption} package (like the \package{subfig}
+% package) could have an interest for this information and therefore use the
+% |\caption@iftop| macro we provide in our kernel. Furthermore we need this
+% information for ourself in |\captionof| which uses |\@makecaption| to
+% finally typeset the caption with skips.
+% \begin{macrocode}
+\def\caption@setfloatposition{%
+ \caption@setposition{\@fs@iftopcapt t\else b\fi}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+\caption@ifpackage{float}{@float@setevery}{%
+ \caption@Info{float package v1.3 (or newer) detected}%
+% \end{macrocode}
+%
+% Since |\float@caption| puts the float contents into a savebox we need
+% a special version of |\captionof| which `unfolds' this box afterwards,
+% so the caption actually gets typeset. Furthermore we have to typeset
+% the spacing above and below the caption for ourself, since this space is
+% not part of the box.
+%
+% Please note that this version of |\captionof| only works \emph{outside}
+% floating environments defined with the float package, so for example
+% a |\captionof{Program}| used within a `standard' |figure| or a
+% |minipage| will work fine, but not within a re-styled |figure| or
+% an |Example| environment defined with |\newfloat|.
+% (We don't check for this so you'll get wired errors if you try to do so!)
+%
+% \begin{macro}{\caption@of@float}
+% Usually no special action is necessary, so we define |\caption@of@float|
+% to |\@gobble|. We will redefine it later on to |\@firstofone| to activate
+% the code which `unfolds' the savebox.
+% \begin{macrocode}
+ \let\caption@of@float\@gobble
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@of}
+% If the float is defined by the float package (which means |\fst@|\meta{type}
+% is defined) we activate the special treatment for such captions typeset
+% with |\captionof|. Furthermore we `execute' this float style, so
+% |\@fs@iftopcapt| is set to its proper value.
+% \begin{macrocode}
+ \renewcommand*\caption@of[2]{%
+ \@ifundefined{fst@#2}{}{%
+ \let\caption@of@float\@firstofone
+ \@nameuse{fst@#2}\@float@setevery{#2}}%
+ \def\@captype{#2}#1}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\float@caption}
+% \changes{v3.0h}{2005/08/23}{Bugfix 05-08-12: \cs{captionof} sets hyperref anchor now}
+% Our version of |\float@caption| nearly looks like our version of |\@caption|.
+% The main differences are that |\@fs@capt| will be replaced by our |\caption@@make|
+% and that the savebox called |\@floatcapt| will be unfolded if requested by
+% |\captionof|. (see above)
+% \begin{macrocode}
+ \let\caption@@float\float@caption
+ \long\def\float@caption#1[#2]#3{%
+ \caption@beginex{#1}{#2}{#3}%
+ \let\@fs@capt\caption@@make
+ \caption@@float{#1}[{#2}]{#3}%
+% \end{macrocode}
+%
+% \begin{macrocode}
+ \caption@of@float{%
+% \end{macrocode}
+% If the \package{hyperref} package is loaded, we need to set the appropriate
+% anchor for ourself. To do so without adding extra vertical space we need
+% to save (and restore) |\prevdepth| and switch off the interline skip.
+% \begin{macrocode}
+ \@ifundefined{hyper@@anchor}{}{%
+ \begingroup
+ \@tempdima\prevdepth
+ \nointerlineskip
+ \let\leavevmode\relax
+ \hyper@@anchor\@currentHref\relax
+ \prevdepth\@tempdima
+ \endgroup}%
+% \end{macrocode}
+%
+% \begin{macrocode}
+ \def\caption@@make##1##2{\unvbox\@floatcapt}%
+ \@makecaption{}{}}%
+% \end{macrocode}
+%
+% \begin{macrocode}
+ \caption@end}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\@float@setevery}
+% |\@float@setevery|\marg{float type} is provided by the \package{float} package;
+% it's called every time a floating environment defined with |\newfloat| or
+% |\restylefloat| begins.
+% We use this hook to do some adaptations and to setup the proper caption style
+% (if defined) and additional settings declared with
+% |\captionsetup|\oarg{float style}.
+% \begin{macrocode}
+ \let\caption@float@setevery\@float@setevery
+ \def\@float@setevery#1{%
+% \end{macrocode}
+%
+% \LaTeX{} and most packages use |\|\meta{type}|name|
+% to provide a macro for the float name -- for example the command
+% |\figurename| will usually contain the name of the floating environment
+% |figure|:
+% \begin{quote}
+% |\newcommand\figurename{Figure}|
+% \end{quote}
+%
+% But the \package{float} package don't follow this naming convention,
+% it uses |\fname@|\meta{type} instead. So we have to adapt
+% |\caption@floatname| here, so our captions will be still ok.
+%
+% \begin{macrocode}
+ \def\caption@floatname##1{\@nameuse{fname@#1}}%
+ \def\caption@setfloatname##1{\@namedef{fname@#1}}%
+% \end{macrocode}
+%
+% Both |\newfloat| and |\restylefloat| save the \emph{actual} definition of
+% |\@caption| or |\float@caption| in |\@float@c@|\meta{captype} with |\let|
+% (instead of using |\def|), so redefinitions of |\@caption| (and of course
+% our redefinition of |\float@caption|) will never been used if the
+% |\newfloat| or |\restylefloat| command takes place in front of the
+% redefinitions provided by the \package{caption} or other packages like the
+% \package{hyperref} package.
+%
+% So here we determine if the user has used |\restylefloat| or
+% |\restylefloat*| and bring |\@float@c@|\meta{captype} up-to-date.
+% This is quite easy: If |\@float@c@|\meta{captype} is the same as the
+% original or our own definition of |\float@caption|, the user has used
+% |\restylefloat| (and |\float@caption| should be used), otherwise
+% we assume he has used |\restylefloat*| (and |\@caption| should be used).
+% (This test will fail if some other package re-defines |\float@caption|,
+% too, so we have to assume that we are the only one.)
+%
+% \begin{macrocode}
+ \expandafter\let\expandafter\caption@tempa\csname @float@c@#1\endcsname
+ \ifx\caption@tempa\float@caption
+ \else\ifx\caption@tempa\@caption
+ \else\ifx\caption@tempa\caption@@float
+ \caption@Info{\protect\@float@c@#1\space := \protect\float@caption}%
+ \expandafter\let\csname @float@c@#1\endcsname\float@caption
+ \else
+ \caption@Info{\protect\@float@c@#1\space := \protect\@caption}%
+ \expandafter\let\csname @float@c@#1\endcsname\@caption
+ \fi\fi\fi
+% \end{macrocode}
+%
+% If the floating environment is defined with |\newfloat| or |\restylefloat|
+% (and \emph{not} with |\restylefloat*|), |\@float@c@|\meta{type}
+% will now be identical to |\float@caption|.
+%
+% \begin{macrocode}
+ \expandafter\ifx\csname @float@c@#1\endcsname\float@caption
+% \end{macrocode}
+%
+% First of all we set the caption position to it's proper value.
+% (See above definition of |\caption@setfloatposition|)
+%
+% \begin{macrocode}
+ \caption@setfloatposition
+% \end{macrocode}
+%
+% Now we'll have to determine the current float style.
+% This is not so easy because the only hint provided by the \package{float}
+% package is the macro |\fst@|\meta{float type} which points to the macro
+% which represents the float style.
+% So for example after
+% \begin{quote}
+% |\floatstyle{ruled}|\\
+% |\newfloat{Program}{tbp}{lop}|
+% \end{quote}
+% |\fst@Program| will be defined as
+% \begin{quote}
+% |\def\fst@Program{\fs@ruled}|\quad.
+% \end{quote}
+%
+% So here is what we do: We copy |\fst@|\meta{float type} to |\caption@fst| and
+% make it a string so we can gobble the first four tokens (= |\fs@|), so only the
+% the name of the float style is left.
+%
+% \begin{macrocode}
+ \expandafter\let\expandafter\caption@fst\csname fst@#1\endcsname
+ \edef\caption@fst{\noexpand\string\expandafter\noexpand\caption@fst}%
+ \edef\caption@fst{\noexpand\@gobblefour\caption@fst}%
+% \edef\caption@fst{\caption@fst}%
+% \end{macrocode}
+%
+% |\caption@fst| now contains the float style (e.g. `ruled')
+% so we can use it to set the corresponding style (if defined) and additional options.
+%
+% \begin{macrocode}
+ \caption@setstyle*\caption@fst
+ \caption@settype\caption@fst
+% \end{macrocode}
+%
+% \begin{macrocode}
+ \fi
+% \end{macrocode}
+%
+% \begin{macrocode}
+ \caption@float@setevery{#1}}%
+% \end{macrocode}
+% \end{macro}
+%
+% \changes{v3.0f}{2005/06/26}{Skips of \env{plaintop} and \env{boxed} floats corrected}
+%
+% \begin{macro}{\fs@plaintop}
+% \begin{macro}{\fs@boxed}
+% The float styles |plaintop| and |boxed| don't use our skip which can be set
+% with |skip=| : |plaintop| uses |\belowcaptionskip| instead of
+% |\abovecaptionskip|, and |boxed| uses a fixed space of |2pt|.
+% So we patch the according float style macros here to change this.
+% \begin{macrocode}
+ \g@addto@macro\fs@plaintop{\def\@fs@mid{\vspace\abovecaptionskip\relax}}%
+ \g@addto@macro\fs@boxed{\def\@fs@mid{\kern\abovecaptionskip\relax}}%
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+%
+% \begin{macrocode}
+}
+% \end{macrocode}
+%
+% The skip between `boxed' floats and their caption defaults to |2pt|.
+%
+% \begin{macrocode}
+\captionsetup[boxed]{skip=2pt}
+% \end{macrocode}
+%
+% \changes{v3.0f}{2005/05/26}{\opt{strut=0} added to caption style \opt{ruled}}
+% \changes{v3.0f}{2005/05/27}{Option \opt{ruled} fixed}
+% To emulate the `ruled' definition of |\@fs@capt| we provide a caption style
+% `ruled' with appropriate options. But if the package option |ruled| was
+% specified, we setup some caption parameters to emulate the behaviour
+% of the \package{caption} package \version{1.x} option |ruled| instead:
+% The current caption settings will be used, but without margin and without
+% `single-line-check'.
+% \begin{macrocode}
+\caption@ifbool{ruled}{%
+ \captionsetup[ruled]{margin=0pt,singlelinecheck=0}%
+}{%
+ \DeclareCaptionStyle{ruled}{labelfont=bf,labelsep=space,strut=0}%
+}
+\caption@undefbool{ruled}
+% \end{macrocode}
+%
+% \subsubsection*{\package{floatrow} package support}
+% \changes{v3.0f}{2005/06/01}{Support of the \package{floatrow} package added}
+%
+% The \package{floatrow} package is already adapted for usage with the
+% \package{caption} package. So the main work has already been done by
+% Mrs.Lapko, there are only two little things we have to take care about:
+%
+% \begin{macrocode}
+\caption@ifpackage{floatrow}{flrow@setlist}{%
+ \caption@Info{floatrow package v0.1f (or newer) detected}%
+% \end{macrocode}
+%
+% \begin{macro}{\caption@of}
+% Captions typeset with |\captionof| should have the correct layout,
+% so we have to `activate' this layout here with |\flrow@setlist|.
+% \par{\small (Please note that this version of |\captionof| has the same
+% restrictions than the |\captionof| offered for floating environments
+% defined with the \package{float} package, see above.)}
+% \begin{macrocode}
+ \renewcommand*\caption@of[2]{%
+ \def\@captype{#2}\flrow@setlist{{#2}}#1}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@floatname}
+% The \package{floatrow} package follows the same naming convention
+% as the \package{float} package; so we have to adapt |\caption@floatname|
+% here, too.
+% \begin{macrocode}
+ \renewcommand*\caption@floatname[1]{%
+ \@nameuse{\@ifundefined{fname@#1}{#1name}{fname@#1}}}%
+ \renewcommand*\caption@setfloatname[1]{%
+ \@namedef{\@ifundefined{fname@#1}{#1name}{fname@#1}}}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+}
+% \end{macrocode}
+%
+% \subsubsection*{\package{hyperref} package support}
+% \changes{v3.0f}{2005/06/11}{Support of the \package{hyperref} package added}
+%
+% When the \package{hyperref} package is used we have the problem
+% that the usage of |\ContinuedFloat| will create duplicate
+% hyperlinks -- both |\@currentHlabel| and |\@currentHref| will be the same
+% for the main float and the continued ones. So we have to make sure
+% unique labels and references will be created each time. We do this
+% by extending |\theHfigure| and |\theHtable|, so for continued floats
+% the scheme
+% \begin{quote}\meta{type}|.|\meta{type \#}|.|\meta{continue \#}\end{quote}
+% will be used instead of
+% \begin{quote}\meta{type}|.|\meta{type \#}\quad\quad.\end{quote}
+% \par{\small(This implementation follows an idea from Steven Douglas Cochran.)}
+% \par{\small Note: This does not help if |\Hy@naturalnamestrue| is set.}
+%
+% \begin{macrocode}
+\caption@ifpackage{hyperref}{theHfigure}{%
+ \caption@Info{hyperref package v6.74m (or newer) detected}%
+% \end{macrocode}
+%
+% \begin{macro}{\caption@ContinuedFloat}
+% \changes{v3.0g}{2005/06/28}{Bugfix: \cs{newcounter} replaced by \cs{newcount}}
+% \changes{v3.0p}{2007/04/08}{\cs{newcount} replaced by \cs{caption@newcounter}}
+% If |\theH|\meta{type} is defined, we extend it with |.|\meta{continue \#}.
+% Furthermore we set |\caption@resetContinuedFloat| to |\@gobble| so the
+% continuation counter will not be reset to zero inside |\caption|.
+% \begin{macrocode}
+ \def\caption@ContinuedFloat#1{%
+ \@ifundefined{theH#1}{}{%
+ \@ifundefined{CF@#1}{%
+ \expandafter\caption@newcounter\csname CF@#1\endcsname
+ \caption@resetContinuedFloat{#1}}{}%
+ \expandafter\caption@stepcounter\csname CF@#1\endcsname
+ \expandafter\l@addto@macro\csname theH#1\endcsname{%
+ .\csname CF@#1\endcsname}%
+ \let\caption@resetContinuedFloat\@gobble
+ }}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@resetContinuedFloat}
+% If a continuation counter is defined, we reset it.
+% \begin{macrocode}
+ \def\caption@resetContinuedFloat#1{%
+ \@ifundefined{CF@#1}{}{%
+ \expandafter\caption@setcounter\csname CF@#1\endcsname0}}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+}
+% \end{macrocode}
+%
+% \subsubsection*{\package{hypcap} package support}
+% \changes{v3.0f}{2005/06/22}{Support of the \package{hypcap} package added}
+% \changes{v3.0l}{2007/02/20}{Adapted to \package{hypcap} v1.6}
+% \changes{v3.0p}{2007/04/09}{Adapted to \package{hypcap} v1.7}
+%
+% When the \package{hypcap} package is used the following problems occur:
+% \begin{enumerate}
+% \item The \package{hypcap} package uses |\capstart|, |\hc@caption|, and
+% |\hc@@caption| instead of |\caption| and |\@caption|.\footnote{This issue
+% was fixed in \package{hypcap} \version{1.7}}
+% So we have to patch these macros, too.
+% \item |\caption| will be saved to |\hc@org@caption| when the
+% \package{hypcap} package is loaded.
+% We have to change this so our definition of |\caption| will always be
+% used.
+% \item Both, |\capstart| and |\hc@@caption|, call |\hyper@makecurrent|.
+% But since we offer |\ContinuedFloat| the float counters could have changed
+% between these both calls! So we fix this by saving the \package{hyperref}
+% reference (= |\@currentHref|) in |\capstart| and restoring it later on in
+% |\hc@@caption|.
+% \par{\small (This also fixes the problem that \package{hypcap} does not
+% work if |\Hy@hypertexnamesfalse| is set.\footnote{This issue was fixed
+% in \package{hypcap} \version{1.6}} This come in handy; we set
+% it locally to avoid duplicated \package{hyperref} labels which could
+% occur if |\ContinuedFloat| will be used.)}
+% \item |\capstart| will call |\H@refstepcounter| to increase the float
+% number. This collides with a following |\ContinuedFloat|, too, so we have
+% to move this call from here to |\caption|. (Since we set
+% |\Hy@hypertexnamesfalse| we can do this without problems.)
+% \end{enumerate}
+%
+% \begin{macrocode}
+\caption@ifpackage{hypcap}{hc@caption}{%
+ \caption@Info{hypcap package v1.0 (or newer) detected}%
+% \end{macrocode}
+%
+% \begin{macro}{\capstart}
+% \changes{v3.0l}{2007/02/20}{\cs{caption@currentHref} renamed to \cs{hc@currentHref}}
+% Here comes our version of |\capstart|:
+% \begin{macrocode}
+ \let\caption@capstart\capstart
+ \def\capstart{%
+% \end{macrocode}
+% First of all we update |\hc@org@caption| to correct the problem that the
+% \package{hypcap} package has saved an older definition of |\caption|.
+% \begin{macrocode}
+ \let\hc@org@caption\caption
+% \end{macrocode}
+% Since we don't know the float counter yet (it could be changed with
+% |\ContinuedFloat| afterwards!) we make sure |\H@refstepcounter| will
+% not be used and |\Hy@hypertexnamesfalse| is set, so unique
+% \package{hyperref} labels will be generated by the original
+% definition of |\capstart|.
+% Afterwards we save the reference which was generated by
+% |\hyper@makecurrent|.
+% \begin{macrocode}
+ \begingroup
+ \let\H@refstepcounter\@gobble
+ \Hy@hypertexnamesfalse
+ \caption@capstart
+ \@ifundefined{hc@hyperref}{}{% hypcap v1.7
+ \global\advance\csname c@\@captype\endcsname\@ne}%
+ \global\let\hc@currentHref\@currentHref
+ \endgroup
+% \end{macrocode}
+%
+% The \package{hypcap} package restores the previous definition of |\caption|
+% inside |\hc@@caption|. But since we will call this inside a group later on
+% (making this restauration non-working), we have to make this for ourself
+% inside |\caption|.
+% (This would not be necessary if \package{hypcap} would do this inside
+% |\hc@caption| instead of |\hc@@caption|.)\par
+% Additionally we increase the float counter here (since we have suppressed this
+% in |\capstart|) and use |\caption@caption| here, so |\caption*| will work as
+% expected.
+% (This is surrounded by |\hc@hyperref| so it does not make any harm when used
+% with \package{hypcap} \version{1.7}.)
+% \begin{macrocode}
+ \@ifundefined{hc@hyperref}%
+ {\let\next\@firstofone}{\let\next\hc@hyperref}% hypcap v1.7
+ \next{\def\caption{%
+ \let\caption\hc@org@caption
+ \H@refstepcounter\@captype
+ \@ifundefined{hc@hyperref}{}{% hypcap v1.7
+ \global\advance\csname c@\@captype\endcsname\m@ne}%
+ \caption@caption\hc@caption}}%
+% \end{macrocode}
+% \begin{macrocode}
+ }%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\hc@@caption}
+% Here comes our version of |\hc@@caption|:
+% \begin{macrocode}
+ \let\caption@hc@@caption\hc@@caption
+ \long\def\hc@@caption#1[#2]#3{%
+ \caption@beginex{#1}{#2}{#3}%
+% \end{macrocode}
+%
+% Beside the usual |\caption@begin| and |\caption@end| stuff (to support local
+% options etc.) we make sure our saved \package{hyperref} reference will be
+% used.
+% \begin{macrocode}
+ \let\caption@hyper@makecurrent\hyper@makecurrent
+ \def\hyper@makecurrent\@captype{%
+ \let\hyper@makecurrent\caption@hyper@makecurrent
+ \global\let\@currentHref\hc@currentHref}%
+% \end{macrocode}
+%
+% \begin{macrocode}
+ \caption@hc@@caption{#1}[{#2}]{#3}%
+ \caption@end}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+}
+% \end{macrocode}
+%
+% \subsubsection*{\package{listings} package support}
+% \changes{v3.0b}{2004/05/16}{Support of the \package{listings} package added}
+%
+% \begin{macrocode}
+\caption@ifpackage{listings}{lst@MakeCaption}{%
+ \caption@Info{listings package v1.2 (or newer) detected}%
+% \end{macrocode}
+%
+% \begin{macro}{\lst@MakeCaption}
+% To support the \package{listings} package we need to redefine
+% |\lst@MakeCaption| so the original stuff is nested with
+% |\caption@begin| and |\caption@end|.
+% \begin{macrocode}
+ \let\caption@lst@MakeCaption\lst@MakeCaption
+ \def\lst@MakeCaption#1{%
+% \end{macrocode}
+%
+% If the |position=| is set to |auto|, we take over the |captionpos=| setting
+% from the \package{listings} package.
+% Note that we won't do this otherwise, so \package{listings} settings like
+% |abovecaptionskip=0pt,belowcaptionskip=10pt,captionpos=t| will \emph{not}
+% cause different outputs with or without the \package{caption} package loaded.
+% \begin{macrocode}
+ \def\caption@autoposition{\caption@setposition{#1}}%
+% \end{macrocode}
+%
+% \begin{macrocode}
+ \caption@begin{lstlisting}%
+ \caption@lst@MakeCaption{#1}%
+ \caption@end}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+}
+% \end{macrocode}
+%
+% \subsubsection*{\package{longtable} package support}
+%
+% \begin{macrocode}
+\caption@ifpackage{longtable}{LT@makecaption}{%
+ \caption@Info{longtable package v3.15 (or newer) detected}%
+% \end{macrocode}
+%
+% \begin{macro}{\LT@makecaption}
+% \changes{v3.0d}{2004/08/10}{Bugfix 04-08-04: \cs{abovecaptionskip} \& \cs{belowcaptionskip} will be used now}
+% \changes{v3.0e}{2005/05/05}{Bugfix: \cs{captionsetup[longtable]} overrides \cs{LTcapwidth} now}
+% \changes{v3.0h}{2005/10/07}{\cs{caption@LT@make} introduced}
+% |\LT@makecaption|\marg{cmd}\marg{label}\marg{text}\par
+% Original code:
+% \begin{verbatim}
+% \def\LT@makecaption#1#2#3{%
+% \LT@mcol\LT@cols c{\hbox to\z@{\hss\parbox[t]\LTcapwidth{%
+% % Based on article class "\@makecaption", "#1" is "\@gobble" in star
+% % form, and "\@firstofone" otherwise.
+% \sbox\@tempboxa{#1{#2: }#3}%
+% \ifdim\wd\@tempboxa>\hsize
+% #1{#2: }#3%
+% \else
+% \hbox to\hsize{\hfil\box\@tempboxa\hfil}%
+% \fi
+% \endgraf\vskip\baselineskip}%
+% \hss}}}
+% \end{verbatim}
+% \begin{macrocode}
+ \def\LT@makecaption#1#2#3{%
+ \caption@LT@make{%
+% \end{macrocode}
+%
+% We set |\ifcaption@star| according the 1st argument.
+% \begin{macrocode}
+ \caption@startrue#1\caption@starfalse
+% \end{macrocode}
+%
+% If |\LTcapwidth| is not set to its default value |4in| we assume
+% that it shall overwrite our own setting.
+% (But |\captionsetup[longtable]{width=|\ldots|}| will overwrite |\LTcapwidth|.)
+% \begin{macrocode}
+ \caption@letfloattype{longtable}{%
+ \ifdim\LTcapwidth=4in \else
+ \setcaptionwidth\LTcapwidth
+ \fi}%
+% \end{macrocode}
+%
+% The default |position=| setting for longtables is |top|.
+% (This emulates the standard behaviour of the \package{longtable} package
+% which has no skip above the caption but a skip below it.)
+% \begin{macrocode}
+% \caption@setdefaultpos{t}%
+ \let\caption@defaultpos\@firstoftwo
+% \end{macrocode}
+%
+% |position=auto| is a bad idea for longtables, but we do our very best.
+% This works quite well for captions inside the longtable contents, but
+% not for captions inside the longtable (end)foot.
+% \begin{macrocode}
+ \def\caption@autoposition{%
+ \caption@setposition{\ifcase\LT@rows t\else b\fi}}%
+% \end{macrocode}
+%
+% \begin{macrocode}
+ \caption@begin{table}%
+% \end{macrocode}
+%
+% The following skip has the purpose to correct the height of the
+% |\parbox[t]|. Usually it's the height of the very first line, but
+% because of our extra skips (|\abovecaptionskip| and |\belowcaptionskip|)
+% it's always |0pt|.
+% (A different idea would be typesetting the first skip outside the longtable
+% column with |\noalign{\vskip|\ldots|}|, but this means we have to move
+% |\caption@begin| to some other place because it does not work in tabular
+% mode\ldots)
+% \begin{macrocode}
+ \vskip-\ht\strutbox
+% \end{macrocode}
+%
+% This should look familiar. We do our skips and use |\caption@@make| to
+% typeset the caption itself.
+% \begin{macrocode}
+ \caption@iftop{\vskip\belowcaptionskip}{\vskip\abovecaptionskip}%
+ \caption@@make{#2}{#3}\endgraf
+ \caption@iftop{\vskip\abovecaptionskip}{\vskip\belowcaptionskip}%
+ \caption@end}}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@LT@make}
+% Typesets the caption as centered |\multicolumn|\ldots
+% \begin{macrocode}
+ \newcommand\caption@LT@make[1]{%
+ \LT@mcol\LT@cols c{\hbox to\z@{\hss\parbox[t]\hsize{#1}\hss}}}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+}
+% \end{macrocode}
+%
+% \subsubsection*{\package{picins} package support}
+% \changes{v3.0j}{2006/01/26}{Support of the \package{picins} package added}
+%
+% \begin{macrocode}
+\caption@ifpackage{picins}{piccaption}{%
+ \caption@Info{picins package v3.0 (or newer) detected}%
+% \end{macrocode}
+%
+% \begin{macro}{\piccaption}
+% Original code:
+% \begin{verbatim}
+% \def\piccaption{\@ifnextchar [{\@piccaption}{\@piccaption[]}}
+% \end{verbatim}
+% \begin{macrocode}
+ \def\piccaption{\@dblarg\@piccaption}
+% \def\piccaption{\caption@caption{\@dblarg\@piccaption}}
+% \end{macrocode}
+% \end{macro}
+%
+% {\itshape TODO: Make |\piccaption[]{|\ldots|}| and |\piccaption{}| work}
+%
+% \begin{macrocode}
+}
+% \end{macrocode}
+%
+% \subsubsection*{\package{rotating} package support}
+%
+% \begin{macrocode}
+\caption@ifpackage{rotating}{@rotcaption}{%
+ \caption@Info{rotating package v2.0 (or newer) detected}%
+% \end{macrocode}
+%
+% \begin{macro}{\rotcaption}
+% \changes{v3.0c}{2004/07/16}{Bugfix: Check for \cs{caption@caption} removed}
+% \changes{v3.0i}{2005/12/07}{Rewritten, works with \package{hyperref} now}
+% Make |\rotcaption*| work.
+% \begin{macrocode}
+ \def\rotcaption{\let\@makecaption\@makerotcaption\caption}%
+% \let\@rotcaption\@undefined
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\rotcaptionof}
+% \changes{v3.0i}{2005/12/07}{New}
+% Make |\rotcaptionof(*)| work.
+% \begin{macrocode}
+ \def\rotcaptionof{%
+ \@ifstar{\caption@of{\rotcaption*}}{\caption@of\rotcaption}}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\@makerotcaption}
+% \changes{v3.0i}{2005/12/06}{Rewritten, should finally work proper now}
+% \changes{v3.0m}{2007/03/04}{Uses \cs{captionbox} instead of \cs{caption@start/endbox} now}
+% Original (bugfixed) code:
+% \begin{verbatim}
+% \long\def\@makerotcaption#1#2{%
+% \setbox\@tempboxa\hbox{#1: #2}%
+% \ifdim \wd\@tempboxa > .8\vsize
+% \rotatebox{90}{%
+% \begin{minipage}{.8\textheight}#1: #2\end{minipage}%
+% }%\par % <== \par removed (AR)
+% \else%
+% \rotatebox{90}{\box\@tempboxa}%
+% \fi
+% \nobreak\hspace{12pt}% <== \nobreak added (AR)
+% }
+% \end{verbatim}
+% Our version emulates this behaviour, but if |width=| is set,
+% the rotated caption is always typeset as |minipage|.
+% (Note that |margin=| is not supported here.)
+% \begin{macrocode}
+ \long\def\@makerotcaption#1#2{%
+% \end{macrocode}
+%
+% \begin{macrocode}
+ \ifdim\captionwidth=\z@
+ \setcaptionwidth{.8\textheight}%
+ \caption@slc{#1}{#2}{.8\vsize}{%
+ \let\caption@makerot\caption@@make
+ \setcaptionmargin\z@
+% \setlength\captionindent\z@
+% \long\def\captionbox##1##2{\hbox{\hsize=.8\textheight\relax##2}}%
+% (not needed because \rotatebox uses an \hbox anyway)
+ \let\captionbox\@secondoftwo}%
+ \caption@setbool{slc}{0}% been there, done that
+ \fi
+% \end{macrocode}
+%
+% \begin{macrocode}
+ \rotatebox{90}{\caption@makerot{#1}{#2}}%
+ \nobreak\hspace{12pt}}%
+% \end{macrocode}
+%
+% \begin{macrocode}
+ \newcommand\caption@makerot[2]{%
+ \begin{minipage}\captionwidth\caption@@make{#1}{#2}\end{minipage}}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+}
+% \end{macrocode}
+%
+% \subsubsection*{\package{sidecap} package support}
+%
+% \begin{macrocode}
+\caption@ifpackage{sidecap}{endSC@FLOAT}{%
+ \caption@Info{sidecap package v1.4d (or newer) detected}%
+% \end{macrocode}
+%
+% \begin{macro}{\SC@caption}
+% \changes{v3.0d}{2004/11/28}{Bugfix: Definition of \cs{@captype} added}
+% \changes{v3.0e}{2005/05/05}{Bugfix: Empty captions are handled correctly now}
+% \changes{v3.0e}{2005/05/05}{Priority of options fixed}
+% \changes{v3.0h}{2005/10/03}{Bugfix: Always use \cs{AtBeginDocument} to set \cs{SC@caption}}
+% First of all, we let sidecap use an actual definition of |\caption|.\\
+% (This is only required for version 1.5d of the sidecap package.)
+% \begin{macrocode}
+ \@ifundefined{caption@caption}%
+ {\let\caption@tempa\AtBeginDocument}%
+ {\let\caption@tempa\@firstofone}%
+ \caption@tempa{\let\SC@caption=\caption}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\SC@zfloat}
+% \changes{v3.0b}{2004/05/16}{Local definition of \cs{captionsetup} added}
+% \changes{v3.0c}{2004/07/16}{Bugfix 04-07-15: Check for \cs{caption@caption} removed}
+% This macro will be called at the start of the environment, here is a good
+% opportunity to do some adaptations to |\caption| and |\captionsetup|.
+% \begin{macrocode}
+ \let\caption@SC@zfloat\SC@zfloat
+ \def\SC@zfloat#1#2#3[#4]{%
+% \end{macrocode}
+%
+% Note: |#2| is either |figure| or |table| and will be stored to |\SC@captype|
+% by the original version of |\SC@zfloat|.
+% \begin{macrocode}
+ \caption@SC@zfloat{#1}{#2}{#3}[#4]%
+% \end{macrocode}
+%
+% Since the sidecap package uses our |\caption| code outside the
+% floating environment the regular |\captionsetup| will not work.
+% So we need a special version here which saves the given argument list
+% which will be executed later on.
+% \begin{macrocode}
+ \global\let\SC@CAPsetup\@empty
+ \def\captionsetup##1{\g@addto@macro\SC@CAPsetup{,##1}}%
+% \end{macrocode}
+%
+% Make |\caption*| work.
+% \begin{macrocode}
+ \let\caption@SC\caption
+% \def\caption{\renewcommand\captionsetup[1]{}\caption@caption\caption@SC}%
+ \def\caption{\caption@caption\caption@SC}%
+ }%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\endSC@FLOAT}
+% \changes{v3.0i}{2006/01/12}{\cs{@listdepth}\cs{z@} added}
+% This macro will be called at the end of the environment, here we need to
+% setup our stuff before the \package{sidecap} package actually typesets
+% its caption.
+% \begin{macrocode}
+ \let\caption@endSC@FLOAT\endSC@FLOAT
+ \def\endSC@FLOAT{%
+% \end{macrocode}
+%
+% Note that |\@captype| isn't defined so far, this will be done inside
+% the original definition of |\endSC@FLOAT|.
+% But we define |\@captype| already here to make |\captionsetup| work
+% with |\@captype|-based options (like |type=|).
+% \begin{macrocode}
+ \let\@captype\SC@captype
+% \end{macrocode}
+%
+% Here we execute the options set with |\captionsetup| inside this environment.
+% \begin{macrocode}
+ \caption@esetup\SC@CAPsetup
+% \end{macrocode}
+%
+% Before we can typeset the caption we need to set the margin to zero
+% because any extra margin would only be disturbing here.\par
+% (We don't need to take care about the caption position because
+% the sidecap package set both |\abovecaptionskip| and |\belowcaptionskip|
+% to a skip of zero anyway.)\par
+% Furthermore |\SC@justify| will override the caption justification, if set.
+% The usage of |\SC@justify| differs from version to version of the
+% \package{sidecap} package:\par
+% \begin{tabular}{ll}
+% Version 1.4: & |\SC@justify| is not defined\\
+% Version 1.5: & |\SC@justify| is |\relax| when not set\\
+% Version 1.6: & |\SC@justify| is |\@empty| when not set\\
+% \end{tabular}
+% \begin{macrocode}
+ \caption@letfloattype{SC\@captype}{%
+ \@listdepth\z@
+ \setcaptionmargin\z@
+ \@ifundefined{SC@justify}{}{%
+ \ifx\SC@justify\@empty\else
+ \let\caption@hj\SC@justify
+ \let\SC@justify\@empty
+ \fi}}%
+% \end{macrocode}
+%
+% We adapt |\caption@ifempty| so |\caption{}| will work within these
+% environments, too.
+% \begin{macrocode}
+ \long\def\caption@ifempty##1{%
+ \ifx\SC@CAPtext\@empty
+ \expandafter\@firstofone
+ \else
+ \expandafter\@gobble
+ \fi}%
+% \end{macrocode}
+%
+% \iffalse % Does not work anyway...
+% Furthermore we adapt |\caption@ifnocontentsline| so |\caption[]{|\ldots|}|
+% will work within these environments, too.
+% \begin{macrocode}
+% \long\def\caption@ifnocontentsline##1{%
+% \ifx\SC@OPTCAPtext\@empty
+% \expandafter\@firstofone
+% \else
+% \expandafter\@gobble
+% \fi}%
+% \end{macrocode}
+% \fi
+%
+% Finally we call the original definition of |\endSC@FLOAT| which will
+% call our version of |\caption| to typeset the caption.
+% \begin{macrocode}
+ \caption@endSC@FLOAT}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+}
+% \end{macrocode}
+%
+% \subsubsection*{\package{supertabular} package support}
+%
+% \begin{macro}{\caption@setSTposition}
+% The |position=| setting will be overwritten by the
+% \package{supertabular} package: If |\topcaption| is used,
+% the position will be |top| automatically, |bottom| otherwise.
+% \begin{macrocode}
+\def\caption@setSTposition{%
+ \caption@setposition{\if@topcaption t\else b\fi}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+\caption@ifpackage{supertabular}{ST@caption}{%
+ \caption@Info{supertabular package detected}%
+% \end{macrocode}
+%
+% \begin{macro}{\tablecaption}
+% \changes{v3.0e}{2005/05/05}{Made \cs{topcaption*} and \cs{bottomcaption*} work}
+% Make |\topcaption*| and |\bottomcaption*| work.
+% \begin{macrocode}
+ \let\caption@tablecaption\tablecaption
+ \def\tablecaption{\caption@caption\caption@tablecaption}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\ST@caption}
+% \changes{v3.0a}{2004/01/23}{Bugfix: Missing \cs{par} added}
+% Original code:
+% \begin{verbatim}
+% \long\def\ST@caption#1[#2]#3{\par%
+% \addcontentsline{\csname ext@#1\endcsname}{#1}%
+% {\protect\numberline{%
+% \csname the#1\endcsname}{\ignorespaces #2}}
+% \begingroup
+% \@parboxrestore
+% \normalsize
+% \if@topcaption \vskip -10\p@ \fi
+% \@makecaption{\csname fnum@#1\endcsname}{\ignorespaces #3}\par
+% \if@topcaption \vskip 10\p@ \fi
+% \endgroup}
+% \end{verbatim}
+% \begin{macrocode}
+ \long\def\ST@caption#1[#2]#3{\par%
+ \caption@letfloattype{supertabular}{}%
+ \let\caption@fixposition\caption@setSTposition
+ \caption@beginex{#1}{#2}{#3}%
+ \addcontentsline{\csname ext@#1\endcsname}{#1}%
+ {\protect\numberline{%
+ \csname the#1\endcsname}{\ignorespaces #2}}%
+ \@parboxrestore
+ \normalsize
+ \@makecaption{\csname fnum@#1\endcsname}{\ignorespaces #3}\par
+ \caption@end}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+}
+% \end{macrocode}
+%
+% \iffalse
+%</package>
+% \fi
+%
+% \clearpage
+% \Finale
+%
+\endinput
diff --git a/macros/latex/contrib/caption/fallback/v3.1/caption.dtx b/macros/latex/contrib/caption/fallback/v3.1/caption.dtx
new file mode 100644
index 0000000000..4bc736fdb9
--- /dev/null
+++ b/macros/latex/contrib/caption/fallback/v3.1/caption.dtx
@@ -0,0 +1,7985 @@
+% \iffalse meta-comment
+%
+% This is file `caption.dtx'.
+%
+% Copyright (C) 1994-2010 Axel Sommerfeldt (caption@sommerfee.de)
+%
+% --------------------------------------------------------------------------
+%
+% This work may be distributed and/or modified under the
+% conditions of the LaTeX Project Public License, either version 1.3
+% of this license or (at your option) any later version.
+% The latest version of this license is in
+% http://www.latex-project.org/lppl.txt
+% and version 1.3 or later is part of all distributions of LaTeX
+% version 2003/12/01 or later.
+%
+% This work has the LPPL maintenance status "maintained".
+%
+% This Current Maintainer of this work is Axel Sommerfeldt.
+%
+% This work consists of the files caption.ins, caption.dtx, caption2.dtx,
+% ltcaption.dtx, and subcaption.dtx, the derived files caption.sty,
+% caption2.sty, caption3.sty, ltcaption.sty, and subcaption.sty, and the
+% user manuals caption-deu.tex, caption-eng.tex, and caption-rus.tex.
+%
+% \fi
+% \CheckSum{7218}
+%
+% \iffalse
+%<*driver>
+\NeedsTeXFormat{LaTeX2e}[1994/12/01]
+\ProvidesFile{caption.drv}[2010/01/14 v3.1m Implementation of the caption package]
+\hbadness=9999 \newcount\hbadness \hfuzz=100pt % Make TeX shut up.
+%\errorcontextlines=3
+%
+\documentclass{ltxdoc}
+\setlength\parindent{0pt}
+\setlength\parskip{\smallskipamount}
+%
+%\let\ORIsubsection\subsection
+%\def\subsection{\clearpage\ORIsubsection}
+%
+\makeatletter % make room for subsections like 2.16.14 in the TOC
+%\newcommand*\l@subsubsection{\@dottedtocline{3}{3.8em}{3.2em}}
+\renewcommand*\l@subsubsection{\@dottedtocline{3}{3.8em}{3.6em}}
+\makeatother
+%
+\usepackage{ifpdf}
+\ifpdf
+ \usepackage{mathptmx,courier}
+ \usepackage[scaled=0.90]{helvet}
+ \addtolength\marginparwidth{15pt}
+\fi
+%
+\usepackage{hypdoc}
+\ifpdf\usepackage{hypdestopt}\fi
+\hypersetup{pdfkeywords={LaTeX, package, caption},pdfstartpage={},pdfstartview={}}
+%
+\usepackage[debug]{caption}[2009/10/09]
+%
+\DeclareRobustCommand*\eTeX{\texorpdfstring
+ {\leavevmode\hbox{$\varepsilon$}-\TeX}%
+ {e-TeX}}
+\DeclareRobustCommand*\AmS{\texorpdfstring
+ {{\protect\usefont{OMS}{cmsy}{m}{n}A\kern-.1667em\lower.5ex\hbox{M}\kern-.125emS}}%
+ {AMS}}
+\DeclareRobustCommand*\KOMAScript{\texorpdfstring
+ {\textsf{K\kern.05em O\kern.05em M\kern.05em A\kern.1em-\kern.1em Script}}%
+ {KOMA-Script}}
+\DeclareRobustCommand*\NTG{NTG}
+\DeclareRobustCommand*\SmF{SMF}
+%
+\begin{document}
+ \DocInput{caption.dtx}
+\end{document}
+%</driver>
+% \fi
+%
+% \newcommand*\purerm[1]{{\upshape\mdseries\rmfamily #1}}
+% \newcommand*\puresf[1]{{\upshape\mdseries\sffamily #1}}
+% \newcommand*\purett[1]{{\upshape\mdseries\ttfamily #1}}
+% \let\class\puresf \let\package\puresf
+% \let\env\purett \let\opt\purett
+%
+% \def\thispackage{the \package{caption} package}
+% \def\Thispackage{The \package{caption} package}
+%
+% \newcommand*\csmarg[1]{\texttt{\char`\{#1\char`\}}}
+% \newcommand*\csoarg[1]{\texttt{\char`\[#1\char`\]}}
+% \newcommand*\version[2][]{\textit{v#2}}
+% \newcommand*\x{\discretionary{-}{}{}}
+% \newcommand*\xx{\discretionary{}{}{}}
+%
+% \GetFileInfo{caption.drv}
+% \let\docdate\filedate
+% \GetFileInfo{caption.sty}
+%
+% \title{The Implementation of
+% \texorpdfstring{\thispackage\thanks{%^^A
+% This package has version number \fileversion, last revised \filedate.}}%^^A
+% {the caption package}}
+% \author{Axel Sommerfeldt\\
+% \href{mailto:caption@sommerfee.de}{\texttt{caption@sommerfee.de}}}
+% \date{\docdate}
+% \maketitle
+%
+% \begin{abstract}
+% \Thispackage\ consists of two parts -- the kernel
+% (|caption3.sty|) and the main package (|caption.sty|).
+%
+% The kernel provides all the user commands and internal macros which are
+% necessary for typesetting captions and setting parameters regarding these.
+% While the standard \LaTeX\ document classes provide an internal command
+% called |\@makecaption| and no options to control its behavior (except the
+% vertical skips above and below the caption itself), we provide similar
+% commands called |\caption@make| and |\caption@@make|, but with a lot of
+% options which can be selected with |\captionsetup|.
+% Loading the kernel part do not change the output of a \LaTeX\ document
+% -- it just provides functionality which can be used by \LaTeXe\ packages
+% which typesets captions, for example the \package{caption} and
+% \package{subfig} packages.
+%
+% \Thispackage\ redefines the \LaTeX\ commands
+% |\caption|, |\@caption|, and |\@makecaption| and maps the latter one to
+% |\caption@@make|, giving the user the possibility to control the look \& feel
+% of the captions from floating environments like |figure| and |table|.
+% Furthermore it does similar to the caption stuff coming from other packages
+% (like the \package{longtable} or \package{supertabular} package):
+% Mapping the appropriate internal commands (like |\LT@makecaption| or
+% |\ST@caption|) to the ones offered by the \package{caption3} kernel.
+% So you can think of \thispackage\ as a layer package, it
+% simply provides adaptation layers between the caption stuff coming from
+% \LaTeXe\ or packages, and the caption stuff offered by the
+% \package{caption3} kernel.
+% \end{abstract}
+%
+% \section*{User manuals}
+%
+% This document is describing the code implementation only. The user
+% documentation can be found in
+% \nopagebreak\begin{quote}
+% \begin{tabular}{ll}
+% \href{ftp://ctan.tug.org/tex-archive/macros/latex/contrib/caption/caption-eng.pdf}%
+% {\texttt{caption-eng.pdf}} & The English documentation \\
+% \href{ftp://ctan.tug.org/tex-archive/macros/latex/contrib/caption/caption-rus.pdf}%
+% {\texttt{caption-rus.pdf}} & The Russian documentation\footnotemark \\
+% \href{ftp://dante.ctan.org/tex-archive/macros/latex/contrib/caption/caption-deu.pdf}%
+% {\texttt{caption-deu.pdf}} & The German documentation \\
+% \end{tabular}
+% \footnotetext{Thanks a lot to Olga Lapko for this translation}
+% \end{quote}
+%
+% \StopEventually{}
+% \clearpage
+% \tableofcontents
+%
+% \iffalse
+% --------------------------------------------------------------------------- %
+% \fi
+%
+% \DoNotIndex{\\,\_,\ ,\@@par}
+% \DoNotIndex{\@bsphack}
+% \DoNotIndex{\@car,\@cdr,\@classoptionslist,\@cons,\@currext,\@currname}
+% \DoNotIndex{\@ehc,\@ehd,\@empty,\@esphack,\@expandtwoargs}
+% \DoNotIndex{\@for,\@firstofone,\@firstoftwo}
+% \DoNotIndex{\@gobble,\@gobblefour,\@gobbletwo,\@hangfrom}
+% \DoNotIndex{\if@minipage\@ifnextchar,\@ifpackagelater,\@ifpackageloaded}
+% \DoNotIndex{\@ifstar,\@ifundefined,\@latex@error,\@minipagefalse,\@minipagetrue}
+% \DoNotIndex{\@namedef,\@nameuse}
+% \DoNotIndex{\@onlypreamble,\@parboxrestore,\@plus,\@ptionlist}
+% \DoNotIndex{\@removeelement,\@restorepar,\@secondoftwo,\@setminipage,\@setpar}
+% \DoNotIndex{\@tempa,\@tempboxa,\@tempdima,\@tempdimb,\@tempdimc,\@tempb,\@tempc}
+% \DoNotIndex{\@testopt}
+% \DoNotIndex{\@undefined,\@unprocessedoptions,\@unusedoptionlist}
+% \DoNotIndex{\p@,\z@}
+% \DoNotIndex{\active,\addtocounter,\addtolength,\advance,\aftergroup}
+% \DoNotIndex{\baselineskip,\begin,\begingroup,\bfseries,\box}
+% \DoNotIndex{\catcode,\centering,\changes,\csname,\def,\divide,\do,\downarrow}
+% \DoNotIndex{\edef,\else,\empty,\end,\endcsname,\endgraf,\endgroup,\expandafter}
+% \DoNotIndex{\fi,\footnotesize,\global}
+% \DoNotIndex{\hangindent,\hbox,\hfil,\hsize,\hskip,\hspace,\hss}
+% \DoNotIndex{\ifcase,\ifdim,\ifnum,\ifodd,\ifvoid,\ifvmode}
+% \DoNotIndex{\ifx,\ignorespaces,\itshape}
+% \DoNotIndex{\Large,\large,\leavevmode,\leftmargini,\leftskip,\let,\linewidth}
+% \DoNotIndex{\llap,\long,\m@ne,\margin,\mdseries,\message}
+% \DoNotIndex{\newcommand,\newdimen,\newlength,\newline,\newif,\newsavebox}
+% \DoNotIndex{\next,\nobreak,\nobreakspace,\noexpand,\noindent,\numberline}
+% \DoNotIndex{\normalcolor,\normalfont,\normalsize,\or,\par,\parbox,\parfillskip}
+% \DoNotIndex{\parindent,\parskip,\prevdepth,\protect,\protected@edef,\protected@write}
+% \DoNotIndex{\providecommand,\quad}
+% \DoNotIndex{\raggedleft,\raggedright,\relax,\renewcommand,\RequirePackage}
+% \DoNotIndex{\rightskip,\rmfamily}
+% \DoNotIndex{\sbox,\scriptsize,\scshape,\setbox,\setlength,\sffamily,\slshape}
+% \DoNotIndex{\small,\string,\space,\strut}
+% \DoNotIndex{\textheight,\the,\toks@,\typeout,\ttfamily}
+% \DoNotIndex{\unvbox,\uparrow,\upshape,\usebox,\usepackage}
+% \DoNotIndex{\value,\vbox,\vsize,\vskip,\wd,\width,\z@skip}
+% \DoNotIndex{\AtBeginDocument,\AtEndOfPackage,\CurrentOption,\DeclareOption}
+% \DoNotIndex{\ExecuteOptions,\GenericWarning,\IfFileExists,\InputIfFileExists}
+% \DoNotIndex{\NeedsTeXFormat,\MessageBreak}
+% \DoNotIndex{\PackageError,\PackageInfo,\PackageWarning,\PackageWarningNoLine}
+% \DoNotIndex{\PassOptionsToPackage,\ProcessOptions,\ProvidesPackage}
+%
+% \iffalse
+% --------------------------------------------------------------------------- %
+% \fi
+%
+% \setlength{\parskip}{0pt plus 1pt}
+%
+% \changes{v1.0}{1994/10/27}{First release}
+% \changes{v1.1}{1994/11/03}{New option \cs{centerlast}}
+% \changes{v1.2}{1994/11/28}{Support of the \package{float} package}
+% \changes{v1.3}{1995/01/09}{Support of \cs{captionlabelfont} in subcaptions}
+% \changes{v1.4}{1995/01/30}{New option \cs{nooneline}}
+% \changes{v1.4b}{1995/04/05}{Bugfix release}
+% \changes{v3.0}{2003/12/20}{Rewritten; many new commands and features}
+% \changes{v3.0d}{2004/11/28}{Split into two packages:
+% \package{caption} \& \package{caption3}}
+%
+% \newcommand*\Note[2][Note]{\par{\small\emph{#1:} #2}\par}
+%
+% \iffalse
+% --------------------------------------------------------------------------- %
+% \fi
+%
+% \clearpage
+% \section{Kernel}
+% \iffalse
+%<*kernel>
+% \fi
+%
+% \subsection{Identification}
+%
+% \begin{macrocode}
+\NeedsTeXFormat{LaTeX2e}[1994/12/01]
+\ProvidesPackage{caption3}[2010/01/14 v1.1m caption3 kernel (AR)]
+% \end{macrocode}
+%
+% \subsection{Generic helpers}
+%
+% \begin{macro}{\@nameundef}
+% This is the opposite to |\@namedef| which is offered by the \LaTeX\ kernel.
+% We use it to remove the definition of some commands and keyval options after
+% |\begin{document}| (to save \TeX\ memory) and to remove caption options defined
+% with |\captionsetup|\oarg{type}.
+% \begin{macrocode}
+\providecommand*\@nameundef[1]{%
+ \expandafter\let\csname #1\endcsname\@undefined}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\l@addto@macro}
+% The \LaTeXe\ kernel offers the internal helper macro |\g@addto@macro| which
+% globally adds tokens to existing macros, like in |\AtBeginDocument|.
+% This is the same but it works local, not global
+% (using \cs{edef} instead of \cs{xdef}).
+% \begin{macrocode}
+\providecommand\l@addto@macro[2]{%
+ \begingroup
+ \toks@\expandafter{#1#2}%
+ \edef\@tempa{\endgroup\def\noexpand#1{\the\toks@}}%
+ \@tempa}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\bothIfFirst}
+% \begin{macro}{\bothIfSecond}
+% |\bothIfFirst| tests if the first argument is not empty, |\bothIfSecond|
+% tests if the second argument is not empty. If yes both arguments get
+% typeset, otherwise none of them.
+% \begin{macrocode}
+\def\bothIfFirst#1#2{%
+ \protected@edef\caption@tempa{#1}%
+ \ifx\caption@tempa\@empty \else
+ #1#2%
+ \fi}
+% \end{macrocode}
+% \begin{macrocode}
+\def\bothIfSecond#1#2{%
+ \protected@edef\caption@tempa{#2}%
+ \ifx\caption@tempa\@empty \else
+ #1#2%
+ \fi}
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+%
+% \begin{macro}{\caption@ifinlist}
+% \changes{v3.1}{2007/07/29}{Rewritten}
+% This helper macro checks if the first argument is in the comma separated
+% list which is offered as second argument. So for example
+% \begin{quote}
+% |\caption@ifinlist{frank}{axel,frank,olga,steven}{yes}{no}|
+% \end{quote}
+% would expand to |yes|.
+% \begin{macrocode}
+\newcommand*\caption@ifinlist{%
+ \@expandtwoargs\caption@@ifinlist}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@@ifinlist[2]{%
+ \begingroup
+ \def\@tempa##1,#1,##2\@nil{%
+ \endgroup
+ \ifx\relax##2\relax
+ \expandafter\@secondoftwo
+ \else
+ \expandafter\@firstoftwo
+ \fi}%
+ \@tempa,#2,#1,\@nil}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@ifin@list}
+% \changes{v3.1}{2007/08/12}{This macro added}
+% |\caption@ifin@list|\marg{cmd}\marg{list entry}\marg{yes}\marg{no}
+% \begin{macrocode}
+\newcommand*\caption@ifin@list[2]{%
+ \caption@ifempty@list#1%
+ {\@secondoftwo}%
+ {\@expandtwoargs\caption@@ifinlist{#2}{#1}}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@g@addto@list}
+% \changes{v3.1}{2007/07/29}{This macro added}
+% |\caption@g@addto@list|\marg{cmd}\marg{list entry}
+% \begin{macrocode}
+\newcommand*\caption@g@addto@list[2]{%
+ \caption@ifempty@list#1{\gdef#1{#2}}{\g@addto@macro#1{,#2}}}
+% \end{macrocode}
+% \end{macro}
+% \begin{macro}{\caption@l@addto@list}
+% \changes{v3.1}{2007/07/29}{This macro added}
+% |\caption@l@addto@list|\marg{cmd}\marg{list entry}
+% \begin{macrocode}
+\newcommand*\caption@l@addto@list[2]{%
+ \caption@ifempty@list#1{\def#1{#2}}{\l@addto@macro#1{,#2}}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@g@removefrom@list}
+% \changes{v3.1}{2007/07/29}{This macro added}
+% |\caption@g@removefrom@list|\marg{cmd}\marg{list entry}
+% \begin{macrocode}
+\newcommand*\caption@g@removefrom@list[2]{%
+ \caption@l@removefrom@list#1{#2}%
+ \global\let#1#1}
+% \end{macrocode}
+% \end{macro}
+% \begin{macro}{\caption@l@removefrom@list}
+% \changes{v3.1}{2007/07/29}{This macro added}
+% |\caption@l@removefrom@list|\marg{cmd}\marg{list entry}\par
+% \Note[Caveat]{\meta{cmd} will be expanded during this process since
+% \cs{@removeelement} is using \cs{edef} to build the new list!}
+% \begin{macrocode}
+\newcommand*\caption@l@removefrom@list[2]{%
+ \caption@ifempty@list#1{}{\@expandtwoargs\@removeelement{#2}#1#1}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@for@list}
+% \changes{v3.1}{2007/07/29}{This macro added}
+% |\caption@for@list|\marg{cmd}\marg{code with \#1}
+% \begin{macrocode}
+\newcommand*\caption@for@list[2]{%
+ \caption@ifempty@list#1{}{%
+ \def\caption@tempb##1{#2}%
+ \@for\caption@tempa:=#1\do{%
+ \expandafter\caption@tempb\expandafter{\caption@tempa}}}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@ifempty@list}
+% \changes{v3.1}{2007/07/29}{This macro added}
+% |\caption@ifempty@list|\marg{cmd}\marg{true}\marg{false}
+% \begin{macrocode}
+\newcommand*\caption@ifempty@list[1]{%
+ \ifx#1\@undefined
+ \expandafter\@firstoftwo
+ \else\ifx#1\relax
+ \expandafter\expandafter\expandafter\@firstoftwo
+ \else\ifx#1\@empty
+ \expandafter\expandafter\expandafter\expandafter
+ \expandafter\expandafter\expandafter\@firstoftwo
+ \else
+ \expandafter\expandafter\expandafter\expandafter
+ \expandafter\expandafter\expandafter\@secondoftwo
+ \fi\fi\fi}
+% \end{macrocode}
+% \end{macro}
+%
+% \pagebreak[3]
+% \begin{macro}{\caption@setbool}
+% \begin{macro}{\caption@set@bool}
+% \changes{v3.1}{2007/04/05}{\cs{caption@set@bool}\marg{cmd}\marg{value} added}
+% \begin{macro}{\caption@ifbool}
+% \begin{macro}{\caption@undefbool}
+% For setting and testing boolean options we offer these three helper macros:
+% \begin{quote}
+% |\caption@setbool|\marg{name}\marg{value}\\
+% | |(with |value = false/true/no/yes/off/on/0/1|)\\
+% |\caption@ifbool|\marg{name}\marg{if-clause}\marg{else-clause}\\
+% |\caption@undefbool|\marg{name}
+% \end{quote}
+% \begin{macrocode}
+\newcommand*\caption@setbool[1]{%
+ \expandafter\caption@set@bool\csname caption@if#1\endcsname}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@set@bool[2]{%
+ \caption@ifinlist{#2}{1,true,yes,on}{%
+ \let#1\@firstoftwo
+ }{\caption@ifinlist{#2}{0,false,no,off}{%
+ \let#1\@secondoftwo
+ }{%
+ \caption@Error{Undefined boolean value `#2'}%
+ }}}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@ifbool[1]{\@nameuse{caption@if#1}}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@undefbool[1]{\@nameundef{caption@if#1}}
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+% \end{macro}
+% \end{macro}
+%
+% \begin{macro}{\caption@teststar}
+% \changes{v3.1}{2007/05/08}{This macro and its usage added}
+% \changes{v3.1e}{2007/10/28}{\cs{caption@teststar@} added}
+% |\caption@teststar|\marg{cmd}\marg{star arg}\marg{non-star arg}\\
+% |\caption@teststar@|\marg{cmd}\marg{star arg}\marg{non-star arg}
+% \begin{macrocode}
+\newcommand*\caption@teststar[3]{\@ifstar{#1{#2}}{#1{#3}}}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@teststar@[3]{%
+ \@ifstar{#1{#2}}{\caption@ifatletter{#1{#2}}{#1{#3}}}}
+\AtBeginDocument{\let\caption@teststar@\caption@teststar}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@ifatletter{%
+ \ifnum\the\catcode`\@=11
+ \expandafter\@firstoftwo
+ \else
+ \expandafter\@secondoftwo
+ \fi}
+\AtBeginDocument{\let\caption@ifatletter\@secondoftwo}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@withoptargs}
+% \changes{v3.1}{2007/08/12}{This macro added}
+% |\caption@withoptargs|\marg{cmd}
+% \begin{macrocode}
+\newcommand*\caption@withoptargs[1]{%
+ \@ifstar
+ {\def\caption@tempa{*}\caption@@withoptargs#1}%
+ {\def\caption@tempa{}\caption@@withoptargs#1}}
+% \end{macrocode}
+% \begin{macrocode}
+\def\caption@@withoptargs#1{%
+ \@ifnextchar[%]
+ {\caption@@@withoptargs#1}%
+ {\caption@@@@withoptargs#1}}
+% \end{macrocode}
+% \begin{macrocode}
+\def\caption@@@withoptargs#1[#2]{%
+ \l@addto@macro\caption@tempa{[{#2}]}%
+ \caption@@withoptargs#1}
+% \end{macrocode}
+% \begin{macrocode}
+\def\caption@@@@withoptargs#1{%
+ \expandafter#1\expandafter{\caption@tempa}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@CheckCommand}
+% \changes{v3.1}{2007/04/10}{This macro added}
+% \begin{macro}{\caption@IfCheckCommand}
+% \changes{v3.1}{2007/04/10}{This macro added}
+% \changes{v3.1i}{2008/08/02}{Revised so \cs{next} is no longer used}
+% |\caption@CheckCommand|\marg{macro}\marg{definition of macro}\par
+% checks if a command already exists, with the same definition.
+% It can be used more-than-once to check if one of multiple definitions will
+% finally match.
+% (It redefines itself later on to |\@gobbletwo| if the two commands match
+% fine, making further checks harmless.)\par
+% |\caption@IfCheckCommand|\marg{true}\marg{false}\par
+% will execute the \meta{true} code if one match was finally given,
+% the \meta{false} code otherwise.
+% (It simply checks if |\caption@CheckCommand| is |\@gobbletwo| and
+% restores the starting definition of |\caption@CheckCommand|.)
+% \begin{macrocode}
+\newcommand\caption@DoCheckCommand[2]{%
+ \begingroup
+ \let\@tempa#1%
+ #2%
+ \ifx\@tempa#1%
+ \endgroup
+ \let\caption@CheckCommand\@gobbletwo
+ \else
+ \endgroup
+ \fi}
+\@onlypreamble\caption@DoCheckCommand
+% \end{macrocode}
+% \begin{macrocode}
+\let\caption@CheckCommand\caption@DoCheckCommand
+\@onlypreamble\caption@CheckCommand
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@IfCheckCommand{%
+ \ifx\caption@CheckCommand\@gobbletwo
+ \let\caption@CheckCommand\caption@DoCheckCommand
+ \expandafter\@firstoftwo
+ \else
+ \expandafter\@secondoftwo
+ \fi}
+\@onlypreamble\caption@IfCheckCommand
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+%
+% \begin{macro}{\caption@AtBeginDocument}
+% \changes{v3.1}{2007/04/13}{This macro and its usage added}
+% \changes{v3.1l}{2010/01/09}{Adapted to the combine document class}
+% |\caption@AtBeginDocument*|\marg{code}\\
+% Same as |\AtBeginDocument| but the execution of code
+% will be surrounded by two |\PackageInfo|s.
+% The starred variant causes the code to be executed after all code
+% specified using the non-starred variant.
+% \begin{macrocode}
+\let\caption@begindocumenthook\@empty
+\let\caption@@begindocumenthook\@empty
+% \end{macrocode}
+% \begin{macrocode}
+\def\caption@AtBeginDocument{%
+ \caption@teststar\g@addto@macro
+ \caption@@begindocumenthook\caption@begindocumenthook}
+%\@onlypreamble\caption@AtBeginDocument
+% \end{macrocode}
+% \begin{macrocode}
+\AtBeginDocument{%
+ \PackageInfo{caption}{Begin \noexpand\AtBeginDocument code\@gobble}%
+% \end{macrocode}
+% \begin{macrocode}
+ \def\caption@AtBeginDocument{%
+ \@ifstar{\g@addto@macro\caption@@begindocumenthook}\@firstofone}%
+ \caption@begindocumenthook
+ \let\caption@begindocumenthook\relax
+% \end{macrocode}
+% \begin{macrocode}
+ \def\caption@AtBeginDocument{%
+ \@ifstar\@firstofone\@firstofone}%
+ \caption@@begindocumenthook
+ \let\caption@@begindocumenthook\relax
+% \end{macrocode}
+% \begin{macrocode}
+ \PackageInfo{caption}{End \noexpand\AtBeginDocument code\@gobble}}
+% \end{macrocode}
+% \end{macro}
+%
+% \subsection{Errors}
+%
+% \begin{macro}{\caption@Warning}
+% \changes{v3.1c}{2007/10/14}{This macro added, will now be used for warnings}
+% \begin{macro}{\caption@WarningNoLine}
+% \changes{v3.1c}{2007/10/14}{This macro added, will now be used for warnings}
+% \begin{macro}{\caption@Error}
+% \changes{v3.0l}{2007/01/20}{This macro added, will now be used for errors}
+% \changes{v3.0q}{2007/04/11}{Renamed from \cs{caption@error} to \cs{caption@Error}}
+% \changes{v3.1b}{2007/09/18}{Usage of \cs{caption@Package} removed}
+% \begin{macro}{\caption@KV@err}
+% \changes{v3.1b}{2007/09/18}{This macro added}
+% |\caption@Error|\marg{message}
+% \begin{macrocode}
+\newcommand*\caption@Warning[1]{%
+ \caption@WarningNoLine{#1\on@line}}
+\newcommand*\caption@WarningNoLine[1]{%
+ \PackageWarning{caption}{#1.^^J\caption@wh\@gobbletwo}}
+\newcommand*\caption@Error[1]{%
+ \PackageError{caption}{#1}\caption@eh}
+\let\caption@KV@err\caption@Error
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+% \end{macro}
+% \end{macro}
+%
+% \begin{macro}{\caption@wh}
+% \begin{macro}{\caption@eh}
+% At the moment we only offer these two simple warning resp. error helpers.
+% \begin{macrocode}
+\newcommand*\caption@wh{%
+ See the caption package documentation for explanation.}
+\newcommand*\caption@eh{%
+ If you do not understand this error, please take a closer look\MessageBreak
+ at the documentation of the `caption' package, especially the\MessageBreak
+ section about errors.\MessageBreak\@ehc}
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+%
+% \subsection{Using the keyval package}
+%
+% We need the \package{keyval} package for option handling, so we load it here.
+% \begin{macrocode}
+\RequirePackage{keyval}[1997/11/10]
+% \end{macrocode}
+%
+% \begin{macro}{\undefine@key}
+% |\undefine@key|\marg{family}\marg{key}\par
+% This helper macro is the opposite of |\define@key|, it removes a keyval
+% definition.
+% \begin{macrocode}
+\providecommand*\undefine@key[2]{%
+ \@nameundef{KV@#1@#2}\@nameundef{KV@#1@#2@default}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\@onlypreamble@key}
+% \changes{v3.1}{2007/07/22}{This macro added}
+% \changes{v3.1e}{2007/11/01}{\cs{KV@err} will be used now instead of \cs{@notprerr}}
+% |\onlypreamble@key|\marg{family}\marg{key}\par
+% Analogous to |\@onlypreamble| from \LaTeXe.
+% \begin{macrocode}
+\providecommand*\@preamble@keys{}
+\providecommand*\@onlypreamble@key[2]{\@cons\@preamble@keys{{#1}{#2}}}
+\@onlypreamble\@onlypreamble@key
+\@onlypreamble\@preamble@keys
+% \end{macrocode}
+% \begin{macrocode}
+\providecommand*\@notprerr@key[1]{\KV@err{Can be used only in preamble}}
+% \end{macrocode}
+% \begin{macrocode}
+\caption@AtBeginDocument*{%
+ \def\@elt#1#2{\expandafter\let\csname KV@#1@#2\endcsname\@notprerr@key}%
+ \@preamble@keys
+ \let\@elt\relax}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\DeclareCaptionOption}
+% |\DeclareCaptionOption|\marg{option}\oarg{default value}\marg{code}\\
+% |\DeclareCaptionOption*|\marg{option}\oarg{default value}\marg{code}\par
+% We declare our options using these commands (instead of using
+% |\DeclareOption| offered by \LaTeXe), so the keyval package is used.
+% The starred form makes the option available during the lifetime of the
+% current package only, so they can be used with |\usepackage|, but
+% \emph{not} with |\captionsetup| later on.
+% \begin{macrocode}
+\newcommand*\DeclareCaptionOption{%
+ \caption@teststar\caption@declareoption\AtEndOfPackage\@gobble}
+\@onlypreamble\DeclareCaptionOption
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@declareoption[2]{%
+ #1{\undefine@key{caption}{#2}}\define@key{caption}{#2}}
+\@onlypreamble\caption@declareoption
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\DeclareCaptionOptionNoValue}
+% \changes{v3.1c}{2007/10/06}{This macro added}
+% |\DeclareCaptionOptionNoValue|\marg{option}\marg{code}\\
+% |\DeclareCaptionOptionNoValue*|\marg{option}\marg{code}\par
+% Same as \cs{DeclareCaptionOption} but issues an error if a value is given.
+% \begin{macrocode}
+\newcommand*\DeclareCaptionOptionNoValue{%
+ \caption@teststar\caption@declareoption@novalue\AtEndOfPackage\@gobble}
+\@onlypreamble\DeclareCaptionOptionNoValue
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand\caption@declareoption@novalue[3]{%
+ \caption@declareoption{#1}{#2}[\KV@err]{%
+ \caption@option@novalue{#2}{##1}{#3}}}
+\@onlypreamble\caption@declareoption@novalue
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@option@novalue[2]{%
+ \ifx\KV@err#2%
+ \expandafter\@firstofone
+ \else
+ \KV@err{No value allowed for #1}%
+ \expandafter\@gobble
+ \fi}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\ifcaptionsetup@star}
+% \changes{v3.1g}{2008/01/12}{This macro added}
+% If the starred form of |\captionsetup| is used, this will be set to |true|.
+% (It will be reset to |false| at the end of |\caption@setkeys|.)
+% \begin{macrocode}
+\newif\ifcaptionsetup@star
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\captionsetup}
+% \changes{v3.0a}{2004/01/17}{Bugfix: Missing \% added}
+% \changes{v3.1}{2007/07/22}{Starred-variant added}
+% \changes{v3.1e}{2007/07/27}{Inside packages the starred variant will be used automatically}
+% \changes{v3.1f}{2007/11/16}{Bugfix 07-11-09: `space hack' added}
+% \changes{v3.1g}{2008/01/12}{\cs{ifcaptionsetup@star} will be set now}
+% |\captionsetup|\oarg{type}\marg{keyval-list of options}\\
+% |\captionsetup*|\oarg{type}\marg{keyval-list of options}\par
+% If the optional argument `type' is specified, we simply save or append
+% the option list, otherwise we `execute' it with |\setkeys|.
+% (The non-starred variant issues a warning if \meta{keyval-list of options}
+% is not used later on.)
+% \Note{The starred variant will be used inside packages automatically.}
+% \begin{macrocode}
+\newcommand*\captionsetup{%
+ \caption@teststar@\@captionsetup\@gobble\@firstofone}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\@captionsetup[1]{%
+ \captionsetup@startrue#1\captionsetup@starfalse
+ \@ifnextchar[\caption@setup@options\caption@setup}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@setup{\caption@setkeys{caption}}
+% \end{macrocode}
+% \begin{macrocode}
+\def\caption@setup@options[#1]#2{%
+ \@bsphack
+ \ifcaptionsetup@star\captionsetup@starfalse\else\caption@addtooptlist{#1}\fi
+ \expandafter\caption@l@addto@list\csname caption@opt@#1\endcsname{#2}%
+ \@esphack}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\clearcaptionsetup}
+% \changes{v3.1}{2007/07/29}{Optional argument added}
+% \changes{v3.1}{2007/08/17}{Starred variant added}
+% \changes{v3.1e}{2007/07/27}{Inside packages the starred variant will be used automatically}
+% \changes{v3.1f}{2007/11/16}{Bugfix 07-11-09: `space hack' added}
+% |\clearcaptionsetup|\oarg{option}\marg{type}\\
+% |\clearcaptionsetup*|\oarg{option}\marg{type}\par
+% This removes the saved option list associated with \meta{type}.
+% If \meta{option} is given, only this option will be removed from the list.
+% (The starred variant does not issue warnings.)
+% \Note{The starred variant will be used inside packages automatically.}
+% \begin{macrocode}
+\newcommand*\clearcaptionsetup{%
+ \caption@teststar@\@clearcaptionsetup\@gobble\@firstofone}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\@clearcaptionsetup[1]{%
+ \let\caption@tempa#1%
+ \@testopt\@@clearcaptionsetup{}}
+% \end{macrocode}
+% \begin{macrocode}
+\def\@@clearcaptionsetup[#1]#2{%
+ \@bsphack
+ \expandafter\caption@ifempty@list\csname caption@opt@#2\endcsname
+ {\caption@tempa{\caption@Warning{Option list `#2' undefined}}}%
+ {\ifx,#1,%
+ \caption@clearsetup{#2}%
+ \else
+ \caption@@removefromsetup{#1}{#2}%
+ \fi}%
+ \@esphack}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@clearsetup[1]{%
+ \caption@removefromoptlist{#1}%
+ \@nameundef{caption@opt@#1}}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@removefromsetup{%
+ \let\caption@tempa\@gobble
+ \caption@@removefromsetup}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@@removefromsetup[2]{%
+ \expandafter\let\expandafter\@tempa\csname caption@opt@#2\endcsname
+ \expandafter\let\csname caption@opt@#2\endcsname\@undefined
+ \def\@tempb##1=##2\@nil{##1}%
+ \edef\@tempc{#1}%
+ \@for\@tempa:=\@tempa\do{%
+ \edef\@tempd{\expandafter\@tempb\@tempa=\@nil}%
+ \ifx\@tempd\@tempc
+ \let\caption@tempa\@gobble
+ \else
+ \expandafter\expandafter\expandafter\caption@l@addto@list
+ \expandafter\csname caption@opt@#2\expandafter\endcsname
+ \expandafter{\@tempa}%
+ \fi}%
+ \expandafter\caption@ifempty@list\csname caption@opt@#2\endcsname
+ {\caption@removefromoptlist{#2}}{}%
+ \caption@tempa{\caption@Warning{%
+ Option `#1' was not in list `#2'\MessageBreak}}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\showcaptionsetup}
+% \changes{v3.0e}{2005/05/03}{Optimized for memory usage}
+% \changes{v3.1}{2007/07/29}{Bugfix: Does not expand option list anymore}
+% \changes{v3.1f}{2007/11/16}{Bugfix 07-11-09: `space hack' added}
+% |\showcaptionsetup|\oarg{package}\marg{type}\par
+% This comes for debugging issues: It shows the saved option list which
+% is associated with \meta{type}.
+% \begin{macrocode}
+\newcommand*\showcaptionsetup[2][\@firstofone]{%
+ \@bsphack
+ \GenericWarning{}{%
+ #1 Caption Info: Option list on `#2'\MessageBreak
+ #1 Caption Data: \@ifundefined{caption@opt@#2}{%
+ -none-%
+ }{%
+ {\expandafter\expandafter\expandafter\strip@prefix
+ \expandafter\meaning\csname caption@opt@#2\endcsname}%
+ }}%
+ \@esphack}
+% \end{macrocode}
+% \end{macro}
+%
+% \changes{v3.1}{2007/07/02}{Option \opt{options=} added}
+% \begin{macrocode}
+\DeclareCaptionOption{options}{\caption@setoptions{#1}}
+% \end{macrocode}
+%
+% \begin{macro}{\caption@setoptions}
+% \changes{v3.0i}{2006/01/03}{Optional argument added}
+% \changes{v3.0j}{2006/01/26}{Revised}
+% \changes{v3.0l}{2007/01/30}{Optional argument removed}
+% \changes{v3.1}{2007/04/11}{Usage of \cs{clearcaptionsetup} added}
+% \changes{v3.1}{2007/05/09}{Renamed from \cs{caption@settype} to \cs{caption@setoptions}}
+% \changes{v3.1f}{2007/12/03}{Definition of \cs{caption@iftypewarning} removed}
+% |\caption@setoptions|\marg{type or environment or\ldots}\par
+% Caption options which have been saved with |\captionsetup|\oarg{type} can
+% be executed by using this command.
+% It simply executes the saved option list (and clears it afterwards),
+% if there is any.
+% \begin{macrocode}
+\newcommand*\caption@setoptions[1]{%
+ \caption@Debug{options=#1}%
+ \expandafter\let\expandafter\caption@opt\csname caption@opt@#1\endcsname
+ \ifx\caption@opt\relax \else
+ \caption@xsetup\caption@opt
+ \caption@clearsetup{#1}%
+ \fi}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@xsetup[1]{\expandafter\caption@setup\expandafter{#1}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@addtooptlist}
+% \changes{v3.1}{2007/07/22}{This macro added}
+% \begin{macro}{\caption@removefromoptlist}
+% \changes{v3.1}{2007/07/22}{This macro added}
+% \changes{v3.1j}{2008/08/24}{Fatal typo corrected}
+% |\caption@addtooptlist|\marg{type}\\
+% |\caption@removefromoptlist|\marg{type}\par
+% Adds or removes an \meta{type} to the list of unused caption options.
+% Note that the catcodes of \meta{type} are sanitized here so removing
+% \meta{type} from the list do not fail when the \package{float} package
+% is used (since |\float@getstyle| gives a result which tokens have catcode
+% 12 $=$ ``other'').
+% \begin{macrocode}
+\newcommand*\caption@addtooptlist[1]{%
+ \@ifundefined{caption@opt@#1@lineno}{%
+ \caption@dooptlist\caption@g@addto@list{#1}%
+ \expandafter\xdef\csname caption@opt@#1@lineno\endcsname{\the\inputlineno}%
+ }{}}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@removefromoptlist[1]{%
+ \caption@dooptlist\caption@g@removefrom@list{#1}%
+ \global\expandafter\let\csname caption@opt@#1@lineno\endcsname\@undefined}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@dooptlist[2]{%
+ \begingroup
+ \edef\@tempa{#2}\@onelevel@sanitize\@tempa
+ \expandafter#1\expandafter\caption@optlist\expandafter{\@tempa}%
+ \endgroup}
+% \end{macrocode}
+% \begin{macrocode}
+\AtEndDocument{%
+ \caption@for@list\caption@optlist{%
+ \caption@WarningNoLine{%
+ Unused \string\captionsetup[#1]
+ on input line \csname caption@opt@#1@lineno\endcsname}}}
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+%
+% \begin{macro}{\caption@setkeys}
+% \changes{v3.0i}{2006/01/03}{This macro added}
+% \changes{v3.0l}{2007/01/20}{Bugfix: Usage of \cs{caption@keydepth} added}
+% \changes{v3.0l}{2007/01/30}{Optional argument added}
+% \changes{v3.0p}{2007/04/08}{\cs{caption@keydepth} is now a command instead of a counter}
+% \changes{v3.1b}{2007/09/18}{Usage of \cs{caption@Package} removed, we use \cs{caption@KV@err} instead}
+% \changes{v3.1f}{2007/11/16}{Bugfix 07-11-09: `space hack' added}
+% \changes{v3.1g}{2008/01/12}{\cs{captionsetup@starfalse} added}
+% \changes{v3.1k}{2009/09/30}{Bugfix 09-09-29: Missing error handler will be defined automatically}
+% |\caption@setkeys|\oarg{package}\marg{family}\marg{key-values}\par
+% This one simply calls |\setkeys|\marg{family}\marg{key-values}
+% but lets the error messages not refer to the \package{keyval} package,
+% but to the \meta{package} package instead.
+% \begin{macrocode}
+\newcommand*\caption@setkeys{\@dblarg\caption@@setkeys}
+% \end{macrocode}
+% \begin{macrocode}
+\long\def\caption@@setkeys[#1]#2#3{%
+ \@bsphack
+% \end{macrocode}
+% \begin{macrocode}
+ \expandafter\let\csname ORI@KV@err\caption@keydepth\endcsname\KV@err
+ \expandafter\let\csname ORI@KV@errx\caption@keydepth\endcsname\KV@errx
+ \expandafter\let\expandafter\KV@err\csname #1@KV@err\endcsname
+ \ifx\KV@err\relax
+ \def\KV@err##1{\PackageError{#1}{##1}{%
+ See the #1 package documentation for explanation.}}%
+ \fi
+ \let\KV@errx\KV@err
+ \edef\caption@keydepth{\caption@keydepth i}%
+% \end{macrocode}
+% \begin{macrocode}
+ \caption@Debug{\protect\setkeys{#2}{#3}}%
+ \setkeys{#2}{#3}%
+% \end{macrocode}
+% \begin{macrocode}
+ \edef\caption@keydepth{\expandafter\@gobble\caption@keydepth}%
+ \expandafter\let\expandafter\KV@err\csname ORI@KV@err\caption@keydepth\endcsname
+ \expandafter\let\expandafter\KV@errx\csname ORI@KV@errx\caption@keydepth\endcsname
+% \end{macrocode}
+% \begin{macrocode}
+ \ifx\caption@keydepth\@empty \captionsetup@starfalse \fi
+% \end{macrocode}
+% \begin{macrocode}
+ \@esphack}
+% \end{macrocode}
+% \begin{macrocode}
+\let\caption@keydepth\@empty
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@ExecuteOptions}
+% \changes{v3.1}{2007/07/15}{This macro added}
+% |\caption@ExecuteOptions|\marg{family}\marg{key-values}\par
+% We execute our options using the keyval interface, so we use this one
+% instead of |\ExecuteOptions| offered by \LaTeXe.
+% \begin{macrocode}
+\newcommand*\caption@ExecuteOptions[2]{%
+ \@expandtwoargs\caption@setkeys{#1}{#2}}%
+\@onlypreamble\caption@ExecuteOptions
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@ProcessOptions}
+% \changes{v3.0a}{2004/01/23}{Bugfix, see
+% \purett{news:400D360C.9678329F@gmx.net} for details}
+% \changes{v3.0i}{2006/01/03}{Improvement, uses \cs{caption@setkeys}
+% instead of \cs{setkeys}}
+% \changes{v3.0j}{2006/02/23}{Bugfix, now processes only those global
+% options which have a default value}
+% \changes{v3.0l}{2007/01/30}{\cs{ProcessOptionsWithKV} renamed to
+% \cs{caption@ProcessOptions} and moved from the package to the kernel}
+% \changes{v3.1}{2007/04/17}{Star variant added}
+% |\caption@ProcessOptions*|\marg{family}\par
+% We process our options using the keyval package, so we use this one
+% instead of |\ProcessOptions| offered by \LaTeXe.
+% The starred variant do not process the global options.
+% (This code was taken from the \package{hyperref} package\cite{hyperref}
+% \version{6.74} and improved.)
+% \begin{macrocode}
+\newcommand*\caption@ProcessOptions{%
+ \caption@teststar\caption@@ProcessOptions\@gobble\@firstofone}
+\@onlypreamble\caption@ProcessOptions
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@@ProcessOptions[2]{%
+ \let\@tempc\relax
+ \let\caption@tempa\@empty
+ #1{% \@firstofone -or- \@gobble
+ \@for\CurrentOption:=\@classoptionslist\do{%
+ \@ifundefined{KV@#2@\CurrentOption}{}{%
+ \@ifundefined{KV@#2@\CurrentOption @default}{%
+ \PackageInfo{#2}{Global option `\CurrentOption' ignored}%
+ }{%
+ \PackageInfo{#2}{Global option `\CurrentOption' processed}%
+ \edef\caption@tempa{\caption@tempa,\CurrentOption,}%
+ \@expandtwoargs\@removeelement\CurrentOption
+ \@unusedoptionlist\@unusedoptionlist
+ }%
+ }%
+ }%
+ \let\CurrentOption\@empty
+ }%
+ \caption@ExecuteOptions{#2}{\caption@tempa\@ptionlist{\@currname.\@currext}}%
+ \AtEndOfPackage{\let\@unprocessedoptions\relax}}
+\@onlypreamble\caption@@ProcessOptions
+% \end{macrocode}
+% \end{macro}
+%
+% \subsection{Margin resp. width}
+% \changes{v3.0p}{2007/04/01}{\cs{captionmarginx} renamed to \cs{captionmargin@}}
+% \changes{v3.0p}{2007/04/03}{Option `twoside' added}
+% \changes{v3.1}{2007/08/11}{Options `margin*', `minmargin', and `maxmargin' added}
+% \changes{v3.1f}{2007/11/10}{Option `oneside' added}
+%
+% \begin{macro}{\captionmargin}
+% \begin{macro}{\captionwidth}
+% |\captionmargin| and |\captionwidth| contain the extra margin
+% resp. the total width used for captions. Please never set these values in
+% a direct way, they are just accessible in user documents to provide
+% compatibility to \version{1.x}.\par
+% Note that we can only set one value at a time, `margin' \emph{or} `width'.
+% If |\captionwidth| is not zero we will take this value afterwards,
+% otherwise |\captionmargin| and |\captionmargin@|.
+% \begin{macrocode}
+\newdimen\captionmargin
+\newdimen\captionmargin@
+\newdimen\captionwidth
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+%
+% \begin{macrocode}
+\DeclareCaptionOption{margin}{\setcaptionmargin{#1}}
+\DeclareCaptionOption{margin*}{\setcaptionmargin*{#1}}
+\DeclareCaptionOption{width}{\setcaptionwidth{#1}}
+\DeclareCaptionOption{twoside}[1]{\caption@set@bool\caption@iftwoside{#1}}
+\DeclareCaptionOptionNoValue{oneside}{\caption@set@bool\caption@iftwoside0}
+% \end{macrocode}
+% \begin{macrocode}
+\DeclareCaptionOption{minmargin}{\caption@setoptcmd\caption@minmargin{#1}}
+\DeclareCaptionOption{maxmargin}{\caption@setoptcmd\caption@maxmargin{#1}}
+% \end{macrocode}
+%
+% \begin{macro}{\setcaptionmargin}
+% \changes{v3.0h}{2005/10/24}{Renamed from \cs{caption@setmargin} to \cs{setcaptionmargin}}
+% \changes{v3.0h}{2005/10/24}{\cs{setcaptionmargin} enhanced so it can take
+% left+right margin}
+% \changes{v3.1}{2007/08/11}{Starred variant added}
+% \changes{v3.1}{2007/08/12}{\cs{setlength}\cs{captionmargin} \&
+% \cs{setlength}\cs{captionmargin@} swapped so
+% `\texttt{margin*=}\cs{captionmargin}' works in singleline options}
+% |\setcaptionmargin|\marg{amount}\\
+% |\setcaptionmargin*|\marg{amount}\par
+% Please never use them in user documents, it's just there to
+% provide compatibility to the \package{caption2} package.
+% \begin{macrocode}
+\newcommand*\setcaptionmargin{%
+ \caption@teststar\caption@setmargin\@gobble\@firstofone}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@setmargin[2]{%
+ #1{\captionwidth\z@}%
+ \caption@@setmargin#2,#2,\@nil}
+% \end{macrocode}
+% \begin{macrocode}
+\def\caption@@setmargin#1,#2,#3\@nil{%
+ \setlength\captionmargin@{#2}%
+ \setlength\captionmargin{#1}%
+ \addtolength\captionmargin@{-\captionmargin}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\setcaptionwidth}
+% \changes{v3.0h}{2005/10/24}{Renamed from \cs{caption@setwidth} to \cs{setcaptionwidth}}
+% |\setcaptionwidth|\marg{amount}\par
+% Please never use this in user documents, it's just there to
+% provide compatibility to the \package{caption2} package.
+% \begin{macrocode}
+\newcommand*\setcaptionwidth{%
+ \captionmargin\z@
+ \captionmargin@\z@
+ \setlength\captionwidth}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@counter}
+% \changes{v3.0p}{2007/04/03}{This counter added}
+% \changes{v3.1e}{2007/10/28}{Renamed to \cs{caption@thecounter}; \cs{caption@stepcounter} added}
+% This counter numbers the captions. At the moment it will be used inside
+% |\caption@ifoddpage| only.
+% \begin{macrocode}
+\newcommand*\caption@thecounter{0}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@stepcounter{%
+ \@tempcnta\caption@thecounter
+ \advance\@tempcnta\@ne
+ \xdef\caption@thecounter{\the\@tempcnta}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@newlabel}
+% \changes{v3.0p}{2007/04/03}{This macro added}
+% This command is a modified version of |\newlabel| from \LaTeX2e.
+% It will be written to the \texttt{.aux} file to
+% pass label information from one run to another.
+% (We use it inside |\caption@ifoddpage| and |\caption@ragged|.)
+% \begin{macrocode}
+\newcommand*\caption@newlabel{\@newl@bel{caption@r}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@thepage}
+% \changes{v3.0p}{2007/04/03}{This macro added}
+% This command is a modified version of |\thepage| from \LaTeX2e.
+% It will be used inside |\caption@ifoddpage| only.
+% \begin{macrocode}
+\newcommand*\caption@thepage{\the\c@page}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@label}
+% \changes{v3.1}{2007/09/01}{This macro added}
+% \changes{v3.1f}{2007/12/03}{Definition of \cs{caption@newlabel} in AUX file added}
+% This command is a modified version of |\label| from \LaTeX2e.
+% It will be used inside |\caption@ifoddpage| and |\FP@helpNote|.
+% \begin{macrocode}
+\newcommand*\caption@label[1]{%
+ \caption@@label
+ \protected@write\@auxout{\let\caption@thepage\relax}%
+ {\string\caption@newlabel{#1}{\caption@thepage}}}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@@label{%
+ \global\let\caption@@label\relax
+ \protected@write\@auxout{}%
+ {\string\providecommand*\string\caption@newlabel[2]{}}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@pageref}
+% \changes{v3.1}{2007/09/01}{This macro added}
+% \changes{v3.1k}{2009/10/09}{Uses \cs{@latex@warning} instead of \cs{caption@Warning} now}
+% This command is a modified version of |\pageref| from \LaTeX2e.
+% It will be used inside |\caption@ifoddpage| and |\FP@helpNote|.
+% \begin{macrocode}
+\newcommand*\caption@pageref[1]{%
+ \expandafter\ifx\csname caption@r@#1\endcsname\relax
+ \G@refundefinedtrue % => 'There are undefined references.'
+ \@latex@warning{Reference `#1' on page \thepage \space undefined}%
+ \else
+ \expandafter\let\expandafter\caption@thepage\csname caption@r@#1\endcsname
+ \fi}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@ifoddpage}
+% \changes{v3.0p}{2007/04/03}{This macro added}
+% \changes{v3.1e}{2007/10/28}{Incrementation of counter moved to \cs{caption@@make}}
+% At the moment this macro uses an own label\ldots ref mechanism,
+% but an alternative implementation method would be using the
+% \package{refcount} package\cite{refcount} and |\ifodd\getpagerefnumber{|\ldots|}|.
+% \Note{This macro re-defines itself so the \texttt{.aux} file will
+% only be used once per group.}
+% \begin{macrocode}
+\newcommand*\caption@ifoddpage{%
+ \caption@iftwoside{%
+ \caption@label\caption@thecounter
+ \caption@pageref\caption@thecounter
+ \ifodd\caption@thepage
+ \let\caption@ifoddpage\@firstoftwo
+ \else
+ \let\caption@ifoddpage\@secondoftwo
+ \fi
+ }{\let\caption@ifoddpage\@firstoftwo}%
+% \end{macrocode}
+% \begin{macrocode}
+ \caption@ifoddpage}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@setoptcmd}
+% \changes{v3.1}{2007/08/11}{This macro added}
+% |\caption@setoptcmd|\marg{cmd}\marg{off -or- value}
+% \begin{macrocode}
+\newcommand*\caption@setoptcmd[2]{%
+ \caption@ifinlist{#2}{0,false,no,off}{\let#1\@undefined}{\def#1{#2}}}
+% \end{macrocode}
+% \end{macro}
+%
+% \subsection{Indentions}
+%
+% \begin{macro}{\caption@indent}
+% \changes{v3.1}{2007/07/29}{Renamed from \cs{captionindent} to \cs{caption@indent}}
+% \begin{macro}{\caption@parindent}
+% \begin{macro}{\caption@hangindent}
+% These are the indentions we support.
+% \begin{macrocode}
+\newdimen\caption@indent
+\newdimen\caption@parindent
+\newdimen\caption@hangindent
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+% \end{macro}
+%
+% \changes{v3.0b}{2004/05/16}{Defaults added for options \opt{parindent=}
+% and \opt{hangindent=}}
+% \changes{v3.0h}{2005/08/22}{Option \opt{parskip=}: \cs{AtBeginCaption}
+% replaced by \cs{caption@@par}}
+% \changes{v3.0h}{2005/08/22}{Undocumented defaults for \opt{parindent=},
+% \opt{hangindent=}, and \opt{parskip=} removed}
+% \begin{macrocode}
+\DeclareCaptionOption{indent}[\leftmargini]{% obsolete!
+ \setlength\caption@indent{#1}}
+\DeclareCaptionOption{indention}[\leftmargini]{%
+ \setlength\caption@indent{#1}}
+\DeclareCaptionOption{parindent}{%
+ \setlength\caption@parindent{#1}}
+\DeclareCaptionOption{hangindent}{%
+ \setlength\caption@hangindent{#1}}
+\DeclareCaptionOption{parskip}{%
+ \l@addto@macro\caption@@par{\setlength\parskip{#1}}}
+% \end{macrocode}
+%
+% \changes{v3.0h}{2005/08/22}{Increased compatibility to KOMA-Script:
+% A special version of options `parindent' and `parskip' added}
+% \changes{v3.0i}{2006/01/03}{Bugfix 06-01-03: KOMA-Script variants of
+% `parskip' and `parindent' options revised and moved into caption kernel}
+% \changes{v3.0j}{2006/02/23}{KOMA-Script variants of `parskip' and
+% `parindent' are obsolete now, removed}
+% \changes{v3.0o}{2007/03/30}{KOMA-Script variants of `parskip' and
+% `parindent' re-added, since they still collide with the current
+% version of the subfig package (Sigh!)}
+%
+% There is an option clash between the \KOMAScript\ document classes
+% and the \package{caption} kernel, both define the options |parindent| and
+% |parskip| but with different meaning.
+% Furthermore the ones defined by the \package{caption} kernel take a
+% value as parameter but the \KOMAScript\ ones do not.
+% So we need special versions of the options |parindent| and |parskip| here
+% which determine if a value is given (and therefore should be treated as
+% our option) or not (and therefore should be ignored by us).\footnote{%^^A
+% This problem was completely solved due a change of \cs{caption@ProcessOptions}
+% in \thispackage\ \version{3.0j}, but we still need this workaround since
+% these options would otherwise still collide with the current version $1.3$
+% of the \package{subfig} package (Sigh!)}
+% \begin{macrocode}
+\providecommand*\caption@ifkomaclass{%
+ \@ifundefined{scr@caption}\@gobble\@firstofone}
+\@onlypreamble\caption@ifkomaclass
+% \end{macrocode}
+% \begin{macrocode}
+\caption@ifkomaclass{%
+% \end{macrocode}
+% \begin{macrocode}
+ \let\caption@KV@parindent\KV@caption@parindent
+ \DeclareCaptionOption{parindent}[]{%
+ \ifx,#1,%
+ \caption@Debug{Option `parindent' ignored}%
+ \else
+ \caption@KV@parindent{#1}%
+ \fi}%
+% \end{macrocode}
+% \begin{macrocode}
+ \let\caption@KV@parskip\KV@caption@parskip
+ \DeclareCaptionOption{parskip}[]{%
+ \ifx,#1,%
+ \caption@Debug{Option `parskip' ignored}%
+ \else
+ \caption@KV@parskip{#1}%
+ \fi}%
+% \end{macrocode}
+% \begin{macrocode}
+}
+% \end{macrocode}
+%
+% \subsection{Styles}
+%
+% \begin{macro}{\DeclareCaptionStyle}
+% \changes{v3.0a}{2004/01/17}{Pass through argument \#3 so extra spaces
+% between arguments do make any harm}
+% |\DeclareCaptionStyle|\marg{name}\oarg{single-line-list-of-KV}\marg{list-of-KV}
+% \begin{macrocode}
+\newcommand*\DeclareCaptionStyle[1]{%
+ \@testopt{\caption@declarestyle{#1}}{}}
+\@onlypreamble\DeclareCaptionStyle
+% \end{macrocode}
+% \begin{macrocode}
+\def\caption@declarestyle#1[#2]#3{%
+ \global\@namedef{caption@sls@#1}{#2}%
+ \global\@namedef{caption@sty@#1}{#3}}
+\@onlypreamble\caption@declarestyle
+% \end{macrocode}
+% \end{macro}
+%
+% \changes{v3.1g}{2008/01/20}{Option \opt{style*=} added}
+% \changes{v3.1i}{2008/05/06}{Option \opt{slc=} added}
+% \begin{macrocode}
+\DeclareCaptionOption{style}{\caption@setstyle{#1}}
+\DeclareCaptionOption{style*}{\caption@setstyle*{#1}}
+\DeclareCaptionOption{singlelinecheck}[1]{\caption@set@bool\caption@ifslc{#1}}
+\DeclareCaptionOption{slc}[1]{\KV@caption@singlelinecheck{#1}}
+% \end{macrocode}
+%
+% \begin{macro}{\caption@setstyle}
+% \changes{v3.0f}{2005/06/01}{Starred variant added}
+% \changes{v3.1}{2007/07/29}{Recursive style definitions should work now}
+% \changes{v3.1d}{2007/10/23}{`SingleLine' renamed to `singleline' for consistency}
+% \changes{v3.1f}{2007/12/03}{Definition of \cs{caption@iftypewarning} removed}
+% |\caption@setstyle|\marg{name}\\
+% |\caption@setstyle*|\marg{name}\par
+% Selecting a caption style means saving the additional
+% \meta{single-line-list-of-KV} (this will be done by |\caption@sls|),
+% resetting the caption options to the base ones (this will be done using
+% |\caption@resetstyle|) and executing the \meta{list-of-KV} options
+% (this will be done using |\caption@setup|).\par
+% The starred version will give no error message if the given style is not
+% defined.
+% \begin{macrocode}
+\newcommand*\caption@setstyle{%
+ \caption@teststar\caption@@setstyle\@gobble\@firstofone}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@@setstyle[2]{%
+ \@ifundefined{caption@sty@#2}%
+ {#1{\caption@Error{Undefined style `#2'}}}%
+ {\expandafter\let\expandafter\caption@sty\csname caption@sty@#2\endcsname
+ \ifx\caption@setstyle@flag\@undefined
+ \let\caption@setstyle@flag\relax
+ \caption@resetstyle
+ \caption@xsetup\caption@sty
+ \let\caption@setstyle@flag\@undefined
+ \else
+ \caption@xsetup\caption@sty
+ \fi
+ \expandafter\let\expandafter\caption@sls\csname caption@sls@#2\endcsname
+ \expandafter\caption@l@addto@list\expandafter\caption@opt@singleline
+ \expandafter{\caption@sls}}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@resetstyle}
+% \changes{v3.1}{2007/02/04}{%
+% This macro renamed from \cs{caption@setdefault} to \cs{caption@resetstyle}}
+% \changes{v3.1d}{2007/10/23}{`SingleLine' renamed to `singleline' for consistency}
+% \changes{v3.1f}{2007/11/17}{Usage of \texttt{size=} added}
+% \changes{v3.1i}{2008/05/06}{Usage of \texttt{rule} added}
+% This resets (nearly) all caption options to the base ones.
+% \emph{Note that this does not touch the skips and the positioning!}
+% \begin{macrocode}
+\newcommand*\caption@resetstyle{%
+ \caption@setup{%
+ format=plain,labelformat=default,labelsep=colon,textformat=simple,%
+ justification=justified,font=,size=,labelfont=,textfont=,%
+ margin=0pt,minmargin=0,maxmargin=0,%
+ indent=0pt,parindent=0pt,hangindent=0pt,%
+ slc,rule,strut}%
+ \caption@clearsetup{singleline}}
+% \end{macrocode}
+% \end{macro}
+%
+% \changes{v3.0d}{2005/02/12}{\opt{indent=0pt} added to caption style \opt{default}}
+% \changes{v3.1}{2007/02/04}{Caption style `default' renamed to `base', and a new `default' added}
+% \changes{v3.1}{2007/03/31}{\opt{format=plain} added to caption style \opt{default}}
+% \changes{v3.1c}{2007/10/14}{\opt{format=plain} removed from caption style \opt{default}}
+% Currently there are two pre-defined styles, called `base' \& `default'.
+% The first one is a perfect match to the behavior of |\@makecaption| offered
+% by the standard \LaTeX\ document classes (and was called `default' in
+% \thispackage\ \version{3.0}), the second one matches the document
+% class actually used.
+% \begin{macrocode}
+\DeclareCaptionStyle{base}[indent=0pt,justification=centering]{}
+\DeclareCaptionStyle{default}[indent=0pt,justification=centering]{%
+ format=default,labelsep=default,textformat=default,%
+ justification=default,font=default,labelfont=default,textfont=default}
+% \end{macrocode}
+%
+% \subsection{Formats}
+%
+% \begin{macro}{\DeclareCaptionFormat}
+% \changes{v3.0a}{2004/01/17}{Pass through argument \#3 so extra spaces
+% between arguments do make any harm}
+% \changes{v3.0d}{2005/02/09}{Starred variant added}
+% \changes{v3.1c}{2007/10/15}{Optional argument added}
+% |\DeclareCaptionFormat|\marg{name}\marg{code with \#1, \#2, and \#3}\\
+% |\DeclareCaptionFormat*|\marg{name}\marg{code with \#1, \#2, and \#3}\par
+% The starred form causes the code being typeset in vertical (instead of
+% horizontal) mode, but does not support the |indention=| option.
+% \begin{macrocode}
+\newcommand*\DeclareCaptionFormat{%
+ \caption@teststar\caption@declareformat\@gobble\@firstofone}
+\@onlypreamble\DeclareCaptionFormat
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@declareformat[2]{%
+ \@dblarg{\caption@@declareformat#1{#2}}}
+\@onlypreamble\caption@declareformat
+% \end{macrocode}
+% \begin{macrocode}
+\long\def\caption@@declareformat#1#2[#3]#4{%
+ \global\expandafter\let\csname caption@ifh@#2\endcsname#1%
+ \global\long\@namedef{caption@slfmt@#2}##1##2##3{#3}%
+ \global\long\@namedef{caption@fmt@#2}##1##2##3{#4}}
+\@onlypreamble\caption@@declareformat
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+\DeclareCaptionOption{format}{\caption@setformat{#1}}
+% \end{macrocode}
+%
+% \begin{macro}{\caption@setformat}
+% |\caption@setformat|\marg{name}\par
+% Selecting a caption format simply means saving the code (in |\caption@fmt|)
+% and if the code should be used in horizontal or vertical mode (|\caption@ifh|).
+% \begin{macrocode}
+\newcommand*\caption@setformat[1]{%
+ \@ifundefined{caption@fmt@#1}%
+ {\caption@Error{Undefined format `#1'}}%
+ {\expandafter\let\expandafter\caption@ifh\csname caption@ifh@#1\endcsname
+ \expandafter\let\expandafter\caption@slfmt\csname caption@slfmt@#1\endcsname
+ \expandafter\let\expandafter\caption@fmt\csname caption@fmt@#1\endcsname}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\DeclareCaptionDefaultFormat}
+% \changes{v3.1g}{2008/01/31}{This macro added}
+% \begin{macrocode}
+\newcommand*\DeclareCaptionDefaultFormat[1]{%
+ \expandafter\def\expandafter\caption@fmt@default\expandafter
+ {\csname caption@fmt@#1\endcsname}%
+ \expandafter\def\expandafter\caption@slfmt@default\expandafter
+ {\csname caption@slfmt@#1\endcsname}%
+ \expandafter\def\expandafter\caption@ifh@default\expandafter
+ {\csname caption@ifh@#1\endcsname}}
+\@onlypreamble\DeclareCaptionDefaultFormat
+% \end{macrocode}
+% \end{macro}
+%
+% \changes{v3.0a}{2004/01/23}{%
+% Caption format \opt{default} renamed to \opt{normal}}
+% \changes{v3.0f}{2005/05/12}{%
+% Caption format \opt{normal} renamed to \opt{@normal}}
+% \changes{v3.0h}{2005/08/25}{%
+% Caption format \opt{@normal} renamed to \opt{plain} and documented}
+% \changes{v3.1c}{2007/10/14}{%
+% Single-line variant of caption format \opt{hang} added}
+% There are two pre-defined formats, called `plain' and `hang'.
+% \begin{macrocode}
+\DeclareCaptionFormat{plain}{#1#2#3\par}
+% \end{macrocode}
+% \begin{macrocode}
+\DeclareCaptionFormat{hang}[#1#2#3\par]{%
+ \caption@ifin@list\caption@lsepcrlist\caption@lsepname
+ {\caption@Error{%
+ The option `labelsep=\caption@lsepname' does not work\MessageBreak
+ with `format=hang'}}%
+ {\@hangfrom{#1#2}%
+ \advance\caption@parindent\hangindent
+ \advance\caption@hangindent\hangindent
+ \caption@@par#3\par}}
+% \end{macrocode}
+%
+% \changes{v3.0a}{2004/01/23}{Caption format \opt{default} linked to \opt{plain}}
+% \changes{v3.0e}{2005/04/28}{Bugfix 05-04-28: Missing \cs{caption@ifh@default} added}
+% `default' usually maps to `plain'.
+% \begin{macrocode}
+\DeclareCaptionDefaultFormat{plain}
+% \end{macrocode}
+%
+% \subsection{Label formats}
+%
+% \begin{macro}{\DeclareCaptionLabelFormat}
+% \changes{v3.0a}{2004/01/17}{%
+% Pass through argument \#2 so extra spaces between arguments do make any harm}
+% |\DeclareCaptionLabelFormat|\marg{name}\marg{code with \#1 and \#2}
+% \begin{macrocode}
+\newcommand*\DeclareCaptionLabelFormat[2]{%
+ \global\@namedef{caption@lfmt@#1}##1##2{#2}}
+\@onlypreamble\DeclareCaptionLabelFormat
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+\DeclareCaptionOption{labelformat}{\caption@setlabelformat{#1}}
+% \end{macrocode}
+%
+% \begin{macro}{\caption@setlabelformat}
+% |\caption@setlabelformat|\marg{name}\par
+% Selecting a caption label format simply means saving the code (in |\caption@lfmt|).
+% \begin{macrocode}
+\newcommand*\caption@setlabelformat[1]{%
+ \@ifundefined{caption@lfmt@#1}%
+ {\caption@Error{Undefined label format `#1'}}%
+ {\expandafter\let\expandafter\caption@lfmt\csname caption@lfmt@#1\endcsname}}
+% \end{macrocode}
+% \end{macro}
+%
+% \changes{v3.1f}{2007/12/16}{Caption label format \opt{brace} added}
+% There are four pre-defined label formats, called `empty', `simple',
+% `parens', and `brace'.
+% \begin{macrocode}
+\DeclareCaptionLabelFormat{empty}{}
+\DeclareCaptionLabelFormat{simple}{\bothIfFirst{#1}{\nobreakspace}#2}
+\DeclareCaptionLabelFormat{parens}{\bothIfFirst{#1}{\nobreakspace}(#2)}
+\DeclareCaptionLabelFormat{brace}{\bothIfFirst{#1}{\nobreakspace}#2)}
+% \end{macrocode}
+%
+% `default' usually maps to `simple'.
+% \begin{macrocode}
+\def\caption@lfmt@default{\caption@lfmt@simple}
+% \end{macrocode}
+%
+% \subsection{Label separators}
+%
+% \begin{macro}{\DeclareCaptionLabelSeparator}
+% \changes{v3.0a}{2004/01/17}{Pass through argument \#2 so extra spaces
+% between arguments do make any harm}
+% \changes{v3.0h}{2005/08/25}{Starred variant added}
+% \changes{v3.1}{2007/07/13}{Test for CR added}
+% |\DeclareCaptionLabelSeparator|\marg{name}\marg{code}\\
+% |\DeclareCaptionLabelSeparator*|\marg{name}\marg{code}\par
+% The starred form causes the label separator to be typeset \emph{without} using |\captionlabelfont|.
+% \begin{macrocode}
+\newcommand\DeclareCaptionLabelSeparator{%
+ \caption@teststar\caption@declarelabelseparator\@gobble\@firstofone}
+\@onlypreamble\DeclareCaptionLabelSeparator
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand\caption@declarelabelseparator[3]{%
+ \global\expandafter\let\csname caption@iflf@#2\endcsname#1%
+ \global\long\@namedef{caption@lsep@#2}{#3}%
+ \caption@@declarelabelseparator{#2}#3\\\@nil}
+\@onlypreamble\caption@declarelabelseparator
+% \end{macrocode}
+% \begin{macrocode}
+\long\def\caption@@declarelabelseparator#1#2\\#3\@nil{%
+ \def\@tempa{#3}\ifx\@tempa\@empty \else
+ \caption@g@addto@list\caption@lsepcrlist{#1}%
+ \fi}
+\@onlypreamble\caption@@declarelabelseparator
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+\DeclareCaptionOption{labelsep}{\caption@setlabelseparator{#1}}
+\DeclareCaptionOption{labelseparator}{\caption@setlabelseparator{#1}}
+% \end{macrocode}
+%
+% \begin{macro}{\caption@setlabelseparator}
+% |\caption@setlabelseparator|\marg{name}\par
+% Selecting a caption label separator simply means saving the code (in |\caption@lsep|).
+% \begin{macrocode}
+\newcommand*\caption@setlabelseparator[1]{%
+ \@ifundefined{caption@lsep@#1}%
+ {\caption@Error{Undefined label separator `#1'}}%
+ {\edef\caption@lsepname{#1}%
+ \expandafter\let\expandafter\caption@iflf\csname caption@iflf@#1\endcsname
+ \expandafter\let\expandafter\caption@lsep\csname caption@lsep@#1\endcsname}}
+% \end{macrocode}
+% \end{macro}
+%
+% \changes{v3.0f}{2005/06/11}{Bugfix 05-03-23: Caption label separator
+% \opt{newline} implementation changed from \cs{newline} to \cs{\textbackslash}}
+% \changes{v3.0h}{2005/08/24}{Caption label separator \opt{endash} added}
+% There are seven pre-defined label separators, called `none', `colon', `period', `space',
+% `quad', `newline', and `endash'.
+% \begin{macrocode}
+\DeclareCaptionLabelSeparator{none}{}
+\DeclareCaptionLabelSeparator{colon}{: }
+\DeclareCaptionLabelSeparator{period}{. }
+\DeclareCaptionLabelSeparator{space}{ }
+\DeclareCaptionLabelSeparator*{quad}{\quad}
+\DeclareCaptionLabelSeparator*{newline}{\\}
+\DeclareCaptionLabelSeparator*{endash}{\space\textendash\space}
+% \end{macrocode}
+%
+% \begin{macro}{\caption@setdefaultlabelsep}
+% \changes{v3.1k}{2009/03/29}{This macro added}
+% \begin{macrocode}
+\newcommand*\caption@setdefaultlabelsep[1]{%
+ \ifx\caption@lsep\caption@lsep@default
+ \caption@set@default@labelsep{#1}%
+ \caption@setlabelseparator{default}%
+ \else
+ \caption@set@default@labelsep{#1}%
+ \fi}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@set@default@labelsep[1]{%
+ \def\caption@lsep@default{\@nameuse{caption@lsep@#1}}%
+ \def\caption@iflf@default{\@nameuse{caption@iflf@#1}}}
+% \end{macrocode}
+% \end{macro}
+%
+% `default' usually maps to `colon'.
+% \begin{macrocode}
+\caption@set@default@labelsep{colon}
+% \end{macrocode}
+%
+% \subsection{Text formats}
+%
+% \begin{macro}{\DeclareCaptionTextFormat}
+% \changes{v3.0l}{2007/02/18}{This macro added}
+% |\DeclareCaptionTextFormat|\marg{name}\marg{code with \#1}
+% \begin{macrocode}
+\newcommand*\DeclareCaptionTextFormat[2]{%
+ \global\long\@namedef{caption@tfmt@#1}##1{#2}}
+\@onlypreamble\DeclareCaptionTextFormat
+% \end{macrocode}
+% \end{macro}
+%
+% \changes{v3.0d}{2005/02/12}{Option \opt{strut=} added}
+% \begin{macrocode}
+\DeclareCaptionOption{textformat}{\caption@settextformat{#1}}
+\DeclareCaptionOption{strut}[1]{\caption@set@bool\caption@ifstrut{#1}}
+% \end{macrocode}
+%
+% \begin{macro}{\caption@settextformat}
+% \changes{v3.0l}{2007/02/18}{This macro added}
+% |\caption@settextformat|\marg{name}\par
+% Selecting a caption text format simply means saving the code (in |\caption@tfmt|).
+% \begin{macrocode}
+\newcommand*\caption@settextformat[1]{%
+ \@ifundefined{caption@tfmt@#1}%
+ {\caption@Error{Undefined text format `#1'}}%
+ {\expandafter\let\expandafter\caption@tfmt\csname caption@tfmt@#1\endcsname}}
+% \end{macrocode}
+% \end{macro}
+%
+% There are two pre-defined text formats, called `simple' and `period'.
+% \begin{macrocode}
+\DeclareCaptionTextFormat{simple}{#1}
+\DeclareCaptionTextFormat{period}{#1.}
+% \end{macrocode}
+%
+% `default' usually maps to `simple'.
+% \begin{macrocode}
+\def\caption@tfmt@default{\caption@tfmt@simple}
+% \end{macrocode}
+%
+% \subsection{Fonts}
+%
+% \begin{macro}{\DeclareCaptionFont}
+% \changes{v3.0a}{2004/01/22}{%
+% Bugfix: Multi token arguments are allowed now}
+% \changes{v3.1}{2007/05/07}{%
+% Internal: Uses \cs{caption@fnt} instead of \cs{caption@temp} now}
+% |\DeclareCaptionFont|\marg{name}\marg{code}
+% \begin{macrocode}
+\newcommand*\DeclareCaptionFont[2]{%
+ \define@key{caption@fnt}{#1}[]{\l@addto@macro\caption@fnt{#2}}}
+\@onlypreamble\DeclareCaptionFont
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\DeclareCaptionDefaultFont}
+% \changes{v3.1}{2006/05/14}{This macro added}
+% \changes{v3.1g}{2008/01/31}{Renamed from \cs{DeclareDefaultCaptionFont} to \cs{DeclareCaptionDefaultFont}}
+% |\DeclareCaptionDefaultFont|\marg{name}\marg{code}
+% \begin{macrocode}
+\newcommand*\DeclareCaptionDefaultFont[2]{%
+ \global\@namedef{caption#1@default}{#2}}
+\@onlypreamble\DeclareCaptionDefaultFont
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+\DeclareCaptionOption{font}{\caption@setfont{font}{#1}}
+\DeclareCaptionOption{font+}{\caption@addtofont{font}{#1}}
+\DeclareCaptionDefaultFont{font}{}
+% \end{macrocode}
+% \begin{macrocode}
+\DeclareCaptionOption{labelfont}{\caption@setfont{labelfont}{#1}}
+\DeclareCaptionOption{labelfont+}{\caption@addtofont{labelfont}{#1}}
+\DeclareCaptionDefaultFont{labelfont}{}
+% \end{macrocode}
+% \begin{macrocode}
+\DeclareCaptionOption{textfont}{\caption@setfont{textfont}{#1}}
+\DeclareCaptionOption{textfont+}{\caption@addtofont{textfont}{#1}}
+\DeclareCaptionDefaultFont{textfont}{}
+% \end{macrocode}
+%
+% \begin{macro}{\caption@setfont}
+% \changes{v3.0l}{2007/01/30}{Usage of \cs{caption@setkeys} with optional argument}
+% \changes{v3.1}{2006/05/14}{Support of \cs{DeclareDefaultCaptionFont} added}
+% |\caption@setfont|\marg{name}\marg{keyval-list of names}\par
+% Selecting a caption font means saving all the code snippets
+% in |\caption|\meta{name}.
+% \begin{macrocode}
+\newcommand*\caption@setfont[1]{%
+ \expandafter\let\csname caption#1\endcsname\@empty
+ \caption@addtofont{#1}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@addtofont}
+% \changes{v3.1f}{2007/11/17}{This macro added}
+% |\caption@addtofont|\marg{name}\marg{keyval-list of names}\par
+% Like |\caption@setfont|, but adds the code snippets to |\caption|\meta{name}.\par
+% Because we use |\setkeys| recursive here we need to do this inside an
+% extra group.
+% \begin{macrocode}
+\newcommand*\caption@addtofont[2]{%
+ \begingroup
+ \expandafter\let\expandafter\caption@fnt\csname caption#1\endcsname
+ \define@key{caption@fnt}{default}[]{%
+ \l@addto@macro\caption@fnt{\csname caption#1@default\endcsname}}%
+ \caption@setkeys[caption]{caption@fnt}{#2}%
+ \global\let\caption@tempa\caption@fnt
+ \endgroup
+ \expandafter\let\csname caption#1\endcsname\caption@tempa}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@font}
+% \changes{v3.1}{2007/05/07}{This macro added}
+% |\caption@font|\marg{keyval-list of names}\\
+% |\caption@font*|\marg{keyval-code}\par
+% Sets the given font, e.g.~|\caption@font{small,it}|
+% is equivalent to |\small\itshape|.
+% \begin{macrocode}
+\newcommand*\caption@font{%
+ \caption@teststar\caption@@font\@firstofone
+ {\caption@setkeys[caption]{caption@fnt}}}
+\newcommand*\caption@@font[2]{%
+ \begingroup
+ \def\caption@fnt{\endgroup}%
+ #1{#2}%
+ \caption@fnt}
+% \end{macrocode}
+% \end{macro}
+%
+% These are the pre-defined font code snippets.
+%
+% \changes{v3.1}{2007/05/07}{Color font support added (kernel)}
+% \begin{macrocode}
+\DeclareCaptionFont{normalcolor}{\normalcolor}
+\DeclareCaptionFont{color}{\color{#1}}
+% \end{macrocode}
+%
+% \begin{macrocode}
+\DeclareCaptionFont{normalfont}{\normalfont}
+\DeclareCaptionFont{up}{\upshape}
+\DeclareCaptionFont{it}{\itshape}
+\DeclareCaptionFont{sl}{\slshape}
+\DeclareCaptionFont{sc}{\scshape}
+\DeclareCaptionFont{md}{\mdseries}
+\DeclareCaptionFont{bf}{\bfseries}
+\DeclareCaptionFont{rm}{\rmfamily}
+\DeclareCaptionFont{sf}{\sffamily}
+\DeclareCaptionFont{tt}{\ttfamily}
+% \end{macrocode}
+%
+% \begin{macrocode}
+\DeclareCaptionFont{scriptsize}{\scriptsize}
+\DeclareCaptionFont{footnotesize}{\footnotesize}
+\DeclareCaptionFont{small}{\small}
+\DeclareCaptionFont{normalsize}{\normalsize}
+\DeclareCaptionFont{large}{\large}
+\DeclareCaptionFont{Large}{\Large}
+% \end{macrocode}
+%
+% \changes{v3.0p}{2007/04/02}{\package{setspace} package support added (kernel)}
+% \changes{v3.1k}{2009/10/09}{Bugfix 09-05-18: \package{setspace} package support revised (kernel)}
+% \begin{macrocode}
+\DeclareCaptionFont{singlespacing}{%
+ \@ifundefined{setspace@singlespace}{}{%
+ \setstretch\setspace@singlespace}}% normally 1
+\DeclareCaptionFont{onehalfspacing}{\onehalfspacing}
+\DeclareCaptionFont{doublespacing}{\doublespacing}
+\DeclareCaptionFont{stretch}{\setstretch{#1}}
+% \end{macrocode}
+%
+% \begin{macrocode}
+%\DeclareCaptionFont{normal}{%
+% \caption@font{normalcolor,normalfont,normalsize,singlespacing}
+\DeclareCaptionFont{normal}{%
+ \caption@font*{%
+ \KV@caption@fnt@normalcolor\@unused
+ \KV@caption@fnt@normalfont\@unused
+ \KV@caption@fnt@normalsize\@unused
+ \KV@caption@fnt@singlespacing\@unused}}
+% \end{macrocode}
+%
+% \changes{v3.0a}{2004/01/23}{Option \opt{size=} now sets \cs{captionsize} instead of \cs{captionfont}}
+% The old versions \version{1.x} of \thispackage\ offered this
+% command to setup the font size used for captions. We still do
+% so old documents will work fine.
+% \begin{macrocode}
+\DeclareCaptionOption{size}{\caption@setfont{size}{#1}}
+\DeclareCaptionDefaultFont{size}{}
+% \end{macrocode}
+%
+% \subsection{Justifications}
+%
+% \begin{macro}{\DeclareCaptionJustification}
+% \changes{v3.0a}{2004/01/17}{Pass through argument \#2 so extra spaces
+% between arguments do make any harm}
+% \changes{v3.1}{2007/07/03}{Mapped to \cs{DeclareCaptionFont}}
+% |\DeclareCaptionJustification|\marg{name}\marg{code}
+% \begin{macrocode}
+\newcommand*\DeclareCaptionJustification[2]{%
+ \global\@namedef{caption@hj@#1}{#2}% for compatibility to v3.0
+ \DeclareCaptionFont{#1}{#2}}
+\@onlypreamble\DeclareCaptionJustification
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\DeclareCaptionDefaultJustification}
+% \changes{v3.1}{2007/07/03}{This macro added}
+% \changes{v3.1g}{2008/01/31}{Renamed from \cs{DeclareDefaultCaptionJustification} to \cs{DeclareCaptionDefaultJustification}}
+% |\DeclareCaptionDefaultJustification|\marg{code}
+% \begin{macrocode}
+\newcommand*\DeclareCaptionDefaultJustification[1]{%
+ \global\@namedef{caption@hj@default}{#1}% for compatibility to v3.0
+ \DeclareCaptionDefaultFont{@hj}{#1}}
+\@onlypreamble\DeclareCaptionDefaultJustification
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+\DeclareCaptionOption{justification}{\caption@setjustification{#1}}
+\DeclareCaptionDefaultJustification{}
+% \end{macrocode}
+%
+% \begin{macro}{\caption@setjustification}
+% \changes{v3.1}{2007/07/03}{Mapped to \cs{caption@setfont}}
+% |\caption@setjustification|\marg{name}\par
+% Selecting a caption justification simply means saving the code (in |\caption@hj|).
+% \begin{macrocode}
+\newcommand*\caption@setjustification{\caption@setfont{@hj}}
+% \end{macrocode}
+% \end{macro}
+%
+% These are the pre-defined justification code snippets.
+% \begin{macrocode}
+\DeclareCaptionJustification{justified}{}
+\DeclareCaptionJustification{centering}{\centering}
+\DeclareCaptionJustification{centerfirst}{\centerfirst}
+\DeclareCaptionJustification{centerlast}{\centerlast}
+\DeclareCaptionJustification{raggedleft}{\raggedleft}
+\DeclareCaptionJustification{raggedright}{\raggedright}
+% \end{macrocode}
+%
+% \begin{macro}{\centerfirst}
+% \changes{v3.0l}{2007/01/21}{Bugfix: Usage of \cs{@centercr} added (Thanks to Olga!)}
+% \changes{v3.0l}{2007/01/21}{This macro renamed from \cs{caption@centerfirst} to \cs{centerfirst}}
+% Please blame Frank Mittelbach for the code of |\centerfirst| |:-)|
+% \begin{macrocode}
+\providecommand\centerfirst{%
+ \let\\\@centercr
+ \edef\caption@normaladjust{%
+ \leftskip\the\leftskip
+ \rightskip\the\rightskip
+ \parfillskip\the\parfillskip\relax}%
+ \leftskip\z@\@plus -1fil%
+ \rightskip\z@\@plus 1fil%
+ \parfillskip\z@skip
+ \noindent\hskip\z@\@plus 2fil%
+ \@setpar{\@@par\@restorepar\caption@normaladjust}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\centerlast}
+% \changes{v3.0l}{2007/01/21}{Bugfix: Usage of \cs{@centercr} added (Thanks to Olga!)}
+% \changes{v3.0l}{2007/01/21}{This macro renamed from \cs{caption@centerlast} to \cs{centerlast}}
+% This is based on code from Anne Br\"uggemann-Klein\cite{Anne}
+% \begin{macrocode}
+\providecommand\centerlast{%
+ \let\\\@centercr
+ \leftskip\z@\@plus 1fil%
+ \rightskip\z@\@plus -1fil%
+ \parfillskip\z@\@plus 2fil\relax}
+% \end{macrocode}
+% \end{macro}
+%
+% \subsubsection{The ragged2e package}
+% \changes{v3.0b}{2004/05/16}{Improved \package{ragged2e} package support}
+%
+% We also support the upper-case commands offered by the \package{ragged2e}
+% package.
+% Note that these just map to their lower-case variants if the
+% \package{ragged2e} package is not available.
+% \begin{macrocode}
+\DeclareCaptionJustification{Centering}{%
+ \caption@ragged\Centering\centering}
+\DeclareCaptionJustification{RaggedLeft}{%
+ \caption@ragged\RaggedLeft\raggedleft}
+\DeclareCaptionJustification{RaggedRight}{%
+ \caption@ragged\RaggedRight\raggedright}
+% \end{macrocode}
+%
+% \begin{macro}{\caption@ragged}
+% \changes{v3.0p}{2007/04/07}{The `ragged2e' package will now only been
+% loaded when needed}
+% \changes{v3.0q}{2007/04/11}{Bugfix: Usage of \cs{caption@Info} replaced
+% by \cs{caption@Debug}}
+% \changes{v3.1}{2007/04/16}{A different warning will be given on first \LaTeX\ run}
+% |\caption@ragged| will be basically defined as
+% \begin{quote}
+% |\AtBeginDocument{\IfFileExists{ragged2e.sty}%|\\
+% | {\RequirePackage{ragged2e}\let\caption@ragged\@firstoftwo}%|\\
+% | {\let\caption@ragged\@secondoftwo}}|
+% \end{quote}
+% but with an additional warning if the ragged2e package is not loaded (yet).
+% (This warning will be type out only one time per option, that's why
+% we need the |caption\string#1| stuff.)
+% Furthermore we load the \package{ragged2e} package, if needed and available.
+% \begin{macrocode}
+\newcommand*\caption@ragged{%
+ \caption@Debug{We need ragged2e}%
+ \protected@write\@auxout{}{\string\caption@newlabel{ragged2e}{}}%
+ \global\let\caption@ragged\caption@@ragged
+ \caption@ragged}
+% \end{macrocode}
+% \begin{macrocode}
+\caption@AtBeginDocument{%
+ \@ifundefined{caption@r@ragged2e}{%
+ \newcommand*\caption@@ragged{%
+ \caption@Warning{%
+ `ragged2e' support has been changed.\MessageBreak
+ Rerun to get captions right}%
+ \global\let\caption@ragged\@secondoftwo % suppress further warnings
+ \caption@ragged}%
+ }{%
+ \caption@Debug{We load ragged2e}%
+ \IfFileExists{ragged2e.sty}{%
+ \RequirePackage{ragged2e}%
+ \let\caption@@ragged\@firstoftwo
+ }{%
+ \newcommand*\caption@@ragged[2]{%
+ \@ifundefined{caption\string#1}{%
+ \caption@Warning{%
+ `ragged2e' package not loaded, therefore\MessageBreak
+ substituting \string#2 for \string#1\MessageBreak}%
+ \global\@namedef{caption\string#1}}{}%
+ #2}%
+ }%
+ }}
+% \end{macrocode}
+% \begin{macrocode}
+% \end{macrocode}
+% \end{macro}
+%
+% \subsection{Vertical spaces before and after captions}
+%
+% \begin{macro}{\abovecaptionskip}
+% \begin{macro}{\belowcaptionskip}
+% Usually these skips are defined within the document class, but some
+% document classes don't do so.
+% \begin{macrocode}
+\@ifundefined{abovecaptionskip}{%
+ \newlength\abovecaptionskip\setlength\abovecaptionskip{10\p@}}{}
+\@ifundefined{belowcaptionskip}{%
+ \newlength\belowcaptionskip\setlength\belowcaptionskip{0\p@}}{}
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+%
+% \changes{v3.0d}{2005/02/12}{Option \opt{skip=} added}
+% \begin{macrocode}
+\DeclareCaptionOption{aboveskip}{\setlength\abovecaptionskip{#1}}
+\DeclareCaptionOption{belowskip}{\setlength\belowcaptionskip{#1}}
+\DeclareCaptionOption{skip}{\setlength\abovecaptionskip{#1}}
+% \end{macrocode}
+%
+% \begin{macro}{\caption@rule}
+% \changes{v3.1i}{2008/05/06}{This macro added}
+% |\caption@rule|\par
+% Draws an invisible rule to adjust the ``skip'' setting.
+% \begin{macrocode}
+\newcommand*\caption@rule{\caption@ifrule\caption@hrule\relax}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@hrule{\hrule\@height\z@}
+% \end{macrocode}
+% \end{macro}
+%
+% \changes{v3.1i}{2008/05/06}{Option \opt{rule=} added}
+% \begin{macrocode}
+\DeclareCaptionOption{rule}[1]{\caption@set@bool\caption@ifrule{#1}}
+% \end{macrocode}
+%
+% \subsection{Positioning}
+%
+% These macros handle the right position of the caption.
+% Note that the position is actually \emph{not} controlled by the
+% \package{caption3} kernel options, but by the user (or a specific package
+% like the \package{float} package) instead.
+% The user can put the |\caption| command wherever he likes! So this stuff
+% is only to give us a \emph{hint} where to put the right skips, the user
+% usually has to take care for himself that this hint actually matches the
+% right position.
+%
+% \begin{macrocode}
+\DeclareCaptionOption{position}{\caption@setposition{#1}}
+% \end{macrocode}
+%
+% \begin{macro}{\caption@setposition}
+% \changes{v3.0a}{2004/01/22}{Now the positions \opt{t}, \opt{above}, \opt{b},
+% \opt{below}, and \opt{a} are allowed, too}
+% \changes{v3.0d}{2004/08/10}{Usage of \cs{caption@defaultpos} added}
+% |\caption@setposition|\marg{position}\par
+% Selecting the caption position means that we put |\caption@position| to
+% the right value. \emph{Please do \textbf{not} use the internal macro
+% \cs{caption@position} in your own package or document, but use the wrapper
+% macro \cs{caption@iftop} instead.}
+% \begin{macrocode}
+\newcommand*\caption@setposition[1]{%
+ \caption@ifinlist{#1}{d,default}{%
+ \let\caption@position\caption@defaultpos
+ }{\caption@ifinlist{#1}{t,top,above}{%
+ \let\caption@position\@firstoftwo
+ }{\caption@ifinlist{#1}{b,bottom,below}{%
+ \let\caption@position\@secondoftwo
+ }{\caption@ifinlist{#1}{a,auto}{%
+ \let\caption@position\@undefined
+ }{%
+ \caption@Error{Undefined position `#1'}%
+ }}}}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@defaultpos}
+% \changes{v3.1}{2007/05/08}{Default position changed from `bottom' to `auto'}
+% The default `position' is `auto', this means that \thispackage\ will try
+% to guess the current position of the caption.
+% (But in many cases, for example in |longtable|s, this is doomed to fail!)\par
+% The setting `bottom' correspondents to the |\@makecaption| implementation
+% in the standard \LaTeX\ document classes, but `auto' should give better
+% results in most cases.
+% \begin{macrocode}
+%\caption@setdefaultpos{a}% default = auto
+\let\caption@defaultpos\@undefined
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@iftop}
+% \changes{v3.0a}{2004/01/23}{Split into \cs{caption@iftop} \& \cs{caption@fixposition}}
+% \changes{v3.0d}{2005/02/12}{Adapted to \cs{caption@defaultpos}}
+% \changes{v3.1}{2007/05/08}{Position will be fixed to `bottom' if `auto'}
+% |\caption@iftop|\marg{true-code}\marg{false-code}\par
+% (If the |position=| is set to |auto| we assume a |bottom| position here.)
+% \begin{macrocode}
+\newcommand*\caption@iftop{%
+ \ifx\caption@position\@undefined
+ \let\caption@position\@secondoftwo
+% = \caption@setposition b%
+ \fi
+ \caption@position}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@fixposition}
+% \changes{v3.0b}{2004/05/16}{%
+% Split into \cs{caption@fixposition} & \cs{caption@autoposition}}
+% |\caption@fixposition|\par
+% This macro checks if the `position' is set to `auto'.
+% If yes, |\caption@autoposition| will be called to
+% set |\caption@position| to a proper value we can actually use.
+% \begin{macrocode}
+\newcommand*\caption@fixposition{%
+ \ifx\caption@position\@undefined
+ \caption@autoposition
+ \fi}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@autoposition}
+% \changes{v3.0a}{2004/01/23}{\cs{ifvmode} added}
+% |\caption@autoposition|\par
+% We guess the current position of the caption by checking |\prevdepth|.\par
+% A different solution would be setting the |\spacefactor| to something
+% not much less than 1000 (for example 994) in |\caption@start| and
+% checking this value here by |\ifnum\spacefactor=994|.
+% (It's implemented in the \package{threeparttable}
+% package\cite{threeparttable} this way.)\par
+% Another idea would be checking |\@ifminipage|, but since some packages
+% typeset the caption within a simple |\vbox| this does not seem to be a
+% good one.
+% \begin{macrocode}
+\newcommand*\caption@autoposition{%
+ \ifvmode
+ \edef\caption@tempa{\the\prevdepth}%
+ \caption@Debug{\protect\prevdepth=\caption@tempa}%
+ \ifdim\prevdepth>-\p@
+ \let\caption@position\@secondoftwo
+ \else
+ \let\caption@position\@firstoftwo
+ \fi
+% = \caption@setposition{\ifdim\prevdepth>-\p@ b\else t\fi}%
+ \else
+ \caption@Debug{no \protect\prevdepth}%
+ \let\caption@position\@secondoftwo
+% = \caption@setposition b%
+ \fi}
+% \end{macrocode}
+% \end{macro}
+% \begin{macro}{\caption@setautoposition}
+% \changes{v3.1}{2007/06/10}{This macro added}
+% |\caption@setautoposition|\marg{position}\par
+% replaces the above algorithm by a different one (or a fixed position setting).
+% \begin{macrocode}
+\newcommand*\caption@setautoposition[1]{%
+ \def\caption@autoposition{\caption@setposition{#1}}}
+% \end{macrocode}
+% \end{macro}
+%
+% \subsection{Hooks}
+%
+% \begin{macro}{\AtBeginCaption}
+% \begin{macro}{\AtEndCaption}
+% |\AtBeginCaption| \marg{code}\\
+% |\AtEndCaption| \marg{code}\par
+% These hooks can be used analogous to |\AtBeginDocument| and |\AtEndDocument|.
+% \begin{macrocode}
+\newcommand*\caption@beginhook{}
+\newcommand*\caption@endhook{}
+\newcommand*\AtBeginCaption{\l@addto@macro\caption@beginhook}
+\newcommand*\AtEndCaption{\l@addto@macro\caption@endhook}
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+%
+% \subsection{Lists}
+%
+% \changes{v3.0b}{2004/05/16}{Option \opt{listof=} added}
+% \changes{v3.1f}{2007/11/17}{Option \opt{list=} added}
+% \begin{macrocode}
+\DeclareCaptionOption{list}[1]{\caption@setlist{#1}}
+\DeclareCaptionOption{listof}[1]{\caption@setlist{#1}}
+% \end{macrocode}
+%
+% \begin{macro}{\caption@setlist}
+% \changes{v3.1g}{2008/03/20}{This macro added}
+% |\caption@setlist|\marg{boolean}
+% \begin{macrocode}
+\newcommand*\caption@setlist{\caption@set@bool\caption@iflist}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\DeclareCaptionListFormat}
+% \changes{v3.1}{2004/07/15}{This macro added}
+% \changes{v3.1f}{2007/11/17}{Renamed from \cs{DeclareCaptionListOfFormat} to \cs{DeclareCaptionListFormat}}
+% |\DeclareCaptionListFormat|\marg{name}\marg{code with \#1 and \#2}
+% \begin{macrocode}
+\newcommand*\DeclareCaptionListFormat[2]{%
+ \global\@namedef{caption@lstfmt@#1}##1##2{#2}}
+\@onlypreamble\DeclareCaptionListFormat
+% \end{macrocode}
+% \end{macro}
+%
+% \changes{v3.1}{2007/07/15}{Option \opt{listofformat=} added}
+% \changes{v3.1f}{2007/11/17}{Option \opt{listofformat=} renamed to \opt{listformat=}}
+% \begin{macrocode}
+\DeclareCaptionOption{listformat}{\caption@setlistformat{#1}}
+% \end{macrocode}
+%
+% \begin{macro}{\caption@setlistformat}
+% \changes{v3.1}{2004/07/15}{This macro added}
+% \changes{v3.1f}{2007/11/17}{Renamed from \cs{caption@setlistofformat} to \cs{caption@setlistformat}}
+% |\caption@setlistformat|\marg{name}\par
+% Selecting a caption list format simply means saving the code (in |\caption@lstfmt|).
+% \begin{macrocode}
+\newcommand*\caption@setlistformat[1]{%
+ \@ifundefined{caption@lstfmt@#1}%
+ {\caption@Error{Undefined list format `#1'}}%
+ {\expandafter\let\expandafter\caption@lstfmt
+ \csname caption@lstfmt@#1\endcsname}}
+% \end{macrocode}
+% \end{macro}
+%
+% There are five pre-defined list formats, taken from the \package{subfig} package.
+% \begin{macrocode}
+\DeclareCaptionListFormat{empty}{}
+\DeclareCaptionListFormat{simple}{#1#2}
+\DeclareCaptionListFormat{parens}{#1(#2)}
+\DeclareCaptionListFormat{subsimple}{#2}
+\DeclareCaptionListFormat{subparens}{(#2)}
+% \end{macrocode}
+%
+% \begin{macro}{\caption@setdefaultlistformat}
+% \changes{v3.1k}{2009/03/29}{This macro added}
+% \begin{macrocode}
+\newcommand*\caption@setdefaultlistformat[1]{%
+ \ifx\caption@lstfmt\caption@lstfmt@default
+ \caption@set@default@listformat{#1}%
+ \caption@setlistformat{default}%
+ \else
+ \caption@set@default@listformat{#1}%
+ \fi}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@set@default@listformat[1]{%
+ \def\caption@lstfmt@default{\@nameuse{caption@lstfmt@#1}}}
+% \end{macrocode}
+% \end{macro}
+%
+% `default' usually maps to `subsimple'.
+% \begin{macrocode}
+\caption@set@default@listformat{subsimple}
+% \end{macrocode}
+%
+% \subsection{Debug option}
+% \changes{v3.0m}{2007/03/04}{Debug option added (kernel)}
+%
+% \begin{macrocode}
+\DeclareCaptionOption{debug}[1]{%
+ \caption@set@bool\caption@ifdebug{#1}%
+ \caption@ifdebug
+ {\def\caption@Debug{\PackageInfo{caption}}}%
+ {\let\caption@Debug\@gobble}}
+% \end{macrocode}
+% \begin{macrocode}
+\DeclareOption{debug}{\setkeys{caption}{debug}}
+% \end{macrocode}
+% \begin{macrocode}
+\setkeys{caption}{debug=0}
+% \end{macrocode}
+%
+% \subsection{Document classes \& Babel support}
+%
+% \subsubsection{The standard \texorpdfstring{\LaTeX{}}{LaTeX} classes}
+%
+% \begin{macrocode}
+\caption@CheckCommand\@makecaption{%
+ % article|report|book [2005/09/16 v1.4f Standard LaTeX document class]
+ \long\def\@makecaption#1#2{%
+ \vskip\abovecaptionskip
+ \sbox\@tempboxa{#1: #2}%
+ \ifdim \wd\@tempboxa >\hsize
+ #1: #2\par
+ \else
+ \global \@minipagefalse
+ \hb@xt@\hsize{\hfil\box\@tempboxa\hfil}%
+ \fi
+ \vskip\belowcaptionskip}}
+% \end{macrocode}
+%
+% \subsubsection{The \AmS{} \& \SmF{} classes}
+% \changes{v3.1}{2007/07/29}{\AmS\ \& \SmF\ classes support added (kernel)}
+%
+% \begin{macrocode}
+\providecommand*\caption@ifamsclass{%
+ \@ifundefined{@captionheadfont}\@gobble\@firstofone}
+\@onlypreamble\caption@ifamsclass
+% \end{macrocode}
+% \begin{macrocode}
+\caption@ifamsclass{%
+% \end{macrocode}
+% \begin{macrocode}
+ \caption@CheckCommand\@makecaption{%
+ % amsart|amsproc|amsbook [2004/08/06 v2.20]
+ \long\def\@makecaption#1#2{%
+ \setbox\@tempboxa\vbox{\color@setgroup
+ \advance\hsize-2\captionindent\noindent
+ \@captionfont\@captionheadfont#1\@xp\@ifnotempty\@xp
+ {\@cdr#2\@nil}{.\@captionfont\upshape\enspace#2}%
+ \unskip\kern-2\captionindent\par
+ \global\setbox\@ne\lastbox\color@endgroup}%
+ \ifhbox\@ne % the normal case
+ \setbox\@ne\hbox{\unhbox\@ne\unskip\unskip\unpenalty\unkern}%
+ \fi
+ \ifdim\wd\@tempboxa=\z@ % this means caption will fit on one line
+ \setbox\@ne\hbox to\columnwidth{\hss\kern-2\captionindent\box\@ne\hss}%
+ \else % tempboxa contained more than one line
+ \setbox\@ne\vbox{\unvbox\@tempboxa\parskip\z@skip
+ \noindent\unhbox\@ne\advance\hsize-2\captionindent\par}%
+ \fi
+ \ifnum\@tempcnta<64 % if the float IS a figure...
+ \addvspace\abovecaptionskip
+ \hbox to\hsize{\kern\captionindent\box\@ne\hss}%
+ \else % if the float IS NOT a figure...
+ \hbox to\hsize{\kern\captionindent\box\@ne\hss}%
+ \nobreak
+ \vskip\belowcaptionskip
+ \fi
+ \relax
+ }}
+% \end{macrocode}
+% \begin{macrocode}
+ \caption@CheckCommand\@makecaption{%
+ % smfart|smfbook [1999/11/15 v1.2f Classe LaTeX pour les articles publies par la SMF]
+ \long\def\@makecaption#1#2{%
+ \ifdim\captionindent>.1\hsize \captionindent.1\hsize \fi
+ \setbox\@tempboxa\vbox{\color@setgroup
+ \advance\hsize-2\captionindent\noindent
+ \@captionfont\@captionheadfont#1\@xp\@ifnotempty\@xp
+ {\@cdr#2\@nil}{\@addpunct{.}\@captionfont\upshape\enspace#2}%
+ \unskip\kern-2\captionindent\par
+ \global\setbox\@ne\lastbox\color@endgroup}%
+ \ifhbox\@ne % the normal case
+ \setbox\@ne\hbox{\unhbox\@ne\unskip\unskip\unpenalty\unkern}%
+ \fi
+ \ifdim\wd\@tempboxa=\z@ % this means caption will fit on one line
+ \setbox\@ne\hbox to\columnwidth{\hss\kern-2\captionindent\box\@ne\hss}%
+ \@tempdima\wd\@ne\advance\@tempdima-\captionindent
+ \wd\@ne\@tempdima
+ \else % tempboxa contained more than one line
+ \setbox\@ne\vbox{\rightskip=0pt plus\captionindent\relax
+ \unvbox\@tempboxa\parskip\z@skip
+ \noindent\unhbox\@ne\advance\hsize-2\captionindent\par}%
+ \fi
+ \ifnum\@tempcnta<64 % if the float IS a figure...
+ \addvspace\abovecaptionskip
+ \noindent\kern\captionindent\box\@ne
+ \else % if the float IS NOT a figure...
+ \noindent\kern\captionindent\box\@ne
+ \nobreak
+ \vskip\belowcaptionskip
+ \fi
+ \relax
+ }}
+% \end{macrocode}
+% \begin{macrocode}
+ \let\captionmargin\captionindent % set to 3pc by AMS class
+ \begingroup\edef\@tempa{\endgroup
+ \noexpand\caption@g@addto@list\noexpand\caption@sty@default
+ {margin=\the\captionmargin
+ \@ifundefined{smf@makecaption}{}{,maxmargin=.1\linewidth}}}
+ \@tempa
+ \caption@g@addto@list\caption@sls@default{margin*=.5\captionmargin}
+ \DeclareCaptionLabelSeparator{default}{.\enspace}
+ \DeclareCaptionDefaultFont{font}{\@captionfont}
+ \DeclareCaptionDefaultFont{labelfont}{\@captionheadfont}
+ \DeclareCaptionDefaultFont{textfont}{\@captionfont\upshape}
+ \captionsetup[figure]{position=b}
+ \captionsetup[table]{position=t}
+% \end{macrocode}
+% \begin{macrocode}
+}
+% \end{macrocode}
+%
+% \subsubsection{The beamer class}
+% \changes{v3.1}{2007/03/10}{beamer class support added (kernel)}
+%
+% \begin{macrocode}
+\providecommand*\caption@ifbeamerclass{%
+ \@ifclassloaded{beamer}\@firstofone\@gobble}
+\@onlypreamble\caption@ifbeamerclass
+% \end{macrocode}
+% \begin{macrocode}
+\caption@ifbeamerclass{%
+% \end{macrocode}
+% \begin{macrocode}
+ \caption@CheckCommand\beamer@makecaption{%
+ % beamerbaselocalstructure.sty,v 1.53 2007/01/28 20:48:21 tantau
+ \long\def\beamer@makecaption#1#2{%
+ \def\insertcaptionname{\csname#1name\endcsname}%
+ \def\insertcaptionnumber{\csname the#1\endcsname}%
+ \def\insertcaption{#2}%
+ \nobreak\vskip\abovecaptionskip\nobreak
+ \sbox\@tempboxa{\usebeamertemplate**{caption}}%
+ \ifdim \wd\@tempboxa >\hsize
+ \usebeamertemplate**{caption}\par
+ \else
+ \global \@minipagefalse
+ \hb@xt@\hsize{\hfil\box\@tempboxa\hfil}%
+ \fi
+ \nobreak\vskip\belowcaptionskip\nobreak}}
+% \end{macrocode}
+% \begin{macrocode}
+ \DeclareCaptionLabelFormat{default}{#1}
+ \DeclareCaptionDefaultJustification{\raggedright}
+ \DeclareCaptionDefaultFont{font}{%
+ \usebeamerfont*{caption}%
+ \usebeamercolor[fg]{caption}}
+ \DeclareCaptionDefaultFont{labelfont}{%
+ \usebeamercolor[fg]{caption name}%
+ \usebeamerfont*{caption name}}
+% \end{macrocode}
+% If the \package{beamer} document class is used, we offer a beamer
+% template called `caption3' which can be used with option `beamer' or
+% |\setbeamertemplate{caption}[caption3]|.\par
+% (Note that this is of no use when \thispackage\ is used, too.)
+% \begin{macrocode}
+ \defbeamertemplate{caption}{caption3}{%
+ \caption@make\insertcaptionname\insertcaptionnumber\insertcaption}
+% \end{macrocode}
+% \begin{macrocode}
+ \DeclareOption{beamer}{%
+ % \usebeamertemplate**{caption} will set font
+ \DeclareCaptionDefaultFont{font}{}%
+ \setbeamertemplate{caption}[caption3]}
+% \end{macrocode}
+% \begin{macrocode}
+}
+% \end{macrocode}
+%
+% \subsubsection{The \KOMAScript{} classes}
+% \changes{v3.1}{2007/03/31}{\KOMAScript\ classes support added (kernel)}
+%
+% \begin{macrocode}
+\providecommand*\caption@ifkomaclass{%
+ \@ifundefined{scr@caption}\@gobble\@firstofone}
+\@onlypreamble\caption@ifkomaclass
+% \end{macrocode}
+% \begin{macrocode}
+\caption@ifkomaclass{%
+% \end{macrocode}
+% \begin{macrocode}
+ \caption@CheckCommand\@makecaption{%
+ % scrartcl|scrreprt|scrbook [2007/03/07 v2.97a KOMA-Script document class]
+ \long\def\@makecaption#1#2{%
+ \if@captionabove
+ \vskip\belowcaptionskip
+ \else
+ \vskip\abovecaptionskip
+ \fi
+ \@@makecaption\@firstofone{#1}{#2}%
+ \if@captionabove
+ \vskip\abovecaptionskip
+ \else
+ \vskip\belowcaptionskip
+ \fi}}
+% \end{macrocode}
+% \begin{macrocode}
+ \DeclareCaptionFormat{default}[#1#2#3\par]{%
+ \ifdofullc@p
+ \caption@ifin@list\caption@lsepcrlist\caption@lsepname
+ {\caption@Error{%
+ The option `labelsep=\caption@lsepname' does not work\MessageBreak
+ with \noexpand\setcaphanging (which is set by default)}}%
+ {\caption@fmt@hang{#1}{#2}{#3}}%
+ \else
+ #1#2%
+ \ifdim\cap@indent<\z@
+ \par
+ \noindent\hspace*{-\cap@indent}%
+ \else\if@capbreak
+ \par
+ \fi\fi
+ #3\par
+ \fi}
+ \DeclareCaptionLabelSeparator{default}{\captionformat}
+ \DeclareCaptionDefaultFont{font}{\scr@fnt@caption}
+ \DeclareCaptionDefaultFont{labelfont}{\scr@fnt@captionlabel}
+% \end{macrocode}
+% \begin{macrocode}
+}
+% \end{macrocode}
+%
+% \subsubsection{The \NTG{} Dutch classes}
+% \changes{v3.1}{2007/04/06}{NTG classes support added (kernel)}
+%
+% \begin{macrocode}
+\providecommand*\caption@ifntgclass{%
+ \@ifundefined{CaptionFonts}\@gobble\@firstofone}
+\@onlypreamble\caption@ifntgclass
+% \end{macrocode}
+% \begin{macrocode}
+\caption@ifntgclass{%
+% \end{macrocode}
+% \begin{macrocode}
+ \caption@CheckCommand\@makecaption{%
+ % artikel|rapport|boek [2004/06/07 v2.1a NTG LaTeX document class]
+ \long\def\@makecaption#1#2{%
+ \vskip\abovecaptionskip
+ \sbox\@tempboxa{{\CaptionLabelFont#1:} \CaptionTextFont#2}%
+ \ifdim \wd\@tempboxa >\hsize
+ {\CaptionLabelFont#1:} \CaptionTextFont#2\par
+ \else
+ \global \@minipagefalse
+ \hb@xt@\hsize{\hfil\box\@tempboxa\hfil}%
+ \fi
+ \vskip\belowcaptionskip}}
+% \end{macrocode}
+% \begin{macrocode}
+ \DeclareCaptionDefaultFont{labelfont}{\CaptionLabelFont}
+ \DeclareCaptionDefaultFont{textfont}{\CaptionTextFont}
+% \end{macrocode}
+% \begin{macrocode}
+}
+% \end{macrocode}
+%
+% \subsubsection{The thesis class}
+% \changes{v3.1g}{2008/01/31}{thesis class support added (kernel)}
+% \changes{v3.1l}{2009/11/15}{Bugfix 09-11-14: thesis class support revised (kernel)}
+%
+% \begin{macrocode}
+\providecommand*\caption@ifthesisclass{%
+ \@ifundefined{cph@font}{\@gobble}{\@ifundefined{cpb@font}\@gobble\@firstofone}}
+% \end{macrocode}
+% \begin{macrocode}
+\caption@ifthesisclass{%
+% \end{macrocode}
+% \begin{macrocode}
+ \caption@CheckCommand\@makecaption{%
+ % thesis.cls 1996/25/01 1.0g LaTeX document class (wm).
+ \long\def\@makecaption#1#2{%
+ \vskip\abovecaptionskip
+ \setbox\@tempboxa\hbox{{\cph@font #1:} {\cpb@font #2}}%
+ \ifdim \wd\@tempboxa >\hsize
+ \@hangfrom{\cph@font #1: }{\cpb@font #2\par}%
+ \else
+ \hbox to\hsize{\hfil\box\@tempboxa\hfil}%
+ \fi
+ \vskip\belowcaptionskip}}
+% \end{macrocode}
+% \begin{macrocode}
+ \DeclareCaptionDefaultFormat{hang}
+ \DeclareCaptionDefaultFont{labelfont}{\cph@font}
+ \DeclareCaptionDefaultFont{textfont}{\cpb@font}
+% \end{macrocode}
+% \begin{macrocode}
+}
+% \end{macrocode}
+%
+% \subsubsection{The frenchb Babel option}
+% \changes{v3.1}{2006/05/14}{\package{frenchb} package support added (kernel)}
+%
+% \begin{macrocode}
+\@ifundefined{FB@makecaption}{}{%
+% \end{macrocode}
+% \begin{macrocode}
+ \caption@CheckCommand\@makecaption{%
+ % frenchb.ldf [2005/02/06 v1.6g French support from the babel system]
+ % frenchb.ldf [2007/10/05 v2.0e French support from the babel system]
+ \long\def\@makecaption#1#2{%
+ \vskip\abovecaptionskip
+ \sbox\@tempboxa{#1\CaptionSeparator #2}%
+ \ifdim \wd\@tempboxa >\hsize
+ #1\CaptionSeparator #2\par
+ \else
+ \global \@minipagefalse
+ \hb@xt@\hsize{\hfil\box\@tempboxa\hfil}%
+ \fi
+ \vskip\belowcaptionskip}}
+% \end{macrocode}
+% \begin{macrocode}
+ \ifx\@makecaption\STD@makecaption
+ \DeclareCaptionLabelSeparator{default}{\CaptionSeparator}
+ \def\caption@frenchb{% supress frenchb warning
+ \let\STD@makecaption\@makecaption
+ \let\FB@makecaption\@makecaption}
+ \else
+ \ifx\@makecaption\@undefined\else
+ \PackageInfo{caption}{%
+ The definition of \protect\@makecaption\space
+ has been changed,\MessageBreak
+ frenchb will NOT customize it}%
+ \fi
+ \fi
+% \end{macrocode}
+% \begin{macrocode}
+}
+% \end{macrocode}
+%
+% \subsubsection{The frenchle/pro package}
+% \changes{v3.1}{2006/05/14}{\package{frenchle/pro} package support added (kernel)}
+%
+% \begin{macrocode}
+\@ifundefined{frenchTeXmods}{}{%
+% \end{macrocode}
+% \begin{macrocode}
+ \caption@CheckCommand\@makecaption{%
+ % french(le).sty [2006/10/03 The french(le) package /V5,9991/]
+ % french(le).sty [2007/06/28 The french(le) package /V5,9994/]
+ \def\@makecaption#1#2{%
+ \ifFTY%
+ \def\@secondofmany##1##2\void{##2}%
+ \def\@tempa{\@secondofmany#2\void}%
+ \ifx\@tempa\empty%
+ \let\captionseparator\empty%
+ \fi%
+ \@mcORI{#1}{\relax\captionfont{#2}}%
+ \else
+ \@mcORI{#1}{#2}%
+ \fi}}
+% \end{macrocode}
+% \begin{macrocode}
+ \caption@CheckCommand\@makecaption{%
+ % french(le).sty [2007/02/11 The french(le) package /V5,9993/]
+ \def\@makecaption#1#2{%
+ \ifFTY%
+ \def\@secondofmany##1##2\void{##2}%
+ \protected@edef\@tempa{\@secondofmany#2\void}%
+ \ifx\@tempa\empty%
+ \let\captionseparator\empty%
+ \fi%
+ \@mcORI{#1}{\relax\captionfont{#2}}%
+ \else
+ \@mcORI{#1}{#2}%
+ \fi}}
+% \end{macrocode}
+% \begin{macrocode}
+ \DeclareCaptionDefaultFont{textfont}{\itshape}%
+ \DeclareCaptionLabelSeparator{default}{\captionseparator\space}%
+% \end{macrocode}
+% \begin{macrocode}
+}
+% \end{macrocode}
+%
+% \iffalse
+% \subsubsection{The hungarian and magyar Babel option}
+% \changes{v3.2}{2009/03/29}{\package{magyar} package support added (kernel)}
+%
+% \begin{macrocode}
+\DeclareCaptionListFormat{subperiod}{#2.}
+% \end{macrocode}
+%
+% \begin{macrocode}
+%%% \def\caption@tempa#1{\@ifundefined{extras#1}{}{%
+%%% \expandafter\addto\csname extras#1\endcsname{%
+%%% % reverse changes made by magyar.ldf
+%%% \let\@makecaption\caption@makecaption
+%%% \babel@save\@makecaption
+%%% \caption@redefine
+%%% \babel@save\@caption
+%%% % change default labelsep and listformat
+%%% \caption@setdefaultlabelsep{period}%
+%%% \caption@setdefaultlistformat{subperiod}}%
+%%% \expandafter\addto\csname noextras#1\endcsname{%
+%%% % change default labelsep and listformat
+%%% \caption@setdefaultlabelsep{colon}%
+%%% \caption@setdefaultlistformat{subsimple}}%
+%%% }}
+% \end{macrocode}
+% \begin{macrocode}
+%%% \caption@tempa{hungarian}
+%%% \caption@tempa{magyar}
+% \end{macrocode}
+% \fi
+%
+% \subsection{Execution of options}
+%
+% \begin{macrocode}
+\captionsetup{style=default,position=default,%
+ list,listformat=default,twoside=\if@twoside 1\else 0\fi}
+% \end{macrocode}
+% \begin{macrocode}
+\ProcessOptions*
+% \end{macrocode}
+%
+% \changes{v3.1}{2007/04/10}{Check of document class added}
+% \begin{macrocode}
+\caption@IfCheckCommand{%
+ \caption@setbool{documentclass}{1}%
+}{%
+ \caption@setbool{documentclass}{0}%
+ \PackageInfo{caption}{%
+ Unknown document class (or package),\MessageBreak
+ standard defaults will be used}%
+ \caption@Debug{\string\@makecaption\space=\space\meaning\@makecaption\@gobble}%
+}
+% \end{macrocode}
+%
+% \subsection{Making an `List of' entry}
+%
+% \begin{macro}{\caption@addcontentsline}
+% \changes{v3.1}{2007/07/01}{This macro added}
+% |\caption@addcontentsline|\marg{type}\marg{list entry}\par
+% Makes an entry in the list-of-whatever, if requested,
+% i.e.~the argument \meta{list entry} is not empty and
+% |listof=| was set to |true|.
+% \begin{macrocode}
+\newcommand*\caption@addcontentsline[2]{%
+ \caption@iflist
+ {\def\@tempa{#2}}%
+ {\let\@tempa\@empty}%
+ \ifx\@tempa\@empty \else
+ {\let\\\space
+ \addcontentsline{\csname ext@#1\endcsname}{#1}%
+ {\protect\numberline
+ {\caption@lstfmt{\@nameuse{p@#1}}{\@nameuse{the#1}}}%
+ {\ignorespaces #2}}}%
+ \fi}
+% \end{macrocode}
+% \end{macro}
+%
+% \subsection{Typesetting the caption}
+%
+% \begin{macro}{\ifcaption@star}
+% If the starred form of |\caption| is used, this will be set to |true|.
+% (It will be reset to |false| at the end of |\caption@@make|.)
+% \begin{macrocode}
+\newif\ifcaption@star
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@fnum}
+% \changes{v3.1}{2007/08/21}{This macro added}
+% |\caption@fnum|\marg{float type}\par
+% Typesets the caption label; as replacement for |\fnum@|\meta{float type}.
+% \begin{macrocode}
+\newcommand*\caption@fnum[1]{\caption@lfmt{\@nameuse{#1name}}{\@nameuse{the#1}}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@make}
+% |\caption@make|\marg{float name}\marg{ref.\ number}\marg{text}\par
+% Typesets the caption.
+% \begin{macrocode}
+\newcommand\caption@make[2]{\caption@@make{\caption@lfmt{#1}{#2}}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@@make}
+% \changes{v3.0b}{2004/05/16}{Bugfix 04-05-05: \cs{ifdim}\cs{captionindent=}\cs{z@} added}
+% \changes{v3.0d}{2005/02/12}{Bugfix 04-10-26: Use \cs{@tempdima} instead of
+% \cs{captionmargin} resp. \cs{captionwidth}; check for \cs{z@} added}
+% \changes{v3.0d}{2005/02/12}{Bugfix: \cs{hskip}\cs{captionmargin} to the end
+% of caption added}
+% \changes{v3.0d}{2005/02/12}{Bugfix: \cs{strut} moved from here to \cs{caption@@@make}}
+% \changes{v3.0d}{2005/02/12}{Single-line-check moved up so it can affect margins now}
+% \changes{v3.0d}{2005/02/09}{Improvement: \cs{caption@ifh} added}
+% \changes{v3.0d}{2005/02/09}{Bugfix: \cs{leavevmode} added}
+% \changes{v3.0h}{2005/08/24}{Uses \cs{sbox} instead of \cs{setbox} in single-line-check}
+% \changes{v3.0i}{2005/12/04}{Uses \cs{caption@slc} now}
+% \changes{v3.0i}{2006/01/11}{Bugfix: \cs{caption@calcmargin} inside
+% single-line-check replaced by \cs{relax}}
+% \changes{v3.0i}{2006/01/11}{Bugfix: \cs{caption@startbox} will always be
+% typeset in horizontal mode}
+% \changes{v3.0k}{2006/05/13}{Uses \cs{caption@parbox} instead of \cs{caption@start/endbox}}
+% \changes{v3.0l}{2007/01/04}{Oops, bugfix 04-05-05 got lost in v3.0j, re-added}
+% \changes{v3.0p}{2007/04/03}{Usage of \cs{caption@ifoddpage} added}
+% \changes{v3.1}{2007/07/29}{\cs{caption@calcmargin} moved below single-line-check}
+% \changes{v3.1e}{2007/10/28}{\cs{caption@stepcounter} added}
+% |\caption@@make|\marg{caption label}\marg{caption text}
+% \begin{macrocode}
+\newcommand\caption@@make[2]{%
+ \begingroup
+ \caption@stepcounter
+ \caption@beginhook
+% \end{macrocode}
+%
+% Check margin, if |\caption@minmargin| or |\caption@maxmargin| is set
+% \begin{macrocode}
+ \ifx\caption@maxmargin\@undefined \else
+ \ifdim\captionmargin>\caption@maxmargin\relax
+ \captionmargin\caption@maxmargin\relax
+ \fi
+ \fi
+ \ifx\caption@minmargin\@undefined \else
+ \ifdim\captionmargin<\caption@minmargin\relax
+ \captionmargin\caption@minmargin\relax
+ \fi
+ \fi
+% \end{macrocode}
+%
+% Special single-line treatment (option |singlelinecheck=|)
+% \begin{macrocode}
+ \caption@ifslc{\caption@slc{#1}{#2}\captionwidth\relax}{}%
+% \end{macrocode}
+%
+% Typeset the left margin (option |margin=|)
+% \begin{macrocode}
+ \caption@calcmargin
+ \@tempdima\captionmargin
+ \ifdim\captionmargin@=\z@ \else
+ \caption@ifoddpage{}{\advance\@tempdima\captionmargin@}%
+ \fi
+ \caption@ifh{\advance\@tempdima\caption@indent}%
+ \hspace\@tempdima
+% \end{macrocode}
+%
+% We actually use a |\vbox| of width |\captionwidth - \caption@indent|
+% to typeset the caption.
+% \Note{\cs{captionindent} is \emph{not} supported if the caption format
+% was defined with \cs{DeclareCaptionFormat*}.}
+% \begin{macrocode}
+ \@tempdima\captionwidth
+ \caption@ifh{\advance\@tempdima-\caption@indent}%
+ \caption@parbox\@tempdima{%
+% \end{macrocode}
+%
+% Typeset the indention (option |indention=|)\\
+% {\small Bugfix 04-05-05:
+% |\hskip-\caption@indent| replaced by |\ifdim\caption@indent=\z@|\ldots}
+% \begin{macrocode}
+ \caption@ifh{%
+ \ifdim\caption@indent=\z@
+ \leavevmode
+ \else
+ \hskip-\caption@indent
+ \fi}%
+% \end{macrocode}
+%
+% Typeset the caption itself and close the |\caption@parbox|
+% \begin{macrocode}
+ \caption@@@make{#1}{#2}}%
+% \end{macrocode}
+%
+% Typeset the right margin (option |margin=|)
+% \begin{macrocode}
+ \@tempdima\captionmargin
+ \ifdim\captionmargin@=\z@ \else
+ \caption@ifoddpage{\advance\@tempdima\captionmargin@}{}%
+ \fi
+ \hspace\@tempdima
+% \end{macrocode}
+%
+% \begin{macrocode}
+ \caption@endhook
+ \endgroup
+% \end{macrocode}
+%
+% \begin{macrocode}
+ \global\caption@starfalse}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@calcmargin}
+% \changes{v3.0h}{2005/10/24}{Internal: \cs{ifcaption@width} replaced by
+% \cs{ifdim}\cs{captionwidth=}\cs{z@}}
+% \changes{v3.0i}{2006/01/12}{Improvement: Takes care of list environment now}
+% \changes{v3.1}{2006/05/13}{Check of \cs{@listdepth} removed (not necessary anymore),
+% use \cs{linewidth} instead of \cs{hsize}}
+% |\caption@calcmargin|\par
+% Calculate |\captionmargin| \& |\captionwidth|, so both contain valid
+% values.
+% \begin{macrocode}
+\newcommand*\caption@calcmargin{%
+ \ifdim\captionwidth=\z@
+ \captionwidth\linewidth
+ \advance\captionwidth by -2\captionmargin
+ \advance\captionwidth by -\captionmargin@
+ \else
+ \captionmargin\linewidth
+ \advance\captionmargin by -\captionwidth
+ \divide\captionmargin by 2
+ \captionmargin@\z@
+ \fi
+% \end{macrocode}
+% \begin{macrocode}
+ \caption@Debug{%
+ \string\hsize=\the\hsize,
+ \string\linewidth=\the\linewidth,\MessageBreak
+ \string\leftmargin=\the\leftmargin,
+ \string\rightmargin=\the\rightmargin,\MessageBreak
+ \string\margin=\the\captionmargin,
+ \string\margin@=\the\captionmargin@,
+ \string\width=\the\captionwidth}%
+% \end{macrocode}
+% \begin{macrocode}
+}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@slc}
+% \changes{v3.1}{2007/06/13}{\cs{let}\cs{caption@hj}\cs{relax} added}
+% \changes{v3.1}{2007/07/29}{\cs{caption@setup}\cs{caption@sls} added after \cs{begingroup}}
+% \changes{v3.1}{2007/07/29}{\cs{caption@calcmargin} added}
+% \changes{v3.1c}{2007/10/14}{Support of \cs{caption@slfmt} added}
+% \changes{v3.1d}{2007/10/23}{`SingleLine' renamed to `singleline' for consistency}
+% |\caption@slc|\marg{label}\marg{text}\marg{width}\marg{extra code}\par
+% This one does the single-line-check.
+% \begin{macrocode}
+\newcommand\caption@slc[4]{%
+ \caption@Debug{Begin SLC}%
+ \begingroup
+ \caption@singleline
+ \let\caption@hj\@empty
+ \caption@calcmargin % calculate #3 if necessary
+ \caption@prepareslc
+ \sbox\@tempboxa{\caption@@@make{#1}{#2}}%
+ \ifdim\wd\@tempboxa>#3%
+ \endgroup
+ \else
+ \endgroup
+ \caption@singleline
+ #4%
+ \fi
+ \caption@Debug{End SLC}}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@singleline{%
+ \caption@xsetup\caption@opt@singleline
+ \let\caption@fmt\caption@slfmt}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@prepareslc}
+% \changes{v3.0b}{2004/05/16}{Bugfix: Redefinition of \cs{label} \& \cs{@footnotetext} added}
+% \changes{v3.0b}{2004/05/16}{Redefine \cs{stepcounter} instead of \cs{footnote(mark)}}
+% \changes{v3.0d}{2005/02/12}{\cs{let}\cs{caption@hj}\cs{relax} added}
+% \changes{v3.0h}{2005/07/09}{Support of \package{endnotes} package added}
+% \changes{v3.1}{2007/06/13}{\cs{let}\cs{caption@hj}\cs{relax} moved to \cs{caption@slc}}
+% \changes{v3.1}{2007/06/13}{Redefinition of \cs{(H@)refstepcounter} added}
+% \changes{v3.1}{2007/08/12}{Redefinition of \cs{label} improved}
+% \changes{v3.1c}{2007/10/06}{Definition of \cs{caption@l@stepcounter} added}
+% |\caption@prepareslc|\par
+% Re-define anything which would disturb the single-line-check.
+% \begin{macrocode}
+\newcommand*\caption@prepareslc{%
+ \let\@footnotetext\@gobble\let\@endnotetext\@gobble
+ \def\label{\caption@withoptargs\@gobbletwo}%
+ \let\stepcounter\caption@l@stepcounter
+ \let\refstepcounter\stepcounter\let\H@refstepcounter\stepcounter}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@l@stepcounter[1]{\advance\csname c@#1\endcsname\@ne\relax}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@parbox}
+% \changes{v3.0k}{2006/05/13}{We define \cs{caption@parbox} instead of
+% \cs{caption@start/endbox}}
+% \changes{v3.0n}{2006/03/09}{Bugfix 07-03-09: \cs{caption@parbox} changed from
+% \cs{parbox-t} to \cs{parbox-b}}
+% \changes{v3.1f}{2007/11/11}{Renamed from \cs{captionbox} to \cs{caption@parbox}}
+% |\caption@parbox|\marg{width}\marg{contents}\par
+% This macro defines the box which surrounds the caption paragraph.
+% \begin{macrocode}
+\newcommand*\caption@parbox{\parbox[b]}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@@@make}
+% \changes{v3.0b}{2004/05/16}{Bugfix 04-05-06: \cs{allowhyphens} added}
+% \changes{v3.0d}{2005/02/12}{Bugfix 04-12-16: Use some kind of
+% \cs{@startstrut}\cs{strutbox} instead of \cs{strut}}
+% \changes{v3.0d}{2005/02/12}{Bugfix 05-01-23: \cs{@finalstrut}\cs{strutbox} added}
+% \changes{v3.0e}{2005/05/05}{Use \cs{caption@ifempty};
+% \cs{let}\cs{caption@ifstrut}\cs{@secondoftwo} added}
+% \changes{v3.0e}{2005/05/05}{Bugfix: Handling of \cs{ifcaption@star} changed}
+% \changes{v3.0h}{2005/08/24}{Check for empty label added}
+% \changes{v3.0h}{2005/08/25}{\cs{caption@iflf} added}
+% \changes{v3.0l}{2007/02/18}{Usage of \cs{caption@tfmt} added}
+% \changes{v3.1}{2007/05/07}{Bugfix: \cs{ifhmode} added to \cs{@finalstrut}}
+% \changes{v3.1f}{2007/11/17}{Made option \opt{size=} stronger than \opt{font=}}
+% |\caption@@@make|\marg{caption label}\marg{caption text}\par
+% This one finally typesets the caption paragraph, without margin and indention.
+% \begin{macrocode}
+\newcommand\caption@@@make[2]{%
+% \end{macrocode}
+%
+% If the label is empty, we use no caption label separator.
+% \begin{macrocode}
+ \sbox\@tempboxa{#1}%
+ \ifdim\wd\@tempboxa=\z@
+ \let\caption@lsep\relax
+% \@capbreakfalse
+ \fi
+% \end{macrocode}
+%
+% If the text is empty, we use no caption label separator, too.
+% \begin{macrocode}
+ \caption@ifempty{#2}{%
+ \let\caption@lsep\relax
+% \@capbreakfalse
+% \let\caption@ifstrut\@secondoftwo
+ }%
+% \end{macrocode}
+%
+% Take care that |\caption@parindent| and |\caption@hangindent| will be used
+% to typeset the paragraph.
+% \begin{macrocode}
+ \@setpar{\@@par\caption@@par}\caption@@par
+% \end{macrocode}
+%
+% Finally typeset the caption.
+% \begin{macrocode}
+ \caption@hj\captionfont\captionsize\caption@fmt
+ {\ifcaption@star\else{\captionlabelfont#1}\fi}%
+ {\ifcaption@star\else{\caption@iflf\captionlabelfont\caption@lsep}\fi}%
+ {{\captiontextfont
+ \caption@ifstrut{\vrule\@height\ht\strutbox\@width\z@}{}%
+ \nobreak\hskip\z@skip % enable hyphenation
+ \caption@tfmt{#2}%
+% \caption@ifstrut{\vrule\@height\z@\@depth\dp\strutbox\@width\z@}{}%
+ \caption@ifstrut{\ifhmode\@finalstrut\strutbox\fi}{}%
+ \par}}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@ifempty}
+% \changes{v3.0e}{2005/05/05}{This macro added}
+% \changes{v3.1}{2007/07/04}{Re-defines itself now}
+% \changes{v3.1g}{2007/01/22}{Revised so \cs{label} will be detected, too}
+% \changes{v3.1i}{2008/08/02}{Revised so \cs{index} and \cs{glossary} will be detected, too}
+% |\caption@ifempty|\marg{text}\marg{true} (\emph{no} \meta{false})\par
+% This one tests if the \meta{text} is actually empty.
+% \Note{This will be done without expanding the text,
+% therefore this is far away from being bullet-proof.}
+% \Note{This macro is re-defining itself so only
+% the first test (in a group) will actually be done.}
+% \begin{macrocode}
+\newcommand\caption@ifempty[1]{%
+ \caption@if@empty{#1}%
+ \caption@ifempty\@unused}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand\caption@if@empty[1]{%
+ \def\caption@tempa{#1}%
+ \ifx\caption@tempa\@empty
+ \let\caption@ifempty\@secondoftwo
+ \else
+ \expandafter\def\expandafter\caption@tempa\expandafter{%
+ \caption@car#1\caption@if@empty\caption@nil}%
+ \def\caption@tempb{\caption@if@empty}%
+ \ifx\caption@tempa\caption@tempb
+ \let\caption@ifempty\@secondoftwo
+ \else
+ \def\caption@tempb{\ignorespaces}%
+ \ifx\caption@tempa\caption@tempb
+ \expandafter\caption@if@empty\expandafter{\@gobble#1}%
+ \else
+ \def\caption@tempb{\label}%
+ \ifx\caption@tempa\caption@tempb
+ \expandafter\caption@if@empty\expandafter{\@gobbletwo#1}%
+ \else
+ \def\caption@tempb{\index}%
+ \ifx\caption@tempa\caption@tempb
+ \expandafter\caption@if@empty\expandafter{\@gobbletwo#1}%
+ \else
+ \def\caption@tempb{\glossary}%
+ \ifx\caption@tempa\caption@tempb
+ \expandafter\caption@if@empty\expandafter{\@gobbletwo#1}%
+ \else
+ \let\caption@ifempty\@gobbletwo
+ \fi
+ \fi
+ \fi
+ \fi
+ \fi
+ \fi}
+% \end{macrocode}
+% \begin{macrocode}
+\long\def\caption@car#1#2\caption@nil{#1}% same as \@car, but \long
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@@par}
+% \changes{v3.0h}{2005/08/22}{Made this definition global}
+% |\caption@@par|\par
+% This command will be executed with every |\par| inside the caption.
+% \begin{macrocode}
+\newcommand*\caption@@par{%
+ \parindent\caption@parindent\hangindent\caption@hangindent}%
+% \end{macrocode}
+% \end{macro}
+%
+% \subsection{Types \& sub-types}
+%
+% \begin{macro}{\DeclareCaptionType}
+% \changes{v3.1}{2007/08/12}{This macro added}
+% \changes{v3.1a}{2007/09/07}{Three optional arguments added}
+% \changes{v3.1f}{2007/12/06}{Renamed from \cs{DeclareFloatingEnvironment} to \cs{DeclareCaptionType}}
+% \changes{v3.1f}{2007/12/21}{Optional argument revised, uses key-value syntax now}
+% \changes{v3.1i}{2008/04/13}{Uses \cs{caption@within@default} now}
+% \changes{v3.1i}{2008/08/02}{Support of \cs{float@exts} and \cs{float@addtolists} added}
+% \changes{v3.1l}{2010/01/09}{Usage of \cs{caption@DeclareWithinOption} added}
+% |\DeclareCaptionType|\oarg{options}\marg{environment}\oarg{name}\oarg{list name}
+% \begin{macrocode}
+\newcommand*\DeclareCaptionType{%
+ \@testopt\@DeclareCaptionType{}}
+\@onlypreamble\DeclareCaptionType
+% \end{macrocode}
+% \begin{macrocode}
+\def\@DeclareCaptionType[#1]#2{%
+ \def\caption@type{#2}%
+ \caption@Debug{New type `#2'}%
+ \newcounter{#2}\@namedef{theH#2}{}%
+ \KV@caption@DCT@within\caption@within@default
+ \caption@DeclareWithinOption{#2}%
+ \KV@caption@DCT@placement{tbp}%
+ \@ifundefined{c@float@type}%
+ {\newcounter{float@type}%
+ \setcounter{float@type}{\@ifundefined{c@figure}14}}%
+ {}%
+ \caption@Debug{float type `#2'=\the\value{float@type}}%
+ \expandafter\xdef\csname ftype@#2\endcsname{\the\value{float@type}}%
+ \addtocounter{float@type}{\value{float@type}}%
+ \KV@caption@DCT@fileext{lo#2}%
+ \@namedef{fnum@#2}{\@nameuse{#2name}\nobreakspace\@nameuse{the#2}}%
+ \newenvironment{#2}{\@float{#2}}{\end@float}%
+ \newenvironment{#2*}{\@dblfloat{#2}}{\end@dblfloat}%
+ \expandafter\newcommand\csname listof#2s\endcsname{\caption@listof{#2}}%
+ \@ifundefined{l@figure}%
+ {\@namedef{l@#2}{\@dottedtocline{1}{1.5em}{2.3em}}}%
+ {\expandafter\let\csname l@#2\endcsname\l@figure}%
+% \end{macrocode}
+% \begin{macrocode}
+ \expandafter\newcommand\csname #2name\endcsname{}%
+ \edef\@tempa{\def\noexpand\@tempa{\@car#2\@nil}}%
+ \uppercase\expandafter{\@tempa}%
+ \edef\@tempb{\noexpand\g@addto@macro\noexpand\@tempa{\@cdr#2\@nil}}%
+ \@tempb
+ \expandafter\let\csname #2name\endcsname\@tempa
+ \expandafter\newcommand\csname list#2name\endcsname{}%
+ \expandafter\xdef\csname list#2name\endcsname{List of \@tempa s}%
+% \end{macrocode}
+% \begin{macrocode}
+ \@cons\caption@typelist{{#2}}%
+ \caption@setkeys[caption]{caption@DCT}{#1}%
+% \end{macrocode}
+% \begin{macrocode}
+ \@ifundefined{float@exts}{\newtoks\float@exts}{}%
+ \let\float@do=\relax
+ \edef\@tempa{\noexpand\float@exts{\the\float@exts\float@do{\@nameuse{ext@#2}}}}%
+ \@tempa
+ \@ifundefined{float@addtolists}{%
+ \newcommand\float@addtolists[1]{%
+ \def\float@do####1{\addtocontents{####1}{##1}}\the\float@exts}%
+ \@ifundefined{@chapter}{}{\caption@PatchChapter}}{}%
+% \end{macrocode}
+% \begin{macrocode}
+ \@ifnextchar[\@@DeclareCaptionType\relax}
+\@onlypreamble\@DeclareCaptionType
+% \end{macrocode}
+% \begin{macrocode}
+\def\@@DeclareCaptionType[#1]{%
+ \KV@caption@DCT@name{#1}%
+ \@ifnextchar[\@@@DeclareCaptionType\relax}
+\@onlypreamble\@@DeclareCaptionType
+% \end{macrocode}
+% \begin{macrocode}
+\def\@@@DeclareCaptionType[#1]{%
+ \KV@caption@DCT@listname{#1}}
+\@onlypreamble\@@@DeclareCaptionType
+% \end{macrocode}
+% \begin{macrocode}
+\let\DeclareFloatingEnvironment\DeclareCaptionType % old command name
+\@onlypreamble\DeclareFloatingEnvironment
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@within@default}
+% \changes{v3.1i}{2008/04/13}{This macro added}
+% The default `within' value.
+% \begin{macrocode}
+\newcommand*\caption@within@default{\@ifundefined{c@chapter}{none}{chapter}}
+\@onlypreamble\caption@within@default
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@listof}
+% \changes{v3.1f}{2007/12/21}{This macro added}
+% |\caption@listof|\marg{float type}
+% \begin{macrocode}
+\newcommand*\caption@listof[1]{%
+ \begingroup
+ \expandafter\let\expandafter\listfigurename\csname list#1name\endcsname
+ \expandafter\let\expandafter\ext@figure\csname ext@#1\endcsname
+ \let\caption@ORI@starttoc\@starttoc
+ \renewcommand*\@starttoc[1]{%
+ \expandafter\caption@ORI@starttoc\expandafter{\ext@figure}}%
+ \listoffigures
+ \endgroup}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@typelist}
+% An \cs{@elt}-list containing the caption types defined
+% with |\Declare|\x|Caption|\x|Type|.
+% \begin{macrocode}
+\newcommand*\caption@typelist{}
+% \end{macrocode}
+% \end{macro}
+%
+% The available \meta{options} are:
+% |fileext=|\meta{file extension},
+% |listname=|\meta{list name},
+% |name=|\meta{prosa name},
+% |placement=|\meta{htbp},
+% |within=|\meta{none,chapter,section}, and
+% |without|.
+% \begin{macrocode}
+\define@key{caption@DCT}{fileext}{\@namedef{ext@\caption@type}{#1}}
+\@onlypreamble@key{caption@DCT}{fileext}
+\define@key{caption@DCT}{listname}{\@namedef{list\caption@type name}{#1}}
+\@onlypreamble@key{caption@DCT}{listname}
+\define@key{caption@DCT}{name}{\@namedef{\caption@type name}{#1}}
+\@onlypreamble@key{caption@DCT}{name}
+\define@key{caption@DCT}{placement}{\@namedef{fps@\caption@type}{#1}}
+\@onlypreamble@key{caption@DCT}{placement}
+\define@key{caption@DCT}{within}{%
+ \@ifundefined{c@chapter}{}{\@removefromreset\caption@type{chapter}}%
+ \@removefromreset\caption@type{section}%
+ \begingroup
+ \caption@setkeys[caption]{caption@within}{#1}%
+ \endgroup}
+%\@onlypreamble@key{caption@DCT}{within}
+\define@key{caption@DCT}{without}{\KV@caption@DCT@within{none}}
+%\@onlypreamble@key{caption@DCT}{without}
+% \end{macrocode}
+% \changes{v3.1k}{2009/03/29}{Bugfix 08-09-25: \texttt{within=section} fixed}
+% \begin{macrocode}
+\define@key{caption@within}{none}[]{%
+ \caption@within{}{}}
+%\@onlypreamble@key{caption@within}{none}
+\define@key{caption@within}{section}[]{%
+ \@addtoreset\caption@type{section}%
+ \caption@within{\ifnum\c@section>\z@ \thesection.\fi}{\theHsection.}}
+%\@onlypreamble@key{caption@within}{section}
+\@ifundefined{c@chapter}{}{%
+ \define@key{caption@within}{chapter}[]{%
+ \@addtoreset\caption@type{chapter}%
+ \caption@within{\ifnum\c@chapter>\z@ \thechapter.\fi}{\theHchapter.}}
+}% \@onlypreamble@key{caption@within}{chapter}}
+% \end{macrocode}
+% \begin{macro}{\caption@within}
+% \changes{v3.1f}{2007/12/21}{This macro added}
+% |\caption@within|\marg{thecode}\marg{theHcode}
+% \begin{macrocode}
+\newcommand*\caption@within{%
+ \expandafter\caption@within@\expandafter{\caption@type}}
+%\@onlypreamble\caption@within
+\newcommand*\caption@within@[3]{%
+ \global\@namedef{the#1}{#2\arabic{#1}}%
+ \@ifundefined{theH#1}\caption@AtBeginDocument\@firstofone
+ {\global\@namedef{theH#1}{#3\arabic{#1}}}}
+%\@onlypreamble\caption@within@
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\@removefromreset}
+% \changes{v3.1f}{2007/12/21}{This macro added}
+% This code was taken from the \package{remreset} package
+% which is part of the `carlisle' package bundle.
+% (Copyright 1997 David Carlisle)
+% \begin{macrocode}
+\providecommand*\@removefromreset[2]{{%
+ \expandafter\let\csname c@#1\endcsname\@removefromreset
+ \def\@elt##1{%
+ \expandafter\ifx\csname c@##1\endcsname\@removefromreset
+ \else
+ \noexpand\@elt{##1}%
+ \fi}%
+ \expandafter\xdef\csname cl@#2\endcsname{%
+ \csname cl@#2\endcsname}}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@PatchChapter}
+% \changes{v3.1i}{2008/08/02}{This macro added}
+% We try to patch \cs{@chapter} so \cs{float@addtolists} will be supported.
+% (Note: The \KOMAScript\ classes already support \cs{float@addtolists}.)
+% \begin{macrocode}
+\newcommand*\caption@PatchChapter{%
+ \providecommand*\@chapterlistsgap{10\p@}%
+% \end{macrocode}
+% \begin{macrocode}
+ % report.cls [2005/09/16 v1.4f Standard LaTeX document class]
+ \caption@patch@chapter{report}{%
+ \ifnum \c@secnumdepth >\m@ne
+ \refstepcounter{chapter}%
+ \typeout{\@chapapp\space\thechapter.}%
+ \addcontentsline{toc}{chapter}%
+ {\protect\numberline{\thechapter}##1}%
+ \else
+ \addcontentsline{toc}{chapter}{##1}%
+ \fi
+ \chaptermark{##1}%
+ \addtocontents{lof}{\protect\addvspace{10\p@}}%
+ \addtocontents{lot}{\protect\addvspace{10\p@}}%
+ \if@twocolumn
+ \@topnewpage[\@makechapterhead{##2}]%
+ \else
+ \@makechapterhead{##2}%
+ \@afterheading
+ \fi
+ }{%
+ \ifnum \c@secnumdepth >\m@ne
+ \refstepcounter{chapter}%
+ \typeout{\@chapapp\space\thechapter.}%
+ \addcontentsline{toc}{chapter}%
+ {\protect\numberline{\thechapter}##1}%
+ \else
+ \addcontentsline{toc}{chapter}{##1}%
+ \fi
+ \chaptermark{##1}%
+ \ifdim \@chapterlistsgap>\z@
+ \addtocontents{lof}{\protect\addvspace{\@chapterlistsgap}}%
+ \addtocontents{lot}{\protect\addvspace{\@chapterlistsgap}}%
+ \float@addtolists{\protect\addvspace{\@chapterlistsgap}}%
+ \fi
+ \if@twocolumn
+ \@topnewpage[\@makechapterhead{##2}]%
+ \else
+ \@makechapterhead{##2}%
+ \@afterheading
+ \fi}%
+% \end{macrocode}
+% \begin{macrocode}
+ % book.cls [2005/09/16 v1.4f Standard LaTeX document class]
+ \caption@patch@chapter{book}{%
+ \ifnum \c@secnumdepth >\m@ne
+ \if@mainmatter
+ \refstepcounter{chapter}%
+ \typeout{\@chapapp\space\thechapter.}%
+ \addcontentsline{toc}{chapter}%
+ {\protect\numberline{\thechapter}##1}%
+ \else
+ \addcontentsline{toc}{chapter}{##1}%
+ \fi
+ \else
+ \addcontentsline{toc}{chapter}{##1}%
+ \fi
+ \chaptermark{##1}%
+ \addtocontents{lof}{\protect\addvspace{10\p@}}%
+ \addtocontents{lot}{\protect\addvspace{10\p@}}%
+ \if@twocolumn
+ \@topnewpage[\@makechapterhead{##2}]%
+ \else
+ \@makechapterhead{##2}%
+ \@afterheading
+ \fi
+ }{%
+ \ifnum \c@secnumdepth >\m@ne
+ \if@mainmatter
+ \refstepcounter{chapter}%
+ \typeout{\@chapapp\space\thechapter.}%
+ \addcontentsline{toc}{chapter}%
+ {\protect\numberline{\thechapter}##1}%
+ \else
+ \addcontentsline{toc}{chapter}{##1}%
+ \fi
+ \else
+ \addcontentsline{toc}{chapter}{##1}%
+ \fi
+ \chaptermark{##1}%
+ \ifdim \@chapterlistsgap>\z@
+ \addtocontents{lof}{\protect\addvspace{\@chapterlistsgap}}%
+ \addtocontents{lot}{\protect\addvspace{\@chapterlistsgap}}%
+ \float@addtolists{\protect\addvspace{\@chapterlistsgap}}%
+ \fi
+ \if@twocolumn
+ \@topnewpage[\@makechapterhead{##2}]%
+ \else
+ \@makechapterhead{##2}%
+ \@afterheading
+ \fi}%
+% \end{macrocode}
+% \begin{macrocode}
+ % amsbook.cls [2004/08/06 v2.20]
+ % smfbook.cls [1999/11/15 v1.2f Classe LaTeX pour les monographies editees par la SMF]
+ \caption@patch@chapter{ams/smfbook}{%
+ \refstepcounter{chapter}%
+ \ifnum\c@secnumdepth<\z@ \let\@secnumber\@empty
+ \else \let\@secnumber\thechapter \fi
+ \typeout{\chaptername\space\@secnumber}%
+ \def\@toclevel{0}%
+ \ifx\chaptername\appendixname \@tocwriteb\tocappendix{chapter}{##2}%
+ \else \@tocwriteb\tocchapter{chapter}{##2}\fi
+ \chaptermark{##1}%
+ \addtocontents{lof}{\protect\addvspace{10\p@}}%
+ \addtocontents{lot}{\protect\addvspace{10\p@}}%
+ \@makechapterhead{##2}\@afterheading
+ }{%
+ \refstepcounter{chapter}%
+ \ifnum\c@secnumdepth<\z@ \let\@secnumber\@empty
+ \else \let\@secnumber\thechapter \fi
+ \typeout{\chaptername\space\@secnumber}%
+ \def\@toclevel{0}%
+ \ifx\chaptername\appendixname \@tocwriteb\tocappendix{chapter}{##2}%
+ \else \@tocwriteb\tocchapter{chapter}{##2}\fi
+ \chaptermark{##1}%
+ \ifdim \@chapterlistsgap>\z@
+ \addtocontents{lof}{\protect\addvspace{\@chapterlistsgap}}%
+ \addtocontents{lot}{\protect\addvspace{\@chapterlistsgap}}%
+ \float@addtolists{\protect\addvspace{\@chapterlistsgap}}%
+ \fi
+ \@makechapterhead{##2}\@afterheading}%
+% \end{macrocode}
+% \begin{macrocode}
+ % scrreprt/scrbook.cls
+ \@ifundefined{KOMAClassName}{}{%
+ \caption@Debug{document class `\KOMAClassName' detected}%
+ \let\caption@patch@chapter\@gobblethree}%
+% \end{macrocode}
+% \begin{macrocode}
+ % rapport1/3.cls [2004/06/07 v2.1a NTG LaTeX document class]
+ \caption@patch@chapter{rapport}{%
+ \ifnum \c@secnumdepth >\m@ne
+ \refstepcounter{chapter}%
+ \typeout{\@chapapp\space\thechapter.}%
+ \addcontentsline{toc}{chapter}%
+ {\protect\numberline{\thechapter}\toc@font0 ##1}%
+ \else
+ \addcontentsline{toc}{chapter}{\toc@font0 ##1}%
+ \fi
+ \chaptermark{##1}%
+ \addtocontents{lof}{\protect\addvspace{10\p@}}%
+ \addtocontents{lot}{\protect\addvspace{10\p@}}%
+ \if@twocolumn
+ \@topnewpage[\@makechapterhead{##2}]%
+ \else
+ \@makechapterhead{##2}%
+ \@afterheading
+ \fi
+ }{%
+ \ifnum \c@secnumdepth >\m@ne
+ \refstepcounter{chapter}%
+ \typeout{\@chapapp\space\thechapter.}%
+ \addcontentsline{toc}{chapter}%
+ {\protect\numberline{\thechapter}\toc@font0 ##1}%
+ \else
+ \addcontentsline{toc}{chapter}{\toc@font0 ##1}%
+ \fi
+ \chaptermark{##1}%
+ \ifdim \@chapterlistsgap>\z@
+ \addtocontents{lof}{\protect\addvspace{\@chapterlistsgap}}%
+ \addtocontents{lot}{\protect\addvspace{\@chapterlistsgap}}%
+ \float@addtolists{\protect\addvspace{\@chapterlistsgap}}%
+ \fi
+ \if@twocolumn
+ \@topnewpage[\@makechapterhead{##2}]%
+ \else
+ \@makechapterhead{##2}%
+ \@afterheading
+ \fi}%
+% \end{macrocode}
+% \begin{macrocode}
+ % boek(3).cls [2004/06/07 v2.1a NTG LaTeX document class]
+ \caption@patch@chapter{boek}{%
+ \ifnum \c@secnumdepth >\m@ne
+ \if@mainmatter
+ \refstepcounter{chapter}%
+ \typeout{\@chapapp\space\thechapter.}%
+ \addcontentsline{toc}{chapter}%
+ {\protect\numberline{\thechapter}\toc@font0 ##1}%
+ \else
+ \addcontentsline{toc}{chapter}{\toc@font0 ##1}%
+ \fi
+ \else
+ \addcontentsline{toc}{chapter}{\toc@font0 ##1}%
+ \fi
+ \chaptermark{##1}%
+ \addtocontents{lof}{\protect\addvspace{10\p@}}%
+ \addtocontents{lot}{\protect\addvspace{10\p@}}%
+ \if@twocolumn
+ \@topnewpage[\@makechapterhead{##2}]%
+ \else
+ \@makechapterhead{##2}%
+ \@afterheading
+ \fi
+ }{%
+ \ifnum \c@secnumdepth >\m@ne
+ \if@mainmatter
+ \refstepcounter{chapter}%
+ \typeout{\@chapapp\space\thechapter.}%
+ \addcontentsline{toc}{chapter}%
+ {\protect\numberline{\thechapter}\toc@font0 ##1}%
+ \else
+ \addcontentsline{toc}{chapter}{\toc@font0 ##1}%
+ \fi
+ \else
+ \addcontentsline{toc}{chapter}{\toc@font0 ##1}%
+ \fi
+ \chaptermark{##1}%
+ \ifdim \@chapterlistsgap>\z@
+ \addtocontents{lof}{\protect\addvspace{\@chapterlistsgap}}%
+ \addtocontents{lot}{\protect\addvspace{\@chapterlistsgap}}%
+ \float@addtolists{\protect\addvspace{\@chapterlistsgap}}%
+ \fi
+ \if@twocolumn
+ \@topnewpage[\@makechapterhead{##2}]%
+ \else
+ \@makechapterhead{##2}%
+ \@afterheading
+ \fi}%
+% \end{macrocode}
+% \begin{macrocode}
+ % thesis.cls [1996/25/01 1.0g LaTeX document class (wm).]
+ \caption@patch@chapter{thesis}{%
+ \ifnum \c@secnumdepth >\m@ne
+ \if@mainmatter
+ \refstepcounter{chapter}%
+ \typeout{\chaptername\space\thechapter.}
+ \if@thema
+ \ifx\@shortauthor\@empty
+ \addcontentsline{toc}{chapter}{%
+ \protect\numberline{\thechapter.}##1}%
+ \else
+ \addcontentsline{toc}{chapter}{%
+ \protect\numberline{\thechapter.}%
+ \@shortauthor\hfill\mbox{}\vskip\normallineskip ##1}%
+ \fi
+ \else
+ \addcontentsline{toc}{chapter}{%
+ \protect\numberline{\thechapter.}##1}%
+ \fi
+ \else
+ \addcontentsline{toc}{chapter}{##1}
+ \fi
+ \else
+ \addcontentsline{toc}{chapter}{##1}
+ \fi
+ \chaptermark{##1}
+ \addtocontents{lof}{\protect\addvspace{10pt}}
+ \addtocontents{lot}{\protect\addvspace{10pt}}
+ \if@twocolumn
+ \@topnewpage[\@makechapterhead{##2}]
+ \else
+ \@makechapterhead{##2}
+ \@afterheading
+ \fi
+ }{%
+ \ifnum \c@secnumdepth >\m@ne
+ \if@mainmatter
+ \refstepcounter{chapter}%
+ \typeout{\chaptername\space\thechapter.}%
+ \if@thema
+ \ifx\@shortauthor\@empty
+ \addcontentsline{toc}{chapter}{%
+ \protect\numberline{\thechapter.}##1}%
+ \else
+ \addcontentsline{toc}{chapter}{%
+ \protect\numberline{\thechapter.}%
+ \@shortauthor\hfill\mbox{}\vskip\normallineskip ##1}%
+ \fi
+ \else
+ \addcontentsline{toc}{chapter}{%
+ \protect\numberline{\thechapter.}##1}%
+ \fi
+ \else
+ \addcontentsline{toc}{chapter}{##1}%
+ \fi
+ \else
+ \addcontentsline{toc}{chapter}{##1}%
+ \fi
+ \chaptermark{##1}%
+ \ifdim \@chapterlistsgap>\z@
+ \addtocontents{lof}{\protect\addvspace{\@chapterlistsgap}}%
+ \addtocontents{lot}{\protect\addvspace{\@chapterlistsgap}}%
+ \float@addtolists{\protect\addvspace{\@chapterlistsgap}}%
+ \fi
+ \if@twocolumn
+ \@topnewpage[\@makechapterhead{##2}]%
+ \else
+ \@makechapterhead{##2}%
+ \@afterheading
+ \fi}%
+% \end{macrocode}
+% \begin{macrocode}
+ \ifx\caption@patch@chapter\@gobblethree \else
+ \caption@Debug{%
+ Unsupported document class detected,\MessageBreak
+ or \noexpand\@chapter was redefined by another package}%
+ \fi
+ \let\caption@PatchChapter\@undefined}
+%\@onlypreamble\caption@PatchChapter
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand\caption@patch@chapter[3]{%
+ \begingroup
+% \let\if@twocolumn\iffalse
+ \let\if@mainmatter\iffalse
+ \let\if@thema\iffalse
+ \def\@tempa[##1]##2{#2}%
+ \ifx\@tempa\@chapter
+ \caption@Debug{document class `#1' detected}%
+ \gdef\@chapter[##1]##2{#3}%
+ \global\let\caption@patch@chapter\@gobblethree
+ \fi
+ \endgroup}
+%\@onlypreamble\caption@patch@chapter
+% \end{macrocode}
+% \begin{macrocode}
+\long\def \@gobblethree #1#2#3{}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\@stpelt}
+% We patch \cs{@stpelt} so a list of `connected' counters will be reset, too.
+% (Like \cs{stepcounter} does in |ltcounts.dtx|.)
+% \begin{macrocode}
+\newcommand*\caption@patch@stpelt{%
+ \let\caption@stpelt\@stpelt
+ \def\@stpelt##1{%
+ \caption@stpelt{##1}%
+ \begingroup
+ \let\@elt\caption@stpelt
+ \csname caption@cl@##1\endcsname
+ \endgroup}%
+ \let\caption@patch@stpelt\relax}
+\@onlypreamble\caption@patch@stpelt
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@addtoreset}
+% \changes{v3.1k}{2009/10/09}{This macro added}
+% Like \cs{@addtoreset} from |ltcounts.dtx|
+% \begin{macrocode}
+\newcommand*\caption@addtoreset[2]{%
+ \caption@patch@stpelt
+ \@ifundefined{caption@cl@#2}{\@namedef{caption@cl@#2}{}}{}%
+ \expandafter\@cons\csname caption@cl@#2\endcsname{{#1}}}
+\@onlypreamble\caption@addtoreset
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@addtoreset}
+% \changes{v3.1k}{2009/10/09}{This macro added}
+% Like \cs{@removefromreset} from |remreset.sty|
+% \begin{macrocode}
+\newcommand*\caption@removefromreset[2]{%
+ \begingroup
+ \expandafter\let\csname c@#1\endcsname\caption@removefromreset
+ \def\@elt##1{%
+ \expandafter\ifx\csname c@##1\endcsname\caption@removefromreset
+ \else
+ \noexpand\@elt{##1}%
+ \fi}%
+ \expandafter\xdef\csname caption@cl@#2\endcsname{%
+ \csname caption@cl@#2\endcsname}%
+ \endgroup}
+\@onlypreamble\caption@removefromreset
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\DeclareCaptionSubType}
+% \changes{v3.1f}{2007/11/16}{This macro added}
+% \changes{v3.1g}{2008/03/11}{Bugfix: \cs{subfigurename} will be defined now}
+% \changes{v3.1k}{2009/10/09}{Bugfix 08-10-01: Usage of \cs{caption@addtoreset} added}
+% |\DeclareCaptionSubType|\oarg{numbering scheme}\marg{type}\\
+% |\DeclareCaptionSubType*|\oarg{numbering scheme}\marg{type}\par
+% The starred variant provides the numbering format
+% \meta{type}|.|\meta{subtype} while the non-starred variant simply
+% uses \meta{subtype}.
+% \begin{macrocode}
+\newcommand*\DeclareCaptionSubType{%
+ \caption@teststar\@DeclareCaptionSubType\@firstoftwo\@secondoftwo}
+\@onlypreamble\DeclareCaptionSubType
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\@DeclareCaptionSubType[1]{%
+ \@testopt{\@@DeclareCaptionSubType{#1}}{alph}}
+\@onlypreamble\@DeclareCaptionSubType
+% \end{macrocode}
+% \begin{macrocode}
+\def\@@DeclareCaptionSubType#1[#2]#3{%
+ \@ifundefined{c@#3}%
+ {\caption@Error{No float type '#3' defined}}%
+% \end{macrocode}
+% \begin{macrocode}
+ {\@ifundefined{c@sub#3}%
+ {\caption@Debug{New subtype `sub#3'}%
+ \newcounter{sub#3}%
+ \caption@addtoreset{sub#3}{#3}%
+ \@namedef{ext@sub#3}{\csname ext@#3\endcsname}%
+ \@ifundefined{l@chapter}%
+ {\edef\@tempa{\expandafter\expandafter\expandafter\noexpand
+ \expandafter\@car\l@subsubsection\@nil}%
+ \def\@tempb{\@dottedtocline}%
+ \ifx\@tempa\@tempb % \l@subsubsection starts with \@dottedtocline
+ \expandafter\edef\csname l@sub#3\endcsname{%
+ \noexpand\@dottedtocline{2}%
+ \expandafter\expandafter\expandafter\noexpand
+ \expandafter\@gobbletwo\l@subsubsection}%
+ \else
+ \@namedef{l@sub#3}{\@dottedtocline{2}{3.8em}{3.2em}}%
+ \fi}%
+ {\expandafter\let\csname l@sub#3\endcsname\l@subsection}%
+ \@cons\caption@subtypelist{{#3}}}%
+ {\caption@Debug{Modify caption `sub#3'}}%
+% \end{macrocode}
+% \begin{macrocode}
+ \@namedef{sub#3name}{}%
+ \@namedef{sub#3autorefname}{\csname #3name\endcsname}%
+ #1% is \@firstoftwo in star form, and \@secondoftwo otherwise
+ {\@namedef{p@sub#3}{}%
+ \@namedef{thesub#3}{\csname the#3\endcsname.\@nameuse{#2}{sub#3}}}%
+ {\@namedef{p@sub#3}{\csname the#3\endcsname}%
+ \@namedef{thesub#3}{\@nameuse{#2}{sub#3}}}%
+ \@namedef{theHsub#3}{\csname theH#3\endcsname.\arabic{sub#3}}%
+ }}
+% \end{macrocode}
+% \begin{macrocode}
+\@onlypreamble\@@DeclareCaptionSubType
+% \end{macrocode}
+% \end{macro}
+% \begin{macro}{\caption@subtypelist}
+% An \cs{@elt}-list containing the subtypes defined
+% with |\Declare|\x|Caption|\x|Sub|\x|Type|.
+% \begin{macrocode}
+\newcommand*\caption@subtypelist{}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@For}
+% \changes{v3.1a}{2007/09/07}{This macro added}
+% \changes{v3.1f}{2007/11/16}{Renamed from \cs{ForFloatingEnvironments} to \cs{caption@For}}
+% |\caption@For|\marg{elt-list}\marg{code with \#1}\\
+% |\caption@For*|\marg{elt-list}\marg{code with \#1}
+% \begin{macrocode}
+\newcommand*\caption@For{\caption@withoptargs\caption@@For}
+%\@onlypreamble\caption@For
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand\caption@@For[3]{%
+ \caption@AtBeginDocument#1{%
+ \def\@elt##1{#3}%
+ \@nameuse{caption@#2}%
+ \let\@elt\relax}}%
+%\@onlypreamble\caption@@For
+% \end{macrocode}
+% \end{macro}
+%
+% \subsection{subfig package adaptions}
+% \changes{v3.1}{2007/07/07}{Several adaptions to the \package{subfig} package added}
+%
+% We have to make several adaptions to \thispackage~\version{3.1} here.
+% \begin{macrocode}
+\caption@AtBeginDocument{%
+ \def\@tempa{\@ifstar\sf@@subref\sf@subref}%
+ \ifx\subref\@tempa
+ \PackageInfo{caption3}{subfig package 1.2 or 1.3 is loaded\@gobble}%
+% \end{macrocode}
+% \begin{macrocode}
+ \let\caption@setfloattype\@gobble
+ \let\@dottedxxxline\sf@NEW@dottedxxxline
+ \let\sf@subfloat\sf@NEW@subfloat
+% \end{macrocode}
+% \begin{macrocode}
+ \fi
+ \let\sf@NEW@dottedxxxline\@undefined
+ \let\sf@NEW@subfloat\@undefined}
+% \end{macrocode}
+% \begin{macrocode}
+\def\sf@NEW@dottedxxxline#1#2#3#4#5#6#7{%
+ \begingroup
+ \caption@setfloattype{#1}%
+ \caption@setoptions{subfloat}%
+ \caption@setoptions{sub#1}%
+ \ifnum #3>\@nameuse{c@#2depth}\else
+ \@dottedtocline{\z@}{#4}{#5}{#6}{#7}%
+ \fi
+ \endgroup}
+% \end{macrocode}
+% \begin{macrocode}
+\def\sf@NEW@subfloat{%
+ \begingroup
+ \caption@setfloattype\@captype
+ \sf@ifpositiontop{%
+ \maincaptiontoptrue
+ }{%
+ \maincaptiontopfalse
+ }%
+ \caption@setoptions{subfloat}%
+ \caption@setoptions{sub\@captype}%
+ \let\sf@oldlabel=\label
+ \let\label=\subfloat@label
+ \ifmaincaptiontop\else
+ \advance\@nameuse{c@\@captype}\@ne
+ \fi
+ \refstepcounter{sub\@captype}%
+ \setcounter{sub\@captype @save}{\value{sub\@captype}}%
+ \@ifnextchar [% %] match left bracket
+ {\sf@@subfloat}%
+ {\sf@@subfloat[\@empty]}}
+% \end{macrocode}
+%
+% \iffalse
+%</kernel>
+% \fi
+%
+% \iffalse
+% --------------------------------------------------------------------------- %
+% \fi
+%
+% \clearpage
+% \section{Main package}
+% \iffalse
+%<*package>
+% \fi
+%
+% \subsection{Identification}
+%
+% \begin{macrocode}
+\NeedsTeXFormat{LaTeX2e}[1994/12/01]
+\ProvidesPackage{caption}[2010/01/09 v3.1m Customizing captions (AR)]
+%\@ifundefined{PackageRedefines}{}{\PackageRedefines{caption}{caption}}
+% \end{macrocode}
+%
+% \begin{macro}{\caption@Info}
+% \Note{The \cs{@gobble} at the end of the 2nd argument of
+% \cs{PackageInfo} suppresses the line number info.
+% See TLC2\cite{TLC2}, A.4.7, p885 for details.}
+% \begin{macrocode}
+\newcommand*\caption@Info[1]{\PackageInfo{caption}{#1\@gobble}}
+\@onlypreamble\caption@Info
+% \end{macrocode}
+% \end{macro}
+%
+% \subsection{Loading the kernel}
+%
+% \begin{macrocode}
+\RequirePackage{caption3}[=2008/08/24] % needs v1.1j or newer
+% \end{macrocode}
+%
+% \subsection{Check against incompatible document classes}
+%
+% \begin{macrocode}
+\caption@ifbool{documentclass}{}{%
+ \caption@WarningNoLine{%
+ Unsupported document class (or package) detected,\MessageBreak
+ usage of the caption package is not recommended}%
+ \caption@Info{\string\@makecaption\space=\space\meaning\@makecaption}%
+}
+% \end{macrocode}
+%
+% \subsection{Check against incompatible packages}
+%
+% \changes{v3.0p}{2007/04/06}{Check against obsolete \package{caption2} package added}
+% \begin{macrocode}
+\@ifpackageloaded{caption2}{%
+ \caption@Error{%
+ You can't use both, the (obsolete) caption2 *and*\MessageBreak
+ the (current) caption package}%
+ \endinput
+}{}
+% \end{macrocode}
+%
+% \changes{v3.1}{2007/06/15}{Check against incompatible \package{ftcap} package added}
+% \changes{v3.1}{2007/06/15}{Check against incompatible \package{nonfloat} package added}
+% \changes{v3.1}{2007/06/18}{Check against incompatible \package{topcapt} package added}
+% \begin{macrocode}
+\caption@AtBeginDocument{%
+ \@ifpackageloaded{ftcap}{\caption@DisablePositionOption{ftcap}}{}%
+ \@ifpackageloaded{nonfloat}{\caption@DisablePositionOption{nonfloat}}{}%
+ \@ifpackageloaded{topcapt}{\caption@DisablePositionOption{topcapt}}{}}
+% \end{macrocode}
+% \begin{macro}{\caption@DisablePositionOption}
+% \changes{v3.1g}{2008/03/20}{\texttt{position=b} added}
+% \changes{v3.1h}{2008/03/29}{%
+% Name changed from \cs{caption@IncompatiblePackage} to \cs{caption@DisablePositionOption};
+% moved from package to kernel; disables the `position' option now instead of issuing a warning}
+% |\caption@DisablePositionOption|\marg{package}\par
+% disables the `position' option.
+% \begin{macrocode}
+\newcommand*\caption@DisablePositionOption[1]{%
+ \caption@Info{%
+ `#1' package detected; setting `position=b' for compatibility reasons}%
+ \caption@setposition b%
+% \end{macrocode}
+% \begin{macrocode}
+ \DeclareCaptionOption{position}{%
+ \caption@Error{Usage of the `position' option is incompatible\MessageBreak
+ to the `#1' package}}}
+% \end{macrocode}
+% \begin{macrocode}
+\@onlypreamble\caption@DisablePositionOption
+% \end{macrocode}
+% \end{macro}
+%
+% \subsection{Declaration of options}
+%
+% \subsubsection{Options for figure and table}
+%
+% \changes{v3.0a}{2004/01/09}{Options \opt{figureposition} and \opt{tableposition} added}
+% \begin{macrocode}
+\DeclareCaptionOption{figureposition}{%
+ \captionsetup*[figure]{position=#1}}
+\@onlypreamble@key{caption}{figureposition}
+% \end{macrocode}
+% \begin{macrocode}
+\DeclareCaptionOption{tableposition}{%
+ \captionsetup*[table]{position=#1}}
+\@onlypreamble@key{caption}{tableposition}
+% \end{macrocode}
+%
+% \changes{v3.0d}{2004/08/03}{Options \opt{figurename} and \opt{tablename} added}
+% \changes{v3.1}{2007/07/04}{Options \opt{figurename} and \opt{tablename} re-written}
+% \changes{v3.1f}{2007/11/18}{Options \opt{figurename} and \opt{tablename} are now
+% available after the document preamble, too.}
+% \changes{v3.1f}{2007/11/18}{Option \opt{name} added}
+% \begin{macrocode}
+\DeclareCaptionOption{figurename}{\caption@SetName{figure}{#1}}
+\DeclareCaptionOption{tablename}{\caption@SetName{table}{#1}}
+\DeclareCaptionOption{name}{\caption@setname\@captype{#1}}
+% \end{macrocode}
+%
+% \changes{v3.1g}{2008/02/28}{Options \opt{listfigurename} and \opt{listtablename} added}
+% \begin{macrocode}
+\DeclareCaptionOption{listfigurename}{\caption@SetName{listfigure}{#1}}
+\DeclareCaptionOption{listtablename}{\caption@SetName{listtable}{#1}}
+% \end{macrocode}
+%
+% \begin{macro}{\caption@SetName}
+% \changes{v3.1}{2007/07/04}{This macro added}
+% \changes{v3.1f}{2007/11/18}{After-preamble variant added}
+% \changes{v3.1g}{2008/02/28}{Renamed from \cs{caption@SetFloatName} to \cs{caption@SetName}}
+% \changes{v3.1i}{2008/08/02}{Bugfix: Works now without \cs{addto}, too}
+% |\caption@SetName|\marg{cmd}\marg{value}
+% \begin{macrocode}
+\newcommand*\caption@SetName[2]{%
+ \caption@setname{#1}{#2}%
+ \begingroup
+ \@ifundefined{languagename}{}{%
+ \@ifundefined{captions\languagename}{}{%
+ \expandafter\g@addto@macro\csname captions\languagename\endcsname
+ {\caption@setname{#1}{#2}}}}%
+ \endgroup}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@setname[2]{\@namedef{#1name}{#2}}
+% \end{macrocode}
+% \begin{macrocode}
+\caption@AtBeginDocument{\let\caption@SetName\caption@setname}
+% \end{macrocode}
+% \end{macro}
+%
+% \changes{v3.1f}{2007/12/21}{Options \opt{figurewithin} and \opt{tablewithin} added}
+% \changes{v3.1i}{2008/04/13}{Option \opt{within} added}
+% \changes{v3.1l}{2010/01/09}{The \opt{within} options are now available within the document, too}
+% \changes{v3.1l}{2010/01/09}{The global \opt{within} option will now affect user-defined floats
+% declared with \cs{DeclareCaptionType}, too}
+%
+% \begin{macro}{\caption@DeclareWithinOption}
+% \changes{v3.1l}{2010/01/09}{This macro and its usage added}
+% \begin{macrocode}
+\newcommand*\caption@DeclareWithinOption[1]{%
+ \DeclareCaptionOption{#1within}{\caption@Within{#1}{##1}}%
+ \DeclareCaptionOption{#1without}{\caption@Within{#1}{none}}}
+% \end{macrocode}
+% \end{macro}
+% \begin{macrocode}
+\caption@DeclareWithinOption{figure}
+\caption@DeclareWithinOption{table}
+% \end{macrocode}
+% \begin{macrocode}
+\DeclareCaptionOption{within}{%
+ \@ifundefined{c@figure}{}{\caption@Within{figure}{#1}}%
+ \@ifundefined{c@table}{}{\caption@Within{table}{#1}}%
+ \caption@For{typelist}{\caption@Within{##1}{#1}}%
+ \def\caption@within@default{#1}}
+\DeclareCaptionOption{without}{\KV@caption@within{none}}
+% \end{macrocode}
+% \begin{macro}{\caption@within}
+% \changes{v3.1}{2007/12/21}{This macro added}
+% \begin{macrocode}
+\newcommand*\caption@Within[1]{\def\caption@type{#1}\KV@caption@DCT@within}
+% \end{macrocode}
+% \end{macro}
+%
+% \subsubsection{Miscellaneous options}
+%
+% \begin{macrocode}
+\DeclareCaptionOption*{config}[caption]{%
+ \InputIfFileExists{#1.cfg}%
+ {\typeout{*** Local configuration file #1.cfg used ***}}%
+ {\caption@Warning{Configuration file #1.cfg not found}}}
+% \end{macrocode}
+%
+% \changes{v3.1f}{2007/11/28}{Option \opt{@minipage=} added}
+% \begin{macrocode}
+\DeclareCaptionOption{@minipage}{%
+ \caption@ifinlist{#1}{auto,default}%
+ {\let\caption@if@minipage\@gobbletwo}%
+ {\caption@set@bool\caption@if@minipage{#1}}}
+\captionsetup{@minipage=default}
+% \end{macrocode}
+%
+% \subsubsection{caption v1.x compatibility options}
+% \changes{v3.1}{2007/07/21}{Option `compatibility' added}
+% \changes{v3.1}{2007/09/01}{caption v1.x compatibility options revised}
+% \changes{v3.1d}{2007/10/24}{Bugfix 07-10-24 in caption v1.x$ compatibility options}
+%
+% \begin{macrocode}
+\DeclareCaptionOption{compatibility}[1]{\caption@setbool{compatibility}{#1}}
+\@onlypreamble@key{caption}{compatibility}
+% \end{macrocode}
+%
+% \begin{macrocode}
+\DeclareCaptionOptionNoValue*{normal}{%
+ \caption@setformat{plain}%
+ \caption@setjustification{justified}}
+\DeclareCaptionOptionNoValue*{isu}{%
+ \caption@setformat{hang}%
+ \caption@setjustification{justified}}
+\DeclareCaptionOptionNoValue*{hang}{%
+ \caption@setformat{hang}%
+ \caption@setjustification{justified}}
+\DeclareCaptionOptionNoValue*{center}{%
+ \caption@setformat{plain}%
+ \caption@setjustification{centering}}
+\DeclareCaptionOptionNoValue*{anne}{%
+ \caption@setformat{plain}%
+ \caption@setjustification{centerlast}}
+\DeclareCaptionOptionNoValue*{centerlast}{%
+ \caption@setformat{plain}%
+ \caption@setjustification{centerlast}}
+% \end{macrocode}
+%
+% \begin{macrocode}
+\DeclareCaptionOptionNoValue*{scriptsize}{\def\captionfont{\scriptsize}}
+\DeclareCaptionOptionNoValue*{footnotesize}{\def\captionfont{\footnotesize}}
+\DeclareCaptionOptionNoValue*{small}{\def\captionfont{\small}}
+\DeclareCaptionOptionNoValue*{normalsize}{\def\captionfont{\normalsize}}
+\DeclareCaptionOptionNoValue*{large}{\def\captionfont{\large}}
+\DeclareCaptionOptionNoValue*{Large}{\def\captionfont{\Large}}
+% \end{macrocode}
+%
+% \begin{macrocode}
+\DeclareCaptionOptionNoValue*{up}{\l@addto@macro\captionlabelfont\upshape}
+\DeclareCaptionOptionNoValue*{it}{\l@addto@macro\captionlabelfont\itshape}
+\DeclareCaptionOptionNoValue*{sl}{\l@addto@macro\captionlabelfont\slshape}
+\DeclareCaptionOptionNoValue*{sc}{\l@addto@macro\captionlabelfont\scshape}
+\DeclareCaptionOptionNoValue*{md}{\l@addto@macro\captionlabelfont\mdseries}
+\DeclareCaptionOptionNoValue*{bf}{\l@addto@macro\captionlabelfont\bfseries}
+\DeclareCaptionOptionNoValue*{rm}{\l@addto@macro\captionlabelfont\rmfamily}
+\DeclareCaptionOptionNoValue*{sf}{\l@addto@macro\captionlabelfont\sffamily}
+\DeclareCaptionOptionNoValue*{tt}{\l@addto@macro\captionlabelfont\ttfamily}
+% \end{macrocode}
+%
+% \begin{macrocode}
+\DeclareCaptionOptionNoValue*{nooneline}{\caption@setbool{slc}{0}}
+% \end{macrocode}
+%
+% \begin{macrocode}
+\caption@setbool{ruled}{0}
+\DeclareCaptionOptionNoValue*{ruled}{\caption@setbool{ruled}{1}}
+% \end{macrocode}
+%
+% \subsubsection{caption2 v2.x compatibility options}
+% \changes{v3.0h}{2005/07/08}{caption2 \version{2.x} compatibility options added}
+% \changes{v3.1}{2007/09/01}{caption2 v2.x compatibility options revised}
+% \changes{v3.1d}{2007/10/24}{Bugfix 07-10-24 in caption v2.x$ compatibility options}
+%
+% \begin{macrocode}
+\DeclareCaptionOptionNoValue*{flushleft}{%
+ \caption@setformat{plain}%
+ \caption@setjustification{raggedright}}
+\DeclareCaptionOptionNoValue*{flushright}{%
+ \caption@setformat{plain}%
+ \caption@setjustification{raggedleft}}
+% \end{macrocode}
+% \begin{macrocode}
+\DeclareCaptionOptionNoValue*{oneline}{\caption@setbool{slc}{1}}
+% \end{macrocode}
+% \begin{macrocode}
+\DeclareCaptionOptionNoValue*{ignoreLTcapwidth}{%
+ \caption@WarningNoLine{Obsolete option `ignoreLTcapwidth' ignored}}
+% \end{macrocode}
+%
+% \subsubsection{Obsolete caption v3.0 options}
+% \changes{v3.1}{2007/05/07}{Package option \opt{caption} marked as obsolete,
+% gives error now}
+%
+% \begin{macrocode}
+\DeclareCaptionOption*{caption}{%
+ \caption@setbool{temp}{#1}%
+ \caption@ifbool{temp}{}{%
+ \caption@Error{%
+ The package option `caption=#1' is obsolete.\MessageBreak
+ Please pass this option to the subfig package instead\MessageBreak
+ and do *not* load the caption package anymore}}}
+% \end{macrocode}
+%
+% \subsubsection{fltpage package support options}
+%
+% \changes{v3.1}{2007/09/01}{Options `FPlist' \& `FPref' added}
+% With these options is controlled where the list-of entry and |\ref| resp.
+% |\pageref| or |\autoref| will link to.
+% Defaults are |FPlist=caption| and |FPref=figure| which is inconsistent,
+% but compatible to the usual behaviour of the \package{fltpage} package.
+% \begin{macrocode}
+\DeclareCaptionOption{FPlist}[1]{\caption@setFPoption{list}{#1}}
+\DeclareCaptionOption{FPref}[1]{\caption@setFPoption{ref}{#1}}
+\@onlypreamble@key{caption}{FPlist}
+\@onlypreamble@key{caption}{FPref}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@setFPoption[2]{%
+ \edef\caption@tempa{\@car#2\@nil}%
+ \caption@setbool{FP#1cap}{\if c\caption@tempa 1\else 0\fi}}
+\@onlypreamble\caption@setFPoption
+% \end{macrocode}
+% \begin{macrocode}
+\captionsetup{FPlist=caption,FPref=figure}
+% \end{macrocode}
+%
+% \subsubsection{hyperref package support options}
+%
+% \changes{v3.1}{2007/06/21}{Options `hypcap' \& `hypcapspace' added}
+% With |hypcap=off| one can turn the \package{hypcap} support off
+% (default is |on|).
+% \begin{macrocode}
+\DeclareCaptionOption{hypcap}[1]{\caption@setbool{hypcap}{#1}}
+\DeclareCaptionOption{hypcapspace}{\def\caption@hypcapspace{#1}}
+% \end{macrocode}
+% \begin{macrocode}
+\captionsetup{hypcap=1,hypcapspace=.5\baselineskip}
+% \end{macrocode}
+%
+% \subsection{\AmS{} \& \SmF{} document classes support}
+% \changes{v3.1}{2007/07/29}{\AmS\ \& \SmF\ document classes support added (package)}
+%
+% \begin{macrocode}
+\caption@ifamsclass{%
+ \caption@Info{AMS or SMF document class}%
+% \end{macrocode}
+% \begin{macrocode}
+ \setlength\belowcaptionskip{0pt}% set to 12pt by AMS class
+% \end{macrocode}
+% \begin{macrocode}
+}
+% \end{macrocode}
+%
+% \subsection{\KOMAScript{} document classes support}
+% \changes{v3.0a}{2004/01/18}{Minimum adaptation to \KOMAScript\ added (package)}
+% \changes{v3.0h}{2005/08/22}{\KOMAScript\ compatibility options added (package)}
+% \changes{v3.0i}{2005/11/17}{\KOMAScript\ compatibility commands added (package)}
+% \changes{v3.0l}{2007/02/18}{\KOMAScript\ compatibility revised (package)}
+% \changes{v3.1}{2007/03/17}{\KOMAScript\ compatibility options removed (package)}
+% \changes{v3.1}{2007/04/05}{\KOMAScript\ compatibility revised \& enhanced (package)}
+%
+% \begin{macrocode}
+\caption@ifkomaclass{%
+ \caption@Info{KOMA-Script document class}%
+% \end{macrocode}
+%
+% Here we emulate the caption related commands and take over the caption
+% related settings from the \KOMAScript\ classes.
+%
+% \begin{macro}{\@tablecaptionabovetrue}
+% \begin{macro}{\@tablecaptionabovefalse}
+% \changes{v3.1g}{2008/03/01}{\cs{def} changed to \cs{g@addto@macro}}
+% \begin{macrocode}
+ \g@addto@macro\@tablecaptionabovetrue{\captionsetup*[table]{position=t}}
+ \g@addto@macro\@tablecaptionabovefalse{\captionsetup*[table]{position=b}}
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+%
+% \begin{macrocode}
+ \if@tablecaptionabove
+ \@tablecaptionabovetrue
+ \else
+ \@tablecaptionabovefalse
+ \fi
+% \end{macrocode}
+%
+% \begin{macro}{\onelinecaptionstrue}
+% \begin{macro}{\onelinecaptionsfalse}
+% \changes{v3.1g}{2008/03/01}{\cs{def} changed to \cs{g@addto@macro}}
+% \begin{macrocode}
+ \g@addto@macro\onelinecaptionstrue{\let\caption@ifslc\@firstoftwo}
+ \g@addto@macro\onelinecaptionsfalse{\let\caption@ifslc\@secondoftwo}
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+%
+% \begin{macrocode}
+ \ifonelinecaptions
+ \onelinecaptionstrue
+ \else
+ \onelinecaptionsfalse
+ \fi
+% \end{macrocode}
+%
+% \begin{macro}{\@captionabovetrue}
+% \begin{macro}{\@captionabovefalse}
+% \changes{v3.0j}{2006/03/21}{Bugfix 06-03-21:
+% \cs{let}\cs{caption@setposition}\cs{@gobble} added}
+% \changes{v3.0n}{2006/03/09}{Accidentally this got broken in \version{3.0m}, fixed}
+% \changes{v3.1}{2007/03/31}{We redefine \cs{captionabovetrue/false} now
+% instead of \cs{captionabove/below}}
+% \changes{v3.1g}{2008/03/01}{\cs{def} changed to \cs{g@addto@macro}}
+% \changes{v3.1k}{2009/10/09}{\opt{figureposition} and \opt{tableposition} will issue a warning now}
+% Please note that these are stronger than the \opt{position} setting, therefore we
+% override the options \opt{figureposition} and \opt{tableposition} to typeout a warning.
+% \begin{macrocode}
+ \g@addto@macro\@captionabovetrue{\let\caption@position\@firstoftwo}
+ \g@addto@macro\@captionabovefalse{\let\caption@position\@secondoftwo}
+% \end{macrocode}
+% \begin{macrocode}
+ \DeclareCaptionOption{figureposition}{%
+ \caption@WarningNoLine{Option `figureposition=#1' has no effect\MessageBreak
+ when used with a KOMA script document class}}
+ \DeclareCaptionOption{tableposition}{%
+ \caption@WarningNoLine{Option `tableposition=#1' has no effect\MessageBreak
+ when used with a KOMA script document class}}
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+%
+% \begin{macro}{\setcapindent}
+% \begin{macrocode}
+ \let\caption@KOMA@setcapindent\@setcapindent
+ \renewcommand*\@setcapindent[1]{%
+ \caption@KOMA@setcapindent{#1}\caption@setcapindent}
+% \end{macrocode}
+% \begin{macrocode}
+ \let\caption@KOMA@@setcapindent\@@setcapindent
+ \renewcommand*\@@setcapindent[1]{%
+ \caption@KOMA@@setcapindent{#1}\caption@setcapindent}
+% \end{macrocode}
+% \begin{macrocode}
+ \newcommand*\caption@setcapindent{%
+ \captionsetup{indent=\ifdim\cap@indent<\z@\z@\else\cap@indent\fi}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+ \@ifundefined{cap@indent}{}{\caption@setcapindent}
+% \end{macrocode}
+%
+% \begin{macro}{\setcapwidth}
+% \Note{The optional argument of \cs{setcapwidth} if not supported (yet),
+% so we issue a warning if used.
+% (Since this does not seem to have an negative effect when used
+% by the \texttt{captionbeside} environment, we suppress the warning here.)}
+% \begin{macrocode}
+ \expandafter\let\expandafter\caption@KOMA@setcapwidth
+ \csname\string\setcapwidth\endcsname
+ \@namedef{\string\setcapwidth}[#1]#2{%
+ \caption@KOMA@setcapwidth[#1]{#2}\caption@setcapwidth{#1}}
+% \end{macrocode}
+% \begin{macrocode}
+ \newcommand*\caption@setcapwidth[1]{%
+ \ifx\\#1\\\else
+ \@ifundefined{cap@margin}{}{%
+ \def\@tempa{captionbeside}%
+ \ifx\@tempa\@currenvir\else\caption@Warning{%
+ Ignoring optional argument [#1] of \string\setcapwidth\MessageBreak}%
+ \fi}%
+ \fi
+ \captionsetup{width=\cap@width}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+ \def\caption@tempa{\hsize}%
+ \ifx\caption@tempa\cap@width \else
+ \caption@setcapwidth{?}
+ \fi
+% \end{macrocode}
+%
+% \begin{macro}{\setcapmargin}
+% \begin{macrocode}
+ \expandafter\let\expandafter\caption@KOMA@setcapmargin
+ \csname\string\@setcapmargin\endcsname
+ \@namedef{\string\@setcapmargin}[#1]#2{%
+ \caption@KOMA@setcapmargin[#1]{#2}\caption@setcapmargin}
+% \end{macrocode}
+% \begin{macrocode}
+ \expandafter\let\expandafter\caption@KOMA@@setcapmargin
+ \csname\string\@@setcapmargin\endcsname
+ \@namedef{\string\@@setcapmargin}[#1]#2{%
+ \caption@KOMA@@setcapmargin[#1]{#2}\caption@setcapmargin}
+% \end{macrocode}
+% \begin{macrocode}
+ \newcommand*\caption@setcapmargin{%
+ \begingroup
+ \let\onelinecaptionsfalse\relax
+ \def\@twoside{0}%
+ \def\if@twoside{\def\@twoside{1}\iffalse}%
+ \cap@margin
+ \def\@tempa{\endgroup}%
+ \ifx\cap@left\hfill\else\ifx\cap@right\hfill\else
+ \def\hspace##1##{\@firstofone}%
+ \edef\@tempa{\endgroup
+ \noexpand\captionsetup{%
+ twoside=\@twoside,slc=0,%
+ margin={\cap@left,\cap@right}}}%
+ \fi\fi
+ \@tempa}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+ \ifx\cap@margin\relax \else
+ \caption@setcapmargin
+ \fi
+% \end{macrocode}
+%
+% \begin{macrocode}
+}
+% \end{macrocode}
+%
+% \subsection{Processing of options}
+%
+% \changes{v3.0m}{2007/03/04}{Verbose option added (package)}
+% \changes{v3.1}{2007/07/02}{Verbose option removed from package}
+%
+% \changes{v3.1}{2007/03/17}{We do not process global options anymore}
+% \begin{macrocode}
+\caption@ProcessOptions*{caption}
+% \end{macrocode}
+%
+% \subsection{\cs{captionof} and \cs{captionlistentry}}
+%
+% \changes{v3.0d}{2004/08/03}{Option \opt{type=} added}
+% \changes{v3.1}{2007/06/25}{Option \opt{type*=} added}
+% \changes{v3.1f}{2007/11/16}{Option \opt{subtype} \& \opt{subtype*} added}
+%
+% \begin{macrocode}
+\caption@AtBeginDocument{%
+% \end{macrocode}
+% \begin{macrocode}
+ \DeclareCaptionOption{type}{\caption@settype{#1}}%
+ \DeclareCaptionOption{type*}{\caption@settype*{#1}}%
+% \end{macrocode}
+% \begin{macrocode}
+ \DeclareCaptionOption{subtype}[sub\@captype]{\caption@setsubtype{#1}}%
+ \DeclareCaptionOption{subtype*}[sub\@captype]{\caption@setsubtype*{#1}}%
+% \end{macrocode}
+% \begin{macrocode}
+}
+% \end{macrocode}
+%
+% \emph{Important Note:}
+% Like |\captionof| the option |type=| should only be used inside a
+% group, box, or environment and does not check if the argument is a valid
+% floating environment or not.
+%
+% \begin{macro}{\caption@settype}
+% \changes{v3.1}{2007/05/09}{This macro added}
+% \changes{v3.1b}{2007/09/22}{Usage of \cs{caption@xlabel} added}
+% \changes{v3.1d}{2007/10/23}{Error message for \cs{caption@checkgrouplevel} revised}
+% \changes{v3.1f}{2007/11/16}{\cs{caption@setsubtype} added}
+% \changes{v3.1f}{2007/12/03}{Crappy \cs{caption@iftypewarning} replaced}
+% \changes{v3.1g}{2008/01/12}{Usage of \cs{ifcaptionsetup@star} added}
+% |\caption@settype*|\marg{type}\par
+% sets |\@captype| and executes the options associated with it
+% (using |\caption@setoptions|).
+% Furthermore we check |\currentgrouplevel| (if avail),
+% redefine |\@currentlabel| so a |\label| before |\caption| will result
+% in a hint instead of a wrong reference, and
+% use the macro |\caption@|(|sub|)|typehook| (which will be used by our
+% \package{float} package support).\par
+% The non-starred version sets a \package{hyperref} anchor additionally
+% (if |hypcap=true| and the \package{hypcap} package is not loaded).
+% \begin{macrocode}
+\newcommand*\caption@settype{%
+ \caption@@settype{}}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@setsubtype{%
+ \caption@iftype
+ {\caption@@settype{sub}}%
+ {\caption@Error{Option `subtype=' outside float}}}%
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@@settype[1]{%
+ \caption@teststar{\caption@@@settype{#1}}\@firstoftwo\@secondoftwo}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@@@settype[3]{%
+% #1 = "" or "sub"
+% #2 = \@firstoftwo in star form, \@secondoftwo otherwise
+% #3 = <type>, e.g. "figure" or "table"
+ \@ifundefined{c@#3}%
+ {\caption@Error{No float type '#3' defined}}%
+ {\caption@Debug{#1type=#3}%
+ \caption@checkgrouplevel{#1}{%
+ \captionsetup{#1type#2*\@empty=...}#2{ or
+ \@backslashchar#1captionof}{}}%
+% \end{macrocode}
+% \begin{macrocode}
+ \edef\caption@tempa{#3}%
+ \expandafter\ifx\csname @#1captype\endcsname\caption@tempa \else
+ \ifcaptionsetup@star\else\@nameuse{caption@#1type@warning}\fi
+ \fi
+ \expandafter\let\csname @#1captype\endcsname\caption@tempa
+% \end{macrocode}
+% \begin{macrocode}
+ \@nameuse{caption@#1typehook}%
+% \end{macrocode}
+% \begin{macrocode}
+ \caption@setoptions{#3}%
+ \ifx\caption@opt\relax
+ \@nameundef{caption@#1type@warning}%
+ \else
+ \@namedef{caption@#1type@warning}{\caption@Warning{%
+ The #1caption type was already set to
+ `\csname @#1captype\endcsname'\MessageBreak}}%
+ \fi
+% \end{macrocode}
+% \begin{macrocode}
+ \let\caption@ifrefstepcounter\@secondoftwo
+ #2{}{%
+ \let\@currentlabel\caption@undefinedlabel
+% \let\@currentHlabel\@undefined
+ \ifx\caption@ORI@label\@undefined
+ \let\caption@ORI@label\label
+ \let\label\caption@xlabel
+ \fi
+ \caption@start}}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@typehook}
+% Hook, will be extended later on, e.g.~by our \package{float} package
+% support.
+% \begin{macrocode}
+\newcommand*\caption@typehook{}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@iftype}
+% \changes{v3.1}{2007/04/11}{This macro and its usage added}
+% Since we often need to check if |\@captype| is defined (means: we
+% are inside a floating environment) this helper macro was introduced.
+% \begin{macrocode}
+\newcommand*\caption@iftype{%
+ \@ifundefined{@captype}{\let\@captype\@undefined\@secondoftwo}\@firstoftwo}
+% \end{macrocode}
+% \iffalse
+% \newcommand*\caption@iftype{%
+% \begingroup
+% \@ifundefined{@captype}%
+% {\aftergroup\@secondoftwo}%
+% {\aftergroup\@firstoftwo}%
+% \endgroup}
+% \fi
+% \end{macro}
+%
+% \begin{macro}{\caption@checkgrouplevel}
+% \changes{v3.1}{2007/07/15}{This macro and its usage added}
+% \changes{v3.1f}{2007/11/28}{Error changed to warning (compatibility)}
+% Checks if |\captionsetup{type=|\ldots|}| or |\caption| is done
+% inside a group or not -- in the latter case a warning message will
+% be issued. (needs \eTeX)
+% \begin{macrocode}
+\begingroup\expandafter\expandafter\expandafter\endgroup
+\expandafter\ifx\csname currentgrouplevel\endcsname\relax
+ \caption@Debug{TeX engine: TeX}
+ \let\caption@checkgrouplevel\@gobbletwo
+\else
+ \caption@Debug{TeX engine: e-TeX}
+ \newcommand*\caption@checkgrouplevel[2]{%
+ \@ifundefined{#1caption@grouplevel}{%
+ \@ifundefined{caption@grouplevel}{\let\caption@grouplevel\z@}{}%
+ \ifnum\currentgrouplevel>\caption@grouplevel\relax
+ \expandafter\edef\csname #1caption@grouplevel\endcsname{%
+ \the\currentgrouplevel}%
+ \else
+ \caption@Warning{\string#2\MessageBreak outside box or environment}%
+ \fi
+ }{}}
+\fi
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@undefinedlabel}
+% \changes{v3.1}{2007/07/03}{This macro and its usage added}
+% \changes{v3.1b}{2007/09/22}{Contents changed to \texttt{??}}
+% \changes{v3.1i}{2008/04/13}{Contents changed to \cs{caption@xref}(\ldots)}
+% \changes{v3.1k}{2009/03/30}{Bugfix 08-12-08: \cs{caption@xref} is robust now}
+% This label will be used for |\currentlabel| inside (floating) environments
+% as default. (see above)
+% \iffalse\Note{All commands used have to be robust here.}\fi
+% \begin{macrocode}
+\newcommand*\caption@undefinedlabel{%
+ \protect\caption@xref{\caption@labelname}{\on@line}}
+% \end{macrocode}
+% \begin{macrocode}
+\DeclareRobustCommand*\caption@xref[2]{%
+ \caption@WarningNoLine{\noexpand\label before \string\caption#2}%
+ \@setref\relax\@undefined{#1}}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@labelname{??}
+% \end{macrocode}
+% \end{macro}
+% \begin{macro}{\caption@xlabel}
+% \changes{v3.1b}{2007/09/22}{This macro and its usage added}
+% \changes{v3.1f}{2007/11/11}{Revised}
+% \changes{v3.1i}{2008/04/13}{Bugfix: \cs{pageref} should always work now}
+% The new code of |\label| inside floating environments.
+% |\label| will be redefined using |\caption@withoptargs|, so
+% |#1| are the optional arguments (if any), and
+% |#2| is the mandatory argument here.
+% \begin{macrocode}
+\newcommand*\caption@xlabel[1]{%
+ \caption@@xlabel
+ \def\caption@labelname{#1}%
+ \caption@ORI@label{#1}}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@@xlabel{%
+ \global\let\caption@@xlabel\@empty
+ \@bsphack
+ \protected@write\@auxout{}%
+ {\string\providecommand*\string\caption@xref[2]{%
+ \string\@setref\string\relax\string\@undefined{\string##1}}}%
+ \@esphack}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\captionof}
+% \changes{v3.1}{2007/05/09}{Uses \cs{caption@settype} instead of \cs{def}\cs{@captype}}
+% \changes{v3.1c}{2007/09/22}{Bugfix: Redefinition of \cs{caption@setfloatcapt} removed}
+% \changes{v3.1e}{2007/10/30}{Better compatibility: Will be defined with \cs{AtBeginDocument} now}
+% |\captionof|\marg{type}\oarg{lst\_entry}\marg{heading}\\
+% |\captionof*|\oarg{lst\_entry}\marg{heading}\par
+% \Note{This will be defined with \cs{AtBeginDocument} so
+% \cs{usepackage}\csmarg{caption,capt-of} will still work.
+% (Compatibility to \version{1.x})}
+% \begin{macrocode}
+\caption@AtBeginDocument{%
+ \def\captionof{\caption@teststar\caption@of{\caption*}\caption}}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@of[2]{\caption@settype*{#2}#1}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\captionlistentry}
+% \changes{v3.1}{2007/07/28}{This macro added}
+% \changes{v3.1f}{2007/11/16}{Bugfix 07-11-09: `space hack' added}
+% \changes{v3.1g}{2008/01/20}{Starred variant added}
+% \changes{v3.1l}{2010/01/09}{Adapted to current version of nameref package}
+% |\captionlistentry|\oarg{float type}\marg{list entry}\\
+% |\captionlistentry*|\oarg{float type}\marg{list entry}
+% \begin{macrocode}
+\newcommand*\captionlistentry{%
+ \caption@teststar\@captionlistentry\@firstoftwo\@secondoftwo}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\@captionlistentry[1]{%
+ \@testopt{\caption@listentry{#1}}\@captype}
+% \end{macrocode}
+% \begin{macrocode}
+\def\caption@listentry#1[#2]#3{%
+ \@bsphack
+ #1{\caption@gettitle{#3}}%
+ {\caption@refstepcounter{#2}%
+ \caption@makecurrent{#2}{#3}}%
+ \caption@addcontentsline{#2}{#3}%
+ \@esphack}
+% \end{macrocode}
+% \end{macro}
+%
+% \subsection{\cs{ContinuedFloat}}
+%
+% \begin{macro}{\ContinuedFloat}
+% \changes{v3.0f}{2005/06/11}{%
+% Call of \cs{caption@ContinuedFloat} added}
+% \changes{v3.0i}{2005/11/12}{%
+% Optional argument and call of \cs{caption@@ContinuedFloat} added}
+% \changes{v3.0g}{2005/06/28}{%
+% Bugfix: \cs{newcounter} replaced by \cs{newcount}}
+% \changes{v3.1}{2007/07/02}{Format of \package{hyperref} extension changed}
+% \changes{v3.1}{2007/07/07}{\cs{caption@setoptions} added}
+% \changes{v3.1g}{2008/01/29}{Starred variant and hook \cs{sf@ContinuedFloat} added}
+% |\ContinuedFloat|\\
+% |\ContinuedFloat*|\par
+% This mainly decrements the appropriate counter and increments the
+% continuation counter instead.
+% Furthermore we set |\caption@resetContinuedFloat| to |\@gobble| so the
+% continuation counter will not be reset to zero inside |\caption@refstepcounter|.
+% Please forget about the optional argument, it was never working well, is
+% incompatible to the \package{subfig} package, but is still there for
+% compatibility reasons.
+% \Note{The definition of \cs{ContinuedFloat} itself is compatible
+% to the one inside the \package{subfig} package, except for the
+% starred variant and the optional argument.}
+% When the \package{hyperref} package is used we have the problem
+% that the usage of |\ContinuedFloat| will create duplicate
+% hyper links -- |\@currentHref| will be the same for the main float and
+% the continued ones. So we have to make sure unique labels and references
+% will be created each time. We do this by extending |\theHfigure| and
+% |\theHtable|, so for continued floats the scheme
+% \begin{quote}\meta{type}|.|\meta{type \#}|\alph{|\meta{continued \#}|}|\end{quote}
+% will be used instead of
+% \begin{quote}\meta{type}|.|\meta{type \#}\quad\quad.\end{quote}
+% \par{\small(This implementation follows an idea from Steven Douglas Cochran.)}
+% \Note{This does not help if the \package{hyperref} package option
+% \texttt{naturalnames=true} is set.}
+% \begin{macrocode}
+\def\ContinuedFloat{%
+ \@ifnextchar[\@Continued@Float\@ContinuedFloat}
+% \end{macrocode}
+% \begin{macrocode}
+\def\@Continued@Float[#1]{\addtocounter{#1}\m@ne}
+% \end{macrocode}
+% \begin{macrocode}
+\def\@ContinuedFloat{%
+ \caption@iftype
+ {\addtocounter\@captype\m@ne
+ \caption@ContinuedFloat\@captype}%
+ {\caption@Error{\noexpand\ContinuedFloat outside float}}}
+% \end{macrocode}
+% \begin{macrocode}
+\def\caption@ContinuedFloat#1{%
+ \@ifstar{\caption@Continued@Float@{#1}}{\caption@Continued@Float{#1}}}
+% \end{macrocode}
+% \begin{macrocode}
+\def\caption@Continued@Float@{%
+ \addtocounter\@captype\@ne
+ \@stpelt{ContinuedFloat}\stepcounter{ContinuedFloat}%
+ \def\caption@resetContinuedFloat##1{\xdef\caption@CFtype{##1}}%
+ \caption@@ContinuedFloat}
+% \end{macrocode}
+% \begin{macrocode}
+\def\caption@Continued@Float#1{%
+ \edef\caption@tempa{#1}%
+ \ifx\caption@tempa\caption@CFtype
+ \stepcounter{ContinuedFloat}%
+ \let\caption@resetContinuedFloat\@gobble
+ \caption@@ContinuedFloat{#1}%
+ \sf@ContinuedFloat{#1}%
+ \else
+ \caption@Error{Continued `#1' after `\caption@CFtype'}%
+ \fi}
+% \end{macrocode}
+% \begin{macrocode}
+\def\caption@@ContinuedFloat#1{%
+ \expandafter\l@addto@macro\csname the#1\endcsname\theContinuedFloat
+ \@ifundefined{theH#1}{}{%
+ \expandafter\l@addto@macro\csname theH#1\endcsname{%
+ \@alph\c@ContinuedFloat}}%
+ \caption@setoptions{ContinuedFloat}%
+ \caption@setoptions{continued#1}}
+% \end{macrocode}
+% \begin{macrocode}
+\providecommand*\sf@ContinuedFloat[1]{}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@CFtype{??}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\theContinuedFloat}
+% Its preset to \cs{@empty}, so usually the continuation counter is not
+% included in the caption label or references.
+% \begin{macrocode}
+\newcounter{ContinuedFloat}
+\let\theContinuedFloat\@empty
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@resetContinuedFloat}
+% |\caption@resetContinuedFloat|\marg{type}\par
+% If a continuation counter is defined, we reset it.
+% (This one will be called inside |\@caption|.)
+% \begin{macrocode}
+\newcommand*\caption@resetContinuedFloat[1]{%
+ \@stpelt{ContinuedFloat}\xdef\caption@CFtype{#1}}
+% \end{macrocode}
+% \end{macro}
+%
+% \subsection{Internal helpers}
+%
+% \begin{macro}{\caption@refstepcounter}
+% \changes{v3.1}{2007/07/28}{This macro added}
+% Resets the continuation counter, increments the float (i.e. |figure| or
+% |table|) counter, and sets the |refstepcounter| flag.
+% \begin{macrocode}
+\newcommand*\caption@refstepcounter[1]{%
+ \caption@resetContinuedFloat{#1}%
+ \caption@@refstepcounter{#1}%
+ \let\caption@ifrefstepcounter\@firstoftwo}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@@refstepcounter{\refstepcounter}
+\let\caption@ifrefstepcounter\@secondoftwo
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@dblarg}
+% \changes{v3.1}{2007/02/05}{This macro added}
+% \changes{v3.1f}{2007/12/06}{Bugfix 07-12-06: Changed so it works without \cs{kernel@ifnextchar}
+% (which was introduced in \LaTeXe\ 2004/01/23), too}
+% A |\relax| was added compared to |\@dblarg| so |\caption{}| will be
+% expanded to |\caption[\relax]{}| (and not to |\caption[]{}|).
+% \begin{macrocode}
+\@ifundefined{kernel@ifnextchar}%
+ {\newcommand\caption@dblarg[1]{\@ifnextchar[{#1}{\caption@xdblarg{#1}}}}%
+ {\newcommand\caption@dblarg[1]{\kernel@ifnextchar[{#1}{\caption@xdblarg{#1}}}}%
+\newcommand\caption@xdblarg[2]{#1[{#2\relax}]{#2}}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@begin}
+% \changes{v3.0a}{2004/01/23}{\cs{caption@settype} changed to \cs{caption@setfloattype}}
+% \changes{v3.0e}{2005/04/12}{Check for default label format added}
+% \changes{v3.0f}{2005/06/11}{Usage of \cs{caption@resetContinuedFloat} added}
+% \changes{v3.1}{2007/05/09}{Usage of \cs{caption@setfloattype} \&
+% \cs{caption@resetContinuedFloat} removed}
+% Our handling of |\caption| will always be surrounded by
+% |\caption@begin| (or |\caption@beginex|) and |\caption@end|.\par
+% |\caption@begin|\marg{type} performs these tasks:
+% \begin{enumerate}
+% \item[1.] Start a new group.
+% \item[2.] Define |\fnum@|\meta{type} if the caption label format is set
+% to non-default.
+% \item[3.] Override the |position=| setting, if necessary.
+% (for example if set to |auto| or used inside a |supertabular|)
+% \end{enumerate}
+% \begin{macrocode}
+\newcommand*\caption@begin[1]{%
+ \begingroup
+ \caption@setfnum{#1}%
+ \caption@fixposition
+ \global\let\caption@fixedposition\caption@position}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@beginex}
+% \changes{v3.0b}{2004/05/16}{Support of \opt{listof=} added}
+% \changes{v3.0l}{2007/02/04}{Takes now 3 args instead of 2, check for empty heading added}
+% \changes{v3.1}{2007/07/01}{Makes lst-entry now instead of redefining \cs{addcontentsline}}
+% |\caption@beginex|\marg{type}\marg{list entry}\marg{heading}\par
+% performs the same tasks as |\caption@begin| and additionally:
+% \begin{enumerate}
+% \item[4.] Make an entry in the list-of-whatever.
+% \item[5.] Set |\caption@ifempty| according argument \meta{heading}.
+% \end{enumerate}
+% \begin{macrocode}
+\newcommand\caption@beginex[3]{%
+ \caption@begin{#1}%
+ \caption@addcontentsline{#1}{#2}%
+ \caption@ifempty{#3}{}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@end}
+% |\caption@end| closes the group.
+% \begin{macrocode}
+\newcommand*\caption@end{%
+ \endgroup
+ \let\caption@position\caption@fixedposition}
+% \end{macrocode}
+% \end{macro}
+%
+% \changes{v3.0a}{2004/01/23}{%
+% Internal hooks \cs{caption@@begin} \& \cs{caption@@end} added}
+% \changes{v3.0h}{2005/10/06}{%
+% Internal hooks \cs{caption@@begin} \& \cs{caption@@end} removed}
+%
+% \begin{macro}{\caption@setfnum}
+% \changes{v3.1}{2007/03/10}{This macro added}
+% |\caption@setfnum|\marg{type}\\
+% redefines |\fnum@|\meta{type} according the caption label format
+% set with |labelformat=|. But if |labelformat=default| is set,
+% |\fnum@|\meta{type} will not be overwritten by us.
+% \begin{macrocode}
+\newcommand*\caption@setfnum[1]{%
+ \@ifundefined{fnum@#1}{\iftrue}{\ifx\caption@lfmt\caption@lfmt@default\else}%
+ \@namedef{fnum@#1}{\caption@fnum{#1}}%
+ \fi}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@boxrestore}
+% \changes{v3.1}{2007/03/03}{This macro and its usage added}
+% \changes{v3.1b}{2007/09/17}{Bugfix: Redefinition of CR added}
+% The original code (from |latex/base/ltboxes.dtx|):
+% \begin{verbatim}
+% \def\@parboxrestore{\@arrayparboxrestore\let\\\@normalcr}
+% \def\@arrayparboxrestore{%
+% \let\if@nobreak\iffalse
+% \let\if@noskipsec\iffalse
+% \let\par\@@par
+% \let\-\@dischyph
+% \let\'\@acci\let\`\@accii\let\=\@acciii
+% \parindent\z@ \parskip\z@skip
+% \everypar{}%
+% \linewidth\hsize
+% \@totalleftmargin\z@
+% \leftskip\z@skip \rightskip\z@skip \@rightskip\z@skip
+% \parfillskip\@flushglue \lineskip\normallineskip
+% \baselineskip\normalbaselineskip
+% \sloppy}
+% \end{verbatim}%^^A
+% This one will be used by |\@caption| instead of |\@parboxrestore|.
+% \begin{macrocode}
+\newcommand*\caption@boxrestore{%
+ \let\if@nobreak\iffalse
+ \let\if@noskipsec\iffalse
+ \let\par\@@par
+% \let\-\@dischyph
+% \let\'\@acci\let\`\@accii\let\=\@acciii
+ \parindent\z@ \parskip\z@skip
+ \everypar{}%
+% \linewidth\hsize
+% \@totalleftmargin\z@
+ \leftskip\z@skip \rightskip\z@skip \@rightskip\z@skip
+ \parfillskip\@flushglue \lineskip\normallineskip
+ \baselineskip\normalbaselineskip
+ \sloppy
+ \let\\\@normalcr
+}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@normalsize}
+% \changes{v3.1}{2007/05/05}{This macro and its usage added}
+% This one will be used by |\@caption| instead of |\normalsize|.\par
+% Its code is equivalent to
+% \begin{quote}
+% |\caption@font{normal}%|
+% \end{quote}
+% but executes faster (since the starred form of |\caption@font|
+% does not use |\setkeys| internally).
+% \begin{macrocode}
+\newcommand*\caption@normalsize{%
+ \caption@font*{\KV@caption@fnt@normal\@unused}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@setfloatcapt}
+% Needed for support of the \package{float} package, where the caption will
+% not be typeset directly, but catched in a |\vbox| called |\@floatcapt|
+% instead.
+% \begin{macrocode}
+\let\caption@setfloatcapt\@firstofone
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@makecurrent}
+% \begin{macro}{\caption@makeanchor}
+% \begin{macro}{\caption@start}
+% \begin{macro}{\caption@@start}
+% \begin{macro}{\caption@freezeHref}
+% \begin{macro}{\caption@defrostHref}
+% All these are needed for support of the \package{hyperref} package.
+% \begin{macrocode}
+\newcommand*\caption@makecurrent[2]{}
+\let\caption@makeanchor\@firstofone
+\let\caption@start\relax
+\let\caption@@start\relax
+\let\caption@freezeHref\relax
+\let\caption@defrostHref\relax
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+% \end{macro}
+% \end{macro}
+% \end{macro}
+% \end{macro}
+%
+% \begin{macro}{\caption@gettitle}
+% \changes{v3.1}{2007/05/05}{This macro and its usage added}
+% This one is needed for support of the \package{nameref} package.
+% \begin{macrocode}
+\newcommand\caption@gettitle[1]{%
+ \@ifundefined{NR@gettitle}%
+ {\def\@currentlabelname{#1}}%
+ {\NR@gettitle{#1}}}
+% \end{macrocode}
+% \end{macro}
+%
+% \subsection{\cs{caption}, \cs{@caption}, and \cs{@makecaption}}
+%
+% \begin{macro}{\caption@caption}
+% \changes{v3.0f}{2005/05/22}{Bugfix: \cs{ContinuedFloat} added}
+% \changes{v3.0f}{2005/06/13}{Support of \cs{caption*[]} removed}
+% \changes{v3.0l}{2007/01/19}{Minimal support of \textsf{combine} package added}
+% \changes{v3.1}{2007/02/04}{Re-written, does not save\&use original definition anymore}
+% Here comes our definition of |\caption| and |\caption*|.
+% Beside the support of the starred variant this code was adapted to the
+% various packages we support.
+% We are using |\caption@dblarg| instead of |\@dblarg| so |\caption{}|
+% (with an empty arg.) will produce a list-of entry, but |\caption[]{}|
+% won't.
+% \begin{macrocode}
+\def\caption@caption{%
+ \caption@iftype
+ {\caption@checkgrouplevel\@empty\caption
+ \caption@star
+ {\caption@refstepcounter\@captype}%
+ {\caption@dblarg{\@caption\@captype}}}%
+ {\caption@Error{\noexpand\caption outside float}}}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@star}
+% \changes{v3.1}{2007/06/24}{Renamed from \cs{caption@caption} to \cs{caption@star}}
+% A helper macro which processes the optional |*| after |\caption|.
+% \Note{We set \cs{caption@startrue} globally so it works with the
+% \package{sidecap} package, too.}
+% \begin{macrocode}
+\newcommand*\caption@star[2]{%
+ \@ifstar{\global\caption@startrue#2[]}{#1#2}}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@@caption}
+% \changes{v3.1}{2007/02/04}{Re-written, does not save\&use original definition anymore}
+% \changes{v3.1f}{2007/11/28}{Bugfix: Handling of \texttt{@minipage} flag added}
+% \changes{v3.1f}{2007/11/28}{Support of option \opt{@minipage} added}
+% \changes{v3.1g}{2008/03/16}{Internal: Uses \cs{caption@prepareanchor} now}
+% As above, our version has been adapted to the packages we support.
+% Additionally our code is nested by |\caption@beginex| \&
+% |\caption@end| instead of |\begingroup| \& |\endgroup|.
+% Furthermore we use |\caption@boxrestore| instead of |\@parboxrestore|
+% so this code also works correctly inside list-based environments
+% like |wide| \& |addmargin|. (This, and the fact that we use
+% |\linewidth| instead of |\hsize| inside |\@makecaption|, solves
+% \href{http://www.latex-project.org/cgi-bin/ltxbugs2html?pr=latex/2472}%^^A
+% {\LaTeX\ PR \texttt{latex/2472}}.)
+% \begin{macrocode}
+\long\def\caption@@caption#1[#2]#3{%
+% \end{macrocode}
+% \begin{macrocode}
+ \ifcaption@star \else
+ \caption@prepareanchor{#1}{#2}%
+ \fi
+% \end{macrocode}
+% \begin{macrocode}
+ \par
+ \caption@beginex{#1}{#2}{#3}%
+ \caption@setfloatcapt{%
+ \caption@boxrestore
+ \if@minipage
+ \@setminipage
+ \fi
+ \caption@normalsize
+ \ifcaption@star
+ \let\caption@makeanchor\@firstofone
+ \fi
+ \@makecaption{\csname fnum@#1\endcsname}%
+ {\ignorespaces\caption@makeanchor{#3}}\par
+ \caption@if@minipage\@minipagetrue\@minipagefalse}%
+ \caption@end}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@prepareanchor}
+% \changes{v3.1g}{2008/03/16}{This macro added}
+% \begin{macrocode}
+\newcommand*\caption@prepareanchor[2]{%
+ \caption@makecurrent{#1}{#2}%
+ \caption@ifhypcap\caption@@start{}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@makecaption}
+% \changes{v3.1i}{2008/05/06}{Usage of \cs{caption@rule} added}
+% |\@makecaption|\marg{label}\marg{text}\par
+% We do basically the same as the original code (from the standard
+% \LaTeX\ document classes), but take care of the |position=| setting
+% and use |\caption@@make| from the \package{caption} kernel to finally
+% typeset the caption.
+% \begin{macrocode}
+\long\def\caption@makecaption#1#2{%
+ \caption@iftop
+ {\vskip\belowcaptionskip}%
+ {\caption@rule\vskip\abovecaptionskip}%
+ \caption@@make{#1}{#2}%
+ \caption@iftop
+ {\vskip\abovecaptionskip\caption@rule}%
+ {\vskip\belowcaptionskip}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@redefine}
+% \changes{v3.1k}{2009/03/30}{This macro added, it contains the patching code now}
+% We only redefine |\caption| and |\@caption| if the current definitions
+% are well known, so documents written in the old (\package{caption}
+% package \version{1.x}) days (where |\caption| \& |\@caption| were not
+% redefined by us) will still compile fine.
+% For example the usage of the \package{captcont} package, which brings
+% it's own definition of |\caption*|, was quite common these days.
+% \begin{macrocode}
+\newcommand*\caption@redefine{}
+\g@addto@macro\caption@redefine{%
+% \end{macrocode}
+%
+% \begin{macrocode}
+ \caption@setbool{incompatible}{0}%
+% \end{macrocode}
+%
+% \begin{macrocode}
+ \caption@CheckCommand\caption{%
+ % ltfloat.dtx [2002/10/01 v1.1v LaTeX Kernel (Floats)]
+ \def\caption{%
+ \ifx\@captype\@undefined
+ \@latex@error{\noexpand\caption outside float}\@ehd
+ \expandafter\@gobble
+ \else
+ \refstepcounter\@captype
+ \expandafter\@firstofone
+ \fi
+ {\@dblarg{\@caption\@captype}}%
+ }}%
+% \end{macrocode}
+%
+% \begin{macrocode}
+ \caption@CheckCommand\caption{%
+ % beamerbaselocalstructure.sty,v 1.53 2007/01/28 20:48:21 tantau
+ \def\caption{
+ \ifx\@captype\@undefined
+ \@latex@error{\noexpand\caption outside figure or table}\@ehd
+ \expandafter\@gobble
+ \else
+ \refstepcounter\@captype
+ \expandafter\@firstofone
+ \fi
+ {\@dblarg{\@caption\@captype}}%
+ }}%
+% \end{macrocode}
+%
+% \begin{macrocode}
+ \caption@CheckCommand\caption{%
+ % float.sty [2001/11/08 v1.3d Float enhancements (AL)]
+ \renewcommand\caption{%
+ \ifx\@captype\@undefined
+ \@latex@error{\noexpand\caption outside float}\@ehd
+ \expandafter\@gobble
+ \else
+ \refstepcounter\@captype
+ \let\@tempf\@caption
+ \expandafter\ifx\csname @float@c@\@captype\endcsname\relax\else
+ \expandafter\expandafter\let
+ \expandafter\@tempf\csname @float@c@\@captype\endcsname
+ \fi
+ \fi
+ \@dblarg{\@tempf\@captype}}}%
+% \end{macrocode}
+%
+% \begin{macrocode}
+ \caption@CheckCommand\caption{%
+ % hyperref.sty [2007/02/27 v6.75t Hypertext links for LaTeX]
+ % hyperref.sty [2007/04/09 v6.76a Hypertext links for LaTeX]
+ % hyperref.sty [2007/06/12 v6.76h Hypertext links for LaTeX]
+ \def\caption{%
+ \ifx\@captype\@undefined
+ \@latex@error{\noexpand\caption outside float}\@ehd
+ \expandafter\@gobble
+ \else
+ \H@refstepcounter\@captype
+ \@ifundefined{fst@\@captype}{%
+ \let\Hy@tempa\@caption
+ }{%
+ \let\Hy@tempa\Hy@float@caption
+ }%
+ \expandafter\@firstofone
+ \fi
+ {\@dblarg{\Hy@tempa\@captype}}%
+ }}%
+% \end{macrocode}
+% \begin{macrocode}
+ \caption@CheckCommand\caption{%
+ % hyperref.sty [2007/08/05 v6.76j Hypertext links for LaTeX]
+ \def\caption{%
+ \ifx\@captype\@undefined
+ \@latex@error{\noexpand\caption outside float}\@ehd
+ \expandafter\@gobble
+ \else
+ \H@refstepcounter\@captype
+ \let\Hy@tempa\@caption
+ \@ifundefined{float@caption}{%
+ }{%
+ \expandafter\ifx\csname @float@c@\@captype\endcsname\float@caption
+ \let\Hy@tempa\Hy@float@caption
+ \fi
+ }%
+ \expandafter\@firstofone
+ \fi
+ {\@dblarg{\Hy@tempa\@captype}}%
+ }}%
+% \end{macrocode}
+%
+% \begin{macrocode}
+ \caption@IfCheckCommand{}{%
+ \caption@Info{%
+ Incompatible package detected (regarding \string\caption).\MessageBreak
+ \string\caption\space=\space\meaning\caption}%
+ \caption@setbool{incompatible}{1}}%
+% \end{macrocode}
+%
+% \begin{macrocode}
+ \caption@CheckCommand\@caption{%
+ % ltfloat.dtx [2002/10/01 v1.1v LaTeX Kernel (Floats)]
+ \long\def\@caption#1[#2]#3{%
+ \par
+ \addcontentsline{\csname ext@#1\endcsname}{#1}%
+ {\protect\numberline{\csname the#1\endcsname}{\ignorespaces #2}}%
+ \begingroup
+ \@parboxrestore
+ \if@minipage
+ \@setminipage
+ \fi
+ \normalsize
+ \@makecaption{\csname fnum@#1\endcsname}{\ignorespaces #3}\par
+ \endgroup}}%
+% \end{macrocode}
+%
+% \begin{macrocode}
+ \caption@CheckCommand\@caption{%
+ % beamerbaselocalstructure.sty,v 1.53 2007/01/28 20:48:21 tantau
+ \long\def\@caption#1[#2]#3{% second argument ignored
+ \par\nobreak
+ \begingroup
+ \@parboxrestore
+ \if@minipage
+ \@setminipage
+ \fi
+ \beamer@makecaption{#1}{\ignorespaces #3}\par\nobreak
+ \endgroup}}%
+% \end{macrocode}
+%
+% \begin{macrocode}
+% \caption@CheckCommand\float@caption{%
+% % float.sty [2001/11/08 v1.3d Float enhancements (AL)]
+% \long\def\float@caption#1[#2]#3{%
+% \addcontentsline{\@nameuse{ext@#1}}{#1}%
+% {\protect\numberline{\@nameuse{the#1}}{\ignorespaces #2}}
+% \global\setbox\@floatcapt\vbox\bgroup\@parboxrestore
+% \normalsize\@fs@capt{\@nameuse{fnum@#1}}{\ignorespaces #3}%
+% \@ifnextchar[{\float@ccon}{\egroup}}%
+% \long\def\float@ccon[#1]{#1\par\egroup}}%
+% \end{macrocode}
+%
+% \begin{macrocode}
+ \caption@CheckCommand\@caption{%
+ % hyperref.sty [2007/02/27 v6.75t Hypertext links for LaTeX]
+ \long\def\@caption#1[#2]#3{%
+ \hyper@makecurrent{\@captype}%
+ \def\@currentlabelname{#2}%
+ \par\addcontentsline{\csname ext@#1\endcsname}{#1}{%
+ \protect\numberline{\csname the#1\endcsname}{\ignorespaces #2}%
+ }%
+ \begingroup
+ \@parboxrestore
+ \if@minipage
+ \@setminipage
+ \fi
+ \normalsize
+ \@makecaption{\csname fnum@#1\endcsname}{%
+ \ignorespaces
+ \ifHy@nesting
+ \hyper@@anchor{\@currentHref}{#3}%
+ \else
+ \Hy@raisedlink{\hyper@@anchor{\@currentHref}{\relax}}#3%
+ \fi
+ }%
+ \par
+ \endgroup
+ }}%
+% \end{macrocode}
+% \begin{macrocode}
+ \caption@CheckCommand\@caption{%
+ % hyperref.sty [2007/04/09 v6.76a Hypertext links for LaTeX]
+ % hyperref.sty [2007/06/12 v6.76h Hypertext links for LaTeX]
+ % hyperref.sty [2007/08/05 v6.76j Hypertext links for LaTeX]
+ \long\def\@caption#1[#2]#3{%
+ \expandafter\ifx\csname if@capstart\expandafter\endcsname
+ \csname iftrue\endcsname
+ \global\let\@currentHref\hc@currentHref
+ \else
+ \hyper@makecurrent{\@captype}%
+ \fi
+ \def\@currentlabelname{#2}%
+ \par\addcontentsline{\csname ext@#1\endcsname}{#1}{%
+ \protect\numberline{\csname the#1\endcsname}{\ignorespaces #2}%
+ }%
+ \begingroup
+ \@parboxrestore
+ \if@minipage
+ \@setminipage
+ \fi
+ \normalsize
+ \expandafter\ifx\csname if@capstart\expandafter\endcsname
+ \csname iftrue\endcsname
+ \global\@capstartfalse
+ \@makecaption{\csname fnum@#1\endcsname}{\ignorespaces#3}%
+ \else
+ \@makecaption{\csname fnum@#1\endcsname}{%
+ \ignorespaces
+ \ifHy@nesting
+ \hyper@@anchor{\@currentHref}{#3}%
+ \else
+ \Hy@raisedlink{\hyper@@anchor{\@currentHref}{\relax}}#3%
+ \fi
+ }%
+ \fi
+ \par
+ \endgroup
+ }}%
+% \end{macrocode}
+% \begin{macrocode}
+ \caption@CheckCommand\@caption{%
+ % hyperref.sty [2009/11/27 v6.79k Hypertext links for LaTeX]
+ \long\def\@caption#1[#2]#3{%
+ \expandafter\ifx\csname if@capstart\expandafter\endcsname
+ \csname iftrue\endcsname
+ \global\let\@currentHref\hc@currentHref
+ \else
+ \hyper@makecurrent{\@captype}%
+ \fi
+ \def\@currentlabelname{#2}%
+ \par\addcontentsline{\csname ext@#1\endcsname}{#1}{%
+ \protect\numberline{\csname the#1\endcsname}{\ignorespaces #2}%
+ }%
+ \begingroup
+ \@parboxrestore
+ \if@minipage
+ \@setminipage
+ \fi
+ \normalsize
+ \expandafter\ifx\csname if@capstart\expandafter\endcsname
+ \csname iftrue\endcsname
+ \global\@capstartfalse
+ \@makecaption{\csname fnum@#1\endcsname}{\ignorespaces#3}%
+ \else
+ \@makecaption{\csname fnum@#1\endcsname}{%
+ \ignorespaces
+ \ifHy@nesting
+ \expandafter\hyper@@anchor\expandafter{\@currentHref}{#3}%
+ \else
+ \Hy@raisedlink{%
+ \expandafter\hyper@@anchor\expandafter{\@currentHref}{\relax}%
+ }%
+ #3%
+ \fi
+ }%
+ \fi
+ \par
+ \endgroup
+ }}%
+% \end{macrocode}
+% \begin{macrocode}
+ \caption@CheckCommand\@caption{%
+ % hyperref.sty [2009/12/09 v6.79m Hypertext links for LaTeX]
+ % hyperref.sty [2009/12/28 v6.79z Hypertext links for LaTeX]
+ \long\def\@caption#1[#2]#3{%
+ \expandafter\ifx\csname if@capstart\expandafter\endcsname
+ \csname iftrue\endcsname
+ \global\let\@currentHref\hc@currentHref
+ \else
+ \hyper@makecurrent{\@captype}%
+ \fi
+ \@ifundefined{NR@gettitle}{%
+ \def\@currentlabelname{#2}%
+ }{%
+ \NR@gettitle{#2}%
+ }%
+ \par\addcontentsline{\csname ext@#1\endcsname}{#1}{%
+ \protect\numberline{\csname the#1\endcsname}{\ignorespaces #2}%
+ }%
+ \begingroup
+ \@parboxrestore
+ \if@minipage
+ \@setminipage
+ \fi
+ \normalsize
+ \expandafter\ifx\csname if@capstart\expandafter\endcsname
+ \csname iftrue\endcsname
+ \global\@capstartfalse
+ \@makecaption{\csname fnum@#1\endcsname}{\ignorespaces#3}%
+ \else
+ \@makecaption{\csname fnum@#1\endcsname}{%
+ \ignorespaces
+ \ifHy@nesting
+ \expandafter\hyper@@anchor\expandafter{\@currentHref}{#3}%
+ \else
+ \Hy@raisedlink{%
+ \expandafter\hyper@@anchor\expandafter{%
+ \@currentHref
+ }{\relax}%
+ }%
+ #3%
+ \fi
+ }%
+ \fi
+ \par
+ \endgroup
+ }}%
+% \end{macrocode}
+%
+% \begin{macrocode}
+ \caption@CheckCommand\@caption{%
+ % nameref.sty [2006/12/27 v2.28 Cross-referencing by name of section]
+ \long\def\@caption#1[#2]{%
+ \def\@currentlabelname{#2}%
+ \NR@@caption{#1}[{#2}]%
+ }}%
+% \end{macrocode}
+% \begin{macrocode}
+ \caption@CheckCommand\@caption{%
+ % nameref.sty [2009/11/27 v2.32 Cross-referencing by name of section]
+ \long\def\@caption#1[#2]{%
+ \NR@gettitle{#2}%
+ \NR@@caption{#1}[{#2}]%
+ }}%
+% \end{macrocode}
+%
+% \begin{macrocode}
+ \caption@CheckCommand\@caption{%
+ % subfigure.sty [2002/07/30 v2.1.4 subfigure package]
+ \long\def\@caption#1[#2]#3{%
+ \@ifundefined{if#1topcap}%
+ {\subfig@oldcaption{#1}[{#2}]{#3}}%
+ {\@nameuse{if#1topcap}%
+ \@listsubcaptions{#1}%
+ \subfig@oldcaption{#1}[{#2}]{#3}%
+ \else
+ \subfig@oldcaption{#1}[{#2}]{#3}%
+ \@listsubcaptions{#1}%
+ \fi}}}%
+% \end{macrocode}
+%
+% \begin{macrocode}
+ \caption@CheckCommand\@caption{%
+ % subfig.sty [2005/06/28 ver: 1.3 subfig package]
+ \def\@caption{\caption@}%
+% \long\def\caption@#1[#2]#3{%
+% \@ifundefined{caption@setfloattype}%
+% \caption@settype
+% \caption@setfloattype
+% \@captype
+% \sf@ifpositiontop{%
+% \@listsubcaptions{#1}%
+% \sf@old@caption{#1}[{#2}]{#3}%
+% }{%
+% \sf@old@caption{#1}[{#2}]{#3}%
+% \@listsubcaptions{#1}%
+% }}%
+ }%
+% \end{macrocode}
+%
+% \begin{macrocode}
+ \caption@IfCheckCommand{}{%
+ \caption@Info{%
+ Incompatible package detected (regarding \string\@caption).\MessageBreak
+ \string\@caption\space=\space\meaning\@caption}%
+ \caption@setbool{incompatible}{1}}%
+% \end{macrocode}
+%
+% The option |compatibility=| will override the compatibility mode.
+% \begin{macrocode}
+ \@ifundefined{caption@ifcompatibility}%
+ {\let\caption@ifcompatibility\caption@ifincompatible
+ \let\caption@tempa\caption@WarningNoLine}%
+ {\let\caption@tempa\@gobble}% suppress warning
+% \end{macrocode}
+%
+% \begin{macrocode}
+ \caption@ifcompatibility{%
+% \end{macrocode}
+%
+% \begin{macrocode}
+ \caption@tempa{%
+ \noexpand\caption will not be redefined since it's already\MessageBreak
+ redefined by a document class or package which is\MessageBreak
+ unknown to the caption package}%
+% \end{macrocode}
+%
+% \begin{macrocode}
+ \renewcommand*\caption@redefine{}%
+% \end{macrocode}
+%
+% |\ContinuedFloat| is not supported in compatibility mode.
+% \begin{macrocode}
+ \renewcommand*\caption@ContinuedFloat[1]{%
+ \caption@Error{Not available in compatibility mode}}%
+% \end{macrocode}
+%
+% |\caption@start| is not supported in compatibility mode.
+% \begin{macrocode}
+ \caption@AtBeginDocument*{%
+ \let\caption@start\relax
+ \@ifundefined{caption@ORI@capstart}{}{%
+ \caption@Debug{%
+ Restore hypcap definition of \string\capstart\@gobble}%
+ \let\capstart\caption@ORI@capstart}%
+ \@ifundefined{caption@ORI@float@makebox}{}{%
+ \caption@Debug{%
+ Restore hyperref redefinition of \string\float@makebox\@gobble}%
+ \let\float@makebox\caption@ORI@float@makebox}%
+ }%
+% \end{macrocode}
+%
+% \begin{macro}{\caption@star}
+% We redefine |\caption@star| here so it does not make any harm.
+% \begin{macrocode}
+ \renewcommand*\caption@star[2]{#1#2}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+ }{%
+% \end{macrocode}
+%
+% \begin{macrocode}
+ \caption@ifincompatible{%
+ \caption@WarningNoLine{%
+ Forced redefinition of \noexpand\caption since the\MessageBreak
+ unsupported(!) package option `compatibility=false'\MessageBreak
+ was given}%
+ }{}%
+% \end{macrocode}
+%
+% \begin{macro}{\caption}
+% \begin{macro}{\@caption}
+% \begin{macrocode}
+ \renewcommand*\caption@redefine{%
+ \let\caption\caption@caption
+ \let\@caption\caption@@caption}%
+ \caption@redefine
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+%
+% \begin{macrocode}
+ }%
+% \end{macrocode}
+% \begin{macrocode}
+ \caption@AtBeginDocument*{%
+ \let\caption@ORI@capstart\@undefined
+ \let\caption@ORI@float@makebox\@undefined}%
+% \end{macrocode}
+%
+% \begin{macro}{\@xfloat}
+% \changes{v3.1}{2007/05/09}{This re-definition added}
+% \changes{v3.1b}{2007/09/22}{Will now be redefined in compatibility mode, too}
+% We redefine |\@xfloat| so inside floating environments our
+% type-specific options will be used, a \package{hyperref}
+% anchor will be set etc.
+% \begin{macrocode}
+ \let\caption@ORI@xfloat\@xfloat
+ \def\@xfloat#1[#2]{%
+ \caption@ORI@xfloat{#1}[#2]%
+ \caption@settype{#1}}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+}
+% \end{macrocode}
+% \end{macro}
+%
+% Some packages (like the \package{hyperref} package for example) redefines
+% |\caption| and |\@caption|, too.
+% So we have to use |\AtBeginDocument| here, so we can make sure
+% our definition is the one which will be valid at last.
+% \begin{macrocode}
+\caption@AtBeginDocument{\caption@redefine}
+% \end{macrocode}
+%
+% \begin{macro}{\@makecaption}
+% \begin{macrocode}
+\let\@makecaption\caption@makecaption
+% \end{macrocode}
+% \end{macro}
+%
+% \subsection{Support for sub-captions}
+% \changes{v3.1f}{2007/11/16}{Support for sub-captions added}
+%
+% \begin{macro}{\caption@DeclareSubType}
+% |\caption@DeclareSub| initializes the usage of \cs{caption}
+% in sub-floats.
+% \begin{macrocode}
+\def\caption@DeclareSubType sub#1\@nil{%
+ \caption@Debug{Initializing subtype for `#1'\@gobble}%
+ \@namedef{caption@c@#1}{0}%
+ \@namedef{caption@beginsub#1}{\caption@beginsubfloat{#1}}}
+\@onlypreamble\caption@DeclareSubType
+% \end{macrocode}
+% \end{macro}
+%
+% Initialize the sub-captions defined with \cs{DeclareCaptionSubType}\ldots
+% \begin{macrocode}
+\caption@For*{subtypelist}{\caption@DeclareSubType sub#1\@nil}
+% \end{macrocode}
+%
+% Initialize the sub-captions defined with \cs{newsubfloat}\cite{subfig}\ldots
+% \begin{macrocode}
+\caption@AtBeginDocument*{%
+ \@ifundefined{sf@counterlist}{}{%
+ \@for\sf@temp:=\sf@counterlist\do{%
+ \expandafter\caption@DeclareSubType\sf@temp\@nil}}}
+% \end{macrocode}
+%
+% \begin{macro}{\caption@subtypehook}
+% \changes{v3.1g}{2008/03/20}{Redefinition of \cs{caption@setlist} added}
+% \changes{v3.1k}{2009/10/09}{Bugfix 09-08-12b: \cs{@makecaption} will now be restored here, too}
+% Hook, will be used inside \cs{caption@setsubtype}.
+% \begin{macrocode}
+\newcommand*\caption@subtypehook{%
+ \ifx\caption\caption@subcaption \else
+% \end{macrocode}
+% \begin{macrocode}
+ \caption@ifrefstepcounter{}{%
+ % no \caption or \subcaption in this (floating) environment yet
+ \caption@Debug{Increment \@captype\ counter =\the\value\@captype}%
+ \caption@l@stepcounter\@captype
+ \let\addcontentsline\caption@addsubcontentsline}%
+% \end{macrocode}
+% \begin{macrocode}
+ \ifnum\csname caption@c@\@captype\endcsname=\value\@captype \else
+ \caption@Debug{Reset sub\@captype\ counter}%
+ \expandafter\xdef\csname caption@c@\@captype\endcsname{%
+ \the\value\@captype}%
+ \@stpelt\@subcaptype
+ \fi
+% \end{macrocode}
+% \begin{macrocode}
+ \c@ContinuedFloat=0\relax
+ \let\caption@resetContinuedFloat\@gobble
+ \let\caption@addcontentsline\caption@kernel@addcontentsline
+ \let\caption@setfloatcapt\@firstofone
+% \end{macrocode}
+% \begin{macrocode}
+ \caption@clearmargin
+ \caption@iflist{}{\let\caption@setlist\@gobble}%
+ \caption@setoptions{sub}%
+ \caption@setoptions{subfloat}% for subfig-package compatibility
+% \end{macrocode}
+% \begin{macrocode}
+ \let\caption\caption@subcaption
+ \let\@makecaption\caption@makecaption
+ \fi}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@subcaption}
+% Makes a sub-caption.
+% \begin{macrocode}
+\newcommand*\caption@subcaption{%
+ \caption@iftype
+ {\caption@checkgrouplevel{sub}\subcaption
+ \caption@star
+ {\caption@refstepcounter\@subcaptype}%
+ {\caption@dblarg{\@caption\@subcaptype}}}%
+ {\caption@Error{\noexpand\subcaption outside float}}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@addcontentsline}
+% \changes{v3.1g}{2008/01/12}{Argument of \cs{caption@addsubcontentslines} removed}
+% \changes{v3.1i}{2008/08/02}{Argument of \cs{caption@addsubcontentslines} re-added}
+% We extend |\caption@addcontentsline| so it handles sub-captions, too.
+% \Note{\cs{sf@ifpositiontop} \& \cs{@listsubcaptions} are defined by the
+% \package{subfigure} \& \package{subfig} packages.}
+% \begin{macrocode}
+\let\caption@kernel@addcontentsline\caption@addcontentsline
+\renewcommand*\caption@addcontentsline[2]{%
+ \sf@ifpositiontop{\@listsubcaptions{#1}}{}%
+ \caption@kernel@addcontentsline{#1}{#2}%
+ \sf@ifpositiontop{}{\@listsubcaptions{#1}}%
+ \caption@addsubcontentslines{#1}}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@addsubcontentslines[1]{%
+ \begingroup
+ \caption@subcontentslines
+ \endgroup
+ \caption@clearsubcontentslines}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+\caption@AtBeginDocument*{%
+ \@ifundefined{sf@ifpositiontop}{\let\sf@ifpositiontop\@gobbletwo}{}%
+ \caption@clearsubcontentslines
+ \g@addto@macro\caption@typehook{\caption@checksubcontentslines}%
+ \AtEndDocument{\caption@checksubcontentslines}}%
+% \end{macrocode}
+%
+% \begin{macro}{\caption@addsubcontentsline}
+% \changes{v3.1i}{2008/08/02}{Bugfix 08-07-28:
+% \cs{label}, \cs{index}, and \cs{glossary} are allowed inside the list entry now}
+% Add a pending sub-caption list entry.
+% \begin{macrocode}
+\newcommand*\caption@addsubcontentsline[3]{%
+ \begingroup
+ \let\label\@gobble \let\index\@gobble \let\glossary\@gobble
+ \protected@edef\@tempa{\endgroup
+ \noexpand\g@addto@macro\noexpand\caption@subcontentslines{%
+ \noexpand\@namedef{the#2}{\csname the#2\endcsname}%
+ \ifx\@currentHref\@undefined \else
+ \noexpand\def\noexpand\@currentHref{\@currentHref}%
+ \fi
+ \protect\addcontentsline{#1}{#2}{#3}}}%
+ \@tempa}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@checksubcontentslines}
+% \changes{v3.1g}{2008/01/07}{Bugfix: Uses \cs{caption@Error} instead of \cs{subcaption@Error} now}
+% Checks if the list of pending sub-captions is empty, if not,
+% a warning will be issued.
+% \begin{macrocode}
+\newcommand*\caption@checksubcontentslines{%
+ \ifx\caption@subcontentslines\@empty \else
+ \caption@Error{%
+ Something's wrong--perhaps a missing \protect\caption\MessageBreak
+ in the last figure or table}%
+ \caption@clearsubcontentslines
+ \fi}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@clearsubcontentslines}
+% Clear pending sub-caption list entries.
+% \begin{macrocode}
+\newcommand*\caption@clearsubcontentslines{%
+ \global\let\caption@subcontentslines\@empty}
+% \end{macrocode}
+% \end{macro}
+%
+% \subsection{Document class \& Babel package support}
+%
+% \subsubsection{The \AmS{} \& \SmF{} classes}
+% \changes{v3.1}{2007/07/29}{\AmS\ \& \SmF\ classes support added (package)}
+%
+% \begin{macrocode}
+\@ifundefined{smf@makecaption}{}{\let\smf@makecaption\@makecaption}
+% \end{macrocode}
+%
+% \subsubsection{The beamer class}
+% \changes{v3.1}{2007/03/10}{beamer class support added (package)}
+%
+% \begin{macrocode}
+\@ifclassloaded{beamer}{%
+ \caption@Info{beamer document class}%
+% \end{macrocode}
+%
+% Since the beamer class do not offer a `list of figures' we switch
+% this support in \thispackage\ off.
+% \begin{macrocode}
+ \captionsetup{list=false}
+ \DeclareCaptionOption{list}[1]{}
+ \DeclareCaptionOption{listof}[1]{}
+% \end{macrocode}
+%
+% \begin{macro}{\figure}
+% \changes{v3.1f}{2007/12/17}{This re-definition for \class{beamer} document class added}
+% \begin{macro}{\table}
+% \changes{v3.1f}{2007/12/17}{This re-definition for \class{beamer} document class added}
+% We redefine |figure| \& |table| so our type-specific options will be used,
+% a \package{hyperref} anchor will be set etc.
+% \begin{macrocode}
+ \expandafter\let\expandafter\caption@ORI@figure
+ \csname\string\figure\endcsname
+ \@namedef{\string\figure}[#1]{%
+ \caption@ORI@figure[#1]%
+ \caption@settype{figure}}
+% \end{macrocode}
+% \begin{macrocode}
+ \expandafter\let\expandafter\caption@ORI@table
+ \csname\string\table\endcsname
+ \@namedef{\string\table}[#1]{%
+ \caption@ORI@table[#1]%
+ \caption@settype{table}}
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+%
+% \begin{macrocode}
+}{}
+% \end{macrocode}
+%
+% \subsubsection{The \KOMAScript{} classes}
+%
+% \KOMAScript\ contains the code
+% |\AtBeginDocument{\let\scr@caption\caption}|
+% so we need to update |\scr@caption| here, too.
+%
+% \begin{macrocode}
+\@ifundefined{scr@caption}{}{%
+ \caption@AtBeginDocument{\let\scr@caption\caption}}
+% \end{macrocode}
+%
+% \subsubsection{The frenchb Babel option}
+% \changes{v3.1}{2006/05/14}{Adaptation to \package{frenchb} added (package)}
+%
+% Suppress
+% ``Package |frenchb.ldf| Warning: The definition of |\@makecaption| has been
+% changed, frenchb will NOT customize it.''
+% (but only if we emulate this customization)
+% \begin{macrocode}
+\@nameuse{caption@frenchb}\@nameundef{caption@frenchb}
+% \end{macrocode}
+%
+% \subsubsection{The frenchle/pro package}
+% \changes{v3.0h}{2005/10/03}{Adaptation to \package{frenchle/pro} added (package)}
+%
+% \begin{macrocode}
+\caption@AtBeginDocument{\@ifundefined{frenchTeXmods}{}{%
+ \caption@Info{frenchle/pro package is loaded}%
+% \end{macrocode}
+%
+% \begin{macrocode}
+ \let\captionfont@ORI\captionfont
+ \let\captionlabelfont@ORI\captionlabelfont
+ \let\@makecaption@ORI\@makecaption
+% \end{macrocode}
+
+% If |\GOfrench| is defined as |\relax| all the re-definitions regarding
+% captions have already been done, so we can do our patches immediately.
+% Otherwise we must add our stuff to |\GOfrench|.
+% \begin{macrocode}
+ \@ifundefined{GOfrench}%
+ {\let\caption@tempa\@firstofone}%
+ {\def\caption@tempa{\g@addto@macro\GOfrench}}%
+ \caption@tempa{%
+% \end{macrocode}
+%
+% \begin{macrocode}
+ \let\captionfont\captionfont@ORI
+ \let\captionfont@ORI\@undefined
+ \let\captionlabelfont\captionlabelfont@ORI
+ \let\captionlabelfont@ORI\@undefined
+ \let\@makecaption\@makecaption@ORI
+ \let\@makecaption@ORI\@undefined
+% \end{macrocode}
+%
+% \begin{macro}{\@cnORI}
+% We update the definition of |\@cnORI| so it actually reflects
+% our definition of |\caption|.
+% \begin{macrocode}
+ \let\@cnORI\caption
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\@tablescaption}
+% The \package{frenchle/pro} package sets |\caption| to |\@tablescaption| at
+% |\begin{table}| for special treatment of footnotes.
+% Therefore we have to patch |\@tablescaption| so |\caption*| will work
+% inside the |table| environment.
+% \begin{macrocode}
+ \let\caption@tcORI\@tablescaption
+ \def\@tablescaption{\caption@star\relax\caption@tcORI}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\f@ffrench}
+% \begin{macro}{\f@tfrench}
+% |\f@ffrench| and |\f@tfrench| reflect |\fnum@figure| and |\fnum@table|
+% when used in French mode. These contain additional code which typesets
+% the caption separator |\captionseparator| instead of the usual colon.
+% Because this breaks with our |\@makecaption| code we have to remove
+% this additional code here.
+% \begin{macrocode}
+ \let\@eatDP\@undefined
+ \let\caption@tempa\@empty
+ \ifx\f@ffrench\fnum@figure
+ \l@addto@macro\caption@tempa{\let\fnum@figure\f@ffrench}%
+ \fi
+ \ifx\f@tfrench\fnum@table
+ \l@addto@macro\caption@tempa{\let\fnum@table\f@tfrench}%
+ \fi
+ \def\f@ffrench{\ifx\listoffigures\relax\else\figurename~\thefigure\fi}%
+ \def\f@tfrench{\ifx\listoftables\relax\else\tablename~\thetable\fi}%
+ \caption@tempa
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+%
+% \begin{macrocode}
+ }%
+}}
+% \end{macrocode}
+%
+% \subsection{Package support}
+% \changes{v3.1}{2007/04/11}{Package options `float', `longtable' etc.
+% are not supported anymore, removed}
+%
+% \begin{macro}{\caption@IfPackageLoaded}
+% \changes{v3.0f}{2005/05/29}{3rd argument \meta{code} added,
+% so no extra check is needed}
+% \changes{v3.1}{2007/07/04}{Re-written \& renamed from \cs{caption@ifpackage}
+% to \cs{caption@IfPackageLoaded}}
+% |\caption@IfPackageLoaded|\marg{package}\oarg{version}\marg{true}\marg{false}\par
+% Some kind of combination of |\@ifpackageloaded| and |\@ifpackagelater|.
+% If the \meta{package} is not loaded yet, the check will be (re-)done
+% |\AtBeginDocument|, so the \meta{package} could be loaded later on, too.
+% \begin{macrocode}
+\newcommand\caption@IfPackageLoaded[1]{%
+ \@testopt{\caption@@IfPackageLoaded{#1}}{}}
+\@onlypreamble\caption@IfPackageLoaded
+% \end{macrocode}
+% \begin{macrocode}
+\long\def\caption@@IfPackageLoaded#1[#2]#3#4{%
+ \@ifpackageloaded{#1}\@firstofone{%
+ \caption@Debug{#1 package is not loaded (yet)\@gobble}%
+ \caption@AtBeginDocument}{%
+ \caption@@ifpackageloaded{#1}[#2]{#3}{#4}}}
+\@onlypreamble\caption@@IfPackageLoaded
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand\caption@ifpackageloaded[1]{%
+ \@testopt{\caption@@ifpackageloaded{#1}}{}}
+\@onlypreamble\caption@ifpackageloaded
+% \end{macrocode}
+% \begin{macrocode}
+\long\def\caption@@ifpackageloaded#1[#2]{%
+ \@ifpackageloaded{#1}{%
+ \caption@Info{#1 package is loaded}%
+ \@ifpackagelater{#1}{#2}\@firstoftwo{%
+ \caption@Error{%
+ For a successful cooperation we need at least version\MessageBreak
+ `#2' of package #1,\MessageBreak
+ but only version\MessageBreak
+ `\csname ver@#1.\@pkgextension\endcsname'\MessageBreak
+ is available}%
+ \@secondoftwo}%
+ }{\@secondoftwo}}
+\@onlypreamble\caption@@ifpackageloaded
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@clearmargin}
+% \changes{v3.1}{2007/05/05}{This macro and its usage added}
+% This macro will be used by some package support stuff where the usual
+% margin setting is not welcome, e.g. in the \package{sidecap} package.
+% \begin{macrocode}
+\newcommand*\caption@clearmargin{%
+ \setcaptionmargin\z@
+ \let\caption@minmargin\@undefined}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+\caption@setbool{needfreeze}{0}
+\caption@AtBeginDocument*{%
+ \caption@ifneedfreeze{%
+% \end{macrocode}
+%
+% \begin{macro}{\caption@freeze}
+% \changes{v3.1}{2007/07/22}{This macro added}
+% \changes{v3.1c}{2007/10/06}{\cs{caption} \& \cs{@caption} revised for enhanced compatibility}
+% \changes{v3.1c}{2007/10/06}{Bugfix: Made \cs{@caption} long}
+% \changes{v3.1f}{2007/11/16}{Uses `space hack' instead of \cs{ignorespaces} now}
+% \changes{v3.1g}{2008/01/29}{Starred variants of \cs{ContinuedFloat} and \cs{captionsetup} added}
+% |\caption@freeze*|\par
+% Used by the \package{fltpage} \& \package{sidecap} package support.
+% \begin{macrocode}
+ \newcommand*\caption@freeze{%
+ \caption@teststar\caption@@freeze\@gobble\@firstofone}%
+% \end{macrocode}
+% \begin{macrocode}
+ \newcommand*\caption@@freeze[1]{%
+ \global\let\caption@SCcontinued\relax
+ \global\let\caption@SCsetup\@undefined
+ \global\let\caption@SClentry\@undefined
+ \global\let\caption@SCtext\@undefined
+ \global\let\caption@SClabel\@undefined
+% \end{macrocode}
+% \begin{macrocode}
+ \let\caption@ORI@ContinuedFloat\ContinuedFloat
+ \def\ContinuedFloat{%
+ \caption@withoptargs\caption@SC@ContinuedFloat}%
+ \def\caption@SC@ContinuedFloat##1{%
+ \let\caption@ORI@setcounter\setcounter
+ \let\caption@ORI@addtocounter\addtocounter
+ \def\setcounter####1####2{\csname c@####1\endcsname####2\relax}%
+ \def\addtocounter####1####2{\advance\csname c@####1\endcsname ####2\relax}%
+ \caption@ORI@ContinuedFloat##1%
+ \global\let\caption@SCcontinued\caption@ORI@ContinuedFloat
+ \let\setcounter\caption@ORI@setcounter
+ \let\addtocounter\caption@ORI@addtocounter}%
+ \let\caption@ORI@setup\captionsetup
+ \def\captionsetup{%
+ \caption@withoptargs\caption@SC@setup}%
+ \def\caption@SC@setup##1##2{%
+ \caption@g@addto@list\caption@SCsetup{##2}%
+ \caption@ORI@setup##1{##2}}%
+ \let\caption@ORI\caption
+ \def\caption{%
+ \def\caption{\caption@Error{%
+ Only one \noexpand\caption can be placed in this environment}}%
+ \let\captionsetup\caption@setup
+ \let\caption@@refstepcounter\caption@l@stepcounter
+ \caption@ORI}%
+ \long\def\@caption##1[##2]##3{%
+ \@bsphack
+ \gdef\caption@SClentry{##2}%
+ \gdef\caption@SCtext{##3}%
+ \@esphack}%
+ #1{% is \@gobble in star form, and \@firstofone otherwise
+ \def\label##1{\@bsphack\gdef\caption@SClabel{##1}\@esphack}}%
+% \end{macrocode}
+% \begin{macrocode}
+ }%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@defrost}
+% \changes{v3.1}{2007/07/22}{This macro added}
+% \changes{v3.1g}{2008/01/30}{\cs{caption@defrost@setup} added}
+% |\caption@defrost|
+% \begin{macrocode}
+ \newcommand*\caption@defrost{%
+ \ifx\caption@ORI@ContinuedFloat\@undefined
+ \caption@defrost@setup
+ \ifx\caption@SCtext\@undefined \else
+ \expandafter\expandafter\expandafter\caption
+ \expandafter\expandafter\expandafter[%
+ \expandafter\expandafter\expandafter{%
+ \expandafter\caption@SClentry\expandafter}\expandafter]%
+ \expandafter{\caption@SCtext}%
+ \fi
+ \ifx\caption@SClabel\@undefined \else
+ \expandafter\label\expandafter{\caption@SClabel}%
+ \fi
+ \else
+ \caption@Error{Internal Error:\MessageBreak
+ \noexpand\caption@defrost in same group as \string\caption@freeze}%
+ \fi}%
+% \end{macrocode}
+% \begin{macrocode}
+ \newcommand*\caption@defrost@setup{%
+ \caption@SCcontinued
+ \ifx\caption@SCsetup\@undefined \else
+ \expandafter\captionsetup\expandafter{\caption@SCsetup}%
+ \fi}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+ }{}%
+ \caption@undefbool{needfreeze}}
+% \end{macrocode}
+%
+% \subsubsection{The float package}
+% \changes{v3.0f}{2005/05/31}{\package{float} package support rewritten and improved}
+% \iffalse
+% (This is a more straight-ahead implementation, but it only works with v1.3
+% now, so v1.2 is no longer supported. The old code including documentation
+% can be found in caption-30f-050530.zip)
+% \fi
+%
+% The \package{float} package usually do not use the \LaTeX\ kernel command
+% |\@caption| to typeset the caption but |\float@caption| instead.
+% (|\@caption| will only be used if the float is re-styled with
+% |\restylefloat*|.)
+%
+% The main two things |\float@caption| is doing different are:
+% \begin{itemize}
+% \item The caption will be typeset inside a |\savebox| called |\@floatcapt|
+% so it can be placed above or below the float contents afterwards.
+% \item |\@makecaption| will not be used to finally typeset the caption.
+% Instead |\@fs@capt| will be used which definition is part of the float
+% style.
+% (Note that |\@fs@capt| will not typeset any vertical space above or below
+% the caption; instead this space will be typeset by the float style code
+% itself.)
+% \end{itemize}
+%
+% \begin{macrocode}
+\caption@IfPackageLoaded{float}[2001/11/08 v1.3d]{%
+ \@ifpackageloaded{floatrow}{%
+ \caption@ifpackageloaded{floatrow}[2007/08/24 v0.2a]{}{}%
+ }{%
+% \end{macrocode}
+%
+% \iffalse
+% \begin{macro}{\caption@of}
+% If the float is defined by the float package (which means |\fst@|\meta{type}
+% is defined) we `execute' this float style, so |\@fs@iftopcapt| is set to its
+% proper value.
+% Furthermore we undo the re-definition of |\caption@setfloatcapt| which was
+% done by |\float@dostyle|.
+% \begin{macrocode}
+% \renewcommand*\caption@of[2]{%
+% \float@ifstyle{#2}{%
+% \float@dostyle{#2}%
+% \let\caption@setfloatcapt\@firstofone}{}%
+% \caption@settype*{#2}#1}%
+% \end{macrocode}
+% \end{macro}
+% \fi
+%
+% \begin{macro}{\@float@setevery}
+% \changes{v3.1k}{2009/10/09}{Bugfix 08-12-05: \cs{color@begin/endgroup} added
+% to redefinition of \cs{caption@setfloatcapt}}
+% |\@float@setevery|\marg{float type} is provided by the \package{float}
+% package; it's called every time a floating environment defined with
+% |\newfloat| or |\restylefloat| begins.
+% We use this hook to do some adaptations and to setup the proper caption
+% style (if defined) and additional settings declared with
+% |\captionsetup|\oarg{float style}.
+% \begin{macrocode}
+ \let\caption@ORI@float@setevery\@float@setevery
+ \def\@float@setevery#1{%
+ \float@ifcaption{#1}{%
+% \end{macrocode}
+%
+% First of all we set the caption position to it's proper value by
+% converting |\@fs@iftopcapt| (which is part of a float style and
+% controls where the caption will be typeset, above or below the float
+% contents) to our |position=| setting.
+% Since the spacing above and below the caption will be done by the float
+% style and \emph{not} by us this sounds quite useless. But in fact it isn't,
+% since some packages based on \thispackage\ (like the \package{subfig}
+% package) could have an interest for this information and therefore use the
+% |\caption@iftop| macro we provide in our kernel. Furthermore we need this
+% information for ourself in |\captionof| which uses |\@makecaption| to
+% finally typeset the caption with skips.
+% \begin{macrocode}
+ \caption@setposition{\@fs@iftopcapt t\else b\fi}%
+% \end{macrocode}
+%
+% Afterward we redefine |\caption@setfloatcapt| (which will be used inside
+% |\@caption|) so the caption will be set inside the box |\@floatcapt|,
+% without extra vertical space.
+% \begin{macrocode}
+ \renewcommand\caption@setfloatcapt[1]{%
+ \let\@makecaption\caption@@make
+ \global\setbox\@floatcapt\vbox{%
+ \color@begingroup ##1\color@endgroup}}%
+% \end{macrocode}
+%
+% To allow different caption styles for different float styles we also
+% determine the current float style (e.g. `ruled') and select
+% a caption style (and additional settings) with the same name, if defined.
+% \begin{macrocode}
+ \float@getstyle\float@style{#1}%
+ \caption@setstyle*\float@style
+ \caption@setoptions\float@style
+% \end{macrocode}
+%
+% \begin{macrocode}
+ }{}%
+ \caption@freezeHref % will be defrosted in \float@makebox
+ \caption@ORI@float@setevery{#1}}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@typehook}
+% \changes{v3.1}{2007/07/08}{float package hook added}
+% \LaTeX\ and almost every other packages use
+% |\|\meta{type}|name|
+% to provide a macro for the type resp.~environment name -- for example
+% the command |\figurename| will usually contain the name of the floating
+% environment |figure|:
+% \begin{quote}
+% |\newcommand\figurename{Figure}|
+% \end{quote}
+% But the \package{float} package doesn't follow this common naming
+% convention:
+% For floats defined with |\newfloat| it uses |\fname@|\meta{type} instead,
+% which breaks with our code (and with |\autoref| and some other things as
+% well).
+% So we have to map the \package{float} package name to the common one here.\par
+% \Note{If the float was not defined with \cs{newfloat} but with
+% \cs{restylefloat} instead, \cs{fname@}\meta{type} is not defined.}
+% \begin{macrocode}
+ \g@addto@macro\caption@typehook{%
+ \expandafter\ifx\csname #1name\endcsname\relax
+ \expandafter\let\csname #1name\expandafter\endcsname
+ \csname fname@#1\endcsname
+ \fi}%
+% \end{macrocode}
+% \end{macro}
+%
+% \changes{v3.0f}{2005/06/26}{Skips of \env{plaintop} and \env{boxed} floats corrected}
+% \begin{macro}{\fs@plaintop}
+% \begin{macro}{\fs@boxed}
+% Since the float styles |plaintop| and |boxed| don't use |\abovecaptionskip|
+% which could be set with |skip=| (|plaintop| uses |\belowcaptionskip| instead of
+% |\abovecaptionskip|, and |boxed| uses a fixed space of |2pt|)
+% we patch the according float style macros here to change this.
+% \begin{macrocode}
+ \g@addto@macro\fs@plaintop{\def\@fs@mid{\vspace\abovecaptionskip\relax}}%
+ \g@addto@macro\fs@boxed{\def\@fs@mid{\kern\abovecaptionskip\relax}}%
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+%
+% \begin{macro}{\float@ifstyle}
+% \changes{v3.1}{2007/06/10}{This macro added}
+% |\float@ifstyle|\marg{type}\marg{if-clause}\marg{else-clause}\par
+% Checks if the given \meta{type} (e.g.~|figure|) is associated with a
+% float style (e.g.~|boxed|).
+% \begin{macrocode}
+ \providecommand*\float@ifstyle[1]{%
+ \expandafter\ifx\csname fst@#1\endcsname\relax
+ \expandafter\@secondoftwo
+ \else
+ \expandafter\@firstoftwo
+ \fi}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\float@getstyle}
+% \changes{v3.1}{2007/06/10}{This macro added}
+% |\float@getstyle|\marg{cmd}\marg{type}\par
+% Determining the float style is not so easy because the only hint
+% provided by the \package{float} package is the macro
+% |\fst@|\meta{float type} which points to the macro which represents the
+% float style. So for example after
+% \begin{quote}
+% |\floatstyle{ruled}|\\
+% |\newfloat{Program}{tbp}{lop}|
+% \end{quote}
+% |\fst@Program| will be defined as
+% \begin{quote}
+% |\def\fst@Program{\fs@ruled}|\quad.
+% \end{quote}\par
+% So here is what we do: We make the first level expansion of
+% |\fst@|\meta{float type} a string so we can gobble the first four tokens
+% (= |\fs@|), so only the the name of the float style is left.\par
+% \emph{TODO:} We need to convert the catcodes here.
+% \begin{macrocode}
+ \providecommand*\float@getstyle[2]{%
+ \edef#1{%
+ \noexpand\expandafter\noexpand\@gobblefour\noexpand\string
+ \expandafter\expandafter\expandafter\noexpand
+ \csname fst@#2\endcsname}%
+ \edef#1{#1}%
+ \caption@Debug{floatstyle{#2} = `#1'}}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\float@setstyle}
+% \changes{v3.1}{2007/06/10}{This macro added}
+% |\float@setstyle|\marg{type}\marg{style}\par
+% Sets or changes the float style associated with \meta{type}.
+% \begin{macrocode}
+ \providecommand*\float@setstyle[2]{%
+ \expandafter\edef\csname fst@#1\endcsname{%
+ \expandafter\noexpand\csname fs@#2\endcsname}}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\float@dostyle}
+% \changes{v3.1}{2007/07/23}{This macro added}
+% |\float@dostyle|\marg{type}
+% \begin{macrocode}
+ \providecommand*\float@dostyle[1]{%
+ \@nameuse{fst@#1}\@float@setevery{#1}}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\float@ifcaption}
+% \changes{v3.1}{2007/06/23}{This macro added}
+% |\float@ifcaption|\marg{type}\marg{if-clause}\marg{else-clause}\par
+% Here we determine if the user has used |\newfloat| resp.~|\restylefloat|,
+% or |\restylefloat*|.
+% This is quite easy: If |\@float@c@|\meta{captype} is the same as
+% |\float@caption|, the user has used |\newfloat| or |\restylefloat|,
+% otherwise we assume he has used |\restylefloat*|.
+% (This test will fail if some package re-defines |\float@caption|,
+% so we have to assume that there is no one.)
+% \begin{macrocode}
+ \providecommand*\float@ifcaption[1]{%
+ \expandafter\ifx\csname @float@c@#1\endcsname\float@caption
+ \expandafter\@firstoftwo
+ \else
+ \expandafter\@secondoftwo
+ \fi}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+}}{%
+ \providecommand*\float@ifstyle[1]{\@secondoftwo}%
+ \providecommand*\float@ifcaption[1]{\@secondoftwo}%
+% \clearcaptionsetup{boxed}% used by the floatrow package?
+}
+% \end{macrocode}
+%
+% The skip between `boxed' floats and their caption defaults to |2pt|.
+%
+% \begin{macrocode}
+\captionsetup[boxed]{skip=2pt} % do not issue a warning when not used
+% \end{macrocode}
+%
+% \changes{v3.0f}{2005/05/26}{\opt{strut=0} added to caption style \opt{ruled}}
+% \changes{v3.0f}{2005/05/27}{Option \opt{ruled} fixed}
+% To emulate the `ruled' definition of |\@fs@capt| we provide a caption style
+% `ruled' with appropriate options. But if the package option |ruled| was
+% specified, we setup some caption parameters to emulate the behavior
+% of \thispackage\ \version{1.x} option |ruled| instead, i.e.,
+% the current caption settings will be used, but without margin and without
+% `single-line-check'.
+% \begin{macrocode}
+\caption@ifbool{ruled}{%
+ \captionsetup[ruled]{margin=0pt,minmargin=0,slc=0}%
+}{%
+ \DeclareCaptionStyle{ruled}{labelfont=bf,labelsep=space,strut=0}%
+}
+\caption@undefbool{ruled}
+% \end{macrocode}
+%
+% \subsubsection{The floatflt package}
+% \changes{v3.1}{2007/06/10}{Support of the \package{floatflt} package added}
+%
+% \begin{macrocode}
+\caption@IfPackageLoaded{floatflt}[1996/02/27 v1.3]{%
+% \end{macrocode}
+%
+% \begin{macro}{\floatingfigure}
+% We patch |\floatingfigure| so |\caption@floatflt| will be used.
+% \begin{macrocode}
+ \let\caption@ORI@floatingfigure\floatingfigure
+ \def\floatingfigure{%
+ \caption@floatflt{figure}%
+ \caption@ORI@floatingfigure}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\floatingtable}
+% Same with |\floatingtable|\ldots
+% \begin{macrocode}
+ \let\caption@ORI@floatingtable\floatingtable
+ \def\floatingtable{%
+ \caption@floatflt{table}%
+% \caption@setautoposition b%
+ \caption@ORI@floatingtable}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@floatflt}
+% \changes{v3.1c}{2007/10/06}{Bugfix: \cs{caption@clearmargin} added}
+% Here we do two things:
+% \begin{enumerate}
+% \item We use |\caption@setoptions{floating|\meta{type}|}| so
+% |\captionsetup[floating|\meta{type}|]{|\ldots|}| is supported.
+% \item |\linewidth| must be set correctly.
+% Usually this is done by |\@parboxrestore| inside |\@caption|,
+% but since we use |\@caption@boxrestore| we have to map this to
+% |\@parboxrestore| instead.
+% \end{enumerate}
+% \begin{macrocode}
+ \newcommand*\caption@floatflt[1]{%
+ \caption@settype{#1}%
+ \caption@clearmargin
+ \caption@setoptions{floating#1}%
+ \let\caption@boxrestore\@parboxrestore}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+}{}
+% \end{macrocode}
+%
+% \iffalse
+% \subsubsection{The floatrow package}
+% \changes{v3.0f}{2005/06/01}{Support of the \package{floatrow} package added}
+%
+% \begin{macrocode}
+%\caption@IfPackageLoaded{floatrow}[2007/07/01 v0.1p]{%
+% \end{macrocode}
+%
+% The \package{floatrow} package is already adapted for usage with
+% \thispackage. So the main work has already been done by
+% Mrs.~Lapko, there is only one little thing we have to take care about:
+%
+% \begin{macro}{\caption@of}
+% Captions typeset with |\captionof| should have the correct layout,
+% therefore we have to `activate' this layout here with |\flrow@setlist|.
+% \begin{macrocode}
+% \renewcommand*\caption@of[2]{%
+% \flrow@setlist{{#2}}% TODO: always do this?
+% \caption@settype*{#2}#1}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+%}{}
+% \end{macrocode}
+% \fi
+%
+% \subsubsection{The fltpage package}
+% \changes{v3.1}{2007/07/22}{Support of the \package{fltpage} package added}
+%
+% \begin{macrocode}
+\caption@IfPackageLoaded{fltpage}[1998/10/29 v.0.3]{%
+ \caption@setbool{needfreeze}{1}%
+% \end{macrocode}
+%
+% \begin{macro}{\FP@helpNote}
+% Original code:
+% \begin{verbatim}
+% \newcommand{\FP@helpNote}[2]{%
+% \typeout{FP#1 is inserted on page \pageref{#2}!}}%
+% \end{verbatim}%^^A
+% \begin{macrocode}
+ \renewcommand\FP@helpNote[2]{%
+ \begingroup % save \caption@thepage
+ \caption@pageref{#2}%
+ \typeout{FP#1 is inserted on page \caption@thepage!}%
+ \endgroup}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\FP@floatBegin}
+% \changes{v3.1f}{2007/11/16}{Uses `space hack' instead of \cs{ignorespaces} now}
+% \changes{v3.1k}{2009/10/09}{Bugfix 09-09-11: Missing \cs{ignorespaces} added}
+% Original code:
+% \begin{verbatim}
+% \newcommand{\FP@floatBegin}[1]{%
+% \gdef\@captype{#1}%
+% \global\let\FP@savedCaptionCommand\caption%
+% \global\let\FP@savedLabelCommand\label%
+% \ifthenelse{\equal{\@captype}{figure}}
+% {\global\let\old@Fnum\fnum@figure}%
+% {\global\let\old@Fnum\fnum@table}%
+% \let\FP@LabelText\@empty%
+% \let\FP@CaptionText\@empty%
+% \let\FP@optionalCaptionText\@empty%
+% \renewcommand\label[1]{\gdef\FP@LabelText{##1}}%
+% \renewcommand\caption[2][]{%
+% \gdef\FP@optionalCaptionText{##1}\gdef\FP@CaptionText{##2}}%
+% \begin{lrbox}{\FP@floatCorpusBOX}%
+% }%
+% \end{verbatim}%^^A
+% \begin{macrocode}
+ \renewcommand*\FP@floatBegin[1]{%
+ \def\@captype{#1}%
+ \let\FP@LabelText\@empty
+ \begin{lrbox}{\FP@floatCorpusBOX}%
+ \caption@ifFPrefcap
+ {\caption@freeze\relax}%
+ {\def\label##1{\@bsphack\gdef\FP@LabelText{##1}\@esphack}%
+ \caption@freeze*}%
+ \ignorespaces}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\FP@floatEnd}
+% \changes{v3.1g}{2008/01/30}{Some minor bugfixes}
+% Original code:
+% \begin{verbatim}
+% \newcommand{\FP@floatEnd}{%
+% \end{lrbox}%
+% \global\setbox\FP@floatCorpusBOX=\box\FP@floatCorpusBOX
+% \stepcounter{FP@\@captype C}%
+% \FP@savedLabelCommand{\FP@positionLabel}%
+% \FP@helpNote{\@captype}{\FP@positionLabel}%
+% \FP@float
+% {\FP@positionLabel}% location label test
+% {\begin{\@captype}[p!]
+% \usebox{\FP@floatCorpusBOX}%
+% \refstepcounter{\@captype}%
+% \ifthenelse{\equal{\FP@LabelText}{\@empty}}
+% {}{\FP@savedLabelCommand{\expandafter\protect\FP@LabelText}}%
+% \end{\@captype}}
+% {\addtocounter{\@captype}{-1}}
+% {\begin{\@captype}[b!]%
+% \ifthenelse{\equal{\FP@guide}{\@empty}}%
+% {}{\ifthenelse{\equal{\@captype}{figure}}%
+% {\renewcommand{\fnum@figure}{\old@Fnum\ {\FP@guide}}}%
+% {\renewcommand{\fnum@table}{\old@Fnum\ {\FP@guide}}}}%
+% \setlength{\abovecaptionskip}{2pt plus2pt minus 1pt} % length above caption
+% \setlength{\belowcaptionskip}{2pt plus2pt minus 1pt} % length above caption
+% \FP@separatorCaption%
+% \ifthenelse{\equal{\FP@optionalCaptionText}{\@empty}}%
+% {\FP@savedCaptionCommand{\expandafter\protect\FP@CaptionText}}%
+% {\FP@savedCaptionCommand[\expandafter\protect\FP@optionalCaptionText]%
+% {\expandafter\protect\FP@CaptionText}}%
+% \end{\@captype}}%
+% }%
+% \end{verbatim}%^^A
+% \begin{macrocode}
+ \renewcommand*\FP@floatEnd{%
+ \end{lrbox}%
+% \end{macrocode}
+% \begin{macrocode}
+ \stepcounter{FP@\@captype C}%
+ \caption@label\FP@positionLabel
+ \FP@helpNote\@captype\FP@positionLabel
+% \end{macrocode}
+% \begin{macrocode}
+ \edef\FP@RestoreCounter{%
+ \noexpand\setcounter{\@captype}{\the\value\@captype}%
+ \noexpand\setcounter{ContinuedFloat}{\the\value{ContinuedFloat}}}%
+% \end{macrocode}
+% \begin{macrocode}
+ \FP@float
+ {\FP@positionLabel}% location label test
+ {\begin\@captype[p!]%
+ \usebox\FP@floatCorpusBOX
+ \caption@defrost@setup
+ \caption@ifFPlistcap
+ {\caption@refstepcounter\@captype
+ \expandafter\caption@makecurrent\expandafter\@captype
+ \expandafter{\caption@SClentry}}%
+ {\expandafter\captionlistentry\expandafter{\caption@SClentry}}%
+ \caption@makeanchor\relax
+ \ifx\FP@LabelText\@empty \else
+ \expandafter\label\expandafter{\FP@LabelText}%
+ \fi
+ \end\@captype}%
+ {\FP@RestoreCounter
+ \@ifundefined{theH\@captype}{}{%
+ \expandafter\l@addto@macro\csname theH\@captype\endcsname{.FP}}}%
+ {\begin\@captype[b!]%
+ \let\FP@savedSetfnumCommand\caption@setfnum
+ \def\caption@setfnum##1{%
+ \FP@savedSetfnumCommand{##1}%
+ \ifx\FP@guide\@empty \else
+ \expandafter\l@addto@macro\csname fnum@##1\endcsname{\ {\FP@guide}}%
+ \fi}%
+ \setlength\abovecaptionskip{2pt plus 2pt minus 1pt}% length above caption
+ \setlength\belowcaptionskip{2pt plus 2pt minus 1pt}% length below caption
+ \caption@setoptions{FP\@captype}%
+ \FP@separatorCaption
+ \caption@ifFPlistcap{}{\let\caption@addcontentsline\@gobbletwo}%
+ \caption@defrost
+ \end\@captype}%
+ }%
+% \end{macrocode}
+% \end{macro}
+%
+% \changes{v3.1a}{2007/09/07}{\cs{DeclareFloatingEnvironment} defines FP-variant, too}
+% \changes{v3.1k}{2009/09/28}{Bugfix regarding newly defined \package{fltpage} environments}
+% \begin{macrocode}
+ \caption@For{typelist}{%
+ \newcounter{FP@#1C}%
+ \newenvironment{FP#1}{\FP@floatBegin{#1}}{\FP@floatEnd}}%
+% \end{macrocode}
+%
+% \begin{macrocode}
+}{%
+ \let\caption@ifFPlistcap\@undefined
+ \let\caption@ifFPrefcap\@undefined
+}
+% \end{macrocode}
+%
+% \subsubsection{The hyperref package}
+% \changes{v3.0f}{2005/06/11}{Support of the \package{hyperref} package added}
+% \changes{v3.1}{2007/03/09}{Usage of \cs{hyper@makecurrent} instead of
+% \cs{theHfigure} as indicator for \package{hyperref} package}
+%
+% \begin{macrocode}
+\caption@IfPackageLoaded{hyperref}[2003/11/30 v6.74m]{%
+ \@ifundefined{hyper@makecurrent}{% hyperref has stopped early
+ \caption@WarningNoLine{%
+ Hyperref support is turned off\MessageBreak
+ because hyperref has stopped early}%
+ }{%
+ \g@addto@macro\caption@prepareslc{\measuring@true}%
+% \end{macrocode}
+%
+% \begin{macro}{\caption@@refstepcounter}
+% We redefine |\caption@@refstepcounter| so |\H@refstepcounter| will be used
+% instead of |\refstepcounter| inside |\caption| \& |\captionlistentry|.
+% \begin{macrocode}
+ \renewcommand*\caption@@refstepcounter{\H@refstepcounter}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@makecurrent}
+% \changes{v3.1l}{2010/01/09}{Adapted to current version of nameref package}
+% We redefine |\caption@makecurrent| so a \package{hyperref} label
+% will be defined inside |\@caption|.
+% \Note{Will be redefined by \cs{caption@start}.}
+% \begin{macrocode}
+ \renewcommand*\caption@makecurrent[2]{%
+ \caption@makecurrentHref{#1}%
+ \caption@Debug{hyperref current=\@currentHref}%
+ \caption@gettitle{#2}}%
+% \end{macrocode}
+% \begin{macrocode}
+ \newcommand*\caption@makecurrentHref{\hyper@makecurrent}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@makeanchor}
+% \changes{v3.1l}{2010/01/09}{Adapted to the current hyperref package}
+% We redefine |\caption@makeanchor| so a \package{hyperref} anchor
+% will be set inside |\@caption|.
+% \Note{Will be redefined by \cs{caption@start}.}
+% \begin{macrocode}
+ \renewcommand\caption@makeanchor[1]{%
+ \caption@Debug{hyperref anchor: \@currentHref}%
+ % If we cannot have nesting, the anchor is empty.
+ \ifHy@nesting
+ \expandafter\hyper@@anchor\expandafter{\@currentHref}{#1}%
+ \else
+ \Hy@raisedlink{%
+ \expandafter\hyper@@anchor\expandafter{\@currentHref}{\relax}%
+ }#1%
+ \fi}%
+% \end{macrocode}
+% \begin{macrocode}
+ \g@addto@macro\caption@prepareslc{\let\caption@makeanchor\@firstofone}%
+% \end{macrocode}
+% \end{macro}
+%
+% \paragraph{The hypcap option}
+%
+% \begin{macro}{\if@capstart}
+% Like the \package{hypcap} package we define the switch |\if@capstart|, too.
+% \begin{macrocode}
+ \newif\if@capstart
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@start}
+% \changes{v3.0l}{2007/02/20}{%
+% \cs{caption@currentHref} renamed to \cs{hc@currentHref}}
+% \changes{v3.1}{2007/06/21}{%
+% This macro renamed from \cs{capstart} to \cs{caption@start} and revised}
+% While the \package{hypcap} package defines a macro called |\capstart|
+% our variant is called |\caption@start| and is controlled by the option
+% |hypcap=||false|/|true|.
+% \begin{macrocode}
+ \def\caption@start{\caption@ifhypcap\caption@start@\relax}%
+ \def\caption@start@{%
+% \end{macrocode}
+% Generate the \package{hyperref} label and set the \package{hyperref} anchor,
+% usually (if |hypcap=false|) both is done inside |\@caption|.
+% \begin{macrocode}
+ \caption@makestart\@captype
+ \caption@startanchor\@currentHref
+% \end{macrocode}
+% Prevent |\@caption| from generating a new \package{hyperref} label,
+% use the label we save in |\hc@currentHref| instead.
+% (We also support the |@capstart| flag from the \package{hypcap} package.)
+% \begin{macrocode}
+ \global\@capstarttrue
+ \let\hc@currentHref\@currentHref
+ \def\caption@makecurrentHref##1{%
+ \global\@capstartfalse
+ \global\let\@currentHref\hc@currentHref}%
+% \end{macrocode}
+% Prevent |\@caption| from generating a \package{hyperref} anchor since this
+% has already been done.
+% \begin{macrocode}
+ \let\caption@makeanchor\@firstofone
+% \end{macrocode}
+% \begin{macrocode}
+ }%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@makestart}
+% \changes{v3.1c}{2007/09/30}{\cs{@currentHref} will be extended by \texttt{caption}
+% instead of \texttt{xxx} now}
+% |\caption@makestart|\marg{type}
+% defines a \package{hyperref} anchor inside |\caption@start|.\par
+% Since we offer |\ContinuedFloat| the float counter can change between
+% `now' and |\caption|, i.e., we simply don't know the figure or table counter
+% yet and therefore we are not able to generate the `right' \package{hyperref}
+% label.
+% Two different solutions of this problem came into my mind:
+% \begin{enumerate}
+% \item I could use the aux file for this purpose.\par
+% -or-
+% \item I set |hypertexnames=false| locally.
+% Furthermore I use |#1.caption.|\meta{counter} (instead of |#1.|\meta{counter})
+% as naming scheme for |\@currentHref| to avoid conflicts with other hyper
+% links which are generated with |hypertexnames=true|.
+% \end{enumerate}
+% The first idea has the advantage that the `right' anchor name will be
+% generated, but one needs an additional \LaTeX\ run if figures or tables
+% will be inserted or removed.\par
+% The second idea has the advantage that it's very easy to implement, but
+% has some side-effects, e.g. the anchor names don't follow the figure or
+% table label names anymore.\par
+% Since I'm lazy I implemented the second idea, maybe I will revise this
+% later on.
+% \begin{macrocode}
+ \newcommand*\caption@makestart[1]{%
+ \begingroup
+ \Hy@hypertexnamesfalse
+% \gdef\@currentHlabel{}%
+ \hyper@makecurrent{#1.caption}%
+ \endgroup
+ \caption@Debug{hypcap start=\@currentHref}}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@startanchor}
+% \changes{v3.1b}{2007/09/17}{Bugfix 06-09-17: We use \cs{caption@anchor} instead of \cs{hyper@@anchor}}
+% \changes{v3.1g}{2008/03/16}{Warning about TeX mode replaced with debug info}
+% |\caption@startanchor|\marg{Href}
+% sets a \package{hyperref} anchor inside |\caption@start|.\par
+% This code was taken from the \package{hypcap} package\cite{hypcap} and adapted.
+% \Note{Since \cs{hyper@@anchor}\marg{Href}\csmarg{\string\relax} can cause
+% a change from vertical mode to horizontal mode (design flaw in
+% \package{hyperref} package!?), and since the workaround
+% \cs{let}\cs{leavevmode}\cs{relax} which can be found in the
+% \package{hypcap} package is not always sufficient
+% (for example with ``Direct pdfmark support'' and \texttt{breaklinks=true}),
+% we use \cs{caption@anchor} instead of \cs{hyper@@anchor} here.}
+% \begin{macrocode}
+ \newcommand*\caption@startanchor[1]{%
+ \ifvmode\begingroup
+ \caption@Debug{hypcap anchor: #1 (vertical mode)}%
+ \@tempdima\prevdepth
+ \nointerlineskip
+ \vspace*{-\caption@hypcapspace}%
+ \caption@anchor{#1}%
+ \vspace*{\caption@hypcapspace}%
+ \prevdepth\@tempdima
+ \endgroup\else
+ \caption@Debug{hypcap anchor: #1 (horizontal mode)}%
+ \caption@anchor{#1}%
+ \fi}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@anchor}
+% \changes{v3.1c}{2007/10/17}{Workaround 07-10-17: We use \cs{caption@raisedlink} instead of \cs{Hy@raisedlink} now}
+% |\caption@anchor|\marg{Href} sets a \package{hyperref} anchor.
+% \begin{macrocode}
+ \newcommand*\caption@anchor[1]{%
+ \ifmeasuring@ \else
+ \caption@raisedlink{\hyper@anchorstart{#1}\hyper@anchorend}%
+ \fi}%
+% \end{macrocode}
+% \Note{Since \cs{Hy@raisedlink} change \cs{@tempdima} we surrounded it by \cs{ifvmode},
+% suppressing ``\texttt{LaTeX Warning: Float too large for page by 1.0pt}'' in \texttt{sideways} floats.
+% (This is not necessary since \package{hyperref} \version{6.77}.)}
+% \begin{macrocode}
+ \ifx\HyperRaiseLinkLength\@tempdima
+ \def\caption@raisedlink#1{\ifvmode#1\else\Hy@raisedlink{#1}\fi}%
+ \else
+ \let\caption@raisedlink\Hy@raisedlink
+ \fi
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@@start}
+% Will be used by |\caption@freezeHref|. Apart from that we issue a warning
+% if we expect a saved \package{hyperref} label coming from |\caption@start|,
+% but there isn't any.
+% \begin{macrocode}
+ \def\caption@@start{%
+ \@ifundefined{hc@currentHref}{%
+ \caption@Warning{%
+ The option `hypcap=true' will be ignored for this\MessageBreak
+ particular \string\caption}}{}}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@freezeHref}
+% Suppress |\caption@start| from generating a \package{hyperref} label and
+% setting a \package{hyperref} anchor. Instead if |\@caption| generates a
+% \package{hyperref} label, it will be stored in |\caption@currentHref|.
+% Furthermore we need to redefine |\caption@setfloatcapt| so no
+% \package{hyperref} anchor will be placed in |\@caption|.
+% \iffalse
+% (Since |\caption@setfloatcapt| will be set to |\@firstofone| inside
+% |\subcaption| there is no need to add its restauration to
+% |\caption@subtypehook|.)
+% \fi
+% \begin{macrocode}
+ \def\caption@freezeHref{%
+ \let\caption@ORI@start\caption@start
+ \def\caption@start{\let\caption@start\caption@ORI@start}%
+% \end{macrocode}
+% \begin{macrocode}
+% \let\caption@ORI@@start\caption@@start
+% \l@addto@macro\caption@subtypehook{%
+% \let\caption@@start\caption@ORI@@start}%
+% \end{macrocode}
+% \begin{macrocode}
+ \global\let\caption@currentHref\@undefined
+ \def\caption@@start{\global\let\caption@currentHref\@currentHref}%
+% \end{macrocode}
+% \begin{macrocode}
+ \let\caption@ORI@setfloatcapt\caption@setfloatcapt
+ \renewcommand*\caption@setfloatcapt{%
+ \ifx\caption@currentHref\@undefined \else
+ \let\caption@makeanchor\@firstofone
+ \fi
+ \caption@ORI@setfloatcapt}}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@defrostHref}
+% If there is a freezed |\@currentHref|, we set the \package{hyperref}
+% anchor here.
+% \begin{macrocode}
+ \def\caption@defrostHref{%
+ \ifx\caption@currentHref\@undefined \else
+ \caption@startanchor\caption@currentHref
+ \global\let\caption@currentHref\@undefined
+ \fi}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\float@makebox}
+% Do our own redefinition of |\float@makebox|, if it was redefined by
+% the \package{hyperref} package.
+% \begin{macrocode}
+ \@ifundefined{HyOrg@float@makebox}{}{%
+ \caption@Debug{%
+ Redefining \noexpand\float@makebox (again)\@gobble}%
+ \let\caption@ORI@float@makebox\float@makebox % save for compatibility mode
+ \renewcommand\float@makebox[1]{%
+ \HyOrg@float@makebox{#1\relax \caption@defrostHref}}%
+ }%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+}}{}
+% \end{macrocode}
+%
+% \subsubsection{The hypcap package}
+% \changes{v3.0f}{2005/06/22}{Support of the \package{hypcap} package added}
+% \changes{v3.0l}{2007/02/20}{Adapted to \package{hypcap} \version{1.6}}
+% \changes{v3.1e}{2007/11/04}{\package{hypcap} support adapted to \package{hyperref} \version{6.77}}
+%
+% \begin{macrocode}
+\caption@IfPackageLoaded{hypcap}{% v1.0
+ \ifx\caption@start\relax \else % hyperref hasn't stopped early
+% \end{macrocode}
+%
+% If the \package{hypcap} package was loaded, we give up our own
+% hyperlink placement algorithm and give the control over the placement
+% to the \package{hypcap} package instead.
+%
+% \begin{macro}{\capstart}
+% \changes{v3.1k}{2009/10/09}{Support of \cs{ifcapstart} (\package{hypcap} package \version{1.10}) added}
+% We do this simply by mapping |\capstart| to |\caption@start@|,
+% although our code does not behave exactly like the original one:
+% The original |\capstart| has an effect on the next |\caption|
+% only but our version affects \emph{all} |\caption|s in the same
+% environment, at least unless a new |\capstart| will be placed.
+% \begin{macrocode}
+ \let\caption@ORI@capstart\capstart % save for compatibility mode
+ \@ifundefined{capstarttrue}% check for v1.10 of hypcap package
+ {\def\capstart{\caption@start@}}%
+ {\def\capstart{\ifcapstart\caption@start@\fi}}%
+ \let\caption@start\relax
+ \let\caption@@start\relax
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@hypcapspace}
+% Furthermore we map our |\caption@hypcapspace| to |\hypcapspace|
+% offered by the \package{hypcap} package.
+% \begin{macrocode}
+ \caption@set@bool\caption@ifhypcap 1%
+ \renewcommand*\caption@hypcapspace{\hypcapspace}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+ \fi}{}
+% \end{macrocode}
+%
+% \subsubsection{The listings package}
+% \changes{v3.0b}{2004/05/16}{Support of the \package{listings} package added}
+%
+% \begin{macrocode}
+\caption@IfPackageLoaded{listings}[2004/02/13 v1.2]{%
+% \end{macrocode}
+%
+% \begin{macro}{\lst@MakeCaption}
+% \changes{v3.1g}{2008/01/20}{Bugfix: Skips are handled correctly now}
+% \changes{v3.1k}{2008/03/29}{Bugfix 08-10-16-dctt: \texttt{rule=0} added}
+% To support the \package{listings} package we need to redefine
+% |\lst@MakeCaption| so the original stuff is nested with
+% |\caption@begin| and |\caption@end| etc.
+% \Note{This macro is always called twice (with `t' resp. `b' as
+% parameter), therefore we need an extra group here.}
+% \begin{macrocode}
+ \let\caption@ORI@lst@MakeCaption\lst@MakeCaption
+ \def\lst@MakeCaption#1{% #1 is `t' or `b'
+ \begingroup
+% \end{macrocode}
+% First of all, we set |position=#1| and if it was set to `top',
+% we swap the skips so the default behavior of the \package{listings} package
+% will not be changed. (Note that the \package{listings} package has set its
+% own |\abovecaptionskip| \& |\belowcaptionskip| values prior to calling
+% \cs{lst@MakeCaption}.)
+% \begin{macrocode}
+ \caption@setposition{#1}%
+ \caption@iftop{%
+ \@tempdima\belowcaptionskip
+ \belowcaptionskip\abovecaptionskip
+ \abovecaptionskip\@tempdima}{}%
+% \end{macrocode}
+% Workaround for issue with wrong skips (should be examined further)
+% \begin{macrocode}
+ \caption@setup{rule=0}%
+% \end{macrocode}
+% Afterwards we set the local `lstlisting' options.
+% \begin{macrocode}
+ \caption@setoptions{lstlisting}%
+% \end{macrocode}
+% If the |position=| is now set to |auto|, we take over the |captionpos=|
+% setting from the \package{listings} package.
+% \begin{macrocode}
+ \caption@setautoposition{#1}%
+% \end{macrocode}
+% At the end we do similar stuff as in our \cs{@caption} code.
+% \begin{macrocode}
+ \caption@begin{lstlisting}%
+ \caption@ORI@lst@MakeCaption{#1}%
+ \caption@end
+% \end{macrocode}
+% \begin{macrocode}
+ \endgroup}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\lst@makecaption}
+% \begin{macro}{\lst@maketitle}
+% Wrapper macros for typesetting the |caption=| resp. |title=| value.
+% \begin{macrocode}
+ \def\lst@makecaption{\caption@starfalse\@makecaption}%
+ \def\lst@maketitle{\caption@startrue\@makecaption\@empty}%
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+%
+% \begin{macro}{\ext@lstlisting}
+% \changes{v3.1}{2007/03/03}{This macro added}
+% Since the \package{listings} package do not define |\ext@lstlisting|,
+% but we needed it when |\captionof{lstlisting}| will be done by the end user,
+% we define it here.
+% \begin{macrocode}
+ \providecommand*\ext@lstlisting{lol}%
+% \end{macrocode}
+% \end{macro}
+%
+% \changes{v3.1a}{2007/07/13}{Bugfix 07-09-13: \cs{lst@@caption} will not be re-defined anymore}
+%
+% \begin{macrocode}
+}{}
+% \end{macrocode}
+%
+% \subsubsection{The longtable package}
+%
+% \begin{macro}{\LTcaptype}
+% \changes{v3.1}{2007/07/06}{This macro and its support added}
+% |\LTcaptype| is preset to |table|.
+% \begin{macrocode}
+\providecommand*\LTcaptype{table}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+\caption@IfPackageLoaded{longtable}[1995/05/24 v3.14]{%
+% \end{macrocode}
+% \begin{macrocode}
+ \RequirePackage{ltcaption}[=2007/09/01]%
+ \let\LT@@makecaption\@undefined
+% \end{macrocode}
+%
+% \begin{macro}{\LT@array}
+% \changes{v3.1}{2007/07/22}{This redefinition added}
+% \changes{v3.1a}{2007/09/14}{Bugfix 07-09-14: Redefinition of \cs{@captionabovetrue} \& \cs{@captionabovefalse} added}
+% \changes{v3.1a}{2007/09/16}{Bugfix: This redefinition will always be done \cs{AtBeginDocument}}
+% \changes{v3.1g}{2008/01/20}{Bugfix in \cs{captionlistentry}: Table counter will not be incremented anymore, \cs{nameref} works}
+% We redefine |\LT@array| here to get |\captionsetup|\marg{options}
+% working inside |longtable|s.
+% \Note{Since the \package{hyperref} package patches \cs{LT@array} as well
+% and since this only works with the original definition of \cs{LT@array},
+% we have to do this after the \package{hyperref} package,
+% i.e.~\cs{AtBeginDocument}.}
+% \begin{macrocode}
+ \caption@AtBeginDocument{%
+ \let\caption@ORI@LT@array\LT@array
+ \renewcommand*\LT@array{%
+% \end{macrocode}
+% |\captionsetup| for longtable:
+% \begin{macrocode}
+ \global\let\caption@opt@@longtable\@undefined
+ \def\captionsetup{%
+ \noalign\bgroup
+ \@ifstar\@captionsetup\@captionsetup}% gobble *
+ \def\@captionsetup##1{\LT@captionsetup{##1}\egroup}%
+ \def\LT@captionsetup##1{%
+ \captionsetup@startrue\caption@setup@options[@longtable]{##1}%
+ \global\let\caption@opt@@longtable\caption@opt@@longtable}%
+% \end{macrocode}
+% |\captionabove| \& |\captionbelow| for longtable: (\KOMAScript\ document class)
+% \begin{macrocode}
+ \def\@captionabovetrue{\LT@captionsetup{position=t}}%
+ \def\@captionabovefalse{\LT@captionsetup{position=b}}%
+% \end{macrocode}
+% |\captionlistentry| for longtable:
+% \begin{macrocode}
+ \def\captionlistentry{%
+ \noalign\bgroup
+ \@ifstar{\egroup\LT@captionlistentry}% gobble *
+ {\egroup\LT@captionlistentry}}%
+ \def\LT@captionlistentry##1{%
+ \caption@listentry\@firstoftwo[\LTcaptype]{##1}}%
+% \end{macrocode}
+% |\ContinuedFloat| for longtable:\\
+% {\small(Commented out, since it's not deeply tested and quite useless anyway)}
+% \Note{\package{hyperref} versions $<$ v6.76j uses $2\times$ \cs{hyper@makecurrent}}
+% \begin{macrocode}
+% \caption@ifhypcap{%
+% \let\caption@ORI@hyper@makecurrent\hyper@makecurrent
+% \def\hyper@makecurrent##1{%
+% \let\hyper@makecurrent\caption@ORI@hyper@makecurrent
+% \caption@makestart{##1}%
+%% \let\Hy@LT@currentHlabel\@currentHlabel
+% \let\Hy@LT@currentHref\@currentHref
+% \def\hyper@makecurrent####1{%
+%% \let\@currentHlabel\Hy@LT@currentHlabel
+% \let\@currentHref\Hy@LT@currentHref}}%
+% \let\caption@ORI@ContinuedFloat\ContinuedFloat
+% \def\ContinuedFloat{\noalign{%
+% \gdef\caption@setContinuedFloat{%
+% \let\caption@resetContinuedFloat\@gobble}%
+% \def\caption@setoptions####1{%
+% \g@addto@macro\caption@setContinuedFloat{%
+% \caption@setoptions{####1}}}%
+% \let\@captype\LTcaptype
+% \caption@ORI@ContinuedFloat}}%
+% }{%
+% \def\ContinuedFloat{\noalign{%
+% \caption@Error{%
+% \noexpand\ContinuedFloat inside longtables\MessageBreak
+% is only available with `hypcap=true'}}}%
+% }%
+% \global\let\caption@setContinuedFloat\@empty
+ \def\ContinuedFloat{\noalign{%
+ \caption@Error{\noexpand\ContinuedFloat outside float}}}%
+% \end{macrocode}
+% \begin{macrocode}
+ \caption@ORI@LT@array}}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\LT@c@ption}
+% \changes{v3.1g}{2008/01/22}{Made it \cs{long}}
+% The original implementation:
+% \begin{verbatim}
+% \def\LT@c@ption#1[#2]#3{%
+% \LT@makecaption#1\fnum@table{#3}%
+% \def\@tempa{#2}%
+% \ifx\@tempa\@empty\else
+% {\let\\\space
+% \addcontentsline{lot}{table}{\protect\numberline{\thetable}{#2}}}%
+% \fi}
+% \end{verbatim}%^^A
+% Our implementation uses |\LTcaptype| instead of |{table}|:
+% \begin{macrocode}
+ \long\def\LT@c@ption#1[#2]#3{%
+ \LT@makecaption#1{\csname fnum@\LTcaptype\endcsname}{#3}%
+ \LT@captionlistentry{#2}}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\LT@makecaption}
+% \changes{v3.0d}{2004/08/10}{%
+% Bugfix 04-08-04: \cs{abovecaptionskip} \& \cs{belowcaptionskip} will be used now}
+% \changes{v3.0e}{2005/05/05}{%
+% Bugfix: \cs{captionsetup[longtable]} overrides \cs{LTcapwidth} now}
+% \changes{v3.0h}{2005/10/07}{\cs{caption@LT@make} introduced}
+% |\LT@makecaption|\marg{cmd}\marg{label}\marg{text}\par
+% \smallskip
+% The original definition:
+% \begin{verbatim}
+% \def\LT@makecaption#1#2#3{%
+% \LT@mcol\LT@cols c{\hbox to\z@{\hss\parbox[t]\LTcapwidth{%
+% % Based on article class "\@makecaption", "#1" is "\@gobble" in star
+% % form, and "\@firstofone" otherwise.
+% \sbox\@tempboxa{#1{#2: }#3}%
+% \ifdim\wd\@tempboxa>\hsize
+% #1{#2: }#3%
+% \else
+% \hbox to\hsize{\hfil\box\@tempboxa\hfil}%
+% \fi
+% \endgraf\vskip\baselineskip}%
+% \hss}}}
+% \end{verbatim}%^^A
+% Our definition:
+% \begin{macrocode}
+ \renewcommand\LT@makecaption[3]{%
+ \caption@LT@make{%
+% \end{macrocode}
+%
+% If |\LTcapwidth| is not set to its default value |4in| we assume
+% that it shall overwrite our own setting.
+% (But |\captionsetup[longtable]{width=|\ldots|}| will overwrite |\LTcapwidth|.)
+% \begin{macrocode}
+ \caption@settype*\LTcaptype
+ \ifdim\LTcapwidth=4in \else
+ \setcaptionwidth\LTcapwidth
+ \fi
+ \caption@setoptions{longtable}%
+% \caption@setContinuedFloat
+ \caption@setoptions{@longtable}%
+% \end{macrocode}
+%
+% \iffalse
+% The default |position=| setting for longtables is |top|.
+% (This emulates the standard behavior of the \package{longtable} package
+% which has no skip above the caption but a skip below it.)
+% \fi
+%
+% |position=auto| is a bad idea for longtables, but we do our very best.
+% This works quite well for captions inside the longtable contents, but
+% not for captions inside the longtable (end)foot.
+% \Note{This should be `top' if unclear!}
+% \begin{macrocode}
+ \caption@setautoposition{\ifcase\LT@rows t\else b\fi}%
+% \end{macrocode}
+%
+% We set |\ifcaption@star| according the 1st argument.
+% \begin{macrocode}
+ \caption@startrue#1\caption@starfalse
+% \end{macrocode}
+%
+% \changes{v3.1}{2007/05/05}{\cs{caption@normalsize} added}
+% \begin{macrocode}
+ \caption@resetContinuedFloat\LTcaptype
+ \caption@begin\LTcaptype
+ \caption@normalsize
+% \end{macrocode}
+%
+% The following skip has the purpose to correct the height of the
+% |\parbox[t]|. Usually it's the height of the very first line, but
+% because of our extra skips (|\abovecaptionskip| and |\belowcaptionskip|)
+% it's always |0pt|.\par
+% (A different idea would be typesetting the first skip outside the longtable
+% column with |\noalign{\vskip|\ldots|}|, but this means we have to move
+% |\caption@begin| to some other place because it does not work in tabular
+% mode. And at the moment I have no idea on how to do this in an elegant
+% way\ldots)
+% \begin{macrocode}
+ \vskip-\ht\strutbox
+% \end{macrocode}
+%
+% The following code should look familiar. We do our skips and use
+% |\caption@@make| to typeset the caption itself.
+% \begin{macrocode}
+ \caption@iftop{\vskip\belowcaptionskip}{\vskip\abovecaptionskip}%
+ \caption@@make{#2}{#3}\endgraf
+ \caption@iftop{\vskip\abovecaptionskip}{\vskip\belowcaptionskip}%
+ \caption@end}}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+}{}
+% \end{macrocode}
+%
+% \subsubsection{The picinpar package}
+% \changes{v3.1}{2007/06/13}{Support of the \package{picinpar} package added}
+%
+% \begin{macrocode}
+\caption@IfPackageLoaded{picinpar}{%
+% \end{macrocode}
+%
+% \begin{macro}{\figwindow}
+% \begin{macro}{\tabwindow}
+% The \package{picinpar} package comes with its own caption code
+% (|\wincaption|, |\@wincaption|, |\@makewincaption|, \ldots)
+% so we redefine |\figwindow| \& |\tabwindow| to use |\caption| instead.
+% \begin{macrocode}
+ \long\def\figwindow[#1,#2,#3,#4] {%
+ \caption@window{figure}%
+ \caption@setoptions{figwindow}%
+ \begin{window}[#1,#2,{#3},\caption@wincaption{#4}] }%
+% \end{macrocode}
+% \begin{macrocode}
+ \long\def\tabwindow[#1,#2,#3,#4] {%
+ \caption@window{table}%
+ \caption@setoptions{tabwindow}%
+ \begin{window}[#1,#2,{#3},\caption@wincaption{#4}] }%
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+%
+% \begin{macro}{\caption@window}
+% \changes{v3.1c}{2007/10/06}{Bugfix: \cs{caption@clearmargin} added}
+% Beside calling |\caption@settype| we redefine |\caption@boxrestore|
+% (as in \package{floatflt} \& \package{picins} package support)
+% and |\@makecaption| (as in \package{float} package support) here.
+% \begin{macrocode}
+ \newcommand*\caption@window[1]{%
+ \let\caption@boxrestore\@parboxrestore
+ \let\@makecaption\caption@@make
+ \caption@setautoposition b%
+ \caption@settype{#1}%
+ \caption@clearmargin}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@wincaption}
+% \changes{v3.1d}{2007/10/25}{Missing \% added}
+% This one finally typesets the caption using |\caption|.
+% \begin{macrocode}
+ \newcommand\caption@wincaption[1]{%
+% \end{macrocode}
+% This will be done twice for every |figwindow| \& |tabwindow| caption --
+% on the first run |\picwd| is |0pt|, on the second run |\picwd| is |\hsize|.
+% \begin{macrocode}
+ \ifdim\picwd=\z@
+ \let\caption@makecurrent\@gobbletwo
+ \let\caption@@start\relax
+ \caption@prepareslc
+ \fi
+% \end{macrocode}
+% The argument |#1| could contain simply the caption text
+% (e.g.~|A figure caption|), but it could also contain an optional argument,
+% the \meta{lst\_entry}
+% (e.g.~|[An| |entry| |to| |the| |LOF]||{A| |figure| |caption}|).
+% Therefore we have to test if |#1| begins with~|[| or not; furthermore we
+% support a starred variant -- as in |\caption*| -- so we test for~|*|, too.
+% \begin{macrocode}
+ \edef\@tempa{\expandafter\noexpand\@car#1\@nil}%
+ \if\@tempa*%
+ \let\@tempa\@firstofone
+ \else\if\@tempa[%]
+ \let\@tempa\@firstofone
+ \else
+ \let\@tempa\@empty
+ \fi\fi
+ \expandafter\caption\@tempa{#1}}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+}{}
+% \end{macrocode}
+%
+% \subsubsection{The picins package}
+% \changes{v3.0j}{2006/01/26}{Support of the \package{picins} package added}
+%
+% \begin{macro}{\piccaptiontype}
+% |\piccaptiontype|\marg{type}\par
+% We offer this macro for changing the \meta{type} of the caption, so the user
+% doesn't have to redefine |\@captype|, as proposed in the \package{picins}
+% documentation.
+% \Note{We define this macro here so it can be used in the
+% preamble of the document, even when \thispackage\ was loaded prior to the
+% \package{picins} package.}
+% \begin{macrocode}
+\newcommand*\piccaptiontype[1]{\def\@piccaptype{#1}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+\caption@IfPackageLoaded{picins}{%
+% \end{macrocode}
+%
+% Initial set |\@piccaptype| and undefine |\@captype| which was set to
+% |figure| by the \package{picins} package.
+% \begin{macrocode}
+ \@ifundefined{@piccaptype}{%
+ \caption@iftype{%
+ \let\@piccaptype\@captype
+ }{%
+ \def\@piccaptype{figure}%
+ }%
+ }{}%
+ \let\@captype\@undefined
+% \end{macrocode}
+%
+% \begin{macro}{\piccaption}
+% The original code:
+% \begin{verbatim}
+% \def\piccaption{\@ifnextchar [{\@piccaption}{\@piccaption[]}}
+% \end{verbatim}%^^A
+% Our code uses |\caption@star| so |\piccaption*| works,
+% and |\caption@dblarg| so |\piccaption{}| works correctly.
+% \begin{macrocode}
+ \def\piccaption{\caption@star\relax{\caption@dblarg\@piccaption}}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\make@piccaption}
+% \changes{v3.1}{2007/12/06}{Bugfix: \cs{caption@clearmargin} will always be used now}
+% The original code:
+% \begin{verbatim}
+% \def\make@piccaption{%
+% [...]
+% \setbox\@TEXT=\vbox{\hsize\hsiz@\caption[\sh@rtf@rm]{\capti@nt@xt}}%
+% }
+% \end{verbatim}%^^A
+% In our code we have to correct several things:
+% \begin{enumerate}
+% \item |\@captype| must be defined, since we have removed the global
+% definition.
+% \item We use |\caption@setoptions{parpic}| so
+% |\captionsetup[parpic]{|\ldots|}| is supported.
+% \item |\linewidth| must be set correctly.
+% Usually this is done by |\@parboxrestore| inside |\@caption|,
+% but since we use |\@caption@boxrestore| we have to map this to
+% |\@parboxrestore| instead.
+% \item The two arguments of |\caption| (|\sh@rtf@rm| \& |\capti@nt@xt|)
+% should be expanded on first level so |\caption[]{|\ldots|}| and
+% |\caption[|\ldots|]{}| work correctly.
+% \end{enumerate}
+% \begin{macrocode}
+ \let\caption@ORI@make@piccaption\make@piccaption
+ \def\make@piccaption{%
+ \let\caption@ORI\caption
+% \end{macrocode}
+% \begin{macrocode}
+ \long\def\caption[##1]##2{%
+ \caption@freezeHref % will be defrosted in \ivparpic
+ \caption@settype\@piccaptype
+% \ifnum\c@piccaptionpos>2\relax
+ \caption@clearmargin
+% \else
+% \captionwidth\z@ % do not use "width=" setting
+% \fi
+ \caption@setoptions{parpic}%
+ \let\caption@boxrestore\@parboxrestore
+ \caption@setautoposition b%
+% \end{macrocode}
+% \begin{macrocode}
+ \expandafter\expandafter\expandafter\caption@ORI
+ \expandafter\expandafter\expandafter[%
+ \expandafter\expandafter\expandafter{%
+ \expandafter##1\expandafter}\expandafter]\expandafter{##2}}%
+% \end{macrocode}
+% {\footnotesize\begin{quote}
+% \leavevmode\llap{-or-\quad}%^^A
+% |\begingroup|\\
+% | \toks0\expandafter{##1}| |\toks2\expandafter{##2}|\\
+% | \edef\x{\endgroup|\\
+% | \noexpand\caption@ORI[{\the\toks0}]{\the\toks2}}|\\
+% | \x|
+% \end{quote}
+% \begin{quote}
+% \leavevmode\llap{-or-\quad}%^^A
+% |\edef\x{%|\\
+% | \noexpand\caption@ORI[{\unexpanded\expandafter{##1}}]%|\\
+% | {\unexpanded\expandafter{##2}}}|\\
+% |\x|
+% \end{quote}}
+% \begin{macrocode}
+ \caption@ORI@make@piccaption
+ \let\caption\caption@ORI}%
+% \end{macrocode}
+% \end{macro}
+%
+
+% \begin{macro}{\ivparpic}
+% We need to set our \package{hyperref} anchor here.
+% Not bullet-proof since we have to redefine |\noindent| here!
+% \begin{macrocode}
+ \let\caption@ORI@ivparpic\ivparpic
+ \def\ivparpic(#1,#2)(#3,#4)[#5][#6]#7{%
+ \let\caption@ORI@noindent\noindent
+ \def\noindent{%
+ \caption@defrostHref
+ \let\noindent\caption@ORI@noindent
+ \noindent}%
+ \caption@ORI@ivparpic(#1,#2)(#3,#4)[#5][#6]{#7}%
+ \let\noindent\caption@ORI@noindent}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+}{%
+ \let\piccaptiontype\@undefined
+}
+% \end{macrocode}
+%
+% \subsubsection{The rotating package}
+%
+% \begin{macrocode}
+\caption@IfPackageLoaded{rotating}[1995/08/22 v2.10]{%
+% \end{macrocode}
+%
+% \begin{macro}{\rotcaption}
+% \changes{v3.0c}{2004/07/16}{Bugfix: Check for \cs{caption@star} removed}
+% \changes{v3.0i}{2005/12/07}{Rewritten, works with \package{hyperref} now}
+% Make |\rotcaption*| work.
+% \begin{macrocode}
+ \def\rotcaption{\let\@makecaption\@makerotcaption\caption}%
+% \let\@rotcaption\@undefined
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\rotcaptionof}
+% \changes{v3.0i}{2005/12/07}{New}
+% Make |\rotcaptionof(*)| work.
+% \begin{macrocode}
+ \def\rotcaptionof{%
+ \caption@teststar\caption@of{\rotcaption*}\rotcaption}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\@makerotcaption}
+% \changes{v3.0i}{2005/12/06}{Rewritten, should finally work proper now}
+% \changes{v3.0m}{2007/03/04}{Uses \cs{caption@parbox} instead of \cs{caption@start/endbox} now}
+% Original (bugfixed) code:
+% \begin{verbatim}
+% \long\def\@makerotcaption#1#2{%
+% \setbox\@tempboxa\hbox{#1: #2}%
+% \ifdim \wd\@tempboxa > .8\vsize
+% \rotatebox{90}{%
+% \begin{minipage}{.8\textheight}#1: #2\end{minipage}%
+% }%\par % <== \par removed (AR)
+% \else%
+% \rotatebox{90}{\box\@tempboxa}%
+% \fi
+% \nobreak\hspace{12pt}% <== \nobreak added (AR)
+% }
+% \end{verbatim}%^^A
+% Our version emulates this behavior, but if |width=| is set,
+% the rotated caption is always typeset as |minipage|.
+% (Note that |margin=| is not supported here.)
+% \begin{macrocode}
+ \long\def\@makerotcaption#1#2{%
+% \end{macrocode}
+%
+% \begin{macrocode}
+ \ifdim\captionwidth=\z@
+ \setcaptionwidth{.8\textheight}%
+ \caption@slc{#1}{#2}{.8\vsize}{%
+ \let\caption@makerot\caption@@make
+ \caption@clearmargin
+% \long\def\caption@parbox##1##2{\hbox{\hsize=.8\textheight\relax##2}}%
+% (not needed because \rotatebox uses an \hbox anyway)
+ \let\caption@parbox\@secondoftwo}%
+ \caption@set@bool\caption@ifslc0% been there, done that
+ \fi
+% \end{macrocode}
+%
+% \begin{macrocode}
+ \rotatebox{90}{\caption@makerot{#1}{#2}}%
+ \nobreak\hspace{12pt}}%
+% \end{macrocode}
+%
+% \begin{macrocode}
+ \newcommand\caption@makerot[2]{%
+ \begin{minipage}\captionwidth\caption@@make{#1}{#2}\end{minipage}}%
+% \end{macrocode}
+% \end{macro}
+%
+% \changes{v3.1a}{2007/09/07}{\cs{DeclareFloatingEnvironment} defines sideways-variant, too}
+% \begin{macrocode}
+ \caption@For{typelist}{%
+ \newenvironment{sideways#1}{\@rotfloat{#1}}{\end@rotfloat}%
+ \newenvironment{sideways#1*}{\@rotdblfloat{#1}}{\end@rotdblfloat}}%
+% \end{macrocode}
+%
+% \begin{macrocode}
+}{}
+% \end{macrocode}
+%
+% \subsubsection{The sidecap package}
+%
+% \begin{macrocode}
+\caption@IfPackageLoaded{sidecap}[1999/05/11 v1.4d]{%
+ \caption@setbool{needfreeze}{1}%
+% \end{macrocode}
+%
+% \begin{macro}{\SC@caption}
+% \changes{v3.0d}{2004/11/28}{Bugfix: Definition of \cs{@captype} added}
+% \changes{v3.0e}{2005/05/05}{Bugfix: Empty captions are handled correctly now}
+% \changes{v3.0e}{2005/05/05}{Priority of options fixed}
+% \changes{v3.0h}{2005/10/03}{Bugfix: Always use \cs{AtBeginDocument} to set \cs{SC@caption}}
+% First of all, we let \package{sidecap} use a current definition of |\caption|.\\
+% (This is only required for version 1.5d of the \package{sidecap} package.)
+% \begin{macrocode}
+ \caption@AtBeginDocument{\let\SC@caption=\caption}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\SC@zfloat}
+% \changes{v3.0b}{2004/05/16}{Local definition of \cs{captionsetup} added}
+% \changes{v3.0c}{2004/07/16}{Bugfix 04-07-15: Check for \cs{caption@star} removed}
+% \changes{v3.1c}{2007/10/06}{\cs{caption} will be saved \& restored now}
+% This macro will be called at the start of the environment, here is a good
+% opportunity to do some adaptations to |\caption| and |\captionsetup|.
+% \begin{macrocode}
+ \let\caption@ORI@SC@zfloat\SC@zfloat
+ \def\SC@zfloat#1#2#3[#4]{%
+% \end{macrocode}
+% First we use the original definition, but save \& restore \cs{caption}
+% so \cs{caption@freeze} will work correctly.
+% \begin{macrocode}
+ \let\caption@ORI\caption
+ \caption@ORI@SC@zfloat{#1}{#2}{#3}[#4]%
+ \let\caption\caption@ORI
+% \end{macrocode}
+% Since the sidecap package uses our |\caption| code outside the
+% environment the regular |\captionsetup| will not work.
+% So we need a special version here which saves the given argument list
+% which will be executed later on.
+% Furthermore we need to make |\caption*| work.
+% \begin{macrocode}
+ \caption@settype*{#2}%
+ \caption@freeze*}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\endSC@FLOAT}
+% \changes{v3.0i}{2006/01/12}{\cs{@listdepth}\cs{z@} added}
+% \changes{v3.1}{2007/05/05}{Call of \cs{caption@setoptions}\arg{SCfloat} added}
+% This macro will be called at the end of the environment, here we need to
+% setup our stuff before the \package{sidecap} package actually typesets
+% its caption.
+% \begin{macrocode}
+ \let\caption@ORI@endSC@FLOAT\endSC@FLOAT
+ \def\endSC@FLOAT{%
+% \end{macrocode}
+% \Note{\cs{@captype} isn't defined here, this will be done inside
+% the original definition of \cs{endSC@FLOAT}. But \cs{SC@captype} is
+% defined and can be used here, if needed.}
+% \begin{macrocode}
+ \let\caption@ORI@settype\caption@settype
+ \def\caption@settype##1{% will be done in \@xfloat
+ \caption@ORI@settype*{##1}% do not change \@currentlabel
+ \caption@setSC@justify
+%%% \caption@setoptions{SCfloat}%
+ \caption@setoptions{SC\@captype}%
+ \caption@start}%
+% \end{macrocode}
+% Before we can typeset the caption we need to set the margin to zero
+% because any extra margin would only be disturbing here.\par
+% (We don't need to take care about the caption position because
+% the sidecap package set both |\abovecaptionskip| and |\belowcaptionskip|
+% to a skip of zero anyway.)\par
+% Furthermore |\SC@justify| will override the caption justification, if set.
+% The usage of |\SC@justify| differs from version to version of the
+% \package{sidecap} package:\par
+% \begin{tabular}{ll}
+% Version 1.4: & |\SC@justify| is not defined\\
+% Version 1.5: & |\SC@justify| is |\relax| when not set\\
+% Version 1.6: & |\SC@justify| is |\@empty| when not set\\
+% \end{tabular}
+% \begin{macrocode}
+ \def\caption@setSC@justify{%
+ \caption@clearmargin
+ \@ifundefined{SC@justify}{}{%
+ \ifx\SC@justify\@empty \else
+ \let\caption@hj\SC@justify
+ \let\SC@justify\@empty
+ \fi}}%
+% \end{macrocode}
+% Make the original definition of |\endSC@FLOAT| to use our caption
+% stuff instead of its own.
+% \Note{At this point the \package{sidecap} definition of \cs{caption} is valid,
+% not the regular one!}
+% \begin{macrocode}
+ \let\caption\SC@orig@caption
+ \def\SC@orig@caption[##1]##2{\caption@defrost}%
+% \end{macrocode}
+% Finally we call the original definition of |\endSC@FLOAT|.
+% \begin{macrocode}
+ \caption@setSC@justify % for compatibility mode
+ \caption@ORI@endSC@FLOAT}%
+% \end{macrocode}
+% \end{macro}
+%
+% \changes{v3.1a}{2007/09/07}{\cs{DeclareFloatingEnvironment} defines SC-variant, too}
+% \changes{v3.1f}{2007/12/23}{Bugfix in definition of SC-variant}
+% \begin{macrocode}
+ \newcommand*\caption@For@SC[2]{%
+ \def#1{b}% = \sidecaptionvpos{#2}{b} (v1.6)
+ \newenvironment{SC#2}%
+ {\SC@float[#1]{#2}}{\endSC@float}%
+ \newenvironment{SC#2*}%
+ {\SC@dblfloat[#1]{#2}}{\endSC@dblfloat}}%
+ \@onlypreamble\caption@For@SC
+ \caption@For{typelist}{%
+ \expandafter\caption@For@SC\csname SC@#1@vpos\endcsname{#1}}%
+% \end{macrocode}
+%
+% \begin{macrocode}
+}{}
+% \end{macrocode}
+%
+% \subsubsection{The subfigure package}
+% \changes{v3.1}{2007/04/06}{subfigure package support added (package)}
+%
+% \begin{macrocode}
+\caption@IfPackageLoaded{subfigure}[2002/01/23 v2.1]{%
+% \end{macrocode}
+%
+% \begin{macro}{\sf@ifpositiontop}
+% \changes{v3.1a}{2007/09/15}{Bugfix 07-09-15: Check for \cs{@captype} added}
+% If the \package{subfigure} package is loaded, we map |\sf@ifpositiontop|
+% to |\iffiguretopcap| resp. |\iftabletopcap|, so the \package{subfigure}
+% \version{2.1} options \opt{figbotcap} etc. will still work.
+% \begin{macrocode}
+ \def\sf@ifpositiontop{%
+ \ifx\@captype\@undefined
+ \expandafter\@gobbletwo
+ \else\ifx\@captype\relax
+ \expandafter\expandafter\expandafter\@gobbletwo
+ \else
+ \expandafter\expandafter\expandafter\sf@if@position@top
+ \fi\fi}
+% \end{macrocode}
+% \begin{macrocode}
+ \def\sf@if@position@top{%
+ \@ifundefined{if\@captype topcap}%
+ {\@gobbletwo}%
+ {\@nameuse{if\@captype topcap}%
+ \expandafter\@firstoftwo
+ \else
+ \expandafter\@secondoftwo
+ \fi}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+}{}
+% \end{macrocode}
+%
+% \subsubsection{The supertabular and xtab packages}
+%
+% \begin{macrocode}
+\caption@IfPackageLoaded{supertabular}[2002/07/19 v4.1e]{%
+% \end{macrocode}
+%
+% \begin{macro}{\tablecaption}
+% \changes{v3.0e}{2005/05/05}{Made \cs{topcaption*} and \cs{bottomcaption*} work}
+% \changes{v3.1h}{2008/04/01}{Bugfix: Star variant does not increment table counter anymore}
+% Make |\topcaption*| and |\bottomcaption*| work.
+% \begin{macrocode}
+ \renewcommand*\tablecaption{%
+ \caption@star
+ {\refstepcounter{table}}%
+ {\caption@dblarg{\@xtablecaption}}}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\@xtablecaption}
+% \changes{v3.1h}{2008/04/01}{Made \cs{nameref} \& \cs{autoref} work}
+% \changes{v3.1l}{2010/01/09}{Adapted to current version of nameref package}
+% Make |\nameref| and |\autoref| work.
+% \begin{macrocode}
+ \let\caption@ORI@xtablecaption\@xtablecaption
+ \long\def\@xtablecaption[#1]#2{%
+ \caption@gettitle{#2}%
+ \caption@ORI@xtablecaption[#1]{#2}}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\ST@caption}
+% \changes{v3.0a}{2004/01/23}{Bugfix: Missing \cs{par} added}
+% \changes{v3.1h}{2008/04/01}{Bugfix: \cs{@currentlabelname} will be set now}
+% The original code:
+% \begin{verbatim}
+% \long\def\ST@caption#1[#2]#3{\par%
+% \addcontentsline{\csname ext@#1\endcsname}{#1}%
+% {\protect\numberline{%
+% \csname the#1\endcsname}{\ignorespaces #2}}
+% \begingroup
+% \@parboxrestore
+% \normalsize
+% \if@topcaption \vskip -10\p@ \fi
+% \@makecaption{\csname fnum@#1\endcsname}{\ignorespaces #3}\par
+% \if@topcaption \vskip 10\p@ \fi
+% \endgroup}
+% \end{verbatim}%^^A
+% \begin{macrocode}
+ \long\def\ST@caption#1[#2]#3{\par%
+ \caption@settype*{#1}%
+ \caption@setoptions{supertabular}%
+% \end{macrocode}
+% The |position=| setting will be overwritten by the
+% \package{supertabular} package: If |\topcaption| was used,
+% the position will be |top| automatically, |bottom| otherwise.
+% \begin{macrocode}
+ \def\caption@fixposition{%
+ \caption@setposition{\if@topcaption t\else b\fi}}%
+% \end{macrocode}
+% \begin{macrocode}
+ \caption@beginex{#1}{#2}{#3}%
+ \caption@boxrestore
+ \caption@normalsize
+ \@makecaption{\csname fnum@#1\endcsname}{\ignorespaces #3}\par
+ \caption@end}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+}{}
+% \end{macrocode}
+%
+% \changes{v3.1h}{2008/04/01}{Support of the xtab package added}
+% \begin{macrocode}
+\caption@IfPackageLoaded{xtab}[2000/04/09 v2.3]{%
+% \end{macrocode}
+%
+% \begin{macro}{\tablecaption}
+% Make |\topcaption*| and |\bottomcaption*| work.
+% \begin{macrocode}
+ \renewcommand*\tablecaption{%
+ \caption@star
+ {\refstepcounter{table}}%
+ {\caption@dblarg{\@xtablecaption}}}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\@xtablecaption}
+% \changes{v3.1l}{2010/01/09}{Adapted to current version of nameref package}
+% Make |\nameref| and |\autoref| work.
+% \begin{macrocode}
+ \let\caption@ORI@xtablecaption\@xtablecaption
+ \long\def\@xtablecaption[#1]#2{%
+ \caption@gettitle{#2}%
+ \caption@ORI@xtablecaption[#1]{#2}}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\ST@caption}
+% The original code:
+% \begin{verbatim}
+% \long\def\ST@caption#1[#2]#3{\par%
+% \@initisotab
+% \addcontentsline{\csname ext@#1\endcsname}{#1}%
+% {\protect\numberline{%
+% \csname the#1\endcsname}{\ignorespaces #2}}%
+% \begingroup
+% \@parboxrestore
+% \normalsize
+% %% \if@topcaption \vskip -10\p@ \fi
+% \@makecaption{\csname fnum@#1\endcsname}{\ignorespaces #3}\par
+% %% \if@topcaption \vskip 10\p@ \fi
+% \endgroup
+% \global\advance\ST@pageleft -\PWSTcapht
+% \ST@trace\tw@{Added caption. Space left for xtabular: \the\ST@pageleft}}
+% \end{verbatim}%^^A
+% \begin{macrocode}
+ \long\def\ST@caption#1[#2]#3{\par%
+ \caption@settype*{#1}%
+ \caption@setoptions{xtabular}%
+% \end{macrocode}
+% \begin{macrocode}
+ \def\caption@fixposition{%
+ \caption@setposition{\if@topcaption t\else b\fi}}%
+% \end{macrocode}
+% \begin{macrocode}
+ \@initisotab
+ \caption@beginex{#1}{#2}{#3}%
+ \caption@boxrestore
+ \caption@normalsize
+ \@makecaption{\csname fnum@#1\endcsname}{\ignorespaces #3}\par
+ \caption@end
+ \global\advance\ST@pageleft -\PWSTcapht
+ \ST@trace\tw@{Added caption. Space left for xtabular: \the\ST@pageleft}}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+}{}
+% \end{macrocode}
+%
+% \subsubsection{The threeparttable package}
+% \changes{v3.1}{2007/05/08}{Support of the \package{threeparttable} package added}
+%
+% \begin{macrocode}
+\caption@IfPackageLoaded{threeparttable}[2003/06/13 v3.0]{%
+% \end{macrocode}
+%
+% \begin{macro}{\threeparttable}
+% Unfortunately |\@captype| is not set when |\TPT@common| will be used,
+% so we have to redefine |\threeparttable| and |\measuredfigure| instead.
+% \begin{macrocode}
+ \let\caption@ORI@threeparttable\threeparttable
+ \renewcommand*\threeparttable{%
+ \caption@settype{table}%
+ \caption@setposition a% ?
+ \caption@clearmargin
+ \caption@setoptions{threeparttable}%
+ \caption@ORI@threeparttable}%
+% \end{macrocode}
+% \end{macro}
+% \begin{macro}{\measuredfigure}
+% Same here\ldots
+% \begin{macrocode}
+ \let\caption@ORI@measuredfigure\measuredfigure
+ \renewcommand*\measuredfigure{%
+ \caption@settype{figure}%
+ \caption@setposition a% ?
+ \caption@clearmargin
+ \caption@setoptions{measuredfigure}%
+ \caption@ORI@measuredfigure}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\TPT@caption}
+% The original code:
+% \begin{verbatim}
+% \def\TPT@caption#1[#2]#3{\gdef\TPT@docapt
+% {\par\global\let\TPT@docapt\@undefined \TPT@LA@caption{#1}[{#2}]%
+% {\strut\ignorespaces#3\ifhmode\unskip\@finalstrut\strutbox\fi}}%
+% \ifx\TPT@hsize\@empty \let\label\TPT@gatherlabel \abovecaptionskip\z@skip
+% \else \TPT@docapt \fi \ignorespaces}
+% \end{verbatim}%^^A
+% \begin{macrocode}
+ \def\TPT@caption#1[#2]#3{%
+ \gdef\TPT@docapt{%
+ \global\let\TPT@docapt\@undefined
+ \caption@setautoposition\caption@TPT@position
+ \TPT@LA@caption{#1}[{#2}]{#3}}%
+ \ifx\TPT@hsize\@empty
+ \let\label\TPT@gatherlabel % Bug: does not work for measuredfigures
+ \gdef\caption@TPT@position{t}%
+ \g@addto@macro\TPT@docapt\caption@TPT@eatvskip
+ \else
+ \def\caption@TPT@position{b}%
+ \TPT@docapt
+ \fi
+ \ignorespaces}%
+% \end{macrocode}
+% \begin{macrocode}
+ %\newcommand*\caption@TPT@eatvskip{\vskip-.2\baselineskip}%
+ \def\caption@TPT@eatvskip#1\vskip{#1\@tempdima=}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+}{}
+% \end{macrocode}
+%
+% \subsubsection{The wrapfig package}
+% \changes{v3.1}{2007/05/05}{Support of the \package{wrapfig} package added}
+%
+% \begin{macrocode}
+\caption@IfPackageLoaded{wrapfig}{% ver 3.3 (Oct 12, 1999)
+% \end{macrocode}
+%
+% \begin{macro}{\float@ifstyle}
+% \changes{v3.1}{2007/06/10}{This macro added}
+% |\float@ifstyle|\marg{type}\marg{if-clause}\marg{else-clause}\par
+% (see \package{float} package support for details)
+% \begin{macrocode}
+ \providecommand*\float@ifstyle[1]{%
+ \expandafter\ifx\csname fst@#1\endcsname\relax
+ \expandafter\@secondoftwo
+ \else
+ \expandafter\@firstoftwo
+ \fi}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@restylewrapfloat}
+% This one redefines the |wrap#1| environment, e.g.~|wrapfigure|.
+% Our code uses |\caption@setoptions{wrapfigure}| so
+% |\captionsetup[wrapfigure]{|\ldots|}| will work.\par
+% But first we check if our redefinition was already done, this could
+% happen inside |\float@restyle| when the \package{wrapfig} support of
+% the \package{float} package was not installed successfully, so it has
+% not redefined |\wrap#1| there.
+% \begin{macrocode}
+ \newcommand*\caption@restylewrapfloat[1]{%
+ \expandafter\ifx\csname caption@OUR@wrap#1\expandafter\endcsname
+ \csname wrap#1\endcsname
+ \caption@Error{%
+ For a successful cooperation of the `wrapfig' package\MessageBreak
+ with the `float' package you should load the `wrapfig'\MessageBreak
+ package *after* the `float' package}%
+ \else
+ \expandafter\let\csname caption@ORI@wrap#1\expandafter\endcsname
+ \csname wrap#1\endcsname
+ \@namedef{wrap#1}{\caption@wrapfloat{#1}}%
+ \expandafter\let\csname caption@OUR@wrap#1\expandafter\endcsname
+ \csname wrap#1\endcsname
+ \fi}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@wrapfloat}
+% \begin{macrocode}
+ \newcommand*\caption@wrapfloat[1]{%
+ \caption@settype*{#1}%
+ \float@ifstyle{#1}{%
+ \ifx\WF@floatstyhook\@undefined
+ \caption@Error{%
+ For a successful cooperation of the `wrapfig' package\MessageBreak
+ with the `float' package you should use at least\MessageBreak
+ `wrapfig' version 3.6}%
+ \else
+ \float@dostyle{#1}%
+ \fi}{}%
+ \caption@clearmargin
+%%% \caption@setoptions{wrapfloat}%
+ \caption@setoptions{wrap#1}%
+ \@nameuse{caption@ORI@wrap#1}}%
+% \end{macrocode}
+% \end{macro}
+%
+% Now we redefine the \package{wrapfig} environments we know about.\par
+% If someone has placed a |\newfloat| right between |\usepackage{wrapfig}|
+% and |\usepackage{caption}| (or loads \thispackage\ first, so all these
+% patches will be done with |\AtBeginDocument|) we have bad luck since the
+% \package{float} package do not offer a list of (re)styled floats.
+% (This would finally lead to an error in |\caption@setfloatcapt|.)
+%
+% \begin{macrocode}
+ \caption@restylewrapfloat{figure}%
+ \caption@restylewrapfloat{table}%
+% \end{macrocode}
+%
+% \changes{v3.1a}{2007/09/07}{\cs{DeclareFloatingEnvironment} defines wrap-variant, too}
+% \begin{macrocode}
+ \caption@For{typelist}{%
+ \newenvironment{wrap#1}{\wrapfloat{#1}}{\endwrapfloat}%
+ \caption@restylewrapfloat{#1}}%
+% \end{macrocode}
+%
+% \begin{macrocode}
+ \ifx\WF@floatstyhook\@undefined \else % wrapfig v3.6
+% \end{macrocode}
+%
+% \begin{macro}{\float@restyle}
+% If the \package{wrapfig} package \version{3.6} is used, we patch
+% |\float@restyle| (if defined), too, so new or restyled floats will be
+% handled correctly, too.
+% \begin{macrocode}
+ \@ifundefined{float@restyle}{}{%
+ \toks@=\expandafter{\float@restyle{#1}% (env may or may not be defined)
+ \caption@restylewrapfloat{#1}}%
+ \edef\@tempa{\def\noexpand\float@restyle##1{\the\toks@}}%
+ \@tempa}% perform redefinitions
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\wrapfloat}
+% An additional check of the package load order:
+% If both, neither the \package{wrapfig} package nor \thispackage\ haven't
+% catch |\float@restyle|, we finally splash down at |\wrapfloat|.
+% \begin{macrocode}
+ \let\caption@ORI@wrapfloat\wrapfloat
+ \def\wrapfloat#1{%
+ \float@ifstyle{#1}{%
+ \caption@Error{%
+ For a successful cooperation of the `wrapfig' package\MessageBreak
+ with the `float' package you should load the `wrapfig'\MessageBreak
+ package *right after* the `float' package}}{}%
+ \caption@ORI@wrapfloat{#1}}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+ \fi % wrapfig v3.6
+% \end{macrocode}
+%
+% \begin{macro}{\WF@rapt}
+% We place our \package{hyperref} anchor here.\par
+% Original code:
+% \begin{verbatim}
+% \def\WF@rapt[#1]#2{% final two args: #1 = overhang, #2 = width,
+% \gdef\WF@ovh{#1}% hold overhang for later, when \width is known
+% \global\setbox\WF@box\vtop\bgroup \setlength\hsize{#2}%
+% \ifdim\hsize>\z@ \@parboxrestore \else
+% \setbox\z@\hbox\bgroup \let\wf@@caption\caption \let\caption\wf@caption
+% \ignorespaces \fi}
+% \end{verbatim}%^^A
+% Our code:
+% \begin{macrocode}
+ \def\WF@rapt[#1]#2{% final two args: #1 = overhang, #2 = width,
+ \gdef\WF@ovh{#1}% hold overhang for later, when \width is known
+ \global\setbox\WF@box\vtop\bgroup \setlength\hsize{#2}%
+ \caption@start
+ \ifdim\hsize>\z@ \@parboxrestore \else
+ \setbox\z@\hbox\bgroup \let\wf@@caption\caption \let\caption\wf@caption
+ \ignorespaces \fi}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+}{}
+% \end{macrocode}
+%
+% \iffalse
+%</package>
+% \fi
+%
+% \iffalse
+% --------------------------------------------------------------------------- %
+% \fi
+%
+% \clearpage
+% \begin{thebibliography}{99}
+% \bibitem{TLC2}
+% Frank Mittelbach and Michel Goossens:\\
+% \newblock {\em The {\LaTeX} Companion (2nd.~Ed.)},\\
+% \newblock Addison-Wesley, 2004.
+%
+% \bibitem{beamer}
+% Till Tantau:\\
+% \href{http://tug.ctan.org/tex-archive/macros/latex/contrib/beamer/}%
+% {\emph{User Guide to the Beamer Class, Version 3.07}},\\
+% March 11, 2007
+%
+% \bibitem{KOMAScript}
+% Markus Kohm \& Jens-Uwe-Morawski:\\
+% \href{http://tug.ctan.org/tex-archive/macros/latex/contrib/koma-script/}%
+% {\emph{KOMA-Script -- a versatile \LaTeXe\ bundle}},\\
+% 2007-01-09
+%
+% \bibitem{NTG}
+% Victor Eijkhout:\\
+% \href{http://tug.ctan.org/tex-archive/macros/latex/contrib/ntgclass/}%
+% {\emph{An introduction to the Dutch \LaTeX\ document classes}},\\
+% 3 September 1989
+%
+% \bibitem{float}
+% Anselm Lingnau:\\
+% \href{http://tug.ctan.org/tex-archive/macros/latex/contrib/float/}%
+% {\emph{An Improved Environment for Floats}},\\
+% 2001/11/08
+%
+% \bibitem{floatflt}
+% Mats Dahlgren:\\
+% \href{http://tug.ctan.org/tex-archive/macros/latex/contrib/floatflt/}%
+% {\emph{Welcome to the floatflt package}},\\
+% 1998/06/05
+%
+% \bibitem{floatrow}
+% Olga Lapko:\\
+% \href{http://tug.ctan.org/tex-archive/macros/latex/contrib/floatrow/}%
+% {\emph{The floatrow package documentation}},\\
+% 2007/08/24
+%
+% \bibitem{fltpage}
+% Sebastian Gross:\\
+% \href{http://tug.ctan.org/tex-archive/macros/latex/contrib/fltpage/}%
+% {\emph{Welcome to the beta test of fltpage package!}},\\
+% 1998/11/13
+%
+% \bibitem{hyperref}
+% Sebastian Rahtz \& Heiko Oberdiek:\\
+% \href{http://tug.ctan.org/tex-archive/macros/latex/contrib/hyperref/}%
+% {\emph{Hypertext marks in \LaTeX}},\\
+% November 12, 2007
+%
+% \bibitem{hypcap}
+% Heiko Oberdiek:\\
+% \href{http://tug.ctan.org/tex-archive/macros/latex/contrib/oberdiek/}%
+% {\emph{The hypcap package -- Adjusting anchors of captions}},\\
+% 2007/04/09
+%
+% \bibitem{listings}
+% Carsten Heinz \& Brooks Moses:\\
+% \href{http://tug.ctan.org/tex-archive/macros/latex/contrib/listings/}%
+% {\emph{The Listings Package}},\\
+% 2007/02/22
+%
+% \bibitem{longtable}
+% David Carlisle:\\
+% \href{http://tug.ctan.org/tex-archive/macros/latex/required/tools/}%
+% {\emph{The longtable package}},\\
+% 2004/02/01
+%
+% \bibitem{picinpar}
+% Friedhelm Sowa:\\
+% \href{http://tug.ctan.org/tex-archive/macros/latex209/contrib/picinpar/}%
+% {\emph{Pictures in Paragraphs}},\\
+% July 13, 1993
+%
+% \bibitem{picins}
+% Joachim Bleser and Edmund Lang:\\
+% \href{http://tug.ctan.org/tex-archive/macros/latex209/contrib/picins/}%
+% {\emph{PicIns-Benutzerhandbuch Version 3.0}},\\
+% September~1992
+%
+% \bibitem{rotating}
+% Sebastian Rahtz and Leonor Barroca:\\
+% \href{http://tug.ctan.org/tex-archive/macros/latex/contrib/rotating/}%
+% {\emph{A style option for rotated objects in \LaTeX}},\\
+% 1997/09/26
+%
+% \bibitem{sidecap}
+% Rolf Niepraschk \& Hubert G\"a\ss lein:\\
+% \href{http://tug.ctan.org/tex-archive/macros/latex/contrib/sidecap/}%
+% {\emph{The sidecap package}},\\
+% 2003/06/06
+%
+% \bibitem{subfigure}
+% Steven D. Cochran:\\
+% \href{http://tug.ctan.org/tex-archive/macros/latex/contrib/subfigure/}%
+% {\emph{The subfigure package}},\\
+% 2002/07/02
+%
+% \bibitem{subfig}
+% Steven D. Cochran:\\
+% \href{http://tug.ctan.org/tex-archive/macros/latex/contrib/subfig/}%
+% {\emph{The subfig package}},\\
+% 2005/07/05
+%
+% \bibitem{supertabular}
+% Johannes Braams and Theo Jurriens:\\
+% \href{http://tug.ctan.org/tex-archive/macros/latex/contrib/supertabular/}%
+% {\emph{The supertabular environment}},\\
+% 2002/07/19
+%
+% \bibitem{threeparttable}
+% Donald Arseneau:\\
+% \href{http://tug.ctan.org/tex-archive/macros/latex/contrib/misc/}%
+% {\emph{Three part tables: title, tabular environment, notes}},\\
+% 2003/06/13
+%
+% \bibitem{wrapfig}
+% Donald Arseneau:\\
+% \href{http://tug.ctan.org/tex-archive/macros/latex/contrib/wrapfig/}%
+% {\emph{WRAPFIG.STY ver 3.6}},\\
+% 2003/01/31
+%
+% \bibitem{xtab}
+% Peter Wilson:\\
+% \href{http://tug.ctan.org/tex-archive/macros/latex/contrib/xtab/}%
+% {\emph{The xtab package}},\\
+% 2004/05/24
+%
+% \bibitem{Anne}
+% Anne Br\"uggemann-Klein:\\
+% \emph{Einf\"uhrung in die Dokumentverarbeitung},\\
+% B.G. Teubner, Stuttgart, 1989
+%
+% \bibitem{refcount}
+% Heiko Oberdiek:\\
+% \href{ftp://ctan.tug.org/tex-archive/macros/latex/contrib/oberdiek/refcount.pdf}%
+% {\emph{The refcount package}},\\
+% 2006/02/20
+% \end{thebibliography}
+%
+% \iffalse
+% --------------------------------------------------------------------------- %
+% \fi
+%
+% \clearpage
+% \Finale
+%
+\endinput
diff --git a/macros/latex/contrib/caption/fallback/v3.2/caption.dtx b/macros/latex/contrib/caption/fallback/v3.2/caption.dtx
new file mode 100644
index 0000000000..7f31da44f2
--- /dev/null
+++ b/macros/latex/contrib/caption/fallback/v3.2/caption.dtx
@@ -0,0 +1,4521 @@
+% \iffalse meta-comment
+%
+% This is file `caption.dtx'.
+%
+% Copyright (C) 1994-2011 Axel Sommerfeldt (axel.sommerfeldt@f-m.fm)
+%
+% --------------------------------------------------------------------------
+%
+% This work may be distributed and/or modified under the
+% conditions of the LaTeX Project Public License, either version 1.3
+% of this license or (at your option) any later version.
+% The latest version of this license is in
+% http://www.latex-project.org/lppl.txt
+% and version 1.3 or later is part of all distributions of LaTeX
+% version 2003/12/01 or later.
+%
+% This work has the LPPL maintenance status "maintained".
+%
+% This Current Maintainer of this work is Axel Sommerfeldt.
+%
+% This work consists of the files caption.ins, caption.dtx, caption2.dtx,
+% caption3.dtx, bicaption.dtx, ltcaption.dtx, subcaption.dtx, and newfloat.dtx,
+% the derived files caption.sty, caption2.sty, caption3.sty,
+% bicaption.sty, ltcaption.sty, subcaption.sty, and newfloat.sty,
+% and the user manuals caption-deu.tex, caption-eng.tex, and caption-rus.tex.
+%
+% \fi
+% \CheckSum{3534}
+%
+% \iffalse
+%<*driver>
+\NeedsTeXFormat{LaTeX2e}[1994/12/01]
+\ProvidesFile{caption.drv}[2011/08/06 v3.2 Implementation of the caption package]
+\hbadness=9999 \newcount\hbadness \hfuzz=100pt % Make TeX shut up.
+%\errorcontextlines=3
+%
+\documentclass{ltxdoc}
+\setlength\parindent{0pt}
+\setlength\parskip{\smallskipamount}
+%
+\makeatletter % make room for subsections like 2.16.14 in the TOC
+%\newcommand*\l@subsection{\@dottedtocline{2}{1.5em}{2.3em}}
+\renewcommand*\l@subsection{\@dottedtocline{2}{1.5em}{2.7em}}
+\makeatother
+%
+\usepackage{ifpdf}
+\ifpdf
+ \usepackage{mathptmx,courier}
+ \usepackage[scaled=0.90]{helvet}
+ \addtolength\marginparwidth{15pt}
+\fi
+%
+\usepackage{hypdoc}
+\ifpdf\usepackage{hypdestopt}\fi
+\hypersetup{pdfkeywords={LaTeX, package, caption},pdfstartpage={},pdfstartview={}}
+%
+\usepackage[debug]{caption}[2010/09/01]
+%
+\DeclareRobustCommand*\eTeX{\texorpdfstring
+ {\leavevmode\hbox{$\varepsilon$}-\TeX}%
+ {e-TeX}}
+\DeclareRobustCommand*\AmS{\texorpdfstring
+ {{\protect\usefont{OMS}{cmsy}{m}{n}A\kern-.1667em\lower.5ex\hbox{M}\kern-.125emS}}%
+ {AMS}}
+\DeclareRobustCommand*\KOMAScript{\texorpdfstring
+ {\textsf{K\kern.05em O\kern.05em M\kern.05em A\kern.1em-\kern.1em Script}}%
+ {KOMA-Script}}
+\DeclareRobustCommand*\NTG{NTG}
+\DeclareRobustCommand*\SmF{SMF}
+%
+\begin{document}
+ \DocInput{caption.dtx}
+\end{document}
+%</driver>
+% \fi
+%
+% \newcommand*\purerm[1]{{\upshape\mdseries\rmfamily #1}}
+% \newcommand*\puresf[1]{{\upshape\mdseries\sffamily #1}}
+% \newcommand*\purett[1]{{\upshape\mdseries\ttfamily #1}}
+% \let\class\puresf \let\package\puresf
+% \let\env\purett \let\opt\purett
+%
+% \def\thispackage{the \package{caption} package}
+% \def\Thispackage{The \package{caption} package}
+%
+% \newcommand*\csmarg[1]{\texttt{\char`\{#1\char`\}}}
+% \newcommand*\csoarg[1]{\texttt{\char`\[#1\char`\]}}
+% \newcommand*\version[2][]{\textit{v#2}}
+% \newcommand*\x{\discretionary{-}{}{}}
+% \newcommand*\xx{\discretionary{}{}{}}
+%
+% \GetFileInfo{caption.drv}
+% \let\docdate\filedate
+% \GetFileInfo{caption.sty}
+%
+% \title{The Implementation of
+% \texorpdfstring{\thispackage\thanks{%^^A
+% This package has version number \fileversion, last revised \filedate.}}%^^A
+% {the caption package}}
+% \author{Axel Sommerfeldt\\
+% \href{mailto:axel.sommerfeldt@f-m.fm}{\texttt{axel.sommerfeldt@f-m.fm}}}
+% \date{\docdate}
+% \maketitle
+%
+% \begin{abstract}
+% \Thispackage\ consists of two parts -- the kernel
+% (|caption3.sty|) and the main package (|caption.sty|).
+%
+% \Thispackage\ redefines the \LaTeX\ commands
+% |\caption|, |\@caption|, and |\@makecaption| and maps the latter one to
+% |\caption@@make|, giving the user the possibility to control the look \& feel
+% of the captions from floating environments like |figure| and |table|.
+% Furthermore it does similar to the caption stuff coming from other packages
+% (like the \package{longtable} or \package{supertabular} package):
+% Mapping the appropriate internal commands (like |\LT@makecaption| or
+% |\ST@caption|) to the ones offered by the \package{caption3} kernel.
+% So you can think of \thispackage\ as a layer package, it
+% simply provides adaptation layers between the caption stuff coming from
+% \LaTeXe\ or packages, and the caption stuff offered by the
+% \package{caption3} kernel.
+% \end{abstract}
+%
+% \section*{User manuals}
+%
+% This document is describing the code implementation only. The user
+% documentation can be found in
+% \nopagebreak\begin{quote}
+% \begin{tabular}{ll}
+% \href{ftp://ctan.tug.org/tex-archive/macros/latex/contrib/caption/caption-eng.pdf}%
+% {\texttt{caption-eng.pdf}} & The English documentation \\
+% \href{ftp://ctan.tug.org/tex-archive/macros/latex/contrib/caption/caption-rus.pdf}%
+% {\texttt{caption-rus.pdf}} & The Russian documentation\footnotemark \\
+% \href{ftp://dante.ctan.org/tex-archive/macros/latex/contrib/caption/caption-deu.pdf}%
+% {\texttt{caption-deu.pdf}} & The German documentation \\
+% \end{tabular}
+% \footnotetext{Thanks a lot to Olga Lapko for this translation}
+% \end{quote}
+%
+% \StopEventually{}
+% \clearpage
+% \tableofcontents
+%
+% \iffalse
+% --------------------------------------------------------------------------- %
+% \fi
+%
+% \DoNotIndex{\\,\_,\ ,\@@par}
+% \DoNotIndex{\@bsphack}
+% \DoNotIndex{\@car,\@cdr,\@classoptionslist,\@cons,\@currext,\@currname}
+% \DoNotIndex{\@ehc,\@ehd,\@empty,\@esphack,\@expandtwoargs}
+% \DoNotIndex{\@for,\@firstofone,\@firstoftwo}
+% \DoNotIndex{\@gobble,\@gobblefour,\@gobbletwo,\@hangfrom}
+% \DoNotIndex{\if@minipage\@ifnextchar,\@ifpackagelater,\@ifpackageloaded}
+% \DoNotIndex{\@ifstar,\@ifundefined,\@latex@error,\@minipagefalse,\@minipagetrue}
+% \DoNotIndex{\@namedef,\@nameuse}
+% \DoNotIndex{\@onlypreamble,\@parboxrestore,\@plus,\@ptionlist}
+% \DoNotIndex{\@removeelement,\@restorepar,\@secondoftwo,\@setminipage,\@setpar}
+% \DoNotIndex{\@tempa,\@tempboxa,\@tempdima,\@tempdimb,\@tempdimc,\@tempb,\@tempc}
+% \DoNotIndex{\@testopt}
+% \DoNotIndex{\@undefined,\@unprocessedoptions,\@unusedoptionlist}
+% \DoNotIndex{\p@,\z@}
+% \DoNotIndex{\active,\addtocounter,\addtolength,\advance,\aftergroup}
+% \DoNotIndex{\baselineskip,\begin,\begingroup,\bfseries,\box}
+% \DoNotIndex{\catcode,\centering,\changes,\csname,\def,\divide,\do,\downarrow}
+% \DoNotIndex{\edef,\else,\empty,\end,\endcsname,\endgraf,\endgroup,\expandafter}
+% \DoNotIndex{\fi,\footnotesize,\global}
+% \DoNotIndex{\hangindent,\hbox,\hfil,\hsize,\hskip,\hspace,\hss}
+% \DoNotIndex{\ifcase,\ifdim,\ifnum,\ifodd,\ifvoid,\ifvmode}
+% \DoNotIndex{\ifx,\ignorespaces,\itshape}
+% \DoNotIndex{\Large,\large,\leavevmode,\leftmargini,\leftskip,\let,\linewidth}
+% \DoNotIndex{\llap,\long,\m@ne,\margin,\mdseries,\message}
+% \DoNotIndex{\newcommand,\newdimen,\newlength,\newline,\newif,\newsavebox}
+% \DoNotIndex{\next,\nobreak,\nobreakspace,\noexpand,\noindent,\numberline}
+% \DoNotIndex{\normalcolor,\normalfont,\normalsize,\or,\par,\parbox,\parfillskip}
+% \DoNotIndex{\parindent,\parskip,\prevdepth,\protect,\protected@edef,\protected@write}
+% \DoNotIndex{\providecommand,\quad}
+% \DoNotIndex{\raggedleft,\raggedright,\relax,\renewcommand,\RequirePackage}
+% \DoNotIndex{\rightskip,\rmfamily}
+% \DoNotIndex{\sbox,\scriptsize,\scshape,\setbox,\setlength,\sffamily,\slshape}
+% \DoNotIndex{\small,\string,\space,\strut}
+% \DoNotIndex{\textheight,\the,\toks@,\typeout,\ttfamily}
+% \DoNotIndex{\unvbox,\uparrow,\upshape,\usebox,\usepackage}
+% \DoNotIndex{\value,\vbox,\vsize,\vskip,\wd,\width,\z@skip}
+% \DoNotIndex{\AtBeginDocument,\AtEndOfPackage,\CurrentOption,\DeclareOption}
+% \DoNotIndex{\ExecuteOptions,\GenericWarning,\IfFileExists,\InputIfFileExists}
+% \DoNotIndex{\NeedsTeXFormat,\MessageBreak}
+% \DoNotIndex{\PackageError,\PackageInfo,\PackageWarning,\PackageWarningNoLine}
+% \DoNotIndex{\PassOptionsToPackage,\ProcessOptions,\ProvidesPackage}
+%
+% \iffalse
+% --------------------------------------------------------------------------- %
+% \fi
+%
+% \setlength{\parskip}{0pt plus 1pt}
+% \newcommand*\Note[2][Note]{\par{\small\emph{#1:} #2}\par}
+%
+% \changes{v1.0}{1994/10/27}{First release}
+% \changes{v1.1}{1994/11/03}{New option \texttt{centerlast}}
+% \changes{v1.2}{1994/11/28}{Support of the \package{float} package}
+% \changes{v1.3}{1995/01/09}{Support of \cs{captionlabelfont} in subcaptions}
+% \changes{v1.4}{1995/01/30}{New option \texttt{nooneline}}
+% \changes{v1.4b}{1995/04/05}{Bugfix release}
+% \changes{v3.0}{2003/12/20}{Rewritten; many new commands and features}
+% \changes{v3.0d}{2004/11/28}{Split into two packages:
+% \package{caption} \& \package{caption3}}
+%
+% \iffalse
+% --------------------------------------------------------------------------- %
+% \fi
+%
+% \clearpage
+% \let\subsubsection\subsection
+% \let\subsection\section
+%
+% \iffalse
+%<*package>
+% \fi
+%
+% \subsection{Identification}
+%
+% \begin{macrocode}
+\NeedsTeXFormat{LaTeX2e}[1994/12/01]
+\ProvidesPackage{caption}[2011/11/10 v3.2e Customizing captions (AR)]
+%\@ifundefined{PackageRedefines}{}{\PackageRedefines{caption}{caption}}
+% \end{macrocode}
+%
+% \subsection{Loading the kernel}
+%
+% \begin{macrocode}
+\RequirePackage{caption3}[=2011/08/30] % needs v1.4 or newer
+% \end{macrocode}
+%
+% \subsection{Check against incompatible document classes}
+%
+% \begin{macrocode}
+\caption@ifbool{documentclass}{}{%
+ \caption@WarningNoLine{%
+ Unsupported document class (or package) detected,\MessageBreak
+ usage of the caption package is not recommended}%
+ \caption@InfoNoLine{\string\@makecaption\space=\space\meaning\@makecaption}%
+}
+% \end{macrocode}
+%
+% \subsection{Check against incompatible packages}
+%
+% \changes{v3.0p}{2007/04/06}{Check against obsolete \package{caption2} package added}
+% \begin{macrocode}
+\@ifpackageloaded{caption2}{%
+ \caption@Error{%
+ You can't use both, the (obsolete) caption2 *and*\MessageBreak
+ the (current) caption package}%
+ \endinput
+}{}
+% \end{macrocode}
+%
+% \changes{v3.1}{2007/06/15}{Check against incompatible \package{ftcap} package added}
+% \changes{v3.1}{2007/06/15}{Check against incompatible \package{nonfloat} package added}
+% \changes{v3.1}{2007/06/18}{Check against incompatible \package{topcapt} package added}
+% \begin{macrocode}
+\caption@AtBeginDocument{%
+ \@ifpackageloaded{ftcap}{\caption@DisablePositionOption{ftcap}}{}%
+ \@ifpackageloaded{nonfloat}{\caption@DisablePositionOption{nonfloat}}{}%
+ \@ifpackageloaded{topcapt}{\caption@DisablePositionOption{topcapt}}{}}
+% \end{macrocode}
+% \begin{macro}{\caption@DisablePositionOption}
+% \changes{v3.1g}{2008/03/20}{\texttt{position=b} added}
+% \changes{v3.1h}{2008/03/29}{%
+% Name changed from \cs{caption@IncompatiblePackage} to \cs{caption@DisablePositionOption};
+% moved from package to kernel; disables the `position' option now instead of issuing a warning}
+% |\caption@DisablePositionOption|\marg{package}\par
+% disables the `position' option.
+% \begin{macrocode}
+\newcommand*\caption@DisablePositionOption[1]{%
+ \caption@InfoNoLine{%
+ `#1' package detected; setting `position=b' for compatibility reasons}%
+ \caption@setposition b%
+% \end{macrocode}
+% \begin{macrocode}
+ \DeclareCaptionOption{position}{%
+ \caption@Error{Usage of the `position' option is incompatible\MessageBreak
+ to the `#1' package}}}
+% \end{macrocode}
+% \begin{macrocode}
+\@onlypreamble\caption@DisablePositionOption
+% \end{macrocode}
+% \end{macro}
+%
+% \subsection{Declaration of options}
+%
+% \subsubsection{Options for figure and table}
+%
+% \changes{v3.0a}{2004/01/09}{Options \opt{figureposition} and \opt{tableposition} added}
+% \begin{macrocode}
+\DeclareCaptionOption{figureposition}{%
+ \captionsetup*[figure]{position=#1}}
+\@onlypreamble@key{caption}{figureposition}
+% \end{macrocode}
+% \begin{macrocode}
+\DeclareCaptionOption{tableposition}{%
+ \captionsetup*[table]{position=#1}}
+\@onlypreamble@key{caption}{tableposition}
+% \end{macrocode}
+%
+% \changes{v3.0d}{2004/08/03}{Options \opt{figurename} and \opt{tablename} added}
+% \changes{v3.1}{2007/07/04}{Options \opt{figurename} and \opt{tablename} re-written}
+% \changes{v3.1f}{2007/11/18}{Options \opt{figurename} and \opt{tablename} are now
+% available after the document preamble, too.}
+% \changes{v3.1f}{2007/11/18}{Option \opt{name} added}
+% \begin{macrocode}
+\DeclareCaptionOption{figurename}{\caption@SetName{figure}{#1}}
+\DeclareCaptionOption{tablename}{\caption@SetName{table}{#1}}
+\DeclareCaptionOption{name}{\caption@setname\@captype{#1}}
+% \end{macrocode}
+%
+% \changes{v3.1g}{2008/02/28}{Options \opt{listfigurename} and \opt{listtablename} added}
+% \begin{macrocode}
+\DeclareCaptionOption{listfigurename}{\caption@SetName{listfigure}{#1}}
+\DeclareCaptionOption{listtablename}{\caption@SetName{listtable}{#1}}
+% \end{macrocode}
+%
+% \begin{macro}{\caption@SetName}
+% \changes{v3.1}{2007/07/04}{This macro added}
+% \changes{v3.1f}{2007/11/18}{After-preamble variant added}
+% \changes{v3.1g}{2008/02/28}{Renamed from \cs{caption@SetFloatName} to \cs{caption@SetName}}
+% \changes{v3.1i}{2008/08/02}{Bugfix: Works now without \cs{addto}, too}
+% \changes{v3.2d}{2011/10/29}{Outsourced to \package{newfloat} package}
+% |\caption@SetName|\marg{cmd}\marg{value}
+% \begin{macrocode}
+\newcommand*\caption@SetName{%
+ \RequirePackage{newfloat}%
+ \newfloat@setname}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@setname[2]{\@namedef{#1name}{#2}}
+% \end{macrocode}
+% \begin{macrocode}
+\caption@AtBeginDocument{\let\caption@SetName\caption@setname}
+% \end{macrocode}
+% \end{macro}
+%
+% \changes{v3.1f}{2007/12/21}{Options \opt{figurewithin} and \opt{tablewithin} added}
+% \changes{v3.1i}{2008/04/13}{Option \opt{within} added}
+% \changes{v3.1l}{2010/01/09}{The \opt{within} options are now available within the document, too}
+% \changes{v3.1l}{2010/01/09}{The global \opt{within} option will now affect user-defined
+% floats declared with \cs{DeclareCaptionType}, too}
+%
+% \begin{macro}{\caption@DeclareWithinOption}
+% \changes{v3.1l}{2010/01/09}{This macro and its usage added}
+% \begin{macrocode}
+\newcommand*\caption@DeclareWithinOption[1]{%
+ \DeclareCaptionOption{#1within}{\caption@Within{#1}{##1}}%
+ \DeclareCaptionOptionNoValue{#1without}{\caption@Within{#1}{none}}}
+\@onlypreamble\caption@DeclareWithinOption
+% \end{macrocode}
+% \end{macro}
+% \begin{macrocode}
+\caption@DeclareWithinOption{figure}
+\caption@DeclareWithinOption{table}
+% \end{macrocode}
+% \begin{macrocode}
+\DeclareCaptionOption{within}{%
+ \RequirePackage{newfloat}%
+ \newfloatsetup{within=#1}}
+\DeclareCaptionOptionNoValue{without}{%
+ \RequirePackage{newfloat}%
+ \newfloatsetup{without}}
+% \end{macrocode}
+% \begin{macro}{\caption@Within}
+% \changes{v3.1}{2007/12/21}{This macro added}
+% \changes{v3.2d}{2011/10/29}{Outsourced to \package{newfloat} package}
+% \begin{macrocode}
+\newcommand*\caption@Within{%
+ \RequirePackage{newfloat}%
+ \newfloat@setwithin}
+% \end{macrocode}
+% \end{macro}
+%
+% \subsubsection{Miscellaneous options}
+%
+% \begin{macrocode}
+\DeclareCaptionOption*{config}[caption]{%
+ \InputIfFileExists{#1.cfg}%
+ {\typeout{*** Local configuration file #1.cfg used ***}}%
+ {\caption@Warning{Configuration file #1.cfg not found}}}
+% \end{macrocode}
+%
+% \begin{macro}{\caption@setparboxrestore}
+% \changes{v3.2}{2010/11/07}{This macro added}
+% |\caption@setparboxrestore|\marg{\purett{partial} or \purett{full}}
+% \begin{macrocode}
+\newcommand*\caption@setparboxrestore[1]{%
+ \caption@ifinlist{#1}{full}{%
+ \caption@setfullparboxrestore
+ }{\caption@ifinlist{#1}{default,light,partial}{%
+ \let\caption@parboxrestore\@secondoftwo
+ }{%
+ \caption@Error{Undefined parboxrestore `#1'}%
+ }}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@setfullparboxrestore}
+% \changes{v3.2}{2010/11/07}{This macro added}
+% |\caption@setfullparboxrestore|\par
+% This is an abbreviation for |\caption@setparboxrestore{full}|.
+% \begin{macrocode}
+\newcommand*\caption@setfullparboxrestore{%
+ \let\caption@parboxrestore\@firstoftwo}
+% \end{macrocode}
+% \end{macro}
+%
+% \changes{v3.2}{2010/11/07}{Option \opt{parboxrestore} added}
+% \begin{macrocode}
+\DeclareCaptionOption{parboxrestore}{\caption@setparboxrestore{#1}}
+\captionsetup{parboxrestore=default}
+% \end{macrocode}
+%
+% \changes{v3.1f}{2007/11/28}{Option \opt{@minipage=} added}
+% \begin{macrocode}
+\DeclareCaptionOption{@minipage}{%
+ \caption@ifinlist{#1}{auto,default}%
+ {\let\caption@if@minipage\@gobbletwo}%
+ {\caption@set@bool\caption@if@minipage{#1}}}
+\captionsetup{@minipage=default}
+% \end{macrocode}
+%
+% \subsubsection{caption v1.x compatibility options}
+% \changes{v3.1}{2007/07/21}{Option `compatibility' added}
+% \changes{v3.1}{2007/09/01}{caption v1.x compatibility options revised}
+% \changes{v3.1d}{2007/10/24}{Bugfix 07-10-24 in caption v1.x$ compatibility options}
+%
+% \begin{macrocode}
+\DeclareCaptionOption{compatibility}[1]{\caption@setbool{compatibility}{#1}}
+\@onlypreamble@key{caption}{compatibility}
+% \end{macrocode}
+%
+% \begin{macrocode}
+\DeclareCaptionOptionNoValue*{normal}{%
+ \caption@setformat{plain}%
+ \caption@setjustification{justified}}
+\DeclareCaptionOptionNoValue*{isu}{%
+ \caption@setformat{hang}%
+ \caption@setjustification{justified}}
+\DeclareCaptionOptionNoValue*{hang}{%
+ \caption@setformat{hang}%
+ \caption@setjustification{justified}}
+\DeclareCaptionOptionNoValue*{center}{%
+ \caption@setformat{plain}%
+ \caption@setjustification{centering}}
+\DeclareCaptionOptionNoValue*{anne}{%
+ \caption@setformat{plain}%
+ \caption@setjustification{centerlast}}
+\DeclareCaptionOptionNoValue*{centerlast}{%
+ \caption@setformat{plain}%
+ \caption@setjustification{centerlast}}
+% \end{macrocode}
+%
+% \begin{macrocode}
+\DeclareCaptionOptionNoValue*{scriptsize}{\def\captionfont{\scriptsize}}
+\DeclareCaptionOptionNoValue*{footnotesize}{\def\captionfont{\footnotesize}}
+\DeclareCaptionOptionNoValue*{small}{\def\captionfont{\small}}
+\DeclareCaptionOptionNoValue*{normalsize}{\def\captionfont{\normalsize}}
+\DeclareCaptionOptionNoValue*{large}{\def\captionfont{\large}}
+\DeclareCaptionOptionNoValue*{Large}{\def\captionfont{\Large}}
+% \end{macrocode}
+%
+% \begin{macrocode}
+\DeclareCaptionOptionNoValue*{up}{\l@addto@macro\captionlabelfont\upshape}
+\DeclareCaptionOptionNoValue*{it}{\l@addto@macro\captionlabelfont\itshape}
+\DeclareCaptionOptionNoValue*{sl}{\l@addto@macro\captionlabelfont\slshape}
+\DeclareCaptionOptionNoValue*{sc}{\l@addto@macro\captionlabelfont\scshape}
+\DeclareCaptionOptionNoValue*{md}{\l@addto@macro\captionlabelfont\mdseries}
+\DeclareCaptionOptionNoValue*{bf}{\l@addto@macro\captionlabelfont\bfseries}
+\DeclareCaptionOptionNoValue*{rm}{\l@addto@macro\captionlabelfont\rmfamily}
+\DeclareCaptionOptionNoValue*{sf}{\l@addto@macro\captionlabelfont\sffamily}
+\DeclareCaptionOptionNoValue*{tt}{\l@addto@macro\captionlabelfont\ttfamily}
+% \end{macrocode}
+%
+% \begin{macrocode}
+\DeclareCaptionOptionNoValue*{nooneline}{\caption@setbool{slc}{0}}
+% \end{macrocode}
+%
+% \begin{macrocode}
+\caption@setbool{ruled}{0}
+\DeclareCaptionOptionNoValue*{ruled}{\caption@setbool{ruled}{1}}
+% \end{macrocode}
+%
+% \subsubsection{caption2 v2.x compatibility options}
+% \changes{v3.0h}{2005/07/08}{caption2 \version{2.x} compatibility options added}
+% \changes{v3.1}{2007/09/01}{caption2 v2.x compatibility options revised}
+% \changes{v3.1d}{2007/10/24}{Bugfix 07-10-24 in caption v2.x$ compatibility options}
+%
+% \begin{macrocode}
+\DeclareCaptionOptionNoValue*{flushleft}{%
+ \caption@setformat{plain}%
+ \caption@setjustification{raggedright}}
+\DeclareCaptionOptionNoValue*{flushright}{%
+ \caption@setformat{plain}%
+ \caption@setjustification{raggedleft}}
+% \end{macrocode}
+% \begin{macrocode}
+\DeclareCaptionOptionNoValue*{oneline}{\caption@setbool{slc}{1}}
+% \end{macrocode}
+% \begin{macrocode}
+\DeclareCaptionOptionNoValue*{ignoreLTcapwidth}{%
+ \caption@WarningNoLine{Obsolete option `ignoreLTcapwidth' ignored}}
+% \end{macrocode}
+%
+% \subsubsection{Obsolete caption v3.0 options}
+% \changes{v3.1}{2007/05/07}{Package option \opt{caption} marked as obsolete,
+% gives error now}
+%
+% \begin{macrocode}
+\DeclareCaptionOption*{caption}{%
+ \caption@setbool{temp}{#1}%
+ \caption@ifbool{temp}{}{%
+ \caption@Error{%
+ The package option `caption=#1' is obsolete.\MessageBreak
+ Please pass this option to the subfig package instead\MessageBreak
+ and do *not* load the caption package anymore}}}
+% \end{macrocode}
+%
+% \subsubsection{fltpage package support options}
+%
+% \changes{v3.1}{2007/09/01}{Options `FPlist' \& `FPref' added}
+% With these options is controlled where the list-of entry and |\ref| resp.
+% |\pageref| or |\autoref| will link to.
+% Defaults are |FPlist=caption| and |FPref=figure| which is inconsistent,
+% but compatible to the usual behaviour of the \package{fltpage} package.
+% \begin{macrocode}
+\DeclareCaptionOption{FPlist}[1]{\caption@setFPoption{list}{#1}}
+\DeclareCaptionOption{FPref}[1]{\caption@setFPoption{ref}{#1}}
+\@onlypreamble@key{caption}{FPlist}
+\@onlypreamble@key{caption}{FPref}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@setFPoption[2]{%
+ \edef\caption@tempa{\@car#2\@nil}%
+ \caption@setbool{FP#1cap}{\if c\caption@tempa 1\else 0\fi}}
+\@onlypreamble\caption@setFPoption
+% \end{macrocode}
+% \begin{macrocode}
+\captionsetup{FPlist=caption,FPref=figure}
+% \end{macrocode}
+%
+% \subsubsection{hyperref package support options}
+%
+% \changes{v3.1}{2007/06/21}{Options `hypcap' \& `hypcapspace' added}
+% With |hypcap=off| one can turn the \package{hypcap} support off
+% (default is |on|).
+% \begin{macrocode}
+\DeclareCaptionOption{hypcap}[1]{\caption@setbool{hypcap}{#1}}
+\DeclareCaptionOption{hypcapspace}{\def\caption@hypcapspace{#1}}
+% \end{macrocode}
+% \begin{macrocode}
+\captionsetup{hypcap=1,hypcapspace=.5\baselineskip}
+% \end{macrocode}
+%
+% \subsection{\AmS{} \& \SmF{} document classes support}
+% \changes{v3.1}{2007/07/29}{\AmS\ \& \SmF\ document classes support added}
+%
+% \begin{macrocode}
+\caption@ifamsclass{%
+ \caption@InfoNoLine{AMS or SMF document class}%
+% \end{macrocode}
+% \begin{macrocode}
+ \setlength\belowcaptionskip{0pt}% set to 12pt by AMS class
+% \end{macrocode}
+% \begin{macrocode}
+}
+% \end{macrocode}
+%
+% \subsection{\KOMAScript{} document classes support}
+% \changes{v3.0a}{2004/01/18}{Minimum adaptation to \KOMAScript\ added}
+% \changes{v3.0h}{2005/08/22}{\KOMAScript\ compatibility options added}
+% \changes{v3.0i}{2005/11/17}{\KOMAScript\ compatibility commands added}
+% \changes{v3.0l}{2007/02/18}{\KOMAScript\ compatibility revised}
+% \changes{v3.1}{2007/03/17}{\KOMAScript\ compatibility options removed}
+% \changes{v3.1}{2007/04/05}{\KOMAScript\ compatibility revised \& enhanced}
+%
+% \begin{macrocode}
+\caption@ifkomaclass{%
+ \caption@InfoNoLine{KOMA-Script document class}%
+% \end{macrocode}
+%
+% Here we emulate the caption related commands and take over the caption
+% related settings from the \KOMAScript\ classes.
+%
+% \begin{macro}{\@tablecaptionabovetrue}
+% \begin{macro}{\@tablecaptionabovefalse}
+% \changes{v3.1g}{2008/03/01}{\cs{def} changed to \cs{g@addto@macro}}
+% \begin{macrocode}
+ \g@addto@macro\@tablecaptionabovetrue{\captionsetup*[table]{position=t}}
+ \g@addto@macro\@tablecaptionabovefalse{\captionsetup*[table]{position=b}}
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+%
+% \begin{macrocode}
+ \if@tablecaptionabove
+ \@tablecaptionabovetrue
+ \else
+ \@tablecaptionabovefalse
+ \fi
+% \end{macrocode}
+%
+% \begin{macro}{\onelinecaptionstrue}
+% \begin{macro}{\onelinecaptionsfalse}
+% \changes{v3.1g}{2008/03/01}{\cs{def} changed to \cs{g@addto@macro}}
+% \begin{macrocode}
+ \g@addto@macro\onelinecaptionstrue{\let\caption@ifslc\@firstoftwo}
+ \g@addto@macro\onelinecaptionsfalse{\let\caption@ifslc\@secondoftwo}
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+%
+% \begin{macrocode}
+ \ifonelinecaptions
+ \onelinecaptionstrue
+ \else
+ \onelinecaptionsfalse
+ \fi
+% \end{macrocode}
+%
+% \begin{macro}{\@captionabovetrue}
+% \begin{macro}{\@captionabovefalse}
+% \changes{v3.0j}{2006/03/21}{Bugfix 06-03-21:
+% \cs{let}\cs{caption@setposition}\cs{@gobble} added}
+% \changes{v3.0n}{2006/03/09}{Accidentally this got broken in \version{3.0m}, fixed}
+% \changes{v3.1}{2007/03/31}{We redefine \cs{captionabovetrue/false} now
+% instead of \cs{captionabove/below}}
+% \changes{v3.1g}{2008/03/01}{\cs{def} changed to \cs{g@addto@macro}}
+% \changes{v3.1k}{2009/10/09}{\opt{figureposition} and \opt{tableposition} will issue a warning now}
+% Please note that these are stronger than the \opt{position} setting, therefore we
+% override the options \opt{figureposition} and \opt{tableposition} to typeout a warning.
+% \begin{macrocode}
+ \g@addto@macro\@captionabovetrue{\let\caption@position\@firstoftwo}
+ \g@addto@macro\@captionabovefalse{\let\caption@position\@secondoftwo}
+% \end{macrocode}
+% \begin{macrocode}
+ \DeclareCaptionOption{figureposition}{%
+ \caption@WarningNoLine{Option `figureposition=#1' has no effect\MessageBreak
+ when used with a KOMA script document class}}
+ \DeclareCaptionOption{tableposition}{%
+ \caption@WarningNoLine{Option `tableposition=#1' has no effect\MessageBreak
+ when used with a KOMA script document class}}
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+%
+% \begin{macro}{\setcapindent}
+% \begin{macrocode}
+ \let\caption@KOMA@setcapindent\@setcapindent
+ \renewcommand*\@setcapindent[1]{%
+ \caption@KOMA@setcapindent{#1}\caption@setcapindent}
+% \end{macrocode}
+% \begin{macrocode}
+ \let\caption@KOMA@@setcapindent\@@setcapindent
+ \renewcommand*\@@setcapindent[1]{%
+ \caption@KOMA@@setcapindent{#1}\caption@setcapindent}
+% \end{macrocode}
+% \begin{macrocode}
+ \newcommand*\caption@setcapindent{%
+ \captionsetup{indent=\ifdim\cap@indent<\z@\z@\else\cap@indent\fi}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+ \caption@ifundefined\cap@indent{}{\caption@setcapindent}
+% \end{macrocode}
+%
+% \begin{macro}{\setcapwidth}
+% \Note{The optional argument of \cs{setcapwidth} if not supported (yet),
+% so we issue a warning if used.
+% (Since this does not seem to have an negative effect when used
+% by the \texttt{captionbeside} environment, we suppress the warning here.)}
+% \begin{macrocode}
+ \expandafter\let\expandafter\caption@KOMA@setcapwidth
+ \csname\string\setcapwidth\endcsname
+ \@namedef{\string\setcapwidth}[#1]#2{%
+ \caption@KOMA@setcapwidth[#1]{#2}\caption@setcapwidth{#1}}
+% \end{macrocode}
+% \begin{macrocode}
+ \newcommand*\caption@setcapwidth[1]{%
+ \ifx\\#1\\\else
+ \caption@ifundefined\cap@margin{}{%
+ \def\@tempa{captionbeside}%
+ \ifx\@tempa\@currenvir\else\caption@Warning{%
+ Ignoring optional argument [#1] of \string\setcapwidth\MessageBreak}%
+ \fi}%
+ \fi
+ \captionsetup{width=\cap@width}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+ \def\caption@tempa{\hsize}%
+ \ifx\caption@tempa\cap@width \else
+ \caption@setcapwidth{?}
+ \fi
+% \end{macrocode}
+%
+% \begin{macro}{\setcapmargin}
+% \begin{macrocode}
+ \expandafter\let\expandafter\caption@KOMA@setcapmargin
+ \csname\string\@setcapmargin\endcsname
+ \@namedef{\string\@setcapmargin}[#1]#2{%
+ \caption@KOMA@setcapmargin[#1]{#2}\caption@setcapmargin}
+% \end{macrocode}
+% \begin{macrocode}
+ \expandafter\let\expandafter\caption@KOMA@@setcapmargin
+ \csname\string\@@setcapmargin\endcsname
+ \@namedef{\string\@@setcapmargin}[#1]#2{%
+ \caption@KOMA@@setcapmargin[#1]{#2}\caption@setcapmargin}
+% \end{macrocode}
+% \begin{macrocode}
+ \newcommand*\caption@setcapmargin{%
+ \begingroup
+ \let\onelinecaptionsfalse\relax
+ \def\@twoside{0}%
+ \def\if@twoside{\def\@twoside{1}\iffalse}%
+ \cap@margin
+ \def\@tempa{\endgroup}%
+ \ifx\cap@left\hfill\else\ifx\cap@right\hfill\else
+ \def\hspace##1##{\@firstofone}%
+ \edef\@tempa{\endgroup
+ \noexpand\captionsetup{%
+ twoside=\@twoside,slc=0,%
+ margin={\cap@left,\cap@right}}}%
+ \fi\fi
+ \@tempa}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+ \ifx\cap@margin\relax \else
+ \caption@setcapmargin
+ \fi
+% \end{macrocode}
+%
+% \begin{macrocode}
+}
+% \end{macrocode}
+%
+% \subsection{Processing of options}
+%
+% \changes{v3.0m}{2007/03/04}{Verbose option added}
+% \changes{v3.1}{2007/07/02}{Verbose option removed from package}
+%
+% \changes{v3.1}{2007/03/17}{We do not process global options anymore}
+% \begin{macrocode}
+\caption@SetupOptions{caption}{\caption@setkeys{#1}{#2}}
+\caption@ProcessOptions*{caption}
+% \end{macrocode}
+%
+% \subsection{\cs{caption}, \cs{@caption}, and \cs{@makecaption}}
+%
+% \begin{macro}{\caption@caption}
+% \changes{v3.0f}{2005/05/22}{Bugfix: \cs{ContinuedFloat} added}
+% \changes{v3.0f}{2005/06/13}{Support of \cs{caption*[]} removed}
+% \changes{v3.0l}{2007/01/19}{Minimal support of \textsf{combine} package added}
+% \changes{v3.1}{2007/02/04}{Re-written, does not save\&use original definition anymore}
+% \changes{v3.2c}{2011/09/04}{Support of \cs{donemaincaptiontrue} from \textsf{memoir} document class added}
+% Here comes our definition of |\caption| and |\caption*|.
+% Beside the support of the starred variant this code was adapted to the
+% various packages we support.
+% We are using |\caption@dblarg| instead of |\@dblarg| so |\caption{}|
+% (with an empty arg.) will produce a list-of entry, but |\caption[]{}|
+% won't.
+% \begin{macrocode}
+\def\caption@caption{%
+ \caption@iftype
+ {\caption@checkgrouplevel\@empty\caption
+ \caption@star
+ {\@nameuse{donemaincaptiontrue}%
+ \caption@refstepcounter\@captype}%
+ {\caption@dblarg{\@caption\@captype}}}%
+ {\caption@Error{\noexpand\caption outside float}%
+ \caption@gobble}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@star}
+% \changes{v3.1}{2007/06/24}{Renamed from \cs{caption@caption} to \cs{caption@star}}
+% \changes{v3.2c}{2011/08/21}{\cs{global} removed}
+% A helper macro which processes the optional |*| after |\caption|.
+% \begin{macrocode}
+\newcommand*\caption@star[2]{%
+ \@ifstar{\caption@startrue#2[]}{#1#2}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@@caption}
+% \changes{v3.1}{2007/02/04}{Re-written, does not save\&use original definition anymore}
+% \changes{v3.1f}{2007/11/28}{Bugfix: Handling of \texttt{@minipage} flag added}
+% \changes{v3.1f}{2007/11/28}{Support of option \opt{@minipage} added}
+% \changes{v3.1g}{2008/03/16}{Internal: Uses \cs{caption@prepareanchor} now}
+% \changes{v3.2d}{2011/10/21}{Adapted to the \textsf{memoir} document class}
+% As above, our version has been adapted to the packages we support.
+% Additionally our code is nested by |\caption@beginex| \&
+% |\caption@end| instead of |\begingroup| \& |\endgroup|.
+% Furthermore we use |\caption@boxrestore| instead of |\@parboxrestore|
+% so this code also works correctly inside list-based environments
+% like |wide| \& |addmargin|. (This, and the fact that we use
+% |\linewidth| instead of |\hsize| inside |\@makecaption|, solves
+% \href{http://www.latex-project.org/cgi-bin/ltxbugs2html?pr=latex/2472}%^^A
+% {\LaTeX\ PR \texttt{latex/2472}}.)
+% \begin{macrocode}
+\long\def\caption@@caption#1[#2]#3{%
+% \end{macrocode}
+% \begin{macrocode}
+ \ifcaption@star \else
+ \caption@prepareanchor{#1}{#2}%
+ \M@gettitle{#2}%
+ \memcaptioninfo{#1}{\csname the#1\endcsname}{#2}{#3}%
+ \fi
+% \end{macrocode}
+% \begin{macrocode}
+ \par
+ \caption@beginex{#1}{#2}{#3}%
+ \caption@setfloatcapt{%
+ \caption@boxrestore
+ \if@minipage
+ \@setminipage
+ \fi
+ \caption@normalsize
+ \ifcaption@star
+ \let\caption@makeanchor\@firstofone
+ \fi
+ \@makecaption{\csname fnum@#1\endcsname}%
+ {\ignorespaces\caption@makeanchor{#3}}\par
+ \caption@if@minipage\@minipagetrue\@minipagefalse}%
+ \caption@end}
+% \end{macrocode}
+% \textsf{memoir} document class stuff:
+% \begin{macrocode}
+\providecommand\M@gettitle[1]{}
+\providecommand\memcaptioninfo[4]{}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@prepareanchor}
+% \changes{v3.1g}{2008/03/16}{This macro added}
+% \begin{macrocode}
+\newcommand*\caption@prepareanchor[2]{%
+ \caption@makecurrent{#1}{#2}%
+ \caption@ifhypcap\caption@@start{}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@makecaption}
+% \changes{v3.1i}{2008/05/06}{Usage of \cs{caption@rule} added}
+% |\@makecaption|\marg{label}\marg{text}\par
+% We do basically the same as the original code (from the standard
+% \LaTeX\ document classes), but take care of the |position=| setting
+% and use |\caption@@make| from the \package{caption} kernel to finally
+% typeset the caption.
+% \begin{macrocode}
+\long\def\caption@makecaption#1#2{%
+ \caption@iftop
+ {\vskip\belowcaptionskip}%
+ {\caption@rule\vskip\abovecaptionskip}%
+ \caption@@make{#1}{#2}%
+ \caption@iftop
+ {\vskip\abovecaptionskip\caption@rule}%
+ {\vskip\belowcaptionskip}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@redefine}
+% \changes{v3.1k}{2009/03/30}{This macro added, it contains the patching code now}
+% We only redefine |\caption| and |\@caption| if the current definitions
+% are well known, so documents written in the old (\package{caption}
+% package \version{1.x}) days (where |\caption| \& |\@caption| were not
+% redefined by us) will still compile fine.
+% For example the usage of the \package{captcont} package, which brings
+% it's own definition of |\caption*|, was quite common these days.
+% \begin{macrocode}
+\newcommand*\caption@redefine{}
+\g@addto@macro\caption@redefine{%
+% \end{macrocode}
+%
+% \begin{macrocode}
+ \caption@setbool{incompatible}{0}%
+% \end{macrocode}
+%
+% \begin{macrocode}
+ \caption@CheckCommand\caption{%
+ % ltfloat.dtx [2002/10/01 v1.1v LaTeX Kernel (Floats)]
+ \def\caption{%
+ \ifx\@captype\@undefined
+ \@latex@error{\noexpand\caption outside float}\@ehd
+ \expandafter\@gobble
+ \else
+ \refstepcounter\@captype
+ \expandafter\@firstofone
+ \fi
+ {\@dblarg{\@caption\@captype}}%
+ }}%
+% \end{macrocode}
+%
+% \begin{macrocode}
+ \caption@CheckCommand\caption{%
+ % beamerbaselocalstructure.sty,v 1.53 2007/01/28 20:48:21 tantau
+ \def\caption{
+ \ifx\@captype\@undefined
+ \@latex@error{\noexpand\caption outside figure or table}\@ehd
+ \expandafter\@gobble
+ \else
+ \refstepcounter\@captype
+ \expandafter\@firstofone
+ \fi
+ {\@dblarg{\@caption\@captype}}%
+ }}%
+% \end{macrocode}
+%
+% \begin{macrocode}
+ \caption@CheckCommand\caption{%
+ % float.sty [2001/11/08 v1.3d Float enhancements (AL)]
+ \renewcommand\caption{%
+ \ifx\@captype\@undefined
+ \@latex@error{\noexpand\caption outside float}\@ehd
+ \expandafter\@gobble
+ \else
+ \refstepcounter\@captype
+ \let\@tempf\@caption
+ \expandafter\ifx\csname @float@c@\@captype\endcsname\relax\else
+ \expandafter\expandafter\let
+ \expandafter\@tempf\csname @float@c@\@captype\endcsname
+ \fi
+ \fi
+ \@dblarg{\@tempf\@captype}}}%
+% \end{macrocode}
+%
+% \begin{macrocode}
+ \caption@CheckCommand\caption{%
+ % hyperref.sty [2007/02/27 v6.75t Hypertext links for LaTeX]
+ % hyperref.sty [2007/04/09 v6.76a Hypertext links for LaTeX]
+ % hyperref.sty [2007/06/12 v6.76h Hypertext links for LaTeX]
+ \def\caption{%
+ \ifx\@captype\@undefined
+ \@latex@error{\noexpand\caption outside float}\@ehd
+ \expandafter\@gobble
+ \else
+ \H@refstepcounter\@captype
+ \@ifundefined{fst@\@captype}{%
+ \let\Hy@tempa\@caption
+ }{%
+ \let\Hy@tempa\Hy@float@caption
+ }%
+ \expandafter\@firstofone
+ \fi
+ {\@dblarg{\Hy@tempa\@captype}}%
+ }}%
+% \end{macrocode}
+% \begin{macrocode}
+ \caption@CheckCommand\caption{%
+ % hyperref.sty [2007/08/05 v6.76j Hypertext links for LaTeX]
+ \def\caption{%
+ \ifx\@captype\@undefined
+ \@latex@error{\noexpand\caption outside float}\@ehd
+ \expandafter\@gobble
+ \else
+ \H@refstepcounter\@captype
+ \let\Hy@tempa\@caption
+ \@ifundefined{float@caption}{%
+ }{%
+ \expandafter\ifx\csname @float@c@\@captype\endcsname\float@caption
+ \let\Hy@tempa\Hy@float@caption
+ \fi
+ }%
+ \expandafter\@firstofone
+ \fi
+ {\@dblarg{\Hy@tempa\@captype}}%
+ }}%
+% \end{macrocode}
+% \begin{macrocode}
+ \caption@CheckCommand\caption{%
+ % memhfixc.sty [2010/08/17 v1.15 nameref/hyperref package fixes for memoir class]
+ % \let\m@moldhypcaption\caption
+ \renewcommand{\caption}{\donemaincaptiontrue\m@moldhypcaption}}%
+% \end{macrocode}
+% \begin{macrocode}
+ \caption@IfCheckCommand{}{%
+ \caption@InfoNoLine{%
+ Incompatible package detected (regarding \string\caption).\MessageBreak
+ \string\caption\space=\space\meaning\caption}%
+ \caption@setbool{incompatible}{1}}%
+% \end{macrocode}
+%
+% \begin{macrocode}
+ \caption@CheckCommand\@caption{%
+ % ltfloat.dtx [2002/10/01 v1.1v LaTeX Kernel (Floats)]
+ \long\def\@caption#1[#2]#3{%
+ \par
+ \addcontentsline{\csname ext@#1\endcsname}{#1}%
+ {\protect\numberline{\csname the#1\endcsname}{\ignorespaces #2}}%
+ \begingroup
+ \@parboxrestore
+ \if@minipage
+ \@setminipage
+ \fi
+ \normalsize
+ \@makecaption{\csname fnum@#1\endcsname}{\ignorespaces #3}\par
+ \endgroup}}%
+% \end{macrocode}
+%
+% \begin{macrocode}
+ \caption@CheckCommand\@caption{%
+ % beamerbaselocalstructure.sty,v 1.53 2007/01/28 20:48:21 tantau
+ \long\def\@caption#1[#2]#3{% second argument ignored
+ \par\nobreak
+ \begingroup
+ \@parboxrestore
+ \if@minipage
+ \@setminipage
+ \fi
+ \beamer@makecaption{#1}{\ignorespaces #3}\par\nobreak
+ \endgroup}}%
+% \end{macrocode}
+%
+% \begin{macrocode}
+ \caption@CheckCommand\@caption{%
+ % magyar.ldf [2005/03/30 v1.4j Magyar support from the babel system]
+ \long\def\@caption#1[#2]#3{%
+ \csname par\endcsname
+ \addcontentsline{\csname ext@#1\endcsname}{#1}%
+ {\protect\numberline{\csname the#1\endcsname.}{\ignorespaces #2}}%
+ \begingroup
+ \@parboxrestore
+ \if@minipage
+ \@setminipage
+ \fi
+ \normalsize
+ \@makecaption{\csname fnum@#1\endcsname}%
+ {\ignorespaces #3}\csname par\endcsname
+ \endgroup}}%
+% \end{macrocode}
+%
+% \begin{macrocode}
+% \caption@CheckCommand\float@caption{%
+% % float.sty [2001/11/08 v1.3d Float enhancements (AL)]
+% \long\def\float@caption#1[#2]#3{%
+% \addcontentsline{\@nameuse{ext@#1}}{#1}%
+% {\protect\numberline{\@nameuse{the#1}}{\ignorespaces #2}}
+% \global\setbox\@floatcapt\vbox\bgroup\@parboxrestore
+% \normalsize\@fs@capt{\@nameuse{fnum@#1}}{\ignorespaces #3}%
+% \@ifnextchar[{\float@ccon}{\egroup}}%
+% \long\def\float@ccon[#1]{#1\par\egroup}}%
+% \end{macrocode}
+%
+% \begin{macrocode}
+ \caption@CheckCommand\@caption{%
+ % hyperref.sty [2007/02/27 v6.75t Hypertext links for LaTeX]
+ \long\def\@caption#1[#2]#3{%
+ \hyper@makecurrent{\@captype}%
+ \def\@currentlabelname{#2}%
+ \par\addcontentsline{\csname ext@#1\endcsname}{#1}{%
+ \protect\numberline{\csname the#1\endcsname}{\ignorespaces #2}%
+ }%
+ \begingroup
+ \@parboxrestore
+ \if@minipage
+ \@setminipage
+ \fi
+ \normalsize
+ \@makecaption{\csname fnum@#1\endcsname}{%
+ \ignorespaces
+ \ifHy@nesting
+ \hyper@@anchor{\@currentHref}{#3}%
+ \else
+ \Hy@raisedlink{\hyper@@anchor{\@currentHref}{\relax}}#3%
+ \fi
+ }%
+ \par
+ \endgroup
+ }}%
+% \end{macrocode}
+% \begin{macrocode}
+ \caption@CheckCommand\@caption{%
+ % hyperref.sty [2007/04/09 v6.76a Hypertext links for LaTeX]
+ % hyperref.sty [2007/06/12 v6.76h Hypertext links for LaTeX]
+ % hyperref.sty [2007/08/05 v6.76j Hypertext links for LaTeX]
+ \long\def\@caption#1[#2]#3{%
+ \expandafter\ifx\csname if@capstart\expandafter\endcsname
+ \csname iftrue\endcsname
+ \global\let\@currentHref\hc@currentHref
+ \else
+ \hyper@makecurrent{\@captype}%
+ \fi
+ \def\@currentlabelname{#2}%
+ \par\addcontentsline{\csname ext@#1\endcsname}{#1}{%
+ \protect\numberline{\csname the#1\endcsname}{\ignorespaces #2}%
+ }%
+ \begingroup
+ \@parboxrestore
+ \if@minipage
+ \@setminipage
+ \fi
+ \normalsize
+ \expandafter\ifx\csname if@capstart\expandafter\endcsname
+ \csname iftrue\endcsname
+ \global\@capstartfalse
+ \@makecaption{\csname fnum@#1\endcsname}{\ignorespaces#3}%
+ \else
+ \@makecaption{\csname fnum@#1\endcsname}{%
+ \ignorespaces
+ \ifHy@nesting
+ \hyper@@anchor{\@currentHref}{#3}%
+ \else
+ \Hy@raisedlink{\hyper@@anchor{\@currentHref}{\relax}}#3%
+ \fi
+ }%
+ \fi
+ \par
+ \endgroup
+ }}%
+% \end{macrocode}
+% \begin{macrocode}
+ \caption@CheckCommand\@caption{%
+ % hyperref.sty [2009/11/27 v6.79k Hypertext links for LaTeX]
+ \long\def\@caption#1[#2]#3{%
+ \expandafter\ifx\csname if@capstart\expandafter\endcsname
+ \csname iftrue\endcsname
+ \global\let\@currentHref\hc@currentHref
+ \else
+ \hyper@makecurrent{\@captype}%
+ \fi
+ \def\@currentlabelname{#2}%
+ \par\addcontentsline{\csname ext@#1\endcsname}{#1}{%
+ \protect\numberline{\csname the#1\endcsname}{\ignorespaces #2}%
+ }%
+ \begingroup
+ \@parboxrestore
+ \if@minipage
+ \@setminipage
+ \fi
+ \normalsize
+ \expandafter\ifx\csname if@capstart\expandafter\endcsname
+ \csname iftrue\endcsname
+ \global\@capstartfalse
+ \@makecaption{\csname fnum@#1\endcsname}{\ignorespaces#3}%
+ \else
+ \@makecaption{\csname fnum@#1\endcsname}{%
+ \ignorespaces
+ \ifHy@nesting
+ \expandafter\hyper@@anchor\expandafter{\@currentHref}{#3}%
+ \else
+ \Hy@raisedlink{%
+ \expandafter\hyper@@anchor\expandafter{\@currentHref}{\relax}%
+ }%
+ #3%
+ \fi
+ }%
+ \fi
+ \par
+ \endgroup
+ }}%
+% \end{macrocode}
+% \begin{macrocode}
+ \caption@CheckCommand\@caption{%
+ % hyperref.sty [2009/12/09 v6.79m Hypertext links for LaTeX]
+ % hyperref.sty [2009/12/28 v6.79z Hypertext links for LaTeX]
+ \long\def\@caption#1[#2]#3{%
+ \expandafter\ifx\csname if@capstart\expandafter\endcsname
+ \csname iftrue\endcsname
+ \global\let\@currentHref\hc@currentHref
+ \else
+ \hyper@makecurrent{\@captype}%
+ \fi
+ \@ifundefined{NR@gettitle}{%
+ \def\@currentlabelname{#2}%
+ }{%
+ \NR@gettitle{#2}%
+ }%
+ \par\addcontentsline{\csname ext@#1\endcsname}{#1}{%
+ \protect\numberline{\csname the#1\endcsname}{\ignorespaces #2}%
+ }%
+ \begingroup
+ \@parboxrestore
+ \if@minipage
+ \@setminipage
+ \fi
+ \normalsize
+ \expandafter\ifx\csname if@capstart\expandafter\endcsname
+ \csname iftrue\endcsname
+ \global\@capstartfalse
+ \@makecaption{\csname fnum@#1\endcsname}{\ignorespaces#3}%
+ \else
+ \@makecaption{\csname fnum@#1\endcsname}{%
+ \ignorespaces
+ \ifHy@nesting
+ \expandafter\hyper@@anchor\expandafter{\@currentHref}{#3}%
+ \else
+ \Hy@raisedlink{%
+ \expandafter\hyper@@anchor\expandafter{%
+ \@currentHref
+ }{\relax}%
+ }%
+ #3%
+ \fi
+ }%
+ \fi
+ \par
+ \endgroup
+ }}%
+% \end{macrocode}
+%
+% \begin{macrocode}
+ \caption@CheckCommand\@caption{%
+ % nameref.sty [2006/12/27 v2.28 Cross-referencing by name of section]
+ \long\def\@caption#1[#2]{%
+ \def\@currentlabelname{#2}%
+ \NR@@caption{#1}[{#2}]%
+ }}%
+% \end{macrocode}
+% \begin{macrocode}
+ \caption@CheckCommand\@caption{%
+ % nameref.sty [2009/11/27 v2.32 Cross-referencing by name of section]
+ \long\def\@caption#1[#2]{%
+ \NR@gettitle{#2}%
+ \NR@@caption{#1}[{#2}]%
+ }}%
+% \end{macrocode}
+%
+% \begin{macrocode}
+ \caption@CheckCommand\@caption{%
+ % subfigure.sty [2002/07/30 v2.1.4 subfigure package]
+ \long\def\@caption#1[#2]#3{%
+ \@ifundefined{if#1topcap}%
+ {\subfig@oldcaption{#1}[{#2}]{#3}}%
+ {\@nameuse{if#1topcap}%
+ \@listsubcaptions{#1}%
+ \subfig@oldcaption{#1}[{#2}]{#3}%
+ \else
+ \subfig@oldcaption{#1}[{#2}]{#3}%
+ \@listsubcaptions{#1}%
+ \fi}}}%
+% \end{macrocode}
+%
+% \begin{macrocode}
+ \caption@CheckCommand\@caption{%
+ % subfig.sty [2005/06/28 ver: 1.3 subfig package]
+ \def\@caption{\caption@}%
+% \long\def\caption@#1[#2]#3{%
+% \@ifundefined{caption@setfloattype}%
+% \caption@settype
+% \caption@setfloattype
+% \@captype
+% \sf@ifpositiontop{%
+% \@listsubcaptions{#1}%
+% \sf@old@caption{#1}[{#2}]{#3}%
+% }{%
+% \sf@old@caption{#1}[{#2}]{#3}%
+% \@listsubcaptions{#1}%
+% }}%
+ }%
+% \end{macrocode}
+%
+% \begin{macrocode}
+ \caption@IfCheckCommand{}{%
+ \caption@InfoNoLine{%
+ Incompatible package detected (regarding \string\@caption).\MessageBreak
+ \string\@caption\space=\space\meaning\@caption}%
+ \caption@setbool{incompatible}{1}}%
+% \end{macrocode}
+%
+% The option |compatibility=| will override the compatibility mode.
+% \begin{macrocode}
+ \caption@ifundefined\caption@ifcompatibility
+ {\let\caption@ifcompatibility\caption@ifincompatible
+ \let\caption@tempa\caption@WarningNoLine}%
+ {\let\caption@tempa\@gobble}% suppress warning
+% \end{macrocode}
+%
+% \begin{macrocode}
+ \caption@ifcompatibility{%
+% \end{macrocode}
+%
+% \begin{macrocode}
+ \caption@tempa{%
+ \noexpand\caption will not be redefined since it's already\MessageBreak
+ redefined by a document class or package which is\MessageBreak
+ unknown to the caption package}%
+% \end{macrocode}
+%
+% \begin{macrocode}
+ \renewcommand*\caption@redefine{}%
+% \end{macrocode}
+%
+% |\ContinuedFloat| is not supported in compatibility mode.
+% \begin{macrocode}
+ \renewcommand*\caption@ContinuedFloat[1]{%
+ \caption@Error{Not available in compatibility mode}}%
+% \end{macrocode}
+%
+% |\caption@start| is not supported in compatibility mode.
+% \begin{macrocode}
+ \caption@AtBeginDocument*{%
+ \let\caption@start\relax
+ \caption@ifundefined\caption@ORI@capstart{}{%
+ \caption@Debug{%
+ Restore hypcap definition of \string\capstart\@gobble}%
+ \let\capstart\caption@ORI@capstart}%
+ \caption@ifundefined\caption@ORI@float@makebox{}{%
+ \caption@Debug{%
+ Restore hyperref redefinition of \string\float@makebox\@gobble}%
+ \let\float@makebox\caption@ORI@float@makebox}%
+ }%
+% \end{macrocode}
+%
+% \begin{macro}{\caption@star}
+% We redefine |\caption@star| here so it does not make any harm.
+% \begin{macrocode}
+ \renewcommand*\caption@star[2]{#1#2}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+ }{%
+% \end{macrocode}
+%
+% \begin{macrocode}
+ \caption@ifincompatible{%
+ \caption@WarningNoLine{%
+ Forced redefinition of \noexpand\caption since the\MessageBreak
+ unsupported(!) package option `compatibility=false'\MessageBreak
+ was given}%
+ }{}%
+% \end{macrocode}
+%
+% \begin{macro}{\caption}
+% \begin{macro}{\@caption}
+% \begin{macrocode}
+ \renewcommand*\caption@redefine{%
+ \let\caption\caption@caption
+ \let\@caption\caption@@caption}%
+ \caption@redefine
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+%
+% \begin{macrocode}
+ }%
+% \end{macrocode}
+% \begin{macrocode}
+ \caption@AtBeginDocument*{%
+ \let\caption@ORI@capstart\@undefined
+ \let\caption@ORI@float@makebox\@undefined}%
+% \end{macrocode}
+%
+% \begin{macro}{\@xfloat}
+% \changes{v3.1}{2007/05/09}{This re-definition added}
+% \changes{v3.1b}{2007/09/22}{Will now be redefined in compatibility mode, too}
+% We redefine |\@xfloat| so inside floating environments our
+% type-specific options will be used, a \package{hyperref}
+% anchor will be set etc.
+% \begin{macrocode}
+ \let\caption@ORI@xfloat\@xfloat
+ \def\@xfloat#1[#2]{%
+ \caption@ORI@xfloat{#1}[#2]%
+ \caption@settype{#1}}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+}
+% \end{macrocode}
+% \end{macro}
+%
+% Some packages (like the \package{hyperref} package for example) redefines
+% |\caption| and |\@caption|, too.
+% So we have to use |\AtBeginDocument| here, so we can make sure
+% our definition is the one which will be valid at last.
+% \begin{macrocode}
+\caption@AtBeginDocument{\caption@redefine}
+% \end{macrocode}
+%
+% \begin{macro}{\@makecaption}
+% \begin{macrocode}
+\let\@makecaption\caption@makecaption
+% \end{macrocode}
+% \end{macro}
+%
+% \subsection{\cs{captionof} and \cs{captionlistentry}}
+%
+% \changes{v3.0d}{2004/08/03}{Option \opt{type=} added}
+% \changes{v3.1}{2007/06/25}{Option \opt{type*=} added}
+% \changes{v3.1f}{2007/11/16}{Option \opt{subtype} \& \opt{subtype*} added}
+% \changes{v3.2}{2010/10/24}{Bugfix 10-10-17: Option \opt{type=} uses \cs{setcaptiontype} instead of \cs{caption@settype} now}
+%
+% \begin{macrocode}
+\caption@AtBeginDocument{%
+% \end{macrocode}
+% \begin{macrocode}
+ \DeclareCaptionOption{type}{\setcaptiontype{#1}}%
+ \DeclareCaptionOption{type*}{\setcaptiontype*{#1}}%
+% \end{macrocode}
+% \begin{macrocode}
+ \DeclareCaptionOptionNoValue{subtype}{\setcaptionsubtype\relax}%
+ \DeclareCaptionOptionNoValue{subtype*}{\setcaptionsubtype*}%
+% \end{macrocode}
+% \begin{macrocode}
+}
+% \end{macrocode}
+%
+% \emph{Important Note:}
+% Like |\captionof| the option |type=| should only be used inside a
+% group, box, or environment and does not check if the argument is a valid
+% floating environment or not.
+%
+% \begin{macro}{\setcaptiontype}
+% \changes{v3.2}{2010/10/24}{This macro added}
+% Like |\captionsetup{type=xxx}|, but also works if \cs{captionsetup} was redefined.
+% \begin{macrocode}
+\newcommand\setcaptiontype{%
+ \caption@boxrestore@mini
+ \caption@settype}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\setcaptionsubtype}
+% \changes{v3.2a}{2011/08/15}{This macro added}
+% Same, but sets the sub-type.
+% \begin{macrocode}
+\newcommand\setcaptionsubtype{%
+ \caption@iftype
+ \caption@setsubtype
+ {\caption@Error{\noexpand\setcaptionsubtype outside float}}}%
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand\caption@setsubtype{%
+ \@ifstar
+ {\caption@@settype{sub}*{sub\@captype}}%
+ {\caption@@settype{sub}{sub\@captype}}}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@settype}
+% \changes{v3.1}{2007/05/09}{This macro added}
+% \changes{v3.1b}{2007/09/22}{Usage of \cs{caption@xlabel} added}
+% \changes{v3.1d}{2007/10/23}{Error message for \cs{caption@checkgrouplevel} revised}
+% \changes{v3.1f}{2007/11/16}{\cs{caption@setsubtype} added}
+% \changes{v3.1f}{2007/12/03}{Crappy \cs{caption@iftypewarning} replaced}
+% \changes{v3.1g}{2008/01/12}{Usage of \cs{ifcaptionsetup@star} added}
+% \changes{v3.2}{2010/10/26}{Error message moved from here to \cs{caption@refstepcounter}}
+% |\caption@settype*|\marg{type}\par
+% sets |\@captype| and executes the options associated with it
+% (using |\caption@setoptions|).
+% Furthermore we check |\currentgrouplevel| (if avail),
+% redefine |\@currentlabel| so a |\label| before |\caption| will result
+% in a hint instead of a wrong reference, and
+% use the macro |\caption@|(|sub|)|typehook| (which will be used by our
+% \package{float} package support).\par
+% The non-starred version sets a \package{hyperref} anchor additionally
+% (if |hypcap=true| and the \package{hypcap} package is not loaded).
+% \begin{macrocode}
+\newcommand*\caption@settype{%
+ \caption@@settype{}}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@@settype[1]{%
+ \caption@teststar{\caption@@@settype{#1}}\@firstoftwo\@secondoftwo}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@@@settype[3]{%
+% #1 = "" or "sub"
+% #2 = \@firstoftwo in star form, \@secondoftwo otherwise
+% #3 = <type>, e.g. "figure" or "table"
+ \caption@Debug{#1type=#3}%
+ \caption@checkgrouplevel{#1}{%
+ \captionsetup{#1type#2*\@empty=...}#2{ or
+ \@backslashchar#1captionof}{}}%
+% \end{macrocode}
+% \begin{macrocode}
+ \edef\caption@tempa{#3}%
+ \expandafter\ifx\csname @#1captype\endcsname\caption@tempa \else
+ \ifcaptionsetup@star\else\@nameuse{caption@#1type@warning}\fi
+ \fi
+ \expandafter\let\csname @#1captype\endcsname\caption@tempa
+% \end{macrocode}
+% \begin{macrocode}
+ \@nameuse{caption@#1typehook}%
+% \end{macrocode}
+% \begin{macrocode}
+ \caption@setoptions{#3}%
+ \ifx\caption@opt\relax
+ \@nameundef{caption@#1type@warning}%
+ \else
+ \@namedef{caption@#1type@warning}{\caption@Warning{%
+ The #1caption type was already set to
+ `\csname @#1captype\endcsname'\MessageBreak}}%
+ \fi
+% \end{macrocode}
+% \begin{macrocode}
+ \let\caption@ifrefstepcounter\@secondoftwo
+ #2{}{%
+ \let\@currentlabel\caption@undefinedlabel
+% \let\@currentHlabel\@undefined
+ \ifx\caption@x@label\@undefined
+ \let\caption@x@label\label
+ \let\label\caption@xlabel
+ \fi
+ \caption@start}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@typehook}
+% Hook, will be extended later on, e.g.~by our \package{float} package
+% support.
+% \begin{macrocode}
+\newcommand*\caption@typehook{}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@iftype}
+% \changes{v3.1}{2007/04/11}{This macro and its usage added}
+% Since we often need to check if |\@captype| is defined (means: we
+% are inside a floating environment) this helper macro was introduced.
+% \begin{macrocode}
+\newcommand*\caption@iftype{%
+ \caption@ifundefined\@captype\@secondoftwo\@firstoftwo}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@checkgrouplevel}
+% \changes{v3.1}{2007/07/15}{This macro and its usage added}
+% \changes{v3.1f}{2007/11/28}{Error changed to warning (compatibility)}
+% Checks if |\captionsetup{type=|\ldots|}| or |\caption| is done
+% inside a group or not -- in the latter case a warning message will
+% be issued. (needs \eTeX)
+% \begin{macrocode}
+\begingroup\expandafter\expandafter\expandafter\endgroup
+\expandafter\ifx\csname currentgrouplevel\endcsname\relax
+ \caption@Debug{TeX engine: TeX}
+ \let\caption@checkgrouplevel\@gobbletwo
+\else
+ \caption@Debug{TeX engine: e-TeX}
+ \newcommand*\caption@checkgrouplevel[2]{%
+ \@ifundefined{#1caption@grouplevel}{%
+ \caption@ifundefined\caption@grouplevel{\let\caption@grouplevel\z@}{}%
+ \ifnum\currentgrouplevel>\caption@grouplevel\relax
+ \expandafter\edef\csname #1caption@grouplevel\endcsname{%
+ \the\currentgrouplevel}%
+ \else
+ \caption@Warning{\string#2\MessageBreak outside box or environment}%
+ \fi
+ }{}}
+\fi
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@undefinedlabel}
+% \changes{v3.1}{2007/07/03}{This macro and its usage added}
+% \changes{v3.1b}{2007/09/22}{Contents changed to \texttt{??}}
+% \changes{v3.1i}{2008/04/13}{Contents changed to \cs{caption@xref}(\ldots)}
+% \changes{v3.1k}{2009/03/30}{Bugfix 08-12-08: \cs{caption@xref} is robust now}
+% \changes{v3.2c}{2011/09/13}{Text changed from `before' to `without proper'}
+% This label will be used for |\currentlabel| inside (floating) environments
+% as default. (see above)
+% \iffalse\Note{All commands used have to be robust here.}\fi
+% \begin{macrocode}
+\newcommand*\caption@undefinedlabel{%
+ \protect\caption@xref{\caption@labelname}{\on@line}}
+% \end{macrocode}
+% \begin{macrocode}
+\DeclareRobustCommand*\caption@xref[2]{%
+ \caption@WarningNoLine{\noexpand\label without proper \string\caption#2}%
+ \@setref\relax\@undefined{#1}}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@labelname{??}
+% \end{macrocode}
+% \end{macro}
+% \begin{macro}{\caption@xlabel}
+% \changes{v3.1b}{2007/09/22}{This macro and its usage added}
+% \changes{v3.1f}{2007/11/11}{Revised}
+% \changes{v3.1i}{2008/04/13}{Bugfix: \cs{pageref} should always work now}
+% \changes{v3.2c}{2011/08/19}{Works with optional arguments now, too}
+% The new code of |\label| inside floating environments.
+% |\label| will be redefined using |\caption@withoptargs|, so
+% |#1| are the optional arguments (if any), and
+% |#2| is the mandatory argument here.
+% \begin{macrocode}
+\newcommand*\caption@xlabel{%
+ \caption@withoptargs\caption@@xlabel}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@@xlabel[2]{%
+ \caption@@@xlabel
+ \def\caption@labelname{#2}%
+ \caption@x@label#1{#2}}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@@@xlabel{%
+ \global\let\caption@@@xlabel\@empty
+ \@bsphack
+ \protected@write\@auxout{}%
+ {\string\providecommand*\string\caption@xref[2]{%
+ \string\@setref\string\relax\string\@undefined{\string##1}}}%
+ \@esphack}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\captionof}
+% \changes{v3.1}{2007/05/09}{Uses \cs{caption@settype} instead of \cs{def}\cs{@captype}}
+% \changes{v3.1c}{2007/09/22}{Bugfix: Redefinition of \cs{caption@setfloatcapt} removed}
+% \changes{v3.1e}{2007/10/30}{Better compatibility: Will be defined with \cs{AtBeginDocument} now}
+% \changes{v3.2}{2010/10/24}{Bugfix 10-10-17: Uses \cs{setcaptiontype} instead of \cs{caption@settype} now}
+% |\captionof|\marg{type}\oarg{lst\_entry}\marg{heading}\\
+% |\captionof*|\oarg{lst\_entry}\marg{heading}\par
+% \Note{This will be defined with \cs{AtBeginDocument} so
+% \cs{usepackage}\csmarg{caption,capt-of} will still work.
+% (Compatibility to \version{1.x})}
+% \begin{macrocode}
+\caption@AtBeginDocument{%
+ \def\captionof{\caption@teststar\caption@of{\caption*}\caption}}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@of[2]{\setcaptiontype*{#2}#1}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\captionlistentry}
+% \changes{v3.1}{2007/07/28}{This macro added}
+% \changes{v3.1f}{2007/11/16}{Bugfix 07-11-09: `space hack' added}
+% \changes{v3.1g}{2008/01/20}{Starred variant added}
+% \changes{v3.1l}{2010/01/09}{Adapted to current version of nameref package}
+% |\captionlistentry|\oarg{float type}\marg{list entry}\\
+% |\captionlistentry*|\oarg{float type}\marg{list entry}
+% \begin{macrocode}
+\newcommand*\captionlistentry{%
+ \caption@teststar\@captionlistentry\@firstoftwo\@secondoftwo}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\@captionlistentry[1]{%
+ \@testopt{\caption@listentry{#1}}\@captype}
+% \end{macrocode}
+% \begin{macrocode}
+\def\caption@listentry#1[#2]#3{%
+ \@bsphack
+ #1{\caption@gettitle{#3}}%
+ {\caption@refstepcounter{#2}%
+ \caption@makecurrent{#2}{#3}}%
+ \caption@addcontentsline{#2}{#3}%
+ \@esphack}
+% \end{macrocode}
+% \end{macro}
+%
+% \subsection{\cs{captionbox}}
+%
+% \begin{macro}{\captionbox}
+% \changes{v3.2}{2010/12/17}{This macro added}
+% \changes{v3.2a}{2011/08/16}{\cs{captionsetup} replaces with \cs{captionbox@settype} and \cs{caption@setposition}}
+% A |\parbox| with contents and caption, separated by an invisible |\hrule|.
+% \begin{macrocode}
+\newcommand*\captionbox{%
+ \let\captionbox@settype\@gobble
+ \caption@withoptargs\caption@box}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand\caption@box[2]{%
+ \@testopt{\caption@ibox{#1}{#2}}{\wd\@tempboxa}}
+% \end{macrocode}
+% \begin{macrocode}
+\long\def\caption@ibox#1#2[#3]{%
+ \@testopt{\caption@iibox{#1}{#2}{#3}}\captionbox@hj@default}
+% \end{macrocode}
+% \begin{macrocode}
+\long\def\caption@iibox#1#2#3[#4]#5{%
+ \setbox\@tempboxa\hbox{#5}%
+ \begingroup
+ \captionbox@settype*% set \caption@position
+ \caption@iftop{%
+ \endgroup
+ \parbox[t]{#3}{%
+ \captionbox@settype\relax
+ \caption@setposition t%
+ \vbox{\caption#1{#2}}%
+ \captionbox@hrule
+ \csname caption@hj@#4\endcsname
+ \unhbox\@tempboxa}%
+ }{%
+ \endgroup
+ \parbox[b]{#3}{%
+ \captionbox@settype\relax
+ \caption@setposition b%
+ \csname caption@hj@#4\endcsname
+ \unhbox\@tempboxa
+ \captionbox@hrule
+ \vtop{\caption#1{#2}}}%
+ }}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\captionbox@hj@default{c}
+\newcommand*\captionbox@hrule{\hrule\@height\z@\relax}
+% \end{macrocode}
+% \begin{macrocode}
+\providecommand*\caption@hj@c{\centering}
+\providecommand*\caption@hj@l{\raggedright}
+\providecommand*\caption@hj@r{\raggedleft}
+\providecommand*\caption@hj@s{}
+% \end{macrocode}
+% \end{macro}
+%
+% \subsection{\cs{ContinuedFloat}}
+%
+% \begin{macro}{\ContinuedFloat}
+% \changes{v3.0f}{2005/06/11}{%
+% Call of \cs{caption@ContinuedFloat} added}
+% \changes{v3.0i}{2005/11/12}{%
+% Optional argument and call of \cs{caption@@ContinuedFloat} added}
+% \changes{v3.0g}{2005/06/28}{%
+% Bugfix: \cs{newcounter} replaced by \cs{newcount}}
+% \changes{v3.1}{2007/07/02}{Format of \package{hyperref} extension changed}
+% \changes{v3.1}{2007/07/07}{\cs{caption@setoptions} added}
+% \changes{v3.1g}{2008/01/29}{Starred variant and hook \cs{sf@ContinuedFloat} added}
+% |\ContinuedFloat|\\
+% |\ContinuedFloat*|\par
+% This mainly decrements the appropriate counter and increments the
+% continuation counter instead.
+% Furthermore we set |\caption@resetContinuedFloat| to |\@gobble| so the
+% continuation counter will not be reset to zero inside |\caption@refstepcounter|.
+% Please forget about the optional argument, it was never working well, is
+% incompatible to the \package{subfig} package, but is still there for
+% compatibility reasons.
+% \Note{The definition of \cs{ContinuedFloat} itself is compatible
+% to the one inside the \package{subfig} package, except for the
+% starred variant and the optional argument.}
+% When the \package{hyperref} package is used we have the problem
+% that the usage of |\ContinuedFloat| will create duplicate
+% hyper links -- |\@currentHref| will be the same for the main float and
+% the continued ones. So we have to make sure unique labels and references
+% will be created each time. We do this by extending |\theHfigure| and
+% |\theHtable|, so for continued floats the scheme
+% \begin{quote}\meta{type}|.|\meta{type \#}|\alph{|\meta{continued \#}|}|\end{quote}
+% will be used instead of
+% \begin{quote}\meta{type}|.|\meta{type \#}\quad\quad.\end{quote}
+% \par{\small(This implementation follows an idea from Steven Douglas Cochran.)}
+% \Note{This does not help if the \package{hyperref} package option
+% \texttt{naturalnames=true} is set.}
+% \begin{macrocode}
+\def\ContinuedFloat{%
+ \@ifnextchar[\@Continued@Float\@ContinuedFloat}
+% \end{macrocode}
+% \begin{macrocode}
+\def\@Continued@Float[#1]{\addtocounter{#1}\m@ne}
+% \end{macrocode}
+% \begin{macrocode}
+\def\@ContinuedFloat{%
+ \caption@iftype
+ {\addtocounter\@captype\m@ne
+ \caption@ContinuedFloat\@captype}%
+ {\caption@Error{\noexpand\ContinuedFloat outside float}}}
+% \end{macrocode}
+% \begin{macrocode}
+\def\caption@ContinuedFloat#1{%
+ \@ifstar{\caption@Continued@Float@{#1}}{\caption@Continued@Float{#1}}}
+% \end{macrocode}
+% \begin{macrocode}
+\def\caption@Continued@Float@{%
+ \addtocounter\@captype\@ne
+ \@stpelt{ContinuedFloat}\stepcounter{ContinuedFloat}%
+ \def\caption@resetContinuedFloat##1{\xdef\caption@CFtype{##1}}%
+ \caption@@ContinuedFloat}
+% \end{macrocode}
+% \begin{macrocode}
+\def\caption@Continued@Float#1{%
+ \edef\caption@tempa{#1}%
+ \ifx\caption@tempa\caption@CFtype
+ \stepcounter{ContinuedFloat}%
+ \let\caption@resetContinuedFloat\@gobble
+ \caption@@ContinuedFloat{#1}%
+ \sf@ContinuedFloat{#1}%
+ \else
+ \caption@Error{Continued `#1' after `\caption@CFtype'}%
+ \fi}
+% \end{macrocode}
+% \begin{macrocode}
+\def\caption@@ContinuedFloat#1{%
+ \expandafter\l@addto@macro\csname the#1\endcsname\theContinuedFloat
+ \@ifundefined{theH#1}{}{%
+ \expandafter\l@addto@macro\csname theH#1\endcsname{%
+ \@alph\c@ContinuedFloat}}%
+ \caption@setoptions{ContinuedFloat}%
+ \caption@setoptions{continued#1}}
+% \end{macrocode}
+% \begin{macrocode}
+\providecommand*\sf@ContinuedFloat[1]{}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@CFtype{??}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\theContinuedFloat}
+% Its preset to \cs{@empty}, so usually the continuation counter is not
+% included in the caption label or references.
+% \begin{macrocode}
+\newcounter{ContinuedFloat}
+\let\theContinuedFloat\@empty
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@resetContinuedFloat}
+% |\caption@resetContinuedFloat|\marg{type}\par
+% If a continuation counter is defined, we reset it.
+% (This one will be called inside |\@caption|.)
+% \begin{macrocode}
+\newcommand*\caption@resetContinuedFloat[1]{%
+ \@stpelt{ContinuedFloat}\xdef\caption@CFtype{#1}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\phantomcaption}
+% \changes{v3.2}{2010/10/31}{Bugfix 10-09-01b: This macro added}
+% |\phantomcaption|\par
+% Use this one for figures with subcaptions but without main caption.
+% \begin{macrocode}
+\newcommand\phantomcaption{%
+ \caption@iftype
+ {\caption@refstepcounter\@captype}%
+ {\caption@Error{\noexpand\phantomcaption outside float}}}%
+% \end{macrocode}
+% \end{macro}
+%
+% \subsection{Internal helpers}
+%
+% \begin{macro}{\caption@refstepcounter}
+% \changes{v3.1}{2007/07/28}{This macro added}
+% \changes{v3.2}{2010/10/26}{Error message moved from \cs{caption@@@settype} to here}
+% Resets the continuation counter, increments the float (i.e. |figure| or
+% |table|) counter, and sets the |refstepcounter| flag.
+% \begin{macrocode}
+\newcommand*\caption@refstepcounter[1]{%
+ \@ifundefined{c@#1}%
+ {\caption@Error{No float type '#1' defined}}%
+ {\caption@resetContinuedFloat{#1}%
+ \caption@@refstepcounter{#1}%
+ \let\caption@ifrefstepcounter\@firstoftwo}}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@@refstepcounter{\refstepcounter}
+\let\caption@ifrefstepcounter\@secondoftwo
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@dblarg}
+% \changes{v3.1}{2007/02/05}{This macro added}
+% \changes{v3.1f}{2007/12/06}{Bugfix 07-12-06: Changed so it works without \cs{kernel@ifnextchar}
+% (which was introduced in \LaTeXe\ 2004/01/23), too}
+% A |\relax| was added compared to |\@dblarg| so |\caption{}| will be
+% expanded to |\caption[\relax]{}| (and not to |\caption[]{}|).
+% \begin{macrocode}
+\caption@ifundefined\kernel@ifnextchar
+ {\newcommand\caption@dblarg[1]{\@ifnextchar[{#1}{\caption@xdblarg{#1}}}}%
+ {\newcommand\caption@dblarg[1]{\kernel@ifnextchar[{#1}{\caption@xdblarg{#1}}}}%
+\newcommand\caption@xdblarg[2]{#1[{#2\relax}]{#2}}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@begin}
+% \changes{v3.0a}{2004/01/23}{\cs{caption@settype} changed to \cs{caption@setfloattype}}
+% \changes{v3.0e}{2005/04/12}{Check for default label format added}
+% \changes{v3.0f}{2005/06/11}{Usage of \cs{caption@resetContinuedFloat} added}
+% \changes{v3.1}{2007/05/09}{Usage of \cs{caption@setfloattype} \&
+% \cs{caption@resetContinuedFloat} removed}
+% Our handling of |\caption| will always be surrounded by
+% |\caption@begin| (or |\caption@beginex|) and |\caption@end|.\par
+% |\caption@begin|\marg{type} performs these tasks:
+% \begin{enumerate}
+% \item[1.] Start a new group.
+% \item[2.] Define |\fnum@|\meta{type} if the caption label format is set
+% to non-default.
+% \item[3.] Override the |position=| setting, if necessary.
+% (for example if set to |auto| or used inside a |supertabular|)
+% \end{enumerate}
+% \begin{macrocode}
+\newcommand*\caption@begin[1]{%
+ \begingroup
+ \caption@setfnum{#1}%
+ \caption@fixposition
+ \global\let\caption@fixedposition\caption@position}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@beginex}
+% \changes{v3.0b}{2004/05/16}{Support of \opt{listof=} added}
+% \changes{v3.0l}{2007/02/04}{Takes now 3 args instead of 2, check for empty heading added}
+% \changes{v3.1}{2007/07/01}{Makes lst-entry now instead of redefining \cs{addcontentsline}}
+% \changes{v3.2}{2010/10/26}{Bugfix 09-05-15: Setting of \cs{lst@@caption} added}
+% |\caption@beginex|\marg{type}\marg{list entry}\marg{heading}\par
+% performs the same tasks as |\caption@begin| and additionally:
+% \begin{enumerate}
+% \item[4.] Set |\lst@@caption|, so |\fnum@lstlisting| will include a numbering.
+% \item[5.] Make an entry in the list-of-whatever.
+% \item[6.] Set |\caption@ifempty| according argument \meta{heading}.
+% \end{enumerate}
+% \begin{macrocode}
+\newcommand\caption@beginex[3]{%
+ \caption@begin{#1}%
+ \let\lst@@caption\relax
+ \caption@addcontentsline{#1}{#2}%
+ \caption@ifempty{#3}{}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@end}
+% |\caption@end| closes the group.
+% \begin{macrocode}
+\newcommand*\caption@end{%
+ \endgroup
+ \let\caption@position\caption@fixedposition}
+% \end{macrocode}
+% \end{macro}
+%
+% \changes{v3.0a}{2004/01/23}{%
+% Internal hooks \cs{caption@@begin} \& \cs{caption@@end} added}
+% \changes{v3.0h}{2005/10/06}{%
+% Internal hooks \cs{caption@@begin} \& \cs{caption@@end} removed}
+%
+% \begin{macro}{\caption@setfnum}
+% \changes{v3.1}{2007/03/10}{This macro added}
+% |\caption@setfnum|\marg{type}\\
+% redefines |\fnum@|\meta{type} according the caption label format
+% set with |labelformat=|. But if |labelformat=default| is set,
+% |\fnum@|\meta{type} will not be overwritten by us.
+% \begin{macrocode}
+\newcommand*\caption@setfnum[1]{%
+ \@ifundefined{fnum@#1}{\iftrue}{\ifx\caption@lfmt\caption@lfmt@default\else}%
+ \@namedef{fnum@#1}{\caption@fnum{#1}}%
+ \fi}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@boxrestore}
+% \changes{v3.1}{2007/03/03}{This macro and its usage added}
+% \changes{v3.1b}{2007/09/17}{Bugfix: Redefinition of CR added}
+% \changes{v3.2}{2010/11/07}{Support of option \opt{parboxrestore} added}
+% The original code (from |latex/base/ltboxes.dtx|):
+% \begin{verbatim}
+% \def\@parboxrestore{\@arrayparboxrestore\let\\\@normalcr}
+% \def\@arrayparboxrestore{%
+% \let\if@nobreak\iffalse
+% \let\if@noskipsec\iffalse
+% \let\par\@@par
+% \let\-\@dischyph
+% \let\'\@acci\let\`\@accii\let\=\@acciii
+% \parindent\z@ \parskip\z@skip
+% \everypar{}%
+% \linewidth\hsize
+% \@totalleftmargin\z@
+% \leftskip\z@skip \rightskip\z@skip \@rightskip\z@skip
+% \parfillskip\@flushglue \lineskip\normallineskip
+% \baselineskip\normalbaselineskip
+% \sloppy}
+% \end{verbatim}%^^A
+% This one will be used by |\@caption| instead of |\@parboxrestore|.
+% \begin{macrocode}
+\newcommand*\caption@boxrestore{%
+ \caption@parboxrestore{\@parboxrestore}{%
+ \let\if@nobreak\iffalse
+ \let\if@noskipsec\iffalse
+ \let\par\@@par
+% \let\-\@dischyph
+% \let\'\@acci\let\`\@accii\let\=\@acciii
+ \parindent\z@ \parskip\z@skip
+ \everypar{}%
+% \linewidth\hsize
+% \@totalleftmargin\z@
+ \leftskip\z@skip \rightskip\z@skip \@rightskip\z@skip
+ \parfillskip\@flushglue \lineskip\normallineskip
+ \baselineskip\normalbaselineskip
+ \sloppy
+ \let\\\@normalcr
+ }}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@boxrestore@mini}
+% \changes{v3.2}{2010/10/24}{This macro added}
+% Resets \cs{par} so the very first \cs{par} in \cs{@caption} behaves quite the same as in floating environments.
+% Will be used by \cs{setcaptiontype}.
+% \begin{macrocode}
+\newcommand\caption@boxrestore@mini{%
+ \let\par\@@par
+ \parindent\z@ \parskip\z@skip
+ \sloppy}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@normalsize}
+% \changes{v3.1}{2007/05/05}{This macro and its usage added}
+% This one will be used by |\@caption| instead of |\normalsize|.\par
+% Its code is equivalent to
+% \begin{quote}
+% |\caption@font{normal}%|
+% \end{quote}
+% but executes faster (since the starred form of |\caption@font|
+% does not use |\setkeys| internally).
+% \begin{macrocode}
+\newcommand*\caption@normalsize{%
+ \caption@font*{\KV@caption@fnt@normal\@unused}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@setfloatcapt}
+% Needed for support of the \package{float} package, where the caption will
+% not be typeset directly, but catched in a |\vbox| called |\@floatcapt|
+% instead.
+% \begin{macrocode}
+\let\caption@setfloatcapt\@firstofone
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@makecurrent}
+% \begin{macro}{\caption@makeanchor}
+% \begin{macro}{\caption@start}
+% \begin{macro}{\caption@@start}
+% \begin{macro}{\caption@freezeHref}
+% \begin{macro}{\caption@defrostHref}
+% All these are needed for support of the \package{hyperref} package.
+% \begin{macrocode}
+\newcommand*\caption@makecurrent[2]{}
+\let\caption@makeanchor\@firstofone
+\let\caption@start\relax
+\let\caption@@start\relax
+\let\caption@freezeHref\relax
+\let\caption@defrostHref\relax
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+% \end{macro}
+% \end{macro}
+% \end{macro}
+% \end{macro}
+%
+% \begin{macro}{\caption@gettitle}
+% \changes{v3.1}{2007/05/05}{This macro and its usage added}
+% This one is needed for support of the \package{nameref} package.
+% \begin{macrocode}
+\newcommand\caption@gettitle[1]{%
+ \caption@ifundefined\NR@gettitle
+ {\def\@currentlabelname{#1}}%
+ {\NR@gettitle{#1}}}
+% \end{macrocode}
+% \end{macro}
+%
+% \subsection{Support for sub-captions}
+% \changes{v3.1f}{2007/11/16}{Support for sub-captions added}
+%
+% \begin{macro}{\caption@DeclareSubType}
+% |\caption@DeclareSub| initializes the usage of \cs{caption}
+% in sub-floats.
+% \begin{macrocode}
+\def\caption@DeclareSubType sub#1\@nil{%
+ \caption@Debug{Initializing subtype for `#1'\@gobble}%
+ \@namedef{caption@c@#1}{0}%
+ \@namedef{caption@beginsub#1}{\caption@beginsubfloat{#1}}}
+\@onlypreamble\caption@DeclareSubType
+% \end{macrocode}
+% \end{macro}
+%
+% Initialize the sub-captions defined with \cs{DeclareCaptionSubType}\ldots
+% \begin{macrocode}
+\caption@For*{subtypelist}{\caption@DeclareSubType sub#1\@nil}
+% \end{macrocode}
+%
+% Initialize the sub-captions defined with \cs{newsubfloat}\cite{subfig}\ldots
+% \begin{macrocode}
+\caption@AtBeginDocument*{%
+ \caption@ifundefined\sf@counterlist{}{%
+ \@for\sf@temp:=\sf@counterlist\do{%
+ \expandafter\caption@DeclareSubType\sf@temp\@nil}}}
+% \end{macrocode}
+%
+% \begin{macro}{\caption@subtypehook}
+% \changes{v3.1g}{2008/03/20}{Redefinition of \cs{caption@setlist} added}
+% \changes{v3.1k}{2009/10/09}{Bugfix 09-08-12b: \cs{@makecaption} will now be restored here, too}
+% \changes{v3.2}{2011/06/26}{Uses \cs{caption@@addcontentsline} instead of \cs{addcontentsline} now}
+% \changes{v3.2a}{2011/08/17}{Redefinition of \cs{phantomcaption} added}
+% \changes{v3.2a}{2011/08/17}{Usage of \cs{caption@warmup} added}
+% \changes{v3.2c}{2011/09/30}{Bugfix 11-09-26: Usage of \cs{if@subfloatrow} added}
+% Hook, will be used inside \cs{caption@setsubtype}.\par
+% (Note: If we are inside an |sub|\-|float|\-|row| environment we have to keep
+% the |\@make|\-|caption| code of the \package{floatrow} package intact.)
+% \begin{macrocode}
+\newcommand*\caption@subtypehook{%
+ \ifx\caption\caption@subcaption \else
+ \caption@warmup
+% \end{macrocode}
+% \begin{macrocode}
+ \caption@ifrefstepcounter{}{%
+ % no \caption or \subcaption in this (floating) environment yet
+ \caption@Debug{Increment \@captype\ counter =\the\value\@captype}%
+ \caption@l@stepcounter\@captype
+ \let\caption@@@addcontentsline\caption@addsubcontentsline}%
+% \end{macrocode}
+% \begin{macrocode}
+ \ifnum\csname caption@c@\@captype\endcsname=\value\@captype \else
+ \caption@Debug{Reset sub\@captype\ counter}%
+ \expandafter\xdef\csname caption@c@\@captype\endcsname{%
+ \the\value\@captype}%
+ \@stpelt\@subcaptype
+ \fi
+% \end{macrocode}
+% \begin{macrocode}
+ \c@ContinuedFloat=0\relax
+ \let\caption@resetContinuedFloat\@gobble
+ \let\caption@addcontentsline\caption@kernel@addcontentsline
+ \let\caption@setfloatcapt\@firstofone
+% \end{macrocode}
+% \begin{macrocode}
+ \caption@clearmargin
+ \caption@iflist{}{\let\caption@setlist\@gobble}%
+ \caption@setoptions{sub}%
+ \caption@setoptions{subfloat}% for subfig-package compatibility
+% \end{macrocode}
+% \begin{macrocode}
+ \let\caption\caption@subcaption
+ \let\phantomcaption\caption@subphantom
+ \if@subfloatrow
+ \caption@Debug{Keeping \string\@makecaption}%
+ \else
+ \let\@makecaption\caption@makecaption
+ \fi
+ \fi}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\if@subfloatrow}
+% \changes{v3.2c}{2011/09/30}{This macro added}
+% This macro tests if we are inside an |sub|\-|float|\-|row| or |sub|\-|float|\-|row*| environment.
+% \begin{macrocode}
+\caption@AtBeginDocument{%
+ \caption@ifundefined\@subfloatrowtrue
+ {\newif\if@subfloatrow
+ \caption@ifundefined\subfloatrow{}%
+ {\caption@Debug{Patching subfloatrow environment}%
+ \g@addto@macro\capsubrowsettings{\@subfloatrowtrue}%
+ \g@addto@macro\killfloatstyle{%
+ \ifx\c@FRobj\c@FRsobj\@subfloatrowtrue\fi}}}%
+ {\caption@Debug{\string\if@subfloatrow is already defined}}}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@subcaption}
+% Makes a sub-caption.
+% \begin{macrocode}
+\newcommand*\caption@subcaption{%
+ \caption@checkgrouplevel{sub}\subcaption
+ \caption@star
+ {\caption@refstepcounter\@subcaptype}%
+ {\caption@dblarg{\@caption\@subcaptype}}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@subphantom}
+% \changes{v3.2a}{2011/08/17}{This macro added}
+% Same as |\phantomcaption|, but for sub-captions.
+% \begin{macrocode}
+\newcommand*\caption@subphantom{%
+ \caption@checkgrouplevel{sub}\phantomsubcaption
+ \caption@refstepcounter\@subcaptype}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@addcontentsline}
+% \changes{v3.1g}{2008/01/12}{Argument of \cs{caption@addsubcontentslines} removed}
+% \changes{v3.1i}{2008/08/02}{Argument of \cs{caption@addsubcontentslines} re-added}
+% We extend |\caption@addcontentsline| so it handles sub-captions, too.
+% \Note{\cs{sf@ifpositiontop} \& \cs{@listsubcaptions} are defined by the
+% \package{subfigure} \& \package{subfig} packages.}
+% \begin{macrocode}
+\let\caption@kernel@addcontentsline\caption@addcontentsline
+\renewcommand\caption@addcontentsline[2]{%
+ \sf@ifpositiontop{\@listsubcaptions{#1}}{}%
+ \caption@kernel@addcontentsline{#1}{#2}%
+ \sf@ifpositiontop{}{\@listsubcaptions{#1}}%
+ \caption@addsubcontentslines{#1}}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@addsubcontentslines[1]{%
+ \begingroup
+ \caption@subcontentslines
+ \endgroup
+ \caption@clearsubcontentslines}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@addsubcontentsline}
+% \changes{v3.1i}{2008/08/02}{Bugfix 08-07-28:
+% \cs{label}, \cs{index}, and \cs{glossary} are allowed inside the list entry now}
+% \changes{v3.2}{2011/06/26}{Uses \cs{caption@@addcontentsline} instead of \cs{addcontentsline} now}
+% \changes{v3.2c}{2011/08/19}{Uses \cs{caption@gobble} instead of \cs{@gobble} now}
+% Add a pending sub-caption list entry.
+% \begin{macrocode}
+\newcommand*\caption@addsubcontentsline[4]{%
+ \begingroup
+ \let\label\caption@gobble \let\index\caption@gobble \let\glossary\caption@gobble
+ \protected@edef\@tempa{\endgroup
+ \noexpand\g@addto@macro\noexpand\caption@subcontentslines{%
+ \noexpand\@namedef{the#2}{\csname the#2\endcsname}%
+ \ifx\@currentHref\@undefined \else
+ \noexpand\def\noexpand\@currentHref{\@currentHref}%
+ \fi
+ \protect\caption@@@addcontentsline{#1}{#2}{#3}{#4}}}%
+ \@tempa}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@checksubcontentslines}
+% \changes{v3.1g}{2008/01/07}{Bugfix: Uses \cs{caption@Error} instead of \cs{subcaption@Error} now}
+% Checks if the list of pending sub-captions is empty, if not,
+% a warning will be issued.
+% \begin{macrocode}
+\newcommand*\caption@checksubcontentslines{%
+ \ifx\caption@subcontentslines\@empty \else
+ \caption@Error{%
+ Something's wrong--perhaps a missing \protect\caption\MessageBreak
+ in the last figure or table}%
+ \caption@clearsubcontentslines
+ \fi}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@clearsubcontentslines}
+% Clear pending sub-caption list entries.
+% \begin{macrocode}
+\newcommand*\caption@clearsubcontentslines{%
+ \global\let\caption@subcontentslines\@empty}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+\caption@AtBeginDocument*{%
+ \caption@ifundefined\sf@ifpositiontop{\let\sf@ifpositiontop\@gobbletwo}{}%
+ \caption@clearsubcontentslines
+ \g@addto@macro\caption@typehook{\caption@checksubcontentslines}%
+ \AtEndDocument{\caption@checksubcontentslines}}%
+% \end{macrocode}
+%
+% \subsection{Document class \& Babel package support}
+%
+% \subsubsection{The \AmS{} \& \SmF{} classes}
+% \changes{v3.1}{2007/07/29}{\AmS\ \& \SmF\ classes support added}
+%
+% \begin{macrocode}
+\caption@ifundefined\smf@makecaption{}{\let\smf@makecaption\@makecaption}
+% \end{macrocode}
+%
+% \subsubsection{The beamer class}
+% \changes{v3.1}{2007/03/10}{beamer class support added}
+%
+% \begin{macrocode}
+\@ifclassloaded{beamer}{%
+ \caption@InfoNoLine{beamer document class}%
+% \end{macrocode}
+%
+% \begin{macro}{\figure}
+% \changes{v3.1f}{2007/12/17}{This re-definition for \class{beamer} document class added}
+% \begin{macro}{\table}
+% \changes{v3.1f}{2007/12/17}{This re-definition for \class{beamer} document class added}
+% We redefine |figure| \& |table| so our type-specific options will be used etc.
+% \begin{macrocode}
+ \expandafter\let\expandafter\caption@ORI@figure
+ \csname\string\figure\endcsname
+ \@namedef{\string\figure}[#1]{%
+ \caption@ORI@figure[#1]%
+ \caption@settype{figure}}
+% \end{macrocode}
+% \begin{macrocode}
+ \expandafter\let\expandafter\caption@ORI@table
+ \csname\string\table\endcsname
+ \@namedef{\string\table}[#1]{%
+ \caption@ORI@table[#1]%
+ \caption@settype{table}}
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+%
+% \begin{macrocode}
+}{}
+% \end{macrocode}
+%
+% \subsubsection{The \KOMAScript{} classes}
+%
+% \KOMAScript\ contains the code
+% |\AtBeginDocument{\let\scr@caption\caption}|
+% so we need to update |\scr@caption| here, too.
+%
+% \begin{macrocode}
+\caption@ifundefined\scr@caption{}{%
+ \caption@AtBeginDocument{\let\scr@caption\caption}}
+% \end{macrocode}
+%
+% \subsubsection{The frenchb Babel option}
+% \changes{v3.1}{2006/05/14}{Adaptation to \package{frenchb} added}
+%
+% Suppress
+% ``Package |frenchb.ldf| Warning: The definition of |\@makecaption| has been
+% changed, frenchb will NOT customize it.''
+% (but only if we emulate this customization)
+% \begin{macrocode}
+\@nameuse{caption@frenchb}\@nameundef{caption@frenchb}
+% \end{macrocode}
+%
+% \subsubsection{The frenchle/pro package}
+% \changes{v3.0h}{2005/10/03}{Adaptation to \package{frenchle/pro} added}
+%
+% \begin{macrocode}
+\caption@AtBeginDocument{\caption@ifundefined\frenchTeXmods{}{%
+ \caption@InfoNoLine{frenchle/pro package is loaded}%
+% \end{macrocode}
+%
+% \begin{macrocode}
+ \let\captionfont@ORI\captionfont
+ \let\captionlabelfont@ORI\captionlabelfont
+ \let\@makecaption@ORI\@makecaption
+% \end{macrocode}
+
+% If |\GOfrench| is defined as |\relax| all the re-definitions regarding
+% captions have already been done, so we can do our patches immediately.
+% Otherwise we must add our stuff to |\GOfrench|.
+% \begin{macrocode}
+ \caption@ifundefined\GOfrench
+ {\let\caption@tempa\@firstofone}%
+ {\def\caption@tempa{\g@addto@macro\GOfrench}}%
+ \caption@tempa{%
+% \end{macrocode}
+%
+% \begin{macrocode}
+ \let\captionfont\captionfont@ORI
+ \let\captionfont@ORI\@undefined
+ \let\captionlabelfont\captionlabelfont@ORI
+ \let\captionlabelfont@ORI\@undefined
+ \let\@makecaption\@makecaption@ORI
+ \let\@makecaption@ORI\@undefined
+% \end{macrocode}
+%
+% \begin{macro}{\@cnORI}
+% We update the definition of |\@cnORI| so it actually reflects
+% our definition of |\caption|.
+% \begin{macrocode}
+ \let\@cnORI\caption
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\@tablescaption}
+% The \package{frenchle/pro} package sets |\caption| to |\@tablescaption| at
+% |\begin{table}| for special treatment of footnotes.
+% Therefore we have to patch |\@tablescaption| so |\caption*| will work
+% inside the |table| environment.
+% \begin{macrocode}
+ \let\caption@tcORI\@tablescaption
+ \def\@tablescaption{\caption@star\relax\caption@tcORI}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\f@ffrench}
+% \begin{macro}{\f@tfrench}
+% |\f@ffrench| and |\f@tfrench| reflect |\fnum@figure| and |\fnum@table|
+% when used in French mode. These contain additional code which typesets
+% the caption separator |\captionseparator| instead of the usual colon.
+% Because this breaks with our |\@makecaption| code we have to remove
+% this additional code here.
+% \begin{macrocode}
+ \let\@eatDP\@undefined
+ \let\caption@tempa\@empty
+ \ifx\f@ffrench\fnum@figure
+ \l@addto@macro\caption@tempa{\let\fnum@figure\f@ffrench}%
+ \fi
+ \ifx\f@tfrench\fnum@table
+ \l@addto@macro\caption@tempa{\let\fnum@table\f@tfrench}%
+ \fi
+ \def\f@ffrench{\ifx\listoffigures\relax\else\figurename~\thefigure\fi}%
+ \def\f@tfrench{\ifx\listoftables\relax\else\tablename~\thetable\fi}%
+ \caption@tempa
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+%
+% \begin{macrocode}
+ }%
+}}
+% \end{macrocode}
+%
+% \subsubsection{The hungarian and magyar Babel option}
+% \changes{v3.2}{2009/03/29}{\package{magyar} package support added}
+%
+% \begin{macrocode}
+\def\caption@tempa#1{%
+ \@ifundefined{extras#1}\caption@AtBeginDocument\@firstofone{%
+ \@ifundefined{extras#1}{}{%
+ \caption@InfoNoLine{#1 babel option is loaded}%
+ \expandafter\addto\csname extras#1\endcsname{%
+ % reverse changes made by magyar.ldf
+ \let\@makecaption\caption@makecaption
+ \babel@save\@makecaption
+ \caption@redefine
+ \babel@save\@caption}%
+ }}}
+\caption@tempa{hungarian}%
+\caption@tempa{magyar}%
+% \end{macrocode}
+%
+% \subsection{Package support}
+% \changes{v3.1}{2007/04/11}{Package options `float', `longtable' etc.
+% are not supported anymore, removed}
+%
+% \begin{macro}{\caption@IfPackageLoaded}
+% \changes{v3.0f}{2005/05/29}{3rd argument \meta{code} added,
+% so no extra check is needed}
+% \changes{v3.1}{2007/07/04}{Re-written \& renamed from \cs{caption@ifpackage}
+% to \cs{caption@IfPackageLoaded}}
+% |\caption@IfPackageLoaded|\marg{package}\oarg{version}\marg{true}\marg{false}\par
+% Some kind of combination of |\@ifpackageloaded| and |\@ifpackagelater|.
+% If the \meta{package} is not loaded yet, the check will be (re-)done
+% |\AtBeginDocument|, so the \meta{package} could be loaded later on, too.
+% \begin{macrocode}
+\newcommand\caption@IfPackageLoaded[1]{%
+ \@testopt{\caption@@IfPackageLoaded{#1}}{}}
+\@onlypreamble\caption@IfPackageLoaded
+% \end{macrocode}
+% \begin{macrocode}
+\long\def\caption@@IfPackageLoaded#1[#2]#3#4{%
+ \@ifpackageloaded{#1}\@firstofone{%
+ \caption@Debug{#1 package is not loaded (yet)\@gobble}%
+ \caption@AtBeginDocument}{%
+ \caption@@ifpackageloaded{#1}[#2]{#3}{#4}}}
+\@onlypreamble\caption@@IfPackageLoaded
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand\caption@ifpackageloaded[1]{%
+ \@testopt{\caption@@ifpackageloaded{#1}}{}}
+\@onlypreamble\caption@ifpackageloaded
+% \end{macrocode}
+% \begin{macrocode}
+\long\def\caption@@ifpackageloaded#1[#2]{%
+ \@ifpackageloaded{#1}{%
+ \caption@InfoNoLine{#1 package is loaded}%
+ \@ifpackagelater{#1}{#2}\@firstoftwo{%
+ \caption@Error{%
+ For a successful cooperation we need at least version\MessageBreak
+ `#2' of package #1,\MessageBreak
+ but only version\MessageBreak
+ `\csname ver@#1.\@pkgextension\endcsname'\MessageBreak
+ is available}%
+ \@secondoftwo}%
+ }{\@secondoftwo}}
+\@onlypreamble\caption@@ifpackageloaded
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@clearmargin}
+% \changes{v3.1}{2007/05/05}{This macro and its usage added}
+% This macro will be used by some package support stuff where the usual
+% margin setting is not welcome, e.g. in the \package{sidecap} package.
+% \begin{macrocode}
+\newcommand*\caption@clearmargin{%
+ \setcaptionmargin\z@
+ \let\caption@minmargin\@undefined}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+\caption@setbool{needfreeze}{0}
+\caption@AtBeginDocument*{%
+ \caption@ifneedfreeze{%
+% \end{macrocode}
+%
+% \begin{macro}{\caption@freeze}
+% \changes{v3.1}{2007/07/22}{This macro added}
+% \changes{v3.1c}{2007/10/06}{\cs{caption} \& \cs{@caption} revised for enhanced compatibility}
+% \changes{v3.1c}{2007/10/06}{Bugfix: Made \cs{@caption} long}
+% \changes{v3.1f}{2007/11/16}{Uses `space hack' instead of \cs{ignorespaces} now}
+% \changes{v3.1g}{2008/01/29}{Starred variants of \cs{ContinuedFloat} and \cs{captionsetup} added}
+% \changes{v3.2}{2010/10/26}{Bugfix 10-09-01a: Uses \cs{ignorespaces} instead of `space hack' again}
+% \changes{v3.2a}{2011/08/17}{Starred variant of \cs{caption@freeze} removed}
+% \changes{v3.2b}{2011/08/18}{Redefines \cs{caption@setup} instead of \cs{captionsetup} now}
+% \changes{v3.2b}{2011/08/18}{Redefinition of \cs{label} revised}
+% \changes{v3.2c}{2011/08/21}{Revised}
+% |\caption@freeze|\par
+% Used by the \package{fltpage} \& \package{sidecap} package support.
+% \begin{macrocode}
+ \newcommand*\caption@freeze{%
+% \end{macrocode}
+% \begin{macrocode}
+ \let\caption@frozen@ContinuedFloat\ContinuedFloat
+ \def\ContinuedFloat{%
+ \caption@withoptargs\caption@SC@ContinuedFloat}%
+ \def\caption@SC@ContinuedFloat##1{%
+ \caption@@freeze{\ContinuedFloat##1}%
+ \let\caption@frozen@setcounter\setcounter
+ \let\caption@frozen@addtocounter\addtocounter
+ \def\setcounter####1####2{\csname c@####1\endcsname####2\relax}%
+ \def\addtocounter####1####2{\advance\csname c@####1\endcsname ####2\relax}%
+ \caption@frozen@ContinuedFloat##1%
+ \let\setcounter\caption@frozen@setcounter
+ \let\addtocounter\caption@frozen@addtocounter}%
+% \end{macrocode}
+% \begin{macrocode}
+ \let\caption@frozen@setup\caption@setup
+ \def\caption@setup##1{%
+ \caption@@freeze{\caption@setup{##1}}%
+ \caption@frozen@setup{##1}}%
+% \end{macrocode}
+% \begin{macrocode}
+ \let\caption@frozen@caption\caption
+ \def\caption{%
+ \def\caption{%
+ \caption@Error{%
+ Only one \noexpand\caption can be placed in this environment}%
+ \caption@gobble}%
+ \@ifstar
+ {\caption@SC@caption*}%
+ {\let\caption@frozen@refstepcounter\caption@@refstepcounter
+ \let\caption@@refstepcounter\caption@l@stepcounter
+ \caption@refstepcounter\@captype
+ \let\caption@@refstepcounter\caption@frozen@refstepcounter
+ \let\@currentlabel\caption@SClabel
+ \caption@withoptargs\caption@SC@caption}}%
+ \long\def\caption@SC@caption##1##2{%
+ \caption@@freeze{\caption##1{##2}}%
+ \ignorespaces}%
+% \end{macrocode}
+% \begin{macrocode}
+ \let\caption@frozen@label\label
+ \def\label{%
+ \caption@withoptargs\caption@SC@label}%
+ \def\caption@SC@label##1##2{%
+ \ifx\@currentlabel\caption@SClabel
+ \@bsphack
+ \caption@freeze@label{##1}{##2}%
+ \@esphack
+ \else
+ \caption@frozen@label##1{##2}%
+ \fi}%
+ \def\caption@SClabel{\caption@undefinedlabel}%
+ \def\caption@freeze@label##1##2{%
+ \caption@@freeze{\label##1{##2}}}%
+% \end{macrocode}
+% \begin{macrocode}
+ \global\let\caption@frozen@content\@empty
+ \long\def\caption@@freeze{%
+ \g@addto@macro\caption@frozen@content}%
+% \end{macrocode}
+% \begin{macrocode}
+ \def\caption@warmup{%
+ \let\ContinuedFloat\caption@frozen@ContinuedFloat
+ \let\caption@setup\caption@frozen@setup
+ \let\caption\caption@frozen@caption
+ \let\label\caption@frozen@label}}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@defrost}
+% \changes{v3.1}{2007/07/22}{This macro added}
+% \changes{v3.1g}{2008/01/30}{\cs{caption@defrost@setup} added}
+% \changes{v3.2c}{2011/08/21}{Adapted to changes of \cs{caption@freeze}}
+% \changes{v3.2c}{2011/08/21}{\cs{caption@defrost@setup} removed}
+% |\caption@defrost|
+% \begin{macrocode}
+ \newcommand*\caption@defrost{%
+ \ifx\caption@frozen@caption\@undefined
+ \caption@frozen@content
+ \else
+ \caption@Error{Internal Error:\MessageBreak
+ \noexpand\caption@defrost in same group as \string\caption@freeze}%
+ \fi}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+ }{}%
+ \caption@undefbool{needfreeze}}
+% \end{macrocode}
+%
+% \begin{macro}{\caption@warmup}
+% \changes{v3.2a}{2011/08/17}{This macro added}
+% |\caption@warmup|
+% \begin{macrocode}
+\let\caption@warmup\relax
+% \end{macrocode}
+% \end{macro}
+%
+% \subsubsection{The float package}
+% \changes{v3.0f}{2005/05/31}{\package{float} package support rewritten and improved}
+% \iffalse
+% (This is a more straight-ahead implementation, but it only works with v1.3
+% now, so v1.2 is no longer supported. The old code including documentation
+% can be found in caption-30f-050530.zip)
+% \fi
+%
+% The \package{float} package usually do not use the \LaTeX\ kernel command
+% |\@caption| to typeset the caption but |\float@caption| instead.
+% (|\@caption| will only be used if the float is re-styled with
+% |\restylefloat*|.)
+%
+% The main two things |\float@caption| is doing different are:
+% \begin{itemize}
+% \item The caption will be typeset inside a |\savebox| called |\@floatcapt|
+% so it can be placed above or below the float contents afterwards.
+% \item |\@makecaption| will not be used to finally typeset the caption.
+% Instead |\@fs@capt| will be used which definition is part of the float
+% style.
+% (Note that |\@fs@capt| will not typeset any vertical space above or below
+% the caption; instead this space will be typeset by the float style code
+% itself.)
+% \end{itemize}
+%
+% \begin{macrocode}
+\caption@IfPackageLoaded{float}[2001/11/08 v1.3d]{%
+ \@ifpackageloaded{floatrow}{%
+ \caption@ifpackageloaded{floatrow}[2007/08/24 v0.2a]{}{}%
+ }{%
+% \end{macrocode}
+%
+% \begin{macro}{\@float@setevery}
+% \changes{v3.1k}{2009/10/09}{Bugfix 08-12-05: \cs{color@begin/endgroup} added
+% to redefinition of \cs{caption@setfloatcapt}}
+% |\@float@setevery|\marg{float type} is provided by the \package{float}
+% package; it's called every time a floating environment defined with
+% |\newfloat| or |\restylefloat| begins.
+% We use this hook to do some adaptations and to setup the proper caption
+% style (if defined) and additional settings declared with
+% |\captionsetup|\oarg{float style}.
+% \begin{macrocode}
+ \let\caption@ORI@float@setevery\@float@setevery
+ \def\@float@setevery#1{%
+ \float@ifcaption{#1}{%
+% \end{macrocode}
+%
+% First of all we set the caption position to it's proper value by
+% converting |\@fs@iftopcapt| (which is part of a float style and
+% controls where the caption will be typeset, above or below the float
+% contents) to our |position=| setting.
+% Since the spacing above and below the caption will be done by the float
+% style and \emph{not} by us this sounds quite useless. But in fact it isn't,
+% since some packages based on \thispackage\ (like the \package{subfig}
+% package) could have an interest for this information and therefore use the
+% |\caption@iftop| macro we provide in our kernel. Furthermore we need this
+% information for ourself in |\captionof| which uses |\@makecaption| to
+% finally typeset the caption with skips.
+% \begin{macrocode}
+ \caption@setposition{\@fs@iftopcapt t\else b\fi}%
+% \end{macrocode}
+%
+% Afterward we redefine |\caption@setfloatcapt| (which will be used inside
+% |\@caption|) so the caption will be set inside the box |\@floatcapt|,
+% without extra vertical space.
+% \begin{macrocode}
+ \renewcommand\caption@setfloatcapt[1]{%
+ \let\@makecaption\caption@@make
+ \global\setbox\@floatcapt\vbox{%
+ \color@begingroup ##1\color@endgroup}}%
+% \end{macrocode}
+%
+% To allow different caption styles for different float styles we also
+% determine the current float style (e.g. `ruled') and select
+% a caption style (and additional settings) with the same name, if defined.
+% \begin{macrocode}
+ \float@getstyle\float@style{#1}%
+ \caption@setstyle*\float@style
+ \caption@setoptions\float@style
+% \end{macrocode}
+%
+% \begin{macrocode}
+ }{}%
+ \caption@freezeHref % will be defrosted in \float@makebox
+ \caption@ORI@float@setevery{#1}}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@typehook}
+% \changes{v3.1}{2007/07/08}{float package hook added}
+% \LaTeX\ and almost every other packages use
+% |\|\meta{type}|name|
+% to provide a macro for the type resp.~environment name -- for example
+% the command |\figurename| will usually contain the name of the floating
+% environment |figure|:
+% \begin{quote}
+% |\newcommand\figurename{Figure}|
+% \end{quote}
+% But the \package{float} package doesn't follow this common naming
+% convention:
+% For floats defined with |\newfloat| it uses |\fname@|\meta{type} instead,
+% which breaks with our code (and with |\autoref| and some other things as
+% well).
+% So we have to map the \package{float} package name to the common one here.\par
+% \Note{If the float was not defined with \cs{newfloat} but with
+% \cs{restylefloat} instead, \cs{fname@}\meta{type} is not defined.}
+% \begin{macrocode}
+ \g@addto@macro\caption@typehook{%
+ \expandafter\ifx\csname #1name\endcsname\relax
+ \expandafter\let\csname #1name\expandafter\endcsname
+ \csname fname@#1\endcsname
+ \fi}%
+% \end{macrocode}
+% \end{macro}
+%
+% \changes{v3.0f}{2005/06/26}{Skips of \env{plaintop} and \env{boxed} floats corrected}
+% \begin{macro}{\fs@plaintop}
+% \begin{macro}{\fs@boxed}
+% Since the float styles |plaintop| and |boxed| don't use |\abovecaptionskip|
+% which could be set with |skip=| (|plaintop| uses |\belowcaptionskip| instead of
+% |\abovecaptionskip|, and |boxed| uses a fixed space of |2pt|)
+% we patch the according float style macros here to change this.
+% \begin{macrocode}
+ \g@addto@macro\fs@plaintop{\def\@fs@mid{\vspace\abovecaptionskip\relax}}%
+ \g@addto@macro\fs@boxed{\def\@fs@mid{\kern\abovecaptionskip\relax}}%
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+%
+% \begin{macro}{\float@getstyle}
+% \changes{v3.1}{2007/06/10}{This macro added}
+% |\float@getstyle|\marg{cmd}\marg{type}\par
+% Determining the float style is not so easy because the only hint
+% provided by the \package{float} package is the macro
+% |\fst@|\meta{float type} which points to the macro which represents the
+% float style. So for example after
+% \begin{quote}
+% |\floatstyle{ruled}|\\
+% |\newfloat{Program}{tbp}{lop}|
+% \end{quote}
+% |\fst@Program| will be defined as
+% \begin{quote}
+% |\def\fst@Program{\fs@ruled}|\quad.
+% \end{quote}\par
+% So here is what we do: We make the first level expansion of
+% |\fst@|\meta{float type} a string so we can gobble the first four tokens
+% (= |\fs@|), so only the the name of the float style is left.\par
+% \emph{TODO:} We need to convert the catcodes here.
+% \begin{macrocode}
+ \providecommand*\float@getstyle[2]{%
+ \edef#1{%
+ \noexpand\expandafter\noexpand\@gobblefour\noexpand\string
+ \expandafter\expandafter\expandafter\noexpand
+ \csname fst@#2\endcsname}%
+ \edef#1{#1}%
+ \caption@Debug{floatstyle{#2} = `#1'}}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\float@ifcaption}
+% \changes{v3.1}{2007/06/23}{This macro added}
+% |\float@ifcaption|\marg{type}\marg{if-clause}\marg{else-clause}\par
+% Here we determine if the user has used |\newfloat| resp.~|\restylefloat|,
+% or |\restylefloat*|.
+% This is quite easy: If |\@float@c@|\meta{captype} is the same as
+% |\float@caption|, the user has used |\newfloat| or |\restylefloat|,
+% otherwise we assume he has used |\restylefloat*|.
+% (This test will fail if some package re-defines |\float@caption|,
+% so we have to assume that there is no one.)
+% \begin{macrocode}
+ \providecommand*\float@ifcaption[1]{%
+ \expandafter\ifx\csname @float@c@#1\endcsname\float@caption
+ \expandafter\@firstoftwo
+ \else
+ \expandafter\@secondoftwo
+ \fi}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+}}{%
+ \providecommand*\float@ifcaption[1]{\@secondoftwo}%
+% \clearcaptionsetup{boxed}% used by the floatrow package?
+}
+% \end{macrocode}
+%
+% The skip between `boxed' floats and their caption defaults to |2pt|.
+%
+% \begin{macrocode}
+\captionsetup[boxed]{skip=2pt} % do not issue a warning when not used
+% \end{macrocode}
+%
+% \changes{v3.0f}{2005/05/26}{\opt{strut=0} added to caption style \opt{ruled}}
+% \changes{v3.0f}{2005/05/27}{Option \opt{ruled} fixed}
+% To emulate the `ruled' definition of |\@fs@capt| we provide a caption style
+% `ruled' with appropriate options. But if the package option |ruled| was
+% specified, we setup some caption parameters to emulate the behavior
+% of \thispackage\ \version{1.x} option |ruled| instead, i.e.,
+% the current caption settings will be used, but without margin and without
+% `single-line-check'.
+% \begin{macrocode}
+\caption@ifbool{ruled}{%
+ \captionsetup[ruled]{margin=0pt,minmargin=0,slc=0}%
+}{%
+ \DeclareCaptionStyle{ruled}{labelfont=bf,labelsep=space,strut=0}%
+}
+\caption@undefbool{ruled}
+% \end{macrocode}
+%
+% \subsubsection{The floatflt package}
+% \changes{v3.1}{2007/06/10}{Support of the \package{floatflt} package added}
+%
+% \begin{macrocode}
+\caption@IfPackageLoaded{floatflt}[1996/02/27 v1.3]{%
+% \end{macrocode}
+%
+% \begin{macro}{\floatingfigure}
+% We patch |\floatingfigure| so |\caption@floatflt| will be used.
+% \begin{macrocode}
+ \let\caption@ORI@floatingfigure\floatingfigure
+ \def\floatingfigure{%
+ \caption@floatflt{figure}%
+ \caption@ORI@floatingfigure}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\floatingtable}
+% Same with |\floatingtable|\ldots
+% \begin{macrocode}
+ \let\caption@ORI@floatingtable\floatingtable
+ \def\floatingtable{%
+ \caption@floatflt{table}%
+% \caption@setautoposition b%
+ \caption@ORI@floatingtable}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@floatflt}
+% \changes{v3.1c}{2007/10/06}{Bugfix: \cs{caption@clearmargin} added}
+% Here we do two things:
+% \begin{enumerate}
+% \item We use |\caption@set|\-|options{|\-|floating|\meta{type}|}| so
+% |\caption|\-|setup[|\-|floating|\meta{type}|]{|\ldots|}| is supported.
+% \item |\line|\-|width| must be set correctly.
+% Usually this is done by |\@par|\-|box|\-|restore| inside |\@caption|,
+% but since we use |\@caption@box|\-|restore| we have to map this to
+% |\@par|\-|box|\-|restore| instead.
+% \end{enumerate}
+% \begin{macrocode}
+ \newcommand*\caption@floatflt[1]{%
+ \caption@settype{#1}%
+ \caption@clearmargin
+ \caption@setfullparboxrestore
+ \caption@setoptions{floating#1}}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+}{}
+% \end{macrocode}
+%
+% \subsubsection{The fltpage package}
+% \changes{v3.1}{2007/07/22}{Support of the \package{fltpage} package added}
+%
+% \begin{macrocode}
+\caption@IfPackageLoaded{fltpage}[1998/10/29 v.0.3]{%
+ \caption@setbool{needfreeze}{1}%
+% \end{macrocode}
+%
+% \begin{macro}{\FP@positionLabel}
+% \changes{v3.2c}{2011/08/28}{This redefinition added}
+% Original code:
+% \begin{verbatim}
+% \newcommand{\FP@positionLabel}{%
+% FP\@captype-\number\value{FP@\@captype C}-pos}
+% \end{verbatim}%^^A
+% \begin{macrocode}
+ \renewcommand\FP@positionLabel{%
+ FP\FP@captype-\number\value{FP@\FP@captype C}-pos}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\FP@helpNote}
+% Original code:
+% \begin{verbatim}
+% \newcommand{\FP@helpNote}[2]{%
+% \typeout{FP#1 is inserted on page \pageref{#2}!}}%
+% \end{verbatim}%^^A
+% \begin{macrocode}
+ \renewcommand\FP@helpNote[2]{%
+ \begingroup % save \caption@thepage
+ \caption@pageref{#2}%
+ \typeout{FP#1 is inserted on page \caption@thepage!}%
+ \endgroup}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\FP@floatBegin}
+% \changes{v3.1f}{2007/11/16}{Uses `space hack' instead of \cs{ignorespaces} now}
+% \changes{v3.1k}{2009/10/09}{Bugfix 09-09-11: Missing \cs{ignorespaces} added}
+% \changes{v3.2c}{2011/08/28}{Adapted to current version of \cs{caption@freeze}}
+% Original code:
+% \begin{verbatim}
+% \newcommand{\FP@floatBegin}[1]{%
+% \gdef\@captype{#1}%
+% \global\let\FP@savedCaptionCommand\caption%
+% \global\let\FP@savedLabelCommand\label%
+% \ifthenelse{\equal{\@captype}{figure}}
+% {\global\let\old@Fnum\fnum@figure}%
+% {\global\let\old@Fnum\fnum@table}%
+% \let\FP@LabelText\@empty%
+% \let\FP@CaptionText\@empty%
+% \let\FP@optionalCaptionText\@empty%
+% \renewcommand\label[1]{\gdef\FP@LabelText{##1}}%
+% \renewcommand\caption[2][]{%
+% \gdef\FP@optionalCaptionText{##1}\gdef\FP@CaptionText{##2}}%
+% \begin{lrbox}{\FP@floatCorpusBOX}%
+% }%
+% \end{verbatim}%^^A
+% \begin{macrocode}
+ \renewcommand*\FP@floatBegin[1]{%
+ \def\FP@captype{#1}%
+ \begin{lrbox}{\FP@floatCorpusBOX}%
+ \caption@settype*{#1}%
+ \caption@freeze
+ \global\let\FP@Label\@empty
+ \caption@ifFPrefcap
+ {}%
+ {\def\caption@freeze@label##1##2{%
+ \g@addto@macro\FP@Label{\FP@label##1{##2}}}}%
+ \ignorespaces}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\FP@floatEnd}
+% \changes{v3.1g}{2008/01/30}{Some minor bugfixes}
+% \changes{v3.2c}{2011/08/28}{Adapted to current version of \cs{caption@freeze}}
+% Original code:
+% \begin{verbatim}
+% \newcommand{\FP@floatEnd}{%
+% \end{lrbox}%
+% \global\setbox\FP@floatCorpusBOX=\box\FP@floatCorpusBOX
+% \stepcounter{FP@\@captype C}%
+% \FP@savedLabelCommand{\FP@positionLabel}%
+% \FP@helpNote{\@captype}{\FP@positionLabel}%
+% \FP@float
+% {\FP@positionLabel}% location label test
+% {\begin{\@captype}[p!]
+% \usebox{\FP@floatCorpusBOX}%
+% \refstepcounter{\@captype}%
+% \ifthenelse{\equal{\FP@LabelText}{\@empty}}
+% {}{\FP@savedLabelCommand{\expandafter\protect\FP@LabelText}}%
+% \end{\@captype}}
+% {\addtocounter{\@captype}{-1}}
+% {\begin{\@captype}[b!]%
+% \ifthenelse{\equal{\FP@guide}{\@empty}}%
+% {}{\ifthenelse{\equal{\@captype}{figure}}%
+% {\renewcommand{\fnum@figure}{\old@Fnum\ {\FP@guide}}}%
+% {\renewcommand{\fnum@table}{\old@Fnum\ {\FP@guide}}}}%
+% \setlength{\abovecaptionskip}{2pt plus2pt minus 1pt} % length above caption
+% \setlength{\belowcaptionskip}{2pt plus2pt minus 1pt} % length above caption
+% \FP@separatorCaption%
+% \ifthenelse{\equal{\FP@optionalCaptionText}{\@empty}}%
+% {\FP@savedCaptionCommand{\expandafter\protect\FP@CaptionText}}%
+% {\FP@savedCaptionCommand[\expandafter\protect\FP@optionalCaptionText]%
+% {\expandafter\protect\FP@CaptionText}}%
+% \end{\@captype}}%
+% }%
+% \end{verbatim}%^^A
+% \begin{macrocode}
+ \renewcommand*\FP@floatEnd{%
+ \end{lrbox}%
+% \end{macrocode}
+% \begin{macrocode}
+ \stepcounter{FP@\FP@captype C}%
+ \caption@label\FP@positionLabel
+ \FP@helpNote\FP@captype\FP@positionLabel
+% \end{macrocode}
+% \begin{macrocode}
+ \edef\FP@RestoreCounter{%
+ \noexpand\setcounter{\FP@captype}{\the\value\FP@captype}%
+ \noexpand\setcounter{ContinuedFloat}{\the\value{ContinuedFloat}}}%
+% \end{macrocode}
+% \begin{macrocode}
+ \FP@float
+ {\FP@positionLabel}% location label test
+ {\begin\FP@captype[p!]%
+ \usebox\FP@floatCorpusBOX
+ \let\caption@SClentry\@empty
+ \def\caption{\caption@dblarg{\@caption\@captype}}%
+ \long\def\@caption##1[##2]##3{\def\caption@SClentry{##2}}%
+ \let\FP@label\label
+ \let\label\caption@gobble
+ \caption@defrost
+ \caption@ifFPlistcap
+ {\caption@refstepcounter\@captype
+ \expandafter\caption@makecurrent\expandafter\@captype
+ \expandafter{\caption@SClentry}}%
+ {\ifx\caption@SClentry\@empty \else
+ \expandafter\captionlistentry\expandafter{\caption@SClentry}%
+ \fi}%
+ \caption@makeanchor\relax
+ \FP@Label
+ \end\FP@captype}%
+ {\FP@RestoreCounter
+ \@ifundefined{theH\FP@captype}{}{%
+ \expandafter\l@addto@macro\csname theH\FP@captype\endcsname{.FP}}}%
+ {\begin\FP@captype[b!]%
+ \let\FP@savedSetfnumCommand\caption@setfnum
+ \def\caption@setfnum##1{%
+ \FP@savedSetfnumCommand{##1}%
+ \ifx\FP@guide\@empty \else
+ \expandafter\l@addto@macro\csname fnum@##1\endcsname{\ {\FP@guide}}%
+ \fi}%
+ \setlength\abovecaptionskip{2pt plus 2pt minus 1pt}% length above caption
+ \setlength\belowcaptionskip{2pt plus 2pt minus 1pt}% length below caption
+ \caption@setoptions{FP\@captype}%
+ \FP@separatorCaption
+ \caption@ifFPlistcap{}{\let\caption@addcontentsline\@gobbletwo}%
+ \caption@defrost
+ \end\FP@captype}%
+ }%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+}{%
+ \let\caption@ifFPlistcap\@undefined
+ \let\caption@ifFPrefcap\@undefined
+}
+% \end{macrocode}
+%
+% \subsubsection{The hyperref package}
+% \changes{v3.0f}{2005/06/11}{Support of the \package{hyperref} package added}
+% \changes{v3.1}{2007/03/09}{Usage of \cs{hyper@makecurrent} instead of
+% \cs{theHfigure} as indicator for \package{hyperref} package}
+% \changes{v3.2}{2011/07/30}{Test if \package{hyperref} has stopped early revised}
+% \changes{v3.2c}{2011/08/24}{Test if \package{hyperref} has stopped early adapted to current version of \package{hyperref} package: Usage of \cs{IfHyperBoolean} added}
+%
+% \begin{macrocode}
+\caption@IfPackageLoaded{hyperref}[2003/11/30 v6.74m]{%
+ % Test if hyperref has stopped early
+ \caption@ifundefined\IfHyperBoolean{%
+ \caption@set@bool\caption@ifhyp@stoppedearly0%
+ \caption@ifundefined\H@refstepcounter
+ {\caption@set@bool\caption@ifhyp@stoppedearly1}{%
+ \caption@ifundefined\hyper@makecurrent
+ {\caption@set@bool\caption@ifhyp@stoppedearly1}{%
+ \caption@ifundefined\measuring@true
+ {\caption@set@bool\caption@ifhyp@stoppedearly1}{}}}%
+ }{%
+ \def\caption@ifhyp@stoppedearly{\IfHyperBoolean{stoppedearly}}%
+ }%
+ \caption@ifhyp@stoppedearly{% hyperref has stopped early
+ \caption@InfoNoLine{%
+ Hyperref support is turned off\MessageBreak
+ because hyperref has stopped early}%
+ }{%
+ \g@addto@macro\caption@prepareslc{\measuring@true}%
+% \end{macrocode}
+%
+% \begin{macro}{\caption@@refstepcounter}
+% We redefine |\caption@@refstepcounter| so |\H@refstepcounter| will be used
+% instead of |\refstepcounter| inside |\caption| \& |\captionlistentry|.
+% \begin{macrocode}
+ \renewcommand*\caption@@refstepcounter{\H@refstepcounter}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@makecurrent}
+% \changes{v3.1l}{2010/01/09}{Adapted to current version of nameref package}
+% We redefine |\caption@makecurrent| so a \package{hyperref} label
+% will be defined inside |\@caption|.
+% \Note{Will be redefined by \cs{caption@start}.}
+% \begin{macrocode}
+ \renewcommand*\caption@makecurrent[2]{%
+ \caption@makecurrentHref{#1}%
+ \caption@Debug{hyperref current=\@currentHref}%
+ \caption@gettitle{#2}}%
+% \end{macrocode}
+% \begin{macrocode}
+ \newcommand*\caption@makecurrentHref{\hyper@makecurrent}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@makeanchor}
+% \changes{v3.1l}{2010/01/09}{Adapted to the current hyperref package}
+% We redefine |\caption@makeanchor| so a \package{hyperref} anchor
+% will be set inside |\@caption|.
+% \Note{Will be redefined by \cs{caption@start}.}
+% \begin{macrocode}
+ \renewcommand\caption@makeanchor[1]{%
+ \caption@Debug{hyperref anchor: \@currentHref}%
+ % If we cannot have nesting, the anchor is empty.
+ \ifHy@nesting
+ \expandafter\hyper@@anchor\expandafter{\@currentHref}{#1}%
+ \else
+ \Hy@raisedlink{%
+ \expandafter\hyper@@anchor\expandafter{\@currentHref}{\relax}%
+ }#1%
+ \fi}%
+% \end{macrocode}
+% \begin{macrocode}
+ \g@addto@macro\caption@prepareslc{\let\caption@makeanchor\@firstofone}%
+% \end{macrocode}
+% \end{macro}
+%
+% \paragraph{The hypcap option}
+%
+% \begin{macro}{\if@capstart}
+% Like the \package{hypcap} package we define the switch |\if@capstart|, too.
+% \begin{macrocode}
+ \newif\if@capstart
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@start}
+% \changes{v3.0l}{2007/02/20}{%
+% \cs{caption@currentHref} renamed to \cs{hc@currentHref}}
+% \changes{v3.1}{2007/06/21}{%
+% This macro renamed from \cs{capstart} to \cs{caption@start} and revised}
+% While the \package{hypcap} package defines a macro called |\capstart|
+% our variant is called |\caption@start| and is controlled by the option
+% |hypcap=||false|/|true|.
+% \begin{macrocode}
+ \def\caption@start{\caption@ifhypcap\caption@start@\relax}%
+ \def\caption@start@{%
+% \end{macrocode}
+% Generate the \package{hyperref} label and set the \package{hyperref} anchor,
+% usually (if |hypcap=false|) both is done inside |\@caption|.
+% \begin{macrocode}
+ \caption@makestart\@captype
+ \caption@startanchor\@currentHref
+% \end{macrocode}
+% Prevent |\@caption| from generating a new \package{hyperref} label,
+% use the label we save in |\hc@currentHref| instead.
+% (We also support the |@capstart| flag from the \package{hypcap} package.)
+% \begin{macrocode}
+ \global\@capstarttrue
+ \let\hc@currentHref\@currentHref
+ \def\caption@makecurrentHref##1{%
+ \global\@capstartfalse
+ \global\let\@currentHref\hc@currentHref}%
+% \end{macrocode}
+% Prevent |\@caption| from generating a \package{hyperref} anchor since this
+% has already been done.
+% \begin{macrocode}
+ \let\caption@makeanchor\@firstofone
+% \end{macrocode}
+% \begin{macrocode}
+ }%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@makestart}
+% \changes{v3.1c}{2007/09/30}{\cs{@currentHref} will be extended by \texttt{caption}
+% instead of \texttt{xxx} now}
+% |\caption@makestart|\marg{type}
+% defines a \package{hyperref} anchor inside |\caption@start|.\par
+% Since we offer |\ContinuedFloat| the float counter can change between
+% `now' and |\caption|, i.e., we simply don't know the figure or table counter
+% yet and therefore we are not able to generate the `right' \package{hyperref}
+% label.
+% Two different solutions of this problem came into my mind:
+% \begin{enumerate}
+% \item I could use the aux file for this purpose.\par
+% -or-
+% \item I set |hypertexnames=false| locally.
+% Furthermore I use |#1.caption.|\meta{counter} (instead of |#1.|\meta{counter})
+% as naming scheme for |\@currentHref| to avoid conflicts with other hyper
+% links which are generated with |hypertexnames=true|.
+% \end{enumerate}
+% The first idea has the advantage that the `right' anchor name will be
+% generated, but one needs an additional \LaTeX\ run if figures or tables
+% will be inserted or removed.\par
+% The second idea has the advantage that it's very easy to implement, but
+% has some side-effects, e.g. the anchor names don't follow the figure or
+% table label names anymore.\par
+% Since I'm lazy I implemented the second idea, maybe I will revise this
+% later on.
+% \begin{macrocode}
+ \newcommand*\caption@makestart[1]{%
+ \begingroup
+ \Hy@hypertexnamesfalse
+% \gdef\@currentHlabel{}%
+ \hyper@makecurrent{#1.caption}%
+ \endgroup
+ \caption@Debug{hypcap start=\@currentHref}}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@startanchor}
+% \changes{v3.1b}{2007/09/17}{Bugfix 06-09-17: We use \cs{caption@anchor} instead of \cs{hyper@@anchor}}
+% \changes{v3.1g}{2008/03/16}{Warning about TeX mode replaced with debug info}
+% |\caption@startanchor|\marg{Href}
+% sets a \package{hyperref} anchor inside |\caption@start|.\par
+% This code was taken from the \package{hypcap} package\cite{hypcap} and adapted.
+% \Note{Since \cs{hyper@@anchor}\marg{Href}\csmarg{\string\relax} can cause
+% a change from vertical mode to horizontal mode (design flaw in
+% \package{hyperref} package!?), and since the workaround
+% \cs{let}\cs{leavevmode}\cs{relax} which can be found in the
+% \package{hypcap} package is not always sufficient
+% (for example with ``Direct pdfmark support'' and \texttt{breaklinks=true}),
+% we use \cs{caption@anchor} instead of \cs{hyper@@anchor} here.}
+% \begin{macrocode}
+ \newcommand*\caption@startanchor[1]{%
+ \ifvmode\begingroup
+ \caption@Debug{hypcap anchor: #1 (vertical mode)}%
+ \@tempdima\prevdepth
+ \nointerlineskip
+ \vspace*{-\caption@hypcapspace}%
+ \caption@anchor{#1}%
+ \vspace*{\caption@hypcapspace}%
+ \prevdepth\@tempdima
+ \endgroup\else
+ \caption@Debug{hypcap anchor: #1 (horizontal mode)}%
+ \caption@anchor{#1}%
+ \fi}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@anchor}
+% \changes{v3.1c}{2007/10/17}{Workaround 07-10-17: We use \cs{caption@raisedlink} instead of \cs{Hy@raisedlink} now}
+% |\caption@anchor|\marg{Href} sets a \package{hyperref} anchor.
+% \begin{macrocode}
+ \newcommand*\caption@anchor[1]{%
+ \ifmeasuring@ \else
+ \caption@raisedlink{\hyper@anchorstart{#1}\hyper@anchorend}%
+ \fi}%
+% \end{macrocode}
+% \Note{Since \cs{Hy@raisedlink} change \cs{@tempdima} we surrounded it by \cs{ifvmode},
+% suppressing ``\texttt{LaTeX Warning: Float too large for page by 1.0pt}'' in \texttt{sideways} floats.
+% (This is not necessary since \package{hyperref} \version{6.77}.)}
+% \begin{macrocode}
+ \ifx\HyperRaiseLinkLength\@tempdima
+ \def\caption@raisedlink#1{\ifvmode#1\else\Hy@raisedlink{#1}\fi}%
+ \else
+ \let\caption@raisedlink\Hy@raisedlink
+ \fi
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@@start}
+% Will be used by |\caption@freezeHref|. Apart from that we issue a warning
+% if we expect a saved \package{hyperref} label coming from |\caption@start|,
+% but there isn't any.
+% \begin{macrocode}
+ \def\caption@@start{%
+ \caption@ifundefined\hc@currentHref{%
+ \caption@Warning{%
+ The option `hypcap=true' will be ignored for this\MessageBreak
+ particular \string\caption}}{}}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@freezeHref}
+% Suppress |\caption@start| from generating a \package{hyperref} label and
+% setting a \package{hyperref} anchor. Instead if |\@caption| generates a
+% \package{hyperref} label, it will be stored in |\caption@currentHref|.
+% Furthermore we need to redefine |\caption@setfloatcapt| so no
+% \package{hyperref} anchor will be placed in |\@caption|.
+% \iffalse
+% (Since |\caption@setfloatcapt| will be set to |\@firstofone| inside
+% |\subcaption| there is no need to add its restauration to
+% |\caption@subtypehook|.)
+% \fi
+% \begin{macrocode}
+ \def\caption@freezeHref{%
+ \let\caption@ORI@start\caption@start
+ \def\caption@start{\let\caption@start\caption@ORI@start}%
+% \end{macrocode}
+% \begin{macrocode}
+% \let\caption@ORI@@start\caption@@start
+% \l@addto@macro\caption@subtypehook{%
+% \let\caption@@start\caption@ORI@@start}%
+% \end{macrocode}
+% \begin{macrocode}
+ \global\let\caption@currentHref\@undefined
+ \def\caption@@start{\global\let\caption@currentHref\@currentHref}%
+% \end{macrocode}
+% \begin{macrocode}
+ \let\caption@ORI@setfloatcapt\caption@setfloatcapt
+ \renewcommand*\caption@setfloatcapt{%
+ \ifx\caption@currentHref\@undefined \else
+ \let\caption@makeanchor\@firstofone
+ \fi
+ \caption@ORI@setfloatcapt}}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@defrostHref}
+% If there is a freezed |\@currentHref|, we set the \package{hyperref}
+% anchor here.
+% \begin{macrocode}
+ \def\caption@defrostHref{%
+ \ifx\caption@currentHref\@undefined \else
+ \caption@startanchor\caption@currentHref
+ \global\let\caption@currentHref\@undefined
+ \fi}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\float@makebox}
+% Do our own redefinition of |\float@makebox|, if it was redefined by
+% the \package{hyperref} package.
+% \begin{macrocode}
+ \caption@ifundefined\HyOrg@float@makebox{}{%
+ \caption@Debug{%
+ Redefining \noexpand\float@makebox (again)\@gobble}%
+ \let\caption@ORI@float@makebox\float@makebox % save for compatibility mode
+ \renewcommand\float@makebox[1]{%
+ \HyOrg@float@makebox{#1\relax \caption@defrostHref}}%
+ }%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+ }}{}
+% \end{macrocode}
+%
+% \subsubsection{The hypcap package}
+% \changes{v3.0f}{2005/06/22}{Support of the \package{hypcap} package added}
+% \changes{v3.0l}{2007/02/20}{Adapted to \package{hypcap} \version{1.6}}
+% \changes{v3.1e}{2007/11/04}{\package{hypcap} support adapted to \package{hyperref} \version{6.77}}
+%
+% \begin{macrocode}
+\caption@IfPackageLoaded{hypcap}{% v1.0
+ \ifx\caption@start\relax \else % hyperref hasn't stopped early
+% \end{macrocode}
+%
+% If the \package{hypcap} package was loaded, we give up our own
+% hyperlink placement algorithm and give the control over the placement
+% to the \package{hypcap} package instead.
+%
+% \begin{macro}{\capstart}
+% \changes{v3.1k}{2009/10/09}{Support of \cs{ifcapstart} (\package{hypcap} package \version{1.10}) added}
+% We do this simply by mapping |\capstart| to |\caption@start@|,
+% although our code does not behave exactly like the original one:
+% The original |\capstart| has an effect on the next |\caption|
+% only but our version affects \emph{all} |\caption|s in the same
+% environment, at least unless a new |\capstart| will be placed.
+% \begin{macrocode}
+ \let\caption@ORI@capstart\capstart % save for compatibility mode
+ \caption@ifundefined\capstarttrue % check for v1.10 of hypcap package
+ {\def\capstart{\caption@start@}}%
+ {\def\capstart{\ifcapstart\caption@start@\fi}}%
+ \let\caption@start\relax
+ \let\caption@@start\relax
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@hypcapspace}
+% Furthermore we map our |\caption@hypcapspace| to |\hypcapspace|
+% offered by the \package{hypcap} package.
+% \begin{macrocode}
+ \caption@set@bool\caption@ifhypcap 1%
+ \renewcommand*\caption@hypcapspace{\hypcapspace}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+ \fi}{}
+% \end{macrocode}
+%
+% \subsubsection{The listings package}
+% \changes{v3.0b}{2004/05/16}{Support of the \package{listings} package added}
+%
+% \begin{macrocode}
+\caption@IfPackageLoaded{listings}[2004/02/13 v1.2]{%
+% \end{macrocode}
+%
+% \begin{macro}{\lst@MakeCaption}
+% \changes{v3.1g}{2008/01/20}{Bugfix: Skips are handled correctly now}
+% \changes{v3.1k}{2008/03/29}{Bugfix 08-10-16-dctt: \texttt{rule=0} added}
+% \changes{v3.2}{2010/10/26}{Bugfix 10-07-20a: Set \cs{hsize} to \cs{linewidth}, if necessary}
+% To support the \package{listings} package we need to redefine
+% |\lst@MakeCaption| so the original stuff is nested with
+% |\caption@begin| and |\caption@end| etc.
+% \Note{This macro is always called twice (with `t' resp. `b' as
+% parameter), therefore we need an extra group here.}
+% \begin{macrocode}
+ \let\caption@ORI@lst@MakeCaption\lst@MakeCaption
+ \def\lst@MakeCaption#1{% #1 is `t' or `b'
+ \begingroup
+% \end{macrocode}
+% Workaround for bug in \package{listings} package:
+% If |\hsize| seems not to be set correctly, we set it to |\linewidth|.
+% \begin{macrocode}
+ \ifdim\hsize>\linewidth
+ \hsize\linewidth
+ \fi
+% \end{macrocode}
+% First of all, we set |position=#1| and if it was set to `top',
+% we swap the skips so the default behavior of the \package{listings} package
+% will not be changed. (Note that the \package{listings} package has set its
+% own |\abovecaptionskip| \& |\belowcaptionskip| values prior to calling
+% \cs{lst@MakeCaption}.)
+% \begin{macrocode}
+ \caption@setposition{#1}%
+ \caption@iftop{%
+ \@tempdima\belowcaptionskip
+ \belowcaptionskip\abovecaptionskip
+ \abovecaptionskip\@tempdima}{}%
+% \end{macrocode}
+% Workaround for issue with wrong skips (should be examined further)
+% \begin{macrocode}
+ \caption@setup{rule=0}%
+% \end{macrocode}
+% Afterwards we set the local `lstlisting' options.
+% \begin{macrocode}
+ \caption@setoptions{lstlisting}%
+% \end{macrocode}
+% If the |position=| is now set to |auto|, we take over the |captionpos=|
+% setting from the \package{listings} package.
+% \begin{macrocode}
+ \caption@setautoposition{#1}%
+% \end{macrocode}
+% At the end we do similar stuff as in our \cs{@caption} code.
+% \begin{macrocode}
+ \caption@begin{lstlisting}%
+ \caption@ORI@lst@MakeCaption{#1}%
+ \caption@end
+% \end{macrocode}
+% \begin{macrocode}
+ \endgroup}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\lst@makecaption}
+% \begin{macro}{\lst@maketitle}
+% Wrapper macros for typesetting the |caption=| resp. |title=| value.
+% \begin{macrocode}
+ \def\lst@makecaption{\caption@starfalse\@makecaption}%
+ \def\lst@maketitle{\caption@startrue\@makecaption\@empty}%
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+%
+% \begin{macro}{\ext@lstlisting}
+% \changes{v3.1}{2007/03/03}{This macro added}
+% Since the \package{listings} package do not define |\ext@lstlisting|
+% but we needed it when |\captionof{lstlisting}| will be done by the end user,
+% we define it here.
+% \begin{macrocode}
+ \providecommand*\ext@lstlisting{lol}%
+% \end{macrocode}
+% \end{macro}
+%
+% \changes{v3.1a}{2007/07/13}{Bugfix 07-09-13: \cs{lst@@caption} will not be re-defined anymore}
+%
+% \begin{macrocode}
+}{}
+% \end{macrocode}
+%
+% \subsubsection{The longtable package}
+%
+% \begin{macro}{\LTcaptype}
+% \changes{v3.1}{2007/07/06}{This macro and its support added}
+% |\LTcaptype| is preset to |table|.
+% \begin{macrocode}
+\providecommand*\LTcaptype{table}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+\caption@IfPackageLoaded{longtable}[1995/05/24 v3.14]{%
+% \end{macrocode}
+% \begin{macrocode}
+ \RequirePackage{ltcaption}[=2007/09/01]%
+ \let\LT@@makecaption\@undefined
+% \end{macrocode}
+%
+% \begin{macro}{\LT@array}
+% \changes{v3.1}{2007/07/22}{This redefinition added}
+% \changes{v3.1a}{2007/09/14}{Bugfix 07-09-14: Redefinition of \cs{@captionabovetrue} \& \cs{@captionabovefalse} added}
+% \changes{v3.1a}{2007/09/16}{Bugfix: This redefinition will always be done \cs{AtBeginDocument}}
+% \changes{v3.1g}{2008/01/20}{Bugfix in \cs{captionlistentry}: Table counter will not be incremented anymore, \cs{nameref} works}
+% We redefine |\LT@array| here to get |\captionsetup|\marg{options}
+% working inside |longtable|s.
+% \Note{Since the \package{hyperref} package patches \cs{LT@array} as well
+% and since this only works with the original definition of \cs{LT@array},
+% we have to do this after the \package{hyperref} package,
+% i.e.~\cs{AtBeginDocument}.}
+% \begin{macrocode}
+ \caption@AtBeginDocument{%
+ \let\caption@ORI@LT@array\LT@array
+ \renewcommand*\LT@array{%
+% \end{macrocode}
+% |\captionsetup| for longtable:
+% \begin{macrocode}
+ \global\let\caption@opt@@longtable\@undefined
+ \def\captionsetup{%
+ \noalign\bgroup
+ \@ifstar\@captionsetup\@captionsetup}% gobble *
+ \def\@captionsetup##1{\LT@captionsetup{##1}\egroup}%
+ \def\LT@captionsetup##1{%
+ \captionsetup@startrue\caption@setup@options[@longtable]{##1}%
+ \global\let\caption@opt@@longtable\caption@opt@@longtable}%
+% \end{macrocode}
+% |\captionabove| \& |\captionbelow| for longtable: (\KOMAScript\ document class)
+% \begin{macrocode}
+ \def\@captionabovetrue{\LT@captionsetup{position=t}}%
+ \def\@captionabovefalse{\LT@captionsetup{position=b}}%
+% \end{macrocode}
+% |\captionlistentry| for longtable:
+% \begin{macrocode}
+ \def\captionlistentry{%
+ \noalign\bgroup
+ \@ifstar{\egroup\LT@captionlistentry}% gobble *
+ {\egroup\LT@captionlistentry}}%
+ \def\LT@captionlistentry##1{%
+ \caption@listentry\@firstoftwo[\LTcaptype]{##1}}%
+% \end{macrocode}
+% |\ContinuedFloat| for longtable:\\
+% {\small(Commented out, since it's not deeply tested and quite useless anyway)}
+% \Note{\package{hyperref} versions $<$ v6.76j uses $2\times$ \cs{hyper@makecurrent}}
+% \begin{macrocode}
+% \caption@ifhypcap{%
+% \let\caption@ORI@hyper@makecurrent\hyper@makecurrent
+% \def\hyper@makecurrent##1{%
+% \let\hyper@makecurrent\caption@ORI@hyper@makecurrent
+% \caption@makestart{##1}%
+%% \let\Hy@LT@currentHlabel\@currentHlabel
+% \let\Hy@LT@currentHref\@currentHref
+% \def\hyper@makecurrent####1{%
+%% \let\@currentHlabel\Hy@LT@currentHlabel
+% \let\@currentHref\Hy@LT@currentHref}}%
+% \let\caption@ORI@ContinuedFloat\ContinuedFloat
+% \def\ContinuedFloat{\noalign{%
+% \gdef\caption@setContinuedFloat{%
+% \let\caption@resetContinuedFloat\@gobble}%
+% \def\caption@setoptions####1{%
+% \g@addto@macro\caption@setContinuedFloat{%
+% \caption@setoptions{####1}}}%
+% \let\@captype\LTcaptype
+% \caption@ORI@ContinuedFloat}}%
+% }{%
+% \def\ContinuedFloat{\noalign{%
+% \caption@Error{%
+% \noexpand\ContinuedFloat inside longtables\MessageBreak
+% is only available with `hypcap=true'}}}%
+% }%
+% \global\let\caption@setContinuedFloat\@empty
+ \def\ContinuedFloat{\noalign{%
+ \caption@Error{\noexpand\ContinuedFloat outside float}}}%
+% \end{macrocode}
+% \begin{macrocode}
+ \caption@ORI@LT@array}}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\LT@c@ption}
+% \changes{v3.1g}{2008/01/22}{Made it \cs{long}}
+% The original implementation:
+% \begin{verbatim}
+% \def\LT@c@ption#1[#2]#3{%
+% \LT@makecaption#1\fnum@table{#3}%
+% \def\@tempa{#2}%
+% \ifx\@tempa\@empty\else
+% {\let\\\space
+% \addcontentsline{lot}{table}{\protect\numberline{\thetable}{#2}}}%
+% \fi}
+% \end{verbatim}%^^A
+% Our implementation uses |\LTcaptype| instead of |{table}|:
+% \begin{macrocode}
+ \long\def\LT@c@ption#1[#2]#3{%
+ \LT@makecaption#1{\csname fnum@\LTcaptype\endcsname}{#3}%
+ \LT@captionlistentry{#2}}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\LT@makecaption}
+% \changes{v3.0d}{2004/08/10}{%
+% Bugfix 04-08-04: \cs{abovecaptionskip} \& \cs{belowcaptionskip} will be used now}
+% \changes{v3.0e}{2005/05/05}{%
+% Bugfix: \cs{captionsetup[longtable]} overrides \cs{LTcapwidth} now}
+% \changes{v3.0h}{2005/10/07}{\cs{caption@LT@make} introduced}
+% |\LT@makecaption|\marg{cmd}\marg{label}\marg{text}\par
+% \smallskip
+% The original definition:
+% \begin{verbatim}
+% \def\LT@makecaption#1#2#3{%
+% \LT@mcol\LT@cols c{\hbox to\z@{\hss\parbox[t]\LTcapwidth{%
+% % Based on article class "\@makecaption", "#1" is "\@gobble" in star
+% % form, and "\@firstofone" otherwise.
+% \sbox\@tempboxa{#1{#2: }#3}%
+% \ifdim\wd\@tempboxa>\hsize
+% #1{#2: }#3%
+% \else
+% \hbox to\hsize{\hfil\box\@tempboxa\hfil}%
+% \fi
+% \endgraf\vskip\baselineskip}%
+% \hss}}}
+% \end{verbatim}%^^A
+% Our definition:
+% \begin{macrocode}
+ \renewcommand\LT@makecaption[3]{%
+ \caption@LT@make{%
+% \end{macrocode}
+%
+% If |\LTcapwidth| is not set to its default value |4in| we assume
+% that it shall overwrite our own setting.
+% (But |\captionsetup[longtable]{width=|\ldots|}| will overwrite |\LTcapwidth|.)
+% \begin{macrocode}
+ \caption@settype*\LTcaptype
+ \ifdim\LTcapwidth=4in \else
+ \setcaptionwidth\LTcapwidth
+ \fi
+ \caption@setoptions{longtable}%
+% \caption@setContinuedFloat
+ \caption@setoptions{@longtable}%
+% \end{macrocode}
+%
+% \iffalse
+% The default |position=| setting for longtables is |top|.
+% (This emulates the standard behavior of the \package{longtable} package
+% which has no skip above the caption but a skip below it.)
+% \fi
+%
+% |position=auto| is a bad idea for longtables, but we do our very best.
+% This works quite well for captions inside the longtable contents, but
+% not for captions inside the longtable (end)foot.
+% \Note{This should be `top' if unclear!}
+% \begin{macrocode}
+ \caption@setautoposition{\ifcase\LT@rows t\else b\fi}%
+% \end{macrocode}
+%
+% We set |\ifcaption@star| according the 1st argument.
+% \begin{macrocode}
+ \caption@startrue#1\caption@starfalse
+% \end{macrocode}
+%
+% \changes{v3.1}{2007/05/05}{\cs{caption@normalsize} added}
+% \begin{macrocode}
+ \caption@resetContinuedFloat\LTcaptype
+ \caption@begin\LTcaptype
+ \caption@normalsize
+% \end{macrocode}
+%
+% The following skip has the purpose to correct the height of the
+% |\parbox[t]|. Usually it's the height of the very first line, but
+% because of our extra skips (|\abovecaptionskip| and |\belowcaptionskip|)
+% it's always |0pt|.\par
+% (A different idea would be typesetting the first skip outside the longtable
+% column with |\noalign{\vskip|\ldots|}|, but this means we have to move
+% |\caption@begin| to some other place because it does not work in tabular
+% mode. And at the moment I have no idea on how to do this in an elegant
+% way\ldots)
+% \begin{macrocode}
+ \vskip-\ht\strutbox
+% \end{macrocode}
+%
+% The following code should look familiar. We do our skips and use
+% |\caption@@make| to typeset the caption itself.
+% \begin{macrocode}
+ \caption@iftop{\vskip\belowcaptionskip}{\vskip\abovecaptionskip}%
+ \caption@@make{#2}{#3}\endgraf
+ \caption@iftop{\vskip\abovecaptionskip}{\vskip\belowcaptionskip}%
+ \caption@end}}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+}{}
+% \end{macrocode}
+%
+% \subsubsection{The picinpar package}
+% \changes{v3.1}{2007/06/13}{Support of the \package{picinpar} package added}
+%
+% \begin{macrocode}
+\caption@IfPackageLoaded{picinpar}{%
+% \end{macrocode}
+%
+% \begin{macro}{\figwindow}
+% \begin{macro}{\tabwindow}
+% The \package{picinpar} package comes with its own caption code
+% (|\wincaption|, |\@wincaption|, |\@makewincaption|, \ldots)
+% so we redefine |\figwindow| \& |\tabwindow| to use |\caption| instead.
+% \begin{macrocode}
+ \long\def\figwindow[#1,#2,#3,#4] {%
+ \caption@window{figure}%
+ \caption@setoptions{figwindow}%
+ \begin{window}[#1,#2,{#3},\caption@wincaption{#4}] }%
+% \end{macrocode}
+% \begin{macrocode}
+ \long\def\tabwindow[#1,#2,#3,#4] {%
+ \caption@window{table}%
+ \caption@setoptions{tabwindow}%
+ \begin{window}[#1,#2,{#3},\caption@wincaption{#4}] }%
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+%
+% \begin{macro}{\caption@window}
+% \changes{v3.1c}{2007/10/06}{Bugfix: \cs{caption@clearmargin} added}
+% Beside calling |\caption@settype| we redefine |\caption@boxrestore|
+% (as in \package{floatflt} \& \package{picins} package support)
+% and |\@makecaption| (as in \package{float} package support) here.
+% \begin{macrocode}
+ \newcommand*\caption@window[1]{%
+ \let\@makecaption\caption@@make
+ \caption@setautoposition b%
+ \caption@settype{#1}%
+ \caption@clearmargin
+ \caption@setfullparboxrestore}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@wincaption}
+% \changes{v3.1d}{2007/10/25}{Missing \% added}
+% This one finally typesets the caption using |\caption|.
+% \begin{macrocode}
+ \newcommand\caption@wincaption[1]{%
+% \end{macrocode}
+% This will be done twice for every |figwindow| \& |tabwindow| caption --
+% on the first run |\picwd| is |0pt|, on the second run |\picwd| is |\hsize|.
+% \begin{macrocode}
+ \ifdim\picwd=\z@
+ \let\caption@makecurrent\@gobbletwo
+ \let\caption@@start\relax
+ \caption@prepareslc
+ \fi
+% \end{macrocode}
+% The argument |#1| could contain simply the caption text
+% (e.g.~|A figure caption|), but it could also contain an optional argument,
+% the \meta{lst\_entry}
+% (e.g.~|[An| |entry| |to| |the| |LOF]||{A| |figure| |caption}|).
+% Therefore we have to test if |#1| begins with~|[| or not; furthermore we
+% support a starred variant -- as in |\caption*| -- so we test for~|*|, too.
+% \begin{macrocode}
+ \edef\@tempa{\expandafter\noexpand\@car#1\@nil}%
+ \if\@tempa*%
+ \let\@tempa\@firstofone
+ \else\if\@tempa[%]
+ \let\@tempa\@firstofone
+ \else
+ \let\@tempa\@empty
+ \fi\fi
+ \expandafter\caption\@tempa{#1}}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+}{}
+% \end{macrocode}
+%
+% \subsubsection{The picins package}
+% \changes{v3.0j}{2006/01/26}{Support of the \package{picins} package added}
+%
+% \begin{macro}{\piccaptiontype}
+% |\piccaptiontype|\marg{type}\par
+% We offer this macro for changing the \meta{type} of the caption, so the user
+% doesn't have to redefine |\@captype|, as proposed in the \package{picins}
+% documentation.
+% \Note{We define this macro here so it can be used in the
+% preamble of the document, even when \thispackage\ was loaded prior to the
+% \package{picins} package.}
+% \begin{macrocode}
+\newcommand*\piccaptiontype[1]{\def\@piccaptype{#1}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+\caption@IfPackageLoaded{picins}{%
+% \end{macrocode}
+%
+% Initial set |\@piccaptype| and undefine |\@captype| which was set to
+% |figure| by the \package{picins} package.
+% \begin{macrocode}
+ \caption@ifundefined\@piccaptype{%
+ \caption@iftype{%
+ \let\@piccaptype\@captype
+ }{%
+ \def\@piccaptype{figure}%
+ }%
+ }{}%
+ \let\@captype\@undefined
+% \end{macrocode}
+%
+% \begin{macro}{\piccaption}
+% The original code:
+% \begin{verbatim}
+% \def\piccaption{\@ifnextchar [{\@piccaption}{\@piccaption[]}}
+% \end{verbatim}%^^A
+% Our code uses |\caption@star| so |\piccaption*| works,
+% and |\caption@dblarg| so |\piccaption{}| works correctly.
+% \begin{macrocode}
+ \def\piccaption{\caption@star\relax{\caption@dblarg\@piccaption}}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\make@piccaption}
+% \changes{v3.1}{2007/12/06}{Bugfix: \cs{caption@clearmargin} will always be used now}
+% The original code:
+% \begin{verbatim}
+% \def\make@piccaption{%
+% [...]
+% \setbox\@TEXT=\vbox{\hsize\hsiz@\caption[\sh@rtf@rm]{\capti@nt@xt}}%
+% }
+% \end{verbatim}%^^A
+% In our code we have to correct several things:
+% \begin{enumerate}
+% \item |\@captype| must be defined, since we have removed the global
+% definition.
+% \item We use |\caption@setoptions{parpic}| so
+% |\captionsetup[parpic]{|\ldots|}| is supported.
+% \item |\linewidth| must be set correctly.
+% Usually this is done by |\@parboxrestore| inside |\@caption|,
+% but since we use |\@caption@boxrestore| we have to map this to
+% |\@parboxrestore| instead.
+% \item The two arguments of |\caption| (|\sh@rtf@rm| \& |\capti@nt@xt|)
+% should be expanded on first level so |\caption[]{|\ldots|}| and
+% |\caption[|\ldots|]{}| work correctly.
+% \end{enumerate}
+% \begin{macrocode}
+ \let\caption@ORI@make@piccaption\make@piccaption
+ \def\make@piccaption{%
+ \let\caption@ORI\caption
+% \end{macrocode}
+% \begin{macrocode}
+ \long\def\caption[##1]##2{%
+ \caption@freezeHref % will be defrosted in \ivparpic
+ \caption@settype\@piccaptype
+% \ifnum\c@piccaptionpos>2\relax
+ \caption@clearmargin
+% \else
+% \captionwidth\z@ % do not use "width=" setting
+% \fi
+ \caption@setfullparboxrestore
+ \caption@setoptions{parpic}%
+ \caption@setautoposition b%
+% \end{macrocode}
+% \begin{macrocode}
+ \expandafter\expandafter\expandafter\caption@ORI
+ \expandafter\expandafter\expandafter[%
+ \expandafter\expandafter\expandafter{%
+ \expandafter##1\expandafter}\expandafter]\expandafter{##2}}%
+% \end{macrocode}
+% {\footnotesize\begin{quote}
+% \leavevmode\llap{-or-\quad}%^^A
+% |\begingroup|\\
+% | \toks0\expandafter{##1}| |\toks2\expandafter{##2}|\\
+% | \edef\x{\endgroup|\\
+% | \noexpand\caption@ORI[{\the\toks0}]{\the\toks2}}|\\
+% | \x|
+% \end{quote}
+% \begin{quote}
+% \leavevmode\llap{-or-\quad}%^^A
+% |\edef\x{%|\\
+% | \noexpand\caption@ORI[{\unexpanded\expandafter{##1}}]%|\\
+% | {\unexpanded\expandafter{##2}}}|\\
+% |\x|
+% \end{quote}}
+% \begin{macrocode}
+ \caption@ORI@make@piccaption
+ \let\caption\caption@ORI}%
+% \end{macrocode}
+% \end{macro}
+%
+
+% \begin{macro}{\ivparpic}
+% We need to set our \package{hyperref} anchor here.
+% Not bullet-proof since we have to redefine |\noindent| here!
+% \begin{macrocode}
+ \let\caption@ORI@ivparpic\ivparpic
+ \def\ivparpic(#1,#2)(#3,#4)[#5][#6]#7{%
+ \let\caption@ORI@noindent\noindent
+ \def\noindent{%
+ \caption@defrostHref
+ \let\noindent\caption@ORI@noindent
+ \noindent}%
+ \caption@ORI@ivparpic(#1,#2)(#3,#4)[#5][#6]{#7}%
+ \let\noindent\caption@ORI@noindent}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+}{%
+ \let\piccaptiontype\@undefined
+}
+% \end{macrocode}
+%
+% \subsubsection{The rotating package}
+%
+% \begin{macrocode}
+\caption@IfPackageLoaded{rotating}[1995/08/22 v2.10]{%
+% \end{macrocode}
+%
+% \begin{macro}{\rotcaption}
+% \changes{v3.0c}{2004/07/16}{Bugfix: Check for \cs{caption@star} removed}
+% \changes{v3.0i}{2005/12/07}{Rewritten, works with \package{hyperref} now}
+% Make |\rotcaption*| work.
+% \begin{macrocode}
+ \def\rotcaption{\let\@makecaption\@makerotcaption\caption}%
+% \let\@rotcaption\@undefined
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\rotcaptionof}
+% \changes{v3.0i}{2005/12/07}{New}
+% Make |\rotcaptionof(*)| work.
+% \begin{macrocode}
+ \def\rotcaptionof{%
+ \caption@teststar\caption@of{\rotcaption*}\rotcaption}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\@makerotcaption}
+% \changes{v3.0i}{2005/12/06}{Rewritten, should finally work proper now}
+% \changes{v3.0m}{2007/03/04}{Uses \cs{caption@parbox} instead of \cs{caption@start/endbox} now}
+% Original (bugfixed) code:
+% \begin{verbatim}
+% \long\def\@makerotcaption#1#2{%
+% \setbox\@tempboxa\hbox{#1: #2}%
+% \ifdim \wd\@tempboxa > .8\vsize
+% \rotatebox{90}{%
+% \begin{minipage}{.8\textheight}#1: #2\end{minipage}%
+% }%\par % <== \par removed (AR)
+% \else%
+% \rotatebox{90}{\box\@tempboxa}%
+% \fi
+% \nobreak\hspace{12pt}% <== \nobreak added (AR)
+% }
+% \end{verbatim}%^^A
+% Our version emulates this behavior, but if |width=| is set,
+% the rotated caption is always typeset as |minipage|.
+% (Note that |margin=| is not supported here.)
+% \begin{macrocode}
+ \long\def\@makerotcaption#1#2{%
+% \end{macrocode}
+%
+% \begin{macrocode}
+ \ifdim\captionwidth=\z@
+ \setcaptionwidth{.8\textheight}%
+ \caption@slc{#1}{#2}{.8\vsize}{%
+ \let\caption@makerot\caption@@make
+ \caption@clearmargin
+% \long\def\caption@parbox##1##2{\hbox{\hsize=.8\textheight\relax##2}}%
+% (not needed because \rotatebox uses an \hbox anyway)
+ \let\caption@parbox\@secondoftwo}%
+ \caption@set@bool\caption@ifslc0% been there, done that
+ \fi
+% \end{macrocode}
+%
+% \begin{macrocode}
+ \rotatebox{90}{\caption@makerot{#1}{#2}}%
+ \nobreak\hspace{12pt}}%
+% \end{macrocode}
+%
+% \begin{macrocode}
+ \newcommand\caption@makerot[2]{%
+ \begin{minipage}\captionwidth\caption@@make{#1}{#2}\end{minipage}}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+}{}
+% \end{macrocode}
+%
+% \subsubsection{The sidecap package}
+%
+% \begin{macrocode}
+\caption@IfPackageLoaded{sidecap}[2003/06/06 v1.6f]{%
+ \caption@setbool{needfreeze}{1}%
+% \end{macrocode}
+%
+% \begin{macro}{\SC@zfloat}
+% \changes{v3.0b}{2004/05/16}{Local definition of \cs{captionsetup} added}
+% \changes{v3.0c}{2004/07/16}{Bugfix 04-07-15: Check for \cs{caption@star} removed}
+% \changes{v3.1c}{2007/10/06}{\cs{caption} will be saved \& restored now}
+% \changes{v3.2a}{2011/08/17}{Bugfix: Uses \cs{caption@freeze} instead of \cs{caption@freeze*} now}
+% This macro will be called at the start of the environment, here is a good
+% opportunity to do some adaptations to |\caption| and |\captionsetup|.
+% \begin{macrocode}
+ \let\caption@ORI@SC@zfloat\SC@zfloat
+ \def\SC@zfloat#1#2#3[#4]{%
+% \end{macrocode}
+% First we use the original definition, but restore \cs{caption} and \cs{label}
+% so \cs{caption@freeze} and \cs{caption@warmup} will work correctly.
+% \begin{macrocode}
+ \caption@ORI@SC@zfloat{#1}{#2}{#3}[#4]%
+ \SC@RestoreCommands
+% \end{macrocode}
+% Since the sidecap package uses our |\caption| code outside the
+% environment the regular |\captionsetup| will not work.
+% So we need a special version here which saves the given argument list
+% which will be executed later on.
+% Furthermore we need to make |\caption*| work.
+% \begin{macrocode}
+ \caption@settype*{#2}%
+ \caption@freeze
+% \end{macrocode}
+% The sidecap package uses |\ifx\label\SC@label| to test if it is just inside a
+% |SC|\-|figure| or not. So we redefine |\SC@label| here so this test will still work.
+% \begin{macrocode}
+ \let\SC@label\label}%
+% \end{macrocode}
+% \begin{macrocode}
+ \providecommand*\SC@RestoreCommands{%
+ \let\caption=\SC@orig@caption \let\label=\SC@orig@label}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\endSC@FLOAT}
+% \changes{v3.0i}{2006/01/12}{\cs{@listdepth}\cs{z@} added}
+% \changes{v3.1}{2007/05/05}{Call of \cs{caption@setoptions}\arg{SCfloat} added}
+% This macro will be called at the end of the environment, here we need to
+% setup our stuff before the \package{sidecap} package actually typesets
+% its caption.
+% \begin{macrocode}
+ \let\caption@ORI@endSC@FLOAT\endSC@FLOAT
+ \def\endSC@FLOAT{%
+% \end{macrocode}
+% \Note{\cs{@captype} isn't defined here, this will be done inside
+% the original definition of \cs{endSC@FLOAT}. But \cs{SC@captype} is
+% defined and can be used here, if needed.}
+% \begin{macrocode}
+ \let\caption@ORI@settype\caption@settype
+ \def\caption@settype##1{% will be done in \@xfloat
+ \caption@ORI@settype*{##1}% do not change \@currentlabel
+ \caption@setSC@justify
+%%% \caption@setoptions{SCfloat}%
+ \caption@setoptions{SC\@captype}%
+ \caption@start}%
+% \end{macrocode}
+% Before we can typeset the caption we need to set the margin to zero
+% because any extra margin would only be disturbing here.\par
+% (We don't need to take care about the caption position because
+% the sidecap package set both |\abovecaptionskip| and |\belowcaptionskip|
+% to a skip of zero anyway.)\par
+% Furthermore |\SC@justify| will override the caption justification, if set.
+% The usage of |\SC@justify| differs from version to version of the
+% \package{sidecap} package:\par
+% \begin{tabular}{ll}
+% Version 1.4: & |\SC@justify| is not defined\\
+% Version 1.5: & |\SC@justify| is |\relax| when not set\\
+% Version 1.6: & |\SC@justify| is |\@empty| when not set\\
+% \end{tabular}
+% \begin{macrocode}
+ \def\caption@setSC@justify{%
+ \caption@clearmargin
+ \ifx\SC@justify\@empty \else
+ \let\caption@hj\SC@justify
+ \let\SC@justify\@empty
+ \fi}%
+% \end{macrocode}
+% Make the original definition of |\endSC@FLOAT| to use our caption
+% stuff instead of its own.
+% \Note{At this point the \package{sidecap} definition of \cs{caption} is valid,
+% not the regular one!}
+% \begin{macrocode}
+ \let\caption\SC@orig@caption
+ \def\SC@orig@caption[##1]##2{\caption@defrost}%
+% \end{macrocode}
+% Finally we call the original definition of |\endSC@FLOAT|.
+% \begin{macrocode}
+ \caption@setSC@justify % for compatibility mode
+ \caption@ORI@endSC@FLOAT}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+}{}
+% \end{macrocode}
+%
+% \subsubsection{The subfigure package}
+% \changes{v3.1}{2007/04/06}{subfigure package support added}
+%
+% \begin{macrocode}
+\caption@IfPackageLoaded{subfigure}[2002/01/23 v2.1]{%
+% \end{macrocode}
+%
+% \begin{macro}{\sf@ifpositiontop}
+% \changes{v3.1a}{2007/09/15}{Bugfix 07-09-15: Check for \cs{@captype} added}
+% If the \package{subfigure} package is loaded, we map |\sf@ifpositiontop|
+% to |\iffiguretopcap| resp. |\iftabletopcap|, so the \package{subfigure}
+% \version{2.1} options \opt{figbotcap} etc. will still work.
+% \begin{macrocode}
+ \def\sf@ifpositiontop{%
+ \ifx\@captype\@undefined
+ \expandafter\@gobbletwo
+ \else\ifx\@captype\relax
+ \expandafter\expandafter\expandafter\@gobbletwo
+ \else
+ \expandafter\expandafter\expandafter\sf@if@position@top
+ \fi\fi}
+% \end{macrocode}
+% \begin{macrocode}
+ \def\sf@if@position@top{%
+ \@ifundefined{if\@captype topcap}%
+ {\@gobbletwo}%
+ {\@nameuse{if\@captype topcap}%
+ \expandafter\@firstoftwo
+ \else
+ \expandafter\@secondoftwo
+ \fi}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+}{}
+% \end{macrocode}
+%
+% \subsubsection{The supertabular and xtab packages}
+%
+% \begin{macrocode}
+\caption@IfPackageLoaded{supertabular}[2002/07/19 v4.1e]{%
+% \end{macrocode}
+%
+% \begin{macro}{\tablecaption}
+% \changes{v3.0e}{2005/05/05}{Made \cs{topcaption*} and \cs{bottomcaption*} work}
+% \changes{v3.1h}{2008/04/01}{Bugfix: Star variant does not increment table counter anymore}
+% Make |\topcaption*| and |\bottomcaption*| work.
+% \begin{macrocode}
+ \renewcommand*\tablecaption{%
+ \caption@star
+ {\refstepcounter{table}}%
+ {\caption@dblarg{\@xtablecaption}}}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\@xtablecaption}
+% \changes{v3.1h}{2008/04/01}{Made \cs{nameref} \& \cs{autoref} work}
+% \changes{v3.1l}{2010/01/09}{Adapted to current version of nameref package}
+% Make |\nameref| and |\autoref| work.
+% \begin{macrocode}
+ \let\caption@ORI@xtablecaption\@xtablecaption
+ \long\def\@xtablecaption[#1]#2{%
+ \caption@gettitle{#2}%
+ \caption@ORI@xtablecaption[#1]{#2}}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\ST@caption}
+% \changes{v3.0a}{2004/01/23}{Bugfix: Missing \cs{par} added}
+% \changes{v3.1h}{2008/04/01}{Bugfix: \cs{@currentlabelname} will be set now}
+% The original code:
+% \begin{verbatim}
+% \long\def\ST@caption#1[#2]#3{\par%
+% \addcontentsline{\csname ext@#1\endcsname}{#1}%
+% {\protect\numberline{%
+% \csname the#1\endcsname}{\ignorespaces #2}}
+% \begingroup
+% \@parboxrestore
+% \normalsize
+% \if@topcaption \vskip -10\p@ \fi
+% \@makecaption{\csname fnum@#1\endcsname}{\ignorespaces #3}\par
+% \if@topcaption \vskip 10\p@ \fi
+% \endgroup}
+% \end{verbatim}%^^A
+% \begin{macrocode}
+ \long\def\ST@caption#1[#2]#3{\par%
+ \caption@settype*{#1}%
+ \caption@setoptions{supertabular}%
+% \end{macrocode}
+% The |position=| setting will be overwritten by the
+% \package{supertabular} package: If |\topcaption| was used,
+% the position will be |top| automatically, |bottom| otherwise.
+% \begin{macrocode}
+ \def\caption@fixposition{%
+ \caption@setposition{\if@topcaption t\else b\fi}}%
+% \end{macrocode}
+% \begin{macrocode}
+ \caption@beginex{#1}{#2}{#3}%
+ \caption@boxrestore
+ \caption@normalsize
+ \@makecaption{\csname fnum@#1\endcsname}{\ignorespaces #3}\par
+ \caption@end}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+}{}
+% \end{macrocode}
+%
+% \changes{v3.1h}{2008/04/01}{Support of the xtab package added}
+% \begin{macrocode}
+\caption@IfPackageLoaded{xtab}[2000/04/09 v2.3]{%
+% \end{macrocode}
+%
+% \begin{macro}{\tablecaption}
+% Make |\topcaption*| and |\bottomcaption*| work.
+% \begin{macrocode}
+ \renewcommand*\tablecaption{%
+ \caption@star
+ {\refstepcounter{table}}%
+ {\caption@dblarg{\@xtablecaption}}}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\@xtablecaption}
+% \changes{v3.1l}{2010/01/09}{Adapted to current version of nameref package}
+% Make |\nameref| and |\autoref| work.
+% \begin{macrocode}
+ \let\caption@ORI@xtablecaption\@xtablecaption
+ \long\def\@xtablecaption[#1]#2{%
+ \caption@gettitle{#2}%
+ \caption@ORI@xtablecaption[#1]{#2}}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\ST@caption}
+% The original code:
+% \begin{verbatim}
+% \long\def\ST@caption#1[#2]#3{\par%
+% \@initisotab
+% \addcontentsline{\csname ext@#1\endcsname}{#1}%
+% {\protect\numberline{%
+% \csname the#1\endcsname}{\ignorespaces #2}}%
+% \begingroup
+% \@parboxrestore
+% \normalsize
+% %% \if@topcaption \vskip -10\p@ \fi
+% \@makecaption{\csname fnum@#1\endcsname}{\ignorespaces #3}\par
+% %% \if@topcaption \vskip 10\p@ \fi
+% \endgroup
+% \global\advance\ST@pageleft -\PWSTcapht
+% \ST@trace\tw@{Added caption. Space left for xtabular: \the\ST@pageleft}}
+% \end{verbatim}%^^A
+% \begin{macrocode}
+ \long\def\ST@caption#1[#2]#3{\par%
+ \caption@settype*{#1}%
+ \caption@setoptions{xtabular}%
+% \end{macrocode}
+% \begin{macrocode}
+ \def\caption@fixposition{%
+ \caption@setposition{\if@topcaption t\else b\fi}}%
+% \end{macrocode}
+% \begin{macrocode}
+ \@initisotab
+ \caption@beginex{#1}{#2}{#3}%
+ \caption@boxrestore
+ \caption@normalsize
+ \@makecaption{\csname fnum@#1\endcsname}{\ignorespaces #3}\par
+ \caption@end
+ \global\advance\ST@pageleft -\PWSTcapht
+ \ST@trace\tw@{Added caption. Space left for xtabular: \the\ST@pageleft}}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+}{}
+% \end{macrocode}
+%
+% \subsubsection{The threeparttable package}
+% \changes{v3.1}{2007/05/08}{Support of the \package{threeparttable} package added}
+%
+% \begin{macrocode}
+\caption@IfPackageLoaded{threeparttable}[2003/06/13 v3.0]{%
+% \end{macrocode}
+%
+% \begin{macro}{\threeparttable}
+% Unfortunately |\@captype| is not set when |\TPT@common| will be used,
+% so we have to redefine |\threeparttable| and |\measuredfigure| instead.
+% \begin{macrocode}
+ \let\caption@ORI@threeparttable\threeparttable
+ \renewcommand*\threeparttable{%
+ \caption@settype{table}%
+ \caption@setposition a% ?
+ \caption@clearmargin
+ \caption@setoptions{threeparttable}%
+ \caption@ORI@threeparttable}%
+% \end{macrocode}
+% \end{macro}
+% \begin{macro}{\measuredfigure}
+% Same here\ldots
+% \begin{macrocode}
+ \let\caption@ORI@measuredfigure\measuredfigure
+ \renewcommand*\measuredfigure{%
+ \caption@settype{figure}%
+ \caption@setposition a% ?
+ \caption@clearmargin
+ \caption@setoptions{measuredfigure}%
+ \caption@ORI@measuredfigure}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\TPT@caption}
+% The original code:
+% \begin{verbatim}
+% \def\TPT@caption#1[#2]#3{\gdef\TPT@docapt
+% {\par\global\let\TPT@docapt\@undefined \TPT@LA@caption{#1}[{#2}]%
+% {\strut\ignorespaces#3\ifhmode\unskip\@finalstrut\strutbox\fi}}%
+% \ifx\TPT@hsize\@empty \let\label\TPT@gatherlabel \abovecaptionskip\z@skip
+% \else \TPT@docapt \fi \ignorespaces}
+% \end{verbatim}%^^A
+% \begin{macrocode}
+ \def\TPT@caption#1[#2]#3{%
+ \gdef\TPT@docapt{%
+ \global\let\TPT@docapt\@undefined
+ \caption@setautoposition\caption@TPT@position
+ \TPT@LA@caption{#1}[{#2}]{#3}}%
+ \ifx\TPT@hsize\@empty
+ \let\label\TPT@gatherlabel % Bug: does not work for measuredfigures
+ \gdef\caption@TPT@position{t}%
+ \g@addto@macro\TPT@docapt\caption@TPT@eatvskip
+ \else
+ \def\caption@TPT@position{b}%
+ \TPT@docapt
+ \fi
+ \ignorespaces}%
+% \end{macrocode}
+% \begin{macrocode}
+ %\newcommand*\caption@TPT@eatvskip{\vskip-.2\baselineskip}%
+ \def\caption@TPT@eatvskip#1\vskip{#1\@tempdima=}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+}{}
+% \end{macrocode}
+%
+% \subsubsection{The wrapfig package}
+% \changes{v3.1}{2007/05/05}{Support of the \package{wrapfig} package added}
+% \changes{v3.2d}{2011/11/02}{Support of the \package{wrapfig} package rewritten}
+%
+% \begin{macrocode}
+\caption@IfPackageLoaded{wrapfig}[2003/01/31 v3.6]{%
+% \end{macrocode}
+%
+% \begin{macro}{\wrapfloat}
+% \changes{v3.2d}{2011/11/02}{Redefinition of this macro added}
+% First of all we make the \package{wrapfig} package independent from the package
+% load order regarding the \package{float} package.
+% Since the usage of |\@float@set|\x|every| is missing in the code of the \package{wrapfig}
+% package (it should be in the redefinition of |\float@re|\x|style|, right after
+% |\@nameuse{fst@#1}|), we don't use it here, too,
+% especially since |\wrap|\x|float| will usually not be used when used with re-styled floats.
+% \begin{macrocode}
+ \renewcommand*\wrapfloat[1]{%
+ \def\@captype{#1}%
+ \@ifundefined{fst@#1}{}{%
+ \@nameuse{fst@#1}%
+% \@float@setevery{#1}%
+ \def\WF@floatstyhook{\let\@currbox\WF@box
+ \global\setbox\WF@box\float@makebox{\wd\WF@box}}}%
+ \@ifnextchar[\WF@wr{\WF@wr[]}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\WF@rapt}
+% \changes{v3.2d}{2011/11/02}{Usage of \cs{WF@captionstyhook} added}
+% Original code:
+% \begin{verbatim}
+% \def\WF@rapt[#1]#2{% final two args: #1 = overhang, #2 = width,
+% \gdef\WF@ovh{#1}% hold overhang for later, when \width is known
+% \global\setbox\WF@box\vtop\bgroup \setlength\hsize{#2}%
+% \ifdim\hsize>\z@ \@parboxrestore \else
+% \setbox\z@\hbox\bgroup \let\wf@@caption\caption \let\caption\wf@caption
+% \ignorespaces \fi}
+% \end{verbatim}%^^A
+% Our code has |\WF@captionstyhook| in addition:
+% \begin{macrocode}
+ \def\WF@rapt[#1]#2{% final two args: #1 = overhang, #2 = width,
+ \gdef\WF@ovh{#1}% hold overhang for later, when \width is known
+ \global\setbox\WF@box\vtop\bgroup \setlength\hsize{#2}%
+ \expandafter\WF@captionstyhook\expandafter{\@captype}% <= new
+ \ifdim\hsize>\z@ \@parboxrestore \else
+ \setbox\z@\hbox\bgroup \let\wf@@caption\caption \let\caption\wf@caption
+ \ignorespaces \fi}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\WF@captionstyhook}
+% \changes{v3.2d}{2011/11/02}{This macro added}
+% \changes{v3.2e}{2011/11/10}{Bugfix 11-11-09: float package support fixed}
+% We place our \package{hyperref} anchor here, apply the `wrap' options etc.
+% Since the usage of |\@float@set|\x|every| is missing in the \package{wrapfig}
+% package we will catch it up here for making the necessary adaptions to the
+% \package{float} package.
+% \begin{macrocode}
+ \def\WF@captionstyhook#1{%
+ \let\@captype\@undefined
+ \@ifundefined{fst@#1}{}{\@float@setevery{#1}}%
+ \caption@settype{#1}%
+ \caption@clearmargin
+%%% \caption@setoptions{wrapfloat}%
+ \caption@setoptions{wrap#1}}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+}{}
+% \end{macrocode}
+%
+% \iffalse
+%</package>
+% \fi
+%
+% \iffalse
+% --------------------------------------------------------------------------- %
+% \fi
+%
+% \clearpage
+% \begin{thebibliography}{99}
+% \bibitem{TLC2}
+% Frank Mittelbach and Michel Goossens:\\
+% \newblock {\em The {\LaTeX} Companion (2nd.~Ed.)},\\
+% \newblock Addison-Wesley, 2004.
+%
+% \bibitem{beamer}
+% Till Tantau:\\
+% \href{http://tug.ctan.org/tex-archive/macros/latex/contrib/beamer/}%
+% {\emph{User Guide to the Beamer Class, Version 3.07}},\\
+% March 11, 2007
+%
+% \bibitem{KOMAScript}
+% Markus Kohm \& Jens-Uwe-Morawski:\\
+% \href{http://tug.ctan.org/tex-archive/macros/latex/contrib/koma-script/}%
+% {\emph{KOMA-Script -- a versatile \LaTeXe\ bundle}},\\
+% 2007-01-09
+%
+% \bibitem{NTG}
+% Victor Eijkhout:\\
+% \href{http://tug.ctan.org/tex-archive/macros/latex/contrib/ntgclass/}%
+% {\emph{An introduction to the Dutch \LaTeX\ document classes}},\\
+% 3 September 1989
+%
+% \bibitem{float}
+% Anselm Lingnau:\\
+% \href{http://tug.ctan.org/tex-archive/macros/latex/contrib/float/}%
+% {\emph{An Improved Environment for Floats}},\\
+% 2001/11/08
+%
+% \bibitem{floatflt}
+% Mats Dahlgren:\\
+% \href{http://tug.ctan.org/tex-archive/macros/latex/contrib/floatflt/}%
+% {\emph{Welcome to the floatflt package}},\\
+% 1998/06/05
+%
+% \bibitem{floatrow}
+% Olga Lapko:\\
+% \href{http://tug.ctan.org/tex-archive/macros/latex/contrib/floatrow/}%
+% {\emph{The floatrow package documentation}},\\
+% 2007/08/24
+%
+% \bibitem{fltpage}
+% Sebastian Gross:\\
+% \href{http://tug.ctan.org/tex-archive/macros/latex/contrib/fltpage/}%
+% {\emph{Welcome to the beta test of fltpage package!}},\\
+% 1998/11/13
+%
+% \bibitem{hyperref}
+% Sebastian Rahtz \& Heiko Oberdiek:\\
+% \href{http://tug.ctan.org/tex-archive/macros/latex/contrib/hyperref/}%
+% {\emph{Hypertext marks in \LaTeX}},\\
+% November 12, 2007
+%
+% \bibitem{hypcap}
+% Heiko Oberdiek:\\
+% \href{http://tug.ctan.org/tex-archive/macros/latex/contrib/oberdiek/}%
+% {\emph{The hypcap package -- Adjusting anchors of captions}},\\
+% 2007/04/09
+%
+% \bibitem{listings}
+% Carsten Heinz \& Brooks Moses:\\
+% \href{http://tug.ctan.org/tex-archive/macros/latex/contrib/listings/}%
+% {\emph{The Listings Package}},\\
+% 2007/02/22
+%
+% \bibitem{longtable}
+% David Carlisle:\\
+% \href{http://tug.ctan.org/tex-archive/macros/latex/required/tools/}%
+% {\emph{The longtable package}},\\
+% 2004/02/01
+%
+% \bibitem{picinpar}
+% Friedhelm Sowa:\\
+% \href{http://tug.ctan.org/tex-archive/macros/latex209/contrib/picinpar/}%
+% {\emph{Pictures in Paragraphs}},\\
+% July 13, 1993
+%
+% \bibitem{picins}
+% Joachim Bleser and Edmund Lang:\\
+% \href{http://tug.ctan.org/tex-archive/macros/latex209/contrib/picins/}%
+% {\emph{PicIns-Benutzerhandbuch Version 3.0}},\\
+% September~1992
+%
+% \bibitem{rotating}
+% Sebastian Rahtz and Leonor Barroca:\\
+% \href{http://tug.ctan.org/tex-archive/macros/latex/contrib/rotating/}%
+% {\emph{A style option for rotated objects in \LaTeX}},\\
+% 1997/09/26
+%
+% \bibitem{sidecap}
+% Rolf Niepraschk \& Hubert G\"a\ss lein:\\
+% \href{http://tug.ctan.org/tex-archive/macros/latex/contrib/sidecap/}%
+% {\emph{The sidecap package}},\\
+% 2003/06/06
+%
+% \bibitem{subfigure}
+% Steven D. Cochran:\\
+% \href{http://tug.ctan.org/tex-archive/macros/latex/contrib/subfigure/}%
+% {\emph{The subfigure package}},\\
+% 2002/07/02
+%
+% \bibitem{subfig}
+% Steven D. Cochran:\\
+% \href{http://tug.ctan.org/tex-archive/macros/latex/contrib/subfig/}%
+% {\emph{The subfig package}},\\
+% 2005/07/05
+%
+% \bibitem{supertabular}
+% Johannes Braams and Theo Jurriens:\\
+% \href{http://tug.ctan.org/tex-archive/macros/latex/contrib/supertabular/}%
+% {\emph{The supertabular environment}},\\
+% 2002/07/19
+%
+% \bibitem{threeparttable}
+% Donald Arseneau:\\
+% \href{http://tug.ctan.org/tex-archive/macros/latex/contrib/misc/}%
+% {\emph{Three part tables: title, tabular environment, notes}},\\
+% 2003/06/13
+%
+% \bibitem{wrapfig}
+% Donald Arseneau:\\
+% \href{http://tug.ctan.org/tex-archive/macros/latex/contrib/wrapfig/}%
+% {\emph{WRAPFIG.STY ver 3.6}},\\
+% 2003/01/31
+%
+% \bibitem{xtab}
+% Peter Wilson:\\
+% \href{http://tug.ctan.org/tex-archive/macros/latex/contrib/xtab/}%
+% {\emph{The xtab package}},\\
+% 2004/05/24
+% \end{thebibliography}
+%
+% \iffalse
+% --------------------------------------------------------------------------- %
+% \fi
+%
+% \clearpage
+% \Finale
+%
+\endinput
diff --git a/macros/latex/contrib/caption/fallback/v3.2/caption3.dtx b/macros/latex/contrib/caption/fallback/v3.2/caption3.dtx
new file mode 100644
index 0000000000..f61d0be004
--- /dev/null
+++ b/macros/latex/contrib/caption/fallback/v3.2/caption3.dtx
@@ -0,0 +1,3668 @@
+% \iffalse meta-comment
+%
+% This is file `caption3.dtx'.
+%
+% Copyright (C) 1994-2011 Axel Sommerfeldt (axel.sommerfeldt@f-m.fm)
+%
+% --------------------------------------------------------------------------
+%
+% This work may be distributed and/or modified under the
+% conditions of the LaTeX Project Public License, either version 1.3
+% of this license or (at your option) any later version.
+% The latest version of this license is in
+% http://www.latex-project.org/lppl.txt
+% and version 1.3 or later is part of all distributions of LaTeX
+% version 2003/12/01 or later.
+%
+% This work has the LPPL maintenance status "maintained".
+%
+% This Current Maintainer of this work is Axel Sommerfeldt.
+%
+% This work consists of the files caption.ins, caption.dtx, caption2.dtx,
+% caption3.dtx, bicaption.dtx, ltcaption.dtx, subcaption.dtx, and newfloat.dtx,
+% the derived files caption.sty, caption2.sty, caption3.sty,
+% bicaption.sty, ltcaption.sty, subcaption.sty, and newfloat.sty,
+% and the user manuals caption-deu.tex, caption-eng.tex, and caption-rus.tex.
+%
+% \fi
+% \CheckSum{3390}
+%
+% \iffalse
+%<*driver>
+\NeedsTeXFormat{LaTeX2e}[1994/12/01]
+\ProvidesFile{caption3.drv}[2011/10/09 v1.4 Implementation of the caption kernel]
+\hbadness=9999 \newcount\hbadness \hfuzz=100pt % Make TeX shut up.
+%\errorcontextlines=3
+%
+\documentclass{ltxdoc}
+\setlength\parindent{0pt}
+\setlength\parskip{\smallskipamount}
+%
+%\let\ORIsubsection\subsection
+%\def\subsection{\clearpage\ORIsubsection}
+%
+\makeatletter % make room for subsections like 2.16.14 in the TOC
+%\newcommand*\l@subsection{\@dottedtocline{2}{1.5em}{2.3em}}
+\renewcommand*\l@subsection{\@dottedtocline{2}{1.5em}{2.7em}}
+\makeatother
+%
+\usepackage{ifpdf}
+\ifpdf
+ \usepackage{mathptmx,courier}
+ \usepackage[scaled=0.90]{helvet}
+ \addtolength\marginparwidth{15pt}
+\fi
+%
+\usepackage{hypdoc}
+\ifpdf\usepackage{hypdestopt}\fi
+\hypersetup{pdfkeywords={LaTeX, package, caption},pdfstartpage={},pdfstartview={}}
+%
+\usepackage[debug]{caption3}[2011/07/01]
+%
+\DeclareRobustCommand*\eTeX{\texorpdfstring
+ {\leavevmode\hbox{$\varepsilon$}-\TeX}%
+ {e-TeX}}
+\DeclareRobustCommand*\AmS{\texorpdfstring
+ {{\protect\usefont{OMS}{cmsy}{m}{n}A\kern-.1667em\lower.5ex\hbox{M}\kern-.125emS}}%
+ {AMS}}
+\DeclareRobustCommand*\KOMAScript{\texorpdfstring
+ {\textsf{K\kern.05em O\kern.05em M\kern.05em A\kern.1em-\kern.1em Script}}%
+ {KOMA-Script}}
+\DeclareRobustCommand*\NTG{NTG}
+\DeclareRobustCommand*\SmF{SMF}
+%
+\begin{document}
+ \DocInput{caption3.dtx}
+\end{document}
+%</driver>
+% \fi
+%
+% \newcommand*\purerm[1]{{\upshape\mdseries\rmfamily #1}}
+% \newcommand*\puresf[1]{{\upshape\mdseries\sffamily #1}}
+% \newcommand*\purett[1]{{\upshape\mdseries\ttfamily #1}}
+% \let\class\puresf \let\package\puresf
+% \let\env\purett \let\opt\purett
+%
+% \def\thispackage{the \package{caption} kernel}
+% \def\Thispackage{The \package{caption} kernel}
+%
+% \newcommand*\csmarg[1]{\texttt{\char`\{#1\char`\}}}
+% \newcommand*\csoarg[1]{\texttt{\char`\[#1\char`\]}}
+% \newcommand*\version[2][]{\textit{v#2}}
+% \newcommand*\x{\discretionary{-}{}{}}
+% \newcommand*\xx{\discretionary{}{}{}}
+%
+% \GetFileInfo{caption3.drv}
+% \let\docdate\filedate
+% \GetFileInfo{caption3.sty}
+%
+% \title{The Implementation of
+% \texorpdfstring{\thispackage\thanks{%^^A
+% This package has version number \fileversion, last revised \filedate.}}%^^A
+% {the caption kernel}}
+% \author{Axel Sommerfeldt\\
+% \href{mailto:axel.sommerfeldt@f-m.fm}{\texttt{axel.sommerfeldt@f-m.fm}}}
+% \date{\docdate}
+% \maketitle
+%
+% \begin{abstract}
+% \Thispackage\ consists of two parts -- the kernel
+% (|caption3.sty|) and the main package (|caption.sty|).
+%
+% The kernel provides all the user commands and internal macros which are
+% necessary for typesetting captions and setting parameters regarding these.
+% While the standard \LaTeX\ document classes provide an internal command
+% called |\@makecaption| and no options to control its behavior (except the
+% vertical skips above and below the caption itself), we provide similar
+% commands called |\caption@make| and |\caption@@make|, but with a lot of
+% options which can be selected with |\captionsetup|.
+% Loading the kernel part do not change the output of a \LaTeX\ document
+% -- it just provides functionality which can be used by \LaTeXe\ packages
+% which typesets captions, for example the \package{caption} and
+% \package{subfig} packages.
+% \end{abstract}
+%
+% \StopEventually{}
+% \clearpage
+% \tableofcontents
+%
+% \iffalse
+% --------------------------------------------------------------------------- %
+% \fi
+%
+% \DoNotIndex{\\,\_,\ ,\@@par}
+% \DoNotIndex{\@bsphack}
+% \DoNotIndex{\@car,\@cdr,\@classoptionslist,\@cons,\@currext,\@currname}
+% \DoNotIndex{\@ehc,\@ehd,\@empty,\@esphack,\@expandtwoargs}
+% \DoNotIndex{\@for,\@firstofone,\@firstoftwo}
+% \DoNotIndex{\@gobble,\@gobblefour,\@gobbletwo,\@hangfrom}
+% \DoNotIndex{\if@minipage\@ifnextchar,\@ifpackagelater,\@ifpackageloaded}
+% \DoNotIndex{\@ifstar,\@ifundefined,\@latex@error,\@minipagefalse,\@minipagetrue}
+% \DoNotIndex{\@namedef,\@nameuse}
+% \DoNotIndex{\@onlypreamble,\@parboxrestore,\@plus,\@ptionlist}
+% \DoNotIndex{\@removeelement,\@restorepar,\@secondoftwo,\@setminipage,\@setpar}
+% \DoNotIndex{\@tempa,\@tempboxa,\@tempdima,\@tempdimb,\@tempdimc,\@tempb,\@tempc}
+% \DoNotIndex{\@testopt}
+% \DoNotIndex{\@undefined,\@unprocessedoptions,\@unusedoptionlist}
+% \DoNotIndex{\p@,\z@}
+% \DoNotIndex{\active,\addtocounter,\addtolength,\advance,\aftergroup}
+% \DoNotIndex{\baselineskip,\begin,\begingroup,\bfseries,\box}
+% \DoNotIndex{\catcode,\centering,\changes,\csname,\def,\divide,\do,\downarrow}
+% \DoNotIndex{\edef,\else,\empty,\end,\endcsname,\endgraf,\endgroup,\expandafter}
+% \DoNotIndex{\fi,\footnotesize,\global}
+% \DoNotIndex{\hangindent,\hbox,\hfil,\hsize,\hskip,\hspace,\hss}
+% \DoNotIndex{\ifcase,\ifdim,\ifnum,\ifodd,\ifvoid,\ifvmode}
+% \DoNotIndex{\ifx,\ignorespaces,\itshape}
+% \DoNotIndex{\Large,\large,\leavevmode,\leftmargini,\leftskip,\let,\linewidth}
+% \DoNotIndex{\llap,\long,\m@ne,\margin,\mdseries,\message}
+% \DoNotIndex{\newcommand,\newdimen,\newlength,\newline,\newif,\newsavebox}
+% \DoNotIndex{\next,\nobreak,\nobreakspace,\noexpand,\noindent,\numberline}
+% \DoNotIndex{\normalcolor,\normalfont,\normalsize,\or,\par,\parbox,\parfillskip}
+% \DoNotIndex{\parindent,\parskip,\prevdepth,\protect,\protected@edef,\protected@write}
+% \DoNotIndex{\providecommand,\quad}
+% \DoNotIndex{\raggedleft,\raggedright,\relax,\renewcommand,\RequirePackage}
+% \DoNotIndex{\rightskip,\rmfamily}
+% \DoNotIndex{\sbox,\scriptsize,\scshape,\setbox,\setlength,\sffamily,\slshape}
+% \DoNotIndex{\small,\string,\space,\strut}
+% \DoNotIndex{\textheight,\the,\toks@,\typeout,\ttfamily}
+% \DoNotIndex{\unvbox,\uparrow,\upshape,\usebox,\usepackage}
+% \DoNotIndex{\value,\vbox,\vsize,\vskip,\wd,\width,\z@skip}
+% \DoNotIndex{\AtBeginDocument,\AtEndOfPackage,\CurrentOption,\DeclareOption}
+% \DoNotIndex{\ExecuteOptions,\GenericWarning,\IfFileExists,\InputIfFileExists}
+% \DoNotIndex{\NeedsTeXFormat,\MessageBreak}
+% \DoNotIndex{\PackageError,\PackageInfo,\PackageWarning,\PackageWarningNoLine}
+% \DoNotIndex{\PassOptionsToPackage,\ProcessOptions,\ProvidesPackage}
+%
+% \iffalse
+% --------------------------------------------------------------------------- %
+% \fi
+%
+% \setlength{\parskip}{0pt plus 1pt}
+% \newcommand*\Note[2][Note]{\par{\small\emph{#1:} #2}\par}
+%
+% \changes{v1.0}{2003/12/20}{Rewritten; many new commands and features}
+% \changes{v1.0c}{2004/11/28}{Split into two packages:
+% \package{caption} \& \package{caption3}}
+%
+% \iffalse
+% --------------------------------------------------------------------------- %
+% \fi
+%
+% \clearpage
+% \let\subsubsection\subsection
+% \let\subsection\section
+%
+% \iffalse
+%<*package>
+% \fi
+%
+% \subsection{Identification}
+%
+% \begin{macrocode}
+\NeedsTeXFormat{LaTeX2e}[1994/12/01]
+\ProvidesPackage{caption3}[2011/11/01 v1.4a caption3 kernel (AR)]
+% \end{macrocode}
+%
+% \subsection{Generic helpers}
+%
+% \begin{macro}{\@nameundef}
+% This is the opposite to |\@namedef| which is offered by the \LaTeX\ kernel.
+% We use it to remove the definition of some commands and keyval options after
+% |\begin{document}| (to save \TeX\ memory) and to remove caption options defined
+% with |\captionsetup|\oarg{type}.
+% \begin{macrocode}
+\providecommand*\@nameundef[1]{%
+ \expandafter\let\csname #1\endcsname\@undefined}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\l@addto@macro}
+% The \LaTeXe\ kernel offers the internal helper macro |\g@addto@macro| which
+% globally adds tokens to existing macros, like in |\AtBeginDocument|.
+% This is the same but it works local, not global
+% (using \cs{edef} instead of \cs{xdef}).
+% \begin{macrocode}
+\providecommand\l@addto@macro[2]{%
+ \begingroup
+ \toks@\expandafter{#1#2}%
+ \edef\@tempa{\endgroup\def\noexpand#1{\the\toks@}}%
+ \@tempa}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\bothIfFirst}
+% \begin{macro}{\bothIfSecond}
+% |\bothIfFirst| tests if the first argument is not empty, |\bothIfSecond|
+% tests if the second argument is not empty. If yes both arguments get
+% typeset, otherwise none of them.
+% \begin{macrocode}
+\def\bothIfFirst#1#2{%
+ \protected@edef\caption@tempa{#1}%
+ \ifx\caption@tempa\@empty \else
+ #1#2%
+ \fi}
+% \end{macrocode}
+% \begin{macrocode}
+\def\bothIfSecond#1#2{%
+ \protected@edef\caption@tempa{#2}%
+ \ifx\caption@tempa\@empty \else
+ #1#2%
+ \fi}
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+%
+% \begin{macro}{\caption@ifundefined}
+% \changes{v1.3a}{2011/08/12}{This macro added}
+% \changes{v1.3b}{2011/08/18}{Made expandable}
+% Similar to \cs{@ifundefined} offered by the \LaTeX kernel, but does
+% not define the undefined macro as \cs{relax}.
+% \begin{macrocode}
+\newcommand*\caption@ifundefined[1]{%
+ \ifx#1\@undefined
+ \expandafter\@firstoftwo
+ \else\ifx#1\relax
+ \expandafter\expandafter\expandafter\@firstoftwo
+ \else
+ \expandafter\expandafter\expandafter\@secondoftwo
+ \fi\fi}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@ifinlist}
+% \changes{v1.1}{2007/07/29}{Rewritten}
+% This helper macro checks if the first argument is in the comma separated
+% list which is offered as second argument. So for example
+% \begin{quote}
+% |\caption@ifinlist{frank}{axel,frank,olga,steven}{yes}{no}|
+% \end{quote}
+% would expand to |yes|.
+% \begin{macrocode}
+\newcommand*\caption@ifinlist{%
+ \@expandtwoargs\caption@@ifinlist}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@@ifinlist[2]{%
+ \begingroup
+ \def\@tempa##1,#1,##2\@nil{%
+ \endgroup
+ \ifx\relax##2\relax
+ \expandafter\@secondoftwo
+ \else
+ \expandafter\@firstoftwo
+ \fi}%
+ \@tempa,#2,#1,\@nil}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@ifin@list}
+% \changes{v1.1}{2007/08/12}{This macro added}
+% |\caption@ifin@list|\marg{cmd}\marg{list entry}\marg{yes}\marg{no}
+% \begin{macrocode}
+\newcommand*\caption@ifin@list[2]{%
+ \caption@ifempty@list#1%
+ {\@secondoftwo}%
+ {\@expandtwoargs\caption@@ifinlist{#2}{#1}}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@g@addto@list}
+% \changes{v1.1}{2007/07/29}{This macro added}
+% |\caption@g@addto@list|\marg{cmd}\marg{list entry}
+% \begin{macrocode}
+\newcommand*\caption@g@addto@list[2]{%
+ \caption@ifempty@list#1{\gdef#1{#2}}{\g@addto@macro#1{,#2}}}
+% \end{macrocode}
+% \end{macro}
+% \begin{macro}{\caption@l@addto@list}
+% \changes{v1.1}{2007/07/29}{This macro added}
+% |\caption@l@addto@list|\marg{cmd}\marg{list entry}
+% \begin{macrocode}
+\newcommand*\caption@l@addto@list[2]{%
+ \caption@ifempty@list#1{\def#1{#2}}{\l@addto@macro#1{,#2}}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@g@removefrom@list}
+% \changes{v1.1}{2007/07/29}{This macro added}
+% |\caption@g@removefrom@list|\marg{cmd}\marg{list entry}
+% \begin{macrocode}
+\newcommand*\caption@g@removefrom@list[2]{%
+ \caption@l@removefrom@list#1{#2}%
+ \global\let#1#1}
+% \end{macrocode}
+% \end{macro}
+% \begin{macro}{\caption@l@removefrom@list}
+% \changes{v1.1}{2007/07/29}{This macro added}
+% |\caption@l@removefrom@list|\marg{cmd}\marg{list entry}\par
+% \Note[Caveat]{\meta{cmd} will be expanded during this process since
+% \cs{@removeelement} is using \cs{edef} to build the new list!}
+% \begin{macrocode}
+\newcommand*\caption@l@removefrom@list[2]{%
+ \caption@ifempty@list#1{}{\@expandtwoargs\@removeelement{#2}#1#1}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@for@list}
+% \changes{v1.1}{2007/07/29}{This macro added}
+% |\caption@for@list|\marg{cmd}\marg{code with \#1}
+% \begin{macrocode}
+\newcommand*\caption@for@list[2]{%
+ \caption@ifempty@list#1{}{%
+ \def\caption@tempb##1{#2}%
+ \@for\caption@tempa:=#1\do{%
+ \expandafter\caption@tempb\expandafter{\caption@tempa}}}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@ifempty@list}
+% \changes{v1.1}{2007/07/29}{This macro added}
+% |\caption@ifempty@list|\marg{cmd}\marg{true}\marg{false}
+% \begin{macrocode}
+\newcommand*\caption@ifempty@list[1]{%
+ \ifx#1\@undefined
+ \expandafter\@firstoftwo
+ \else\ifx#1\relax
+ \expandafter\expandafter\expandafter\@firstoftwo
+ \else\ifx#1\@empty
+ \expandafter\expandafter\expandafter\expandafter
+ \expandafter\expandafter\expandafter\@firstoftwo
+ \else
+ \expandafter\expandafter\expandafter\expandafter
+ \expandafter\expandafter\expandafter\@secondoftwo
+ \fi\fi\fi}
+% \end{macrocode}
+% \end{macro}
+%
+% \pagebreak[3]
+% \begin{macro}{\caption@setbool}
+% \begin{macro}{\caption@set@bool}
+% \changes{v1.1}{2007/04/05}{\cs{caption@set@bool}\marg{cmd}\marg{value} added}
+% \begin{macro}{\caption@ifbool}
+% \begin{macro}{\caption@undefbool}
+% For setting and testing boolean options we offer these three helper macros:
+% \begin{quote}
+% |\caption@setbool|\marg{name}\marg{value}\\
+% | |(with |value = false/true/no/yes/off/on/0/1|)\\
+% |\caption@ifbool|\marg{name}\marg{if-clause}\marg{else-clause}\\
+% |\caption@undefbool|\marg{name}
+% \end{quote}
+% \begin{macrocode}
+\newcommand*\caption@setbool[1]{%
+ \expandafter\caption@set@bool\csname caption@if#1\endcsname}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@set@bool[2]{%
+ \caption@ifinlist{#2}{1,true,yes,on}{%
+ \let#1\@firstoftwo
+ }{\caption@ifinlist{#2}{0,false,no,off}{%
+ \let#1\@secondoftwo
+ }{%
+ \caption@Error{Undefined boolean value `#2'}%
+ }}}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@ifbool[1]{\@nameuse{caption@if#1}}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@undefbool[1]{\@nameundef{caption@if#1}}
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+% \end{macro}
+% \end{macro}
+%
+% \begin{macro}{\caption@teststar}
+% \changes{v1.1}{2007/05/08}{This macro and its usage added}
+% \changes{v1.1e}{2007/10/28}{\cs{caption@teststar@} added}
+% |\caption@teststar|\marg{cmd}\marg{star arg}\marg{non-star arg}\\
+% |\caption@teststar@|\marg{cmd}\marg{star arg}\marg{non-star arg}
+% \begin{macrocode}
+\newcommand*\caption@teststar[3]{\@ifstar{#1{#2}}{#1{#3}}}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@teststar@[3]{%
+ \@ifstar{#1{#2}}{\caption@ifatletter{#1{#2}}{#1{#3}}}}
+\AtBeginDocument{\let\caption@teststar@\caption@teststar}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@ifatletter{%
+ \ifnum\the\catcode`\@=11
+ \expandafter\@firstoftwo
+ \else
+ \expandafter\@secondoftwo
+ \fi}
+\AtBeginDocument{\let\caption@ifatletter\@secondoftwo}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@withoptargs}
+% \changes{v1.1}{2007/08/12}{This macro added}
+% |\caption@withoptargs|\marg{cmd}
+% \begin{macrocode}
+\newcommand*\caption@withoptargs[1]{%
+ \@ifstar
+ {\def\caption@tempa{*}\caption@@withoptargs#1}%
+ {\def\caption@tempa{}\caption@@withoptargs#1}}
+% \end{macrocode}
+% \begin{macrocode}
+\def\caption@@withoptargs#1{%
+ \@ifnextchar[%]
+ {\caption@@@withoptargs#1}%
+ {\caption@@@@withoptargs#1}}
+% \end{macrocode}
+% \begin{macrocode}
+\def\caption@@@withoptargs#1[#2]{%
+ \l@addto@macro\caption@tempa{[{#2}]}%
+ \caption@@withoptargs#1}
+% \end{macrocode}
+% \begin{macrocode}
+\def\caption@@@@withoptargs#1{%
+ \expandafter#1\expandafter{\caption@tempa}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@gobble}
+% \changes{v1.4}{2011/08/19}{This macro added}
+% |\caption@gobble*|\oarg{arg}\oarg{\ldots}\marg{arg}\par
+% Same as |\@gobble|, but gobbles optional arguments as well.
+% \begin{macrocode}
+\DeclareRobustCommand*\caption@gobble{%
+ \caption@withoptargs\@gobbletwo}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@CheckCommand}
+% \changes{v1.1}{2007/04/10}{This macro added}
+% \begin{macro}{\caption@IfCheckCommand}
+% \changes{v1.1}{2007/04/10}{This macro added}
+% \changes{v1.2b}{2008/08/02}{Revised so \cs{next} is no longer used}
+% |\caption@CheckCommand|\marg{macro}\marg{definition of macro}\par
+% checks if a command already exists, with the same definition.
+% It can be used more-than-once to check if one of multiple definitions will
+% finally match.
+% (It redefines itself later on to |\@gobbletwo| if the two commands match
+% fine, making further checks harmless.)\par
+% |\caption@IfCheckCommand|\marg{true}\marg{false}\par
+% will execute the \meta{true} code if one match was finally given,
+% the \meta{false} code otherwise.
+% (It simply checks if |\caption@CheckCommand| is |\@gobbletwo| and
+% restores the starting definition of |\caption@CheckCommand|.)
+% \begin{macrocode}
+\newcommand\caption@DoCheckCommand[2]{%
+ \begingroup
+ \let\@tempa#1%
+ #2%
+ \ifx\@tempa#1%
+ \endgroup
+ \let\caption@CheckCommand\@gobbletwo
+ \else
+ \endgroup
+ \fi}
+\@onlypreamble\caption@DoCheckCommand
+% \end{macrocode}
+% \begin{macrocode}
+\let\caption@CheckCommand\caption@DoCheckCommand
+\@onlypreamble\caption@CheckCommand
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@IfCheckCommand{%
+ \ifx\caption@CheckCommand\@gobbletwo
+ \let\caption@CheckCommand\caption@DoCheckCommand
+ \expandafter\@firstoftwo
+ \else
+ \expandafter\@secondoftwo
+ \fi}
+\@onlypreamble\caption@IfCheckCommand
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+%
+% \begin{macro}{\caption@AtBeginDocument}
+% \changes{v1.1}{2007/04/13}{This macro and its usage added}
+% \changes{v1.2e}{2010/01/09}{Adapted to the combine document class}
+% |\caption@AtBeginDocument*|\marg{code}\\
+% Same as |\AtBeginDocument| but the execution of code
+% will be surrounded by two |\PackageInfo|s.
+% The starred variant causes the code to be executed after all code
+% specified using the non-starred variant.
+% \begin{macrocode}
+\let\caption@begindocumenthook\@empty
+\let\caption@@begindocumenthook\@empty
+% \end{macrocode}
+% \begin{macrocode}
+\def\caption@AtBeginDocument{%
+ \caption@teststar\g@addto@macro
+ \caption@@begindocumenthook\caption@begindocumenthook}
+%\@onlypreamble\caption@AtBeginDocument
+% \end{macrocode}
+% \begin{macrocode}
+\AtBeginDocument{%
+ \caption@InfoNoLine{Begin \noexpand\AtBeginDocument code}%
+% \end{macrocode}
+% \begin{macrocode}
+ \def\caption@AtBeginDocument{%
+ \@ifstar{\g@addto@macro\caption@@begindocumenthook}\@firstofone}%
+ \caption@begindocumenthook
+ \let\caption@begindocumenthook\relax
+% \end{macrocode}
+% \begin{macrocode}
+ \def\caption@AtBeginDocument{%
+ \@ifstar\@firstofone\@firstofone}%
+ \caption@@begindocumenthook
+ \let\caption@@begindocumenthook\relax
+% \end{macrocode}
+% \begin{macrocode}
+ \caption@InfoNoLine{End \noexpand\AtBeginDocument code}}
+% \end{macrocode}
+% \end{macro}
+%
+% \subsection{Information, Warnings, and Errors}
+%
+% \begin{macro}{\caption@Info}
+% \changes{v1.3}{2010/10/25}{Moved from package to kernel}
+% |\caption@Info|\marg{message}
+% \begin{macrocode}
+\newcommand*\caption@Info[1]{%
+ \PackageInfo{caption}{#1}}
+% \end{macrocode}
+% \end{macro}
+% \begin{macro}{\caption@InfoNoLine}
+% \changes{v1.3}{2010/10/25}{Moved from package to kernel}
+% |\caption@InfoNoLine|\marg{message}\\
+% \Note{The \cs{@gobble} at the end of the 2nd argument of
+% \cs{PackageInfo} suppresses the line number info.
+% See TLC2\cite{TLC2}, A.4.7, p885 for details.}
+% \begin{macrocode}
+\newcommand*\caption@InfoNoLine[1]{%
+ \PackageInfo{caption}{#1\@gobble}}
+% \end{macrocode}
+% \end{macro}
+% \begin{macro}{\caption@Warning}
+% \changes{v1.1c}{2007/10/14}{This macro added, will now be used for warnings}
+% |\caption@Warning|\marg{message}
+% \begin{macrocode}
+\newcommand*\caption@Warning[1]{%
+ \caption@WarningNoLine{#1\on@line}}
+% \end{macrocode}
+% \end{macro}
+% \begin{macro}{\caption@WarningNoLine}
+% \changes{v1.1c}{2007/10/14}{This macro added, will now be used for warnings}
+% |\caption@WarningNoLine|\marg{message}
+% \begin{macrocode}
+\newcommand*\caption@WarningNoLine[1]{%
+ \PackageWarning{caption}{#1.^^J\caption@wh\@gobbletwo}}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@wh{%
+ See the caption package documentation for explanation.}
+% \end{macrocode}
+% \end{macro}
+% \begin{macro}{\caption@Error}
+% \changes{v1.0j}{2007/01/20}{This macro added, will now be used for errors}
+% \changes{v1.0o}{2007/04/11}{Renamed from \cs{caption@error} to \cs{caption@Error}}
+% \changes{v1.1b}{2007/09/18}{Usage of \cs{caption@Package} removed}
+% |\caption@Error|\marg{message}
+% \begin{macrocode}
+\newcommand*\caption@Error[1]{%
+ \PackageError{caption}{#1}\caption@eh}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@eh{%
+ If you do not understand this error, please take a closer look\MessageBreak
+ at the documentation of the `caption' package, especially the\MessageBreak
+ section about errors.\MessageBreak\@ehc}
+% \end{macrocode}
+% \end{macro}
+% \begin{macro}{\caption@KV@err}
+% \changes{v1.1b}{2007/09/18}{This macro added}
+% \begin{macrocode}
+\let\caption@KV@err\caption@Error
+% \end{macrocode}
+% \end{macro}
+%
+% \subsection{Using the keyval package}
+%
+% We need the \package{keyval} package for option handling, so we load it here.
+% \begin{macrocode}
+\RequirePackage{keyval}[1997/11/10]
+% \end{macrocode}
+%
+% \begin{macro}{\undefine@key}
+% |\undefine@key|\marg{family}\marg{key}\par
+% This helper macro is the opposite of |\define@key|, it removes a keyval
+% definition.
+% \begin{macrocode}
+\providecommand*\undefine@key[2]{%
+ \@nameundef{KV@#1@#2}\@nameundef{KV@#1@#2@default}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\@onlypreamble@key}
+% \changes{v1.1}{2007/07/22}{This macro added}
+% \changes{v1.1e}{2007/11/01}{\cs{KV@err} will be used now instead of \cs{@notprerr}}
+% |\onlypreamble@key|\marg{family}\marg{key}\par
+% Analogous to |\@onlypreamble| from \LaTeXe.
+% \begin{macrocode}
+\providecommand*\@preamble@keys{}
+\providecommand*\@onlypreamble@key[2]{\@cons\@preamble@keys{{#1}{#2}}}
+\@onlypreamble\@onlypreamble@key
+\@onlypreamble\@preamble@keys
+% \end{macrocode}
+% \begin{macrocode}
+\providecommand*\@notprerr@key[1]{\KV@err{Can be used only in preamble}}
+% \end{macrocode}
+% \begin{macrocode}
+\caption@AtBeginDocument*{%
+ \def\@elt#1#2{\expandafter\let\csname KV@#1@#2\endcsname\@notprerr@key}%
+ \@preamble@keys
+ \let\@elt\relax}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\DeclareCaptionOption}
+% |\DeclareCaptionOption|\marg{option}\oarg{default value}\marg{code}\\
+% |\DeclareCaptionOption*|\marg{option}\oarg{default value}\marg{code}\par
+% We declare our options using these commands (instead of using
+% |\DeclareOption| offered by \LaTeXe), so the keyval package is used.
+% The starred form makes the option available during the lifetime of the
+% current package only, so they can be used with |\usepackage|, but
+% \emph{not} with |\captionsetup| later on.
+% \begin{macrocode}
+\newcommand*\DeclareCaptionOption{%
+ \caption@teststar\caption@declareoption\AtEndOfPackage\@gobble}
+\@onlypreamble\DeclareCaptionOption
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@declareoption[2]{%
+ #1{\undefine@key{caption}{#2}}\define@key{caption}{#2}}
+\@onlypreamble\caption@declareoption
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\DeclareCaptionOptionNoValue}
+% \changes{v1.1c}{2007/10/06}{This macro added}
+% |\DeclareCaptionOptionNoValue|\marg{option}\marg{code}\\
+% |\DeclareCaptionOptionNoValue*|\marg{option}\marg{code}\par
+% Same as \cs{DeclareCaptionOption} but issues an error if a value is given.
+% \begin{macrocode}
+\newcommand*\DeclareCaptionOptionNoValue{%
+ \caption@teststar\caption@declareoption@novalue\AtEndOfPackage\@gobble}
+\@onlypreamble\DeclareCaptionOptionNoValue
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand\caption@declareoption@novalue[3]{%
+ \caption@declareoption{#1}{#2}[\KV@err]{%
+ \caption@option@novalue{#2}{##1}{#3}}}
+\@onlypreamble\caption@declareoption@novalue
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@option@novalue[2]{%
+ \ifx\KV@err#2%
+ \expandafter\@firstofone
+ \else
+ \KV@err{No value allowed for #1}%
+ \expandafter\@gobble
+ \fi}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\ifcaptionsetup@star}
+% \changes{v1.2a}{2008/01/12}{This macro added}
+% If the starred form of |\captionsetup| is used, this will be set to |true|.
+% (It will be reset to |false| at the end of |\caption@setkeys|.)
+% \begin{macrocode}
+\newif\ifcaptionsetup@star
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\captionsetup}
+% \changes{v1.0a}{2004/01/17}{Bugfix: Missing \% added}
+% \changes{v1.1}{2007/07/22}{Starred-variant added}
+% \changes{v1.1e}{2007/07/27}{Inside packages the starred variant will be used automatically}
+% \changes{v1.2}{2007/11/16}{Bugfix 07-11-09: `space hack' added}
+% \changes{v1.2a}{2008/01/12}{\cs{ifcaptionsetup@star} will be set now}
+% |\captionsetup|\oarg{type}\marg{keyval-list of options}\\
+% |\captionsetup*|\oarg{type}\marg{keyval-list of options}\par
+% If the optional argument `type' is specified, we simply save or append
+% the option list, otherwise we `execute' it with |\setkeys|.
+% (The non-starred variant issues a warning if \meta{keyval-list of options}
+% is not used later on.)
+% \Note{The starred variant will be used inside packages automatically.}
+% \begin{macrocode}
+\newcommand*\captionsetup{%
+ \caption@teststar@\@captionsetup\@gobble\@firstofone}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\@captionsetup[1]{%
+ \captionsetup@startrue#1\captionsetup@starfalse
+ \@ifnextchar[\caption@setup@options\caption@setup}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@setup{\caption@setkeys{caption}}
+% \end{macrocode}
+% \begin{macrocode}
+\def\caption@setup@options[#1]#2{%
+ \@bsphack
+ \ifcaptionsetup@star\captionsetup@starfalse\else\caption@addtooptlist{#1}\fi
+ \expandafter\caption@l@addto@list\csname caption@opt@#1\endcsname{#2}%
+ \@esphack}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\clearcaptionsetup}
+% \changes{v1.1}{2007/07/29}{Optional argument added}
+% \changes{v1.1}{2007/08/17}{Starred variant added}
+% \changes{v1.1e}{2007/07/27}{Inside packages the starred variant will be used automatically}
+% \changes{v1.2}{2007/11/16}{Bugfix 07-11-09: `space hack' added}
+% |\clearcaptionsetup|\oarg{option}\marg{type}\\
+% |\clearcaptionsetup*|\oarg{option}\marg{type}\par
+% This removes the saved option list associated with \meta{type}.
+% If \meta{option} is given, only this option will be removed from the list.
+% (The starred variant does not issue warnings.)
+% \Note{The starred variant will be used inside packages automatically.}
+% \begin{macrocode}
+\newcommand*\clearcaptionsetup{%
+ \caption@teststar@\@clearcaptionsetup\@gobble\@firstofone}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\@clearcaptionsetup[1]{%
+ \let\caption@tempa#1%
+ \@testopt\@@clearcaptionsetup{}}
+% \end{macrocode}
+% \begin{macrocode}
+\def\@@clearcaptionsetup[#1]#2{%
+ \@bsphack
+ \expandafter\caption@ifempty@list\csname caption@opt@#2\endcsname
+ {\caption@tempa{\caption@Warning{Option list `#2' undefined}}}%
+ {\ifx,#1,%
+ \caption@clearsetup{#2}%
+ \else
+ \caption@@removefromsetup{#1}{#2}%
+ \fi}%
+ \@esphack}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@clearsetup[1]{%
+ \caption@removefromoptlist{#1}%
+ \@nameundef{caption@opt@#1}}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@removefromsetup{%
+ \let\caption@tempa\@gobble
+ \caption@@removefromsetup}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@@removefromsetup[2]{%
+ \expandafter\let\expandafter\@tempa\csname caption@opt@#2\endcsname
+ \expandafter\let\csname caption@opt@#2\endcsname\@undefined
+ \def\@tempb##1=##2\@nil{##1}%
+ \edef\@tempc{#1}%
+ \@for\@tempa:=\@tempa\do{%
+ \edef\@tempd{\expandafter\@tempb\@tempa=\@nil}%
+ \ifx\@tempd\@tempc
+ \let\caption@tempa\@gobble
+ \else
+ \expandafter\expandafter\expandafter\caption@l@addto@list
+ \expandafter\csname caption@opt@#2\expandafter\endcsname
+ \expandafter{\@tempa}%
+ \fi}%
+ \expandafter\caption@ifempty@list\csname caption@opt@#2\endcsname
+ {\caption@removefromoptlist{#2}}{}%
+ \caption@tempa{\caption@Warning{%
+ Option `#1' was not in list `#2'\MessageBreak}}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\showcaptionsetup}
+% \changes{v1.0d}{2005/05/03}{Optimized for memory usage}
+% \changes{v1.1}{2007/07/29}{Bugfix: Does not expand option list anymore}
+% \changes{v1.2}{2007/11/16}{Bugfix 07-11-09: `space hack' added}
+% |\showcaptionsetup|\oarg{package}\marg{type}\par
+% This comes for debugging issues: It shows the saved option list which
+% is associated with \meta{type}.
+% \begin{macrocode}
+\newcommand*\showcaptionsetup[2][\@firstofone]{%
+ \@bsphack
+ \GenericWarning{}{%
+ #1 Caption Info: Option list on `#2'\MessageBreak
+ #1 Caption Data: \@ifundefined{caption@opt@#2}{%
+ -none-%
+ }{%
+ {\expandafter\expandafter\expandafter\strip@prefix
+ \expandafter\meaning\csname caption@opt@#2\endcsname}%
+ }}%
+ \@esphack}
+% \end{macrocode}
+% \end{macro}
+%
+% \changes{v1.1}{2007/07/02}{Option \opt{options=} added}
+% \changes{v1.3}{2010/09/05}{Option \opt{options*=} added}
+% \begin{macrocode}
+\DeclareCaptionOption{options}{\caption@setoptions{#1}}
+\DeclareCaptionOption{options*}{\caption@setoptions*{#1}}
+% \end{macrocode}
+%
+% \begin{macro}{\caption@setoptions}
+% \changes{v1.0g}{2006/01/03}{Optional argument added}
+% \changes{v1.0h}{2006/01/26}{Revised}
+% \changes{v1.0j}{2007/01/30}{Optional argument removed}
+% \changes{v1.1}{2007/04/11}{Usage of \cs{clearcaptionsetup} added}
+% \changes{v1.1}{2007/05/09}{Renamed from \cs{caption@settype} to \cs{caption@setoptions}}
+% \changes{v1.2}{2007/12/03}{Definition of \cs{caption@iftypewarning} removed}
+% \changes{v1.3}{2010/09/05}{Starred variant added}
+% |\caption@setoptions*|\marg{type or environment or\ldots}\par
+% Caption options which have been saved with |\captionsetup|\oarg{type} can
+% be executed by using this command.
+% It simply executes the saved option list (and clears it afterwards),
+% if there is any. (The starred variant do not clear the option list.)
+% \begin{macrocode}
+\newcommand*\caption@setoptions{%
+ \caption@teststar\caption@set@options\@gobble\@firstofone}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@set@options[2]{%
+ \caption@Debug{options=#2}%
+ \expandafter\let\expandafter\caption@opt\csname caption@opt@#2\endcsname
+ \ifx\caption@opt\relax \else
+ \caption@xsetup\caption@opt
+ #1{\caption@clearsetup{#2}}% #1 = \@firstofone -or- \@gobble
+ \fi}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@xsetup[1]{\expandafter\caption@setup\expandafter{#1}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@addtooptlist}
+% \changes{v1.1}{2007/07/22}{This macro added}
+% \begin{macro}{\caption@removefromoptlist}
+% \changes{v1.1}{2007/07/22}{This macro added}
+% \changes{v1.2c}{2008/08/24}{Fatal typo corrected}
+% |\caption@addtooptlist|\marg{type}\\
+% |\caption@removefromoptlist|\marg{type}\par
+% Adds or removes an \meta{type} to the list of unused caption options.
+% Note that the catcodes of \meta{type} are sanitized here so removing
+% \meta{type} from the list do not fail when the \package{float} package
+% is used (since |\float@getstyle| gives a result which tokens have catcode
+% 12 $=$ ``other'').
+% \begin{macrocode}
+\newcommand*\caption@addtooptlist[1]{%
+ \@ifundefined{caption@opt@#1@lineno}{%
+ \caption@dooptlist\caption@g@addto@list{#1}%
+ \expandafter\xdef\csname caption@opt@#1@lineno\endcsname{\the\inputlineno}%
+ }{}}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@removefromoptlist[1]{%
+ \caption@dooptlist\caption@g@removefrom@list{#1}%
+ \global\expandafter\let\csname caption@opt@#1@lineno\endcsname\@undefined}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@dooptlist[2]{%
+ \begingroup
+ \edef\@tempa{#2}\@onelevel@sanitize\@tempa
+ \expandafter#1\expandafter\caption@optlist\expandafter{\@tempa}%
+ \endgroup}
+% \end{macrocode}
+% \begin{macrocode}
+\AtEndDocument{%
+ \caption@for@list\caption@optlist{%
+ \caption@WarningNoLine{%
+ Unused \string\captionsetup[#1]
+ on input line \csname caption@opt@#1@lineno\endcsname}}}
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+%
+% \begin{macro}{\caption@setkeys}
+% \changes{v1.0g}{2006/01/03}{This macro added}
+% \changes{v1.0j}{2007/01/20}{Bugfix: Usage of \cs{caption@keydepth} added}
+% \changes{v1.0j}{2007/01/30}{Optional argument added}
+% \changes{v1.0n}{2007/04/08}{\cs{caption@keydepth} is now a command instead of a counter}
+% \changes{v1.1b}{2007/09/18}{Usage of \cs{caption@Package} removed, we use \cs{caption@KV@err} instead}
+% \changes{v1.2}{2007/11/16}{Bugfix 07-11-09: `space hack' added}
+% \changes{v1.2a}{2008/01/12}{\cs{captionsetup@starfalse} added}
+% \changes{v1.2d}{2009/09/30}{Bugfix 09-09-29: Missing error handler will be defined automatically}
+% \changes{v1.4}{2011/08/24}{Redefinition of \cs{XKV@err} added}
+% |\caption@setkeys|\oarg{package}\marg{family}\marg{key-values}\par
+% This one simply calls |\setkeys|\marg{family}\marg{key-values}
+% but lets the error messages not refer to the \package{keyval} package,
+% but to the \meta{package} package instead.
+% \begin{macrocode}
+\newcommand*\caption@setkeys{\@dblarg\caption@@setkeys}
+% \end{macrocode}
+% \begin{macrocode}
+\long\def\caption@@setkeys[#1]#2#3{%
+ \@bsphack
+% \end{macrocode}
+% \begin{macrocode}
+ \expandafter\let\csname ORI@KV@err\caption@keydepth\endcsname\KV@err
+ \expandafter\let\csname ORI@KV@errx\caption@keydepth\endcsname\KV@errx
+ \expandafter\let\csname ORI@XKV@err\caption@keydepth\endcsname\XKV@err
+ \edef\caption@keydepth{\caption@keydepth i}%
+% \end{macrocode}
+% \begin{macrocode}
+ \expandafter\let\expandafter\KV@err\csname #1@KV@err\endcsname
+ \ifx\KV@err\relax
+ \def\KV@err##1{\PackageError{#1}{##1}{%
+ See the #1 package documentation for explanation.}}%
+ \fi
+ \def\KV@errx{\KV@err}%
+ \def\XKV@err{\let\@tempa\XKV@tkey\KV@err}%
+% \end{macrocode}
+% \begin{macrocode}
+ \caption@Debug{\protect\setkeys{#2}{#3}}%
+ \setkeys{#2}{#3}%
+% \end{macrocode}
+% \begin{macrocode}
+ \edef\caption@keydepth{\expandafter\@gobble\caption@keydepth}%
+ \expandafter\let\expandafter\KV@err\csname ORI@KV@err\caption@keydepth\endcsname
+ \expandafter\let\expandafter\KV@errx\csname ORI@KV@errx\caption@keydepth\endcsname
+ \expandafter\let\expandafter\XKV@err\csname ORI@XKV@err\caption@keydepth\endcsname
+% \end{macrocode}
+% \begin{macrocode}
+ \ifx\caption@keydepth\@empty \captionsetup@starfalse \fi
+% \end{macrocode}
+% \begin{macrocode}
+ \@esphack}
+% \end{macrocode}
+% \begin{macrocode}
+\let\caption@keydepth\@empty
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@ExecuteOptions}
+% \changes{v1.1}{2007/07/15}{This macro added}
+% \changes{v1.3}{2010/09/04}{Depends on package now}
+% |\caption@ExecuteOptions|\marg{package}\marg{key-values}\par
+% We execute our options using the keyval interface, so we use this one
+% instead of |\ExecuteOptions| offered by \LaTeXe.
+% \begin{macrocode}
+\newcommand*\caption@ExecuteOptions[2]{%
+ \expandafter\@expandtwoargs\csname caption@setkeys@#1\endcsname{#1}{#2}}%
+\@onlypreamble\caption@ExecuteOptions
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@ProcessOptions}
+% \changes{v1.0a}{2004/01/23}{Bugfix, see
+% \purett{news:400D360C.9678329F@gmx.net} for details}
+% \changes{v1.0g}{2006/01/03}{Improvement, uses \cs{caption@setkeys}
+% instead of \cs{setkeys}}
+% \changes{v1.0h}{2006/02/23}{Bugfix, now processes only those global
+% options which have a default value}
+% \changes{v1.0j}{2007/01/30}{\cs{ProcessOptionsWithKV} renamed to
+% \cs{caption@ProcessOptions} and moved from the package to the kernel}
+% \changes{v1.1}{2007/04/17}{Star variant added}
+% |\caption@ProcessOptions*|\marg{package}\par
+% We process our options using the keyval package, so we use this one
+% instead of |\ProcessOptions| offered by \LaTeXe.
+% The starred variant do not process the global options.
+% (This code was taken from the \package{hyperref} package\cite{hyperref}
+% \version{6.74} and improved.)
+% \begin{macrocode}
+\newcommand*\caption@ProcessOptions{%
+ \caption@teststar\caption@@ProcessOptions\@gobble\@firstofone}
+\@onlypreamble\caption@ProcessOptions
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand\caption@@ProcessOptions[2]{%
+ \let\@tempc\relax
+ \let\caption@tempa\@empty
+ #1{% \@firstofone -or- \@gobble
+ \@for\CurrentOption:=\@classoptionslist\do{%
+ \@ifundefined{KV@#2@\CurrentOption}{}{%
+ \@ifundefined{KV@#2@\CurrentOption @default}{%
+ \PackageInfo{#2}{Global option `\CurrentOption' ignored}%
+ }{%
+ \PackageInfo{#2}{Global option `\CurrentOption' processed}%
+ \edef\caption@tempa{\caption@tempa\CurrentOption,}%
+ \@expandtwoargs\@removeelement\CurrentOption
+ \@unusedoptionlist\@unusedoptionlist
+ }%
+ }%
+ }%
+ \let\CurrentOption\@empty
+ }%
+ \caption@ExecuteOptions{#2}{\caption@tempa\@ptionlist{\@currname.\@currext}}%
+ \AtEndOfPackage{\let\@unprocessedoptions\relax}}
+\@onlypreamble\caption@@ProcessOptions
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@SetupOptions}
+% \changes{v1.3}{2010/09/04}{This macro added}
+% |\caption@SetupOptions|\marg{package}\marg{code}\par
+% After calling this macro |\caption@ExecuteOptions| and
+% |\usepackage|\oarg{options}\marg{package}
+% will both be mapped to \meta{code} with \meta{package} and \meta{options}
+% as arguments |#1| and |#2|. (This helps avoiding ``Option clash'' errors.)
+% \begin{macrocode}
+\newcommand*\caption@packagelist{}
+\@onlypreamble\caption@packagelist
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand\caption@SetupOptions[2]{%
+ \@namedef{caption@setkeys@#1}##1##2{#2}%
+ \expandafter\@onlypreamble\csname caption@setkeys@#1\endcsname
+ \@cons\caption@packagelist{{#1}}}
+\@onlypreamble\caption@SetupOptions
+% \end{macrocode}
+% \begin{macrocode}
+\let\caption@onefilewithoptions\@onefilewithoptions
+\def\@onefilewithoptions#1[#2]{%
+ \begingroup
+ \def\@tempa{%
+ \endgroup
+ \caption@onefilewithoptions{#1}[{#2}]}%
+ \def\@tempb{#1}%
+ \def\@elt##1{%
+ \def\@tempc{##1}%
+ \ifx\@tempb\@tempc
+ \def\@tempa{%
+ \endgroup
+ \caption@ExecuteOptions{#1}{#2}%
+ \caption@onefilewithoptions{#1}[]}%
+ \fi}
+ \caption@packagelist
+ \@tempa}
+\@onlypreamble\caption@onefilewithoptions
+% \end{macrocode}
+% \end{macro}
+%
+% \subsection{Margin resp. width}
+% \changes{v1.0n}{2007/04/01}{\cs{captionmarginx} renamed to \cs{captionmargin@}}
+% \changes{v1.0n}{2007/04/03}{Option `twoside' added}
+% \changes{v1.1}{2007/08/11}{Options `margin*', `minmargin', and `maxmargin' added}
+% \changes{v1.2}{2007/11/10}{Option `oneside' added}
+%
+% \begin{macro}{\captionmargin}
+% \begin{macro}{\captionwidth}
+% |\captionmargin| and |\captionwidth| contain the extra margin
+% resp. the total width used for captions. Please never set these values in
+% a direct way, they are just accessible in user documents to provide
+% compatibility to \version{1.x}.\par
+% Note that we can only set one value at a time, `margin' \emph{or} `width'.
+% If |\captionwidth| is not zero we will take this value afterwards,
+% otherwise |\captionmargin| and |\captionmargin@|.
+% \begin{macrocode}
+\newdimen\captionmargin
+\newdimen\captionmargin@
+\newdimen\captionwidth
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+%
+% \begin{macrocode}
+\DeclareCaptionOption{margin}{\setcaptionmargin{#1}}
+\DeclareCaptionOption{margin*}{\setcaptionmargin*{#1}}
+\DeclareCaptionOption{width}{\setcaptionwidth{#1}}
+\DeclareCaptionOption{width*}{\setcaptionwidth*{#1}}
+% \end{macrocode}
+% \begin{macrocode}
+\DeclareCaptionOption{calcmargin}{\caption@setcalcmargin{#1}}
+\DeclareCaptionOption{calcmargin*}{\caption@setcalcmargin*{#1}}
+\DeclareCaptionOption{calcwidth}{\caption@setcalcwidth{#1}}
+\DeclareCaptionOption{calcwidth*}{\caption@setcalcwidth*{#1}}
+% \end{macrocode}
+% \begin{macrocode}
+\DeclareCaptionOption{twoside}[1]{\caption@set@bool\caption@iftwoside{#1}}
+\DeclareCaptionOptionNoValue{oneside}{\caption@set@bool\caption@iftwoside0}
+% \end{macrocode}
+% \begin{macrocode}
+\DeclareCaptionOption{minmargin}{\caption@setoptcmd\caption@minmargin{#1}}
+\DeclareCaptionOption{maxmargin}{\caption@setoptcmd\caption@maxmargin{#1}}
+% \end{macrocode}
+%
+% \begin{macro}{\setcaptionmargin}
+% \changes{v1.0f}{2005/10/24}{Renamed from \cs{caption@setmargin} to \cs{setcaptionmargin}}
+% \changes{v1.0f}{2005/10/24}{\cs{setcaptionmargin} enhanced so it can take
+% left+right margin}
+% \changes{v1.1}{2007/08/11}{Starred variant added}
+% \changes{v1.1}{2007/08/12}{\cs{setlength}\cs{captionmargin} \&
+% \cs{setlength}\cs{captionmargin@} swapped so
+% `\texttt{margin*=}\cs{captionmargin}' works in singleline options}
+% \changes{v1.3}{2010/11/07}{Support for option \opt{calcmargin} added}
+% |\setcaptionmargin|\marg{amount}\\
+% |\setcaptionmargin*|\marg{amount}\par
+% Please never use this in user documents, it's just there to
+% provide compatibility to the \package{caption2} package.
+% \begin{macrocode}
+\newcommand*\setcaptionmargin{%
+ \caption@resetcalcmargin
+ \caption@setmargin}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@setmargin{%
+ \caption@teststar\caption@@setmargin\@gobble\@firstofone}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@@setmargin[2]{%
+ #1{\captionwidth\z@}%
+ \caption@@@setmargin#2,#2,\@nil}
+% \end{macrocode}
+% \begin{macrocode}
+\def\caption@@@setmargin#1,#2,#3\@nil{%
+ \setlength\captionmargin@{#2}%
+ \setlength\captionmargin{#1}%
+ \addtolength\captionmargin@{-\captionmargin}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\setcaptionwidth}
+% \changes{v1.0f}{2005/10/24}{Renamed from \cs{caption@setwidth} to \cs{setcaptionwidth}}
+% \changes{v1.3}{2010/11/07}{Starred variant added}
+% \changes{v1.3}{2010/11/07}{Support for option \opt{calcwidth} added}
+% |\setcaptionwidth|\marg{amount}\\
+% |\setcaptionwidth*|\marg{amount}\par
+% Please never use this in user documents, it's just there to
+% provide compatibility to the \package{caption2} package.
+% \begin{macrocode}
+\newcommand*\setcaptionwidth{%
+ \caption@resetcalcmargin
+ \caption@setwidth}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@setwidth{%
+ \caption@teststar\caption@@setwidth\@gobble\@firstofone}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@@setwidth[2]{%
+ #1{\captionmargin\z@\captionmargin@\z@}%
+ \setlength\captionwidth{#2}}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@resetcalcmargin}
+% \changes{v1.3}{2010/11/07}{This macro added}
+% \begin{macrocode}
+\newcommand*\caption@resetcalcmargin{%
+ \let\caption@calcmargin@hook\@empty}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@setcalcmargin}
+% \changes{v1.3}{2010/11/07}{This macro added}
+% \begin{macrocode}
+\newcommand*\caption@setcalcmargin{%
+ \caption@teststar{\caption@@setcalcmargin\caption@setmargin}%
+ \@secondoftwo\@firstoftwo}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@@setcalcmargin[3]{%
+ #2{\caption@resetcalcmargin
+ \l@addto@macro\caption@calcmargin@hook{#1{#3}}}%
+ {\l@addto@macro\caption@calcmargin@hook{#1*{#3}}}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@setcalcwidth}
+% \changes{v1.3}{2010/11/07}{This macro added}
+% \begin{macrocode}
+\newcommand*\caption@setcalcwidth{%
+ \caption@teststar{\caption@@setcalcmargin\caption@setwidth}%
+ \@secondoftwo\@firstoftwo}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@counter}
+% \changes{v1.0n}{2007/04/03}{This counter added}
+% \changes{v1.1e}{2007/10/28}{Renamed to \cs{caption@thecounter}; \cs{caption@stepcounter} added}
+% This counter numbers the captions. At the moment it will be used inside
+% |\caption@ifoddpage| only.
+% \begin{macrocode}
+\newcommand*\caption@thecounter{0}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@stepcounter{%
+ \@tempcnta\caption@thecounter
+ \advance\@tempcnta\@ne
+ \xdef\caption@thecounter{\the\@tempcnta}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@newlabel}
+% \changes{v1.0n}{2007/04/03}{This macro added}
+% This command is a modified version of |\newlabel| from \LaTeX2e.
+% It will be written to the \texttt{.aux} file to
+% pass label information from one run to another.
+% (We use it inside |\caption@ifoddpage| and |\caption@ragged|.)
+% \begin{macrocode}
+\newcommand*\caption@newlabel{\@newl@bel{caption@r}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@thepage}
+% \changes{v1.0n}{2007/04/03}{This macro added}
+% This command is a modified version of |\thepage| from \LaTeX2e.
+% It will be used inside |\caption@ifoddpage| only.
+% \begin{macrocode}
+\newcommand*\caption@thepage{\the\c@page}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@label}
+% \changes{v1.1}{2007/09/01}{This macro added}
+% \changes{v1.2}{2007/12/03}{Definition of \cs{caption@newlabel} in AUX file added}
+% This command is a modified version of |\label| from \LaTeX2e.
+% It will be used inside |\caption@ifoddpage| and |\FP@helpNote|.
+% \begin{macrocode}
+\newcommand*\caption@label[1]{%
+ \caption@@label
+ \protected@write\@auxout{\let\caption@thepage\relax}%
+ {\string\caption@newlabel{#1}{\caption@thepage}}}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@@label{%
+ \global\let\caption@@label\relax
+ \protected@write\@auxout{}%
+ {\string\providecommand*\string\caption@newlabel[2]{}}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@pageref}
+% \changes{v1.1}{2007/09/01}{This macro added}
+% \changes{v1.2d}{2009/10/09}{Uses \cs{@latex@warning} instead of \cs{caption@Warning} now}
+% This command is a modified version of |\pageref| from \LaTeX2e.
+% It will be used inside |\caption@ifoddpage| and |\FP@helpNote|.
+% \begin{macrocode}
+\newcommand*\caption@pageref[1]{%
+ \expandafter\ifx\csname caption@r@#1\endcsname\relax
+ \G@refundefinedtrue % => 'There are undefined references.'
+ \@latex@warning{Reference `#1' on page \thepage \space undefined}%
+ \else
+ \expandafter\let\expandafter\caption@thepage\csname caption@r@#1\endcsname
+ \fi}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@ifoddpage}
+% \changes{v1.0n}{2007/04/03}{This macro added}
+% \changes{v1.1e}{2007/10/28}{Incrementation of counter moved to \cs{caption@@make}}
+% At the moment this macro uses an own label\ldots ref mechanism,
+% but an alternative implementation method would be using the
+% \package{refcount} package\cite{refcount} and |\ifodd\getpagerefnumber{|\ldots|}|.
+% \Note{This macro re-defines itself so the \texttt{.aux} file will
+% only be used once per group.}
+% \begin{macrocode}
+\newcommand*\caption@ifoddpage{%
+ \caption@iftwoside{%
+ \caption@label\caption@thecounter
+ \caption@pageref\caption@thecounter
+ \ifodd\caption@thepage
+ \let\caption@ifoddpage\@firstoftwo
+ \else
+ \let\caption@ifoddpage\@secondoftwo
+ \fi
+ }{\let\caption@ifoddpage\@firstoftwo}%
+% \end{macrocode}
+% \begin{macrocode}
+ \caption@ifoddpage}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@setoptcmd}
+% \changes{v1.1}{2007/08/11}{This macro added}
+% |\caption@setoptcmd|\marg{cmd}\marg{off -or- value}
+% \begin{macrocode}
+\newcommand*\caption@setoptcmd[2]{%
+ \caption@ifinlist{#2}{0,false,no,off}{\let#1\@undefined}{\def#1{#2}}}
+% \end{macrocode}
+% \end{macro}
+%
+% \subsection{Indentions}
+%
+% \begin{macro}{\caption@indent}
+% \changes{v1.1}{2007/07/29}{Renamed from \cs{captionindent} to \cs{caption@indent}}
+% \begin{macro}{\caption@parindent}
+% \begin{macro}{\caption@hangindent}
+% These are the indentions we support.
+% \begin{macrocode}
+\newdimen\caption@indent
+\newdimen\caption@parindent
+\newdimen\caption@hangindent
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+% \end{macro}
+%
+% \changes{v1.0b}{2004/05/16}{Defaults added for options \opt{parindent=}
+% and \opt{hangindent=}}
+% \changes{v1.0f}{2005/08/22}{Option \opt{parskip=}: \cs{AtBeginCaption}
+% replaced by \cs{caption@@par}}
+% \changes{v1.0f}{2005/08/22}{Undocumented defaults for \opt{parindent=},
+% \opt{hangindent=}, and \opt{parskip=} removed}
+% \begin{macrocode}
+\DeclareCaptionOption{indent}[\leftmargini]{% obsolete!
+ \setlength\caption@indent{#1}}
+\DeclareCaptionOption{indention}[\leftmargini]{%
+ \setlength\caption@indent{#1}}
+\DeclareCaptionOption{parindent}{%
+ \setlength\caption@parindent{#1}}
+\DeclareCaptionOption{hangindent}{%
+ \setlength\caption@hangindent{#1}}
+\DeclareCaptionOption{parskip}{%
+ \l@addto@macro\caption@@par{\setlength\parskip{#1}}}
+% \end{macrocode}
+%
+% \changes{v1.0f}{2005/08/22}{Increased compatibility to KOMA-Script:
+% A special version of options `parindent' and `parskip' added}
+% \changes{v1.0g}{2006/01/03}{Bugfix 06-01-03: KOMA-Script variants of
+% `parskip' and `parindent' options revised and moved into caption kernel}
+% \changes{v1.0h}{2006/02/23}{KOMA-Script variants of `parskip' and
+% `parindent' are obsolete now, removed}
+% \changes{v1.0m}{2007/03/30}{KOMA-Script variants of `parskip' and
+% `parindent' re-added, since they still collide with the current
+% version of the subfig package (Sigh!)}
+%
+% There is an option clash between the \KOMAScript\ document classes
+% and the \package{caption} kernel, both define the options |parindent| and
+% |parskip| but with different meaning.
+% Furthermore the ones defined by the \package{caption} kernel take a
+% value as parameter but the \KOMAScript\ ones do not.
+% So we need special versions of the options |parindent| and |parskip| here
+% which determine if a value is given (and therefore should be treated as
+% our option) or not (and therefore should be ignored by us).\footnote{%^^A
+% This problem was completely solved due a change of \cs{caption@ProcessOptions}
+% in \thispackage\ \version{1.0h}, but we still need this workaround since
+% these options would otherwise still collide with the current version $1.3$
+% of the \package{subfig} package (Sigh!)}
+% \begin{macrocode}
+\providecommand*\caption@ifkomaclass{%
+ \caption@ifundefined\scr@caption\@gobble\@firstofone}
+\@onlypreamble\caption@ifkomaclass
+% \end{macrocode}
+% \begin{macrocode}
+\caption@ifkomaclass{%
+% \end{macrocode}
+% \begin{macrocode}
+ \let\caption@KV@parindent\KV@caption@parindent
+ \DeclareCaptionOption{parindent}[]{%
+ \ifx,#1,%
+ \caption@Debug{Option `parindent' ignored}%
+ \else
+ \caption@KV@parindent{#1}%
+ \fi}%
+% \end{macrocode}
+% \begin{macrocode}
+ \let\caption@KV@parskip\KV@caption@parskip
+ \DeclareCaptionOption{parskip}[]{%
+ \ifx,#1,%
+ \caption@Debug{Option `parskip' ignored}%
+ \else
+ \caption@KV@parskip{#1}%
+ \fi}%
+% \end{macrocode}
+% \begin{macrocode}
+}
+% \end{macrocode}
+%
+% \subsection{Styles}
+%
+% \begin{macro}{\DeclareCaptionStyle}
+% \changes{v1.0a}{2004/01/17}{Pass through argument \#3 so extra spaces
+% between arguments do make any harm}
+% |\DeclareCaptionStyle|\marg{name}\oarg{single-line-list-of-KV}\marg{list-of-KV}
+% \begin{macrocode}
+\newcommand*\DeclareCaptionStyle[1]{%
+ \@testopt{\caption@declarestyle{#1}}{}}
+\@onlypreamble\DeclareCaptionStyle
+% \end{macrocode}
+% \begin{macrocode}
+\def\caption@declarestyle#1[#2]#3{%
+ \global\@namedef{caption@sls@#1}{#2}%
+ \global\@namedef{caption@sty@#1}{#3}}
+\@onlypreamble\caption@declarestyle
+% \end{macrocode}
+% \end{macro}
+%
+% \changes{v1.2a}{2008/01/20}{Option \opt{style*=} added}
+% \changes{v1.2b}{2008/05/06}{Option \opt{slc=} added}
+% \begin{macrocode}
+\DeclareCaptionOption{style}{\caption@setstyle{#1}}
+\DeclareCaptionOption{style*}{\caption@setstyle*{#1}}
+\DeclareCaptionOption{singlelinecheck}[1]{\caption@set@bool\caption@ifslc{#1}}
+\DeclareCaptionOption{slc}[1]{\KV@caption@singlelinecheck{#1}}
+% \end{macrocode}
+%
+% \begin{macro}{\caption@setstyle}
+% \changes{v1.0e}{2005/06/01}{Starred variant added}
+% \changes{v1.1}{2007/07/29}{Recursive style definitions should work now}
+% \changes{v1.1d}{2007/10/23}{`SingleLine' renamed to `singleline' for consistency}
+% \changes{v1.2}{2007/12/03}{Definition of \cs{caption@iftypewarning} removed}
+% |\caption@setstyle|\marg{name}\\
+% |\caption@setstyle*|\marg{name}\par
+% Selecting a caption style means saving the additional
+% \meta{single-line-list-of-KV} (this will be done by |\caption@sls|),
+% resetting the caption options to the base ones (this will be done using
+% |\caption@resetstyle|) and executing the \meta{list-of-KV} options
+% (this will be done using |\caption@setup|).\par
+% The starred version will give no error message if the given style is not
+% defined.
+% \begin{macrocode}
+\newcommand*\caption@setstyle{%
+ \caption@teststar\caption@@setstyle\@gobble\@firstofone}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@@setstyle[2]{%
+ \@ifundefined{caption@sty@#2}%
+ {#1{\caption@Error{Undefined style `#2'}}}%
+ {\expandafter\let\expandafter\caption@sty\csname caption@sty@#2\endcsname
+ \ifx\caption@setstyle@flag\@undefined
+ \let\caption@setstyle@flag\relax
+ \caption@resetstyle
+ \caption@xsetup\caption@sty
+ \let\caption@setstyle@flag\@undefined
+ \else
+ \caption@xsetup\caption@sty
+ \fi
+ \expandafter\let\expandafter\caption@sls\csname caption@sls@#2\endcsname
+ \expandafter\caption@l@addto@list\expandafter\caption@opt@singleline
+ \expandafter{\caption@sls}}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@resetstyle}
+% \changes{v1.1}{2007/02/04}{%
+% This macro renamed from \cs{caption@setdefault} to \cs{caption@resetstyle}}
+% \changes{v1.1d}{2007/10/23}{`SingleLine' renamed to `singleline' for consistency}
+% \changes{v1.2}{2007/11/17}{Usage of \texttt{size=} added}
+% \changes{v1.2b}{2008/05/06}{Usage of \texttt{rule} added}
+% This resets (nearly) all caption options to the base ones.
+% \emph{Note that this does not touch the skips and the positioning!}
+% \begin{macrocode}
+\newcommand*\caption@resetstyle{%
+ \caption@setup{%
+ format=plain,labelformat=default,labelsep=colon,textformat=simple,%
+ justification=justified,font=,size=,labelfont=,textfont=,%
+ margin=0pt,minmargin=0,maxmargin=0,%
+ indent=0pt,parindent=0pt,hangindent=0pt,%
+ slc,rule,strut}%
+ \caption@clearsetup{singleline}}
+% \end{macrocode}
+% \end{macro}
+%
+% \changes{v1.0c}{2005/02/12}{\opt{indent=0pt} added to caption style \opt{default}}
+% \changes{v1.1}{2007/02/04}{Caption style `default' renamed to `base', and a new `default' added}
+% \changes{v1.1}{2007/03/31}{\opt{format=plain} added to caption style \opt{default}}
+% \changes{v1.1c}{2007/10/14}{\opt{format=plain} removed from caption style \opt{default}}
+% Currently there are two pre-defined styles, called `base' \& `default'.
+% The first one is a perfect match to the behavior of |\@makecaption| offered
+% by the standard \LaTeX\ document classes (and was called `default' in
+% \thispackage\ \version{1.0}), the second one matches the document
+% class actually used.
+% \begin{macrocode}
+\DeclareCaptionStyle{base}[indent=0pt,justification=centering]{}
+\DeclareCaptionStyle{default}[indent=0pt,justification=centering]{%
+ format=default,labelsep=default,textformat=default,%
+ justification=default,font=default,labelfont=default,textfont=default}
+% \end{macrocode}
+%
+% \subsection{Formats}
+%
+% \begin{macro}{\DeclareCaptionFormat}
+% \changes{v1.0a}{2004/01/17}{Pass through argument \#3 so extra spaces
+% between arguments do make any harm}
+% \changes{v1.0c}{2005/02/09}{Starred variant added}
+% \changes{v1.1c}{2007/10/15}{Optional argument added}
+% |\DeclareCaptionFormat|\marg{name}\marg{code with \#1, \#2, and \#3}\\
+% |\DeclareCaptionFormat*|\marg{name}\marg{code with \#1, \#2, and \#3}\par
+% The starred form causes the code being typeset in vertical (instead of
+% horizontal) mode, but does not support the |indention=| option.
+% \begin{macrocode}
+\newcommand*\DeclareCaptionFormat{%
+ \caption@teststar\caption@declareformat\@gobble\@firstofone}
+\@onlypreamble\DeclareCaptionFormat
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@declareformat[2]{%
+ \@dblarg{\caption@@declareformat#1{#2}}}
+\@onlypreamble\caption@declareformat
+% \end{macrocode}
+% \begin{macrocode}
+\long\def\caption@@declareformat#1#2[#3]#4{%
+ \global\expandafter\let\csname caption@ifh@#2\endcsname#1%
+ \global\long\@namedef{caption@slfmt@#2}##1##2##3{#3}%
+ \global\long\@namedef{caption@fmt@#2}##1##2##3{#4}}
+\@onlypreamble\caption@@declareformat
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+\DeclareCaptionOption{format}{\caption@setformat{#1}}
+% \end{macrocode}
+%
+% \begin{macro}{\caption@setformat}
+% |\caption@setformat|\marg{name}\par
+% Selecting a caption format simply means saving the code (in |\caption@fmt|)
+% and if the code should be used in horizontal or vertical mode (|\caption@ifh|).
+% \begin{macrocode}
+\newcommand*\caption@setformat[1]{%
+ \@ifundefined{caption@fmt@#1}%
+ {\caption@Error{Undefined format `#1'}}%
+ {\expandafter\let\expandafter\caption@ifh\csname caption@ifh@#1\endcsname
+ \expandafter\let\expandafter\caption@slfmt\csname caption@slfmt@#1\endcsname
+ \expandafter\let\expandafter\caption@fmt\csname caption@fmt@#1\endcsname}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\DeclareCaptionDefaultFormat}
+% \changes{v1.2a}{2008/01/31}{This macro added}
+% \begin{macrocode}
+\newcommand*\DeclareCaptionDefaultFormat[1]{%
+ \expandafter\def\expandafter\caption@fmt@default\expandafter
+ {\csname caption@fmt@#1\endcsname}%
+ \expandafter\def\expandafter\caption@slfmt@default\expandafter
+ {\csname caption@slfmt@#1\endcsname}%
+ \expandafter\def\expandafter\caption@ifh@default\expandafter
+ {\csname caption@ifh@#1\endcsname}}
+\@onlypreamble\DeclareCaptionDefaultFormat
+% \end{macrocode}
+% \end{macro}
+%
+% \changes{v1.0a}{2004/01/23}{%
+% Caption format \opt{default} renamed to \opt{normal}}
+% \changes{v1.0e}{2005/05/12}{%
+% Caption format \opt{normal} renamed to \opt{@normal}}
+% \changes{v1.0f}{2005/08/25}{%
+% Caption format \opt{@normal} renamed to \opt{plain} and documented}
+% \changes{v1.1c}{2007/10/14}{%
+% Single-line variant of caption format \opt{hang} added}
+% There are two pre-defined formats, called `plain' and `hang'.
+% \begin{macrocode}
+\DeclareCaptionFormat{plain}{#1#2#3\par}
+% \end{macrocode}
+% \begin{macrocode}
+\DeclareCaptionFormat{hang}[#1#2#3\par]{%
+ \caption@ifin@list\caption@lsepcrlist\caption@lsepname
+ {\caption@Error{%
+ The option `labelsep=\caption@lsepname' does not work\MessageBreak
+ with `format=hang'}}%
+ {\@hangfrom{#1#2}%
+ \advance\caption@parindent\hangindent
+ \advance\caption@hangindent\hangindent
+ \caption@@par#3\par}}
+% \end{macrocode}
+%
+% \changes{v1.0a}{2004/01/23}{Caption format \opt{default} linked to \opt{plain}}
+% \changes{v1.0d}{2005/04/28}{Bugfix 05-04-28: Missing \cs{caption@ifh@default} added}
+% `default' usually maps to `plain'.
+% \begin{macrocode}
+\DeclareCaptionDefaultFormat{plain}
+% \end{macrocode}
+%
+% \subsection{Label formats}
+%
+% \begin{macro}{\DeclareCaptionLabelFormat}
+% \changes{v1.0a}{2004/01/17}{%
+% Pass through argument \#2 so extra spaces between arguments do make any harm}
+% |\DeclareCaptionLabelFormat|\marg{name}\marg{code with \#1 and \#2}
+% \begin{macrocode}
+\newcommand*\DeclareCaptionLabelFormat[2]{%
+ \global\@namedef{caption@lfmt@#1}##1##2{#2}}
+\@onlypreamble\DeclareCaptionLabelFormat
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+\DeclareCaptionOption{labelformat}{\caption@setlabelformat{#1}}
+% \end{macrocode}
+%
+% \begin{macro}{\caption@setlabelformat}
+% |\caption@setlabelformat|\marg{name}\par
+% Selecting a caption label format simply means saving the code (in |\caption@lfmt|).
+% \begin{macrocode}
+\newcommand*\caption@setlabelformat[1]{%
+ \@ifundefined{caption@lfmt@#1}%
+ {\caption@Error{Undefined label format `#1'}}%
+ {\expandafter\let\expandafter\caption@lfmt\csname caption@lfmt@#1\endcsname}}
+% \end{macrocode}
+% \end{macro}
+%
+% \changes{v1.2}{2007/12/16}{Caption label format \opt{brace} added}
+% There are four pre-defined label formats, called `empty', `simple',
+% `parens', and `brace'.
+% \begin{macrocode}
+\DeclareCaptionLabelFormat{empty}{}
+\DeclareCaptionLabelFormat{simple}{\bothIfFirst{#1}{\nobreakspace}#2}
+\DeclareCaptionLabelFormat{parens}{\bothIfFirst{#1}{\nobreakspace}(#2)}
+\DeclareCaptionLabelFormat{brace}{\bothIfFirst{#1}{\nobreakspace}#2)}
+% \end{macrocode}
+%
+% `default' usually maps to `simple'.
+% \begin{macrocode}
+\def\caption@lfmt@default{\caption@lfmt@simple}
+% \end{macrocode}
+%
+% \subsection{Label separators}
+%
+% \begin{macro}{\DeclareCaptionLabelSeparator}
+% \changes{v1.0a}{2004/01/17}{Pass through argument \#2 so extra spaces
+% between arguments do make any harm}
+% \changes{v1.0f}{2005/08/25}{Starred variant added}
+% \changes{v1.1}{2007/07/13}{Test for CR added}
+% \changes{v1.3}{2011/08/06}{Test for CR revised}
+% |\DeclareCaptionLabelSeparator|\marg{name}\marg{code}\\
+% |\DeclareCaptionLabelSeparator*|\marg{name}\marg{code}\par
+% The starred form causes the label separator to be typeset \emph{without} using |\captionlabelfont|.
+% \begin{macrocode}
+\newcommand\DeclareCaptionLabelSeparator{%
+ \caption@teststar\caption@declarelabelseparator\@gobble\@firstofone}
+\@onlypreamble\DeclareCaptionLabelSeparator
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand\caption@declarelabelseparator[3]{%
+ \global\@namedef{caption@iflf@#2}{#1}%
+ \global\long\@namedef{caption@lsep@#2}{#3}%
+ \caption@@declarelabelseparator{#2}#3\\\@nil}
+\@onlypreamble\caption@declarelabelseparator
+% \end{macrocode}
+% \begin{macrocode}
+\long\def\caption@@declarelabelseparator#1#2\\#3\@nil{%
+ \def\@tempa{#3}\ifx\@tempa\@empty \else
+ \caption@g@addto@list\caption@lsepcrlist{#1}%
+ \fi}
+\@onlypreamble\caption@@declarelabelseparator
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+\DeclareCaptionOption{labelsep}{\caption@setlabelseparator{#1}}
+\DeclareCaptionOption{labelseparator}{\caption@setlabelseparator{#1}}
+% \end{macrocode}
+%
+% \begin{macro}{\caption@setlabelseparator}
+% |\caption@setlabelseparator|\marg{name}\par
+% Selecting a caption label separator simply means saving the code (in |\caption@lsep|).
+% \begin{macrocode}
+\newcommand*\caption@setlabelseparator[1]{%
+ \@ifundefined{caption@lsep@#1}%
+ {\caption@Error{Undefined label separator `#1'}}%
+ {\edef\caption@lsepname{#1}%
+ \expandafter\let\expandafter\caption@iflf\csname caption@iflf@#1\endcsname
+ \expandafter\let\expandafter\caption@lsep\csname caption@lsep@#1\endcsname}}
+% \end{macrocode}
+% \end{macro}
+%
+% \changes{v1.0e}{2005/06/11}{Bugfix 05-03-23: Caption label separator
+% \opt{newline} implementation changed from \cs{newline} to \cs{\textbackslash}}
+% \changes{v1.0f}{2005/08/24}{Caption label separator \opt{endash} added}
+% There are seven pre-defined label separators, called `none', `colon', `period', `space',
+% `quad', `newline', and `endash'.
+% \begin{macrocode}
+\DeclareCaptionLabelSeparator{none}{}
+\DeclareCaptionLabelSeparator{colon}{: }
+\DeclareCaptionLabelSeparator{period}{. }
+\DeclareCaptionLabelSeparator{space}{ }
+\DeclareCaptionLabelSeparator*{quad}{\quad}
+\DeclareCaptionLabelSeparator*{newline}{\\}
+\DeclareCaptionLabelSeparator*{endash}{\space\textendash\space}
+% \end{macrocode}
+%
+% \begin{macro}{\caption@setdefaultlabelsep}
+% \changes{v1.2d}{2009/03/29}{This macro added}
+% \begin{macrocode}
+\newcommand*\caption@setdefaultlabelsep[1]{%
+ \ifx\caption@lsep\caption@lsep@default
+ \caption@set@default@labelsep{#1}%
+ \caption@setlabelseparator{default}%
+ \else
+ \caption@set@default@labelsep{#1}%
+ \fi}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@set@default@labelsep[1]{%
+ \def\caption@lsep@default{\@nameuse{caption@lsep@#1}}%
+ \def\caption@iflf@default{\@nameuse{caption@iflf@#1}}}
+% \end{macrocode}
+% \end{macro}
+%
+% `default' usually maps to `colon'.
+% \begin{macrocode}
+\caption@set@default@labelsep{colon}
+% \end{macrocode}
+%
+% \subsection{Text formats}
+%
+% \begin{macro}{\DeclareCaptionTextFormat}
+% \changes{v1.0j}{2007/02/18}{This macro added}
+% |\DeclareCaptionTextFormat|\marg{name}\marg{code with \#1}
+% \begin{macrocode}
+\newcommand*\DeclareCaptionTextFormat[2]{%
+ \global\long\@namedef{caption@tfmt@#1}##1{#2}}
+\@onlypreamble\DeclareCaptionTextFormat
+% \end{macrocode}
+% \end{macro}
+%
+% \changes{v1.0c}{2005/02/12}{Option \opt{strut=} added}
+% \begin{macrocode}
+\DeclareCaptionOption{textformat}{\caption@settextformat{#1}}
+\DeclareCaptionOption{strut}[1]{\caption@set@bool\caption@ifstrut{#1}}
+% \end{macrocode}
+%
+% \begin{macro}{\caption@settextformat}
+% \changes{v1.0j}{2007/02/18}{This macro added}
+% |\caption@settextformat|\marg{name}\par
+% Selecting a caption text format simply means saving the code (in |\caption@tfmt|).
+% \begin{macrocode}
+\newcommand*\caption@settextformat[1]{%
+ \@ifundefined{caption@tfmt@#1}%
+ {\caption@Error{Undefined text format `#1'}}%
+ {\expandafter\let\expandafter\caption@tfmt\csname caption@tfmt@#1\endcsname}}
+% \end{macrocode}
+% \end{macro}
+%
+% There are three pre-defined text formats, called `empty', `simple' and `period'.
+% \changes{v1.4}{2011/10/05}{Pre-defined text format `empty' added}
+% \begin{macrocode}
+\DeclareCaptionTextFormat{empty}{}
+\DeclareCaptionTextFormat{simple}{#1}
+\DeclareCaptionTextFormat{period}{#1.}
+% \end{macrocode}
+%
+% `default' usually maps to `simple'.
+% \begin{macrocode}
+\def\caption@tfmt@default{\caption@tfmt@simple}
+% \end{macrocode}
+%
+% \subsection{Fonts}
+%
+% \begin{macro}{\DeclareCaptionFont}
+% \changes{v1.0a}{2004/01/22}{%
+% Bugfix: Multi token arguments are allowed now}
+% \changes{v1.1}{2007/05/07}{%
+% Internal: Uses \cs{caption@fnt} instead of \cs{caption@temp} now}
+% |\DeclareCaptionFont|\marg{name}\marg{code}
+% \begin{macrocode}
+\newcommand*\DeclareCaptionFont[2]{%
+ \define@key{caption@fnt}{#1}[]{\l@addto@macro\caption@fnt{#2}}}
+\@onlypreamble\DeclareCaptionFont
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\DeclareCaptionDefaultFont}
+% \changes{v1.1}{2006/05/14}{This macro added}
+% \changes{v1.2a}{2008/01/31}{Renamed from \cs{DeclareDefaultCaptionFont} to \cs{DeclareCaptionDefaultFont}}
+% |\DeclareCaptionDefaultFont|\marg{name}\marg{code}
+% \begin{macrocode}
+\newcommand*\DeclareCaptionDefaultFont[2]{%
+ \global\@namedef{caption#1@default}{#2}}
+\@onlypreamble\DeclareCaptionDefaultFont
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+\DeclareCaptionOption{font}{\caption@setfont{font}{#1}}
+\DeclareCaptionOption{font+}{\caption@addtofont{font}{#1}}
+\DeclareCaptionDefaultFont{font}{}
+% \end{macrocode}
+% \begin{macrocode}
+\DeclareCaptionOption{labelfont}{\caption@setfont{labelfont}{#1}}
+\DeclareCaptionOption{labelfont+}{\caption@addtofont{labelfont}{#1}}
+\DeclareCaptionDefaultFont{labelfont}{}
+% \end{macrocode}
+% \begin{macrocode}
+\DeclareCaptionOption{textfont}{\caption@setfont{textfont}{#1}}
+\DeclareCaptionOption{textfont+}{\caption@addtofont{textfont}{#1}}
+\DeclareCaptionDefaultFont{textfont}{}
+% \end{macrocode}
+%
+% \begin{macro}{\caption@setfont}
+% \changes{v1.0j}{2007/01/30}{Usage of \cs{caption@setkeys} with optional argument}
+% \changes{v1.1}{2006/05/14}{Support of \cs{DeclareDefaultCaptionFont} added}
+% |\caption@setfont|\marg{name}\marg{keyval-list of names}\par
+% Selecting a caption font means saving all the code snippets
+% in |\caption|\meta{name}.
+% \begin{macrocode}
+\newcommand*\caption@setfont[1]{%
+ \expandafter\let\csname caption#1\endcsname\@empty
+ \caption@addtofont{#1}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@addtofont}
+% \changes{v1.2}{2007/11/17}{This macro added}
+% |\caption@addtofont|\marg{name}\marg{keyval-list of names}\par
+% Like |\caption@setfont|, but adds the code snippets to |\caption|\meta{name}.\par
+% Because we use |\setkeys| recursive here we need to do this inside an
+% extra group.
+% \begin{macrocode}
+\newcommand*\caption@addtofont[2]{%
+ \begingroup
+ \expandafter\let\expandafter\caption@fnt\csname caption#1\endcsname
+ \define@key{caption@fnt}{default}[]{%
+ \l@addto@macro\caption@fnt{\csname caption#1@default\endcsname}}%
+ \caption@setkeys[caption]{caption@fnt}{#2}%
+ \global\let\caption@tempa\caption@fnt
+ \endgroup
+ \expandafter\let\csname caption#1\endcsname\caption@tempa}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@font}
+% \changes{v1.1}{2007/05/07}{This macro added}
+% |\caption@font|\marg{keyval-list of names}\\
+% |\caption@font*|\marg{keyval-code}\par
+% Sets the given font, e.g.~|\caption@font{small,it}|
+% is equivalent to |\small\itshape|.
+% \begin{macrocode}
+\newcommand*\caption@font{%
+ \caption@teststar\caption@@font\@firstofone
+ {\caption@setkeys[caption]{caption@fnt}}}
+\newcommand*\caption@@font[2]{%
+ \begingroup
+ \def\caption@fnt{\endgroup}%
+ #1{#2}%
+ \caption@fnt}
+% \end{macrocode}
+% \end{macro}
+%
+% These are the pre-defined font code snippets.
+%
+% \changes{v1.1}{2007/05/07}{Color font support added}
+% \begin{macrocode}
+\DeclareCaptionFont{normalcolor}{\normalcolor}
+\DeclareCaptionFont{color}{\color{#1}}
+% \end{macrocode}
+%
+% \begin{macrocode}
+\DeclareCaptionFont{normalfont}{\normalfont}
+\DeclareCaptionFont{up}{\upshape}
+\DeclareCaptionFont{it}{\itshape}
+\DeclareCaptionFont{sl}{\slshape}
+\DeclareCaptionFont{sc}{\scshape}
+\DeclareCaptionFont{md}{\mdseries}
+\DeclareCaptionFont{bf}{\bfseries}
+\DeclareCaptionFont{rm}{\rmfamily}
+\DeclareCaptionFont{sf}{\sffamily}
+\DeclareCaptionFont{tt}{\ttfamily}
+% \end{macrocode}
+%
+% \begin{macrocode}
+\DeclareCaptionFont{scriptsize}{\scriptsize}
+\DeclareCaptionFont{footnotesize}{\footnotesize}
+\DeclareCaptionFont{small}{\small}
+\DeclareCaptionFont{normalsize}{\normalsize}
+\DeclareCaptionFont{large}{\large}
+\DeclareCaptionFont{Large}{\Large}
+% \end{macrocode}
+%
+% \changes{v1.3}{2011/01/01}{\package{sansmath} package support added}
+% \begin{macrocode}
+\DeclareCaptionFont{sansmath}{\sansmath}
+% \end{macrocode}
+%
+% \changes{v1.0n}{2007/04/02}{\package{setspace} package support added}
+% \changes{v1.2d}{2009/10/09}{Bugfix 09-05-18: \package{setspace} package support revised}
+% \begin{macrocode}
+\DeclareCaptionFont{singlespacing}{%
+ \caption@ifundefined\setspace@singlespace{}{%
+ \setstretch\setspace@singlespace}}% normally 1
+\DeclareCaptionFont{onehalfspacing}{\onehalfspacing}
+\DeclareCaptionFont{doublespacing}{\doublespacing}
+\DeclareCaptionFont{stretch}{\setstretch{#1}}
+% \end{macrocode}
+%
+% \begin{macrocode}
+%\DeclareCaptionFont{normal}{%
+% \caption@font{normalcolor,normalfont,normalsize,singlespacing}
+\DeclareCaptionFont{normal}{%
+ \caption@font*{%
+ \KV@caption@fnt@normalcolor\@unused
+ \KV@caption@fnt@normalfont\@unused
+ \KV@caption@fnt@normalsize\@unused
+ \KV@caption@fnt@singlespacing\@unused}}
+% \end{macrocode}
+%
+% \changes{v1.0a}{2004/01/23}{Option \opt{size=} now sets \cs{captionsize} instead of \cs{captionfont}}
+% The old versions \version{1.x} of \thispackage\ offered this
+% command to setup the font size used for captions. We still do
+% so old documents will work fine.
+% \begin{macrocode}
+\DeclareCaptionOption{size}{\caption@setfont{size}{#1}}
+\DeclareCaptionDefaultFont{size}{}
+% \end{macrocode}
+%
+% \subsection{Justifications}
+%
+% \begin{macro}{\DeclareCaptionJustification}
+% \changes{v1.0a}{2004/01/17}{Pass through argument \#2 so extra spaces
+% between arguments do make any harm}
+% \changes{v1.1}{2007/07/03}{Mapped to \cs{DeclareCaptionFont}}
+% |\DeclareCaptionJustification|\marg{name}\marg{code}
+% \begin{macrocode}
+\newcommand*\DeclareCaptionJustification[2]{%
+ \global\@namedef{caption@hj@#1}{#2}% for compatibility to v1.0
+ \DeclareCaptionFont{#1}{#2}}
+\@onlypreamble\DeclareCaptionJustification
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\DeclareCaptionDefaultJustification}
+% \changes{v1.1}{2007/07/03}{This macro added}
+% \changes{v1.2a}{2008/01/31}{Renamed from \cs{DeclareDefaultCaptionJustification} to \cs{DeclareCaptionDefaultJustification}}
+% |\DeclareCaptionDefaultJustification|\marg{code}
+% \begin{macrocode}
+\newcommand*\DeclareCaptionDefaultJustification[1]{%
+ \global\@namedef{caption@hj@default}{#1}% for compatibility to v1.0
+ \DeclareCaptionDefaultFont{@hj}{#1}}
+\@onlypreamble\DeclareCaptionDefaultJustification
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+\DeclareCaptionOption{justification}{\caption@setjustification{#1}}
+\DeclareCaptionDefaultJustification{}
+% \end{macrocode}
+%
+% \begin{macro}{\caption@setjustification}
+% \changes{v1.1}{2007/07/03}{Mapped to \cs{caption@setfont}}
+% |\caption@setjustification|\marg{name}\par
+% Selecting a caption justification simply means saving the code (in |\caption@hj|).
+% \begin{macrocode}
+\newcommand*\caption@setjustification{\caption@setfont{@hj}}
+% \end{macrocode}
+% \end{macro}
+%
+% These are the pre-defined justification code snippets.
+% \begin{macrocode}
+\DeclareCaptionJustification{justified}{}
+\DeclareCaptionJustification{centering}{\centering}
+\DeclareCaptionJustification{centerfirst}{\centerfirst}
+\DeclareCaptionJustification{centerlast}{\centerlast}
+\DeclareCaptionJustification{raggedleft}{\raggedleft}
+\DeclareCaptionJustification{raggedright}{\raggedright}
+% \end{macrocode}
+%
+% \begin{macro}{\centerfirst}
+% \changes{v1.0j}{2007/01/21}{Bugfix: Usage of \cs{@centercr} added (Thanks to Olga!)}
+% \changes{v1.0j}{2007/01/21}{This macro renamed from \cs{caption@centerfirst} to \cs{centerfirst}}
+% Please blame Frank Mittelbach for the code of |\centerfirst| |:-)|
+% \begin{macrocode}
+\providecommand\centerfirst{%
+ \let\\\@centercr
+ \edef\caption@normaladjust{%
+ \leftskip\the\leftskip
+ \rightskip\the\rightskip
+ \parfillskip\the\parfillskip\relax}%
+ \leftskip\z@\@plus -1fil%
+ \rightskip\z@\@plus 1fil%
+ \parfillskip\z@skip
+ \noindent\hskip\z@\@plus 2fil%
+ \@setpar{\@@par\@restorepar\caption@normaladjust}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\centerlast}
+% \changes{v1.0j}{2007/01/21}{Bugfix: Usage of \cs{@centercr} added (Thanks to Olga!)}
+% \changes{v1.0j}{2007/01/21}{This macro renamed from \cs{caption@centerlast} to \cs{centerlast}}
+% This is based on code from Anne Br\"uggemann-Klein\cite{Anne}
+% \begin{macrocode}
+\providecommand\centerlast{%
+ \let\\\@centercr
+ \leftskip\z@\@plus 1fil%
+ \rightskip\z@\@plus -1fil%
+ \parfillskip\z@\@plus 2fil\relax}
+% \end{macrocode}
+% \end{macro}
+%
+% \subsubsection{The ragged2e package}
+% \changes{v1.0b}{2004/05/16}{Improved \package{ragged2e} package support}
+%
+% We also support the upper-case commands offered by the \package{ragged2e}
+% package.
+% Note that these just map to their lower-case variants if the
+% \package{ragged2e} package is not available.
+% \begin{macrocode}
+\DeclareCaptionJustification{Centering}{%
+ \caption@ragged\Centering\centering}
+\DeclareCaptionJustification{RaggedLeft}{%
+ \caption@ragged\RaggedLeft\raggedleft}
+\DeclareCaptionJustification{RaggedRight}{%
+ \caption@ragged\RaggedRight\raggedright}
+% \end{macrocode}
+%
+% \begin{macro}{\caption@ragged}
+% \changes{v1.0n}{2007/04/07}{The `ragged2e' package will now only been
+% loaded when needed}
+% \changes{v1.0o}{2007/04/11}{Bugfix: Usage of \cs{caption@Info} replaced
+% by \cs{caption@Debug}}
+% \changes{v1.1}{2007/04/16}{A different warning will be given on first \LaTeX\ run}
+% |\caption@ragged| will be basically defined as
+% \begin{quote}
+% |\AtBeginDocument{\IfFileExists{ragged2e.sty}%|\\
+% | {\RequirePackage{ragged2e}\let\caption@ragged\@firstoftwo}%|\\
+% | {\let\caption@ragged\@secondoftwo}}|
+% \end{quote}
+% but with an additional warning if the ragged2e package is not loaded (yet).
+% (This warning will be type out only one time per option, that's why
+% we need the |caption\string#1| stuff.)
+% Furthermore we load the \package{ragged2e} package, if needed and available.
+% \begin{macrocode}
+\newcommand*\caption@ragged{%
+ \caption@Debug{We need ragged2e}%
+ \protected@write\@auxout{}{\string\caption@newlabel{ragged2e}{}}%
+ \global\let\caption@ragged\caption@@ragged
+ \caption@ragged}
+% \end{macrocode}
+% \begin{macrocode}
+\caption@AtBeginDocument{%
+ \@ifundefined{caption@r@ragged2e}{%
+ \newcommand*\caption@@ragged{%
+ \caption@Warning{%
+ `ragged2e' support has been changed.\MessageBreak
+ Rerun to get captions right}%
+ \global\let\caption@ragged\@secondoftwo % suppress further warnings
+ \caption@ragged}%
+ }{%
+ \caption@Debug{We load ragged2e}%
+ \IfFileExists{ragged2e.sty}{%
+ \RequirePackage{ragged2e}%
+ \let\caption@@ragged\@firstoftwo
+ }{%
+ \newcommand*\caption@@ragged[2]{%
+ \@ifundefined{caption\string#1}{%
+ \caption@Warning{%
+ `ragged2e' package not loaded, therefore\MessageBreak
+ substituting \string#2 for \string#1\MessageBreak}%
+ \global\@namedef{caption\string#1}}{}%
+ #2}%
+ }%
+ }}
+% \end{macrocode}
+% \begin{macrocode}
+% \end{macrocode}
+% \end{macro}
+%
+% \subsection{Vertical spaces before and after captions}
+%
+% \begin{macro}{\abovecaptionskip}
+% \begin{macro}{\belowcaptionskip}
+% Usually these skips are defined within the document class, but some
+% document classes don't do so.
+% \begin{macrocode}
+\caption@ifundefined\abovecaptionskip{%
+ \newlength\abovecaptionskip\setlength\abovecaptionskip{10\p@}}{}
+\caption@ifundefined\belowcaptionskip{%
+ \newlength\belowcaptionskip\setlength\belowcaptionskip{0\p@}}{}
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+%
+% \changes{v1.0c}{2005/02/12}{Option \opt{skip=} added}
+% \begin{macrocode}
+\DeclareCaptionOption{aboveskip}{\setlength\abovecaptionskip{#1}}
+\DeclareCaptionOption{belowskip}{\setlength\belowcaptionskip{#1}}
+\DeclareCaptionOption{skip}{\setlength\abovecaptionskip{#1}}
+% \end{macrocode}
+%
+% \begin{macro}{\caption@rule}
+% \changes{v1.2b}{2008/05/06}{This macro added}
+% |\caption@rule|\par
+% Draws an invisible rule to adjust the ``skip'' setting.
+% \begin{macrocode}
+\newcommand*\caption@rule{\caption@ifrule\caption@hrule\relax}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@hrule{\hrule\@height\z@}
+% \end{macrocode}
+% \end{macro}
+%
+% \changes{v1.2b}{2008/05/06}{Option \opt{rule=} added}
+% \begin{macrocode}
+\DeclareCaptionOption{rule}[1]{\caption@set@bool\caption@ifrule{#1}}
+% \end{macrocode}
+%
+% \subsection{Positioning}
+%
+% These macros handle the right position of the caption.
+% Note that the position is actually \emph{not} controlled by the
+% \package{caption3} kernel options, but by the user (or a specific package
+% like the \package{float} package) instead.
+% The user can put the |\caption| command wherever he likes! So this stuff
+% is only to give us a \emph{hint} where to put the right skips, the user
+% usually has to take care for himself that this hint actually matches the
+% right position.
+%
+% \begin{macrocode}
+\DeclareCaptionOption{position}{\caption@setposition{#1}}
+% \end{macrocode}
+%
+% \begin{macro}{\caption@setposition}
+% \changes{v1.0a}{2004/01/22}{Now the positions \opt{t}, \opt{above}, \opt{b},
+% \opt{below}, and \opt{a} are allowed, too}
+% \changes{v1.0c}{2004/08/10}{Usage of \cs{caption@defaultpos} added}
+% |\caption@setposition|\marg{position}\par
+% Selecting the caption position means that we put |\caption@position| to
+% the right value. \emph{Please do \textbf{not} use the internal macro
+% \cs{caption@position} in your own package or document, but use the wrapper
+% macro \cs{caption@iftop} instead.}
+% \begin{macrocode}
+\newcommand*\caption@setposition[1]{%
+ \caption@ifinlist{#1}{d,default}{%
+ \let\caption@position\caption@defaultpos
+ }{\caption@ifinlist{#1}{t,top,above}{%
+ \let\caption@position\@firstoftwo
+ }{\caption@ifinlist{#1}{b,bottom,below}{%
+ \let\caption@position\@secondoftwo
+ }{\caption@ifinlist{#1}{a,auto}{%
+ \let\caption@position\@undefined
+ }{%
+ \caption@Error{Undefined position `#1'}%
+ }}}}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@defaultpos}
+% \changes{v1.1}{2007/05/08}{Default position changed from `bottom' to `auto'}
+% The default `position' is `auto', this means that \thispackage\ will try
+% to guess the current position of the caption.
+% (But in many cases, for example in |longtable|s, this is doomed to fail!)\par
+% The setting `bottom' correspondents to the |\@makecaption| implementation
+% in the standard \LaTeX\ document classes, but `auto' should give better
+% results in most cases.
+% \begin{macrocode}
+%\caption@setdefaultpos{a}% default = auto
+\let\caption@defaultpos\@undefined
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@iftop}
+% \changes{v1.0a}{2004/01/23}{Split into \cs{caption@iftop} \& \cs{caption@fixposition}}
+% \changes{v1.0c}{2005/02/12}{Adapted to \cs{caption@defaultpos}}
+% \changes{v1.1}{2007/05/08}{Position will be fixed to `bottom' if `auto'}
+% |\caption@iftop|\marg{true-code}\marg{false-code}\par
+% (If the |position=| is set to |auto| we assume a |bottom| position here.)
+% \begin{macrocode}
+\newcommand*\caption@iftop{%
+ \ifx\caption@position\@undefined
+ \let\caption@position\@secondoftwo
+% = \caption@setposition b%
+ \fi
+ \caption@position}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@fixposition}
+% \changes{v1.0b}{2004/05/16}{%
+% Split into \cs{caption@fixposition} & \cs{caption@autoposition}}
+% |\caption@fixposition|\par
+% This macro checks if the `position' is set to `auto'.
+% If yes, |\caption@autoposition| will be called to
+% set |\caption@position| to a proper value we can actually use.
+% \begin{macrocode}
+\newcommand*\caption@fixposition{%
+ \ifx\caption@position\@undefined
+ \caption@autoposition
+ \fi}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@autoposition}
+% \changes{v1.0a}{2004/01/23}{\cs{ifvmode} added}
+% |\caption@autoposition|\par
+% We guess the current position of the caption by checking |\prevdepth|.\par
+% A different solution would be setting the |\spacefactor| to something
+% not much less than 1000 (for example 994) in |\caption@start| and
+% checking this value here by |\ifnum\spacefactor=994|.
+% (It's implemented in the \package{threeparttable}
+% package\cite{threeparttable} this way.)\par
+% Another idea would be checking |\@ifminipage|, but since some packages
+% typeset the caption within a simple |\vbox| this does not seem to be a
+% good one.
+% \begin{macrocode}
+\newcommand*\caption@autoposition{%
+ \ifvmode
+ \edef\caption@tempa{\the\prevdepth}%
+ \caption@Debug{\protect\prevdepth=\caption@tempa}%
+ \ifdim\prevdepth>-\p@
+ \let\caption@position\@secondoftwo
+ \else
+ \let\caption@position\@firstoftwo
+ \fi
+% = \caption@setposition{\ifdim\prevdepth>-\p@ b\else t\fi}%
+ \else
+ \caption@Debug{no \protect\prevdepth}%
+ \let\caption@position\@secondoftwo
+% = \caption@setposition b%
+ \fi}
+% \end{macrocode}
+% \end{macro}
+% \begin{macro}{\caption@setautoposition}
+% \changes{v1.1}{2007/06/10}{This macro added}
+% |\caption@setautoposition|\marg{position}\par
+% replaces the above algorithm by a different one (or a fixed position setting).
+% \begin{macrocode}
+\newcommand*\caption@setautoposition[1]{%
+ \def\caption@autoposition{\caption@setposition{#1}}}
+% \end{macrocode}
+% \end{macro}
+%
+% \subsection{Hooks}
+%
+% \begin{macro}{\AtBeginCaption}
+% \begin{macro}{\AtEndCaption}
+% |\AtBeginCaption| \marg{code}\\
+% |\AtEndCaption| \marg{code}\par
+% These hooks can be used analogous to |\AtBeginDocument| and |\AtEndDocument|.
+% \begin{macrocode}
+\newcommand*\caption@beginhook{}
+\newcommand*\caption@endhook{}
+\newcommand*\AtBeginCaption{\l@addto@macro\caption@beginhook}
+\newcommand*\AtEndCaption{\l@addto@macro\caption@endhook}
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+%
+% \subsection{Lists}
+%
+% \changes{v1.0b}{2004/05/16}{Option \opt{listof=} added}
+% \changes{v1.2}{2007/11/17}{Option \opt{list=} added}
+% \begin{macrocode}
+\DeclareCaptionOption{list}[1]{\caption@setlist{#1}}
+\DeclareCaptionOption{listof}[1]{\caption@setlist{#1}}
+% \end{macrocode}
+%
+% \begin{macro}{\caption@setlist}
+% \changes{v1.2a}{2008/03/20}{This macro added}
+% |\caption@setlist|\marg{boolean}
+% \begin{macrocode}
+\newcommand*\caption@setlist{\caption@set@bool\caption@iflist}
+% \end{macrocode}
+% \end{macro}
+%
+% \changes{v1.4}{2011/08/30}{Option \opt{listtype=} added}
+% \changes{v1.4}{2011/08/30}{Option \opt{listtype+=} added}
+% \begin{macrocode}
+\DeclareCaptionOption{listtype}{\caption@setlisttype{#1}}
+\DeclareCaptionOption{listtype+}{\caption@setlisttype@ext{#1}}
+% \end{macrocode}
+%
+% \begin{macro}{\caption@setlisttype}
+% \changes{v1.4}{2011/08/30}{This macro added}
+% |\caption@setlisttype|\marg{type}
+% \begin{macrocode}
+\newcommand*\caption@setlisttype{%
+ \caption@setlisttype@ext{}%
+ \caption@@setlisttype\caption@listtype}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@@setlisttype[2]{%
+ \edef#1{#2}%
+ \ifx#1\@empty \let#1\@undefined \fi}
+% \end{macrocode}
+% \end{macro}
+% \begin{macro}{\caption@setlisttype@ext}
+% \changes{v1.4}{2011/08/30}{This macro added}
+% |\caption@setlisttype@ext|\marg{type extension}
+% \begin{macrocode}
+\newcommand*\caption@setlisttype@ext{%
+ \caption@@setlisttype\caption@listtype@ext}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\DeclareCaptionListFormat}
+% \changes{v1.1}{2004/07/15}{This macro added}
+% \changes{v1.2}{2007/11/17}{Renamed from \cs{DeclareCaptionListOfFormat} to \cs{DeclareCaptionListFormat}}
+% |\DeclareCaptionListFormat|\marg{name}\marg{code with \#1 and \#2}
+% \begin{macrocode}
+\newcommand*\DeclareCaptionListFormat[2]{%
+ \global\@namedef{caption@lstfmt@#1}##1##2{#2}}
+\@onlypreamble\DeclareCaptionListFormat
+% \end{macrocode}
+% \end{macro}
+%
+% \changes{v1.1}{2007/07/15}{Option \opt{listofformat=} added}
+% \changes{v1.2}{2007/11/17}{Option \opt{listofformat=} renamed to \opt{listformat=}}
+% \begin{macrocode}
+\DeclareCaptionOption{listformat}{\caption@setlistformat{#1}}
+% \end{macrocode}
+%
+% \begin{macro}{\caption@setlistformat}
+% \changes{v1.1}{2004/07/15}{This macro added}
+% \changes{v1.2}{2007/11/17}{Renamed from \cs{caption@setlistofformat} to \cs{caption@setlistformat}}
+% |\caption@setlistformat|\marg{name}\par
+% Selecting a caption list format simply means saving the code (in |\caption@lstfmt|).
+% \begin{macrocode}
+\newcommand*\caption@setlistformat[1]{%
+ \@ifundefined{caption@lstfmt@#1}%
+ {\caption@Error{Undefined list format `#1'}}%
+ {\expandafter\let\expandafter\caption@lstfmt
+ \csname caption@lstfmt@#1\endcsname}}
+% \end{macrocode}
+% \end{macro}
+%
+% There are five pre-defined list formats, taken from the \package{subfig} package.
+% \begin{macrocode}
+\DeclareCaptionListFormat{empty}{}
+\DeclareCaptionListFormat{simple}{#1#2}
+\DeclareCaptionListFormat{parens}{#1(#2)}
+\DeclareCaptionListFormat{subsimple}{#2}
+\DeclareCaptionListFormat{subparens}{(#2)}
+% \end{macrocode}
+%
+% \begin{macro}{\caption@setdefaultlistformat}
+% \changes{v1.2d}{2009/03/29}{This macro added}
+% \begin{macrocode}
+\newcommand*\caption@setdefaultlistformat[1]{%
+ \ifx\caption@lstfmt\caption@lstfmt@default
+ \caption@set@default@listformat{#1}%
+ \caption@setlistformat{default}%
+ \else
+ \caption@set@default@listformat{#1}%
+ \fi}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@set@default@listformat[1]{%
+ \def\caption@lstfmt@default{\@nameuse{caption@lstfmt@#1}}}
+% \end{macrocode}
+% \end{macro}
+%
+% `default' usually maps to `subsimple'.
+% \begin{macrocode}
+\caption@set@default@listformat{subsimple}
+% \end{macrocode}
+%
+% \subsection{Debug option}
+% \changes{v1.0k}{2007/03/04}{Debug option added}
+%
+% \begin{macrocode}
+\DeclareCaptionOption{debug}[1]{%
+ \caption@set@bool\caption@ifdebug{#1}%
+ \caption@ifdebug
+ {\let\caption@Debug\caption@Info}%
+ {\let\caption@Debug\@gobble}}
+% \end{macrocode}
+% \begin{macrocode}
+\DeclareOption{debug}{\setkeys{caption}{debug}}
+% \end{macrocode}
+% \begin{macrocode}
+\setkeys{caption}{debug=0}
+% \end{macrocode}
+%
+% \subsection{Document classes \& Babel support}
+%
+% \subsubsection{The standard \texorpdfstring{\LaTeX{}}{LaTeX} classes}
+%
+% \begin{macrocode}
+\caption@CheckCommand\@makecaption{%
+ % article|report|book [2005/09/16 v1.4f Standard LaTeX document class]
+ \long\def\@makecaption#1#2{%
+ \vskip\abovecaptionskip
+ \sbox\@tempboxa{#1: #2}%
+ \ifdim \wd\@tempboxa >\hsize
+ #1: #2\par
+ \else
+ \global \@minipagefalse
+ \hb@xt@\hsize{\hfil\box\@tempboxa\hfil}%
+ \fi
+ \vskip\belowcaptionskip}}
+% \end{macrocode}
+%
+% \subsubsection{The \AmS{} \& \SmF{} classes}
+% \changes{v1.1}{2007/07/29}{\AmS\ \& \SmF\ classes support added}
+%
+% \begin{macro}{\caption@ifamsclass}
+% \begin{macrocode}
+\providecommand*\caption@ifamsclass{%
+ \caption@ifundefined\@captionheadfont\@gobble\@firstofone}
+\@onlypreamble\caption@ifamsclass
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+\caption@ifamsclass{%
+% \end{macrocode}
+% \begin{macrocode}
+ \caption@CheckCommand\@makecaption{%
+ % amsart|amsproc|amsbook [2004/08/06 v2.20]
+ \long\def\@makecaption#1#2{%
+ \setbox\@tempboxa\vbox{\color@setgroup
+ \advance\hsize-2\captionindent\noindent
+ \@captionfont\@captionheadfont#1\@xp\@ifnotempty\@xp
+ {\@cdr#2\@nil}{.\@captionfont\upshape\enspace#2}%
+ \unskip\kern-2\captionindent\par
+ \global\setbox\@ne\lastbox\color@endgroup}%
+ \ifhbox\@ne % the normal case
+ \setbox\@ne\hbox{\unhbox\@ne\unskip\unskip\unpenalty\unkern}%
+ \fi
+ \ifdim\wd\@tempboxa=\z@ % this means caption will fit on one line
+ \setbox\@ne\hbox to\columnwidth{\hss\kern-2\captionindent\box\@ne\hss}%
+ \else % tempboxa contained more than one line
+ \setbox\@ne\vbox{\unvbox\@tempboxa\parskip\z@skip
+ \noindent\unhbox\@ne\advance\hsize-2\captionindent\par}%
+ \fi
+ \ifnum\@tempcnta<64 % if the float IS a figure...
+ \addvspace\abovecaptionskip
+ \hbox to\hsize{\kern\captionindent\box\@ne\hss}%
+ \else % if the float IS NOT a figure...
+ \hbox to\hsize{\kern\captionindent\box\@ne\hss}%
+ \nobreak
+ \vskip\belowcaptionskip
+ \fi
+ \relax
+ }}
+% \end{macrocode}
+% \begin{macrocode}
+ \caption@CheckCommand\@makecaption{%
+ % smfart|smfbook [1999/11/15 v1.2f Classe LaTeX pour les articles publies par la SMF]
+ \long\def\@makecaption#1#2{%
+ \ifdim\captionindent>.1\hsize \captionindent.1\hsize \fi
+ \setbox\@tempboxa\vbox{\color@setgroup
+ \advance\hsize-2\captionindent\noindent
+ \@captionfont\@captionheadfont#1\@xp\@ifnotempty\@xp
+ {\@cdr#2\@nil}{\@addpunct{.}\@captionfont\upshape\enspace#2}%
+ \unskip\kern-2\captionindent\par
+ \global\setbox\@ne\lastbox\color@endgroup}%
+ \ifhbox\@ne % the normal case
+ \setbox\@ne\hbox{\unhbox\@ne\unskip\unskip\unpenalty\unkern}%
+ \fi
+ \ifdim\wd\@tempboxa=\z@ % this means caption will fit on one line
+ \setbox\@ne\hbox to\columnwidth{\hss\kern-2\captionindent\box\@ne\hss}%
+ \@tempdima\wd\@ne\advance\@tempdima-\captionindent
+ \wd\@ne\@tempdima
+ \else % tempboxa contained more than one line
+ \setbox\@ne\vbox{\rightskip=0pt plus\captionindent\relax
+ \unvbox\@tempboxa\parskip\z@skip
+ \noindent\unhbox\@ne\advance\hsize-2\captionindent\par}%
+ \fi
+ \ifnum\@tempcnta<64 % if the float IS a figure...
+ \addvspace\abovecaptionskip
+ \noindent\kern\captionindent\box\@ne
+ \else % if the float IS NOT a figure...
+ \noindent\kern\captionindent\box\@ne
+ \nobreak
+ \vskip\belowcaptionskip
+ \fi
+ \relax
+ }}
+% \end{macrocode}
+% \begin{macrocode}
+ \let\captionmargin\captionindent % set to 3pc by AMS class
+ \begingroup\edef\@tempa{\endgroup
+ \noexpand\caption@g@addto@list\noexpand\caption@sty@default
+ {margin=\the\captionmargin
+ \caption@ifundefined\smf@makecaption{}{,maxmargin=.1\linewidth}}}
+ \@tempa
+ \caption@g@addto@list\caption@sls@default{margin*=.5\captionmargin}
+ \DeclareCaptionLabelSeparator{default}{.\enspace}
+ \DeclareCaptionDefaultFont{font}{\@captionfont}
+ \DeclareCaptionDefaultFont{labelfont}{\@captionheadfont}
+ \DeclareCaptionDefaultFont{textfont}{\@captionfont\upshape}
+ \captionsetup[figure]{position=b}
+ \captionsetup[table]{position=t}
+% \end{macrocode}
+% \begin{macrocode}
+}
+% \end{macrocode}
+%
+% \subsubsection{The beamer class (Part one)}
+% \changes{v1.1}{2007/03/10}{beamer class support added}
+% \changes{v1.3}{2011/08/06}{beamer class support revised}
+%
+% \begin{macro}{\caption@ifbeamerclass}
+% \begin{macrocode}
+\providecommand*\caption@ifbeamerclass{%
+ \@ifclassloaded{beamer}\@firstofone\@gobble}
+\@onlypreamble\caption@ifbeamerclass
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+\caption@ifbeamerclass{%
+% \end{macrocode}
+% \begin{macrocode}
+ \caption@CheckCommand\beamer@makecaption{%
+ % beamerbaselocalstructure.sty,v 1.53 2007/01/28 20:48:21 tantau
+ \long\def\beamer@makecaption#1#2{%
+ \def\insertcaptionname{\csname#1name\endcsname}%
+ \def\insertcaptionnumber{\csname the#1\endcsname}%
+ \def\insertcaption{#2}%
+ \nobreak\vskip\abovecaptionskip\nobreak
+ \sbox\@tempboxa{\usebeamertemplate**{caption}}%
+ \ifdim \wd\@tempboxa >\hsize
+ \usebeamertemplate**{caption}\par
+ \else
+ \global \@minipagefalse
+ \hb@xt@\hsize{\hfil\box\@tempboxa\hfil}%
+ \fi
+ \nobreak\vskip\belowcaptionskip\nobreak}}
+% \end{macrocode}
+% \begin{macro}{\caption@ifbeamertemplate}
+% \begin{macrocode}
+\newcommand*\caption@ifbeamertemplate[1]{%
+ \begingroup
+ \let\beamer@@tmpl@caption@ORI\beamer@@tmpl@caption
+ \@nameuse{beamer@@tmpop@caption@#1}%
+ \ifx\beamer@@tmpl@caption@ORI\beamer@@tmpl@caption
+ \endgroup\expandafter\@firstoftwo
+ \else
+ \endgroup\expandafter\@secondoftwo
+ \fi}
+% \end{macrocode}
+% \end{macro}
+% \begin{macrocode}
+ \DeclareCaptionLabelFormat{default}{%
+ #1\caption@ifbeamertemplate{numbered}{~#2}{}}
+ \caption@declarelabelseparator
+ {\caption@ifbeamertemplate{caption name own line}\@gobble\@firstofone}
+ {default}
+ {\caption@ifbeamertemplate{caption name own line}{\\}{: }}
+ \DeclareCaptionDefaultFont{font}{%
+ \usebeamerfont*{caption}%
+ \usebeamercolor[fg]{caption}}
+ \DeclareCaptionDefaultFont{labelfont}{%
+ \usebeamercolor[fg]{caption name}%
+ \usebeamerfont*{caption name}}
+ \DeclareCaptionDefaultJustification{\raggedright}
+ \DeclareOption{beamerclass}{%
+ \renewcommand\caption@ifslc{%
+ \caption@ifbeamertemplate{caption name own line}\@secondoftwo\@firstoftwo}
+ % Since the beamer class do not offer a `list of figures' we switch this support off.
+ \captionsetup{list=0}}
+ \PassOptionsToPackage{beamerclass}{caption3}
+% \end{macrocode}
+%
+% If the \package{beamer} document class is used, we offer a beamer
+% template called `caption3' which can be used with option `beamer' or
+% |\setbeamertemplate{caption}[caption3]|.\par
+% (Note that this is of no use when the \package{caption} package is used, too.)
+% \begin{macrocode}
+ \defbeamertemplate{caption}{caption3}{%
+ \caption@make\insertcaptionname\insertcaptionnumber\insertcaption}
+% \end{macrocode}
+% \begin{macrocode}
+ \DeclareOption{beamer}{%
+ % \usebeamertemplate**{caption} will set font
+ \DeclareCaptionDefaultFont{font}{}%
+ \setbeamertemplate{caption}[caption3]}
+% \end{macrocode}
+% \begin{macrocode}
+%
+% \begin{macrocode]
+}
+% \end{macrocode}
+%
+% \subsubsection{The KOMA-Script classes}
+% \changes{v1.1}{2007/03/31}{\KOMAScript\ classes support added}
+%
+% \begin{macro}{\caption@ifkomaclass}
+% \begin{macrocode}
+\providecommand*\caption@ifkomaclass{%
+ \caption@ifundefined\scr@caption\@gobble\@firstofone}
+\@onlypreamble\caption@ifkomaclass
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+\caption@ifkomaclass{%
+% \end{macrocode}
+% \begin{macrocode}
+ \caption@CheckCommand\@makecaption{%
+ % scrartcl|scrreprt|scrbook [2007/03/07 v2.97a KOMA-Script document class]
+ \long\def\@makecaption#1#2{%
+ \if@captionabove
+ \vskip\belowcaptionskip
+ \else
+ \vskip\abovecaptionskip
+ \fi
+ \@@makecaption\@firstofone{#1}{#2}%
+ \if@captionabove
+ \vskip\abovecaptionskip
+ \else
+ \vskip\belowcaptionskip
+ \fi}}
+% \end{macrocode}
+% \begin{macrocode}
+ \DeclareCaptionFormat{default}[#1#2#3\par]{%
+ \ifdofullc@p
+ \caption@ifin@list\caption@lsepcrlist\caption@lsepname
+ {\caption@Error{%
+ The option `labelsep=\caption@lsepname' does not work\MessageBreak
+ with \noexpand\setcaphanging (which is set by default)}}%
+ {\caption@fmt@hang{#1}{#2}{#3}}%
+ \else
+ #1#2%
+ \ifdim\cap@indent<\z@
+ \par
+ \noindent\hspace*{-\cap@indent}%
+ \else\if@capbreak
+ \par
+ \fi\fi
+ #3\par
+ \fi}
+ \DeclareCaptionLabelSeparator{default}{\captionformat}
+ \DeclareCaptionDefaultFont{font}{\scr@fnt@caption}
+ \DeclareCaptionDefaultFont{labelfont}{\scr@fnt@captionlabel}
+% \end{macrocode}
+% \begin{macrocode}
+}
+% \end{macrocode}
+%
+% \subsubsection{The \NTG{} Dutch classes}
+% \changes{v1.1}{2007/04/06}{NTG classes support added}
+%
+% \begin{macro}{\caption@ifntgclass}
+% \begin{macrocode}
+\providecommand*\caption@ifntgclass{%
+ \caption@ifundefined\CaptionFonts\@gobble\@firstofone}
+\@onlypreamble\caption@ifntgclass
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+\caption@ifntgclass{%
+% \end{macrocode}
+% \begin{macrocode}
+ \caption@CheckCommand\@makecaption{%
+ % artikel|rapport|boek [2004/06/07 v2.1a NTG LaTeX document class]
+ \long\def\@makecaption#1#2{%
+ \vskip\abovecaptionskip
+ \sbox\@tempboxa{{\CaptionLabelFont#1:} \CaptionTextFont#2}%
+ \ifdim \wd\@tempboxa >\hsize
+ {\CaptionLabelFont#1:} \CaptionTextFont#2\par
+ \else
+ \global \@minipagefalse
+ \hb@xt@\hsize{\hfil\box\@tempboxa\hfil}%
+ \fi
+ \vskip\belowcaptionskip}}
+% \end{macrocode}
+% \begin{macrocode}
+ \DeclareCaptionDefaultFont{labelfont}{\CaptionLabelFont}
+ \DeclareCaptionDefaultFont{textfont}{\CaptionTextFont}
+% \end{macrocode}
+% \begin{macrocode}
+}
+% \end{macrocode}
+%
+% \subsubsection{The thesis class}
+% \changes{v1.2a}{2008/01/31}{thesis class support added}
+% \changes{v1.2e}{2009/11/15}{Bugfix 09-11-14: thesis class support revised}
+%
+% \begin{macro}{\caption@ifthesisclass}
+% \begin{macrocode}
+\providecommand*\caption@ifthesisclass{%
+ \caption@ifundefined\cph@font
+ {\@gobble}%
+ {\caption@ifundefined\cpb@font\@gobble\@firstofone}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+\caption@ifthesisclass{%
+% \end{macrocode}
+% \begin{macrocode}
+ \caption@CheckCommand\@makecaption{%
+ % thesis.cls 1996/25/01 1.0g LaTeX document class (wm).
+ \long\def\@makecaption#1#2{%
+ \vskip\abovecaptionskip
+ \setbox\@tempboxa\hbox{{\cph@font #1:} {\cpb@font #2}}%
+ \ifdim \wd\@tempboxa >\hsize
+ \@hangfrom{\cph@font #1: }{\cpb@font #2\par}%
+ \else
+ \hbox to\hsize{\hfil\box\@tempboxa\hfil}%
+ \fi
+ \vskip\belowcaptionskip}}
+% \end{macrocode}
+% \begin{macrocode}
+ \DeclareCaptionDefaultFormat{hang}
+ \DeclareCaptionDefaultFont{labelfont}{\cph@font}
+ \DeclareCaptionDefaultFont{textfont}{\cpb@font}
+% \end{macrocode}
+% \begin{macrocode}
+}
+% \end{macrocode}
+%
+% \subsubsection{The frenchb Babel option}
+% \changes{v1.1}{2006/05/14}{\package{frenchb} package support added}
+%
+% \begin{macrocode}
+\caption@ifundefined\FB@makecaption{}{%
+% \end{macrocode}
+% \begin{macrocode}
+ \caption@CheckCommand\@makecaption{%
+ % frenchb.ldf [2005/02/06 v1.6g French support from the babel system]
+ % frenchb.ldf [2007/10/05 v2.0e French support from the babel system]
+ \long\def\@makecaption#1#2{%
+ \vskip\abovecaptionskip
+ \sbox\@tempboxa{#1\CaptionSeparator #2}%
+ \ifdim \wd\@tempboxa >\hsize
+ #1\CaptionSeparator #2\par
+ \else
+ \global \@minipagefalse
+ \hb@xt@\hsize{\hfil\box\@tempboxa\hfil}%
+ \fi
+ \vskip\belowcaptionskip}}
+% \end{macrocode}
+% \begin{macrocode}
+ \ifx\@makecaption\STD@makecaption
+ \DeclareCaptionLabelSeparator{default}{\CaptionSeparator}
+ \def\caption@frenchb{% supress frenchb warning
+ \let\STD@makecaption\@makecaption
+ \let\FB@makecaption\@makecaption}
+ \else
+ \ifx\@makecaption\@undefined\else
+ \caption@InfoNoLine{%
+ The definition of \protect\@makecaption\space
+ has been changed,\MessageBreak
+ frenchb will NOT customize it}%
+ \fi
+ \fi
+% \end{macrocode}
+% \begin{macrocode}
+}
+% \end{macrocode}
+%
+% \subsubsection{The frenchle/pro package}
+% \changes{v1.1}{2006/05/14}{\package{frenchle/pro} package support added}
+%
+% \begin{macrocode}
+\caption@ifundefined\frenchTeXmods{}{%
+% \end{macrocode}
+% \begin{macrocode}
+ \caption@CheckCommand\@makecaption{%
+ % french(le).sty [2006/10/03 The french(le) package /V5,9991/]
+ % french(le).sty [2007/06/28 The french(le) package /V5,9994/]
+ \def\@makecaption#1#2{%
+ \ifFTY%
+ \def\@secondofmany##1##2\void{##2}%
+ \def\@tempa{\@secondofmany#2\void}%
+ \ifx\@tempa\empty%
+ \let\captionseparator\empty%
+ \fi%
+ \@mcORI{#1}{\relax\captionfont{#2}}%
+ \else
+ \@mcORI{#1}{#2}%
+ \fi}}%
+% \end{macrocode}
+% \begin{macrocode}
+ \caption@CheckCommand\@makecaption{%
+ % french(le).sty [2007/02/11 The french(le) package /V5,9993/]
+ \def\@makecaption#1#2{%
+ \ifFTY%
+ \def\@secondofmany##1##2\void{##2}%
+ \protected@edef\@tempa{\@secondofmany#2\void}%
+ \ifx\@tempa\empty%
+ \let\captionseparator\empty%
+ \fi%
+ \@mcORI{#1}{\relax\captionfont{#2}}%
+ \else
+ \@mcORI{#1}{#2}%
+ \fi}}%
+% \end{macrocode}
+% \begin{macrocode}
+ \DeclareCaptionDefaultFont{textfont}{\itshape}%
+ \DeclareCaptionLabelSeparator{default}{\captionseparator\space}%
+% \end{macrocode}
+% \begin{macrocode}
+}
+% \end{macrocode}
+%
+% \subsubsection{The hungarian and magyar Babel option}
+% \changes{v1.3}{2009/03/29}{\package{magyar} package support added}
+% \changes{v1.3a}{2011/08/12}{\package{magyar} package support revised}
+%
+% \begin{macrocode}
+\DeclareCaptionListFormat{subperiod}{#2.}
+% \end{macrocode}
+%
+% \begin{macrocode}
+\caption@ifundefined\hunnewlabel{}{%
+ \caption@CheckCommand\@makecaption{%
+ % magyar.ldf [2005/03/30 v1.4j Magyar support from the babel system]
+ \def\@makecaption#1#2{%
+ \vskip\abovecaptionskip
+ \sbox\@tempboxa{#1. #2}%
+ \ifdim \wd\@tempboxa >\hsize
+ {#1. #2\csname par\endcsname}
+ \else
+ \global \@minipagefalse
+ \hb@xt@\hsize{\hfil\box\@tempboxa\hfil}%
+ \fi
+ \vskip\belowcaptionskip}}}
+% \end{macrocode}
+%
+% \begin{macrocode}
+\def\caption@tempa#1{\@ifundefined{extras#1}{}{%
+ \expandafter\addto\csname extras#1\endcsname{%
+ % change default labelsep and listformat
+ \caption@setdefaultlabelsep{period}%
+ \caption@setdefaultlistformat{subperiod}}%
+ \expandafter\addto\csname noextras#1\endcsname{%
+ % change default labelsep and listformat
+ \caption@setdefaultlabelsep{colon}%
+ \caption@setdefaultlistformat{subsimple}}%
+% \end{macrocode}
+% \begin{macrocode}
+}}
+% \end{macrocode}
+% \begin{macrocode}
+\caption@tempa{hungarian}
+\caption@tempa{magyar}
+% \end{macrocode}
+%
+% \subsubsection{Unknown document class (or package)}
+% \changes{v1.1}{2007/04/10}{Check of document class added}
+%
+% \begin{macrocode}
+\caption@IfCheckCommand{%
+ \caption@setbool{documentclass}{1}%
+}{%
+ \caption@setbool{documentclass}{0}%
+ \caption@InfoNoLine{%
+ Unknown document class (or package),\MessageBreak
+ standard defaults will be used}%
+ \caption@Debug{\string\@makecaption\space=\space\meaning\@makecaption\@gobble}%
+}
+% \end{macrocode}
+%
+% \subsection{Execution of options}
+%
+% \begin{macrocode}
+\captionsetup{style=default,position=default,%
+ list,listformat=default,twoside=\if@twoside 1\else 0\fi}
+% \end{macrocode}
+% \begin{macrocode}
+\ProcessOptions*
+% \end{macrocode}
+%
+% \subsection{Making an `List of' entry}
+%
+% \begin{macro}{\caption@addcontentsline}
+% \changes{v1.1}{2007/07/01}{This macro added}
+% \changes{v1.3}{2010/10/26}{Error check added}
+% \changes{v1.3}{2011/06/24}{Split into two macros}
+% \changes{v1.4}{2011/08/19}{Split into three macros}
+% \changes{v1.4}{2011/08/30}{Support for option \opt{listtype=} added}
+% |\caption@addcontentsline|\marg{type}\marg{list entry}\par
+% Makes an entry in the list-of-whatever, if requested,
+% i.e.~the argument \meta{list entry} is not empty and
+% |listof=| was set to |true|.
+% \begin{macrocode}
+\newcommand\caption@addcontentsline[2]{%
+ \caption@ifcontentsline{#2}{%
+ \begingroup
+ \let\@tempa\@gobble
+ \caption@ifundefined\caption@listtype
+ {\edef\caption@listtype{#1}}%
+ {\let\@tempa\@firstofone}%
+ \caption@ifundefined\caption@listtype@ext
+ {}%
+ {\edef\caption@listtype{\caption@listtype\caption@listtype@ext}%
+ \let\@tempa\@firstofone}%
+ \@tempa
+ {\caption@Debug{addcontentsline: #1 => \caption@listtype}%
+% \caption@setoptions*\caption@listtype
+ \@namedef{the\caption@listtype}{\@nameuse{the#1}}}%
+ \expandafter\caption@@addcontentsline\expandafter{\caption@listtype}{#2}%
+ \endgroup}}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand\caption@@addcontentsline[2]{%
+ {\let\\\space
+ \@ifundefined{ext@#1}%
+ {\caption@Error{No float type '#1' defined}}%
+ {\caption@@@addcontentsline
+ {\csname ext@#1\endcsname}%
+ {#1}%
+ {\caption@lstfmt{\@nameuse{p@#1}}{\@nameuse{the#1}}}%
+ {\ignorespaces #2}}}}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@@@addcontentsline[4]{%
+ \addcontentsline{#1}{#2}{\protect\numberline{#3}{#4}}}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand\caption@ifcontentsline[1]{%
+ \caption@iflist
+ {\def\@tempa{#1}}%
+ {\let\@tempa\@empty}%
+ \ifx\@tempa\@empty
+ \expandafter\@gobble
+ \else
+ \expandafter\@firstofone
+ \fi}
+% \end{macrocode}
+% \end{macro}
+%
+% \subsection{Typesetting the caption}
+%
+% \begin{macro}{\ifcaption@star}
+% If the starred form of |\caption| is used, this will be set to |true|.
+% (It will be reset to |false| at the end of |\caption@@make|.)
+% \begin{macrocode}
+\newif\ifcaption@star
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@fnum}
+% \changes{v1.1}{2007/08/21}{This macro added}
+% |\caption@fnum|\marg{float type}\par
+% Typesets the caption label; as replacement for |\fnum@|\meta{float type}.
+% \begin{macrocode}
+\newcommand*\caption@fnum[1]{\caption@lfmt{\@nameuse{#1name}}{\@nameuse{the#1}}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@make}
+% |\caption@make|\marg{float name}\marg{ref.\ number}\marg{text}\par
+% Typesets the caption.
+% \begin{macrocode}
+\newcommand\caption@make[2]{\caption@@make{\caption@lfmt{#1}{#2}}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@@make}
+% \changes{v1.0b}{2004/05/16}{Bugfix 04-05-05: \cs{ifdim}\cs{captionindent=}\cs{z@} added}
+% \changes{v1.0c}{2005/02/12}{Bugfix 04-10-26: Use \cs{@tempdima} instead of
+% \cs{captionmargin} resp. \cs{captionwidth}; check for \cs{z@} added}
+% \changes{v1.0c}{2005/02/12}{Bugfix: \cs{hskip}\cs{captionmargin} to the end
+% of caption added}
+% \changes{v1.0c}{2005/02/12}{Bugfix: \cs{strut} moved from here to \cs{caption@@@make}}
+% \changes{v1.0c}{2005/02/12}{Single-line-check moved up so it can affect margins now}
+% \changes{v1.0c}{2005/02/09}{Improvement: \cs{caption@ifh} added}
+% \changes{v1.0c}{2005/02/09}{Bugfix: \cs{leavevmode} added}
+% \changes{v1.0f}{2005/08/24}{Uses \cs{sbox} instead of \cs{setbox} in single-line-check}
+% \changes{v1.0g}{2005/12/04}{Uses \cs{caption@slc} now}
+% \changes{v1.0g}{2006/01/11}{Bugfix: \cs{caption@calcmargin} inside
+% single-line-check replaced by \cs{relax}}
+% \changes{v1.0g}{2006/01/11}{Bugfix: \cs{caption@startbox} will always be
+% typeset in horizontal mode}
+% \changes{v1.0i}{2006/05/13}{Uses \cs{caption@parbox} instead of \cs{caption@start/endbox}}
+% \changes{v1.0j}{2007/01/04}{Oops, bugfix 04-05-05 got lost in v1.0h, re-added}
+% \changes{v1.0n}{2007/04/03}{Usage of \cs{caption@ifoddpage} added}
+% \changes{v1.1}{2007/07/29}{\cs{caption@calcmargin} moved below single-line-check}
+% \changes{v1.1e}{2007/10/28}{\cs{caption@stepcounter} added}
+% |\caption@@make|\marg{caption label}\marg{caption text}
+% \begin{macrocode}
+\newcommand\caption@@make[2]{%
+ \begingroup
+ \caption@stepcounter
+ \caption@beginhook
+% \end{macrocode}
+%
+% Check margin, if |\caption@minmargin| or |\caption@maxmargin| is set
+% \begin{macrocode}
+% TODO: Move this to \caption@calcmargin!?
+ \ifx\caption@maxmargin\@undefined \else
+ \ifdim\captionmargin>\caption@maxmargin\relax
+ \captionmargin\caption@maxmargin\relax
+ \fi
+ \fi
+ \ifx\caption@minmargin\@undefined \else
+ \ifdim\captionmargin<\caption@minmargin\relax
+ \captionmargin\caption@minmargin\relax
+ \fi
+ \fi
+% \end{macrocode}
+%
+% Special single-line treatment (option |singlelinecheck=|)
+% \begin{macrocode}
+ \caption@ifslc{\caption@slc{#1}{#2}\captionwidth\relax}{}%
+% \end{macrocode}
+%
+% Typeset the left margin (option |margin=|)
+% \begin{macrocode}
+ \caption@calcmargin
+ \@tempdima\captionmargin
+ \ifdim\captionmargin@=\z@ \else
+ \caption@ifoddpage{}{\advance\@tempdima\captionmargin@}%
+ \fi
+ \caption@ifh{\advance\@tempdima\caption@indent}%
+ \hspace\@tempdima
+% \end{macrocode}
+%
+% We actually use a |\vbox| of width |\captionwidth - \caption@indent|
+% to typeset the caption.
+% \Note{\cs{captionindent} is \emph{not} supported if the caption format
+% was defined with \cs{DeclareCaptionFormat*}.}
+% \begin{macrocode}
+ \@tempdima\captionwidth
+ \caption@ifh{\advance\@tempdima-\caption@indent}%
+ \caption@parbox\@tempdima{%
+% \end{macrocode}
+%
+% Typeset the indention (option |indention=|)\\
+% {\small Bugfix 04-05-05:
+% |\hskip-\caption@indent| replaced by |\ifdim\caption@indent=\z@|\ldots}
+% \begin{macrocode}
+ \caption@ifh{%
+ \ifdim\caption@indent=\z@
+ \leavevmode
+ \else
+ \hskip-\caption@indent
+ \fi}%
+% \end{macrocode}
+%
+% Typeset the caption itself and close the |\caption@parbox|
+% \begin{macrocode}
+ \caption@@@make{#1}{#2}}%
+% \end{macrocode}
+%
+% Typeset the right margin (option |margin=|)
+% \begin{macrocode}
+ \@tempdima\captionmargin
+ \ifdim\captionmargin@=\z@ \else
+ \caption@ifoddpage{\advance\@tempdima\captionmargin@}{}%
+ \fi
+ \hspace\@tempdima
+% \end{macrocode}
+%
+% \begin{macrocode}
+ \caption@endhook
+ \endgroup
+% \end{macrocode}
+%
+% \begin{macrocode}
+ \global\caption@starfalse}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@calcmargin}
+% \changes{v1.0f}{2005/10/24}{Internal: \cs{ifcaption@width} replaced by
+% \cs{ifdim}\cs{captionwidth=}\cs{z@}}
+% \changes{v1.0g}{2006/01/12}{Improvement: Takes care of list environment now}
+% \changes{v1.1}{2006/05/13}{Check of \cs{@listdepth} removed (not necessary anymore),
+% use \cs{linewidth} instead of \cs{hsize}}
+% |\caption@calcmargin|\par
+% Calculate |\captionmargin| \& |\captionwidth|, so both contain valid
+% values.
+% \begin{macrocode}
+\newcommand*\caption@calcmargin{%
+ \caption@calcmargin@hook
+ \ifdim\captionwidth=\z@
+ \captionwidth\linewidth
+ \advance\captionwidth by -2\captionmargin
+ \advance\captionwidth by -\captionmargin@
+ \else
+ \captionmargin\linewidth
+ \advance\captionmargin by -\captionwidth
+ \divide\captionmargin by 2
+ \captionmargin@\z@
+ \fi
+% \end{macrocode}
+% \begin{macrocode}
+ \caption@Debug{%
+ \string\hsize=\the\hsize,
+ \string\linewidth=\the\linewidth,\MessageBreak
+ \string\leftmargin=\the\leftmargin,
+ \string\rightmargin=\the\rightmargin,\MessageBreak
+ \string\margin=\the\captionmargin,
+ \string\margin@=\the\captionmargin@,
+ \string\width=\the\captionwidth}%
+% \end{macrocode}
+% \begin{macrocode}
+}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@slc}
+% \changes{v1.1}{2007/06/13}{\cs{let}\cs{caption@hj}\cs{relax} added}
+% \changes{v1.1}{2007/07/29}{\cs{caption@setup}\cs{caption@sls} added after \cs{begingroup}}
+% \changes{v1.1}{2007/07/29}{\cs{caption@calcmargin} added}
+% \changes{v1.1c}{2007/10/14}{Support of \cs{caption@slfmt} added}
+% \changes{v1.1d}{2007/10/23}{`SingleLine' renamed to `singleline' for consistency}
+% \changes{v1.3}{2010/09/04}{Split into \cs{caption@slc} and \cs{caption@@slc}}
+% |\caption@slc|\marg{label}\marg{text}\marg{width}\marg{extra code}\par
+% This one does the single-line-check.
+% \begin{macrocode}
+\newcommand\caption@slc[4]{%
+ \caption@@slc{#1}{#2}{#3}{\caption@singleline#4}{}}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand\caption@@slc[5]{%
+ \caption@Debug{Begin SLC}%
+ \begingroup
+ \caption@singleline
+ \let\caption@hj\@empty
+ \caption@calcmargin % calculate #3 if necessary
+ \caption@prepareslc
+ \sbox\@tempboxa{\caption@@@make{#1}{#2}}%
+ \ifdim\wd\@tempboxa>#3%
+ \endgroup
+ #5%
+ \else
+ \endgroup
+ #4%
+ \fi
+ \caption@Debug{End SLC}}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@singleline{%
+ \caption@xsetup\caption@opt@singleline
+ \let\caption@fmt\caption@slfmt}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@prepareslc}
+% \changes{v1.0b}{2004/05/16}{Bugfix: Redefinition of \cs{label} \& \cs{@footnotetext} added}
+% \changes{v1.0b}{2004/05/16}{Redefine \cs{stepcounter} instead of \cs{footnote(mark)}}
+% \changes{v1.0c}{2005/02/12}{\cs{let}\cs{caption@hj}\cs{relax} added}
+% \changes{v1.0f}{2005/07/09}{Support of \package{endnotes} package added}
+% \changes{v1.1}{2007/06/13}{\cs{let}\cs{caption@hj}\cs{relax} moved to \cs{caption@slc}}
+% \changes{v1.1}{2007/06/13}{Redefinition of \cs{(H@)refstepcounter} added}
+% \changes{v1.1}{2007/08/12}{Redefinition of \cs{label} improved}
+% \changes{v1.1c}{2007/10/06}{Definition of \cs{caption@l@stepcounter} added}
+% |\caption@prepareslc|\par
+% \changes{v1.3}{2011/07/07}{Bugfix 11-07-06: Redefinition of \cs{footnote} and \cs{footnotemark} added, redefinition of \cs{stepcounter} and \cs{refstepcounter} dropped}
+% \changes{v1.4a}{2011/10/21}{Redefinition of \cs{pagenote} from \textsf{memoir} document class added}
+% \changes{v1.4a}{2011/10/22}{Redefinition of \cs{footnote} revised}
+% Re-define anything which would disturb the single-line-check.
+% \begin{macrocode}
+\newcommand*\caption@prepareslc{%
+ \let\label\caption@gobble
+% \end{macrocode}
+% \begin{macrocode}
+ \let\caption@footnotemark@ORI\footnotemark
+ \def\footnote{\caption@withoptargs\caption@footnote}%
+ \def\footnotemark{\caption@withoptargs\caption@footnotemark}%
+ \let\@footnotetext\caption@gobble
+% \end{macrocode}
+% \begin{macrocode}
+ \let\@endnotetext\caption@gobble
+% \end{macrocode}
+% \begin{macrocode}
+ \let\pagenote\caption@gobble
+% \end{macrocode}
+% \begin{macrocode}
+}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand\caption@footnote[2]{%
+ \caption@footnotemark{#1}}
+\newcommand\caption@footnotemark[1]{%
+ \begingroup
+ \let\stepcounter\caption@l@stepcounter
+ \caption@footnotemark@ORI#1%
+ \endgroup}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@l@stepcounter[1]{%
+ \advance\csname c@#1\endcsname\@ne\relax}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@parbox}
+% \changes{v1.0i}{2006/05/13}{We define \cs{caption@parbox} instead of
+% \cs{caption@start/endbox}}
+% \changes{v1.0l}{2006/03/09}{Bugfix 07-03-09: \cs{caption@parbox} changed from
+% \cs{parbox-t} to \cs{parbox-b}}
+% \changes{v1.2}{2007/11/11}{Renamed from \cs{captionbox} to \cs{caption@parbox}}
+% |\caption@parbox|\marg{width}\marg{contents}\par
+% This macro defines the box which surrounds the caption paragraph.
+% \begin{macrocode}
+\newcommand*\caption@parbox{\parbox[b]}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@applyfont}
+% \changes{v1.3}{2010/09/04}{This macro added}
+% |\caption@applyfont|\par
+% This macro executes the font relevant macros, i.e. by default
+% the options set by |justification=|, |font=|, and |size=|.
+% \begin{macrocode}
+\newcommand*\caption@applyfont{%
+ \caption@hj\captionfont\captionsize}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@@@make}
+% \changes{v1.0b}{2004/05/16}{Bugfix 04-05-06: \cs{allowhyphens} added}
+% \changes{v1.0c}{2005/02/12}{Bugfix 04-12-16: Use some kind of
+% \cs{@startstrut}\cs{strutbox} instead of \cs{strut}}
+% \changes{v1.0c}{2005/02/12}{Bugfix 05-01-23: \cs{@finalstrut}\cs{strutbox} added}
+% \changes{v1.0d}{2005/05/05}{Use \cs{caption@ifempty};
+% \cs{let}\cs{caption@ifstrut}\cs{@secondoftwo} added}
+% \changes{v1.0d}{2005/05/05}{Bugfix: Handling of \cs{ifcaption@star} changed}
+% \changes{v1.0f}{2005/08/24}{Check for empty label added}
+% \changes{v1.0f}{2005/08/25}{\cs{caption@iflf} added}
+% \changes{v1.0j}{2007/02/18}{Usage of \cs{caption@tfmt} added}
+% \changes{v1.1}{2007/05/07}{Bugfix: \cs{ifhmode} added to \cs{@finalstrut}}
+% \changes{v1.2}{2007/11/17}{Made option \opt{size=} stronger than \opt{font=}}
+% \changes{v1.3}{2010/09/04}{Uses \cs{caption@applyfont} now}
+% \changes{v1.3}{2010/11/01}{Bugfix: If the caption text is empty, the text format will be set to \opt{simple} now}
+% |\caption@@@make|\marg{caption label}\marg{caption text}\par
+% This one finally typesets the caption paragraph, without margin and indention.
+% \begin{macrocode}
+\newcommand\caption@@@make[2]{%
+% \end{macrocode}
+%
+% If the label is empty, we use no caption label separator.
+% \begin{macrocode}
+ \sbox\@tempboxa{#1}%
+ \ifdim\wd\@tempboxa=\z@
+ \let\caption@lsep\relax
+% \@capbreakfalse
+ \fi
+% \end{macrocode}
+%
+% If the text is empty, we use no caption label separator, too.
+% (And no text format either.)
+% \begin{macrocode}
+ \caption@ifempty{#2}{%
+ \let\caption@lsep\@empty
+ \let\caption@tfmt\@firstofone
+% \@capbreakfalse
+% \let\caption@ifstrut\@secondoftwo
+ }%
+% \end{macrocode}
+%
+% Take care that |\caption@parindent| and |\caption@hangindent| will be used
+% to typeset the paragraph.
+% \begin{macrocode}
+ \@setpar{\@@par\caption@@par}\caption@@par
+% \end{macrocode}
+%
+% Finally typeset the caption.
+% \begin{macrocode}
+ \caption@applyfont
+ \caption@fmt
+ {\ifcaption@star\else{\captionlabelfont#1}\fi}%
+ {\ifcaption@star\else{\caption@iflf\captionlabelfont\caption@lsep}\fi}%
+ {{\captiontextfont
+ \caption@ifstrut{\vrule\@height\ht\strutbox\@width\z@}{}%
+ \nobreak\hskip\z@skip % enable hyphenation
+ \caption@tfmt{#2}%
+% \caption@ifstrut{\vrule\@height\z@\@depth\dp\strutbox\@width\z@}{}%
+ \caption@ifstrut{\ifhmode\@finalstrut\strutbox\fi}{}%
+ \par}}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@ifempty}
+% \changes{v1.0d}{2005/05/05}{This macro added}
+% \changes{v1.1}{2007/07/04}{Re-defines itself now}
+% \changes{v1.2a}{2007/01/22}{Revised so \cs{label} will be detected, too}
+% \changes{v1.2b}{2008/08/02}{Revised so \cs{index} and \cs{glossary} will be detected, too}
+% |\caption@ifempty|\marg{text}\marg{true} (\emph{no} \meta{false})\par
+% This one tests if the \meta{text} is actually empty.
+% \Note{This will be done without expanding the text,
+% therefore this is far away from being bullet-proof.}
+% \Note{This macro is re-defining itself so only
+% the first test (in a group) will actually be done.}
+% \begin{macrocode}
+\newcommand\caption@ifempty[1]{%
+ \caption@if@empty{#1}%
+ \caption@ifempty\@unused}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand\caption@if@empty[1]{%
+ \def\caption@tempa{#1}%
+ \ifx\caption@tempa\@empty
+ \let\caption@ifempty\@secondoftwo
+ \else
+ \expandafter\def\expandafter\caption@tempa\expandafter{%
+ \caption@car#1\caption@if@empty\caption@nil}%
+ \def\caption@tempb{\caption@if@empty}%
+ \ifx\caption@tempa\caption@tempb
+ \let\caption@ifempty\@secondoftwo
+ \else
+ \def\caption@tempb{\ignorespaces}%
+ \ifx\caption@tempa\caption@tempb
+ \expandafter\caption@if@empty\expandafter{\@gobble#1}%
+ \else
+ \def\caption@tempb{\label}%
+ \ifx\caption@tempa\caption@tempb
+ \expandafter\caption@if@empty\expandafter{\@gobbletwo#1}%
+ \else
+ \def\caption@tempb{\index}%
+ \ifx\caption@tempa\caption@tempb
+ \expandafter\caption@if@empty\expandafter{\@gobbletwo#1}%
+ \else
+ \def\caption@tempb{\glossary}%
+ \ifx\caption@tempa\caption@tempb
+ \expandafter\caption@if@empty\expandafter{\@gobbletwo#1}%
+ \else
+ \let\caption@ifempty\@gobbletwo
+ \fi
+ \fi
+ \fi
+ \fi
+ \fi
+ \fi}
+% \end{macrocode}
+% \begin{macrocode}
+\long\def\caption@car#1#2\caption@nil{#1}% same as \@car, but \long
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@@par}
+% \changes{v1.0f}{2005/08/22}{Made this definition global}
+% |\caption@@par|\par
+% This command will be executed with every |\par| inside the caption.
+% \begin{macrocode}
+\newcommand*\caption@@par{%
+ \parindent\caption@parindent\hangindent\caption@hangindent}%
+% \end{macrocode}
+% \end{macro}
+%
+% \subsection{Types \& sub-types}
+%
+% \begin{macro}{\DeclareCaptionType}
+% \changes{v1.1}{2007/08/12}{This macro added}
+% \changes{v1.1a}{2007/09/07}{Three optional arguments added}
+% \changes{v1.2}{2007/12/06}{Renamed from \cs{DeclareFloatingEnvironment} to \cs{DeclareCaptionType}}
+% \changes{v1.2}{2007/12/21}{Optional argument revised, uses key-value syntax now}
+% \changes{v1.2b}{2008/04/13}{Uses \cs{caption@within@default} now}
+% \changes{v1.2b}{2008/08/02}{Support of \cs{float@exts} and \cs{float@addtolists} added}
+% \changes{v1.2e}{2010/01/09}{Usage of \cs{caption@DeclareWithinOption} added}
+% \changes{v1.3}{2011/08/06}{Definition of \cs{listofXXXes} added}
+% \changes{v1.4a}{2011/10/29}{Outsourced as \package{newfloat} package}
+% |\DeclareCaptionType|\oarg{options}\marg{environment}\oarg{name}\oarg{list name}
+% \begin{macrocode}
+\newcommand*\DeclareCaptionType{%
+ \RequirePackage{newfloat}%
+ \DeclareFloatingEnvironment}
+\@onlypreamble\DeclareCaptionType
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@ForEachType}
+% \changes{v1.4a}{2011/10/29}{This macro added}
+% |\caption@ForEachType|\marg{code}
+% will execute the given code for all (known) floating environments.
+% \begin{macrocode}
+\newcommand\caption@ForEachType[1]{%
+ \caption@ifundefined\ForEachFloatingEnvironment
+ {\def\@elt##1{#1}%
+ \caption@ifundefined\c@figure\@gobble\@elt{figure}%
+ \caption@ifundefined\c@table\@gobble\@elt{table}%
+ \let\@elt\relax
+ \newfloat@addtohook{#1}}%
+ {\ForEachFloatingEnvironment{#1}}}
+% \end{macrocode}
+% \begin{macrocode}
+\providecommand\newfloat@addtohook[1]{%
+ \toks@=\expandafter{\newfloat@hook{##1}#1}%
+ \edef\@tempa{\def\noexpand\newfloat@hook####1{\the\toks@}}%
+ \@tempa}
+% \end{macrocode}
+% \begin{macrocode}
+\providecommand*\newfloat@hook[1]{}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\@stpelt}
+% We patch \cs{@stpelt} so a list of `connected' counters will be reset, too.
+% (Like \cs{stepcounter} does in |ltcounts.dtx|.)
+% \begin{macrocode}
+\newcommand*\caption@patch@stpelt{%
+ \let\caption@stpelt\@stpelt
+ \def\@stpelt##1{%
+ \caption@stpelt{##1}%
+ \begingroup
+ \let\@elt\caption@stpelt
+ \csname caption@cl@##1\endcsname
+ \endgroup}%
+ \let\caption@patch@stpelt\relax}
+\@onlypreamble\caption@patch@stpelt
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@addtoreset}
+% \changes{v1.2d}{2009/10/09}{This macro added}
+% Like \cs{@addtoreset} from |ltcounts.dtx|
+% \begin{macrocode}
+\newcommand*\caption@addtoreset[2]{%
+ \caption@patch@stpelt
+ \@ifundefined{caption@cl@#2}{\@namedef{caption@cl@#2}{}}{}%
+ \expandafter\@cons\csname caption@cl@#2\endcsname{{#1}}}
+\@onlypreamble\caption@addtoreset
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@removefromreset}
+% \changes{v1.2d}{2009/10/09}{This macro added}
+% Like \cs{@removefromreset} from |remreset.sty|
+% \begin{macrocode}
+\newcommand*\caption@removefromreset[2]{%
+ \begingroup
+ \expandafter\let\csname c@#1\endcsname\caption@removefromreset
+ \def\@elt##1{%
+ \expandafter\ifx\csname c@##1\endcsname\caption@removefromreset
+ \else
+ \noexpand\@elt{##1}%
+ \fi}%
+ \expandafter\xdef\csname caption@cl@#2\endcsname{%
+ \csname caption@cl@#2\endcsname}%
+ \endgroup}
+\@onlypreamble\caption@removefromreset
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\DeclareCaptionSubType}
+% \changes{v1.2}{2007/11/16}{This macro added}
+% \changes{v1.2a}{2008/03/11}{Bugfix: \cs{subfigurename} will be defined now}
+% \changes{v1.2d}{2009/10/09}{Bugfix 08-10-01: Usage of \cs{caption@addtoreset} added}
+% \changes{v1.3}{2011/01/01}{\cs{@dottedlofline} will be defined \& used now}
+% \changes{v1.4}{2011/10/09}{Support of the titletoc package added}
+% |\DeclareCaptionSubType|\oarg{numbering scheme}\marg{type}\\
+% |\DeclareCaptionSubType*|\oarg{numbering scheme}\marg{type}\par
+% The starred variant provides the numbering format
+% \meta{type}|.|\meta{subtype} while the non-starred variant simply
+% uses \meta{subtype}.
+% \begin{macrocode}
+\newcommand*\DeclareCaptionSubType{%
+ \caption@teststar\caption@declaresubtype\@firstoftwo\@secondoftwo}
+\@onlypreamble\DeclareCaptionSubType
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@declaresubtype[1]{%
+ \@testopt{\caption@@declaresubtype{#1}}{alph}}
+\@onlypreamble\caption@declaresubtype
+% \end{macrocode}
+% \begin{macrocode}
+\def\caption@@declaresubtype#1[#2]#3{%
+ \@ifundefined{c@#3}%
+ {\caption@Error{No float type '#3' defined}}%
+% \end{macrocode}
+% \begin{macrocode}
+ {\@ifundefined{c@sub#3}%
+ {\caption@Debug{New subtype `sub#3'}%
+ \newcounter{sub#3}%
+ \caption@addtoreset{sub#3}{#3}%
+ \@namedef{ext@sub#3}{\csname ext@#3\endcsname}%
+ \caption@declaresublistentry{#3}%
+ \@cons\caption@subtypelist{{#3}}}%
+ {\caption@Debug{Modify caption `sub#3'}}%
+% \end{macrocode}
+% Support of \package{titletoc} package
+% \begin{macrocode}
+ \caption@ifundefined\contentsuse{}{%
+ \contentsuse{sub#3}{\csname ext@sub#3\endcsname}}%
+% \end{macrocode}
+% \begin{macrocode}
+ \@namedef{sub#3name}{}%
+ \@namedef{sub#3autorefname}{\csname #3name\endcsname}%
+ #1% is \@firstoftwo in star form, and \@secondoftwo otherwise
+ {\@namedef{p@sub#3}{}%
+ \@namedef{thesub#3}{\csname the#3\endcsname.\@nameuse{#2}{sub#3}}}%
+ {\@namedef{p@sub#3}{\csname the#3\endcsname}%
+ \@namedef{thesub#3}{\@nameuse{#2}{sub#3}}}%
+ \@namedef{theHsub#3}{\csname theH#3\endcsname.\arabic{sub#3}}%
+ }}
+% \end{macrocode}
+% \begin{macrocode}
+\@onlypreamble\caption@@declaresubtype
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@declaresublistentry{%
+ \caption@ifundefined\l@chapter
+ {\caption@@declaresublistentry\l@subsubsection}%
+ {\caption@@declaresublistentry\l@subsection}}
+\@onlypreamble\caption@declaresublistentry
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@@declaresublistentry[2]{%
+ \ifx#1\@undefined
+ \caption@@@declaresublistentry\relax\@dottedtocline\caption@nil{#2}%
+ \else
+ \expandafter\caption@@@declaresublistentry#1{}{}\@dottedtocline\caption@nil{#2}%
+ \fi}
+\@onlypreamble\caption@@declaresublistentry
+% \end{macrocode}
+% \begin{macrocode}
+\long\def\caption@@@declaresublistentry#1\@dottedtocline#2\caption@nil#3{%
+ \def\@tempa{#1}%
+% Does \l@(sub)subsection start with \@dottedtocline?
+ \ifx\@tempa\@empty
+% Yes
+ \caption@@@@declaresublistentry{#3}#2\caption@nil
+ \else
+% No
+ \caption@@@@declaresublistentry{#3}@{3.8em}{3.2em}\caption@nil
+ \fi}
+\@onlypreamble\caption@@@declaresublistentry
+% \end{macrocode}
+% \begin{macrocode}
+\def\caption@@@@declaresublistentry#1#2#3#4#5\caption@nil{%
+ \expandafter\caption@@@@@declaresublistentry\expandafter
+ {\csname @dotted\csname ext@#1\endcsname line\endcsname}{#1}{#3}{#4}}
+\@onlypreamble\caption@@@@declaresublistentry
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@@@@@declaresublistentry[4]{%
+ \@namedef{l@sub#2}{#1{2}{#3}{#4}}%
+ \caption@@@@@@declaresublistentry#1{c@\csname ext@#2\endcsname depth}}
+\@onlypreamble\caption@@@@@declaresublistentry
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@@@@@@declaresublistentry[2]{
+ \ifx#1\relax
+ \def#1##1{%
+ \def\next{\@dottedtocline{##1}}%
+ \@ifundefined{#2}{}{%
+ \ifnum ##1>\@nameuse{#2}\relax
+ \let\next\@gobblefour
+ \fi}%
+ \next}%
+ \fi}
+\@onlypreamble\caption@@@@@@declaresublistentry
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@subtypelist}
+% An \cs{@elt}-list containing the subtypes defined
+% with |\Declare|\x|Caption|\x|Sub|\x|Type|.
+% \begin{macrocode}
+\newcommand*\caption@subtypelist{}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@For}
+% \changes{v1.1a}{2007/09/07}{This macro added}
+% \changes{v1.2}{2007/11/16}{Renamed from \cs{ForFloatingEnvironments} to \cs{caption@For}}
+% |\caption@For|\marg{elt-list}\marg{code with \#1}\\
+% |\caption@For*|\marg{elt-list}\marg{code with \#1}
+% \begin{macrocode}
+\newcommand*\caption@For{\caption@withoptargs\caption@@For}
+%\@onlypreamble\caption@For
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand\caption@@For[3]{%
+ \caption@AtBeginDocument#1{%
+ \def\@elt##1{#3}%
+ \@nameuse{caption@#2}%
+ \let\@elt\relax}}%
+%\@onlypreamble\caption@@For
+% \end{macrocode}
+% \end{macro}
+%
+% \subsection{subfig package adaptions}
+% \changes{v1.1}{2007/07/07}{Several adaptions to the \package{subfig} package added}
+% \changes{v1.4a}{2011/11/01}{Bugfix 11-11-01: Test for the subfig package revised}
+%
+% Since the \package{subfig} package is not maintained anymore,
+% we have to make several adaptions to \thispackage~\version{1.1} here.
+% Please note that we only support the version $1.3$ of the \package{subfig} package here.
+% So older versions do not work with this version of \thispackage, and newer
+% versions are expected to be adapted.
+% \begin{macrocode}
+\caption@AtBeginDocument{%
+ \def\@tempa{2005/06/28 ver: 1.3 subfig package}%
+ \expandafter\ifx\csname ver@subfig.sty\endcsname\@tempa
+ \caption@InfoNoLine{subfig package v1.3 is loaded}%
+% \end{macrocode}
+% \begin{macrocode}
+ \let\caption@setfloattype\@gobble
+ \let\@dottedxxxline\sf@NEW@dottedxxxline
+ \let\sf@subfloat\sf@NEW@subfloat
+% \end{macrocode}
+% \begin{macrocode}
+ \fi
+ \let\sf@NEW@dottedxxxline\@undefined
+ \let\sf@NEW@subfloat\@undefined}
+% \end{macrocode}
+% \begin{macrocode}
+\def\sf@NEW@dottedxxxline#1#2#3#4#5#6#7{%
+ \begingroup
+ \caption@setfloattype{#1}%
+ \caption@setoptions{subfloat}%
+ \caption@setoptions{sub#1}%
+ \ifnum #3>\@nameuse{c@#2depth}\else
+ \@dottedtocline{\z@}{#4}{#5}{#6}{#7}%
+ \fi
+ \endgroup}
+% \end{macrocode}
+% \begin{macrocode}
+\def\sf@NEW@subfloat{%
+ \begingroup
+ \caption@setfloattype\@captype
+ \sf@ifpositiontop{%
+ \maincaptiontoptrue
+ }{%
+ \maincaptiontopfalse
+ }%
+ \caption@setoptions{subfloat}%
+ \caption@setoptions{sub\@captype}%
+ \let\sf@oldlabel=\label
+ \let\label=\subfloat@label
+ \ifmaincaptiontop\else
+ \advance\@nameuse{c@\@captype}\@ne
+ \fi
+ \refstepcounter{sub\@captype}%
+ \setcounter{sub\@captype @save}{\value{sub\@captype}}%
+ \@ifnextchar [% %] match left bracket
+ {\sf@@subfloat}%
+ {\sf@@subfloat[\@empty]}}
+% \end{macrocode}
+%
+% \iffalse
+%</package>
+% \fi
+%
+% \clearpage
+% \begin{thebibliography}{99}
+% \bibitem{Anne}
+% Anne Br\"uggemann-Klein:\\
+% \emph{Einf\"uhrung in die Dokumentverarbeitung},\\
+% B.G. Teubner, Stuttgart, 1989
+%
+% \bibitem{hyperref}
+% Sebastian Rahtz \& Heiko Oberdiek:\\
+% \href{http://tug.ctan.org/tex-archive/macros/latex/contrib/hyperref/}%
+% {\emph{Hypertext marks in \LaTeX}},\\
+% November 12, 2007
+%
+% \bibitem{refcount}
+% Heiko Oberdiek:\\
+% \href{ftp://ctan.tug.org/tex-archive/macros/latex/contrib/oberdiek/refcount.pdf}%
+% {\emph{The refcount package}},\\
+% 2006/02/20
+%
+% \bibitem{threeparttable}
+% Donald Arseneau:\\
+% \href{http://tug.ctan.org/tex-archive/macros/latex/contrib/misc/}%
+% {\emph{Three part tables: title, tabular environment, notes}},\\
+% 2003/06/13
+% \end{thebibliography}
+%
+% \iffalse
+% --------------------------------------------------------------------------- %
+% \fi
+%
+% \clearpage
+% \Finale
+%
+\endinput
diff --git a/macros/latex/contrib/caption/fallback/v3.3/caption.dtx b/macros/latex/contrib/caption/fallback/v3.3/caption.dtx
new file mode 100644
index 0000000000..721ca9c371
--- /dev/null
+++ b/macros/latex/contrib/caption/fallback/v3.3/caption.dtx
@@ -0,0 +1,4968 @@
+% \iffalse meta-comment
+%
+% This is file `caption.dtx'.
+%
+% Copyright (C) 1994-2019 Axel Sommerfeldt (axel.sommerfeldt@f-m.fm)
+%
+% --------------------------------------------------------------------------
+%
+% This work may be distributed and/or modified under the
+% conditions of the LaTeX Project Public License, either version 1.3
+% of this license or (at your option) any later version.
+% The latest version of this license is in
+% http://www.latex-project.org/lppl.txt
+% and version 1.3 or later is part of all distributions of LaTeX
+% version 2003/12/01 or later.
+%
+% This work has the LPPL maintenance status "maintained".
+%
+% This Current Maintainer of this work is Axel Sommerfeldt.
+%
+% This work consists of the files caption.ins, caption.dtx, caption2.dtx,
+% caption3.dtx, bicaption.dtx, ltcaption.dtx, subcaption.dtx, and newfloat.dtx,
+% the derived files caption.sty, caption2.sty, caption3.sty,
+% bicaption.sty, ltcaption.sty, subcaption.sty, and newfloat.sty,
+% and the user manuals caption-deu.tex, caption-eng.tex, and caption-rus.tex.
+%
+% \fi
+% \CheckSum{3694}
+%
+% \iffalse
+%<*driver>
+\NeedsTeXFormat{LaTeX2e}[1994/12/01]
+\ProvidesFile{caption.drv}[2011/08/06 v3.3 Implementation of the caption package]
+\hbadness=9999 \newcount\hbadness \hfuzz=100pt % Make TeX shut up.
+%\errorcontextlines=3
+%
+\documentclass{ltxdoc}
+\setlength\parindent{0pt}
+\setlength\parskip{\smallskipamount}
+%
+\makeatletter % make room for subsections like 2.16.14 in the TOC
+%\newcommand*\l@subsection{\@dottedtocline{2}{1.5em}{2.3em}}
+\renewcommand*\l@subsection{\@dottedtocline{2}{1.5em}{2.7em}}
+\makeatother
+%
+\usepackage{ifpdf}
+\ifpdf
+ \usepackage{mathptmx,courier}
+ \usepackage[scaled=0.90]{helvet}
+ \addtolength\marginparwidth{15pt}
+\fi
+%
+\usepackage{hypdoc}
+\ifpdf\usepackage{hypdestopt}\fi
+\hypersetup{pdfkeywords={LaTeX, package, caption},pdfstartpage={},pdfstartview={}}
+%
+\usepackage[debug]{caption}[2013/01/01]
+%
+\DeclareRobustCommand*\eTeX{\texorpdfstring
+ {\leavevmode\hbox{$\varepsilon$}-\TeX}%
+ {e-TeX}}
+\DeclareRobustCommand*\AmS{\texorpdfstring
+ {{\protect\usefont{OMS}{cmsy}{m}{n}A\kern-.1667em\lower.5ex\hbox{M}\kern-.125emS}}%
+ {AMS}}
+\DeclareRobustCommand*\KOMAScript{\texorpdfstring
+ {\textsf{K\kern.05em O\kern.05em M\kern.05em A\kern.1em-\kern.1em Script}}%
+ {KOMA-Script}}
+\DeclareRobustCommand*\NTG{NTG}
+\DeclareRobustCommand*\SmF{SMF}
+%
+\begin{document}
+ \DocInput{caption.dtx}
+\end{document}
+%</driver>
+% \fi
+%
+% \newcommand*\purerm[1]{\texorpdfstring{{\upshape\mdseries\rmfamily #1}}{#1}}
+% \newcommand*\puresf[1]{\texorpdfstring{{\upshape\mdseries\sffamily #1}}{#1}}
+% \newcommand*\purett[1]{\texorpdfstring{{\upshape\mdseries\ttfamily #1}}{#1}}
+% \let\class\puresf \let\package\puresf
+% \let\env\purett \let\opt\purett
+%
+% \def\thispackage{the \package{caption} package}
+% \def\Thispackage{The \package{caption} package}
+%
+% \newcommand*\csmarg[1]{\texttt{\char`\{#1\char`\}}}
+% \newcommand*\csoarg[1]{\texttt{\char`\[#1\char`\]}}
+% \newcommand*\version[2][]{\textit{v#2}}
+%
+% \newcommand*\issue[1]{GitLab~\##1}
+%
+% \GetFileInfo{caption.drv}
+% \let\docdate\filedate
+% \GetFileInfo{caption.sty}
+%
+% \title{The Implementation of
+% \texorpdfstring{\thispackage\thanks{%^^A
+% This package has version number \fileversion, last revised \filedate.}}%^^A
+% {the caption package}}
+% \author{Axel Sommerfeldt\\
+% \url{https://gitlab.com/axelsommerfeldt/caption}}
+% \date{\docdate}
+% \maketitle
+%
+% \begin{abstract}
+% \Thispackage\ consists of two parts -- the kernel
+% (|caption3.sty|) and the main package (|caption.sty|).
+%
+% \Thispackage\ redefines the \LaTeX\ commands
+% |\caption|, |\@caption|, and |\@makecaption| and maps the latter one to
+% |\caption@@make|, giving the user the possibility to control the look \& feel
+% of the captions from floating environments like |figure| and |table|.
+% Furthermore it does similar to the caption stuff coming from other packages
+% (like the \package{longtable} or \package{supertabular} package):
+% Mapping the appropriate internal commands (like |\LT@makecaption| or
+% |\ST@caption|) to the ones offered by the \package{caption3} kernel.
+% So you can think of \thispackage\ as a layer package, it
+% simply provides adaptation layers between the caption stuff coming from
+% \LaTeXe\ or packages, and the caption stuff offered by the
+% \package{caption3} kernel.
+% \end{abstract}
+%
+% \section*{User manuals}
+%
+% This document is describing the code implementation only. The user
+% documentation can be found in
+% \nopagebreak\begin{quote}
+% \begin{tabular}{ll}
+% \href{http://mirror.ctan.org/macros/latex/contrib/caption/caption-eng.pdf}%
+% {\texttt{caption-eng.pdf}} & The English documentation \\
+% \href{http://mirror.ctan.org/macros/latex/contrib/caption/caption-rus.pdf}%
+% {\texttt{caption-rus.pdf}} & The Russian documentation\footnotemark \\
+% \href{http://mirror.ctan.org/macros/latex/contrib/caption/caption-deu.pdf}%
+% {\texttt{caption-deu.pdf}} & The German documentation \\
+% \end{tabular}
+% \footnotetext{Thanks a lot to Olga Lapko for this translation}
+% \end{quote}
+%
+% \StopEventually{}
+% \clearpage
+% \tableofcontents
+%
+% \iffalse
+% --------------------------------------------------------------------------- %
+% \fi
+%
+% \DoNotIndex{\\,\_,\ ,\@@par}
+% \DoNotIndex{\@bsphack}
+% \DoNotIndex{\@car,\@cdr,\@classoptionslist,\@cons,\@currext,\@currname}
+% \DoNotIndex{\@ehc,\@ehd,\@empty,\@esphack,\@expandtwoargs}
+% \DoNotIndex{\@for,\@firstofone,\@firstoftwo}
+% \DoNotIndex{\@gobble,\@gobblefour,\@gobbletwo,\@hangfrom}
+% \DoNotIndex{\if@minipage\@ifnextchar,\@ifpackagelater,\@ifpackageloaded}
+% \DoNotIndex{\@ifstar,\@ifundefined,\@latex@error,\@minipagefalse,\@minipagetrue}
+% \DoNotIndex{\@namedef,\@nameuse}
+% \DoNotIndex{\@onlypreamble,\@parboxrestore,\@plus,\@ptionlist}
+% \DoNotIndex{\@removeelement,\@restorepar,\@secondoftwo,\@setminipage,\@setpar}
+% \DoNotIndex{\@tempa,\@tempboxa,\@tempdima,\@tempdimb,\@tempdimc,\@tempb,\@tempc}
+% \DoNotIndex{\@testopt}
+% \DoNotIndex{\@undefined,\@unprocessedoptions,\@unusedoptionlist}
+% \DoNotIndex{\p@,\z@}
+% \DoNotIndex{\active,\addtocounter,\addtolength,\advance,\aftergroup}
+% \DoNotIndex{\baselineskip,\begin,\begingroup,\bfseries,\box}
+% \DoNotIndex{\catcode,\centering,\changes,\csname,\def,\divide,\do,\downarrow}
+% \DoNotIndex{\edef,\else,\empty,\end,\endcsname,\endgraf,\endgroup,\expandafter}
+% \DoNotIndex{\fi,\footnotesize,\global}
+% \DoNotIndex{\hangindent,\hbox,\hfil,\hsize,\hskip,\hspace,\hss}
+% \DoNotIndex{\ifcase,\ifdim,\ifnum,\ifodd,\ifvoid,\ifvmode}
+% \DoNotIndex{\ifx,\ignorespaces,\itshape}
+% \DoNotIndex{\Large,\large,\leavevmode,\leftmargini,\leftskip,\let,\linewidth}
+% \DoNotIndex{\llap,\long,\m@ne,\margin,\mdseries,\message}
+% \DoNotIndex{\newcommand,\newdimen,\newlength,\newline,\newif,\newsavebox}
+% \DoNotIndex{\next,\nobreak,\nobreakspace,\noexpand,\noindent,\numberline}
+% \DoNotIndex{\normalcolor,\normalfont,\normalsize,\or,\par,\parbox,\parfillskip}
+% \DoNotIndex{\parindent,\parskip,\prevdepth,\protect,\protected@edef,\protected@write}
+% \DoNotIndex{\providecommand,\quad}
+% \DoNotIndex{\raggedleft,\raggedright,\relax,\renewcommand,\RequirePackage}
+% \DoNotIndex{\rightskip,\rmfamily}
+% \DoNotIndex{\sbox,\scriptsize,\scshape,\setbox,\setlength,\sffamily,\slshape}
+% \DoNotIndex{\small,\string,\space,\strut}
+% \DoNotIndex{\textheight,\the,\toks@,\typeout,\ttfamily}
+% \DoNotIndex{\unvbox,\uparrow,\upshape,\usebox,\usepackage}
+% \DoNotIndex{\value,\vbox,\vsize,\vskip,\wd,\width,\z@skip}
+% \DoNotIndex{\AtBeginDocument,\AtEndOfPackage,\CurrentOption,\DeclareOption}
+% \DoNotIndex{\ExecuteOptions,\GenericWarning,\IfFileExists,\InputIfFileExists}
+% \DoNotIndex{\NeedsTeXFormat,\MessageBreak}
+% \DoNotIndex{\PackageError,\PackageInfo,\PackageWarning,\PackageWarningNoLine}
+% \DoNotIndex{\PassOptionsToPackage,\ProcessOptions,\ProvidesPackage}
+%
+% \iffalse
+% --------------------------------------------------------------------------- %
+% \fi
+%
+% \setlength{\parskip}{0pt plus 1pt}
+% \newcommand*\Note[2][Note]{\par{\small\emph{#1:} #2}\par}
+%
+% \changes{v1.0}{1994/10/27}{First release}
+% \changes{v1.1}{1994/11/03}{New option \texttt{centerlast}}
+% \changes{v1.2}{1994/11/28}{Support of the \package{float} package}
+% \changes{v1.3}{1995/01/09}{Support of \cs{captionlabelfont} in subcaptions}
+% \changes{v1.4}{1995/01/30}{New option \texttt{nooneline}}
+% \changes{v1.4b}{1995/04/05}{Bugfix release}
+% \changes{v3.0}{2003/12/20}{Rewritten; many new commands and features}
+% \changes{v3.0d}{2004/11/28}{Split into two packages:
+% \package{caption} \& \package{caption3}}
+%
+% \iffalse
+% --------------------------------------------------------------------------- %
+% \fi
+%
+% \clearpage
+% \let\subsubsection\subsection
+% \let\subsection\section
+%
+% \iffalse
+%<*package>
+% \fi
+%
+% \subsection{Identification}
+%
+% \begin{macrocode}
+\NeedsTeXFormat{LaTeX2e}[1994/12/01]
+\ProvidesPackage{caption}[2019/09/01 v3.3d Customizing captions (AR)]
+% \end{macrocode}
+%
+% \subsection{Loading the kernel}
+%
+% \begin{macrocode}
+\RequirePackage{caption3}[=2019/09/01] % needs v1.8d or newer
+% \end{macrocode}
+%
+% \subsection{Check against incompatible document classes}
+%
+% \begin{macrocode}
+\caption@ifbool{documentclass}{}{%
+ \caption@WarningNoLine{%
+ Unsupported document class (or package) detected,\MessageBreak
+ usage of the caption package is not recommended}%
+ \caption@InfoNoLine{\string\@makecaption\space=\space\meaning\@makecaption}%
+}
+% \end{macrocode}
+%
+% \subsection{Check against incompatible packages}
+%
+% \changes{v3.0p}{2007/04/06}{Check against obsolete \package{caption2} package added}
+% \begin{macrocode}
+\@ifpackageloaded{caption2}{%
+ \caption@Error{%
+ You can't use both, the (obsolete) caption2 *and*\MessageBreak
+ the (current) caption package}%
+ \endinput
+}{}
+% \end{macrocode}
+%
+% \changes{v3.1}{2007/06/15}{Check against incompatible \package{ftcap} package added}
+% \changes{v3.1}{2007/06/15}{Check against incompatible \package{nonfloat} package added}
+% \changes{v3.1}{2007/06/18}{Check against incompatible \package{topcapt} package added}
+% \begin{macrocode}
+\caption@AtBeginDocument{%
+ \@ifpackageloaded{ftcap}{\caption@DisablePositionOption{ftcap}}{}%
+ \@ifpackageloaded{nonfloat}{\caption@DisablePositionOption{nonfloat}}{}%
+ \@ifpackageloaded{topcapt}{\caption@DisablePositionOption{topcapt}}{}}
+% \end{macrocode}
+% \begin{macro}{\caption@DisablePositionOption}
+% \changes{v3.1g}{2008/03/20}{\texttt{position=b} added}
+% \changes{v3.1h}{2008/03/29}{%
+% Name changed from \cs{caption@IncompatiblePackage} to \cs{caption@DisablePositionOption};
+% moved from package to kernel; disables the `position' option now instead of issuing a warning}
+% |\caption@DisablePositionOption|\marg{package}\par
+% disables the `position' option.
+% \begin{macrocode}
+\newcommand*\caption@DisablePositionOption[1]{%
+ \caption@InfoNoLine{%
+ `#1' package detected; setting `position=b' for compatibility reasons}%
+ \caption@setposition b%
+% \end{macrocode}
+% \begin{macrocode}
+ \DeclareCaptionOption{position}{%
+ \caption@Error{Usage of the `position' option is incompatible\MessageBreak
+ to the `#1' package}}}
+% \end{macrocode}
+% \begin{macrocode}
+\@onlypreamble\caption@DisablePositionOption
+% \end{macrocode}
+% \end{macro}
+%
+% \subsection{Declaration of options}
+%
+% \subsubsection{Options for figure and table}
+%
+% \changes{v3.0a}{2004/01/09}{Options \opt{figureposition} and \opt{tableposition} added}
+% \begin{macrocode}
+\DeclareCaptionOption{figureposition}{%
+ \captionsetup*[figure]{position=#1}}
+\@onlypreamble@key{caption}{figureposition}
+% \end{macrocode}
+% \begin{macrocode}
+\DeclareCaptionOption{tableposition}{%
+ \captionsetup*[table]{position=#1}}
+\@onlypreamble@key{caption}{tableposition}
+% \end{macrocode}
+%
+% \changes{v3.0d}{2004/08/03}{Options \opt{figurename} and \opt{tablename} added}
+% \changes{v3.1}{2007/07/04}{Options \opt{figurename} and \opt{tablename} re-written}
+% \changes{v3.1f}{2007/11/18}{Option \opt{name} added}
+% \begin{macrocode}
+\DeclareCaptionOption{figurename}{\caption@SetName{figure}{#1}}
+\@onlypreamble@key{caption}{figurename}
+\DeclareCaptionOption{tablename}{\caption@SetName{table}{#1}}
+\@onlypreamble@key{caption}{tablename}
+% \end{macrocode}
+%
+% \changes{v3.1g}{2008/02/28}{Options \opt{listfigurename} and \opt{listtablename} added}
+% \begin{macrocode}
+\DeclareCaptionOption{listfigurename}{\caption@SetName{listfigure}{#1}}
+\@onlypreamble@key{caption}{listfigurename}
+\DeclareCaptionOption{listtablename}{\caption@SetName{listtable}{#1}}
+\@onlypreamble@key{caption}{listtablename}
+% \end{macrocode}
+%
+% \begin{macro}{\caption@SetName}
+% \changes{v3.1}{2007/07/04}{This macro added}
+% \changes{v3.1f}{2007/11/18}{After-preamble variant added}
+% \changes{v3.1g}{2008/02/28}{Renamed from \cs{caption@SetFloatName} to \cs{caption@SetName}}
+% \changes{v3.1i}{2008/08/02}{Bugfix: Works now without \cs{addto}, too}
+% \changes{v3.2d}{2011/10/29}{Outsourced to \package{newfloat} package}
+% \changes{v3.2f}{2012/01/12}{Bugfix: Uses \cs{caption@NewFloat} now}
+% |\caption@SetName|\marg{float}\marg{name}
+% \begin{macrocode}
+\newcommand*\caption@SetName[2]{%
+ \caption@NewFloat{\newfloat@setname{#1}{#2}}}
+\@onlypreamble\caption@SetName
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+\DeclareCaptionOption{name}{\caption@setname\@captype{#1}}
+% \end{macrocode}
+% \begin{macro}{\caption@setname}
+% |\caption@setname|\marg{float}\marg{name}
+% \begin{macrocode}
+\newcommand*\caption@setname[2]{%
+ \@namedef{#1name}{#2}}
+% \end{macrocode}
+% \end{macro}
+%
+% \changes{v3.1f}{2007/12/21}{Options \opt{figurewithin} and \opt{tablewithin} added}
+% \changes{v3.1i}{2008/04/13}{Option \opt{within} added}
+% \changes{v3.1l}{2010/01/09}{The \opt{within} options are now available within the document, too}
+% \changes{v3.1l}{2010/01/09}{The global \opt{within} option will now affect user-defined
+% floats declared with \cs{DeclareCaptionType}, too}
+%
+% \begin{macro}{\caption@DeclareWithinOption}
+% \changes{v3.1l}{2010/01/09}{This macro and its usage added}
+% |\caption@DeclareWithinOption|\marg{float}
+% declares the options \meta{float}\texttt{within} and \meta{float}\texttt{without},
+% e.g. \texttt{figurewithin} and \texttt{figurewithout}.
+% \begin{macrocode}
+\newcommand*\caption@DeclareWithinOption[1]{%
+ \DeclareCaptionOption{#1within}{\caption@Within{#1}{##1}}%
+ \DeclareCaptionOptionNoValue{#1without}{\caption@Within{#1}{none}}}
+\@onlypreamble\caption@DeclareWithinOption
+% \end{macrocode}
+% \end{macro}
+% \begin{macrocode}
+\caption@DeclareWithinOption{figure}
+\caption@DeclareWithinOption{table}
+% \end{macrocode}
+% \begin{macrocode}
+\DeclareCaptionOption{within}{%
+ \caption@NewFloat{\newfloatsetup{within=#1}}}
+\DeclareCaptionOptionNoValue{without}{%
+ \caption@NewFloat{\newfloatsetup{without}}}
+% \end{macrocode}
+% \begin{macro}{\caption@Within}
+% \changes{v3.1}{2007/12/21}{This macro added}
+% \changes{v3.2d}{2011/10/29}{Outsourced to \package{newfloat} package}
+% \changes{v3.2f}{2012/01/12}{Bugfix: Uses \cs{caption@NewFloat} now}
+% |\caption@Within|\marg{float}\marg{value}
+% \begin{macrocode}
+\newcommand*\caption@Within[2]{%
+ \caption@NewFloat{\newfloat@setwithin{#1}{#2}}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@NewFloat}
+% \changes{v3.2f}{2012/01/12}{This macro added}
+% |\caption@NewFloat|\marg{code}
+% loads the \package{newfloat} package and executes the given code afterwards.
+% Note: Since the \package{newfloat} package uses the crappy \package{keyval}
+% package, too, we need to save \& restore some macros here, otherwise this
+% recursion won't work properly.
+% {\itshape (TODO: Re-write \package{newfloat} so it uses \package{kvoptions} instead.)}
+% \begin{macrocode}
+\newcommand*\caption@NewFloat[1]{%
+ \let\KV@prefix@ORI\KV@prefix
+ \let\@tempc@ORI\@tempc
+ \caption@ifpackageloaded{newfloat}{#1}{}%
+ \let\@tempc\@tempc@ORI
+ \let\KV@prefix\KV@prefix@ORI}
+% \end{macrocode}
+% \end{macro}
+%
+% \subsubsection{Miscellaneous options}
+%
+% \begin{macrocode}
+\DeclareCaptionOption*{config}[caption]{%
+ \InputIfFileExists{#1.cfg}%
+ {\typeout{*** Local configuration file #1.cfg used ***}}%
+ {\caption@Warning{Configuration file #1.cfg not found}}}
+% \end{macrocode}
+%
+% \begin{macro}{\caption@selectlistentry}
+% \changes{v3.2}{2010/11/07}{This macro added}
+% |\caption@selectlistentry|\marg{\purett{heading} or \purett{entry}}
+% \begin{macrocode}
+\newcommand*\caption@selectlistentry[1]{%
+ \caption@ifinlist{#1}{heading}{%
+ \let\caption@iflistheading\@firstoftwo
+ }{\caption@ifinlist{#1}{default,list-entry,entry}{%
+ \let\caption@iflistheading\@secondoftwo
+ }{%
+ \caption@Error{Undefined list-entry selection `#1'}%
+ }}}
+% \end{macrocode}
+% \end{macro}
+%
+% \changes{v3.3}{2012-03-25}{Option \opt{list-entry} added}
+% \begin{macrocode}
+\DeclareCaptionOption{list-entry}{\caption@selectlistentry{#1}}
+\captionsetup{list-entry=default}
+% \end{macrocode}
+%
+% \begin{macro}{\caption@setparboxrestore}
+% \changes{v3.2}{2010/11/07}{This macro added}
+% |\caption@setparboxrestore|\marg{\purett{partial} or \purett{full}}
+% \begin{macrocode}
+\newcommand*\caption@setparboxrestore[1]{%
+ \caption@ifinlist{#1}{full}{%
+ \caption@setfullparboxrestore
+ }{\caption@ifinlist{#1}{default,light,partial}{%
+ \let\caption@parboxrestore\@secondoftwo
+ }{%
+ \caption@Error{Undefined parboxrestore `#1'}%
+ }}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@setfullparboxrestore}
+% \changes{v3.2}{2010/11/07}{This macro added}
+% |\caption@setfullparboxrestore|\par
+% This is an abbreviation for |\caption@setparboxrestore{full}|.
+% \begin{macrocode}
+\newcommand*\caption@setfullparboxrestore{%
+ \let\caption@parboxrestore\@firstoftwo}
+% \end{macrocode}
+% \end{macro}
+%
+% \changes{v3.2}{2010/11/07}{Option \opt{parboxrestore} added}
+% \begin{macrocode}
+\DeclareCaptionOption{parboxrestore}{\caption@setparboxrestore{#1}}
+\captionsetup{parboxrestore=default}
+% \end{macrocode}
+%
+% \changes{v3.1f}{2007/11/28}{Option \opt{@minipage=} added}
+% \begin{macrocode}
+\DeclareCaptionOption{@minipage}{%
+ \caption@ifinlist{#1}{auto,default}%
+ {\let\caption@if@minipage\@gobbletwo}%
+ {\caption@set@bool\caption@if@minipage{#1}}}
+\captionsetup{@minipage=default}
+% \end{macrocode}
+%
+% \subsubsection{caption v1.x compatibility options}
+% \changes{v3.1}{2007/07/21}{Option `compatibility' added}
+% \changes{v3.1}{2007/09/01}{caption v1.x compatibility options revised}
+% \changes{v3.1d}{2007/10/24}{Bugfix 07-10-24 in caption v1.x$ compatibility options}
+%
+% \begin{macrocode}
+\DeclareCaptionOption{compatibility}[1]{\caption@setbool{compatibility}{#1}}
+\@onlypreamble@key{caption}{compatibility}
+% \end{macrocode}
+%
+% \begin{macrocode}
+\DeclareCaptionOptionNoValue*{normal}{%
+ \caption@setformat{plain}%
+ \caption@setjustification{justified}}
+\DeclareCaptionOptionNoValue*{isu}{%
+ \caption@setformat{hang}%
+ \caption@setjustification{justified}}
+\DeclareCaptionOptionNoValue*{hang}{%
+ \caption@setformat{hang}%
+ \caption@setjustification{justified}}
+\DeclareCaptionOptionNoValue*{center}{%
+ \caption@setformat{plain}%
+ \caption@setjustification{centering}}
+\DeclareCaptionOptionNoValue*{centerlast}{%
+ \caption@setformat{plain}%
+ \caption@setjustification{centerlast}}
+% \end{macrocode}
+%
+% \begin{macrocode}
+\DeclareCaptionOptionNoValue*{scriptsize}{\def\captionfont{\scriptsize}}
+\DeclareCaptionOptionNoValue*{footnotesize}{\def\captionfont{\footnotesize}}
+\DeclareCaptionOptionNoValue*{small}{\def\captionfont{\small}}
+\DeclareCaptionOptionNoValue*{normalsize}{\def\captionfont{\normalsize}}
+\DeclareCaptionOptionNoValue*{large}{\def\captionfont{\large}}
+\DeclareCaptionOptionNoValue*{Large}{\def\captionfont{\Large}}
+% \end{macrocode}
+%
+% \begin{macrocode}
+\DeclareCaptionOptionNoValue*{up}{\l@addto@macro\captionlabelfont\upshape}
+\DeclareCaptionOptionNoValue*{it}{\l@addto@macro\captionlabelfont\itshape}
+\DeclareCaptionOptionNoValue*{sl}{\l@addto@macro\captionlabelfont\slshape}
+\DeclareCaptionOptionNoValue*{sc}{\l@addto@macro\captionlabelfont\scshape}
+\DeclareCaptionOptionNoValue*{md}{\l@addto@macro\captionlabelfont\mdseries}
+\DeclareCaptionOptionNoValue*{bf}{\l@addto@macro\captionlabelfont\bfseries}
+\DeclareCaptionOptionNoValue*{rm}{\l@addto@macro\captionlabelfont\rmfamily}
+\DeclareCaptionOptionNoValue*{sf}{\l@addto@macro\captionlabelfont\sffamily}
+\DeclareCaptionOptionNoValue*{tt}{\l@addto@macro\captionlabelfont\ttfamily}
+% \end{macrocode}
+%
+% \begin{macrocode}
+\DeclareCaptionOptionNoValue*{nooneline}{\caption@setbool{slc}{0}}
+% \end{macrocode}
+%
+% \begin{macrocode}
+\caption@setbool{ruled}{0}
+\DeclareCaptionOptionNoValue*{ruled}{\caption@setbool{ruled}{1}}
+% \end{macrocode}
+%
+% \subsubsection{caption2 v2.x compatibility options}
+% \changes{v3.0h}{2005/07/08}{caption2 \version{2.x} compatibility options added}
+% \changes{v3.1}{2007/09/01}{caption2 v2.x compatibility options revised}
+% \changes{v3.1d}{2007/10/24}{Bugfix 07-10-24 in caption v2.x$ compatibility options}
+%
+% \begin{macrocode}
+\DeclareCaptionOptionNoValue*{flushleft}{%
+ \caption@setformat{plain}%
+ \caption@setjustification{raggedright}}
+\DeclareCaptionOptionNoValue*{flushright}{%
+ \caption@setformat{plain}%
+ \caption@setjustification{raggedleft}}
+% \end{macrocode}
+% \begin{macrocode}
+\DeclareCaptionOptionNoValue*{oneline}{\caption@setbool{slc}{1}}
+% \end{macrocode}
+% \begin{macrocode}
+\DeclareCaptionOptionNoValue*{ignoreLTcapwidth}{%
+ \caption@WarningNoLine{Obsolete option `ignoreLTcapwidth' ignored}}
+% \end{macrocode}
+%
+% \subsubsection{Obsolete caption v3.0 options}
+% \changes{v3.1}{2007/05/07}{Package option \opt{caption} marked as obsolete,
+% gives error now}
+%
+% \begin{macrocode}
+\DeclareCaptionOption*{caption}{%
+ \caption@setbool{temp}{#1}%
+ \caption@ifbool{temp}{}{%
+ \caption@Error{%
+ The package option `caption=#1' is obsolete.\MessageBreak
+ Please pass this option to the subfig package instead\MessageBreak
+ and do *not* load the caption package anymore}}}
+% \end{macrocode}
+%
+% \subsubsection{fltpage package support options}
+%
+% \changes{v3.1}{2007/09/01}{Options `FPlist' \& `FPref' added}
+% With these options is controlled where the list-of entry and |\ref| resp.
+% |\pageref| or |\autoref| will link to.
+% Defaults are |FPlist=caption| and |FPref=figure| which is inconsistent,
+% but compatible to the usual behaviour of the \package{fltpage} package.
+% \begin{macrocode}
+\DeclareCaptionOption{FPlist}[1]{\caption@setFPoption{list}{#1}}
+\DeclareCaptionOption{FPref}[1]{\caption@setFPoption{ref}{#1}}
+\@onlypreamble@key{caption}{FPlist}
+\@onlypreamble@key{caption}{FPref}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@setFPoption[2]{%
+ \edef\caption@tempa{\@car#2\@nil}%
+ \caption@setbool{FP#1cap}{\if c\caption@tempa 1\else 0\fi}}
+\@onlypreamble\caption@setFPoption
+% \end{macrocode}
+% \begin{macrocode}
+\captionsetup{FPlist=caption,FPref=figure}
+% \end{macrocode}
+%
+% \subsubsection{hyperref package support options}
+%
+% \changes{v3.1}{2007/06/21}{Options `hypcap' \& `hypcapspace' added}
+% With |hypcap=off| one can turn the \package{hypcap} support off
+% (default is |on|).
+% \begin{macrocode}
+\DeclareCaptionOption{hypcap}[1]{\caption@setbool{hypcap}{#1}}
+\DeclareCaptionOption{hypcapspace}{\def\caption@hypcapspace{#1}}
+% \end{macrocode}
+% \begin{macrocode}
+\captionsetup{hypcap=1,hypcapspace=.5\baselineskip}
+% \end{macrocode}
+%
+% \subsection{\AmS{} \& \SmF{} document classes support}
+% \changes{v3.1}{2007/07/29}{\AmS\ \& \SmF\ document classes support added}
+%
+% \begin{macrocode}
+\caption@ifamsclass{%
+ \caption@InfoNoLine{AMS or SMF document class}%
+% \end{macrocode}
+% \begin{macrocode}
+ \setlength\belowcaptionskip{0pt}% set to 12pt by AMS class
+% \end{macrocode}
+% \begin{macrocode}
+}
+% \end{macrocode}
+%
+% \subsection{\KOMAScript{} document classes support}
+% \changes{v3.0a}{2004/01/18}{Minimum adaptation to \KOMAScript\ added}
+% \changes{v3.0h}{2005/08/22}{\KOMAScript\ compatibility options added}
+% \changes{v3.0i}{2005/11/17}{\KOMAScript\ compatibility commands added}
+% \changes{v3.0l}{2007/02/18}{\KOMAScript\ compatibility revised}
+% \changes{v3.1}{2007/03/17}{\KOMAScript\ compatibility options removed}
+% \changes{v3.1}{2007/04/05}{\KOMAScript\ compatibility revised \& enhanced}
+%
+% \begin{macrocode}
+\caption@ifkomaclass{%
+ \caption@InfoNoLine{KOMA-Script document class}%
+% \end{macrocode}
+%
+% Here we emulate the caption related commands and take over the caption
+% related settings from the \KOMAScript\ classes.
+%
+% \begin{macro}{\@tablecaptionabovetrue}
+% \begin{macro}{\@tablecaptionabovefalse}
+% \changes{v3.1g}{2008/03/01}{\cs{def} changed to \cs{g@addto@macro}}
+% \begin{macrocode}
+ \g@addto@macro\@tablecaptionabovetrue{\captionsetup*[table]{position=t}}
+ \g@addto@macro\@tablecaptionabovefalse{\captionsetup*[table]{position=b}}
+% \end{macrocode}
+% \begin{macrocode}
+ \if@tablecaptionabove
+ \@tablecaptionabovetrue
+ \else
+ \@tablecaptionabovefalse
+ \fi
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+%
+% \begin{macro}{\@figurecaptionabovetrue}
+% \begin{macro}{\@figurecaptionabovefalse}
+% \changes{v3.3}{2013/02/15}{Support of \cs{@figurecaptionabovetrue} added}
+% \begin{macrocode}
+ \caption@ifundefined\@figurecaptionabovetrue{}{%
+% \end{macrocode}
+% \begin{macrocode}
+ \g@addto@macro\@figurecaptionabovetrue{\captionsetup*[figure]{position=t}}
+ \g@addto@macro\@figurecaptionabovefalse{\captionsetup*[figure]{position=b}}
+% \end{macrocode}
+% \begin{macrocode}
+ \if@figurecaptionabove
+ \@figurecaptionabovetrue
+ \else
+ \@figurecaptionabovefalse
+ \fi
+% \end{macrocode}
+% \begin{macrocode}
+ }%
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+%
+% \begin{macro}{\onelinecaptionstrue}
+% \begin{macro}{\onelinecaptionsfalse}
+% \changes{v3.1g}{2008/03/01}{\cs{def} changed to \cs{g@addto@macro}}
+% \begin{macrocode}
+ \g@addto@macro\onelinecaptionstrue{\let\caption@ifslc\@firstoftwo}
+ \g@addto@macro\onelinecaptionsfalse{\let\caption@ifslc\@secondoftwo}
+% \end{macrocode}
+% \begin{macrocode}
+ \ifonelinecaptions
+ \onelinecaptionstrue
+ \else
+ \onelinecaptionsfalse
+ \fi
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+%
+% \begin{macro}{\@captionabovetrue}
+% \begin{macro}{\@captionabovefalse}
+% \changes{v3.0j}{2006/03/21}{Bugfix 06-03-21:
+% \cs{let}\cs{caption@setposition}\cs{@gobble} added}
+% \changes{v3.0n}{2006/03/09}{Accidentally this got broken in \version{3.0m}, fixed}
+% \changes{v3.1}{2007/03/31}{We redefine \cs{captionabovetrue/false} now
+% instead of \cs{captionabove/below}}
+% \changes{v3.1g}{2008/03/01}{\cs{def} changed to \cs{g@addto@macro}}
+% \changes{v3.1k}{2009/10/09}{\opt{figureposition} and \opt{tableposition} will issue a warning now}
+% Please note that these are stronger than the \opt{position} setting, therefore we
+% override the options \opt{figureposition} and \opt{tableposition} to typeout a warning.
+% \begin{macrocode}
+ \g@addto@macro\@captionabovetrue{\let\caption@position\@firstoftwo}
+ \g@addto@macro\@captionabovefalse{\let\caption@position\@secondoftwo}
+% \end{macrocode}
+% \begin{macrocode}
+ \DeclareCaptionOption{figureposition}{%
+ \caption@WarningNoLine{Option `figureposition=#1' has no effect\MessageBreak
+ when used with a KOMA script document class}}
+ \DeclareCaptionOption{tableposition}{%
+ \caption@WarningNoLine{Option `tableposition=#1' has no effect\MessageBreak
+ when used with a KOMA script document class}}
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+%
+% \begin{macro}{\setcapindent}
+% \begin{macrocode}
+ \let\caption@KOMA@setcapindent\@setcapindent
+ \renewcommand*\@setcapindent[1]{%
+ \caption@KOMA@setcapindent{#1}\caption@setcapindent}
+% \end{macrocode}
+% \begin{macrocode}
+ \let\caption@KOMA@@setcapindent\@@setcapindent
+ \renewcommand*\@@setcapindent[1]{%
+ \caption@KOMA@@setcapindent{#1}\caption@setcapindent}
+% \end{macrocode}
+% \begin{macrocode}
+ \newcommand*\caption@setcapindent{%
+ \captionsetup{indent=\ifdim\cap@indent<\z@\z@\else\cap@indent\fi}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+ \caption@ifundefined\cap@indent{}{\caption@setcapindent}
+% \end{macrocode}
+%
+% \begin{macro}{\setcapwidth}
+% \changes{v3.3}{2018/12/26}{Bugfix: Missing curly braces added}
+% \Note{The optional argument of \cs{setcapwidth} if not supported (yet),
+% so we issue a warning if used.
+% (Since this does not seem to have an negative effect when used
+% by the \texttt{captionbeside} environment, we suppress the warning here.)}
+% \begin{macrocode}
+ \expandafter\let\expandafter\caption@KOMA@setcapwidth
+ \csname\string\setcapwidth\endcsname
+ \@namedef{\string\setcapwidth}[#1]#2{%
+ \caption@KOMA@setcapwidth[{#1}]{#2}\caption@setcapwidth{#1}}
+% \end{macrocode}
+% \begin{macrocode}
+ \newcommand*\caption@setcapwidth[1]{%
+ \ifx\\#1\\\else
+ \caption@ifundefined\cap@margin{}{%
+ \def\@tempa{captionbeside}%
+ \ifx\@tempa\@currenvir\else\caption@Warning{%
+ Ignoring optional argument [#1] of \string\setcapwidth\MessageBreak}%
+ \fi}%
+ \fi
+ \captionsetup{width=\cap@width}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+ \def\caption@tempa{\hsize}%
+ \ifx\caption@tempa\cap@width \else
+ \caption@setcapwidth{?}
+ \fi
+% \end{macrocode}
+%
+% \begin{macro}{\setcapmargin}
+% \begin{macrocode}
+ \expandafter\let\expandafter\caption@KOMA@setcapmargin
+ \csname\string\@setcapmargin\endcsname
+ \@namedef{\string\@setcapmargin}[#1]#2{%
+ \caption@KOMA@setcapmargin[{#1}]{#2}\caption@setcapmargin}
+% \end{macrocode}
+% \begin{macrocode}
+ \expandafter\let\expandafter\caption@KOMA@@setcapmargin
+ \csname\string\@@setcapmargin\endcsname
+ \@namedef{\string\@@setcapmargin}[#1]#2{%
+ \caption@KOMA@@setcapmargin[{#1}]{#2}\caption@setcapmargin}
+% \end{macrocode}
+% \begin{macrocode}
+ \newcommand*\caption@setcapmargin{%
+ \begingroup
+ \let\onelinecaptionsfalse\relax
+ \def\@twoside{0}%
+ \def\if@twoside{\def\@twoside{1}\iffalse}%
+ \cap@margin
+ \def\@tempa{\endgroup}%
+ \ifx\cap@left\hfill\else\ifx\cap@right\hfill\else
+ \def\hspace##1##{\@firstofone}%
+ \edef\@tempa{\endgroup
+ \noexpand\captionsetup{%
+ twoside=\@twoside,slc=0,%
+ margin={\cap@left,\cap@right}}}%
+ \fi\fi
+ \@tempa}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+ \ifx\cap@margin\relax \else
+ \caption@setcapmargin
+ \fi
+% \end{macrocode}
+%
+% \begin{macrocode}
+}
+% \end{macrocode}
+%
+% \subsection{Processing of options}
+%
+% \changes{v3.0m}{2007/03/04}{Verbose option added}
+% \changes{v3.1}{2007/07/02}{Verbose option removed from package}
+%
+% \changes{v3.1}{2007/03/17}{We do not process global options anymore}
+% \begin{macrocode}
+\caption@SetupOptions{caption}{\caption@setkeys{#1}{#2}}
+\caption@ProcessOptions*{caption}
+% \end{macrocode}
+%
+% \subsection{\cs{caption}, \cs{@caption}, and \cs{@makecaption}}
+%
+% \begin{macro}{\caption@ifflag}
+% \changes{v3.3}{2011/12/28}{This switch added}
+% \changes{v3.3}{2018/08/08}{Rewritten (and renamed) so a counter is used instead of a switch}
+% Since we support continued floats and sub-figures it's not an easy task
+% to manage the figure (and table) counter. (Especially since previous versions
+% of the caption package has proven that correcting a counter locally is not a good idea.)
+%
+% These three switches hold the
+% current status: |\caption@if|\-|flag{2}| is set if the caption was already
+% typeset (so the counter doesn't need to be incremented for sub-figures),
+% |\caption@if|\-|flag{4}| is set if there is already content which have
+% incremented the counter (so the counter doesn't need to be incremented
+% for the main caption, further sub-figures, and other stuff), and
+% |\caption@if|\-|flag{1}| is set if |\Continued|\-|Float| was given.
+%
+% In the past three boolean switches were used to store the flags, but since some
+% packages (like the \package{floatrow} and \package{tabu} package) try hard to keep
+% counter changes locally under certain circumstances, it seems a good idea to make
+% these flags a counter value, too.
+% \begin{macrocode}
+\newcounter{caption@flags}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@ifflag[1]{%
+ \@tempcnta\c@caption@flags
+ \divide\@tempcnta #1\relax
+ \ifodd\@tempcnta
+ \expandafter\@firstoftwo
+ \else
+ \expandafter\@secondoftwo
+ \fi}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@clrflags}
+% \changes{v3.3}{2018/08/08}{This macro added}
+% \begin{macro}{\caption@clrflag}
+% \changes{v3.3}{2013/04/14}{This macro added}
+% \changes{v3.3}{2018/08/08}{Rewritten so a counter is used instead of a switch}
+% \begin{macro}{\caption@setflag}
+% \changes{v3.3}{2013/04/14}{This macro added}
+% \changes{v3.3}{2018/08/08}{Rewritten so a counter is used instead of a switch}
+% Furthermore we introduce the macros \cs{caption@clrflag} and \cs{caption@setflag}
+% for clearing resp.~setting these flags.
+% \begin{macrocode}
+\newcommand*\caption@clrflags{%
+ \setcounter{caption@flags}\z@}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@clrflag[1]{%
+ \caption@ifflag{#1}{\caption@addtoflags{-#1}}{}}
+\newcommand*\caption@setflag[1]{%
+ \caption@ifflag{#1}{}{\caption@addtoflags{#1}}}
+\newcommand*\caption@addtoflags{%
+ \addtocounter{caption@flags}}
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+% \end{macro}
+%
+% \begin{macro}{\caption@caption}
+% \changes{v3.0f}{2005/05/22}{Bugfix: \cs{ContinuedFloat} added}
+% \changes{v3.0f}{2005/06/13}{Support of \cs{caption*[]} removed}
+% \changes{v3.0l}{2007/01/19}{Minimal support of \textsf{combine} package added}
+% \changes{v3.1}{2007/02/04}{Re-written, does not save\&use original definition anymore}
+% Here comes our definition of |\caption| and |\caption*|.
+% Beside the support of the starred variant this code was adapted to the
+% various packages we support.
+% We are using |\caption@dblarg| instead of |\@dblarg| so |\caption{}|
+% (with an empty arg.) will produce a list-of entry, but |\caption[]{}|
+% won't.
+% \begin{macrocode}
+\def\caption@caption{%
+ \caption@iftype
+ {\caption@checkgrouplevel\@empty\caption
+ \caption@star
+ {\caption@refstepcounter\@captype}%
+ {\caption@dblarg{\@caption\@captype}}}%
+ {\caption@Error{\noexpand\caption outside float}%
+ \caption@gobble}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@star}
+% \changes{v3.1}{2007/06/24}{Renamed from \cs{caption@caption} to \cs{caption@star}}
+% \changes{v3.2c}{2011/08/21}{\cs{global} removed}
+% A helper macro which processes the optional |*| after |\caption|.
+% \begin{macrocode}
+\newcommand*\caption@star[2]{%
+ \@ifstar{\caption@startrue#2[]}{#1#2}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@@caption}
+% \changes{v3.1}{2007/02/04}{Re-written, does not save\&use original definition anymore}
+% \changes{v3.1f}{2007/11/28}{Bugfix: Handling of \texttt{@minipage} flag added}
+% \changes{v3.1f}{2007/11/28}{Support of option \opt{@minipage} added}
+% \changes{v3.1g}{2008/03/16}{Internal: Uses \cs{caption@prepareanchor} now}
+% \changes{v3.2d}{2011/10/21}{Adapted to the \textsf{memoir} document class}
+% \changes{v3.2f}{2012/01/14}{Usage of \cs{M@gettitle} moved to \cs{caption@prepareanchor}}
+% \changes{v3.3}{2013/01/06}{Adapted to the \textsf{nag} package}
+% As above, our version has been adapted to the packages we support.
+% Additionally our code is nested by |\caption@beginex| \&
+% |\caption@end| instead of |\begingroup| \& |\endgroup|.
+% Furthermore we use |\caption@boxrestore| instead of |\@parboxrestore|
+% so this code also works correctly inside list-based environments
+% like |wide| \& |addmargin|. (This, and the fact that we use
+% |\linewidth| instead of |\hsize| inside |\@makecaption|, solves
+% \href{http://www.latex-project.org/cgi-bin/ltxbugs2html?pr=latex/2472}%^^A
+% {\LaTeX\ PR \texttt{latex/2472}}.)
+% \begin{macrocode}
+\long\def\caption@@caption#1[#2]#3{%
+% \end{macrocode}
+% \begin{macrocode}
+ \ifcaption@star \else
+ \caption@prepareanchor{#1}{#2}%
+ \memcaptioninfo{#1}{\csname the#1\endcsname}{#2}{#3}%
+ \@nameuse{nag@hascaptiontrue}%
+ \fi
+% \end{macrocode}
+% \begin{macrocode}
+ \par
+ \caption@beginex{#1}{#2}{#3}%
+ \caption@setfloatcapt{%
+ \caption@boxrestore
+ \if@minipage
+ \@setminipage
+ \fi
+ \caption@normalsize
+ \ifcaption@star
+ \let\caption@makeanchor\@firstofone
+ \fi
+ \@makecaption{\csname fnum@#1\endcsname}%
+ {\ignorespaces\caption@makeanchor{#3}}\par
+ \caption@if@minipage\@minipagetrue\@minipagefalse}%
+ \caption@end}
+% \end{macrocode}
+% \textsf{memoir} document class stuff:
+% \begin{macrocode}
+\providecommand\M@gettitle[1]{}
+\providecommand\memcaptioninfo[4]{}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@prepareanchor}
+% \changes{v3.1g}{2008/03/16}{This macro added}
+% \changes{v3.2f}{2012/01/14}{Usage of \cs{M@gettitle} moved from \cs{caption@@caption}}
+% \begin{macrocode}
+\newcommand*\caption@prepareanchor[2]{%
+ \caption@makecurrent{#1}{#2}%
+ \caption@ifhypcap\caption@@start\relax
+ \M@gettitle{#2}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@makecaption}
+% \changes{v3.1i}{2008/05/06}{Usage of \cs{caption@rule} added}
+% |\@makecaption|\marg{label}\marg{text}\par
+% We do basically the same as the original code (from the standard
+% \LaTeX\ document classes), but take care of the |position=| setting
+% and use |\caption@@make| from the \package{caption} kernel to finally
+% typeset the caption.
+% \begin{macrocode}
+\long\def\caption@makecaption#1#2{%
+ \caption@make@above
+ \caption@@make{#1}{#2}%
+ \caption@make@below}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@make@above}
+% \begin{macro}{\caption@make@below}
+% \changes{v3.3a}{2019/04/02}{This macro added}
+% |\caption@make@above|\\
+% |\caption@make@below|\par
+% Typesets the stuff above resp.~below the caption, depending on |\caption@iftop|.
+% \begin{macrocode}
+\newcommand*\caption@make@above{%
+ \caption@iftop
+ \caption@belowskip
+ {\caption@rule\caption@aboveskip}}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@make@below{%
+ \caption@iftop
+ {\caption@aboveskip\caption@rule}%
+ \caption@belowskip}
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+%
+% \begin{macro}{\caption@aboveskip}
+% \begin{macro}{\caption@belowskip}
+% \changes{v3.3a}{2019/04/02}{This macro added}
+% |\caption@aboveskip|\\
+% |\caption@belowskip|\par
+% Typesets the skip above resp.~below the caption.
+% \begin{macrocode}
+\newcommand*\caption@aboveskip{%
+ \vskip\abovecaptionskip}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@belowskip{%
+ \vskip\belowcaptionskip}
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+%
+% \begin{macro}{\caption@redefine}
+% \changes{v3.1k}{2009/03/30}{This macro added, it contains the patching code now}
+% We only redefine |\caption| and |\@caption| if the current definitions
+% are well known, so documents written in the old (\package{caption}
+% package \version{1.x}) days (where |\caption| \& |\@caption| were not
+% redefined by us) will still compile fine.
+% For example the usage of the (now obsolete) \package{captcont} package,
+% which brings its own definition of |\caption*|, was quite common these days.
+% \begin{macrocode}
+\newcommand*\caption@redefine{}
+\g@addto@macro\caption@redefine{%
+% \end{macrocode}
+%
+% \begin{macrocode}
+ \caption@setbool{incompatible}{0}%
+% \end{macrocode}
+%
+% \begin{macrocode}
+ \caption@CheckCommand\caption{%
+ % ltfloat.dtx [2002/10/01 v1.1v LaTeX Kernel (Floats)]
+ \def\caption{%
+ \ifx\@captype\@undefined
+ \@latex@error{\noexpand\caption outside float}\@ehd
+ \expandafter\@gobble
+ \else
+ \refstepcounter\@captype
+ \expandafter\@firstofone
+ \fi
+ {\@dblarg{\@caption\@captype}}%
+ }}%
+% \end{macrocode}
+%
+% \begin{macrocode}
+ \caption@CheckCommand\caption{%
+ % beamerbaselocalstructure.sty,v 1.53 2007/01/28 20:48:21 tantau
+ \def\caption{
+ \ifx\@captype\@undefined
+ \@latex@error{\noexpand\caption outside figure or table}\@ehd
+ \expandafter\@gobble
+ \else
+ \refstepcounter\@captype
+ \expandafter\@firstofone
+ \fi
+ {\@dblarg{\@caption\@captype}}%
+ }}%
+% \end{macrocode}
+%
+% \begin{macrocode}
+ \caption@CheckCommand\caption{%
+ % beamerbaselocalstructure.sty, Joseph Wright committed 4ac715c 2013-09-04
+ \def\caption{%
+ \ifx\@captype\@undefined
+ \@latex@error{\noexpand\caption outside figure or table}\@ehd
+ \expandafter\@gobble
+ \else
+ \refstepcounter\@captype
+ \expandafter\@firstofone
+ \fi
+ {\@dblarg{\@caption\@captype}}%
+ }}%
+% \end{macrocode}
+%
+% \begin{macrocode}
+ \caption@CheckCommand\caption{%
+ % float.sty [2001/11/08 v1.3d Float enhancements (AL)]
+ \long\def\caption{%
+ \ifx\@captype\@undefined
+ \@latex@error{\noexpand\caption outside float}\@ehd
+ \expandafter\@gobble
+ \else
+ \refstepcounter\@captype
+ \let\@tempf\@caption
+ \expandafter\ifx\csname @float@c@\@captype\endcsname\relax\else
+ \expandafter\expandafter\let
+ \expandafter\@tempf\csname @float@c@\@captype\endcsname
+ \fi
+ \fi
+ \@dblarg{\@tempf\@captype}}}%
+% \end{macrocode}
+%
+% \begin{macrocode}
+ \caption@CheckCommand\caption{%
+ % hyperref.sty [2007/02/27 v6.75t Hypertext links for LaTeX]
+ % hyperref.sty [2007/04/09 v6.76a Hypertext links for LaTeX]
+ % hyperref.sty [2007/06/12 v6.76h Hypertext links for LaTeX]
+ \def\caption{%
+ \ifx\@captype\@undefined
+ \@latex@error{\noexpand\caption outside float}\@ehd
+ \expandafter\@gobble
+ \else
+ \H@refstepcounter\@captype
+ \@ifundefined{fst@\@captype}{%
+ \let\Hy@tempa\@caption
+ }{%
+ \let\Hy@tempa\Hy@float@caption
+ }%
+ \expandafter\@firstofone
+ \fi
+ {\@dblarg{\Hy@tempa\@captype}}%
+ }}%
+% \end{macrocode}
+% \begin{macrocode}
+ \caption@CheckCommand\caption{%
+ % hyperref.sty [2007/08/05 v6.76j Hypertext links for LaTeX]
+ \def\caption{%
+ \ifx\@captype\@undefined
+ \@latex@error{\noexpand\caption outside float}\@ehd
+ \expandafter\@gobble
+ \else
+ \H@refstepcounter\@captype
+ \let\Hy@tempa\@caption
+ \@ifundefined{float@caption}{%
+ }{%
+ \expandafter\ifx\csname @float@c@\@captype\endcsname\float@caption
+ \let\Hy@tempa\Hy@float@caption
+ \fi
+ }%
+ \expandafter\@firstofone
+ \fi
+ {\@dblarg{\Hy@tempa\@captype}}%
+ }}%
+% \end{macrocode}
+% \begin{macrocode}
+ \caption@CheckCommand\caption{%
+ % memhfixc.sty [2010/08/17 v1.15 nameref/hyperref package fixes for memoir class]
+ % \let\m@moldhypcaption\caption
+ \long\def\caption{\donemaincaptiontrue\m@moldhypcaption}}%
+% \end{macrocode}
+% \begin{macrocode}
+ \caption@IfCheckCommand{}{%
+ \caption@InfoNoLine{%
+ Incompatible package detected (regarding \string\caption).\MessageBreak
+ \string\caption\space=\space\meaning\caption}%
+ \caption@setbool{incompatible}{1}}%
+% \end{macrocode}
+%
+% \begin{macrocode}
+ \caption@CheckCommand\@caption{%
+ % ltfloat.dtx [2002/10/01 v1.1v LaTeX Kernel (Floats)]
+ \long\def\@caption#1[#2]#3{%
+ \par
+ \addcontentsline{\csname ext@#1\endcsname}{#1}%
+ {\protect\numberline{\csname the#1\endcsname}{\ignorespaces #2}}%
+ \begingroup
+ \@parboxrestore
+ \if@minipage
+ \@setminipage
+ \fi
+ \normalsize
+ \@makecaption{\csname fnum@#1\endcsname}{\ignorespaces #3}\par
+ \endgroup}}%
+% \end{macrocode}
+%
+% \begin{macrocode}
+ \caption@CheckCommand\@caption{%
+ % beamerbaselocalstructure.sty,v 1.53 2007/01/28 20:48:21 tantau
+ \long\def\@caption#1[#2]#3{% second argument ignored
+ \par\nobreak
+ \begingroup
+ \@parboxrestore
+ \if@minipage
+ \@setminipage
+ \fi
+ \beamer@makecaption{#1}{\ignorespaces #3}\par\nobreak
+ \endgroup}}%
+% \end{macrocode}
+%
+% \begin{macrocode}
+ \caption@CheckCommand\@caption{%
+ % memhfixc.sty [2010/08/17 v1.15 nameref/hyperref package fixes for memoir class]
+ \long\def\@caption#1[#2]#3{%
+ \MNR@old@caption{#1}[{#2}]{#3}%
+ \def\@currentlabelname{#2}%
+ \M@gettitle{#2}%
+ }}%
+% \end{macrocode}
+%
+% \begin{macrocode}
+ \caption@CheckCommand\@caption{%
+ % arabicore.sty [2006/01/01 v1.0 Arabi Core switching commands (may still change)]
+ \long\def\@caption#1[#2]#3{%
+ \par
+ \addtocontents{\csname ext@#1\endcsname}{\xstring\select@language{\main@Arabi@language}}%
+ \addcontentsline{\csname ext@#1\endcsname}{#1}%
+ {\protect\numberline{\csname the#1\endcsname}{\ignorespaces \if@rl{\textRL{#2}}\else\textLR{#2}\fi}}%
+ \begingroup
+ \@parboxrestore
+ \if@minipage
+ \@setminipage
+ \fi
+ \normalsize
+ \@makecaption{\csname fnum@#1\endcsname}{\ignorespaces \if@rl{\textRL{#3}}\else\textLR{#3}\fi}\par
+ \endgroup}}%
+% \end{macrocode}
+%
+% \begin{macrocode}
+ \caption@CheckCommand\@caption{%
+ % rlbabel.def [2005/03/30 v2.3h Right-to-Left support from the babel system Hebrew language support from the babel system]
+ \long\def\@caption#1[#2]#3{%
+ \par
+ \addcontentsline{\csname ext@#1\endcsname}{#1}%
+ {\protect\numberline{\csname the#1\endcsname}%
+ {\ignorespaces #2}}%
+ \def\@fignm{figure}
+ \ifx#1\@fignm\addcontentsline{fol}{#1}%
+ {\protect\numberline{\csname the#1\endcsname}%
+ {\ignorespaces #2}}\fi%
+ \def\@tblnm{table}
+ \ifx#1\@tblnm\addcontentsline{tol}{#1}%
+ {\protect\numberline{\csname the#1\endcsname}%
+ {\ignorespaces #2}}\fi%
+ \begingroup
+ \@parboxrestore
+ \if@minipage
+ \@setminipage
+ \fi
+ \normalsize
+ \@makecaption{\csname fnum@#1\endcsname}{\ignorespaces #3}\par
+ \endgroup}}%
+% \end{macrocode}
+%
+% \begin{macrocode}
+ \caption@CheckCommand\@caption{%
+ % magyar.ldf [2005/03/30 v1.4j Magyar support from the babel system]
+ \long\def\@caption#1[#2]#3{%
+ \csname par\endcsname
+ \addcontentsline{\csname ext@#1\endcsname}{#1}%
+ {\protect\numberline{\csname the#1\endcsname.}{\ignorespaces #2}}%
+ \begingroup
+ \@parboxrestore
+ \if@minipage
+ \@setminipage
+ \fi
+ \normalsize
+ \@makecaption{\csname fnum@#1\endcsname}%
+ {\ignorespaces #3}\csname par\endcsname
+ \endgroup}}%
+% \end{macrocode}
+%
+% \begin{macrocode}
+% \caption@CheckCommand\float@caption{%
+% % float.sty [2001/11/08 v1.3d Float enhancements (AL)]
+% \long\def\float@caption#1[#2]#3{%
+% \addcontentsline{\@nameuse{ext@#1}}{#1}%
+% {\protect\numberline{\@nameuse{the#1}}{\ignorespaces #2}}
+% \global\setbox\@floatcapt\vbox\bgroup\@parboxrestore
+% \normalsize\@fs@capt{\@nameuse{fnum@#1}}{\ignorespaces #3}%
+% \@ifnextchar[{\float@ccon}{\egroup}}%
+% \long\def\float@ccon[#1]{#1\par\egroup}}%
+% \end{macrocode}
+%
+% \begin{macrocode}
+ \caption@CheckCommand\@caption{%
+ % hyperref.sty [2007/02/27 v6.75t Hypertext links for LaTeX]
+ \long\def\@caption#1[#2]#3{%
+ \hyper@makecurrent{\@captype}%
+ \def\@currentlabelname{#2}%
+ \par\addcontentsline{\csname ext@#1\endcsname}{#1}{%
+ \protect\numberline{\csname the#1\endcsname}{\ignorespaces #2}%
+ }%
+ \begingroup
+ \@parboxrestore
+ \if@minipage
+ \@setminipage
+ \fi
+ \normalsize
+ \@makecaption{\csname fnum@#1\endcsname}{%
+ \ignorespaces
+ \ifHy@nesting
+ \hyper@@anchor{\@currentHref}{#3}%
+ \else
+ \Hy@raisedlink{\hyper@@anchor{\@currentHref}{\relax}}#3%
+ \fi
+ }%
+ \par
+ \endgroup
+ }}%
+% \end{macrocode}
+% \begin{macrocode}
+ \caption@CheckCommand\@caption{%
+ % hyperref.sty [2007/04/09 v6.76a Hypertext links for LaTeX]
+ % hyperref.sty [2007/06/12 v6.76h Hypertext links for LaTeX]
+ % hyperref.sty [2007/08/05 v6.76j Hypertext links for LaTeX]
+ \long\def\@caption#1[#2]#3{%
+ \expandafter\ifx\csname if@capstart\expandafter\endcsname
+ \csname iftrue\endcsname
+ \global\let\@currentHref\hc@currentHref
+ \else
+ \hyper@makecurrent{\@captype}%
+ \fi
+ \def\@currentlabelname{#2}%
+ \par\addcontentsline{\csname ext@#1\endcsname}{#1}{%
+ \protect\numberline{\csname the#1\endcsname}{\ignorespaces #2}%
+ }%
+ \begingroup
+ \@parboxrestore
+ \if@minipage
+ \@setminipage
+ \fi
+ \normalsize
+ \expandafter\ifx\csname if@capstart\expandafter\endcsname
+ \csname iftrue\endcsname
+ \global\@capstartfalse
+ \@makecaption{\csname fnum@#1\endcsname}{\ignorespaces#3}%
+ \else
+ \@makecaption{\csname fnum@#1\endcsname}{%
+ \ignorespaces
+ \ifHy@nesting
+ \hyper@@anchor{\@currentHref}{#3}%
+ \else
+ \Hy@raisedlink{\hyper@@anchor{\@currentHref}{\relax}}#3%
+ \fi
+ }%
+ \fi
+ \par
+ \endgroup
+ }}%
+% \end{macrocode}
+% \begin{macrocode}
+ \caption@CheckCommand\@caption{%
+ % hyperref.sty [2009/11/27 v6.79k Hypertext links for LaTeX]
+ \long\def\@caption#1[#2]#3{%
+ \expandafter\ifx\csname if@capstart\expandafter\endcsname
+ \csname iftrue\endcsname
+ \global\let\@currentHref\hc@currentHref
+ \else
+ \hyper@makecurrent{\@captype}%
+ \fi
+ \def\@currentlabelname{#2}%
+ \par\addcontentsline{\csname ext@#1\endcsname}{#1}{%
+ \protect\numberline{\csname the#1\endcsname}{\ignorespaces #2}%
+ }%
+ \begingroup
+ \@parboxrestore
+ \if@minipage
+ \@setminipage
+ \fi
+ \normalsize
+ \expandafter\ifx\csname if@capstart\expandafter\endcsname
+ \csname iftrue\endcsname
+ \global\@capstartfalse
+ \@makecaption{\csname fnum@#1\endcsname}{\ignorespaces#3}%
+ \else
+ \@makecaption{\csname fnum@#1\endcsname}{%
+ \ignorespaces
+ \ifHy@nesting
+ \expandafter\hyper@@anchor\expandafter{\@currentHref}{#3}%
+ \else
+ \Hy@raisedlink{%
+ \expandafter\hyper@@anchor\expandafter{\@currentHref}{\relax}%
+ }%
+ #3%
+ \fi
+ }%
+ \fi
+ \par
+ \endgroup
+ }}%
+% \end{macrocode}
+% \begin{macrocode}
+ \caption@CheckCommand\@caption{%
+ % hyperref.sty [2009/12/09 v6.79m Hypertext links for LaTeX]
+ % hyperref.sty [2009/12/28 v6.79z Hypertext links for LaTeX]
+ \long\def\@caption#1[#2]#3{%
+ \expandafter\ifx\csname if@capstart\expandafter\endcsname
+ \csname iftrue\endcsname
+ \global\let\@currentHref\hc@currentHref
+ \else
+ \hyper@makecurrent{\@captype}%
+ \fi
+ \@ifundefined{NR@gettitle}{%
+ \def\@currentlabelname{#2}%
+ }{%
+ \NR@gettitle{#2}%
+ }%
+ \par\addcontentsline{\csname ext@#1\endcsname}{#1}{%
+ \protect\numberline{\csname the#1\endcsname}{\ignorespaces #2}%
+ }%
+ \begingroup
+ \@parboxrestore
+ \if@minipage
+ \@setminipage
+ \fi
+ \normalsize
+ \expandafter\ifx\csname if@capstart\expandafter\endcsname
+ \csname iftrue\endcsname
+ \global\@capstartfalse
+ \@makecaption{\csname fnum@#1\endcsname}{\ignorespaces#3}%
+ \else
+ \@makecaption{\csname fnum@#1\endcsname}{%
+ \ignorespaces
+ \ifHy@nesting
+ \expandafter\hyper@@anchor\expandafter{\@currentHref}{#3}%
+ \else
+ \Hy@raisedlink{%
+ \expandafter\hyper@@anchor\expandafter{%
+ \@currentHref
+ }{\relax}%
+ }%
+ #3%
+ \fi
+ }%
+ \fi
+ \par
+ \endgroup
+ }}%
+% \end{macrocode}
+%
+% \begin{macrocode}
+ \caption@CheckCommand\@caption{%
+ % nameref.sty [2006/12/27 v2.28 Cross-referencing by name of section]
+ \long\def\@caption#1[#2]{%
+ \def\@currentlabelname{#2}%
+ \NR@@caption{#1}[{#2}]%
+ }}%
+% \end{macrocode}
+% \begin{macrocode}
+ \caption@CheckCommand\@caption{%
+ % nameref.sty [2009/11/27 v2.32 Cross-referencing by name of section]
+ \long\def\@caption#1[#2]{%
+ \NR@gettitle{#2}%
+ \NR@@caption{#1}[{#2}]%
+ }}%
+% \end{macrocode}
+%
+% \begin{macrocode}
+ \caption@CheckCommand\@caption{%
+ % subfigure.sty [2002/07/30 v2.1.4 subfigure package]
+ \long\def\@caption#1[#2]#3{%
+ \@ifundefined{if#1topcap}%
+ {\subfig@oldcaption{#1}[{#2}]{#3}}%
+ {\@nameuse{if#1topcap}%
+ \@listsubcaptions{#1}%
+ \subfig@oldcaption{#1}[{#2}]{#3}%
+ \else
+ \subfig@oldcaption{#1}[{#2}]{#3}%
+ \@listsubcaptions{#1}%
+ \fi}}}%
+% \end{macrocode}
+%
+% \begin{macrocode}
+ \caption@CheckCommand\@caption{%
+ % subfig.sty [2005/06/28 ver: 1.3 subfig package]
+ \def\@caption{\caption@}%
+% \long\def\caption@#1[#2]#3{%
+% \@ifundefined{caption@setfloattype}%
+% \caption@settype
+% \caption@setfloattype
+% \@captype
+% \sf@ifpositiontop{%
+% \@listsubcaptions{#1}%
+% \sf@old@caption{#1}[{#2}]{#3}%
+% }{%
+% \sf@old@caption{#1}[{#2}]{#3}%
+% \@listsubcaptions{#1}%
+% }}%
+ }%
+% \end{macrocode}
+%
+% \begin{macrocode}
+ \caption@CheckCommand\@caption{%
+ % chkfloat.sty [2012/08/19 v0.1 chkfloat: check for moved floats]
+ \def\@caption#1[#2]#3{\chkfloat@caption{#1}[#2]{#3}%
+ \addtocontents{fof}{\protect\chkfloat@{\thepage}{\chkfloat@page}{\csname fnum@#1\endcsname: #2}}%
+ }}%
+% \end{macrocode}
+% \begin{macrocode}
+ \caption@CheckCommand\@caption{%
+ % chkfloat.sty [20??/??/?? v0.? chkfloat: check for moved floats]
+ \def\@caption#1[#2]#3{\chkfloat@caption{#1}[{#2}]{#3}%
+ \chkfloat@addcontentsline{#1}{#2}%
+ }}%
+% \end{macrocode}
+%
+% \begin{macrocode}
+ \caption@IfCheckCommand{}{%
+ \caption@InfoNoLine{%
+ Incompatible package detected (regarding \string\@caption).\MessageBreak
+ \string\@caption\space=\space\meaning\@caption}%
+ \caption@setbool{incompatible}{1}}%
+% \end{macrocode}
+%
+% The option |compatibility=| will override the compatibility mode.
+% \begin{macrocode}
+ \caption@ifundefined\caption@ifcompatibility
+ {\let\caption@ifcompatibility\caption@ifincompatible
+ \let\caption@tempa\caption@WarningNoLine}%
+ {\let\caption@tempa\@gobble}% suppress warning
+% \end{macrocode}
+%
+% \begin{macrocode}
+ \caption@ifcompatibility{%
+% \end{macrocode}
+%
+% \begin{macrocode}
+ \caption@tempa{%
+ \noexpand\caption will not be redefined since it's already\MessageBreak
+ redefined by a document class or package which is\MessageBreak
+ unknown to the caption package}%
+% \end{macrocode}
+%
+% \begin{macrocode}
+ \renewcommand*\caption@redefine{}%
+% \end{macrocode}
+%
+% |\ContinuedFloat| is not supported in compatibility mode.
+% \begin{macrocode}
+ \renewcommand*\caption@ContinuedFloatX[1]{%
+ \caption@Error{Not available in compatibility mode}}%
+% \end{macrocode}
+%
+% |\caption@start| is not supported in compatibility mode.
+% \begin{macrocode}
+ \caption@AtBeginDocument*{%
+ \let\caption@start\relax
+ \caption@ifundefined\caption@ORI@capstart{}{%
+ \caption@Debug{%
+ Restore hypcap definition of \string\capstart\@gobble}%
+ \let\capstart\caption@ORI@capstart}%
+ }%
+% \end{macrocode}
+%
+% \begin{macro}{\caption@star}
+% We redefine |\caption@star| here so it does not make any harm.
+% \begin{macrocode}
+ \renewcommand*\caption@star[2]{#1#2}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+ }{%
+% \end{macrocode}
+%
+% \begin{macrocode}
+ \caption@ifincompatible{%
+ \caption@WarningNoLine{%
+ Forced redefinition of \noexpand\caption since the\MessageBreak
+ unsupported(!) package option `compatibility=false'\MessageBreak
+ was given}%
+ }{}%
+% \end{macrocode}
+%
+% \begin{macro}{\caption}
+% \begin{macro}{\@caption}
+% \begin{macrocode}
+ \renewcommand*\caption@redefine{%
+ \let\caption\caption@caption
+ \let\@caption\caption@@caption}%
+ \caption@redefine
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+%
+% \begin{macrocode}
+ }%
+% \end{macrocode}
+% \begin{macrocode}
+ \caption@AtBeginDocument*{%
+ \let\caption@ORI@capstart\@undefined}%
+% \end{macrocode}
+%
+% \begin{macro}{\@xfloat}
+% \changes{v3.1}{2007/05/09}{This re-definition added}
+% \changes{v3.1b}{2007/09/22}{Will now be redefined in compatibility mode, too}
+% We redefine |\@xfloat| so inside floating environments our
+% type-specific options will be used, a \package{hyperref}
+% anchor will be set etc.
+% \begin{macrocode}
+ \let\caption@ORI@xfloat\@xfloat
+ \def\@xfloat#1[#2]{%
+ \caption@ORI@xfloat{#1}[#2]%
+ \caption@settype{#1}}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+}
+% \end{macrocode}
+% \end{macro}
+%
+% Some packages (like the \package{hyperref} package for example) redefines
+% |\caption| and |\@caption|, too.
+% So we have to use |\AtBeginDocument| here, so we can make sure
+% our definition is the one which will be valid at last.
+% \begin{macrocode}
+\caption@AtBeginDocument{\caption@redefine}
+% \end{macrocode}
+%
+% \begin{macro}{\@makecaption}
+% \begin{macrocode}
+\let\@makecaption\caption@makecaption
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\phantomcaption}
+% \changes{v3.2}{2010/10/31}{Bugfix 10-09-01b: This macro added}
+% |\phantomcaption|\par
+% Use this one for figures with subcaptions but without main caption.
+% \begin{macrocode}
+\newcommand\phantomcaption{%
+ \caption@iftype
+ {\caption@refstepcounter\@captype}%
+ {\caption@Error{\noexpand\phantomcaption outside float}}}%
+% \end{macrocode}
+% \end{macro}
+%
+% \subsection{\cs{captionof}}
+%
+% \changes{v3.0d}{2004/08/03}{Option \opt{type=} added}
+% \changes{v3.1}{2007/06/25}{Option \opt{type*=} added}
+% \changes{v3.1f}{2007/11/16}{Option \opt{subtype} \& \opt{subtype*} added}
+% \changes{v3.2}{2010/10/24}{Bugfix 10-10-17: Option \opt{type=} uses \cs{setcaptiontype} instead of \cs{caption@settype} now}
+%
+% \begin{macrocode}
+\caption@AtBeginDocument{%
+% \end{macrocode}
+% \begin{macrocode}
+ \DeclareCaptionOption{type}{\setcaptiontype{#1}}%
+ \DeclareCaptionOption{type*}{\setcaptiontype*{#1}}%
+% \end{macrocode}
+% \begin{macrocode}
+ \DeclareCaptionOptionNoValue{subtype}{\setcaptionsubtype\relax}%
+ \DeclareCaptionOptionNoValue{subtype*}{\setcaptionsubtype*}%
+% \end{macrocode}
+% \begin{macrocode}
+}
+% \end{macrocode}
+%
+% \emph{Important Note:}
+% Like |\captionof| the option |type=| should only be used inside a
+% group, box, or environment and does not check if the argument is a valid
+% floating environment or not.
+%
+% \begin{macro}{\setcaptiontype}
+% \changes{v3.2}{2010/10/24}{This macro added}
+% Like |\captionsetup{type=xxx}|, but also works if \cs{captionsetup} was redefined.
+% \begin{macrocode}
+\newcommand\setcaptiontype{%
+ \caption@boxrestore@mini
+ \caption@settype}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\setcaptionsubtype}
+% \changes{v3.2a}{2011/08/15}{This macro added}
+% Same, but sets the sub-type.
+% \begin{macrocode}
+\newcommand\setcaptionsubtype{%
+ \caption@iftype
+ \caption@setsubtype
+ {\caption@Error{\noexpand\setcaptionsubtype outside float}}}%
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand\caption@setsubtype{%
+ \@ifstar
+ {\caption@@settype{sub}*{sub\@captype}}%
+ {\caption@@settype{sub}{sub\@captype}}}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@settype}
+% \changes{v3.1}{2007/05/09}{This macro added}
+% \changes{v3.1b}{2007/09/22}{Usage of \cs{caption@xlabel} added}
+% \changes{v3.1d}{2007/10/23}{Error message for \cs{caption@checkgrouplevel} revised}
+% \changes{v3.1f}{2007/11/16}{\cs{caption@setsubtype} added}
+% \changes{v3.1f}{2007/12/03}{Crappy \cs{caption@iftypewarning} replaced}
+% \changes{v3.1g}{2008/01/12}{Usage of \cs{ifcaptionsetup@star} added}
+% \changes{v3.2}{2010/10/26}{Error message moved from here to \cs{caption@refstepcounter}}
+% \changes{v3.3}{2011/12/28}{Resetting of \cs{ifcaption@caption} and \cs{ifcaption@subcaption} added}
+% |\caption@settype*|\marg{type}\par
+% sets |\@captype| and executes the options associated with it
+% (using |\caption@set|\-|options|).
+% Furthermore we check |\current|\-|group|\-|level| (if avail),
+% redefine |\@currentlabel| so a |\label| before |\caption| will result
+% in a hint instead of a wrong reference, and
+% use the macro |\caption@|(|sub|)|type|\-|hook| (which will be used by our
+% \package{float} package support).\par
+% The non-starred version sets a \package{hyperref} anchor additionally
+% (if |hypcap=|\-|true| and the \package{hypcap} package is not loaded).
+% \begin{macrocode}
+\newcommand*\caption@settype{%
+ \caption@clrflags
+ \caption@set@type}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@set@type{%
+ \caption@@settype{}}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@@settype[1]{%
+ \caption@teststar{\caption@@@settype{#1}}\@firstoftwo\@secondoftwo}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@@@settype[3]{%
+% #1 = "" or "sub"
+% #2 = \@firstoftwo in star form, \@secondoftwo otherwise
+% #3 = <type>, e.g. "figure" or "table"
+ \caption@Debug{#1type=#3}%
+ \caption@checkgrouplevel{#1}{%
+ \captionsetup{#1type#2*\@empty=...}#2{ or
+ \@backslashchar#1captionof}{}}%
+% \end{macrocode}
+% \begin{macrocode}
+ \edef\caption@tempa{#3}%
+ \expandafter\ifx\csname @#1captype\endcsname\caption@tempa \else
+ \ifcaptionsetup@star\else\@nameuse{caption@#1type@warning}\fi
+ \fi
+ \expandafter\let\csname @#1captype\endcsname\caption@tempa
+% \end{macrocode}
+% \begin{macrocode}
+ \@nameuse{caption@#1typehook}%
+% \end{macrocode}
+% \begin{macrocode}
+ \caption@setoptions{#3}%
+ \ifx\caption@opt\relax
+ \@nameundef{caption@#1type@warning}%
+ \else
+ \@namedef{caption@#1type@warning}{\caption@Warning{%
+ The #1caption type was already set to
+ `\csname @#1captype\endcsname'\MessageBreak}}%
+ \fi
+% \end{macrocode}
+% \begin{macrocode}
+ #2{}{%
+ \let\@currentlabel\caption@undefinedlabel
+% \let\@currentHlabel\@undefined
+ \ifx\caption@x@label\@undefined
+ \let\caption@x@label\label
+ \let\label\caption@xlabel
+ \fi
+ \caption@start}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@typehook}
+% Hook which will be used inside |\caption@set|\-|type|.
+% It will be extended later on, e.g.~by our \package{float} package
+% support.
+% \begin{macrocode}
+\newcommand*\caption@typehook{}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@iftype}
+% \changes{v3.1}{2007/04/11}{This macro and its usage added}
+% Since we often need to check if |\@captype| is defined (means: we
+% are inside a floating environment) this helper macro was introduced.
+% \begin{macrocode}
+\newcommand*\caption@iftype{%
+ \caption@ifundefined\@captype\@secondoftwo\@firstoftwo}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@checkgrouplevel}
+% \changes{v3.1}{2007/07/15}{This macro and its usage added}
+% \changes{v3.1f}{2007/11/28}{Error changed to warning (compatibility)}
+% \changes{v3.3}{2013/04/21}{Uses \cs{caption@ifeTeX} now}
+% Checks if |\captionsetup{type=|\ldots|}| or |\caption| is done
+% inside a group or not -- in the latter case a warning message will
+% be issued. (needs \eTeX)
+% \begin{macrocode}
+\caption@ifeTeX{%
+ \newcommand*\caption@checkgrouplevel[2]{%
+ \@ifundefined{#1caption@grouplevel}{%
+ \caption@ifundefined\caption@grouplevel{\let\caption@grouplevel\z@}{}%
+ \ifnum\currentgrouplevel>\caption@grouplevel\relax
+ \expandafter\edef\csname #1caption@grouplevel\endcsname{%
+ \the\currentgrouplevel}%
+ \else
+ \caption@Warning{\string#2\MessageBreak outside box or environment}%
+ \fi
+ }{}}%
+}{%
+ \let\caption@checkgrouplevel\@gobbletwo
+}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@undefinedlabel}
+% \changes{v3.1}{2007/07/03}{This macro and its usage added}
+% \changes{v3.1b}{2007/09/22}{Contents changed to \texttt{??}}
+% \changes{v3.1i}{2008/04/13}{Contents changed to \cs{caption@xref}(\ldots)}
+% \changes{v3.1k}{2009/03/30}{Bugfix 08-12-08: \cs{caption@xref} is robust now}
+% \changes{v3.2c}{2011/09/13}{Text changed from `before' to `without proper'}
+% \changes{v3.3}{2016/02/21}{Text changed from `without proper \cs{caption}' to `without proper reference'}
+% This label will be used for |\currentlabel| inside (floating) environments
+% as default. (see above)
+% \iffalse\Note{All commands used have to be robust here.}\fi
+% \begin{macrocode}
+\newcommand*\caption@undefinedlabel{%
+ \protect\caption@xref{\caption@labelname}{\on@line}}
+% \end{macrocode}
+% \begin{macrocode}
+\DeclareRobustCommand*\caption@xref[2]{%
+ \caption@WarningNoLine{\noexpand\label without proper reference#2}%
+ \@setref\relax\@undefined{#1}}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@labelname{??}
+% \end{macrocode}
+% \end{macro}
+% \begin{macro}{\caption@xlabel}
+% \changes{v3.1b}{2007/09/22}{This macro and its usage added}
+% \changes{v3.1f}{2007/11/11}{Revised}
+% \changes{v3.1i}{2008/04/13}{Bugfix: \cs{pageref} should always work now}
+% \changes{v3.2c}{2011/08/19}{Works with optional arguments now, too}
+% The new code of |\label| inside floating environments.
+% |\label| will be redefined using |\caption@withoptargs|, so
+% |#1| are the optional arguments (if any), and
+% |#2| is the mandatory argument here.
+% \begin{macrocode}
+\newcommand*\caption@xlabel{%
+ \caption@withoptargs\caption@@xlabel}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@@xlabel[2]{%
+ \caption@@@xlabel
+ \def\caption@labelname{#2}%
+ \caption@x@label#1{#2}}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@@@xlabel{%
+ \global\let\caption@@@xlabel\@empty
+ \@bsphack
+ \protected@write\@auxout{}%
+ {\string\providecommand*\string\caption@xref[2]{%
+ \string\@setref\string\relax\string\@undefined{\string##1}}}%
+ \@esphack}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\captionof}
+% \changes{v3.1}{2007/05/09}{Uses \cs{caption@settype} instead of \cs{def}\cs{@captype}}
+% \changes{v3.1c}{2007/09/22}{Bugfix: Redefinition of \cs{caption@setfloatcapt} removed}
+% \changes{v3.1e}{2007/10/30}{Better compatibility: Will be defined with \cs{AtBeginDocument} now}
+% \changes{v3.2}{2010/10/24}{Bugfix 10-10-17: Uses \cs{setcaptiontype} instead of \cs{caption@settype} now}
+% |\captionof|\marg{type}\oarg{lst\_entry}\marg{heading}\\
+% |\captionof*|\oarg{lst\_entry}\marg{heading}\par
+% \Note{This will be defined with \cs{AtBeginDocument} so
+% \cs{usepackage}\csmarg{caption,capt-of} will still work.
+% (Compatibility to \version{1.x})}
+% \begin{macrocode}
+\caption@AtBeginDocument{%
+ \def\captionof{\caption@teststar\caption@of{\caption*}\caption}}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@of[2]{\setcaptiontype*{#2}#1}
+% \end{macrocode}
+% \end{macro}
+%
+% \subsection{\cs{captionlistentry}}
+%
+% \begin{macro}{\captionlistentry}
+% \changes{v3.1}{2007/07/28}{This macro added}
+% \changes{v3.1f}{2007/11/16}{Bugfix 07-11-09: `space hack' added}
+% \changes{v3.1g}{2008/01/20}{Starred variant added}
+% \changes{v3.1l}{2010/01/09}{Adapted to current version of nameref package}
+% |\captionlistentry|\oarg{float type}\marg{list entry}\\
+% |\captionlistentry*|\oarg{float type}\marg{list entry}
+% \begin{macrocode}
+\newcommand*\captionlistentry{%
+ \caption@teststar\@captionlistentry\@firstoftwo\@secondoftwo}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\@captionlistentry[1]{%
+ \@testopt{\caption@listentry{#1}}\@captype}
+% \end{macrocode}
+% \begin{macrocode}
+\def\caption@listentry#1[#2]#3{%
+ \@bsphack
+ #1{\caption@gettitle{#3}}%
+ {\caption@refstepcounter{#2}%
+ \caption@makecurrent{#2}{#3}}%
+ \caption@addcontentsline{#2}{#3}%
+ \@esphack}
+% \end{macrocode}
+% \end{macro}
+%
+% \subsection{\cs{captionbox}}
+%
+% \begin{macro}{\captionbox}
+% \changes{v3.2}{2010/12/17}{This macro added}
+% \changes{v3.2a}{2011/08/16}{\cs{captionsetup} replaces with \cs{captionbox@settype} and \cs{caption@setposition}}
+% \changes{v3.3}{2012/04/09}{Adapted to revised version of \cs{caption@withoptargs}}
+% \changes{v3.3}{2017/03/19}{When used with fixed witdh the content will not be hboxed anymore}
+% \changes{v3.3c}{2019/09/01}{Adapted so it could be used by \cs{subfloat} offered by \package{subcaption}}
+% A |\parbox| with contents and caption, separated by an invisible |\hrule|.
+% \begin{macrocode}
+\newcommand*\captionbox{%
+ \caption@withoptargs{\caption@ibox\@gobble}}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand\caption@ibox[3]{%
+ \kernel@ifnextchar[%]
+ {\caption@iibox{#1}{#2}{#3}}%
+ {\caption@iibox@{#1}{#2}{#3}}}
+% \end{macrocode}
+% \begin{macrocode}
+\long\def\caption@iibox#1#2#3[#4]{%
+ \@testopt{\caption@iiibox{#1}{#2}{#3}[{#4}]}\captionbox@hj@default}
+% \end{macrocode}
+% \begin{macrocode}
+\long\def\caption@iibox@#1#2#3#4{%
+ \setbox\@tempboxa\hbox{#4}%
+ \caption@iiibox{#1}{#2}{#3}[\wd\@tempboxa][\captionbox@hj@default]{\unhbox\@tempboxa}}
+% \end{macrocode}
+% \begin{macrocode}
+\long\def\caption@iiibox#1{%
+ \caption@iiiibox{#1}\vbox\vtop}
+% \end{macrocode}
+% \begin{macrocode}
+\long\def\caption@iiiibox#1#2#3#4#5[#6][#7]#8{%
+ \begingroup
+ #1*% set \caption@position
+ \caption@iftop{%
+ \endgroup
+ \parbox[t]{#6}{%
+ #1\relax
+ \caption@setposition t%
+ #2{\caption#4{#5}}%
+ \captionbox@hrule
+ \csname caption@hj@#7\endcsname
+ #8}%
+ }{%
+ \endgroup
+ \parbox[b]{#6}{%
+ #1\relax
+ \caption@setposition b%
+ \csname caption@hj@#7\endcsname
+ #8%
+ \captionbox@hrule
+ #3{\caption#4{#5}}}%
+ }}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\captionbox@hj@default{c}
+\newcommand*\captionbox@hrule{\hrule\@height\z@\relax}
+% \end{macrocode}
+% \begin{macrocode}
+\providecommand*\caption@hj@c{\centering}
+\providecommand*\caption@hj@l{\raggedright}
+\providecommand*\caption@hj@r{\raggedleft}
+\providecommand*\caption@hj@s{}
+% \end{macrocode}
+% \end{macro}
+%
+% \subsection{\cs{ContinuedFloat}}
+%
+% \begin{macro}{\ContinuedFloat}
+% \changes{v3.0i}{2005/11/12}{Optional argument added}
+% \changes{v3.0g}{2005/06/28}{Bugfix: \cs{newcounter} replaced by \cs{newcount}}
+% \changes{v3.1}{2007/07/02}{Format of \package{hyperref} extension changed}
+% \changes{v3.1}{2007/07/07}{\cs{caption@setoptions} added}
+% \changes{v3.1g}{2008/01/29}{Starred variant added}
+% \changes{v3.2f}{2011/12/17}{Undocumented optional argument removed}
+% \changes{v3.3}{2011/12/28}{Uses \cs{ifcaption@ContinuedFloat} now}
+% \changes{v3.3}{2013/05/01}{Usage of \cs{caption@restorecounters} added}
+% \changes{v3.3}{2013/12/16}{Bugfix: Does not use \cs{caption@ContinuedFloat} anymore since this breaks \cs{ContinuedFloat} offered by the \package{subfig} package}
+% |\ContinuedFloat|\\
+% |\ContinuedFloat*|\par
+% This mainly sets the appropriate flag, increments the
+% continuation counter, and executes the given options.
+% Furthermore we set |\caption@reset|\-|Continued|\-|Float| to |\@gobble| so the
+% continuation counter will not be reset to zero inside |\caption@ref|\-|step|\-|counter|.\par
+% When the \package{hyperref} package is used we have the problem
+% that the usage of |\Continued|\-|Float| will create duplicate
+% hyper links -- |\@current|\-|Href| will be the same for the main float and
+% the continued ones. So we have to make sure unique labels and references
+% will be created each time. We do this by extending |\the|\-|H|\-|figure| and
+% |\the|\-|H|\-|table|, so for continued floats the scheme
+% \begin{quote}\meta{type}|.|\meta{type \#}|\alph{|\meta{continued \#}|}|\end{quote}
+% will be used instead of
+% \begin{quote}\meta{type}|.|\meta{type \#}\quad\quad.\end{quote}
+% \par{\small(This implementation follows an idea from Steven Douglas Cochran.)}
+% \Note{This does not help if the \package{hyperref} package option
+% \texttt{naturalnames=true} is set.}
+% \begin{macrocode}
+\def\ContinuedFloat{%
+ \caption@iftype
+ {\caption@ContinuedFloatX\@captype}%
+ {\caption@Error{\noexpand\ContinuedFloat outside float}}}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@ContinuedFloatX[1]{%
+ \@ifstar
+ {\caption@@refstepcounter\@captype
+ \caption@@ContinuedFloat{#1}}%
+ {\caption@Continued@Float{#1}}}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@Continued@Float[1]{%
+ \edef\caption@tempa{#1}%
+ \ifx\caption@tempa\caption@CFtype
+ \caption@restorecounters
+ \caption@@ContinuedFloat{#1}%
+ \else
+ \caption@Error{Continued `#1' after `\caption@CFtype'}%
+ \fi}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@@ContinuedFloat{%
+ \caption@setflag1% ContinuedFloat
+ \caption@@@ContinuedFloat}
+\newcommand*\caption@@@ContinuedFloat{%
+ \stepcounter{ContinuedFloat}%
+ \caption@@@@ContinuedFloat}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@@@@ContinuedFloat[1]{%
+ \caption@setoptions{ContinuedFloat}%
+ \caption@setoptions{continued#1}%
+ \expandafter\l@addto@macro\csname the#1\endcsname\theContinuedFloat
+ \@ifundefined{theH#1}{}{%
+ \expandafter\l@addto@macro\csname theH#1\endcsname{%
+ \@alph\c@ContinuedFloat}}%
+ \let\caption@@@@ContinuedFloat\@gobble}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@CFtype{??}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\theContinuedFloat}
+% This one is preset to \cs{@empty}, so usually the continuation counter is not
+% included in the caption label or references.
+% \begin{macrocode}
+\newcounter{ContinuedFloat}
+\let\theContinuedFloat\@empty
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@ContinuedFloat}
+% \changes{v3.0f}{2005/06/11}{This macro added}
+% \changes{v3.3}{2013/12/16}{Bugfix: Revised and defined with \cs{def} instead of \cs{newcommand}}
+% |\caption@ContinuedFloat|\marg{type}\par
+% This one is used by \cs{ContinuedFloat} offered by the \package{subfig} package.
+% \begin{macrocode}
+\def\caption@ContinuedFloat{%
+ \let\caption@resetContinuedFloat\@gobble
+ \caption@@@ContinuedFloat}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@resetContinuedFloat}
+% \changes{v3.2f}{2011/12/17}{Redefinition of \cs{ContinuedFloat} added}
+% |\caption@resetContinuedFloat|\marg{type}\par
+% If a continuation counter is defined, we reset it.
+% (This one will be called inside |\@caption|.)
+% \begin{macrocode}
+\newcommand*\caption@resetContinuedFloat[1]{%
+ \xdef\caption@CFtype{#1}%
+ \@stpelt{ContinuedFloat}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\donemaincaptionfalse}
+% Since the \class{memoir} document class resets the sub-caption
+% counter at |\@float|, right after |\done|\-|main|\-|caption|\-|false|,
+% we save all sub-caption counters at |\done|\-|main|\-|caption|\-|false|
+% so we can restore them using |\caption@restore|\-|counters|
+% inside |\Continued|\-|Float|.
+% \begin{macrocode}
+\caption@ifundefined\donemaincaptionfalse{}{%
+ \g@addto@macro\donemaincaptionfalse\caption@savesubcounters}
+% \end{macrocode}
+% \end{macro}
+%
+% \subsection{Internal helpers}
+%
+% \begin{macro}{\caption@refstepcounter}
+% \changes{v3.1}{2007/07/28}{This macro added}
+% \changes{v3.2}{2010/10/26}{Error message moved from \cs{caption@@@settype} to here}
+% \changes{v3.2c}{2011/09/04}{Support of \cs{donemaincaptiontrue} from \textsf{memoir} document class added}
+% \changes{v3.3}{2011/12/28}{Usage of \cs{ifcaption@caption}, \cs{ifcaption@subcaption}, and \cs{ifcaption@ContinuedFloat} added}
+% Increments the float (i.e. |figure| or |table|) counter,
+% resets the continuation counter, and redefines itself to |\@gobble|.
+% \begin{macrocode}
+\newcommand*\caption@refstepcounter[1]{%
+ \@ifundefined{c@#1}%
+ {\caption@Error{No float type '#1' defined}}%
+ {\caption@ref@stepcounter{#1}%
+% \end{macrocode}
+% Set flag if this part of the figure (or table) contains a caption now.
+% (If |\caption@if|\-|top| is not set, |\caption| is at the bottom of this part,
+% therefore ending this part, so we set the flag to |false| in this case.)
+% \begin{macrocode}
+ \caption@fixposition
+ \caption@iftop\caption@setflag\caption@clrflag2% caption
+% \end{macrocode}
+% This part does not contain content (like sub-figures) yet,
+% so we set |\if|\-|caption@sub|\-|caption| to |false|.
+% \begin{macrocode}
+ \caption@clrflag4% subcaption
+% \end{macrocode}
+% Support of the \textsf{memoir} document class.
+% \begin{macrocode}
+ \@nameuse{donemaincaptiontrue}}}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@ref@stepcounter{%
+ \caption@ifflag1{% ContinuedFloat
+ \let\caption@tempa\caption@@refcounter
+ \caption@clrflag1% ContinuedFloat
+ }{%
+ \let\caption@tempa\caption@@refstepcounter
+ \caption@ifflag2{}{% caption
+ \caption@ifflag4{% subcaption
+% Counter was already incremented by content, so we suppress \stepcounter{#1} here
+ \let\caption@tempa\caption@@refcounter
+ }{}%
+ }%
+ }%
+ \caption@tempa}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@@refcounter[1]{%
+ \let\caption@stepcounter@ORI\stepcounter
+ \def\stepcounter##1{%
+ \def\caption@tempa{#1}%
+ \def\caption@tempb{##1}%
+ \ifx\caption@tempa\caption@tempb \else
+ \caption@stepcounter@ORI{##1}%
+ \fi}%
+ \caption@@@refstepcounter{#1}%
+ \let\stepcounter\caption@stepcounter@ORI}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@@refstepcounter[1]{%
+ \caption@prepare@stepcounter{#1}{ref}%
+ \caption@@@refstepcounter{#1}}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@@stepcounter[1]{%
+ \caption@prepare@stepcounter{#1}{}%
+ \caption@@@stepcounter{#1}}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@prepare@stepcounter[2]{%
+ \caption@addsubcontentslines{#2stepcounter}%
+ \caption@resetContinuedFloat{#1}}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@@@refstepcounter{\refstepcounter}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@@@stepcounter{\stepcounter}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@dblarg}
+% \changes{v3.1}{2007/02/05}{This macro added}
+% \changes{v3.1f}{2007/12/06}{Bugfix 07-12-06: Changed so it works without \cs{kernel@ifnextchar}
+% (which was introduced in \LaTeXe\ 2004/01/23), too}
+% \changes{v3.3}{2012/03/25}{Support of option \opt{list-entry} added}
+% A |\relax| was added compared to |\@dblarg| so |\caption{}| will be
+% expanded to |\caption[\relax]{}| (and not to |\caption[]{}|).
+% Furthermore support for option \opt{list-entry} was added.
+% \begin{macrocode}
+\@ifundefined{kernel@ifnextchar}{\let\kernel@ifnextchar\@ifnextchar}{}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand\caption@dblarg[1]{%
+ \kernel@ifnextchar[{\caption@ydblarg{#1}}{\caption@xdblarg{#1}}}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand\caption@xdblarg[2]{%
+ #1[{#2\relax}]{#2}}
+% \end{macrocode}
+% \begin{macrocode}
+\long\def\caption@ydblarg#1[#2]#3{%
+ \caption@iflistheading{#1[{#3}]{#3}}{#1[{#2}]{#3}}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@begin}
+% \changes{v3.0a}{2004/01/23}{\cs{caption@settype} changed to \cs{caption@setfloattype}}
+% \changes{v3.0e}{2005/04/12}{Check for default label format added}
+% \changes{v3.0f}{2005/06/11}{Usage of \cs{caption@resetContinuedFloat} added}
+% \changes{v3.1}{2007/05/09}{Usage of \cs{caption@setfloattype} \&
+% \cs{caption@resetContinuedFloat} removed}
+% \changes{v3.3}{2011/12/29}{Usage of \cs{caption@fixedposition} removed}
+% Our handling of |\caption| will always be surrounded by
+% |\caption@begin| (or |\caption@beginex|) and |\caption@end|.\par
+% |\caption@begin|\marg{type} performs these tasks:
+% \begin{enumerate}
+% \item[1.] Override the |position=| setting, if necessary.
+% (for example if set to |auto| or used inside a |supertabular|)
+% \item[2.] Start a new group.
+% \item[3.] Define |\fnum@|\meta{type} if the caption label format is set
+% to non-default.
+% \end{enumerate}
+% \begin{macrocode}
+\newcommand*\caption@begin[1]{%
+ \caption@fixposition
+ \begingroup
+ \caption@setfnum{#1}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@beginex}
+% \changes{v3.0b}{2004/05/16}{Support of \opt{listof=} added}
+% \changes{v3.0l}{2007/02/04}{Takes now 3 args instead of 2, check for empty heading added}
+% \changes{v3.1}{2007/07/01}{Makes lst-entry now instead of redefining \cs{addcontentsline}}
+% \changes{v3.2}{2010/10/26}{Bugfix 09-05-15: Setting of \cs{lst@@caption} added}
+% |\caption@beginex|\marg{type}\marg{list entry}\marg{heading}\par
+% performs the same tasks as |\caption@begin| and additionally:
+% \begin{enumerate}
+% \item[4.] Set |\lst@@caption|, so |\fnum@lstlisting| will include a numbering.
+% \item[5.] Make an entry in the list-of-whatever.
+% \item[6.] Set |\caption@ifempty| according argument \meta{heading}.
+% \end{enumerate}
+% \begin{macrocode}
+\newcommand\caption@beginex[3]{%
+ \caption@begin{#1}%
+ \let\lst@@caption\relax
+ \caption@addcontentsline{#1}{#2}%
+ \caption@ifempty{#3}{}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@end}
+% \changes{v3.3}{2011/12/29}{Usage of \cs{caption@fixedposition} removed}
+% |\caption@end| closes the group.
+% \begin{macrocode}
+\newcommand*\caption@end{%
+ \endgroup}
+% \end{macrocode}
+% \end{macro}
+%
+% \changes{v3.0a}{2004/01/23}{%
+% Internal hooks \cs{caption@@begin} \& \cs{caption@@end} added}
+% \changes{v3.0h}{2005/10/06}{%
+% Internal hooks \cs{caption@@begin} \& \cs{caption@@end} removed}
+%
+% \begin{macro}{\caption@setfnum}
+% \changes{v3.1}{2007/03/10}{This macro added}
+% |\caption@setfnum|\marg{type}\\
+% redefines |\fnum@|\meta{type} according the caption label format
+% set with |labelformat=|. But if |labelformat=default| is set,
+% |\fnum@|\meta{type} will not be overwritten by us.
+% \begin{macrocode}
+\newcommand*\caption@setfnum[1]{%
+ \@ifundefined{fnum@#1}{\iftrue}{\ifx\caption@lfmt\caption@lfmt@default\else}%
+ \@namedef{fnum@#1}{\caption@fnum{#1}}%
+ \fi}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@boxrestore}
+% \changes{v3.1}{2007/03/03}{This macro and its usage added}
+% \changes{v3.1b}{2007/09/17}{Bugfix: Redefinition of CR added}
+% \changes{v3.2}{2010/11/07}{Support of option \opt{parboxrestore} added}
+% The original code (from |latex/base/ltboxes.dtx|):
+% \begin{verbatim}
+% \def\@parboxrestore{\@arrayparboxrestore\let\\\@normalcr}
+% \def\@arrayparboxrestore{%
+% \let\if@nobreak\iffalse
+% \let\if@noskipsec\iffalse
+% \let\par\@@par
+% \let\-\@dischyph
+% \let\'\@acci\let\`\@accii\let\=\@acciii
+% \parindent\z@ \parskip\z@skip
+% \everypar{}%
+% \linewidth\hsize
+% \@totalleftmargin\z@
+% \leftskip\z@skip \rightskip\z@skip \@rightskip\z@skip
+% \parfillskip\@flushglue \lineskip\normallineskip
+% \baselineskip\normalbaselineskip
+% \sloppy}
+% \end{verbatim}%^^A
+% This one will be used by |\@caption| instead of |\@parboxrestore|.
+% \begin{macrocode}
+\newcommand*\caption@boxrestore{%
+ \caption@parboxrestore{\@parboxrestore}{%
+ \let\if@nobreak\iffalse
+ \let\if@noskipsec\iffalse
+ \let\par\@@par
+% \let\-\@dischyph
+% \let\'\@acci\let\`\@accii\let\=\@acciii
+ \parindent\z@ \parskip\z@skip
+ \everypar{}%
+% \linewidth\hsize
+% \@totalleftmargin\z@
+ \leftskip\z@skip \rightskip\z@skip \@rightskip\z@skip
+ \parfillskip\@flushglue \lineskip\normallineskip
+ \baselineskip\normalbaselineskip
+ \sloppy
+ \let\\\@normalcr
+ }}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@boxrestore@mini}
+% \changes{v3.2}{2010/10/24}{This macro added}
+% Resets \cs{par} so the very first \cs{par} in \cs{@caption} behaves quite the same as in floating environments.
+% Will be used by \cs{setcaptiontype}.
+% \begin{macrocode}
+\newcommand\caption@boxrestore@mini{%
+ \let\par\@@par
+ \parindent\z@ \parskip\z@skip
+ \sloppy}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@normalsize}
+% \changes{v3.1}{2007/05/05}{This macro and its usage added}
+% This one will be used by |\@caption| instead of |\normalsize|.\par
+% Its code is equivalent to
+% \begin{quote}
+% |\caption@font{normal}%|
+% \end{quote}
+% but executes faster (since the starred form of |\caption@font|
+% does not use |\setkeys| internally).
+% \begin{macrocode}
+\newcommand*\caption@normalsize{%
+ \caption@font*{\KV@caption@fnt@normal\@unused}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@setfloatcapt}
+% Needed for support of the \package{float} package, where the caption will
+% not be typeset directly, but catched in a |\vbox| called |\@floatcapt|
+% instead.
+% \begin{macrocode}
+\let\caption@setfloatcapt\@firstofone
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@makecurrent}
+% This one is needed for support of the \package{nameref} and \package{hyperref} package.
+% \changes{v3.2f}{2012/01/14}{Bugfix: Usage of \cs{caption@gettitle} added}
+% \begin{macrocode}
+\newcommand*\caption@makecurrent[1]{\caption@gettitle}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@makeanchor}
+% \begin{macro}{\caption@start}
+% \begin{macro}{\caption@@start}
+% \begin{macro}{\caption@freezeHref}
+% \begin{macro}{\caption@defrostHref}
+% All these are needed for support of the \package{hyperref} package.
+% \begin{macrocode}
+\let\caption@makeanchor\@firstofone
+\let\caption@start\relax
+\let\caption@@start\relax
+\let\caption@freezeHref\relax
+\let\caption@defrostHref\relax
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+% \end{macro}
+% \end{macro}
+% \end{macro}
+%
+% \begin{macro}{\caption@gettitle}
+% \changes{v3.1}{2007/05/05}{This macro and its usage added}
+% This one is needed for support of the \package{nameref} package.
+% \begin{macrocode}
+\newcommand\caption@gettitle[1]{%
+ \caption@ifundefined\NR@gettitle
+ {\def\@currentlabelname{#1}}%
+ {\NR@gettitle{#1}}}
+% \end{macrocode}
+% \end{macro}
+%
+% \subsection{Support for sub-captions}
+% \changes{v3.1f}{2007/11/16}{Support for sub-captions added}
+%
+% \begin{macro}{\caption@DeclareSubType}
+% |\caption@DeclareSub| initializes the usage of \cs{caption}
+% in sub-floats.
+% \begin{macrocode}
+\def\caption@DeclareSubType sub#1\@nil{%
+ \caption@Debug{Initializing subtype for `#1'\@gobble}%
+ \@namedef{caption@beginsub#1}{\caption@beginsubfloat{#1}}}
+\@onlypreamble\caption@DeclareSubType
+% \end{macrocode}
+% \end{macro}
+%
+% Initialize the sub-captions defined with \cs{DeclareCaptionSubType}\ldots
+% \begin{macrocode}
+\caption@For*{subtypelist}{\caption@DeclareSubType sub#1\@nil}
+% \end{macrocode}
+%
+% Initialize the sub-captions defined with \cs{newsubfloat}\cite{subfig}\ldots
+% \begin{macrocode}
+\caption@AtBeginDocument*{%
+ \caption@ifundefined\sf@counterlist{}{%
+ \@for\sf@temp:=\sf@counterlist\do{%
+ \expandafter\caption@DeclareSubType\sf@temp\@nil}}}
+% \end{macrocode}
+%
+% \begin{macro}{\caption@subtypehook}
+% \changes{v3.1g}{2008/03/20}{Redefinition of \cs{caption@setlist} added}
+% \changes{v3.1k}{2009/10/09}{Bugfix 09-08-12b: \cs{@makecaption} will now be restored here, too}
+% \changes{v3.2}{2011/06/26}{Uses \cs{caption@@addcontentsline} instead of \cs{addcontentsline} now}
+% \changes{v3.2a}{2011/08/17}{Redefinition of \cs{phantomcaption} added}
+% \changes{v3.2a}{2011/08/17}{Usage of \cs{caption@warmup} added}
+% \changes{v3.2c}{2011/09/30}{Bugfix 11-09-26: Usage of \cs{if@subfloatrow} added}
+% \changes{v3.3}{2011/12/28}{Bugfix 11-12-16: \cs{caption@l@stepcounter} replaced by \cs{stepcounter}}
+% \changes{v3.3}{2012/03/15}{Usage of \cs{caption@setbox} added}
+% \changes{v3.3}{2013/05/01}{Redefinition of \cs{caption@settype} added}
+% \changes{v3.3}{2013/06/17}{Missing redefinition of \cs{captionlistentry} added}
+% \changes{v3.3}{2018/09/06}{Adapted to the \package{chkfloat} package}
+% Hook, will be used inside \cs{caption@setsubtype}.\par
+% (Note: If we are inside an |sub|\-|float|\-|row| environment we have to keep
+% the |\@make|\-|caption| code of the \package{floatrow} package intact.)
+% \begin{macrocode}
+\newcommand*\caption@subtypehook{%
+ \ifx\caption\caption@subcaption \else
+ \caption@warmup
+% \end{macrocode}
+% \begin{macrocode}
+ \caption@ifflag2{}{% caption
+% no \caption in this part of the (floating) environment yet
+ \let\caption@add@contentsline\caption@addsubcontentsline
+ \let\caption@addsubcontentslines\@gobble
+ \caption@ifflag4{}{% subcaption
+% no \subcaption in this part of the (floating) environment yet
+ \caption@ifflag1{% ContinuedFloat
+ \caption@clrflag1%
+ }{%
+ \caption@@stepcounter\@captype
+ }%
+ \caption@setflag4% subcaption
+ }%
+ }%
+% \end{macrocode}
+% \begin{macrocode}
+ \c@ContinuedFloat=0\relax
+ \let\caption@setfloatcapt\@firstofone
+ \let\caption@chkfloat\@gobbletwo
+% \end{macrocode}
+% \begin{macrocode}
+ \caption@setbox{none}%
+ \caption@clearmargin
+ \caption@iflist{}{\let\caption@setlist\@gobble}%
+ \caption@setoptions{sub}%
+ \caption@setoptions{subfloat}% for subfig-package compatibility
+% \end{macrocode}
+% \begin{macrocode}
+% redefine \setcaptiontype
+ \def\caption@settype{\caption@withoptargs\caption@sub@settype}%
+ \def\caption@sub@settype##1##2{%
+ \def\caption@tempa{##2}%
+ \ifx\caption@tempa\@captype
+%%% \caption@setsubtype##1\relax
+ \else
+ \caption@Error{##2 inside \@subcaptype}%
+ \fi}%
+% \end{macrocode}
+% \begin{macrocode}
+% redefine \caption
+ \let\caption\caption@subcaption
+ \let\phantomcaption\caption@subphantom
+ \let\captionlistentry\caption@sublistentry
+% \let\@captype\@subcaptype
+ \let\caption@refstepcounter\caption@@@refstepcounter
+% \end{macrocode}
+% \begin{macrocode}
+% restore \@makecaption
+ \if@subfloatrow
+ \caption@Debug{Keeping \string\@makecaption}%
+ \else
+ \let\@makecaption\caption@makecaption
+ \fi
+ \fi}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\if@subfloatrow}
+% \changes{v3.2c}{2011/09/30}{This macro added}
+% This macro tests if we are inside an |sub|\-|float|\-|row| or |sub|\-|float|\-|row*| environment.
+% \begin{macrocode}
+\caption@AtBeginDocument{%
+ \caption@ifundefined\@subfloatrowtrue
+ {\newif\if@subfloatrow
+ \caption@ifundefined\subfloatrow{}%
+ {\caption@Debug{Patching subfloatrow environment}%
+ \g@addto@macro\capsubrowsettings{\@subfloatrowtrue}%
+ \g@addto@macro\killfloatstyle{%
+ \ifx\c@FRobj\c@FRsobj\@subfloatrowtrue\fi}}}%
+ {\caption@Debug{\string\if@subfloatrow is already defined}}}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@subcaption}
+% Makes a sub-caption.
+% \begin{macrocode}
+\newcommand*\caption@subcaption{%
+ \caption@checkgrouplevel{sub}\subcaption
+ \caption@star
+ {\caption@refstepcounter\@subcaptype}%
+ {\caption@dblarg{\@caption\@subcaptype}}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@subphantom}
+% \changes{v3.2a}{2011/08/17}{This macro added}
+% Same as |\phantomcaption|, but for sub-captions.
+% \begin{macrocode}
+\newcommand*\caption@subphantom{%
+ \caption@checkgrouplevel{sub}\phantomsubcaption
+ \caption@refstepcounter\@subcaptype}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@sublistentry}
+% \changes{v3.3}{2013/06/17}{This macro added}
+% Same as |\captionlistentry|, but for sub-captions.
+% \begin{macrocode}
+\newcommand*\caption@sublistentry{%
+ \caption@teststar\@subcaptionlistentry\@firstoftwo\@secondoftwo}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\@subcaptionlistentry[1]{%
+ \@testopt{\caption@listentry{#1}}\@subcaptype}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{caption@clearsubcontentslines}
+% Clear pending sub-caption list entries.
+% \begin{macrocode}
+\newcommand*\caption@clearsubcontentslines{%
+ \global\let\caption@subcontentslines\@empty}
+% \end{macrocode}
+% \begin{macrocode}
+\caption@clearsubcontentslines
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@addsubcontentsline}
+% \changes{v3.1i}{2008/08/02}{Bugfix 08-07-28:
+% \cs{label}, \cs{index}, and \cs{glossary} are allowed inside the list entry now}
+% \changes{v3.2}{2011/06/26}{Uses \cs{caption@@addcontentsline} instead of \cs{addcontentsline} now}
+% \changes{v3.2c}{2011/08/19}{Uses \cs{caption@gobble} instead of \cs{@gobble} now}
+% \changes{v3.3}{2012/01/15}{Debug message added}
+% \changes{v3.3}{2013/03/10}{A single \cs{protect} replaced by \cs{noexpand}}
+% Add a pending sub-caption list entry.
+% \begin{macrocode}
+\newcommand*\caption@addsubcontentsline[4]{%
+ \caption@Debug{\string\caption@addsubcontentsline{#1}{#2}}%
+ \begingroup
+ \let\label\caption@gobble
+ \let\index\caption@gobble
+ \let\glossary\caption@gobble
+ \protected@edef\@tempa{\endgroup
+ \noexpand\g@addto@macro\noexpand\caption@subcontentslines{%
+ \noexpand\@namedef{the#2}{\csname the#2\endcsname}%
+ \ifx\@currentHref\@undefined \else
+ \noexpand\def\noexpand\@currentHref{\@currentHref}%
+ \fi
+ \noexpand\caption@@@addcontentsline{#1}{#2}{#3}{#4}}}%
+ \@tempa}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\flushsubcaptionlistentries}
+% \changes{v3.3}{2012/01/15}{Renamed from \cs{caption@addsubcontentslines} to \cs{flushsubcaptionlistentries}}
+% \changes{v3.3}{2013/03/10}{Bugfix: Missing redefinition of \cs{caption@addsubcontentslines} added}
+% Writes pending sub-caption list entries.
+% \begin{macrocode}
+\newcommand*\flushsubcaptionlistentries{%
+ \caption@addsubcontentslines{user}}
+% \end{macrocode}
+% \begin{macrocode}
+\renewcommand*\caption@addsubcontentslines[1]{%
+ \caption@Debug{\string\flushsubcaptionlistentries (#1)}%
+ \begingroup
+ \caption@subcontentslines
+ \endgroup
+ \caption@clearsubcontentslines}
+% \end{macrocode}
+% We need to patch \cs{chapter} otherwise a vertical gap will be inserted into
+% the list prior pending sub-caption list entries.
+% We do this |\At|\-|Begin|\-|Document| so packages like \package{newfloat}
+% will not complain about an unknown document class.
+% \begin{macrocode}
+\AtBeginDocument{\caption@ifundefined\chapter{}{%
+ \let\caption@chapter@ORI\chapter
+ \def\chapter{%
+ \caption@addsubcontentslines{chapter}\caption@chapter@ORI}}}
+% \end{macrocode}
+% Same for \cs{appendix}.
+% \begin{macrocode}
+\AtBeginDocument{\caption@ifundefined\appendix{}{%
+ \let\caption@appendix@ORI\appendix
+ \def\appendix{%
+ \caption@addsubcontentslines{appendix}\caption@appendix@ORI}}}
+% \end{macrocode}
+% Flush the list of pending sub-caption list entries at the end of the document.
+% \begin{macrocode}
+\AtEndDocument{%
+ \caption@addsubcontentslines{AtEndDocument}}
+% \end{macrocode}
+% \end{macro}
+%
+%
+% \subsection{Document class \& Babel package support}
+%
+% \subsubsection{The \AmS{} \& \SmF{} classes}
+% \changes{v3.1}{2007/07/29}{\AmS\ \& \SmF\ classes support added}
+%
+% \begin{macrocode}
+\caption@ifundefined\smf@makecaption{}{\let\smf@makecaption\@makecaption}
+% \end{macrocode}
+%
+% \subsubsection{The beamer class}
+% \changes{v3.1}{2007/03/10}{beamer class support added}
+%
+% \begin{macrocode}
+\@ifclassloaded{beamer}{%
+ \caption@InfoNoLine{beamer document class}%
+% \end{macrocode}
+%
+% \begin{macro}{\figure}
+% \changes{v3.1f}{2007/12/17}{This re-definition for \class{beamer} document class added}
+% \changes{v3.3d}{2019/09/01}{This re-definition for \class{beamer} document class revised}
+% We redefine |figure| so our type-specific options will be used etc.
+% \begin{macrocode}
+ \let\caption@ORI@figure\figure
+ \def\figure{\caption@settype{figure}\caption@ORI@figure}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\table}
+% \changes{v3.1f}{2007/12/17}{This re-definition for \class{beamer} document class added}
+% \changes{v3.3d}{2019/09/01}{This re-definition for \class{beamer} document class revised}
+% We redefine |table| so our type-specific options will be used etc.
+% \begin{macrocode}
+ \let\caption@ORI@table\figure
+ \def\table{\caption@settype{table}\caption@ORI@table}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+}{}
+% \end{macrocode}
+%
+% \subsubsection{The \KOMAScript{} classes}
+%
+% \KOMAScript\ contains the code
+% |\AtBeginDocument{\let\scr@caption\caption}|
+% so we need to update |\scr@caption| here, too.
+%
+% \begin{macrocode}
+\caption@ifundefined\scr@caption{}{%
+ \caption@AtBeginDocument{\let\scr@caption\caption}}
+% \end{macrocode}
+%
+% \subsubsection{The frenchb Babel option}
+% \changes{v3.1}{2006/05/14}{Adaptation to \package{frenchb} added}
+%
+% Suppress
+% ``Package |frenchb.ldf| Warning: The definition of |\@makecaption| has been
+% changed, frenchb will NOT customize it.''
+% (but only if we emulate this customization)
+% \begin{macrocode}
+\@nameuse{caption@frenchb}\@nameundef{caption@frenchb}
+% \end{macrocode}
+%
+% \subsubsection{The frenchle/pro package}
+% \changes{v3.0h}{2005/10/03}{Adaptation to \package{frenchle/pro} added}
+%
+% \begin{macrocode}
+\caption@AtBeginDocument{\caption@ifundefined\frenchTeXmods{}{%
+ \caption@InfoNoLine{frenchle/pro package is loaded}%
+% \end{macrocode}
+%
+% \begin{macrocode}
+ \let\captionfont@ORI\captionfont
+ \let\captionlabelfont@ORI\captionlabelfont
+ \let\@makecaption@ORI\@makecaption
+% \end{macrocode}
+
+% If |\GOfrench| is defined as |\relax| all the re-definitions regarding
+% captions have already been done, so we can do our patches immediately.
+% Otherwise we must add our stuff to |\GOfrench|.
+% \begin{macrocode}
+ \caption@ifundefined\GOfrench
+ {\let\caption@tempa\@firstofone}%
+ {\def\caption@tempa{\g@addto@macro\GOfrench}}%
+ \caption@tempa{%
+% \end{macrocode}
+%
+% \begin{macrocode}
+ \let\captionfont\captionfont@ORI
+ \let\captionfont@ORI\@undefined
+ \let\captionlabelfont\captionlabelfont@ORI
+ \let\captionlabelfont@ORI\@undefined
+ \let\@makecaption\@makecaption@ORI
+ \let\@makecaption@ORI\@undefined
+% \end{macrocode}
+%
+% \begin{macro}{\@cnORI}
+% We update the definition of |\@cnORI| so it actually reflects
+% our definition of |\caption|.
+% \begin{macrocode}
+ \let\@cnORI\caption
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\@tablescaption}
+% The \package{frenchle/pro} package sets |\caption| to |\@tablescaption| at
+% |\begin{table}| for special treatment of footnotes.
+% Therefore we have to patch |\@tablescaption| so |\caption*| will work
+% inside the |table| environment.
+% \begin{macrocode}
+ \let\caption@tcORI\@tablescaption
+ \def\@tablescaption{\caption@star\relax\caption@tcORI}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\f@ffrench}
+% \begin{macro}{\f@tfrench}
+% |\f@ffrench| and |\f@tfrench| reflect |\fnum@figure| and |\fnum@table|
+% when used in French mode. These contain additional code which typesets
+% the caption separator |\captionseparator| instead of the usual colon.
+% Because this breaks with our |\@makecaption| code we have to remove
+% this additional code here.
+% \begin{macrocode}
+ \let\@eatDP\@undefined
+ \let\caption@tempa\@empty
+ \ifx\f@ffrench\fnum@figure
+ \l@addto@macro\caption@tempa{\let\fnum@figure\f@ffrench}%
+ \fi
+ \ifx\f@tfrench\fnum@table
+ \l@addto@macro\caption@tempa{\let\fnum@table\f@tfrench}%
+ \fi
+ \def\f@ffrench{\ifx\listoffigures\relax\else\figurename~\thefigure\fi}%
+ \def\f@tfrench{\ifx\listoftables\relax\else\tablename~\thetable\fi}%
+ \caption@tempa
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+%
+% \begin{macrocode}
+ }%
+}}
+% \end{macrocode}
+%
+% \subsubsection{The hungarian and magyar Babel option}
+% \changes{v3.2}{2009/03/29}{\package{magyar} package support added}
+% \changes{v3.3}{2018/08/26}{\package{magyar} package support revised}
+%
+% \begin{macrocode}
+\def\caption@tempa#1{%
+ \@ifpackagewith{babel}{#1}{%
+ \caption@InfoNoLine{#1 babel option is loaded}%
+ \expandafter\addto\csname extras#1\endcsname{%
+ % reverse changes made by magyar.ldf
+ \let\@makecaption\caption@makecaption
+ \babel@save\@makecaption
+ \caption@redefine
+ \babel@save\@caption}%
+ }{}}
+% \end{macrocode}
+% \begin{macrocode}
+\caption@tempa{hungarian}%
+\caption@tempa{magyar}%
+% \end{macrocode}
+%
+% \subsection{Package support}
+% \changes{v3.1}{2007/04/11}{Package options `float', `longtable' etc.
+% are not supported anymore, removed}
+%
+% \begin{macro}{\caption@IfPackageLoaded}
+% \changes{v3.0f}{2005/05/29}{3rd argument \meta{code} added,
+% so no extra check is needed}
+% \changes{v3.1}{2007/07/04}{Re-written \& renamed from \cs{caption@ifpackage}
+% to \cs{caption@IfPackageLoaded}}
+% \changes{v3.3}{2018/12/26}{Bugfix: Missing curly braces added}
+% |\caption@IfPackageLoaded|\marg{package}\oarg{version}\marg{true}\marg{false}\par
+% Some kind of combination of |\@ifpackageloaded| and |\@ifpackagelater|.
+% If the \meta{package} is not loaded yet, the check will be (re-)done
+% |\AtBeginDocument|, so the \meta{package} could be loaded later on, too.
+% \begin{macrocode}
+\newcommand\caption@IfPackageLoaded[1]{%
+ \@testopt{\caption@@IfPackageLoaded{#1}}{}}
+\@onlypreamble\caption@IfPackageLoaded
+% \end{macrocode}
+% \begin{macrocode}
+\long\def\caption@@IfPackageLoaded#1[#2]#3#4{%
+ \@ifpackageloaded{#1}\@firstofone{%
+ \caption@Debug{#1 package is not loaded (yet)\@gobble}%
+ \caption@AtBeginDocument}{%
+ \caption@If@Package@Loaded{#1}[{#2}]{#3}{#4}}}
+\@onlypreamble\caption@@IfPackageLoaded
+% \end{macrocode}
+% \begin{macrocode}
+\long\def\caption@If@Package@Loaded#1[#2]{%
+ \@ifpackageloaded{#1}{%
+ \caption@InfoNoLine{#1 package is loaded}%
+ \@ifpackagelater{#1}{#2}\@firstoftwo{%
+ \caption@Error{%
+ For a successful cooperation we need at least version\MessageBreak
+ `#2' of package #1,\MessageBreak
+ but only version\MessageBreak
+ `\csname ver@#1.\@pkgextension\endcsname'\MessageBreak
+ is available}%
+ \@secondoftwo}%
+ }{\@secondoftwo}}
+\@onlypreamble\caption@If@Package@Loaded
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@clearmargin}
+% \changes{v3.1}{2007/05/05}{This macro and its usage added}
+% This macro will be used by some package support stuff where the usual
+% margin setting is not welcome, e.g. in the \package{sidecap} package.
+% \begin{macrocode}
+\newcommand*\caption@clearmargin{%
+ \setcaptionmargin\z@
+ \let\caption@minmargin\@undefined}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+\caption@setbool{needfreeze}{0}
+\caption@AtBeginDocument*{%
+ \caption@ifneedfreeze{%
+% \end{macrocode}
+%
+% \begin{macro}{\caption@freezetype}
+% \changes{v3.3}{2013/05/01}{This macro added}
+% |\caption@freezetype|\marg{type}\par
+% Used by the \package{fltpage} \& \package{sidecap} package support.
+% \begin{macrocode}
+ \newcommand*\caption@freezetype[1]{%
+ \caption@settype*{#1}%
+ \captionsetup*[sub]{hypcap=true}% Note: This is just a (q&d) workaround!
+ \caption@freeze}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@freeze}
+% \changes{v3.1}{2007/07/22}{This macro added}
+% \changes{v3.1c}{2007/10/06}{\cs{caption} \& \cs{@caption} revised for enhanced compatibility}
+% \changes{v3.1c}{2007/10/06}{Bugfix: Made \cs{@caption} long}
+% \changes{v3.1f}{2007/11/16}{Uses `space hack' instead of \cs{ignorespaces} now}
+% \changes{v3.1g}{2008/01/29}{Starred variants of \cs{ContinuedFloat} and \cs{captionsetup} added}
+% \changes{v3.2}{2010/10/26}{Bugfix 10-09-01a: Uses \cs{ignorespaces} instead of `space hack' again}
+% \changes{v3.2a}{2011/08/17}{Starred variant of \cs{caption@freeze} removed}
+% \changes{v3.2b}{2011/08/18}{Redefines \cs{caption@setup} instead of \cs{captionsetup} now}
+% \changes{v3.2b}{2011/08/18}{Redefinition of \cs{label} revised}
+% \changes{v3.2c}{2011/08/21}{Revised}
+% \changes{v3.3}{2013/01/06}{Adapted to new switch \cs{caption@caption} etc.}
+% |\caption@freeze|\par
+% Used by the \package{bicaption} package.
+% \begin{macrocode}
+ \newcommand*\caption@freeze{%
+ \let\caption@frozen@ContinuedFloat\ContinuedFloat
+ \def\ContinuedFloat{%
+ \caption@@freeze{\caption@@@@ContinuedFloat\@captype}%
+ \caption@frozen@ContinuedFloat}%
+% \end{macrocode}
+% \begin{macrocode}
+ \let\caption@frozen@setup\caption@setup
+ \def\caption@setup##1{%
+ \caption@@freeze{\caption@setup{##1}}%
+ \caption@frozen@setup{##1}}%
+% \end{macrocode}
+% \begin{macrocode}
+ \let\caption@frozen@caption\caption
+ \def\caption{%
+ \def\caption{%
+ \caption@Error{%
+ Only one \noexpand\caption can be placed in this environment}%
+ \caption@gobble}%
+ \@ifstar
+ {\caption@SC@caption*}%
+ {\let\@currentlabel\caption@SClabel
+ \caption@withoptargs\caption@SC@caption}}%
+ \long\def\caption@SC@caption##1##2{%
+ \caption@@freeze{\caption##1{##2}}%
+ \ignorespaces}%
+% \end{macrocode}
+% \begin{macrocode}
+ \let\caption@frozen@label\label
+ \def\label{%
+ \caption@withoptargs\caption@SC@label}%
+ \def\caption@SC@label##1##2{%
+ \ifx\@currentlabel\caption@SClabel
+ \@bsphack
+ \caption@freeze@label{##1}{##2}%
+ \@esphack
+ \else
+ \caption@frozen@label##1{##2}%
+ \fi}%
+ \def\caption@SClabel{\caption@undefinedlabel}%
+ \def\caption@freeze@label##1##2{%
+ \caption@@freeze{\label##1{##2}}}%
+% \end{macrocode}
+% \begin{macrocode}
+ \global\let\caption@frozen@content\@empty
+ \long\def\caption@@freeze{%
+ \g@addto@macro\caption@frozen@content}%
+% \end{macrocode}
+% \begin{macrocode}
+ \def\caption@warmup{%
+ \let\ContinuedFloat\caption@frozen@ContinuedFloat
+ \let\caption@setup\caption@frozen@setup
+ \let\caption\caption@frozen@caption
+ \let\label\caption@frozen@label}}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@prepare@defrost}
+% \changes{v3.3}{2013/01/06}{This macro added}
+% Prevent resetting the caption flags
+% \begin{macrocode}
+ \newcommand*\caption@prepare@defrost{%
+ \let\caption@settype\caption@set@type}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@defrost}
+% \changes{v3.1}{2007/07/22}{This macro added}
+% \changes{v3.1g}{2008/01/30}{\cs{caption@defrost@setup} added}
+% \changes{v3.2c}{2011/08/21}{Adapted to changes of \cs{caption@freeze}}
+% \changes{v3.2c}{2011/08/21}{\cs{caption@defrost@setup} removed}
+% |\caption@defrost|
+% \begin{macrocode}
+ \newcommand*\caption@defrost{%
+ \ifx\caption@frozen@caption\@undefined
+ \caption@frozen@content
+ \else
+ \caption@Error{Internal Error:\MessageBreak
+ \noexpand\caption@defrost in same group as \string\caption@freeze}%
+ \fi}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+ }{}%
+ \caption@undefbool{needfreeze}}
+% \end{macrocode}
+%
+% \begin{macro}{\caption@warmup}
+% \changes{v3.2a}{2011/08/17}{This macro added}
+% |\caption@warmup|
+% \begin{macrocode}
+\let\caption@warmup\relax
+% \end{macrocode}
+% \end{macro}
+%
+% \subsubsection{The chkfloat package}
+% \changes{v3.3}{2018/09/06}{Support of the \package{chkfloat} package added}
+%
+% \begin{macrocode}
+\caption@IfPackageLoaded{chkfloat}[2012/08/19 v0.1]{%
+% \end{macrocode}
+%
+% \begin{macro}{\caption@chkfloat}
+% \changes{v3.3}{2018/09/06}{This macro added}
+% \begin{macrocode}
+ \caption@ifundefined\chkfloat@addcontentsline{%
+ \renewcommand\caption@chkfloat[2]{%
+ \caption@ifundefined\chkfloat@page{}{%
+ \addtocontents{fof}{\protect\chkfloat@{\thepage}{\chkfloat@page}{\csname fnum@#1\endcsname: #2}}}}%
+ }{%
+ \renewcommand\caption@chkfloat{\chkfloat@addcontentsline}%
+ }%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+ }{}%
+% \end{macrocode}
+%
+% \subsubsection{The float package}
+% \changes{v3.0f}{2005/05/31}{\package{float} package support rewritten and improved}
+% \iffalse
+% (This is a more straight-ahead implementation, but it only works with v1.3
+% now, so v1.2 is no longer supported. The old code including documentation
+% can be found in caption-30f-050530.zip)
+% \fi
+%
+% The \package{float} package usually do not use the \LaTeX\ kernel command
+% |\@caption| to typeset the caption but |\float@caption| instead.
+% (|\@caption| will only be used if the float is re-styled with
+% |\restylefloat*|.)
+%
+% The main two things |\float@caption| is doing different are:
+% \begin{itemize}
+% \item The caption will be typeset inside a |\savebox| called |\@floatcapt|
+% so it can be placed above or below the float contents afterwards.
+% \item |\@makecaption| will not be used to finally typeset the caption.
+% Instead |\@fs@capt| will be used which definition is part of the float
+% style.
+% (Note that |\@fs@capt| will not typeset any vertical space above or below
+% the caption; instead this space will be typeset by the float style code
+% itself.)
+% \end{itemize}
+%
+% \begin{macrocode}
+\caption@IfPackageLoaded{float}[2001/11/08 v1.3d]{%
+ \@ifpackageloaded{floatrow}{%
+ \caption@If@Package@Loaded{floatrow}[2007/08/24 v0.2a]{}{}%
+ }{%
+% \end{macrocode}
+%
+% \begin{macro}{\@float@setevery}
+% \changes{v3.1k}{2009/10/09}{Bugfix 08-12-05: \cs{color@begin/endgroup} added
+% to redefinition of \cs{caption@setfloatcapt}}
+% |\@float@setevery|\marg{float type} is provided by the \package{float}
+% package; it's called every time a floating environment defined with
+% |\newfloat| or |\restylefloat| begins.
+% We use this hook to do some adaptations and to setup the proper caption
+% style (if defined) and additional settings declared with
+% |\captionsetup|\oarg{float style}.
+% \begin{macrocode}
+ \let\caption@ORI@float@setevery\@float@setevery
+ \def\@float@setevery#1{%
+ \float@ifcaption{#1}{%
+% \end{macrocode}
+%
+% First of all we set the caption position to it's proper value by
+% converting |\@fs@iftopcapt| (which is part of a float style and
+% controls where the caption will be typeset, above or below the float
+% contents) to our |position=| setting.
+% Since the spacing above and below the caption will be done by the float
+% style and \emph{not} by us this sounds quite useless. But in fact it isn't,
+% since some packages based on \thispackage\ (like the \package{subfig}
+% package) could have an interest for this information and therefore use the
+% |\caption@iftop| macro we provide in our kernel. Furthermore we need this
+% information for ourself in |\captionof| which uses |\@makecaption| to
+% finally typeset the caption with skips.
+% \begin{macrocode}
+ \caption@setposition{\@fs@iftopcapt t\else b\fi}%
+% \end{macrocode}
+%
+% Afterward we redefine |\caption@setfloatcapt| (which will be used inside
+% |\@caption|) so the caption will be set inside the box |\@floatcapt|,
+% without extra vertical space.
+% \begin{macrocode}
+ \renewcommand\caption@setfloatcapt[1]{%
+ \let\@makecaption\caption@@make
+ \global\setbox\@floatcapt\vbox{%
+ \color@begingroup ##1\color@endgroup}}%
+% \end{macrocode}
+%
+% To allow different caption styles for different float styles we also
+% determine the current float style (e.g. `ruled') and select
+% a caption style (and additional settings) with the same name, if defined.
+% \begin{macrocode}
+ \float@getstyle\float@style{#1}%
+ \caption@setstyle*\float@style
+ \caption@setoptions\float@style
+% \end{macrocode}
+%
+% \begin{macrocode}
+ }{}%
+ \caption@freezeHref % will be defrosted in \float@makebox
+ \caption@ORI@float@setevery{#1}}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\float@makebox}
+% \changes{v3.3}{2013/01/06}{Corrects wrong load order hyperref-float now}
+% \changes{v3.3}{2013/02/03}{Correction of wrong load order hyperref-float revised}
+% Redefine |\float@makebox| (only if we are not operating in compatibility mode).
+% \begin{macrocode}
+ \caption@AtBeginDocument{\caption@ifcompatibility{}{%
+% \end{macrocode}
+% If it was redefined by the \package{hyperref} package,
+% we need to build on the original definition (and not on the redefined one).
+% \begin{macrocode}
+ \caption@ifundefined\HyOrg@float@makebox
+ {\let\caption@ORI@float@makebox\float@makebox}%
+ {\let\caption@ORI@float@makebox\HyOrg@float@makebox}%
+ \renewcommand\float@makebox[1]{%
+ \caption@ORI@float@makebox{#1\relax \caption@defrostHref}}%
+% \end{macrocode}
+% \begin{macrocode}
+ }}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@typehook}
+% \changes{v3.1}{2007/07/08}{float package hook added}
+% \LaTeX\ and almost every other packages use
+% |\|\meta{type}|name|
+% to provide a macro for the type resp.~environment name -- for example
+% the command |\figurename| will usually contain the name of the floating
+% environment |figure|:
+% \begin{quote}
+% |\newcommand\figurename{Figure}|
+% \end{quote}
+% But the \package{float} package doesn't follow this common naming
+% convention:
+% For floats defined with |\newfloat| it uses |\fname@|\meta{type} instead,
+% which breaks with our code (and with |\autoref| and some other things as
+% well).
+% So we have to map the \package{float} package name to the common one here.\par
+% \Note{If the float was not defined with \cs{newfloat} but with
+% \cs{restylefloat} instead, \cs{fname@}\meta{type} is not defined.}
+% \begin{macrocode}
+ \g@addto@macro\caption@typehook{%
+ \expandafter\ifx\csname #1name\endcsname\relax
+ \expandafter\let\csname #1name\expandafter\endcsname
+ \csname fname@#1\endcsname
+ \fi}%
+% \end{macrocode}
+% \end{macro}
+%
+% \changes{v3.0f}{2005/06/26}{Skips of \env{plaintop} and \env{boxed} floats corrected}
+% \begin{macro}{\fs@plaintop}
+% \begin{macro}{\fs@boxed}
+% Since the float styles |plaintop| and |boxed| don't use |\abovecaptionskip|
+% which could be set with |skip=| (|plaintop| uses |\belowcaptionskip| instead of
+% |\abovecaptionskip|, and |boxed| uses a fixed space of |2pt|)
+% we patch the according float style macros here to change this.
+% \begin{macrocode}
+ \g@addto@macro\fs@plaintop{\def\@fs@mid{\vspace\abovecaptionskip\relax}}%
+ \g@addto@macro\fs@boxed{\def\@fs@mid{\kern\abovecaptionskip\relax}}%
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+%
+% \begin{macro}{\float@getstyle}
+% \changes{v3.1}{2007/06/10}{This macro added}
+% |\float@getstyle|\marg{cmd}\marg{type}\par
+% Determining the float style is not so easy because the only hint
+% provided by the \package{float} package is the macro
+% |\fst@|\meta{float type} which points to the macro which represents the
+% float style. So for example after
+% \begin{quote}
+% |\floatstyle{ruled}|\\
+% |\newfloat{Program}{tbp}{lop}|
+% \end{quote}
+% |\fst@Program| will be defined as
+% \begin{quote}
+% |\def\fst@Program{\fs@ruled}|\quad.
+% \end{quote}\par
+% So here is what we do: We make the first level expansion of
+% |\fst@|\meta{float type} a string so we can gobble the first four tokens
+% (= |\fs@|), so only the the name of the float style is left.\par
+% \emph{TODO:} We need to convert the catcodes here.
+% \begin{macrocode}
+ \providecommand*\float@getstyle[2]{%
+ \edef#1{%
+ \noexpand\expandafter\noexpand\@gobblefour\noexpand\string
+ \expandafter\expandafter\expandafter\noexpand
+ \csname fst@#2\endcsname}%
+ \edef#1{#1}%
+ \caption@Debug{floatstyle{#2} = `#1'}}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\float@ifcaption}
+% \changes{v3.1}{2007/06/23}{This macro added}
+% |\float@ifcaption|\marg{type}\marg{if-clause}\marg{else-clause}\par
+% Here we determine if the user has used |\newfloat| resp.~|\restylefloat|,
+% or |\restylefloat*|.
+% This is quite easy: If |\@float@c@|\meta{captype} is the same as
+% |\float@caption|, the user has used |\newfloat| or |\restylefloat|,
+% otherwise we assume he has used |\restylefloat*|.
+% (This test will fail if some package re-defines |\float@caption|,
+% so we have to assume that there is no one.)
+% \begin{macrocode}
+ \providecommand*\float@ifcaption[1]{%
+ \expandafter\ifx\csname @float@c@#1\endcsname\float@caption
+ \expandafter\@firstoftwo
+ \else
+ \expandafter\@secondoftwo
+ \fi}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+}}{%
+ \providecommand*\float@ifcaption[1]{\@secondoftwo}%
+% \clearcaptionsetup{boxed}% used by the floatrow package?
+}
+% \end{macrocode}
+%
+% The skip between `boxed' floats and their caption defaults to |2pt|.
+%
+% \begin{macrocode}
+\captionsetup[boxed]{skip=2pt} % do not issue a warning when not used
+% \end{macrocode}
+%
+% \changes{v3.0f}{2005/05/26}{\opt{strut=0} added to caption style \opt{ruled}}
+% \changes{v3.0f}{2005/05/27}{Option \opt{ruled} fixed}
+% To emulate the `ruled' definition of |\@fs@capt| we provide a caption style
+% `ruled' with appropriate options. But if the package option |ruled| was
+% specified, we setup some caption parameters to emulate the behavior
+% of \thispackage\ \version{1.x} option |ruled| instead, i.e.,
+% the current caption settings will be used, but without margin and without
+% `single-line-check'.
+% \begin{macrocode}
+\caption@ifbool{ruled}{%
+ \captionsetup[ruled]{margin=0pt,minmargin=0,slc=0}%
+}{%
+ \DeclareCaptionStyle{ruled}{labelfont=bf,labelsep=space,strut=0}%
+}
+\caption@undefbool{ruled}
+% \end{macrocode}
+%
+% \subsubsection{The floatflt package}
+% \changes{v3.1}{2007/06/10}{Support of the \package{floatflt} package added}
+%
+% \begin{macrocode}
+\caption@IfPackageLoaded{floatflt}[1996/02/27 v1.3]{%
+% \end{macrocode}
+%
+% \begin{macro}{\floatingfigure}
+% We patch |\floatingfigure| so |\caption@floatflt| will be used.
+% \begin{macrocode}
+ \let\caption@ORI@floatingfigure\floatingfigure
+ \def\floatingfigure{%
+ \caption@floatflt{figure}%
+ \caption@ORI@floatingfigure}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\floatingtable}
+% Same with |\floatingtable|\ldots
+% \begin{macrocode}
+ \let\caption@ORI@floatingtable\floatingtable
+ \def\floatingtable{%
+ \caption@floatflt{table}%
+% \caption@setautoposition b%
+ \caption@ORI@floatingtable}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@floatflt}
+% \changes{v3.1c}{2007/10/06}{Bugfix: \cs{caption@clearmargin} added}
+% Here we do two things:
+% \begin{enumerate}
+% \item We use |\caption@set|\-|options{|\-|floating|\meta{type}|}| so
+% |\caption|\-|setup[|\-|floating|\meta{type}|]{|\ldots|}| is supported.
+% \item |\line|\-|width| must be set correctly.
+% Usually this is done by |\@par|\-|box|\-|restore| inside |\@caption|,
+% but since we use |\@caption@box|\-|restore| we have to map this to
+% |\@par|\-|box|\-|restore| instead.
+% \end{enumerate}
+% \begin{macrocode}
+ \newcommand*\caption@floatflt[1]{%
+ \caption@settype{#1}%
+ \caption@clearmargin
+ \caption@setfullparboxrestore
+ \caption@setoptions{floating#1}}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+}{}
+% \end{macrocode}
+%
+% \subsubsection{The fltpage package}
+% \changes{v3.1}{2007/07/22}{Support of the \package{fltpage} package added}
+%
+% \begin{macrocode}
+\caption@IfPackageLoaded{fltpage}[1998/10/29 v.0.3]{%
+ \caption@setbool{needfreeze}{1}%
+% \end{macrocode}
+%
+% \begin{macro}{\FP@positionLabel}
+% \changes{v3.2c}{2011/08/28}{This redefinition added}
+% Original code:
+% \begin{verbatim}
+% \newcommand{\FP@positionLabel}{%
+% FP\@captype-\number\value{FP@\@captype C}-pos}
+% \end{verbatim}%^^A
+% \begin{macrocode}
+ \renewcommand\FP@positionLabel{%
+ FP\FP@captype-\number\value{FP@\FP@captype C}-pos}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\FP@helpNote}
+% Original code:
+% \begin{verbatim}
+% \newcommand{\FP@helpNote}[2]{%
+% \typeout{FP#1 is inserted on page \pageref{#2}!}}%
+% \end{verbatim}%^^A
+% \begin{macrocode}
+ \renewcommand\FP@helpNote[2]{%
+ \begingroup % save \caption@thepage
+ \caption@pageref{#2}%
+ \typeout{FP#1 is inserted on page \caption@thepage!}%
+ \endgroup}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\FP@floatBegin}
+% \changes{v3.1f}{2007/11/16}{Uses `space hack' instead of \cs{ignorespaces} now}
+% \changes{v3.1k}{2009/10/09}{Bugfix 09-09-11: Missing \cs{ignorespaces} added}
+% \changes{v3.2c}{2011/08/28}{Adapted to current version of \cs{caption@freeze}}
+% \changes{v3.2f}{2012/02/19}{Bugfix 12-02-16: \texttt{minipage} environment added}
+% \changes{v3.3}{2013/05/01}{Usage of \cs{caption@freeze} replaced by \cs{caption@freezetype}}
+% Original code:
+% \begin{verbatim}
+% \newcommand{\FP@floatBegin}[1]{%
+% \gdef\@captype{#1}%
+% \global\let\FP@savedCaptionCommand\caption%
+% \global\let\FP@savedLabelCommand\label%
+% \ifthenelse{\equal{\@captype}{figure}}
+% {\global\let\old@Fnum\fnum@figure}%
+% {\global\let\old@Fnum\fnum@table}%
+% \let\FP@LabelText\@empty%
+% \let\FP@CaptionText\@empty%
+% \let\FP@optionalCaptionText\@empty%
+% \renewcommand\label[1]{\gdef\FP@LabelText{##1}}%
+% \renewcommand\caption[2][]{%
+% \gdef\FP@optionalCaptionText{##1}\gdef\FP@CaptionText{##2}}%
+% \begin{lrbox}{\FP@floatCorpusBOX}%
+% }%
+% \end{verbatim}%^^A
+% \begin{macrocode}
+ \renewcommand*\FP@floatBegin[1]{%
+ \def\FP@captype{#1}%
+ \begin{lrbox}{\FP@floatCorpusBOX}%
+ \minipage\hsize % changes from LR mode to vertical mode
+ \caption@freezetype{#1}%
+ \ignorespaces}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\FP@floatEnd}
+% \changes{v3.1g}{2008/01/30}{Some minor bugfixes}
+% \changes{v3.2c}{2011/08/28}{Adapted to current version of \cs{caption@freeze}}
+% \changes{v3.2f}{2012/02/19}{Bugfix 12-02-16: \texttt{minipage} environment added}
+% Original code:
+% \begin{verbatim}
+% \newcommand{\FP@floatEnd}{%
+% \end{lrbox}%
+% \global\setbox\FP@floatCorpusBOX=\box\FP@floatCorpusBOX
+% \stepcounter{FP@\@captype C}%
+% \FP@savedLabelCommand{\FP@positionLabel}%
+% \FP@helpNote{\@captype}{\FP@positionLabel}%
+% \FP@float
+% {\FP@positionLabel}% location label test
+% {\begin{\@captype}[p!]
+% \usebox{\FP@floatCorpusBOX}%
+% \refstepcounter{\@captype}%
+% \ifthenelse{\equal{\FP@LabelText}{\@empty}}
+% {}{\FP@savedLabelCommand{\expandafter\protect\FP@LabelText}}%
+% \end{\@captype}}
+% {\addtocounter{\@captype}{-1}}
+% {\begin{\@captype}[b!]%
+% \ifthenelse{\equal{\FP@guide}{\@empty}}%
+% {}{\ifthenelse{\equal{\@captype}{figure}}%
+% {\renewcommand{\fnum@figure}{\old@Fnum\ {\FP@guide}}}%
+% {\renewcommand{\fnum@table}{\old@Fnum\ {\FP@guide}}}}%
+% \setlength{\abovecaptionskip}{2pt plus2pt minus 1pt} % length above caption
+% \setlength{\belowcaptionskip}{2pt plus2pt minus 1pt} % length above caption
+% \FP@separatorCaption%
+% \ifthenelse{\equal{\FP@optionalCaptionText}{\@empty}}%
+% {\FP@savedCaptionCommand{\expandafter\protect\FP@CaptionText}}%
+% {\FP@savedCaptionCommand[\expandafter\protect\FP@optionalCaptionText]%
+% {\expandafter\protect\FP@CaptionText}}%
+% \end{\@captype}}%
+% }%
+% \end{verbatim}%^^A
+% \begin{macrocode}
+ \renewcommand*\FP@floatEnd{%
+ \endminipage
+ \end{lrbox}%
+% \end{macrocode}
+% \begin{macrocode}
+ \stepcounter{FP@\FP@captype C}%
+ \caption@label\FP@positionLabel
+ \FP@helpNote\FP@captype\FP@positionLabel
+% \end{macrocode}
+% \begin{macrocode}
+ \FP@float
+ {\FP@positionLabel}% location label test
+ {\caption@prepare@defrost
+ \begin\FP@captype[p!]%
+ \usebox\FP@floatCorpusBOX
+ \end\FP@captype}%
+ {\@ifundefined{theH\FP@captype}{}{%
+ \expandafter\l@addto@macro\csname theH\FP@captype\endcsname{.FP}}}%
+ {\caption@prepare@defrost
+ \begin\FP@captype[b!]%
+ \let\FP@savedSetfnumCommand\caption@setfnum
+ \def\caption@setfnum##1{%
+ \FP@savedSetfnumCommand{##1}%
+ \ifx\FP@guide\@empty \else
+ \expandafter\l@addto@macro\csname fnum@##1\endcsname{\ {\FP@guide}}%
+ \fi}%
+ \setlength\abovecaptionskip{2pt plus 2pt minus 1pt}% length above caption
+ \setlength\belowcaptionskip{2pt plus 2pt minus 1pt}% length below caption
+ \caption@setoptions{FP\@captype}%
+ \FP@separatorCaption
+ \caption@defrost
+ \end\FP@captype}%
+ }%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+}{%
+ \let\caption@ifFPlistcap\@undefined
+ \let\caption@ifFPrefcap\@undefined
+}
+% \end{macrocode}
+%
+% \subsubsection{The hyperref package}
+% \changes{v3.0f}{2005/06/11}{Support of the \package{hyperref} package added}
+% \changes{v3.1}{2007/03/09}{Usage of \cs{hyper@makecurrent} instead of
+% \cs{theHfigure} as indicator for \package{hyperref} package}
+% \changes{v3.2}{2011/07/30}{Test if \package{hyperref} has stopped early revised}
+% \changes{v3.2c}{2011/08/24}{Test if \package{hyperref} has stopped early adapted to current version of \package{hyperref} package: Usage of \cs{IfHyperBoolean} added}
+%
+% \begin{macrocode}
+\caption@IfPackageLoaded{hyperref}[2003/11/30 v6.74m]{%
+ % Test if hyperref has stopped early
+ \caption@ifundefined\IfHyperBoolean{%
+ \caption@set@bool\caption@ifhyp@stoppedearly0%
+ \caption@ifundefined\H@refstepcounter
+ {\caption@set@bool\caption@ifhyp@stoppedearly1}{%
+ \caption@ifundefined\hyper@makecurrent
+ {\caption@set@bool\caption@ifhyp@stoppedearly1}{%
+ \caption@ifundefined\measuring@true
+ {\caption@set@bool\caption@ifhyp@stoppedearly1}{}}}%
+ }{%
+ \def\caption@ifhyp@stoppedearly{\IfHyperBoolean{stoppedearly}}%
+ }%
+ \caption@ifhyp@stoppedearly{% hyperref has stopped early
+ \caption@InfoNoLine{%
+ Hyperref support is turned off\MessageBreak
+ because hyperref has stopped early}%
+ }{%
+ \g@addto@macro\caption@prepareslc{\measuring@true}%
+% \end{macrocode}
+%
+% \begin{macro}{\caption@@@refstepcounter}
+% We redefine |\caption@@refstepcounter| so |\H@refstepcounter| will be used
+% instead of |\refstepcounter| inside |\caption| \& |\captionlistentry|.
+% \begin{macrocode}
+ \renewcommand*\caption@@@refstepcounter{\H@refstepcounter}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@makecurrent}
+% \changes{v3.1l}{2010/01/09}{Adapted to current version of nameref package}
+% We redefine |\caption@makecurrent| so a \package{hyperref} label
+% will be defined inside |\@caption|.
+% \Note{Will be redefined by \cs{caption@start}.}
+% \begin{macrocode}
+ \renewcommand*\caption@makecurrent[2]{%
+ \caption@makecurrentHref{#1}%
+ \caption@Debug{hyperref current=\@currentHref}%
+ \caption@gettitle{#2}}%
+% \end{macrocode}
+% \begin{macrocode}
+ \newcommand*\caption@makecurrentHref{\hyper@makecurrent}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@makeanchor}
+% \changes{v3.1l}{2010/01/09}{Adapted to the current hyperref package}
+% We redefine |\caption@makeanchor| so a \package{hyperref} anchor
+% will be set inside |\@caption|.
+% \Note{Will be redefined by \cs{caption@start}.}
+% \begin{macrocode}
+ \renewcommand\caption@makeanchor[1]{%
+ \caption@Debug{hyperref anchor: \@currentHref}%
+ % If we cannot have nesting, the anchor is empty.
+ \ifHy@nesting
+ \expandafter\hyper@@anchor\expandafter{\@currentHref}{#1}%
+ \else
+ \Hy@raisedlink{%
+ \expandafter\hyper@@anchor\expandafter{\@currentHref}{\relax}%
+ }#1%
+ \fi}%
+% \end{macrocode}
+% \begin{macrocode}
+ \g@addto@macro\caption@prepareslc{\let\caption@makeanchor\@firstofone}%
+% \end{macrocode}
+% \end{macro}
+%
+% \paragraph{The hypcap option}
+%
+% \begin{macro}{\if@capstart}
+% Like the \package{hypcap} package we define the switch |\if@capstart|, too.
+% \begin{macrocode}
+ \newif\if@capstart
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@start}
+% \changes{v3.0l}{2007/02/20}{%
+% \cs{caption@currentHref} renamed to \cs{hc@currentHref}}
+% \changes{v3.1}{2007/06/21}{%
+% This macro renamed from \cs{capstart} to \cs{caption@start} and revised}
+% While the \package{hypcap} package defines a macro called |\capstart|
+% our variant is called |\caption@start| and is controlled by the option
+% |hypcap=||false|/|true|.
+% \begin{macrocode}
+ \def\caption@start{\caption@ifhypcap\caption@start@\relax}%
+ \def\caption@start@{%
+% \end{macrocode}
+% Generate the \package{hyperref} label and set the \package{hyperref} anchor,
+% usually (if |hypcap=false|) both is done inside |\@caption|.
+% \begin{macrocode}
+ \caption@makestart\@captype
+ \caption@startanchor\@currentHref
+% \end{macrocode}
+% Prevent |\@caption| from generating a new \package{hyperref} label,
+% use the label we save in |\hc@currentHref| instead.
+% (We also support the |@capstart| flag from the \package{hypcap} package.)
+% \begin{macrocode}
+ \global\@capstarttrue
+ \let\hc@currentHref\@currentHref
+ \def\caption@makecurrentHref##1{%
+ \global\@capstartfalse
+ \global\let\@currentHref\hc@currentHref}%
+% \end{macrocode}
+% Prevent |\@caption| from generating a \package{hyperref} anchor since this
+% has already been done.
+% \begin{macrocode}
+ \let\caption@makeanchor\@firstofone
+% \end{macrocode}
+% \begin{macrocode}
+ }%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@makestart}
+% \changes{v3.1c}{2007/09/30}{\cs{@currentHref} will be extended by \texttt{caption}
+% instead of \texttt{xxx} now}
+% |\caption@makestart|\marg{type}
+% defines a \package{hyperref} anchor inside |\caption@start|.\par
+% Since we offer |\ContinuedFloat| the float counter can change between
+% `now' and |\caption|, i.e., we simply don't know the figure or table counter
+% yet and therefore we are not able to generate the `right' \package{hyperref}
+% label.
+% Two different solutions of this problem came into my mind:
+% \begin{enumerate}
+% \item I could use the aux file for this purpose.\par
+% -or-
+% \item I set |hypertexnames=false| locally.
+% Furthermore I use |#1.caption.|\meta{counter} (instead of |#1.|\meta{counter})
+% as naming scheme for |\@currentHref| to avoid conflicts with other hyper
+% links which are generated with |hypertexnames=true|.
+% \end{enumerate}
+% The first idea has the advantage that the `right' anchor name will be
+% generated, but one needs an additional \LaTeX\ run if figures or tables
+% will be inserted or removed.\par
+% The second idea has the advantage that it's very easy to implement, but
+% has some side-effects, e.g. the anchor names don't follow the figure or
+% table label names anymore.\par
+% Since I'm lazy I implemented the second idea, maybe I will revise this
+% later on.
+% \begin{macrocode}
+ \newcommand*\caption@makestart[1]{%
+ \begingroup
+ \Hy@hypertexnamesfalse
+% \gdef\@currentHlabel{}%
+ \hyper@makecurrent{#1.caption}%
+ \endgroup
+ \caption@Debug{hypcap start=\@currentHref}}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@startanchor}
+% \changes{v3.1b}{2007/09/17}{Bugfix 06-09-17: We use \cs{caption@anchor} instead of \cs{hyper@@anchor}}
+% \changes{v3.1g}{2008/03/16}{Warning about TeX mode replaced with debug info}
+% |\caption@startanchor|\marg{Href}
+% sets a \package{hyperref} anchor inside |\caption@start|.\par
+% This code was taken from the \package{hypcap} package\cite{hypcap} and adapted.
+% \Note{Since \cs{hyper@@anchor}\marg{Href}\csmarg{\string\relax} can cause
+% a change from vertical mode to horizontal mode (design flaw in
+% \package{hyperref} package!?), and since the workaround
+% \cs{let}\cs{leavevmode}\cs{relax} which can be found in the
+% \package{hypcap} package is not always sufficient
+% (for example with ``Direct pdfmark support'' and \texttt{breaklinks=true}),
+% we use \cs{caption@anchor} instead of \cs{hyper@@anchor} here.}
+% \begin{macrocode}
+ \newcommand*\caption@startanchor[1]{%
+ \ifvmode\begingroup
+ \caption@Debug{hypcap anchor: #1 (vertical mode)}%
+ \@tempdima\prevdepth
+ \nointerlineskip
+ \vspace*{-\caption@hypcapspace}%
+ \caption@anchor{#1}%
+ \vspace*{\caption@hypcapspace}%
+ \prevdepth\@tempdima
+ \endgroup\else
+ \caption@Debug{hypcap anchor: #1 (horizontal mode)}%
+ \caption@anchor{#1}%
+ \fi}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@anchor}
+% \changes{v3.1c}{2007/10/17}{Workaround 07-10-17: We use \cs{caption@raisedlink} instead of \cs{Hy@raisedlink} now}
+% |\caption@anchor|\marg{Href} sets a \package{hyperref} anchor.
+% \begin{macrocode}
+ \newcommand*\caption@anchor[1]{%
+ \ifmeasuring@ \else
+ \caption@raisedlink{\hyper@anchorstart{#1}\hyper@anchorend}%
+ \fi}%
+% \end{macrocode}
+% \Note{Since \cs{Hy@raisedlink} change \cs{@tempdima} we surrounded it by \cs{ifvmode},
+% suppressing ``\texttt{LaTeX Warning: Float too large for page by 1.0pt}'' in \texttt{sideways} floats.
+% (This is not necessary since \package{hyperref} \version{6.77}.)}
+% \begin{macrocode}
+ \ifx\HyperRaiseLinkLength\@tempdima
+ \def\caption@raisedlink#1{\ifvmode#1\else\Hy@raisedlink{#1}\fi}%
+ \else
+ \let\caption@raisedlink\Hy@raisedlink
+ \fi
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@@start}
+% Will be used by |\caption@freezeHref|. Apart from that we issue a warning
+% if we expect a saved \package{hyperref} label coming from |\caption@start|,
+% but there isn't any.
+% \begin{macrocode}
+ \def\caption@@start{%
+ \caption@ifundefined\hc@currentHref{%
+ \caption@Warning{%
+ The option `hypcap=true' will be ignored for this\MessageBreak
+ particular \string\caption}}{}}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@freezeHref}
+% Suppress |\caption@start| from generating a \package{hyperref} label and
+% setting a \package{hyperref} anchor. Instead if |\@caption| generates a
+% \package{hyperref} label, it will be stored in |\caption@currentHref|.
+% Furthermore we need to redefine |\caption@setfloatcapt| so no
+% \package{hyperref} anchor will be placed in |\@caption|.
+% \iffalse
+% (Since |\caption@setfloatcapt| will be set to |\@firstofone| inside
+% |\subcaption| there is no need to add its restauration to
+% |\caption@subtypehook|.)
+% \fi
+% \begin{macrocode}
+ \def\caption@freezeHref{%
+ \let\caption@ORI@start\caption@start
+ \def\caption@start{\let\caption@start\caption@ORI@start}%
+% \end{macrocode}
+% \begin{macrocode}
+% \let\caption@ORI@@start\caption@@start
+% \l@addto@macro\caption@subtypehook{%
+% \let\caption@@start\caption@ORI@@start}%
+% \end{macrocode}
+% \begin{macrocode}
+ \global\let\caption@currentHref\@undefined
+ \def\caption@@start{\global\let\caption@currentHref\@currentHref}%
+% \end{macrocode}
+% \begin{macrocode}
+ \let\caption@ORI@setfloatcapt\caption@setfloatcapt
+ \renewcommand*\caption@setfloatcapt{%
+ \ifx\caption@currentHref\@undefined \else
+ \let\caption@makeanchor\@firstofone
+ \fi
+ \caption@ORI@setfloatcapt}}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@defrostHref}
+% If there is a freezed |\@currentHref|, we set the \package{hyperref}
+% anchor here.
+% \begin{macrocode}
+ \def\caption@defrostHref{%
+ \ifx\caption@currentHref\@undefined \else
+ \caption@startanchor\caption@currentHref
+ \global\let\caption@currentHref\@undefined
+ \fi}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+ }}{}
+% \end{macrocode}
+%
+% \subsubsection{The hypcap package}
+% \changes{v3.0f}{2005/06/22}{Support of the \package{hypcap} package added}
+% \changes{v3.0l}{2007/02/20}{Adapted to \package{hypcap} \version{1.6}}
+% \changes{v3.1e}{2007/11/04}{\package{hypcap} support adapted to \package{hyperref} \version{6.77}}
+%
+% \begin{macrocode}
+\caption@IfPackageLoaded{hypcap}{% v1.0
+ \ifx\caption@start\relax \else % hyperref hasn't stopped early
+% \end{macrocode}
+%
+% If the \package{hypcap} package was loaded, we give up our own
+% hyperlink placement algorithm and give the control over the placement
+% to the \package{hypcap} package instead.
+%
+% \begin{macro}{\capstart}
+% \changes{v3.1k}{2009/10/09}{Support of \cs{ifcapstart} (\package{hypcap} package \version{1.10}) added}
+% We do this simply by mapping |\capstart| to |\caption@start@|,
+% although our code does not behave exactly like the original one:
+% The original |\capstart| has an effect on the next |\caption|
+% only but our version affects \emph{all} |\caption|s in the same
+% environment, at least unless a new |\capstart| will be placed.
+% \begin{macrocode}
+ \let\caption@ORI@capstart\capstart % save for compatibility mode
+ \caption@ifundefined\capstarttrue % check for v1.10 of hypcap package
+ {\def\capstart{\caption@start@}}%
+ {\def\capstart{\ifcapstart\caption@start@\fi}}%
+ \let\caption@start\relax
+ \let\caption@@start\relax
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@hypcapspace}
+% Furthermore we map our |\caption@hypcapspace| to |\hypcapspace|
+% offered by the \package{hypcap} package.
+% \begin{macrocode}
+ \caption@set@bool\caption@ifhypcap 1%
+ \renewcommand*\caption@hypcapspace{\hypcapspace}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+ \fi}{}
+% \end{macrocode}
+%
+% \subsubsection{The listings package}
+% \changes{v3.0b}{2004/05/16}{Support of the \package{listings} package added}
+%
+% \begin{macrocode}
+\caption@IfPackageLoaded{listings}[2004/02/13 v1.2]{%
+% \end{macrocode}
+%
+% \begin{macro}{\lst@MakeCaption}
+% \changes{v3.1g}{2008/01/20}{Bugfix: Skips are handled correctly now}
+% \changes{v3.1k}{2008/03/29}{Bugfix 08-10-16-dctt: \texttt{rule=0} added}
+% \changes{v3.2}{2010/10/26}{Bugfix 10-07-20a: Set \cs{hsize} to \cs{linewidth}, if necessary}
+% To support the \package{listings} package we need to redefine
+% |\lst@MakeCaption| so the original stuff is nested with
+% |\caption@begin| and |\caption@end| etc.
+% \Note{This macro is always called twice (with `t' resp. `b' as
+% parameter), therefore we need an extra group here.}
+% \begin{macrocode}
+ \let\caption@ORI@lst@MakeCaption\lst@MakeCaption
+ \def\lst@MakeCaption#1{% #1 is `t' or `b'
+ \begingroup
+% \end{macrocode}
+% Workaround for bug in \package{listings} package:
+% If |\hsize| seems not to be set correctly, we set it to |\linewidth|.
+% \changes{v3.3}{2018/04/30}{Bugfix from Ulrike Fischer applied, see also \url{https://github.com/axelsommerfeldt/caption/issues/1}}
+% \begin{macrocode}
+ \@tempdima\linewidth
+ \advance\@tempdima\lst@xleftmargin
+ \advance\@tempdima\lst@xrightmargin
+ \ifdim\hsize>\@tempdima
+ \hsize\@tempdima
+ \fi
+% \end{macrocode}
+% First of all, we set |position=#1| and if it was set to `top',
+% we swap the skips so the default behavior of the \package{listings} package
+% will not be changed. (Note that the \package{listings} package has set its
+% own |\abovecaptionskip| \& |\belowcaptionskip| values prior to calling
+% \cs{lst@MakeCaption}.)
+% \begin{macrocode}
+ \caption@setposition{#1}%
+ \caption@iftop{%
+ \@tempdima\belowcaptionskip
+ \belowcaptionskip\abovecaptionskip
+ \abovecaptionskip\@tempdima}{}%
+% \end{macrocode}
+% Workaround for issue with wrong skips (FIXME: should be examined further)
+% \begin{macrocode}
+ \caption@setup{rule=0}%
+% \end{macrocode}
+% Afterwards we set the local `lstlisting' options.
+% \begin{macrocode}
+ \caption@setoptions{lstlisting}%
+% \end{macrocode}
+% If the |position=| is now set to |auto|, we take over the |captionpos=|
+% setting from the \package{listings} package.
+% \begin{macrocode}
+ \caption@setautoposition{#1}%
+% \end{macrocode}
+% At the end we do similar stuff as in our \cs{@caption} code.
+% \begin{macrocode}
+ \caption@begin{lstlisting}%
+ \caption@ORI@lst@MakeCaption{#1}%
+ \caption@end
+% \end{macrocode}
+% \begin{macrocode}
+ \endgroup}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\lst@makecaption}
+% \begin{macro}{\lst@maketitle}
+% Wrapper macros for typesetting the |caption=| resp. |title=| value.
+% \begin{macrocode}
+ \def\lst@makecaption{\caption@starfalse\@makecaption}%
+ \def\lst@maketitle{\caption@startrue\@makecaption\@empty}%
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+%
+% \begin{macro}{\ext@lstlisting}
+% \changes{v3.1}{2007/03/03}{This macro added}
+% Since the \package{listings} package do not define |\ext@lstlisting|
+% but we needed it when |\captionof{lstlisting}| will be done by the end user,
+% we define it here.
+% \begin{macrocode}
+ \providecommand*\ext@lstlisting{lol}%
+% \end{macrocode}
+% \end{macro}
+%
+% \changes{v3.1a}{2007/07/13}{Bugfix 07-09-13: \cs{lst@@caption} will not be re-defined anymore}
+%
+% \begin{macrocode}
+}{}
+% \end{macrocode}
+%
+% \subsubsection{The longtable package}
+%
+% \begin{macro}{\LTcaptype}
+% \changes{v3.1}{2007/07/06}{This macro and its support added}
+% |\LTcaptype| is preset to |table|.
+% \begin{macrocode}
+\providecommand*\LTcaptype{table}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+\caption@IfPackageLoaded{longtable}[1995/05/24 v3.14]{%
+% \end{macrocode}
+% \begin{macrocode}
+ \RequirePackage{ltcaption}[=2018/08/26]%
+ \let\LT@@makecaption\@undefined
+% \end{macrocode}
+%
+% \begin{macro}{\LT@array}
+% \changes{v3.1}{2007/07/22}{This redefinition added}
+% \changes{v3.1a}{2007/09/14}{Bugfix 07-09-14: Redefinition of \cs{@captionabovetrue} \& \cs{@captionabovefalse} added}
+% \changes{v3.1a}{2007/09/16}{Bugfix: This redefinition will always be done \cs{AtBeginDocument}}
+% \changes{v3.1g}{2008/01/20}{Bugfix in \cs{captionlistentry}: Table counter will not be incremented anymore, \cs{nameref} works}
+% \changes{v3.3}{2016/01/31}{Support for \cs{bicaption} added}
+% \changes{v3.3}{2018/10/05}{Definition of \cs{captionlistentry} fixed}
+% We redefine |\LT@array| here to get |\captionsetup|\marg{options}
+% working inside |longtable|s.
+% \Note{Since the \package{hyperref} package patches \cs{LT@array} as well
+% and since this only works with the original definition of \cs{LT@array},
+% we have to do this after the \package{hyperref} package,
+% i.e.~\cs{AtBeginDocument}.}
+% \begin{macrocode}
+ \caption@AtBeginDocument{%
+ \let\caption@ORI@LT@array\LT@array
+ \renewcommand*\LT@array{%
+% \end{macrocode}
+% |\captionsetup| for longtable:
+% \begin{macrocode}
+ \global\let\caption@opt@@longtable\@undefined
+ \def\captionsetup{%
+ \noalign\bgroup
+ \@ifstar\@captionsetup\@captionsetup}% gobble *
+ \def\@captionsetup##1{\LT@captionsetup{##1}\egroup}%
+ \def\LT@captionsetup##1{%
+ \captionsetup@startrue\caption@setup@options[@longtable]{##1}%
+ \global\let\caption@opt@@longtable\caption@opt@@longtable}%
+% \end{macrocode}
+% |\captionabove| \& |\captionbelow| for longtable: (\KOMAScript\ document class)
+% \begin{macrocode}
+ \def\@captionabovetrue{\LT@captionsetup{position=t}}%
+ \def\@captionabovefalse{\LT@captionsetup{position=b}}%
+% \end{macrocode}
+% |\captionlistentry| for longtable:
+% \begin{macrocode}
+ \def\captionlistentry{%
+ \noalign\bgroup
+ \@ifstar{\egroup\LT@listentry\LTcaptype}% gobble *
+ {\egroup\LT@listentry\LTcaptype}}%
+% \end{macrocode}
+% |\ContinuedFloat| for longtable:\\
+% {\small(Commented out, since it's not deeply tested and quite useless anyway)}
+% \Note{\package{hyperref} versions $<$ v6.76j uses $2\times$ \cs{hyper@makecurrent}}
+% \begin{macrocode}
+% \caption@ifhypcap{%
+% \let\caption@ORI@hyper@makecurrent\hyper@makecurrent
+% \def\hyper@makecurrent##1{%
+% \let\hyper@makecurrent\caption@ORI@hyper@makecurrent
+% \caption@makestart{##1}%
+%% \let\Hy@LT@currentHlabel\@currentHlabel
+% \let\Hy@LT@currentHref\@currentHref
+% \def\hyper@makecurrent####1{%
+%% \let\@currentHlabel\Hy@LT@currentHlabel
+% \let\@currentHref\Hy@LT@currentHref}}%
+% \let\caption@ORI@ContinuedFloat\ContinuedFloat
+% \def\ContinuedFloat{\noalign{%
+% \gdef\caption@setContinuedFloat{%
+% \let\caption@resetContinuedFloat\@gobble}%
+% \def\caption@setoptions####1{%
+% \g@addto@macro\caption@setContinuedFloat{%
+% \caption@setoptions{####1}}}%
+% \let\@captype\LTcaptype
+% \caption@ORI@ContinuedFloat}}%
+% }{%
+% \def\ContinuedFloat{\noalign{%
+% \caption@Error{%
+% \noexpand\ContinuedFloat inside longtables\MessageBreak
+% is only available with `hypcap=true'}}}%
+% }%
+% \global\let\caption@setContinuedFloat\@empty
+ \def\ContinuedFloat{\noalign{%
+ \caption@Error{\noexpand\ContinuedFloat outside float}}}%
+% \end{macrocode}
+% |\bicaption| for longtable:
+% \begin{macrocode}
+ \let\bicaption\LT@bicaption
+% \end{macrocode}
+%
+% \begin{macrocode}
+ \caption@ORI@LT@array}}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\LT@capti@n}
+% \changes{v3.3}{2016/02/01}{This re-definition added}
+% The original implementation:
+% \begin{verbatim}
+% \def\LT@capti@n{%
+% \@ifstar
+% {\egroup\LT@c@ption\@gobble[]}%
+% {\egroup\@xdblarg{\LT@c@ption\@firstofone}}}
+% \end{verbatim}%^^A
+% Our implementation uses |\caption@xdblarg| instead of |\@xdblarg|:
+% \begin{macrocode}
+ \def\LT@capti@n{%
+ \@ifstar
+ {\egroup\LT@c@ption\@gobble[]}%
+ {\egroup\caption@xdblarg{\LT@c@ption\@firstofone}}}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\LT@makecaption}
+% \changes{v3.0d}{2004/08/10}{%
+% Bugfix 04-08-04: \cs{abovecaptionskip} \& \cs{belowcaptionskip} will be used now}
+% \changes{v3.0e}{2005/05/05}{%
+% Bugfix: \cs{captionsetup[longtable]} overrides \cs{LTcapwidth} now}
+% \changes{v3.0h}{2005/10/07}{\cs{caption@LT@make} introduced}
+% \changes{v3.3}{2016/02/01}{Support for \cs{bicaption} via \cs{caption@LT@setup} added}
+% \changes{v3.3a}{2019/04/02}{Work-around for problem with \package{floatrow} added}
+% |\LT@makecaption|\marg{cmd}\marg{label}\marg{text}\par
+% \smallskip
+% The original definition:
+% \begin{verbatim}
+% \def\LT@makecaption#1#2#3{%
+% \LT@mcol\LT@cols c{\hbox to\z@{\hss\parbox[t]\LTcapwidth{%
+% % Based on article class "\@makecaption", "#1" is "\@gobble" in star
+% % form, and "\@firstofone" otherwise.
+% \sbox\@tempboxa{#1{#2: }#3}%
+% \ifdim\wd\@tempboxa>\hsize
+% #1{#2: }#3%
+% \else
+% \hbox to\hsize{\hfil\box\@tempboxa\hfil}%
+% \fi
+% \endgraf\vskip\baselineskip}%
+% \hss}}}
+% \end{verbatim}%^^A
+% Our definition:
+% \begin{macrocode}
+ \renewcommand\LT@makecaption[3]{%
+ \caption@LT@make{%
+ \caption@LT@settype\LTcaptype
+% \end{macrocode}
+%
+% |\caption@LT@setup| is re-defined inside the \package{bicaption} package
+% and contains the preparation of typesetting of the bilingual caption.
+% \begin{macrocode}
+ \caption@LT@setup
+% \end{macrocode}
+%
+% \iffalse
+% The default |position=| setting for longtables is |top|.
+% (This emulates the standard behavior of the \package{longtable} package
+% which has no skip above the caption but a skip below it.)
+% \fi
+%
+% |position=auto| is a bad idea for longtables, but we do our very best.
+% This works quite well for captions inside the longtable contents, but
+% not for captions inside the longtable (end)foot.
+% \Note{This should be `top' if unclear!}
+% \begin{macrocode}
+ \caption@setautoposition{\ifcase\LT@rows t\else b\fi}%
+% \end{macrocode}
+%
+% We set |\ifcaption@star| according the 1st argument.
+% \begin{macrocode}
+ \caption@startrue#1\caption@starfalse
+% \end{macrocode}
+%
+% \begin{macrocode}
+ \caption@prepare@stepcounter\LTcaptype{LT}%
+% \end{macrocode}
+%
+% \changes{v3.1}{2007/05/05}{\cs{caption@normalsize} added}
+% \begin{macrocode}
+ \caption@begin\LTcaptype
+ \caption@normalsize
+% \end{macrocode}
+%
+% The following skip has the purpose to correct the height of the
+% |\parbox[t]|. Usually it's the height of the very first line, but
+% because of our extra skips (|\abovecaptionskip| and |\belowcaptionskip|)
+% it's always |0pt|.\par
+% (A different idea would be typesetting the first skip outside the longtable
+% column with |\noalign{\vskip|\ldots|}|, but this means we have to move
+% |\caption@begin| to some other place because it does not work in tabular
+% mode. And at the moment I have no idea on how to do this in an elegant
+% way\ldots)
+% \begin{macrocode}
+ \vskip-\ht\strutbox
+% \end{macrocode}
+%
+% Work-around for problem with \package{floatrow}:
+% The |\belowcaptionskip| disturbs the environment in which the caption is actually typeset (by creating extra, unwanted space),
+% so we supress this skip if the \package{floatrow} package is loaded.
+% (This fixes \issue{50})
+% \begin{macrocode}
+ \caption@ifundefined\FBifcaptop{}{%
+ \let\caption@belowskip\@empty}%
+% \end{macrocode}
+%
+% The following code should look familiar. We do our skips and use
+% |\caption@@make| to typeset the caption itself.
+% \begin{macrocode}
+ \caption@make@above
+ \caption@@make{#2}{#3}\endgraf
+ \caption@make@below
+ \caption@end}}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\LT@listentry}
+% \changes{v3.3}{2018/08/26}{This macro added}
+% \changes{v3.3}{2018/10/05}{Bugfix: \cs{ignorespaces} added}
+% \changes{v3.3}{2018/12/26}{Bugfix: Missing curly braces added}
+% \begin{macrocode}
+ \renewcommand*\LT@listentry[2]{%
+ \begingroup
+ \caption@LT@settype{#1}%
+ \caption@listentry\@firstoftwo[{#1}]{#2}%
+ \endgroup\ignorespaces}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@LT@settype}
+% \changes{v3.3}{2018/08/26}{This macro added}
+% \changes{v3.3}{2018/10/05}{Uses argument no. 1 instead of \cs{LTcaptype}}
+% \begin{macrocode}
+ \newcommand*\caption@LT@settype[1]{%
+ \caption@settype*{#1}%
+% \end{macrocode}
+% If |\LTcapwidth| is not set to its default value |4in| we assume
+% that it shall overwrite our own setting.
+% (But |\captionsetup[longtable]{width=|\ldots|}| will overwrite |\LTcapwidth|.)
+% \begin{macrocode}
+ \ifdim\LTcapwidth=4in \else
+ \setcaptionwidth\LTcapwidth
+ \fi
+% \end{macrocode}
+% \begin{macrocode}
+ \caption@setoptions{longtable}%
+% \caption@setContinuedFloat
+% \end{macrocode}
+% Finally set options applied by |\captionsetup| inside the longtable.
+% \begin{macrocode}
+ \caption@setoptions{@longtable}}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+}{}
+% \end{macrocode}
+%
+% \begin{macro}{\caption@LT@setup}
+% \changes{v3.3}{2016/02/01}{This macro added}
+% Hook for stuff which prepares the typesetting of the \package{longtable} caption.
+% \begin{macrocode}
+\providecommand*\caption@LT@setup{}
+% \end{macrocode}
+% \end{macro}
+%
+% \subsubsection{The picinpar package}
+% \changes{v3.1}{2007/06/13}{Support of the \package{picinpar} package added}
+%
+% \begin{macrocode}
+\caption@IfPackageLoaded{picinpar}{%
+% \end{macrocode}
+%
+% \begin{macro}{\figwindow}
+% \begin{macro}{\tabwindow}
+% The \package{picinpar} package comes with its own caption code
+% (|\wincaption|, |\@wincaption|, |\@makewincaption|, \ldots)
+% so we redefine |\figwindow| \& |\tabwindow| to use |\caption| instead.
+% \begin{macrocode}
+ \long\def\figwindow[#1,#2,#3,#4] {%
+ \caption@window{figure}%
+ \caption@setoptions{figwindow}%
+ \begin{window}[#1,#2,{#3},\caption@wincaption{#4}] }%
+% \end{macrocode}
+% \begin{macrocode}
+ \long\def\tabwindow[#1,#2,#3,#4] {%
+ \caption@window{table}%
+ \caption@setoptions{tabwindow}%
+ \begin{window}[#1,#2,{#3},\caption@wincaption{#4}] }%
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+%
+% \begin{macro}{\caption@window}
+% \changes{v3.1c}{2007/10/06}{Bugfix: \cs{caption@clearmargin} added}
+% Beside calling |\caption@settype| we redefine |\caption@boxrestore|
+% (as in \package{floatflt} \& \package{picins} package support)
+% and |\@makecaption| (as in \package{float} package support) here.
+% \begin{macrocode}
+ \newcommand*\caption@window[1]{%
+ \let\@makecaption\caption@@make
+ \caption@setautoposition b%
+ \caption@settype{#1}%
+ \caption@clearmargin
+ \caption@setfullparboxrestore}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@wincaption}
+% \changes{v3.1d}{2007/10/25}{Missing \% added}
+% \changes{v3.3}{2013/04/14}{\cs{caption@ContinuedFloattrue} added}
+% \changes{v3.3}{2018/10/06}{\cs{caption@ContinuedFloattrue} replaced by \cs{caption@setflag1}}
+% This one finally typesets the caption using |\caption|.
+% \begin{macrocode}
+ \newcommand\caption@wincaption[1]{%
+% \end{macrocode}
+% This will be done twice for every |figwindow| \& |tabwindow| caption --
+% on the first run |\picwd| is |0pt|, on the second run |\picwd| is |\hsize|.
+% \begin{macrocode}
+ \ifdim\picwd=\z@
+ \let\caption@makecurrent\@gobbletwo
+ \let\caption@@start\relax
+ \caption@prepareslc
+ \else
+ \caption@setflag1%
+ \fi
+% \end{macrocode}
+% The argument |#1| could contain simply the caption text
+% (e.g.~|A figure caption|), but it could also contain an optional argument,
+% the \meta{lst\_entry}
+% (e.g.~|[An| |entry| |to| |the| |LOF]||{A| |figure| |caption}|).
+% Therefore we have to test if |#1| begins with~|[| or not; furthermore we
+% support a starred variant -- as in |\caption*| -- so we test for~|*|, too.
+% \begin{macrocode}
+ \edef\@tempa{\expandafter\noexpand\@car#1\@nil}%
+ \if\@tempa*%
+ \let\@tempa\@firstofone
+ \else\if\@tempa[%]
+ \let\@tempa\@firstofone
+ \else
+ \let\@tempa\@empty
+ \fi\fi
+ \expandafter\caption\@tempa{#1}}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+}{}
+% \end{macrocode}
+%
+% \subsubsection{The picins package}
+% \changes{v3.0j}{2006/01/26}{Support of the \package{picins} package added}
+%
+% \begin{macro}{\piccaptiontype}
+% |\piccaptiontype|\marg{type}\par
+% We offer this macro for changing the \meta{type} of the caption, so the user
+% doesn't have to redefine |\@captype|, as proposed in the \package{picins}
+% documentation.
+% \Note{We define this macro here so it can be used in the
+% preamble of the document, even when \thispackage\ was loaded prior to the
+% \package{picins} package.}
+% \begin{macrocode}
+\newcommand*\piccaptiontype[1]{\def\@piccaptype{#1}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+\caption@IfPackageLoaded{picins}{%
+% \end{macrocode}
+%
+% Initial set |\@piccaptype| and undefine |\@captype| which was set to
+% |figure| by the \package{picins} package.
+% \begin{macrocode}
+ \caption@ifundefined\@piccaptype{%
+ \caption@iftype{%
+ \let\@piccaptype\@captype
+ }{%
+ \def\@piccaptype{figure}%
+ }%
+ }{}%
+ \let\@captype\@undefined
+% \end{macrocode}
+%
+% \begin{macro}{\piccaption}
+% The original code:
+% \begin{verbatim}
+% \def\piccaption{\@ifnextchar [{\@piccaption}{\@piccaption[]}}
+% \end{verbatim}%^^A
+% Our code uses |\caption@star| so |\piccaption*| works,
+% and |\caption@dblarg| so |\piccaption{}| works correctly.
+% \begin{macrocode}
+ \def\piccaption{\caption@star\relax{\caption@dblarg\@piccaption}}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\make@piccaption}
+% \changes{v3.1}{2007/12/06}{Bugfix: \cs{caption@clearmargin} will always be used now}
+% The original code:
+% \begin{verbatim}
+% \def\make@piccaption{%
+% [...]
+% \setbox\@TEXT=\vbox{\hsize\hsiz@\caption[\sh@rtf@rm]{\capti@nt@xt}}%
+% }
+% \end{verbatim}%^^A
+% In our code we have to correct several things:
+% \begin{enumerate}
+% \item |\@captype| must be defined, since we have removed the global
+% definition.
+% \item We use |\caption@setoptions{parpic}| so
+% |\captionsetup[parpic]{|\ldots|}| is supported.
+% \item |\linewidth| must be set correctly.
+% Usually this is done by |\@parboxrestore| inside |\@caption|,
+% but since we use |\@caption@boxrestore| we have to map this to
+% |\@parboxrestore| instead.
+% \item The two arguments of |\caption| (|\sh@rtf@rm| \& |\capti@nt@xt|)
+% should be expanded on first level so |\caption[]{|\ldots|}| and
+% |\caption[|\ldots|]{}| work correctly.
+% \end{enumerate}
+% \begin{macrocode}
+ \let\caption@ORI@make@piccaption\make@piccaption
+ \def\make@piccaption{%
+ \let\caption@ORI\caption
+% \end{macrocode}
+% \begin{macrocode}
+ \long\def\caption[##1]##2{%
+ \caption@freezeHref % will be defrosted in \ivparpic
+ \caption@settype\@piccaptype
+% \ifnum\c@piccaptionpos>2\relax
+ \caption@clearmargin
+% \else
+% \captionwidth\z@ % do not use "width=" setting
+% \fi
+ \caption@setfullparboxrestore
+ \caption@setoptions{parpic}%
+ \caption@setautoposition b%
+% \end{macrocode}
+% \begin{macrocode}
+ \expandafter\expandafter\expandafter\caption@ORI
+ \expandafter\expandafter\expandafter[%
+ \expandafter\expandafter\expandafter{%
+ \expandafter##1\expandafter}\expandafter]\expandafter{##2}}%
+% \end{macrocode}
+% {\footnotesize\begin{quote}
+% \leavevmode\llap{-or-\quad}%^^A
+% |\begingroup|\\
+% | \toks0\expandafter{##1}| |\toks2\expandafter{##2}|\\
+% | \edef\x{\endgroup|\\
+% | \noexpand\caption@ORI[{\the\toks0}]{\the\toks2}}|\\
+% | \x|
+% \end{quote}
+% \begin{quote}
+% \leavevmode\llap{-or-\quad}%^^A
+% |\edef\x{%|\\
+% | \noexpand\caption@ORI[{\unexpanded\expandafter{##1}}]%|\\
+% | {\unexpanded\expandafter{##2}}}|\\
+% |\-|
+% \end{quote}}
+% \begin{macrocode}
+ \caption@ORI@make@piccaption
+ \let\caption\caption@ORI}%
+% \end{macrocode}
+% \end{macro}
+%
+
+% \begin{macro}{\ivparpic}
+% \changes{v3.3}{2018/12/26}{Bugfix: Missing curly braces added}
+% We need to set our \package{hyperref} anchor here.
+% Not bullet-proof since we have to redefine |\noindent| here!
+% \begin{macrocode}
+ \let\caption@ORI@ivparpic\ivparpic
+ \def\ivparpic(#1,#2)(#3,#4)[#5][#6]#7{%
+ \let\caption@ORI@noindent\noindent
+ \def\noindent{%
+ \caption@defrostHref
+ \let\noindent\caption@ORI@noindent
+ \noindent}%
+ \caption@ORI@ivparpic(#1,#2)(#3,#4)[{#5}][{#6}]{#7}%
+ \let\noindent\caption@ORI@noindent}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+}{%
+ \let\piccaptiontype\@undefined
+}
+% \end{macrocode}
+%
+% \subsubsection{The rotating package}
+%
+% \begin{macrocode}
+\caption@IfPackageLoaded{rotating}[1995/08/22 v2.10]{%
+% \end{macrocode}
+%
+% \begin{macro}{\rotcaption}
+% \changes{v3.0c}{2004/07/16}{Bugfix: Check for \cs{caption@star} removed}
+% \changes{v3.0i}{2005/12/07}{Rewritten, works with \package{hyperref} now}
+% Make |\rotcaption*| work.
+% \begin{macrocode}
+ \def\rotcaption{\let\@makecaption\@makerotcaption\caption}%
+% \let\@rotcaption\@undefined
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\rotcaptionof}
+% \changes{v3.0i}{2005/12/07}{New}
+% Make |\rotcaptionof(*)| work.
+% \begin{macrocode}
+ \def\rotcaptionof{%
+ \caption@teststar\caption@of{\rotcaption*}\rotcaption}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\@makerotcaption}
+% \changes{v3.0i}{2005/12/06}{Rewritten, should finally work proper now}
+% \changes{v3.0m}{2007/03/04}{Uses \cs{caption@parbox} instead of \cs{caption@start/endbox} now}
+% \changes{v3.3}{2012/12/26}{Rewritten (again)}
+% Original (bugfixed) code:
+% \begin{verbatim}
+% \long\def\@makerotcaption#1#2{%
+% \setbox\@tempboxa\hbox{#1: #2}%
+% \ifdim \wd\@tempboxa > .8\vsize
+% \rotatebox{90}{%
+% \begin{minipage}{.8\textheight}#1: #2\end{minipage}%
+% }%\par % <== \par removed (AR)
+% \else%
+% \rotatebox{90}{\box\@tempboxa}%
+% \fi
+% \nobreak\hspace{12pt}% <== \nobreak added (AR)
+% }
+% \end{verbatim}%^^A
+% Our version emulates this behavior, but if |width=| is set,
+% the rotated caption is always typeset as |\parbox|.
+% (Note that |margin=| is not supported here.)
+% \begin{macrocode}
+ \long\def\@makerotcaption#1#2{%
+ \rotatebox{90}{%
+ \ifdim\captionwidth=\z@
+ \setcaptionwidth{.8\vsize}%
+ \l@addto@macro\caption@singleline{%
+ \caption@setup{parbox=none}}%
+ \fi
+ \let\caption@calcmargin\relax
+ \caption@@make{#1}{#2}}%
+ \nobreak\hspace{12pt}}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+}{}
+% \end{macrocode}
+%
+% \subsubsection{The sidecap package}
+%
+% \begin{macrocode}
+\caption@IfPackageLoaded{sidecap}[2003/06/06 v1.6f]{%
+ \caption@setbool{needfreeze}{1}%
+% \end{macrocode}
+%
+% \begin{macro}{\SC@zfloat}
+% \changes{v3.0b}{2004/05/16}{Local definition of \cs{captionsetup} added}
+% \changes{v3.0c}{2004/07/16}{Bugfix 04-07-15: Check for \cs{caption@star} removed}
+% \changes{v3.1c}{2007/10/06}{\cs{caption} will be saved \& restored now}
+% \changes{v3.2a}{2011/08/17}{Bugfix: Uses \cs{caption@freeze} instead of \cs{caption@freeze*} now}
+% \changes{v3.3}{2013/05/01}{Usage of \cs{caption@freeze} replaced by \cs{caption@freezetype}}
+% This macro will be called at the start of the environment, here is a good
+% opportunity to do some adaptations to |\caption| and |\captionsetup|.
+% \begin{macrocode}
+ \let\caption@ORI@SC@zfloat\SC@zfloat
+ \def\SC@zfloat#1#2#3[#4]{%
+% \end{macrocode}
+% First we use the original definition, but restore \cs{caption} and \cs{label}
+% so \cs{caption@freeze} and \cs{caption@warmup} will work correctly.
+% \begin{macrocode}
+ \caption@ORI@SC@zfloat{#1}{#2}{#3}[#4]%
+ \SC@RestoreCommands
+% \end{macrocode}
+% Since the sidecap package uses our |\caption| code outside the
+% environment the regular |\captionsetup| will not work.
+% So we need a special version here which saves the given argument list
+% which will be executed later on.
+% Furthermore we need to make |\caption*| work.
+% \begin{macrocode}
+ \caption@freezetype{#2}%
+% \end{macrocode}
+% The sidecap package uses |\ifx\label\SC@label| to test if it is just inside a
+% |SC|\-|figure| or not. So we redefine |\SC@label| here so this test will still work.
+% \begin{macrocode}
+ \let\SC@label\label}%
+% \end{macrocode}
+% \begin{macrocode}
+ \providecommand*\SC@RestoreCommands{%
+ \let\caption=\SC@orig@caption \let\label=\SC@orig@label}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\endSC@FLOAT}
+% \changes{v3.0i}{2006/01/12}{\cs{@listdepth}\cs{z@} added}
+% \changes{v3.1}{2007/05/05}{Call of \cs{caption@setoptions}\arg{SCfloat} added}
+% This macro will be called at the end of the environment, here we need to
+% setup our stuff before the \package{sidecap} package actually typesets
+% its caption.
+% \begin{macrocode}
+ \let\caption@ORI@endSC@FLOAT\endSC@FLOAT
+ \def\endSC@FLOAT{%
+% \end{macrocode}
+% Before we can typeset the caption we need to set the margin to zero
+% because any extra margin would only be disturbing here.\par
+% (We don't need to take care about the caption position because
+% the sidecap package set both |\abovecaptionskip| and |\belowcaptionskip|
+% to a skip of zero anyway.)\par
+% Furthermore |\SC@justify| will override the caption justification, if set.
+% The usage of |\SC@justify| differs from version to version of the
+% \package{sidecap} package:\par
+% \begin{tabular}{ll}
+% Version 1.4: & |\SC@justify| is not defined\\
+% Version 1.5: & |\SC@justify| is |\relax| when not set\\
+% Version 1.6: & |\SC@justify| is |\@empty| when not set\\
+% \end{tabular}
+% \begin{macrocode}
+ \def\caption@setSC@justify{%
+ \caption@clearmargin
+ \ifx\SC@justify\@empty \else
+ \let\caption@hj\SC@justify
+ \let\SC@justify\@empty
+ \fi}%
+% \end{macrocode}
+% Make the original definition of |\endSC@FLOAT| to use our caption
+% stuff instead of its own.
+% \Note{At this point the \package{sidecap} definition of \cs{caption} is valid,
+% not the regular one!}
+% \begin{macrocode}
+ \let\caption\SC@orig@caption
+ \def\SC@orig@caption[##1]##2{%
+ \caption@setSC@justify
+%%% \caption@setoptions{SC}%
+ \caption@setoptions{SC\@captype}%
+ \caption@defrost}%
+% \end{macrocode}
+% Finally we call the original definition of |\endSC@FLOAT|.
+% \begin{macrocode}
+ \caption@setSC@justify % for compatibility mode
+ \caption@prepare@defrost
+ \caption@ORI@endSC@FLOAT}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+}{}
+% \end{macrocode}
+%
+% \subsubsection{The subfigure package}
+% \changes{v3.1}{2007/04/06}{subfigure package support added}
+%
+% \begin{macrocode}
+\caption@IfPackageLoaded{subfigure}[2002/01/23 v2.1]{%
+% \end{macrocode}
+%
+% \begin{macro}{\sf@ifpositiontop}
+% \changes{v3.1a}{2007/09/15}{Bugfix 07-09-15: Check for \cs{@captype} added}
+% If the \package{subfigure} package is loaded, we map |\sf@ifpositiontop|
+% to |\iffiguretopcap| resp. |\iftabletopcap|, so the \package{subfigure}
+% \version{2.1} options \opt{figbotcap} etc. will still work.
+% \begin{macrocode}
+ \def\sf@ifpositiontop{%
+ \ifx\@captype\@undefined
+ \expandafter\@gobbletwo
+ \else\ifx\@captype\relax
+ \expandafter\expandafter\expandafter\@gobbletwo
+ \else
+ \expandafter\expandafter\expandafter\sf@if@position@top
+ \fi\fi}
+% \end{macrocode}
+% \begin{macrocode}
+ \def\sf@if@position@top{%
+ \@ifundefined{if\@captype topcap}%
+ {\@gobbletwo}%
+ {\@nameuse{if\@captype topcap}%
+ \expandafter\@firstoftwo
+ \else
+ \expandafter\@secondoftwo
+ \fi}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+}{}
+% \end{macrocode}
+%
+% \subsubsection{The supertabular and xtab packages}
+%
+% \begin{macrocode}
+\caption@IfPackageLoaded{supertabular}[2002/07/19 v4.1e]{%
+% \end{macrocode}
+%
+% \begin{macro}{\tablecaption}
+% \changes{v3.0e}{2005/05/05}{Made \cs{topcaption*} and \cs{bottomcaption*} work}
+% \changes{v3.1h}{2008/04/01}{Bugfix: Star variant does not increment table counter anymore}
+% Make |\topcaption*| and |\bottomcaption*| work.
+% \begin{macrocode}
+ \renewcommand*\tablecaption{%
+ \caption@star
+ {\refstepcounter{table}}%
+ {\caption@dblarg{\@xtablecaption}}}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\@xtablecaption}
+% \changes{v3.1h}{2008/04/01}{Made \cs{nameref} \& \cs{autoref} work}
+% \changes{v3.1l}{2010/01/09}{Adapted to current version of nameref package}
+% \changes{v3.3}{2018/12/26}{Bugfix: Missing curly braces added}
+% Make |\nameref| and |\autoref| work.
+% \begin{macrocode}
+ \let\caption@ORI@xtablecaption\@xtablecaption
+ \long\def\@xtablecaption[#1]#2{%
+ \caption@gettitle{#2}%
+ \caption@ORI@xtablecaption[{#1}]{#2}}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\ST@caption}
+% \changes{v3.0a}{2004/01/23}{Bugfix: Missing \cs{par} added}
+% \changes{v3.1h}{2008/04/01}{Bugfix: \cs{@currentlabelname} will be set now}
+% The original code:
+% \begin{verbatim}
+% \long\def\ST@caption#1[#2]#3{\par%
+% \addcontentsline{\csname ext@#1\endcsname}{#1}%
+% {\protect\numberline{%
+% \csname the#1\endcsname}{\ignorespaces #2}}
+% \begingroup
+% \@parboxrestore
+% \normalsize
+% \if@topcaption \vskip -10\p@ \fi
+% \@makecaption{\csname fnum@#1\endcsname}{\ignorespaces #3}\par
+% \if@topcaption \vskip 10\p@ \fi
+% \endgroup}
+% \end{verbatim}%^^A
+% \begin{macrocode}
+ \long\def\ST@caption#1[#2]#3{\par%
+ \caption@settype*{#1}%
+ \caption@setoptions{supertabular}%
+% \end{macrocode}
+% The |position=| setting will be overwritten by the
+% \package{supertabular} package: If |\topcaption| was used,
+% the position will be |top| automatically, |bottom| otherwise.
+% \begin{macrocode}
+ \def\caption@fixposition{%
+ \caption@setposition{\if@topcaption t\else b\fi}}%
+% \end{macrocode}
+% \begin{macrocode}
+ \caption@beginex{#1}{#2}{#3}%
+ \caption@boxrestore
+ \caption@normalsize
+ \@makecaption{\csname fnum@#1\endcsname}{\ignorespaces #3}\par
+ \caption@end}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+}{}
+% \end{macrocode}
+%
+% \changes{v3.1h}{2008/04/01}{Support of the xtab package added}
+% \begin{macrocode}
+\caption@IfPackageLoaded{xtab}[2000/04/09 v2.3]{%
+% \end{macrocode}
+%
+% \begin{macro}{\tablecaption}
+% Make |\topcaption*| and |\bottomcaption*| work.
+% \begin{macrocode}
+ \renewcommand*\tablecaption{%
+ \caption@star
+ {\refstepcounter{table}}%
+ {\caption@dblarg{\@xtablecaption}}}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\@xtablecaption}
+% \changes{v3.1l}{2010/01/09}{Adapted to current version of nameref package}
+% \changes{v3.3}{2018/12/26}{Bugfix: Missing curly braces added}
+% Make |\nameref| and |\autoref| work.
+% \begin{macrocode}
+ \let\caption@ORI@xtablecaption\@xtablecaption
+ \long\def\@xtablecaption[#1]#2{%
+ \caption@gettitle{#2}%
+ \caption@ORI@xtablecaption[{#1}]{#2}}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\ST@caption}
+% The original code:
+% \begin{verbatim}
+% \long\def\ST@caption#1[#2]#3{\par%
+% \@initisotab
+% \addcontentsline{\csname ext@#1\endcsname}{#1}%
+% {\protect\numberline{%
+% \csname the#1\endcsname}{\ignorespaces #2}}%
+% \begingroup
+% \@parboxrestore
+% \normalsize
+% %% \if@topcaption \vskip -10\p@ \fi
+% \@makecaption{\csname fnum@#1\endcsname}{\ignorespaces #3}\par
+% %% \if@topcaption \vskip 10\p@ \fi
+% \endgroup
+% \global\advance\ST@pageleft -\PWSTcapht
+% \ST@trace\tw@{Added caption. Space left for xtabular: \the\ST@pageleft}}
+% \end{verbatim}%^^A
+% \begin{macrocode}
+ \long\def\ST@caption#1[#2]#3{\par%
+ \caption@settype*{#1}%
+ \caption@setoptions{xtabular}%
+% \end{macrocode}
+% \begin{macrocode}
+ \def\caption@fixposition{%
+ \caption@setposition{\if@topcaption t\else b\fi}}%
+% \end{macrocode}
+% \begin{macrocode}
+ \@initisotab
+ \caption@beginex{#1}{#2}{#3}%
+ \caption@boxrestore
+ \caption@normalsize
+ \@makecaption{\csname fnum@#1\endcsname}{\ignorespaces #3}\par
+ \caption@end
+ \global\advance\ST@pageleft -\PWSTcapht
+ \ST@trace\tw@{Added caption. Space left for xtabular: \the\ST@pageleft}}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+}{}
+% \end{macrocode}
+%
+% \subsubsection{The threeparttable package}
+% \changes{v3.1}{2007/05/08}{Support of the \package{threeparttable} package added}
+%
+% \begin{macrocode}
+\caption@IfPackageLoaded{threeparttable}[2003/06/13 v3.0]{%
+% \end{macrocode}
+%
+% \begin{macro}{\threeparttable}
+% \changes{v3.3}{2016/01/31}{Bugfix: \cs{@captype} will be used if already defined}
+% Unfortunately |\@captype| is not set when |\TPT@common| will be used,
+% so we have to redefine |\threeparttable| and |\measuredfigure| instead.
+% \begin{macrocode}
+ \let\caption@ORI@threeparttable\threeparttable
+ \renewcommand*\threeparttable{%
+ \caption@settype{\@ifundefined{@captype}{table}{\@captype}}%
+%%% \caption@setposition a% ?
+ \caption@clearmargin
+ \caption@setoptions{threeparttable}%
+ \caption@ORI@threeparttable}%
+% \end{macrocode}
+% \end{macro}
+% \begin{macro}{\measuredfigure}
+% \changes{v3.3}{2016/01/31}{Bugfix: \cs{@captype} will be used if already defined}
+% Same here\ldots
+% \begin{macrocode}
+ \let\caption@ORI@measuredfigure\measuredfigure
+ \renewcommand*\measuredfigure{%
+ \caption@settype{\@ifundefined{@captype}{figure}{\@captype}}%
+%%% \caption@setposition a% ?
+ \caption@clearmargin
+ \caption@setoptions{measuredfigure}%
+ \caption@ORI@measuredfigure}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\TPT@caption}
+% The original code:
+% \begin{verbatim}
+% \def\TPT@caption#1[#2]#3{\gdef\TPT@docapt
+% {\par\global\let\TPT@docapt\@undefined \TPT@LA@caption{#1}[{#2}]%
+% {\strut\ignorespaces#3\ifhmode\unskip\@finalstrut\strutbox\fi}}%
+% \ifx\TPT@hsize\@empty \let\label\TPT@gatherlabel \abovecaptionskip\z@skip
+% \else \TPT@docapt \fi \ignorespaces}
+% \end{verbatim}%^^A
+% \begin{macrocode}
+ \def\TPT@caption#1[#2]#3{%
+ \gdef\TPT@docapt{%
+ \global\let\TPT@docapt\@undefined
+ \caption@setautoposition\caption@TPT@position
+ \TPT@LA@caption{#1}[{#2}]{#3}}%
+ \ifx\TPT@hsize\@empty
+ \let\label\TPT@gatherlabel % Bug: does not work for measuredfigures
+ \gdef\caption@TPT@position{t}%
+ \g@addto@macro\TPT@docapt\caption@TPT@eatvskip
+ \else
+ \def\caption@TPT@position{b}%
+ \TPT@docapt
+ \fi
+ \ignorespaces}%
+% \end{macrocode}
+% \begin{macrocode}
+ %\newcommand*\caption@TPT@eatvskip{\vskip-.2\baselineskip}%
+ \def\caption@TPT@eatvskip#1\vskip{#1\@tempdima=}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+}{}
+% \end{macrocode}
+%
+% \subsubsection{The wrapfig package}
+% \changes{v3.1}{2007/05/05}{Support of the \package{wrapfig} package added}
+% \changes{v3.2d}{2011/11/02}{Support of the \package{wrapfig} package rewritten}
+%
+% \begin{macrocode}
+\caption@IfPackageLoaded{wrapfig}[2003/01/31 v3.6]{%
+% \end{macrocode}
+%
+% \begin{macro}{\wrapfloat}
+% \changes{v3.2d}{2011/11/02}{Redefinition of this macro added}
+% First of all we make the \package{wrapfig} package independent from the package
+% load order regarding the \package{float} package.
+% Since the usage of |\@float@set|\-|every| is missing in the code of the \package{wrapfig}
+% package (it should be in the redefinition of |\float@re|\-|style|, right after
+% |\@nameuse{fst@#1}|), we don't use it here, too,
+% especially since |\wrap|\-|float| will usually not be used when used with re-styled floats.
+% \begin{macrocode}
+ \renewcommand*\wrapfloat[1]{%
+ \def\@captype{#1}%
+ \@ifundefined{fst@#1}{}{%
+ \@nameuse{fst@#1}%
+% \@float@setevery{#1}%
+ \def\WF@floatstyhook{\let\@currbox\WF@box
+ \global\setbox\WF@box\float@makebox{\wd\WF@box}}}%
+ \@ifnextchar[\WF@wr{\WF@wr[]}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\WF@rapt}
+% \changes{v3.2d}{2011/11/02}{Usage of \cs{WF@captionstyhook} added}
+% Original code:
+% \begin{verbatim}
+% \def\WF@rapt[#1]#2{% final two args: #1 = overhang, #2 = width,
+% \gdef\WF@ovh{#1}% hold overhang for later, when \width is known
+% \global\setbox\WF@box\vtop\bgroup \setlength\hsize{#2}%
+% \ifdim\hsize>\z@ \@parboxrestore \else
+% \setbox\z@\hbox\bgroup \let\wf@@caption\caption \let\caption\wf@caption
+% \ignorespaces \fi}
+% \end{verbatim}%^^A
+% Our code has |\WF@captionstyhook| in addition:
+% \begin{macrocode}
+ \def\WF@rapt[#1]#2{% final two args: #1 = overhang, #2 = width,
+ \gdef\WF@ovh{#1}% hold overhang for later, when \width is known
+ \global\setbox\WF@box\vtop\bgroup \setlength\hsize{#2}%
+ \expandafter\WF@captionstyhook\expandafter{\@captype}% <= new
+ \ifdim\hsize>\z@ \@parboxrestore \else
+ \setbox\z@\hbox\bgroup \let\wf@@caption\caption \let\caption\wf@caption
+ \ignorespaces \fi}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\WF@captionstyhook}
+% \changes{v3.2d}{2011/11/02}{This macro added}
+% \changes{v3.2e}{2011/11/10}{Bugfix 11-11-09: float package support fixed}
+% We place our \package{hyperref} anchor here, apply the `wrap' options etc.
+% Since the usage of |\@float@set|\-|every| is missing in the \package{wrapfig}
+% package we will catch it up here for making the necessary adaptions to the
+% \package{float} package.
+% \begin{macrocode}
+ \def\WF@captionstyhook#1{%
+ \let\@captype\@undefined
+ \@ifundefined{fst@#1}{}{\@float@setevery{#1}}%
+ \caption@settype{#1}%
+ \caption@clearmargin
+%%% \caption@setoptions{wrap}%
+ \caption@setoptions{wrap#1}}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+}{}
+% \end{macrocode}
+%
+% \iffalse
+%</package>
+% \fi
+%
+% \iffalse
+% --------------------------------------------------------------------------- %
+% \fi
+%
+% \clearpage
+% \begin{thebibliography}{99}
+% \bibitem{beamer}
+% Till Tantau:\\
+% \href{http://www.ctan.org/pkg/beamer}%
+% {\emph{The beamer class, User Guide for version 3.25}},\\
+% December 26, 2012
+%
+% \bibitem{KOMAScript}
+% Markus Kohm \& Jens-Uwe-Morawski:\\
+% \href{http://www.ctan.org/pkg/koma-script}%
+% {\emph{KOMA-Script -- a versatile \LaTeXe\ bundle}},\\
+% 2012-07-22
+%
+% \bibitem{NTG}
+% Victor Eijkhout:\\
+% \href{http://www.ctan.org/pkg/ntgclass}%
+% {\emph{An introduction to the Dutch \LaTeX\ document classes}},\\
+% 3 September 1989
+%
+% \bibitem{float}
+% Anselm Lingnau:\\
+% \href{http://www.ctan.org/pkg/float}%
+% {\emph{An Improved Environment for Floats}},\\
+% 2001/11/08
+%
+% \bibitem{floatflt}
+% Mats Dahlgren:\\
+% \href{http://www.ctan.org/pkg/floatflt}%
+% {\emph{Welcome to the floatflt package}},\\
+% 1998/06/05
+%
+% \bibitem{floatrow}
+% Olga Lapko:\\
+% \href{http://www.ctan.org/pkg/floatrow}%
+% {\emph{The floatrow package documentation}},\\
+% 2009/08/02
+%
+% \bibitem{fltpage}
+% Sebastian Gross:\\
+% \href{http://www.ctan.org/pkg/fltpage}%
+% {\emph{Welcome to the beta test of fltpage package!}},\\
+% 1998/11/13
+%
+% \bibitem{hyperref}
+% Sebastian Rahtz \& Heiko Oberdiek:\\
+% \href{http://www.ctan.org/pkg/hyperref}%
+% {\emph{Hypertext marks in \LaTeX: a manual for hyperref}},\\
+% November 2012
+%
+% \bibitem{hypcap}
+% Heiko Oberdiek:\\
+% \href{http://www.ctan.org/pkg/oberdiek}%
+% {\emph{The hypcap package -- Adjusting anchors of captions}},\\
+% 2011/02/16
+%
+% \bibitem{listings}
+% Carsten Heinz \& Brooks Moses:\\
+% \href{http://www.ctan.org/pkg/listings}%
+% {\emph{The Listings Package}},\\
+% 2007/02/22
+%
+% \bibitem{longtable}
+% David Carlisle:\\
+% \href{http://www.ctan.org/pkg/longtable}%
+% {\emph{The longtable package}},\\
+% 2004/02/01
+%
+% \bibitem{picinpar}
+% Friedhelm Sowa:\\
+% \href{http://www.ctan.org/pkg/picinpar}%
+% {\emph{Pictures in Paragraphs}},\\
+% July 13, 1993
+%
+% \bibitem{picins}
+% Joachim Bleser and Edmund Lang:\\
+% \href{http://www.ctan.org/pkg/picins}%
+% {\emph{PicIns-Benutzerhandbuch Version 3.0}},\\
+% September~1992
+%
+% \bibitem{rotating}
+% Sebastian Rahtz and Leonor Barroca:\\
+% \href{http://www.ctan.org/pkg/rotating}%
+% {\emph{A style option for rotated objects in \LaTeX}},\\
+% 1997/09/26
+%
+% \bibitem{sidecap}
+% Rolf Niepraschk \& Hubert G\"a\ss lein:\\
+% \href{http://www.ctan.org/pkg/sidecap}%
+% {\emph{The sidecap package}},\\
+% 2003/06/06
+%
+% \bibitem{subfigure}
+% Steven D. Cochran:\\
+% \href{http://www.ctan.org/pkg/subfigure}%
+% {\emph{The subfigure package}},\\
+% 2005/03/15
+%
+% \bibitem{subfig}
+% Steven D. Cochran:\\
+% \href{http://www.ctan.org/pkg/subfig}%
+% {\emph{The subfig package}},\\
+% 2005/07/05
+%
+% \bibitem{supertabular}
+% Johannes Braams and Theo Jurriens:\\
+% \href{http://www.ctan.org/pkg/supertabular}%
+% {\emph{The supertabular environment}},\\
+% 2004/02/20
+%
+% \bibitem{threeparttable}
+% Donald Arseneau:\\
+% \href{http://www.ctan.org/pkg/threeparttable}%
+% {\emph{Three part tables: title, tabular environment, notes}},\\
+% March 5, 2010
+%
+% \bibitem{wrapfig}
+% Donald Arseneau:\\
+% \href{http://www.ctan.org/pkg/wrapfig}%
+% {\emph{WRAPFIG.STY ver 3.6}},\\
+% Jan 31, 2003
+%
+% \bibitem{xtab}
+% Peter Wilson:\\
+% \href{http://www.ctan.org/pkg/xtab}%
+% {\emph{The xtab package}},\\
+% 2011/07/31
+% \end{thebibliography}
+%
+% \iffalse
+% --------------------------------------------------------------------------- %
+% \fi
+%
+% \clearpage
+% \Finale
+%
+\endinput
diff --git a/macros/latex/contrib/caption/fallback/v3.3/caption3.dtx b/macros/latex/contrib/caption/fallback/v3.3/caption3.dtx
new file mode 100644
index 0000000000..bdffdcc66a
--- /dev/null
+++ b/macros/latex/contrib/caption/fallback/v3.3/caption3.dtx
@@ -0,0 +1,4176 @@
+% \iffalse meta-comment
+%
+% This is file `caption3.dtx'.
+%
+% Copyright (C) 1994-2019 Axel Sommerfeldt (axel.sommerfeldt@f-m.fm)
+%
+% --------------------------------------------------------------------------
+%
+% This work may be distributed and/or modified under the
+% conditions of the LaTeX Project Public License, either version 1.3
+% of this license or (at your option) any later version.
+% The latest version of this license is in
+% http://www.latex-project.org/lppl.txt
+% and version 1.3 or later is part of all distributions of LaTeX
+% version 2003/12/01 or later.
+%
+% This work has the LPPL maintenance status "maintained".
+%
+% This Current Maintainer of this work is Axel Sommerfeldt.
+%
+% This work consists of the files caption.ins, caption.dtx, caption2.dtx,
+% caption3.dtx, bicaption.dtx, ltcaption.dtx, subcaption.dtx, and newfloat.dtx,
+% the derived files caption.sty, caption2.sty, caption3.sty,
+% bicaption.sty, ltcaption.sty, subcaption.sty, and newfloat.sty,
+% and the user manuals caption-deu.tex, caption-eng.tex, and caption-rus.tex.
+%
+% \fi
+% \CheckSum{3961}
+%
+% \iffalse
+%<*driver>
+\NeedsTeXFormat{LaTeX2e}[1994/12/01]
+\ProvidesFile{caption3.drv}[2015/09/15 v1.8 Implementation of the caption kernel]
+\hbadness=9999 \newcount\hbadness \hfuzz=100pt % Make TeX shut up.
+%\errorcontextlines=3
+%
+\documentclass{ltxdoc}
+\setlength\parindent{0pt}
+\setlength\parskip{\smallskipamount}
+%
+%\let\ORIsubsection\subsection
+%\def\subsection{\clearpage\ORIsubsection}
+%
+\makeatletter % make room for subsections like 2.16.14 in the TOC
+%\newcommand*\l@subsection{\@dottedtocline{2}{1.5em}{2.3em}}
+\renewcommand*\l@subsection{\@dottedtocline{2}{1.5em}{2.7em}}
+\makeatother
+%
+\usepackage{ifpdf}
+\ifpdf
+ \usepackage{mathptmx,courier}
+ \usepackage[scaled=0.90]{helvet}
+ \addtolength\marginparwidth{15pt}
+\fi
+%
+\usepackage{hypdoc}
+\ifpdf\usepackage{hypdestopt}\fi
+\hypersetup{pdfkeywords={LaTeX, package, caption},pdfstartpage={},pdfstartview={}}
+%
+\usepackage[debug]{caption3}[2018/05/01]
+%
+\DeclareRobustCommand*\eTeX{\texorpdfstring
+ {\leavevmode\hbox{$\varepsilon$}-\TeX}%
+ {e-TeX}}
+\DeclareRobustCommand*\AmS{\texorpdfstring
+ {{\protect\usefont{OMS}{cmsy}{m}{n}A\kern-.1667em\lower.5ex\hbox{M}\kern-.125emS}}%
+ {AMS}}
+\DeclareRobustCommand*\KOMAScript{\texorpdfstring
+ {\textsf{K\kern.05em O\kern.05em M\kern.05em A\kern.1em-\kern.1em Script}}%
+ {KOMA-Script}}
+\DeclareRobustCommand*\NTG{NTG}
+\DeclareRobustCommand*\SmF{SMF}
+%
+\begin{document}
+ \DocInput{caption3.dtx}
+\end{document}
+%</driver>
+% \fi
+%
+% \newcommand*\purerm[1]{{\upshape\mdseries\rmfamily #1}}
+% \newcommand*\puresf[1]{{\upshape\mdseries\sffamily #1}}
+% \newcommand*\purett[1]{{\upshape\mdseries\ttfamily #1}}
+% \let\class\puresf \let\package\puresf
+% \let\env\purett \let\opt\purett
+%
+% \def\thispackage{the \package{caption} kernel}
+% \def\Thispackage{The \package{caption} kernel}
+%
+% \newcommand*\csmarg[1]{\texttt{\char`\{#1\char`\}}}
+% \newcommand*\csoarg[1]{\texttt{\char`\[#1\char`\]}}
+% \newcommand*\version[2][]{\textit{v#2}}
+%
+% \GetFileInfo{caption3.drv}
+% \let\docdate\filedate
+% \GetFileInfo{caption3.sty}
+%
+% \title{The Implementation of
+% \texorpdfstring{\thispackage\thanks{%^^A
+% This package has version number \fileversion, last revised \filedate.}}%^^A
+% {the caption kernel}}
+% \author{Axel Sommerfeldt\\
+% \url{https://gitlab.com/axelsommerfeldt/caption}}
+% \date{\docdate}
+% \maketitle
+%
+% \begin{abstract}
+% \Thispackage\ consists of two parts -- the kernel
+% (|caption3.sty|) and the main package (|caption.sty|).
+%
+% The kernel provides all the user commands and internal macros which are
+% necessary for typesetting captions and setting parameters regarding these.
+% While the standard \LaTeX\ document classes provide an internal command
+% called |\@makecaption| and no options to control its behavior (except the
+% vertical skips above and below the caption itself), we provide similar
+% commands called |\caption@make| and |\caption@@make|, but with a lot of
+% options which can be selected with |\captionsetup|.
+% Loading the kernel part do not change the output of a \LaTeX\ document
+% -- it just provides functionality which can be used by \LaTeXe\ packages
+% which typesets captions, for example the \package{caption} and
+% \package{subfig} packages.
+% \end{abstract}
+%
+% \StopEventually{}
+% \clearpage
+% \tableofcontents
+%
+% \iffalse
+% --------------------------------------------------------------------------- %
+% \fi
+%
+% \DoNotIndex{\\,\_,\ ,\@@par}
+% \DoNotIndex{\@bsphack}
+% \DoNotIndex{\@car,\@cdr,\@classoptionslist,\@cons,\@currext,\@currname}
+% \DoNotIndex{\@ehc,\@ehd,\@empty,\@esphack,\@expandtwoargs}
+% \DoNotIndex{\@for,\@firstofone,\@firstoftwo}
+% \DoNotIndex{\@gobble,\@gobblefour,\@gobbletwo,\@hangfrom}
+% \DoNotIndex{\if@minipage\@ifnextchar,\@ifpackagelater,\@ifpackageloaded}
+% \DoNotIndex{\@ifstar,\@ifundefined,\@latex@error,\@minipagefalse,\@minipagetrue}
+% \DoNotIndex{\@namedef,\@nameuse}
+% \DoNotIndex{\@onlypreamble,\@parboxrestore,\@plus,\@ptionlist}
+% \DoNotIndex{\@removeelement,\@restorepar,\@secondoftwo,\@setminipage,\@setpar}
+% \DoNotIndex{\@tempa,\@tempboxa,\@tempdima,\@tempdimb,\@tempdimc,\@tempb,\@tempc}
+% \DoNotIndex{\@testopt}
+% \DoNotIndex{\@undefined,\@unprocessedoptions,\@unusedoptionlist}
+% \DoNotIndex{\p@,\z@}
+% \DoNotIndex{\active,\addtocounter,\addtolength,\advance,\aftergroup}
+% \DoNotIndex{\baselineskip,\begin,\begingroup,\bfseries,\box}
+% \DoNotIndex{\catcode,\centering,\changes,\csname,\def,\divide,\do,\downarrow}
+% \DoNotIndex{\edef,\else,\empty,\end,\endcsname,\endgraf,\endgroup,\expandafter}
+% \DoNotIndex{\fi,\footnotesize,\global}
+% \DoNotIndex{\hangindent,\hbox,\hfil,\hsize,\hskip,\hspace,\hss}
+% \DoNotIndex{\ifcase,\ifdim,\ifnum,\ifodd,\ifvoid,\ifvmode}
+% \DoNotIndex{\ifx,\ignorespaces,\itshape}
+% \DoNotIndex{\Large,\large,\leavevmode,\leftmargini,\leftskip,\let,\linewidth}
+% \DoNotIndex{\llap,\long,\m@ne,\margin,\mdseries,\message}
+% \DoNotIndex{\newcommand,\newdimen,\newlength,\newline,\newif,\newsavebox}
+% \DoNotIndex{\next,\nobreak,\nobreakspace,\noexpand,\noindent,\numberline}
+% \DoNotIndex{\normalcolor,\normalfont,\normalsize,\or,\par,\parbox,\parfillskip}
+% \DoNotIndex{\parindent,\parskip,\prevdepth,\protect,\protected@edef,\protected@write}
+% \DoNotIndex{\providecommand,\quad}
+% \DoNotIndex{\raggedleft,\raggedright,\relax,\renewcommand,\RequirePackage}
+% \DoNotIndex{\rightskip,\rmfamily}
+% \DoNotIndex{\sbox,\scriptsize,\scshape,\setbox,\setlength,\sffamily,\slshape}
+% \DoNotIndex{\small,\string,\space,\strut}
+% \DoNotIndex{\textheight,\the,\toks@,\typeout,\ttfamily}
+% \DoNotIndex{\unvbox,\uparrow,\upshape,\usebox,\usepackage}
+% \DoNotIndex{\value,\vbox,\vsize,\vskip,\wd,\width,\z@skip}
+% \DoNotIndex{\AtBeginDocument,\AtEndOfPackage,\CurrentOption,\DeclareOption}
+% \DoNotIndex{\ExecuteOptions,\GenericWarning,\IfFileExists,\InputIfFileExists}
+% \DoNotIndex{\NeedsTeXFormat,\MessageBreak}
+% \DoNotIndex{\PackageError,\PackageInfo,\PackageWarning,\PackageWarningNoLine}
+% \DoNotIndex{\PassOptionsToPackage,\ProcessOptions,\ProvidesPackage}
+%
+% \iffalse
+% --------------------------------------------------------------------------- %
+% \fi
+%
+% \setlength{\parskip}{0pt plus 1pt}
+% \newcommand*\Note[2][Note]{\par{\small\emph{#1:} #2}\par}
+%
+% \changes{v1.0}{2003/12/20}{Rewritten; many new commands and features}
+% \changes{v1.0c}{2004/11/28}{Split into two packages:
+% \package{caption} \& \package{caption3}}
+%
+% \iffalse
+% --------------------------------------------------------------------------- %
+% \fi
+%
+% \clearpage
+% \let\subsubsection\subsection
+% \let\subsection\section
+%
+% \iffalse
+%<*package>
+% \fi
+%
+% \subsection{Identification}
+%
+% \begin{macrocode}
+\NeedsTeXFormat{LaTeX2e}[1994/12/01]
+\ProvidesPackage{caption3}[2019/09/01 v1.8d caption3 kernel (AR)]
+% \end{macrocode}
+%
+% \subsection{Workaround for bug in package \package{arabtex}}
+% \package{arabtex} re-defines \cs{@gobble} as not-long so the packages of the
+% \package{caption} package bundle are doomed to fail.
+% Since this fatal bug won't be fixed in \package{arabtex} but we are dependent on a
+% proper definition of \cs{@gobble}, \cs{@firstofone}, \cs{@firstoftwo}, \cs{@secondoftwo}
+% and so on we fix this here. (Sigh!)
+% \begin{macrocode}
+\providecommand\caption@FixArabTeX{%
+ \def\caption@tempa##1{}%
+ \ifx\caption@tempa\@gobble
+ \PackageInfo{caption3}{Fixing ArabTeX}%
+ \long\def\@gobble##1{}%
+ \fi}
+% \end{macrocode}
+% Do the fix now and at |\begin{document}|, in case \package{arabtex} will be loaded after \package{caption}.
+% \begin{macrocode}
+\caption@FixArabTeX
+\AtBeginDocument{%
+ \caption@FixArabTeX
+ \let\caption@FixArabTeX\@undefined}
+% \end{macrocode}
+%
+% \subsection{Generic helpers}
+%
+% \begin{macro}{\@nameundef}
+% This is the opposite to |\@namedef| which is offered by the \LaTeX\ kernel.
+% We use it to remove the definition of some commands and keyval options after
+% |\begin{document}| (to save \TeX\ memory) and to remove caption options defined
+% with |\captionsetup|\oarg{type}.
+% \begin{macrocode}
+\providecommand*\@nameundef[1]{%
+ \expandafter\let\csname #1\endcsname\@undefined}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\l@addto@macro}
+% \changes{v1.5}{2013/04/26}{Revised}
+% The \LaTeXe\ kernel offers the internal helper macro |\g@addto@macro| which
+% globally adds tokens to existing macros, like in |\AtBeginDocument|.
+% This is the same but it works local, not global.
+% \begin{macrocode}
+\begingroup\expandafter\expandafter\expandafter\endgroup
+\expandafter\ifx\csname currentgrouplevel\endcsname\relax
+ \PackageInfo{caption3}{TeX engine: TeX}
+ \let\caption@ifeTeX\@secondoftwo
+ \providecommand\l@addto@macro[2]{%
+ \begingroup
+ \toks@\expandafter{#1#2}%
+ \xdef\caption@addto@temp{\the\toks@}%
+ \endgroup
+ \let#1\caption@addto@temp}
+\else
+ \PackageInfo{caption3}{TeX engine: e-TeX}
+ \let\caption@ifeTeX\@firstoftwo
+ \providecommand\l@addto@macro[2]{%
+ \edef#1{\unexpanded\expandafter{#1#2}}}
+\fi
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\bothIfFirst}
+% \begin{macro}{\bothIfSecond}
+% |\bothIfFirst| tests if the first argument is not empty, |\bothIfSecond|
+% tests if the second argument is not empty. If yes both arguments get
+% typeset, otherwise none of them.
+% \begin{macrocode}
+\def\bothIfFirst#1#2{%
+ \protected@edef\caption@tempa{#1}%
+ \ifx\caption@tempa\@empty \else
+ #1#2%
+ \fi}
+% \end{macrocode}
+% \begin{macrocode}
+\def\bothIfSecond#1#2{%
+ \protected@edef\caption@tempa{#2}%
+ \ifx\caption@tempa\@empty \else
+ #1#2%
+ \fi}
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+%
+% \begin{macro}{\caption@ifundefined}
+% \changes{v1.3a}{2011/08/12}{This macro added}
+% \changes{v1.3b}{2011/08/18}{Made expandable}
+% Similar to \cs{@ifundefined} offered by the \LaTeX kernel, but does
+% not define the undefined macro as \cs{relax}.
+% \begin{macrocode}
+\newcommand*\caption@ifundefined[1]{%
+ \ifx#1\@undefined
+ \expandafter\@firstoftwo
+ \else\ifx#1\relax
+ \expandafter\expandafter\expandafter\@firstoftwo
+ \else
+ \expandafter\expandafter\expandafter\@secondoftwo
+ \fi\fi}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@ifinlist}
+% \changes{v1.1}{2007/07/29}{Rewritten}
+% This helper macro checks if the first argument is in the comma separated
+% list which is offered as second argument. So for example
+% \begin{quote}
+% |\caption@ifinlist{frank}{axel,frank,olga,steven}{yes}{no}|
+% \end{quote}
+% would expand to |yes|.
+% \begin{macrocode}
+\newcommand*\caption@ifinlist{%
+ \@expandtwoargs\caption@@ifinlist}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@@ifinlist[2]{%
+ \begingroup
+ \def\@tempa##1,#1,##2\@nil{%
+ \endgroup
+ \ifx\relax##2\relax
+ \expandafter\@secondoftwo
+ \else
+ \expandafter\@firstoftwo
+ \fi}%
+ \@tempa,#2,#1,\@nil}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@ifin@list}
+% \changes{v1.1}{2007/08/12}{This macro added}
+% |\caption@ifin@list|\marg{cmd}\marg{list entry}\marg{yes}\marg{no}
+% \begin{macrocode}
+\newcommand*\caption@ifin@list[2]{%
+ \caption@ifempty@list#1%
+ {\@secondoftwo}%
+ {\@expandtwoargs\caption@@ifinlist{#2}{#1}}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@g@addto@list}
+% \changes{v1.1}{2007/07/29}{This macro added}
+% |\caption@g@addto@list|\marg{cmd}\marg{list entry}
+% \begin{macrocode}
+\newcommand*\caption@g@addto@list[2]{%
+ \caption@ifempty@list#1{\gdef#1{#2}}{\g@addto@macro#1{,#2}}}
+% \end{macrocode}
+% \end{macro}
+% \begin{macro}{\caption@l@addto@list}
+% \changes{v1.1}{2007/07/29}{This macro added}
+% |\caption@l@addto@list|\marg{cmd}\marg{list entry}
+% \begin{macrocode}
+\newcommand*\caption@l@addto@list[2]{%
+ \caption@ifempty@list#1{\def#1{#2}}{\l@addto@macro#1{,#2}}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@g@removefrom@list}
+% \changes{v1.1}{2007/07/29}{This macro added}
+% |\caption@g@removefrom@list|\marg{cmd}\marg{list entry}
+% \begin{macrocode}
+\newcommand*\caption@g@removefrom@list[2]{%
+ \caption@l@removefrom@list#1{#2}%
+ \global\let#1#1}
+% \end{macrocode}
+% \end{macro}
+% \begin{macro}{\caption@l@removefrom@list}
+% \changes{v1.1}{2007/07/29}{This macro added}
+% |\caption@l@removefrom@list|\marg{cmd}\marg{list entry}\par
+% \Note[Caveat]{\meta{cmd} will be expanded during this process since
+% \cs{@removeelement} is using \cs{edef} to build the new list!}
+% \begin{macrocode}
+\newcommand*\caption@l@removefrom@list[2]{%
+ \caption@ifempty@list#1{}{\@expandtwoargs\@removeelement{#2}#1#1}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@for@list}
+% \changes{v1.1}{2007/07/29}{This macro added}
+% |\caption@for@list|\marg{cmd}\marg{code with \#1}
+% \begin{macrocode}
+\newcommand*\caption@for@list[2]{%
+ \caption@ifempty@list#1{}{%
+ \def\caption@tempb##1{#2}%
+ \@for\caption@tempa:=#1\do{%
+ \expandafter\caption@tempb\expandafter{\caption@tempa}}}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@ifempty@list}
+% \changes{v1.1}{2007/07/29}{This macro added}
+% |\caption@ifempty@list|\marg{cmd}\marg{true}\marg{false}
+% \begin{macrocode}
+\newcommand*\caption@ifempty@list[1]{%
+ \ifx#1\@undefined
+ \expandafter\@firstoftwo
+ \else\ifx#1\relax
+ \expandafter\expandafter\expandafter\@firstoftwo
+ \else\ifx#1\@empty
+ \expandafter\expandafter\expandafter\expandafter
+ \expandafter\expandafter\expandafter\@firstoftwo
+ \else
+ \expandafter\expandafter\expandafter\expandafter
+ \expandafter\expandafter\expandafter\@secondoftwo
+ \fi\fi\fi}
+% \end{macrocode}
+% \end{macro}
+%
+% \pagebreak[3]
+% \begin{macro}{\caption@setbool}
+% \begin{macro}{\caption@set@bool}
+% \changes{v1.1}{2007/04/05}{\cs{caption@set@bool}\marg{cmd}\marg{value} added}
+% \begin{macro}{\caption@ifbool}
+% \begin{macro}{\caption@undefbool}
+% For setting and testing boolean options we offer these three helper macros:
+% \begin{quote}
+% |\caption@setbool|\marg{name}\marg{value}\\
+% | |(with |value = false/true/no/yes/off/on/0/1|)\\
+% |\caption@ifbool|\marg{name}\marg{if-clause}\marg{else-clause}\\
+% |\caption@undefbool|\marg{name}
+% \end{quote}
+% \begin{macrocode}
+\newcommand*\caption@setbool[1]{%
+ \expandafter\caption@set@bool\csname caption@if#1\endcsname}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@set@bool[2]{%
+ \caption@ifinlist{#2}{1,true,yes,on}{%
+ \let#1\@firstoftwo
+ }{\caption@ifinlist{#2}{0,false,no,off}{%
+ \let#1\@secondoftwo
+ }{%
+ \caption@Error{Undefined boolean value `#2'}%
+ }}}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@ifbool[1]{\@nameuse{caption@if#1}}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@undefbool[1]{\@nameundef{caption@if#1}}
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+% \end{macro}
+% \end{macro}
+%
+% \begin{macro}{\caption@teststar}
+% \changes{v1.1}{2007/05/08}{This macro and its usage added}
+% \changes{v1.1e}{2007/10/28}{\cs{caption@teststar@} added}
+% |\caption@teststar|\marg{cmd}\marg{star arg}\marg{non-star arg}\\
+% |\caption@teststar@|\marg{cmd}\marg{star arg}\marg{non-star arg}
+% \begin{macrocode}
+\newcommand*\caption@teststar[3]{\@ifstar{#1{#2}}{#1{#3}}}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@teststar@[3]{%
+ \@ifstar{#1{#2}}{\caption@ifatletter{#1{#2}}{#1{#3}}}}
+\AtBeginDocument{\let\caption@teststar@\caption@teststar}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@ifatletter{%
+ \ifnum\the\catcode`\@=11
+ \expandafter\@firstoftwo
+ \else
+ \expandafter\@secondoftwo
+ \fi}
+\AtBeginDocument{\let\caption@ifatletter\@secondoftwo}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@withoptargs}
+% \changes{v1.1}{2007/08/12}{This macro added}
+% \changes{v1.5}{2012/04/09}{This macro revised}
+% |\caption@withoptargs|\marg{cmd}
+% \begin{macrocode}
+\newcommand*\caption@withoptargs[1]{%
+ \@ifstar
+ {\def\caption@tempa{*}\caption@@withoptargs{#1}}%
+ {\def\caption@tempa{}\caption@@withoptargs{#1}}}
+% \end{macrocode}
+% \begin{macrocode}
+\def\caption@@withoptargs#1{%
+ \@ifnextchar[%]
+ {\caption@@@withoptargs{#1}}%
+ {\caption@@@@withoptargs{#1}}}
+% \end{macrocode}
+% \begin{macrocode}
+\def\caption@@@withoptargs#1[#2]{%
+ \l@addto@macro\caption@tempa{[{#2}]}%
+ \caption@@withoptargs{#1}}
+% \end{macrocode}
+% \begin{macrocode}
+\def\caption@@@@withoptargs#1{%
+ \def\caption@tempb{#1}%
+ \expandafter\caption@tempb\expandafter{\caption@tempa}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@gobble}
+% \changes{v1.4}{2011/08/19}{This macro added}
+% |\caption@gobble*|\oarg{arg}\oarg{\ldots}\marg{arg}\par
+% Same as |\@gobble|, but gobbles optional arguments as well.
+% \begin{macrocode}
+\DeclareRobustCommand*\caption@gobble{%
+ \caption@withoptargs\@gobbletwo}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@CheckCommand}
+% \changes{v1.1}{2007/04/10}{This macro added}
+% \begin{macro}{\caption@IfCheckCommand}
+% \changes{v1.1}{2007/04/10}{This macro added}
+% \changes{v1.2b}{2008/08/02}{Revised so \cs{next} is no longer used}
+% \changes{v1.5}{2012/08/25}{Bugfix: Uses \cs{caption@tempa} instead of \cs{@tempa}}
+% |\caption@CheckCommand|\marg{macro}\marg{definition of macro}\par
+% checks if a command already exists, with the same definition.
+% It can be used more-than-once to check if one of multiple definitions will
+% finally match.
+% (It redefines itself later on to |\@gobbletwo| if the two commands match
+% fine, making further checks harmless.)\par
+% |\caption@IfCheckCommand|\marg{true}\marg{false}\par
+% will execute the \meta{true} code if one match was finally given,
+% the \meta{false} code otherwise.
+% (It simply checks if |\caption@CheckCommand| is |\@gobbletwo| and
+% restores the starting definition of |\caption@CheckCommand|.)
+% \begin{macrocode}
+\newcommand\caption@DoCheckCommand[2]{%
+ \begingroup
+ \let\caption@tempa#1%
+ #2%
+ \ifx\caption@tempa#1%
+ \endgroup
+ \let\caption@CheckCommand\@gobbletwo
+ \else
+ \endgroup
+ \fi}
+\@onlypreamble\caption@DoCheckCommand
+% \end{macrocode}
+% \begin{macrocode}
+\let\caption@CheckCommand\caption@DoCheckCommand
+\@onlypreamble\caption@CheckCommand
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@IfCheckCommand{%
+ \ifx\caption@CheckCommand\@gobbletwo
+ \let\caption@CheckCommand\caption@DoCheckCommand
+ \expandafter\@firstoftwo
+ \else
+ \expandafter\@secondoftwo
+ \fi}
+\@onlypreamble\caption@IfCheckCommand
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+%
+% \begin{macro}{\caption@AtBeginDocument}
+% \changes{v1.1}{2007/04/13}{This macro and its usage added}
+% \changes{v1.2e}{2010/01/09}{Adapted to the combine document class}
+% |\caption@AtBeginDocument*|\marg{code}\\
+% Same as |\AtBeginDocument| but the execution of code
+% will be surrounded by two |\PackageInfo|s.
+% The starred variant causes the code to be executed after all code
+% specified using the non-starred variant.
+% \begin{macrocode}
+\let\caption@begindocumenthook\@empty
+\let\caption@@begindocumenthook\@empty
+% \end{macrocode}
+% \begin{macrocode}
+\def\caption@AtBeginDocument{%
+ \caption@teststar\g@addto@macro
+ \caption@@begindocumenthook\caption@begindocumenthook}
+%\@onlypreamble\caption@AtBeginDocument
+% \end{macrocode}
+% \begin{macrocode}
+\AtBeginDocument{%
+ \caption@InfoNoLine{Begin \noexpand\AtBeginDocument code}%
+% \end{macrocode}
+% \begin{macrocode}
+ \def\caption@AtBeginDocument{%
+ \@ifstar{\g@addto@macro\caption@@begindocumenthook}\@firstofone}%
+ \caption@begindocumenthook
+ \let\caption@begindocumenthook\relax
+% \end{macrocode}
+% \begin{macrocode}
+ \def\caption@AtBeginDocument{%
+ \@ifstar\@firstofone\@firstofone}%
+ \caption@@begindocumenthook
+ \let\caption@@begindocumenthook\relax
+% \end{macrocode}
+% \begin{macrocode}
+ \caption@InfoNoLine{End \noexpand\AtBeginDocument code}}
+% \end{macrocode}
+% \end{macro}
+%
+% \subsection{Information, Warnings, and Errors}
+%
+% \begin{macro}{\caption@Info}
+% \changes{v1.3}{2010/10/25}{Moved from package to kernel}
+% |\caption@Info|\marg{message}
+% \begin{macrocode}
+\newcommand*\caption@Info[1]{%
+ \PackageInfo{caption}{#1}}
+% \end{macrocode}
+% \end{macro}
+% \begin{macro}{\caption@InfoNoLine}
+% \changes{v1.3}{2010/10/25}{Moved from package to kernel}
+% |\caption@InfoNoLine|\marg{message}\\
+% \Note{The \cs{@gobble} at the end of the 2nd argument of
+% \cs{PackageInfo} suppresses the line number info.
+% See TLC2\cite{TLC2}, A.4.7, p885 for details.}
+% \begin{macrocode}
+\newcommand*\caption@InfoNoLine[1]{%
+ \caption@Info{#1\@gobble}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@Warning}
+% \changes{v1.1c}{2007/10/14}{This macro added, will now be used for warnings}
+% |\caption@Warning|\marg{message}
+% \begin{macrocode}
+\newcommand*\caption@Warning[1]{%
+ \caption@WarningNoLine{#1\on@line}}
+% \end{macrocode}
+% \end{macro}
+% \begin{macro}{\caption@WarningNoLine}
+% \changes{v1.1c}{2007/10/14}{This macro added, will now be used for warnings}
+% |\caption@WarningNoLine|\marg{message}
+% \begin{macrocode}
+\newcommand*\caption@WarningNoLine[1]{%
+ \PackageWarning{caption}{#1.^^J\caption@wh\@gobbletwo}}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@wh{%
+ See the caption package documentation for explanation.}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@Error}
+% \changes{v1.0j}{2007/01/20}{This macro added, will now be used for errors}
+% \changes{v1.0o}{2007/04/11}{Renamed from \cs{caption@error} to \cs{caption@Error}}
+% \changes{v1.1b}{2007/09/18}{Usage of \cs{caption@Package} removed}
+% |\caption@Error|\marg{message}
+% \begin{macrocode}
+\newcommand*\caption@Error[1]{%
+ \PackageError{caption}{#1}\caption@eh}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@eh{%
+ If you do not understand this error, please take a closer look\MessageBreak
+ at the documentation of the `caption' package, especially the\MessageBreak
+ section about errors.\MessageBreak\@ehc}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@KV@err}
+% \changes{v1.1b}{2007/09/18}{This macro added}
+% \begin{macrocode}
+\let\caption@KV@err\caption@Error
+% \end{macrocode}
+% \end{macro}
+%
+% \subsection{Using the keyval package}
+%
+% We need the \package{keyval} package for option handling, so we load it here.
+% \begin{macrocode}
+\RequirePackage{keyval}[1997/11/10]
+% \end{macrocode}
+%
+% \begin{macro}{\undefine@key}
+% |\undefine@key|\marg{family}\marg{key}\par
+% This helper macro is the opposite of |\define@key|, it removes a keyval
+% definition.
+% \begin{macrocode}
+\providecommand*\undefine@key[2]{%
+ \@nameundef{KV@#1@#2}\@nameundef{KV@#1@#2@default}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\@onlypreamble@key}
+% \changes{v1.1}{2007/07/22}{This macro added}
+% \changes{v1.1e}{2007/11/01}{\cs{KV@err} will be used now instead of \cs{@notprerr}}
+% |\onlypreamble@key|\marg{family}\marg{key}\par
+% Analogous to |\@onlypreamble| from \LaTeXe.
+% \begin{macrocode}
+\providecommand*\@preamble@keys{}
+\providecommand*\@onlypreamble@key[2]{\@cons\@preamble@keys{{#1}{#2}}}
+\@onlypreamble\@onlypreamble@key
+\@onlypreamble\@preamble@keys
+% \end{macrocode}
+% \begin{macrocode}
+\providecommand*\@notprerr@key[1]{\KV@err{Can be used only in preamble}}
+% \end{macrocode}
+% \begin{macrocode}
+\caption@AtBeginDocument*{%
+ \def\@elt#1#2{\expandafter\let\csname KV@#1@#2\endcsname\@notprerr@key}%
+ \@preamble@keys
+ \let\@elt\relax}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\DeclareCaptionOption}
+% |\DeclareCaptionOption|\marg{option}\oarg{default value}\marg{code}\\
+% |\DeclareCaptionOption*|\marg{option}\oarg{default value}\marg{code}\par
+% We declare our options using these commands (instead of using
+% |\DeclareOption| offered by \LaTeXe), so the keyval package is used.
+% The starred form makes the option available during the lifetime of the
+% current package only, so they can be used with |\usepackage|, but
+% \emph{not} with |\captionsetup| later on.
+% \begin{macrocode}
+\newcommand*\DeclareCaptionOption{%
+ \caption@teststar\caption@declareoption\AtEndOfPackage\@gobble}
+\@onlypreamble\DeclareCaptionOption
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@declareoption[2]{%
+ #1{\undefine@key{caption}{#2}}\caption@declare@option{#2}}
+\@onlypreamble\caption@declareoption
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@declare@option{%
+ \define@key{caption}}
+%% no \@onlypreamble\caption@declare@option, will be used by \captionsetup
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\DeclareCaptionOptionNoValue}
+% \changes{v1.1c}{2007/10/06}{This macro added}
+% |\DeclareCaptionOptionNoValue|\marg{option}\marg{code}\\
+% |\DeclareCaptionOptionNoValue*|\marg{option}\marg{code}\par
+% Same as \cs{DeclareCaptionOption} but issues an error if a value is given.
+% \begin{macrocode}
+\newcommand*\DeclareCaptionOptionNoValue{%
+ \caption@teststar\caption@declareoption@novalue\AtEndOfPackage\@gobble}
+\@onlypreamble\DeclareCaptionOptionNoValue
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand\caption@declareoption@novalue[3]{%
+ \caption@declareoption{#1}{#2}[\KV@err]{%
+ \caption@option@novalue{#2}{##1}{#3}}}
+\@onlypreamble\caption@declareoption@novalue
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@option@novalue[2]{%
+ \ifx\KV@err#2%
+ \expandafter\@firstofone
+ \else
+ \KV@err{No value allowed for #1}%
+ \expandafter\@gobble
+ \fi}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\ifcaptionsetup@star}
+% \changes{v1.2a}{2008/01/12}{This macro added}
+% If the starred form of |\captionsetup| is used, this will be set to |true|.
+% (It will be reset to |false| at the end of |\caption@setkeys|.)
+% \begin{macrocode}
+\newif\ifcaptionsetup@star
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\captionsetup}
+% \changes{v1.0a}{2004/01/17}{Bugfix: Missing \% added}
+% \changes{v1.1}{2007/07/22}{Starred-variant added}
+% \changes{v1.1e}{2007/07/27}{Inside packages the starred variant will be used automatically}
+% \changes{v1.2}{2007/11/16}{Bugfix 07-11-09: `space hack' added}
+% \changes{v1.2a}{2008/01/12}{\cs{ifcaptionsetup@star} will be set now}
+% \changes{v1.5}{2012/04/09}{Support of multiple optional arguments added}
+% |\captionsetup|\oarg{type}\ldots\marg{keyval-list of options}\\
+% |\captionsetup*|\oarg{type}\ldots\marg{keyval-list of options}\par
+% If the optional argument `type' is specified, we simply save or append
+% the option list, otherwise we `execute' it with |\setkeys|.
+% (The non-starred variant issues a warning if \meta{keyval-list of options}
+% is not used later on.)
+% \Note{The starred variant will be used inside packages automatically.}
+% \begin{macrocode}
+\newcommand*\captionsetup{%
+ \caption@teststar@\@captionsetup\@gobble\@firstofone}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\@captionsetup[1]{%
+ \captionsetup@startrue#1\captionsetup@starfalse
+ \@ifnextchar[\caption@setup@options\caption@setup}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@setup{\caption@setkeys{caption}}
+% \end{macrocode}
+% \begin{macrocode}
+\def\caption@setup@options[#1]{%
+ \@ifnextchar[%
+ {\caption@stepthecounter
+ \caption@withoptargs{\@expandtwoargs
+ \caption@setup@options@i{#1}{@\caption@thecounter}}}%
+ {\caption@setup@options@{#1}}}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@setup@options@i[4]{%
+ \caption@setup@options@{#1}{#2}%
+ \caption@declare@option{#2}[]{\captionsetup#3{#4}}}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@setup@options@[2]{%
+ \@bsphack
+ \ifcaptionsetup@star\captionsetup@starfalse\else\caption@addtooptlist{#1}\fi
+ \expandafter\caption@l@addto@list\csname caption@opt@#1\endcsname{#2}%
+ \@esphack}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\clearcaptionsetup}
+% \changes{v1.1}{2007/07/29}{Optional argument added}
+% \changes{v1.1}{2007/08/17}{Starred variant added}
+% \changes{v1.1e}{2007/07/27}{Inside packages the starred variant will be used automatically}
+% \changes{v1.2}{2007/11/16}{Bugfix 07-11-09: `space hack' added}
+% |\clearcaptionsetup|\oarg{option}\marg{type}\\
+% |\clearcaptionsetup*|\oarg{option}\marg{type}\par
+% This removes the saved option list associated with \meta{type}.
+% If \meta{option} is given, only this option will be removed from the list.
+% (The starred variant does not issue warnings.)
+% \Note{The starred variant will be used inside packages automatically.}
+% \begin{macrocode}
+\newcommand*\clearcaptionsetup{%
+ \caption@teststar@\@clearcaptionsetup\@gobble\@firstofone}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\@clearcaptionsetup[1]{%
+ \let\caption@tempa#1%
+ \@testopt\@@clearcaptionsetup{}}
+% \end{macrocode}
+% \begin{macrocode}
+\def\@@clearcaptionsetup[#1]#2{%
+ \@bsphack
+ \expandafter\caption@ifempty@list\csname caption@opt@#2\endcsname
+ {\caption@tempa{\caption@Warning{Option list `#2' undefined}}}%
+ {\ifx,#1,%
+ \caption@clearsetup{#2}%
+ \else
+ \caption@@removefromsetup{#1}{#2}%
+ \fi}%
+ \@esphack}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@clearsetup[1]{%
+ \caption@removefromoptlist{#1}%
+ \@nameundef{caption@opt@#1}}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@removefromsetup{%
+ \let\caption@tempa\@gobble
+ \caption@@removefromsetup}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@@removefromsetup[2]{%
+ \expandafter\let\expandafter\@tempa\csname caption@opt@#2\endcsname
+ \expandafter\let\csname caption@opt@#2\endcsname\@undefined
+ \def\@tempb##1=##2\@nil{##1}%
+ \edef\@tempc{#1}%
+ \@for\@tempa:=\@tempa\do{%
+ \edef\@tempd{\expandafter\@tempb\@tempa=\@nil}%
+ \ifx\@tempd\@tempc
+ \let\caption@tempa\@gobble
+ \else
+ \expandafter\expandafter\expandafter\caption@l@addto@list
+ \expandafter\csname caption@opt@#2\expandafter\endcsname
+ \expandafter{\@tempa}%
+ \fi}%
+ \expandafter\caption@ifempty@list\csname caption@opt@#2\endcsname
+ {\caption@removefromoptlist{#2}}{}%
+ \caption@tempa{\caption@Warning{%
+ Option `#1' was not in list `#2'}}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\showcaptionsetup}
+% \changes{v1.0d}{2005/05/03}{Optimized for memory usage}
+% \changes{v1.1}{2007/07/29}{Bugfix: Does not expand option list anymore}
+% \changes{v1.2}{2007/11/16}{Bugfix 07-11-09: `space hack' added}
+% |\showcaptionsetup|\oarg{package}\marg{type}\par
+% This comes for debugging issues: It shows the saved option list which
+% is associated with \meta{type}.
+% \begin{macrocode}
+\newcommand*\showcaptionsetup[2][\@firstofone]{%
+ \@bsphack
+ \GenericWarning{}{%
+ #1 Caption Info: Option list on `#2'\MessageBreak
+ #1 Caption Data: \@ifundefined{caption@opt@#2}{%
+ -none-%
+ }{%
+ {\expandafter\expandafter\expandafter\strip@prefix
+ \expandafter\meaning\csname caption@opt@#2\endcsname}%
+ }}%
+ \@esphack}
+% \end{macrocode}
+% \end{macro}
+%
+% \changes{v1.1}{2007/07/02}{Option \opt{options=} added}
+% \changes{v1.3}{2010/09/05}{Option \opt{options*=} added}
+% \changes{v1.4b}{2012/01/12}{Option \opt{options*=} removed}
+% \begin{macrocode}
+\DeclareCaptionOption{options}{\caption@setoptions{#1}}
+% \end{macrocode}
+%
+% \begin{macro}{\caption@setoptions}
+% \changes{v1.0g}{2006/01/03}{Optional argument added}
+% \changes{v1.0h}{2006/01/26}{Revised}
+% \changes{v1.0j}{2007/01/30}{Optional argument removed}
+% \changes{v1.1}{2007/04/11}{Usage of \cs{clearcaptionsetup} added}
+% \changes{v1.1}{2007/05/09}{Renamed from \cs{caption@settype} to \cs{caption@setoptions}}
+% \changes{v1.2}{2007/12/03}{Definition of \cs{caption@iftypewarning} removed}
+% \changes{v1.3}{2010/09/05}{Starred variant added}
+% \changes{v1.4b}{2012/01/12}{Starred variant removed}
+% |\caption@setoptions|\marg{type or environment or\ldots}\par
+% Caption options which have been saved with |\captionsetup|\oarg{type} can
+% be executed by using this command.
+% It simply executes the saved option list (and clears it afterwards),
+% if there is any.
+% \iffalse
+% (The starred variant do not clear the option list.)
+% \fi
+% \begin{macrocode}
+\newcommand*\caption@setoptions[1]{%
+ \caption@Debug{options=#1}%
+ \expandafter\let\expandafter\caption@opt\csname caption@opt@#1\endcsname
+ \ifx\caption@opt\relax \else
+ \caption@xsetup\caption@opt
+ \caption@clearsetup{#1}%
+ \fi}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@xsetup[1]{\expandafter\caption@setup\expandafter{#1}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@addtooptlist}
+% \changes{v1.1}{2007/07/22}{This macro added}
+% \begin{macro}{\caption@removefromoptlist}
+% \changes{v1.1}{2007/07/22}{This macro added}
+% \changes{v1.2c}{2008/08/24}{Fatal typo corrected}
+% |\caption@addtooptlist|\marg{type}\\
+% |\caption@removefromoptlist|\marg{type}\par
+% Adds or removes an \meta{type} to the list of unused caption options.
+% Note that the catcodes of \meta{type} are sanitized here so removing
+% \meta{type} from the list do not fail when the \package{float} package
+% is used (since |\float@getstyle| gives a result which tokens have catcode
+% 12 $=$ ``other'').
+% \begin{macrocode}
+\newcommand*\caption@addtooptlist[1]{%
+ \@ifundefined{caption@opt@#1@lineno}{%
+ \caption@dooptlist\caption@g@addto@list{#1}%
+ \expandafter\xdef\csname caption@opt@#1@lineno\endcsname{\the\inputlineno}%
+ }{}}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@removefromoptlist[1]{%
+ \caption@dooptlist\caption@g@removefrom@list{#1}%
+ \global\expandafter\let\csname caption@opt@#1@lineno\endcsname\@undefined}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@dooptlist[2]{%
+ \begingroup
+ \edef\@tempa{#2}\@onelevel@sanitize\@tempa
+ \expandafter#1\expandafter\caption@optlist\expandafter{\@tempa}%
+ \endgroup}
+% \end{macrocode}
+% \begin{macrocode}
+\AtEndDocument{%
+ \caption@for@list\caption@optlist{%
+ \caption@WarningNoLine{%
+ Unused \string\captionsetup[#1]
+ on input line \csname caption@opt@#1@lineno\endcsname}}}
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+%
+% \begin{macro}{\caption@setkeys}
+% \changes{v1.0g}{2006/01/03}{This macro added}
+% \changes{v1.0j}{2007/01/20}{Bugfix: Usage of \cs{caption@keydepth} added}
+% \changes{v1.0j}{2007/01/30}{Optional argument added}
+% \changes{v1.0n}{2007/04/08}{\cs{caption@keydepth} is now a command instead of a counter}
+% \changes{v1.1b}{2007/09/18}{Usage of \cs{caption@Package} removed, we use \cs{caption@KV@err} instead}
+% \changes{v1.2}{2007/11/16}{Bugfix 07-11-09: `space hack' added}
+% \changes{v1.2a}{2008/01/12}{\cs{captionsetup@starfalse} added}
+% \changes{v1.2d}{2009/09/30}{Bugfix 09-09-29: Missing error handler will be defined automatically}
+% \changes{v1.4}{2011/08/24}{Redefinition of \cs{XKV@err} added}
+% |\caption@setkeys|\oarg{package}\marg{family}\marg{key-values}\par
+% This one simply calls |\setkeys|\marg{family}\marg{key-values}
+% but lets the error messages not refer to the \package{keyval} package,
+% but to the \meta{package} package instead.
+% \begin{macrocode}
+\newcommand*\caption@setkeys{\@dblarg\caption@@setkeys}
+% \end{macrocode}
+% \begin{macrocode}
+\long\def\caption@@setkeys[#1]#2#3{%
+ \@bsphack
+% \end{macrocode}
+% \begin{macrocode}
+ \expandafter\let\csname ORI@KV@err\caption@keydepth\endcsname\KV@err
+ \expandafter\let\csname ORI@KV@errx\caption@keydepth\endcsname\KV@errx
+ \expandafter\let\csname ORI@XKV@err\caption@keydepth\endcsname\XKV@err
+ \edef\caption@keydepth{\caption@keydepth i}%
+% \end{macrocode}
+% \begin{macrocode}
+ \expandafter\let\expandafter\KV@err\csname #1@KV@err\endcsname
+ \ifx\KV@err\relax
+ \def\KV@err##1{\PackageError{#1}{##1}{%
+ See the #1 package documentation for explanation.}}%
+ \fi
+ \def\KV@errx{\KV@err}%
+ \def\XKV@err{\let\@tempa\XKV@tkey\KV@err}%
+% \end{macrocode}
+% \begin{macrocode}
+ \caption@Debug{\protect\setkeys{#2}{#3}}%
+ \setkeys{#2}{#3}%
+% \end{macrocode}
+% \begin{macrocode}
+ \edef\caption@keydepth{\expandafter\@gobble\caption@keydepth}%
+ \expandafter\let\expandafter\KV@err\csname ORI@KV@err\caption@keydepth\endcsname
+ \expandafter\let\expandafter\KV@errx\csname ORI@KV@errx\caption@keydepth\endcsname
+ \expandafter\let\expandafter\XKV@err\csname ORI@XKV@err\caption@keydepth\endcsname
+% \end{macrocode}
+% \begin{macrocode}
+ \ifx\caption@keydepth\@empty \captionsetup@starfalse \fi
+% \end{macrocode}
+% \begin{macrocode}
+ \@esphack}
+% \end{macrocode}
+% \begin{macrocode}
+\let\caption@keydepth\@empty
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@ExecuteOptions}
+% \changes{v1.1}{2007/07/15}{This macro added}
+% \changes{v1.3}{2010/09/04}{Depends on package now}
+% |\caption@ExecuteOptions|\marg{package}\marg{key-values}\par
+% We execute our options using the keyval interface, so we use this one
+% instead of |\ExecuteOptions| offered by \LaTeXe.
+% \begin{macrocode}
+\newcommand*\caption@ExecuteOptions[2]{%
+ \expandafter\@expandtwoargs\csname caption@setkeys@#1\endcsname{#1}{#2}}%
+\@onlypreamble\caption@ExecuteOptions
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@ProcessOptions}
+% \changes{v1.0a}{2004/01/23}{Bugfix, see
+% \purett{news:400D360C.9678329F@gmx.net} for details}
+% \changes{v1.0g}{2006/01/03}{Improvement, uses \cs{caption@setkeys}
+% instead of \cs{setkeys}}
+% \changes{v1.0h}{2006/02/23}{Bugfix, now processes only those global
+% options which have a default value}
+% \changes{v1.0j}{2007/01/30}{\cs{ProcessOptionsWithKV} renamed to
+% \cs{caption@ProcessOptions} and moved from the package to the kernel}
+% \changes{v1.1}{2007/04/17}{Star variant added}
+% |\caption@ProcessOptions*|\marg{package}\par
+% We process our options using the keyval package, so we use this one
+% instead of |\ProcessOptions| offered by \LaTeXe.
+% The starred variant do not process the global options.
+% (This code was taken from the \package{hyperref} package\cite{hyperref}
+% \version{6.74} and improved.)
+% \begin{macrocode}
+\newcommand*\caption@ProcessOptions{%
+ \caption@teststar\caption@@ProcessOptions\@gobble\@firstofone}
+\@onlypreamble\caption@ProcessOptions
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand\caption@@ProcessOptions[2]{%
+ \let\@tempc\relax
+ \let\caption@tempa\@empty
+ #1{% \@firstofone -or- \@gobble
+ \@for\CurrentOption:=\@classoptionslist\do{%
+ \@ifundefined{KV@#2@\CurrentOption}{}{%
+ \@ifundefined{KV@#2@\CurrentOption @default}{%
+ \PackageInfo{#2}{Global option `\CurrentOption' ignored}%
+ }{%
+ \PackageInfo{#2}{Global option `\CurrentOption' processed}%
+ \edef\caption@tempa{\caption@tempa\CurrentOption,}%
+ \@expandtwoargs\@removeelement\CurrentOption
+ \@unusedoptionlist\@unusedoptionlist
+ }%
+ }%
+ }%
+ \let\CurrentOption\@empty
+ }%
+ \caption@ExecuteOptions{#2}{\caption@tempa\@ptionlist{\@currname.\@currext}}%
+ \AtEndOfPackage{\let\@unprocessedoptions\relax}}
+\@onlypreamble\caption@@ProcessOptions
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@SetupOptions}
+% \changes{v1.3}{2010/09/04}{This macro added}
+% |\caption@SetupOptions|\marg{package}\marg{code}\par
+% After calling this macro |\caption@ExecuteOptions| and
+% |\usepackage|\oarg{options}\marg{package}
+% will both be mapped to \meta{code} with \meta{package} and \meta{options}
+% as arguments |#1| and |#2|. (This helps avoiding ``Option clash'' errors.)
+% \begin{macrocode}
+\newcommand*\caption@packagelist{}
+\@onlypreamble\caption@packagelist
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand\caption@SetupOptions[2]{%
+ \@namedef{caption@setkeys@#1}##1##2{#2}%
+ \expandafter\@onlypreamble\csname caption@setkeys@#1\endcsname
+ \@cons\caption@packagelist{{#1}}}
+\@onlypreamble\caption@SetupOptions
+% \end{macrocode}
+% \begin{macrocode}
+\let\caption@onefilewithoptions\@onefilewithoptions
+\def\@onefilewithoptions#1[#2]{%
+ \begingroup
+ \def\@tempa{%
+ \endgroup
+ \caption@onefilewithoptions{#1}[{#2}]}%
+ \def\@tempb{#1}%
+ \def\@elt##1{%
+ \def\@tempc{##1}%
+ \ifx\@tempb\@tempc
+ \def\@tempa{%
+ \endgroup
+ \caption@ExecuteOptions{#1}{#2}%
+ \caption@onefilewithoptions{#1}[]}%
+ \fi}
+ \caption@packagelist
+ \@tempa}
+\@onlypreamble\caption@onefilewithoptions
+% \end{macrocode}
+% \end{macro}
+%
+% \subsection{Margin resp. width}
+% \changes{v1.0n}{2007/04/01}{\cs{captionmarginx} renamed to \cs{captionmargin@}}
+% \changes{v1.0n}{2007/04/03}{Option `twoside' added}
+% \changes{v1.1}{2007/08/11}{Options `margin*', `minmargin', and `maxmargin' added}
+% \changes{v1.2}{2007/11/10}{Option `oneside' added}
+%
+% \begin{macro}{\captionmargin}
+% \begin{macro}{\captionwidth}
+% |\captionmargin| and |\captionwidth| contain the extra margin
+% resp. the total width used for captions. Please never set these values in
+% a direct way, they are just accessible in user documents to provide
+% compatibility to \version{1.x}.\par
+% Note that we can only set one value at a time, `margin' \emph{or} `width'.
+% If |\captionwidth| is not zero we will take this value afterwards,
+% otherwise |\captionmargin| and |\captionmargin@|.
+% \begin{macrocode}
+\newdimen\captionmargin
+\newdimen\captionmargin@
+\newdimen\captionwidth
+\newdimen\caption@tempdima
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+%
+% \begin{macrocode}
+\DeclareCaptionOption{margin}{\setcaptionmargin{#1}}
+\DeclareCaptionOption{margin*}{\setcaptionmargin*{#1}}
+\DeclareCaptionOption{width}{\setcaptionwidth{#1}}
+\DeclareCaptionOption{width*}{\setcaptionwidth*{#1}}
+% \end{macrocode}
+% \begin{macrocode}
+\DeclareCaptionOption{calcmargin}{\caption@setcalcmargin{#1}}
+\DeclareCaptionOption{calcmargin*}{\caption@setcalcmargin*{#1}}
+\DeclareCaptionOption{calcwidth}{\caption@setcalcwidth{#1}}
+\DeclareCaptionOption{calcwidth*}{\caption@setcalcwidth*{#1}}
+% \end{macrocode}
+% \begin{macrocode}
+\DeclareCaptionOption{twoside}[1]{\caption@set@bool\caption@iftwoside{#1}}
+\DeclareCaptionOptionNoValue{oneside}{\caption@set@bool\caption@iftwoside0}
+% \end{macrocode}
+% \begin{macrocode}
+\DeclareCaptionOption{minmargin}{\caption@setoptcmd\caption@minmargin{#1}}
+\DeclareCaptionOption{maxmargin}{\caption@setoptcmd\caption@maxmargin{#1}}
+% \end{macrocode}
+%
+% \begin{macro}{\setcaptionmargin}
+% \changes{v1.0f}{2005/10/24}{Renamed from \cs{caption@setmargin} to \cs{setcaptionmargin}}
+% \changes{v1.0f}{2005/10/24}{\cs{setcaptionmargin} enhanced so it can take
+% left+right margin}
+% \changes{v1.1}{2007/08/11}{Starred variant added}
+% \changes{v1.1}{2007/08/12}{\cs{setlength}\cs{captionmargin} \&
+% \cs{setlength}\cs{captionmargin@} swapped so
+% `\texttt{margin*=}\cs{captionmargin}' works in singleline options}
+% \changes{v1.3}{2010/11/07}{Support for option \opt{calcmargin} added}
+% |\setcaptionmargin|\marg{amount}\\
+% |\setcaptionmargin*|\marg{amount}\par
+% Please never use this in user documents, it's just there to
+% provide compatibility to the \package{caption2} package.
+% \begin{macrocode}
+\newcommand*\setcaptionmargin{%
+ \caption@resetcalcmargin
+ \caption@setmargin}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@setmargin{%
+ \caption@teststar\caption@@setmargin\@gobble\@firstofone}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@@setmargin[2]{%
+ #1{\captionwidth\z@}%
+ \caption@@@setmargin#2,#2,\@nil}
+% \end{macrocode}
+% \begin{macrocode}
+\def\caption@@@setmargin#1,#2,#3\@nil{%
+ \setlength\captionmargin@{#2}%
+ \setlength\captionmargin{#1}%
+ \addtolength\captionmargin@{-\captionmargin}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\setcaptionwidth}
+% \changes{v1.0f}{2005/10/24}{Renamed from \cs{caption@setwidth} to \cs{setcaptionwidth}}
+% \changes{v1.3}{2010/11/07}{Starred variant added}
+% \changes{v1.3}{2010/11/07}{Support for option \opt{calcwidth} added}
+% |\setcaptionwidth|\marg{amount}\\
+% |\setcaptionwidth*|\marg{amount}\par
+% Please never use this in user documents, it's just there to
+% provide compatibility to the \package{caption2} package.
+% \begin{macrocode}
+\newcommand*\setcaptionwidth{%
+ \caption@resetcalcmargin
+ \caption@setwidth}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@setwidth{%
+ \caption@teststar\caption@@setwidth\@gobble\@firstofone}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@@setwidth[2]{%
+ #1{\captionmargin\z@\captionmargin@\z@}%
+ \setlength\captionwidth{#2}}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@resetcalcmargin}
+% \changes{v1.3}{2010/11/07}{This macro added}
+% \begin{macrocode}
+\newcommand*\caption@resetcalcmargin{%
+ \let\caption@calcmargin@hook\@empty}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@setcalcmargin}
+% \changes{v1.3}{2010/11/07}{This macro added}
+% \begin{macrocode}
+\newcommand*\caption@setcalcmargin{%
+ \caption@teststar{\caption@@setcalcmargin\caption@setmargin}%
+ \@secondoftwo\@firstoftwo}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@@setcalcmargin[3]{%
+ #2{\caption@resetcalcmargin
+ \l@addto@macro\caption@calcmargin@hook{#1{#3}}}%
+ {\l@addto@macro\caption@calcmargin@hook{#1*{#3}}}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@setcalcwidth}
+% \changes{v1.3}{2010/11/07}{This macro added}
+% \begin{macrocode}
+\newcommand*\caption@setcalcwidth{%
+ \caption@teststar{\caption@@setcalcmargin\caption@setwidth}%
+ \@secondoftwo\@firstoftwo}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@counter}
+% \changes{v1.0n}{2007/04/03}{This counter added}
+% \changes{v1.1e}{2007/10/28}{Renamed to \cs{caption@thecounter}; \cs{caption@stepcounter} added}
+% \changes{v1.5}{2012/04/09}{\cs{caption@stepcounter} renamed to \cs{caption@stepthecounter}}
+% Internal counter. At the moment it will be used inside
+% |\caption@ifoddpage| only.
+% \begin{macrocode}
+\newcommand*\caption@thecounter{0}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@stepthecounter{%
+ \@tempcnta\caption@thecounter
+ \advance\@tempcnta\@ne
+ \xdef\caption@thecounter{\the\@tempcnta}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@newlabel}
+% \changes{v1.0n}{2007/04/03}{This macro added}
+% This command is a modified version of |\newlabel| from \LaTeX2e.
+% It will be written to the \texttt{.aux} file to
+% pass label information from one run to another.
+% (We use it inside |\caption@ifoddpage| and |\caption@ragged|.)
+% \begin{macrocode}
+\newcommand*\caption@newlabel{\@newl@bel{caption@r}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@thepage}
+% \changes{v1.0n}{2007/04/03}{This macro added}
+% This command is a modified version of |\thepage| from \LaTeX2e.
+% It will be used inside |\caption@ifoddpage| only.
+% \begin{macrocode}
+\newcommand*\caption@thepage{\the\c@page}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@label}
+% \changes{v1.1}{2007/09/01}{This macro added}
+% \changes{v1.2}{2007/12/03}{Definition of \cs{caption@newlabel} in AUX file added}
+% This command is a modified version of |\label| from \LaTeX2e.
+% It will be used inside |\caption@ifoddpage| and |\FP@helpNote|.
+% \begin{macrocode}
+\newcommand*\caption@label[1]{%
+ \caption@@label
+ \protected@write\@auxout{\let\caption@thepage\relax}%
+ {\string\caption@newlabel{#1}{\caption@thepage}}}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@@label{%
+ \global\let\caption@@label\relax
+ \protected@write\@auxout{}%
+ {\string\providecommand*\string\caption@newlabel[2]{}}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@pageref}
+% \changes{v1.1}{2007/09/01}{This macro added}
+% \changes{v1.2d}{2009/10/09}{Uses \cs{@latex@warning} instead of \cs{caption@Warning} now}
+% This command is a modified version of |\pageref| from \LaTeX2e.
+% It will be used inside |\caption@ifoddpage| and |\FP@helpNote|.
+% \begin{macrocode}
+\newcommand*\caption@pageref[1]{%
+ \expandafter\ifx\csname caption@r@#1\endcsname\relax
+ \G@refundefinedtrue % => 'There are undefined references.'
+ \@latex@warning{Reference `#1' on page \thepage \space undefined}%
+ \else
+ \expandafter\let\expandafter\caption@thepage\csname caption@r@#1\endcsname
+ \fi}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@ifoddpage}
+% \changes{v1.0n}{2007/04/03}{This macro added}
+% \changes{v1.1e}{2007/10/28}{Incrementation of counter moved to \cs{caption@@make}}
+% At the moment this macro uses an own label\ldots ref mechanism,
+% but an alternative implementation method would be using the
+% \package{refcount} package\cite{refcount} and |\ifodd\getpagerefnumber{|\ldots|}|.
+% \Note{This macro re-defines itself so the \texttt{.aux} file will
+% only be used once per group.}
+% \begin{macrocode}
+\newcommand*\caption@ifoddpage{%
+ \caption@iftwoside{%
+ \caption@label\caption@thecounter
+ \caption@pageref\caption@thecounter
+ \ifodd\caption@thepage
+ \let\caption@ifoddpage\@firstoftwo
+ \else
+ \let\caption@ifoddpage\@secondoftwo
+ \fi
+ }{\let\caption@ifoddpage\@firstoftwo}%
+% \end{macrocode}
+% \begin{macrocode}
+ \caption@ifoddpage}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@setoptcmd}
+% \changes{v1.1}{2007/08/11}{This macro added}
+% |\caption@setoptcmd|\marg{cmd}\marg{off -or- value}
+% \begin{macrocode}
+\newcommand*\caption@setoptcmd[2]{%
+ \caption@ifinlist{#2}{0,false,no,off}{\let#1\@undefined}{\def#1{#2}}}
+% \end{macrocode}
+% \end{macro}
+%
+% \subsection{Indentions}
+%
+% \begin{macro}{\caption@indent}
+% \changes{v1.1}{2007/07/29}{Renamed from \cs{captionindent} to \cs{caption@indent}}
+% \begin{macro}{\caption@parindent}
+% \begin{macro}{\caption@hangindent}
+% These are the indentions we support.
+% \begin{macrocode}
+\newdimen\caption@indent
+\newdimen\caption@parindent
+\newdimen\caption@hangindent
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+% \end{macro}
+%
+% \changes{v1.0b}{2004/05/16}{Defaults added for options \opt{parindent=}
+% and \opt{hangindent=}}
+% \changes{v1.0f}{2005/08/22}{Option \opt{parskip=}: \cs{AtBeginCaption}
+% replaced by \cs{caption@@par}}
+% \changes{v1.0f}{2005/08/22}{Undocumented defaults for \opt{parindent=},
+% \opt{hangindent=}, and \opt{parskip=} removed}
+% \begin{macrocode}
+\DeclareCaptionOption{indent}[\leftmargini]{% obsolete!
+ \setlength\caption@indent{#1}}
+\DeclareCaptionOption{indention}[\leftmargini]{%
+ \setlength\caption@indent{#1}}
+\DeclareCaptionOption{parindent}{%
+ \setlength\caption@parindent{#1}}
+\DeclareCaptionOption{hangindent}{%
+ \setlength\caption@hangindent{#1}}
+\DeclareCaptionOption{parskip}{%
+ \l@addto@macro\caption@@par{\setlength\parskip{#1}}}
+% \end{macrocode}
+%
+% \changes{v1.0f}{2005/08/22}{Increased compatibility to KOMA-Script:
+% A special version of options `parindent' and `parskip' added}
+% \changes{v1.0g}{2006/01/03}{Bugfix 06-01-03: KOMA-Script variants of
+% `parskip' and `parindent' options revised and moved into caption kernel}
+% \changes{v1.0h}{2006/02/23}{KOMA-Script variants of `parskip' and
+% `parindent' are obsolete now, removed}
+% \changes{v1.0m}{2007/03/30}{KOMA-Script variants of `parskip' and
+% `parindent' re-added, since they still collide with the current
+% version of the subfig package (Sigh!)}
+%
+% There is an option clash between the \KOMAScript\ document classes
+% and the \package{caption} kernel, both define the options |parindent| and
+% |parskip| but with different meaning.
+% Furthermore the ones defined by the \package{caption} kernel take a
+% value as parameter but the \KOMAScript\ ones do not.
+% So we need special versions of the options |parindent| and |parskip| here
+% which determine if a value is given (and therefore should be treated as
+% our option) or not (and therefore should be ignored by us).\footnote{%^^A
+% This problem was completely solved due a change of \cs{caption@ProcessOptions}
+% in \thispackage\ \version{1.0h}, but we still need this workaround since
+% these options would otherwise still collide with the current version $1.3$
+% of the \package{subfig} package (Sigh!)}
+% \begin{macrocode}
+\providecommand*\caption@ifkomaclass{%
+ \caption@ifundefined\scr@caption\@gobble\@firstofone}
+\@onlypreamble\caption@ifkomaclass
+% \end{macrocode}
+% \begin{macrocode}
+\caption@ifkomaclass{%
+% \end{macrocode}
+% \begin{macrocode}
+ \let\caption@KV@parindent\KV@caption@parindent
+ \DeclareCaptionOption{parindent}[]{%
+ \ifx,#1,%
+ \caption@Debug{Option `parindent' ignored}%
+ \else
+ \caption@KV@parindent{#1}%
+ \fi}%
+% \end{macrocode}
+% \begin{macrocode}
+ \let\caption@KV@parskip\KV@caption@parskip
+ \DeclareCaptionOption{parskip}[]{%
+ \ifx,#1,%
+ \caption@Debug{Option `parskip' ignored}%
+ \else
+ \caption@KV@parskip{#1}%
+ \fi}%
+% \end{macrocode}
+% \begin{macrocode}
+}
+% \end{macrocode}
+%
+% \subsection{Styles}
+%
+% \begin{macro}{\DeclareCaptionStyle}
+% \changes{v1.0a}{2004/01/17}{Pass through argument \#3 so extra spaces
+% between arguments do make any harm}
+% |\DeclareCaptionStyle|\marg{name}\oarg{single-line-list-of-KV}\marg{list-of-KV}
+% \begin{macrocode}
+\newcommand*\DeclareCaptionStyle[1]{%
+ \@testopt{\caption@declarestyle{#1}}{}}
+\@onlypreamble\DeclareCaptionStyle
+% \end{macrocode}
+% \begin{macrocode}
+\def\caption@declarestyle#1[#2]#3{%
+ \global\@namedef{caption@sls@#1}{#2}%
+ \global\@namedef{caption@sty@#1}{#3}}
+\@onlypreamble\caption@declarestyle
+% \end{macrocode}
+% \end{macro}
+%
+% \changes{v1.2a}{2008/01/20}{Option \opt{style*=} added}
+% \begin{macrocode}
+\DeclareCaptionOption{style}{\caption@setstyle{#1}}
+\DeclareCaptionOption{style*}{\caption@setstyle*{#1}}
+% \end{macrocode}
+%
+% \begin{macro}{\caption@setstyle}
+% \changes{v1.0e}{2005/06/01}{Starred variant added}
+% \changes{v1.1}{2007/07/29}{Recursive style definitions should work now}
+% \changes{v1.1d}{2007/10/23}{`SingleLine' renamed to `singleline' for consistency}
+% \changes{v1.2}{2007/12/03}{Definition of \cs{caption@iftypewarning} removed}
+% |\caption@setstyle|\marg{name}\\
+% |\caption@setstyle*|\marg{name}\par
+% Selecting a caption style means saving the additional
+% \meta{single-line-list-of-KV} (this will be done by |\caption@sls|),
+% resetting the caption options to the base ones (this will be done using
+% |\caption@resetstyle|) and executing the \meta{list-of-KV} options
+% (this will be done using |\caption@setup|).\par
+% The starred version will give no error message if the given style is not
+% defined.
+% \begin{macrocode}
+\newcommand*\caption@setstyle{%
+ \caption@teststar\caption@@setstyle\@gobble\@firstofone}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@@setstyle[2]{%
+ \@ifundefined{caption@sty@#2}%
+ {#1{\caption@Error{Undefined style `#2'}}}%
+ {\expandafter\let\expandafter\caption@sty\csname caption@sty@#2\endcsname
+ \ifx\caption@setstyle@flag\@undefined
+ \let\caption@setstyle@flag\relax
+ \caption@resetstyle
+ \caption@xsetup\caption@sty
+ \let\caption@setstyle@flag\@undefined
+ \else
+ \caption@xsetup\caption@sty
+ \fi
+ \expandafter\let\expandafter\caption@sls\csname caption@sls@#2\endcsname
+ \expandafter\caption@l@addto@list\expandafter\caption@opt@singleline
+ \expandafter{\caption@sls}}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@resetstyle}
+% \changes{v1.1}{2007/02/04}{%
+% This macro renamed from \cs{caption@setdefault} to \cs{caption@resetstyle}}
+% \changes{v1.1d}{2007/10/23}{`SingleLine' renamed to `singleline' for consistency}
+% \changes{v1.2}{2007/11/17}{Usage of \opt{size=} added}
+% \changes{v1.2b}{2008/05/06}{Usage of \opt{rule} added}
+% \changes{v1.5}{2012/03/15}{\opt{box=parbox} added}
+% \changes{v1.6}{2013/05/01}{\opt{box=none} added, \opt{box=parbox} changed to \opt{parbox=parbox}}
+% This resets (nearly) all caption options to the base ones.
+% \emph{Note that this does not touch the skips and the positioning!}
+% \begin{macrocode}
+\newcommand*\caption@resetstyle{%
+ \caption@setup{%
+ box=none,boxcolor=white,parbox=parbox,%
+ format=plain,labelformat=default,labelsep=colon,textformat=simple,%
+ justification=justified,font=,size=,labelfont=,textfont=,%
+ margin=0pt,minmargin=0,maxmargin=0,%
+ indent=0pt,parindent=0pt,hangindent=0pt,%
+ slc,rule,strut}%
+ \caption@clearsetup{singleline}}
+% \end{macrocode}
+% \end{macro}
+%
+% \changes{v1.0c}{2005/02/12}{\opt{indent=0pt} added to caption style \opt{default}}
+% \changes{v1.1}{2007/02/04}{Caption style `default' renamed to `base', and a new `default' added}
+% \changes{v1.1}{2007/03/31}{\opt{format=plain} added to caption style \opt{default}}
+% \changes{v1.1c}{2007/10/14}{\opt{format=plain} removed from caption style \opt{default}}
+% \changes{v1.5}{2012/03/15}{\opt{box=default} added to caption style \opt{default}}
+% Currently there are two pre-defined styles, called `base' \& `default'.
+% The first one is a perfect match to the behavior of |\@makecaption| offered
+% by the standard \LaTeX\ document classes (and was called `default' in
+% \thispackage\ \version{1.0}), the second one matches the document
+% class actually used.
+% \begin{macrocode}
+\DeclareCaptionStyle{base}[indent=0pt,justification=centering]{}
+\DeclareCaptionStyle{default}[indent=0pt,justification=centering]{%
+ box=default,format=default,labelsep=default,textformat=default,%
+ justification=default,font=default,labelfont=default,textfont=default}
+% \end{macrocode}
+%
+% \changes{v1.2b}{2008/05/06}{Option \opt{slc=} added}
+% \begin{macrocode}
+\DeclareCaptionOption{singlelinecheck}[1]{\caption@set@bool\caption@ifslc{#1}}
+\DeclareCaptionOption{slc}[1]{\KV@caption@singlelinecheck{#1}}
+% \end{macrocode}
+%
+% \subsection{Boxes}
+%
+% \begin{macro}{\DeclareCaptionBox}
+% \changes{v1.5}{2012/03/15}{This macro added}
+% |\DeclareCaptionBox|\marg{name}\marg{code with \#1 and \#2}
+% \begin{macrocode}
+\newcommand*\DeclareCaptionBox[2]{%
+ \global\long\@namedef{caption@box@#1}##1##2{#2}}
+\@onlypreamble\DeclareCaptionBox
+% \end{macrocode}
+% \end{macro}
+%
+% \changes{v1.5}{2012/03/15}{Option \opt{box=} added}
+% \changes{v1.6}{2013/05/01}{Option \opt{parbox=} added}
+% \begin{macrocode}
+\DeclareCaptionOption{box}{\caption@setbox{#1}}
+\DeclareCaptionOption{parbox}{\caption@set@box\caption@parbox{#1}}
+% \end{macrocode}
+%
+% \begin{macro}{\caption@setbox}
+% |\caption@setbox|\marg{name}\par
+% Selecting a caption box simply means saving the code (in |\caption@box|).
+% \begin{macrocode}
+\newcommand*\caption@setbox{%
+ \caption@set@box\caption@box}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@set@box[2]{%
+ \@ifundefined{caption@box@#2}%
+ {\caption@Error{Undefined box `#2'}}%
+ {\expandafter\let\expandafter#1\csname caption@box@#2\endcsname}}
+% \end{macrocode}
+% \end{macro}
+%
+% There are four pre-defined boxes, called `empty', `none',
+% `parbox', and `colorbox'.
+% \changes{v1.0i}{2006/05/13}{We define \cs{captionbox} instead of
+% \cs{caption@start/endbox}}
+% \changes{v1.0l}{2006/03/09}{Bugfix 07-03-09: \cs{captionbox} changed from
+% \cs{parbox-t} to \cs{parbox-b}}
+% \changes{v1.2}{2007/11/11}{\cs{captionbox} renamed to \cs{caption@parbox}}
+% \changes{v1.5}{2012/03/15}{\cs{caption@parbox} adapted to \cs{DeclareCaptionBox}}
+% \changes{v1.6}{2013/05/02}{Option \opt{boxsep=} added}
+% \begin{macrocode}
+\DeclareCaptionBox{empty}{}
+\DeclareCaptionBox{none}{#2}
+\DeclareCaptionBox{parbox}{\parbox[b]{#1}{#2}}
+%\DeclareCaptionBox{colorbox}{%
+% \colorbox{\caption@boxcolor}{\caption@box@parbox{\dimexpr #1-2\fboxsep}{#2}}}
+\DeclareCaptionBox{colorbox}{\colorbox{\caption@boxcolor}{%
+ \setlength\caption@tempdima{#1}%
+ \addtolength\caption@tempdima{-2\fboxsep}%
+ \linewidth=\caption@tempdima\hsize=\caption@tempdima
+ #2}}
+\DeclareCaptionOption{boxcolor}{\def\caption@boxcolor{#1}}
+\DeclareCaptionOption{boxsep}{\setlength\fboxsep{#1}}
+% \end{macrocode}
+%
+% `default' usually maps to `none`.
+% \begin{macrocode}
+\def\caption@box@default{\caption@box@none}
+% \end{macrocode}
+%
+% \subsection{Formats}
+%
+% \begin{macro}{\DeclareCaptionFormat}
+% \changes{v1.0a}{2004/01/17}{Pass through argument \#3 so extra spaces
+% between arguments do make any harm}
+% \changes{v1.0c}{2005/02/09}{Starred variant added}
+% \changes{v1.1c}{2007/10/15}{Optional argument added}
+% |\DeclareCaptionFormat|\marg{name}\marg{code with \#1, \#2, and \#3}\\
+% |\DeclareCaptionFormat*|\marg{name}\marg{code with \#1, \#2, and \#3}\par
+% The starred form causes the code being typeset in vertical (instead of
+% horizontal) mode, but does not support the |indention=| option.
+% \begin{macrocode}
+\newcommand*\DeclareCaptionFormat{%
+ \caption@teststar\caption@declareformat\@gobble\@firstofone}
+\@onlypreamble\DeclareCaptionFormat
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@declareformat[2]{%
+ \@dblarg{\caption@@declareformat#1{#2}}}
+\@onlypreamble\caption@declareformat
+% \end{macrocode}
+% \begin{macrocode}
+\long\def\caption@@declareformat#1#2[#3]#4{%
+ \global\expandafter\let\csname caption@ifh@#2\endcsname#1%
+ \global\long\@namedef{caption@slfmt@#2}##1##2##3{#3}%
+ \global\long\@namedef{caption@fmt@#2}##1##2##3{#4}}
+\@onlypreamble\caption@@declareformat
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+\DeclareCaptionOption{format}{\caption@setformat{#1}}
+% \end{macrocode}
+%
+% \begin{macro}{\caption@setformat}
+% |\caption@setformat|\marg{name}\par
+% Selecting a caption format simply means saving the code (in |\caption@fmt|)
+% and if the code should be used in horizontal or vertical mode (|\caption@ifh|).
+% \begin{macrocode}
+\newcommand*\caption@setformat[1]{%
+ \@ifundefined{caption@fmt@#1}%
+ {\caption@Error{Undefined format `#1'}}%
+ {\expandafter\let\expandafter\caption@ifh\csname caption@ifh@#1\endcsname
+ \expandafter\let\expandafter\caption@slfmt\csname caption@slfmt@#1\endcsname
+ \expandafter\let\expandafter\caption@fmt\csname caption@fmt@#1\endcsname}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\DeclareCaptionDefaultFormat}
+% \changes{v1.2a}{2008/01/31}{This macro added}
+% \begin{macrocode}
+\newcommand*\DeclareCaptionDefaultFormat[1]{%
+ \expandafter\def\expandafter\caption@fmt@default\expandafter
+ {\csname caption@fmt@#1\endcsname}%
+ \expandafter\def\expandafter\caption@slfmt@default\expandafter
+ {\csname caption@slfmt@#1\endcsname}%
+ \expandafter\def\expandafter\caption@ifh@default\expandafter
+ {\csname caption@ifh@#1\endcsname}}
+\@onlypreamble\DeclareCaptionDefaultFormat
+% \end{macrocode}
+% \end{macro}
+%
+% \changes{v1.0a}{2004/01/23}{%
+% Caption format \opt{default} renamed to \opt{normal}}
+% \changes{v1.0e}{2005/05/12}{%
+% Caption format \opt{normal} renamed to \opt{@normal}}
+% \changes{v1.0f}{2005/08/25}{%
+% Caption format \opt{@normal} renamed to \opt{plain} and documented}
+% \changes{v1.1c}{2007/10/14}{%
+% Single-line variant of caption format \opt{hang} added}
+% There are two pre-defined formats, called `plain' and `hang'.
+% \begin{macrocode}
+\DeclareCaptionFormat{plain}{#1#2#3\par}
+% \end{macrocode}
+% \begin{macrocode}
+\DeclareCaptionFormat{hang}[#1#2#3\par]{%
+ \caption@ifin@list\caption@lsepcrlist\caption@lsepname
+ {\caption@Error{%
+ The option `labelsep=\caption@lsepname' does not work\MessageBreak
+ with `format=hang'}}%
+ {\@hangfrom{#1#2}%
+ \advance\caption@parindent\hangindent
+ \advance\caption@hangindent\hangindent
+ \caption@@par#3\par}}
+% \end{macrocode}
+%
+% \changes{v1.0a}{2004/01/23}{Caption format \opt{default} linked to \opt{plain}}
+% \changes{v1.0d}{2005/04/28}{Bugfix 05-04-28: Missing \cs{caption@ifh@default} added}
+% `default' usually maps to `plain'.
+% \begin{macrocode}
+\DeclareCaptionDefaultFormat{plain}
+% \end{macrocode}
+%
+% \subsection{Label formats}
+%
+% \begin{macro}{\DeclareCaptionLabelFormat}
+% \changes{v1.0a}{2004/01/17}{%
+% Pass through argument \#2 so extra spaces between arguments do make any harm}
+% |\DeclareCaptionLabelFormat|\marg{name}\marg{code with \#1 and \#2}
+% \begin{macrocode}
+\newcommand*\DeclareCaptionLabelFormat[2]{%
+ \global\@namedef{caption@lfmt@#1}##1##2{#2}}
+\@onlypreamble\DeclareCaptionLabelFormat
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+\DeclareCaptionOption{labelformat}{\caption@setlabelformat{#1}}
+% \end{macrocode}
+%
+% \begin{macro}{\caption@setlabelformat}
+% |\caption@setlabelformat|\marg{name}\par
+% Selecting a caption label format simply means saving the code (in |\caption@lfmt|).
+% \begin{macrocode}
+\newcommand*\caption@setlabelformat[1]{%
+ \@ifundefined{caption@lfmt@#1}%
+ {\caption@Error{Undefined label format `#1'}}%
+ {\expandafter\let\expandafter\caption@lfmt\csname caption@lfmt@#1\endcsname}}
+% \end{macrocode}
+% \end{macro}
+%
+% \changes{v1.2}{2007/12/16}{Caption label format \opt{brace} added}
+% \changes{v1.7}{2015/09/16}{Caption label format \opt{autodot} added}
+% \changes{v1.7}{2016/05/22}{Caption label format \opt{autodot} fixed}
+% \changes{v1.8}{2016/05/22}{Caption label format \opt{unnumbered} added}
+% There are six pre-defined label formats, called `empty', `simple',
+% `parens', `brace', `autodot', and `unnumbered'.
+% \begin{macrocode}
+\DeclareCaptionLabelFormat{empty}{}
+\DeclareCaptionLabelFormat{simple}{\bothIfFirst{#1}{\nobreakspace}#2}
+\DeclareCaptionLabelFormat{parens}{\bothIfFirst{#1}{\nobreakspace}(#2)}
+\DeclareCaptionLabelFormat{brace}{\bothIfFirst{#1}{\nobreakspace}#2)}
+\DeclareCaptionLabelFormat{autodot}{\bothIfFirst{#1}{\nobreakspace}#2\autodot}
+\DeclareCaptionLabelFormat{unnumbered}{#1}
+% \end{macrocode}
+%
+% `default' usually maps to `simple'.
+% \begin{macrocode}
+\def\caption@lfmt@default{\caption@lfmt@simple}
+% \end{macrocode}
+%
+% \subsection{Label separators}
+%
+% \begin{macro}{\DeclareCaptionLabelSeparator}
+% \changes{v1.0a}{2004/01/17}{Pass through argument \#2 so extra spaces
+% between arguments do make any harm}
+% \changes{v1.0f}{2005/08/25}{Starred variant added}
+% \changes{v1.1}{2007/07/13}{Test for CR added}
+% \changes{v1.3}{2011/08/06}{Test for CR revised}
+% |\DeclareCaptionLabelSeparator|\marg{name}\marg{code}\\
+% |\DeclareCaptionLabelSeparator*|\marg{name}\marg{code}\par
+% The starred form causes the label separator to be typeset \emph{without} using |\captionlabelfont|.
+% \begin{macrocode}
+\newcommand\DeclareCaptionLabelSeparator{%
+ \caption@teststar\caption@declarelabelseparator\@gobble\@firstofone}
+\@onlypreamble\DeclareCaptionLabelSeparator
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand\caption@declarelabelseparator[3]{%
+ \global\@namedef{caption@iflf@#2}{#1}%
+ \global\long\@namedef{caption@lsep@#2}{#3}%
+ \caption@@declarelabelseparator{#2}#3\\\@nil}
+\@onlypreamble\caption@declarelabelseparator
+% \end{macrocode}
+% \begin{macrocode}
+\long\def\caption@@declarelabelseparator#1#2\\#3\@nil{%
+ \def\@tempa{#3}\ifx\@tempa\@empty \else
+ \caption@g@addto@list\caption@lsepcrlist{#1}%
+ \fi}
+\@onlypreamble\caption@@declarelabelseparator
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+\DeclareCaptionOption{labelsep}{\caption@setlabelseparator{#1}}
+\DeclareCaptionOption{labelseparator}{\caption@setlabelseparator{#1}}
+% \end{macrocode}
+%
+% \begin{macro}{\caption@setlabelseparator}
+% |\caption@setlabelseparator|\marg{name}\par
+% Selecting a caption label separator simply means saving the code (in |\caption@lsep|).
+% \begin{macrocode}
+\newcommand*\caption@setlabelseparator[1]{%
+ \@ifundefined{caption@lsep@#1}%
+ {\caption@Error{Undefined label separator `#1'}}%
+ {\edef\caption@lsepname{#1}%
+ \expandafter\let\expandafter\caption@iflf\csname caption@iflf@#1\endcsname
+ \expandafter\let\expandafter\caption@lsep\csname caption@lsep@#1\endcsname}}
+% \end{macrocode}
+% \end{macro}
+%
+% \changes{v1.0e}{2005/06/11}{Bugfix 05-03-23: Caption label separator
+% \opt{newline} implementation changed from \cs{newline} to \cs{\textbackslash}}
+% \changes{v1.0f}{2005/08/24}{Caption label separator \opt{endash} added}
+% There are seven pre-defined label separators, called `none', `colon', `period', `space',
+% `quad', `newline', and `endash'.
+% \begin{macrocode}
+\DeclareCaptionLabelSeparator{none}{}
+\DeclareCaptionLabelSeparator{colon}{: }
+\DeclareCaptionLabelSeparator{period}{. }
+\DeclareCaptionLabelSeparator{space}{ }
+\DeclareCaptionLabelSeparator*{quad}{\quad}
+\DeclareCaptionLabelSeparator*{newline}{\\}
+\DeclareCaptionLabelSeparator*{endash}{\space\textendash\space}
+% \end{macrocode}
+%
+% \begin{macro}{\caption@setdefaultlabelsep}
+% \changes{v1.2d}{2009/03/29}{This macro added}
+% \begin{macrocode}
+\newcommand*\caption@setdefaultlabelsep[1]{%
+ \ifx\caption@lsep\caption@lsep@default
+ \caption@set@default@labelsep{#1}%
+ \caption@setlabelseparator{default}%
+ \else
+ \caption@set@default@labelsep{#1}%
+ \fi}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@set@default@labelsep[1]{%
+ \def\caption@lsep@default{\@nameuse{caption@lsep@#1}}%
+ \def\caption@iflf@default{\@nameuse{caption@iflf@#1}}}
+% \end{macrocode}
+% \end{macro}
+%
+% `default' usually maps to `colon'.
+% \begin{macrocode}
+\caption@set@default@labelsep{colon}
+% \end{macrocode}
+%
+% \subsection{Text formats}
+%
+% \begin{macro}{\DeclareCaptionTextFormat}
+% \changes{v1.0j}{2007/02/18}{This macro added}
+% |\DeclareCaptionTextFormat|\marg{name}\marg{code with \#1}
+% \begin{macrocode}
+\newcommand*\DeclareCaptionTextFormat[2]{%
+ \global\long\@namedef{caption@tfmt@#1}##1{#2}}
+\@onlypreamble\DeclareCaptionTextFormat
+% \end{macrocode}
+% \end{macro}
+%
+% \changes{v1.0c}{2005/02/12}{Option \opt{strut=} added}
+% \begin{macrocode}
+\DeclareCaptionOption{textformat}{\caption@settextformat{#1}}
+\DeclareCaptionOption{strut}[1]{\caption@set@bool\caption@ifstrut{#1}}
+% \end{macrocode}
+%
+% \begin{macro}{\caption@settextformat}
+% \changes{v1.0j}{2007/02/18}{This macro added}
+% |\caption@settextformat|\marg{name}\par
+% Selecting a caption text format simply means saving the code (in |\caption@tfmt|).
+% \begin{macrocode}
+\newcommand*\caption@settextformat[1]{%
+ \@ifundefined{caption@tfmt@#1}%
+ {\caption@Error{Undefined text format `#1'}}%
+ {\expandafter\let\expandafter\caption@tfmt\csname caption@tfmt@#1\endcsname}}
+% \end{macrocode}
+% \end{macro}
+%
+% There are three pre-defined text formats, called `empty', `simple' and `period'.
+% \changes{v1.4}{2011/10/05}{Pre-defined text format `empty' added}
+% \changes{v1.7}{2015/09/16}{The text format `empty' now takes care of the \cs{label}}
+% \begin{macrocode}
+\DeclareCaptionTextFormat{empty}{%
+ \caption@get@label#1\caption@makeanchor{}\@nil
+ \caption@thelabel
+ \global\let\caption@thelabel\relax}
+\long\def\caption@get@label#1\caption@makeanchor#2#3\@nil{%
+ \def\caption@tempa{#2}%
+ \ifx\caption@tempa\@empty
+ \caption@getlabel#1\label{}\@nil
+ \else
+ \caption@getlabel#2\label{}\@nil
+ \fi}
+% \end{macrocode}
+% \begin{macrocode}
+\DeclareCaptionTextFormat{simple}{#1}
+\DeclareCaptionTextFormat{period}{#1.}
+% \end{macrocode}
+%
+% `default' usually maps to `simple'.
+% \begin{macrocode}
+\def\caption@tfmt@default{\caption@tfmt@simple}
+% \end{macrocode}
+%
+% \begin{macro}{\caption@getlabel}
+% \changes{v1.0}{2011/09/03}{\cs{label} can have optional arguments now}
+% \changes{v1.7}{2015/09/16}{Moved from \package{bicaption} package to \package{caption3}}
+% \changes{v1.8d}{2019/09/01}{Bugfix: Global definition of \cs{caption@thelabel} added}
+% Gets the label command out of the (first) caption text and stores it to |\caption@thelabel|.
+% \begin{macrocode}
+\long\def\caption@getlabel#1\label#2#3\@nil{%
+ \def\@tempa{#2}%
+ \ifx\@tempa\@empty
+ \let\caption@thelabel\relax
+ \else
+ \def\@tempb{*}%
+ \ifx\@tempa\@tempb
+ \def\caption@thelabel{\label*}%
+ \caption@@getlabel#3\@nil
+ \else
+ \def\caption@thelabel{\label}%
+ \caption@@getlabel{#2}#3\@nil
+ \fi
+ \fi}
+% \end{macrocode}
+% \begin{macrocode}
+\long\def\caption@@getlabel#1#2\@nil{%
+ \def\@tempa{#1}%
+ \def\@tempb{[}%
+ \ifx\@tempa\@tempb
+ \caption@@@getlabel#1#2\@nil
+ \else
+ \l@addto@macro\caption@thelabel{{#1}}%
+ \fi}
+% \end{macrocode}
+% \begin{macrocode}
+\long\def\caption@@@getlabel[#1]#2\@nil{%
+ \l@addto@macro\caption@thelabel{[{#1}]}%
+ \caption@@getlabel#2\@nil}
+% \end{macrocode}
+% \begin{macrocode}
+\let\caption@thelabel\relax
+% \end{macrocode}
+% \end{macro}
+%
+% \subsection{Fonts}
+%
+% \begin{macro}{\DeclareCaptionFont}
+% \changes{v1.0a}{2004/01/22}{%
+% Bugfix: Multi token arguments are allowed now}
+% \changes{v1.1}{2007/05/07}{%
+% Internal: Uses \cs{caption@fnt} instead of \cs{caption@temp} now}
+% |\DeclareCaptionFont|\marg{name}\marg{code}
+% \begin{macrocode}
+\newcommand*\DeclareCaptionFont[2]{%
+ \define@key{caption@fnt}{#1}[]{\l@addto@macro\caption@fnt{#2}}}
+\@onlypreamble\DeclareCaptionFont
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\DeclareCaptionDefaultFont}
+% \changes{v1.1}{2006/05/14}{This macro added}
+% \changes{v1.2a}{2008/01/31}{Renamed from \cs{DeclareDefaultCaptionFont} to \cs{DeclareCaptionDefaultFont}}
+% |\DeclareCaptionDefaultFont|\marg{name}\marg{code}
+% \begin{macrocode}
+\newcommand*\DeclareCaptionDefaultFont[2]{%
+ \global\@namedef{caption#1@default}{#2}}
+\@onlypreamble\DeclareCaptionDefaultFont
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+\DeclareCaptionOption{font}{\caption@setfont{font}{#1}}
+\DeclareCaptionOption{font+}{\caption@addtofont{font}{#1}}
+\DeclareCaptionDefaultFont{font}{}
+% \end{macrocode}
+% \begin{macrocode}
+\DeclareCaptionOption{labelfont}{\caption@setfont{labelfont}{#1}}
+\DeclareCaptionOption{labelfont+}{\caption@addtofont{labelfont}{#1}}
+\DeclareCaptionDefaultFont{labelfont}{}
+% \end{macrocode}
+% \begin{macrocode}
+\DeclareCaptionOption{textfont}{\caption@setfont{textfont}{#1}}
+\DeclareCaptionOption{textfont+}{\caption@addtofont{textfont}{#1}}
+\DeclareCaptionDefaultFont{textfont}{}
+% \end{macrocode}
+%
+% \begin{macro}{\caption@setfont}
+% \changes{v1.0j}{2007/01/30}{Usage of \cs{caption@setkeys} with optional argument}
+% \changes{v1.1}{2006/05/14}{Support of \cs{DeclareDefaultCaptionFont} added}
+% |\caption@setfont|\marg{name}\marg{keyval-list of names}\par
+% Selecting a caption font means saving all the code snippets
+% in |\caption|\meta{name}.
+% \begin{macrocode}
+\newcommand*\caption@setfont[1]{%
+ \expandafter\let\csname caption#1\endcsname\@empty
+ \caption@addtofont{#1}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@addtofont}
+% \changes{v1.2}{2007/11/17}{This macro added}
+% |\caption@addtofont|\marg{name}\marg{keyval-list of names}\par
+% Like |\caption@setfont|, but adds the code snippets to |\caption|\meta{name}.\par
+% Because we use |\setkeys| recursive here we need to do this inside an
+% extra group.
+% \begin{macrocode}
+\newcommand*\caption@addtofont[2]{%
+ \begingroup
+ \expandafter\let\expandafter\caption@fnt\csname caption#1\endcsname
+ \define@key{caption@fnt}{default}[]{%
+ \l@addto@macro\caption@fnt{\csname caption#1@default\endcsname}}%
+ \caption@setkeys[caption]{caption@fnt}{#2}%
+ \global\let\caption@tempa\caption@fnt
+ \endgroup
+ \expandafter\let\csname caption#1\endcsname\caption@tempa}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@font}
+% \changes{v1.1}{2007/05/07}{This macro added}
+% |\caption@font|\marg{keyval-list of names}\\
+% |\caption@font*|\marg{keyval-code}\par
+% Sets the given font, e.g.~|\caption@font{small,it}|
+% is equivalent to |\small\itshape|.
+% \begin{macrocode}
+\newcommand*\caption@font{%
+ \caption@teststar\caption@@font\@firstofone
+ {\caption@setkeys[caption]{caption@fnt}}}
+\newcommand*\caption@@font[2]{%
+ \begingroup
+ \def\caption@fnt{\endgroup}%
+ #1{#2}%
+ \caption@fnt}
+% \end{macrocode}
+% \end{macro}
+%
+% These are the pre-defined font code snippets.
+%
+% \changes{v1.1}{2007/05/07}{Color font support added}
+% \begin{macrocode}
+\DeclareCaptionFont{normalcolor}{\normalcolor}
+\DeclareCaptionFont{color}{\color{#1}}
+% \end{macrocode}
+%
+% \begin{macrocode}
+\DeclareCaptionFont{normalfont}{\normalfont}
+\DeclareCaptionFont{up}{\upshape}
+\DeclareCaptionFont{it}{\itshape}
+\DeclareCaptionFont{sl}{\slshape}
+\DeclareCaptionFont{sc}{\scshape}
+\DeclareCaptionFont{md}{\mdseries}
+\DeclareCaptionFont{bf}{\bfseries}
+\DeclareCaptionFont{rm}{\rmfamily}
+\DeclareCaptionFont{sf}{\sffamily}
+\DeclareCaptionFont{tt}{\ttfamily}
+% \end{macrocode}
+%
+% \changes{v1.7}{2018/05/01}{Missing font sizes \texttt{tiny}, \texttt{LARGE}, \texttt{huge}, and \texttt{Huge} added}
+% \begin{macrocode}
+\DeclareCaptionFont{tiny}{\tiny}
+\DeclareCaptionFont{scriptsize}{\scriptsize}
+\DeclareCaptionFont{footnotesize}{\footnotesize}
+\DeclareCaptionFont{small}{\small}
+\DeclareCaptionFont{normalsize}{\normalsize}
+\DeclareCaptionFont{large}{\large}
+\DeclareCaptionFont{Large}{\Large}
+\DeclareCaptionFont{LARGE}{\LARGE}
+\DeclareCaptionFont{huge}{\huge}
+\DeclareCaptionFont{Huge}{\Huge}
+% \end{macrocode}
+%
+% \changes{v1.8}{2018/05/01}{Font size \texttt{smaller} added}
+% \begin{macrocode}
+\newcommand\caption@smaller{%
+ \ifx\@currsize\tiny
+ \relax
+ \else\ifx\@currsize\scriptsize
+ \tiny
+ \else\ifx\@currsize\footnotesize
+ \scriptsize
+ \else\ifx\@currsize\small
+ \footnotesize
+ \else\ifx\@currsize\normalsize
+ \small
+ \else\ifx\@currsize\large
+ \normalsize
+ \else\ifx\@currsize\Large
+ \large
+ \else\ifx\@currsize\LARGE
+ \Large
+ \else\ifx\@currsize\huge
+ \LARGE
+ \else\ifx\@currsize\Huge
+ \huge
+ \else
+ \caption@Warning{%
+ Cannot determine current font size.\MessageBreak
+ Try setting it with `size=' explicitly}%
+ \fi\fi\fi\fi\fi\fi\fi\fi\fi\fi}
+\DeclareCaptionFont{smaller}{\caption@smaller}
+% \end{macrocode}
+%
+% \changes{v1.8}{2018/05/02}{Font size \texttt{larger} added}
+% \begin{macrocode}
+\newcommand\caption@larger{%
+ \ifx\@currsize\tiny
+ \scriptsize
+ \else\ifx\@currsize\scriptsize
+ \footnotesize
+ \else\ifx\@currsize\footnotesize
+ \small
+ \else\ifx\@currsize\small
+ \normalsize
+ \else\ifx\@currsize\normalsize
+ \large
+ \else\ifx\@currsize\large
+ \Large
+ \else\ifx\@currsize\Large
+ \LARGE
+ \else\ifx\@currsize\LARGE
+ \huge
+ \else\ifx\@currsize\huge
+ \Huge
+ \else\ifx\@currsize\Huge
+ \relax
+ \else
+ \caption@Warning{%
+ Cannot determine current font size.\MessageBreak
+ Try setting it with `size=' explicitly}%
+ \fi\fi\fi\fi\fi\fi\fi\fi\fi\fi}
+\DeclareCaptionFont{larger}{\caption@larger}
+% \end{macrocode}
+%
+% \changes{v1.3}{2011/01/01}{\package{sansmath} package support added}
+% \begin{macrocode}
+\DeclareCaptionFont{sansmath}{\sansmath}
+% \end{macrocode}
+%
+% \changes{v1.0n}{2007/04/02}{\package{setspace} package support added}
+% \changes{v1.2d}{2009/10/09}{Bugfix 09-05-18: \package{setspace} package support revised}
+% \begin{macrocode}
+\DeclareCaptionFont{singlespacing}{%
+ \caption@ifundefined\setspace@singlespace{}{%
+ \setstretch\setspace@singlespace}}% normally 1
+\DeclareCaptionFont{onehalfspacing}{\onehalfspacing}
+\DeclareCaptionFont{doublespacing}{\doublespacing}
+\DeclareCaptionFont{stretch}{\setstretch{#1}}
+% \end{macrocode}
+%
+% \begin{macrocode}
+%\DeclareCaptionFont{normal}{%
+% \caption@font{normalcolor,normalfont,normalsize,singlespacing}
+\DeclareCaptionFont{normal}{%
+ \caption@font*{%
+ \KV@caption@fnt@normalcolor\@unused
+ \KV@caption@fnt@normalfont\@unused
+ \KV@caption@fnt@normalsize\@unused
+ \KV@caption@fnt@singlespacing\@unused}}
+% \end{macrocode}
+%
+% \changes{v1.0a}{2004/01/23}{Option \opt{size=} now sets \cs{captionsize} instead of \cs{captionfont}}
+% The old versions \version{1.x} of \thispackage\ offered this
+% command to setup the font size used for captions. We still do
+% so old documents will work fine.
+% \begin{macrocode}
+\DeclareCaptionOption{size}{\caption@setfont{size}{#1}}
+\DeclareCaptionDefaultFont{size}{}
+% \end{macrocode}
+%
+% \subsection{Justifications}
+%
+% \begin{macro}{\DeclareCaptionJustification}
+% \changes{v1.0a}{2004/01/17}{Pass through argument \#2 so extra spaces
+% between arguments do make any harm}
+% \changes{v1.1}{2007/07/03}{Mapped to \cs{DeclareCaptionFont}}
+% |\DeclareCaptionJustification|\marg{name}\marg{code}
+% \begin{macrocode}
+\newcommand*\DeclareCaptionJustification[2]{%
+ \global\@namedef{caption@hj@#1}{#2}% for compatibility to v1.0
+ \DeclareCaptionFont{#1}{#2}}
+\@onlypreamble\DeclareCaptionJustification
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\DeclareCaptionDefaultJustification}
+% \changes{v1.1}{2007/07/03}{This macro added}
+% \changes{v1.2a}{2008/01/31}{Renamed from \cs{DeclareDefaultCaptionJustification} to \cs{DeclareCaptionDefaultJustification}}
+% |\DeclareCaptionDefaultJustification|\marg{code}
+% \begin{macrocode}
+\newcommand*\DeclareCaptionDefaultJustification[1]{%
+ \global\@namedef{caption@hj@default}{#1}% for compatibility to v1.0
+ \DeclareCaptionDefaultFont{@hj}{#1}}
+\@onlypreamble\DeclareCaptionDefaultJustification
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+\DeclareCaptionOption{justification}{\caption@setjustification{#1}}
+\DeclareCaptionDefaultJustification{}
+% \end{macrocode}
+%
+% \begin{macro}{\caption@setjustification}
+% \changes{v1.1}{2007/07/03}{Mapped to \cs{caption@setfont}}
+% |\caption@setjustification|\marg{name}\par
+% Selecting a caption justification simply means saving the code (in |\caption@hj|).
+% \begin{macrocode}
+\newcommand*\caption@setjustification{\caption@setfont{@hj}}
+% \end{macrocode}
+% \end{macro}
+%
+% These are the pre-defined justification code snippets.
+% \begin{macrocode}
+\DeclareCaptionJustification{justified}{}
+\DeclareCaptionJustification{centering}{\centering}
+\DeclareCaptionJustification{centerfirst}{\centerfirst}
+\DeclareCaptionJustification{centerlast}{\centerlast}
+\DeclareCaptionJustification{raggedleft}{\raggedleft}
+\DeclareCaptionJustification{raggedright}{\raggedright}
+% \end{macrocode}
+%
+% \begin{macro}{\centerfirst}
+% \changes{v1.0j}{2007/01/21}{Bugfix: Usage of \cs{@centercr} added (Thanks to Olga!)}
+% \changes{v1.0j}{2007/01/21}{This macro renamed from \cs{caption@centerfirst} to \cs{centerfirst}}
+% Please blame Frank Mittelbach for the code of |\centerfirst| |:-)|
+% \begin{macrocode}
+\providecommand\centerfirst{%
+ \let\\\@centercr
+ \edef\caption@normaladjust{%
+ \leftskip\the\leftskip
+ \rightskip\the\rightskip
+ \parfillskip\the\parfillskip\relax}%
+ \leftskip\z@\@plus -1fil%
+ \rightskip\z@\@plus 1fil%
+ \parfillskip\z@skip
+ \noindent\hskip\z@\@plus 2fil%
+ \@setpar{\@@par\@restorepar\caption@normaladjust}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\centerlast}
+% \changes{v1.0j}{2007/01/21}{Bugfix: Usage of \cs{@centercr} added (Thanks to Olga!)}
+% \changes{v1.0j}{2007/01/21}{This macro renamed from \cs{caption@centerlast} to \cs{centerlast}}
+% This is based on code from Anne Br\"uggemann-Klein\cite{Anne}
+% \begin{macrocode}
+\providecommand\centerlast{%
+ \let\\\@centercr
+ \leftskip\z@\@plus 1fil%
+ \rightskip\z@\@plus -1fil%
+ \parfillskip\z@\@plus 2fil\relax}
+% \end{macrocode}
+% \end{macro}
+%
+% \subsubsection{The ragged2e package}
+% \changes{v1.0b}{2004/05/16}{Improved \package{ragged2e} package support}
+%
+% We also support the upper-case commands offered by the \package{ragged2e}
+% package.
+% Note that these just map to their lower-case variants if the
+% \package{ragged2e} package is not available.
+% \begin{macrocode}
+\DeclareCaptionJustification{Centering}{%
+ \caption@ragged\Centering\centering}
+\DeclareCaptionJustification{RaggedLeft}{%
+ \caption@ragged\RaggedLeft\raggedleft}
+\DeclareCaptionJustification{RaggedRight}{%
+ \caption@ragged\RaggedRight\raggedright}
+% \end{macrocode}
+%
+% \begin{macro}{\caption@ragged}
+% \changes{v1.0n}{2007/04/07}{The `ragged2e' package will now only been
+% loaded when needed}
+% \changes{v1.0o}{2007/04/11}{Bugfix: Usage of \cs{caption@Info} replaced
+% by \cs{caption@Debug}}
+% \changes{v1.1}{2007/04/16}{A different warning will be given on first \LaTeX\ run}
+% \changes{v1.4f}{2012/01/12}{Uses \cs{caption@IfPackageLoaded} now}
+% |\caption@ragged|\marg{yes-code}\marg{no-code}
+% executes the \meta{yes-code} if the \package{ragged2e} package is loaded
+% and \meta{no-code} if not. Additionally it tries to load the \package{ragged2e}
+% package.
+% \begin{macrocode}
+\newcommand*\caption@ragged{\caption@ifpackageloaded{ragged2e}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@ifpackageloaded}
+% \changes{v1.4f}{2012/01/12}{This macro added}
+% |\caption@ifpackageloaded|\marg{package}\marg{yes-code}\marg{no-code}
+% executes the \meta{yes-code} if the given package is loaded
+% and \meta{no-code} if not. Additionally it tries to load the package.
+% \begin{macrocode}
+\newcommand*\caption@ifpackageloaded[1]{%
+ \@ifundefined{caption@ifpkg@#1}%
+ {\caption@RequirePackage{#1}%
+ \caption@pkg@true{#1}}%
+ {}%
+ \caption@ifpkg{#1}}
+% \end{macrocode}
+% \begin{macrocode}
+\AtBeginDocument{\renewcommand*\caption@ifpackageloaded[1]{%
+ \@ifundefined{caption@ifpkg@#1}%
+ {\caption@addto@pkg@list{#1}%
+ \caption@pkg@false{#1}%
+ \caption@Warning{%
+ `#1' support has been changed.\MessageBreak
+ Rerun to get captions right}}%
+ {}%
+ \caption@ifpkg{#1}}}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@ifpkg[1]{%
+ \csname caption@ifpkg@#1\endcsname}
+\newcommand*\caption@pkg@true[1]{%
+ \global\expandafter\let\csname caption@ifpkg@#1\endcsname\@firstoftwo}
+\newcommand*\caption@pkg@false[1]{%
+ \global\expandafter\let\csname caption@ifpkg@#1\endcsname\@secondoftwo}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@pkg@list{}
+\newcommand*\caption@addto@pkg@list[1]{%
+ \protected@write\@auxout{}{%
+ \string\@cons\string\caption@pkg@list{{#1}}}}
+% \end{macrocode}
+% \begin{macrocode}
+\AtBeginDocument{%
+ \def\caption@tempa{\endgroup}%
+ \begingroup
+ \def\@elt#1{%
+ \g@addto@macro\caption@tempa{%
+ \caption@RequirePackage{#1}%
+ \@namedef{caption@ifpkg@#1}{%
+ \caption@addto@pkg@list{#1}%
+ \caption@pkg@true{#1}%
+ \caption@ifpkg{#1}}}}%
+ \caption@pkg@list
+ \caption@tempa}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@RequirePackage[1]{%
+ \caption@Info{We need package `#1'}%
+ \RequirePackage{#1}}
+\@onlypreamble\caption@RequirePackage
+% \end{macrocode}
+% \end{macro}
+%
+% \subsection{Vertical spaces before and after captions}
+%
+% \begin{macro}{\abovecaptionskip}
+% \begin{macro}{\belowcaptionskip}
+% Usually these skips are defined within the document class, but some
+% document classes don't do so.
+% \begin{macrocode}
+\caption@ifundefined\abovecaptionskip{%
+ \newlength\abovecaptionskip\setlength\abovecaptionskip{10\p@}}{}
+\caption@ifundefined\belowcaptionskip{%
+ \newlength\belowcaptionskip\setlength\belowcaptionskip{0\p@}}{}
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+%
+% \changes{v1.0c}{2005/02/12}{Option \opt{skip=} added}
+% \begin{macrocode}
+\DeclareCaptionOption{aboveskip}{\setlength\abovecaptionskip{#1}}
+\DeclareCaptionOption{belowskip}{\setlength\belowcaptionskip{#1}}
+\DeclareCaptionOption{skip}{\setlength\abovecaptionskip{#1}}
+% \end{macrocode}
+%
+% \begin{macro}{\caption@rule}
+% \changes{v1.2b}{2008/05/06}{This macro added}
+% |\caption@rule|\par
+% Draws an invisible rule to adjust the ``skip'' setting.
+% \begin{macrocode}
+\newcommand*\caption@rule{\caption@ifrule\caption@hrule\relax}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@hrule{\hrule\@height\z@}
+% \end{macrocode}
+% \end{macro}
+%
+% \changes{v1.2b}{2008/05/06}{Option \opt{rule=} added}
+% \begin{macrocode}
+\DeclareCaptionOption{rule}[1]{\caption@set@bool\caption@ifrule{#1}}
+% \end{macrocode}
+%
+% \subsection{Positioning}
+%
+% These macros handle the right position of the caption.
+% Note that the position is actually \emph{not} controlled by the
+% \package{caption3} kernel options, but by the user (or a specific package
+% like the \package{float} package) instead.
+% The user can put the |\caption| command wherever he likes! So this stuff
+% is only to give us a \emph{hint} where to put the right skips, the user
+% usually has to take care for himself that this hint actually matches the
+% right position.
+%
+% \begin{macrocode}
+\DeclareCaptionOption{position}{\caption@setposition{#1}}
+% \end{macrocode}
+%
+% \begin{macro}{\caption@setposition}
+% \changes{v1.0a}{2004/01/22}{Now the positions \opt{t}, \opt{above}, \opt{b},
+% \opt{below}, and \opt{a} are allowed, too}
+% \changes{v1.0c}{2004/08/10}{Usage of \cs{caption@defaultpos} added}
+% |\caption@setposition|\marg{position}\par
+% Selecting the caption position means that we put |\caption@position| to
+% the right value. \emph{Please do \textbf{not} use the internal macro
+% \cs{caption@position} in your own package or document, but use the wrapper
+% macro \cs{caption@iftop} instead.}
+% \begin{macrocode}
+\newcommand*\caption@setposition[1]{%
+ \caption@ifinlist{#1}{d,default}{%
+ \let\caption@position\caption@defaultpos
+ }{\caption@ifinlist{#1}{t,top,above}{%
+ \let\caption@position\@firstoftwo
+ }{\caption@ifinlist{#1}{b,bottom,below}{%
+ \let\caption@position\@secondoftwo
+ }{\caption@ifinlist{#1}{a,auto}{%
+ \let\caption@position\@undefined
+ }{%
+ \caption@Error{Undefined position `#1'}%
+ }}}}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@defaultpos}
+% \changes{v1.1}{2007/05/08}{Default position changed from `bottom' to `auto'}
+% The default `position' is `auto', this means that \thispackage\ will try
+% to guess the current position of the caption.
+% (But in many cases, for example in |longtable|s, this is doomed to fail!)\par
+% The setting `bottom' correspondents to the |\@makecaption| implementation
+% in the standard \LaTeX\ document classes, but `auto' should give better
+% results in most cases.
+% \begin{macrocode}
+%\caption@setdefaultpos{a}% default = auto
+\let\caption@defaultpos\@undefined
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@iftop}
+% \changes{v1.0a}{2004/01/23}{Split into \cs{caption@iftop} \& \cs{caption@fixposition}}
+% \changes{v1.0c}{2005/02/12}{Adapted to \cs{caption@defaultpos}}
+% \changes{v1.1}{2007/05/08}{Position will be fixed to `bottom' if `auto'}
+% |\caption@iftop|\marg{true-code}\marg{false-code}\par
+% (If the |position=| is set to |auto| we assume a |bottom| position here.)
+% \begin{macrocode}
+\newcommand*\caption@iftop{%
+ \ifx\caption@position\@undefined
+ \let\caption@position\@secondoftwo
+% = \caption@setposition b%
+ \fi
+ \caption@position}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@fixposition}
+% \changes{v1.0b}{2004/05/16}{%
+% Split into \cs{caption@fixposition} & \cs{caption@autoposition}}
+% |\caption@fixposition|\par
+% This macro checks if the `position' is set to `auto'.
+% If yes, |\caption@autoposition| will be called to
+% set |\caption@position| to a proper value we can actually use.
+% \begin{macrocode}
+\newcommand*\caption@fixposition{%
+ \ifx\caption@position\@undefined
+ \caption@autoposition
+ \fi}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@autoposition}
+% \changes{v1.0a}{2004/01/23}{\cs{ifvmode} added}
+% |\caption@autoposition|\par
+% We guess the current position of the caption by checking |\prevdepth|.\par
+% A different solution would be setting the |\spacefactor| to something
+% not much less than 1000 (for example 994) in |\caption@start| and
+% checking this value here by |\ifnum\spacefactor=994|.
+% (It's implemented in the \package{threeparttable}
+% package\cite{threeparttable} this way.)\par
+% Another idea would be checking |\@ifminipage|, but since some packages
+% typeset the caption within a simple |\vbox| this does not seem to be a
+% good one.
+% \begin{macrocode}
+\newcommand*\caption@autoposition{%
+ \ifvmode
+ \edef\caption@tempa{\the\prevdepth}%
+ \caption@Debug{\protect\prevdepth=\caption@tempa}%
+ \ifdim\prevdepth>-\p@
+ \let\caption@position\@secondoftwo
+ \else
+ \let\caption@position\@firstoftwo
+ \fi
+% = \caption@setposition{\ifdim\prevdepth>-\p@ b\else t\fi}%
+ \else
+ \caption@Debug{no \protect\prevdepth}%
+ \let\caption@position\@secondoftwo
+% = \caption@setposition b%
+ \fi}
+% \end{macrocode}
+% \end{macro}
+% \begin{macro}{\caption@setautoposition}
+% \changes{v1.1}{2007/06/10}{This macro added}
+% |\caption@setautoposition|\marg{position}\par
+% replaces the above algorithm by a different one (or a fixed position setting).
+% \begin{macrocode}
+\newcommand*\caption@setautoposition[1]{%
+ \def\caption@autoposition{\caption@setposition{#1}}}
+% \end{macrocode}
+% \end{macro}
+%
+% \subsection{Hooks}
+%
+% \begin{macro}{\AtBeginCaption}
+% \begin{macro}{\AtEndCaption}
+% |\AtBeginCaption| \marg{code}\\
+% |\AtEndCaption| \marg{code}\par
+% These hooks can be used analogous to |\AtBeginDocument| and |\AtEndDocument|.
+% \begin{macrocode}
+\newcommand*\caption@beginhook{}
+\newcommand*\caption@endhook{}
+\newcommand*\AtBeginCaption{\l@addto@macro\caption@beginhook}
+\newcommand*\AtEndCaption{\l@addto@macro\caption@endhook}
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+%
+% \subsection{Lists}
+%
+% \changes{v1.0b}{2004/05/16}{Option \opt{listof=} added}
+% \changes{v1.2}{2007/11/17}{Option \opt{list=} added}
+% \begin{macrocode}
+\DeclareCaptionOption{list}[1]{\caption@setlist{#1}}
+\DeclareCaptionOption{listof}[1]{\caption@setlist{#1}}
+% \end{macrocode}
+%
+% \begin{macro}{\caption@setlist}
+% \changes{v1.2a}{2008/03/20}{This macro added}
+% |\caption@setlist|\marg{boolean}
+% \begin{macrocode}
+\newcommand*\caption@setlist{\caption@set@bool\caption@iflist}
+% \end{macrocode}
+% \end{macro}
+%
+% \changes{v1.4}{2011/08/30}{Option \opt{listtype=} added}
+% \changes{v1.4}{2011/08/30}{Option \opt{listtype+=} added}
+% \begin{macrocode}
+\DeclareCaptionOption{listtype}{\caption@setlisttype{#1}}
+\DeclareCaptionOption{listtype+}{\caption@setlisttype@ext{#1}}
+% \end{macrocode}
+%
+% \begin{macro}{\caption@setlisttype}
+% \changes{v1.4}{2011/08/30}{This macro added}
+% |\caption@setlisttype|\marg{type}
+% \begin{macrocode}
+\newcommand*\caption@setlisttype{%
+ \caption@setlisttype@ext{}%
+ \caption@@setlisttype\caption@listtype}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@@setlisttype[2]{%
+ \edef#1{#2}%
+ \ifx#1\@empty \let#1\@undefined \fi}
+% \end{macrocode}
+% \end{macro}
+% \begin{macro}{\caption@setlisttype@ext}
+% \changes{v1.4}{2011/08/30}{This macro added}
+% |\caption@setlisttype@ext|\marg{type extension}
+% \begin{macrocode}
+\newcommand*\caption@setlisttype@ext{%
+ \caption@@setlisttype\caption@listtype@ext}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\DeclareCaptionListFormat}
+% \changes{v1.1}{2004/07/15}{This macro added}
+% \changes{v1.2}{2007/11/17}{Renamed from \cs{DeclareCaptionListOfFormat} to \cs{DeclareCaptionListFormat}}
+% |\DeclareCaptionListFormat|\marg{name}\marg{code with \#1 and \#2}
+% \begin{macrocode}
+\newcommand*\DeclareCaptionListFormat[2]{%
+ \global\@namedef{caption@lstfmt@#1}##1##2{#2}}
+\@onlypreamble\DeclareCaptionListFormat
+% \end{macrocode}
+% \end{macro}
+%
+% \changes{v1.1}{2007/07/15}{Option \opt{listofformat=} added}
+% \changes{v1.2}{2007/11/17}{Option \opt{listofformat=} renamed to \opt{listformat=}}
+% \begin{macrocode}
+\DeclareCaptionOption{listformat}{\caption@setlistformat{#1}}
+% \end{macrocode}
+%
+% \begin{macro}{\caption@setlistformat}
+% \changes{v1.1}{2004/07/15}{This macro added}
+% \changes{v1.2}{2007/11/17}{Renamed from \cs{caption@setlistofformat} to \cs{caption@setlistformat}}
+% |\caption@setlistformat|\marg{name}\par
+% Selecting a caption list format simply means saving the code (in |\caption@lstfmt|).
+% \begin{macrocode}
+\newcommand*\caption@setlistformat[1]{%
+ \@ifundefined{caption@lstfmt@#1}%
+ {\caption@Error{Undefined list format `#1'}}%
+ {\expandafter\let\expandafter\caption@lstfmt
+ \csname caption@lstfmt@#1\endcsname}}
+% \end{macrocode}
+% \end{macro}
+%
+% There are five pre-defined list formats, taken from the \package{subfig} package.
+% \begin{macrocode}
+\DeclareCaptionListFormat{empty}{}
+\DeclareCaptionListFormat{simple}{#1#2}
+\DeclareCaptionListFormat{parens}{#1(#2)}
+\DeclareCaptionListFormat{subsimple}{#2}
+\DeclareCaptionListFormat{subparens}{(#2)}
+% \end{macrocode}
+%
+% \begin{macro}{\caption@setdefaultlistformat}
+% \changes{v1.2d}{2009/03/29}{This macro added}
+% \begin{macrocode}
+\newcommand*\caption@setdefaultlistformat[1]{%
+ \ifx\caption@lstfmt\caption@lstfmt@default
+ \caption@set@default@listformat{#1}%
+ \caption@setlistformat{default}%
+ \else
+ \caption@set@default@listformat{#1}%
+ \fi}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@set@default@listformat[1]{%
+ \def\caption@lstfmt@default{\@nameuse{caption@lstfmt@#1}}}
+% \end{macrocode}
+% \end{macro}
+%
+% `default' usually maps to `subsimple'.
+% \begin{macrocode}
+\caption@set@default@listformat{subsimple}
+% \end{macrocode}
+%
+% \subsection{Debug option}
+% \changes{v1.0k}{2007/03/04}{Debug option added}
+%
+% \begin{macrocode}
+\DeclareCaptionOption{debug}[1]{%
+ \caption@set@bool\caption@ifdebug{#1}%
+ \caption@ifdebug
+ {\let\caption@Debug\caption@Info}%
+ {\let\caption@Debug\@gobble}}
+% \end{macrocode}
+% \begin{macrocode}
+\DeclareOption{debug}{\setkeys{caption}{debug}}
+% \end{macrocode}
+% \begin{macrocode}
+\setkeys{caption}{debug=0}
+% \end{macrocode}
+%
+% \subsection{Document classes \& Babel support}
+%
+% \subsubsection{The standard \texorpdfstring{\LaTeX{}}{LaTeX} classes}
+%
+% \begin{macrocode}
+\caption@CheckCommand\@makecaption{%
+ % article|report|book [2005/09/16 v1.4f Standard LaTeX document class]
+ \long\def\@makecaption#1#2{%
+ \vskip\abovecaptionskip
+ \sbox\@tempboxa{#1: #2}%
+ \ifdim \wd\@tempboxa >\hsize
+ #1: #2\par
+ \else
+ \global \@minipagefalse
+ \hb@xt@\hsize{\hfil\box\@tempboxa\hfil}%
+ \fi
+ \vskip\belowcaptionskip}}
+% \end{macrocode}
+%
+% \subsubsection{The elsarticle classes}
+% \changes{v1.5}{2013/01/06}{elsarticle class support added}
+%
+% \begin{macro}{\caption@ifelsarticleclass}
+% \begin{macrocode}
+\providecommand*\caption@ifelsarticleclass{%
+ \@ifclassloaded{elsarticle}\@firstofone\@gobble}
+\@onlypreamble\caption@ifelsarticleclass
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+\caption@ifelsarticleclass{%
+% \end{macrocode}
+% \begin{macrocode}
+ \caption@CheckCommand\@makecaption{%
+ % elsarticle.cls,v 1.20 2008-10-13 04:24:12 cvr Exp
+ \long\def\@makecaption#1#2{%
+ \vskip\abovecaptionskip\footnotesize
+ \sbox\@tempboxa{#1: #2}%
+ \ifdim \wd\@tempboxa >\hsize
+ #1: #2\par
+ \else
+ \global \@minipagefalse
+ \hb@xt@\hsize{\hfil\box\@tempboxa\hfil}%
+ \fi
+ \vskip\belowcaptionskip}}
+% \end{macrocode}
+% \begin{macrocode}
+ \DeclareCaptionDefaultFont{font}{\footnotesize}
+% \end{macrocode}
+% \begin{macrocode}
+}
+% \end{macrocode}
+%
+% \subsubsection{The \AmS{} \& \SmF{} classes}
+% \changes{v1.1}{2007/07/29}{\AmS\ \& \SmF\ classes support added}
+%
+% \begin{macro}{\caption@ifamsclass}
+% \begin{macrocode}
+\providecommand*\caption@ifamsclass{%
+ \caption@ifundefined\@captionheadfont\@gobble\@firstofone}
+\@onlypreamble\caption@ifamsclass
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+\caption@ifamsclass{%
+% \end{macrocode}
+% \begin{macrocode}
+ \caption@CheckCommand\@makecaption{%
+ % amsart|amsproc|amsbook [2004/08/06 v2.20]
+ \long\def\@makecaption#1#2{%
+ \setbox\@tempboxa\vbox{\color@setgroup
+ \advance\hsize-2\captionindent\noindent
+ \@captionfont\@captionheadfont#1\@xp\@ifnotempty\@xp
+ {\@cdr#2\@nil}{.\@captionfont\upshape\enspace#2}%
+ \unskip\kern-2\captionindent\par
+ \global\setbox\@ne\lastbox\color@endgroup}%
+ \ifhbox\@ne % the normal case
+ \setbox\@ne\hbox{\unhbox\@ne\unskip\unskip\unpenalty\unkern}%
+ \fi
+ \ifdim\wd\@tempboxa=\z@ % this means caption will fit on one line
+ \setbox\@ne\hbox to\columnwidth{\hss\kern-2\captionindent\box\@ne\hss}%
+ \else % tempboxa contained more than one line
+ \setbox\@ne\vbox{\unvbox\@tempboxa\parskip\z@skip
+ \noindent\unhbox\@ne\advance\hsize-2\captionindent\par}%
+ \fi
+ \ifnum\@tempcnta<64 % if the float IS a figure...
+ \addvspace\abovecaptionskip
+ \hbox to\hsize{\kern\captionindent\box\@ne\hss}%
+ \else % if the float IS NOT a figure...
+ \hbox to\hsize{\kern\captionindent\box\@ne\hss}%
+ \nobreak
+ \vskip\belowcaptionskip
+ \fi
+ \relax
+ }}
+% \end{macrocode}
+% \begin{macrocode}
+ \caption@CheckCommand\@makecaption{%
+ % smfart|smfbook [1999/11/15 v1.2f Classe LaTeX pour les articles publies par la SMF]
+ \long\def\@makecaption#1#2{%
+ \ifdim\captionindent>.1\hsize \captionindent.1\hsize \fi
+ \setbox\@tempboxa\vbox{\color@setgroup
+ \advance\hsize-2\captionindent\noindent
+ \@captionfont\@captionheadfont#1\@xp\@ifnotempty\@xp
+ {\@cdr#2\@nil}{\@addpunct{.}\@captionfont\upshape\enspace#2}%
+ \unskip\kern-2\captionindent\par
+ \global\setbox\@ne\lastbox\color@endgroup}%
+ \ifhbox\@ne % the normal case
+ \setbox\@ne\hbox{\unhbox\@ne\unskip\unskip\unpenalty\unkern}%
+ \fi
+ \ifdim\wd\@tempboxa=\z@ % this means caption will fit on one line
+ \setbox\@ne\hbox to\columnwidth{\hss\kern-2\captionindent\box\@ne\hss}%
+ \@tempdima\wd\@ne\advance\@tempdima-\captionindent
+ \wd\@ne\@tempdima
+ \else % tempboxa contained more than one line
+ \setbox\@ne\vbox{\rightskip=0pt plus\captionindent\relax
+ \unvbox\@tempboxa\parskip\z@skip
+ \noindent\unhbox\@ne\advance\hsize-2\captionindent\par}%
+ \fi
+ \ifnum\@tempcnta<64 % if the float IS a figure...
+ \addvspace\abovecaptionskip
+ \noindent\kern\captionindent\box\@ne
+ \else % if the float IS NOT a figure...
+ \noindent\kern\captionindent\box\@ne
+ \nobreak
+ \vskip\belowcaptionskip
+ \fi
+ \relax
+ }}
+% \end{macrocode}
+% \begin{macrocode}
+ \let\captionmargin\captionindent % set to 3pc by AMS class
+ \begingroup\edef\@tempa{\endgroup
+ \noexpand\caption@g@addto@list\noexpand\caption@sty@default
+ {margin=\the\captionmargin
+ \caption@ifundefined\smf@makecaption{}{,maxmargin=.1\linewidth}}}
+ \@tempa
+ \caption@g@addto@list\caption@sls@default{margin*=.5\captionmargin}
+ \DeclareCaptionLabelSeparator{default}{.\enspace}
+ \DeclareCaptionDefaultFont{font}{\@captionfont}
+ \DeclareCaptionDefaultFont{labelfont}{\@captionheadfont}
+ \DeclareCaptionDefaultFont{textfont}{\@captionfont\upshape}
+ \captionsetup[figure]{position=b}
+ \captionsetup[table]{position=t}
+% \end{macrocode}
+% \begin{macrocode}
+}
+% \end{macrocode}
+%
+% \subsubsection{The beamer class (Part one)}
+% \changes{v1.1}{2007/03/10}{\package{beamer} class support added}
+% \changes{v1.3}{2011/08/06}{\package{beamer} class support revised}
+% \changes{v1.5}{2013/04/27}{The \package{beamer} template \texttt{caption label separator} will be used now}
+% \changes{v1.7}{2016/05/22}{Re-definition of label format \texttt{simpleMagyar} added to \package{beamer} class support}
+% \changes{v1.7}{2018/04/15}{Re-definition of label format \texttt{simpleMagyar} revised}
+% \changes{v1.7}{2018/05/01}{Definition of \package{beamer} default label font revised}
+%
+% \begin{macro}{\caption@ifbeamerclass}
+% \begin{macrocode}
+\providecommand*\caption@ifbeamerclass{%
+ \@ifclassloaded{beamer}\@firstofone\@gobble}
+\@onlypreamble\caption@ifbeamerclass
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+\caption@ifbeamerclass{%
+% \end{macrocode}
+% \begin{macrocode}
+ \caption@CheckCommand\beamer@makecaption{%
+ % beamerbaselocalstructure.sty,v 1.53 2007/01/28 20:48:21 tantau
+ \long\def\beamer@makecaption#1#2{%
+ \def\insertcaptionname{\csname#1name\endcsname}%
+ \def\insertcaptionnumber{\csname the#1\endcsname}%
+ \def\insertcaption{#2}%
+ \nobreak\vskip\abovecaptionskip\nobreak
+ \sbox\@tempboxa{\usebeamertemplate**{caption}}%
+ \ifdim \wd\@tempboxa >\hsize
+ \usebeamertemplate**{caption}\par
+ \else
+ \global \@minipagefalse
+ \hb@xt@\hsize{\hfil\box\@tempboxa\hfil}%
+ \fi
+ \nobreak\vskip\belowcaptionskip\nobreak}}
+% \end{macrocode}
+%
+% \begin{macro}{\caption@ifbeamertemplate}
+% |\caption@ifbeamertemplate|\marg{caption template name}\marg{yes-code}\marg{no-code}\\
+% tests if the given beamer caption template was selected by the user (or not).
+% \begin{macrocode}
+ \newcommand*\caption@ifbeamertemplate[1]{%
+ \begingroup
+ \let\beamer@@tmpl@caption@ORI\beamer@@tmpl@caption
+ \@nameuse{beamer@@tmpop@caption@#1}%
+ \ifx\beamer@@tmpl@caption@ORI\beamer@@tmpl@caption
+ \endgroup\expandafter\@firstoftwo
+ \else
+ \endgroup\expandafter\@secondoftwo
+ \fi}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+ \DeclareCaptionLabelFormat{default}{%
+ \caption@ifbeamertemplate{numbered}%
+ \caption@lfmt@simple
+ \caption@lfmt@unnumbered
+ {#1}{#2}}
+% \end{macrocode}
+% The \package{magyar} babel package redefines the current label format to a one called |simple|\-|Magyar|,
+% defined within |\@@magyar@caption|\-|fix| which will be executed |\At|\-|Begin|\-|Document|.
+% \begin{macrocode}
+ \DeclareCaptionLabelFormat{default@magyar}{%
+ \caption@ifbeamertemplate{numbered}%
+ \caption@lfmt@simple@magyar
+ \caption@lfmt@unnumbered
+ {#1}{#2}}
+ \@ifundefined{@@magyar@captionfix}\AtBeginDocument\@firstofone{%
+ \@ifundefined{@@magyar@captionfix}{}{%
+ \g@addto@macro\@@magyar@captionfix{%
+ \let\caption@lfmt@simple@magyar\caption@lfmt@simpleMagyar
+ \let\caption@lfmt@simpleMagyar\caption@lfmt@default@magyar}}}
+% \end{macrocode}
+% \begin{macrocode}
+ \caption@declarelabelseparator
+ {\caption@ifbeamertemplate{caption name own line}\@gobble\@firstofone}
+ {default}
+ {\caption@ifbeamertemplate{caption name own line}{\\}%
+ {\usebeamertemplate{caption label separator}}}
+ \DeclareCaptionDefaultFont{font}{%
+ \usebeamerfont*{caption}%
+ \usebeamercolor[fg]{caption}}
+ \DeclareCaptionDefaultFont{labelfont}{%
+ \setbeamercolor*{caption}{}% avoid setting "caption" color additionally
+ \usebeamercolor[fg]{caption name}%
+ \setbeamerfont*{caption}{}% avoid setting "caption" font additionally
+ \usebeamerfont{caption name}}
+ \DeclareCaptionDefaultJustification{\raggedright}
+% \end{macrocode}
+% \begin{macrocode}
+ \DeclareOption{beamerclass}{%
+ \renewcommand\caption@ifslc{%
+ \caption@ifbeamertemplate{caption name own line}\@secondoftwo\@firstoftwo}
+ % Since the beamer class do not offer a `list of figures' we switch this support off.
+ \captionsetup{list=0}}
+ \PassOptionsToPackage{beamerclass}{caption3}
+% \end{macrocode}
+%
+% If the \package{beamer} document class is used, we offer a beamer
+% template called `caption3' which can be used with option `beamer' or
+% |\setbeamertemplate{caption}[caption3]|.\par
+% (Note that this is of no use when the \package{caption} package is used, too.)
+% \begin{macrocode}
+ \defbeamertemplate{caption}{caption3}{%
+ \caption@make\insertcaptionname\insertcaptionnumber\insertcaption}
+% \end{macrocode}
+% \begin{macrocode}
+ \DeclareOption{beamer}{%
+ % \usebeamertemplate**{caption} will set font
+ \DeclareCaptionDefaultFont{font}{}%
+ \setbeamertemplate{caption}[caption3]}
+% \end{macrocode}
+% \begin{macrocode}
+%
+% \begin{macrocode]
+}
+% \end{macrocode}
+%
+% \subsubsection{The KOMA-Script classes}
+% \changes{v1.1}{2007/03/31}{\KOMAScript\ classes support added}
+%
+% \begin{macro}{\caption@ifkomaclass}
+% \begin{macrocode}
+\providecommand*\caption@ifkomaclass{%
+ \caption@ifundefined\scr@caption\@gobble\@firstofone}
+\@onlypreamble\caption@ifkomaclass
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+\caption@ifkomaclass{%
+% \end{macrocode}
+% \begin{macrocode}
+ \caption@CheckCommand\@makecaption{%
+ % scrartcl|scrreprt|scrbook [2007/03/07 v2.97a KOMA-Script document class]
+ \long\def\@makecaption#1#2{%
+ \if@captionabove
+ \vskip\belowcaptionskip
+ \else
+ \vskip\abovecaptionskip
+ \fi
+ \@@makecaption\@firstofone{#1}{#2}%
+ \if@captionabove
+ \vskip\abovecaptionskip
+ \else
+ \vskip\belowcaptionskip
+ \fi}}
+% \end{macrocode}
+% \begin{macrocode}
+ \DeclareCaptionFormat{default}[#1#2#3\par]{%
+ \ifdofullc@p
+ \caption@ifin@list\caption@lsepcrlist\caption@lsepname
+ {\caption@Error{%
+ The option `labelsep=\caption@lsepname' does not work\MessageBreak
+ with \noexpand\setcaphanging (which is set by default)}}%
+ {\caption@fmt@hang{#1}{#2}{#3}}%
+ \else
+ #1#2%
+ \ifdim\cap@indent<\z@
+ \par
+ \noindent\hspace*{-\cap@indent}%
+ \else\if@capbreak
+ \par
+ \fi\fi
+ #3\par
+ \fi}
+ \DeclareCaptionLabelSeparator{default}{\captionformat}
+ \DeclareCaptionDefaultFont{font}{\scr@fnt@caption}
+ \DeclareCaptionDefaultFont{labelfont}{\scr@fnt@captionlabel}
+% \end{macrocode}
+% \begin{macrocode}
+}
+% \end{macrocode}
+%
+% \subsubsection{The \NTG{} Dutch classes}
+% \changes{v1.1}{2007/04/06}{NTG classes support added}
+%
+% \begin{macro}{\caption@ifntgclass}
+% \begin{macrocode}
+\providecommand*\caption@ifntgclass{%
+ \caption@ifundefined\CaptionFonts\@gobble\@firstofone}
+\@onlypreamble\caption@ifntgclass
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+\caption@ifntgclass{%
+% \end{macrocode}
+% \begin{macrocode}
+ \caption@CheckCommand\@makecaption{%
+ % artikel|rapport|boek [2004/06/07 v2.1a NTG LaTeX document class]
+ \long\def\@makecaption#1#2{%
+ \vskip\abovecaptionskip
+ \sbox\@tempboxa{{\CaptionLabelFont#1:} \CaptionTextFont#2}%
+ \ifdim \wd\@tempboxa >\hsize
+ {\CaptionLabelFont#1:} \CaptionTextFont#2\par
+ \else
+ \global \@minipagefalse
+ \hb@xt@\hsize{\hfil\box\@tempboxa\hfil}%
+ \fi
+ \vskip\belowcaptionskip}}
+% \end{macrocode}
+% \begin{macrocode}
+ \DeclareCaptionDefaultFont{labelfont}{\CaptionLabelFont}
+ \DeclareCaptionDefaultFont{textfont}{\CaptionTextFont}
+% \end{macrocode}
+% \begin{macrocode}
+}
+% \end{macrocode}
+%
+% \subsubsection{The thesis class}
+% \changes{v1.2a}{2008/01/31}{thesis class support added}
+% \changes{v1.2e}{2009/11/15}{Bugfix 09-11-14: thesis class support revised}
+%
+% \begin{macro}{\caption@ifthesisclass}
+% \begin{macrocode}
+\providecommand*\caption@ifthesisclass{%
+ \caption@ifundefined\cph@font
+ {\@gobble}%
+ {\caption@ifundefined\cpb@font\@gobble\@firstofone}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+\caption@ifthesisclass{%
+% \end{macrocode}
+% \begin{macrocode}
+ \caption@CheckCommand\@makecaption{%
+ % thesis.cls 1996/25/01 1.0g LaTeX document class (wm).
+ \long\def\@makecaption#1#2{%
+ \vskip\abovecaptionskip
+ \setbox\@tempboxa\hbox{{\cph@font #1:} {\cpb@font #2}}%
+ \ifdim \wd\@tempboxa >\hsize
+ \@hangfrom{\cph@font #1: }{\cpb@font #2\par}%
+ \else
+ \hbox to\hsize{\hfil\box\@tempboxa\hfil}%
+ \fi
+ \vskip\belowcaptionskip}}
+% \end{macrocode}
+% \begin{macrocode}
+ \DeclareCaptionDefaultFormat{hang}
+ \DeclareCaptionDefaultFont{labelfont}{\cph@font}
+ \DeclareCaptionDefaultFont{textfont}{\cpb@font}
+% \end{macrocode}
+% \begin{macrocode}
+}
+% \end{macrocode}
+%
+% \subsubsection{The arabic Babel option}
+% \changes{v1.8}{2018/05/20}{\package{arabic} babel package support added}
+%
+% \begin{macrocode}
+\caption@ifundefined\ArabiCoreLoaded{%
+% \end{macrocode}
+% \begin{macro}{\caption@rl}
+% \changes{v1.8}{2018/05/20}{This macro added}
+% \begin{macrocode}
+ \let\caption@rl\@firstofone
+}{%
+ \newcommand\caption@rl[1]{\if@rl\textRL{#1}\else\textLR{#1}\fi}
+% \end{macrocode}
+% \end{macro}
+% \begin{macrocode}
+ \def\fnum@figure{\figurename\nobreakspace\thefigure}%
+ \def\fnum@table{\tablename\nobreakspace\thetable}%
+% \end{macrocode}
+% \begin{macrocode}
+ \DeclareCaptionLabelSeparator{arabi}{ : }
+ \DeclareCaptionLabelSeparator{default}{%
+ \if@rl\caption@lsep@arabi\else\caption@lsep@colon\fi}
+% \end{macrocode}
+% \begin{macrocode}
+ \caption@CheckCommand\@makecaption{%
+ % arabicore.sty [2006/01/01 v1.0 Arabi Core switching commands (may still change)]
+ \long\def\@makecaption#1#2{%
+ \vskip\abovecaptionskip
+ \sbox\@tempboxa{#1: #2}%
+ \sbox\@Arabitempboxa{\textRL{#2} : #1}%
+ \if@rl{
+ \ifdim \wd\@Arabitempboxa >\hsize
+ \textRL{#2} : #1\par
+ \else
+ \global \@minipagefalse
+ \hb@xt@\hsize{\hfil\box\@Arabitempboxa\hfil}%
+ \fi}\else{
+ \ifdim \wd\@tempboxa >\hsize
+ #1: #2\par
+ \else
+ \global \@minipagefalse
+ \hb@xt@\hsize{\hfil\box\@tempboxa\hfil}%
+ \fi}\fi
+ \vskip\belowcaptionskip}}
+% \end{macrocode}
+% \begin{macrocode}
+}
+% \end{macrocode}
+%
+% \subsubsection{The frenchb Babel option}
+% \changes{v1.1}{2006/05/14}{\package{frenchb} babel package support added}
+%
+% \begin{macrocode}
+\caption@ifundefined\FB@makecaption{}{%
+% \end{macrocode}
+% \begin{macrocode}
+ \caption@CheckCommand\@makecaption{%
+ % frenchb.ldf [2005/02/06 v1.6g French support from the babel system]
+ % frenchb.ldf [2007/10/05 v2.0e French support from the babel system]
+ \long\def\@makecaption#1#2{%
+ \vskip\abovecaptionskip
+ \sbox\@tempboxa{#1\CaptionSeparator #2}%
+ \ifdim \wd\@tempboxa >\hsize
+ #1\CaptionSeparator #2\par
+ \else
+ \global \@minipagefalse
+ \hb@xt@\hsize{\hfil\box\@tempboxa\hfil}%
+ \fi
+ \vskip\belowcaptionskip}}
+% \end{macrocode}
+% \begin{macrocode}
+ \ifx\@makecaption\STD@makecaption
+ \DeclareCaptionLabelSeparator{default}{\CaptionSeparator}
+ \def\caption@frenchb{% supress frenchb warning
+ \let\STD@makecaption\@makecaption
+ \let\FB@makecaption\@makecaption}
+ \else
+ \ifx\@makecaption\@undefined\else
+ \caption@InfoNoLine{%
+ The definition of \protect\@makecaption\space
+ has been changed,\MessageBreak
+ frenchb will NOT customize it}%
+ \fi
+ \fi
+% \end{macrocode}
+% \begin{macrocode}
+}
+% \end{macrocode}
+%
+% \subsubsection{The frenchle/pro package}
+% \changes{v1.1}{2006/05/14}{\package{frenchle/pro} package support added}
+%
+% \begin{macrocode}
+\caption@ifundefined\frenchTeXmods{}{%
+% \end{macrocode}
+% \begin{macrocode}
+ \caption@CheckCommand\@makecaption{%
+ % french(le).sty [2006/10/03 The french(le) package /V5,9991/]
+ % french(le).sty [2007/06/28 The french(le) package /V5,9994/]
+ \def\@makecaption#1#2{%
+ \ifFTY%
+ \def\@secondofmany##1##2\void{##2}%
+ \def\@tempa{\@secondofmany#2\void}%
+ \ifx\@tempa\empty%
+ \let\captionseparator\empty%
+ \fi%
+ \@mcORI{#1}{\relax\captionfont{#2}}%
+ \else
+ \@mcORI{#1}{#2}%
+ \fi}}%
+% \end{macrocode}
+% \begin{macrocode}
+ \caption@CheckCommand\@makecaption{%
+ % french(le).sty [2007/02/11 The french(le) package /V5,9993/]
+ \def\@makecaption#1#2{%
+ \ifFTY%
+ \def\@secondofmany##1##2\void{##2}%
+ \protected@edef\@tempa{\@secondofmany#2\void}%
+ \ifx\@tempa\empty%
+ \let\captionseparator\empty%
+ \fi%
+ \@mcORI{#1}{\relax\captionfont{#2}}%
+ \else
+ \@mcORI{#1}{#2}%
+ \fi}}%
+% \end{macrocode}
+% \begin{macrocode}
+ \DeclareCaptionDefaultFont{textfont}{\itshape}%
+ \DeclareCaptionLabelSeparator{default}{\captionseparator\space}%
+% \end{macrocode}
+% \begin{macrocode}
+}
+% \end{macrocode}
+%
+% \subsubsection{The hebrew Babel option}
+% \changes{v1.8}{2018/08/26}{\package{hebrew} package support added}
+%
+% \begin{macrocode}
+ \caption@CheckCommand\@makecaption{%
+ % rlbabel.def [2005/03/30 v2.3h Right-to-Left support from the babel system Hebrew language support from the babel system]
+ \long\def\@makecaption#1#2{%
+ \vskip\abovecaptionskip%
+ \begin{center}%
+ #1: #2%
+ \end{center} \par%
+ \vskip\belowcaptionskip}}%
+% \end{macrocode}
+%
+% \subsubsection{The hungarian and magyar Babel option}
+% \changes{v1.3}{2009/03/29}{\package{magyar} package support added}
+% \changes{v1.3a}{2011/08/12}{\package{magyar} package support revised}
+% \changes{v1.8b}{2018/08/26}{\package{magyar} package support revised}
+%
+% \begin{macrocode}
+\DeclareCaptionListFormat{subperiod}{#2.}
+% \end{macrocode}
+%
+% \begin{macrocode}
+\caption@ifundefined\hunnewlabel{}{%
+ \caption@CheckCommand\@makecaption{%
+ % magyar.ldf [2005/03/30 v1.4j Magyar support from the babel system]
+ \def\@makecaption#1#2{%
+ \vskip\abovecaptionskip
+ \sbox\@tempboxa{#1. #2}%
+ \ifdim \wd\@tempboxa >\hsize
+ {#1. #2\csname par\endcsname}
+ \else
+ \global \@minipagefalse
+ \hb@xt@\hsize{\hfil\box\@tempboxa\hfil}%
+ \fi
+ \vskip\belowcaptionskip}}}
+% \end{macrocode}
+%
+% \begin{macrocode}
+\def\caption@tempa#1{%
+ \@ifpackagewith{babel}{#1}{%
+ \caption@InfoNoLine{#1 babel option is loaded}%
+ \expandafter\addto\csname extras#1\endcsname{%
+ % change default labelsep and listformat
+ \caption@setdefaultlabelsep{period}%
+ \caption@setdefaultlistformat{subperiod}}%
+ \expandafter\addto\csname noextras#1\endcsname{%
+ % change default labelsep and listformat
+ \caption@setdefaultlabelsep{colon}%
+ \caption@setdefaultlistformat{subsimple}}%
+ }{}}
+% \end{macrocode}
+% \begin{macrocode}
+\caption@tempa{hungarian}
+\caption@tempa{magyar}
+% \end{macrocode}
+%
+% TODO: babel-latvian/latvian.ldf
+%
+% \subsubsection{Unknown document class (or package)}
+% \changes{v1.1}{2007/04/10}{Check of document class added}
+%
+% \begin{macrocode}
+\caption@IfCheckCommand{%
+ \caption@setbool{documentclass}{1}%
+}{%
+ \caption@setbool{documentclass}{0}%
+ \caption@InfoNoLine{%
+ Unknown document class (or package),\MessageBreak
+ standard defaults will be used}%
+ \caption@Debug{\string\@makecaption\space=\space\meaning\@makecaption\@gobble}%
+}
+% \end{macrocode}
+%
+% \subsection{Execution of options}
+%
+% \begin{macrocode}
+\captionsetup{style=default,position=default,%
+ list,listformat=default,twoside=\if@twoside 1\else 0\fi}
+% \end{macrocode}
+% \begin{macrocode}
+\ProcessOptions*
+% \end{macrocode}
+%
+% \subsection{Making an `List of' entry}
+%
+% \begin{macro}{\caption@addcontentsline}
+% \changes{v1.1}{2007/07/01}{This macro added}
+% \changes{v1.3}{2010/10/26}{Error check added}
+% \changes{v1.3}{2011/06/24}{Split into two macros}
+% \changes{v1.4}{2011/08/19}{Split into three macros}
+% \changes{v1.4}{2011/08/30}{Support for option \opt{listtype=} added}
+% \changes{v1.5}{2012/01/15}{Usage of \cs{caption@addsubcontentslines} added}
+% \changes{v1.7}{2015/09/15}{Argument \#3 which holds the environment name added to \cs{caption@lstfmt}}
+% \changes{v1.7}{2015/09/20}{Unfortunately \package{subfig} defines and uses \cs{caption@lstfmt} as well, so I replaced the third argument with \cs{captionlisttype}}
+% \changes{v1.8}{2018/09/06}{Adapted to the \package{chkfloat} package}
+% |\caption@addcontentsline|\marg{type}\marg{list entry}\par
+% Makes an entry in the list-of-whatever, if requested,
+% i.e.~the argument \meta{list entry} is not empty and
+% |listof=| was set to |true|.
+% \begin{macrocode}
+\newcommand\caption@addcontentsline[2]{%
+ \caption@ifcontentsline{#2}{%
+ \begingroup
+ \let\@tempa\@gobble
+ \caption@ifundefined\caption@listtype
+ {\edef\caption@listtype{#1}}%
+ {\let\@tempa\@firstofone}%
+ \caption@ifundefined\caption@listtype@ext
+ {}%
+ {\edef\caption@listtype{\caption@listtype\caption@listtype@ext}%
+ \let\@tempa\@firstofone}%
+ \@tempa
+ {\caption@Debug{addcontentsline: #1 => \caption@listtype}%
+% \caption@setoptions\caption@listtype
+ \@namedef{the\caption@listtype}{\@nameuse{the#1}}}%
+ \expandafter\caption@@addcontentsline\expandafter{\caption@listtype}{#2}%
+ \endgroup}%
+ \caption@addsubcontentslines{#1}}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand\caption@@addcontentsline[2]{%
+ {\let\\\space
+ \@ifundefined{ext@#1}%
+ {\caption@Error{No float type '#1' defined}}%
+ {\def\captionlisttype{#1}%
+ \caption@add@contentsline
+ {\csname ext@#1\endcsname}%
+ {#1}%
+ {\caption@lstfmt{\@nameuse{p@#1}}{\@nameuse{the#1}}}%
+ {\ignorespaces #2}%
+ \caption@chkfloat{#1}{#2}}}}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@add@contentsline{%
+ \caption@@@addcontentsline}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@@@addcontentsline[4]{%
+% \caption@ifundefined\main@Arabi@language{}%
+% {\addtocontents{#1}{\xstring\select@language{\main@Arabi@language}}}%
+ \addcontentsline{#1}{#2}{\protect\numberline{#3}{#4}}}
+% \end{macrocode}
+% \begin{macrocode}
+\let\caption@chkfloat\@gobbletwo
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand\caption@ifcontentsline[1]{%
+ \caption@iflist
+ {\def\@tempa{#1}}%
+ {\let\@tempa\@empty}%
+ \ifx\@tempa\@empty
+ \expandafter\@gobble
+ \else
+ \expandafter\@firstofone
+ \fi}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@addsubcontentslines[1]{}
+% \end{macrocode}
+% \end{macro}
+%
+% \subsection{Typesetting the caption}
+%
+% \begin{macro}{\ifcaption@star}
+% If the starred form of |\caption| is used, this will be set to |true|.
+% (It will be reset to |false| at the end of |\caption@@make|.)
+% \begin{macrocode}
+\newif\ifcaption@star
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@fnum}
+% \changes{v1.1}{2007/08/21}{This macro added}
+% |\caption@fnum|\marg{float type}\par
+% Typesets the caption label; as replacement for |\fnum@|\meta{float type}.
+% \begin{macrocode}
+\newcommand*\caption@fnum[1]{\caption@lfmt{\@nameuse{#1name}}{\@nameuse{the#1}}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@make}
+% |\caption@make|\marg{float name}\marg{ref.\ number}\marg{text}\par
+% Typesets the caption.
+% \begin{macrocode}
+\newcommand\caption@make[2]{\caption@@make{\caption@lfmt{#1}{#2}}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@@make}
+% \changes{v1.0b}{2004/05/16}{Bugfix 04-05-05: \cs{ifdim}\cs{captionindent=}\cs{z@} added}
+% \changes{v1.0c}{2005/02/12}{Bugfix 04-10-26: Use \cs{@tempdima} instead of
+% \cs{captionmargin} resp. \cs{captionwidth}; check for \cs{z@} added}
+% \changes{v1.0c}{2005/02/12}{Bugfix: \cs{hskip}\cs{captionmargin} to the end
+% of caption added}
+% \changes{v1.0c}{2005/02/12}{Bugfix: \cs{strut} moved from here to \cs{caption@@@make}}
+% \changes{v1.0c}{2005/02/12}{Single-line-check moved up so it can affect margins now}
+% \changes{v1.0c}{2005/02/09}{Improvement: \cs{caption@ifh} added}
+% \changes{v1.0c}{2005/02/09}{Bugfix: \cs{leavevmode} added}
+% \changes{v1.0f}{2005/08/24}{Uses \cs{sbox} instead of \cs{setbox} in single-line-check}
+% \changes{v1.0g}{2005/12/04}{Uses \cs{caption@slc} now}
+% \changes{v1.0g}{2006/01/11}{Bugfix: \cs{caption@calcmargin} inside
+% single-line-check replaced by \cs{relax}}
+% \changes{v1.0g}{2006/01/11}{Bugfix: \cs{caption@startbox} will always be
+% typeset in horizontal mode}
+% \changes{v1.0i}{2006/05/13}{Uses \cs{caption@parbox} instead of \cs{caption@start/endbox}}
+% \changes{v1.0j}{2007/01/04}{Oops, bugfix 04-05-05 got lost in v1.0h, re-added}
+% \changes{v1.0n}{2007/04/03}{Usage of \cs{caption@ifoddpage} added}
+% \changes{v1.1}{2007/07/29}{\cs{caption@calcmargin} moved below single-line-check}
+% \changes{v1.1e}{2007/10/28}{\cs{caption@stepcounter} added}
+% \changes{v1.5}{2012/03/15}{Uses \cs{caption@tempdima} instead of \cs{@tempdima}}
+% \changes{v1.5}{2012/12/26}{max-margin stuff moved to \cs{caption@calcmargin}}
+% \changes{v1.6}{2013/05/01}{Usage of \cs{caption@box} added}
+% \changes{v1.7}{2016/01/31}{Adapted to the \package{bicaption} package}
+% |\caption@@make|\marg{caption label}\marg{caption text}
+% \begin{macrocode}
+\newcommand\caption@@make[2]{%
+ \begingroup
+ \caption@@make@{#1}{#2}%
+ \endgroup
+ \caption@@make@epilogue}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand\caption@@make@[2]{%
+ \caption@stepthecounter
+ \caption@beginhook
+% \end{macrocode}
+%
+% Typeset the outer box |\caption@box|
+% \begin{macrocode}
+ \caption@box\linewidth{%
+% \end{macrocode}
+%
+% Special single-line treatment (option |singlelinecheck=|)
+% \begin{macrocode}
+ \caption@ifslc{\caption@slc{#1}{#2}\caption@singleline\relax}{}%
+% \end{macrocode}
+%
+% Typeset the left margin (option |margin=|)
+% \begin{macrocode}
+ \caption@calcmargin
+ \caption@tempdima\captionmargin
+ \ifdim\captionmargin@=\z@ \else
+ \caption@ifoddpage{}{\advance\caption@tempdima\captionmargin@}%
+ \fi
+ \caption@ifh{\advance\caption@tempdima\caption@indent}%
+ \hspace\caption@tempdima
+% \end{macrocode}
+%
+% We actually use a |\vbox| of width |\captionwidth - \caption@indent|
+% to typeset the caption.
+% \Note{\cs{captionindent} is \emph{not} supported if the caption format
+% was defined with \cs{DeclareCaptionFormat*}.}
+% \begin{macrocode}
+ \caption@tempdima\captionwidth
+ \caption@ifh{\advance\caption@tempdima-\caption@indent}%
+ \caption@parbox\caption@tempdima{%
+% \end{macrocode}
+%
+% Typeset the indention (option |indention=|)\\
+% {\small Bugfix 04-05-05:
+% |\hskip-\caption@indent| replaced by |\ifdim\caption@indent=\z@|\ldots}
+% \begin{macrocode}
+ \caption@ifh{%
+ \ifdim\caption@indent=\z@
+ \leavevmode
+ \else
+ \hskip-\caption@indent
+ \fi}%
+% \end{macrocode}
+%
+% Typeset the caption itself and close the |\caption@parbox|
+% \begin{macrocode}
+ \caption@@@make{#1}{#2}}%
+% \end{macrocode}
+%
+% Typeset the right margin (option |margin=|)
+% \begin{macrocode}
+ \caption@tempdima\captionmargin
+ \ifdim\captionmargin@=\z@ \else
+ \caption@ifoddpage{\advance\caption@tempdima\captionmargin@}{}%
+ \fi
+ \hspace\caption@tempdima
+% \end{macrocode}
+%
+% Close the outer box |\caption@box|
+% \begin{macrocode}
+ }%
+% \end{macrocode}
+%
+% \begin{macrocode}
+ \caption@endhook}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand\caption@@make@epilogue{%
+ \global\caption@starfalse}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@calcmargin}
+% \changes{v1.0f}{2005/10/24}{Internal: \cs{ifcaption@width} replaced by
+% \cs{ifdim}\cs{captionwidth=}\cs{z@}}
+% \changes{v1.0g}{2006/01/12}{Improvement: Takes care of list environment now}
+% \changes{v1.1}{2006/05/13}{Check of \cs{@listdepth} removed (not necessary anymore),
+% use \cs{linewidth} instead of \cs{hsize}}
+% \changes{v1.5}{2012/12/26}{max-margin stuff moved from \cs{caption@@make} to here}
+% |\caption@calcmargin|\par
+% Calculate |\captionmargin| \& |\captionwidth|, so both contain valid
+% values.
+% \begin{macrocode}
+\newcommand*\caption@calcmargin{%
+ \caption@calcmargin@hook
+% \end{macrocode}
+% Check margin, if |\caption@minmargin| or |\caption@maxmargin| is set
+% \begin{macrocode}
+ \ifx\caption@maxmargin\@undefined \else
+ \ifdim\captionmargin>\caption@maxmargin\relax
+ \captionmargin\caption@maxmargin\relax
+ \fi
+ \fi
+ \ifx\caption@minmargin\@undefined \else
+ \ifdim\captionmargin<\caption@minmargin\relax
+ \captionmargin\caption@minmargin\relax
+ \fi
+ \fi
+% \end{macrocode}
+% \begin{macrocode}
+ \ifdim\captionwidth=\z@
+ \captionwidth\linewidth
+ \advance\captionwidth by -2\captionmargin
+ \advance\captionwidth by -\captionmargin@
+ \else
+ \captionmargin\linewidth
+ \advance\captionmargin by -\captionwidth
+ \divide\captionmargin by 2
+ \captionmargin@\z@
+ \fi
+% \end{macrocode}
+% \begin{macrocode}
+ \caption@Debug{%
+ \string\hsize=\the\hsize,
+ \string\linewidth=\the\linewidth,\MessageBreak
+ \string\leftmargin=\the\leftmargin,
+ \string\rightmargin=\the\rightmargin,\MessageBreak
+ \string\margin=\the\captionmargin,
+ \string\margin@=\the\captionmargin@,
+ \string\width=\the\captionwidth}%
+% \end{macrocode}
+% \begin{macrocode}
+}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@slc}
+% \changes{v1.1}{2007/06/13}{\cs{let}\cs{caption@hj}\cs{relax} added}
+% \changes{v1.1}{2007/07/29}{\cs{caption@setup}\cs{caption@sls} added after \cs{begingroup}}
+% \changes{v1.1}{2007/07/29}{\cs{caption@calcmargin} added}
+% \changes{v1.1c}{2007/10/14}{Support of \cs{caption@slfmt} added}
+% \changes{v1.1d}{2007/10/23}{`SingleLine' renamed to `singleline' for consistency}
+% \changes{v1.3}{2010/09/04}{Split into \cs{caption@slc} and \cs{caption@@slc}}
+% \changes{v1.5}{2012/12/26}{Merged into a single macro again}
+% \changes{v1.5}{2013/04/14}{Definition and usage of \cs{ifsinglelinecaption} added}
+% |\caption@slc|\marg{label}\marg{text}\marg{single-line-code}\marg{multi-line-code}\par
+% This one does the single-line-check.
+% \begin{macrocode}
+\newcommand\caption@slc[4]{%
+ \caption@Debug{Begin SLC}%
+ \singlelinecaptiontrue
+ \begingroup
+ \caption@singleline
+ \let\caption@hj\@empty
+ \caption@calcmargin % calculate \captionwidth
+ \caption@prepareslc
+ \sbox\@tempboxa{\caption@@@make{#1}{#2}}%
+ \ifdim\wd\@tempboxa>\captionwidth
+ \endgroup
+ \singlelinecaptionfalse
+ #4%
+ \else
+ \endgroup
+ #3%
+ \fi
+ \caption@Debug{End SLC}}
+% \end{macrocode}
+% \begin{macrocode}
+\newif\ifsinglelinecaption
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@singleline{%
+ \caption@xsetup\caption@opt@singleline
+ \let\caption@fmt\caption@slfmt}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@prepareslc}
+% \changes{v1.0b}{2004/05/16}{Bugfix: Redefinition of \cs{label} \& \cs{@footnotetext} added}
+% \changes{v1.0b}{2004/05/16}{Redefine \cs{stepcounter} instead of \cs{footnote(mark)}}
+% \changes{v1.0c}{2005/02/12}{\cs{let}\cs{caption@hj}\cs{relax} added}
+% \changes{v1.0f}{2005/07/09}{Support of \package{endnotes} package added}
+% \changes{v1.1}{2007/06/13}{\cs{let}\cs{caption@hj}\cs{relax} moved to \cs{caption@slc}}
+% \changes{v1.1}{2007/06/13}{Redefinition of \cs{(H@)refstepcounter} added}
+% \changes{v1.1}{2007/08/12}{Redefinition of \cs{label} improved}
+% \changes{v1.1c}{2007/10/06}{Definition of \cs{caption@l@stepcounter} added}
+% \changes{v1.3}{2011/07/07}{Bugfix 11-07-06: Redefinition of \cs{footnote} and \cs{footnotemark} added, redefinition of \cs{stepcounter} and \cs{refstepcounter} dropped}
+% \changes{v1.4a}{2011/10/21}{Redefinition of \cs{pagenote} from \textsf{memoir} document class added}
+% \changes{v1.4a}{2011/10/22}{Redefinition of \cs{footnote} revised}
+% \changes{v1.5}{2013/04/13}{Redefinition os \cs{glsunset} added}
+% \changes{v1.8}{2018/01/21}{Redefinition of \cs{endnote} added (thanks to Markus Kohm)}
+% \changes{v1.8}{2018/05/16}{Redefinition of \cs{acused} added}
+% \changes{v1.8}{2018/05/26}{Definition method changed so it can be pre-defined by other packages}
+% \changes{v1.8}{2018/05/27}{Redefinition of \cs{hypertarget} added}
+% |\caption@prepareslc|\par
+% Re-define anything which would disturb the single-line-check.
+% \begin{macrocode}
+\@ifundefined{caption@prepareslc}\def\g@addto@macro\caption@prepareslc{%
+ \let\label\caption@gobble
+ \let\hypertarget\@gobbletwo
+% \end{macrocode}
+% \begin{macrocode}
+ \let\caption@footnotemark@ORI\footnotemark
+ \def\footnote{\caption@withoptargs\caption@footnote}%
+ \def\footnotemark{\caption@withoptargs\caption@footnotemark}%
+ \let\@footnotetext\caption@gobble
+% \end{macrocode}
+% \begin{macrocode}
+ \let\caption@endnotemark@ORI\endnotemark
+ \def\endnote{\caption@withoptargs\caption@endnote}%
+ \def\endnotemark{\caption@withoptargs\caption@endnotemark}%
+ \let\@endnotetext\caption@gobble
+% \end{macrocode}
+% \begin{macrocode}
+ \let\pagenote\caption@gobble
+% \end{macrocode}
+% Adaption to the \package{acronym} package.\par
+% See also \url{https://tex.stackexchange.com/questions/428788}
+% \begin{macrocode}
+ \let\acused\@gobble
+ \let\AC@placelabel\@gobble
+% \end{macrocode}
+% Adaption to the \package{glossaries} package.\par
+% Please note that while this adaption is usually sufficient
+% it could give incorrect measuring results if \cs{gls} is both used
+% for the very first time and more than once (for a particular acronym).
+% The alternative would be using internal macros of the
+% \package{glossaries} package which I would like to avoid.\par
+% See also \url{https://tex.stackexchange.com/questions/108368}
+% \begin{macrocode}
+ \let\glsunset\@gobble
+% \end{macrocode}
+% \begin{macrocode}
+}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand\caption@footnote[2]{%
+ \caption@footnotemark{#1}}
+\newcommand\caption@footnotemark[1]{%
+ \begingroup
+ \let\stepcounter\caption@l@stepcounter
+ \caption@footnotemark@ORI#1%
+ \endgroup}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand\caption@endnote[2]{%
+ \caption@endnotemark{#1}}
+\newcommand\caption@endnotemark[1]{%
+ \begingroup
+ \let\stepcounter\caption@l@stepcounter
+ \caption@endnotemark@ORI#1
+ \endgroup}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@l@stepcounter[1]{%
+ \advance\csname c@#1\endcsname\@ne\relax}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@applyfont}
+% \changes{v1.3}{2010/09/04}{This macro added}
+% |\caption@applyfont|\par
+% This macro executes the font relevant macros, i.e. by default
+% the options set by |justification=|, |font=|, and |size=|.
+% \begin{macrocode}
+\newcommand*\caption@applyfont{%
+ \caption@hj\captionfont\captionsize}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@@@make}
+% \changes{v1.0b}{2004/05/16}{Bugfix 04-05-06: \cs{allowhyphens} added}
+% \changes{v1.0c}{2005/02/12}{Bugfix 04-12-16: Use some kind of
+% \cs{@startstrut}\cs{strutbox} instead of \cs{strut}}
+% \changes{v1.0c}{2005/02/12}{Bugfix 05-01-23: \cs{@finalstrut}\cs{strutbox} added}
+% \changes{v1.0d}{2005/05/05}{Use \cs{caption@ifempty};
+% \cs{let}\cs{caption@ifstrut}\cs{@secondoftwo} added}
+% \changes{v1.0d}{2005/05/05}{Bugfix: Handling of \cs{ifcaption@star} changed}
+% \changes{v1.0f}{2005/08/24}{Check for empty label added}
+% \changes{v1.0f}{2005/08/25}{\cs{caption@iflf} added}
+% \changes{v1.0j}{2007/02/18}{Usage of \cs{caption@tfmt} added}
+% \changes{v1.1}{2007/05/07}{Bugfix: \cs{ifhmode} added to \cs{@finalstrut}}
+% \changes{v1.2}{2007/11/17}{Made option \opt{size=} stronger than \opt{font=}}
+% \changes{v1.3}{2010/09/04}{Uses \cs{caption@applyfont} now}
+% \changes{v1.3}{2010/11/01}{Bugfix: If the caption text is empty, the text format will be set to \opt{simple} now}
+% \changes{v1.7}{2016/02/01}{Bugfix: \cs{relax} added before \cs{caption@lsep} so the label separator
+% will not be gobbled if the label font command ignores spaces, e.g. by usage of \cs{color}}
+% \changes{v1.8}{2018/09/12}{\cs{par} replaced by \cs{captiontextend}}
+% |\caption@@@make|\marg{caption label}\marg{caption text}\par
+% This one finally typesets the caption paragraph, without margin and indention.
+% \begin{macrocode}
+\newcommand\caption@@@make[2]{%
+% \end{macrocode}
+%
+% If the label is empty, we use no caption label separator.
+% \begin{macrocode}
+ \sbox\@tempboxa{#1}%
+ \ifdim\wd\@tempboxa=\z@
+ \let\caption@lsep\relax
+% \@capbreakfalse
+ \fi
+% \end{macrocode}
+%
+% If the text is empty, we use no caption label separator, too.
+% (And no text format either.)
+% \begin{macrocode}
+ \caption@ifempty{#2}{%
+ \let\caption@lsep\@empty
+ \let\caption@tfmt\@firstofone
+% \@capbreakfalse
+% \let\caption@ifstrut\@secondoftwo
+ }%
+% \end{macrocode}
+%
+% Take care that |\caption@parindent| and |\caption@hangindent| will be used
+% to typeset the paragraph.
+% \begin{macrocode}
+ \@setpar{\@@par\caption@@par}\caption@@par
+% \end{macrocode}
+%
+% Finally typeset the caption.
+% \begin{macrocode}
+ \caption@applyfont
+ \caption@fmt
+ {\ifcaption@star\else
+ \begingroup
+ \captionlabelfont
+ #1%
+ \endgroup
+ \fi}%
+ {\ifcaption@star\else
+ \begingroup
+ \caption@iflf\captionlabelfont
+ \relax\caption@lsep
+ \endgroup
+ \fi}%
+ {{\captiontextfont
+ \captiontextstart
+ \caption@ifstrut
+ {\vrule\@height\ht\strutbox\@width\z@}%
+ {}%
+ \nobreak\hskip\z@skip % enable hyphenation
+ \caption@tfmt{#2}%
+% \caption@ifstrut{\vrule\@height\z@\@depth\dp\strutbox\@width\z@}{}%
+ \caption@ifstrut
+ {\ifhmode\@finalstrut\strutbox\fi}%
+ {}%
+ \captiontextend}}}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\captiontextstart{}
+\newcommand*\captiontextend{\par}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@ifempty}
+% \changes{v1.0d}{2005/05/05}{This macro added}
+% \changes{v1.1}{2007/07/04}{Re-defines itself now}
+% \changes{v1.2a}{2007/01/22}{Revised so \cs{label} will be detected, too}
+% \changes{v1.2b}{2008/08/02}{Revised so \cs{index} and \cs{glossary} will be detected, too}
+% |\caption@ifempty|\marg{text}\marg{true} (\emph{no} \meta{false})\par
+% This one tests if the \meta{text} is actually empty.
+% \Note{This will be done without expanding the text,
+% therefore this is far away from being bullet-proof.}
+% \Note{This macro is re-defining itself so only
+% the first test (in a group) will actually be done.}
+% \begin{macrocode}
+\newcommand\caption@ifempty[1]{%
+ \caption@if@empty{#1}%
+ \caption@ifempty\@unused}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand\caption@if@empty[1]{%
+ \def\caption@tempa{#1}%
+ \ifx\caption@tempa\@empty
+ \let\caption@ifempty\@secondoftwo
+ \else
+ \expandafter\def\expandafter\caption@tempa\expandafter{%
+ \caption@car#1\caption@if@empty\caption@nil}%
+ \def\caption@tempb{\caption@if@empty}%
+ \ifx\caption@tempa\caption@tempb
+ \let\caption@ifempty\@secondoftwo
+ \else
+ \def\caption@tempb{\ignorespaces}%
+ \ifx\caption@tempa\caption@tempb
+ \expandafter\caption@if@empty\expandafter{\@gobble#1}%
+ \else
+ \def\caption@tempb{\label}%
+ \ifx\caption@tempa\caption@tempb
+ \expandafter\caption@if@empty\expandafter{\@gobbletwo#1}%
+ \else
+ \def\caption@tempb{\index}%
+ \ifx\caption@tempa\caption@tempb
+ \expandafter\caption@if@empty\expandafter{\@gobbletwo#1}%
+ \else
+ \def\caption@tempb{\glossary}%
+ \ifx\caption@tempa\caption@tempb
+ \expandafter\caption@if@empty\expandafter{\@gobbletwo#1}%
+ \else
+ \let\caption@ifempty\@gobbletwo
+ \fi
+ \fi
+ \fi
+ \fi
+ \fi
+ \fi}
+% \end{macrocode}
+% \begin{macrocode}
+\long\def\caption@car#1#2\caption@nil{#1}% same as \@car, but \long
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@@par}
+% \changes{v1.0f}{2005/08/22}{Made this definition global}
+% |\caption@@par|\par
+% This command will be executed with every |\par| inside the caption.
+% \begin{macrocode}
+\newcommand*\caption@@par{%
+ \parindent\caption@parindent\hangindent\caption@hangindent}%
+% \end{macrocode}
+% \end{macro}
+%
+% \subsection{Types \& sub-types}
+%
+% \begin{macro}{\DeclareCaptionType}
+% \changes{v1.1}{2007/08/12}{This macro added}
+% \changes{v1.1a}{2007/09/07}{Three optional arguments added}
+% \changes{v1.2}{2007/12/06}{Renamed from \cs{DeclareFloatingEnvironment} to \cs{DeclareCaptionType}}
+% \changes{v1.2}{2007/12/21}{Optional argument revised, uses key-value syntax now}
+% \changes{v1.2b}{2008/04/13}{Uses \cs{caption@within@default} now}
+% \changes{v1.2b}{2008/08/02}{Support of \cs{float@exts} and \cs{float@addtolists} added}
+% \changes{v1.2e}{2010/01/09}{Usage of \cs{caption@DeclareWithinOption} added}
+% \changes{v1.3}{2011/08/06}{Definition of \cs{listofXXXes} added}
+% \changes{v1.4a}{2011/10/29}{Outsourced as \package{newfloat} package}
+% |\DeclareCaptionType|\oarg{options}\marg{environment}\oarg{name}\oarg{list name}
+% \begin{macrocode}
+\newcommand*\DeclareCaptionType{%
+ \RequirePackage{newfloat}%
+ \DeclareFloatingEnvironment}
+\@onlypreamble\DeclareCaptionType
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@ForEachType}
+% \changes{v1.4a}{2011/10/29}{This macro added}
+% |\caption@ForEachType|\marg{code}
+% will execute the given code for all (known) floating environments.
+% \begin{macrocode}
+\newcommand\caption@ForEachType[1]{%
+ \caption@ifundefined\ForEachFloatingEnvironment
+ {\def\@elt##1{#1}%
+ \caption@ifundefined\c@figure\@gobble\@elt{figure}%
+ \caption@ifundefined\c@table\@gobble\@elt{table}%
+ \let\@elt\relax
+ \newfloat@addtohook{#1}}%
+ {\ForEachFloatingEnvironment{#1}}}
+% \end{macrocode}
+% \begin{macrocode}
+\providecommand\newfloat@addtohook[1]{%
+ \toks@=\expandafter{\newfloat@hook{##1}#1}%
+ \edef\@tempa{\def\noexpand\newfloat@hook####1{\the\toks@}}%
+ \@tempa}
+% \end{macrocode}
+% \begin{macrocode}
+\providecommand*\newfloat@hook[1]{}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\DeclareCaptionSubType}
+% \changes{v1.2}{2007/11/16}{This macro added}
+% \changes{v1.2a}{2008/03/11}{Bugfix: \cs{subfigurename} will be defined now}
+% \changes{v1.2d}{2009/10/09}{Bugfix 08-10-01: Usage of \cs{caption@addtoreset} added}
+% \changes{v1.3}{2011/01/01}{\cs{@dottedlofline} will be defined \& used now}
+% \changes{v1.4}{2011/10/09}{Support of the titletoc package added}
+% \changes{v1.5}{2011/12/29}{Usage of \cs{caption@addtoreset} replaced by \cs{@addtoreset}}
+% \changes{v1.5}{2013/01/10}{Bugfix: Definition of autoref string corrected}
+% \changes{v1.6}{2013/06/17}{Bugfix: \cs{c@tocdepth} will be set (locally) now}
+% |\DeclareCaptionSubType|\oarg{numbering scheme}\marg{type}\\
+% |\DeclareCaptionSubType*|\oarg{numbering scheme}\marg{type}\par
+% The starred variant provides the numbering format
+% \meta{type}|.|\meta{subtype} while the non-starred variant simply
+% uses \meta{subtype}.
+% \begin{macrocode}
+\newcommand*\DeclareCaptionSubType{%
+ \caption@teststar\caption@declaresubtype\@firstoftwo\@secondoftwo}
+\@onlypreamble\DeclareCaptionSubType
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@declaresubtype[1]{%
+ \@testopt{\caption@@declaresubtype{#1}}{alph}}
+\@onlypreamble\caption@declaresubtype
+% \end{macrocode}
+% \begin{macrocode}
+\def\caption@@declaresubtype#1[#2]#3{%
+ \@ifundefined{c@#3}%
+ {\caption@Error{No float type '#3' defined}}%
+% \end{macrocode}
+% \begin{macrocode}
+ {\@ifundefined{c@sub#3}%
+ {\caption@Debug{New subtype `sub#3'}%
+ \newcounter{sub#3}%
+ \@addtoreset{sub#3}{#3}%
+ \@namedef{ext@sub#3}{\csname ext@#3\endcsname}%
+ \caption@declaresublistentry{#3}%
+ \@cons\caption@subtypelist{{#3}}}%
+ {\caption@Debug{Modify caption `sub#3'}}%
+% \end{macrocode}
+% Support of \package{titletoc} package
+% \begin{macrocode}
+ \caption@ifundefined\contentsuse{}{%
+ \contentsuse{sub#3}{\csname ext@sub#3\endcsname}}%
+% \end{macrocode}
+% \begin{macrocode}
+ \@namedef{sub#3name}{}%
+ \@namedef{sub#3autorefname}{\csname #3autorefname\endcsname}%
+ #1% is \@firstoftwo in star form, and \@secondoftwo otherwise
+ {\@namedef{p@sub#3}{}%
+ \@namedef{thesub#3}{\csname the#3\endcsname.\@nameuse{#2}{sub#3}}}%
+ {\@namedef{p@sub#3}{\csname the#3\endcsname}%
+ \@namedef{thesub#3}{\@nameuse{#2}{sub#3}}}%
+ \@namedef{theHsub#3}{\csname theH#3\endcsname.\arabic{sub#3}}%
+ }}
+% \end{macrocode}
+% \begin{macrocode}
+\@onlypreamble\caption@@declaresubtype
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@declaresublistentry{%
+ \caption@ifundefined\l@chapter
+ {\caption@@declaresublistentry\l@subsubsection}%
+ {\caption@@declaresublistentry\l@subsection}}
+\@onlypreamble\caption@declaresublistentry
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@@declaresublistentry[2]{%
+ \ifx#1\@undefined
+ \caption@@@declaresublistentry\relax\@dottedtocline\caption@nil{#2}%
+ \else
+ \expandafter\caption@@@declaresublistentry#1{}{}\@dottedtocline\caption@nil{#2}%
+ \fi}
+\@onlypreamble\caption@@declaresublistentry
+% \end{macrocode}
+% \begin{macrocode}
+\long\def\caption@@@declaresublistentry#1\@dottedtocline#2\caption@nil#3{%
+ \def\@tempa{#1}%
+% Does \l@(sub)subsection start with \@dottedtocline?
+ \ifx\@tempa\@empty
+% Yes
+ \caption@@@@declaresublistentry{#3}#2\caption@nil
+ \else
+% No
+ \caption@@@@declaresublistentry{#3}@{3.8em}{3.2em}\caption@nil
+ \fi}
+\@onlypreamble\caption@@@declaresublistentry
+% \end{macrocode}
+% \begin{macrocode}
+\def\caption@@@@declaresublistentry#1#2#3#4#5\caption@nil{%
+ \expandafter\caption@@@@@declaresublistentry\expandafter
+ {\csname @dotted\csname ext@#1\endcsname line\endcsname}{#1}{#3}{#4}}
+\@onlypreamble\caption@@@@declaresublistentry
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@@@@@declaresublistentry[4]{%
+ \@namedef{l@sub#2}{#1{2}{#3}{#4}}%
+ \expandafter\caption@@@@@@declaresublistentry
+ \expandafter#1\expandafter{\csname ext@#2\endcsname depth}}
+\@onlypreamble\caption@@@@@declaresublistentry
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@@@@@@declaresublistentry[2]{
+ \ifx#1\relax
+ \def#1##1{%
+ \def\next{\@dottedtocline{##1}}%
+ \@ifundefined{c@#2}{}{%
+ \ifnum ##1>\@nameuse{c@#2}\relax
+ \let\next\@gobblefour
+ \else
+ \c@tocdepth=\@nameuse{c@#2}\relax
+ \fi}%
+ \next}%
+ \fi}
+\@onlypreamble\caption@@@@@@declaresublistentry
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@subtypelist}
+% An \cs{@elt}-list containing the subtypes defined
+% with |\Declare|\-|Caption|\-|Sub|\-|Type|.
+% \begin{macrocode}
+\newcommand*\caption@subtypelist{}
+% \end{macrocode}
+% \end{macro}
+%
+% Unfortunately the \class{memoir} document class resets the
+% \texttt{subfigure} resp.~\texttt{subtable} counter at the begin
+% of floating environments, i.e.~at |\@float|.
+% As a side-effect |\Continued|\-|Float| does not work correctly.
+% For that reason we need to introduce macros to save and restore
+% all sub-caption counters here.
+%
+% \begin{macro}{\caption@restorecounters}
+% \changes{v1.5}{2013/05/01}{This macro added}
+% |\caption@restore|\-|counters| restores all counters saved with
+% |\caption@save|\-|counter|.
+% \begin{macrocode}
+\newcommand*\caption@restorecounters{%
+ \caption@restore@counters
+ \global\let\caption@restore@counters\@empty}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@restore@counters{}
+% \end{macrocode}
+% \end{macro}
+% \begin{macro}{\caption@savesubcounters}
+% \changes{v1.5}{2013/05/01}{This macro added}
+% |\caption@save|\-|sub|\-|counters| saves all sub-caption counters,
+% so they can be restored with |\caption@restore|\-|counters| later on.
+% \begin{macrocode}
+\newcommand*\caption@savesubcounters{%
+ \def\@elt##1{\caption@savecounter{sub##1}}%
+ \caption@subtypelist
+ \let\@elt\relax}%
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@savecounter[1]{%
+ \edef\caption@tempa{%
+ \noexpand\l@addto@macro\noexpand\caption@restore@counters
+ {\noexpand\setcounter{#1}{\number\value{#1}}}}%
+ \caption@tempa}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@For}
+% \changes{v1.1a}{2007/09/07}{This macro added}
+% \changes{v1.2}{2007/11/16}{Renamed from \cs{ForFloatingEnvironments} to \cs{caption@For}}
+% |\caption@For|\marg{elt-list}\marg{code with \#1}\\
+% |\caption@For*|\marg{elt-list}\marg{code with \#1}
+% \begin{macrocode}
+\newcommand*\caption@For{\caption@withoptargs\caption@@For}
+%\@onlypreamble\caption@For
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand\caption@@For[3]{%
+ \caption@AtBeginDocument#1{%
+ \def\@elt##1{#3}%
+ \@nameuse{caption@#2}%
+ \let\@elt\relax}}%
+%\@onlypreamble\caption@@For
+% \end{macrocode}
+% \end{macro}
+%
+% \subsection{subfig package adaptions}
+% \changes{v1.1}{2007/07/07}{Several adaptions to the \package{subfig} package added}
+% \changes{v1.4a}{2011/11/01}{Bugfix 11-11-01: Test for the \package{subfig} package revised}
+%
+% Since the \package{subfig} package is not maintained anymore,
+% we have to make several adaptions to \thispackage~\version{1.1} here.
+% Please note that we only support the version $1.3$ of the \package{subfig} package here.
+% So older versions do not work with this version of \thispackage, and newer
+% versions are expected to be adapted.
+% \begin{macrocode}
+\caption@AtBeginDocument{%
+ \def\@tempa{2005/06/28 ver: 1.3 subfig package}%
+ \expandafter\ifx\csname ver@subfig.sty\endcsname\@tempa
+ \caption@InfoNoLine{subfig package v1.3 is loaded}%
+% \end{macrocode}
+% \begin{macrocode}
+ \let\caption@setfloattype\@gobble
+ \let\@dottedxxxline\sf@NEW@dottedxxxline
+ \let\sf@subfloat\sf@NEW@subfloat
+% \end{macrocode}
+% \begin{macrocode}
+ \fi
+ \let\sf@NEW@dottedxxxline\@undefined
+ \let\sf@NEW@subfloat\@undefined}
+% \end{macrocode}
+%
+% \begin{macro}{\@dottedxxxline}
+% New version of |\@dottedxxxline|
+% \begin{macrocode}
+\def\sf@NEW@dottedxxxline#1#2#3#4#5#6#7{%
+ \begingroup
+ \caption@setfloattype{#1}%
+ \caption@setoptions{subfloat}%
+ \caption@setoptions{sub#1}%
+ \ifnum #3>\@nameuse{c@#2depth}\else
+ \@dottedtocline{\z@}{#4}{#5}{#6}{#7}%
+ \fi
+ \endgroup}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\sf@subfloat}
+% \changes{v1.4b}{2011/12/29}{Bugfix 11-12-23: Usage of \cs{caption@warmup} added}
+% New version of |\sf@subfloat|
+% \begin{macrocode}
+\def\sf@NEW@subfloat{%
+ \begingroup
+ \@nameuse{caption@warmup}%
+ \caption@setfloattype\@captype
+ \sf@ifpositiontop{%
+ \maincaptiontoptrue
+ }{%
+ \maincaptiontopfalse
+ }%
+ \caption@setoptions{subfloat}%
+ \caption@setoptions{sub\@captype}%
+ \let\sf@oldlabel=\label
+ \let\label=\subfloat@label
+ \ifmaincaptiontop\else
+ \advance\@nameuse{c@\@captype}\@ne
+ \fi
+ \refstepcounter{sub\@captype}%
+ \setcounter{sub\@captype @save}{\value{sub\@captype}}%
+ \@ifnextchar [% %] match left bracket
+ {\sf@@subfloat}%
+ {\sf@@subfloat[\@empty]}}
+% \end{macrocode}
+% \end{macro}
+%
+% \iffalse
+%</package>
+% \fi
+%
+% \clearpage
+% \begin{thebibliography}{99}
+% \bibitem{TLC2}
+% Frank Mittelbach and Michel Goossens:\\
+% \newblock {\em The {\LaTeX} Companion (2nd.~Ed.)},\\
+% \newblock Addison-Wesley, 2004.
+%
+% \bibitem{Anne}
+% Anne Br\"uggemann-Klein:\\
+% \emph{Einf\"uhrung in die Dokumentverarbeitung},\\
+% B.G. Teubner, Stuttgart, 1989
+%
+% \bibitem{hyperref}
+% Sebastian Rahtz \& Heiko Oberdiek:\\
+% \href{http://www.ctan.org/pkg/hyperref}%
+% {\emph{Hypertext marks in \LaTeX}},\\
+% November 12, 2007
+%
+% \bibitem{refcount}
+% Heiko Oberdiek:\\
+% \href{http://www.ctan.org/pkg/refcount}%
+% {\emph{The refcount package}},\\
+% 2006/02/20
+%
+% \bibitem{threeparttable}
+% Donald Arseneau:\\
+% \href{http://www.ctan.org/pkg/threeparttable}%
+% {\emph{Three part tables: title, tabular environment, notes}},\\
+% 2003/06/13
+% \end{thebibliography}
+%
+% \iffalse
+% --------------------------------------------------------------------------- %
+% \fi
+%
+% \clearpage
+% \Finale
+%
+\endinput
diff --git a/macros/latex/contrib/caption/fallback/v3.4/caption.dtx b/macros/latex/contrib/caption/fallback/v3.4/caption.dtx
new file mode 100644
index 0000000000..2c9dc62be3
--- /dev/null
+++ b/macros/latex/contrib/caption/fallback/v3.4/caption.dtx
@@ -0,0 +1,4538 @@
+% \iffalse meta-comment
+%
+% This is file `caption.dtx'.
+%
+% Copyright (C) 1994-2020 Axel Sommerfeldt (axel.sommerfeldt@f-m.fm)
+%
+% --------------------------------------------------------------------------
+%
+% This work may be distributed and/or modified under the
+% conditions of the LaTeX Project Public License, either version 1.3
+% of this license or (at your option) any later version.
+% The latest version of this license is in
+% http://www.latex-project.org/lppl.txt
+% and version 1.3 or later is part of all distributions of LaTeX
+% version 2003/12/01 or later.
+%
+% This work has the LPPL maintenance status "maintained".
+%
+% This Current Maintainer of this work is Axel Sommerfeldt.
+%
+% This work consists of the files
+% caption.ins, caption.dtx, caption2.dtx, caption3.dtx,
+% bicaption.dtx, ltcaption.dtx, subcaption.dtx,
+% the derived files
+% caption.sty, caption2.sty, caption3.sty,
+% bicaption.sty, ltcaption.sty, subcaption.sty,
+% and the user manuals
+% caption-deu.tex, caption-eng.tex, caption-rus.tex.
+%
+% \fi
+% \CheckSum{2986}
+%
+% \iffalse
+%<*driver>
+\NeedsTeXFormat{LaTeX2e}[1994/12/01]
+\ProvidesFile{caption.drv}[2015/09/16 v3.4 Implementation of the caption package]
+\hbadness=9999 \newcount\hbadness \hfuzz=100pt % Make TeX shut up.
+%\errorcontextlines=3
+%
+\documentclass{ltxdoc}
+\setlength\parindent{0pt}
+\setlength\parskip{\smallskipamount}
+%
+\makeatletter % make room for subsections like 2.16.14 in the TOC
+%\newcommand*\l@subsection{\@dottedtocline{2}{1.5em}{2.3em}}
+\renewcommand*\l@subsection{\@dottedtocline{2}{1.5em}{2.7em}}
+\makeatother
+%
+\usepackage{ifpdf}
+\ifpdf
+ \usepackage{mathptmx,courier}
+ \usepackage[scaled=0.90]{helvet}
+ \addtolength\marginparwidth{15pt}
+\fi
+%
+\usepackage{hypdoc}
+\ifpdf\usepackage{hypdestopt}\fi
+\hypersetup{pdfkeywords={LaTeX, package, caption},pdfstartpage={},pdfstartview={}}
+%
+\usepackage[debug]{caption}[2013/01/01]
+%
+\DeclareRobustCommand*\eTeX{\texorpdfstring
+ {\leavevmode\hbox{$\varepsilon$}-\TeX}%
+ {e-TeX}}
+\DeclareRobustCommand*\AmS{\texorpdfstring
+ {{\protect\usefont{OMS}{cmsy}{m}{n}A\kern-.1667em\lower.5ex\hbox{M}\kern-.125emS}}%
+ {AMS}}
+\DeclareRobustCommand*\KOMAScript{\texorpdfstring
+ {\textsf{K\kern.05em O\kern.05em M\kern.05em A\kern.1em-\kern.1em Script}}%
+ {KOMA-Script}}
+\DeclareRobustCommand*\NTG{NTG}
+\DeclareRobustCommand*\SmF{SMF}
+%
+\begin{document}
+ \DocInput{caption.dtx}
+\end{document}
+%</driver>
+% \fi
+%
+% \newcommand*\purerm[1]{\texorpdfstring{{\upshape\mdseries\rmfamily #1}}{#1}}
+% \newcommand*\puresf[1]{\texorpdfstring{{\upshape\mdseries\sffamily #1}}{#1}}
+% \newcommand*\purett[1]{\texorpdfstring{{\upshape\mdseries\ttfamily #1}}{#1}}
+% \let\class\puresf \let\package\puresf
+% \let\env\purett \let\opt\purett
+%
+% \def\thispackage{the \package{caption} package}
+% \def\Thispackage{The \package{caption} package}
+%
+% \newcommand*\csmarg[1]{\texttt{\char`\{#1\char`\}}}
+% \newcommand*\csoarg[1]{\texttt{\char`\[#1\char`\]}}
+% \newcommand*\version[2][]{\textit{v#2}}
+%
+% \newcommand*\issue[1]{GitLab~\##1}
+%
+% \GetFileInfo{caption.sty}
+%
+% \title{The Implementation of
+% \texorpdfstring{\thispackage\thanks{%^^A
+% This package has version number \fileversion, last revised \filedate.}}%^^A
+% {the caption package}}
+% \author{Axel Sommerfeldt\\
+% \url{https://gitlab.com/axelsommerfeldt/caption}}
+% \date{\filedate}
+% \maketitle
+%
+% \begin{abstract}
+% \Thispackage\ consists of two parts -- the kernel
+% (|caption3.sty|) and the main package (|caption.sty|).
+%
+% \Thispackage\ redefines the \LaTeX\ commands
+% |\caption|, |\@caption|, and |\@makecaption| and maps the latter one to
+% |\caption@@make|, giving the user the possibility to control the look \& feel
+% of the captions from floating environments like |figure| and |table|.
+% Furthermore it does similar to the caption stuff coming from other packages
+% (like the \package{longtable} or \package{supertabular} package):
+% Mapping the appropriate internal commands (like |\LT@makecaption| or
+% |\ST@caption|) to the ones offered by the \package{caption3} kernel.
+% So you can think of \thispackage\ as a layer package, it
+% simply provides adaptation layers between the caption stuff coming from
+% \LaTeXe\ or packages, and the caption stuff offered by the
+% \package{caption3} kernel.
+% \end{abstract}
+%
+% \section*{User manual}
+%
+% This document is describing the code implementation only.
+% The user documentation can be found in
+% \nopagebreak\begin{quote}
+% \begin{tabular}{ll}
+% \href{http://mirror.ctan.org/macros/latex/contrib/caption/caption-eng.pdf}%
+% {\texttt{caption-eng.pdf}} & The English documentation \\
+% \href{http://mirror.ctan.org/macros/latex/contrib/caption/caption-rus.pdf}%
+% {\texttt{caption-rus.pdf}} & The Russian documentation\footnotemark \\
+% \href{http://mirror.ctan.org/macros/latex/contrib/caption/caption-deu.pdf}%
+% {\texttt{caption-deu.pdf}} & The German documentation \\
+% \end{tabular}
+% \footnotetext{Thanks a lot to Olga Lapko for this translation}
+% \end{quote}
+%
+% \StopEventually{}
+% \clearpage
+% \tableofcontents
+%
+% \iffalse
+% --------------------------------------------------------------------------- %
+% \fi
+%
+% \DoNotIndex{\\,\_,\ ,\@@par}
+% \DoNotIndex{\@bsphack}
+% \DoNotIndex{\@car,\@cdr,\@classoptionslist,\@cons,\@currext,\@currname}
+% \DoNotIndex{\@ehc,\@ehd,\@empty,\@esphack,\@expandtwoargs}
+% \DoNotIndex{\@for,\@firstofone,\@firstoftwo}
+% \DoNotIndex{\@gobble,\@gobblefour,\@gobbletwo,\@hangfrom}
+% \DoNotIndex{\if@minipage\@ifnextchar,\@ifpackagelater,\@ifpackageloaded}
+% \DoNotIndex{\@ifstar,\@ifundefined,\@latex@error,\@minipagefalse,\@minipagetrue}
+% \DoNotIndex{\@namedef,\@nameuse}
+% \DoNotIndex{\@onlypreamble,\@parboxrestore,\@plus,\@ptionlist}
+% \DoNotIndex{\@removeelement,\@restorepar,\@secondoftwo,\@setminipage,\@setpar}
+% \DoNotIndex{\@tempa,\@tempboxa,\@tempdima,\@tempdimb,\@tempdimc,\@tempb,\@tempc}
+% \DoNotIndex{\@testopt}
+% \DoNotIndex{\@undefined,\@unprocessedoptions,\@unusedoptionlist}
+% \DoNotIndex{\p@,\z@}
+% \DoNotIndex{\active,\addtocounter,\addtolength,\advance,\aftergroup}
+% \DoNotIndex{\baselineskip,\begin,\begingroup,\bfseries,\box}
+% \DoNotIndex{\catcode,\centering,\changes,\csname,\def,\divide,\do,\downarrow}
+% \DoNotIndex{\edef,\else,\empty,\end,\endcsname,\endgraf,\endgroup,\expandafter}
+% \DoNotIndex{\fi,\footnotesize,\global}
+% \DoNotIndex{\hangindent,\hbox,\hfil,\hsize,\hskip,\hspace,\hss}
+% \DoNotIndex{\ifcase,\ifdim,\ifnum,\ifodd,\ifvoid,\ifvmode}
+% \DoNotIndex{\ifx,\ignorespaces,\itshape}
+% \DoNotIndex{\Large,\large,\leavevmode,\leftmargini,\leftskip,\let,\linewidth}
+% \DoNotIndex{\llap,\long,\m@ne,\margin,\mdseries,\message}
+% \DoNotIndex{\newcommand,\newdimen,\newlength,\newline,\newif,\newsavebox}
+% \DoNotIndex{\next,\nobreak,\nobreakspace,\noexpand,\noindent,\numberline}
+% \DoNotIndex{\normalcolor,\normalfont,\normalsize,\or,\par,\parbox,\parfillskip}
+% \DoNotIndex{\parindent,\parskip,\prevdepth,\protect,\protected@edef,\protected@write}
+% \DoNotIndex{\providecommand,\quad}
+% \DoNotIndex{\raggedleft,\raggedright,\relax,\renewcommand,\RequirePackage}
+% \DoNotIndex{\rightskip,\rmfamily}
+% \DoNotIndex{\sbox,\scriptsize,\scshape,\setbox,\setlength,\sffamily,\slshape}
+% \DoNotIndex{\small,\string,\space,\strut}
+% \DoNotIndex{\textheight,\the,\toks@,\typeout,\ttfamily}
+% \DoNotIndex{\unvbox,\uparrow,\upshape,\usebox,\usepackage}
+% \DoNotIndex{\value,\vbox,\vsize,\vskip,\wd,\width,\z@skip}
+% \DoNotIndex{\AtBeginDocument,\AtEndOfPackage,\CurrentOption,\DeclareOption}
+% \DoNotIndex{\ExecuteOptions,\GenericWarning,\IfFileExists,\InputIfFileExists}
+% \DoNotIndex{\NeedsTeXFormat,\MessageBreak}
+% \DoNotIndex{\PackageError,\PackageInfo,\PackageWarning,\PackageWarningNoLine}
+% \DoNotIndex{\PassOptionsToPackage,\ProcessOptions,\ProvidesPackage}
+%
+% \iffalse
+% --------------------------------------------------------------------------- %
+% \fi
+%
+% \setlength{\parskip}{0pt plus 1pt}
+% \newcommand*\Note[2][Note]{\par{\small\emph{#1:} #2}\par}
+%
+% \changes{v1.0}{1994/10/27}{First release}
+% \changes{v1.1}{1994/11/03}{New option \texttt{centerlast}}
+% \changes{v1.2}{1994/11/28}{Support of the \package{float} package}
+% \changes{v1.3}{1995/01/09}{Support of \cs{captionlabelfont} in subcaptions}
+% \changes{v1.4}{1995/01/30}{New option \texttt{nooneline}}
+% \changes{v1.4b}{1995/04/05}{Bugfix release}
+% \changes{v3.0}{2003/12/20}{Rewritten; many new commands and features}
+% \changes{v3.0d}{2004/11/28}{Split into two packages: \package{caption} \& \package{caption3}}
+%
+% \iffalse
+% --------------------------------------------------------------------------- %
+% \fi
+%
+% \clearpage
+%
+% \iffalse
+%<*package>
+% \fi
+%
+% \section{Identification}
+%
+% \begin{macrocode}
+\NeedsTeXFormat{LaTeX2e}[1994/12/01]
+%\ProvidesPackage{caption}[2020/07/29 v3.4m Customizing captions (AR)]
+\ProvidesPackage{caption}[2020/09/28 v3.4n Customizing captions (AR)] % Backport of commit 43567491e5b075d661c080bca298f5428f289758 from 2020/09/28
+% \end{macrocode}
+%
+% \section{Loading the kernel}
+%
+% \begin{macrocode}
+\RequirePackage{caption3}[=2020/07/29] % needs v1.13 or newer
+% \end{macrocode}
+%
+% \section{Check against unknown document classes}
+%
+% \begin{macrocode}
+\caption@ifbool{documentclass}{}{%
+ \caption@WarningNoLine{%
+ Unknown document class (or package),\MessageBreak
+ standard defaults will be used}}
+% \end{macrocode}
+%
+% \section{Check against incompatible packages}
+%
+% \changes{v3.0p}{2007/04/06}{Check against obsolete \package{caption2} package added}
+% \begin{macrocode}
+\@ifpackageloaded{caption2}{%
+ \caption@Error{%
+ You can't use both, the (obsolete) caption2 *and*\MessageBreak
+ the (current) caption package}%
+ \endinput
+}{}
+% \end{macrocode}
+%
+% \changes{v3.1}{2007/06/15}{Check against incompatible \package{ftcap} package added}
+% \changes{v3.1}{2007/06/15}{Check against incompatible \package{nonfloat} package added}
+% \changes{v3.1}{2007/06/18}{Check against incompatible \package{topcapt} package added}
+% \begin{macrocode}
+\caption@AtBeginDocument{%
+ \@ifpackageloaded{ftcap}{\caption@DisablePositionOption{ftcap}}{}%
+ \@ifpackageloaded{nonfloat}{\caption@DisablePositionOption{nonfloat}}{}%
+ \@ifpackageloaded{topcapt}{\caption@DisablePositionOption{topcapt}}{}}
+% \end{macrocode}
+% \begin{macro}{\caption@DisablePositionOption}
+% \changes{v3.1g}{2008/03/20}{\texttt{position=b} added}
+% \changes{v3.1h}{2008/03/29}{%
+% Name changed from \cs{caption@IncompatiblePackage} to \cs{caption@DisablePositionOption};
+% disables the `position' option now instead of issuing a warning}
+% |\caption@DisablePositionOption|\marg{package}\par
+% disables the `position' option.
+% \begin{macrocode}
+\newcommand*\caption@DisablePositionOption[1]{%
+ \caption@InfoNoLine{%
+ `#1' package detected; setting `position=b' for compatibility reasons}%
+ \caption@setposition b%
+% \end{macrocode}
+% \begin{macrocode}
+ \DeclareCaptionOption{position}{%
+ \caption@Error{Usage of the `position' option is incompatible\MessageBreak
+ to the `#1' package}}}
+% \end{macrocode}
+% \begin{macrocode}
+\@onlypreamble\caption@DisablePositionOption
+% \end{macrocode}
+% \end{macro}
+%
+% \section{Declaration of options}
+%
+% \subsection{Miscellaneous options}
+%
+% \begin{macrocode}
+\DeclareCaptionOption*{config}[caption]{%
+ \InputIfFileExists{#1.cfg}%
+ {\typeout{*** Local configuration file #1.cfg used ***}}%
+ {\caption@Warning{Configuration file #1.cfg not found}}}
+% \end{macrocode}
+%
+% \begin{macro}{\caption@selectlistentry}
+% \changes{v3.2}{2010/11/07}{This macro added}
+% |\caption@selectlistentry|\marg{\purett{heading} or \purett{entry}}
+% \begin{macrocode}
+\newcommand*\caption@selectlistentry[1]{%
+ \caption@ifinlist{#1}{heading}{%
+ \let\caption@iflistheading\@firstoftwo
+ }{\caption@ifinlist{#1}{default,list-entry,entry}{%
+ \let\caption@iflistheading\@secondoftwo
+ }{%
+ \caption@Error{Undefined list-entry selection `#1'}%
+ }}}
+% \end{macrocode}
+% \end{macro}
+%
+% \changes{v3.3}{2012-03-25}{Option \opt{list-entry} added}
+% \begin{macrocode}
+\DeclareCaptionOption{list-entry}{\caption@selectlistentry{#1}}
+\captionsetup{list-entry=default}
+% \end{macrocode}
+%
+% \begin{macro}{\caption@setparboxrestore}
+% \changes{v3.2}{2010/11/07}{This macro added}
+% |\caption@setparboxrestore|\marg{\purett{partial} or \purett{full}}
+% \begin{macrocode}
+\newcommand*\caption@setparboxrestore[1]{%
+ \caption@ifinlist{#1}{full}{%
+ \caption@setfullparboxrestore
+ }{\caption@ifinlist{#1}{default,light,partial}{%
+ \let\caption@parboxrestore\@secondoftwo
+ }{%
+ \caption@Error{Undefined parboxrestore `#1'}%
+ }}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@setfullparboxrestore}
+% \changes{v3.2}{2010/11/07}{This macro added}
+% |\caption@setfullparboxrestore|\par
+% This is an abbreviation for |\caption@setparboxrestore{full}|.
+% \begin{macrocode}
+\newcommand*\caption@setfullparboxrestore{%
+ \let\caption@parboxrestore\@firstoftwo}
+% \end{macrocode}
+% \end{macro}
+%
+% \changes{v3.2}{2010/11/07}{Option \opt{parboxrestore} added}
+% \begin{macrocode}
+\DeclareCaptionOption{parboxrestore}{\caption@setparboxrestore{#1}}
+\captionsetup{parboxrestore=default}
+% \end{macrocode}
+%
+% \changes{v3.1f}{2007/11/28}{Option \opt{@minipage=} added}
+% \begin{macrocode}
+\DeclareCaptionOption{@minipage}{%
+ \caption@ifinlist{#1}{auto,default}%
+ {\let\caption@if@minipage\@gobbletwo}%
+ {\caption@set@bool\caption@if@minipage{#1}}}
+\captionsetup{@minipage=default}
+% \end{macrocode}
+%
+% \subsection{caption v1.x compatibility options}
+% \changes{v3.1}{2007/07/21}{Option `compatibility' added}
+% \changes{v3.1}{2007/09/01}{caption v1.x compatibility options revised}
+% \changes{v3.1d}{2007/10/24}{Bugfix 07-10-24 in caption v1.x$ compatibility options}
+%
+% Currently we support |v1| and |v3| as values for the |compatibility=| option.
+% But since this used to be a boolean option is the past we still support any boolean value
+% for compatibility reasons.
+%
+% \begin{macrocode}
+\DeclareCaptionOption{compatibility}[v1]{%
+ \caption@ifinlist{#1}{v1,1,true,yes,on}{%
+ \let\caption@ifcompatibility\@firstoftwo
+ }{\caption@ifinlist{#1}{v3,3,0,false,no,off}{%
+ \let\caption@ifcompatibility\@secondoftwo
+ }{%
+ \caption@Error{Undefined compatibility value `#1'}%
+ }}}
+\@onlypreamble@key{caption}{compatibility}
+% \end{macrocode}
+% \begin{macrocode}
+\caption@setbool{compatibility}{0} % default: Try not to be compatible to v1.x
+% \end{macrocode}
+%
+% \begin{macro}{\caption@setincompatible}
+% \changes{v3.4}{2019/09/09}{This macro added}
+% |\caption@setincompatible|\marg{condition}\marg{message text}
+% \begin{macrocode}
+\newcommand*\caption@setincompatible[2]{%
+ #1{%
+ \caption@WarningNoLine{%
+ #2;\MessageBreak
+ Setting compatibility to v1}%
+ \caption@setbool{compatibility}{1}%
+ }{}}
+% \end{macrocode}
+% \end{macro}
+%
+% Check against incompatible packages which used to work fine with v1 of the `caption' package.
+% \begin{macrocode}
+\caption@AtBeginDocument{\caption@ifcompatibility{}{%
+% \end{macrocode}
+% The usage of the (now obsolete) \package{captcont} package,
+% which brings its own definition of |\caption*|, was quite common in the old days.
+% \begin{macrocode}
+ \caption@setincompatible{\@ifpackageloaded{captcont}}{captcont package is loaded}%
+% \end{macrocode}
+% To be continued\ldots
+% \begin{macrocode}
+}}
+% \end{macrocode}
+%
+% \begin{macrocode}
+\DeclareCaptionOptionNoValue*{normal}{%
+ \caption@setformat{plain}%
+ \caption@setjustification{justified}}
+\DeclareCaptionOptionNoValue*{isu}{%
+ \caption@setformat{hang}%
+ \caption@setjustification{justified}}
+\DeclareCaptionOptionNoValue*{hang}{%
+ \caption@setformat{hang}%
+ \caption@setjustification{justified}}
+\DeclareCaptionOptionNoValue*{center}{%
+ \caption@setformat{plain}%
+ \caption@setjustification{centering}}
+\DeclareCaptionOptionNoValue*{centerlast}{%
+ \caption@setformat{plain}%
+ \caption@setjustification{centerlast}}
+% \end{macrocode}
+%
+% \begin{macrocode}
+\DeclareCaptionOptionNoValue*{scriptsize}{\def\captionfont{\scriptsize}}
+\DeclareCaptionOptionNoValue*{footnotesize}{\def\captionfont{\footnotesize}}
+\DeclareCaptionOptionNoValue*{small}{\def\captionfont{\small}}
+\DeclareCaptionOptionNoValue*{normalsize}{\def\captionfont{\normalsize}}
+\DeclareCaptionOptionNoValue*{large}{\def\captionfont{\large}}
+\DeclareCaptionOptionNoValue*{Large}{\def\captionfont{\Large}}
+% \end{macrocode}
+%
+% \begin{macrocode}
+\DeclareCaptionOptionNoValue*{up}{\l@addto@macro\captionlabelfont\upshape}
+\DeclareCaptionOptionNoValue*{it}{\l@addto@macro\captionlabelfont\itshape}
+\DeclareCaptionOptionNoValue*{sl}{\l@addto@macro\captionlabelfont\slshape}
+\DeclareCaptionOptionNoValue*{sc}{\l@addto@macro\captionlabelfont\scshape}
+\DeclareCaptionOptionNoValue*{md}{\l@addto@macro\captionlabelfont\mdseries}
+\DeclareCaptionOptionNoValue*{bf}{\l@addto@macro\captionlabelfont\bfseries}
+\DeclareCaptionOptionNoValue*{rm}{\l@addto@macro\captionlabelfont\rmfamily}
+\DeclareCaptionOptionNoValue*{sf}{\l@addto@macro\captionlabelfont\sffamily}
+\DeclareCaptionOptionNoValue*{tt}{\l@addto@macro\captionlabelfont\ttfamily}
+% \end{macrocode}
+%
+% \begin{macrocode}
+\DeclareCaptionOptionNoValue*{nooneline}{\caption@setbool{slc}{0}}
+% \end{macrocode}
+%
+% \begin{macrocode}
+\caption@setbool{ruled}{0}
+\DeclareCaptionOptionNoValue*{ruled}{\caption@setbool{ruled}{1}}
+% \end{macrocode}
+%
+% \subsection{caption2 v2.x compatibility options}
+% \changes{v3.0h}{2005/07/08}{caption2 \version{2.x} compatibility options added}
+% \changes{v3.1}{2007/09/01}{caption2 v2.x compatibility options revised}
+% \changes{v3.1d}{2007/10/24}{Bugfix 07-10-24 in caption v2.x$ compatibility options}
+%
+% \begin{macrocode}
+\DeclareCaptionOptionNoValue*{flushleft}{%
+ \caption@setformat{plain}%
+ \caption@setjustification{raggedright}}
+\DeclareCaptionOptionNoValue*{flushright}{%
+ \caption@setformat{plain}%
+ \caption@setjustification{raggedleft}}
+% \end{macrocode}
+% \begin{macrocode}
+\DeclareCaptionOptionNoValue*{oneline}{\caption@setbool{slc}{1}}
+% \end{macrocode}
+% \begin{macrocode}
+\DeclareCaptionOptionNoValue*{ignoreLTcapwidth}{%
+ \caption@WarningNoLine{Obsolete option `ignoreLTcapwidth' ignored}}
+% \end{macrocode}
+%
+% \subsection{Obsolete caption v3.0 options}
+% \changes{v3.1}{2007/05/07}{Package option \opt{caption} marked as obsolete,
+% gives error now}
+%
+% \begin{macrocode}
+\DeclareCaptionOption*{caption}{%
+ \caption@setbool{temp}{#1}%
+ \caption@ifbool{temp}{}{%
+ \caption@Error{%
+ The package option `caption=#1' is obsolete.\MessageBreak
+ Please pass this option to the subfig package instead\MessageBreak
+ and do *not* load the caption package anymore}}}
+% \end{macrocode}
+%
+% \subsection{fltpage package support options}
+%
+% \changes{v3.1}{2007/09/01}{Options `FPlist' \& `FPref' added}
+% With these options is controlled where the list-of entry and |\ref| resp.
+% |\pageref| or |\autoref| will link to.
+% Defaults are |FPlist=caption| and |FPref=figure| which is inconsistent,
+% but compatible to the usual behaviour of the \package{fltpage} package.
+% \begin{macrocode}
+\DeclareCaptionOption{FPlist}[1]{\caption@setFPoption{list}{#1}}
+\DeclareCaptionOption{FPref}[1]{\caption@setFPoption{ref}{#1}}
+\@onlypreamble@key{caption}{FPlist}
+\@onlypreamble@key{caption}{FPref}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@setFPoption[2]{%
+ \edef\caption@tempa{\@car#2\@nil}%
+ \caption@setbool{FP#1cap}{\if c\caption@tempa 1\else 0\fi}}
+\@onlypreamble\caption@setFPoption
+% \end{macrocode}
+% \begin{macrocode}
+\captionsetup{FPlist=caption,FPref=figure}
+% \end{macrocode}
+%
+% \subsection{hyperref package support options}
+%
+% \changes{v3.1}{2007/06/21}{Options `hypcap' \& `hypcapspace' added}
+% With |hypcap=off| one can turn the \package{hypcap} support off
+% (default is |on|).
+% \begin{macrocode}
+\DeclareCaptionOption{hypcap}[1]{\caption@setbool{hypcap}{#1}}
+\DeclareCaptionOption{hypcapspace}{\def\caption@hypcapspace{#1}}
+% \end{macrocode}
+% \begin{macrocode}
+\captionsetup{hypcap=1,hypcapspace=.5\baselineskip}
+% \end{macrocode}
+%
+% \section{\AmS{} \& \SmF{} document classes support}
+% \changes{v3.1}{2007/07/29}{\AmS\ \& \SmF\ document classes support added}
+%
+% \begin{macrocode}
+\caption@ifclassloaded{ams}{%
+ \caption@InfoNoLine{AMS or SMF document class}%
+% \end{macrocode}
+% \begin{macrocode}
+ \setlength\belowcaptionskip{0pt}% set to 12pt by AMS class
+% \end{macrocode}
+% \begin{macrocode}
+}{}
+% \end{macrocode}
+%
+% \section{\KOMAScript{} document classes support}
+% \changes{v3.0a}{2004/01/18}{Minimum adaptation to \KOMAScript\ added}
+% \changes{v3.0h}{2005/08/22}{\KOMAScript\ compatibility options added}
+% \changes{v3.0i}{2005/11/17}{\KOMAScript\ compatibility commands added}
+% \changes{v3.0l}{2007/02/18}{\KOMAScript\ compatibility revised}
+% \changes{v3.1}{2007/03/17}{\KOMAScript\ compatibility options removed}
+% \changes{v3.1}{2007/04/05}{\KOMAScript\ compatibility revised \& enhanced}
+%
+% \begin{macrocode}
+\caption@ifclassloaded{koma}{%
+ \caption@InfoNoLine{KOMA-Script document class}%
+% \end{macrocode}
+%
+% Here we emulate the caption related commands and take over the caption
+% related settings from the \KOMAScript\ classes.
+%
+% \begin{macro}{\@tablecaptionabovetrue}
+% \begin{macro}{\@tablecaptionabovefalse}
+% \changes{v3.1g}{2008/03/01}{\cs{def} changed to \cs{g@addto@macro}}
+% \begin{macrocode}
+ \g@addto@macro\@tablecaptionabovetrue{\captionsetup*[table]{position=t}}
+ \g@addto@macro\@tablecaptionabovefalse{\captionsetup*[table]{position=b}}
+% \end{macrocode}
+% \begin{macrocode}
+ \if@tablecaptionabove
+ \@tablecaptionabovetrue
+ \else
+ \@tablecaptionabovefalse
+ \fi
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+%
+% \begin{macro}{\@figurecaptionabovetrue}
+% \begin{macro}{\@figurecaptionabovefalse}
+% \changes{v3.3}{2013/02/15}{Support of \cs{@figurecaptionabovetrue} added}
+% \begin{macrocode}
+ \caption@ifdefined\@figurecaptionabovetrue{%
+% \end{macrocode}
+% \begin{macrocode}
+ \g@addto@macro\@figurecaptionabovetrue{\captionsetup*[figure]{position=t}}
+ \g@addto@macro\@figurecaptionabovefalse{\captionsetup*[figure]{position=b}}
+% \end{macrocode}
+% \begin{macrocode}
+ \if@figurecaptionabove
+ \@figurecaptionabovetrue
+ \else
+ \@figurecaptionabovefalse
+ \fi
+% \end{macrocode}
+% \begin{macrocode}
+ }{}%
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+%
+% \begin{macro}{\onelinecaptionstrue}
+% \begin{macro}{\onelinecaptionsfalse}
+% \changes{v3.1g}{2008/03/01}{\cs{def} changed to \cs{g@addto@macro}}
+% \begin{macrocode}
+ \g@addto@macro\onelinecaptionstrue{\let\caption@ifslc\@firstoftwo}
+ \g@addto@macro\onelinecaptionsfalse{\let\caption@ifslc\@secondoftwo}
+% \end{macrocode}
+% \begin{macrocode}
+ \ifonelinecaptions
+ \onelinecaptionstrue
+ \else
+ \onelinecaptionsfalse
+ \fi
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+%
+% \begin{macro}{\@captionabovetrue}
+% \begin{macro}{\@captionabovefalse}
+% \changes{v3.0j}{2006/03/21}{Bugfix 06-03-21:
+% \cs{let}\cs{caption@setposition}\cs{@gobble} added}
+% \changes{v3.0n}{2006/03/09}{Accidentally this got broken in \version{3.0m}, fixed}
+% \changes{v3.1}{2007/03/31}{We redefine \cs{captionabovetrue/false} now
+% instead of \cs{captionabove/below}}
+% \changes{v3.1g}{2008/03/01}{\cs{def} changed to \cs{g@addto@macro}}
+% \changes{v3.1k}{2009/10/09}{\opt{figureposition} and \opt{tableposition} will issue a warning now}
+% \changes{v3.4}{2019/09/11}{\opt{figureposition} and \opt{tableposition} will now set the position anyway since it could be used by other packages}
+% Please note that these are stronger than the \opt{position} setting, therefore we
+% override the options \opt{figureposition} and \opt{tableposition} to typeout a warning.
+% \begin{macrocode}
+ \g@addto@macro\@captionabovetrue{\let\caption@position\@firstoftwo}
+ \g@addto@macro\@captionabovefalse{\let\caption@position\@secondoftwo}
+% \end{macrocode}
+% \begin{macrocode}
+ \DeclareCaptionOption{figureposition}{%
+ \caption@WarningNoLine{Option `figureposition=#1' has no effect\MessageBreak
+ when used with a KOMA script document class}%
+ \captionsetup*[figure]{position=#1}}
+ \DeclareCaptionOption{tableposition}{%
+ \caption@WarningNoLine{Option `tableposition=#1' has no effect\MessageBreak
+ when used with a KOMA script document class}%
+ \captionsetup*[table]{position=#1}}
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+%
+% \begin{macro}{\setcapindent}
+% \begin{macrocode}
+ \let\caption@KOMA@setcapindent\@setcapindent
+ \renewcommand*\@setcapindent[1]{%
+ \caption@KOMA@setcapindent{#1}\caption@setcapindent}
+% \end{macrocode}
+% \begin{macrocode}
+ \let\caption@KOMA@@setcapindent\@@setcapindent
+ \renewcommand*\@@setcapindent[1]{%
+ \caption@KOMA@@setcapindent{#1}\caption@setcapindent}
+% \end{macrocode}
+% \begin{macrocode}
+ \newcommand*\caption@setcapindent{%
+ \captionsetup{indent=\ifdim\cap@indent<\z@\z@\else\cap@indent\fi}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+ \caption@ifdefined\cap@indent{\caption@setcapindent}{}
+% \end{macrocode}
+%
+% \begin{macro}{\setcapwidth}
+% \changes{v3.3}{2018/12/26}{Bugfix: Missing curly braces added}
+% \Note{The optional argument of \cs{setcapwidth} if not supported (yet),
+% so we issue a warning if used.
+% (Since this does not seem to have an negative effect when used
+% by the \texttt{captionbeside} environment, we suppress the warning here.)}
+% \begin{macrocode}
+ \expandafter\let\expandafter\caption@KOMA@setcapwidth
+ \csname\string\setcapwidth\endcsname
+ \@namedef{\string\setcapwidth}[#1]#2{%
+ \caption@KOMA@setcapwidth[{#1}]{#2}\caption@setcapwidth{#1}}
+% \end{macrocode}
+% \begin{macrocode}
+ \newcommand*\caption@setcapwidth[1]{%
+ \ifx\\#1\\\else
+ \caption@ifdefined\cap@margin{%
+ \def\@tempa{captionbeside}%
+ \ifx\@tempa\@currenvir\else\caption@Warning{%
+ Ignoring optional argument [#1] of \string\setcapwidth\MessageBreak}%
+ \fi}{}%
+ \fi
+ \captionsetup{width=\cap@width}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+ \def\caption@tempa{\hsize}%
+ \ifx\caption@tempa\cap@width \else
+ \caption@setcapwidth{?}
+ \fi
+% \end{macrocode}
+%
+% \begin{macro}{\setcapmargin}
+% \begin{macrocode}
+ \expandafter\let\expandafter\caption@KOMA@setcapmargin
+ \csname\string\@setcapmargin\endcsname
+ \@namedef{\string\@setcapmargin}[#1]#2{%
+ \caption@KOMA@setcapmargin[{#1}]{#2}\caption@setcapmargin}
+% \end{macrocode}
+% \begin{macrocode}
+ \expandafter\let\expandafter\caption@KOMA@@setcapmargin
+ \csname\string\@@setcapmargin\endcsname
+ \@namedef{\string\@@setcapmargin}[#1]#2{%
+ \caption@KOMA@@setcapmargin[{#1}]{#2}\caption@setcapmargin}
+% \end{macrocode}
+% \begin{macrocode}
+ \newcommand*\caption@setcapmargin{%
+ \begingroup
+ \let\onelinecaptionsfalse\relax
+ \def\@twoside{0}%
+ \def\if@twoside{\def\@twoside{1}\iffalse}%
+ \cap@margin
+ \def\@tempa{\endgroup}%
+ \ifx\cap@left\hfill\else\ifx\cap@right\hfill\else
+ \def\hspace##1##{\@firstofone}%
+ \edef\@tempa{\endgroup
+ \noexpand\captionsetup{%
+ twoside=\@twoside,slc=0,%
+ margin={\cap@left,\cap@right}}}%
+ \fi\fi
+ \@tempa}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+ \ifx\cap@margin\relax \else
+ \caption@setcapmargin
+ \fi
+% \end{macrocode}
+%
+% \begin{macrocode}
+}{}
+% \end{macrocode}
+%
+% \section{Processing of options}
+%
+% \changes{v3.0m}{2007/03/04}{Verbose option added}
+% \changes{v3.1}{2007/07/02}{Verbose option removed from package}
+%
+% \changes{v3.1}{2007/03/17}{We do not process global options anymore}
+% \begin{macrocode}
+\caption@SetupOptions{caption}{\caption@setkeys{#1}{#2}}
+\caption@ProcessOptions*{caption}
+% \end{macrocode}
+%
+% \section{\cs{caption}, \cs{@caption}, and \cs{@makecaption}}
+%
+% \begin{macro}{\caption@ifflag}
+% \changes{v3.3}{2011/12/28}{This switch added}
+% \changes{v3.3}{2018/08/08}{Rewritten (and renamed) so a counter is used instead of a switch}
+% Since we support continued floats and sub-figures it's not an easy task
+% to manage the figure (and table) counter. (Especially since previous versions
+% of the caption package has proven that correcting a counter locally is not a good idea.)
+%
+% These three switches hold the
+% current status: |\caption@if|\-|flag{2}| is set if the caption was already
+% typeset (so the counter doesn't need to be incremented for sub-figures),
+% |\caption@if|\-|flag{4}| is set if there is already content which have
+% incremented the counter (so the counter doesn't need to be incremented
+% for the main caption, further sub-figures, and other stuff), and
+% |\caption@if|\-|flag{1}| is set if |\continued|\-|float| was given.
+%
+% In the past three boolean switches were used to store the flags, but since some
+% packages (like the \package{floatrow} and \package{tabu} package) try hard to keep
+% counter changes locally under certain circumstances, it seems a good idea to make
+% these flags a counter value, too.
+% \begin{macrocode}
+\newcounter{caption@flags}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@ifflag[1]{%
+ \@tempcnta\c@caption@flags
+ \divide\@tempcnta #1\relax
+ \ifodd\@tempcnta
+ \expandafter\@firstoftwo
+ \else
+ \expandafter\@secondoftwo
+ \fi}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@clrflags}
+% \changes{v3.3}{2018/08/08}{This macro added}
+% \begin{macro}{\caption@clrflag}
+% \changes{v3.3}{2013/04/14}{This macro added}
+% \changes{v3.3}{2018/08/08}{Rewritten so a counter is used instead of a switch}
+% \begin{macro}{\caption@setflag}
+% \changes{v3.3}{2013/04/14}{This macro added}
+% \changes{v3.3}{2018/08/08}{Rewritten so a counter is used instead of a switch}
+% Furthermore we introduce the macros \cs{caption@clrflag} and \cs{caption@setflag}
+% for clearing resp.~setting these flags.
+% \begin{macrocode}
+\newcommand*\caption@clrflags{%
+ \setcounter{caption@flags}\z@}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@clrflag[1]{%
+ \caption@ifflag{#1}{\caption@addtoflags{-#1}}{}}
+\newcommand*\caption@setflag[1]{%
+ \caption@ifflag{#1}{}{\caption@addtoflags{#1}}}
+\newcommand*\caption@addtoflags{%
+ \addtocounter{caption@flags}}
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+% \end{macro}
+%
+% \begin{macro}{\caption@caption}
+% \changes{v3.0f}{2005/05/22}{Bugfix: \cs{ContinuedFloat} added}
+% \changes{v3.0f}{2005/06/13}{Support of \cs{caption*[]} removed}
+% \changes{v3.0l}{2007/01/19}{Minimal support of \textsf{combine} package added}
+% \changes{v3.1}{2007/02/04}{Re-written, does not save\&use original definition anymore}
+% Here comes our definition of |\caption| and |\caption*|.
+% Beside the support of the starred variant this code was adapted to the
+% various packages we support.
+% We are using |\caption@dblarg| instead of |\@dblarg| so |\caption{}|
+% (with an empty arg.) will produce a list-of entry, but |\caption[]{}|
+% won't.
+% \begin{macrocode}
+\def\caption@caption{%
+ \caption@iftype
+ {\caption@checkgrouplevel\@empty\caption
+ \caption@star
+ {\caption@refstepcounter\@captype}%
+ {\caption@dblarg{\@caption\@captype}}}%
+ {\caption@Error{\noexpand\caption outside float}%
+ \caption@gobble}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@star}
+% \changes{v3.1}{2007/06/24}{Renamed from \cs{caption@caption} to \cs{caption@star}}
+% \changes{v3.2c}{2011/08/21}{\cs{global} removed}
+% A helper macro which processes the optional |*| after |\caption|.
+% \begin{macrocode}
+\newcommand*\caption@star[2]{%
+ \@ifstar{\caption@startrue#2[]}{#1#2}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@@caption}
+% \changes{v3.1}{2007/02/04}{Re-written, does not save\&use original definition anymore}
+% \changes{v3.1f}{2007/11/28}{Bugfix: Handling of \texttt{@minipage} flag added}
+% \changes{v3.1f}{2007/11/28}{Support of option \opt{@minipage} added}
+% \changes{v3.1g}{2008/03/16}{Internal: Uses \cs{caption@prepareanchor} now}
+% \changes{v3.2d}{2011/10/21}{Adapted to the \textsf{memoir} document class}
+% \changes{v3.2f}{2012/01/14}{Usage of \cs{M@gettitle} moved to \cs{caption@prepareanchor}}
+% \changes{v3.3}{2013/01/06}{Adapted to the \textsf{nag} package}
+% As above, our version has been adapted to the packages we support.
+% Additionally our code is nested by |\caption@beginex| \&
+% |\caption@end| instead of |\begingroup| \& |\endgroup|.
+% Furthermore we use |\caption@boxrestore| instead of |\@parboxrestore|
+% so this code also works correctly inside list-based environments
+% like |wide| \& |addmargin|. (This, and the fact that we use
+% |\linewidth| instead of |\hsize| inside |\@makecaption|, solves
+% \href{http://www.latex-project.org/cgi-bin/ltxbugs2html?pr=latex/2472}%^^A
+% {\LaTeX\ PR \texttt{latex/2472}}.)
+% \begin{macrocode}
+\long\def\caption@@caption#1[#2]#3{%
+% \end{macrocode}
+% \begin{macrocode}
+ \ifcaption@star \else
+ \caption@prepareanchor{#1}{#2}%
+ \memcaptioninfo{#1}{\csname the#1\endcsname}{#2}{#3}%
+ \@nameuse{nag@hascaptiontrue}%
+ \fi
+% \end{macrocode}
+% \begin{macrocode}
+ \par
+ \caption@beginex{#1}{#2}{#3}%
+ \caption@setfloatcapt{%
+ \caption@boxrestore
+ \if@minipage
+ \@setminipage
+ \fi
+ \caption@normalsize
+ \ifcaption@star
+ \let\caption@makeanchor\@firstofone
+ \fi
+ \@makecaption{\csname fnum@#1\endcsname}%
+ {\ignorespaces\caption@makeanchor{#3}}\par
+ \caption@if@minipage\@minipagetrue\@minipagefalse}%
+ \caption@end}
+% \end{macrocode}
+% \textsf{memoir} document class stuff:
+% \begin{macrocode}
+\providecommand\M@gettitle[1]{}
+\providecommand\memcaptioninfo[4]{}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@prepareanchor}
+% \changes{v3.1g}{2008/03/16}{This macro added}
+% \changes{v3.2f}{2012/01/14}{Usage of \cs{M@gettitle} moved from \cs{caption@@caption}}
+% \begin{macrocode}
+\newcommand*\caption@prepareanchor[2]{%
+ \caption@makecurrent{#1}{#2}%
+ \caption@ifhypcap\caption@@start\relax
+ \M@gettitle{#2}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@makecaption}
+% \changes{v3.1i}{2008/05/06}{Usage of \cs{caption@rule} added}
+% |\@makecaption|\marg{label}\marg{text}\par
+% We do basically the same as the original code (from the standard
+% \LaTeX\ document classes), but take care of the |position=| setting
+% and use |\caption@@make| from the \package{caption} kernel to finally
+% typeset the caption.
+% \begin{macrocode}
+\long\def\caption@makecaption#1#2{%
+ \caption@make@above
+ \caption@@make{#1}{#2}%
+ \caption@make@below}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@make@above}
+% \begin{macro}{\caption@make@below}
+% \changes{v3.3a}{2019/04/02}{This macro added}
+% |\caption@make@above|\\
+% |\caption@make@below|\par
+% Typesets the stuff above resp.~below the caption, depending on |\caption@iftop|.
+% \begin{macrocode}
+\newcommand*\caption@make@above{%
+ \caption@iftop
+ \caption@belowskip
+ {\caption@rule\caption@aboveskip}}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@make@below{%
+ \caption@iftop
+ {\caption@aboveskip\caption@rule}%
+ \caption@belowskip}
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+%
+% \begin{macro}{\caption@aboveskip}
+% \begin{macro}{\caption@belowskip}
+% \changes{v3.3a}{2019/04/02}{This macro added}
+% |\caption@aboveskip|\\
+% |\caption@belowskip|\par
+% Typesets the skip above resp.~below the caption.
+% \begin{macrocode}
+\newcommand*\caption@aboveskip{%
+ \vskip\abovecaptionskip}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@belowskip{%
+ \vskip\belowcaptionskip}
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+%
+% \begin{macro}{\caption@redefine}
+% \changes{v3.1k}{2009/03/30}{This macro added, it contains the patching code now}
+% Prior to \version{3.4} we only redefined |\caption| and |\@caption| if the current definitions
+% were well known, so documents written in the old (\package{caption} package \version{1.x}) days
+% (where |\caption| \& |\@caption| were not redefined by us) still compiled fine.
+% This used to make sense when introducing \version{3.0} in the year 2003
+% but is simply overcautious and especially unwanted by the user nowadays.
+% So starting with \version{3.4} we only do not redefine |\caption| and |\@caption| if the
+% `compatibility' option is set to `v1'.
+% \begin{macrocode}
+\newcommand*\caption@redefine{}
+\g@addto@macro\caption@redefine{%
+% \end{macrocode}
+% \begin{macrocode}
+ \caption@ifcompatibility{%
+% \end{macrocode}
+% \begin{macrocode}
+ \caption@InfoNoLine{
+ \noexpand\caption will not be redefined since `compatibility' is set to v1}%
+% \end{macrocode}
+% \begin{macrocode}
+ \renewcommand*\caption@redefine{}%
+% \end{macrocode}
+%
+% |\continuedfloat| is not supported in compatibility mode.
+% \begin{macrocode}
+ \renewcommand*\caption@continuedfloat[1]{%
+ \caption@Error{Not available in compatibility mode}}%
+% \end{macrocode}
+%
+% |\caption@start| is not supported in compatibility mode.
+% \begin{macrocode}
+ \caption@AtBeginDocument*{%
+ \let\caption@start\relax
+ \caption@ifdefined\caption@ORI@capstart{%
+ \caption@Debug{%
+ Restore hypcap definition of \string\capstart\@gobble}%
+ \let\capstart\caption@ORI@capstart}{}%
+ }%
+% \end{macrocode}
+%
+% \begin{macro}{\caption@star}
+% We redefine |\caption@star| here so it does not make any harm.
+% \begin{macrocode}
+ \renewcommand*\caption@star[2]{#1#2}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+ }{%
+% \end{macrocode}
+%
+% \begin{macro}{\caption}
+% \begin{macro}{\@caption}
+% \begin{macrocode}
+ \renewcommand*\caption@redefine{%
+ \let\caption\caption@caption
+ \let\@caption\caption@@caption}%
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+%
+% \begin{macrocode}
+ }%
+% \end{macrocode}
+% \begin{macrocode}
+ \caption@redefine
+ \caption@AtBeginDocument*{%
+ \let\caption@ORI@capstart\@undefined}%
+% \end{macrocode}
+%
+% \begin{macro}{\@xfloat}
+% \changes{v3.1}{2007/05/09}{This re-definition added}
+% \changes{v3.1b}{2007/09/22}{Will now be redefined in compatibility mode, too}
+% We redefine |\@xfloat| so inside floating environments our
+% type-specific options will be used, a \package{hyperref}
+% anchor will be set etc.
+% \begin{macrocode}
+ \let\caption@ORI@xfloat\@xfloat
+ \def\@xfloat#1[#2]{%
+ \caption@ORI@xfloat{#1}[#2]%
+ \caption@settype{#1}}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+}
+% \end{macrocode}
+% \end{macro}
+%
+% Some packages (like the \package{hyperref} package for example) redefines
+% |\caption| and |\@caption|, too.
+% So we have to use |\AtBeginDocument| here, so we can make sure
+% our definition is the one which will be valid at last.
+% \begin{macrocode}
+\caption@AtBeginDocument{\caption@redefine}
+% \end{macrocode}
+%
+% \begin{macro}{\@makecaption}
+% \begin{macrocode}
+\let\@makecaption\caption@makecaption
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\phantomcaption}
+% \changes{v3.2}{2010/10/31}{Bugfix 10-09-01b: This macro added}
+% |\phantomcaption|\par
+% Use this one for figures with subcaptions but without main caption.
+% \begin{macrocode}
+\newcommand\phantomcaption{%
+ \caption@iftype
+ {\caption@refstepcounter\@captype}%
+ {\caption@Error{\noexpand\phantomcaption outside float}}}%
+% \end{macrocode}
+% \end{macro}
+%
+% \section{\cs{captionof}}
+%
+% \changes{v3.0d}{2004/08/03}{Option \opt{type=} added}
+% \changes{v3.1}{2007/06/25}{Option \opt{type*=} added}
+% \changes{v3.1f}{2007/11/16}{Option \opt{subtype} \& \opt{subtype*} added}
+% \changes{v3.2}{2010/10/24}{Bugfix 10-10-17: Option \opt{type=} uses \cs{setcaptiontype} instead of \cs{caption@settype} now}
+%
+% \begin{macrocode}
+\caption@AtBeginDocument{%
+% \end{macrocode}
+% \begin{macrocode}
+ \DeclareCaptionOption{type}{\setcaptiontype{#1}}%
+ \DeclareCaptionOption{type*}{\setcaptiontype*{#1}}%
+% \end{macrocode}
+% \begin{macrocode}
+ \DeclareCaptionOptionNoValue{subtype}{\setcaptionsubtype\relax}%
+ \DeclareCaptionOptionNoValue{subtype*}{\setcaptionsubtype*}%
+% \end{macrocode}
+% \begin{macrocode}
+}
+% \end{macrocode}
+%
+% \emph{Important Note:}
+% Like |\captionof| the option |type=| should only be used inside a
+% group, box, or environment and does not check if the argument is a valid
+% floating environment or not.
+%
+% \begin{macro}{\setcaptiontype}
+% \changes{v3.2}{2010/10/24}{This macro added}
+% \changes{v3.4e}{2020/01/02}{Check added if the subtype is defined}
+% Like |\captionsetup{type=xxx}|, but also works if \cs{captionsetup} was redefined.
+% \begin{macrocode}
+\newcommand\setcaptiontype{%
+ \caption@boxrestore@mini
+ \caption@settype}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\setcaptionsubtype}
+% \changes{v3.2a}{2011/08/15}{This macro added}
+% Same, but sets the sub-type.
+% \begin{macrocode}
+\newcommand\setcaptionsubtype{%
+ \caption@iftype
+ \caption@setsubtype
+ {\caption@Error{\noexpand\setcaptionsubtype outside float}}}%
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand\caption@setsubtype{%
+ \@ifstar
+ {\caption@@settype{sub}*{sub\@captype}}%
+ {\caption@@settype{sub}{sub\@captype}}}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@settype}
+% \changes{v3.1}{2007/05/09}{This macro added}
+% \changes{v3.1b}{2007/09/22}{Usage of \cs{caption@xlabel} added}
+% \changes{v3.1d}{2007/10/23}{Error message for \cs{caption@checkgrouplevel} revised}
+% \changes{v3.1f}{2007/11/16}{\cs{caption@setsubtype} added}
+% \changes{v3.1f}{2007/12/03}{Crappy \cs{caption@iftypewarning} replaced}
+% \changes{v3.1g}{2008/01/12}{Usage of \cs{ifcaptionsetup@star} added}
+% \changes{v3.2}{2010/10/26}{Error message moved from here to \cs{caption@refstepcounter}}
+% \changes{v3.3}{2011/12/28}{Resetting of \cs{ifcaption@caption} and \cs{ifcaption@subcaption} added}
+% \changes{v3.4e}{2020/01/02}{Checks added to prevent misuse regading subtypes}
+% |\caption@settype*|\marg{type}\par
+% sets |\@captype| and executes the options associated with it
+% (using |\caption@set|\-|options|).
+% Furthermore we check |\current|\-|group|\-|level| (if avail),
+% redefine |\@currentlabel| so a |\label| before |\caption| will result
+% in a hint instead of a wrong reference, and
+% use the macro |\caption@|(|sub|)|type|\-|hook| (which will be used by our
+% \package{float} package support).\par
+% The non-starred version sets a \package{hyperref} anchor additionally
+% (if |hypcap=|\-|true| and the \package{hypcap} package is not loaded).
+% \begin{macrocode}
+\newcommand*\caption@settype{%
+ \caption@clrflags
+ \caption@set@type}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@set@type{%
+ \caption@@settype{}}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@@settype[1]{%
+ \caption@teststar{\caption@@@settype{#1}}\@firstoftwo\@secondoftwo}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@@@settype[3]{%
+% #1 = "" or "sub"
+% #2 = \@firstoftwo in star form, \@secondoftwo otherwise
+% #3 = <type>, e.g. "figure" or "subfigure"
+ \caption@Debug{#1type=#3}%
+ \@nameuse{caption@check#1type}{#3}%
+ {\caption@checkgrouplevel{#1}{%
+ \captionsetup{#1type#2*\@empty=...}#2{ or
+ \@backslashchar#1captionof}{}}%
+% \end{macrocode}
+% \begin{macrocode}
+ \edef\caption@tempa{#3}%
+ \expandafter\ifx\csname @#1captype\endcsname\caption@tempa \else
+ \ifcaptionsetup@star\else\@nameuse{caption@#1type@warning}\fi
+ \fi
+ \expandafter\let\csname @#1captype\endcsname\caption@tempa
+% \end{macrocode}
+% \begin{macrocode}
+ \@nameuse{caption@#1typehook}%
+% \end{macrocode}
+% \begin{macrocode}
+ \caption@setoptions{#3}%
+ \ifx\caption@opt\relax
+ \@nameundef{caption@#1type@warning}%
+ \else
+ \@namedef{caption@#1type@warning}{\caption@Warning{%
+ The #1type was already set to
+ `\csname @#1captype\endcsname'\MessageBreak}}%
+ \fi
+% \end{macrocode}
+% \begin{macrocode}
+ #2{}{%
+ \let\@currentlabel\caption@undefinedlabel
+% \let\@currentHlabel\@undefined
+ \ifx\caption@x@label\@undefined
+ \let\caption@x@label\label
+ \let\label\caption@xlabel
+ \fi
+ \caption@start}}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@iftype}
+% \changes{v3.1}{2007/04/11}{This macro and its usage added}
+% Since we often need to check if |\@captype| is defined (means: we
+% are inside a floating environment) this helper macro was introduced.
+% \begin{macrocode}
+\newcommand*\caption@iftype{\caption@ifdefined\@captype}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@checktype}
+% \changes{v3.4g}{2020/01/02}{This macro and its usage added}
+% \changes{v3.4m}{2020/07/29}{Check of \cs{sf@counterlist} from \package{subfig} package added}
+% |\caption@checktype|\marg{type}\marg{code}\par
+% is used by |\caption@settype| and should either expand the code or issue an error
+% if the given type is not a proper type, i.e. it is a sub-type instead (either defined by
+% |\DeclareCaptionSubType| or |\newsubfloat|\cite{subfig}).
+% \begin{macrocode}
+\newcommand*\caption@checktype[1]{%
+ \caption@ifsubtype{#1}\@firstoftwo{\caption@ifin@list\sf@counterlist{#1}}%
+ {\caption@Error{Should not be used with subtype `#1'}%
+ \@gobble}%
+ \@firstofone}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@checksubtype}
+% \changes{v3.4g}{2020/01/02}{This macro and its usage added}
+% \changes{v3.4m}{2020/07/29}{Check of \cs{sf@counterlist} from \package{subfig} package added}
+% |\caption@checksubtype|\marg{type}\marg{code}\par
+% is used by |\caption@settype| and should either expand the code or issue an error
+% if the given type is not a proper sub-type, i.e. not defined by |\Declare|\-|Caption|\-|Sub|\-|Type|.
+% Since the |sub|\-|float|\-|row| environment offered by the \package{floatrow} package\cite{floatrow}
+% is using |\caption|\-|setup{sub|\-|type}| even if the sub-type was defined by |\new|\-|sub|\-|float|
+% offered by \package{subfig}\cite{subfig}, we take a more relaxed view of things here and allow
+% those sub-types as well (but not without warning since we do not support this).
+% \begin{macrocode}
+\newcommand*\caption@checksubtype[1]{%
+ \caption@ifsubtype{#1}%
+ \@firstofone
+ {\caption@ifin@list\sf@counterlist{#1}%
+ {\caption@Warning{%
+ \noexpand\setcaptionsubtype without \string\DeclareCaptionSubType.\MessageBreak
+ This is not designed to work; you could try replacing\MessageBreak
+ the `subfig' package with `subcaption' to resolve\MessageBreak
+ this problem which occurred}%
+ \@firstofone}%
+ {\caption@Error{Undefined subtype `#1'}%
+ \@gobble}}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@checkgrouplevel}
+% \changes{v3.1}{2007/07/15}{This macro and its usage added}
+% \changes{v3.1f}{2007/11/28}{Error changed to warning (compatibility)}
+% \changes{v3.3}{2013/04/21}{Uses \cs{caption@ifeTeX} now}
+% Checks if |\captionsetup{type=|\ldots|}| or |\caption| is done
+% inside a group or not -- in the latter case a warning message will
+% be issued. (needs \eTeX)
+% \begin{macrocode}
+\caption@ifeTeX{%
+ \newcommand*\caption@checkgrouplevel[2]{%
+ \@ifundefined{#1caption@grouplevel}{%
+ \caption@ifundefined\caption@grouplevel{\let\caption@grouplevel\z@}{}%
+ \ifnum\currentgrouplevel>\caption@grouplevel\relax
+ \expandafter\edef\csname #1caption@grouplevel\endcsname{%
+ \the\currentgrouplevel}%
+ \else
+ \caption@Warning{\string#2\MessageBreak outside box or environment}%
+ \fi
+ }{}}%
+}{%
+ \let\caption@checkgrouplevel\@gobbletwo
+}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@undefinedlabel}
+% \changes{v3.1}{2007/07/03}{This macro and its usage added}
+% \changes{v3.1b}{2007/09/22}{Contents changed to \texttt{??}}
+% \changes{v3.1i}{2008/04/13}{Contents changed to \cs{caption@xref}(\ldots)}
+% \changes{v3.1k}{2009/03/30}{Bugfix 08-12-08: \cs{caption@xref} is robust now}
+% \changes{v3.2c}{2011/09/13}{Text changed from `before' to `without proper'}
+% \changes{v3.3}{2016/02/21}{Text changed from `without proper \cs{caption}' to `without proper reference'}
+% This label will be used for |\currentlabel| inside (floating) environments
+% as default. (see above)
+% \iffalse\Note{All commands used have to be robust here.}\fi
+% \begin{macrocode}
+\newcommand*\caption@undefinedlabel{%
+ \protect\caption@xref{\caption@labelname}{\on@line}}
+% \end{macrocode}
+% \begin{macrocode}
+\DeclareRobustCommand*\caption@xref[2]{%
+ \caption@WarningNoLine{\noexpand\label without proper reference#2}%
+ \@setref\relax\@undefined{#1}}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@labelname{??}
+% \end{macrocode}
+% \end{macro}
+% \begin{macro}{\caption@xlabel}
+% \changes{v3.1b}{2007/09/22}{This macro and its usage added}
+% \changes{v3.1f}{2007/11/11}{Revised}
+% \changes{v3.1i}{2008/04/13}{Bugfix: \cs{pageref} should always work now}
+% \changes{v3.2c}{2011/08/19}{Works with optional arguments now, too}
+% The new code of |\label| inside floating environments.
+% |\label| will be redefined using |\caption@withoptargs|, so
+% |#1| are the optional arguments (if any), and
+% |#2| is the mandatory argument here.
+% \begin{macrocode}
+\newcommand*\caption@xlabel{%
+ \caption@withoptargs\caption@@xlabel}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@@xlabel[2]{%
+ \caption@@@xlabel
+ \def\caption@labelname{#2}%
+ \caption@x@label#1{#2}}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@@@xlabel{%
+ \global\let\caption@@@xlabel\@empty
+ \@bsphack
+ \protected@write\@auxout{}%
+ {\string\providecommand*\string\caption@xref[2]{%
+ \string\@setref\string\relax\string\@undefined{\string##1}}}%
+ \@esphack}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\captionof}
+% \changes{v3.1}{2007/05/09}{Uses \cs{caption@settype} instead of \cs{def}\cs{@captype}}
+% \changes{v3.1c}{2007/09/22}{Bugfix: Redefinition of \cs{caption@setfloatcapt} removed}
+% \changes{v3.1e}{2007/10/30}{Better compatibility: Will be defined with \cs{AtBeginDocument} now}
+% \changes{v3.2}{2010/10/24}{Bugfix 10-10-17: Uses \cs{setcaptiontype} instead of \cs{caption@settype} now}
+% |\captionof|\marg{type}\oarg{lst\_entry}\marg{heading}\\
+% |\captionof*|\oarg{lst\_entry}\marg{heading}\par
+% \Note{This will be defined with \cs{AtBeginDocument} so
+% \cs{usepackage}\csmarg{caption,capt-of} will still work.
+% (Compatibility to \version{1.x})}
+% \begin{macrocode}
+\caption@AtBeginDocument{%
+ \def\captionof{\caption@teststar\caption@of{\caption*}\caption}}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@of[2]{\setcaptiontype*{#2}#1}
+% \end{macrocode}
+% \end{macro}
+%
+% \section{\cs{captionlistentry}}
+%
+% \begin{macro}{\captionlistentry}
+% \changes{v3.1}{2007/07/28}{This macro added}
+% \changes{v3.1f}{2007/11/16}{Bugfix 07-11-09: `space hack' added}
+% \changes{v3.1g}{2008/01/20}{Starred variant added}
+% \changes{v3.1l}{2010/01/09}{Adapted to current version of nameref package}
+% |\captionlistentry|\oarg{float type}\marg{list entry}\\
+% |\captionlistentry*|\oarg{float type}\marg{list entry}
+% \begin{macrocode}
+\newcommand*\captionlistentry{%
+ \caption@teststar\@captionlistentry\@firstoftwo\@secondoftwo}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\@captionlistentry[1]{%
+ \@testopt{\caption@listentry{#1}}\@captype}
+% \end{macrocode}
+% \begin{macrocode}
+\def\caption@listentry#1[#2]#3{%
+ \@bsphack
+ #1{\caption@gettitle{#3}}%
+ {\caption@refstepcounter{#2}%
+ \caption@makecurrent{#2}{#3}}%
+ \caption@addcontentsline{#2}{#3}%
+ \@esphack}
+% \end{macrocode}
+% \end{macro}
+%
+% \section{\cs{captionbox}}
+%
+% \begin{macro}{\captionbox}
+% \changes{v3.2}{2010/12/17}{This macro added}
+% \changes{v3.2a}{2011/08/16}{\cs{captionsetup} replaces with \cs{captionbox@settype} and \cs{caption@setposition}}
+% \changes{v3.3}{2012/04/09}{Adapted to revised version of \cs{caption@withoptargs}}
+% \changes{v3.3}{2017/03/19}{When used with fixed witdh the content will not be hboxed anymore}
+% \changes{v3.3c}{2019/09/01}{Adapted so it could be used by \cs{subfloat} offered by \package{subcaption}}
+% \changes{v3.4l}{2020/07/29}{\cs{captionbox@hj@default} renamed to \cs{captionbox@innerpos@default}}
+% A |\parbox| with contents and caption, separated by an invisible |\hrule|.
+% \begin{macrocode}
+\newcommand*\captionbox{%
+ \caption@withoptargs{\caption@ibox\@gobble}}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand\caption@ibox[3]{%
+ \kernel@ifnextchar[%]
+ {\caption@iibox{#1}{#2}{#3}}%
+ {\caption@iibox@{#1}{#2}{#3}}}
+% \end{macrocode}
+% \begin{macrocode}
+\long\def\caption@iibox#1#2#3[#4]{%
+ \@testopt{\caption@iiibox{#1}{#2}{#3}[{#4}]}\captionbox@innerpos@default}
+% \end{macrocode}
+% \begin{macrocode}
+\long\def\caption@iibox@#1#2#3#4{%
+ \setbox\@tempboxa\hbox{#4}%
+ \caption@iiibox{#1}{#2}{#3}[\wd\@tempboxa][\captionbox@innerpos@default]{\unhbox\@tempboxa}}
+% \end{macrocode}
+% \begin{macrocode}
+\long\def\caption@iiibox#1{%
+ \caption@iiiibox{#1}\vbox\vtop}
+% \end{macrocode}
+% \begin{macrocode}
+\long\def\caption@iiiibox#1#2#3#4#5[#6][#7]#8{%
+ \begingroup
+ #1*% set \caption@position
+ \caption@iftop{%
+ \endgroup
+ \parbox[t]{#6}{%
+ #1\relax
+ \caption@setposition t%
+ #2{\caption#4{#5}}%
+ \captionbox@hrule
+ \csname caption@hj@#7\endcsname
+ #8}%
+ }{%
+ \endgroup
+ \parbox[b]{#6}{%
+ #1\relax
+ \caption@setposition b%
+ \csname caption@hj@#7\endcsname
+ #8%
+ \captionbox@hrule
+ #3{\caption#4{#5}}}%
+ }}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\captionbox@innerpos@default{c}
+\newcommand*\captionbox@hrule{\hrule\@height\z@\relax}
+% \end{macrocode}
+% \begin{macrocode}
+\providecommand*\caption@hj@c{\centering}
+\providecommand*\caption@hj@l{\raggedright}
+\providecommand*\caption@hj@r{\raggedleft}
+\providecommand*\caption@hj@s{}
+% \end{macrocode}
+% \end{macro}
+%
+% \section{\cs{continuedfloat}}
+%
+% \begin{macro}{\continuedfloat}
+% \changes{v3.0i}{2005/11/12}{Optional argument added}
+% \changes{v3.0g}{2005/06/28}{Bugfix: \cs{newcounter} replaced by \cs{newcount}}
+% \changes{v3.1}{2007/07/02}{Format of \package{hyperref} extension changed}
+% \changes{v3.1}{2007/07/07}{\cs{caption@setoptions} added}
+% \changes{v3.1g}{2008/01/29}{Starred variant added}
+% \changes{v3.2f}{2011/12/17}{Undocumented optional argument removed}
+% \changes{v3.3}{2011/12/28}{Uses \cs{ifcaption@ContinuedFloat} now}
+% \changes{v3.3}{2013/05/01}{Usage of \cs{caption@restorecounters} added}
+% \changes{v3.3}{2013/12/16}{Bugfix: Does not use \cs{caption@ContinuedFloat} anymore since this breaks \cs{ContinuedFloat} offered by the \package{subfig} package}
+% \changes{v3.4}{2015/09/16}{Renamed from \cs{ContinuedFloat} to \cs{continuedfloat}}
+% |\continuedfloat|\\
+% |\continuedfloat*|\par
+% This mainly sets the appropriate flag, increments the
+% continuation counter, and executes the given options.
+% Furthermore we set |\caption@reset|\-|continued|\-|float| to |\@gobble| so the
+% continuation counter will not be reset to zero inside |\caption@ref|\-|step|\-|counter|.\par
+% When the \package{hyperref} package is used we have the problem
+% that the usage of |\continued|\-|float| will create duplicate
+% hyper links -- |\@current|\-|Href| will be the same for the main float and
+% the continued ones. So we have to make sure unique labels and references
+% will be created each time. We do this by extending |\the|\-|H|\-|figure| and
+% |\the|\-|H|\-|table|, so for continued floats the scheme
+% \begin{quote}\meta{type}|.|\meta{type \#}|\alph{|\meta{continued \#}|}|\end{quote}
+% will be used instead of
+% \begin{quote}\meta{type}|.|\meta{type \#}\quad\quad.\end{quote}
+% \par{\small(This implementation follows an idea from Steven Douglas Cochran.)}
+% \Note{This does not help if the \package{hyperref} package option
+% \texttt{naturalnames=true} is set.}
+% \begin{macrocode}
+\def\continuedfloat{%
+ \caption@iftype
+ {\caption@continuedfloat\@captype}%
+ {\caption@Error{\noexpand\continuedfloat outside float}}}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@continuedfloat[1]{%
+ \@ifstar
+ {\caption@@refstepcounter\@captype
+ \caption@@continuedfloat{#1}}%
+ {\caption@continued@float{#1}}}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@continued@float[1]{%
+ \edef\caption@tempa{#1}%
+ \ifx\caption@tempa\caption@CFtype
+ \caption@restorecounters
+ \caption@@continuedfloat{#1}%
+ \else
+ \caption@Error{Continued `#1' after `\caption@CFtype'}%
+ \fi}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@@continuedfloat{%
+ \caption@setflag1% continued float
+ \caption@@@continuedfloat}
+\newcommand*\caption@@@continuedfloat{%
+ \stepcounter{continuedfloat}%
+ \caption@@@@continuedfloat}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@@@@continuedfloat[1]{%
+ \caption@setoptions{ContinuedFloat}% for compatibility reasons
+ \caption@setoptions{continuedfloat}%
+ \caption@setoptions{continued#1}%
+ \expandafter\l@addto@macro\csname the#1\endcsname\thecontinuedfloat
+ \@ifundefined{theH#1}{}{%
+ \expandafter\l@addto@macro\csname theH#1\endcsname{%
+ \@alph\c@continuedfloat}}%
+ \let\caption@@@@continuedfloat\@gobble}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@CFtype{??}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\thecontinuedfloat}
+% \changes{v3.4}{2015/09/16}{Renamed from \cs{theContinuedFloat} to \cs{thecontinuedfloat}}
+% This one is preset to \cs{@empty}, so usually the continuation counter is not
+% included in the caption label or references.
+% \begin{macrocode}
+\newcounter{continuedfloat}
+\let\c@ContinuedFloat\c@continuedfloat % defined for compatibility reasons
+\def\thecontinuedfloat{\theContinuedFloat}
+\let\theContinuedFloat\@empty % defined for compatibility reasons
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@reset@continuedfloat}
+% \changes{v3.2f}{2011/12/17}{Redefinition of \cs{continuedfloat} added}
+% |\caption@reset@continuedfloat|\marg{type}\par
+% If a continuation counter is defined, we reset it.
+% (This one will be called inside |\@caption|.)
+% \begin{macrocode}
+\newcommand*\caption@reset@continuedfloat[1]{%
+ \xdef\caption@CFtype{#1}%
+ \@stpelt{continuedfloat}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\ContinuedFloat}
+% For compatibility reasons we still support |\Continued|\-|Float|.
+% \begin{macrocode}
+\def\ContinuedFloat{\continuedfloat} % defined for compatibility reasons
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@ContinuedFloat}
+% \changes{v3.0f}{2005/06/11}{This macro added}
+% \changes{v3.3}{2013/12/16}{Bugfix: Revised and defined with \cs{def} instead of \cs{newcommand}}
+% |\caption@ContinuedFloat|\marg{type}\par
+% This one is used by \cs{ContinuedFloat} offered by the \package{subfig} package.
+% \begin{macrocode}
+\def\caption@ContinuedFloat{%
+ \let\caption@reset@continuedfloat\@gobble
+ \caption@@@continuedfloat}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\donemaincaptionfalse}
+% Since the \class{memoir} document class resets the sub-caption
+% counter at |\@float|, right after |\done|\-|main|\-|caption|\-|false|,
+% we save all sub-caption counters at |\done|\-|main|\-|caption|\-|false|
+% so we can restore them using |\caption@restore|\-|counters|
+% inside |\continued|\-|float|.
+% \begin{macrocode}
+\caption@ifdefined\donemaincaptionfalse{%
+ \g@addto@macro\donemaincaptionfalse\caption@savesubcounters}{}
+% \end{macrocode}
+% \end{macro}
+%
+% \section{Internal helpers}
+%
+% \begin{macro}{\caption@refstepcounter}
+% \changes{v3.1}{2007/07/28}{This macro added}
+% \changes{v3.2}{2010/10/26}{Error message moved from \cs{caption@@@settype} to here}
+% \changes{v3.2c}{2011/09/04}{Support of \cs{donemaincaptiontrue} from \textsf{memoir} document class added}
+% \changes{v3.3}{2011/12/28}{Usage of \cs{ifcaption@caption}, \cs{ifcaption@subcaption}, and \cs{ifcaption@ContinuedFloat} added}
+% Increments the float (i.e. |figure| or |table|) counter,
+% resets the continuation counter, and redefines itself to |\@gobble|.
+% \begin{macrocode}
+\newcommand*\caption@refstepcounter[1]{%
+ \@ifundefined{c@#1}%
+ {\caption@Error{No float type '#1' defined}}%
+ {\caption@ref@stepcounter{#1}%
+% \end{macrocode}
+% Set flag if this part of the figure (or table) contains a caption now.
+% (If |\caption@if|\-|top| is not set, |\caption| is at the bottom of this part,
+% therefore ending this part, so we set the flag to |false| in this case.)
+% \begin{macrocode}
+ \caption@fixposition
+ \caption@iftop\caption@setflag\caption@clrflag2% caption
+% \end{macrocode}
+% This part does not contain content (like sub-figures) yet,
+% so we set |\if|\-|caption@sub|\-|caption| to |false|.
+% \begin{macrocode}
+ \caption@clrflag4% subcaption
+% \end{macrocode}
+% Support of the \textsf{memoir} document class.
+% \begin{macrocode}
+ \@nameuse{donemaincaptiontrue}}}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@ref@stepcounter{%
+ \caption@ifflag1{% continued float
+ \let\caption@tempa\caption@@refcounter
+ \caption@clrflag1% continued float
+ }{%
+ \let\caption@tempa\caption@@refstepcounter
+ \caption@ifflag2{}{% caption
+ \caption@ifflag4{% subcaption
+% Counter was already incremented by content, so we suppress \stepcounter{#1} here
+ \let\caption@tempa\caption@@refcounter
+ }{}%
+ }%
+ }%
+ \caption@tempa}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@@refcounter[1]{%
+ \let\caption@stepcounter@ORI\stepcounter
+ \def\stepcounter##1{%
+ \edef\caption@tempa{#1}% Backport of commit 43567491e5b075d661c080bca298f5428f289758 from 2020/09/28: \def -> \edef
+ \edef\caption@tempb{##1}% Backport of commit 43567491e5b075d661c080bca298f5428f289758 from 2020/09/28: \def -> \edef
+ \ifx\caption@tempa\caption@tempb \else
+ \caption@stepcounter@ORI{##1}%
+ \fi}%
+ \caption@@@refstepcounter{#1}%
+ \let\stepcounter\caption@stepcounter@ORI}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@@refstepcounter[1]{%
+ \caption@prepare@stepcounter{#1}{ref}%
+ \caption@@@refstepcounter{#1}}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@@stepcounter[1]{%
+ \caption@prepare@stepcounter{#1}{}%
+ \caption@@@stepcounter{#1}}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@prepare@stepcounter[2]{%
+ \caption@addsubcontentslines{#2stepcounter}%
+ \caption@reset@continuedfloat{#1}}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@@@refstepcounter{\refstepcounter}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@@@stepcounter{\stepcounter}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@dblarg}
+% \changes{v3.1}{2007/02/05}{This macro added}
+% \changes{v3.1f}{2007/12/06}{Bugfix 07-12-06: Changed so it works without \cs{kernel@ifnextchar}
+% (which was introduced in \LaTeXe\ 2004/01/23), too}
+% \changes{v3.3}{2012/03/25}{Support of option \opt{list-entry} added}
+% A |\relax| was added compared to |\@dblarg| so |\caption{}| will be
+% expanded to |\caption[\relax]{}| (and not to |\caption[]{}|).
+% Furthermore support for option \opt{list-entry} was added.
+% \begin{macrocode}
+\@ifundefined{kernel@ifnextchar}{\let\kernel@ifnextchar\@ifnextchar}{}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand\caption@dblarg[1]{%
+ \kernel@ifnextchar[{\caption@ydblarg{#1}}{\caption@xdblarg{#1}}}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand\caption@xdblarg[2]{%
+ #1[{#2\relax}]{#2}}
+% \end{macrocode}
+% \begin{macrocode}
+\long\def\caption@ydblarg#1[#2]#3{%
+ \caption@iflistheading{#1[{#3}]{#3}}{#1[{#2}]{#3}}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@begin}
+% \changes{v3.0a}{2004/01/23}{\cs{caption@settype} changed to \cs{caption@setfloattype}}
+% \changes{v3.0e}{2005/04/12}{Check for default label format added}
+% \changes{v3.0f}{2005/06/11}{Usage of \cs{caption@resetContinuedFloat} added}
+% \changes{v3.1}{2007/05/09}{Usage of \cs{caption@setfloattype} \& \cs{caption@resetContinuedFloat} removed}
+% \changes{v3.3}{2011/12/29}{Usage of \cs{caption@fixedposition} removed}
+% Our handling of |\caption| will always be surrounded by
+% |\caption@begin| (or |\caption@beginex|) and |\caption@end|.\par
+% |\caption@begin|\marg{type} performs these tasks:
+% \begin{enumerate}
+% \item[1.] Override the |position=| setting, if necessary.
+% (for example if set to |auto| or used inside a |supertabular|)
+% \item[2.] Start a new group.
+% \item[3.] Define |\fnum@|\meta{type} if the caption label format is set
+% to non-default.
+% \end{enumerate}
+% \begin{macrocode}
+\newcommand*\caption@begin[1]{%
+ \caption@fixposition
+ \begingroup
+ \caption@setfnum{#1}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@beginex}
+% \changes{v3.0b}{2004/05/16}{Support of \opt{listof=} added}
+% \changes{v3.0l}{2007/02/04}{Takes now 3 args instead of 2, check for empty heading added}
+% \changes{v3.1}{2007/07/01}{Makes lst-entry now instead of redefining \cs{addcontentsline}}
+% \changes{v3.2}{2010/10/26}{Bugfix 09-05-15: Setting of \cs{lst@@caption} added}
+% |\caption@beginex|\marg{type}\marg{list entry}\marg{heading}\par
+% performs the same tasks as |\caption@begin| and additionally:
+% \begin{enumerate}
+% \item[4.] Set |\lst@@caption|, so |\fnum@lstlisting| will include a numbering.
+% \item[5.] Make an entry in the list-of-whatever.
+% \item[6.] Set |\caption@ifempty| according argument \meta{heading}.
+% \end{enumerate}
+% \begin{macrocode}
+\newcommand\caption@beginex[3]{%
+ \caption@begin{#1}%
+ \let\lst@@caption\relax
+ \caption@addcontentsline{#1}{#2}%
+ \caption@ifempty{#3}{}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@end}
+% \changes{v3.3}{2011/12/29}{Usage of \cs{caption@fixedposition} removed}
+% |\caption@end| closes the group.
+% \begin{macrocode}
+\newcommand*\caption@end{%
+ \endgroup}
+% \end{macrocode}
+% \end{macro}
+%
+% \changes{v3.0a}{2004/01/23}{%
+% Internal hooks \cs{caption@@begin} \& \cs{caption@@end} added}
+% \changes{v3.0h}{2005/10/06}{%
+% Internal hooks \cs{caption@@begin} \& \cs{caption@@end} removed}
+%
+% \begin{macro}{\caption@setfnum}
+% \changes{v3.1}{2007/03/10}{This macro added}
+% |\caption@setfnum|\marg{type}\\
+% redefines |\fnum@|\meta{type} according the caption label format
+% set with |labelformat=|. But if |labelformat=default| is set,
+% |\fnum@|\meta{type} will not be overwritten by us.
+% \begin{macrocode}
+\newcommand*\caption@setfnum[1]{%
+ \@ifundefined{fnum@#1}{\iftrue}{\ifx\caption@lfmt\caption@lfmt@default\else}%
+ \@namedef{fnum@#1}{\caption@fnum{#1}}%
+ \fi}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@boxrestore}
+% \changes{v3.1}{2007/03/03}{This macro and its usage added}
+% \changes{v3.1b}{2007/09/17}{Bugfix: Redefinition of CR added}
+% \changes{v3.2}{2010/11/07}{Support of option \opt{parboxrestore} added}
+% The original code (from |latex/base/ltboxes.dtx|):
+% \begin{verbatim}
+% \def\@parboxrestore{\@arrayparboxrestore\let\\\@normalcr}
+% \def\@arrayparboxrestore{%
+% \let\if@nobreak\iffalse
+% \let\if@noskipsec\iffalse
+% \let\par\@@par
+% \let\-\@dischyph
+% \let\'\@acci\let\`\@accii\let\=\@acciii
+% \parindent\z@ \parskip\z@skip
+% \everypar{}%
+% \linewidth\hsize
+% \@totalleftmargin\z@
+% \leftskip\z@skip \rightskip\z@skip \@rightskip\z@skip
+% \parfillskip\@flushglue \lineskip\normallineskip
+% \baselineskip\normalbaselineskip
+% \sloppy}
+% \end{verbatim}%^^A
+% This one will be used by |\@caption| instead of |\@parboxrestore|.
+% \begin{macrocode}
+\newcommand*\caption@boxrestore{%
+ \caption@parboxrestore{\@parboxrestore}{%
+ \let\if@nobreak\iffalse
+ \let\if@noskipsec\iffalse
+ \let\par\@@par
+% \let\-\@dischyph
+% \let\'\@acci\let\`\@accii\let\=\@acciii
+ \parindent\z@ \parskip\z@skip
+ \everypar{}%
+% \linewidth\hsize
+% \@totalleftmargin\z@
+ \leftskip\z@skip \rightskip\z@skip \@rightskip\z@skip
+ \parfillskip\@flushglue \lineskip\normallineskip
+ \baselineskip\normalbaselineskip
+ \sloppy
+ \let\\\@normalcr
+ }}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@boxrestore@mini}
+% \changes{v3.2}{2010/10/24}{This macro added}
+% Resets \cs{par} so the very first \cs{par} in \cs{@caption} behaves quite the same as in floating environments.
+% Will be used by \cs{setcaptiontype}.
+% \begin{macrocode}
+\newcommand\caption@boxrestore@mini{%
+ \let\par\@@par
+ \parindent\z@ \parskip\z@skip
+ \sloppy}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@normalsize}
+% \changes{v3.1}{2007/05/05}{This macro and its usage added}
+% This one will be used by |\@caption| instead of |\normalsize|.\par
+% Its code is equivalent to
+% \begin{quote}
+% |\caption@font{normal}%|
+% \end{quote}
+% but executes faster (since the starred form of |\caption@font|
+% does not use |\setkeys| internally).
+% \begin{macrocode}
+\newcommand*\caption@normalsize{%
+ \caption@font*{\KV@caption@fnt@normal\@unused}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@setfloatcapt}
+% Needed for support of the \package{float} package, where the caption will
+% not be typeset directly, but catched in a |\vbox| called |\@floatcapt|
+% instead.
+% \begin{macrocode}
+\let\caption@setfloatcapt\@firstofone
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@makecurrent}
+% This one is needed for support of the \package{nameref} and \package{hyperref} package.
+% \changes{v3.2f}{2012/01/14}{Bugfix: Usage of \cs{caption@gettitle} added}
+% \begin{macrocode}
+\newcommand*\caption@makecurrent[1]{\caption@gettitle}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@makeanchor}
+% \begin{macro}{\caption@start}
+% \begin{macro}{\caption@@start}
+% \begin{macro}{\caption@freezeHref}
+% \begin{macro}{\caption@defrostHref}
+% All these are needed for support of the \package{hyperref} package.
+% \begin{macrocode}
+\let\caption@makeanchor\@firstofone
+\let\caption@start\relax
+\let\caption@@start\relax
+\let\caption@freezeHref\relax
+\let\caption@defrostHref\relax
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+% \end{macro}
+% \end{macro}
+% \end{macro}
+%
+% \begin{macro}{\caption@gettitle}
+% \changes{v3.1}{2007/05/05}{This macro and its usage added}
+% This one is needed for support of the \package{nameref} package.
+% \begin{macrocode}
+\newcommand\caption@gettitle[1]{%
+ \caption@ifdefined\NR@gettitle
+ {\NR@gettitle{#1}}%
+ {\def\@currentlabelname{#1}}}
+% \end{macrocode}
+% \end{macro}
+%
+% \section{Support for sub-captions}
+% \changes{v3.1f}{2007/11/16}{Support for sub-captions added}
+%
+% \begin{macro}{\caption@subtypehook}
+% \changes{v3.1g}{2008/03/20}{Redefinition of \cs{caption@setlist} added}
+% \changes{v3.1k}{2009/10/09}{Bugfix 09-08-12b: \cs{@makecaption} will now be restored here, too}
+% \changes{v3.2}{2011/06/26}{Uses \cs{caption@@addcontentsline} instead of \cs{addcontentsline} now}
+% \changes{v3.2a}{2011/08/17}{Redefinition of \cs{phantomcaption} added}
+% \changes{v3.2a}{2011/08/17}{Usage of \cs{caption@warmup} added}
+% \changes{v3.2c}{2011/09/30}{Bugfix 11-09-26: Usage of \cs{if@subfloatrow} added}
+% \changes{v3.3}{2011/12/28}{Bugfix 11-12-16: \cs{caption@l@stepcounter} replaced by \cs{stepcounter}}
+% \changes{v3.3}{2012/03/15}{Usage of \cs{caption@setbox} added}
+% \changes{v3.3}{2013/05/01}{Redefinition of \cs{caption@settype} added}
+% \changes{v3.3}{2013/06/17}{Missing redefinition of \cs{captionlistentry} added}
+% \changes{v3.3}{2018/09/06}{Adapted to the \package{chkfloat} package}
+% \changes{v3.4f}{2020/01/03}{Redefinition of \cs{@caption} added since it was redefined by the \env{threeparttable} environment}
+% Hook, will be used inside \cs{caption@setsubtype}.\par
+% (Note: If we are inside an |sub|\-|float|\-|row| environment we have to keep
+% the |\@make|\-|caption| code of the \package{floatrow} package intact.)
+% \begin{macrocode}
+\newcommand*\caption@subtypehook{%
+ \ifx\caption\caption@subcaption \else
+ \caption@warmup
+% \end{macrocode}
+% \begin{macrocode}
+ \caption@ifflag2{}{% caption
+% no \caption in this part of the (floating) environment yet
+ \let\caption@add@contentsline\caption@addsubcontentsline
+ \let\caption@addsubcontentslines\@gobble
+ \caption@ifflag4{}{% subcaption
+% no \subcaption in this part of the (floating) environment yet
+ \caption@ifflag1{% continued float
+ \caption@clrflag1%
+ }{%
+ \caption@@stepcounter\@captype
+ }%
+ \caption@setflag4% subcaption
+ }%
+ }%
+% \end{macrocode}
+% \begin{macrocode}
+ \c@continuedfloat=0\relax
+ \let\caption@setfloatcapt\@firstofone
+ \let\caption@chkfloat\@gobbletwo
+% \end{macrocode}
+% \begin{macrocode}
+ \caption@setbox{none}%
+ \caption@clearmargin
+ \caption@iflist{}{\let\caption@setlist\@gobble}%
+ \caption@setoptions{sub}%
+ \caption@setoptions{subfloat}% for subfig-package compatibility
+% \end{macrocode}
+% \begin{macrocode}
+% redefine \setcaptiontype
+ \def\caption@settype{\caption@withoptargs\caption@sub@settype}%
+ \def\caption@sub@settype##1##2{%
+ \edef\caption@tempa{##2}%
+ \ifx\caption@tempa\@captype
+%%% \caption@setsubtype##1\relax
+ \else
+ \caption@Error{##2 inside \@subcaptype}%
+ \fi}%
+% \end{macrocode}
+% \begin{macrocode}
+% redefine \caption
+ \let\caption\caption@subcaption
+ \let\@caption\caption@@caption
+ \let\phantomcaption\caption@subphantom
+ \let\captionlistentry\caption@sublistentry
+% \let\@captype\@subcaptype
+ \let\caption@refstepcounter\caption@@@refstepcounter
+% \end{macrocode}
+% \begin{macrocode}
+% restore \@makecaption
+ \if@subfloatrow
+ \caption@Debug{Keeping \string\@makecaption}%
+ \else
+ \let\@makecaption\caption@makecaption
+ \fi
+ \fi}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\if@subfloatrow}
+% \changes{v3.2c}{2011/09/30}{This macro added}
+% This macro tests if we are inside an |sub|\-|float|\-|row| or |sub|\-|float|\-|row*| environment.
+% \begin{macrocode}
+\caption@AtBeginDocument{%
+ \caption@ifundefined\@subfloatrowtrue
+ {\newif\if@subfloatrow
+ \caption@ifundefined\subfloatrow{}%
+ {\caption@Debug{Patching subfloatrow environment}%
+ \g@addto@macro\capsubrowsettings{\@subfloatrowtrue}%
+ \g@addto@macro\killfloatstyle{%
+ \ifx\c@FRobj\c@FRsobj\@subfloatrowtrue\fi}}}%
+ {\caption@Debug{\string\if@subfloatrow is already defined}}}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@subcaption}
+% Makes a sub-caption.
+% \begin{macrocode}
+\newcommand*\caption@subcaption{%
+ \caption@checkgrouplevel{sub}\subcaption
+ \caption@star
+ {\caption@refstepcounter\@subcaptype}%
+ {\caption@dblarg{\@caption\@subcaptype}}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@subphantom}
+% \changes{v3.2a}{2011/08/17}{This macro added}
+% Same as |\phantomcaption|, but for sub-captions.
+% \begin{macrocode}
+\newcommand*\caption@subphantom{%
+ \caption@checkgrouplevel{sub}\phantomsubcaption
+ \caption@refstepcounter\@subcaptype}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@sublistentry}
+% \changes{v3.3}{2013/06/17}{This macro added}
+% Same as |\captionlistentry|, but for sub-captions.
+% \begin{macrocode}
+\newcommand*\caption@sublistentry{%
+ \caption@teststar\@subcaptionlistentry\@firstoftwo\@secondoftwo}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\@subcaptionlistentry[1]{%
+ \@testopt{\caption@listentry{#1}}\@subcaptype}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{caption@clearsubcontentslines}
+% Clear pending sub-caption list entries.
+% \begin{macrocode}
+\newcommand*\caption@clearsubcontentslines{%
+ \global\let\caption@subcontentslines\@empty}
+% \end{macrocode}
+% \begin{macrocode}
+\caption@clearsubcontentslines
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@addsubcontentsline}
+% \changes{v3.1i}{2008/08/02}{Bugfix 08-07-28:
+% \cs{label}, \cs{index}, and \cs{glossary} are allowed inside the list entry now}
+% \changes{v3.2}{2011/06/26}{Uses \cs{caption@@addcontentsline} instead of \cs{addcontentsline} now}
+% \changes{v3.2c}{2011/08/19}{Uses \cs{caption@gobble} instead of \cs{@gobble} now}
+% \changes{v3.3}{2012/01/15}{Debug message added}
+% \changes{v3.3}{2013/03/10}{A single \cs{protect} replaced by \cs{noexpand}}
+% Add a pending sub-caption list entry.
+% \begin{macrocode}
+\newcommand*\caption@addsubcontentsline[4]{%
+ \caption@Debug{\string\caption@addsubcontentsline{#1}{#2}}%
+ \begingroup
+ \let\label\caption@gobble
+ \let\index\caption@gobble
+ \let\glossary\caption@gobble
+ \protected@edef\@tempa{\endgroup
+ \noexpand\g@addto@macro\noexpand\caption@subcontentslines{%
+ \noexpand\@namedef{the#2}{\csname the#2\endcsname}%
+ \ifx\@currentHref\@undefined \else
+ \noexpand\def\noexpand\@currentHref{\@currentHref}%
+ \fi
+ \noexpand\caption@@@addcontentsline{#1}{#2}{#3}{#4}}}%
+ \@tempa}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\flushsubcaptionlistentries}
+% \changes{v3.3}{2012/01/15}{Renamed from \cs{caption@addsubcontentslines} to \cs{flushsubcaptionlistentries}}
+% \changes{v3.3}{2013/03/10}{Bugfix: Missing redefinition of \cs{caption@addsubcontentslines} added}
+% Writes pending sub-caption list entries.
+% \begin{macrocode}
+\newcommand*\flushsubcaptionlistentries{%
+ \caption@addsubcontentslines{user}}
+% \end{macrocode}
+% \begin{macrocode}
+\renewcommand*\caption@addsubcontentslines[1]{%
+ \caption@Debug{\string\flushsubcaptionlistentries (#1)}%
+ \begingroup
+ \caption@subcontentslines
+ \endgroup
+ \caption@clearsubcontentslines}
+% \end{macrocode}
+% We need to patch \cs{chapter} otherwise a vertical gap will be inserted into
+% the list prior pending sub-caption list entries.
+% We do this |\At|\-|Begin|\-|Document| so packages like \package{newfloat}
+% will not complain about an unknown document class.
+% \begin{macrocode}
+\AtBeginDocument{%
+% \end{macrocode}
+% \begin{macrocode}
+ \caption@ifdefined\chapter{%
+ \let\caption@chapter@ORI\chapter
+ \def\chapter{%
+ \caption@addsubcontentslines{chapter}\caption@chapter@ORI}}{}%
+% \end{macrocode}
+% Same for \cs{appendix}.
+% \begin{macrocode}
+ \caption@ifdefined\appendix{%
+ \let\caption@appendix@ORI\appendix
+ \def\appendix{%
+ \caption@addsubcontentslines{appendix}\caption@appendix@ORI}}{}%
+% \end{macrocode}
+% Flush the list of pending sub-caption list entries at the end of the document.
+% \begin{macrocode}
+ \caption@addsubcontentslines{AtEndDocument}%
+% \end{macrocode}
+% \begin{macrocode}
+}
+% \end{macrocode}
+% \end{macro}
+%
+%
+% \section{Document class \& Babel package support}
+%
+% \subsection{The \AmS{} \& \SmF{} classes}
+% \changes{v3.1}{2007/07/29}{\AmS\ \& \SmF\ classes support added}
+%
+% \begin{macrocode}
+\caption@ifdefined\smf@makecaption{\let\smf@makecaption\@makecaption}{}
+% \end{macrocode}
+%
+% \subsection{The beamer class}
+% \changes{v3.1}{2007/03/10}{beamer class support added}
+%
+% \begin{macrocode}
+\@ifclassloaded{beamer}{%
+ \caption@InfoNoLine{beamer document class}%
+% \end{macrocode}
+%
+% \begin{macro}{\figure}
+% \changes{v3.1f}{2007/12/17}{This re-definition for \class{beamer} document class added}
+% \changes{v3.3d}{2019/09/01}{This re-definition for \class{beamer} document class revised}
+% We redefine |figure| so our type-specific options will be used etc.
+% \begin{macrocode}
+ \let\caption@ORI@figure\figure
+ \def\figure{\caption@settype{figure}\caption@ORI@figure}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\table}
+% \changes{v3.1f}{2007/12/17}{This re-definition for \class{beamer} document class added}
+% \changes{v3.3d}{2019/09/01}{This re-definition for \class{beamer} document class revised}
+% \changes{v3.4a}{2019/10/18}{Bug fixed which was introduced in previous revision}
+% We redefine |table| so our type-specific options will be used etc.
+% \begin{macrocode}
+ \let\caption@ORI@table\table
+ \def\table{\caption@settype{table}\caption@ORI@table}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+}{}
+% \end{macrocode}
+%
+% \subsection{The \KOMAScript{} classes}
+%
+% \KOMAScript\ contains the code
+% |\AtBeginDocument{\let\scr@caption\caption}|
+% so we need to update |\scr@caption| here, too.
+%
+% \begin{macrocode}
+\caption@ifdefined\scr@caption{%
+ \caption@AtBeginDocument{\let\scr@caption\caption}}{}
+% \end{macrocode}
+%
+% \subsection{The frenchb Babel option}
+% \changes{v3.1}{2006/05/14}{Adaptation to \package{frenchb} added}
+%
+% Suppress
+% ``Package |frenchb.ldf| Warning: The definition of |\@makecaption| has been
+% changed, frenchb will NOT customize it.''
+% (but only if we emulate this customization)
+% \begin{macrocode}
+\@nameuse{caption@frenchb}\@nameundef{caption@frenchb}
+% \end{macrocode}
+%
+% \subsection{The frenchle/pro package}
+% \changes{v3.0h}{2005/10/03}{Adaptation to \package{frenchle/pro} added}
+%
+% \begin{macrocode}
+\caption@AtBeginDocument{\caption@ifdefined\frenchTeXmods{%
+ \caption@InfoNoLine{frenchle/pro package is loaded}%
+% \end{macrocode}
+%
+% \begin{macrocode}
+ \let\captionfont@ORI\captionfont
+ \let\captionlabelfont@ORI\captionlabelfont
+ \let\@makecaption@ORI\@makecaption
+% \end{macrocode}
+
+% If |\GOfrench| is defined as |\relax| all the re-definitions regarding
+% captions have already been done, so we can do our patches immediately.
+% Otherwise we must add our stuff to |\GOfrench|.
+% \begin{macrocode}
+ \caption@ifdefined\GOfrench
+ {\def\caption@tempa{\g@addto@macro\GOfrench}}%
+ {\let\caption@tempa\@firstofone}%
+ \caption@tempa{%
+% \end{macrocode}
+%
+% \begin{macrocode}
+ \let\captionfont\captionfont@ORI
+ \let\captionfont@ORI\@undefined
+ \let\captionlabelfont\captionlabelfont@ORI
+ \let\captionlabelfont@ORI\@undefined
+ \let\@makecaption\@makecaption@ORI
+ \let\@makecaption@ORI\@undefined
+% \end{macrocode}
+%
+% \begin{macro}{\@cnORI}
+% We update the definition of |\@cnORI| so it actually reflects
+% our definition of |\caption|.
+% \begin{macrocode}
+ \let\@cnORI\caption
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\@tablescaption}
+% The \package{frenchle/pro} package sets |\caption| to |\@tablescaption| at
+% |\begin{table}| for special treatment of footnotes.
+% Therefore we have to patch |\@tablescaption| so |\caption*| will work
+% inside the |table| environment.
+% \begin{macrocode}
+ \let\caption@tcORI\@tablescaption
+ \def\@tablescaption{\caption@star\relax\caption@tcORI}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\f@ffrench}
+% \begin{macro}{\f@tfrench}
+% |\f@ffrench| and |\f@tfrench| reflect |\fnum@figure| and |\fnum@table|
+% when used in French mode. These contain additional code which typesets
+% the caption separator |\captionseparator| instead of the usual colon.
+% Because this breaks with our |\@makecaption| code we have to remove
+% this additional code here.
+% \begin{macrocode}
+ \let\@eatDP\@undefined
+ \let\caption@tempa\@empty
+ \ifx\f@ffrench\fnum@figure
+ \l@addto@macro\caption@tempa{\let\fnum@figure\f@ffrench}%
+ \fi
+ \ifx\f@tfrench\fnum@table
+ \l@addto@macro\caption@tempa{\let\fnum@table\f@tfrench}%
+ \fi
+ \def\f@ffrench{\ifx\listoffigures\relax\else\figurename~\thefigure\fi}%
+ \def\f@tfrench{\ifx\listoftables\relax\else\tablename~\thetable\fi}%
+ \caption@tempa
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+%
+% \begin{macrocode}
+ }%
+}{}}
+% \end{macrocode}
+%
+% \subsection{The hungarian and magyar Babel option}
+% \changes{v3.2}{2009/03/29}{\package{magyar} package support added}
+% \changes{v3.3}{2018/08/26}{\package{magyar} package support revised}
+%
+% \begin{macrocode}
+\def\caption@tempa#1{%
+ \@ifpackagewith{babel}{#1}{%
+ \caption@InfoNoLine{#1 babel option is loaded}%
+ \expandafter\addto\csname extras#1\endcsname{%
+ % reverse changes made by magyar.ldf
+ \let\@makecaption\caption@makecaption
+ \babel@save\@makecaption
+ \caption@redefine
+ \babel@save\@caption}%
+ }{}}
+% \end{macrocode}
+% \begin{macrocode}
+\caption@tempa{hungarian}%
+\caption@tempa{magyar}%
+% \end{macrocode}
+%
+% \section{Package support}
+% \changes{v3.1}{2007/04/11}{Package options `float', `longtable' etc.
+% are not supported anymore, removed}
+%
+% \begin{macro}{\caption@IfPackageLoaded}
+% \changes{v3.0f}{2005/05/29}{3rd argument \meta{code} added,
+% so no extra check is needed}
+% \changes{v3.1}{2007/07/04}{Re-written \& renamed from \cs{caption@ifpackage}
+% to \cs{caption@IfPackageLoaded}}
+% \changes{v3.3}{2018/12/26}{Bugfix: Missing curly braces added}
+% |\caption@IfPackageLoaded|\marg{package}\oarg{version}\marg{true}\marg{false}\par
+% Some kind of combination of |\@ifpackageloaded| and |\@ifpackagelater|.
+% If the \meta{package} is not loaded yet, the check will be (re-)done
+% |\AtBeginDocument|, so the \meta{package} could be loaded later on, too.
+% \begin{macrocode}
+\newcommand\caption@IfPackageLoaded[1]{%
+ \@testopt{\caption@@IfPackageLoaded{#1}}{}}
+\@onlypreamble\caption@IfPackageLoaded
+% \end{macrocode}
+% \begin{macrocode}
+\long\def\caption@@IfPackageLoaded#1[#2]#3#4{%
+ \@ifpackageloaded{#1}\@firstofone{%
+ \caption@Debug{#1 package is not loaded (yet)\@gobble}%
+ \caption@AtBeginDocument}{%
+ \caption@If@Package@Loaded{#1}[{#2}]{#3}{#4}}}
+\@onlypreamble\caption@@IfPackageLoaded
+% \end{macrocode}
+% \begin{macrocode}
+\long\def\caption@If@Package@Loaded#1[#2]{%
+ \@ifpackageloaded{#1}{%
+ \caption@InfoNoLine{#1 package is loaded}%
+ \@ifpackagelater{#1}{#2}\@firstoftwo{%
+ \caption@Error{%
+ For a successful cooperation we need at least version\MessageBreak
+ `#2' of package #1,\MessageBreak
+ but only version\MessageBreak
+ `\csname ver@#1.\@pkgextension\endcsname'\MessageBreak
+ is available}%
+ \@secondoftwo}%
+ }{\@secondoftwo}}
+\@onlypreamble\caption@If@Package@Loaded
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@clearmargin}
+% \changes{v3.1}{2007/05/05}{This macro and its usage added}
+% This macro will be used by some package support stuff where the usual
+% margin setting is not welcome, e.g. in the \package{sidecap} package.
+% \begin{macrocode}
+\newcommand*\caption@clearmargin{%
+ \setcaptionmargin\z@
+ \let\caption@minmargin\@undefined}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+\caption@setbool{needfreeze}{0}
+\caption@AtBeginDocument*{%
+ \caption@ifneedfreeze{%
+% \end{macrocode}
+%
+% \begin{macro}{\caption@freezetype}
+% \changes{v3.3}{2013/05/01}{This macro added}
+% |\caption@freezetype|\marg{type}\par
+% Used by the \package{fltpage} \& \package{sidecap} package support.
+% \begin{macrocode}
+ \newcommand*\caption@freezetype[1]{%
+ \caption@settype*{#1}%
+ \captionsetup*[sub]{hypcap=true}% Note: This is just a (q&d) workaround!
+ \caption@freeze}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@freeze}
+% \changes{v3.1}{2007/07/22}{This macro added}
+% \changes{v3.1c}{2007/10/06}{\cs{caption} \& \cs{@caption} revised for enhanced compatibility}
+% \changes{v3.1c}{2007/10/06}{Bugfix: Made \cs{@caption} long}
+% \changes{v3.1f}{2007/11/16}{Uses `space hack' instead of \cs{ignorespaces} now}
+% \changes{v3.1g}{2008/01/29}{Starred variants of \cs{ContinuedFloat} and \cs{captionsetup} added}
+% \changes{v3.2}{2010/10/26}{Bugfix 10-09-01a: Uses \cs{ignorespaces} instead of `space hack' again}
+% \changes{v3.2a}{2011/08/17}{Starred variant of \cs{caption@freeze} removed}
+% \changes{v3.2b}{2011/08/18}{Redefines \cs{caption@setup} instead of \cs{captionsetup} now}
+% \changes{v3.2b}{2011/08/18}{Redefinition of \cs{label} revised}
+% \changes{v3.2c}{2011/08/21}{Revised}
+% \changes{v3.3}{2013/01/06}{Adapted to new switch \cs{caption@caption} etc.}
+% |\caption@freeze|\par
+% Used by the \package{bicaption} package.
+% \begin{macrocode}
+ \newcommand*\caption@freeze{%
+ \let\caption@frozen@continuedfloat\continuedfloat
+ \def\continuedfloat{%
+ \caption@@freeze{\caption@@@@continuedfloat\@captype}%
+ \caption@frozen@continuedfloat}%
+% \end{macrocode}
+% \begin{macrocode}
+ \let\caption@frozen@setup\caption@setup
+ \def\caption@setup##1{%
+ \caption@@freeze{\caption@setup{##1}}%
+ \caption@frozen@setup{##1}}%
+% \end{macrocode}
+% \begin{macrocode}
+ \let\caption@frozen@caption\caption
+ \def\caption{%
+ \def\caption{%
+ \caption@Error{%
+ Only one \noexpand\caption can be placed in this environment}%
+ \caption@gobble}%
+ \@ifstar
+ {\caption@SC@caption*}%
+ {\let\@currentlabel\caption@SClabel
+ \caption@withoptargs\caption@SC@caption}}%
+ \long\def\caption@SC@caption##1##2{%
+ \caption@@freeze{\caption##1{##2}}%
+ \ignorespaces}%
+% \end{macrocode}
+% \begin{macrocode}
+ \let\caption@frozen@label\label
+ \def\label{%
+ \caption@withoptargs\caption@SC@label}%
+ \def\caption@SC@label##1##2{%
+ \ifx\@currentlabel\caption@SClabel
+ \@bsphack
+ \caption@freeze@label{##1}{##2}%
+ \@esphack
+ \else
+ \caption@frozen@label##1{##2}%
+ \fi}%
+ \def\caption@SClabel{\caption@undefinedlabel}%
+ \def\caption@freeze@label##1##2{%
+ \caption@@freeze{\label##1{##2}}}%
+% \end{macrocode}
+% \begin{macrocode}
+ \global\let\caption@frozen@content\@empty
+ \long\def\caption@@freeze{%
+ \g@addto@macro\caption@frozen@content}%
+% \end{macrocode}
+% \begin{macrocode}
+ \def\caption@warmup{%
+ \let\continuedfloat\caption@frozen@continuedfloat
+ \let\caption@setup\caption@frozen@setup
+ \let\caption\caption@frozen@caption
+ \let\label\caption@frozen@label}}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@prepare@defrost}
+% \changes{v3.3}{2013/01/06}{This macro added}
+% Prevent resetting the caption flags
+% \begin{macrocode}
+ \newcommand*\caption@prepare@defrost{%
+ \let\caption@settype\caption@set@type}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@defrost}
+% \changes{v3.1}{2007/07/22}{This macro added}
+% \changes{v3.1g}{2008/01/30}{\cs{caption@defrost@setup} added}
+% \changes{v3.2c}{2011/08/21}{Adapted to changes of \cs{caption@freeze}}
+% \changes{v3.2c}{2011/08/21}{\cs{caption@defrost@setup} removed}
+% |\caption@defrost|
+% \begin{macrocode}
+ \newcommand*\caption@defrost{%
+ \ifx\caption@frozen@caption\@undefined
+ \caption@frozen@content
+ \else
+ \caption@Error{Internal Error:\MessageBreak
+ \noexpand\caption@defrost in same group as \string\caption@freeze}%
+ \fi}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+ }{}%
+ \caption@undefbool{needfreeze}}
+% \end{macrocode}
+%
+% \begin{macro}{\caption@warmup}
+% \changes{v3.2a}{2011/08/17}{This macro added}
+% |\caption@warmup|
+% \begin{macrocode}
+\let\caption@warmup\relax
+% \end{macrocode}
+% \end{macro}
+%
+% \subsection{The changepage package}
+% \changes{v3.4k}{2020/05/30}{Patch of the \package{changepage} package added}
+%
+% \begin{macrocode}
+\caption@IfPackageLoaded{changepage}[2008/07/23 memoir-v3.7k]{%
+% \end{macrocode}
+%
+% Both environments, \env{adjustwidth} and \env{adjustwidth*}, are starting a \env{list} \cs{item}.
+% But \cs{hsize} isn't set properly inside a \env{list} item, and therefore \cs{@makecaption}
+% (offered by document classes) doesn't work properly when used inside \env{adjustwidth}.
+% Therefore we try to detect the situation ``Are we inside a adjustwidth environment?''
+% inside \cs{@makecaption} and fix this. (Sigh!)
+%
+% We cannot simply set and test a flag here since our adjustment to \cs{hsize} should
+% not be done within a \cs{parbox} within a adjustwidth environment for example,
+% and therefore we store \cs{hsize} and \cs{linewidth}, and test \cs{hsize} and \cs{linewidth}
+% against the stored values instead. If they are equal we are (hopefully) quite save
+% to assume that we are now inside a plain \env{adjustwidth} environment and therefore need
+% to fix \cs{hsize} before typesetting the caption. (Deep sigh!)
+%
+% \begin{macro}{\caption@adjustwidth@hsize}
+% \begin{macro}{\caption@adjustwidth@linewidth}
+% \begin{macrocode}
+ \newdimen\caption@adjustwidth@hsize
+ \newdimen\caption@adjustwidth@linewidth
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+%
+% \begin{macro}{\caption@set@adjustwidth}
+% \changes{v3.4k}{2020/05/30}{This macro and its usage added}
+% Store the values of \cs{hsize} and \cs{linewidth}.
+% \begin{macrocode}
+ \providecommand*\caption@set@adjustwidth{%
+ \caption@adjustwidth@hsize\hsize
+ \caption@adjustwidth@linewidth\linewidth}%
+% \end{macrocode}
+% \begin{macrocode}
+ \providecommand*\caption@patch@changepage[1]{%
+ \expandafter\let\csname caption@#1\expandafter\endcsname\csname #1\endcsname
+ \expandafter\renewcommand\csname #1\endcsname[2]{%
+ \@nameuse{caption@#1}{##1}{##2}%
+ \caption@set@adjustwidth}}%
+ \caption@patch@changepage{adjustwidth}%
+ \caption@patch@changepage{adjustwidth*}%
+ \let\caption@patch@changepage\relax
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@test@adjustwidth}
+% \changes{v3.4k}{2020/05/30}{This macro and its usage added}
+% Test if the values of \cs{hsize} and \cs{linewidth} are identical to
+% the ones stored in the \env{adjustwidth} environment.
+% If yes, set \cs{hsize} to the correct value.
+% \begin{macrocode}
+ \providecommand\caption@test@adjustwidth{%
+ \ifdim\hsize=\caption@adjustwidth@hsize
+ \ifdim\linewidth=\caption@adjustwidth@linewidth
+ \hsize=\linewidth
+ \fi
+ \fi}%
+% \end{macrocode}
+% \begin{macrocode}
+ \AtBeginCaption{\caption@test@adjustwidth}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+ }{}%
+% \end{macrocode}
+%
+% \subsection{The chkfloat package}
+% \changes{v3.3}{2018/09/06}{Support of the \package{chkfloat} package added}
+%
+% \begin{macrocode}
+\caption@IfPackageLoaded{chkfloat}[2012/08/19 v0.1]{%
+% \end{macrocode}
+%
+% \begin{macro}{\caption@chkfloat}
+% \changes{v3.3}{2018/09/06}{This macro added}
+% \begin{macrocode}
+ \caption@ifdefined\chkfloat@addcontentsline{%
+ \renewcommand\caption@chkfloat{\chkfloat@addcontentsline}%
+ }{%
+ \renewcommand\caption@chkfloat[2]{%
+ \caption@ifdefined\chkfloat@page{%
+ \addtocontents{fof}{\protect\chkfloat@{\thepage}{\chkfloat@page}{\csname fnum@#1\endcsname: #2}}%
+ }{}}%
+ }%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+ }{}%
+% \end{macrocode}
+%
+% \subsection{The float package}
+% \changes{v3.0f}{2005/05/31}{\package{float} package support rewritten and improved}
+% \iffalse
+% (This is a more straight-ahead implementation, but it only works with v1.3
+% now, so v1.2 is no longer supported. The old code including documentation
+% can be found in caption-30f-050530.zip)
+% \fi
+%
+% The \package{float} package usually do not use the \LaTeX\ kernel command
+% |\@caption| to typeset the caption but |\float@caption| instead.
+% (|\@caption| will only be used if the float is re-styled with
+% |\restylefloat*|.)
+%
+% The main two things |\float@caption| is doing different are:
+% \begin{itemize}
+% \item The caption will be typeset inside a |\savebox| called |\@floatcapt|
+% so it can be placed above or below the float contents afterwards.
+% \item |\@makecaption| will not be used to finally typeset the caption.
+% Instead |\@fs@capt| will be used which definition is part of the float
+% style.
+% (Note that |\@fs@capt| will not typeset any vertical space above or below
+% the caption; instead this space will be typeset by the float style code
+% itself.)
+% \end{itemize}
+%
+% \begin{macrocode}
+\caption@IfPackageLoaded{float}[2001/11/08 v1.3d]{%
+ \@ifpackageloaded{floatrow}{%
+ \caption@If@Package@Loaded{floatrow}[2007/08/24 v0.2a]{}{}%
+ }{%
+% \end{macrocode}
+%
+% \begin{macro}{\@float@setevery}
+% \changes{v3.1k}{2009/10/09}{Bugfix 08-12-05: \cs{color@begin/endgroup} added
+% to redefinition of \cs{caption@setfloatcapt}}
+% \changes{v3.4b}{2019/12/16}{Usage of \cs{caption@float@setname} added}
+% |\@float@setevery|\marg{float type} is provided by the \package{float}
+% package; it's called every time a floating environment defined with
+% |\newfloat| or |\restylefloat| begins.
+% We use this hook to do some adaptations and to setup the proper caption
+% style (if defined) and additional settings declared with
+% |\captionsetup|\oarg{float style}.
+% \begin{macrocode}
+ \let\caption@ORI@float@setevery\@float@setevery
+ \def\@float@setevery#1{%
+ \float@ifcaption{#1}{%
+% \end{macrocode}
+%
+% First of all we set the caption position to it's proper value by
+% converting |\@fs@iftopcapt| (which is part of a float style and
+% controls where the caption will be typeset, above or below the float
+% contents) to our |position=| setting.
+% Since the spacing above and below the caption will be done by the float
+% style and \emph{not} by us this sounds quite useless. But in fact it isn't,
+% since some packages based on \thispackage\ (like the \package{subfig}
+% package) could have an interest for this information and therefore use the
+% |\caption@iftop| macro we provide in our kernel. Furthermore we need this
+% information for ourself in |\captionof| which uses |\@makecaption| to
+% finally typeset the caption with skips.
+% \begin{macrocode}
+ \caption@setposition{\@fs@iftopcapt t\else b\fi}%
+% \end{macrocode}
+%
+% Afterward we redefine |\caption@setfloatcapt| (which will be used inside
+% |\@caption|) so the caption will be set inside the box |\@floatcapt|,
+% without extra vertical space.
+% \begin{macrocode}
+ \renewcommand\caption@setfloatcapt[1]{%
+ \let\@makecaption\caption@@make
+ \global\setbox\@floatcapt\vbox{%
+ \color@begingroup ##1\color@endgroup}}%
+% \end{macrocode}
+%
+% To allow different caption styles for different float styles we also
+% determine the current float style (e.g. `ruled') and select
+% a caption style (and additional settings) with the same name, if defined.
+% \begin{macrocode}
+ \float@getstyle\float@style{#1}%
+ \caption@setstyle*\float@style
+ \caption@setoptions\float@style
+% \end{macrocode}
+%
+% \begin{macrocode}
+ }{}%
+ \caption@float@setname{#1}%
+ \caption@freezeHref % will be defrosted in \float@makebox
+ \caption@ORI@float@setevery{#1}}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\float@makebox}
+% \changes{v3.3}{2013/01/06}{Corrects wrong load order hyperref-float now}
+% \changes{v3.3}{2013/02/03}{Correction of wrong load order hyperref-float revised}
+% Redefine |\float@makebox| (only if we are not operating in compatibility mode).
+% \begin{macrocode}
+ \caption@AtBeginDocument{\caption@ifcompatibility{}{%
+% \end{macrocode}
+% If it was redefined by the \package{hyperref} package,
+% we need to build on the original definition (and not on the redefined one).
+% \begin{macrocode}
+ \caption@ifdefined\HyOrg@float@makebox
+ {\let\caption@ORI@float@makebox\HyOrg@float@makebox}%
+ {\let\caption@ORI@float@makebox\float@makebox}%
+ \renewcommand\float@makebox[1]{%
+ \caption@ORI@float@makebox{#1\relax \caption@defrostHref}}%
+% \end{macrocode}
+% \begin{macrocode}
+ }}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@float@setname}
+% \changes{v3.1}{2007/07/08}{float package hook added}
+% \changes{v3.4b}{2019/12/16}{Renamed from \cs{caption@typehook} to \cs{caption@float@setname}}
+% \LaTeX\ and almost every other packages use
+% |\|\meta{type}|name|
+% to provide a macro for the type resp.~environment name -- for example
+% the command |\figurename| will usually contain the name of the floating
+% environment |figure|:
+% \begin{quote}
+% |\newcommand\figurename{Figure}|
+% \end{quote}
+% But the \package{float} package doesn't follow this common naming
+% convention:
+% For floats defined with |\newfloat| it uses |\fname@|\meta{type} instead,
+% which breaks with our code (and with |\autoref| and some other things as
+% well).
+% So we have to map the \package{float} package name to the common one here.\par
+% \Note{If the float was not defined with \cs{newfloat} but with
+% \cs{restylefloat} instead, \cs{fname@}\meta{type} is not defined.}
+% \begin{macrocode}
+ \newcommand*\caption@float@setname[1]{%
+ \expandafter\ifx\csname #1name\endcsname\relax
+ \expandafter\let\csname #1name\expandafter\endcsname
+ \csname fname@#1\endcsname
+ \fi}%
+% \end{macrocode}
+% \end{macro}
+%
+% \changes{v3.0f}{2005/06/26}{Skips of \env{plaintop} and \env{boxed} floats corrected}
+% \begin{macro}{\fs@plaintop}
+% \begin{macro}{\fs@boxed}
+% Since the float styles |plaintop| and |boxed| don't use |\abovecaptionskip|
+% which could be set with |skip=| (|plaintop| uses |\belowcaptionskip| instead of
+% |\abovecaptionskip|, and |boxed| uses a fixed space of |2pt|)
+% we patch the according float style macros here to change this.
+% \begin{macrocode}
+ \g@addto@macro\fs@plaintop{\def\@fs@mid{\vspace\abovecaptionskip\relax}}%
+ \g@addto@macro\fs@boxed{\def\@fs@mid{\kern\abovecaptionskip\relax}}%
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+%
+% \begin{macro}{\float@getstyle}
+% \changes{v3.1}{2007/06/10}{This macro added}
+% |\float@getstyle|\marg{cmd}\marg{type}\par
+% Determining the float style is not so easy because the only hint
+% provided by the \package{float} package is the macro
+% |\fst@|\meta{float type} which points to the macro which represents the
+% float style. So for example after
+% \begin{quote}
+% |\floatstyle{ruled}|\\
+% |\newfloat{Program}{tbp}{lop}|
+% \end{quote}
+% |\fst@Program| will be defined as
+% \begin{quote}
+% |\def\fst@Program{\fs@ruled}|\quad.
+% \end{quote}\par
+% So here is what we do: We make the first level expansion of
+% |\fst@|\meta{float type} a string so we can gobble the first four tokens
+% (= |\fs@|), so only the the name of the float style is left.\par
+% \emph{TODO:} We need to convert the catcodes here.
+% \begin{macrocode}
+ \providecommand*\float@getstyle[2]{%
+ \edef#1{%
+ \noexpand\expandafter\noexpand\@gobblefour\noexpand\string
+ \expandafter\expandafter\expandafter\noexpand
+ \csname fst@#2\endcsname}%
+ \edef#1{#1}%
+ \caption@Debug{floatstyle{#2} = `#1'}}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\float@ifcaption}
+% \changes{v3.1}{2007/06/23}{This macro added}
+% |\float@ifcaption|\marg{type}\marg{if-clause}\marg{else-clause}\par
+% Here we determine if the user has used |\newfloat| resp.~|\restylefloat|,
+% or |\restylefloat*|.
+% This is quite easy: If |\@float@c@|\meta{captype} is the same as
+% |\float@caption|, the user has used |\newfloat| or |\restylefloat|,
+% otherwise we assume he has used |\restylefloat*|.
+% (This test will fail if some package re-defines |\float@caption|,
+% so we have to assume that there is no one.)
+% \begin{macrocode}
+ \providecommand*\float@ifcaption[1]{%
+ \expandafter\ifx\csname @float@c@#1\endcsname\float@caption
+ \expandafter\@firstoftwo
+ \else
+ \expandafter\@secondoftwo
+ \fi}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+}}{%
+ \providecommand*\float@ifcaption[1]{\@secondoftwo}%
+% \clearcaptionsetup{boxed}% used by the floatrow package?
+}
+% \end{macrocode}
+%
+% The skip between `boxed' floats and their caption defaults to |2pt|.
+%
+% \begin{macrocode}
+\captionsetup[boxed]{skip=2pt} % do not issue a warning when not used
+% \end{macrocode}
+%
+% \changes{v3.0f}{2005/05/26}{\opt{strut=0} added to caption style \opt{ruled}}
+% \changes{v3.0f}{2005/05/27}{Option \opt{ruled} fixed}
+% To emulate the `ruled' definition of |\@fs@capt| we provide a caption style
+% `ruled' with appropriate options. But if the package option |ruled| was
+% specified, we setup some caption parameters to emulate the behavior
+% of \thispackage\ \version{1.x} option |ruled| instead, i.e.,
+% the current caption settings will be used, but without margin and without
+% `single-line-check'.
+% \begin{macrocode}
+\caption@ifbool{ruled}{%
+ \captionsetup[ruled]{margin=0pt,minmargin=0,slc=0}%
+}{%
+ \DeclareCaptionStyle{ruled}{labelfont=bf,labelsep=space,strut=0}%
+}
+\caption@undefbool{ruled}
+% \end{macrocode}
+%
+% \subsection{The floatflt package}
+% \changes{v3.1}{2007/06/10}{Support of the \package{floatflt} package added}
+%
+% \begin{macrocode}
+\caption@IfPackageLoaded{floatflt}[1996/02/27 v1.3]{%
+% \end{macrocode}
+%
+% \begin{macro}{\floatingfigure}
+% We patch |\floatingfigure| so |\caption@floatflt| will be used.
+% \begin{macrocode}
+ \let\caption@ORI@floatingfigure\floatingfigure
+ \def\floatingfigure{%
+ \caption@floatflt{figure}%
+ \caption@ORI@floatingfigure}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\floatingtable}
+% Same with |\floatingtable|\ldots
+% \begin{macrocode}
+ \let\caption@ORI@floatingtable\floatingtable
+ \def\floatingtable{%
+ \caption@floatflt{table}%
+% \caption@setautoposition b%
+ \caption@ORI@floatingtable}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@floatflt}
+% \changes{v3.1c}{2007/10/06}{Bugfix: \cs{caption@clearmargin} added}
+% Here we do two things:
+% \begin{enumerate}
+% \item We use |\caption@set|\-|options{|\-|floating|\meta{type}|}| so
+% |\caption|\-|setup[|\-|floating|\meta{type}|]{|\ldots|}| is supported.
+% \item |\line|\-|width| must be set correctly.
+% Usually this is done by |\@par|\-|box|\-|restore| inside |\@caption|,
+% but since we use |\@caption@box|\-|restore| we have to map this to
+% |\@par|\-|box|\-|restore| instead.
+% \end{enumerate}
+% \begin{macrocode}
+ \newcommand*\caption@floatflt[1]{%
+ \caption@settype{#1}%
+ \caption@clearmargin
+ \caption@setfullparboxrestore
+ \caption@setoptions{floating#1}}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+}{}
+% \end{macrocode}
+%
+% \subsection{The fltpage package}
+% \changes{v3.1}{2007/07/22}{Support of the \package{fltpage} package added}
+%
+% \begin{macrocode}
+\caption@IfPackageLoaded{fltpage}[1998/10/29 v.0.3]{%
+ \caption@setbool{needfreeze}{1}%
+% \end{macrocode}
+%
+% \begin{macro}{\FP@positionLabel}
+% \changes{v3.2c}{2011/08/28}{This redefinition added}
+% Original code:
+% \begin{verbatim}
+% \newcommand{\FP@positionLabel}{%
+% FP\@captype-\number\value{FP@\@captype C}-pos}
+% \end{verbatim}%^^A
+% \begin{macrocode}
+ \renewcommand\FP@positionLabel{%
+ FP\FP@captype-\number\value{FP@\FP@captype C}-pos}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\FP@helpNote}
+% Original code:
+% \begin{verbatim}
+% \newcommand{\FP@helpNote}[2]{%
+% \typeout{FP#1 is inserted on page \pageref{#2}!}}%
+% \end{verbatim}%^^A
+% \begin{macrocode}
+ \renewcommand\FP@helpNote[2]{%
+ \begingroup % save \caption@thepage
+ \caption@pageref{#2}%
+ \typeout{FP#1 is inserted on page \caption@thepage!}%
+ \endgroup}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\FP@floatBegin}
+% \changes{v3.1f}{2007/11/16}{Uses `space hack' instead of \cs{ignorespaces} now}
+% \changes{v3.1k}{2009/10/09}{Bugfix 09-09-11: Missing \cs{ignorespaces} added}
+% \changes{v3.2c}{2011/08/28}{Adapted to current version of \cs{caption@freeze}}
+% \changes{v3.2f}{2012/02/19}{Bugfix 12-02-16: \texttt{minipage} environment added}
+% \changes{v3.3}{2013/05/01}{Usage of \cs{caption@freeze} replaced by \cs{caption@freezetype}}
+% Original code:
+% \begin{verbatim}
+% \newcommand{\FP@floatBegin}[1]{%
+% \gdef\@captype{#1}%
+% \global\let\FP@savedCaptionCommand\caption%
+% \global\let\FP@savedLabelCommand\label%
+% \ifthenelse{\equal{\@captype}{figure}}
+% {\global\let\old@Fnum\fnum@figure}%
+% {\global\let\old@Fnum\fnum@table}%
+% \let\FP@LabelText\@empty%
+% \let\FP@CaptionText\@empty%
+% \let\FP@optionalCaptionText\@empty%
+% \renewcommand\label[1]{\gdef\FP@LabelText{##1}}%
+% \renewcommand\caption[2][]{%
+% \gdef\FP@optionalCaptionText{##1}\gdef\FP@CaptionText{##2}}%
+% \begin{lrbox}{\FP@floatCorpusBOX}%
+% }%
+% \end{verbatim}%^^A
+% \begin{macrocode}
+ \renewcommand*\FP@floatBegin[1]{%
+ \def\FP@captype{#1}%
+ \begin{lrbox}{\FP@floatCorpusBOX}%
+ \minipage\hsize % changes from LR mode to vertical mode
+ \caption@freezetype{#1}%
+ \ignorespaces}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\FP@floatEnd}
+% \changes{v3.1g}{2008/01/30}{Some minor bugfixes}
+% \changes{v3.2c}{2011/08/28}{Adapted to current version of \cs{caption@freeze}}
+% \changes{v3.2f}{2012/02/19}{Bugfix 12-02-16: \texttt{minipage} environment added}
+% Original code:
+% \begin{verbatim}
+% \newcommand{\FP@floatEnd}{%
+% \end{lrbox}%
+% \global\setbox\FP@floatCorpusBOX=\box\FP@floatCorpusBOX
+% \stepcounter{FP@\@captype C}%
+% \FP@savedLabelCommand{\FP@positionLabel}%
+% \FP@helpNote{\@captype}{\FP@positionLabel}%
+% \FP@float
+% {\FP@positionLabel}% location label test
+% {\begin{\@captype}[p!]
+% \usebox{\FP@floatCorpusBOX}%
+% \refstepcounter{\@captype}%
+% \ifthenelse{\equal{\FP@LabelText}{\@empty}}
+% {}{\FP@savedLabelCommand{\expandafter\protect\FP@LabelText}}%
+% \end{\@captype}}
+% {\addtocounter{\@captype}{-1}}
+% {\begin{\@captype}[b!]%
+% \ifthenelse{\equal{\FP@guide}{\@empty}}%
+% {}{\ifthenelse{\equal{\@captype}{figure}}%
+% {\renewcommand{\fnum@figure}{\old@Fnum\ {\FP@guide}}}%
+% {\renewcommand{\fnum@table}{\old@Fnum\ {\FP@guide}}}}%
+% \setlength{\abovecaptionskip}{2pt plus2pt minus 1pt} % length above caption
+% \setlength{\belowcaptionskip}{2pt plus2pt minus 1pt} % length above caption
+% \FP@separatorCaption%
+% \ifthenelse{\equal{\FP@optionalCaptionText}{\@empty}}%
+% {\FP@savedCaptionCommand{\expandafter\protect\FP@CaptionText}}%
+% {\FP@savedCaptionCommand[\expandafter\protect\FP@optionalCaptionText]%
+% {\expandafter\protect\FP@CaptionText}}%
+% \end{\@captype}}%
+% }%
+% \end{verbatim}%^^A
+% \begin{macrocode}
+ \renewcommand*\FP@floatEnd{%
+ \endminipage
+ \end{lrbox}%
+% \end{macrocode}
+% \begin{macrocode}
+ \stepcounter{FP@\FP@captype C}%
+ \caption@label\FP@positionLabel
+ \FP@helpNote\FP@captype\FP@positionLabel
+% \end{macrocode}
+% \begin{macrocode}
+ \FP@float
+ {\FP@positionLabel}% location label test
+ {\caption@prepare@defrost
+ \begin\FP@captype[p!]%
+ \usebox\FP@floatCorpusBOX
+ \end\FP@captype}%
+ {\@ifundefined{theH\FP@captype}{}{%
+ \expandafter\l@addto@macro\csname theH\FP@captype\endcsname{.FP}}}%
+ {\caption@prepare@defrost
+ \begin\FP@captype[b!]%
+ \let\FP@savedSetfnumCommand\caption@setfnum
+ \def\caption@setfnum##1{%
+ \FP@savedSetfnumCommand{##1}%
+ \ifx\FP@guide\@empty \else
+ \expandafter\l@addto@macro\csname fnum@##1\endcsname{\ {\FP@guide}}%
+ \fi}%
+ \setlength\abovecaptionskip{2pt plus 2pt minus 1pt}% length above caption
+ \setlength\belowcaptionskip{2pt plus 2pt minus 1pt}% length below caption
+ \caption@setoptions{FP\@captype}%
+ \FP@separatorCaption
+ \caption@defrost
+ \end\FP@captype}%
+ }%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+}{%
+ \let\caption@ifFPlistcap\@undefined
+ \let\caption@ifFPrefcap\@undefined
+}
+% \end{macrocode}
+%
+% \subsection{The hyperref package}
+% \changes{v3.0f}{2005/06/11}{Support of the \package{hyperref} package added}
+% \changes{v3.1}{2007/03/09}{Usage of \cs{hyper@makecurrent} instead of
+% \cs{theHfigure} as indicator for \package{hyperref} package}
+% \changes{v3.2}{2011/07/30}{Test if \package{hyperref} has stopped early revised}
+% \changes{v3.2c}{2011/08/24}{Test if \package{hyperref} has stopped early adapted to current version of \package{hyperref} package: Usage of \cs{IfHyperBoolean} added}
+%
+% \begin{macrocode}
+\caption@IfPackageLoaded{hyperref}[2003/11/30 v6.74m]{%
+ % Test if hyperref has stopped early
+ \caption@ifundefined\IfHyperBoolean{%
+ \caption@set@bool\caption@ifhyp@stoppedearly0%
+ \caption@ifundefined\H@refstepcounter
+ {\caption@set@bool\caption@ifhyp@stoppedearly1}{%
+ \caption@ifundefined\hyper@makecurrent
+ {\caption@set@bool\caption@ifhyp@stoppedearly1}{%
+ \caption@ifundefined\measuring@true
+ {\caption@set@bool\caption@ifhyp@stoppedearly1}{}}}%
+ }{%
+ \def\caption@ifhyp@stoppedearly{\IfHyperBoolean{stoppedearly}}%
+ }%
+ \caption@ifhyp@stoppedearly{% hyperref has stopped early
+ \caption@InfoNoLine{%
+ Hyperref support is turned off\MessageBreak
+ because hyperref has stopped early}%
+ }{%
+ \g@addto@macro\caption@prepareslc{\measuring@true}%
+% \end{macrocode}
+%
+% \begin{macro}{\caption@@@refstepcounter}
+% We redefine |\caption@@refstepcounter| so |\H@refstepcounter| will be used
+% instead of |\refstepcounter| inside |\caption| \& |\captionlistentry|.
+% \begin{macrocode}
+ \renewcommand*\caption@@@refstepcounter{\H@refstepcounter}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@makecurrent}
+% \changes{v3.1l}{2010/01/09}{Adapted to current version of nameref package}
+% We redefine |\caption@makecurrent| so a \package{hyperref} label
+% will be defined inside |\@caption|.
+% \Note{Will be redefined by \cs{caption@start}.}
+% \begin{macrocode}
+ \renewcommand*\caption@makecurrent[2]{%
+ \caption@makecurrentHref{#1}%
+ \caption@Debug{hyperref current=\@currentHref}%
+ \caption@gettitle{#2}}%
+% \end{macrocode}
+% \begin{macrocode}
+ \newcommand*\caption@makecurrentHref{\hyper@makecurrent}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@makeanchor}
+% \changes{v3.1l}{2010/01/09}{Adapted to the current hyperref package}
+% We redefine |\caption@makeanchor| so a \package{hyperref} anchor
+% will be set inside |\@caption|.
+% \Note{Will be redefined by \cs{caption@start}.}
+% \begin{macrocode}
+ \renewcommand\caption@makeanchor[1]{%
+ \caption@Debug{hyperref anchor: \@currentHref}%
+ % If we cannot have nesting, the anchor is empty.
+ \ifHy@nesting
+ \expandafter\hyper@@anchor\expandafter{\@currentHref}{#1}%
+ \else
+ \Hy@raisedlink{%
+ \expandafter\hyper@@anchor\expandafter{\@currentHref}{\relax}%
+ }#1%
+ \fi}%
+% \end{macrocode}
+% \begin{macrocode}
+ \g@addto@macro\caption@prepareslc{\let\caption@makeanchor\@firstofone}%
+% \end{macrocode}
+% \end{macro}
+%
+% \paragraph{The hypcap option}
+%
+% \begin{macro}{\if@capstart}
+% Like the \package{hypcap} package we define the switch |\if@capstart|, too.
+% \begin{macrocode}
+ \newif\if@capstart
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@start}
+% \changes{v3.0l}{2007/02/20}{%
+% \cs{caption@currentHref} renamed to \cs{hc@currentHref}}
+% \changes{v3.1}{2007/06/21}{%
+% This macro renamed from \cs{capstart} to \cs{caption@start} and revised}
+% While the \package{hypcap} package defines a macro called |\capstart|
+% our variant is called |\caption@start| and is controlled by the option
+% |hypcap=||false|/|true|.
+% \begin{macrocode}
+ \def\caption@start{\caption@ifhypcap\caption@start@\relax}%
+ \def\caption@start@{%
+% \end{macrocode}
+% Generate the \package{hyperref} label and set the \package{hyperref} anchor,
+% usually (if |hypcap=false|) both is done inside |\@caption|.
+% \begin{macrocode}
+ \caption@makestart\@captype
+ \caption@startanchor\@currentHref
+% \end{macrocode}
+% Prevent |\@caption| from generating a new \package{hyperref} label,
+% use the label we save in |\hc@currentHref| instead.
+% (We also support the |@capstart| flag from the \package{hypcap} package.)
+% \begin{macrocode}
+ \global\@capstarttrue
+ \let\hc@currentHref\@currentHref
+ \def\caption@makecurrentHref##1{%
+ \global\@capstartfalse
+ \global\let\@currentHref\hc@currentHref}%
+% \end{macrocode}
+% Prevent |\@caption| from generating a \package{hyperref} anchor since this
+% has already been done.
+% \begin{macrocode}
+ \let\caption@makeanchor\@firstofone
+% \end{macrocode}
+% \begin{macrocode}
+ }%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@makestart}
+% \changes{v3.1c}{2007/09/30}{\cs{@currentHref} will be extended by \texttt{caption}
+% instead of \texttt{xxx} now}
+% |\caption@makestart|\marg{type}
+% defines a \package{hyperref} anchor inside |\caption@start|.\par
+% Since we offer |\continuedfloat| the float counter can change between
+% `now' and |\caption|, i.e., we simply don't know the figure or table counter
+% yet and therefore we are not able to generate the `right' \package{hyperref}
+% label.
+% Two different solutions of this problem came into my mind:
+% \begin{enumerate}
+% \item I could use the aux file for this purpose.\par
+% -or-
+% \item I set |hypertexnames=false| locally.
+% Furthermore I use |#1.caption.|\meta{counter} (instead of |#1.|\meta{counter})
+% as naming scheme for |\@currentHref| to avoid conflicts with other hyper
+% links which are generated with |hypertexnames=true|.
+% \end{enumerate}
+% The first idea has the advantage that the `right' anchor name will be
+% generated, but one needs an additional \LaTeX\ run if figures or tables
+% will be inserted or removed.\par
+% The second idea has the advantage that it's very easy to implement, but
+% has some side-effects, e.g. the anchor names don't follow the figure or
+% table label names anymore.\par
+% Since I'm lazy I implemented the second idea, maybe I will revise this
+% later on.
+% \begin{macrocode}
+ \newcommand*\caption@makestart[1]{%
+ \begingroup
+ \Hy@hypertexnamesfalse
+% \gdef\@currentHlabel{}%
+ \hyper@makecurrent{#1.caption}%
+ \endgroup
+ \caption@Debug{hypcap start=\@currentHref}}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@startanchor}
+% \changes{v3.1b}{2007/09/17}{Bugfix 06-09-17: We use \cs{caption@anchor} instead of \cs{hyper@@anchor}}
+% \changes{v3.1g}{2008/03/16}{Warning about TeX mode replaced with debug info}
+% |\caption@startanchor|\marg{Href}
+% sets a \package{hyperref} anchor inside |\caption@start|.\par
+% This code was taken from the \package{hypcap} package\cite{hypcap} and adapted.
+% \Note{Since \cs{hyper@@anchor}\marg{Href}\csmarg{\string\relax} can cause
+% a change from vertical mode to horizontal mode (design flaw in
+% \package{hyperref} package!?), and since the workaround
+% \cs{let}\cs{leavevmode}\cs{relax} which can be found in the
+% \package{hypcap} package is not always sufficient
+% (for example with ``Direct pdfmark support'' and \texttt{breaklinks=true}),
+% we use \cs{caption@anchor} instead of \cs{hyper@@anchor} here.}
+% \begin{macrocode}
+ \newcommand*\caption@startanchor[1]{%
+ \ifvmode\begingroup
+ \caption@Debug{hypcap anchor: #1 (vertical mode)}%
+ \@tempdima\prevdepth
+ \nointerlineskip
+ \vspace*{-\caption@hypcapspace}%
+ \caption@anchor{#1}%
+ \vspace*{\caption@hypcapspace}%
+ \prevdepth\@tempdima
+ \endgroup\else
+ \caption@Debug{hypcap anchor: #1 (horizontal mode)}%
+ \caption@anchor{#1}%
+ \fi}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@anchor}
+% \changes{v3.1c}{2007/10/17}{Workaround 07-10-17: We use \cs{caption@raisedlink} instead of \cs{Hy@raisedlink} now}
+% |\caption@anchor|\marg{Href} sets a \package{hyperref} anchor.
+% \begin{macrocode}
+ \newcommand*\caption@anchor[1]{%
+ \ifmeasuring@ \else
+ \caption@raisedlink{\hyper@anchorstart{#1}\hyper@anchorend}%
+ \fi}%
+% \end{macrocode}
+% \Note{Since \cs{Hy@raisedlink} change \cs{@tempdima} we surrounded it by \cs{ifvmode},
+% suppressing ``\texttt{LaTeX Warning: Float too large for page by 1.0pt}'' in \texttt{sideways} floats.
+% (This is not necessary since \package{hyperref} \version{6.77}.)}
+% \begin{macrocode}
+ \ifx\HyperRaiseLinkLength\@tempdima
+ \def\caption@raisedlink#1{\ifvmode#1\else\Hy@raisedlink{#1}\fi}%
+ \else
+ \let\caption@raisedlink\Hy@raisedlink
+ \fi
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@@start}
+% Will be used by |\caption@freezeHref|. Apart from that we issue a warning
+% if we expect a saved \package{hyperref} label coming from |\caption@start|,
+% but there isn't any.
+% \begin{macrocode}
+ \def\caption@@start{%
+ \caption@ifundefined\hc@currentHref{%
+ \caption@Warning{%
+ The option `hypcap=true' will be ignored for this\MessageBreak
+ particular \string\caption}}{}}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@freezeHref}
+% Suppress |\caption@start| from generating a \package{hyperref} label and
+% setting a \package{hyperref} anchor. Instead if |\@caption| generates a
+% \package{hyperref} label, it will be stored in |\caption@currentHref|.
+% Furthermore we need to redefine |\caption@setfloatcapt| so no
+% \package{hyperref} anchor will be placed in |\@caption|.
+% \iffalse
+% (Since |\caption@setfloatcapt| will be set to |\@firstofone| inside
+% |\subcaption| there is no need to add its restauration to
+% |\caption@subtypehook|.)
+% \fi
+% \begin{macrocode}
+ \def\caption@freezeHref{%
+ \let\caption@ORI@start\caption@start
+ \def\caption@start{\let\caption@start\caption@ORI@start}%
+% \end{macrocode}
+% \begin{macrocode}
+% \let\caption@ORI@@start\caption@@start
+% \l@addto@macro\caption@subtypehook{%
+% \let\caption@@start\caption@ORI@@start}%
+% \end{macrocode}
+% \begin{macrocode}
+ \global\let\caption@currentHref\@undefined
+ \def\caption@@start{\global\let\caption@currentHref\@currentHref}%
+% \end{macrocode}
+% \begin{macrocode}
+ \let\caption@ORI@setfloatcapt\caption@setfloatcapt
+ \renewcommand*\caption@setfloatcapt{%
+ \ifx\caption@currentHref\@undefined \else
+ \let\caption@makeanchor\@firstofone
+ \fi
+ \caption@ORI@setfloatcapt}}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@defrostHref}
+% If there is a freezed |\@currentHref|, we set the \package{hyperref}
+% anchor here.
+% \begin{macrocode}
+ \def\caption@defrostHref{%
+ \ifx\caption@currentHref\@undefined \else
+ \caption@startanchor\caption@currentHref
+ \global\let\caption@currentHref\@undefined
+ \fi}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+ }}{}
+% \end{macrocode}
+%
+% \subsection{The hypcap package}
+% \changes{v3.0f}{2005/06/22}{Support of the \package{hypcap} package added}
+% \changes{v3.0l}{2007/02/20}{Adapted to \package{hypcap} \version{1.6}}
+% \changes{v3.1e}{2007/11/04}{\package{hypcap} support adapted to \package{hyperref} \version{6.77}}
+%
+% \begin{macrocode}
+\caption@IfPackageLoaded{hypcap}{% v1.0
+ \ifx\caption@start\relax \else % hyperref hasn't stopped early
+% \end{macrocode}
+%
+% If the \package{hypcap} package was loaded, we give up our own
+% hyperlink placement algorithm and give the control over the placement
+% to the \package{hypcap} package instead.
+%
+% \begin{macro}{\capstart}
+% \changes{v3.1k}{2009/10/09}{Support of \cs{ifcapstart} (\package{hypcap} package \version{1.10}) added}
+% We do this simply by mapping |\capstart| to |\caption@start@|,
+% although our code does not behave exactly like the original one:
+% The original |\capstart| has an effect on the next |\caption|
+% only but our version affects \emph{all} |\caption|s in the same
+% environment, at least unless a new |\capstart| will be placed.
+% \begin{macrocode}
+ \let\caption@ORI@capstart\capstart % save for compatibility mode
+ \caption@ifundefined\capstarttrue % check for v1.10 of hypcap package
+ {\def\capstart{\caption@start@}}%
+ {\def\capstart{\ifcapstart\caption@start@\fi}}%
+ \let\caption@start\relax
+ \let\caption@@start\relax
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@hypcapspace}
+% Furthermore we map our |\caption@hypcapspace| to |\hypcapspace|
+% offered by the \package{hypcap} package.
+% \begin{macrocode}
+ \caption@set@bool\caption@ifhypcap 1%
+ \renewcommand*\caption@hypcapspace{\hypcapspace}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+ \fi}{}
+% \end{macrocode}
+%
+% \subsection{The listings package}
+% \changes{v3.0b}{2004/05/16}{Support of the \package{listings} package added}
+%
+% \begin{macrocode}
+\caption@IfPackageLoaded{listings}[2004/02/13 v1.2]{%
+% \end{macrocode}
+%
+% \begin{macro}{\lst@MakeCaption}
+% \changes{v3.1g}{2008/01/20}{Bugfix: Skips are handled correctly now}
+% \changes{v3.1k}{2008/03/29}{Bugfix 08-10-16-dctt: \texttt{rule=0} added}
+% \changes{v3.2}{2010/10/26}{Bugfix 10-07-20a: Set \cs{hsize} to \cs{linewidth}, if necessary}
+% \changes{v3.4c}{2020/01/01}{Ugly workaround for usage in lists added}
+% \changes{v3.4d}{2020/01/01}{Ugly workaround for usage in lists revised}
+% To support the \package{listings} package we need to redefine
+% |\lst@Make|\-|Caption| so the original stuff is nested with
+% |\caption@begin| and |\caption@end| etc.\par
+% We set a flag inside the "Init" hook of the \package{listings} package (where adaption of |\line|\-|width| etc.~takes place).
+% \begin{macrocode}
+ \caption@setbool{lst@Init}{0}%
+ \lst@AddToHook{Init}{\caption@setbool{lst@Init}{1}}%
+% \end{macrocode}
+% \begin{macrocode}
+ \let\caption@ORI@lst@MakeCaption\lst@MakeCaption
+ \def\lst@MakeCaption#1{% #1 is `t' or `b'
+% \end{macrocode}
+% This macro is always called twice by the \package{listings} package (with `t' resp. `b' as parameter),
+% therefore we need an extra group here.
+% \begin{macrocode}
+ \begingroup
+% \end{macrocode}
+% Inside lists the \package{listings} package ignores the left margin (|\@total|\-|left|\-|margin|) for captions.
+% We emulate this behaviour by adding a negative skip which will be typeset ahead of |\caption@box|.\par
+% Note: We only need to do this if the ``Init'' hook of the \package{listings} package wasn't called yet.
+% \begin{macrocode}
+ \caption@iflst@Init{}{%
+ \edef\caption@lst@leftskip{\noexpand\hskip-\the\@totalleftmargin\noexpand\relax}%
+ \l@addto@macro\caption@beginhook\caption@lst@leftskip}%
+% \end{macrocode}
+% We set |position=#1| and if it was set to `top',
+% we swap the skips so the default behavior of the \package{listings} package
+% will not be changed. (Note that the \package{listings} package has set its
+% own |\abovecaptionskip| \& |\belowcaptionskip| values prior to calling
+% \cs{lst@MakeCaption}.)
+% \begin{macrocode}
+ \caption@setposition{#1}%
+ \caption@iftop{%
+ \@tempdima\belowcaptionskip
+ \belowcaptionskip\abovecaptionskip
+ \abovecaptionskip\@tempdima}{}%
+% \end{macrocode}
+% Workaround for issue with wrong skips (FIXME: This should be examined further)
+% \begin{macrocode}
+ \caption@setup{rule=0}%
+% \end{macrocode}
+% Afterwards we set the local `lstlisting' options.
+% \begin{macrocode}
+ \caption@setoptions{lstlisting}%
+% \end{macrocode}
+% If the |position=| is now set to |auto|, we take over the |captionpos=|
+% setting from the \package{listings} package.
+% \begin{macrocode}
+ \caption@setautoposition{#1}%
+% \end{macrocode}
+% At the end we do similar stuff as in our \cs{@caption} code.
+% \begin{macrocode}
+ \caption@begin{lstlisting}%
+ \caption@ORI@lst@MakeCaption{#1}%
+ \caption@end
+% \end{macrocode}
+% \begin{macrocode}
+ \endgroup}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\lst@makecaption}
+% \begin{macro}{\lst@maketitle}
+% Wrapper macros for typesetting the |caption=| resp. |title=| value.
+% \begin{macrocode}
+ \def\lst@makecaption{\caption@starfalse\@makecaption}%
+ \def\lst@maketitle{\caption@startrue\@makecaption\@empty}%
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+%
+% \begin{macro}{\ext@lstlisting}
+% \changes{v3.1}{2007/03/03}{This macro added}
+% Since the \package{listings} package do not define |\ext@lstlisting|
+% but we needed it when |\captionof{lstlisting}| will be done by the end user,
+% we define it here.
+% \begin{macrocode}
+ \providecommand*\ext@lstlisting{lol}%
+% \end{macrocode}
+% \end{macro}
+%
+% \changes{v3.1a}{2007/07/13}{Bugfix 07-09-13: \cs{lst@@caption} will not be re-defined anymore}
+%
+% \begin{macrocode}
+}{}
+% \end{macrocode}
+%
+% \subsection{The longtable package}
+%
+% \begin{macro}{\LTcaptype}
+% \changes{v3.1}{2007/07/06}{This macro and its support added}
+% |\LTcaptype| is preset to |table|.
+% \begin{macrocode}
+\providecommand*\LTcaptype{table}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+\caption@IfPackageLoaded{longtable}[1995/05/24 v3.14]{%
+% \end{macrocode}
+% \begin{macrocode}
+ \RequirePackage{ltcaption}[=2018/08/26]%
+ \let\LT@@makecaption\@undefined
+% \end{macrocode}
+%
+% \begin{macro}{\LT@array}
+% \changes{v3.1}{2007/07/22}{This redefinition added}
+% \changes{v3.1a}{2007/09/14}{Bugfix 07-09-14: Redefinition of \cs{@captionabovetrue} \& \cs{@captionabovefalse} added}
+% \changes{v3.1a}{2007/09/16}{Bugfix: This redefinition will always be done \cs{AtBeginDocument}}
+% \changes{v3.1g}{2008/01/20}{Bugfix in \cs{captionlistentry}: Table counter will not be incremented anymore, \cs{nameref} works}
+% \changes{v3.3}{2016/01/31}{Support for \cs{bicaption} added}
+% \changes{v3.3}{2018/10/05}{Definition of \cs{captionlistentry} fixed}
+% We redefine |\LT@array| here to get |\captionsetup|\marg{options}
+% working inside |longtable|s.
+% \Note{Since the \package{hyperref} package patches \cs{LT@array} as well
+% and since this only works with the original definition of \cs{LT@array},
+% we have to do this after the \package{hyperref} package,
+% i.e.~\cs{AtBeginDocument}.}
+% \begin{macrocode}
+ \caption@AtBeginDocument{%
+ \let\caption@ORI@LT@array\LT@array
+ \renewcommand*\LT@array{%
+% \end{macrocode}
+% |\captionsetup| for longtable:
+% \begin{macrocode}
+ \global\let\caption@opt@@longtable\@undefined
+ \def\captionsetup{%
+ \noalign\bgroup
+ \@ifstar\@captionsetup\@captionsetup}% gobble *
+ \def\@captionsetup##1{\LT@captionsetup{##1}\egroup}%
+ \def\LT@captionsetup##1{%
+ \captionsetup@startrue\caption@setup@options[@longtable]{##1}%
+ \global\let\caption@opt@@longtable\caption@opt@@longtable}%
+% \end{macrocode}
+% |\captionabove| \& |\captionbelow| for longtable: (\KOMAScript\ document class)
+% \begin{macrocode}
+ \def\@captionabovetrue{\LT@captionsetup{position=t}}%
+ \def\@captionabovefalse{\LT@captionsetup{position=b}}%
+% \end{macrocode}
+% |\captionlistentry| for longtable:
+% \begin{macrocode}
+ \def\captionlistentry{%
+ \noalign\bgroup
+ \@ifstar{\egroup\LT@listentry\LTcaptype}% gobble *
+ {\egroup\LT@listentry\LTcaptype}}%
+% \end{macrocode}
+% |\continuedfloat| for longtable:\\
+% {\small(Commented out, since it's not deeply tested and quite useless anyway)}
+% \Note{\package{hyperref} versions $<$ v6.76j uses $2\times$ \cs{hyper@makecurrent}}
+% \begin{macrocode}
+% \caption@ifhypcap{%
+% \let\caption@ORI@hyper@makecurrent\hyper@makecurrent
+% \def\hyper@makecurrent##1{%
+% \let\hyper@makecurrent\caption@ORI@hyper@makecurrent
+% \caption@makestart{##1}%
+%% \let\Hy@LT@currentHlabel\@currentHlabel
+% \let\Hy@LT@currentHref\@currentHref
+% \def\hyper@makecurrent####1{%
+%% \let\@currentHlabel\Hy@LT@currentHlabel
+% \let\@currentHref\Hy@LT@currentHref}}%
+% \let\caption@ORI@continuedfloat\continuedfloat
+% \def\continuedfloat{\noalign{%
+% \gdef\caption@setContinuedFloat{%
+% \let\caption@reset@continuedfloat\@gobble}%
+% \def\caption@setoptions####1{%
+% \g@addto@macro\caption@setContinuedFloat{%
+% \caption@setoptions{####1}}}%
+% \let\@captype\LTcaptype
+% \caption@ORI@ContinuedFloat}}%
+% }{%
+% \def\continuedfloat{\noalign{%
+% \caption@Error{%
+% \noexpand\continuedfloat inside longtables\MessageBreak
+% is only available with `hypcap=true'}}}%
+% }%
+% \global\let\caption@setContinuedFloat\@empty
+ \def\continuedfloat{\noalign{%
+ \caption@Error{\noexpand\continuedfloat outside float}}}%
+% \end{macrocode}
+% |\bicaption| for longtable:
+% \begin{macrocode}
+ \let\bicaption\LT@bicaption
+% \end{macrocode}
+%
+% \begin{macrocode}
+ \caption@ORI@LT@array}}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\LT@capti@n}
+% \changes{v3.3}{2016/02/01}{This re-definition added}
+% The original implementation:
+% \begin{verbatim}
+% \def\LT@capti@n{%
+% \@ifstar
+% {\egroup\LT@c@ption\@gobble[]}%
+% {\egroup\@xdblarg{\LT@c@ption\@firstofone}}}
+% \end{verbatim}%^^A
+% Our implementation uses |\caption@xdblarg| instead of |\@xdblarg|:
+% \begin{macrocode}
+ \def\LT@capti@n{%
+ \@ifstar
+ {\egroup\LT@c@ption\@gobble[]}%
+ {\egroup\caption@xdblarg{\LT@c@ption\@firstofone}}}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\LT@makecaption}
+% \changes{v3.0d}{2004/08/10}{%
+% Bugfix 04-08-04: \cs{abovecaptionskip} \& \cs{belowcaptionskip} will be used now}
+% \changes{v3.0e}{2005/05/05}{%
+% Bugfix: \cs{captionsetup[longtable]} overrides \cs{LTcapwidth} now}
+% \changes{v3.0h}{2005/10/07}{\cs{caption@LT@make} introduced}
+% \changes{v3.3}{2016/02/01}{Support for \cs{bicaption} via \cs{caption@LT@setup} added}
+% \changes{v3.3a}{2019/04/02}{Work-around for problem with \package{floatrow} added}
+% |\LT@makecaption|\marg{cmd}\marg{label}\marg{text}\par
+% \smallskip
+% The original definition:
+% \begin{verbatim}
+% \def\LT@makecaption#1#2#3{%
+% \LT@mcol\LT@cols c{\hbox to\z@{\hss\parbox[t]\LTcapwidth{%
+% % Based on article class "\@makecaption", "#1" is "\@gobble" in star
+% % form, and "\@firstofone" otherwise.
+% \sbox\@tempboxa{#1{#2: }#3}%
+% \ifdim\wd\@tempboxa>\hsize
+% #1{#2: }#3%
+% \else
+% \hbox to\hsize{\hfil\box\@tempboxa\hfil}%
+% \fi
+% \endgraf\vskip\baselineskip}%
+% \hss}}}
+% \end{verbatim}%^^A
+% Our definition:
+% \begin{macrocode}
+ \renewcommand\LT@makecaption[3]{%
+ \caption@LT@make{%
+ \caption@LT@settype\LTcaptype
+% \end{macrocode}
+%
+% |\caption@LT@setup| is re-defined inside the \package{bicaption} package
+% and contains the preparation of typesetting of the bilingual caption.
+% \begin{macrocode}
+ \caption@LT@setup
+% \end{macrocode}
+%
+% \iffalse
+% The default |position=| setting for longtables is |top|.
+% (This emulates the standard behavior of the \package{longtable} package
+% which has no skip above the caption but a skip below it.)
+% \fi
+%
+% |position=auto| is a bad idea for longtables, but we do our very best.
+% This works quite well for captions inside the longtable contents, but
+% not for captions inside the longtable (end)foot.
+% \Note{This should be `top' if unclear!}
+% \begin{macrocode}
+ \caption@setautoposition{\ifcase\LT@rows t\else b\fi}%
+% \end{macrocode}
+%
+% We set |\ifcaption@star| according the 1st argument.
+% \begin{macrocode}
+ \caption@startrue#1\caption@starfalse
+% \end{macrocode}
+%
+% \begin{macrocode}
+ \caption@prepare@stepcounter\LTcaptype{LT}%
+% \end{macrocode}
+%
+% \changes{v3.1}{2007/05/05}{\cs{caption@normalsize} added}
+% \begin{macrocode}
+ \caption@begin\LTcaptype
+ \caption@normalsize
+% \end{macrocode}
+%
+% The following skip has the purpose to correct the height of the
+% |\parbox[t]|. Usually it's the height of the very first line, but
+% because of our extra skips (|\abovecaptionskip| and |\belowcaptionskip|)
+% it's always |0pt|.\par
+% (A different idea would be typesetting the first skip outside the longtable
+% column with |\noalign{\vskip|\ldots|}|, but this means we have to move
+% |\caption@begin| to some other place because it does not work in tabular
+% mode. And at the moment I have no idea on how to do this in an elegant
+% way\ldots)
+% \begin{macrocode}
+ \vskip-\ht\strutbox
+% \end{macrocode}
+%
+% Work-around for problem with \package{floatrow}:
+% The |\below|\-|caption|\-|skip| disturbs the environment in which the caption is actually typeset (by creating extra, unwanted space),
+% so we supress this skip if the \package{floatrow} package is loaded.
+% (This fixes \issue{50})
+% \begin{macrocode}
+ \caption@ifdefined\FBifcaptop{%
+ \let\caption@belowskip\@empty}{}%
+% \end{macrocode}
+%
+% The following code should look familiar. We do our skips and use
+% |\caption@@make| to typeset the caption itself.
+% \begin{macrocode}
+ \caption@make@above
+ \caption@@make{#2}{#3}\endgraf
+ \caption@make@below
+ \caption@end}}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\LT@listentry}
+% \changes{v3.3}{2018/08/26}{This macro added}
+% \changes{v3.3}{2018/10/05}{Bugfix: \cs{ignorespaces} added}
+% \changes{v3.3}{2018/12/26}{Bugfix: Missing curly braces added}
+% \begin{macrocode}
+ \renewcommand*\LT@listentry[2]{%
+ \begingroup
+ \caption@LT@settype{#1}%
+ \caption@listentry\@firstoftwo[{#1}]{#2}%
+ \endgroup\ignorespaces}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@LT@settype}
+% \changes{v3.3}{2018/08/26}{This macro added}
+% \changes{v3.3}{2018/10/05}{Uses argument no. 1 instead of \cs{LTcaptype}}
+% \begin{macrocode}
+ \newcommand*\caption@LT@settype[1]{%
+ \caption@settype*{#1}%
+% \end{macrocode}
+% If |\LTcapwidth| is not set to its default value |4in| we assume
+% that it shall overwrite our own setting.
+% (But |\captionsetup[longtable]{width=|\ldots|}| will overwrite |\LTcapwidth|.)
+% \begin{macrocode}
+ \ifdim\LTcapwidth=4in \else
+ \setcaptionwidth\LTcapwidth
+ \fi
+% \end{macrocode}
+% \begin{macrocode}
+ \caption@setoptions{longtable}%
+% \caption@setContinuedFloat
+% \end{macrocode}
+% Finally set options applied by |\captionsetup| inside the longtable.
+% \begin{macrocode}
+ \caption@setoptions{@longtable}}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\flrow@setlist}
+% \changes{v3.4g}{2020/01/03}{Redefinition of this macro added}
+% The \package{floatrow} package uses |\flrow@setlist{{table}{longtable}}| inside its redefinition of |\LT@array| without setting |\@captype| first,
+% and this makes |\captionsetup[table]{name=...}| doomed to fail for longtables (``Undefined control sequence'').
+% Unfortunately we cannot easily patch |\LT@array| again to fix this bug in \package{floatrow} since it will be patched |\AtBeginDocument|.
+% Therefore we patch |\flrow@setlist| instead to catch and fix the bug on-the-fly.
+% \begin{macrocode}
+ \caption@AtBeginDocument{\caption@ifdefined\flrow@setlist@{%
+ \caption@InfoNoLine{Fixing longtable code of `floatrow' package}%
+ \let\caption@flrow@setlist@\flrow@setlist@
+ \renewcommand\flrow@setlist@[1]{%
+ \def\caption@tempa{{table}{longtable}}%
+ \def\caption@tempb{#1}%
+ \ifx\caption@tempa\caption@tempb
+ \def\@captype{table}%
+ \fi
+ \caption@flrow@setlist@{#1}}%
+ }{}}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+}{}
+% \end{macrocode}
+%
+% \begin{macro}{\caption@LT@setup}
+% \changes{v3.3}{2016/02/01}{This macro added}
+% Hook for stuff which prepares the typesetting of the \package{longtable} caption.
+% \begin{macrocode}
+\providecommand*\caption@LT@setup{}
+% \end{macrocode}
+% \end{macro}
+%
+% \subsection{The picinpar package}
+% \changes{v3.1}{2007/06/13}{Support of the \package{picinpar} package added}
+%
+% \begin{macrocode}
+\caption@IfPackageLoaded{picinpar}{%
+% \end{macrocode}
+%
+% \begin{macro}{\figwindow}
+% \begin{macro}{\tabwindow}
+% The \package{picinpar} package comes with its own caption code
+% (|\wincaption|, |\@wincaption|, |\@makewincaption|, \ldots)
+% so we redefine |\figwindow| \& |\tabwindow| to use |\caption| instead.
+% \begin{macrocode}
+ \long\def\figwindow[#1,#2,#3,#4] {%
+ \caption@window{figure}%
+ \caption@setoptions{figwindow}%
+ \begin{window}[#1,#2,{#3},\caption@wincaption{#4}] }%
+% \end{macrocode}
+% \begin{macrocode}
+ \long\def\tabwindow[#1,#2,#3,#4] {%
+ \caption@window{table}%
+ \caption@setoptions{tabwindow}%
+ \begin{window}[#1,#2,{#3},\caption@wincaption{#4}] }%
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+%
+% \begin{macro}{\caption@window}
+% \changes{v3.1c}{2007/10/06}{Bugfix: \cs{caption@clearmargin} added}
+% Beside calling |\caption@settype| we redefine |\caption@boxrestore|
+% (as in \package{floatflt} \& \package{picins} package support)
+% and |\@makecaption| (as in \package{float} package support) here.
+% \begin{macrocode}
+ \newcommand*\caption@window[1]{%
+ \let\@makecaption\caption@@make
+ \caption@setautoposition b%
+ \caption@settype{#1}%
+ \caption@clearmargin
+ \caption@setfullparboxrestore}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@wincaption}
+% \changes{v3.1d}{2007/10/25}{Missing \% added}
+% \changes{v3.3}{2013/04/14}{\cs{caption@ContinuedFloattrue} added}
+% \changes{v3.3}{2018/10/06}{\cs{caption@ContinuedFloattrue} replaced by \cs{caption@setflag1}}
+% This one finally typesets the caption using |\caption|.
+% \begin{macrocode}
+ \newcommand\caption@wincaption[1]{%
+% \end{macrocode}
+% This will be done twice for every |figwindow| \& |tabwindow| caption --
+% on the first run |\picwd| is |0pt|, on the second run |\picwd| is |\hsize|.
+% \begin{macrocode}
+ \ifdim\picwd=\z@
+ \let\caption@makecurrent\@gobbletwo
+ \let\caption@@start\relax
+ \caption@prepareslc
+ \else
+ \caption@setflag1%
+ \fi
+% \end{macrocode}
+% The argument |#1| could contain simply the caption text
+% (e.g.~|A figure caption|), but it could also contain an optional argument,
+% the \meta{lst\_entry}
+% (e.g.~|[An| |entry| |to| |the| |LOF]||{A| |figure| |caption}|).
+% Therefore we have to test if |#1| begins with~|[| or not; furthermore we
+% support a starred variant -- as in |\caption*| -- so we test for~|*|, too.
+% \begin{macrocode}
+ \edef\@tempa{\expandafter\noexpand\@car#1\@nil}%
+ \if\@tempa*%
+ \let\@tempa\@firstofone
+ \else\if\@tempa[%]
+ \let\@tempa\@firstofone
+ \else
+ \let\@tempa\@empty
+ \fi\fi
+ \expandafter\caption\@tempa{#1}}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+}{}
+% \end{macrocode}
+%
+% \subsection{The picins package}
+% \changes{v3.0j}{2006/01/26}{Support of the \package{picins} package added}
+%
+% \begin{macro}{\piccaptiontype}
+% |\piccaptiontype|\marg{type}\par
+% We offer this macro for changing the \meta{type} of the caption, so the user
+% doesn't have to redefine |\@captype|, as proposed in the \package{picins}
+% documentation.
+% \Note{We define this macro here so it can be used in the
+% preamble of the document, even when \thispackage\ was loaded prior to the
+% \package{picins} package.}
+% \begin{macrocode}
+\newcommand*\piccaptiontype[1]{\def\@piccaptype{#1}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+\caption@IfPackageLoaded{picins}{%
+% \end{macrocode}
+%
+% Initial set |\@piccaptype| and undefine |\@captype| which was set to
+% |figure| by the \package{picins} package.
+% \begin{macrocode}
+ \caption@ifundefined\@piccaptype{%
+ \caption@iftype{%
+ \let\@piccaptype\@captype
+ }{%
+ \def\@piccaptype{figure}%
+ }%
+ }{}%
+ \let\@captype\@undefined
+% \end{macrocode}
+%
+% \begin{macro}{\piccaption}
+% The original code:
+% \begin{verbatim}
+% \def\piccaption{\@ifnextchar [{\@piccaption}{\@piccaption[]}}
+% \end{verbatim}%^^A
+% Our code uses |\caption@star| so |\piccaption*| works,
+% and |\caption@dblarg| so |\piccaption{}| works correctly.
+% \begin{macrocode}
+ \def\piccaption{\caption@star\relax{\caption@dblarg\@piccaption}}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\make@piccaption}
+% \changes{v3.1}{2007/12/06}{Bugfix: \cs{caption@clearmargin} will always be used now}
+% The original code:
+% \begin{verbatim}
+% \def\make@piccaption{%
+% [...]
+% \setbox\@TEXT=\vbox{\hsize\hsiz@\caption[\sh@rtf@rm]{\capti@nt@xt}}%
+% }
+% \end{verbatim}%^^A
+% In our code we have to correct several things:
+% \begin{enumerate}
+% \item |\@captype| must be defined, since we have removed the global
+% definition.
+% \item We use |\caption@setoptions{parpic}| so
+% |\captionsetup[parpic]{|\ldots|}| is supported.
+% \item |\linewidth| must be set correctly.
+% Usually this is done by |\@parboxrestore| inside |\@caption|,
+% but since we use |\@caption@boxrestore| we have to map this to
+% |\@parboxrestore| instead.
+% \item The two arguments of |\caption| (|\sh@rtf@rm| \& |\capti@nt@xt|)
+% should be expanded on first level so |\caption[]{|\ldots|}| and
+% |\caption[|\ldots|]{}| work correctly.
+% \end{enumerate}
+% \begin{macrocode}
+ \let\caption@ORI@make@piccaption\make@piccaption
+ \def\make@piccaption{%
+ \let\caption@ORI\caption
+% \end{macrocode}
+% \begin{macrocode}
+ \long\def\caption[##1]##2{%
+ \caption@freezeHref % will be defrosted in \ivparpic
+ \caption@settype\@piccaptype
+% \ifnum\c@piccaptionpos>2\relax
+ \caption@clearmargin
+% \else
+% \captionwidth\z@ % do not use "width=" setting
+% \fi
+ \caption@setfullparboxrestore
+ \caption@setoptions{parpic}%
+ \caption@setautoposition b%
+% \end{macrocode}
+% \begin{macrocode}
+ \expandafter\expandafter\expandafter\caption@ORI
+ \expandafter\expandafter\expandafter[%
+ \expandafter\expandafter\expandafter{%
+ \expandafter##1\expandafter}\expandafter]\expandafter{##2}}%
+% \end{macrocode}
+% {\footnotesize\begin{quote}
+% \leavevmode\llap{-or-\quad}%^^A
+% |\begingroup|\\
+% | \toks0\expandafter{##1}| |\toks2\expandafter{##2}|\\
+% | \edef\x{\endgroup|\\
+% | \noexpand\caption@ORI[{\the\toks0}]{\the\toks2}}|\\
+% | \x|
+% \end{quote}
+% \begin{quote}
+% \leavevmode\llap{-or-\quad}%^^A
+% |\edef\x{%|\\
+% | \noexpand\caption@ORI[{\unexpanded\expandafter{##1}}]%|\\
+% | {\unexpanded\expandafter{##2}}}|\\
+% |\-|
+% \end{quote}}
+% \begin{macrocode}
+ \caption@ORI@make@piccaption
+ \let\caption\caption@ORI}%
+% \end{macrocode}
+% \end{macro}
+%
+
+% \begin{macro}{\ivparpic}
+% \changes{v3.3}{2018/12/26}{Bugfix: Missing curly braces added}
+% We need to set our \package{hyperref} anchor here.
+% Not bullet-proof since we have to redefine |\noindent| here!
+% \begin{macrocode}
+ \let\caption@ORI@ivparpic\ivparpic
+ \def\ivparpic(#1,#2)(#3,#4)[#5][#6]#7{%
+ \let\caption@ORI@noindent\noindent
+ \def\noindent{%
+ \caption@defrostHref
+ \let\noindent\caption@ORI@noindent
+ \noindent}%
+ \caption@ORI@ivparpic(#1,#2)(#3,#4)[{#5}][{#6}]{#7}%
+ \let\noindent\caption@ORI@noindent}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+}{%
+ \let\piccaptiontype\@undefined
+}
+% \end{macrocode}
+%
+% \subsection{The rotating package}
+%
+% \begin{macrocode}
+\caption@IfPackageLoaded{rotating}[1995/08/22 v2.10]{%
+% \end{macrocode}
+%
+% \begin{macro}{\rotcaption}
+% \changes{v3.0c}{2004/07/16}{Bugfix: Check for \cs{caption@star} removed}
+% \changes{v3.0i}{2005/12/07}{Rewritten, works with \package{hyperref} now}
+% Make |\rotcaption*| work.
+% \begin{macrocode}
+ \def\rotcaption{\let\@makecaption\@makerotcaption\caption}%
+% \let\@rotcaption\@undefined
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\rotcaptionof}
+% \changes{v3.0i}{2005/12/07}{New}
+% Make |\rotcaptionof(*)| work.
+% \begin{macrocode}
+ \def\rotcaptionof{%
+ \caption@teststar\caption@of{\rotcaption*}\rotcaption}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\@makerotcaption}
+% \changes{v3.0i}{2005/12/06}{Rewritten, should finally work proper now}
+% \changes{v3.0m}{2007/03/04}{Uses \cs{caption@parbox} instead of \cs{caption@start/endbox} now}
+% \changes{v3.3}{2012/12/26}{Rewritten (again)}
+% Original (bugfixed) code:
+% \begin{verbatim}
+% \long\def\@makerotcaption#1#2{%
+% \setbox\@tempboxa\hbox{#1: #2}%
+% \ifdim \wd\@tempboxa > .8\vsize
+% \rotatebox{90}{%
+% \begin{minipage}{.8\textheight}#1: #2\end{minipage}%
+% }%\par % <== \par removed (AR)
+% \else%
+% \rotatebox{90}{\box\@tempboxa}%
+% \fi
+% \nobreak\hspace{12pt}% <== \nobreak added (AR)
+% }
+% \end{verbatim}%^^A
+% Our version emulates this behavior, but if |width=| is set,
+% the rotated caption is always typeset as |\parbox|.
+% (Note that |margin=| is not supported here.)
+% \begin{macrocode}
+ \long\def\@makerotcaption#1#2{%
+ \rotatebox{90}{%
+ \ifdim\captionwidth=\z@
+ \setcaptionwidth{.8\vsize}%
+ \l@addto@macro\caption@singleline{%
+ \caption@setup{parbox=none}}%
+ \fi
+ \let\caption@calcmargin\relax
+ \caption@@make{#1}{#2}}%
+ \nobreak\hspace{12pt}}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+}{}
+% \end{macrocode}
+%
+% \subsection{The sidecap package}
+%
+% \begin{macrocode}
+\caption@IfPackageLoaded{sidecap}[2003/06/06 v1.6f]{%
+ \caption@setbool{needfreeze}{1}%
+% \end{macrocode}
+%
+% \begin{macro}{\SC@zfloat}
+% \changes{v3.0b}{2004/05/16}{Local definition of \cs{captionsetup} added}
+% \changes{v3.0c}{2004/07/16}{Bugfix 04-07-15: Check for \cs{caption@star} removed}
+% \changes{v3.1c}{2007/10/06}{\cs{caption} will be saved \& restored now}
+% \changes{v3.2a}{2011/08/17}{Bugfix: Uses \cs{caption@freeze} instead of \cs{caption@freeze*} now}
+% \changes{v3.3}{2013/05/01}{Usage of \cs{caption@freeze} replaced by \cs{caption@freezetype}}
+% This macro will be called at the start of the environment, here is a good
+% opportunity to do some adaptations to |\caption| and |\captionsetup|.
+% \begin{macrocode}
+ \let\caption@ORI@SC@zfloat\SC@zfloat
+ \def\SC@zfloat#1#2#3[#4]{%
+% \end{macrocode}
+% First we use the original definition, but restore \cs{caption} and \cs{label}
+% so \cs{caption@freeze} and \cs{caption@warmup} will work correctly.
+% \begin{macrocode}
+ \caption@ORI@SC@zfloat{#1}{#2}{#3}[#4]%
+ \SC@RestoreCommands
+% \end{macrocode}
+% Since the sidecap package uses our |\caption| code outside the
+% environment the regular |\captionsetup| will not work.
+% So we need a special version here which saves the given argument list
+% which will be executed later on.
+% Furthermore we need to make |\caption*| work.
+% \begin{macrocode}
+ \caption@freezetype{#2}%
+% \end{macrocode}
+% The sidecap package uses |\ifx\label\SC@label| to test if it is just inside a
+% |SC|\-|figure| or not. So we redefine |\SC@label| here so this test will still work.
+% \begin{macrocode}
+ \let\SC@label\label}%
+% \end{macrocode}
+% \begin{macrocode}
+ \providecommand*\SC@RestoreCommands{%
+ \let\caption=\SC@orig@caption \let\label=\SC@orig@label}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\endSC@FLOAT}
+% \changes{v3.0i}{2006/01/12}{\cs{@listdepth}\cs{z@} added}
+% \changes{v3.1}{2007/05/05}{Call of \cs{caption@setoptions}\arg{SCfloat} added}
+% This macro will be called at the end of the environment, here we need to
+% setup our stuff before the \package{sidecap} package actually typesets
+% its caption.
+% \begin{macrocode}
+ \let\caption@ORI@endSC@FLOAT\endSC@FLOAT
+ \def\endSC@FLOAT{%
+% \end{macrocode}
+% Before we can typeset the caption we need to set the margin to zero
+% because any extra margin would only be disturbing here.\par
+% (We don't need to take care about the caption position because
+% the sidecap package set both |\abovecaptionskip| and |\belowcaptionskip|
+% to a skip of zero anyway.)\par
+% Furthermore |\SC@justify| will override the caption justification, if set.
+% The usage of |\SC@justify| differs from version to version of the
+% \package{sidecap} package:\par
+% \begin{tabular}{ll}
+% Version 1.4: & |\SC@justify| is not defined\\
+% Version 1.5: & |\SC@justify| is |\relax| when not set\\
+% Version 1.6: & |\SC@justify| is |\@empty| when not set\\
+% \end{tabular}
+% \begin{macrocode}
+ \def\caption@setSC@justify{%
+ \caption@clearmargin
+ \ifx\SC@justify\@empty \else
+ \let\caption@hj\SC@justify
+ \let\SC@justify\@empty
+ \fi}%
+% \end{macrocode}
+% Make the original definition of |\endSC@FLOAT| to use our caption
+% stuff instead of its own.
+% \Note{At this point the \package{sidecap} definition of \cs{caption} is valid,
+% not the regular one!}
+% \begin{macrocode}
+ \let\caption\SC@orig@caption
+ \def\SC@orig@caption[##1]##2{%
+ \caption@setSC@justify
+%%% \caption@setoptions{SC}%
+ \caption@setoptions{SC\@captype}%
+ \caption@defrost}%
+% \end{macrocode}
+% Finally we call the original definition of |\endSC@FLOAT|.
+% \begin{macrocode}
+ \caption@setSC@justify % for compatibility mode
+ \caption@prepare@defrost
+ \caption@ORI@endSC@FLOAT}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+}{}
+% \end{macrocode}
+%
+% \subsection{The subfigure package}
+% \changes{v3.1}{2007/04/06}{subfigure package support added}
+%
+% \begin{macrocode}
+\caption@IfPackageLoaded{subfigure}[2002/01/23 v2.1]{%
+% \end{macrocode}
+%
+% \begin{macro}{\sf@ifpositiontop}
+% \changes{v3.1a}{2007/09/15}{Bugfix 07-09-15: Check for \cs{@captype} added}
+% If the \package{subfigure} package is loaded, we map |\sf@ifpositiontop|
+% to |\iffiguretopcap| resp. |\iftabletopcap|, so the \package{subfigure}
+% \version{2.1} options \opt{figbotcap} etc. will still work.
+% \begin{macrocode}
+ \def\sf@ifpositiontop{%
+ \ifx\@captype\@undefined
+ \expandafter\@gobbletwo
+ \else\ifx\@captype\relax
+ \expandafter\expandafter\expandafter\@gobbletwo
+ \else
+ \expandafter\expandafter\expandafter\sf@if@position@top
+ \fi\fi}
+% \end{macrocode}
+% \begin{macrocode}
+ \def\sf@if@position@top{%
+ \@ifundefined{if\@captype topcap}%
+ {\@gobbletwo}%
+ {\@nameuse{if\@captype topcap}%
+ \expandafter\@firstoftwo
+ \else
+ \expandafter\@secondoftwo
+ \fi}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+}{}
+% \end{macrocode}
+%
+% \subsection{The supertabular and xtab packages}
+%
+% \begin{macrocode}
+\caption@IfPackageLoaded{supertabular}[2002/07/19 v4.1e]{%
+% \end{macrocode}
+%
+% \begin{macro}{\tablecaption}
+% \changes{v3.0e}{2005/05/05}{Made \cs{topcaption*} and \cs{bottomcaption*} work}
+% \changes{v3.1h}{2008/04/01}{Bugfix: Star variant does not increment table counter anymore}
+% Make |\topcaption*| and |\bottomcaption*| work.
+% \begin{macrocode}
+ \renewcommand*\tablecaption{%
+ \caption@star
+ {\refstepcounter{table}}%
+ {\caption@dblarg{\@xtablecaption}}}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\@xtablecaption}
+% \changes{v3.1h}{2008/04/01}{Made \cs{nameref} \& \cs{autoref} work}
+% \changes{v3.1l}{2010/01/09}{Adapted to current version of nameref package}
+% \changes{v3.3}{2018/12/26}{Bugfix: Missing curly braces added}
+% Make |\nameref| and |\autoref| work.
+% \begin{macrocode}
+ \let\caption@ORI@xtablecaption\@xtablecaption
+ \long\def\@xtablecaption[#1]#2{%
+ \caption@gettitle{#2}%
+ \caption@ORI@xtablecaption[{#1}]{#2}}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\ST@caption}
+% \changes{v3.0a}{2004/01/23}{Bugfix: Missing \cs{par} added}
+% \changes{v3.1h}{2008/04/01}{Bugfix: \cs{@currentlabelname} will be set now}
+% The original code:
+% \begin{verbatim}
+% \long\def\ST@caption#1[#2]#3{\par%
+% \addcontentsline{\csname ext@#1\endcsname}{#1}%
+% {\protect\numberline{%
+% \csname the#1\endcsname}{\ignorespaces #2}}
+% \begingroup
+% \@parboxrestore
+% \normalsize
+% \if@topcaption \vskip -10\p@ \fi
+% \@makecaption{\csname fnum@#1\endcsname}{\ignorespaces #3}\par
+% \if@topcaption \vskip 10\p@ \fi
+% \endgroup}
+% \end{verbatim}%^^A
+% \begin{macrocode}
+ \long\def\ST@caption#1[#2]#3{\par%
+ \caption@settype*{#1}%
+ \caption@setoptions{supertabular}%
+% \end{macrocode}
+% The |position=| setting will be overwritten by the
+% \package{supertabular} package: If |\topcaption| was used,
+% the position will be |top| automatically, |bottom| otherwise.
+% \begin{macrocode}
+ \def\caption@fixposition{%
+ \caption@setposition{\if@topcaption t\else b\fi}}%
+% \end{macrocode}
+% \begin{macrocode}
+ \caption@beginex{#1}{#2}{#3}%
+ \caption@boxrestore
+ \caption@normalsize
+ \@makecaption{\csname fnum@#1\endcsname}{\ignorespaces #3}\par
+ \caption@end}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+}{}
+% \end{macrocode}
+%
+% \changes{v3.1h}{2008/04/01}{Support of the xtab package added}
+% \begin{macrocode}
+\caption@IfPackageLoaded{xtab}[2000/04/09 v2.3]{%
+% \end{macrocode}
+%
+% \begin{macro}{\tablecaption}
+% Make |\topcaption*| and |\bottomcaption*| work.
+% \begin{macrocode}
+ \renewcommand*\tablecaption{%
+ \caption@star
+ {\refstepcounter{table}}%
+ {\caption@dblarg{\@xtablecaption}}}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\@xtablecaption}
+% \changes{v3.1l}{2010/01/09}{Adapted to current version of nameref package}
+% \changes{v3.3}{2018/12/26}{Bugfix: Missing curly braces added}
+% Make |\nameref| and |\autoref| work.
+% \begin{macrocode}
+ \let\caption@ORI@xtablecaption\@xtablecaption
+ \long\def\@xtablecaption[#1]#2{%
+ \caption@gettitle{#2}%
+ \caption@ORI@xtablecaption[{#1}]{#2}}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\ST@caption}
+% The original code:
+% \begin{verbatim}
+% \long\def\ST@caption#1[#2]#3{\par%
+% \@initisotab
+% \addcontentsline{\csname ext@#1\endcsname}{#1}%
+% {\protect\numberline{%
+% \csname the#1\endcsname}{\ignorespaces #2}}%
+% \begingroup
+% \@parboxrestore
+% \normalsize
+% %% \if@topcaption \vskip -10\p@ \fi
+% \@makecaption{\csname fnum@#1\endcsname}{\ignorespaces #3}\par
+% %% \if@topcaption \vskip 10\p@ \fi
+% \endgroup
+% \global\advance\ST@pageleft -\PWSTcapht
+% \ST@trace\tw@{Added caption. Space left for xtabular: \the\ST@pageleft}}
+% \end{verbatim}%^^A
+% \begin{macrocode}
+ \long\def\ST@caption#1[#2]#3{\par%
+ \caption@settype*{#1}%
+ \caption@setoptions{xtabular}%
+% \end{macrocode}
+% \begin{macrocode}
+ \def\caption@fixposition{%
+ \caption@setposition{\if@topcaption t\else b\fi}}%
+% \end{macrocode}
+% \begin{macrocode}
+ \@initisotab
+ \caption@beginex{#1}{#2}{#3}%
+ \caption@boxrestore
+ \caption@normalsize
+ \@makecaption{\csname fnum@#1\endcsname}{\ignorespaces #3}\par
+ \caption@end
+ \global\advance\ST@pageleft -\PWSTcapht
+ \ST@trace\tw@{Added caption. Space left for xtabular: \the\ST@pageleft}}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+}{}
+% \end{macrocode}
+%
+% \subsection{The threeparttable package}
+% \changes{v3.1}{2007/05/08}{Support of the \package{threeparttable} package added}
+%
+% \begin{macrocode}
+\caption@IfPackageLoaded{threeparttable}[2003/06/13 v3.0]{%
+% \end{macrocode}
+%
+% \begin{macro}{\threeparttable}
+% \changes{v3.3}{2016/01/31}{Bugfix: \cs{@captype} will be used if already defined}
+% Unfortunately |\@captype| is not set when |\TPT@common| will be used,
+% so we have to redefine |\threeparttable| and |\measuredfigure| instead.
+% \begin{macrocode}
+ \let\caption@ORI@threeparttable\threeparttable
+ \renewcommand*\threeparttable{%
+ \caption@settype{\@ifundefined{@captype}{table}{\@captype}}%
+%%% \caption@setposition a% ?
+ \caption@clearmargin
+ \caption@setoptions{threeparttable}%
+ \caption@ORI@threeparttable}%
+% \end{macrocode}
+% \end{macro}
+% \begin{macro}{\measuredfigure}
+% \changes{v3.3}{2016/01/31}{Bugfix: \cs{@captype} will be used if already defined}
+% Same here\ldots
+% \begin{macrocode}
+ \let\caption@ORI@measuredfigure\measuredfigure
+ \renewcommand*\measuredfigure{%
+ \caption@settype{\@ifundefined{@captype}{figure}{\@captype}}%
+%%% \caption@setposition a% ?
+ \caption@clearmargin
+ \caption@setoptions{measuredfigure}%
+ \caption@ORI@measuredfigure}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\TPT@caption}
+% The original code:
+% \begin{verbatim}
+% \def\TPT@caption#1[#2]#3{\gdef\TPT@docapt
+% {\par\global\let\TPT@docapt\@undefined \TPT@LA@caption{#1}[{#2}]%
+% {\strut\ignorespaces#3\ifhmode\unskip\@finalstrut\strutbox\fi}}%
+% \ifx\TPT@hsize\@empty \let\label\TPT@gatherlabel \abovecaptionskip\z@skip
+% \else \TPT@docapt \fi \ignorespaces}
+% \end{verbatim}%^^A
+% \begin{macrocode}
+ \def\TPT@caption#1[#2]#3{%
+ \gdef\TPT@docapt{%
+ \global\let\TPT@docapt\@undefined
+ \caption@setautoposition\caption@TPT@position
+ \TPT@LA@caption{#1}[{#2}]{#3}}%
+ \ifx\TPT@hsize\@empty
+ \let\label\TPT@gatherlabel % Bug: does not work for measuredfigures
+ \gdef\caption@TPT@position{t}%
+ \g@addto@macro\TPT@docapt\caption@TPT@eatvskip
+ \else
+ \def\caption@TPT@position{b}%
+ \TPT@docapt
+ \fi
+ \ignorespaces}%
+% \end{macrocode}
+% \begin{macrocode}
+ %\newcommand*\caption@TPT@eatvskip{\vskip-.2\baselineskip}%
+ \def\caption@TPT@eatvskip#1\vskip{#1\@tempdima=}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+}{}
+% \end{macrocode}
+%
+% \subsection{The wrapfig package}
+% \changes{v3.1}{2007/05/05}{Support of the \package{wrapfig} package added}
+% \changes{v3.2d}{2011/11/02}{Support of the \package{wrapfig} package rewritten}
+%
+% \begin{macrocode}
+\caption@IfPackageLoaded{wrapfig}[2003/01/31 v3.6]{%
+% \end{macrocode}
+%
+% \begin{macro}{\wrapfloat}
+% \changes{v3.2d}{2011/11/02}{Redefinition of this macro added}
+% First of all we make the \package{wrapfig} package independent from the package
+% load order regarding the \package{float} package.
+% Since the usage of |\@float@set|\-|every| is missing in the code of the \package{wrapfig}
+% package (it should be in the redefinition of |\float@re|\-|style|, right after
+% |\@nameuse{fst@#1}|), we don't use it here, too,
+% especially since |\wrap|\-|float| will usually not be used when used with re-styled floats.
+% \begin{macrocode}
+ \renewcommand*\wrapfloat[1]{%
+ \def\@captype{#1}%
+ \@ifundefined{fst@#1}{}{%
+ \@nameuse{fst@#1}%
+% \@float@setevery{#1}%
+ \def\WF@floatstyhook{\let\@currbox\WF@box
+ \global\setbox\WF@box\float@makebox{\wd\WF@box}}}%
+ \@ifnextchar[\WF@wr{\WF@wr[]}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\WF@rapt}
+% \changes{v3.2d}{2011/11/02}{Usage of \cs{WF@captionstyhook} added}
+% Original code:
+% \begin{verbatim}
+% \def\WF@rapt[#1]#2{% final two args: #1 = overhang, #2 = width,
+% \gdef\WF@ovh{#1}% hold overhang for later, when \width is known
+% \global\setbox\WF@box\vtop\bgroup \setlength\hsize{#2}%
+% \ifdim\hsize>\z@ \@parboxrestore \else
+% \setbox\z@\hbox\bgroup \let\wf@@caption\caption \let\caption\wf@caption
+% \ignorespaces \fi}
+% \end{verbatim}%^^A
+% Our code has |\WF@captionstyhook| in addition:
+% \begin{macrocode}
+ \def\WF@rapt[#1]#2{% final two args: #1 = overhang, #2 = width,
+ \gdef\WF@ovh{#1}% hold overhang for later, when \width is known
+ \global\setbox\WF@box\vtop\bgroup \setlength\hsize{#2}%
+ \expandafter\WF@captionstyhook\expandafter{\@captype}% <= new
+ \ifdim\hsize>\z@ \@parboxrestore \else
+ \setbox\z@\hbox\bgroup \let\wf@@caption\caption \let\caption\wf@caption
+ \ignorespaces \fi}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\WF@captionstyhook}
+% \changes{v3.2d}{2011/11/02}{This macro added}
+% \changes{v3.2e}{2011/11/10}{Bugfix 11-11-09: float package support fixed}
+% We place our \package{hyperref} anchor here, apply the `wrap' options etc.
+% Since the usage of |\@float@set|\-|every| is missing in the \package{wrapfig}
+% package we will catch it up here for making the necessary adaptions to the
+% \package{float} package.
+% \begin{macrocode}
+ \def\WF@captionstyhook#1{%
+ \let\@captype\@undefined
+ \@ifundefined{fst@#1}{}{\@float@setevery{#1}}%
+ \caption@settype{#1}%
+ \caption@clearmargin
+%%% \caption@setoptions{wrap}%
+ \caption@setoptions{wrap#1}}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+}{}
+% \end{macrocode}
+%
+% \iffalse
+%</package>
+% \fi
+%
+% \iffalse
+% --------------------------------------------------------------------------- %
+% \fi
+%
+% \clearpage
+% \begin{thebibliography}{99}
+% \bibitem{beamer}
+% Till Tantau:\\
+% \href{http://www.ctan.org/pkg/beamer}%
+% {\emph{The beamer class, User Guide for version 3.25}},\\
+% December 26, 2012
+%
+% \bibitem{KOMAScript}
+% Markus Kohm \& Jens-Uwe-Morawski:\\
+% \href{http://www.ctan.org/pkg/koma-script}%
+% {\emph{KOMA-Script -- a versatile \LaTeXe\ bundle}},\\
+% 2012-07-22
+%
+% \bibitem{NTG}
+% Victor Eijkhout:\\
+% \href{http://www.ctan.org/pkg/ntgclass}%
+% {\emph{An introduction to the Dutch \LaTeX\ document classes}},\\
+% 3 September 1989
+%
+% \bibitem{float}
+% Anselm Lingnau:\\
+% \href{http://www.ctan.org/pkg/float}%
+% {\emph{An Improved Environment for Floats}},\\
+% 2001/11/08
+%
+% \bibitem{floatflt}
+% Mats Dahlgren:\\
+% \href{http://www.ctan.org/pkg/floatflt}%
+% {\emph{Welcome to the floatflt package}},\\
+% 1998/06/05
+%
+% \bibitem{floatrow}
+% Olga Lapko:\\
+% \href{http://www.ctan.org/pkg/floatrow}%
+% {\emph{The floatrow package documentation}},\\
+% 2009/08/02
+%
+% \bibitem{fltpage}
+% Sebastian Gross:\\
+% \href{http://www.ctan.org/pkg/fltpage}%
+% {\emph{Welcome to the beta test of fltpage package!}},\\
+% 1998/11/13
+%
+% \bibitem{hyperref}
+% Sebastian Rahtz \& Heiko Oberdiek:\\
+% \href{http://www.ctan.org/pkg/hyperref}%
+% {\emph{Hypertext marks in \LaTeX: a manual for hyperref}},\\
+% November 2012
+%
+% \bibitem{hypcap}
+% Heiko Oberdiek:\\
+% \href{http://www.ctan.org/pkg/oberdiek}%
+% {\emph{The hypcap package -- Adjusting anchors of captions}},\\
+% 2011/02/16
+%
+% \bibitem{listings}
+% Carsten Heinz \& Brooks Moses:\\
+% \href{http://www.ctan.org/pkg/listings}%
+% {\emph{The Listings Package}},\\
+% 2007/02/22
+%
+% \bibitem{longtable}
+% David Carlisle:\\
+% \href{http://www.ctan.org/pkg/longtable}%
+% {\emph{The longtable package}},\\
+% 2004/02/01
+%
+% \bibitem{picinpar}
+% Friedhelm Sowa:\\
+% \href{http://www.ctan.org/pkg/picinpar}%
+% {\emph{Pictures in Paragraphs}},\\
+% July 13, 1993
+%
+% \bibitem{picins}
+% Joachim Bleser and Edmund Lang:\\
+% \href{http://www.ctan.org/pkg/picins}%
+% {\emph{PicIns-Benutzerhandbuch Version 3.0}},\\
+% September~1992
+%
+% \bibitem{rotating}
+% Sebastian Rahtz and Leonor Barroca:\\
+% \href{http://www.ctan.org/pkg/rotating}%
+% {\emph{A style option for rotated objects in \LaTeX}},\\
+% 1997/09/26
+%
+% \bibitem{sidecap}
+% Rolf Niepraschk \& Hubert G\"a\ss lein:\\
+% \href{http://www.ctan.org/pkg/sidecap}%
+% {\emph{The sidecap package}},\\
+% 2003/06/06
+%
+% \bibitem{subfigure}
+% Steven D. Cochran:\\
+% \href{http://www.ctan.org/pkg/subfigure}%
+% {\emph{The subfigure package}},\\
+% 2005/03/15
+%
+% \bibitem{subfig}
+% Steven D. Cochran:\\
+% \href{http://www.ctan.org/pkg/subfig}%
+% {\emph{The subfig package}},\\
+% 2005/07/05
+%
+% \bibitem{supertabular}
+% Johannes Braams and Theo Jurriens:\\
+% \href{http://www.ctan.org/pkg/supertabular}%
+% {\emph{The supertabular environment}},\\
+% 2004/02/20
+%
+% \bibitem{threeparttable}
+% Donald Arseneau:\\
+% \href{http://www.ctan.org/pkg/threeparttable}%
+% {\emph{Three part tables: title, tabular environment, notes}},\\
+% March 5, 2010
+%
+% \bibitem{wrapfig}
+% Donald Arseneau:\\
+% \href{http://www.ctan.org/pkg/wrapfig}%
+% {\emph{WRAPFIG.STY ver 3.6}},\\
+% Jan 31, 2003
+%
+% \bibitem{xtab}
+% Peter Wilson:\\
+% \href{http://www.ctan.org/pkg/xtab}%
+% {\emph{The xtab package}},\\
+% 2011/07/31
+% \end{thebibliography}
+%
+% \iffalse
+% --------------------------------------------------------------------------- %
+% \fi
+%
+% \clearpage
+% \Finale
+%
+\endinput
diff --git a/macros/latex/contrib/caption/fallback/v3.4/caption3.dtx b/macros/latex/contrib/caption/fallback/v3.4/caption3.dtx
new file mode 100644
index 0000000000..2843145c18
--- /dev/null
+++ b/macros/latex/contrib/caption/fallback/v3.4/caption3.dtx
@@ -0,0 +1,4231 @@
+% \iffalse meta-comment
+%
+% This is file `caption3.dtx'.
+%
+% Copyright (C) 1994-2020 Axel Sommerfeldt (axel.sommerfeldt@f-m.fm)
+%
+% --------------------------------------------------------------------------
+%
+% This work may be distributed and/or modified under the
+% conditions of the LaTeX Project Public License, either version 1.3
+% of this license or (at your option) any later version.
+% The latest version of this license is in
+% http://www.latex-project.org/lppl.txt
+% and version 1.3 or later is part of all distributions of LaTeX
+% version 2003/12/01 or later.
+%
+% This work has the LPPL maintenance status "maintained".
+%
+% This Current Maintainer of this work is Axel Sommerfeldt.
+%
+% This work consists of the files
+% caption.ins, caption.dtx, caption2.dtx, caption3.dtx,
+% bicaption.dtx, ltcaption.dtx, subcaption.dtx,
+% the derived files
+% caption.sty, caption2.sty, caption3.sty,
+% bicaption.sty, ltcaption.sty, subcaption.sty,
+% and the user manuals
+% caption-deu.tex, caption-eng.tex, caption-rus.tex.
+%
+% \fi
+% \CheckSum{3607}
+%
+% \iffalse
+%<*driver>
+\NeedsTeXFormat{LaTeX2e}[1994/12/01]
+\ProvidesFile{caption3.drv}[2019/09/10 v1.13 Implementation of the caption kernel]
+\hbadness=9999 \newcount\hbadness \hfuzz=100pt % Make TeX shut up.
+%\errorcontextlines=3
+%
+\documentclass{ltxdoc}
+\setlength\parindent{0pt}
+\setlength\parskip{\smallskipamount}
+%
+\makeatletter % make room for subsections like 2.16.14 in the TOC
+%\newcommand*\l@subsection{\@dottedtocline{2}{1.5em}{2.3em}}
+\renewcommand*\l@subsection{\@dottedtocline{2}{1.5em}{2.7em}}
+\makeatother
+%
+\usepackage{ifpdf}
+\ifpdf
+ \usepackage{mathptmx,courier}
+ \usepackage[scaled=0.90]{helvet}
+ \addtolength\marginparwidth{15pt}
+\fi
+%
+\usepackage{hypdoc}
+\ifpdf\usepackage{hypdestopt}\fi
+\hypersetup{pdfkeywords={LaTeX, package, caption},pdfstartpage={},pdfstartview={}}
+%
+\usepackage{caption3}[2020/05/30]
+%
+\DeclareRobustCommand*\AmS{\texorpdfstring
+ {{\protect\usefont{OMS}{cmsy}{m}{n}A\kern-.1667em\lower.5ex\hbox{M}\kern-.125emS}}%
+ {AMS}}
+\DeclareRobustCommand*\KOMAScript{\texorpdfstring
+ {\textsf{K\kern.05em O\kern.05em M\kern.05em A\kern.1em-\kern.1em Script}}%
+ {KOMA-Script}}
+\DeclareRobustCommand*\NTG{NTG}
+\DeclareRobustCommand*\SmF{SMF}
+%
+\begin{document}
+ \DocInput{caption3.dtx}
+\end{document}
+%</driver>
+% \fi
+%
+% \newcommand*\purerm[1]{{\upshape\mdseries\rmfamily #1}}
+% \newcommand*\puresf[1]{{\upshape\mdseries\sffamily #1}}
+% \newcommand*\purett[1]{{\upshape\mdseries\ttfamily #1}}
+% \let\class\puresf \let\package\puresf
+% \let\env\purett \let\opt\purett
+%
+% \def\thispackage{the \package{caption} kernel}
+% \def\Thispackage{The \package{caption} kernel}
+%
+% \newcommand*\csmarg[1]{\texttt{\char`\{#1\char`\}}}
+% \newcommand*\csoarg[1]{\texttt{\char`\[#1\char`\]}}
+% \newcommand*\version[2][]{\textit{v#2}}
+%
+% \GetFileInfo{caption3.sty}
+%
+% \title{The Implementation of
+% \texorpdfstring{\thispackage\thanks{%^^A
+% This package has version number \fileversion, last revised \filedate.}}%^^A
+% {the caption kernel}}
+% \author{Axel Sommerfeldt\\
+% \url{https://gitlab.com/axelsommerfeldt/caption}}
+% \date{\filedate}
+% \maketitle
+%
+% \begin{abstract}
+% \Thispackage\ consists of two parts -- the kernel
+% (|caption3.sty|) and the main package (|caption.sty|).
+%
+% The kernel provides all the user commands and internal macros which are
+% necessary for typesetting captions and setting parameters regarding these.
+% While the standard \LaTeX\ document classes provide an internal command
+% called |\@makecaption| and no options to control its behavior (except the
+% vertical skips above and below the caption itself), we provide similar
+% commands called |\caption@make| and |\caption@@make|, but with a lot of
+% options which can be selected with |\captionsetup|.
+% Loading the kernel part do not change the output of a \LaTeX\ document
+% -- it just provides functionality which can be used by \LaTeXe\ packages
+% which typesets captions, for example the \package{caption} and
+% \package{subfig} packages.
+% \end{abstract}
+%
+% \StopEventually{}
+% \clearpage
+% \tableofcontents
+%
+% \iffalse
+% --------------------------------------------------------------------------- %
+% \fi
+%
+% \DoNotIndex{\\,\_,\ ,\@@par}
+% \DoNotIndex{\@bsphack}
+% \DoNotIndex{\@car,\@cdr,\@classoptionslist,\@cons,\@currext,\@currname}
+% \DoNotIndex{\@ehc,\@ehd,\@empty,\@esphack,\@expandtwoargs}
+% \DoNotIndex{\@for,\@firstofone,\@firstoftwo}
+% \DoNotIndex{\@gobble,\@gobblefour,\@gobbletwo,\@hangfrom}
+% \DoNotIndex{\if@minipage\@ifnextchar,\@ifpackagelater,\@ifpackageloaded}
+% \DoNotIndex{\@ifstar,\@ifundefined,\@latex@error,\@minipagefalse,\@minipagetrue}
+% \DoNotIndex{\@namedef,\@nameuse}
+% \DoNotIndex{\@onlypreamble,\@parboxrestore,\@plus,\@ptionlist}
+% \DoNotIndex{\@removeelement,\@restorepar,\@secondoftwo,\@setminipage,\@setpar}
+% \DoNotIndex{\@tempa,\@tempboxa,\@tempdima,\@tempdimb,\@tempdimc,\@tempb,\@tempc}
+% \DoNotIndex{\@testopt}
+% \DoNotIndex{\@undefined,\@unprocessedoptions,\@unusedoptionlist}
+% \DoNotIndex{\p@,\z@}
+% \DoNotIndex{\active,\addtocounter,\addtolength,\advance,\aftergroup}
+% \DoNotIndex{\baselineskip,\begin,\begingroup,\bfseries,\box}
+% \DoNotIndex{\catcode,\centering,\changes,\csname,\def,\divide,\do,\downarrow}
+% \DoNotIndex{\edef,\else,\empty,\end,\endcsname,\endgraf,\endgroup,\expandafter}
+% \DoNotIndex{\fi,\footnotesize,\global}
+% \DoNotIndex{\hangindent,\hbox,\hfil,\hsize,\hskip,\hspace,\hss}
+% \DoNotIndex{\ifcase,\ifdim,\ifnum,\ifodd,\ifvoid,\ifvmode}
+% \DoNotIndex{\ifx,\ignorespaces,\itshape}
+% \DoNotIndex{\Large,\large,\leavevmode,\leftmargini,\leftskip,\let,\linewidth}
+% \DoNotIndex{\llap,\long,\m@ne,\margin,\mdseries,\message}
+% \DoNotIndex{\newcommand,\newdimen,\newlength,\newline,\newif,\newsavebox}
+% \DoNotIndex{\next,\nobreak,\nobreakspace,\noexpand,\noindent,\numberline}
+% \DoNotIndex{\normalcolor,\normalfont,\normalsize,\or,\par,\parbox,\parfillskip}
+% \DoNotIndex{\parindent,\parskip,\prevdepth,\protect,\protected@edef,\protected@write}
+% \DoNotIndex{\providecommand,\quad}
+% \DoNotIndex{\raggedleft,\raggedright,\relax,\renewcommand,\RequirePackage}
+% \DoNotIndex{\rightskip,\rmfamily}
+% \DoNotIndex{\sbox,\scriptsize,\scshape,\setbox,\setlength,\sffamily,\slshape}
+% \DoNotIndex{\small,\string,\space,\strut}
+% \DoNotIndex{\textheight,\the,\toks@,\typeout,\ttfamily}
+% \DoNotIndex{\unvbox,\uparrow,\upshape,\usebox,\usepackage}
+% \DoNotIndex{\value,\vbox,\vsize,\vskip,\wd,\width,\z@skip}
+% \DoNotIndex{\AtBeginDocument,\AtEndOfPackage,\CurrentOption,\DeclareOption}
+% \DoNotIndex{\ExecuteOptions,\GenericWarning,\IfFileExists,\InputIfFileExists}
+% \DoNotIndex{\NeedsTeXFormat,\MessageBreak}
+% \DoNotIndex{\PackageError,\PackageInfo,\PackageWarning,\PackageWarningNoLine}
+% \DoNotIndex{\PassOptionsToPackage,\ProcessOptions,\ProvidesPackage}
+%
+% \iffalse
+% --------------------------------------------------------------------------- %
+% \fi
+%
+% \setlength{\parskip}{0pt plus 1pt}
+% \newcommand*\Note[2][Note]{\par{\small\emph{#1:} #2}\par}
+%
+% \changes{v1.0}{2003/12/20}{Rewritten; many new commands and features}
+% \changes{v1.0c}{2004/11/28}{Split into two packages:
+% \package{caption} \& \package{caption3}}
+%
+% \iffalse
+% --------------------------------------------------------------------------- %
+% \fi
+%
+% \clearpage
+%
+% \iffalse
+%<*package>
+% \fi
+%
+% \section{Identification}
+%
+% \begin{macrocode}
+\NeedsTeXFormat{LaTeX2e}[1994/12/01]
+\ProvidesPackage{caption3}[2020/07/29 v1.13 caption3 kernel (AR)]
+% \end{macrocode}
+%
+% \section{Workaround for bug in package \package{arabtex}}
+% \package{arabtex} re-defines \cs{@gobble} as not-long so the packages of the
+% \package{caption} package bundle are doomed to fail.
+% Since this fatal bug won't be fixed in \package{arabtex} but we are dependent on a
+% proper definition of \cs{@gobble}, \cs{@firstofone}, \cs{@firstoftwo}, \cs{@secondoftwo},
+% and so on we fix this here. (Sigh!)
+% \begin{macrocode}
+\providecommand\caption@FixArabTeX{%
+ \def\caption@tempa##1{}%
+ \ifx\caption@tempa\@gobble
+ \PackageInfo{caption3}{Fixing ArabTeX}%
+ \long\def\@gobble##1{}%
+ \fi}
+% \end{macrocode}
+% Do the fix now and at |\begin{document}|, in case \package{arabtex} will be loaded after \package{caption}.
+% \begin{macrocode}
+\caption@FixArabTeX
+\AtBeginDocument{%
+ \caption@FixArabTeX
+ \let\caption@FixArabTeX\@undefined}
+% \end{macrocode}
+%
+% \section{Generic helpers}
+%
+% \begin{macro}{\@nameundef}
+% This is the opposite to |\@namedef| which is offered by the \LaTeX\ kernel.
+% We use it to remove the definition of some commands and keyval options after
+% |\begin{document}| (to save \TeX\ memory) and to remove caption options defined
+% with |\captionsetup|\oarg{type}.
+% \begin{macrocode}
+\providecommand*\@nameundef[1]{%
+ \expandafter\let\csname #1\endcsname\@undefined}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\l@addto@macro}
+% \changes{v1.5}{2013/04/26}{Revised}
+% The \LaTeXe\ kernel offers the internal helper macro |\g@addto@macro| which
+% globally adds tokens to existing macros, like in |\AtBeginDocument|.
+% This is the same but it works local, not global.
+% \begin{macrocode}
+\begingroup\expandafter\expandafter\expandafter\endgroup
+\expandafter\ifx\csname currentgrouplevel\endcsname\relax
+ \PackageInfo{caption3}{TeX engine: TeX}
+ \let\caption@ifeTeX\@secondoftwo
+ \providecommand\l@addto@macro[2]{%
+ \begingroup
+ \toks@\expandafter{#1#2}%
+ \xdef\caption@addto@temp{\the\toks@}%
+ \endgroup
+ \let#1\caption@addto@temp}
+\else
+ \PackageInfo{caption3}{TeX engine: e-TeX}
+ \let\caption@ifeTeX\@firstoftwo
+ \providecommand\l@addto@macro[2]{%
+ \edef#1{\unexpanded\expandafter{#1#2}}}
+\fi
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\bothIfFirst}
+% \begin{macro}{\bothIfSecond}
+% |\bothIfFirst| tests if the first argument is not empty, |\bothIfSecond|
+% tests if the second argument is not empty. If yes both arguments get
+% typeset, otherwise none of them.
+% \begin{macrocode}
+\def\bothIfFirst#1#2{%
+ \protected@edef\caption@tempa{#1}%
+ \ifx\caption@tempa\@empty \else
+ #1#2%
+ \fi}
+% \end{macrocode}
+% \begin{macrocode}
+\def\bothIfSecond#1#2{%
+ \protected@edef\caption@tempa{#2}%
+ \ifx\caption@tempa\@empty \else
+ #1#2%
+ \fi}
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+%
+% \begin{macro}{\caption@ifundefined}
+% \changes{v1.3a}{2011/08/12}{This macro added}
+% \changes{v1.3b}{2011/08/18}{Made expandable}
+% Similar to \cs{@ifundefined} offered by the \LaTeX kernel,
+% but takes a macro as argument instead of a macro name.
+% \begin{macrocode}
+\newcommand*\caption@ifundefined[1]{%
+ \ifx#1\@undefined
+ \expandafter\@firstoftwo
+ \else\ifx#1\relax
+ \expandafter\expandafter\expandafter\@firstoftwo
+ \else
+ \expandafter\expandafter\expandafter\@secondoftwo
+ \fi\fi}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@ifdefined}
+% \changes{v1.8e}{2018/05/11}{This macro added}
+% Similar to \cs{@ifundefined} offered by the \LaTeX kernel,
+% but takes a macro as argument instead of a macro name.
+% \begin{macrocode}
+\newcommand*\caption@ifdefined[1]{%
+ \ifx#1\@undefined
+ \expandafter\@secondoftwo
+ \else\ifx#1\relax
+ \expandafter\expandafter\expandafter\@secondoftwo
+ \else
+ \expandafter\expandafter\expandafter\@firstoftwo
+ \fi\fi}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@ifinlist}
+% \changes{v1.1}{2007/07/29}{Rewritten}
+% This helper macro checks if the first argument is in the comma separated
+% list which is offered as second argument. So for example
+% \begin{quote}
+% |\caption@ifinlist{frank}{axel,frank,olga,steven}{yes}{no}|
+% \end{quote}
+% would expand to |yes|.
+% \begin{macrocode}
+\newcommand*\caption@ifinlist{%
+ \@expandtwoargs\caption@@ifinlist}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@@ifinlist[2]{%
+ \begingroup
+ \def\@tempa##1,#1,##2\@nil{%
+ \endgroup
+ \ifx\relax##2\relax
+ \expandafter\@secondoftwo
+ \else
+ \expandafter\@firstoftwo
+ \fi}%
+ \@tempa,#2,#1,\@nil}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@ifin@list}
+% \changes{v1.1}{2007/08/12}{This macro added}
+% |\caption@ifin@list|\marg{cmd}\marg{list entry}\marg{yes}\marg{no}
+% \begin{macrocode}
+\newcommand*\caption@ifin@list[2]{%
+ \caption@ifempty@list#1%
+ {\@secondoftwo}%
+ {\@expandtwoargs\caption@@ifinlist{#2}{#1}}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@g@addto@list}
+% \changes{v1.1}{2007/07/29}{This macro added}
+% |\caption@g@addto@list|\marg{cmd}\marg{list entry}
+% \begin{macrocode}
+\newcommand*\caption@g@addto@list[2]{%
+ \caption@ifempty@list#1{\gdef#1{#2}}{\g@addto@macro#1{,#2}}}
+% \end{macrocode}
+% \end{macro}
+% \begin{macro}{\caption@l@addto@list}
+% \changes{v1.1}{2007/07/29}{This macro added}
+% |\caption@l@addto@list|\marg{cmd}\marg{list entry}
+% \begin{macrocode}
+\newcommand*\caption@l@addto@list[2]{%
+ \caption@ifempty@list#1{\def#1{#2}}{\l@addto@macro#1{,#2}}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@g@removefrom@list}
+% \changes{v1.1}{2007/07/29}{This macro added}
+% |\caption@g@removefrom@list|\marg{cmd}\marg{list entry}
+% \begin{macrocode}
+\newcommand*\caption@g@removefrom@list[2]{%
+ \caption@l@removefrom@list#1{#2}%
+ \global\let#1#1}
+% \end{macrocode}
+% \end{macro}
+% \begin{macro}{\caption@l@removefrom@list}
+% \changes{v1.1}{2007/07/29}{This macro added}
+% |\caption@l@removefrom@list|\marg{cmd}\marg{list entry}\par
+% \Note[Caveat]{\meta{cmd} will be expanded during this process since
+% \cs{@removeelement} is using \cs{edef} to build the new list!}
+% \begin{macrocode}
+\newcommand*\caption@l@removefrom@list[2]{%
+ \caption@ifempty@list#1{}{\@expandtwoargs\@removeelement{#2}#1#1}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@for@list}
+% \changes{v1.1}{2007/07/29}{This macro added}
+% |\caption@for@list|\marg{cmd}\marg{code with \#1}
+% \begin{macrocode}
+\newcommand*\caption@for@list[2]{%
+ \caption@ifempty@list#1{}{%
+ \def\caption@tempb##1{#2}%
+ \@for\caption@tempa:=#1\do{%
+ \expandafter\caption@tempb\expandafter{\caption@tempa}}}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@ifempty@list}
+% \changes{v1.1}{2007/07/29}{This macro added}
+% |\caption@ifempty@list|\marg{cmd}\marg{true}\marg{false}
+% \begin{macrocode}
+\newcommand*\caption@ifempty@list[1]{%
+ \ifx#1\@undefined
+ \expandafter\@firstoftwo
+ \else\ifx#1\relax
+ \expandafter\expandafter\expandafter\@firstoftwo
+ \else\ifx#1\@empty
+ \expandafter\expandafter\expandafter\expandafter
+ \expandafter\expandafter\expandafter\@firstoftwo
+ \else
+ \expandafter\expandafter\expandafter\expandafter
+ \expandafter\expandafter\expandafter\@secondoftwo
+ \fi\fi\fi}
+% \end{macrocode}
+% \end{macro}
+%
+% \pagebreak[3]
+% \begin{macro}{\caption@setbool}
+% \begin{macro}{\caption@set@bool}
+% \changes{v1.1}{2007/04/05}{\cs{caption@set@bool}\marg{cmd}\marg{value} added}
+% \begin{macro}{\caption@ifbool}
+% \begin{macro}{\caption@undefbool}
+% For setting and testing boolean options we offer these three helper macros:
+% \begin{quote}
+% |\caption@setbool|\marg{name}\marg{value}\\
+% | |(with |value = false/true/no/yes/off/on/0/1|)\\
+% |\caption@ifbool|\marg{name}\marg{if-clause}\marg{else-clause}\\
+% |\caption@undefbool|\marg{name}
+% \end{quote}
+% \begin{macrocode}
+\newcommand*\caption@setbool[1]{%
+ \expandafter\caption@set@bool\csname caption@if#1\endcsname}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@set@bool[2]{%
+ \caption@ifinlist{#2}{1,true,yes,on}{%
+ \let#1\@firstoftwo
+ }{\caption@ifinlist{#2}{0,false,no,off}{%
+ \let#1\@secondoftwo
+ }{%
+ \caption@Error{Undefined boolean value `#2'}%
+ }}}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@ifbool[1]{\@nameuse{caption@if#1}}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@undefbool[1]{\@nameundef{caption@if#1}}
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+% \end{macro}
+% \end{macro}
+%
+% \begin{macro}{\caption@teststar}
+% \changes{v1.1}{2007/05/08}{This macro and its usage added}
+% \changes{v1.1e}{2007/10/28}{\cs{caption@teststar@} added}
+% |\caption@teststar|\marg{cmd}\marg{star arg}\marg{non-star arg}\\
+% |\caption@teststar@|\marg{cmd}\marg{star arg}\marg{non-star arg}
+% \begin{macrocode}
+\newcommand*\caption@teststar[3]{\@ifstar{#1{#2}}{#1{#3}}}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@teststar@[3]{%
+ \@ifstar{#1{#2}}{\caption@ifatletter{#1{#2}}{#1{#3}}}}
+\AtBeginDocument{\let\caption@teststar@\caption@teststar}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@ifatletter{%
+ \ifnum\the\catcode`\@=11
+ \expandafter\@firstoftwo
+ \else
+ \expandafter\@secondoftwo
+ \fi}
+\AtBeginDocument{\let\caption@ifatletter\@secondoftwo}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@withoptargs}
+% \changes{v1.1}{2007/08/12}{This macro added}
+% \changes{v1.5}{2012/04/09}{This macro revised}
+% |\caption@withoptargs|\marg{cmd}
+% \begin{macrocode}
+\newcommand*\caption@withoptargs[1]{%
+ \@ifstar
+ {\def\caption@tempa{*}\caption@@withoptargs{#1}}%
+ {\def\caption@tempa{}\caption@@withoptargs{#1}}}
+% \end{macrocode}
+% \begin{macrocode}
+\def\caption@@withoptargs#1{%
+ \@ifnextchar[%]
+ {\caption@@@withoptargs{#1}}%
+ {\caption@@@@withoptargs{#1}}}
+% \end{macrocode}
+% \begin{macrocode}
+\def\caption@@@withoptargs#1[#2]{%
+ \l@addto@macro\caption@tempa{[{#2}]}%
+ \caption@@withoptargs{#1}}
+% \end{macrocode}
+% \begin{macrocode}
+\def\caption@@@@withoptargs#1{%
+ \def\caption@tempb{#1}%
+ \expandafter\caption@tempb\expandafter{\caption@tempa}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@gobble}
+% \changes{v1.4}{2011/08/19}{This macro added}
+% |\caption@gobble*|\oarg{arg}\oarg{\ldots}\marg{arg}\par
+% Same as |\@gobble|, but gobbles optional arguments as well.
+% \begin{macrocode}
+\DeclareRobustCommand*\caption@gobble{%
+ \caption@withoptargs\@gobbletwo}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@AtBeginDocument}
+% \changes{v1.1}{2007/04/13}{This macro and its usage added}
+% \changes{v1.2e}{2010/01/09}{Adapted to the combine document class}
+% |\caption@AtBeginDocument*|\marg{code}\\
+% Same as |\AtBeginDocument| but the execution of code
+% will be surrounded by two |\PackageInfo|s.
+% The starred variant causes the code to be executed after all code
+% specified using the non-starred variant.
+% \begin{macrocode}
+\let\caption@begindocumenthook\@empty
+\let\caption@@begindocumenthook\@empty
+% \end{macrocode}
+% \begin{macrocode}
+\def\caption@AtBeginDocument{%
+ \caption@teststar\g@addto@macro
+ \caption@@begindocumenthook\caption@begindocumenthook}
+%\@onlypreamble\caption@AtBeginDocument
+% \end{macrocode}
+% \begin{macrocode}
+\AtBeginDocument{%
+ \caption@InfoNoLine{Begin \noexpand\AtBeginDocument code}%
+% \end{macrocode}
+% \begin{macrocode}
+ \def\caption@AtBeginDocument{%
+ \@ifstar{\g@addto@macro\caption@@begindocumenthook}\@firstofone}%
+ \caption@begindocumenthook
+ \let\caption@begindocumenthook\relax
+% \end{macrocode}
+% \begin{macrocode}
+ \def\caption@AtBeginDocument{%
+ \@ifstar\@firstofone\@firstofone}%
+ \caption@@begindocumenthook
+ \let\caption@@begindocumenthook\relax
+% \end{macrocode}
+% \begin{macrocode}
+ \caption@InfoNoLine{End \noexpand\AtBeginDocument code}}
+% \end{macrocode}
+% \end{macro}
+%
+% \section{Information, Warnings, and Errors}
+%
+% \begin{macro}{\caption@Info}
+% \changes{v1.3}{2010/10/25}{Moved from package to kernel}
+% |\caption@Info|\marg{message}
+% \begin{macrocode}
+\newcommand*\caption@Info[1]{%
+ \PackageInfo{caption}{#1}}
+% \end{macrocode}
+% \end{macro}
+% \begin{macro}{\caption@InfoNoLine}
+% \changes{v1.3}{2010/10/25}{Moved from package to kernel}
+% |\caption@InfoNoLine|\marg{message}\\
+% \Note{The \cs{@gobble} at the end of the 2nd argument of
+% \cs{PackageInfo} suppresses the line number info.
+% See TLC2\cite{TLC2}, A.4.7, p885 for details.}
+% \begin{macrocode}
+\newcommand*\caption@InfoNoLine[1]{%
+ \caption@Info{#1\@gobble}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@Warning}
+% \changes{v1.1c}{2007/10/14}{This macro added, will now be used for warnings}
+% |\caption@Warning|\marg{message}
+% \begin{macrocode}
+\newcommand*\caption@Warning[1]{%
+ \caption@WarningNoLine{#1\on@line}}
+% \end{macrocode}
+% \end{macro}
+% \begin{macro}{\caption@WarningNoLine}
+% \changes{v1.1c}{2007/10/14}{This macro added, will now be used for warnings}
+% |\caption@WarningNoLine|\marg{message}
+% \begin{macrocode}
+\newcommand*\caption@WarningNoLine[1]{%
+ \PackageWarning{caption}{#1.^^J\caption@wh\@gobbletwo}}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@wh{%
+ See the caption package documentation for explanation.}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@Error}
+% \changes{v1.0j}{2007/01/20}{This macro added, will now be used for errors}
+% \changes{v1.0o}{2007/04/11}{Renamed from \cs{caption@error} to \cs{caption@Error}}
+% \changes{v1.1b}{2007/09/18}{Usage of \cs{caption@Package} removed}
+% |\caption@Error|\marg{message}
+% \begin{macrocode}
+\newcommand*\caption@Error[1]{%
+ \PackageError{caption}{#1}\caption@eh}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@eh{%
+ If you do not understand this error, please take a closer look\MessageBreak
+ at the documentation of the `caption' package, especially the\MessageBreak
+ section about errors.\MessageBreak\@ehc}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@KV@err}
+% \changes{v1.1b}{2007/09/18}{This macro added}
+% \begin{macrocode}
+\let\caption@KV@err\caption@Error
+% \end{macrocode}
+% \end{macro}
+%
+% \section{Using the keyval package}
+%
+% We need the \package{keyval} package for option handling, so we load it here.
+% \begin{macrocode}
+\RequirePackage{keyval}[1997/11/10]
+% \end{macrocode}
+%
+% \begin{macro}{\undefine@key}
+% |\undefine@key|\marg{family}\marg{key}\par
+% This helper macro is the opposite of |\define@key|, it removes a keyval
+% definition.
+% \begin{macrocode}
+\providecommand*\undefine@key[2]{%
+ \@nameundef{KV@#1@#2}\@nameundef{KV@#1@#2@default}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\@onlypreamble@key}
+% \changes{v1.1}{2007/07/22}{This macro added}
+% \changes{v1.1e}{2007/11/01}{\cs{KV@err} will be used now instead of \cs{@notprerr}}
+% |\onlypreamble@key|\marg{family}\marg{key}\par
+% Analogous to |\@onlypreamble| from \LaTeXe.
+% \begin{macrocode}
+\providecommand*\@preamble@keys{}
+\providecommand*\@onlypreamble@key[2]{\@cons\@preamble@keys{{#1}{#2}}}
+\@onlypreamble\@onlypreamble@key
+\@onlypreamble\@preamble@keys
+% \end{macrocode}
+% \begin{macrocode}
+\providecommand*\@notprerr@key[1]{\KV@err{Can be used only in preamble}}
+% \end{macrocode}
+% \begin{macrocode}
+\caption@AtBeginDocument*{%
+ \def\@elt#1#2{\expandafter\let\csname KV@#1@#2\endcsname\@notprerr@key}%
+ \@preamble@keys
+ \let\@elt\relax}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\DeclareCaptionOption}
+% |\DeclareCaptionOption|\marg{option}\oarg{default value}\marg{code}\\
+% |\DeclareCaptionOption*|\marg{option}\oarg{default value}\marg{code}\par
+% We declare our options using these commands (instead of using
+% |\DeclareOption| offered by \LaTeXe), so the keyval package is used.
+% The starred form makes the option available during the lifetime of the
+% current package only, so they can be used with |\usepackage|, but
+% \emph{not} with |\captionsetup| later on.
+% \begin{macrocode}
+\newcommand*\DeclareCaptionOption{%
+ \caption@teststar\caption@declareoption\AtEndOfPackage\@gobble}
+\@onlypreamble\DeclareCaptionOption
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@declareoption[2]{%
+ #1{\undefine@key{caption}{#2}}\caption@declare@option{#2}}
+\@onlypreamble\caption@declareoption
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@declare@option{%
+ \define@key{caption}}
+%% no \@onlypreamble\caption@declare@option, will be used by \captionsetup
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\DeclareCaptionOptionNoValue}
+% \changes{v1.1c}{2007/10/06}{This macro added}
+% |\DeclareCaptionOptionNoValue|\marg{option}\marg{code}\\
+% |\DeclareCaptionOptionNoValue*|\marg{option}\marg{code}\par
+% Same as \cs{DeclareCaptionOption} but issues an error if a value is given.
+% \begin{macrocode}
+\newcommand*\DeclareCaptionOptionNoValue{%
+ \caption@teststar\caption@declareoption@novalue\AtEndOfPackage\@gobble}
+\@onlypreamble\DeclareCaptionOptionNoValue
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand\caption@declareoption@novalue[3]{%
+ \caption@declareoption{#1}{#2}[\KV@err]{%
+ \caption@option@novalue{#2}{##1}{#3}}}
+\@onlypreamble\caption@declareoption@novalue
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@option@novalue[2]{%
+ \ifx\KV@err#2%
+ \expandafter\@firstofone
+ \else
+ \KV@err{No value allowed for #1}%
+ \expandafter\@gobble
+ \fi}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\ifcaptionsetup@star}
+% \changes{v1.2a}{2008/01/12}{This macro added}
+% If the starred form of |\captionsetup| is used, this will be set to |true|.
+% (It will be reset to |false| at the end of |\caption@setkeys|.)
+% \begin{macrocode}
+\newif\ifcaptionsetup@star
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\captionsetup}
+% \changes{v1.0a}{2004/01/17}{Bugfix: Missing \% added}
+% \changes{v1.1}{2007/07/22}{Starred-variant added}
+% \changes{v1.1e}{2007/07/27}{Inside packages the starred variant will be used automatically}
+% \changes{v1.2}{2007/11/16}{Bugfix 07-11-09: `space hack' added}
+% \changes{v1.2a}{2008/01/12}{\cs{ifcaptionsetup@star} will be set now}
+% \changes{v1.5}{2012/04/09}{Support of multiple optional arguments added}
+% \changes{v1.8h}{2020/01/03}{Syntax check of saved options added}
+% |\captionsetup|\oarg{type}\ldots\marg{keyval-list of options}\\
+% |\captionsetup*|\oarg{type}\ldots\marg{keyval-list of options}\par
+% If the optional argument `type' is specified, we simply save or append
+% the option list, otherwise we `execute' it with |\setkeys|.
+% (The non-starred variant issues a warning if \meta{keyval-list of options}
+% is not used later on.)
+% \Note{The starred variant will be used inside packages automatically.}
+% \begin{macrocode}
+\newcommand*\captionsetup{%
+ \caption@teststar@\@captionsetup\@gobble\@firstofone}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\@captionsetup[1]{%
+ \captionsetup@startrue#1\captionsetup@starfalse
+ \@ifnextchar[%]
+ \caption@setup@options\caption@setup}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@setup{\caption@setkeys{caption}}
+% \end{macrocode}
+% \begin{macrocode}
+\def\caption@setup@options[#1]{%
+ \@ifnextchar[%]
+ {\caption@stepthecounter
+ \caption@withoptargs{\@expandtwoargs
+ \caption@setup@options@i{#1}{@\caption@thecounter}}}%
+ {\caption@setup@options@{#1}}}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@setup@options@i[4]{%
+ \caption@declare@option{#2}[]{\captionsetup#3{#4}}%
+ \caption@setup@options@{#1}{#2}}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@setup@options@[2]{%
+ \@bsphack
+ \ifcaptionsetup@star\captionsetup@starfalse\else\caption@addtooptlist{#1}\fi
+ \caption@checkoptions{#2}%
+ \expandafter\caption@l@addto@list\csname caption@opt@#1\endcsname{#2}%
+ \@esphack}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@checkoptions}
+% \changes{v1.8h}{2020/01/03}{This macro added}
+% Check the syntax of the given options by executing them inside a group.
+% \begin{macrocode}
+\newcommand*\caption@checkoptions[1]{%
+ \begingroup
+ \caption@prepare@optioncheck
+ \caption@setup{#1}%
+ \endgroup}
+% \end{macrocode}
+% \begin{macrocode}
+\providecommand*\caption@prepare@optioncheck{}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\IfCaptionOptionCheck}
+% \changes{v1.10}{2020/05/10}{This macro added}
+% |\IfCaptionOptionCheck|\marg{yes-code}\marg{no-code}
+% executes the \meta{yes-code} if options are just checked for syntax, and \meta{no-code} if not.
+% \begin{macrocode}
+\let\IfCaptionOptionCheck\@secondoftwo
+% \end{macrocode}
+% \begin{macrocode}
+\g@addto@macro\caption@prepare@optioncheck{%
+ \let\IfCaptionOptionCheck\@firstoftwo}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\clearcaptionsetup}
+% \changes{v1.1}{2007/07/29}{Optional argument added}
+% \changes{v1.1}{2007/08/17}{Starred variant added}
+% \changes{v1.1e}{2007/07/27}{Inside packages the starred variant will be used automatically}
+% \changes{v1.2}{2007/11/16}{Bugfix 07-11-09: `space hack' added}
+% |\clearcaptionsetup|\oarg{option}\marg{type}\\
+% |\clearcaptionsetup*|\oarg{option}\marg{type}\par
+% This removes the saved option list associated with \meta{type}.
+% If \meta{option} is given, only this option will be removed from the list.
+% (The starred variant does not issue warnings.)
+% \Note{The starred variant will be used inside packages automatically.}
+% \begin{macrocode}
+\newcommand*\clearcaptionsetup{%
+ \caption@teststar@\@clearcaptionsetup\@gobble\@firstofone}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\@clearcaptionsetup[1]{%
+ \let\caption@tempa#1%
+ \@testopt\@@clearcaptionsetup{}}
+% \end{macrocode}
+% \begin{macrocode}
+\def\@@clearcaptionsetup[#1]#2{%
+ \@bsphack
+ \expandafter\caption@ifempty@list\csname caption@opt@#2\endcsname
+ {\caption@tempa{\caption@Warning{Option list `#2' undefined}}}%
+ {\ifx,#1,%
+ \caption@clearsetup{#2}%
+ \else
+ \caption@@removefromsetup{#1}{#2}%
+ \fi}%
+ \@esphack}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@clearsetup[1]{%
+ \caption@removefromoptlist{#1}%
+ \@nameundef{caption@opt@#1}}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@removefromsetup{%
+ \let\caption@tempa\@gobble
+ \caption@@removefromsetup}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@@removefromsetup[2]{%
+ \expandafter\let\expandafter\@tempa\csname caption@opt@#2\endcsname
+ \expandafter\let\csname caption@opt@#2\endcsname\@undefined
+ \def\@tempb##1=##2\@nil{##1}%
+ \edef\@tempc{#1}%
+ \@for\@tempa:=\@tempa\do{%
+ \edef\@tempd{\expandafter\@tempb\@tempa=\@nil}%
+ \ifx\@tempd\@tempc
+ \let\caption@tempa\@gobble
+ \else
+ \expandafter\expandafter\expandafter\caption@l@addto@list
+ \expandafter\csname caption@opt@#2\expandafter\endcsname
+ \expandafter{\@tempa}%
+ \fi}%
+ \expandafter\caption@ifempty@list\csname caption@opt@#2\endcsname
+ {\caption@removefromoptlist{#2}}{}%
+ \caption@tempa{\caption@Warning{%
+ Option `#1' was not in list `#2'}}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\showcaptionsetup}
+% \changes{v1.0d}{2005/05/03}{Optimized for memory usage}
+% \changes{v1.1}{2007/07/29}{Bugfix: Does not expand option list anymore}
+% \changes{v1.2}{2007/11/16}{Bugfix 07-11-09: `space hack' added}
+% |\showcaptionsetup|\oarg{package}\marg{type}\par
+% This comes for debugging issues: It shows the saved option list which
+% is associated with \meta{type}.
+% \begin{macrocode}
+\newcommand*\showcaptionsetup[2][\@firstofone]{%
+ \@bsphack
+ \GenericWarning{}{%
+ #1 Caption Info: Option list on `#2'\MessageBreak
+ #1 Caption Data: \@ifundefined{caption@opt@#2}{%
+ -none-%
+ }{%
+ {\expandafter\expandafter\expandafter\strip@prefix
+ \expandafter\meaning\csname caption@opt@#2\endcsname}%
+ }}%
+ \@esphack}
+% \end{macrocode}
+% \end{macro}
+%
+% \changes{v1.1}{2007/07/02}{Option \opt{options=} added}
+% \changes{v1.3}{2010/09/05}{Option \opt{options*=} added}
+% \changes{v1.4b}{2012/01/12}{Option \opt{options*=} removed}
+% \begin{macrocode}
+\DeclareCaptionOption{options}{\caption@setoptions{#1}}
+% \end{macrocode}
+%
+% \begin{macro}{\caption@setoptions}
+% \changes{v1.0g}{2006/01/03}{Optional argument added}
+% \changes{v1.0h}{2006/01/26}{Revised}
+% \changes{v1.0j}{2007/01/30}{Optional argument removed}
+% \changes{v1.1}{2007/04/11}{Usage of \cs{clearcaptionsetup} added}
+% \changes{v1.1}{2007/05/09}{Renamed from \cs{caption@settype} to \cs{caption@setoptions}}
+% \changes{v1.2}{2007/12/03}{Definition of \cs{caption@iftypewarning} removed}
+% \changes{v1.3}{2010/09/05}{Starred variant added}
+% \changes{v1.4b}{2012/01/12}{Starred variant removed}
+% |\caption@setoptions|\marg{type or environment or\ldots}\par
+% Caption options which have been saved with |\captionsetup|\oarg{type} can
+% be executed by using this command.
+% It simply executes the saved option list (and clears it afterwards),
+% if there is any.
+% \iffalse
+% (The starred variant do not clear the option list.)
+% \fi
+% \begin{macrocode}
+\newcommand*\caption@setoptions[1]{%
+ \caption@Debug{options=#1}%
+ \expandafter\let\expandafter\caption@opt\csname caption@opt@#1\endcsname
+ \ifx\caption@opt\relax \else
+ \caption@xsetup\caption@opt
+ \caption@clearsetup{#1}%
+ \fi}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@xsetup[1]{\expandafter\caption@setup\expandafter{#1}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@addtooptlist}
+% \changes{v1.1}{2007/07/22}{This macro added}
+% \begin{macro}{\caption@removefromoptlist}
+% \changes{v1.1}{2007/07/22}{This macro added}
+% \changes{v1.2c}{2008/08/24}{Fatal typo corrected}
+% |\caption@addtooptlist|\marg{type}\\
+% |\caption@removefromoptlist|\marg{type}\par
+% Adds or removes an \meta{type} to the list of unused caption options.
+% Note that the catcodes of \meta{type} are sanitized here so removing
+% \meta{type} from the list do not fail when the \package{float} package
+% is used (since |\float@getstyle| gives a result which tokens have catcode
+% 12 $=$ ``other'').
+% \begin{macrocode}
+\newcommand*\caption@addtooptlist[1]{%
+ \@ifundefined{caption@opt@#1@lineno}{%
+ \caption@dooptlist\caption@g@addto@list{#1}%
+ \expandafter\xdef\csname caption@opt@#1@lineno\endcsname{\the\inputlineno}%
+ }{}}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@removefromoptlist[1]{%
+ \caption@dooptlist\caption@g@removefrom@list{#1}%
+ \global\expandafter\let\csname caption@opt@#1@lineno\endcsname\@undefined}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@dooptlist[2]{%
+ \begingroup
+ \edef\@tempa{#2}\@onelevel@sanitize\@tempa
+ \expandafter#1\expandafter\caption@optlist\expandafter{\@tempa}%
+ \endgroup}
+% \end{macrocode}
+% \begin{macrocode}
+\AtEndDocument{%
+ \caption@for@list\caption@optlist{%
+ \caption@WarningNoLine{%
+ Unused \string\captionsetup[#1]
+ on input line \csname caption@opt@#1@lineno\endcsname}}}
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+%
+% \begin{macro}{\caption@setkeys}
+% \changes{v1.0g}{2006/01/03}{This macro added}
+% \changes{v1.0j}{2007/01/20}{Bugfix: Usage of \cs{caption@keydepth} added}
+% \changes{v1.0j}{2007/01/30}{Optional argument added}
+% \changes{v1.0n}{2007/04/08}{\cs{caption@keydepth} is now a command instead of a counter}
+% \changes{v1.1b}{2007/09/18}{Usage of \cs{caption@Package} removed, we use \cs{caption@KV@err} instead}
+% \changes{v1.2}{2007/11/16}{Bugfix 07-11-09: `space hack' added}
+% \changes{v1.2a}{2008/01/12}{\cs{captionsetup@starfalse} added}
+% \changes{v1.2d}{2009/09/30}{Bugfix 09-09-29: Missing error handler will be defined automatically}
+% \changes{v1.4}{2011/08/24}{Redefinition of \cs{XKV@err} added}
+% |\caption@setkeys|\oarg{package}\marg{family}\marg{key-values}\par
+% This one simply calls |\setkeys|\marg{family}\marg{key-values}
+% but lets the error messages not refer to the \package{keyval} package,
+% but to the \meta{package} package instead.
+% \begin{macrocode}
+\newcommand*\caption@setkeys{\@dblarg\caption@@setkeys}
+% \end{macrocode}
+% \begin{macrocode}
+\long\def\caption@@setkeys[#1]#2#3{%
+ \@bsphack
+% \end{macrocode}
+% \begin{macrocode}
+ \expandafter\let\csname ORI@KV@err\caption@keydepth\endcsname\KV@err
+ \expandafter\let\csname ORI@KV@errx\caption@keydepth\endcsname\KV@errx
+ \expandafter\let\csname ORI@XKV@err\caption@keydepth\endcsname\XKV@err
+ \edef\caption@keydepth{\caption@keydepth i}%
+% \end{macrocode}
+% \begin{macrocode}
+ \expandafter\let\expandafter\KV@err\csname #1@KV@err\endcsname
+ \ifx\KV@err\relax
+ \def\KV@err##1{\PackageError{#1}{##1}{%
+ See the #1 package documentation for explanation.}}%
+ \fi
+ \def\KV@errx{\KV@err}%
+ \def\XKV@err{\let\@tempa\XKV@tkey\KV@err}%
+% \end{macrocode}
+% \begin{macrocode}
+ \caption@Debug{\protect\setkeys{#2}{#3}}%
+ \setkeys{#2}{#3}%
+% \end{macrocode}
+% \begin{macrocode}
+ \edef\caption@keydepth{\expandafter\@gobble\caption@keydepth}%
+ \expandafter\let\expandafter\KV@err\csname ORI@KV@err\caption@keydepth\endcsname
+ \expandafter\let\expandafter\KV@errx\csname ORI@KV@errx\caption@keydepth\endcsname
+ \expandafter\let\expandafter\XKV@err\csname ORI@XKV@err\caption@keydepth\endcsname
+% \end{macrocode}
+% \begin{macrocode}
+ \ifx\caption@keydepth\@empty \captionsetup@starfalse \fi
+% \end{macrocode}
+% \begin{macrocode}
+ \@esphack}
+% \end{macrocode}
+% \begin{macrocode}
+\let\caption@keydepth\@empty
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@ExecuteOptions}
+% \changes{v1.1}{2007/07/15}{This macro added}
+% \changes{v1.3}{2010/09/04}{Depends on package now}
+% |\caption@ExecuteOptions|\marg{package}\marg{key-values}\par
+% We execute our options using the keyval interface, so we use this one
+% instead of |\ExecuteOptions| offered by \LaTeXe.
+% \begin{macrocode}
+\newcommand*\caption@ExecuteOptions[2]{%
+ \expandafter\@expandtwoargs\csname caption@setkeys@#1\endcsname{#1}{#2}}%
+\@onlypreamble\caption@ExecuteOptions
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@ProcessOptions}
+% \changes{v1.0a}{2004/01/23}{Bugfix, see
+% \purett{news:400D360C.9678329F@gmx.net} for details}
+% \changes{v1.0g}{2006/01/03}{Improvement, uses \cs{caption@setkeys}
+% instead of \cs{setkeys}}
+% \changes{v1.0h}{2006/02/23}{Bugfix, now processes only those global
+% options which have a default value}
+% \changes{v1.0j}{2007/01/30}{\cs{ProcessOptionsWithKV} renamed to
+% \cs{caption@ProcessOptions} and moved from the package to the kernel}
+% \changes{v1.1}{2007/04/17}{Star variant added}
+% |\caption@ProcessOptions*|\marg{package}\par
+% We process our options using the keyval package, so we use this one
+% instead of |\ProcessOptions| offered by \LaTeXe.
+% The starred variant do not process the global options.
+% (This code was taken from the \package{hyperref} package\cite{hyperref}
+% \version{6.74} and improved.)
+% \begin{macrocode}
+\newcommand*\caption@ProcessOptions{%
+ \caption@teststar\caption@@ProcessOptions\@gobble\@firstofone}
+\@onlypreamble\caption@ProcessOptions
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand\caption@@ProcessOptions[2]{%
+ \let\@tempc\relax
+ \let\caption@tempa\@empty
+ #1{% \@firstofone -or- \@gobble
+ \@for\CurrentOption:=\@classoptionslist\do{%
+ \@ifundefined{KV@#2@\CurrentOption}{}{%
+ \@ifundefined{KV@#2@\CurrentOption @default}{%
+ \PackageInfo{#2}{Global option `\CurrentOption' ignored}%
+ }{%
+ \PackageInfo{#2}{Global option `\CurrentOption' processed}%
+ \edef\caption@tempa{\caption@tempa\CurrentOption,}%
+ \@expandtwoargs\@removeelement\CurrentOption
+ \@unusedoptionlist\@unusedoptionlist
+ }%
+ }%
+ }%
+ \let\CurrentOption\@empty
+ }%
+ \caption@ExecuteOptions{#2}{\caption@tempa\@ptionlist{\@currname.\@currext}}%
+ \AtEndOfPackage{\let\@unprocessedoptions\relax}}
+\@onlypreamble\caption@@ProcessOptions
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@SetupOptions}
+% \changes{v1.3}{2010/09/04}{This macro added}
+% |\caption@SetupOptions|\marg{package}\marg{code}\par
+% After calling this macro |\caption@ExecuteOptions| and
+% |\usepackage|\oarg{options}\marg{package}
+% will both be mapped to \meta{code} with \meta{package} and \meta{options}
+% as arguments |#1| and |#2|. (This helps avoiding ``Option clash'' errors.)
+% \begin{macrocode}
+\newcommand\caption@SetupOptions[2]{%
+ \@namedef{caption@setkeys@#1}##1##2{#2}%
+ \expandafter\@onlypreamble\csname caption@setkeys@#1\endcsname
+ \@cons\caption@SetupOptions@list{{#1}}}
+\@onlypreamble\caption@SetupOptions
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@SetupOptions@list{}
+\@onlypreamble\caption@SetupOptions@list
+% \end{macrocode}
+% \begin{macrocode}
+\let\caption@onefilewithoptions\@onefilewithoptions
+\def\@onefilewithoptions#1[#2]{%
+ \begingroup
+ \def\@tempa{%
+ \endgroup
+ \caption@onefilewithoptions{#1}[{#2}]}%
+ \def\@tempb{#1}%
+ \def\@elt##1{%
+ \def\@tempc{##1}%
+ \ifx\@tempb\@tempc
+ \def\@tempa{%
+ \endgroup
+ \caption@ExecuteOptions{#1}{#2}%
+ \caption@onefilewithoptions{#1}[]}%
+ \fi}
+ \caption@SetupOptions@list
+ \@tempa}
+\@onlypreamble\caption@onefilewithoptions
+% \end{macrocode}
+% \end{macro}
+%
+% \section{Margin resp. width}
+% \changes{v1.0n}{2007/04/01}{\cs{captionmarginx} renamed to \cs{captionmargin@}}
+% \changes{v1.0n}{2007/04/03}{Option `twoside' added}
+% \changes{v1.1}{2007/08/11}{Options `margin*', `minmargin', and `maxmargin' added}
+% \changes{v1.2}{2007/11/10}{Option `oneside' added}
+%
+% \begin{macro}{\captionmargin}
+% \begin{macro}{\captionwidth}
+% |\captionmargin| and |\captionwidth| contain the extra margin
+% resp. the total width used for captions. Please never set these values in
+% a direct way, they are just accessible in user documents to provide
+% compatibility to \version{1.x}.\par
+% Note that we can only set one value at a time, `margin' \emph{or} `width'.
+% If |\captionwidth| is not zero we will take this value afterwards,
+% otherwise |\captionmargin| and |\captionmargin@|.
+% \begin{macrocode}
+\newdimen\captionmargin
+\newdimen\captionmargin@
+\newdimen\captionwidth
+\newdimen\caption@tempdima
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+%
+% \begin{macrocode}
+\DeclareCaptionOption{margin}{\setcaptionmargin{#1}}
+\DeclareCaptionOption{margin*}{\setcaptionmargin*{#1}}
+\DeclareCaptionOption{width}{\setcaptionwidth{#1}}
+\DeclareCaptionOption{width*}{\setcaptionwidth*{#1}}
+% \end{macrocode}
+% \begin{macrocode}
+\DeclareCaptionOption{calcmargin}{\caption@setcalcmargin{#1}}
+\DeclareCaptionOption{calcmargin*}{\caption@setcalcmargin*{#1}}
+\DeclareCaptionOption{calcwidth}{\caption@setcalcwidth{#1}}
+\DeclareCaptionOption{calcwidth*}{\caption@setcalcwidth*{#1}}
+% \end{macrocode}
+% \begin{macrocode}
+\DeclareCaptionOption{twoside}[1]{\caption@set@bool\caption@iftwoside{#1}}
+\DeclareCaptionOptionNoValue{oneside}{\caption@set@bool\caption@iftwoside0}
+% \end{macrocode}
+% \begin{macrocode}
+\DeclareCaptionOption{minmargin}{\caption@setoptcmd\caption@minmargin{#1}}
+\DeclareCaptionOption{maxmargin}{\caption@setoptcmd\caption@maxmargin{#1}}
+% \end{macrocode}
+%
+% \begin{macro}{\setcaptionmargin}
+% \changes{v1.0f}{2005/10/24}{Renamed from \cs{caption@setmargin} to \cs{setcaptionmargin}}
+% \changes{v1.0f}{2005/10/24}{\cs{setcaptionmargin} enhanced so it can take
+% left+right margin}
+% \changes{v1.1}{2007/08/11}{Starred variant added}
+% \changes{v1.1}{2007/08/12}{\cs{setlength}\cs{captionmargin} \&
+% \cs{setlength}\cs{captionmargin@} swapped so
+% `\texttt{margin*=}\cs{captionmargin}' works in singleline options}
+% \changes{v1.3}{2010/11/07}{Support for option \opt{calcmargin} added}
+% |\setcaptionmargin|\marg{amount}\\
+% |\setcaptionmargin*|\marg{amount}\par
+% Please never use this in user documents, it's just there to
+% provide compatibility to the \package{caption2} package.
+% \begin{macrocode}
+\newcommand*\setcaptionmargin{%
+ \caption@resetcalcmargin
+ \caption@setmargin}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@setmargin{%
+ \caption@teststar\caption@@setmargin\@gobble\@firstofone}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@@setmargin[2]{%
+ #1{\captionwidth\z@}%
+ \caption@@@setmargin#2,#2,\@nil}
+% \end{macrocode}
+% \begin{macrocode}
+\def\caption@@@setmargin#1,#2,#3\@nil{%
+ \setlength\captionmargin@{#2}%
+ \setlength\captionmargin{#1}%
+ \addtolength\captionmargin@{-\captionmargin}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\setcaptionwidth}
+% \changes{v1.0f}{2005/10/24}{Renamed from \cs{caption@setwidth} to \cs{setcaptionwidth}}
+% \changes{v1.3}{2010/11/07}{Starred variant added}
+% \changes{v1.3}{2010/11/07}{Support for option \opt{calcwidth} added}
+% |\setcaptionwidth|\marg{amount}\\
+% |\setcaptionwidth*|\marg{amount}\par
+% Please never use this in user documents, it's just there to
+% provide compatibility to the \package{caption2} package.
+% \begin{macrocode}
+\newcommand*\setcaptionwidth{%
+ \caption@resetcalcmargin
+ \caption@setwidth}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@setwidth{%
+ \caption@teststar\caption@@setwidth\@gobble\@firstofone}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@@setwidth[2]{%
+ #1{\captionmargin\z@\captionmargin@\z@}%
+ \setlength\captionwidth{#2}}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@resetcalcmargin}
+% \changes{v1.3}{2010/11/07}{This macro added}
+% \begin{macrocode}
+\newcommand*\caption@resetcalcmargin{%
+ \let\caption@calcmargin@hook\@empty}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@setcalcmargin}
+% \changes{v1.3}{2010/11/07}{This macro added}
+% \begin{macrocode}
+\newcommand*\caption@setcalcmargin{%
+ \caption@teststar{\caption@@setcalcmargin\caption@setmargin}%
+ \@secondoftwo\@firstoftwo}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@@setcalcmargin[3]{%
+ #2{\caption@resetcalcmargin
+ \l@addto@macro\caption@calcmargin@hook{#1{#3}}}%
+ {\l@addto@macro\caption@calcmargin@hook{#1*{#3}}}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@setcalcwidth}
+% \changes{v1.3}{2010/11/07}{This macro added}
+% \begin{macrocode}
+\newcommand*\caption@setcalcwidth{%
+ \caption@teststar{\caption@@setcalcmargin\caption@setwidth}%
+ \@secondoftwo\@firstoftwo}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@counter}
+% \changes{v1.0n}{2007/04/03}{This counter added}
+% \changes{v1.1e}{2007/10/28}{Renamed to \cs{caption@thecounter}; \cs{caption@stepcounter} added}
+% \changes{v1.5}{2012/04/09}{\cs{caption@stepcounter} renamed to \cs{caption@stepthecounter}}
+% Internal counter. At the moment it will be used inside
+% |\caption@ifoddpage| only.
+% \begin{macrocode}
+\newcommand*\caption@thecounter{0}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@stepthecounter{%
+ \@tempcnta\caption@thecounter
+ \advance\@tempcnta\@ne
+ \xdef\caption@thecounter{\the\@tempcnta}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@newlabel}
+% \changes{v1.0n}{2007/04/03}{This macro added}
+% This command is a modified version of |\newlabel| from \LaTeX2e.
+% It will be written to the \texttt{.aux} file to
+% pass label information from one run to another.
+% (We use it inside |\caption@ifoddpage| and |\caption@ragged|.)
+% \begin{macrocode}
+\newcommand*\caption@newlabel{\@newl@bel{caption@r}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@thepage}
+% \changes{v1.0n}{2007/04/03}{This macro added}
+% This command is a modified version of |\thepage| from \LaTeX2e.
+% It will be used inside |\caption@ifoddpage| only.
+% \begin{macrocode}
+\newcommand*\caption@thepage{\the\c@page}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@label}
+% \changes{v1.1}{2007/09/01}{This macro added}
+% \changes{v1.2}{2007/12/03}{Definition of \cs{caption@newlabel} in AUX file added}
+% This command is a modified version of |\label| from \LaTeX2e.
+% It will be used inside |\caption@ifoddpage| and |\FP@helpNote|.
+% \begin{macrocode}
+\newcommand*\caption@label[1]{%
+ \caption@@label
+ \protected@write\@auxout{\let\caption@thepage\relax}%
+ {\string\caption@newlabel{#1}{\caption@thepage}}}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@@label{%
+ \global\let\caption@@label\relax
+ \protected@write\@auxout{}%
+ {\string\providecommand*\string\caption@newlabel[2]{}}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@pageref}
+% \changes{v1.1}{2007/09/01}{This macro added}
+% \changes{v1.2d}{2009/10/09}{Uses \cs{@latex@warning} instead of \cs{caption@Warning} now}
+% This command is a modified version of |\pageref| from \LaTeX2e.
+% It will be used inside |\caption@ifoddpage| and |\FP@helpNote|.
+% \begin{macrocode}
+\newcommand*\caption@pageref[1]{%
+ \expandafter\ifx\csname caption@r@#1\endcsname\relax
+ \G@refundefinedtrue % => 'There are undefined references.'
+ \@latex@warning{Reference `#1' on page \thepage \space undefined}%
+ \else
+ \expandafter\let\expandafter\caption@thepage\csname caption@r@#1\endcsname
+ \fi}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@ifoddpage}
+% \changes{v1.0n}{2007/04/03}{This macro added}
+% \changes{v1.1e}{2007/10/28}{Incrementation of counter moved to \cs{caption@@make}}
+% At the moment this macro uses an own label\ldots ref mechanism,
+% but an alternative implementation method would be using the
+% \package{refcount} package\cite{refcount} and |\ifodd\getpagerefnumber{|\ldots|}|.
+% \Note{This macro re-defines itself so the \texttt{.aux} file will
+% only be used once per group.}
+% \begin{macrocode}
+\newcommand*\caption@ifoddpage{%
+ \caption@iftwoside{%
+ \caption@label\caption@thecounter
+ \caption@pageref\caption@thecounter
+ \ifodd\caption@thepage
+ \let\caption@ifoddpage\@firstoftwo
+ \else
+ \let\caption@ifoddpage\@secondoftwo
+ \fi
+ }{\let\caption@ifoddpage\@firstoftwo}%
+% \end{macrocode}
+% \begin{macrocode}
+ \caption@ifoddpage}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@setoptcmd}
+% \changes{v1.1}{2007/08/11}{This macro added}
+% |\caption@setoptcmd|\marg{cmd}\marg{off -or- value}
+% \begin{macrocode}
+\newcommand*\caption@setoptcmd[2]{%
+ \caption@ifinlist{#2}{0,false,no,off}{\let#1\@undefined}{\def#1{#2}}}
+% \end{macrocode}
+% \end{macro}
+%
+% \section{Indentions}
+%
+% \begin{macro}{\caption@indent}
+% \changes{v1.1}{2007/07/29}{Renamed from \cs{captionindent} to \cs{caption@indent}}
+% \begin{macro}{\caption@parindent}
+% \begin{macro}{\caption@hangindent}
+% These are the indentions we support.
+% \begin{macrocode}
+\newdimen\caption@indent
+\newdimen\caption@parindent
+\newdimen\caption@hangindent
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+% \end{macro}
+%
+% \changes{v1.0b}{2004/05/16}{Defaults added for options \opt{parindent=}
+% and \opt{hangindent=}}
+% \changes{v1.0f}{2005/08/22}{Option \opt{parskip=}: \cs{AtBeginCaption}
+% replaced by \cs{caption@@par}}
+% \changes{v1.0f}{2005/08/22}{Undocumented defaults for \opt{parindent=},
+% \opt{hangindent=}, and \opt{parskip=} removed}
+% \begin{macrocode}
+\DeclareCaptionOption{indent}[\leftmargini]{% obsolete!
+ \setlength\caption@indent{#1}}
+\DeclareCaptionOption{indention}[\leftmargini]{%
+ \setlength\caption@indent{#1}}
+\DeclareCaptionOption{parindent}{%
+ \setlength\caption@parindent{#1}}
+\DeclareCaptionOption{hangindent}{%
+ \setlength\caption@hangindent{#1}}
+\DeclareCaptionOption{parskip}{%
+ \l@addto@macro\caption@@par{\setlength\parskip{#1}}}
+% \end{macrocode}
+%
+% \section{Styles}
+%
+% \begin{macro}{\DeclareCaptionStyle}
+% \changes{v1.0a}{2004/01/17}{Pass through argument \#3 so extra spaces
+% between arguments do make any harm}
+% |\DeclareCaptionStyle|\marg{name}\oarg{single-line-list-of-KV}\marg{list-of-KV}
+% \begin{macrocode}
+\newcommand*\DeclareCaptionStyle[1]{%
+ \@testopt{\caption@declarestyle{#1}}{}}
+\@onlypreamble\DeclareCaptionStyle
+% \end{macrocode}
+% \begin{macrocode}
+\def\caption@declarestyle#1[#2]#3{%
+ \global\@namedef{caption@sls@#1}{#2}%
+ \global\@namedef{caption@sty@#1}{#3}}
+\@onlypreamble\caption@declarestyle
+% \end{macrocode}
+% \end{macro}
+%
+% \changes{v1.2a}{2008/01/20}{Option \opt{style*=} added}
+% \begin{macrocode}
+\DeclareCaptionOption{style}{\caption@setstyle{#1}}
+\DeclareCaptionOption{style*}{\caption@setstyle*{#1}}
+% \end{macrocode}
+%
+% \begin{macro}{\caption@setstyle}
+% \changes{v1.0e}{2005/06/01}{Starred variant added}
+% \changes{v1.1}{2007/07/29}{Recursive style definitions should work now}
+% \changes{v1.1d}{2007/10/23}{`SingleLine' renamed to `singleline' for consistency}
+% \changes{v1.2}{2007/12/03}{Definition of \cs{caption@iftypewarning} removed}
+% |\caption@setstyle|\marg{name}\\
+% |\caption@setstyle*|\marg{name}\par
+% Selecting a caption style means saving the additional
+% \meta{single-line-list-of-KV} (this will be done by |\caption@sls|),
+% resetting the caption options to the base ones (this will be done using
+% |\caption@resetstyle|) and executing the \meta{list-of-KV} options
+% (this will be done using |\caption@setup|).\par
+% The starred version will give no error message if the given style is not
+% defined.
+% \begin{macrocode}
+\newcommand*\caption@setstyle{%
+ \caption@teststar\caption@@setstyle\@gobble\@firstofone}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@@setstyle[2]{%
+ \@ifundefined{caption@sty@#2}%
+ {#1{\caption@Error{Undefined style `#2'}}}%
+ {\expandafter\let\expandafter\caption@sty\csname caption@sty@#2\endcsname
+ \ifx\caption@setstyle@flag\@undefined
+ \let\caption@setstyle@flag\relax
+ \caption@resetstyle
+ \caption@xsetup\caption@sty
+ \let\caption@setstyle@flag\@undefined
+ \else
+ \caption@xsetup\caption@sty
+ \fi
+ \expandafter\let\expandafter\caption@sls\csname caption@sls@#2\endcsname
+ \expandafter\caption@l@addto@list\expandafter\caption@opt@singleline
+ \expandafter{\caption@sls}}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@resetstyle}
+% \changes{v1.1}{2007/02/04}{%
+% This macro renamed from \cs{caption@setdefault} to \cs{caption@resetstyle}}
+% \changes{v1.1d}{2007/10/23}{`SingleLine' renamed to `singleline' for consistency}
+% \changes{v1.2}{2007/11/17}{Usage of \opt{size=} added}
+% \changes{v1.2b}{2008/05/06}{Usage of \opt{rule} added}
+% \changes{v1.5}{2012/03/15}{\opt{box=parbox} added}
+% \changes{v1.6}{2013/05/01}{\opt{box=none} added, \opt{box=parbox} changed to \opt{parbox=parbox}}
+% This resets (nearly) all caption options to the base ones.
+% \emph{Note that this does not touch the skips and the positioning!}
+% \begin{macrocode}
+\newcommand*\caption@resetstyle{%
+ \caption@setup{%
+ box=none,boxcolor=white,parbox=parbox,%
+ format=plain,labelformat=default,labelsep=colon,textformat=simple,%
+ justification=justified,font=,size=,labelfont=,textfont=,%
+ margin=0pt,minmargin=0,maxmargin=0,%
+ indent=0pt,parindent=0pt,hangindent=0pt,%
+ slc,rule,strut}%
+ \caption@clearsetup{singleline}}
+% \end{macrocode}
+% \end{macro}
+%
+% \changes{v1.0c}{2005/02/12}{\opt{indent=0pt} added to caption style \opt{default}}
+% \changes{v1.1}{2007/02/04}{Caption style `default' renamed to `base', and a new `default' added}
+% \changes{v1.1}{2007/03/31}{\opt{format=plain} added to caption style \opt{default}}
+% \changes{v1.1c}{2007/10/14}{\opt{format=plain} removed from caption style \opt{default}}
+% \changes{v1.5}{2012/03/15}{\opt{box=default} added to caption style \opt{default}}
+% Currently there are two pre-defined styles, called `base' \& `default'.
+% The first one is a perfect match to the behavior of |\@makecaption| offered
+% by the standard \LaTeX\ document classes (and was called `default' in
+% \thispackage\ \version{1.0}), the second one matches the document
+% class actually used.
+% \begin{macrocode}
+\DeclareCaptionStyle{base}[indent=0pt,justification=centering]{}
+\DeclareCaptionStyle{default}[indent=0pt,justification=centering]{%
+ box=default,format=default,labelsep=default,textformat=default,%
+ justification=default,font=default,labelfont=default,textfont=default}
+% \end{macrocode}
+%
+% \changes{v1.2b}{2008/05/06}{Option \opt{slc=} added}
+% \begin{macrocode}
+\DeclareCaptionOption{singlelinecheck}[1]{\caption@set@bool\caption@ifslc{#1}}
+\DeclareCaptionOption{slc}[1]{\KV@caption@singlelinecheck{#1}}
+% \end{macrocode}
+%
+% \section{Boxes}
+%
+% \begin{macro}{\DeclareCaptionBox}
+% \changes{v1.5}{2012/03/15}{This macro added}
+% |\DeclareCaptionBox|\marg{name}\marg{code with \#1 and \#2}
+% \begin{macrocode}
+\newcommand*\DeclareCaptionBox[2]{%
+ \global\long\@namedef{caption@box@#1}##1##2{#2}}
+\@onlypreamble\DeclareCaptionBox
+% \end{macrocode}
+% \end{macro}
+%
+% \changes{v1.5}{2012/03/15}{Option \opt{box=} added}
+% \changes{v1.6}{2013/05/01}{Option \opt{parbox=} added}
+% \begin{macrocode}
+\DeclareCaptionOption{box}{\caption@setbox{#1}}
+\DeclareCaptionOption{parbox}{\caption@set@box\caption@parbox{#1}}
+% \end{macrocode}
+%
+% \begin{macro}{\caption@setbox}
+% |\caption@setbox|\marg{name}\par
+% Selecting a caption box simply means saving the code (in |\caption@box|).
+% \begin{macrocode}
+\newcommand*\caption@setbox{%
+ \caption@set@box\caption@box}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@set@box[2]{%
+ \@ifundefined{caption@box@#2}%
+ {\caption@Error{Undefined box `#2'}}%
+ {\expandafter\let\expandafter#1\csname caption@box@#2\endcsname}}
+% \end{macrocode}
+% \end{macro}
+%
+% There are four pre-defined boxes, called `empty', `none',
+% `parbox', and `colorbox'.
+% \changes{v1.0i}{2006/05/13}{We define \cs{captionbox} instead of
+% \cs{caption@start/endbox}}
+% \changes{v1.0l}{2006/03/09}{Bugfix 07-03-09: \cs{captionbox} changed from
+% \cs{parbox-t} to \cs{parbox-b}}
+% \changes{v1.2}{2007/11/11}{\cs{captionbox} renamed to \cs{caption@parbox}}
+% \changes{v1.5}{2012/03/15}{\cs{caption@parbox} adapted to \cs{DeclareCaptionBox}}
+% \changes{v1.6}{2013/05/02}{Option \opt{boxsep=} added}
+% \begin{macrocode}
+\DeclareCaptionBox{empty}{}
+\DeclareCaptionBox{none}{#2}
+\DeclareCaptionBox{parbox}{\parbox[b]{#1}{#2}}
+%\DeclareCaptionBox{colorbox}{%
+% \colorbox{\caption@boxcolor}{\caption@box@parbox{\dimexpr #1-2\fboxsep}{#2}}}
+\DeclareCaptionBox{colorbox}{\colorbox{\caption@boxcolor}{%
+ \setlength\caption@tempdima{#1}%
+ \addtolength\caption@tempdima{-2\fboxsep}%
+ \linewidth\caption@tempdima
+ \hsize\caption@tempdima
+ #2}}
+\DeclareCaptionOption{boxcolor}{\def\caption@boxcolor{#1}}
+\DeclareCaptionOption{boxsep}{\setlength\fboxsep{#1}}
+% \end{macrocode}
+%
+% `default' usually maps to `none`.
+% \begin{macrocode}
+\def\caption@box@default{\caption@box@none}
+% \end{macrocode}
+%
+% \section{Formats}
+%
+% \begin{macro}{\DeclareCaptionFormat}
+% \changes{v1.0a}{2004/01/17}{Pass through argument \#3 so extra spaces
+% between arguments do make any harm}
+% \changes{v1.0c}{2005/02/09}{Starred variant added}
+% \changes{v1.1c}{2007/10/15}{Optional argument added}
+% |\DeclareCaptionFormat|\marg{name}\marg{code with \#1, \#2, and \#3}\\
+% |\DeclareCaptionFormat*|\marg{name}\marg{code with \#1, \#2, and \#3}\par
+% The starred form causes the code being typeset in vertical (instead of
+% horizontal) mode, but does not support the |indention=| option.
+% \begin{macrocode}
+\newcommand*\DeclareCaptionFormat{%
+ \caption@teststar\caption@declareformat\@gobble\@firstofone}
+\@onlypreamble\DeclareCaptionFormat
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@declareformat[2]{%
+ \@dblarg{\caption@@declareformat#1{#2}}}
+\@onlypreamble\caption@declareformat
+% \end{macrocode}
+% \begin{macrocode}
+\long\def\caption@@declareformat#1#2[#3]#4{%
+ \global\expandafter\let\csname caption@ifh@#2\endcsname#1%
+ \global\long\@namedef{caption@slfmt@#2}##1##2##3{#3}%
+ \global\long\@namedef{caption@fmt@#2}##1##2##3{#4}}
+\@onlypreamble\caption@@declareformat
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+\DeclareCaptionOption{format}{\caption@setformat{#1}}
+% \end{macrocode}
+%
+% \begin{macro}{\caption@setformat}
+% |\caption@setformat|\marg{name}\par
+% Selecting a caption format simply means saving the code (in |\caption@fmt|)
+% and if the code should be used in horizontal or vertical mode (|\caption@ifh|).
+% \begin{macrocode}
+\newcommand*\caption@setformat[1]{%
+ \@ifundefined{caption@fmt@#1}%
+ {\caption@Error{Undefined format `#1'}}%
+ {\expandafter\let\expandafter\caption@ifh\csname caption@ifh@#1\endcsname
+ \expandafter\let\expandafter\caption@slfmt\csname caption@slfmt@#1\endcsname
+ \expandafter\let\expandafter\caption@fmt\csname caption@fmt@#1\endcsname}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\DeclareCaptionDefaultFormat}
+% \changes{v1.2a}{2008/01/31}{This macro added}
+% \begin{macrocode}
+\newcommand*\DeclareCaptionDefaultFormat[1]{%
+ \expandafter\def\expandafter\caption@fmt@default\expandafter
+ {\csname caption@fmt@#1\endcsname}%
+ \expandafter\def\expandafter\caption@slfmt@default\expandafter
+ {\csname caption@slfmt@#1\endcsname}%
+ \expandafter\def\expandafter\caption@ifh@default\expandafter
+ {\csname caption@ifh@#1\endcsname}}
+\@onlypreamble\DeclareCaptionDefaultFormat
+% \end{macrocode}
+% \end{macro}
+%
+% \changes{v1.0a}{2004/01/23}{%
+% Caption format \opt{default} renamed to \opt{normal}}
+% \changes{v1.0e}{2005/05/12}{%
+% Caption format \opt{normal} renamed to \opt{@normal}}
+% \changes{v1.0f}{2005/08/25}{%
+% Caption format \opt{@normal} renamed to \opt{plain} and documented}
+% \changes{v1.1c}{2007/10/14}{%
+% Single-line variant of caption format \opt{hang} added}
+% There are two pre-defined formats, called `plain' and `hang'.
+% \begin{macrocode}
+\DeclareCaptionFormat{plain}{#1#2#3\par}
+% \end{macrocode}
+% \begin{macrocode}
+\DeclareCaptionFormat{hang}[#1#2#3\par]{%
+ \caption@ifin@list\caption@lsepcrlist\caption@lsepname
+ {\caption@Error{%
+ The option `labelsep=\caption@lsepname' does not work\MessageBreak
+ with `format=hang'}}%
+ {\@hangfrom{#1#2}%
+ \advance\caption@parindent\hangindent
+ \advance\caption@hangindent\hangindent
+ \caption@@par#3\par}}
+% \end{macrocode}
+%
+% \changes{v1.0a}{2004/01/23}{Caption format \opt{default} linked to \opt{plain}}
+% \changes{v1.0d}{2005/04/28}{Bugfix 05-04-28: Missing \cs{caption@ifh@default} added}
+% `default' usually maps to `plain'.
+% \begin{macrocode}
+\DeclareCaptionDefaultFormat{plain}
+% \end{macrocode}
+%
+% \section{Label formats}
+%
+% \begin{macro}{\DeclareCaptionLabelFormat}
+% \changes{v1.0a}{2004/01/17}{%
+% Pass through argument \#2 so extra spaces between arguments do make any harm}
+% |\DeclareCaptionLabelFormat|\marg{name}\marg{code with \#1 and \#2}
+% \begin{macrocode}
+\newcommand*\DeclareCaptionLabelFormat[2]{%
+ \global\@namedef{caption@lfmt@#1}##1##2{#2}}
+\@onlypreamble\DeclareCaptionLabelFormat
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+\DeclareCaptionOption{labelformat}{\caption@setlabelformat{#1}}
+% \end{macrocode}
+%
+% \begin{macro}{\caption@setlabelformat}
+% |\caption@setlabelformat|\marg{name}\par
+% Selecting a caption label format simply means saving the code (in |\caption@lfmt|).
+% \begin{macrocode}
+\newcommand*\caption@setlabelformat[1]{%
+ \@ifundefined{caption@lfmt@#1}%
+ {\caption@Error{Undefined label format `#1'}}%
+ {\expandafter\let\expandafter\caption@lfmt\csname caption@lfmt@#1\endcsname}}
+% \end{macrocode}
+% \end{macro}
+%
+% \changes{v1.2}{2007/12/16}{Caption label format \opt{brace} added}
+% \changes{v1.7}{2015/09/16}{Caption label format \opt{autodot} added}
+% \changes{v1.7}{2016/05/22}{Caption label format \opt{autodot} fixed}
+% \changes{v1.8}{2016/05/22}{Caption label format \opt{unnumbered} added}
+% There are six pre-defined label formats, called `empty', `simple',
+% `parens', `brace', `autodot', and `unnumbered'.
+% \begin{macrocode}
+\DeclareCaptionLabelFormat{empty}{}
+\DeclareCaptionLabelFormat{simple}{\bothIfFirst{#1}{\nobreakspace}#2}
+\DeclareCaptionLabelFormat{parens}{\bothIfFirst{#1}{\nobreakspace}(#2)}
+\DeclareCaptionLabelFormat{brace}{\bothIfFirst{#1}{\nobreakspace}#2)}
+\DeclareCaptionLabelFormat{autodot}{\bothIfFirst{#1}{\nobreakspace}#2\autodot}
+\DeclareCaptionLabelFormat{unnumbered}{#1}
+% \end{macrocode}
+%
+% `default' usually maps to `simple'.
+% \begin{macrocode}
+\def\caption@lfmt@default{\caption@lfmt@simple}
+% \end{macrocode}
+%
+% \section{Label separators}
+%
+% \begin{macro}{\DeclareCaptionLabelSeparator}
+% \changes{v1.0a}{2004/01/17}{Pass through argument \#2 so extra spaces
+% between arguments do make any harm}
+% \changes{v1.0f}{2005/08/25}{Starred variant added}
+% \changes{v1.1}{2007/07/13}{Test for CR added}
+% \changes{v1.3}{2011/08/06}{Test for CR revised}
+% |\DeclareCaptionLabelSeparator|\marg{name}\marg{code}\\
+% |\DeclareCaptionLabelSeparator*|\marg{name}\marg{code}\par
+% The starred form causes the label separator to be typeset \emph{without} using |\captionlabelfont|.
+% \begin{macrocode}
+\newcommand\DeclareCaptionLabelSeparator{%
+ \caption@teststar\caption@declarelabelseparator\@gobble\@firstofone}
+\@onlypreamble\DeclareCaptionLabelSeparator
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand\caption@declarelabelseparator[3]{%
+ \global\@namedef{caption@iflf@#2}{#1}%
+ \global\long\@namedef{caption@lsep@#2}{#3}%
+ \caption@@declarelabelseparator{#2}#3\\\@nil}
+\@onlypreamble\caption@declarelabelseparator
+% \end{macrocode}
+% \begin{macrocode}
+\long\def\caption@@declarelabelseparator#1#2\\#3\@nil{%
+ \def\@tempa{#3}\ifx\@tempa\@empty \else
+ \caption@g@addto@list\caption@lsepcrlist{#1}%
+ \fi}
+\@onlypreamble\caption@@declarelabelseparator
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+\DeclareCaptionOption{labelsep}{\caption@setlabelseparator{#1}}
+\DeclareCaptionOption{labelseparator}{\caption@setlabelseparator{#1}}
+% \end{macrocode}
+%
+% \begin{macro}{\caption@setlabelseparator}
+% |\caption@setlabelseparator|\marg{name}\par
+% Selecting a caption label separator simply means saving the code (in |\caption@lsep|).
+% \begin{macrocode}
+\newcommand*\caption@setlabelseparator[1]{%
+ \@ifundefined{caption@lsep@#1}%
+ {\caption@Error{Undefined label separator `#1'}}%
+ {\edef\caption@lsepname{#1}%
+ \expandafter\let\expandafter\caption@iflf\csname caption@iflf@#1\endcsname
+ \expandafter\let\expandafter\caption@lsep\csname caption@lsep@#1\endcsname}}
+% \end{macrocode}
+% \end{macro}
+%
+% \changes{v1.0e}{2005/06/11}{Bugfix 05-03-23: Caption label separator
+% \opt{newline} implementation changed from \cs{newline} to \cs{\textbackslash}}
+% \changes{v1.0f}{2005/08/24}{Caption label separator \opt{endash} added}
+% There are seven pre-defined label separators, called `none', `colon', `period', `space',
+% `quad', `newline', and `endash'.
+% \begin{macrocode}
+\DeclareCaptionLabelSeparator{none}{}
+\DeclareCaptionLabelSeparator{colon}{: }
+\DeclareCaptionLabelSeparator{period}{. }
+\DeclareCaptionLabelSeparator{space}{ }
+\DeclareCaptionLabelSeparator*{quad}{\quad}
+\DeclareCaptionLabelSeparator*{newline}{\captionnewline}
+\DeclareCaptionLabelSeparator*{endash}{\space\textendash\space}
+% \end{macrocode}
+%
+% \begin{macro}{\captionnewline}
+% \changes{v1.12}{2020/05/30}{This macro added}
+% Will be used in the caption label separator |new|\-|line|,
+% and re-defined for |long|\-|table| environments.
+% \begin{macrocode}
+\newcommand*\captionnewline{\\}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@setdefaultlabelsep}
+% \changes{v1.2d}{2009/03/29}{This macro added}
+% \begin{macrocode}
+\newcommand*\caption@setdefaultlabelsep[1]{%
+ \ifx\caption@lsep\caption@lsep@default
+ \caption@set@default@labelsep{#1}%
+ \caption@setlabelseparator{default}%
+ \else
+ \caption@set@default@labelsep{#1}%
+ \fi}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@set@default@labelsep[1]{%
+ \def\caption@lsep@default{\@nameuse{caption@lsep@#1}}%
+ \def\caption@iflf@default{\@nameuse{caption@iflf@#1}}}
+% \end{macrocode}
+% \end{macro}
+%
+% `default' usually maps to `colon'.
+% \begin{macrocode}
+\caption@set@default@labelsep{colon}
+% \end{macrocode}
+%
+% \section{Text formats}
+%
+% \begin{macro}{\DeclareCaptionTextFormat}
+% \changes{v1.0j}{2007/02/18}{This macro added}
+% |\DeclareCaptionTextFormat|\marg{name}\marg{code with \#1}
+% \begin{macrocode}
+\newcommand*\DeclareCaptionTextFormat[2]{%
+ \global\long\@namedef{caption@tfmt@#1}##1{#2}}
+\@onlypreamble\DeclareCaptionTextFormat
+% \end{macrocode}
+% \end{macro}
+%
+% \changes{v1.0c}{2005/02/12}{Option \opt{strut=} added}
+% \begin{macrocode}
+\DeclareCaptionOption{textformat}{\caption@settextformat{#1}}
+\DeclareCaptionOption{strut}[1]{\caption@set@bool\caption@ifstrut{#1}}
+% \end{macrocode}
+%
+% \begin{macro}{\caption@settextformat}
+% \changes{v1.0j}{2007/02/18}{This macro added}
+% |\caption@settextformat|\marg{name}\par
+% Selecting a caption text format simply means saving the code (in |\caption@tfmt|).
+% \begin{macrocode}
+\newcommand*\caption@settextformat[1]{%
+ \@ifundefined{caption@tfmt@#1}%
+ {\caption@Error{Undefined text format `#1'}}%
+ {\expandafter\let\expandafter\caption@tfmt\csname caption@tfmt@#1\endcsname}}
+% \end{macrocode}
+% \end{macro}
+%
+% There are three pre-defined text formats, called `empty', `simple' and `period'.
+% \changes{v1.4}{2011/10/05}{Pre-defined text format `empty' added}
+% \changes{v1.7}{2015/09/16}{The text format `empty' now takes care of the \cs{label}}
+% \begin{macrocode}
+\DeclareCaptionTextFormat{empty}{%
+ \caption@get@label#1\caption@makeanchor{}\@nil
+ \caption@thelabel
+ \global\let\caption@thelabel\relax}
+\long\def\caption@get@label#1\caption@makeanchor#2#3\@nil{%
+ \def\caption@tempa{#2}%
+ \ifx\caption@tempa\@empty
+ \caption@getlabel#1\label{}\@nil
+ \else
+ \caption@getlabel#2\label{}\@nil
+ \fi}
+% \end{macrocode}
+% \begin{macrocode}
+\DeclareCaptionTextFormat{simple}{#1}
+\DeclareCaptionTextFormat{period}{#1.}
+% \end{macrocode}
+%
+% `default' usually maps to `simple'.
+% \begin{macrocode}
+\def\caption@tfmt@default{\caption@tfmt@simple}
+% \end{macrocode}
+%
+% \begin{macro}{\caption@getlabel}
+% \changes{v1.0}{2011/09/03}{\cs{label} can have optional arguments now}
+% \changes{v1.7}{2015/09/16}{Moved from \package{bicaption} package to \package{caption3}}
+% \changes{v1.8d}{2019/09/01}{Bugfix: Global definition of \cs{caption@thelabel} added}
+% Gets the label command out of the (first) caption text and stores it to |\caption@thelabel|.
+% \begin{macrocode}
+\long\def\caption@getlabel#1\label#2#3\@nil{%
+ \def\@tempa{#2}%
+ \ifx\@tempa\@empty
+ \let\caption@thelabel\relax
+ \else
+ \def\@tempb{*}%
+ \ifx\@tempa\@tempb
+ \def\caption@thelabel{\label*}%
+ \caption@@getlabel#3\@nil
+ \else
+ \def\caption@thelabel{\label}%
+ \caption@@getlabel{#2}#3\@nil
+ \fi
+ \fi}
+% \end{macrocode}
+% \begin{macrocode}
+\long\def\caption@@getlabel#1#2\@nil{%
+ \def\@tempa{#1}%
+ \def\@tempb{[}%
+ \ifx\@tempa\@tempb
+ \caption@@@getlabel#1#2\@nil
+ \else
+ \l@addto@macro\caption@thelabel{{#1}}%
+ \fi}
+% \end{macrocode}
+% \begin{macrocode}
+\long\def\caption@@@getlabel[#1]#2\@nil{%
+ \l@addto@macro\caption@thelabel{[{#1}]}%
+ \caption@@getlabel#2\@nil}
+% \end{macrocode}
+% \begin{macrocode}
+\let\caption@thelabel\relax
+% \end{macrocode}
+% \end{macro}
+%
+% \section{Fonts}
+%
+% \begin{macro}{\DeclareCaptionFont}
+% \changes{v1.0a}{2004/01/22}{Bugfix: Multi token arguments are allowed now}
+% \changes{v1.1}{2007/05/07}{Internal: Uses \cs{caption@fnt} instead of \cs{caption@temp} now}
+% \changes{v1.8h}{2020/01/03}{Check for \package{ragged2e} package related options added}
+% \changes{v1.10}{2020/05/10}{Optional argument \opt{package} added}
+% |\DeclareCaptionFont|\oarg{package}\marg{name}\marg{code}
+% \begin{macrocode}
+\newcommand*\DeclareCaptionFont{%
+ \@ifnextchar[%]
+ \caption@declare@font
+ \caption@declarefont}
+\@onlypreamble\DeclareCaptionFont
+% \end{macrocode}
+% \begin{macrocode}
+\def\caption@declare@font[#1]#2{%
+ \global\@namedef{caption@fnt@#2@package}{#1}%
+ \caption@@declarefont{#2}}
+\@onlypreamble\caption@declare@font
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@declarefont[1]{%
+ \global\@nameundef{caption@fnt@#1@package}%
+ \caption@@declarefont{#1}}
+\@onlypreamble\caption@declarefont
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@@declarefont[2]{%
+ \define@key{caption@fnt}{#1}[]{\caption@addto@fnt{#1}{#2}}%
+ \caption@@@declarefont{#1}{#2}}
+\@onlypreamble\caption@@declarefont
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@@@declarefont[2]{}% will be used by \DeclareCaptionJustification
+\@onlypreamble\caption@@@declarefont
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@addto@fnt[2]{%
+ \expandafter\let\expandafter\caption@package\csname caption@fnt@#1@package\endcsname
+ \caption@ifdefined\caption@package
+ {\caption@requirepackage\caption@package{#1}}% load package, if necessary
+ {}%
+ \l@addto@macro\caption@fnt{#2}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\DeclareCaptionDefaultFont}
+% \changes{v1.1}{2006/05/14}{This macro added}
+% \changes{v1.2a}{2008/01/31}{Renamed from \cs{DeclareDefaultCaptionFont} to \cs{DeclareCaptionDefaultFont}}
+% |\DeclareCaptionDefaultFont|\marg{name}\marg{code}
+% \begin{macrocode}
+\newcommand*\DeclareCaptionDefaultFont[2]{%
+ \global\@namedef{caption#1@default}{#2}}
+\@onlypreamble\DeclareCaptionDefaultFont
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+\DeclareCaptionOption{font}{\caption@setfont{font}{#1}}
+\DeclareCaptionOption{font+}{\caption@addtofont{font}{#1}}
+\DeclareCaptionDefaultFont{font}{}
+% \end{macrocode}
+% \begin{macrocode}
+\DeclareCaptionOption{labelfont}{\caption@setfont{labelfont}{#1}}
+\DeclareCaptionOption{labelfont+}{\caption@addtofont{labelfont}{#1}}
+\DeclareCaptionDefaultFont{labelfont}{}
+% \end{macrocode}
+% \begin{macrocode}
+\DeclareCaptionOption{textfont}{\caption@setfont{textfont}{#1}}
+\DeclareCaptionOption{textfont+}{\caption@addtofont{textfont}{#1}}
+\DeclareCaptionDefaultFont{textfont}{}
+% \end{macrocode}
+%
+% \begin{macro}{\caption@setfont}
+% \changes{v1.0j}{2007/01/30}{Usage of \cs{caption@setkeys} with optional argument}
+% \changes{v1.1}{2006/05/14}{Support of \cs{DeclareDefaultCaptionFont} added}
+% |\caption@setfont|\marg{name}\marg{keyval-list of names}\par
+% Selecting a caption font means saving all the code snippets
+% in |\caption|\meta{name}.
+% \begin{macrocode}
+\newcommand*\caption@setfont[1]{%
+ \expandafter\let\csname caption#1\endcsname\@empty
+ \caption@addtofont{#1}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@addtofont}
+% \changes{v1.2}{2007/11/17}{This macro added}
+% |\caption@addtofont|\marg{name}\marg{keyval-list of names}\par
+% Like |\caption@setfont|, but adds the code snippets to |\caption|\meta{name}.\par
+% Because we use |\setkeys| recursive here we need to do this inside an
+% extra group.
+% \begin{macrocode}
+\newcommand*\caption@addtofont[2]{%
+ \begingroup
+ \expandafter\let\expandafter\caption@fnt\csname caption#1\endcsname
+ \define@key{caption@fnt}{default}[]{%
+ \l@addto@macro\caption@fnt{\csname caption#1@default\endcsname}}%
+ \caption@setkeys[caption]{caption@fnt}{#2}%
+ \global\let\caption@tempa\caption@fnt
+ \endgroup
+ \expandafter\let\csname caption#1\endcsname\caption@tempa}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@font}
+% \changes{v1.1}{2007/05/07}{This macro added}
+% |\caption@font|\marg{keyval-list of names}\\
+% |\caption@font*|\marg{keyval-code}\par
+% Sets the given font, e.g.~|\caption@font{small,it}|
+% is equivalent to |\small\itshape|.
+% \begin{macrocode}
+\newcommand*\caption@font{%
+ \caption@teststar\caption@@font\@firstofone
+ {\caption@setkeys[caption]{caption@fnt}}}
+\newcommand*\caption@@font[2]{%
+ \begingroup
+ \def\caption@fnt{\endgroup}%
+ #1{#2}%
+ \caption@fnt}
+% \end{macrocode}
+% \end{macro}
+%
+% These are the pre-defined font code snippets.
+%
+% \changes{v1.1}{2007/05/07}{Color font support added}
+% \begin{macrocode}
+\DeclareCaptionFont{normalcolor}{\normalcolor}
+\DeclareCaptionFont{color}{\color{#1}}
+% \end{macrocode}
+%
+% \begin{macrocode}
+\DeclareCaptionFont{normalfont}{\normalfont}
+\DeclareCaptionFont{up}{\upshape}
+\DeclareCaptionFont{it}{\itshape}
+\DeclareCaptionFont{sl}{\slshape}
+\DeclareCaptionFont{sc}{\scshape}
+\DeclareCaptionFont{md}{\mdseries}
+\DeclareCaptionFont{bf}{\bfseries}
+\DeclareCaptionFont{rm}{\rmfamily}
+\DeclareCaptionFont{sf}{\sffamily}
+\DeclareCaptionFont{tt}{\ttfamily}
+% \end{macrocode}
+%
+% \changes{v1.7}{2018/05/01}{Missing font sizes \texttt{tiny}, \texttt{LARGE}, \texttt{huge}, and \texttt{Huge} added}
+% \begin{macrocode}
+\DeclareCaptionFont{tiny}{\tiny}
+\DeclareCaptionFont{scriptsize}{\scriptsize}
+\DeclareCaptionFont{footnotesize}{\footnotesize}
+\DeclareCaptionFont{small}{\small}
+\DeclareCaptionFont{normalsize}{\normalsize}
+\DeclareCaptionFont{large}{\large}
+\DeclareCaptionFont{Large}{\Large}
+\DeclareCaptionFont{LARGE}{\LARGE}
+\DeclareCaptionFont{huge}{\huge}
+\DeclareCaptionFont{Huge}{\Huge}
+% \end{macrocode}
+%
+% \changes{v1.8}{2018/05/01}{Font size \texttt{smaller} added}
+% \begin{macrocode}
+\newcommand\caption@smaller{%
+ \ifx\@currsize\tiny
+ \relax
+ \else\ifx\@currsize\scriptsize
+ \tiny
+ \else\ifx\@currsize\footnotesize
+ \scriptsize
+ \else\ifx\@currsize\small
+ \footnotesize
+ \else\ifx\@currsize\normalsize
+ \small
+ \else\ifx\@currsize\large
+ \normalsize
+ \else\ifx\@currsize\Large
+ \large
+ \else\ifx\@currsize\LARGE
+ \Large
+ \else\ifx\@currsize\huge
+ \LARGE
+ \else\ifx\@currsize\Huge
+ \huge
+ \else
+ \caption@Warning{%
+ Cannot determine current font size.\MessageBreak
+ Try setting it with `size=' explicitly}%
+ \fi\fi\fi\fi\fi\fi\fi\fi\fi\fi}
+\DeclareCaptionFont{smaller}{\caption@smaller}
+% \end{macrocode}
+%
+% \changes{v1.8}{2018/05/02}{Font size \texttt{larger} added}
+% \begin{macrocode}
+\newcommand\caption@larger{%
+ \ifx\@currsize\tiny
+ \scriptsize
+ \else\ifx\@currsize\scriptsize
+ \footnotesize
+ \else\ifx\@currsize\footnotesize
+ \small
+ \else\ifx\@currsize\small
+ \normalsize
+ \else\ifx\@currsize\normalsize
+ \large
+ \else\ifx\@currsize\large
+ \Large
+ \else\ifx\@currsize\Large
+ \LARGE
+ \else\ifx\@currsize\LARGE
+ \huge
+ \else\ifx\@currsize\huge
+ \Huge
+ \else\ifx\@currsize\Huge
+ \relax
+ \else
+ \caption@Warning{%
+ Cannot determine current font size.\MessageBreak
+ Try setting it with `size=' explicitly}%
+ \fi\fi\fi\fi\fi\fi\fi\fi\fi\fi}
+\DeclareCaptionFont{larger}{\caption@larger}
+% \end{macrocode}
+%
+% \begin{macrocode}
+\DeclareCaptionFont{singlespacing}{}
+% \end{macrocode}
+%
+% \begin{macrocode}
+%\DeclareCaptionFont{normal}{%
+% \caption@font{normalcolor,normalfont,normalsize,singlespacing}
+\DeclareCaptionFont{normal}{%
+ \caption@font*{%
+ \KV@caption@fnt@normalcolor\@unused
+ \KV@caption@fnt@normalfont\@unused
+ \KV@caption@fnt@normalsize\@unused
+ \KV@caption@fnt@singlespacing\@unused}}
+% \end{macrocode}
+%
+% \changes{v1.0a}{2004/01/23}{Option \opt{size=} now sets \cs{captionsize} instead of \cs{captionfont}}
+% The old versions \version{1.x} of \thispackage\ offered this
+% command to setup the font size used for captions. We still do
+% so old documents will work fine.
+% \begin{macrocode}
+\DeclareCaptionOption{size}{\caption@setfont{size}{#1}}
+\DeclareCaptionDefaultFont{size}{}
+% \end{macrocode}
+%
+% \section{Justifications}
+%
+% \begin{macro}{\DeclareCaptionJustification}
+% \changes{v1.0a}{2004/01/17}{Pass through argument \#2 so extra spaces
+% between arguments do make any harm}
+% \changes{v1.1}{2007/07/03}{Mapped to \cs{DeclareCaptionFont}}
+% |\DeclareCaptionJustification|\marg{name}\marg{code}
+% \begin{macrocode}
+\newcommand*\DeclareCaptionJustification{%
+ \def\caption@@@declarefont##1##2{%
+ \global\@namedef{caption@hj@##1}{##2}% for compatibility to v1.0, needed by floatrow package
+ \let\caption@@@declarefont\@gobbletwo}%
+ \DeclareCaptionFont}
+\@onlypreamble\DeclareCaptionJustification
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\DeclareCaptionDefaultJustification}
+% \changes{v1.1}{2007/07/03}{This macro added}
+% \changes{v1.2a}{2008/01/31}{Renamed from \cs{DeclareDefaultCaptionJustification} to \cs{DeclareCaptionDefaultJustification}}
+% |\DeclareCaptionDefaultJustification|\marg{code}
+% \begin{macrocode}
+\newcommand*\DeclareCaptionDefaultJustification[1]{%
+ \global\@namedef{caption@hj@default}{#1}% for compatibility to v1.0
+ \DeclareCaptionDefaultFont{@hj}{#1}}
+\@onlypreamble\DeclareCaptionDefaultJustification
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+\DeclareCaptionOption{justification}{\caption@setjustification{#1}}
+\DeclareCaptionDefaultJustification{}
+% \end{macrocode}
+%
+% \begin{macro}{\caption@setjustification}
+% \changes{v1.1}{2007/07/03}{Mapped to \cs{caption@setfont}}
+% |\caption@setjustification|\marg{name}\par
+% Selecting a caption justification simply means saving the code (in |\caption@hj|).
+% \begin{macrocode}
+\newcommand*\caption@setjustification{\caption@setfont{@hj}}
+% \end{macrocode}
+% \end{macro}
+%
+% These are the pre-defined justification code snippets.
+% \begin{macrocode}
+\DeclareCaptionJustification{justified}{}
+\DeclareCaptionJustification{centering}{\centering}
+\DeclareCaptionJustification{centerfirst}{\centerfirst}
+\DeclareCaptionJustification{centerlast}{\centerlast}
+\DeclareCaptionJustification{raggedleft}{\raggedleft}
+\DeclareCaptionJustification{raggedright}{\raggedright}
+% \end{macrocode}
+%
+% \begin{macro}{\centerfirst}
+% \changes{v1.0j}{2007/01/21}{Bugfix: Usage of \cs{@centercr} added (Thanks to Olga!)}
+% \changes{v1.0j}{2007/01/21}{This macro renamed from \cs{caption@centerfirst} to \cs{centerfirst}}
+% Please blame Frank Mittelbach for the code of |\centerfirst| |:-)|
+% \begin{macrocode}
+\providecommand\centerfirst{%
+ \let\\\@centercr
+ \edef\caption@normaladjust{%
+ \leftskip\the\leftskip
+ \rightskip\the\rightskip
+ \parfillskip\the\parfillskip\relax}%
+ \leftskip\z@\@plus -1fil%
+ \rightskip\z@\@plus 1fil%
+ \parfillskip\z@skip
+ \noindent\hskip\z@\@plus 2fil%
+ \@setpar{\@@par\@restorepar\caption@normaladjust}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\centerlast}
+% \changes{v1.0j}{2007/01/21}{Bugfix: Usage of \cs{@centercr} added (Thanks to Olga!)}
+% \changes{v1.0j}{2007/01/21}{This macro renamed from \cs{caption@centerlast} to \cs{centerlast}}
+% This is based on code from Anne Br\"uggemann-Klein\cite{Anne}
+% \begin{macrocode}
+\providecommand\centerlast{%
+ \let\\\@centercr
+ \leftskip\z@\@plus 1fil%
+ \rightskip\z@\@plus -1fil%
+ \parfillskip\z@\@plus 2fil\relax}
+% \end{macrocode}
+% \end{macro}
+%
+% \section{Vertical spaces before and after captions}
+%
+% \begin{macro}{\abovecaptionskip}
+% \begin{macro}{\belowcaptionskip}
+% Usually these skips are defined within the document class, but some
+% document classes don't do so.
+% \begin{macrocode}
+\caption@ifundefined\abovecaptionskip{%
+ \newlength\abovecaptionskip\setlength\abovecaptionskip{10\p@}}{}
+\caption@ifundefined\belowcaptionskip{%
+ \newlength\belowcaptionskip\setlength\belowcaptionskip{0\p@}}{}
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+%
+% \changes{v1.0c}{2005/02/12}{Option \opt{skip=} added}
+% \begin{macrocode}
+\DeclareCaptionOption{aboveskip}{\setlength\abovecaptionskip{#1}}
+\DeclareCaptionOption{belowskip}{\setlength\belowcaptionskip{#1}}
+\DeclareCaptionOption{skip}{\setlength\abovecaptionskip{#1}}
+% \end{macrocode}
+%
+% \begin{macro}{\caption@rule}
+% \changes{v1.2b}{2008/05/06}{This macro added}
+% |\caption@rule|\par
+% Draws an invisible rule to adjust the ``skip'' setting.
+% \begin{macrocode}
+\newcommand*\caption@rule{\caption@ifrule\caption@hrule\relax}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@hrule{\hrule\@height\z@}
+% \end{macrocode}
+% \end{macro}
+%
+% \changes{v1.2b}{2008/05/06}{Option \opt{rule=} added}
+% \begin{macrocode}
+\DeclareCaptionOption{rule}[1]{\caption@set@bool\caption@ifrule{#1}}
+% \end{macrocode}
+%
+% \section{Positioning}
+%
+% These macros handle the right position of the caption.
+% Note that the position is actually \emph{not} controlled by the
+% \package{caption3} kernel options, but by the user (or a specific package
+% like the \package{float} package) instead.
+% The user can put the |\caption| command wherever he likes! So this stuff
+% is only to give us a \emph{hint} where to put the right skips, the user
+% usually has to take care for himself that this hint actually matches the
+% right position.
+%
+% \begin{macrocode}
+\DeclareCaptionOption{position}{\caption@setposition{#1}}
+% \end{macrocode}
+% \changes{v1.0a}{2004/01/09}{Options \opt{figureposition} and \opt{tableposition} added}
+% \begin{macrocode}
+\DeclareCaptionOption{figureposition}{%
+ \captionsetup*[figure]{position=#1}}
+\@onlypreamble@key{caption}{figureposition}
+% \end{macrocode}
+% \begin{macrocode}
+\DeclareCaptionOption{tableposition}{%
+ \captionsetup*[table]{position=#1}}
+\@onlypreamble@key{caption}{tableposition}
+% \end{macrocode}
+%
+% \begin{macro}{\caption@setposition}
+% \changes{v1.0a}{2004/01/22}{Now the positions \opt{t}, \opt{above}, \opt{b},
+% \opt{below}, and \opt{a} are allowed, too}
+% \changes{v1.0c}{2004/08/10}{Usage of \cs{caption@defaultpos} added}
+% |\caption@setposition|\marg{position}\par
+% Selecting the caption position means that we put |\caption@position| to
+% the right value. \emph{Please do \textbf{not} use the internal macro
+% \cs{caption@position} in your own package or document, but use the wrapper
+% macro \cs{caption@iftop} instead.}
+% \begin{macrocode}
+\newcommand*\caption@setposition[1]{%
+ \caption@ifinlist{#1}{d,default}{%
+ \let\caption@position\caption@defaultpos
+ }{\caption@ifinlist{#1}{t,top,above}{%
+ \let\caption@position\@firstoftwo
+ }{\caption@ifinlist{#1}{b,bottom,below}{%
+ \let\caption@position\@secondoftwo
+ }{\caption@ifinlist{#1}{a,auto}{%
+ \let\caption@position\@undefined
+ }{%
+ \caption@Error{Undefined position `#1'}%
+ }}}}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@defaultpos}
+% \changes{v1.1}{2007/05/08}{Default position changed from `bottom' to `auto'}
+% The default `position' is `auto', this means that \thispackage\ will try
+% to guess the current position of the caption.
+% (But in many cases, for example in |longtable|s, this is doomed to fail!)\par
+% The setting `bottom' correspondents to the |\@makecaption| implementation
+% in the standard \LaTeX\ document classes, but `auto' should give better
+% results in most cases.
+% \begin{macrocode}
+%\caption@setdefaultpos{a}% default = auto
+\let\caption@defaultpos\@undefined
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@iftop}
+% \changes{v1.0a}{2004/01/23}{Split into \cs{caption@iftop} \& \cs{caption@fixposition}}
+% \changes{v1.0c}{2005/02/12}{Adapted to \cs{caption@defaultpos}}
+% \changes{v1.1}{2007/05/08}{Position will be fixed to `bottom' if `auto'}
+% |\caption@iftop|\marg{true-code}\marg{false-code}\par
+% (If the |position=| is set to |auto| we assume a |bottom| position here.)
+% \begin{macrocode}
+\newcommand*\caption@iftop{%
+ \ifx\caption@position\@undefined
+ \let\caption@position\@secondoftwo
+% = \caption@setposition b%
+ \fi
+ \caption@position}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@fixposition}
+% \changes{v1.0b}{2004/05/16}{%
+% Split into \cs{caption@fixposition} & \cs{caption@autoposition}}
+% |\caption@fixposition|\par
+% This macro checks if the `position' is set to `auto'.
+% If yes, |\caption@autoposition| will be called to
+% set |\caption@position| to a proper value we can actually use.
+% \begin{macrocode}
+\newcommand*\caption@fixposition{%
+ \ifx\caption@position\@undefined
+ \caption@autoposition
+ \fi}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@autoposition}
+% \changes{v1.0a}{2004/01/23}{\cs{ifvmode} added}
+% |\caption@autoposition|\par
+% We guess the current position of the caption by checking |\prevdepth|.\par
+% A different solution would be setting the |\spacefactor| to something
+% not much less than 1000 (for example 994) in |\caption@start| and
+% checking this value here by |\ifnum\spacefactor=994|.
+% (It's implemented in the \package{threeparttable}
+% package\cite{threeparttable} this way.)\par
+% Another idea would be checking |\@ifminipage|, but since some packages
+% typeset the caption within a simple |\vbox| this does not seem to be a
+% good one.
+% \begin{macrocode}
+\newcommand*\caption@autoposition{%
+ \ifvmode
+ \edef\caption@tempa{\the\prevdepth}%
+ \caption@Debug{\protect\prevdepth=\caption@tempa}%
+ \ifdim\prevdepth>-\p@
+ \let\caption@position\@secondoftwo
+ \else
+ \let\caption@position\@firstoftwo
+ \fi
+% = \caption@setposition{\ifdim\prevdepth>-\p@ b\else t\fi}%
+ \else
+ \caption@Debug{no \protect\prevdepth}%
+ \let\caption@position\@secondoftwo
+% = \caption@setposition b%
+ \fi}
+% \end{macrocode}
+% \end{macro}
+% \begin{macro}{\caption@setautoposition}
+% \changes{v1.1}{2007/06/10}{This macro added}
+% |\caption@setautoposition|\marg{position}\par
+% replaces the above algorithm by a different one (or a fixed position setting).
+% \begin{macrocode}
+\newcommand*\caption@setautoposition[1]{%
+ \def\caption@autoposition{\caption@setposition{#1}}}
+% \end{macrocode}
+% \end{macro}
+%
+% \section{Hooks}
+%
+% \begin{macro}{\AtBeginCaption}
+% \begin{macro}{\AtEndCaption}
+% |\AtBeginCaption| \marg{code}\\
+% |\AtEndCaption| \marg{code}\par
+% These hooks can be used analogous to |\AtBeginDocument| and |\AtEndDocument|.
+% \begin{macrocode}
+\newcommand*\caption@beginhook{}
+\newcommand*\caption@endhook{}
+\newcommand*\AtBeginCaption{\l@addto@macro\caption@beginhook}
+\newcommand*\AtEndCaption{\l@addto@macro\caption@endhook}
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+%
+% \section{Lists}
+%
+% \changes{v1.0b}{2004/05/16}{Option \opt{listof=} added}
+% \changes{v1.2}{2007/11/17}{Option \opt{list=} added}
+% \begin{macrocode}
+\DeclareCaptionOption{list}[1]{\caption@setlist{#1}}
+\DeclareCaptionOption{listof}[1]{\caption@setlist{#1}}
+% \end{macrocode}
+%
+% \begin{macro}{\caption@setlist}
+% \changes{v1.2a}{2008/03/20}{This macro added}
+% |\caption@setlist|\marg{boolean}
+% \begin{macrocode}
+\newcommand*\caption@setlist{\caption@set@bool\caption@iflist}
+% \end{macrocode}
+% \end{macro}
+%
+% \changes{v1.4}{2011/08/30}{Option \opt{listtype=} added}
+% \changes{v1.4}{2011/08/30}{Option \opt{listtype+=} added}
+% \begin{macrocode}
+\DeclareCaptionOption{listtype}{\caption@setlisttype{#1}}
+\DeclareCaptionOption{listtype+}{\caption@setlisttype@ext{#1}}
+% \end{macrocode}
+%
+% \begin{macro}{\caption@setlisttype}
+% \changes{v1.4}{2011/08/30}{This macro added}
+% |\caption@setlisttype|\marg{type}
+% \begin{macrocode}
+\newcommand*\caption@setlisttype{%
+ \caption@setlisttype@ext{}%
+ \caption@@setlisttype\caption@listtype}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@@setlisttype[2]{%
+ \edef#1{#2}%
+ \ifx#1\@empty \let#1\@undefined \fi}
+% \end{macrocode}
+% \end{macro}
+% \begin{macro}{\caption@setlisttype@ext}
+% \changes{v1.4}{2011/08/30}{This macro added}
+% |\caption@setlisttype@ext|\marg{type extension}
+% \begin{macrocode}
+\newcommand*\caption@setlisttype@ext{%
+ \caption@@setlisttype\caption@listtype@ext}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\DeclareCaptionListFormat}
+% \changes{v1.1}{2004/07/15}{This macro added}
+% \changes{v1.2}{2007/11/17}{Renamed from \cs{DeclareCaptionListOfFormat} to \cs{DeclareCaptionListFormat}}
+% |\DeclareCaptionListFormat|\marg{name}\marg{code with \#1 and \#2}
+% \begin{macrocode}
+\newcommand*\DeclareCaptionListFormat[2]{%
+ \global\@namedef{caption@lstfmt@#1}##1##2{#2}}
+\@onlypreamble\DeclareCaptionListFormat
+% \end{macrocode}
+% \end{macro}
+%
+% \changes{v1.1}{2007/07/15}{Option \opt{listofformat=} added}
+% \changes{v1.2}{2007/11/17}{Option \opt{listofformat=} renamed to \opt{listformat=}}
+% \begin{macrocode}
+\DeclareCaptionOption{listformat}{\caption@setlistformat{#1}}
+% \end{macrocode}
+%
+% \begin{macro}{\caption@setlistformat}
+% \changes{v1.1}{2004/07/15}{This macro added}
+% \changes{v1.2}{2007/11/17}{Renamed from \cs{caption@setlistofformat} to \cs{caption@setlistformat}}
+% |\caption@setlistformat|\marg{name}\par
+% Selecting a caption list format simply means saving the code (in |\caption@lstfmt|).
+% \begin{macrocode}
+\newcommand*\caption@setlistformat[1]{%
+ \@ifundefined{caption@lstfmt@#1}%
+ {\caption@Error{Undefined list format `#1'}}%
+ {\expandafter\let\expandafter\caption@lstfmt
+ \csname caption@lstfmt@#1\endcsname}}
+% \end{macrocode}
+% \end{macro}
+%
+% There are five pre-defined list formats, taken from the \package{subfig} package.
+% \begin{macrocode}
+\DeclareCaptionListFormat{empty}{}
+\DeclareCaptionListFormat{simple}{#1#2}
+\DeclareCaptionListFormat{parens}{#1(#2)}
+\DeclareCaptionListFormat{subsimple}{#2}
+\DeclareCaptionListFormat{subparens}{(#2)}
+% \end{macrocode}
+%
+% \begin{macro}{\caption@setdefaultlistformat}
+% \changes{v1.2d}{2009/03/29}{This macro added}
+% \begin{macrocode}
+\newcommand*\caption@setdefaultlistformat[1]{%
+ \ifx\caption@lstfmt\caption@lstfmt@default
+ \caption@set@default@listformat{#1}%
+ \caption@setlistformat{default}%
+ \else
+ \caption@set@default@listformat{#1}%
+ \fi}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@set@default@listformat[1]{%
+ \def\caption@lstfmt@default{\@nameuse{caption@lstfmt@#1}}}
+% \end{macrocode}
+% \end{macro}
+%
+% `default' usually maps to `subsimple'.
+% \begin{macrocode}
+\caption@set@default@listformat{subsimple}
+% \end{macrocode}
+%
+% \section{Debug option}
+% \changes{v1.0k}{2007/03/04}{Debug option added}
+%
+% \begin{macrocode}
+\DeclareCaptionOption{debug}[1]{%
+ \caption@set@bool\caption@ifdebug{#1}%
+ \caption@ifdebug
+ {\let\caption@Debug\caption@Info}%
+ {\let\caption@Debug\@gobble}}
+% \end{macrocode}
+% \begin{macrocode}
+\DeclareOption{debug}{\setkeys{caption}{debug}}
+% \end{macrocode}
+% \begin{macrocode}
+\setkeys{caption}{debug=0}
+% \end{macrocode}
+%
+% \section{Document classes \& Babel support}
+%
+% \begin{macro}{\caption@ifdocumentclass}
+% Boolean switch which is set if the document class could be detected successfully,
+% i.e. |\caption@document|\-|class| is set to a proper value.
+% (If |\caption@document|\-|class| is already set, this flag will also be set.)
+% \begin{macrocode}
+\caption@setbool{documentclass}{1}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@documentclass}
+% \changes{v1.8e}{2018/05/11}{This macro added}
+% Determine document class used.
+% Set |\caption@document|\-|class| by good-guessing, if not already set.
+% \begin{macrocode}
+\caption@ifundefined\caption@documentclass{%
+% \end{macrocode}
+% \begin{macrocode}
+ \@ifclassloaded{beamer}{%
+ \caption@InfoNoLine{beamer document class detected}%
+ \def\caption@documentclass{beamer}%
+% \end{macrocode}
+% \begin{macrocode}
+ }{\@ifclassloaded{elsarticle}{%
+ \caption@InfoNoLine{elsarticle document class detected}%
+ \def\caption@documentclass{elsarticle}%
+% \end{macrocode}
+% \begin{macrocode}
+ }{\@ifclassloaded{memoir}{%
+ \caption@InfoNoLine{memoir document class detected}%
+ \def\caption@documentclass{memoir}%
+% \end{macrocode}
+% \begin{macrocode}
+ }{\caption@ifdefined\scr@caption{%
+ \caption@InfoNoLine{KOMA-Script document class detected}%
+ \def\caption@documentclass{koma}%
+% \end{macrocode}
+% If |\@captionheadfont| is defined, we assume it's a AMS or SMF document class.
+% \begin{macrocode}
+ }{\caption@ifdefined\@captionheadfont{%
+ \caption@InfoNoLine{AMS or SMF document class detected}%
+ \def\caption@documentclass{ams}%
+% \end{macrocode}
+% If |\@CaptionFonts| is defined, we assume it's a NTG Dutch document class.
+% \begin{macrocode}
+ }{\caption@ifdefined\CaptionFonts{%
+ \caption@InfoNoLine{NTG document class detected}%
+ \def\caption@documentclass{ntg}%
+% \end{macrocode}
+% If |\cph@font| and |\cpb@font| are defined, we assume it's a NTG Dutch document class.
+% \begin{macrocode}
+ }{\caption@ifdefined\cph@font{%
+ \caption@ifdefined\cpb@font\@firstoftwo\@secondoftwo
+ }{%
+ \@secondoftwo
+ }{%
+ \caption@InfoNoLine{thesis document class detected}%
+ \def\caption@documentclass{thesis}%
+ }{%
+% \end{macrocode}
+% If the definition of |\@makecaption| matches the one from the standard \LaTeX\ document classes
+% |article|, |report|, or |book|, we assume it's either one of them or is compatible to them.
+% \begin{macrocode}
+ % article|report|book [2005/09/16 v1.4f Standard LaTeX document class]
+ \long\def\caption@tempa#1#2{%
+ \vskip\abovecaptionskip
+ \sbox\@tempboxa{#1: #2}%
+ \ifdim \wd\@tempboxa >\hsize
+ #1: #2\par
+ \else
+ \global \@minipagefalse
+ \hb@xt@\hsize{\hfil\box\@tempboxa\hfil}%
+ \fi
+ \vskip\belowcaptionskip}}
+ \ifx\caption@tempa\@makecaption
+ \caption@InfoNoLine{Standard document class detected}%
+ \else
+% \end{macrocode}
+% Otherwise we are clueless and use standard default settings for the captions anyway.
+% (And we unset the |document|\-|class| flag to indicate that the content of |\caption@document|\-|class| is not correct.)
+% \begin{macrocode}
+ \caption@InfoNoLine{%
+ Unknown document class (or package),\MessageBreak
+ standard defaults will be used}%
+ \caption@InfoNoLine{\string\@makecaption\space=\space\meaning\@makecaption\@gobble}%
+ \caption@setbool{documentclass}{0}%
+ \fi
+ \def\caption@documentclass{base}%
+ }}}}}}%
+}{}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@ifclassloaded}
+% \changes{v1.8e}{2019/09/09}{This macro added}
+% |\caption@ifclassloaded|\marg{name}\marg{yes-code}\marg{no-code}
+% \begin{macrocode}
+\newcommand*\caption@ifclassloaded[1]{%
+ \edef\caption@tempa{#1}%
+ \ifx\caption@tempa\caption@documentclass
+ \expandafter\@firstoftwo
+ \else
+ \expandafter\@secondoftwo
+ \fi}
+% \end{macrocode}
+% \end{macro}
+%
+% \subsection{The standard \texorpdfstring{\LaTeX{}}{LaTeX} classes}
+%
+% Since this is the default, there is no extra work to be done here.
+%
+% \subsection{The elsarticle classes}
+% \changes{v1.5}{2013/01/06}{elsarticle class support added}
+%
+% \begin{macrocode}
+\caption@ifclassloaded{elsarticle}{%
+% \end{macrocode}
+% \begin{macrocode}
+ \DeclareCaptionDefaultFont{font}{\footnotesize}
+% \end{macrocode}
+% \begin{macrocode}
+}{}
+% \end{macrocode}
+%
+% \subsection{The \AmS{} \& \SmF{} classes}
+% \changes{v1.1}{2007/07/29}{\AmS\ \& \SmF\ classes support added}
+%
+% \begin{macrocode}
+\caption@ifclassloaded{ams}{%
+% \end{macrocode}
+% \begin{macrocode}
+ \let\captionmargin\captionindent % set to 3pc by AMS class
+ \begingroup\edef\@tempa{\endgroup
+ \noexpand\caption@g@addto@list\noexpand\caption@sty@default
+ {margin=\the\captionmargin
+ \caption@ifdefined\smf@makecaption{,maxmargin=.1\linewidth}{}}}
+ \@tempa
+ \caption@g@addto@list\caption@sls@default{margin*=.5\captionmargin}
+ \DeclareCaptionLabelSeparator{default}{.\enspace}
+ \DeclareCaptionDefaultFont{font}{\@captionfont}
+ \DeclareCaptionDefaultFont{labelfont}{\@captionheadfont}
+ \DeclareCaptionDefaultFont{textfont}{\@captionfont\upshape}
+ \captionsetup[figure]{position=b}
+ \captionsetup[table]{position=t}
+% \end{macrocode}
+% \begin{macrocode}
+}{}
+% \end{macrocode}
+%
+% \subsection{The beamer class (Part one)}
+% \changes{v1.1}{2007/03/10}{\package{beamer} class support added}
+% \changes{v1.3}{2011/08/06}{\package{beamer} class support revised}
+% \changes{v1.5}{2013/04/27}{The \package{beamer} template \texttt{caption label separator} will be used now}
+% \changes{v1.7}{2016/05/22}{Re-definition of label format \texttt{simpleMagyar} added to \package{beamer} class support}
+% \changes{v1.7}{2018/04/15}{Re-definition of label format \texttt{simpleMagyar} revised}
+% \changes{v1.7}{2018/05/01}{Definition of \package{beamer} default label font revised}
+%
+% \begin{macrocode}
+\caption@ifclassloaded{beamer}{%
+% \end{macrocode}
+%
+% \begin{macro}{\caption@ifbeamertemplate}
+% |\caption@ifbeamertemplate|\marg{caption template name}\marg{yes-code}\marg{no-code}\\
+% tests if the given beamer caption template was selected by the user (or not).
+% \begin{macrocode}
+ \newcommand*\caption@ifbeamertemplate[1]{%
+ \begingroup
+ \let\beamer@@tmpl@caption@ORI\beamer@@tmpl@caption
+ \@nameuse{beamer@@tmpop@caption@#1}%
+ \ifx\beamer@@tmpl@caption@ORI\beamer@@tmpl@caption
+ \endgroup\expandafter\@firstoftwo
+ \else
+ \endgroup\expandafter\@secondoftwo
+ \fi}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+ \DeclareCaptionLabelFormat{default}{%
+ \caption@ifbeamertemplate{numbered}%
+ \caption@lfmt@simple
+ \caption@lfmt@unnumbered
+ {#1}{#2}}
+% \end{macrocode}
+% The \package{magyar} babel package redefines the current label format to a one called |simple|\-|Magyar|,
+% defined within |\@@magyar@caption|\-|fix| which will be executed |\At|\-|Begin|\-|Document|.
+% \begin{macrocode}
+ \DeclareCaptionLabelFormat{default@magyar}{%
+ \caption@ifbeamertemplate{numbered}%
+ \caption@lfmt@simple@magyar
+ \caption@lfmt@unnumbered
+ {#1}{#2}}
+ \@ifundefined{@@magyar@captionfix}\AtBeginDocument\@firstofone{%
+ \@ifundefined{@@magyar@captionfix}{}{%
+ \g@addto@macro\@@magyar@captionfix{%
+ \let\caption@lfmt@simple@magyar\caption@lfmt@simpleMagyar
+ \let\caption@lfmt@simpleMagyar\caption@lfmt@default@magyar}}}
+% \end{macrocode}
+% \begin{macrocode}
+ \caption@declarelabelseparator
+ {\caption@ifbeamertemplate{caption name own line}\@gobble\@firstofone}
+ {default}
+ {\caption@ifbeamertemplate{caption name own line}{\\}%
+ {\usebeamertemplate{caption label separator}}}
+ \DeclareCaptionDefaultFont{font}{%
+ \usebeamerfont*{caption}%
+ \usebeamercolor[fg]{caption}}
+ \DeclareCaptionDefaultFont{labelfont}{%
+ \setbeamercolor*{caption}{}% avoid setting "caption" color additionally
+ \usebeamercolor[fg]{caption name}%
+ \setbeamerfont*{caption}{}% avoid setting "caption" font additionally
+ \usebeamerfont{caption name}}
+ \DeclareCaptionDefaultJustification{\raggedright}
+% \end{macrocode}
+% \begin{macrocode}
+ \DeclareOption{beamerclass}{%
+ \renewcommand\caption@ifslc{%
+ \caption@ifbeamertemplate{caption name own line}\@secondoftwo\@firstoftwo}
+ % Since the beamer class do not offer a `list of figures' we switch this support off.
+ \captionsetup{list=0}}
+ \PassOptionsToPackage{beamerclass}{caption3}
+% \end{macrocode}
+%
+% If the \package{beamer} document class is used, we offer a beamer
+% template called `caption3' which can be used with option `beamer' or
+% |\setbeamertemplate{caption}[caption3]|.\par
+% (Note that this is of no use when the \package{caption} package is used, too.)
+% \begin{macrocode}
+ \defbeamertemplate{caption}{caption3}{%
+ \caption@make\insertcaptionname\insertcaptionnumber\insertcaption}
+% \end{macrocode}
+% \begin{macrocode}
+ \DeclareOption{beamer}{%
+ % \usebeamertemplate**{caption} will set font
+ \DeclareCaptionDefaultFont{font}{}%
+ \setbeamertemplate{caption}[caption3]}
+% \end{macrocode}
+% \begin{macrocode}
+%
+% \begin{macrocode]
+}{}
+% \end{macrocode}
+%
+% \subsection{The KOMA-Script classes}
+% \changes{v1.1}{2007/03/31}{\KOMAScript\ classes support added}
+%
+% \begin{macrocode}
+\caption@ifclassloaded{koma}{%
+% \end{macrocode}
+% \begin{macrocode}
+ \DeclareCaptionFormat{default}[#1#2#3\par]{%
+ \ifdofullc@p
+ \caption@ifin@list\caption@lsepcrlist\caption@lsepname
+ {\caption@Error{%
+ The option `labelsep=\caption@lsepname' does not work\MessageBreak
+ with \noexpand\setcaphanging (which is set by default)}}%
+ {\caption@fmt@hang{#1}{#2}{#3}}%
+ \else
+ #1#2%
+ \ifdim\cap@indent<\z@
+ \par
+ \noindent\hspace*{-\cap@indent}%
+ \else\if@capbreak
+ \par
+ \fi\fi
+ #3\par
+ \fi}
+ \DeclareCaptionLabelSeparator{default}{\captionformat}
+ \DeclareCaptionDefaultFont{font}{\scr@fnt@caption}
+ \DeclareCaptionDefaultFont{labelfont}{\scr@fnt@captionlabel}
+% \end{macrocode}
+%
+% \changes{v1.0f}{2005/08/22}{Increased compatibility to KOMA-Script:
+% A special version of options `parindent' and `parskip' added}
+% \changes{v1.0g}{2006/01/03}{Bugfix 06-01-03: KOMA-Script variants of
+% `parskip' and `parindent' options revised and moved into caption kernel}
+% \changes{v1.0h}{2006/02/23}{KOMA-Script variants of `parskip' and
+% `parindent' are obsolete now, removed}
+% \changes{v1.0m}{2007/03/30}{KOMA-Script variants of `parskip' and
+% `parindent' re-added, since they still collide with the current
+% version of the subfig package (Sigh!)}
+%
+% There is an option clash between the \KOMAScript\ document classes
+% and the \package{caption} kernel, both define the options |parindent| and
+% |parskip| but with different meaning.
+% Furthermore the ones defined by the \package{caption} kernel take a
+% value as parameter but the \KOMAScript\ ones do not.
+% So we need special versions of the options |parindent| and |parskip| here
+% which determine if a value is given (and therefore should be treated as
+% our option) or not (and therefore should be ignored by us).\footnote{%^^A
+% This problem was completely solved due a change of \cs{caption@ProcessOptions}
+% in \thispackage\ \version{1.0h}, but we still need this workaround since
+% these options would otherwise still collide with the current version $1.3$
+% of the \package{subfig} package (Sigh!)}
+% \begin{macrocode}
+ \let\caption@KV@parindent\KV@caption@parindent
+ \DeclareCaptionOption{parindent}[]{%
+ \ifx,#1,%
+ \caption@Debug{Option `parindent' ignored}%
+ \else
+ \caption@KV@parindent{#1}%
+ \fi}%
+% \end{macrocode}
+% \begin{macrocode}
+ \let\caption@KV@parskip\KV@caption@parskip
+ \DeclareCaptionOption{parskip}[]{%
+ \ifx,#1,%
+ \caption@Debug{Option `parskip' ignored}%
+ \else
+ \caption@KV@parskip{#1}%
+ \fi}%
+% \end{macrocode}
+% \begin{macrocode}
+}{}
+% \end{macrocode}
+%
+% \subsection{The \NTG{} Dutch classes}
+% \changes{v1.1}{2007/04/06}{NTG classes support added}
+%
+% \begin{macrocode}
+\caption@ifclassloaded{ntg}{%
+% \end{macrocode}
+% \begin{macrocode}
+ \DeclareCaptionDefaultFont{labelfont}{\CaptionLabelFont}
+ \DeclareCaptionDefaultFont{textfont}{\CaptionTextFont}
+% \end{macrocode}
+% \begin{macrocode}
+}{}
+% \end{macrocode}
+%
+% \subsection{The thesis class}
+% \changes{v1.2a}{2008/01/31}{thesis class support added}
+% \changes{v1.2e}{2009/11/15}{Bugfix 09-11-14: thesis class support revised}
+%
+% \begin{macrocode}
+\caption@ifclassloaded{thesis}{%
+% \end{macrocode}
+% \begin{macrocode}
+ \DeclareCaptionDefaultFormat{hang}
+ \DeclareCaptionDefaultFont{labelfont}{\cph@font}
+ \DeclareCaptionDefaultFont{textfont}{\cpb@font}
+% \end{macrocode}
+% \begin{macrocode}
+}{}
+% \end{macrocode}
+%
+% \subsection{The arabic Babel option}
+% \changes{v1.8}{2018/05/20}{\package{arabic} babel package support added}
+%
+% \begin{macrocode}
+\caption@ifdefined\ArabiCoreLoaded{%
+% \end{macrocode}
+%
+% \begin{macro}{\caption@rl}
+% \changes{v1.8}{2018/05/20}{This macro added}
+% \begin{macrocode}
+ \newcommand\caption@rl[1]{\if@rl\textRL{#1}\else\textLR{#1}\fi}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+ \def\fnum@figure{\figurename\nobreakspace\thefigure}%
+ \def\fnum@table{\tablename\nobreakspace\thetable}%
+% \end{macrocode}
+% \begin{macrocode}
+ \DeclareCaptionLabelSeparator{arabi}{ : }
+ \DeclareCaptionLabelSeparator{default}{%
+ \if@rl\caption@lsep@arabi\else\caption@lsep@colon\fi}
+% \end{macrocode}
+% \begin{macrocode}
+}{%
+ \let\caption@rl\@firstofone
+}
+% \end{macrocode}
+%
+% \subsection{The frenchb Babel option}
+% \changes{v1.1}{2006/05/14}{\package{frenchb} babel package support added}
+%
+% \begin{macrocode}
+\caption@ifdefined\FB@makecaption{%
+% \end{macrocode}
+% \begin{macrocode}
+ \ifx\@makecaption\STD@makecaption
+ \DeclareCaptionLabelSeparator{default}{\CaptionSeparator}
+ \def\caption@frenchb{% supress frenchb warning
+ \let\STD@makecaption\@makecaption
+ \let\FB@makecaption\@makecaption}
+ \else
+ \ifx\@makecaption\@undefined\else
+ \caption@InfoNoLine{%
+ The definition of \protect\@makecaption\space
+ has been changed,\MessageBreak
+ frenchb will NOT customize it}%
+ \fi
+ \fi
+% \end{macrocode}
+% \begin{macrocode}
+}{}
+% \end{macrocode}
+%
+% \subsection{The frenchle/pro package}
+% \changes{v1.1}{2006/05/14}{\package{frenchle/pro} package support added}
+%
+% \begin{macrocode}
+\caption@ifdefined\frenchTeXmods{%
+% \end{macrocode}
+% \begin{macrocode}
+ \DeclareCaptionDefaultFont{textfont}{\itshape}%
+ \DeclareCaptionLabelSeparator{default}{\captionseparator\space}%
+% \end{macrocode}
+% \begin{macrocode}
+}{}
+% \end{macrocode}
+%
+% \subsection{The hungarian and magyar Babel option}
+% \changes{v1.3}{2009/03/29}{\package{magyar} package support added}
+% \changes{v1.3a}{2011/08/12}{\package{magyar} package support revised}
+% \changes{v1.8b}{2018/08/26}{\package{magyar} package support revised}
+%
+% \begin{macrocode}
+\DeclareCaptionListFormat{subperiod}{#2.}
+% \end{macrocode}
+%
+% \begin{macrocode}
+\def\caption@tempa#1{%
+ \@ifpackagewith{babel}{#1}{%
+ \caption@InfoNoLine{#1 babel option is loaded}%
+ \expandafter\addto\csname extras#1\endcsname{%
+ % change default labelsep and listformat
+ \caption@setdefaultlabelsep{period}%
+ \caption@setdefaultlistformat{subperiod}}%
+ \expandafter\addto\csname noextras#1\endcsname{%
+ % change default labelsep and listformat
+ \caption@setdefaultlabelsep{colon}%
+ \caption@setdefaultlistformat{subsimple}}%
+ }{}}
+% \end{macrocode}
+% \begin{macrocode}
+\caption@tempa{hungarian}
+\caption@tempa{magyar}
+% \end{macrocode}
+%
+% TODO: babel-latvian/latvian.ldf
+%
+% \section{Package support}
+%
+% \begin{macro}{\caption@xpackage}
+% \changes{v1.11}{2020/05/10}{This macro added}
+% |\caption@xpackage|\marg{macro}\marg{package}\marg{option}
+% expands the given macro if the given package is not loaded.
+% (Note: We cannot use |\@ifpackageloaded| here since it's not available after |\AtBeginDocument|.)
+% \begin{macrocode}
+\newcommand*\caption@xpackage[2]{%
+ \expandafter\ifx\csname ver@#2.\caption@pkgextension\endcsname\relax
+ \expandafter\@firstofone
+ \else
+ \expandafter\@gobbletwo
+ \fi
+ {#1{#2}}}
+% \end{macrocode}
+% \begin{macrocode}
+\let\caption@pkgextension\@pkgextension
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@loadpackage}
+% \changes{v1.11}{2020/05/10}{This macro added}
+% |\caption@loadpackage|\marg{package}\marg{caption option}
+% loads the given package immediately.
+% \begin{macrocode}
+\newcommand*\caption@loadpackage{%
+ \caption@xpackage\caption@@loadpackage}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@@loadpackage[2]{%
+ \caption@Info{Option `#2' requires the `#1' package}%
+ \RequirePackage{#1}\relax}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@requirepackage}
+% \changes{v1.10}{2020/05/10}{This macro added}
+% |\caption@requirepackage|\marg{package}\marg{caption option}
+% indicates that the given package option needs a package.
+% \begin{macrocode}
+\newcommand*\caption@requirepackage{%
+ \caption@xpackage\caption@@requirepackage}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@@requirepackage[2]{%
+ \@cons\caption@packagelist{{#1}{#2}}}% load package later on
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@pkg@list}
+% \changes{v1.4b}{2012/01/12}{This macro added}
+% We used this in the past as list of packages loaded |\AtBeginDocument|.
+% (Note: Old |.aux| files could contain |\@cons|\-|\caption@pkg@list|\-|{{|\meta{package}|}}|,
+% so this macro should always be defined, even if we change the following code in the future.)
+% \begin{macrocode}
+\newcommand*\caption@pkg@list{}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@packagelist}
+% \changes{v1.11}{2020/05/10}{This macro added}
+% We use this as list of packages loaded |\AtBeginDocument|.
+% \begin{macrocode}
+\newcommand*\caption@packagelist{}
+\@onlypreamble\caption@packagelist
+% \end{macrocode}
+% \begin{macrocode}
+\caption@AtBeginDocument{%
+ \def\caption@tempa{\endgroup}%
+ \begingroup
+ \def\@elt#1#2{%
+ \g@addto@macro\caption@tempa{%
+ \caption@loadpackage{#1}{#2}}}%
+ \caption@packagelist
+ \caption@tempa
+% \end{macrocode}
+% \begin{macrocode}
+ \renewcommand*\caption@@loadpackage[2]{%
+ \caption@Error{Option `#2' requires the `#1' package}}%
+ \let\caption@@requirepackage\caption@@loadpackage
+ }
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@usepackage}
+% \changes{v1.11}{2020/05/10}{This macro added}
+% |\caption@usepackage|\marg{package}\marg{option}\marg{code}
+% loads the given package and executes the given code.
+% (Note: Since the package might use the crappy \package{keyval}
+% package, too, we need to save \& restore some macros here, otherwise this
+% recursion won't work properly.)
+% \begin{macrocode}
+\newcommand*\caption@usepackage[3]{%
+ \IfCaptionOptionCheck
+ {\caption@requirepackage{#1}{#2}}%
+ {\let\KV@prefix@ORI\KV@prefix
+ \let\@tempc@ORI\@tempc
+ \caption@loadpackage{#1}{#2}%
+ #3%
+ \let\@tempc\@tempc@ORI
+ \let\KV@prefix\KV@prefix@ORI}}
+% \end{macro}
+%
+% \subsection{The newfloat package}
+%
+% \begin{macro}{\caption@newfloat}
+% \changes{v1.4b}{2012/01/12}{This macro added}
+% \changes{v1.8h}{2020/01/03}{Usage of \cs{caption@ifpackageloaded} replaced by \cs{RequirePackage}}
+% \changes{v1.11}{2020/05/10}{Usage of \cs{RequirePackage} replaced by \cs{caption@usepackage}}
+% |\caption@newfloat|\marg{option}\marg{code}
+% loads the \package{newfloat} package and executes the given code afterwards.
+% \begin{macrocode}
+\newcommand*\caption@newfloat{\caption@usepackage{newfloat}}
+% \end{macrocode}
+% \end{macro}
+%
+% \changes{v1.0c}{2004/08/03}{Options \opt{figurename} and \opt{tablename} added}
+% \changes{v1.1}{2007/07/04}{Options \opt{figurename} and \opt{tablename} re-written}
+% \changes{v1.2}{2007/11/18}{Option \opt{name} added}
+% \begin{macrocode}
+\DeclareCaptionOption{figurename}{\caption@SetName{figure}{#1}}
+\@onlypreamble@key{caption}{figurename}
+\DeclareCaptionOption{tablename}{\caption@SetName{table}{#1}}
+\@onlypreamble@key{caption}{tablename}
+% \end{macrocode}
+%
+% \changes{v1.2a}{2008/02/28}{Options \opt{listfigurename} and \opt{listtablename} added}
+% \begin{macrocode}
+\DeclareCaptionOption{listfigurename}{\caption@SetName{listfigure}{#1}}
+\@onlypreamble@key{caption}{listfigurename}
+\DeclareCaptionOption{listtablename}{\caption@SetName{listtable}{#1}}
+\@onlypreamble@key{caption}{listtablename}
+% \end{macrocode}
+%
+% \begin{macro}{\caption@SetName}
+% \changes{v1.1}{2007/07/04}{This macro added}
+% \changes{v1.2}{2007/11/18}{After-preamble variant added}
+% \changes{v1.2a}{2008/02/28}{Renamed from \cs{caption@SetFloatName} to \cs{caption@SetName}}
+% \changes{v1.2b}{2008/08/02}{Bugfix: Works now without \cs{addto}, too}
+% \changes{v1.4a}{2011/10/29}{Outsourced to \package{newfloat} package}
+% \changes{v1.4b}{2012/01/12}{Bugfix: Uses \cs{caption@newfloat} now}
+% |\caption@SetName|\marg{float}\marg{name}
+% \begin{macrocode}
+\newcommand*\caption@SetName[2]{%
+ \caption@newfloat{#1name}{\newfloat@setname{#1}{#2}}}
+\@onlypreamble\caption@SetName
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+\DeclareCaptionOption{name}{%
+ \IfCaptionOptionCheck{}{\caption@setname\@captype{#1}}}
+% \end{macrocode}
+%
+% \begin{macro}{\caption@setname}
+% |\caption@setname|\marg{float}\marg{name}
+% \begin{macrocode}
+\newcommand*\caption@setname[2]{%
+ \@namedef{#1name}{#2}}
+% \end{macrocode}
+% \end{macro}
+%
+% \changes{v1.2}{2007/12/21}{Options \opt{figurewithin} and \opt{tablewithin} added}
+% \changes{v1.2e}{2010/01/09}{The \opt{within} options are now available within the document, too}
+%
+% \begin{macrocode}
+\DeclareCaptionOption{figurewithin}{\caption@within{figure}{#1}}
+\DeclareCaptionOptionNoValue{figurewithout}{\caption@within{figure}{none}}
+\DeclareCaptionOption{tablewithin}{\caption@within{table}{#1}}
+\DeclareCaptionOptionNoValue{tablewithout}{\caption@within{table}{none}}
+% \end{macrocode}
+%
+% \begin{macro}{\caption@within}
+% \changes{v1.2}{2007/12/21}{This macro added}
+% \changes{v1.4a}{2011/10/29}{Outsourced to \package{newfloat} package}
+% \changes{v1.4b}{2012/01/12}{Bugfix: Uses \cs{caption@newfloat} now}
+% |\caption@within|\marg{float}\marg{value}
+% \begin{macrocode}
+\newcommand*\caption@within[2]{%
+ \caption@newfloat{#1within}{\newfloat@setwithin{#1}{#2}}}
+% \end{macrocode}
+% \end{macro}
+%
+% \changes{v1.2b}{2008/04/13}{Option \opt{within} added}
+% \changes{v1.2e}{2010/01/09}{The global \opt{within} option will now affect user-defined floats declared with \cs{DeclareCaptionType}, too}
+%
+% \begin{macrocode}
+\DeclareCaptionOption{within}{%
+ \caption@newfloat{within}{\newfloatsetup{within=#1}}}
+\DeclareCaptionOptionNoValue{without}{%
+ \caption@newfloat{without}{\newfloatsetup{without}}}
+% \end{macrocode}
+%
+% \subsection{The ragged2e package}
+% \changes{v1.0b}{2004/05/16}{Improved \package{ragged2e} package support}
+% \changes{v1.8h}{2020/01/03}{Revised \package{ragged2e} package support}
+% \changes{v1.9}{2020/05/05}{Enhanced \package{ragged2e} package support}
+% \changes{v1.10}{2020/05/10}{Revised \package{ragged2e} package support}
+%
+% We support the upper-case commands offered by the \package{ragged2e}
+% package.
+% \begin{macrocode}
+\DeclareCaptionJustification[ragged2e]{Justified}{\justifying}
+\DeclareCaptionJustification[ragged2e]{Centering}{\Centering}
+\DeclareCaptionJustification[ragged2e]{RaggedLeft}{\RaggedLeft}
+\DeclareCaptionJustification[ragged2e]{RaggedRight}{\RaggedRight}
+% \end{macrocode}
+%
+% \subsection{The sansmath package}
+% \changes{v1.3}{2011/01/01}{\package{sansmath} package support added}
+% \changes{v1.10}{2020/05/10}{\package{sansmath} package support revised}
+%
+% \begin{macrocode}
+\DeclareCaptionFont[sansmath]{sansmath}{\sansmath}
+% \end{macrocode}
+%
+% \subsection{The setspace package}
+% \changes{v1.0n}{2007/04/02}{\package{setspace} package support added}
+% \changes{v1.2d}{2009/10/09}{\package{setspace} package support revised}
+%
+% \begin{macrocode}
+\DeclareCaptionFont{singlespacing}{%
+ \caption@ifdefined\setspace@singlespace{%
+ \setstretch\setspace@singlespace}{}}% normally 1
+\DeclareCaptionFont[setspace]{onehalfspacing}{\onehalfspacing}
+\DeclareCaptionFont[setspace]{doublespacing}{\doublespacing}
+\DeclareCaptionFont[setspace]{stretch}{\setstretch{#1}}
+% \end{macrocode}
+%
+% \subsection{The subfig package}
+% \changes{v1.1}{2007/07/07}{Several adaptions to the \package{subfig} package added}
+% \changes{v1.4a}{2011/11/01}{Test for the \package{subfig} package revised}
+%
+% Since the \package{subfig} package is not maintained anymore,
+% we have to make several adaptions to \thispackage~\version{1.1} here.
+% Please note that we only support the version $1.3$ of the \package{subfig} package here.
+% So older versions do not work with this version of \thispackage, and newer
+% versions are expected to be adapted.
+% \begin{macrocode}
+\caption@AtBeginDocument{%
+ \def\@tempa{2005/06/28 ver: 1.3 subfig package}%
+ \expandafter\ifx\csname ver@subfig.sty\endcsname\@tempa
+ \caption@InfoNoLine{subfig package v1.3 is loaded}%
+% \end{macrocode}
+% \begin{macrocode}
+ \let\caption@setfloattype\@gobble
+ \let\@dottedxxxline\sf@NEW@dottedxxxline
+ \let\sf@subfloat\sf@NEW@subfloat
+% \end{macrocode}
+% \begin{macrocode}
+ \fi
+ \let\sf@NEW@dottedxxxline\@undefined
+ \let\sf@NEW@subfloat\@undefined}
+% \end{macrocode}
+%
+% \begin{macro}{\@dottedxxxline}
+% New version of |\@dottedxxxline|
+% \begin{macrocode}
+\def\sf@NEW@dottedxxxline#1#2#3#4#5#6#7{%
+ \begingroup
+ \caption@setfloattype{#1}%
+ \caption@setoptions{subfloat}%
+ \caption@setoptions{sub#1}%
+ \ifnum #3>\@nameuse{c@#2depth}\else
+ \@dottedtocline{\z@}{#4}{#5}{#6}{#7}%
+ \fi
+ \endgroup}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\sf@subfloat}
+% \changes{v1.4b}{2011/12/29}{Bugfix 11-12-23: Usage of \cs{caption@warmup} added}
+% New version of |\sf@subfloat|
+% \begin{macrocode}
+\def\sf@NEW@subfloat{%
+ \begingroup
+ \@nameuse{caption@warmup}%
+ \caption@setfloattype\@captype
+ \sf@ifpositiontop{%
+ \maincaptiontoptrue
+ }{%
+ \maincaptiontopfalse
+ }%
+ \caption@setoptions{subfloat}%
+ \caption@setoptions{sub\@captype}%
+ \let\sf@oldlabel=\label
+ \let\label=\subfloat@label
+ \ifmaincaptiontop\else
+ \advance\@nameuse{c@\@captype}\@ne
+ \fi
+ \refstepcounter{sub\@captype}%
+ \setcounter{sub\@captype @save}{\value{sub\@captype}}%
+ \@ifnextchar [% %] match left bracket
+ {\sf@@subfloat}%
+ {\sf@@subfloat[\@empty]}}
+% \end{macrocode}
+% \end{macro}
+%
+% Make the \package{subfig} package documentation compile.
+% \begin{macrocode}
+%%\@ifl@aded{dtx}{subfig}{\caption@loadpackage{ragged2e}{}}{} % not needed
+\DeclareCaptionOption{lofdepth}[2]{\caption@ifdefined\c@lofdepth{\setcounter{lofdepth}{#1}}{}}
+\DeclareCaptionOption{lotdepth}[2]{\caption@ifdefined\c@lotdepth{\setcounter{lotdepth}{#1}}{}}
+% \end{macrocode}
+%
+% \section{Execution of options}
+%
+% \begin{macrocode}
+\captionsetup{style=default,position=default,%
+ list,listformat=default,twoside=\if@twoside 1\else 0\fi}
+% \end{macrocode}
+% \begin{macrocode}
+\ProcessOptions*
+% \end{macrocode}
+%
+% \section{Making an `List of' entry}
+%
+% \begin{macro}{\caption@addcontentsline}
+% \changes{v1.1}{2007/07/01}{This macro added}
+% \changes{v1.3}{2010/10/26}{Error check added}
+% \changes{v1.3}{2011/06/24}{Split into two macros}
+% \changes{v1.4}{2011/08/19}{Split into three macros}
+% \changes{v1.4}{2011/08/30}{Support for option \opt{listtype=} added}
+% \changes{v1.5}{2012/01/15}{Usage of \cs{caption@addsubcontentslines} added}
+% \changes{v1.7}{2015/09/15}{Argument \#3 which holds the environment name added to \cs{caption@lstfmt}}
+% \changes{v1.7}{2015/09/20}{Unfortunately \package{subfig} defines and uses \cs{caption@lstfmt} as well, so I replaced the third argument with \cs{captionlisttype}}
+% \changes{v1.8}{2018/09/06}{Adapted to the \package{chkfloat} package}
+% |\caption@addcontentsline|\marg{type}\marg{list entry}\par
+% Makes an entry in the list-of-whatever, if requested,
+% i.e.~the argument \meta{list entry} is not empty and
+% |listof=| was set to |true|.
+% \begin{macrocode}
+\newcommand\caption@addcontentsline[2]{%
+ \caption@ifcontentsline{#2}{%
+ \begingroup
+ \let\@tempa\@gobble
+ \caption@ifdefined\caption@listtype
+ {\let\@tempa\@firstofone}%
+ {\edef\caption@listtype{#1}}%
+ \caption@ifdefined\caption@listtype@ext
+ {\edef\caption@listtype{\caption@listtype\caption@listtype@ext}%
+ \let\@tempa\@firstofone}%
+ {}%
+ \@tempa
+ {\caption@Debug{addcontentsline: #1 => \caption@listtype}%
+% \caption@setoptions\caption@listtype
+ \@namedef{the\caption@listtype}{\@nameuse{the#1}}}%
+ \expandafter\caption@@addcontentsline\expandafter{\caption@listtype}{#2}%
+ \endgroup}%
+ \caption@addsubcontentslines{#1}}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand\caption@@addcontentsline[2]{%
+ {\let\\\space
+ \@ifundefined{ext@#1}%
+ {\caption@Error{No float type '#1' defined}}%
+ {\def\captionlisttype{#1}%
+ \caption@add@contentsline
+ {\csname ext@#1\endcsname}%
+ {#1}%
+ {\caption@lstfmt{\@nameuse{p@#1}}{\@nameuse{the#1}}}%
+ {\ignorespaces #2}%
+ \caption@chkfloat{#1}{#2}}}}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@add@contentsline{%
+ \caption@@@addcontentsline}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@@@addcontentsline[4]{%
+% \caption@ifdefined\main@Arabi@language
+% {\addtocontents{#1}{\xstring\select@language{\main@Arabi@language}}}{}%
+ \addcontentsline{#1}{#2}{\protect\numberline{#3}{#4}}}
+% \end{macrocode}
+% \begin{macrocode}
+\let\caption@chkfloat\@gobbletwo
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand\caption@ifcontentsline[1]{%
+ \caption@iflist
+ {\def\@tempa{#1}}%
+ {\let\@tempa\@empty}%
+ \ifx\@tempa\@empty
+ \expandafter\@gobble
+ \else
+ \expandafter\@firstofone
+ \fi}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@addsubcontentslines[1]{}
+% \end{macrocode}
+% \end{macro}
+%
+% \section{Typesetting the caption}
+%
+% \begin{macro}{\ifcaption@star}
+% If the starred form of |\caption| is used, this will be set to |true|.
+% (It will be reset to |false| at the end of |\caption@@make|.)
+% \begin{macrocode}
+\newif\ifcaption@star
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@fnum}
+% \changes{v1.1}{2007/08/21}{This macro added}
+% |\caption@fnum|\marg{float type}\par
+% Typesets the caption label; as replacement for |\fnum@|\meta{float type}.
+% \begin{macrocode}
+\newcommand*\caption@fnum[1]{\caption@lfmt{\@nameuse{#1name}}{\@nameuse{the#1}}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@make}
+% |\caption@make|\marg{float name}\marg{ref.\ number}\marg{text}\par
+% Typesets the caption.
+% \begin{macrocode}
+\newcommand\caption@make[2]{\caption@@make{\caption@lfmt{#1}{#2}}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@@make}
+% \changes{v1.0b}{2004/05/16}{Bugfix 04-05-05: \cs{ifdim}\cs{captionindent=}\cs{z@} added}
+% \changes{v1.0c}{2005/02/12}{Bugfix 04-10-26: Use \cs{@tempdima} instead of
+% \cs{captionmargin} resp. \cs{captionwidth}; check for \cs{z@} added}
+% \changes{v1.0c}{2005/02/12}{Bugfix: \cs{hskip}\cs{captionmargin} to the end
+% of caption added}
+% \changes{v1.0c}{2005/02/12}{Bugfix: \cs{strut} moved from here to \cs{caption@@@make}}
+% \changes{v1.0c}{2005/02/12}{Single-line-check moved up so it can affect margins now}
+% \changes{v1.0c}{2005/02/09}{Improvement: \cs{caption@ifh} added}
+% \changes{v1.0c}{2005/02/09}{Bugfix: \cs{leavevmode} added}
+% \changes{v1.0f}{2005/08/24}{Uses \cs{sbox} instead of \cs{setbox} in single-line-check}
+% \changes{v1.0g}{2005/12/04}{Uses \cs{caption@slc} now}
+% \changes{v1.0g}{2006/01/11}{Bugfix: \cs{caption@calcmargin} inside
+% single-line-check replaced by \cs{relax}}
+% \changes{v1.0g}{2006/01/11}{Bugfix: \cs{caption@startbox} will always be
+% typeset in horizontal mode}
+% \changes{v1.0i}{2006/05/13}{Uses \cs{caption@parbox} instead of \cs{caption@start/endbox}}
+% \changes{v1.0j}{2007/01/04}{Oops, bugfix 04-05-05 got lost in v1.0h, re-added}
+% \changes{v1.0n}{2007/04/03}{Usage of \cs{caption@ifoddpage} added}
+% \changes{v1.1}{2007/07/29}{\cs{caption@calcmargin} moved below single-line-check}
+% \changes{v1.1e}{2007/10/28}{\cs{caption@stepcounter} added}
+% \changes{v1.5}{2012/03/15}{Uses \cs{caption@tempdima} instead of \cs{@tempdima}}
+% \changes{v1.5}{2012/12/26}{max-margin stuff moved to \cs{caption@calcmargin}}
+% \changes{v1.6}{2013/05/01}{Usage of \cs{caption@box} added}
+% \changes{v1.7}{2016/01/31}{Adapted to the \package{bicaption} package}
+% \changes{v1.8f}{2019/12/18}{Usage of \cs{linewidth} replaced by \cs{hsize}}
+% |\caption@@make|\marg{caption label}\marg{caption text}
+% \begin{macrocode}
+\newcommand\caption@@make[2]{%
+ \begingroup
+ \caption@@make@{#1}{#2}%
+ \endgroup
+ \caption@@make@epilogue}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand\caption@@make@[2]{%
+ \caption@stepthecounter
+ \caption@beginhook
+% \end{macrocode}
+%
+% Typeset the outer box |\caption@box|
+% \begin{macrocode}
+ \caption@box\hsize{%
+% \end{macrocode}
+%
+% Special single-line treatment (option |singlelinecheck=|)
+% \begin{macrocode}
+ \caption@ifslc{\caption@slc{#1}{#2}\caption@singleline\relax}{}%
+% \end{macrocode}
+%
+% Typeset the left margin (option |margin=|)
+% \begin{macrocode}
+ \caption@calcmargin
+ \caption@tempdima\captionmargin
+ \ifdim\captionmargin@=\z@ \else
+ \caption@ifoddpage{}{\advance\caption@tempdima\captionmargin@}%
+ \fi
+ \caption@ifh{\advance\caption@tempdima\caption@indent}%
+ \hspace\caption@tempdima
+% \end{macrocode}
+%
+% We actually use a |\vbox| of width |\captionwidth - \caption@indent|
+% to typeset the caption.
+% \Note{\cs{captionindent} is \emph{not} supported if the caption format
+% was defined with \cs{DeclareCaptionFormat*}.}
+% \begin{macrocode}
+ \caption@tempdima\captionwidth
+ \caption@ifh{\advance\caption@tempdima-\caption@indent}%
+ \caption@parbox\caption@tempdima{%
+% \end{macrocode}
+%
+% Typeset the indention (option |indention=|)\\
+% {\small Bugfix 04-05-05:
+% |\hskip-\caption@indent| replaced by |\ifdim\caption@indent=\z@|\ldots}
+% \begin{macrocode}
+ \caption@ifh{%
+ \ifdim\caption@indent=\z@
+ \leavevmode
+ \else
+ \hskip-\caption@indent
+ \fi}%
+% \end{macrocode}
+%
+% Typeset the caption itself and close the |\caption@parbox|
+% \begin{macrocode}
+ \caption@@@make{#1}{#2}}%
+% \end{macrocode}
+%
+% Typeset the right margin (option |margin=|)
+% \begin{macrocode}
+ \caption@tempdima\captionmargin
+ \ifdim\captionmargin@=\z@ \else
+ \caption@ifoddpage{\advance\caption@tempdima\captionmargin@}{}%
+ \fi
+ \hspace\caption@tempdima
+% \end{macrocode}
+%
+% Close the outer box |\caption@box|
+% \begin{macrocode}
+ }%
+% \end{macrocode}
+%
+% \begin{macrocode}
+ \caption@endhook}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand\caption@@make@epilogue{%
+ \global\caption@starfalse}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@calcmargin}
+% \changes{v1.0f}{2005/10/24}{Internal: \cs{ifcaption@width} replaced by \cs{ifdim}\cs{captionwidth=}\cs{z@}}
+% \changes{v1.0g}{2006/01/12}{Improvement: Takes care of list environment now}
+% \changes{v1.1}{2006/05/13}{Check of \cs{@listdepth} removed (not necessary anymore), use \cs{linewidth} instead of \cs{hsize}}
+% \changes{v1.5}{2012/12/26}{max-margin stuff moved from \cs{caption@@make} to here}
+% \changes{v1.8f}{2019/12/18}{Usage of \cs{linewidth} replaced by \cs{hsize}}
+% |\caption@calcmargin|\par
+% Calculate |\captionmargin| \& |\captionwidth|, so both contain valid
+% values.
+% \begin{macrocode}
+\newcommand*\caption@calcmargin{%
+ \caption@calcmargin@hook
+% \end{macrocode}
+% Check margin, if |\caption@minmargin| or |\caption@maxmargin| is set
+% \begin{macrocode}
+ \ifx\caption@maxmargin\@undefined \else
+ \ifdim\captionmargin>\caption@maxmargin\relax
+ \captionmargin\caption@maxmargin\relax
+ \fi
+ \fi
+ \ifx\caption@minmargin\@undefined \else
+ \ifdim\captionmargin<\caption@minmargin\relax
+ \captionmargin\caption@minmargin\relax
+ \fi
+ \fi
+% \end{macrocode}
+% \begin{macrocode}
+ \ifdim\captionwidth=\z@
+ \captionwidth\hsize
+ \advance\captionwidth by -2\captionmargin
+ \advance\captionwidth by -\captionmargin@
+ \else
+ \captionmargin\hsize
+ \advance\captionmargin by -\captionwidth
+ \divide\captionmargin by 2
+ \captionmargin@\z@
+ \fi
+% \end{macrocode}
+% \begin{macrocode}
+ \caption@Debug{%
+ \string\hsize=\the\hsize,
+ \string\captionwidth=\the\captionwidth,\MessageBreak
+ \string\captionmargin=\the\captionmargin,
+ \string\captionmargin@=\the\captionmargin@}%
+% \end{macrocode}
+% \begin{macrocode}
+}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@slc}
+% \changes{v1.1}{2007/06/13}{\cs{let}\cs{caption@hj}\cs{relax} added}
+% \changes{v1.1}{2007/07/29}{\cs{caption@setup}\cs{caption@sls} added after \cs{begingroup}}
+% \changes{v1.1}{2007/07/29}{\cs{caption@calcmargin} added}
+% \changes{v1.1c}{2007/10/14}{Support of \cs{caption@slfmt} added}
+% \changes{v1.1d}{2007/10/23}{`SingleLine' renamed to `singleline' for consistency}
+% \changes{v1.3}{2010/09/04}{Split into \cs{caption@slc} and \cs{caption@@slc}}
+% \changes{v1.5}{2012/12/26}{Merged into a single macro again}
+% \changes{v1.5}{2013/04/14}{Definition and usage of \cs{ifsinglelinecaption} added}
+% |\caption@slc|\marg{label}\marg{text}\marg{single-line-code}\marg{multi-line-code}\par
+% This one does the single-line-check.
+% \begin{macrocode}
+\newcommand\caption@slc[4]{%
+ \caption@Debug{Begin SLC}%
+ \singlelinecaptiontrue
+ \begingroup
+ \caption@singleline
+ \let\caption@hj\@empty
+ \caption@calcmargin % calculate \captionwidth
+ \caption@prepareslc
+ \sbox\@tempboxa{\caption@@@make{#1}{#2}}%
+ \ifdim\wd\@tempboxa>\captionwidth
+ \endgroup
+ \singlelinecaptionfalse
+ #4%
+ \else
+ \endgroup
+ #3%
+ \fi
+ \caption@Debug{End SLC}}
+% \end{macrocode}
+% \begin{macrocode}
+\newif\ifsinglelinecaption
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@singleline{%
+ \caption@xsetup\caption@opt@singleline
+ \let\caption@fmt\caption@slfmt}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@prepareslc}
+% \changes{v1.0b}{2004/05/16}{Bugfix: Redefinition of \cs{label} \& \cs{@footnotetext} added}
+% \changes{v1.0b}{2004/05/16}{Redefine \cs{stepcounter} instead of \cs{footnote(mark)}}
+% \changes{v1.0c}{2005/02/12}{\cs{let}\cs{caption@hj}\cs{relax} added}
+% \changes{v1.0f}{2005/07/09}{Support of \package{endnotes} package added}
+% \changes{v1.1}{2007/06/13}{\cs{let}\cs{caption@hj}\cs{relax} moved to \cs{caption@slc}}
+% \changes{v1.1}{2007/06/13}{Redefinition of \cs{(H@)refstepcounter} added}
+% \changes{v1.1}{2007/08/12}{Redefinition of \cs{label} improved}
+% \changes{v1.1c}{2007/10/06}{Definition of \cs{caption@l@stepcounter} added}
+% \changes{v1.3}{2011/07/07}{Bugfix 11-07-06: Redefinition of \cs{footnote} and \cs{footnotemark} added, redefinition of \cs{stepcounter} and \cs{refstepcounter} dropped}
+% \changes{v1.4a}{2011/10/21}{Redefinition of \cs{pagenote} from \textsf{memoir} document class added}
+% \changes{v1.4a}{2011/10/22}{Redefinition of \cs{footnote} revised}
+% \changes{v1.5}{2013/04/13}{Redefinition os \cs{glsunset} added}
+% \changes{v1.8}{2018/01/21}{Redefinition of \cs{endnote} added (thanks to Markus Kohm)}
+% \changes{v1.8}{2018/05/16}{Redefinition of \cs{acused} added}
+% \changes{v1.8}{2018/05/26}{Definition method changed so it can be pre-defined by other packages}
+% \changes{v1.8}{2018/05/27}{Redefinition of \cs{hypertarget} added}
+% \changes{v1.12b}{2020/07/20}{Special adaption to \class{beamer} added}
+% |\caption@prepareslc|\par
+% Re-define anything which would disturb the single-line-check.
+% \begin{macrocode}
+\providecommand*\caption@prepareslc{}
+\g@addto@macro\caption@prepareslc{%
+ \let\label\caption@gobble
+ \let\hypertarget\@gobbletwo
+% \end{macrocode}
+% We re-define \cs{footnote} so
+% \begin{enumerate}
+% \item The footnote counter will not be increased twice (but still the correct footnote mark will be used within the single-line-check)
+% \item The footnote text will not be evaluated twice
+% \end{enumerate}
+% \begin{macrocode}
+ \let\caption@footnote@ORI\footnote
+ \def\footnote{\caption@withoptargs\caption@footnote}%
+ \let\caption@footnotemark@ORI\footnotemark
+ \def\footnotemark{\caption@withoptargs\caption@footnotemark}%
+ \let\caption@footnotetext@ORI\@footnotetext
+ \let\@footnotetext\caption@gobble
+% \end{macrocode}
+% Same for \cs{endnote}
+% \begin{macrocode}
+ \let\caption@endnote@ORI\endnote
+ \def\endnote{\caption@withoptargs\caption@endnote}%
+ \let\caption@endnotemark@ORI\endnotemark
+ \def\endnotemark{\caption@withoptargs\caption@endnotemark}%
+ \let\caption@endnotetext@ORI\@endnotetext
+ \let\@endnotetext\caption@gobble
+% \end{macrocode}
+% \begin{macrocode}
+ \let\pagenote\caption@gobble
+% \end{macrocode}
+% Adaption to the \package{acronym} package\par
+% See also \url{https://tex.stackexchange.com/questions/428788}
+% \begin{macrocode}
+ \let\acused\@gobble
+ \let\AC@placelabel\@gobble
+% \end{macrocode}
+% Adaption to the \package{glossaries} package.\par
+% Please note that while this adaption is usually sufficient
+% it could give incorrect measuring results if \cs{gls} is both used
+% for the very first time and more than once (for a particular acronym).
+% The alternative would be using internal macros of the
+% \package{glossaries} package which I would like to avoid.\par
+% See also \url{https://tex.stackexchange.com/questions/108368}
+% \begin{macrocode}
+ \let\glsunset\@gobble
+% \end{macrocode}
+% \begin{macrocode}
+}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand\caption@footnote[2]{%
+ \caption@footnotemark{#1}}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand\caption@footnotemark[1]{%
+ \begingroup
+ \let\stepcounter\caption@l@stepcounter
+ \caption@footnotemark@ORI#1\relax
+ \endgroup}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand\caption@endnote[2]{%
+ \caption@endnotemark{#1}}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand\caption@endnotemark[1]{%
+ \begingroup
+ \let\stepcounter\caption@l@stepcounter
+ \caption@endnotemark@ORI#1\relax
+ \endgroup}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@l@stepcounter[1]{%
+ \advance\csname c@#1\endcsname\@ne\relax}
+% \end{macrocode}
+% The patch above assumes that the optional arguments of \cs{footnote} and
+% \cs{footnotemark} match. Since this is not the case in \class{beamer} based documents,
+% and since \class{beamer} extents the syntax of \cs{footnote} in a special way,
+% we need a special patch here.\par
+% \emph{Note:} For this patch we assume that \cs{footnote} will always end with the usage of
+% \cs{beamer@footnotetext}. (Unfortunately \cs{footnote} is defined too monolithic
+% in \class{beamer} to offer a less dirty patch.)
+% \begin{macrocode}
+\caption@ifclassloaded{beamer}{%
+ \g@addto@macro\caption@prepareslc{%
+ \def\footnote{%
+ \begingroup
+ \let\stepcounter\caption@l@stepcounter
+ \renewcommand<>\beamer@framefootnotetext[1]{%
+ \endgroup}%
+ \let\@footnotetext\beamer@framefootnotetext
+ \caption@footnote@ORI}}}{}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@applyfont}
+% \changes{v1.3}{2010/09/04}{This macro added}
+% |\caption@applyfont|\par
+% This macro executes the font relevant macros, i.e. by default
+% the options set by |justification=|, |font=|, and |size=|.
+% \begin{macrocode}
+\newcommand*\caption@applyfont{%
+ \caption@hj\captionfont\captionsize}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@@@make}
+% \changes{v1.0b}{2004/05/16}{Bugfix 04-05-06: \cs{allowhyphens} added}
+% \changes{v1.0c}{2005/02/12}{Bugfix 04-12-16: Use some kind of
+% \cs{@startstrut}\cs{strutbox} instead of \cs{strut}}
+% \changes{v1.0c}{2005/02/12}{Bugfix 05-01-23: \cs{@finalstrut}\cs{strutbox} added}
+% \changes{v1.0d}{2005/05/05}{Use \cs{caption@ifempty};
+% \cs{let}\cs{caption@ifstrut}\cs{@secondoftwo} added}
+% \changes{v1.0d}{2005/05/05}{Bugfix: Handling of \cs{ifcaption@star} changed}
+% \changes{v1.0f}{2005/08/24}{Check for empty label added}
+% \changes{v1.0f}{2005/08/25}{\cs{caption@iflf} added}
+% \changes{v1.0j}{2007/02/18}{Usage of \cs{caption@tfmt} added}
+% \changes{v1.1}{2007/05/07}{Bugfix: \cs{ifhmode} added to \cs{@finalstrut}}
+% \changes{v1.2}{2007/11/17}{Made option \opt{size=} stronger than \opt{font=}}
+% \changes{v1.3}{2010/09/04}{Uses \cs{caption@applyfont} now}
+% \changes{v1.3}{2010/11/01}{Bugfix: If the caption text is empty, the text format will be set to \opt{simple} now}
+% \changes{v1.7}{2016/02/01}{Bugfix: \cs{relax} added before \cs{caption@lsep} so the label separator
+% will not be gobbled if the label font command ignores spaces, e.g. by usage of \cs{color}}
+% \changes{v1.8}{2018/09/12}{\cs{par} replaced by \cs{captiontextend}}
+% |\caption@@@make|\marg{caption label}\marg{caption text}\par
+% This one finally typesets the caption paragraph, without margin and indention.
+% \begin{macrocode}
+\newcommand\caption@@@make[2]{%
+% \end{macrocode}
+%
+% If the label is empty, we use no caption label separator.
+% \begin{macrocode}
+ \sbox\@tempboxa{#1}%
+ \ifdim\wd\@tempboxa=\z@
+ \let\caption@lsep\relax
+% \@capbreakfalse
+ \fi
+% \end{macrocode}
+%
+% If the text is empty, we use no caption label separator, too.
+% (And no text format either.)
+% \begin{macrocode}
+ \caption@ifempty{#2}{%
+ \let\caption@lsep\@empty
+ \let\caption@tfmt\@firstofone
+% \@capbreakfalse
+% \let\caption@ifstrut\@secondoftwo
+ }%
+% \end{macrocode}
+%
+% Take care that |\caption@parindent| and |\caption@hangindent| will be used
+% to typeset the paragraph.
+% \begin{macrocode}
+ \@setpar{\@@par\caption@@par}\caption@@par
+% \end{macrocode}
+%
+% Finally typeset the caption.
+% \begin{macrocode}
+ \caption@applyfont
+ \caption@fmt
+ {\ifcaption@star\else
+ \begingroup
+ \captionlabelfont
+ #1%
+ \endgroup
+ \fi}%
+ {\ifcaption@star\else
+ \begingroup
+ \caption@iflf\captionlabelfont
+ \relax\caption@lsep
+ \endgroup
+ \fi}%
+ {{\captiontextfont
+ \captiontextstart
+ \caption@ifstrut
+ {\vrule\@height\ht\strutbox\@width\z@}%
+ {}%
+ \nobreak\hskip\z@skip % enable hyphenation
+ \caption@tfmt{#2}%
+% \caption@ifstrut{\vrule\@height\z@\@depth\dp\strutbox\@width\z@}{}%
+ \caption@ifstrut
+ {\ifhmode\@finalstrut\strutbox\fi}%
+ {}%
+ \captiontextend}}}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\captiontextstart{}
+\newcommand*\captiontextend{\par}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@ifempty}
+% \changes{v1.0d}{2005/05/05}{This macro added}
+% \changes{v1.1}{2007/07/04}{Re-defines itself now}
+% \changes{v1.2a}{2007/01/22}{Revised so \cs{label} will be detected, too}
+% \changes{v1.2b}{2008/08/02}{Revised so \cs{index} and \cs{glossary} will be detected, too}
+% |\caption@ifempty|\marg{text}\marg{true} (\emph{no} \meta{false})\par
+% This one tests if the \meta{text} is actually empty.
+% \Note{This will be done without expanding the text,
+% therefore this is far away from being bullet-proof.}
+% \Note{This macro is re-defining itself so only
+% the first test (in a group) will actually be done.}
+% \begin{macrocode}
+\newcommand\caption@ifempty[1]{%
+ \caption@if@empty{#1}%
+ \caption@ifempty\@unused}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand\caption@if@empty[1]{%
+ \def\caption@tempa{#1}%
+ \ifx\caption@tempa\@empty
+ \let\caption@ifempty\@secondoftwo
+ \else
+ \expandafter\def\expandafter\caption@tempa\expandafter{%
+ \caption@car#1\caption@if@empty\caption@nil}%
+ \def\caption@tempb{\caption@if@empty}%
+ \ifx\caption@tempa\caption@tempb
+ \let\caption@ifempty\@secondoftwo
+ \else
+ \def\caption@tempb{\ignorespaces}%
+ \ifx\caption@tempa\caption@tempb
+ \expandafter\caption@if@empty\expandafter{\@gobble#1}%
+ \else
+ \def\caption@tempb{\label}%
+ \ifx\caption@tempa\caption@tempb
+ \expandafter\caption@if@empty\expandafter{\@gobbletwo#1}%
+ \else
+ \def\caption@tempb{\index}%
+ \ifx\caption@tempa\caption@tempb
+ \expandafter\caption@if@empty\expandafter{\@gobbletwo#1}%
+ \else
+ \def\caption@tempb{\glossary}%
+ \ifx\caption@tempa\caption@tempb
+ \expandafter\caption@if@empty\expandafter{\@gobbletwo#1}%
+ \else
+ \let\caption@ifempty\@gobbletwo
+ \fi
+ \fi
+ \fi
+ \fi
+ \fi
+ \fi}
+% \end{macrocode}
+% \begin{macrocode}
+\long\def\caption@car#1#2\caption@nil{#1}% same as \@car, but \long
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@@par}
+% \changes{v1.0f}{2005/08/22}{Made this definition global}
+% |\caption@@par|\par
+% This command will be executed with every |\par| inside the caption.
+% \begin{macrocode}
+\newcommand*\caption@@par{%
+ \parindent\caption@parindent\hangindent\caption@hangindent}%
+% \end{macrocode}
+% \end{macro}
+%
+% \section{Types \& sub-types}
+%
+% \begin{macro}{\DeclareCaptionType}
+% \changes{v1.1}{2007/08/12}{This macro added}
+% \changes{v1.1a}{2007/09/07}{Three optional arguments added}
+% \changes{v1.2}{2007/12/06}{Renamed from \cs{DeclareFloatingEnvironment} to \cs{DeclareCaptionType}}
+% \changes{v1.2}{2007/12/21}{Optional argument revised, uses key-value syntax now}
+% \changes{v1.2b}{2008/04/13}{Uses \cs{caption@within@default} now}
+% \changes{v1.2b}{2008/08/02}{Support of \cs{float@exts} and \cs{float@addtolists} added}
+% \changes{v1.2e}{2010/01/09}{Usage of \cs{caption@DeclareWithinOption} added}
+% \changes{v1.3}{2011/08/06}{Definition of \cs{listofXXXes} added}
+% \changes{v1.4a}{2011/10/29}{Outsourced to \package{newfloat} package}
+% |\DeclareCaptionType|\oarg{options}\marg{environment}\oarg{name}\oarg{list name}
+% \begin{macrocode}
+\newcommand*\DeclareCaptionType{%
+ \caption@loadpackage{newfloat}{}%
+ \DeclareFloatingEnvironment}
+\@onlypreamble\DeclareCaptionType
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\ForEachCaptionType}
+% \changes{v1.4a}{2011/10/29}{This macro added}
+% \changes{v1.13}{2020/07/29}{Renamed from \cs{caption@ForEachType} to \cs{ForEachCaptionType} and starred variant added}
+% |\ForEachCaptionType|\marg{code with \#1}\\
+% |\ForEachCaptionType*|\marg{code with \#1}\par
+% will execute the given code for each (known) floating environment.
+% The starred variant will only work for already existing environments,
+% i.e.~no hook will be placed inside |\Declare|\-|Floating|\-|Environment|
+% (offered by the \package{newfloat} package).
+% \begin{macrocode}
+\newcommand*\ForEachCaptionType{%
+ \@ifstar
+ {\caption@foreach@type\@gobble}%
+ {\caption@foreach@type\@iden}}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand\caption@foreach@type[2]{%
+ \caption@ifdefined\ForEachFloatingEnvironment
+ {\ForEachFloatingEnvironment*{#2}}%
+ {\def\@elt##1{#2}%
+ \caption@ifdefined\c@figure\@elt\@gobble{figure}%
+ \caption@ifdefined\c@table\@elt\@gobble{table}%
+ \let\@elt\relax}%
+ #1{\newfloat@addtohook{#2}}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\newfloat@addtohook}
+% |\newfloat@addtohook|\marg{code with \#1}\par
+% adds code to the hook called in |\Declare|\-|Floating|\-|Environment|.\par
+% Note: We use |\provide|\-|command| instead of |\new|\-|command| here since the
+% exact same code is defined in the \package{newfloat} package.
+% \begin{macrocode}
+\providecommand\newfloat@addtohook[1]{%
+ \toks@=\expandafter{\newfloat@hook{##1}#1}%
+ \edef\@tempa{\def\noexpand\newfloat@hook####1{\the\toks@}}%
+ \@tempa}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\newfloat@hook}
+% Hook used in |\Declare|\-|Floating|\-|Environment|.
+% \begin{macrocode}
+\providecommand*\newfloat@hook[1]{}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\DeclareCaptionSubType}
+% \changes{v1.2}{2007/11/16}{This macro added}
+% \changes{v1.2a}{2008/03/11}{Bugfix: \cs{subfigurename} will be defined now}
+% \changes{v1.2d}{2009/10/09}{Bugfix 08-10-01: Usage of \cs{caption@addtoreset} added}
+% \changes{v1.3}{2011/01/01}{\cs{@dottedlofline} will be defined \& used now}
+% \changes{v1.4}{2011/10/09}{Support of the titletoc package added}
+% \changes{v1.5}{2011/12/29}{Usage of \cs{caption@addtoreset} replaced by \cs{@addtoreset}}
+% \changes{v1.5}{2013/01/10}{Bugfix: Definition of autoref string corrected}
+% \changes{v1.6}{2013/06/17}{Bugfix: \cs{c@tocdepth} will be set (locally) now}
+% \changes{v1.8g}{2020/01/02}{Check revised if the sub-type is already defined or not}
+% \changes{v1.13}{2020/07/28}{Uses \cs{caption@l@addto@list} instead of \cs{@cons} now}
+% \changes{v1.13}{2020/07/29}{Usage of \cs{caption@subtype@hook} added}
+% \changes{v1.13}{2020/07/29}{We don't re-use existing counters anymore (This was a bad idea anyway)}
+% |\DeclareCaptionSubType|\oarg{numbering scheme}\marg{type}\\
+% |\DeclareCaptionSubType*|\oarg{numbering scheme}\marg{type}\par
+% The starred variant provides the numbering format
+% \meta{type}|.|\meta{subtype} while the non-starred variant simply
+% uses \meta{subtype}.
+% \begin{macrocode}
+\newcommand*\DeclareCaptionSubType{%
+ \caption@teststar\caption@declaresubtype\@firstoftwo\@secondoftwo}
+\@onlypreamble\DeclareCaptionSubType
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@declaresubtype[1]{%
+ \@testopt{\caption@@declaresubtype{#1}}{alph}}
+\@onlypreamble\caption@declaresubtype
+% \end{macrocode}
+% \begin{macrocode}
+\def\caption@@declaresubtype#1[#2]#3{%
+ \@ifundefined{c@#3}%
+ {\caption@Error{No float type '#3' defined}}%
+ {\caption@@@declaresubtype{#1}{#2}{#3}{sub#3}}}
+\@onlypreamble\caption@@declaresubtype
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@@@declaresubtype[4]{%
+% \end{macrocode}
+% \begin{macrocode}
+% Check if the sub-type was already defined by |\Declare|\-|Sub|\-|Type|.
+% If not, define the counter and list entry.
+% \begin{macrocode}
+ \caption@ifin@list\caption@subtypelist{#4}%
+ {\caption@Debug{Modify subtype `#4'}}%
+ {\caption@Debug{New subtype `#4'}%
+ \newcounter{#4}[#3]%
+ \@namedef{ext@#4}{\csname ext@#3\endcsname}%
+ \caption@declaresublistentry{#3}%
+ \caption@l@addto@list\caption@subtypelist{#4}%
+ \caption@subtype@hook{#4}}%
+% \end{macrocode}
+% Support of \package{titletoc} package
+% \begin{macrocode}
+ \caption@ifdefined\contentsuse{%
+ \contentsuse{#4}{\csname ext@#4\endcsname}}{}%
+% \end{macrocode}
+% \begin{macrocode}
+ \@namedef{#4name}{}%
+ \@namedef{#4autorefname}{\csname #3autorefname\endcsname}%
+ #1% is \@firstoftwo in star form, and \@secondoftwo otherwise
+ {\@namedef{p@#4}{}%
+ \@namedef{the#4}{\csname the#3\endcsname.\@nameuse{#2}{#4}}}%
+ {\@namedef{p@#4}{\csname the#3\endcsname}%
+ \@namedef{the#4}{\@nameuse{#2}{#4}}}%
+ \@namedef{theH#4}{\csname theH#3\endcsname.\arabic{#4}}}
+% \end{macrocode}
+% \begin{macrocode}
+\@onlypreamble\caption@@@declaresubtype
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@declaresublistentry{%
+ \caption@ifdefined\l@chapter
+ {\caption@@declaresublistentry\l@subsection}%
+ {\caption@@declaresublistentry\l@subsubsection}}
+\@onlypreamble\caption@declaresublistentry
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@@declaresublistentry[2]{%
+ \ifx#1\@undefined
+ \caption@@@declaresublistentry\relax\@dottedtocline\caption@nil{#2}%
+ \else
+ \expandafter\caption@@@declaresublistentry#1{}{}\@dottedtocline\caption@nil{#2}%
+ \fi}
+\@onlypreamble\caption@@declaresublistentry
+% \end{macrocode}
+% \begin{macrocode}
+\long\def\caption@@@declaresublistentry#1\@dottedtocline#2\caption@nil#3{%
+ \def\@tempa{#1}%
+% Does \l@(sub)subsection start with \@dottedtocline?
+ \ifx\@tempa\@empty
+% Yes
+ \caption@@@@declaresublistentry{#3}#2\caption@nil
+ \else
+% No
+ \caption@@@@declaresublistentry{#3}@{3.8em}{3.2em}\caption@nil
+ \fi}
+\@onlypreamble\caption@@@declaresublistentry
+% \end{macrocode}
+% \begin{macrocode}
+\def\caption@@@@declaresublistentry#1#2#3#4#5\caption@nil{%
+ \expandafter\caption@@@@@declaresublistentry\expandafter
+ {\csname @dotted\csname ext@#1\endcsname line\endcsname}{#1}{#3}{#4}}
+\@onlypreamble\caption@@@@declaresublistentry
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@@@@@declaresublistentry[4]{%
+ \@namedef{l@sub#2}{#1{2}{#3}{#4}}%
+ \expandafter\caption@@@@@@declaresublistentry
+ \expandafter#1\expandafter{\csname ext@#2\endcsname depth}}
+\@onlypreamble\caption@@@@@declaresublistentry
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@@@@@@declaresublistentry[2]{
+ \ifx#1\relax
+ \def#1##1{%
+ \def\next{\@dottedtocline{##1}}%
+ \@ifundefined{c@#2}{}{%
+ \ifnum ##1>\@nameuse{c@#2}\relax
+ \let\next\@gobblefour
+ \else
+ \c@tocdepth=\@nameuse{c@#2}\relax
+ \fi}%
+ \next}%
+ \fi}
+\@onlypreamble\caption@@@@@@declaresublistentry
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@subtypelist}
+% A list containing the sub-types defined with |\Declare|\-|Caption|\-|Sub|\-|Type|.
+% \begin{macrocode}
+\newcommand*\caption@subtypelist{}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@ifsubtype}
+% \changes{v1.8g}{2020/01/02}{This macro added}
+% \changes{v1.13}{2020/07/28}{Uses \cs{caption@ifin@list} now}
+% This macro checks if the given subtype was defined
+% with |\Declare|\-|Caption|\-|Sub|\-|Type|.
+% \begin{macrocode}
+\newcommand*\caption@ifsubtype{%
+ \caption@ifin@list\caption@subtypelist}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\ForEachCaptionSubType}
+% \changes{v1.13}{2020/07/29}{This macro added as replacement for \cs{caption@For}}
+% |\ForEachCaptionSubType|\marg{code with \#1}\\
+% |\ForEachCaptionSubType*|\marg{code with \#1}\par
+% will execute the given code for each (known) sub-type.
+% The starred variant will only work for already existing sub-types,
+% i.e.~no hook will be placed inside |\Declare|\-|Caption|\-|Sub|\-|Type|.
+% \begin{macrocode}
+\newcommand*\ForEachCaptionSubType{%
+ \@ifstar
+ {\caption@foreach@subtype\@gobble}%
+ {\caption@foreach@subtype\@iden}}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand\caption@foreach@subtype[2]{%
+ \caption@for@list\caption@subtypelist{#2}%
+ #1{\caption@addto@subtype@hook{#2}}}
+% \end{macrocode}
+% \begin{macrocode}
+\providecommand\caption@addto@subtype@hook[1]{%
+ \toks@=\expandafter{\caption@subtype@hook{##1}#1}%
+ \edef\@tempa{\def\noexpand\caption@subtype@hook####1{\the\toks@}}%
+ \@tempa}
+% \end{macrocode}
+% \begin{macrocode}
+\providecommand*\caption@subtype@hook[1]{}
+% \end{macrocode}
+% \end{macro}
+%
+% Unfortunately the \class{memoir} document class resets the
+% \texttt{subfigure} resp.~\texttt{subtable} counter at the begin
+% of floating environments, i.e.~at |\@float|.
+% As a side-effect |\continued|\-|float| does not work correctly.
+% For that reason we need to introduce macros to save and restore
+% all sub-caption counters here.
+%
+% \begin{macro}{\caption@savesubcounters}
+% \changes{v1.5}{2013/05/01}{This macro added}
+% \changes{v1.13}{2020/07/28}{Uses \cs{caption@for@list} now for iterating the list}
+% |\caption@save|\-|sub|\-|counters| saves all sub-caption counters,
+% so they can be restored with |\caption@restore|\-|counters| later on.
+% \begin{macrocode}
+\newcommand*\caption@savesubcounters{%
+ \caption@for@list\caption@subtypelist{\caption@savecounter{##1}}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@savecounter}
+% \changes{v1.5}{2013/05/01}{This macro added}
+% |\caption@save|\-|counter|\marg{counter} saves the given counter,
+% so it can be restored with |\caption@restore|\-|counters| later on.
+% \begin{macrocode}
+\newcommand*\caption@savecounter[1]{%
+ \edef\caption@tempa{%
+ \noexpand\l@addto@macro\noexpand\caption@restore@counters
+ {\noexpand\setcounter{#1}{\number\value{#1}}}}%
+ \caption@tempa}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@restorecounters}
+% \changes{v1.5}{2013/05/01}{This macro added}
+% |\caption@restore|\-|counters| restores all counters saved with
+% |\caption@save|\-|counter|.
+% \begin{macrocode}
+\newcommand*\caption@restorecounters{%
+ \caption@restore@counters
+ \global\let\caption@restore@counters\@empty}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@restore@counters{}
+% \end{macrocode}
+% \end{macro}
+%
+% \iffalse
+%</package>
+% \fi
+%
+% \clearpage
+% \begin{thebibliography}{99}
+% \bibitem{TLC2}
+% Frank Mittelbach and Michel Goossens:\\
+% \newblock {\em The {\LaTeX} Companion (2nd.~Ed.)},\\
+% \newblock Addison-Wesley, 2004.
+%
+% \bibitem{Anne}
+% Anne Br\"uggemann-Klein:\\
+% \emph{Einf\"uhrung in die Dokumentverarbeitung},\\
+% B.G. Teubner, Stuttgart, 1989
+%
+% \bibitem{hyperref}
+% Sebastian Rahtz \& Heiko Oberdiek:\\
+% \href{http://www.ctan.org/pkg/hyperref}%
+% {\emph{Hypertext marks in \LaTeX}},\\
+% November 12, 2007
+%
+% \bibitem{refcount}
+% Heiko Oberdiek:\\
+% \href{http://www.ctan.org/pkg/refcount}%
+% {\emph{The refcount package}},\\
+% 2006/02/20
+%
+% \bibitem{threeparttable}
+% Donald Arseneau:\\
+% \href{http://www.ctan.org/pkg/threeparttable}%
+% {\emph{Three part tables: title, tabular environment, notes}},\\
+% 2003/06/13
+% \end{thebibliography}
+%
+% \iffalse
+% --------------------------------------------------------------------------- %
+% \fi
+%
+% \clearpage
+% \Finale
+%
+\endinput
diff --git a/macros/latex/contrib/caption/fallback/v3.5/caption.dtx b/macros/latex/contrib/caption/fallback/v3.5/caption.dtx
new file mode 100644
index 0000000000..c573255554
--- /dev/null
+++ b/macros/latex/contrib/caption/fallback/v3.5/caption.dtx
@@ -0,0 +1,4292 @@
+% \iffalse meta-comment
+%
+% This is file `caption.dtx'.
+%
+% Copyright (C) 1994-2020 Axel Sommerfeldt (axel.sommerfeldt@f-m.fm)
+%
+% --------------------------------------------------------------------------
+%
+% This work may be distributed and/or modified under the
+% conditions of the LaTeX Project Public License, either version 1.3
+% of this license or (at your option) any later version.
+% The latest version of this license is in
+% http://www.latex-project.org/lppl.txt
+% and version 1.3 or later is part of all distributions of LaTeX
+% version 2003/12/01 or later.
+%
+% This work has the LPPL maintenance status "maintained".
+%
+% This Current Maintainer of this work is Axel Sommerfeldt.
+%
+% This work consists of the files
+% caption.ins, caption.dtx, caption-light.dtx, caption2.dtx, caption3.dtx,
+% caption-ams-smf.dtx, caption-beamer.dtx, caption-elsarticle.dtx,
+% caption-koma.dtx, caption-memoir.dtx, caption-ntg.dtx,
+% caption-thesis.dtx, bicaption.dtx, ltcaption.dtx, subcaption.dtx,
+% the derived files
+% caption.sty, caption-light.sty, caption2.sty, caption3.sty,
+% caption-ams-smf.sto, caption-beamer.sto, caption-elsarticle.sto,
+% caption-koma.sto, caption-memoir.sto, caption-ntg.sto,
+% caption-thesis.sto, bicaption.sty, ltcaption.sty, subcaption.sty,
+% and the user manuals
+% caption-deu.tex, caption-eng.tex, caption-rus.tex.
+%
+% \fi
+% \CheckSum{2692}
+%
+% \iffalse
+%<*driver>
+\NeedsTeXFormat{LaTeX2e}[1994/12/01]
+\ProvidesFile{caption.drv}[2020/10/11 v3.5 Implementation of the caption package]
+\hbadness=9999 \newcount\hbadness \hfuzz=100pt % Make TeX shut up.
+%\errorcontextlines=3
+%
+\documentclass{ltxdoc}
+\setlength\parindent{0pt}
+\setlength\parskip{\smallskipamount}
+%
+\makeatletter % make room for subsections like 2.16.14 in the TOC
+%\newcommand*\l@subsection{\@dottedtocline{2}{1.5em}{2.3em}}
+\renewcommand*\l@subsection{\@dottedtocline{2}{1.5em}{2.7em}}
+\makeatother
+%
+\usepackage{ifpdf}
+\ifpdf
+ \usepackage{mathptmx,courier}
+ \usepackage[scaled=0.90]{helvet}
+ \addtolength\marginparwidth{15pt}
+\fi
+%
+\usepackage{hypdoc}
+\ifpdf\usepackage{hypdestopt}\fi
+\hypersetup{pdfkeywords={LaTeX, package, caption},pdfstartpage={},pdfstartview={}}
+%
+\usepackage[debug]{caption}[2013/01/01]
+%
+\DeclareRobustCommand*\eTeX{\texorpdfstring
+ {\leavevmode\hbox{$\varepsilon$}-\TeX}%
+ {e-TeX}}
+%
+\begin{document}
+ \DocInput{caption.dtx}
+\end{document}
+%</driver>
+% \fi
+%
+% \newcommand*\purerm[1]{\texorpdfstring{{\upshape\mdseries\rmfamily #1}}{#1}}
+% \newcommand*\puresf[1]{\texorpdfstring{{\upshape\mdseries\sffamily #1}}{#1}}
+% \newcommand*\purett[1]{\texorpdfstring{{\upshape\mdseries\ttfamily #1}}{#1}}
+% \let\class\puresf \let\package\puresf
+% \let\env\purett \let\opt\purett
+%
+% \def\thispackage{the \package{caption} package}
+% \def\Thispackage{The \package{caption} package}
+%
+% \newcommand*\csmarg[1]{\texttt{\char`\{#1\char`\}}}
+% \newcommand*\csoarg[1]{\texttt{\char`\[#1\char`\]}}
+% \newcommand*\version[2][]{v$#2$}
+%
+% \newcommand*\issue[1]{GitLab~\##1}
+%
+% \GetFileInfo{caption.drv}
+% \let\docdate\filedate
+% \let\docversion\fileversion
+% \GetFileInfo{caption.sty}
+%
+% \title{The Implementation of
+% \texorpdfstring{\thispackage\thanks{%^^A
+% This package has version number \docversion.}}%^^A
+% {the caption package}}
+% \author{Axel Sommerfeldt\\
+% \url{https://gitlab.com/axelsommerfeldt/caption}}
+% \date{\docdate}
+% \maketitle
+%
+% \begin{abstract}
+% \Thispackage\ consists of two parts -- the kernel
+% (|caption3.sty|) and the main package (|caption.sty|).
+%
+% \Thispackage\ redefines the \LaTeX\ commands
+% |\caption|, |\@caption|, and |\@makecaption| and maps the latter one to
+% |\caption@@make|, giving the user the possibility to control the look \& feel
+% of the captions from floating environments like |figure| and |table|.
+% Furthermore it does similar to the caption stuff coming from other packages
+% (like the \package{longtable} or \package{supertabular} package):
+% Mapping the appropriate internal commands (like |\LT@makecaption| or
+% |\ST@caption|) to the ones offered by the \package{caption3} kernel.
+% So you can think of \thispackage\ as a layer package, it
+% simply provides adaptation layers between the caption stuff coming from
+% \LaTeXe\ or packages, and the caption stuff offered by the
+% \package{caption3} kernel.
+% \end{abstract}
+%
+% \section*{User manual}
+%
+% This document is describing the code implementation only.
+% The user documentation can be found in
+% \nopagebreak\begin{quote}
+% \begin{tabular}{ll}
+% \href{http://mirror.ctan.org/macros/latex/contrib/caption/caption-eng.pdf}%
+% {\texttt{caption-eng.pdf}} & The English documentation \\
+% \href{http://mirror.ctan.org/macros/latex/contrib/caption/caption-rus.pdf}%
+% {\texttt{caption-rus.pdf}} & The Russian documentation\footnotemark \\
+% \href{http://mirror.ctan.org/macros/latex/contrib/caption/caption-deu.pdf}%
+% {\texttt{caption-deu.pdf}} & The German documentation \\
+% \end{tabular}
+% \footnotetext{Thanks a lot to Olga Lapko for this translation}
+% \end{quote}
+%
+% \pagebreak[4]
+% \section*{Internal commands}
+%
+% These internal commands are save to use by other packages as well
+% since their interface will not change in future releases:
+% \begin{quote}\begin{tabular}{ll}
+% Internal command & Currently used by \\
+% \hline
+% |\caption@kernel@addcontentsline| & \package{floatrow} \\
+% |\caption@makecaption| & \package{bidi} \\
+% |\caption@settype| & \package{newfloat} \\
+% |\caption@setsubtype| & \package{floatrow} \\
+% |\caption@starfalse| & \package{bidi} \\
+% |\caption@startrue| & \package{bidi} \\
+% |\caption@xlabel| & \package{cleveref} \\
+% \end{tabular}\end{quote}
+%
+% If your package wants to use any other internal command of the \package{caption} package,
+% please write me an e-mail so we can define a proper interface together.
+%
+% The \package{lwarp} package uses a lot of internal commands as well,
+% but we are working on it on the Git branch \texttt{feature/lwarp}:
+% \url{https://gitlab.com/axelsommerfeldt/caption/-/tree/feature/lwarp}
+%
+% \StopEventually{}
+% \clearpage
+% \tableofcontents
+%
+% \iffalse
+% --------------------------------------------------------------------------- %
+% \fi
+%
+% \DoNotIndex{\\,\_,\ ,\@@par}
+% \DoNotIndex{\@bsphack}
+% \DoNotIndex{\@car,\@cdr,\@classoptionslist,\@cons,\@currext,\@currname}
+% \DoNotIndex{\@ehc,\@ehd,\@empty,\@esphack,\@expandtwoargs}
+% \DoNotIndex{\@for,\@firstofone,\@firstoftwo}
+% \DoNotIndex{\@gobble,\@gobblefour,\@gobbletwo,\@hangfrom}
+% \DoNotIndex{\if@minipage\@ifnextchar,\@ifpackagelater,\@ifpackageloaded}
+% \DoNotIndex{\@ifstar,\@ifundefined,\@latex@error,\@minipagefalse,\@minipagetrue}
+% \DoNotIndex{\@namedef,\@nameuse}
+% \DoNotIndex{\@onlypreamble,\@parboxrestore,\@plus,\@ptionlist}
+% \DoNotIndex{\@removeelement,\@restorepar,\@secondoftwo,\@setminipage,\@setpar}
+% \DoNotIndex{\@tempa,\@tempboxa,\@tempdima,\@tempdimb,\@tempdimc,\@tempb,\@tempc}
+% \DoNotIndex{\@testopt}
+% \DoNotIndex{\@undefined,\@unprocessedoptions,\@unusedoptionlist}
+% \DoNotIndex{\p@,\z@}
+% \DoNotIndex{\active,\addtocounter,\addtolength,\advance,\aftergroup}
+% \DoNotIndex{\baselineskip,\begin,\begingroup,\bfseries,\box}
+% \DoNotIndex{\catcode,\centering,\changes,\csname,\def,\divide,\do,\downarrow}
+% \DoNotIndex{\edef,\else,\empty,\end,\endcsname,\endgraf,\endgroup,\expandafter}
+% \DoNotIndex{\fi,\footnotesize,\global}
+% \DoNotIndex{\hangindent,\hbox,\hfil,\hsize,\hskip,\hspace,\hss}
+% \DoNotIndex{\ifcase,\ifdim,\ifnum,\ifodd,\ifvoid,\ifvmode}
+% \DoNotIndex{\ifx,\ignorespaces,\itshape}
+% \DoNotIndex{\Large,\large,\leavevmode,\leftmargini,\leftskip,\let,\linewidth}
+% \DoNotIndex{\llap,\long,\m@ne,\margin,\mdseries,\message}
+% \DoNotIndex{\newcommand,\newdimen,\newlength,\newline,\newif,\newsavebox}
+% \DoNotIndex{\next,\nobreak,\nobreakspace,\noexpand,\noindent,\numberline}
+% \DoNotIndex{\normalcolor,\normalfont,\normalsize,\or,\par,\parbox,\parfillskip}
+% \DoNotIndex{\parindent,\parskip,\prevdepth,\protect,\protected@edef,\protected@write}
+% \DoNotIndex{\providecommand,\quad}
+% \DoNotIndex{\raggedleft,\raggedright,\relax,\renewcommand,\RequirePackage}
+% \DoNotIndex{\rightskip,\rmfamily}
+% \DoNotIndex{\sbox,\scriptsize,\scshape,\setbox,\setlength,\sffamily,\slshape}
+% \DoNotIndex{\small,\string,\space,\strut}
+% \DoNotIndex{\textheight,\the,\toks@,\typeout,\ttfamily}
+% \DoNotIndex{\unvbox,\uparrow,\upshape,\usebox,\usepackage}
+% \DoNotIndex{\value,\vbox,\vsize,\vskip,\wd,\width,\z@skip}
+% \DoNotIndex{\AtBeginDocument,\AtEndOfPackage,\CurrentOption,\DeclareOption}
+% \DoNotIndex{\ExecuteOptions,\GenericWarning,\IfFileExists,\InputIfFileExists}
+% \DoNotIndex{\NeedsTeXFormat,\MessageBreak}
+% \DoNotIndex{\PackageError,\PackageInfo,\PackageWarning,\PackageWarningNoLine}
+% \DoNotIndex{\PassOptionsToPackage,\ProcessOptions,\ProvidesPackage}
+%
+% \iffalse
+% --------------------------------------------------------------------------- %
+% \fi
+%
+% \setlength{\parskip}{0pt plus 1pt}
+% \newcommand*\Note[2][Note]{\par{\small\emph{#1:} #2}\par}
+%
+% \changes{v1.0}{1994/10/27}{First release}
+% \changes{v1.1}{1994/11/03}{New option \texttt{centerlast}}
+% \changes{v1.2}{1994/11/28}{Support of the \package{float} package}
+% \changes{v1.3}{1995/01/09}{Support of \cs{captionlabelfont} in subcaptions}
+% \changes{v1.4}{1995/01/30}{New option \texttt{nooneline}}
+% \changes{v1.4b}{1995/04/05}{Bugfix release}
+% \changes{v3.0}{2003/12/20}{Rewritten; many new commands and features}
+% \changes{v3.0d}{2004/11/28}{Split into two packages: \package{caption} \& \package{caption3}}
+%
+% \iffalse
+% --------------------------------------------------------------------------- %
+% \fi
+%
+% \clearpage
+%
+% \iffalse
+%<*package>
+% \fi
+%
+% \section{Identification}
+%
+% \begin{macrocode}
+\NeedsTeXFormat{LaTeX2e}[1994/12/01]
+\ProvidesPackage{caption}[2020/10/26 v3.5g Customizing captions (AR)]
+% \end{macrocode}
+%
+% \section{Loading the kernel}
+%
+% \begin{macrocode}
+\RequirePackage{caption3}[=2020/10/06] % needs v2.2b or newer
+% \end{macrocode}
+%
+% \section{Check against unknown document classes}
+%
+% \begin{macrocode}
+\caption@ifbool{documentclass}{}{%
+ \caption@WarningNoLine{%
+ Unknown document class (or package),\MessageBreak
+ standard defaults will be used}}
+% \end{macrocode}
+%
+% \section{Check against incompatible packages}
+%
+% \changes{v3.0p}{2007/04/06}{Check against obsolete \package{caption2} package added}
+% \begin{macrocode}
+\@ifpackageloaded{caption2}{%
+ \caption@Error{%
+ You can't use both, the (obsolete) caption2 *and*\MessageBreak
+ the (current) caption package}%
+ \endinput
+}{}
+% \end{macrocode}
+%
+% \changes{v3.1}{2007/06/15}{Check against incompatible \package{ftcap} package added}
+% \changes{v3.1}{2007/06/15}{Check against incompatible \package{nonfloat} package added}
+% \changes{v3.1}{2007/06/18}{Check against incompatible \package{topcapt} package added}
+% \begin{macrocode}
+\caption@AtBeginDocument{%
+ \@ifpackageloaded{ftcap}{\caption@DisablePositionOption{ftcap}}{}%
+ \@ifpackageloaded{nonfloat}{\caption@DisablePositionOption{nonfloat}}{}%
+ \@ifpackageloaded{topcapt}{\caption@DisablePositionOption{topcapt}}{}}
+% \end{macrocode}
+% \begin{macro}{\caption@DisablePositionOption}
+% \changes{v3.1g}{2008/03/20}{\texttt{position=b} added}
+% \changes{v3.1h}{2008/03/29}{%
+% Name changed from \cs{caption@IncompatiblePackage} to \cs{caption@DisablePositionOption};
+% disables the `position' option now instead of issuing a warning}
+% |\caption@DisablePositionOption|\marg{package}\par
+% disables the `position' option.
+% \begin{macrocode}
+\newcommand*\caption@DisablePositionOption[1]{%
+ \caption@InfoNoLine{%
+ `#1' package detected; setting `position=b' for compatibility reasons}%
+ \caption@setposition b%
+% \end{macrocode}
+% \begin{macrocode}
+ \DeclareCaptionOption{position}{%
+ \caption@Error{Usage of the `position' option is incompatible\MessageBreak
+ to the `#1' package}}}
+% \end{macrocode}
+% \begin{macrocode}
+\@onlypreamble\caption@DisablePositionOption
+% \end{macrocode}
+% \end{macro}
+%
+% \section{Declaration of options}
+%
+% \subsection{Miscellaneous options}
+%
+% \begin{macrocode}
+\DeclareCaptionOption*{config}[caption]{%
+ \InputIfFileExists{#1.cfg}%
+ {\typeout{*** Local configuration file #1.cfg used ***}}%
+ {\caption@Warning{Configuration file #1.cfg not found}}}
+% \end{macrocode}
+%
+% \begin{macro}{\caption@selectlistentry}
+% \changes{v3.2}{2010/11/07}{This macro added}
+% |\caption@selectlistentry|\marg{\purett{heading} or \purett{entry}}
+% \begin{macrocode}
+\newcommand*\caption@selectlistentry[1]{%
+ \caption@ifinlist{#1}{heading}{%
+ \let\caption@iflistheading\@firstoftwo
+ }{\caption@ifinlist{#1}{default,list-entry,entry}{%
+ \let\caption@iflistheading\@secondoftwo
+ }{%
+ \caption@Error{Undefined list-entry selection `#1'}%
+ }}}
+% \end{macrocode}
+% \end{macro}
+%
+% \changes{v3.3}{2012-03-25}{Option \opt{list-entry} added}
+% \begin{macrocode}
+\DeclareCaptionOption{list-entry}{\caption@selectlistentry{#1}}
+\captionsetup{list-entry=default}
+% \end{macrocode}
+%
+% \begin{macro}{\caption@declparboxrestore}
+% \changes{v3.5g}{2020/10/26}{This macro added}
+% |\caption@declparboxrestore|\marg{name}\marg{code}
+% \begin{macrocode}
+% TODO: Remove \caption@declparboxrestore
+\newcommand\caption@declparboxrestore{%
+ \caption@decl{parboxrestore}}
+% \end{macrocode}
+% \begin{macrocode}
+\@onlypreamble\caption@declparboxrestore
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@setparboxrestore}
+% \changes{v3.2}{2010/11/07}{This macro added}
+% \changes{v3.5g}{2020/10/26}{New implementation; default changed from `partial' to `full'}
+% |\caption@setparboxrestore|\marg{\purett{partial} or \purett{full}}
+% \begin{macrocode}
+% TODO: Remove \caption@setparboxrestore
+\newcommand*\caption@setparboxrestore{%
+ \caption@set{parboxrestore}}
+% \end{macrocode}
+% \begin{macrocode}
+\caption@declparboxrestore{full}{%
+ \@parboxrestore}
+% \end{macrocode}
+% The original code (from |latex/base/ltboxes.dtx|):
+% \begin{verbatim}
+% \def\@parboxrestore{\@arrayparboxrestore\let\\\@normalcr}
+% \def\@arrayparboxrestore{%
+% \let\if@nobreak\iffalse
+% \let\if@noskipsec\iffalse
+% \let\par\@@par
+% \let\-\@dischyph
+% \let\'\@acci\let\`\@accii\let\=\@acciii
+% \parindent\z@ \parskip\z@skip
+% \everypar{}%
+% \linewidth\hsize
+% \@totalleftmargin\z@
+% \leftskip\z@skip \rightskip\z@skip \@rightskip\z@skip
+% \parfillskip\@flushglue \lineskip\normallineskip
+% \baselineskip\normalbaselineskip
+% \sloppy}
+% \end{verbatim}%^^A
+% This one will be used by |\@caption| instead of |\@parboxrestore|.
+% \begin{macrocode}
+\caption@declparboxrestore{partial}{%
+ \let\if@nobreak\iffalse
+ \let\if@noskipsec\iffalse
+ \let\par\@@par
+% \let\-\@dischyph
+% \let\'\@acci\let\`\@accii\let\=\@acciii
+ \parindent\z@ \parskip\z@skip
+ \everypar{}%
+% \linewidth\hsize
+% \@totalleftmargin\z@
+ \leftskip\z@skip \rightskip\z@skip \@rightskip\z@skip
+ \parfillskip\@flushglue \lineskip\normallineskip
+ \baselineskip\normalbaselineskip
+ \sloppy
+ \let\\\@normalcr}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@parboxrestore@mini}
+% \changes{v3.2}{2010/10/24}{This macro added}
+% \changes{v3.5g}{2020/10/26}{Renamed from \cs{caption@boxrestore@mini} to \cs{caption@parboxrestore@mini}}
+% Resets |\par| so the very first |\par| in |\@caption| behaves quite the same as in floating environments.
+% Will be used by |\set|\-|caption|\-|type|.
+% \begin{macrocode}
+\caption@declparboxrestore{mini}{%
+ \let\par\@@par
+ \parindent\z@ \parskip\z@skip
+ \sloppy}
+% \end{macrocode}
+% \end{macro}
+%
+% `default' usually maps to `full'.
+% \changes{v3.5g}{2020/10/26}{The default of \cs{caption@parboxrestore} maps to `full' instead of `partial' now}
+% \begin{macrocode}
+\SetCaptionDefault{parboxrestore}{full}
+% \end{macrocode}
+%
+% \changes{v3.2}{2010/11/07}{Option \opt{parboxrestore} added}
+% \begin{macrocode}
+% TODO: Remove the (undocumentated) option "parboxrestore"
+\DeclareCaptionOption{parboxrestore}{\caption@setparboxrestore{#1}}
+% \end{macrocode}
+%
+% \begin{macro}{\caption@parboxrestore}
+% \changes{v3.1}{2007/03/03}{This macro and its usage added}
+% \changes{v3.1b}{2007/09/17}{Bugfix: Redefinition of CR added}
+% \changes{v3.2}{2010/11/07}{Support of option \opt{parboxrestore} added}
+% \changes{v3.5g}{2020/10/26}{New implementation; renamed from \cs{caption@boxrestore} to \cs{caption@parboxrestore}}
+% \begin{macrocode}
+% TODO: Change definition to \def\caption@parboxrestore{\@parboxrestore}
+\captionsetup{parboxrestore=default}
+% \end{macrocode}
+% \end{macro}
+%
+% \changes{v3.1f}{2007/11/28}{Option \opt{@minipage=} added}
+% \begin{macrocode}
+\DeclareCaptionOption{@minipage}{%
+ \caption@ifinlist{#1}{auto,default}%
+ {\let\caption@if@minipage\@gobbletwo}%
+ {\caption@set@bool\caption@if@minipage{#1}}}
+\captionsetup{@minipage=default}
+% \end{macrocode}
+%
+% \subsection{caption v1.x compatibility options}
+% \changes{v3.1}{2007/07/21}{Option `compatibility' added}
+% \changes{v3.1}{2007/09/01}{caption v1.x compatibility options revised}
+% \changes{v3.1d}{2007/10/24}{Bugfix 07-10-24 in caption v1.x$ compatibility options}
+% \changes{v3.5a}{2020/09/02}{caption v1.x compatibility options fixed}
+%
+% Currently we support |v1| and |v3| as values for the |compatibility=| option.
+% But since this used to be a boolean option is the past we still support any boolean value
+% for compatibility reasons.
+%
+% \begin{macrocode}
+\DeclareCaptionOption{compatibility}[v1]{%
+ \caption@ifinlist{#1}{v1,1,true,yes,on}{%
+ \let\caption@ifcompatibility\@firstoftwo
+ }{\caption@ifinlist{#1}{v3,3,0,false,no,off}{%
+ \let\caption@ifcompatibility\@secondoftwo
+ }{%
+ \caption@Error{Undefined compatibility value `#1'}%
+ }}}
+\@onlypreamble@key{caption}{compatibility}
+% \end{macrocode}
+% \begin{macrocode}
+\caption@setbool{compatibility}{0} % default: Try not to be compatible to v1.x
+% \end{macrocode}
+%
+% \begin{macro}{\caption@setincompatible}
+% \changes{v3.4}{2019/09/09}{This macro added}
+% |\caption@setincompatible|\marg{condition}\marg{message text}
+% \begin{macrocode}
+\newcommand*\caption@setincompatible[2]{%
+ #1{%
+ \caption@WarningNoLine{%
+ #2;\MessageBreak
+ Setting compatibility to v1}%
+ \caption@setbool{compatibility}{1}%
+ }{}}
+% \end{macrocode}
+% \end{macro}
+%
+% Check against incompatible packages which used to work fine with v1 of the `caption' package.
+% \begin{macrocode}
+\caption@AtBeginDocument{\caption@ifcompatibility{}{%
+% \end{macrocode}
+% The usage of the (now obsolete) \package{captcont} package,
+% which brings its own definition of |\caption*|, was quite common in the old days.
+% \begin{macrocode}
+ \caption@setincompatible{\@ifpackageloaded{captcont}}{captcont package is loaded}%
+% \end{macrocode}
+% To be continued\ldots
+% \begin{macrocode}
+}}
+% \end{macrocode}
+%
+% \begin{macrocode}
+\DeclareCaptionOptionNoValue*{normal}{%
+ \caption@setup{format=plain,justification=justified}}
+\DeclareCaptionOptionNoValue*{isu}{%
+ \caption@setup{format=hang,justification=justified}}
+\DeclareCaptionOptionNoValue*{hang}{%
+ \caption@setup{format=hang,justification=justified}}
+\DeclareCaptionOptionNoValue*{center}{%
+ \caption@setup{format=plain,justification=centering}}
+\DeclareCaptionOptionNoValue*{centerlast}{%
+ \caption@setup{format=plain,justification=centerlast}}
+% \end{macrocode}
+%
+% \begin{macrocode}
+\DeclareCaptionOptionNoValue*{scriptsize}{\def\captionfont{\scriptsize}}
+\DeclareCaptionOptionNoValue*{footnotesize}{\def\captionfont{\footnotesize}}
+\DeclareCaptionOptionNoValue*{small}{\def\captionfont{\small}}
+\DeclareCaptionOptionNoValue*{normalsize}{\def\captionfont{\normalsize}}
+\DeclareCaptionOptionNoValue*{large}{\def\captionfont{\large}}
+\DeclareCaptionOptionNoValue*{Large}{\def\captionfont{\Large}}
+% \end{macrocode}
+%
+% \begin{macrocode}
+\DeclareCaptionOptionNoValue*{up}{\caption@setup{labelfont+=up}}
+\DeclareCaptionOptionNoValue*{it}{\caption@setup{labelfont+=it}}
+\DeclareCaptionOptionNoValue*{sl}{\caption@setup{labelfont+=sl}}
+\DeclareCaptionOptionNoValue*{sc}{\caption@setup{labelfont+=sc}}
+\DeclareCaptionOptionNoValue*{md}{\caption@setup{labelfont+=md}}
+\DeclareCaptionOptionNoValue*{bf}{\caption@setup{labelfont+=bf}}
+\DeclareCaptionOptionNoValue*{rm}{\caption@setup{labelfont+=rm}}
+\DeclareCaptionOptionNoValue*{sf}{\caption@setup{labelfont+=sf}}
+\DeclareCaptionOptionNoValue*{tt}{\caption@setup{labelfont+=tt}}
+% \end{macrocode}
+%
+% \begin{macrocode}
+\DeclareCaptionOptionNoValue*{nooneline}{\caption@setup{slc=0}}
+% \end{macrocode}
+%
+% \begin{macrocode}
+\caption@setbool{ruled}{0}
+\DeclareCaptionOptionNoValue*{ruled}{\caption@setbool{ruled}{1}}
+% \end{macrocode}
+%
+% \subsection{caption2 v2.x compatibility options}
+% \changes{v3.0h}{2005/07/08}{caption2 \version{2.x} compatibility options added}
+% \changes{v3.1}{2007/09/01}{caption2 v2.x compatibility options revised}
+% \changes{v3.1d}{2007/10/24}{Bugfix 07-10-24 in caption v2.x$ compatibility options}
+% \changes{v3.5a}{2020/09/02}{caption v2.x compatibility options fixed}
+%
+% \begin{macrocode}
+\DeclareCaptionOptionNoValue*{flushleft}{%
+ \caption@setup{format=plain,justification=raggedright}}
+\DeclareCaptionOptionNoValue*{flushright}{%
+ \caption@setup{format=plain,justification=raggedleft}}
+% \end{macrocode}
+% \begin{macrocode}
+\DeclareCaptionOptionNoValue*{oneline}{\caption@setup{slc=1}}
+% \end{macrocode}
+% \begin{macrocode}
+\DeclareCaptionOptionNoValue*{ignoreLTcapwidth}{%
+ \caption@WarningNoLine{Obsolete option `ignoreLTcapwidth' ignored}}
+% \end{macrocode}
+%
+% \subsection{Obsolete caption v3.0 options}
+% \changes{v3.1}{2007/05/07}{Package option \opt{caption} marked as obsolete,
+% gives error now}
+%
+% \begin{macrocode}
+\DeclareCaptionOption*{caption}{%
+ \caption@setbool{temp}{#1}%
+ \caption@ifbool{temp}{}{%
+ \caption@Error{%
+ The package option `caption=#1' is obsolete.\MessageBreak
+ Please pass this option to the subfig package instead\MessageBreak
+ and do *not* load the caption package anymore}}}
+% \end{macrocode}
+%
+% \subsection{fltpage package support options}
+%
+% \changes{v3.1}{2007/09/01}{Options `FPlist' \& `FPref' added}
+% With these options is controlled where the list-of entry and |\ref| resp.
+% |\pageref| or |\autoref| will link to.
+% Defaults are |FPlist=caption| and |FPref=figure| which is inconsistent,
+% but compatible to the usual behaviour of the \package{fltpage} package.
+% \begin{macrocode}
+\DeclareCaptionOption{FPlist}[1]{\caption@setFPoption{list}{#1}}
+\DeclareCaptionOption{FPref}[1]{\caption@setFPoption{ref}{#1}}
+\@onlypreamble@key{caption}{FPlist}
+\@onlypreamble@key{caption}{FPref}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@setFPoption[2]{%
+ \edef\caption@tempa{\@car#2\@nil}%
+ \caption@setbool{FP#1cap}{\if c\caption@tempa 1\else 0\fi}}
+\@onlypreamble\caption@setFPoption
+% \end{macrocode}
+% \begin{macrocode}
+\captionsetup{FPlist=caption,FPref=figure}
+% \end{macrocode}
+%
+% \subsection{hyperref package support options}
+%
+% \changes{v3.1}{2007/06/21}{Options `hypcap' \& `hypcapspace' added}
+% With |hypcap=off| one can turn the \package{hypcap} support off
+% (default is |on|).
+% \begin{macrocode}
+\DeclareCaptionOption{hypcap}[1]{\caption@setbool{hypcap}{#1}}
+\DeclareCaptionOption{hypcapspace}{\def\caption@hypcapspace{#1}}
+% \end{macrocode}
+% \begin{macrocode}
+\captionsetup{hypcap=1,hypcapspace=.5\baselineskip}
+% \end{macrocode}
+%
+% \section{Document class support}
+%
+% Execute the code declared with |\At|\-|Caption|\-|Package|.
+% We do this right before processing the options so stuff done with
+% |\At|\-|Caption|\-|Package| could be overwritten by user options.
+%
+% \begin{macrocode}
+\caption@documentclass@code
+\let\caption@documentclass@code\@undefined
+\let\AtCaptionPackage\@firstofone
+% \end{macrocode}
+%
+% \section{Processing of options}
+%
+% \changes{v3.0m}{2007/03/04}{Verbose option added}
+% \changes{v3.1}{2007/07/02}{Verbose option removed from package}
+% \changes{v3.1}{2007/03/17}{We do not process global options anymore}
+%
+% \begin{macrocode}
+\caption@SetupOptions{caption}{\caption@setkeys{#1}{#2}}
+\caption@ProcessOptions*{caption}
+% \end{macrocode}
+%
+% \section{\cs{caption}, \cs{@caption}, and \cs{@makecaption}}
+%
+% \begin{macro}{\caption@ifflag}
+% \changes{v3.3}{2011/12/28}{This switch added}
+% \changes{v3.3}{2018/08/08}{Rewritten (and renamed) so a counter is used instead of a switch}
+% Since we support continued floats and sub-figures it's not an easy task
+% to manage the figure (and table) counter. (Especially since previous versions
+% of the caption package has proven that correcting a counter locally is not a good idea.)
+%
+% These three switches hold the
+% current status: |\caption@if|\-|flag{2}| is set if the caption was already
+% typeset (so the counter doesn't need to be incremented for sub-figures),
+% |\caption@if|\-|flag{4}| is set if there is already content which have
+% incremented the counter (so the counter doesn't need to be incremented
+% for the main caption, further sub-figures, and other stuff), and
+% |\caption@if|\-|flag{1}| is set if |\continued|\-|float| was given.
+%
+% In the past three boolean switches were used to store the flags, but since some
+% packages (like the \package{floatrow} and \package{tabu} package) try hard to keep
+% counter changes locally under certain circumstances, it seems a good idea to make
+% these flags a counter value, too.
+% \begin{macrocode}
+\newcounter{caption@flags}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@ifflag[1]{%
+ \@tempcnta\c@caption@flags
+ \divide\@tempcnta #1\relax
+ \ifodd\@tempcnta
+ \expandafter\@firstoftwo
+ \else
+ \expandafter\@secondoftwo
+ \fi}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@clrflags}
+% \changes{v3.3}{2018/08/08}{This macro added}
+% \begin{macro}{\caption@clrflag}
+% \changes{v3.3}{2013/04/14}{This macro added}
+% \changes{v3.3}{2018/08/08}{Rewritten so a counter is used instead of a switch}
+% \begin{macro}{\caption@setflag}
+% \changes{v3.3}{2013/04/14}{This macro added}
+% \changes{v3.3}{2018/08/08}{Rewritten so a counter is used instead of a switch}
+% Furthermore we introduce the macros \cs{caption@clrflag} and \cs{caption@setflag}
+% for clearing resp.~setting these flags.
+% \begin{macrocode}
+\newcommand*\caption@clrflags{%
+ \setcounter{caption@flags}\z@}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@clrflag[1]{%
+ \caption@ifflag{#1}{\caption@addtoflags{-#1}}{}}
+\newcommand*\caption@setflag[1]{%
+ \caption@ifflag{#1}{}{\caption@addtoflags{#1}}}
+\newcommand*\caption@addtoflags{%
+ \addtocounter{caption@flags}}
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+% \end{macro}
+%
+% \begin{macro}{\caption@caption}
+% \changes{v3.0f}{2005/05/22}{Bugfix: \cs{ContinuedFloat} added}
+% \changes{v3.0f}{2005/06/13}{Support of \cs{caption*[]} removed}
+% \changes{v3.0l}{2007/01/19}{Minimal support of \textsf{combine} package added}
+% \changes{v3.1}{2007/02/04}{Re-written, does not save\&use original definition anymore}
+% Here comes our definition of |\caption| and |\caption*|.
+% Beside the support of the starred variant this code was adapted to the
+% various packages we support.
+% We are using |\caption@dblarg| instead of |\@dblarg| so |\caption{}|
+% (with an empty arg.) will produce a list-of entry, but |\caption[]{}|
+% won't.
+% \begin{macrocode}
+\def\caption@caption{%
+ \caption@iftype
+ {\caption@checkgrouplevel\@empty\caption
+ \caption@star
+ {\caption@refstepcounter\@captype}%
+ {\caption@dblarg{\@caption\@captype}}}%
+ {\caption@Error{\noexpand\caption outside float}%
+ \caption@gobble}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@star}
+% \changes{v3.1}{2007/06/24}{Renamed from \cs{caption@caption} to \cs{caption@star}}
+% \changes{v3.2c}{2011/08/21}{\cs{global} removed}
+% A helper macro which processes the optional |*| after |\caption|.
+% \begin{macrocode}
+\newcommand*\caption@star[2]{%
+ \@ifstar{\caption@startrue#2[]}{#1#2}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@@caption}
+% \changes{v3.1}{2007/02/04}{Re-written, does not save\&use original definition anymore}
+% \changes{v3.1f}{2007/11/28}{Bugfix: Handling of \texttt{@minipage} flag added}
+% \changes{v3.1f}{2007/11/28}{Support of option \opt{@minipage} added}
+% \changes{v3.1g}{2008/03/16}{Internal: Uses \cs{caption@prepareanchor} now}
+% \changes{v3.2d}{2011/10/21}{Adapted to the \textsf{memoir} document class}
+% \changes{v3.2f}{2012/01/14}{Usage of \cs{M@gettitle} moved to \cs{caption@prepareanchor}}
+% \changes{v3.3}{2013/01/06}{Adapted to the \textsf{nag} package}
+% As above, our version has been adapted to the packages we support.
+% Additionally our code is nested by |\caption@begin|\-|ex| \&
+% |\caption@end| instead of |\begin|\-|group| \& |\end|\-|group|.
+% Furthermore we use |\caption@par|\-|box|\-|restore| instead of
+% |\@parbox|\-|restore|.
+% \begin{macrocode}
+\long\def\caption@@caption#1[#2]#3{%
+% \end{macrocode}
+% \begin{macrocode}
+ \ifcaption@star \else
+ \caption@prepareanchor{#1}{#2}%
+ \memcaptioninfo{#1}{\csname the#1\endcsname}{#2}{#3}%
+ \@nameuse{nag@hascaptiontrue}%
+ \fi
+% \end{macrocode}
+% \begin{macrocode}
+ \par
+ \caption@beginex{#1}{#2}{#3}%
+ \caption@setfloatcapt{%
+ \caption@parboxrestore
+ \if@minipage
+ \@setminipage
+ \fi
+ \caption@normalsize
+ \ifcaption@star
+ \let\caption@makeanchor\@firstofone
+ \fi
+ \@makecaption{\csname fnum@#1\endcsname}%
+ {\ignorespaces\caption@makeanchor{#3}}\par
+ \caption@if@minipage\@minipagetrue\@minipagefalse}%
+ \caption@end}
+% \end{macrocode}
+% \class{memoir} document class stuff:
+% \begin{macrocode}
+\providecommand\memcaptioninfo[4]{}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@prepareanchor}
+% \changes{v3.1g}{2008/03/16}{This macro added}
+% \changes{v3.2f}{2012/01/14}{Usage of \cs{M@gettitle} moved from \cs{caption@@caption}}
+% \begin{macrocode}
+\newcommand*\caption@prepareanchor[2]{%
+ \caption@makecurrent{#1}{#2}%
+ \caption@ifhypcap\caption@@start\relax
+ \M@gettitle{#2}}
+% \end{macrocode}
+% \class{memoir} document class stuff:
+% \begin{macrocode}
+\providecommand\M@gettitle[1]{}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@makecaption}
+% \changes{v3.1i}{2008/05/06}{Usage of \cs{caption@rule} added}
+% |\@makecaption|\marg{label}\marg{text}\par
+% We do basically the same as the original code (from the standard
+% \LaTeX\ document classes), but take care of the |position=| setting
+% and use |\caption@@make| from the \package{caption} kernel to finally
+% typeset the caption.
+% \begin{macrocode}
+\long\def\caption@makecaption#1#2{%
+ \caption@make@above
+ \caption@@make{#1}{#2}%
+ \caption@make@below}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@make@above}
+% \begin{macro}{\caption@make@below}
+% \changes{v3.3a}{2019/04/02}{This macro added}
+% |\caption@make@above|\\
+% |\caption@make@below|\par
+% Typesets the stuff above resp.~below the caption, depending on |\caption@iftop|.
+% \begin{macrocode}
+\newcommand*\caption@make@above{%
+ \caption@iftop
+ \caption@belowskip
+ {\caption@rule\caption@aboveskip}}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@make@below{%
+ \caption@iftop
+ {\caption@aboveskip\caption@rule}%
+ \caption@belowskip}
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+%
+% \begin{macro}{\caption@redefine}
+% \changes{v3.1k}{2009/03/30}{This macro added, it contains the patching code now}
+% \begin{macrocode}
+\newcommand*\caption@redefine{}
+% \end{macrocode}
+% \end{macro}
+%
+% Prior to \version{3.4} we only redefined |\caption| and |\@caption| if the current definitions
+% were well known, so documents written in the old (\package{caption} package \version{1.x}) days
+% (where |\caption| \& |\@caption| were not redefined by us) still compiled fine.
+% This used to make sense when introducing \version{3.0} in the year 2003
+% but is simply overcautious and especially unwanted by the user nowadays.
+% So starting with \version{3.4} we only do not redefine |\caption| and |\@caption| if the
+% `compatibility' option is set to `v1'.
+%
+% \begin{macrocode}
+\g@addto@macro\caption@redefine{%
+% \end{macrocode}
+% \begin{macrocode}
+ \caption@ifcompatibility{%
+% \end{macrocode}
+% \begin{macrocode}
+ \caption@InfoNoLine{
+ \noexpand\caption will not be redefined since `compatibility' is set to v1}%
+% \end{macrocode}
+% \begin{macrocode}
+ \renewcommand*\caption@redefine{}%
+% \end{macrocode}
+%
+% |\continuedfloat| is not supported in compatibility mode `v1'.
+% \begin{macrocode}
+ \renewcommand*\caption@continuedfloat[1]{%
+ \caption@Error{Not available with option `compatibility=v1'}}%
+% \end{macrocode}
+%
+% |\caption@start| is not supported in compatibility mode `v1'.
+% \begin{macrocode}
+ \caption@AtBeginDocument*{%
+ \let\caption@start\relax
+ \caption@ifdefined\caption@ORI@capstart{%
+ \caption@Debug{%
+ Restore hypcap definition of \string\capstart\@gobble}%
+ \let\capstart\caption@ORI@capstart}{}%
+ }%
+% \end{macrocode}
+%
+% \begin{macro}{\caption@star}
+% We redefine |\caption@star| here so it does not make any harm.
+% \begin{macrocode}
+ \renewcommand*\caption@star[2]{#1#2}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+ }{%
+% \end{macrocode}
+%
+% \begin{macro}{\caption}
+% \begin{macro}{\@caption}
+% \begin{macrocode}
+ \renewcommand*\caption@redefine{%
+ \let\caption\caption@caption
+ \let\@caption\caption@@caption}%
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+%
+% \begin{macrocode}
+ }%
+% \end{macrocode}
+% \begin{macrocode}
+ \caption@redefine
+ \caption@AtBeginDocument*{%
+ \let\caption@ORI@capstart\@undefined}%
+% \end{macrocode}
+%
+% \begin{macro}{\@xfloat}
+% \changes{v3.1}{2007/05/09}{This re-definition added}
+% \changes{v3.1b}{2007/09/22}{Will now be redefined in compatibility mode, too}
+% \changes{v3.5}{2020/08/30}{Hook added}
+% We redefine |\@x|\-|float| so inside floating environments our
+% type-specific options will be used, a \package{hyperref}
+% anchor will be set etc.
+% \begin{macrocode}
+ \let\caption@ORI@xfloat\@xfloat
+% \end{macrocode}
+% \begin{macrocode}
+ \def\@xfloat#1[#2]{%
+ \caption@ORI@xfloat{#1}[#2]%
+ \caption@settype{#1}%
+ \caption@xfloat@hook}%
+% \end{macrocode}
+% Hook, could be extended with |\g@addto@macro\caption@x|\-|float@hook{|\ldots|}|.
+% (The caption type could be found in |\@cap|\-|type|.)
+% \begin{macrocode}
+ \newcommand*\caption@xfloat@hook{}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\@xdblfloat}
+% \changes{v3.5}{2020/08/30}{Re-definition of \cs{xdblfloat} added}
+% We redefine |\@xdbl|\-|float|, too, so special options for |figure*|
+% resp.~|table*| will be applied here.
+% \begin{macrocode}
+ \let\caption@ORI@xdblfloat\@xdblfloat
+% \end{macrocode}
+% \begin{macrocode}
+ \def\@xdblfloat#1[#2]{%
+ \caption@ORI@xdblfloat{#1}[#2]% expands to \@xfloat{#1}[#2] + extra stuff
+ \caption@setoptions{#1*}%
+ \caption@xdblfloat@hook}%
+% \end{macrocode}
+% Hook, could be extended with |\g@addto@macro\caption@xdbl|\-|float@hook{|\ldots|}|.
+% (The caption type could be found in |\@cap|\-|type|.)
+% \begin{macrocode}
+ \newcommand*\caption@xdblfloat@hook{}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+}
+% \end{macrocode}
+%
+% Some packages (like the \package{hyperref} package for example) redefines
+% |\caption| and |\@caption|, too.
+% So we have to use |\AtBeginDocument| here, so we can make sure
+% our definition is the one which will be valid at last.
+% \begin{macrocode}
+\caption@AtBeginDocument{\caption@redefine}
+% \end{macrocode}
+%
+% \begin{macro}{\@makecaption}
+% \begin{macrocode}
+\let\@makecaption\caption@makecaption
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\phantomcaption}
+% \changes{v3.2}{2010/10/31}{Bugfix 10-09-01b: This macro added}
+% |\phantomcaption|\par
+% Use this one for figures with subcaptions but without main caption.
+% \begin{macrocode}
+\newcommand\phantomcaption{%
+ \caption@iftype
+ {\caption@refstepcounter\@captype}%
+ {\caption@Error{\noexpand\phantomcaption outside float}}}%
+% \end{macrocode}
+% \end{macro}
+%
+% \section{\cs{setcaptiontype} and \cs{setcaptionsubtype}}
+%
+% \changes{v3.0d}{2004/08/03}{Option \opt{type=} added}
+% \changes{v3.1}{2007/06/25}{Option \opt{type*=} added}
+% \changes{v3.1f}{2007/11/16}{Option \opt{subtype} \& \opt{subtype*} added}
+% \changes{v3.2}{2010/10/24}{Bugfix 10-10-17: Option \opt{type=} uses \cs{setcaptiontype} instead of \cs{caption@settype} now}
+%
+% \begin{macrocode}
+\caption@AtBeginDocument{%
+% \end{macrocode}
+% \begin{macrocode}
+ \DeclareCaptionOption{type}{\setcaptiontype{#1}}%
+ \DeclareCaptionOption{type*}{\setcaptiontype*{#1}}%
+% \end{macrocode}
+% \begin{macrocode}
+ \DeclareCaptionOptionNoValue{subtype}{\setcaptionsubtype\relax}%
+ \DeclareCaptionOptionNoValue{subtype*}{\setcaptionsubtype*}%
+% \end{macrocode}
+% \begin{macrocode}
+}
+% \end{macrocode}
+%
+% \emph{Important Note:}
+% Like |\captionof| the option |type=| should only be used inside a
+% group, box, or environment and does not check if the argument is a valid
+% floating environment or not.
+%
+% \begin{macro}{\setcaptiontype}
+% \changes{v3.2}{2010/10/24}{This macro added}
+% \changes{v3.4e}{2020/01/02}{Check added if the subtype is defined}
+% \changes{v3.5}{2020/08/24}{Definition method adapted to the \package{caption-light} package}
+% Like |\captionsetup{type=xxx}|, but also works if |\caption|\-|setup| was redefined.
+% \begin{macrocode}
+\def\setcaptiontype{%
+ \caption@parboxrestore@mini
+ \caption@settype}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\setcaptionsubtype}
+% \changes{v3.2a}{2011/08/15}{This macro added}
+% \changes{v3.5d}{2020/09/28}{This macro revised}
+% Same, but sets the sub-type.
+% \begin{macrocode}
+\newcommand\setcaptionsubtype{%
+ \caption@iftype
+ \caption@setsubtype
+ {\caption@Error{\noexpand\setcaptionsubtype outside float}}}%
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand\caption@setsubtype{%
+ \caption@teststar\caption@@setsubtype\@firstoftwo\@secondoftwo}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@@setsubtype[1]{%
+ \caption@@@settype{sub}{#1}{sub\@captype}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@settype}
+% \changes{v3.1}{2007/05/09}{This macro added}
+% \changes{v3.1b}{2007/09/22}{Usage of \cs{caption@xlabel} added}
+% \changes{v3.1d}{2007/10/23}{Error message for \cs{caption@checkgrouplevel} revised}
+% \changes{v3.1f}{2007/11/16}{\cs{caption@setsubtype} added}
+% \changes{v3.1f}{2007/12/03}{Crappy \cs{caption@iftypewarning} replaced}
+% \changes{v3.1g}{2008/01/12}{Usage of \cs{ifcaptionsetup@star} added}
+% \changes{v3.2}{2010/10/26}{Error message moved from here to \cs{caption@refstepcounter}}
+% \changes{v3.3}{2011/12/28}{Resetting of \cs{ifcaption@caption} and \cs{ifcaption@subcaption} added}
+% \changes{v3.4e}{2020/01/02}{Checks added to prevent misuse regading subtypes}
+% \changes{v3.5d}{2020/09/28}{This macro revised}
+% |\caption@settype*|\marg{type}\par
+% sets |\@captype| and executes the options associated with it
+% (using |\caption@set|\-|options|).
+% Furthermore we check |\current|\-|group|\-|level| (if avail),
+% redefine |\@currentlabel| so a |\label| before |\caption| will result
+% in a hint instead of a wrong reference, and
+% use the macro |\caption@|(|sub|)|type|\-|hook| (which will be used by our
+% \package{float} package support).\par
+% The non-starred version sets a \package{hyperref} anchor additionally
+% (if |hypcap=|\-|true| and the \package{hypcap} package is not loaded).
+% \begin{macrocode}
+\newcommand*\caption@settype{%
+ \caption@clrflags
+ \caption@set@type}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@set@type{%
+ \caption@teststar\caption@@settype\@firstoftwo\@secondoftwo}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@@settype{%
+ \caption@@@settype{}}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@@@settype[3]{%
+% #1 = "" or "sub"
+% #2 = \@firstoftwo in star form, \@secondoftwo otherwise
+% #3 = <type>, e.g.: "figure" or "subfigure"
+ \caption@Debug{#1type=#3}%
+ \@nameuse{caption@check#1type}{#3}%
+ {\caption@checkgrouplevel{#1}{%
+ \captionsetup{#1type#2*\@empty=...}#2{ or
+ \@backslashchar#1captionof}{}}%
+% \end{macrocode}
+% \begin{macrocode}
+ \edef\caption@tempa{#3}%
+ \expandafter\ifx\csname @#1captype\endcsname\caption@tempa \else
+ \ifcaptionsetup@star\else\@nameuse{caption@#1type@warning}\fi
+ \fi
+ \expandafter\let\csname @#1captype\endcsname\caption@tempa
+% \end{macrocode}
+% \begin{macrocode}
+ \@nameuse{caption@#1typehook}%
+% \end{macrocode}
+% \begin{macrocode}
+ \caption@setoptions{#3}%
+ \ifx\caption@opt\relax
+ \@nameundef{caption@#1type@warning}%
+ \else
+ \@namedef{caption@#1type@warning}{\caption@Warning{%
+ The #1type was already set to
+ `\csname @#1captype\endcsname'\MessageBreak}}%
+ \fi
+% \end{macrocode}
+% \begin{macrocode}
+ #2{}{%
+ \let\@currentlabel\caption@undefinedlabel
+% \let\@currentHlabel\@undefined
+ \ifx\caption@x@label\@undefined
+ \let\caption@x@label\label
+ \let\label\caption@xlabel
+ \fi
+ \caption@start}}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@iftype}
+% \changes{v3.1}{2007/04/11}{This macro and its usage added}
+% Since we often need to check if |\@captype| is defined (means: we
+% are inside a floating environment) this helper macro was introduced.
+% \begin{macrocode}
+\newcommand*\caption@iftype{\caption@ifdefined\@captype}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@checktype}
+% \changes{v3.4g}{2020/01/02}{This macro and its usage added}
+% \changes{v3.4m}{2020/07/29}{Check of \cs{sf@counterlist} from \package{subfig} package added}
+% |\caption@checktype|\marg{type}\marg{code}\par
+% is used by |\caption@settype| and should either expand the code or issue an error
+% if the given type is not a proper type, i.e. it is a sub-type instead (either defined by
+% |\DeclareCaptionSubType| or |\newsubfloat|\cite{subfig}).
+% \begin{macrocode}
+\newcommand*\caption@checktype[1]{%
+ \caption@ifsubtype{#1}\@firstoftwo{\caption@ifin@list\sf@counterlist{#1}}%
+ {\caption@Error{Should not be used with subtype `#1'}%
+ \@gobble}%
+ \@firstofone}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@checksubtype}
+% \changes{v3.4g}{2020/01/02}{This macro and its usage added}
+% \changes{v3.4m}{2020/07/29}{Check of \cs{sf@counterlist} from \package{subfig} package added}
+% |\caption@checksubtype|\marg{type}\marg{code}\par
+% is used by |\caption@settype| and should either expand the code or issue an error
+% if the given type is not a proper sub-type, i.e. not defined by |\Declare|\-|Caption|\-|Sub|\-|Type|.
+% Since the |sub|\-|float|\-|row| environment offered by the \package{floatrow} package\cite{floatrow}
+% is using |\caption|\-|setup{sub|\-|type}| even if the sub-type was defined by |\new|\-|sub|\-|float|
+% offered by \package{subfig}\cite{subfig}, we take a more relaxed view of things here and allow
+% those sub-types as well (but not without warning since we do not support this).
+% \begin{macrocode}
+\newcommand*\caption@checksubtype[1]{%
+ \caption@ifsubtype{#1}%
+ \@firstofone
+ {\caption@ifin@list\sf@counterlist{#1}%
+ {\caption@Warning{%
+ \noexpand\setcaptionsubtype without \string\DeclareCaptionSubType.\MessageBreak
+ This is not designed to work; you could try replacing\MessageBreak
+ the `subfig' package with `subcaption' to resolve\MessageBreak
+ this problem which occurred}%
+ \@firstofone}%
+ {\caption@Error{Undefined subtype `#1'}%
+ \@gobble}}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@checkgrouplevel}
+% \changes{v3.1}{2007/07/15}{This macro and its usage added}
+% \changes{v3.1f}{2007/11/28}{Error changed to warning (compatibility)}
+% \changes{v3.3}{2013/04/21}{Uses \cs{caption@ifeTeX} now}
+% \changes{v3.5}{2019/09/11}{Relies on \eTeX{} now}
+% Checks if |\captionsetup{type=|\ldots|}| or |\caption| is done
+% inside a group or not -- in the latter case a warning message will
+% be issued.
+% \begin{macrocode}
+\newcommand*\caption@checkgrouplevel[2]{%
+ \@ifundefined{#1caption@grouplevel}{%
+ \caption@ifundefined\caption@grouplevel{\let\caption@grouplevel\z@}{}%
+ \ifnum\currentgrouplevel>\caption@grouplevel\relax
+ \expandafter\edef\csname #1caption@grouplevel\endcsname{%
+ \the\currentgrouplevel}%
+ \else
+ \caption@Warning{\string#2\MessageBreak outside box or environment}%
+ \fi
+ }{}}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@undefinedlabel}
+% \changes{v3.1}{2007/07/03}{This macro and its usage added}
+% \changes{v3.1b}{2007/09/22}{Contents changed to \texttt{??}}
+% \changes{v3.1i}{2008/04/13}{Contents changed to \cs{caption@xref}(\ldots)}
+% \changes{v3.1k}{2009/03/30}{Bugfix 08-12-08: \cs{caption@xref} is robust now}
+% \changes{v3.2c}{2011/09/13}{Text changed from `before' to `without proper'}
+% \changes{v3.3}{2016/02/21}{Text changed from `without proper \cs{caption}' to `without proper reference'}
+% This label will be used for |\currentlabel| inside (floating) environments
+% as default. (see above)
+% \iffalse\Note{All commands used have to be robust here.}\fi
+% \begin{macrocode}
+\newcommand*\caption@undefinedlabel{%
+ \protect\caption@xref{\caption@labelname}{\on@line}}
+% \end{macrocode}
+% \begin{macrocode}
+\DeclareRobustCommand*\caption@xref[2]{%
+ \caption@WarningNoLine{\noexpand\label without proper reference#2}%
+ \@setref\relax\@undefined{#1}}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@labelname{??}
+% \end{macrocode}
+% \end{macro}
+% \begin{macro}{\caption@xlabel}
+% \changes{v3.1b}{2007/09/22}{This macro and its usage added}
+% \changes{v3.1f}{2007/11/11}{Revised}
+% \changes{v3.1i}{2008/04/13}{Bugfix: \cs{pageref} should always work now}
+% \changes{v3.2c}{2011/08/19}{Works with optional arguments now, too}
+% The new code of |\label| inside floating environments.
+% |\label| will be redefined using |\caption@withoptargs|, so
+% |#1| are the optional arguments (if any), and
+% |#2| is the mandatory argument here.
+% \begin{macrocode}
+\newcommand*\caption@xlabel{%
+ \caption@withoptargs\caption@@xlabel}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@@xlabel[2]{%
+ \caption@@@xlabel
+ \def\caption@labelname{#2}%
+ \caption@x@label#1{#2}}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@@@xlabel{%
+ \global\let\caption@@@xlabel\@empty
+ \@bsphack
+ \protected@write\@auxout{}%
+ {\string\providecommand*\string\caption@xref[2]{%
+ \string\@setref\string\relax\string\@undefined{\string##1}}}%
+ \@esphack}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\captionof}
+% \changes{v3.1}{2007/05/09}{Uses \cs{caption@settype} instead of \cs{def}\cs{@captype}}
+% \changes{v3.1c}{2007/09/22}{Bugfix: Redefinition of \cs{caption@setfloatcapt} removed}
+% \changes{v3.1e}{2007/10/30}{Better compatibility: Will be defined with \cs{AtBeginDocument} now}
+% \changes{v3.2}{2010/10/24}{Bugfix 10-10-17: Uses \cs{setcaptiontype} instead of \cs{caption@settype} now}
+% \changes{v3.5}{2020/08/24}{Definition method adapted to the \package{caption-light} package}
+% |\captionof|\marg{type}\oarg{lst\_entry}\marg{heading}\\
+% |\captionof*|\oarg{lst\_entry}\marg{heading}\par
+% \Note{This will be defined with \cs{AtBeginDocument} so
+% \cs{usepackage}\csmarg{caption,capt-of} will still work.
+% (Compatibility to \version{1.x})}
+% \begin{macrocode}
+\caption@AtBeginDocument{%
+ \def\captionof{\caption@teststar\caption@of{\caption*}\caption}}
+% \end{macrocode}
+% \begin{macrocode}
+\providecommand*\caption@of[2]{\setcaptiontype*{#2}#1}
+% \end{macrocode}
+% \end{macro}
+%
+% \section{\cs{captionlistentry}}
+%
+% \begin{macro}{\captionlistentry}
+% \changes{v3.1}{2007/07/28}{This macro added}
+% \changes{v3.1f}{2007/11/16}{Bugfix 07-11-09: `space hack' added}
+% \changes{v3.1g}{2008/01/20}{Starred variant added}
+% \changes{v3.1l}{2010/01/09}{Adapted to current version of nameref package}
+% |\captionlistentry|\oarg{float type}\marg{list entry}\\
+% |\captionlistentry*|\oarg{float type}\marg{list entry}
+% \begin{macrocode}
+\newcommand*\captionlistentry{%
+ \caption@teststar\@captionlistentry\@firstoftwo\@secondoftwo}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\@captionlistentry[1]{%
+ \@testopt{\caption@listentry{#1}}\@captype}
+% \end{macrocode}
+% \begin{macrocode}
+\def\caption@listentry#1[#2]#3{%
+ \@bsphack
+ #1{\caption@gettitle{#3}}%
+ {\caption@refstepcounter{#2}%
+ \caption@makecurrent{#2}{#3}}%
+ \caption@addcontentsline{#2}{#3}%
+ \@esphack}
+% \end{macrocode}
+% \end{macro}
+%
+% \section{\cs{captionbox}}
+%
+% \begin{macro}{\captionbox}
+% \changes{v3.2}{2010/12/17}{This macro added}
+% \changes{v3.2a}{2011/08/16}{\cs{captionsetup} replaces with \cs{captionbox@settype} and \cs{caption@setposition}}
+% \changes{v3.3}{2012/04/09}{Adapted to revised version of \cs{caption@withoptargs}}
+% \changes{v3.3}{2017/03/19}{When used with fixed witdh the content will not be hboxed anymore}
+% \changes{v3.3c}{2019/09/01}{Adapted so it could be used by \cs{subfloat} offered by \package{subcaption}}
+% \changes{v3.5}{2020/07/28}{Adapted to \package{caption3} v2.0}
+% A |\parbox| with contents and caption, separated by an invisible |\hrule|.
+% \begin{macrocode}
+\newcommand*\captionbox{%
+ \caption@withoptargs{\caption@ibox\@gobble}}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand\caption@ibox[3]{%
+ \kernel@ifnextchar[%]
+ {\caption@iibox{#1}{#2}{#3}}%
+ {\caption@iibox@{#1}{#2}{#3}}}
+% \end{macrocode}
+% \begin{macrocode}
+\long\def\caption@iibox#1#2#3[#4]{%
+ \@testopt{\caption@iiibox{#1}{#2}{#3}[{#4}]}\captionbox@innerpos@default}
+% \end{macrocode}
+% \begin{macrocode}
+\long\def\caption@iibox@#1#2#3#4{%
+ \setbox\@tempboxa\hbox{#4}%
+ \caption@iiibox{#1}{#2}{#3}[\wd\@tempboxa][\captionbox@innerpos@default]{\unhbox\@tempboxa}}
+% \end{macrocode}
+% \begin{macrocode}
+\long\def\caption@iiibox#1{%
+ \caption@iiiibox{#1}\vbox\vtop}
+% \end{macrocode}
+% \begin{macrocode}
+\long\def\caption@iiiibox#1#2#3#4#5[#6][#7]#8{%
+ \begingroup
+ #1*% set \caption@position
+ \caption@iftop{%
+ \endgroup
+ \parbox[t]{#6}{%
+ #1\relax
+ \caption@setposition t%
+ #2{\caption#4{#5}}%
+ \captionbox@hrule
+ \csname caption@justification@#7\endcsname
+ #8}%
+ }{%
+ \endgroup
+ \parbox[b]{#6}{%
+ #1\relax
+ \caption@setposition b%
+ \csname caption@justification@#7\endcsname
+ #8%
+ \captionbox@hrule
+ #3{\caption#4{#5}}}%
+ }}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\captionbox@innerpos@default{c}
+\newcommand*\captionbox@hrule{\hrule\@height\z@\relax}
+% \end{macrocode}
+% \begin{macrocode}
+\providecommand*\caption@justification@c{\centering}
+\providecommand*\caption@justification@l{\raggedright}
+\providecommand*\caption@justification@r{\raggedleft}
+\providecommand*\caption@justification@s{}
+% \end{macrocode}
+% \end{macro}
+%
+% \section{\cs{continuedfloat}}
+%
+% \begin{macro}{\continuedfloat}
+% \changes{v3.0i}{2005/11/12}{Optional argument added}
+% \changes{v3.0g}{2005/06/28}{Bugfix: \cs{newcounter} replaced by \cs{newcount}}
+% \changes{v3.1}{2007/07/02}{Format of \package{hyperref} extension changed}
+% \changes{v3.1}{2007/07/07}{\cs{caption@setoptions} added}
+% \changes{v3.1g}{2008/01/29}{Starred variant added}
+% \changes{v3.2f}{2011/12/17}{Undocumented optional argument removed}
+% \changes{v3.3}{2011/12/28}{Uses \cs{ifcaption@ContinuedFloat} now}
+% \changes{v3.3}{2013/05/01}{Usage of \cs{caption@restorecounters} added}
+% \changes{v3.3}{2013/12/16}{Bugfix: Does not use \cs{caption@ContinuedFloat} anymore since this breaks \cs{ContinuedFloat} offered by the \package{subfig} package}
+% \changes{v3.4}{2015/09/16}{Renamed from \cs{ContinuedFloat} to \cs{continuedfloat}}
+% \changes{v3.5f}{2020/10/06}{Usage of \cs{caption@restorecounters} removed}
+% |\continuedfloat|\\
+% |\continuedfloat*|\par
+% This mainly sets the appropriate flag, increments the
+% continuation counter, and executes the given options.
+% Furthermore we set |\caption@reset|\-|continued|\-|float| to |\@gobble| so the
+% continuation counter will not be reset to zero inside |\caption@ref|\-|step|\-|counter|.\par
+% When the \package{hyperref} package is used we have the problem
+% that the usage of |\continued|\-|float| will create duplicate
+% hyper links -- |\@current|\-|Href| will be the same for the main float and
+% the continued ones. So we have to make sure unique labels and references
+% will be created each time. We do this by extending |\the|\-|H|\-|figure| and
+% |\the|\-|H|\-|table|, so for continued floats the scheme
+% \begin{quote}\meta{type}|.|\meta{type \#}|\alph{|\meta{continued \#}|}|\end{quote}
+% will be used instead of
+% \begin{quote}\meta{type}|.|\meta{type \#}\quad\quad.\end{quote}
+% \par{\small(This implementation follows an idea from Steven Douglas Cochran.)}
+% \Note{This does not help if the \package{hyperref} package option
+% \texttt{naturalnames=true} is set.}
+% \begin{macrocode}
+\def\continuedfloat{%
+ \caption@iftype
+ {\caption@continuedfloat\@captype}%
+ {\caption@Error{\noexpand\continuedfloat outside float}}}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@continuedfloat[1]{%
+ \@ifstar
+ {\caption@@refstepcounter\@captype
+ \caption@@continuedfloat{#1}}%
+ {\caption@continued@float{#1}}}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@continued@float[1]{%
+ \edef\caption@tempa{#1}%
+ \ifx\caption@tempa\caption@CFtype
+ \caption@@continuedfloat{#1}%
+ \else
+ \caption@Error{Continued `#1' after `\caption@CFtype'}%
+ \fi}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@@continuedfloat{%
+ \caption@setflag1% continued float
+ \caption@@@continuedfloat}
+\newcommand*\caption@@@continuedfloat{%
+ \stepcounter{continuedfloat}%
+ \caption@@@@continuedfloat}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@@@@continuedfloat[1]{%
+ \caption@setoptions{ContinuedFloat}% for compatibility reasons
+ \caption@setoptions{continuedfloat}%
+ \caption@setoptions{continued#1}%
+ \expandafter\l@addto@macro\csname the#1\endcsname\thecontinuedfloat
+ \@ifundefined{theH#1}{}{%
+ \expandafter\l@addto@macro\csname theH#1\endcsname{%
+ \@alph\c@continuedfloat}}%
+ \let\caption@@@@continuedfloat\@gobble}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@CFtype{??}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\thecontinuedfloat}
+% \changes{v3.4}{2015/09/16}{Renamed from \cs{theContinuedFloat} to \cs{thecontinuedfloat}}
+% This one is preset to \cs{@empty}, so usually the continuation counter is not
+% included in the caption label or references.
+% \begin{macrocode}
+\newcounter{continuedfloat}
+\let\c@ContinuedFloat\c@continuedfloat % defined for compatibility reasons
+\def\thecontinuedfloat{\theContinuedFloat}
+\let\theContinuedFloat\@empty % defined for compatibility reasons
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@reset@continuedfloat}
+% \changes{v3.2f}{2011/12/17}{Redefinition of \cs{continuedfloat} added}
+% |\caption@reset@continuedfloat|\marg{type}\par
+% If a continuation counter is defined, we reset it.
+% (This one will be called inside |\@caption|.)
+% \begin{macrocode}
+\newcommand*\caption@reset@continuedfloat[1]{%
+ \xdef\caption@CFtype{#1}%
+ \@stpelt{continuedfloat}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\ContinuedFloat}
+% For compatibility reasons we still support |\Continued|\-|Float|.
+% \begin{macrocode}
+\def\ContinuedFloat{\continuedfloat} % defined for compatibility reasons
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@ContinuedFloat}
+% \changes{v3.0f}{2005/06/11}{This macro added}
+% \changes{v3.3}{2013/12/16}{Bugfix: Revised and defined with \cs{def} instead of \cs{newcommand}}
+% |\caption@ContinuedFloat|\marg{type}\par
+% This one is used by \cs{ContinuedFloat} offered by the \package{subfig} package.
+% \begin{macrocode}
+\def\caption@ContinuedFloat{%
+ \let\caption@reset@continuedfloat\@gobble
+ \caption@@@continuedfloat}
+% \end{macrocode}
+% \end{macro}
+%
+% \section{Internal helpers}
+%
+% \begin{macro}{\caption@refstepcounter}
+% \changes{v3.1}{2007/07/28}{This macro added}
+% \changes{v3.2}{2010/10/26}{Error message moved from \cs{caption@@@settype} to here}
+% \changes{v3.2c}{2011/09/04}{Support of \cs{donemaincaptiontrue} from \textsf{memoir} document class added}
+% \changes{v3.3}{2011/12/28}{Usage of \cs{ifcaption@caption}, \cs{ifcaption@subcaption}, and \cs{ifcaption@ContinuedFloat} added}
+% \changes{v3.5e}{2020/09/28}{Bugfix in re-definition of \cs{stepcounter}; uses \cs{edef} instead of \cs{def} now}
+% Increments the float (i.e. |figure| or |table|) counter,
+% resets the continuation counter, and redefines itself to |\@gobble|.
+% \begin{macrocode}
+\newcommand*\caption@refstepcounter[1]{%
+ \@ifundefined{c@#1}%
+ {\caption@Error{No float type '#1' defined}}%
+ {\caption@ref@stepcounter{#1}%
+% \end{macrocode}
+% Set flag if this part of the figure (or table) contains a caption now.
+% (If |\caption@if|\-|top| is not set, |\caption| is at the bottom of this part,
+% therefore ending this part, so we set the flag to |false| in this case.)
+% \begin{macrocode}
+ \caption@fixposition % TODO: Make this independant on the "position" setting
+ \caption@iftop\caption@setflag\caption@clrflag2% caption
+% \end{macrocode}
+% This part does not contain content (like sub-figures) yet,
+% so we set |\if|\-|caption@sub|\-|caption| to |false|.
+% \begin{macrocode}
+ \caption@clrflag4% subcaption
+% \end{macrocode}
+% Support of the \textsf{memoir} document class.
+% \begin{macrocode}
+ \@nameuse{donemaincaptiontrue}}}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@ref@stepcounter{%
+ \caption@ifflag1{% continued float
+ \let\caption@tempa\caption@@refcounter
+ \caption@clrflag1% continued float
+ }{%
+ \let\caption@tempa\caption@@refstepcounter
+ \caption@ifflag2{}{% caption
+ \caption@ifflag4{% subcaption
+ % Counter was already incremented by content, so we suppress \stepcounter{#1} here
+ \let\caption@tempa\caption@@refcounter
+ }{}%
+ }%
+ }%
+ \caption@tempa}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@@refcounter[1]{%
+ \let\caption@stepcounter@ORI\stepcounter
+ \def\stepcounter##1{%
+ \edef\caption@tempa{#1}%
+ \edef\caption@tempb{##1}%
+ \ifx\caption@tempa\caption@tempb \else
+ \caption@stepcounter@ORI{##1}%
+ \fi}%
+ \caption@@@refstepcounter{#1}%
+ \let\stepcounter\caption@stepcounter@ORI}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@@refstepcounter[1]{%
+ \caption@prepare@stepcounter{#1}{ref}%
+ \caption@@@refstepcounter{#1}}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@@stepcounter[1]{%
+ \caption@prepare@stepcounter{#1}{}%
+ \caption@@@stepcounter{#1}}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@prepare@stepcounter[2]{%
+ \caption@addsubcontentslines{#2stepcounter}%
+ \caption@reset@continuedfloat{#1}}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@@@refstepcounter{\refstepcounter}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@@@stepcounter{\stepcounter}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@dblarg}
+% \changes{v3.1}{2007/02/05}{This macro added}
+% \changes{v3.1f}{2007/12/06}{Bugfix 07-12-06: Changed so it works without \cs{kernel@ifnextchar} (which was introduced in \LaTeXe\ 2004/01/23), too}
+% \changes{v3.3}{2012/03/25}{Support of option \opt{list-entry} added}
+% A |\relax| was added compared to |\@dblarg| so |\caption{}| will be
+% expanded to |\caption[\relax]{}| (and not to |\caption[]{}|).
+% Furthermore support for option \opt{list-entry} was added.
+% \begin{macrocode}
+\@ifundefined{kernel@ifnextchar}{\let\kernel@ifnextchar\@ifnextchar}{}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand\caption@dblarg[1]{%
+ \kernel@ifnextchar[{\caption@ydblarg{#1}}{\caption@xdblarg{#1}}}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand\caption@xdblarg[2]{%
+ #1[{#2\relax}]{#2}}
+% \end{macrocode}
+% \begin{macrocode}
+\long\def\caption@ydblarg#1[#2]#3{%
+ \caption@iflistheading{#1[{#3}]{#3}}{#1[{#2}]{#3}}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@begin}
+% \changes{v3.0a}{2004/01/23}{\cs{caption@settype} changed to \cs{caption@setfloattype}}
+% \changes{v3.0e}{2005/04/12}{Check for default label format added}
+% \changes{v3.0f}{2005/06/11}{Usage of \cs{caption@resetContinuedFloat} added}
+% \changes{v3.1}{2007/05/09}{Usage of \cs{caption@setfloattype} \& \cs{caption@resetContinuedFloat} removed}
+% \changes{v3.3}{2011/12/29}{Usage of \cs{caption@fixedposition} removed}
+% Our handling of |\caption| will always be surrounded by
+% |\caption@begin| (or |\caption@beginex|) and |\caption@end|.\par
+% |\caption@begin|\marg{type} performs these tasks:
+% \begin{enumerate}
+% \item[1.] Override the |position=| setting, if necessary.
+% (for example if set to |auto| or used inside a |supertabular|)
+% \item[2.] Start a new group.
+% \item[3.] Define |\fnum@|\meta{type} if the caption label format is set
+% to non-default.
+% \end{enumerate}
+% \begin{macrocode}
+\newcommand*\caption@begin[1]{%
+ \caption@fixposition
+ \begingroup
+ \caption@setfnum{#1}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@beginex}
+% \changes{v3.0b}{2004/05/16}{Support of \opt{listof=} added}
+% \changes{v3.0l}{2007/02/04}{Takes now 3 args instead of 2, check for empty heading added}
+% \changes{v3.1}{2007/07/01}{Makes lst-entry now instead of redefining \cs{addcontentsline}}
+% \changes{v3.2}{2010/10/26}{Bugfix 09-05-15: Setting of \cs{lst@@caption} added}
+% |\caption@beginex|\marg{type}\marg{list entry}\marg{heading}\par
+% performs the same tasks as |\caption@begin| and additionally:
+% \begin{enumerate}
+% \item[4.] Set |\lst@@caption|, so |\fnum@lstlisting| will include a numbering.
+% \item[5.] Make an entry in the list-of-whatever.
+% \item[6.] Set |\caption@ifempty| according argument \meta{heading}.
+% \end{enumerate}
+% \begin{macrocode}
+\newcommand\caption@beginex[3]{%
+ \caption@begin{#1}%
+ \let\lst@@caption\relax
+ \caption@addcontentsline{#1}{#2}%
+ \caption@ifempty{#3}{}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@end}
+% \changes{v3.3}{2011/12/29}{Usage of \cs{caption@fixedposition} removed}
+% |\caption@end| closes the group.
+% \begin{macrocode}
+\newcommand*\caption@end{%
+ \endgroup}
+% \end{macrocode}
+% \end{macro}
+%
+% \changes{v3.0a}{2004/01/23}{Internal hooks \cs{caption@@begin} \& \cs{caption@@end} added}
+% \changes{v3.0h}{2005/10/06}{Internal hooks \cs{caption@@begin} \& \cs{caption@@end} removed}
+%
+% \begin{macro}{\caption@setfnum}
+% \changes{v3.1}{2007/03/10}{This macro added}
+% \changes{v3.5}{2020/08/03}{Adapted to \package{caption3} v2.0}
+% |\caption@setfnum|\marg{type}\\
+% stores the original definition of |\fnum@|\meta{type} in |\caption@fnum@|\meta{type}
+% and re-defines it according the caption label format set with |label|\-|format=|.
+% \begin{macrocode}
+\newcommand*\caption@setfnum[1]{%
+ \@ifundefined{caption@fnum@#1}%
+ {\expandafter\let\csname caption@fnum@#1\expandafter\endcsname\csname fnum@#1\endcsname
+ \@namedef{fnum@#1}{\caption@fnum{#1}}}%
+ {}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@normalsize}
+% \changes{v3.1}{2007/05/05}{This macro and its usage added}
+% \changes{v3.5}{2020/07/27}{Adapted to \package{caption3} v2.0}
+% This one will be used by |\@caption| instead of |\normalsize|.
+% \begin{macrocode}
+\newcommand*\caption@normalsize{%
+ \caption@font@normal\@unused}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@setfloatcapt}
+% Needed for support of the \package{float} package, where the caption will
+% not be typeset directly, but catched in a |\vbox| called |\@floatcapt|
+% instead.
+% \begin{macrocode}
+\let\caption@setfloatcapt\@firstofone
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@makecurrent}
+% This one is needed for support of the \package{nameref} and \package{hyperref} package.
+% \changes{v3.2f}{2012/01/14}{Bugfix: Usage of \cs{caption@gettitle} added}
+% \begin{macrocode}
+\newcommand*\caption@makecurrent[1]{\caption@gettitle}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@makeanchor}
+% \begin{macro}{\caption@start}
+% \begin{macro}{\caption@@start}
+% \begin{macro}{\caption@freezeHref}
+% \begin{macro}{\caption@defrostHref}
+% All these are needed for support of the \package{hyperref} package.
+% \begin{macrocode}
+\let\caption@makeanchor\@firstofone
+\let\caption@start\relax
+\let\caption@@start\relax
+\let\caption@freezeHref\relax
+\let\caption@defrostHref\relax
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+% \end{macro}
+% \end{macro}
+% \end{macro}
+%
+% \begin{macro}{\caption@gettitle}
+% \changes{v3.1}{2007/05/05}{This macro and its usage added}
+% This one is needed for support of the \package{nameref} package.
+% \begin{macrocode}
+\newcommand\caption@gettitle[1]{%
+ \caption@ifdefined\NR@gettitle
+ {\NR@gettitle{#1}}%
+ {\def\@currentlabelname{#1}}}
+% \end{macrocode}
+% \end{macro}
+%
+% \section{Support for sub-captions}
+% \changes{v3.1f}{2007/11/16}{Support for sub-captions added}
+%
+% \begin{macro}{\caption@subtypehook}
+% \changes{v3.1g}{2008/03/20}{Redefinition of \cs{caption@setlist} added}
+% \changes{v3.1k}{2009/10/09}{Bugfix 09-08-12b: \cs{@makecaption} will now be restored here, too}
+% \changes{v3.2}{2011/06/26}{Uses \cs{caption@@addcontentsline} instead of \cs{addcontentsline} now}
+% \changes{v3.2a}{2011/08/17}{Redefinition of \cs{phantomcaption} added}
+% \changes{v3.2a}{2011/08/17}{Usage of \cs{caption@warmup} added}
+% \changes{v3.2c}{2011/09/30}{Bugfix 11-09-26: Usage of \cs{if@subfloatrow} added}
+% \changes{v3.3}{2011/12/28}{Bugfix 11-12-16: \cs{caption@l@stepcounter} replaced by \cs{stepcounter}}
+% \changes{v3.3}{2012/03/15}{Usage of \cs{caption@setbox} added}
+% \changes{v3.3}{2013/05/01}{Redefinition of \cs{caption@settype} added}
+% \changes{v3.3}{2013/06/17}{Missing redefinition of \cs{captionlistentry} added}
+% \changes{v3.3}{2018/09/06}{Adapted to the \package{chkfloat} package}
+% \changes{v3.4f}{2020/01/03}{Redefinition of \cs{@caption} added since it was redefined by the \env{threeparttable} environment}
+% \changes{v3.5}{2020/07/27}{Adapted to \package{caption3} v2.0}
+% Hook, will be used inside \cs{caption@setsubtype}.\par
+% (Note: If we are inside an |sub|\-|float|\-|row| environment we have to keep
+% the |\@make|\-|caption| code of the \package{floatrow} package intact.)
+% \begin{macrocode}
+\newcommand*\caption@subtypehook{%
+ \ifx\caption\caption@subcaption \else
+ \caption@warmup
+% \end{macrocode}
+% \begin{macrocode}
+ \caption@ifflag2{}{% caption
+% no \caption in this part of the (floating) environment yet
+ \let\caption@add@contentsline\caption@addsubcontentsline
+ \let\caption@addsubcontentslines\@gobble
+ \caption@ifflag4{}{% subcaption
+% no \subcaption in this part of the (floating) environment yet
+ \caption@ifflag1{% continued float
+ \caption@clrflag1%
+ }{%
+ \caption@@stepcounter\@captype
+ }%
+ \caption@setflag4% subcaption
+ }%
+ }%
+% \end{macrocode}
+% \begin{macrocode}
+ \c@continuedfloat=0\relax
+ \let\caption@setfloatcapt\@firstofone
+ \let\caption@chkfloat\@gobbletwo
+% \end{macrocode}
+% \begin{macrocode}
+ \caption@set{box}{none}%
+ \caption@clearmargin
+ \caption@iflist{}{\let\caption@setlist\@gobble}%
+ \caption@setoptions{sub}%
+ \caption@setoptions{subfloat}% for subfig-package compatibility
+% \end{macrocode}
+% \begin{macrocode}
+% redefine \setcaptiontype
+ \def\caption@settype{\caption@withoptargs\caption@sub@settype}%
+ \def\caption@sub@settype##1##2{%
+ \edef\caption@tempa{##2}%
+ \ifx\caption@tempa\@captype
+%%% \caption@setsubtype##1\relax
+ \else
+ \caption@Error{##2 inside \@subcaptype}%
+ \fi}%
+% \end{macrocode}
+% \begin{macrocode}
+% redefine \caption
+ \let\caption\caption@subcaption
+ \let\@caption\caption@@caption
+ \let\phantomcaption\caption@subphantom
+ \let\captionlistentry\caption@sublistentry
+% \let\@captype\@subcaptype
+ \let\caption@refstepcounter\caption@@@refstepcounter
+% \end{macrocode}
+% \begin{macrocode}
+% restore \@makecaption
+ \if@subfloatrow
+ \caption@Debug{Keeping \string\@makecaption}%
+ \else
+ \let\@makecaption\caption@makecaption
+ \fi
+ \fi}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\if@subfloatrow}
+% \changes{v3.2c}{2011/09/30}{This macro added}
+% This macro tests if we are inside an |sub|\-|float|\-|row| or |sub|\-|float|\-|row*| environment.
+% \begin{macrocode}
+\caption@AtBeginDocument{%
+ \caption@ifundefined\@subfloatrowtrue
+ {\newif\if@subfloatrow
+ \caption@ifundefined\subfloatrow
+ {}%
+ {\caption@Debug{Patching subfloatrow environment}%
+ \g@addto@macro\capsubrowsettings{\@subfloatrowtrue}%
+ \g@addto@macro\killfloatstyle{%
+ \ifx\c@FRobj\c@FRsobj\@subfloatrowtrue\fi}}}%
+ {\caption@Debug{\string\if@subfloatrow is already defined}}}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@subcaption}
+% Makes a sub-caption.
+% \begin{macrocode}
+\newcommand*\caption@subcaption{%
+ \caption@checkgrouplevel{sub}\subcaption
+ \caption@star
+ {\caption@refstepcounter\@subcaptype}%
+ {\caption@dblarg{\@caption\@subcaptype}}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@subphantom}
+% \changes{v3.2a}{2011/08/17}{This macro added}
+% Same as |\phantomcaption|, but for sub-captions.
+% \begin{macrocode}
+\newcommand*\caption@subphantom{%
+ \caption@checkgrouplevel{sub}\phantomsubcaption
+ \caption@refstepcounter\@subcaptype}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@sublistentry}
+% \changes{v3.3}{2013/06/17}{This macro added}
+% Same as |\captionlistentry|, but for sub-captions.
+% \begin{macrocode}
+\newcommand*\caption@sublistentry{%
+ \caption@teststar\@subcaptionlistentry\@firstoftwo\@secondoftwo}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\@subcaptionlistentry[1]{%
+ \@testopt{\caption@listentry{#1}}\@subcaptype}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{caption@clearsubcontentslines}
+% Clear pending sub-caption list entries.
+% \begin{macrocode}
+\newcommand*\caption@clearsubcontentslines{%
+ \global\let\caption@subcontentslines\@empty}
+% \end{macrocode}
+% \begin{macrocode}
+\caption@clearsubcontentslines
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@addsubcontentsline}
+% \changes{v3.1i}{2008/08/02}{\cs{label}, \cs{index}, and \cs{glossary} are allowed inside the list entry now}
+% \changes{v3.2}{2011/06/26}{Uses \cs{caption@@addcontentsline} instead of \cs{addcontentsline} now}
+% \changes{v3.2c}{2011/08/19}{Uses \cs{caption@gobble} instead of \cs{@gobble} now}
+% \changes{v3.3}{2012/01/15}{Debug message added}
+% \changes{v3.3}{2013/03/10}{A single \cs{protect} replaced by \cs{noexpand}}
+% Add a pending sub-caption list entry.
+% \begin{macrocode}
+\newcommand*\caption@addsubcontentsline[4]{%
+ \caption@Debug{\string\caption@addsubcontentsline{#1}{#2}}%
+ \begingroup
+ \let\label\caption@gobble
+ \let\index\caption@gobble
+ \let\glossary\caption@gobble
+ \protected@edef\@tempa{\endgroup
+ \noexpand\g@addto@macro\noexpand\caption@subcontentslines{%
+ \noexpand\@namedef{the#2}{\csname the#2\endcsname}%
+ \ifx\@currentHref\@undefined \else
+ \noexpand\def\noexpand\@currentHref{\@currentHref}%
+ \fi
+ \noexpand\caption@@@addcontentsline{#1}{#2}{#3}{#4}}}%
+ \@tempa}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\flushsubcaptionlistentries}
+% \changes{v3.3}{2012/01/15}{Renamed from \cs{caption@addsubcontentslines} to \cs{flushsubcaptionlistentries}}
+% \changes{v3.3}{2013/03/10}{Bugfix: Missing redefinition of \cs{caption@addsubcontentslines} added}
+% Writes pending sub-caption list entries.
+% \begin{macrocode}
+\newcommand*\flushsubcaptionlistentries{%
+ \caption@addsubcontentslines{user}}
+% \end{macrocode}
+% \begin{macrocode}
+\renewcommand*\caption@addsubcontentslines[1]{%
+ \caption@Debug{\string\flushsubcaptionlistentries (#1)}%
+ \begingroup
+ \caption@subcontentslines
+ \endgroup
+ \caption@clearsubcontentslines}
+% \end{macrocode}
+% We need to patch \cs{chapter} otherwise a vertical gap will be inserted into
+% the list prior pending sub-caption list entries.
+% We do this |\At|\-|Begin|\-|Document| so packages like \package{newfloat}
+% will not complain about an unknown document class.
+% \begin{macrocode}
+\AtBeginDocument{%
+% \end{macrocode}
+% \begin{macrocode}
+ \caption@ifdefined\chapter{%
+ \let\caption@chapter@ORI\chapter
+ \def\chapter{%
+ \caption@addsubcontentslines{chapter}\caption@chapter@ORI}}{}%
+% \end{macrocode}
+% Same for \cs{appendix}.
+% \begin{macrocode}
+ \caption@ifdefined\appendix{%
+ \let\caption@appendix@ORI\appendix
+ \def\appendix{%
+ \caption@addsubcontentslines{appendix}\caption@appendix@ORI}}{}%
+% \end{macrocode}
+% Flush the list of pending sub-caption list entries at the end of the document.
+% \begin{macrocode}
+ \caption@addsubcontentslines{AtEndDocument}%
+% \end{macrocode}
+% \begin{macrocode}
+}
+% \end{macrocode}
+% \end{macro}
+%
+% \section{Babel package support}
+%
+% \subsection{The arabic \& farsi babel option}
+% \changes{v3.5}{2020/08/02}{\package{arabic} babel support addded}
+%
+% \begin{macrocode}
+\caption@IfBabelArabi{%
+% \end{macrocode}
+%
+% The \package{arabicore} package re-defines |\@make|\-|caption|, |\fnum@figure|, and |\fnum@table|
+% incompatible to the \package{caption} package, therefore we have to restore our resp.~the original definitions here.
+%
+% \begin{macrocode}
+ \let\@makecaption\caption@makecaption
+ \def\fnum@figure{\figurename\nobreakspace\thefigure}%
+ \def\fnum@table{\tablename\nobreakspace\thetable}%
+% \end{macrocode}
+%
+% \begin{macrocode}
+}{}
+% \end{macrocode}
+%
+% \subsection{The frenchle \& frenchpro package}
+% \changes{v3.0h}{2005/10/03}{\package{frenchle/pro} package support added}
+% \changes{v3.5}{2020/08/01}{\package{frenchle/pro} package support updated}
+%
+% \begin{macrocode}
+\caption@IfFrenchLe{%
+% \end{macrocode}
+%
+% \begin{macro}{\f@ffrench}
+% \begin{macro}{\f@tfrench}
+% |\f@ffrench| and |\f@tfrench| reflect |\fnum@figure| and |\fnum@table|
+% when used in French mode. These contain additional code which typesets
+% the caption separator |\caption|\-|separator| instead of the usual colon.
+% Because this breaks with our |\@make|\-|caption| code we have to remove
+% this additional code here.
+% \begin{macrocode}
+ \def\f@ffrench{\ifx\listoffigures\relax\else\figurename~\thefigure\fi}%
+ \def\f@tfrench{\ifx\listoftables\relax\else\tablename~\thetable\fi}%
+ \let\@eatDP\@undefined
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+%
+% Since the \package{frenchle} package overwrites |\@make|\-|caption| (within |\GO|\-|french|),
+% we need to save it beforehand and restore it afterwards.
+% \begin{macrocode}
+ \caption@AtBeginDocument{%
+ \let\caption@original@makecaption\@makecaption}%
+ \g@addto@macro\GOfrench{%
+ \let\@makecaption\caption@original@makecaption}%
+% \end{macrocode}
+%
+% \begin{macrocode}
+}{}
+% \end{macrocode}
+%
+% \subsection{The hungarian \& magyar babel option}
+% \changes{v3.2}{2009/03/29}{\package{magyar} babel support added}
+% \changes{v3.3}{2018/08/26}{\package{magyar} babel support revised}
+% \changes{v3.5}{2020/08/02}{\package{magyar} babel support updated}
+%
+% \begin{macrocode}
+\caption@IfBabelHungarian{%
+% \end{macrocode}
+%
+% Since the \package{magyar} package tends to overwrite |\@make|\-|caption|
+% we save it beforehand and restore it afterwards.
+% \Note{Currently it will not be overwritten, caused by a side-effect of a
+% work-around for the \package{floatrow} package within \package{caption3}.}
+%
+% \begin{macrocode}
+ \caption@AtBeginDocument{%
+ \let\caption@original@makecaption\@makecaption}%
+ \caption@ifdefined\extrashungarian{%
+ \addto\extrashungarian{%
+ \let\@makecaption\caption@original@makecaption}}{}%
+ \caption@ifdefined\extrasmagyar{%
+ \addto\extrasmagyar{%
+ \let\@makecaption\caption@original@makecaption}}{}%
+% \end{macrocode}
+%
+% \begin{macrocode}
+}{}
+% \end{macrocode}
+%
+% \subsection{The latvian babel option}
+% \changes{v3.5}{2020/08/02}{\package{latvian} babel support updated}
+%
+% \begin{macrocode}
+\caption@IfBabelLatvian{%
+% \end{macrocode}
+%
+% The \package{latvian} package re-defines |\@make|\-|caption| incompatible to the \package{caption} package,
+% therefore we have to restore our definitions here.
+%
+% \begin{macrocode}
+ \let\@makecaption\caption@makecaption
+% \end{macrocode}
+%
+% \begin{macrocode}
+}{}
+% \end{macrocode}
+%
+% \section{Package support}
+% \changes{v3.1}{2007/04/11}{Package options `float', `longtable' etc.~are not supported anymore, removed}
+%
+% \begin{macro}{\caption@IfPackageLoaded}
+% \changes{v3.0f}{2005/05/29}{3rd argument \meta{code} added, so no extra check is needed}
+% \changes{v3.1}{2007/07/04}{Re-written \& renamed from \cs{caption@ifpackage} to \cs{caption@IfPackageLoaded}}
+% \changes{v3.3}{2018/12/26}{Bugfix: Missing curly braces added}
+% |\caption@IfPackageLoaded|\marg{package}\oarg{version}\marg{true}\marg{false}\par
+% Some kind of combination of |\@ifpackageloaded| and |\@ifpackagelater|.
+% If the \meta{package} is not loaded yet, the check will be (re-)done
+% |\AtBeginDocument|, so the \meta{package} could be loaded later on, too.
+% \begin{macrocode}
+\newcommand\caption@IfPackageLoaded[1]{%
+ \@testopt{\caption@@IfPackageLoaded{#1}}{}}
+\@onlypreamble\caption@IfPackageLoaded
+% \end{macrocode}
+% \begin{macrocode}
+\long\def\caption@@IfPackageLoaded#1[#2]#3#4{%
+ \@ifpackageloaded{#1}\@firstofone{%
+ \caption@Debug{#1 package is not loaded (yet)\@gobble}%
+ \caption@AtBeginDocument}{%
+ \caption@If@Package@Loaded{#1}[{#2}]{#3}{#4}}}
+\@onlypreamble\caption@@IfPackageLoaded
+% \end{macrocode}
+% \begin{macrocode}
+\long\def\caption@If@Package@Loaded#1[#2]{%
+ \@ifpackageloaded{#1}{%
+ \caption@InfoNoLine{#1 package is loaded}%
+ \@ifpackagelater{#1}{#2}\@firstoftwo{%
+ \caption@Error{%
+ For a successful cooperation we need at least version\MessageBreak
+ `#2' of package #1,\MessageBreak
+ but only version\MessageBreak
+ `\csname ver@#1.\@pkgextension\endcsname'\MessageBreak
+ is available}%
+ \@secondoftwo}%
+ }{\@secondoftwo}}
+\@onlypreamble\caption@If@Package@Loaded
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@clearmargin}
+% \changes{v3.1}{2007/05/05}{This macro and its usage added}
+% This macro will be used by some package support stuff where the usual
+% margin setting is not welcome, e.g. in the \package{sidecap} package.
+% \begin{macrocode}
+\newcommand*\caption@clearmargin{%
+ \setcaptionmargin\z@
+ \let\caption@minmargin\@undefined}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+\caption@setbool{needfreeze}{0}
+\caption@AtBeginDocument*{%
+ \caption@ifneedfreeze{%
+% \end{macrocode}
+%
+% \begin{macro}{\caption@freezetype}
+% \changes{v3.3}{2013/05/01}{This macro added}
+% |\caption@freezetype|\marg{type}\par
+% Used by the \package{fltpage} \& \package{sidecap} package support.
+% \begin{macrocode}
+ \newcommand*\caption@freezetype[1]{%
+ \caption@settype*{#1}%
+ \captionsetup*[sub]{hypcap=true}% Note: This is just a (q&d) workaround!
+ \caption@freeze}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@freeze}
+% \changes{v3.1}{2007/07/22}{This macro added}
+% \changes{v3.1c}{2007/10/06}{\cs{caption} \& \cs{@caption} revised for enhanced compatibility}
+% \changes{v3.1c}{2007/10/06}{Bugfix: Made \cs{@caption} long}
+% \changes{v3.1f}{2007/11/16}{Uses `space hack' instead of \cs{ignorespaces} now}
+% \changes{v3.1g}{2008/01/29}{Starred variants of \cs{ContinuedFloat} and \cs{captionsetup} added}
+% \changes{v3.2}{2010/10/26}{Bugfix 10-09-01a: Uses \cs{ignorespaces} instead of `space hack' again}
+% \changes{v3.2a}{2011/08/17}{Starred variant of \cs{caption@freeze} removed}
+% \changes{v3.2b}{2011/08/18}{Redefines \cs{caption@setup} instead of \cs{captionsetup} now}
+% \changes{v3.2b}{2011/08/18}{Redefinition of \cs{label} revised}
+% \changes{v3.2c}{2011/08/21}{Revised}
+% \changes{v3.3}{2013/01/06}{Adapted to new switch \cs{caption@caption} etc.}
+% |\caption@freeze|\par
+% Used by the \package{bicaption} package.
+% \begin{macrocode}
+ \newcommand*\caption@freeze{%
+ \let\caption@frozen@continuedfloat\continuedfloat
+ \def\continuedfloat{%
+ \caption@@freeze{\caption@@@@continuedfloat\@captype}%
+ \caption@frozen@continuedfloat}%
+% \end{macrocode}
+% \begin{macrocode}
+ \let\caption@frozen@setup\caption@setup
+ \def\caption@setup##1{%
+ \caption@@freeze{\caption@setup{##1}}%
+ \caption@frozen@setup{##1}}%
+% \end{macrocode}
+% \begin{macrocode}
+ \let\caption@frozen@caption\caption
+ \def\caption{%
+ \def\caption{%
+ \caption@Error{%
+ Only one \noexpand\caption can be placed in this environment}%
+ \caption@gobble}%
+ \@ifstar
+ {\caption@SC@caption*}%
+ {\let\@currentlabel\caption@SClabel
+ \caption@withoptargs\caption@SC@caption}}%
+ \long\def\caption@SC@caption##1##2{%
+ \caption@@freeze{\caption##1{##2}}%
+ \ignorespaces}%
+% \end{macrocode}
+% \begin{macrocode}
+ \let\caption@frozen@label\label
+ \def\label{%
+ \caption@withoptargs\caption@SC@label}%
+ \def\caption@SC@label##1##2{%
+ \ifx\@currentlabel\caption@SClabel
+ \@bsphack
+ \caption@freeze@label{##1}{##2}%
+ \@esphack
+ \else
+ \caption@frozen@label##1{##2}%
+ \fi}%
+ \def\caption@SClabel{\caption@undefinedlabel}%
+ \def\caption@freeze@label##1##2{%
+ \caption@@freeze{\label##1{##2}}}%
+% \end{macrocode}
+% \begin{macrocode}
+ \global\let\caption@frozen@content\@empty
+ \long\def\caption@@freeze{%
+ \g@addto@macro\caption@frozen@content}%
+% \end{macrocode}
+% \begin{macrocode}
+ \def\caption@warmup{%
+ \let\continuedfloat\caption@frozen@continuedfloat
+ \let\caption@setup\caption@frozen@setup
+ \let\caption\caption@frozen@caption
+ \let\label\caption@frozen@label}}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@prepare@defrost}
+% \changes{v3.3}{2013/01/06}{This macro added}
+% Prevent resetting the caption flags
+% \begin{macrocode}
+ \newcommand*\caption@prepare@defrost{%
+ \let\caption@settype\caption@set@type}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@defrost}
+% \changes{v3.1}{2007/07/22}{This macro added}
+% \changes{v3.1g}{2008/01/30}{\cs{caption@defrost@setup} added}
+% \changes{v3.2c}{2011/08/21}{Adapted to changes of \cs{caption@freeze}}
+% \changes{v3.2c}{2011/08/21}{\cs{caption@defrost@setup} removed}
+% |\caption@defrost|
+% \begin{macrocode}
+ \newcommand*\caption@defrost{%
+ \ifx\caption@frozen@caption\@undefined
+ \caption@frozen@content
+ \else
+ \caption@Error{Internal Error:\MessageBreak
+ \noexpand\caption@defrost in same group as \string\caption@freeze}%
+ \fi}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+ }{}%
+ \caption@undefbool{needfreeze}}
+% \end{macrocode}
+%
+% \begin{macro}{\caption@warmup}
+% \changes{v3.2a}{2011/08/17}{This macro added}
+% |\caption@warmup|
+% \begin{macrocode}
+\let\caption@warmup\relax
+% \end{macrocode}
+% \end{macro}
+%
+% \subsection{The changepage package}
+% \changes{v3.4k}{2020/05/30}{Patch of the \package{changepage} package added}
+%
+% \begin{macrocode}
+\caption@IfPackageLoaded{changepage}[2008/07/23 memoir-v3.7k]{%
+% \end{macrocode}
+%
+% Both environments, \env{adjustwidth} and \env{adjustwidth*}, are starting a \env{list} \cs{item}.
+% But \cs{hsize} isn't set properly inside a \env{list} item, and therefore \cs{@makecaption}
+% (offered by document classes) doesn't work properly when used inside \env{adjustwidth}.
+% Therefore we try to detect the situation ``Are we inside a adjustwidth environment?''
+% inside \cs{@makecaption} and fix this. (Sigh!)
+%
+% We cannot simply set and test a flag here since our adjustment to \cs{hsize} should
+% not be done within a \cs{parbox} within a adjustwidth environment for example,
+% and therefore we store \cs{hsize} and \cs{linewidth}, and test \cs{hsize} and \cs{linewidth}
+% against the stored values instead. If they are equal we are (hopefully) quite save
+% to assume that we are now inside a plain \env{adjustwidth} environment and therefore need
+% to fix \cs{hsize} before typesetting the caption. (Deep sigh!)
+%
+% \begin{macro}{\caption@adjustwidth@hsize}
+% \begin{macro}{\caption@adjustwidth@linewidth}
+% \begin{macrocode}
+ \newdimen\caption@adjustwidth@hsize
+ \newdimen\caption@adjustwidth@linewidth
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+%
+% \begin{macro}{\caption@set@adjustwidth}
+% \changes{v3.4k}{2020/05/30}{This macro and its usage added}
+% Store the values of \cs{hsize} and \cs{linewidth}.
+% \begin{macrocode}
+ \providecommand*\caption@set@adjustwidth{%
+ \caption@adjustwidth@hsize\hsize
+ \caption@adjustwidth@linewidth\linewidth}%
+% \end{macrocode}
+% \begin{macrocode}
+ \providecommand*\caption@patch@changepage[1]{%
+ \expandafter\let\csname caption@#1\expandafter\endcsname\csname #1\endcsname
+ \expandafter\renewcommand\csname #1\endcsname[2]{%
+ \@nameuse{caption@#1}{##1}{##2}%
+ \caption@set@adjustwidth}}%
+ \caption@patch@changepage{adjustwidth}%
+ \caption@patch@changepage{adjustwidth*}%
+ \let\caption@patch@changepage\relax
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@test@adjustwidth}
+% \changes{v3.4k}{2020/05/30}{This macro and its usage added}
+% Test if the values of \cs{hsize} and \cs{linewidth} are identical to
+% the ones stored in the \env{adjustwidth} environment.
+% If yes, set \cs{hsize} to the correct value.
+% \begin{macrocode}
+ \providecommand\caption@test@adjustwidth{%
+ \ifdim\hsize=\caption@adjustwidth@hsize
+ \ifdim\linewidth=\caption@adjustwidth@linewidth
+ \hsize=\linewidth
+ \fi
+ \fi}%
+% \end{macrocode}
+% \begin{macrocode}
+ \AtBeginCaption{\caption@test@adjustwidth}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+ }{}%
+% \end{macrocode}
+%
+% \subsection{The chkfloat package}
+% \changes{v3.3}{2018/09/06}{Support of the \package{chkfloat} package added}
+%
+% \begin{macrocode}
+\caption@IfPackageLoaded{chkfloat}[2012/08/19 v0.1]{%
+% \end{macrocode}
+%
+% \begin{macro}{\caption@chkfloat}
+% \changes{v3.3}{2018/09/06}{This macro added}
+% \begin{macrocode}
+ \caption@ifdefined\chkfloat@addcontentsline{%
+ \renewcommand\caption@chkfloat{\chkfloat@addcontentsline}%
+ }{%
+ \renewcommand\caption@chkfloat[2]{%
+ \caption@ifdefined\chkfloat@page{%
+ \addtocontents{fof}{\protect\chkfloat@{\thepage}{\chkfloat@page}{\csname fnum@#1\endcsname: #2}}%
+ }{}}%
+ }%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+ }{}%
+% \end{macrocode}
+%
+% \subsection{The float package}
+% \changes{v3.0f}{2005/05/31}{\package{float} package support rewritten and improved}
+% \iffalse
+% (This is a more straight-ahead implementation, but it only works with v1.3
+% now, so v1.2 is no longer supported. The old code including documentation
+% can be found in caption-30f-050530.zip)
+% \fi
+%
+% The \package{float} package usually do not use the \LaTeX\ kernel command
+% |\@caption| to typeset the caption but |\float@caption| instead.
+% (|\@caption| will only be used if the float is re-styled with
+% |\restylefloat*|.)
+%
+% The main two things |\float@caption| is doing different are:
+% \begin{itemize}
+% \item The caption will be typeset inside a |\savebox| called |\@floatcapt|
+% so it can be placed above or below the float contents afterwards.
+% \item |\@makecaption| will not be used to finally typeset the caption.
+% Instead |\@fs@capt| will be used which definition is part of the float
+% style.
+% (Note that |\@fs@capt| will not typeset any vertical space above or below
+% the caption; instead this space will be typeset by the float style code
+% itself.)
+% \end{itemize}
+%
+% \begin{macrocode}
+\caption@IfPackageLoaded{float}[2001/11/08 v1.3d]{%
+ \@ifpackageloaded{floatrow}{%
+ \caption@If@Package@Loaded{floatrow}[2007/08/24 v0.2a]{}{}%
+ }{%
+% \end{macrocode}
+%
+% \begin{macro}{\@float@setevery}
+% \changes{v3.1k}{2009/10/09}{Bugfix 08-12-05: \cs{color@begin/endgroup} added
+% to redefinition of \cs{caption@setfloatcapt}}
+% \changes{v3.4b}{2019/12/16}{Usage of \cs{caption@float@setname} added}
+% |\@float@setevery|\marg{float type} is provided by the \package{float}
+% package; it's called every time a floating environment defined with
+% |\newfloat| or |\restylefloat| begins.
+% We use this hook to do some adaptations and to setup the proper caption
+% style (if defined) and additional settings declared with
+% |\captionsetup|\oarg{float style}.
+% \begin{macrocode}
+ \let\caption@ORI@float@setevery\@float@setevery
+ \def\@float@setevery#1{%
+ \float@ifcaption{#1}{%
+% \end{macrocode}
+%
+% First of all we set the caption position to it's proper value by
+% converting |\@fs@iftopcapt| (which is part of a float style and
+% controls where the caption will be typeset, above or below the float
+% contents) to our |position=| setting.
+% Since the spacing above and below the caption will be done by the float
+% style and \emph{not} by us this sounds quite useless. But in fact it isn't,
+% since some packages based on \thispackage\ (like the \package{subfig}
+% package) could have an interest for this information and therefore use the
+% |\caption@iftop| macro we provide in our kernel. Furthermore we need this
+% information for ourself in |\captionof| which uses |\@makecaption| to
+% finally typeset the caption with skips.
+% \begin{macrocode}
+ \caption@setposition{\@fs@iftopcapt t\else b\fi}%
+% \end{macrocode}
+%
+% Afterward we redefine |\caption@setfloatcapt| (which will be used inside
+% |\@caption|) so the caption will be set inside the box |\@floatcapt|,
+% without extra vertical space.
+% \begin{macrocode}
+ \renewcommand\caption@setfloatcapt[1]{%
+ \let\@makecaption\caption@@make
+ \global\setbox\@floatcapt\vbox{%
+ \color@begingroup ##1\color@endgroup}}%
+% \end{macrocode}
+%
+% To allow different caption styles for different float styles we also
+% determine the current float style (e.g. `ruled') and select
+% a caption style (and additional settings) with the same name, if defined.
+% \begin{macrocode}
+ \float@getstyle\float@style{#1}%
+ \caption@setstyle*\float@style
+ \caption@setoptions\float@style
+% \end{macrocode}
+%
+% \begin{macrocode}
+ }{}%
+ \caption@float@setname{#1}%
+ \caption@freezeHref % will be defrosted in \float@makebox
+ \caption@ORI@float@setevery{#1}}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\float@makebox}
+% \changes{v3.3}{2013/01/06}{Corrects wrong load order hyperref-float now}
+% \changes{v3.3}{2013/02/03}{Correction of wrong load order hyperref-float revised}
+% Redefine |\float@makebox| (only if we are not operating in compatibility mode `v1').
+% \begin{macrocode}
+ \caption@AtBeginDocument{\caption@ifcompatibility{}{%
+% \end{macrocode}
+% If it was redefined by the \package{hyperref} package,
+% we need to build on the original definition (and not on the redefined one).
+% \begin{macrocode}
+ \caption@ifdefined\HyOrg@float@makebox
+ {\let\caption@ORI@float@makebox\HyOrg@float@makebox}%
+ {\let\caption@ORI@float@makebox\float@makebox}%
+ \renewcommand\float@makebox[1]{%
+ \caption@ORI@float@makebox{#1\relax \caption@defrostHref}}%
+% \end{macrocode}
+% \begin{macrocode}
+ }}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@float@setname}
+% \changes{v3.1}{2007/07/08}{float package hook added}
+% \changes{v3.4b}{2019/12/16}{Renamed from \cs{caption@typehook} to \cs{caption@float@setname}}
+% \LaTeX\ and almost every other packages use
+% |\|\meta{type}|name|
+% to provide a macro for the type resp.~environment name -- for example
+% the command |\figurename| will usually contain the name of the floating
+% environment |figure|:
+% \begin{quote}
+% |\newcommand\figurename{Figure}|
+% \end{quote}
+% But the \package{float} package doesn't follow this common naming
+% convention:
+% For floats defined with |\newfloat| it uses |\fname@|\meta{type} instead,
+% which breaks with our code (and with |\autoref| and some other things as
+% well).
+% So we have to map the \package{float} package name to the common one here.\par
+% \Note{If the float was not defined with \cs{newfloat} but with
+% \cs{restylefloat} instead, \cs{fname@}\meta{type} is not defined.}
+% \begin{macrocode}
+ \newcommand*\caption@float@setname[1]{%
+ \expandafter\ifx\csname #1name\endcsname\relax
+ \expandafter\let\csname #1name\expandafter\endcsname\csname fname@#1\endcsname
+ \fi}%
+% \end{macrocode}
+% \end{macro}
+%
+% \changes{v3.0f}{2005/06/26}{Skips of \env{plaintop} and \env{boxed} floats corrected}
+% \begin{macro}{\fs@plaintop}
+% \begin{macro}{\fs@boxed}
+% Since the float styles |plaintop| and |boxed| don't use |\abovecaptionskip|
+% which could be set with |skip=| (|plaintop| uses |\belowcaptionskip| instead of
+% |\abovecaptionskip|, and |boxed| uses a fixed space of |2pt|)
+% we patch the according float style macros here to change this.
+% \begin{macrocode}
+ \g@addto@macro\fs@plaintop{\def\@fs@mid{\vspace\abovecaptionskip\relax}}%
+ \g@addto@macro\fs@boxed{\def\@fs@mid{\kern\abovecaptionskip\relax}}%
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+%
+% \begin{macro}{\float@getstyle}
+% \changes{v3.1}{2007/06/10}{This macro added}
+% |\float@getstyle|\marg{cmd}\marg{type}\par
+% Determining the float style is not so easy because the only hint
+% provided by the \package{float} package is the macro
+% |\fst@|\meta{float type} which points to the macro which represents the
+% float style. So for example after
+% \begin{quote}
+% |\floatstyle{ruled}|\\
+% |\newfloat{Program}{tbp}{lop}|
+% \end{quote}
+% |\fst@Program| will be defined as
+% \begin{quote}
+% |\def\fst@Program{\fs@ruled}|\quad.
+% \end{quote}\par
+% So here is what we do: We make the first level expansion of
+% |\fst@|\meta{float type} a string so we can gobble the first four tokens
+% (= |\fs@|), so only the the name of the float style is left.\par
+% \emph{TODO:} We need to convert the catcodes here.
+% \begin{macrocode}
+ \providecommand*\float@getstyle[2]{%
+ \edef#1{%
+ \noexpand\expandafter\noexpand\@gobblefour\noexpand\string
+ \expandafter\expandafter\expandafter\noexpand
+ \csname fst@#2\endcsname}%
+ \edef#1{#1}%
+ \caption@Debug{floatstyle{#2} = `#1'}}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\float@ifcaption}
+% \changes{v3.1}{2007/06/23}{This macro added}
+% |\float@ifcaption|\marg{type}\marg{if-clause}\marg{else-clause}\par
+% Here we determine if the user has used |\newfloat| resp.~|\restylefloat|,
+% or |\restylefloat*|.
+% This is quite easy: If |\@float@c@|\meta{captype} is the same as
+% |\float@caption|, the user has used |\newfloat| or |\restylefloat|,
+% otherwise we assume he has used |\restylefloat*|.
+% (This test will fail if some package re-defines |\float@caption|,
+% so we have to assume that there is no one.)
+% \begin{macrocode}
+ \providecommand*\float@ifcaption[1]{%
+ \expandafter\ifx\csname @float@c@#1\endcsname\float@caption
+ \expandafter\@firstoftwo
+ \else
+ \expandafter\@secondoftwo
+ \fi}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+}}{%
+ \providecommand*\float@ifcaption[1]{\@secondoftwo}%
+% \clearcaptionsetup{boxed}% used by the floatrow package?
+}
+% \end{macrocode}
+%
+% The skip between `boxed' floats and their caption defaults to |2pt|.
+%
+% \begin{macrocode}
+\captionsetup[boxed]{skip=2pt} % do not issue a warning when not used
+% \end{macrocode}
+%
+% \changes{v3.0f}{2005/05/26}{\opt{strut=0} added to caption style \opt{ruled}}
+% \changes{v3.0f}{2005/05/27}{Option \opt{ruled} fixed}
+% To emulate the `ruled' definition of |\@fs@capt| we provide a caption style
+% `ruled' with appropriate options. But if the package option |ruled| was
+% specified, we setup some caption parameters to emulate the behavior
+% of \thispackage\ \version{1.x} option |ruled| instead, i.e.,
+% the current caption settings will be used, but without margin and without
+% `single-line-check'.
+% \begin{macrocode}
+\caption@ifbool{ruled}{%
+ \captionsetup[ruled]{margin=0pt,minmargin=0,slc=0}%
+}{%
+ \DeclareCaptionStyle{ruled}{labelfont=bf,labelsep=space,strut=0}%
+}
+\caption@undefbool{ruled}
+% \end{macrocode}
+%
+% \subsection{The floatflt package}
+% \changes{v3.1}{2007/06/10}{Support of the \package{floatflt} package added}
+%
+% \begin{macrocode}
+\caption@IfPackageLoaded{floatflt}[1996/02/27 v1.3]{%
+% \end{macrocode}
+%
+% \begin{macro}{\floatingfigure}
+% We patch |\floatingfigure| so |\caption@floatflt| will be used.
+% \begin{macrocode}
+ \let\caption@ORI@floatingfigure\floatingfigure
+ \def\floatingfigure{%
+ \caption@floatflt{figure}%
+ \caption@ORI@floatingfigure}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\floatingtable}
+% Same with |\floatingtable|\ldots
+% \begin{macrocode}
+ \let\caption@ORI@floatingtable\floatingtable
+ \def\floatingtable{%
+ \caption@floatflt{table}%
+% \caption@setautoposition b%
+ \caption@ORI@floatingtable}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@floatflt}
+% \changes{v3.1c}{2007/10/06}{Bugfix: \cs{caption@clearmargin} added}
+% Here we do two things:
+% \begin{enumerate}
+% \item We use |\caption@set|\-|options{|\-|floating|\meta{type}|}| so
+% |\caption|\-|setup[|\-|floating|\meta{type}|]{|\ldots|}| is supported.
+% \item |\line|\-|width| must be set correctly.
+% Usually this is done by |\@par|\-|box|\-|restore| inside |\@caption|,
+% but since we use |\@caption@parbox|\-|restore| we have to map this to
+% |\@par|\-|box|\-|restore| instead.
+% \end{enumerate}
+% \begin{macrocode}
+ \newcommand*\caption@floatflt[1]{%
+ \caption@settype{#1}%
+ \caption@clearmargin
+ \caption@setparboxrestore{full}%
+ \caption@setoptions{floating#1}}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+}{}
+% \end{macrocode}
+%
+% \subsection{The fltpage package}
+% \changes{v3.1}{2007/07/22}{Support of the \package{fltpage} package added}
+%
+% \begin{macrocode}
+\caption@IfPackageLoaded{fltpage}[1998/10/29 v.0.3]{%
+ \caption@setbool{needfreeze}{1}%
+% \end{macrocode}
+%
+% \begin{macro}{\FP@positionLabel}
+% \changes{v3.2c}{2011/08/28}{This redefinition added}
+% Original code:
+% \begin{verbatim}
+% \newcommand{\FP@positionLabel}{%
+% FP\@captype-\number\value{FP@\@captype C}-pos}
+% \end{verbatim}%^^A
+% \begin{macrocode}
+ \renewcommand\FP@positionLabel{%
+ FP\FP@captype-\number\value{FP@\FP@captype C}-pos}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\FP@helpNote}
+% Original code:
+% \begin{verbatim}
+% \newcommand{\FP@helpNote}[2]{%
+% \typeout{FP#1 is inserted on page \pageref{#2}!}}%
+% \end{verbatim}%^^A
+% \begin{macrocode}
+ \renewcommand\FP@helpNote[2]{%
+ \begingroup % save \caption@thepage
+ \caption@pageref{#2}%
+ \typeout{FP#1 is inserted on page \caption@thepage!}%
+ \endgroup}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\FP@floatBegin}
+% \changes{v3.1f}{2007/11/16}{Uses `space hack' instead of \cs{ignorespaces} now}
+% \changes{v3.1k}{2009/10/09}{Bugfix 09-09-11: Missing \cs{ignorespaces} added}
+% \changes{v3.2c}{2011/08/28}{Adapted to current version of \cs{caption@freeze}}
+% \changes{v3.2f}{2012/02/19}{Bugfix 12-02-16: \texttt{minipage} environment added}
+% \changes{v3.3}{2013/05/01}{Usage of \cs{caption@freeze} replaced by \cs{caption@freezetype}}
+% Original code:
+% \begin{verbatim}
+% \newcommand{\FP@floatBegin}[1]{%
+% \gdef\@captype{#1}%
+% \global\let\FP@savedCaptionCommand\caption%
+% \global\let\FP@savedLabelCommand\label%
+% \ifthenelse{\equal{\@captype}{figure}}
+% {\global\let\old@Fnum\fnum@figure}%
+% {\global\let\old@Fnum\fnum@table}%
+% \let\FP@LabelText\@empty%
+% \let\FP@CaptionText\@empty%
+% \let\FP@optionalCaptionText\@empty%
+% \renewcommand\label[1]{\gdef\FP@LabelText{##1}}%
+% \renewcommand\caption[2][]{%
+% \gdef\FP@optionalCaptionText{##1}\gdef\FP@CaptionText{##2}}%
+% \begin{lrbox}{\FP@floatCorpusBOX}%
+% }%
+% \end{verbatim}%^^A
+% \begin{macrocode}
+ \renewcommand*\FP@floatBegin[1]{%
+ \def\FP@captype{#1}%
+ \begin{lrbox}{\FP@floatCorpusBOX}%
+ \minipage\hsize % changes from LR mode to vertical mode
+ \caption@freezetype{#1}%
+ \ignorespaces}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\FP@floatEnd}
+% \changes{v3.1g}{2008/01/30}{Some minor bugfixes}
+% \changes{v3.2c}{2011/08/28}{Adapted to current version of \cs{caption@freeze}}
+% \changes{v3.2f}{2012/02/19}{Bugfix 12-02-16: \texttt{minipage} environment added}
+% Original code:
+% \begin{verbatim}
+% \newcommand{\FP@floatEnd}{%
+% \end{lrbox}%
+% \global\setbox\FP@floatCorpusBOX=\box\FP@floatCorpusBOX
+% \stepcounter{FP@\@captype C}%
+% \FP@savedLabelCommand{\FP@positionLabel}%
+% \FP@helpNote{\@captype}{\FP@positionLabel}%
+% \FP@float
+% {\FP@positionLabel}% location label test
+% {\begin{\@captype}[p!]
+% \usebox{\FP@floatCorpusBOX}%
+% \refstepcounter{\@captype}%
+% \ifthenelse{\equal{\FP@LabelText}{\@empty}}
+% {}{\FP@savedLabelCommand{\expandafter\protect\FP@LabelText}}%
+% \end{\@captype}}
+% {\addtocounter{\@captype}{-1}}
+% {\begin{\@captype}[b!]%
+% \ifthenelse{\equal{\FP@guide}{\@empty}}%
+% {}{\ifthenelse{\equal{\@captype}{figure}}%
+% {\renewcommand{\fnum@figure}{\old@Fnum\ {\FP@guide}}}%
+% {\renewcommand{\fnum@table}{\old@Fnum\ {\FP@guide}}}}%
+% \setlength{\abovecaptionskip}{2pt plus2pt minus 1pt} % length above caption
+% \setlength{\belowcaptionskip}{2pt plus2pt minus 1pt} % length above caption
+% \FP@separatorCaption%
+% \ifthenelse{\equal{\FP@optionalCaptionText}{\@empty}}%
+% {\FP@savedCaptionCommand{\expandafter\protect\FP@CaptionText}}%
+% {\FP@savedCaptionCommand[\expandafter\protect\FP@optionalCaptionText]%
+% {\expandafter\protect\FP@CaptionText}}%
+% \end{\@captype}}%
+% }%
+% \end{verbatim}%^^A
+% \begin{macrocode}
+ \renewcommand*\FP@floatEnd{%
+ \endminipage
+ \end{lrbox}%
+% \end{macrocode}
+% \begin{macrocode}
+ \stepcounter{FP@\FP@captype C}%
+ \caption@label\FP@positionLabel
+ \FP@helpNote\FP@captype\FP@positionLabel
+% \end{macrocode}
+% \begin{macrocode}
+ \FP@float
+ {\FP@positionLabel}% location label test
+ {\caption@prepare@defrost
+ \begin\FP@captype[p!]%
+ \usebox\FP@floatCorpusBOX
+ \end\FP@captype}%
+ {\@ifundefined{theH\FP@captype}{}{%
+ \expandafter\l@addto@macro\csname theH\FP@captype\endcsname{.FP}}}%
+ {\caption@prepare@defrost
+ \begin\FP@captype[b!]%
+ \let\FP@savedSetfnumCommand\caption@setfnum
+ \def\caption@setfnum##1{%
+ \FP@savedSetfnumCommand{##1}%
+ \ifx\FP@guide\@empty \else
+ \expandafter\l@addto@macro\csname fnum@##1\endcsname{\ {\FP@guide}}%
+ \fi}%
+ \setlength\abovecaptionskip{2pt plus 2pt minus 1pt}% length above caption
+ \setlength\belowcaptionskip{2pt plus 2pt minus 1pt}% length below caption
+ \caption@setoptions{FP\@captype}%
+ \FP@separatorCaption
+ \caption@defrost
+ \end\FP@captype}%
+ }%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+}{%
+ \let\caption@ifFPlistcap\@undefined
+ \let\caption@ifFPrefcap\@undefined
+}
+% \end{macrocode}
+%
+% \subsection{The hyperref package}
+% \changes{v3.0f}{2005/06/11}{Support of the \package{hyperref} package added}
+% \changes{v3.1}{2007/03/09}{Usage of \cs{hyper@makecurrent} instead of
+% \cs{theHfigure} as indicator for \package{hyperref} package}
+% \changes{v3.2}{2011/07/30}{Test if \package{hyperref} has stopped early revised}
+% \changes{v3.2c}{2011/08/24}{Test if \package{hyperref} has stopped early adapted to current version of \package{hyperref} package: Usage of \cs{IfHyperBoolean} added}
+%
+% \begin{macrocode}
+\caption@IfPackageLoaded{hyperref}[2003/11/30 v6.74m]{%
+ % Test if hyperref has stopped early
+ \caption@ifundefined\IfHyperBoolean{%
+ \caption@set@bool\caption@ifhyp@stoppedearly0%
+ \caption@ifundefined\H@refstepcounter
+ {\caption@set@bool\caption@ifhyp@stoppedearly1}{%
+ \caption@ifundefined\hyper@makecurrent
+ {\caption@set@bool\caption@ifhyp@stoppedearly1}{%
+ \caption@ifundefined\measuring@true
+ {\caption@set@bool\caption@ifhyp@stoppedearly1}{}}}%
+ }{%
+ \def\caption@ifhyp@stoppedearly{\IfHyperBoolean{stoppedearly}}%
+ }%
+ \caption@ifhyp@stoppedearly{% hyperref has stopped early
+ \caption@InfoNoLine{%
+ Hyperref support is turned off\MessageBreak
+ because hyperref has stopped early}%
+ }{%
+ \g@addto@macro\caption@prepareslc{\measuring@true}%
+% \end{macrocode}
+%
+% \begin{macro}{\caption@@@refstepcounter}
+% We redefine |\caption@@refstepcounter| so |\H@refstepcounter| will be used
+% instead of |\refstepcounter| inside |\caption| \& |\captionlistentry|.
+% \begin{macrocode}
+ \renewcommand*\caption@@@refstepcounter{\H@refstepcounter}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@makecurrent}
+% \changes{v3.1l}{2010/01/09}{Adapted to current version of nameref package}
+% We redefine |\caption@makecurrent| so a \package{hyperref} label
+% will be defined inside |\@caption|.
+% \Note{Will be redefined by \cs{caption@start}.}
+% \begin{macrocode}
+ \renewcommand*\caption@makecurrent[2]{%
+ \caption@makecurrentHref{#1}%
+ \caption@Debug{hyperref current=\@currentHref}%
+ \caption@gettitle{#2}}%
+% \end{macrocode}
+% \begin{macrocode}
+ \newcommand*\caption@makecurrentHref{\hyper@makecurrent}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@makeanchor}
+% \changes{v3.1l}{2010/01/09}{Adapted to the current hyperref package}
+% We redefine |\caption@makeanchor| so a \package{hyperref} anchor
+% will be set inside |\@caption|.
+% \Note{Will be redefined by \cs{caption@start}.}
+% \begin{macrocode}
+ \renewcommand\caption@makeanchor[1]{%
+ \caption@Debug{hyperref anchor: \@currentHref}%
+ % If we cannot have nesting, the anchor is empty.
+ \ifHy@nesting
+ \expandafter\hyper@@anchor\expandafter{\@currentHref}{#1}%
+ \else
+ \Hy@raisedlink{%
+ \expandafter\hyper@@anchor\expandafter{\@currentHref}{\relax}%
+ }#1%
+ \fi}%
+% \end{macrocode}
+% \begin{macrocode}
+ \g@addto@macro\caption@prepareslc{\let\caption@makeanchor\@firstofone}%
+% \end{macrocode}
+% \end{macro}
+%
+% \paragraph{The hypcap option}
+%
+% \begin{macro}{\if@capstart}
+% Like the \package{hypcap} package we define the switch |\if@capstart|, too.
+% \begin{macrocode}
+ \newif\if@capstart
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@start}
+% \changes{v3.0l}{2007/02/20}{%
+% \cs{caption@currentHref} renamed to \cs{hc@currentHref}}
+% \changes{v3.1}{2007/06/21}{%
+% This macro renamed from \cs{capstart} to \cs{caption@start} and revised}
+% While the \package{hypcap} package defines a macro called |\capstart|
+% our variant is called |\caption@start| and is controlled by the option
+% |hypcap=||false|/|true|.
+% \begin{macrocode}
+ \def\caption@start{\caption@ifhypcap\caption@start@\relax}%
+ \def\caption@start@{%
+% \end{macrocode}
+% Generate the \package{hyperref} label and set the \package{hyperref} anchor,
+% usually (if |hypcap=false|) both is done inside |\@caption|.
+% \begin{macrocode}
+ \caption@makestart\@captype
+ \caption@startanchor\@currentHref
+% \end{macrocode}
+% Prevent |\@caption| from generating a new \package{hyperref} label,
+% use the label we save in |\hc@currentHref| instead.
+% (We also support the |@capstart| flag from the \package{hypcap} package.)
+% \begin{macrocode}
+ \global\@capstarttrue
+ \let\hc@currentHref\@currentHref
+ \def\caption@makecurrentHref##1{%
+ \global\@capstartfalse
+ \global\let\@currentHref\hc@currentHref}%
+% \end{macrocode}
+% Prevent |\@caption| from generating a \package{hyperref} anchor since this
+% has already been done.
+% \begin{macrocode}
+ \let\caption@makeanchor\@firstofone
+% \end{macrocode}
+% \begin{macrocode}
+ }%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@makestart}
+% \changes{v3.1c}{2007/09/30}{\cs{@currentHref} will be extended by \texttt{caption}
+% instead of \texttt{xxx} now}
+% |\caption@makestart|\marg{type}
+% defines a \package{hyperref} anchor inside |\caption@start|.\par
+% Since we offer |\continuedfloat| the float counter can change between
+% `now' and |\caption|, i.e., we simply don't know the figure or table counter
+% yet and therefore we are not able to generate the `right' \package{hyperref}
+% label.
+% Two different solutions of this problem came into my mind:
+% \begin{enumerate}
+% \item I could use the aux file for this purpose.\par
+% -or-
+% \item I set |hypertexnames=false| locally.
+% Furthermore I use |#1.caption.|\meta{counter} (instead of |#1.|\meta{counter})
+% as naming scheme for |\@currentHref| to avoid conflicts with other hyper
+% links which are generated with |hypertexnames=true|.
+% \end{enumerate}
+% The first idea has the advantage that the `right' anchor name will be
+% generated, but one needs an additional \LaTeX\ run if figures or tables
+% will be inserted or removed.\par
+% The second idea has the advantage that it's very easy to implement, but
+% has some side-effects, e.g. the anchor names don't follow the figure or
+% table label names anymore.\par
+% Since I'm lazy I implemented the second idea, maybe I will revise this
+% later on.
+% \begin{macrocode}
+ \newcommand*\caption@makestart[1]{%
+ \begingroup
+ \Hy@hypertexnamesfalse
+% \gdef\@currentHlabel{}%
+ \hyper@makecurrent{#1.caption}%
+ \endgroup
+ \caption@Debug{hypcap start=\@currentHref}}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@startanchor}
+% \changes{v3.1b}{2007/09/17}{Bugfix 06-09-17: We use \cs{caption@anchor} instead of \cs{hyper@@anchor}}
+% \changes{v3.1g}{2008/03/16}{Warning about TeX mode replaced with debug info}
+% |\caption@startanchor|\marg{Href}
+% sets a \package{hyperref} anchor inside |\caption@start|.\par
+% This code was taken from the \package{hypcap} package\cite{hypcap} and adapted.
+% \Note{Since \cs{hyper@@anchor}\marg{Href}\csmarg{\string\relax} can cause
+% a change from vertical mode to horizontal mode (design flaw in
+% \package{hyperref} package!?), and since the workaround
+% \cs{let}\cs{leavevmode}\cs{relax} which can be found in the
+% \package{hypcap} package is not always sufficient
+% (for example with ``Direct pdfmark support'' and \texttt{breaklinks=true}),
+% we use \cs{caption@anchor} instead of \cs{hyper@@anchor} here.}
+% \begin{macrocode}
+ \newcommand*\caption@startanchor[1]{%
+ \ifvmode\begingroup
+ \caption@Debug{hypcap anchor: #1 (vertical mode)}%
+ \@tempdima\prevdepth
+ \nointerlineskip
+ \vspace*{-\caption@hypcapspace}%
+ \caption@anchor{#1}%
+ \vspace*{\caption@hypcapspace}%
+ \prevdepth\@tempdima
+ \endgroup\else
+ \caption@Debug{hypcap anchor: #1 (horizontal mode)}%
+ \caption@anchor{#1}%
+ \fi}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@anchor}
+% \changes{v3.1c}{2007/10/17}{Workaround 07-10-17: We use \cs{caption@raisedlink} instead of \cs{Hy@raisedlink} now}
+% |\caption@anchor|\marg{Href} sets a \package{hyperref} anchor.
+% \begin{macrocode}
+ \newcommand*\caption@anchor[1]{%
+ \ifmeasuring@ \else
+ \caption@raisedlink{\hyper@anchorstart{#1}\hyper@anchorend}%
+ \fi}%
+% \end{macrocode}
+% \Note{Since \cs{Hy@raisedlink} change \cs{@tempdima} we surrounded it by \cs{ifvmode},
+% suppressing ``\texttt{LaTeX Warning: Float too large for page by 1.0pt}'' in \texttt{sideways} floats.
+% (This is not necessary since \package{hyperref} \version{6.77}.)}
+% \begin{macrocode}
+ \ifx\HyperRaiseLinkLength\@tempdima
+ \def\caption@raisedlink#1{\ifvmode#1\else\Hy@raisedlink{#1}\fi}%
+ \else
+ \let\caption@raisedlink\Hy@raisedlink
+ \fi
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@@start}
+% Will be used by |\caption@freezeHref|. Apart from that we issue a warning
+% if we expect a saved \package{hyperref} label coming from |\caption@start|,
+% but there isn't any.
+% \begin{macrocode}
+ \def\caption@@start{%
+ \caption@ifundefined\hc@currentHref{%
+ \caption@Warning{%
+ The option `hypcap=true' will be ignored for this\MessageBreak
+ particular \string\caption}}{}}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@freezeHref}
+% Suppress |\caption@start| from generating a \package{hyperref} label and
+% setting a \package{hyperref} anchor. Instead if |\@caption| generates a
+% \package{hyperref} label, it will be stored in |\caption@currentHref|.
+% Furthermore we need to redefine |\caption@setfloatcapt| so no
+% \package{hyperref} anchor will be placed in |\@caption|.
+% \iffalse
+% (Since |\caption@setfloatcapt| will be set to |\@firstofone| inside
+% |\subcaption| there is no need to add its restauration to
+% |\caption@subtypehook|.)
+% \fi
+% \begin{macrocode}
+ \def\caption@freezeHref{%
+ \let\caption@ORI@start\caption@start
+ \def\caption@start{\let\caption@start\caption@ORI@start}%
+% \end{macrocode}
+% \begin{macrocode}
+% \let\caption@ORI@@start\caption@@start
+% \l@addto@macro\caption@subtypehook{%
+% \let\caption@@start\caption@ORI@@start}%
+% \end{macrocode}
+% \begin{macrocode}
+ \global\let\caption@currentHref\@undefined
+ \def\caption@@start{\global\let\caption@currentHref\@currentHref}%
+% \end{macrocode}
+% \begin{macrocode}
+ \let\caption@ORI@setfloatcapt\caption@setfloatcapt
+ \renewcommand*\caption@setfloatcapt{%
+ \ifx\caption@currentHref\@undefined \else
+ \let\caption@makeanchor\@firstofone
+ \fi
+ \caption@ORI@setfloatcapt}}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@defrostHref}
+% If there is a freezed |\@currentHref|, we set the \package{hyperref}
+% anchor here.
+% \begin{macrocode}
+ \def\caption@defrostHref{%
+ \ifx\caption@currentHref\@undefined \else
+ \caption@startanchor\caption@currentHref
+ \global\let\caption@currentHref\@undefined
+ \fi}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+ }}{}
+% \end{macrocode}
+%
+% \subsection{The hypcap package}
+% \changes{v3.0f}{2005/06/22}{Support of the \package{hypcap} package added}
+% \changes{v3.0l}{2007/02/20}{Adapted to \package{hypcap} \version{1.6}}
+% \changes{v3.1e}{2007/11/04}{\package{hypcap} support adapted to \package{hyperref} \version{6.77}}
+%
+% \begin{macrocode}
+\caption@IfPackageLoaded{hypcap}{% v1.0
+ \ifx\caption@start\relax \else % hyperref hasn't stopped early
+% \end{macrocode}
+%
+% If the \package{hypcap} package was loaded, we give up our own
+% hyperlink placement algorithm and give the control over the placement
+% to the \package{hypcap} package instead.
+%
+% \begin{macro}{\capstart}
+% \changes{v3.1k}{2009/10/09}{Support of \cs{ifcapstart} (\package{hypcap} package \version{1.10}) added}
+% We do this simply by mapping |\capstart| to |\caption@start@|,
+% although our code does not behave exactly like the original one:
+% The original |\capstart| has an effect on the next |\caption|
+% only but our version affects \emph{all} |\caption|s in the same
+% environment, at least unless a new |\capstart| will be placed.
+% \begin{macrocode}
+ \let\caption@ORI@capstart\capstart % save for compatibility mode
+ \caption@ifundefined\capstarttrue % check for v1.10 of hypcap package
+ {\def\capstart{\caption@start@}}%
+ {\def\capstart{\ifcapstart\caption@start@\fi}}%
+ \let\caption@start\relax
+ \let\caption@@start\relax
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@hypcapspace}
+% Furthermore we map our |\caption@hypcapspace| to |\hypcapspace|
+% offered by the \package{hypcap} package.
+% \begin{macrocode}
+ \caption@set@bool\caption@ifhypcap 1%
+ \renewcommand*\caption@hypcapspace{\hypcapspace}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+ \fi}{}
+% \end{macrocode}
+%
+% \subsection{The listings package}
+% \changes{v3.0b}{2004/05/16}{Support of the \package{listings} package added}
+%
+% \begin{macrocode}
+\caption@IfPackageLoaded{listings}[2004/02/13 v1.2]{%
+% \end{macrocode}
+%
+% \begin{macro}{\lst@MakeCaption}
+% \changes{v3.1g}{2008/01/20}{Bugfix: Skips are handled correctly now}
+% \changes{v3.1k}{2008/03/29}{Bugfix 08-10-16-dctt: \texttt{rule=0} added}
+% \changes{v3.2}{2010/10/26}{Bugfix 10-07-20a: Set \cs{hsize} to \cs{linewidth}, if necessary}
+% \changes{v3.4c}{2020/01/01}{Ugly workaround for usage in lists added}
+% \changes{v3.4d}{2020/01/01}{Ugly workaround for usage in lists revised}
+% To support the \package{listings} package we need to redefine
+% |\lst@Make|\-|Caption| so the original stuff is nested with
+% |\caption@begin| and |\caption@end| etc.\par
+% We set a flag inside the "Init" hook of the \package{listings} package (where adaption of |\line|\-|width| etc.~takes place).
+% \begin{macrocode}
+ \caption@setbool{lst@Init}{0}%
+ \lst@AddToHook{Init}{\caption@setbool{lst@Init}{1}}%
+% \end{macrocode}
+% \begin{macrocode}
+ \let\caption@ORI@lst@MakeCaption\lst@MakeCaption
+ \def\lst@MakeCaption#1{% #1 is `t' or `b'
+% \end{macrocode}
+% This macro is always called twice by the \package{listings} package (with `t' resp. `b' as parameter),
+% therefore we need an extra group here.
+% \begin{macrocode}
+ \begingroup
+% \end{macrocode}
+% Inside lists the \package{listings} package ignores the left margin (|\@total|\-|left|\-|margin|) for captions.
+% We emulate this behaviour by adding a negative skip which will be typeset ahead of |\caption@box|.\par
+% Note: We only need to do this if the ``Init'' hook of the \package{listings} package wasn't called yet.
+% \begin{macrocode}
+ \caption@iflst@Init{}{%
+ \edef\caption@lst@leftskip{\noexpand\hskip-\the\@totalleftmargin\noexpand\relax}%
+ \l@addto@macro\caption@beginhook\caption@lst@leftskip}%
+% \end{macrocode}
+% We set |position=#1| and if it was set to `top',
+% we swap the skips so the default behavior of the \package{listings} package
+% will not be changed. (Note that the \package{listings} package has set its
+% own |\abovecaptionskip| \& |\belowcaptionskip| values prior to calling
+% \cs{lst@MakeCaption}.)
+% \begin{macrocode}
+ \caption@setposition{#1}%
+ \caption@iftop{%
+ \@tempdima\belowcaptionskip
+ \belowcaptionskip\abovecaptionskip
+ \abovecaptionskip\@tempdima}{}%
+% \end{macrocode}
+% Workaround for issue with wrong skips (FIXME: This should be examined further)
+% \begin{macrocode}
+ \caption@setup{rule=0}%
+% \end{macrocode}
+% Afterwards we set the local `lstlisting' options.
+% \begin{macrocode}
+ \caption@setoptions{lstlisting}%
+% \end{macrocode}
+% If the |position=| is now set to |auto|, we take over the |captionpos=|
+% setting from the \package{listings} package.
+% \begin{macrocode}
+ \caption@setautoposition{#1}%
+% \end{macrocode}
+% At the end we do similar stuff as in our \cs{@caption} code.
+% \begin{macrocode}
+ \caption@begin{lstlisting}%
+ \caption@ORI@lst@MakeCaption{#1}%
+ \caption@end
+% \end{macrocode}
+% \begin{macrocode}
+ \endgroup}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\lst@makecaption}
+% \begin{macro}{\lst@maketitle}
+% Wrapper macros for typesetting the |caption=| resp. |title=| value.
+% \begin{macrocode}
+ \def\lst@makecaption{\caption@starfalse\@makecaption}%
+ \def\lst@maketitle{\caption@startrue\@makecaption\@empty}%
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+%
+% \begin{macro}{\ext@lstlisting}
+% \changes{v3.1}{2007/03/03}{This macro added}
+% Since the \package{listings} package do not define |\ext@lstlisting|
+% but we needed it when |\captionof{lstlisting}| will be done by the end user,
+% we define it here.
+% \begin{macrocode}
+ \providecommand*\ext@lstlisting{lol}%
+% \end{macrocode}
+% \end{macro}
+%
+% \changes{v3.1a}{2007/07/13}{Bugfix 07-09-13: \cs{lst@@caption} will not be re-defined anymore}
+%
+% \begin{macrocode}
+}{}
+% \end{macrocode}
+%
+% \subsection{The longtable package}
+%
+% \begin{macro}{\LTcaptype}
+% \changes{v3.1}{2007/07/06}{This macro and its support added}
+% |\LTcaptype| is preset to |table|.
+% \begin{macrocode}
+\providecommand*\LTcaptype{table}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@AtBeginLongtable}
+% \changes{v3.5}{2018/04/15}{This macro added}
+% \begin{macrocode}
+\providecommand*\caption@LT@array{}
+\newcommand\caption@AtBeginLongtable{%
+ \g@addto@macro\caption@LT@array}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+\caption@IfPackageLoaded{longtable}[1995/05/24 v3.14]{%
+% \end{macrocode}
+% \begin{macrocode}
+ \RequirePackage{ltcaption}[=2018/08/26]%
+ \let\LT@@makecaption\@undefined
+% \end{macrocode}
+%
+% \begin{macro}{\LT@array}
+% \changes{v3.1}{2007/07/22}{This redefinition added}
+% \changes{v3.1a}{2007/09/16}{Bugfix: This redefinition will always be done \cs{AtBeginDocument}}
+% \changes{v3.1g}{2008/01/20}{Bugfix in \cs{captionlistentry}: Table counter will not be incremented anymore, \cs{nameref} works}
+% \changes{v3.3}{2016/01/31}{Support for \cs{bicaption} added}
+% \changes{v3.3}{2018/10/05}{Definition of \cs{captionlistentry} fixed}
+% \changes{v3.5}{2018/04/15}{Usage of \cs{caption@AtBeginLongtable} added}
+% We redefine |\LT@array| here to get |\captionsetup|\marg{options} working inside |longtable|s.
+% \Note{Since the \package{hyperref} package patches \cs{LT@array} as well
+% and since this only works with the original definition of \cs{LT@array},
+% we have to do this after the \package{hyperref} package, i.e.~\cs{AtBeginDocument}.}
+% \begin{macrocode}
+ \caption@AtBeginDocument{%
+ \let\caption@ORI@LT@array\LT@array
+ \renewcommand*\LT@array{%
+ \caption@LT@array
+ \caption@ORI@LT@array}}%
+% \end{macrocode}
+% \begin{macrocode}
+ \caption@AtBeginLongtable{%
+% |\captionsetup| for longtable:
+% \begin{macrocode}
+ \global\let\caption@opt@@longtable\@undefined
+ \def\captionsetup{%
+ \noalign\bgroup
+ \@ifstar\@captionsetup\@captionsetup}% gobble *
+ \def\@captionsetup#1{\LT@captionsetup{#1}\egroup}%
+ \def\LT@captionsetup#1{%
+ \captionsetup@startrue\caption@setup@options[@longtable]{#1}%
+ \global\let\caption@opt@@longtable\caption@opt@@longtable}%
+% \end{macrocode}
+% |\captionlistentry| for longtable:
+% \begin{macrocode}
+ \def\captionlistentry{%
+ \noalign\bgroup
+ \@ifstar{\egroup\LT@listentry\LTcaptype}% gobble *
+ {\egroup\LT@listentry\LTcaptype}}%
+% \end{macrocode}
+% |\continuedfloat| for longtable:\\
+% {\small(Commented out, since it's not deeply tested and quite useless anyway)}
+% \Note{\package{hyperref} versions $<$ v6.76j uses $2\times$ \cs{hyper@makecurrent}}
+% \begin{macrocode}
+% \caption@ifhypcap{%
+% \let\caption@ORI@hyper@makecurrent\hyper@makecurrent
+% \def\hyper@makecurrent##1{%
+% \let\hyper@makecurrent\caption@ORI@hyper@makecurrent
+% \caption@makestart{##1}%
+%% \let\Hy@LT@currentHlabel\@currentHlabel
+% \let\Hy@LT@currentHref\@currentHref
+% \def\hyper@makecurrent####1{%
+%% \let\@currentHlabel\Hy@LT@currentHlabel
+% \let\@currentHref\Hy@LT@currentHref}}%
+% \let\caption@ORI@continuedfloat\continuedfloat
+% \def\continuedfloat{\noalign{%
+% \gdef\caption@setContinuedFloat{%
+% \let\caption@reset@continuedfloat\@gobble}%
+% \def\caption@setoptions##1{%
+% \g@addto@macro\caption@setContinuedFloat{%
+% \caption@setoptions{##1}}}%
+% \let\@captype\LTcaptype
+% \caption@ORI@ContinuedFloat}}%
+% }{%
+% \def\continuedfloat{\noalign{%
+% \caption@Error{%
+% \noexpand\continuedfloat inside longtables\MessageBreak
+% is only available with `hypcap=true'}}}%
+% }%
+% \global\let\caption@setContinuedFloat\@empty
+ \def\continuedfloat{\noalign{%
+ \caption@Error{\noexpand\continuedfloat outside float}}}%
+% \end{macrocode}
+% |\bicaption| for longtable:
+% \begin{macrocode}
+ \let\bicaption\LT@bicaption
+% \end{macrocode}
+% \begin{macrocode}
+ }%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\LT@capti@n}
+% \changes{v3.3}{2016/02/01}{This re-definition added}
+% The original implementation:
+% \begin{verbatim}
+% \def\LT@capti@n{%
+% \@ifstar
+% {\egroup\LT@c@ption\@gobble[]}%
+% {\egroup\@xdblarg{\LT@c@ption\@firstofone}}}
+% \end{verbatim}%^^A
+% Our implementation uses |\caption@xdblarg| instead of |\@xdblarg|:
+% \begin{macrocode}
+ \def\LT@capti@n{%
+ \@ifstar
+ {\egroup\LT@c@ption\@gobble[]}%
+ {\egroup\caption@xdblarg{\LT@c@ption\@firstofone}}}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\LT@makecaption}
+% \changes{v3.0d}{2004/08/10}{Bugfix 04-08-04: \cs{abovecaptionskip} \& \cs{belowcaptionskip} will be used now}
+% \changes{v3.0e}{2005/05/05}{Bugfix: \cs{captionsetup[longtable]} overrides \cs{LTcapwidth} now}
+% \changes{v3.0h}{2005/10/07}{\cs{caption@LT@make} introduced}
+% \changes{v3.3}{2016/02/01}{Support for \cs{bicaption} via \cs{caption@LT@setup} added}
+% \changes{v3.3a}{2019/04/02}{Work-around for problem with \package{floatrow} added}
+% |\LT@makecaption|\marg{cmd}\marg{label}\marg{text}\par
+% \smallskip
+% The original definition:
+% \begin{verbatim}
+% \def\LT@makecaption#1#2#3{%
+% \LT@mcol\LT@cols c{\hbox to\z@{\hss\parbox[t]\LTcapwidth{%
+% % Based on article class "\@makecaption", "#1" is "\@gobble" in star
+% % form, and "\@firstofone" otherwise.
+% \sbox\@tempboxa{#1{#2: }#3}%
+% \ifdim\wd\@tempboxa>\hsize
+% #1{#2: }#3%
+% \else
+% \hbox to\hsize{\hfil\box\@tempboxa\hfil}%
+% \fi
+% \endgraf\vskip\baselineskip}%
+% \hss}}}
+% \end{verbatim}%^^A
+% Our definition:
+% \begin{macrocode}
+ \renewcommand\LT@makecaption[3]{%
+ \caption@LT@make{%
+ \caption@LT@settype\LTcaptype
+% \end{macrocode}
+% |\caption@LT@setup| is re-defined inside the \package{bicaption} package
+% and contains the preparation of typesetting of the bilingual caption.
+% \begin{macrocode}
+ \caption@LT@setup
+% \end{macrocode}
+% \iffalse
+% The default |position=| setting for longtables is |top|.
+% (This emulates the standard behavior of the \package{longtable} package
+% which has no skip above the caption but a skip below it.)
+% \fi
+% |position=auto| is a bad idea for longtables, but we do our very best.
+% This works quite well for captions inside the longtable contents, but
+% not for captions inside the longtable (end)foot.
+% \Note{This should be `top' if unclear!}
+% \begin{macrocode}
+ \caption@setautoposition{\ifcase\LT@rows t\else b\fi}%
+% \end{macrocode}
+% We set |\ifcaption@star| according the 1st argument.
+% \begin{macrocode}
+ \caption@startrue#1\caption@starfalse
+% \end{macrocode}
+% \begin{macrocode}
+ \caption@prepare@stepcounter\LTcaptype{LT}%
+% \end{macrocode}
+% \changes{v3.1}{2007/05/05}{\cs{caption@font@normal} added}
+% \begin{macrocode}
+ \caption@begin\LTcaptype
+ \caption@normalsize
+% \end{macrocode}
+% The following skip has the purpose to correct the height of the
+% |\parbox[t]|. Usually it's the height of the very first line, but
+% because of our extra skips (|\abovecaptionskip| and |\belowcaptionskip|)
+% it's always |0pt|.\par
+% (A different idea would be typesetting the first skip outside the longtable
+% column with |\noalign{\vskip|\ldots|}|, but this means we have to move
+% |\caption@begin| to some other place because it does not work in tabular
+% mode. And at the moment I have no idea on how to do this in an elegant
+% way\ldots)
+% \begin{macrocode}
+ \vskip-\ht\strutbox
+% \end{macrocode}
+% Work-around for problem with \package{floatrow}:
+% The |\below|\-|caption|\-|skip| disturbs the environment in which the caption is actually typeset (by creating extra, unwanted space),
+% so we supress this skip if the \package{floatrow} package is loaded.
+% (This fixes \issue{50})
+% \begin{macrocode}
+ \caption@ifdefined\FBifcaptop{%
+ \let\caption@belowskip\@empty}{}%
+% \end{macrocode}
+% The following code should look familiar. We do our skips and use
+% |\caption@@make| to typeset the caption itself.
+% \begin{macrocode}
+ \caption@make@above
+ \caption@@make{#2}{#3}\endgraf
+ \caption@make@below
+ \caption@end}}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\LT@listentry}
+% \changes{v3.3}{2018/08/26}{This macro added}
+% \changes{v3.3}{2018/10/05}{Bugfix: \cs{ignorespaces} added}
+% \changes{v3.3}{2018/12/26}{Bugfix: Missing curly braces added}
+% \begin{macrocode}
+ \renewcommand*\LT@listentry[2]{%
+ \begingroup
+ \caption@LT@settype{#1}%
+ \caption@listentry\@firstoftwo[{#1}]{#2}%
+ \endgroup\ignorespaces}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@LT@settype}
+% \changes{v3.3}{2018/08/26}{This macro added}
+% \changes{v3.3}{2018/10/05}{Uses argument no. 1 instead of \cs{LTcaptype}}
+% \begin{macrocode}
+ \newcommand*\caption@LT@settype[1]{%
+ \caption@settype*{#1}%
+% \end{macrocode}
+% If |\LTcapwidth| is not set to its default value |4in| we assume
+% that it shall overwrite our own setting.
+% (But |\captionsetup[longtable]{width=|\ldots|}| will overwrite |\LTcapwidth|.)
+% \begin{macrocode}
+ \ifdim\LTcapwidth=4in \else
+ \setcaptionwidth\LTcapwidth
+ \fi
+% \end{macrocode}
+% \begin{macrocode}
+ \caption@setoptions{longtable}%
+% \caption@setContinuedFloat
+% \end{macrocode}
+% Finally set options applied by |\captionsetup| inside the longtable.
+% \begin{macrocode}
+ \caption@setoptions{@longtable}}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\flrow@setlist}
+% \changes{v3.4g}{2020/01/03}{Redefinition of this macro added}
+% The \package{floatrow} package uses |\flrow@setlist{{table}{longtable}}| inside its redefinition of |\LT@array| without setting |\@captype| first,
+% and this makes |\captionsetup[table]{name=...}| doomed to fail for longtables (``Undefined control sequence'').
+% Unfortunately we cannot easily patch |\LT@array| again to fix this bug in \package{floatrow} since it will be patched |\AtBeginDocument|.
+% Therefore we patch |\flrow@setlist| instead to catch and fix the bug on-the-fly.
+% \begin{macrocode}
+ \caption@AtBeginDocument{\caption@ifdefined\flrow@setlist@{%
+ \caption@InfoNoLine{Fixing longtable code of `floatrow' package}%
+ \let\caption@flrow@setlist@\flrow@setlist@
+ \renewcommand\flrow@setlist@[1]{%
+ \def\caption@tempa{{table}{longtable}}%
+ \def\caption@tempb{#1}%
+ \ifx\caption@tempa\caption@tempb
+ \def\@captype{table}%
+ \fi
+ \caption@flrow@setlist@{#1}}%
+ }{}}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+}{%
+ \let\caption@AtBeginLongtable\@gobble
+ \let\caption@LT@array\@undefined
+}
+% \end{macrocode}
+%
+% \begin{macro}{\caption@LT@setup}
+% \changes{v3.3}{2016/02/01}{This macro added}
+% Hook for stuff which prepares the typesetting of the \package{longtable} caption.
+% \begin{macrocode}
+\providecommand*\caption@LT@setup{}
+% \end{macrocode}
+% \end{macro}
+%
+% \subsection{The picinpar package}
+% \changes{v3.1}{2007/06/13}{Support of the \package{picinpar} package added}
+%
+% \begin{macrocode}
+\caption@IfPackageLoaded{picinpar}{%
+% \end{macrocode}
+%
+% \begin{macro}{\figwindow}
+% \begin{macro}{\tabwindow}
+% The \package{picinpar} package comes with its own caption code
+% (|\wincaption|, |\@wincaption|, |\@makewincaption|, \ldots)
+% so we redefine |\figwindow| \& |\tabwindow| to use |\caption| instead.
+% \begin{macrocode}
+ \long\def\figwindow[#1,#2,#3,#4] {%
+ \caption@window{figure}%
+ \caption@setoptions{figwindow}%
+ \begin{window}[#1,#2,{#3},\caption@wincaption{#4}] }%
+% \end{macrocode}
+% \begin{macrocode}
+ \long\def\tabwindow[#1,#2,#3,#4] {%
+ \caption@window{table}%
+ \caption@setoptions{tabwindow}%
+ \begin{window}[#1,#2,{#3},\caption@wincaption{#4}] }%
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+%
+% \begin{macro}{\caption@window}
+% \changes{v3.1c}{2007/10/06}{Bugfix: \cs{caption@clearmargin} added}
+% Beside calling |\caption@settype| we redefine |\caption@par|\-|box|\-|restore|
+% (as in \package{floatflt} \& \package{picins} package support)
+% and |\@makecaption| (as in \package{float} package support) here.
+% \begin{macrocode}
+ \newcommand*\caption@window[1]{%
+ \let\@makecaption\caption@@make
+ \caption@setautoposition b%
+ \caption@settype{#1}%
+ \caption@clearmargin
+ \caption@setparboxrestore{full}}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@wincaption}
+% \changes{v3.1d}{2007/10/25}{Missing \% added}
+% \changes{v3.3}{2013/04/14}{\cs{caption@ContinuedFloattrue} added}
+% \changes{v3.3}{2018/10/06}{\cs{caption@ContinuedFloattrue} replaced by \cs{caption@setflag1}}
+% This one finally typesets the caption using |\caption|.
+% \begin{macrocode}
+ \newcommand\caption@wincaption[1]{%
+% \end{macrocode}
+% This will be done twice for every |figwindow| \& |tabwindow| caption --
+% on the first run |\picwd| is |0pt|, on the second run |\picwd| is |\hsize|.
+% \begin{macrocode}
+ \ifdim\picwd=\z@
+ \let\caption@makecurrent\@gobbletwo
+ \let\caption@@start\relax
+ \caption@prepareslc
+ \else
+ \caption@setflag1%
+ \fi
+% \end{macrocode}
+% The argument |#1| could contain simply the caption text
+% (e.g.~|A figure caption|), but it could also contain an optional argument,
+% the \meta{lst\_entry}
+% (e.g.~|[An| |entry| |to| |the| |LOF]||{A| |figure| |caption}|).
+% Therefore we have to test if |#1| begins with~|[| or not; furthermore we
+% support a starred variant -- as in |\caption*| -- so we test for~|*|, too.
+% \begin{macrocode}
+ \edef\@tempa{\expandafter\noexpand\@car#1\@nil}%
+ \if\@tempa*%
+ \let\@tempa\@firstofone
+ \else\if\@tempa[%]
+ \let\@tempa\@firstofone
+ \else
+ \let\@tempa\@empty
+ \fi\fi
+ \expandafter\caption\@tempa{#1}}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+}{}
+% \end{macrocode}
+%
+% \subsection{The picins package}
+% \changes{v3.0j}{2006/01/26}{Support of the \package{picins} package added}
+%
+% \begin{macro}{\piccaptiontype}
+% |\piccaptiontype|\marg{type}\par
+% We offer this macro for changing the \meta{type} of the caption, so the user
+% doesn't have to redefine |\@captype|, as proposed in the \package{picins}
+% documentation.
+% \Note{We define this macro here so it can be used in the
+% preamble of the document, even when \thispackage\ was loaded prior to the
+% \package{picins} package.}
+% \begin{macrocode}
+\newcommand*\piccaptiontype[1]{\def\@piccaptype{#1}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+\caption@IfPackageLoaded{picins}{%
+% \end{macrocode}
+%
+% Initial set |\@piccaptype| and undefine |\@captype| which was set to
+% |figure| by the \package{picins} package.
+% \begin{macrocode}
+ \caption@ifundefined\@piccaptype{%
+ \caption@iftype{%
+ \let\@piccaptype\@captype
+ }{%
+ \def\@piccaptype{figure}%
+ }%
+ }{}%
+ \let\@captype\@undefined
+% \end{macrocode}
+%
+% \begin{macro}{\piccaption}
+% The original code:
+% \begin{verbatim}
+% \def\piccaption{\@ifnextchar [{\@piccaption}{\@piccaption[]}}
+% \end{verbatim}%^^A
+% Our code uses |\caption@star| so |\piccaption*| works,
+% and |\caption@dblarg| so |\piccaption{}| works correctly.
+% \begin{macrocode}
+ \def\piccaption{\caption@star\relax{\caption@dblarg\@piccaption}}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\make@piccaption}
+% \changes{v3.1}{2007/12/06}{Bugfix: \cs{caption@clearmargin} will always be used now}
+% The original code:
+% \begin{verbatim}
+% \def\make@piccaption{%
+% [...]
+% \setbox\@TEXT=\vbox{\hsize\hsiz@\caption[\sh@rtf@rm]{\capti@nt@xt}}%
+% }
+% \end{verbatim}%^^A
+% In our code we have to correct several things:
+% \begin{enumerate}
+% \item |\@captype| must be defined, since we have removed the global
+% definition.
+% \item We use |\caption@setoptions{parpic}| so
+% |\captionsetup[parpic]{|\ldots|}| is supported.
+% \item |\linewidth| must be set correctly.
+% Usually this is done by |\@parbox|\-|restore| inside |\@caption|,
+% but since we use |\@caption@parbox|\-|restore| we have to map this to
+% |\@parbox|\-|restore| instead.
+% \item The two arguments of |\caption| (|\sh@rtf@rm| \& |\capti@nt@xt|)
+% should be expanded on first level so |\caption[]{|\ldots|}| and
+% |\caption[|\ldots|]{}| work correctly.
+% \end{enumerate}
+% \begin{macrocode}
+ \let\caption@ORI@make@piccaption\make@piccaption
+ \def\make@piccaption{%
+ \let\caption@ORI\caption
+% \end{macrocode}
+% \begin{macrocode}
+ \long\def\caption[##1]##2{%
+ \caption@freezeHref % will be defrosted in \ivparpic
+ \caption@settype\@piccaptype
+% \ifnum\c@piccaptionpos>2\relax
+ \caption@clearmargin
+% \else
+% \captionwidth\z@ % do not use "width=" setting
+% \fi
+ \caption@setparboxrestore{full}%
+ \caption@setoptions{parpic}%
+ \caption@setautoposition b%
+% \end{macrocode}
+% \begin{macrocode}
+ \expandafter\expandafter\expandafter\caption@ORI
+ \expandafter\expandafter\expandafter[%
+ \expandafter\expandafter\expandafter{%
+ \expandafter##1\expandafter}\expandafter]\expandafter{##2}}%
+% \end{macrocode}
+% {\footnotesize\begin{quote}
+% \leavevmode\llap{-or-\quad}%^^A
+% |\begingroup|\\
+% | \toks0\expandafter{##1}| |\toks2\expandafter{##2}|\\
+% | \edef\x{\endgroup|\\
+% | \noexpand\caption@ORI[{\the\toks0}]{\the\toks2}}|\\
+% | \x|
+% \end{quote}
+% \begin{quote}
+% \leavevmode\llap{-or-\quad}%^^A
+% |\edef\x{%|\\
+% | \noexpand\caption@ORI[{\unexpanded\expandafter{##1}}]%|\\
+% | {\unexpanded\expandafter{##2}}}|\\
+% |\-|
+% \end{quote}}
+% \begin{macrocode}
+ \caption@ORI@make@piccaption
+ \let\caption\caption@ORI}%
+% \end{macrocode}
+% \end{macro}
+%
+
+% \begin{macro}{\ivparpic}
+% \changes{v3.3}{2018/12/26}{Bugfix: Missing curly braces added}
+% We need to set our \package{hyperref} anchor here.
+% Not bullet-proof since we have to redefine |\noindent| here!
+% \begin{macrocode}
+ \let\caption@ORI@ivparpic\ivparpic
+ \def\ivparpic(#1,#2)(#3,#4)[#5][#6]#7{%
+ \let\caption@ORI@noindent\noindent
+ \def\noindent{%
+ \caption@defrostHref
+ \let\noindent\caption@ORI@noindent
+ \noindent}%
+ \caption@ORI@ivparpic(#1,#2)(#3,#4)[{#5}][{#6}]{#7}%
+ \let\noindent\caption@ORI@noindent}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+}{%
+ \let\piccaptiontype\@undefined
+}
+% \end{macrocode}
+%
+% \subsection{The rotating package}
+%
+% \begin{macrocode}
+\caption@IfPackageLoaded{rotating}[1995/08/22 v2.10]{%
+% \end{macrocode}
+%
+% \begin{macro}{\rotcaption}
+% \changes{v3.0c}{2004/07/16}{Bugfix: Check for \cs{caption@star} removed}
+% \changes{v3.0i}{2005/12/07}{Rewritten, works with \package{hyperref} now}
+% Make |\rotcaption*| work.
+% \begin{macrocode}
+ \def\rotcaption{\let\@makecaption\@makerotcaption\caption}%
+% \let\@rotcaption\@undefined
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\rotcaptionof}
+% \changes{v3.0i}{2005/12/07}{New}
+% Make |\rotcaptionof(*)| work.
+% \begin{macrocode}
+ \def\rotcaptionof{%
+ \caption@teststar\caption@of{\rotcaption*}\rotcaption}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\@makerotcaption}
+% \changes{v3.0i}{2005/12/06}{Rewritten, should finally work proper now}
+% \changes{v3.0m}{2007/03/04}{Uses \cs{caption@parbox} instead of \cs{caption@start/endbox} now}
+% \changes{v3.3}{2012/12/26}{Rewritten (again)}
+% Original (bugfixed) code:
+% \begin{verbatim}
+% \long\def\@makerotcaption#1#2{%
+% \setbox\@tempboxa\hbox{#1: #2}%
+% \ifdim \wd\@tempboxa > .8\vsize
+% \rotatebox{90}{%
+% \begin{minipage}{.8\textheight}#1: #2\end{minipage}%
+% }%\par % <== \par removed (AR)
+% \else%
+% \rotatebox{90}{\box\@tempboxa}%
+% \fi
+% \nobreak\hspace{12pt}% <== \nobreak added (AR)
+% }
+% \end{verbatim}%^^A
+% Our version emulates this behavior, but if |width=| is set,
+% the rotated caption is always typeset as |\parbox|.
+% (Note that |margin=| is not supported here.)
+% \begin{macrocode}
+ \long\def\@makerotcaption#1#2{%
+ \rotatebox{90}{%
+ \ifdim\captionwidth=\z@
+ \setcaptionwidth{.8\vsize}%
+ \l@addto@macro\caption@singleline{%
+ \caption@setup{parbox=none}}%
+ \fi
+ \let\caption@calcmargin\relax
+ \caption@@make{#1}{#2}}%
+ \nobreak\hspace{12pt}}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+}{}
+% \end{macrocode}
+%
+% \subsection{The sidecap package}
+%
+% \begin{macrocode}
+\caption@IfPackageLoaded{sidecap}[2003/06/06 v1.6f]{%
+ \caption@setbool{needfreeze}{1}%
+% \end{macrocode}
+%
+% \begin{macro}{\SC@zfloat}
+% \changes{v3.0b}{2004/05/16}{Local definition of \cs{captionsetup} added}
+% \changes{v3.0c}{2004/07/16}{Bugfix 04-07-15: Check for \cs{caption@star} removed}
+% \changes{v3.1c}{2007/10/06}{\cs{caption} will be saved \& restored now}
+% \changes{v3.2a}{2011/08/17}{Bugfix: Uses \cs{caption@freeze} instead of \cs{caption@freeze*} now}
+% \changes{v3.3}{2013/05/01}{Usage of \cs{caption@freeze} replaced by \cs{caption@freezetype}}
+% This macro will be called at the start of the environment, here is a good
+% opportunity to do some adaptations to |\caption| and |\captionsetup|.
+% \begin{macrocode}
+ \let\caption@ORI@SC@zfloat\SC@zfloat
+ \def\SC@zfloat#1#2#3[#4]{%
+% \end{macrocode}
+% First we use the original definition, but restore \cs{caption} and \cs{label}
+% so \cs{caption@freeze} and \cs{caption@warmup} will work correctly.
+% \begin{macrocode}
+ \caption@ORI@SC@zfloat{#1}{#2}{#3}[#4]%
+ \SC@RestoreCommands
+% \end{macrocode}
+% Since the sidecap package uses our |\caption| code outside the
+% environment the regular |\captionsetup| will not work.
+% So we need a special version here which saves the given argument list
+% which will be executed later on.
+% Furthermore we need to make |\caption*| work.
+% \begin{macrocode}
+ \caption@freezetype{#2}%
+% \end{macrocode}
+% The sidecap package uses |\ifx\label\SC@label| to test if it is just inside a
+% |SC|\-|figure| or not. So we redefine |\SC@label| here so this test will still work.
+% \begin{macrocode}
+ \let\SC@label\label}%
+% \end{macrocode}
+% \begin{macrocode}
+ \providecommand*\SC@RestoreCommands{%
+ \let\caption=\SC@orig@caption \let\label=\SC@orig@label}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\endSC@FLOAT}
+% \changes{v3.0i}{2006/01/12}{\cs{@listdepth}\cs{z@} added}
+% \changes{v3.1}{2007/05/05}{Call of \cs{caption@setoptions}\arg{SCfloat} added}
+% This macro will be called at the end of the environment, here we need to
+% setup our stuff before the \package{sidecap} package actually typesets
+% its caption.
+% \begin{macrocode}
+ \let\caption@ORI@endSC@FLOAT\endSC@FLOAT
+ \def\endSC@FLOAT{%
+% \end{macrocode}
+% Before we can typeset the caption we need to set the margin to zero
+% because any extra margin would only be disturbing here.\par
+% (We don't need to take care about the caption position because
+% the sidecap package set both |\abovecaptionskip| and |\belowcaptionskip|
+% to a skip of zero anyway.)\par
+% Furthermore |\SC@justify| will override the caption justification, if set.
+% The usage of |\SC@justify| differs from version to version of the
+% \package{sidecap} package:\par
+% \begin{tabular}{ll}
+% Version 1.4: & |\SC@justify| is not defined\\
+% Version 1.5: & |\SC@justify| is |\relax| when not set\\
+% Version 1.6: & |\SC@justify| is |\@empty| when not set\\
+% \end{tabular}
+% \begin{macrocode}
+ \def\caption@setSC@justify{%
+ \caption@clearmargin
+ \ifx\SC@justify\@empty \else
+ \let\caption@justification\SC@justify
+ \let\SC@justify\@empty
+ \fi}%
+% \end{macrocode}
+% Make the original definition of |\endSC@FLOAT| to use our caption
+% stuff instead of its own.
+% \Note{At this point the \package{sidecap} definition of \cs{caption} is valid,
+% not the regular one!}
+% \begin{macrocode}
+ \let\caption\SC@orig@caption
+ \def\SC@orig@caption[##1]##2{%
+ \caption@setSC@justify
+%%% \caption@setoptions{SC}%
+ \caption@setoptions{SC\@captype}%
+ \caption@defrost}%
+% \end{macrocode}
+% Finally we call the original definition of |\endSC@FLOAT|.
+% \begin{macrocode}
+ \caption@setSC@justify % for compatibility mode
+ \caption@prepare@defrost
+ \caption@ORI@endSC@FLOAT}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+}{}
+% \end{macrocode}
+%
+% \subsection{The subfigure package}
+% \changes{v3.1}{2007/04/06}{subfigure package support added}
+%
+% \begin{macrocode}
+\caption@IfPackageLoaded{subfigure}[2002/01/23 v2.1]{%
+% \end{macrocode}
+%
+% \begin{macro}{\sf@ifpositiontop}
+% \changes{v3.1a}{2007/09/15}{Bugfix 07-09-15: Check for \cs{@captype} added}
+% If the \package{subfigure} package is loaded, we map |\sf@ifpositiontop|
+% to |\iffiguretopcap| resp. |\iftabletopcap|, so the \package{subfigure}
+% \version{2.1} options \opt{figbotcap} etc. will still work.
+% \begin{macrocode}
+ \def\sf@ifpositiontop{%
+ \ifx\@captype\@undefined
+ \expandafter\@gobbletwo
+ \else\ifx\@captype\relax
+ \expandafter\expandafter\expandafter\@gobbletwo
+ \else
+ \expandafter\expandafter\expandafter\sf@if@position@top
+ \fi\fi}
+% \end{macrocode}
+% \begin{macrocode}
+ \def\sf@if@position@top{%
+ \@ifundefined{if\@captype topcap}%
+ {\@gobbletwo}%
+ {\@nameuse{if\@captype topcap}%
+ \expandafter\@firstoftwo
+ \else
+ \expandafter\@secondoftwo
+ \fi}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+}{}
+% \end{macrocode}
+%
+% \subsection{The supertabular and xtab packages}
+%
+% \begin{macrocode}
+\caption@IfPackageLoaded{supertabular}[2002/07/19 v4.1e]{%
+% \end{macrocode}
+%
+% \begin{macro}{\tablecaption}
+% \changes{v3.0e}{2005/05/05}{Made \cs{topcaption*} and \cs{bottomcaption*} work}
+% \changes{v3.1h}{2008/04/01}{Bugfix: Star variant does not increment table counter anymore}
+% Make |\topcaption*| and |\bottomcaption*| work.
+% \begin{macrocode}
+ \renewcommand*\tablecaption{%
+ \caption@star
+ {\refstepcounter{table}}%
+ {\caption@dblarg{\@xtablecaption}}}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\@xtablecaption}
+% \changes{v3.1h}{2008/04/01}{Made \cs{nameref} \& \cs{autoref} work}
+% \changes{v3.1l}{2010/01/09}{Adapted to current version of nameref package}
+% \changes{v3.3}{2018/12/26}{Bugfix: Missing curly braces added}
+% Make |\nameref| and |\autoref| work.
+% \begin{macrocode}
+ \let\caption@ORI@xtablecaption\@xtablecaption
+ \long\def\@xtablecaption[#1]#2{%
+ \caption@gettitle{#2}%
+ \caption@ORI@xtablecaption[{#1}]{#2}}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\ST@caption}
+% \changes{v3.0a}{2004/01/23}{Bugfix: Missing \cs{par} added}
+% \changes{v3.1h}{2008/04/01}{Bugfix: \cs{@currentlabelname} will be set now}
+% The original code:
+% \begin{verbatim}
+% \long\def\ST@caption#1[#2]#3{\par%
+% \addcontentsline{\csname ext@#1\endcsname}{#1}%
+% {\protect\numberline{%
+% \csname the#1\endcsname}{\ignorespaces #2}}
+% \begingroup
+% \@parboxrestore
+% \normalsize
+% \if@topcaption \vskip -10\p@ \fi
+% \@makecaption{\csname fnum@#1\endcsname}{\ignorespaces #3}\par
+% \if@topcaption \vskip 10\p@ \fi
+% \endgroup}
+% \end{verbatim}%^^A
+% \begin{macrocode}
+ \long\def\ST@caption#1[#2]#3{\par%
+ \caption@settype*{#1}%
+ \caption@setoptions{supertabular}%
+% \end{macrocode}
+% The |position=| setting will be overwritten by the
+% \package{supertabular} package: If |\topcaption| was used,
+% the position will be |top| automatically, |bottom| otherwise.
+% \begin{macrocode}
+ \caption@setposition{\if@topcaption t\else b\fi}%
+% \end{macrocode}
+% \begin{macrocode}
+ \caption@beginex{#1}{#2}{#3}%
+ \caption@parboxrestore
+ \caption@normalsize
+ \@makecaption{\csname fnum@#1\endcsname}{\ignorespaces #3}\par
+ \caption@end}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+}{}
+% \end{macrocode}
+%
+% \changes{v3.1h}{2008/04/01}{Support of the xtab package added}
+% \begin{macrocode}
+\caption@IfPackageLoaded{xtab}[2000/04/09 v2.3]{%
+% \end{macrocode}
+%
+% \begin{macro}{\tablecaption}
+% Make |\topcaption*| and |\bottomcaption*| work.
+% \begin{macrocode}
+ \renewcommand*\tablecaption{%
+ \caption@star
+ {\refstepcounter{table}}%
+ {\caption@dblarg{\@xtablecaption}}}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\@xtablecaption}
+% \changes{v3.1l}{2010/01/09}{Adapted to current version of nameref package}
+% \changes{v3.3}{2018/12/26}{Bugfix: Missing curly braces added}
+% Make |\nameref| and |\autoref| work.
+% \begin{macrocode}
+ \let\caption@ORI@xtablecaption\@xtablecaption
+ \long\def\@xtablecaption[#1]#2{%
+ \caption@gettitle{#2}%
+ \caption@ORI@xtablecaption[{#1}]{#2}}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\ST@caption}
+% The original code:
+% \begin{verbatim}
+% \long\def\ST@caption#1[#2]#3{\par%
+% \@initisotab
+% \addcontentsline{\csname ext@#1\endcsname}{#1}%
+% {\protect\numberline{%
+% \csname the#1\endcsname}{\ignorespaces #2}}%
+% \begingroup
+% \@parboxrestore
+% \normalsize
+% %% \if@topcaption \vskip -10\p@ \fi
+% \@makecaption{\csname fnum@#1\endcsname}{\ignorespaces #3}\par
+% %% \if@topcaption \vskip 10\p@ \fi
+% \endgroup
+% \global\advance\ST@pageleft -\PWSTcapht
+% \ST@trace\tw@{Added caption. Space left for xtabular: \the\ST@pageleft}}
+% \end{verbatim}%^^A
+% \begin{macrocode}
+ \long\def\ST@caption#1[#2]#3{\par%
+ \caption@settype*{#1}%
+ \caption@setoptions{xtabular}%
+% \end{macrocode}
+% \begin{macrocode}
+ \caption@set{position}{\if@topcaption t\else b\fi}%
+% \end{macrocode}
+% \begin{macrocode}
+ \@initisotab
+ \caption@beginex{#1}{#2}{#3}%
+ \caption@parboxrestore
+ \caption@normalsize
+ \@makecaption{\csname fnum@#1\endcsname}{\ignorespaces #3}\par
+ \caption@end
+ \global\advance\ST@pageleft -\PWSTcapht
+ \ST@trace\tw@{Added caption. Space left for xtabular: \the\ST@pageleft}}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+}{}
+% \end{macrocode}
+%
+% \subsection{The threeparttable package}
+% \changes{v3.1}{2007/05/08}{Support of the \package{threeparttable} package added}
+%
+% \begin{macrocode}
+\caption@IfPackageLoaded{threeparttable}[2003/06/13 v3.0]{%
+% \end{macrocode}
+%
+% \begin{macro}{\threeparttable}
+% \changes{v3.3}{2016/01/31}{Bugfix: \cs{@captype} will be used if already defined}
+% Unfortunately |\@captype| is not set when |\TPT@common| will be used,
+% so we have to redefine |\threeparttable| and |\measuredfigure| instead.
+% \begin{macrocode}
+ \let\caption@ORI@threeparttable\threeparttable
+ \renewcommand*\threeparttable{%
+ \caption@settype{\@ifundefined{@captype}{table}{\@captype}}%
+%%% \caption@setposition{auto}% ?
+ \caption@clearmargin
+ \caption@setoptions{threeparttable}%
+ \caption@ORI@threeparttable}%
+% \end{macrocode}
+% \end{macro}
+% \begin{macro}{\measuredfigure}
+% \changes{v3.3}{2016/01/31}{Bugfix: \cs{@captype} will be used if already defined}
+% Same here\ldots
+% \begin{macrocode}
+ \let\caption@ORI@measuredfigure\measuredfigure
+ \renewcommand*\measuredfigure{%
+ \caption@settype{\@ifundefined{@captype}{figure}{\@captype}}%
+%%% \caption@setposition{auto}% ?
+ \caption@clearmargin
+ \caption@setoptions{measuredfigure}%
+ \caption@ORI@measuredfigure}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\TPT@caption}
+% The original code:
+% \begin{verbatim}
+% \def\TPT@caption#1[#2]#3{\gdef\TPT@docapt
+% {\par\global\let\TPT@docapt\@undefined \TPT@LA@caption{#1}[{#2}]%
+% {\strut\ignorespaces#3\ifhmode\unskip\@finalstrut\strutbox\fi}}%
+% \ifx\TPT@hsize\@empty \let\label\TPT@gatherlabel \abovecaptionskip\z@skip
+% \else \TPT@docapt \fi \ignorespaces}
+% \end{verbatim}%^^A
+% \begin{macrocode}
+ \def\TPT@caption#1[#2]#3{%
+ \gdef\TPT@docapt{%
+ \global\let\TPT@docapt\@undefined
+ \caption@setautoposition\caption@TPT@position
+ \TPT@LA@caption{#1}[{#2}]{#3}}%
+ \ifx\TPT@hsize\@empty
+ \let\label\TPT@gatherlabel % Bug: does not work for measuredfigures
+ \gdef\caption@TPT@position{t}%
+ \g@addto@macro\TPT@docapt\caption@TPT@eatvskip
+ \else
+ \def\caption@TPT@position{b}%
+ \TPT@docapt
+ \fi
+ \ignorespaces}%
+% \end{macrocode}
+% \begin{macrocode}
+ %\newcommand*\caption@TPT@eatvskip{\vskip-.2\baselineskip}%
+ \def\caption@TPT@eatvskip#1\vskip{#1\@tempdima=}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+}{}
+% \end{macrocode}
+%
+% \subsection{The wrapfig package}
+% \changes{v3.1}{2007/05/05}{Support of the \package{wrapfig} package added}
+% \changes{v3.2d}{2011/11/02}{Support of the \package{wrapfig} package rewritten}
+%
+% \begin{macrocode}
+\caption@IfPackageLoaded{wrapfig}[2003/01/31 v3.6]{%
+% \end{macrocode}
+%
+% \begin{macro}{\wrapfloat}
+% \changes{v3.2d}{2011/11/02}{Redefinition of this macro added}
+% First of all we make the \package{wrapfig} package independent from the package
+% load order regarding the \package{float} package.
+% Since the usage of |\@float@set|\-|every| is missing in the code of the \package{wrapfig}
+% package (it should be in the redefinition of |\float@re|\-|style|, right after
+% |\@nameuse{fst@#1}|), we don't use it here, too,
+% especially since |\wrap|\-|float| will usually not be used when used with re-styled floats.
+% \begin{macrocode}
+ \renewcommand*\wrapfloat[1]{%
+ \def\@captype{#1}%
+ \@ifundefined{fst@#1}{}{%
+ \@nameuse{fst@#1}%
+% \@float@setevery{#1}%
+ \def\WF@floatstyhook{\let\@currbox\WF@box
+ \global\setbox\WF@box\float@makebox{\wd\WF@box}}}%
+ \@ifnextchar[\WF@wr{\WF@wr[]}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\WF@rapt}
+% \changes{v3.2d}{2011/11/02}{Usage of \cs{WF@captionstyhook} added}
+% Original code:
+% \begin{verbatim}
+% \def\WF@rapt[#1]#2{% final two args: #1 = overhang, #2 = width,
+% \gdef\WF@ovh{#1}% hold overhang for later, when \width is known
+% \global\setbox\WF@box\vtop\bgroup \setlength\hsize{#2}%
+% \ifdim\hsize>\z@ \@parboxrestore \else
+% \setbox\z@\hbox\bgroup \let\wf@@caption\caption \let\caption\wf@caption
+% \ignorespaces \fi}
+% \end{verbatim}%^^A
+% Our code has |\WF@captionstyhook| in addition:
+% \begin{macrocode}
+ \def\WF@rapt[#1]#2{% final two args: #1 = overhang, #2 = width,
+ \gdef\WF@ovh{#1}% hold overhang for later, when \width is known
+ \global\setbox\WF@box\vtop\bgroup \setlength\hsize{#2}%
+ \expandafter\WF@captionstyhook\expandafter{\@captype}% <= new
+ \ifdim\hsize>\z@ \@parboxrestore \else
+ \setbox\z@\hbox\bgroup \let\wf@@caption\caption \let\caption\wf@caption
+ \ignorespaces \fi}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\WF@captionstyhook}
+% \changes{v3.2d}{2011/11/02}{This macro added}
+% \changes{v3.2e}{2011/11/10}{Bugfix 11-11-09: float package support fixed}
+% We place our \package{hyperref} anchor here, apply the `wrap' options etc.
+% Since the usage of |\@float@set|\-|every| is missing in the \package{wrapfig}
+% package we will catch it up here for making the necessary adaptions to the
+% \package{float} package.
+% \begin{macrocode}
+ \def\WF@captionstyhook#1{%
+ \let\@captype\@undefined
+ \@ifundefined{fst@#1}{}{\@float@setevery{#1}}%
+ \caption@settype{#1}%
+ \caption@clearmargin
+%%% \caption@setoptions{wrap}%
+ \caption@setoptions{wrap#1}}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+}{}
+% \end{macrocode}
+%
+% \section{That's all Folks!}
+%
+% Execute the code declared with |\After|\-|Caption|\-|Package|.
+%
+% \begin{macrocode}
+\caption@endtitles@code
+\let\caption@endtitles@code\@undefined
+\let\AfterCaptionPackage\@firstofone
+% \end{macrocode}
+%
+% \iffalse
+%</package>
+% \fi
+%
+% \iffalse
+% --------------------------------------------------------------------------- %
+% \fi
+%
+% \clearpage
+% \begin{thebibliography}{99}
+% \bibitem{float}
+% Anselm Lingnau:\\
+% \href{http://www.ctan.org/pkg/float}%
+% {\emph{An Improved Environment for Floats}},\\
+% 2001/11/08
+%
+% \bibitem{floatflt}
+% Mats Dahlgren:\\
+% \href{http://www.ctan.org/pkg/floatflt}%
+% {\emph{Welcome to the floatflt package}},\\
+% 1998/06/05
+%
+% \bibitem{floatrow}
+% Olga Lapko:\\
+% \href{http://www.ctan.org/pkg/floatrow}%
+% {\emph{The floatrow package documentation}},\\
+% 2009/08/02
+%
+% \bibitem{fltpage}
+% Sebastian Gross:\\
+% \href{http://www.ctan.org/pkg/fltpage}%
+% {\emph{Welcome to the beta test of fltpage package!}},\\
+% 1998/11/13
+%
+% \bibitem{hyperref}
+% Sebastian Rahtz \& Heiko Oberdiek:\\
+% \href{http://www.ctan.org/pkg/hyperref}%
+% {\emph{Hypertext marks in \LaTeX: a manual for hyperref}},\\
+% November 2012
+%
+% \bibitem{hypcap}
+% Heiko Oberdiek:\\
+% \href{http://www.ctan.org/pkg/oberdiek}%
+% {\emph{The hypcap package -- Adjusting anchors of captions}},\\
+% 2011/02/16
+%
+% \bibitem{listings}
+% Carsten Heinz \& Brooks Moses:\\
+% \href{http://www.ctan.org/pkg/listings}%
+% {\emph{The Listings Package}},\\
+% 2007/02/22
+%
+% \bibitem{longtable}
+% David Carlisle:\\
+% \href{http://www.ctan.org/pkg/longtable}%
+% {\emph{The longtable package}},\\
+% 2004/02/01
+%
+% \bibitem{picinpar}
+% Friedhelm Sowa:\\
+% \href{http://www.ctan.org/pkg/picinpar}%
+% {\emph{Pictures in Paragraphs}},\\
+% July 13, 1993
+%
+% \bibitem{picins}
+% Joachim Bleser and Edmund Lang:\\
+% \href{http://www.ctan.org/pkg/picins}%
+% {\emph{PicIns-Benutzerhandbuch Version 3.0}},\\
+% September~1992
+%
+% \bibitem{rotating}
+% Sebastian Rahtz and Leonor Barroca:\\
+% \href{http://www.ctan.org/pkg/rotating}%
+% {\emph{A style option for rotated objects in \LaTeX}},\\
+% 1997/09/26
+%
+% \bibitem{sidecap}
+% Rolf Niepraschk \& Hubert G\"a\ss lein:\\
+% \href{http://www.ctan.org/pkg/sidecap}%
+% {\emph{The sidecap package}},\\
+% 2003/06/06
+%
+% \bibitem{subfigure}
+% Steven D. Cochran:\\
+% \href{http://www.ctan.org/pkg/subfigure}%
+% {\emph{The subfigure package}},\\
+% 2005/03/15
+%
+% \bibitem{subfig}
+% Steven D. Cochran:\\
+% \href{http://www.ctan.org/pkg/subfig}%
+% {\emph{The subfig package}},\\
+% 2005/07/05
+%
+% \bibitem{supertabular}
+% Johannes Braams and Theo Jurriens:\\
+% \href{http://www.ctan.org/pkg/supertabular}%
+% {\emph{The supertabular environment}},\\
+% 2004/02/20
+%
+% \bibitem{threeparttable}
+% Donald Arseneau:\\
+% \href{http://www.ctan.org/pkg/threeparttable}%
+% {\emph{Three part tables: title, tabular environment, notes}},\\
+% March 5, 2010
+%
+% \bibitem{wrapfig}
+% Donald Arseneau:\\
+% \href{http://www.ctan.org/pkg/wrapfig}%
+% {\emph{WRAPFIG.STY ver 3.6}},\\
+% Jan 31, 2003
+%
+% \bibitem{xtab}
+% Peter Wilson:\\
+% \href{http://www.ctan.org/pkg/xtab}%
+% {\emph{The xtab package}},\\
+% 2011/07/31
+% \end{thebibliography}
+%
+% \iffalse
+% --------------------------------------------------------------------------- %
+% \fi
+%
+% \clearpage
+% \Finale
+%
+\endinput
diff --git a/macros/latex/contrib/caption/fallback/v3.5/caption3.dtx b/macros/latex/contrib/caption/fallback/v3.5/caption3.dtx
new file mode 100644
index 0000000000..5918f4a540
--- /dev/null
+++ b/macros/latex/contrib/caption/fallback/v3.5/caption3.dtx
@@ -0,0 +1,4680 @@
+% \iffalse meta-comment
+%
+% This is file `caption3.dtx'.
+%
+% Copyright (C) 1994-2020 Axel Sommerfeldt (axel.sommerfeldt@f-m.fm)
+%
+% --------------------------------------------------------------------------
+%
+% This work may be distributed and/or modified under the
+% conditions of the LaTeX Project Public License, either version 1.3
+% of this license or (at your option) any later version.
+% The latest version of this license is in
+% http://www.latex-project.org/lppl.txt
+% and version 1.3 or later is part of all distributions of LaTeX
+% version 2003/12/01 or later.
+%
+% This work has the LPPL maintenance status "maintained".
+%
+% This Current Maintainer of this work is Axel Sommerfeldt.
+%
+% This work consists of the files
+% caption.ins, caption.dtx, caption-light.dtx, caption2.dtx, caption3.dtx,
+% caption-ams-smf.dtx, caption-beamer.dtx, caption-elsarticle.dtx,
+% caption-koma.dtx, caption-memoir.dtx, caption-ntg.dtx,
+% caption-thesis.dtx, bicaption.dtx, ltcaption.dtx, subcaption.dtx,
+% the derived files
+% caption.sty, caption-light.sty, caption2.sty, caption3.sty,
+% caption-ams-smf.sto, caption-beamer.sto, caption-elsarticle.sto,
+% caption-koma.sto, caption-memoir.sto, caption-ntg.sto,
+% caption-thesis.sto, bicaption.sty, ltcaption.sty, subcaption.sty,
+% and the user manuals
+% caption-deu.tex, caption-eng.tex, caption-rus.tex.
+%
+% \fi
+% \CheckSum{3674}
+%
+% \iffalse
+%<*driver>
+\NeedsTeXFormat{LaTeX2e}[1994/12/01]
+\ProvidesFile{caption3.drv}[2020/10/11 v2.2 Implementation of the caption kernel]
+\hbadness=9999 \newcount\hbadness \hfuzz=100pt % Make TeX shut up.
+%\errorcontextlines=3
+%
+\documentclass{ltxdoc}
+\setlength\parindent{0pt}
+\setlength\parskip{\smallskipamount}
+%
+\makeatletter % make room for subsections like 2.16.14 in the TOC
+%\newcommand*\l@subsection{\@dottedtocline{2}{1.5em}{2.3em}}
+\renewcommand*\l@subsection{\@dottedtocline{2}{1.5em}{2.7em}}
+\makeatother
+%
+\usepackage{ifpdf}
+\ifpdf
+ \usepackage{mathptmx,courier}
+ \usepackage[scaled=0.90]{helvet}
+ \addtolength\marginparwidth{15pt}
+\fi
+%
+\usepackage{hypdoc}
+\ifpdf\usepackage{hypdestopt}\fi
+\hypersetup{pdfkeywords={LaTeX, package, caption},pdfstartpage={},pdfstartview={}}
+%
+\usepackage{caption3}[2020/09/12]
+%
+\DeclareRobustCommand*\eTeX{\texorpdfstring
+ {\leavevmode\hbox{$\varepsilon$}-\TeX}%
+ {e-TeX}}
+%
+\begin{document}
+ \DocInput{caption3.dtx}
+\end{document}
+%</driver>
+% \fi
+%
+% \def\thispackage{the \package{caption} kernel}
+% \def\Thispackage{The \package{caption} kernel}
+%
+% \newcommand*\purerm[1]{{\upshape\mdseries\rmfamily #1}}
+% \newcommand*\puresf[1]{{\upshape\mdseries\sffamily #1}}
+% \newcommand*\purett[1]{{\upshape\mdseries\ttfamily #1}}
+% \let\class\puresf \let\package\puresf
+% \let\env\purett \let\opt\purett
+%
+% \newcommand*\csmarg[1]{\texttt{\char`\{#1\char`\}}}
+% \newcommand*\csoarg[1]{\texttt{\char`\[#1\char`\]}}
+% \newcommand*\version[2][]{v$#2$}
+%
+% \GetFileInfo{caption3.drv}
+% \let\docdate\filedate
+% \let\docversion\fileversion
+% \GetFileInfo{caption3.sty}
+%
+% \title{The Implementation of
+% \texorpdfstring{\thispackage\thanks{%^^A
+% This package has version number \docversion.}}%^^A
+% {the caption kernel}}
+% \author{Axel Sommerfeldt\\
+% \url{https://gitlab.com/axelsommerfeldt/caption}}
+% \date{\docdate}
+% \maketitle
+%
+% \begin{abstract}
+% \Thispackage\ consists of two parts -- the kernel
+% (|caption3.sty|) and the main package (|caption.sty|).
+%
+% The kernel provides all the user commands and internal macros which are
+% necessary for typesetting captions and setting parameters regarding these.
+% While the standard \LaTeX\ document classes provide an internal command
+% called |\@makecaption| and no options to control its behavior (except the
+% vertical skips above and below the caption itself), we provide similar
+% commands called |\caption@make| and |\caption@@make|, but with a lot of
+% options which can be selected with |\captionsetup|.
+% Loading the kernel part do not change the output of a \LaTeX\ document
+% -- it just provides functionality which can be used by \LaTeXe\ packages
+% which typesets captions, for example the \package{caption} and
+% \package{subfig} packages.
+% \end{abstract}
+%
+% \section*{Internal commands}
+%
+% These internal commands are save to use by other packages as well
+% since their interface will not change in future releases:
+% \begin{quote}\begin{tabular}{ll}
+% Internal command & Currently used by \\
+% \hline
+% |\caption@addcontentsline| & \package{floatrow} \\
+% |\caption@fnun| & \package{floatrow} \\
+% |\caption@ifinlist| & \package{floatrow} \\
+% |\caption@iftop| & \package{keyfloat}, \package{subfig} \\
+% |\caption@make| & \package{subfig} \\
+% |\caption@@make| & \package{floatrow} \\
+% |\caption@setautoposition| & \package{bidi} \\
+% |\caption@setoptions| & \package{floatrow} \\
+% |\caption@setposition| & \package{floatrow} \\
+% |\caption@switchdefault| & \emph{none} \\
+% \end{tabular}\end{quote}
+%
+% If your package wants to use any other internal command of the \package{caption3} package,
+% please write me an e-mail so we can define a proper interface together.
+%
+% Unfortunately these internal commands are used by other packages and therefore will likely
+% not change in the future, too, but I do not support them (and maybe I will change them anyway
+% and patch the other package on-the-fly instead, at least if it's unmaintained):
+% \begin{quote}\begin{tabular}{ll}
+% Internal command & Currently used by \\
+% \hline
+% |\caption@hangindent | & \package{bidi} \\
+% |\caption@@@make| & \package{floatrow} \\
+% |\caption@@par| & \package{bidi} \\
+% |\caption@parindent| & \package{bidi} \\
+% |\caption@set@bool| & \package{floatrow} \\
+% |\caption@setfont| & \package{floatrow} \\
+% |\caption@setkeys| & \package{floatrow} \\
+% |\caption@setstyle*| & \package{floatrow} \\
+% \hline
+% |\caption@hj@|\meta{name} & \package{floatrow} \\
+% |\caption@lsep@|\meta{name} & \package{floatrow} \\
+% |\caption@lsep@default| & \package{babel-hungarian} \\
+% |\caption@sty@|\meta{name} & \package{floatrow} \\
+% \end{tabular}\end{quote}
+%
+% Furthermore the \package{floatrow} package uses the undocumented option
+% |position=a| (as abbreviation of |position=auto|).
+%
+% The \package{lwarp} package uses a lot of internal commands as well,
+% but we are working on it on the Git branch \texttt{feature/lwarp}:
+% \url{https://gitlab.com/axelsommerfeldt/caption/-/tree/feature/lwarp}
+%
+% \StopEventually{}
+% \clearpage
+% \tableofcontents
+%
+% \iffalse
+% --------------------------------------------------------------------------- %
+% \fi
+%
+% \DoNotIndex{\\,\_,\ ,\@@par}
+% \DoNotIndex{\@bsphack}
+% \DoNotIndex{\@car,\@cdr,\@classoptionslist,\@cons,\@currext,\@currname}
+% \DoNotIndex{\@ehc,\@ehd,\@empty,\@esphack,\@expandtwoargs}
+% \DoNotIndex{\@for,\@firstofone,\@firstoftwo}
+% \DoNotIndex{\@gobble,\@gobblefour,\@gobbletwo,\@hangfrom}
+% \DoNotIndex{\if@minipage\@ifnextchar,\@ifpackagelater,\@ifpackageloaded}
+% \DoNotIndex{\@ifstar,\@ifundefined,\@latex@error,\@minipagefalse,\@minipagetrue}
+% \DoNotIndex{\@namedef,\@nameuse}
+% \DoNotIndex{\@onlypreamble,\@parboxrestore,\@plus,\@ptionlist}
+% \DoNotIndex{\@removeelement,\@restorepar,\@secondoftwo,\@setminipage,\@setpar}
+% \DoNotIndex{\@tempa,\@tempboxa,\@tempdima,\@tempdimb,\@tempdimc,\@tempb,\@tempc}
+% \DoNotIndex{\@testopt}
+% \DoNotIndex{\@undefined,\@unprocessedoptions,\@unusedoptionlist}
+% \DoNotIndex{\p@,\z@}
+% \DoNotIndex{\active,\addtocounter,\addtolength,\advance,\aftergroup}
+% \DoNotIndex{\baselineskip,\begin,\begingroup,\bfseries,\box}
+% \DoNotIndex{\catcode,\centering,\changes,\csname,\def,\divide,\do,\downarrow}
+% \DoNotIndex{\edef,\else,\empty,\end,\endcsname,\endgraf,\endgroup,\expandafter}
+% \DoNotIndex{\fi,\footnotesize,\global}
+% \DoNotIndex{\hangindent,\hbox,\hfil,\hsize,\hskip,\hspace,\hss}
+% \DoNotIndex{\ifcase,\ifdim,\ifnum,\ifodd,\ifvoid,\ifvmode}
+% \DoNotIndex{\ifx,\ignorespaces,\itshape}
+% \DoNotIndex{\Large,\large,\leavevmode,\leftmargini,\leftskip,\let,\linewidth}
+% \DoNotIndex{\llap,\long,\m@ne,\margin,\mdseries,\message}
+% \DoNotIndex{\newcommand,\newdimen,\newlength,\newline,\newif,\newsavebox}
+% \DoNotIndex{\next,\nobreak,\nobreakspace,\noexpand,\noindent,\numberline}
+% \DoNotIndex{\normalcolor,\normalfont,\normalsize,\or,\par,\parbox,\parfillskip}
+% \DoNotIndex{\parindent,\parskip,\prevdepth,\protect,\protected@edef,\protected@write}
+% \DoNotIndex{\providecommand,\quad}
+% \DoNotIndex{\raggedleft,\raggedright,\relax,\renewcommand,\RequirePackage}
+% \DoNotIndex{\rightskip,\rmfamily}
+% \DoNotIndex{\sbox,\scriptsize,\scshape,\setbox,\setlength,\sffamily,\slshape}
+% \DoNotIndex{\small,\string,\space,\strut}
+% \DoNotIndex{\textheight,\the,\toks@,\typeout,\ttfamily}
+% \DoNotIndex{\unvbox,\uparrow,\upshape,\usebox,\usepackage}
+% \DoNotIndex{\value,\vbox,\vsize,\vskip,\wd,\width,\z@skip}
+% \DoNotIndex{\AtBeginDocument,\AtEndOfPackage,\CurrentOption,\DeclareOption}
+% \DoNotIndex{\ExecuteOptions,\GenericWarning,\IfFileExists,\InputIfFileExists}
+% \DoNotIndex{\NeedsTeXFormat,\MessageBreak}
+% \DoNotIndex{\PackageError,\PackageInfo,\PackageWarning,\PackageWarningNoLine}
+% \DoNotIndex{\PassOptionsToPackage,\ProcessOptions,\ProvidesPackage}
+%
+% \iffalse
+% --------------------------------------------------------------------------- %
+% \fi
+%
+% \setlength{\parskip}{0pt plus 1pt}
+% \newcommand*\Note[2][Note]{\par{\small\emph{#1:} #2}\par}
+%
+% \changes{v1.0}{2003/12/20}{Rewritten; many new commands and features}
+% \changes{v1.0c}{2004/11/28}{Split into two packages: \package{caption} \& \package{caption3}}
+%
+% \iffalse
+% --------------------------------------------------------------------------- %
+% \fi
+%
+% \clearpage
+%
+% \iffalse
+%<*package>
+% \fi
+%
+% \section{Identification}
+%
+% \begin{macrocode}
+\NeedsTeXFormat{LaTeX2e}[1994/12/01]
+\ProvidesPackage{caption3}[2020/10/26 v2.2f caption3 kernel (AR)]
+% \end{macrocode}
+%
+% \section{Generic helpers}
+%
+% \begin{macro}{\@nameundef}
+% |\@nameundef|\marg{command name}\\
+% is the opposite to |\@name|\-|def| which is offered by the \LaTeX\ kernel.
+% We use it to remove the definition of some commands and keyval options after
+% |\begin{document}| (to save \TeX\ memory) and to remove caption options defined
+% with |\caption|\-|setup|\oarg{type}.
+% \begin{macrocode}
+\providecommand*\@nameundef[1]{%
+ \expandafter\let\csname #1\endcsname\@undefined}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\l@addto@macro}
+% \changes{v1.5}{2013/04/26}{Revised}
+% \changes{v2.0}{2019/09/11}{Relies on \eTeX{} now}
+% |\l@addto@macro|\marg{command}\marg{code}\\
+% The \LaTeXe\ kernel offers the internal helper macro |\g@addto@macro| which
+% globally adds tokens to existing macros, like in |\AtBeginDocument|.
+% This one is the same but it works locally, not globally.
+% \begin{macrocode}
+\providecommand\l@addto@macro[2]{%
+ \edef#1{\unexpanded\expandafter{#1#2}}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\bothIfFirst}
+% \changes{v2.2}{2020/09/21}{Usage of \cs{caption@prepare@bothif} added}
+% \begin{macro}{\bothIfSecond}
+% \changes{v2.2}{2020/09/21}{Usage of \cs{caption@prepare@bothif} added}
+% |\bothIfFirst|\marg{code no. 1}\marg{code no. 2}\\
+% |\bothIfSecond|\marg{code no. 1}\marg{code no. 2}\\
+% |\bothIfFirst| tests if the first argument is not empty, |\bothIfSecond|
+% tests if the second argument is not empty. If yes both arguments get
+% typeset, otherwise none of them.
+% \begin{macrocode}
+\def\bothIfFirst#1#2{\caption@bothif{#1}{#1#2}}
+% \end{macrocode}
+% \begin{macrocode}
+\def\bothIfSecond#1#2{\caption@bothif{#2}{#1#2}}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@bothif[2]{%
+ \begingroup
+ \caption@prepare@bothif
+ \protected@xdef\caption@tempa{#1}%
+ \endgroup
+ \ifx\caption@tempa\@empty \else
+ #2%
+ \fi}
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+%
+% \begin{macro}{\caption@prepare@bothif}
+% \changes{v2.2}{2020/09/21}{This macro added}
+% |\caption@prepare@bothif|\\
+% re-defines anything which could disturb either |\both|\-|If|\-|First| or |\both|\-|If|\-|Second| check.
+% \begin{macrocode}
+\providecommand*\caption@prepare@bothif{}
+\g@addto@macro\caption@prepare@bothif{%
+ \let\inputencoding\@gobble}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@ifundefined}
+% \changes{v1.3a}{2011/08/12}{This macro added}
+% \changes{v1.3b}{2011/08/18}{Made expandable}
+% |\caption@ifundefined|\marg{command}\marg{yes-code}\marg{no-code}\\
+% is similar to \cs{@ifundefined} offered by the \LaTeX kernel,
+% but takes a command as argument instead of a command name.
+% \begin{macrocode}
+\newcommand*\caption@ifundefined[1]{%
+ \ifdefined#1%
+ \ifx#1\relax
+ \expandafter\expandafter\expandafter\@firstoftwo
+ \else
+ \expandafter\expandafter\expandafter\@secondoftwo
+ \fi
+ \else
+ \expandafter\@firstoftwo
+ \fi}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@ifdefined}
+% \changes{v1.8e}{2018/05/11}{This macro added}
+% |\caption@ifdefined|\marg{command}\marg{yes-code}\marg{no-code}\\
+% is similar to \cs{@ifundefined} offered by the \LaTeX kernel,
+% but takes a command as argument instead of a command name.
+% \begin{macrocode}
+\newcommand*\caption@ifdefined[1]{%
+ \ifdefined#1%
+ \ifx#1\relax
+ \expandafter\expandafter\expandafter\@secondoftwo
+ \else
+ \expandafter\expandafter\expandafter\@firstoftwo
+ \fi
+ \else
+ \expandafter\@secondoftwo
+ \fi}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@ifinlist}
+% \changes{v1.1}{2007/07/29}{Rewritten}
+% |\caption@ifinlist|\marg{element}\marg{list}\marg{yes-code}\marg{no-code}\\
+% This helper command checks if the \meta{element} is in the comma separated
+% \meta{list}. So for example
+% \begin{quote}
+% |\caption@ifinlist{frank}{axel,frank,olga,steven}{yes}{no}|
+% \end{quote}
+% would expand to |yes|.\par
+% (Note: Since this command is used by the \package{floatrow} package as well
+% its syntax should not change.)
+% \begin{macrocode}
+\newcommand*\caption@ifinlist{%
+ \@expandtwoargs\caption@@ifinlist}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@@ifinlist[2]{%
+ \begingroup
+ \def\@tempa##1,#1,##2\@nil{%
+ \endgroup
+ \ifx\relax##2\relax
+ \expandafter\@secondoftwo
+ \else
+ \expandafter\@firstoftwo
+ \fi}%
+ \@tempa,#2,#1,\@nil}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@ifin@list}
+% \changes{v1.1}{2007/08/12}{This macro added}
+% |\caption@ifin@list|\marg{cmd}\marg{element}\marg{yes-code}\marg{no-code}\\
+% is the same as |\caption@ifinlist| but with a command (containing a list)
+% instead of the list itself.
+% \begin{macrocode}
+\newcommand*\caption@ifin@list[2]{%
+ \caption@ifempty@list#1%
+ {\@secondoftwo}%
+ {\@expandtwoargs\caption@@ifinlist{#2}{#1}}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@g@addto@list}
+% \changes{v1.1}{2007/07/29}{This macro added}
+% |\caption@g@addto@list|\marg{cmd}\marg{element}\\
+% adds an element to a command containing a list.
+% (The command will get defined if it isn't defined yet.)
+% \begin{macrocode}
+\newcommand*\caption@g@addto@list[2]{%
+ \caption@ifempty@list#1{\gdef#1{#2}}{\g@addto@macro#1{,#2}}}
+% \end{macrocode}
+% \end{macro}
+% \begin{macro}{\caption@l@addto@list}
+% \changes{v1.1}{2007/07/29}{This macro added}
+% |\caption@l@addto@list|\marg{cmd}\marg{element}\\
+% is the same as |\caption@g@addto@list| but works locally.
+% \begin{macrocode}
+\newcommand*\caption@l@addto@list[2]{%
+ \caption@ifempty@list#1{\def#1{#2}}{\l@addto@macro#1{,#2}}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@g@removefrom@list}
+% \changes{v1.1}{2007/07/29}{This macro added}
+% |\caption@g@removefrom@list|\marg{cmd}\marg{element}\\
+% removes an element from a command containing a list.
+% \Note[Caveat]{\meta{cmd} will be expanded during this process since
+% \cs{@removeelement} is using \cs{edef} to build the new list.}
+% \begin{macrocode}
+\newcommand*\caption@g@removefrom@list[2]{%
+ \caption@l@removefrom@list#1{#2}%
+ \global\let#1#1}
+% \end{macrocode}
+% \end{macro}
+% \begin{macro}{\caption@l@removefrom@list}
+% \changes{v1.1}{2007/07/29}{This macro added}
+% |\caption@l@removefrom@list|\marg{cmd}\marg{element}\\
+% is the same as |\caption@g@removefrom@list| but works locally.
+% \Note[Caveat]{\meta{cmd} will be expanded during this process since
+% \cs{@removeelement} is using \cs{edef} to build the new list.}
+% \begin{macrocode}
+\newcommand*\caption@l@removefrom@list[2]{%
+ \caption@ifempty@list#1{}{\@expandtwoargs\@removeelement{#2}#1#1}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@for@list}
+% \changes{v1.1}{2007/07/29}{This macro added}
+% |\caption@for@list|\marg{cmd}\marg{code with \#1}\\
+% iterates all elements of the list (within \meta{cmd}) using the given
+% \meta{code}.
+% \begin{macrocode}
+\newcommand*\caption@for@list[2]{%
+ \caption@ifempty@list#1{}%
+ {\def\caption@tempb##1{#2}%
+ \@for\caption@tempa:=#1\do{%
+ \expandafter\caption@tempb\expandafter{\caption@tempa}}}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@ifempty@list}
+% \changes{v1.1}{2007/07/29}{This macro added}
+% |\caption@ifempty@list|\marg{cmd}\marg{yes-code}\marg{no-code}\\
+% This helper command checks if the list (within \meta{cmd}) is empty.
+% \begin{macrocode}
+\newcommand*\caption@ifempty@list[1]{%
+ \ifx#1\@undefined
+ \expandafter\@firstoftwo
+ \else\ifx#1\relax
+ \expandafter\expandafter\expandafter\@firstoftwo
+ \else\ifx#1\@empty
+ \expandafter\expandafter\expandafter\expandafter
+ \expandafter\expandafter\expandafter\@firstoftwo
+ \else
+ \expandafter\expandafter\expandafter\expandafter
+ \expandafter\expandafter\expandafter\@secondoftwo
+ \fi\fi\fi}
+% \end{macrocode}
+% \end{macro}
+%
+% \pagebreak[3]
+% \begin{macro}{\caption@setbool}
+% \changes{v1.1}{2007/04/05}{\cs{caption@set@bool}\marg{cmd}\marg{value} added}
+% \begin{macro}{\caption@ifbool}
+% \changes{v1.1}{2020/08/02}{\cs{caption@if@bool}\marg{value} added}
+% \begin{macro}{\caption@undefbool}
+% For setting and testing boolean options we offer these three helper macros:
+% \begin{quote}
+% |\caption@setbool|\marg{name}\marg{value}\\
+% | |(with |value = false/true/no/yes/off/on/0/1|)\\
+% |\caption@ifbool|\marg{name}\marg{if-clause}\marg{else-clause}\\
+% |\caption@undefbool|\marg{name}
+% \end{quote}
+% \begin{macrocode}
+\newcommand*\caption@setbool[1]{%
+ \expandafter\caption@set@bool\csname caption@if#1\endcsname}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@set@bool[2]{%
+ \caption@if@bool{#2}{\let#1\@firstoftwo}{\let#1\@secondoftwo}}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@if@bool[1]{%
+ \caption@ifinlist{#1}{1,true,yes,on}%
+ {\@firstoftwo}%
+ {\caption@ifinlist{#1}{0,false,no,off}%
+ {}%
+ {\caption@Error{Undefined boolean value `#1'}}%
+ \@secondoftwo}}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@ifbool[1]{\@nameuse{caption@if#1}}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@undefbool[1]{\@nameundef{caption@if#1}}
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+% \end{macro}
+%
+% \begin{macro}{\caption@teststar}
+% \changes{v1.1}{2007/05/08}{This macro and its usage added}
+% \changes{v1.1e}{2007/10/28}{\cs{caption@teststar@} added}
+% |\caption@teststar|\marg{cmd}\marg{star-arg}\marg{non-star-arg}\\
+% expands \meta{cmd} with either argument \marg{star-arg} or
+% \meta{non-star-arg}, depending on if the next char is a star (or not).\par
+% |\caption@teststar@|\marg{cmd}\marg{star-arg}\marg{non-star-arg}\\
+% will test the catcode of the character \@ additionally.
+% \begin{macrocode}
+\newcommand*\caption@teststar[3]{%
+ \@ifstar{#1{#2}}{#1{#3}}}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@teststar@[3]{%
+ \@ifstar{#1{#2}}{\caption@ifatletter{#1{#2}}{#1{#3}}}}
+\AtBeginDocument{\let\caption@teststar@\caption@teststar}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@ifatletter}
+% \changes{v1.1e}{2007/10/28}{This macro added}
+% |\caption@ifatletter|\marg{yes-code}\marg{no-code}\\
+% will either expand \meta{yes-code} or \meta{no-code},
+% depending on the catcode of the character \@.
+% \begin{macrocode}
+\newcommand*\caption@ifatletter{%
+ \ifnum\the\catcode`\@=11
+ \expandafter\@firstoftwo
+ \else
+ \expandafter\@secondoftwo
+ \fi}
+% \end{macrocode}
+% \begin{macrocode}
+\AtBeginDocument{\let\caption@ifatletter\@secondoftwo}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@withoptargs}
+% \changes{v1.1}{2007/08/12}{This macro added}
+% \changes{v1.5}{2012/04/09}{This macro revised}
+% |\caption@withoptargs|\marg{cmd}\\
+% collects a star and all optional arguments, and expands \meta{cmd}
+% afterwards with the collected stuff as first argument.
+% \begin{macrocode}
+\newcommand*\caption@withoptargs[1]{%
+ \@ifstar
+ {\def\caption@tempa{*}\caption@@withoptargs{#1}}%
+ {\def\caption@tempa{}\caption@@withoptargs{#1}}}
+% \end{macrocode}
+% \begin{macrocode}
+\def\caption@@withoptargs#1{%
+ \@ifnextchar[%]
+ {\caption@@@withoptargs{#1}}%
+ {\caption@@@@withoptargs{#1}}}
+% \end{macrocode}
+% \begin{macrocode}
+\def\caption@@@withoptargs#1[#2]{%
+ \l@addto@macro\caption@tempa{[{#2}]}%
+ \caption@@withoptargs{#1}}
+% \end{macrocode}
+% \begin{macrocode}
+\def\caption@@@@withoptargs#1{%
+ \def\caption@tempb{#1}%
+ \expandafter\caption@tempb\expandafter{\caption@tempa}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@gobble}
+% \changes{v1.4}{2011/08/19}{This macro added}
+% |\caption@gobble*|\oarg{arg}\oarg{\ldots}\marg{arg}\\
+% is similar to |\@gobble| but gobbles a star and optional arguments as well.
+% \begin{macrocode}
+\DeclareRobustCommand*\caption@gobble{%
+ \caption@withoptargs\@gobbletwo}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@AtBeginDocument}
+% \changes{v1.1}{2007/04/13}{This macro and its usage added}
+% \changes{v1.2e}{2010/01/09}{Adapted to the combine document class}
+% |\caption@AtBeginDocument*|\marg{code}\\
+% is similar to |\AtBeginDocument| but the execution of code will be
+% surrounded by two |\Package|\-|Info|s.
+% The starred variant causes the code to be executed after all code
+% specified using the non-starred variant.
+% \begin{macrocode}
+\let\caption@begindocumenthook\@empty
+\let\caption@@begindocumenthook\@empty
+% \end{macrocode}
+% \begin{macrocode}
+\def\caption@AtBeginDocument{%
+ \caption@teststar\g@addto@macro
+ \caption@@begindocumenthook\caption@begindocumenthook}
+%\@onlypreamble\caption@AtBeginDocument
+% \end{macrocode}
+% \begin{macrocode}
+\AtBeginDocument{%
+ \caption@InfoNoLine{Begin \noexpand\AtBeginDocument code}%
+% \end{macrocode}
+% \begin{macrocode}
+ \def\caption@AtBeginDocument{%
+ \@ifstar{\g@addto@macro\caption@@begindocumenthook}\@firstofone}%
+ \caption@begindocumenthook
+ \let\caption@begindocumenthook\relax
+% \end{macrocode}
+% \begin{macrocode}
+ \def\caption@AtBeginDocument{%
+ \@ifstar\@firstofone\@firstofone}%
+ \caption@@begindocumenthook
+ \let\caption@@begindocumenthook\relax
+% \end{macrocode}
+% \begin{macrocode}
+ \caption@InfoNoLine{End \noexpand\AtBeginDocument code}}
+% \end{macrocode}
+% \end{macro}
+%
+% \section{Information, Warnings, and Errors}
+%
+% \begin{macro}{\caption@Info}
+% \changes{v1.3}{2010/10/25}{Moved from package to kernel}
+% |\caption@Info|\marg{message}\\
+% issues an info message (with code line indication).
+% \begin{macrocode}
+\newcommand*\caption@Info[1]{%
+ \PackageInfo{caption}{#1}}
+% \end{macrocode}
+% \end{macro}
+% \begin{macro}{\caption@InfoNoLine}
+% \changes{v1.3}{2010/10/25}{Moved from package to kernel}
+% |\caption@InfoNoLine|\marg{message}\\
+% issues an info message without code line indication.
+% \Note{The \cs{@gobble} at the end of the 2nd argument of
+% \cs{PackageInfo} suppresses the line number info.
+% See TLC2\cite{TLC2}, A.4.7, p885 for details.}
+% \begin{macrocode}
+\newcommand*\caption@InfoNoLine[1]{%
+ \caption@Info{#1\@gobble}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@Warning}
+% \changes{v1.1c}{2007/10/14}{This macro added, will now be used for warnings}
+% |\caption@Warning|\marg{message}\\
+% issues a warning message (with code line indication).
+% \begin{macrocode}
+\newcommand*\caption@Warning[1]{%
+ \caption@WarningNoLine{#1\on@line}}
+% \end{macrocode}
+% \end{macro}
+% \begin{macro}{\caption@WarningNoLine}
+% \changes{v1.1c}{2007/10/14}{This macro added, will now be used for warnings}
+% |\caption@WarningNoLine|\marg{message}\\
+% issues a warning message without code line indication.
+% \begin{macrocode}
+\newcommand*\caption@WarningNoLine[1]{%
+ \PackageWarning{caption}{#1.^^J\caption@wh\@gobbletwo}}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@wh{%
+ See the caption package documentation for explanation.}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@Error}
+% \changes{v1.0j}{2007/01/20}{This macro added, will now be used for errors}
+% \changes{v1.0o}{2007/04/11}{Renamed from \cs{caption@error} to \cs{caption@Error}}
+% \changes{v1.1b}{2007/09/18}{Usage of \cs{caption@Package} removed}
+% \changes{v2.2a}{2020/09/28}{\cs{caption@eh} renamed to \cs{caption@@eh} and revised}
+% |\caption@Error|\marg{message}\\
+% issues an error message (with code line indication).
+% \begin{macrocode}
+\newcommand*\caption@Error[1]{%
+ \PackageError{caption}{#1}{\caption@@eh{caption}}}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@@eh[1]{%
+ If you do not understand this error, please take a closer look\MessageBreak
+ at the documentation of the `#1' package, especially the\MessageBreak
+ section about errors.\MessageBreak\@ehc}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@KV@err}
+% \changes{v1.1b}{2007/09/18}{This macro added}
+% |\caption@KV@err|\marg{message}\\
+% will be used to issue an error while parsing the key-value (package)
+% options.
+% \begin{macrocode}
+\let\caption@KV@err\caption@Error
+% \end{macrocode}
+% \end{macro}
+%
+% \section{Using the keyval package}
+%
+% We need the \package{keyval} package for option handling, so we load it here.\par
+% \emph{TODO:} Use some recent stuff instead, for example kvdefinekey and kvsetkeys.
+% \begin{macrocode}
+\RequirePackage{keyval}[1997/11/10]
+% \end{macrocode}
+%
+% \begin{macro}{\undefine@key}
+% |\undefine@key|\marg{family}\marg{key}\\
+% is the opposite of |\define@key|, it removes a keyval definition.
+% \begin{macrocode}
+\providecommand*\undefine@key[2]{%
+ \@nameundef{KV@#1@#2}\@nameundef{KV@#1@#2@default}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\@onlypreamble@key}
+% \changes{v1.1}{2007/07/22}{This macro added}
+% \changes{v1.1e}{2007/11/01}{\cs{KV@err} will be used now instead of \cs{@notprerr}}
+% |\onlypreamble@key|\marg{family}\marg{key}\\
+% marks a keyval definition only valid in the document preamble, analogous to
+% |\@only|\-|preamble| from \LaTeXe.
+% \begin{macrocode}
+\providecommand*\@preamble@keys{}
+\providecommand*\@onlypreamble@key[2]{\@cons\@preamble@keys{{#1}{#2}}}
+\@onlypreamble\@onlypreamble@key
+\@onlypreamble\@preamble@keys
+% \end{macrocode}
+% \begin{macrocode}
+\providecommand*\@notprerr@key[1]{\KV@err{Can be used only in preamble}}
+% \end{macrocode}
+% \begin{macrocode}
+\caption@AtBeginDocument*{%
+ \def\@elt#1#2{\expandafter\let\csname KV@#1@#2\endcsname\@notprerr@key}%
+ \@preamble@keys
+ \let\@elt\relax}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\DeclareCaptionOption}
+% |\DeclareCaptionOption*|\marg{option}\oarg{default value}\marg{code}\\
+% We declare our options using these commands (instead of using
+% |\Declare|\-|Option| offered by \LaTeXe), so the keyval package is used.
+% The starred form makes the option available during the lifetime of the
+% current package only, so they can be used with |\use|\-|package|, but
+% \emph{not} with |\caption|\-|setup| later on.
+% \begin{macrocode}
+\newcommand*\DeclareCaptionOption{%
+ \caption@teststar\caption@declareoption\AtEndOfPackage\@gobble}
+\@onlypreamble\DeclareCaptionOption
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@declareoption[2]{%
+ #1{\undefine@key{caption}{#2}}\caption@declare@option{#2}}
+\@onlypreamble\caption@declareoption
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@declare@option{%
+ \define@key{caption}}
+%% no \@onlypreamble\caption@declare@option since it will be used by \captionsetup
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\DeclareCaptionOptionNoValue}
+% \changes{v1.1c}{2007/10/06}{This macro added}
+% |\DeclareCaptionOptionNoValue*|\marg{option}\marg{code}\\
+% is the same as |\DeclareCaptionOption| but issues an error if a value is
+% given.
+% \begin{macrocode}
+\newcommand*\DeclareCaptionOptionNoValue{%
+ \caption@teststar\caption@declareoption@novalue\AtEndOfPackage\@gobble}
+\@onlypreamble\DeclareCaptionOptionNoValue
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand\caption@declareoption@novalue[3]{%
+ \caption@declareoption{#1}{#2}[\KV@err]{%
+ \caption@option@novalue{#2}{##1}{#3}}}
+\@onlypreamble\caption@declareoption@novalue
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@option@novalue[2]{%
+ \ifx\KV@err#2%
+ \expandafter\@firstofone
+ \else
+ \KV@err{No value allowed for #1}%
+ \expandafter\@gobble
+ \fi}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\ifcaptionsetup@star}
+% \changes{v1.2a}{2008/01/12}{This macro added}
+% If the starred form of |\caption|\-|setup| is used, this will be set to |true|.
+% (It will be reset to |false| at the end of |\caption@set|\-|keys|.)
+% \begin{macrocode}
+\newif\ifcaptionsetup@star
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\captionsetup}
+% \changes{v1.0a}{2004/01/17}{Bugfix: Missing \% added}
+% \changes{v1.1}{2007/07/22}{Starred-variant added}
+% \changes{v1.1e}{2007/07/27}{Inside packages the starred variant will be used automatically}
+% \changes{v1.2}{2007/11/16}{Bugfix 07-11-09: `space hack' added}
+% \changes{v1.2a}{2008/01/12}{\cs{ifcaptionsetup@star} will be set now}
+% \changes{v1.5}{2012/04/09}{Support of multiple optional arguments added}
+% \changes{v1.8h}{2020/01/03}{Syntax check of saved options added}
+% |\captionsetup*|\oarg{type}\ldots\marg{keyval-list of options}\\
+% applies the given list of options.
+% If the optional argument `type' is specified, we simply save or append
+% the option list, otherwise we `execute' it with |\set|\-|keys|.
+% (The non-starred variant issues a warning if \meta{keyval-list of options}
+% is not used later on.)
+% \Note{The starred variant will be used inside packages automatically.}
+% \begin{macrocode}
+\newcommand*\captionsetup{%
+ \caption@teststar@\@captionsetup\@gobble\@firstofone}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\@captionsetup[1]{%
+ \captionsetup@startrue#1\captionsetup@starfalse
+ \@ifnextchar[%]
+ \caption@setup@options\caption@setup}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@setup{\caption@setkeys{caption}}
+% \end{macrocode}
+% \begin{macrocode}
+\def\caption@setup@options[#1]{%
+ \@ifnextchar[%]
+ {\caption@stepthecounter
+ \caption@withoptargs{\@expandtwoargs
+ \caption@setup@options@i{#1}{@\caption@thecounter}}}%
+ {\caption@setup@options@{#1}}}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@setup@options@i[4]{%
+ \caption@declare@option{#2}[]{\captionsetup#3{#4}}%
+ \caption@setup@options@{#1}{#2}}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@setup@options@[2]{%
+ \@bsphack
+ \ifcaptionsetup@star\captionsetup@starfalse\else\caption@addtooptlist{#1}\fi
+ \caption@checkoptions{#2}%
+ \expandafter\caption@l@addto@list\csname caption@opt@#1\endcsname{#2}%
+ \@esphack}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@checkoptions}
+% \changes{v1.8h}{2020/01/03}{This macro added}
+% |\caption@checkoptions|\marg{keyval-list of options}\\
+% checks the syntax of the given options by executing them inside a group.
+% \begin{macrocode}
+\newcommand*\caption@checkoptions[1]{%
+ \begingroup
+ \caption@prepare@optioncheck
+ \caption@setup{#1}%
+ \endgroup}
+% \end{macrocode}
+% \begin{macrocode}
+\providecommand*\caption@prepare@optioncheck{}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\IfCaptionOptionCheck}
+% \changes{v1.10}{2020/05/10}{This macro added}
+% |\IfCaptionOptionCheck|\marg{yes-code}\marg{no-code}\\
+% executes the \meta{yes-code} if options are just checked for syntax,
+% and \meta{no-code} if not.
+% \begin{macrocode}
+\let\IfCaptionOptionCheck\@secondoftwo
+% \end{macrocode}
+% \begin{macrocode}
+\g@addto@macro\caption@prepare@optioncheck{%
+ \let\IfCaptionOptionCheck\@firstoftwo}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\clearcaptionsetup}
+% \changes{v1.1}{2007/07/29}{Optional argument added}
+% \changes{v1.1}{2007/08/17}{Starred variant added}
+% \changes{v1.1e}{2007/07/27}{Inside packages the starred variant will be used automatically}
+% \changes{v1.2}{2007/11/16}{Bugfix 07-11-09: `space hack' added}
+% |\clearcaptionsetup*|\oarg{option}\marg{type}\\
+% removes the saved option list associated with \meta{type}.
+% If \meta{option} is given, only this option will be removed from the list.
+% (The starred variant does not issue warnings.)
+% \Note{The starred variant will be used inside packages automatically.}
+% \begin{macrocode}
+\newcommand*\clearcaptionsetup{%
+ \caption@teststar@\@clearcaptionsetup\@gobble\@firstofone}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\@clearcaptionsetup[1]{%
+ \let\caption@tempa#1%
+ \@testopt\@@clearcaptionsetup{}}
+% \end{macrocode}
+% \begin{macrocode}
+\def\@@clearcaptionsetup[#1]#2{%
+ \@bsphack
+ \expandafter\caption@ifempty@list\csname caption@opt@#2\endcsname
+ {\caption@tempa{\caption@Warning{Option list `#2' undefined}}}%
+ {\ifx,#1,%
+ \caption@clearsetup{#2}%
+ \else
+ \caption@@removefromsetup{#1}{#2}%
+ \fi}%
+ \@esphack}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@clearsetup[1]{%
+ \caption@removefromoptlist{#1}%
+ \@nameundef{caption@opt@#1}}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@removefromsetup{%
+ \let\caption@tempa\@gobble
+ \caption@@removefromsetup}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@@removefromsetup[2]{%
+ \expandafter\let\expandafter\@tempa\csname caption@opt@#2\endcsname
+ \expandafter\let\csname caption@opt@#2\endcsname\@undefined
+ \def\@tempb##1=##2\@nil{##1}%
+ \edef\@tempc{#1}%
+ \@for\@tempa:=\@tempa\do{%
+ \edef\@tempd{\expandafter\@tempb\@tempa=\@nil}%
+ \ifx\@tempd\@tempc
+ \let\caption@tempa\@gobble
+ \else
+ \expandafter\expandafter\expandafter\caption@l@addto@list
+ \expandafter\csname caption@opt@#2\expandafter\endcsname
+ \expandafter{\@tempa}%
+ \fi}%
+ \expandafter\caption@ifempty@list\csname caption@opt@#2\endcsname
+ {\caption@removefromoptlist{#2}}{}%
+ \caption@tempa{\caption@Warning{%
+ Option `#1' was not in list `#2'}}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\showcaptionsetup}
+% \changes{v1.0d}{2005/05/03}{Optimized for memory usage}
+% \changes{v1.1}{2007/07/29}{Bugfix: Does not expand option list anymore}
+% \changes{v1.2}{2007/11/16}{Bugfix 07-11-09: `space hack' added}
+% |\showcaptionsetup|\oarg{package}\marg{type}\\
+% shows the saved option list which is associated with \meta{type}
+% (as warning message).
+% \begin{macrocode}
+\newcommand*\showcaptionsetup[2][\@firstofone]{%
+ \@bsphack
+ \GenericWarning{}{%
+ #1 Caption Info: Option list on `#2'\MessageBreak
+ #1 Caption Data: \@ifundefined{caption@opt@#2}{%
+ -none-%
+ }{%
+ {\expandafter\expandafter\expandafter\strip@prefix
+ \expandafter\meaning\csname caption@opt@#2\endcsname}%
+ }}%
+ \@esphack}
+% \end{macrocode}
+% \end{macro}
+%
+% \changes{v1.1}{2007/07/02}{Option \opt{options=} added}
+% \changes{v1.3}{2010/09/05}{Option \opt{options*=} added}
+% \changes{v1.4b}{2012/01/12}{Option \opt{options*=} removed}
+% \begin{macrocode}
+\DeclareCaptionOption{options}{\caption@setoptions{#1}}
+% \end{macrocode}
+%
+% \begin{macro}{\caption@setoptions}
+% \changes{v1.0g}{2006/01/03}{Optional argument added}
+% \changes{v1.0h}{2006/01/26}{Revised}
+% \changes{v1.0j}{2007/01/30}{Optional argument removed}
+% \changes{v1.1}{2007/04/11}{Usage of \cs{clearcaptionsetup} added}
+% \changes{v1.1}{2007/05/09}{Renamed from \cs{caption@settype} to \cs{caption@setoptions}}
+% \changes{v1.2}{2007/12/03}{Definition of \cs{caption@iftypewarning} removed}
+% \changes{v1.3}{2010/09/05}{Starred variant added}
+% \changes{v1.4b}{2012/01/12}{Starred variant removed}
+% |\caption@setoptions|\marg{type or environment or\ldots}\\
+% applies caption options which have been saved with |\caption|\-|setup|\oarg{type}.
+% To prevent multiple application the list will be cleared (locally) afterwards.
+% \begin{macrocode}
+\newcommand*\caption@setoptions[1]{%
+ \caption@Debug{options=#1}%
+ \expandafter\let\expandafter\caption@opt\csname caption@opt@#1\endcsname
+ \ifx\caption@opt\relax \else
+ \caption@xsetup\caption@opt
+ \caption@clearsetup{#1}%
+ \fi}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@xsetup[1]{\expandafter\caption@setup\expandafter{#1}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@addtooptlist}
+% \changes{v1.1}{2007/07/22}{This macro added}
+% \begin{macro}{\caption@removefromoptlist}
+% \changes{v1.1}{2007/07/22}{This macro added}
+% \changes{v1.2c}{2008/08/24}{Fatal typo corrected}
+% |\caption@addtooptlist|\marg{type}\\
+% |\caption@removefromoptlist|\marg{type}\\
+% adds or removes an \meta{type} to the list of unused caption options.
+% Note that the catcodes of \meta{type} are sanitized here so removing
+% \meta{type} from the list do not fail when the \package{float} package
+% is used (since |\float@getstyle| gives a result which tokens have catcode
+% 12 $=$ ``other'').
+% \begin{macrocode}
+\newcommand*\caption@addtooptlist[1]{%
+ \@ifundefined{caption@opt@#1@lineno}%
+ {\caption@dooptlist\caption@g@addto@list{#1}%
+ \expandafter\xdef\csname caption@opt@#1@lineno\endcsname{\the\inputlineno}}%
+ {}}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@removefromoptlist[1]{%
+ \caption@dooptlist\caption@g@removefrom@list{#1}%
+ \global\expandafter\let\csname caption@opt@#1@lineno\endcsname\@undefined}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@dooptlist[2]{%
+ \begingroup
+ \edef\@tempa{#2}\@onelevel@sanitize\@tempa
+ \expandafter#1\expandafter\caption@optlist\expandafter{\@tempa}%
+ \endgroup}
+% \end{macrocode}
+% \begin{macrocode}
+\AtEndDocument{%
+ \caption@for@list\caption@optlist
+ {\caption@WarningNoLine{%
+ Unused \string\captionsetup[#1]
+ on input line \csname caption@opt@#1@lineno\endcsname}}}
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+%
+% \begin{macro}{\caption@setkeys}
+% \changes{v1.0g}{2006/01/03}{This macro added}
+% \changes{v1.0j}{2007/01/20}{Bugfix: Usage of \cs{caption@keydepth} added}
+% \changes{v1.0j}{2007/01/30}{Optional argument added}
+% \changes{v1.0n}{2007/04/08}{\cs{caption@keydepth} is now a command instead of a counter}
+% \changes{v1.1b}{2007/09/18}{Usage of \cs{caption@Package} removed, we use \cs{caption@KV@err} instead}
+% \changes{v1.2}{2007/11/16}{Bugfix 07-11-09: `space hack' added}
+% \changes{v1.2a}{2008/01/12}{\cs{captionsetup@starfalse} added}
+% \changes{v1.2d}{2009/09/30}{Bugfix 09-09-29: Missing error handler will be defined automatically}
+% \changes{v1.4}{2011/08/24}{Redefinition of \cs{XKV@err} added}
+% |\caption@setkeys|\oarg{package}\marg{family}\marg{key-values}\\
+% expands to |\setkeys|\marg{family}\marg{key-values},
+% but lets the error messages not refer to the \package{keyval} package
+% but to the \meta{package} package instead.
+% \begin{macrocode}
+\newcommand*\caption@setkeys{\@dblarg\caption@@setkeys}
+% \end{macrocode}
+% \begin{macrocode}
+\long\def\caption@@setkeys[#1]#2#3{%
+ \@bsphack
+% \end{macrocode}
+% \begin{macrocode}
+ \expandafter\let\csname ORI@KV@err\caption@keydepth\endcsname\KV@err
+ \expandafter\let\csname ORI@KV@errx\caption@keydepth\endcsname\KV@errx
+ \expandafter\let\csname ORI@XKV@err\caption@keydepth\endcsname\XKV@err
+ \edef\caption@keydepth{\caption@keydepth i}%
+% \end{macrocode}
+% \begin{macrocode}
+ \expandafter\let\expandafter\KV@err\csname #1@KV@err\endcsname
+ \ifx\KV@err\relax
+ \def\KV@err##1{\PackageError{#1}{##1}{%
+ See the #1 package documentation for explanation.}}%
+ \fi
+ \def\KV@errx{\KV@err}%
+ \def\XKV@err{\let\@tempa\XKV@tkey\KV@err}%
+% \end{macrocode}
+% \begin{macrocode}
+ \caption@Debug{\noexpand\setkeys{#2}{#3}}%
+ \setkeys{#2}{#3}%
+% \end{macrocode}
+% \begin{macrocode}
+ \edef\caption@keydepth{\expandafter\@gobble\caption@keydepth}%
+ \expandafter\let\expandafter\KV@err\csname ORI@KV@err\caption@keydepth\endcsname
+ \expandafter\let\expandafter\KV@errx\csname ORI@KV@errx\caption@keydepth\endcsname
+ \expandafter\let\expandafter\XKV@err\csname ORI@XKV@err\caption@keydepth\endcsname
+% \end{macrocode}
+% \begin{macrocode}
+ \ifx\caption@keydepth\@empty \captionsetup@starfalse \fi
+% \end{macrocode}
+% \begin{macrocode}
+ \@esphack}
+% \end{macrocode}
+% \begin{macrocode}
+\let\caption@keydepth\@empty
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@ExecuteOptions}
+% \changes{v1.1}{2007/07/15}{This macro added}
+% \changes{v1.3}{2010/09/04}{Depends on package now}
+% |\caption@ExecuteOptions|\marg{package}\marg{key-value options}\\
+% applies the given options using the keyval interface, so we use this one
+% instead of |\Execute|\-|Options| offered by \LaTeXe.
+% \begin{macrocode}
+\newcommand*\caption@ExecuteOptions[2]{%
+ \expandafter\@expandtwoargs\csname caption@setkeys@#1\endcsname{#1}{#2}}%
+\@onlypreamble\caption@ExecuteOptions
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@ProcessOptions}
+% \changes{v1.0a}{2004/01/23}{Bugfix, see \purett{news:400D360C.9678329F@gmx.net} for details}
+% \changes{v1.0g}{2006/01/03}{Improvement, uses \cs{caption@setkeys} instead of \cs{setkeys}}
+% \changes{v1.0h}{2006/02/23}{Bugfix, now processes only those global options which have a default value}
+% \changes{v1.0j}{2007/01/30}{\cs{ProcessOptionsWithKV} renamed to \cs{caption@ProcessOptions} and moved from the package to the kernel}
+% \changes{v1.1}{2007/04/17}{Starred variant added}
+% |\caption@ProcessOptions*|\marg{package}\\
+% processes the given options using the keyval package, so we use this one
+% instead of |\Process|\-|Options| offered by \LaTeXe.
+% The starred variant does not process the global options.
+% (This code was taken from the \package{hyperref} package\cite{hyperref}
+% \version{6.74} and modified.)
+% \begin{macrocode}
+\newcommand*\caption@ProcessOptions{%
+ \caption@teststar\caption@@ProcessOptions\@gobble\@firstofone}
+\@onlypreamble\caption@ProcessOptions
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand\caption@@ProcessOptions[2]{%
+ \let\@tempc\relax
+ \let\caption@tempa\@empty
+ #1{% \@firstofone -or- \@gobble
+ \@for\CurrentOption:=\@classoptionslist\do{%
+ \@ifundefined{KV@#2@\CurrentOption}{}{%
+ \@ifundefined{KV@#2@\CurrentOption @default}{%
+ \PackageInfo{#2}{Global option `\CurrentOption' ignored}%
+ }{%
+ \PackageInfo{#2}{Global option `\CurrentOption' processed}%
+ \edef\caption@tempa{\caption@tempa\CurrentOption,}%
+ \@expandtwoargs\@removeelement\CurrentOption
+ \@unusedoptionlist\@unusedoptionlist
+ }%
+ }%
+ }%
+ \let\CurrentOption\@empty
+ }%
+ \caption@ExecuteOptions{#2}{\caption@tempa\@ptionlist{\@currname.\@currext}}%
+ \AtEndOfPackage{\let\@unprocessedoptions\relax}}
+\@onlypreamble\caption@@ProcessOptions
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@SetupOptions}
+% \changes{v1.3}{2010/09/04}{This macro added}
+% |\caption@SetupOptions|\marg{package}\marg{code}\\
+% After application of this command |\caption@Execute|\-|Options| and
+% |\use|\-|package| will both be mapped to \meta{code} with \meta{package}
+% and \meta{options} as arguments |#1| and |#2|.
+% (This helps avoiding ``Option clash'' errors.)
+% \begin{macrocode}
+\newcommand\caption@SetupOptions[2]{%
+ \@namedef{caption@setkeys@#1}##1##2{#2}%
+ \expandafter\@onlypreamble\csname caption@setkeys@#1\endcsname
+ \@cons\caption@SetupOptions@list{{#1}}}
+\@onlypreamble\caption@SetupOptions
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@SetupOptions@list{}
+\@onlypreamble\caption@SetupOptions@list
+% \end{macrocode}
+% \begin{macrocode}
+\let\caption@onefilewithoptions\@onefilewithoptions
+\def\@onefilewithoptions#1[#2]{%
+ \begingroup
+ \def\@tempa{%
+ \endgroup
+ \caption@onefilewithoptions{#1}[{#2}]}%
+ \def\@tempb{#1}%
+ \def\@elt##1{%
+ \def\@tempc{##1}%
+ \ifx\@tempb\@tempc
+ \def\@tempa{%
+ \endgroup
+ \caption@ExecuteOptions{#1}{#2}%
+ \caption@onefilewithoptions{#1}[]}%
+ \fi}
+ \caption@SetupOptions@list
+ \@tempa}
+\@onlypreamble\caption@onefilewithoptions
+% \end{macrocode}
+% \end{macro}
+%
+% \section{Declaring and setting key values}
+%
+% \begin{macro}{\caption@decl}
+% \changes{v2.0}{2019/09/10}{This macro added}
+% |\caption@decl|\oarg{command}\marg{option}\marg{name}\\
+% is used for declaring boxes, fonts, formats etc.
+% (It defines |\caption@|\meta{option}|@|\meta{name}
+% using the given \meta{command}.)
+% \begin{macrocode}
+\newcommand*\caption@decl[3][\def]{%
+ \global\long\expandafter#1\csname caption@#2@#3\endcsname}
+\@onlypreamble\caption@decl
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@ifdecl}
+% \changes{v2.0}{2019/09/10}{This macro added}
+% |\caption@ifdecl|\marg{option}\marg{name}\marg{yes-code}\marg{no-code}\\
+% checks if the given \meta{option} and \meta{name} combination is
+% already declared.
+% \begin{macrocode}
+\newcommand*\caption@ifdecl[2]{%
+ \@ifundefined{caption@#1@#2}\@secondoftwo\@firstoftwo}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@checkdecl}
+% \changes{v2.0}{2019/09/10}{This macro added}
+% |\caption@checkdecl|\marg{option}\marg{name}\marg{yes-code}\\
+% behaves similar to |\caption@if|\-|decl| but issues an error message if the
+% given \meta{option} plus \meta{name} is not defined.
+% \begin{macrocode}
+\newcommand*\caption@checkdecl[2]{%
+ \caption@ifdecl{#1}{#2}%
+ \@firstofone
+ {\caption@Error{Undefined #1 `#2'}%
+ \@gobble}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@set}
+% \changes{v2.0}{2019/09/10}{This macro added}
+% \changes{v2.0}{2020/07/26}{Uses \cs{def} instead of \cs{let} internally}
+% |\caption@set|\marg{option}\marg{name}\\
+% sets the declared \meta{option} to \meta{name}, for example
+% |label|\-|format| to |simple|.
+% Note that since version \version{2.0} future changes to \meta{name}
+% (via |\caption@decl|) will effect the outcome,
+% for example |\caption@decl{labelformat}{simple}\ldots| will not only change
+% the definition of the label format |simple| but also effect the current
+% label format if set to |simple| (via |\caption@set|).
+% \begin{macrocode}
+\newcommand*\caption@set{%
+ \caption@maparg\caption@@set}%
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@@set[3]{%
+ \caption@checkdecl{#1}{#3}{%
+% \expandafter\edef\csname caption@@#2\endcsname{#3}% could be used for debugging
+ \expandafter\def\csname caption@#2\expandafter\endcsname\expandafter{\csname caption@#1@#3\endcsname}}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\SetCaptionDefault}
+% \changes{v2.0}{2019/09/10}{This macro added}
+% \changes{v2.0}{2020/07/28}{Check for `default' added to prevent infinite loop}
+% |\SetCaptionDefault*|\marg{option}\marg{name}\\
+% sets the default value for the \meta{option}.
+% The starred variant is only relevant for setting default values for lengths
+% like |margin|. (See definition of |\caption@set|\-|default@length| for
+% details.)
+% \begin{macrocode}
+\newcommand*\SetCaptionDefault{%
+ \caption@teststar\caption@setdefault\def\edef}
+\@onlypreamble\SetCaptionDefault
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@setdefault[2]{%
+ \@ifundefined{caption@setdefault@#2}%
+ {\caption@maparg\caption@@setdefault}%
+ {\@nameuse{caption@setdefault@#2}{#1}}%
+ {#2}}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@@setdefault[3]{%
+ \caption@ifdefault{#3}%
+ {\caption@Error{Invalid argument for \string\SetCaptionDefault: `#3'}}% would cause an infinite loop otherwise
+ {\caption@@set{#1}{#2@default}{#3}}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@ifdefault}
+% \changes{v2.0}{2020/08/23}{This macro added}
+% |\caption@ifdefault|\marg{value}\marg{yes-code}\marg{no-code}\\
+% expands to \meta{yes-code} if the \meta{value} expands to `default',
+% and to \meta{no-code} otherwise.
+% \begin{macrocode}
+\newcommand*\caption@ifdefault{\caption@ifequal{default}}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@ifequal[2]{%
+ \edef\caption@tempa{#1}%
+ \edef\caption@tempb{#2}%
+ \ifx\caption@tempa\caption@tempb
+ \expandafter\@firstoftwo
+ \else
+ \expandafter\@secondoftwo
+ \fi}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@setmapping}
+% \changes{v2.0}{2020/08/23}{This macro added}
+% |\caption@setmapping|\marg{source option}\marg{destination option}\\
+% sets a mapping from the \meta{source option} to the
+% \meta{destination option}, for example |label|\-|font| to |font|
+% since |label|\-|font| does not have any own definitions but shares
+% them with |font|.
+% \begin{macrocode}
+\newcommand*\caption@setmapping[2]{%
+ \@namedef{caption@map@#1}{#2}}
+\@onlypreamble\caption@setmapping
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@maparg}
+% \changes{v2.0}{2020/08/23}{This macro added}
+% |\caption@maparg|\marg{command}\marg{option}\\
+% similar to |\@dblarg| but either duplicates the given \meta{option} or
+% expands it to \meta{destination option} plus \meta{option} if a mapping
+% was defined for the given option (via |\caption@set|\-|mapping|).
+% \begin{macrocode}
+\newcommand*\caption@maparg[2]{%
+ \@ifundefined{caption@map@#2}%
+ {#1{#2}}%
+ {#1{\csname caption@map@#2\endcsname}}%
+ {#2}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@switchdefault}
+% \changes{v2.0}{2020/08/01}{This macro added}
+% |\caption@switchdefault\marg{option}|\marg{code with \#1}\marg{name}\\
+% like |\Set|\-|Caption|\-|Default| but first expands the given code with the
+% to-be-overwritten internal command as argument, so it can be stored (and
+% restored later on).
+% The main purpose of this command is switching default settings in
+% \package{babel} language packages, e.g.:
+% \begin{quote}|\caption@switchdefault{labelfont}{\babel@save #1}{sc}|\end{quote}
+% \begin{macrocode}
+\def\caption@switchdefault#1#2{%
+ \def\caption@tempa##1{#2}%
+ \expandafter\caption@tempa\csname caption@#1@default\endcsname
+ \caption@setdefault\def{#1}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@restoredefault}
+% \changes{v2.0}{2020/08/01}{This macro added}
+% |\caption@restoredefault\marg{option}|\marg{command}\\
+% restores a default setting which was stored to \meta{command} before
+% (via |\caption@switch|\-|default|).
+% \begin{macrocode}
+\def\caption@restoredefault#1#2{%
+ \caption@checkdecl{#1}{default}{%
+ \caption@ifdefined#2{%
+ \expandafter\let\csname caption@#1@default\endcsname#2%
+ \let#2\@undefined}{}}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\SetCaptionFallback}
+% \changes{v2.2}{2020/09/21}{This macro added}
+% |\SetCaptionFallback|\marg{option}\marg{name}\\
+% sets the fallback value for the \meta{option}.
+% \begin{macrocode}
+\newcommand*\SetCaptionFallback{%
+ \caption@maparg\caption@@setfallback}
+\@onlypreamble\SetCaptionFallback
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@@setfallback[3]{%
+ \caption@ifequal{fallback}{#3}%
+ {\caption@Error{Invalid argument for \string\SetCaptionFallback: `#3'}}% would cause an infinite loop otherwise
+ {\caption@@set{#1}{#2@fallback}{#3}}}
+\@onlypreamble\caption@@setfallback
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@decl@package}
+% \changes{v2.0}{2020/07/26}{This macro added}
+% |\caption@decl@package|\marg{option}\marg{cmd}\oarg{package}\marg{name}\ldots\\
+% Helper command to declare a caption package option value which is dependent
+% on the existence of a specific package, for example the |font| value
+% |one|\-|half|\-|spacing| which is dependent on the \package{setspace}
+% package.
+% \begin{macrocode}
+\newcommand*\caption@decl@package[2]{%
+ \@ifnextchar[%]
+ {\caption@declare@package{#1}{#2}}%
+ {\caption@declarepackage{#1}{#2}}}
+\@onlypreamble\caption@decl@package
+% \end{macrocode}
+% \begin{macrocode}
+\def\caption@declare@package#1#2[#3]#4{%
+ \global\@namedef{caption@#1@#4@package}{#3}%
+ #2{#4}}
+\@onlypreamble\caption@declare@package
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@declarepackage[3]{%
+ \global\@nameundef{caption@#1@#3@package}%
+ #2{#3}}
+\@onlypreamble\caption@declarepackage
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@load@package}
+% \changes{v2.0}{2020/07/26}{This macro added}
+% |\caption@load@package|\marg{option}\marg{value}\\
+% If the given option value needs a package, it will be loaded automatically.
+% \begin{macrocode}
+\newcommand*\caption@load@package[2]{%
+ \expandafter\let\expandafter\caption@tempa\csname caption@#1@#2@package\endcsname
+ \caption@ifdefined\caption@tempa
+ {\caption@requirepackage\caption@tempa{#1=#2}}%
+ {}}
+% \end{macrocode}
+% \end{macro}
+%
+% \section{Declaring and setting lengths}
+%
+% \begin{macro}{\DeclareCaptionLength}
+% \changes{v2.0}{2020/08/09}{This macro added}
+% |\DeclareCaptionLength|\marg{name}\marg{default value}\\
+% \begin{enumerate}
+% \item Defines a new length (dimension)
+% \item Installes a hook for |\caption@set|\-|default| so
+% |\caption@set|\-|default@length| will be used to set a default
+% value for this length
+% \item Sets a default value using |\Set|\-|Caption|\-|Default*|.
+% \end{enumerate}
+% \begin{macrocode}
+\newcommand*\DeclareCaptionLength[1]{%
+ \expandafter\newdimen\csname caption#1\endcsname
+ \@namedef{caption@setdefault@#1}##1{%
+ \caption@setdefault@length{##1}}%
+ \SetCaptionDefault*{#1}}
+\@onlypreamble\DeclareCaptionLength
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@setdefault@length}
+% \changes{v2.0}{2020/08/09}{This macro added}
+% |\caption@setdefault@length*|\marg{cmd}\marg{name}\marg{value}\\
+% sets a default value for the given \meta{length}, either using |\def|
+% (if the starred variant is used) or |\edef| (if the non-starred variant is
+% used).
+% \begin{macrocode}
+\newcommand*\caption@setdefault@length[3]{%
+ \expandafter#1\csname caption#2@default\endcsname{#3}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@setlength}
+% \changes{v2.0}{2020/08/09}{This macro added}
+% |\caption@setlength|\marg{name}\marg{value}\\
+% sets a length to either the given \meta{value} or to the default value if
+% \meta{value} is `default'.
+% \begin{macrocode}
+\newcommand*\caption@setlength[2]{%
+ \caption@ifdefault{#2}%
+ {\expandafter\let\expandafter\caption@tempa\csname caption#1@default\endcsname}%
+ {\def\caption@tempa{#2}}%
+ \expandafter\setlength\csname caption#1\endcsname\caption@tempa}
+% \end{macrocode}
+% \end{macro}
+%
+% \section{Margin resp. width}
+% \changes{v1.0n}{2007/04/01}{\cs{captionmarginx} renamed to \cs{captionmargin@}}
+% \changes{v1.0n}{2007/04/03}{Option `twoside' added}
+% \changes{v1.1}{2007/08/11}{Options `margin*', `minmargin', and `maxmargin' added}
+% \changes{v1.2}{2007/11/10}{Option `oneside' added}
+%
+% \begin{macro}{\captionmargin}
+% \begin{macro}{\captionwidth}
+% |\captionmargin| and |\captionwidth| contain the extra margin
+% resp. the total width used for captions. Please never set these values in
+% a direct way, they are just accessible in user documents to provide
+% compatibility to \version{1.x} of the \package{caption} package.\par
+% Note that we can only set one value at a time, `margin' \emph{or} `width'.
+% If |\caption|\-|width| is not zero we will take this value afterwards,
+% otherwise |\caption|\-|margin| and |\caption|\-|margin@|.
+% \begin{macrocode}
+\DeclareCaptionLength{margin}{0pt}
+\DeclareCaptionLength{margin@}{\the\captionmargin}
+\DeclareCaptionLength{width}{0pt}
+\newdimen\caption@tempdima
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+%
+% \begin{macrocode}
+\DeclareCaptionOption{margin}{\setcaptionmargin{#1}}
+\DeclareCaptionOption{margin*}{\setcaptionmargin*{#1}}
+\DeclareCaptionOption{width}{\setcaptionwidth{#1}}
+\DeclareCaptionOption{width*}{\setcaptionwidth*{#1}}
+% \end{macrocode}
+% \begin{macrocode}
+\DeclareCaptionOption{calcmargin}{\caption@setcalcmargin{#1}}
+\DeclareCaptionOption{calcmargin*}{\caption@setcalcmargin*{#1}}
+\DeclareCaptionOption{calcwidth}{\caption@setcalcwidth{#1}}
+\DeclareCaptionOption{calcwidth*}{\caption@setcalcwidth*{#1}}
+% \end{macrocode}
+% \begin{macrocode}
+\DeclareCaptionOption{twoside}[1]{\caption@set@bool\caption@iftwoside{#1}}
+\DeclareCaptionOptionNoValue{oneside}{\caption@set@bool\caption@iftwoside0}
+\caption@set@bool\caption@iftwoside{\if@twoside 1\else 0\fi}
+% \end{macrocode}
+% \begin{macrocode}
+\DeclareCaptionOption{minmargin}{\caption@setoptcmd\caption@minmargin{#1}}
+\DeclareCaptionOption{maxmargin}{\caption@setoptcmd\caption@maxmargin{#1}}
+% \end{macrocode}
+%
+% \begin{macro}{\setcaptionmargin}
+% \changes{v1.0f}{2005/10/24}{Renamed from \cs{caption@setmargin} to \cs{setcaptionmargin}}
+% \changes{v1.0f}{2005/10/24}{\cs{setcaptionmargin} enhanced so it can take left+right margin}
+% \changes{v1.1}{2007/08/11}{Starred variant added}
+% \changes{v1.1}{2007/08/12}{\cs{setlength}\cs{captionmargin} \& \cs{setlength}\cs{captionmargin@} swapped so `\texttt{margin*=}\cs{captionmargin}' works in singleline options}
+% \changes{v1.3}{2010/11/07}{Support for option \opt{calcmargin} added}
+% |\setcaptionmargin*|\marg{amount}\\
+% sets the caption margin to the given \meta{amount}.
+% Please never use this in user documents, it's just there to
+% provide compatibility to the \package{caption2} package.
+% \begin{macrocode}
+\newcommand*\setcaptionmargin{%
+ \caption@resetcalcmargin
+ \caption@setmargin}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@setmargin{%
+ \caption@teststar\caption@@setmargin\@gobble\@firstofone}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@@setmargin[2]{%
+ #1{\captionwidth\z@}%
+ \caption@@@setmargin#2,#2,\@nil}
+% \end{macrocode}
+% \begin{macrocode}
+\def\caption@@@setmargin#1,#2,#3\@nil{%
+ \caption@setlength{margin}{#1}%
+ \caption@setlength{margin@}{#2}%
+ \addtolength\captionmargin@{-\captionmargin}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\setcaptionwidth}
+% \changes{v1.0f}{2005/10/24}{Renamed from \cs{caption@setwidth} to \cs{setcaptionwidth}}
+% \changes{v1.3}{2010/11/07}{Starred variant added}
+% \changes{v1.3}{2010/11/07}{Support for option \opt{calcwidth} added}
+% |\setcaptionwidth*|\marg{amount}\\
+% sets the caption width to the given \meta{amount}.
+% Please never use this in user documents, it's just there to
+% provide compatibility to the \package{caption2} package.
+% \begin{macrocode}
+\newcommand*\setcaptionwidth{%
+ \caption@resetcalcmargin
+ \caption@setwidth}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@setwidth{%
+ \caption@teststar\caption@@setwidth\@gobble\@firstofone}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@@setwidth[2]{%
+ #1{\captionmargin\z@\captionmargin@\z@}%
+ \caption@setlength{width}{#2}}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@setcalcmargin}
+% \changes{v1.3}{2010/11/07}{This macro added}
+% |\caption@setcalcmargin*|\marg{amount}\\
+% sets the caption margin to the given \meta{amount}
+% right before the caption will be typeset, i.e.\meta{amount} will
+% not be evaluated immediately.
+% \begin{macrocode}
+\newcommand*\caption@setcalcmargin{%
+ \caption@teststar{\caption@@setcalcmargin\caption@setmargin}%
+ \@secondoftwo\@firstoftwo}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@@setcalcmargin[3]{%
+ #2{\caption@resetcalcmargin
+ \l@addto@macro\caption@calcmargin@hook{#1{#3}}}%
+ {\l@addto@macro\caption@calcmargin@hook{#1*{#3}}}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@resetcalcmargin}
+% \changes{v1.3}{2010/11/07}{This macro added}
+% |\caption@resetcalcmargin|\\
+% clears the value which was stored in |\caption@set|\-|calc|\-|margin|.
+% \begin{macrocode}
+\newcommand*\caption@resetcalcmargin{%
+ \let\caption@calcmargin@hook\@empty}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@setcalcwidth}
+% \changes{v1.3}{2010/11/07}{This macro added}
+% |\caption@setcalcwidth*|\marg{amount}\\
+% sets the caption width to the given \meta{amount}
+% right before the caption will be typeset, i.e.\meta{amount} will
+% not be evaluated immediately.
+% \begin{macrocode}
+\newcommand*\caption@setcalcwidth{%
+ \caption@teststar{\caption@@setcalcmargin\caption@setwidth}%
+ \@secondoftwo\@firstoftwo}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@thecounter}
+% \changes{v1.0n}{2007/04/03}{This counter added}
+% \changes{v1.1e}{2007/10/28}{Renamed from \cs{caption@counter} to \cs{caption@thecounter}; \cs{caption@stepcounter} added}
+% \changes{v1.5}{2012/04/09}{\cs{caption@stepcounter} renamed to \cs{caption@stepthecounter}}
+% Internal counter.
+% At the moment it will be used inside |\caption@if|\-|odd|\-|page| only.
+% \begin{macrocode}
+\newcommand*\caption@thecounter{0}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@stepthecounter{%
+ \@tempcnta\caption@thecounter
+ \advance\@tempcnta\@ne\relax
+ \xdef\caption@thecounter{\the\@tempcnta}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@newlabel}
+% \changes{v1.0n}{2007/04/03}{This macro added}
+% |\caption@newlabel|\marg{name}\marg{value}\\
+% This command is a modified version of |\new|\-|label| from \LaTeX2e.
+% It will be written to the \texttt{.aux} file to
+% pass label information from one run to another.
+% (We use it inside |\caption@if|\-|odd|\-|page|.)
+% \begin{macrocode}
+\newcommand*\caption@newlabel{\@newl@bel{caption@r}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@thepage}
+% \changes{v1.0n}{2007/04/03}{This macro added}
+% This command is a modified version of |\the|\-|page| from \LaTeX2e.
+% It will be used inside |\caption@if|\-|odd|\-|page| only.
+% \begin{macrocode}
+\newcommand*\caption@thepage{\the\c@page}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@label}
+% \changes{v1.1}{2007/09/01}{This macro added}
+% \changes{v1.2}{2007/12/03}{Definition of \cs{caption@newlabel} in aux file added}
+% |\caption@label|\marg{name}\\
+% This command is a modified version of |\label| from \LaTeX2e.
+% It will be used inside |\caption@if|\-|odd|\-|page| and |\FP@help|\-|Note|.
+% \begin{macrocode}
+\newcommand*\caption@label[1]{%
+ \caption@@label
+ \protected@write\@auxout{\let\caption@thepage\relax}%
+ {\string\caption@newlabel{#1}{\caption@thepage}}}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@@label{%
+ \global\let\caption@@label\relax
+ \protected@write\@auxout{}%
+ {\string\providecommand*\string\caption@newlabel[2]{}}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@pageref}
+% \changes{v1.1}{2007/09/01}{This macro added}
+% \changes{v1.2d}{2009/10/09}{Uses \cs{@latex@warning} instead of \cs{caption@Warning} now}
+% |\caption@pageref|\marg{name}\\
+% This command is a modified version of |\page|\-|ref| from \LaTeX2e.
+% It will be used inside |\caption@if|\-|odd|\-|page| and |\FP@help|\-|Note|.
+% \begin{macrocode}
+\newcommand*\caption@pageref[1]{%
+ \expandafter\ifx\csname caption@r@#1\endcsname\relax
+ \G@refundefinedtrue % => 'There are undefined references.'
+ \@latex@warning{Reference `#1' on page \thepage \space undefined}%
+ \else
+ \expandafter\let\expandafter\caption@thepage\csname caption@r@#1\endcsname
+ \fi}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@ifoddpage}
+% \changes{v1.0n}{2007/04/03}{This macro added}
+% \changes{v1.1e}{2007/10/28}{Incrementation of counter moved to \cs{caption@@make}}
+% Currently this macro uses an own label\ldots ref mechanism,
+% but an alternative implementation method would use the
+% \package{refcount} package\cite{refcount} and
+% |\ifodd\get|\-|page|\-|ref|\-|number{|\ldots|}|.
+% Maybe we will change that in a later release.
+% \Note{This macro re-defines itself so the \texttt{.aux} file will
+% only be used once per group.}
+% \begin{macrocode}
+\newcommand*\caption@ifoddpage{%
+ \caption@iftwoside{%
+ \caption@label\caption@thecounter
+ \caption@pageref\caption@thecounter
+ \ifodd\caption@thepage
+ \let\caption@ifoddpage\@firstoftwo
+ \else
+ \let\caption@ifoddpage\@secondoftwo
+ \fi
+ }{\let\caption@ifoddpage\@firstoftwo}%
+% \end{macrocode}
+% \begin{macrocode}
+ \caption@ifoddpage}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@setoptcmd}
+% \changes{v1.1}{2007/08/11}{This macro added}
+% |\caption@setoptcmd|\marg{command}\marg{off -or- value}\\
+% defines the given \meta{command} to \meta{value},
+% but if \meta{value} if `off' the given \meta{command} is undefined instead.
+% \begin{macrocode}
+\newcommand*\caption@setoptcmd[2]{%
+ \caption@ifinlist{#2}{0,false,no,off}{\let#1\@undefined}{\def#1{#2}}}
+% \end{macrocode}
+% \end{macro}
+%
+% \section{Indentions}
+%
+% \begin{macro}{\caption@indent}
+% \changes{v1.1}{2007/07/29}{Renamed from \cs{captionindent} to \cs{caption@indent}}
+% \begin{macro}{\caption@parindent}
+% \begin{macro}{\caption@hangindent}
+% These are the indentions we support.
+% \begin{macrocode}
+\DeclareCaptionLength{@indent}{0pt}
+\DeclareCaptionLength{@parindent}{0pt}
+\DeclareCaptionLength{@hangindent}{0pt}
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+% \end{macro}
+%
+% \changes{v1.0b}{2004/05/16}{Defaults added for options \opt{parindent=} and \opt{hangindent=}}
+% \changes{v1.0f}{2005/08/22}{Option \opt{parskip=}: \cs{AtBeginCaption} replaced by \cs{caption@@par}}
+% \changes{v1.0f}{2005/08/22}{Undocumented defaults for \opt{parindent=}, \opt{hangindent=}, and \opt{parskip=} removed}
+% \begin{macrocode}
+\DeclareCaptionOption{indent}[\leftmargini]{% obsolete
+ \caption@setlength{@indent}{#1}}
+\DeclareCaptionOption{indention}[\leftmargini]{%
+ \caption@setlength{@indent}{#1}}
+\DeclareCaptionOption{parindent}{%
+ \caption@setlength{@parindent}{#1}}
+\DeclareCaptionOption{hangindent}{%
+ \caption@setlength{@hangindent}{#1}}
+\DeclareCaptionOption{parskip}{%
+ \l@addto@macro\caption@@par{\setlength\parskip{#1}}}
+% \end{macrocode}
+%
+% \section{Styles}
+%
+% \begin{macro}{\DeclareCaptionStyle}
+% \changes{v1.0a}{2004/01/17}{Pass through argument \#3 so extra spaces between arguments do make any harm}
+% \changes{v2.0}{2019/09/10}{Uses \cs{caption@decl} now}
+% \changes{v2.0}{2020/07/27}{\cs{caption@sls} renamed to \cs{caption@slsty}}
+% |\DeclareCaptionStyle|\marg{name}\oarg{single-line-list-of-KV}\marg{list-of-KV}
+% \begin{macrocode}
+\newcommand*\DeclareCaptionStyle[1]{%
+ \@testopt{\caption@declarestyle{#1}}{}}
+\@onlypreamble\DeclareCaptionStyle
+% \end{macrocode}
+% \begin{macrocode}
+\def\caption@declarestyle#1[#2]#3{%
+ \caption@decl{style}{#1}%
+ {\def\caption@slsty{#2}%
+ \def\caption@sty{#3}}%
+% \end{macrocode}
+% The \package{floatrow} package uses |\@if|\-|undefined{caption@sty@#1}| to
+% determine in |\flrow@set|\-|style| if a caption style is defined or not.
+% Since the \package{floatrow} package is unmaintained we fake the definition
+% so the test will still work.
+% \begin{macrocode}
+ \@namedef{caption@sty@#1}{\@unused}}
+\@onlypreamble\caption@declarestyle
+% \end{macrocode}
+% \end{macro}
+%
+% \changes{v1.2a}{2008/01/20}{Option \opt{style*=} added}
+% \begin{macrocode}
+\DeclareCaptionOption{style}{\caption@setstyle{#1}}
+\DeclareCaptionOption{style*}{\caption@setstyle*{#1}}
+% \end{macrocode}
+%
+% \begin{macro}{\caption@setstyle}
+% \changes{v1.0e}{2005/06/01}{Starred variant added}
+% \changes{v1.1}{2007/07/29}{Recursive style definitions should work now}
+% \changes{v1.1d}{2007/10/23}{`SingleLine' renamed to `singleline' for consistency}
+% \changes{v1.2}{2007/12/03}{Definition of \cs{caption@iftypewarning} removed}
+% \changes{v2.0}{2019/09/10}{Uses \cs{caption@ifdecl} and \cs{caption@checkdecl} now}
+% |\caption@setstyle*|\marg{name}\\
+% Selecting a caption style means saving the additional
+% \meta{single-line-list-of-KV} (this will be done by |\caption@sl|\-|sty|),
+% resetting the caption options to the base ones (this will be done using
+% |\caption@reset|\-|style|) and executing the \meta{list-of-KV} options
+% (this will be done using |\caption@setup|).\par
+% The starred version will give no error message if the given style is not
+% defined.
+% \begin{macrocode}
+\newcommand*\caption@setstyle{%
+ \caption@teststar\caption@@setstyle\caption@ifdecl\caption@checkdecl}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@@setstyle[2]{%
+ #1{style}{#2}%
+ {\caption@set{style}{#2}%
+ \caption@style % defines \caption@sty & \caption@slsty
+ \ifx\caption@setstyle@flag\@undefined
+ \let\caption@setstyle@flag\relax % prevent \caption@resetstyle if called recursively
+ \caption@resetstyle
+ \caption@xsetup\caption@sty
+ \let\caption@setstyle@flag\@undefined
+ \else
+ \caption@xsetup\caption@sty
+ \fi}%
+ {}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@resetstyle}
+% \changes{v1.1}{2007/02/04}{This macro renamed from \cs{caption@setdefault} to \cs{caption@resetstyle}}
+% \changes{v1.1d}{2007/10/23}{`SingleLine' renamed to `singleline' for consistency}
+% \changes{v1.2}{2007/11/17}{Usage of \opt{size=} added}
+% \changes{v1.2b}{2008/05/06}{Usage of \opt{rule} added}
+% \changes{v1.5}{2012/03/15}{\opt{box=parbox} added}
+% \changes{v1.6}{2013/05/01}{\opt{box=none} added, \opt{box=parbox} changed to \opt{parbox=parbox}}
+% |\caption@resetstyle|\\
+% This resets (nearly) all caption options to the base ones.
+% \emph{Note that this does not touch the skips and the positioning.}
+% \begin{macrocode}
+\newcommand*\caption@resetstyle{%
+ \caption@setup{%
+ box=none,boxcolor=white,parbox=parbox,%
+ format=plain,labelformat=default,labelsep=colon,textformat=simple,%
+ font=,labelfont=,textfont=,size=,%
+ justification=justified,slc,rule,strut,%
+ margin=0pt,minmargin=0,maxmargin=0,%
+ indent=0pt,parindent=0pt,hangindent=0pt}}
+% \end{macrocode}
+% \end{macro}
+%
+% \changes{v1.0c}{2005/02/12}{\opt{indent=0pt} added to caption style \opt{default}}
+% \changes{v1.1}{2007/02/04}{Caption style `default' renamed to `base', and a new `default' added}
+% \changes{v1.1}{2007/03/31}{\opt{format=plain} added to caption style \opt{default}}
+% \changes{v1.1c}{2007/10/14}{\opt{format=plain} removed from caption style \opt{default}}
+% \changes{v1.5}{2012/03/15}{\opt{box=default} added to caption style \opt{default}}
+% Currently there are two pre-defined styles, called `base' \& `default'.
+% The first one is a perfect match to the behavior of |\@make|\-|caption|
+% offered by the standard \LaTeX\ document classes (and was called `default'
+% in \thispackage\ \version{1.0}), the second one matches the document
+% class actually used.
+% \begin{macrocode}
+\DeclareCaptionStyle{base}[indent=0pt,justification=centering]{}
+\DeclareCaptionStyle{default}[indent=0pt,justification=centering]{%
+ box=default,%
+ format=default,labelformat=default,labelsep=default,textformat=default,%
+ font=default,labelfont=default,textfont=default,size=default,%
+ justification=default,slc=default,margin=default,%
+ indent=default,parindent=default,hangindent=default}
+% \end{macrocode}
+%
+% \begin{macro}{\DeclareCaptionSinglelinecheck}
+% \changes{v2.0}{2019/09/10}{This macro added}
+% |\DeclareCaptionSinglelinecheck|\marg{name}\marg{code}
+% \begin{macrocode}
+\newcommand*\DeclareCaptionSinglelinecheck[2]{%
+ \caption@decl{singlelinecheck}{#1}{#2}}
+\@onlypreamble\DeclareCaptionSinglelinecheck
+% \end{macrocode}
+% \end{macro}
+%
+% \changes{v1.2b}{2008/05/06}{Option \opt{slc=} added}
+% \begin{macrocode}
+\DeclareCaptionOption{singlelinecheck}[1]{\caption@setsinglelinecheck{#1}}
+\DeclareCaptionOption{slc}[1]{\KV@caption@singlelinecheck{#1}}
+% \end{macrocode}
+%
+% These are the pre-defined single-line-check code snippets.
+% \begin{macrocode}
+\DeclareCaptionSinglelinecheck{on}{\@firstoftwo}
+\DeclareCaptionSinglelinecheck{off}{\@secondoftwo}
+% \end{macrocode}
+%
+% `default' usually maps to `on'.
+% \begin{macrocode}
+\SetCaptionDefault{singlelinecheck}{on}
+% \end{macrocode}
+%
+% \begin{macro}{\caption@setsinglelinecheck}
+% \changes{v2.0}{2018/03/13}{This macro added}
+% |\caption@setsinglelinecheck|\marg{value}\\
+% sets the single-line-check either on or off,
+% where \meta{value} could be either a \meta{name} or boolean value.
+% \begin{macrocode}
+\newcommand*\caption@setsinglelinecheck[1]{%
+ \caption@ifdecl{singlelinecheck}{#1}%
+ {\caption@set{singlelinecheck}{#1}}%
+ {\caption@set@bool\caption@singlelinecheck{#1}}}
+% \end{macrocode}
+% \end{macro}
+%
+% \section{Boxes}
+%
+% \begin{macro}{\DeclareCaptionBox}
+% \changes{v1.5}{2012/03/15}{This macro added}
+% \changes{v2.0}{2019/09/10}{Uses \cs{caption@decl} now}
+% \changes{v2.2f}{2020/10/26}{\cs{par} is now allowed as part of the \meta{code} argument}
+% |\DeclareCaptionBox|\marg{name}\marg{code with \#1 and \#2}
+% \begin{macrocode}
+\newcommand\DeclareCaptionBox[2]{%
+ \caption@decl{box}{#1}##1##2{#2}}
+\@onlypreamble\DeclareCaptionBox
+% \end{macrocode}
+% \end{macro}
+%
+% \changes{v1.5}{2012/03/15}{Option \opt{box=} added}
+% \changes{v1.6}{2013/05/01}{Option \opt{parbox=} added}
+% \begin{macrocode}
+\DeclareCaptionOption{box}{\caption@set{box}{#1}}
+\DeclareCaptionOption{parbox}{\caption@set{parbox}{#1}}
+\caption@setmapping{parbox}{box}
+% \end{macrocode}
+%
+% There are four pre-defined boxes, called `empty', `none',
+% `parbox', and `colorbox'.
+% \changes{v1.0i}{2006/05/13}{We define \cs{captionbox} instead of \cs{caption@start/endbox}}
+% \changes{v1.0l}{2006/03/09}{Bugfix 07-03-09: \cs{captionbox} changed from \cs{parbox-t} to \cs{parbox-b}}
+% \changes{v1.2}{2007/11/11}{\cs{captionbox} renamed to \cs{caption@parbox}}
+% \changes{v1.5}{2012/03/15}{\cs{caption@parbox} adapted to \cs{DeclareCaptionBox}}
+% \changes{v1.6}{2013/05/02}{Option \opt{boxsep=} added}
+% \changes{v2.1b}{2020/09/17}{Missing braces re-added to \opt{colorbox} option code}
+% \begin{macrocode}
+\DeclareCaptionBox{empty}{}
+\DeclareCaptionBox{none}{#2}
+\DeclareCaptionBox{parbox}{\parbox[b]{#1}{#2}}
+\DeclareCaptionBox{colorbox}{%
+ \colorbox{\caption@boxcolor}{%
+ \setlength\caption@tempdima{#1}%
+ \addtolength\caption@tempdima{-2\fboxsep}%
+ \linewidth\caption@tempdima\relax
+ \hsize\caption@tempdima\relax
+ #2}}
+\DeclareCaptionOption{boxcolor}{\def\caption@boxcolor{#1}}
+\DeclareCaptionOption{boxsep}{\setlength\fboxsep{#1}}
+% \end{macrocode}
+%
+% `default' usually maps to `none' resp.~`parbox'.
+% \begin{macrocode}
+\SetCaptionDefault{box}{none}
+%\SetCaptionDefault{parbox}{parbox}
+% \end{macrocode}
+%
+% \section{Formats}
+%
+% \begin{macro}{\DeclareCaptionFormat}
+% \changes{v1.0a}{2004/01/17}{Pass through argument \#3 so extra spaces between arguments do make any harm}
+% \changes{v1.0c}{2005/02/09}{Starred variant added}
+% \changes{v1.1c}{2007/10/15}{Optional argument added}
+% \changes{v2.0}{2019/09/10}{Uses \cs{caption@decl} now}
+% \changes{v2.0}{2020/07/27}{\cs{caption@ifh} renamed to \cs{caption@ifhmode}}
+% |\DeclareCaptionFormat*|\marg{name}\marg{code with \#1, \#2, and \#3}\\
+% The starred form causes the code being typeset in vertical (instead of
+% horizontal) mode, but does not support the |indention=| option.
+% \begin{macrocode}
+\newcommand*\DeclareCaptionFormat{%
+ \caption@teststar\caption@declareformat\@gobble\@firstofone}
+\@onlypreamble\DeclareCaptionFormat
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@declareformat[2]{%
+ \@dblarg{\caption@@declareformat#1{#2}}}
+\@onlypreamble\caption@declareformat
+% \end{macrocode}
+% \begin{macrocode}
+\long\def\caption@@declareformat#1#2[#3]#4{%
+ \caption@decl[\edef]{format}{#2}{%
+ \unexpanded{\let\caption@ifhmode#1}%
+ \unexpanded{\long\def\caption@slfmt}####1####2####3\unexpanded{{#3}}%
+ \unexpanded{\long\def\caption@fmt}####1####2####3\unexpanded{{#4}}}}
+\@onlypreamble\caption@@declareformat
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@useformat}
+% \changes{v2.0}{2020/07/31}{This macro added}
+% |\caption@useformat|\marg{name}\\
+% expands |\caption@fmt| based on the given format \meta{name}.
+% \begin{macrocode}
+\newcommand*\caption@useformat[1]{% used by caption-koma.sto
+ \caption@checkdecl{format}{#1}{%
+ \begingroup
+ \@nameuse{caption@format@#1}\global\let\caption@tempa\caption@fmt
+ \endgroup\caption@tempa}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+\DeclareCaptionOption{format}{\caption@set{format}{#1}}
+% \end{macrocode}
+%
+% \changes{v1.0a}{2004/01/23}{Caption format \opt{default} renamed to \opt{normal}}
+% \changes{v1.0e}{2005/05/12}{Caption format \opt{normal} renamed to \opt{@normal}}
+% \changes{v1.0f}{2005/08/25}{Caption format \opt{@normal} renamed to \opt{plain} and documented}
+% \changes{v1.1c}{2007/10/14}{Single-line variant of caption format \opt{hang} added}
+% There are two pre-defined formats, called `plain' and `hang'.
+% \begin{macrocode}
+\DeclareCaptionFormat{plain}{#1#2#3\par}
+% \end{macrocode}
+% \begin{macrocode}
+\DeclareCaptionFormat{hang}[#1#2#3\par]{%
+ \caption@iflabelseparatorwithnewline
+ {\caption@Error{%
+ The option `labelsep=\caption@labelsep@name' does not work\MessageBreak
+ with `format=hang'}}%
+ {\@hangfrom{#1#2}%
+ \advance\caption@parindent\hangindent\relax
+ \advance\caption@hangindent\hangindent\relax
+ \caption@@par#3\par}}
+% \end{macrocode}
+%
+% `default' usually maps to `plain'.
+% \begin{macrocode}
+\SetCaptionDefault{format}{plain}
+% \end{macrocode}
+%
+% \section{Label formats}
+%
+% \begin{macro}{\DeclareCaptionLabelFormat}
+% \changes{v1.0a}{2004/01/17}{Pass through argument \#2 so extra spaces between arguments do make any harm}
+% \changes{v2.0}{2019/09/10}{Uses \cs{caption@decl} now}
+% |\DeclareCaptionLabelFormat|\marg{name}\marg{code with \#1 and \#2}
+% \begin{macrocode}
+\newcommand*\DeclareCaptionLabelFormat[2]{%
+ \caption@decl{labelformat}{#1}##1##2{#2}}
+\@onlypreamble\DeclareCaptionLabelFormat
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+\DeclareCaptionOption{labelformat}{\caption@set{labelformat}{#1}}
+% \end{macrocode}
+%
+% \changes{v1.2}{2007/12/16}{Caption label format \opt{brace} added}
+% \changes{v1.7}{2015/09/16}{Caption label format \opt{autodot} added}
+% \changes{v1.7}{2016/05/22}{Caption label format \opt{autodot} fixed}
+% \changes{v1.8}{2016/05/22}{Caption label format \opt{unnumbered} added}
+% There are six pre-defined label formats, called `empty', `simple',
+% `parens', `brace', `autodot', and `unnumbered'.
+%
+% \begin{macrocode}
+\DeclareCaptionLabelFormat{empty}{}
+\DeclareCaptionLabelFormat{simple}{\bothIfFirst{#1}{\nobreakspace}#2}
+\DeclareCaptionLabelFormat{parens}{\bothIfFirst{#1}{\nobreakspace}(#2)}
+\DeclareCaptionLabelFormat{brace}{\bothIfFirst{#1}{\nobreakspace}#2)}
+\DeclareCaptionLabelFormat{autodot}{\bothIfFirst{#1}{\nobreakspace}#2\autodot}
+\DeclareCaptionLabelFormat{unnumbered}{#1}
+% \end{macrocode}
+%
+% \changes{v2.0}{2020/08/03}{Caption label format \opt{original} added}
+% The label format `original' tries to preserve the original definition
+% of the label format which was defined by |\fnum@|\meta{environment}.
+% If no original definition is available, use the label format `simple'
+% as fallback.
+%
+% \begin{macrocode}
+\DeclareCaptionLabelFormat{original}{%
+ \caption@ifdefined\caption@original@fnum
+ {\caption@original@fnum}%
+ {\caption@labelformat@fallback{#1}{#2}}}
+% \end{macrocode}
+%
+% `default' usually maps to `original' resp. `simple'.
+% \begin{macrocode}
+\SetCaptionDefault{labelformat}{original}
+\SetCaptionFallback{labelformat}{simple}
+% \end{macrocode}
+%
+% \section{Label separators}
+%
+% \begin{macro}{\DeclareCaptionLabelSeparator}
+% \changes{v1.0a}{2004/01/17}{Pass through argument \#2 so extra spaces between arguments do make any harm}
+% \changes{v1.0f}{2005/08/25}{Starred variant added}
+% \changes{v1.1}{2007/07/13}{Test for CR added}
+% \changes{v1.3}{2011/08/06}{Test for CR revised}
+% \changes{v2.0}{2018/05/15}{Variant with two stars added}
+% \changes{v2.0}{2019/09/10}{Uses \cs{caption@decl} now}
+% \changes{v2.0}{2020/07/27}{\cs{caption@iflf} renamed to \cs{caption@iflabelfont}}
+% \changes{v2.0}{2020/07/27}{\cs{caption@lsep} renamed to \cs{caption@labelsep}}
+% \changes{v2.0}{2020/07/27}{Definition of \cs{caption@labelsep@name} added}
+% |\DeclareCaptionLabelSeparator|\marg{name}\marg{code}\\
+% |\DeclareCaptionLabelSeparator*|\marg{name}\marg{code}\\
+% |\DeclareCaptionLabelSeparator**|\marg{name}\marg{condition}\marg{code}\\
+% The starred form causes the label separator to be typeset \emph{without}
+% using |\caption|\-|label|\-|font|.
+% The two-starred form uses \meta{condition} to decide if the label separator
+% should be typeset with or without using |\caption|\-|label|\-|font|.
+% \begin{macrocode}
+\newcommand\DeclareCaptionLabelSeparator{%
+ \@ifstar
+ \DeclareCaptionLabelSeparator@
+ {\caption@declarelabelseparator\@firstofone}}
+\@onlypreamble\DeclareCaptionLabelSeparator
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand\DeclareCaptionLabelSeparator@{%
+ \@ifstar
+ \DeclareCaptionLabelSeparator@@
+ {\caption@declarelabelseparator\@gobble}}
+\@onlypreamble\DeclareCaptionLabelSeparator@
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\DeclareCaptionLabelSeparator@@[2]{%
+ \caption@declarelabelseparator
+ {#2\@gobble\@firstofone}%
+ {#1}}
+\@onlypreamble\DeclareCaptionLabelSeparator@@
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand\caption@declarelabelseparator[3]{%
+ \caption@decl{labelseparator}{#2}%
+ {\def\caption@iflabelfont{#1}%
+ \def\caption@labelsep@name{#2}%
+ \def\caption@labelsep{#3}}%
+% \end{macrocode}
+% Unfortunately |\Declare|\-|Float|\-|Separators| of the \package{floatrow}
+% package mis-uses |\Declare|\-|Caption|\-|Label|\-|Separator| instead of
+% storing the definition on its own. Since the \package{floatrow} package is
+% unmaintained we have to store the separator definition inside
+% |\caption@lsep@|\meta{name} for \package{floatrow}, too. (Sigh!)
+% \begin{macrocode}
+ \@namedef{caption@lsep@#2}{#3}}
+% \end{macrocode}
+% Since the `default' caption label separator will usually not be defined
+% with |\Declare|\-|Caption|\-|Label|\-|Separator|, we need to define
+% |\caption@lsep@default| manually.
+% \Note{This definition is used by \package{magyar.ldf} but only needs to be different
+% than \cs{caption@lsep} (which is usually undefined).}
+% \begin{macrocode}
+\newcommand*\caption@lsep@default{\caption@labelseparator@default\caption@labelsep}%
+% \end{macrocode}
+% \begin{macrocode}
+\@onlypreamble\caption@declarelabelseparator
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@LabelSeparatorWithNewline}
+% \changes{v2.0}{2020/07/27}{This macro added}
+% |\caption@LabelSeparatorWithNewline|\marg{name}\\
+% adds the given label separator to a list of label separators which uses
+% |\\| internally. (They are incompatible to the `hang' caption format.)
+% \begin{macrocode}
+\newcommand*\caption@LabelSeparatorWithNewline[1]{%
+ \caption@g@addto@list\caption@labelsep@crlist{#1}}
+\@onlypreamble\caption@LabelSeparatorWithNewline
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@iflabelseparatorwithnewline}
+% \changes{v2.0}{2020/07/31}{This macro added}
+% |\caption@iflabelseparatorwithnewline|\marg{yes-code}\marg{no-code}\\
+% tests if the current label separator uses |\\| internally.
+% \begin{macrocode}
+\newcommand*\caption@iflabelseparatorwithnewline{%
+ \caption@ifin@list\caption@labelsep@crlist\caption@labelsep@name}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+\DeclareCaptionOption{labelsep}{\caption@set{labelseparator}{#1}}
+\DeclareCaptionOption{labelseparator}{\caption@set{labelseparator}{#1}}
+% \end{macrocode}
+%
+% \changes{v1.0e}{2005/06/11}{Caption label separator \opt{newline} implementation changed from \cs{newline} to \cs{textbackslash}}
+% \changes{v1.0f}{2005/08/24}{Caption label separator \opt{endash} added}
+% \changes{v1.12}{2020/05/30}{Caption label separator \opt{newline} implementation changed from \cs{textbackslash} to \cs{captionnewline}}
+% There are seven pre-defined label separators, called `none', `colon', `period', `space',
+% `quad', `newline', and `endash'.
+% \begin{macrocode}
+\DeclareCaptionLabelSeparator{none}{}
+\DeclareCaptionLabelSeparator{colon}{: }
+\DeclareCaptionLabelSeparator{period}{. }
+\DeclareCaptionLabelSeparator{space}{ }
+\DeclareCaptionLabelSeparator*{quad}{\quad}
+\DeclareCaptionLabelSeparator*{newline}{\captionnewline}
+% TODO: \DeclareCaptionLabelSeparator should detect on its own if it contains \captionnewline or not
+\caption@LabelSeparatorWithNewline{newline} % does not work with "format=hang"
+\DeclareCaptionLabelSeparator*{endash}{\space\textendash\space}
+% \end{macrocode}
+%
+% \changes{v2.2c}{2020/10/10}{Caption label separators \opt{gobble} and \opt{gobbletwo} added}
+%
+% It's a common hack to mis-use |\fnum@figure| and |\fnum@table| to replace the caption
+% label separator, for example changing the separator to a period plus space with
+% \begin{quote}
+% |\renewcommand\fnum@figure[1]{\figurename~\thefigure.}|
+% \end{quote}
+% or dropping the label and separator completely with
+% \begin{quote}
+% |\renewcommand\fnum@figure[1]{\ignorespaces}|\quad
+% \end{quote}
+% (taken from \url{http://compgroups.net/comp.text.tex/figure-without-caption/1915079}).
+%
+% We emulate the behaviour of |\@make|\-|caption| of the base document classes
+% \class{article}, \class{report}, and \class{book} in this regard (in |\caption@@@make|)
+% so these hacks still work if the \package{caption} package is loaded.
+%
+% These are the label separators used when one or two tokens after the label format
+% should be dropped, called `gobble' and `gobbletwo':
+% \begin{macrocode}
+\DeclareCaptionLabelSeparator{gobble}{ }
+\DeclareCaptionLabelSeparator{gobbletwo}{}
+% \end{macrocode}
+%
+% \begin{macro}{\captionnewline}
+% \changes{v1.12}{2020/05/30}{This macro added}
+% \changes{v2.0}{2020/07/31}{\cs{relax} added to definition}
+% |\captionnewline|\\
+% will be used in the caption label separator |new|\-|line|,
+% and re-defined for |long|\-|table| environments
+% (in package \package{ltcaption}).
+% \begin{macrocode}
+\newcommand*\captionnewline{\\\relax}
+% \end{macrocode}
+% \end{macro}
+%
+% `default' usually maps to `colon'.
+% \begin{macrocode}
+\SetCaptionDefault{labelseparator}{colon}
+% \end{macrocode}
+%
+% \section{Text formats}
+%
+% \begin{macro}{\DeclareCaptionTextFormat}
+% \changes{v1.0j}{2007/02/18}{This macro added}
+% \changes{v2.0}{2019/09/10}{Uses \cs{caption@decl} now}
+% \changes{v2.2f}{2020/10/26}{\cs{par} is now allowed as part of the \meta{code} argument}
+% |\DeclareCaptionTextFormat|\marg{name}\marg{code with \#1}
+% \begin{macrocode}
+\newcommand\DeclareCaptionTextFormat[2]{%
+ \caption@decl{textformat}{#1}##1{#2}}
+\@onlypreamble\DeclareCaptionTextFormat
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+\DeclareCaptionOption{textformat}{\caption@set{textformat}{#1}}
+% \end{macrocode}
+%
+% There are three pre-defined text formats, called `empty', `simple' and `period'.
+% \changes{v1.4}{2011/10/05}{Pre-defined text format `empty' added}
+% \changes{v1.7}{2015/09/16}{The text format `empty' now takes care of the \cs{label}}
+% \begin{macrocode}
+\DeclareCaptionTextFormat{empty}{%
+ \caption@get@label#1\caption@makeanchor{}\@nil
+ \caption@thelabel
+ \global\let\caption@thelabel\relax}
+\long\def\caption@get@label#1\caption@makeanchor#2#3\@nil{%
+ \def\caption@tempa{#2}%
+ \ifx\caption@tempa\@empty
+ \caption@getlabel{#1}%
+ \else
+ \caption@getlabel{#2}%
+ \fi}
+% \end{macrocode}
+% \begin{macrocode}
+\DeclareCaptionTextFormat{simple}{#1}
+\DeclareCaptionTextFormat{period}{#1.}
+% \end{macrocode}
+%
+% `default' usually maps to `simple'.
+% \begin{macrocode}
+\SetCaptionDefault{textformat}{simple}
+% \end{macrocode}
+%
+% \begin{macro}{\caption@getlabel}
+% \changes{v1.0}{2011/09/03}{\cs{label} can have optional arguments now}
+% \changes{v1.7}{2015/09/16}{Moved from \package{bicaption} package to \package{caption3}}
+% \changes{v1.8d}{2019/09/01}{Bugfix: Global definition of \cs{caption@thelabel} added}
+% \changes{v2.0}{2020/08/23}{Syntax changed}
+% |\caption@getlabel|\marg{text}\\
+% gets the label command out of the given caption text and stores it to
+% |\caption@the|\-|label|.
+% \begin{macrocode}
+\newcommand\caption@getlabel[1]{%
+ \caption@@getlabel#1\label{}\@nil}
+\long\def\caption@@getlabel#1\label#2#3\@nil{%
+ \def\@tempa{#2}%
+ \ifx\@tempa\@empty
+ \let\caption@thelabel\relax
+ \else
+ \def\@tempb{*}%
+ \ifx\@tempa\@tempb
+ \def\caption@thelabel{\label*}%
+ \caption@@@getlabel#3\@nil
+ \else
+ \def\caption@thelabel{\label}%
+ \caption@@@getlabel{#2}#3\@nil
+ \fi
+ \fi}
+% \end{macrocode}
+% \begin{macrocode}
+\long\def\caption@@@getlabel#1#2\@nil{%
+ \def\@tempa{#1}%
+ \def\@tempb{[}%
+ \ifx\@tempa\@tempb
+ \caption@@@@getlabel#1#2\@nil
+ \else
+ \l@addto@macro\caption@thelabel{{#1}}%
+ \fi}
+% \end{macrocode}
+% \begin{macrocode}
+\long\def\caption@@@@getlabel[#1]#2\@nil{%
+ \l@addto@macro\caption@thelabel{[{#1}]}%
+ \caption@@@getlabel#2\@nil}
+% \end{macrocode}
+% \begin{macrocode}
+\let\caption@thelabel\relax
+% \end{macrocode}
+% \end{macro}
+%
+% \changes{v1.0c}{2005/02/12}{Option \opt{strut=} added}
+% \begin{macrocode}
+\DeclareCaptionOption{strut}[1]{\caption@set@bool\caption@ifstrut{#1}}
+% \end{macrocode}
+%
+% \section{Fonts}
+%
+% \begin{macro}{\DeclareCaptionFont}
+% \changes{v1.0a}{2004/01/22}{Bugfix: Multi token arguments are allowed now}
+% \changes{v1.1}{2007/05/07}{Internal: Uses \cs{caption@fnt} instead of \cs{caption@temp} now}
+% \changes{v1.8h}{2020/01/03}{Check for \package{ragged2e} package related options added}
+% \changes{v1.10}{2020/05/10}{Optional argument \opt{package} added}
+% |\DeclareCaptionFont|\oarg{package}\marg{name}\marg{code}
+% \begin{macrocode}
+\newcommand*\DeclareCaptionFont{%
+ \caption@decl@package{font}{\caption@declarefont}}
+\@onlypreamble\DeclareCaptionFont
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@declarefont[2]{%
+ \caption@decl{font}{#1}##1{#2}%
+ \define@key{caption@font}{#1}[]{\caption@addto@font{#1}{##1}}}
+\@onlypreamble\caption@@declarefont
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@addto@font[1]{%
+% \end{macrocode}
+% \begin{macrocode}
+% Load package first, if necessary
+ \caption@load@package{font}{#1}%
+% \end{macrocode}
+% Add the content to \cs{caption@fnt}
+% \begin{macrocode}
+ \caption@add@to@font{font}{#1}}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@add@to@font[3]{%
+ \expandafter\g@addto@macro\expandafter\caption@fnt\expandafter{\csname caption@#1@#2\endcsname{#3}}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+\DeclareCaptionOption{font}{\caption@setfont{font}{#1}}
+\DeclareCaptionOption{font+}{\caption@addtofont{font}{#1}}
+% \end{macrocode}
+% \begin{macrocode}
+\DeclareCaptionOption{labelfont}{\caption@setfont{labelfont}{#1}}
+\DeclareCaptionOption{labelfont+}{\caption@addtofont{labelfont}{#1}}
+\caption@setmapping{labelfont}{font}
+% \end{macrocode}
+% \begin{macrocode}
+\DeclareCaptionOption{textfont}{\caption@setfont{textfont}{#1}}
+\DeclareCaptionOption{textfont+}{\caption@addtofont{textfont}{#1}}
+\caption@setmapping{textfont}{font}
+% \end{macrocode}
+%
+% \begin{macro}{\caption@setfont}
+% \changes{v1.0j}{2007/01/30}{Usage of \cs{caption@setkeys} with optional argument}
+% \changes{v1.1}{2006/05/14}{Support of \cs{DeclareDefaultCaptionFont} added}
+% |\caption@setfont|\marg{name}\marg{keyval-list of names}\\
+% Selecting a caption font means saving all the code snippets
+% in |\caption|\meta{name}.
+% \begin{macrocode}
+\newcommand*\caption@setfont[1]{%
+ \expandafter\let\csname caption#1\endcsname\@empty
+ \caption@addtofont{#1}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@addtofont}
+% \changes{v1.2}{2007/11/17}{This macro added}
+% |\caption@addtofont|\marg{name}\marg{keyval-list of names}\\
+% Like |\caption@set|\-|font|, but adds the code snippets to |\caption|\meta{name}.
+% Because we use |\set|\-|keys| recursive here we need to do this inside an
+% extra group.
+% \begin{macrocode}
+\newcommand*\caption@addtofont[2]{%
+ \expandafter\let\expandafter\caption@fnt\csname caption#1\endcsname
+ \begingroup
+ \define@key{caption@font}{default}[]{\caption@add@to@font{#1}{default}{##1}}%
+ \caption@setkeys[caption]{caption@font}{#2}%
+ \endgroup
+ \expandafter\let\csname caption#1\endcsname\caption@fnt}
+% \end{macrocode}
+% \end{macro}
+%
+% These are the pre-defined font code snippets.
+%
+% \changes{v1.1}{2007/05/07}{Color font support added}
+% \begin{macrocode}
+\DeclareCaptionFont{normalcolor}{\normalcolor}
+\DeclareCaptionFont{color}{\color{#1}}
+% \end{macrocode}
+%
+% \begin{macrocode}
+\DeclareCaptionFont{normalfont}{\normalfont}
+\DeclareCaptionFont{up}{\upshape}
+\DeclareCaptionFont{it}{\itshape}
+\DeclareCaptionFont{sl}{\slshape}
+\DeclareCaptionFont{sc}{\scshape}
+\DeclareCaptionFont{md}{\mdseries}
+\DeclareCaptionFont{bf}{\bfseries}
+\DeclareCaptionFont{rm}{\rmfamily}
+\DeclareCaptionFont{sf}{\sffamily}
+\DeclareCaptionFont{tt}{\ttfamily}
+% \end{macrocode}
+%
+% \changes{v1.7}{2018/05/01}{Missing font sizes \texttt{tiny}, \texttt{LARGE}, \texttt{huge}, and \texttt{Huge} added}
+% \begin{macrocode}
+\DeclareCaptionFont{tiny}{\tiny}
+\DeclareCaptionFont{scriptsize}{\scriptsize}
+\DeclareCaptionFont{footnotesize}{\footnotesize}
+\DeclareCaptionFont{small}{\small}
+\DeclareCaptionFont{normalsize}{\normalsize}
+\DeclareCaptionFont{large}{\large}
+\DeclareCaptionFont{Large}{\Large}
+\DeclareCaptionFont{LARGE}{\LARGE}
+\DeclareCaptionFont{huge}{\huge}
+\DeclareCaptionFont{Huge}{\Huge}
+% \end{macrocode}
+%
+% \changes{v1.8}{2018/05/01}{Font sizes \texttt{smaller} and \texttt{larger} added}
+% \begin{macrocode}
+\DeclareCaptionFont{smaller}{\caption@smaller}
+\DeclareCaptionFont{larger}{\caption@larger}
+% \end{macrocode}
+%
+% \begin{macrocode}
+\DeclareCaptionFont{none}{}
+\DeclareCaptionFont{normal}{%
+ \caption@font@normalcolor\@unused
+ \caption@font@normalfont\@unused
+ \caption@font@normalsize\@unused
+ \caption@font@singlespacing\@unused}
+% \end{macrocode}
+%
+% `default' usually maps to `none'.
+% \begin{macrocode}
+\SetCaptionDefault{font}{none}
+\SetCaptionDefault{labelfont}{none}
+\SetCaptionDefault{textfont}{none}
+% \end{macrocode}
+%
+% The \package{floatrow} package uses the fonts `footfont` and `@tempa` additionally,
+% so we need to map and define the default value for them, too.
+% \begin{macrocode}
+\caption@setmapping{footfont}{font}
+\SetCaptionDefault{footfont}{none}
+\caption@setmapping{@tempa}{font}
+\SetCaptionDefault{@tempa}{none}
+% \end{macrocode}
+%
+% \begin{macro}{\caption@smaller}
+% |\caption@smaller|\\
+% selects a font size which is smaller than the current one.
+% \begin{macrocode}
+\newcommand\caption@smaller{%
+ \ifx\@currsize\tiny
+ \relax
+ \else\ifx\@currsize\scriptsize
+ \tiny
+ \else\ifx\@currsize\footnotesize
+ \scriptsize
+ \else\ifx\@currsize\small
+ \footnotesize
+ \else\ifx\@currsize\normalsize
+ \small
+ \else\ifx\@currsize\large
+ \normalsize
+ \else\ifx\@currsize\Large
+ \large
+ \else\ifx\@currsize\LARGE
+ \Large
+ \else\ifx\@currsize\huge
+ \LARGE
+ \else\ifx\@currsize\Huge
+ \huge
+ \else
+ \caption@Warning{%
+ Cannot determine current font size.\MessageBreak
+ Try setting it with `size=' explicitly}%
+ \fi\fi\fi\fi\fi\fi\fi\fi\fi\fi}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@larger}
+% |\caption@larger|\\
+% selects a font size which is larger than the current one.
+% \begin{macrocode}
+\newcommand\caption@larger{%
+ \ifx\@currsize\tiny
+ \scriptsize
+ \else\ifx\@currsize\scriptsize
+ \footnotesize
+ \else\ifx\@currsize\footnotesize
+ \small
+ \else\ifx\@currsize\small
+ \normalsize
+ \else\ifx\@currsize\normalsize
+ \large
+ \else\ifx\@currsize\large
+ \Large
+ \else\ifx\@currsize\Large
+ \LARGE
+ \else\ifx\@currsize\LARGE
+ \huge
+ \else\ifx\@currsize\huge
+ \Huge
+ \else\ifx\@currsize\Huge
+ \relax
+ \else
+ \caption@Warning{%
+ Cannot determine current font size.\MessageBreak
+ Try setting it with `size=' explicitly}%
+ \fi\fi\fi\fi\fi\fi\fi\fi\fi\fi}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@hypersetup}
+% |\caption@hypersetup|\marg{options}\\
+% expands to |\hypersetup|\marg{options} if defined, to nothing otherwise.
+% \begin{macrocode}
+\newcommand*\caption@hypersetup{\caption@ifdefined\hypersetup\hypersetup\@gobble}
+\DeclareCaptionFont{hypersetup}{\caption@hypersetup{#1}} % for usage in \captionsetup{font={hypersetup=...}}
+\DeclareCaptionOption{hypersetup}{\caption@hypersetup{#1}} % for usage in \captionsetup[<env>]{hypersetup=...}
+% \end{macrocode}
+% \end{macro}
+%
+% \section{Sizes}
+%
+% \changes{v1.0a}{2004/01/23}{Option \opt{size=} now sets \cs{captionsize} instead of \cs{captionfont}}
+% The old versions \version{1.x} of \thispackage\ offered this
+% command to setup the font size used for captions. We still do
+% so old documents will work fine.
+% \begin{macrocode}
+\DeclareCaptionOption{size}{\caption@setfont{size}{#1}}
+\caption@setmapping{size}{font}
+% \end{macrocode}
+%
+% `default' usually maps to `none'.
+% \begin{macrocode}
+\SetCaptionDefault{size}{none}
+% \end{macrocode}
+%
+% \section{Justifications}
+%
+% \begin{macro}{\DeclareCaptionJustification}
+% \changes{v1.0a}{2004/01/17}{Pass through argument \#2 so extra spaces between arguments do make any harm}
+% \changes{v1.1}{2007/07/03}{Mapped to \cs{DeclareCaptionFont}}
+% \changes{v2.0}{2020/07/26}{Uses \cs{caption@decl} now}
+% |\DeclareCaptionJustification|\oarg{package}\marg{name}\marg{code}
+% \begin{macrocode}
+\newcommand*\DeclareCaptionJustification{%
+% \caption@decl@package{justification}{\caption@decl{justification}}} % Because of floatrow it isn't so easy...
+% \end{macrocode}
+% Unfortunately the (unmaintained) \package{floatrow} uses the old storage scheme
+% of the \package{caption} package and therefore expects the justification code
+% in |\caption@hj@|\meta{name} instead of |\caption@justification@|\meta{name}.
+% For this reason we have to store the code for the \package{floatrow} package
+% additionally, so |\flrow@FBo|\-|Align| will still work fine.
+% \begin{macrocode}
+ \caption@withoptargs\caption@declare@justification}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@declare@justification[3]{%
+ \caption@decl@package{justification}{\caption@decl{justification}}#1{#2}{#3}%
+ \expandafter\let\csname caption@hj@#2\expandafter\endcsname\csname caption@justification@#2\endcsname}
+\@onlypreamble\DeclareCaptionJustification
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+\DeclareCaptionOption{justification}{%
+ \caption@load@package{justification}{#1}%
+ \caption@set{justification}{#1}}
+% \end{macrocode}
+%
+% These are the pre-defined justification code snippets.
+% \begin{macrocode}
+\DeclareCaptionJustification{justified}{}
+\DeclareCaptionJustification{centering}{\centering}
+\DeclareCaptionJustification{centerfirst}{\centerfirst}
+\DeclareCaptionJustification{centerlast}{\centerlast}
+\DeclareCaptionJustification{raggedleft}{\raggedleft}
+\DeclareCaptionJustification{raggedright}{\raggedright}
+% \end{macrocode}
+%
+% `default' usually maps to `justified'.
+% \begin{macrocode}
+\SetCaptionDefault{justification}{justified}
+% \end{macrocode}
+%
+% \begin{macro}{\centerfirst}
+% \changes{v1.0j}{2007/01/21}{Bugfix: Usage of \cs{@centercr} added (Thanks to Olga!)}
+% \changes{v1.0j}{2007/01/21}{This macro renamed from \cs{caption@centerfirst} to \cs{centerfirst}}
+% Please blame Frank Mittelbach for the code of |\center|\-|first| |:-)|
+% \begin{macrocode}
+\providecommand\centerfirst{%
+ \let\\\@centercr
+ \edef\caption@normaladjust{%
+ \leftskip\the\leftskip
+ \rightskip\the\rightskip
+ \parfillskip\the\parfillskip\relax}%
+ \leftskip\z@\@plus -1fil%
+ \rightskip\z@\@plus 1fil%
+ \parfillskip\z@skip
+ \noindent\hskip\z@\@plus 2fil%
+ \@setpar{\@@par\@restorepar\caption@normaladjust}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\centerlast}
+% \changes{v1.0j}{2007/01/21}{Bugfix: Usage of \cs{@centercr} added (Thanks to Olga!)}
+% \changes{v1.0j}{2007/01/21}{This macro renamed from \cs{caption@centerlast} to \cs{centerlast}}
+% This one is based on code from Anne Br\"uggemann-Klein\cite{Anne}.
+% \begin{macrocode}
+\providecommand\centerlast{%
+ \let\\\@centercr
+ \leftskip\z@\@plus 1fil%
+ \rightskip\z@\@plus -1fil%
+ \parfillskip\z@\@plus 2fil\relax}
+% \end{macrocode}
+% \end{macro}
+%
+% \section{Vertical spaces before and after captions}
+%
+% \begin{macro}{\abovecaptionskip}
+% \begin{macro}{\belowcaptionskip}
+% Usually these skips are defined within the document class, but some
+% document classes don't.
+% \begin{macrocode}
+\caption@ifundefined\abovecaptionskip{%
+ \newlength\abovecaptionskip\setlength\abovecaptionskip{10\p@}}{}
+\caption@ifundefined\belowcaptionskip{%
+ \newlength\belowcaptionskip\setlength\belowcaptionskip{0\p@}}{}
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+%
+% \changes{v1.0c}{2005/02/12}{Option \opt{skip=} added}
+% \begin{macrocode}
+\DeclareCaptionOption{aboveskip}{\setlength\abovecaptionskip{#1}}
+\DeclareCaptionOption{belowskip}{\setlength\belowcaptionskip{#1}}
+\DeclareCaptionOption{skip}{\setlength\abovecaptionskip{#1}}
+% \end{macrocode}
+%
+% \begin{macro}{\caption@rule}
+% \changes{v1.2b}{2008/05/06}{This macro added}
+% |\caption@rule|\\
+% Draws an invisible rule to adjust the ``skip'' setting.
+% \begin{macrocode}
+\newcommand*\caption@rule{\caption@ifrule\caption@hrule\relax}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@hrule{\hrule\@height\z@}
+% \end{macrocode}
+% \end{macro}
+%
+% \changes{v1.2b}{2008/05/06}{Option \opt{rule=} added}
+% \begin{macrocode}
+\DeclareCaptionOption{rule}[1]{\caption@set@bool\caption@ifrule{#1}}
+% \end{macrocode}
+%
+% \section{Positioning}
+%
+% These macros handle the right position of the caption.
+% Note that the position is actually \emph{not} controlled by the
+% \package{caption3} kernel options, but by the user (or a specific package
+% like the \package{float} package) instead.
+% The user can put the |\caption| command wherever he likes! So this stuff
+% is only to give us a \emph{hint} where to put the right skips, the user
+% usually has to take care for himself that this hint actually matches the
+% right position.
+%
+% \begin{macro}{\caption@declare@position}
+% \changes{v2.0}{2020/07/26}{This macro added}
+% |\caption@declare@position|\marg{name}\marg{code}\\
+% declares a captionposition setting of the given \meta{name},
+% \meta{code} must either expand to |\@first|\-|of|\-|two| (top) or
+% |\@second|\-|of|\-|two| (below).
+% \begin{macrocode}
+\newcommand*\caption@declare@position[2]{%
+ \caption@decl{position}{#1}{#2}}
+\@onlypreamble\caption@declare@position
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+\DeclareCaptionOption{position}{\caption@setposition{#1}}
+% \end{macrocode}
+% \changes{v1.0a}{2004/01/09}{Options \opt{figureposition} and \opt{tableposition} added}
+% \begin{macrocode}
+\DeclareCaptionOption{figureposition}{\captionsetup*[figure]{position=#1}}
+\@onlypreamble@key{caption}{figureposition}
+% \end{macrocode}
+% \begin{macrocode}
+\DeclareCaptionOption{tableposition}{\captionsetup*[table]{position=#1}}
+\@onlypreamble@key{caption}{tableposition}
+% \end{macrocode}
+%
+% \begin{macro}{\caption@setposition}
+% \changes{v1.0a}{2004/01/22}{Now the positions \opt{t}, \opt{above}, \opt{b}, \opt{below}, and \opt{a} are allowed, too}
+% \changes{v1.0c}{2004/08/10}{Usage of \cs{caption@defaultpos} added}
+% \changes{v2.0}{2020/07/27}{Uses \cs{caption@set} now}
+% |\caption@setposition|\marg{position}\\
+% puts |\caption@position| to the right value.
+% (Note: Since this command is used by the \package{floatrow} package as well
+% its syntax should not change.)
+% \begin{macrocode}
+\newcommand*\caption@setposition{\caption@set{position}}
+% \end{macrocode}
+% \end{macro}
+%
+% These are the pre-defined position code snippets.
+% \begin{macrocode}
+\caption@declare@position{t}{\@firstoftwo}
+\caption@declare@position{top}{\@firstoftwo}
+\caption@declare@position{above}{\@firstoftwo}
+\caption@declare@position{b}{\@secondoftwo}
+\caption@declare@position{bottom}{\@secondoftwo}
+\caption@declare@position{below}{\@secondoftwo}
+\caption@declare@position{a}{\caption@autoposition}% needed by floatrow package, \flrow@cappos
+\caption@declare@position{auto}{\caption@autoposition}
+% \end{macrocode}
+%
+% \changes{v1.1}{2007/05/08}{Default position changed from `bottom' to `auto'}
+% `default' usually maps to `auto'.
+% \begin{macrocode}
+\SetCaptionDefault{position}{auto}
+% \end{macrocode}
+%
+% \begin{macro}{\caption@autoposition}
+% \changes{v2.0}{2020/07/27}{This macro added}
+% If in doubt, `position=auto' maps to `position=below'.
+% \begin{macrocode}
+\let\caption@autoposition\@secondoftwo
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@iftop}
+% \changes{v1.0a}{2004/01/23}{Split into \cs{caption@iftop} \& \cs{caption@fixposition}}
+% \changes{v1.0c}{2005/02/12}{Adapted to \cs{caption@defaultpos}}
+% \changes{v1.1}{2007/05/08}{Position will be fixed to `bottom' if `auto'}
+% \changes{v2.0}{2020/07/27}{Adapted to current implementation of `auto'}
+% |\caption@iftop|\marg{true-code}\marg{false-code}\\
+% Since version \version{2.0} this command is identical to |\caption@position|.
+% \begin{macrocode}
+\newcommand*\caption@iftop{\caption@position}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@fixposition}
+% \changes{v1.0a}{2004/01/23}{\cs{ifvmode} added}
+% \changes{v1.0b}{2004/05/16}{Split into \cs{caption@fixposition} & \cs{caption@autoposition}}
+% \changes{v2.0}{2020/07/27}{Adapted to current implementation of `auto'}
+% |\caption@fixposition|\\
+% We try to guess the current position of the caption by checking |\prev|\-|depth|.\par
+% A different solution would be setting the |\space|\-|factor| to something
+% not much less than 1000 (for example 994) in |\caption@start| and
+% checking this value here by |\ifnum\space|\-|factor=994|.
+% (It's implemented in the \package{threeparttable} package\cite{threeparttable} this way.)\par
+% Another idea would be checking |\@if|\-|mini|\-|page|, but since some packages
+% typeset the caption within a simple |\vbox| this does not seem to be a good one.
+% \begin{macrocode}
+\newcommand*\caption@fixposition{%
+ \ifvmode
+ \edef\caption@tempa{\the\prevdepth}%
+ \caption@Debug{\protect\prevdepth=\caption@tempa}%
+ \ifdim\prevdepth>-\p@
+ \let\caption@autoposition\@secondoftwo % position=below
+ \else
+ \let\caption@autoposition\@firstoftwo % position=above
+ \fi
+ \else
+ \caption@Debug{no \protect\prevdepth}%
+ \let\caption@autoposition\@secondoftwo % position=below
+ \fi}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@setautoposition}
+% \changes{v1.1}{2007/06/10}{This macro added}
+% \changes{v2.0}{2020/07/27}{Adapted to current implementation of `auto'}
+% |\caption@setautoposition|\marg{position}\\
+% replaces the above algorithm by a different one (or a fixed position setting).
+% \begin{macrocode}
+\newcommand*\caption@setautoposition[1]{%
+ \def\caption@fixposition{\caption@@set{position}{autoposition}{#1}}}
+% \end{macrocode}
+% \end{macro}
+%
+% \section{Hooks}
+%
+% \begin{macro}{\AtBeginCaption}
+% \begin{macro}{\AtEndCaption}
+% |\AtBeginCaption|\marg{code}\\
+% |\AtEndCaption|\marg{code}\\
+% These hooks can be used analogous to |\At|\-|Begin|\-|Document| and
+% |\At|\-|End|\-|Document|.
+% \begin{macrocode}
+\newcommand*\caption@beginhook{}
+\newcommand*\caption@endhook{}
+\newcommand*\AtBeginCaption{\l@addto@macro\caption@beginhook}
+\newcommand*\AtEndCaption{\l@addto@macro\caption@endhook}
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+%
+% \section{Lists}
+%
+% \changes{v1.0b}{2004/05/16}{Option \opt{listof=} added}
+% \changes{v1.2}{2007/11/17}{Option \opt{list=} added}
+% \begin{macrocode}
+\DeclareCaptionOption{list}[1]{\caption@setlist{#1}}
+\DeclareCaptionOption{listof}[1]{\caption@setlist{#1}}
+% \end{macrocode}
+%
+% \begin{macro}{\caption@setlist}
+% \changes{v1.2a}{2008/03/20}{This macro added}
+% |\caption@setlist|\marg{boolean value}\\
+% sets the `list' option to either `off' or `on'.
+% \begin{macrocode}
+\newcommand*\caption@setlist{\caption@set@bool\caption@iflist}
+% \end{macrocode}
+% \begin{macrocode}
+\caption@setlist{on}
+% \end{macrocode}
+% \end{macro}
+%
+% \changes{v1.4}{2011/08/30}{Option \opt{listtype=} added}
+% \changes{v1.4}{2011/08/30}{Option \opt{listtype+=} added}
+% \begin{macrocode}
+\DeclareCaptionOption{listtype}{\caption@setlisttype{#1}}
+\DeclareCaptionOption{listtype+}{\caption@setlisttype@ext{#1}}
+% \end{macrocode}
+%
+% \begin{macro}{\caption@setlisttype}
+% \changes{v1.4}{2011/08/30}{This macro added}
+% |\caption@setlisttype|\marg{type}\\
+% sets the `listtype' option to the given \meta{type}.
+% \begin{macrocode}
+\newcommand*\caption@setlisttype{%
+ \caption@setlisttype@ext{}%
+ \caption@@setlisttype\caption@listtype}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@@setlisttype[2]{%
+ \edef#1{#2}%
+ \ifx#1\@empty \let#1\@undefined \fi}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@setlisttype@ext}
+% \changes{v1.4}{2011/08/30}{This macro added}
+% |\caption@setlisttype@ext|\marg{type extension}\\
+% sets the `listtype' option to the given \meta{type extension}.
+% \begin{macrocode}
+\newcommand*\caption@setlisttype@ext{%
+ \caption@@setlisttype\caption@listtype@ext}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\DeclareCaptionListFormat}
+% \changes{v1.1}{2004/07/15}{This macro added}
+% \changes{v1.2}{2007/11/17}{Renamed from \cs{DeclareCaptionListOfFormat} to \cs{DeclareCaptionListFormat}}
+% \changes{v2.0}{2020/07/26}{Uses \cs{caption@decl} now}
+% |\DeclareCaptionListFormat|\marg{name}\marg{code with \#1 and \#2}
+% \begin{macrocode}
+\newcommand*\DeclareCaptionListFormat[2]{%
+ \caption@decl{listformat}{#1}##1##2{#2}}
+\@onlypreamble\DeclareCaptionListFormat
+% \end{macrocode}
+% \end{macro}
+%
+% \changes{v1.1}{2007/07/15}{Option \opt{listofformat=} added}
+% \changes{v1.2}{2007/11/17}{Option \opt{listofformat=} renamed to \opt{listformat=}}
+% \begin{macrocode}
+\DeclareCaptionOption{listformat}{\caption@set{listformat}{#1}}
+% \end{macrocode}
+%
+% There are seven pre-defined list formats. (The first five were taken from the \package{subfig} package.)
+% \begin{macrocode}
+\DeclareCaptionListFormat{empty}{}
+\DeclareCaptionListFormat{simple}{#1#2}
+\DeclareCaptionListFormat{subsimple}{#2}
+\DeclareCaptionListFormat{parens}{#1(#2)}
+\DeclareCaptionListFormat{subparens}{(#2)}
+\DeclareCaptionListFormat{period}{#1#2.}
+\DeclareCaptionListFormat{subperiod}{#2.}
+% \end{macrocode}
+%
+% `default' usually maps to `subsimple'.
+% \begin{macrocode}
+\SetCaptionDefault{listformat}{subsimple}
+% \end{macrocode}
+%
+% \begin{macro}{\caption@lstfmt}
+% \changes{v2.0}{This macro added}
+% To provide backward compatibility we still offer \cs{caption@lstfmt}.
+% (\cs{caption@lstfmt} is used in the \package{dgruyter} package.)
+% \begin{macrocode}
+\newcommand*\caption@lstfmt{\caption@listformat}
+% \end{macrocode}
+% \end{macro}
+%
+% \section{Debug option}
+% \changes{v1.0k}{2007/03/04}{Debug option added}
+%
+% \begin{macrocode}
+\DeclareCaptionOption{debug}[1]{%
+ \caption@set@bool\caption@ifdebug{#1}%
+ \caption@ifdebug
+ {\let\caption@Debug\caption@Info}%
+ {\let\caption@Debug\@gobble}}
+% \end{macrocode}
+% \begin{macrocode}
+\DeclareOption{debug}{\setkeys{caption}{debug}}
+% \end{macrocode}
+% \begin{macrocode}
+\setkeys{caption}{debug=0}
+% \end{macrocode}
+%
+% \section{Document class support}
+% \changes{v2.0}{2018/05/11}{Document class support re-written}
+%
+% \begin{macro}{\@makecaption@standard}
+% \begin{macrocode}
+% article|report|book.sty [2005/09/16 v1.4f Standard LaTeX document class]
+\newcommand\@makecaption@standard[2]{%
+ \vskip\abovecaptionskip
+ \sbox\@tempboxa{#1: #2}%
+ \ifdim \wd\@tempboxa >\hsize
+ #1: #2\par
+ \else
+ \global \@minipagefalse
+ \hb@xt@\hsize{\hfil\box\@tempboxa\hfil}%
+ \fi
+ \vskip\belowcaptionskip}
+\@onlypreamble\@makecaption@standard
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\@makecaption@arabic}
+% \begin{macrocode}
+% arabicore.sty [2006/01/01 v1.0 Arabi Core switching commands (may still change)]
+\newcommand\@makecaption@arabic[2]{%
+ \vskip\abovecaptionskip
+ \sbox\@tempboxa{#1: #2}%
+ \sbox\@Arabitempboxa{\textRL{#2} : #1}%
+ \if@rl{
+ \ifdim \wd\@Arabitempboxa >\hsize
+ \textRL{#2} : #1\par
+ \else
+ \global \@minipagefalse
+ \hb@xt@\hsize{\hfil\box\@Arabitempboxa\hfil}%
+ \fi}\else{
+ \ifdim \wd\@tempboxa >\hsize
+ #1: #2\par
+ \else
+ \global \@minipagefalse
+ \hb@xt@\hsize{\hfil\box\@tempboxa\hfil}%
+ \fi}\fi
+ \vskip\belowcaptionskip}
+\@onlypreamble\@makecaption@arabic
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\@makecaption@latvian}
+% \begin{macrocode}
+% latvian.ldf [2018/02/19 v2.0b Latvian support from the babel system]
+\newcommand\@makecaption@latvian[2]{%
+ \vskip10\p@
+ \sbox\@tempboxa{#1\if\empty#2\else: #2\fi}%
+ \ifdim\wd\@tempboxa>\hsize
+ #1: #2\par
+ \else
+ \hbox to\hsize{\hfil\box\@tempboxa\hfil}%
+ \fi}
+\@onlypreamble\@makecaption@latvian
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@ifdocumentclass}
+% Boolean switch which is set if the document class could be detected
+% successfully, i.e. |\caption@document|\-|class| is set to a proper value.
+% (If |\caption@document|\-|class| is already set, this flag will also be set.)
+% \begin{macrocode}
+\caption@setbool{documentclass}{1}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@documentclass}
+% \changes{v1.8e}{2018/05/11}{This macro added}
+% Determine document class used.
+% Set |\caption@document|\-|class| by good-guessing, if not already set.
+% \begin{macrocode}
+\caption@ifundefined\caption@documentclass{%
+% \end{macrocode}
+% \begin{macrocode}
+ \@ifclassloaded{beamer}{%
+ \caption@InfoNoLine{beamer document class detected}%
+ \def\caption@documentclass{beamer}%
+% \end{macrocode}
+% \begin{macrocode}
+ }{\@ifclassloaded{elsarticle}{%
+ \caption@InfoNoLine{elsarticle document class detected}%
+ \def\caption@documentclass{elsarticle}%
+% \end{macrocode}
+% \begin{macrocode}
+ }{\@ifclassloaded{memoir}{%
+ \caption@InfoNoLine{memoir document class detected}%
+ \def\caption@documentclass{memoir}%
+% \end{macrocode}
+% \begin{macrocode}
+ }{\caption@ifdefined\scr@caption{%
+ \caption@InfoNoLine{KOMA-Script document class detected}%
+ \def\caption@documentclass{koma}%
+% \end{macrocode}
+% If |\@captionheadfont| is defined, we assume it's a AMS or SMF document class.
+% \begin{macrocode}
+ }{\caption@ifdefined\@captionheadfont{%
+ \caption@InfoNoLine{AMS or SMF document class detected}%
+ \def\caption@documentclass{ams-smf}%
+% \end{macrocode}
+% If |\CaptionFonts| is defined, we assume it's a NTG Dutch document class.
+% \begin{macrocode}
+ }{\caption@ifdefined\CaptionFonts{%
+ \caption@InfoNoLine{NTG document class detected}%
+ \def\caption@documentclass{ntg}%
+% \end{macrocode}
+% If |\cph@font| and |\cpb@font| are defined, we assume it's the thesis document class.
+% \begin{macrocode}
+ }{\caption@ifdefined\cph@font{%
+ \caption@ifdefined\cpb@font\@firstoftwo\@secondoftwo
+ }{%
+ \@secondoftwo
+ }{%
+ \caption@InfoNoLine{thesis document class detected}%
+ \def\caption@documentclass{thesis}%
+ }{%
+% \end{macrocode}
+% If the definition of |\@make|\-|caption| matches the one from the standard
+% \LaTeX\ document classes |article|, |report|, or |book|, we assume it's
+% either one of them or is compatible to them.
+% \begin{macrocode}
+ \ifx\@makecaption\@undefined
+ \caption@InfoNoLine{Document class w/o caption stuff detected}%
+ \else
+ \ifx\@makecaption\@makecaption@standard
+ \caption@InfoNoLine{Standard document class detected}%
+ \else
+ \ifx\@makecaption\@makecaption@arabic
+ \caption@InfoNoLine{arabic babel option detected}%
+ \else
+ \ifx\@makecaption\@makecaption@latvian
+ \caption@InfoNoLine{latvian babel option detected}%
+ \else
+% \end{macrocode}
+% Otherwise we are clueless and use standard default settings for the captions.
+% (And we unset the |document|\-|class| flag to indicate that the content of
+% |\caption@document|\-|class| is not correct.)
+% \begin{macrocode}
+ \caption@InfoNoLine{%
+ Unknown document class (or package),\MessageBreak
+ standard defaults will be used}%
+ \caption@InfoNoLine{\string\@makecaption\space=\space\meaning\@makecaption\@gobble}%
+ \caption@setbool{documentclass}{0}% unknown document class
+ \fi
+ \fi
+ \fi
+ \fi
+% \end{macrocode}
+% \begin{macrocode}
+ \let\caption@documentclass\@empty % don't load adaption code later on
+ }}}}}}}%
+}{}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\AtCaptionPackage}
+% \changes{v2.0}{2018/05/14}{This macro added}
+% |\AtCaptionPackage|\marg{code}\\
+% can be used by the document class adaption packages to execute extra code
+% if the \package{caption} package is loaded (later on).
+% This code will by applied right before the package options are evaluated.
+% \begin{macrocode}
+\newcommand*\AtCaptionPackage{%
+ \g@addto@macro\caption@documentclass@code}
+\@onlypreamble\AtCaptionPackage
+% \end{macrocode}
+% \begin{macrocode}
+\providecommand*\caption@documentclass@code{}
+\@onlypreamble\caption@documentclass@code
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\AfterCaptionPackage}
+% \changes{v2.1}{2020/09/12}{This macro added}
+% |\AfterCaptionPackage|\marg{code}\\
+% can be used by the document class adaption packages to execute extra code
+% if the \package{caption} package is loaded (later on).
+% This code will by applied at the very end.
+% \begin{macrocode}
+\newcommand*\AfterCaptionPackage{%
+ \g@addto@macro\caption@endtitles@code}
+\@onlypreamble\AfterCaptionPackage
+% \end{macrocode}
+% \begin{macrocode}
+\providecommand*\caption@endtitles@code{}
+\@onlypreamble\caption@endtitles@code
+% \end{macrocode}
+% \end{macro}
+%
+% \section{Babel support}
+%
+% \begin{macro}{\caption@IfBabelPackageLoaded}
+% |\caption@IfBabelPackageLoaded|\marg{option}\marg{cmd}\marg{yes-code}\marg{no-code}\\
+% expands the given \meta{yes-code} if |\caption@if|\-|babel@|\meta{option}
+% is set and \meta{cmd} is defined.
+% Otherwise the \meta{no-code} is expanded.\par
+% This way the adaption could be prevented by defining
+% \begin{quote}|\def\caption@ifbabel@|\meta{option}|{false}|\end{quote}
+% \begin{macrocode}
+\newcommand*\caption@IfBabelPackageLoaded[4]{%
+ \caption@ifdefined#2\@firstofone\caption@AtBeginDocument{%
+ \caption@if@bool{\@nameuse{caption@ifbabel@#1}}%
+ {\def\caption@tempa{\caption@ifdefined#2}}%
+ {\let\caption@tempa\@secondoftwo}%
+ \caption@tempa
+ {\caption@InfoNoLine{#1 babel package is loaded}#3}%
+ {#4}}}
+\@onlypreamble\caption@IfBabelPackageLoaded
+% \end{macrocode}
+% \end{macro}
+%
+% \subsection{The arabic \& farsi babel option}
+% \changes{v1.8}{2018/05/20}{\package{arabic} babel support added}
+% \changes{v2.0}{2020/08/02}{\package{arabic} babel support updated}
+% \changes{v2.0}{2020/08/02}{\package{farsi} babel support added}
+%
+% \begin{macrocode}
+\DeclareCaptionLabelSeparator{arabi}{\if@rl\space\fi: }
+% \end{macrocode}
+%
+% \begin{macro}{\caption@IfBabelArabi}
+% |\caption@IfBabelArabic|\marg{yes-code}\marg{no-code}
+% \begin{macrocode}
+\newcommand*\caption@IfBabelArabi{%
+ \caption@IfBabelPackageLoaded{arabi}{\ArabiCoreLoaded}}
+\@onlypreamble\caption@IfBabelArabi
+% \end{macrocode}
+% \begin{macrocode}
+\providecommand*\caption@ifbabel@arabi{true}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+\caption@IfBabelArabi{%
+% \end{macrocode}
+%
+% \begin{macro}{\caption@rl}
+% \changes{v1.8}{2018/05/20}{This macro added}
+% \begin{macrocode}
+ \newcommand\caption@rl[1]{\if@rl\textRL{#1}\else\textLR{#1}\fi}%
+% \end{macrocode}
+% \end{macro}
+%
+% If the language `arabic' or `farsi' is selected, we switch the default label separator to `arabi'.
+%
+% \begin{macrocode}
+ \caption@ifdefined\extrasarabic{%
+ \addto\extrasarabic{%
+ \caption@switchdefault{labelseparator}{\babel@save #1}{arabi}}}{}%
+ \caption@ifdefined\extrasfarsi{%
+ \addto\extrasfarsi{%
+ \caption@switchdefault{labelseparator}{\babel@save #1}{arabi}}}{}%
+% \end{macrocode}
+%
+% \begin{macrocode}
+}{%
+ \let\caption@rl\@firstofone
+}
+% \end{macrocode}
+%
+% \subsection{The babel-french package}
+% \changes{v1.1}{2006/05/14}{\package{frenchb} babel support added}
+% \changes{v2.0}{2020/08/01}{\package{french} babel support updated}
+%
+% We provide a `french' caption label separator.
+% |\caption@french@label|\-|separator| will be defined later on,
+% dependent on the `french' package used later on.
+%
+% \begin{macrocode}
+\DeclareCaptionLabelSeparator{french}{\caption@french@labelseparator}
+% \end{macrocode}
+%
+% \begin{macro}{\caption@IfBabelFrench}
+% |\caption@IfBabelFrench|\marg{yes-code}\marg{no-code}
+% \begin{macrocode}
+\newcommand*\caption@IfBabelFrench{%
+ \caption@IfBabelPackageLoaded{french}{\FB@makecaption}}
+\@onlypreamble\caption@IfBabelFrench
+% \end{macrocode}
+% \begin{macrocode}
+\providecommand*\caption@ifbabel@french{true}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+\caption@IfBabelFrench{%
+% \end{macrocode}
+%
+% The \package{babel-french} package uses |\Caption|\-|Separator| as label separator.
+%
+% \begin{macrocode}
+ \providecommand\caption@french@labelseparator{\CaptionSeparator}%
+% \end{macrocode}
+%
+% Add a space before the label separator `colon' in French
+% in order to avoid problems when |Auto|\-|Space|\-|Punctuation| is set to |false|.
+%
+% \begin{macrocode}
+ \ifFB@active@punct
+ \DeclareCaptionLabelSeparator{colon}{%
+ \ifFBfrench\penalty\@M\FBcolonspace\fi : }%
+ \fi
+% \end{macrocode}
+%
+% We switch the default label separator to `french', dependant on the switches
+% |Customise|\-|Fig|\-|Tab|\-|Captions| and |Old|\-|Fig|\-|Tab|\-|Captions|.
+%
+% \begin{macrocode}
+ \ifFBOldFigTabCaptions
+ \caption@ifdefined\extrasfrench{%
+ \addto\extrasfrench{%
+ \caption@switchdefault{labelseparator}{\babel@save #1}{french}}}{}%
+ \caption@ifdefined\extrasacadian{%
+ \addto\extrasacadian{%
+ \caption@switchdefault{labelseparator}{\babel@save #1}{french}}}{}%
+ \else
+ \ifFBCustomiseFigTabCaptions
+ \caption@AtBeginDocument{%
+ \ifFB@mainlanguage@FR
+ \SetCaptionDefault{labelseparator}{french}%
+ \fi}%
+ \fi
+ \fi
+% \end{macrocode}
+%
+% \begin{macrocode}
+}{}
+% \end{macrocode}
+%
+% \subsection{The frenchle \& frenchpro package}
+% \changes{v1.1}{2006/05/14}{\package{frenchle/pro} package support added}
+% \changes{v2.0}{2020/08/01}{\package{frenchle/pro} package support updated}
+%
+% \begin{macro}{\caption@IfFrenchLe}
+% |\caption@IfFrenchLe|\marg{yes-code}\marg{no-code}
+% \begin{macrocode}
+\newcommand*\caption@IfFrenchLe{%
+ \caption@IfBabelPackageLoaded{frenchle}{\frenchTeXmods}}
+\@onlypreamble\caption@IfBabelFrenchLe
+% \end{macrocode}
+% \begin{macrocode}
+\providecommand*\caption@ifbabel@frenchle{true}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+\caption@IfFrenchLe{%
+% \end{macrocode}
+%
+% The \package{frenchle} package uses |\caption|\-|separator| plus |\space| as label separator.
+%
+% \begin{macrocode}
+ \providecommand\caption@french@labelseparator{\captionseparator\space}%
+% \end{macrocode}
+%
+% If the language `french' is selected, we switch the default label separator to `french',
+% and switch the default font to `it' and the default label font to `up'.
+%
+% \begin{macrocode}
+ \g@addto@macro\extrasfrench{%
+ \caption@switchdefault{labelseparator}{\let\caption@original@labelseparator#1}{french}%
+ \caption@switchdefault{font}{\let\caption@original@font#1}{it}%
+ \caption@switchdefault{labelfont}{\let\caption@original@labelfont#1}{up}}%
+ \g@addto@macro\extrasenglish{%
+ \caption@restoredefault{labelseparator}{\caption@original@labelseparator}%
+ \caption@restoredefault{font}{\caption@original@font}%
+ \caption@restoredefault{labelfont}{\caption@original@labelfont}}%
+% \end{macrocode}
+%
+% Since the \package{frenchle} package overwrites |\caption|\-|font| and |\caption|\-|label|\-|font|
+% (within |\GOfrench|) we need to save them beforehand and restore them afterwards.
+%
+% \begin{macrocode}
+ \caption@AtBeginDocument{%
+ \let\captionfont@original\captionfont
+ \let\captionlabelfont@original\captionlabelfont}%
+ \g@addto@macro\GOfrench{%
+ \let\captionfont\captionfont@original
+ \let\captionlabelfont\captionlabelfont@original}%
+% \end{macrocode}
+%
+% \begin{macrocode}
+}{}
+% \end{macrocode}
+%
+% \subsection{The babel-hungarian package}
+% \changes{v1.3}{2009/03/29}{\package{magyar} babel support added}
+% \changes{v1.3a}{2011/08/12}{\package{magyar} babel support revised}
+% \changes{v1.8b}{2018/08/26}{\package{magyar} babel support revised}
+% \changes{v2.0}{2020/08/03}{\package{magyar} babel support updated}
+%
+% \begin{macrocode}
+\DeclareCaptionLabelFormat{magyar}{#2\bothIfSecond{.~}{#1}}
+% \end{macrocode}
+%
+% \begin{macro}{\caption@IfBabelHungarian}
+% |\caption@IfBabelHungarian|\marg{yes-code}\marg{no-code}
+% \begin{macrocode}
+\newcommand*\caption@IfBabelHungarian{%
+ \caption@IfBabelPackageLoaded{hungarian}{\magyar@opt@defaults}}
+\@onlypreamble\caption@IfBabelHungarian
+% \end{macrocode}
+% \begin{macrocode}
+\providecommand*\caption@ifbabel@hungarian{true}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+\caption@IfBabelHungarian{%
+% \end{macrocode}
+%
+% If the language `hungarian' or `magyar' is selected,
+% we switch the default label format to `magyar', the default separator to `period',
+% and the default list format to `subperiod'.
+%
+% \begin{macrocode}
+ \caption@ifdefined\extrashungarian{%
+ \addto\extrashungarian{%
+ \caption@switchdefault{labelformat}{\babel@save #1}{magyar}%
+ \caption@switchdefault{labelseparator}{\babel@save #1}{period}%
+ \caption@switchdefault{listformat}{\babel@save #1}{subperiod}}}{}%
+ \caption@ifdefined\extrasmagyar{%
+ \addto\extrasmagyar{%
+ \caption@switchdefault{labelformat}{\babel@save #1}{magyar}%
+ \caption@switchdefault{labelseparator}{\babel@save #1}{period}%
+ \caption@switchdefault{listformat}{\babel@save #1}{subperiod}}}{}%
+% \end{macrocode}
+%
+% \begin{macrocode}
+}{}
+% \end{macrocode}
+%
+% \subsection{The latvian babel option}
+%
+% \begin{macrocode}
+\DeclareCaptionLabelFormat{latvian}{#2\bothIfSecond{~}{#1}}
+% \end{macrocode}
+%
+% \begin{macro}{\caption@IfBabelLatvian}
+% |\caption@IfBabelLatvian|\marg{yes-code}\marg{no-code}
+% \begin{macrocode}
+\newcommand*\caption@IfBabelLatvian{%
+ \caption@IfBabelPackageLoaded{latvian}{\bbl@latvianindent}}
+\@onlypreamble\caption@IfBabelLatvian
+% \end{macrocode}
+% \begin{macrocode}
+\providecommand*\caption@ifbabel@latvian{true}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+\caption@IfBabelLatvian{%
+% \end{macrocode}
+%
+% If the language `latvian' is selected, we switch the default label format to `latvian'.
+%
+% \begin{macrocode}
+ \caption@ifdefined\extraslatvian{%
+ \addto\extraslatvian{%
+ \caption@switchdefault{labelformat}{\babel@save #1}{latvian}}}{}%
+% \end{macrocode}
+%
+% \begin{macrocode}
+}{}
+% \end{macrocode}
+%
+% \section{Package support}
+%
+% \begin{macro}{\caption@ifpackageloaded}
+% \changes{v2.0}{2020/07/26}{This macro added}
+% |\caption@ifpackageloaded|\marg{package}\marg{yes-code}\marg{no-code}\\
+% expands the given code if the given package is (not) loaded.
+% (Note: We cannot use |\@if|\-|package|\-|loaded| here since it's not
+% available after |\At|\-|Begin|\-|Document|.)
+% \begin{macrocode}
+\newcommand*\caption@ifpackageloaded[1]{%
+ \expandafter\ifx\csname ver@#1.\caption@pkgextension\endcsname\relax
+ \expandafter\@secondoftwo
+ \else
+ \expandafter\@firstoftwo
+ \fi}
+% \end{macrocode}
+% \begin{macrocode}
+\let\caption@pkgextension\@pkgextension
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@pkg@list}
+% \changes{v1.4b}{2012/01/12}{This macro added}
+% We used this in the past as list of packages loaded
+% |\At|\-|Begin|\-|Document|.
+% (Note: Old |.aux| files could contain
+% |\@cons|\-|\caption@pkg@list|\-|{{|\meta{package}|}}|,
+% so this macro should always be defined, even if we don't use it anymore.)
+% \begin{macrocode}
+\newcommand*\caption@pkg@list{}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@requirepackage}
+% \changes{v1.10}{2020/05/10}{This macro added}
+% \changes{v2.0}{2020/07/27}{This macro revised}
+% |\caption@requirepackage|\marg{package}\marg{option}\marg{value}\\
+% indicates that the given package option needs a package.
+% \begin{macrocode}
+\newcommand*\caption@requirepackage[2]{%
+ \caption@ifpackageloaded{#1}{}{\caption@@requirepackage{#1}{#2}}}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@@requirepackage[2]{%
+ \@cons\caption@packagelist{{#1}{#2}}} % load package later on
+% \end{macrocode}
+% \begin{macrocode}
+\caption@AtBeginDocument{%
+ \renewcommand*\caption@@requirepackage[2]{%
+ \caption@Error{Option `#2' requires the `#1' package}}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@packagelist}
+% \changes{v1.11}{2020/05/10}{This macro added}
+% We use this as list of packages loaded |\At|\-|Begin|\-|Document|.
+% \begin{macrocode}
+\newcommand*\caption@packagelist{}
+\@onlypreamble\caption@packagelist
+% \end{macrocode}
+% \begin{macrocode}
+\caption@AtBeginDocument{%
+ \def\caption@tempa{\endgroup}%
+ \begingroup
+ \def\@elt#1#2{%
+ \g@addto@macro\caption@tempa{%
+ \caption@loadpackage{#1}{#2}}}%
+ \caption@packagelist
+ \caption@tempa}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@loadpackage}
+% \changes{v1.11}{2020/05/10}{This macro added}
+% \changes{v2.0}{2020/07/26}{This macro revised}
+% |\caption@loadpackage|\marg{package}\marg{option}\marg{value}\\
+% loads the given package immediately.
+% \begin{macrocode}
+\newcommand*\caption@loadpackage[2]{%
+ \caption@ifpackageloaded{#1}{}{\caption@@loadpackage{#1}{#2}}}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@@loadpackage[2]{%
+ \caption@Info{Option `#2' requires the `#1' package}%
+ \RequirePackage{#1}\relax}
+% \end{macrocode}
+% \begin{macrocode}
+\caption@AtBeginDocument{%
+ \let\caption@@loadpackage\caption@@requirepackage}
+% \end{macrocode}
+% \end{macro}
+%
+% \subsection{The newfloat package}
+%
+% \begin{macro}{\caption@newfloat}
+% \changes{v1.4b}{2012/01/12}{This macro added}
+% \changes{v1.8h}{2020/01/03}{Usage of \cs{caption@ifpackageloaded} replaced by \cs{RequirePackage}}
+% \changes{v1.11}{2020/05/10}{Usage of \cs{RequirePackage} replaced by \cs{caption@usepackage}}
+% \changes{v2.0}{2020/07/27}{This macro revised}
+% |\caption@newfloat|\marg{option}\marg{value}\marg{code}\\
+% loads the \package{newfloat} package and executes the given code afterwards.
+% (Note: Since the package might use the crappy \package{keyval}
+% package, too, we need to save \& restore some macros here, otherwise this
+% recursion won't work properly.)
+% \begin{macrocode}
+\newcommand*\caption@newfloat[2]{%
+ \IfCaptionOptionCheck
+ {\caption@requirepackage{newfloat}{#1}}%
+ {\let\KV@prefix@ORI\KV@prefix
+ \let\@tempc@ORI\@tempc
+ \caption@loadpackage{newfloat}{#1}%
+ #2%
+ \let\@tempc\@tempc@ORI
+ \let\KV@prefix\KV@prefix@ORI}}
+% \end{macro}
+% \end{macrocode}
+% \end{macro}
+%
+% \changes{v1.0c}{2004/08/03}{Options \opt{figurename} and \opt{tablename} added}
+% \changes{v1.1}{2007/07/04}{Options \opt{figurename} and \opt{tablename} re-written}
+% \changes{v1.2}{2007/11/18}{Option \opt{name} added}
+% \begin{macrocode}
+\DeclareCaptionOption{figurename}{\caption@SetName{figure}{#1}}
+\@onlypreamble@key{caption}{figurename}
+\DeclareCaptionOption{tablename}{\caption@SetName{table}{#1}}
+\@onlypreamble@key{caption}{tablename}
+% \end{macrocode}
+%
+% \changes{v1.2a}{2008/02/28}{Options \opt{listfigurename} and \opt{listtablename} added}
+% \begin{macrocode}
+\DeclareCaptionOption{listfigurename}{\caption@SetName{listfigure}{#1}}
+\@onlypreamble@key{caption}{listfigurename}
+\DeclareCaptionOption{listtablename}{\caption@SetName{listtable}{#1}}
+\@onlypreamble@key{caption}{listtablename}
+% \end{macrocode}
+%
+% \begin{macro}{\caption@SetName}
+% \changes{v1.1}{2007/07/04}{This macro added}
+% \changes{v1.2}{2007/11/18}{After-preamble variant added}
+% \changes{v1.2a}{2008/02/28}{Renamed from \cs{caption@SetFloatName} to \cs{caption@SetName}}
+% \changes{v1.2b}{2008/08/02}{Bugfix: Works now without \cs{addto}, too}
+% \changes{v1.4a}{2011/10/29}{Outsourced to \package{newfloat} package}
+% \changes{v1.4b}{2012/01/12}{Bugfix: Uses \cs{caption@newfloat} now}
+% |\caption@SetName|\marg{float}\marg{name}\\
+% loads the \package{newfloat} package and uses |\newfloat@set|\-|name|.
+% \begin{macrocode}
+\newcommand*\caption@SetName[2]{%
+ \caption@newfloat{#1name}{\newfloat@setname{#1}{#2}}}
+\@onlypreamble\caption@SetName
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macrocode}
+\DeclareCaptionOption{name}{%
+ \IfCaptionOptionCheck{}{\caption@setname\@captype{#1}}}
+% \end{macrocode}
+%
+% \begin{macro}{\caption@setname}
+% |\caption@setname|\marg{float}\marg{name}\\
+% sets the given float name, e.g.: `Figure` for `figure`.
+% \begin{macrocode}
+\newcommand*\caption@setname[2]{%
+ \@namedef{#1name}{#2}}
+% \end{macrocode}
+% \end{macro}
+%
+% \changes{v1.2}{2007/12/21}{Options \opt{figurewithin} and \opt{tablewithin} added}
+% \changes{v1.2e}{2010/01/09}{The \opt{within} options are now available within the document, too}
+%
+% \begin{macrocode}
+\DeclareCaptionOption{figurewithin}{\caption@within{figure}{#1}}
+\DeclareCaptionOptionNoValue{figurewithout}{\caption@within{figure}{none}}
+\DeclareCaptionOption{tablewithin}{\caption@within{table}{#1}}
+\DeclareCaptionOptionNoValue{tablewithout}{\caption@within{table}{none}}
+% \end{macrocode}
+%
+% \begin{macro}{\caption@within}
+% \changes{v1.2}{2007/12/21}{This macro added}
+% \changes{v1.4a}{2011/10/29}{Outsourced to \package{newfloat} package}
+% \changes{v1.4b}{2012/01/12}{Bugfix: Uses \cs{caption@newfloat} now}
+% |\caption@within|\marg{float}\marg{value}\\
+% loads the \package{newfloat} package and uses |\newfloat@set|\-|within|.
+% \begin{macrocode}
+\newcommand*\caption@within[2]{%
+ \caption@newfloat{#1within=#2}{\newfloat@setwithin{#1}{#2}}}
+% \end{macrocode}
+% \end{macro}
+%
+% \changes{v1.2b}{2008/04/13}{Option \opt{within} added}
+% \changes{v1.2e}{2010/01/09}{The global \opt{within} option will now affect user-defined floats declared with \cs{DeclareCaptionType}, too}
+%
+% \begin{macrocode}
+\DeclareCaptionOption{within}{%
+ \caption@newfloat{within=#1}{\newfloatsetup{within=#1}}}
+\DeclareCaptionOptionNoValue{without}{%
+ \caption@newfloat{without}{\newfloatsetup{without}}}
+% \end{macrocode}
+%
+% \subsection{The ragged2e package}
+% \changes{v1.0b}{2004/05/16}{Improved \package{ragged2e} package support}
+% \changes{v1.8h}{2020/01/03}{Revised \package{ragged2e} package support}
+% \changes{v1.9}{2020/05/05}{Enhanced \package{ragged2e} package support}
+% \changes{v1.10}{2020/05/10}{Revised \package{ragged2e} package support}
+%
+% We support the upper-case commands offered by the \package{ragged2e}
+% package.
+% \begin{macrocode}
+\DeclareCaptionJustification[ragged2e]{Justified}{\justifying}
+\DeclareCaptionJustification[ragged2e]{Centering}{\Centering}
+\DeclareCaptionJustification[ragged2e]{RaggedLeft}{\RaggedLeft}
+\DeclareCaptionJustification[ragged2e]{RaggedRight}{\RaggedRight}
+% \end{macrocode}
+%
+% \subsection{The sansmath package}
+% \changes{v1.3}{2011/01/01}{\package{sansmath} package support added}
+% \changes{v1.10}{2020/05/10}{\package{sansmath} package support revised}
+%
+% \begin{macrocode}
+\DeclareCaptionFont[sansmath]{sansmath}{\sansmath}
+% \end{macrocode}
+%
+% \subsection{The setspace package}
+% \changes{v1.0n}{2007/04/02}{\package{setspace} package support added}
+% \changes{v1.2d}{2009/10/09}{\package{setspace} package support revised}
+%
+% \begin{macrocode}
+\DeclareCaptionFont{singlespacing}{%
+ \caption@ifdefined\setspace@singlespace{%
+ \setstretch\setspace@singlespace}{}}% normally 1
+\DeclareCaptionFont[setspace]{onehalfspacing}{\onehalfspacing}
+\DeclareCaptionFont[setspace]{doublespacing}{\doublespacing}
+\DeclareCaptionFont[setspace]{stretch}{\setstretch{#1}}
+% \end{macrocode}
+%
+% \subsection{The subfig package}
+% \changes{v1.1}{2007/07/07}{Adaptions to the \package{subfig} package added}
+% \changes{v1.4a}{2011/11/01}{Test for the \package{subfig} package revised}
+% \changes{v2.0a}{2020/09/07}{Re-definition of \cs{sf@ifpositiontop} added}
+%
+% Since the \package{subfig} package is not maintained anymore,
+% we have to make adaptions to \thispackage~\version{1.1} here.
+% Please note that we only support the version $1.3$ of the \package{subfig} package,
+% so older versions do not work with this version of \thispackage, and newer
+% versions are expected to be adapted.
+%
+% \begin{macrocode}
+\caption@AtBeginDocument{%
+ \def\@tempa{2005/06/28 ver: 1.3 subfig package}%
+ \expandafter\ifx\csname ver@subfig.sty\endcsname\@tempa
+ \caption@InfoNoLine{subfig package v1.3 is loaded}%
+% \end{macrocode}
+% \begin{macrocode}
+ \def\caption@eh{\caption@@eh{subfig}}%
+ \let\caption@setfloattype\@gobble
+ \let\@dottedxxxline\sf@NEW@dottedxxxline
+ \let\sf@subfloat\sf@NEW@subfloat
+ \let\sf@ifpositiontop\caption@iftop
+% \end{macrocode}
+% \begin{macrocode}
+ \fi
+ \let\sf@NEW@dottedxxxline\@undefined
+ \let\sf@NEW@subfloat\@undefined}
+% \end{macrocode}
+%
+% \begin{macro}{\@dottedxxxline}
+% New version of |\@dottedxxxline|
+% \begin{macrocode}
+\def\sf@NEW@dottedxxxline#1#2#3#4#5#6#7{%
+ \begingroup
+ \caption@setfloattype{#1}%
+ \caption@setoptions{subfloat}%
+ \caption@setoptions{sub#1}%
+ \ifnum #3>\@nameuse{c@#2depth}\else
+ \@dottedtocline{\z@}{#4}{#5}{#6}{#7}%
+ \fi
+ \endgroup}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\sf@subfloat}
+% \changes{v1.4b}{2011/12/29}{Bugfix 11-12-23: Usage of \cs{caption@warmup} added}
+% New version of |\sf@subfloat|
+% \begin{macrocode}
+\def\sf@NEW@subfloat{%
+ \begingroup
+ \@nameuse{caption@warmup}%
+ \caption@setfloattype\@captype
+ \sf@ifpositiontop{%
+ \maincaptiontoptrue
+ }{%
+ \maincaptiontopfalse
+ }%
+ \caption@setoptions{subfloat}%
+ \caption@setoptions{sub\@captype}%
+ \let\sf@oldlabel=\label
+ \let\label=\subfloat@label
+ \ifmaincaptiontop\else
+ \advance\@nameuse{c@\@captype}\@ne\relax
+ \fi
+ \refstepcounter{sub\@captype}%
+ \setcounter{sub\@captype @save}{\value{sub\@captype}}%
+ \@ifnextchar [% %] match left bracket
+ {\sf@@subfloat}%
+ {\sf@@subfloat[\@empty]}}
+% \end{macrocode}
+% \end{macro}
+%
+% Make the \package{subfig} package documentation compile.
+% \begin{macrocode}
+\DeclareCaptionOption{lofdepth}[2]{\caption@ifdefined\c@lofdepth{\setcounter{lofdepth}{#1}}{}}
+\DeclareCaptionOption{lotdepth}[2]{\caption@ifdefined\c@lotdepth{\setcounter{lotdepth}{#1}}{}}
+% \end{macrocode}
+%
+% \section{Making an `List of' entry}
+%
+% \begin{macro}{\caption@addcontentsline}
+% \changes{v1.1}{2007/07/01}{This macro added}
+% \changes{v1.3}{2010/10/26}{Error check added}
+% \changes{v1.3}{2011/06/24}{Split into two macros}
+% \changes{v1.4}{2011/08/19}{Split into three macros}
+% \changes{v1.4}{2011/08/30}{Support for option \opt{listtype=} added}
+% \changes{v1.5}{2012/01/15}{Usage of \cs{caption@addsubcontentslines} added}
+% \changes{v1.7}{2015/09/15}{Argument \#3 which holds the environment name added to \cs{caption@lstfmt}}
+% \changes{v1.7}{2015/09/20}{Unfortunately \package{subfig} defines and uses \cs{caption@lstfmt} as well, so I replaced the third argument with \cs{captionlisttype}}
+% \changes{v1.8}{2018/09/06}{Adapted to the \package{chkfloat} package}
+% |\caption@addcontentsline|\marg{type}\marg{list entry}\\
+% makes an entry in the list-of-whatever, if requested, i.e.~the argument
+% \meta{list entry} is not empty and |list|\-|of=| was set to |true|.
+% \begin{macrocode}
+\newcommand\caption@addcontentsline[2]{%
+ \caption@ifcontentsline{#2}{%
+ \begingroup
+ \let\@tempa\@gobble
+ \caption@ifdefined\caption@listtype
+ {\let\@tempa\@firstofone}%
+ {\edef\caption@listtype{#1}}%
+ \caption@ifdefined\caption@listtype@ext
+ {\edef\caption@listtype{\caption@listtype\caption@listtype@ext}%
+ \let\@tempa\@firstofone}%
+ {}%
+ \@tempa
+ {\caption@Debug{addcontentsline: #1 => \caption@listtype}%
+% \caption@setoptions\caption@listtype
+ \@namedef{the\caption@listtype}{\@nameuse{the#1}}}%
+ \expandafter\caption@@addcontentsline\expandafter{\caption@listtype}{#2}%
+ \endgroup}%
+ \caption@addsubcontentslines{#1}}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand\caption@@addcontentsline[2]{%
+ {\let\\\space
+ \@ifundefined{ext@#1}%
+ {\caption@Error{No float type '#1' defined}}%
+ {\def\captionlisttype{#1}%
+ \caption@add@contentsline
+ {\csname ext@#1\endcsname}%
+ {#1}%
+ {\caption@listformat{\@nameuse{p@#1}}{\@nameuse{the#1}}}%
+ {\ignorespaces #2}%
+ \caption@chkfloat{#1}{#2}}}}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@add@contentsline{%
+ \caption@@@addcontentsline}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@@@addcontentsline[4]{%
+% \caption@ifdefined\main@Arabi@language
+% {\addtocontents{#1}{\xstring\select@language{\main@Arabi@language}}}{}%
+ \addcontentsline{#1}{#2}{\protect\numberline{#3}{#4}}}
+% \end{macrocode}
+% \begin{macrocode}
+\let\caption@chkfloat\@gobbletwo
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand\caption@ifcontentsline[1]{%
+ \caption@iflist
+ {\def\@tempa{#1}}%
+ {\let\@tempa\@empty}%
+ \ifx\@tempa\@empty
+ \expandafter\@gobble
+ \else
+ \expandafter\@firstofone
+ \fi}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@addsubcontentslines[1]{}
+% \end{macrocode}
+% \end{macro}
+%
+% \section{Typesetting the caption}
+%
+% \begin{macro}{\ifcaption@star}
+% If the starred form of |\caption| is used, this will be set to |true|.
+% (It will be reset to |false| at the end of |\caption@@make|.)
+% \begin{macrocode}
+\newif\ifcaption@star
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@aboveskip}
+% \begin{macro}{\caption@belowskip}
+% \changes{v2.0}{2020/08/23}{This macro moved from package to kernel}
+% |\caption@aboveskip| and |\caption@belowskip|\\
+% typeset the skip above resp.~below the caption.
+% \begin{macrocode}
+\newcommand*\caption@aboveskip{%
+ \vskip\abovecaptionskip}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@belowskip{%
+ \vskip\belowcaptionskip}
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+%
+% \begin{macro}{\caption@fnum}
+% \changes{v1.1}{2007/08/21}{This macro added}
+% \changes{v2.0}{2020/08/03}{The original definition will be stored in \cs{caption@original@fnum}}
+% |\caption@fnum|\marg{float type}\\
+% typesets the caption label; this acts as replacement for |\fnum@|\meta{float type}.
+% \begin{macrocode}
+\newcommand*\caption@fnum[1]{%
+ \expandafter\let\expandafter\caption@original@fnum\csname caption@fnum@#1\endcsname % for label format `original'
+ \caption@labelformat{\@nameuse{#1name}}{\@nameuse{the#1}}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@make}
+% |\caption@make|\marg{float name}\marg{ref.\ number}\marg{text}\\
+% typesets the caption.
+% \begin{macrocode}
+\newcommand\caption@make[2]{\caption@@make{\caption@labelformat{#1}{#2}}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@@make}
+% \changes{v1.0b}{2004/05/16}{Bugfix 04-05-05: \cs{ifdim}\cs{captionindent=}\cs{z@} added}
+% \changes{v1.0c}{2005/02/12}{Bugfix 04-10-26: Use \cs{@tempdima} instead of \cs{captionmargin} resp. \cs{captionwidth}; check for \cs{z@} added}
+% \changes{v1.0c}{2005/02/12}{Bugfix: \cs{hskip}\cs{captionmargin} to the end of caption added}
+% \changes{v1.0c}{2005/02/12}{Bugfix: \cs{strut} moved from here to \cs{caption@@@make}}
+% \changes{v1.0c}{2005/02/12}{Single-line-check moved up so it can affect margins now}
+% \changes{v1.0c}{2005/02/09}{Improvement: \cs{caption@ifhmode} added}
+% \changes{v1.0c}{2005/02/09}{Bugfix: \cs{leavevmode} added}
+% \changes{v1.0f}{2005/08/24}{Uses \cs{sbox} instead of \cs{setbox} in single-line-check}
+% \changes{v1.0g}{2005/12/04}{Uses \cs{caption@slc} now}
+% \changes{v1.0g}{2006/01/11}{Bugfix: \cs{caption@calcmargin} inside single-line-check replaced by \cs{relax}}
+% \changes{v1.0g}{2006/01/11}{Bugfix: \cs{caption@startbox} will always be typeset in horizontal mode}
+% \changes{v1.0i}{2006/05/13}{Uses \cs{caption@parbox} instead of \cs{caption@start/endbox}}
+% \changes{v1.0j}{2007/01/04}{Oops, bugfix 04-05-05 got lost in v1.0h, re-added}
+% \changes{v1.0n}{2007/04/03}{Usage of \cs{caption@ifoddpage} added}
+% \changes{v1.1}{2007/07/29}{\cs{caption@calcmargin} moved below single-line-check}
+% \changes{v1.1e}{2007/10/28}{\cs{caption@stepcounter} added}
+% \changes{v1.5}{2012/03/15}{Uses \cs{caption@tempdima} instead of \cs{@tempdima}}
+% \changes{v1.5}{2012/12/26}{max-margin stuff moved to \cs{caption@calcmargin}}
+% \changes{v1.6}{2013/05/01}{Usage of \cs{caption@box} added}
+% \changes{v1.7}{2016/01/31}{Adapted to the \package{bicaption} package}
+% \changes{v1.8f}{2019/12/18}{Usage of \cs{linewidth} replaced by \cs{hsize}}
+% |\caption@@make|\marg{caption label}\marg{caption text}
+% \begin{macrocode}
+\newcommand\caption@@make[2]{%
+ \begingroup
+ \caption@@make@{#1}{#2}%
+ \endgroup
+ \caption@@make@epilogue}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand\caption@@make@[2]{%
+ \caption@stepthecounter
+ \caption@beginhook
+% \end{macrocode}
+% Typeset the outer box |\caption@box|
+% \begin{macrocode}
+ \caption@box\hsize{%
+% \end{macrocode}
+% Special single-line treatment (option |singlelinecheck=|)
+% \begin{macrocode}
+ \caption@singlelinecheck{\caption@slc{#1}{#2}\caption@singleline\caption@multiline}{\caption@multiline}%
+% \end{macrocode}
+% Typeset the left margin (option |margin=|)
+% \begin{macrocode}
+ \caption@calcmargin
+ \caption@tempdima\captionmargin
+ \ifdim\captionmargin@=\z@ \else
+ \caption@ifoddpage{}{\advance\caption@tempdima\captionmargin@\relax}%
+ \fi
+ \caption@ifhmode{\advance\caption@tempdima\caption@indent\relax}%
+ \hspace\caption@tempdima
+% \end{macrocode}
+% We actually use a |\vbox| of width |\captionwidth - \caption@indent|
+% to typeset the caption.
+% \Note{\cs{captionindent} is \emph{not} supported if the caption format
+% was defined with \cs{DeclareCaptionFormat*}.}
+% \begin{macrocode}
+ \caption@tempdima\captionwidth
+ \caption@ifhmode{\advance\caption@tempdima-\caption@indent\relax}%
+ \caption@parbox\caption@tempdima{%
+% \end{macrocode}
+% Typeset the indention (option |indention=|)\\
+% {\small Bugfix 04-05-05:
+% |\hskip-\caption@indent| replaced by |\ifdim\caption@indent=\z@|\ldots}
+% \begin{macrocode}
+ \caption@ifhmode{%
+ \ifdim\caption@indent=\z@
+ \leavevmode
+ \else
+ \hskip-\caption@indent
+ \fi}%
+% \end{macrocode}
+% Typeset the caption itself and close the |\caption@parbox|
+% \begin{macrocode}
+ \caption@@@make{#1}{#2}}%
+% \end{macrocode}
+% Typeset the right margin (option |margin=|)
+% \begin{macrocode}
+ \caption@tempdima\captionmargin
+ \ifdim\captionmargin@=\z@ \else
+ \caption@ifoddpage{\advance\caption@tempdima\captionmargin@\relax}{}%
+ \fi
+ \hspace\caption@tempdima
+% \end{macrocode}
+% Close the outer box |\caption@box|
+% \begin{macrocode}
+ }%
+% \end{macrocode}
+% \begin{macrocode}
+ \caption@endhook}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand\caption@@make@epilogue{%
+ \global\caption@starfalse}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@calcmargin}
+% \changes{v1.0f}{2005/10/24}{Internal: \cs{ifcaption@width} replaced by \cs{ifdim}\cs{captionwidth=}\cs{z@}}
+% \changes{v1.0g}{2006/01/12}{Improvement: Takes care of list environment now}
+% \changes{v1.1}{2006/05/13}{Check of \cs{@listdepth} removed (not necessary anymore), use \cs{linewidth} instead of \cs{hsize}}
+% \changes{v1.5}{2012/12/26}{max-margin stuff moved from \cs{caption@@make} to here}
+% \changes{v1.8f}{2019/12/18}{Usage of \cs{linewidth} replaced by \cs{hsize}}
+% |\caption@calcmargin|\\
+% calculates |\caption|\-|margin| and |\caption|\-|width|, so both contain
+% valid values.
+% \begin{macrocode}
+\newcommand*\caption@calcmargin{%
+ \caption@calcmargin@hook
+% \end{macrocode}
+% Check margin, if |\caption@min|\-|margin| or |\caption@max|\-|margin| is set
+% \begin{macrocode}
+ \ifx\caption@maxmargin\@undefined \else
+ \ifdim\captionmargin>\caption@maxmargin\relax
+ \captionmargin\caption@maxmargin\relax
+ \fi
+ \fi
+ \ifx\caption@minmargin\@undefined \else
+ \ifdim\captionmargin<\caption@minmargin\relax
+ \captionmargin\caption@minmargin\relax
+ \fi
+ \fi
+% \end{macrocode}
+% \begin{macrocode}
+ \ifdim\captionwidth=\z@
+ \captionwidth\hsize\relax
+ \advance\captionwidth by -2\captionmargin\relax
+ \advance\captionwidth by -\captionmargin@\relax
+ \else
+ \captionmargin\hsize\relax
+ \advance\captionmargin by -\captionwidth\relax
+ \divide\captionmargin by 2\relax
+ \captionmargin@\z@\relax
+ \fi
+% \end{macrocode}
+% \begin{macrocode}
+ \caption@Debug{%
+ \string\hsize=\the\hsize,
+ \string\captionwidth=\the\captionwidth,\MessageBreak
+ \string\captionmargin=\the\captionmargin,
+ \string\captionmargin@=\the\captionmargin@}%
+% \end{macrocode}
+% \begin{macrocode}
+}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@slc}
+% \changes{v1.1}{2007/06/13}{\cs{let}\cs{caption@justification}\cs{relax} added}
+% \changes{v1.1}{2007/07/29}{\cs{caption@setup}\cs{caption@sls} added after \cs{begingroup}}
+% \changes{v1.1}{2007/07/29}{\cs{caption@calcmargin} added}
+% \changes{v1.1c}{2007/10/14}{\cs{caption@setup}\cs{caption@opt@SingleLine} outsourced to \cs{caption@SingleLine}}
+% \changes{v1.3}{2010/09/04}{Split into \cs{caption@slc} and \cs{caption@@slc}}
+% \changes{v1.5}{2012/12/26}{Merged into a single macro again}
+% \changes{v1.5}{2013/04/14}{Usage of \cs{ifsinglelinecaption} added}
+% |\caption@slc|\marg{label}\marg{text}\marg{single-line-code}\marg{multi-line-code}\\
+% This one does the single-line-check.
+% \begin{macrocode}
+\newcommand\caption@slc[4]{%
+ \caption@Debug{Begin SLC}%
+ \singlelinecaptiontrue
+ \begingroup
+ \caption@singleline
+ \let\caption@justification\relax
+ \caption@calcmargin % calculate \captionwidth
+ \caption@prepareslc
+ \sbox\@tempboxa{\caption@@@make{#1}{#2}}%
+ \ifdim\wd\@tempboxa>\captionwidth
+ \endgroup
+ \singlelinecaptionfalse
+ #4%
+ \else
+ \endgroup
+ #3%
+ \fi
+ \caption@Debug{End SLC}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\ifsinglelinecaption}
+% \changes{v1.5}{2013/04/14}{This definition added}
+% |\ifsinglelinecaption|\\
+% could be used inside own caption formats to test if the caption is
+% currently typeset as single-line caption (or not).
+% \begin{macrocode}
+\newif\ifsinglelinecaption
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@singleline}
+% \changes{v1.1c}{2007/10/14}{This macro extracted from \cs{caption@slc}}
+% \changes{v1.1c}{2007/10/14}{Support of \cs{caption@slfmt} added}
+% \changes{v1.1d}{2007/10/23}{This macro renamed from \cs{caption@SingleLine} to \cs{caption@singleline} for consistency}
+% |\caption@singleline|\\
+% prepares the typesetting of a single-line caption.
+% \begin{macrocode}
+\newcommand*\caption@singleline{%
+ \caption@xsetup\caption@slsty % Note: This could change \caption@format
+ \caption@format % defines \caption@ifhmode, \caption@slfmt, and \caption@fmt
+ \let\caption@fmt\caption@slfmt}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@multiline}
+% \changes{v2.0}{2020/07/28}{This macro added}
+% |\caption@multiline|\\
+% prepares the typesetting of a multi-line caption.
+% \begin{macrocode}
+\newcommand*\caption@multiline{%
+ \caption@format} % defines \caption@ifhmode, \caption@slfmt, and \caption@fmt
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@prepareslc}
+% \changes{v1.0b}{2004/05/16}{Bugfix: Redefinition of \cs{label} \& \cs{@footnotetext} added}
+% \changes{v1.0b}{2004/05/16}{Redefine \cs{stepcounter} instead of \cs{footnote(mark)}}
+% \changes{v1.0c}{2005/02/12}{\cs{let}\cs{caption@justification}\cs{relax} added}
+% \changes{v1.0f}{2005/07/09}{Support of \package{endnotes} package added}
+% \changes{v1.1}{2007/06/13}{\cs{let}\cs{caption@justification}\cs{relax} moved to \cs{caption@slc}}
+% \changes{v1.1}{2007/06/13}{Redefinition of \cs{(H@)refstepcounter} added}
+% \changes{v1.1}{2007/08/12}{Redefinition of \cs{label} improved}
+% \changes{v1.1c}{2007/10/06}{Definition of \cs{caption@l@stepcounter} added}
+% \changes{v1.3}{2011/07/07}{Bugfix 11-07-06: Redefinition of \cs{footnote} and \cs{footnotemark} added, redefinition of \cs{stepcounter} and \cs{refstepcounter} dropped}
+% \changes{v1.4a}{2011/10/22}{Redefinition of \cs{footnote} revised}
+% \changes{v1.5}{2013/04/13}{Redefinition os \cs{glsunset} added}
+% \changes{v1.8}{2018/01/21}{Redefinition of \cs{endnote} added (thanks to Markus Kohm)}
+% \changes{v1.8}{2018/05/16}{Redefinition of \cs{acused} added}
+% \changes{v1.8}{2018/05/26}{Definition method changed so it can be pre-defined by other packages}
+% \changes{v1.8}{2018/05/27}{Redefinition of \cs{hypertarget} added}
+% |\caption@prepareslc|\\
+% re-defines anything which could disturb the single-line-check.
+% \begin{macrocode}
+\providecommand*\caption@prepareslc{}
+\g@addto@macro\caption@prepareslc{%
+ \let\label\caption@gobble
+ \let\hypertarget\@gobbletwo
+% \end{macrocode}
+% We re-define \cs{footnote} so
+% \begin{enumerate}
+% \item The footnote counter will not be increased twice (but still the
+% correct footnote mark will be used within the single-line-check)
+% \item The footnote text will not be evaluated twice
+% \end{enumerate}
+% \begin{macrocode}
+ \let\caption@footnote@ORI\footnote
+ \def\footnote{\caption@withoptargs\caption@footnote}%
+ \let\caption@footnotemark@ORI\footnotemark
+ \def\footnotemark{\caption@withoptargs\caption@footnotemark}%
+ \let\caption@footnotetext@ORI\@footnotetext
+ \let\@footnotetext\caption@gobble
+% \end{macrocode}
+% Same for \cs{endnote}
+% \begin{macrocode}
+ \let\caption@endnote@ORI\endnote
+ \def\endnote{\caption@withoptargs\caption@endnote}%
+ \let\caption@endnotemark@ORI\endnotemark
+ \def\endnotemark{\caption@withoptargs\caption@endnotemark}%
+ \let\caption@endnotetext@ORI\@endnotetext
+ \let\@endnotetext\caption@gobble
+% \end{macrocode}
+% Adaption to the \package{acronym} package\par
+% See also \url{https://tex.stackexchange.com/questions/428788}
+% \begin{macrocode}
+ \let\acused\@gobble
+ \let\AC@placelabel\@gobble
+% \end{macrocode}
+% Adaption to the \package{glossaries} package.\par
+% Please note that while this adaption is usually sufficient
+% it could give incorrect measuring results if \cs{gls} is both used
+% for the very first time and more than once (for a particular acronym).
+% The alternative would be using internal macros of the
+% \package{glossaries} package which I would like to avoid.\par
+% See also \url{https://tex.stackexchange.com/questions/108368}
+% \begin{macrocode}
+ \let\glsunset\@gobble
+% \end{macrocode}
+% \begin{macrocode}
+}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand\caption@footnote[2]{%
+ \caption@footnotemark{#1}}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand\caption@footnotemark[1]{%
+ \begingroup
+ \let\stepcounter\caption@l@stepcounter
+ \caption@footnotemark@ORI#1\relax
+ \endgroup}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand\caption@endnote[2]{%
+ \caption@endnotemark{#1}}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand\caption@endnotemark[1]{%
+ \begingroup
+ \let\stepcounter\caption@l@stepcounter
+ \caption@endnotemark@ORI#1\relax
+ \endgroup}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@l@stepcounter[1]{%
+ \advance\csname c@#1\endcsname\@ne\relax}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@applyfont}
+% \changes{v1.3}{2010/09/04}{This macro added}
+% |\caption@applyfont|\\
+% applies the relevant font settings, i.e. by default
+% the options set by |justification=|, |font=|, and |size=|.
+% \begin{macrocode}
+\newcommand*\caption@applyfont{%
+ \caption@justification\captionfont\captionsize}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@@@make}
+% \changes{v1.0b}{2004/05/16}{Bugfix 04-05-06: \cs{allowhyphens} added}
+% \changes{v1.0c}{2005/02/12}{Bugfix 04-12-16: Use some kind of \cs{@startstrut}\cs{strutbox} instead of \cs{strut}}
+% \changes{v1.0c}{2005/02/12}{Bugfix 05-01-23: \cs{@finalstrut}\cs{strutbox} added}
+% \changes{v1.0d}{2005/05/05}{Use \cs{caption@ifempty}; \cs{let}\cs{caption@ifstrut}\cs{@secondoftwo} added}
+% \changes{v1.0d}{2005/05/05}{Bugfix: Handling of \cs{ifcaption@star} changed}
+% \changes{v1.0f}{2005/08/24}{Check for empty label added}
+% \changes{v1.0f}{2005/08/25}{\cs{caption@iflf} added}
+% \changes{v1.0j}{2007/02/18}{Usage of \cs{caption@textformat} added}
+% \changes{v1.1}{2007/05/07}{Bugfix: \cs{ifhmode} added to \cs{@finalstrut}}
+% \changes{v1.2}{2007/11/17}{Made option \opt{size=} stronger than \opt{font=}}
+% \changes{v1.3}{2010/09/04}{Uses \cs{caption@applyfont} now}
+% \changes{v1.3}{2010/11/01}{Bugfix: If the caption text is empty, the text format will be set to \opt{simple} now}
+% \changes{v1.7}{2016/02/01}{Bugfix: \cs{relax} added before \cs{caption@lsep} so the label separator will not be gobbled if the label font command ignores spaces, e.g. by usage of \cs{color}}
+% \changes{v1.8}{2018/09/12}{\cs{par} replaced by \cs{caption@textend}}
+% \changes{v2.2c}{2020/10/10}{Usage of the label separators \opt{gobble} and \opt{gobbletwo} added}
+% \changes{v2.2e}{2020/10/21}{Adaptions to \package{floatrow} package added}
+% |\caption@@@make|\marg{caption label}\marg{caption text}\\
+% This one finally typesets the caption paragraph, without margin and indention.
+% \begin{macrocode}
+\newcommand\caption@@@make[2]{%
+% \end{macrocode}
+% The \package{floatrow} package uses |\caption@@@make|, too,
+% but without using |\caption@single|\-|line| or |\caption@multi|\-|line|.
+% For this reason we must expand |\caption@format| if |\caption@fmt| isn't defined yet.
+% Furthermore it uses |\caption@lfmt| as argument which was renamed to
+% |\caption@label|\-|format| in \package{caption3}\version{2.0}.
+% \begin{macrocode}
+ \ifx\caption@fmt\@undefined\caption@format\fi
+ \let\caption@lfmt\caption@labelformat
+% \end{macrocode}
+% If the label is empty, we use the label separator `none'.
+% Futhermore we use this check to determine if |#1| ends with either
+% |\@gobble|, |\@gobble|\-|two|, and/or |\ignore|\-|spaces|.
+% If yes, we use the corresponding label separator.
+% \begin{macrocode}
+ \global\def\caption@tempa{gobbletwo}%
+ \global\def\caption@tempb{}%
+ \sbox\@tempboxa{%
+ \let\caption@ignorespaces\ignorespaces
+ \def\ignorespaces{%
+ \global\def\caption@tempb{two}% "gobble" -> "gobbletwo" if \ignorespaces is used addtionally
+ \caption@ignorespaces}%
+ #1%
+ {\global\let\caption@tempa\@undefined\aftergroup\@gobble}%
+ {\global\def\caption@tempa{gobble\caption@tempb}}}%
+ \ifdim\wd\@tempboxa=\z@
+ \gdef\caption@tempa{none}%
+% \@capbreakfalse
+ \fi
+ \ifx\caption@tempa\@undefined \else
+ \@expandtwoargs\caption@set{labelseparator}{\caption@tempa}%
+ \fi
+% \end{macrocode}
+% If the text is empty, we use no caption label separator, too.
+% (And no text format either.)
+% \begin{macrocode}
+ \caption@ifempty{#2}{%
+ \caption@set{labelseparator}{none}%
+ \caption@set{textformat}{simple}%
+% \@capbreakfalse
+% \let\caption@ifstrut\@secondoftwo
+ }%
+% \end{macrocode}
+% \begin{macrocode}
+ \caption@labelseparator % defines \caption@iflabelfont, \caption@labelsep and \caption@labelsep@name (the latter is needed by \caption@fmt)
+% \end{macrocode}
+% Take care that |\caption@par|\-|indent| and |\caption@hang|\-|indent|
+% will be used to typeset the paragraph.
+% \begin{macrocode}
+ \@setpar{\@@par\caption@@par}\caption@@par
+% \end{macrocode}
+% Finally typeset the caption.
+% \begin{macrocode}
+ \caption@applyfont
+ \caption@fmt
+ {\ifcaption@star\else
+ \begingroup
+ \captionlabelfont
+ #1\relax\relax
+ \endgroup
+ \fi}%
+ {\ifcaption@star\else
+ \begingroup
+ \caption@iflabelfont\captionlabelfont
+ \relax\caption@labelsep
+ \endgroup
+ \fi}%
+ {{\captiontextfont
+ \caption@textstart
+ \caption@ifstrut
+ {\vrule\@height\ht\strutbox\@width\z@}%
+ {}%
+ \nobreak\hskip\z@skip % enable hyphenation
+ \caption@textformat{#2}%
+% \caption@ifstrut{\vrule\@height\z@\@depth\dp\strutbox\@width\z@}{}%
+ \caption@ifstrut
+ {\ifhmode\@finalstrut\strutbox\fi}%
+ {}%
+ \caption@textend}}}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@textstart{}
+\newcommand*\caption@textend{\par}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@ifempty}
+% \changes{v1.0d}{2005/05/05}{This macro added}
+% \changes{v1.1}{2007/07/04}{Re-defines itself now}
+% \changes{v1.2a}{2007/01/22}{Revised so \cs{label} will be detected, too}
+% \changes{v1.2b}{2008/08/02}{Revised so \cs{index} and \cs{glossary} will be detected, too}
+% |\caption@ifempty|\marg{text}\marg{yes-code}\\
+% tests if the \meta{text} is actually empty.
+% \Note{This will be done without expanding the text,
+% therefore this is far away from being bullet-proof.}
+% \Note{This macro is re-defining itself so only
+% the first test (in a group) will actually be done.}
+% \begin{macrocode}
+\newcommand\caption@ifempty[1]{%
+ \caption@if@empty{#1}%
+ \caption@ifempty\@unused}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand\caption@if@empty[1]{%
+ \def\caption@tempa{#1}%
+ \ifx\caption@tempa\@empty
+ \let\caption@ifempty\@secondoftwo
+ \else
+ \expandafter\def\expandafter\caption@tempa\expandafter{%
+ \caption@car#1\caption@if@empty\caption@nil}%
+ \def\caption@tempb{\caption@if@empty}%
+ \ifx\caption@tempa\caption@tempb
+ \let\caption@ifempty\@secondoftwo
+ \else
+ \def\caption@tempb{\ignorespaces}%
+ \ifx\caption@tempa\caption@tempb
+ \expandafter\caption@if@empty\expandafter{\@gobble#1}%
+ \else
+ \def\caption@tempb{\label}%
+ \ifx\caption@tempa\caption@tempb
+ \expandafter\caption@if@empty\expandafter{\@gobbletwo#1}%
+ \else
+ \def\caption@tempb{\index}%
+ \ifx\caption@tempa\caption@tempb
+ \expandafter\caption@if@empty\expandafter{\@gobbletwo#1}%
+ \else
+ \def\caption@tempb{\glossary}%
+ \ifx\caption@tempa\caption@tempb
+ \expandafter\caption@if@empty\expandafter{\@gobbletwo#1}%
+ \else
+ \let\caption@ifempty\@gobbletwo
+ \fi
+ \fi
+ \fi
+ \fi
+ \fi
+ \fi}
+% \end{macrocode}
+% \begin{macrocode}
+\long\def\caption@car#1#2\caption@nil{#1}% same as \@car, but \long
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@@par}
+% \changes{v1.0f}{2005/08/22}{Made this definition global}
+% |\caption@@par|\\
+% will be expanded with every |\par| inside the caption.
+% \begin{macrocode}
+\newcommand*\caption@@par{%
+ \parindent\caption@parindent\hangindent\caption@hangindent}%
+% \end{macrocode}
+% \end{macro}
+%
+% \section{Types \& sub-types}
+%
+% \begin{macro}{\DeclareCaptionType}
+% \changes{v1.1}{2007/08/12}{This macro added}
+% \changes{v1.1a}{2007/09/07}{Three optional arguments added}
+% \changes{v1.2}{2007/12/06}{Renamed from \cs{DeclareFloatingEnvironment} to \cs{DeclareCaptionType}}
+% \changes{v1.2}{2007/12/21}{Optional argument revised, uses key-value syntax now}
+% \changes{v1.2b}{2008/04/13}{Uses \cs{caption@within@default} now}
+% \changes{v1.2b}{2008/08/02}{Support of \cs{float@exts} and \cs{float@addtolists} added}
+% \changes{v1.2e}{2010/01/09}{Usage of \cs{caption@DeclareWithinOption} added}
+% \changes{v1.3}{2011/08/06}{Definition of \cs{listofXXXes} added}
+% \changes{v1.4a}{2011/10/29}{Outsourced to \package{newfloat} package}
+% |\DeclareCaptionType|\oarg{options}\marg{environment}\oarg{name}\oarg{list name}\\
+% loads the \package{newfloat} package and uses |\Declare|\-|Floating|\-|Environment|.
+% \begin{macrocode}
+\newcommand*\DeclareCaptionType{%
+ \caption@loadpackage{newfloat}{declare type}%
+ \DeclareFloatingEnvironment}
+\@onlypreamble\DeclareCaptionType
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\ForEachCaptionType}
+% \changes{v1.4a}{2011/10/29}{This macro added}
+% \changes{v1.13}{2020/07/29}{Renamed from \cs{caption@ForEachType} to \cs{ForEachCaptionType} and starred variant added}
+% |\ForEachCaptionType*|\marg{code with \#1}\\
+% will execute the given code for each (known) floating environment.
+% The starred variant will only work for already existing environments,
+% i.e.~no hook will be placed inside |\Declare|\-|Floating|\-|Environment|
+% (offered by the \package{newfloat} package).
+% \begin{macrocode}
+\newcommand*\ForEachCaptionType{%
+ \@ifstar
+ {\caption@foreach@type\@gobble}%
+ {\caption@foreach@type\@iden}}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand\caption@foreach@type[2]{%
+ \caption@ifdefined\ForEachFloatingEnvironment
+ {\ForEachFloatingEnvironment*{#2}}%
+ {\def\@elt##1{#2}%
+ \caption@ifdefined\c@figure\@elt\@gobble{figure}%
+ \caption@ifdefined\c@table\@elt\@gobble{table}%
+ \let\@elt\relax}%
+ #1{\newfloat@addtohook{#2}}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\newfloat@addtohook}
+% |\newfloat@addtohook|\marg{code with \#1}\\
+% adds code to the hook called in |\Declare|\-|Floating|\-|Environment|.\par
+% Note: We use |\provide|\-|command| instead of |\new|\-|command| here since the
+% exact same code is defined in the \package{newfloat} package.
+% \begin{macrocode}
+\providecommand\newfloat@addtohook[1]{%
+ \toks@=\expandafter{\newfloat@hook{##1}#1}%
+ \edef\@tempa{\def\noexpand\newfloat@hook####1{\the\toks@}}%
+ \@tempa}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\newfloat@hook}
+% Hook used in |\Declare|\-|Floating|\-|Environment|.
+% \begin{macrocode}
+\providecommand*\newfloat@hook[1]{}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\DeclareCaptionSubType}
+% \changes{v1.2}{2007/11/16}{This macro added}
+% \changes{v1.2a}{2008/03/11}{Bugfix: \cs{subfigurename} will be defined now}
+% \changes{v1.2d}{2009/10/09}{Bugfix 08-10-01: Usage of \cs{caption@addtoreset} added}
+% \changes{v1.3}{2011/01/01}{\cs{@dottedlofline} will be defined \& used now}
+% \changes{v1.4}{2011/10/09}{Support of the titletoc package added}
+% \changes{v1.5}{2011/12/29}{Usage of \cs{caption@addtoreset} replaced by \cs{@addtoreset}}
+% \changes{v1.5}{2013/01/10}{Bugfix: Definition of autoref string corrected}
+% \changes{v1.6}{2013/06/17}{Bugfix: \cs{c@tocdepth} will be set (locally) now}
+% \changes{v1.8g}{2020/01/02}{Check revised if the sub-type is already defined or not}
+% \changes{v1.13}{2020/07/28}{Uses \cs{caption@l@addto@list} instead of \cs{@cons} now}
+% \changes{v1.13}{2020/07/29}{Usage of \cs{caption@subtype@hook} added}
+% \changes{v1.13}{2020/07/29}{We don't re-use existing counters anymore (This was a bad idea anyway)}
+% |\DeclareCaptionSubType*|\oarg{numbering scheme}\marg{type}\\
+% The starred variant provides the numbering format
+% \meta{type}|.|\meta{subtype} while the non-starred variant simply uses
+% \meta{subtype}.
+% \begin{macrocode}
+\newcommand*\DeclareCaptionSubType{%
+ \caption@teststar\caption@declaresubtype\@firstoftwo\@secondoftwo}
+\@onlypreamble\DeclareCaptionSubType
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@declaresubtype[1]{%
+ \@testopt{\caption@@declaresubtype{#1}}{alph}}
+\@onlypreamble\caption@declaresubtype
+% \end{macrocode}
+% \begin{macrocode}
+\def\caption@@declaresubtype#1[#2]#3{%
+ \@ifundefined{c@#3}%
+ {\caption@Error{No float type '#3' defined}}%
+ {\caption@@@declaresubtype{#1}{#2}{#3}{sub#3}}}
+\@onlypreamble\caption@@declaresubtype
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@@@declaresubtype[4]{%
+% \end{macrocode}
+% \begin{macrocode}
+% Check if the sub-type was already defined by |\Declare|\-|Sub|\-|Type|.
+% If not, define the counter and list entry.
+% \begin{macrocode}
+ \caption@ifsubtype{#4}%
+ {\caption@Debug{Modify subtype `#4'}}%
+ {\caption@Debug{New subtype `#4'}%
+ \newcounter{#4}[{#3}]%
+ \@namedef{ext@#4}{\csname ext@#3\endcsname}%
+ \caption@declaresublistentry{#3}%
+ \caption@l@addto@list\caption@subtypelist{#4}%
+ \caption@subtype@hook{#4}}%
+% \end{macrocode}
+% Support of \package{titletoc} package
+% \begin{macrocode}
+ \caption@ifdefined\contentsuse{%
+ \contentsuse{#4}{\csname ext@#4\endcsname}}{}%
+% \end{macrocode}
+% \begin{macrocode}
+ \@namedef{#4name}{}%
+ \@namedef{#4autorefname}{\csname #3autorefname\endcsname}%
+ #1% is \@firstoftwo in star form, and \@secondoftwo otherwise
+ {\@namedef{p@#4}{}%
+ \@namedef{the#4}{\csname the#3\endcsname.\@nameuse{#2}{#4}}}%
+ {\@namedef{p@#4}{\csname the#3\endcsname}%
+ \@namedef{the#4}{\@nameuse{#2}{#4}}}%
+ \@namedef{theH#4}{\csname theH#3\endcsname.\arabic{#4}}}
+% \end{macrocode}
+% \begin{macrocode}
+\@onlypreamble\caption@@@declaresubtype
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@declaresublistentry{%
+ \caption@ifdefined\l@chapter
+ {\caption@@declaresublistentry\l@subsection}%
+ {\caption@@declaresublistentry\l@subsubsection}}
+\@onlypreamble\caption@declaresublistentry
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@@declaresublistentry[2]{%
+ \ifx#1\@undefined
+ \caption@@@declaresublistentry\relax\@dottedtocline\caption@nil{#2}%
+ \else
+ \expandafter\caption@@@declaresublistentry#1{}{}\@dottedtocline\caption@nil{#2}%
+ \fi}
+\@onlypreamble\caption@@declaresublistentry
+% \end{macrocode}
+% \begin{macrocode}
+\long\def\caption@@@declaresublistentry#1\@dottedtocline#2\caption@nil#3{%
+ \def\@tempa{#1}%
+% Does \l@(sub)subsection start with \@dottedtocline?
+ \ifx\@tempa\@empty
+% Yes
+ \caption@@@@declaresublistentry{#3}#2\caption@nil
+ \else
+% No
+ \caption@@@@declaresublistentry{#3}@{3.8em}{3.2em}\caption@nil
+ \fi}
+\@onlypreamble\caption@@@declaresublistentry
+% \end{macrocode}
+% \begin{macrocode}
+\def\caption@@@@declaresublistentry#1#2#3#4#5\caption@nil{%
+ \expandafter\caption@@@@@declaresublistentry\expandafter
+ {\csname @dotted\csname ext@#1\endcsname line\endcsname}{#1}{#3}{#4}}
+\@onlypreamble\caption@@@@declaresublistentry
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@@@@@declaresublistentry[4]{%
+ \@namedef{l@sub#2}{#1{2}{#3}{#4}}%
+ \expandafter\caption@@@@@@declaresublistentry
+ \expandafter#1\expandafter{\csname ext@#2\endcsname depth}}
+\@onlypreamble\caption@@@@@declaresublistentry
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\caption@@@@@@declaresublistentry[2]{
+ \ifx#1\relax
+ \def#1##1{%
+ \def\next{\@dottedtocline{##1}}%
+ \@ifundefined{c@#2}{}{%
+ \ifnum ##1>\@nameuse{c@#2}\relax
+ \let\next\@gobblefour
+ \else
+ \c@tocdepth=\@nameuse{c@#2}\relax
+ \fi}%
+ \next}%
+ \fi}
+\@onlypreamble\caption@@@@@@declaresublistentry
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@subtypelist}
+% A list containing the sub-types defined with
+% |\Declare|\-|Caption|\-|Sub|\-|Type|.
+% \begin{macrocode}
+\newcommand*\caption@subtypelist{}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@ifsubtype}
+% \changes{v1.8g}{2020/01/02}{This macro added}
+% \changes{v1.13}{2020/07/28}{Uses \cs{caption@ifin@list} now}
+% |\caption@ifsubtype|\marg{yes-code}\marg{no-code}\\
+% checks if the given subtype was defined with
+% |\Declare|\-|Caption|\-|Sub|\-|Type|.
+% \begin{macrocode}
+\newcommand*\caption@ifsubtype{%
+ \caption@ifin@list\caption@subtypelist}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\ForEachCaptionSubType}
+% \changes{v1.13}{2020/07/29}{This macro added as replacement for \cs{caption@For}}
+% |\ForEachCaptionSubType*|\marg{code with \#1}\\
+% will execute the given code for each (known) sub-type.
+% The starred variant will only work for already existing sub-types,
+% i.e.~no hook will be placed inside |\Declare|\-|Caption|\-|Sub|\-|Type|.
+% \begin{macrocode}
+\newcommand*\ForEachCaptionSubType{%
+ \@ifstar
+ {\caption@foreach@subtype\@gobble}%
+ {\caption@foreach@subtype\@iden}}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand\caption@foreach@subtype[2]{%
+ \caption@for@list\caption@subtypelist{#2}%
+ #1{\caption@addto@subtype@hook{#2}}}
+% \end{macrocode}
+% \begin{macrocode}
+\providecommand\caption@addto@subtype@hook[1]{%
+ \toks@=\expandafter{\caption@subtype@hook{##1}#1}%
+ \edef\@tempa{\def\noexpand\caption@subtype@hook####1{\the\toks@}}%
+ \@tempa}
+% \end{macrocode}
+% \begin{macrocode}
+\providecommand*\caption@subtype@hook[1]{}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\@memresetsubcounter}
+% \changes{v1.5}{2013/05/01}{The macro \cs{caption@savesubcounters} added}
+% \changes{v1.13}{2020/07/28}{Uses \cs{caption@for@list} now for iterating the list}
+% \changes{v2.2b}{2020/10/06}{This stuff replaced by a patch of \cs{@memresetsubcounter}}
+% The \class{memoir} document class resets the \texttt{subfigure}
+% resp.~\texttt{subtable} counter at the begin of floating environments using
+% |\@mem|\-|reset|\-|sub|\-|counter|.
+% As a side-effect |\continued|\-|float| does not work correctly.
+% For that reason we need to patch |\@mem|\-|reset|\-|sub|\-|counter| here,
+% suppressing the counter reset if the counter was defined with
+% |\Declare|\-|Caption|\-|Sub|\-|Type|.
+% \begin{macrocode}
+\caption@ifdefined\@memresetsubcounter
+ {\let\caption@memresetsubcounter\@memresetsubcounter
+ \renewcommand*\@memresetsubcounter[1]{%
+ \caption@ifsubtype{sub#1}\@gobble\caption@memresetsubcounter{#1}}}%
+ {}
+% \end{macrocode}
+% \end{macro}
+%
+% \section{Execution of options}
+%
+% \begin{macrocode}
+\ifx\caption@documentclass\@empty\else
+ \@pushfilename
+ \edef\@currname{caption-\caption@documentclass}
+ \edef\@currext{sto}
+ \InputIfFileExists
+ {\@currname.\@currext}%
+ {}%
+ {\@missingfileerror\@currname\@currext}%
+ \@popfilename
+\fi
+% \end{macrocode}
+%
+% \begin{macrocode}
+\captionsetup{style=default,position=default,listformat=default}
+% \end{macrocode}
+% \begin{macrocode}
+\ProcessOptions*
+% \end{macrocode}
+%
+% \iffalse
+%</package>
+% \fi
+%
+% \clearpage
+% \begin{thebibliography}{99}
+% \bibitem{TLC2}
+% Frank Mittelbach and Michel Goossens:\\
+% \newblock {\em The {\LaTeX} Companion (2nd.~Ed.)},\\
+% \newblock Addison-Wesley, 2004.
+%
+% \bibitem{Anne}
+% Anne Br\"uggemann-Klein:\\
+% \emph{Einf\"uhrung in die Dokumentverarbeitung},\\
+% B.G. Teubner, Stuttgart, 1989
+%
+% \bibitem{hyperref}
+% Sebastian Rahtz \& Heiko Oberdiek:\\
+% \href{http://www.ctan.org/pkg/hyperref}%
+% {\emph{Hypertext marks in \LaTeX}},\\
+% November 12, 2007
+%
+% \bibitem{refcount}
+% Heiko Oberdiek:\\
+% \href{http://www.ctan.org/pkg/refcount}%
+% {\emph{The refcount package}},\\
+% 2006/02/20
+%
+% \bibitem{threeparttable}
+% Donald Arseneau:\\
+% \href{http://www.ctan.org/pkg/threeparttable}%
+% {\emph{Three part tables: title, tabular environment, notes}},\\
+% 2003/06/13
+% \end{thebibliography}
+%
+% \iffalse
+% --------------------------------------------------------------------------- %
+% \fi
+%
+% \clearpage
+% \Finale
+%
+\endinput
diff --git a/macros/latex/contrib/caption/ltcaption.dtx b/macros/latex/contrib/caption/ltcaption.dtx
index fab8a4c05e..1b6c813a53 100644
--- a/macros/latex/contrib/caption/ltcaption.dtx
+++ b/macros/latex/contrib/caption/ltcaption.dtx
@@ -27,12 +27,11 @@
% caption.sty, caption-light.sty, caption2.sty, caption3.sty,
% caption-ams-smf.sto, caption-beamer.sto, caption-elsarticle.sto,
% caption-koma.sto, caption-memoir.sto, caption-ntg.sto,
-% caption-thesis.sto, bicaption.sty, ltcaption.sty, subcaption.sty,
-% and the user manuals
-% caption-deu.tex, caption-eng.tex, caption-rus.tex.
+% caption-thesis.sto, bicaption.sty, ltcaption.sty, subcaption.sty.
%
% \fi
-% \CheckSum{381}
+%
+% \CheckSum{388}
%
% \iffalse
%<*driver>
@@ -424,6 +423,7 @@
% \DoNotIndex{\hangindent,\hbox,\hfil,\hsize,\hskip,\hspace,\hss}
% \DoNotIndex{\ifcase,\ifdim,\ifnum,\ifodd,\ifvoid,\ifvmode}
% \DoNotIndex{\ifx,\ignorespaces,\itshape}
+% \DoNotIndex{\kernel@ifnextchar}
% \DoNotIndex{\Large,\large,\leavevmode,\leftmargini,\leftskip,\let,\linewidth}
% \DoNotIndex{\llap,\long,\m@ne,\margin,\mdseries,\message}
% \DoNotIndex{\newcommand,\newdimen,\newlength,\newline,\newif,\newsavebox}
@@ -464,9 +464,26 @@
%
% \subsection{Identification}
%
+% We need at least \LaTeX2e\ version 1994/12/01.
% \begin{macrocode}
\NeedsTeXFormat{LaTeX2e}[1994/12/01]
-\ProvidesPackage{ltcaption}[2020/05/30 v1.4b longtable captions (AR)]
+% \end{macrocode}
+%
+% Bypass the release declarations in case the \LaTeX\ kernel doesn’t know how to deal with them
+% (as suggested by \url{https://www.latex-project.org/publications/2018-FMi-TUB-tb122mitt-version-rollback.pdf}).
+% \begin{macrocode}
+\providecommand\DeclareRelease[3]{}
+\providecommand\DeclareCurrentRelease[2]{}
+% \end{macrocode}
+%
+% Declare all supported releases.
+% \begin{macrocode}
+\DeclareCurrentRelease{v1}{2007-04-15}
+% \end{macrocode}
+%
+% Identify the current version of the package.
+% \begin{macrocode}
+\ProvidesPackage{ltcaption}[2021/01/08 v1.4c longtable captions (AR)]
% \end{macrocode}
%
% \begin{macrocode}
@@ -808,6 +825,7 @@
%
% \begin{environment}{longtable*}
% \changes{v1.1a}{2008/03/21}{Improved redefinition of \cs{refstepcounter} etc.}
+% \changes{v1.4c}{2021/01/08}{Improved error message if \cs{caption} is used}
% A |longtable| environment without reference counter and hyperlink anchors.
% \begin{macrocode}
\newenvironment{longtable*}{%
@@ -831,7 +849,7 @@
\def\LT@c@ption##1[##2]##3{%
\ifx##1\@firstofone
\PackageError{ltcaption}%
- {Not allowed in longtable* environment}%
+ {\noexpand\caption is not available in longtable* environment}%
{If you do not understand this error, please take a closer
look\MessageBreak at the documentation of the `ltcaption'
package.\MessageBreak \@ehc}%
diff --git a/macros/latex/contrib/caption/subcaption.dtx b/macros/latex/contrib/caption/subcaption.dtx
index 3dc8cca22e..38104d18ce 100644
--- a/macros/latex/contrib/caption/subcaption.dtx
+++ b/macros/latex/contrib/caption/subcaption.dtx
@@ -2,7 +2,7 @@
%
% This is file `subcaption.dtx'.
%
-% Copyright (C) 2007-2020 Axel Sommerfeldt (axel.sommerfeldt@f-m.fm)
+% Copyright (C) 2007-2022 Axel Sommerfeldt (axel.sommerfeldt@f-m.fm)
%
% --------------------------------------------------------------------------
%
@@ -27,53 +27,47 @@
% caption.sty, caption-light.sty, caption2.sty, caption3.sty,
% caption-ams-smf.sto, caption-beamer.sto, caption-elsarticle.sto,
% caption-koma.sto, caption-memoir.sto, caption-ntg.sto,
-% caption-thesis.sto, bicaption.sty, ltcaption.sty, subcaption.sty,
-% and the user manuals
-% caption-deu.tex, caption-eng.tex, caption-rus.tex.
+% caption-thesis.sto, bicaption.sty, ltcaption.sty, subcaption.sty.
%
% \fi
-% \CheckSum{221}
+%
+% \CheckSum{468}
%
% \iffalse
%<*driver>
\NeedsTeXFormat{LaTeX2e}[1994/12/01]
-\ProvidesFile{subcaption.drv}[2020/08/24 v1.3 Adds a sub-caption feature to the caption package]
+\ProvidesFile{subcaption.drv}[2022/02/20 v1.5 Adds a sub-caption feature to the caption package]
\hbadness=9999 \newcount\hbadness \hfuzz=74pt % Make TeX shut up.
%\errorcontextlines=3
%
\documentclass{ltxdoc}
\setlength\parindent{0pt}
\setlength\parskip{\smallskipamount}
+\addtolength\marginparwidth{15pt}
%
-\newcommand\LineBreak{\linebreak[3]}
-\newcommand\PageBreak{\pagebreak[3]}
\usepackage{ifpdf}
\ifpdf
\usepackage{mathptmx,courier}
\usepackage[scaled=0.90]{helvet}
- \addtolength\marginparwidth{15pt}
- \ifdim\paperheight=297mm % a4paper
- \renewcommand\LineBreak{\\}
- \renewcommand\PageBreak{\clearpage}
- \fi
\fi
%
\usepackage[bottom]{footmisc}
-\usepackage{array,graphicx,overpic,pict2e,diagbox}
+\usepackage{array,diagbox,graphicx,overpic,pict2e,stackengine,tikz}
%
\PassOptionsToPackage{breaklinks=true}{hyperref}
\usepackage{hypdoc}
\ifpdf\usepackage{hypdestopt}\fi
\hypersetup{pdfkeywords={LaTeX, package, subcaption},pdfstartpage={},pdfstartview={}}
%
-\usepackage{subcaption}[2011/08/01] % needs v1.1 or newer
+\usepackage{caption}[2022/01/07] % needs v3.6 or newer to typeset this document
+\usepackage{subcaption}[2022/01/07] % needs v1.5 or newer to typeset this document
\DeclareCaptionSubType*[arabic]{table}
\captionsetup[subtable]{labelformat=simple,labelsep=colon}
%
\newcommand*\purerm[1]{{\upshape\mdseries\rmfamily #1}}
\newcommand*\puresf[1]{{\upshape\mdseries\sffamily #1}}
\newcommand*\purett[1]{{\upshape\mdseries\ttfamily #1}}
-\let\package\puresf
+\let\pkg\puresf
\let\env\purett \let\opt\purett
%
\newcommand*\csmarg[1]{\texttt{\char`\{#1\char`\}}}
@@ -90,8 +84,14 @@
\newenvironment{background}{\par\bigskip\csname background*\endcsname}{\csname endbackground*\endcsname}
\newenvironment{background*}{\small\MARGINSYM{\Mountain}\ignorespaces}{\par}
%
+\makeatletter
\newcommand*\MARGINSYM[1]{\hskip 1sp \marginpar{\raggedleft\textcolor{blue}{{#1}}}}
-\newcommand*\NEW[2]{\MARGINSYM{\vskip2pt\footnotesize#1\\#2}}
+\newcommand*\NEW[1]{\@ifstar{\@NEW{#1}{\vskip2pt}}{\@NEW{#1}{}}}
+\newcommand*\@NEW[3]{\MARGINSYM{#2\footnotesize#1\\#3}}
+\makeatother
+%
+\newcommand*\PageBreak{\pagebreak[3]}
+\newcommand*\changenote[1]{}
%
\begin{document}
\DocInput{subcaption.dtx}
@@ -102,8 +102,8 @@
% \let\subsectionautorefname\sectionautorefname
% \let\subsubsectionautorefname\sectionautorefname
%
-% \def\thispackage{the \package{subcaption} package}
-% \def\Thispackage{The \package{subcaption} package}
+% \def\thispackage{the \pkg{subcaption} package}
+% \def\Thispackage{The \pkg{subcaption} package}
%
% \newcommand\NEWfeature{\NEW{New feature}}
% \newcommand\NEWdescription{\NEW{New description}}
@@ -128,8 +128,7 @@
% \maketitle
%
% \begin{abstract}
-% This package supports typesetting of sub-captions
-% (by using the the sub-caption feature of the \package{caption} package).
+% This package offers an user interface to typeset sub-captions.
% \end{abstract}
%
% \begin{background}
@@ -141,21 +140,27 @@
% \end{background}
%
% \begin{background*}
-% This package demonstrates the usage of |\Declare|\-|Caption|\-|Sub|\-|Type|,
-% |\caption|\-|setup{sub|\-|type}|, and the internal hook
-% |\caption@sub|\-|type|\-|hook| (offered by the \package{caption} package).
+% Since version $3.1$ the \pkg{caption} package offers a low-level interface to typeset sub-captions:
+% |\Declare|\-|Caption|\-|Sub|\-|Type| defines the required counters and internal commands,
+% |\set|\-|caption|\-|sub|\-|type| switches to the sub-caption mode, and
+% |\caption@sub|\-|type|\-|hook| could be extended to apply own code when a switch to the sub-caption mode is in progress.
+%
+% This package demonstrates its usage by offering a high-level user interface additionally.
% \end{background*}
%
% \bigskip
-% \INFO*
+% \INFO
% \emph{Please note:}
-% This package is incompatible with the \package{subfigure} and \package{subfig}
-% packages.
+% This package is incompatible with the \pkg{subfigure} and \pkg{subfig} packages.
%
% \clearpage
% \setcounter{tocdepth}{2}
% \tableofcontents
%
+% \iffalse
+% --------------------------------------------------------------------------- %
+% \fi
+%
% \clearpage
% \section{Loading the package}
%
@@ -163,7 +168,7 @@
% \begin{quote}
% |\usepackage|\oarg{options}|{subcaption}|\quad.
% \end{quote}
-% The options for \thispackage\ are the same ones as for the \package{caption}
+% The options for \thispackage\ are the same ones as for the \pkg{caption}
% package, but specify settings which are used for sub-captions
% \emph{additionally}.
% In fact
@@ -178,12 +183,13 @@
%
% \bigskip
%
-% The default settings for |sub|captions are:
+% \pagebreak[3]
+% The default settings for sub-captions are:
% \begin{quote}
% |margin=0pt,font+=smaller,labelformat=parens,labelsep=space,|\\
% |skip=6pt,list=false,hypcap=false|~\footnote{%^^A
% This means that sub-captions are not listed in the List of Figures
-% or Tables by default, but you can enable that by
+% or Tables by default, but you can enable it by
% specifying the option \texttt{list=true}.}
% \end{quote}
%
@@ -209,6 +215,8 @@
% \item Local `sub' settings
% {\small(|\captionsetup{|\ldots|}| inside |sub|\-|figure| or |sub|\-|table|)}
% \end{enumerate}
+%
+% \pagebreak[3]
% An example:
% \begin{quote}
% |\usepackage[labelsep=quad,indention=10pt]{caption}|\\
@@ -224,14 +232,18 @@
% |labelfont=bf,list=true,textfont=sf|\quad.
% \end{quote}
%
+% \iffalse
+% --------------------------------------------------------------------------- %
+% \fi
+%
% \PageBreak
% \section{The \cs{subcaptionbox} command}
%
% \DescribeMacro\subcaptionbox
-% The easiest way to apply a sub-caption is by using the
-% |\sub|\-|caption|\-|box| command, which automatically aligns the
-% sub-figures resp.~sub-tables by their very first caption line.
+% The |\sub|\-|caption|\-|box| command typesets given content and caption.
+% It automatically aligns the sub-figures resp.~sub-tables by their very first caption line.
%
+% \pagebreak[3]
% Its syntax is:
% \begingroup
% \leftmargini=12pt
@@ -241,29 +253,28 @@
% \end{quote}
% \endgroup
% \begin{small}
-% The arguments \meta{list entry} \& \meta{heading} will be used for
-% typesetting the |\caption|.\par
-% \meta{width} is the width of the resulting |\par|\-|box|; the default value is
-% the width of the contents.\par
-% \meta{inner-pos} specifies how the contents will be justified inside the
-% resulting |\parbox|;
+% The arguments \meta{list entry} \& \meta{heading} will be used for typesetting the |\caption|.
+%
+% \meta{width} is the width of the resulting |\par|\-|box|; the default value is the width of the contents.
+%
+% \meta{inner-pos} specifies how the contents will be justified inside the resulting |\parbox|;
% it can be either `c' (for |\centering|), `l' (for |\ragged|\-|right|),
% `r' (for |\ragged|\-|left|), or `s' (for no special justification).
% The default is `c'.
% (But you can use any justification defined with
% |\Declare|\-|Caption|\-|Jus|\-|ti|\-|fi|\-|ca|\-|tion| as well,
-% e.g.~`|center|\-|last|'.)
+% e.g.: `|center|\-|last|')
% \end{small}
%
% \bigskip
%
-% Using |\sub|\-|caption|\-|box|, the baseline of the resulting box will be placed
-% right between contents and heading, so usually you don't have to care about the
+% When using |\sub|\-|caption|\-|box|, the baseline of the resulting box will be placed
+% right between contents and heading. So usually you don't have to care about the
% vertical alignment of the sub-figures for yourself.
-% Also the hyperlink anchor is placed properly with respect to the |hyp|\-|cap=|
-% setting.
+% Also the hyperlink anchor is placed properly with respect to the |hyp|\-|cap=| setting.
%
-% One example:
+% \pagebreak[3]
+% An example:
% \begin{quote}
% |\begin{figure}|\\
% | \centering|\\
@@ -274,14 +285,13 @@
% | \caption{Two animals}\label{animals}|\\
% |\end{figure}|
% \end{quote}
-% gives the result:\par
% \noindent\begin{minipage}{\linewidth}
-% \setcaptiontype{figure}
+% \captionsetup{type=figure}
% \centering
% \subcaptionbox{A cat\label{cat}}
% {\includegraphics[width=30pt]{cat}}
% \subcaptionbox{An elephant\label{elephant}}
-% {\includegraphics[width=.4\textwidth]{elephant}}
+% {\includegraphics[width=140pt]{elephant}}
% \caption[Two animals]{Two animals~\footnotemark}\label{animals}
% \end{minipage}
% \footnotetext{The pictures were taken with permission from the
@@ -300,12 +310,12 @@
% | |\ldots
% \end{quote}
% \noindent\begin{minipage}{\linewidth}
-% \setcaptiontype{figure}
+% \captionsetup{type=figure}
% \centering
% \subcaptionbox{A cat\label{cat2}}
% [2.5cm]{\includegraphics[width=30pt]{cat}}
% \subcaptionbox{An elephant\label{elephant2}}
-% {\includegraphics[width=.4\textwidth]{elephant}}
+% {\includegraphics[width=140pt]{elephant}}
% \caption{Two animals}\label{animals2}
% \end{minipage}
%
@@ -318,176 +328,295 @@
% \begin{quote}
% | |\ldots\\
% | \subcaptionbox{A cat\label{cat}}|\\
-% | |\textcolor{blue}{\csoarg{.4\cs{linewidth}}}|{\includegraphics{cat}}%|\\
+% | |\textcolor{blue}{\csoarg{.4\cs{textwidth}}}|{\includegraphics{cat}}%|\\
% | \subcaptionbox{An elephant\label{elephant}}|\\
-% | |\textcolor{blue}{\csoarg{.4\cs{linewidth}}}|{\includegraphics{elephant}}|\\
+% | |\textcolor{blue}{\csoarg{.4\cs{textwidth}}}|{\includegraphics{elephant}}|\\
% | |\ldots
% \end{quote}
% \noindent\begin{minipage}{\linewidth}
-% \setcaptiontype{figure}
+% \captionsetup{type=figure}
% \centering
% \subcaptionbox{A cat\label{cat3}}
-% [.4\linewidth]{\includegraphics[width=39.34724pt]{cat}}%^^A
+% [.4\textwidth]{\includegraphics[width=30pt]{cat}}%^^A
% \subcaptionbox{An elephant\label{elephant3}}
-% [.4\linewidth]{\includegraphics[width=.4\textwidth]{elephant}}
+% [.4\textwidth]{\includegraphics[width=140pt]{elephant}}
% \caption{Two animals}\label{animals3}
% \end{minipage}
%
% \bigskip
%
-% \iffalse
+% \begin{background}
+% The |\sub|\-|caption|\-|box| is a |\par|\-|box| with
+% |\set|\-|caption|\-|sub|\-|type| as first contents line.
+% \end{background}
+%
+% \subsection{Comparison with \cs{captionbox}}
+%
+% Both, |\caption|\-|box| (offered by the \pkg{caption} package) and |\sub|\-|caption|\-|box|,
+% put its contents and caption into a |\par|\-|box| of either natural or given width and share the
+% same (mandatory and optional) arguments, but while |\caption|\-|box| uses a regular caption,
+% |\sub|\-|caption|\-|box| uses a sub-caption instead, like ``(a)'' or ``2.1''.
+%
+% \pagebreak[3]
+% So for example the last example would look like this when using |\caption|\-|box|
+% instead of |\sub|\-|caption|\-|box|:
+% \begin{quote}
+% |\begin{figure}|\\
+% | \centering|\\
+% | \captionbox{A cat\label{cat}}|\\
+% | |\csoarg{.4\cs{textwidth}}|{\includegraphics{cat}}%|\\
+% | \captionbox{An elephant\label{elephant}}|\\
+% | |\csoarg{.4\cs{textwidth}}|{\includegraphics{elephant}}|\\
+% |\end{figure}|
+% \end{quote}
% \noindent\begin{minipage}{\linewidth}
-% \setcaptiontype{figure}
+% \captionsetup{type=figure}
% \centering
-% \hbox{\subcaptionbox{An elephant\label{elephant4}}
-% {\includegraphics[width=.4\textwidth]{elephant}}%^^A
-% \vbox{\subcaptionbox{Cat 1\label{cat4.1}}
-% {\includegraphics[width=30pt]{cat}}\par
-% \subcaptionbox{Cat 2\label{cat4.2}}
-% {\includegraphics[width=30pt]{cat}}}}%^^A
-% \caption{Two animals}\label{animals4}
+% \captionbox{A cat\label{cat3.1}}
+% [.4\textwidth]{\includegraphics[width=30pt]{cat}}%^^A
+% \captionbox{An elephant\label{elephant3.1}}
+% [.4\textwidth]{\includegraphics[width=140pt]{elephant}}
% \end{minipage}
-% \bigskip
-% \fi
%
-% \begin{background}
-% The |\sub|\-|caption|\-|box| is a |\par|\-|box| with
-% |\set|\-|caption|\-|sub|\-|type| as first contents line.
% \iffalse
-% Prepared with |\Declare|\-|Caption|\-|Sub|\-|Type| (offered by the
-% \package{caption} package), the caption package command |\set|\-|caption|\-|sub|\-|type|
-% becames available.
-% Analogous to the |\set|\-|caption|\-|type| command of the \package{caption} package,
-% the |\set|\-|caption|\-|sub|\-|type| command sets the sub-type of the box or environment
-% (so |\caption| will typeset a sub-caption instead of an ordinary one),
-% places a proper hyperlink anchor (non-starred variant only),
-% executes options associated with the sub-type etc.
+% --------------------------------------------------------------------------- %
% \fi
-% \end{background}
%
% \PageBreak
-% \section{The subfigure \& subtable environments}
+% \section{The \env{subcaptionblock} environment}
%
-% \DescribeEnv{subfigure}
-% \DescribeEnv{subtable}
-% After loading \thispackage\ the new environments |sub|\-|figure| and
-% |sub|\-|table| are available, which have the same (optional \& mandatory)
-% arguments as the |mini|\-|page| environment:
-% \begin{quote}
-% |\begin{subfigure}|\oarg{outer-pos}\oarg{height}\oarg{inner-pos}\marg{width}\\
-% \ldots\\
-% |\end{subfigure}|
-% \end{quote}
-% and
+% \DescribeEnv{subcaptionblock}
+% \NEWfeature*{v1.5}
+% The |sub|\-|caption|\-|block| environment makes a box with given width.
+% Inside this box the regular caption commands (like |\caption|, |\phantom|\-|caption|, \ldots) could be used to typeset sub-captions.
+%
+% \pagebreak[3]
+% |sub|\-|caption|\-|block| has the same (optional \& mandatory) arguments as the |mini|\-|page| environment:
+% \begingroup
+% \leftmargini=12pt
% \begin{quote}
-% |\begin{subtable}|\oarg{outer-pos}\oarg{height}\oarg{inner-pos}\marg{width}\\
-% \ldots\\
-% |\end{subtable}|
+% |\begin{subcaptionblock}|\oarg{outer-pos}\oarg{height}\oarg{inner-pos}\marg{width}\\
+% | |\ldots\\
+% |\end{subcaptionblock}|
% \end{quote}
-% Inside these environments you use the ordinary |\caption| command
-% for typesetting captions. So this example is the same as the last one,
-% but uses the |sub|\-|figure| environment:
+% \endgroup
+%
+% The default value for \meta{outer-pos} is `b' and the default value for \meta{inner-pos} is `s'.
+% (Note that the default value for \meta{outer-pos} has changed from `c' to `b' in version $1.5$ of \thispackage.)
+%
+% \NEWfeature{v1.2}
+% Beside the \meta{outer-pos} values of `c', `t', and `b', \thispackage\ also offers the
+% values `T' and `B' additionally which align the |sub|\-|figure| at the
+% very top resp.~bottom. (In contrast `t' and `b' align the |sub|\-|figure| at the
+% top resp.~bottom \textit{baseline}.)
+%
+% \bigskip
+%
+% \pagebreak[3]
+% The same example as \autoref{animals3}, but this time using the |sub|\-|caption|\-|block| environment
+% instead of |\sub|\-|caption|\-|box|:
% \begin{quote}
% |\begin{figure}|\\
-% | \begin{|\textcolor{blue}{\texttt{subfigure}}|}[b]{.5\linewidth}|\\
-% | \centering\large A|\\
-% | |\textcolor{blue}{\cs{caption}}|{A subfigure}\label{fig:1a}|\\
-% | \end{|\textcolor{blue}{\texttt{subfigure}}|}%|\\
-% | \begin{|\textcolor{blue}{\texttt{subfigure}}|}[b]{.5\linewidth}|\\
-% | \centering\large B|\\
-% | |\textcolor{blue}{\cs{caption}}|{Another subfigure}\label{fig:1b}|\\
-% | \end{|\textcolor{blue}{\texttt{subfigure}}|}|\\
-% | \caption{A figure}\label{fig:1}|\\
+% | \centering|\\
+% | |\textcolor{blue}{\cs{begin}\csmarg{subcaptionblock}\csmarg{.4\cs{textwidth}}}\\
+% | \centering|\\
+% | \includegraphics{cat}|\\
+% | |\textcolor{blue}{\cs{caption}}|{A cat}\label{cat}|\\
+% | |\textcolor{blue}{\cs{end}\csmarg{subcaptionblock}}|%|\\
+% | |\textcolor{blue}{\cs{begin}\csmarg{subcaptionblock}\csmarg{.4\cs{textwidth}}}\\
+% | \centering|\\
+% | \includegraphics{elephant}|\\
+% | |\textcolor{blue}{\cs{caption}}|{An elephant}\label{elephant}|\\
+% | |\textcolor{blue}{\cs{end}\csmarg{subcaptionblock}}|%|\\
+% | \caption{Two animals}\label{animals}|\\
% |\end{figure}|
% \end{quote}
+% \noindent\begin{minipage}{\linewidth}
+% \captionsetup{type=figure}
+% \centering
+% \begin{subcaptionblock}{.4\textwidth}
+% \centering
+% \includegraphics[width=30pt]{cat}
+% \caption{A cat}\label{cat4}
+% \end{subcaptionblock}%
+% \begin{subcaptionblock}{.4\textwidth}
+% \centering
+% \includegraphics[width=140pt]{elephant}
+% \caption{An elephant}\label{elephant4}
+% \end{subcaptionblock}
+% \caption{Two animals}\label{animals4}
+% \end{minipage}
+%
+% \medskip
+%
+% \pagebreak[3]
% Some additional notes:
% \begin{itemize}
-% \item You can override the setttings for a specific subcaption
-% with a |\caption|\-|setup| inside the |sub|\-|figure| or |sub|\-|table| environment, e.g.:
+% \item
+% You can override the setttings for a specific subcaption
+% with a |\caption|\-|setup| inside the |sub|\-|caption|\-|block|, e.g.:
% \begin{quote}
-% |\begin{subfigure}[b]{.5\linewidth}|\\
-% | \centering\large A|\\
+% |\begin{subcaptionblock}{.4\textwidth}|\\
+% | \centering|\\
+% | \includegraphics{owl}|\\
% | |\textcolor{blue}{\cs{captionsetup}\csmarg{skip=3pt}}\\
-% | \caption{A subfigure}\label{fig:1a}|\\
-% |\end{subfigure}|\\
+% | \caption{An owl}\label{owl}|\\
+% |\end{subcaptionblock}|
% \end{quote}
-% \item Hyperlinks targeted to this subfigure will jump to the beginning
-% of the subfigure, and not to the caption of the subfigure
+% \item
+% Just like |figure| or |table|, a |sub|\-|caption|\-|block| could have multiple captions, e.g.:
+% \begin{quote}
+% |\begin{subcaptionblock}{.4\textwidth}|\\
+% | \centering|\\
+% | \includegraphics{cat}|\\
+% | \caption{A cat}\label{cat}|\\
+% | \medskip|\\
+% | \includegraphics{elephant}|\\
+% | \caption{An elephant}\label{elephant}|\\
+% |\end{subcaptionblock}|
+% \end{quote}
+% \item
+% Hyperlinks targeted to this sub-figure will jump to the beginning
+% of the |sub|\-|caption|\-|block|, and not to the |\caption| inside it
% (if |hypcap=true| is set for sub-captions).
% \See{\Ref{hypcap}}
% \end{itemize}
%
-% \NEWfeature{v1.2}
-% Beside the \meta{outer-pos} values of `c', `t', and `b', \thispackage\ also offers the
-% values `T' and `B' additionally which align the |sub|\-|figure| at the
-% very top resp.~bottom. (In contrast `t' and `b' align the |sub|\-|figure| at the
-% top resp.~bottom \textit{baseline}.)
+% \DescribeEnv{subfigure}
+% \DescribeEnv{subtable}
+% The |sub|\-|caption|\-|block| environment is also offered as |sub|\-|figure| resp.~|sub|\-|table|.
+% (And prior version $1.5$ of \thispackage\ it was only available as |sub|\-|figure| resp.~|sub|\-|table|.)
%
-% \bigskip
+% There is no difference in them except the environment name should match the current floating environment,
+% i.e. inside a |figure| a |sub|\-|figure| should be used, and inside a |table| a |sub|\-|table| should be used.
+% Using the wrong sub-environment will cause a warning since \version{1.5} of the \pkg{subcaption} package.
+%
+% So if in doubt, or when writing own \LaTeX\ commands which should work in every floating environment,
+% using |sub|\-|caption|\-|block| is the correct choice.
+%
+% \smallskip
%
% \begin{background}
-% The |subfigure| \& |subtable| environments are just simple |minipage|
+% The |sub|\-|caption|\-|block|, |sub|\-|figure|, and |sub|\-|table| environments are |mini|\-|page|
% environments with |\set|\-|caption|\-|sub|\-|type| as first contents line.
-% These environments are defined with the help of
-% |\For|\-|Each|\-|Caption|\-|Sub|\-|Type|, which executes code for every sub-type
-% declared with |\Declare|\-|Caption|\-|Sub|\-|Type|.
+%
+% |sub|\-|figure| and |sub|\-|table| are defined with the help of
+% |\For|\-|Each|\-|Caption|\-|Sub|\-|Type| offered by the \pkg{caption} package,
+% which executes code for every sub-type declared with |\Declare|\-|Caption|\-|Sub|\-|Type|.
% \end{background}
%
-% \iffalse\PageBreak\fi
-% \section{The \cs{subcaption} command}
+% \iffalse
+% --------------------------------------------------------------------------- %
+% \fi
%
-% \DescribeMacro\subcaption
-% The most flexible way to apply a sub-caption is by using the
-% |\subcaption| command. Its syntax is analogous to the one of the |\caption|
-% command and shares its features:
+% \PageBreak
+% \section{The \env{subcaptiongroup} environment}
+%
+% \DescribeEnv{subcaptiongroup}
+% \NEWfeature*{v1.5}
+% The |sub|\-|caption|\-|group| environment is only switching to the sub-caption mode inside an own \TeX\ group.
+% Inside this environment the regular caption commands (like |\caption|, |\phantom|\-|caption|, \ldots) could be used to typeset sub-captions.
+%
+% \pagebreak[3]
+% Its syntax is:
+% \begingroup
+% \leftmargini=12pt
% \begin{quote}
-% |\subcaption|\oarg{list entry}\marg{heading}\\
-% |\subcaption*|\marg{heading}
+% |\begin{subcaptiongroup}|\\
+% | |\ldots\\
+% |\end{subcaptiongroup}|
% \end{quote}
-% Please note that the |\subcaption| command \emph{must} be applied inside
-% its own box or environment.
+% \endgroup
%
-% An example:
+% \pagebreak[3]
+% There is a starred variant of this environment as well which uses |\set|\-|caption|\-|sub|\-|type*|
+% instead of |\set|\-|caption|\-|sub|\-|type| internally:
+% \begingroup
+% \leftmargini=12pt
+% \begin{quote}
+% |\begin{subcaptiongroup*}|\\
+% | |\ldots\\
+% |\end{subcaptiongroup*}|
+% \end{quote}
+% \endgroup
+%
+% While this gives you great flexibility, it also offers you no help formatting its contents.
+%
+% \pagebreak[3]
+% The same example as \autoref{animals4}, but this time using the |sub|\-|caption|\-|group| environment
+% instead of |\sub|\-|caption|\-|block|:
% \begin{quote}
% |\begin{figure}|\\
-% | \begin{minipage}[b]{.5\linewidth}|\\
-% | \centering\large A|\\
-% | \subcaption{A subfigure}\label{fig:1a}|\\
-% | \end{minipage}%|\\
-% | \begin{minipage}[b]{.5\linewidth}|\\
-% | \centering\large B|\\
-% | \subcaption{Another subfigure}\label{fig:1b}|\\
-% | \end{minipage}|\\
-% | \caption{A figure}\label{fig:1}|\\
+% | \centering|\\
+% | |\textcolor{blue}{\cs{begin}\csmarg{subcaptiongroup}}\\
+% | \centering|\\
+% | \parbox[b]{.4\textwidth}{%|\\
+% | \centering|\\
+% | \includegraphics{cat}|\\
+% | \caption{A cat}\label{cat}}%|\\
+% | \parbox[b]{.4\textwidth}{%|\\
+% | \centering|\\
+% | \includegraphics{elephant}|\\
+% | \caption{An elephant}\label{elephant}}%|\\
+% | |\textcolor{blue}{\cs{end}\csmarg{subcaptiongroup}}\\
+% | \caption{Two animals}\label{animals}|\\
+% |\end{figure}|
+% \end{quote}
+% --or--
+% \begin{quote}
+% |\begin{figure}|\\
+% | \centering|\\
+% | |\textcolor{blue}{\cs{begin}\csmarg{subcaptiongroup}}\\
+% | \centering|\\
+% | \begin{minipage}[b]{.4\textwidth}|\\
+% | \centering|\\
+% | \includegraphics{cat}|\\
+% | \caption{A cat}\label{cat}|\\
+% | \end{minipage}%|\\
+% | \begin{minipage}[b]{.4\textwidth}|\\
+% | \centering|\\
+% | \includegraphics{elephant}|\\
+% | \caption{An elephant}\label{elephant}|\\
+% | \end{minipage}|\\
+% | |\textcolor{blue}{\cs{end}\csmarg{subcaptiongroup}}\\
+% | \caption{Two animals}\label{animals}|\\
% |\end{figure}|
% \end{quote}
-% gives the result:
-% \par\bigskip
% \noindent\begin{minipage}{\linewidth}
-% \setcaptiontype{figure}
-% \begin{minipage}[b]{.5\linewidth}
-% \centering\large A
-% \subcaption{A subfigure}\label{fig:1a}
-% \end{minipage}%^^A
-% \begin{minipage}[b]{.5\linewidth}
-% \centering\large B
-% \subcaption{Another subfigure}\label{fig:1b}
-% \end{minipage}
-% \caption{A figure}\label{fig:1}
+% \captionsetup{type=figure}
+% \centering
+% \begin{subcaptiongroup}
+% \centering
+% \begin{minipage}[b]{.4\textwidth}
+% \centering
+% \includegraphics[width=30pt]{cat}
+% \caption{A cat}\label{cat5}
+% \end{minipage}%
+% \begin{minipage}[b]{.4\textwidth}
+% \centering
+% \includegraphics[width=140pt]{elephant}
+% \caption{An elephant}\label{elephant5}
+% \end{minipage}
+% \end{subcaptiongroup}
+% \caption{Two animals}\label{animals5}
% \end{minipage}
%
% \bigskip
%
% \begin{background}
-% The |\subcaption| command is just a simple combination of
-% |\set|\-|caption|\-|sub|\-|type*| and |\caption|.
+% The |sub|\-|caption|\-|group| environment is a \LaTeX\ environment
+% with |\set|\-|caption|\-|sub|\-|type| as first contents line.
% \end{background}
%
+% \iffalse
+% --------------------------------------------------------------------------- %
+% \fi
+%
% \PageBreak
% \section{The \cs{DeclareCaptionSubType} command}
%
% \DescribeMacro\DeclareCaptionSubType
-% For using the sub-caption feature of the \package{caption} package some
+% For using the sub-caption feature of the \pkg{caption} package some
% commands and counters must be prepared. This is done with
% \begin{quote}
% |\DeclareCaptionSubType|\oarg{numbering scheme}\marg{type}\\
@@ -495,30 +624,35 @@
% \end{quote}
% For the environments |figure| \& |table|, and all the ones
% defined with |\Declare|\-|Floating|\-|Environment| offered by the
-% \package{newfloat} package, this will be done automatically,
+% \pkg{newfloat} package, this will be done automatically,
% but for other environments (e.g.~the ones defined with |\newfloat| offered by the
-% \package{float} package or |\Declare|\-|New|\-|Float|\-|Type| offered by the
-% \package{floatrow} package) this has to be done manually.
+% \pkg{float} package or |\Declare|\-|New|\-|Float|\-|Type| offered by the
+% \pkg{floatrow} package) this has to be done manually.
%
% \medskip
%
% The starred variant provides the sub-caption numbering format
-% \meta{type}|.|\meta{subtype} (e.g.~`|1.2|') while the non-starred variant
-% simply uses \meta{subtype} (e.g.~`|a|').
+% \meta{type}|.|\meta{subtype} (for example `|1.2|') while the non-starred variant
+% simply uses \meta{subtype} (for example `|a|').
%
-% \begin{small}
-% Own numbering formats can be created by redefining |\thesub|\meta{type}, e.g.
-% \begin{quote}|\DeclareCaptionSubType*{figure}|\\
-% |\renewcommand\thesubfigure{\thefigure\alph{subfigure}}|\end{quote}
+% \pagebreak[3]
+% Own numbering formats can be created by redefining |\thesub|\meta{type}, e.g.:
+% \begingroup
+% \leftmargini=12pt
+% \begin{quote}
+% |\DeclareCaptionSubType*{figure}|\\
+% |\renewcommand\thesubfigure{\thefigure\alph{subfigure}}|
+% \end{quote}
+% \endgroup
% would give you sub-caption numbers like `|1b|'.
-% \end{small}
%
% The default numbering scheme is |alph|, but you can use any \LaTeX\ (or self-defined)
-% command name here which converts a counter to a text value, e.g. |arabic|, |roman|,
+% command name here which converts a counter to a text value, e.g.: |arabic|, |roman|,
% |Roman|, |alph|, |Alph|, |fnsymbol|, \ldots
%
+% \pagebreak[3]
% But |\DeclareCaptionSubType| is not only for defining new sub-caption types,
-% you can use this command for re-definitions as well, e.g.
+% you can use this command for re-definitions as well, e.g.:
% \begingroup
% \leftmargini=12pt
% \begin{quote}
@@ -530,7 +664,7 @@
% will give you sub-captions in |table|s like these ones:
% \par\bigskip
% \noindent\begin{minipage}{\linewidth}
-% \setcaptiontype{table}
+% \captionsetup{type=table}
% \centering
% \caption{Two tables}
% \subcaptionbox{Table one}[3cm][c]{\begin{tabular}{cc}A & B\\ C & D\\ \end{tabular}}
@@ -539,11 +673,16 @@
%
% \begin{background}
% |\Declare|\-|Caption|\-|Sub|\-|Type| and |\For|\-|Each|\-|Caption|\-|Sub|\-|Type|
-% are integral parts of the \package{caption} package kernel.
+% are integral parts of the \pkg{caption} package kernel.
% \end{background}
%
+% \iffalse
+% --------------------------------------------------------------------------- %
+% \fi
+%
% \PageBreak
-% \section{References}
+% \section{Cross Referencing}
+% \label{crossreferencing}
%
% The macro |\the|\-\meta{counter} is not only responsible for the look of the \meta{counter},
% but for the look of the references typeset with |\ref|, too. References will be prefixed by
@@ -554,6 +693,7 @@
% |\Declare|\-|Caption|\-|Sub|\-|Type| will give you some options to control the
% internal (re-)definition of |\the|\-\meta{counter} and |\p@|\-\meta{counter}.
%
+% \pagebreak[3]
% \DescribeMacro\thesubfigure
% \DescribeMacro\p@subfigure
% For example |\thesubfigure| and |\p@subfigure| are (as default) internally defined as
@@ -596,23 +736,26 @@
% |\captionsetup[subfigure]{labelformat=opening}|
% \end{quote}
%
-% {\small(Please note that you need to surround redefinitions of |\p@|\-\meta{counter}
+% \bigskip
+%
+% \INFO
+% {\small Please note that you need to surround redefinitions of |\p@|\-\meta{counter}
% with |\makeatletter| and |\makeatother|. See
% \url{http://tex.stackexchange.com/questions/8351/}
-% for details.)}
+% for details.}
%
% \pagebreak[3]
% \subsection{The \cs{subref} command}
% \label{subref}
%
-% While |\ref|\marg{key} (and |\ref*|\marg{key}, if the \package{hyperref}
+% While |\ref|\marg{key} (and |\ref*|\marg{key}, if the \pkg{hyperref}
% package is used) usually gives a combined result representing the main
% caption counter and the sub-caption one, it is sometimes useful to have
% a reference to the sub-caption only. For this purpose you can use
% \begin{quote}
% |\subref|\marg{key}\\
% |\subref*|\marg{key}~\footnote{%^^A
-% Like \cs{ref*}, \cs{subref*} is only available if the \package{hyperref}
+% Like \cs{ref*}, \cs{subref*} is only available if the \pkg{hyperref}
% package\cite{hyperref} is used.}%^^A
% \qquad.
% \end{quote}
@@ -635,12 +778,15 @@
% \label{subrefformat}
%
% \DescribeMacro{subrefformat=}
-% \NEWfeature{v1.1}
+% \NEWfeature*{v1.1}
% By applying |\Declare|\-|Caption|\-|Sub|\-|Type|, or by redefining |\the|\-\meta{counter}
% and |\p@|\-\meta{counter}, you will change the look of references typeset with |\ref|
% \emph{and} |\sub|\-|ref|.
+%
% But maybe you only want to change the output of |\sub|\-|ref| without
% affecting the references typeset with |\ref|?
+%
+% \pagebreak[3]
% This is possible, too, by using the option \opt{subrefformat}:
% \begin{quote}
% |\captionsetup{subrefformat=|\meta{label format}|}|
@@ -650,6 +796,7 @@
% The default one is |simple| which has no decorative elements but simply typeset
% the reference as it is.
%
+% \pagebreak[3]
% For example
% \begin{quote}
% |\captionsetup{subrefformat=parens}|
@@ -658,95 +805,179 @@
% (typeset with |\subref|) like `|(a)|'.
%
% \subsection{Referencing sub-figures without sub-captions}
+% \label{without}
%
-% \DescribeMacro\phantomsubcaption
% \DescribeMacro\phantomcaption
-% \NEWfeature{v1.1}
-% If you don't want to give a sub-figure a caption, because the picture itself
-% already contains the caption, or for some other reason, you can use the command
+% If you don't want to give a sub-figure a caption (yet), because the picture itself
+% already contains the caption, or for some other reason, you could use the command
% \begin{quote}
-% |\phantomsubcaption|
+% |\phantomcaption|
% \end{quote}
-% instead of |\sub|\-|caption|, or
-% -- when inside a |sub|\-|figure| or |sub|\-|table| environment --
-% |\phantom|\-|caption| instead of |\caption|.
-% |\phantom|\-|sub|\-|caption| and |\phantom|\-|caption| do not have any arguments, and
-% they do not generate any output, but give you an anchor for a |\label| command
-% which can be placed afterwards.
-% Furthermore it increases the sub-figure resp. sub-table counter.
+% instead of |\caption|.
%
-% Please note that -- just like |\sub|\-|caption| -- the |\phantom|\-|sub|\-|caption|
-% command \emph{must} be applied inside its own group, box, or environment.
+% |\phantom|\-|caption| is offered by the \pkg{caption} package since version $3.2$ and
+% does not generate any output but increases the sub-figure resp.~sub-table counter
+% and gives you an anchor for a |\label| command which can be placed after it.
%
% \pagebreak[3]
% An example:
% \begin{quote}
% |\begin{figure}|\\
% | \centering|\\
-% | {\includegraphics{cat_with_a}|\\
-% | \phantomsubcaption\label{cat}}|\\
-% | {\includegraphics{elephant_with_b}|\\
-% | \phantomsubcaption\label{elephant}}|\\
-% | \caption{Two animals: \subref{cat} a huge cat,|\\
+% | \begin{subcaptiongroup}|\\
+% | \includegraphics{cat_with_a}|\\
+% | |\textcolor{blue}{\cs{phantomcaption}}|\label{cat}|\\
+% | \includegraphics{elephant_with_b}|\\
+% | |\textcolor{blue}{\cs{phantomcaption}}|\label{elephant}|\\
+% | \end{subcaptionblock}|\\
+% | \captionsetup{subrefformat=parens}|\\
+% | \caption{Two animals: \subref{cat} a cat,|\\
% | and \subref{elephant} an elephant}|\\
+% | \label{animals}|\\
% |\end{figure}|
% \end{quote}
-%
% \noindent\begin{minipage}{\linewidth}
-% \setcaptiontype{figure}
+% \captionsetup{type=figure}
% \centering
-% {\begin{overpic}[width=60pt]{cat}
-% \put(40,34){(a)}
-% \end{overpic}
-% \phantomsubcaption\label{cat6.3}}
-% {\begin{overpic}[width=.4\textwidth]{elephant}
-% \put(60,50){(b)}
-% \end{overpic}
-% \phantomsubcaption\label{elephant6.3}}
+% \begin{subcaptiongroup}
+% \phantomcaption\label{cat6.3}
+% \begin{overpic}[width=30pt]{cat}
+% \put(40,34){\captiontext*{}}
+% \end{overpic}
+% \phantomcaption\label{elephant6.3}
+% \begin{overpic}[width=140pt]{elephant}
+% \put(58,40){\captiontext*{}}
+% \end{overpic}
+% \end{subcaptiongroup}
% \captionsetup{subrefformat=parens}
-% \caption{Two animals: \subref{cat6.3} a huge cat, and \subref{elephant6.3} an elephant}
+% \caption{Two animals: \subref{cat6.3} a cat, and \subref{elephant6.3} an elephant}
% \end{minipage}
%
+% \bigskip
+%
+% \pagebreak[3]
+% \DescribeMacro\captionlistentry
+% If you don't want to give a sub-figure a caption (yet), because the picture itself
+% already contains the caption, or for some other reason, you could also use the command
+% \begin{quote}
+% |\captionlistentry|\marg{list entry}
+% \end{quote}
+% instead of |\caption|.
+%
+% |\caption|\-|list|\-|entry| is offered by the \pkg{caption} package since version $3.3$ and
+% (just like |\phantom|\-|caption|) does not generate any output but increases
+% the sub-figure resp.~sub-table counter
+% and gives you an anchor for a |\label| command which can be placed after it.
+% Additionally to |\phantom|\-|caption| this command puts an entry into the list
+% of figures resp.~tables.
+%
+% \pagebreak[3]
+% An example:
+% \begin{quote}
+% |\begin{figure}|\\
+% | \centering|\\
+% | \begin{subcaptiongroup}|\\
+% | \includegraphics{cat_with_a}|\\
+% | |\textcolor{blue}{\cs{captionlistentry}\csmarg{A cat}}\\
+% | \label{cat}|\\
+% | \includegraphics{elephant_with_b}|\\
+% | |\textcolor{blue}{\cs{captionlistentry}\csmarg{An elephant}}\\
+% | \label{elephant}|\\
+% | \end{subcaptionblock}|\\
+% | \captionsetup{subrefformat=parens}|\\
+% | \caption{Two animals: \subref{cat} a cat,|\\
+% | and \subref{elephant} an elephant}|\\
+% | \label{animals}|\\
+% |\end{figure}|
+% \end{quote}
+%
+% \pagebreak[3]
+% \subsection{Typesetting sub-captions without generating a (new) reference}
+% \label{without2}
+%
+% The |\caption| command is a multi-purpose command:
+% \begin{enumerate}
+% \item It increments the sub-figure resp.~sub-table counter and generates an internal reference which could be used with |\label|
+% \item It puts an entry into the list of figures resp.~tables
+% \item It finally typesets a caption
+% \end{enumerate}
+%
+% When put into a command or into an environment which either evaluates its content more than once or
+% does not like one of the first two actions (for whatever reason), the result could be either an error message or an incorrect
+% result, for example a sub-figure resp.~sub-table counter which was incremented more than once.
+%
+% \DescribeMacro\captiontext
+% In these cases the |\caption| command could be split into
+% |\phantom|\-|caption| which performs step one only (or |\caption|\-|list|\-|entry| which performs steps one and two),
+% and |\caption|\-|text| which performs step three only.
+% This way critical steps could be out-sourced from the target command or environment,
+% for example by prepending |\phantom|\-|caption| and using |\caption|\-|text| inside.
+%
+% \pagebreak[3]
+% The syntax of |caption|\-|text| is
+% \begin{quote}
+% |\captiontext|\oarg{number}\marg{text of sub-caption}\\
+% |\captiontext*|\oarg{number}\marg{text of sub-caption}
+% \end{quote}
+% |\caption|\-|text| is offered by the \pkg{caption} package since version $3.6$ and
+% as opposite to |\caption| it does not increase the sub-figure resp.~sub-table counter
+% and does not give you an anchor for a |\label| command.
+% It typesets the caption only, using existing counter values unless a \meta{number} is given explicitly.
+%
+% For example code please take a look at \Ref{inside}.
+%
% \pagebreak[3]
% \subsection{Where to place the \cs{label} command?}
% \label{label}
%
-% When using |\sub|\-|caption| or |\phantom|\-|sub|\-|caption|,
-% or |\caption| or |\phantom|\-|caption| inside a |sub|\-|figure| or |sub|\-|table| environment,
-% the |\label| can be either placed inside the caption text or right after the |\sub|\-|caption| or
-% |\caption| command, e.g:
+% When |\caption|
+% inside a |caption|\-|sub|\-|block|, |sub|\-|figure|, |sub|\-|table|, or |caption|\-|sub|\-|group| environment,
+% the |\label| can be either placed inside the caption text or right after the command, e.g.:
% \begin{quote}
-% |\subcaption{Some text here\label{label1}}|\\
+% |\caption{Some text here\label{text}}|\\
% \ldots\\
-% |\subcaption{Some other text}\label{label2}}|\\
+% |\caption{Some other text}\label{othertext}|\\
% \ldots\\
-% |\subcaption{Something different}|\\
-% |\label{label3}|
+% |\caption{Something completely different}|\\
+% |\label{differenttext}|
% \end{quote}
%
-% When using the |\sub|\-|caption|\-|box| command, the |\label| should be placed inside
+% When using |\phantom|\-|caption| or |\caption|\-|list|\-|entry|
+% inside a |caption|\-|sub|\-|block|, |sub|\-|figure|, |sub|\-|table|, or |caption|\-|sub|\-|group| environment,
+% the |\label| should be placed right after the command, e.g.:
+% \begin{quote}
+% |\phantomcaption\label{this}|\\
+% \ldots\\
+% |\phantomcaption|\\
+% |\label{that}|
+% \end{quote}
+%
+% But when using the |\sub|\-|caption|\-|box| command, the |\label| should be placed inside
% the caption text, e.g.:
% \begin{quote}
-% |\subcaptionbox{A description here\label{label4}}|\\
+% |\subcaptionbox{A description here\label{todo1}}|\\
% | {Some content here}|\\
% \ldots\\
% |\subcaptionbox[List-of-Figures entry]|\\
-% | {A description here\label{label5}}|\\
+% | {A description here\label{todo2}}|\\
% | {Some content here}|
% \end{quote}
+% Placing |\label| outside the |\sub|\-|caption|\-|box| would produce an incorrect reference.
%
% \pagebreak[3]
% \subsection{Where do hyperlinks jump?}
% \label{hypcap}
%
-% For the |subfigure| \& |subtable| environments and |\subcaptionbox| boxes
-% (and own constructs which use |\set|\-|caption|\-|sub|\-|type|) the
-% hyperlink anchors will be placed in respect to the |hypcap=| setting.
+% For the |caption|\-|sub|\-|block|, |sub|\-|figure|, |sub|\-|table|, and |caption|\-|sub|\-|group| environments,
+% and for the |\sub|\-|caption|\-|box| command (and all other constructs which use |\set|\-|caption|\-|sub|\-|type|)
+% the hyperlink anchors will be placed in respect to the |hypcap=| setting.
% While usage of this option is straight-forward for ordinary captions,
% the usage for sub-captions depends on the setting regarding the main captions.
-% This table gives you an overview where the hyperlinks will jump:\par
+%
+% This table gives you an overview where the hyperlinks will jump:
%
% \bigskip
+%
% \begin{small}
% \centering
% \DeleteShortVerb{\|}
@@ -767,27 +998,565 @@
% \end{small}
% \bigskip
%
-% But if |\subcaption| is used and |hypcap=true| is set for sub-captions,
+% But if the |caption|\-|sub|\-|group*| environment is used
+% (or a different construct which uses |\set|\-|caption|\-|sub|\-|type*|)
+% and |hypcap=true| is set for sub-captions,
% \thispackage\ does not know where the sub-figure or sub-table actually
% begins, so it will jump to the sub-caption instead.
%
% \medskip
-% \emph{Remember:} If you use the \package{hypcap} package\cite{hypcap},
+% \emph{Remember:} If you use the \pkg{hypcap} package\cite{hypcap},
% it controls the placement of the hyperlink anchors, making the rules
% above invalid.
%
% \bigskip
-% {\small(See also the documentation of the \package{caption} package,
-% sections about \package{hyperref} \& \package{hypcap}.)}
+% {\small(See also the documentation of the \pkg{caption} package,
+% sections about \pkg{hyperref} \& \pkg{hypcap}.)}
+%
+% \iffalse
+% --------------------------------------------------------------------------- %
+% \fi
+%
+% \PageBreak
+% \section{Captions inside sub-figures}
+% \label{inside}
+%
+% Nearly all code examples so far have placed the caption either above or below the sub-figure.
+% But it is possible to put the caption inside the sub-figure, too:
+% \begin{itemize}
+% \item The caption could already be part of the image. (This case is already handled in \Ref{without}.)
+% \item \LaTeX\ packages like \pkg{overpic}, \pkg{stackengine}, or \pkg{tikz} could be used.
+% Note that the commands resp.~environments offered by these packages usually evaluate their content more than once,
+% resulting in either errors or wrong reference counters.
+% For this reason |\caption| should not be used here, instead
+% |\phantomcaption| or |\captionlistentry| should be used outside the command resp.~environment and
+% |\captiontext| should be used inside it.
+% See also \Ref{without2}
+% \item The options |skip=| and |margin=| could be used to place the caption onto the image.
+% \end{itemize}
+%
+% \pagebreak[3]
+% \subsection{Using the overpic package}
+% \label{overpic}
+%
+% The same example as in section \Ref{without}, but using the \env{overpic} environment
+% offered by the \pkg{overpic} package~\cite{overpic}
+% to place the captions inside the pictures:
+% \begin{quote}
+% |\usepackage{overpic}|\\
+% \ldots\\
+% |\begin{figure}|\\
+% | \centering|\\
+% | \begin{subcaptiongroup}|\\
+% | |\textcolor{blue}{\cs{subcaptionlistentry}\csmarg{A cat}}\\
+% | \label{cat}|\\
+% | \begin{overpic}[width=60pt]{cat}|\\
+% | \put(40,34){|\textcolor{blue}{\cs{captiontext*}\csmarg{}}|}|\\
+% | \end{overpic}|\\
+% | |\textcolor{blue}{\cs{subcaptionlistentry}\csmarg{An elephant}}\\
+% | \label{elephant}|\\
+% | \begin{overpic}[width=140pt]{elephant}|\\
+% | \put(58,40){|\textcolor{blue}{\cs{captiontext*}\csmarg{}}|}|\\
+% | \end{overpic}|\\
+% | \end{subcaptiongroup}|\\
+% | \captionsetup{subrefformat=parens}|\\
+% | \caption{Two animals: \subref{cat} a huge cat,|\\
+% | and \subref{elephant} an elephant}|\\
+% |\end{figure}|
+% \end{quote}
+% \noindent\begin{minipage}{\linewidth}
+% \captionsetup{type=figure}
+% \centering
+% \begin{subcaptiongroup}
+% \subcaptionlistentry{A cat}\label{cat7.1}
+% \begin{overpic}[width=60pt]{cat}
+% \put(40,34){\captiontext*{}}
+% \end{overpic}
+% \subcaptionlistentry{An elephant}\label{elephant7.1}
+% \begin{overpic}[width=140pt]{elephant}
+% \put(58,40){\captiontext*{}}
+% \end{overpic}
+% \end{subcaptiongroup}
+% \captionsetup{subrefformat=parens}
+% \caption{Two animals: \subref{cat7.1} a huge cat, and \subref{elephant7.1} an elephant}
+% \end{minipage}
+%
+% \bigskip
+%
+% If neither a reference to the sub-figures nor an entry in the List of Figures is needed,
+% the usage of |\phantom|\-|caption| resp.~|\caption|\-|list|\-|entry| could be dropped.
+% Since this leaves |\caption|\-|text| without a valid sub-figure number value it must be
+% given to it explicitly as optional argument.
+%
+% Furthermore the usage of the |sub|\-|caption|\-|group| environment could be dropped here,
+% instead it would be sufficient to replace |\caption|\-|text| with |\sub|\-|caption|\-|text|.
+% \See{\Ref{subcaption}}
+%
+% \begin{quote}
+% |\usepackage{overpic}|\\
+% \ldots\\
+% |\begin{figure}|\\
+% | \centering|\\
+% | \begin{overpic}[width=60pt]{cat}|\\
+% | \put(40,34){|\textcolor{blue}{\cs{subcaptiontext*}\csoarg{1}\csmarg{}}|}|\\
+% | \end{overpic}|\\
+% | \begin{overpic}[width=140pt]{elephant}|\\
+% | \put(58,40){|\textcolor{blue}{\cs{subcaptiontext*}\csoarg{2}\csmarg{}}|}|\\
+% | \end{overpic}|\\
+% | \caption{Two animals: A huge cat and an elephant}|\\
+% |\end{figure}|
+% \end{quote}
+%
+% \pagebreak[3]
+% \subsection{Using the stackengine package}
+% \label{stackengine}
+%
+% The same example as in section \Ref{without}, but using the |\stack|\-|inset| command
+% offered by the \pkg{stackengine} package~\cite{stackengine}
+% to place the captions inside the pictures:
+% \begin{quote}
+% |\usepackage{stackengine}|\\
+% \ldots\\
+% |\begin{figure}|\\
+% | \centering|\\
+% | \begin{subcaptiongroup}|\\
+% | |\textcolor{blue}{\cs{subcaptionlistentry}\csmarg{A cat}}\\
+% | \label{cat}|\\
+% | \stackinset{l}{25pt}{b}{20pt}{|\textcolor{blue}{\cs{captiontext*}\csmarg{}}|}|\\
+% | {\includegraphics[width=60pt]{cat}}|\\
+% | |\textcolor{blue}{\cs{subcaptionlistentry}\csmarg{An elephant}}\\
+% | \label{elephant}|\\
+% | \stackinset{l}{80pt}{b}{60pt}{|\textcolor{blue}{\cs{captiontext*}\csmarg{}}|}|\\
+% | {\includegraphics[width=140pt]{elephant}}|\\
+% | \end{subcaptiongroup}|\\
+% | \captionsetup{subrefformat=parens}|\\
+% | \caption{Two animals: \subref{cat} a huge cat,|\\
+% | and \subref{elephant} an elephant}|\\
+% |\end{figure}|
+% \end{quote}
+% \noindent\begin{minipage}{\linewidth}
+% \captionsetup{type=figure}
+% \centering
+% \begin{subcaptiongroup}
+% \subcaptionlistentry{A cat}\label{cat7.2}
+% \stackinset{l}{25pt}{b}{20pt}{\captiontext*{}}{\includegraphics[width=60pt]{cat}}
+% \subcaptionlistentry{An elephant}\label{elephant7.2}
+% \stackinset{l}{80pt}{b}{60pt}{\captiontext*{}}{\includegraphics[width=140pt]{elephant}}
+% \end{subcaptiongroup}
+% \captionsetup{subrefformat=parens}
+% \caption{Two animals: \subref{cat7.2} a huge cat, and \subref{elephant7.2} an elephant}
+% \end{minipage}
+%
+% \bigskip
+%
+% \pagebreak[3]
+% If neither a reference to the sub-figures nor an entry in the List of Figures is needed,
+% this code could be simpified to:
+% \begin{quote}
+% |\usepackage{stackengine}|\\
+% \ldots\\
+% |\begin{figure}|\\
+% | \centering|\\
+% | \stackinset{l}{25pt}{b}{20pt}{|\textcolor{blue}{\cs{subcaptiontext*}\csoarg{1}\csmarg{}}|}|\\
+% | {\includegraphics[width=60pt]{cat}}|\\
+% | \stackinset{l}{80pt}{b}{60pt}{|\textcolor{blue}{\cs{subcaptiontext*}\csoarg{2}\csmarg{}}|}|\\
+% | {\includegraphics[width=140pt]{elephant}}|\\
+% | \caption{Two animals: A huge cat and an elephant}|\\
+% |\end{figure}|
+% \end{quote}
+%
+% \pagebreak[3]
+% \subsection{Using the tikz package}
+% \label{tikz}
+%
+% The same example as in section \Ref{without}, but using the \env{tikzpicture} environment
+% offered by the \pkg{tikz} package~\cite{tikz}
+% to place the captions inside the pictures:
+% \begin{quote}
+% |\usepackage{tikz}|\\
+% \ldots\\
+% |\begin{figure}|\\
+% | \centering|\\
+% | \begin{subcaptiongroup}|\\
+% | |\textcolor{blue}{\cs{subcaptionlistentry}\csmarg{A cat}}\\
+% | \label{cat}|\\
+% | \begin{tikzpicture}|\\
+% | \node (cat) at (0,0)|\\
+% | {\includegraphics[width=60pt]{cat}};|\\
+% | \node at (0.1,-0.1) {|\textcolor{blue}{\cs{captiontext*}\csmarg{}}|};|\\
+% | \end{tikzpicture}|\\
+% | |\textcolor{blue}{\cs{subcaptionlistentry}\csmarg{An elephant}}\\
+% | \label{elephant}|\\
+% | \begin{tikzpicture}|\\
+% | \node (elephant) at (0,0)|\\
+% | {\includegraphics[width=140pt]{elephant}};|\\
+% | \node at (0.5,-0.1) {|\textcolor{blue}{\cs{captiontext*}\csmarg{}}|};|\\
+% | \end{tikzpicture}|\\
+% | \end{subcaptiongroup}|\\
+% | \captionsetup{subrefformat=parens}|\\
+% | \caption{Two animals: \subref{cat} a huge cat,|\\
+% | and \subref{elephant} an elephant}|\\
+% |\end{figure}|
+% \end{quote}
+%
+% \noindent\begin{minipage}{\linewidth}
+% \captionsetup{type=figure}
+% \centering
+% \begin{subcaptiongroup}
+% \subcaptionlistentry{A cat}\label{cat7.3}
+% \begin{tikzpicture}
+% \node (cat) at (0,0) {\includegraphics[width=60pt]{cat}};
+% \node at (0.1,-0.1) {\captiontext*{}};
+% \end{tikzpicture}
+% \subcaptionlistentry{An elephant}\label{elephant7.3}
+% \begin{tikzpicture}
+% \node (cat) at (0,0) {\includegraphics[width=140pt]{elephant}};
+% \node at (0.5,-0.1) {\captiontext*{}};
+% \end{tikzpicture}
+% \end{subcaptiongroup}
+% \captionsetup{subrefformat=parens}
+% \caption{Two animals: \subref{cat7.3} a huge cat, and \subref{elephant7.3} an elephant}
+% \end{minipage}
+%
+% \bigskip
+%
+% \pagebreak[3]
+% If neither a reference to the sub-figures nor an entry in the List of Figures is needed,
+% this code could be simpified to:
+% \begin{quote}
+% |\usepackage{tikz}|\\
+% \ldots\\
+% |\begin{figure}|\\
+% | \centering|\\
+% | \begin{tikzpicture}|\\
+% | \node (cat) at (0,0)|\\
+% | {\includegraphics[width=60pt]{cat}};|\\
+% | \node at (0.1,-0.1) {|\textcolor{blue}{\cs{subcaptiontext*}\csoarg{1}\csmarg{}}|};|\\
+% | \end{tikzpicture}|\\
+% | \begin{tikzpicture}|\\
+% | \node (elephant) at (0,0)|\\
+% | {\includegraphics[width=140pt]{elephant}};|\\
+% | \node at (0.5,-0.1) {|\textcolor{blue}{\cs{subcaptiontext*}\csoarg{2}\csmarg{}}|};|\\
+% | \end{tikzpicture}|\\
+% | \caption{Two animals: A huge cat and an elephant}|\\
+% |\end{figure}|
+% \end{quote}
+%
+% \pagebreak[3]
+% \subsection{Using the skip and margin options}
+% For a particular sub-caption the |skip=|\ldots could be set to a negative value so it will overlap with the image.
+% Combined with |singlelinecheck=off| (to switch off the centering of short captions) and |margin=|\ldots it could be placed
+% at a specific horizontal position within the image, too.
+%
+% \pagebreak[3]
+% The same example as in section \Ref{without}, but using the |skip=|\ldots and |margin=|\ldots options:
+% \begin{quote}
+% |\begin{figure}|\\
+% | \centering|\\
+% | \captionsetup[subfigure]|\\
+% | {skip=-28pt,slc=off,margin={25pt,0pt}}|\\
+% | \subcaptionbox{\label{cat}}|\\
+% | {\includegraphics[width=60pt]{cat}}|\\
+% | \captionsetup[subfigure]|\\
+% | {skip=-60pt,slc=off,margin={80pt,0pt}}|\\
+% | \subcaptionbox{\label{elephant}}|\\
+% | {\includegraphics[width=140pt]{elephant}}|\\
+% | \captionsetup{subrefformat=parens}|\\
+% | \caption{Two animals: \subref{cat} a huge cat,|\\
+% | and \subref{elephant} an elephant}|\\
+% |\end{figure}|
+% \end{quote}
+%
+% \noindent\begin{minipage}{\linewidth}
+% \captionsetup{type=figure}
+% \centering
+% \captionsetup[subfigure]{skip=-28pt,slc=off,margin={25pt,0pt}}
+% \subcaptionbox{\label{cat7.4}}{\includegraphics[width=60pt]{cat}}
+% \captionsetup[subfigure]{skip=-60pt,slc=off,margin={80pt,0pt}}
+% \subcaptionbox{\label{elephant7.4}}{\includegraphics[width=140pt]{elephant}}
+% \captionsetup{subrefformat=parens}
+% \caption{Two animals: \subref{cat7.4} a huge cat, and \subref{elephant7.4} an elephant}
+% \end{minipage}
+%
+% \iffalse
+% --------------------------------------------------------------------------- %
+% \fi
+%
+% \PageBreak
+% \section{Numbering}
+%
+% \subsection{Pittfall \#1: Using multiple main captions}
+%
+% When multiple main captions are used within a figure or table, and sub-captions
+% are used as well, how does the \pkg{subcaption} package know which
+% sub-captions belong to which caption, i.e. what is the main counter value for
+% the sub-captions?
+%
+% \pagebreak[3]
+% Let's illustrate this problem with an example document:
+% \begin{quote}
+% |\documentclass{article}|\\
+% |\usepackage{graphicx,subcaption}|\\
+% |\begin{document}|\\
+% |\begin{figure}|\\
+% | \centering|\\
+% | \includegraphics[width=4cm]{example-image-c}|\\
+% | \caption{Caption no. 1}|\\
+% | \bigskip|\\
+% | \subcaptionbox|\\
+% | {\label{fig:2a}}|\\
+% | {\includegraphics[width=2cm]{example-image-a}}|\\
+% | \subcaptionbox|\\
+% | {\label{fig:2b}}|\\
+% | {\includegraphics[width=2cm]{example-image-b}}|\\
+% | \caption{Caption no. 2}|\\
+% |\end{figure}|\\
+% |Look at sub-figures \ref{fig:2a} and \ref{fig:2b}.|\\
+% |\end{document}|
+% \end{quote}
+%
+% It's obvious that the sub-captions belong to 2nd caption, and therefore
+% |\ref{fig:2a}| will become ``2a'', isn't it?
+% But since the \pkg{subcaption} package is only involved when using
+% \LaTeX\ commands either defined or patched by the \pkg{caption} or
+% \pkg{subcaption} package, this is what the \pkg{caption} package
+% is aware of:
+% \begin{quote}
+% |\usepackage{subcaption}|\\
+% |\begin{document}|\\
+% |\begin{figure}|\\
+% | \caption{Caption no. 1}|\\
+% | \subcaptionbox|\\
+% | {\label{fig:2a}}|\\
+% | {|\meta{unknown content}|}|\\
+% | \subcaptionbox|\\
+% | {\label{fig:2b}}|\\
+% | {|\meta{unknown content}|}|\\
+% | \caption{Caption no. 2}|\\
+% |\end{figure}|\\
+% |\end{document}|
+% \end{quote}
+%
+% So from \pkg{caption}s point of view it's not easy to decide if the
+% sub-captions belong to the 1st or 2nd main caption since they are placed
+% between them. (Note: The \pkg{subcaption} package is only offering
+% an user interface to the sub-caption feature of the \pkg{caption} package,
+% and therefore this decision is the responsibility of the \pkg{caption} package.)
+%
+% But how does the \pkg{caption} package makes a decision?
+% If in doubt, it rather clings to the past than to the future, i.e.~in this
+% case it decides that the sub-captions belong to the 1st caption and therefore
+% the result of |\ref{fig:2a}| is not ``2a'' but ``1a''.
+% If the \pkg{caption} package is unsure about its decision (like in this
+% case), a warning will be issued:
+% \begingroup
+% \leftmargini=12pt
+% \begin{quote}
+% |Package caption Warning: Ambiguous sub-caption(s),|\\
+% | use \nextfloat on input line 15.|\\
+% |See the caption package documentation for explanation.|
+% \end{quote}
+% \endgroup
+%
+% \pagebreak[3]
+% How to fix it? Use |\next|\-|float| to tell the \pkg{caption} package
+% where the 2nd figure within the |figure| environment starts:
+% \begin{quote}
+% |\documentclass{article}|\\
+% |\usepackage{graphicx,subcaption}|\\
+% |\begin{document}|\\
+% |\begin{figure}|\\
+% | \centering|\\
+% | \includegraphics[width=4cm]{example-image-c}|\\
+% | \caption{Caption no. 1}|\\
+% | \bigskip|\\
+% ||\textcolor{blue}{\cs{nextfloat}}\\
+% | \subcaptionbox|\\
+% | {\label{fig:2a}}|\\
+% | {\includegraphics[width=2cm]{example-image-a}}|\\
+% | \subcaptionbox|\\
+% | {\label{fig:2b}}|\\
+% | {\includegraphics[width=2cm]{example-image-b}}|\\
+% | \caption{Caption no. 2}|\\
+% |\end{figure}|\\
+% |Look at sub-figures \ref{fig:2a} and \ref{fig:2b}.|\\
+% |\end{document}|
+% \end{quote}
+%
+% \INFO
+% Note that the |\next|\-|float| command was introduced in \pkg{caption} package
+% \version{3.6}.
+% Previous versions of the \pkg{caption} package have bound the decision to the
+% |position=| setting of the floating environment instead, i.e.~sub-captions belonged to
+% the caption above if |position=top| was set and they belonged to the caption below
+% if |position=below| was set.
+% While this would be beneficial in this case, there were several cases were it was not
+% and especially it was not always comprehensible to the user why his references got an
+% incorrect numbering.
+%
+% Furthermore the new decision algorithm always succeeds if there is only one caption
+% within the figure or table (which is the case most of the time) while the old one did not.
+%
+% \pagebreak[3]
+% If you still prefer the old decision algorithm (for example because you want to process
+% an already existing document), you need to specify the \pkg{caption} package version
+% explicitly, for example:
+% \begin{quote}
+% |\documentclass{article}|\\
+% |\usepackage{caption}[=v3.5]|\\
+% |\usepackage{graphicx,subcaption}|\\
+% \ldots
+% \end{quote}
+%
+% See also: \Ref{sec:caption}
+%
+% \subsection{Pittfall \#2: Expecting \cs{caption} to increment the counter}
+%
+% \pagebreak[3]
+% Usually |\caption| increments the figure resp.~table counter and therefore
+% it is usally safe to assume that the counter was not incremented yet in code
+% used before |\caption|:
+% \begin{quote}
+% |\documentclass{article}|\\
+% |\begin{document}|\\
+% |\begin{figure}|\\
+% | Figure counter before caption: \thefigure|\\
+% | \caption{Some text}|\\
+% | Figure counter after caption: \thefigure|\\
+% |\end{figure}|\\
+% |\end{document}|
+% \end{quote}
+%
+% Unsurprisingly the results are 0 and 1 for the counter values.
+%
+% \pagebreak[3]
+% But this happens if we use the \pkg{subcaption} package:
+% \begin{quote}
+% |\documentclass{article}|\\
+% |\usepackage{subcaption}|\\
+% |\begin{document}|\\
+% |\begin{figure}|\\
+% | \subcaptionbox{}{some content}|\\
+% | \subcaptionbox{}{some content}|\\
+% | Figure counter before caption: \thefigure|\\
+% | \caption{Some text}|\\
+% | Figure counter after caption: \thefigure|\\
+% |\end{figure}|\\
+% |\end{document}|
+% \end{quote}
+%
+% Here the results are 1 and 1 for the counter values. Why?
+%
+% Since the \pkg{caption} package assumes that there will be a |\caption|
+% following |\sub|\-|caption|\-|box| it decides that the sub-captions belong
+% to the upcoming main caption and therefore share the same main counter value
+% which needs to be incremented before its use.
+% Therefore the first |\sub|\-|caption|\-|box| in the figure increments the
+% figure counter while the second one and especially the |\caption| does not.
+%
+% Usually this is no problem at all but keep this in mind if you are doing
+% tricky stuff with the figure resp.~table counter within figures resp.~tables.
+%
+% \iffalse
+% --------------------------------------------------------------------------- %
+% \fi
+%
+% \PageBreak
+% \section{Abbreviatory commands}
+% \label{subcaption}
+%
+% \DescribeMacro\subcaption
+% \DescribeMacro\phantomsubcaption
+% \DescribeMacro\subcaptionlistentry
+% \DescribeMacro\subcaptiontext
+% \hskip1pt %^^A work-around for bug in \DescribeMacro to prevent red colored margin note
+% As we have seen in sections {\Ref{overpic}, \Ref{stackengine}, and \Ref{tikz}}
+% it's sometimes inconvenient to use the commands and environments
+% described so far.
+%
+% \pagebreak[3]
+% For example it would be inconvenient to use \env{captiongroup} just for
+% a single |\caption|\-|text| in this particular case:
+% \begin{quote}
+% \ldots\\
+% |\begin{overpic}[width=60pt]{cat}|\\
+% | \put(40,34)|\\
+% | {\begin{captiongroup*}|\\
+% | \captiontext*[1]{}|\\
+% | \end{captiongroup*}}|\\
+% |\end{overpic}|\\
+% \ldots
+% \end{quote}
+%
+% \pagebreak[3]
+% Since |\caption|\-|text| is already used in an extra environment (|overpic|)
+% we don't need an extra |caption|\-|group*| here,
+% instead using |\set|\-|caption|\-|sub|\-|type*| (which switches into the
+% sub-caption mode without making an \pkg{hyperref} anchor) would be sufficient:
+% \begin{quote}
+% \ldots\\
+% |\begin{overpic}[width=60pt]{cat}|\\
+% | \put(40,34)|\\
+% | {\setcaptionsubtype*|\\
+% | \captiontext*[1]{}}|\\
+% |\end{overpic}|\\
+% \ldots
+% \end{quote}
+%
+% \pagebreak[3]
+% But this is still inconvenient when used many times, and therefore \thispackage\ defines
+% several extra commands which are prefixed with |\set|\-|caption|\-|sub|\-|type*|:
+%
+% \medskip
+%
+% \begin{minipage}{\textwidth}
+% \centering
+% \begin{tabular}{l|l|l}
+% Regular command & with \cs{setcaptionsubtype*} & available since \\
+% \hline
+% |\caption| & |\subcaption| & \version{1.0} \\
+% |\phantomcaption| & |\phantomsubcaption| & \version{1.1} \\
+% |\captionlistentry| & |\subcaptionlistentry| & \version{1.5} \\
+% |\captiontext| & |\subcaptiontext| & \version{1.5} \\
+% \end{tabular}
+% \end{minipage}
+%
+% \bigskip
%
% \pagebreak[3]
+% This way our code snipped above could be simplified to:
+% \begin{quote}
+% \ldots\\
+% |\begin{overpic}[width=60pt]{cat}|\\
+% | \put(40,34){\subcaptiontext*[1]{}}|\\
+% |\end{overpic}|\\
+% \ldots
+% \end{quote}
+%
+% \INFO
+% Since |\set|\-|caption|\-|sub|\-|type| should only be used within an
+% extra group or environment, the same applies to these commands as well.
+% (In this case |\sub|\-|caption|\-|text| is encapsulated by the
+% |overpic| environment, so we are ok here.
+%
+% \begin{background}
+% The |\sub|\-|caption| command is just a simple combination of
+% |\set|\-|caption|\-|sub|\-|type*| and |\caption|. Same for all other
+% abbreviatory commands here.
+% \end{background}
+%
+% \iffalse
+% --------------------------------------------------------------------------- %
+% \fi
+%
+% \PageBreak
% \section{The \cs{subfloat} command}
% \label{subfloat}
%
% \DescribeMacro\subfloat
-% \NEWfeature{v1.3}
-% To allow a smoother transition from the \package{subfig} package
-% (which is unmaintained for over 14 years)
+% \NEWfeature*{v1.3}
+% To allow a smoother transition from the \pkg{subfig} package~\cite{subfig}
+% (which is unmaintained for over 16 years)
% this package also offers |\sub|\-|float| with the same syntax:
% \begin{quote}
% |\subfloat|\oarg{list\_entry}\oarg{sub-caption}\marg{body}
@@ -797,24 +1566,55 @@
% --------------------------------------------------------------------------- %
% \fi
%
+% \section{Required packages}
+% \label{sec:caption}
+%
+% \NEWfeature{v1.4}
+% Starting with version $1.4$ the \pkg{subcaption} package requires at least version $3.1$
+% of the \pkg{caption} package and loads it automatically.
+% (Older versions of the \pkg{subcaption} package have required exactly the version of the
+% \pkg{caption} package which was released with it.)
+%
% \pagebreak[3]
+% If you need to use a specific version of the \pkg{caption} package you need to load it
+% \emph{before} the \pkg{subcaption} package, e.g.:
+% \begin{quote}
+% |\usepackage[| \ldots |]{caption}[=v3.5]|\\
+% |\usepackage[| \ldots |]{subcaption}|
+% \end{quote}
+%
+% \pagebreak[3]
+% Note that there are limitations if an older version of the \pkg{caption} package
+% is used:
+% \begin{itemize}
+% \item The |\phantomsubcaption| command need at least \pkg{caption} \version{3.2}.
+% \item The |\subcaptionlistentry| command need at least \pkg{caption} \version{3.3}.
+% \item The |\subcaptiontext| command need at least \pkg{caption} \version{3.6}.
+% \item The |\subfloat| emulation needs at least \pkg{caption} \version{3.4}.
+% \end{itemize}
+%
+% \iffalse
+% --------------------------------------------------------------------------- %
+% \fi
+%
+% \PageBreak
% \section{Beyond this package}
% \label{keyfloat}\label{floatrow}
%
% For a more advanced usage of the sub-caption feature of the
-% \package{caption} package, please take a look at the excellent
-% \package{keyfloat} package\cite{keyfloat} which provides the environments
+% \pkg{caption} package, please take a look at the excellent
+% \pkg{keyfloat} package\cite{keyfloat} which provides the environments
% |key|\-|sub|\-|figs|, |key|\-|sub|\-|tabs|, and |key|\-|sub|\-|floats| for
% typesetting sub-figures and sub-tables.
%
-% Furthermore the \package{floatrow} package\cite{floatrow} provides the
+% Furthermore the \pkg{floatrow} package\cite{floatrow} provides the
% |sub|\-|float|\-|row| environment for typesetting sub-figures.
%
% \iffalse
% --------------------------------------------------------------------------- %
% \fi
%
-% \pagebreak[3]
+% \PageBreak
% \section{Thanks}
%
% I would like to thank
@@ -827,37 +1627,66 @@
%
% \StopEventually{%^^A
% \begin{thebibliography}{9}
+%
% \bibitem{TLC2}
% Frank Mittelbach and Michel Goossens:\\
-% \newblock {\em The {\LaTeX} Companion (2nd.~Ed.)},
+% \newblock {\em The {\LaTeX} Companion (2nd.~Ed.)},\\
% \newblock Addison-Wesley, 2004.
+%
+% \bibitem{caption}
+% Axel Sommerfeldt:\\
+% \href{http://www.ctan.org/pkg/caption}%
+% {\emph{Customizing captions of floating environments}},\\
+% 2022/01/07
+%
% \bibitem{floatrow}
% Olga Lapko:\\
% \href{http://www.ctan.org/pkg/floatrow}%
-% {\emph{The floatrow package documentation}},
+% {\emph{The floatrow package documentation}},\\
% 2007/12/24
+%
% \bibitem{hyperref}
% Sebastian Rahtz \& Heiko Oberdiek:\\
% \href{http://www.ctan.org/pkg/hyperref}%
-% {\emph{Hypertext marks in \LaTeX}},
+% {\emph{Hypertext marks in \LaTeX}},\\
% November 12, 2007
+%
% \bibitem{hypcap}
% Heiko Oberdiek:\\
% \href{http://www.ctan.org/pkg/hypcap}%
-% {\emph{The hypcap package -- Adjusting anchors of captions}},
+% {\emph{The hypcap package -- Adjusting anchors of captions}},\\
% 2007/04/09
+%
% \bibitem{keyfloat}
% Brian Duun:\\
% \href{http://www.ctan.org/pkg/keyfloat}%
-% {\emph{The \LaTeX\ keyfloat Package}},
+% {\emph{The \LaTeX\ keyfloat Package}},\\
% 2019/09/23
-% \iffalse
+%
+% \bibitem{overpic}
+% Rolf Niepraschk:\\
+% \href{http://www.ctan.org/pkg/overpic}%
+% {\emph{The overpic package}},\\
+% 2020/02/22
+%
+% \bibitem{stackengine}
+% Steven B. Segletes:\\
+% \href{http://www.ctan.org/pkg/stackengine}%
+% {\emph{The stackengine Package}},\\
+% July 22, 2021
+%
+% \bibitem{tikz}
+% Till Tantau:\\
+% \href{http://www.ctan.org/pkg/tikz}%
+% {\emph{The TikZ and PGF Packages}},\\
+% May 15, 2021
+%
% \bibitem{subfig}
% Steven D. Cochran:\\
% \href{http://www.ctan.org/pkg/subfig}%
-% {\emph{The subfig package}},
+% {\emph{The subfig package}},\\
% 2005/07/05
-% \fi
+%
% \end{thebibliography}
% }
%
@@ -887,6 +1716,7 @@
% \DoNotIndex{\hangindent,\hbox,\hfil,\hsize,\hskip,\hspace,\hss}
% \DoNotIndex{\ifcase,\ifdim,\ifnum,\ifodd,\ifvoid,\ifvmode}
% \DoNotIndex{\ifx,\ignorespaces,\itshape}
+% \DoNotIndex{\kernel@ifnextchar}
% \DoNotIndex{\Large,\large,\leavevmode,\leftmargini,\leftskip,\let,\linewidth}
% \DoNotIndex{\llap,\long,\m@ne,\margin,\mdseries,\message}
% \DoNotIndex{\newcommand,\newdimen,\newlength,\newline,\newif,\newsavebox}
@@ -914,7 +1744,7 @@
% \setlength{\parskip}{0pt plus 1pt}
% \changes{v0.1}{2007/09/01}{First demo}
% \changes{v0.2}{2007/11/11}{\cs{subcaptionbox} added}
-% \changes{v0.3}{2007/12/06}{Adapted to \package{caption} package \version{3.1f}}
+% \changes{v0.3}{2007/12/06}{Adapted to \pkg{caption} package \version{3.1f}}
% \changes{v1.0}{2008/03/16}{\cs{subfloat} added}
% \changes{v1.0}{2010/10/27}{An error message will be issued when the subfigure or subfig package is loaded}
% \changes{v1.0}{2011/01/22}{Undocumented command \cs{subfloat} removed}
@@ -927,23 +1757,51 @@
%
% \clearpage
% \section{The implementation}
+%
% \iffalse
%<*package>
% \fi
%
% \subsection{Identification}
%
+% We need at least \LaTeX2e\ version 1994/12/01.
% \begin{macrocode}
\NeedsTeXFormat{LaTeX2e}[1994/12/01]
-\ProvidesPackage{subcaption}[2020/10/07 v1.3j Sub-captions (AR)]
+% \end{macrocode}
+%
+% Bypass the release declarations in case the \LaTeX\ kernel doesn’t know how to deal with them
+% (as suggested by \url{https://www.latex-project.org/publications/2018-FMi-TUB-tb122mitt-version-rollback.pdf}).
+% \begin{macrocode}
+\providecommand\DeclareRelease[3]{}
+\providecommand\DeclareCurrentRelease[2]{}
+% \end{macrocode}
+%
+% Declare all supported releases.
+% \begin{macrocode}
+\DeclareCurrentRelease{v1}{2007/12/06}
+% \end{macrocode}
+%
+% Identify the current version of the package.
+% \begin{macrocode}
+\ProvidesPackage{subcaption}[2022/01/07 v1.5 Sub-captions (AR)]
+% \end{macrocode}
+%
+% Since we base on the \pkg{caption} package we load it here.
+% \begin{macrocode}
+\RequirePackage{caption}[2010/01/09] % we need at least v3.1m
% \end{macrocode}
%
% \subsection{Initial code}
%
-% Since we base on the \package{caption} package we load it here.
+% \begin{macro}{\subcaption@Warning}
+% \changes{v1.5}{2022/01/06}{This macro added}
+% |\subcaption@Warning|\marg{message}\\
+% issues an warning message (with code line indication).
% \begin{macrocode}
-\RequirePackage{caption}[2020/09/28] % needs v3.5c or newer
+\newcommand*\subcaption@Warning{%
+ \PackageWarning{subcaption}}
% \end{macrocode}
+% \end{macro}
%
% \begin{macro}{\subcaption@Error}
% \changes{v1.3h}{2020/09/28}{This macro added}
@@ -953,25 +1811,34 @@
\newcommand*\subcaption@Error[1]{%
\PackageError{subcaption}{#1}{\caption@@eh{subcaption}}}
% \end{macrocode}
+% \begin{macrocode}
+\providecommand*\caption@@eh[1]{%
+ If you do not understand this error, please take a closer look\MessageBreak
+ at the documentation of the `#1' package, especially the\MessageBreak
+ section about errors.\MessageBreak\@ehc}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\subcaption@OutsideFloat}
+% \changes{v1.5}{2022/01/07}{This macro definition added}
+% |\subcaption@OutsideFloat}| issues a ``\meta{command} outside float'' error.
+% \begin{macrocode}
+\newcommand*\subcaption@OutsideFloat[1]{%
+ \subcaption@Error{\string#1 outside float}}
+% \end{macrocode}
% \end{macro}
%
% \begin{macro}{\subcaption@CheckCompatibility}
% \changes{v1.1}{2011/09/01}{Compatibility error added}
-% \changes{v1.1}{2016/05/22}{The presence of \package{subfigure} or \package{subfig} will be checked \cs{AtBeginDocument}, too}
-% \changes{v1.3g}{2020/08/01}{Error text adapted to \package{caption} package~\version{4.0}}
+% \changes{v1.1}{2016/05/22}{The presence of \pkg{subfigure} or \pkg{subfig} will be checked \cs{AtBeginDocument}, too}
+% \changes{v1.3g}{2020/08/01}{Error text adapted to \pkg{caption} package~\version{4.0}}
+% \changes{v1.4}{2020/12/22}{Adapted to fallback concept}
% Since we are incompatible to them an error message will be issued when
-% the \package{subfigure} or \package{subfig} package is loaded.
+% the \pkg{subfigure} or \pkg{subfig} package is loaded.
% \begin{macrocode}
\newcommand*\subcaption@CheckCompatibility{%
% \end{macrocode}
% \begin{macrocode}
- \caption@ifcompatibility{%
- \subcaption@Error
- {This package does not work with\MessageBreak
- caption option `compatibility=v1'}%
- \endinput}{}%
-% \end{macrocode}
-% \begin{macrocode}
\@ifpackageloaded{subfigure}{%
\subcaption@Error
{This package can't be used in cooperation\MessageBreak
@@ -998,87 +1865,71 @@
%
% \subsection{Main code}
%
-% \pagebreak[3]
-% \subsubsection{The \cs{subcaption} command}
-%
-% \begin{macro}{\subcaption}
-% \changes{v1.1}{2012/04/06}{\cs{newcommand} changed to \cs{def} so it works with the \package{memoir} document class, too}
-% \changes{v1.3h}{2020/09/28}{Usage of \cs{caption@Error} replaced by \cs{subcaption@Error}}
-% Without a prefacing |\set|\-|caption|\-|sub|\-|type|, |\sub|\-|caption| is some kind
-% of |\caption|\-|of{sub|\-|\@cap|\-|type}|.
-% \Note{Like \cs{captionof}, this command is designed to be used inside an
-% own group!}
+% \begin{macro}{\setcaptionsubtype}
+% \changes{v1.4}{2020/12/24}{This macro definition added}
+% \changes{v1.5}{2022/01/07}{Check added if used inside a floating environment}
+% |\setcaptionsubtype| is available since \pkg{caption} package \version{3.2},
+% so we need to define it first if only an older version is loaded (in fallback mode).
% \begin{macrocode}
-\def\subcaption{%
+\providecommand\setcaptionsubtype{%
\caption@iftype
- {\setcaptionsubtype*\caption}%
- {\subcaption@Error{\noexpand\subcaption outside float}%
- \caption@gobble}}%
-% \end{macrocode}
-% But with a prefacing |\set|\-|caption|\-|sub|\-|type|, |\sub|\-|caption| is simply
-% |\caption|.
-% \begin{macrocode}
-\g@addto@macro\caption@subtypehook{%
- \let\subcaption\caption}
+ {\@ifstar{\captionsetup{subtype*}}{\captionsetup{subtype}}}%
+ {\subcaption@OutsideFloat\setcaptionsubtype}}
% \end{macrocode}
% \end{macro}
%
-% \pagebreak[3]
-% \subsubsection{The \cs{phantomsubcaption} command}
+% \subsubsection{The \env{subcaptiongroup} environment}
%
-% \begin{macro}{\phantomsubcaption}
-% \changes{v1.1}{2011/08/17}{This macro added}
-% \changes{v1.3h}{2020/09/28}{Usage of \cs{caption@Error} replaced by \cs{subcaption@Error}}
-% Same as |\phantom|\-|caption|, but for subfigures.
+% \begin{environment}{subcaptiongroup}
+% \changes{v1.5}{2022/01/07}{This environment definition added}
+% \env{subcaptiongroup} is the simplest of all environments or commands this package has to offer.
+% It's simply an environment containing |\set|\-|caption|\-|sub|\-|type|, that's all.
+% A starred variant of this environment is available, too, which uses |\set|\-|caption|\-|sub|\-|type*|.
% \begin{macrocode}
-\newcommand*\phantomsubcaption{%
- \caption@iftype
- {\setcaptionsubtype*\phantomcaption}%
- {\subcaption@Error{\noexpand\phantomsubcaption outside float}}}%
+\newenvironment{subcaptiongroup}
+ {\caption@iftype
+ {\setcaptionsubtype\relax}%
+ {\subcaption@OutsideFloat{subcaptiongroup}}}
+ {}
% \end{macrocode}
% \begin{macrocode}
-\g@addto@macro\caption@subtypehook{%
- \let\phantomsubcaption\phantomcaption}
+\newenvironment{subcaptiongroup*}
+ {\caption@iftype
+ {\setcaptionsubtype*}%
+ {\subcaption@OutsideFloat{subcaptiongroup*}}}
+ {}
% \end{macrocode}
-% \end{macro}
+% \end{environment}
%
-% \pagebreak[3]
-% \subsubsection{The subfigure \& subtable environments}
+% \subsubsection{The \env{subcaptionblock} environment (and aliases)}
%
-% \begin{macro}{subfigure}
-% \begin{macro}{subtable}
+% \begin{macro}{\subcaption@minipage}
% \changes{v1.2}{2016/02/21}{Optional argument values `B' and `T' added}
% \changes{v1.3d}{2020/01/22}{Definition and usage of \cs{@subfloatboxreset} added}
-% \changes{v1.3e}{2020/07/29}{Uses \cs{ForEachCaptionSubType} (instead of \cs{caption@For}) to define the environments now}
-% This is just an ordinary \env{minipage} environment with
-% |\setcaptionsubtype| as first contents line.
-% It will be defined using the helper macro |\For|\-|Each|\-|Caption|\-|Sub|\-|Type|
-% offered by the \package{caption} kernel, so for every caption sub-type
-% declared with |\Declare|\-|Caption|\-|Sub|\-|Type| a corresponding
-% `sub' environment will be defined automatically.
-% \begin{macrocode}
-\ForEachCaptionSubType{%
- \newenvironment{#1}%
- {\@ifnextchar[%]
- \subcaption@iminipage
- {\subcaption@iminipage[c]}}%
- {\subcaption@endminipage
- \endminipage}}
+% \changes{v1.5}{2022/01/07}{This macro definition out-sourced from \cs{subcaption@newminipage}}
+% \changes{v1.5}{2022/01/07}{Usage of \cs{@ifnextchar} replaced by \cs{@testopt}}
+% \changes{v1.5}{2022/01/07}{Default value of \meta{outer-pos} changes from `c' to `b'}
+% This is a \env{minipage} with |\set|\-|caption|\-|sub|\-|type| as first contents line.
+% \begin{macrocode}
+\newcommand*\subcaption@minipage{%
+ \@testopt\subcaption@iminipage b}
% \end{macrocode}
% We pass all other optional arguments using the generic helper macro
-% |\caption@with|\-|opt|\-|args| offered by the \package{caption} kernel).
+% |\caption@with|\-|opt|\-|args| offered by the \pkg{caption} kernel).
% \begin{macrocode}
\def\subcaption@iminipage[#1]{%
- \caption@withoptargs{\subcaption@iiminipage{#1}}}
+% \caption@withoptargs{\subcaption@iiminipage{#1}}} % would need at least caption3 v1.5
+ \def\subcaption@tempa{\subcaption@iiminipage{#1}}%
+ \caption@withoptargs\subcaption@tempa}
% \end{macrocode}
% `B' and `T' will add a |\vspace{0pt}|, all other values (and additional
% optional arguments) will be passed unseen to the |minipage| environment.
% \begin{macrocode}
\newcommand*\subcaption@iiminipage[3]{%
- \let\subcaption@endminipage\@empty
+ \let\subcaption@endminipage@hook\@empty
\if#1B%
\minipage[b]#2{#3}%
- \def\subcaption@endminipage{\vspace{0pt}}%
+ \def\subcaption@endminipage@hook{\vspace{0pt}}%
\else\if#1T%
\minipage[t]#2{#3}%
\vspace{0pt}%
@@ -1089,31 +1940,170 @@
\setcaptionsubtype\relax}
% \end{macrocode}
% \begin{macrocode}
+\newcommand*\subcaption@endminipage{%
+ \subcaption@endminipage@hook
+ \endminipage}
+% \end{macrocode}
+% \begin{macrocode}
\providecommand*\@subfloatboxreset{}
% \end{macrocode}
% \end{macro}
+%
+% \begin{environment}{subcaptionblock}
+% \changes{v1.5}{2022/01/07}{This environment definition added}
+% \env{subcaptionblock} is a \env{minipage} with |\set|\-|caption|\-|sub|\-|type| as first contents line.
+% \begin{macrocode}
+\newenvironment{subcaptionblock}{\subcaption@minipage}{\subcaption@endminipage}
+% \end{macrocode}
+% \end{environment}
+%
+% \begin{macro}{\subcaption@newminipage}
+% \changes{v1.4d}{2022/01/04}{Test of environment name added, should match `sub\cs{@captype}'}
+% \changes{v1.5}{2022/01/06}{Test of environment name revised, results in a warning now instead of an error}
+% \changes{v1.5}{2022/01/07}{This command renamed from \cs{subcaption@newenvironment} to \cs{subcaption@newminipage} and revised}
+% |\subcaption@newminipage|\marg{name of new environment}\\
+% defines a new environment containing |\sub|\-|caption@mini|\-|page| and |\sub|\-|caption@end|\-|mini|\-|page|.
+% Furthermore a test will be included which checks if the environment name matches |sub\@captype|.
+% \begin{macrocode}
+\newcommand*\subcaption@newminipage[1]{%
+ \newenvironment{#1}{\subcaption@minipage@{#1}}{\subcaption@endminipage}}
+% \end{macrocode}
+% \begin{macrocode}
+\newcommand*\subcaption@minipage@[1]{%
+ \caption@iftype
+ {\edef\caption@tempa{#1}%
+ \edef\caption@tempb{sub\@captype}%
+ \ifx\caption@tempa\caption@tempb \else
+ \subcaption@Warning{%
+ `\caption@tempa' is treated as `\caption@tempb'\MessageBreak}%
+ \fi}%
+ {\subcaption@OutsideFloat{#1}}%
+ \subcaption@minipage}
+% \end{macrocode}
% \end{macro}
%
-% \pagebreak[3]
+% \begin{environment}{subfigure}
+% \begin{environment}{subtable}
+% \changes{v1.3e}{2020/07/29}{Uses \cs{ForEachCaptionSubType} (instead of \cs{caption@For}) to define the environments now}
+% The sub-environments will be defined using the helper macro |\For|\-|Each|\-|Caption|\-|Sub|\-|Type|
+% offered by the \pkg{caption} kernel v1.13 (2020/07/29), so for every caption sub-type
+% declared with |\Declare|\-|Caption|\-|Sub|\-|Type| a corresponding `sub' environment will be defined automatically.
+% (If the \pkg{caption} kernel v1.13 is not available we use \cs{caption@For} as fallback.)
+% \begin{macrocode}
+\@ifundefined{ForEachCaptionSubType} % caption3 v1.13
+ {\caption@For{subtypelist}{\subcaption@newminipage{sub#1}}}
+ {\ForEachCaptionSubType{\subcaption@newminipage{#1}}}
+% \end{macrocode}
+% \end{environment}
+% \end{environment}
+%
% \subsubsection{The \cs{subcaptionbox} command}
%
% \begin{macro}{\subcaptionbox}
-% \changes{v1.0}{2008/05/06}{Adapted to the \opt{rule} option of the \package{caption} package}
+% \changes{v1.0}{2008/05/06}{Adapted to the \opt{rule} option of the \pkg{caption} package}
% \changes{v1.0}{2008/08/31}{Definition and usage of \cs{subcaption@hrule} added}
% \changes{v1.0}{2010/12/17}{Uses \cs{caption@box} now}
% \changes{v1.1}{2011/08/16}{Adapted to actual version of \cs{caption@box}}
% \changes{v1.1}{2012/04/09}{Adapted to actual version of \cs{caption@ibox}}
-% A |\parbox| with contents and sub-caption, separated by an invisible |\hrule|.
+% \changes{v1.4}{2020/12/24}{Fallback definition of \cs{caption@ibox} added}
+% A |\parbox| with contents and sub-caption, separated by an invisible |\hrule|.\par
+% The code of this macro was moved to the \pkg{caption} package \version{3.2}
+% (so it could offer it as |\caption|\-|box| as well), so since then it's
+% sufficient to simply use |\caption@ibox| here.\par
+% But if only \pkg{caption} package \version{3.1} is available (since the user
+% decided to use this particular fallback version), we still must define the code
+% on our own.
+% \begin{macrocode}
+\@ifundefined{caption@ibox}{%
+% \end{macrocode}
+% \begin{macrocode}
+ \newcommand*\subcaptionbox{% caption v3.1
+ \def\subcaption@tempa{\caption@ibox\setcaptionsubtype\relax}%
+ \caption@withoptargs\subcaption@tempa}
+% \end{macrocode}
% \begin{macrocode}
-\newcommand*\subcaptionbox{%
- \caption@withoptargs{\caption@ibox\setcaptionsubtype}}
+ \newcommand\caption@ibox[3]{%
+ \kernel@ifnextchar[%]
+ {\caption@iibox{#1}{#2}{#3}}%
+ {\caption@iibox@{#1}{#2}{#3}}}
+% \end{macrocode}
+% \begin{macrocode}
+ \long\def\caption@iibox#1#2#3[#4]{%
+ \@testopt{\caption@iiibox{#1}{#2}{#3}[{#4}]}\captionbox@innerpos@default}
+% \end{macrocode}
+% \begin{macrocode}
+ \long\def\caption@iibox@#1#2#3#4{%
+ \setbox\@tempboxa\hbox{#4}%
+ \caption@iiibox{#1}{#2}{#3}%
+ [\wd\@tempboxa]%
+ [\captionbox@innerpos@default]%
+ {\unhbox\@tempboxa}}
+% \end{macrocode}
+% \begin{macrocode}
+ \long\def\caption@iiibox#1{%
+ \caption@iiiibox{#1}\vbox\vtop}
+% \end{macrocode}
+% \begin{macrocode}
+ \long\def\caption@iiiibox#1#2#3#4#5[#6][#7]#8{%
+ \@ifundefined{caption@hj@#7}%
+ {\subcaption@Error{Undefined justification `#7'}\@gobble}%
+ {\@firstofone}%
+ {\begingroup
+ #1*% set \caption@position so \caption@iftop expands correctly
+ \caption@iftop{%
+ \endgroup
+ \parbox[t]{#6}{%
+ #1\relax
+ \caption@setposition t%
+ #2{\caption#4{#5}}%
+ \captionbox@hrule
+ \csname caption@hj@#7\endcsname
+ #8}%
+ }{%
+ \endgroup
+ \parbox[b]{#6}{%
+ #1\relax
+ \caption@setposition b%
+ \csname caption@hj@#7\endcsname
+ #8%
+ \captionbox@hrule
+ #3{\caption#4{#5}}}%
+ }}}
+% \end{macrocode}
+% \begin{macrocode}
+ \newcommand*\captionbox@innerpos@default{c}
+ \newcommand*\captionbox@hrule{\hrule\@height\z@\relax}
+% \end{macrocode}
+% \begin{macrocode}
+ \providecommand*\caption@hj@c{\centering}
+ \providecommand*\caption@hj@l{\raggedright}
+ \providecommand*\caption@hj@r{\raggedleft}
+ \providecommand*\caption@hj@s{}
+% \end{macrocode}
+% \begin{macrocode}
+}{\@ifundefined{caption@iiibox}{%
+% \end{macrocode}
+% \begin{macrocode}
+ \newcommand*\subcaptionbox{% caption v3.2
+ \def\captionbox@type{subtype}%
+ \let\captionbox@settype\setcaptionsubtype
+ \caption@withoptargs\caption@box}
+% \end{macrocode}
+% \begin{macrocode}
+}{%
+% \end{macrocode}
+% \begin{macrocode}
+ \newcommand*\subcaptionbox{% caption >= v3.3
+ \caption@withoptargs{\caption@ibox\setcaptionsubtype}}
+% \end{macrocode}
+% \begin{macrocode}
+}}
% \end{macrocode}
% \end{macro}
%
-% \pagebreak[3]
% \subsubsection{The \cs{subref} command}
%
-% At |\captionsetup{subtype}|, we redefine |\label|.
+% We redefine |\label| to |\subcaption@label| at |\setcaptionsubtype|.
% \begin{macrocode}
\g@addto@macro\caption@subtypehook{%
\ifx\label\subcaption@label \else
@@ -1123,11 +2113,13 @@
% \end{macrocode}
%
% \begin{macro}{\subcaption@label}
-% \changes{v1.1}{2011/09/12}{Redefinition of \cs{SK@} added}
+% \changes{v1.1}{2011/09/12}{Adapted to the \pkg{showkeys} package}
% \changes{v1.1}{2011/09/12}{Uses \cs{caption@withoptargs} now}
% \changes{v1.1}{2016/02/20}{Unwanted space removed}
+% \changes{v1.4b}{2021/01/08}{Local re-definitions of \cs{@bsphack} and \cs{@esphack} added}
+% \changes{v1.4c}{2021/04/10}{Adaption to the \pkg{showkeys} package out-sourced to \cs{subcaption@prepare@label}}
% When a label will be placed for a sub-caption, we automatically place
-% a second one for |\subref|, too. This second label will contain
+% a second one for |\sub|\-|ref|, too. This second label will contain
% the sub-type counter only.
% \begin{macrocode}
\newcommand*\subcaption@label{%
@@ -1136,14 +2128,41 @@
% \begin{macrocode}
\newcommand*\subcaption@@label[2]{%
\@bsphack\begingroup
+ \let\@bsphack\relax
+ \let\@esphack\relax
+% \end{macrocode}
+% Label |\@currentlabel| by expanding the original |\label| code.
+% \begin{macrocode}
\subcaption@ORI@label#1{#2}%
- \let\SK@\@gobbletwo
+% \end{macrocode}
+% Set |\@currentlabel| to the `sub' counter value and expand the original |\label| code again.
+% (But this time without optional arguments.)
+% \begin{macrocode}
+ \subcaption@prepare@label
\protected@edef\@currentlabel{\csname thesub\@captype\endcsname}%
- \subcaption@ORI@label#1{sub@#2}%
+ \subcaption@ORI@label{sub@#2}%
\endgroup\@esphack}
% \end{macrocode}
% \end{macro}
%
+% \begin{macro}{\subcaption@prepare@label}
+% \changes{v1.4c}{2021/04/10}{This macro added}
+% \changes{v1.4c}{2021/04/10}{Adapted to the \pkg{showlabels} package}
+% \begin{macrocode}
+\newcommand*\subcaption@prepare@label{%
+% \end{macrocode}
+% Adaption to the \pkg{showkeys} package: Hide the `sub' label from it.
+% \begin{macrocode}
+ \let\SK@\@gobbletwo
+% \end{macrocode}
+% Adaption to the \pkg{showlabels} package: Hide the `sub' label from it
+% by expanding to the original definition saved to |\SL@orig#1|
+% (with |#1| $=$ |\SL@orig|\-|label|, \ldots).
+% \begin{macrocode}
+ \def\SL@showlabels##1{\@nameuse{SL@orig##1}}}
+% \end{macrocode}
+% \end{macro}
+%
% \begin{macro}{\subref}
% \changes{v1.1}{2011/08/14}{Caption option \opt{subrefformat=} added}
% \changes{v1.1}{2011/08/18}{Uses \cs{caption@setoptions*} now}
@@ -1157,7 +2176,7 @@
{\caption@withoptargs\subcaption@ref*}%
{\caption@withoptargs\@subref}}
\newcommand*\@subref[2]{%
- \caption@ifundefined\hyperref
+ \@ifundefined{hyperref}%
{\subcaption@ref{#1}{#2}}%
{\hyperref[{#2}]{\subcaption@ref{*#1}{#2}}}}
% \end{macrocode}
@@ -1178,21 +2197,24 @@
% \end{macrocode}
%
% \begin{macro}{\subcaption@setrefformat}
-% \changes{v1.3g}{2020/07/27}{Adapted to \package{caption3} v2.0}
+% \changes{v1.3g}{2020/07/27}{Adapted to \pkg{caption3} v2.0}
% \changes{v1.3h}{2020/09/28}{Usage of \cs{caption@Error} replaced by \cs{subcaption@Error}}
% \changes{v1.3j}{2020/10/07}{Definition of the label formats \texttt{subsimple} and \texttt{subparens} added}
+% \changes{v1.4}{2020/12/24}{Adapted to older versions of the caption package (fallback)}
% |\subcaption@setrefformat|\marg{name}\par
% Selecting a subref format simply means saving the code (in |\subcaption@reffmt|).
% \begin{macrocode}
\newcommand*\subcaption@setrefformat[1]{%
- \@ifundefined{caption@labelformat@#1}%
- {\subcaption@Error{Undefined label format `#1'}}%
+ \@ifundefined{caption@labelformat@#1}% caption3 v2.x
+ {\@ifundefined{caption@lfmt@#1}% caption3 v1.x
+ {\subcaption@Error{Undefined label format `#1'}}%
+ {\expandafter\let\expandafter\subcaption@reffmt\csname caption@lfmt@#1\endcsname}}%
{\expandafter\let\expandafter\subcaption@reffmt\csname caption@labelformat@#1\endcsname}}
% \end{macrocode}
% \begin{macrocode}
\subcaption@setrefformat{simple}
% \end{macrocode}
-% To offer a smooth transition from the \package{subfig} to the \package{subcaption} package
+% To offer a smooth transition from the \pkg{subfig} to the \pkg{subcaption} package
% we offer the options |sub|\-|ref|\-|format=sub|\-|simple| and |sub|\-|ref|\-|format=sub|\-|parens|, too.
% \begin{macrocode}
\DeclareCaptionLabelFormat{subsimple}{#2}
@@ -1202,50 +2224,154 @@
%
% \subsection{Execution of options}
%
-% \changes{v1.1}{2018/05/01}{Option \texttt{font+=smaller} changed to \texttt{size=smaller}}
-% \changes{v1.3e}{2020/07/27}{Option \texttt{size=smaller} changed back to \texttt{font+=smaller}}
+% \changes{v1.1}{2018/05/01}{Option \texttt{font+=small} changed to \texttt{font+=smaller}} \changenote{released 2018/05/02}
+% \changes{v1.2}{2018/05/13}{Option \texttt{font+=smaller} changed to \texttt{size=smaller}} \changenote{merged from former SVN/trunk 2019/03/16, released 2019/08/18}
+% \changes{v1.3e}{2020/07/27}{Option \texttt{size=smaller} changed back to \texttt{font+=smaller}} \changenote{merged from feature/documentclass 2020/07/29, released 2020/08/30}
% We use |\caption@Execute|\-|Options| and |\caption@Process|\-|Options| here to add
% the options to the `|sub|' option list instead of executing them immediately.
% \begin{macrocode}
-\caption@SetupOptions{subcaption}{\captionsetup[sub]{#2}}%
-\caption@ExecuteOptions{subcaption}{%
- font+=smaller,labelformat=parens,labelsep=space,skip=6pt,list=0,hypcap=0}
+\let\caption@setkeys@ORI\caption@setkeys
+\@ifundefined{caption@SetupOptions} % caption3 v1.3
+ {\renewcommand\caption@setkeys[2]{\captionsetup[sub]{#2}}}
+ {\caption@SetupOptions{subcaption}{\captionsetup[sub]{#2}}}
+% \end{macrocode}
+% \begin{macrocode}
+\@ifundefined{caption@smaller} % caption3 v1.7-169
+ {\caption@ExecuteOptions{subcaption}{%
+ font+=small,labelformat=parens,labelsep=space,skip=6pt,list=0,hypcap=0}}
+ {\caption@ExecuteOptions{subcaption}{%
+ font+=smaller,labelformat=parens,labelsep=space,skip=6pt,list=0,hypcap=0}}
+% \end{macrocode}
+% \begin{macrocode}
\caption@ProcessOptions*{subcaption}
% \end{macrocode}
+% \begin{macrocode}
+\let\caption@setkeys\caption@setkeys@ORI
+\let\caption@setkeys@ORI\@undefined
+% \end{macrocode}
%
-% \changes{v1.1}{2011/10/30}{Adapted to the newfloat package}
-% We call |\Declare|\-|Caption|\-|Sub|\-|Type| for |figure|, |table|,
+% We call |\Declare|\-|Caption|\-|Sub|\-|Type| for |figure| and |table|,
% and each floating environment declared with |\Declare|\-|Floating|\-|Environment| here.
% \begin{macrocode}
-\ForEachCaptionType{\DeclareCaptionSubType{#1}}
+\@ifundefined{ForEachCaptionType} % caption3 v1.13
+ {\@ifundefined{caption@ForEachType} % caption3 v1.4a
+ {\@ifundefined{c@figure}{}{\DeclareCaptionSubType{figure}}%
+ \@ifundefined{c@table}{}{\DeclareCaptionSubType{table}}%
+ \caption@For{typelist}{\DeclareCaptionSubType{#1}}}
+ {\caption@ForEachType{\DeclareCaptionSubType{#1}}}}
+ {\ForEachCaptionType{\DeclareCaptionSubType{#1}}}
% \end{macrocode}
%
% \subsection{Bonus material}
%
+% \subsubsection{The \cs{subcaption}, \cs{phantomsubcaption}, \cs{subcaptionlistentry}, and \cs{subcaptiontext} commands}
+%
+% \begin{macro}{\subcaption@newabbreviation}
+% \changes{v1.5}{2022/01/07}{This macro added}
+% |\subcaption@newabbreviation|\marg{new command}\marg{existing command}\marg{extra code in case of error}\\
+% defines a new command as abbreviation of |\set|\-|caption|\-|sub|\-|type*| plus \meta{command}.
+% (With a prefacing |\set|\-|caption|\-|sub|\-|type|, \meta{new command} is reduced to \meta{command}.
+% Unfortunately we have to do this on our own since using |\set|\-|caption|\-|sub|\-|type| multiple times
+% is not suppressed until \pkg{caption} package \version{3.6}.)
+% \Note{Since \cs{setcaptionsubtype} is used, the new command is designed to be used inside an own group!}
+% \begin{macrocode}
+\newcommand*\subcaption@newabbreviation[3]{%
+% \end{macrocode}
+% \begin{macrocode}
+ \newcommand*{#1}{%
+ \caption@iftype
+ {\setcaptionsubtype*#2}%
+ {\subcaption@OutsideFloat#1#3}}%
+% \end{macrocode}
+% \begin{macrocode}
+ \g@addto@macro\caption@subtypehook{\let#1#2}}% needed for caption < 3.6
+% \end{macrocode}
+% \begin{macrocode}
+\@onlypreamble\subcaption@newabbreviation
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\caption@gobble}
+% \changes{v1.4}{2020/12/24}{This macro added}
+% |\caption@gobble*|\oarg{arg}\oarg{\ldots}\marg{arg}\\
+% is similar to |\@gobble| but gobbles a star and optional arguments as well.
+% \begin{macrocode}
+\@ifundefined{caption@gobble}{%
+ \DeclareRobustCommand*\caption@gobble{% caption3 < v1.4
+ \caption@withoptargs\@gobbletwo}%
+}{}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\subcaption}
+% \changes{v1.1}{2012/04/06}{Overwrites the definition defined by the \pkg{memoir} document class}
+% |\subcaption| is an abbreviation of |\set|\-|caption|\-|sub|\-|type*| plus |\caption|.
+% \begin{macrocode}
+\@ifclassloaded{memoir}{\let\subcaption\undefined}{}
+\subcaption@newabbreviation\subcaption\caption\caption@gobble
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\phantomsubcaption}
+% \changes{v1.1}{2011/08/17}{This macro added}
+% \changes{v1.3h}{2020/09/28}{Usage of \cs{caption@Error} replaced by \cs{subcaption@Error}}
+% |\phantom|\-|sub|\-|caption| is an abbreviation of |\set|\-|caption|\-|sub|\-|type*| plus |\phantom|\-|caption|.
+% \Note{This commands needs at least \pkg{caption} package \version{3.2}.}
+% \begin{macrocode}
+\subcaption@newabbreviation\phantomsubcaption\phantomcaption\relax
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\subcaptionlistentry}
+% \changes{v1.5}{2022/01/05}{This macro added}
+% |\sub|\-|caption|\-|list|\-|entry| is an abbreviation of |\set|\-|caption|\-|sub|\-|type*| plus |\caption|\-|list|\-|entry|.
+% \Note{This commands needs at least \pkg{caption} package \version{3.3}.}
+% \begin{macrocode}
+\subcaption@newabbreviation\subcaptionlistentry\captionlistentry\caption@gobble
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\subcaptiontext}
+% \changes{v1.5}{2022/01/05}{This macro added}
+% |\sub|\-|caption|\-|text| is an abbreviation of |\set|\-|caption|\-|sub|\-|type*| plus |\caption|\-|text|.
+% \Note{This commands needs at least \pkg{caption} package \version{3.6}.}
+% \begin{macrocode}
+\subcaption@newabbreviation\subcaptiontext\captiontext\caption@gobble
+% \end{macrocode}
+% \end{macro}
+%
% \subsubsection{The \cs{subfloat} command}
%
% \begin{macro}{\subfloat}
% \changes{v0.4}{2008/03/01}{This macro added}
-% \changes{v1.0c}{2011/01/22}{This macro removed since it's too incompatible with the one from \package{subfig}}
+% \changes{v1.0c}{2011/01/22}{This macro removed since it's too incompatible with the one from \pkg{subfig}}
% \changes{v1.3}{2019/08/31}{This macro re-added and revised}
% \changes{v1.3a}{2019/09/01}{\cs{ignorespaces} copied from \cs{sf@@@subfloat}}
% \changes{v1.3b}{2020/01/03}{Previous definition of \cs{subfloat} will be overwritten}
% \changes{v1.3f}{2020/07/29}{Bugfix: Usage of \cs{caption@hj@default} replaced by \cs{captionbox@innerpos@default}}
% \changes{v1.3i}{2020/09/28}{This macro will be defined with \cs{providecommand} now to preserve an original definition}
+% \changes{v1.4}{2020/12/24}{Usage of \cs{caption@getlabel} replaced by \cs{subcaption@getlabel}}
+% \changes{v1.4a}{2020/12/26}{Clearance of \cs{caption@thelabel} replaced by \cs{subcaption@clrlabel}}
+% \changes{v1.5}{2022/01/07}{Usage of \cs{@ifnextchar} replaced by \cs{kernel@ifnextchar}}
+% \changes{v1.5}{2022/01/07}{Overwrites the definition defined by the \pkg{memoir} document class}
% |\subfloat|\oarg{list\_entry}\oarg{sub-caption}\marg{body}\par
% If \meta{sub-caption} is given, we map this to |\sub|\-|caption|\-|box|
% but transfer the |\label| from \meta{body} to \meta{sub-caption}.
% If not, we do the same as |\sub|\-|caption|\-|box| does, but use |\phantom|\-|caption| instead of |\caption|.
% In both cases we do a |\ignore|\-|spaces| at the end since the original implementation of |\sub|\-|float| does this, too.
% \begin{macrocode}
-\caption@AtBeginDocument{\providecommand*\subfloat{%
- \@ifnextchar[%]
- \subcaption@subfloat
- \subcaption@subfloat@}}
+\@ifclassloaded{memoir}{\let\subfloat\undefined\let\endsubfloat\undefined}{}
+% \end{macrocode}
+% \begin{macrocode}
+\caption@AtBeginDocument{%
+ \providecommand*\subfloat{%
+ \kernel@ifnextchar[%]
+ \subcaption@subfloat
+ \subcaption@subfloat@}}
% \end{macrocode}
% \begin{macrocode}
\long\def\subcaption@subfloat[#1]{%
- \@ifnextchar[%]
+ \kernel@ifnextchar[%]
{\subcaption@@subfloat{#1}}%
{\subcaption@@@subfloat\subcaptionbox{#1}}}
% \end{macrocode}
@@ -1255,9 +2381,9 @@
% \end{macrocode}
% \begin{macrocode}
\long\def\subcaption@@@subfloat#1#2#3{%
- \caption@getlabel{#3}%
+ \subcaption@getlabel{#3}%
#1{#2\caption@thelabel}{\let\label\caption@gobble#3}%
- \global\let\caption@thelabel\relax
+ \subcaption@clrlabel
\ignorespaces}
% \end{macrocode}
% \begin{macrocode}
@@ -1274,6 +2400,60 @@
% \end{macrocode}
% \end{macro}
%
+% \begin{macro}{\subcaption@getlabel}
+% \changes{v1.4}{2020/12/24}{This macro added}
+% |\subcaption@getlabel|\marg{text}\\
+% gets the label command out of the given caption text and stores it to |\caption@the|\-|label|.
+% It uses |\caption@get|\-|label| for this purpose which interface unfortunately has changed over time.
+% (Changing the interface was a bad idea in the first place but now it is as it is).
+% \begin{macrocode}
+\@ifundefined{caption@getlabel}{%
+% \end{macrocode}
+% \begin{macrocode}
+ \newcommand\subcaption@getlabel[1]{% caption3 < v1.7
+ \subcaption@Error{\noexpand\subfloat needs at least caption v3.4}%
+ \let\caption@thelabel\relax}
+% \end{macrocode}
+% \begin{macrocode}
+}{\@ifundefined{caption@@@@getlabel}{%
+% \end{macrocode}
+% \begin{macrocode}
+ \newcommand\subcaption@getlabel[1]{% caption3 >= v1.7
+ \caption@getlabel#1\label{}\@nil}
+% \end{macrocode}
+% \begin{macrocode}
+}{%
+% \end{macrocode}
+% \begin{macrocode}
+ \newcommand*\subcaption@getlabel{% caption3 >= v2.0
+ \caption@getlabel}
+% \end{macrocode}
+% \begin{macrocode}
+}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\subcaption@clrlabel}
+% \changes{v1.4a}{2020/12/26}{This macro added}
+% |\subcaption@clrlabel|\\
+% resets |\caption@the|\-|label| to |\relax|.
+% \begin{macrocode}
+\@ifundefined{caption@clrlabel}{%
+% \end{macrocode}
+% \begin{macrocode}
+ \newcommand*\subcaption@clrlabel{\let\caption@thelabel\relax} % caption3 < v2.3
+% \end{macrocode}
+% \begin{macrocode}
+}{%
+% \end{macrocode}
+% \begin{macrocode}
+ \newcommand*\subcaption@clrlabel{\caption@clrlabel} % caption3 >= v2.3
+% \end{macrocode}
+% \begin{macrocode}
+}
+% \end{macrocode}
+% \end{macro}
+%
% \iffalse
%</package>
% \fi
diff --git a/macros/latex/contrib/caption/subcaption.pdf b/macros/latex/contrib/caption/subcaption.pdf
index 4f31cd934a..745e7ae948 100644
--- a/macros/latex/contrib/caption/subcaption.pdf
+++ b/macros/latex/contrib/caption/subcaption.pdf
Binary files differ
diff --git a/macros/latex/contrib/crefthe/crefthe-doc.pdf b/macros/latex/contrib/crefthe/crefthe-doc.pdf
index 5cf5715d5c..4e1a55b9d5 100644
--- a/macros/latex/contrib/crefthe/crefthe-doc.pdf
+++ b/macros/latex/contrib/crefthe/crefthe-doc.pdf
Binary files differ
diff --git a/macros/latex/contrib/crefthe/crefthe-doc.tex b/macros/latex/contrib/crefthe/crefthe-doc.tex
index 718672f896..04051d0f60 100644
--- a/macros/latex/contrib/crefthe/crefthe-doc.tex
+++ b/macros/latex/contrib/crefthe/crefthe-doc.tex
@@ -89,7 +89,7 @@
\title{\crefthepackage{} - cross referencing with proper definite articles}
\author{Jinwen XU}
-\thanks{Corresponding to: \texttt{\crefthepackage{} 2022/02/10}}
+\thanks{Corresponding to: \texttt{\crefthepackage{} 2022/02/20}}
\date{February 2022, in Paris}
\maketitle
@@ -237,8 +237,8 @@ With the option \texttt{overwrite}, user commands in \textsf{cleveref} will be r
\section{Known issues}
\begin{itemize}
\item \crefthepackage{} currently works for French, Italian, Portuguese (European and Brazilian) and Spanish, certainly more would be added to this list.
- \item The current mechanism does not work for German. The author plans to adopt a more refined approach in later versions in order to support the various situations in German. Meanwhile, you may consider the package \textsf{zref-clever}, which has a much more powerful and sophisticated interface for configure cross referencing.
- \item The names of theorem-like environments are not provided --- for the moment you need to define them all by yourself. However, users are encouraged to use the \ProjLib{} toolkit, which already handles everything for you.
+ \item The current mechanism does not work for German. The author plans to adopt a more refined approach in later versions in order to support the various situations in German. Meanwhile, you may consider the package \textsf{zref-clever}, which has a much more powerful and sophisticated interface for configuring cross referencing.
+ \item The names of theorem-like environments are not provided here, you need to define them by yourself. However, users are encouraged to use the \ProjLib{} toolkit (more specifically, the internal package \textsf{create-theorem}), which already handles everything for you.
\end{itemize}
diff --git a/macros/latex/contrib/crefthe/crefthe.sty b/macros/latex/contrib/crefthe/crefthe.sty
index 27fbe01122..7edf7e1788 100644
--- a/macros/latex/contrib/crefthe/crefthe.sty
+++ b/macros/latex/contrib/crefthe/crefthe.sty
@@ -13,7 +13,7 @@
\RequirePackage{l3keys2e}
\ProvidesExplPackage
{crefthe}
- {2022/02/10} {}
+ {2022/02/20} {}
{Cross referencing with proper definite articles}
\keys_define:nn { crefthe }
@@ -92,26 +92,23 @@
\NewDocumentCommand \crefthename { m O{} m O{} m }
{
- \__crefthe_name_general:nnnnnNN { #1 } { #2 } { #3 } { #4 } { #5 }
- c \crefthe_crefname_original:w
+ \__crefthe_name_general:nnnnnn { #1 } { #2 } { #3 } { #4 } { #5 } { c }
}
\NewDocumentCommand \Crefthename { m O{} m O{} m }
{
- \__crefthe_name_general:nnnnnNN { #1 } { #2 } { #3 } { #4 } { #5 }
- C \crefthe_Crefname_original:w
+ \__crefthe_name_general:nnnnnn { #1 } { #2 } { #3 } { #4 } { #5 } { C }
}
-\cs_new_protected:Npn \__crefthe_name_general:nnnnnNN #1 #2 #3 #4 #5 #6 #7
+\cs_new_protected:Npn \__crefthe_name_general:nnnnnn #1 #2 #3 #4 #5 #6
{
% #6 is c or C
- % #7 is \crefthe_crefname_original:w or \crefthe_Crefname_original:w
\tl_if_blank:nTF { #2 }
{
- #7 { #1 } { #3 } { #5 }
+ \cs:w crefthe_#6refname_original:w \cs_end: { #1 } { #3 } { #5 }
\cs_set:cn { #6ref_#1_format:nnn } { ##2 #3 ~ ##1 ##3 }
\cs_set:cn { #6ref_#1_format_first:nnn } { ##2 #5 ~ ##1 ##3 }
}
{
- #7 { #1 } { \crefthemark { #2 } #3 } { \crefthemark { #4 } #5 }
+ \cs:w crefthe_#6refname_original:w \cs_end: { #1 } { \crefthemark { #2 } #3 } { \crefthemark { #4 } #5 }
\cs_set:cn { #6ref_#1_format:nnn } { \crefthemark { #2 } ##2 #3 ~ ##1 ##3 }
\cs_set:cn { #6ref_#1_format_first:nnn } { \crefthemark { #4 } ##2 #5 ~ ##1 ##3 }
}
@@ -134,7 +131,7 @@
\bool_set_false:N \l__crefthe_uppercase_bool
}
-\prg_generate_conditional_variant:Nnn \str_case_e:nn { nv } { p, T, F, TF }
+\prg_generate_conditional_variant:Nnn \str_case_e:nn { nv } { T, F, TF }
\cs_new:Npn \crefthe_contraction:nn #1#2
{
\exp_args:Ne \__crefthe_contraction:nnn
diff --git a/macros/latex/contrib/fbox/CHANGELOG b/macros/latex/contrib/fbox/CHANGELOG
index 07945b1413..d8eb3919fb 100644
--- a/macros/latex/contrib/fbox/CHANGELOG
+++ b/macros/latex/contrib/fbox/CHANGELOG
@@ -1,3 +1,4 @@
+0.06 2022-02-20 - added individual color option
0.05 2020-06-22 - added optional arguments boxrule and boxsep
0.04 2020-01-03 - added \fparbox[]{}
0.03 2019-11-04 - added star version
diff --git a/macros/latex/contrib/fbox/doc/fbox.pdf b/macros/latex/contrib/fbox/doc/fbox.pdf
index a8a9986a54..e4176b5bad 100644
--- a/macros/latex/contrib/fbox/doc/fbox.pdf
+++ b/macros/latex/contrib/fbox/doc/fbox.pdf
Binary files differ
diff --git a/macros/latex/contrib/fbox/doc/fbox.tex b/macros/latex/contrib/fbox/doc/fbox.tex
index 4cbfc2d36d..fad6aa5004 100644
--- a/macros/latex/contrib/fbox/doc/fbox.tex
+++ b/macros/latex/contrib/fbox/doc/fbox.tex
@@ -1,4 +1,4 @@
-%% $Id: fbox.tex 10 2020-06-22 10:15:39Z herbert $
+%% $Id: fbox.tex 449 2022-02-20 20:50:12Z herbert $
%
\listfiles\setcounter{errorcontextlines}{100}
\documentclass[paper=a4,fontsize=11pt,DIV=13,parskip=half-,
@@ -62,7 +62,7 @@ Equipped with the talking points above, you’re ready to help anyone search and
\def\setVersion#1{\setVVersion#1!!}
\def\setVVersion#1=#2!!{\def\fboxVersion{#2}}
-\setVersion{version = 0.05}%
+\setVersion{version = 0.06}%
\title{Package \texttt{fbox} \\--\\ \normalsize \fboxVersion\ (\today)}
\author{Herbert VoŸ\thanks{\url{hvoss@tug.org}\newline Thanks to Rolf Niepraschk}}
@@ -95,6 +95,10 @@ The optional argument can be
\begin{description}
\item[boxrule] The rule width is predefined to the current value of \Ldim{fboxrule} (0.4pt)
\item[boxsep] The box separation is predefined to the current value of \Ldim{fboxsep} (3pt)
+\item[lcolor] Color for the left line (black)
+\item[tcolor] Color for the top line (black)
+\item[rcolor] Color for the right line (black)
+\item[bcolor] Color for the bottom line (black)
\item[<letters>] Any combination of the letters
l, r, b, and t, or altenatively L, R, B, and T for l)eft, r)right, b)ottom, and t)op
of the frame parts. A missing or an empty argument is the same as the default
@@ -112,12 +116,16 @@ of the frame parts. A missing or an empty argument is the same as the default
\begin{LTXexample}
\fbox[rbt]{foo gar baz}
+\fbox[rbt,boxrule=4pt,rcolor=red,
+ tcolor=green]{foo gar baz}
\fbox[brt]{foo gar baz}
\fbox[bRT]{foo gar baz}
\end{LTXexample}
\begin{LTXexample}
\fbox*[rbt]{foo gar baz}
+\fbox[rbt,boxrule=4pt,rcolor=red,
+ tcolor=green]{foo gar baz}
\fbox*[brt]{foo gar baz}
\fbox*[bRT]{foo gar baz}
\end{LTXexample}
@@ -157,7 +165,7 @@ of the frame parts. A missing or an empty argument is the same as the default
\begin{LTXexample}
-\fbox[Br,boxrule=5pt]{foo gar baz}
+\fbox[Br,boxrule=5pt,bcolor=red]{foo gar baz}
\end{LTXexample}
@@ -167,7 +175,8 @@ of the frame parts. A missing or an empty argument is the same as the default
\begin{LTXexample}
-\fbox*[boxsep=5mm,bT,boxrule=2pt]{foo gar baz}
+\fbox*[boxsep=5mm,bT,tcolor=green,
+ boxrule=2pt]{foo gar baz}
\end{LTXexample}
@@ -182,7 +191,8 @@ of the frame parts. A missing or an empty argument is the same as the default
\begin{LTXexample}
-\fparbox[rbt]{\demoText}
+\fparbox[rbt,bcolor=red,rcolor=blue,
+ tcolor=red]{\demoText}
\fparbox[brt]{\demoText}
\fparbox[bRT]{\demoText}
\end{LTXexample}
@@ -190,7 +200,8 @@ of the frame parts. A missing or an empty argument is the same as the default
\begin{LTXexample}
\fparbox*[rbt]{\demoText}
\fparbox*[brt]{\demoText}
-\fparbox*[bRT]{\demoText}
+\fparbox*[bRT,rcolor=blue,
+ tcolor=green]{\demoText}
\end{LTXexample}
\begin{LTXexample}
@@ -235,7 +246,8 @@ of the frame parts. A missing or an empty argument is the same as the default
\end{LTXexample}
\begin{LTXexample}
-\fparbox*[boxrule=5pt,Br]{\demoText}
+\fparbox*[boxrule=5pt,Br,
+ bcolor=red!40,rcolor=blue!40]{\demoText}
\end{LTXexample}
diff --git a/macros/latex/contrib/fbox/latex/fbox.sty b/macros/latex/contrib/fbox/latex/fbox.sty
index 9c6aa93fd4..b12207a78d 100644
--- a/macros/latex/contrib/fbox/latex/fbox.sty
+++ b/macros/latex/contrib/fbox/latex/fbox.sty
@@ -1,6 +1,6 @@
-%% This is file `fbox.sty',
+%% This is file `fbox.sty'
%%
-%% Copyright (C) 2019, 2020
+%% Copyright (C) 2019, 2022
%% Herbert Voss <hvoss@tug.org>
%%
%% It may be distributed and/or modified under the
@@ -11,18 +11,23 @@
%% and version 1.3c or later is part of all distributions of LaTeX
%% version 2005/12/01 or later.
%
-% $Id: fbox.sty 10 2020-06-22 10:15:39Z herbert $
+% $Id: fbox.sty 449 2022-02-20 20:50:12Z herbert $
%
% -------------------------------------
-\ProvidesPackage{fbox}[2020/06/22 v. 0.05 allow parts of the frame (hv)]
+\ProvidesPackage{fbox}[2022/02/20 v. 0.06 allow parts of the frame (hv)]
%
\RequirePackage{xkeyval}
+\RequirePackage{xcolor}
\newlength\fbox@@rule
\newlength\fbox@@sep
-\define@key{fbox}{boxrule}[3pt]{\setlength\fbox@@rule{#1}}
-\define@key{fbox}{boxsep}[0.4pt]{\setlength\fbox@@sep{#1}}
-\setkeys*{fbox}{boxrule=\fboxrule,boxsep=\fboxsep}
+\define@key{fbox}{boxrule}[0.4pt]{\setlength\fbox@@rule{#1}}
+\define@key{fbox}{boxsep}[3pt]{\setlength\fbox@@sep{#1}}
+\define@key{fbox}{bcolor}[black]{\def\fbox@bcolor{#1}}
+\define@key{fbox}{tcolor}[black]{\def\fbox@tcolor{#1}}
+\define@key{fbox}{lcolor}[black]{\def\fbox@lcolor{#1}}
+\define@key{fbox}{rcolor}[black]{\def\fbox@rcolor{#1}}
+\setkeys*{fbox}{boxrule=\fboxrule,boxsep=\fboxsep,lcolor,rcolor,bcolor,tcolor}
% latex.ltx
%\fboxsep = 3pt
@@ -44,7 +49,7 @@
\def\FBox@i[#1]{%
\def\XKV@rm{}%
\setkeys*{fbox}{boxrule=\fboxrule, boxsep=\fboxsep, #1}%
- \typeout{===>#1: \XKV@rm}%
+% \typeout{===>#1: \XKV@rm}%
\if@fbox@star
\@fbox@space@leftfalse
\@fbox@space@rightfalse
@@ -92,12 +97,12 @@
\vbox{%
\ifnum\the\@tempcntb>8\relax
\advance\@tempcntb by -8
- \hrule\@height\fbox@@rule % top
+ {\color{\fbox@tcolor}\hrule\@height\fbox@@rule}% % top
\fi
\hbox{%
\ifnum\@tempcntb>3
\advance\@tempcntb by -4
- \vrule\@width\fbox@@rule
+ \textcolor{\fbox@lcolor}{\vrule\@width\fbox@@rule}%
\fi % left
#1%
\vbox{%
@@ -105,8 +110,9 @@
\box\@tempboxa
\vskip\fbox@@sep}%
#1%
- \ifnum\@tempcntb>1\vrule\@width\fbox@@rule\fi}% right
- \ifodd\@tempcntb\hrule\@height\fbox@@rule\fi}% bottom
+ \ifnum\@tempcntb>1\textcolor{\fbox@rcolor}{\vrule\@width\fbox@@rule}\fi}% right
+ \ifodd\@tempcntb{\color{\fbox@bcolor}\hrule\@height\fbox@@rule}\fi% bottom
+ }%
}%
}%
}
diff --git a/macros/latex/contrib/flashcards/README b/macros/latex/contrib/flashcards/README
index 038291524e..42b7b9fde2 100644
--- a/macros/latex/contrib/flashcards/README
+++ b/macros/latex/contrib/flashcards/README
@@ -2,11 +2,11 @@
A LaTeX Class for Typesetting Flash Cards.
- v1.0.1
- 30 July 2010
+ v1.0.2
+ 20 February 2022
Alexander M. Budge <ambudge@mit.edu>
-(bug-fixes from v1.0.0 to v1.0.1 by Matthew Vernon <matthew@debian.org>)
+(bug-fixes from v1.0.0 to v1.0.2 by Matthew Vernon <matthew@debian.org>)
----------------------------------------------------------------------
DESCRIPTION
diff --git a/macros/latex/contrib/flashcards/flashcards.dtx b/macros/latex/contrib/flashcards/flashcards.dtx
index 307c2694dd..9ef0e00c3e 100644
--- a/macros/latex/contrib/flashcards/flashcards.dtx
+++ b/macros/latex/contrib/flashcards/flashcards.dtx
@@ -19,8 +19,8 @@
%
%<*driver>
\def\filename{flashcards.dtx}
-\def\fileversion{1.0.1}
-\def\filedate{13 August 2010}
+\def\fileversion{1.0.2}
+\def\filedate{20 February 2022}
\def\docdate{16 March 2000}
%</driver>
%
@@ -42,7 +42,7 @@
%%
%
%<flashcards|sample|avery5371|avery5388>\NeedsTeXFormat{LaTeX2e}[1996/12/01]
-%<flashcards>\ProvidesClass{flashcards}[2010/08/13 1.0.1 (matthew@debian.org)]
+%<flashcards>\ProvidesClass{flashcards}[2022/02/20 1.0.2 (matthew@debian.org)]
%<sample>\ProvidesFile{samplecards.tex}
%<avery5371>\ProvidesFile{avery5371.cfg}
%<avery5388>\ProvidesFile{avery5388.cfg}
@@ -66,6 +66,7 @@
%
% \MakeShortVerb{\|}
%
+% \changes{v1.0.2}{20 February 2022}{Bug-fix Release.}
% \changes{v1.0.1}{13 August 2010}{Bug-fix Release.}
% \changes{v1.0.0}{16 March 2000}{Full Release.}
% \changes{v0.1.1}{14 March 2000}{Second Pre-release.}
@@ -524,7 +525,7 @@
}
%
\newcommand{\flashcards@ps@back@begin@empty}{\flashcards@format@back}
-\newcommand{\flashcards@ps@back@end@emtpy}{}
+\newcommand{\flashcards@ps@back@end@empty}{}
\newcommand{\flashcards@ps@back@begin@plain}
{\vspace*{\fill}\center\flashcards@format@back}
\newcommand{\flashcards@ps@back@end@plain}{\vspace*{\fill}}
diff --git a/macros/latex/contrib/flashcards/flashcards.ins b/macros/latex/contrib/flashcards/flashcards.ins
index d850494d0a..98a4fe4ae8 100644
--- a/macros/latex/contrib/flashcards/flashcards.ins
+++ b/macros/latex/contrib/flashcards/flashcards.ins
@@ -1,5 +1,5 @@
-\def\filedate{13 August 2010}
-\def\fileversion{1.0.1}
+\def\filedate{20 February 2022}
+\def\fileversion{1.0.2}
\def\batchfile{flashcards.ins}
\input docstrip.tex
diff --git a/macros/latex/contrib/flashcards/flashcards.pdf b/macros/latex/contrib/flashcards/flashcards.pdf
index 153139ac0b..5c9799a1df 100644
--- a/macros/latex/contrib/flashcards/flashcards.pdf
+++ b/macros/latex/contrib/flashcards/flashcards.pdf
Binary files differ
diff --git a/macros/latex/contrib/memoir/README b/macros/latex/contrib/memoir/README
index 42944d96b4..27accc2694 100644
--- a/macros/latex/contrib/memoir/README
+++ b/macros/latex/contrib/memoir/README
@@ -27,6 +27,27 @@ o Backmatter:
Command glossary ~ 40 pages
Bibliography, indexes ~ 50 pages
+Changed (2022/02/20)
+
+o memoir v3.7q
+
+-- Added memhfixc autoloading to memoir (via
+ \AtEndPackage{hyperref}...), then the equivalent code can be
+ removed from hyperref
+-- now auto loads the etoolbox package in order to enable a future
+ patching approach instead of overwriting kernel macros
+ (nb: re-coding has not started yet)
+-- changed definition of \medspace into \providecommand for better
+ testing with older kernels
+-- added some code to a hook provided by footmisc fixing a bug with
+ the combination of memoir+footmisc+reledmac, especially the 2022
+ update of footmisc
+-- fixed typo in manual regarding \setupmaintoc, see
+ https://tex.stackexchange.com/q/602963/3929 for details.
+-- The LaTeX team changed the order of the file/package hook names
+ into a more precise scheme. \AtBegin/EndFile, \AtBegin/EndPackage,
+ \AtBegin/EndClass changed accordingly
+
Changed (2021/06/16)
o memoir v3.7p
diff --git a/macros/latex/contrib/memoir/doc-src/memman.tex b/macros/latex/contrib/memoir/doc-src/memman.tex
index 03a1af27e2..08cb835bc8 100644
--- a/macros/latex/contrib/memoir/doc-src/memman.tex
+++ b/macros/latex/contrib/memoir/doc-src/memman.tex
@@ -13141,8 +13141,8 @@ other environments.
\svnidlong
{$Ignore: $}
-{$LastChangedDate: 2018-09-14 11:13:10 +0200 (Fri, 14 Sep 2018) $}
-{$LastChangedRevision: 620 $}
+{$LastChangedDate: 2021-06-28 13:55:32 +0200 (Mon, 28 Jun 2021) $}
+{$LastChangedRevision: 715 $}
{$LastChangedBy: daleif@math.au.dk $}
%%%%%%%%%%%%%%%%%%%%%%%%%%
@@ -14968,11 +14968,12 @@ everything back to normal.
\renewcommand{\cftchapterbreak}{\par\addpenalty{-\@highpenalty}}
\setpnumwidth{2.55em}
\setrmarg{3.55em}
- \setcounter{tocdepth}{2}}
+ \setcounter{tocdepth}{2}
\let\cftpartformatpnum\oldcftpartformatpnum
\addtodef{\cftpartbreak}{\par}{}
\let\cftbookformatpnum\oldcftbookformatpnum
\addtodef{\cftbookbreak}{\par}{}
+ }
\end{lcode}
The first few lines restore some macros to their original definitions.
\begin{lcode}
diff --git a/macros/latex/contrib/memoir/memman.pdf b/macros/latex/contrib/memoir/memman.pdf
index 67d9654a71..e3153585d8 100644
--- a/macros/latex/contrib/memoir/memman.pdf
+++ b/macros/latex/contrib/memoir/memman.pdf
Binary files differ
diff --git a/macros/latex/contrib/memoir/memoir.dtx b/macros/latex/contrib/memoir/memoir.dtx
index 074ee11e1a..15574b52d7 100644
--- a/macros/latex/contrib/memoir/memoir.dtx
+++ b/macros/latex/contrib/memoir/memoir.dtx
@@ -20,7 +20,7 @@
% This work consists of the files listed in the README file.
%
% \fi
-% \CheckSum{31013}
+% \CheckSum{31027}
%
% \changes{v0.1}{2001/05/20}{First public alpha release}
% \changes{v0.2}{2001/06/03}{First beta release}
@@ -127,6 +127,7 @@
% to ensure backwards compatability}
% \changes{v3.7o}{2021/03/23}{Maintenance and a provide for the kernel}
% \changes{v3.7p}{2021/06/16}{Small adjustments of memoir vs memhfixc}
+% \changes{v3.7q}{2022/02/20}{Maintenance}
%
% \def\dtxfile{memoir.dtx}
%
@@ -191,6 +192,7 @@
% \def\fileversion{v3.7n} \def\filedate{2020/10/04}
% \def\fileversion{v3.7o} \def\filedate{2021/03/23}
% \def\fileversion{v3.7p} \def\filedate{2021/06/16}
+% \def\fileversion{v3.7q} \def\filedate{2022/02/20}
% \title{The LaTeX \Lpack{memoir} class for configurable book
% typesetting: Source code\thanks{This
% file (\texttt{\dtxfile}) has version number \fileversion, last revised
@@ -421,11 +423,11 @@
% Announce the name, option files and version for LaTeX2e files:
% \begin{macrocode}
%<class>\ProvidesClass{memoir}%
-%<class> [2021/06/16 v3.7p configurable book, report, article document class]
+%<class> [2022/02/20 v3.7q configurable book, report, article document class]
% \end{macrocode}
% In the manual it is useful to know the current version.
% \begin{macrocode}
-%<class>\newcommand\memversion{v3.7p, 2021/06/16}
+%<class>\newcommand\memversion{v3.7q, 2022/02/20}
%<9pt>\ProvidesFile{mem9.clo}%
%<9pt> [2008/01/30 v0.4 memoir class 9pt size option]
%<10pt>\ProvidesFile{mem10.clo}%
@@ -459,6 +461,13 @@
%<*class>
% \end{macrocode}
%
+% (2022/02/20): In order to be able to use a patching approach instead
+% of overwriting kernel macros, we will now require the
+% \Lpack{etoolbox} package.
+% \begin{macrocode}
+\RequirePackage{etoolbox}
+% \end{macrocode}
+%
% Note (2001/08/03): Old versions of the \Lpack{amsmath} package did odd
% things with \cs{@tempa}, \cs{@tempb} and \cs{@tempc}. I have now replaced
% any use of these with \cs{@memtempa}, etc.
@@ -941,9 +950,11 @@
% We add a \cs{temp} trick suggested by David Carlisle as the old code
% required \#\ doubling and the new does not. To be backwards
% compatible we force required \#\ doubling.
+% \changes{v3.7q}{2022/01/07}{The LaTeX team reversed the order of the
+% hook name}
% \begin{macrocode}
- \newcommand\AtBeginFile[2]{\def\temp{\AddToHook{file/before/#1}{#2}}\temp}
- \newcommand\AtEndFile[2]{\def\temp{\AddToHook{file/after/#1}{#2}}\temp}
+ \newcommand\AtBeginFile[2]{\def\temp{\AddToHook{file/#1/before}{#2}}\temp}
+ \newcommand\AtEndFile[2]{\def\temp{\AddToHook{file/#1/after}{#2}}\temp}
% \end{macrocode}
% \end{macro}
@@ -963,9 +974,11 @@
% We add a \cs{temp} trick suggested by David Carlisle as the old code
% required \#\ doubling and the new does not. To be backwards
% compatible we force required \#\ doubling.
+% \changes{v3.7q}{2022/01/07}{The LaTeX team reversed the order of the
+% hook name}
% \begin{macrocode}
- \newcommand\AtBeginPackage[2]{\def\temp{\AddToHook{package/before/#1}{#2}}\temp}
- \newcommand\AtEndPackage[2]{\def\temp{\AddToHook{package/after/#1}{#2}}\temp}
+ \newcommand\AtBeginPackage[2]{\def\temp{\AddToHook{package/#1/before}{#2}}\temp}
+ \newcommand\AtEndPackage[2]{\def\temp{\AddToHook{package/#1/after}{#2}}\temp}
\newcommand{\RequireAtEndPackage}[2]{%
\@ifpackageloaded{#1}{#2}{\AtEndPackage{#1}{#2}}}
@@ -985,9 +998,11 @@
% We add a \cs{temp} trick suggested by David Carlisle as the old code
% required \#\ doubling and the new does not. To be backwards
% compatible we force required \#\ doubling.
+% \changes{v3.7q}{2022/01/07}{The LaTeX team reversed the order of the
+% hook name}
% \begin{macrocode}
- \newcommand\AtBeginClass[2]{\def\temp{\AddToHook{class/before/#1}{#2}}\temp}
- \newcommand\AtEndClass[2]{\def\temp{\AddToHook{class/after/#1}{#2}}\temp}
+ \newcommand\AtBeginClass[2]{\def\temp{\AddToHook{class/#1/before}{#2}}\temp}
+ \newcommand\AtEndClass[2]{\def\temp{\AddToHook{class/#1/after}{#2}}\temp}
\newcommand{\RequireAtEndClass}[2]{%
\@ifclassloaded{#1}{#2}{\AtEndClass{#1}{#2}}}
@@ -28742,8 +28757,10 @@
% \begin{macro}{\m@m@makecolfloats}
% \begin{macro}{\m@m@makecoltext}
% These two macros contain code common to versions of \cs{@makecol}
+% \changes{v3.7q}{2022/02/20}{Added the \cs{@elt} line from the kernel}
% \begin{macrocode}
\newcommand*{\m@m@makecolfloats}{%
+ \let\@elt\relax%
\xdef\@freelist{\@freelist\@midlist}%
\global\let\@midlist\@empty
\@combinefloats}
@@ -28884,7 +28901,7 @@
% \begin{macro}{\mem@makecoldblf}
% A version of \cs{@makecol} which is a placeholder to fix the doublefloat
% problem.
-%
+% TODO: remove this code it is not used
% \begin{macrocode}
\gdef\mem@makecoldblf{%
\m@m@makecolintro
@@ -29282,6 +29299,29 @@
% \end{macrocode}
%
+% If the \Lpack{footmisc} package is loaded all of our additions of
+% extra footnotes, side footnotes, sidebar are lost. So we add them to
+% their collection macro. This is especially important when
+% \Lpack{footmisc} \emph{and} \Lpack{reledmac} are loaded with
+% memoir. To play nice, we use the command hooks introduced in june 2021.
+% \changes{v3.7q}{2022/02/17}{Added this fix for \Lpack{footmisc}}
+% \begin{macrocode}
+\IfFormatAtLeastTF{2021-06-01}{
+ % adding to "hook" in footmisc
+ \AddToHook{cmd/@makecol@appendblocks/after}{\m@mdoextrafeet\m@mopsidefoot\m@mopsidebar}
+}{
+ \AtBeginDocument{
+ \@ifpackagelater{footmisc}{2011/06/07}{
+ \@memerror{You seem to have manually updated both memoir and^^J
+ footmisc on an older LaTeX kernel. Memoir is not compatible with
+ footmisc^^J version 2022/02/14 v6.0b on LaTeX kernels from before
+ 2021/06/01. Please^^J update your LaTeX installation instead of
+ manually updating classes^^J or packages}{Update your LaTeX installation}
+ }{}
+ }
+}
+% \end{macrocode}
+%
% \changes{v1.618033988b}{2010/02/17}{a bf was missing in \cs{m@mopfootnotebf}}
% \changes{v3.7c}{2013/11/28}{Spurious space}
% \begin{macrocode}
@@ -34625,8 +34665,9 @@
% \begin{macro}{\medspace}
% \begin{macro}{\:}
% Medium space \verb?\: (\medspace) = 4/18 em?
+% \changes{v3.7q}{2022/02/17}{use \cs{providecommand} on \cs{medspace}}
% \begin{macrocode}
-\newcommand{\medspace}{\kern .22222em }
+\providecommand{\medspace}{\kern .22222em }
\DeclareRobustCommand{\:}{%
\relax\ifmmode\mskip\medmuskip\else\medspace\fi}
% \end{macrocode}
@@ -36631,7 +36672,14 @@
% \end{macrocode}
%
%
+% \subsection{Interaction with the \Lpack{hyperref} package}
%
+% Ulrike Fischer has ask that the \Lpack{memhfixc} autoload is moved
+% from \Lpack{hyperref} to \Lpack{memoir}.
+% \changes{v3.7q}{2022/02/20}{Added autoloading}
+% \begin{macrocode}
+\AtEndPackage{hyperref}{\RequirePackage{memhfixc}}
+% \end{macrocode}
%
% \subsection{Default page style}
% We use the page style \pstyle{headings} by
diff --git a/macros/latex/contrib/preview/preview.dtx b/macros/latex/contrib/preview/preview.dtx
index 080996b284..6b21ace38e 100644
--- a/macros/latex/contrib/preview/preview.dtx
+++ b/macros/latex/contrib/preview/preview.dtx
@@ -3,7 +3,7 @@
%% Developed as part of AUCTeX <URL:https://www.gnu.org/software/auctex/>.
%
% Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006,
-% 2010, 2017-2020 Free Software Foundation
+% 2010, 2017-2022 Free Software Foundation
%
% This program is free software; you can redistribute it and/or modify
% it under the terms of the GNU General Public License as published by
@@ -20,7 +20,7 @@
% Free Software Foundation, Inc., 51 Franklin St, Fifth Floor,
% Boston, MA 02110-1301 USA
% \fi
-% \CheckSum{1760}
+% \CheckSum{1794}
% \GetFileInfo{preview.sty}
% \date{\filedate}
% \author{David Kastrup\thanks{\texttt{bug-auctex@gnu.org}}}
@@ -439,7 +439,7 @@
\NeedsTeXFormat{LaTeX2e} \def\reserved@a #1#2$#3:
#4${\xdef#1{\reserved@c #2#4 $}} \def\reserved@c #1 #2${#1}
\begingroup \catcode`\_=12
-\reserved@a\pr@version $Name: release_12_3 $ \ifx\pr@version\@empty
+\reserved@a\pr@version $Name: release_13_1 $ \ifx\pr@version\@empty
\reserved@a\pr@version CVS-$Revision: 1.126 $ \endgroup \else
\def\next release_{} \lccode`\_=`.
\edef\next{\lowercase{\endgroup
@@ -781,14 +781,41 @@
% pretty much the same as in |everyshi.sty|. One of its implications
% is that if someone does a \cmd{\shipout} of a \emph{void} box,
% things will go horribly wrong.
-% \begin{macro}{\shipout}
+% \begin{macro}{\pr@@shipout}
% \begin{macrocode}
-\let\pr@shipout=\shipout
-\def\shipout{\deadcycles\z@\bgroup\setbox\z@\box\voidb@x
+\def\pr@@shipout{\deadcycles\z@\bgroup\setbox\z@\box\voidb@x
\afterassignment\pr@shipoutegroup\setbox\z@}
\def\pr@shipoutegroup{\ifvoid\z@ \expandafter\aftergroup\fi \egroup}
% \end{macrocode}
% \end{macro}
+% \begin{macro}{\pr@shipout}
+% We now need to check which command we are replacing. Before
+% things got sophisticated in 2020 or 2021, this had been
+% \cmd{\shipout} but now it could be \cmd{\tex\_shipout:D}. \LaTeX\
+% got a hook mechanism for managing output routines, but it doesn't
+% really work well for wholesale replacement of the \cmd{\shipout}
+% command like |preview| does.
+% \begin{macrocode}
+\ifx\shipout\@undefined
+ \begingroup
+ \catcode`\:=10
+ \catcode`\_=10
+ \ifx\tex_shipout:D\@undefined
+ \PackageError{preview}{Cannot find \protect\shipout\space primitive}%
+ {preview needs to replace the \protect\shipout\space primitive with
+ its own routine to do its work. Due to packages or formats
+ interfering, it cannot be identified. Please report this.}
+ \else
+ \global\let\pr@shipout=\tex_shipout:D
+ \global\let\tex_shipout:D=\pr@@shipout
+ \fi
+ \endgroup
+\else
+ \let\pr@shipout=\shipout
+ \let\shipout=\pr@@shipout
+\fi
+% \end{macrocode}
+% \end{macro}
% \subsection{Parsing commands}
% \begin{macro}{\pr@parseit}
% \begin{macro}{\pr@endparse}
diff --git a/macros/latex/contrib/preview/preview.pdf b/macros/latex/contrib/preview/preview.pdf
index 0857912d7d..6c8c2d1446 100644
--- a/macros/latex/contrib/preview/preview.pdf
+++ b/macros/latex/contrib/preview/preview.pdf
Binary files differ
diff --git a/macros/unicodetex/latex/njuthesis/README.md b/macros/unicodetex/latex/njuthesis/README.md
index b9ea0d1884..b9411c04fb 100644
--- a/macros/unicodetex/latex/njuthesis/README.md
+++ b/macros/unicodetex/latex/njuthesis/README.md
@@ -6,6 +6,24 @@ dissertations with LaTeX, providing support for bachelor, master, and
doctoral thesis. Compilation of this class requires either `xelatex`
or `lualatex` engine.
+Usage
+-----
+
+A minimal example of this document class should look like
+
+```
+\documentclass{njuthesis}
+\njusetup{}
+\begin{document}
+\maketitle
+\tableofcontents
+\mainmatter
+\chapter{Welcome}
+Hello \LaTeX{}ïĵ
+\printbibliography
+\end{document}
+```
+
Contributing
------------
diff --git a/macros/unicodetex/latex/njuthesis/njuthesis.dtx b/macros/unicodetex/latex/njuthesis/njuthesis.dtx
index 10471b82e8..d08fbc07f1 100644
--- a/macros/unicodetex/latex/njuthesis/njuthesis.dtx
+++ b/macros/unicodetex/latex/njuthesis/njuthesis.dtx
@@ -8,7 +8,7 @@
%
% It may be distributed and/or modified under the conditions of the
% LaTeX Project Public License (LPPL), either version 1.3c of this
-% license or (at your option) any later version. The latest version
+% license or (at your option) any later version. The latest version
% of this license is in the file
%
% https://www.latex-project.org/lppl.txt
@@ -105,10 +105,10 @@ To produce the documentation run the original source files ending with
%
%<class>\NeedsTeXFormat{LaTeX2e}
%<class>\RequirePackage{expl3}
-%<class>\GetIdInfo $Id: njuthesis.dtx 0.14.0 2022-01-16 00:00:00 +0800 NJU LUG <git+nju-lug-email-3104-issue-@yaoge123.cn>$
-%<class> { Thesis template for Nanjing University }
+%<class>\GetIdInfo $Id: njuthesis.dtx 0.15.0 2022-02-20 10:30:00 +0800 NJU LUG <git+nju-lug-email-3104-issue-@yaoge123.cn>$
+%<class> {Thesis template for Nanjing University}
%<class>\ProvidesExplClass{njuthesis}
-%<class>{\ExplFileDate}{\ExplFileVersion}{\ExplFileDescription}
+%<class> {\ExplFileDate}{\ExplFileVersion}{\ExplFileDescription}
%
%<*driver>
\ProvidesFile{njuthesis.dtx}
@@ -119,6 +119,7 @@ To produce the documentation run the original source files ending with
\colorlet{at@guard}{njuviolet}
\definecolor{olgreen}{HTML}{138a07}
\newcommand\olbutton[1]{\textcolor{olgreen}{\bfseries #1}}
+\newcommand\grd[1]{\textcolor{at@guard}{\sffamily #1}}
\hypersetup{%
pdftitle = {The njuthesis class - LaTeX thesis template for Nanjing University},
citecolor = njublue,
@@ -182,7 +183,7 @@ To produce the documentation run the original source files ending with
% ċ—äşĴċ¤§ċ­Ĥ Linux 用ĉˆ·çğ„
% \thanks{E-mail: \href{mailto:git+nju-lug-email-3104-issue-@yaoge123.cn}{git+nju-lug-email-3104-issue-@yaoge123.cn}}}
%
-% \date{v0.14.0 \quad 2022-01-16}
+% \date{v0.15.0 \quad 2022-02-20}
%
% \changes{v0.1}{2021/09/04}{ċĵ€ċ§‹ċĵ€ċ‘€‚}
% \changes{v0.2}{2021/09/07}{ċˆĉ­ĉ­ċğşäş†ċŻç”¨çš„ĉ¨Ħĉż€‚}
@@ -265,7 +266,7 @@ To produce the documentation run the original source files ending with
% \hspace{2em}\begin{minipage}[c]{10cm}
% \begin{enumerate}
% \item èżé— \url{https://tex.nju.edu.cn}
-% \item ç‚ıċ‡ğċ³ä¸Šè§’~\olbutton{ĉ³¨ċ†Œ}~ĉŒ‰é’ïĵŒç”¨ċ—ċ¤§é‚çħĉ³¨ċ†Œè´Ĥċ·
+% \item ç‚ıċ‡ğċ³ä¸Šè§’~\olbutton{ĉ³¨ċ†Œ}~ĉŒ‰é’ïĵŒç”¨\href{https://itsc.nju.edu.cn/1b/ce/c21586a334798/page.htm}{ċ—ċ¤§é‚çħ}ĉ³¨ċ†Œè´Ĥċ·
% \item ç™ğċ½•ĉ‚¨çš„è´Ĥċ·
% \item ç‚ıċ‡ğċ·Ĥ上角~\olbutton{ċˆ›ċğşĉ–°éĦıç›}~ĉŒ‰é’ïĵŒé€‰ĉ‹İ~\olbutton{èşĉ–‡ĉ¨Ħĉż}
% \item 随ĉ„ċ–ċïĵŒç‚ıċ‡ğ~\olbutton{ċˆ›ċğş}~ĉŒ‰é’
@@ -382,11 +383,27 @@ To produce the documentation run the original source files ending with
%
% \cls{njuthesis} ç›ċ‰ċ¤„于积ĉžçš„çğ´ĉŠ¤ä¸­ïĵŒä¸ğèĤċŻé€šèż‡äğ下三种途ċ„获ċ–ĉ¨Ħĉżĉ–‡äğĥïĵš
%
-% \subparagraph{CTAN} \href{https://ctan.org/}{CTAN}\footnote{The Comprehensive \hologo{TeX} Archive Network} ĉ˜Żĉ‰€ĉœ‰ \hologo{TeX} 相ċ…³ĉĉ–™çš„中ĉž˘€‚\href{https://ctan.org/pkg/njuthesis}{ĉœĴĉ¨Ħĉżçš„ CTAN éĦµé˘}\footnote{\cls{njuthesis} ċ·²çğäşŽ2021ċı´9ĉœˆ12ĉ—ċ‘ċ¸ƒċœ¨ CTANïĵŒç”¨äşŽçğ˜ċˆĥċ—ċ¤§ċ›ĉ ‡çš„ \href{https://ctan.org/pkg/njuvisual}{\pkg{njuvisual}} äıŸċ·²äşŽċŒċı´11ĉœˆ28ĉ—ċ‘ċ¸ƒïĵŒä¸¤è€…ċ·²è˘Ğ \hologo{TeX}\,Live ċ’Œ \hologo{MiKTeX} ĉ”ĥċ½•ïĵŒċ°†èż›ċ… \hologo{TeX}\,Live 2022 ċ‘èĦŒç‰ˆ€‚}上ĉä›ċŸşĉœĴ的äğ‹çğäżĦĉŻïĵŒċŻäğä¸‹è½½èŻ´ĉ˜Žĉ–‡ĉĦ£ïĵˆĉœĴĉ–‡ĉĦ£ïĵ‰ċ’ŒċċŒ…ĉşäğ£ç €‚ċ½“ç„ĥïĵŒä½żç”¨èż™ä¸€ĉĉşĉ—ĥċıĥ不需èĤĉŽè§ĤċŽè€…ïĵŒèŻ·ċ‚考 \ref{subsubsec:standard-installation} 的ĉ ‡ċ‡†ċ‰è£…ĉ–ıĉ³•€‚
-%
-% \subparagraph{GitHub äğ“ċş“} ĉœ€ĉ–°ċĵ€ċ‘èż›ċşĤäĵšĉäş¤ċœ¨ĉœĴéĦıç›çš„ \href{https://github.com/nju-lug/NJUThesis}{Githubäğ“ċş“}€‚äğ“ċş“ċ†…äğ…ċŒ…ċĞĉşäğ£ç €çİşç™½ĉ¨ĦĉżċŠĉµ‹èŻ•ĉ–‡äğĥïĵŒä¸ċŻç›´ĉŽç”¨äşŽċ†™ä½œ€‚èż™äş›ĉ–‡äğĥċŻıċş”çš„ä½żç”¨ĉ–ıĉ³•èŻ·ċ‚考 \ref{subsubsec:on-the-fly-installation}€‚ċĤ‚ĉžœç”ħäşŽç½‘çğœċŽŸċ› ä¸äżèżé—ä¸ğäğ“ċş“ïĵŒäıŸċŻäğäğŽ\href{https://git.nju.edu.cn/nju-lug/nju-latex-templates/njuthesis}{NJU Git ċŒĉ­é•œċƒ} 获ċ–éĦıç›ċ·ç¨‹ĉ–‡äğĥ€‚
-%
-% \subparagraph{GitHub Releases} ĉœĴĉ¨Ħĉżä¸ċšĉœŸċ°†ċ·²ĉœ‰çš„ĉ–°ċŠŸèƒ½ċ’Œé—é˘˜äżċ¤ĉ‰“ċŒ…为ĉ–°çš„ĉ­£ċĵċ‘èĦŒç‰ˆïĵŒèµ‹äğĉ›´ĉ”ıċŽçš„版ĉœĴċ·ïĵŒċ‘ċ¸ƒċœ¨ \href{https://github.com/nju-lug/NJUThesis/releases/latest}{Github Releases éĦµé˘}€‚ċĤ‚ĉžœç”ħäşŽç½‘çğœċŽŸċ› ä¸äżèżé—ä¸ğäğ“ċş“ïĵŒäıŸċŻäğäğŽ\href{https://mirror.nju.edu.cn/github-release/nju-lug/NJUThesis/LatestRelease/}{ċ—äşĴċ¤§ċ­Ĥ镜ċƒçЙ下载éĦµé˘}获ċ–€‚ċŻä›ä¸‹è½½çš„ĉ–‡äğĥċŒ…ĉ‹Ĵ下ċˆ—三种ïĵš
+% \subparagraph{CTAN}
+% \href{https://ctan.org/}{CTAN}\footnote{The Comprehensive \hologo{TeX}
+% Archive Network} ĉ˜Żĉ‰€ĉœ‰ \hologo{TeX} 相ċ…³ĉĉ–™çš„中ĉž˘€‚
+% ĉœĴĉ¨Ħĉżçš„ CTAN éĦµé˘
+% \footnote{\href{https://ctan.org/pkg/njuthesis}{\cls{njuthesis}} ċ·²çğäşŽ2021ċı´9
+% ĉœˆ12ĉ—ċ‘ċ¸ƒċœ¨ CTANïĵŒç”¨äşŽçğ˜ċˆĥċ—ċ¤§ċ›ĉ ‡çš„
+% \href{https://ctan.org/pkg/njuvisual}{\pkg{njuvisual}} äıŸċ·²äşŽċŒċı´11ĉœˆ28ĉ—ċ‘
+% ċ¸ƒïĵŒä¸¤è€…ċ·²è˘Ğ \hologo{TeX}\,Live ċ’Œ \hologo{MiKTeX} ĉ”ĥċ½•ïĵŒċ°†èż›ċ… \hologo{TeX}\,
+% Live 2022 ċ‘èĦŒç‰ˆ€‚}上ĉä›ċŸşĉœĴ的äğ‹çğäżĦĉŻïĵŒċŻäğä¸‹è½½èŻ´ĉ˜Žĉ–‡ĉĦ£ïĵˆĉœĴĉ–‡ĉĦ£ïĵ‰ċ’ŒċċŒ…ĉşäğ£
+% 码€‚ċ½“ç„ĥïĵŒä½żç”¨èż™ä¸€ĉĉşĉ—ĥċıĥ不需èĤĉŽè§ĤċŽè€…ïĵŒèŻ·ċ‚考
+% \ref{subsubsec:standard-installation} 的ĉ ‡ċ‡†ċ‰è£…ĉ–ıĉ³•€‚
+%
+% \subparagraph{GitHub äğ“ċş“}
+% ĉœ€ĉ–°ċĵ€ċ‘èż›ċşĤäĵšĉäş¤ċœ¨ĉœĴéĦıç›çš„
+% \href{https://github.com/nju-lug/NJUThesis}{Githubäğ“ċş“}€‚äğ“ċş“ċ†…äğ…ċŒ…ċĞĉşäğ£ç €
+% çİşç™½ĉ¨ĦĉżċŠĉµ‹èŻ•ĉ–‡äğĥïĵŒä¸ċŻç›´ĉŽç”¨äşŽċ†™ä½œ€‚èż™äş›ĉ–‡äğĥċŻıċş”çš„ä½żç”¨ĉ–ıĉ³•èŻ·ċ‚考
+% \ref{subsubsec:on-the-fly-installation}€‚ċĤ‚ĉžœç”ħäşŽç½‘çğœċŽŸċ› ä¸äżèżé—ä¸ğäğ“ċş“ïĵŒäıŸċŻ
+% äğäğŽ\href{https://git.nju.edu.cn/nju-lug/nju-latex-templates/njuthesis}{NJU Git ċŒĉ­é•œċƒ} 获ċ–éĦıç›ċ·ç¨‹ĉ–‡äğĥ€‚
+%
+% \subparagraph{GitHub Releases}
+% ĉœĴĉ¨Ħĉżä¸ċšĉœŸċ°†ċ·²ĉœ‰çš„ĉ–°ċŠŸèƒ½ċ’Œé—é˘˜äżċ¤ĉ‰“ċŒ…为ĉ–°çš„ĉ­£ċĵċ‘èĦŒç‰ˆïĵŒèµ‹äğĉ›´ĉ”ıċŽçš„版ĉœĴċ·ïĵŒċ‘ċ¸ƒċœ¨ \href{https://github.com/nju-lug/NJUThesis/releases/latest}{Github Releases éĦµé˘}€‚ċĤ‚ĉžœç”ħäşŽç½‘çğœċŽŸċ› ä¸äżèżé—ä¸ğäğ“ċş“ïĵŒäıŸċŻäğäğŽ\href{https://mirror.nju.edu.cn/github-release/nju-lug/NJUThesis/LatestRelease/}{ċ—äşĴċ¤§ċ­Ĥ镜ċƒçЙ下载éĦµé˘}获ċ–€‚ċŻä›ä¸‹è½½çš„ĉ–‡äğĥċŒ…ĉ‹Ĵ下ċˆ—三种ïĵš
% \begin{description}
% \item[\file{njuthesis-v*.pdf}] ĉ¨ĦĉżèŻ´ĉ˜Žĉ–‡ĉĦ£ïĵˆĉœĴĉ–‡ĉĦ£ïĵ‰€‚
% \item[\file{njuthesis-user-v*.zip}] 交äğ˜çğ™ç”¨ĉˆ·çš„ċŒĉ•´ĉ¨ĦĉżċŒ…ïĵŒċŒ…ĉ‹Ĵĉ ĵċĵĉ–‡äğĥċ’ŒèŒƒĉœĴĉ–‡ĉĦ£ïĵŒċŻċœ¨è§£ċŽ‹ċŽç”¨äşŽĉœĴċœ°çĵ–èŻ‘ïĵŒäıŸċŻç›´ĉŽä¸Šäĵ è‡³ċœ¨çşżçĵ–èŻ‘ç½‘çĞ™€‚
@@ -506,9 +523,9 @@ To produce the documentation run the original source files ending with
%
%
% \subsubsection{配ç½çĵ–è‘ċ™¨}
-% \changes{v0.11}{2021/11/23}{ĉä›TeXstudio配ç½ĉ–‡äğĥ€‚}
+% \changes{v0.11}{2021/11/23}{ĉä› TeXstudio 配ç½ĉ–‡äğĥ€‚}
%
-% 配ç½ċŒçĵ–èŻ‘ċ™¨ċŽïĵŒèż˜éœ€èĤä¸€ä¸Ş\emph{ĉ–‡ĉœĴçĵ–è‘ċ™¨}ĉċŒĉˆ\file{.tex}ĉ–‡äğĥċ†…ċı的ċ†™ä½œ€‚
+% 配ç½ċŒçĵ–èŻ‘ċ™¨ċŽïĵŒèż˜éœ€èĤä¸€ä¸Ş\emph{ĉ–‡ĉœĴçĵ–è‘ċ™¨}ĉċŒĉˆ \file{.tex} ĉ–‡äğĥċ†…ċı的ċ†™ä½œ€‚
%
% ċ…³äşŽċ…·ä½“ä½żç”¨ċ“Şä¸€ç§ïĵŒè‡³äğŠäğĉœ‰ç›¸ċ½“一部ċˆ†äşşè¤ä¸şWindowsè‡Şċ¸Ĥ的\emph{è°äş‹ĉœĴ}ĉ˜Żĉœ€ċ½çš„
% ĉ–‡ĉœĴçĵ–è‘ċ™¨€‚但ċŻı于ĉœĴéĦıç›è€Œè¨€ïĵŒċœ¨ĉ­¤èŻšċżƒèŻšĉ„ċœ°ĉŽ¨èĉ‚¨ä½żç”¨\emph{ĉ›´çŽ°äğ£ĉ›´çŽè§‚ĉ›´ċ¤šċŠŸ
@@ -516,7 +533,7 @@ To produce the documentation run the original source files ending with
%
% \cls{njuthesis} 为一些ċ¸¸è§çĵ–è‘ċ™¨ĉä›äş†é…ç½ĉ–‡äğĥïĵŒċĤ‚
% \begin{description}
-% \item[Visual Studio Code] ĉœĴĉ¨Ħĉżċœ¨\file{.vscode/}中ĉä›ä¸€äğ½\hologo{LaTeX} Workshop ĉ’äğĥ的ç€ĉ˜“配ç½ïĵŒċœ¨ĉ‰“ċĵ€ĉ–‡äğĥċ¤ıċŽċ°†è‡ŞċŠ¨ċŻĵċ…ïĵŒċŻäğ省ç•ċˆċ§‹é…ç½ĉ­éޤ直ĉŽä½żç”¨€‚
+% \item[Visual Studio Code] ĉœĴĉ¨Ħĉżċœ¨ \file{.vscode/} 中ĉä›ä¸€äğ½ \hologo{LaTeX} Workshop ĉ’äğĥ的ç€ĉ˜“配ç½ïĵŒċœ¨ĉ‰“ċĵ€ĉ–‡äğĥċ¤ıċŽċ°†è‡ŞċŠ¨ċŻĵċ…ïĵŒċŻäğ省ç•ċˆċ§‹é…ç½ĉ­éޤ直ĉŽä½żç”¨€‚
% \item[TeXstudio] ĉœĴĉ¨Ħĉżĉä› \file{conf.txsprofile}ïĵŒċŻäğä½żç”¨ċżĞĉ·é” |alt+O+P| ċŻĵċ…配ç½ĉ–‡äğĥ€‚为了ç€ċŒ–ĉµç¨‹\footnote{ċ½“ç„ĥïĵŒäıŸċŻäğèç½ä¸şä½żç”¨ \hologo{XeLaTeX} çĵ–èŻ‘ïĵŒç„ĥċŽĉŒ‰ç…§ \ref{subsubsec:compileseq} ċ†…ċıä½żç”¨ċżĞĉ·é” |F8| ĉ‰‹ċŠ¨çĵ–èŻ‘ċ‚考ĉ–‡çŒ€‚}ïĵŒèŻé…ç½ĉ–‡äğĥä½żç”¨ \pkg{latexmk}ïĵŒçĴĴ一ĉĴĦçĵ–èŻ‘ċ‰èŻ·ċ‚考下一节ċ†…ċıċ‰è£… Perl€‚
% \end{description}
%
@@ -570,7 +587,7 @@ To produce the documentation run the original source files ending with
% \pkg{latexmk}\cite{latexmk} ĉ˜Żä¸€ä¸ŞċŸşäşŽ Perl 脚ĉœĴçš„è‡ŞċŠ¨çĵ–èŻ‘ċ·ċ…·ïĵŒċ—ĉ—¨ĉ˜Żé€šèż‡ċ•ä¸€ċ‘½äğ¤ç€ċŒ–ä¸Šèż°çš„ċ¤šĉĴĦçĵ–èŻ‘ĉµç¨‹€‚ċœ¨ä½żç”¨èŻċ‘½äğ¤ċ‰ïĵŒèŻ·çĦ保ċ‰è£…了äğä¸‹è½Żäğĥïĵš
% \begin{description}
% \item[Perl] 一èˆĴé˘„è£…äşŽ macOS ċ’Œ LinuxïĵŒè€Œ Windows 用ĉˆ·éœ€èĤċ•ç‹Ĵċ‰è£… \href{https://strawberryperl.com/}{Strawberry Perl}€‚
-% \item[\pkg{latexmk}] \hologo{MiKTeX}ċ·²é˘„装ïĵ›ċĤ‚ĉžœçğˆçĞŻĉ‰ä¸ċˆ°|latexmk|ċ‘½äğ¤ïĵŒ\hologo{TeX}\,Live 用ĉˆ·éœ€ä½żç”¨ \pkg{tlmgr} ċ•ç‹Ĵċ‰è£…€‚
+% \item[\pkg{latexmk}] \hologo{MiKTeX} ċ·²é˘„装ïĵ›ċĤ‚ĉžœçğˆçĞŻĉ‰ä¸ċˆ° |latexmk| ċ‘½äğ¤ïĵŒ\hologo{TeX}\,Live 用ĉˆ·éœ€ä½żç”¨ \pkg{tlmgr} ċ•ç‹Ĵċ‰è£…€‚
% \end{description}
%
% èŻċ‘½äğ¤çš„ä½żç”¨ĉ–ıĉ³•ä¸ş
@@ -591,7 +608,7 @@ To produce the documentation run the original source files ending with
% \subsection{ċœ¨çşżçĵ–èŻ‘}
% \label{subsec:onlinecompile}
%
-% 相äżĦĉ‚¨ċœ¨ĉŽè§Ĥ了ĉœĴċœ°çĵ–èŻ‘äğċŽïĵŒċˆċżĞċ°ħäĵšĉ„èŻ†ċˆ°ä¸€äş›ċċˆ†ĉ˜ç„ĥ的事ċžïĵŒè­ĴċĤ‚\hologo{TeX}çĵ–èŻ‘ċ™¨ċ‰è£…èż‡ç¨‹èƒä¸şĉĵĞ长\footnote{ċ› ĉ­¤ċŻı于 Windows ĉŽ¨è \hologo{MiKTeX}€‚}ïĵŒċ ç”¨çİşé—´èż‡ċ¤§\footnote{事ċžä¸ŠïĵŒċŻäğé€šèż‡ |scheme-infraonly| ĉ¨Ħċĵċ‰è£… \hologo{TeX}\,LiveïĵŒéšċŽċˆİ用 \pkg{tlmgr} ċ‰è£…äèµ–ċċŒ…ïĵŒèż™äğ½ċċŒ…ċˆ—èĦ¨ċŻäğċœ¨ Git äğ“ċş“çš„ \file{.github/workflows/build.yml} ĉ‰ċˆ°€‚}ïĵŒè€Œä¸”ċœ¨ä¸€éƒ¨ċˆ†ċ¤„理ċ™¨ĉ€§èƒ½ä¸ä½³çš„电脑上需èĤèƒé•żçĵ–èŻ‘ĉ—ĥ间\footnote{ċ‡şäşŽĉ–‡äğĥ IO 速ċşĤ的ċ·ċĵ‚ïĵŒċŒä¸€ä¸Şĉ¨Ħĉżċœ¨ Linux çĵ–èŻ‘ċŻäğ相ċŻı Windows 节省çşĤ一ċŠè€—ĉ—ĥ€‚}€‚ĉ‹’çğĉŽċ—èż™äş›éşğçƒĤ的ċŒċ­Ĥ不ċĤ¨ċ°èŻ•ĉœĴ节äğ‹çğçš„ċœ¨çşżçĵ–èŻ‘ĉ–ıĉ³•€‚
+% 相äżĦĉ‚¨ċœ¨ĉŽè§Ĥ了ĉœĴċœ°çĵ–èŻ‘äğċŽïĵŒċˆċżĞċ°ħäĵšĉ„èŻ†ċˆ°ä¸€äş›ċċˆ†ĉ˜ç„ĥ的事ċžïĵŒè­ĴċĤ‚ \hologo{TeX} çĵ–èŻ‘ċ™¨ċ‰è£…èż‡ç¨‹èƒä¸şĉĵĞ长\footnote{ċ› ĉ­¤ċŻı于 Windows ĉŽ¨è \hologo{MiKTeX}€‚}ïĵŒċ ç”¨çİşé—´èż‡ċ¤§\footnote{事ċžä¸ŠïĵŒċŻäğé€šèż‡ |scheme-infraonly| ĉ¨Ħċĵċ‰è£… \hologo{TeX}\,LiveïĵŒéšċŽċˆİ用 \pkg{tlmgr} ċ‰è£…äèµ–ċċŒ…ïĵŒèż™äğ½ċċŒ…ċˆ—èĦ¨ċŻäğċœ¨ Git äğ“ċş“çš„ \file{.github/workflows/build.yml} ĉ‰ċˆ°€‚}ïĵŒè€Œä¸”ċœ¨ä¸€éƒ¨ċˆ†ċ¤„理ċ™¨ĉ€§èƒ½ä¸ä½³çš„电脑上需èĤèƒé•żçĵ–èŻ‘ĉ—ĥ间\footnote{ċ‡şäşŽĉ–‡äğĥ IO 速ċşĤ的ċ·ċĵ‚ïĵŒċŒä¸€ä¸Şĉ¨Ħĉżċœ¨ Linux çĵ–èŻ‘ċŻäğ相ċŻı Windows 节省çşĤ一ċŠè€—ĉ—ĥ€‚}€‚ĉ‹’çğĉŽċ—èż™äş›éşğçƒĤ的ċŒċ­Ĥ不ċĤ¨ċ°èŻ•ĉœĴ节äğ‹çğçš„ċœ¨çşżçĵ–èŻ‘ĉ–ıĉ³•€‚
%
% \subsubsection{ċ—ċ¤§\hologo{TeX}ċı³ċ°ç€äğ‹}
% \changes{v0.2}{2021/09/07}{ĉ·ğċŠ ċŻıċ—ċ¤§ \hologo{TeX} 的ĉ”ŻĉŒ€‚}
@@ -624,7 +641,7 @@ To produce the documentation run the original source files ending with
%
% \subsection{版ĉœĴċ‡çş§}
%
-% 考虑ċˆ°ĉœĴĉ¨Ħĉżäğċœ¨ċĵ€ċ‘中ïĵŒċ°†ä¸ĉ–­ċ‘ċ¸ƒĉ–°ç‰ˆĉœĴïĵŒĉ‚¨ċŻèƒ½éœ€èĤä¸ċšĉœŸèż›èĦŒĉ›´ĉ–°äğċ—ċˆ°ċŻı于ċ·²çŸé—é˘˜çš„äżċ¤èĦ丁€‚考虑ċˆ°ċ‰è£…ċ’Œçĵ–èŻ‘ĉ–ıċĵçš„ċ·ċĵ‚ïĵŒä¸ċĤ¨ç›´ĉŽċ°†èşĉ–‡ċ†…ċıèżç§ğ至ĉ–°ç‰ˆçš„ \file{njuthesis-sample.tex}\footnote{èŻ·èµžçŽ \hologo{TeX} ç³ğçğŸâ€œĉ ·ċĵä¸Žċ†…ċıċˆ†çĤğ”的ċŽŸċˆ™ïĵ}ïĵŒç„ĥċŽĉŒ‰ç…§ċ½“ċ‰ċ·ä½œĉ–‡äğĥċ¤ıċ†…ĉ˜ŻċĤĉœ‰ \file{.cls} ĉ–‡äğĥċˆ†ċˆĞèż›èĦŒĉ›´ĉ–°ĉ“ä½œ€‚
+% 考虑ċˆ°ĉœĴĉ¨Ħĉżäğċœ¨ċĵ€ċ‘中ïĵŒċ°†ä¸ĉ–­ċ‘ċ¸ƒĉ–°ç‰ˆĉœĴïĵŒĉ‚¨ċŻèƒ½éœ€èĤä¸ċšĉœŸèż›èĦŒĉ›´ĉ–°äğċ—ċˆ°ċŻı于ċ·²çŸé—é˘˜çš„äżċ¤èĦ丁€‚ĉŻä¸Şç‰ˆĉœĴ的ĉ›´ĉ–°ċ†…ċıè°ċ½•äşŽ Git äğ“ċş“中的 \file{CHANGELOG.md}€‚考虑ċˆ°ċ‰è£…ċ’Œçĵ–èŻ‘ĉ–ıċĵçš„ċ·ċĵ‚ïĵŒä¸ċĤ¨ç›´ĉŽċ°†èşĉ–‡ċ†…ċıèżç§ğ至ĉ–°ç‰ˆçš„ \file{njuthesis-sample.tex}\footnote{èŻ·èµžçŽ \hologo{TeX} ç³ğçğŸâ€œĉ ·ċĵä¸Žċ†…ċıċˆ†çĤğ”的ċŽŸċˆ™ïĵ}ïĵŒç„ĥċŽĉŒ‰ç…§ċ½“ċ‰ċ·ä½œĉ–‡äğĥċ¤ıċ†…ĉ˜ŻċĤĉœ‰ \file{.cls} ĉ–‡äğĥċˆ†ċˆĞèż›èĦŒĉ›´ĉ–°ĉ“ä½œ€‚
%
% \subparagraph{ĉœ‰}
% èżç§ğ至 \file{njuthesis-user-v*.zip} ĉä›çš„ĉ–°ċ†…ċı€‚
@@ -689,7 +706,7 @@ To produce the documentation run the original source files ending with
% ĉ˜ŻċĤä½żç”¨ċ›½ċĥċ›äıĤéĤ†ċ°é˘ïĵŒéğ˜è¤ċ…³é—­€‚
% \end{function}
%
-% é€šèż‡ĉ­¤éĦıċŻç”¨ċ›½ċĥċ›äıĤéĤ†ċ°é˘ĉ›żĉ˘ĉ™é€šċ°é˘€‚
+% é€šèż‡ĉ­¤éĦıċŻç”¨ċ›½ċĥċ›äıĤéĤ†ċ°é˘\emph{ĉ›żĉ˘}ĉ™é€šċ°é˘€‚
% ç”ħ于ĉœĴ科生院ĉ–‡äğĥ中ċıĥĉœŞĉċŠç›¸ċ…³è§„ċšïĵŒĉ•…ĉœĴ选éĦıäğ…ċŻı于研çİĥ生ĉœ‰ĉ•ˆ€‚
%
% \begin{function}[updated=2022-01-06]{decl-page}
@@ -733,7 +750,7 @@ To produce the documentation run the original source files ending with
% \end{itemize}
% è‰ç¨żĉ¨Ħċĵĉœ‰ċŠİ于ĉċ‡çĵ–èŻ‘é€ŸċşĤäğċŠĉ£€ĉŸĉ ĵċĵé—é˘˜ïĵŒċğşèċœ¨ċšç¨żċ‰ċ§‹çğˆċĵ€ċŻ€‚
%
-% ċŻç”¨èż™ä¸€é€‰éĦıäıŸäĵšĉ”ıċ˜ç‰ıċšċċŒ…çš„èĦŒä¸şïĵŒè­ĴċĤ‚ċœ¨è‰ç¨żĉ¨Ħċĵä¸‹ \pkg{listings} ċċŒ…çš„äğ£ç çŽŻċ˘ƒä¸äĵšĉ˜ç¤şċ†…ċıïĵŒċ…·ä½“ĉ•ˆĉžœéœ€èĤċ‚ç…§ċ„个ċċŒ…çš„èŻ´ĉ˜Žĉ–‡ĉĦ£€‚ċĤ‚需ĉŠµĉĥˆè‰ç¨żĉ¨Ħċĵçš„ċ½ħċ“ïĵŒèŻ·ä½żç”¨ \opt{final} 选éĦıè½½ċ…相ċ…³çş˘ċŒ…€‚
+% ċŻç”¨èż™ä¸€é€‰éĦıäıŸäĵšĉ”ıċ˜ç‰ıċšċċŒ…çš„èĦŒä¸şïĵŒè­ĴċĤ‚ċœ¨è‰ç¨żĉ¨Ħċĵä¸‹ \pkg{listings} ċċŒ…çš„äğ£ç çŽŻċ˘ƒä¸äĵšĉ˜ç¤şċ†…ċıïĵŒċ…·ä½“ĉ•ˆĉžœéœ€èĤċ‚ç…§ċ„个ċċŒ…çš„èŻ´ĉ˜Žĉ–‡ĉĦ£€‚ċĤ‚需ĉŠµĉĥˆè‰ç¨żĉ¨Ħċĵçš„ċ½ħċ“ïĵŒèŻ·ä½żç”¨ \opt{final} 选éĦıè½½ċ…相ċ…³ċċŒ…€‚
%
%
% \subsubsection{ĉŒ‡ċšċ­—体}
@@ -1308,9 +1325,10 @@ To produce the documentation run the original source files ending with
%
% \begin{function}[added=2021-12-19]{bib/style}
% \begin{syntax}
-% style = <(numeric)|author-year>
+% style = <(numeric)|author-year|\meta{è‡Şċšäı‰ĉ ·ċĵ}>
% \end{syntax}
-% ċ‚考ĉ–‡çŒĉ ·ċĵ€‚ċˆ†ä¸şéĦşċşçĵ–码ċˆĥ \opt{numeric} ċ’Œè‘—者-ċ‡şç‰ˆċı´ċˆĥ \opt{author-year}ïĵŒéğ˜è¤ä¸şéĦşċşçĵ–码ċˆĥ€‚
+% ċ‚考ĉ–‡çŒĉ ·ċĵ€‚ċŻé€‰éĦşċşçĵ–码ċˆĥ \opt{numeric} ċ’Œè‘—者-ċ‡şç‰ˆċı´ċˆĥ \opt{author-year}ïĵŒ
+% ĉˆ–è‡ŞèĦŒċĦĞċ…äğğĉ„ċ…ĥäğ– \pkg{biblatex} ĉ ·ċĵ€‚éğ˜è¤ä¸şéĦşċşçĵ–码ċˆĥ€‚
% \end{function}
%
% ċ‚考ĉ–‡çŒĉ ·ċĵĉ˜Żä¸€ä¸Şĉ•´ä½“çš„èç½ïĵŒäĵšċŻıĉ­£ĉ–‡ä¸­ċĵ•ç”¨çš„ĉ–‡çŒçš„ĉ ‡ĉ³¨ĉ–ıĉ³•ċ’Œċ‚考ĉ–‡çŒèĦ¨çš„è“ċ‡şĉ ĵċĵäş§ç”Ÿċ½ħċ“€‚ĉ ıĉċ›½ċĥ规ċš\cite{gb-t-7714-2015}ïĵŒċŻäğĉŒ‰ç…§ċ‚考ĉ–‡çŒèĦ¨çš„çğ„çğ‡ĉ–ıċĵċˆ†ä¸şäğ下两种ĉ ·ċĵïĵš
@@ -1321,6 +1339,16 @@ To produce the documentation run the original source files ending with
%
% ċŻı于ĉœĴ科生而言ïĵŒċ­Ĥĉ Ħ规ċšĉ–‡äğĥèĦ¨ĉ˜Žċ‚考ĉ–‡çŒèĦ¨ċş”ċ½““用ĉ•°ċ­—ċŠ ĉ–ıĉ‹Ĵċ·èĦ¨ç¤şâ€\cite{nju2021}ïĵŒçĴĤċˆéĦşċşçĵ–码ċˆĥ的ĉ ĵċĵïĵŒäżĉŒéğ˜è¤èç½ċ³ċŻ€‚
%
+% \begin{function}[added=2022-02-15]{bib/option}
+% \begin{syntax}
+% option = \meta{选éĦıċˆ—èĦ¨}
+% \end{syntax}
+% ċ…äĵ ċ… \pkg{biblatex} ċċŒ…çš„é˘ċ¤–选éĦıċˆ—èĦ¨€‚
+% \end{function}
+%
+% ĉœĴĉ¨Ħĉżä¸­ \pkg{biblatex} ċıĥ不ĉ˜Żĉ˜ċĵè½½ċ…çš„€‚
+% ċĤ‚需ċœ¨ċ…ĥċŸşçĦ€ä¸Šèż›èĦŒä¸€äş›ċšċˆĥïĵŒċŻä½żç”¨ĉœĴèç½éĦıè½½ċ…ċċŒ…选éĦı\cite{biblatex}€‚
+%
% \begin{function}[added=2021-12-19]{bib/resource}
% \begin{syntax}
% resource = \Arg{ĉ–‡äğĥ}
@@ -1335,24 +1363,40 @@ To produce the documentation run the original source files ending with
% ĉ·ğċŠ ċ‚考ĉ–‡çŒĉşĉ–‡äğĥ€‚为了与 \pkg{biblatex} èż›èĦŒċ…ĵċıïĵŒäıŸċŻä½żç”¨ĉœĴċ‘½äğ¤ĉ·ğċŠ ĉ•°ĉĉş€‚ĉœĴċ‘½äğ¤ä¸ĉ”ŻĉŒé€—ċ·ċˆ†éš”ċ¤šä¸Şĉ–‡äğĥ的ċ½˘ċĵïĵŒċĤ‚ĉžœċ¸Œĉœ›é˘ċ¤–ĉ·ğċŠ ċ‚考ĉ–‡çŒċˆ—èĦ¨ïĵŒéœ€èĤċœ¨ċŻĵ言ċŒşä¸­ċ¤šĉĴĦ调用€‚
% \end{function}
%
-% 示ä‹ċ‚考ĉ–‡çŒċ­˜ċ‚¨äşŽ \file{njuthesis-sample.bib}ïĵŒç›´ĉŽċ‘ċ…ĥ中粘贴ĉ–°çš„ċ‚考ĉ–‡çŒċ³ċŻ€‚
-%
% ċŻäğċ‚考ċĤ‚下范ä‹èż›èĦŒċ‚考ĉ–‡çŒè罀‚
+% ċ…ĥ中 \opt{bib/option} 的ċ†…ċıĉ—¨ċœ¨ċ…³é—­éƒ¨ċˆ†ä¸éœ€ĉ˜ç¤şçš„ĉ–‡çŒäżĦĉŻïĵŒċŻĉ ıĉéœ€èĤä½żç”¨€‚
% \begin{latexexample}[moretexcs={\njusetup},emph={[2]bib}]
% \njusetup {
% bib = {
-% style = author-year,
-% resource = {njuthesis-sample.bib}
+% style = author-year,
+% resource = {njuthesis-sample.bib}ïĵŒ
+% option = {
+% doi = false,
+% isbn = false,
+% url = false,
+% eprint = false
+% }
% }
% }
% \end{latexexample}
%
+%
+% \subsubsection{ċ‚考ĉ–‡çŒèĦ¨}
+%
% \begin{function}{\printbibliography}
-% 生ĉˆċ‚考ĉ–‡çŒèĦ¨éĦµé˘€‚
+% 生ĉˆċ‚考ĉ–‡çŒèĦ¨€‚
% \end{function}
%
% ĉ˜ç„ĥċŞĉœ‰è˘Ğċĵ•ç”¨èż‡çš„ĉĦç›ĉ‰äĵšè˘Ğè“ċ‡şè‡³ċ‚考ĉ–‡çŒèĦ¨€‚
%
+% ċ‡ċĤ‚需èĤċœ¨ĉŻçĞ ĉœĞċ°é™„上ċ•ç‹Ĵ的ċ‚考ĉ–‡çŒèĦ¨ïĵŒċŻĵ言ċŒşĉ·ğċŠ äğ下èç½ïĵŒ
+% ċıĥċœ¨ĉŻçĞ ċŽä½żç”¨ \cs{printbibliography} ċ³ċŻ€‚
+% \begin{latexexample}[moretexcs={\njusetup},emph={[2]bib}]
+% \njusetup {
+% bib = { option = { refsection = chapter } }
+% }
+% \end{latexexample}
+%
% ċĤ‚ĉžœċĵ€ċŻäş†è‰ç¨żĉ¨ĦċĵïĵŒĉ‚¨ċŻèƒ½äĵšĉ³¨ĉ„ċˆ°éƒ¨ċˆ†ĉĦç›ċ­˜ċœ¨èĥ…ċ½çš„é—é˘˜ïĵŒèż™ĉ—ĥċ°ħèĤĉžœĉ–­ċ‡è£…ĉ²Ħĉœ‰çœ‹ċˆ°€‚
% èŻé—é˘˜çš„äş§ç”Ÿĉ˜Żç”ħ于 \hologo{LaTeX} 中ċŞĉœ‰ċ›şċšçš„ċ­—ĉŻçğ„ċˆä¸­é—´ċŻäğĉ–­èĦŒ€‚ä½żĉĦç›ċ³ä§ċı³é½çš„ĉ–ıĉ³•ĉœ‰ċĤ‚下两种
% \footnote{èŻĤ见 \url{https://github.com/nju-lug/NJUThesis/issues/57}€‚ċˆä¸ċı¸ïĵŒ\pkg{microtype} 与 \pkg{babel} ĉ²Ħ能ċœ¨ĉˆ‘äğĴ的ĉ¨Ħĉżä¸­è§£ċ†³é—é˘˜€‚}ïĵš
@@ -1442,9 +1486,9 @@ To produce the documentation run the original source files ending with
% \end{function}
%
% ĉœĴ科生ĉ¨Ħĉżäğ…äĵšç”Ÿĉˆä¸­ĉ–‡ċ°é˘ïĵ›ç ”çİĥ生ĉ¨Ħĉżäĵšç”Ÿĉˆä¸­è‹ħĉ–‡ċ°é˘€‚
-% ċĤ‚ĉžœé€‰ĉ‹İ了 \opt{nlcover}ïĵŒäğ…äĵšç”Ÿĉˆç ”çİĥ生的ċ›½ċĥċ›äıĤéĤ†ċ°é˘€‚
-% ċĤ‚ĉžœé€‰ĉ‹İ了 \opt{decl-page}ïĵŒäĵšċœ¨ċ°é˘ċŽç”ŸĉˆĉœĴç§‘ç”Ÿçš„èŻšäżĦĉ‰żèŻşäıĤĉˆ–ç ”çİĥ生的ċŽŸċˆ›ĉ€§ċ£°ĉ˜Ž€‚
-% ċœ¨ċŻç”¨è‰ç¨żĉ¨ĦċĵċŽċ°é˘çğ˜ċˆĥċ°†è˘ĞçĤç”¨€‚
+% ċĤ‚ĉžœé€‰ĉ‹İ了 \opt{nlcover}ïĵŒ\emph{äğ…äğ…}äĵšç”Ÿĉˆç ”çİĥ生的ċ›½ċĥċ›äıĤéĤ†ċ°é˘€‚
+% ċĤ‚ĉžœé€‰ĉ‹İ了 \opt{decl-page}ïĵŒäĵšċœ¨ċ°é˘ċŽç”ŸĉˆĉœĴç§‘ç”Ÿçš„èŻšäżĦĉ‰żèŻşäıĤĉˆ–ç ”çİĥ生的
+% ċŽŸċˆ›ĉ€§ċ£°ĉ˜Ž€‚ċœ¨ċŻç”¨è‰ç¨żĉ¨ĦċĵċŽċ°é˘çğ˜ċˆĥċ°†è˘ĞçĤç”¨€‚
%
% \paragraph{ċ°é˘ċ›ç‰‡}
%
@@ -1462,7 +1506,9 @@ To produce the documentation run the original source files ending with
% ĉ Ħċċ›ç‰‡ĉ–‡äğĥ€‚
% \end{function}
%
-% é€šèż‡äğ上两个选éĦıċŻäğä½żç”¨ċ¤–ç½çš„ĉ Ħċ½ċ’Œĉ Ħċċ›ç‰‡€‚ĉœĴĉ¨Ħĉżċ°é˘ä¸­ĉ Ħċ½ċŠĉ Ħċçš„çğ˜ċˆĥéğ˜è¤äèµ– \pkg{njuvisual} ċċŒ…ĉä›çš„ \pkg{tikz} 矢量ĉ›²çşżïĵŒè€—ĉ—ĥèƒé•żïĵŒċœ¨ĉ›żĉ˘ä¸şċ¤–ç½ċ›ç‰‡ċŽċŻèŠ‚省çşĤ1秒的çĵ–èŻ‘ĉ—ĥ长€‚
+% é€šèż‡äğ上两个选éĦıċŻäğä½żç”¨ċ¤–ç½çš„ĉ Ħċ½ċ’Œĉ Ħċċ›ç‰‡€‚ĉœĴĉ¨Ħĉżċ°é˘ä¸­ĉ Ħċ½ċŠĉ Ħċçš„çğ˜ċˆĥ
+% éğ˜è¤äèµ– \pkg{njuvisual} ċċŒ…ĉä›çš„ \pkg{tikz} 矢量ĉ›²çşżïĵŒè€—ĉ—ĥèƒé•żïĵŒ
+% ċœ¨ĉ›żĉ˘ä¸şċ¤–ç½ċ›ç‰‡ċŽċŻèŠ‚省çşĤ1秒的çĵ–èŻ‘ĉ—ĥ长€‚
%
%
% \subsubsection{ĉ‘˜èĤéĦµ}
@@ -1482,6 +1528,14 @@ To produce the documentation run the original source files ending with
% \end{abstract*}
% \end{latexexample}
%
+% \begin{function}[added=2022-02-04]{style/abstract-in-toc}
+% \begin{syntax}
+% abstract-in-toc = <\TTF>
+% \end{syntax}
+% ĉ˜ŻċĤċ°†ĉ‘˜èĤĉĦç›ĉ’ċ…ç›ċ½•ïĵŒéğ˜è¤ċĵ€ċŻ€‚
+% ċ…³é—­ĉ­¤é€‰éĦıċŽĉ‘˜èĤéĦµċ°†ä¸äĵšċ‡şçŽ°ċœ¨ç›ċ½•ä¸­ïĵŒäğ…äżç•™ċ…ĥ PDF äıĤ筀‚
+% \end{function}
+%
%
% \subsubsection{ċ‰è¨€éĦµ}
%
@@ -1515,7 +1569,29 @@ To produce the documentation run the original source files ending with
% listtablename = { èĦ¨ĉ ĵĉ¸…ċ• }
% }
% \end{latexexample}
-% ċžé™…上ïĵŒĉ ıĉ€Šċ­Ĥ位èşĉ–‡çĵ–ċ†™è§„ċˆ™€‹ċ›½ċĥĉ ‡ċ‡†\cite{gb-t-7713.1-2006}ïĵŒċ°½çĦ“ç›ċ½•â€èż™ä¸€èŻ´ĉ³•ċ·²ĉµäĵ ç”šċıżïĵŒä½†ċ­Ĥ位èşĉ–‡ä¸­ç†ċş”ä½żç”¨â€œç›ĉĴĦâ€èż™ä¸€ċç§°ĉĉŒ‡äğ£çŻ‡ç›çš„ċˆ—èĦ¨€‚
+% ċžé™…上ïĵŒĉ ıĉ€Šċ­Ĥ位èşĉ–‡çĵ–ċ†™è§„ċˆ™€‹ċ›½ċĥĉ ‡ċ‡†\cite{gb-t-7713.1-2006}ïĵŒ
+% ċ°½çĦ“ç›ċ½•â€èż™ä¸€èŻ´ĉ³•ċ·²ĉµäĵ ç”šċıżïĵŒä½†ċ­Ĥ位èşĉ–‡ä¸­ç†ċş”ä½żç”¨â€œç›ĉĴĦâ€èż™ä¸€ċç§°
+% ĉĉŒ‡äğ£çŻ‡ç›çš„ċˆ—èĦ¨€‚
+%
+% \begin{function}[added=2022-02-04]{style/toc-in-toc}
+% \begin{syntax}
+% toc-in-toc = <\TTF>
+% \end{syntax}
+% ĉ˜ŻċĤċœ¨ç›ċ½•ä¸­ĉ˜ç¤şç›ċ½•è‡ŞèşĞ的ĉĦç›ïĵŒéğ˜è¤ċĵ€ċŻ€‚ċ…³é—­ĉ­¤é€‰éĦıċŽç›ċ½•€
+% ĉ’ċ›ç›ċ½•ċ’ŒèĦ¨ĉ ĵç›ċ½•ċ°†ä¸äĵšċ‡şçŽ°ċœ¨ç›ċ½•ä¸­ïĵŒäğ…äżç•™ċ…ĥ PDF äıĤ筀‚
+% \end{function}
+%
+%
+% \subsubsection{çĴĤċ·èĦ¨}
+%
+% \begin{function}{notation,notation*}
+% \begin{syntax}
+% \tn{begin}\{notation\}\oarg{èŻ´ĉ˜Žċ½ċşĤ}\oarg{çĴĤċ·ċ½ċşĤ}
+% \quad\tn{item}\oarg{çĴĤċ·} \meta{èŻ´ĉ˜Ž}
+% \tn{end}\{notation\}
+% \end{syntax}
+% çĴĤċ·èĦ¨€‚ċ¸Ĥĉœ‰ĉ˜Ÿċ·çš„çĴĤċ·èĦ¨çŽŻċ˘ƒä¸äĵšĉ’ċ…ç›ċ½•€‚
+% \end{function}
%
%
% \subsubsection{è‡´è°˘éĦµ}
@@ -1573,10 +1649,10 @@ To produce the documentation run the original source files ending with
%
% è§†è§‰èŻ†ċˆĞç³ğçğŸ \pkg{njuvisual} 现ċ·²è˘Ğċˆ†çĤğ为ç‹ĴçĞ‹ċċŒ…\cite{njuvisual}ïĵŒċŸşĉœĴä½żç”¨ĉ–ıĉ³•ä¸ä‹ċĤ‚下ïĵš
% \begin{latexexample}[moretexcs={\njuemblem,\njuname,\njuname*}]
-% \njuemblem{!}{3cm} % 生ĉˆĉŒ‡ċšċ¤§ċ°çš„ç´Ğ色ċ—ċ¤§ĉ Ħċ½
-% \njuname{4cm}{!} % 生ĉˆĉŒ‡ċšċ¤§ċ°çš„ç´Ğ色ċ—ċ¤§ä¸­ĉ–‡ĉ Ħċ
-% \njuname*{4cm}{!} % 生ĉˆĉŒ‡ċšċ¤§ċ°çš„ç´Ğ色ċ—ċ¤§è‹ħĉ–‡ĉ Ħċ
-% \njuemblem[black]{!}{3cm} % éğ‘色的ċ—ċ¤§ĉ Ħċ½
+% \njuemblem{!}{3cm} % 生ĉˆéИ 3cm 的ç´Ğ色ĉ Ħċ½
+% \njuname{4cm}{!} % 生ĉˆċ½ 4cm 的ç´Ğ色中ĉ–‡ĉ Ħċ
+% \njuname*{4cm}{!} % 生ĉˆċ½ 4cm 的ç´Ğ色è‹ħĉ–‡ĉ Ħċ
+% \njuemblem[black]{!}{3cm} % éğ‘色的ĉ Ħċ½
% \njuemblem[department=dii]{!}{4cm} % ç´Ğ色ċŒĦ院ċ½ĉ ‡
% \njuemblem[department=cs,color=blue]{!}{3cm} % çşŻè“è‰²èĦ科ċ½ĉ ‡
% \end{latexexample}
@@ -1651,6 +1727,14 @@ To produce the documentation run the original source files ending with
%
% \subsection*{ċċŒ…}
%
+% \bibitem{biblatex}
+% \textsc{Lehman P}, \textsc{Wright J}, \textsc{Boruvka A}, \textsc{Kime P}.
+% \newblock \textit{Sophisticated Bibliographies in \hologo{LaTeX}} [EB/OL].
+% \newblock version 3.17,
+% \newblock (2022-02-02)
+% \urlprefix\url{https://ctan.org/pkg/biblatex}
+% \urlprefix\CTANurl[ĉ–‡ĉĦ£ïĵš]{macros/latex/contrib/biblatex/doc/biblatex.pdf}
+%
% \bibitem{biblatex-gb7714-2015}
% èƒĦĉŒŻéœ‡.
% \newblock \textit{çĴĤċˆ GB/T 7714-2015 ĉ ‡ċ‡†çš„ biblatex ċ‚考ĉ–‡çŒĉ ·ċĵ} [EB/OL].
@@ -1794,9 +1878,9 @@ To produce the documentation run the original source files ending with
% “|*|”ċ’Œâ€œ|/|”的 guard ċ‡şçŽ°ċœ¨èĦŒċ·ċ³ä§ïĵŒċƒäğĴ用ĉçĦċš
% ċ•ç‹Ĵ一èĦŒäğ£ç çš„ċ½’ċħž€‚èż™äş› guard çš„é˘œè‰²ĉ·ħĉµ…不一ïĵŒç”¨äğĉ˜ŽçĦċµŒċ—ċ…³ç³ğ€‚
%
-% ċĤĉœ‰è‹ċı²ċŒ…ċĞ \textsf{\color{at@guard}@@} 的 guardïĵŒç”¨äğèĦ¨ç¤şċçİşé—´ïĵˆĉ¨Ħċ—ïĵ‰€‚
+% ċĤĉœ‰è‹ċı²ċŒ…ċĞ \grd{@@} 的 guardïĵŒç”¨äğèĦ¨ç¤şċçİşé—´ïĵˆĉ¨Ħċ—ïĵ‰€‚
% ċœ¨ċˆ é™¤ĉ³¨é‡Šç”Ÿĉˆĉ ĵċĵĉ–‡äğĥĉ—ĥïĵŒĉşäğ£ç ċ˜é‡ċç§°ä¸­çš„ |@@| äĵšè˘Ğ等ċ·ċŽçš„ċ­—ĉµĉ›żĉ˘ïĵŒ
-% è­ĴċĤ‚ċœ¨ĉœĴĉ¨Ħĉżä¸­ \textsf{\color{at@guard}âŒİ@@=nju〉}€‚
+% è­ĴċĤ‚ċœ¨ĉœĴĉ¨Ħĉżä¸­ \grd{âŒİ@@=nju〉}€‚
%
%
% \subsection{ċ‡†ċ¤‡}
@@ -1834,7 +1918,7 @@ To produce the documentation run the original source files ending with
The~ njuthesis~ class~ requires~ either~
XeTeX~ or~ LuaTeX. \\
"#1"~ is~ not~ supported~ at~ present.~
- You~ must~ change your~ typesetting~ engine~
+ You~ must~ change~ your~ typesetting~ engine~
to~ "xelatex"~ or~ "lualatex".
}
\sys_if_engine_xetex:F
@@ -1989,6 +2073,19 @@ To produce the documentation run the original source files ending with
% \end{macrocode}
% \end{macro}
%
+% \begin{macro}{\@@_vskip:N}
+% çħğäĵĵ于 \hologo{LaTeX2e} 中的 \tn{vspace*}ïĵŒäğŽä¸Šä¸€ä¸ŞéĦµé˘ċ…ƒç´ ċş•éƒ¨ċĵ€ċ§‹ç”Ÿĉˆ |skip|€‚
+% \begin{macrocode}
+\cs_new_protected:Npn \@@_vskip:N #1
+ {
+ \hrule height \c_zero_dim
+ \nobreak
+ \skip_vertical:n { - \baselineskip - \lineskip }
+ \skip_vertical:N #1
+ }
+% \end{macrocode}
+% \end{macro}
+%
% \begin{macro}{\@@_define_name:nn,\@@_define_name:nnn}
% 用ĉċšäı‰éğ˜è¤ċç§°çš„è…ċŠİċ‡½ĉ•°€‚
% \begin{macrocode}
@@ -2151,7 +2248,7 @@ To produce the documentation run the original source files ending with
% \end{macrocode}
% \end{macro}
%
-% \begin{macro}{\@@_uline_entry:nnnn}
+% \begin{macro}{\@@_uline_entry:Nnnn}
% 生ĉˆċ ĉ•´éĦµċ½ċşĤ的下ċˆ’çşżĉĦ盀‚
% \begin{arguments}
% \item ċ½ċşĤïĵŒ|dim| ċž‹ċ˜é‡
@@ -2160,7 +2257,7 @@ To produce the documentation run the original source files ending with
% \item ċˆ†éš”çĴĤ
% \end{arguments}
% \begin{macrocode}
-\cs_new_protected:Npn \@@_uline_entry:nnnn #1#2#3#4
+\cs_new_protected:Npn \@@_uline_entry:Nnnn #1#2#3#4
{
\@@_full_uline:NV #1 { \@@_name:n { #2 } #4 }
\@@_ulined_center_box:nn { #1 } { \@@_info:n { #3 } }
@@ -2168,7 +2265,7 @@ To produce the documentation run the original source files ending with
% \end{macrocode}
% \end{macro}
%
-% \begin{macro}{\@@_uline_bientry:nnnn}
+% \begin{macro}{\@@_uline_bientry:Nnnn}
% 生ĉˆċ ċŠéĦµċ½ċşĤ的下ċˆ’çşżĉĦ盀‚
% \begin{arguments}
% \item ċ½ċşĤïĵŒ|dim| ċž‹ċ˜é‡
@@ -2177,7 +2274,7 @@ To produce the documentation run the original source files ending with
% \item ċˆ†éš”çĴĤ
% \end{arguments}
% \begin{macrocode}
-\cs_new_protected:Npn \@@_uline_bientry:nnnn #1#2#3#4
+\cs_new_protected:Npn \@@_uline_bientry:Nnnn #1#2#3#4
{
\@@_full_uline:NV #1 { \@@_name:n { #2 } #4 }
\dim_sub:Nn #1 { \textwidth / 2 }
@@ -2338,6 +2435,7 @@ To produce the documentation run the original source files ending with
{
{ acknowledgement } { 致\hspace{2em}è°˘ },
{ id } { ċ­Ĥċ· },
+ { notation } { çĴĤċ·èĦ¨ },
{ orig_date } { ĉ—ĉœŸ },
{ paperlist } { ċ‘èĦ¨ĉ–‡çĞ ç›ċ½• },
{ pdf_creator } { LaTeX~ with~ njuthesis~ class },
@@ -2420,8 +2518,8 @@ To produce the documentation run the original source files ending with
{ confer } { ċ­Ĥ位ĉŽˆäşˆċ•ä½ċ’Œĉ—ĉœŸ },
{ df_date } { èşĉ–‡ç­”èİĉ—ĉœŸ },
{ degree } { ç”³èŻ·ċ­Ĥä½çş§ċˆĞ },
- { degree_l } { ïĵˆç”³èŻ· },
- { degree_r } { ċ­Ĥ位ïĵ‰ },
+ { apply }
+ { ïĵˆç”³èŻ· \l_@@_info_degree_tl ċ­Ĥ位ïĵ‰ },
{ field } { 研çİĥĉ–ıċ‘ },
{ g } { 研çİĥ生 },
{ grade } { 级 },
@@ -2503,133 +2601,6 @@ To produce the documentation run the original source files ending with
% \end{macrocode}
%
%
-% \subsection{个人äżĦĉŻ}
-% \changes{v0.11}{2021/10/01}{ċ°†ä¸ŞäşşäżĦĉŻċ˜é‡ċĉ”ı为ċ°ċ†™ċ­—ĉŻċŠ èżžċ­—çĴĤ的ċ½˘ċĵ€‚}
-%
-% \begin{macrocode}
-\keys_define:nn { nju / info }
- {
-% \end{macrocode}
-%
-% \begin{macro}{info/title,info/title*}
-% \changes{v0.13}{2021/12/12}{ç€ċŒ–ċ¤šèĦŒĉ ‡é˘˜çš„è“ċ…ĉ–ıċĵ€‚}
-% \changes{v0.14}{2022/01/14}{ċ°†ĉ ‡é˘˜ĉ–­èĦŒĉŽ§ċˆĥçĴĤäżĉ”ı为 |\\|€‚}
-% 题盀‚中ĉ–‡é˘˜ç›ċŻä½żç”¨ |\\| ĉ‰‹ċŠ¨ĉ–­èĦŒ€‚äğ下ĉ ‡ĉ³¨ĉ˜Ÿċ·ïĵˆ|*|ïĵ‰çš„皆为ċŻıċş”çš„è‹ħĉ–‡ċ­—ĉµ€‚
-% \begin{macrocode}
- title .tl_set:N = \l_@@_info_title_tl,
- title .initial:n = { çİş },
- title* .tl_set:N = \l_@@_info_title_en_tl,
-% \end{macrocode}
-% \end{macro}
-%
-% \begin{macro}{info/keywords,info/keywords*}
-% \changes{v0.11}{2021/10/01}{äżĉ”ı了ĉ·ğċŠ ċ…³é”èŻçš„ĉ–ıċĵ€‚}
-% ċ…³é”èŻċˆ—èĦ¨€‚
-% \begin{macrocode}
- keywords .clist_set:N = \l_@@_info_keywords_clist,
- keywords* .clist_set:N = \l_@@_info_keywords_en_clist,
-% \end{macrocode}
-% \end{macro}
-%
-% \begin{macro}{info/grade,info/student-id,info/author,info/author*}
-% ċı´çş§€ċ­Ĥċ·€ċ§“ċ€‚
-% \begin{macrocode}
- grade .tl_set:N = \l_@@_info_grade_tl,
- student-id .tl_set:N = \l_@@_info_id_tl,
- author .tl_set:N = \l_@@_info_author_tl,
- author* .tl_set:N = \l_@@_info_author_en_tl,
-% \end{macrocode}
-% \end{macro}
-%
-% \begin{macro}{info/department,info/department*,info/major,info/major*,info/field,info/field*}
-% 院ç³ğ€ä¸“业€ĉ–ıċ‘€‚
-% \begin{macrocode}
- department .tl_set:N = \l_@@_info_dept_tl,
- department* .tl_set:N = \l_@@_info_dept_en_tl,
- major .tl_set:N = \l_@@_info_major_tl,
- major* .tl_set:N = \l_@@_info_major_en_tl,
- field .tl_set:N = \l_@@_info_field_tl,
- field* .tl_set:N = \l_@@_info_field_en_tl,
-% \end{macrocode}
-% \end{macro}
-%
-% \begin{macro}{info/supervisor,info/supervisor*}
-% \changes{v0.13}{2021/12/11}{äżĉ”ı了ċŻĵċ¸ˆé€‰éĦı的ċ˜é‡ċç§°€‚}
-% \changes{v0.14}{2022/01/12}{ç²ç€ċŻĵċ¸ˆäżĦĉŻé€‰éĦı€‚}
-% ċŻĵċ¸ˆäżĦĉŻ€‚中ĉ–‡ċŻĵċ¸ˆċ…¨ç§°ä½żç”¨ |clist| ċ­˜ċ‚¨ïĵŒäżäşŽċœ¨ĉœĴ科生ċ°é˘ä¸­èż›èĦŒċˆ†ċ‰²€‚
-% \begin{macrocode}
- supervisor .clist_set:N = \l_@@_info_supv_clist,
- supervisor* .tl_set:N = \l_@@_info_supv_en_tl,
-% \end{macrocode}
-% \end{macro}
-%
-% \begin{macro}{info/supervisor-ii,info/supervisor-ii*}
-% çĴĴ二ċŻĵċ¸ˆäżĦĉŻ€‚
-% \begin{macrocode}
- supervisor-ii .clist_set:N = \l_@@_info_supv_ii_clist,
- supervisor-ii* .tl_set:N = \l_@@_info_supv_ii_en_tl,
-% \end{macrocode}
-% \end{macro}
-%
-% \begin{macro}{info/submit-date}
-% \changes{v0.14}{2022/01/14}{ç²ç€ĉäş¤ĉ—ĉœŸé€‰éĦı€‚}
-% ĉäş¤ĉ—ĉœŸïĵŒċˆċ§‹ċ€ĵ为çĵ–èŻ‘ċ½“ċ¤İĉ—ĉœŸ€‚
-% \begin{macrocode}
- submit-date .tl_set:N = \l_@@_info_sm_date_raw_tl,
- submit-date .initial:V = \c_@@_today_tl,
-% \end{macrocode}
-% \end{macro}
-%
-% \begin{macro}{info/defend-date}
-% \changes{v0.14}{2022/01/14}{ç²ç€ç­”èİĉ—ĉœŸé€‰éĦı€‚}
-% 答èİĉ—ĉœŸ€‚
-% \begin{macrocode}
- defend-date .tl_set:N = \l_@@_info_df_date_raw_tl,
- defend-date .initial:V = \c_@@_today_tl,
-% \end{macrocode}
-% \end{macro}
-%
-% \begin{macro}{info/defend-date,info/chairman,info/reviewer}
-% 答èİċ§”ċ‘˜äĵšäżĦĉŻ€‚
-% \begin{macrocode}
- chairman .tl_set:N = \l_@@_info_chairman_tl,
- reviewer .clist_set:N = \l_@@_info_reviewer_clist,
-% \end{macrocode}
-% \end{macro}
-%
-% \begin{macro}{info/clc,info/secret-level,info/udc,info/supervisor-contact}
-% ċ›½ċĥċ›äıĤéĤ†ċ°é˘ç›¸ċ…³äżĦĉŻ€‚
-% \begin{macrocode}
- clc .tl_set:N = \l_@@_info_clc_tl,
- secret-level .tl_set:N = \l_@@_info_seclv_tl,
- udc .tl_set:N = \l_@@_info_udc_tl,
- supervisor-contact .tl_set:N = \l_@@_info_supv_cont_tl,
- }
-% \end{macrocode}
-% \end{macro}
-%
-% ĉ‹ĵċˆċŒċŻĵċ¸ˆçš„ċ§“ċċ’ŒèŒç§°€‚
-% \begin{macrocode}
-\bool_set:Nn \l_@@_second_supv_bool
- { ! \clist_if_empty_p:N \l_@@_info_supv_ii_clist }
-\tl_set:Nn \l_@@_info_supv_full_tl
- {
- \clist_use:Nn \l_@@_info_supv_clist { \@@_hskip: }
- \bool_if:NT \l_@@_second_supv_bool
- {
- \@@_quad:
- \clist_use:Nn \l_@@_info_supv_ii_clist { \@@_hskip: }
- }
- }
-\tl_set:Nn \l_@@_info_supv_full_en_tl
- {
- \l_@@_info_supv_en_tl
- \bool_if:NT \l_@@_second_supv_bool
- { \@@_quad: \l_@@_info_supv_ii_en_tl }
- }
-% \end{macrocode}
-%
-%
% \subsection{è½½ċ…ċċŒ…}
%
% \changes{v0.12}{2021/12/07}{重ĉ–°çğ„çğ‡ċċŒ…è½½ċ…éĦşċş€‚}
@@ -2687,6 +2658,7 @@ To produce the documentation run the original source files ending with
% \end{macrocode}
%
% \changes{v0.14}{2021/12/21}{ç§ğ除ċ†…ç½çš„ \pkg{hologo}€‚}
+% \changes{v0.15}{2022/01/17}{ç§ğ除ċ†…ç½çš„ \pkg{url}€‚}
% è½½ċ…ċ„种ċċŒ…€‚
% \begin{macrocode}
\RequirePackage
@@ -2720,10 +2692,6 @@ To produce the documentation run the original source files ending with
% \begin{macrocode}
enumitem,
% \end{macrocode}
-% \pkg{url} 用于生ĉˆé“ĉŽĉ–‡ĉœĴ€‚
-% \begin{macrocode}
- url,
-% \end{macrocode}
% ĉŒ‰äğ下éĦşċşċŠ è½½ä¸¤ä¸Şċ…³äşŽċĵ•ç”¨çš„ċŒ…€‚
% \pkg{hyperref} èĤ†ċ†™äş†ċ¤§é‡ċ‘½äğ¤ïĵŒċ› ĉ­¤éœ€èĤċœ¨ċ…ĥäğ–ċŒ…ĉœ€ċŽè½½ċ…€‚
% äğ…ĉœ‰ \pkg{cleveref} 需èĤċœ¨ \pkg{hyperref} ċŽè½½ċ…ïĵŒċĤċˆ™äĵšĉŠé”™€‚
@@ -2784,9 +2752,168 @@ To produce the documentation run the original source files ending with
% \end{macrocode}
%
%
+% \subsection{个人äżĦĉŻ}
+% \changes{v0.11}{2021/10/01}{ċ°†ä¸ŞäşşäżĦĉŻċ˜é‡ċĉ”ı为ċ°ċ†™ċ­—ĉŻċŠ èżžċ­—çĴĤ的ċ½˘ċĵ€‚}
+% \changes{v0.15}{2022/01/22}{ċ°†ä¸ŞäşşäżĦĉŻèç½ç§ğċˆ°è½½ċ…ċċŒ…ċŽ€‚}
+%
+% \begin{macrocode}
+\keys_define:nn { nju / info }
+ {
+% \end{macrocode}
+%
+% \begin{macro}{info/title,info/title*}
+% \changes{v0.13}{2021/12/12}{ç€ċŒ–ċ¤šèĦŒĉ ‡é˘˜çš„è“ċ…ĉ–ıċĵ€‚}
+% \changes{v0.14}{2022/01/14}{ċ°†ĉ ‡é˘˜ĉ–­èĦŒĉŽ§ċˆĥçĴĤäżĉ”ı为 |\\|€‚}
+% 题盀‚中ĉ–‡é˘˜ç›ċŻä½żç”¨ |\\| ĉ‰‹ċŠ¨ĉ–­èĦŒ€‚äğ下ĉ ‡ĉ³¨ĉ˜Ÿċ·ïĵˆ|*|ïĵ‰çš„皆为ċŻıċş”çš„è‹ħĉ–‡ċ­—ĉµ€‚
+% \begin{macrocode}
+ title .tl_set:N = \l_@@_info_title_tl,
+ title .initial:n = { çİş },
+ title* .tl_set:N = \l_@@_info_title_en_tl,
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{info/keywords,info/keywords*}
+% \changes{v0.11}{2021/10/01}{äżĉ”ı了ĉ·ğċŠ ċ…³é”èŻçš„ĉ–ıċĵ€‚}
+% ċ…³é”èŻċˆ—èĦ¨€‚
+% \begin{macrocode}
+ keywords .clist_set:N = \l_@@_info_keywords_clist,
+ keywords* .clist_set:N = \l_@@_info_keywords_en_clist,
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{info/grade,info/student-id,info/author,info/author*}
+% ċı´çş§€ċ­Ĥċ·€ċ§“ċ€‚
+% \begin{macrocode}
+ grade .tl_set:N = \l_@@_info_grade_tl,
+ student-id .tl_set:N = \l_@@_info_id_tl,
+ author .tl_set:N = \l_@@_info_author_tl,
+ author* .tl_set:N = \l_@@_info_author_en_tl,
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{info/department,info/department*,info/major,info/major*,info/field,info/field*}
+% 院ç³ğ€ä¸“业€ĉ–ıċ‘€‚
+% \begin{macrocode}
+ department .tl_set:N = \l_@@_info_dept_tl,
+ department* .tl_set:N = \l_@@_info_dept_en_tl,
+ major .tl_set:N = \l_@@_info_major_tl,
+ major* .tl_set:N = \l_@@_info_major_en_tl,
+ field .tl_set:N = \l_@@_info_field_tl,
+ field* .tl_set:N = \l_@@_info_field_en_tl,
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{info/supervisor,info/supervisor*}
+% \changes{v0.13}{2021/12/11}{äżĉ”ı了ċŻĵċ¸ˆé€‰éĦı的ċ˜é‡ċç§°€‚}
+% \changes{v0.14}{2022/01/12}{ç²ç€ċŻĵċ¸ˆäżĦĉŻé€‰éĦı€‚}
+% ċŻĵċ¸ˆäżĦĉŻ€‚中ĉ–‡ċŻĵċ¸ˆċ…¨ç§°ä½żç”¨ |clist| ċ­˜ċ‚¨ïĵŒäżäşŽċœ¨ĉœĴ科生ċ°é˘ä¸­èż›èĦŒċˆ†ċ‰²€‚
+% \begin{macrocode}
+ supervisor .clist_set:N = \l_@@_info_supv_clist,
+ supervisor* .tl_set:N = \l_@@_info_supv_en_tl,
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{info/supervisor-ii,info/supervisor-ii*}
+% çĴĴ二ċŻĵċ¸ˆäżĦĉŻ€‚
+% \begin{macrocode}
+ supervisor-ii .clist_set:N = \l_@@_info_supv_ii_clist,
+ supervisor-ii* .tl_set:N = \l_@@_info_supv_ii_en_tl,
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{info/submit-date}
+% \changes{v0.14}{2022/01/14}{ç²ç€ĉäş¤ĉ—ĉœŸé€‰éĦı€‚}
+% ĉäş¤ĉ—ĉœŸïĵŒċˆċ§‹ċ€ĵ为çĵ–èŻ‘ċ½“ċ¤İĉ—ĉœŸ€‚
+% \begin{macrocode}
+ submit-date .tl_set:N = \l_@@_info_sm_date_raw_tl,
+ submit-date .initial:V = \c_@@_today_tl,
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{info/defend-date}
+% \changes{v0.14}{2022/01/14}{ç²ç€ç­”èİĉ—ĉœŸé€‰éĦı€‚}
+% 答èİĉ—ĉœŸ€‚
+% \begin{macrocode}
+ defend-date .tl_set:N = \l_@@_info_df_date_raw_tl,
+ defend-date .initial:V = \c_@@_today_tl,
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{info/defend-date,info/chairman,info/reviewer}
+% 答èİċ§”ċ‘˜äĵšäżĦĉŻ€‚
+% \begin{macrocode}
+ chairman .tl_set:N = \l_@@_info_chairman_tl,
+ reviewer .clist_set:N = \l_@@_info_reviewer_clist,
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{info/clc,info/secret-level,info/udc,info/supervisor-contact}
+% ċ›½ċĥċ›äıĤéĤ†ċ°é˘ç›¸ċ…³äżĦĉŻ€‚
+% \begin{macrocode}
+ clc .tl_set:N = \l_@@_info_clc_tl,
+ secret-level .tl_set:N = \l_@@_info_seclv_tl,
+ udc .tl_set:N = \l_@@_info_udc_tl,
+ supervisor-contact .tl_set:N = \l_@@_info_supv_cont_tl,
+ }
+% \end{macrocode}
+% \end{macro}
+%
+% \changes{v0.15}{2022/01/22}{ĉ­£çĦċ¤„理ċŒċŻĵċ¸ˆäżĦĉŻ€‚}
+% ċœ¨ċŻĵ言ċŒşċ½•ċ…用ĉˆ·äżĦĉŻċŽèż›èĦŒċ˜é‡è罀‚ĉ­¤ċ¤„ä½żç”¨ċˆ°äş† \pkg{ctex} ĉä›çš„ċ‘½äğ¤ïĵŒċş”ċ½“ä½äşŽè½½ċ…ĉ–‡ĉĦ£çħğäı‹ċŽ€‚
+% \begin{macrocode}
+\ctex_at_end_preamble:n
+ {
+% \end{macrocode}
+% ĉ‹ĵċˆċŒċŻĵċ¸ˆçš„ċ§“ċċ’ŒèŒç§°€‚
+% \begin{macrocode}
+ \bool_set:Nn \l_@@_second_supv_bool
+ { ! \clist_if_empty_p:N \l_@@_info_supv_ii_clist }
+ \tl_set:Nx \l_@@_info_supv_full_tl
+ {
+ \clist_use:Nn \l_@@_info_supv_clist { \@@_hskip: }
+ \bool_if:NT \l_@@_second_supv_bool
+ {
+ \@@_quad:
+ \clist_use:Nn \l_@@_info_supv_ii_clist { \@@_hskip: }
+ }
+ }
+ \tl_set:Nx \l_@@_info_supv_full_en_tl
+ {
+ \l_@@_info_supv_en_tl
+ \bool_if:NT \l_@@_second_supv_bool
+ { \@@_quad: \l_@@_info_supv_ii_en_tl }
+ }
+% \end{macrocode}
+% ċ°† ISO ĉ ĵċĵçš„ċŽŸċ§‹ĉ—ĉœŸċ­—çĴĤ串ĉ ĵċĵċŒ–为中ĉ–‡ĉ—ĉœŸèĦ¨ç¤şïĵŒèŻċ­—çĴĤ串需èĤèż›èĦŒċħ•ċĵ€€‚
+% \begin{macrocode}
+ \tl_set:Nn \l_@@_info_sm_date_tl
+ {
+ \exp_last_unbraced:NV
+ \@@_date:www \l_@@_info_sm_date_raw_tl \q_stop
+ }
+% \end{macrocode}
+% è‹ħĉ–‡ĉäş¤ĉ—ĉœŸäğċŠç­”èİĉ—ĉœŸäğ…用于研çİĥ生ċ°é˘€‚
+% \begin{macrocode}
+ \int_compare:nF { \l_@@_info_degree_int == 1 }
+ {
+ \tl_set:Nn \l_@@_info_sm_date_en_tl
+ {
+ \exp_last_unbraced:NV
+ \@@_date_en:www \l_@@_info_sm_date_raw_tl \q_stop
+ }
+ \tl_set:Nn \l_@@_info_df_date_tl
+ {
+ \exp_last_unbraced:NV
+ \@@_date:www \l_@@_info_df_date_raw_tl \q_stop
+ }
+ }
+ }
+% \end{macrocode}
+%
+%
% \subsection{ċ­—体èç½}
%
-% \pkg{fontspec} ċ·²ċœ¨ C\hologo{TeX} ċ—äğĥ中ċŒ…ċĞïĵŒĉ— éœ€ċĤèĦŒè½½ċ…€‚
+% \pkg{fontspec} ċŒ…ċĞ于 \pkg{ctex} ċé›†ïĵŒĉ— éœ€ċĤèĦŒè½½ċ…€‚
%
% \subsubsection{ĉ“ä½œç³ğçğŸĉ£€ĉµ‹}
%
@@ -2802,8 +2929,8 @@ To produce the documentation run the original source files ending with
% \end{macrocode}
%
% èż›èĦŒç³ğçğŸĉ£€ĉµ‹€‚
-% ĉ£€ĉµ‹ Windows 的ċ‘½äğ¤ç”ħ\pkg{l3kernal}ĉä›ïĵŒ
-% ĉ£€ĉµ‹ macOS 的ċ‘½äğ¤ç”ħ\pkg{ctex}ĉä›ïĵŒ
+% ĉ£€ĉµ‹ Windows 的ċ‘½äğ¤ç”ħ \pkg{l3kernel} ĉä›ïĵŒ
+% ĉ£€ĉµ‹ macOS 的ċ‘½äğ¤ç”ħ \pkg{ctex} ĉä›ïĵŒ
% èż™ä¸¤ç§ĉƒ…ċ†µċ¤–çš„ç³ğçğŸè˘Ğċˆ¤ĉ–­ä¸ş LinuxïĵŒä¸€ċ‹ä½żç”¨è‡Şç”ħċ­—体€‚
% \begin{macrocode}
\bool_if:NT \g_@@_load_sys_font_bool
@@ -2880,6 +3007,14 @@ To produce the documentation run the original source files ending with
%
% \subsubsection{ċšäı‰ä¸­ĉ–‡ċ­—ċş“}
%
+% \begin{macro}{\@@_diable_no_script_msg:}
+% ç§ğ除 |does not contain script "CJK"| è­Ĥċ‘Š€‚
+% \begin{macrocode}
+\cs_new_protected:Npn \@@_diable_no_script_msg:
+ { \msg_redirect_name:nnn { fontspec } { no-script } { info } }
+% \end{macrocode}
+% \end{macro}
+%
% \begin{macro}{\@@_load_cjk_font_win:}
% Windows 中ĉ–‡ċ­—体€‚
% \begin{macrocode}
@@ -2904,10 +3039,7 @@ To produce the documentation run the original source files ending with
% \begin{macrocode}
\cs_new_protected:Npn \@@_load_cjk_font_mac:
{
-% \end{macrocode}
-% ç§ğ除 does not contain script "CJK" è­Ĥċ‘Š€‚
-% \begin{macrocode}
- \msg_redirect_name:nnn { fontspec } { no-script } { info }
+ \@@_diable_no_script_msg:
\setCJKmainfont{Songti~SC~Light}[
BoldFont=Songti~SC~Bold,
ItalicFont=Kaiti~SC,
@@ -2928,8 +3060,7 @@ To produce the documentation run the original source files ending with
% \begin{macrocode}
\cs_new_protected:Npn \@@_load_cjk_font_fandol:
{
- % ç§ğ除 does not contain script "CJK" è­Ĥċ‘Š
- \msg_redirect_name:nnn {fontspec} {no-script} {info}
+ \@@_diable_no_script_msg:
\setCJKmainfont{FandolSong-Regular}[
Extension=.otf,
BoldFont=FandolSong-Bold,
@@ -2958,14 +3089,13 @@ To produce the documentation run the original source files ending with
% \begin{macrocode}
\cs_new_protected:Npn \@@_load_cjk_font_founder:
{
- \sys_if_engine_luatex:T
- {
% \end{macrocode}
-% ċœ¨ LuaTeX 中调ĉ•´ĉ–ıĉ­£ċ­—体ĉ‹Ĵċ·ä½ç½
-% XeTeX ĉš‚ĉ— ċ½çš„解ċ†³ĉ–ıĉ³•
+% 调ĉ•´ĉ–ıĉ­£ċ­—体ĉ‹Ĵċ·ä½ç½€‚\footnote{\hologo{XeTeX} 的调ĉ•´ĉ–ıĉ³•ĉè‡Ş \url{https://www.zhihu.com/question/46241367/answer/101660183}€‚}
% \begin{macrocode}
- \defaultCJKfontfeatures{JFM={zh_CN/{quanjiao,fzpr}}}
- }
+ \sys_if_engine_xetex:T
+ { \xeCJKEditPunctStyle {quanjiao} { optimize-kerning = true } }
+ \sys_if_engine_luatex:T
+ { \defaultCJKfontfeatures { JFM = { zh_CN/{quanjiao,fzpr} } } }
\setCJKmainfont { FZShuSong-Z01 }
[ BoldFont = FZXiaoBiaoSong-B05, ItalicFont = FZKai-Z03 ]
\setCJKsansfont { FZXiHeiI-Z08 } [ BoldFont = FZHei-B01 ]
@@ -3124,40 +3254,61 @@ To produce the documentation run the original source files ending with
%
% \subsubsection{éĦµçœ‰éĦµè„š}
%
-% ĉœĴ科生éĦµçœ‰éĦµè„š€‚èĤĉħ‚ĉ— éĦµçœ‰ïĵŒéĦµè„šċħ…中ïĵŒéĦµç ä½żç”¨äş”ċ·ĉ–°ç½—éİĴ体ĉ•°ċ­—€‚
+% \begin{macro}{\@@_fancy_head:nn}
+% éĦµçœ‰ĉ ·ċĵïĵŒèç½ä¸şċ°ċ·ċ­—体€ĉ·äıĤ€‚èż™é‡ŒċŻı \pkg{fancyhdr} 的ċ‘½äğ¤èż›èĦŒäş†ċŒ…装€‚
+% \begin{macrocode}
+\cs_new_protected:Npn \@@_fancy_head:nn #1#2
+ { \fancyhead [#1] { \small \kaishu \nouppercase {#2} } }
+% \end{macrocode}
+% \end{macro}
+%
+% 重ċšäı‰ \pkg{fancyhdr} 的 \opt{plain} ĉ ·ċĵïĵŒċ³ĉœĴ科生ĉ­£ĉ–‡ċ’Œéƒ¨ċˆ†ç‰ıĉŠéĦµé˘ä½żç”¨çš„çš„
+% éĦµçœ‰éĦµè„šĉ ·ċĵ€‚éĦµçœ‰ĉ— ċ†…ċıïĵ›éĦµè„šä¸şċħ…中的éĦµç ïĵŒä½żç”¨äş”ċ·ĉ–°ç½—éİĴ体ĉ•°ċ­—€‚ĉ³¨ĉ„ĉ ‡è°éĦµçœ‰
+% éĦµè„šĉ¨Şçşżċ½ċşĤ的ċ˜é‡ċıĥ不ĉ˜Ż |dim| çħğċž‹çš„ïĵŒä½†ĉ˜Żé‡‡ċ–了èŻçħğċž‹çš„ĉ ĵċĵ€‚
% \begin{macrocode}
\fancypagestyle { plain }
{
\fancyhf { }
- \fancyfoot [ C ] { \zihao{5} \thepage }
- \RenewDocumentCommand \headrulewidth { } { 0 pt }
- \RenewDocumentCommand \footrulewidth { } { 0 pt }
+ \fancyfoot [ C ] { \zihao { 5 } \rmfamily \thepage }
+ \tl_set:Nn \headrulewidth { \c_zero_dim }
+ \tl_set:Nn \footrulewidth { \c_zero_dim }
}
% \end{macrocode}
%
-% 研çİĥ生éĦµçœ‰éĦµè„š€‚éĦµçœ‰ä¸şĉ¨ŞçşżïĵŒċ‡ĉ•°éĦµĉ˜ç¤şçĞ ċïĵŒċĥĉ•°éĦµĉ˜ç¤şèŠ‚ċïĵ›éĦµè„šä¸şéĦµç €‚
+% \begin{macro}{\@@_set_heading_g:}
+% \changes{v0.15}{2022/01/17}{äżċ¤ċ•éĦµĉ¨Ħċĵçš„éĦµçœ‰é—é˘˜€‚}
+% äğ \opt{plain} ĉ ·ċĵä¸şċŸşçĦ€ïĵŒċ•ç‹Ĵèç½ç ”çİĥ生ĉ¨Ħĉżçš„éĦµçœ‰ċ†…ċı€‚ċœ¨ \cs{fancyhead} 的
+% ċŻé€‰ċ‚ĉ•°ä¸­ïĵŒ\opt{E} ċ’Œ \opt{O} ċˆ†ċˆĞèĦ¨ç¤şċœ¨ċĥĉ•°éĦµïĵˆevenïĵ‰ċ’Œċ‡ĉ•°éĦµïĵˆoddïĵ‰ïĵŒ 而
+% \opt{L}€\opt{R} ċ’Œ \opt{C} ċˆ™ċˆ†ċˆĞèĦ¨ç¤şċ·Ĥïĵˆleftïĵ‰€ċ³ïĵˆrightïĵ‰ċ’Œä¸­é—´ïĵˆcenterïĵ‰
+% €‚ĉŒ‰ç…§é€šċ¸¸çš„ĉŽ’版规ċˆ™ïĵŒċœ¨ċŒé˘ĉ¨Ħċĵä¸‹ïĵŒċĥĉ•°éĦµçš„中间éĦµçœ‰ĉ–‡ċ­—ċœ¨ċ·ĤïĵŒċ‡ĉ•°éĦµċˆ™ċœ¨ċ³€‚
+% ċ•é˘ĉ¨Ħċĵä¸‹ïĵŒċ·Ĥċ³éĦµçœ‰éƒ½èĤĉ˜ç¤ş€‚
% \begin{macrocode}
-\fancypagestyle{headings}
+\cs_new_protected:Npn \@@_set_heading_g:
{
- \fancyhf { }
- \fancyhead [ CO ] { \leftmark }
- \fancyhead [ CE ] { \rightmark }
- \fancyfoot [ C ] { \zihao{5} \thepage }
- \RenewDocumentCommand \headrulewidth { } { 0.4 pt }
- \RenewDocumentCommand \footrulewidth { } { 0 pt }
- \setlength { \headheight } { 20 pt }
+ \bool_if:NTF \g_@@_twoside_bool
+ {
+ \@@_fancy_head:nn { EL } { \leftmark }
+ \@@_fancy_head:nn { OR } { \rightmark }
+ }
+ {
+ \@@_fancy_head:nn { L } { \leftmark }
+ \@@_fancy_head:nn { R } { \rightmark }
+ }
+ \tl_set:Nn \headrulewidth { 0.4 pt }
+ \dim_set:Nn \headheight { 20 pt }
}
% \end{macrocode}
+% \end{macro}
%
% \begin{macro}{\frontmatter}
% 重ċšäı‰ \cs{frontmatter}ïĵŒĉ¸…çİşéĦµçœ‰éĦµè„šäğċŠéĦµç è罀‚
-% ĉ­¤ċ‘½äğ¤äğ…ä¸şè§£ċ†³ċŽŸ \cls{book} çħğä¸­ä½żç”¨ċ°ċ†™ç½—éİĴċ­—ĉŻċşċ·çš„ċ†²çށïĵŒċıĥ不ċğşèä½żç”¨€‚
+% ĉ­¤ċ‘½äğ¤äğ…ä¸şè§£ċ†³ċŽŸ \cls{book} çħğ中éğ˜è¤ä½żç”¨ċ°ċ†™ç½—éİĴċ­—ĉŻċşċ·çš„ċ†²çށïĵŒċıĥ不ċğşèä½żç”¨€‚
% \begin{macrocode}
\RenewDocumentCommand \frontmatter { }
{
\cleardoublepage
- \pagestyle{empty}
- \pagenumbering{Roman}
+ \pagestyle { empty }
+ \pagenumbering { Roman }
}
% \end{macrocode}
% \end{macro}
@@ -3165,13 +3316,15 @@ To produce the documentation run the original source files ending with
% \begin{macro}{\mainmatter}
% \changes{v0.12}{2021/12/03}{äżċ¤äş†ĉ‘˜èĤéĦµċ­—体ĉ ĵċĵĉ³„ĉĵċˆ°ĉ­£ĉ–‡çš„é—é˘˜€‚}
% \changes{v0.12}{2021/12/03}{äżċ¤äş†éĦµçœ‰ä¸Šé•żĉ ‡é˘˜é‡ċ çš„é—é˘˜€‚}
-% 重ċšäı‰ \cs{mainmatter}ïĵŒċœ¨èşĉ–‡ä¸ğ体部ċˆ†è½½ċ…éĦµçœ‰éĦµè„šèç½ïĵŒä½żç”¨é˜żĉ‹‰äĵŻĉ•°ċ­—重ĉ–°èż›èĦŒéĦµç çĵ–ċ·€‚
+% 重ċšäı‰ \cs{mainmatter}ïĵŒċœ¨èşĉ–‡ä¸ğ体部ċˆ†è½½ċ…éĦµçœ‰éĦµè„šèç½ïĵŒä½żç”¨é˜żĉ‹‰äĵŻĉ•°ċ­—重ĉ–°èż›èĦŒ
+% éĦµç çĵ–ċ·€‚
% \begin{macrocode}
\RenewDocumentCommand \mainmatter { }
{
\cleardoublepage
- \int_compare:nTF { \l_@@_info_degree_int == 1 }
- { \pagestyle { plain } } { \pagestyle { headings } }
+ \pagestyle { plain }
+ \int_compare:nF { \l_@@_info_degree_int == 1 }
+ { \@@_set_heading_g: }
\pagenumbering { arabic }
\normalfont \normalsize
}
@@ -3188,38 +3341,64 @@ To produce the documentation run the original source files ending with
% \end{macrocode}
% \end{macro}
%
-% \begin{macro}{\njuchapter}
+% \begin{macro}{\@@_add_tocline:n,\@@_add_tocline:V}
+% ĉ·ğċŠ ç›ċ½•ĉĦ盀‚
+% \begin{macrocode}
+\cs_new_protected:Npn \@@_add_tocline:n #1
+ { \addcontentsline { toc } { chapter } { \c_@@_sec_format_tl #1 } }
+\cs_generate_variant:Nn \@@_add_tocline:n { V }
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\@@_chapter:n,\@@_chapter:V}
% ċĞĉœ‰ç›ċ½•ċ’Œ PDF ĉ ‡ç­çš„ĉ— çĵ–ċ·çĞ €‚
% \begin{macrocode}
-\NewDocumentCommand \njuchapter { m }
+\cs_new_protected:Npn \@@_chapter:n #1
{
- \chapter* { #1 }
- \addcontentsline { toc } { chapter } { \c_@@_sec_format_tl #1 }
- \@mkboth { #1 } { #1 }
+ \chapter * { #1 }
+ \@@_add_tocline:n { #1 }
+ \@@_chapter_header:n { #1 }
}
+\cs_generate_variant:Nn \@@_chapter:n { V }
% \end{macrocode}
% \end{macro}
%
+% \begin{macro}{\@@_chapter_header:n}
+% ċ•éĦµĉ¨Ħċĵä¸‹ïĵŒç›ċ½•€ĉ‘˜èĤ€çĴĤċ·èĦ¨ç­‰ç‰ıĉŠéĦµé˘çš„éĦµçœ‰ä¸­é—´ä¸şç›¸ċş”ĉ ‡é˘˜ïĵŒċ·Ĥċ³ä¸şçİş€‚èż™é‡Œé€š
+% èż‡ċħ…中的 \tn{leftmark} ċžçŽ°€‚
% \begin{macrocode}
-\ctexset
+\cs_new_protected:Npn \@@_chapter_header:n #1
{
- chapter/beforeskip = 10 pt,
- chapter/afterskip = 60 pt,
- chapter/format = \centering \c_@@_sec_format_tl,
- section/format = \c_@@_sec_format_tl,
- subsection/format = \c_@@_sec_format_tl,
- subsubsection/format = \c_@@_sec_format_tl
+ \bool_if:NTF \g_@@_twoside_bool
+ { \markboth { #1 } { #1 } }
+ { \markboth { \hfill #1 \hfill } { } }
}
% \end{macrocode}
+% \end{macro}
%
+% \begin{macro}{\njuchapter}
+% ċ°è£…ĉ— çĵ–ċ·çĞ çŽŻċ˘ƒïĵŒä›ç”¨ĉˆ·ċœ¨ĉ­£ĉ–‡ä¸­ä½żç”¨€‚
+% \begin{macrocode}
+\NewDocumentCommand \njuchapter { m } { \@@_chapter:V { #1 } }
+% \end{macrocode}
+% \end{macro}
%
-% \subsection{ç›ċ½•ĉ ĵċĵ}
-% \changes{v0.13}{2021/12/09}{ċˆ é™¤ \pkg{tocloft}ïĵŒĉ”ı用 \pkg{ctex} ċ†…ç½çš„ç›ċ½•è罀‚}
-%
+% |\keys_set:nn{ctex}| ċžé™…相ċ½“于 \cs{ctexset}€‚
% \begin{macrocode}
-\ctexset
+\keys_set:nn { ctex }
{
+ chapter / beforeskip = 10 pt,
+ chapter / afterskip = 60 pt,
+ chapter / format = \c_@@_sec_format_tl \centering,
+ section / format = \c_@@_sec_format_tl,
+ subsection / format = \c_@@_sec_format_tl,
+ subsubsection / format = \c_@@_sec_format_tl,
% \end{macrocode}
+%
+%
+% \subsection{ç›ċ½•ĉ ĵċĵ}
+% \changes{v0.13}{2021/12/09}{ç§ğ除 \pkg{tocloft}ïĵŒç”¨ \pkg{ctex} äżĉ”ıç›ċ½•ĉ ·ċĵ€‚}
+%
% èç½ç›ċ½•ĉ ‡é˘˜éğ˜è¤ċç§°€‚
% \begin{macrocode}
contentsname = { ç›\hspace{2em}ċ½• },
@@ -3228,21 +3407,45 @@ To produce the documentation run the original source files ending with
% \end{macrocode}
% èç½ç›ċ½•ä¸­çĞ ĉ ‡é˘˜çš„ĉ ·ċĵ€‚
% \begin{macrocode}
- chapter / tocline = \c_@@_sec_format_tl \CTEXnumberline {#1} #2
+ chapter / tocline = \c_@@_sec_format_tl \CTEXnumberline { #1 } #2
}
% \end{macrocode}
%
-% \begin{macro}{\@@_modify_toc_title:nn}
+% \begin{macrocode}
+\keys_define:nn { nju / style }
+ {
+% \end{macrocode}
+% \begin{macro}{style/toc-in-toc}
+% \changes{v0.15}{2022/02/04}{ċŻé€‰ĉ‹İç›ċ½•è‡ŞèşĞĉ˜ŻċĤċ‡şçŽ°ċœ¨ç›ċ½•ä¸­€‚}
+% ĉ˜ŻċĤċœ¨ç›ċ½•ä¸­ĉ˜ç¤şç›ċ½•è‡ŞèşĞ€‚
+% \begin{macrocode}
+ toc-in-toc .bool_gset:N = \g_@@_toc_in_toc_bool,
+ toc-in-toc .initial:n = true
+ }
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\@@_make_toc:nn,\@@_make_toc:Vn}
% é€šèż‡ group ċ†…äżĉ”ıĉ ‡é˘˜èç½ïĵŒċ°†ç›ċ½•éĦµĉ ‡é˘˜ĉ ĵċĵċ•ç‹Ĵèç½ä¸şä¸‰ċ·ç²—ċ‹ä½“€‚
+% ç›ċ½•è‡ŞèşĞ不ċ‡şçŽ°ċœ¨ç›ċ½•ä¸­ĉ—ĥ需ç‰ıċˆĞċ¤„理€‚ċ‚考
+% \url{https://tex.stackexchange.com/a/1821}€‚
% \begin{macrocode}
-\cs_new_protected:Npn \@@_modify_toc_title:nn #1#2
-{
- \group_begin:
- \ctexset { chapter/format = \centering \zihao{3} \bf }
- \njuchapter { #1 }
- \group_end:
- \@starttoc { #2 }
-}
+\cs_new_protected:Npn \@@_make_toc:nn #1#2
+ {
+ \group_begin:
+ \keys_set:nn { ctex }
+ { chapter/format = \centering \zihao { 3 } \bfseries }
+ \bool_if:NTF \g_@@_toc_in_toc_bool
+ { \@@_chapter:n { #1 } }
+ {
+ \chapter * { #1 }
+ \pdfbookmark [0] { #1 } { #2 }
+ \@@_chapter_header:n { #1 }
+ }
+ \group_end:
+ \@starttoc { #2 }
+ }
+\cs_generate_variant:Nn \@@_make_toc:nn { Vn }
% \end{macrocode}
% \end{macro}
%
@@ -3250,59 +3453,124 @@ To produce the documentation run the original source files ending with
% 重ċšäı‰ç›ċ½•ċ‘½äğ¤ïĵŒäżĉ”ıĉ ‡é˘˜ĉ ĵċĵċıĥĉ’ċ…äıĤ筀‚
% \begin{macrocode}
\RenewDocumentCommand \tableofcontents { }
- { \@@_modify_toc_title:nn { \contentsname } { toc } }
+ { \@@_make_toc:Vn \contentsname { toc } }
\RenewDocumentCommand \listoffigures { }
- { \@@_modify_toc_title:nn { \listfigurename } { lof } }
+ { \@@_make_toc:Vn \listfigurename { lof } }
\RenewDocumentCommand \listoftables { }
- { \@@_modify_toc_title:nn { \listtablename } { lot } }
+ { \@@_make_toc:Vn \listtablename { lot } }
% \end{macrocode}
% \end{macro}
%
%
% \subsection{ċ‚考ĉ–‡çŒ}
%
+% \begin{variable}{\g_@@_biblatex_option_clist}
+% ċ­˜ċ‚¨äĵ ċ… \pkg{biblatex} 的选éĦıċˆ—èĦ¨€‚
+% \begin{macrocode}
+\clist_new:N \g_@@_biblatex_option_clist
+% \end{macrocode}
+% \end{variable}
+%
+% \begin{variable}{\g_@@_bib_resource_clist}
+% ċ­˜ċ‚¨ċ‚考ĉ–‡çŒĉ•°ĉĉşċˆ—èĦ¨€‚
+% \begin{macrocode}
+\clist_new:N \g_@@_bib_resource_clist
+% \end{macrocode}
+% \end{variable}
+%
+% \begin{macrocode}
+\msg_new:nnn { njuthesis } { extra-bib-style }
+ {
+ Wrongly-placed~ bib~ style.\\
+ Please~ use~ the~ `bib/style`~ field.
+ }
+% \end{macrocode}
+%
% \begin{macrocode}
\keys_define:nn { nju / bib }
{
% \end{macrocode}
+%
% \begin{macro}{bib/style}
% \changes{v0.14}{2021/12/19}{ĉä›é€‰ĉ‹İċ‚考ĉ–‡çŒĉ ·ċĵçš„ĉŽċ£€‚}
-% ċ‚考ĉ–‡çŒĉ ·ċĵ€‚ċˆ†ä¸şéĦşċşçĵ–码ċˆĥ \opt{numeric}ïĵˆ\opt{gb7714-2015} ĉ ·ċĵïĵ‰ċ’Œè‘—者-ċ‡şç‰ˆċı´ċˆĥ \opt{author-year}ïĵˆ\opt{gb7714-2015ay} ĉ ·ċĵïĵ‰€‚用ĉˆ·é€‰ċ–çš„ĉ ·ċĵäĵšè˘ĞċŠ ċ…选éĦıċˆ—èĦ¨ä¸­ïĵŒäğċ…äĵ èż› \pkg{biblatex} ċċŒ…€‚
+% \changes{v0.15}{2022/02/11}{ċŻä½żç”¨ċ›½ĉ ‡äğċ¤–çš„ĉ–‡çŒĉ ·ċĵ€‚}
+% ċ‚考ĉ–‡çŒĉ ·ċĵ€‚ċ›½ċĥĉ ‡ċ‡†ä¸şéĦşċşçĵ–码ċˆĥ \opt{numeric} ċ’Œè‘—者-ċ‡şç‰ˆċı´ċˆĥ
+% \opt{author-year}ïĵŒċˆ†ċˆĞċŻıċş” \pkg{biblatex} 的 \opt{gb7714-2015}
+% ċ’Œ \opt{gb7714-2015ay} ĉ ·ċĵ€‚ċ…ĥ余ĉ ·ċĵä¸€ċ‹è§†ä½œ \opt{unknown}€‚用ĉˆ·
+% 选ċ–çš„ĉ ·ċĵäĵšè˘ĞċŠ ċ…选éĦıċˆ—èĦ¨ä¸­ïĵŒäğċ…äĵ èż› \pkg{biblatex} ċċŒ…€‚
% \begin{macrocode}
style .choice:,
style / numeric .code:n =
- { \clist_set:Nn \l_@@_tmp_clist { style = gb7714-2015 } },
+ {
+ \clist_gput_right:Nn \g_@@_biblatex_option_clist
+ { style = gb7714-2015 }
+ },
style / author-year .code:n =
- { \clist_set:Nn \l_@@_tmp_clist { style = gb7714-2015ay } },
+ {
+ \clist_gput_right:Nn \g_@@_biblatex_option_clist
+ { style = gb7714-2015ay }
+ },
+ style / unknown .code:n =
+ {
+ \clist_gput_right:Nx \g_@@_biblatex_option_clist
+ { style = \l_keys_value_tl }
+ },
style .initial:n = numeric,
% \end{macrocode}
% \end{macro}
+%
+% \begin{macro}{bib/option}
+% \changes{v0.15}{2022/02/15}{ĉä›äĵ ċ… \pkg{biblatex} ċċŒ…选éĦı的ĉŽċ£€‚}
+% ċ…äĵ ċ… \pkg{biblatex} 的额ċ¤–ċċŒ…选éĦıïĵŒäğċˆ—èĦ¨ċ½˘ċĵċ‚¨ċ­˜€‚
+% ĉ›´ä¸şċ¸¸è§çš„ċ‚考ĉ–‡çŒĉ ·ċĵèç½ċ·²ç”ħ \opt{bib/style} ĉä›ïĵŒ
+% ĉ­¤ċ¤„ċŻı重ċ¤çš„ĉ ·ċĵèç½èż›èĦŒäş†ĉ£€ĉŸ€‚ĉœĴèç½éĦı等ĉ•ˆäşŽċœ¨ċŻĵ言ċŒşä½żç”¨
+% |\PassoptionToPackage{|\meta{key}|=|\meta{value}|}{biblatex}| ċ‘½ä𤀂
+% \begin{macrocode}
+ option .code:n =
+ {
+ \tl_if_in:VnTF \l_keys_value_tl { style = }
+ { \msg_error:nn { njuthesis } { extra-bib-style } }
+ {
+ \clist_gput_right:NV \g_@@_biblatex_option_clist
+ \l_keys_value_tl
+ }
+ },
+% \end{macrocode}
+% \end{macro}
+%
% \begin{macro}{bib/resource}
% \changes{v0.14}{2021/12/19}{ĉä›ĉ‰ı量ċŻĵċ…ċ‚考ĉ–‡çŒĉ•°ĉĉşçš„ĉŽċ£€‚}
-% ċ‚考ĉ–‡çŒĉ•°ĉĉş€‚
+% ċ‚考ĉ–‡çŒĉ•°ĉĉşïĵŒäğċˆ—èĦ¨ċ½˘ċĵċ‚¨ċ­˜€‚
% \begin{macrocode}
- resource .clist_set:N = \l_@@_bib_resource_clist
+ resource .code:n =
+ {
+ \clist_gput_right:NV \g_@@_bib_resource_clist
+ \l_keys_value_tl
+ },
}
% \end{macrocode}
% \end{macro}
%
% \begin{macro}{\addbibresource}
-% 为了ċ¸ĉ”ĥ用ĉˆ·ċœ¨ċŻĵ言ċŒşèç½çš„选éĦıïĵŒ\pkg{biblatex} ċċŒ…è˘Ğèç½ċœ¨ċŻĵ言ċŒşĉœĞċ°ĉ‰äĵšè½½ċ…€‚ĉ­¤ċ¤„ċ•ç‹Ĵċšäı‰äş†ċŻäğċœ¨ċŻĵ言ċŒşä½żç”¨çš„ \cs{addbibresource} ċ‘½äğ¤ïĵŒç”¨äşŽċ…ĵċıäĵ çğŸçš„ĉ·ğċŠ ċ‚考ĉ–‡çŒĉ•°ĉĉşçš„ĉ–ıĉ³•€‚
+% 为了ċ¸ĉ”ĥ用ĉˆ·ċœ¨ċŻĵ言ċŒşèç½çš„选éĦıïĵŒ\pkg{biblatex} ċċŒ…è˘Ğèç½ċœ¨ċŻĵ言ċŒşĉœĞċ°ĉ‰äĵšè½½
+% ċ…€‚ĉ­¤ċ¤„ċ•ç‹Ĵċšäı‰äş†ċŻäğċœ¨ċŻĵ言ċŒşä½żç”¨çš„ \cs{addbibresource} ċ‘½äğ¤ïĵŒç”¨äşŽċ…ĵċıäĵ çğŸçš„
+% ĉ·ğċŠ ċ‚考ĉ–‡çŒĉ•°ĉĉşçš„ĉ–ıĉ³•€‚
% \begin{macrocode}
\NewDocumentCommand \addbibresource { m }
- { \clist_gput_right:Nn \l_@@_bib_resource_clist { #1 } }
+ { \clist_gput_right:Nn \g_@@_bib_resource_clist { #1 } }
% \end{macrocode}
% \end{macro}
%
% \begin{macro}{\@@_biblatex_pre_setup:}
-% è½½ċ… \pkg{biblatex} ċċŒ…ċ‰ïĵŒċż…éĦğçĤç”¨è‡ŞèĦŒċšäı‰çš„ \cs{addbibresource} ċ‘½äğ¤ïĵŒċıĥäĵ ċ…用ĉˆ·èç½çš„选éĦı€‚
+% è½½ċ… \pkg{biblatex} ċċŒ…ċ‰ïĵŒċż…éĦğçĤç”¨è‡ŞèĦŒċšäı‰çš„ \cs{addbibresource}
+% ċ‘½äğ¤ïĵŒċıĥäĵ ċ…用ĉˆ·èç½çš„选éĦı€‚
% \begin{macrocode}
\cs_new_protected:Npn \@@_biblatex_pre_setup:
{
\cs_undefine:N \addbibresource
- \clist_put_right:Nn \l_@@_tmp_clist { backend = biber }
- \exp_args:NV \PassOptionsToPackage \l_@@_tmp_clist { biblatex }
- \clist_clear:N \l_@@_tmp_clist
+ \clist_gput_right:Nn \g_@@_biblatex_option_clist { backend = biber }
+ \exp_args:NV \PassOptionsToPackage
+ \g_@@_biblatex_option_clist { biblatex }
}
% \end{macrocode}
% \end{macro}
@@ -3314,37 +3582,27 @@ To produce the documentation run the original source files ending with
{
% \end{macrocode}
% \changes{v0.12}{2021/12/06}{èç½è“ċ‡şċ‚考ĉ–‡çŒçš„éğ˜è¤é€‰éĦı€‚}
-% äżĉ”ıċ‚考ĉ–‡çŒçš„ċ¤´éƒ¨ĉ ·ċĵïĵŒè‡ŞċŠ¨ĉ·ğċŠ ç›ċ½•ĉĦ盀‚
+% \changes{v0.15}{2022/02/17}{ċŻċœ¨ĉŻçĞ ċŽé™„上ċ‚考ĉ–‡çŒèĦ¨€‚}
+% äżĉ”ıċ‚考ĉ–‡çŒçš„ċ¤´éƒ¨ĉ ·ċĵïĵŒè‡ŞċŠ¨ĉ·ğċŠ ç›ċ½•ĉĦ盀‚éğ˜è¤ä¸ş |chapter| 级ċˆĞ€‚
+% ċĤ‚ĉžœéœ€èĤċœ¨ĉŻçĞ ċŽé™„上一个ċ‚考ĉ–‡çŒèĦ¨ïĵŒċ³ċŻı \pkg{biblatex} äĵ ċ…了
+% |refsection = chapter| 选éĦıïĵŒċˆ™éğ˜è¤ä¸ş |section| 级ċˆĞ€‚
% \begin{macrocode}
- \defbibheading { njubib } [ \bibname ] { \njuchapter { ##1 } }
- \DeclarePrintbibliographyDefaults { heading = njubib }
+ \defbibheading { njubibintoc } [ \bibname ] { \@@_chapter:V { ##1 } }
+ \tl_if_eq:NnTF \blx@refsecreset@level { 2 }
+ { \DeclarePrintbibliographyDefaults { heading = subbibintoc } }
+ { \DeclarePrintbibliographyDefaults { heading = njubibintoc } }
% \end{macrocode}
% äĵ ċ…ċ‚考ĉ–‡çŒĉşĉ–‡äğĥïĵŒĉ­¤ĉ—ĥċŻĉ­£ċ¸¸ä½żç”¨ \cs{addbibresource} ċ‘½ä𤀂
% \begin{macrocode}
- \clist_map_inline:Nn \l_@@_bib_resource_clist
+ \clist_map_inline:Nn \g_@@_bib_resource_clist
{ \addbibresource { ##1 } }
-% \end{macrocode}
-% ċż½ç•ä¸éœ€èĤçš„ĉ–‡çŒäżĦĉŻ€‚
-% \begin{macrocode}
- \AtEveryBibitem
- {
- \clist_map_inline:nn
- { abstract, issn, isbn, archivePrefix, arxivId, pmid, eprint }
- { \clearfield { ##1 } }
- % \ifentrytype{online} { }
- % {
- % \ifentrytype{misc} { }
- % \clearfield{urldate} { \clearfield{url} }
- % }
- }
}
% \end{macrocode}
% \end{macro}
%
-% ä½żç”¨ \pkg{etoolbox} ĉä›çš„ \tn{BeforeBeginEnvironment}ïĵŒċœ¨ \env{document} 环ċ˘ƒċĵ€ċ§‹çš„é’İċ­ċ‰è½½ċ… \pkg{biblatex} ċıĥèż›èĦŒç›¸ċ…³è罀‚
+% ä½żç”¨ \pkg{etoolbox} ĉä›çš„ \tn{BeforeBeginEnvironment}ïĵŒċœ¨ \env{document} 环ċ˘ƒ
+% ċĵ€ċ§‹çš„é’İċ­ċ‰è½½ċ… \pkg{biblatex} ċıĥèż›èĦŒç›¸ċ…³è罀‚
% \begin{macrocode}
-%\hook_gset_rule:nnnn { begindocument/before } { . } { < } { xeCJK }
-%\hook_gput_code:nnn { env/document/begin } { . }
\BeforeBeginEnvironment { document }
{
\@@_biblatex_pre_setup:
@@ -3357,7 +3615,7 @@ To produce the documentation run the original source files ending with
% \subsection{ċĵ•ç”¨}
%
% ċœ¨ċŻĵ言ċŒşĉœĞċ°èż›èĦŒ \pkg{hyperref} è罀‚
-% \changes{v0.11}{2021/10/01}{ċ†™ċ…PDFċ…ƒĉ•°ĉ€‚}
+% \changes{v0.11}{2021/10/01}{ċ†™ċ… PDF ċ…ƒĉ•°ĉ€‚}
% \begin{macrocode}
\ctex_at_end_preamble:n
{
@@ -3438,6 +3696,8 @@ To produce the documentation run the original source files ending with
%
% \subsection{ċˆ—èĦ¨çŽŻċ˘ƒ}
% \changes{v0.12}{2021/12/07}{ċˆ é™¤äş† \pkg{enumitem} 的部ċˆ†ċˆ—èĦ¨çŽŻċ˘ƒè罀‚}
+%
+% çĵİċ‡ċˆ—èĦ¨çŽŻċ˘ƒçš„ĉĦç›é—´è·€‚
% \begin{macrocode}
\setlist { noitemsep }
% \end{macrocode}
@@ -3461,7 +3721,8 @@ To produce the documentation run the original source files ending with
% \end{macrocode}
% \end{macro}
%
-% ċšäı‰èŻĉ˜ŽçŽŻċ˘ƒ€‚èŻĉŻ•çĴĤċ·ä½żç”¨ \tn{mdlgwhtsquare} çğ˜ċˆĥïĵŒċŻıċş”于 |U+25A1| ċ­—çĴĤ\footnote{\url{https://tex.stackexchange.com/questions/567135/how-get-box-like-symbol-with-xelatex}}€‚
+% ċšäı‰èŻĉ˜ŽçŽŻċ˘ƒ€‚èŻĉŻ•çĴĤċ·ä½żç”¨ \tn{mdlgwhtsquare} çğ˜ċˆĥïĵŒċŻıċş”于 |U+25A1| ċ­—çĴĤ
+% \footnote{\url{https://tex.stackexchange.com/questions/567135/how-get-box-like-symbol-with-xelatex}}€‚
% \begin{macrocode}
\theoremsymbol { \ensuremath { \mdwhtsquare } }
\newtheorem* { proof } { \c_@@_name_proof_tl }
@@ -3587,6 +3848,140 @@ To produce the documentation run the original source files ending with
% \end{macro}
%
%
+% \subsubsection{ċšäı‰ċŻıèħĦ}
+% \changes{v0.15}{2022/01/24}{ä½żç”¨ \pkg{xtemplate} 重ĉž„ċ°é˘€‚}
+%
+% ĉœĴĉ¨Ħĉżä½żç”¨ \pkg{xtemplate} ĉä›çš„面ċ‘ċŻıèħĦĉ–ıĉ³•ç€ċŒ–ċ°é˘ċ’Œĉ‘˜èĤçš„çğ˜ċˆĥèż‡ç¨‹€‚
+%
+% äğ下ċˆ†ċˆĞäğŽéĦµé˘ċ…ƒç´ ïĵˆelementïĵ‰ċ’ŒéĦµé˘ĉ•´ä½“ïĵˆpageïĵ‰çš„ċħ‚ĉĴĦèż›èĦŒäş†ĉŠ½èħĦ€‚ċ½“ĉˆ‘äğĴĉŠŠéĦµé˘éƒ¨äğĥè€ƒè™‘ä¸şä¸€ä¸ŞċŻıèħĦĉ—ĥïĵŒċƒċ¤İç„ĥċœ°ċŞċ…·ċ¤‡ĉœ‰é™ĉ•°é‡çš„ċħžĉ€§ïĵšċ†…ċı€ĉ ĵċĵ€èı距€ċŻı齐ĉ–ıċĵç­‰€‚而ċ…·ä½“çš„éĦµé˘ĉ˜Żèż™äş›ċŻıèħĦ的ċžä‹çš„集ċˆïĵŒé™„ċŠ èı距€èĦŒè·ç­‰ċħžĉ€§ïĵŒċˆ›ċğşéĦµé˘ċŞéœ€äĵ ċ…一个ċˆ—èĦ¨è°ƒç”¨ċ„个 Instance ċ³ċŻ€‚é€šèż‡ \pkg{xtemplate} ĉä›çš„ċŠŸèƒ½ïĵŒĉˆ‘äğĴċŻäğĉ ıĉèż™äş›ċħžĉ€§ċˆ›ċğşĉ¨Ħĉżïĵˆtemplateïĵ‰ïĵŒèż›è€Œèƒ½ċ¤§é‡ĉž„ċğşċ…·ĉœ‰\emph{相äĵĵèĦŒä¸ş}的ċžä‹ïĵˆinstanceïĵ‰€‚èż™ç§ċšĉ³•èƒ½ċ……ċˆ†ċˆ†çĤğċ†…ċıċ’Œĉ ·ċĵïĵŒĉžċ¤§äĵ˜ċŒ–äğ£ç çš„ċŻèŻğĉ€§€‚
+%
+% ċ£°ĉ˜ŽċŻıèħĦçħğċž‹€‚ĉ­¤çħğċŻıèħĦ不需èĤċ‚ĉ•°€‚
+% \begin{macrocode}
+\DeclareObjectType { nju } { \c_zero_int }
+% \end{macrocode}
+%
+% ċšäı‰ċ…ƒç´ ĉ¨Ħĉż€‚
+% \begin{macrocode}
+%<@@=njuelem>
+% \end{macrocode}
+%
+% ċ£°ĉ˜ŽéĦµé˘ċ…ƒç´ ĉ¨ĦĉżĉŽċ£€‚
+% ċ…ƒç´ ĉ˜Żä¸€ä¸ŞéĦµé˘çš„ċŸşĉœĴçğ„ĉˆċ•ä½ïĵŒċŒ…ĉ‹Ĵĉ–‡ĉµ€ċ›ç‰‡ç­‰ç­‰€‚一个ĉŠ½èħĦ的ċ…ƒç´ ċş”ċ½“ċ…·ċ¤‡äğ下ċħžĉ€§ïĵš
+% \begin{description}
+% \item[\opt{content}] ċ†…ċıïĵŒċ³ċ‰çĤğĉ ·ċĵçš„ċ…ƒç´ ĉœĴèşĞ
+% \item[\opt{format}] ĉ ĵċĵïĵŒä‹ċĤ‚ċ­—ċ·€ċ­—体
+% \item[\opt{bottom-skip}] 下间距ïĵŒċ³ä¸Žä¸‹ä¸€ä¸Şċ…ƒç´ çš„距çĤğ
+% \item[\opt{align}] ċŻı齐ĉ–ıċĵïĵŒċŒ…ĉ‹Ĵċ·ĤċŻı齐€ċ³ċŻı齐€ċħ…中€ĉ­£ċ¸¸ĉµè½
+% \end{description}
+% \begin{macrocode}
+\DeclareTemplateInterface { nju } { element } { \c_zero_int }
+ {
+ content : tokenlist = \c_empty_tl,
+ format : tokenlist = \c_empty_tl,
+ bottom-skip : skip = \c_zero_skip,
+ align : choice { l, r, c, n } = c
+ }
+% \end{macrocode}
+%
+% ċ£°ĉ˜ŽéĦµé˘ċ…ƒç´ ĉ¨Ħĉżäğ£ç €‚ĉĥ‰ċŠçš„ċ˜é‡ċ°†è˘Ğè‡ŞċŠ¨ċˆ›ċğş€‚
+% \begin{macrocode}
+\DeclareTemplateCode { nju } { element } { \c_zero_int }
+ {
+ content = \l_@@_content_tl,
+ format = \l_@@_format_tl,
+ bottom-skip = \l_@@_bottom_skip,
+ align =
+ {
+ l =
+ { \tl_set_eq:NN \l_@@_begin_align_tl \flushleft
+ \tl_set_eq:NN \l_@@_end_align_tl \endflushleft },
+ r =
+ { \tl_set_eq:NN \l_@@_begin_align_tl \flushright
+ \tl_set_eq:NN \l_@@_end_align_tl \endflushright },
+ c =
+ { \tl_set_eq:NN \l_@@_begin_align_tl \center
+ \tl_set_eq:NN \l_@@_end_align_tl \endcenter },
+ n =
+ { \tl_clear:N \l_@@_begin_align_tl
+ \tl_clear:N \l_@@_end_align_tl }
+ }
+ }
+ {
+ \AssignTemplateKeys
+ \group_begin:
+ \l_@@_begin_align_tl
+ \l_@@_format_tl
+ \l_@@_content_tl \par
+ \l_@@_end_align_tl
+ \group_end:
+ \__nju_vskip:N \l_@@_bottom_skip
+ }
+% \end{macrocode}
+%
+% ċšäı‰éĦµé˘ĉ¨Ħĉż€‚
+% \begin{macrocode}
+%<@@=njupage>
+% \end{macrocode}
+%
+% ċ£°ĉ˜ŽéĦµé˘ĉ¨ĦĉżĉŽċ£€‚
+% éĦµé˘ĉ˜Żċ…ƒç´ çš„集ċˆ€‚一个ĉŠ½èħĦ的éĦµé˘ċş”ċ½“ċ…·ċ¤‡äğ下ċħžĉ€§ïĵš
+% \begin{description}
+% \item[\opt{element}] ċŒ…ċĞ的ċ…ƒç´ ïĵŒèż™é‡Œä½żç”¨çš„ĉ˜Żċç§°ċˆ—èĦ¨
+% \item[\opt{prefix}] ċ…ƒç´ ċç§°ċ‰çĵ€
+% \item[\opt{format}] ĉ ĵċĵïĵŒä‹ċĤ‚èĦŒè·
+% \item[\opt{top-skip}] 上间距ïĵŒċ³ä¸ŽéĦµé˘éĦĥ部的距çĤğ
+% \item[\opt{bottom-skip}] 下间距ïĵŒċ³ä¸ŽéĦµé˘ċş•éƒ¨çš„距çĤğ
+% \end{description}
+% \begin{macrocode}
+\DeclareTemplateInterface { nju } { page } { \c_zero_int }
+ {
+ element : commalist = \c_empty_clist,
+ prefix : tokenlist = \c_empty_tl,
+ format : tokenlist = \c_empty_tl,
+ top-skip : skip = \c_zero_skip,
+ bottom-skip : skip = \c_zero_skip
+ }
+% \end{macrocode}
+%
+% ċ£°ĉ˜ŽéĦµé˘ĉ¨Ħĉżäğ£ç €‚
+% \begin{macrocode}
+\DeclareTemplateCode { nju } { page } { \c_zero_int }
+ {
+ element = \l_@@_element_clist,
+ prefix = \l_@@_prefix_tl,
+ format = \l_@@_format_tl,
+ top-skip = \l_@@_top_skip,
+ bottom-skip = \l_@@_bottom_skip
+ }
+ {
+ \AssignTemplateKeys
+ \newpage
+ \__nju_vskip:N \l_@@_top_skip
+ \group_begin:
+ \l_@@_format_tl
+ \clist_map_inline:Nn \l_@@_element_clist
+ { \UseInstance { nju } { \l_@@_prefix_tl ##1 } }
+ \group_end:
+ \__nju_vskip:N \l_@@_bottom_skip
+ }
+%<@@=nju>
+% \end{macrocode}
+%
+% \begin{macro}{\@@_declare_element:nn,\@@_declare_page:nn}
+% ċ°è£… \pkg{xtemplate} ĉä›çš„ċ‡½ĉ•°ïĵŒç€ċŒ–ċˆ›ċğşċžä‹çš„èż‡ç¨‹€‚
+% \begin{arguments}
+% \item ċžä‹ċç§°
+% \item ċ‚ĉ•°ċˆ—èĦ¨
+% \end{arguments}
+% \begin{macrocode}
+\cs_new_protected:Npn \@@_declare_element:nn #1#2
+ { \DeclareInstance { nju } {#1} { element } {#2} }
+\cs_new_protected:Npn \@@_declare_page:nn #1#2
+ { \DeclareInstance { nju } {#1} { page } {#2} }
+% \end{macrocode}
+% \end{macro}
+%
+%
% \subsubsection{çğ˜ċˆĥ部äğĥ}
%
% \begin{macrocode}
@@ -3629,39 +4024,57 @@ To produce the documentation run the original source files ending with
{ \includegraphics [ width = #2, height = #3 ]
{ \l_@@_name_img_tl } }
}
+ }
% \end{macrocode}
% \end{macro}
-% ċ°† ISO ĉ ĵċĵçš„ċŽŸċ§‹ĉ—ĉœŸċ­—çĴĤ串ĉ ĵċĵċŒ–为中ĉ–‡ĉ—ĉœŸèĦ¨ç¤şïĵŒèŻċ­—çĴĤ串需èĤèż›èĦŒċħ•ċĵ€€‚
+%
+% \paragraph{ĉœĴ科生}
+%
+% \begin{macro}{cover/ug/emblem-img}
+% ĉœĴ科生ċ°é˘ĉ Ħċ½ċ›ç‰‡ċžä‹€‚
% \begin{macrocode}
- \tl_set:Nn \l_@@_info_sm_date_tl
- {
- \exp_last_unbraced:NV
- \@@_date:www \l_@@_info_sm_date_raw_tl \q_stop
- }
+\@@_declare_element:nn { cover / ug / emblem-img }
+ {
+ content = \njuemblem [ black ] { ! } { 3.35 cm },
+ bottom-skip = 1 cm,
+ align = l
+ }
% \end{macrocode}
-% è‹ħĉ–‡ĉäş¤ĉ—ĉœŸäğċŠç­”èİĉ—ĉœŸäğ…用于研çİĥ生ċ°é˘€‚
+% \end{macro}
+%
+% \begin{macro}{cover/ug/name-img}
+% ĉœĴ科生ċ°é˘ĉ Ħċċ›ç‰‡ċžä‹€‚
% \begin{macrocode}
- \int_compare:nF { \l_@@_info_degree_int == 1 }
- {
- \tl_set:Nn \l_@@_info_sm_date_en_tl
- {
- \exp_last_unbraced:NV
- \@@_date_en:www \l_@@_info_sm_date_raw_tl \q_stop
- }
- \tl_set:Nn \l_@@_info_df_date_tl
- {
- \exp_last_unbraced:NV
- \@@_date:www \l_@@_info_df_date_raw_tl \q_stop
- }
- }
+\@@_declare_element:nn { cover / ug / name-img }
+ {
+ content = \njuname [ black ] { ! } { 3 cm },
+ bottom-skip = 1 cm
}
% \end{macrocode}
+% \end{macro}
%
-% \begin{macro}{\@@_cover_title_ug:}
-% ĉœĴ科生ċ°é˘ĉ ‡é˘˜€‚
+% \begin{macro}{cover/ug/title}
+% ĉœĴ科生ċ°é˘ĉ ‡é˘˜ċžä‹€‚
% \begin{macrocode}
-\cs_new_protected:Npn \@@_cover_title_ug:
- { \@@_spread_box:nnn { 9 em } { \bf } { \l_@@_info_type_tl } }
+\@@_declare_element:nn { cover / ug / title }
+ {
+ content =
+ \@@_spread_box:nnn { 9 em } { \bf } { \l_@@_info_type_tl },
+ format = \zihao { -1 },
+ bottom-skip = 0 pt plus 1.5 fill
+ }
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{cover/ug/info}
+% ĉœĴ科生ċ°é˘äżĦĉŻĉ ċžä‹€‚
+% \begin{macrocode}
+\@@_declare_element:nn { cover / ug / info }
+ {
+ content =
+ \@@_cover_info_ug:nnn { 4.2 em } { 16 em } { 5.5 em },
+ format = \zihao { 3 }
+ }
% \end{macrocode}
% \end{macro}
%
@@ -3675,7 +4088,7 @@ To produce the documentation run the original source files ending with
% \begin{macrocode}
\cs_new_protected:Npn \@@_cover_info_ug:nnn #1#2#3
{
- \begin{minipage} [ c ] { #1 + #2 + 0.3 em }
+ \begin{minipage} { #1 + #2 + 0.3 em }
\raggedleft
\@@_cover_entry:nnn { dept } { #1 } { #2 }
\@@_cover_entry:nnn { major } { #1 } { #2 }
@@ -3691,17 +4104,76 @@ To produce the documentation run the original source files ending with
% \end{macrocode}
% \end{macro}
%
-% \begin{macro}{\@@_cover_title_g:}
-% 研çİĥ生ċ°é˘ĉ ‡é˘˜€‚
+% \paragraph{研çİĥ生}
+%
+% \subparagraph{ĉ­£é˘} ċŒ…ĉ‹Ĵĉ Ħċ€ĉ Ħċ½€ĉ ‡é˘˜€äżĦĉŻĉ €‚
+%
+% \begin{macro}{cover/g/emblem-img}
+% 研çİĥ生ċ°é˘ĉ Ħċ½ċ›ç‰‡ċžä‹€‚
+% \begin{macrocode}
+\@@_declare_element:nn { cover / g / emblem-img }
+ {
+ content = \njuemblem [ black ] { ! } { 1.9 cm },
+ bottom-skip = 1 cm
+ }
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{cover/g/name-img}
+% 研çİĥ生ċ°é˘ĉ Ħċċ›ç‰‡ċžä‹€‚
+% \begin{macrocode}
+\@@_declare_element:nn { cover / g / name-img }
+ {
+ content = \njuname [ black ] { 4.4 cm } { ! },
+ bottom-skip = 2 cm
+ }
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{cover/g/type}
+% 研çİĥ生ċ°é˘ĉ ‡é˘˜ċžä‹€‚
+% \begin{macrocode}
+\@@_declare_element:nn { cover / g / type }
+ {
+ content =
+ \@@_spread_box:nnn { 9 em } { } { \l_@@_info_type_tl },
+ format = \zihao { -1 } \bfseries,
+ bottom-skip = 1 cm
+ }
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{cover/g/degree}
+% 研çİĥ生ċ°é˘ĉ ‡é˘˜ċžä‹€‚
+% \begin{macrocode}
+\@@_declare_element:nn { cover / g / degree }
+ {
+ content = \c_@@_name_apply_tl,
+ format = \zihao { -1 } \bfseries,
+ bottom-skip = 1 cm plus 1.5 fil
+ }
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{cover/g/info}
+% 研çİĥċ°é˘äżĦĉŻĉ ċžä‹€‚
% \begin{macrocode}
-\cs_new_protected:Npn \@@_cover_title_g:
+\@@_declare_element:nn { cover / g / info }
{
- \@@_spread_box:nnn { 9em } { } { \l_@@_info_type_tl } \@@_vskip:
- \c_@@_name_degree_l_tl \l_@@_info_degree_tl \c_@@_name_degree_r_tl
+ content = \@@_cover_info_g:nn { 6.2 em } { 18 em },
+ bottom-skip = 0 pt plus 1.5 fil
}
% \end{macrocode}
% \end{macro}
%
+% \begin{macro}{cover/g/date}
+% 研çİĥċ°é˘ĉ—ĉœŸċžä‹€‚
+% \begin{macrocode}
+\@@_declare_element:nn { cover / g / date }
+ { content = \l_@@_info_sm_date_tl }
+% \end{macrocode}
+% \end{macro}
+%
% \begin{macro}{\@@_cover_info_g:nn}
% 研çİĥ生ċ°é˘äżĦĉŻĉ €‚
% \begin{arguments}
@@ -3711,7 +4183,7 @@ To produce the documentation run the original source files ending with
% \begin{macrocode}
\cs_new_protected:Npn \@@_cover_info_g:nn #1#2
{
- \begin{minipage} [ c ] { #1 + #2 + 0.3 em }
+ \begin{minipage} { #1 + #2 + 0.3 em }
\raggedleft
\@@_multiline_title:nnn { } { #1 } { #2 }
\clist_map_inline:nn { author, major, field, supv_full }
@@ -3721,6 +4193,19 @@ To produce the documentation run the original source files ending with
% \end{macrocode}
% \end{macro}
%
+% \subparagraph{èƒŒé˘}
+%
+% \begin{macro}{cover/g/back}
+% 研çİĥ生ċ°é˘èƒŒé˘äżĦĉŻċžä‹€‚
+% \begin{macrocode}
+\@@_declare_element:nn { cover / g / back }
+ {
+ content = \@@_cover_back_g:,
+ align = l
+ }
+% \end{macrocode}
+% \end{macro}
+%
% \begin{macro}{\@@_cover_back_g:}
% 研çİĥ生ċ°é˘èƒŒé˘äżĦĉŻ€‚ĉ ĵċĵċ­˜ċœ¨ċ˜ċŒ–ïĵŒĉ²Ħĉœ‰ä½żç”¨ċŞçŽŻĉç€ċŒ–€‚
% \begin{macrocode}
@@ -3738,53 +4223,152 @@ To produce the documentation run the original source files ending with
% \end{macrocode}
% \end{macro}
%
-% \begin{macro}{\@@_cover_en_g:}
-% 研çİĥ生è‹ħĉ–‡ċ°é˘€‚
+% \subparagraph{è‹ħĉ–‡ċ°é˘} ċŒ…ĉ‹Ĵĉ ‡é˘˜€éĦĥ部€ä¸­éƒ¨€ĉ Ħċ½€ċş•éƒ¨€‚
+%
+% \begin{macro}{cover/g/en/title}
+% 研çİĥ生è‹ħĉ–‡ċ°é˘ĉ ‡é˘˜ċžä‹€‚
% \begin{macrocode}
-\cs_new_protected:Npn \@@_cover_en_g:
+\@@_declare_element:nn { cover / g / en / title }
{
+ content = \l_@@_info_title_en_tl,
+ format = \bf \sffamily \zihao { 2 },
+ bottom-skip = 2 cm
+ }
% \end{macrocode}
-% ĉ ‡é˘˜€‚
-% \begin{macrocode}
- \parbox { \textwidth }
- { \centering \bf \sffamily \zihao { 2 } \l_@@_info_title_en_tl }
- \skip_vertical:n { 1 cm }
-% \end{macrocode}
-% 作者€‚
-% \begin{macrocode}
- \group_begin: \zihao { 4 } { by } \group_end: \@@_vskip:
- \group_begin:
- \bf \sffamily \zihao { 4 } \l_@@_info_author_en_tl
- \group_end: \skip_vertical:n { 1 cm }
-% \end{macrocode}
-% ċŻĵċ¸ˆ€‚
+% \end{macro}
+%
+% \begin{macro}{cover/g/en/top}
+% 研çİĥ生è‹ħĉ–‡ċ°é˘éĦĥ部äżĦĉŻċžä‹€‚
% \begin{macrocode}
- \group_begin: \zihao { 4 } { Supervised~ by } \group_end: \@@_vskip:
- \group_begin:
- \sffamily \zihao { 4 } \l_@@_info_supv_full_en_tl
- \group_end: \vfill
+\@@_declare_element:nn { cover / g / en / top }
+ {
+ content =
+ { by }
+ \skip_vertical:N \c_zero_skip
+ \textbf { \sffamily \l_@@_info_author_en_tl }
+ \skip_vertical:n { .5 cm }
+ { Supervised~ by }
+ \skip_vertical:N \c_zero_skip
+ \textsf { \l_@@_info_supv_full_en_tl },
+ format = \zihao { 4 },
+ bottom-skip = 0 pt plus 1.2 fil
+ }
% \end{macrocode}
-% ċ­Ĥ位äżĦĉŻ€‚
+% \end{macro}
+%
+% \begin{macro}{cover/g/en/middle}
+% 研çİĥ生è‹ħĉ–‡ċ°é˘ä¸­éƒ¨äżĦĉŻċžä‹€‚
% \begin{macrocode}
+\@@_declare_element:nn { cover / g / en / middle }
+ {
+ content =
\c_@@_cover_en_text_tl \@@_vskip:
\textsc { \clist_item:Nn \c_@@_name_degree_en_clist
{ \l_@@_info_degree_int } }
\@@_vskip: { in } \@@_vskip:
- \l_@@_info_major_en_tl \skip_vertical:n { 1 cm }
+ \l_@@_info_major_en_tl,
+ bottom-skip = 2 cm
+ }
% \end{macrocode}
-% ĉ Ħċ½€‚
+% \end{macro}
+%
+% \begin{macro}{cover/g/en/emblem-img}
+% 研çİĥ生è‹ħĉ–‡ċ°é˘ĉ Ħċ½ċ›ç‰‡ċžä‹€‚
% \begin{macrocode}
- \njuemblem [ black ] { ! } { 2.5 cm } \@@_vskip:
- \l_@@_info_dept_en_tl \\ \c_@@_name_nju_en_tl
- \skip_vertical:n { 1 cm }
+\@@_declare_element:nn { cover / g / en / emblem-img }
+ {
+ content = \njuemblem [ black ] { ! } { 2.5 cm },
+ bottom-skip = 1.5 cm
+ }
% \end{macrocode}
-% ĉäş¤ĉ—ĉœŸ€‚
+% \end{macro}
+%
+% \begin{macro}{cover/g/en/bottom}
+% 研çİĥ生è‹ħĉ–‡ċ°é˘ċş•éƒ¨äżĦĉŻċžä‹€‚
% \begin{macrocode}
+\@@_declare_element:nn { cover / g / en / bottom }
+ {
+ content =
+ \l_@@_info_dept_en_tl \skip_vertical:N \c_zero_skip
+ \c_@@_name_nju_en_tl \skip_vertical:n { 1 cm }
\l_@@_info_sm_date_en_tl
}
% \end{macrocode}
% \end{macro}
%
+% \subparagraph{ċ›½ċĥċ›äıĤéĤ†ċ°é˘} ċŒ…ĉ‹ĴéĦĥ部€é˘˜ċ€ĉ ‡é˘˜€ä¸­éƒ¨€ċş•éƒ¨€ĉ—ĉœŸ€‚
+%
+% \begin{macro}{cover/nl/top}
+% ċ›½ċĥċ›äıĤéĤ†ċ°é˘éĦĥ部äżĦĉŻċžä‹€‚
+% \begin{macrocode}
+\@@_declare_element:nn { cover / nl / top }
+ {
+ content = \@@_cover_top_nl:,
+ bottom-skip = 2 cm
+ }
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{cover/nl/name}
+% ċ›½ċĥċ›äıĤéĤ†ċ°é˘ĉ ‡é˘˜ċç§°ċžä‹€‚
+% \begin{macrocode}
+\@@_declare_element:nn { cover / nl / name }
+ {
+ content =
+ \@@_spread_box:nnn { 6 em } { } { \c_@@_name_title_tl },
+ format = \zihao { -0 },
+ bottom-skip = 0 pt plus 1.2 fil
+ }
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{cover/nl/title}
+% ċ›½ċĥċ›äıĤéĤ†ċ°é˘ĉ ‡é˘˜ċžä‹€‚
+% \begin{macrocode}
+\@@_declare_element:nn { cover / nl / title }
+ {
+ content = \@@_cover_title_nl:,
+ format = \zihao { 1 },
+ bottom-skip = 1 cm
+ }
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{cover/nl/middle}
+% ċ›½ċĥċ›äıĤéĤ†ċ°é˘ä¸­éƒ¨äżĦĉŻċžä‹€‚
+% \begin{macrocode}
+\@@_declare_element:nn { cover / nl / middle }
+ {
+ content = \@@_cover_info_nl:,
+ format = \zihao { 4 },
+ bottom-skip = 0 pt plus 1.2 fil
+ }
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{cover/nl/bottom}
+% ċ›½ċĥċ›äıĤéĤ†ċ°é˘ċş•éƒ¨äżĦĉŻċžä‹€‚
+% \begin{macrocode}
+\@@_declare_element:nn { cover / nl / bottom }
+ {
+ content = \@@_cover_bottom_nl:,
+ bottom-skip = 1 cm,
+ align = r
+ }
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{cover/nl/date}
+% ċ›½ċĥċ›äıĤéĤ†ċ°é˘ċş•éƒ¨ĉ—ĉœŸċžä‹€‚
+% \begin{macrocode}
+\@@_declare_element:nn { cover / nl / date }
+ {
+ content = \@@_qquad: ċı´ \@@_quad: ĉœˆ \@@_quad: ĉ—,
+ format = \kaishu \zihao { 3 }
+ }
+% \end{macrocode}
+% \end{macro}
+%
% \begin{macro}{\@@_cover_top_nl:}
% ċ›½ċĥċ›äıĤéĤ†ċ°é˘éĦĥ部äżĦĉŻ€‚
% \begin{macrocode}
@@ -3805,15 +4389,14 @@ To produce the documentation run the original source files ending with
% \begin{macrocode}
\cs_new_protected:Npn \@@_cover_title_nl:
{
- \noindent \kaishu \zihao { -0 } \skip_vertical:n { -1 cm }
- \@@_spread_box:nnn { 6 em } { } { \c_@@_name_title_tl }
- \@@_vskip: \zihao { 1 }
\@@_split_title:n { \l_@@_info_title_tl }
\@@_multiline_box:nnnn { \l_@@_tmp_int } \l_@@_tmp_clist { 3 } { 15 em }
- \@@_vskip: \zihao{4} \c_@@_name_title_nl_tl
- \@@_vskip: \zihao{1}
+ \skip_vertical:n { - 0.5 cm }
+ { \zihao { 4 } \c_@@_name_title_nl_tl }
+ \skip_vertical:N \c_zero_skip
\@@_ulined_center_box:nn { 4.5 em } { \l__nju_info_author_tl }
- \@@_vskip: \zihao{4} { ( } \c_@@_name_author_tl { ) }
+ \skip_vertical:n { - 0.5 cm }
+ { \zihao { 4 } { ( } \c_@@_name_author_tl { ) } }
}
% \end{macrocode}
% \end{macro}
@@ -3827,13 +4410,13 @@ To produce the documentation run the original source files ending with
{ \clist_item:Nn \l_@@_info_supv_clist { 1 } }
\tl_set:Nn \l_@@_info_supv_ttl_tl
{ \clist_item:Nn \l_@@_info_supv_clist { 2 } }
- \@@_uline_entry:nnnn \l_@@_tmp_dim { supv_info } { supv } { } \\
+ \@@_uline_entry:Nnnn \l_@@_tmp_dim { supv_info } { supv } { } \\
\@@_ulined_center_box:nn { \textwidth } { \@@_info:n { supv_ttl }
\@@_quad: \@@_info:n { supv_cont } } \\
- \@@_uline_bientry:nnnn \l_@@_tmp_dim { degree } { degree } { }
- \@@_uline_bientry:nnnn \l_@@_tmp_dim { major_nl } { major } { } \\
- \@@_uline_bientry:nnnn \l_@@_tmp_dim { sm_date } { sm_date } { }
- \@@_uline_bientry:nnnn \l_@@_tmp_dim { df_date } { df_date } { } \\
+ \@@_uline_bientry:Nnnn \l_@@_tmp_dim { degree } { degree } { }
+ \@@_uline_bientry:Nnnn \l_@@_tmp_dim { major_nl } { major } { } \\
+ \@@_uline_bientry:Nnnn \l_@@_tmp_dim { sm_date } { sm_date } { }
+ \@@_uline_bientry:Nnnn \l_@@_tmp_dim { df_date } { df_date } { } \\
\@@_full_uline:Nn \l_@@_tmp_dim { \c_@@_name_confer_tl }
\@@_uline:n { \l_@@_tmp_dim }
}
@@ -3856,124 +4439,99 @@ To produce the documentation run the original source files ending with
%
%
% \subsubsection{çğ˜ċˆĥċ°é˘}
-%
-% \begin{macro}{\@@_make_cover_ug:}
% \changes{v0.13}{2021/12/10}{ä½żç”¨ \hologo{LaTeX3} èŻ­ĉ³•é‡ĉž„ĉœĴ科生ċ°é˘€‚}
-% 生ĉˆĉœĴ科生ċ°é˘€‚
+% \changes{v0.13}{2021/12/11}{ä½żç”¨ \hologo{LaTeX3} èŻ­ĉ³•é‡ĉž„ç ”çİĥ生ċ°é˘€‚}
+% \changes{v0.13}{2021/12/12}{ä½żç”¨ \hologo{LaTeX3} èŻ­ĉ³•é‡ĉž„ċ›½ċĥċ›äıĤéĤ†ċ°é˘€‚}
+% \changes{v0.15}{2022/01/25}{ċ°†ċ°é˘éĦµé˘ċ°è£…为ċŻıèħĦ€‚}
+%
+% ċšäı‰ċ°é˘éĦµé˘çš„ċ…·ä½“配ç½ċ‚ĉ•°€‚
+%
+% \begin{macro}{cover-ug-default}
+% éğ˜è¤ĉœĴ科生ċ°é˘ċžä‹€‚
% \begin{macrocode}
-\cs_new_protected:Npn \@@_make_cover_ug:
+\@@_declare_page:nn { cover-ug-default }
{
- \newpage
-% \end{macrocode}
-% ĉ Ħċ½€ĉ Ħċ€‚
-% \begin{macrocode}
- \null \skip_horizontal:n { -1 cm }
- \njuemblem [ black ] { ! } { 3.35 cm }
- \begin{center}
- \njuname [ black ] { ! } { 3 cm } \@@_vskip:
-% \end{macrocode}
-% ċ­Ĥ位äżĦĉŻ€‚
-% \begin{macrocode}
- \group_begin: \zihao { -1 } \@@_cover_title_ug: \group_end:
- \skip_vertical:n { 1.5 cm } \vfil
-% \end{macrocode}
-% äżĦĉŻĉ €‚
-% \begin{macrocode}
- \zihao{3} \@@_cover_info_ug:nnn { 4.2 em } { 16 em } { 5.5 em } \vfil
- \end{center}
+ element = { emblem-img, name-img, title, info },
+ prefix = cover / ug /,
+ bottom-skip = 0.5 cm plus 1.5 fill
}
% \end{macrocode}
% \end{macro}
%
-% \begin{macro}{\@@_make_cover_g:}
-% \changes{v0.13}{2021/12/11}{ä½żç”¨ \hologo{LaTeX3} èŻ­ĉ³•é‡ĉž„ç ”çİĥ生ċ°é˘€‚}
-% 生ĉˆç ”çİĥ生ċ°é˘€‚
+% \begin{macro}{cover-g-front-default}
+% éğ˜è¤ç ”çİĥ生ĉ™é€šċ°é˘ĉ­£é˘ċžä‹€‚
% \begin{macrocode}
-\cs_new_protected:Npn \@@_make_cover_g:
+\@@_declare_page:nn { cover-g-front-default }
{
- \newpage
- \begin{center}
+ element = { emblem-img, name-img, type, degree, info, date },
+ prefix = cover / g /,
+ format = \zihao { 3 } \kaishu,
+ top-skip = 1.5 cm
+ }
% \end{macrocode}
-% ĉ Ħċ½€ĉ Ħċ€‚
+% \end{macro}
+%
+% \begin{macro}{cover-g-back-default}
+% éğ˜è¤ç ”çİĥ生ĉ™é€šċ°é˘èƒŒé˘ċžä‹€‚
% \begin{macrocode}
- \null \skip_vertical:n { 1 cm }
- \njuemblem [ black ] { ! } { 1.9 cm } \skip_vertical:n { 0.5 cm }
- \njuname [ black ] { 4.4 cm } { ! } \@@_vskip:
+\@@_declare_page:nn { cover-g-back-default }
+ {
+ element = { back },
+ prefix = cover / g /,
+ format = \zihao { 3 } \kaishu,
+ top-skip = 20 cm
+ }
% \end{macrocode}
-% ċ­Ĥ位äżĦĉŻ€‚
+% \end{macro}
+%
+% \begin{macro}{cover-g-en-default}
+% éğ˜è¤ç ”çİĥ生è‹ħĉ–‡ċ°é˘ċžä‹€‚
% \begin{macrocode}
- \group_begin:
- \zihao { -1 } \bf \kaishu \@@_cover_title_g:
- \group_end:
- \skip_vertical:n { 3 cm } \vfil
+\@@_declare_page:nn { cover-g-en-default }
+ {
+ element = { title, top, middle, emblem-img, bottom },
+ prefix = cover / g / en /,
+ top-skip = 0 pt plus 1.2 fil
+ }
% \end{macrocode}
-% äżĦĉŻĉ €‚
+% \end{macro}
+%
+% \begin{macro}{cover-nl-default}
+% éğ˜è¤ċ›½ċĥċ›äıĤéĤ†ċ°é˘ċžä‹€‚
% \begin{macrocode}
- \group_begin:
- \zihao { 3 } \kaishu
- \@@_cover_info_g:nn { 6.2 em } { 18 em } \vfil
- \skip_vertical:n { 2 cm } \l_@@_info_sm_date_tl
- \group_end:
- \end{center}
+\@@_declare_page:nn { cover-nl-default }
+ {
+ element = { top, name, title, middle, bottom, date },
+ prefix = cover / nl /,
+ format = \kaishu
+ }
% \end{macrocode}
-% èƒŒé˘€‚
+% \end{macro}
+%
+% \begin{macro}{\@@_make_cover_ug:}
+% 生ĉˆĉœĴ科生ċ°é˘€‚
% \begin{macrocode}
- \newpage
- \noindent \null \skip_vertical:n { 18 cm }
- \group_begin:
- \zihao { 3 } \kaishu \@@_cover_back_g:
- \group_end:
+\cs_new_protected:Npn \@@_make_cover_ug:
+ { \UseInstance { nju } { cover-ug-default } }
% \end{macrocode}
-% è‹ħĉ–‡ċ°é˘€‚
+% \end{macro}
+%
+% \begin{macro}{\@@_make_cover_g:}
+% 生ĉˆç ”çİĥ生的ĉ™é€šċ°é˘€‚
% \begin{macrocode}
- \newpage
- \noindent \null \skip_vertical:n { 2 cm }
- \begin{center}
- \@@_cover_en_g:
- \end{center}
+\cs_new_protected:Npn \@@_make_cover_g:
+ {
+ \clist_map_inline:nn { front, back, en }
+ { \UseInstance { nju } { cover-g- ##1 -default } }
}
% \end{macrocode}
% \end{macro}
%
% \begin{macro}{\@@_make_cover_nl:}
-% \changes{v0.13}{2021/12/12}{ä½żç”¨ \hologo{LaTeX3} èŻ­ĉ³•é‡ĉž„ċ›½ċĥċ›äıĤéĤ†ċ°é˘€‚}
% 生ĉˆç ”çİĥ生的ċ›½ċĥċ›äıĤéĤ†ċ°é˘€‚
% \begin{macrocode}
\cs_new_protected:Npn \@@_make_cover_nl:
- {
- \pdfbookmark [ 0 ] { ċ›½ċĥċ›äıĤéĤ†ċ°é˘ } { nlcover }
- \noindent \null
-% \end{macrocode}
-% éĦĥ部ïĵŒċŒ…ĉ‹ĴċŻ†çş§€ċˆ†çħğċ·€UDC€‚
-% \begin{macrocode}
- \begin{center}
- \zihao{ -4 } \skip_vertical:n { -2 cm }
- \@@_cover_top_nl:
- \end{center}
-% \end{macrocode}
-% ĉ ‡é˘˜€‚
-% \begin{macrocode}
- \begin{center}
- \skip_vertical:n { -2 cm }
- \@@_cover_title_nl:
- \end{center}
-% \end{macrocode}
-% 中部äżĦĉŻĉ €‚
-% \begin{macrocode}
- \group_begin:
- \kaishu \zihao { 4 } \noindent \@@_cover_info_nl:
- \group_end:
-% \end{macrocode}
-% ċş•éƒ¨ç­”èİäżĦĉŻ€‚
-% \begin{macrocode}
- \begin{flushright}
- \@@_cover_bottom_nl:
- \end{flushright}
- \begin{center}
- \kaishu \zihao{3} \@@_qquad: ċı´ \@@_quad: ĉœˆ \@@_quad: ĉ—
- \end{center}
- \skip_vertical:n { -1 cm }
- }
+ { \UseInstance { nju } { cover-nl-default } }
% \end{macrocode}
% \end{macro}
%
@@ -4013,9 +4571,11 @@ To produce the documentation run the original source files ending with
{
\bool_if:NF \g_@@_draft_bool
{
- \pagestyle { empty }
+ \pagestyle { empty }
+ \pagenumbering { gobble }
% \end{macrocode}
-% ċĤ‚ĉžœċœ¨ç ”çİĥ生ĉ¨Ħĉżä¸­é€‰ĉ‹İ了 \opt{nlcover}ïĵŒċ°ħ生ĉˆç”¨äşŽç”³èŻ·ċ­Ĥ位的ċ›½ċĥċ›äıĤéĤ†ċ°é˘ċ’ŒċŽŸċˆ›ĉ€§ċ£°ĉ˜ŽïĵŒċäı‹ç”Ÿĉˆĉ™é€šċ°é˘€‚
+% ċĤ‚ĉžœċœ¨ç ”çİĥ生ĉ¨Ħĉżä¸­é€‰ĉ‹İ了 \opt{nlcover}ïĵŒċ°ħ生ĉˆç”¨äşŽç”³èŻ·ċ­Ĥ位的ċ›½ċĥċ›äıĤéĤ†ċ°é˘ïĵŒ
+% ċäı‹ç”Ÿĉˆĉ™é€šċ°é˘€‚
% \begin{macrocode}
\bool_if:NTF \g_@@_nlcover_bool
{ \@@_make_cover_nl: }
@@ -4045,6 +4605,35 @@ To produce the documentation run the original source files ending with
%
% \subsubsection{ċ†…部ċ‘½äğ¤}
%
+% \begin{macrocode}
+\keys_define:nn { nju / style }
+ {
+% \end{macrocode}
+% \begin{macro}{style/abstract-in-toc}
+% \changes{v0.15}{2022/02/04}{ċŻé€‰ĉ‹İĉ‘˜èĤĉ˜ŻċĤċ‡şçŽ°ċœ¨ç›ċ½•ä¸­€‚}
+% ĉ˜ŻċĤċ°†ĉ‘˜èĤĉ·ğċŠ ċˆ°ç›ċ½•€‚
+% \begin{macrocode}
+ abstract-in-toc .bool_gset:N = \g_@@_abs_in_toc_bool,
+ abstract-in-toc .initial:n = true
+ }
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\@@_abs_bookmark:nn}
+% \changes{v0.14}{2021/12/21}{ċ°†ĉ‘˜èĤĉ’ċ…ç›ċ½•€‚}
+% 生ĉˆĉ‘˜èĤçš„ç›ċ½•ĉĦ盀‚
+% \begin{macrocode}
+\cs_new_protected:Npn \@@_abs_bookmark:nn #1#2
+ {
+ \phantomsection
+ \bool_if:NTF \g_@@_abs_in_toc_bool
+ { \@@_add_tocline:n { #1 } }
+ { \pdfbookmark [0] { #1 } { #2 } }
+ }
+\cs_generate_variant:Nn \@@_abs_bookmark:nn { Vn }
+% \end{macrocode}
+% \end{macro}
+%
% \begin{macro}{\@@_abs_title_uuline:n}
% ĉ‘˜èĤĉ ‡é˘˜ċŒċħ‚下ċˆ’çşżĉ ĵċĵ€‚
% \begin{arguments}
@@ -4069,39 +4658,21 @@ To produce the documentation run the original source files ending with
% \end{macrocode}
% \end{macro}
%
-% \begin{macro}{\@@_abs_bookmark:,\@@_abs_bookmark_en:}
-% \changes{v0.14}{2021/12/21}{ċ°†ĉ‘˜èĤĉ’ċ…ç›ċ½•€‚}
-% 生ĉˆĉ‘˜èĤçš„ç›ċ½•ĉĦ盀‚
-% \begin{macrocode}
-\cs_new_protected:Npn \@@_abs_bookmark:
- {
- \phantomsection
- \addcontentsline { toc } { chapter }
- { \c_@@_sec_format_tl \c_@@_name_lang_tl \c_@@_name_abstract_tl }
- }
-\cs_new_protected:Npn \@@_abs_bookmark_en:
- {
- \phantomsection
- \addcontentsline { toc } { chapter }
- { \c_@@_sec_format_tl \c_@@_name_abstract_en_tl }
- }
-% \end{macrocode}
-% \end{macro}
-%
%
% \subsubsection{çğ˜ċˆĥ部äğĥ}
%
+% \paragraph{ĉœĴ科生}
+%
% \begin{macro}{\@@_abs_title_ug:n}
% çğ˜ċˆĥĉœĴ科生ĉ‘˜èĤĉ ‡é˘˜€‚
% \begin{arguments}
% \item èŻ­è¨€ïĵŒçİşç½ä¸şä¸­ĉ–‡ïĵŒ|_en| 为è‹ħĉ–‡
% \end{arguments}
% \begin{macrocode}
-\cs_generate_variant:Nn \clist_map_inline:nn { Vn }
\cs_new_protected:Npn \@@_abs_title_ug:n #1
{
- \@@_name:n { nju } \@@_name:n { type }
- \@@_name:n { lang #1 } \@@_name:n { abstract }
+ \clist_map_inline:nn { nju, type, lang #1, abstract }
+ { \@@_name:n { ##1 } }
}
% \end{macrocode}
% \end{macro}
@@ -4137,6 +4708,8 @@ To produce the documentation run the original source files ending with
% \end{macrocode}
% \end{macro}
%
+% \paragraph{研çİĥ生}
+%
% \begin{macro}{\@@_abs_title_g:n}
% çğ˜ċˆĥ研çİĥ生ĉ‘˜èĤĉ ‡é˘˜€‚
% \begin{arguments}
@@ -4213,14 +4786,17 @@ To produce the documentation run the original source files ending with
% \begin{macrocode}
\clist_map_inline:nn { major, author, supv_full }
{ \\
- \@@_uline_entry:nnnn \l_@@_tmp_dim { ##1 _en } { ##1 _en } { #2 }
+ \@@_uline_entry:Nnnn \l_@@_tmp_dim { ##1 _en } { ##1 _en } { #2 }
}
}
}
% \end{macrocode}
% \end{macro}
%
+% \paragraph{ċ…³é”èŻċˆ—èĦ¨}
+%
% \begin{macro}{\@@_print_keywords:nn}
+% \changes{v0.15}{2022/01/26}{为ċ…³é”èŻċˆ—èĦ¨ĉ·ğċŠ ĉ‚ĴĉŒ‚çĵİèż›€‚}
% 生ĉˆä¸­è‹ħĉ–‡ċ…³é”èŻċˆ—èĦ¨€‚
% \begin{arguments}
% \item èŻ­è¨€ïĵŒçİşç½ä¸şä¸­ĉ–‡ïĵŒ|_en| 为è‹ħĉ–‡
@@ -4229,15 +4805,27 @@ To produce the documentation run the original source files ending with
% \begin{macrocode}
\cs_new_protected:Npn \@@_print_keywords:nn #1#2
{
- \skip_vertical:n { 2 ex }
- \group_begin:
+ \exp_args:NNc
+ \tl_set_eq:NN \l_@@_tmp_tl { c_@@_name_keywords #1 _tl }
+ \@@_get_text_width:Nn \l_@@_tmp_dim { \l_@@_tmp_tl }
% \end{macrocode}
-% “ċ…³é”èŻâ€ċ­—ĉ ·ä½żç”¨ċŠ ç²—éğ‘体€‚
+% ċ…³é”èŻċˆ—èĦ¨çš„ĉ‚ĴĉŒ‚çĵİèż›ĉ ·ċĵç”ħ \tn{list} 环ċ˘ƒäş§ç”Ÿ€‚
% \begin{macrocode}
- \noindent \bf \heiti
- \use:c { c_@@_name_keywords #1 _tl }
- \group_end:
- \clist_use:cn { l_@@_info_keywords #1 _clist } { #2 }
+ \list { }
+ {
+ \labelwidth \l_@@_tmp_dim
+ \labelsep \c_zero_dim
+ \leftmargin \c_zero_dim
+ \rightmargin \c_zero_dim
+ \advance \leftmargin \l_@@_tmp_dim
+% \end{macrocode}
+% ä½żç”¨ç²—ä½“ä½œä¸şĉ ‡ç­ĉ ·ċĵ€‚
+% \begin{macrocode}
+ \cs_set_eq:NN \makelabel \textbf
+ }
+ \item [ \l_@@_tmp_tl ]
+ \clist_use:cn { l_@@_info_keywords #1 _clist } { #2 }
+ \endlist
}
% \end{macrocode}
% \end{macro}
@@ -4296,10 +4884,12 @@ To produce the documentation run the original source files ending with
% \changes{v0.13}{2021/12/12}{重ĉ–°çğ˜ċˆĥĉ‘˜èĤ€‚}
% 中ĉ–‡ĉ‘˜èĤçŽŻċ˘ƒ€‚
% \begin{macrocode}
-\NewDocumentEnvironment{abstract} { +b }
+\NewDocumentEnvironment { abstract } { +b }
{
\cleardoublepage
- \@@_abs_bookmark:
+ \thispagestyle { plain }
+ \@@_abs_bookmark:Vn
+ { \c_@@_name_lang_tl \c_@@_name_abstract_tl } { abstract }
\use:c { @@_make_abs_ \l_@@_info_diploma_tl :nn } { } { ïĵš }
\group_begin: \kaishu \zihao { -4 } #1
}
@@ -4310,12 +4900,13 @@ To produce the documentation run the original source files ending with
% \begin{environment}{abstract*}
% è‹ħĉ–‡ĉ‘˜èĤçŽŻċ˘ƒ€‚\pkg{xparse} ç›ċ‰ä¸ĉ”ŻĉŒċˆċıĥċ¸Ĥĉœ‰ĉ˜Ÿċ·çš„环ċ˘ƒïĵŒċ› ĉ­¤éœ€èĤċ•ç‹Ĵċšäı‰€‚
% \begin{macrocode}
-\NewDocumentEnvironment{abstract*} { +b }
+\NewDocumentEnvironment { abstract* } { +b }
{
\cleardoublepage
- \@@_abs_bookmark_en:
+ \thispagestyle { plain }
+ \@@_abs_bookmark:Vn { \c_@@_name_abstract_en_tl } { abstract-en }
\use:c { @@_make_abs_ \l_@@_info_diploma_tl :nn } { _en } { :~ }
- \group_begin: \kaishu \zihao{ -4 } #1
+ \group_begin: \zihao{ -4 } #1
}
{ \@@_print_keywords:nn { _en } { ;~ } \group_end: }
% \end{macrocode}
@@ -4329,13 +4920,16 @@ To produce the documentation run the original source files ending with
% ċ•ç‹Ĵċˆĥ作的ċ‰è¨€è‡´è°˘éĦµ€‚
% \begin{macrocode}
\NewDocumentEnvironment { preface } { +b }
- { \njuchapter { \c_@@_name_preface_tl } #1 } { }
+ { \@@_chapter:V { \c_@@_name_preface_tl } #1 } { }
\NewDocumentEnvironment { acknowledgement } { +b }
- { \njuchapter { \c_@@_name_acknowledgement_tl } #1 } { }
+ { \@@_chapter:V { \c_@@_name_acknowledgement_tl } #1 } { }
% \end{macrocode}
% \end{environment}
% \end{environment}
%
+%
+% \subsection{ĉˆĉžœċˆ—èĦ¨}
+%
% \begin{macro}{\njupaperlist}
% \changes{v0.10}{2021/09/29}{ĉ–°ċ˘žäş†ĉˆĉžœċˆ—èĦ¨éĦµé˘€‚}
% \changes{v0.14}{2021/12/20}{ĉˆĉžœċˆ—èĦ¨ä¸­ċŻçށċ‡şĉŒ‡ċšä½œè€…ċ§“ċċŠċı´ä𽀂}
@@ -4365,9 +4959,80 @@ To produce the documentation run the original source files ending with
\end{refsection}
\group_end:
}
-%</class>
% \end{macrocode}
% \end{macro}
%
+%
+% \subsection{çĴĤċ·èĦ¨}
+%
+% \begin{macro}{\@@_notation_label:n}
+% ċ·ĤċŻı齐的ĉ ‡ç­ĉ ĵċĵïĵŒç”¨äşŽçĴĤċ·èĦ¨€‚
+% \begin{macrocode}
+\cs_new_protected:Npn \@@_notation_label:n #1 { #1 \hfil }
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\@@_make_notation:nn}
+% 生ĉˆçĴĤċ·èĦ¨€‚ç”ħ于çĴĤċ·èĦ¨ċŞĉœ‰çĴĤċ·ċ’ŒèŻ´ĉ˜Žä¸¤ċˆ—ïĵŒç›¸ĉŻ”于 \env{longtable} 环ċ˘ƒïĵŒ
+% \env{description} 环ċ˘ƒçš„èŻ­ĉ³•ĉ›´ä¸şç€ĉ´ç›´è§‚ïĵŒä¸”èŻ´ĉ˜Žĉ–‡ċ­—ċŻäğĉ˘èĦŒïĵŒċ› è€Œĉ­¤ċ¤„ä½żç”¨
+% \hologo{LaTeX2e} 的ċˆ—èĦ¨çŽŻċ˘ƒèż›èĦŒċ°è£…ïĵŒċšäı‰ċ’ŒèŻ­ĉ³•ċ‚见 \file{source2e.pdf} 中的
+% File I \quad ltlists.dtx 一çĞ €‚
+% \begin{macrocode}
+\cs_new_protected:Npn \@@_make_notation:nn #1#2
+ {
+ \dim_set:Nn \l_@@_tmp_dim { \textwidth - #1 - #2 }
+ \list { }
+ {
+% \end{macrocode}
+% \tn{list} 环ċ˘ƒä½żç”¨ċ½ċşĤċ›şċšçš„ç›’ċ­ċˆĥ作ĉ ‡ç­ïĵŒé€šèż‡ĉŒ‡ċšèż™ä¸Şç›’ċ­çš„ċ½ċşĤ
+% \tn{labelwidth} ċ³ċŻçĦċšċ·Ĥä§ĉ ‡ç­ċŒşċŸŸçš„ċ½ċşĤ€‚
+% \begin{macrocode}
+ \labelwidth #2
+ \labelsep \c_zero_dim
+ \itemsep \c_zero_dim
+ \parsep \c_zero_dim
+% \end{macrocode}
+% ċ³ä§èŻ´ĉ˜Žĉ–‡ċ­—ċŒşċŸŸçš„ċ½ċşĤĉ— ĉ³•ç›´ĉŽĉŒ‡ċšïĵŒè€Œĉ˜Żé èĦç—ċ·Ĥċ³èı距 \tn{leftmargin} ċ’Œ
+% \tn{rightmargin} ċ—ċˆ°çš„€‚
+% \begin{macrocode}
+ \leftmargin .5\l_@@_tmp_dim
+ \rightmargin \leftmargin
+ \advance \leftmargin #2
+ \cs_set_eq:NN \makelabel \@@_notation_label:n
+ }
+ }
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{environment}{notation}
+% \changes{v0.15}{2022/01/17}{ĉä›çĴĤċ·èĦ¨çŽŻċ˘ƒ€‚}
+% çĴĤċ·èĦ¨çŽŻċ˘ƒ€‚
+% \begin{arguments}
+% \item èŻ´ĉ˜ŽċŒşċŸŸċ½ċşĤïĵŒċˆċ§‹ċ€ĵ为 10 em€‚èŻ´ĉ˜Žċ½ċşĤ的调ĉ•´ĉ›´ä¸şċ¸¸è§ïĵŒĉ‰€äğĉ”ċœ¨ċ‰é˘€‚
+% \item çĴĤċ·ċŒşċŸŸċ½ċşĤïĵŒċˆċ§‹ċ€ĵ为 5 em
+% \end{arguments}
+% \begin{macrocode}
+\NewDocumentEnvironment { notation } { O { 10 em } O { 5 em } }
+ {
+ \@@_chapter:V { \c_@@_name_notation_tl }
+ \@@_make_notation:nn { #1 } { #2 }
+ }
+ { \endlist }
+% \end{macrocode}
+% \end{environment}
+%
+% \begin{environment}{notation*}
+% ċ¸Ĥĉœ‰ĉ˜Ÿċ·çš„çĴĤċ·èĦ¨ä¸äĵšĉ’ċ…ç›ċ½•€‚
+% \begin{macrocode}
+\NewDocumentEnvironment { notation* } { O { 10 em } O { 5 em } }
+ {
+ \chapter * { \c_@@_name_notation_tl }
+ \@@_make_notation:nn { #1 } { #2 }
+ }
+ { \endlist }
+%</class>
+% \end{macrocode}
+% \end{environment}
+%
% \end{implementation}
%
diff --git a/macros/unicodetex/latex/njuthesis/njuthesis.pdf b/macros/unicodetex/latex/njuthesis/njuthesis.pdf
index 5aa0cc75c0..6d15a76a77 100644
--- a/macros/unicodetex/latex/njuthesis/njuthesis.pdf
+++ b/macros/unicodetex/latex/njuthesis/njuthesis.pdf
Binary files differ
diff --git a/macros/unicodetex/latex/tipauni/README.txt b/macros/unicodetex/latex/tipauni/README.txt
index 2d8c319a77..f0aa93342f 100644
--- a/macros/unicodetex/latex/tipauni/README.txt
+++ b/macros/unicodetex/latex/tipauni/README.txt
@@ -1,7 +1,7 @@
--------------------------------------------------------------------------
Package: tipauni
Author: à¤¨à¤żà¤°à¤‚à¤œà¤¨
-Version: v0.4 (16 December, 2021)
+Version: v0.5 (20 February, 2022)
Description: For producing Unicode characters with TIPA commands.
Repository: https://git.gnu.org.ua/tipauni.git
Bug tracker: https://puszcza.gnu.org.ua/bugs/?group=tipauni
diff --git a/macros/unicodetex/latex/tipauni/tipauni-commands.pdf b/macros/unicodetex/latex/tipauni/tipauni-commands.pdf
index 10b4f998ce..0a7c0ecf31 100644
--- a/macros/unicodetex/latex/tipauni/tipauni-commands.pdf
+++ b/macros/unicodetex/latex/tipauni/tipauni-commands.pdf
Binary files differ
diff --git a/macros/unicodetex/latex/tipauni/tipauni-example.pdf b/macros/unicodetex/latex/tipauni/tipauni-example.pdf
index e8c22e84c5..372aeddaf6 100644
--- a/macros/unicodetex/latex/tipauni/tipauni-example.pdf
+++ b/macros/unicodetex/latex/tipauni/tipauni-example.pdf
Binary files differ
diff --git a/macros/unicodetex/latex/tipauni/tipauni.dtx b/macros/unicodetex/latex/tipauni/tipauni.dtx
index 8c942d1ba6..caeeb9bd34 100644
--- a/macros/unicodetex/latex/tipauni/tipauni.dtx
+++ b/macros/unicodetex/latex/tipauni/tipauni.dtx
@@ -4,14 +4,14 @@
% ---------------------------------------------------------------------------
% Package: tipauni
% Author: à¤¨à¤żà¤°à¤‚à¤œà¤¨
-% Version: v0.4 (16 December, 2021)
+% Version: v0.5 (20 February, 2022)
% Description: For producing Unicode characters with TIPA commands.
% Repository: https://git.gnu.org.ua/tipauni.git
% Bug tracker: https://puszcza.gnu.org.ua/bugs/?group=tipauni
% License: GPL v3.0+, GFDL v1.3+
% ---------------------------------------------------------------------------
-% LaTeX Package tipauni v0.4
-% Copyright Âİ 2021 à¤¨à¤żà¤°à¤‚à¤œà¤¨
+% LaTeX Package tipauni v0.5
+% Copyright Âİ 2021, 2022 à¤¨à¤żà¤°à¤‚à¤œà¤¨
%
% This program is free software: you can redistribute it and/or modify
% it under the terms of the GNU General Public License as published by
@@ -33,30 +33,30 @@
% and the derived file tipauni.sty.
% \fi
% \iffalse
-%<*internal>
+%<*internal>
\iffalse
-%</internal>
-%<*readme>
+%</internal>
+%<*readme>
--------------------------------------------------------------------------
Package: tipauni
Author: à¤¨à¤żà¤°à¤‚à¤œà¤¨
-Version: v0.4 (16 December, 2021)
+Version: v0.5 (20 February, 2022)
Description: For producing Unicode characters with TIPA commands.
Repository: https://git.gnu.org.ua/tipauni.git
Bug tracker: https://puszcza.gnu.org.ua/bugs/?group=tipauni
License: GPL v3.0+, GFDL v1.3+
--------------------------------------------------------------------------
-%</readme>
-%<*internal>
+%</readme>
+%<*internal>
\fi
-%</internal>
-%<*driver|package>
+%</internal>
+%<*driver|package>
\def\tipauniname{tipauni}
-\def\tipauniversion{0.4}
-\def\tipaunidate{2021-12-16}
+\def\tipauniversion{0.5}
+\def\tipaunidate{2022-02-20}
\def\tipaunidescription{For producing Unicode characters with TIPA commands}
-%</driver|package>
-%<*driver>
+%</driver|package>
+%<*driver>
\documentclass{l3doc}
\usepackage{multicol}
\usepackage{graphicx}
@@ -88,7 +88,7 @@ Scale=0.8%
\begin{document}
\DocInput{\tipauniname.dtx}
\end{document}
-%</driver>
+%</driver>
% \fi
% \title{The \pkg{\tipauniname} package}
% \author{^^A
@@ -104,7 +104,7 @@ Scale=0.8%
% Version \tipauniversion\ --- \tipaunidate\\[1ex]^^A
% {^^A
% \small\faIcon{link}\quad
-% \url{https://ctan.org/pkg/tipauni}
+% \url{https://ctan.org/pkg/tipauni}^^A
% }\\^^A
% {^^A
% \small\faIcon{bug}\quad
@@ -118,7 +118,7 @@ Scale=0.8%
% \vfill
% {%
% \setlength{\parindent}{0pt}
-% Copyright Âİ 2021 {\devtext à¤¨à¤żà¤°à¤‚à¤œà¤¨}
+% Copyright Âİ 2021, 2022 {\devtext à¤¨à¤żà¤°à¤‚à¤œà¤¨}
%
% Permission is granted to copy, distribute and/or modify this document under
% the terms of the GNU Free Documentation License, Version 1.3 or any later
@@ -138,12 +138,12 @@ Scale=0.8%
% their beloved TIPA shortcuts with the benefits of Unicode i.e.\
% searchability, copy-pasting, changing the font and many more. As this
% package needs the package \pkg{fontspec} for loading an IPA font, it needs
-% to be compiled with \XeLaTeX\ or Lua\LaTeX. This package can also be
-% viewed as an ASCII-based input method for producing IPA characters in
-% Unicode.
+% to be compiled with Lua/\XeLaTeX. This package can also be viewed as an
+% ASCII-based input method for producing IPA characters in Unicode.
% \end{abstract}
%
% \section{Acknowledgements}
+%
% This package is completed because of the rigorous help by Jairo A.\ del Rio,
% Jonathan P.\ Spratte, Phelype Oleinink \textit{\&} Ulrike Fischer. Their
% suggestions and contributions are extremely valuable for the development of
@@ -153,22 +153,126 @@ Scale=0.8%
% \pkg{expl3}. Phelype Oleinik has helped the package by building a test-suit
% for regression-tests. The tests can be seen in the git-repository of the
% project.
+%
+% Lemures Lemniscati pointed a few bugs in the documentation \& the code.
+% Their details are as follows.
+% are as follows:
+%
+% \begin{description}
+% \item[2022-01-03]
+% A typo '\cs{textsh}' in tipauni.dtx.
+% \href{https://puszcza.gnu.org.ua/bugs/index.php?538}{(link)}
+% \item[2022-01-09]
+% Avoid unconditional loading of CharisSIL.
+% \href{https://puszcza.gnu.org.ua/bugs/index.php?539}{(link)}
+% \item[2022-01-09]
+% Fix typos in Input B of Raised and Lowered.
+% \href{https://puszcza.gnu.org.ua/bugs/index.php?540}{(link)}
+% \item[2022-01-09]
+% \cs{textcorner} should be defined by \cs{DeclareTextSymbol}.
+% \href{https://puszcza.gnu.org.ua/bugs/index.php?541}{(link)}
+% \item[2022-01-09]
+% Fix a typo in Input B of Near-close near-front rounded.
+% \href{https://puszcza.gnu.org.ua/bugs/index.php?542}{(link)}
+% \end{description}
+%
+% All of these contributions are highly valuable for the development of this
+% package.
%
% \section{Package options}
%
% \begin{function}{documentfont}
+% \begin{syntax}
+% documentfont=\meta{font-name}
+% \end{syntax}
+%
% The default font for the entire document set by this package is the
-% \href{https://www.ctan.org/pkg/charissil}{Charis SIL}. Users can easily
-% change it with the package-option \verb|documentfont|. This option takes
-% one value which is the \meta{font name}. e.g.\ For using the
-% \href{https://www.ctan.org/pkg/doulossil}{Doulos SIL} font as the main
-% font, use the package like it is used in the following.
+% \href{https://ctan.org/pkg/charissil}{Charis SIL}. Users can easily change
+% it with the package-option \verb|documentfont|. This option takes one
+% value which is the hfont namei. e.g.\ For using the
+% \href{https://ctan.org/pkg/doulossil}{Doulos SIL} font as the main font,
+% use the package like it is used in the following.
+%
% \begin{verbatim}
% \usepackage[documentfont=DoulosSIL]{tipauni}
% \end{verbatim}
+%
+% Please note that you must provide a value to this key. If you pass it an
+% empty value; i.e.,
+% \enquote{\verb|documentfont=\{\}|}/\enquote{\verb|documentfont=|} or no
+% value, i.e., \enquote{\verb|documentfont|}, you will be prompted with
+% errors from package \pkg{tipauni}. If an empty/no-value
+% \verb|documentfont| is used \& no other non-empty \verb|documentfont| has
+% been used so far; then the document is typeset with the default
+% font-family of Lua/\XeLaTeX, i.e., the Latin Modern family. If another
+% \verb|documentfont| has a non-empty value, the value of that option will
+% be used as the font of the document.
+% \end{function}
+%
+% \begin{function}{fontspecoptions}
% \begin{syntax}
-% documentfont=\meta{font name}
+% fontspecoptions=\meta{font-options}
% \end{syntax}
+%
+% This option can be used to set options to the font set with
+% \verb|documentfont| package option. If the \verb|recommendedfont| option
+% is used \& has the highest priority; the options set with
+% \verb|fontspecoptions| will be used with the Charis SIL font. If the
+% \verb|preservefont| option has the highest priority, this parameter will
+% be ineffective \& throw a warning. In the argument of this option write as
+% if you are writing in the optional parameter of the \cs{setmainfont}
+% command. e.g.\
+%
+% \begin{verbatim}
+% \usepackage[fontspecoptions={Scale=1.5}]{tipauni}
+% \end{verbatim}
+%
+% \noindent If this options is used with no value it will be ignored with a
+% warning.
+%
+% \noindent e.g.\ Try \verb|\usepackage[fontspecoptions]{tipauni}|.
+%
+% \medskip
+%
+% \noindent If it is used with an empty value it will reset the fontspec-options so
+% far you have set. e.g.\ Try:
+%
+% \begin{verbatim}
+% \usepackage[%
+% fontspecoptions={Scale=1.5},%
+% fontspecfontspecoptions={}%
+% ]{tipauni}
+% \end{verbatim}
+% \end{function}
+%
+% Please note that the keys so far documented are the only keys which take
+% values. Other than these the following keys \emph{don't} take any value. You
+% will be prompted with an error from package \pkg{expkv} if you use values
+% for the following keys.
+%
+% \begin{function}{preservefont}
+% This option will omit executing the \cs{setmainfont} command with Charis
+% SIL. The typeset document will use the default font of Lua/\XeLaTeX, i.e.,
+% the Latin Modern.
+% \end{function}
+%
+% \begin{function}{recommendedfont}
+% This option is used to override other font definitions made with option
+% \verb|documentfont|. Charis SIL will be used as the main font of the
+% document when this option is used.
+% \end{function}
+%
+% Please note that every option so far mentioned can potentially override each
+% other. e.g.\ If a \verb|documentfont| is added after a \verb|preservefont|,
+% the former will override the latter (\& vice versa). It is true for all
+% these three package options.
+%
+% \begin{function}{resetfontspecoptions}
+% This option is used to reset all the \pkg{fontspec} options set with
+% package option \verb|fontspecoptions|. As noted for the font-options,
+% these two options which deal with the options of the loaded fonts also can
+% override each other. The last one loaded will be considered of the highest
+% priority.
% \end{function}
%
% \begin{function}{incompatible}
@@ -189,6 +293,7 @@ Scale=0.8%
% typing symbols in the IPA chart.
%
% \subsection{Pulmonic consonants}
+%
% \begin{ThreePartTable}
% \begin{TableNotes}
% \item[\textcolor{red}{§}] These commands are also available without
@@ -236,7 +341,7 @@ Scale=0.8%
% Dental voiceless fricative & \verb|\texttheta| & \verb|T| & θ \\
% Dental voiced fricative & \verb|\dh|\tnote{\textcolor{red}{§}} &
% \verb|D| & ° \\
-% Palatal voiceless fricative & \verb|\textsh| & \verb|S| & ʃ \\
+% Palatal voiceless fricative & \verb|\textesh| & \verb|S| & ʃ \\
% Palatal voiced fricative & \verb|\textyogh| & \verb|Z| & ʒ \\
% Retroflex voiceless fricative & \verb|\textrtails| & \verb|\:s| & ʂ \\
% Retroflex voiceless fricative & \verb|\textrtailz| & \verb|\:z| & ʐ \\
@@ -267,6 +372,7 @@ Scale=0.8%
% \end{ThreePartTable}
%
% \subsection{Non-Pulmonic consonants}
+%
% \begin{longtable}{%
% l@{\hspace{0.3cm}-\hspace{0.3cm}}%
% l@{\hspace{0.3cm}-\hspace{0.3cm}}%
@@ -344,7 +450,7 @@ Scale=0.8%
% Description & Input A & Input B &\multicolumn{1}{l}{Symbol}\\
% \midrule
% Near-close near-front unrounded & \verb|\textsci| & \verb|I| & ÉŞ \\
-% Near-close near-front rounded & \verb|\textscy| & \verb|y| & ʏ \\
+% Near-close near-front rounded & \verb|\textscy| & \verb|Y| & ʏ \\
% Open-mid front unrounded & \verb|\textepsilon| & \verb|E| & ɛ \\
% Close central unrounded & \verb|\textbari| & \verb|1| & ɨ \\
% Close central rounded & \verb|\textbaru| & \verb|0| & ʉ \\
@@ -366,6 +472,7 @@ Scale=0.8%
% }%
%
% \subsection{Independent diacritics}
+%
% \begin{longtable}{%
% l@{\hspace{0.3cm}-\hspace{0.3cm}}%
% l@{\hspace{0.3cm}-\hspace{0.3cm}}%
@@ -385,6 +492,7 @@ Scale=0.8%
% \end{longtable}
%
% \subsection{Dependent diacritics}
+%
% \begin{TableNotes}
% \item[1] The documentation of package the \pkg{tipa} on p.\ 53
% describes a shorthand command
@@ -392,6 +500,7 @@ Scale=0.8%
% functional. I haven't investigated the reasons, but instead provided a new
% shorthand command for this character.
% \end{TableNotes}
+%
% \begin{ThreePartTable}
% {%
% \small
@@ -424,8 +533,8 @@ Scale=0.8%
% Linguolabial & \verb|\textseagull{l}| & \verb+\|ml+ & lÌĵ \\
% Velarized & \verb|\textsuperimposetilde{i}| & \verb+\vl{i}+\tnote{1} & iÌ´
% \\
-% Raised & \verb|\textraising{ə}| & \verb+\|’@+ & ə̝ \\
-% Lowered & \verb|\textlowering{ə}| & \verb+\|‘@+ & ə̞ \\
+% Raised & \verb|\textraising{ə}| & \verb+\|'@+ & ə̝ \\
+% Lowered & \verb|\textlowering{ə}| & \verb+\|`@+ & ə̞ \\
% Advanced tongue root & \verb|\textadvancing{ə}| & \verb+\|<@+ & ə̘ \\
% Retracted tongue root & \verb|\textretracting{ə}| & \verb+\|>@+ & ə̙ \\
% Dental & \verb|\textsubbridge{t}| & \verb+\|[t+ & tÌŞ \\
@@ -439,6 +548,7 @@ Scale=0.8%
% }%
% \end{ThreePartTable}
% \end{documentation}
+%
% \begin{implementation}
% \section{Implementation}
% \begin{macrocode}
@@ -447,23 +557,102 @@ Scale=0.8%
% \end{macrocode}
% Provide the package with some description \textit{\&} version specifications.
% \begin{macrocode}
-\ProvidesPackage{tipauni}[2021/12/16 v0.4
+\ProvidesPackage{tipauni}[2022/02/20 v0.5
Unicode characters with TIPA commands]
% \end{macrocode}
% Load necessary packages.
% \begin{macrocode}
\RequirePackage{xparse}
\RequirePackage{fontspec}
-\RequirePackage{xkeyval}
+\RequirePackage{expkv-def,expkv-opt}
+% \end{macrocode}
+% Package options are provided using the package \pkg{expkv}.
+% \begin{macrocode}
+\newif\iftipauni@document@font
+\def\tipauni@recommended@font{CharisSIL}
+\tipauni@document@fonttrue
+\let\tipauni@font@options\@empty
+\ekvdefinekeys{tipauni}{%
+ bool incompatible = \iftipauni@nontipa@ignore,%
+ noval preservefont = {%
+ \let\tipauni@font\tipauni@undefined
+ \tipauni@document@fontfalse
+ },%
+ estore fontspecoptions = \tipauni@font@options,%
+ new noval fontspecoptions = {%
+ \PackageWarningNoLine{tipauni}{%
+ As you haven't given any value to package option\MessageBreak
+ `fontspecoptions'; it will be ignored. Please\MessageBreak
+ provide a valid (list of) fontspec option(s)%
+ }%
+ },%
+ noval resetfontspecoptions = {%
+ \let\tipauni@font@options\@empty
+ },%
+ noval documentfont = {%
+ \PackageError{tipauni}{No value for the `documentfont' option}{%
+ The `documentfont' option has no value. Please provide a valid font-name,%
+ \MessageBreak
+ otherwise it will be ignored or (if given) the value of another non-empty%
+ \MessageBreak
+ `documentfont' will be used.%
+ }%
+ \ifdefined\tipauni@font
+ \tipauni@document@fonttrue
+ \else
+ \tipauni@document@fontfalse
+ \fi
+ },%
+ new code documentfont = {%
+ \edef\tipauni@temp{#1}%
+ \ifx\tipauni@temp\@empty
+ \PackageError{tipauni}{Empty `documentfont' option}{%
+ The `documentfont' option has an empty value. Please provide a valid%
+ \MessageBreak
+ font-name, otherwise it will be ignored or (if given) the value of%
+ \MessageBreak
+ another non-empty `documentfont' will be used.%
+ }%
+ \ifdefined\tipauni@font
+ \tipauni@document@fonttrue
+ \else
+ \tipauni@document@fontfalse
+ \fi
+ \else
+ \tipauni@document@fonttrue
+ \let\tipauni@font\tipauni@temp
+ \fi
+ },%
+ noval recommendedfont = {%
+ \tipauni@document@fonttrue
+ \let\tipauni@font\tipauni@recommended@font
+ }%
+}
+\ekvoProcessLocalOptions{tipauni}
% \end{macrocode}
-% Package options are provided using the package \pkg{xkeyval}. The following
-% commands provide the option \verb|documentfont|.
+% The following code executes the \verb|\setmainfont| command \& issues a
+% warning in a special case.
% \begin{macrocode}
-\setmainfont{CharisSIL} %% https://ctan.org/pkg/charissil
-\DeclareOptionX{documentfont}{\setmainfont{#1}}
-\newif\ifnontipaignore
-\DeclareOptionX{incompatible}{\nontipaignoretrue}
-\ProcessOptionsX\relax
+\iftipauni@document@font
+ \ifdefined\tipauni@font
+ \else
+ \let\tipauni@font\tipauni@recommended@font
+ \fi
+ \expandafter\setmainfont\expandafter
+ [\expandafter{\tipauni@font@options}]{\tipauni@font}
+\else
+ \ifx\tipauni@font@options\@empty
+ \else
+ \PackageWarningNoLine{tipauni}{%
+ An active font loaded with package fontspec is\MessageBreak
+ necessary for `fontspecoptions' to take effect.\MessageBreak
+ Please use the `documentfont'/`recommendedfont'\MessageBreak
+ option or load a font outside package `tipauni'\MessageBreak
+ to make your options active. Currently ignoring:\MessageBreak
+ [\tipauni@font@options]%
+ }%
+ \fi
+\fi
% \end{macrocode}
% The following commands were kindly suggested by Phelype Oleinik for developing
% a conditional which is always global.
@@ -471,7 +660,7 @@ Unicode characters with TIPA commands]
\newif\ifnontipa
\protected\def\nontipatrue{\global\let\ifnontipa\iftrue}
\protected\def\nontipafalse{\global\let\ifnontipa\iffalse}
-\ifnontipaignore
+\iftipauni@nontipa@ignore
\protected\def\nontipatrue{}
\fi
% \end{macrocode}
@@ -555,8 +744,8 @@ Unicode characters with TIPA commands]
\DeclareTextComposite{\tipaunisemicolon}{TU}{R}{"280}
%%-- Taps or flaps
%%-- Labiodental flap
-\tipaunicmd{\labdentflap}{âħħ} %% tipauni-exclusive
-\DeclareTextComposite{\tipaunistar}{TU}{v}{"2C71} %% tipauni-exclusive
+\tipaunicmd{\labdentflap}{âħħ}%% tipauni-exclusive
+\DeclareTextComposite{\tipaunistar}{TU}{v}{"2C71}%% tipauni-exclusive
%%--** Alveolar
\DeclareTextSymbol{\textfishhookr}{TU}{"27E}%% É
%%--** Retroflex
@@ -597,7 +786,7 @@ Unicode characters with TIPA commands]
\DeclareTextComposite{\tipaunistar}{TU}{z}{"26E}
%%-- Approximants
%%-- Labiodental approximant
-\tipaunicmd{\labdentapp}{ʋ} %% tipauni-exclusive
+\tipaunicmd{\labdentapp}{ʋ}%% tipauni-exclusive
%%--** Alveolar
\DeclareTextSymbol{\textturnr}{TU}{"279}%% Éı
\DeclareTextComposite{\tipaunistar}{TU}{r}{"279}
@@ -620,10 +809,10 @@ Unicode characters with TIPA commands]
\DeclareTextSymbol{\textbullseye}{TU}{"298}%% ʘ
\DeclareTextComposite{\tipaunibang}{TU}{o}{"298}
%%-- Postalveolar click
-\tipaunicmd{\pstalvclick}{ǃ} %% tipauni-exclusive
+\tipaunicmd{\pstalvclick}{ǃ}%% tipauni-exclusive
%%--** Palato-alveolar
\DeclareTextSymbol{\textdoublebarpipe}{TU}{"1C2}%% ǂ
-\DeclareTextComposite{\tipaunibang}{TU}{c}{"1C2} %% tipauni-exclusive
+\DeclareTextComposite{\tipaunibang}{TU}{c}{"1C2}%% tipauni-exclusive
%%--** Alveolar lateral
\DeclareTextSymbol{\textdoublepipe}{TU}{"1C1}% ǁ
%%-- Implosives
@@ -647,24 +836,24 @@ Unicode characters with TIPA commands]
\DeclareTextSymbol{\textturnh}{TU}{"265}%% É
\DeclareTextSymbol{\textsch}{TU}{"29C}%% ʜ
\DeclareTextSymbol{\textbarrevglotstop}{TU}{"2A2}%% Ê˘
-\DeclareTextComposite{\tipaunistar}{TU}{1}{"2A2} %% tipauni-exclusive
+\DeclareTextComposite{\tipaunistar}{TU}{1}{"2A2}%% tipauni-exclusive
\DeclareTextSymbol{\textbarglotstop}{TU}{"2A1}%% ÊĦ
-\DeclareTextComposite{\tipaunistar}{TU}{2}{"2A1} %% tipauni-exclusive
+\DeclareTextComposite{\tipaunistar}{TU}{2}{"2A1}%% tipauni-exclusive
\DeclareTextSymbol{\textctc}{TU}{"255}%% ɕ
\DeclareTextSymbol{\textctz}{TU}{"291}%% ʑ
-\DeclareTextComposite{\tipaunistar}{TU}{Z}{"291} %% tipauni-exclusive
+\DeclareTextComposite{\tipaunistar}{TU}{Z}{"291}%% tipauni-exclusive
\DeclareTextSymbol{\textturnlonglegr}{TU}{"27A}%% Éş
-\DeclareTextComposite{\tipaunibang}{TU}{r}{"27A} %% tipauni-exclusive
+\DeclareTextComposite{\tipaunibang}{TU}{r}{"27A}%% tipauni-exclusive
\DeclareTextSymbol{\texththeng}{TU}{"267}%% ɧ
-\DeclareTextComposite{\tipaunistar}{TU}{3}{"267} %% tipauni-exclusive
-\DeclareTextComposite{\tipaunistar}{TU}{k}{"029E} % ʞ
-\DeclareTextComposite{\tipaunistar}{TU}{t}{"287} % ʇ
-\DeclareTextComposite{\tipaunistar}{TU}{w}{"28D} % ʍ
-\DeclareTextComposite{\tipaunisemicolon}{TU}{E}{"1D07} % ᴇ
-\DeclareTextComposite{\tipaunisemicolon}{TU}{J}{"1D0A} % ᴊ
-\DeclareTextComposite{\tipaunisemicolon}{TU}{A}{"1D00} % ᴀ
-\DeclareTextComposite{\tipaunisemicolon}{TU}{H}{"29C} % ʜ
-\DeclareTextComposite{\tipaunisemicolon}{TU}{U}{"1D1C} % ᴜ
+\DeclareTextComposite{\tipaunistar}{TU}{3}{"267}%% tipauni-exclusive
+\DeclareTextComposite{\tipaunistar}{TU}{k}{"029E}% ʞ
+\DeclareTextComposite{\tipaunistar}{TU}{t}{"287}% ʇ
+\DeclareTextComposite{\tipaunistar}{TU}{w}{"28D}% ʍ
+\DeclareTextComposite{\tipaunisemicolon}{TU}{E}{"1D07}% ᴇ
+\DeclareTextComposite{\tipaunisemicolon}{TU}{J}{"1D0A}% ᴊ
+\DeclareTextComposite{\tipaunisemicolon}{TU}{A}{"1D00}% ᴀ
+\DeclareTextComposite{\tipaunisemicolon}{TU}{H}{"29C}% ʜ
+\DeclareTextComposite{\tipaunisemicolon}{TU}{U}{"1D1C}% ᴜ
%% Vowels
\DeclareTextSymbol{\textsci}{TU}{"26A}%% ÉŞ
\DeclareTextSymbol{\textscy}{TU}{"28F}%% ʏ
@@ -700,16 +889,16 @@ Unicode characters with TIPA commands]
% diacritics.
% \begin{macrocode}
%% No audible release
-\DeclareUnicodeAccent{\textcorner}{TU}{"31A}%% ̚
+\DeclareTextSymbol{\textcorner}{TU}{"31A}%% ̚
\tipaunicmd{\tc}{̚}
%% Syllabic
-\DeclareUnicodeAccent{\textsyllabic}{TU}{"0329} %% Ìİ
+\DeclareUnicodeAccent{\textsyllabic}{TU}{"0329}%% Ìİ
\NewDocumentCommand\s{ m }{\textsyllabic{\textipa{#1}}\nontipatrue}
%% Non-syllabic
-\DeclareUnicodeAccent{\textsubarch}{TU}{"032F} %% ÌŻ
+\DeclareUnicodeAccent{\textsubarch}{TU}{"032F}%% ÌŻ
\NewDocumentCommand\ns{ m }{\textsubarch{\textipa{#1}}}
%% Laminal
-\DeclareUnicodeAccent{\textsubsquare}{TU}{"033B} %% Ìğ
+\DeclareUnicodeAccent{\textsubsquare}{TU}{"033B}%% Ìğ
\NewDocumentCommand\lmn{ m }{\textsubsquare{\textipa{#1}}\nontipatrue}
%% Other complex shorthand commands
\DeclareTextCommand{\@pipeshorthands}{TU}[2]{%
@@ -759,7 +948,7 @@ Unicode characters with TIPA commands]
% We only search for the macros not contained in \pkg{tipa} if this is requested
% by the user.
% \begin{macrocode}
-\ifnontipaignore
+\iftipauni@nontipa@ignore
\cs_new_eq:NN \@@_nontipa_search: \prg_do_nothing:
\cs_new_eq:NN \@@_nontipa_search:n \use_none:n
\else
@@ -1126,66 +1315,66 @@ Unicode characters with TIPA commands]
% \begin{macrocode}
%%-- Dependent diacritic marks
%%--** Voiceless
-\DeclareUnicodeAccent{\textsubring}{TU}{"0325} %% Ì
+\DeclareUnicodeAccent{\textsubring}{TU}{"0325}%% Ì
\DeclareTextCommand{\r}{TU}{\tipaunisubring}
\protected\def\tipaunisubring{\@ifstar{\TipaUniSubRing}{\TipaUniSubRing}}
\NewDocumentCommand\TipaUniSubRing{ m }{\textsubring{\textipa{#1}}}
%%--** Voiced
-\DeclareUnicodeAccent{\textsubwedge}{TU}{"032C} %% ÌĴ
+\DeclareUnicodeAccent{\textsubwedge}{TU}{"032C}%% ÌĴ
\DeclareTextCommand{\v}{TU}{\tipaunisubwedge}
\protected\def\tipaunisubwedge{\@ifstar{\TipaUniSubWedge}{\TipaUniSubWedge}}
\NewDocumentCommand\TipaUniSubWedge{ m }{\textsubwedge{\textipa{#1}}}
%%--** More rounded
-\DeclareUnicodeAccent{\textsubrhalfring}{TU}{"0339} %% Ìı
+\DeclareUnicodeAccent{\textsubrhalfring}{TU}{"0339}%% Ìı
\NewDocumentCommand\tipaunisubrhalfring{ m }{\textsubrhalfring{\textipa{#1}}}
%%--** Less rounded
-\DeclareUnicodeAccent{\textsublhalfring}{TU}{"031C} %% ̜
+\DeclareUnicodeAccent{\textsublhalfring}{TU}{"031C}%% ̜
\NewDocumentCommand\tipaunisublhalfring{ m }{\textsublhalfring{\textipa{#1}}}
%%--** Advanced
-\DeclareUnicodeAccent{\textsubplus}{TU}{"031F} %% ̟
+\DeclareUnicodeAccent{\textsubplus}{TU}{"031F}%% ̟
\NewDocumentCommand\tipaunisubplus{ m }{\textsubplus{\textipa{#1}}}
%%--** Retracted
-\DeclareUnicodeAccent{\textsubbar}{TU}{"0320} %% Ì 
+\DeclareUnicodeAccent{\textsubbar}{TU}{"0320}%% Ì 
\DeclareTextCommand{\=}{TU}{\tipaunisubbar}
\protected\def\tipaunisubbar{\@ifstar{\TipaUniSubBar}{\TipaUniSubBar}}
\NewDocumentCommand\TipaUniSubBar{ m }{\textsubbar{\textipa{#1}}}
%%--** Mid-centralized
-\DeclareUnicodeAccent{\textovercross}{TU}{"033D} %% ̽
+\DeclareUnicodeAccent{\textovercross}{TU}{"033D}%% ̽
\NewDocumentCommand\tipauniovercross{ m }{\textovercross{\textipa{#1}}}
%%--** Breathy voiced
-\DeclareUnicodeAccent{\textsubumlaut}{TU}{"0324} %% ̤
+\DeclareUnicodeAccent{\textsubumlaut}{TU}{"0324}%% ̤
\DeclareTextCommand{\"}{TU}{\tipaunisubumlaut}
\protected\def\tipaunisubumlaut{\@ifstar{\TipaUniSubUmlaut}{\TipaUniSubUmlaut}}
\NewDocumentCommand\TipaUniSubUmlaut{ m }{\textsubumlaut{\textipa{#1}}}
%%--** Creaky voiced
-\DeclareUnicodeAccent{\textsubtilde}{TU}{"0330} %% Ì°
+\DeclareUnicodeAccent{\textsubtilde}{TU}{"0330}%% Ì°
\DeclareTextCommand{\~}{TU}{\tipaunisubtilde}
\protected\def\tipaunisubtilde{\@ifstar{\TipaUniSubTilde}{\TipaUniSubTilde}}
\NewDocumentCommand\TipaUniSubTilde{ m }{\textsubtilde{\textipa{#1}}}
%%--** Linguo-labialized
-\DeclareUnicodeAccent{\textseagull}{TU}{"033C} %% Ìĵ
+\DeclareUnicodeAccent{\textseagull}{TU}{"033C}%% Ìĵ
\NewDocumentCommand\tipauniseagull{ m }{\textseagull{#1}}
%%--** Velarized
-\DeclareUnicodeAccent{\textsuperimposetilde}{TU}{"0334} %% Ì´
+\DeclareUnicodeAccent{\textsuperimposetilde}{TU}{"0334}%% Ì´
\NewDocumentCommand\tipaunisuperimposetilde{ m }{\textsuperimposetilde{#1}}
\NewDocumentCommand\vl{ m }{\textsuperimposetilde{\textipa{#1}}}
%%--** Raised
-\DeclareUnicodeAccent{\textraising}{TU}{"031D} %% ̝
+\DeclareUnicodeAccent{\textraising}{TU}{"031D}%% ̝
\NewDocumentCommand{\tipauniraising}{m}{\textraising{#1}}
%%--** Lowered
-\DeclareUnicodeAccent{\textlowering}{TU}{"031E} %% ̞
+\DeclareUnicodeAccent{\textlowering}{TU}{"031E}%% ̞
\NewDocumentCommand{\tipaunilowering}{m}{\textlowering{#1}}
-% %%--** Advanced tongue root
-\DeclareUnicodeAccent{\textadvancing}{TU}{"0318} %% ̘
+%%%--** Advanced tongue root
+\DeclareUnicodeAccent{\textadvancing}{TU}{"0318}%% ̘
\NewDocumentCommand{\tipauniadvancing}{m}{\textadvancing{#1}}
%%--** Retracted tongue root
-\DeclareUnicodeAccent{\textretracting}{TU}{"0319} %% ̙
+\DeclareUnicodeAccent{\textretracting}{TU}{"0319}%% ̙
\NewDocumentCommand{\tipauniretracting}{m}{\textretracting{#1}}
%%--** Dental
-\DeclareUnicodeAccent{\textsubbridge}{TU}{"032A} %% ÌŞ
+\DeclareUnicodeAccent{\textsubbridge}{TU}{"032A}%% ÌŞ
\NewDocumentCommand\tipaunisubbridge{ m }{\textsubbridge{#1}}
%%--** Apical
-\DeclareUnicodeAccent{\textinvsubbridge}{TU}{"033A} %% Ìş
+\DeclareUnicodeAccent{\textinvsubbridge}{TU}{"033A}%% Ìş
\NewDocumentCommand\tipauniinvsubbridge{ m }{\textinvsubbridge{#1}}
%%--** Tie bar (above)
\DeclareTextCommand{\tipaunitexttoptiebar}{TU}[2]{#1\symbol{"0361}#2}
diff --git a/macros/unicodetex/latex/tipauni/tipauni.ins b/macros/unicodetex/latex/tipauni/tipauni.ins
index 839888bfa0..4ea7f67bb4 100644
--- a/macros/unicodetex/latex/tipauni/tipauni.ins
+++ b/macros/unicodetex/latex/tipauni/tipauni.ins
@@ -15,8 +15,8 @@ Bug tracker: https://puszcza.gnu.org.ua/bugs/?group=tipauni
License: GPL v3.0+, GFDL 1.3+
---------------------------------------------------------------------------
-LaTeX Package tipauni v0.4
-Copyright Âİ 2021 à¤¨à¤żà¤°à¤‚à¤œà¤¨
+LaTeX Package tipauni v0.4.1
+Copyright Âİ 2021, 2022 à¤¨à¤żà¤°à¤‚à¤œà¤¨
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
diff --git a/macros/unicodetex/latex/tipauni/tipauni.pdf b/macros/unicodetex/latex/tipauni/tipauni.pdf
index 8ff2fc8c2f..da0fce2737 100644
--- a/macros/unicodetex/latex/tipauni/tipauni.pdf
+++ b/macros/unicodetex/latex/tipauni/tipauni.pdf
Binary files differ
diff --git a/macros/xetex/latex/xepersian/README b/macros/xetex/latex/xepersian/README
index 679a271a2c..b7f7451eb8 100644
--- a/macros/xetex/latex/xepersian/README
+++ b/macros/xetex/latex/xepersian/README
@@ -1,6 +1,6 @@
____________________
The XePersian package
-v23.6
+v23.7
The xepersian package provides a convenient interface for
typesetting Persian and English texts in LaTeX, using XeTeX
diff --git a/macros/xetex/latex/xepersian/xepersian-doc-intro.ltx b/macros/xetex/latex/xepersian/xepersian-doc-intro.ltx
index 66085aecce..f08ba92b94 100644
--- a/macros/xetex/latex/xepersian/xepersian-doc-intro.ltx
+++ b/macros/xetex/latex/xepersian/xepersian-doc-intro.ltx
@@ -25,7 +25,7 @@ If you use \textsf{\XePersian} package to write any input \TeX\ document, and th
* Copyright (c) 2008--2022 Vafa Khalighi
* Copyright (c) 2018--2020 bidi-tex GitHub Organization
*
-* v23.6, 2022/02/20
+* v23.7, 2022/02/20
*
* License: LaTeX Project Public License, version
* 1.3c or higher (your choice)
diff --git a/macros/xetex/latex/xepersian/xepersian-doc-title.ltx b/macros/xetex/latex/xepersian/xepersian-doc-title.ltx
index 878e0abcb1..d80debfca7 100644
--- a/macros/xetex/latex/xepersian/xepersian-doc-title.ltx
+++ b/macros/xetex/latex/xepersian/xepersian-doc-title.ltx
@@ -3,7 +3,7 @@
\begin{document}
\title{\textcolor{blue!65!black}{\Huge The \textsf{\XePersian} \textit{Package}}\\
\LARGE Persian for \LaTeXe, using {\XeTeX} engine\\[5pt]
-\large User documentation for \textcolor{blue!65!black}{version 23.6}}
+\large User documentation for \textcolor{blue!65!black}{version 23.7}}
\author{Vafa Khalighi\thanks{Thanks to the bidi-tex GitHub organization consisted of David Carlisle and other members of the {\LaTeX} team to maintain the package in the period 2018--2020.}\\
\url{tex-persian@vafa.ac}}
\setcounter{page}{0}
@@ -14,7 +14,7 @@
\textcolor{blue!65!black}{\Huge The \textsf{\XePersian} \textit{Package}}
\Large
-User documentation for \textcolor{blue!65!black}{version 23.6}}
+User documentation for \textcolor{blue!65!black}{version 23.7}}
\vskip 0pt plus 3fill
\textit{\large to my Master, \textbf{Ferdowsi The Great}}
diff --git a/macros/xetex/latex/xepersian/xepersian-doc.ltx b/macros/xetex/latex/xepersian/xepersian-doc.ltx
index 367860baf5..c9f01b5179 100644
--- a/macros/xetex/latex/xepersian/xepersian-doc.ltx
+++ b/macros/xetex/latex/xepersian/xepersian-doc.ltx
@@ -1,7 +1,7 @@
\documentclass{ltxdoc}
\input{xepersian-doc-preamble.ltx}
\hypersetup{%
- pdftitle={User documentation for version 23.6 of the XePersian
+ pdftitle={User documentation for version 23.7 of the XePersian
package}%
}
\begin{document}
diff --git a/macros/xetex/latex/xepersian/xepersian-doc.pdf b/macros/xetex/latex/xepersian/xepersian-doc.pdf
index 0e82459e23..5c2b31ceb0 100644
--- a/macros/xetex/latex/xepersian/xepersian-doc.pdf
+++ b/macros/xetex/latex/xepersian/xepersian-doc.pdf
Binary files differ
diff --git a/macros/xetex/latex/xepersian/xepersian.dtx b/macros/xetex/latex/xepersian/xepersian.dtx
index 33dccc8412..28e5a2eff7 100644
--- a/macros/xetex/latex/xepersian/xepersian.dtx
+++ b/macros/xetex/latex/xepersian/xepersian.dtx
@@ -5,7 +5,7 @@
%<*readme>
____________________
The XePersian package
-v23.6
+v23.7
The xepersian package provides a convenient interface for
typesetting Persian and English texts in LaTeX, using XeTeX
@@ -168,7 +168,7 @@ by Vafa Khalighi.
\documentclass{ltxdoc}
\input{xepersian-doc-preamble.ltx}
\hypersetup{%
- pdftitle={Source documentation for version 23.6 of the XePersian
+ pdftitle={Source documentation for version 23.7 of the XePersian
package}%
}
\EnableCrossrefs
@@ -187,7 +187,7 @@ by Vafa Khalighi.
% \GetFileInfo{\jobname.dtx}
% \title{\textcolor{blue!65!black}{\Huge The \textsf{\XePersian} \textit{Package}}\\
%\LARGE Persian for \LaTeXe, using {\XeTeX} engine\\[5pt]
-%\large Source documentation for \textcolor{blue!65!black}{version 23.6}}
+%\large Source documentation for \textcolor{blue!65!black}{version 23.7}}
% \author{Vafa Khalighi\thanks{Thanks to the bidi-tex GitHub organization consisted of David Carlisle and other members of the {\LaTeX} team to maintain the package in the period 2018--2020.}\\
% \url{tex-persian@vafa.ac}}
%\setcounter{page}{0}
@@ -198,7 +198,7 @@ by Vafa Khalighi.
%\textcolor{blue!65!black}{\Huge The \textsf{\XePersian} \textit{Package}}
%
%\Large
-%Source documentation for \textcolor{blue!65!black}{version 23.6}}
+%Source documentation for \textcolor{blue!65!black}{version 23.7}}
%
%\vskip 0pt plus 3fill
%\textit{\large to my Master, \textbf{Ferdowsi The Great}}
@@ -246,7 +246,7 @@ by Vafa Khalighi.
%\iffalse
%<*table>
%\fi
-%% \CheckSum{11214}
+%% \CheckSum{10978}
%% \CharacterTable
%% {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z
%% Lower-case \a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z
@@ -3477,7 +3477,7 @@ U+003E U+003E <> U+00BB ; >> -> RIGHT POINTING GUILLEMET
% \section{File \texttt{xepersian.sty}}
% \begin{macrocode}
\NeedsTeXFormat{LaTeX2e}
-\def\xepersian@version{23.6}
+\def\xepersian@version{23.7}
\def\xepersiandate{2022/02/20}
\ProvidesPackage{xepersian}[\xepersiandate\space v\xepersian@version\space
Persian typesetting in XeLaTeX]
@@ -3566,194 +3566,6 @@ Persian typesetting in XeLaTeX]
\newfontlanguage{Persian}{FAR}
\ExplSyntaxOn
-\cs_new:Nn \xepersian_set_family:Nnn { \__xepersian_set_family:NnnN #1 {#2} {#3} \tl_set_eq:NN }
-\cs_generate_variant:Nn \xepersian_set_family:Nnn {c}
-
-\cs_new_protected:Nn \__xepersian_select_font_family:nn
- {
- \group_begin:
- \__fontspec_font_suppress_not_found_error:
- \__fontspec_init:
-
- \__fontspec_sanitise_fontname:Nn \l_fontspec_fontname_tl {#2}
- \__fontspec_sanitise_fontname:Nn \l__fontspec_fontname_up_tl {#2}
- \__fontspec_sanitise_fontname:Nn \l__fontspec_basename_tl {#2}
-
- \__fontspec_if_detect_external:nT {#2}
- { \keys_set:nn {fontspec-preparse-external} {Path} }
-
- \keys_set_known:nn {fontspec-preparse-cfg} {#1}
-
- \__fontspec_init_ttc:n {#2}
- \__fontspec_load_external_fontoptions:N \l_fontspec_fontname_tl
-
- \__fontspec_extract_all_features:n {#1}
- \tl_set:Nx \l__fontspec_fontid_tl { \tl_to_str:N \l_fontspec_fontname_tl-:-\tl_to_str:N \l__fontspec_all_features_clist }
-
-
- \__fontspec_preparse_features:
- \__fontspec_load_font:
- \__fontspec_set_scriptlang:
- \__xepersian_get_features:n {}
- \bool_set_false:N \l__fontspec_firsttime_bool
-
- \__fontspec_save_family_needed:nTF {#2}
- {
- \__xepersian_save_family:nn {#1} {#2}
- }
- {
- }
- \group_end:
-
- \tl_set_eq:NN \l_fontspec_family_tl \g__fontspec_nfss_family_tl
- }
-
-\cs_new:Nn \__xepersian_set_family:NnnN
- {
- \tl_set:Nn \l__fontspec_fontface_cs_tl {\l_fontspec_font} % reset
- \tl_set:Nn \l__fontspec_family_label_tl {#1}
- \__xepersian_select_font_family:nn {#2} {#3}
- \__fontspec_tl_new_if_free:N #1
- #4 #1 \l_fontspec_family_tl
- \tl_set:Nn \l__fontspec_fontface_cs_tl {\l_fontspec_font} % reset
- }
-
-\cs_new:Nn \__xepersian_setup_nfss:Nnnn
- {
-
- \__xepersian_get_features:n { #2 , #3 , #4 }
-
- \tl_if_empty:NF \l__fontspec_scale_tl
- {
- \tl_set:Nx \l__fontspec_scale_tl { s*[\l__fontspec_scale_tl] }
- }
-
- \tl_build_put_right:Nx #1
- {
- <\l__fontspec_size_tl> \l__fontspec_scale_tl
- \__fontspec_construct_font_call:nn { \l_fontspec_fontname_tl }
- { \l__fontspec_pre_feat_sclist \g__fontspec_rawfeatures_sclist }
- }
- }
-
-\cs_new:Nn \__xepersian_setup_single_size:nn
- {
- \tl_clear:N \l__fontspec_size_tl
- \tl_set_eq:NN \l__fontspec_sizedfont_tl \l__fontspec_saved_fontname_tl % in case not spec'ed
-
- \keys_set_known:nxN {fontspec-sizing} { \exp_after:wN \use:n #2 }
- \l__fontspec_sizing_leftover_clist
- \tl_if_empty:NT \l__fontspec_size_tl { \__fontspec_error:n {no-size-info} }
-
- % "normal"
- \__fontspec_load_fontname:Nn \l_fontspec_fontname_tl {\l__fontspec_sizedfont_tl}
- \__xepersian_setup_nfss:Nnnn \l__fontspec_nfss_tl {#1} {\l__fontspec_sizing_leftover_clist} {}
-
- % small caps
- \clist_set_eq:NN \l__fontspec_fontfeat_curr_clist \l__fontspec_fontfeat_sc_clist
-
- \bool_if:NF \l__fontspec_nosc_bool
- {
- \tl_if_empty:NTF \l__fontspec_fontname_sc_tl
- {
- \__fontspec_make_smallcaps:TF
- {
- \clist_put_left:Nn \l__fontspec_fontfeat_curr_clist {Letters=SmallCaps}
- }
- {
- \bool_set_true:N \l__fontspec_nosc_bool
- }
- }
- { \__fontspec_load_fontname:Nn \l_fontspec_fontname_tl {\l__fontspec_fontname_sc_tl} }% local for each size
- }
-
- \bool_if:NF \l__fontspec_nosc_bool
- {
- \__fontspec_setup_nfss:Nnnn \l__fontspec_nfss_sc_tl
- {#1} {\l__fontspec_sizing_leftover_clist} {\l__fontspec_fontfeat_curr_clist}
- }
- }
-
-\cs_new:Nn \__xepersian_declare_shape:nnnn
- {
- \tl_build_begin:N \l__fontspec_nfss_tl
- \tl_build_begin:N \l__fontspec_nfss_sc_tl
- \tl_set_eq:NN \l__fontspec_saved_fontname_tl \l_fontspec_fontname_tl
-
- \exp_args:Nx \clist_map_inline:nn {#4} { \__xepersian_setup_single_size:nn {#3} {##1} }
-
- \tl_build_end:N \l__fontspec_nfss_tl
- \tl_build_end:N \l__fontspec_nfss_sc_tl
-
- \__fontspec_declare_shapes_normal:nn {#1} {#2}
- \__fontspec_declare_shapes_smcaps:nn {#1} {#2}
- \__fontspec_declare_shape_slanted:nn {#1} {#2}
- \__fontspec_declare_shapes_bx:nn {#1} {#2}
- \__fontspec_declare_shape_loginfo:nn {#1} {#2}
- }
-\cs_generate_variant:Nn \__xepersian_declare_shape:nnnn {nnxx}
-
-\cs_new:Nn \__xepersian_make_font_shapes:Nnnnn
- {
- \group_begin:
- \__fontspec_keys_set_known:nxN {fontspec-preparse-external} { #4 } \l__fontspec_leftover_clist
- \__fontspec_load_fontname:Nn \l_fontspec_fontname_tl {#1}
- \__xepersian_declare_shape:nnxx {#2} {#3} { \l__fontspec_fontopts_clist, \l__fontspec_leftover_clist } {#5}
- \group_end:
- }
-
-\cs_new:Nn \__xepersian_set_faces_aux:nnnnn
- {
- \fontspec_complete_fontname:Nn \l__fontspec_curr_fontname_tl {#3}
- \__xepersian_make_font_shapes:Nnnnn \l__fontspec_curr_fontname_tl {#1} {#2} {#4} {#5}
- }
-
-\cs_new:Nn \__xepersian_set_faces:
- {
- \__fontspec_add_nfssfont:nnnn \mddefault \shapedefault \l_fontspec_fontname_tl \l__fontspec_fontfeat_up_clist
- \__fontspec_add_nfssfont:nnnn \bfdefault \shapedefault \l__fontspec_fontname_bf_tl \l__fontspec_fontfeat_bf_clist
- \__fontspec_add_nfssfont:nnnn \mddefault \itdefault \l__fontspec_fontname_it_tl \l__fontspec_fontfeat_it_clist
- \__fontspec_add_nfssfont:nnnn \mddefault \sldefault \l__fontspec_fontname_sl_tl \l__fontspec_fontfeat_sl_clist
- \__fontspec_add_nfssfont:nnnn \mddefault \swdefault \l__fontspec_fontname_sw_tl \l__fontspec_fontfeat_sw_clist
- \__fontspec_add_nfssfont:nnnn \bfdefault \itdefault \l__fontspec_fontname_bfit_tl \l__fontspec_fontfeat_bfit_clist
- \__fontspec_add_nfssfont:nnnn \bfdefault \sldefault \l__fontspec_fontname_bfsl_tl \l__fontspec_fontfeat_bfsl_clist
- \__fontspec_add_nfssfont:nnnn \bfdefault \swdefault \l__fontspec_fontname_bfsw_tl \l__fontspec_fontfeat_bfsw_clist
- \prop_map_inline:Nn \l__fontspec_nfssfont_prop { \__xepersian_set_faces_aux:nnnnn ##2 }
- }
-
-\cs_new:Nn \__xepersian_save_family:nn
- {
- \__fontspec_save_fontinfo:n {#2}
- \__fontspec_find_autofonts:
- \DeclareFontFamily{\g__fontspec_nfss_enc_tl}{\g__fontspec_nfss_family_tl}{}
- \__xepersian_set_faces:
- \__fontspec_info:nxx {defining-font} {#1} {#2}
- }
-
-\cs_new:Nn \__xepersian_get_features:n
- {
- \__fontspec_init_fontface:
- \__fontspec_keys_set_known:nxN {fontspec-renderer} {\l__fontspec_fontfeat_clist,#1}
- \l__fontspec_keys_leftover_clist
- \__fontspec_keys_set_known:nxN {fontspec} {\l__fontspec_keys_leftover_clist} \l__fontspec_keys_leftover_clist
- \bool_if:NTF \l__fontspec_ot_bool
- {
- \keys_set:nV {fontspec-opentype} \l__fontspec_keys_leftover_clist
- }
- {
- \bool_if:nT { \l__fontspec_atsui_bool || \l__fontspec_graphite_bool }
- { \keys_set:nV {fontspec-aat} \l__fontspec_keys_leftover_clist }
- }
- \__fontspec_update_featstr:n { script = arab }
-
- \tl_if_empty:NF \l__fontspec_mapping_tl
- { \__fontspec_update_featstr:n { mapping = \l__fontspec_mapping_tl } }
-
- \str_if_eq:eeF { \l__fontspec_hexcol_tl \l__fontspec_opacity_tl }
- { \c__fontspec_hexcol_tl \c__fontspec_opacity_tl }
- { \__fontspec_update_featstr:n { color = \l__fontspec_hexcol_tl\l__fontspec_opacity_tl } }
- }
-
\keys_define:nn {fontspec-opentype}
{
Ligatures / PersianTeX .code:n = { \tl_set:Nn \l__fontspec_mapping_tl {persian-tex-text} },
@@ -3791,7 +3603,7 @@ Persian typesetting in XeLaTeX]
}
\cs_new:Nn \__xepersian_main_settextfont:nn
{
- \xepersian_set_family:Nnn \l__xepersian_persianfont_family_tl {Ligatures=PersianTeX,#1} {#2}
+ \fontspec_set_family:Nnn \l__xepersian_persianfont_family_tl {RawFeature={script=arab},Ligatures=PersianTeX,#1} {#2}
\tl_set_eq:NN \rmdefault \l__xepersian_persianfont_family_tl
\use:x { \exp_not:n { \DeclareRobustCommand \persianfont }
{
@@ -3895,7 +3707,7 @@ Persian typesetting in XeLaTeX]
}
\cs_new:Nn \__xepersian_main_defpersianfont:NnnN
{
- \xepersian_set_family:cnn { l__xepersian_ \cs_to_str:N #1 _family_tl } {Ligatures=PersianTeX,#2} {#3}
+ \fontspec_set_family:cnn { l__xepersian_ \cs_to_str:N #1 _family_tl } {RawFeature={script=arab},Ligatures=PersianTeX,#2} {#3}
\use:x
{
\exp_not:N #4 \exp_not:N #1 {}
@@ -3969,7 +3781,7 @@ Persian typesetting in XeLaTeX]
}
\cs_new:Nn \__xepersian_main_setpersiansansfont:nn
{
- \xepersian_set_family:Nnn \l__xepersian_persiansffamily_family_tl {Ligatures=PersianTeX,#1} {#2}
+ \fontspec_set_family:Nnn \l__xepersian_persiansffamily_family_tl {RawFeature={script=arab},Ligatures=PersianTeX,#1} {#2}
\tl_set_eq:NN \persiansfdefault \l__xepersian_persiansffamily_family_tl
\use:x { \exp_not:n { \DeclareRobustCommand \persiansffamily }
{
@@ -3993,7 +3805,7 @@ Persian typesetting in XeLaTeX]
}
\cs_new:Nn \__xepersian_main_setpersianmonofont:nn
{
- \xepersian_set_family:Nnn \l__xepersian_persianttfamily_family_tl {Ligatures=PersianTeX,#1} {#2}
+ \fontspec_set_family:Nnn \l__xepersian_persianttfamily_family_tl {RawFeature={script=arab},Ligatures=PersianTeX,#1} {#2}
\tl_set_eq:NN \persianttdefault \l__xepersian_persianttfamily_family_tl
\use:x { \exp_not:n { \DeclareRobustCommand \persianttfamily }
{
@@ -4017,7 +3829,7 @@ Persian typesetting in XeLaTeX]
}
\cs_new:Nn \__xepersian_main_setnavarfont:nn
{
- \xepersian_set_family:Nnn \l__xepersian_navarfamily_family_tl {Ligatures=PersianTeX,#1} {#2}
+ \fontspec_set_family:Nnn \l__xepersian_navarfamily_family_tl {RawFeature={script=arab},Ligatures=PersianTeX,#1} {#2}
\tl_set_eq:NN \navardefault \l__xepersian_navarfamily_family_tl
\use:x { \exp_not:n { \DeclareRobustCommand \navarfamily }
{
@@ -4041,7 +3853,7 @@ Persian typesetting in XeLaTeX]
}
\cs_new:Nn \__xepersian_main_setpookfont:nn
{
- \xepersian_set_family:Nnn \l__xepersian_pookfamily_family_tl {Ligatures=PersianTeX,#1} {#2}
+ \fontspec_set_family:Nnn \l__xepersian_pookfamily_family_tl {RawFeature={script=arab},Ligatures=PersianTeX,#1} {#2}
\tl_set_eq:NN \pookdefault \l__xepersian_pookfamily_family_tl
\use:x { \exp_not:n { \DeclareRobustCommand \pookfamily }
{
@@ -4065,7 +3877,7 @@ Persian typesetting in XeLaTeX]
}
\cs_new:Nn \__xepersian_main_setsayehfont:nn
{
- \xepersian_set_family:Nnn \l__xepersian_sayehfamily_family_tl {Ligatures=PersianTeX,#1} {#2}
+ \fontspec_set_family:Nnn \l__xepersian_sayehfamily_family_tl {RawFeature={script=arab},Ligatures=PersianTeX,#1} {#2}
\tl_set_eq:NN \sayehdefault \l__xepersian_sayehfamily_family_tl
\use:x { \exp_not:n { \DeclareRobustCommand \sayehfamily }
{
@@ -4089,7 +3901,7 @@ Persian typesetting in XeLaTeX]
}
\cs_new:Nn \__xepersian_main_setiranicfont:nn
{
- \xepersian_set_family:Nnn \l__xepersian_iranicfamily_family_tl {Ligatures=PersianTeX,#1} {#2}
+ \fontspec_set_family:Nnn \l__xepersian_iranicfamily_family_tl {RawFeature={script=arab},Ligatures=PersianTeX,#1} {#2}
\tl_set_eq:NN \iranicdefault \l__xepersian_iranicfamily_family_tl
\use:x { \exp_not:n { \DeclareRobustCommand \iranicfamily }
{
diff --git a/macros/xetex/latex/xepersian/xepersian.pdf b/macros/xetex/latex/xepersian/xepersian.pdf
index 7dc3715995..c8ddac3a0a 100644
--- a/macros/xetex/latex/xepersian/xepersian.pdf
+++ b/macros/xetex/latex/xepersian/xepersian.pdf
Binary files differ
diff --git a/support/TeX4ht/source/ChangeLog b/support/TeX4ht/source/ChangeLog
index f6ae9d408d..e051c4ff77 100644
--- a/support/TeX4ht/source/ChangeLog
+++ b/support/TeX4ht/source/ChangeLog
@@ -1,3 +1,13 @@
+2022-02-19 Michal Hoftich <michal.h21@gmail.com>
+
+ * tex4ht-4ht.tex (hyperref-hooks.4ht): define autoref captions, so
+ they are available in the preamble.
+ https://tex.stackexchange.com/q/634043/2891
+
+ * tex4ht-4ht.tex (usepackage.4ht, pdfx-hooks.4ht): disable loading
+ of the Pdfx package.
+ https://tex.stackexchange.com/q/634043/2891
+
2022-02-16 Michal Hoftich <michal.h21@gmail.com>
* tex4ht-html4.tex (html4.4ht): write CSS for table column width
diff --git a/support/TeX4ht/source/tex4ht-4ht.tex b/support/TeX4ht/source/tex4ht-4ht.tex
index 40696a0a64..8b2b3e86ac 100644
--- a/support/TeX4ht/source/tex4ht-4ht.tex
+++ b/support/TeX4ht/source/tex4ht-4ht.tex
@@ -1,4 +1,4 @@
-% $Id: tex4ht-4ht.tex 1079 2022-02-16 21:13:48Z michal_h21 $
+% $Id: tex4ht-4ht.tex 1082 2022-02-19 21:28:26Z michal_h21 $
% tex tex4ht-4ht or ht tex tex4ht-4ht
%
% Copyright 2009-2022 TeX Users Group
@@ -4658,6 +4658,25 @@ The pdfbase package redefines \`|\@outputpage| macro, which causes tex4ht patche
>>> \AddFile{9}{pdfbase-hooks}
%%%%%%%%%%%%%%%%%
+\Section{pdfx.sty}
+%%%%%%%%%%%%%%%%%
+
+The pdfx package causes fatal error for TeX4ht. As it's features make sense only in the
+PDF mode, it is safest thing to do to just disable the package.
+
+\<add to usepackage\><<<
+\Configure{PackageHooks}{pdfx.sty}{pdfx-hooks.4ht}
+>>>
+
+\<pdfx-hooks.4ht\><<<
+% pdfx-hooks.4ht (|version), generated from |jobname.tex
+% Copyright 2022 TeX Users Group
+|<TeX4ht license text|>
+\:dontusepackage{pdfx}
+\endinput
+>>> \AddFile{9}{pdfx-hooks}
+
+%%%%%%%%%%%%%%%%%
\Section{animate.sty}
%%%%%%%%%%%%%%%%%
@@ -5162,8 +5181,10 @@ We can load nameref from the early hook file
% hyperref-hooks.4ht (|version), generated from |jobname.tex
% Copyright 2021 TeX Users Group
|<TeX4ht license text|>
-% we don't have any code here for now
+\:AtEndOfPackage{%
|<load nameref in hyperref hooks|>
+|<define autoref captions|>
+}
>>> \AddFile{9}{hyperref-hooks}
We need to load Nameref here, otherwise lot of documents
@@ -5175,7 +5196,6 @@ and then revert to it's original definition before applying of
TeX4ht hooks.
\<load nameref in hyperref hooks\><<<
-\:AtEndOfPackage{%
\@ifpackageloaded{nameref}{}
{%
\RequirePackage{ifthen}%
@@ -5183,9 +5203,38 @@ TeX4ht hooks.
\RequirePackage{nameref}%
\let\label\sv:label
%\input nameref.4ht
-}}
+}
>>>
+Hyperref defines following captions at the end of the package.
+The problem is that Hyperref detects TeX4ht, and stops its
+loading too early, before the captions are declared.
+They are available in the document, but not in the preamble.
+This can result in compilation errors if user tries to redefine
+one of these captions in the preamble.
+
+\<define autoref captions\><<<
+\providecommand*\AMSautorefname{\equationautorefname}
+\providecommand*\Hfootnoteautorefname{\footnoteautorefname}
+\providecommand*\Itemautorefname{\itemautorefname}
+\providecommand*\itemautorefname{item}
+\providecommand*\equationautorefname{Equation}
+\providecommand*\footnoteautorefname{footnote}
+\providecommand*\itemautorefname{item}
+\providecommand*\figureautorefname{Figure}
+\providecommand*\tableautorefname{Table}
+\providecommand*\partautorefname{Part}
+\providecommand*\appendixautorefname{Appendix}
+\providecommand*\chapterautorefname{chapter}
+\providecommand*\sectionautorefname{section}
+\providecommand*\subsectionautorefname{subsection}
+\providecommand*\subsubsectionautorefname{subsubsection}
+\providecommand*\paragraphautorefname{paragraph}
+\providecommand*\subparagraphautorefname{subparagraph}
+\providecommand*\FancyVerbLineautorefname{line}
+\providecommand*\theoremautorefname{Theorem}
+\providecommand*\pageautorefname{page}
+>>>
\<nameref moved from old hyperref\><<<
diff --git a/support/auctex/13.1-extra/CHANGES b/support/auctex/13.1-extra/CHANGES
new file mode 100644
index 0000000000..416680a8a0
--- /dev/null
+++ b/support/auctex/13.1-extra/CHANGES
@@ -0,0 +1,1209 @@
+Changes and New Features in AUCTeX
+**********************************
+
+News in 13.1
+============
+
+ * In math environments 'gather', 'gather*', 'gathered', 'multline'
+ and 'multline*', fill commands such as 'M-q' and 'C-c C-q C-e' are
+ disabled. This sorts out the inconsistency between those and
+ 'equation', 'displaymath' environments, in latter of which filling
+ is already disabled.
+
+ If you want filling in such environments, customize
+ 'LaTeX-indent-environment-list' to remove them.
+
+ Auto fill continues to work in such environment anyway.
+
+ In addition, AUCTeX adds support of alignment at '&' sign in
+ 'align'-like environments such as 'alignat', 'aligned' and so on,
+ as well as 'matrix'-like environments such as 'pmatrix', 'bmatrix'
+ and so on.
+
+ * Now two commands 'Texindex' and 'Texi2dvi' are available when you
+ type 'C-c C-c' in Texinfo mode. The command 'Texindex' runs
+ 'texindex' on index files and 'Texi2dvi' runs 'pdftexi2dvi' or
+ 'texi2dvi' according to the value of 'TeX-PDF-mode'.
+
+ So you can typeset Texinfo documents into PDF or DVI format from
+ within AUCTeX.
+
+ * AUCTeX's own help messages for LaTeX errors are now shown only for
+ LaTeX runs. AUCTeX shows raw error/warning messages found in
+ '.log' files for runs of formats other than LaTeX, such as plain
+ TeX, ConTeXt and Texinfo, as it does even for LaTeX runs when it
+ can't find a matching entry in its own help message catalogue.
+
+ Due to this change, customize option 'TeX-error-description-list'
+ can no longer have a fallback entry that matches any error. If
+ your customized value includes such entry, typically '(".*" . "No
+ help available")', please remove it.
+
+ * Two functions 'TeX-split-string' and 'TeX-assoc' are now obsolete
+ and will be removed in future release. If your personal code uses
+ these functions, use 'split-string' and 'assoc-string' instead.
+
+ * The function 'TeX-read-key-val' now accepts a function call as
+ second argument. This change should help AUCTeX style writers who
+ use 'TeX-arg-key-val' and have to deal with dynamic key-values.
+ Example of usage:
+ (TeX-add-style-hook "foo"
+ (lambda ()
+ (TeX-add-symbols
+ '("bar" (TeX-arg-key-val (function-returning-key-val))))))
+
+ * Since AUCTeX 12.2, 'C-x C-w' accidentally disabled the parse on
+ save in that buffer, even when you enabled 'TeX-auto-save' option.
+ This bug was fixed.
+
+ * AUCTeX now requires GNU Emacs 24.3 or higher.
+
+ * Old implementations for viewers were discarded, as announced long
+ before. The variables 'TeX-output-view-style' and 'TeX-view-style'
+ have no effect now. The former placeholders '%v' and '%vv' in
+ 'TeX-command-list' are ignored.
+
+ * AUCTeX now uses lexical binding which has been introduced in Emacs
+ 24. This change should have no user-visible effect and require no
+ manual adaptions except in the following cases.
+
+ - Entries added to the customization variable 'TeX-expand-list'
+ also had access to variables 'command' and 'pos'. Those are
+ now properly declared and named 'TeX-expand-command' and
+ 'TeX-expand-pos'.
+
+ - Entries added to the customization variable 'TeX-expand-list'
+ had access to a variable 'file' which was bound to
+ 'TeX-active-master', i.e., it evaluated to either the master
+ or region file. This usage must be replaced with either
+ 'TeX-active-master' or 'TeX-active-master-with-quotes'.
+
+ - Viewer entries in 'TeX-view-program-list' also had access to a
+ variable 'file' which was bound to the name of the master or
+ region file without extension. Instead, the function
+ 'TeX-active-master' has to be used now.
+
+ - Macro argument parsing functions could set a variable
+ 'exit-mark' to the buffer position where point should be left
+ after all arguments have been read. This variable is now
+ named 'TeX-exit-mark'.
+
+ - The functions in 'LaTeX-section-hook' had access or modified
+ the previously undeclared variables 'title', 'name', 'level',
+ 'done-mark', and 'toc'. These variables are now properly
+ declared and have the 'LaTeX-' prefix, e.g.,
+ 'LaTeX-done-mark'.
+
+ - The functions in 'ConTeXt-numbered-section-hook' and
+ 'ConTeXt-unnumbered-section-hook' had access or modified the
+ previously undeclared variables 'title', 'name', 'level',
+ 'done-mark', and 'reference'. These variables are now
+ properly declared and have the 'ConTeXt-' prefix, e.g.,
+ 'ConTeXt-title'.
+
+ - The functions in 'TeX-translate-location-hook' could access
+ and modify the free variables 'file', 'line', 'error',
+ 'offset', 'context', and 'string'. Those are now properly
+ declared variables with the prefix 'TeX-translate-location-',
+ e.g., 'TeX-translate-location-file'.
+
+ * The constant 'LaTeX-dialect' has been renamed to 'TeX-dialect' and
+ moved from 'latex.el' to 'tex.el'. 'LaTeX-dialect' now is an
+ obsolete alias.
+
+ * The style 'latexinfo.el' is removed from AUCTeX. 'latexinfo.el'
+ was meant to support latexinfo which in return was a LaTeX-2.09
+ extension of Texinfo, but didn't manage to replace Texinfo.
+
+ * The style 'siunitx.el' is updated to support package version 3.
+ Key-value options provided by older package versions are removed,
+ deprecated macros and units are not supported anymore.
+
+ * AUCTeX has preliminary support for LaTeX-hooks. Hooks provided by
+ LaTeX kernel are known and available for completion in
+ '\AddToHook', '\RemoveFromHook' and '\AddToHookNext'.
+
+ * AUCTeX is now able to place all generated output files, including
+ those that are produced by applications running under AUCTeX,
+ temporary files related to region processing and preview-latex
+ files, in an output directory. To use this feature, set the new
+ user option 'TeX-output-dir' to the absolute path of the output
+ directory or a relative path which would be interpreted as being
+ relative to the master file in a multifile document.
+
+ Note that this feature doesn't work if the document includes sub
+ file placed in sub directory below the main file via '\include'
+ command.
+
+ * Many other bugs were fixed.
+
+News in 12.3
+============
+
+ * Support for 'PSTricks' is now PDF-oriented. AUCTeX no longer turns
+ off PDF mode for 'PSTricks' documents even without 'pst-pdf'. It
+ now sets up 'TeX-PDF-from-DVI' option so that PDF output is
+ generated when 'TeX-PDF-mode' is enabled (default). Users who want
+ DVI output should disable PDF mode explicitly by file local
+ variable, or customize 'TeX-PDF-mode' to 'nil'.
+
+ * The function 'font-latex-update-font-lock' has been obsoleted in
+ order to fix 'bug#37945'. That function was used by several style
+ files in order to refresh fontification after adding new symbols or
+ verbatim constructs. It is better to call 'font-lock-flush' in the
+ former case and 'font-latex-set-syntactic-keywords' in the latter
+ case. The function 'font-latex-update-font-lock' still exists as a
+ no-op which only shows a warning explaining how to update font-lock
+ as mentioned above.
+
+ * Math expression highlighting was improved. Highlighting for
+ documents with a lot of inline math expressions '$...$' won't get
+ scrambled now ('bug#33139').
+
+ In addition, it is no longer recommended to customize
+ 'font-latex-math-environments'. Use 'texmathp-tex-commands'
+ instead.
+
+ * AUCTeX tracks changes in LaTeX2e 2020-02-02 release. AUCTeX
+ supports the improvements to LaTeX font selection mechanism (NFSS).
+ New macros like '\textsw' or '\textulc' are added to font insertion
+ keyboard commands. See the section for inserting font specifiers
+ for details. Further, the entries in the menu 'LaTeX', 'Insert
+ Font' are reorganized and adjusted accordingly.
+
+ Macros previously provided by 'textcomp.sty' are now part of LaTeX
+ kernel. AUCTeX tracks this change as well and support for the new
+ macro '\legacyoldstylenums' is added.
+
+ * Insertion of environments in LaTeX documents (i.e. 'C-c C-e') was
+ improved. The former code had a few bugs, which sometimes resulted
+ in either spurious empty line or spurious comment prefix, or both,
+ especially when the region is active. Those bugs are now fixed.
+
+ * More bugs fixed, other minor features implemented.
+
+News in 12.2
+============
+
+ * AUCTeX reflects the changes in LaTeX2e 2019-10-01 release.
+ 'filecontents' environment now takes an optional argument and can
+ be used anywhere in a document. The macros '\Ref' and
+ '\labelformat' are moved from 'varioref.sty' to LaTeX kernel.
+ 'amsmath' has a new macro '\overunderset'.
+
+ * A new method is implemented in preview-latex to adjust the
+ foreground colors of generated images to those of Emacs, when the
+ LaTeX command produces PDF. The traditional method became invalid
+ because of the change introduced in Ghostscript 9.27.
+ Unfortunately, the new method doesn't work due to a bug in
+ Ghostscript 9.27 and is valid only for Ghostscript > 9.27. There
+ is also a fallback method for gs 9.27 users which displays plain
+ "black on white" images. For successful function of preview-latex,
+ the users are encouraged to set up the new user option
+ 'preview-pdf-color-adjust-method' to choose appropriate option
+ among the three: new, traditional and fallback method.
+
+ * AUCTeX has support for the Flymake package in Emacs 26 or newer.
+ To enable, call 'M-x flymake-mode <RET>' or add this to your
+ '.emacs' file:
+ (add-hook 'LaTeX-mode-hook #'flymake-mode)
+
+ * The way the option 'TeX-record-buffer' is used was corrected. It
+ was used in just the opposite way as the document says. Erase the
+ customization if you have customized this option since it now acts
+ in reverse to your expectation.
+
+ * A former customize option 'japanese-TeX-command-list' is removed.
+ Use 'japanese-TeX-engine-default', or if it's really necessary,
+ customize 'TeX-command-list' directly if the task which the option
+ used to carry is required.
+
+ * Support for standard LaTeX without e-TeX extension is now very
+ limited. It doesn't work if raw TeX code is put on the command
+ line to invoke 'latex' command. It also fails for region
+ compilation ('C-c C-r' and so on) with documents of non-ascii file
+ name. In addition, it no longer works with preview-latex. We
+ consider this incompatibility is permissible because e-TeX
+ extension is enabled for standard LaTeX by default long ago. LaTeX
+ variants such as XeLaTeX and LuaLaTeX are not affected.
+
+ * Key binds in Texinfo mode are improved. Typing '$', '^', '_' and
+ '\' now just self-inserts without pointless side effects in Texinfo
+ mode.
+
+ In addition, the option 'TeX-electric-escape' is now effective in
+ Texinfo mode. When it is enabled, typing '@' will invoke
+ 'TeX-electric-macro' offering completion in similar style with
+ other TeX modes of AUCTeX.
+
+ * Fontification support for 'biblatex' package is improved and
+ updated to macros provided by package version 3.12. For qualified
+ lists, at least 2 mandatory arguments are fontified.
+
+ * Support for column specifiers 'w' and 'W' provided by 'array'
+ package is added to 'array.el'. The correct counting of columns
+ only works when the 'align' parameter is enclosed in braces, e.g.,
+ 'w{l}{3cm}'. The short version 'wl{3cm}' is not supported.
+
+ * Entries for 'PDF Tools' are added in
+ 'TeX-view-program-list-builtin' for Windows and macOS. This viewer
+ can be configured under these operating systems with an entry like
+ this in an init file:
+ (setq TeX-view-program-selection '((output-pdf "PDF Tools")))
+
+ * Several other bugs were fixed, many minor features were added.
+
+News in 12.1
+============
+
+ * AUCTeX now requires GNU Emacs 24 or higher. Support for XEmacs has
+ been dropped.
+
+ * Besides the change in the supported version of Emacs, there has
+ been no functional change in this release, which is equivalent to
+ version 11.92.
+
+News in 11.92
+=============
+
+ * preview-latex is compatible with Ghostscript 9.22 where the
+ operator '.runandhide' is removed. All occurrences of
+ '.runandhide' in preview-latex are replaced by alternative code
+ making it work with Ghostscript 9.22 again.
+
+ * AUCTeX has a new customize option
+ 'TeX-math-input-method-off-regexp'. When you begin to input a math
+ formula, the current input method is turned off if its name matches
+ this regular expression.
+
+ In fact this variable was introduced long before, but has not been
+ documented in info files nor turned into a customize option with
+ 'defcustom' until this release.
+
+ * The window system focus is pulled back to Emacs when viewing with
+ evince-compatible viewers if a new customize option
+ 'TeX-view-evince-keep-focus' is non-nil.
+
+ * The usual dose of bug fixes was administered.
+
+News in 11.91
+=============
+
+ * Now AUCTeX has a logo. The LaTeX code to create it is available in
+ the 'etc/' directory of the package.
+
+ * Add support for 'upmendex', an extension of 'makeindex' capable of
+ sorting indexes by unicode based ICU.
+
+ * Fix preview-latex to interact correctly with Japanese LaTeX. The
+ parsing routine was made robust not to be confused by the 7-bit
+ encoding of Japanese text and the necessary option to LaTeX command
+ is kept even when preamble caching is enabled.
+
+ * The new "Glossaries" entry in 'TeX-command-list' runs the command
+ 'makeglossaries'.
+
+ * Fontification of control symbols has been improved. Characters
+ defined in 'font-latex-match-simple-exclude-list' do not receive
+ any fontification. In DocTeX mode, the character '_' is removed
+ from 'font-latex-match-simple-exclude-list' in order to fontify
+ macros like '\__module_foo:nnn' correctly.
+
+ * Fontification of math environments has been improved. Optional
+ and/or mandatory argument(s) to environments are not fontified.
+
+ * 'preview.sty' loads 'luatex85.sty' if possible and should be
+ compatible with newer luaTeX versions.
+
+ * AUCTeX has a new customize option 'TeX-ispell-verb-delimiters'.
+ This string contains usual characters used as delimiters for
+ in-line verbatim macros like '\verb'. Text between delimiters
+ after an in-line verbatim macro will be skipped during spell
+ checking.
+
+ * Fontification of in-line verbatim macros has been improved.
+ 'font-latex.el' recognizes an optional or a mandatory argument for
+ macros like '\Verb' from 'fancyvrb.sty', '\mint' and '\mintinline'
+ from 'minted.sty' and fontifies verbatim content correctly.
+
+ * AUCTeX can put and parse labels in optional argument of
+ environments. Inserting labels is done by new function
+ 'LaTeX-env-label-as-keyval'. A new customize option
+ 'LaTeX-listing-label' is available as prefix to labels in code
+ typesetting environments, e.g. 'lstlisting' environment provided by
+ 'listings' package. 'LaTeX-listing-label' defaults to 'lst:'.
+ Parsing of labels for later referencing relies on two requirements:
+ 1. Label should come as last key-value argument, and
+ 2. label must be enclosed in braces, e.g.
+ \begin{lstlisting}[caption=Some Caption,label={lst:foo}]
+ ...
+ \end{lstlisting}
+
+ * The function 'LaTeX-label' now takes a second optional argument
+ 'NO-INSERT'. When non-'nil', 'LaTeX-label' reads a label and
+ returns it as a string. This argument is also passed to any
+ function bound to 'LaTeX-label-function' (see next item).
+
+ * *Incompatible change:* The signature for the function passed with
+ the customize option 'LaTeX-label-function' has changed. The
+ function bound to this variable is now expected to take an optional
+ second argument 'NO-INSERT'. When this argument is non-'nil', the
+ function should read and only return a label as a string; insertion
+ is done by another function.
+
+ * Directory local variables were ineffective for
+ 'japanese-latex-mode' and 'japanese-plain-tex-mode'. This bug was
+ fixed. (This was actually done in AUCTeX 11.90, but not
+ advertised)
+
+ * The output of Japanese text from Japanese TeX engines is decoded
+ correctly for most cases, according to the encoding of the TeX
+ documents and the locale. The difference between MS Windows, macOS
+ and unix-like OS is taken into account. (This was actually done in
+ AUCTeX 11.90, but not advertised)
+
+ * Quite a few new LaTeX packages are supported.
+
+ * As usual, many bugs were fixed.
+
+News in 11.90
+=============
+
+ * In addition to the completion performed by 'TeX-complete-symbol',
+ AUCTeX now also supports the new Emacs standard completion-at-point
+ facility (see the Emacs command 'completion-at-point'). This also
+ means that modern completion UIs like company-mode work out of the
+ box in TeX and LaTeX buffers.
+
+ * Completion is now aware of being inside a math environment and then
+ completes math macros.
+
+ * AUCTeX is able to display several levels of super- and subscripts,
+ each one raised above and a bit smaller than its basis. For this
+ feature, have a look at the customize options
+ 'font-latex-fontify-script' (especially the new values
+ 'multi-level' and 'invisible') and
+ 'font-latex-fontify-script-max-level'. Also, the script characters
+ '^' and '_' are also fontified with a special face named
+ 'font-latex-script-char-face'.
+
+ * Parsing of format specification in various tabular environments has
+ been improved. The function 'LaTeX-insert-item' ('C-c <LFD>')
+ inserts suitable number of ampersands for '*{num}{cols}'
+ constructs. Style files for LaTeX packages 'tabularx', 'tabulary',
+ 'longtable', 'dcolumn' and 'siunitx' are adapted to take advantage
+ of this improvement.
+
+ * AUCTeX has a new Ispell dictionary 'tex-ispell.el' for macros and
+ environments which will be skipped during spell checking. The
+ activiation of this feature is controlled by a new customize option
+ 'TeX-ispell-extend-skip-list', which is set to 't' and activated by
+ default.
+
+ * AUCTeX has a new customize option 'TeX-raise-frame-function' that
+ is currently only used by Evince and Atril inverse search to raise
+ the Emacs frame.
+
+ * When inserting a new float, AUCTeX will now prompt for a
+ short-caption if the length of the caption provided is greater than
+ a certain size. This size is controlled via a new user option
+ 'LaTeX-short-caption-prompt-length'.
+
+ * Parsing of the compilation log has been reworked. You should
+ encounter fewer mistaken files while navigating through errors and
+ warnings.
+
+ * Two new user options, 'TeX-ignore-warnings' and
+ 'TeX-suppress-ignored-warnings', allow ignoring certain warnings
+ after compilation of the document.
+
+ * A new option, 'TeX-PDF-from-DVI', controls if and how to produce a
+ PDF file by converting a DVI file. This supersedes
+ 'TeX-PDF-via-dvips-ps2pdf' which is still recognized but marked as
+ obsolete and may be removed in future releases.
+
+ * Support for a number of external viewers has been added:
+ * Atril viewer. Forward and inverse search requires version
+ 1.9.1 or later to work.
+
+ * dviout viewer on Windows. Note that this setup works when
+ 'TeX-source-correlate-method' is set to use 'source-specials'
+ for DVI, e.g.:
+ (setq TeX-source-correlate-method
+ '((dvi . source-specials)
+ (pdf . synctex)))
+ which is the default.
+
+ * SumatraPDF viewer on Windows.
+
+ * Zathura viewer. Forward and inverse search requires a recent
+ version of the program to work (3.4 or later).
+
+ * A new function, 'TeX-documentation-texdoc', for reading
+ documentation with 'texdoc' has been added. 'TeX-doc' is still
+ available but now 'C-c ?' runs 'TeX-documentation-texdoc'.
+
+ * AUCTeX has a new custom option
+ 'LaTeX-reftex-cite-format-auto-activate' which controls the
+ automatic activation of citation formats provided by RefTeX when a
+ style file is loaded and RefTeX is enabled. Currently,
+ 'biblatex.el', 'harvard.el', 'jurabib.el' and 'natbib.el' use this
+ feature. If you have customized 'reftex-cite-format' and want to
+ use your settings, you should set this variable to 'nil'.
+
+ * AUCTeX now has limited support for the TikZ package. For the
+ moment, this includes some basic support for prompting the user of
+ arguments to the '\draw' macro.
+
+ * The style 'graphicx.el' went through a bigger overhaul. The
+ optional argument of command '\includegraphics' now supports
+ key-val query; keys can independently be chosen anytime by pressing
+ the <,> key. As a side effect, the variable
+ 'LaTeX-includegraphics-options-alist' is now no-op and is removed
+ from 'tex-style.el'. You can safely remove any customization of it
+ from your init file. The mandatory argument of '\includegraphics'
+ knows about image file extensions supported by the used engine and
+ offers them for inclusion.
+
+ * Support for other LaTeX packages was improved, and style files for
+ several new packages were added.
+
+ * Many bugs were crushed along the way.
+
+News in 11.89
+=============
+
+ * You can now run all commands needed to compile a document and then
+ open the viewer with a single command: 'TeX-command-run-all', bound
+ to 'C-c C-a'.
+
+ * Commands such as 'LaTeX' and 'View' can now be executed
+ conveniently on the current section (or part, chapter, subsection,
+ etc). See 'LaTeX-command-section' and
+ 'LaTeX-command-section-change-level'.
+
+ * Forward and backward search with Evince now also work when only a
+ region of the document is compiled/viewed.
+
+ * To open the PDF output file you can now use also PDF Tools, a
+ document viewer for Emacs. With it, as a plus, forward and
+ backward search is accurate at word level.
+
+ * With new option 'TeX-PDF-via-dvips-ps2pdf' it is possible to
+ compile a document to DVI and then convert it to PDF using
+ 'dvips'-'ps2pdf' before viewing it.
+
+ * New option 'TeX-file-line-error' allows to select file:line:error
+ style for error messages.
+
+ * Indent '\[...\]' math mode as a regular environment by default.
+
+ * Now AUCTeX suggests to run 'makeindex' when appropriate.
+
+ * 'TeX-view-program-list' can contain, as third optional element of
+ each item, the name of the executable(s) needed to open the viewer.
+
+ * 'TeX-expand-list' variable has been split into 'TeX-expand-list'
+ and 'TeX-expand-list-builtin'. Only the former is intended to be
+ customized by the user, the latter contains built-in expanders.
+ You might want to keep in 'TeX-expand-list' only new expansion
+ strings.
+
+ * Before running commands like TeX and LaTeX, now AUCTeX performs
+ some checks. If 'TeX-check-TeX' is non-nil, it will test whether a
+ working TeX distribution is actually present in the system and
+ available to Emacs. Instead, when 'TeX-check-engine' is non-nil,
+ before running LaTeX commands AUCTeX will check whether the correct
+ engine has been set, based upon known restrictions posed by LaTeX
+ packages.
+
+ * Basic support to ConTeXt Mark IV has been added. Users can now
+ select the Mark version to be used with new option
+ 'ConTeXt-Mark-version', and AUCTeX is able to catch error messages
+ in the output log of a Mark IV document.
+
+ * Support for tons of LaTeX packages has been added.
+
+ * Numbers of bugs have been fixed, many minor features have been
+ added.
+
+News in 11.88
+=============
+
+ * 'TeX-PDF-mode' is now enabled by default.
+
+ * Now 'TeX-previous-error' works with TeX commands if the new option
+ 'TeX-parse-all-errors' is non-nil, which is the default. When this
+ option is non-nil, an overview of errors and warnings reported by
+ the TeX compiler can be opened with 'M-x TeX-error-overview <RET>'.
+
+ * Style file authors are encouraged to distinguish common from expert
+ macros and environments, and mark the latter using
+ 'TeX-declare-expert-macros' and
+ 'LaTeX-declare-expert-environments'.
+
+ Users can then restrict completion using
+ 'TeX-complete-expert-commands'.
+
+ * Management of LaTeX package options in the parser was improved.
+ You might need to reparse your documents, especially if you loaded
+ the 'babel' package with language options.
+
+ * Now you can insert '$...$' or '\(...\)' by typing a single '$'. To
+ do this, customize the new option 'TeX-electric-math'.
+ 'TeX-math-close-double-dollar' was removed.
+
+ * 'C-c <RET> documentclass <RET>' completes with all available LaTeX
+ classes, if the 'TeX-arg-input-file-search' variable is non-nil.
+ Completion for class options of the standard LaTeX classes is
+ provided as well.
+
+ * New user options 'LaTeX-default-author',
+ 'LaTeX-fontspec-arg-font-search',
+ 'LaTeX-fontspec-font-list-default', 'TeX-date-format', and
+ 'TeX-insert-braces-alist'. A new possible value
+ ('show-all-optional-args') for 'TeX-insert-macro-default-style' was
+ added. The default value of 'TeX-source-correlate-method' has been
+ changed.
+
+ * 'biblatex' support was greatly expanded. If parsing is enabled,
+ AUCTeX looks at 'backend' option to decide whether to use Biber or
+ BibTeX. The 'LaTeX-biblatex-use-Biber' variable was changed to be
+ file local only and is no more customizable.
+
+ * With some LaTeX classes, the default environment suggested by
+ 'LaTeX-environment' ('C-c C-e') when the current environment is
+ 'document' was changed. With 'beamer' class the default
+ environment is 'frame', with 'letter' it is 'letter', with 'slides'
+ it is 'slide'.
+
+ * Brace pairing feature was enhanced in LaTeX documents. Support for
+ '\bigl', '\Bigl', '\biggl' and '\Biggl', the same as the one for
+ '\left', was added to 'TeX-insert-macro'. For example, 'C-c <RET>
+ bigl <RET> ( <RET>' inserts '\bigl(\bigr)'.
+
+ You can insert brace pair '()', '{}' and '[]' by typing a single
+ left brace if the new user option 'LaTeX-electric-left-right-brace'
+ is enabled.
+
+ Macros '\langle', '\lfloor' and '\lceil', which produce the left
+ part of the paired braces, are treated similarly as '(', '{' and
+ '[' during the course of 'TeX-insert-macro'.
+
+ * Support for dozens of LaTeX packages was added.
+
+ * Tabular-like environments ('tabular', 'tabular*', 'tabularx',
+ 'tabulary', 'array', 'align', ...) are indented in a nicer and
+ more informative way when the column values of a table line are
+ written across multiple lines in the tex file.
+
+ * The suitable number of ampersands are inserted when you insert
+ 'array', 'tabular' and 'tabular*' environments with 'C-c C-e'.
+ Similar experience is obtained if you terminate rows in these
+ environments with 'C-c <LFD>'. It supplies line break macro '\\'
+ and inserts the suitable number of ampersands on the next line.
+
+ Similar supports are provided for various 'amsmath' environments.
+
+ * Commands for narrowing to a group ('TeX-narrow-to-group') and to
+ LaTeX environments ('LaTeX-narrow-to-environment') were added.
+
+ * Now arbitrary options can be passed to the TeX processor on a per
+ file basis using the 'TeX-command-extra-options' option.
+
+ * Now 'C-c C-e document <RET>', in an empty document, prompts for
+ '\usepackage' macros in addition to '\documentclass'.
+
+ * 'TeX-add-style-hook' has now a third argument to tell AUCTeX for
+ which dialect (LaTeX, Texinfo or BibTeX) the style hook is
+ registers. Labelling style hook by dialect will avoid applying
+ them not in the right context.
+
+ * There have been lots of bug fixes and feature additions.
+
+News in 11.87
+=============
+
+ * AUCTeX now supports Biber in conjunction with biblatex in addition
+ to BibTeX.
+
+ * Each AUCTeX mode now has its own abbrev table. On Emacsen which
+ provide the possibility to inherit abbrevs from other tables, the
+ abbrevs from the Text mode abbrev table are available as well.
+ Newly defined abbrevs are written to the mode-specific tables,
+ though.
+
+ * The file 'tex-fptex.el' was removed.
+
+ * Forward/backward search for Evince has been improved. If Emacs is
+ compiled with DBUS support and a recent Evince version (3.x) is
+ installed, the communication goes over the desktop bus instead of
+ the command line, resulting in more accurate positioning of point
+ in Emacs and highlighting of the target paragraph in Evince.
+
+ * A problem where Ghostscript threw an '/invalidfileaccess' error
+ when running preview-latex was fixed.
+
+ * A lot of smaller fixes and additions have been made.
+
+News in 11.86
+=============
+
+ * Parsing of LaTeX output was improved. It is now less likely that
+ AUCTeX opens a non-existent file upon calling 'TeX-next-error'; a
+ problem for example encountered when using MiKTeX 2.8. In addition
+ quoted file names as emitted by MiKTeX are now supported.
+
+ * A new framework for the definition and selection of viewers was
+ implemented. If you have customizations regarding viewers you will
+ have to redo them in this new framework or reenable the old one.
+ See the section on viewers in the manual for details.
+
+ * Comprehensive editing support for PSTricks was added.
+
+ * Support for various LaTeX packages was added, e.g. 'tabularx',
+ 'CJK', and 'hyperref'.
+
+ * An easy way to switch between TeX engines (PDFTeX, LuaTeX, XeTeX,
+ Omega) was added.
+
+ * Support for SyncTeX was added. This involves the command line
+ options for LaTeX and the viewer.
+
+ * Folding can now be customized to use macro arguments as replacement
+ text.
+
+ * 'preview.sty' now works with XeTeX.
+
+ * A lot of smaller and larger bugs have been squashed.
+
+News in 11.85
+=============
+
+ * Font locking has been improved significantly. It is now less prone
+ to color bleeding which could lead to high resource usage. In
+ addition it now includes information about LaTeX macro syntax and
+ can indicate syntactically incorrect macros in LaTeX mode.
+
+ * The license was updated to GPLv3.
+
+ * Support for the nomencl, flashcards and comment LaTeX packages as
+ well as the Icelandic language option of babel were added.
+
+ * Support for folding of math macros was added.
+
+ * Lots of minor bugs in features and documentation fixed.
+
+News in 11.84
+=============
+
+ * There have been problems with the '-without-texmf-dir' option to
+ 'configure' when the value of '-with-kpathsea-sep' was set or
+ determined for an installation system with a default different from
+ that of the runtime system. 'with-kpathsea-sep' has been removed;
+ the setting is now usually determined at runtime.
+
+ Due to this and other problems, preview-latex in the released
+ XEmacs package failed under Windows or with anything except recent
+ 21.5 XEmacsen.
+
+ * AUCTeX and preview-latex have been changed in order to accommodate
+ file names containing spaces. preview-latex now tolerates bad
+ PostScript code polluting the stack (like some Omega fonts).
+
+ * 'preview.sty' had in some cases failed to emit PostScript header
+ specials.
+
+ * Support for folding of comments was added.
+
+ * The 'polish' language option of the babel LaTeX package as well as
+ the polski LaTeX package are now supported. Most notably this
+ means that AUCTeX will help to insert quotation marks as defined by
+ 'polish.sty' ('"`..."'') and 'polski.sty' (',,...''').
+
+ * The TeX tool bar is now available and enabled by default in plain
+ TeX mode.
+
+ * Bug fix in the display of math subscripts and superscripts.
+
+ * Bug fix 'TeX-doc' for Emacs 21.
+
+ * There has been quite a number of other bug fixes to various
+ features and documentation across the board.
+
+News in 11.83
+=============
+
+ * The new function 'TeX-doc' provides easy access to documentation
+ about commands and packages or information related to TeX and
+ friends in general. It is accessible with the key binding 'C-c ?'
+ or the 'Find Documentation...' entry in the mode menus.
+
+ * You can now get rid of generated intermediate and output files by
+ means of the new 'Clean' and 'Clean All' entries in
+ 'TeX-command-list' accessible with 'C-c C-c' or the Command menu.
+
+ * Support for forward search with PDF files was added. That means
+ you can jump to a place in the output file corresponding to the
+ position in the source file. Currently this only works if you use
+ the pdfsync LaTeX package and xpdf as your PDF viewer. The
+ accuracy is in the range of +/-1 page.
+
+ Adding support for this feature required the default value of the
+ variable 'TeX-output-view-style' to be changed. Please make sure
+ you either remove any customizations overriding the new default or
+ incorporate the changes into your customizations if you want to use
+ this feature.
+
+ * TeX error messages of the '-file-line-error' kind are now
+ understood in AUCTeX and preview-latex (parsers are still
+ separate).
+
+ * Bug fix in XyMTeX support.
+
+ * The LaTeX tool bar is now enabled by default.
+
+News in 11.82
+=============
+
+ * Support for the MinionPro LaTeX package was added.
+
+ * Warnings and underfull/overfull boxes are now being indicated in
+ the echo area after a LaTeX run, if the respective debugging
+ options are activated with 'TeX-toggle-debug-warnings' ('C-c C-t
+ C-w') or 'TeX-toggle-debug-bad-boxes' ('C-c C-t C-b'). In this
+ case 'TeX-next-error' will find these warnings in addition to
+ normal errors.
+
+ The key binding 'C-c C-w' for 'TeX-toggle-debug-bad-boxes' (which
+ was renamed from 'TeX-toggle-debug-boxes') now is deprecated.
+
+ * AUCTeX now can automatically insert a pair of braces after typing
+ <_> or <^> in math constructs if the new variable
+ 'TeX-electric-sub-and-superscript' is set to a non-nil value.
+
+ * Some language-specific support for French was added. There now is
+ completion support for the commands provided by the 'frenchb' (and
+ 'francais') options of the babel LaTeX package and easier input of
+ French quotation marks ('\og ...\fg') which can now be inserted by
+ typing <">.
+
+ * Completion support for options of some LaTeX packages was added.
+
+ * Already in version 11.81 the way to activate AUCTeX changed
+ substantially. This should now be done with '(load "auctex.el" nil
+ t t)' instead of the former '(require 'tex-site)'. Related to this
+ change 'tex-mik.el' does not load 'tex-site.el' anymore. That
+ means if you used only '(require 'tex-mik)' in order to activate
+ AUCTeX, you have to add '(load "auctex.el" nil t t)' before the
+ latter statement. More detailed information can be found in the
+ installation instructions (file 'INSTALL').
+
+ * Handling of verbatim constructs was consolidated across AUCTeX.
+ This resulted in the font-latex-specific variables
+ 'font-latex-verb-like-commands', 'font-latex-verbatim-macros', and
+ 'font-latex-verbatim-environments' being removed and the more
+ general variables 'LaTeX-verbatim-macros-with-delims',
+ 'LaTeX-verbatim-macros-with-braces', and
+ 'LaTeX-verbatim-environments' being added.
+
+ * The output of a BibTeX run is now checked for warnings and errors,
+ which are reported in the echo area.
+
+ * The aliases for 'font-latex-title-fontify' were removed. Use
+ 'font-latex-fontify-sectioning' instead.
+
+ * The problem that Japanese macros where broken across lines was
+ fixed.
+
+ * Various bug fixes.
+
+News in 11.81
+=============
+
+ * 'LaTeX-mark-section' now marks subsections of a given section as
+ well. The former behavior is available via the prefix argument.
+
+ * preview-latex which was previously available separately became a
+ subsystem of AUCTeX. There is no documented provision for building
+ or installing preview-latex separately. It is still possible to
+ use and install AUCTeX without preview-latex, however.
+
+ * The installation procedures have been overhauled and now also
+ install startup files as part of the process (those had to be
+ copied manually previously). You are advised to remove previous
+ installations of AUCTeX and preview-latex before starting the
+ installation procedure. A standard installation from an unmodified
+ tarball no longer requires Makeinfo or Perl.
+
+ Also note that the way AUCTeX is supposed to be activated changed.
+ Instead of '(require 'tex-site)' you should now use '(load
+ "auctex.el" nil t t)'. While the former method may still work, the
+ new method has the advantage that you can deactivate a preactivated
+ AUCTeX with the statement '(unload-feature 'tex-site)' before any
+ of its modes have been used. This may be important especially for
+ site-wide installations.
+
+ * Support for the babel LaTeX package was added.
+
+ * Folding a buffer now ensures that the whole buffer is fontified
+ before the actual folding is carried out. If this results in
+ unbearably long execution times, you can fall back to the old
+ behavior of relying on stealth font locking to do this job in the
+ background by customizing the variable 'TeX-fold-force-fontify'.
+
+ * Folded content now reveals part of its original text in a tooltip
+ or the echo area when hovering with the mouse pointer over it.
+
+ * The language-specific insertion of quotation marks was generalized.
+ The variables 'LaTeX-german-open-quote',
+ 'LaTeX-german-close-quote', 'LaTeX-german-quote-after-quote',
+ 'LaTeX-italian-open-quote', 'LaTeX-italian-close-quote', and
+ 'LaTeX-italian-quote-after-quote' are now obsolete. If you are not
+ satisfied with the default settings, you should customize
+ 'TeX-quote-language-alist' instead.
+
+ * Similar to language-specific quote insertion, AUCTeX now helps you
+ with hyphens in different languages as well.
+
+ * Fill problems in Japanese text introduced in AUCTeX 11.55 were
+ fixed. AUCTeX tries not to break lines between 1-byte and 2-byte
+ chars. These features will work in Chinese text, too.
+
+ * The scaling factor of the fontification of sectioning commands can
+ now be customized using the variable
+ 'font-latex-fontify-sectioning'. This variable was previously
+ called 'font-latex-title-fontify'; In this release we provide an
+ alias but this will disappear in one of the the next releases. The
+ faces for the sectioning commands are now called
+ 'font-latex-sectioning-N-face' (N=0...5) instead of
+ 'font-latex-title-N-face' (N=1...4). Analogously the names of the
+ variables holding the related keyword lists were changed from
+ 'font-latex-title-N-keywords' to
+ 'font-latex-sectioning-N-keywords'. Make sure to adjust your
+ customizations.
+
+ * Titles in beamer slides marked by the "\frametitle" command are
+ know displayed with the new face 'font-latex-slide-title-face'.
+ You can add macros to be highlighted with this face to
+ 'font-latex-match-slide-title-keywords'.
+
+ * Of course a lot of bugs have been fixed.
+
+News in 11.55
+=============
+
+ * A bug was fixed which lead to the insertion of trailing whitespace
+ during filling. In particular extra spaces were added to sentence
+ endings at the end of lines. You can make this whitespace visible
+ by setting the variable 'show-trailing-whitespace' to 't'. If you
+ want to delete all trailing whitespace in a buffer, type 'M-x
+ delete-trailing-whitespace <RET>'.
+
+ * A bug was fixed which lead to a '*Compile-Log*' buffer popping up
+ when the first LaTeX file was loaded in an Emacs session.
+
+ * On some systems the presence of an outdated Emacspeak package lead
+ to the error message 'File mode specification error: (error
+ "Variable binding depth exceeds max-specpdl-size")'. Precautions
+ were added which prevent this error from happening. But
+ nevertheless, it is advised to upgrade or uninstall the outdated
+ Emacspeak package.
+
+ * The value of 'TeX-macro-global' is not determined during
+ configuration anymore but at load time of AUCTeX. Consequently the
+ associated configuration option '--with-tex-input-dirs' was
+ removed.
+
+ * Support for the LaTeX Japanese classes 'jsarticle' and 'jsbook' was
+ added.
+
+News in 11.54
+=============
+
+ * The parser (used e.g. for 'TeX-auto-generate-global') was extended
+ to recognize keywords common in LaTeX packages and classes, like
+ "\DeclareRobustCommand" or "\RequirePackage". Additionally a bug
+ was fixed which led to duplicate entries in AUCTeX style files.
+
+ * Folding can now be done for paragraphs and regions besides single
+ constructs and the whole buffer. With the new 'TeX-fold-dwim'
+ command content can both be hidden and shown with a single key
+ binding. In course of these changes new key bindings for unfolding
+ commands where introduced. The old bindings are still present but
+ will be phased out in future releases.
+
+ * Info files of the manual now have a .info extension.
+
+ * There is an experimental tool bar support now. It is not activated
+ by default. If you want to use it, add
+ (add-hook 'LaTeX-mode-hook 'LaTeX-install-toolbar)
+ to your init file.
+
+ * The manual now contains a new chapter "Quick Start". It explains
+ the main features and how to use them, and should be enough for a
+ new user to start using AUCTeX.
+
+ * A new section "Font Locking" was added to the manual which explains
+ syntax highlighting in AUCTeX and its customization. Together with
+ the sections related to folding and outlining, the section is part
+ of the new chapter "Display".
+
+ * Keywords for syntax highlighting of LaTeX constructs to be typeset
+ in bold, italic or typewriter fonts may now be customized. Besides
+ the built-in classes, new keyword classes may be added by
+ customizing the variable 'font-latex-user-keyword-classes'. The
+ customization options can be found in the customization group
+ 'font-latex-keywords'.
+
+ * Verbatim content is now displayed with the 'fixed-pitch' face.
+ (GNU Emacs only)
+
+ * Syntax highlighting should not spill out of verbatim content
+ anymore. (GNU Emacs only)
+
+ * Verbatim commands like '\verb|...|' will not be broken anymore
+ during filling.
+
+ * You can customize the completion for graphic files with
+ 'LaTeX-includegraphics-read-file'.
+
+ * Support for the LaTeX packages 'url', 'listings', 'jurabib' and
+ 'csquotes' was added with regard to command completion and syntax
+ highlighting.
+
+ * Performance of fontification and filling was improved.
+
+ * Insertion of nodes in Texinfo mode now supports completion of
+ existing node names.
+
+ * Setting the variable 'LaTeX-float' to 'nil' now means that you will
+ not be prompted for the float position of figures and tables. You
+ can get the old behaviour of 'nil' by setting the variable to '""',
+ i.e. an empty string.
+
+ * The XEmacs-specific bug concerning 'overlays-at' was fixed.
+
+ * Lots of bug fixes.
+
+News in 11.53
+=============
+
+ * The LaTeX math menu can include Unicode characters if your Emacs
+ built supports it. See the variable 'LaTeX-math-menu-unicode'.
+
+ * Bug fixes for XEmacs.
+
+ * Completion for graphic files in the TeX search path has been added.
+
+ * 'start' is used for the viewer for MiKTeX and fpTeX.
+
+ * The variable 'TeX-fold-preserve-comments' can now be customized to
+ deactivate folding in comments.
+
+News in 11.52
+=============
+
+ * Installation and menus under XEmacs work again (maybe for the first
+ time).
+
+ * Fontification of subscripts and superscripts is now disabled when
+ the fontification engine is not able to support it properly.
+
+ * Bug fixes in the build process.
+
+News in 11.51
+=============
+
+ * PDFTeX and Source Special support did not work with ConTeXt, this
+ has been fixed. Similar for Source Special support under Windows.
+
+ * Omega support has been added.
+
+ * Bug fixes in the build process.
+
+ * 'TeX-fold' now supports folding of environments in Texinfo mode.
+
+News in 11.50
+=============
+
+ * The use of source specials when processing or viewing the document
+ can now be controlled with the new 'TeX-source-specials' minor mode
+ which can be toggled via an entry in the Command menu or the key
+ binding 'C-c C-t C-s'. If you have customized the variable
+ 'TeX-command-list', you have to re-initialize it for this to work.
+ This means to open a customization buffer for the variable by
+ typing 'M-x customize-variable <RET> TeX-command-list <RET>',
+ selecting "Erase Customization" and do your customization again
+ with the new default.
+
+ * The content of the command menu now depends on the mode (plain TeX,
+ LaTeX, ConTeXt etc.). Any former customization of the variable
+ 'TeX-command-list' has to be erased. Otherwise the command menu
+ and the customization will not work correctly.
+
+ * Support for hiding and auto-revealing macros, e.g. footnotes or
+ citations, and environments in a buffer was added.
+
+ * You can now control if indentation is done upon typing <RET> by
+ customizing the variable 'TeX-newline-function'.
+
+ * Limited support for 'doc.sty' and 'ltxdoc.cls' ('dtx' files) was
+ added. The new docTeX mode provides functionality for editing
+ documentation parts. This includes formatting (indenting and
+ filling), adding and completion of macros and environments while
+ staying in comments as well as syntax highlighting. (Please note
+ that the mode is not finished yet. For example syntax highlighting
+ does not work yet in XEmacs.)
+
+ * For macro completion in docTeX mode the AUCTeX style files
+ 'doc.el', 'ltxdoc.el' and 'ltx-base.el' were included. The latter
+ provides general support for low-level LaTeX macros and may be used
+ with LaTeX class and style files as well. It is currently not
+ loaded automatically for those files.
+
+ * Support for ConTeXt with a separate ConTeXt mode is now included.
+ Macro definitions for completion are available in Dutch and
+ English.
+
+ * The filling and indentation code was overhauled and is now able to
+ format commented parts of the source syntactically correct. Newly
+ available functionality and customization options are explained in
+ the manual.
+
+ * Filling and indentation in XEmacs with preview-latex and activated
+ previews lead to the insertion of whitespace before multi-line
+ previews. AUCTeX now contains facilities to prevent this problem.
+
+ * If 'TeX-master' is set to 't', AUCTeX will now query for a master
+ file only when a new file is opened. Existing files will be left
+ alone. The new function 'TeX-master-file-ask' (bound to 'C-c _' is
+ provided for adding the variable manually.
+
+ * Sectioning commands are now shown in a larger font on display
+ devices which support such fontification. The variable
+ 'font-latex-title-fontify' can be customized to restore the old
+ appearance, i.e. the usage of a different color instead of a change
+ in size.
+
+ * Support for 'alphanum.sty', 'beamer.cls', 'booktabs.sty',
+ 'captcont.sty', 'emp.sty', 'paralist.sty', 'subfigure.sty' and
+ 'units.sty'/'nicefrac.sty' was added. Credits go to the authors
+ mentioned in the respective AUCTeX style files.
+
+ * Inserting graphics with 'C-c <RET> includegraphics <RET>' was
+ improved. See the variable 'LaTeX-includegraphics-options-alist'.
+
+ * If 'LaTeX-default-position' is 'nil', don't prompt for position
+ arguments in Tabular-like environments.
+
+ * Completion for available packages when using 'C-c <RET> usepackage
+ <RET>' was improved on systems using the kpathsea library.
+
+ * The commenting functionality was fixed. The separate functions for
+ commenting and uncommenting were unified in one function for
+ paragraphs and regions respectively which do both.
+
+ * Syntax highlighting can be customized to fontify quotes delimited
+ by either >>German<< or <<French>> quotation marks by changing the
+ variable 'font-latex-quotes'.
+
+ * Certain TeX/LaTeX keywords for functions, references, variables and
+ warnings will now be fontified specially. You may add your own
+ keywords by customizing the variables
+ 'font-latex-match-function-keywords',
+ 'font-latex-match-reference-keywords',
+ 'font-latex-match-variable-keywords' and
+ 'font-latex-match-warning-keywords'.
+
+ * If you include the style files 'german' or 'ngerman' in a document
+ (directly or via the 'babel' package), you should now customize
+ 'LaTeX-german-open-quote', 'LaTeX-german-close-quote' and
+ 'LaTeX-german-quote-after-quote' instead of 'TeX-open-quote',
+ 'TeX-close-quote' and 'TeX-quote-after-quote' if you want to
+ influence the type of quote insertion.
+
+ * Upon viewing an output file, the right viewer and command line
+ options for it are now determined automatically by looking at the
+ extension of the output file and certain options used in the source
+ file. The behavior can be adapted or extended respectively by
+ customizing the variable 'TeX-output-view-style'.
+
+ * You can control whether 'TeX-insert-macro' ('C-c <RET>') ask for
+ all optional arguments by customizing the variable
+ 'TeX-insert-macro-default-style'.
+
+ * 'TeX-run-discard' is now able to completely detach a process that
+ it started.
+
+ * The build process was enhanced and is now based on 'autoconf'
+ making installing AUCTeX a mostly automatic process. See the files
+ 'INSTALL' and 'INSTALL.windows' for details.
+
+News in 11.14
+=============
+
+ * Many more LaTeX and LaTeX2e commands are supported. Done by
+ Masayuki Ataka <ataka@milk.freemail.ne.jp>
+
+News in 11.12
+=============
+
+ * Support for the KOMA-Script classes. Contributed by Mark Trettin
+ <Mark.Trettin@gmx.de>.
+
+News in 11.11
+=============
+
+ * Support for 'prosper.sty', see <http://prosper.sourceforge.net/>.
+ Contributed by Phillip Lord <p.lord@russet.org.uk>.
+
+News in 11.10
+=============
+
+ * 'comment-region' now inserts %% by default. Suggested by "Davide
+ G. M. Salvetti" <salve@debian.org>>.
+
+News in 11.06
+=============
+
+ * You can now switch between using the 'font-latex' (all emacsen),
+ the 'tex-font' (Emacs 21 only) or no special package for font
+ locking. Customize 'TeX-install-font-lock' for this.
+
+News in 11.04
+=============
+
+ * Now use -t landscape by default when landscape option appears.
+ Suggested by Erik Frisk <frisk@isy.liu.se>.
+
+News in 11.03
+=============
+
+ * Use 'tex-fptex.el' for fpTeX support. Contributed by Fabrice
+ Popineau <Fabrice.Popineau@supelec.fr>.
+
+News in 11.02
+=============
+
+ * New user option 'LaTeX-top-caption-list' specifies environments
+ where the caption should go at top. Contributed by
+ <ataka@milk.freemail.ne.jp> (Masayuki Ataka).
+
+ * Allow explicit dimensions in 'graphicx.sty'. Contributed by
+ <ataka@milk.freemail.ne.jp> (Masayuki Ataka).
+
+ * Limited support for 'verbatim.sty'. Contributed by
+ <ataka@milk.freemail.ne.jp> (Masayuki Ataka).
+
+ * Better support for amsmath items. Patch by
+ <ataka@milk.freemail.ne.jp> (Masayuki Ataka).
+
+ * More accurate error parsing. Added by David Kastrup
+ <David.Kastrup@t-online.de>.
+
+News in 11.01
+=============
+
+ * Bug fixes.
+
diff --git a/support/auctex/13.1-extra/CHANGES.sig b/support/auctex/13.1-extra/CHANGES.sig
new file mode 100644
index 0000000000..51b5618c40
--- /dev/null
+++ b/support/auctex/13.1-extra/CHANGES.sig
Binary files differ
diff --git a/support/auctex/13.1-extra/ChangeLog.1 b/support/auctex/13.1-extra/ChangeLog.1
new file mode 100644
index 0000000000..e379176ca8
--- /dev/null
+++ b/support/auctex/13.1-extra/ChangeLog.1
@@ -0,0 +1,28092 @@
+2022-02-20 Mos¨ Giordano <mose@gnu.org>
+
+ * Version 13.1 released.
+
+2022-02-17 Arash Esbati <arash@gnu.org>
+
+ Update style/ltxdoc.el to class version 2.1d
+
+ * style/ltxdoc.el ("ltxdoc"): Add '|' to `LaTeX-shortvrb-chars'
+ before running the 'shortvrb' style hook. Add missing symbols to
+ the style hook incl. fontification.
+ (LaTeX-ltxdoc-class-options): New variable.
+
+ * tex-ispell.el (TeX-ispell-skip-cmds-list): Add one entry "cs".
+
+2022-02-15 Arash Esbati <arash@gnu.org>
+
+ Update footmisc package options to v6.0b
+
+ * style/footmisc.el (LaTeX-footmisc-package-options): Delete
+ "bottomfootnotes".
+
+2022-02-13 Arash Esbati <arash@gnu.org>
+
+ Update footmisc package options to v6.0a
+
+ * style/footmisc.el (LaTeX-footmisc-package-options): Add new
+ package options.
+
+2022-02-12 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Add NEWS item
+
+ * doc/changes.texi: Announce changes in
+ `LaTeX-indent-environment-list'.
+
+2022-02-11 Arash Esbati <arash@gnu.org>
+
+ Consider environments defined with newfloat package
+
+ * style/subcaption.el ("subcaption"): Offer environments defined
+ with newfloat package when declaring the sub-caption feature.
+
+2022-02-11 Arash Esbati <arash@gnu.org>
+
+ Improve fontification for LaTeX kernel macros
+
+ * font-latex.el (font-latex-built-in-keyword-classes): Add
+ fontification support for LaTeX kernel macros to various keyword
+ classes.
+
+ * tests/latex/font-latex-test.el
+ (font-latex-general-fontification): Update test for fontification.
+
+2022-02-09 Arash Esbati <arash@gnu.org>
+
+ Adjust entries for completion
+
+ (TeX-arg-corner, TeX-arg-lr): Remove empty strings and unlistify
+ the elements in collection argument of `completing-read'.
+
+2022-02-09 Arash Esbati <arash@gnu.org>
+
+ Improve query for opt. arguments of \parbox and minipage
+
+ * latex.el (LaTeX-env-minipage): Support query for all optional
+ arguments of minipage environment. Don't use INITIAL-VALUE
+ argument when reading the width with `TeX-read-string', use
+ DEFAULT-VALUE instead and indicate the value in the prompt.
+ (TeX-arg-tb): Add new argument POSLIST which can be used to offer
+ more sides for completion.
+ (LaTeX-common-initialization): Use new arguments of `TeX-arg-tb'
+ for the "parbox" entry.
+
+2022-02-05 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Add default entries to LaTeX-indent-environment-list (bug#28405)
+
+ My previous commits disregard user's customization on
+ LaTeX-indent-environment-list. Reconsideration led to move entries to
+ its default value.
+
+ * style/amsmath.el ("amsmath"):
+ * style/mathtools.el ("mathtools"):
+ Move entries into default value in latex.el.
+ * latex.el (LaTeX-indent-environment-list): Pull in those entries.
+ Add math envs without alignment as well to fix bug#28405.
+
+2022-01-31 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Add M-RET support for smallmatrix variants
+
+ * style/mathtools.el ("mathtools"): Add smallmatrix variant
+ environments to `LaTeX-item-list'.
+
+2022-01-31 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Add new test for indent
+
+ * tests/latex/latex-test.el (LaTeX-indent-tabular): Add cookie to
+ recognize \usepackage.
+ * tests/latex/tabular-in.tex:
+ * tests/latex/tabular-out.tex:
+ Add \usepackage to deal with align and aligned environments.
+ Add new test involving aligned environment.
+
+2022-01-31 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Add support for indent for environments with alignment
+
+ * latex.el (LaTeX-indent-environment-list): Move align, align* and
+ equation* environment to amsmath.el.
+ * style/amsmath.el ("amsmath"): Add amsmath environments with
+ alignment to local value of `LaTeX-indent-environment-list'.
+ Add smallmatrix environment to `LaTeX-item-list'.
+ * style/mathtools.el ("mathtools"): Add mathtools environments with
+ alignment to local value of `LaTeX-indent-environment-list'.
+ Add FIXME comment to `LaTeX-item-list' for spreadlines environment.
+ Update copyright year.
+
+ TODO: Add support for empheq environment as well. It would be
+ necessary to implement a new function which looks into the argument of
+ empheq environment and indents approapriately.
+
+2022-01-21 Arash Esbati <arash@gnu.org>
+
+ Re-run LaTeX when .toc|lof|lot is missing
+
+ * tex-buf.el (TeX-LaTeX-sentinel): Recognize missing .toc|lof|lot
+ files and suggest a LaTeX re-run. Issue raised in:
+ https://lists.gnu.org/archive/html/auctex/2022-01/msg00020.html
+
+2022-01-21 Arash Esbati <arash@gnu.org>
+
+ Fontify LaTeX kernel macros
+
+ * font-latex.el (font-latex-built-in-keyword-classes): Add 3 core
+ macros for TOC, LOF and LOT to function class.
+
+2022-01-20 Arash Esbati <arash@gnu.org>
+
+ * tex-ispell.el: Skip the arguments of stabular*? environments.
+
+2022-01-18 Arash Esbati <arash@gnu.org>
+
+ Add macros to skip from caption package
+
+ * tex-ispell.el (TeX-ispell-skip-cmds-list): Add macros from
+ caption.sty.
+
+2022-01-11 Arash Esbati <arash@gnu.org>
+
+ Re-add support for deprecated but necessary macros
+
+ * style/siunitx.el ("siunitx"): Add back support for deprecated
+ macros \si et al.
+ Conditionalize support for macros \qty and \units to avoid clash
+ with other packages defining macros with the same name.
+
+2022-01-08 Andrea Greselin <greselin.andrea@gmail.com> (tiny change)
+
+ Make TeX-insert-quote robust for corner case (bug#52852)
+
+ * tex.el (TeX-insert-quote): Go back only when there's enough room to
+ do so.
+
+2022-01-06 Arash Esbati <arash@gnu.org>
+
+ Fix tabular test for siunitx v3
+
+ * tests/latex/tabular-count-ampersands-in.tex:
+ * tests/latex/tabular-count-ampersands-out.tex: Replace the s
+ column specifier with S which is the only one provided by siunitx
+ version 3.
+
+2021-12-29 Tassilo Horn <tsdh@gnu.org>
+
+ Revert "Properly destructure LaTeX-xparse-macro/environment-list entries"
+
+ This reverts commit 0c2eda1940e2efb89006d4353d234ce3cb66ecb0.
+
+2021-12-29 Andrea Greselin <greselin.andrea@gmail.com> (tiny change)
+
+ Properly destructure LaTeX-xparse-macro/environment-list entries
+
+ * style/xparse.el (LaTeX-xparse-macro-parse): Properly destructure
+ LaTeX-xparse-macro/environment-list entries (bug#52872).
+
+2021-12-28 David Kastrup <dak@gnu.org>
+
+ Make preview.sty deal with newer LaTeX hiding \shipout
+
+2021-12-25 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Fix TeX-complete-make-expert-command-functions
+
+ * tex.el (TeX-complete-make-expert-command-functions): Use dynamically
+ generated, dedicated variable to register expert entities.
+
+2021-12-23 Tassilo Horn <tsdh@gnu.org>
+
+ Refactor completion annotation code
+
+ * tex.el
+ (TeX--completion-annotation-from-tex--prettify-symbols-alist): New
+ function.
+ (TeX--completion-annotation-function): Use it.
+
+2021-12-22 Tassilo Horn <tsdh@gnu.org>
+
+ Add completion annotation support from LaTeX-math-list/default
+
+ * latex.el (LaTeX--completion-annotation-from-math-menu): New
+ function.
+ * tex.el (TeX--completion-annotation-function): Use it if bound.
+
+2021-12-21 Tassilo Horn <tsdh@gnu.org>
+
+ Add an :annotation-function for completion and CAPF
+
+ * tex.el (TeX--completion-annotation-function): New function.
+ (TeX--completion-at-point): Use it.
+ (TeX--symbol-completion-table): New function.
+ (TeX-insert-macro): Use both new functions.
+
+2021-12-18 Arash Esbati <arash@gnu.org>
+
+ Support enhanced tabular indentation
+
+ * style/stabular.el ("stabular"): Append defined environments to
+ `LaTeX-indent-environment-list'.
+
+2021-12-15 Arash Esbati <arash@gnu.org>
+
+ Add style/sidecap.el
+
+ * Makefile.in (STYLESRC): Add new style.
+
+ * style/sidecap.el: New file.
+
+2021-12-15 Arash Esbati <arash@gnu.org>
+
+ Add new style/rotating.el
+
+ * Makefile.in (STYLESRC): Add new style.
+
+ * style/rotating.el: New file.
+
+2021-12-15 Arash Esbati <arash@gnu.org>
+
+ Add styles for packages from sttools collection
+
+ * Makefile.in (STYLESRC): Add new styles.
+
+ * style/cuted.el:
+ * style/floatpag.el:
+ * style/flushend.el:
+ * style/midfloat.el:
+ * style/stabular.el:
+ * style/stfloats.el: New files.
+
+2021-12-06 Arash Esbati <arash@gnu.org>
+
+ Update style/url.el to package version 3.4
+
+ * style/url.el: Add parsing abilities for the macros \urldef and
+ \DeclareUrlCommand.
+ (TeX-arg-url-urlstyle): New function renamed from
+ `TeX-arg-urlstyle'.
+ (TeX-arg-url-DeclareUrlCommand, TeX-arg-url-urldef): New
+ functions.
+ ("url"): Remove macros for setting new styles, linebreaks
+ etc. from fontification. Move '\urlstyle' to function class.
+ (LaTeX-url-package-options): Update package options.
+
+2021-11-30 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Fix marker management
+
+ * latex.el (LaTeX-env-figure): Set marker only when it's really a
+ marker.
+
+2021-11-26 Arash Esbati <arash@gnu.org>
+
+ Track changes in LaTeX kernel 2021-11-15
+
+ * font-latex.el (font-latex-built-in-keyword-classes): Add the
+ macros \counterwith(in|out) to variable keyword-class.
+
+ * latex.el (LaTeX-common-initialization): Support completion for
+ \counterwith(in|out) macros.
+
+2021-11-26 Arash Esbati <arash@gnu.org>
+
+ Add new style/unicodefonttable.el
+
+ * Makefile.in (STYLESRC): Add new style.
+
+ * style/unicodefonttable.el: New file.
+
+2021-11-25 Arash Esbati <arash@gnu.org>
+
+ Update style/siunitx.el to package version 3
+
+ * doc/changes.texi: Document the update of siunitx.el.
+
+ * style/siunitx.el: Change email address.
+ (LaTeX-siunitx-regexp): Adjust regexp to match the second
+ mandatory argument of '\DeclareSIPower'.
+ (LaTeX-siunitx-cleanup): Delete function since the function
+ `LaTeX-siunitx-unit-list' already moves parsed elements to the
+ variable `LaTeX-siunitx-unit-list'. Don't add the function to
+ `TeX-auto-cleanup-hook'.
+ (LaTeX-siunitx-unit-list-parsed): New function returning all
+ predefined and parsed units.
+ (LaTeX-arg-siunitx-unit): Use the function
+ `LaTeX-siunitx-unit-list-parsed'.
+ (LaTeX-siunitx-package-options): Update to (and only to) key=vals
+ defined in package version 3.
+ (LaTeX-siunitx-key-val-options): New function returning key=vals.
+ ("siunitx"): Use the function `LaTeX-siunitx-key-val-options' in
+ the hook.
+ Remove deprecated macros and units. Keep fontification for
+ deprecated main macros \si, \SI, \SIlist and \SIrange.
+ (LaTeX-siunitx-package-options): Support the preamble-only key
+ 'table-column-type'.
+
+2021-11-25 Arash Esbati <arash@gnu.org>
+
+ Add new style/cancel.el
+
+ * Makefile.in (STYLESRC): Add new style.
+
+ * style/cancel.el: New file.
+
+2021-11-23 Arash Esbati <arash@gnu.org>
+
+ Add new style/xr.el
+
+ * Makefile.in (STYLESRC): Add new style.
+
+ * style/xr.el: New file.
+
+2021-11-23 Arash Esbati <arash@gnu.org>
+
+ Add new style/xr-hyper.el
+
+ * Makefile.in (STYLESRC): Add new style.
+
+ * style/xr-hyper.el: New file.
+
+2021-11-23 Arash Esbati <arash@gnu.org>
+
+ Improve handling of key=vals in style/tcolorbox.el
+
+ * style/tcolorbox.el (LaTeX-tcolorbox-keyval-options-local)
+ (LaTeX-tcolorbox-update-style-key): Remove now unused variable and
+ function.
+ (LaTeX-tcolorbox-keyval-options): New function returning key=vals.
+ (LaTeX-tcolorbox-keyval-options-full): Change the content of the
+ variable. It now holds a list of symbols.
+ (LaTeX-tcolorbox-keyval-options-full): New function returning
+ key=vals from symbols in the variable
+ `LaTeX-tcolorbox-keyval-options-full'.
+ ("tcolorbox-tcbuselibrary"): Add the missing prefix to plural
+ argument.
+ (LaTeX-tcolorbox-auto-cleanup): Don't call
+ `LaTeX-tcolorbox-update-style-key' anymore.
+ ("tcolorbox"): Use new function `LaTeX-tcolorbox-keyval-options'
+ in the hook.
+ Process the library names read in by \tcbuselibrary directly.
+
+ * style/tcolorboxlib-raster.el
+ (LaTeX-tcolorbox-lib-raster-env-item): Use the new function
+ `LaTeX-tcolorbox-keyval-options'.
+ ("tcolorboxlib-raster"): Register library variable
+ `LaTeX-tcolorbox-lib-raster-keyval-options' in
+ `LaTeX-tcolorbox-keyval-options-full'.
+ Use the function `LaTeX-tcolorbox-keyval-options' in the hook.
+
+2021-11-22 Arash Esbati <arash@gnu.org>
+
+ Update style/multicol.el to package version 1.9b
+
+ * style/multicol.el ("multicol"): Add new macros. Change the
+ query for \columnbreak which accepts an optional argument.
+ Add fontification support for relevant macros.
+ (LaTeX-multicol-package-options): Add new option "colcation".
+
+2021-11-22 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Fix misc minor issues
+
+ * latex.el (LaTeX-env-figure): Ensure temporal marker is cleaned in
+ all cases.
+ (LaTeX-current-verbatim-macro): Include asterisk, if present, in
+ returned name.
+ * tex-info.el (TeX-texinfo-mode): Set `TeX-comment-start-regexp'.
+ * tex.el (TeX-verbatim-p): Call `TeX-verbatim-p-function' with
+ argument POS.
+ (TeX-verbatim-p-function): State explicitly in doc string about the
+ argument POS of the function.
+
+2021-11-21 Arash Esbati <arash@gnu.org>
+
+ Fontify \tabularnewline macro
+
+ * font-latex.el (font-latex-built-in-keyword-classes): Add an
+ entry for \tabularnewline to warning class.
+
+2021-11-21 Arash Esbati <arash@gnu.org>
+
+ Improve handling of key=vals in style/caption.el
+
+ * style/caption.el (LaTeX-caption-key-val-options-local)
+ (LaTeX-caption-update-key-val-options): Remove now unused variable
+ and function.
+ (LaTeX-arg-caption-command): Remove function since the
+ functionality is now provided by `TeX-arg-key-val' which is used
+ in the hook.
+ ("caption"): Use `completing-read' to read a single key from
+ provided key=vals for the macros \clearcaptionsetup*?.
+ Various docstring fixes.
+
+ * style/subcaption.el ("subcaption"): Don't use removed variable
+ `LaTeX-caption-key-val-options-local' anymore.
+ Various docstring fixes.
+
+2021-11-19 Arash Esbati <arash@gnu.org>
+
+ Improve handling of key=vals in style/hologo.el
+
+ * style/hologo.el ("hologo"): Use `TeX-arg-key-eval' instead of
+ more complicated call of `TeX-arg-eval'.
+
+2021-11-19 Arash Esbati <arash@gnu.org>
+
+ Improve handling of key=vals in style/floatrow.el
+
+ * style/floatrow.el (LaTeX-floatrow-key-val-options-local)
+ (LaTeX-floatrow-update-key-val-options): Remove now unused
+ variable and function.
+ (LaTeX-floatrow-key-val-options): New function returning key=vals.
+ (LaTeX-floatrow-auto-cleanup)
+ (LaTeX-floatrow-arg-declare-new-options): Remove call of
+ `LaTeX-floatrow-update-key-val-options'.
+ ("floatrow"): Call the function `LaTeX-floatrow-key-val-options'
+ instead of the variable `LaTeX-floatrow-key-val-options-local'.
+ Minor spacing fixes.
+
+2021-11-19 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Fix logic again
+
+ * latex.el (LaTeX-fill-region-as-paragraph): When identifying code
+ comment, continue search if the found candidate turns out not to be a
+ code comment.
+ Add a comment for regexp.
+
+2021-11-18 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Fix wrong logic of the previous commit
+
+ * latex.el (LaTeX-fill-region-as-paragraph): Take into account lines
+ ending with "\par" or "\\" before code comments. We must always
+ perform both code comment detection and regexp match.
+ * tests/latex/latex-filling-in.tex:
+ * tests/latex/latex-filling-out.tex:
+ Add additional tests.
+
+2021-11-17 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Use coherent logic to identify code comment (bug#51762)
+
+ * latex.el (LaTeX-fill-region-as-paragraph): Use the same logic to
+ identify code comment as the rest of latex.el.
+ Use shy regexp groups when possible.
+ Add some comments.
+ * tests/latex/latex-test.el (LaTeX-filling):
+ * tests/latex/latex-filling-in.tex:
+ * tests/latex/latex-filling-out.tex:
+ Add new tests (including ones for bug#48937).
+
+2021-11-17 Arash Esbati <arash@gnu.org>
+
+ Improve handling of key=vals in style/listings.el
+
+ * style/listings.el (LaTeX-listings-key-val-options): Fix a typo.
+ (LaTeX-listings-key-val-options-local)
+ (LaTeX-listings-update-style-key): Remove now unused variable and
+ function.
+ (LaTeX-listings-key-val-options): New function returning key=vals.
+ (LaTeX-listings-lstnewenvironment-regexp): Adjust matching of
+ first optional argument.
+ ("listings"): Call the function `LaTeX-listings-key-val-options'
+ instead of the variable `LaTeX-listings-key-val-options-local'.
+ Various docstring fixes.
+
+2021-11-15 Arash Esbati <arash@gnu.org>
+
+ Improve handling of key=vals in style/enumitem.el
+
+ * style/enumitem.el (LaTeX-enumitem-key-val-options-local)
+ (LaTeX-enumitem-newlist-list-local): Remove now unused variables.
+ (LaTeX-enumitem-key-val-options): New function returning key=vals.
+ Replace all occurrences of `LaTeX-enumitem-key-val-options-local'
+ with a call to the new function.
+ (LaTeX-arg-enumitem-SetLabelAlign)
+ (LaTeX-arg-enumitem-SetEnumitemKey)
+ (LaTeX-arg-enumitem-SetEnumitemValue): Add library prefix to the
+ function names.
+ (LaTeX-arg-enumitem-setlist): New function.
+ (LaTeX-enumitem-update-key-val-options): Remove unused function.
+ ("enumitem"): Update style to package version 3.9, add support for
+ 'size' feature in \setlist and adjust fontification. Fix typo for
+ 'labelindent'. Various docstring fixes.
+
+2021-11-13 Arash Esbati <arash@gnu.org>
+
+ Improve handling of key=vals in style/fancyvrb.el
+
+ * style/fancyvrb.el (LaTeX-fancyvrb-key-val-options-local): Remove
+ now unused variable.
+ (LaTeX-fancyvrb-key-val-options): New New function returning
+ key=vals. Replace all occurrences of
+ `LaTeX-fancyvrb-key-val-options-local' with a call to the new
+ function.
+
+ * style/fvextra.el (LaTeX-fvextra-key-val-options): Uncomment the
+ "numbers" key=val.
+ (LaTeX-fvextra-update-key-val): Remove the unused function and its
+ addition to `TeX-auto-cleanup-hook'.
+ ("fvextra"): Replace all occurrences of
+ `LaTeX-fancyvrb-key-val-options-local' with a call to the function
+ `LaTeX-fancyvrb-key-val-options'.
+
+ * style/pythontex.el: Declare the function
+ `LaTeX-fancyvrb-key-val-options'.
+ (LaTeX-env-pythontex, "pythontex"): Replace all occurrences of
+ `LaTeX-fancyvrb-key-val-options-local' with a call to the function
+ `LaTeX-fancyvrb-key-val-options'.
+
+ * style/tex-live.el ("tex-live"): Call the function
+ `LaTeX-fancyvrb-key-val-options' instead of the variable
+ `LaTeX-fancyvrb-key-val-options-local'.
+
+2021-11-11 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Don't use obsolete @inforef
+
+ * doc/preview-latex.texi (Keys and lisp):
+ (The Emacs interface):
+ Use @xref instead of @inforef as Texinfo 6.8 marked it as obsolete.
+
+2021-11-10 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ * doc/todo.texi (Mid-term Goals): Add TODO about tool bar.
+
+2021-11-10 Arash Esbati <arash@gnu.org>
+
+ Improve handling of key=vals in style/minted.el
+
+ * style/minted.el (LaTeX-minted-key-val-options-local)
+ (LaTeX-minted-update-key-vals): Remove now unused variable and
+ function.
+ (LaTeX-minted-key-val-options): New function returning key=vals.
+ (LaTeX-minted-auto-cleanup): Delete call of
+ `LaTeX-minted-update-key-vals'.
+ ("minted"): Use new function in the style hook.
+
+2021-11-10 Arash Esbati <arash@gnu.org>
+
+ Improve handling of key=vals in style/mdframed.el
+
+ * style/mdframed.el (LaTeX-mdframed-key-val-options-local)
+ (LaTeX-mdframed-update-style-key): Remove now unused variable and
+ function.
+ (LaTeX-mdframed-newmdenv-regexp)
+ (LaTeX-mdframed-mdtheorem-regexp): Use the helper function
+ `LaTeX-extract-key-value-label' to build the regexp.
+ (LaTeX-mdframed-key-val-options): New function returning key=vals.
+ ("mdframed"): Use new function in the style hook.
+
+2021-11-10 Arash Esbati <arash@gnu.org>
+
+ Improve handling of key=vals style/newfloat.el
+
+ * style/newfloat.el (LaTeX-empheq-key-val-options-local): Remove
+ now unused variable.
+ (LaTeX-newfloat-key-val-options): New function returning key=vals.
+ ("newfloat"): Use new function `LaTeX-newfloat-key-val-options'.
+
+2021-11-10 Arash Esbati <arash@gnu.org>
+
+ Improve handling of key=vals in style/empheq.el
+
+ * style/empheq.el (LaTeX-empheq-key-val-options-local)
+ (LaTeX-empheq-update-key-val-options): Remove now unused variable
+ and function.
+ (LaTeX-empheq-key-val-options): New function returning key=vals.
+ (LaTeX-empheq-env, LaTeX-empheq-env-overload, "empheq"): Use new
+ function `LaTeX-empheq-key-val-options' instead of variable
+ `LaTeX-empheq-key-val-options-local'. Minor code rearrangements.
+
+2021-11-09 Arash Esbati <arash@gnu.org>
+
+ Improve style/babel.el
+
+ * style/babel.el (LaTeX-babel-cleanup-babeltags): Use \' instead
+ of $ to match string-end. Drop unnecessary grouping.
+ ("babel"): Update various key=vals.
+
+2021-11-09 Arash Esbati <arash@gnu.org>
+
+ * style/babel.el ("babel"): Use `LaTeX-fontspec-font-features'.
+
+2021-11-08 Arash Esbati <arash@gnu.org>
+
+ Update style/fontspec.el to package version 2.7i
+
+ * style/fontspec.el (LaTeX-fontspec-font-features): Update
+ key=val list.
+ (LaTeX-fontspec-font-features-local)
+ (LaTeX-fontspec-update-font-features): Remove now unused variable
+ and function.
+ (LaTeX-fontspec-font-features): New function returning key=vals.
+ (LaTeX-fontspec-auto-cleanup): Remove the call of
+ `LaTeX-fontspec-update-font-features'.
+ ("fontspec"): Replace `LaTeX-fontspec-font-features-local' with
+ `LaTeX-fontspec-font-features' call.
+
+2021-11-08 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Supplement doc string
+
+ * style/kpfonts.el (LaTeX-kpfonts-default): Supplement doc string
+ according to recent change in doc string of `LaTeX-math-list'.
+
+2021-11-03 Arash Esbati <arash@gnu.org>
+
+ Autoload `TeX-check-engine-add-engines' in tex.el
+
+ * style/arabxetex.el ("arabxetex"):
+ * style/babel.el ("babel"):
+ * style/bidi.el ("bidi"):
+ * style/fontspec.el ("fontspec"):
+ * style/polyglossia.el ("polyglossia"): Don't require tex-buf.el
+ in the style hook.
+
+ * tex.el (TeX-check-engine-add-engines): Autoload the function so
+ the styles using it don't have to require tex-buf.el.
+
+2021-10-29 Arash Esbati <arash@gnu.org>
+
+ Extend `TeX-read-key-val' to accept a function call
+
+ * doc/changes.texi: Document the change.
+
+ * latex.el (TeX-read-key-val): Accept a function call returning an
+ alist as second argument.
+
+2021-10-24 Arash Esbati <arash@gnu.org>
+
+ * style/graphicx.el (LaTeX-graphicx-key-val-options): Add alt key.
+
+2021-10-09 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Cater for corner case when dealing with TeX error
+
+ * tex-buf.el (TeX-find-display-help): Don't try to open error file
+ when it wasn't found.
+ Some cleanups.
+
+2021-10-05 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Silence compiler warning
+
+ * tex-buf.el (TeX-parse-TeX):
+ (TeX-error-overview-goto-source):
+ Don't let-bind `default-major-mode'.
+ (TeX-find-display-help): Fall back to the major mode of command
+ buffer.
+
+2021-10-05 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Explain how to do forward search by mouse
+
+ * doc/auctex.texi (I/O Correlation): Add a sample usage of
+ `TeX-source-correlate-map' and `TeX-view-mouse'.
+
+2021-09-24 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ * tests/latex/latex-test.el (LaTeX-flush-left-indent): New test.
+
+2021-09-24 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Cleanup indentation of verbatim environments
+
+ * latex.el (LaTeX-begin-regexp): Delete because this variable isn't
+ used anywhere.
+ (LaTeX-indent-calculate-last): Remove redundant regexp grouping.
+
+2021-09-24 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Don't indent begin/end of comment env
+
+ Begin/end line of comment environment must be flush left, just like
+ verbatim environments. However, comment environment shouldn't be
+ included in `LaTeX-verbatim-environments' because
+ 1. filling shouldn't be disabled inside comment environment
+ 2. contents inside comment environment should be fontified as comment
+
+ * latex.el (LaTeX-verbatim-regexp): Attach a new optional argument
+ COMMENT to allow inclusion of comment environments.
+ (LaTeX-indent-calculate): Indent begin/end line of comment environment
+ at column 0.
+ Remove redundant regexp grouping.
+ (LaTeX-indent-calculate-last): Calculate indent after comment
+ environment correctly.
+ Remove redundant regexp grouping.
+
+2021-09-24 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Explain how to support option completion
+
+ * doc/auctex.texi (Adding Other): Add explanation for style file
+ authors: How to provide support for completion of optional arguments
+ for \usepackage and \documentclass.
+
+2021-09-22 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Delete obsolete files and targets
+
+ * auctex.spec:
+ * preview-latex.spec:
+ Delete rpm spec files.
+ * Makefile.in (): Remove make targets rpm-packages and
+ windows-package.
+ * doc/preview-readme.texi (Availability): Remove mention about rpm
+ package.
+ Supplement description about git access.
+
+2021-09-09 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Add NEWS for two commands available in Texinfo mode
+
+ * doc/changes.texi: Add news of two new entries in `TeX-command-list',
+ "Texindex" and "Texi2dvi".
+
+2021-09-08 Tassilo Horn <tsdh@gnu.org>
+
+ Recognize L3 \msg_line_context: on warning parsing
+
+ * tex-buf.el (TeX-warning): Recognize L3 \msg_line_context: on warning
+ parsing which reads "on line X" instead of "on input line X".
+
+2021-09-02 Arash Esbati <arash@gnu.org>
+
+ Track standardized generic hook names in LaTeX kernel
+
+ * latex.el (TeX-read-hook): Unify query for hooks and track the
+ change for standardized generic hook names described in:
+ https://github.com/latex3/latex2e/blob/develop/base/doc/ltnews34.tex
+
+2021-08-30 Arash Esbati <arash@gnu.org>
+
+ Handle optional embellishment arguments correctly
+
+ * style/xparse.el (LaTeX-xparse-macro-regexp)
+ (LaTeX-xparse-environment-regexp): Include the entire match text
+ to avoid ambiguity.
+ (LaTeX-arg-xparse-embellishment-query): New function.
+ (LaTeX-xparse-macro-parse): Handle embellishments (e/E argument
+ type) correctly.
+
+2021-08-30 Arash Esbati <arash@gnu.org>
+
+ Check the options and load the style backref.el
+
+ * style/hyperref.el ("hyperref"): Run the style hook for
+ backref.el when the corresponding option is given.
+ Correct link to testform.tex.
+
+2021-08-28 Tassilo Horn <tsdh@gnu.org>
+
+ Fix error when tex.el is loaded while default-directory doesn't exist
+
+ * tex.el (TeX-view-program-select-evince): Bind `default-directory' to
+ HOME for the shell command testing for the availability of
+ evince-based viewer. That triggered an error when tex.el is loaded as
+ response to finding a tex file in a non-existent directory which at
+ this point is the value of `default-directory' (bug#50225).
+
+2021-08-27 Arash Esbati <arash@gnu.org>
+
+ Add new style/backref.el
+
+ * Makefile.in (STYLESRC): Add new style.
+
+ * style/backref.el: New file.
+
+2021-08-26 Arash Esbati <arash@gnu.org>
+
+ * style/beamer.el ("beamer"): Improve indentation of \frametitle.
+
+2021-08-24 Arash Esbati <arash@gnu.org>
+
+ Improve obeying the value of `TeX-insert-braces'
+
+ * latex.el (LaTeX-common-initialization): Add "columnseprule" to
+ list of known lengths and remove it from style/multicol.el.
+ Remove 0 as specifier for symbols formerly provided by the
+ textcomp package.
+
+ * style/multicol.el ("multicol"): Add lengths defined by the
+ package to list of known lengths.
+
+ * style/brazilian.el ("brazilian"):
+ * style/currvita.el ("currvita"):
+ * style/ltugboat.el ("ltugboat"):
+ * style/marginnote.el ("marginnote"):
+ * style/mflogo.el ("mflogo"):
+ * style/portuguese.el ("portuguese"): Remove 0 as specifier for
+ the defined symbols. Braces are now inserted after the symbols if
+ `TeX-insert-braces' is non-nil.
+
+2021-08-21 Al Haji-Ali <abdo.haji.ali@gmail.com>
+
+ Add NEWS entry for output-dir feature
+
+
+ * doc/changes.texi (News in 13.1): Add NEWS entry for Al's output-dir
+ feature.
+
+2021-08-20 Arash Esbati <arash@gnu.org>
+
+ Update Pygments styles
+
+ * style/minted.el (LaTeX-minted-key-val-options): Update values
+ for style-key provided by Pygments v2.9.
+
+2021-08-17 Arash Esbati <arash@gnu.org>
+
+ * style/ltxguide.el ("ltxguide"): Update syntactic font-locking.
+
+2021-08-13 Arash Esbati <arash@gnu.org>
+
+ Improve style/xparse.el
+
+ * style/xparse.el (LaTeX-xparse-macro-parse): Remove unnecessary
+ grouping in regexps.
+ ("xparse"): Fix number of arguments of testing macros.
+
+2021-08-03 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Avoid superfluous output directories
+
+ * tex.el (TeX--master-output-dir): Add new optional argument ENSURE so
+ that it doesn't make output dir when `TeX-region-file' is called from
+ `TeX-set-mode-name', which can be called from
+ `TeX-source-correlate-mode' in major mode function.
+ (TeX--output-dir-arg): Feed t for the above new argument ENSURE.
+
+2021-07-21 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Add index files as clean target in Texinfo mode
+
+ * tex-info.el (Texinfo-clean-intermediate-suffixes): Add index file
+ suffixes.
+
+2021-07-21 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Add entries for Texinfo mode in `TeX-command-list'
+
+ * tex.el (TeX-command-list): Add "Texindex" and "Texi2dvi" entries in
+ `TeX-command-list'.
+ * doc/auctex.texi (Superseding): Mention "Texindex" instead of "Index".
+
+2021-07-21 Arash Esbati <arash@gnu.org>
+
+ Update style/ulem.el
+
+ * style/ulem.el ("ulem"): Add macros \dashuline and \dotuline.
+ Fix \markoverwith which takes one argument.
+ Add \ULdepth to list of known lengths.
+ Cater fontification for added macros.
+ (LaTeX-ulem-fontdecl, LaTeX-ulem-fontcmd): Rename from
+ `LaTeX-arg-fontdecl' and `LaTeX-arg-fontcmd'.
+ (TeX-arg-ulem-fontdecl, TeX-arg-ulem-fontcmd): Use renamed
+ variables.
+ (TeX-arg-ulem-useunder): Don't listify the completion candidates,
+ `completing-read' can handle list of strings.
+
+2021-07-19 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Fix slowdown of font lock in doctex mode
+
+ `texmathp' limits search by looking for empty lines, which appear
+ frequently in LaTeX documents. However, docTeX documents often lack
+ such true empty lines. In such buffer, `texmathp' must search
+ from (point-min) every time, which slowed down font lock operation
+ siginificantly.
+
+ * texmathp.el (texmathp): Adjust regular expression so that a line
+ containing only whitespaces except consecutive %'s at its beginning
+ is considered as empty in doctex mode buffer.
+
+2021-07-18 Arash Esbati <arash@gnu.org>
+
+ Be more precise about the first element in `LaTeX-math-list'
+
+ * doc/auctex.texi (Mathematics):
+ * latex.el (LaTeX-math-list): Update description for the first
+ element KEY in `LaTeX-math-list'.
+ Remove unnecessary quoting of opening/closing parenthesis.
+
+2021-07-16 Arash Esbati <arash@gnu.org>
+
+ * tex-fold.el (TeX-fold-macro-spec-list): Add entry for "footref".
+
+2021-07-12 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Clean up temporal markers
+
+ * latex.el (LaTeX-env-figure, LaTeX-fill-region-as-paragraph)
+ (LaTeX-fill-region-as-para-do,LaTeX-fill-paragraph)
+ (LaTeX-fill-region):
+ * style/dinbrief.el (LaTeX-dinbrief-env-recipient):
+ * style/letter.el (LaTeX-env-recipient):
+ * tex-info.el (Texinfo-reftex-section-info):
+ * tex.el (TeX-parse-argument):
+ Clean up temporal markers after their usage so that they don't slow
+ down the subsequent editing in the buffer.
+
+2021-07-07 Arash Esbati <arash@gnu.org>
+
+ Add support for LaTeX hook macros
+
+ * doc/auctex.texi (Adding Macros): Document new functions for
+ reading and inserting LaTeX hooks.
+
+ * doc/changes.texi: Add entry for LaTeX hooks support.
+
+ * font-latex.el (font-latex-built-in-keyword-classes): Add hook
+ macros to function keywords class.
+
+ * latex.el (TeX-global-input-files-with-extension): New variable.
+ (TeX-read-hook, TeX-arg-hook): New functions for reading and
+ inserting LaTeX hooks.
+ (LaTeX-common-initialization): Add hook macros to AUCTeX's LaTeX2e
+ hook.
+
+2021-07-05 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Add defensive `save-match-data'
+
+ * preview.el.in (preview-set-texinputs): Follow the instruction
+ "Simple Match Data Access" in elisp reference:
+ A search which fails may or may not alter the match data. In the
+ current implementation, it does not, but we may change it in the future.
+ Don’t try to rely on the value of the match data after a failing search.
+
+2021-07-05 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Fix order of arguments
+
+ * preview.el.in (preview-make-image): Rearrange the arguments of `get'
+ in correct order.
+ Adapt doc string.
+
+2021-07-05 Arash Esbati <arash@gnu.org>
+
+ * doc/auctex.texi (Modes and Hooks): Fix hook name.
+
+2021-06-22 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Improve tool bar appearance
+
+ * toolbar-x.el (toolbarx-emacs-add-button): Use built-in separator.
+ Add :vert-only property to suppress labels unless vertical alignment
+ is specified for labels.
+ Reindent the codes.
+ * preview.el.in (preview-mode-setup): Add :vert-only property as well.
+
+2021-06-16 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Update document
+
+ * doc/auctex.texi (Multifile): Delete description about nonexistent
+ feature.
+
+2021-06-16 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Fix doc strings and comment
+
+ * latex.el (LaTeX-style-list):
+ * preview.el.in (preview-document-pt-list):
+ * tex-buf.el (TeX--concat-ext, TeX-command)
+ (TeX-active-master-with-quotes):
+ * tex.el (TeX-master,TeX-auto-regexp-list,TeX-auto-x-regexp-list)
+ (TeX-output-dir, TeX--master-output-dir, TeX--output-dir-arg):
+ Fix doc strings.
+ Fix defcutom specs.
+ * tex-fold.el (TeX-fold-mode): Fix comment.
+
+2021-06-16 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Fix arguments given to makeglossaries
+
+ * tex.el (TeX-expand-list-builtin): Add new placeholder "%(d-dir)".
+ (TeX-command-list): Use it and give basename of the document, not .aux
+ file names, as argument for makeglossaries.
+ Tweak the order of the argument for biber and dvipdfmx for coherency.
+
+2021-06-11 Arash Esbati <arash@gnu.org>
+
+ Define `TeX-parse-all-errors' in tex.el
+
+ * tex-buf.el:
+ * tex.el (TeX-parse-all-errors): Move defintion of custom variable
+ into tex.el. This variable is also used in
+ `TeX-mode-specific-command-menu-entries' and results in an error
+ when selecting 'Command' in the menu bar since tex.el doesn't
+ require tex-buf.el.
+
+2021-06-10 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Fix bug#36651
+
+ * tex-fold.el (TeX-fold-mode): Open folded portion when isearch
+ matches the hidden text.
+
+2021-06-09 Tassilo Horn <tsdh@gnu.org>
+
+ Fix filling of code-and-comment lins where code ended in \% (bug#48937)
+
+ * latex.el (LaTeX-fill-region-as-paragraph): Fix filling of
+ code-and-comment lins where code ended in \% (bug#48937).
+
+2021-06-07 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Make TeX-fold-mode aware of superscript and subscript
+
+ * tex-fold.el (TeX-fold-hide-item): Copy `display' property of
+ underlying text to displayed text to raise superscript and lower
+ subscript suitably.
+
+2021-06-04 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Use own error description for LaTeX mode only
+
+ * tex-buf.el (TeX-error-description-list): Move its value to new
+ variable in latex.el. Now it holds user defined entries only and
+ defaults to nil.
+ (TeX-error-description-list-local): New variable to store buffer
+ local list of error descriptions.
+ (TeX-help-error): Combine values of the above two variables.
+ * latex.el (LaTeX-error-description-list): New variable for LaTeX
+ specific error descriptions, formerly stored in
+ `TeX-error-description-list'.
+ (LaTeX-common-initialization): Set local value of
+ `TeX-error-description-list-local'.
+ * tex-jp.el (toplevel): Overwrite `LaTeX-error-description-list'
+ instead of `TeX-error-description-list'.
+ * doc/changes.texi (News in 13.1): Mention about it.
+
+2021-06-02 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Adapt for Texinfo mode
+
+ * tex.el (TeX-local-master-p): Just look into
+ `file-local-variables-alist' to return correct value even in TeXinfo
+ mode. This fixes bug#33227 as well.
+
+2021-06-02 Arash Esbati <arash@gnu.org>
+
+ Define minor modes using keywords
+
+ * tex.el (TeX-Omega-mode, TeX-interactive-mode):
+ * tex-fold.el (TeX-fold-mode):
+ * style/kpfonts.el (LaTeX-kpfonts-mode):
+ * latex.el (LaTeX-math-mode): Use keywords to define minor modes.
+
+2021-06-02 Arash Esbati <arash@gnu.org>
+
+ Check for `auto-fill-function' before filling
+
+ * style/algorithm.el (LaTeX-env-algorithm):
+ * style/beamer.el ("beamer"):
+ * style/bicaption.el (LaTeX-arg-bicaption-bicaption):
+ * style/caption.el (LaTeX-arg-caption-captionbox)
+ (LaTeX-arg-caption-captionof):
+ * style/currvita.el (LaTeX-currvita-env-with-label):
+ * style/enumitem.el (LaTeX-enumitem-env-with-opts):
+ * style/longtable.el (LaTeX-env-longtable):
+ * style/moodle.el (LaTeX-moodle-question-env-with-args):
+ * style/subcaption.el (LaTeX-arg-subcaption-subcaption)
+ (LaTeX-arg-subcaption-subcaptionbox):
+ * style/tcolorboxlib-raster.el (LaTeX-tcolorbox-lib-raster-env-item):
+ * style/xltabular.el (LaTeX-env-xltabular): Fill the paragraph if
+ `auto-fill-function' is non-nil.
+
+2021-06-01 Tassilo Horn <tsdh@gnu.org>
+
+ Only re-fill \item contents if auto-fill-mode is active (bug#48760)
+
+ * latex.el (LaTeX-env-item): Only fill the paragraph of the new \item
+ if auto-fill-mode is activated (bug#48760).
+
+2021-06-01 Arash Esbati <arash@gnu.org>
+
+ Remove backspace as paragraph separator
+
+ * tex-info.el (TeX-texinfo-mode): Remove backspace from paragraph
+ separator and start. See also Emacs commit 3c6b59918a.
+
+2021-05-31 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Use #' rather than ' to quote function names
+
+ * latex.el (LaTeX-match-class-option, LaTeX-auto-cleanup):
+ * style/beamer.el (LaTeX-beamer-after-insert-env):
+ * style/doc.el (LaTeX-doc-after-insert-macrocode):
+ * tex-buf.el (TeX-style-check, TeX-error-overview-make-entries):
+ * tex.el (TeX-match-style, TeX-run-style-hooks)
+ (TeX-complete-word)
+ (TeX-complete-make-expert-command-functions)
+ (TeX-default-mode,TeX-auto-parse-region):
+ Use #' rather than ' to quote function names.
+
+2021-05-30 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Fix markups in documents
+
+ * doc/auctex.texi (Internationalization): Fix markups.
+ (Japanese): Reorder words so that unbreakable email addresses don't
+ make the line ugly in pdf output.
+
+2021-05-28 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Followup my commit on May 6
+
+ * tex-buf.el (TeX-LaTeX-sentinel): Use `insert-file-contents-literally'
+ instead of `insert-file-contents'.
+
+2021-05-28 Arash Esbati <arash@gnu.org>
+
+ Improve completion
+
+ * style/pdfpages.el ("pdfpages"): Allow directories while reading
+ the file name. Use "\'" to match the empty string at the end of
+ regexp.
+
+2021-05-27 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Improve `TeX-electric-macro' in Texinfo mode
+
+ * tex.el (TeX-electric-macro): Compare with `last-command-event'
+ rather than constant ?\ in case `@' is typed in Texinfo mode.
+
+2021-05-26 Arash Esbati <arash@gnu.org>
+
+ Delete style/latexinfo.el from AUCTeX
+
+ * Makefile.in (STYLESRC): Delete entry for style/latexinfo.el.
+
+ * doc/changes.texi: Document removal of style.
+
+2021-05-25 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Add -dDELAYBIND only when necessary
+
+ * preview.el.in (preview-pdf2dsc-sentinel): Add gs option -dDELAYBIND
+ only when preview-latex tries to tweak foreground color. According to
+ gs developer[1], -dDELAYBIND option must be accompanied by ".bindnow"
+ in gs init string.
+ [1] https://lists.gnu.org/r/auctex-devel/2021-05/msg00030.html
+
+2021-05-23 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Update documentation
+
+ * doc/auctex.texi (Internationalization): Update according to recent
+ utf8-oriented change in LaTeX.
+ (Modes and Hooks): Display mode function names in lower case because
+ `major-mode' variable holds those forms.
+ (Mapping): Fix typo in key sequence.
+ (Processing): Add mention about options to customize tool bar.
+ (Adding Other): Add description how to examine package/class names and
+ options.
+ * doc/preview-latex.texi: Remove duplicated "@contents".
+ * doc/preview-readme.texi (More documentation): Update acoording to
+ change already done in favor of pdf format.
+ * doc/quickstart.texi (Editing Facilities): Update paragraph written
+ in days that `global-font-lock-mode' wasn't enabled by default.
+ (Processing Facilities): Add mention about synctex.
+ Update paragraph mentioning `TeX-PDF-from-DVI' rather than obsolete
+ `TeX-PDF-via-dvips-ps2pdf' option.
+
+ * doc/auctex.texi:
+ * doc/changes.texi:
+ * doc/faq.texi:
+ * doc/install.texi:
+ * doc/preview-faq.texi:
+ * doc/preview-latex.texi:
+ * doc/preview-problems.texi:
+ * doc/preview-readme.texi:
+ * doc/preview-todo.texi:
+ * doc/quickstart.texi:
+ * doc/tex-ref.tex:
+ * doc/todo.texi:
+ * doc/wininstall.texi:
+ Fix and (hopefully) improve a lot of markups and comments.
+ Add some FIXME's.
+ Convert tabs to spaces.
+ Add more indexes.
+ Use "init.el" as well as ".emacs" as the name of user init file.
+
+2021-05-21 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Indent region (bug#48518)
+
+ * latex.el (LaTeX-insert-environment): Indent active region when
+ `auto-fill-mode' is disabled.
+
+2021-05-20 Arash Esbati <arash@gnu.org>
+
+ Improve style/algorithm.el
+
+ * style/algorithm.el (LaTeX-algorithm-package-options): Add
+ missing options.
+ (LaTeX-env-algorithm): Insert a newline only when a label is
+ really added. Remove unnecessary comments.
+ ("algorithm"): Move `TeX-dialect' to be the third argument of the
+ hook.
+
+2021-05-13 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Add new test
+
+ * tests/latex/font-latex-test.el (font-latex-unclosed-dollars): New
+ test.
+ * font-latex.el (font-latex-find-dollar-math): Clean up doc string and
+ comment.
+
+2021-05-12 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Fix fontification when $ is unclosed in buffer
+
+ * font-latex.el (font-latex-match-dollar-math): Ensure that limit
+ passed to `font-latex-find-dollar-math' doesn't exceed end of buffer.
+
+2021-05-12 Arash Esbati <arash@gnu.org>
+
+ Add new variable `TeX-normal-mode-reset-list'
+
+ * latex.el:
+ * style/graphicx.el: Add variables to `TeX-normal-mode-reset-list'
+ which were hard-coded in `TeX-normal-mode'.
+
+ * tex.el (TeX-normal-mode-reset-list): New variable for symbols to
+ be reset when the command `TeX-normal-mode' is run with argument.
+ (TeX-normal-mode): Remove the hard-coded variables and use
+ `TeX-normal-mode-reset-list'.
+ Remove the defvar's silencing the compiler.
+
+2021-05-11 Tassilo Horn <tsdh@gnu.org>
+
+ Skip inline math $ inside comments (bug#48365)
+
+ * font-latex.el (font-latex-find-dollar-math): Skip inline math $
+ inside comments.
+
+2021-05-11 Arash Esbati <arash@gnu.org>
+
+ Introduce new variable `LaTeX-global-package-files'
+
+ * latex.el (LaTeX-global-package-files): New variable holding
+ LaTeX package files.
+ (LaTeX-arg-usepackage-read-packages-with-options): Set and use it
+ instead of `TeX-global-input-files'.
+
+ * tex.el (TeX-normal-mode): Reset also
+ `LaTeX-global-package-files' when invoked with ARG.
+ Silence the compiler.
+
+2021-05-06 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Ensure rawness of data to compute MD5
+
+ * tex-buf.el (TeX-run-TeX): Use `insert-file-contents-literally'
+ instead of `insert-file-contents' in order to avoild possible wrong
+ MD5 value due to unnecessary encoding conversion.
+ ;(TeX-sentinel-function, TeX-sentinel-default-function): Fix typo.
+
+2021-05-06 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Make `TeX-run-format' self-contained (bug#48144)
+
+ * tex-buf.el (TeX-run-format, TeX-run-TeX): Move initialization of
+ `TeX-error-report-switches' from `TeX-run-TeX' to `TeX-run-format'.
+ This makes `TeX-TeX-sentinel', set to `TeX-sentinel-function', work
+ without error when `TeX-run-format' is called outside of
+ `TeX-run-TeX'.
+ (TeX-error-report-switches, TeX-error-report-has-errors-p): Define
+ them before `TeX-run-format' to prevent compiler warning.
+
+2021-05-05 Arash Esbati <arash@gnu.org>
+
+ Support new kernel macro \footref
+
+ * font-latex.el (font-latex-built-in-keyword-classes): Add entry
+ for footref to reference class.
+
+ * latex.el (LaTeX-common-initialization): Add support for
+ \footref macro.
+
+2021-05-04 Arash Esbati <arash@gnu.org>
+
+ Add support for (Brazilian) Portuguese
+
+ * tex.el (TeX-quote-language-alist): Add entry for "portuguese".
+
+ * doc/auctex.texi (European): Document the features of new
+ language styles.
+
+ * Makefile.in (STYLESRC): Add entries for new styles.
+
+ * style/brazil.el:
+ * style/brazilian.el:
+ * style/portuges.el:
+ * style/portuguese.el: New files.
+
+2021-04-28 Tassilo Horn <tsdh@gnu.org>
+
+ Allow one level of braces in verbatim environment args (bug#48078)
+
+ * font-latex.el (font-latex-set-syntactic-keywords): Allow one level
+ of braces in verbatim environment args (bug#48078).
+
+2021-04-27 Tassilo Horn <tsdh@gnu.org>
+
+ Fix filling issue caused by commit 98455d05.
+
+ * latex.el (LaTeX-fill-region-as-para-do): Call
+ LaTeX-back-to-indentation without explicit arg again.
+
+2021-04-25 Tassilo Horn <tsdh@gnu.org>
+
+ Fix matching of script chars (bug#48012)
+
+ * font-latex.el (font-latex-match-script-chars): Don't stop after
+ findind the first script char which turns out not to be an actual
+ script char (bug#48012).
+
+2021-04-23 Tassilo Horn <tsdh@gnu.org>
+
+ Give explicit arg to LaTeX-back-to-indentation in filling functions.
+
+ Also add some comment filling tests, and adapt one existing test to
+ new filling behavior introduced in previous commit.
+
+ * latex.el (LaTeX-fill-region-as-para-do):
+ (LaTeX-fill-move-to-break-point): Provide explicit arg to
+ `LaTeX-back-to-indentation'.
+
+2021-04-23 Tassilo Horn <tsdh@gnu.org>
+
+ Don't treat comments with whitespace before % as code comments
+
+ * latex.el (LaTeX-fill-region-as-paragraph): Don't treat comments with
+ whitespace before % as code comments (mentioned as addendum to
+ bug#47757).
+
+2021-04-23 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Add new test
+
+ * tests/latex/latex-test.el (LaTeX-electric-pair-interaction): New
+ test.
+ * latex.el (LaTeX-insert-left-brace): Add comments.
+
+2021-04-22 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Follow up previous commit
+
+ * latex.el (LaTeX-insert-left-brace): Let side effects of
+ self-insertion, such as electric paring, to occur when this function
+ doesn't do special treatment.
+
+2021-04-22 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Get rid of unexpected side effects
+
+ * latex.el (LaTeX-insert-left-brace): Use `insert' instead of
+ `self-insert-command' to avoid all unexpected interactions.
+ (LaTeX-insert-corresponding-right-macro-and-brace)
+ (LaTeX-common-initialization):
+ Remove codes which is no longer necessary.
+
+2021-04-21 Philip K <philipk@posteo.net>
+
+ Improve handling for parentheses with electric-pair-mode (bug#47936)
+
+ * latex.el (LaTeX-insert-corresponding-right-macro-and-brace): Improve
+ handling for parentheses with electric-pair-mode (bug#47936).
+
+2021-04-18 Tassilo Horn <tsdh@gnu.org>
+
+ Fix the fix of bug#47757 which broke comment filling.
+
+ * latex.el (LaTeX-back-to-indentation): Move point to the comment
+ content only if the current command is no newline command (fixes the
+ previous fix for bug#47757 which broke comment filling).
+
+2021-04-16 Tassilo Horn <tsdh@gnu.org>
+
+ Rename TeX-xreader-sync-view to TeX-reader-sync-view (bug#47807)
+
+ * tex.el (TeX-reader-sync-view): Rename from
+ TeX-xreader-sync-view (bug#47807).
+
+2021-04-14 Tassilo Horn <tsdh@gnu.org>
+
+ Don't move past % if the current command is a non-indent command
+
+ * latex.el (LaTeX-back-to-indentation): Don't move past % if the
+ current command is a non-indent command (bug#47757).
+
+2021-04-05 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Simplify conditionals evaluating to constant
+
+ * font-latex.el (font-latex-bold-face, font-latex-italic-face)
+ (font-latex-math-face, font-latex-string-face)
+ (font-latex-warning-face, font-latex-verbatim-face)
+ (font-latex-script-char-face):
+ All supported emacsens support :inherit attribute for face and
+ have `fixed-pitch' basic face.
+
+2021-04-05 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Resolve constant fboundp/boundp/featurep
+
+ * bib-cite.el (bib-apropos-keyword-at-point):
+ * context.el (ConTeXt-menu-update)
+ (ConTeXt-mode-common-initialization):
+ * latex.el (LaTeX-math-initialize)
+ (LaTeX-fill-move-to-break-point):
+ * multi-prompt.el (multi-prompt-next):
+ * preview.el.in (preview-transparent-border)
+ (preview-place-preview, preview-reinstate-preview):
+ * style/kpfonts.el (math):
+ * style/dk-bib.el (LaTeX-dk-bib-package-options):
+ * tex-buf.el (TeX-shell-command-option, TeX-check-engine):
+ * tex-fold.el (TeX-fold-item, TeX-fold-post-command):
+ * tex.el (TeX-source-specials-view-start-server)
+ (TeX-auto-private, TeX-style-private, TeX-complete-symbol)
+ (VirTeX-common-initialization, TeX-token-char)
+ (TeX-mode-specific-command-menu-entries)
+ (TeX-math-input-method-off, TeX-abbrev-mode-setup):
+ Simplify conditionals containing `fboundp', `boundp' and `featurep'
+ which evaluate to constant.
+
+ * latex.el (LaTeX-math-initialize, LaTeX-fold-math-spec-list):
+ Simplify by not using `decode-char'. Now that emacs is unicode based,
+ (decode-char 'ucs ARG) is trivial operation which just returns ARG.
+ Code point in ucs is the same as emacs char.
+
+ * multi-prompt (multi-prompt): Use #' to quote function names.
+ (multi-prompt-next-must-match): Use
+ `minibuffer-contents-no-properties' instead of
+ `buffer-substring-no-properties'.
+
+2021-04-03 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Remove compatibility code for Emacs<24.3
+
+ * latex.el (LaTeX-insert-left-brace):
+ * tex.el (TeX-insert-dollar):
+ Simplify the property `delete-selection-mode'.
+ (VirTeX-common-initialization): Use " " for `comment-padding'.
+ (TeX-math-input-method-off): Never use `inactivate-input-method'.
+
+2021-04-01 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Use #' instead of ' to quote function names
+
+ * bib-cite.el (bib-switch-to-buffer-function):
+ * latex.el (LaTeX-item-array, LaTeX-item-tabular*)
+ (LaTeX-math-insert-function, LaTeX-environment-menu-entry)
+ (LaTeX-environment-modify-menu-entry)
+ (LaTeX-section-menu-entry, LaTeX-indent-tabular)
+ * preview.el.in (preview-auto-reveal, preview-copy-mml)
+ (preview-copy-region-as-mml, preview-generate-preview):
+ * style/amsmath.el (LaTeX-item-equation-alignat):
+ * style/amsthm.el (LaTeX-amsthm-auto-cleanup)
+ ("amsthm"):
+ * style/biblatex.el ("biblatex"):
+ * style/dinbrief.el (LaTeX-dinbrief-style)
+ (LaTeX-dinbrief-env-recipient):
+ * style/exam.el ("exam"):
+ * style/jurabib.el ("jurabib"):
+ * style/letter.el (LaTeX-env-recipient):
+ * style/minted.el (LaTeX-minted-auto-cleanup):
+ * style/natbib.el ("natbib"):
+ * style/ntheorem.el (LaTeX-ntheorem-auto-cleanup)
+ ("ntheorem"):
+ * style/pythontex.el ("pythontex"):
+ * style/tcolorbox.el (LaTeX-tcolorbox-auto-cleanup):
+ * style/theorem.el (LaTeX-theorem-auto-cleanup)
+ ("theorem"):
+ * style/xparse.el (LaTeX-xparse-macro-parse):
+ * tests/latex/font-latex-test.el (font-latex-three-dollars)
+ (font-latex-extend-region-backwards-quotation)
+ (font-latex-general-fontification):
+ * tex-bar.el (TeX-bar-TeX-button-alist)
+ (TeX-bar-LaTeX-button-alist):
+ * tex-buf.el (TeX-command-master, TeX-view):
+ * tex-info.el (TeX-texinfo-mode):
+ * tex-fold.el (TeX-fold-post-command):
+ * tex-site.el.in (tex-site-unload-hook):
+ * tex.el (TeX-expand-list-builtin,toplevel)
+ (TeX-source-correlate-start-server-maybe)
+ (TeX-install-font-lock, TeX-command-current)
+ (TeX-command-select-master, TeX-command-select-buffer)
+ (TeX-command-select-region, TeX-newline-function)
+ (TeX-mode-specific-command-menu-entries)
+ (TeX-font-replace-function, TeX-insert-dollar):
+ * toolbar-x.el (toolbarx-default-toolbar-meaning-alist):
+ * doc/auctex.texi (Mathematics, Filling, Folding)
+ (Hacking the Parser):
+ * doc/tex-ref.tex:
+ Use #' instead of ' to quote function names.
+
+ tex.el (): Add `declare-function' for `gnuserv-start'.
+
+2021-04-01 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Use closure rather than hand-made lambda
+
+ * latex.el (LaTeX-math-initialize):
+ * style/kpfonts.el (math):
+ * toolbar-x.el (toolbarx-make-command):
+ Use closure rather than hand-made lambda form.
+
+2021-04-01 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Resolve unnecassary back quote
+
+ * font-latex.el (font-latex-user-keyword-classes,
+ (font-latex-slide-title-face):
+ * tex-fold.el (TeX-fold-macro-spec-list):
+ Turn unnecassary back quote into forward quote.
+ Fix typo in doc string.
+
+2021-04-01 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Remove xemacs compat elements
+
+ * tex-bar.el (TeX-bar-TeX-buttons, TeX-bar-LaTeX-buttons):
+ Don't use vector as element.
+ * toolbar-x.el (toolbarx-install-toolbar): Fix doc string.
+ Partially revert the comments removed recently which are still
+ valid.
+
+2021-03-31 Arash Esbati <arash@gnu.org>
+
+ Add new fontification test
+
+ * tests/latex/font-latex-test.el
+ (font-latex-general-fontification): Add test for general
+ fontification of vanilla LaTeX files.
+
+2021-03-31 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Use built-in functions for similar functions
+
+ * tex.el (TeX-split-string): Simplify by `split-string' and mark
+ obsolete.
+ (TeX-assoc): Simplify by `assoc-string' and mark obsolete.
+ * doc/changes.texi (News in 13.0): Add announce that these functions
+ are removed in future release.
+
+ * latex.el (LaTeX-split-bibs, LaTeX-auto-cleanup)
+ (LaTeX-209-to-2e):
+ * style/babel.el (LaTeX-babel-active-languages):
+ Replace `TeX-split-string' by `split-string'.
+
+ * tex-buf.el (TeX-command-query, TeX-printer-query): Replace
+ `TeX-assoc' by `assoc-string'.
+
+2021-03-30 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Some minor followups
+
+ * doc/tex-ref.tex: Fix markups as well as a few errors.
+ Remove mention about xemacs.
+ * tex.el (TeX-expand-list-builtin): Simplify.
+ * tests/make-test-deps.emacs-lisp: Enable lexical binding.
+ Update Copyright year.
+
+2021-03-29 Arash Esbati <arash@gnu.org>
+
+ Fix broken test
+
+ * tests/japanese/preview-latex.el: Mark
+ `japanese-TeX-error-messages' as special before dynamically
+ binding it.
+
+2021-03-28 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Fix doc string
+
+ * tex.el (TeX-expand-list): Delete obsolete comment.
+ State that variable name is allowed as the second element and how that
+ is treated.
+
+2021-03-27 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Reduce byte compiler warning
+
+ * tex.el (): Move `(eval-when-compile (require 'dbus))' before
+ `declare-function's of dbus related functions because otherwise they
+ seem ineffective.
+ Both NOERROR optional argument for `(require 'dbus)' and `(featurep
+ 'dbusbind)' test are removed deliberately because
+ (1) Now all supported emacsen have dbus.el.
+ (2) Even if emacs is built with configure option "--without-dbus", it
+ doesn't cause error to load dbus.el just to get macro definition
+ of `dbus-ignore-errors'.
+ This way, it works fine even when
+ (a) Emacs used for byte-compiling lacks D-Bus support.
+ (b) Emacs at run time has D-Bus support.
+ without relying on `TeX--if-macro-fboundp'.
+
+ (): Remove `declare-function' for `dbus-ignore-errors' because it's
+ now guaranteed that the macro is expanded away at byte compile time.
+ (): Remove `defvar' for `dbus-debug' because `dbus.el' provides a
+ suitable defvar.
+
+2021-03-27 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Reduce byte compiler warning
+
+ * tex.el (VirTeX-common-initialization,toplevel): Don't set obsolete
+ ispell variables `ispell-tex-p' and `ispell-tex-major-modes'. Neither
+ appears in NEWS.* nor source of emacs 24.3.
+ (TeX-run-ispell): Don't call obsolete functions `spell-buffer' and
+ `spell-region'.
+ (): Discard `declare-function' for `spell-buffer'.
+ Add `defvar' for `ispell-parser' to silence byte compiler.
+
+2021-03-27 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Use #' instead of ' to quote function where possible
+
+ * latex.el (LaTeX-babel-insert-hyphen):
+ * multi-prompt.el (multi-prompt-delete)
+ (multi-prompt-next-must-match):
+ * style/biblatex.el ("biblatex"):
+ * style/newfloat.el ("newfloat"):
+ * style/ntheorem.el ("ntheorem"):
+ * style/wrapfig.el ("wrapfig"):
+ * tex.el (TeX-electric-macro, TeX-insert-punctuation)
+ (TeX-run-ispell):
+ Use #' instead of ' to quote function where possible.
+
+2021-03-27 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Reduce byte compiler warning
+
+ * bib-cite.el (bib-display-or-find-label): Use `outline-show-entry'
+ instead of `show-entry' when possible. Wrap `show-entry' with
+ `with-no-warnings'.
+ (bib-get-citations, psg-list-env): Use `replace-regexp-in-string'
+ instead of `dired-replace-in-string'.
+ Use `split-string' instead of `dired-split' and `TeX-split-string'.
+ (dired-replace-in-string,TeX-split-string): Delete fallback
+ definitions.
+ (): Remove `declare-function' for `dired-replace-in-string' and
+ `dired-split'.
+
+2021-03-27 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Reduce byte compiler warning
+
+ * bib-cite.el (bib-bib-label-help-echo-format, bib-ext-list)
+ (bib-label-help-echo, bib-label-help):
+ Delete remaining XEmacs only functions and variables.
+ (bib-highlight-mouse): Don't touch removed variable.
+ (bib-etags-command, bib-etags-append-command, bib-display, bib-find)
+ (bib-find-next, bib-make-bibliography, bib-edit-citation)
+ (bib-get-bibliography):
+ Fix doc strings.
+
+2021-03-26 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ * tests/japanese/preview-latex.el: Make cleanup forms more robust
+
+2021-03-26 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Fix preamble cache
+
+ * preview.el.in (preview-cache-preamble): Remove trash left when
+ preferring closure over backquote+lambda.
+ (preview-gs-flag-error): Replace `str' with `string' for clarity;
+ `str' is used again in the clause just after the one in question.
+
+2021-03-26 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Fix preview-latex and regression tests
+
+ * preview.el.in (preview-query-replace-reveal): Add treatment for
+ nadvice functions.
+ (): Promote defvar's without value to proper defvar's to prevent
+ unexpected error when external program calls preview-latex functions.
+ * tests/latex/font-latex-test.el (): Add defvar for `font-lock-beg'
+ and `font-lock-end' to make dynamic binding at let-binding them.
+ * tests/tex/path-expansion.el: Add temporal defvar for dummy variable.
+ * tests/japanese/preview-latex.el
+ (japanese-preview-preserve-kanji-option2)
+ (japanese-preview-preserve-kanji-option3):
+ Make cleanup forms more robust.
+
+2021-03-25 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Fix font-latex.el
+
+ * font-latex.el (font-latex-make-built-in-keywords): Defer making
+ `font-latex-match-*' buffer-local so that it attains sane default
+ value.
+
+2021-03-25 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Fix void function error
+
+ * font-latex.el (font-latex-make-built-in-keywords): Bring back the
+ defun of `font-latex-match-*-make` before the defcustom of
+ `font-latex-match-*-keywords' because the latter depends on the
+ former through :set function.
+ Add defvar without value to suppress byte compile warnings for
+ `font-latex-match-*-keywords'.
+
+2021-03-25 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Fix documents
+
+ * doc/auctex.texi (LaTeX-amsmath-label): Add multline env. and remove
+ aligned env. since the former gets label while the latter doesn't get.
+ (Error overview): Delete spurious "on".
+ * doc/install.texi (Prerequisites): Raise minimum required version to
+ 24.3.
+ * doc/preview-faq.texi (Requirements): Add description about
+ availability on Windows.
+ Remove reference on table deleted before.
+ Adapt subsection title.
+
+2021-03-25 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Discard obsolete variables
+
+ According to NEWS.24, `font-lock-defaults-alist' was removed at
+ emacs 24.1.
+ `font-lock-mode-enable-list' doesn't exist in any NEWS.* nor emacs
+ 24.3 source. (Xemacs specific variable?)
+ According to loaddefs.el, `font-lock-auto-fontify' is xemacs variable
+ corresponding to `global-font-lock-mode'.
+
+ * tex-buf.el:
+ (): Remove defvar for `font-lock-mode-enable-list',
+ `font-lock-auto-fontify' and `font-lock-defaults-alist'.
+ (TeX-region-create): Don't let-bind obsolete variables.
+ Stop let-binding `font-lock-defaults' since it is buffer local
+ variable. It doesn't make sense to let-bind it before changing the
+ current buffer.
+ Set NOWARN argument to t in `find-file-noselect' to suppress "(New
+ file)" message in echo area.
+
+2021-03-25 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Fix merging
+
+ * tex-buf.el (TeX-region-update): Use `begin', not `TeX--begin'.
+ * tex.el (TeX--call-minor-mode): Rename from `tex--call-minor-mode' to
+ make prefix uniform in AUCTeX.
+ (): Add autoload declaration of `TeX-previous-error'.
+ (TeX-output-dir): Use #' instead of ' to quote function name.
+
+2021-03-23 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ Use UTF-8 for all ELisp files
+
+ UTF-8 is the default encoding used for ELisp files nowadays, so
+ convert the few remaining exceptions.
+
+ * tests/japanese/preview-latex.el:
+ * tex-jp.el: Remove `coding:` cookie and re-encode into utf-8.
+
+2021-03-23 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ Prefer lexical closures over hand-built lambda forms
+
+ now that we have lexical-binding, we can use closures, which have the
+ advantage over `(lambda ...) of allowing the byte-compiler to compile
+ the code, and also makes it possible to Edebug it.
+
+ * preview.el (preview-gs-close, preview-gs-flag-error)
+ (preview-scale-from-face, preview-gs-flag-error)
+ (preview-scale-from-face, preview-disabled-string)
+ (preview-buffer-restore, preview-place-preview)
+ (preview-reinstate-preview, preview-cache-preamble)
+ (preview-generate-preview, preview-report-bug):
+ * toolbar-x.el (toolbarx-emacs-mount-popup-menu):
+ * tex.el (TeX-mode-specific-command-menu): Replace `(lambda...) with closures.
+
+2021-03-23 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ Activate lexical-binding everywhere
+
+ Also, add an underscore at the beginning of unused arguments to
+ silence warnings.
+
+ * bib-cite.el (bib-highlight-mouse): Remove unused vars `extent`
+ and `local-extent-list`.
+
+ * latex.el (LaTeX-label): Remove unused var `label`.
+ (LaTeX-math-mode-map): Move before first use.
+
+ * preview.el.in (preview-start-dvipng, preview-start-dvips):
+ Remove unused var `file`.
+
+ * tex-fold.el (TeX-fold-macro-nth-arg): Remove unused var `close-string`.
+ (TeX-fold-hide-item): Remove unused var `face`.
+
+ * tex-font.el (tex-font-lock-keywords-2): Remove unused var `type`.
+
+ * tex-info.el (Texinfo-mark-section): Rework to avoid relying on
+ dynamic scoping to access local vars.
+
+ * toolbar-x.el (toolbarx-test-toolbar-type): Remove unused vars
+ `all-but-def-opts` and `all-opts`; remove always-t var `good-jobs`.
+
+2021-03-23 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ Expose the body of advice to the compiler
+
+ While at it, use `advice-add` when available.
+ We can drop `defadvice` completely when we bump the required version
+ to Emacs-24.4, or if/when we add `nadvice` as a required package.
+
+ * context.el (ConTeXt--invalidate-menu): New function.
+ (ConTeXt-add-environments): Advise with it.
+
+ * latex.el (LaTeX-add-bibliographies): Advise with `TeX-run-style-hooks`.
+ (LaTeX--invalidate-menus): New function.
+ (LaTeX-add-environments): Advise with it.
+
+ * preview.el.in (preview--open-for-replace): New function.
+ (replace-highlight): Advise with it.
+
+ * tex.el (tex--call-minor-mode): New function.
+ (hack-one-local-variable): Advise with it.
+
+2021-03-23 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ Miscellaneous minor changes
+
+ Move to the next line arguments that are easy to misread.
+ Fix some commenting style to obey `outline-minor-mode`.
+
+ * auctex.el.in: Don't require `cl-lib` since it's bundled with Emacs-24.3.
+
+ * README: Prefer HTTPS over HTTP/FTP for gnu.org sites.
+
+ * bib-cite.el (bib-find-next): Simplify.
+
+ * latex.el: Use a non-nil default value for `LaTeX-label-function`
+ so RefTeX can override it with `add-function`.
+ (LaTeX-label--default): New function, extracted from `LaTeX-label`.
+ (LaTeX-label): Use it.
+ (LaTeX-label-function): Use it as default value.
+
+ * toolbar-x.el (toolbarx-emacs-mount-popup-menu): Make the control&data
+ flow a bit simpler.
+ (toolbarx-test-image-type, toolbarx-process-dropdown-group):
+ Use `car-safe` and strength-reduce `eval` to `symbol-value`.
+
+ * style/dinbrief.el: Remove redundant comment.
+
+ * style/kpfonts.el (<toplevel>): Simplify.
+
+ * style/latexinfo.el (LaTeXinfo-mode-map): Move initialization into
+ the declaration.
+
+ * style/url.el (TeX-arg-urlstyle):
+ * style/prosper.el (LaTeX-prosper-slide-style-prompt):
+ Completion tables can be lists of strings.
+
+ * style/tikz.el (TeX-TikZ-single-macro-arg): Strength-reduce `eval` to
+ `apply`.
+
+ More misc changes
+
+2021-03-23 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ Remove some XEmacs and old-Emacs code
+
+ Remove uses of `easy-menu-add` and `easy-menu-remove` which have
+ always been no-op in Emacs and are declared obsolete in Emacs-28.
+
+ * bib-cite.el (bib-cite-setup-highlight-mouse-keymap): Remove Emacs-19 code.
+
+ * tex-buf.el (TeX-region-create): Remove use of variable
+ `font-lock-maximum-size` declared obsolete in Emacs-24.
+
+ * toolbar-x.el: Remove left over code from XEmacs compatibility.
+ Remove XEmacs-only `:toolbar` and `:dropdown-toolbar` as well
+ `:insert` which was only used to select Emacs-only or XEmacs-only entries.
+ (toolbarx-default-toolbar-meaning-alist): Replace all uses of
+ `[Emacs-only XEmacs-only]` vectors with the `Emacs-only` form.
+
+2021-03-23 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ Don't quote `lambda`
+
+ Remove some redundant `:group` arguments
+
+2021-03-23 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ Use #' rather than ' to quote functions
+
+ This helps track down typos, references to functions which don't exist
+ any more, as well as references to obsolete functions.
+
+2021-03-23 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * font-latex.el (font-latex-make-built-in-keywords): Make it a macro
+
+ This lets us expose the code it generates to the compiler without
+ having to call `byte-compile` explicitly. It also reduces the reliance
+ on `eval`, saving the souls of many kitten along the way.
+
+ (font-latex-built-in-keyword-classes): Define it at compile-time as well.
+ (font-latex-keywords-1, font-latex-keywords-2):
+ Move their definition to `font-latex-make-built-in-keywords`.
+ (font-latex-keyword-matcher): Define it at compile-time as well.
+ (font-latex--make-match-defun): Rename from `font-latex-make-match-defun`.
+ Define it at compile-time as well. Return the function definition (as
+ the docstring suggests) rather than evaluating it.
+ (font-latex-make-user-keywords): Adjust call to it.
+ (<toplevel>): Don't manually call the byte-compiler.
+
+2021-03-23 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * font-latex.el (font-latex-make-built-in-keywords): Reorder defs
+
+ Move definition of `font-latex-match-*-make` after the `defvar`s of
+ the vars it uses.
+
+2021-03-23 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Prepare for enabling lexical binding in preview.el.in
+
+ * tex-buf.el (TeX-region-update):
+ * preview.el.in (preview-region, preview-counters)
+ (preview--counter-information):
+ Turn a piece of advice for `TeX-region-create' into a helper function
+ `preview--counter-information', and invoke it at all calls of
+ `TeX-region-create'.
+ Use `buffer-substring-no-properties' instead of `buffer-substring' to
+ save memory usage a bit.
+ Simplify code by `TeX-current-offset'.
+
+ * tex-buf.el (TeX-region-create):
+ * preview.el.in (preview-preamble, preview--skip-preamble-region):
+ Turn another advice for `TeX-region-create' into a helper function
+ `preview--skip-preamble-region' and call it in `TeX-region-create'.
+
+ * tex-buf.el (TeX-region-extra): Move `defcustom' before its new first
+ usage.
+
+2021-03-18 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Discard `TeX-auto-update' to silence byte compiler
+
+ Now that we add `TeX-safe-auto-write' as local hook in
+ `write-contents-functions', we don't have to check every time whether
+ it is AUCTeX buffer.
+
+ * latex.el (BibTeX-auto-store):
+ * tex-info.el (TeX-texinfo-mode):
+ Don't set `TeX-auto-update'.
+ * tex.el (VirTeX-common-initialization): Don't set `TeX-auto-update'.
+ (TeX-safe-auto-write): Don't check whether it is AUCTeX buffer or
+ BibTeX buffer.
+ (TeX-update-style): Consult `major-mode' instead of `TeX-auto-update'
+ to check whether it is BibTeX buffer.
+ * bib-cite.el: Don't use `TeX-auto-update'. Consult `TeX-mode-p' to
+ check whether it is AUCTeX buffer.
+
+2021-03-17 Al Haji-Ali <a.hajiali@hw.ac.uk>
+
+ Implement the user option TeX-output-dir
+
+ * doc/auctex.texi (Control/Controlling the output): Document the
+ new TeX-output-dir user option.
+
+ * preview.el.in (preview-pdf2dsc-command): Replace concatenated output
+ file names with the new expansions.
+ (preview-LaTeX-command): Use an expansion for filename only.
+ (preview-create-subdirectory): Retrieve prv path from
+ TeX-active-master.
+ (preview-dump-replacements, preview-undump-replacements): Do not
+ discard --output-directory from the command arguments.
+ (preview-cache-preamble, preview-document): Call TeX-save-document
+ with file function instead of filename.
+ (TeX-inline-preview-internal): Retrieve prv path from TeX-master-file.
+
+ * tex-bar.el (TeX-bar-TeX-button-alist, TeX-bar-LaTeX-button-alist):
+ Call TeX-save-document with file function instead of filename.
+
+ * tex-buf.el (TeX-save-document, TeX-command-default)
+ (TeX-command-query): Change implementation to accept file function as
+ well as filename as argument.
+ (TeX--concat-ext): New helper function.
+ (TeX-command-master, TeX-command-region): Call TeX-command-query with
+ file function instead of filename.
+ (TeX-command): Update documentation.
+ (TeX-active-master-with-quotes): Add new argument for pre-processing
+ filename.
+ (TeX-command-sequence): Pass file function to TeX-command-default.
+ (TeX-run-TeX, TeX-run-index, TeX-LaTeX-sentinel): Call
+ TeX-active-master instead of concatenating extension to filename.
+ (TeX-region-file): Change to return paths in TeX-output-dir when
+ non-nil.
+
+ * tex.el (TeX-command-list, LaTeX-command-style): Change commands to
+ pass output-directory as an argument.
+ (TeX-print-command, TeX-printer-list): Use "%d" for dvi files.
+ (TeX-expand-list-builtin): Add expansions for output files and
+ directories.
+ (TeX-clean): Refactor to use the new TeX--clean-extensions-regexp.
+ (TeX-master-file): Change to return output files inside
+ TeX-output-file.
+ (TeX-output-dir): New user option.
+ (TeX--master-output-dir, TeX--output-dir-arg)
+ (TeX--clean-extensions-regexp): New function.
+ (TeX-split-string): Correct a spelling mistake.
+
+2021-03-06 Arash Esbati <arash@gnu.org>
+
+ Improve style/footmisc.el
+
+ * style/footmisc.el ("footmisc"): Add completion support for some
+ macros. Support special macros defined only with `splitrule'
+ option. Improve fontification.
+
+2021-03-03 Tassilo Horn <tsdh@gnu.org>
+
+ Use "wrap region or query for logo" also in \[hH]ologoVariant
+
+ * style/hologo.el: Use "wrap region or query for logo" also in
+ \[hH]ologoVariant.
+
+2021-03-03 Tassilo Horn <tsdh@gnu.org>
+
+ Fix wrapping of active region with \[Hh]ologo macros
+
+ * style/hologo.el (LaTeX-hologo--arg-use-region-or-query-logo-name):
+ Fix wrapping of logo in active region.
+
+2021-03-02 Tassilo Horn <tsdh@gnu.org>
+
+ Use active region if it is a logo name.
+
+ * style/hologo.el (LaTeX-hologo--arg-use-region-or-query-logo-name):
+ New function for the logo name arg of \hologo and \Hologo.
+
+2021-02-27 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Enable lexical binding in context-{en,nl}.el
+
+ * context-en.el:
+ * context-nl.el:
+ Enable lexical binding.
+ Update copyright year.
+
+2021-02-27 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Fix preview-cache-preamble after region typeset/preview
+
+ * preview.el.in (preview-cache-preamble): Move `setq' for
+ `TeX-current-process-region-p' before `let*' so that
+ `TeX-command-expand' in `let*' should work correctly.
+
+2021-02-26 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Enable lexical binding in plain-tex.el
+
+ * plain-tex.el: Enable lexical binding.
+ Update copyright year.
+
+2021-02-24 Arash Esbati <arash@gnu.org>
+
+ * style/geometry.el ("geometry"): Fontify \restoregeometry macro.
+
+2021-02-11 Brian Leung <leungbk@mailfence.com>
+
+ Deprioritize "\\.drv\\'" in auto-mode-alist
+
+ Guix and Nix have derivation files that look like
+ "/gnu/store/.*\\.drv". To avoid choosing the wrong mode, we prefer to
+ use more stringent regexps for those corresponding modes, and add the
+ less-stringent regexp here to the end of auto-mode-alist.
+
+ * latex.el (auto-mode-alist): Deprioritize "\\.drv\\'" in
+ auto-mode-alist.
+
+2021-02-09 Arash Esbati <arash@gnu.org>
+
+ Add new style/changes.el
+
+ * Makefile.in (STYLESRC): Add new style.
+
+ * style/changes.el: New file.
+
+2021-02-09 Arash Esbati <arash@gnu.org>
+
+ Add parsing support to style/comment.el
+
+ * style/comment.el (LaTeX-comment-include-exclude-regexp):
+ (LaTeX-comment-package-options): New variables.
+ (LaTeX-comment-auto-cleanup): New function for processing parsed
+ elements.
+
+2021-02-06 Arash Esbati <arash@gnu.org>
+
+ Add new style/footnotehyper.el
+
+ * Makefile.in (STYLESRC): Add new style.
+
+ * style/footnotehyper.el ("footnotehyper"): New file.
+
+2021-02-03 Arash Esbati <arash@gnu.org>
+
+ Add new style/truncate.el
+
+ * Makefile.in (STYLESRC): Add new style.
+
+ * style/truncate.el: New file.
+
+2021-01-27 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Remove eol format suffix from coding tag (bug#46117)
+
+ * doc/preview-dtxdoc.pl:
+ * tex-jp.el:
+ Remove "-unix" suffix from coding: tag for local git repos of git for
+ windows which enable autocrlf feature.
+ Update copyright year.
+
+2021-01-25 Arash Esbati <arash@gnu.org>
+
+ Document how to load AUCTeX from a local Git repo
+
+ * doc/install.texi (Advice for non-privileged users): Add
+ instructions to use AUCTeX directly out of a local Git repo.
+
+2021-01-24 Arash Esbati <arash@gnu.org>
+
+ Update style/bigdelim.el to package version 2.6
+
+ * style/bigdelim.el (TeX-arg-bigdelim-brace): Support completion
+ for more brace choices. Insert the choice in braces only if the
+ choice doesn't start with a backslash.
+ ("bigdelim"): Add fontification support.
+
+2021-01-21 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Prevent inadvertent destruction of list variable
+
+ * latex.el (LaTeX-common-initialization): Apply `copy-sequence' to the
+ last argument of `delete-dups'+`append'.
+
+2021-01-20 Arash Esbati <arash@gnu.org>
+
+ Update style/bigstrut.el to package version 2.6
+
+ * style/bigstrut.el ("bigstrut"): Remove non-existent macro
+ \bigstrutsetup.
+ Add \bigstrutjot to list of lengths.
+ Add fontification support for \bigstrut.
+ (TeX-arg-bigstrut): Fix prompt and the usage of
+ `TeX-argument-prompt'. Make the function more AUCTeX standard.
+
+2021-01-20 Arash Esbati <arash@gnu.org>
+
+ Update style/multirow.el to package version 2.6
+
+ * style/multirow.el ("multirow"): Improve arguments of \multirow
+ macro incl. fontification.
+ Add \bigstrutjot to list of lengths and not to macros.
+ Add \STneed macro depending on supertabular package option.
+ (LaTeX-multirow-package-options): Fix package options.
+
+2021-01-19 Arash Esbati <arash@gnu.org>
+
+ Update style/thmtools.el to package version 0.72
+
+ * style/thmtools.el (LaTeX-arg-thmtools-declaretheorem): Query for
+ the optional argument after the mandatory environment name.
+ (LaTeX-thmtools-env-label): Use `read-char-choice' instead of
+ `read-char'.
+ Set `help-form' in the let-binding.
+ (LaTeX-thmtools-listoftheorems-key-val): Update key=val's.
+ ("thmtools"): Fontify also the optional argument after the
+ mandatory one. Keep the old behavior for compatibility.
+
+2021-01-19 Tassilo Horn <tsdh@gnu.org>
+
+ Signal an error if auto-parser regexp has too many groups
+
+ In (pathological) documents which activate too many styles adding
+ entries to TeX-auto-regexp-list, the full regular expression built for
+ auto-parsing may contain more groups than emacs supports (which is 255
+ at this point of time). Therefore, signal a clear error in that case
+ instead of failing unpredictably by resultant problems.
+
+ Also, fix another spot where duplicate entries could have been added.
+
+ * tex.el (TeX-auto-parse-region): Signal an error if the generated
+ auto-parser regexp has more than 255 groups.
+ * latex.el (LaTeX-common-initialization): Ensure we don't add
+ duplicate entries to TeX-auto-full-regexp-list.
+
+2021-01-19 Tassilo Horn <tsdh@gnu.org>
+
+ Fix adding duplicates to TeX-auto-regexp-list
+
+ * tex.el (TeX-auto-add-regexp): Check membership with `member' instead
+ `memq' because the latter won't work with list-valued entries.
+
+2021-01-15 Arash Esbati <arash@gnu.org>
+
+ Delete kernel commands from styles
+
+ * style/scrbase.el ("scrbase"):
+ * style/scrpage2.el ("scrpage2"): Delete support for macros
+ provided by LaTeX kernel.
+
+2021-01-15 Arash Esbati <arash@gnu.org>
+
+ * style/extramarks.el ("extramarks"): Use reference keyword class.
+
+2021-01-13 Tassilo Horn <tsdh@gnu.org>
+
+ Fix use-package recipe in install docs (once again)
+
+ * doc/install.texi (Installation): Fix use-package recipe.
+
+2021-01-12 Arash Esbati <arash@gnu.org>
+
+ Add support for some missing kernel macros
+
+ * font-latex.el (font-latex-built-in-keyword-classes): Add various
+ \<sectioning>mark to "reference" class.
+
+ * latex.el (LaTeX-common-initialization): Add support for \...mark
+ macros.
+
+2021-01-12 Arash Esbati <arash@gnu.org>
+
+ Add new style/extramarks.el
+
+ * Makefile.in (STYLESRC): Add new style.
+
+ * style/extramarks.el: New file.
+
+2021-01-12 Arash Esbati <arash@gnu.org>
+
+ Update style/fancyhdr.el to package version 4.0
+
+ * style/fancyhdr.el (TeX-arg-fancyhdr-place): Rename from
+ `TeX-arg-fancyhdr-position'. Improve list of candidates for
+ completion.
+ (LaTeX-fancyhdr-fancypagestyle-regexp): New variable for parsing
+ user defined pagestyles.
+ ("fancyhdr"): Update for macros provided by package version 4.0.
+ Remove completion support for deprecated macros.
+ Remove macros provided by LaTeX kernel.
+ Improve fontification support.
+ (LaTeX-fancyhdr-package-options): Add new package options.
+
+2021-01-12 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Support page(box) options for dvipdfmx in graphicx.el
+
+ * style/graphicx.el (LaTeX-arg-graphicx-includegraphics-key-val):
+ Support page(box) options when the document is to be processed by
+ dvipdfmx.
+ (): Update copyright year.
+
+2021-01-10 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Fix off-by-one behavior of preview-latex (bug#39927)
+
+ * preview.el.in (preview-prepare-fast-conversion): Turn newline in
+ init string into space so that gs waits subsequent input. This newline
+ caused a spurious appearance of gs prompt "GS>".
+
+2021-01-10 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Don't use `add-to-list' on lexical vars
+
+ * tex.el (TeX-view-program-list, TeX-view-program-selection):
+ (TeX-add-to-alist):
+ Don't use `add-to-list' on lexical scope variables.
+ * tests/tex/utility.el (TeX-adding-to-alist): New test.
+ (): Enable lexical binding. Update copyright year.
+
+2021-01-09 Tassilo Horn <tsdh@gnu.org>
+
+ Fix mistake in use-package recipe
+
+ * doc/install.texi (Installation): Fix mistake in use-package recipe.
+
+2021-01-09 Tassilo Horn <tsdh@gnu.org>
+
+ Fix docstring too wide warnings
+
+ * bib-cite.el (bib-dos-or-os2-variable): Reword/reformat docstring so
+ that it's less than 80 chars wide.
+ * context-en.el (ConTeXt-project-structure-list-en)
+ (ConTeXt-section-block-list-en): Ditto.
+ * context-nl.el (ConTeXt-project-structure-list-nl)
+ (ConTeXt-section-block-list-nl): Ditto.
+ * context.el (ConTeXt-numbered-section-hook)
+ (ConTeXt-unnumbered-section-hook): Ditto.
+ * tex-buf.el (TeX-check-engine): Ditto.
+
+2021-01-09 Tassilo Horn <tsdh@gnu.org>
+
+ Add use-package recipe to installation info docs
+
+ * doc/install.texi (Installation): Add use-package recipe.
+
+2021-01-09 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Adapt preview.el.in for `TeX-translate-location-hook'
+
+ * preview.el.in (preview-parse-messages): Transport the values between
+ dynamic scope variables TeX-translate-location-* and corresponding
+ lexical scope variables around the call to
+ `TeX-translate-location-hook'.
+ Update copyright year.
+
+2021-01-08 Tassilo Horn <tsdh@gnu.org>
+
+ Fix error reported in <87o8hzto7r.fsf@fastmail.fm> on auctex@gnu.org
+
+ * style/polyglossia.el (LaTeX-polyglossia-active-languages): Don't use
+ add-to-list on lexical variable.
+
+2021-01-08 Tassilo Horn <tsdh@gnu.org>
+
+ Declare formerly free vars accessible in TeX-translate-location-hook
+
+ * tex-buf.el (TeX-translate-location-file,TeX-translate-location-offset)
+ (TeX-translate-location-line,TeX-translate-location-string)
+ (TeX-translate-location-error,TeX-translate-location-context): New
+ defvars.
+ * tex-buf.el (TeX-find-display-help): Bind them before calling
+ TeX-translate-location-hook.
+ (TeX-translate-location-hook): Adapt docstring.
+
+2021-01-08 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Use proper name rather than obsolete alias
+
+ * latex.el (LaTeX-insert-environment): Use
+ `LaTeX-after-insert-env-hook' instead of
+ `LaTeX-after-insert-env-hooks'.
+
+2021-01-07 Arash Esbati <arash@gnu.org>
+
+ Update style/eso-pic.el to package version 3.0a
+
+ * style/eso-pic.el ("eso-pic"): Don't run the style hook for
+ `atbegshi' since `eso-pic' doesn't rely on that package anymore.
+ (LaTeX-eso-pic-package-options-list): Update package options.
+
+2021-01-07 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Use `write-contents-functions' instead of `write-file-functions'
+
+ * tex.el (VirTeX-common-initialization):
+ * latex.el (BibTeX-auto-store):
+ Use `write-contents-functions' instead of `write-file-functions' to
+ store `TeX-safe-auto-write' because the latter is cleared by C-x
+ C-w (write-file).
+ * doc/changes.texi (News in 13.0): Mention the bug fix.
+
+2021-01-04 Tassilo Horn <tsdh@gnu.org>
+
+ Use frame-monitor-attributes for computing DPI if avail (bug#45596)
+
+ * preview.el.in (preview-get-dpi): New defun.
+ (preview-get-geometry): Use it for computing the screen DPI (bug#45596)
+
+2021-01-02 Arash Esbati <arash@gnu.org>
+
+ Remove support for \swshape
+
+ * style/baskervaldx.el ("baskervaldx"): Delete additions for
+ \swshape macro which is now part of LaTeX kernel and supported via
+ latex.el and font-latex.el.
+
+2020-12-29 Tassilo Horn <tsdh@gnu.org>
+
+ Convert tabs to spaces in all *.el.in files according to .dir-locals.el
+
+ Convert tabs to spaces in all lisp files according to .dir-locals.el
+
+2020-12-29 Tassilo Horn <tsdh@gnu.org>
+
+ URI-encode ? in filename to %3F (bug#45510)
+
+ * tex.el (TeX-evince-sync-view-1): Evince's dbus method wants an URI
+ where ? is properly encoded as %3F so do so (bug#45510).
+
+2020-12-29 Tassilo Horn <tsdh@gnu.org>
+
+ Untabify tex.el.
+
+2020-12-27 Arash Esbati <arash@gnu.org>
+
+ * .dir-locals.el: Add new file.
+
+2020-12-26 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Indent additional texts
+
+ * latex.el (LaTeX-insert-environment): Indent texts sent after the
+ inserted environment.
+
+2020-12-24 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Fixup dropping old implementations for viewers
+
+ * tex-buf.el (TeX-output-style-check): Remove function only useful for
+ old view implementations.
+
+2020-12-22 Arash Esbati <arash@gnu.org>
+
+ Lift required GNU Emacs version to 24.3
+
+ * RELEASE (Requirements): Mention that AUCTeX now requires at
+ least GNU Emacs 24.3.
+
+ * auctex.el.in: Lift GNU Emacs version to 24.3 and cl-lib to 1.0
+ for `Package-Requires' header.
+
+ * configure.ac (EMACS_CHECK_VERSION): Check for 24.3.
+
+ * doc/changes.texi: Add entry for required Emacs version.
+
+ * doc/faq.texi:
+ * doc/preview-faq.texi (Requirements): Change tested/required
+ Emacs version.
+
+ * tex-site.el.in:
+ * tex.el: Consider Emacs' minor version as well before reporting
+ an error.
+
+2020-12-22 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Delete bogus defvar
+
+ * tex-buf.el: Remove bogus defvar for `compilation-in-progress'. There
+ is a bare defvar for it already far above these lines.
+
+2020-12-22 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Drop old implementations for viewers
+
+ * tex.el (TeX-expand-list-builtin): Remove entries for "%v" and "%vv".
+ (TeX-view-style, TeX-output-view-style): Remove.
+ * doc/auctex.texi (Starting Viewers): Remove description about old
+ implementations.
+ * doc/changes.texi (News in 13.0): Mention the above changes.
+ * tex-mik.el: Remove entries for TeX-view-style and
+ TeX-output-view-style.
+
+2020-12-21 Tassilo Horn <tsdh@gnu.org>
+
+ Document lexical-binding changes in context.el.
+
+ * doc/changes.texi: Document lexical-binding changes in context.el.
+ * context.el: Don't reference non-existing ConTeXt-section-hook but
+ ConTeXt-numbered-section-hook.
+
+2020-12-18 Tassilo Horn <tsdh@gnu.org>
+
+ Document lexical binding changes.
+
+ * doc/changes.texi: Document lexical binding changes.
+
+2020-12-03 Tassilo Horn <tsdh@gnu.org>
+
+ Fix compile "Error: symbol-value cannot use lexical var ‘amsenv’"
+
+ * style/empheq.el (LaTeX-empheq-env): Don't call symbol-value on lexical
+ variable amsenv.
+
+2020-12-02 Arash Esbati <arash@gnu.org>
+
+ Add new style/scholax.el
+
+ * Makefile.in (STYLESRC): Add new style.
+
+ * style/scholax.el: New file.
+
+2020-11-10 Arash Esbati <arash@gnu.org>
+
+ Update style/subfiles.el to package version 2.1
+
+ * style/subfiles.el (LaTeX-subfiles-class-options): Use \' to
+ match the empty string at the end of the file extension.
+ ("subfiles"): Add support for \subfileinclude macro.
+
+2020-10-31 Tassilo Horn <tsdh@gnu.org>
+
+ Rename LaTeX-dialect to TeX-dialect.
+
+ * tex.el (TeX-dialect): Renamed from LaTeX-dialect and move from latex.el to
+ tex.el.
+ * doc/auctex.texi: Adapt docs.
+ * doc/changes.texi: Mention in changes for AUCTeX 13.
+ * style/*.el: Adapt all style files accordingly.
+
+2020-10-25 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Ensure the trailing slash for directory
+
+ * tex.el (TeX-parse-path, TeX-strip-extension): Apply
+ `file-name-as-directory' for `TeX-macro-global' and
+ `TeX-macro-private' in case their entries lack the trailing slash.
+ * tex-site.el.in (TeX-auto-global): Delete obsolete sentence.
+
+2020-10-24 Tassilo Horn <tsdh@gnu.org>
+
+ Delete unused ispell code from 1994.
+
+ * tex.el (ispell-tex-buffer-p): Delete defun.
+ (ispell-enable-tex-parser): Don't set undefined variable.
+
+2020-10-23 Arash Esbati <arash@gnu.org>
+
+ Put point after the graphic file argrument
+
+ * style/graphicx.el (LaTeX-includegraphics-extensions): Delimit
+ the regexp with \\' instead of $.
+ (LaTeX-arg-includegraphics): Rewrite the function in order to
+ comply with AUCTeX insertion hooks. Put point after the braced
+ group once the file argument in inserted into buffer.
+
+2020-10-23 Arash Esbati <arash@gnu.org>
+
+ Fix insertion of unnecessary backslash
+
+ * style/amsthm.el (LaTeX-arg-amsthm-fontdecl):
+ * style/ntheorem.el (LaTeX-arg-ntheorem-fontdecl): Don't insert a
+ backslash if the query for font declaration is left empty.
+
+2020-10-23 Arash Esbati <arash@gnu.org>
+
+ Add new style/appendix.el
+
+ * Makefile.in (STYLESRC): Add new style.
+
+ * style/appendix.el: New file.
+
+2020-10-23 Arash Esbati <arash@gnu.org>
+
+ * tex-ispell.el: Enable lexical-binding.
+
+2020-10-23 Arash Esbati <arash@gnu.org>
+
+ Improve style/amsthm.el
+
+ * style/amsthm.el (LaTeX-amsthm-theoremstyle-list): Delete
+ variable.
+ (LaTeX-arg-amsthm-fontdecl): Adjust `prompt' in
+ `TeX-argument-prompt' and don't use the 5. argument of
+ `TeX-completing-read-multiple'.
+ (LaTeX-amsthm-auto-cleanup): Remove the part for the deleted
+ `LaTeX-amsthm-theoremstyle-list'.
+ ("amsthm"): Use `LaTeX-add-amsthm-newtheoremstyles' for
+ predefined styles.
+ Adjust the hook for deleted variable.
+
+2020-10-23 Tassilo Horn <tsdh@gnu.org>
+
+ Enable lexical-binding for texmathp.el
+
+ * texmathp.el (texmathp-compile): Use `push' on places rather than `set' and
+ `symbol-value' on locals partly pointing to symbols naming globals.
+
+2020-10-23 Arash Esbati <arash@gnu.org>
+
+ * style/fancyvrb.el: Replace dynamically bound `optional'.
+
+2020-10-23 Arash Esbati <arash@gnu.org>
+
+ Update style/fancyvrb.el to package version 3.6
+
+ * style/fancyvrb.el (LaTeX-fancyvrb-key-val-options): Add the
+ "reflabel" key.
+ (LaTeX-fancyvrb-env-reflabel-key-val)
+ (LaTeX-fancyvrb-reftex-label-context-function): New functions.
+ (LaTeX-fancyvrb-arg-define-environment): Use
+ `LaTeX-fancyvrb-env-reflabel-key-val'.
+ (LaTeX-fancyvrb-key-val-label-regexp): New variable added to
+ AUCTeX parser.
+ ("fancyvrb"): Run `font-latex-set-syntactic-keywords' in the hook
+ if fontification is enabled.
+
+2020-10-23 Arash Esbati <arash@gnu.org>
+
+ Add missing argument to function body
+
+ * style/thmtools.el (LaTeX-thmtools-declaretheoremstyle-key-val)
+ (LaTeX-thmtools-declaretheorem-key-val): Add the missing `prompt'
+ argument.
+
+2020-10-23 Arash Esbati <arash@gnu.org>
+
+ Remove `TeX-arg-none'
+
+ * style/alphanum.el (TeX-arg-none): Remove function and use
+ `TeX-arg-literal' instead.
+
+2020-10-23 Arash Esbati <arash@gnu.org>
+
+ Adapt styles to lexical-binding
+
+ * style/arabxetex.el ("arabxetex"):
+ * style/babel.el ("babel"):
+ * style/doc.el ("doc"):
+ * style/enumitem.el ("enumitem"):
+ * style/exam.el ("exam"):
+ * style/floatrow.el ("floatrow"):
+ * style/fontspec.el ("fontspec"):
+ * style/graphicx.el ("graphicx"):
+ * style/hologo.el ("hologo"):
+ * style/ltugboat.el ("ltugboat"):
+ * style/mdframed.el ("mdframed"):
+ * style/menukeys.el ("menukeys"):
+ * style/moodle.el ("moodle"):
+ * style/natbib.el ("natbib"):
+ * style/ntheorem.el ("ntheorem"):
+ * style/paracol.el ("paracol"):
+ * style/pythontex.el ("pythontex"):
+ * style/splitidx.el ("splitidx"):
+ * style/tcolorbox.el ("tcolorbox"):
+ * style/tex-live.el ("tex-live"):
+ * style/thmtools.el ("thmtools"):
+ * style/titleps.el ("titleps"):
+ * style/titlesec.el ("titlesec"):
+ * style/titletoc.el ("titletoc"):
+ * style/xcolor.el ("xcolor"): Replace occurrences of dynamically
+ bound `optional' with constant nil or t.
+
+ * style/harvard.el ("harvard"): Remove unnecessary quoting of
+ `lambda'.
+
+ * style/xcolor.el (LaTeX-xcolor-color-models): Remove unnecessary
+ `symbol-value'.
+
+2020-10-23 Arash Esbati <arash@gnu.org>
+
+ Enable lexical-binding in all style files.
+
+2020-10-23 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Use declared dynamic variable in tex-jp
+
+ * tex-jp.el (TeX-expand-list-builtin): Replace former dynamic var
+ `pos' with `TeX-expand-pos'.
+ (): Enable lexical binding.
+ Move `coding' tag to the File Local Variable section at EOF.
+ Update copyright year.
+
+2020-10-23 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Simplify nested `let's
+
+ * tex-buf.el (TeX-active-master-with-quotes): Simplify nested `let's
+ into singe one.
+
+2020-10-23 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Make "%o" compatible again with file name with spaces
+
+ * tex-buf.el (TeX-active-master-with-quotes): Rename from
+ `TeX--master-or-region-file-with-extra-quotes' and make public.
+ Incorporate adjust of `TeX-expand-pos' from `TeX-command-expand'.
+ (TeX-command-expand): Simplify.
+ * tex.el (TeX-expand-list-builtin): Use renamed function instead of
+ `TeX-active-master'.
+ * tests/tex/command-expansion.el (TeX-command-expand-skip-file-name):
+ Include "%o" in test.
+ (TeX-command-expand-file-name-with-spaces): New test.
+ (TeX-command-detokenize): Add case where `TeX-master' has space.
+
+2020-10-23 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Arrange test condition
+
+ * latex.el (LaTeX-env-args): Just test nil or not since
+ `TeX-exit-mark' is now always bound.
+
+2020-10-23 Tassilo Horn <tsdh@gnu.org>
+
+ Enable lexical-binding for AUCTeX core files
+
+ * tex.el: Enable lexical-binding.
+ (TeX-command-text,TeX-command-pos): Moved from tex-buf.el.
+ (TeX-expand-pos,TeX-expand-command): New defvars used in place of `pos' and
+ `command' in TeX-expand-list{,-builtin} entries.
+ (TeX-expand-list-builtin): Use TeX-expand-pos and TeX-expand-command (instead
+ of pos and command). Use TeX-active-master instead of formerly dynamically
+ bound `file'.
+ (TeX-view-command-raw): Adapt to TeX-command-expand signature change.
+ (TeX-exit-mark): New defvar.
+ (TeX-parse-macro): Adapt docstring; bind and use TeX-exit-mark instead of
+ exit-mark.
+ (TeX-last-optional-rejected): New defvar.
+ (TeX-parse-arguments): Use TeX-last-optional-rejected instead of
+ last-optional-rejected.
+ (TeX-parse-argument): Use TeX-exit-mark instead of exit-mark.
+ (TeX-argument-insert): Use TeX-exit-mark and TeX-last-optional-rejected instead
+ of the former unprefixed variables.
+ (TeX-safe-auto-write,TeX-auto-untabify,TeX-auto-parse-region,TeX-verbatim-p)
+ (TeX-submit-bug-report): Prefix unused var with _.
+ (TeX-mode-specific-command-menu-entries): Don't bind `file'.
+ (TeX-doc): Remove unused var `doc'.
+ (TeX-run-ispell): Remove unused var `found'.
+ (TeX-ispell-document): Use `when' instead of `if' with `progn'.
+ * tex-buf.el: Enable lexical-binding.
+ (TeX-command-expand): Remove file argument but use TeX-active-master instead.
+ (TeX-command): Rename file argument to file-fn; adapt to TeX-command-expand
+ signature change.
+ (TeX--master-or-region-file-with-extra-quotes): Remove file-fn argument.
+ * latex.el: Enable lexical-binding.
+ (LaTeX-title,LaTeX-name,LaTeX-level,LaTeX-done-mark,LaTeX-toc): New defvars.
+ (LaTeX-section): Bind them.
+ (LaTeX-section-hook): Adapt docstring to the new defvars.
+ (LaTeX-section-section): Ditto, and use the new defvars.
+ (LaTeX-section-heading,LaTeX-section-title,LaTeX-section-toc,LaTeX-section-label):
+ Use the new defvars.
+ (LaTeX-env-args): Use TeX-exit-mark instead of exit-mark.
+ (TeX-arg-index): Prefix unused argument args with _.
+ (TeX-arg-cite): Prefix unused argument definition with _.
+ (LaTeX-mark-environment,LaTeX-forward-paragraph,LaTeX-backward-paragraph)
+ (LaTeX-narrow-to-environment): Use _ for unused dotimes counter variable.
+ (LaTeX-check-insert-macro-default-style): Use TeX-last-optional-rejected
+ instead of last-optional-rejected.
+ * context.el: Enable lexical-binding.
+ (ConTeXt-title,ConTeXt-name,ConTeXt-level,ConTeXt-done-mark,ConTeXt-reference):
+ New defvars.
+ (ConTeXt-section): Bind them.
+ (ConTeXt-numbered-section-hook): Adapt docstring to the new defvars.
+ (ConTeXt-unnumbered-section-hook): Ditto.
+ (ConTeXt-numbered-section-heading,ConTeXt-unnumbered-section-heading)
+ (ConTeXt-section-section,ConTeXt-section-ref): Use the new defvars.
+ * preview.el.in (preview-generate-preview): Remove region-p argument.
+ (preview-start-dvipng,preview-start-dvips)
+ (preview-cache-preamble): Adapt to TeX-command-expand and
+ preview-generate-preview signature change.
+ (preview-region, preview-document): Ditto.
+ * style/bicaption.el (LaTeX-arg-bicaption-bicaption): Use
+ TeX-last-optional-rejected instead of last-optional-rejected.
+ * style/booktabs.el ("booktabs"): Menion TeX-last-optional-rejected in comment.
+ * style/caption.el (LaTeX-arg-caption-captionbox): Use
+ TeX-last-optional-rejected instead of last-optional-rejected.
+ * style/color.el (TeX-arg-color,(TeX-arg-color-fcolorbox): Use
+ TeX-last-optional-rejected instead of last-optional-rejected.
+ * style/exam.el: Enable lexical-binding.
+ (LaTeX-exam-insert-item): Use LaTeX-current-environment instead of dynamically
+ bound `environment'.
+ * style/floatrow.el (LaTeX-floatrow-arg-floatbox): Use
+ TeX-last-optional-rejected instead of last-optional-rejected.
+ * style/ifluatex.el (LaTeX-ifluatex-set-TeX-exit-mark): Use TeX-exit-mark
+ instead of exit-mark.
+ * style/xcolor.el (TeX-arg-xcolor-definecolor,TeX-arg-xcolor-definecolorset):
+ (TeX-arg-xcolor,TeX-arg-xcolor-fcolorbox): Use TeX-last-optional-rejected
+ instead of last-optional-rejected.
+ * tests/japanese/preview-latex.el (japanese-preview-preserve-kanji-option2)
+ (japanese-preview-preserve-kanji-option3): Adapt to TeX-command-expand
+ signature change.
+ * tests/tex/command-expansion.el (TeX-command-expansion)
+ (TeX-command-expansion-errors,TeX-command-detokenize)
+ (TeX-command-expand-skip-file-name,TeX-command-expand-active-master): Adapt to
+ TeX-command-expand signature change.
+ * doc/auctex.texi (Sectioning): Describe LaTeX-level, LaTeX-name, LaTeX-title,
+ LaTeX-toc, and LaTeX-done-mark instead of the former unprefixed vars.
+
+2020-10-18 Mos¨ Giordano <mose@gnu.org>
+
+ * Version 12.3 released.
+
+2020-10-18 Mos¨ Giordano <mose@gnu.org>
+
+ Mark default argument to `LaTeX-arg-polyglossia-lang' as optional
+
+ * style/polyglossia.el (LaTeX-arg-polyglossia-lang): The `default' argument
+ isn't currently used, mark it as ignored.
+
+2020-10-10 Mos¨ Giordano <mose@gnu.org>
+
+ Prepare for upcoming release
+
+2020-08-28 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Simplify mode line for emacs 27
+
+ * tex-buf.el: Don't add an entry in `minor-mode-alist' for
+ `compilation-in-progress'. In emacs 27, compile.el adds a similar
+ entry in `mode-line-modes'.
+
+2020-08-17 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Fix document
+
+ * doc/auctex.texi (Fontification of math): Delete incorrect
+ description.
+
+2020-08-02 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Restore all math environments in texmathp.el
+
+ * texmathp.el (texmathp-tex-commands-default): Restore all math
+ environments from style files. The idea to update t-t-c-d by style
+ files afterwards fails when texmathp is used solely in external
+ packages like org mode.
+ * style/amsmath.el:
+ * style/breqn.el:
+ * style/empheq.el:
+ * style/mathtools.el:
+ Adjust in accord with the above change.
+ * doc/changes.texi: Delete relevant entry.
+
+2020-08-02 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Prepare for pdf output for PSTricks documents
+
+ * style/pstricks.el ("pstricks"): Prepare for pdf output rather than
+ turn off PDF mode.
+ (): Update copyright year.
+ * doc/changes.texi: Mention above change.
+
+2020-07-28 Arash Esbati <arash@gnu.org>
+
+ Add an extra check for tex-buf.el in some style hooks
+
+ * style/arabxetex.el ("arabxetex"):
+ * style/bidi.el ("bidi"):
+ * style/fontspec.el ("fontspec"):
+ * style/polyglossia.el ("polyglossia"): Check if "tex-buf.el" is
+ loaded and require it otherwise. `TeX-check-engine-add-engines'
+ is defined in "tex-buf.el" and the hook would exit too early if
+ the library isn't loaded.
+
+2020-07-24 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Merge prv-emacs.el into preview.el.in
+
+ * preview.el.in: Merge all contents of prv-emacs.el.
+ * prv-emacs.el: Delete.
+ * Makefile.in:
+ * configure.ac:
+ Drop prv-emacs.el.
+
+2020-07-22 Arash Esbati <arash@gnu.org>
+
+ Treat \choice like \item
+
+ * style/exam.el ("exam"): Add "choice" to `LaTeX-item-regexp'.
+ Simplify regexp for "subpart" and "subsubpart".
+
+2020-07-19 Arash Esbati <arash@gnu.org>
+
+ Update style/csquotes.el to package version 5.2j
+
+ * style/csquotes.el: Track changes in package version 5.2j.
+ Remove deprecated macros, improve query for language argument.
+ Add keyval query of package options.
+ (LaTeX-csquotes-insert-environment): Remove function and use
+ `LaTeX-env-args' instead.
+
+2020-07-13 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Add support of \tag for texmathp
+
+ * style/amsmath.el (): Add entries for \tag and \tag* to
+ `texmathp-tex-commands-default'.
+
+2020-07-11 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Cater for case where fontification match goes over limit
+
+ * font-latex.el (font-latex-match-quotation): Cater for case
+ where fontification match goes over limit.
+ Drop `string-make-multibyte'. It's no longer necessary because
+ all supported emacsen handle multibyte strings well enough.
+ (font-latex--updated-region-end): Adjust comments.
+
+2020-07-11 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Fix previous commit and add new test
+
+ * font-latex.el (font-latex-extend-region-backwards-quotation): Move
+ the point back to the correct position when the inner loop search
+ fails.
+ * tests/latex/font-latex-test.el
+ (font-latex-extend-region-backwards-quotation): New test.
+
+2020-07-11 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Don't extend font lock region too eagerly (bug#42267)
+
+ * font-latex.el (font-latex-extend-region-backwards-quotation): If
+ there is no matching open quote, don't extend the font lock region.
+
+2020-07-03 Arash Esbati <arash@gnu.org>
+
+ Add short verb characters to `ispell-tex-skip-alist'
+
+ * style/shortvrb.el ("shortvrb"): Add entries in
+ `LaTeX-shortvrb-chars to `ispell-tex-skip-alist' in order to skip
+ verbatim content during spell checking.
+
+2020-07-03 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Ajust document
+
+ * doc/preview-latex.texi (Key bindings and user-level lisp functions):
+ * preview.el.in (preview-at-point):
+ Delete mention about zmacs-regions.
+ * doc/auctex.texi (Known problems): Delete comment which is no longer
+ valid because the current highlighting of $...$ is search-based, not
+ syntactic.
+
+2020-07-01 Arash Esbati <arash@gnu.org>
+
+ Support \newblock macro
+
+ * latex.el (LaTeX-common-initialization): Add entry for \newblock
+ marco.
+ Add "bibindent" to list of known lengths.
+ (LaTeX-paragraph-commands-internal): Add "newblock".
+
+2020-06-30 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Get rid of gabage in generated texi file
+
+ * doc/preview-dtxdoc.pl (MAIN): Add rule to delete dtx comment ^^A.
+ (): Add coding tag. Update copyright year.
+
+2020-06-28 Arash Esbati <arash@gnu.org>
+
+ Update style/xparse.el to package dated 2020-03-06
+
+ * style/xparse.el: Update style to package version 2020-03-06
+ incl. auto-parsing capabilities. Fix fontification of provided
+ macros.
+
+2020-06-27 Tassilo Horn <tsdh@gnu.org>
+
+ Document deprecation of font-latex-update-font-lock
+
+ * doc/changes.texi: Document deprecation of font-latex-update-font-lock.
+
+2020-06-27 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Accommodate preview.dtx to new font-latex.el
+
+ * latex/preview.dtx: Add "^^A$" so that |$| doesn't mess up the
+ highlighting of TeX codes at later part.
+ * doc/auctex.texi: Add mention about usage of "^^A$" in docTeX
+ documents.
+
+2020-06-19 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Add TODO item about remove-style feature
+
+ * doc/todo.texi (Mid-term Goals): Add an item about remove-style
+ feature.
+ * doc/changes.texi (News in 12.3): Fix typo.
+
+2020-06-18 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Improve conformance to code conventions, and documents
+
+ * font-latex.el (font-latex-update-math-env): Rename by changing "--"
+ to "-" in function name.
+ Don't alter user customize option `font-latex-math-environments'. In
+ order to achieve that, use always `texmathp-tex-commands1' for
+ input and omit argument LIST.
+ * style/empheq.el: Arrange in accord with the above changes.
+ * style/amsmath.el:
+ * style/breqn.el:
+ * style/mathtools.el:
+ Arrange in accord with the above changes.
+ Use `cl-pushnew' instead of `add-to-list' and require cl-lib in order
+ to do that.
+ * doc/changes.texi (News in 12.3):
+ * texmathp.el:
+ Mention change about support for AMS-LaTeX and packages mathtools,
+ empheq and breqn.
+
+2020-06-17 Tassilo Horn <tsdh@gnu.org>
+
+ Don't call TeX-remove-style in TeX-arg-document.
+
+ * latex.el (TeX-arg-document): Don't call TeX-arg-document.
+
+2020-06-17 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Use constant regexp to fontify math environments
+
+ * font-latex.el (font-latex--match-math-envII-regexp): New internal
+ variable to store regexp to search math environments such as
+ "equation".
+ (font-latex-match-math-envII): Use it.
+ (font-latex--update-math-env): New function to update
+ `font-latex-math-environments' and build
+ `font-latex--match-math-envII-regexp' from it.
+ (font-latex-math-environments-from-texmathp): Remove.
+ (font-latex-math-environments): Change default value to nil and
+ initialize at top level by new function.
+ * style/breqn.el:
+ * style/empheq.el:
+ * style/mathtools.el:
+ Arrange in accord with the above change.
+ * style/amsmath.el:
+ Arrange in accord with the above change.
+ Add fontification rule for \boxed{}.
+ * doc/auctex.texi:
+ Add instruction to convert customization.
+
+2020-06-16 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Fix regression of font lock
+
+ * font-latex.el (font-latex-match-math-envII): Store the position of
+ "\begin{foo}" as (match-beginnig 0) so that `font-lock-multiline' text
+ property covers it. Store the range of math expression as
+ subexpression 1.
+ (font-latex-make-user-keywords): Arrange in accord with the above
+ change.
+
+2020-06-15 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Fix typos
+
+ * doc/changes.texi (News in 12.3):
+ * tests/latex/fontification-general.tex (AUCTeX fontification):
+ Fix typos.
+
+2020-06-15 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Update documents
+
+ * doc/auctex.texi (Fontification of math):
+ * doc/changes.texi (News in 12.3):
+ * font-latex.el (font-latex-math-environments):
+ Document that variable `font-latex-math-environments' is no longer
+ suitable for personal customization and recommend to use
+ `texmathp-tex-commands' instead.
+ * tests/latex/fontification-general.tex: Mention new function
+ `font-latex-extend-region-backwards-math'
+
+2020-06-15 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ * texmathp.el: Add comment about additional bug.
+
+2020-06-14 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Recover compatibility for older emacsen
+
+ * font-latex.el (font-latex-fontify-region): Add check for return
+ value from `font-lock-default-fontify-region'.
+
+2020-06-14 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Reconsider region extension
+
+ * font-latex.el (font-latex-fontify-region): Consider cases that
+ `font-lock-extend-region-functions' extends the region inside
+ `font-lock-default-fontify-region'. Use the return value from it to
+ construct the correct region.
+ (font-latex-match-math-env):
+ (font-latex-match-math-envII):
+ (font-latex-match-dollar-math):
+ Raise `font-latex--updated-region-end' to at least LIMIT when
+ necessary.
+ (font-latex--updated-region-end): Fix comments.
+
+2020-06-14 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Delete overhead in extending font lock range of math expression
+
+ * font-latex.el (font-latex-math-environments-from-texmathp): New
+ helper function.
+ (font-latex-math-environments): Take default value using the above
+ function.
+ (font-latex-extend-region-backwards-math): Rename from
+ `font-latex-extend-region-backwards-dollar-math' and include the
+ functionality of `font-latex-extend-region-backwards-math-env' and
+ `font-latex-extend-region-backwards-math-envII'.
+ (font-latex-extend-region-backwards-math-env):
+ (font-latex-extend-region-backwards-math-envII):
+ Remove.
+ (font-latex-setup): Simplify according to the above change.
+ * texmathp.el (texmathp-tex-commands-default): Move entries not in
+ standard LaTeX to the respective style files.
+ * style/amsmath.el ():
+ * style/breqn.el ():
+ * style/empheq.el ():
+ * style/mathtools.el ():
+ Add package specific entries to `texmathp-tex-commands-default' and
+ take additions for `font-latex-math-environments' from it rather than
+ adding constant entries.
+
+2020-06-14 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Update region extension in font-latex.el
+
+ * font-latex.el (font-latex--updated-region-end): New variable to
+ record the end of the region that fontification actually took place.
+ (font-latex-fontify-region): New function to utilize it.
+ (font-latex-setup): Assign it to `font-lock-fontify-region-function'.
+ (font-latex-match-math-env): Search closing tag beyond limit honoring
+ `font-latex-multiline-boundary'.
+ Use new variable.
+ (font-latex-match-math-envII):
+ (font-latex-match-dollar-math):
+ Use new variable.
+
+2020-06-14 Uwe Brauer <oub@mat.ucm.es>
+
+ Add support for algopseudocde style
+
+ * Makefile.in (STYLESRC): Add algopseudocde style
+
+ * style/algpseudocode.el: Add support for the algopseudocde (algorithmcx)
+ style
+
+2020-06-14 Uwe Brauer <oub@mat.ucm.es>
+
+ Add support for algorithm style
+
+ * Makefile.in (STYLESRC): Add algorithm style
+
+ * style/algorithm.el: Add support for the algorithm style
+
+2020-06-13 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Ignore 3 consective $'s properly
+
+ * font-latex.el (font-latex-match-dollar-math): Ignore 3 or more
+ consecutive $'s when searching opening of $...$ or $$...$$, instead of
+ stopping to return nil.
+ * tests/latex/font-latex-test.el: New test.
+
+2020-06-11 Tassilo Horn <tsdh@gnu.org>
+
+ Trigger refontification in font-latex-add-to-syntax-alist.
+
+ * font-latex.el (font-latex-add-to-syntax-alist): Trigger refontification.
+
+2020-06-11 Tassilo Horn <tsdh@gnu.org>
+
+ Omit hard font-lock reset also in font-latex-add-to-syntax-alist
+
+ * font-latex.el (font-latex-add-to-syntax-alist): Don't nilify
+ font-lock-set-defaults but adjust font-lock-syntax-table directly as suggested
+ by Ikumi Keita on auctex-devel.
+
+2020-06-10 Tassilo Horn <tsdh@gnu.org>
+
+ Obsolete font-latex-update-font-lock (bug#37945)
+
+ * font-latex.el (font-latex-add-keywords): Don't call
+ font-latex-update-font-lock but font-lock-flush.
+ (font-latex-update-font-lock): Make obsolete and emit a warning when called.
+ * style/alltt.el: Adapt, i.e., don't call font-latex-update-font-lock but maybe
+ font-latex-set-syntactic-keywords.
+ * style/beamer.el: Dito.
+ * style/comment.el: Dito.
+ * style/expl3.el: Dito.
+ * style/fancyhdr.el: Dito.
+ * style/fancyvrb.el: Dito.
+ * style/fvextra.el: Dito.
+ * style/hyperref.el: Dito.
+ * style/listings.el: Dito.
+ * style/ltxguide.el: Dito.
+ * style/minted.el: Dito.
+ * style/pythontex.el: Dito.
+ * style/revtex4-2.el: Dito.
+ * style/tex-live.el: Dito.
+ * style/url.el: Dito.
+ * style/verbatim.el: Dito.
+
+2020-06-09 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ * doc/changes.texi: Delete words inappropriate for raw file.
+
+2020-06-08 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Complement document
+
+ * doc/changes.texi: Mention workaround for new incompatibility.
+ * doc/auctex.texi: Add missing entry to TOC.
+
+2020-06-07 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ * doc/changes.texi (News in 12.3): Add news about fix of bug#33139.
+
+2020-06-02 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Use search-based fontification for $...$ (bug#33139)
+
+ It turned out that using "text quotes" syntax for "$" in
+ `font-lock-syntax-table' sometimes leads to scrambled fontification
+ about in-line math $...$ (bug#33139). That's because conflicting
+ results of `syntax-ppss' are compiled into syntax-ppss cache as
+ explained in:
+ https://lists.gnu.org/archive/html/emacs-devel/2020-05/msg02725.html
+ We, Keita, Tassilo and Arash discussed this issue and decided to use
+ search-based fontification for $...$ since syntactic fontification for
+ $...$ doesn't seem prospective with regard to this bug.
+
+ * font-latex.el (font-latex-match-dollar-math):
+ (font-latex-find-dollar-math,font-latex-extend-region-backwards-dollar-math):
+ New functions to do search-based fontification for $...$.
+ Fontification facility for $$...$$ is merged into them.
+ (font-latex-make-user-keywords,font-latex-setup): Use new functions.
+ (font-latex-syntax-alist): Don't change syntax of "$" during font lock.
+ (font-latex-syntactic-face-function): Simplify.
+
+2020-05-31 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Simplify regexp in texmathp.el
+
+ * texmathp.el (texmathp-compile): Simplify regexp. In [^...] backslash
+ and dollar have no special meaning so they can (should) be raw.
+
+2020-05-28 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ Don't make TeX-remove-style-hook buffer-local.
+
+ * tex.el (TeX-remove-style-hook): Not buffer-local anymore.
+
+2020-05-28 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Fix false negative of texmathp (bug#41559)
+
+ * texmathp.el (texmathp-compile): Fix `texmathp-onoff-regexp' to allow
+ switch to begin at (point-min).
+ Use `regexp-opt' instead of `mapconcat'+`regexp-quote'.
+ (texmathp): Use `>=' instead of `>' so that match is updated even when
+ arg-on or sw-on begins at (point-min).
+ * tests/latex/texmathp-test.el: New test.
+
+2020-05-25 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Fix regression of unfontify-region
+
+ * font-latex.el (font-latex-unfontify-region): Restore `invisible' as
+ removed property. My commit on Jan 7 was partially wrong. It kept "^"
+ and "_" invisible even when commented out if
+ `font-latex-fontify-script' is `invisible'.
+
+2020-05-22 Arash Esbati <arash@gnu.org>
+
+ Fontify content of comment environment
+
+ * style/verbatim.el ("verbatim"): Add fontification support for
+ comment environment. Delete unnecessary `function' in the hook.
+
+2020-05-17 Tassilo Horn <tsdh@gnu.org>
+
+ Empty commit fixing ChangeLog.
+
+ * font-latex.el (font-latex-syntax-alist): This variable has not been deleted
+ as suggested by the previous entry.
+ (font-latex-extend-region-functions): Delete defvar. Now set via
+ `font-lock-defaults'.
+
+2020-05-17 Tassilo Horn <tsdh@gnu.org>
+
+ Modernize font-latex.el
+
+ - Use a syntax-propertize-function.
+ - Use normal font-lock-extend-region-functions.
+ - Add a function to syntax-propertize-extend-region-functions.
+ - Use lexical-binding.
+
+ * font-latex.el: Use lexical-binding.
+ (font-latex-syntax-alist): Delete defvar. Now set via `font-lock-defaults'.
+ (font-latex-syntax-propertize-function): New defun being set as
+ `syntax-propertize-function'.
+ (font-latex-extend-region-backwards-command-with-args,
+ font-latex-extend-region-backwards-command-in-braces,
+ font-latex-extend-region-backwards-math-env,
+ font-latex-extend-region-backwards-math-envII,
+ font-latex-extend-region-backwards-quotation): Convert to normal
+ `font-lock-extend-region-functions'.
+ (font-latex-sp-extend-region-backwards-verb-env): New defun used in
+ `syntax-propertize-extend-region-functions'.
+ (font-latex-setup): Set `font-lock-extend-region-functions',
+ `syntax-propertize-extend-region-functions', and `syntax-propertize-function'
+ via `font-lock-defaults'.
+ (font-latex-jit-lock-force-redisplay, font-latex-fontify-region): Delete
+ defuns.
+ (font-latex-unfontify-region): Remove unused lexical variable.
+ (font-latex-script-char): Mark argument as ignored to silence the
+ byte-compiler.
+
+2020-05-09 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Update all mode lines
+
+ * tex-buf.el (TeX-command-sentinel): Supply argument t for
+ `force-mode-line-update' and discard useless `with-current-buffer'.
+ * preview.el.in: Replace all
+ `(set-buffer-modified-p (buffer-modified-p))' with
+ `(force-mode-line-update)' and remove `sit-for' calls accompanying
+ them.
+
+2020-04-20 Arash Esbati <arash@gnu.org>
+
+ Update style/breqn.el to package version 0.98j
+
+ * style/breqn.el (LaTeX-breqn-key-val-options): Delete no-op keys
+ "background" and "color".
+ (LaTeX-breqn-key-val-options-local): Delete now unneeded variable,
+ also from the style hook.
+ (LaTeX-breqn-env): Use `LaTeX-breqn-key-val-options' instead of
+ `LaTeX-breqn-key-val-options-local'.
+ (LaTeX-breqn-update-color-keys): Delete function and entry for
+ `TeX-auto-cleanup-hook'.
+
+2020-04-11 Tassilo Horn <tsdh@gnu.org>
+
+ Fix some regexp issues reported by relint.
+
+ * latex.el (LaTeX-209-to-2e): Fix regexp issues reported by relint.
+ * tex-buf.el (LaTeX-warnings-regexp, TeX-LaTeX-sentinel, TeX-parse-error):
+ Dito.
+
+2020-04-09 Pieter Pareit <pieter.pareit@gmail.com> (tiny change)
+
+ Fix y-or-n-p query prompts
+
+ * style/prosper.el (LaTeX-prosper-insert-slide): Fix query prompt.
+ ("prosper"): Delete unnecessary (funtion ...) in the hook.
+
+ * tex-buf.el (TeX-check-engine):
+ * tex-wizard.el (TeX-wizard): Fix query prompt.
+
+2020-04-09 Arash Esbati <arash@gnu.org>
+
+ * doc/changes.texi: Document latest changes.
+
+2020-04-08 Arash Esbati <arash@gnu.org>
+
+ Track LaTeX kernel changes for textcomp package
+
+ * font-latex.el (font-latex-built-in-keyword-classes): Add entry
+ for \legacyoldstylenums to type-command class.
+
+ * latex.el (LaTeX-common-initialization): Move all entries from
+ textcomp.el into latex.el since the macros are part of kernel with
+ 2020-02-02 release.
+ Add support for \legacyoldstylenums.
+
+ * style/textcomp.el: Move all entries to latex.el.
+ (LaTeX-textcomp-package-options): Update options.
+
+2020-04-07 Arash Esbati <arash@gnu.org>
+
+ Load caption style when asking for bicaption package options
+
+ * style/bicaption.el (LaTeX-bicaption-package-options): Load
+ "caption" style when making the query for package options.
+
+2020-04-06 Arash Esbati <arash@gnu.org>
+
+ Load caption style before asking for package options
+
+ * style/subcaption.el (LaTeX-subcaption-package-options): Load
+ "caption" style in order to make `LaTeX-caption-key-val-options'
+ defined when calling the function. (Emacs bug#40464)
+
+2020-04-05 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ * preview.el.in (preview-gs-open): Use wrapper function.
+
+2020-03-29 Arash Esbati <arash@gnu.org>
+
+ Add new style/tex-live.el
+
+ * Makefile.in (STYLESRC): Add new style.
+
+ * style/tex-live.el: New file.
+
+2020-03-26 Arash Esbati <arash@gnu.org>
+
+ Update style/listings.el
+
+ * style/listings.el (LaTeX-listings-key-val-options): Add
+ "consecutivenumbers" key.
+ ("listings"): Add \lstlistingnamestyle and \thelstlisting macros.
+
+2020-03-26 Arash Esbati <arash@gnu.org>
+
+ Add new style/overpic.el
+
+ * Makefile.in (STYLESRC): Add new style.
+
+ * style/overpic.el: New file.
+
+2020-03-23 Arash Esbati <arash@gnu.org>
+
+ Fix regexp for parsing optional arguments
+
+ * latex.el (LaTeX-auto-minimal-regexp-list):
+ (LaTeX-auto-class-regexp-list): Fix regexp for parsing optional
+ argument of \usepackage, \RequirePackage and \LoadClass.
+
+2020-02-14 Arash Esbati <arash@gnu.org>
+
+ Add new style/ltxguide.el
+
+ * Makefile.in (STYLESRC): Add new style.
+
+ * style/ltxguide.el: New file.
+
+2020-01-25 Uwe Brauer <oub@mat.ucm.es>
+
+ Add support for some missing environments
+
+ * style/exam.el (LaTeX-exam-insert-item):
+ ("exam"): Add support for various "choices" and "checkboxes"
+ environments.
+
+ ("exam"): Append the entries added to `LaTeX-item-list'.
+ Enter a space in the buffer after the \choice macro.
+
+2020-01-25 Arash Esbati <arash@gnu.org>
+
+ Add fontification support \textnormal macro
+
+ * font-latex.el (font-latex-built-in-keyword-classes): Add
+ entry for \textnormal to "type-command" class.
+
+2020-01-25 Arash Esbati <arash@gnu.org>
+
+ * doc/auctex.texi (Font Specifiers): Document new font macros.
+
+2020-01-18 Arash Esbati <arash@gnu.org>
+
+ Move customizable variable into tex-style.el
+
+ * style/shortvrb.el: Move definition of `LaTeX-shortvrb-chars'
+ into `tex-style.el'.
+ Delete check for function `font-latex-set-syntactic-keywords' and
+ check for feature font-latex instead.
+
+ * tex-style.el (LaTeX-shortvrb-chars): Add entry for
+ `LaTeX-shortvrb-chars'.
+
+2020-01-18 Arash Esbati <arash@gnu.org>
+
+ Add new font macros in the related menus
+
+ * latex.el (LaTeX-mode-menu): Add new entries for new kernel font
+ macros. Reorder the entries in groups family, series, shapes and
+ miscellaneous.
+
+2020-01-11 Arash Esbati <arash@gnu.org>
+
+ Add new style/revtex4-2.el
+
+ * Makefile.in (STYLESRC): Add new style.
+
+ * style/revtex4-2.el: New file.
+
+ * tex-style.el (LaTeX-write18-enabled-p): Delete * and whitespace
+ in docstring.
+ Indent comment.
+ Add customize entries for revtex4-2.el.
+
+2020-01-08 Arash Esbati <arash@gnu.org>
+
+ Adjust style/fontaxes.el to LaTeX kernel
+
+ * style/fontaxes.el ("fontaxes"): Comment out entries for macros
+ which are now provided by LaTeX kernel. Also remove fontification
+ support.
+
+2020-01-08 Arash Esbati <arash@gnu.org>
+
+ Improve support for extended NFSS macros
+
+ * font-latex.el (font-latex-built-in-keyword-classes): Move
+ entries for \normalfont and \normalshape to `function' class.
+ Add \textssc to `bold-command' and \sscshape to `bold-declaration'
+ class.
+
+ * latex.el (LaTeX-common-initialization): Add entries for `spaced
+ small caps' macros \sscshape and \textssc. \textssc is not part
+ of `LaTeX-font-list' yet.
+
+2020-01-07 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Remove compatibility code for older emacsen
+
+ According to NEWS.22, `font-lock-extra-managed-props' is available in
+ all supported emacsen.
+
+ * font-latex.el (font-latex-script,font-latex-script-char): Remove
+ `boundp' test for `font-lock-extra-managed-props'.
+ (font-latex-unfontify-region): Don't play with `invisible' text
+ property because it is now handled by font-lock thanks to
+ `font-lock-extra-managed-props'.
+
+2020-01-07 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Don't use obsolete variable
+
+ According to NEWS.20, `font-lock' no longer supports
+ `font-lock-comment-start-regexp'.
+
+ * font-latex.el (defvar): Remove `defvar' for
+ `font-lock-comment-start-regexp'.
+ (font-latex-setup): Don't include `font-lock-comment-start-regexp' in
+ `font-lock-defaults'.
+
+2020-01-07 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Remove compatibility code for older emacsen
+
+ Since `font-lock-multiline' is available in all supported emacsen, we
+ no longer need `font-latex-multiline'.
+
+ * font-latex.el (font-latex-setup): Remove `boundp' check.
+ (font-latex-unfontify-region): Delete unnecessary code.
+ (font-lock-after-change-function): Delete obsolete advice.
+ (font-latex-put-multiline-property-maybe): Remove.
+ (font-latex-match-command-with-arguments):
+ (font-latex-match-command-in-braces):
+ (font-latex-match-math-env):
+ (font-latex-match-math-envII):
+ (font-latex-match-quotation):
+ Remove call on `font-latex-put-multiline-property-maybe'.
+
+2020-01-07 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Delete obsolete comment
+
+ * font-latex.el: Delete obsolete comment. `font-latex-do-multi-line'
+ was removed in 2007.
+
+2020-01-07 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Add changelog for my previous bug fix
+
+ * doc/changes.texi (News in 12.3): Add a new entry for bug fix of
+ `LaTeX-insert-environment' (C-c C-e).
+
+2020-01-05 Arash Esbati <arash@gnu.org>
+
+ Support extended NFSS shapes with 2020-02-02 LaTeX kernel
+
+ * font-latex.el (font-latex-built-in-keyword-classes): Add
+ \textulc and \textsw to `bold-command' class, the respective
+ declarations to `bold-declaration'.
+ Add reset \normalfont and \normalshape to `type-declaration'
+ class.
+
+ * latex.el (LaTeX-font-list): Add the macros \textulc and \textsw
+ and bind the to C-l and C-w respectively.
+ (LaTeX-common-initialization): Add the matching font declarations
+ \ulcshape and \swshape. Add user level reset macros \normalfont
+ and \normalshape.
+
+2020-01-05 Arash Esbati <arash@gnu.org>
+
+ Update style/fbox.el to package version 0.04
+
+ * style/fbox.el: Add support for \fparbox macro.
+
+2020-01-05 Arash Esbati <arash@gnu.org>
+
+ Fix handling of LaTeX font declaration macros
+
+ * latex.el (LaTeX-common-initialization): Delete unnecessary and
+ duplicate entry for picture environment.
+ Add `-1' to LaTeX font declaration macros in order to work
+ correctly on active regions.
+
+2020-01-05 Arash Esbati <arash@gnu.org>
+
+ Delete insertion of wrong dollar sign
+
+ * tex.el (TeX-insert-dollar): Remove insertion of wrong `$' as
+ reported here:
+ https://lists.gnu.org/archive/html/auctex-devel/2020-01/msg00002.html
+
+2020-01-04 Arash Esbati <arash@gnu.org>
+
+ Update Pygments styles to version 2.5.2
+
+ * style/minted.el (LaTeX-minted-key-val-options): Update values of
+ "style" to styles provided by Pygments version 2.5.2.
+
+2019-12-31 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Improve environment insertion (bug#35284)
+
+ * latex.el (LaTeX-insert-environment): Place the point and the mark at
+ appropriate place.
+ * tests/latex/latex-test.el (LaTeX-insert-environment-with-active-region):
+ New test.
+
+2019-12-19 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Use pdf rather than dvi for preview package document
+
+ * latex/Makefile.in: Generate preview.pdf with full contents and use
+ it instead of preview.dvi.
+
+2019-12-14 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Adjust Makefile clean targets
+
+ * Makefile.in:
+ * doc/Makefile.in:
+ * latex/Makefile.in:
+ Adjust clean targets
+
+2019-12-08 Arash Esbati <arash@gnu.org>
+
+ * font-latex.el (font-latex-setup): Remove XEmacs compat code.
+
+2019-12-07 Arash Esbati <arash@gnu.org>
+
+ Update style/caption.el to package version 3.4a
+
+ * style/caption.el (LaTeX-caption-key-val-options): Add values
+ autodot and unnumbered to labelformat key.
+ Remove wrong ContinuedFloat value from type key.
+ ("caption"): Delete entries for ContinuedFloat.
+ Add fontification support for \continuedfloat macro.
+
+2019-12-06 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Update menu in proper timing (bug#38058)
+
+ * tex-buf.el (TeX-command-sentinel): Do `force-mode-line-update' in
+ the command buffer so that "Next Error" item will appear in the menu
+ bar just after compilation.
+ Replace all `(set-buffer-modified-p (buffer-modified-p))' with
+ `(force-mode-line-update)'
+ (TeX-run-command): Remove `sit-for' call which is no longer
+ necessary.
+
+2019-11-16 Arash Esbati <arash@gnu.org>
+
+ Update style/ltugboat.el to class version 2.22
+
+ * style/ltugboat.el ("ltugboat"): Add new abbreviation macros.
+
+2019-11-08 Arash Esbati <arash@gnu.org>
+
+ Add new style/fbox.el
+
+ * Makefile.in (STYLESRC): Add new style.
+
+ * style/fbox.el: New file.
+
+2019-10-30 Mos¨ Giordano <mose@gnu.org>
+
+ * Version 12.2 released.
+
+2019-10-29 Mos¨ Giordano <mose@gnu.org>
+
+ Prepare for upcoming release
+
+ * RELEASE: Update version number, release notes and list of contributors.
+ * configure.ac: Update version number.
+ * doc/auctex.texi: Update copyright years.
+ * doc/changes.texi: Mention generic bug fixes.
+ * doc/tex-ref.tex:
+ * latex/preview.dtx: Update version number and copyright years
+
+2019-10-26 Arash Esbati <arash@gnu.org>
+
+ Add new style/xkcdcolors.el
+
+ * Makefile.in (STYLESRC): Add new style.
+
+ * style/xkcdcolors.el: New file.
+
+2019-10-26 Arash Esbati <arash@gnu.org>
+
+ Add check for empty overlay
+
+ * tex-fold.el (TeX-fold-hide-item): Add an extra check to make
+ sure that the function runs when overlay start and end are
+ non-nil. What is done in the end of function isn't useful with
+ evaporated overlays and used to cause bugs because `overlay-start'
+ and `overlay-end' return nil for such overlays, and functions such
+ as `TeX-fold-overfull-p` try to move point to the
+ overlay-end. (bug#37337)
+
+2019-10-20 Arash Esbati <arash@gnu.org>
+
+ * style/amsmath.el ("amsmath"): Improve query strings.
+
+2019-10-19 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ multi-prompt.el, style/beamer*.el: Get copyright just right
+
+2019-10-18 Arash Esbati <arash@gnu.org>
+
+ * doc/changes.texi: Mention changes in News.
+
+2019-10-18 Arash Esbati <arash@gnu.org>
+
+ Add final adjustments for LaTeX 2019-10-01
+
+ * latex.el (LaTeX-env-contents): Adjust function to LaTeX kernel
+ 2019-10-01 release. Remove check for usage within preamble only.
+ Add query for optional argument with completion.
+ (LaTeX-verbatim-environments):
+ (LaTeX-indent-environment-list): Add filecontents(*) environments.
+
+ * style/amsmath.el ("amsmath"): Add support for \overunderset
+ macro. Delete unnecessary `function' before `lambda'. Re-indent
+ the code.
+
+2019-10-15 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Change default for new Ghostscript
+
+ * preview.el.in (preview-pdf-color-adjust-method): Change the default
+ value to t and adjust doc string.
+ * doc/preview-problems.texi (No images are displayed with gs 9.27 and
+ earlier): Adjust its contents in line with the above change and change
+ the title from "... newer".
+
+2019-10-15 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Fix for revised file access controls of gs (bug#37719)
+
+ * preview.el.in (preview-prepare-fast-conversion): Add commands for
+ revised file access controls introduced after gs 9.27.
+ (preview-gs-restart): Use "-d" option instead of "-s" because the
+ former does not accept "%d" in OutputFile parameter.
+ Don't wrap the file name into parentheses in line with this change.
+ (preview-gs-flag-error): Adjust the reconstructed gs command line
+ argument so that it matches with the above change.
+ Add comments about limitations of this function.
+
+2019-10-07 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ * preview.el.in (preview-undump-replacements): Fix last commit.
+
+2019-10-07 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Fix preview-latex for TeXLive 2019 update
+
+ * preview.el.in (preview-LaTeX-command, preview-undump-replacements):
+ Remove the brace around the argument of \input.
+
+2019-09-23 Arash Esbati <arash@gnu.org>
+
+ Add fontification support for ragged2e macros
+
+ * style/ragged2e.el ("ragged2e"): Add provided macros to function
+ keywords class. This is in line with decision in `font-latex.el'
+ for corresponding kernel macros.
+
+2019-09-22 Arash Esbati <arash@gnu.org>
+
+ Delete \Ref and \labelformat from varioref.el
+
+ * style/varioref.el ("varioref"): Delete \Ref and \labelformat
+ from style hook and fontification support.
+
+2019-09-22 Arash Esbati <arash@gnu.org>
+
+ * latex.el (LaTeX-common-initialization): Add \Ref to `TeX-complete-list'.
+
+2019-09-22 Arash Esbati <arash@gnu.org>
+
+ Support new kernel macros \Ref and \labelformat
+
+ * font-latex.el (font-latex-built-in-keyword-classes): Add \Ref to
+ reference and \labelformat to function class.
+
+ * latex.el (LaTeX-common-initialization): Add support for \Ref and
+ \labelformat which are part of LaTeX kernel 2019-10-01 release.
+
+2019-09-18 Arash Esbati <arash@gnu.org>
+
+ Update style/subcaption.el to package version 1.3
+
+ * style/subcaption.el ("subcaption"): Add support for \subfloat
+ macro.
+
+2019-09-18 Arash Esbati <arash@gnu.org>
+
+ Update style/varioref.el to package version 1.6b
+
+ * style/varioref.el ("varioref"): Rearrange macros acc. to the
+ manual. Add missing starred version of \Vref. Add fontification
+ support for \labelformat.
+ (LaTeX-varioref-package-options): Update package options.
+
+2019-09-14 Arash Esbati <arash@gnu.org>
+
+ Improve detecting of rejected optional arguments
+
+ * style/bicaption.el (LaTeX-arg-bicaption-bicaption):
+ * style/caption.el (LaTeX-arg-caption-captionbox):
+ * style/floatrow.el (LaTeX-floatrow-arg-floatbox):
+ * style/xcolor.el (TeX-arg-xcolor-fcolorbox): Add an additional
+ check for detecting if last optional argument was rejected.
+
+2019-09-08 Arash Esbati <arash@gnu.org>
+
+ Add new style/multitoc.el
+
+ * Makefile.in (STYLESRC): Add new style.
+
+ * style/multitoc.el: New file
+
+2019-08-31 Arash Esbati <arash@gnu.org>
+
+ Make "PDF Tools" viewer available under Windows and macOS
+
+ * tex.el (TeX-view-program-list-builtin): Make entry for "PDF
+ Tools" available under Windows and macOS. (bug#37152)
+
+ * doc/changes.texi: Mention availability of "PDF Tools" under
+ Windows and macOS in `TeX-view-program-list-builtin'.
+
+ * doc/install.texi (Prerequisites): Replace "Mac OS X" with
+ "macOS".
+
+2019-08-22 Arash Esbati <arash@gnu.org>
+
+ Add new style/ltugboat.el
+
+ * Makefile.in (STYLESRC): Add new style.
+
+ * style/ltugboat.el: New file.
+
+2019-08-22 Arash Esbati <arash@gnu.org>
+
+ Add new style/changelog.el
+
+ * Makefile.in (STYLESRC): Add new style.
+
+ * style/changelog.el: New file.
+
+2019-08-22 Arash Esbati <arash@gnu.org>
+
+ Support explicitly numbered group contructs
+
+ * latex.el (LaTeX-extract-key-value-label): Add an optional
+ argument for explicitly numbered group contructs.
+
+2019-08-22 Arash Esbati <arash@gnu.org>
+
+ * doc/changes.texi: Mention fontification improvement for biblatex.
+
+2019-08-21 Arash Esbati <arash@gnu.org>
+
+ * context.el (ConTeXt-environment): Fix docstring.
+
+2019-08-21 Arash Esbati <arash@gnu.org>
+
+ Fix lisp example for `TeX-electric-math'
+
+ * doc/auctex.texi (Quotes): Use `make-local-variable' instead of
+ `make-variable-buffer-local' in lisp example for init file. (bug#37124)
+
+2019-08-21 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Restore syntax fontify in Texinfo mode
+
+ * tex-info.el (TeX-texinfo-mode): Set `syntax-propertize-function',
+ mimicking texinfo.el. Now comments in Texinfo mode buffer are
+ displayed with comment face again.
+
+2019-08-21 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Reduce unnecessary local variable safety inquiry
+
+ * tex.el (TeX-add-local-master): Call major mode function only when
+ necessary.
+
+2019-08-18 Arash Esbati <arash@gnu.org>
+
+ Update style/titlesec.el to package version 2.11
+
+ * style/titlesec.el ("titlesec"): Add \nostruts macro.
+ (LaTeX-titlesec-package-options): Add `nostruts' option.
+
+2019-08-17 Arash Esbati <arash@gnu.org>
+
+ Update style/thmtools.el to package version 67
+
+ * style/thmtools.el (LaTeX-thmtools-declaretheoremstyle-regexp)
+ (LaTeX-thmtools-declaretheorem-regexp): Use the function
+ `LaTeX-extract-key-value-label' to build the regexp.
+ (LaTeX-thmtools-listoftheorems-key-val): Add new key `title'.
+ (LaTeX-thmtools-package-options): Add new variable.
+
+2019-08-17 Arash Esbati <arash@gnu.org>
+
+ Update style/fvextra.el to package version 1.4
+
+ * style/fvextra.el (LaTeX-fvextra-key-val-options): Add new keys.
+ ("fvextra"): Add new macros. Add fontification support for
+ \EscVerb macro.
+
+2019-08-15 Arash Esbati <arash@gnu.org>
+
+ Update style/paracol.el to package version 1.35
+
+ * style/paracol.el: Add macro \definecolumnpreamble and the length
+ \belowfootnoteskip.
+
+2019-07-21 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Change color adjustment method (bug#35571, bug#35696, bug#36039)
+
+ * preview.el.in (preview-pdf-color-adjust-method): New option.
+ (preview-pdf-color-string): Use new code using DELAYBIND feature when
+ the new option is t.
+ (preview-gs-color-string): Add new optional argument to suppress code
+ for explicit colors.
+ (preview-gs-open): Don't adjust color when the latex command produces
+ PDF and `preview-pdf-color-adjust-method' is nil.
+ (preview-pdf2dsc-sentinel): Add "-dDELAYBIND" option to gs invocation
+ when `preview-pdf-color-adjust-method' is t.
+ * doc/changes.texi: Add a new entiry.
+ * doc/preview-problems.texi: Add a section to explain how to do with
+ the case no images are displayed with gs 9.27 and newer.
+
+2019-07-16 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Enhance support for file names with spaces
+
+ * tex-buf.el (TeX-run-compile): Add an entry for file name with spaces
+ to localized `compilation-error-regexp-alist'.
+
+2019-07-14 Arash Esbati <arash@gnu.org>
+
+ Update style/AnonymousPro.el to package version 2.2
+
+ * style/AnonymousPro.el (LaTeX-AnonymousPro-package-options): Add
+ the `scaled' key.
+
+2019-06-27 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Conform to `delete-selection-mode' (bug#36385)
+
+ * latex.el (LaTeX-insert-left-brace): Put `delete-selection' property
+ which obeys that of `self-insert-command' when
+ `LaTeX-electric-left-right-brace' feature is inactive.
+
+2019-06-14 Arash Esbati <arash@gnu.org>
+
+ Support cleveref labels
+
+ * style/cleveref.el (TeX-arg-cleveref-crossref-type): New
+ function.
+ (LaTeX-cleveref-label-regexp): New variable for parsing \label
+ macros with an optional argument.
+ ("cleveref"): Add missing package macros.
+ Update expert commands and fontification.
+ Update `reftex-label-regexps' enabling RefTeX to handle \label
+ with an optional argument as well.
+ Update description line and add Commentary section. (bug#36111)
+
+2019-05-21 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Make navigation function robust
+
+ * tex.el (TeX-find-macro-end-helper): Cater for corner case that the
+ `while' loop is exited or skipped.
+ * tests/tex/navigation.el: Add new test.
+
+2019-05-20 Arash Esbati <arash@gnu.org>
+
+ Update style/babel.el to package version 3.31
+
+ * style/babel.el (LaTeX-babel-language-list): Add azerbaijani and
+ remove frenchb.
+ (LaTeX-babel-babelprovide-key-val-options): New variable.
+ (LaTeX-babel-babeltags-regexp, LaTeX-babel-cleanup-babeltags): Add
+ parsing support for \babeltags macro.
+ (LaTeX-babel-babelfont-regexp, LaTeX-babel-cleanup-babelfont): Add
+ parsing support for \babelfont macro.
+ (TeX-arg-babel-lang): Use the arguments optional and prompt
+ properly.
+ ("babel"): Add missing macros incl. fontification.
+ (LaTeX-babel-package-options): Add missing package options.
+
+2019-05-17 Tassilo Horn <tsdh@gnu.org>
+
+ Fix autoload generation code (bug#35758)
+
+ * Makefile.in (AUTOLOAD,PREVIEW_AUTOLOAD): Use arg instead of
+ generated-autoload-file (bug#35758).
+
+2019-05-17 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Fix regression
+
+ * latex.el (LaTeX-arg-usepackage-insert, LaTeX-arg-usepackage): Move
+ `TeX-run-style-hooks' from `LaTeX-arg-usepackage' to
+ `LaTeX-arg-usepackage-insert'. Due to my commit "Defer running style
+ hook until options are given actually", style hooks associated with
+ \usepackage were not run when the document is newly created with
+ `LaTeX-env-document'.
+
+2019-05-17 Arash Esbati <arash@gnu.org>
+
+ Load hyperref.el in `LaTeX-beamer-class-options'
+
+ * style/beamer.el (LaTeX-beamer-class-options): Load "hyperref.el"
+ in order to have `LaTeX-hyperref-package-options-list' defined
+ when the document class is requested and the style hook hasn't run
+ yet. (bug#35649)
+
+2019-05-12 Arash Esbati <arash@gnu.org>
+
+ Improve style/mflogo.el
+
+ * style/mflogo.el ("mflogo"): Ask for Text when \textlogo is
+ invoked. Change \logofamily into a declaration. Add missing
+ macros \MF and \MP. Adjust fontification for \textlogo and
+ \logofamily.
+
+2019-05-12 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Fix last commit
+
+ * tex-buf.el (TeX-command-expand): Redefine the value of `file' just
+ once per call of `TeX-command-expand'. Previous code could give
+ spurious quote when the given command string contains more than one
+ "%" expanders tied with the symbol `file'.
+
+2019-05-12 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Stop depreciated usage of undeclared dynamic variable
+
+ * tex-buf.el (TeX--master-or-region-file-with-extra-quotes): Redefine
+ as template. On accepting one of `TeX-master-file', `TeX-region-file'
+ or `TeX-active-master' as its first argument, it becomes a wrapper for
+ those three, like previous definition.
+ (TeX-command-expand): Arrage in accord with the above change.
+ With these two changes, we no longer need implicit dynamic binding of
+ non-special variable `orig-file'.
+ * tex.el (TeX-expand-list-builtin): Update supplementary comment for
+ "%T".
+
+2019-05-09 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ * tex-jp.el (AUCTeX-jp): Add keyword :link to info node.
+
+2019-05-09 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Fix treatment of class and package options
+
+ * preview.el.in (preview-auctex-font-size): Consult
+ `LaTeX-provided-{class,package}-options' instead of
+ `(TeX-style-list)'. This function has been accidentally disabled
+ since AUCTeX began not to include the class and package options into
+ the styles. Similar problem with bug#25563.
+ * latex.el (LaTeX-match-class-option): Update doc string because the
+ above change depends on its implicit behavior.
+
+2019-05-09 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Remove obsolete codes
+
+ * preview.el.in (preview-mouse-open-eps): Remove xemacs compatibility
+ code.
+ Don't use obsolete variable `default-major-mode'.
+
+2019-05-09 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Remove compatibility code for xemacs
+
+ * prv-emacs.el (preview-compatibility-macros): Remove.
+ * preview.el.in (eval-when-compile,makunbound): Remove useless
+ codes.
+
+2019-05-09 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Remove compatibility code for xemacs
+
+ * prv-emacs.el (preview-mark-active): Remove.
+ (): Update Copyright year.
+ * preview.el.in (LaTeX-preview-setup): Remove the above macro.
+ (): Update Copyright year.
+
+2019-05-08 Mohammad Hossein Bateni <bateni@google.com>
+
+ Allow the user to customize which TeX commands are available in each mode.
+
+ Commands such as Biber, DVI2PS, PS2PDF, Index, etc. are not useful in
+ ConTeXt. ConTeXt generates a PDF directly and has its own indexing
+ mechanism.
+
+ In Mark IV (which has been the preferred version for over a decade and
+ is actively developed), a new bibliography package is also available,
+ which can process old bibtex files as well. So there is no need for
+ BibTeX.
+
+ Having so many commands in context-mode clutters the menus. In the
+ definition of TeX-command-list, we either provide a list of relevant
+ modes, or set the value to `t' indicating that this command should
+ always be available. In the latter case, the user cannot customize
+ it. Here we provide sensible defaults as well as the ability for the
+ user to customize.
+
+ * tex.el (TeX-command-list): Hide by default some commands from context-mode.
+
+2019-04-23 Arash Esbati <arash@gnu.org>
+
+ Add new function `LaTeX-extract-key-value-label'
+
+ * latex.el (LaTeX-extract-key-value-label): Add new utility
+ function to return a regexp string to extract label value in an
+ optional key=val argument.
+
+ * style/breqn.el (LaTeX-breqn-key-val-label-regexp):
+ * style/listings.el (LaTeX-listings-key-val-label-regexp)
+ (LaTeX-listings-auto-cleanup): Use
+ `LaTeX-extract-key-value-label'.
+ Delete now unused variable `LaTeX-listings-key-val-label-extract'.
+
+2019-04-20 Arash Esbati <arash@gnu.org>
+
+ Add support for ChangeLog entries for LaTeX files
+
+ * tex.el (TeX-current-defun-name): New function returning the name
+ of current sectioning command when `C-x 4 a' is invoked.
+
+ * latex.el (LaTeX-common-initialization): Set a local version
+ `add-log-current-defun-function' to `TeX-current-defun-name'.
+
+2019-04-19 Arash Esbati <arash@gnu.org>
+
+ * style/xparse.el ("xparse"): Fix fontification of alternatives.
+
+2019-04-17 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Reset `TeX-PDF-from-DVI' if xetex engine is in use
+
+ * tex.el (TeX-engine-set): Reset `TeX-PDF-from-DVI' when the new
+ engine is `xetex'. Fix bug#34593.
+
+2019-04-13 Arash Esbati <arash@gnu.org>
+
+ Update keywords to biblatex v3.12
+
+ * font-latex.el (font-latex-built-in-keyword-classes): Update
+ biblatex keywords. For qualified lists, fontify at least 2
+ mandatory arguments.
+
+2019-04-11 Arash Esbati <arash@gnu.org>
+
+ * tex-info.el (TeX-texinfo-mode): Set `add-log-current-defun-function' locally.
+
+2019-04-06 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Elaborate LaTeX math insertion command
+
+ * latex.el (LaTeX-math-insert): Put the point after the closing dollar
+ sign when appropriate. This fixes bug#35128.
+ In addtion, wrap the text in the active region suitably.
+
+2019-04-05 Arash Esbati <arash@gnu.org>
+
+ Fix handling of function entries in `TeX-complete-list'
+
+ * tex.el (TeX-complete-symbol): Check if the fourth argument of
+ entry in `TeX-complete-list' is a list and eval it. (Bug#35074)
+
+2019-03-16 Arash Esbati <arash@gnu.org>
+
+ Improve fontification of \href macro
+
+ * style/hyperref.el ("hyperref"): Add "href" to
+ `LaTeX-verbatim-macros-with-braces-local'.
+ Check for feature font-latex and not for functions.
+ Declare and use `font-latex-update-font-lock' instead of
+ `font-latex-set-syntactic-keywords'.
+
+2019-03-09 Tassilo Horn <tsdh@gnu.org>
+
+ Support up to 12 command arguments.
+
+ * font-latex.el (font-latex-keyword-matcher): Support up to 12 command
+ arguments.
+
+2019-03-04 Arash Esbati <arash@gnu.org>
+
+ Fix fontification of simple macros
+
+ * font-latex.el (font-latex-match-simple-command): Change second
+ part of regexp in order to be less greedy. This function now
+ fontifies only letters and characters defined in
+ `font-latex-match-simple-include-list' (bug#34712).
+ (font-latex-match-simple-include-list): New variable.
+
+ * style/expl3.el ("expl3"): Add "_" and ":" to
+ `font-latex-match-simple-include-list'.
+
+2019-02-24 Tassilo Horn <tsdh@gnu.org>
+
+ New styles for beamerarticle & beamerswitch triggering beamer
+
+ * style/beamerarticle.el: New style.
+ * style/beamerswitch.el: New style.
+ * Makefile.in (STYLESRC): Enable them.
+
+2019-02-11 Arash Esbati <arash@gnu.org>
+
+ * style/listings.el: Require tex.el.
+
+2019-02-08 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * auctex.el: Add requireds, keywords, and trailer
+
+ (cherry picked from commit 0c8d6703d16097eb64f014c56e4135a5a1f9600f)
+
+2019-02-08 Arash Esbati <arash@gnu.org>
+
+ Delete auctex-pkg.el which is not needed for ELPA releases
+
+2019-02-08 Arash Esbati <arash@gnu.org>
+
+ Add dependencies file auctex-pkg.el
+
+ * auctex-pkg.el: Add new file containing AUCTeX's dependencies for
+ ELPA releases.
+
+2019-02-02 Arash Esbati <arash@gnu.org>
+
+ Improve indenting and filling in "Form" environments
+
+ * style/hyperref.el ("hyperref"): Add the "Form" environment to
+ `LaTeX-document-regexp'.
+
+2019-01-12 Arash Esbati <arash@gnu.org>
+
+ Add support for w and W column specifiers
+
+ * style/array.el ("array"): Add column specifiers w and W to
+ `LaTeX-array-column-letters'.
+
+ * doc/changes.texi: Mention that counting columns is supported
+ only if the align parameter is enclosed in braces.
+
+2019-01-11 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Remove combatibility code for older emasen
+
+ * tex.el (put): Don't put unnecessary property on
+ `TeX-source-correlate-mode'.
+ (TeX-clean): Remove fallback code for emacs 21.
+
+2019-01-11 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Remove compatibility code for older emacsen
+
+ * font-latex.el (put):
+ * tex-style.el (put):
+ Use `booleanp' instead of `TeX-booleanp'.
+ * tex.el (put): Use `booleanp' instead of `TeX-booleanp'.
+ (TeX-booleanp): Remove.
+
+2019-01-11 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Remove compatibility code for older emacsen
+
+ * context.el (ConTeXt-mode-common-initialization):
+ * latex.el (TeX-latex-mode):
+ * plain-tex.el (TeX-plain-tex-mode, ams-tex-mode):
+ * tex-info.el (TeX-texinfo-mode):
+ Use `run-mode-hooks' instead of `TeX-run-mode-hooks'.
+ * tex.el (TeX-run-mode-hooks): Remove.
+
+2019-01-11 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Fix test conditions on w32
+
+ * tests/tex/command-expansion.el (TeX-command-detokenize): Correct
+ `system-type' for w32.
+ (TeX-command-expand-skip-file-name, TeX-command-expand-active-master):
+ Skip tests on w32.
+
+2019-01-10 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Override some bindings in `TeX-mode-map' in Texinfo mode
+
+ * tex-info.el (Texinfo-mode-map): Bind `self-insert-command' to
+ "$", "^", "_" and "\" because they are normal characters in Texinfo
+ documents.
+ Bind `TeX-insert-backslash' to "@" so that users benefit from
+ `TeX-electric-macro' even in Texinfo mode.
+ * tex.el (TeX-electric-escape): Update doc string.
+ * doc/auctex.texi (Completion): Update description.
+ * doc/changes.texi (News in 12.2): Mention the above changes.
+
+2019-01-06 Arash Esbati <arash@gnu.org>
+
+ Update style/enumitem.el to package version 3.6
+
+ * style/enumitem.el (LaTeX-enumitem-key-val-options): Update
+ key=val options to v3.6.
+ (LaTeX-enumitem-auto-cleanup): Use sharp-quote notation.
+ ("enumitem"): Query for trivlist environment depending of package
+ option.
+ Add macro \Drawenumitemlabel and length \labelitem.
+ (LaTeX-enumitem-package-options): Update package options.
+
+2019-01-02 Arash Esbati <arash@gnu.org>
+
+ Skip macros and environments from pythontex
+
+ * tex-ispell.el (TeX-ispell-skip-cmds-list): Add document macros
+ of pythontex package.
+ (TeX-ispell-skip-envs-list): Add environments provided by
+ pythontex package.
+ Add general verbatim macros.
+
+2018-12-15 Arash Esbati <arash@gnu.org>
+
+ Improve completion for \url between url.el and hyperref.el
+
+ * style/hyperref.el ("hyperref"): Comment the entry for "url"
+ since the completion is provided via url.el.
+
+ * style/url.el ("url"): Add a conditional to "url" in order to
+ check if hyperref.el is loaded and then supply the argument in
+ braces.
+ Also check for hyperref.el. before adding "url" to
+ `LaTeX-verbatim-macros-with-delims-local'.
+
+2018-12-14 Arash Esbati <arash@gnu.org>
+
+ Add new style/pythontex.el
+
+ * Makefile.in (STYLESRC): Add new style.
+
+ * style/pythontex.el: New file.
+
+2018-12-11 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Drop xemacs support and mule check from configure and Makefile
+
+ * aclocal.m4:
+ * configure.ac:
+ * doc/Makefile.in: Drop xemacs support and mule check.
+ * Makefile.in: Merge mule file into main files.
+ Drop xemacs support.
+ * prv-install.el: Remove.
+
+2018-12-11 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Fix document
+
+ * doc/auctex.texi (Completion): Correct wrong description and typo.
+ (Cleaning): Add mention about variables related to AmSTeX mode.
+
+2018-12-11 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Use ASCII apostrophe in code expample
+
+ * doc/auctex.texi (): (I/O Correlation): Use APOSTROPHE(U+0027) rather
+ than RIGHT SINGLE QUOTATION MARK(U+2019) in code example.
+ Add coding tag in Local Variables section.
+
+2018-12-10 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Redefine support for \url in hyperref
+
+ * style/hyperref.el ("hyperref"): Override the entry for \url macro in
+ url.el because hyperref.sty redefines the macro.
+
+2018-12-10 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Revise description about CJK support
+
+ * doc/auctex.texi (Internationalization): Revise description about CJK
+ support in Emacs and TeX.
+ (Japanese): Fix typo and add index entries.
+
+2018-12-06 Arash Esbati <arash@gnu.org>
+
+ Improve handling of `TeX-insert-macro-default-style' in styles
+
+ * latex.el (LaTeX-check-insert-macro-default-style): Add new
+ macro. This macro is intended for more complex functions in style
+ files querying multiple optional and mandatory arguments and
+ obeying the values of `TeX-insert-macro-default-style' and
+ `current-prefix-arg'.
+
+ * tex.el (TeX-parse-arguments): Add a comment about the new macro.
+
+ * style/bicaption.el (LaTeX-arg-bicaption-bicaption):
+ * style/caption.el (LaTeX-arg-caption-captionbox):
+ * style/color.el (TeX-arg-color, TeX-arg-color-fcolorbox):
+ * style/floatrow.el (LaTeX-floatrow-arg-floatbox):
+ * style/xcolor.el (TeX-arg-xcolor-definecolor)
+ (TeX-arg-xcolor-definecolorset, TeX-arg-xcolor)
+ (TeX-arg-xcolor-fcolorbox): Use
+ `LaTeX-check-insert-macro-default-style'.
+
+2018-12-03 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Remove compatibility code for older emacsen
+
+ * tex.el: Remove XEmacs compatibility definitions for
+ `TeX-read-string', `TeX-active-mark', `TeX-activate-region',
+ `line-beginning-position', `line-end-position' and
+ `TeX-overlay-prioritize'.
+ (TeX-activate-region): Remove compatibility code for older emacsen.
+
+2018-12-03 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Remove TeX-maybe-remove-help, TeX-menu-with-help
+
+ * tex.el (TeX-maybe-remove-help, TeX-menu-with-help): Remove.
+ (TeX-mode-specific-command-menu-entries, TeX-fold-menu)
+ (TeX-common-menu-entries):
+ * context.el:
+ * latex.el:
+ * plain-tex.el:
+ * tex-buf.el:
+ * tex-info.el:
+ Remove `TeX-menu-with-help' and fix indent.
+
+2018-12-03 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Remove TeX-mark-active
+
+ * tex.el (TeX-mark-active): Remove.
+ (TeX-mode-specific-command-menu-entries):
+ * style/dinbrief.el (LaTeX-dinbrief-insert)
+ (LaTeX-dinbrief-env-recipient):
+ Use the variable `mark-active' directly instead of the function
+ `TeX-mark-active'.
+
+2018-12-03 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Remove TeX-replace-regexp-in-string
+
+ * tex.el (TeX-replace-regexp-in-string): Remove.
+ * latex.el:
+ * style/empheq.el:
+ * style/floatrow.el:
+ * style/tcolorbox.el:
+ * style/xcolor.el:
+ Use `replace-regexp-in-string' instead of
+ `TeX-replace-regexp-in-string'.
+
+2018-12-03 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Use `write-file-functions'
+
+ * tex.el (VirTeX-common-initialization):
+ * latex.el (BibTeX-auto-store):
+ Use `write-file-functions' instead of obsolete
+ `local-write-file-hooks' and `write-file-hooks'. Also, use local hook.
+
+2018-12-03 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Remove compatibility face
+
+ * tex-buf.el (TeX-error-description-error)
+ (TeX-error-description-warning, TeX-error-description-tex-said):
+ Remove compatibility alternatives in `defface'.
+
+2018-12-03 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Remove XEmacs compatibility code in tex-bar.el
+
+ * tex-bar.el (TeX-bar-TeX-buttons, TeX-bar-LaTeX-buttons): Remove
+ Emacs/XEmacs choice of buttons.
+
+2018-12-03 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ * tex-buf.el (TeX-special-mode): Use `define-derived-mode'.
+
+2018-12-03 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Remove compatibility code for older emacsen
+
+ * font-latex.el (font-latex-after-hacking-local-variables): Remove
+ fallback code for case `file-local-variables-alist' isn't available.
+
+2018-12-03 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Remove compatibility code for older emacsen
+
+ * font-latex.el (font-latex-doctex-^^A): Remove fallback for case
+ `string-to-syntax' isn't available.
+
+2018-12-03 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Remove compatibility code for older emacsen
+
+ * latex.el (LaTeX-fill-region-as-para-do): Drop fallback for case
+ `fill-delete-prefix' isn't available.
+
+2018-12-03 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Adjust autoload cookie
+
+ * tex-fold.el (TeX-fold-mode): Set autoload cookie directly to
+ `define-minor-mode'.
+
+2018-12-02 Arash Esbati <arash@gnu.org>
+
+ Remove unnecessary parentheses
+
+ * style/geometry.el ("geometry"):
+ * style/graphicx.el ("graphicx"): Remove unnecessary parentheses
+ in option management.
+
+2018-11-29 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Remove compatibility codes for older emacsen
+
+ * tex-info.el (when, TeX-texinfo-mode):
+ * tex.el (TeX-documentation-texdoc):
+ * plain-tex.el (TeX-plain-tex-mode):
+ * preview.el.in (preview-counter-find):
+ Remove compatibility codes for older emacsen.
+
+2018-11-29 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Use `declare-function' without `fboundp' test
+
+ * latex.el:
+ * tex-info.el:
+ Use `declare-function' without `fboundp' test.
+
+2018-11-29 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Remove references to older emacsens in comments and doc strings
+
+ * bib-cite.el:
+ * font-latex.el:
+ * tex-fold.el:
+ * tex-style.el:
+ * style/graphicx.el
+ Remove references on older emacsens in comments and doc strings
+
+2018-11-29 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Remove references to XEmacs from the manual
+
+ * RELEASE (): Delete the words "or XEmacs" and fill the paragraph.
+ * doc/install.texi (Configure): Delete redundant line and words.
+
+2018-11-29 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Clean up remnants of previous removal of compatibility codes
+
+ * tex.el (TeX-mode-specific-command-menu): Delete irrelevant comment.
+ * latex.el (LaTeX-indent-line): Clear out unused lines.
+
+2018-11-29 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Add suggestions for non-privileged installation
+
+ * doc/install.texi (Configure): Reorganize a paragraph and add @ref's.
+ (Installation for non-privileged users): Add paragraphs to suggest to
+ supply options "--with-lispdir" and "--with-texmf-dir" etc. to
+ configure when installing AUCTeX under the user's home directory.
+
+2018-11-26 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Defer running style hook until options are given actually
+
+ * latex.el (LaTeX-arg-usepackage-read-packages-with-options): Don't
+ run the style hooks before reading package options, just load the
+ style files for completion of package options.
+ (LaTeX-arg-usepackage): Run style hooks actually after the package
+ options are given.
+ (TeX-arg-document): Don't run the style hooks before reading class
+ options, just load the style file for completion of class options.
+ The style hooks are run afterward by `TeX-update-style' anyway.
+ * style/exam.el ("exam"): Prepare `LaTeX-exam-class-options' to have
+ its full values outside the style hook along with the above idea.
+ * style/mathtools.el ("mathtools"):
+ * style/empheq.el ("empheq"):
+ * style/graphics.el ("graphics"): Set `LaTeX-*****-package-options'
+ outside the style hook along with the above idea.
+
+2018-11-26 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Fix not to run wrong style hooks
+
+ * tex.el (TeX-style-hook-dialect-weight-alist): Add entry for
+ pseudo-dialect `:classopt'.
+ (TeX-style-hook-dialect): Add description for `:classopt' in doc
+ string.
+ * latex.el (LaTeX-common-initialization): Assign style hooks for
+ class options into pseudo-dialect `:classopt'.
+ Don't set `TeX-PDF-from-DVI' in XeLaTeX document.
+ (TeX-latex-mode): Run style hooks for class options in
+ `TeX-update-style-hook', without altering `TeX-active-list'.
+ * style/geometry.el ("geometry"):
+ * style/graphicx.el ("graphicx"): Don't set `TeX-PDF-from-DVI' in
+ XeLaTeX document.
+ * style/hyperref.el ("hyperref"): Set `TeX-PDF-from-DVI' to "Dvipdfmx"
+ when package option "dvipdfmx" is given for non-XeLaTeX document.
+ * tests/latex/latex-test.el (LaTeX-style-hook-with-class-option):
+ Refine tests.
+ * doc/auctex.texi (Simple Style): Add descriptions for available
+ dialects including `:classopt'.
+
+2018-11-24 Arash Esbati <arash@gnu.org>
+
+ Add new style/dashundergaps.el
+
+ * Makefile.in (STYLESRC): Add new style.
+
+ * style/dashundergaps.el: New file.
+
+2018-11-16 Arash Esbati <arash@gnu.org>
+
+ Improve behavior of `TeX-arg-beamer-overlay-spec'
+
+ * style/beamer.el (TeX-arg-beamer-overlay-spec): Use
+ `TeX-argument-insert' in the body of the function and respect the
+ OPTIONAL argument.
+ ("beamer"): Enclose all occurrences of
+ `TeX-arg-beamer-overlay-spec' in brackets in order to mark them as
+ optional.
+
+2018-11-16 Arash Esbati <arash@gnu.org>
+
+ style/enumitem.el ("enumitem"): Use `TeX-argument-prompt' for query.
+
+2018-11-15 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Surround both \langle and \rangle with math delimiter
+
+ * latex.el (LaTeX-math-insert): Typing "C-u ` (" used to result in
+ "$\langle$\rangle" when `LaTeX-math-mode' and
+ `LaTeX-electric-left-right-brace' are enabled. Fix this to insert
+ "$\langle\rangle$" instead.
+
+2018-11-15 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Set `TeX-command-buffer' always (bug#33377)
+
+ * tex-buf.el (TeX-command): Make sure to set `TeX-command-buffer'
+ always.
+
+2018-11-10 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Adjust preview-latex in case sub file isn't in master directory
+
+ * preview.el.in (preview-dvips-abort):
+ (preview-gs-dvips-sentinel):
+ (preview-dvipng-place-all): Make sure directory part of dvi file to be
+ deleted is removed because deletion takes place in master directory.
+ (preview-start-pdf2dsc): Make sure directory part of pdf file is
+ removed so that path for later use is constructed correctly.
+ (preview-cache-preamble):
+ (preview-region):
+ (preview-document): Retain directory part of the file name to be
+ passed to `preview-generate-preview' because `TeX-run-command' in
+ `TeX-inline-preview-internal' doesn't recognize the right path
+ otherwise.
+ (preview-generate-preview): Adjust in accord with the above change.
+
+2018-11-09 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Don't block emacs during viewing document
+
+ * tex.el (TeX-documentation-texdoc): Use asynchronous proces not to
+ block emacs during viewing document.
+ Supply "%s" to `message' argument in case the shell output contains
+ accidental %-sequence.
+
+2018-11-02 Arash Esbati <arash@gnu.org>
+
+ * style/fancyvrb.el (LaTeX-fancyvrb-key-val-options): Add vspace key.
+
+2018-10-31 Arash Esbati <arash@gnu.org>
+
+ Improve style/fancyvrb.el
+
+ * style/fancyvrb.el (LaTeX-fancyvrb-arg-define-macro): Refactor
+ code. Cater for starred version of user defined macros. Add
+ missing `,' in backquote constructs.
+ (LaTeX-fancyvrb-arg-define-environment): Refactor code.
+ ("fancyvrb"): Add \Verb* macro incl. fontification.
+
+2018-10-31 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Deal with space in path of MikTeX gs executable (Bug#32251)
+
+ * preview.el.in (preview-gs-command): Wrap gs with
+ `shell-quote-argument' in case it has space in its path.
+
+2018-10-31 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Change regexp for clarity
+
+ * preview.el.in (preview--decode-^^ab): Change regexp "[\x00-\xFF]+" to
+ "[^[:multibyte:]]+" for clarity that it matches raw 8-bit bytes.
+
+2018-10-30 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Make style hooks associated with class options valid again
+
+ * latex.el (TeX-latex-mode): Add a function on `TeX-update-style-hook'
+ to run style hooks associated with class options.
+ (LaTeX-common-initialization): Set `TeX-PDF-from-DVI' to suitable
+ value when a class option "dvips" or "dvipdfmx" is given.
+ * style/geometry.el ("geometry"):
+ * style/graphicx.el ("graphicx"): Set `TeX-PDF-from-DVI' to "Dvipdfmx"
+ when a package option "dvipdfmx" is given.
+ * tests/latex/latex-test.el (LaTeX-style-hook-with-class-option): New
+ test.
+
+2018-10-30 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Deal with partial ^^-quoting in preview-latex
+
+ If latex outputs a multibyte character as a mixture of raw 8-bit byte
+ and byte with ^^-quoting, we have to decode them as a whole.
+
+ * preview.el.in (preview--decode-^^ab): Include raw 8-bit bytes which
+ already exist in the string as well when decoding with the given
+ coding system.
+ * tests/latex/preview-latex-test.el: New test.
+
+2018-10-20 Arash Esbati <arash@gnu.org>
+
+ Extract caption for RefTeX's label context
+
+ * style/listings.el (LaTeX-listings-reftex-label-context-function):
+ New function. Extract the caption in the optional argrument of
+ the lstlisting environment and return it as a string for the
+ context of a label.
+
+2018-09-07 Arash Esbati <arash@gnu.org>
+
+ Update style/lettrine.el to package version 2.21
+
+ * style/lettrine.el (LaTeX-lettrine-key-val-options): Delete
+ "Vone" option.
+ ("lettrine"): Delete \LettrineVonefalse macro.
+
+2018-08-25 Arash Esbati <arash@gnu.org>
+
+ Update style/lettrine.el to package version 2.1
+
+ * style/lettrine.el (LaTeX-lettrine-key-val-options): Add new keys
+ "Vone" and "refstring".
+ ("lettrine"): Add new macros, minor rearrangements.
+
+2018-08-09 Arash Esbati <arash@gnu.org>
+
+ Update style/lettrine.el to package version 2.01
+
+ * style/lettrine.el (LaTeX-lettrine-key-val-options): Update
+ key=val options.
+ ("lettrine"): Use correct functions on counters and
+ lengths/dimensions provided by lettrine.sty.
+ Add support for missing macros.
+
+2018-08-09 Arash Esbati <arash@gnu.org>
+
+ Add new style/ocg-p.el and style/ocgx.el
+
+ * Makefile.in (STYLESRC): Add new styles.
+
+ * style/ocg-p.el:
+ * style/ocgx.el: New files.
+
+2018-07-17 Arash Esbati <arash@gnu.org>
+
+ Add \eqref to RefTeX's reference styles
+
+ * style/amsmath.el ("amsmath"): Add \eqref to
+ `reftex-ref-style-alist' when RefTeX is loaded and activate the
+ reference style.
+
+2018-07-12 Arash Esbati <arash@gnu.org>
+
+ Add new style/thmtools.el and style/thm-restate.el
+
+ * Makefile.in (STYLESRC): Add new styles.
+
+ * style/thmtools.el:
+ * style/thm-restate.el: New files.
+
+2018-07-09 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Fix regression of `TeX-view'
+
+ * tex-buf.el (TeX-active-master): Add dummy argument for
+ compatibility. In `TeX-view', `TeX-commmand' is called with
+ `TeX-active-master', so the `file' argument is `TeX-active-master'
+ in subsequent call of `TeX-command-expand'. In that case,
+ `TeX--master-or-region-file-with-extra-quotes' calls
+ `TeX-active-master' with three arguments.
+ (TeX--master-or-region-file-with-extra-quotes): Adapt doc string.
+ * tex.el (TeX-expand-list-builtin): Adapt comment.
+ * tests/tex/command-expansion.el (TeX-command-expand-active-master):
+ New test.
+
+2018-07-07 Arash Esbati <arash@gnu.org>
+
+ Add new style/marginnote.el
+
+ * Makefile.in (STYLESRC): Add new style.
+
+ * style/marginnote.el: New file.
+
+2018-07-05 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Fix possible endless loop
+
+ * tex.el (TeX-expand-list-builtin): Use symbol `file' for the entry
+ "%T" so that special treatment for `file' about advancing matching
+ position in `TeX-command-expand' takes effect.
+ * tests/tex/command-expansion.el (TeX-command-expand-skip-file-name):
+ New test.
+
+2018-06-17 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Adjust test for known emacs bug
+
+ * tests/latex/latex-test.el (LaTeX-includegraphics-extensions): Mark
+ emacs 26.1 as expected failure.
+
+2018-06-04 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Make preamble caching robust to LuaLaTeX and (u)pLaTeX
+
+ * preview.el.in (preview-cache-preamble): Modify .ini code so that
+ LaTeX variants even without \pdfoutput can read unusual file names
+ (with space or non-ascii character, or both) when preamble cache is
+ enabled. The modified .ini code is kindly provided by jfbu
+ <jfbu@free.fr>.
+ (preview-dump-replacements, preview-undump-replacements): Add
+ -file-line-error option to the undump- variable so that AUCTeX can
+ analyse the output from lualatex even with file name with space.
+ It turned out that -kanji option is needed for platex even when
+ dumping format file if the preamble contains Japanese characters.
+ Thus modify the both variables so that -kanji option, if any, is
+ retained.
+ (TeX-inline-preview-internal): Revert the additional post process of
+ the command line string introduced last year by me because it is no
+ longer necessary by the above change on
+ `preview-undump-replacements'. Though this change disables -jobname
+ option again when lualatex is used with preamble cache, it would be
+ fine because that concerns only very old lualatex binaries and that
+ had always been the state before my commit just a year ago.
+ The above three modifications fix bug#31685 and bug#31686.
+ * tests/japanese/preview-latex.el
+ (japanese-preview-preserve-kanji-option2): Arrange with the above
+ change.
+ (japanese-preview-preserve-kanji-option3): New test.
+ (japanese-preview-error-quote-shift-jis): Remove spurious backslash.
+ * doc/preview-latex.texi (Key bindings and user-level lisp functions):
+ Add description about restriction of preamble cache on LaTeX variants.
+
+2018-06-09 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Raise robustness of call of dvipng command
+
+ * preview.el.in (preview-dvipng-command): Remove spurious quotes which
+ cause error for file names with space. (bug#31684)
+ (preview-dvipng-color-string): Replace single quotes with double
+ quotes for w32 users.
+ * doc/preview-latex.texi: (The preview images): Add warning that
+ (u)pLaTeX is not compatible with dvipng.
+
+2018-05-31 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Add note and test about the change involving non-ascii file name
+
+ * doc/changes.texi (News in 12.2): Add note that support for standard
+ LaTeX without e-TeX extension is now very limited.
+ * tests/tex/command-expansion.el (TeX-command-detokenize): New test to
+ check whether \input and \detokenize are supplied when necessary.
+
+2018-05-28 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ TL 2018 non-ascii file name fix for preview-latex
+
+ * preview.el.in (preview-LaTeX-command): Wrap file name after implicit
+ \input in \detokenize{}.
+ (preview-cache-preamble): Arrange the ini file code so that non-ascii
+ file name can be used with generated format file. Be careful not to
+ lose capability of handling file name with space.
+ (preview-undump-replacements): Use new TeX macro defined in the above
+ ini file code to accept even unusual file name with non-ascii
+ character or space.
+ Delegate quoting of format name to `TeX-inline-preview-internal' so
+ that non-ascii character will not be quoted twice.
+ (TeX-inline-preview-internal): Adjust to the above change.
+
+2018-05-28 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Accept non-ascii file name in accord with change in TL 2018
+
+ * tex.el (TeX-expand-list-builtin): Add new entry %T. Same as %t,
+ except to enclose with \detokenize{} for non UTF-8 LaTeX when \input
+ is supplmented.
+ Adjust the entries %` and %' so that \input is supplemented only when
+ any TeX code is present between them and leave the bind to
+ `TeX-command-text' for later examination.
+ The bind to `TeX-command-pos' is no longer retained.
+ (TeX-command-list): Use %T for "LaTeX".
+ Adjust "TeX" and "AmSTeX" as the same with "LaTeX" in the aspect that
+ user can supply one's own TeX code, as well as any command line
+ options, through `TeX-command-extra-options'.
+ * tex-buf.el (TeX--master-or-region-file-with-extra-quotes): New
+ function to act as a wrapper of `TeX-master-file' and
+ `TeX-region-file' inside `TeX-command-expand'.
+ (TeX-command-expand): Use the above function as the value of `file'
+ and get rid of tricky temporal overriding of `file' with lambda form.
+ (TeX-region-create): Make the first line parsing of %&FORMAT
+ construct, if any, to be valid even for region compilation.
+ Discard text properties when constructing the content of _region_.tex.
+ Drop bind check for `buffer-file-coding-system'.
+ * tests/tex/command-expansion.el (TeX-command-expansion): Reflect the
+ change that \input is not necessarily supplemented now by %`-%' pair
+ in `TeX-command-expand'.
+
+2018-05-28 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Fix region compilation with \usepackage[utf8]{inputenc}
+
+ * tex-buf.el (TeX-quote-filename): Wrap non-ascii characters in
+ \unexpanded{} for non UTF-8 LaTeX so that raw file name is recovered.
+
+2018-05-27 Arash Esbati <arash@gnu.org>
+
+ Quote %b expansion string for Zathura
+
+ * tex.el (TeX-view-program-list-builtin): Guard %b expansion
+ string for Zathura with quotes for file names with spaces
+ (bug#31451).
+
+2018-05-14 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Prepare for UTF-8 with BOM
+
+ * tex-buf.el (TeX-adjust-process-coding-system): Don't use
+ `utf-8-with-signature' to encode keyboard input for TeX process.
+ Drop mule feature check.
+
+2018-05-14 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Drop compatibility code for older emacsen in preview-latex
+
+ We no longer need messy treatment with regard to coding system in
+ preview-latex since xemacs isn't supported anymore.
+
+ * preview.el.in (preview-coding-system): Remove.
+ (preview-error-quote): Simplify. Discard RUN-CODING-SYSTEM argument.
+ (preview--decode-^^ab): Drop mule feature check.
+ (preview--convert-^^ab): Drop compatibility code for older emacsen.
+ (preview-parse-messages): Remove `run-coding-system' argument from
+ calls to `preview-error-quote'.
+ (TeX-inline-preview-internal): Drop codes related to coding system.
+ * prv-emacs.el (preview-buffer-recode-system): Remove.
+ * tests/japanese/preview-latex.el
+ (japanese-preview-error-quote-shift-jis): Remove `shift_jis' argument
+ from call to `preview-error-quote'.
+ Remove unnecessary let bind on `TeX-japanese-process-output-coding-system'.
+ (japanese-preview-process-coding-system): Remove.
+ (japanese-preview-shift-jis):
+ (japanese-preview-different-coding-system): Use `copy-sequence' on
+ `process-environment' in order to guard it from temporal `setenv'.
+
+2018-05-11 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Support UTF-8 with BOM in Japanese TeX documents
+
+ * tex-jp.el (japanese-TeX-coding-ejsu): Consider the case the document
+ is encoded in UTF-8 with BOM, which begins to be supported in TeXLive
+ 2018.
+
+2018-05-10 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Replace another cl function with cl-lib
+
+ * style/pstricks.el (eval-when-compile): Require cl-lib.
+ (LaTeX-pst-cleanup): Replace `caddr' with `cl-caddr'.
+
+2018-05-09 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Update URLs further
+
+ * COPYING:
+ * Makefile.in:
+ * RELEASE:
+ * bib-cite.el:
+ * build-aux/gitlog-to-auctexlog:
+ * latex/README:
+ * latex/preview.dtx:
+ * preview.el.in:
+ * style/foils.el:
+ * style/hyperref.el:
+ * style/ifluatex.el:
+ * style/luatextra.el:
+ * style/mathtools.el:
+ * style/pstricks.el:
+ * tests/Makefile:
+ * tex-buf.el:
+ * tex.el: Update URLs. Use https: rather than http: or ftp: where
+ possible.
+ * build-aux/gitlog-to-changelog: Update URLs.
+ Use `before-save-hook' instead of obsolete `write-file-hooks' in
+ Local Variables section.
+
+2018-05-07 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Update URLs
+
+ * tex-site.el.in:
+ * doc/auctex.texi:
+ * doc/fdl.texi:
+ * doc/install.texi:
+ * doc/intro.texi:
+ * doc/preview-readme.texi:
+ * doc/wininstall.texi: Update URLs. Use https: rather than http: or
+ ftp: where possible.
+ * auctex.spec: Update URLs. Use https: rather than http: or
+ ftp: where possible.
+ Remove xemacs support.
+ Update required emacs version.
+
+2018-05-06 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Adjust coding system for Japanese pTeX engine on w32
+
+ Default coding system of Japanese pTeX engine in w32 TeXLive changed
+ from SHIFT JIS to UTF-8 in 2018. Make tex-jp.el to work with both
+ TeXLive 2017 and 2018 on w32 platform, with higher priority on newer
+ engine with regard to the behavior in non default case.
+
+ * tex-jp.el (japanese-TeX-use-kanji-opt-flag): Set default value to t
+ even on w32 platform.
+ (japanese-TeX-set-process-coding-system): Change coding system for non
+ default case from `shift_jis' to `utf-8' on w32 platform.
+ (TeX-expand-list-builtin): Remove mule feature check.
+
+2018-05-05 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Remove obsolete option related to Japanese TeX
+
+ * tex-jp.el (japanese-TeX-command-list): Remove. Ataka-san and I
+ (Ikumi) discussed this topic and decided to delete this option.
+ * doc/auctex.texi (Japanese): Mention the above change.
+
+2018-05-04 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Fix previous removal of xemacs compatibility code
+
+ * toolbar-x.el (toolbarx-default-toolbar-meaning-alist): Remove
+ spurious quote formerly inside "," construct.
+ Replace "`" with "'".
+
+2018-04-26 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Prevent spurious newlines to be added
+
+ * tex-fold.el (TeX-fold-overfull-p): Restore mandatory `and'. The
+ removal of xemacs compatibility code previously done was a bit too
+ aggressive.
+
+2018-04-16 Arash Esbati <arash@gnu.org>
+
+ Update key=val options to geometry package v5.8
+
+ * style/geometry.el (LaTeX-geometry-preamble-key-val-options): Add
+ new keys luatex, dvipdfmx and xdvipdfmx. Delete duplicate
+ entries.
+
+2018-04-12 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Correct how `TeX-record-buffer' is used
+
+ * tex-buf.el (TeX-pop-to-buffer): Use `TeX-record-buffer' in accord with
+ the documents.
+ * doc/changes.texi: Mention the change and warn users who have
+ customized the option.
+
+2018-04-12 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Correct record in changes.texi
+
+ * doc/changes.texi (): Make a new section for release 12.2 and move
+ mention about change made after release 12.1 there.
+
+2018-04-07 Arash Esbati <arash@gnu.org>
+
+ Quote %b expansion string for SumatraPDF
+
+ * tex.el (TeX-view-program-list-builtin): Guard %b expansion
+ string for SumatraPDF with quotes for file names with spaces
+ (bug#30999).
+
+2018-04-01 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Add support for dvipdfmx to \includegraphics
+
+ * style/graphicx.el (LaTeX-includegraphics-extensions-list): Add
+ support for dvipdfmx.
+ * tests/latex/latex-test.el (LaTeX-includegraphics-extensions): New
+ test to check whether correct extensions are generated.
+
+2018-04-01 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Use `TeX-search-files-by-type' to assist input \includegraphics
+
+ * style/graphicx.el (LaTeX-includegraphics-extensions-list): New
+ function.
+ (LaTeX-includegraphics-extensions): Delegate most of its task to the
+ above new function and become its wrapper.
+ (LaTeX-includegraphics-global-files): New variable.
+ (LaTeX-includegraphics-read-file-TeX): Use `TeX-search-files-by-type'
+ rather than `TeX-search-files' and cache global value in the above
+ new variable.
+ Reflect the option `LaTeX-includegraphics-strip-extension-flag'.
+ * tex.el (TeX-search-files-type-alist): Remove `graphics' entry,
+ which is supplied in latex-mode by `LaTeX-search-files-type-alist'.
+ (TeX-normal-mode): Add `LaTeX-includegraphics-global-files' to list of
+ variables to be cleared.
+
+2018-04-01 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Resolve conflict of argument spec between regexp and literal
+
+ * tex.el (TeX-search-files-kpathsea): Treat EXTENSIONS argument as a
+ list of regexps in accordance with other parts of AUCTeX.
+ (TeX-ispell-document): Treat `TeX-file-extensions' as a list of
+ regexps in accordance with other parts of AUCTeX.
+ (TeX-file-extensions, TeX-Biber-file-extensions):
+ (BibTeX-file-extensions, BibLaTeX-style-extensions):
+ (BibTeX-style-extensions): Change custom type to regexp from string.
+ (TeX-doc-extensions): Turn into list of regexps.
+ * latex.el (LaTeX-split-bibs): Treat `TeX-Biber-file-extensions' as a
+ list of regexps in accordance with other parts of AUCTeX.
+
+2018-03-29 Alex Branham <branham@utexas.edu>
+
+ Fix TeX-dwim-master
+
+ * tex.el (TeX-dwim-master): `cl-return' is much easier to work with if
+ we're alerady using cl- functions, so convert `dolist' to `cl-loop.'
+
+2018-03-29 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Make `TeX-clean' to work in ams-tex-mode
+
+ * plain-tex.el (AmSTeX-clean-intermediate-suffixes,
+ AmSTeX-clean-output-suffixes): New customize options.
+ (AmS-TeX-mode-hook): Move from tex.el.
+ (AmSTeX-mode-command-menu, AmSTeX-mode-menu): Fix doc strings.
+ (): Update copyright year.
+ * tex.el (TeX-mode-prefix): Add an entry for AmS-TeX.
+ (AmS-TeX-mode-hook): Move to plain-tex.el.
+
+2018-03-29 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Make compatible with emacs 24
+
+ * latex.el (TeX-read-label): Use `format' instead of `format-message'
+ if the latter is not available.
+
+2018-03-29 Jonathan Underwood <jonathan.underwood@gmail.com>
+
+ Fix incorrect FSF address
+
+ * multi-prompt.el ():
+ * style/comment.el ():
+ * style/latexinfo.el (): Fix incorrect FSF address and whitespaces.
+
+2018-03-17 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ * style/amsmath.el ("amsmath"): Correct \cfrac spec.
+
+2018-03-16 Alex Branham <branham@utexas.edu>
+
+ * tex.el (TeX-dwim-master): Prefer `cl-return' over `return'.
+
+2018-03-12 Arash Esbati <arash@gnu.org>
+
+ * font-latex.el (font-latex--get-script-props): Use `cl-case' instead of `case'.
+
+2018-03-04 Arash Esbati <arash@gnu.org>
+
+ Add new function `TeX-arg-verb-delim-or-brace'
+
+ * latex.el (TeX-arg-verb-delim-or-brace): New function for \verb
+ like macros which take their argument either in delimiters or in
+ braces.
+
+ * doc/auctex.texi (Adding Macros): Document
+ `TeX-arg-verb-delim-or-brace'.
+
+ * style/listings.el ("listings"): Use
+ `TeX-arg-verb-delim-or-brace' for \lstinline which also takes an
+ optional argument.
+
+ * style/minted.el (LaTeX-minted-auto-cleanup, "minted"): Use
+ `TeX-arg-verb-delim-or-brace' for \mintinline and new macros
+ defined with \newmintinline.
+
+ * style/url.el ("url"): Use `TeX-arg-verb-delim-or-brace' for \url
+ and \path.
+ Remove "{" from fontification or \url and \path.
+
+2018-03-01 Alex Branham <branham@utexas.edu>
+
+ Remove cl from AUCTeX
+
+ * tex.el: replace last 'cl with 'cl-lib
+ * latex.el: replace cl function with cl-lib function
+
+2018-03-01 Alex Branham <branham@utexas.edu>
+
+ Refine how we setup flymake backend function
+
+ * latex.el: Add LaTeX-flymake to TeX-latex-mode
+ * latex-flymake.el: Don't add to LaTeX-mode-hook
+
+2018-02-21 Alex Branham <branham@utexas.edu>
+
+ Improve flymake documentation
+
+ * doc/changes.texi:
+ * doc/auctex.texi (Checking): Add Flymake support to manual.
+
+ * latex-flymake.el: Add copyright notice and fix a quote.
+
+2018-02-20 Arash Esbati <arash@gnu.org>
+
+ * Makefile.in (AUCSRC): Add new file latex-flymake.el.
+
+2018-02-18 Arash Esbati <arash@gnu.org>
+
+ * style/babel.el (LaTeX-babel-active-languages): Use `cl-pushnew'.
+
+2018-02-17 Mos¨ Giordano <mose@gnu.org>
+
+ Replace cl with cl-lib in other files
+
+ * latex.el (LaTeX-hanging-ampersand-position):
+ * tex-fold.el (require):
+ (TeX-fold-region-macro-or-env):
+ (TeX-fold-update-at-point):
+ * tex-info.el (require):
+ (Texinfo-make-node-list):
+ * toolbar-x.el (require):
+ (toolbarx-good-option-list-p): Replace cl with cl-lib and corresponding macros.
+
+2018-02-17 Mos¨ Giordano <mose@gnu.org>
+
+ Explicitly require Emacs 24
+
+ * tex.el: Error when Emacs < 24 is used.
+
+2018-02-17 Alex Branham <branham@utexas.edu>
+
+ Support flymake in Emacs 26+ using chktex
+
+ * latex-flymake.el: New file.
+ * latex.el (require): Require `latex-flymake' in Emacs >= 26.
+
+2018-02-17 Alex Branham <branham@utexas.edu>
+
+ Replace cl with cl-lib
+
+ * bib-cite.el (require):
+ (psg-list-env):
+ * font-latex.el (require):
+ * latex.el (require):
+ * style/babel.el (require):
+ * style/caption.el (require):
+ (LaTeX-caption-update-key-val-options):
+ * style/empheq.el (require):
+ (LaTeX-empheq-update-key-val-options):
+ * style/enumitem.el (require):
+ (LaTeX-enumitem-update-key-val-options):
+ ("enumitem"):
+ * style/floatrow.el (require):
+ (LaTeX-floatrow-update-key-val-options):
+ * style/fvextra.el (require):
+ (LaTeX-fvextra-update-key-val):
+ * style/listings.el (require):
+ (LaTeX-listings-update-style-key):
+ * style/mdframed.el (require):
+ (LaTeX-mdframed-update-style-key):
+ * style/tcolorbox.el (require):
+ (LaTeX-tcolorbox-update-style-key): Replace cl with cl-lib.
+
+2018-01-25 Alex Branham <branham@utexas.edu>
+
+ Remove some obsolete functions
+
+ * font-latex.el (font-latex-syntactic-face-function):
+ * preview.el.in (preview-gs-restart):
+ * tex-buf.el (TeX-run-background):
+ (TeX-run-silent):
+ * tex.el:
+ (TeX-source-correlate-handle-TeX-region):
+ (TeX-insert-macro):
+ (TeX-doc):
+ * texmathp.el (texmathp): Now that AuCTeX requires GNU Emacs 24.1 or greater, we
+ can remove some functions that are obsolete in Emacs < 24.1
+
+2018-01-12 Mos¨ Giordano <mose@gnu.org>
+
+ Do not actually write bug report instructions
+
+ * tex.el (TeX-submit-bug-report): Use `propertize' to show instructions without
+ writing them in the message.
+
+2017-12-29 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Make sure `process-environment' is recovered after temporal setenv
+
+ * preview.el.in (TeX-inline-preview-internal): Since `setenv' operates
+ destructively on `process-environment', use `copy-sequence' for
+ maximal safety in order to guard its list structure.
+
+2017-12-28 Arash Esbati <arash@gnu.org>
+
+ Add fontification for some core macros
+
+ * font-latex.el (font-latex-built-in-keyword-classes): Add macros
+ \addvspace, \raggedright and \raggedleft to function class.
+
+2017-12-27 Arash Esbati <arash@gnu.org>
+
+ * texmathp.el (texmathp-tex-commands-default): Add entries for breqn.sty.
+
+2017-12-21 Mos¨ Giordano <mose@gnu.org>
+
+ Restore some code erroneously removed from font-latex.el
+
+ * font-latex.el (font-latex-make-sectioning-faces):
+ (font-latex-user-keyword-classes):
+ (font-latex-slide-title-face): Restore code.
+
+2017-12-21 Mos¨ Giordano <mose@gnu.org>
+
+ Restore loading of prv-emacs
+
+ * preview.el.in: Require prv-emacs.
+
+2017-12-20 Mos¨ Giordano <mose@gnu.org>
+
+ Remove compatibility code for XEmacs in toolbar-x.el
+
+ * toolbar-x.el (toolbarx--if-when-compile): Remove macro no more needed.
+ (toolbarx-emacs-mount-popup-menu):
+ (toolbarx-mount-popup-menu):
+ (toolbarx-test-image-type):
+ (toolbarx-test-button-type):
+ (toolbarx-test-toolbar-type):
+ (toolbarx-find-image):
+ (toolbarx-emacs-add-button):
+ (toolbarx-refresh):
+ (toolbarx-install-toolbar):
+ (toolbarx-default-toolbar-meaning-alist): Remove code for compatibility with
+ XEmacs.
+ (toolbarx-xemacs-mount-popup-menu):
+ (toolbarx-xemacs-image-properties):
+ (toolbarx-xemacs-button-properties):
+ (toolbarx-xemacs-refresh-process-button-or-insert-list):
+ (toolbarx-xemacs-refresh): Remove functions.
+
+2017-12-20 Mos¨ Giordano <mose@gnu.org>
+
+ Remove compatibility code for XEmacs in font-latex.el
+
+ * font-latex.el (font-latex-sectioning-5-face):
+ (font-latex-update-sectioning-faces):
+ (font-latex-make-sectioning-faces):
+ (font-latex-user-keyword-classes):
+ (font-latex-fontify-script):
+ (font-latex-verbatim-face):
+ (font-latex-slide-title-face):
+ (font-latex-setup): Remove code for compatibility with XEmacs.
+
+2017-12-20 Mos¨ Giordano <mose@gnu.org>
+
+ Remove compatibility code for XEmacs in tex-fold.el
+
+ * tex-fold.el (TeX-fold-overfull-p):
+ (TeX-fold-macro-nth-arg):
+ (TeX-fold-hide-item):
+ (TeX-fold-show-item):
+ (TeX-fold-post-command): Remove code for compatibility with XEmacs.
+
+2017-12-20 Mos¨ Giordano <mose@gnu.org>
+
+ Remove code for compatibility with very old emacsens in bib-cite.el
+
+ * bib-cite.el (bib-cite-minor-mode):
+ (bib-cite-setup-highlight-mouse-keymap):
+ (bib-cite-fontify-help-as-bibtex):
+ (bib-cite-fontify-help-as-latex):
+ (bib-etags):
+ (bib-highlight-mouse):
+ (bib-toggle-highlight):
+ (bib-guess-or-prompt-for-label):
+ (bib-etags-find-noselect): Remove compatibility code.
+
+2017-12-20 Mos¨ Giordano <mose@gnu.org>
+
+ Delte prv-xemacs.el
+
+ * prv-xemacs.el: Delete file.
+ * preview.el.in (preview): Remove code to load prv-xemacs.
+
+2017-12-20 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Remove XEmacs compatibility code in tex-jp.el
+
+ * tex-jp.el (japanese-TeX-set-process-coding-system)
+ (japanese-TeX-coding-ejsu): Remove code for compatibility with
+ XEmacs.
+
+2017-12-20 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Delete unused options
+
+ * tex-jp.el (japanese-TeX-command-default,
+ japanese-LaTeX-command-default): Remove them because they are no
+ longer used anywhere in the current code. Ataka-san and I (Ikumi)
+ discussed this matter and agreed to dismiss them.
+ * doc/auctex.texi: Reflect the above change.
+
+2017-12-19 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Make sure `LaTeX-default-options' is honored
+
+ * latex.el (TeX-arg-document): Use `LaTeX-default-options' as default
+ of class options even when the respective `LaTeX-XXXX-class-options'
+ is not set.
+
+2017-12-17 Arash Esbati <arash@gnu.org>
+
+ Update style/bidi.el to package version 31.7
+
+ * style/bidi.el (LaTeX-bidi-package-options): Add
+ "extrafootnotefeatures" option.
+ (LaTeX-env-bidi-bib): New function.
+ ("bidi"): Add missing macros and environments. Add fontification
+ support.
+
+2017-12-17 Arash Esbati <arash@gnu.org>
+
+ Add fontification for some core macros
+
+ * font-latex.el (font-latex-built-in-keyword-classes): Fontify
+ core macros \marginpar (reference), \LaTeXe (function) and
+ \bibitem (textual).
+
+2017-12-17 Mos¨ Giordano <mose@gnu.org>
+
+ Change encoding of Elisp source files to UTF-8
+
+ * style/alphanum.el:
+ * style/dk-bib.el:
+ * style/doc.el:
+ * style/inputenc.el:
+ * style/jura.el:
+ * style/ltx-base.el:
+ * style/ltxdoc.el:
+ * tex-font.el:
+ * tex.el: Change coding of files to UTF-8. Now that we require Emacs >= 24 it
+ is always possible to use this encoding.
+
+2017-12-17 Mos¨ Giordano <mose@gnu.org>
+
+ Remove code for compatibility with old Emacsens in tex.el
+
+ * tex.el: Always require `crm', which is available in all supported version of
+ Emacs.
+ (TeX-completing-read-multiple): Remove function definition for XEmacs.
+ (TeX-view-predicate-list-builtin):
+ (TeX-source-correlate-sync-source):
+ (TeX-tree-expand):
+ (TeX-comment-forward): Remove code for compatibility with old Emacsens.
+
+2017-12-17 Mos¨ Giordano <mose@gnu.org>
+
+ Remove TeX-line-number-at-pos
+
+ * tex.el (TeX-line-number-at-pos): Remove function and alias.
+ * style/pdfsync.el (LaTeX-pdfsync-output-page):
+ * tex-info.el (Texinfo-make-node-list): Replace `TeX-line-number-at-pos' with
+ `line-number-at-pos'.
+
+2017-12-17 Mos¨ Giordano <mose@gnu.org>
+
+ Remove XEmacs compatibility code in tex.el
+
+ * tex.el (TeX-source-correlate-gnuserv-p):
+ (TeX-source-correlate-map):
+ (VirTeX-common-initialization):
+ (TeX-mode-map):
+ (TeX-search-syntax-table): Remove code for compatibility with XEmacs.
+
+2017-12-17 Mos¨ Giordano <mose@gnu.org>
+
+ Remove TeX-how-many function
+
+ * tex.el (TeX-how-many): Remove function.
+ * latex.el (LaTeX-hanging-ampersand-position): Replace `TeX-how-many' with
+ `how-many'.
+
+2017-12-17 Mos¨ Giordano <mose@gnu.org>
+
+ Remove TeX-assoc-string
+
+ * tex.el (TeX-assoc-string): Remove alias.
+ (TeX-add-style-hook):
+ (TeX-unload-style):
+ (TeX-run-style-hooks):
+ * tex-info.el (Texinfo-nodename-de-escape):
+ (Texinfo-nodename-escape): Replace `TeX-assoc-string' with `assoc-string'.
+
+2017-12-17 Mos¨ Giordano <mose@gnu.org>
+
+ Remove TeX-deactivate-mark
+
+ * tex.el (TeX-deactivate-mark): Remove function.
+ (TeX-argument-insert):
+ * latex.el (LaTeX-env-item):
+ * style/currvita.el (LaTeX-currvita-env-with-label):
+ * style/dinbrief.el (LaTeX-dinbrief-insert):
+ (LaTeX-dinbrief-env-recipient):
+ * style/enumitem.el (LaTeX-enumitem-env-with-opts):
+ * style/moodle.el (LaTeX-moodle-question-env-with-args):
+ * style/tcolorboxlib-raster.el (LaTeX-tcolorbox-lib-raster-env-item): Replace
+ `TeX-deactivate-mark' with `deactivate-mark'.
+
+2017-12-17 Mos¨ Giordano <mose@gnu.org>
+
+ Remove old compat functions for commenting and uncommenting
+
+ * tex.el (TeX-comment-regio):
+ (TeX-comment-or-uncomment-region):
+ (TeX-uncomment-region): Remove old compatibility functions.
+ * context.el (ConTeXt-mode-menu):
+ * latex.el (LaTeX-mode-menu):
+ * plain-tex.el (plain-TeX-menu-entries):
+ * tex-info.el (Texinfo-mode-menu):
+ * tex.el (TeX-mode-map):
+ (TeX-in-comment):
+ (TeX-in-commented-line): Replace compat functions with standard functions.
+
+2017-12-16 Mos¨ Giordano <mose@gnu.org>
+
+ Remove XEmacs compatibility code in latex.el
+
+ * latex.el (LaTeX-largest-level-set):
+ (LaTeX-after-insert-env-hook):
+ (LaTeX-indent-line):
+ (LaTeX-fill-region-as-paragraph):
+ (LaTeX-fill-newline):
+ (LaTeX-common-initialization): Remove code for compatibility with XEmacs.
+ (LaTeX-fill-delete-newlines): Remove function, no more needed.
+ (LaTeX-fill-region-as-para-do): Replace `LaTeX-fill-delete-newlines' with
+ `fill-delete-newlines'.
+
+2017-12-16 Mos¨ Giordano <mose@gnu.org>
+
+ Remove XEmacs compatibility code in tex-buf.el
+
+ * tex-buf.el (TeX-record-buffer): Always define this option.
+ (TeX-recenter-output-buffer):
+ (TeX-previous-error):
+ (TeX-parse-TeX): Remove code for compatibility with XEmacs.
+ (TeX-parse-error): Fix a bug in the regexp.
+ (TeX-error-overview): Remove check for Emacs version. Now this works in all
+ supported versions.
+
+2017-12-10 Mos¨ Giordano <mose@gnu.org>
+
+ * Version 12.1 released.
+
+2017-12-09 Mos¨ Giordano <mose@gnu.org>
+
+ Remove references to old Emacsen from the manual
+
+2017-12-07 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Remove references to XEmacs from the manual
+
+ * doc/intro.texi:
+ * doc/preview-faq.texi:
+ * doc/preview-latex.texi:
+ * doc/preview-readme.texi: Remove references to XEmacs.
+
+2017-12-04 Mos¨ Giordano <mose@gnu.org>
+
+ Remove references to XEmacs from the manual
+
+ * doc/auctex.texi:
+ * doc/faq.texi:
+ * doc/install.texi:
+ * doc/preview-faq.texi:
+ * doc/preview-latex.texi:
+ * doc/preview-problems.texi:
+ * doc/quickstart.texi:
+ * doc/tex-ref.tex:
+ * doc/todo.texi:
+ * doc/wininstall.texi: Remove references to XEmacs.
+
+2017-12-03 Mos¨ Giordano <mose@gnu.org>
+
+ Prepare for new brand-new series of AUCTeX
+
+ * RELEASE: Update version number and release notes.
+ * doc/changes.texi: Update.
+ * configure.ac:
+ * doc/tex-ref.tex:
+ * latex/preview.dtx: Update version number.
+ * tex-site.el.in: Require Emacs 24 of higher.
+
+2017-12-03 Mos¨ Giordano <mose@gnu.org>
+
+ * Version 11.92 released.
+
+2017-12-03 Mos¨ Giordano <mose@gnu.org>
+
+ Prepare for upcoming release
+
+ * RELEASE: Update version number and release notes.
+ * doc/changes.texi: Mention bug fixes.
+ * configure.ac:
+ * doc/tex-ref.tex:
+ * latex/preview.dtx: Update version number.
+
+2017-12-03 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Fix auto detect of kpathsea delimeter
+
+ * tex.el (TeX-kpathsea-detect-path-delimiter): New function.
+ (TeX-kpathsea-path-delimiter): Use it to obtain the default value.
+ (TeX-tree-expand): Use it to simplify auto detection method.
+ Use `TeX-kpathsea-path-delimiter' for argument given to kpsewhich
+ command. Using constant ";" is completely wrong for most kpsewhich
+ implementation.
+
+2017-11-30 Arash Esbati <arash@gnu.org>
+
+ Get rid of `delete-dups'
+
+ * style/caption.el (LaTeX-caption-update-key-val-options):
+ * style/enumitem.el (LaTeX-enumitem-update-key-val-options):
+ * style/floatrow.el (LaTeX-floatrow-update-key-val-options):
+ * style/graphicx.el (LaTeX-includegraphics-extensions):
+ * style/listings.el (LaTeX-listings-update-style-key):
+ * style/mdframed.el (LaTeX-mdframed-update-style-key):
+ * style/menukeys.el (TeX-arg-menukeys-newmenumacro): Replace
+ `delete-dups' with `TeX-delete-duplicate-strings'.
+
+2017-11-30 Arash Esbati <arash@gnu.org>
+
+ * style/longtable.el ("longtable"): Use `make-local-variable'.
+
+ * tex-ispell.el: Add entry for "xltabular" environment.
+
+2017-11-30 Arash Esbati <arash@gnu.org>
+
+ Fix style/xltabular.el
+
+ * style/xltabular.el (LaTeX-xltabular-skipping-regexp): New variable.
+ (LaTeX-env-xltabular):
+ (LaTeX-item-xltabular): New function.
+ ("xltabular"): Use the above functions in the style hook.
+
+2017-11-30 Mos¨ Giordano <mose@gnu.org>
+
+ Reduce code duplication in tests
+
+ * tests/make-test-deps.emacs-lisp: New file.
+ * tests/Makefile (%.log): Load it make-test-deps.emacs-lisp when running tests.
+ * tests/context/context-test.el:
+ * tests/japanese/error-parsing.el:
+ * tests/japanese/parse-timing.el:
+ * tests/japanese/preview-latex.el:
+ * tests/latex/latex-test.el:
+ * tests/tex/error-parsing.el:
+ * tests/tex/path-expansion.el:
+ * tests/tex/utility.el: Remove code moved to make-test-deps.emacs-lisp.
+
+2017-11-30 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Revert wrong test
+
+ * tests/tex/path-expansion.el (TeX-kpathsea-delimiter-w32): Remove.
+
+2017-11-30 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Add style path explicitly
+
+ * tests/japanese/error-parsing.el ():
+ * tests/japanese/parse-timing.el ():
+ * tests/japanese/preview-latex.el (): Add "style" subdirectory in the
+ repository to `TeX-style-path' so we can load style files inside tests.
+
+2017-11-29 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Re-implement auto-detect of path separator from kpsewhich output
+
+ * tex.el (TeX-kpathsea-path-delimiter): Accept t for Autodetect again
+ and make it default on w32 platform.
+ (TeX-tree-expand): Use heuristics as much as possible to determine the
+ path separator, paying attention to the case that it cannot be
+ determined.
+
+2017-11-23 Tassilo Horn <tsdh@gnu.org>
+
+ Don't set company-minimum-prefix-length in tex mode buffers
+
+ * tex.el (VirTeX-common-initialization): Don't set
+ company-minimum-prefix-length in tex mode buffers.
+
+ AUCTeX used to set company-minimum-prefix-length to 1 initially because there
+ aren't too many TeX completions provided by AUCTeX itself. However, some users
+ use multiple completion backends in TeX modes (like dabbrev for example), and
+ then the number of completion candidates increases dramatically.
+
+ Also see https://github.com/syl20bnr/spacemacs/issues/9388 and
+ https://github.com/alexeyr/company-auctex/issues/18.
+
+2017-11-19 Arash Esbati <arash@gnu.org>
+
+ * doc/changes.texi: Mention compatibility of preview with GS 9.22.
+
+2017-11-18 Arash Esbati <arash@gnu.org>
+
+ Improve style/epigraph.el
+
+ * style/epigraph.el ("epigraph"): Leave point inside first pair of
+ braces for \epigraph and \qitem.
+ Use `LaTeX-add-lengths' for skips instead of `TeX-add-symbols'.
+ Use `TeX-arg-length' instead of `TeX-arg-size' for \dropchapter.
+ Append qitem macro to `LaTeX-item-regexp'.
+ Improve fontification.
+
+2017-11-16 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Give proper argument to `TeX-command-expand'
+
+ * preview.el.in (TeX-inline-preview-internal): Give `TeX-region-file'
+ or `TeX-master-file' as `file' argument of `TeX-command-expand' when
+ preamble caching is enabled. This argument used to be nil, which
+ caused error when lualatex is in use. The fourth element of the
+ `luatex' entry of `TeX-engine-alist-builtin' contains "%s", which
+ eventually triggers the use of the `file' argument.
+
+2017-11-15 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Add test for the recent change about `TeX-kpathsea-path-delimiter'
+
+ * tests/tex/path-expansion.el (TeX-kpathsea-delimiter-w32): New test.
+
+2017-11-15 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Document `TeX-view-evince-keep-focus'
+
+ * doc/auctex.texi (Starting Viewers):
+ * doc/changes.texi (News in 11.92):
+ Document `TeX-view-evince-keep-focus'.
+
+2017-11-14 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Document `TeX-math-input-method-off-regexp' properly.
+
+ * doc/auctex.texi (Entering Mathematics):
+ * doc/changes.texi (News in 11.92):
+ Document `TeX-math-input-method-off-regexp'.
+
+2017-11-13 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Mention the necessity of GNU make
+
+ * doc/install.texi (Prerequisites): Add an item of GNU make.
+ Fix copyright year.
+
+2017-11-13 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Bug fix and code refactoring related to kpathsea
+
+ * tex.el (TeX-kpathsea-path-delimiter): Use `path-separator' for
+ default value. Drop t from the candidates because auto detection
+ sometimes fails for w32 platform.
+ (TeX-tree-expand): Always use `TeX-kpathsea-path-delimiter' if
+ non-nil.
+ Disable subsequent use of kpathsea if kpsewhich causes error or
+ returns non-zero exit value.
+ Accept nil for PROGRAM argument.
+ (TeX-search-files-kpathsea): Always use `TeX-kpathsea-path-delimiter' if
+ non-nil.
+ Use `TeX-tree-expand'.
+ Don't signal error even if kpsewhich causes error or returns non-zero
+ exit value.
+
+2017-11-12 Arash Esbati <arash@gnu.org>
+
+ Add new style/xltabular.el
+
+ * Makefile.in (STYLESRC): Add new style.
+
+ * style/xltabular.el: New file.
+
+2017-11-12 Arash Esbati <arash@gnu.org>
+
+ Add new function `LaTeX-env-longtable'
+
+ * style/longtable.el (LaTeX-env-longtable): Add new function.
+ Move the body of the anonymous function into this in order to make
+ it available for other styles loading longtable.
+
+2017-11-10 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ * tex.el (TeX-math-input-method-off-regexp): Turn defvar into defcustom.
+
+2017-11-06 David Kastrup <dak@gnu.org>
+
+ Remove use of .runandhide operator
+
+ Ghostscript bug 698680
+ <https://bugs.ghostscript.com/show_bug.cgi?id=698680> has been caused
+ by the removal of the .runandhide operator in Ghostscript 9.22
+ upstream. Since .runandhide has no longer been used in a
+ security-critical manner, its operation can be emulated by storing the
+ respective information in a .preview-ST variable. Potentially
+ malicious code would not be able to retrieve a non-safe "save" object
+ from here.
+
+2017-09-30 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Fix Copyright year
+
+ * context-en.el, context-nl.el, latex.el, plain-tex.el:
+ * preview.el.in, prv-xemacs.el, tex-bar.el, tex-buf.el:
+ * tex-info.el, tex-site.el.in, tex-style.el, tex.el:
+ Fix Copyright year.
+
+2017-09-21 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Cosmetic Change
+
+ * font-latex.el (font-latex-match-math-env): Quote "\[" with "\=" in
+ doc string.
+ (font-latex-add-to-syntax-alist): Delete duplicated line.
+
+2017-09-21 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Fix doc strings and comments
+
+ * plain-tex.el (TeX-plain-tex-mode, ams-tex-mode): Fix doc strings.
+ * tex-fold.el (): Fix typo.
+
+2017-09-21 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Make preview-latex parsing robust to fix Bug#20773, Bug#27088
+
+ * preview.el.in (TeX-inline-preview-internal): Set environment
+ variable max_print_line to sufficiently large value of 1000 so that
+ LaTeX process does not insert newline in lines necessary to identify
+ Bounding Boxes.
+
+2017-09-21 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Add test abount truncation of list
+
+ * tests/tex/path-expansion.el: New file to test whether
+ `TeX-search-files-by-type' does not truncate the value of list
+ variable.
+
+2017-09-18 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Prevent possible truncation of list value
+
+ * tex.el (TeX-search-files-by-type): Use
+ `TeX-delete-duplicate-strings' instead of `delete-dups'.
+
+2017-09-16 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Add a new option for evince compatible viewer.
+
+ * tex.el: (TeX-view-evince-keep-focus): New option.
+ (TeX-evince-sync-view-1): Pull the focus back to Emacs if the above
+ new option is non-nil.
+
+2017-09-15 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Make correct extensions are returned
+
+ * style/graphicx.el (LaTeX-includegraphics-extensions):
+ Fix misaligned form structure which prevented `cond' to enter clauses
+ for engines other than default.
+ Use copied list for the last argument of `append' so that
+ `delete-dups' does not alter the value of
+ `LaTeX-includegraphics-extensions'.
+ Use `delete' rather than `remove' for copied sequence.
+ ():
+ (LaTeX-includegraphics-read-file-relative):
+ Fix typos.
+
+2017-09-10 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Add test for infinite loop
+
+ * tests/tex/utility.el: New file.
+
+2017-09-10 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Parse package/class option with comments correctly
+
+ * latex.el: (LaTeX-auto-class-regexp-list): Replace the regexp for
+ RequirePackage/LoadClass option with the same one for usepackage.
+ * tests/latex/latex-test.el: Add test for the change above.
+
+2017-09-02 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Conform to elisp coding convention
+
+ * style/biblatex.el (LaTeX-arg-addbibresource)
+ (LaTeX-biblatex-package-options):
+ * style/fontspec.el (LaTeX-fontspec-arg-font):
+ Add "done" message.
+ * style/relsize.el ("relsize"): Tailor prompt string.
+ * style/bidi.el: Remove spurious execution bit.
+
+2017-08-31 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Prevent possible infinite loop
+
+ * tex.el (TeX-delete-duplicate-strings): Make sure that comparison is
+ done with valid list elements.
+ (TeX-delete-dups-by-car): Ditto.
+ Use `TeX-sort-strings' and `TeX-car-string-lessp'.
+ (TeX-car-string-lessp): Move the position of defun before the
+ defcustom of `TeX-engine'. Since the defcustom requires
+ `TeX-delete-dups-by-car' at load time, all the functions used in
+ `TeX-delete-dups-by-car' must be defined before the defcustom.
+
+2017-08-31 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Use `delete' correctly for list variable
+
+ * tex.el (TeX-search-files-kpathsea): Make sure that "." will be
+ removed from the directory list even if "." is the first element of
+ the list, when the SCOPE argument is `global'.
+
+2017-08-26 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Add test for my commit on Aug 18
+
+ * tests/japanese/parse-timing-test.tex:
+ * tests/japanese/parse-timing.el:
+ New file.
+
+2017-08-26 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Fix doc string and indent
+
+ * tex.el (TeX-PDF-from-DVI, TeX-insert-braces-alist)
+ (TeX-arg-literal, TeX-auto-add-type):
+ Fix doc string.
+ (TeX-auto-parse-region): Fix indent.
+
+2017-08-25 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Add %(PDF) when undumped format is used in preview-latex
+
+ * preview.el.in (TeX-inline-preview-internal): Make pdflatex to be
+ called when default output is PDF and dumped format is used. Although
+ it seems that if the dumped format is created by pdflatex, the format
+ produces PDF output even when the command name is (non-pdf) latex, it
+ would be better that pdflatex is used in that case, too.
+
+2017-08-20 Arash Esbati <arash@gnu.org>
+
+ Add new style/arabxetex.el
+
+ * Makefile.in (STYLESRC): Add new style.
+
+ * style/arabxetex.el: New file.
+
+2017-08-18 Vincent BelaŻche <vincent.b.1@hotmail.fr>
+
+ Improvements for tex-info.el
+
+ * tex-info.el (Texinfo-arg-nodename): Fix default prompt.
+ (Texinfo-arg-lrc): New function, used for commands that take Left,
+ Center, and Right entries for setting page header.
+ (Texinfo-arg-next-line): New function. Used to break line if need
+ be after entering command argument.
+ (Texinfo-arg-on|off): New function for entering boolean input.
+ (TeX-texinfo-mode): Add TeX symbols `allowcodebreak', `atchar',
+ `codequotebacktick', `codequoteundirected', `documentlanguage',
+ `documentencoding', `evenfooting', `evenheading', `everyfooting',
+ `everyheading', `LaTeX', `oddfooting', `oddheading',
+ `setchapternewpage', and `url'.
+
+2017-08-18 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Use #' to quote function names
+
+ * tex-jp.el (japanese-plain-tex-mode-initialization,
+ add-hook, japanese-latex-mode-initialization,
+ japanese-TeX-reset-mode-name, TeX-insert-punctuation):
+ Use #' to quote function names.
+
+2017-08-18 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Delay setting Japanese TeX engine in `japanese-latex-mode'
+
+ * tex-jp.el (japanese-latex-mode-initialization): The part which
+ guesses and sets `TeX-engine' using `TeX-match-style' is factored out
+ and put in `TeX-update-style-hook'. `TeX-match-style' eventually
+ triggers `TeX-update-style', which isn't appropriate in
+ `LaTeX-mode-hook'.
+ (japanese-LaTeX-guess-engine): New function.
+
+2017-08-11 Arash Esbati <arash@gnu.org>
+
+ * style/XCharter.el ("XCharter"): Update to package v1.094 from 2017/08/08.
+
+2017-08-09 Arash Esbati <arash@gnu.org>
+
+ * style/amsthm.el ("amsthm"): Use `LaTeX-amsthm-env-label'.
+
+2017-07-31 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Conform to elisp coding convention in context.el
+
+ * context.el (ConTeXt-numbered-section-heading,
+ ConTeXt-unnumbered-section-heading, ConTeXt-environment): Tailor
+ prompt string.
+ (ConTeXt-menu-update): Add "done" messages.
+
+2017-07-25 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * font-latex.el: Use the standard utf-8 rather than latin-1
+
+2017-07-25 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ Fix unescaped character literals
+
+ * font-latex.el (font-latex-command-with-args-opt-arg-delims)
+ * tex-fold.el (TeX-fold-expand-spec): Escape [ and ] character literals
+
+2017-07-25 Tassilo Horn <tsdh@gnu.org>
+
+ Manually cherry-pick commit bc0db60e
+
+2017-07-24 Mos¨ Giordano <mose@gnu.org>
+
+ * Version 11.91 released.
+
+2017-07-24 Mos¨ Giordano <mose@gnu.org>
+
+ Prepare for upcoming release
+
+2017-07-22 Arash Esbati <arash@gnu.org>
+
+ Update key=val options to minted package v2.5
+
+ * style/minted.el (LaTeX-minted-key-val-options): Update options
+ to package version v2.5 from 2017/07/19.
+
+2017-07-21 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Conform to elisp coding conventions.
+
+ * latex.el (LaTeX-section-heading, LaTeX-environment)
+ (TeX-arg-document, LaTeX-arg-usepackage-read-packages-with-options)
+ (TeX-arg-bibstyle, TeX-arg-bibliography, TeX-arg-verb)
+ (LaTeX-fill-region): Taylor minibuffer prompt string. Add or taylor
+ "done" messages.
+ * tex-buf.el (TeX-command-query, TeX-printer-query): Ditto.
+ * tex.el (TeX-master-file-ask, TeX-master-file, TeX-update-style)
+ (TeX-auto-list-information, TeX-auto-generate): Ditto.
+
+2017-07-21 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ * doc/changes.texi: Mention changes related to Japanese TeX.
+
+2017-07-03 Arash Esbati <arash@gnu.org>
+
+ * doc/auctex.texi (European): Add babel languages which load english.el.
+
+2017-07-03 Arash Esbati <arash@gnu.org>
+
+ Check and set `TeX-quote-language' if necessary
+
+ * style/english.el ("english"): Reset `TeX-quote-language' to nil
+ if changed by other babel language options.
+
+2017-07-03 Arash Esbati <arash@gnu.org>
+
+ Add new style/australian.el and style/newzealand.el
+
+ * Makefile.in (STYLESRC): Add new styles.
+
+ * style/australian.el:
+ * style/newzealand.el: New files.
+
+2017-07-02 Arash Esbati <arash@gnu.org>
+
+ Add new style/canadian.el
+
+ * Makefile.in (STYLESRC): Add new style.
+
+ * style/canadian.el: New file.
+
+2017-07-01 Arash Esbati <arash@gnu.org>
+
+ Add new style/moodle.el
+
+ * Makefile.in (STYLESRC): Add new style.
+
+ * style/moodle.el: New file.
+
+2017-07-01 Arash Esbati <arash@gnu.org>
+
+ * latex.el (LaTeX-babel-hyphen-language-alist): Fix typo in docstring.
+
+2017-06-17 Antoine Levitt <antoine.levitt@gmail.com>
+
+ Add support for xreader viewer
+
+ * tex.el (TeX-evince-dbus-p):
+ (TeX-evince-sync-view-1):
+ (TeX-view-program-select-evince):
+ (TeX-raise-frame-function):
+ (TeX-source-correlate-mode): Adapt functions and docstrings to xreader.
+ (TeX-xreader-sync-view): New function.
+ (TeX-view-program-list-builtin): Add xreader.
+
+2017-06-14 Arash Esbati <arash@gnu.org>
+
+ Update key=value options to graphicx package version 1.1a
+
+ * style/graphicx.el (LaTeX-graphicx-key-val-options): Add new
+ key=value options.
+ (LaTeX-arg-graphicx-includegraphics-key-val): Support "pagebox"
+ key with pdfTeX or LuaTeX.
+
+2017-06-13 Arash Esbati <arash@gnu.org>
+
+ * style/beamer.el ("beamer"): Query for optional argument after \pause.
+
+2017-06-13 Mos¨ Giordano <mose@gnu.org>
+
+ Suggest to rerun LaTeX if xsim properties changed
+
+ * tex-buf.el (TeX-LaTeX-sentinel): Catch xsim warning suggesting to rerun LaTeX
+ and set LaTeX and next default command.
+
+2017-06-13 Mos¨ Giordano <mose@gnu.org>
+
+ Catch expl3 warnings
+
+ * tex-buf.el (LaTeX-warnings-regexp): Adapt regexp to the style of expl3
+ warnings.
+ * tests/tex/error-parsing.el (TeX-error-parsing-expl3-warnings): New test for
+ expl3 warnings.
+
+2017-06-02 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Correct actions on region file in included file not placed in master dir
+
+ * tex-buf.el (TeX-command-region): Call `TeX-region-file' with nil
+ `nondirectory' argument.
+ Fix a typo in doc string.
+ (TeX-command-default): Use `(TeX-region-file)' instead of `TeX-region'
+ for comparison with the given argument.
+
+2017-05-30 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Imporve fix for Bug#26694
+
+ * tex-buf.el (TeX-command): Update point in region file if the
+ command is "View".
+ (TeX-view):
+ (TeX-region-create): Pass the above job to `TeX-command'.
+ (TeX-region-update-point): Move point according to the column in
+ the original buffer.
+ Do nothing when `TeX-source-correlate-mode' is disabled.
+ Use `TeX-current-offset' instead of `TeX-line-number-at-pos' in
+ case narrowing is in effect in the original buffer.
+ * preview.el.in (preview-at-point): Revert previous commit in
+ accord with the changes above.
+ * tex.el (TeX-evince-sync-view-1): Use `TeX-current-offset'
+ instead of `TeX-line-number-at-pos' in case narrowing is in
+ effect in the original buffer.
+ Add FIXME comment about using `current-column'.
+ (TeX-synctex-output-page-1): Ditto.
+ Arrange regexp to pick up page number more correctly.
+ (TeX-view-program-list-builtin): Remove spurious quotation around
+ %b in SumatraPDF entry.
+
+2017-05-29 Mos¨ Giordano <mose@gnu.org>
+
+ * tests/tex/compilation-log.txt:
+ * tests/tex/error-parsing.el: Add test for error starting with exclamation mark.
+
+2017-05-26 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Resolve preview-latex incompatibility with Japanese TeX (Bug#25322)
+
+ * preview.el.in (preview-error-quote): Work consistently with
+ decoded text. The idea of "encoding entire string beforehand and
+ decoding it at the last stage" was used previously, but that failed
+ with `japanese-shift-jis' coding system containing bytes which
+ happen to coincide with regexp meta characters.
+ (preview--decode-^^ab):
+ (preview--convert-^^ab): New functions.
+ (TeX-inline-preview-internal): Record the process coding system
+ for decode assigned already so that `preview-error-quote' can
+ decode the given text correctly afterward. To achive that, change
+ the role of `preview-coding-system' together with the changes to
+ `preview-error-quote'.
+ Give back the command options provided in `(TeX-engine-alist)' to
+ latex command when preamble caching is enabled.
+ (preview-coding-system): Modify doc string according to the
+ changes above to `preview-error-quote' and
+ `TeX-inline-preview-internal'.
+ * tex-buf.el (TeX-adjust-process-coding-system): New function.
+ Adjust the process coding system for asynchronous process launched
+ within AUCTeX.
+ (TeX-after-start-process-function): Change default value to
+ `TeX-adjust-process-coding-system'.
+ * tex-jp.el (japanese-TeX-set-process-coding-system): Specify end
+ of line format on the coding systems assigned to process.
+ (): Don't set `japanese-TeX-set-process-coding-system' to
+ `TeX-after-start-process-function'. It is now called within
+ `TeX-adjust-process-coding-system'.
+ * prv-xemacs.el (preview-buffer-recoding-alist): Fix docstring.
+ (coding-system-change-eol-conversion): Add advice because XEmacs
+ 21.4 mule-ucs fails to define `utf-8' coding system to respond
+ properly to this function.
+ (preview-ps-quote-filename): Add advice so that this function is
+ not confused by backslashes as path separator in the return value
+ of XEmacs function.
+ * tests/japanese/preview-latex.el:
+ * tests/japanese/preview-error-test.tex:
+ * tests/japanese/preview-error-test2.tex:
+ * tests/japanese/prv-dif-code.tex: New files for regression test.
+
+2017-05-21 Mos¨ Giordano <mose@gnu.org>
+
+ Fix indentation in ConTeXt mode after indented optional argument
+
+ * context.el (ConTeXt-find-indent): Fix indentation. Requested by Henri Menke.
+ * tests/context/context-test.el:
+ * tests/context/context-indentation-in.tex:
+ * tests/context/context-indentation-out.tex: New test files.
+
+2017-05-17 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Don't discard process output with `TeX-run-silent'
+
+ * tex-buf.el (TeX-run-silent): Associate the process to the buffer
+ "*TeX silent*".
+
+2017-05-15 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ * tex.el (TeX-command-list): Fix typo in help string (mendex -> upmendex)
+
+2017-05-12 Arash Esbati <arash@gnu.org>
+
+ * latex.el (LaTeX-env-label-as-keyval): Use `buffer-substring-no-properties'.
+
+2017-05-11 Arash Esbati <arash@gnu.org>
+
+ * doc/changes.texi: Document recent changes.
+
+2017-05-10 Arash Esbati <arash@gnu.org>
+
+ * tests/latex/fontification-general.tex: New file.
+
+2017-05-10 Arash Esbati <arash@gnu.org>
+
+ Exclude arguments to math environments from fontification
+
+ * font-latex.el (font-latex-match-math-envII)
+ (font-latex-extend-region-backwards-math-envII): Match and exclude
+ optional and mandatory argument(s) to math environments from
+ fontification.
+
+2017-05-08 Arash Esbati <arash@gnu.org>
+
+ Improve further the exclusion of reserved characters
+
+ * font-latex.el (font-latex-match-simple-exclude-list): New
+ variable.
+ (font-latex-match-simple-command): Use
+ `font-latex-match-simple-exclude-list'. Add check for docTeX mode
+ in order to remove "_" from the list.
+
+2017-05-06 Mos¨ Giordano <mose@gnu.org>
+
+ Work around bug#26694
+
+ * preview.el.in (preview-at-point): Let-bind `TeX-source-correlate-mode' to nil.
+ * tex-buf.el (TeX-region-create): Move point only when
+ `TeX-source-correlate-mode' is non-nil.
+
+2017-05-06 Arash Esbati <arash@gnu.org>
+
+ * latex/preview.dtx: Adjust contact email address.
+
+2017-05-04 Arash Esbati <arash@gnu.org>
+
+ * tex-ispell.el: Move entries from style/empheq.el to this file.
+
+ * latex/preview.dtx: Adjust modification date for CTAN.
+
+2017-05-03 Arash Esbati <arash@gnu.org>
+
+ Query for expl3 package options
+
+ * style/expl3.el (LaTeX-expl3-package-options): New function to
+ read package options from user.
+ Add missing file footer.
+
+2017-05-03 Arash Esbati <arash@gnu.org>
+
+ Add new style/floatrow.el
+
+ * Makefile.in (STYLESRC): Add new style.
+
+ * style/floatrow.el: New file.
+
+2017-05-02 Arash Esbati <arash@gnu.org>
+
+ Use `ispell-tex-arg-end' on parsed elements
+
+ * style/mdframed.el (LaTeX-mdframed-auto-cleanup, "mdframed"): Use
+ correct function `ispell-tex-arg-end'.
+
+2017-04-27 Arash Esbati <arash@gnu.org>
+
+ Improve exclusion of reserved characters from command matches
+
+ * font-latex.el (font-latex-match-simple-command): Skip matches
+ starting with reserved characters.
+
+2017-04-27 Arash Esbati <arash@gnu.org>
+
+ Add support for plus sign in macro syntax specification list
+
+ * font-latex.el (font-latex-match-command-with-arguments): Support
+ plus sign besides asterisk in specification of macro syntax.
+
+2017-04-27 Arash Esbati <arash@gnu.org>
+
+ Update style/fontspec.el to package version 2.6a
+
+ * style/fontspec.el (LaTeX-fontspec-font-features): Update
+ variable to package version 2.6a.
+ (LaTeX-fontspec-auto-cleanup): New function for parsing support
+ for \newfontfamily and \newfontface macros.
+ ("fontspec"): Add missing macros and environment.
+ (LaTeX-fontspec-package-options): Update with new options.
+
+2017-04-27 Arash Esbati <arash@gnu.org>
+
+ Consider the return value of `assq-delete-all'
+
+ * style/breqn.el (LaTeX-breqn-update-color-keys):
+ * style/fvextra.el (LaTeX-fvextra-update-key-val):
+ * style/mdframed.el (LaTeX-mdframed-update-style-key):
+ * style/minted.el (LaTeX-minted-update-key-vals):
+ * style/tcolorbox.el (LaTeX-tcolorbox-update-style-key): Use the
+ return value of `assq-delete-all' rather than looking at the saved
+ value of the temporary variable.
+
+2017-04-27 Arash Esbati <arash@gnu.org>
+
+ * latex.el (LaTeX-common-initialization): Add eminnershape macro.
+
+2017-04-26 Arash Esbati <arash@gnu.org>
+
+ * tex-ispell.el (TeX-ispell-skip-cmds-list): Add \addlinespace.
+
+2017-04-25 Tassilo Horn <tsdh@gnu.org>
+
+ Correctly exclude hypenation and thin spaces from command matches
+
+ * font-latex.el (font-latex-match-simple-command): Skip matches starting with
+ \- or \,.
+
+2017-04-25 Arash Esbati <arash@gnu.org>
+
+ Add LaTeX core command \oldstylenums
+
+ * font-latex.el (font-latex-built-in-keyword-classes): Add
+ \oldstylenums to "type-command" keyword class.
+
+ * latex.el (LaTeX-common-initialization): Add \oldstylenums to
+ LaTeX core commands.
+
+ * style/textcomp.el ("textcomp"): Remove \oldstylenums from
+ textcomp.el which is provided by LaTeX core.
+
+2017-04-24 Arash Esbati <arash@gnu.org>
+
+ Make preview.sty compatible with recent luatex
+
+ * latex/preview.dtx: Check if file luatex85.sty is loadable and
+ require the package (bug#25601).
+
+2017-04-24 Arash Esbati <arash@gnu.org>
+
+ Do not highlight control spaces with "\ "
+
+ * font-latex.el (font-latex-match-simple-command): Add space to
+ the list of characters to be ignored.
+
+2017-04-23 Arash Esbati <arash@gnu.org>
+
+ Adjust macros acc. to change in `LaTeX-paragraph-commands-regexp-make'
+
+ * style/bicaption.el ("bicaption"): Add \bicaption, \bicaptionbox,
+ \bisubcaption and \bisubcaptionbox to paragraph commands.
+
+ * style/caption.el ("caption"): Add \captionbox and \captionof to
+ paragraph commands.
+
+ * style/subcaption.el ("subcaption"): Add \subcaption and
+ \subcaptionbox to paragraph commands.
+
+2017-04-23 Arash Esbati <arash@gnu.org>
+
+ * style/exam.el ("exam"): Remove duplicate entries and backslash.
+
+2017-04-23 Uwe Brauer <oub@mat.ucm.es>
+
+ Add the select environment and related macros to exam style.
+
+ * style/exam.el ("exam"): Add the select environment and related macros.
+
+2017-04-23 Tassilo Horn <tsdh@gnu.org>
+
+ Fix comment environment highlighting
+
+ * style/comment.el ("comment"): Don't set comment starter/ender but generic
+ comment delimiters.
+
+2017-04-21 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Add test for my last commit
+
+ * tests/japanese/error-parsing.el: New file.
+
+2017-04-21 Mos¨ Giordano <mose@gnu.org>
+
+ Do not highlight thin spaces with \,
+
+ * font-latex.el (font-latex-match-simple-command): Add comma to the list of
+ characters to be ignored.
+
+2017-04-19 Mos¨ Giordano <mose@gnu.org>
+
+ Fix parsing of LaTeX2e date formats
+
+ * tex-buf.el (TeX-LaTeX-sentinel): Support ISO date format, now used by
+ LaTeX2e. Reported by Uwe Siart.
+ * tests/tex/error-parsing.el (TeX-LaTeX2e-date): Add a test for LaTeX2e date
+ formats.
+
+2017-04-19 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Improve error handling for Japanese users
+
+ * tex-buf.el (TeX-help-error): Use number based condition to
+ detect whether the search over `TeX-error-description-list'
+ comes to its last element. Comparison with a literal string
+ breaks when tex-jp.el installs Japanese help messages into
+ `TeX-error-description-list'.
+
+2017-04-18 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Deal with strange file name
+
+ * tex-jp.el (): Increase `pos' in case the master file
+ name happens to contain special %-sequence.
+
+2017-04-17 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Support upmendex
+
+ * tex-jp.el (): Make "%(makeindex)" to expand to upmendex when
+ upmendex is available and `TeX-engine' is supported by it.
+ Add "%(dic)" expander for the dictionary option of (up)mendex.
+ * tex.el (TeX-command-list): Add "upMendex" entry. Set 4th
+ element to t so that user will get a chance to supply
+ dictionary option to the command line string.
+
+2017-04-17 Tassilo Horn <tsdh@gnu.org>
+
+ Improve command highlighting to not be triggered by hyphenation
+
+ Reported by Fran§ois Patte.
+
+2017-04-17 Tassilo Horn <tsdh@gnu.org>
+
+ Add proper copyright header to some styles
+
+ Add the required headers so that the ELPA build works again.
+
+2017-04-15 Arash Esbati <arash@gnu.org>
+
+ * doc/changes.texi: Update with recent changes.
+
+2017-04-10 Arash Esbati <arash@gnu.org>
+
+ * doc/auctex.texi (Selecting a Command): Document `TeX-ispell-verb-delimiters'.
+
+2017-04-04 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Fix `paragraph-start' and `paragraph-separate'
+
+ * plain-tex.el (plain-TeX-common-initialization): Remove "^" from
+ `paragraph-start' according to the doc string.
+ Remove LaTeX display math delimiters "\[" and "\]" from
+ `paragraph-start'.
+ Add "item" and "itemitem" to `paragraph-start'.
+ Change the regexp grouping to shy group in `paragraph-start' and
+ `paragraph-separate'.
+ * tex-info.el (TeX-texinfo-mode): Remove "^" from `paragraph-start'
+ and `paragraph-separate'.
+
+2017-04-03 Arash Esbati <arash@gnu.org>
+
+ Update package options in style/amsmath.el
+
+ * style/amsmath.el (LaTeX-amsmath-package-options): Update package
+ options to v2.16a.
+
+2017-04-01 Arash Esbati <arash@gnu.org>
+
+ Append \b to regexp built from TeX control words
+
+ * latex.el (LaTeX-paragraph-commands-regexp-make): Append \b to
+ regexp built from TeX control words. Fix this report
+ http://lists.gnu.org/archive/html/auctex/2017-03/msg00009.html
+
+ * tests/latex/latex-filling-in.tex:
+ * tests/latex/latex-filling-out.tex:
+ * tests/latex/latex-test.el (LaTeX-filling): Extend test for addition
+ in `LaTeX-paragraph-commands-regexp-make' in latex.el.
+
+2017-03-31 Mos¨ Giordano <mose@gnu.org>
+
+ Fix detection of bibliography files with dots in path
+
+ * latex.el (LaTeX-auto-regexp-list): Remove dot from the list of excluded
+ characters in addbibresource's regexp.
+ * tests/latex/latex-test.el (LaTeX-addbibresource): New test for addbibresource.
+
+2017-03-29 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Don't alter standard value or saved value themselves of customize option
+
+ * tex-jp.el (): Stop using `setcar' on the elements of
+ `TeX-command-list'. This used to alter the standard value
+ or saved value themselves of the customize option since
+ `setcar' operates descructively on lists as Lisp objects.
+ Instead create new list by `mapcar' and `append'.
+ (): Deal with the case that `TeX-view-program-list-builtin'
+ doesn't have an entry of "xdvi".
+ Change the expected executable name to "%(xdvi)" as well.
+
+2017-03-28 Arash Esbati <arash@gnu.org>
+
+ Fix last improvement for skipping of inline verbatim macros
+
+ * tex.el (TeX-ispell-tex-arg-verb-end): New function.
+
+ * tex-ispell.el (TeX-ispell-verb-delimiters): Replace
+ `TeX-ispell-verb-opening-delimiters' and
+ `TeX-ispell-verb-closing-delimiters' with new customizable option
+ `TeX-ispell-verb-delimiters'.
+ (TeX-ispell-skip-setcar): Use new function
+ `TeX-ispell-tex-arg-verb-end' with verbatim macros.
+
+2017-03-27 Arash Esbati <arash@gnu.org>
+
+ Improve skipping of inline verbatim macros
+
+ * tex-ispell.el (TeX-ispell-verb-opening-delimiters)
+ (TeX-ispell-verb-closing-delimiters): New customizable options.
+ (TeX-ispell-skip-setcar): Skip inline verbatim macros from
+ listings and fancyvrb package. Use new variables for minted
+ package.
+
+2017-03-27 Arash Esbati <arash@gnu.org>
+
+ * tests/latex/fontification-verb-macros.tex: New file.
+
+2017-03-27 Arash Esbati <arash@gnu.org>
+
+ Improve fontification of verbatim macros in style/minted.el
+
+ * style/minted.el (LaTeX-minted-auto-cleanup): Add key=val query
+ and fontification support for parsed elements.
+ (LaTeX-minted-add-syntactic-keywords-extra): New function.
+ ("minted"): Use `LaTeX-minted-add-syntactic-keywords-extra' to add
+ fontification support for \mint and \mintinline macros.
+ Add \mint and \mintinline to textual keywords class and apply the
+ fontification only for optional and first mandatory argument.
+
+2017-03-27 Arash Esbati <arash@gnu.org>
+
+ Adapt fontification for \lstinline
+
+ * style/listings.el ("listings"): Fontify only the optional
+ argument of \lstinline.
+
+2017-03-27 Arash Esbati <arash@gnu.org>
+
+ Recognize optional argument in verb macros with delimiters/braces
+
+ * font-latex.el (font-latex-built-in-keyword-classes): Add \verb
+ to textual keyword class.
+ (font-latex-set-syntactic-keywords): Extend regexp to ignore an
+ optional argument for verbatim macros with delimiters and/or
+ braces.
+
+2017-03-26 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Add support for Japanese font command
+
+ * tex-jp.el (): Append entries for mincho and gothic font
+ commands to `LaTeX-font-list'.
+ (japanese-latex-mode-initialization): Add font lock support
+ to \textgt, \mathgt and \gtfamily commands for displaying
+ with bold font in Emacs buffer.
+ * doc/auctex.texi (Japanese): Mention new font commands and
+ add indexes for them.
+
+2017-03-23 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Enhance Japanese class files support
+
+ * style/tarticle.el:
+ * style/tbooks.el:
+ * style/treport.el:
+ * style/jsreport.el: Add new style files.
+ * Makefile.in (STYLESRC): Add them and tweak order not to break the
+ format of file name alignment.
+ * style/j-book.el ("j-book"): Correct the largest section level to
+ "part" following book.el.
+ * style/jarticle.el:
+ * style/jbook.el:
+ * style/jreport.el:
+ * style/jsarticle.el:
+ * style/jsbook.el: Add defvar for class options, counters and
+ pagestyles following {article,book,report}.el.
+ Correct the largest section level in jbook.el, too.
+ Deal with "report" option in jsbook.el.
+
+2017-03-24 Arash Esbati <arash@gnu.org>
+
+ * texmathp.el (texmathp-tex-commands-default): Add entries for empheq.sty.
+
+2017-03-23 Arash Esbati <arash@gnu.org>
+
+ * style/minted.el ("minted"): Add key=val query for \mint and \mintinline.
+
+2017-03-19 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Use `TeX-line-number-at-pos' further for older emacsen
+
+ * tex-buf.el (TeX-region-create):
+ (TeX-region-update-point):
+ * tex-info.el (Texinfo-make-node-list): Replace `line-number-at-pos'
+ with `TeX-line-number-at-pos'.
+
+2017-03-19 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Use compatibility function `TeX-line-number-at-pos' for older emacsen
+
+ * tex.el (TeX-evince-sync-view-1):
+ (TeX-synctex-output-page-1): Replace `line-number-at-pos' with
+ `TeX-line-number-at-pos'.
+
+2017-03-18 Arash Esbati <arash@gnu.org>
+
+ Use the variable `LaTeX-listing-label'
+
+ * style/minted.el ("minted"):
+ * style/newfloat.el (LaTeX-newfloat-auto-cleanup): Use
+ `LaTeX-listing-label' instead of hard-coded "lst:" string.
+
+2017-03-18 Arash Esbati <arash@gnu.org>
+
+ Use compat function `TeX-replace-regexp-in-string' in core files
+
+ * tex.el (TeX-source-correlate-sync-source):
+ * latex.el (LaTeX-split-bibs): Use compat function
+ `TeX-replace-regexp-in-string'.
+
+2017-03-18 Arash Esbati <arash@gnu.org>
+
+ Use `TeX-replace-regexp-in-string' in style files
+
+ * style/empheq.el (LaTeX-empheq-item-equation):
+ * style/tcolorbox.el (LaTeX-tcolorbox-load-used-libraries):
+ * style/xcolor.el (LaTeX-xcolor-auto-cleanup): Use compat function
+ `TeX-replace-regexp-in-string'.
+
+2017-03-18 Arash Esbati <arash@gnu.org>
+
+ Add new compat function `TeX-replace-regexp-in-string'
+
+ * tex.el (TeX-replace-regexp-in-string): New compat function.
+ With XEmacs, pass arguments to `replace-in-string', with Emacs to
+ `replace-regexp-in-string'. This function supports only mandatory
+ arguments of the original functions just mentioned.
+
+2017-03-17 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Avoid altering user option as much as possible
+
+ * tex-jp.el (): Alter `TeX-view-predicate-list-builtin' and
+ `TeX-view-program-list-builtin' instead of their customize option
+ cousins.
+ Append to `TeX-view-program-selection' only on w32 system.
+
+2017-03-16 Arash Esbati <arash@gnu.org>
+
+ Add LaTeX inline math delimiters to Ispell skip list
+
+ * tex-ispell.el: Add LaTeX inline math delimiters \( \) to Ispell
+ skip list. (bug#26125)
+ Remove unnecessary part from regexp for \cmidrule.
+
+2017-03-15 Arash Esbati <arash@gnu.org>
+
+ Fix addition of key=val's
+
+ * style/fvextra.el (LaTeX-fvextra-update-key-val): Fix addition of
+ key=val's to `LaTeX-fancyvrb-key-val-options-local'.
+
+2017-03-15 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Modify `TeX-expand-list-builtin' instead of `TeX-expand-list'
+
+ * tex-jp.el (): `TeX-expand-list' is user option since 2015. Add
+ extra entries for Japanese TeX engines to `TeX-expand-list-builtin'
+ instead.
+
+2017-03-13 Arash Esbati <arash@gnu.org>
+
+ Add new style/fvextra.el
+
+ * Makefile.in (STYLESRC): Add new style.
+
+ * style/fvextra.el: New file.
+
+2017-03-13 Arash Esbati <arash@gnu.org>
+
+ Improve parsing capabilities of style/fancyvrb.el
+
+ * style/fancyvrb.el (LaTeX-fancyvrb-key-val-options): Add
+ undocumented keys, update some values.
+ (LaTeX-fancyvrb-key-val-options-local)
+ (LaTeX-fancyvrb-base-macros, LaTeX-fancyvrb-base-environments)
+ (LaTeX-fancyvrb-key-val-skip-regexp): New variables.
+ (LaTeX-fancyvrb-macro-regexp, LaTeX-fancyvrb-environment-regexp):
+ Update for new parsing mechanism.
+ (LaTeX-fancyvrb-arg-define-macro)
+ (LaTeX-fancyvrb-arg-define-environment)
+ (LaTeX-fancyvrb-arg-file-relative): New functions.
+ ("fancyvrb"): Use new variables and functions in the hook. Update
+ fontification.
+
+2017-03-10 Arash Esbati <arash@gnu.org>
+
+ Improve fallback for indentation when & is omitted
+
+ * latex.el (LaTeX-hanging-ampersand-position): Improve handling of
+ fallback which now respects also intended tabular environments.
+ Thanks to Ikumi Keita for testing and providing code. (bug#26032)
+
+ * tests/latex/tabular-in.tex:
+ * tests/latex/tabular-out.tex: Add additional test for indented
+ tabular.
+
+2017-03-09 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Remove spurious entries of view settings.
+
+ * tex-jp.el (TeX-view-program-list):
+ (TeX-view-program-selection): Remove spurious entries, most of which
+ are related with other TeX IDEs.
+ cf. http://lists.gnu.org/archive/html/auctex-devel/2016-04/msg00036.html
+
+2017-03-09 Arash Esbati <arash@gnu.org>
+
+ Add fallback for indentation when & is omitted
+
+ * latex.el (LaTeX-hanging-ampersand-position): Add fallback for
+ indentation if the row searched does not contain a column
+ separator &.
+
+ * tests/latex/tabular-in.tex:
+ * tests/latex/tabular-out.tex: Add filling test for missing & in
+ row.
+
+2017-02-06 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Fix auto selection of japanese TeX engine
+
+ * tex-jp.el (japanese-latex-mode-initialization): Use
+ `LaTeX-match-class-option' to detect uplatex option given to
+ jsarticle, jsreport and jsbook class. (The root of this problem is
+ the same as Bug#25563)
+ (): Quit appending to `LaTeX-command-style' because this made the
+ user's intentional selection of `TeX-engine' ineffective with regard
+ to the selection of the executable names.
+ Fix copyright year.
+ * doc/auctex.texi (Japanese): Add description of Japanese TeX engine:
+ How to use, change and set the value of the engine.
+ Add description of the customize options related to the encoding of
+ Japanese TeX documents.
+
+2017-03-08 Arash Esbati <arash@gnu.org>
+
+ Detect \& in tabular cells when filling
+
+ * latex.el (LaTeX-indent-tabular): Search backward for any
+ ampersands not escaped with a backslash, i.e. control symbol \&,
+ and return the adjusted value. Thanks to Ikumi Keita for his
+ perceptive comments on the implementation. (bug#26010)
+
+ * tests/latex/tabular-in.tex:
+ * tests/latex/tabular-out.tex: Add test for table filling with \&
+ in cells.
+
+2017-03-06 Arash Esbati <arash@gnu.org>
+
+ * tex-ispell.el (TeX-ispell-skip-cmds-list): Add hyperref macros.
+
+2017-03-05 Arash Esbati <arash@gnu.org>
+
+ * tex-ispell.el (TeX-ispell-skip-setcdr): Add entry for filecontents package.
+
+2017-03-04 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Fix documents and add trivial improvements.
+
+ * font-latex.el (font-latex-deactivated-keyword-classes): Add keyword
+ class biblatexnoarg, biblatex and slide-title to doc string.
+ Use `buffer-string'.
+ (font-latex-keyword-matcher): Mention that face attributes is accepted
+ as FACE argument in doc string.
+ (font-latex-make-built-in-keywords): Arrange doc string for generated
+ defvar of `font-latex-match-*-keywords-local' depending on the keyword
+ type.
+ Remove spurious type declaration from generated defcustom of
+ `font-latex-match-*-keywords'.
+ Replace meaningless argument with nil and add doc string for generated
+ defvar of `font-latex-match-*'.
+ Replace redundant call to intern with literal quote of symbol.
+ (font-latex-user-keyword-classes): Fix doc string. The accepted face
+ argument is face attribute rather than font specification.
+ Add doc string for generated defvar of `font-latex-match-*'.
+ (font-latex-make-user-keywords): Replace backquote with quote where
+ backquote is not necessary.
+ (font-latex-add-keywords): Add keyword class biblatexnoarg to doc
+ string.
+ * doc/auctex.texi (): Update copyright year.
+ (Deactivating defaults of built-in keyword classes): Add keyword
+ class biblatexnoarg, biblatex and slide-title.
+ Fix sample lisp code.
+ (User-defined keyword classes): The accepted face argument is face
+ attribute rather than font specification.
+
+2017-03-04 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Make customization to face specification to appear in
+ customization buffer.
+
+ * font-latex.el (font-latex-user-keyword-classes): Exchange the order
+ of `face' and `custom-face-edit'. Tweak doc string.
+
+2017-03-04 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Unify treatment of face argument over the relevant functions.
+
+ * font-latex.el (font-latex-keyword-matcher): Conform the face
+ argument correctly to the format `font-lock-keywords' requires.
+ (font-latex-make-user-keywords) : Call `font-latex-make-match-defun'
+ directly without `eval'.
+ (font-latex-deactivated-keyword-classes) : Accept a face symbol, as
+ well as a form returning a face symbol, for the third element for each
+ item of `font-latex-built-in-keyword-classes'.
+ (font-latex-built-in-keyword-classes) : Remove quoting from the face
+ names. Contrary to the sentence of the doc string
+ "The third element is the symbol of a face to be used or a Lisp
+ form returning a face symbol.", symbol of a face was invalid due to
+ the above bugs.
+
+2017-03-04 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Fix font-latex-make-match-defun to generate intended code.
+
+ * font-latex.el (font-latex-make-match-defun): Arrange the order of
+ evaluation not to generate meaningless clause. Byte compile warning
+ on xemacs went away.
+
+2017-03-04 Mos¨ Giordano <mose@gnu.org>
+
+ Partially revert previous commit, will look better later
+
+ * tex-buf.el (TeX-command-expand): Do not error if `string' is nil. This made
+ "View" command unusable.
+
+2017-03-04 Mos¨ Giordano <mose@gnu.org>
+
+ Prevent infinite loop in TeX-command-expand
+
+ * tex-buf.el (TeX-command-expand): Throw an error if `string' is not a string.
+ This prevents an infinite loop.
+ * tex.el (TeX-engine-in-engine-alist): New function to pick up an engine from
+ `TeX-engine-alist' and throw an error if the engine is not there.
+ (TeX-expand-list-builtin): Use `TeX-engine-in-engine-alist'.
+ * context.el (ConTeXt-expand-options): Use `TeX-engine-in-engine-alist'.
+ * tests/tex/command-expansion.el (TeX-command-expansion-errors): Add tests for
+ error handling of `TeX-command-expand'.
+
+2017-02-24 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Tweak locale treatment on xemacs.
+
+ * tex-jp.el (japanese-TeX-set-process-coding-system): Use the locale
+ related environment variables for fallback value.
+
+2017-02-21 Arash Esbati <arash@gnu.org>
+
+ Add new style/sourcecodepro.el
+
+ * Makefile.in (STYLESRC): Add new style.
+
+ * style/sourcecodepro.el: New file.
+
+2017-02-21 Arash Esbati <arash@gnu.org>
+
+ * style/subfiles.el (LaTeX-subfiles-class-options): New function.
+
+2017-02-04 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Make papersize predicate in tex-jp.el to work again.
+ Problem parallel to bug#25563.
+
+ * tex-jp.el (): Use `LaTeX-match-class-option' to examine paper size
+ option of document class.
+
+2017-02-14 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Fix setting of coding system for Japanese TeX
+
+ * tex-jp.el (japanese-TeX-set-process-coding-system): Cater for the
+ case that kanji option is requested by user but cannot be determined.
+ XEmacs doesn't have `locale-coding-system'. Use
+ `get-coding-system-from-locale' and `current-locale' instead.
+ Cleanup indentation.
+ (japanese-TeX-coding-ejsu): Add entry for xemacs coding system of cp932.
+
+2017-02-20 Mos¨ Giordano <mose@gnu.org>
+
+ Improve regexp for looking for documentclass macro
+
+ * latex.el (LaTeX-env-document): Allow any non line-breaking character in regexp
+ used to look for `documentclass' macro. Previous regexp did not catch class
+ options containing dots or slash, that may occur when using `subfiles' class.
+
+2017-02-20 Mos¨ Giordano <mose@gnu.org>
+
+ Improve determination of master file with subfiles class
+
+ * style/subfiles.el ("subfiles"): Do not strip dirname from master file.
+
+2017-02-19 Arash Esbati <arash@gnu.org>
+
+ Add new keys for package version 4.00
+
+ * style/tcolorbox.el (LaTeX-tcolorbox-keyval-options): Add new
+ keys for v4.00 of the package.
+
+2017-02-16 Arash Esbati <arash@gnu.org>
+
+ * latex.el (LaTeX-label): Eliminate premature returning of label.
+
+2017-02-16 Arash Esbati <arash@gnu.org>
+
+ Append "lstlisting" to `LaTeX-label-alist'
+
+ * style/listings.el ("listings"): Append "lstlisting" to
+ `LaTeX-label-alist'.
+ (LaTeX-listings-auto-cleanup): Use `LaTeX-listing-label' as a
+ symbol during clean up.
+
+2017-02-10 Arash Esbati <arash@gnu.org>
+
+ Add new style/preview.el
+
+ * Makefile.in (STYLESRC): Add new style.
+
+ * style/preview.el: New file.
+
+2017-02-10 Arash Esbati <arash@gnu.org>
+
+ * .gitignore: Ignore only preview.el in top directory.
+
+2017-02-10 Arash Esbati <arash@gnu.org>
+
+ Improve parsing process in style/xcolor.el
+
+ * style/xcolor.el (LaTeX-xcolor-definecolor-regexp): Use
+ `regexp-opt' to build a regexp to match all color defining macros.
+ (LaTeX-xcolor-colorlet-regexp): Remove variable.
+ (LaTeX-xcolor-auto-cleanup): Romove unnecessary *.
+
+2017-02-09 Arash Esbati <arash@gnu.org>
+
+ Improve parsing process in style/color.el
+
+ * style/color.el (LaTeX-color-definecolor-regexp): Remove
+ unnecessary 2nd and 3rd arguments from regexp.
+ (LaTeX-color-auto-cleanup): Delete unnecessary function and remove
+ it from `TeX-auto-cleanup-hook'.
+
+2017-02-09 Arash Esbati <arash@gnu.org>
+
+ Fix parsing bug in style/xcolor.el
+
+ * style/xcolor.el (LaTeX-xcolor-definecolor-regexp): Move parsing
+ of \colorlet macro into `LaTeX-xcolor-colorlet-regexp'.
+ (LaTeX-xcolor-colorlet-regexp): New variable.
+ ("xcolor"): Activate `LaTeX-xcolor-colorlet-regexp' in style hook.
+
+2017-02-06 Arash Esbati <arash@gnu.org>
+
+ * latex/preview.dtx: Fix example for \PreviewMacro* macro.
+ Add missing backslash.
+
+2017-02-04 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Fix minor problems
+ * tex.el (TeX-view-predicate-list-builtin): Enclose whole alternatives
+ in regexp with shy group in order that the effect of "\`" and "\'"
+ covers all the alternatives.
+ * latex.el (LaTeX-auto-cleanup): Regard "Class", in addition to
+ "class", as an indicator of LaTeX2e document.
+
+2017-02-02 Arash Esbati <arash@gnu.org>
+
+ Simplify addition of entirely skipped environments
+
+ * tex-ispell.el (TeX-ispell-skip-envs-list): New variable for
+ environments which should be skipped entirely.
+ (TeX-ispell-skip-envs-regexp): New variable keeping the regexp
+ generated from `TeX-ispell-skip-envs-list'.
+
+2017-02-02 Tassilo Horn <tsdh@gnu.org>
+
+ Fix TeX-view-predicate-list-builtin predicates wrt class opts
+
+ * latex.el (LaTeX-match-class-option): New function.
+ * tex.el (TeX-view-predicate-list-builtin): Use above function to check
+ paper sizes orientation from documentclass options (bug#25563).
+
+2017-02-01 Mos¨ Giordano <mose@gnu.org>
+
+ Fix number of arguments of local-variable-p in XEmacs
+
+ * font-latex.el (font-latex-after-hacking-local-variables): Second argument of
+ `local-variable-p' is mandatory in XEmacs.
+
+2017-02-01 Tassilo Horn <tsdh@gnu.org>
+
+ Fix font-latex-after-hacking-local-variables on XEmacs
+
+ * font-latex.el (font-latex-after-hacking-local-variables): Cater for the
+ fact that file-local-variables-alist isn't there in XEmacs and older
+ Emacs versions (bug#25564).
+
+2017-02-01 Arash Esbati <arash@gnu.org>
+
+ * tex-ispell.el: Add support for enviroments from breqn.sty.
+
+2017-02-01 Tassilo Horn <tsdh@gnu.org>
+
+ Fix plain-TeX-auto-regexp-list docstring
+
+ * tex.el: Fix docstring of plain-TeX-auto-regexp-list (bug#25574).
+
+2017-01-29 Arash Esbati <arash@gnu.org>
+
+ Add new style/breqn.el
+
+ * Makefile.in (STYLESRC): Add new style.
+
+ * style/breqn.el: New file.
+
+2017-01-29 Arash Esbati <arash@gnu.org>
+
+ Update style/listings.el to use `LaTeX-env-label-as-keyval'
+
+ * style/listings.el (LaTeX-listings-key-val-options): Comment the
+ "label" key.
+ (LaTeX-listings-key-val-label-extract):
+ (LaTeX-listings-key-val-label-regexp): New variable.
+ (LaTeX-listings-auto-cleanup): Use `LaTeX-add-environments'
+ instead of adding new enviroments to `LaTeX-auto-environment'.
+ Use the function `LaTeX-env-label-as-keyval' to insert labels.
+ Add parsed enviroments to AUCTeX parser with `TeX-auto-add-regexp'.
+ ("listings"): Add `LaTeX-listings-key-val-label-regexp' to the
+ parser.
+ Use `LaTeX-env-label-as-keyval' for "lstlisting".
+
+2017-01-29 Arash Esbati <arash@gnu.org>
+
+ Add function to put labels in opt. argument of environments
+
+ * doc/changes.texi: Document new feature.
+
+ * latex.el (LaTeX-listing-label): New custom prefix for labels in
+ code typesetting environments.
+ (LaTeX-env-label-as-keyval): New function.
+ (LaTeX-narrow-to-environment): Fix typo in docstring.
+
+2017-01-27 Arash Esbati <arash@gnu.org>
+
+ Add `NO-INSERT' argument to `LaTeX-label'
+
+ * doc/changes.texi: Document changes to `LaTeX-label' and
+ `LaTeX-label-function'.
+
+ * latex.el (LaTeX-label): Add second optional argument NO-INSERT.
+ This argument is passed to function bound to
+ `LaTeX-label-function' (usually `reftex-label' with RefTeX
+ enabled). If `LaTeX-label-function' is nil and NO-INSERT is
+ non-nil, label is read and returned as a string. Remove some
+ unnecessary checks.
+ (LaTeX-label-function): Mention in docstring that the function is
+ expected to take an optional argument NO-INSERT. This is an
+ incompatible change.
+
+2017-01-27 Arash Esbati <arash@gnu.org>
+
+ Check if label is defined before adding it to known labels
+
+ * latex.el (TeX-read-label): Check if label is already defined and
+ ask for user confirmation before adding it list of known labels.
+ Do not add label if empty string or the value of
+ `TeX-read-label-prefix'.
+
+2017-01-26 Arash Esbati <arash@gnu.org>
+
+ Add \citetitle to `reftex-cite-format' in style/biblatex
+
+ * style/biblatex.el ("biblatex"): Add \citetitle[*] to
+ `reftex-cite-format' and bind them to keys i/I per user request
+ http://lists.gnu.org/archive/html/auctex/2017-01/msg00049.html.
+
+2017-01-25 Mos¨ Giordano <mose@gnu.org>
+
+ Guard setcar with appropriate test
+
+ * tex-jp.el (assoc): Replace second element of "BibTeX" and "Index" entries of
+ `TeX-command-list' only if they are already there. This variable is
+ customizable and users may have removed them. Reported by jfbu.
+
+2017-01-20 Mos¨ Giordano <mose@gnu.org>
+
+ * latex.el (LaTeX-newline): Make interactive. See bug#24412.
+
+2017-01-20 Mos¨ Giordano <mose@gnu.org>
+
+ Add makeglossaries to the list of commands
+
+ * tex.el (TeX-command-list): Add makeglossaries. Fixes bug#24952.
+ * latex.el (LaTeX-clean-intermediate-suffixes): Add extensions of files created
+ by makeglossaries.
+
+2017-01-15 Mos¨ Giordano <mose@gnu.org>
+
+ Show summary of tests at the end of make check
+
+ * tests/Makefile (check): Depend on `check-doit' and `mostlyclean' phony
+ targets.
+ (check-doit): New rule for showing summary of tests.
+ (mostlyclean): Delete log files.
+
+2017-01-13 Davide G. M. Salvetti <salve@debian.org>
+
+ Fix ConTeXt-outline-regexp
+
+ Add a separator between different elements; see Debian bug #850444.
+
+2017-01-13 Mos¨ Giordano <mose@gnu.org>
+
+ Remove also a gitignore
+
+ * Makefile.in (EXCLUDEDFILES): Add latex/.gitignore to excluded files.
+
+2017-01-13 Mos¨ Giordano <mose@gnu.org>
+
+ Remove file from distributed tar ball
+
+ * Makefile.in (EXCLUDEDFILES): Add doc/tex-ref.log.
+
+2017-01-12 Mos¨ Giordano <mose@gnu.org>
+
+ Add AUCTeX Logo
+
+ * etc/auctex-logo.tex: Logo of AUCTeX. It was realized with comments from
+ Vincent BelaŻche, Marcin Borkowski, Marta Dell’Atti, Tamas Papp and others.
+
+ * .gitignore: Ignore some files automatically created during compilation.
+
+2017-01-11 Mos¨ Giordano <mose@gnu.org>
+
+ Make gitlog-to-changelog ignore release-commit
+
+ * Makefile.in (release-commit): Prefix the commit message with "; ", so that
+ the commit will be ignored when automatically updating the ChangeLog.
+
+2017-01-10 Mos¨ Giordano <mose@gnu.org>
+
+ * Version 11.90 released.
+
+2017-01-10 Mos¨ Giordano <mose@gnu.org>
+
+ Refresh RELEASE file
+
+ * RELEASE: Update "Availability" and "Future development and additional
+ information" sections.
+
+2017-01-10 Mos¨ Giordano <mose@gnu.org>
+
+ * Makefile.in (release-commit): Use UTF-8 coding for ChangeLog entry.
+
+ * ChangeLog-preview: Change encoding to UTF-8.
+
+ * Makefile.in (release-commit): Fix name of preview ChangeLog.
+
+2017-01-10 Arash Esbati <arash@gnu.org>
+
+ Use RefTeX for multiple references in cleveref
+
+ * style/cleveref.el (TeX-arg-cleveref-multiple-labels): Check if
+ RefTeX is enabled and use it for multiple referencing macros.
+ ("cleveref"): Use `TeX-arg-ref' instead of `TeX-arg-label'.
+ ("cleveref"): Remove call of (font-latex-set-syntactic-keywords).
+
+2017-01-10 Arash Esbati <arash@gnu.org>
+
+ Skip macros and environments from tcolorbox and raster library
+
+ * tex-ispell.el (TeX-ispell-sort-skip-cmds-list): Extract macros
+ with optional argument from `TeX-ispell-skip-cmds-list'.
+ (TeX-ispell-skip-cmds-opt-arg-regexp): New variable containing
+ macros where only the optional argument is skipped while spell
+ checking.
+ Add macros and environments from tcolorbox.el and
+ tcolorboxlib-raster.el.
+
+2017-01-10 Arash Esbati <arash@gnu.org>
+
+ Advertise AUCTeX installation from ELPA
+
+ * doc/quickstart.texi (Quick Start): Emphasize the necessity to
+ drop (load "auctex.el" nil t t) when installed from ELPA.
+
+ * doc/install.texi (Installation): Advertise installation from
+ ELPA.
+
+2017-01-09 Mos¨ Giordano <mose@gnu.org>
+
+ Prepare for upcoming release
+
+ * RELEASE: Update AUCTeX version, the new features section, and
+ the list of contributors.
+
+ * configure.ac: Update AUCTeX version.
+
+ * doc/changes.texi: Reorder changes for 11.90 version section.
+
+ * doc/tex-ref.tex: Update AUCTeX version and copyright years
+ across the file.
+
+ * latex/preview.dtx: Manually update release version.
+
+2017-01-07 Mos¨ Giordano <mose@gnu.org>
+
+ Adapt Makefile to new ChangeLog file name
+
+ * Makefile.in (release-commit): Use `CHANGELOG_N' in place of
+ `ChangeLog'.
+
+2017-01-06 Tassilo Horn <tsdh@gnu.org>
+
+ Don't use cl function copy-list
+
+ * font-latex.el (font-latex--get-script-props): Use copy-sequence instead of
+ copy-list, the latter being a cl function.
+
+2017-01-05 Tassilo Horn <tsdh@gnu.org>
+
+ Fix bug where font-latex-sub/superscript-face was not applied to ^_
+
+ * font-latex.el (font-latex-make-user-keywords): prepend
+ font-latex-script-char-face, don't replace existing specs.
+
+2017-01-05 Tassilo Horn <tsdh@gnu.org>
+
+ Fontify script characters with a new face
+
+ * doc/auctex.texi (Fontification of math): Document it.
+ * doc/changes.texi: Mention that.
+ * font-latex.el (font-latex-make-user-keywords): Adapt.
+ (font-latex-script-char-face): New face.
+ (font-latex-match-script-chars): Improve it so that double ^_ aren't
+ matched because such errors were hard to see with
+ font-latex-fontify-script set to invisible.
+ (font-latex-script-char): New function.
+
+2017-01-05 Arash Esbati <arash.esbati@gmail.com>
+
+ Support biblatex cite format in all Emacsen
+
+ * style/biblatex.el ("biblatex"): Check if biblatex is available
+ in `reftex-cite-format-builtin' and use it. If not, add entries
+ for older Emacsen manually.
+
+2017-01-05 Arash Esbati <arash.esbati@gmail.com>
+
+ Check new custom option before activating RefTeX cite format
+
+ * doc/changes.texi: Document new variable.
+
+ * style/biblatex.el ("biblatex"):
+ * style/harvard.el ("harvard"):
+ * style/jurabib.el ("jurabib"):
+ * style/natbib.el ("natbib"): Set cite format provided by RefTeX
+ when `LaTeX-reftex-cite-format-auto-activate' is non-nil.
+
+ * tex-style.el (LaTeX-reftex-cite-format-auto-activate): New
+ customizable variable.
+
+2017-01-04 Tassilo Horn <tsdh@gnu.org>
+
+ Fix script unfontification bug
+
+ * font-latex.el (font-latex-unfontify-region): Remove script-level
+ property and raise display property even though it's value is different
+ from what's specified in font-latex-script-display.
+
+2017-01-04 Tassilo Horn <tsdh@gnu.org>
+
+ Improve completion docs
+
+ * doc/auctex.texi (Completion): Improved docs.
+ * doc/changes.texi: Mention math completion, add link to Completion node
+ in the manual.
+ * tex.el (TeX-complete-list): Improve docstring.
+
+2017-01-04 Tassilo Horn <tsdh@gnu.org>
+
+ Refactor normal completion and completion at point a bit
+
+ * tex.el (TeX--complete-find-entry): New function.
+ (TeX-complete-symbol,TeX--completion-at-point): Use it.
+
+2017-01-04 Tassilo Horn <tsdh@gnu.org>
+
+ Completion for math macros
+
+ * latex.el (LaTeX--after-math-macro-prefix-p): New function.
+ (LaTeX-common-initialization): Use it for new TeX-complete-list entry.
+ * tex.el (TeX-complete-list): Also allow match-data setting predicates in
+ entries.
+ (TeX-complete-symbol,TeX--completion-at-point): Adapt to new possibility.
+
+2017-01-03 Tassilo Horn <tsdh@gnu.org>
+
+ Add completion-at-point support
+
+ * doc/auctex.texi (Completion): Document completion-at-point support.
+ * doc/changes.texi: Mention completion-at-point support.
+ * tex.el (TeX--completion-at-point): New function.
+ (VirTeX-common-initialization): Add TeX--completion-at-point to
+ completion-at-point-functions in TeX buffers if that's bound.
+
+2017-01-03 Mos¨ Giordano <mose@gnu.org>
+
+ Use RefTeX for multiple citations in biblatex
+
+ * style/biblatex.el (LaTeX-arg-biblatex-cites): Use RefTeX when
+ available. Suggested by Arash Esbati.
+
+2017-01-03 Tassilo Horn <tsdh@gnu.org>
+
+ Simple docfix
+
+ * font-latex.el (font-latex-fontify-script-max-level): Correct escaping of
+ \(...\) in the docstring.
+
+2017-01-03 Tassilo Horn <tsdh@gnu.org>
+
+ Improve multi-level script fontification
+
+ * doc/auctex.texi (Fontification of math): Update docs.
+ * doc/changes.texi: Add an item for the new script fontification
+ features.
+ * font-latex.el (font-latex-fontify-script): Update docstring.
+ (font-latex-fontify-script-max-level): New custom variable.
+ (font-latex--get-script-props): Apply script face only for levels up to
+ font-latex-fontify-script-max-level.
+ (font-latex-script): Adapt call to font-latex--get-script-props.
+
+2017-01-03 Arash Esbati <arash.esbati@gmail.com>
+
+ Add a newline only if \label is inserted
+
+ * style/caption.el (LaTeX-arg-caption-captionof):
+ * style/bicaption.el (LaTeX-arg-bicaption-bicaption): Save the
+ position before asking for a label. Add a newline only if a label
+ is inserted.
+
+2017-01-03 Tassilo Horn <tsdh@gnu.org>
+
+ Bring back multi-level script font-locking
+
+ * doc/auctex.texi (Fontification of math): Add documentation.
+ * font-latex.el (font-latex-script-display): Increase default raise level to
+ 0.5.
+ (font-latex-superscript-face,font-latex-subscript-face): Let scripts be a bit
+ larger (:height 0.85 instead of 0.8).
+ (font-latex--get-script-props): New function for incrementing/decrementing
+ raise display property values.
+ (font-latex-script): Use it.
+
+2017-01-03 Tassilo Horn <tsdh@gnu.org>
+
+ Revert "Remove multi-level/invisible feature of font-latex-fontify-script"
+
+ This reverts commit ccec8501960a448dd8faccaae54dfd9839a37c30.
+
+2017-01-02 Tassilo Horn <tsdh@gnu.org>
+
+ Remove multi-level/invisible feature of font-latex-fontify-script
+
+ * font-latex.el (font-latex-make-user-keywords,font-latex-script-display)
+ (font-latex-script): Remove multi-level/invisible feature of
+ font-latex-fontify-script.
+ (font-latex-doctex-preprocessor-face): Remove function.
+ * doc/auctex.texi (Fontification of math): Remove documentation for
+ font-latex-fontify-script's multi-level and invisible values.
+
+2016-12-31 Arash Esbati <arash.esbati@gmail.com>
+
+ Set `reftex-set-cite-format' to biblatex or natbib
+
+ * style/biblatex.el ("biblatex"): Set `reftex-set-cite-format' to
+ biblatex or natbib depending on package option.
+
+2016-12-30 Uwe Brauer <oub@mat.ucm.es>
+
+ Add new style/exam.sty
+
+ * Makefile.in (STYLESRC): add exam.el
+ * style/exam.el: Add style file
+ * tex-style.el: Move defcustom from exam.el to tex-style.el
+
+2016-12-30 Arash Esbati <arash.esbati@gmail.com>
+
+ Fix the names also in expert macros
+
+ * style/cleveref.el ("cleveref"): Fix the names also in expert macros.
+
+2016-12-30 Arash Esbati <arash.esbati@gmail.com>
+
+ Fix name of macros \lcnamecref and \lcnamecrefs
+
+ * style/cleveref.el ("cleveref"): Fix name of macros \lcnamecref
+ and \lcnamecrefs.
+
+2016-12-30 Arash Esbati <arash.esbati@gmail.com>
+
+ Add fontification for varioref's referencing macros
+
+ * font-latex.el (font-latex-built-in-keyword-classes): Add starred
+ version to \vref macro.
+
+ * style/varioref.el ("varioref"): Add fontification support for
+ referencing macros.
+
+2016-12-30 Arash Esbati <arash.esbati@gmail.com>
+
+ Add starred version of \citeauthor and \Citeauthor
+
+ * font-latex.el (font-latex-built-in-keyword-classes):
+ * style/biblatex.el ("biblatex"): Add starred version of
+ \citeauthor and \Citeauthor macros.
+
+2016-12-30 Arash Esbati <arash.esbati@gmail.com>
+
+ Fix fontification for natbib compat macros
+
+ * style/biblatex.el ("biblatex"): Fix fontification for natbib
+ compat macros which take 2 optional arguments.
+
+2016-12-29 Arash Esbati <arash.esbati@gmail.com>
+
+ Add \switchcolumn to paragraph commands
+
+ * style/paracol.el ("paracol"): Add \switchcolumn to paragraph
+ commands.
+
+2016-12-29 Arash Esbati <arash.esbati@gmail.com>
+
+ Add new style/titletoc.el
+
+ * style/titletoc.el: New file.
+
+ * Makefile.in (STYLESRC): Add new style.
+
+2016-12-29 Arash Esbati <arash.esbati@gmail.com>
+
+ Add new style/titlesec.el
+
+ * Makefile.in (STYLESRC): Add new style.
+
+ * style/titlesec.el: New file.
+
+2016-12-29 Arash Esbati <arash.esbati@gmail.com>
+
+ Add new style/titleps.el
+
+ * Makefile.in (STYLESRC): Add new style.
+
+ * style/titleps.el: New file.
+
+2016-12-29 Arash Esbati <arash.esbati@gmail.com>
+
+ Add new style/mdframed.el
+
+ * Makefile.in (STYLESRC): Add new style.
+
+ * style/mdframed.el: New file.
+
+2016-12-29 Arash Esbati <arash.esbati@gmail.com>
+
+ Add new tcolorbox library style/tcolorboxlib-raster.el
+
+ * Makefile.in (STYLESRC): Add new style.
+
+ * style/tcolorboxlib-raster.el: New file.
+
+2016-12-29 Arash Esbati <arash.esbati@gmail.com>
+
+ Update style/tcolorbox.el to package v3.96
+
+ * style/tcolorbox.el: Update style to package v3.96.
+
+2016-12-29 Arash Esbati <arash.esbati@gmail.com>
+
+ Query for optional float position
+
+ * style/newfloat.el (LaTeX-newfloat-auto-cleanup): Query for
+ optional float position.
+
+2016-12-29 Arash Esbati <arash.esbati@gmail.com>
+
+ Improve inserting arguments of \captionof macro
+
+ * style/caption.el (LaTeX-arg-caption-captionof): New function
+ improving query and insert of caption and label acc. to float
+ type.
+ ("caption"): Use it.
+
+2016-12-29 Mos¨ Giordano <mose@gnu.org>
+
+ Fix documentation of TeX-arg-file
+
+ * doc/auctex.texi (Adding Macros): `TeX-arg-file' does not strip
+ extension. Reported by Tyler Smith. Fixes bug#24444.
+
+2016-12-26 Uwe Brauer <oub@mat.ucm.es>
+
+ Make AUCTeX and RefTeX aware of file loading macro \subfile
+
+ * style/subfiles.el ("subfiles"): Make subfile macro be recognized
+ as a paragraph command. For AUCTeX, add argument of subfile to
+ `TeX-auto-file'. For RefTeX, append subfile to
+ `reftex-include-file-commands' and run `reftex-compile-variables'
+ only once. Code rearrangement.
+
+2016-12-24 Mos¨ Giordano <mose@gnu.org>
+
+ Print only first line of the message in error overview
+
+ * tex-buf.el (TeX-error-overview-make-entries): Use `push' in place of
+ `add-to-list'. Print only the first line of the message.
+
+2016-12-23 Arash Esbati <arash.esbati@gmail.com>
+
+ Mention improvements to `LaTeX-array-count-columns' in news
+
+ * doc/changes.texi: Mention improvements to
+ `LaTeX-array-count-columns' in news since 11.89.
+
+2016-12-23 Arash Esbati <arash.esbati@gmail.com>
+
+ Extend test for new column counting code with style files loaded
+
+ * tests/latex/tabular-count-ampersands-out.tex:
+ * tests/latex/tabular-count-ampersands-in.tex: Add tests for
+ tabularx, tabulary, longtable, dcolumn, siunitx constructs.
+
+ * tests/latex/latex-test.el
+ (LaTeX-count-ampersands-inserted-in-tabular): Set `TeX-parse-self'
+ to t in order to load style files in the test. Thanks to Mos¨
+ Giordano for enabling this feature.
+
+2016-12-22 Arash Esbati <arash.esbati@gmail.com>
+
+ Update style/minted.el to package version 2.4.1.
+
+ * style/minted.el (LaTeX-minted-key-val-options): Add new key=vals
+ from package version 2.4.1.
+ (LaTeX-minted-key-val-options-local): New variable.
+ (LaTeX-minted-language-list): Set the variable
+ `LaTeX-minted-language-list' after the first call of function.
+ (LaTeX-minted-style-list): New variable.
+ (LaTeX-minted-style-list): New function analogous to
+ `LaTeX-minted-language-list' returning styles provided by
+ pymentize program.
+ (LaTeX-arg-minted-style): New function to insert styles provided
+ by pymentize program into buffer.
+ (LaTeX-minted-update-key-vals): New function to update key=vals in
+ `LaTeX-minted-key-val-options-local'.
+ (LaTeX-minted-auto-cleanup): Call `LaTeX-minted-update-key-vals'.
+ ("minted"): Use `LaTeX-minted-key-val-options-local' for all
+ key=val queries. Update macros incl. fontification. Run style
+ hook for `newfloat' when package option is given.
+
+2016-12-22 Tassilo Horn <tsdh@gnu.org>
+
+ Uniform font-lock updates/don't break prettify (bug#25245)
+
+ * font-latex.el (font-latex-update-font-lock): New function.
+ (font-latex-add-keywords): Use it.
+ (font-latex-after-hacking-local-variables): Use it.
+ * style/alltt.el: Use font-latex-update-font-lock.
+ * style/beamer.el: Ditto.
+ * style/comment.el: Ditto.
+ * style/expl3.el: Ditto.
+ * style/fancyhdr.el: Ditto.
+ * style/fancyvrb.el: Ditto.
+ * style/listings.el: Ditto.
+ * style/minted.el: Ditto.
+ * style/url.el: Ditto.
+
+2016-12-22 Mos¨ Giordano <mose@gnu.org>
+
+ Fix to TeX-add-local-master
+
+ * tex.el (TeX-add-local-master): Parse local variables again after
+ calling the mode function, which killed local variables.
+
+2016-12-21 Mos¨ Giordano <mose@gnu.org>
+
+ Add style/ directory to TeX-style-path for tests
+
+ * tests/latex/latex-test.el: Add our "style/" directory `TeX-style-path'
+ to make it possible to load style files inside tests.
+
+2016-12-20 Mos¨ Giordano <mose@gnu.org>
+
+ * tex.el (TeX-add-local-master): Inherit major mode from master file.
+
+2016-12-19 Arash Esbati <arash.esbati@gmail.com>
+
+ Mention that arguments to *-operator must be in braces
+
+ * doc/auctex.texi (Tabular-like): Mention that the new code for
+ counting columns in *{num}{cols} expects num and cols to be
+ enclosed in braces.
+
+2016-12-19 Arash Esbati <arash.esbati@gmail.com>
+
+ Add test for new column counting code
+
+ * tests/latex/tabular-count-ampersands-out.tex:
+ * tests/latex/tabular-count-ampersands-in.tex: New files.
+
+ * tests/latex/latex-test.el
+ (LaTeX-count-ampersands-inserted-in-tabular): Test new column
+ counting code in `LaTeX-array-count-columns'.
+
+2016-12-19 Arash Esbati <arash.esbati@gmail.com>
+
+ Count *-operator in column specification
+
+ * latex.el (LaTeX-array-count-columns): Detect *-operator in
+ column specification and count the arguments for final calculation
+ of columns. Thanks to Ikumi Keita for pointing out this
+ deficiency and code to fix it.
+
+2016-12-19 Arash Esbati <arash.esbati@gmail.com>
+
+ Add new style/dcolumn.el
+
+ * Makefile.in (STYLESRC): Add new style.
+
+ * style/dcolumn.el: New file.
+
+2016-12-19 Arash Esbati <arash.esbati@gmail.com>
+
+ Accept non-letter characters as column specifier
+
+ * style/array.el (LaTeX-array-newcolumntype-regexp): Accept
+ non-letter characters as column specifier.
+
+2016-12-17 Arash Esbati <arash.esbati@gmail.com>
+
+ Use `LaTeX-item-longtable' while inserting longtable's
+
+ * style/longtable.el (LaTeX-longtable-skipping-regexp): New variable.
+ (LaTeX-item-longtable): New function. This function is a
+ variation of `LaTeX-item-array' which uses
+ `LaTeX-longtable-skipping-regexp' when inserting ampersands.
+ ("longtable"): Append longtable to `LaTeX-item-list'.
+
+2016-12-17 Arash Esbati <arash.esbati@gmail.com>
+
+ Add "s" and "S" to `LaTeX-array-column-letters'
+
+ * style/siunitx.el ("siunitx"): Add column specification letters
+ "s" and "S" to `LaTeX-array-column-letters'.
+
+2016-12-17 Arash Esbati <arash.esbati@gmail.com>
+
+ Append tabular[xy] to `LaTeX-item-list'
+
+ * style/tabulary.el ("tabulary"):
+ * style/tabularx.el ("tabularx"): Append tabularx and tabulary to
+ `LaTeX-item-list'.
+
+2016-12-06 Arash Esbati <arash.esbati@gmail.com>
+
+ Support RefTeX with `reftex-add-index-macros' in style/splitidx.el
+
+ * style/splitidx.el ("splitidx"): Support RefTeX with
+ `reftex-add-index-macros' and not by appending macros to
+ `reftex-index-macros'.
+
+2016-12-06 Arash Esbati <arash.esbati@gmail.com>
+
+ Support RefTeX with `reftex-add-label-environments' in style/mathtools.el
+
+ * style/mathtools.el (LaTeX-mathtools-auto-cleanup, "mathtools"):
+ Support RefTeX with `reftex-add-label-environments' and not by
+ appending environments to `reftex-label-alist'.
+ ("mathtools"): Add fontification support for referencing macros.
+
+2016-12-06 Arash Esbati <arash.esbati@gmail.com>
+
+ Support RefTeX with `reftex-add-label-environments' in style/empheq.el
+
+ * style/empheq.el ("empheq"): Support RefTeX with
+ `reftex-add-label-environments' and not by appending environments
+ to `reftex-label-alist'.
+
+2016-12-05 Arash Esbati <arash.esbati@gmail.com>
+
+ Fix query for defined colors in style/textpos.el
+
+ * style/textpos.el ("textpos"): Use `cond' to check which color
+ defining package is loaded and use the respective function for
+ `completing-read'.
+
+2016-12-05 Arash Esbati <arash.esbati@gmail.com>
+
+ Fix query for defined colors in style/ntheorem.el
+
+ * style/ntheorem.el ("ntheorem"): Use `cond' to check which color
+ defining package is loaded and use the respective function for
+ `completing-read'.
+
+2016-11-30 Arash Esbati <arash.esbati@gmail.com>
+
+ Add support for LaTeX core command \textsubscript
+
+ * font-latex.el (font-latex-built-in-keyword-classes):
+ * latex.el (LaTeX-common-initialization): Add entry for
+ "textsubscript" which is in LaTeX core since 2015/01/01.
+
+2016-11-28 Arash Esbati <arash.esbati@gmail.com>
+
+ Do not spell-check arguments of \LTXtable
+
+ * tex-ispell.el (TeX-ispell-skip-cmds-list): Add entry for
+ \LTXtable.
+
+2016-11-28 Arash Esbati <arash.esbati@gmail.com>
+
+ Add \LTXtable to list of file-loading commands
+
+ * style/ltxtable.el (LaTeX-ltxtable-file-regexp): New variable.
+ ("ltxtable"): Make AUCTeX and RefTeX aware of \LTXtable as file
+ loading command.
+ Add fontification support.
+
+2016-11-25 Arash Esbati <arash.esbati@gmail.com>
+
+ Support new floats defined with newfloat package
+
+ * style/caption.el (LaTeX-caption-update-key-val-options): Append
+ new floating environments defined with "newfloat.sty" as values to
+ "type*?" keys in `LaTeX-caption-key-val-options-local'.
+
+2016-11-25 Arash Esbati <arash.esbati@gmail.com>
+
+ Append entry to `LaTeX-label-alist' for new "verbatim" floats
+
+ * style/newfloat.el (LaTeX-newfloat-auto-cleanup): Append an entry
+ for parsed environments of "verbatim" type to `LaTeX-label-alist'.
+
+2016-11-24 Arash Esbati <arash.esbati@gmail.com>
+
+ Insert \label inside the mandatory argument of \caption
+
+ * style/longtable.el ("longtable"): Append \label at the end of
+ caption text inside the mandatory argument.
+ (LaTeX-longtable-package-options): New variable to suppress the
+ query for package options.
+
+2016-11-24 Uwe Brauer <oub@mat.ucm.es>
+
+ Add style file for subfiles package.
+
+ * Makefile.in (STYLESRC): add subfiles.el entry
+
+ * style/subfiles.el ("subfiles"): add new style.
+
+2016-11-23 Mos¨ Giordano <mose@gnu.org>
+
+ Min fix to kpfonts package
+
+ * style/kpfonts.el ("kpfonts"): Move setting of `TeX-font-list' inside
+ the hook.
+
+2016-11-23 Mos¨ Giordano <mose@gnu.org>
+
+ Add style file for amsfonts package
+
+ * style/amsfonts.el: New file.
+ * Makefile.in (STYLESRC): Install it.
+ * style/amssymb.el ("amssymb"): Run `amsfonts' hook.
+
+2016-11-21 Arash Esbati <arash.esbati@gmail.com>
+
+ Add new style/bicaption.el
+
+ * Makefile.in (STYLESRC): Add new style.
+
+ * style/bicaption.el: New file.
+
+2016-11-21 Arash Esbati <arash.esbati@gmail.com>
+
+ Add support for style/bicaption.el to style/caption.el
+
+ * style/caption.el (LaTeX-caption-supported-float-types): Add
+ supported caption types available with bicaption.el.
+ ("caption"): Append key=vals from bicaption.el to
+ `LaTeX-caption-key-val-options-local'.
+ ("caption"): Query for a second optional argument with
+ \captionsetup*? if bicaption.el is loaded. Same for
+ fontification.
+
+2016-11-21 Arash Esbati <arash.esbati@gmail.com>
+
+ Do not insert a new line if \label is omitted
+
+ * style/subcaption.el (LaTeX-arg-subcaption-subcaption): Insert a
+ new line only if \label is given.
+
+2016-11-18 Arash Esbati <arash.esbati@gmail.com>
+
+ Improve caption and label insertion in style/caption.el
+
+ * style/caption.el (LaTeX-caption-key-val-options): Add key slc
+ which is an abbrev for singlelinecheck.
+ (LaTeX-arg-caption-captionbox): Delete unused prompt argument.
+ Ask for short caption acc. to the value of
+ `LaTeX-short-caption-prompt-length'. Use `LaTeX-label' instead of
+ `TeX-insert-macro' to insert a label. Use `TeX-argument-insert'
+ instead of conditional insert.
+ ("caption"): Do not fontify the last argument of \captionbox.
+ Fontification happens within \begin...\end{tabular} or
+ \includegraphics.
+
+2016-11-18 Arash Esbati <arash.esbati@gmail.com>
+
+ Improve caption and label insertion in style/subcaption.el
+
+ * style/subcaption.el (LaTeX-arg-subcaption-subcaption): Delete
+ unused prompt argument. Ask for short caption acc. to the value
+ of `LaTeX-short-caption-prompt-length'. Fill the inserted
+ sub-caption before using `LaTeX-label' to insert the label.
+ (LaTeX-arg-subcaption-subcaptionbox): Delete unused prompt
+ argument. Ask for short caption acc. to the value of
+ `LaTeX-short-caption-prompt-length'. Use `LaTeX-label' to insert
+ the label. Use `TeX-argument-insert' instead of conditional
+ insert.
+ ("subcaption"): Append package environments to `LaTeX-label-alist'.
+ ("subcaption"): Do not fontify the last argument of
+ \subcaptionbox. Fontification happens within
+ \begin...\end{tabular} or \includegraphics.
+
+2016-11-16 Arash Esbati <arash.esbati@gmail.com>
+
+ Add new style/FiraSans.el
+
+ * Makefile.in (STYLESRC): Add new style.
+
+ * style/FiraSans.el: New file.
+
+2016-11-16 Arash Esbati <arash.esbati@gmail.com>
+
+ Add new style/FiraMono.el
+
+ * Makefile.in (STYLESRC): Add new style.
+
+ * style/FiraMono.el: New file.
+
+2016-11-14 Mos¨ Giordano <mose@gnu.org>
+
+ Suggest to display warnings when there are no errors in error overview
+
+ * tex-buf.el (TeX-error-overview): When there are no errors, suggest to
+ display warnings and bad boxes, if present. Fixes bug #24877.
+
+2016-11-04 Tassilo Horn <tsdh@gnu.org>
+
+ Refresh font-latex fontification if vars are modified
+
+ Refresh font-latex fontification if variables such as
+ LaTeX-verbatim-*-local are set in a file-local variables block or as
+ directory-local variables (bug#24868).
+
+ * font-latex.el (font-latex-after-hacking-local-variables): New function.
+ (font-latex-setup): Add it do hack-local-variables-hook.
+ * tex.el (TeX--list-of-string-p): New function.
+ * latex.el (LaTeX-verbatim-environments-local):
+ (LaTeX-verbatim-macros-with-braces-local):
+ (LaTeX-verbatim-macros-with-delims-local): Use it for
+ safe-local-variable property.
+
+2016-11-02 Arash Esbati <arash.esbati@gmail.com>
+
+ Update style/natbib.el to package version 8.31b
+
+ * style/natbib.el ("natbib"): Add missing macros to catch up with
+ package version 8.31b. Rearrange code.
+ (LaTeX-arg-natbib-notes): Remove redundant check if
+ `TeX-arg-cite-note-p' is non-nil.
+
+2016-10-17 Tassilo Horn <tsdh@gnu.org>
+
+ Make Copyright headers conforming to convention
+
+2016-10-17 Arash Esbati <arash.esbati@gmail.com>
+
+ Do not insert unnecessary brackets for citation macros
+
+ * style/natbib.el (LaTeX-arg-natbib-notes): Rename function name
+ from `natbib-note-args'.
+ Improve the insertion of arguments in order not to have an empty
+ pair of brackets when both pre- and post-note are omitted.
+ ("natbib"): Replace occurrence of `natbib-note-args' with
+ `LaTeX-arg-natbib-notes'.
+
+2016-10-17 Arash Esbati <arash.esbati@gmail.com>
+
+ Use `TeX-argument-insert' instead of conditional `insert'
+
+ * style/biblatex.el (LaTeX-arg-biblatex-natbib-notes): Use
+ `TeX-argument-insert' instead of `insert' for arguments
+ insertion.
+
+2016-10-16 Arash Esbati <arash.esbati@gmail.com>
+
+ Add support for natbib macros to style/biblatex
+
+ * style/biblatex.el (LaTeX-arg-biblatex-natbib-notes): New
+ function.
+ ("biblatex"): Add completion and fontification support for natbib
+ compatibility macros.
+
+2016-10-14 Tassilo Horn <tsdh@gnu.org>
+
+ Manually merge changes that were only on the elpa branch
+
+2016-10-13 Tassilo Horn <tsdh@gnu.org>
+
+ Fix TeX--if-macro-fboundp edebug spec
+
+ * tex.el (TeX--if-macro-fboundp): Fix broken edebug spec.
+
+2016-09-27 Mos¨ Giordano <mose@gnu.org>
+
+ Fix to my previous commit
+
+ * tex-buf.el (TeX-BibTeX-sentinel): Fix misplaced `setq', it was inside
+ the `cond' form while it should have been outside.
+
+2016-09-19 Tassilo Horn <tsdh@gnu.org>
+
+ Improve docs added/changed in last commit
+
+ * doc/auctex.texi (Display): Rewrite WYSIWYG paragraph and add
+ references.
+ (Fontification of math): Switch order in which multi-level and invisible
+ are introduced. Fix misplaced @xref.
+
+2016-09-19 Uwe Brauer <oub@mat.ucm.es>
+
+ Add information about prettify and semi WYSIWYG features.
+
+ * doc/auctex.texi (Display): Add a sentence about
+ prettify-symbols-unprettify-at-point.
+ (Fontification of math): add `invisible' to
+ `font-latex-fontify-script'.
+
+2016-09-18 Tassilo Horn <tsdh@gnu.org>
+
+ Don't require \end{env} is on a separate line
+
+ * font-latex.el (font-latex-make-user-keywords):
+ (font-latex-set-syntactic-keywords): Don't require that \end{env} is on
+ a line of its own. Also allow empty mandatory argument in verbatim
+ environments.
+
+2016-09-18 Mos¨ Giordano <mose@gnu.org>
+
+ Fix default command after running BibTeX with warnings
+
+ * tex-buf.el (TeX-BibTeX-sentinel): Always set `TeX-command-next' to
+ `TeX-command-default'. As it was before, if BibTeX issued
+ warnings (or errors) the default next command would have been "View",
+ which is in no case what the user would expect. This is the same
+ logic used in Biber sentinel (which has, in addition, a fatal error
+ after which Biber is run again).
+
+2016-09-18 Tassilo Horn <tsdh@gnu.org>
+
+ Improve font-locking of verbatim environments
+
+ * font-latex.el (font-latex-set-syntactic-keywords): Handle case where
+ verbatim content immediately follows \begin{verb-env}.
+
+2016-09-17 Uwe <oub@mat.ucm.es>
+
+ Improve style/bidi and add make file entry.
+
+ * Makefile.in (STYLESRC): add bidi.el
+
+ * style/bidi.el ("bidi"): New file.
+
+2016-09-17 Arash Esbati <arash.esbati@gmail.com>
+
+ Improve style/graphicx.el
+
+ * doc/changes.texi: Document the changes about graphicx.el.
+
+ * tex-style.el (LaTeX-includegraphics-options-alist): Remove the
+ now no-op variable.
+
+ * style/graphics.el ("graphics"): Set
+ `LaTeX-graphics-package-options' after running hooks for
+ graphicx.el.
+
+ * style/graphicx.el (LaTeX-graphicx-key-val-options)
+ (LaTeX-includegraphics-dvips-extensions)
+ (LaTeX-includegraphics-pdftex-extensions)
+ (LaTeX-includegraphics-xetex-extensions)
+ (LaTeX-graphicx-package-options): New variables.
+ (LaTeX-arg-graphicx-includegraphics-key-val): New function.
+ (LaTeX-includegraphics-extensions): Return extensions for input
+ files depending on the used engine.
+ (LaTeX-arg-includegraphics): Only query for the image file to
+ include. The query for the optional key-val argument is now done
+ by `LaTeX-arg-graphicx-includegraphics-key-val'.
+ ("graphicx"): Extend the query for commands \resizebox[*].
+ Commands shared with graphics.el are guarded respectively.
+ Add missing commands \graphicspath, \DeclareGraphicsExtensions and
+ \DeclareGraphicsRule.
+
+2016-09-14 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ Cherry-pick 9c24759a96f41e288841ec2e815d62d58dc01e7a from elpa branch
+
+ * tex-ispell.el (TeX-ispell-sort-skip-cmds-list): Drop symbol-value
+
+ * tex-site.el.in (TeX-modes): Use #'.
+
+2016-09-04 Mos¨ Giordano <mose@gnu.org>
+
+ Do not use a function from cl
+
+ * tex-buf.el (TeX-parse-TeX): Do not use the `signum' function, provided
+ by `cl' library.
+
+2016-09-02 Mos¨ Giordano <mose@gnu.org>
+
+ Fix type of ConTeXt-Mark-version option
+
+ * context.el (ConTeXt-Mark-version): Fix the type, it was wrongly set
+ with a string in place of a symbol. Reported by Tobias Berndt.
+
+2016-09-01 Arash Esbati <arash.esbati@gmail.com>
+
+ Add new style/menukeys.el
+
+ * Makefile.in (STYLESRC): Add new style.
+
+ * style/menukeys.el: New file.
+
+2016-09-01 Arash Esbati <arash.esbati@gmail.com>
+
+ Add new style/paracol.el
+
+ * Makefile.in (STYLESRC): Add new style.
+
+ * style/paracol.el: New file.
+
+2016-09-01 Arash Esbati <arash.esbati@gmail.com>
+
+ Add new style/framed.el
+
+ * Makefile.in (STYLESRC): Add new style.
+
+ * style/framed.el: New file.
+
+2016-08-31 Arash Esbati <arash.esbati@gmail.com>
+
+ Use `TeX-ispell-skip-setcar' on user defined index macros
+
+ * style/splitidx.el (LaTeX-splitidx-newindex-regex): Replace wrong
+ `^}' with `^]'.
+ (LaTeX-splitidx-auto-cleanup, "splitidx"): Use
+ `TeX-ispell-skip-setcar' on user defined index macros.
+
+2016-08-31 Arash Esbati <arash.esbati@gmail.com>
+
+ Use `TeX-ispell-skip-setcdr' on user defined listing environments
+
+ * style/listings.el (LaTeX-listings-auto-cleanup): Use
+ `TeX-ispell-skip-setcdr' on user defined lists.
+
+2016-08-31 Arash Esbati <arash.esbati@gmail.com>
+
+ Use `TeX-ispell-skip-setcdr' on user defined list environments
+
+ * style/enumitem.el (LaTeX-enumitem-auto-cleanup): Use
+ `TeX-ispell-skip-setcdr' on user defined lists.
+ ("enumitem"): Use `TeX-ispell-skip-setcdr' on user defined lists.
+ Use `TeX-argument-insert' instead of `insert'.
+
+2016-08-25 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Revise document for Japanese TeX
+
+ Revise document for Japanese TeX
+ * doc/auctex.texi (Language Support): Fix old statements. Mention
+ about (semi-)obsolete variables japanese-(La)TeX-command-default,
+ japanese-TeX-command-list and recommend to use
+ japanese-TeX-engine-default instead.
+
+2016-08-25 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Add a Japanese error message translation
+
+ * tex-jp.el (TeX-error-description-list): Add a Japanese error
+ message translation.
+
+2016-08-25 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Set the right coding systems for Japanese TeX process
+
+ Set the right coding systems for Japanese TeX process
+
+ * tex-jp.el:
+ (LaTeX-command-style): Remove kanji option from uplatex and jlatex,
+ which was there by mistake.
+ (TeX-japanese-process-input-coding-system,
+ TeX-japanese-process-output-coding-system,
+ japanese-TeX-set-process-coding-system): The coding systems for
+ interacting with Japanese TeX vary with the OS and other
+ circumstances. So choose the suitable coding system at run time
+ rather than using the fixed values.
+ (japanese-TeX-use-kanji-opt-flag): Declare before the first use.
+ In addition, change default value and tailor doc string as per the
+ above change.
+ (japanese-TeX-coding-ejsu): Add coding system compatible for emacs
+ 21 and xemacs.
+
+2016-08-24 Mos¨ Giordano <mose@gnu.org>
+
+ Make TeX-previous-error go backward
+
+ * tex-buf.el (TeX-parse-TeX): Decrease `TeX-error-last-visited' when
+ `arg' is negative. This fixes the behavior of `TeX-previous-error'.
+
+2016-08-23 Arash Esbati <arash.esbati@gmail.com>
+
+ Update style/mathtools.el to v1.18 of mathtools.sty
+
+ * style/mathtools.el (LaTeX-mathtools-package-options): Add
+ "nonrobust" option.
+ (LaTeX-mathtools-key-val-options): Add missing key=vals. Insert a
+ period in doc string.
+ (LaTeX-mathtools-arg-mathstyle-completion)
+ (LaTeX-mathtools-arg-mathsize-completion)
+ (LaTeX-mathtools-arg-declarepaireddelimiter)
+ (LaTeX-mathtools-env-cases)
+ (LaTeX-mathtools-item-cases): New functions.
+ (LaTeX-mathtools-env-multlined): Add an empty pair of square
+ brackets if only the second optional argument is given.
+ ("mathtools"): Update commands and environments in style hook.
+ (LaTeX-mathtools-env-matrix-starred)
+ (LaTeX-mathtools-env-spreadlines): Delete functions. Use
+ ["string"] when adding environments in `LaTeX-add-environments'.
+
+2016-08-21 Mos¨ Giordano <mose@gnu.org>
+
+ Fold environments with * in name
+
+ * tex-fold.el (TeX-fold-item): Add asterisk to the regexp matching LaTeX
+ environment names. Fixes bug#24263.
+
+2016-08-21 Mos¨ Giordano <mose@gnu.org>
+
+ Remove obsolete TeX-function-p function
+
+ * tex.el (TeX-function-p): Remove this function. It was introduced here
+ in AUCTeX in 1994, but is present in Emacs since 1997 as well, under
+ the name `functionp'. Fixes bug#24245.
+ * tex-buf.el (TeX-command-expand): Replace `TeX-function-p' with
+ `functionp'.
+
+2016-08-14 Arash Esbati <arash.esbati@gmail.com>
+
+ Add new style/empheq.el
+
+ * Makefile.in (STYLESRC): Add new style.
+
+ * style/empheq.el: New file.
+
+2016-08-10 Arash Esbati <arash.esbati@gmail.com>
+
+ Add new style/commath.el
+
+ * Makefile.in (STYLESRC): Add new style.
+
+ * style/commath.el: New file.
+
+2016-08-02 Arash Esbati <arash.esbati@gmail.com>
+
+ Add new style/pdflscape.el
+
+ * Makefile.in (STYLESRC): Add new style.
+
+ * style/pdflscape.el: New file.
+
+2016-07-22 Arash Esbati <arash.esbati@gmail.com>
+
+ Document interaction with Ispell
+
+ * doc/auctex.texi (Selecting a Command): Document interaction with Ispell.
+
+2016-07-18 Arash Esbati <arash.esbati@gmail.com>
+
+ Add new spell checking dictionary tex-ispell.el
+
+ * doc/todo.texi (Wishlist): Remove spell checking of macros from
+ wish list.
+
+ * doc/changes.texi: Mention new file tex-ispell.el in news since
+ 11.89.
+ Fix typo.
+
+ * Makefile.in (AUCSRC): Add tex-ispell.el.
+
+ * latex.el (tex-ispell): Require tex-ispell.el.
+
+ * tex.el (TeX-ispell-extend-skip-list): New customizable variable.
+ (TeX-ispell-skip-setcar, TeX-ispell-skip-setcdr): New functions.
+ (TeX-ispell-tex-arg-end): New function.
+
+ * tex-ispell.el: Add new file.
+
+2016-07-08 Arash Esbati <arash.esbati@gmail.com>
+
+ Reset `LaTeX-auto-xcolor-definecolorset' before parsing
+
+ * style/xcolor.el (LaTeX-xcolor-auto-prepare): Reset
+ `LaTeX-auto-xcolor-definecolorset' before parsing.
+ Improve comments.
+
+2016-07-08 Arash Esbati <arash.esbati@gmail.com>
+
+ Fix doc string for curve quoting style in Emacs 25
+
+ * style/theorem.el (LaTeX-theorem-env-label):
+ * style/ntheorem.el (LaTeX-ntheorem-env-label):
+ * style/amsthm.el (LaTeX-amsthm-env-label): Fix doc string for new
+ text quoting style in Emacs 25.
+
+2016-06-29 Arash Esbati <arash.esbati@gmail.com>
+
+ Catch up with deletion of \commondummies in texinfo.tex
+
+ * doc/macros.texi: Catch up with deletion of \commondummies in
+ texinfo.tex which is replaced with \definedummies. Check which
+ command is defined and add AUCTeX definitions respectively.
+
+2016-06-28 Masayuki Ataka <masayuki.ataka@gmail.com> (tiny change)
+
+ Fix to doc/auctex.texi
+
+ * doc/auctex.texi (Prettifying): Insert missing '{}'.
+
+2016-06-27 Mos¨ Giordano <mose@gnu.org>
+
+ Change test for PDF Tools availability
+
+ * tex.el (TeX-pdf-tools-sync-view): Change test for PDF Tools
+ availability, in order to make it possible to postpone loading of the
+ package, for example when using "use-package". Fixes bug#23803.
+
+2016-06-11 Tassilo Horn <tsdh@gnu.org>
+
+ More about TeX-raise-frame-function
+
+ * doc/auctex.texi (I/O Correlation): Improve TeX-raise-frame-function
+ docs.
+ * doc/changes.texi: Mention TeX-raise-frame-function.
+ * tex.el (TeX-raise-frame-function): Use raise-frame as default value.
+
+2016-06-11 Tassilo Horn <tsdh@gnu.org>
+
+ Document TeX-raise-frame-function
+
+ * doc/auctex.texi (I/O Correlation): Document TeX-raise-frame-function.
+
+2016-06-10 Tassilo Horn <tsdh@gnu.org>
+
+ New defcustom TeX-raise-frame-function
+
+ * tex.el (TeX-raise-frame-function): New defcustom.
+ (TeX-source-correlate-sync-source): Use it.
+
+2016-06-04 Uwe Brauer <oub@mat.ucm.es>
+
+ Document how to disable filling for specific environments
+
+ * latex.el (LaTeX-indent-environment-list): Mention in docstring that
+ environments listed here are not filled.
+ (LaTeX-fill-region-as-paragraph): Add information to the docstring
+ concerning excluding enviroments from that function by using
+ `LaTeX-indent-environment-list'. Suggested by Uwe Brauer.
+
+2016-05-31 Mos¨ Giordano <mose@gnu.org>
+
+ Fix compatibility with GNU Emacs < 24
+
+ * tex.el (TeX-source-correlate-sync-source): Call `x-focus-frame' only
+ when it is available.
+
+2016-05-29 Tassilo Horn <tsdh@gnu.org>
+
+ Grab focus on Evince inverse search
+
+ * tex.el (TeX-source-correlate-sync-source): Call `x-focus-frame'.
+
+2016-05-29 Tassilo Horn <tsdh@gnu.org>
+
+ Don't use non-existing custom-buffer-done-function
+
+ * tex-wizard.el (TeX-wizard): Use `kill-buffer-hook' and
+ `custom-buffer-done-kill' instead of `custom-buffer-done-function' which
+ has been removed from Emacs a long time ago.
+
+2016-05-27 Tassilo Horn <tsdh@gnu.org>
+
+ Docs for prettification with Emacs 25+
+
+ * doc/auctex.texi (Prettifying): Document prettification.
+
+2016-05-27 Stefan Monnier <monnier@IRO.UMontreal.CA>
+
+ Fix byte-compiler warnings.
+
+ * context.el: Fix some byte-compiler warnings.
+ * tex-buf.el: Ditto.
+ * tex-jp.el: Ditto.
+ * tex-mik.el: Ditto.
+ * toolbar-x.el: Ditto.
+
+2016-05-24 Tassilo Horn <tsdh@gnu.org>
+
+ Fix copyright header of tex-jp.el
+
+ * tex-jp.el: Fix Copyright and Author headers.
+
+2016-05-22 Tassilo Horn <tsdh@gnu.org>
+
+ Convert ChangeLog.1 to UTF-8
+
+ * ChangeLog.1: Convert to UTF-8 and adjust encoding cookie.
+
+2016-05-22 Tassilo Horn <tsdh@gnu.org>
+
+ Make ChangeLog UTF-8
+
+ * ChangeLog-preview.1: Convert to UTF-8.
+ * build-aux/gitlog-to-auctexlog: Remove iconv call for converting
+ ChangeLog to ISO-8859-1.
+
+2016-05-21 Mos¨ Giordano <mose@gnu.org>
+
+ Append environment indentation rules to LaTeX-indent-environment-list
+
+ * style/alltt.el ("alltt"): Append indentation rule to
+ `LaTeX-indent-environment-list' in order not to override custom
+ settings. Reported by Fran§ois Patte.
+ * style/beamer.el ("beamer"): Ditto.
+ * style/doc.el ("doc"): Ditto.
+ * style/fancyvrb.el ("fancyvrb"): Ditto.
+ * style/filecontents.el ("filecontents"): Ditto.
+ * style/hyperref.el ("hyperref"): Ditto.
+ * style/listings.el (LaTeX-listings-auto-cleanup, "listings"): Ditto.
+ * style/longtable.el ("longtable"): Ditto.
+ * style/minted.el (LaTeX-minted-auto-cleanup, "minted"): Ditto.
+ * style/tabularx.el ("tabularx"): Ditto.
+ * style/tabulary.el ("tabulary"): Ditto.
+
+2016-05-18 Arash Esbati <esbati@gmx.de>
+
+ Respect both "xcolor" and "color" for command queries
+
+ * style/textpos.el ("textpos"): Remove "color" from
+ `TeX-run-style-hooks'.
+ ("textpos"): Respect both "xcolor" and "color" for query to
+ "textblockcolour" and "textblockrulecolour" commands.
+
+2016-05-18 Arash Esbati <esbati@gmx.de>
+
+ Respect both "xcolor" and "color" for query to "shadecolor"
+
+ * style/ntheorem.el ("ntheorem"): Respect both "xcolor" and
+ "color" for query to "shadecolor" command.
+
+2016-05-18 Arash Esbati <esbati@gmx.de>
+
+ Adjust query commands for loading by xcolor.el
+
+ * style/colortbl.el ("colortbl"): Run style hook for "color" only
+ if "xcolor" is not an active style.
+ ("colortbl"): Check if "xcolor" is an active style and run
+ (TeX-arg-xcolor) or (TeX-arg-color) respectively to query for the
+ arguments.
+
+2016-05-18 Arash Esbati <esbati@gmx.de>
+
+ Run `TeX-add-symbols' if "xcolor" is not an active style
+
+ * style/color.el ("color"): Check if "xcolor" is an active style
+ and then run `TeX-add-symbols' on commands defined by "color.sty"
+ and add fontification support.
+
+2016-05-18 Arash Esbati <esbati@gmx.de>
+
+ Add new style/xcolor.el
+
+ * Makefile.in (STYLESRC): Add new style xcolor.el.
+
+ * style/xcolor.el: Add new file.
+
+2016-05-15 Tassilo Horn <tsdh@gnu.org>
+
+ Make TeX-view work better with regions
+
+ * tex-buf.el (TeX-region-update-point): New function which sets point in
+ the region buffer so that it matches the location of point in the
+ current buffer.
+ (TeX-view): Use it.
+
+2016-05-14 Arash Esbati <esbati@gmx.de>
+
+ Improve the insertation of "macro" environment
+
+ * style/doc.el (LaTeX-env-no-comment): Check if argument
+ `environment' is "macro" and query/insert a name prefixed with
+ `TeX-esc'.
+ (LaTeX-doc-after-insert-macrocode): Add "macro" environment.
+ ("doc"): Run `LaTeX-env-no-comment' when "macro" environment is
+ inserted.
+
+2016-05-14 Mos¨ Giordano <mose@gnu.org>
+
+ Use commit date for package date also in configure
+
+ * aclocal.m4 (AC_DATE_VERSION_FROM_CHANGELOG): Use commit date rather
+ than author date.
+
+2016-05-14 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Tweak mode name only when file local variable is enabled.
+
+ * tex-jp.el (japanese-plain-tex-mode-initialization)
+ (japanese-latex-mode-initialization): Tweak mode name only
+ when `enable-local-variables' is non-nil.
+
+2016-05-12 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Adapt for upLaTeX
+
+ * tex-buf.el (TeX-LaTeX-sentinel): Accept banner line of upLaTeX.
+ * tex-jp.el (japanese-LaTeX-style-list): Add class file for upLaTeX.
+ * tex.el (TeX-format-list): Make upLaTeX class file names lead to
+ `japanese-latex-mode'.
+
+2016-05-09 Mos¨ Giordano <mose@gnu.org>
+
+ Do not check TeX engine with ifluatex package
+
+ * style/ifluatex.el ("ifluatex"): Set `TeX-check-engine-list' to nil so
+ that the engine is not checked when this package is loaded.
+
+2016-05-09 Mos¨ Giordano <mose@gnu.org>
+
+ Check TeX engine only once
+
+ * tex-buf.el (TeX-check-engine): If user does not want to change engine,
+ do not ask again. Suggested by Joost Kremers.
+
+2016-05-09 Mos¨ Giordano <mose@gnu.org>
+
+ Use commit date to determine package date
+
+ * autogen.sh (AUCTEXDATE): Use commit date, rather than author date, to
+ determine package date.
+
+2016-05-09 Arash Esbati <esbati@gmx.de>
+
+ Insert braces after some macros and \relax after \ProcessOptions
+
+ * style/ltx-base.el ("ltx-base"): Insert a pair of braces after
+ "DeclareOption*", "AtEndOfPackage", "AtEndOfClass",
+ "AtBeginDocument" and "AtEndDocument".
+ Insert a "\relax" after "ProcessOptions".
+
+2016-05-09 Arash Esbati <esbati@gmx.de>
+
+ Improve style/doc.el
+
+ * style/doc.el ("doc"): Do not indent the content inside the "macro"
+ environment.
+ Insert a pair of braces after "DoNotIndex", "StopEventually",
+ "MacroFont", "AltMacroFont".
+ Prefix the string read with TeX-esc when inserting
+ "DescribeMacro", "cmd".
+ Ask for an argument ("parg", "oarg", "marg", "meta").
+ Add missing macro "cs".
+ Delete dups ("MacroFont", "AltMacroFont", "theCodelineNo").
+ Ask for .fdd and .dtx files to input or include ("DocInput",
+ "DocInclude").
+ Add lengths "MacrocodeTopsep", "MacroTopsep", "MacroIndent".
+
+2016-05-06 Mos¨ Giordano <mose@gnu.org>
+
+ Allow for negative offsets in region backward search
+
+ * tex.el (TeX-source-correlate-handle-TeX-region): Use the same regexp
+ used in `preview-parse-messages', that is also XEmacs compatible and
+ allows for negative offsets. This makes backward search work also
+ when using `TeX-command-buffer' and `LaTeX-command-section'. Reported
+ by Qiang Yin.
+
+2016-04-28 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Enable directory local variables in japanese-{latex, plain-tex}-mode
+
+ * tex-jp.el (japanese-latex-mode-initialization): Set
+ `major-mode' to `japanese-latex-mode' and reset it to
+ `latex-mode' after `hack-local-variables' is done.
+ (japanese-plain-tex-mode-initialization): Similar changes
+ for `japanese-plain-tex-mode'.
+ (japanese-TeX-reset-mode-name): New function.
+ (top-level) Make `latex-mode' is regarded as parent of
+ `japanese-latex-mode' in directory local variables. Similar
+ addition for `japanese-plain-tex-mode', too.
+
+2016-04-23 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Make unloading of tex-site work on Emacs 24
+
+ * tex-site.el.in (tex-site-unload-hook): Run `TeX-modes-set' when
+ `advice-add' is defined.
+
+2016-04-20 Mos¨ Giordano <mose@gnu.org>
+
+ Fix TeX-error-overview-make-entries
+
+ * tex-buf.el (TeX-error-overview-make-entries): Add `active-buffer'
+ optional argument. If `TeX-error-overview-open-after-TeX-run' is
+ non-nil and there is an error, TeX sentinels run this function but
+ `TeX-error-overview-active-buffer' hadn’t been initialized yet. Fixes
+ bug#23318.
+
+2016-04-19 Mos¨ Giordano <mose@gnu.org>
+
+ Call TeX-newline-function interactively
+
+ * tex.el (TeX-newline): Replace `funcall' with `call-interactively'.
+ This makes `electric-indent-mode' work out-of-the-box. Suggested by
+ alex (http://comments.gmane.org/gmane.emacs.auctex.devel/4631).
+
+2016-04-19 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Temporarily bind `TeX-insert-macro-default-style' to 'show-optional-args'
+
+ * latex.el (LaTeX-item-argument): Temporarily bind
+ `TeX-insert-macro-default-style' to 'show-optional-args'.
+ This is necessary in description environment if the user customize the
+ option to `mandatory-args-only'.
+
+2016-04-17 Mos¨ Giordano <mose@gnu.org>
+
+ Reword documentation of TeX-PDF-from-DVI
+
+ * doc/auctex.texi (Processor Options): Make information about Japanese
+ documents more accurate. Suggested by Ikumi Keita.
+
+2016-04-16 Mos¨ Giordano <mose@gnu.org>
+
+ Replace TeX-PDF-via-dvips-ps2pdf with TeX-PDF-from-DVI
+
+ * tex.el (TeX-command-list): Add Dvipdfmx.
+ (TeX-expand-list-builtin): Use `TeX-PDF-from-DVI' in place of
+ `TeX-PDF-via-dvips-ps2pdf'.
+ (TeX-PDF-from-DVI): New safe buffer-local and customizable variable.
+ (TeX-PDF-via-dvips-ps2pdf): Mark as obsolete.
+ (TeX-toggle-PDF-via-dvips-ps2pdf): Remove function.
+ (TeX-PDF-from-DVI): New function.
+ (TeX-mode-specific-command-menu-entries): Update menu to convert DVI to
+ PDF.
+ * tex-buf.el (TeX-command-default, TeX-run-set-command,
+ TeX-TeX-sentinel, TeX-TeX-sentinel-check, TeX-LaTeX-sentinel,
+ TeX-dvips-sentinel, TeX-ps2pdf-sentinel): Use `TeX-PDF-from-DVI' in
+ place of `TeX-PDF-via-dvips-ps2pdf'.
+ (TeX-run-dvipdfmx, TeX-dvipdfmx-sentinel): New function.
+ ():
+ * doc/auctex.texi (Processor Options): Document `TeX-PDF-from-DVI' and
+ remove mentions to `TeX-PDF-via-dvips-ps2pdf'
+ * doc/changes.texi: Mention `TeX-PDF-from-DVI'.
+
+2016-04-16 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Use customize option `TeX-region' instead of "_region_"
+
+ * tex-buf.el (TeX-output-revert-buffer): Use customize option
+ `TeX-region' instead of string literal "_region_".
+
+2016-04-16 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Use `deactivate-input-method' if defined
+
+ * tex.el (TeX-math-input-method-off): Use `deactivate-input-method'
+ instead of obsolete function `inactivate-input-method' when possible.
+
+2016-04-16 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Use `match-string-no-properties'
+
+ * texmathp.el (texmathp, texmathp-match-environment): For better
+ consistency with other parts of the file, change `match-string' to
+ `no-properties' variant.
+
+2016-04-16 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Fix small errors in doc string and comment
+
+ * tex.el (TeX-auto-add-type): Change the word `function' to `macro'
+ and add an `s' to the verb `create'.
+
+ * tex-buf.el (TeX-run-format): Correct a typo `debuger' to `debugger'.
+
+2016-04-14 Mos¨ Giordano <mose@gnu.org>
+
+ Fix in TeX sentinels
+
+ * tex-buf.el (TeX-TeX-sentinel, TeX-LaTeX-sentinel): Use
+ `TeX-error-overview-make-entries' to test presence of errors or
+ warnings. This is the same test carried in `TeX-master-directory' and
+ prevents from getting an error when
+ `TeX-error-overview-open-after-TeX-run' is non-nil but
+ `TeX-debug-warnings' and/or `TeX-debug-bad-boxes' are nil.
+
+2016-04-13 Matthew Leach <matthew@mattleach.net>
+
+ Auto save `TeX-command-extra-options'.
+
+ * tex.el (TeX-auto-store): Save the value of `TeX-command-extra-options'
+ so it is set project-wide.
+
+2016-04-13 Matthew Leach <matthew@mattleach.net>
+
+ TikZ: Don't allow relative points with \coordinate.
+
+ * style/tikz.el (TeX-TikZ-point-function-map): Revert back to simple
+ point alist.
+ (TeX-TikZ-relative-point-function-map): New.
+ (TeX-TikZ-draw-arg-function-map): Use
+ `TeX-TikZ-relative-point-function-map'.
+
+2016-04-13 Matthew Leach <matthew@mattleach.net>
+
+ TikZ: Add the grid command.
+
+ * style/tikz.el (TeX-TikZ-arg-grid): New.
+ (TeX-TikZ-draw-arg-function-map): Map the 'Grid' command to
+ `TeX-TikZ-arg-grid'.
+
+2016-04-13 Matthew Leach <matthew@mattleach.net>
+
+ Fix a documentation type.
+
+ * doc/auctex.texi (Automatic Local): Fix a documentation typo.
+
+2016-04-13 Mos¨ Giordano <mose@gnu.org>
+
+ Prevent infinite loop in TeX-command-expand
+
+ * tex.el (TeX-view-command-raw): This function should always return a
+ string. Throw an error if fails to do so. This prevents an infinite
+ loop in `TeX-command-expand' in the case in which `command' is nil
+ because of a malformed viewer specification.
+ * tests/tex/command-expansion.el (TeX-view-command-raw-errors): Add
+ tests to trigger errors in `TeX-view-command-raw'.
+
+2016-04-10 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ Integrate viewer support between tex.el and tex-jp.el
+
+ * tex.el (TeX-view-program-list-builtin): Integrate viewer support
+ between tex.el and tex-jp.el.
+ * tex-jp.el : Ditto.
+
+2016-04-09 Mos¨ Giordano <mose@gnu.org>
+
+ Do not use add-to-list for let-bound variable
+
+ * style/tikz.el (TeX-TikZ-find-named-points): Replace add-to-list with
+ `push'.
+
+2016-04-09 Mos¨ Giordano <mose@gnu.org>
+
+ Compatibility for XEmacs
+
+ * style/tikz.el (TeX-TikZ-single-macro-arg): Pass `function-alist' to
+ `TeX-TikZ-get-arg-type` because XEmacs requires an alist as argument
+ to `completing-read'.
+
+2016-04-08 Matthew Leach <matthew@mattleach.net>
+
+ TikZ: Remove unneeded function.
+
+ * style/tikz.el (TeX-TikZ-arg-rect-point): Delete.
+
+2016-04-08 Matthew Leach <matthew@mattleach.net>
+
+ TikZ: Add the 'sin' and 'cos' connectors.
+
+ * style/tikz.el (TeX-TikZ-path-connector-function-map): Add 'sin' and
+ 'cos' mapping to `identity'.
+
+2016-04-08 Matthew Leach <matthew@mattleach.net>
+
+ TikZ: Make '+' and '++' prefixes apply to TikZ points
+
+ * style/tikz.el (TeX-TikZ-get-prefix-string): New.
+ (TeX-TikZ-arg-rect-point): Add optional argument `prefix'.
+ (TeX-TikZ-arg-polar-point): Likewise.
+ (TeX-TikZ-arg-named-point): Likewise.
+ (TeX-TikZ-single-macro-arg): Allow a variable number of arguments to
+ the argument name function map.
+ (TeX-TikZ-point-function-map): Prefix all point types with '+' and
+ '++'.
+ (TeX-TikZ-path-connector-function-map): Remove the '+' and '++'
+ suffixes.
+
+2016-04-04 Matthew Leach <matthew@mattleach.net>
+
+ TikZ: Add parabola command.
+
+ * style/tikz.el (TeX-TikZ-arg-bend): New.
+ (TeX-TikZ-arg-parabola): New.
+ (TeX-TikZ-draw-arg-function-map): Add mapping from "Parabola" to
+ `TeX-TikZ-arg-parabola'.
+
+2016-04-04 Matthew Leach <matthew@mattleach.net>
+
+ TikZ: Add optional parameter to `TeX-TikZ-single-macro-arg'.
+
+ * style/tikz.el (TeX-TikZ-single-macro-arg): New argument OPTIONAL.
+ (TeX-TikZ-macro-arg): Use OPTIONAL argument when calling
+ `TeX-TikZ-single-macro-arg'.
+
+2016-04-04 Matthew Leach <matthew@mattleach.net>
+
+ TikZ: make `TeX-TikZ-single-macro-arg' prompt required.
+
+ * style/tikz.el (TeX-TikZ-get-arg-type): Make prompt non-optional.
+ (TeX-TikZ-single-macro-arg): Likewise.
+ (TeX-TikZ-macro-arg): Make prompt explicit.
+
+2016-04-04 Matthew Leach <matthew@mattleach.net>
+
+ TikZ: Add the arc command.
+
+ * style/tikz.el (TeX-TikZ-arg-arc): New.
+ (TeX-TikZ-draw-arg-function-map): Map the 'Arc' command to
+ `Tex-TikZ-arg-arc'.
+
+2016-04-04 Matthew Leach <matthew@mattleach.net>
+
+ TikZ: Add circle command.
+
+ * style/tikz.el (TeX-TikZ-arg-circle): New.
+ (TeX-TikZ-draw-arg-function-map): Add mapping from 'Circle' to
+ `TeX-TikZ-arg-circle'.
+
+2016-04-04 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * tex-buf.el: Address some compiler warnings
+
+ Require `latex' since we refer to some of its variables.
+ Use #' to quote a function. Use _ prefix for unused vars.
+ (TeX-current-process-region-p, TeX-save-query, TeX-parse-function)
+ (TeX-sentinel-function, TeX-sentinel-default-function)
+ (compilation-in-progress, TeX-current-page)
+ (TeX-error-overview-open-after-TeX-run, TeX-error-list)
+ (TeX-parse-all-errors, TeX-command-buffer, TeX-region): Declare before
+ the first use.
+ (TeX-command-text, TeX-command-pos): Declare as dyn-bound
+ (TeX-command-expand): Strength reduce `eval' to `symbol-name'.
+ (TeX-run-TeX): Use let*.
+ (TeX-sentinel-function, TeX-sentinel-default-function): Put something
+ in the function's body.
+ (TeX-TeX-sentinel-check): Check ConTeXt-Mark-version exists before
+ using it. We could have (require 'context) instead.
+ (TeX-Biber-sentinel): Remove redundant `concat'.
+ (TeX-error-description-list): Move before first use.
+ (TeX-error-overview-mode-map): Remove unused var `menu-map'.
+ (TeX-output-revert-buffer): Remove unused var `command'.
+
+2016-04-02 Mos¨ Giordano <mose@gnu.org>
+
+ Fix compatibility with older Emacs versions
+
+ * tex.el: Dynamic determination of `delete-selection' behavior has been
+ introduced in Emacs 24.3. For previous versions leave
+ `TeX-insert-dollar' without that property.
+
+2016-04-01 Mos¨ Giordano <mose@gnu.org>
+
+ Dinamically put delete-selection prop to TeX-insert-dollar
+
+ * tex.el (TeX-insert-dollar): Put `delete-selection' property only when
+ `TeX-electric-math' is nil. Suggested by Roger Lipsett. Fixes
+ bug#23177.
+
+2016-03-30 Mos¨ Giordano <mose@gnu.org>
+
+ Restore compatibility with XEmacs
+
+ * tex-buf.el (TeX-format-filter): Use `memq' in place of `memql'. This
+ one is not available in XEmacs.
+
+2016-03-29 Mos¨ Giordano <mose@gnu.org>
+
+ Fix previous commit
+
+2016-03-29 Mos¨ Giordano <mose@gnu.org>
+
+ New function TeX-error-report-has-errors-p
+
+ * tex-buf.el (TeX-error-report-has-errors-p): New function.
+ (TeX-error-report-switches): Update docstring.
+ (TeX-LaTeX-sentinel, TeX-command-sequence-sentinel): Use
+ `TeX-error-report-has-errors-p'.
+ * tex-bar.el (TeX-bar-TeX-button-alist, TeX-bar-LaTeX-button-alist):
+ Ditto.
+
+2016-03-29 Matthew Leach <matthew@mattleach.net>
+
+ TikZ: Add more path connector types.
+
+ * style/tikz.el (TeX-TikZ-path-connector-function-map): New.
+ (TeX-TikZ-draw-arg-function-map): Use
+ `TeX-TikZ-path-connector-function-map'.
+
+2016-03-29 Matthew Leach <matthew@mattleach.net>
+
+ TikZ: Rename 'text' to 'label' to be consistent with TikZ terminology.
+
+ * style/tikz.el (TeX-TikZ-arg-label): Rename from `TeX-TikZ-arg-text'
+ and prompt for a 'Label' rather than 'Text'.
+ (TeX-TikZ-arg-node): Use new function name.
+ (TeX-TikZ-node-arg): Likewise.
+
+2016-03-29 Matthew Leach <matthew@mattleach.net>
+
+ TikZ: Ignore case when prompting for argument types.
+
+ * style/tikz.el (TeX-TikZ-get-arg-type): Let-bind
+ `completion-ignore-case' to t when prompting the user.
+
+2016-03-29 Matthew Leach <matthew@mattleach.net>
+
+ TikZ: Apply suggestions from checkdoc.
+
+ * style/tikz.el (TeX-TikZ-point-function-map): Make documentation
+ consistent with checkdoc.
+ (TeX-TikZ-draw-arg-function-map): Likewise.
+ (TeX-TikZ-draw-arg): Likewise and rename parameter to '_ignored'.
+ (TeX-TikZ-coordinate-arg): Likewise.
+ (TeX-TikZ-node-arg): Likewise.
+
+2016-03-29 Mos¨ Giordano <mose@gnu.org>
+
+ Fill environment content onley when auto-fill-mode is active
+
+ * latex.el (LaTeX-insert-environment): Fill only when
+ `auto-fill-function' is non-nil, that means auto-fill-mode is active.
+ Reported by Florian Lindner.
+
+2016-03-29 Matthew Leach <matthew@mattleach.net>
+
+ TikZ: Add 'Named Point' point type with completion.
+
+ * style/tikz.el (TeX-TikZ-point-name-regexp): New.
+ (TeX-TikZ-find-named-points): New.
+ (TeX-TikZ-arg-named-point): New.
+ (TeX-TikZ-point-function-map): Add 'Named Point' element that maps to
+ `TeX-TikZ-arg-named-point'.
+
+2016-03-29 Matthew Leach <matthew@mattleach.net>
+
+ TikZ: Add prompting for TikZ's \node macro.
+
+ * style/tikz.el (TeX-TikZ-node-arg): New.
+
+2016-03-29 Matthew Leach <matthew@mattleach.net>
+
+ TikZ: Add prompting for \coordinate macro.
+
+ * style/tikz.el (TeX-TikZ-point-function-map): New.
+ (TeX-TikZ-draw-arg-function-map): Use `TeX-TikZ-point-function-map'.
+ (TeX-TikZ-coordinate-arg): New.
+
+2016-03-29 Matthew Leach <matthew@mattleach.net>
+
+ TikZ: Extract the prompting of the next arg from TeX-TikZ-macro-arg.
+
+ * style/tikz.el (TeX-TikZ-single-macro-arg): New.
+ (TeX-TikZ-macro-arg): Use `TeX-TikZ-single-macro-arg' for prompting
+ the user and calling the appropriate function.
+
+2016-03-29 Matthew Leach <matthew@mattleach.net>
+
+ TikZ: allow arg type prompt to be specified.
+
+ * style/tikz.el (TeX-TikZ-get-arg-type): Add a new optional argument,
+ prompt, and show that to the user when non-nil, instead of the
+ default.
+
+2016-03-29 Matthew Leach <matthew@mattleach.net>
+
+ TikZ: split out the prompts to TeX-TikZ-arg-node & TeX-TikZ-macro-arg.
+
+ * style/tikz.el (TeX-TikZ-arg-options): New.
+ (TeX-TikZ-arg-name): New.
+ (TeX-TikZ-arg-text): New.
+ (TeX-TikZ-arg-node): Use new TikZ arg functions for prompting the
+ user.
+ (TeX-TikZ-macro-arg): Use `TeX-TikZ-arg-options' when prompting for
+ the options.
+
+2016-03-29 Arash Esbati <esbati@gmx.de>
+
+ Add fontification support
+
+ * style/environ.el ("environ"): Add fontification support.
+
+2016-03-29 Arash Esbati <esbati@gmx.de>
+
+ Fix a misplaced closing parenthesis
+
+ * style/splitidx.el (LaTeX-splitidx-auto-cleanup): Fix a misplaced
+ closing parenthesis.
+
+2016-03-29 Arash Esbati <esbati@gmx.de>
+
+ Fix the name of argument in function body
+
+ * style/currvita.el (LaTeX-currvita-env-with-label): Fix the name
+ of argument in the body of function.
+
+2016-03-29 Arash Esbati <esbati@gmx.de>
+
+ Delete redundant code
+
+ * style/enumitem.el (LaTeX-arg-SetLabelAlign)
+ (LaTeX-arg-SetEnumitemKey, LaTeX-arg-SetEnumitemValue): Delete
+ redundant code which is part of the function
+ `LaTeX-enumitem-update-key-val-options'.
+ (LaTeX-enumitem-env-with-opts): Fix the name of argument in the
+ body of function.
+
+2016-03-28 Mos¨ Giordano <mose@gnu.org>
+
+ Better control for presence of errors
+
+ * tex-buf.el (TeX-LaTeX-sentinel): Use `TeX-error-report-switches'
+ instead of `TeX-error-list'.
+
+2016-03-27 Tassilo Horn <tsdh@gnu.org>
+
+ Call TeX-after-compilation-finished-functions on warnings
+
+ * tex-buf.el (TeX-LaTeX-sentinel): Skip calling
+ TeX-after-compilation-finished-functions only if there are real errors.
+
+2016-03-27 Matthew Leach <matthew@mattleach.net>
+
+ Add the beginnings of TikZ support.
+
+ * style/tikz.el: New
+ * doc/changes.texi: Document TikZ style.
+ * Makefile.in: Add TikZ style to the build.
+
+2016-03-26 Tassilo Horn <tsdh@gnu.org>
+
+ Fix forward sync bug with multi-file documents
+
+ * tex.el (TeX-pdf-tools-sync-view): Use the current file for the
+ sync-view call, not always the master file (bug#23083).
+
+2016-03-19 Mos¨ Giordano <mose@gnu.org>
+
+ Temporarily bind gc-cons-threshold in time-consuming task
+
+ * tex.el (TeX-search-files-by-type): Bind `gc-cons-threshold' to
+ 10000000 during the search, to reduce number of garbage collections
+ during the task.
+
+2016-03-17 Matthew Leach <matthew@mattleach.net>
+
+ Prompt for optional short caption parameter.
+
+ * latex.el (LaTeX-compose-caption-macro): New.
+ (LaTeX-short-caption-prompt-length): New.
+ (LaTeX-env-figure): Prompt for optional short caption parameter, when
+ the caption length is >= `LaTeX-short-caption-prompt-length', and pass
+ to `LaTeX-compose-caption-macro'.
+ * style/longtable.el ("longtable"): Likewise.
+ * style/psfig.el (LaTeX-env-psfigure): Likewise.
+ * doc/auctex.texi (Floats): Document short-caption prompting and
+ `LaTeX-short-caption-prompt-length'.
+ * doc/changes.texi: Likewise.
+
+2016-03-16 Matthew Leach <matthew@mattleach.net>
+
+ Improve prompts when defining LaTeX macros.
+
+ * latex.el (TeX-arg-default-argument-value): New.
+ (TeX-arg-define-macro-arguments): New.
+ (LaTeX-common-initialization): Use new LaTeX macro argument functions.
+
+2016-03-12 Matthew Leach <matthew@mattleach.net>
+
+ Ensure LaTeX-indent-environment-list environments aren't filled
+
+ * tests/latex/latex-filling-in.tex: Add a tabular environment to ensure
+ the body of the environment isn't filled as it is listed in
+ LaTeX-indent-environment-list.
+ * tests/latex/latex-filling-out.tex: Likewise.
+
+2016-03-08 Matthew Leach <matthew@mattleach.net>
+
+ Remove "table" and "table*" from LaTeX-indent-environment-list
+
+ * latex.el (LaTeX-indent-environment-list): Remove the "table" and
+ "table*" elements.
+
+2016-03-04 Mos¨ Giordano <mose@gnu.org>
+
+ Use TeX-quote-after-quote in all language style files
+
+ * style/icelandic.el ("icelandic"):
+ * style/polish.el ("polish"):
+ * style/polski.el ("polski"): Use value of `TeX-quote-after-quote'
+ instead of hard-coding t.
+
+2016-02-28 Mos¨ Giordano <mose@gnu.org>
+
+ Improve word-string regexp in TeX-warning
+
+ * tex-buf.el (TeX-warning): Match letters, numbers, colons, and hyphens,
+ not just word constituents. They may be preceeded by both grave
+ accent and apostrophe, not only grave accent.
+ * tests/tex/compilation-log.txt: Add test case.
+ * tests/tex/error-parsing.el: Update result.
+
+2016-02-27 Mos¨ Giordano <mose@gnu.org>
+
+ Another fix for vertical bad box warnings
+
+ * tex-buf.el (TeX-parse-error): Use different regexps for horizontal and
+ vertical bad boxes, they cannot be handled together.
+ (TeX-warning): Do not move point when a vertical bad box has been found.
+ * tests/tex/compilation-log.txt: Add a test where the parser used to
+ fail to find the file for warnings after a vertical bad box warning.
+ * tests/tex/error-parsing.el: Update result accordingly.
+
+2016-02-26 Mos¨ Giordano <mose@gnu.org>
+
+ Fix parsing of vertical bad boxes context
+
+ * tex-buf.el (TeX-warning): Use as context for vertical bad boxes the
+ warning itself and don't move point.
+ * tests/tex/compilation-log.txt: Add a test for vertical bad boxes, and
+ horizontal bad boxes ending with "at line NN". The two warnings are in
+ two consecutive lines, make sure the second one is correctly reported.
+ * tests/tex/error-parsing.el: Update result of the test accordingly.
+
+2016-02-26 Mos¨ Giordano <mose@gnu.org>
+
+ Catch more bad box warnings
+
+ * tex-buf.el (TeX-error-list): More information for some elements of the
+ list.
+ (TeX-parse-error): Change regexp to catch bad vertical boxes as well and
+ provide new argument to `TeX-warning'.
+ (TeX-warning): Require an additional mandatory argument, `bad-box'.
+ Improve regexp for detecting ending line of horizontal bad boxes in
+ order to cater for the case "...at line NN".
+ * tests/tex/error-parsing.el: Update result of the test.
+
+2016-02-23 Mos¨ Giordano <mose@gnu.org>
+
+ Avoid checking duplicate directories in TeX-check-files
+
+ * tex-buf.el (TeX-check-files): Delete duplicate directories in paths
+ list before performing the check.
+
+2016-02-21 Mos¨ Giordano <mose@gnu.org>
+
+ Fix detection of line number in TeX-warning
+
+ * tex-buf.el (TeX-warning): Require as additional mandatory argument the
+ position where the warning starts. Use it to limit
+ `re-search-backward' when looking for the line number.
+ (TeX-parse-error): Provide additional argument to `TeX-warning'.
+ * tests/tex/compilation-log.txt: Add another case where the line number
+ of the warning was mistaken.
+ * tests/tex/error-parsing.el: Update expected result of the test
+ accordingly.
+
+2016-02-21 Mos¨ Giordano <mose@gnu.org>
+
+ Improve LaTeX-warnings-regexp
+
+ * tex-buf.el (LaTeX-warnings-regexp): Catch also "LaTeX Font" warnings.
+
+2016-02-21 Mos¨ Giordano <mose@gnu.org>
+
+ Another fix for TeX-parse-errro
+
+ * tex-buf.el (TeX-parse-error): Improve regexp for polishing file name.
+ * tests/tex/compilation-log.txt: Add example to test file.
+ * tests/tex/error-parsing.el: Update the expected result of the test
+ accordingly.
+
+2016-02-21 Mos¨ Giordano <mose@gnu.org>
+
+ Allow ignoring certain warnings
+
+ * tex.el (TeX-ignore-warnings, TeX-suppress-ignored-warnings): New
+ customizable options.
+ (TeX-toggle-suppress-ignored-warnings): New function.
+ (TeX-mode-map): Add key-binding for `TeX-toggle-suppress-ignored-warnings'.
+ * tex-buf.el (TeX-error-list-skip-warning-p): Add new argument and use it.
+ (TeX-parse-TeX): Provide additional argument to
+ `TeX-error-list-skip-warning-p'.
+ (TeX-error-list): Document new information.
+ (TeX-find-display-help): Add new (ignored) argument.
+ (TeX-error): Add new element to `TeX-error-list' entry.
+ (TeX-warning): Set the "ignore" flag for `TeX-error-list'
+ (TeX-error-overview-make-entries): Provide additional argument to
+ `TeX-error-list-skip-warning-p'.
+ (TeX-error-overview-toggle-debug-bad-boxes):
+ (TeX-error-overview-toggle-debug-warnings): Determine
+ `TeX-master-directory' in `TeX-command-buffer'.
+ (TeX-error-overview-toggle-suppress-ignored-warnings): New function.
+ (TeX-error-overview-mode-map): Add key-binding for
+ `TeX-error-overview-toggle-suppress-ignored-warnings'.
+ (TeX-error-overview-menu): Add entry for
+ `TeX-error-overview-toggle-suppress-ignored-warnings'.
+
+2016-02-21 Mos¨ Giordano <mose@gnu.org>
+
+ Show and hide warnings and bad boxes in error overview
+
+ * tex-buf.el (TeX-error-list-skip-warning-p): New function.
+ (TeX-parse-TeX): Skip warnings or bad boxes if they are to be ignored.
+ (TeX-error-list): Describe information present in the list.
+ (TeX-parse-error): When storing warnings and bad boxes, add them to
+ `TeX-error-list' even if `TeX-debug-bad-boxes' and `TeX-debug-warnings'
+ are nil.
+ (TeX-error-overview-make-entries): Skip warnings or bad boxes if they
+ are to be ignored.
+ (TeX-error-overview-toggle-debug-bad-boxes):
+ (TeX-error-overview-toggle-debug-warnings): New functions.
+ (TeX-error-overview-mode-map, TeX-error-overview-menu): Add
+ `TeX-error-overview-toggle-debug-bad-boxes' and
+ `TeX-error-overview-toggle-debug-warnings'.
+ (TeX-error-overview): Make the list of entries for the overview before
+ creating the buffer and use this list to decide whether there is
+ something to show.
+
+2016-02-14 Mos¨ Giordano <mose@gnu.org>
+
+ Fix TeX-check-files
+
+ * tex-buf.el (TeX-check-files): Run the test in `TeX-master-directory'
+ as well.
+
+2016-02-14 Arash Esbati <esbati@gmx.de>
+
+ Add new style/splitidx.el
+
+ * Makefile.in (STYLESRC): Add new style.
+
+ * tex-style.el (LaTeX-splitidx-sindex-reftex-quick-id-key): Add
+ customizable variable.
+
+ * style/splitidx.el: New file.
+
+2016-02-14 Arash Esbati <esbati@gmx.de>
+
+ Fix wrong usage of `TeX-auto-prepare-hook'
+
+ * style/theorem.el (TeX-auto-cleanup-hook):
+ * style/ntheorem.el (TeX-auto-cleanup-hook):
+ * style/newfloat.el (TeX-auto-cleanup-hook):
+ * style/amsthm.el (TeX-auto-cleanup-hook): Use
+ `TeX-auto-cleanup-hook' instead of mistakenly used
+ `TeX-auto-prepare-hook'.
+
+2016-02-14 Arash Esbati <esbati@gmx.de>
+
+ Add support for missing macro \SetLabelAlign
+
+ * style/enumitem.el ("enumitem-SetLabelAlign"): Plug
+ \SetLabelAlign into AUCTeX parser.
+ (LaTeX-enumitem-SetLabelAlign-regexp): New variable.
+ (LaTeX-enumitem-auto-prepare): Reset
+ `LaTeX-auto-enumitem-SetLabelAlign'.
+ (LaTeX-arg-SetLabelAlign): New function to query the arguments of
+ \SetLabelAlign.
+ ("enumitem"): Add \SetLabelAlign to style hook incl. fontification.
+ (LaTeX-arg-SetEnumitemValue): Use `completing-read' instead of
+ `TeX-read-key-val'.
+
+2016-02-13 Mos¨ Giordano <mose@gnu.org>
+
+ Add support for Atril viewer
+
+ Suggested by Antoine Levitt.
+
+ * tex.el (TeX-evince-dbus-p): Take new arguments to specify desktop
+ environment and application names.
+ (TeX-evince-sync-view-1): Rename from `TeX-evince-sync-view'. Take new
+ arguments to specify desktop environment and application names.
+ (TeX-atril-sync-view, TeX-evince-sync-view):
+ (TeX-view-program-select-evince): New functions.
+ (TeX-view-program-list-builtin): Add Atril entry and use
+ `TeX-view-program-select-evince' for Atril and Evince.
+ (TeX-source-correlate-mode): Register for Atril DBUS signal.
+ * doc/changes.texi: Mention Atril support.
+
+2016-02-09 Arash Esbati <esbati@gmx.de>
+
+ Add support for dviout viewer
+
+ * doc/changes.texi: Mention support for dviout on Windows.
+
+ * tex.el (TeX-view-program-list-builtin): Add support for dviout
+ on Windows. This setup works for `TeX-source-correlate-method'
+ set to (dvi . source-specials).
+ Reorder " %o" in entry for SumatraPDF.
+
+2016-02-09 Arash Esbati <esbati@gmx.de>
+
+ Add support for SumatraPDF viewer
+
+ * doc/changes.texi: Mention support for SumatraPDF on Windows.
+ Fix typos.
+
+ * tex.el (TeX-view-program-list-builtin): Add support for
+ SumatraPDF on Windows.
+
+2016-02-08 Mos¨ Giordano <mose@gnu.org>
+
+ Add support for Zathura viewer
+
+ * tex.el (TeX-view-program-list-builtin): Add Zathura.
+ * doc/changes.texi: Mention Zathura support and reworked error parsing.
+
+2016-02-07 Mos¨ Giordano <mose@gnu.org>
+
+ Minor fix in TeX-documentation-texdoc
+
+ * tex.el (TeX-documentation-texdoc): Make it possible to run the
+ function in read-only buffers.
+
+2016-02-07 Mos¨ Giordano <mose@gnu.org>
+
+ Improve parsing of certain warnings
+
+ * tex-buf.el (TeX-warning): Get full context and line numbers for
+ warnings matching `LaTeX-warnings-regexp'.
+ * tests/tex/compilation-log.txt: Add example warnings for this case.
+ * tests/tex/error-parsing.el: Update result of test accordingly.
+
+2016-02-07 Mos¨ Giordano <mose@gnu.org>
+
+ Catch LaTeX class warnings
+
+ * tex-buf.el (LaTeX-warnings-regexp): New variable. This is the same
+ regexp used before by `TeX-LaTeX-sentinel-has-warnings' and
+ `TeX-parse-error', but now catches class warnings as well.
+ (TeX-LaTeX-sentinel-has-warnings, TeX-parse-error): Use
+ `LaTeX-warnings-regexp'.
+
+2016-02-07 Mos¨ Giordano <mose@gnu.org>
+
+ Fix TeX-parse-error
+
+ * tex-buf.el (TeX-parse-error): Remove from the file string pages of the
+ output file.
+ * tests/tex/compilation-log.txt: Add a warning containing such faulty
+ file name.
+ * tests/tex/error-parsing.el (TeX-error-parsing): Update result of the
+ test accordingly.
+
+2016-02-07 Mos¨ Giordano <mose@gnu.org>
+
+ Add ERT test for error parsing
+
+ * tests/tex/compilation-log.txt: Add minimal example of compilation log
+ that failed to be parsed correctly with the old parsing function.
+ * tests/tex/error-parsing.el: New ERT test.
+
+2016-02-07 Mos¨ Giordano <mose@gnu.org>
+
+ Add script to update the ChangeLog
+
+ * ChangeLog.1: Add copyright notice and information about included
+ commits.
+ * Makefile.in: Add ChangeLog-related variables and rules.
+ * build-aux/gitlog-to-auctexlog: New script, adapted from GNU Emacs.
+
+2016-02-03 Arash Esbati <esbati@gmx.de>
+
+ Another fix for file name regexp in TeX-documentation-texdoc
+
+ * tex.el (TeX-documentation-texdoc): Add `space' and `()'
+ to file name regexp for Windows paths.
+
+2016-02-02 Arash Esbati <esbati@gmx.de>
+
+ Fix file name regexp in TeX-documentation-texdoc
+
+ * tex.el (TeX-documentation-texdoc): Add backslash separator for Windows
+ paths.
+
+2016-02-02 Mos¨ Giordano <mose@gnu.org>
+
+ Capture warnings from packages with hyphens in name
+
+ * tex-buf.el (TeX-LaTeX-sentinel-has-warnings): Add hyphen to regexps.
+ (TeX-parse-error): Ditto.
+
+2016-02-02 Mos¨ Giordano <mose@gnu.org>
+
+ New function for reading documentation with texdoc
+
+ * tex.el (TeX-documentation-texdoc): New function.
+ (TeX-common-menu-entries): Replace `TeX-doc' with
+ `TeX-documentation-texdoc'.
+ (TeX-mode-map): Ditto.
+ * doc/auctex.texi (Documentation): Document `TeX-documentation-texdoc'
+ in place of `TeX-doc'.
+ * doc/changes.texi: Mention `TeX-documentation-texdoc'.
+
+2016-01-31 Tassilo Horn <tsdh@gnu.org>
+
+ Capture message of LaTeX warnings
+
+ * tex-buf.el (TeX-parse-error): Capture message of LaTeX warnings.
+
+2016-01-30 Mos¨ Giordano <mose@gnu.org>
+
+ Use default argument of completing-read in ConTeXt-environment
+
+ * context.el (ConTeXt-environment): Properly use default argument of
+ `completing-read'. Do not set `ConTeXt-default-environment' to
+ `environment' if the latter is equal to the current default
+ environment, like in `LaTeX-environment'.
+
+2016-01-30 Mos¨ Giordano <mose@gnu.org>
+
+ Add completion for environments in ConTeXt
+
+ * context.el (ConTeXt-language-variable-list): Document variable. Add
+ `ConTeXt-environment-list' so that now completion for environments
+ names in `ConTeXt-environment' function works. Suggested by Andrea De
+ Michele.
+
+2016-01-27 Mos¨ Giordano <mose@gnu.org>
+
+ Change coding back to iso-8859-1, XEmacs doesn't support utf-8
+
+ * font-latex.el: Restore coding to iso-8859-1.
+ * style/alphanum.el: Ditto.
+ * style/dk-bib.el: Ditto.
+ * style/doc.el: Ditto.
+ * style/inputenc.el: Ditto.
+ * style/jura.el: Ditto.
+ * style/ltx-base.el: Ditto.
+ * style/ltxdoc.el: Ditto.
+ * tex-font.el: Ditto.
+ * tex.el: Ditto.
+
+2016-01-25 Mos¨ Giordano <mose@gnu.org>
+
+ Code cleaning
+
+ * latex.el (TeX-arg-document): Remove useless (mapcar 'identity ...).
+ Suggested by Marcin Borkowski.
+ * style/biblatex.el (LaTeX-biblatex-package-options): Ditto.
+
+2016-01-24 Arash Esbati <esbati@gmx.de>
+
+ Improve style/enumitem
+
+ * style/enumitem.el (LaTeX-enumitem-newlist-list)
+ (LaTeX-enumitem-newlist-list-item-arg)
+ (LaTeX-auto-enumitem-newlist): Remove variables.
+ (LaTeX-enumitem-newlist-list-local): Fix docstring.
+ (LaTeX-enumitem-auto-cleanup): Plug \newlist into AUCTeX parser.
+ ("enumitem"): Offer only enumerated environments as completion for
+ \restartlist.
+
+2016-01-24 Arash Esbati <esbati@gmx.de>
+
+ Improve font related queries
+
+ * style/theorem.el (LaTeX-theorem-fontdecl): Do not prefix the
+ elements with `TeX-esc'.
+ (LaTeX-arg-theorem-fontdecl): New function.
+ ("theorem"): Use `LaTeX-arg-theorem-fontdecl' for font related
+ queries.
+
+2016-01-24 Arash Esbati <esbati@gmx.de>
+
+ Improve font related queries
+
+ * style/ntheorem.el (LaTeX-ntheorem-fontdecl): Do not prefix the
+ elements with `TeX-esc'.
+ (LaTeX-arg-ntheorem-fontdecl): New function.
+ ("ntheorem"): Use `LaTeX-arg-ntheorem-fontdecl' for font related
+ queries.
+
+2016-01-24 Arash Esbati <esbati@gmx.de>
+
+ Improve font related queries
+
+ * style/amsthm.el (LaTeX-amsthm-fontdecl): Do not prefix the
+ elements with `TeX-esc'.
+ (LaTeX-arg-amsthm-fontdecl): New function.
+ ("amsthm"): Use `LaTeX-arg-amsthm-fontdecl' for font related
+ queries.
+
+2016-01-23 Mos¨ Giordano <mose@gnu.org>
+
+ Write TeX-style-hook-dialect to parsed file
+
+ * latex.el (BibTeX-auto-store): Run `TeX-bibtex-set-BibTeX-dialect'.
+ * tex.el (TeX-auto-store): Store `TeX-style-hook-dialect' from buffer
+ and write it to parsed file when present.
+
+2016-01-23 Mos¨ Giordano <mose@gnu.org>
+
+ Add new dialects
+
+ * context.el: Update copyright years.
+ (ConTeXt-dialect): New constant.
+ (ConTeXt-mode-common-initialization): Set `TeX-style-hook-dialect' to
+ `ConTeXt-dialect'.
+ * plain-tex.el: Update copyright years.
+ (plain-TeX-dialect): New constant.
+ (plain-TeX-common-initialization): Set `TeX-style-hook-dialect' to
+ `plain-TeX-dialect'.
+ * tex.el (TeX-style-hook-dialect): Document new dialects.
+ (TeX-style-hook-dialect-weight-alist): Add plain-tex and context dialects.
+
+2016-01-23 Mos¨ Giordano <mose@gnu.org>
+
+ Convert tex-font.el to UTF-8 coding
+
+ * tex-font.el: set coding to utf-8.
+
+2016-01-23 Mos¨ Giordano <mose@gnu.org>
+
+ Move \iff macro to Arrows section of LaTeX-math-default
+
+ * latex.el (LaTeX-math-default): \iff symbol is defined in base LaTeX,
+ move it to the "Arrows" section.
+
+2016-01-20 Mos¨ Giordano <mose@gnu.org>
+
+ Fix bug in subfigure style file
+
+ * style/subfigure.el ("subfigure"): Move `TeX-complete-list' inside
+ append argument. Fixes bug#22417.
+
+2016-01-17 Mos¨ Giordano <mose@gnu.org>
+
+ Add some AMS arrows to LaTeX-math-default
+
+ * latex.el (LaTeX-math-default): Add `impliedby', `implies', and `iff'
+ arrows. Suggested by Aiko Kyle.
+
+2016-01-10 Mos¨ Giordano <mose@gnu.org>
+
+ url macro accepts only braces in hyperref
+
+ * style/hyperref.el: Update copyright years.
+ ("hyperref"): Remove "url" from
+ `LaTeX-verbatim-macros-with-delims-local', it was added by url.el, but
+ in hyperref "\url" has a different syntax.
+
+2015-12-18 Ivan Andrus <darthandrus@gmail.com>
+
+ Fix bug in `preview-LaTeX-disable-pdfoutput'
+
+ * preview.el.in (preview-LaTeX-disable-pdfoutput): Allow one or more
+ spaces between command line arguments.
+
+2015-12-04 Tassilo Horn <tsdh@gnu.org>
+
+ Delete .cvsignore
+
+ I'm pretty confident we won't switch back. ;-)
+
+2015-11-30 Arash Esbati <esbati@gmx.de>
+
+ Fix query prompt
+
+ * style/ntheorem.el ("ntheorem"):
+ * style/theorem.el ("theorem"): Fix wrong query prompt.
+
+2015-11-30 Mos¨ Giordano <mose@gnu.org>
+
+ Fix regex in texmathp
+
+ * texmathp.el: Replace \t with \r. Reported by Marcin Borkowski.
+
+2015-11-24 Tassilo Horn <tsdh@gnu.org>
+
+ Rename TeX-after-compilation-finished-hook to -functions
+
+ * tex-buf.el (TeX-after-compilation-finished-functions): Rename from
+ -hook to -functions.
+ (TeX-LaTeX-sentinel): Adapt.
+ * context.el (TeX-ConTeXt-sentinel): Adapt.
+
+2015-11-23 Arash Esbati <esbati@gmx.de>
+
+ Add new style/ntheorem.el
+
+ * Makefile.in (STYLESRC): Add new style.
+
+ * style/ntheorem.el: New file.
+
+2015-11-23 Arash Esbati <esbati@gmx.de>
+
+ Add new style/theorem.el
+
+ * Makefile.in (STYLESRC): Add new style.
+
+ * style/theorem.el: New file.
+
+2015-11-23 Arash Esbati <esbati@gmx.de>
+
+ Improve style/amsthm.el
+
+ * style/amsthm.el (LaTeX-amsthm-fontdecl): Cover all font changing
+ declarations.
+ ("amsthm"): Overrule the defintion for \newtheorem in `latex.el'.
+ ("amsthm"): Use `TeX-completing-read-multiple' for font related
+ queries.
+
+2015-11-23 Tassilo Horn <tsdh@gnu.org>
+
+ Rename TeX-after-TeX-LaTeX-command-finished-hook
+
+ * tex-buf.el (TeX-after-compilation-finished-hook): Rename from
+ TeX-after-TeX-LaTeX-command-finished-hook.
+ * context.el (TeX-ConTeXt-sentinel): Run
+ TeX-after-compilation-finished-hook when the compilation was successful.
+ * doc/auctex.texi (Modes and Hooks): Adapt docs.
+
+2015-11-21 Mos¨ Giordano <mose@gnu.org>
+
+ Convert Elisp source files to UTF-8
+
+ * font-latex.el: Change coding to UTF-8
+ * style/alphanum.el: Ditto.
+ * style/dk-bib.el: Ditto.
+ * style/doc.el: Ditto.
+ * style/inputenc.el: Ditto.
+ * style/jura.el: Ditto.
+ * style/ltx-base.el: Ditto.
+ * style/ltxdoc.el: Ditto.
+ * tex.el: Ditto.
+
+2015-11-19 Mos¨ Giordano <mose@gnu.org>
+
+ Fix bug in TeX-command-sequence
+
+ * tex-buf.el (TeX-command-sequence): Ask for TeX-master if unknown,
+ otherwise running this function on a file without a known `TeX-master'
+ will result in `TeX-master' being automatically set to "<none>" at some
+ point.
+ (TeX-region-file): Add a third compatibility argument and update
+ docstring accordingly.
+
+2015-11-19 Mos¨ Giordano <mose@gnu.org>
+
+ Remove support to "Master:" line
+
+ * tex.el (TeX-convert-master): Remove now unused variable.
+ (TeX-master-file): Remove support to "Master:" line and update
+ documentation accordingly.
+
+2015-11-15 Mos¨ Giordano <mose@gnu.org>
+
+ Activate RefTeX reference styles
+
+ * tex-style.el (LaTeX-reftex-ref-style-auto-activate): New
+ customizable variable.
+ * style/cleveref.el ("cleveref"): Activate RefTeX reference style.
+ * style/fancyref.el ("fancyref"): Ditto.
+ * style/varioref.el ("varioref"): Ditto.
+ * style/hyperref.el ("hyperref"): Use
+ `LaTeX-reftex-ref-style-auto-activate'.
+
+2015-11-15 Mos¨ Giordano <mose@gnu.org>
+
+ Determine AUCTEXDATE and AUCTEXVERSION from git
+
+ * aclocal.m4 (AC_DATE_VERSION_FROM_CHANGELOG): if this is git
+ repository, use it to determine the variables.
+ * autogen.sh: Ditto.
+
+2015-11-14 Mos¨ Giordano <mose@gnu.org>
+
+ Fix error in autogen.sh, configure, and Makefile
+
+ * Makefile.in (doc/Makefile): Replace ChangeLog with ChangeLog.1.
+ * autogen.sh: Ditto.
+ * configure.ac: Ditto.
+ * doc/Makefile.in (version.texi): Ditto.
+
+2015-11-13 Mos¨ Giordano <mose@gnu.org>
+
+ Drop ChangeLog
+
+ * .gitignore: Add ChangeLog and auto dirs in tests.
+ * ChangeLog.1: Rename from ChangeLog.
+ * Makefile.in (EXCLUDEDFILES): Exclude build-aux directory.
+ * build-aux/gitlog-to-changelog: Copy script from gnulib.
+
+2014-05-02 Tassilo Horn <tsdh@gnu.org>
+
+ Improve new-file regex.
+
+ * tex-buf.el (TeX-parse-error): Improve new-file regex.
+
+2014-04-29 Tassilo Horn <tsdh@gnu.org>
+
+ Fix Wrong type argument: characterp, nil error.
+
+ * tex-buf.el (TeX-format-filter): Fix error caused by trying to
+ get char syntax from char after EOF.
+
+2014-04-27 Tassilo Horn <tsdh@gnu.org>
+
+ Don't use TRIM arg of split-string.
+
+ * tex-buf.el (TeX-parse-error): Don't use TRIM arg of
+ `split-string' which is new in emacs 24.4.
+
+2014-04-25 Tassilo Horn <tsdh@gnu.org>
+
+ Improve line wrap removal heuristics.
+
+ * tex-buf.el (TeX-format-filter): Remove linebreaks at columns 79
+ and also column 80. Also remove linebreaks preceded by a period
+ that are followed by a word character to remove linebreaks in file
+ names that are wrapped just after the period starting the file
+ name extension.
+
+2014-04-24 Tassilo Horn <tsdh@gnu.org>
+
+ Improve TeX error parsing.
+
+ * tex-buf.el (TeX-error): Error if file containing the TeX error
+ doesn't exist instead of finding a new file.
+ (TeX-parse-error): Greatly simplify the new file and end of file
+ regexps.
+
+2015-11-13 Mos¨ Giordano <mose@gnu.org>
+
+ * Version 11.89 released.
+
+2015-11-12 Mos¨ Giordano <mose@gnu.org>
+
+ * RELEASE: Update AUCTeX version, the new features section, and
+ the list of contributors.
+
+ * configure.ac: Update AUCTeX version.
+
+ * doc/changes.texi: Mention PDF Tools and generic features for
+ 11.89 release.
+
+ * doc/tex-ref.tex: Update AUCTeX version and copyright years
+ across the file.
+
+ * latex.el: Update copyright year.
+
+ * latex/preview.dtx: Manually update release version.
+
+ * Makefile.in (WEMACSPACKAGE): Update for Emacs 24.5
+ (www-doc): Download gendocs.sh patch from AUCTeX repository.
+
+ * tex.el (TeX-view-predicate-list-bultin): For
+ `has-no-display-manager' predicate, use the current test only for
+ old Emacsen, otherwise employ `display-graphic-p'. Suggested by
+ Santiago Saavedra.
+
+2015-11-11 Mos¨ Giordano <mose@gnu.org>
+
+ * tests/latex/latex-test.el (LaTeX-math-indent)
+ (LaTeX-change-environment-with-esc): New tests.
+
+ * tests/latex/math-indent-in.tex: New test file.
+
+ * tests/latex/math-indent-out.tex: Ditto.
+
+2015-11-10 Mos¨ Giordano <mose@gnu.org>
+
+ * latex.el (LaTeX-fill-break-at-separators): Change default value
+ to opening only inline and display math switches.
+
+ * tests/latex/latex-filling-in.tex: New test file.
+
+ * tests/latex/latex-filling-out.tex: Ditto.
+
+ * tests/latex/latex-test.el (LaTeX-indent-tabular-test/in)
+ (LaTeX-indent-tabular-test/out): Remove variables defined with
+ `defvar'.
+ (AUCTeX-set-ert-path): New function for setting the path of the
+ ERT test files.
+ (LaTeX-filling): New ERT test.
+
+2015-11-10 Tassilo Horn <tsdh@gnu.org>
+
+ * tex-buf.el (TeX-revert-document-buffer): New function.
+ (TeX-after-TeX-LaTeX-command-finished-hook): Mention it in docstring.
+ * doc/auctex.texi (Modes and Hooks): Mention it in manual.
+
+2015-11-10 Santiago Saavedra <ssaavedra@gpul.org> (tiny change)
+
+ * tex.el (TeX-command-list, TeX-view-program-list-builtin)
+ (TeX-view-program-selection): Add dvi2tty as a first-class
+ command, removing it from a load-time quasiquotation so that the
+ strategy for selecting it or evince goes down to the frame
+ performing the View command. Fixes bug#21873.
+
+2015-11-09 Mos¨ Giordano <mose@gnu.org>
+
+ * tex-info.el: Update copyright years.
+ (Texinfo-nodename-de-escape, Texinfo-nodename-escape): Use
+ `TeX-assoc-string' in place of `assoc-string'.
+
+2015-11-08 Mos¨ Giordano <mose@gnu.org>
+
+ * tex-info.el (TeX-texinfo-mode): Set `TeX-output-extension'.
+ Remove compatibility code with old Emacsen.
+
+2015-11-06 Mos¨ Giordano <mose@gnu.org>
+
+ * tex-buf.el (TeX-check-TeX, TeX-check-TeX-command-not-found): New
+ customizable options.
+ (TeX-command): Do a better check for the presence of a TeX
+ distribution. Run `call-process' instead of `executable-find',
+ like `TeX-run-command' actually does. The point is that
+ `call-process' and `start-process' use `PATH' environment
+ variable, `executable-find' uses `exec-path' variable and they do
+ not need to match, but we should check what `TeX-run-command' will
+ really do.
+
+ * doc/auctex.texi (Processor Options): Document `TeX-check-TeX'.
+
+ * doc/changes.texi: Mention `TeX-check-TeX'.
+
+2015-11-03 Mos¨ Giordano <mose@gnu.org>
+
+ * doc/auctex.texi (Processor Options): Document
+ `ConTeXt-Mark-version'.
+ (Multifile): Mention `dwim' value for `TeX-master'.
+
+ * doc/changes.texi: Mention `ConTeXt-Mark-version'.
+
+2015-11-02 Mos¨ Giordano <mose@gnu.org>
+
+ * latex.el (TeX-arg-document): When `TeX-arg-input-file-search' is
+ nil, use `LaTeX-style-list' to complete document classes. Fixes
+ bug#21814.
+
+2015-10-31 Arash Esbati <esbati@gmx.de>
+
+ * Makefile.in (STYLESRC): Add new style.
+
+ * style/hologo.el: New file.
+
+2015-10-28 Tassilo Horn <tsdh@gnu.org>
+
+ * latex.el (LaTeX-fill-break-at-separators): Default to nil
+ because many users don't like that special filling.
+
+ * tex-info.el (Texinfo-make-node-list): Warn about duplicate
+ nodes. Return nodes in order instead of reversed.
+
+2015-10-25 Vincent BelaŻche <vincent.b.1@hotmail.fr>
+
+ * tex-info.el (Texinfo-nodename-de-escape): New defun.
+ (Texinfo-nodename-escape): New defun.
+ (Texinfo-make-node-list): New defun, code taken from
+ Texinfo-insert-node into this function for the sake of code
+ factorization. In addition, (1) allow node name not to be
+ followed by a comma --- i.e. next node etc. unspecified --- (2)
+ trim trailing blanks after node name, and (3) de-escape @comma{}
+ before insertion of node name into the list.
+ (Texinfo-insert-node): (1) Use new function
+ `Texinfo-make-node-list', and (2) escape node names for commas.
+ (Texinfo-arg-nodename): New defun.
+ (TeX-texinfo-mode): (1) Remove `group' from list of commands,
+ `group' is an environment, not a command. (2) Add
+ `guillemetleft', `guillemetright', `guilsinglleft',
+ `guilsinglright', `quotedblbase' and `quotesinglbase' to the list
+ of commands. (3) For commands `pxref', `ref' and `xref', use new
+ function `Texinfo-arg-nodename' to read node name with completion.
+
+2015-10-24 Arash Esbati <esbati@gmx.de>
+
+ * style/enumitem.el (LaTeX-enumitem-auto-cleanup): Move some
+ operations from style hook into this function.
+ (LaTeX-enumitem-newlist-list-item-arg-local): Delete now unused
+ variable.
+
+ * style/amsthm.el (LaTeX-amsthm-theoremstyle-list): New variable
+ replacing the deleted function
+ `LaTeX-amsthm-complete-theoremstyle'.
+ (LaTeX-amsthm-env-label): New function to insert user defined
+ environments.
+ ("amsthm"): Improve handling of "newtheorem*" and
+ "newtheoremstyle".
+
+ * style/AlegreyaSans.el ("AlegreyaSans"): Remove SmallCaps
+ font declaration command.
+
+ * style/Alegreya.el ("Alegreya"): Remove SmallCaps
+ font declaration command.
+
+ * style/caption.el (LaTeX-arg-caption-captionbox): Fix doctring.
+
+ * style/subcaption.el (LaTeX-arg-subcaption-subcaption): Fix
+ doctring.
+ (LaTeX-arg-subcaption-subcaptionbox): ditto.
+
+2015-10-19 Mos¨ Giordano <mose@gnu.org>
+
+ * tex-buf.el (TeX-command): Check that AUCTeX can find a working
+ TeX distribution before running some *TeX commands.
+
+2015-10-18 Mos¨ Giordano <mose@gnu.org>
+
+ * tex.el (fboundp): Define a `TeX-completing-read-multiple'
+ version for GNU Emacs >= 24.4. Fixes bug#19504.
+
+2015-10-13 Mos¨ Giordano <mose@gnu.org>
+
+ * style/pstricks.el ("pstricks"): Do not disable PDF mode if XeTeX
+ engine is used. Suggested by Mandar Mitra.
+
+2015-10-09 Tassilo Horn <tsdh@gnu.org>
+
+ * latex.el (LaTeX-fill-move-to-break-point): Fill $...$ like
+ \(...\) (bug#21645)
+
+2015-10-08 Mos¨ Giordano <mose@gnu.org>
+
+ * tex.el (TeX-expand-list-builtin): New variable.
+ (TeX-expand-list): Move all entries to `TeX-expand-list-builtin'
+ and update docstring.
+ (TeX-expand-list): New function.
+
+ * tex-buf.el (TeX-command-expand): Use `TeX-expand-list' function.
+
+ * doc/auctex.texi (Starting Viewers): Mention
+ `TeX-expand-list-builtin'.
+
+ * doc/changes.texi: Mention change to `TeX-expand-list'.
+
+2015-10-08 Arash Esbati <esbati@gmx.de>
+
+ * style/longtable.el ("longtable"): Use `LaTeX-add-counters' on
+ "LTchunksize" and not `TeX-add-symbols'.
+
+ * style/enumitem.el (LaTeX-arg-SetEnumitemKey): Remove unused
+ `prompt' from arguments list.
+ (LaTeX-arg-SetEnumitemValue): ditto.
+
+ * style/listings.el (LaTeX-listings-key-val-options-local): New
+ variable used for all key-val queries.
+ ("listings-lstdefinestyle"): Add parsing support for
+ "\lstdefinestyle".
+ (LaTeX-listings-lstnewenvironment-regexp): Add missing "s" to
+ "listing".
+ (LaTeX-listings-update-style-key): New function adding newly
+ defined values to "style" key in
+ `LaTeX-listings-key-val-options-local'.
+ ("listings"): Extend "lstdefinestyle".
+
+ * style/wrapfig.el ("wrapfig"): Check for new floating
+ environments definded through "newfloat.el" and offer them as
+ completion to "wrapfloat" environment.
+
+2015-10-05 Mos¨ Giordano <mose@gnu.org>
+
+ * context.el (TeX-ConTeXt-sentinel): Parse ConTeXt Mark IV output.
+
+ * tex-buf.el (TeX-TeX-sentinel-check): Ditto.
+
+2015-10-05 Arash Esbati <esbati@gmx.de>
+
+ * style/newfloat.el (LaTeX-newfloat-auto-cleanup): Check if
+ `LaTeX-caption-supported-float-types' from caption.el is bound and
+ update it accordingly. Fix docstring.
+ ("newfloat"): Fix wrong check with (LaTeX-largest-level).
+ ("newfloat"): Use `LaTeX-newfloat-key-val-options-local' and
+ delete redundant code.
+
+2015-10-04 Mos¨ Giordano <mose@gnu.org>
+
+ * context.el (ConTeXt-Mark-version): New customizable and
+ safe-local variable.
+ (ConTeXt-expand-command): New function.
+ (ConTeXt-expand-options): Use `ConTeXt-Mark-version'.
+
+ * tex.el (TeX-command-list): Use %(cntxcom) expander in all
+ ConTeXt programs. Remove MkIV entry.
+ (TeX-expand-list): Add %(cntxcom).
+
+2015-10-04 Tassilo Horn <tsdh@gnu.org>
+
+ * font-latex.el (font-latex-math-environments): Add math
+ environment.
+
+2015-10-04 Mos¨ Giordano <mose@gnu.org>
+
+ * tex.el (TeX-command-list): Add MkIV to `TeX-command-list'.
+
+2015-09-29 Mos¨ Giordano <mose@gnu.org>
+
+ * style/newfloat.el (LaTeX-newfloat-auto-cleanup): Replace another
+ `pushnew' with `add-to-list', previously overlooked.
+
+2015-09-28 Mos¨ Giordano <mose@gnu.org>
+
+ * style/newfloat.el: Do not require cl at loading time.
+ (LaTeX-newfloat-auto-cleanup): Append elements to
+ `LaTeX-label-alist' in order not to override possible custom
+ values.
+
+2015-09-27 Arash Esbati <esbati@gmx.de>
+
+ * Makefile.in (STYLESRC): Add new style.
+
+ * style/newfloat.el: New file.
+
+ * style/longtable.el ("longtable"): Make package lengths available
+ through `LaTeX-add-lengths' and not `TeX-add-symbol'.
+
+2015-09-26 Mos¨ Giordano <mose@gnu.org>
+
+ * tex.el (TeX-search-files-kpathsea): Remove duplicates
+ directories.
+
+2015-09-26 Tassilo Horn <tsdh@gnu.org>
+
+ * tex.el (TeX--prettify-symbols-compose-p): New function.
+ (VirTeX-common-initialization): Use it.
+
+2015-09-25 Arash Esbati <esbati@gmx.de>
+
+ * Makefile.in (STYLESRC): Add new style.
+
+ * style/subcaption.el: New file.
+
+ * style/caption.el (LaTeX-caption-key-val-options): Fix values of hypcap-key.
+ (LaTeX-caption-update-key-val-options): Add support for
+ subcaption.el if loaded.
+ (LaTeX-arg-caption-captionbox): Do not query for the third
+ optional arg. if the second one is empty.
+ ("caption"): Add support for all lowercase \continuedfloat*?.
+ ("caption"): Fix fontification for \captionof.
+
+ * style/hyperref.el ("hyperref"): Make
+ `LaTeX-indent-environment-list' local before adding new env's.
+
+ * style/filecontents.el ("filecontents"): Make
+ `LaTeX-indent-environment-list' local before adding new env's.
+
+ * style/fontenc.el: Fix mail address in Maintainer-header.
+
+2015-09-25 Mos¨ Giordano <mose@gnu.org>
+
+ * latex.el (LaTeX-common-initialization): Remove "abstract"
+ environment, it is not defined in latex.ltx.
+
+ * style/amsart.el ("amsart"): Add "abstract" environment.
+
+ * style/amsbook.el ("amsbook"): Ditto.
+
+ * style/article.el ("article"): Ditto.
+
+ * style/memoir.el ("memoir"): Ditto.
+
+ * style/report.el ("report"): Ditto.
+
+ * style/scrartcl.el ("scrartcl"): Ditto.
+
+ * style/scrreprt.el ("scrreprt"): Ditto.
+
+2015-09-24 Mos¨ Giordano <mose@gnu.org>
+
+ * tex.el (TeX-doc): Use default argument of `completing-read'.
+
+2015-09-22 Tassilo Horn <tsdh@gnu.org>
+
+ * latex.el (LaTeX-find-matching-end): Find correct end when point
+ is already on the name in \end{name}.
+
+2015-09-20 Mos¨ Giordano <mose@gnu.org>
+
+ * .gitignore: Do not ignore auto.el.
+
+ * Makefile.in (install-metadata): auto.el is not there anymore,
+ we do not need to test if preview is enabled here.
+
+2015-09-19 Tassilo Horn <tsdh@gnu.org>
+
+ * tex-buf.el (TeX-error-overview): Fix typo in error message.
+ (TeX-TeX-sentinel): Fix error parsing.
+
+2015-09-13 Arash Esbati <esbati@gmx.de>
+
+ * style/eso-pic.el (LaTeX-eso-pic-package-options-list): Rename
+ from `LaTeX-eso-pic-package-options'.
+ (LaTeX-eso-pic-package-options): Use renamed variable.
+
+ * style/AlegreyaSans.el: New file.
+
+ * Makefile.in (STYLESRC): Add new style.
+
+ * style/Alegreya.el: New file.
+
+ * Makefile.in (STYLESRC): Add new style.
+
+ * style/fontenc.el: New file.
+
+2015-09-10 Mos¨ Giordano <mose@gnu.org>
+
+ * style/gloss-italian.el ("gloss-italian"): Fix "textitalian"
+ macro and "italian" environment arguments.
+
+ * style/polyglossia.el (LaTeX-polyglossia-prepare): Clear
+ `LaTeX-polyglossia-lang-list'.
+ (LaTeX-polyglossia-cleanup): Remove clearing of
+ `LaTeX-polyglossia-lang-list'.
+ (TeX-update-style-hook): Append
+ `LaTeX-polyglossia-load-languages'.
+ ("polyglossia"): Remove `LaTeX-polyglossia-load-languages' from
+ here.
+
+2015-09-09 Mos¨ Giordano <mose@gnu.org>
+
+ * style/polyglossia.el: Remove
+ `LaTeX-polyglossia-italian-options-list', moved to
+ gloss-italian.el.
+ (LaTeX-polyglossia-setkeys-regexp): Fix regexp.
+ (LaTeX-polyglossia-cleanup): Remove useless let-bound variables
+ and set `LaTeX-polyglossia-lang-list'.
+ (LaTeX-polyglossia-active-languages)
+ (LaTeX-polyglossia-lang-option-member): Use
+ `LaTeX-polyglossia-lang-list' variable instead of function.
+ (LaTeX-polyglossia-load-languages): New function.
+ ("polyglossia"): Use it.
+
+ * style/gloss-italian.el: New style file.
+
+ * Makefile.in (STYLESRC): Activate it.
+
+ * style/polyglossia.el: New style file.
+
+ * Makefile.in (STYLESRC): Activate it.
+
+2015-09-08 Arash Esbati <esbati@gmx.de>
+
+ * style/hyperref.el ("hyperref"): Add completion for starred
+ version of `\autoref' incl. fontification.
+ ("hyperref"): Add fontification support for `\hypersetup'.
+
+2015-09-08 Tassilo Horn <tsdh@gnu.org>
+
+ * tex-buf.el (TeX-command-default): Fix bug where wrong command
+ was guessed for region files.
+
+2015-09-07 Mos¨ Giordano <mose@gnu.org>
+
+ * tex-buf.el (LaTeX-idx-md5-alist, LaTeX-idx-changed-alist): New
+ variables.
+ (TeX-command-sequence): Call file function without optional
+ arguments.
+ (TeX-command-default): Suggest "Index" when appropriate.
+ (TeX-run-TeX): Store value of `LaTeX-idx-md5-alist'.
+ (TeX-run-index): New function.
+ (TeX-LaTeX-sentinel): Set `LaTeX-idx-changed-alist'.
+ (TeX-index-sentinel): New function.
+
+ * tex.el (TeX-command-list): Mention "makeindex" in "Index" help.
+ Suggested by Arash Esbati.
+
+ * doc/changes.texi: Mention ability to suggest makeindex when
+ needed.
+
+ * doc/todo.texi (Wishlist): Remove reference to makeindex.
+
+ * doc/tex-ref.tex: Update copyright years.
+ Mention C-c C-a key binding.
+
+2015-09-05 Tassilo Horn <tsdh@gnu.org>
+
+ * font-latex.el (font-latex-unfontify-region): Also remove the
+ `invisible' text properties.
+
+2015-09-04 Mos¨ Giordano <mose@gnu.org>
+
+ * doc/auctex.texi (Starting a Command): Update references to
+ `TeX-command-run-all' and C-c C-a key binding.
+
+ * doc/changes.texi: Ditto.
+
+ * doc/quickstart.texi (Processing Facilities): Ditto.
+
+ * tex-buf.el (TeX-command-run-all): Use `universal-argument' to
+ reference C-u.
+
+2015-09-04 Tassilo Horn <tsdh@gnu.org>
+
+ * tex-buf.el (TeX-command-sequence-file-function): New variable.
+ (TeX-command-sequence): Use it.
+ (LaTeX-command-section-boundaries): Recognize end of document as
+ ultimate boundary.
+ (LaTeX-command-section): Signal an error if not in a LaTeX buffer.
+ (LaTeX-command-run-all-section): Ditto.
+
+ * tex.el: Add autoloads for the new commands.
+
+ * tex-buf.el (TeX-region-update): New function.
+ (TeX-command-region): Use it.
+ (LaTeX-command-section-boundaries): New function.
+ (LaTeX-command-section): Use it.
+ (TeX-command-run-all-region): New command.
+ (LaTeX-command-run-all-section): New command.
+ (TeX-command-run-all): Move it here from tex.el.
+
+ * tex.el (TeX-command-run-all): Rename from TeX-update.
+ (TeX-mode-map): Bind TeX-command-run-all to C-c C-a.
+
+2015-09-03 Tassilo Horn <tsdh@gnu.org>
+
+ * font-latex.el (font-latex-fontify-script): Add possible value
+ `multi-level' to allow raising/lowering scripts of scripts, and
+ another value `invisible' which in addition hides the ^ and _
+ characters in scripts.
+ (font-latex-match-script): Use it.
+ (font-latex-make-user-keywords): Add font-lock entry for script
+ signs.
+ (font-latex-match-script-chars): New function.
+
+ * tex.el (TeX-tex-mode): Don't ignore case when matching the
+ TeX-format-list regexes.
+ (TeX-expand-list): Add expansion of %(PDFout) to -output-format
+ option for AmS-TeX.
+ (TeX-command-list): Use it instead of calling the non-existing
+ pdfamstex command.
+
+2015-09-02 Tassilo Horn <tsdh@gnu.org>
+
+ * font-latex.el: Remove code which set up font-latex for use with
+ stock latex-mode on load.
+
+2015-09-01 Tassilo Horn <tsdh@gnu.org>
+
+ * tex-buf.el (TeX-command-sequence): Add argument for processing
+ the region file instead of the master file.
+
+ * tex.el (TeX--if-macro-fboundp): New portability macro.
+ (VirTeX-common-initialization): Use it.
+
+2015-08-31 Mos¨ Giordano <mose@gnu.org>
+
+ * tex-buf.el (TeX-previous-error): Delete point in error message.
+ (TeX-command-default)
+ (TeX-run-set-command): Take care of `TeX-PDF-via-dvips-ps2pdf'.
+ (TeX-run-dvips, TeX-run-ps2pdf): New functions.
+ (TeX-TeX-sentinel, TeX-TeX-sentinel-check, TeX-LaTeX-sentinel):
+ Take care of `TeX-PDF-via-dvips-ps2pdf'.
+ (TeX-dvips-sentinel, TeX-ps2pdf-sentinel): New functions.
+ (TeX-parse-command, TeX-output-revert-buffer): Delete point in
+ error message.
+
+ * tex.el (TeX-command-list): Add "Dvips" and "Ps2pdf" entries.
+ (TeX-expand-list): Take care of `TeX-PDF-via-dvips-ps2pdf'.
+ (TeX-PDF-via-dvips-ps2pdf): New customizable and safe-local
+ variable.
+ (TeX-toggle-PDF-via-dvips-ps2pdf): New function.
+ (TeX-mode-specific-command-menu-entries): Add "PDF via dvips +
+ ps2pdf" entry.
+
+ * doc/auctex.texi (Processor Options): Document
+ `TeX-PDF-via-dvips-ps2pdf' and fix a typo.
+
+ * doc/changes.texi: Mention `TeX-PDF-via-dvips-ps2pdf'.
+
+ * doc/quickstart.texi (Processing Facilities): Mention
+ `TeX-PDF-via-dvips-ps2pdf'.
+
+ * tex-buf.el: Update copyright year.
+ (TeX-command-sequence-max-runs-same-command)
+ (TeX-command-sequence-max-runs): New customizable variables.
+ (TeX-command-sequence-count-same-command)
+ (TeX-command-sequence-count, TeX-command-sequence-last-command)
+ (TeX-command-sequence-sentinel, TeX-command-sequence-command): New
+ variables.
+ (TeX-command-sequence): New function.
+ (TeX-command-default): New function, stripped off from
+ `TeX-command-query'.
+ (TeX-command-query): Use `TeX-command-default'.
+ (TeX-command-sequence-sentinel): New function.
+
+ * tex.el (TeX-update): New function.
+ (TeX-mode-map): Add key binding for `TeX-update'.
+ (TeX-mode-specific-command-menu-entries): Add entry for
+ `TeX-update'.
+
+ * doc/auctex.texi: Update copyright year.
+ (Starting a Command): Document `TeX-update'.
+
+ * doc/changes.texi: Update copyright year.
+ Mention `TeX-update'.
+
+ * doc/quickstart.texi (Processing Facilities): Mention
+ `TeX-update' and `TeX-error-overview'.
+
+ * doc/todo.texi: Update copyright year.
+ (Wishlist): Remove entry for `TeX-update'.
+
+2015-08-30 Arash Esbati <esbati@gmx.de>
+
+ * style/caption.el ("caption"): Add support for undocumented
+ macros `\captionbox[*]'.
+ (LaTeX-arg-caption-captionbox): New function.
+
+ * Makefile.in (STYLESRC): Add new style.
+
+ * style/transparent.el: New file.
+
+ * style/filecontents.el ("filecontents"): Do not indent the
+ content of `filecontents[*]' environment.
+
+ * style/hyperref.el ("hyperref"): Do not indent the content of
+ `Form' environment.
+
+ * style/array.el ("array"): Add fontification for
+ `\newcolumntype'.
+
+2015-08-28 Tassilo Horn <tsdh@gnu.org>
+
+ * tex.el (TeX-mode-syntax-table): Use punctuation syntax for
+ character | (bug#21366).
+
+2015-08-24 Tassilo Horn <tsdh@gnu.org>
+
+ * tex.el (VirTeX-common-initialization): Add support for
+ `prettify-symbols-mode'.
+
+2015-08-21 Mos¨ Giordano <mose@gnu.org>
+
+ * tex-buf.el (TeX-check-engine): New customizable variable.
+ (TeX-check-engine-list): New variable.
+ (TeX-check-engine-add-engines): New function.
+ (TeX-check-engine): New function.
+ (TeX-command): Use `TeX-check-engine' and update docstring
+ accordingly.
+
+ * style/fontspec.el ("fontspec"): Add engine restrictions.
+
+ * doc/auctex.texi (Processor Options): Document
+ `TeX-check-engine'.
+
+ * doc/changes.texi: Mention `TeX-check-engine'.
+
+2015-08-20 Mos¨ Giordano <mose@gnu.org>
+
+ * tex-buf.el (TeX-error-overview-jump-to-source)
+ (TeX-error-overview-goto-log): New functions.
+ (TeX-error-overview-mode-map): Add
+ `TeX-error-overview-jump-to-source' and
+ `TeX-error-overview-goto-log'.
+ (TeX-error-overview-menu): Define menu for TeX error overview.
+ (TeX-error-overview-mode): Add menu.
+
+ * doc/auctex.texi (top)
+ (Debugging): Add section for error overview.
+ (Error overview): Document new functions and keys.
+
+2015-08-19 Mos¨ Giordano <mose@gnu.org>
+
+ * latex.el (LaTeX-label): Mention in the docstring the returned
+ value. Let-bind `TeX-read-label-prefix' and use `TeX-read-label'
+ to read the label.
+ (TeX-read-label-prefix): New variable.
+ (TeX-read-label): New function.
+ (TeX-arg-label): Use `TeX-read-label' and mention
+ `TeX-read-label-prefix' in docstring.
+ (TeX-arg-define-label): Mention `TeX-read-label-prefix' in
+ docstring.
+
+2015-08-14 Arash Esbati <esbati@gmx.de>
+
+ * latex.el (LaTeX-common-initialization): Fix the subgroup number
+ in the regex for `\\(this\\)?pagestyle'
+
+2015-08-10 Tassilo Horn <tsdh@gnu.org>
+
+ * latex.el (TeX-latex-mode): Call LaTeX-preview-setup only if its
+ bound.
+
+ * preview.el.in (LaTeX-preview-setup): Setup menu and keymap only
+ once.
+
+2015-08-09 Arash Esbati <esbati@gmx.de>
+
+ * style/enumitem.el ("enumitem"): Cater for the starred version of
+ `\AddEnumerateCounter'.
+
+ * style/ragged2e.el ("ragged2e"): Make package lengths available
+ through `LaTeX-add-lengths' and not `TeX-add-symbol'.
+
+2015-08-07 Tassilo Horn <tsdh@gnu.org>
+
+ * latex.el (TeX-latex-mode): Call `LaTeX-preview-setup'
+ unconditionally instead of calling it from `LaTeX-mode-hook' which
+ breaks things if that hook is customized (bug#21188).
+
+ * preview.el.in: Don't add `LaTeX-preview-setup' to
+ `LaTeX-mode-hook'.
+
+2015-07-21 Arash Esbati <esbati@gmx.de>
+
+ * style/nameref.el ("nameref"): Add missing commands `\nameref*'
+ and `\Nameref'.
+
+ * style/textpos.el ("textpos"): Fix the name of the provided env's
+ which is `textblock' and not `textpos'.
+
+2015-07-18 Arash Esbati <esbati@gmx.de>
+
+ * latex.el (LaTeX-common-initialization): Query for the default
+ value of first arg when (re-)defining new environments.
+
+ * Makefile.in (STYLESRC): Add new style.
+
+ * style/vwcol.el: New file.
+
+ * Makefile.in (STYLESRC): Add new style.
+
+ * style/textpos.el: New file.
+
+ * Makefile.in (STYLESRC): Add new style.
+
+ * style/environ.el: New file.
+
+ * style/tabulary.el ("tabulary"): Add `LCRJ' to
+ `LaTeX-array-column-letters'.
+
+ * style/tabularx.el ("tabularx"): Add `X' to
+ `LaTeX-array-column-letters'.
+
+ * style/array.el: Parse user-defined new column types and add them
+ to `LaTeX-array-column-letters'.
+
+2015-07-09 Mos¨ Giordano <mose@gnu.org>
+
+ * latex/README: restore file deleted by mistake when preview/
+ directory has been moved to top level.
+
+ * Makefile.in: Use everywhere $(MAKE) in place of make.
+
+2015-06-21 Mos¨ Giordano <mose@gnu.org>
+
+ * tex-buf.el (TeX-LaTeX-sentinel): Add support for hf-tikz
+ messages.
+
+ * style/mnras.el: New style file.
+
+ * Makefile.in (STYLESRC): Activate it.
+
+2015-06-14 Arash Esbati <esbati@gmx.de>
+
+ * style/pdfpages.el ("pdfpages"): Restrict suggested files to
+ *.pdf files. File name should be relative to master file
+ directory.
+
+2015-06-13 Mos¨ Giordano <mose@gnu.org>
+
+ * tex-buf.el (TeX-LaTeX-sentinel-has-warnings, TeX-parse-error):
+ Cater for packages with digits in their names (e.g., fixltx2e,
+ which emits a warning from TeX Live 2015).
+
+2015-06-09 Tassilo Horn <tsdh@gnu.org>
+
+ * tex.el (TeX-evince-dbus-p): Explicitly bind dbus-debug to nil in
+ order to really ignore dbus errors with dbus-ignore-errors.
+
+2015-06-05 Arash Esbati <esbati@gmx.de>
+
+ * Makefile.in (STYLESRC): Add new style.
+
+ * style/pdfpages.el: New file.
+
+ * style/listings.el (LaTeX-listings-auto-cleanup): Add support for
+ the optional argument of env's defined with `\lstnewenvironment'.
+ (LaTeX-listing-lstnewenvironment-regexp): Ditto.
+
+2015-06-05 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ * tex.el (featurep): Restore compatibility with emacs versions
+ which don't have `activate-mark' (Emacs <= 22).
+
+2015-06-02 Arash Esbati <esbati@gmx.de>
+
+ * latex.el (LaTeX-auto-cleanup): Prepare so that an optional
+ environment arg is also queried.
+
+2015-06-01 Tassilo Horn <tsdh@gnu.org>
+
+ * latex.el (LaTeX-auto-env-args-with-opt): New variable for
+ collecting environments with an optional argument.
+ (LaTeX-auto-regexp-list): Use it.
+ (LaTeX-auto-cleanup): Initialize \newenvironment{foo}[n][d]{}{}
+ with the n-1 remaining mandatory arguments.
+
+2015-05-29 Nicolas Richard <youngfrog@members.fsf.org>
+
+ * latex.el (LaTeX-backward-paragraph): Make it work in narrowed
+ buffers. Fixes bug#20685.
+
+2015-05-18 Orlando Iovino <orlando.iovino@yahoo.it> (tiny change)
+
+ * style/beamer.el ("beamer"): Add `subtitle' to the `slide-title'
+ class.
+
+2015-05-16 Arash Esbati <esbati@gmx.de>
+
+ * Makefile.in (STYLESRC): Add new styles.
+
+ * style/newpxmath.el: New file.
+
+ * style/newpxtext.el: New file.
+
+ * font-latex.el (font-latex-set-syntactic-keywords): Allow for
+ multiple mandatory argument for a verbatim environment.
+
+ * style/listings.el ("listings"): Add support for parsing new
+ env's defined with `\lstnewenvironment' command.
+
+2015-05-08 Tassilo Horn <tsdh@gnu.org>
+
+ * tex.el (TeX-mode-syntax-table): Use paired delimiter syntax for
+ character |.
+ (TeX-tree-expand): Fix docstring.
+
+2015-05-07 Mos¨ Giordano <mose@gnu.org>
+
+ * tex.el: Update copyright years.
+ (TeX-view-program-list): Fix type. (Bug#20513)
+
+2015-05-05 Mos¨ Giordano <mose@gnu.org>
+
+ * style/italian.el: Evaluate `TeX-quote-after-quote'.
+
+2015-05-01 Tassilo Horn <tsdh@gnu.org>
+
+ * tex.el (TeX-tree-expand): Expand all given vars in just one
+ single call of kpsewhich. Users reported that on some windows and
+ mac systems, kpsewhich is extremely slow leading to auctex startup
+ times of several seconds.
+
+2015-04-29 Tassilo Horn <tsdh@gnu.org>
+
+ * tex.el (TeX-string-divide-number-unit): Fix docstring.
+
+ * style/mathtools.el ("mathtools"): Fix typos.
+
+2015-04-25 Tassilo Horn <tsdh@gnu.org>
+
+ * tex.el (TeX-parse-macro): Improve docstring.
+
+2015-04-19 Tassilo Horn <tsdh@gnu.org>
+
+ * tex.el (TeX-clean): Also regexp-quote TeX-region-file.
+
+2015-04-17 Tassilo Horn <tsdh@gnu.org>
+
+ * preview.el.in (preview-datadir, preview-lispdir): Delete these
+ two variables.
+ (preview-filter-specs): Use TeX-data-directory in place of
+ preview-datadir.
+
+ * configure.ac: Remove auto.el from AC_OUTPUT.
+
+ * Makefile.in (auto.el): Delete target.
+
+2015-04-11 Tassilo Horn <tsdh@gnu.org>
+
+ * style/mathtools.el (LaTeX-mathtools-env-multlined): Don't call
+ newline-and-indent after inserting environment.
+
+2015-04-11 Arash Esbati <esbati@gmx.de>
+
+ * Makefile.in (STYLESRC): Add new style.
+
+ * style/attachfile.el: New file.
+
+ * style/fbb.el: Update style to LaTeX package v1.07 from
+ 2015/04/06.
+
+ * style/erewhon.el ("erewhon"): Update style to LaTeX package
+ v1.04 from 2015/04/07.
+
+ * style/baskervaldx.el ("baskervaldx"): Update style to LaTeX
+ package v1.07 from 2015/04/06.
+
+ * style/newtxtext.el ("newtxtext"): Update style to LaTeX package
+ v1.434 from 2015/04/07.
+
+ * style/enumitem.el ("enumitem"): Fix typos.
+
+ * style/everysel.el ("everysel"): Fix typo (AtNextSelect_f_ont).
+
+ * style/color.el: Replace `read-string' with `TeX-read-string'.
+
+ * style/currvita.el: Replace `read-string' with `TeX-read-string'.
+
+ * style/wrapfig.el: Replace `read-string' with `TeX-read-string'.
+
+ * style/MyriadPro.el ("MyriadPro"): Add missing lenghts
+ `MdSlantfracSpacingBeforeSlash' and `MdSlantfracSpacingAfterSlash'.
+
+ * style/caption.el (LaTeX-caption-key-val-options): Delete wrong
+ values for `margin'-key.
+ (LaTeX-arg-caption-command): Use `TeX-argument-insert' and do not
+ rely on `TeX-arg-eval' anymore.
+ (LaTeX-arg-caption-DeclareCaption): Ditto.
+
+2015-04-02 Mos¨ Giordano <mose@gnu.org>
+
+ * doc/auctex.texi (Indenting): Document indentation of "\[...\]".
+
+ * doc/changes.texi: Mention it.
+
+2015-03-30 Mos¨ Giordano <mose@gnu.org>
+
+ * latex.el (LaTeX-begin-regexp): Add "\[".
+ (LaTeX-indent-calculate): Remove indentation of "\[...\]" from
+ here, it is automatically done in `LaTeX-indent-level-count' now
+ that `LaTeX-begin-regexp' has "\[". (Bug#20227)
+
+2015-03-28 Mos¨ Giordano <mose@gnu.org>
+
+ * style/acro.el:
+
+ * style/acronym.el:
+
+ * style/caption.el:
+
+ * style/color.el:
+
+ * style/enumitem.el:
+
+ * style/geometry.el:
+
+ * style/minted.el:
+
+ * style/pst-plot.el:
+
+ * style/pstricks.el:
+
+ * style/siunitx.el: Update copyright years and add
+ `TeX-auto-parse' to `TeX-update-style-hook'.
+
+2015-03-28 Arash Esbati <esbati@gmx.de>
+
+ * Makefile.in (STYLESRC): Add new style.
+
+ * style/colortbl.el: New file.
+
+ * style/ltxtable.el ("ltxtable"): Ask for a `Width' and not for a
+ `Length' in minibuffer.
+
+ * latex.el (LaTeX-common-initialization): Add standard LaTeX
+ lengths `arraycolsep', `arrayrulewidth' and `doublerulesep'.
+
+2015-03-23 Tassilo Horn <tsdh@gnu.org>
+
+ * tex.el (TeX-run-style-hooks): Apply style hooks in reverse
+ order. With that, a local style can modify a private or a global
+ style, and a private style can modify a global one.
+
+2015-03-17 Mos¨ Giordano <mose@gnu.org>
+
+ * doc/wininstall.texi: Fix a broken link.
+
+ * style/mn2e.el: New style file.
+
+ * Makefile.in (STYLESRC): Activate new style.
+
+2015-03-15 Arash Esbati <esbati@gmx.de>
+
+ * Makefile.in (STYLESRC): Add new style.
+
+ * style/ltxtable.el: New file.
+
+2015-03-15 Arash Esbati <esbati@gmx.de>
+
+ * Makefile.in (STYLESRC): Add new style.
+
+ * style/ltablex.el: New file.
+
+2015-03-15 Arash Esbati <esbati@gmx.de>
+
+ * style/enumitem.el (LaTeX-enumitem-SetEnumitemKey-regexp): Delete
+ match for the second argument.
+ (LaTeX-enumitem-SetEnumitemValue-regexp): Delete match for the
+ third argument.
+ (LaTeX-arg-SetEnumitemValue): Replace the randomly generated
+ number with something human-readable.
+
+ * style/caption.el (LaTeX-caption-DeclareCaption-regexp): Delete
+ match for the second argument.
+ (LaTeX-arg-caption-DeclareCaption): Replace the randomly generated
+ number with something human-readable.
+
+2015-03-10 Tassilo Horn <tsdh@gnu.org>
+
+ * tex.el (TeX-style-path): Replace `pushnew' with equivalent code
+ since defcustom init-forms don't seem to get compiled.
+
+ * doc/auctex.texi (Modes and Hooks): Document
+ TeX-after-TeX-LaTeX-command-finished-hook.
+
+ * tex-buf.el (TeX-after-TeX-LaTeX-command-finished-hook): New
+ hook.
+ (TeX-LaTeX-sentinel): Call it.
+
+2015-03-09 Mos¨ Giordano <mose@gnu.org>
+
+ * tex-buf.el (TeX-find-display-help): Display the help also when
+ the file cannot be determined.
+
+ * latex.el (LaTeX-end-regexp): Add "\]".
+ (LaTeX-indent-calculate): Indent "\[...\]" display math as a
+ regular environment.
+
+2015-03-08 Arash Esbati <esbati@gmx.de>
+
+ * Makefile.in (STYLESRC): Add new style.
+
+ * style/geometry.el: New file.
+
+2015-03-08 Arash Esbati <esbati@gmx.de>
+
+ * Makefile.in (STYLESRC): Add new style.
+
+ * style/caption.el: New file.
+
+2015-03-08 Arash Esbati <esbati@gmx.de>
+
+ * Makefile.in (STYLESRC): Add new style.
+
+ * style/enumitem.el: New file.
+
+2015-03-08 Tassilo Horn <tsdh@gnu.org>
+
+ * tex.el (TeX-style-path): Replace add-to-list on local with
+ pushnew.
+
+ * style/bidibeamer.el: New style.
+
+ * Makefile.in (STYLESRC): Activate new bidibeamer style.
+
+2015-03-07 Mos¨ Giordano <mose@gnu.org>
+
+ * doc/install.texi: Mention uninstallation in menus.
+ (Build/install and uninstall): Add "Uninstallation" index entry.
+ Document uninstallation process.
+
+ * Makefile.in: Update copyright years.
+ (.PHONY): Add uninstall rule.
+ (uninstall): New rule.
+
+ * doc/Makefile.in: Update copyright years.
+ (.PHONY): Add uninstall rule.
+ (uninstall): New rule.
+
+ * latex/Makefile.in: Update copyright years.
+ (.PHONY): Declare phony targets.
+ (install-texmf-doc): Do not ignore errors in this rule.
+ (uninstall): New rule.
+
+2015-03-03 Tassilo Horn <tsdh@gnu.org>
+
+ * doc/auctex.texi (Filling): Document LaTeX-fill-excluded-macros.
+
+ * latex.el (LaTeX-fill-excluded-macros): New defcustom for
+ excluding macro arguments from filling.
+ (LaTeX-fill-region-as-paragraph): Use it.
+
+2015-03-02 Tassilo Horn <tsdh@gnu.org>
+
+ * font-latex.el (font-latex-match-command-with-arguments): Fix
+ error introduced in the last change.
+
+2015-02-24 Tassilo Horn <tsdh@gnu.org>
+
+ * style/expl3.el: New style for the wrapper package for
+ experimental LaTeX 3.
+
+ * Makefile.in (STYLESRC): Activate new style.
+
+ * font-latex.el (font-latex-match-simple-command)
+ (font-latex-match-command-with-arguments): Use \s_ and \sw regexp
+ classes instead of hard-coding [A-Za-z@] as LaTeX macro chars.
+
+2015-02-17 Tassilo Horn <tsdh@gnu.org>
+
+ * latex.el (LaTeX-after-insert-env-hook): Rename from
+ `LaTeX-after-insert-env-hooks' which is now an obsolete variable
+ alias.
+ (LaTeX-after-modify-env-hook): New hook.
+ (LaTeX-modify-environment): Run `LaTeX-after-modify-env-hook'.
+
+2015-02-13 Tassilo Horn <tsdh@gnu.org>
+
+ * tex.el (TeX-pdf-tools-sync-view, TeX-PDF-mode): Move addition of
+ `TeX-source-correlate-handle-TeX-region' to
+ `pdf-sync-backward-redirect-functions' from `TeX-PDF-mode' to
+ `TeX-pdf-tools-sync-view'.
+
+2015-02-09 Tassilo Horn <tsdh@gnu.org>
+
+ * tex.el (TeX-pdf-tools-sync-view): Make it work with
+ `TeX-command-region'.
+
+2015-02-09 Tassilo Horn <tsdh@gnu.org>
+
+ * tex.el (TeX-pdf-tools-sync-view): Simplify function.
+
+2015-02-09 Arash Esbati <esbati@gmx.de>
+
+ * Makefile.in (STYLESRC): Add new style.
+
+ * style/color.el: New style.
+
+2015-02-08 Tassilo Horn <tsdh@gnu.org>
+
+ * tex.el (TeX-source-correlate-handle-TeX-region): Fix
+ void-variable error.
+
+2015-02-07 Tassilo Horn <tsdh@gnu.org>
+
+ * tex.el (TeX-pdf-tools-sync-view)
+ (TeX-source-correlate-handle-TeX-region)
+ (TeX-source-correlate-sync-source, TeX-PDF-mode): Adapt PDF Tools
+ forward/backward search to latest PDF Tools changes.
+
+2015-02-06 Mos¨ Giordano <mose@gnu.org>
+
+ * tex.el (TeX-source-correlate-handle-TeX-region): Replace
+ `file-name-base', introduced in GNU Emacs 24, with
+ `file-name-sans-extension'+`file-name-nondirectory'.
+
+2015-02-06 Tassilo Horn <tsdh@gnu.org>
+
+ * tex.el (TeX-source-correlate-handle-TeX-region): New function.
+ (TeX-source-correlate-sync-source): Use it.
+ (TeX-PDF-mode): Set `pdf-sync-correlate-tex-refine-function' to
+ `TeX-source-correlate-sync-source'.
+
+2015-02-05 Tassilo Horn <tsdh@gnu.org>
+
+ * tex.el (TeX-pdf-tools-sync-view): New function to use PDF Tools
+ `pdf-view-mode' as a viewer.
+ (TeX-view-program-list-builtin): Add PDF Tools entry calling
+ `TeX-pdf-tools-sync-view'.
+
+2015-02-04 Tassilo Horn <tsdh@gnu.org>
+
+ * Makefile.in (STYLESRC): Add new style.
+
+ * style/tcolorbox.el: New style.
+
+2015-01-31 Arash Esbati <esbati@gmx.de>
+
+ * Makefile.in (STYLESRC): Add new style.
+
+ * style/currvita.el: New file.
+
+2015-01-27 Tassilo Horn <tsdh@gnu.org>
+
+ * tex.el (TeX-view-program-list-builtin): Remove "start" as
+ executable entry because it's no executable but a Windows system
+ command.
+ (TeX-view-program-list-builtin): Also remove "start" as executable
+ from the "dvips and start" entry.
+
+2015-01-25 Tassilo Horn <tsdh@gnu.org>
+
+ * latex.el (LaTeX-section-heading): Use default parameter of
+ completing-read. Fixes bug#19675.
+
+2015-01-19 Tassilo Horn <tsdh@gnu.org>
+
+ * tex.el (TeX-auto-store): Fix indentation in auto files.
+
+2015-01-16 Arash Esbati <esbati@gmx.de>
+
+ * style/minted.el: Update copyright year.
+ (LaTeX-minted-auto-cleanup): Fix the name of the new langcode
+ environment.
+
+2014-12-30 Arash Esbati <esbati@gmx.de>
+
+ * style/multirow.el ("multirow"): Fix a typo in the name of a
+ variable.
+
+ * Makefile.in (STYLESRC): Add new styles.
+
+ * style/relsize.el: New file.
+
+ * style/wrapfig.el: New file.
+
+ * style/hyperref.el ("hyperref"): Add `Form' environment needed
+ for PDF and HTML forms.
+ (LaTeX-hyperref-forms-options): New variable for key-val options
+ used in form related macros (`TextField', `CheckBox',
+ `ChoiceMenu', `PushButton', `Submit', `Reset').
+
+2014-12-22 Tassilo Horn <tsdh@gnu.org>
+
+ * doc/changes.texi: Document addition of LaTeX-command-section and
+ forward/backward search enhancements with Evince.
+
+ * latex.el (auto-mode-alist): Add latex-mode association for HeVeA
+ files.
+
+2014-12-21 Tassilo Horn <tsdh@gnu.org>
+
+ * tex.el (TeX-parse-macro): Enclose arg in
+ LaTeX-default-verb-delimiter if macro is in
+ LaTeX-verbatim-macros-with-delims and there's only one argument.
+ (TeX-auto-store): Check if LaTeX-verbatim-environments,
+ LaTeX-verbatim-macros-with-delims, and
+ LaTeX-verbatim-macros-with-braces are bound before using them.
+
+ * style/minted.el (LaTeX-minted-newminted-regexp)
+ (LaTeX-minted-newmint-regexp, LaTeX-minted-newmintinline-regexp)
+ (LaTeX-minted-newmintedfile-regexp, LaTeX-minted-auto-cleanup):
+ Extend to recognize optional env/macro name.
+ ("minted"): Add \newminted, \newmint, \newmintinline, and
+ \newmintedfile macros.
+
+2014-12-20 Tassilo Horn <tsdh@gnu.org>
+
+ * tex.el (TeX-auto-store): Write LaTeX-verbatim-*-local variables
+ to auto file to make them document-local.
+
+ * style/minted.el (LaTeX-minted-auto-cleanup): Recognize macros
+ generated by \newmint, \newmintinline, and \newmintedfile, too.
+
+ * tex.el (TeX-evince-sync-view): Encode URI with `url-encode-url'.
+
+2014-12-19 Tassilo Horn <tsdh@gnu.org>
+
+ * style/minted.el: New style.
+
+ * Makefile.in (STYLESRC): Add style/minted.el.
+
+ * latex.el (LaTeX-env-args): Bind exit-mark if its not bound
+ already.
+ (LaTeX-verbatim-regexp): Make variable obsolete.
+ (LaTeX-verbatim-regexp): New function which computes a regexp of
+ verbatim environments from LaTeX-verbatim-environments.
+ (LaTeX-indent-calculate, LaTeX-indent-calculate-last): Use the
+ function LaTeX-verbatim-regexp instead of the variable.
+
+ * style/listings.el ("listings"): Don't modify the now obsolete
+ LaTeX-verbatim-regexp.
+
+ * style/fancyvrb.el ("fancyvrb"): Don't modify the now obsolete
+ LaTeX-verbatim-regexp.
+
+ * style/beamer.el ("beamer"): Don't modify the now obsolete
+ LaTeX-verbatim-regexp.
+
+ * style/alltt.el ("alltt"): Don't modify the now obsolete
+ LaTeX-verbatim-regexp.
+
+2014-12-18 Tassilo Horn <tsdh@gnu.org>
+
+ * tex.el (TeX-evince-sync-view): Don't URL-encode commas in the
+ file name (bug#19398).
+
+2014-12-12 Mos¨ Giordano <mose@gnu.org>
+
+ * latex.el (LaTeX-environment-name-regexp): New function.
+ (LaTeX-modify-environment): Use it.
+ (LaTeX-find-matching-end): Use `TeX-grop' instead of the
+ hard-coded "{". Search for the closing of the environment with
+ `re-search-forward' instead of `search-forward' and use
+ `LaTeX-environment-name-regexp': this allows to consider
+ environments with macros in their names. (Bug#19281)
+ (LaTeX-find-matching-begin): Use `TeX-grop' instead of the
+ hard-coded "{".
+
+2014-12-09 Mos¨ Giordano <mose@gnu.org>
+
+ * style/babel.el (LaTeX-babel-active-languages): Move `nreverse'
+ call inside `let'.
+
+2014-12-08 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * tex.el (TeX-mode-specific-command-menu): Remove Emacs 20
+ compatibility code.
+
+ * style/shortvrb.el ("shortvrb"): Use mapcar instead of
+ dolist/add-to-list.
+
+ * style/pstricks.el (LaTeX-pst-point-in-parens)
+ (LaTeX-pst-macro-psarc, LaTeX-pst-macro-pscircle)
+ (LaTeX-pst-macro-rput, LaTeX-pst-macro-uput)
+ (LaTeX-pst-macro-multirputps, LaTeX-pst-macro-psline)
+ (LaTeX-pst-macro-psdots, LaTeX-pst-macro-parabola)
+ (LaTeX-pst-macro-pnt-twolen, LaTeX-pst-macro-psbezier)
+ (LaTeX-pst-macro-pspolygon, LaTeX-pst-macro-psframe)
+ (LaTeX-pst-macro-psgrid, LaTeX-pst-macro-newpsobject): Rename
+ unused arg to silence the byte-compiler.
+ (LaTeX-pst-parameters-add): Remove unused var beg.
+
+ * style/pst-plot.el (LaTeX-pst-macro-psaxes): Rename unused arg to
+ silence the byte-compiler and fix indentation.
+ ("pst-plot"): Use mapc instead of mapcar for side-effects only.
+
+ * style/pst-node.el (LaTeX-pstnode-macro-nput)
+ (LaTeX-pstnode-macro-cnodeput, LaTeX-pstnode-macro-nc)
+ (LaTeX-pstnode-macro-pc, LaTeX-pstnode-macro-tnabcput): Rename
+ unused arg to silence the byte-compiler.
+
+ * style/psfig.el (TeX-arg-psfig, LaTeX-env-psfigure): Rename
+ unused arg to silence the byte-compiler.
+
+ * style/prosper.el: Fix comment style.
+ (LaTeX-prosper-insert-title, LaTeX-prosper-arg-pdftransition)
+ (LaTeX-prosper-insert-options, LaTeX-prosper-insert-slide): Rename
+ unused arg to silence the byte-compiler.
+
+ * style/pdfsync.el (LaTeX-pdfsync-output-page): Remove unused
+ sync-line variable.
+
+ * style/natbib.el (natbib-note-args): Rename unused arg to silence
+ the byte-compiler.
+
+ * style/inputenc.el (LaTeX-arg-inputenc-inputenc): Rename unused
+ arg to silence the byte-compiler.
+
+ * style/harvard.el (LaTeX-env-harvardbib): Rename unused arg to
+ silence the byte-compiler.
+
+ * style/graphicx.el (LaTeX-arg-includegraphics): Rename unused arg
+ to silence the byte-compiler.
+
+ * style/fancyref.el (TeX-arg-fancyref-format): Rename unused arg
+ to silence the byte-compiler.
+
+ * style/epsf.el (TeX-arg-epsfsize): Rename unused arg to silence
+ the byte-compiler.
+
+ * style/emp.el (LaTeX-env-empfile): Rename unused arg to silence
+ the byte-compiler.
+
+ * style/dinbrief.el (LaTeX-dinbrief-sender): Add a FIXME.
+
+ * style/bigstrut.el (TeX-arg-bigstrut): Rename unused arg to
+ silence the byte-compiler.
+
+ * style/beamer.el
+ (LaTeX-beamer-after-insert-env, TeX-arg-beamer-overlay-spec)
+ (TeX-arg-beamer-frametitle, TeX-arg-beamer-note)
+ (LaTeX-arg-beamer-theme, LaTeX-arg-beamer-inner-theme)
+ (LaTeX-arg-beamer-outer-theme, LaTeX-arg-beamer-color-theme)
+ (LaTeX-arg-beamer-font-theme): Rename unused arg to silence the
+ byte-compiler.
+
+ * style/babel.el (require): Require cl at compile-time.
+ (LaTeX-babel-active-languages): Use pushnew/nreverse instead of
+ add-to-list.
+
+ * bib-cite.el (bib-cite--kind): New function.
+ (bib-display, bib-find): Use it.
+ (featurep): Use with-current-buffer instead of set-buffer.
+ (bib-cite--fontify-help): New function.
+ (bib-cite-fontify-help-as-bibtex, bib-cite-fontify-help-as-latex):
+ Use it.
+ (bib-highlight-mouse, bib-label-help): Make comment conform to the
+ commenting conventions.
+ (bib-label-prompt-map): Derive from
+ minibuffer-local-completion-map instead of copying that.
+ (bib-display-this-environment): Fix comment.
+ (bib-document-TeX-files): Don't doubly-declare the-file.
+
+2014-12-08 Mos¨ Giordano <mose@gnu.org>
+
+ * style/mathtools.el ("mathtools"): Fix closing bracket
+ placement. (Bug#19301)
+
+2014-12-08 Arash Esbati <esbati@gmx.de>
+
+ * Makefile.in (STYLESRC): Add new styles.
+
+ * style/newtxttt.el: New file.
+
+ * style/newtxtext.el: New file.
+
+ * style/newtxsf.el: New file.
+
+ * style/newtxmath.el: New file.
+
+ * style/fbb.el: New file.
+
+ * style/erewhon.el: New file.
+
+ * style/baskervaldx.el: New file.
+
+2014-12-04 Mos¨ Giordano <mose@gnu.org>
+
+ * tex.el (TeX-Omega-command): Add aleph and omega choices.
+ (LaTeX-Omega-command): Add lamed and lambda choices. (Bug#19260)
+
+2014-12-03 Mos¨ Giordano <mose@gnu.org>
+
+ * README.GIT: Describe branches of the repository.
+
+2014-12-02 Vladimir Lomov <lomov.vl@gmail.com> (tiny change)
+
+ * latex/Makefile.in (MKINSTALLDIRS): Fix MKINSTALLDIRS path.
+
+2014-11-29 Mos¨ Giordano <mose@gnu.org>
+
+ * tests/latex/latex-test.el (latex): Require latex.el.
+ (LaTeX-indent-tabular-test/in): Expand file name in load
+ directory, for automated tests.
+ (LaTeX-indent-tabular-test/out): Ditto.
+
+ * tests/Makefile: New Makefile.
+
+ * Makefile.in (.PHONY): Add new check target.
+ (check): New rule. Suggest in comments to run it before a new
+ release.
+
+2014-11-28 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * tex.el (TeX-view-program-list-builtin): Fix up paren typo.
+
+2014-11-28 Mos¨ Giordano <mose@gnu.org>
+
+ * tex.el (TeX-view-program-list-builtin): Add the new third
+ element to each item.
+ (TeX-view-program-list): Document new third element of items in
+ doc string. Adapt the type.
+ (TeX-view-command-raw): Check whether the viewer executable
+ exists. (Bug#19121)
+
+ * doc/auctex.texi (Starting Viewers): Document change to
+ `TeX-view-program-list'.
+
+ * doc/changes.texi: Mention it.
+
+2014-11-28 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * style/siunitx.el (tex): Require tex because its indispensable
+ when compiling the call to TeX-auto-add-type.
+
+ * style/acronym.el (tex): Ditto.
+
+ * style/acro.el (tex): Ditto.
+
+2014-11-27 Mos¨ Giordano <mose@gnu.org>
+
+ * latex.el (LaTeX-label-alist): Expand doc string.
+ (LaTeX-label): Make second argument optional to restore backward
+ compatibility and update doc string accordingly. (Bug#19178)
+
+2014-11-27 Matthew Leach <matthew@mattleach.net>
+
+ * configure.ac: Merge from preview/configure.ac.
+
+ * .gitignore: Merge from preview/.gitignore.
+
+ * autogen.sh: Don't run autoconf in the preview direcotry.
+
+ * Makefile.in (subdirs): Remove.
+ (DESCEND): Remove.
+ (EXCLUDEDFILES): Remove 'preview/' prefix.
+ (preview-ball): Likewise and decrement stip-components in tar.
+ (previewstartfile): Adapt from preview/Makefile.in.
+ (PREVIEW_AUTOLOAD): Likewise.
+ (texmf): Likewise.
+ (preview-latex.el): Likewise.
+ (latex/Makefile): Likewise.
+ (auto.el): Likewise.
+ (install-startup): Likewise.
+ (install-texmf): Likewise.
+ (release-commit): Likewise.
+ (DISTCLEANFILES): Likewise.
+ (CLEANFILES): Add preview files.
+ (install-el): Likewise.
+ (install-lisp): Likewise.
+ (all): Add texmf dependency and remove DESCEND.
+ (clean): Remove DESCEND action.
+ (distclean): Likewise.
+ (maintainer-clean): Likewise.
+
+ * doc/Makefile.in (preview-dtxdoc.texi): Update path of
+ preview.dtx.
+
+ * preview/ChangeLog: Move to ChangeLog-preview
+
+ * preview/ChangeLog.1: Move to ChangeLog.1-preview
+
+ * preview/auto.el.in: Move to top-level.
+
+ * preview/circ.tex: Move to top-level.
+
+ * preview/preview.el.in: Move to top-level.
+
+ * preview/*.el: Move to top-level.
+
+ * preview/images/: Move to images/.
+
+ * preview/latex/: Move to latex/.
+
+ * preview/Makefile.in: Remove.
+
+ * preview/configure.ac: Remove.
+
+ * preview/.gitignore: Remove.
+
+ * preview/COPYING: Remove.
+
+2014-11-21 Tassilo Horn <tsdh@gnu.org>
+
+ * doc/auctex.texi (Starting a Command): Document
+ LaTeX-command-section and friends.
+
+ * style/book.el ("book"): Set LaTeX-largest-level to part instead
+ of chapter.
+
+ * tex-buf.el (LaTeX-command-section-level): New variable.
+ (LaTeX-command-section-level): New function.
+ (LaTeX-command-section-change-level, LaTeX-command-section): New
+ commands.
+
+ * latex.el (LaTeX-mode-map): Bind C-c C-z to LaTeX-command-section
+ and C-c M-z to LaTeX-command-section-change-level.
+
+ * tex.el (TeX-evince-sync-view): Use line/col information from the
+ TeX-region buffer if the View command is made on a region.
+
+ * tex-buf.el (TeX-region-create): Position point in the same
+ line/col as in the original buffer to make forward search work.
+
+2014-11-20 Mos¨ Giordano <mose@gnu.org>
+
+ * latex.el (LaTeX-env-figure): Fix indentation when there is the
+ \centering macro and no caption is inserted.
+
+ * style/fontspec.el ("fontspec"): Fix fontification of
+ "newfontfamily" and "newfontface".
+
+2014-11-19 Tassilo Horn <tsdh@gnu.org>
+
+ * tex.el (TeX-source-correlate-sync-source): Make backward/inverse
+ search form PDF to tex work also for TeX-regions.
+
+ * tex-buf.el (TeX-region-orig-buffer): New variable.
+ (TeX-region-create): Set TeX-region-orig-buffer.
+
+ * tex.el (TeX-submit-bug-report): Adapt bug report intro text to
+ mention debbugs url.
+
+2014-11-18 Arash Esbati <esbati@gmx.de>
+
+ * style/zlmtt.el (font-latex-add-keywords): Use more consistent
+ fontification.
+
+ * style/textcomp.el (font-latex-add-keywords): Ditto.
+
+ * style/fontaxes.el (font-latex-add-keywords): Ditto.
+
+ * style/XCharter.el (font-latex-add-keywords): Ditto.
+
+2014-11-18 Tassilo Horn <tsdh@gnu.org>
+
+ * tex-buf.el (TeX-region-create): Disable finding of appropriate
+ major-mode for region file. Also disable file-local vars, and
+ don't run find-file-hook functions. Also, make the region file
+ read-only to prevent accidental editing where actually the real
+ file should have been edited (happens easily with source
+ correlation mode).
+
+2014-11-16 Mos¨ Giordano <mose@gnu.org>
+
+ * Makefile.in (WEMACSDATAROOTDIR, WEMACSSITELISP): New variables.
+ (WPACKAGEFILES): Update accordingly.
+ (windows-package): Fix structure of the package for Emacs 24.4.
+ Reported by Uwe Siart. Remove the zip package before creating it,
+ otherwise it would be updated instead of recreated.
+ Mention that bash shell is required for windows-package and
+ release-upload recipes due to some bashisms in them. Reported by
+ Josİ Carlos Santos.
+
+2014-11-15 Mos¨ Giordano <mose@gnu.org>
+
+ * Makefile.in (WEMACSPACKAGE, WEMACSEXTRACTDIR): New variables.
+ (windows-package): Adapt rule to new Emacs 24.4 package for
+ Windows. Use `WEMACSPACKAGE' and `WEMACSEXTRACTDIR'.
+
+2014-11-15 Davide G. M. Salvetti <salve@linux.it>
+
+ * Makefile.in (STYLESRC): Add `ifluatex.el', `luatextra.el'.
+
+ * style/luatextra.el: New style.
+
+ * style/ifluatex.el: New style.
+
+ * doc/faq.texi: Update the `Why does 'TeX-next-error' ('C-c `')
+ fail?' entry, taking into account the `TeX-file-line-error'
+ option. Update copyright range.
+
+ * doc/auctex.texi (Selecting a Command): Fix typo.
+ (Automatic Local): Update description of `TeX-style-path',
+ `TeX-style-global', `TeX-style-local', and `TeX-auto-local'
+ variables: there is no need to end directories and directories
+ lists items with a slash.
+
+ * doc/quickstart.texi (Editing Facilities): Fix documentation: to
+ change font attributes of existing text, it has to be marked as an
+ _active_ region.
+
+2014-11-10 Davide G. M. Salvetti <salve@linux.it>
+
+ * context.el: Replace `read-string' with `TeX-read-string'.
+
+ * latex.el: Replace `read-string' with `TeX-read-string'.
+
+ * style/CJK.el: Replace `read-string' with `TeX-read-string'.
+
+ * style/amsmath.el: Replace `read-string' with `TeX-read-string'.
+
+ * style/amsthm.el: Replace `read-string' with `TeX-read-string'.
+
+ * style/beamer.el: Replace `read-string' with `TeX-read-string'.
+
+ * style/csquotes.el: Replace `read-string' with `TeX-read-string'.
+
+ * style/dinbrief.el: Replace `read-string' with `TeX-read-string'.
+
+ * style/dk-bib.el: Replace `read-string' with `TeX-read-string'.
+
+ * style/emp.el: Replace `read-string' with `TeX-read-string'.
+
+ * style/epsf.el: Replace `read-string' with `TeX-read-string'.
+
+ * style/filecontents.el: Replace `read-string' with `TeX-read-string'.
+
+ * style/foils.el: Replace `read-string' with `TeX-read-string';
+ add copyright notice.
+
+ * style/graphicx.el: Replace `read-string' with `TeX-read-string'.
+
+ * style/inputenc.el: Replace `read-string' with `TeX-read-string'.
+
+ * style/letter.el: Replace `read-string' with `TeX-read-string'.
+
+ * style/longtable.el: Replace `read-string' with `TeX-read-string'.
+
+ * style/mathtools.el: Replace `read-string' with `TeX-read-string'.
+
+ * style/natbib.el: Replace `read-string' with `TeX-read-string'.
+
+ * style/paralist.el: Replace `read-string' with `TeX-read-string'.
+
+ * style/plext.el: Replace `read-string' with `TeX-read-string'.
+
+ * style/prosper.el: Replace `read-string' with `TeX-read-string'.
+
+ * style/psfig.el: Replace `read-string' with `TeX-read-string'.
+
+ * style/pstricks.el: Replace `read-string' with `TeX-read-string'.
+
+ * style/scrbase.el: Replace `read-string' with `TeX-read-string'.
+
+ * style/scrlttr2.el: Replace `read-string' with `TeX-read-string'.
+
+ * tex-info.el: Replace `read-string' with `TeX-read-string'.
+
+ * tex.el: Replace `read-string' with `TeX-read-string'.
+
+2014-11-04 Tassilo Horn <tsdh@gnu.org>
+
+ * tex.el (VirTeX-common-initialization): Define a variable alias
+ for find-file-hook on XEmacs.
+
+2014-11-04 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * toolbar-x.el: Adjust copyright years.
+ (require): Require cl at compile-time.
+ (toolbarx-good-option-list-p): Use pushnew instead of add-to-list.
+
+ * tex.el (url-unreserved-chars): Declare to silence byte-compiler.
+ (TeX-tree-expand): Use pushnew instead of add-to-list. Iterate
+ path-list in reversed order.
+ (TeX-style-path): Use mapc instead of mapcar for side-effects.
+ (TeX-file-extensions, BibTeX-file-extensions)
+ (TeX-Biber-file-extensions): Declare to silence byte-compiler.
+ (TeX-tree-roots): Use pushnew instead of add-to-list.
+ (TeX-search-files-by-type): Use setq/pushnew instead of
+ dolist/add-to-list.
+ (TeX-doc): Use pushnew instead of add-to-list.
+
+ * tex-info.el (require): Require cl at compile-time.
+ (Texinfo-insert-node): Use pushnew instead of add-to-list.
+ (reftex-section-levels-all, reftex-level-indent)
+ (reftex-label-menu-flags, reftex-tables-dirty): Always
+ forward-declare (not only at compile-time).
+ (when): declare-function only at compile-time.
+
+ * tex-fold.el: Adjust copyright years.
+ (require): Require cl at compile-time.
+ (TeX-fold-region-macro-or-env, TeX-fold-update-at-point): Use
+ pushnew instead of add-to-list.
+ (TeX-fold-hide-item): Use setq instead of add-to-list.
+
+ * tex-buf.el (font-lock-mode-enable-list)
+ (font-lock-auto-fontify, font-lock-defaults-alist): Declare vars
+ to silence byte-compiler.
+
+ * multi-prompt.el: Adjust copyright years.
+ (multi-prompt): Don't let-bind unused var done.
+ (multi-prompt-next-must-match): Use minibuffer-completion-table
+ instead of dynamically bound table.
+
+ * latex.el (require): Require cl at compile-time.
+ (title, name, level, done-mark, toc): Declare dynamic vars.
+ (LaTeX-env-document, TeX-arg-index-tag, TeX-arg-document)
+ (LaTeX-arg-usepackage, TeX-arg-verb, ): Rename unused arg.
+ (LaTeX-listify-package-options): Use setq instead of add-to-list
+ to add to local var.
+ (reftex-ref-macro-prompt, TeX-arg-item-label-p)
+ (TeX-arg-right-insert-p): Declare to silence byte-compiler.
+ (LaTeX-indent-line): Use pushnew instead of add-to-list.
+ (LaTeX-fill-move-to-break-point): Don't let-bind unused math-sep.
+ (LaTeX-section-enable-symbol): Downcase arg.
+ (LaTeX-indent-tabular): Use mapc instead of mapcar for
+ side-effects.
+
+ * context.el (done-mark, reference, title, name, level): Declare
+ dynamic vars without global nil value.
+ (ConTeXt-section): let-bind reference. Remove binding of unused
+ var toc.
+ (ConTeXt-numbered-section-hook, ConTeXt-unnumbered-section-hook):
+ Improve docstring.
+ (ConTeXt-find-matching-stop): Don't let-bind pos.
+ (ConTeXt-optional-argument-insert)
+ (ConTeXt-required-argument-insert, ConTeXt-indent-line): Rename
+ unused arg.
+ (ConTeXt-mode-common-initialization): Use fboundp to check if
+ make-local-hook is defined.
+
+ * bib-cite.el: Expand copyright years.
+ (bib-cite-is-XEmacs): Remove.
+ (bib-cite-minor-mode, bib-cite-setup-highlight-mouse-keymap)
+ (bib-etags, bib-highlight-mouse, bib-toggle-highlight)
+ (bib-etags-find-noselect): Check for XEmacs with featurep.
+ (bib-cite-setup-mouse-function): Rename unused arg.
+ (bib-apropos): Use mapc instead of mapcar for side effects.
+ (bib-cite-fontify-help-xemacs): Define only on XEmacs.
+ (bib-cite-fontify-help-as-bibtex, bib-cite-fontify-help-as-latex):
+ Check for XEmacs with featurep. Fix fontification code.
+ (bib-display-this-ref): Use point-min instead of 1.
+ (TeX-auto-save, TeX-auto-update, TeX-auto-regexp-list): Declare to
+ silence the byte-compiler.
+
+2014-11-03 Arash Esbati <esbati@gmx.de>
+
+ * style/zlmtt.el: New file.
+
+ * style/XCharter.el: New file.
+
+ * style/textcomp.el: New file.
+
+ * style/MyriadPro.el: New file.
+
+ * style/mdsymbol.el: New file.
+
+ * style/fontaxes.el: New file.
+
+ * style/eso-pic.el: New file.
+
+ * style/AnonymousPro.el: New file.
+
+2014-11-02 Arash Esbati <esbati@gmx.de>
+
+ * style/MinionPro.el (TeX-add-symbols): Remove `figureversion',
+ `textsw', `textssc', `sscshape' and `swshape'.
+ (TeX-run-style-hooks): Added "fontaxes".
+
+ * style/MinionPro.el (LaTeX-MinionPro-package-options): Added
+ additional options from v2.3 of `MinionPro.sty', available from
+ <https://github.com/sebschub>
+
+2014-11-01 Davide G. M. Salvetti <salve@linux.it>
+
+ * tex.el (TeX-file-line-error): New customizable option.
+ (TeX-expand-list): New expander "$(file-line-error)".
+ (TeX-command-list): Use it.
+ (LaTeX-command-style): Use it.
+
+ * doc/auctex.texi (Processor Options): Document
+ `TeX-file-line-error'.
+
+ * doc/changes.texi: Mention `TeX-file-line-error'.
+
+2014-10-31 Mos¨ Giordano <mose@gnu.org>
+
+ * Makefile.in (CTANDIR): New variable.
+ (preview-ball): Create a top level directory "preview/" in the
+ preview tarball, as required by CTAN. Save the tarball to
+ $(CTANDIR) instead of $(FTPDIR).
+
+2014-10-29 Mos¨ Giordano <mose@gnu.org>
+
+ * Version 11.88 released.
+
+2014-10-29 Matthew Leach <matthew@mattleach.net>
+
+ * latex.el (LaTeX-indent-environment-list): Remove setter
+ lambda.
+ (LaTeX--tabular-like-end): Remove variable.
+ (LaTeX-indent-tabular): Move setter function from
+ LaTeX-indent-environment-list to generate tabular-end regex when
+ called.
+
+2014-10-29 Mos¨ Giordano <mose@gnu.org>
+
+ * latex.el (LaTeX-largest-level-set): Set `outline-heading-alist'
+ only if it is bound.
+
+ * .gitignore: Ignore preview/preview.el.
+
+ * Makefile.in (DISTCLEANFILES): Add preview/preview.el.
+ (release-commit): Write new version announcement also into
+ preview/ChangeLog.
+
+ * aclocal.m4: Add a third argument to
+ `AC_DATE_VERSION_FROM_CHANGELOG' specifying the ChangeLog file.
+
+ * configure.ac: Use new third argument of
+ `AC_DATE_VERSION_FROM_CHANGELOG'. Retrieve preview date and
+ version from its ChangeLog. Add preview/preview.el to output
+ files.
+
+2014-10-22 Mos¨ Giordano <mose@gnu.org>
+
+ * RELEASE: Update AUCTeX version, the new features section, and
+ the list of contributors.
+
+ * configure.ac: Update AUCTeX version.
+
+ * doc/changes.texi: Mention generic bug fixes for 11.88 release.
+
+ * doc/tex-ref.tex: Update AUCTeX version and copyright years
+ across the file.
+ Add now working `TeX-previous-error' key-binding.
+
+ * tex.el: Update copyright year.
+
+ * doc/Makefile.in: Make it possible to build the HTML doc with
+ `makeinfo' if `texi2html' is not available. Add new
+ `TEXI2HTML_TOC' variable.
+ (extradist): Use `TEXI2HTML_TOC'.
+ (html/$(TEXI2HTML_TOC)): Use `TEXI2HTML_TOC'. Fix splitting
+ option to HTML engine. Suggested by Norbert Preining.
+
+ * latex.el (LaTeX-newline): Fix for when
+ `comment-auto-fill-only-comments' is non-nil. Suggested by Piet
+ van Oostrum.
+
+2014-10-13 Matthew Leach <matthew@mattleach.net>
+
+ * style/cleveref.el: New file.
+
+2014-10-02 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ * tex.el (featurep): Activate mark in the GNU Emacs version of
+ TeX-activate-mark instead of being a no-op.
+ (TeX-insert-dollar): Use set-mark instead of push-mark in order to
+ avoid duplicate marks.
+
+2014-10-02 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ * texmathp.el (texmathp-tex-commands-default): Move equation*
+ environment to AMS-LaTeX section.
+ (texmathp-why): Fix docstring.
+
+2014-10-02 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ * style/amstext.el (LaTeX-amstext-package-options): Rename from
+ `LaTeX-amstext-package-option'.
+
+2014-10-02 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ * tex-info.el (Texinfo-mark-environment, Texinfo-mark-section)
+ (Texinfo-mark-node): Use `push-mark' instead of `set-mark'.
+
+ * latex.el (LaTeX-mark-environment): Ditto.
+
+ * context.el (ConTeXt-mark-environment): Ditto.
+
+2014-09-25 Tassilo Horn <tsdh@gnu.org>
+
+ * latex.el (LaTeX-insert-environment): Pass correct \end buffer
+ position to hooks in LaTeX-after-insert-env-hooks.
+
+2014-09-13 Vincent BelaŻche <vincent.b.1@hotmail.fr>
+
+ * latex.el (LaTeX-dialect): Correct doctstring for consistency
+ with definition of function TeX-add-style-hook.
+
+ * doc/auctex.texi (Simple Style): modify example with
+ 'TeX-add-style-hook', so that 3rd argument is added. Modify @defun
+ of 'TeX-add-style-hook' also to document addition of 3rd argument.
+
+2014-09-11 Vincent BelaŻche <vincent.b.1@hotmail.fr>
+
+ * doc/changes.texi: Add information about style hook labelling by dialect.
+
+ * doc/todo.texi (Bugs): Update Bug #1 about style hook clash.
+
+ * style/xspace.el ("xspace"): Add LaTeX-dialect to TeX-add-style-hook call.
+
+ * style/xparse.el ("xparse"): Add LaTeX-dialect to TeX-add-style-hook call.
+
+ * style/virtex.el ("virtex"): Add LaTeX-dialect to TeX-add-style-hook call.
+
+ * style/verbatim.el ("verbatim"): Add LaTeX-dialect to TeX-add-style-hook call.
+
+ * style/varioref.el ("varioref"): Add LaTeX-dialect to TeX-add-style-hook call.
+
+ * style/url.el ("url"): Add LaTeX-dialect to TeX-add-style-hook call.
+
+ * style/units.el ("units"): Add LaTeX-dialect to TeX-add-style-hook call.
+
+ * style/unicode-math.el ("unicode-math"): Add LaTeX-dialect to TeX-add-style-hook call.
+
+ * style/ulem.el ("ulem"): Add LaTeX-dialect to TeX-add-style-hook call.
+
+ * style/tabulary.el ("tabulary"): Add LaTeX-dialect to TeX-add-style-hook call.
+
+ * style/tabularx.el ("tabularx"): Add LaTeX-dialect to TeX-add-style-hook call.
+
+ * style/swedish.el ("swedish"): Add LaTeX-dialect to TeX-add-style-hook call.
+
+ * style/subfigure.el ("subfigure"): Add LaTeX-dialect to TeX-add-style-hook call.
+
+ * style/slovak.el ("slovak"): Add LaTeX-dialect to TeX-add-style-hook call.
+
+ * style/slides.el ("slides"): Add LaTeX-dialect to TeX-add-style-hook call.
+
+ * style/siunitx.el ("siunitx"): Add LaTeX-dialect to TeX-add-style-hook call.
+
+ * style/shortvrb.el ("shortvrb"): Add LaTeX-dialect to TeX-add-style-hook call.
+
+ * style/setspace.el ("setspace"): Add LaTeX-dialect to TeX-add-style-hook call.
+
+ * style/scrreprt.el ("scrreprt"): Add LaTeX-dialect to TeX-add-style-hook call.
+
+ * style/scrpage2.el ("scrpage2"): Add LaTeX-dialect to TeX-add-style-hook call.
+
+ * style/scrlttr2.el ("scrlttr2"): Add LaTeX-dialect to TeX-add-style-hook call.
+
+ * style/scrbook.el ("scrbook"): Add LaTeX-dialect to TeX-add-style-hook call.
+
+ * style/scrbase.el ("scrbase"): Add LaTeX-dialect to TeX-add-style-hook call.
+
+ * style/scrartcl.el ("scrartcl"): Add LaTeX-dialect to TeX-add-style-hook call.
+
+ * style/ruby.el ("ruby"): Add LaTeX-dialect to TeX-add-style-hook call.
+
+ * style/report.el ("report"): Add LaTeX-dialect to TeX-add-style-hook call.
+
+ * style/ragged2e.el ("ragged2e"): Add LaTeX-dialect to TeX-add-style-hook call.
+
+ * style/pstricks.el ("pstricks"): Add LaTeX-dialect to TeX-add-style-hook call.
+
+ * style/pst-slpe.el ("pst-slpe"): Add LaTeX-dialect to TeX-add-style-hook call.
+
+ * style/pst-plot.el ("pst-plot"): Add LaTeX-dialect to TeX-add-style-hook call.
+
+ * style/pst-node.el ("pst-node"): Add LaTeX-dialect to TeX-add-style-hook call.
+
+ * style/pst-grad.el ("pst-grad"): Add LaTeX-dialect to TeX-add-style-hook call.
+
+ * style/psfig.el ("psfig"): Add LaTeX-dialect to TeX-add-style-hook call.
+
+ * style/prosper.el ("prosper"): Add LaTeX-dialect to TeX-add-style-hook call.
+
+ * style/polski.el ("polski"): Add LaTeX-dialect to TeX-add-style-hook call.
+
+ * style/polish.el ("polish"): Add LaTeX-dialect to TeX-add-style-hook call.
+
+ * style/plhb.el ("plhb"): Add LaTeX-dialect to TeX-add-style-hook call.
+
+ * style/plfonts.el ("plfonts"): Add LaTeX-dialect to TeX-add-style-hook call.
+
+ * style/plext.el ("plext"): Add LaTeX-dialect to TeX-add-style-hook call.
+
+ * style/placeins.el ("placeins"): Add LaTeX-dialect to TeX-add-style-hook call.
+
+ * style/pdfsync.el ("pdfsync"): Add LaTeX-dialect to TeX-add-style-hook call.
+
+ * style/paralist.el ("paralist"): Add LaTeX-dialect to TeX-add-style-hook call.
+
+ * style/nomencl.el ("nomencl"): Add LaTeX-dialect to TeX-add-style-hook call.
+
+ * style/nicefrac.el ("nicefrac"): Add LaTeX-dialect to TeX-add-style-hook call.
+
+ * style/ngerman.el ("ngerman"): Add LaTeX-dialect to TeX-add-style-hook call.
+
+ * style/naustrian.el ("naustrian"): Add LaTeX-dialect to TeX-add-style-hook call.
+
+ * style/natbib.el ("natbib"): Add LaTeX-dialect to TeX-add-style-hook call.
+
+ * style/nameref.el ("nameref"): Add LaTeX-dialect to TeX-add-style-hook call.
+
+ * style/multirow.el ("multirow"): Add LaTeX-dialect to TeX-add-style-hook call.
+
+ * style/multind.el ("multind"): Add LaTeX-dialect to TeX-add-style-hook call.
+
+ * style/multido.el ("multido"): Add LaTeX-dialect to TeX-add-style-hook call.
+
+ * style/multicol.el ("multicol"): Add LaTeX-dialect to TeX-add-style-hook call.
+
+ * style/mflogo.el ("mflogo"): Add LaTeX-dialect to TeX-add-style-hook call.
+
+ * style/metalogo.el ("metalogo"): Add LaTeX-dialect to TeX-add-style-hook call.
+
+ * style/memoir.el ("memoir"): Add LaTeX-dialect to TeX-add-style-hook call.
+
+ * style/mdwlist.el ("mdwlist"): Add LaTeX-dialect to TeX-add-style-hook call.
+
+ * style/mathtools.el ("mathtools"): Add LaTeX-dialect to TeX-add-style-hook call.
+
+ * style/makeidx.el ("makeidx"): Add LaTeX-dialect to TeX-add-style-hook call.
+
+ * style/luacode.el ("luacode"): Add LaTeX-dialect to TeX-add-style-hook call.
+
+ * style/ltxdoc.el ("ltxdoc"): Add LaTeX-dialect to TeX-add-style-hook call.
+
+ * style/ltx-base.el ("ltx-base"): Add LaTeX-dialect to TeX-add-style-hook call.
+
+ * style/lscape.el ("lscape"): Add LaTeX-dialect to TeX-add-style-hook call.
+
+ * style/longtable.el ("longtable"): Add LaTeX-dialect to TeX-add-style-hook call.
+
+ * style/listings.el ("listings"): Add LaTeX-dialect to TeX-add-style-hook call.
+
+ * style/lipsum.el ("lipsum"): Add LaTeX-dialect to TeX-add-style-hook call.
+
+ * style/lettrine.el ("lettrine"): Add LaTeX-dialect to TeX-add-style-hook call.
+
+ * style/letter.el ("letter"): Add LaTeX-dialect to TeX-add-style-hook call.
+
+ * style/latexinfo.el ("latexinfo"): Add LaTeX-dialect to TeX-add-style-hook call.
+
+ * style/kpfonts.el ("kpfonts"): Add LaTeX-dialect to TeX-add-style-hook call.
+
+ * style/kantlipsum.el ("kantlipsum"): Add LaTeX-dialect to TeX-add-style-hook call.
+
+ * style/jurabib.el ("jurabib"): Add LaTeX-dialect to TeX-add-style-hook call.
+
+ * style/jura.el ("jura"): Add LaTeX-dialect to TeX-add-style-hook call.
+
+ * style/jsbook.el ("jsbook"): Add LaTeX-dialect to TeX-add-style-hook call.
+
+ * style/jsarticle.el ("jsarticle"): Add LaTeX-dialect to TeX-add-style-hook call.
+
+ * style/jreport.el ("jreport"): Add LaTeX-dialect to TeX-add-style-hook call.
+
+ * style/jbook.el ("jbook"): Add LaTeX-dialect to TeX-add-style-hook call.
+
+ * style/jarticle.el ("jarticle"): Add LaTeX-dialect to TeX-add-style-hook call.
+
+ * style/j-report.el ("j-report"): Add LaTeX-dialect to TeX-add-style-hook call.
+
+ * style/j-book.el ("j-book"): Add LaTeX-dialect to TeX-add-style-hook call.
+
+ * style/j-article.el ("j-article"): Add LaTeX-dialect to TeX-add-style-hook call.
+
+ * style/italian.el ("italian"): Add LaTeX-dialect to TeX-add-style-hook call.
+
+ * style/inputenc.el ("inputenc"): Add LaTeX-dialect to TeX-add-style-hook call.
+
+ * style/index.el ("index"): Add LaTeX-dialect to TeX-add-style-hook call.
+
+ * style/imakeidx.el ("imakeidx"): Add LaTeX-dialect to TeX-add-style-hook call.
+
+ * style/icelandic.el ("icelandic"): Add LaTeX-dialect to TeX-add-style-hook call.
+
+ * style/hyperref.el ("hyperref"): Add LaTeX-dialect to TeX-add-style-hook call.
+
+ * style/harvard.el ("harvard"): Add LaTeX-dialect to TeX-add-style-hook call.
+
+ * style/graphicx.el ("graphicx"): Add LaTeX-dialect to TeX-add-style-hook call.
+
+ * style/graphics.el ("graphics"): Add LaTeX-dialect to TeX-add-style-hook call.
+
+ * style/german.el ("german"): Add LaTeX-dialect to TeX-add-style-hook call.
+
+ * style/frenchb.el ("frenchb"): Add LaTeX-dialect to TeX-add-style-hook call.
+
+ * style/french.el ("french"): Add LaTeX-dialect to TeX-add-style-hook call.
+
+ * style/francais.el ("francais"): Add LaTeX-dialect to TeX-add-style-hook call.
+
+ * style/footmisc.el ("footmisc"): Add LaTeX-dialect to TeX-add-style-hook call.
+
+ * style/fontspec.el ("fontspec"): Add LaTeX-dialect to TeX-add-style-hook call.
+
+ * style/foils.el ("foils"): Add LaTeX-dialect to TeX-add-style-hook call.
+
+ * style/flashcards.el ("flashcards"): Add LaTeX-dialect to TeX-add-style-hook call.
+
+ * style/filecontents.el ("filecontents"): Add LaTeX-dialect to TeX-add-style-hook call.
+
+ * style/fancyvrb.el ("fancyvrb"): Add LaTeX-dialect to TeX-add-style-hook call.
+
+ * style/fancyref.el ("fancyref"): Add LaTeX-dialect to TeX-add-style-hook call.
+
+ * style/fancynum.el ("fancynum"): Add LaTeX-dialect to TeX-add-style-hook call.
+
+ * style/fancyhdr.el ("fancyhdr"): Add LaTeX-dialect to TeX-add-style-hook call.
+
+ * style/exercise.el ("exercise"): Add LaTeX-dialect to TeX-add-style-hook call.
+
+ * style/everysel.el ("everysel"): Add LaTeX-dialect to TeX-add-style-hook call.
+
+ * style/epsf.el ("epsf"): Add LaTeX-dialect to TeX-add-style-hook call.
+
+ * style/epigraph.el ("epigraph"): Add LaTeX-dialect to TeX-add-style-hook call.
+
+ * style/english.el ("english"): Add LaTeX-dialect to TeX-add-style-hook call.
+
+ * style/emp.el ("emp"): Add LaTeX-dialect to TeX-add-style-hook call.
+
+ * style/dutch.el ("dutch"): Add LaTeX-dialect to TeX-add-style-hook call.
+
+ * style/doc.el ("doc"): Add LaTeX-dialect to TeX-add-style-hook call.
+
+ * style/dk.el ("dk"): Add LaTeX-dialect to TeX-add-style-hook call.
+
+ * style/dinbrief.el ("dinbrief"): Add LaTeX-dialect to TeX-add-style-hook call.
+
+ * style/danish.el ("danish"): Add LaTeX-dialect to TeX-add-style-hook call.
+
+ * style/czech.el ("czech"): Add LaTeX-dialect to TeX-add-style-hook call.
+
+ * style/csquotes.el ("csquotes"): Add LaTeX-dialect to TeX-add-style-hook call.
+
+ * style/comment.el ("comment"): Add LaTeX-dialect to TeX-add-style-hook call.
+
+ * style/captcont.el ("captcont"): Add LaTeX-dialect to TeX-add-style-hook call.
+
+ * style/bulgarian.el ("bulgarian"): Add LaTeX-dialect to TeX-add-style-hook call.
+
+ * style/booktabs.el ("booktabs"): Add LaTeX-dialect to TeX-add-style-hook call.
+
+ * style/book.el ("book"): Add LaTeX-dialect to TeX-add-style-hook call.
+
+ * style/bm.el ("bm"): Add LaTeX-dialect to TeX-add-style-hook call.
+
+ * style/bigstrut.el ("bigstrut"): Add LaTeX-dialect to TeX-add-style-hook call.
+
+ * style/bigdelim.el ("bigdelim"): Add LaTeX-dialect to TeX-add-style-hook call.
+
+ * style/biblatex.el ("biblatex"): Add LaTeX-dialect to TeX-add-style-hook call.
+
+ * style/beamer.el ("beamer"): Add LaTeX-dialect to TeX-add-style-hook call.
+
+ * style/babel.el ("babel"): Add LaTeX-dialect to TeX-add-style-hook call.
+
+ * style/austrian.el ("austrian"): Add LaTeX-dialect to TeX-add-style-hook call.
+
+ * style/article.el ("article"): Add LaTeX-dialect to TeX-add-style-hook call.
+
+ * style/array.el ("array"): Add LaTeX-dialect to TeX-add-style-hook call.
+
+ * style/amsthm.el ("amsthm"): Add LaTeX-dialect to TeX-add-style-hook call.
+
+ * style/amstext.el ("amstext"): Add LaTeX-dialect to TeX-add-style-hook call.
+
+ * style/amstex.el ("amstex"): Add LaTeX-dialect to TeX-add-style-hook call.
+
+ * style/amssymb.el ("amssymb"): Add LaTeX-dialect to TeX-add-style-hook call.
+
+ * style/amsopn.el ("amsopn"): Add LaTeX-dialect to
+ TeX-add-style-hook call. Update header with correct filename.
+
+ * style/amsmath.el ("amsmath"): Add LaTeX-dialect to TeX-add-style-hook call.
+
+ * style/amsbsy.el ("amsbsy"): Add LaTeX-dialect to TeX-add-style-hook call.
+
+ * style/amsbook.el ("amsbook"): Add LaTeX-dialect to TeX-add-style-hook call.
+
+ * style/amsart.el ("amsart"): Add LaTeX-dialect to TeX-add-style-hook call.
+
+ * style/alphanum.el ("alphanum"): Add LaTeX-dialect to TeX-add-style-hook call.
+
+ * style/alltt.el ("alltt"): Add LaTeX-dialect to TeX-add-style-hook call.
+
+ * style/afterpage.el ("afterpage"): Add LaTeX-dialect to TeX-add-style-hook call.
+
+ * style/acronym.el ("acronym"): Add LaTeX-dialect to TeX-add-style-hook call.
+
+ * style/acro.el ("acro"): Add LaTeX-dialect to TeX-add-style-hook call.
+
+ * style/MinionPro.el ("MinionPro"): Add LaTeX-dialect to TeX-add-style-hook call.
+
+ * style/CJKutf8.el ("CJKutf8"): Add LaTeX-dialect to TeX-add-style-hook call.
+
+ * style/CJK.el ("CJK"): Add LaTeX-dialect to TeX-add-style-hook call.
+
+ * bib-cite.el (eval-after-load "bibtex"): Add hook
+ TeX-bibtex-set-BibTeX-dialect to BibTex mode, this will set
+ 'TeX-style-hook-dialect' to :bibtex for BibTeX files so that
+ Mos¨'s problem should be solved.
+
+ * latex.el (LaTeX-common-initialization): set
+ 'TeX-style-hook-dialect' to :latex for LaTeX files, and those in
+ LaTeX derived modes. Add LaTeX-dialect as DIALECT argument to all
+ calls of TeX-add-style-hook.
+
+ * tex.el (TeX-style-hook-list): Update docstring to make clear
+ that style hooks can also be in the form '[TeX-style-hook HOOK-FUN
+ DIALECT-SET]'.
+ (TeX-bibtex-set-BibTeX-dialect): New defun.
+ (TeX-style-hook-dialect-weight-alist): New defconst.
+ (TeX-shdex-eval): New defun.
+ (TeX-shdex-or TeX-shdex-and TeX-shdex-nor TeX-shdex-not)
+ (TeX-shdex-in-p TeX-shdex-listify): New defsubst.
+ (TeX-style-hook-dialect): New defvar, used to have style hooks
+ called only in corresponding context.
+ (TeX-add-style-hook): Add optional argument context for marking
+ hooks that must run only in non default (aka nil) dialect.
+ (TeX-keep-hooks-in-dialect): New defun, used for unloading only
+ those hooks in a dialect list.
+ (TeX-unload-style): Add optional argument context-list for
+ unloading only those hooks marked for contexts in that
+ context-list.
+ (TeX-run-style-hooks): Run style hook only when current style hook
+ context matches context for which hook is marked.
+
+ * tex-info.el (Texinfo-environment-list): Add 'html' and 'float'
+ environments.
+ (TeX-texinfo-mode): set 'TeX-style-hook-dialect' to :texinfo for
+ Texinfo files. Add macro '@caption'.
+
+2014-09-08 Tassilo Horn <tsdh@gnu.org>
+
+ * tex.el (TeX-assoc-string): Remove docstring from defalias since
+ that's not supported with XEmacs.
+
+2014-08-25 Florent Rougon <f.rougon@free.fr> (tiny change)
+
+ * tex-buf.el (TeX-command-expand): Fix possible endless loop in
+ file name expansion.
+
+2014-08-24 Mos¨ Giordano <mose@gnu.org>
+
+ * tests/tex/command-expansion.el: New test file.
+
+2014-08-24 Florent Rougon <f.rougon@free.fr> (tiny change)
+
+ * tex.el (TeX-expand-list): Add the previous position to the
+ lenght of the expanded string to get the current position in the
+ %' expander.
+
+2014-08-18 Vincent BelaŻche <vincent.b.1@hotmail.fr>
+
+ * font-latex.el (font-latex-add-quotes): Code optimization: use
+ '(add-to-list (make-local-variable (quote foo)) some-value)'
+ instead of '(make-local-variable (quote foo)) (add-to-list 'foo
+ some-value)' wherever possible.
+
+ * bib-cite.el (bib-cite-minor-mode)
+ (bib-cite-setup-highlight-mouse-keymap): Code optimization: use
+ '(set (make-local-variable (quote foo)) some-value)' instead of
+ '(make-local-variable (quote foo)) (setq foo some-value)' wherever
+ possible.
+
+ * latex.el (BibTeX-auto-store)
+ (LaTeX-common-initialization): Ditto.
+
+ * tex-info.el (TeX-texinfo-mode): Code optimization: use '(set
+ (make-local-variable (quote foo)) some-value)' instead of
+ '(make-local-variable (quote foo)) (setq foo some-value)' wherever
+ possible. Add in style Texinfo standard macros '@acronym' and
+ '@tie'.
+
+ * tex.el (TeX-assoc-string) new defalias to work-around missing
+ assoc-string in XEmacs.
+ (TeX-unload-style): Code optimization: use 'TeX-assoc-string'
+ instead of 'assoc' to search style in 'TeX-style-hook-list', and
+ use delq on returned value of assoc-string for removing the style
+ --- on the one hand delq will go through the whole list rather
+ than stop after the first match like in original code, but on the
+ other hand comparison are faster because eq instead of equal is
+ used and we are working on assoc cell rather than on key, so less
+ indirection, furthermore delq is C code. Anyway that make the code
+ much smaller and easier to understand.
+ (TeX-file-extensions): Add txi amongst extension of texinfo files,
+ for consistency with info node '(texinfo) Minimum'
+ (TeX-run-style-hooks): Code optimization: use 'TeX-assoc-string'
+ instead of 'assoc' to search style in 'TeX-style-hook-list'.
+ (VirTeX-common-initialization): Code optimization: use '(set
+ (make-local-variable (quote foo)) some-value)' instead of
+ '(make-local-variable (quote foo)) (setq foo some-value)' wherever
+ possible.
+
+2014-08-18 Tassilo Horn <tsdh@gnu.org>
+
+ * font-latex.el (font-latex-set-syntactic-keywords): Allow for a
+ mandatory argument for a verbatim environment.
+
+2014-08-15 Vladimir Lomov <lomov.vl@gmail.com>
+
+ * style/mathtools.el ("mathtools"): Don't use the removed
+ `LaTeX-amsmath-env-aligned' function.
+
+2014-08-14 Mos¨ Giordano <mose@gnu.org>
+
+ * latex.el (LaTeX-insert-label): Remove.
+ (LaTeX-label): Add a new mandatory argument. Do not use
+ `LaTeX-insert-label'. Determine the prefix at the beginning of
+ the function and insert the label only if the prefix is non nil.
+ (LaTeX-section-label, LaTeX-env-figure, LaTeX-env-label): Use the
+ second mandatory argument of `LaTeX-label'.
+
+ * style/amsmath.el: Update copyright years.
+ ("amsmath"): Append the environments to `LaTeX-label-alist'
+ instead of prepeding them. Use the second mandatory argument of
+ the `LaTeX-label' function.
+
+ * style/longtable.el: Update copyright years.
+ ("longtable"): Move addition of "longtable" environment to
+ `LaTeX-label-alist' inside the style hook. Append the environment
+ to the alist instead of prepending it. Use the second mandatory
+ argument of the `LaTeX-label' function.
+
+ * doc/auctex.texi (Sectioning, Environments): Remove references to
+ `LaTeX-insert-label'.
+ (Environments): Document `LaTeX-label-alist'.
+
+ * doc/changes.texi: Remove references to `LaTeX-insert-label'.
+
+2014-08-12 Mos¨ Giordano <mose@gnu.org>
+
+ * latex.el (LaTeX-insert-label): Rename from
+ `LaTeX-auto-insert-label' and mention sections in the doc-string.
+ (LaTeX-label): Update accordingly.
+
+ * doc/auctex.texi (Sectioning): Mention `LaTeX-insert-label'.
+ (Environments): Update `LaTeX-insert-label' name and document use
+ for sectioning commands.
+ (Environments, Completion): Prettify
+ `TeX-complete-expert-commands' documentation by using a table
+ environment.
+
+ * doc/changes.texi: Rename `LaTeX-auto-insert-label' to
+ `LaTeX-insert-label' and mention sections too.
+
+2014-08-11 Mos¨ Giordano <mose@gnu.org>
+
+ * tex-buf.el (TeX-command): Keep the frame and the buffer
+ associate to the error overview if the command to be run is View.
+
+ * latex.el (LaTeX-auto-insert-label): New customizable variable.
+ (LaTeX-label): Use it.
+
+ * doc/auctex.texi (Environments): Document
+ `LaTeX-auto-insert-label'.
+
+ * doc/changes.texi: Mention `LaTeX-auto-insert-label'. Fix a
+ couple of bad-boxes in the PDF output of the manual.
+
+2014-07-25 Tassilo Horn <tsdh@gnu.org>
+
+ * latex.el (LaTeX-largest-level-set): Adapt
+ `outline-heading-alist' according to largest level in order to
+ make `outline-promote' (and others) work correctly.
+
+2014-07-25 Mos¨ Giordano <mose@gnu.org>
+
+ * doc/auctex.texi (Adding Macros): Document `TeX-date-format'.
+
+ * doc/changes.texi: Mention `TeX-date-format'.
+
+ * latex.el (TeX-date-format): New customizable option.
+ Suggested by Uwe Brauer.
+ (TeX-arg-date): Use it.
+
+2014-07-17 Mos¨ Giordano <mose@gnu.org>
+
+ * Makefile.in: Update copyright years.
+ (EXCLUDEDFILES): Rename from GITFILES. Remove also .cvsignore and
+ tests from the release tarball.
+ (release-commit): More precise suggestion to push tag and release
+ commit.
+ (tar-ball): Use EXCLUDEDFILES in place of GITFILES.
+
+2014-07-15 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ * latex.el: Enhance array and tabular(*) environments support.
+ (LaTeX-env-array): Add call to `LaTeX-item-array'.
+ (LaTeX-env-tabular*): Add call to `LaTeX-item-tabular*'.
+ (LaTeX-array-skipping-regexp): New variable.
+ (LaTeX-tabular*-skipping-regexp): Ditto.
+ (LaTeX-item-array): New function. Put line break macro on the
+ last line and insert suitable number of ampersands.
+ (LaTeX-item-tabular*): Ditto.
+ (LaTeX-insert-ampersands): New function. Insert suitable number
+ of ampersands.
+ (LaTeX-array-column-letters): New variable. Column letters for
+ array-like environments.
+ (LaTeX-array-count-columns): New function. Count number of
+ ampersands to be inserted.
+ (LaTeX-common-initialization): Add entries to LaTeX-item-list to
+ use `LaTeX-item-array' and `LaTeX-item-tabular*'.
+
+ * style/amsmath.el: Enhance alignat-like environments support
+ as well as some cleanups.
+ (LaTeX-item-equation-alignat): New function. Insert contents to
+ terminate a line in multi-line equations environment.
+ (LaTeX-amsmath-env-alignat): Use it. Add doc string.
+ (LaTeX-amsmath-env-alignedat): Ditto.
+ (LaTeX-amsmath-env-aligned): Removed. Just specifying a prompt
+ string for an optional argument is enough.
+ (LaTeX-item-equation): Take over the job of
+ `LaTeX-item-equations'. Add an optional `suppress' argument:
+ when it is non-nil skip putting line break macro. Add doc string.
+ (LaTeX-item-equations): Removed. Its task is now covered by
+ `LaTeX-item-equation'.
+ (LaTeX-item-equation-alignat): New function. Insert ampersands
+ according to the columns number, as well as calling
+ `LaTeX-item-equation'.
+ (LaTeX-amsmath-alignat-number-of-ampersands): New function.
+ ("amsmath"): Arrange setups of variables to adopt the above
+ changes.
+
+ * style/array.el ("array"): Change `LaTeX-array-column-letters'
+ locally to include addtional letters extended in array.sty.
+
+ * style/plext.el: New style file. Add support for extended
+ format for array-like environments.
+
+ * Makefile.in (STYLESRC): Include style/plext.el.
+
+ * doc/auctex.texi: Add documentation for the above enhancements.
+
+ * doc/changes.texi: Ditto.
+
+2014-07-14 Mos¨ Giordano <mose@gnu.org>
+
+ * tex-buf.el (TeX-next-error): Do not pass `reparse' argument to
+ `next-error' in XEmacs as it is not supported.
+ (TeX-error-overview-frame, TeX-error-overview-buffer-name): Move
+ before their first use in order to prevent a runtime error in
+ XEmacs and GNU Emacs 21. Reported by Ikumi Keita.
+ (TeX-parse-TeX): Manually set `item' to nil when
+ `TeX-error-last-visited' is negative.
+ (TeX-error-description-error, TeX-error-description-warning)
+ (TeX-error-description-tex-said): Set to nil in XEmacs and GNU
+ Emacs 21. Reported by Ikumi Keita.
+
+2014-07-13 Mos¨ Giordano <mose@gnu.org>
+
+ * latex.el (TeX-latex-mode): Add second argument to
+ `local-variable-p', mandatory in XEmacs. Suggested by Ikumi
+ Keita.
+
+ * preview/preview.el (preview-dump-state): Ditto.
+
+ * style/biblatex.el ("biblatex"): Ditto.
+
+ * tex.el (TeX-how-many): Make the function return a number also in
+ XEmacs and Emacs 21. Suggested by Ikumi Keita.
+
+2014-07-12 Mos¨ Giordano <mose@gnu.org>
+
+ * tex-buf.el (TeX-error-description-error): Do not use the
+ `default' display, not supported by GNU Emacs 21 and XEmacs 21.4.
+ (TeX-error-description-warning): Ditto.
+
+2014-07-11 Mos¨ Giordano <mose@gnu.org>
+
+ * tex-buf.el (TeX-error-description-error): Make face definition
+ XEmacs compatible.
+ (TeX-error-description-tex-said): Ditto.
+ (TeX-error-description-help): Ditto.
+
+ * tex.el (nil): Handle the case of a non-available crm.el with a
+ `condition-case', instead of using the third argument of
+ `require', not recognized by XEmacs 21.4.
+ (and): Check whether dbus support is available before requiring
+ dbus.el.
+
+2014-07-02 Mos¨ Giordano <giordano.mose@libero.it>
+
+ * tex.el (TeX-expand-list): Set
+ `TeX-source-correlate-output-page-function' when necessary, in the
+ "%(outpage)" expander.
+ (TeX-source-correlate-method): Add an alist as a possible value
+ and change the default.
+ (TeX-source-correlate-method-active): Convert to a function.
+ (TeX-source-correlate-expand-options): Use the
+ `TeX-source-correlate-method-active' function.
+ (TeX-source-correlate-mode): Remove setting of the
+ `TeX-source-correlate-output-page-function' variable and of the
+ now deleted `TeX-source-correlate-method-active' variable.
+ (TeX-source-specials-view-expand-options): Use the
+ `TeX-source-correlate-method-active' function.
+ (TeX-mode-specific-command-menu-entries): Hide "Previous Error"
+ and "Error Overview" entries when not available.
+
+ * context.el: Update copyright years.
+ (ConTeXt-expand-options): Use the
+ `TeX-source-correlate-method-active' function.
+
+ * doc/auctex.texi (I/O Correlation): Update documentation of
+ `TeX-source-correlate-method'.
+
+ * doc/changes.texi: Mention change to the default value of
+ `TeX-source-correlate-method'.
+
+2014-06-29 Mos¨ Giordano <giordano.mose@libero.it>
+
+ * doc/todo.texi (Mid-term Goals): Remove "More flexible option and
+ command handling" item: we now have `TeX-command-extra-options'.
+ (Wishlist): Remove "Poor man's Source Specials": AUCTeX supports
+ source specials and SyncTeX.
+ (Wishlist): Remove "multiple completion for \bibliography" item:
+ "\bibliography" does complete multiple arguments.
+
+2014-06-28 Mos¨ Giordano <giordano.mose@libero.it>
+
+ * tex-buf.el (TeX-command): Kill the frame and buffer associated
+ to the error overview before running commands.
+ (TeX-TeX-sentinel): Open error overview if
+ `TeX-error-overview-open-after-TeX-run' is non-nil and there are
+ errors or warnings to show.
+ (TeX-LaTeX-sentinel): Ditto.
+ (TeX-find-display-help): Set `runbuf' to `TeX-active-buffer' since
+ this function may be called also from the error overview buffer.
+ (TeX-error-description-faces): Change group to more appropriate
+ `TeX-output'.
+ (TeX-error-overview-active-buffer): New variable.
+ (TeX-error-overview-orig-frame): Ditto.
+ (TeX-error-overview-orig-window): Ditto.
+ (TeX-error-overview-frame): Ditto.
+ (TeX-error-overview-setup): New customizable variable.
+ (TeX-error-overview-setup): New function.
+ (TeX-error-overview-goto-source): Ditto.
+ (TeX-error-overview-make-entries): Ditto.
+ (TeX-error-overview-next-error): Ditto.
+ (TeX-error-overview-previous-error): Ditto.
+ (TeX-error-overview-quit): Ditto.
+ (TeX-error-overview-mode-map): New variable.
+ (TeX-error-overview-list-entries): Ditto.
+ (TeX-error-overview-mode): New major mode.
+ (TeX-error-overview-buffer-name): New constant.
+ (TeX-error-overview-frame-parameters): New customizable variable.
+ (TeX-error-overview-open-after-TeX-run): Ditto.
+ (TeX-error-overview): New function.
+ (TeX-find-display-help): Expand the name of the file to be visited
+ starting from the directory of the master file.
+ (TeX-error-overview-make-entries): Add optional `master-dir'
+ argument, to shorten file names when they are relative.
+ (TeX-error-overview): Pass `TeX-master-directory' as argument to
+ `TeX-error-overview-make-entries'.
+
+ * tex.el (TeX-error-overview): Autoload `TeX-error-overview'.
+ (TeX-mode-specific-command-menu-entries): Add an entry for the
+ error overview.
+
+ * doc/auctex.texi (Debugging): Document error overview.
+
+ * doc/changes.texi: Mention error overview. Add local variables
+ to the end of the file.
+
+ * doc/todo.texi: Add local variables to the end of the file.
+ (Wishlist): Update entry about error reporting.
+
+2014-06-21 Mos¨ Giordano <giordano.mose@libero.it>
+
+ * tex-buf.el (TeX-parse-TeX): Use `TeX-find-display-help' in place
+ of `TeX-error-list-find-display-help'.
+ (TeX-error-list-find-display-help): Removed, replaced by more
+ general `TeX-find-display-help'.
+ (TeX-find-display-help): New function.
+ (TeX-error): Append nils to the `TeX-error-list' entry to make
+ each entry of the same lenght for both errors and warnings.
+ Append also `TeX-error-point'. This fixes a bug occurring when
+ `TeX-display-help' is set to `expert'. Use
+ `TeX-find-display-help' to display the help.
+ (TeX-warning): Append `TeX-error-point' to the `TeX-error-list'
+ entry to fix the above mentioned bug. Use `TeX-find-display-help'
+ to display the help.
+
+2014-06-04 Mos¨ Giordano <giordano.mose@libero.it>
+
+ * tex-buf.el (TeX-parse-TeX): Use
+ `TeX-error-list-find-display-help'.
+ (TeX-error-list-find-display-help): New function.
+ (TeX-warning): Use `bad-box' when there is a bad box.
+ (TeX-warning--find-display-help): Cater for bad boxes.
+ (TeX-help-error): Ditto.
+
+2014-06-02 Mos¨ Giordano <giordano.mose@libero.it>
+
+ * tex-buf.el (TeX-error--find-display-help): Use new fourth
+ argument of `TeX-help-error'.
+ (TeX-warning): Rename mandatory argument to `warning'. Do not add
+ leading "** " to warning string.
+ (TeX-warning--find-display-help): Use new fourth argument of
+ `TeX-help-error'.
+ (TeX-error-description-faces): New group.
+ (TeX-error-description-error): New face.
+ (TeX-error-description-warning): Ditto.
+ (TeX-error-description-tex-said): Ditto.
+ (TeX-error-description-help): Ditto.
+ (TeX-help-error): Add new `type' argument. Color help messages
+ using the new faces.
+ (TeX-warning): Preserve point when searching backward. In some
+ cases this prevents infinite loops in `TeX-parse-all-errors' and
+ fixes wrong detection of context string.
+
+2014-05-27 Mos¨ Giordano <giordano.mose@libero.it>
+
+ * tex.el (TeX-mode-specific-command-menu-entries): Add
+ `TeX-previous-error'.
+
+ * tex-buf.el (TeX-error-list): Fix typo.
+ (TeX-parse-all-errors): Ditto.
+
+2014-05-23 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ Backport from ELPA repository.
+ * tex-site.el (TeX-modes-set): Use advice-add if available.
+ * font-latex.el (font-latex-make-sectioning-faces): Don't rely on
+ dynamic scoping for `num'.
+ (font-latex-make-built-in-keywords): Don't use `eval' needlessly.
+ (font-latex-doctex-syntactic-keywords): Declare before first use.
+ (font-latex-match-command-with-arguments):
+ Stay away from `add-to-list' on let-bound variables.
+ (font-latex-match-command-in-braces): Remove unused var `end'.
+
+2014-05-20 Mos¨ Giordano <giordano.mose@libero.it>
+
+ * tex-buf.el: Update copyright years.
+ (TeX-error-last-visited): New buffer-local variable.
+ (TeX-get-parse-function): New function.
+ (TeX-next-error): Add `apt' argument and make all arguments
+ optional. Use `TeX-get-parse-function'.
+ (TeX-previous-error): Use `TeX-get-parse-function'. Use
+ `TeX-parse-TeX' to move between errors when possible.
+ (TeX-TeX-sentinel): Parse the output log when
+ `TeX-parse-all-errors' is non-nil.
+ (TeX-LaTeX-sentinel): Ditto.
+ (TeX-parse-reset): Add an optional `reparse' argument and reparse
+ the output log when it is non-nil. Reset also `TeX-error-list'
+ and `TeX-error-last-visited'.
+ (TeX-parse-command): Add `arg' argument.
+ (TeX-parse-TeX): Add `arg' argument. When `TeX-parse-all-errors'
+ is non-nil, use `TeX-error-list' to move to the error point.
+ (TeX-error-list): New buffer-local variable.
+ (TeX-parse-all-errors): New customizable variable.
+ (TeX-parse-all-errors): New function.
+ (TeX-parse-error): Add an optional `store' argument. Make the
+ function return non-nil when an error or a warning is found.
+ (TeX-error): Add an optional `store' argument: when it is non-nil
+ store the relevant information about the error in
+ `TeX-error-list'. Use `TeX-error--find-display-help'.
+ (TeX-error--find-display-help): New function.
+ (TeX-warning): Add an optional `store' argument: when it is
+ non-nil store the relevant information about the warning in
+ `TeX-error-list'. Use `TeX-warning--find-display-help'.
+ (TeX-warning--find-display-help): New function.
+ (TeX-output-mode-map): Bind `p' to the now working
+ `TeX-previous-error'.
+
+ * doc/auctex.texi (Debugging): Document `TeX-previous-error' and
+ `TeX-parse-all-errors'. Update `TeX-next-error'.
+
+ * doc/changes.texi: Update copyright years. Mention
+ `TeX-next-error' and `TeX-previous-error' changes and the new
+ `TeX-parse-all-errors'.
+
+ * doc/todo.texi: Update copyright years.
+ (Wishlist): Update a couple of items related to error parsing.
+
+2014-05-17 Mos¨ Giordano <giordano.mose@libero.it>
+
+ * font-latex.el: Update copyright years.
+ (font-latex-update-sectioning-faces): Make sure
+ `height-scale' is a floating point number.
+ (font-latex-make-sectioning-faces): Ditto.
+
+2014-05-10 Mos¨ Giordano <giordano.mose@libero.it>
+
+ * style/siunitx.el: Update copyright years and specify last
+ `siunitx' version supported. Hard wrap lines longer than 80
+ columns.
+ (LaTeX-siunitx-regexp): Move the escape character out of the group
+ matching the unit name.
+ (LaTeX-arg-siunitx-unit): Add `prefix' argument. Replace the
+ space with `TeX-esc' as the completion separator.
+ (LaTeX-arg-define-siunitx-unit): Define a default prompt; set
+ `initial-input' to nil; use `TeX-esc' as prefix to the given
+ input.
+ ("siunitx"): Remove the escape character from the unit names.
+
+2014-05-02 Jobst Hoffmann <J.Hoffmann@fh-aachen.de> (tiny change)
+
+ * style/listings.el ("listings"): Fix typo.
+
+2014-05-01 Mos¨ Giordano <giordano.mose@libero.it>
+
+ * font-latex.el (font-latex-set-syntactic-keywords): Fix
+ fontification of the optional argument to a verbatim-like
+ environment.
+
+2014-04-16 Tassilo Horn <tsdh@gnu.org>
+
+ * tex-buf.el (TeX-parse-error): Add another exception.
+
+2014-04-06 Tassilo Horn <tsdh@gnu.org>
+
+ * tex-info.el (TeX-texinfo-mode): Use `texinfo-current-defun-name'
+ in `C-x 4 a'.
+
+2014-04-04 Mos¨ Giordano <giordano.mose@libero.it>
+
+ * latex.el (LaTeX-add-environments): Move advising of
+ `LaTeX-add-environments' after definition of
+ `LaTeX-environment-menu' and `LaTeX-environment-modify-menu'
+ variables to fix assignment to free variable warnings.
+
+ * tex-style.el: Update coyright years.
+ (LaTeX-biblatex-use-Biber): New variable. Mark as
+ safe-local-variable.
+
+ * latex.el (TeX-latex-mode): Add setting of `LaTeX-using-Biber' to
+ `TeX-update-style-hook'.
+
+ * style/biblatex.el ("biblatex"): Use `LaTeX-biblatex-use-Biber'
+ value to set `LaTeX-using-Biber' when it is set locally.
+
+ * tex-bar.el: Update copyright years.
+ (LaTeX-install-toolbar): Append toolbar refresh to
+ `TeX-update-style-hook' instead of prepending it.
+
+ * doc/auctex.texi: Update copyright years.
+ (Selecting a Command): Document `LaTeX-biblatex-use-Biber'.
+
+ * doc/changes.texi: Mention `LaTeX-biblatex-use-Biber' change.
+
+2014-04-02 Mos¨ Giordano <giordano.mose@libero.it>
+
+ * style/biblatex.el: Update copyright years and specify last
+ `biblatex' version supported.
+ (LaTeX-biblatex-executebibliographyoptions-options): Update.
+ (LaTeX-biblatex-language-list): Ditto.
+ (LaTeX-arg-biblatex-cites): Fix condition on `items' variable to
+ adapt to the `TeX-completing-read-multiple' return value change.
+
+2014-03-17 Nicolas Richard <theonewiththeevillook@yahoo.fr>
+
+ * style/exercise.el: New file.
+
+2014-03-18 Tassilo Horn <tsdh@gnu.org>
+
+ * doc/auctex.texi: Mention that `TeX-PDF-mode' is enabled by
+ default.
+
+ * tex.el (TeX-PDF-mode): Enable TeX PDF mode by default.
+
+ * tex-buf.el (TeX-command-master): Ask for TeX-master if it cannot
+ be determined otherwise.
+
+2014-03-15 Mos¨ Giordano <giordano.mose@libero.it>
+
+ * tex.el (TeX-view-command-raw): Throw an error when `spec' is
+ nil, otherwise when the function returns nil `TeX-command-expand'
+ enters an infinite loop.
+
+ * style/paralist.el: Update copyright years.
+ ("paralist"): Use `LaTeX-provided-package-options-member' to
+ conditionally define environments.
+
+2014-03-12 Tassilo Horn <tsdh@gnu.org>
+
+ * multi-prompt.el (multi-prompt): Return nil on empty input.
+
+ * tex.el (TeX-completing-read-multiple): Define it so that empty
+ input results in nil across different emacs versions (<= 24.3
+ vs. later versions).
+
+ * style/biblatex.el ("biblatex"): Use
+ `TeX-completing-read-multiple' instead of
+ `completing-read-multiple'.
+ (LaTeX-arg-biblatex-cites): Use `TeX-completing-read-multiple' and
+ adapt handling of return value.
+
+ * style/pstricks.el (LaTeX-package-parameters): Adapt to
+ `TeX-completing-read-multiple' change.
+
+2014-03-11 Tassilo Horn <tsdh@gnu.org>
+
+ * latex.el (LaTeX-arg-usepackage-read-packages-with-options): Fix
+ bug that caused AUCTeX to query for packages infinitely.
+
+ * context.el (ConTeXt-add-environments): Advice instead of
+ renaming and redefining generated function.
+
+ * latex.el (LaTeX-close-environment): Remove non-interactive
+ `next-line' usage compile warning.
+ (LaTeX-add-bibliographies): Advice instead of renaming and
+ redefining generated function.
+ (LaTeX-add-environments): Ditto.
+
+2014-03-10 Tassilo Horn <tsdh@gnu.org>
+
+ * latex.el (LaTeX-fill-break-at-separators): Default to opening
+ and closing math switches.
+
+2014-03-06 Mos¨ Giordano <giordano.mose@libero.it>
+
+ * doc/auctex.texi (Processor Options): Add missing pair of braces.
+
+2014-02-22 Mos¨ Giordano <giordano.mose@libero.it>
+
+ * latex.el (LaTeX-environment): Do not set
+ `LaTeX-default-environment' to `environment' if the latter is
+ equal to the current default environment.
+
+2014-02-21 Mos¨ Giordano <giordano.mose@libero.it>
+
+ * latex.el (LaTeX-arg-usepackage-read-packages-with-options): New
+ function. Now options are requested only if at least one package
+ has been provided.
+ (LaTeX-arg-usepackage-insert): New function.
+ (LaTeX-arg-usepackage): Use
+ `LaTeX-arg-usepackage-read-packages-with-options' and
+ `LaTeX-arg-usepackage-insert'.
+ (LaTeX-insert-usepackages): New function.
+ (LaTeX-env-document): Use it.
+
+ * doc/auctex.texi (Environments): Document new behavior of
+ `LaTeX-env-document'.
+
+ * doc/changes.texi: Mention it.
+
+2014-02-20 Mos¨ Giordano <giordano.mose@libero.it>
+
+ * tex.el (TeX-command-extra-options): New customizable variable.
+ (TeX-expand-list): New `%(extraopts)' expander.
+ (TeX-command-list): Use `%(extraopts)'.
+
+ * doc/auctex.texi (Processor Options): Document
+ `TeX-command-extra-options'.
+
+ * doc/changes.texi: Document it.
+
+2014-02-10 Tassilo Horn <tsdh@gnu.org>
+
+ * style/english.el: New style for english documents so that
+ `TeX-language-en-hook' gets run.
+
+ * Makefile.in (STYLESRC): Activate it.
+
+ * doc/auctex.texi (languages): Document it.
+
+2014-02-04 Tassilo Horn <tsdh@gnu.org>
+
+ * tex.el (TeX-auto-add-type): Convert to macro.
+
+ * lpath.el: Don't silence byte-compiler.
+
+ * latex.el (LaTeX-auto-style, LaTeX-auto-arguments)
+ (LaTeX-auto-optional, LaTeX-auto-env-args): Defvar explicitly
+ before use.
+
+2014-01-29 Tassilo Horn <tsdh@gnu.org>
+
+ * tex-buf.el (TeX-command-query): Use default parameter of
+ `completing-read'.
+
+ * tex.el (TeX-insert-macro): Use default parameter of
+ `completing-read'.
+
+ * latex.el (LaTeX-environment, TeX-arg-document): Use default
+ parameter of `completing-read'.
+
+2014-01-22 Tassilo Horn <tsdh@gnu.org>
+
+ * style/shortvrb.el (LaTeX-shortvrb-chars): Move from
+ tex-style.el. Set default value to nil because just loading
+ shortvrb does not make | a shortvrb char. One needs to define it
+ using \MakeShortVrb{\|}. Extend the docstring so that it tells
+ that one should usually set this variable only buffer-locally.
+ (LaTeX-shortvrb-chars): Declare it as safe local variable.
+
+ * font-latex.el (font-latex-add-to-syntax-alist): Call
+ `font-latex-setup' to make syntactic font-lock changes effective.
+
+2014-01-21 Berend de Boer <berend@pobox.com>
+
+ * context.el: distinguish between numbered and unnumbered sections.
+
+2014-01-15 Mos¨ Giordano <giordano.mose@libero.it>
+
+ * style/babel.el: Update copyright years and specify last `babel'
+ version supported.
+ (LaTeX-babel-language-list): Expand language list to all languages
+ mentioned in the last version of the manual.
+ (LaTeX-babel-active-languages): Update in order to parse the
+ `main' option and ignore the modifiers.
+ (LaTeX-babel-package-options): Turn the variable into a function
+ because now requires `TeX-read-key-val'.
+
+2014-01-11 Mos¨ Giordano <giordano.mose@libero.it>
+
+ * latex.el (LaTeX-current-environment): Make search for `\begin'
+ and `\end' case sensitive.
+ (docTeX-in-macrocode-p): Ditto.
+ (LaTeX-indent-calculate): Ditto.
+ (LaTeX-find-matching-end): Ditto.
+ (LaTeX-find-matching-begin): Ditto.
+
+2014-01-06 Vincent BelaŻche <vincentb1@users.sourceforge.net>
+
+ * tex-info.el (Texinfo-reftex-hook): Replace use of
+ reftex-tables-dirty by that of reftex-default-label-alist-entries
+ to trigger call to reftex-compile-variables in a standard way.
+ The problem was that generating a TOC for a Texinfo file and then
+ for a LaTeX file was not working for the LaTeX file because the
+ Texinfo file was using LaTeX label style and as such
+ reftex-ensure-compiled-variables was not calling
+ reftex-compile-variables, which caused wrong
+ reftex-everything-regexp for sections.
+
+2014-01-06 Mos¨ Giordano <giordano.mose@libero.it>
+
+ * latex.el (LaTeX-math-insert): Use `TeX-electric-math' for
+ consistency with `TeX-insert-dollar'.
+ (LaTeX-math-cal): Ditto.
+
+2013-12-24 Mos¨ Giordano <giordano.mose@libero.it>
+
+ * tex-style.el (LaTeX-fontspec-arg-font-search): New customizable
+ variable.
+ (LaTeX-fontspec-font-list-default): Ditto.
+
+ * style/fontspec.el (LaTeX-fontspec-arg-font): New function.
+ ("fontspec"): Use it.
+
+ * doc/changes.texi: Mention `LaTeX-fontspec-arg-font-search' and
+ `LaTeX-fontspec-font-list-default'.
+
+2013-12-20 Mos¨ Giordano <giordano.mose@libero.it>
+
+ * style/imakeidx.el ("imakeidx"): Move addition of options to
+ `LaTeX-imakeidx-indexsetup-options' inside the hook.
+
+ * Makefile.in (STYLESRC): Activate new styles.
+
+ * style/fontspec.el: New style.
+
+ * style/luacode.el: Ditto.
+
+ * style/metalogo.el: Ditto.
+
+ * style/unicode-math.el: Ditto.
+
+2013-12-18 Tassilo Horn <tsdh@gnu.org>
+
+ * tex-buf.el (TeX-parse-error): Don't confuse ) in package
+ messages with EOF.
+
+2013-12-01 Tassilo Horn <tsdh@gnu.org>
+
+ * latex.el (LaTeX-common-initialization): Move disabling of
+ `electric-pair-mode' from `VirTeX-common-initialization'. Disable
+ it only if `LaTeX-electric-left-right-brace' is non-nil.
+
+ * tex.el (VirTeX-common-initialization): See above.
+
+2013-11-29 Tassilo Horn <tsdh@gnu.org>
+
+ * tex.el (VirTeX-common-initialization): Disable
+ `electric-pair-mode' (a global minor mode) in auctex buffers
+ because it interferes with auctex's pairing feature.
+
+2013-11-23 Mos¨ Giordano <giordano.mose@libero.it>
+
+ * latex.el (LaTeX-common-initialization):
+
+ * tex.el (VirTeX-common-initialization): Move
+ `LaTeX-narrow-to-environment' and `TeX-narrow-to-group' bindings
+ to the AUCTeX maps because `narrow-map' is not defined in GNU
+ Emacs < 22.2 and XEmacs. Reported by Giacomo Boffi.
+
+2013-11-13 Mos¨ Giordano <giordano.mose@libero.it>
+
+ * style/biblatex.el ("biblatex"): Declare expert macros and
+ environments.
+
+2013-11-11 Tassilo Horn <tsdh@gnu.org>
+
+ * tex-buf.el (TeX-next-error, TeX-previous-error): Call
+ `next-error' also if last TeX command was a compile command (e.g.,
+ Check, ChkTeX).
+ (TeX-run-compile): Save compilation buffer in
+ `TeX-command-buffer'.
+
+2013-11-10 Ralf Angeli <angeli@caeruleus.net>
+
+ * bib-cite.el (bib-highlight-mouse): Change regexp to cope with
+ multiple optional arguments of a macro.
+
+2013-11-09 Tassilo Horn <tsdh@gnu.org>
+
+ * tex.el (TeX-complete-make-expert-command-functions): Change
+ signature of declare-expert functions.
+
+ * doc/auctex.texi: Document it.
+
+2013-11-08 Tassilo Horn <tsdh@gnu.org>
+
+ * tex.el (TeX-complete-expert-commands): New defcustom.
+ (TeX-complete-make-expert-command-functions): New macro.
+ (TeX-insert-macro): Restrict completion depending on
+ `TeX-complete-expert-commands'.
+ (VirTeX-common-initialization): Ditto.
+
+ * latex.el (LaTeX-environment, LaTeX-common-initialization):
+ Restrict completion depending on `TeX-complete-expert-commands'.
+
+ * tex-info.el (TeX-texinfo-mode): Restrict completion depending on
+ `TeX-complete-expert-commands'.
+
+ * doc/auctex.texi: Document normal vs. expert commands for users
+ and style file authors.
+
+ * doc/changes.texi: Mention normal vs. expert commands.
+
+ * latex.el (LaTeX-common-initialization): Fix void-function
+ LaTeX-symbol-list error.
+
+2013-11-05 Mos¨ Giordano <giordano.mose@libero.it>
+
+ * doc/auctex.texi (Folding): Document `TeX-fold-auto' and
+ `TeX-fold-unfold-around-mark'.
+
+ * latex.el (TeX-arg-bibliography): Run style files associated to
+ the bibliography database files.
+
+ * style/biblatex.el ("biblatex"): Do not quote at all
+ `TeX-arg-key-val' arguments.
+ (LaTeX-arg-addbibresource): Run style file associated to the
+ bibliography database file.
+
+2013-11-03 Mos¨ Giordano <giordano.mose@libero.it>
+
+ * style/biblatex.el ("biblatex"): Quote `TeX-arg-key-val'
+ arguments with `quote' special form istead of apostrophe.
+
+2013-11-02 Mos¨ Giordano <giordano.mose@libero.it>
+
+ * latex.el (LaTeX-narrow-to-environment): New function, disabled
+ by default.
+ (LaTeX-common-initialization): Add key binding for
+ `LaTeX-narrow-to-environment'.
+
+ * tex.el (VirTeX-common-initialization): Add key binding for
+ `TeX-narrow-to-group'.
+ (TeX-narrow-to-group): New function, disabled by default.
+
+ * doc/auctex.texi (Narrowing): Document narrowing commands.
+
+ * doc/changes.texi: Mention narrowing commands.
+
+2013-10-19 Mos¨ Giordano <giordano.mose@libero.it>
+
+ * latex.el (TeX-arg-file-name): New function.
+ (TeX-arg-file-name-sans-extension): Ditto.
+ (TeX-arg-version): Ditto.
+ (LaTeX-common-initialization): Add completion for
+ `ProvidesPackage', `ProvidesClass', and `ProvidesFile'.
+
+ * doc/auctex.texi (Adding Macros): Document `TeX-arg-version',
+ `TeX-arg-file-name', and `TeX-arg-file-name-sans-extension'.
+
+2013-10-14 Tassilo Horn <tsdh@gnu.org>
+
+ * doc/changes.texi: Mention the enhanced tabular indentation.
+
+ * style/longtable.el ("longtable"): Use `LaTeX-indent-tabular'
+ also for longtable environment.
+
+ * style/tabularx.el ("tabularx"): Use `LaTeX-indent-tabular' also
+ for tabularx environment.
+
+ * style/tabulary.el ("tabulary"): Use `LaTeX-indent-tabular' also
+ for tabulary environment.
+
+ * latex.el (LaTeX-indent-environment-list): Use
+ `LaTeX-indent-tabular' also for array and eqnarray environments.
+
+2013-10-14 Oleh Krehel <ohwoeowho@gmail.com>
+
+ * latex.el: `LaTeX-indent-tabular' now indents tabular-like
+ environments.
+ (LaTeX--tabular-like-end): new variable.
+ (LaTeX-indent-environment-list): added `LaTeX-indent-tabular' as
+ indenter for "tabular" and "align", added a setter that recomputes
+ `LaTeX--tabular-like-end'
+ (LaTeX-env-beginning-pos-col): new function.
+ (LaTeX-hanging-ampersand-position): new function.
+ (LaTeX-indent-tabular): new function.
+
+ * tests/latex/latex-test.el : added an ERT test for
+ `LaTeX-indent-tabular'
+ (LaTeX-indent-tabular-test/in): input filename variable
+ (LaTeX-indent-tabular-test/out): output filename variable
+
+ * tests/latex/tabular-in.tex: input to latex-test.el
+
+ * tests/latex/tabular-out.tex: input to latex-test.el
+
+ * tex.el (TeX-how-many): added for compatibility with XEmacs.
+
+2013-10-11 Mos¨ Giordano <giordano.mose@libero.it>
+
+ * doc/auctex.texi (Quotes): Fix typo.
+
+ * doc/changes.texi: Ditto.
+
+2013-10-10 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ * doc/changes.texi: Document enhanced paired braces feature.
+
+ * doc/auctex.texi: Ditto.
+
+2013-10-06 Mos¨ Giordano <giordano.mose@libero.it>
+
+ * tex.el (TeX-insert-macro-default-style): Add new possible value
+ `show-all-optional-args' and update doc-string accordingly.
+ (TeX-parse-arguments): Use it.
+
+ * doc/auctex.texi (Completion): Document `show-all-optional-args'.
+
+ * doc/changes.texi: Mention `show-all-optional-args'.
+
+ * tex.el (TeX-insert-braces-alist): New customizable variable.
+ (TeX-insert-braces): Mention it in doc-string.
+ (TeX-parse-macro): Use `TeX-insert-braces-alist'.
+
+ * style/booktabs.el: Update copyright years.
+ (LaTeX-booktabs-arg-paren): Let-bind `TeX-arg-opening-brace' and
+ `TeX-arg-closing-brace' instead of `<' and `>'.
+ ("booktabs"): Add `toprule', `midrule', and `bottomrule' macros to
+ `TeX-insert-braces-alist'.
+ ("booktabs"): Add a dummy `ignore' in `cmidrule' macro in order to
+ reset `last-optional-rejected' to nil.
+
+ * doc/auctex.texi (Completion): Document
+ `TeX-insert-braces-alist'.
+
+ * doc/changes.texi: Mention `TeX-insert-braces-alist'.
+
+2013-09-27 Mos¨ Giordano <giordano.mose@libero.it>
+
+ * latex.el (TeX-arg-insert-braces): : Move
+ `indent-according-to-mode' after `save-excursion' because
+ `LaTeX-newline' (used in `save-excursion') deletes trailing
+ whitespaces.
+
+ * tex-buf.el (TeX-LaTeX-sentinel): Add support for hyperref "Rerun
+ to get outlines right" messages.
+
+2013-09-26 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ * latex.el: Enhance brace pairing feature.
+ (TeX-arg-insert-braces): Extend to be used with \bigl and its
+ friends.
+ (TeX-arg-insert-right-brace-maybe): New function.
+ (LaTeX-insert-left-brace): New function.
+ (LaTeX-insert-corresponding-right-macro-and-brace): New function.
+ (LaTeX-find-preceeding-left-macro-name): New function.
+ (LaTeX-electric-left-right-brace): New customization option.
+ (LaTeX-left-right-macros-association): New variable.
+
+ * style/amsmath.el ("amsmath"): Make use of the above change.
+ \lvert and \lVert are paired with \rvert and \rVert, respectively.
+
+2013-09-19 Mos¨ Giordano <giordano.mose@libero.it>
+
+ * style/siunitx.el ("siunitx"): Fix `radian' unit name.
+
+2013-09-17 Fabrice Ben Hamouda <fabrice_102@yahoo.fr> (tiny change)
+
+ * tex-buf.el (TeX-next-error, TeX-active-buffer): Fix a problem
+ with `TeX-next-error' in multi-file documents.
+
+2013-09-16 Tassilo Horn <tsdh@gnu.org>
+
+ * tex-info.el (TeX-texinfo-mode): Set
+ `TeX-sentinel-default-function' to `TeX-TeX-sentinel'.
+
+2013-09-09 Tassilo Horn <tsdh@gnu.org>
+
+ * tex-buf.el (TeX-check-files): Handle buffers that haven't been
+ saved yet.
+
+2013-09-02 Tassilo Horn <tsdh@gnu.org>
+
+ * tex.el (TeX-electric-math): Fix defcustom choices.
+
+ * bib-cite.el (bib-cite-minor-mode): Call `make-local-hook' only
+ on XEmacs.
+
+2013-08-03 Mos¨ Giordano <giordano.mose@libero.it>
+
+ * latex.el (TeX-arg-ref): New function.
+
+ * doc/auctex.texi: Replace occurrences of `TeX-arg-label' with
+ `TeX-arg-ref'.
+ (Adding Macros): Document `TeX-arg-ref'.
+
+ * style/fancyref.el ("fancyref"): Use `TeX-arg-ref' instead of
+ `TeX-arg-label'.
+
+ * style/latexinfo.el ("latexinfo"): Ditto.
+
+ * style/nameref.el ("nameref"): Ditto.
+
+ * style/varioref.el ("varioref"): Ditto.
+
+ * style/subfigure.el ("subfigure"): Use `TeX-arg-ref' instead of
+ `TeX-arg-label' and fix parentheses.
+
+2013-07-31 Tassilo Horn <tsdh@gnu.org>
+
+ * latex.el (LaTeX-math-initialize): Refactor top-level code into
+ function.
+ (LaTeX-math-list): Call `LaTeX-math-initialize' when setting the
+ value in order to update the key bindings.
+ Also shuffle around several definitions in order to get a
+ declaration-before-use order.
+
+2013-07-29 Mos¨ Giordano <giordano.mose@libero.it>
+
+ * doc/changes.texi: Add other changes.
+
+ * doc/auctex.texi (Environments): Fix typo.
+
+2013-07-27 Mos¨ Giordano <giordano.mose@libero.it>
+
+ * latex.el (BibTeX-auto-regexp-list): Remove `TeX-token-char' from
+ the regexp since cite keys can start with non-letter characters,
+ e.g., bibcodes start with year of publication.
+
+2013-07-24 Tassilo Horn <tsdh@gnu.org>
+
+ * latex.el (LaTeX-math-menu-unicode): Enable also on windows
+ systems as it seems to work there, too.
+
+2013-07-23 Mos¨ Giordano <giordano.mose@libero.it>
+
+ * tex.el (TeX-clean-default-intermediate-suffixes): Add `.fls',
+ files created by TeX processors with `-recorder' option, and
+ `-blx.bib', files created by `bibtex' when using the `biblatex'
+ package.
+
+ * doc/changes.texi: Document some changes for next release.
+
+2013-07-22 Mos¨ Giordano <giordano.mose@libero.it>
+
+ * Makefile.in: Update copyright years.
+ (GITFILES): Rename from `CVSFILES', adapt to Git.
+ (COMMITTER): Get user name and email from Git configuration;
+ escape `<', `>' and spaces.
+ (install-el): Update reference to Git in comment.
+ (release-commit): Adapt to Git; make sure committer name and email
+ are encoded with ISO-8859-1 using the `iconv' program.
+ (tar-ball): Adapt to Git.
+ (preview-ball): Ditto.
+
+ * auctex.spec (Provides): Update reference to Git in comment.
+
+ * bib-cite.el: Update AUCTeX repository link in comment.
+
+ * font-latex.el (font-latex-built-in-keyword-classes): Fix
+ fontification of some biblatex macros. Reported by Christian
+ Knĵpfer.
+ (font-latex-built-in-keyword-classes): Revert changes made with
+ commit 7531cca, they were useless.
+
+2013-07-15 Mads Jensen <mje@inducks.org>
+
+ * style/tabulary.el: New style.
+
+ * Makefile.in (STYLESRC): Activate new style tabulary.
+
+2013-07-12 Mos¨ Giordano <giordano.mose@libero.it>
+
+ * doc/auctex.texi (Processor Options): Move
+ `TeX-source-correlate-method' to `I/O Correlation' section.
+
+2013-07-11 Mos¨ Giordano <giordano.mose@libero.it>
+
+ * doc/auctex.texi (Processor Options): Document
+ `TeX-source-correlate-method'.
+
+2013-07-09 Tassilo Horn <tsdh@gnu.org>
+
+ * latex.el (LaTeX-default-tabular-environment): New variable.
+ (LaTeX-env-figure): Use it instead of hard-coding "tabular".
+
+ * style/tabularx.el ("tabularx"): Set
+ `LaTeX-default-tabular-environment' to "tabularx".
+
+2013-06-29 Mos¨ Giordano <giordano.mose@libero.it>
+
+ * bib-cite.el: Replace `save-excursion'+`set-buffer' with
+ `with-current-buffer'.
+
+ * tex-bar.el: Ditto.
+
+ * tex-buf.el: Ditto.
+
+ * tex.el: Replace `save-excursion'+`set-buffer' with
+ `with-current-buffer'. Delete trailing whitespaces.
+
+ * tex-buf.el (TeX-error-file): Fix spelling error.
+ (TeX-error): Ditto.
+
+ * doc/install.texi (Configure): Update for Git.
+
+ * doc/preview-readme.texi (Availability): Ditto.
+
+ * doc/wininstall.texi: Ditto.
+
+2013-06-26 Tassilo Horn <tsdh@gnu.org>
+
+ * doc/preview-problems.texi: Rename "Known problems" section to
+ "Known problems with preview-latex" in rawfile export. Delete
+ sections "Problems with Ghostscript" and "Emacs problems" because
+ those are basically ruled out when using the prerequisites
+ documented in the manual.
+
+ * doc/install.texi: Don't link to ghostscript specific
+ preview-latex problems section because that has been removed.
+
+ * doc/Makefile.in (DISTTEXTS, ../PROBLEMS.preview): Rename
+ PROBLEMS to PROBLEMS.preview since it only deals with
+ preview-latex problems.
+
+ * Makefile.in (DISTTEXTS): Use PROBLEMS.preview instead of
+ PROBLEMS.
+
+2013-06-24 Tassilo Horn <tsdh@gnu.org>
+
+ * doc/Makefile.in (DISTTEXTS): Add ../PROBLEMS.
+
+ * Makefile.in (DISTTEXTS): Add PROBLEMS.
+
+ * tex.el (TeX-evince-dbus-p): Require dbus at compile-time.
+
+2013-06-21 Tassilo Horn <tsdh@gnu.org>
+
+ * tex.el (TeX-evince-dbus-p): Improved DBUS availability check.
+
+2013-06-21 Rĵdiger Sonderfeld <ruediger@c-plusplus.de>
+
+ * tex.el (TeX-doc-backend-alist): Remove unnecessary `info' check.
+
+2013-06-14 Tassilo Horn <tsdh@gnu.org>
+
+ * tex-jp.el: Change to `coding: iso-2022-jp-unix'.
+
+2013-06-12 Tassilo Horn <tsdh@gnu.org>
+
+ * tex-jp.el: Add `coding: iso-2022-7bit-unix' file local variable.
+
+2013-06-11 Tassilo Horn <tsdh@gnu.org>
+
+ * tex-buf.el (TeX-help-error): Let-bind `inhibit-read-only' when
+ updating the *TeX Help* buffer.
+
+2013-06-11 Mos¨ Giordano <giordano.mose@libero.it>
+
+ * latex.el (TeX-after-document-hook): New hook.
+ (TeX-arg-document): Use it.
+ (LaTeX-after-usepackage-hook): New hook.
+ (LaTeX-arg-usepackage): Use it, remove babel specific code.
+
+ * style/babel.el: Update copyright years.
+ (LaTeX-env-babel-lang): New function.
+ ("babel"): Add `LaTeX-env-babel-lang' to
+ `LaTeX-after-usepackage-hook'.
+
+2013-06-08 Mos¨ Giordano <giordano.mose@libero.it>
+
+ * tex.el (TeX-math-close-double-dollar): Remove.
+ (TeX-math-close-single-dollar): Ditto.
+ (TeX-electric-dollar): Ditto.
+ (TeX-electric-math): New customizable variable, supersedes
+ variables above.
+ (TeX-insert-dollar): Adapt to `TeX-electric-math'. See
+ http://thread.gmane.org/gmane.emacs.auctex.devel/3070
+
+ * doc/auctex.texi (Quotes): Document `TeX-electric-math'.
+ (Environments): Document `LaTeX-find-matching-begin' and
+ `LaTeX-find-matching-end'.
+
+2013-06-02 Mos¨ Giordano <giordano.mose@libero.it>
+
+ * tex-buf.el: Shorten copyright year ranges and update with
+ missing years. Delete trailing whitespaces.
+ (TeX-run-compile): Let-bind `default-directory' to
+ `TeX-master-directory'.
+
+2013-05-31 Tassilo Horn <tsdh@gnu.org>
+
+ * autogen.sh: Set LC_ALL=C when looking into ChangeLog for
+ AUCTEXDATE.
+
+2013-05-31 Mos¨ Giordano <giordano.mose@libero.it>
+
+ * latex.el (LaTeX-env-figure): Simplify using `save-excursion'
+ instead of regexp searches. Fill the caption when
+ `auto-fill-mode' is on.
+
+2013-05-30 Mos¨ Giordano <giordano.mose@libero.it>
+
+ * tex.el (TeX-expand-list): Add new expander "%a", it returns the
+ quoted absolute path of the file visiting current buffer.
+ (TeX-view-program-list-builtin): Use "%a" expander for forward PDF
+ search.
+
+2013-05-28 Tassilo Horn <tsdh@gnu.org>
+
+ * tex.el (TeX-source-correlate-sync-source): Fix docstring.
+
+2013-05-23 Mos¨ Giordano <giordano.mose@libero.it>
+
+ * font-latex.el: Update copyright years, there have been
+ non-trivial changes in 2010, and 2011.
+ (font-latex-built-in-keyword-classes): Fontify Biblatex multicites
+ macros up to three mandatory arguments.
+
+ * style/biblatex.el (LaTeX-biblatex-entrytype): New variable.
+ (LaTeX-biblatex-executebibliographyoptions-options): New variable.
+ (LaTeX-biblatex-language-list): New variable.
+ (LaTeX-arg-biblatex-cites): New function.
+ ("biblatex"): Always set `LaTeX-using-Biber'. Add citation
+ macros.
+ (LaTeX-biblatex-package-options-list): Move preamble options to
+ `LaTeX-biblatex-executebibliographyoptions-options'.
+
+2013-05-22 Mos¨ Giordano <giordano.mose@libero.it>
+
+ * latex.el: Replace `delete-backward-char' with `delete-char'.
+
+ * tex.el: Ditto.
+
+ * tex-buf.el: Replace `goto-line' with `goto-char' and
+ `forward-line'.
+
+2013-05-19 Mos¨ Giordano <giordano.mose@libero.it>
+
+ * doc/.gitignore: Rename from .cvsignore.
+
+ * preview/.gitignore: Ditto.
+
+ * preview/latex/.gitignore: Ditto.
+
+2013-05-18 Mos¨ Giordano <giordano.mose@libero.it>
+
+ * latex.el: Update copyright years, there have been non-trivial
+ changes in 1998, 2001, 2002.
+ (TeX-arg-index-tag): Use `TeX-argument-prompt'.
+ (TeX-arg-cite): Ditto.
+
+ * tex.el: Update copyright years, there have been non-trivial
+ changes in 1995, 1998.
+ (TeX-parse-arguments): Move skipping of optional
+ arguments inside loop over all arguments, because optional
+ arguments may not be the first ones. Remove unused let-bound
+ variable `skip-opt'.
+ (TeX-arg-literal): Remove FIXME comment, `optional' is the first
+ argument passed to all functions by `TeX-parse-argument'.
+
+2013-05-13 Mos¨ Giordano <giordano.mose@libero.it>
+
+ * style/fancyvrb.el: New style.
+
+ * style/xparse.el: Ditto.
+
+ * Makefile.in (STYLESRC): Add style/fancyvrb.el and
+ style/xparse.el.
+
+2013-05-12 Mos¨ Giordano <giordano.mose@libero.it>
+
+ * tex.el (TeX-insert-dollar): Insert just a single dollar when the
+ point is in a verbatim-like construct.
+
+ * font-latex.el (font-latex-jit-lock-force-redisplay): Don't rely
+ on existing `jit-lock-force-redisplay' because recent bzr Emacs
+ broke compatibility changing the number of arguments. Reported by
+ Robert Goldman.
+
+2013-05-08 Mos¨ Giordano <giordano.mose@libero.it>
+
+ * doc/auctex.texi (Environments): Document
+ `LaTeX-default-document-environment'.
+
+2013-05-07 Mos¨ Giordano <giordano.mose@libero.it>
+
+ * tex.el (TeX-electric-dollar): New variable.
+ (TeX-insert-dollar): Use it.
+
+ * doc/auctex.texi (Quotes): Document `TeX-electric-dollar'.
+
+2013-04-28 Mos¨ Giordano <giordano.mose@libero.it>
+
+ * tex-bar.el: Update copyright range.
+ (TeX-bar-LaTeX-button-alist): Change BibTeX button to Biber when
+ `LaTeX-using-biber' is non-nil.
+ (LaTeX-install-toolbar): Refresh toolbar after styles update.
+
+2013-04-25 Mos¨ Giordano <giordano.mose@libero.it>
+
+ * latex.el (LaTeX-default-document-environment): New buffer-local
+ variable.
+ (LaTeX-default-environment): Mention
+ `LaTeX-default-document-environment' in doc-string.
+ (LaTeX-environment): Use `LaTeX-default-document-environment'.
+
+ * style/beamer.el ("beamer"): Use
+ `LaTeX-default-document-environment' instead of
+ `LaTeX-default-environment'.
+
+ * style/letter.el ("letter"): Ditto.
+
+ * style/slides.el ("slides"): Ditto.
+
+2013-04-24 Mos¨ Giordano <giordano.mose@libero.it>
+
+ * style/acro.el (LaTeX-acro-acronym-history): New variable.
+ (LaTeX-arg-acro-acronym): Use it.
+
+ * style/acronym.el (LaTeX-acronym-acronym-history): New variable.
+ (LaTeX-arg-acronym-acronym): Use it.
+
+ * style/beamer.el (LaTeX-beamer-frametitle-history): New variable.
+ ("beamer"): Use it.
+ (TeX-arg-beamer-frametitle): Ditto.
+
+ * style/siunitx.el (LaTeX-siunitx-unit-history): New variable.
+ (LaTeX-arg-siunitx-unit): Use it.
+
+2013-04-21 Mos¨ Giordano <giordano.mose@libero.it>
+
+ * style/beamer.el ("beamer"): Set `frame' as default environment.
+ Set `section' as largest sectioning level. Add fontification for
+ `title', `author', and `date'.
+
+ * style/letter.el ("letter"): Set `letter' as default environment.
+ Add some macros and fontification.
+
+ * style/slides.el ("slides"): Set `slide' as default environment.
+
+ * latex.el (TeX-arg-insert-braces): Move
+ `indent-according-to-mode' after `save-excursion' because
+ `LaTeX-newline' (used in `save-excursion') deletes trailing
+ whitespaces.
+
+2013-04-19 Mos¨ Giordano <giordano.mose@libero.it>
+
+ * style/amsthm.el (LaTeX-amsthm-package-options): New variable.
+ ("amsthm"): Remove `newtheorem' macro, already defined in
+ `latex.el'. Use `TeX-arg-define-environment' in `newtheorem*'
+ macro. Add `qedhere', `swapnumbers', and `newtheoremstyle'
+ macros. Add `newtheorem*' regexp to match new environments. Add
+ fontification.
+
+ * style/article.el ("article"): Add counters and pagestyles.
+
+ * style/beamer.el ("beamer"): Ditto.
+
+ * style/book.el ("book"): Ditto.
+
+ * style/letter.el (LaTeX-letter-class-options): New variable.
+ ("letter"): Add pagestyles.
+
+ * style/report.el ("report"): Add counters and pagestyles.
+
+ * style/slides.el (LaTeX-slides-class-options): New variable.
+ ("slides"): Add counters and pagestyles.
+
+2013-04-18 Mos¨ Giordano <giordano.mose@libero.it>
+
+ * style/beamer.el: Update copyright years and remove trailing
+ whitespaces.
+ ("beamer"): Run style hooks for loaded packages.
+ (LaTeX-beamer-class-options): New function.
+
+ * style/hyperref.el (LaTeX-hyperref-package-options-list): Rename
+ from `LaTeX-hyperref-package-options' to avoid clash with the
+ function with the same name.
+ ("hyperref"): Use it.
+ (LaTeX-hyperref-package-options): Ditto.
+
+2013-04-17 Mos¨ Giordano <giordano.mose@libero.it>
+
+ * plain-tex.el (plain-TeX-common-initialization): Fix typo in
+ abbrev table name.
+
+2013-04-16 Mos¨ Giordano <giordano.mose@libero.it>
+
+ * latex.el (LaTeX-default-author): New customizable variable.
+ (LaTeX-arg-author): New function.
+ (LaTeX-common-initialization): Use `LaTeX-arg-author' for the
+ \author macro.
+ (LaTeX-default-author): Change default to 'user-full-name (quoted)
+ and add a new possible value.
+ (LaTeX-arg-author): Change accordingly.
+
+ * doc/auctex.texi (Itemize-like): Document `TeX-arg-item-label-p'
+ option.
+ (Tabular-like): Document `LaTeX-default-width' option.
+ (Modes and Hooks): Add modes and hooks to indices.
+ (Adding Macros): Document `TeX-arg-index-tag', `TeX-arg-index',
+ `TeX-arg-document', `LaTeX-arg-usepackage', `TeX-arg-bibstyle',
+ `TeX-arg-bibliography', `LaTeX-arg-author', `TeX-read-key-val',
+ and `TeX-arg-key-val' functions. Mention `TeX-arg-cite-note-p'
+ and `LaTeX-default-author' options.
+ (Adding Environments): Use in example code actually present in
+ `listings.el' file.
+
+2013-04-16 Tassilo Horn <tsdh@gnu.org>
+
+ * tex.el (TeX-source-correlate-sync-source): Use `raise-frame'
+ instead of the external wmctrl command to raise the emacs frame.
+
+2013-04-15 Mos¨ Giordano <giordano.mose@libero.it>
+
+ * latex.el (TeX-read-key-val): Add `prompt' optional argument.
+ (TeX-arg-key-val): Ditto.
+
+ * tex.el (fboundp): Use `crm-separator' as separator in XEmacs
+ `TeX-completing-read-multiple' implementation.
+
+ * style/acro.el (LaTeX-arg-acro-key-val): Let-bind keymap with SPC
+ key binding removed, instead of defining a new key binding for
+ SPC. Use `TeX-arg-key-val' instead of `multi-prompt-key-value'
+ and `TeX-argument-insert'.
+
+ * style/pst-node.el (LaTeX-pstnode-env-psmatrix): Replace
+ `completing-read-multiple' with `TeX-completing-read-multiple'.
+
+ * style/pstricks.el (LaTeX-package-parameters): Ditto.
+
+ * style/siunitx.el (LaTeX-arg-siunitx-unit): Let-bind keymap with
+ SPC key binding removed, instead of defining a new key binding for
+ SPC. Replace `completing-read-multiple' with
+ `TeX-completing-read-multiple'.
+
+2013-04-15 Tassilo Horn <tsdh@gnu.org>
+
+ * tex.el (TeX-source-correlate-sync-source): Raise frame when
+ placing point on the source location.
+
+2013-04-12 Mos¨ Giordano <giordano.mose@libero.it>
+
+ * Makefile.in (STYLESRC): Add style/acro.el and style/acronym.el.
+
+ * style/acro.el: New style.
+
+ * style/acronym.el: Ditto.
+
+2013-04-10 Tassilo Horn <tsdh@gnu.org>
+
+ * tex.el (TeX-evince-sync-view): URL-escape pdf file path when
+ calling evince via DBUS.
+ (TeX-evince-sync-view): Use 0 as timestamp.
+ (TeX-source-correlate-sync-source): URL-decode tex file name.
+
+2013-04-10 Nicolas Richard <theonewiththeevillook@yahoo.fr> (tiny change)
+
+ * style/mathtools.el (LaTeX-mathtools-key-val-options): Fix defvar
+ syntax.
+
+2013-04-10 Jobst Hoffmann <j.hoffmann@fh-aachen.de> (tiny change)
+
+ * style/lscape.el ("lscape"): Fix typo and parentheses.
+
+2013-04-09 Tassilo Horn <tsdh@gnu.org>
+
+ * README.GIT: Rename from README.CVS; update contents to Git.
+
+2013-04-09 Leo Liu <sdl.web@gmail.com>
+
+ * latex.el (LaTeX-outline-level): Make it work for customized
+ `outline-regexp'. See bug report
+ http://permalink.gmane.org/gmane.emacs.auctex.bugs/1648.
+
+ * tex.el (TeX-view-program-list-builtin)
+ (TeX-view-program-selection): Enable commented code to support
+ darwin system.
+
+ * tex.el (TeX-math-input-method-off-regexp): Improve and fix typo.
+ See bug http://permalink.gmane.org/gmane.emacs.auctex.devel/2468.
+
+ * font-latex.el (font-latex-add-to-syntax-alist): Fix a bug in
+ `font-latex-add-to-syntax-alist' where it modified both the buffer
+ local and global value of `font-latex-syntax-alist'.
+
+2013-04-08 Tassilo Horn <tsdh@gnu.org>
+
+ * latex.el (LaTeX-style-list): Correct docstring.
+
+2013-04-06 Mos¨ Giordano <giordano.mose@libero.it>
+
+ * latex.el (LaTeX-provided-class-options-member): Fix typo.
+ (LaTeX-arg-usepackage): Provide completion for more than one
+ package in mandatory argument.
+
+2013-04-05 Mos¨ Giordano <giordano.mose@libero.it>
+
+ * latex.el (LaTeX-global-class-files): New variable.
+ (TeX-arg-document): Provide completion for class options, based on
+ `LaTeX-arg-usepackage'. Use `LaTeX-global-class-files'.
+ (LaTeX-style-list): Mention that if `TeX-arg-input-file-search' is
+ set to `t' this variable will be ignored.
+
+ * tex.el (TeX-normal-mode): Reset `LaTeX-global-class-files' when
+ ARG is non-nil.
+
+ * style/article.el (LaTeX-article-class-options): New variable.
+
+ * style/book.el (LaTeX-book-class-options): New variable.
+
+ * style/report.el (LaTeX-report-class-options): New variable.
+
+2013-04-03 Mos¨ Giordano <giordano.mose@libero.it>
+
+ * latex.el (LaTeX-provided-class-options): New buffer-local
+ variable.
+ (LaTeX-provided-class-options-member): New function.
+ (LaTeX-provided-package-options): New buffer-local variable.
+ (LaTeX-provided-package-options-member): New function
+ (LaTeX-auto-cleanup): Rewrite to support
+ `LaTeX-provided-{class,package}-options' variables.
+ (LaTeX-arg-usepackage): Ditto.
+
+ * tex.el (TeX-auto-store): Write to parsed file values of
+ `LaTeX-provided-{class,package}-options' variables.
+ (TeX-auto-insert): Fix indentation of inserted lines.
+ (TeX-search-files-by-type): Fix typo in doc-string.
+ (TeX-add-to-alist): New function.
+ (TeX-quote-language-alist): Fix typo in doc-string.
+
+ * style/babel.el (LaTeX-babel-package-options): Add missing
+ languages.
+ (LaTeX-babel-package-options): Add options other than
+ languages.
+ (LaTeX-babel-active-languages): Use
+ `LaTeX-provided-{class,package}-options'. Loop over actually
+ used options instead of all babel languages.
+ ("babel"): Run styles of active languages.
+
+ * style/biblatex.el ("biblatex"): Use
+ `LaTeX-provided-package-options-member'.
+ (LaTeX-biblatex-package-options): Consider the `ask' value for
+ 'TeX-arg-input-file-search'.
+
+ * style/kpfonts.el ("kpfonts"): Use
+ `LaTeX-provided-package-options-member'.
+
+ * style/siunitx.el: Rename `TeX-siunitx-*' functions to
+ `LaTeX-siunitx-*' for consistency.
+ ("siunitx"): Use `LaTeX-provided-package-options-member'.
+
+2013-03-29 Mos¨ Giordano <giordano.mose@libero.it>
+
+ * latex.el (TeX-arg-document): Search for LaTeX classes.
+
+2013-03-28 Mos¨ Giordano <giordano.mose@libero.it>
+
+ * style/biblatex.el (LaTeX-biblatex-package-options): Correct name
+ of `TeX-read-key-val' argument.
+
+ * latex.el (LaTeX-common-initialization): Remove `addbibresource'
+ macro.
+
+ * style/biblatex.el (LaTeX-biblatex-addbibresource-options): New
+ variable.
+ (LaTeX-arg-addbibresource): New function, based on current
+ `TeX-arg-bibliography'.
+ ("biblatex"): Add `addbibresource' macro.
+ (LaTeX-biblatex-package-options): Use `TeX-read-key-val'.
+
+ * latex.el (TeX-arg-bibliography): Remove `addbibresource'
+ support.
+
+2013-03-27 Mos¨ Giordano <giordano.mose@libero.it>
+
+ * tex.el (TeX-add-local-master): Remove trailing spaces from
+ inserted lines.
+
+2013-03-07 Tassilo Horn <tsdh@gnu.org>
+
+ * latex.el (TeX-read-key-val): New function.
+ (TeX-arg-key-val): Use `TeX-read-key-val'.
+
+ * style/hyperref.el (LaTeX-hyperref-package-options): Use
+ `TeX-read-key-val' instead of `TeX-arg-key-val' which caused args
+ to be inserted twice.
+
+ * style/siunitx.el (LaTeX-siunitx-package-options): Ditto.
+
+2013-03-06 Mads Jensen <mje@inducks.org>
+
+ * style/amsopn.el: Add GPL copyright notice.
+ ("amsopn"): Add regex for \DeclareMathOperator to
+ `LaTeX-auto-regexp-list'. Use `TeX-arg-define-macro' for
+ \DeclareMathOperator.
+
+2013-03-06 Mads Jensen <mje@inducks.org>
+
+ * tex.el (TeX-command-list): Add support for xindy.
+
+2013-03-06 Mads Jensen <mje@inducks.org>
+
+ * latex.el (LaTeX-common-initialization): Add regular expression
+ for thispagestyle and pagestyle to `TeX-complete-list'.
+
+2013-03-04 Tassilo Horn <tsdh@gnu.org>
+
+ * latex.el (TeX-arg-date): New function.
+ (LaTeX-common-initialization): Use `TeX-arg-date' for \date macro.
+
+ * doc/auctex.texi: Document `TeX-arg-date'.
+
+ * style/doc.el ("doc"): Use `TeX-arg-date' for the \changes macro.
+
+2013-02-26 Tassilo Horn <tsdh@gnu.org>
+
+ * tex.el (TeX-run-style-hooks): Guard running style hooks in a
+ `condition-case' in order not to error in cases the auto file
+ contains calls to functions that are defined by a style that has
+ been deactivated in the meantime.
+
+2013-02-25 Werner Fink <werner@suse.de>
+
+ * style/dinbrief.el ("dinbrief"): Update dinbrief style.
+ (LaTeX-dinbrief-insert): New macro.
+ (LaTeX-dinbrief-style): New function.
+ (LaTeX-dinbrief-env-recipient): Rename from
+ `LaTeX-recipient-hook'.
+ (LaTeX-dinbrief-sender): New function.
+ (LaTeX-dinbrief-recipient): New function.
+ (LaTeX-dinbrief-today): Rename from `LaTeX-today'.
+
+2013-02-25 Tassilo Horn <tsdh@gnu.org>
+
+ * tex.el (TeX-parse-macro): Add TeX group characters also in math
+ environments if there is an active region that should probably
+ used as argument.
+
+ * latex.el (LaTeX-paragraph-commands-internal): Add \clearpage and
+ \newpage.
+
+ * style/scrbase.el ("scrbase"): Add \minisec macro to
+ `LaTeX-paragraph-commands' locally.
+
+2013-02-23 Mos¨ Giordano <giordano.mose@libero.it>
+
+ * style/kpfonts.el: New style file.
+
+ * Makefile.in (STYLESRC): Add style/kpfonts.el.
+
+2013-02-20 Mos¨ Giordano <giordano.mose@libero.it>
+
+ * latex.el (LaTeX-math-default): Move `digamma' and `varkappa' to
+ `AMS > Greek Lowercase' menu.
+
+2013-02-18 Mads Jensen <mje@inducks.org>
+
+ * Makefile.in (STYLESRC): Activate new style array.el.
+
+ * style/array.el: New style.
+
+ * style/tabularx.el: Expand copyright range.
+ ("tabularx"): The package relies on the array package, so run its
+ style hook.
+
+2013-02-18 Tassilo Horn <tsdh@gnu.org>
+
+ * tex.el (require): Require crm.
+
+ * multi-prompt.el (multi-prompt-key-value): Don't require crm here
+ because it has already been required in tex.el.
+
+2013-02-16 Mos¨ Giordano <giordano.mose@libero.it>
+
+ * style/biblatex.el ("biblatex"): Add hooks for loaded packages.
+ (LaTeX-biblatex-package-options): New function.
+ (LaTeX-biblatex-package-options-list): Renamed from
+ `LaTeX-biblatex-package-options' to avoid clash with the function
+ with the same name.
+
+ * latex.el (LaTeX-search-files-type-alist): Add `bbxinputs'.
+ (BibLaTeX-global-style-files): New variable.
+
+ * tex.el (BibLaTeX-style-extensions): New variable.
+ (TeX-normal-mode): Make ARG argument optional.
+ (TeX-normal-mode): Reset `BibLaTeX-global-style-files' when ARG is
+ non-nil.
+
+2013-02-14 Mos¨ Giordano <giordano.mose@libero.it>
+
+ * style/siunitx.el (LaTeX-siunitx-package-options): New function.
+
+ * style/hyperref.el (LaTeX-hyperref-package-options): New
+ function.
+
+2013-02-13 Mads Jensen <mje@inducks.org>
+
+ * style/subfigure.el: Expanded copyright range.
+ ("subfigure"): Collapsed the two regular expressions for
+ completion. Added lengths, and commands for fonts.
+
+2013-02-14 Tassilo Horn <tsdh@gnu.org>
+
+ * style/fancyhdr.el (TeX-arg-fancyhdr-position): Document the
+ OPTIONAL argument.
+
+2013-02-14 Mads Jensen <mje@inducks.org>
+
+ * Makefile.in (STYLESRC): Activate new style fancyhdr.el.
+
+ * style/fancyhdr.el: New style.
+
+2013-02-13 Mos¨ Giordano <giordano.mose@libero.it>
+
+ * doc/auctex.texi (Quotes): Document
+ `TeX-math-close-single-dollar'.
+ (Selecting a Command): Remove reference to
+ `LaTeX-biblatex-use-Biber'.
+ (Parsing Files): Document `LaTeX-auto-index-regexp-list',
+ `LaTeX-auto-class-regexp-list',
+ `LaTeX-auto-pagestyle-regexp-list',
+ `LaTeX-auto-counter-regexp-list', `LaTeX-auto-length-regexp-list',
+ `LaTeX-auto-savebox-regexp-list'.
+
+ * tex.el (TeX-math-close-single-dollar): New variable.
+ (TeX-insert-dollar): Use it.
+
+2013-02-13 Tassilo Horn <tsdh@gnu.org>
+
+ * Makefile.in (STYLESRC): Activate new style filecontents.el.
+
+2013-01-23 Mads Jensen <mje@inducks.org>
+
+ * style/filecontents.el: New style.
+
+2013-02-13 Tassilo Horn <tsdh@gnu.org>
+
+ * Makefile.in (STYLESRC): Activate new style fancynum.el.
+
+2013-02-08 Mads Jensen <mje@inducks.org>
+
+ * style/fancynum.el: New style.
+
+2013-02-13 Tassilo Horn <tsdh@gnu.org>
+
+ * Makefile.in (STYLESRC): Activate new style nameref.el.
+
+2013-02-13 Mads Jensen <mje@inducks.org>
+
+ * doc/auctex.texi (Adding Macros): Mention that `TeX-arg-savebox'
+ now supports completion.
+
+ * style/nameref.el: New style.
+
+ * style/hyperref.el ("hyperref"): Run nameref style hook because
+ hyperref activates nameref.
+
+2013-02-10 Mos¨ Giordano <giordano.mose@libero.it>
+
+ * style/siunitx.el ("siunitx-unit"): New type for the parser.
+ (LaTeX-siunitx-regexp): New variable.
+ (LaTeX-auto-siunitx-unit): New variable.
+ (LaTeX-siunitx-prepare): New function.
+ (LaTeX-siunitx-cleanup): New function.
+ (TeX-auto-prepare-hook): Add `LaTeX-siunitx-prepare' function.
+ (TeX-auto-cleanup-hook): Add `LaTeX-siunitx-cleanup' function.
+ (TeX-arg-siunitx-unit): New function.
+ (TeX-arg-define-siunitx-unit): New function.
+ ("siunitx"): Add `LaTeX-siunitx-regexp' to list of regexps used
+ for parsing.
+ ("siunitx"): Use `TeX-arg-siunitx-unit' and
+ `TeX-arg-define-siunitx-unit' functions.
+ ("siunitx"): Use `LaTeX-add-siunitx-units' for adding siunitx unit
+ macros to the list of known units.
+
+2013-02-08 Mos¨ Giordano <giordano.mose@libero.it>
+
+ * style/biblatex.el: Update copyright range.
+ ("biblatex"): Check `backend' option value in
+ `TeX-active-styles'.
+
+ * tex-style.el: Update copyright years.
+ (LaTeX-biblatex-use-Biber) Remove unused variable.
+
+ * tex.el: Update copyright range.
+ (TeX-auto-add-type): Append new type to `TeX-auto-parser' instead
+ of prepending it.
+ (TeX-auto-store): Fix indentation of first lines of parsed file.
+
+ * latex.el (LaTeX-auto-cleanup): Append options and styles to
+ `TeX-auto-file' instead of prepending them.
+
+2013-01-28 Mads Jensen <mje@inducks.org>
+
+ * doc/todo.texi (Wishlist): Remove "Completion for sboxes".
+
+2013-01-27 Mads Jensen <mje@inducks.org>
+
+ * latex.el (LaTeX-env-contents): Replaced regular expression with
+ `LaTeX-header-end', i.e., filecontents environments must go
+ somewhere in the preamble but not necessarily before the
+ \documentclass.
+
+2013-01-26 Mads Jensen <mje@inducks.org>
+
+ * latex.el (LaTeX-auto-savebox-regexp-list): New variable.
+ (LaTeX-auto-regexp-list): Use `LaTeX-auto-savebox-regexp-list'.
+ ("savebox"): New type for the parser.
+ (TeX-arg-savebox): Use `LaTeX-savebox-list' for completion and
+ `definition' argument.
+ (LaTeX-common-initialization): Added makeatletter, makeatother,
+ and jobname macros.
+ (LaTeX-default-options): Changed documentstyle to documentclass in
+ docstring.
+
+2013-01-25 Mos¨ Giordano <giordano.mose@libero.it>
+
+ * style/siunitx.el ("siunitx"): Add `\gram' and
+ `\SendSettingsToPgf'.
+
+2013-01-25 Tassilo Horn <tsdh@gnu.org>
+
+ * tex-buf.el (TeX-output-mode): Make revert-buffer-function buffer
+ local before setting it to TeX-output-revert-buffer.
+
+2013-01-24 Ivan Andrus <darthandrus@gmail.com>
+
+ * auctex.texi: Updated documetation about ChkTeX and lacheck.
+ Fixed typos.
+
+2013-01-24 Ivan Andrus <darthandrus@gmail.com>
+
+ * tex-buf.el (TeX-output-revert-buffer): New function.
+ (TeX-special-mode, TeX-output-mode): New major modes.
+ (TeX-special-mode-map, TeX-output-mode-map): New variables.
+
+2013-01-21 Tassilo Horn <tsdh@gnu.org>
+
+ * Makefile.in (STYLESRC): Activate new style placeins.el.
+
+2013-01-21 Ivan Andrus <darthandrus@gmail.com>
+
+ * texmathp.el (texmathp-tex-commands-default): Add \shortintertext.
+
+2013-01-19 Mads Jensen <mje@inducks.org>
+
+ * style/placeins.el: New style.
+
+2013-01-17 Tassilo Horn <tsdh@gnu.org>
+
+ * doc/todo.texi: Remove the todo concerning completion for
+ counters that was implemented by Mos¨ Giordano on 2013-01-15.
+
+ * doc/auctex.texi: Document `TeX-arg-length' and
+ `TeX-arg-define-length'.
+
+2013-01-16 Mos¨ Giordano <giordano.mose@libero.it>
+
+ * latex.el (LaTeX-auto-length-regexp-list): New variable.
+ (LaTeX-auto-regexp-list): Use `LaTeX-auto-length-regexp-list'.
+ ("length"): New type for the parser.
+ (TeX-arg-length): New function.
+ (TeX-arg-define-length): New function.
+ (LaTeX-common-initialization): Initialize some standard LaTeX
+ lengths and use `TeX-arg-length' and `TeX-arg-define-length' for
+ completion of some macros.
+
+2013-01-15 Tassilo Horn <tsdh@gnu.org>
+
+ * doc/auctex.texi: Document that `TeX-arg-counter' does completion
+ now.
+
+2013-01-15 Mos¨ Giordano <giordano.mose@libero.it>
+
+ * latex.el (LaTeX-auto-pagestyle-regexp-list): Fix typo.
+ (LaTeX-auto-counter-regexp-list): New variable.
+ (LaTeX-auto-regexp-list): Use `LaTeX-auto-counter-regexp-list'.
+ ("counter"): New type for the parser.
+ (TeX-arg-counter): Use `LaTeX-counter-list' function for
+ completion and `definition' argument.
+ (TeX-arg-pagestyle): Use `definition' argument.
+ (LaTeX-common-initialization): Initialize counters.
+
+2013-01-14 Tassilo Horn <tsdh@gnu.org>
+
+ * style/ulem.el (LaTeX-arg-fontdecl, LaTeX-arg-fontcmd): Fix
+ declarations.
+
+2013-01-13 Mads Jensen <mje@inducks.org>
+
+ * style/pstricks.el (LaTeX-pstricks-package-options): New
+ variable.
+
+ * style/varioref.el: Update copyright range.
+ ("varioref"): Add more definitions.
+ (LaTeX-varioref-package-options): Reformat.
+
+ * style/listings.el: Update copyright range.
+ (LaTeX-listings-key-val-options, "listings")
+ (LaTeX-listings-package-options): Update to recent listings
+ version.
+
+2013-01-14 Tassilo Horn <tsdh@gnu.org>
+
+ * Makefile.in (STYLESRC): Enable memoir.el style.
+
+2013-01-14 Mads Jensen <mje@inducks.org>
+
+ * style/memoir.el: New style.
+
+2013-01-14 Mos¨ Giordano <giordano.mose@libero.it>
+
+ * latex.el (TeX-arg-environment): Fix typo.
+
+2013-01-10 Mos¨ Giordano <giordano.mose@libero.it>
+
+ * latex.el: Update copyright range.
+ (LaTeX-auto-pagestyle-regexp-list): New variable.
+ (LaTeX-auto-regexp-list): Use `LaTeX-auto-pagestyle-regexp-list'.
+ ("pagestyle"): New type for the parser.
+ (LaTeX-pagestyle-list): Remove.
+ (TeX-arg-pagestyle): Use `LaTeX-pagestyle-list' function for
+ completing.
+ (LaTeX-common-initialization): Initialize pagestyles.
+
+ * style/imakeidx.el: Use `LaTeX-pagestyle-list' function to set
+ `firstpagestyle' option values.
+
+2013-01-11 Ivan Andrus <darthandrus@gmail.com>
+
+ * tex.el (TeX-command-list): Add command to run ChkTeX.
+
+2013-01-11 Tassilo Horn <tsdh@gnu.org>
+
+ * Makefile.in (STYLESRC): Add new style files kantlipsum.el,
+ lipsum.el, and longtable.el.
+
+2013-01-10 Mos¨ Giordano <giordano.mose@libero.it>
+
+ * style/kantlipsum.el: New style.
+
+ * style/lipsum.el: Ditto.
+
+ * style/longtable.el: Ditto
+
+2013-01-10 Mads Jensen <mje@inducks.org>
+
+ * latex.el (LaTeX-env-document): Only insert \documentclass in
+ case the document does not already contain one.
+
+2013-01-09 Ralf Angeli <angeli@caeruleus.net>
+
+ * style/epigraph.el ("epigraph"): Do not quote list entries for
+ `font-latex-add-keywords'.
+
+2013-01-07 Ralf Angeli <angeli@caeruleus.net>
+
+ * style/mathtools.el ("mathtools"): Prevent amsmath options from
+ being added multiple times.
+
+ * style/footmisc.el ("footmisc"): Remove fontification settings
+ for length macros.
+
+2013-01-06 Ralf Angeli <angeli@caeruleus.net>
+
+ * style/mathtools.el ("mathtools"): Append amsmath options to
+ mathtools option after the amsmath style file has been loaded.
+ Remove `function' wrapper.
+
+2013-01-05 Ralf Angeli <angeli@caeruleus.net>
+
+ * Makefile.in (STYLESRC): Activate new style files.
+
+ * ChangeLog: Move name of style file contributors to head of
+ ChangLog entries.
+
+2013-01-02 Tassilo Horn <tsdh@gnu.org>
+
+ * style/everysel.el: Fix typos.
+
+2013-01-02 Mads Jensen <mje@inducks.org>
+
+ * style/afterpage.el: New style.
+
+2012-12-30 Mos¨ Giordano <giordano.mose@libero.it>
+
+ * latex.el (LaTeX-pagestyle-list): New variable.
+ (TeX-arg-pagestyle): Use it.
+
+ * style/imakeidx.el: New style.
+
+2012-12-29 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ * doc/tex-ref.tex: Fix apparent errors and add keybind entries for
+ C-c ? and `:' (in math mode).
+
+2012-12-28 Mads Jensen <mje@inducks.org>
+
+ * style/multirow.el: New style.
+
+2012-12-27 Mos¨ Giordano <giordano.mose@libero.it>
+
+ * style/siunitx.el (LaTeX-siunitx-package-options): New variable.
+ ("siunitx"): Use it.
+
+ * style/hyperref.el (LaTeX-hyperref-href-options): New variable.
+ (LaTeX-hyperref-package-options, "hyperref"): Use it.
+
+2012-12-27 Mads Jensen <mje@inducks.org>
+
+ * style/mflogo.el: New style.
+
+ * style/epigraph.el: Ditto.
+
+2012-12-27 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ * amsmath.el ("amsmath"): Add support for the alignedat
+ and subarray environments. Also, add support for the shoveright
+ and shoveleft macros.
+ * font-latex.el (font-latex-math-environments): Add "xxalignat"
+ and "flalign".
+
+2012-12-26 Mads Jensen <mje@inducks.org>
+
+ * style/lscape.el: New style.
+
+ * style/amssymb.el: Ditto.
+
+ * style/ragged2e.el: Ditto.
+
+ * style/mathtools.el: Ditto.
+
+ * style/everysel.el: Ditto.
+
+ * style/bigstrut.el: Ditto.
+
+ * style/bigdelim.el: Ditto.
+
+2012-12-25 Mads Jensen <mje@inducks.org>
+
+ * style/ulem.el: New style.
+
+2012-12-25 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ * latex.el (LaTeX-math-default): Added unicode character position
+ to some entries and "mathring" entry.
+ (LaTeX-common-initialization): Added support for accent macros
+ \hat, \dot etc and \textasteriskcentered.
+
+2012-12-24 Mads Jensen <mje@inducks.org>
+
+ * style/footmisc.el: New style.
+
+2012-12-21 Mos¨ Giordano <giordano.mose@libero.it>
+
+ * style/bm.el: New style.
+
+ * style/siunitx.el: Ditto.
+
+2012-12-20 Tassilo Horn <tsdh@gnu.org>
+
+ * tex-bar.el (TeX-bar-LaTeX-buttons, TeX-bar-LaTeX-button-alist):
+ Also add spell button.
+
+ * images/spell.xpm: New image, copied from Emacs.
+
+ * tex-bar.el (TeX-bar-TeX-button-alist): Use it for the spell
+ button.
+
+2012-12-20 Tassilo Horn <tsdh@gnu.org>
+
+ * tex-bar.el (TeX-bar-TeX-button-alist, TeX-bar-TeX-buttons): Add
+ `spell' button to run spell-checker.
+
+2012-12-04 Tassilo Horn <tsdh@gnu.org>
+
+ Merge revno 314 (Stefan Monnier) from emacs elpa branch: Shorten
+ copyright year ranges.
+
+ * context.el:
+
+ * doc/auctex.texi:
+
+ * doc/changes.texi:
+
+ * doc/install.texi:
+
+ * font-latex.el:
+
+ * latex.el:
+
+ * style/letter.el:
+
+ * tex-fold.el:
+
+ * tex-jp.el:
+
+ * tex.el:
+
+2012-11-30 Ralf Angeli <angeli@caeruleus.net>
+
+ * Version 11.87 released.
+
+2012-11-30 Ralf Angeli <angeli@caeruleus.net>
+
+ * tex.el (TeX-evince-dbus-p): Make last change a little more
+ conventional.
+
+2012-11-30 Tassilo Horn <tsdh@gnu.org>
+
+ * tex.el (TeX-evince-dbus-p): Check for feature emacs in order not
+ to signal an error on XEmacs.
+
+2012-11-29 Ralf Angeli <angeli@caeruleus.net>
+
+ * RELEASE, configure.ac, doc/auctex.texi, doc/changes.texi,
+ doc/install.texi, doc/tex-ref.tex: Update for upcoming release.
+
+2012-11-26 Ralf Angeli <angeli@caeruleus.net>
+
+ * latex.el (LaTeX-split-bibs): Add doc string and use variable for
+ Biber file extensions.
+ (LaTeX-search-files-type-alist): Add entry for Biber.
+ (BibTeX-Biber-global-files): Remove.
+ (BibTeX-global-files): Reintroduce.
+ (TeX-Biber-global-files): New variable.
+ (TeX-arg-bibliography): Check if Biber or BibTeX is used and react
+ accordingly.
+
+ * tex-buf.el (TeX-check-files): Do not check duplicate extensions.
+ (TeX-command-query, TeX-LaTeX-sentinel): Use separate variables
+ for BibTeX and Biber file extensions.
+ (TeX-synchronous-sentinel): Use `let' instead of `let*'.
+
+ * tex.el (TeX-clean-default-intermediate-suffixes): Add suffixes
+ for biblatex.
+ (TeX-auto-generate, TeX-auto-generate-global): Use separate
+ variables for BibTeX and Biber file extensions.
+ (TeX-Biber-file-extensions): New variable.
+ (BibTeX-Biber-file-extensions): Remove.
+ (BibTeX-file-extensions): Reintroduce.
+ (TeX-search-files-type-alist): Use `BibTeX-file-extensions'.
+ (TeX-normal-mode): Use separate variables for BibTeX and Biber
+ global files.
+
+2012-07-17 Vincent BelaŻche <vincentb1@users.sourceforge.net>
+
+ * tex-info.el (Texinfo-reftex-hook): Added function.
+ (TeX-texinfo-mode): Added RefTeX plugging.
+
+2012-11-23 Tassilo Horn <tsdh@gnu.org>
+
+ * doc/quickstart.texi (Quick Start): Document that one mustn't
+ load auctex.el if AUCTeX is installed from ELPA.
+
+ * doc/install.texi (Installation): Mention installation from ELPA.
+
+2012-11-20 Davide G. M. Salvetti <salve@debian.org>
+
+ * doc/tex-ref.tex (column{preview-latex}): Fix typo. Reported by
+ Sİbastien Villemot. Update copyright information.
+
+2012-11-14 Ralf Angeli <angeli@caeruleus.net>
+
+ * latex.el (LaTeX-auto-regexp-list): Remove entries for Biber.
+ (LaTeX-biber): Remove.
+ (LaTeX-listify-package-options): Rewrite so that the function can
+ deal with key=value pairs.
+ (LaTeX-always-use-Biber): Remove.
+ (LaTeX-using-Biber): Add doc string and make buffer-local.
+
+ * tex-style.el (LaTeX-biblatex-use-Biber): New variable.
+
+ * doc/auctex.texi (top): Remove reference to
+ `LaTeX-always-use-Biber'.
+ (Selecting a Command): Mention Biber and
+ `LaTeX-biblatex-use-Biber'.
+
+ * Makefile.in (STYLESRC): Add style/biblatex.el.
+
+ * style/biblatex.el: New file.
+
+2012-11-05 Tassilo Horn <tsdh@gnu.org>
+
+ * tex.el (TeX-doc-extensions): Fix typo. This variable was
+ formerly named TeX-doc-extenstions.
+
+2012-10-04 Masayuki Ataka <masayuki.ataka@gmail.com>
+
+ * tex-jp.el: Repair coding from iso-2022-7bit to iso-2022-jp.
+
+2012-10-03 Ralf Angeli <angeli@caeruleus.net>
+
+ * tex-jp.el: Repair coding.
+
+2012-10-02 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ * tex-jp.el (japanese-TeX-engine-default)
+ (TeX-engine-alist-builtin, japanese-TeX-use-kanji-opt-flag): New
+ defcustoms.
+ (japanese-TeX-coding-ejsu, japanese-TeX-get-encoding-string): New
+ functions.
+ (japanese-TeX-command-list): Support %(kanjiopt).
+ (TeX-expand-list): Support new option kanjiopt, bibtex, makeindex,
+ mendexkopt, xdvi.
+ (TeX-view-predicate-list-builtin): Judge paper.
+ (TeX-view-program-list): Support dviout paper size, and other DVI
+ previewers in Mac and others.
+ (TeX-view-program-selection): Add Dviout, TeXworks and Preview.
+ (LaTeX-command-style): Support uplatex.
+ (japanese-plain-tex-mode-initialization): Use TeX-engine-set.
+ (japanese-latex-mode-initialization): Ditto.
+
+ * tex-jp.el: Comment fix.
+ (TeX-error-description-list): Doc fix.
+
+2012-09-27 Joost Kremers <joostkremers@fastmail.fm> (tiny change)
+
+ * tex-buf.el (TeX-check-files): Use mapcar instead of cl's map.
+
+2012-09-16 Philip Kime <Philip@kime.org.uk> (tiny change)
+
+ * tex-buf.el (TeX-LaTeX-sentinel): Detect generic rerun message
+ from biblatex
+
+2012-09-14 Ken Brown <kbrown@cornell.edu> (tiny change)
+
+ * doc/auctex.texi (top): Mention LaTeX-always-use-Biber.
+
+ * doc/tex-ref.tex: Add Biber.
+
+2012-09-13 Tassilo Horn <tsdh@gnu.org>
+
+ Merge Biber support developed by Philip Kime
+ <philkime@kime.org.uk>.
+ * doc/changes.texi: Mention Biber support.
+
+ * tex.el (TeX-command-list, TeX-auto-generate)
+ (TeX-auto-generate-global, TeX-search-files-type-alist)
+ (TeX-normal-mode): Adapt.
+ (TeX-command-Biber): New defcustom.
+ (BibTeX-Biber-file-extensions): Renamed from
+ BibTeX-file-extensions.
+
+ * tex-buf.el (TeX-save-document, TeX-check-files)
+ (TeX-command-query, TeX-LaTeX-sentinel): Adapt.
+ (TeX-Biber-sentinel, TeX-run-Biber): New functions.
+
+ * latex.el (LaTeX-auto-regexp-list, LaTeX-auto-cleanup)
+ (TeX-arg-bibliography, LaTeX-common-initialization): Adapt.
+ (LaTeX-biber, LaTeX-split-bibs, LaTeX-using-Biber)
+ (LaTeX-always-use-Biber): New functions and vars.
+ (BibTeX-Biber-global-files): Renamed from BibTeX-global-files.
+
+ * font-latex.el (font-latex-built-in-keyword-classes)
+ (font-latex-add-keywords): Adapt.
+
+2012-06-21 Patrice Dumas <pertusus@free.fr> (tiny change)
+
+ * doc/preview-latex.texi (The preview images): Place index command
+ `@pindex dvipng' on a line of its own.
+
+ * doc/macros.texi: Replace user macro `@sans' by user macro
+ `@sansserif' and make definition conditional against flag
+ no-sansserif as `@sansserif' is a Texinfo macro and does not need
+ to be redefined.
+
+ * doc/macros.texi: Suppress user macro `@LaTeX' as this macro is
+ already defined in Texinfo.
+
+ * doc/quickstart.texi (Editing Facilities): Use texinfo
+ `@sansserif' macro rather than user macro `@sans'.
+
+ * doc/auctex.texi (Font Specifiers): Use texinfo `@sansserif'
+ macro rather than user macro `@sans'.
+
+2012-08-14 Ralf Angeli <angeli@caeruleus.net>
+
+ * tex.el (TeX-source-correlate-determine-method): Match --synctex
+ as well as -synctex.
+
+2012-07-04 Tassilo Horn <tassilo@member.fsf.org>
+
+ * doc/changes.texi: Mention Evince forward/backward search
+ changes.
+
+2012-07-03 Tassilo Horn <tassilo@member.fsf.org>
+
+ * font-latex.el (byte-code-function-p): Reference the generated
+ functions with font-latex-match prefix. See Emacs bug 11837.
+
+2012-06-22 Tassilo Horn <tassilo@member.fsf.org>
+
+ * tex.el (TeX-evince-dbus-p): Add check for
+ `dbus-register-signal', which might be unavailable if emacs was
+ configured with --without-dbus.
+
+2012-04-26 Tassilo Horn <tassilo@member.fsf.org>
+
+ * tex.el (TeX-engine-set): Fix docstring leading to a misplaced
+ interactive spec warning.
+
+2012-04-25 Tassilo Horn <tassilo@member.fsf.org>
+
+ * tex.el (TeX-evince-dbus-p): Improve check for emacs's dbus
+ support.
+
+2012-04-11 Tassilo Horn <tassilo@member.fsf.org>
+
+ * tex.el (TeX-evince-sync-view): Work around emacs integer limits.
+ Also provide the current column to Evince.
+ (TeX-evince-dbus-p): Also check the signature of Evince's
+ FindDocument DBUS method, which is only stable since evince 3.0.
+
+2012-04-10 Tassilo Horn <tassilo@member.fsf.org>
+
+ * tex.el (TeX-evince-sync-view): Fix arithmetic range error.
+ (TeX-evince-dbus-p): Add parameter to extend the check depending
+ on wanted features (e.g., forward search).
+ (TeX-view-program-list-builtin): Use it.
+
+2012-04-08 Tassilo Horn <tassilo@member.fsf.org>
+
+ * tex.el (TeX-evince-dbus-p): New function.
+ (TeX-evince-sync-view): New function.
+ (TeX-view-program-list-builtin): Use Evince's DBUS interface for
+ forward search if available.
+ (TeX-source-correlate-mode): Use TeX-evince-dbus-p.
+
+2012-01-11 Ralf Angeli <angeli@caeruleus.net>
+
+ * style/setspace.el ("setspace"): Correct quoting.
+
+2011-09-18 Ralf Angeli <angeli@caeruleus.net>
+
+ * doc/auctex.texi (Marking): Make a few corrections throughout the
+ section.
+ (Adding Macros): Document special values for numbers used together
+ with `TeX-add-symbols'.
+
+2011-09-18 Vincent BelaŻche <vincentb1@users.sourceforge.net>
+
+ * doc/auctex.texi: Add documentation for functions
+ LaTeX-mark-section, LaTeX-mark-environment, Texinfo-mark-section,
+ Texinfo-mark-environment and Texinfo-mark-node.
+
+2011-08-24 Tassilo Horn <tassilo@member.fsf.org>
+
+ * tex.el (TeX-synctex-output-page): TeXLive 2011's synctex wants
+ absolute file names with dot indicating the master, like
+ /foo/bar/./baz/chap1.tex. So add this as another variant.
+ (TeX-view-program-list-builtin): Use evince's -i,--page-index
+ switch instead of -p,--page-label if that evince version supports
+ it (>=3.0.x).
+
+2011-08-07 Ralf Angeli <angeli@caeruleus.net>
+
+ * latex.el (LaTeX-fill-move-to-break-point): Take characters after
+ closing dollar sign into account when deciding to break before
+ inline math.
+
+2011-07-12 Ralf Angeli <angeli@caeruleus.net>
+
+ * tex.el (TeX-search-files-kpathsea): Check if directories are
+ accessible.
+
+2011-07-11 Vincent BelaŻche <vincentb1@users.sourceforge.net>
+
+ * tex-info.el (Texinfo-mark-environment, Texinfo-mark-section)
+ (Texinfo-mark-node): New defun.
+ (Texinfo-mode-map): added key bindings for
+ Texinfo-mark-environment, Texinfo-mark-section, and
+ Texinfo-mark-node.
+
+2011-06-19 Ralf Angeli <angeli@caeruleus.net>
+
+ * tex.el (TeX-engine-alist-builtin): Add --jobname to luatex and
+ lualatex calls.
+ (TeX-engine-alist-builtin): Remove --jobname again for luatex but
+ not for lualatex.
+
+2011-06-05 Tassilo Horn <tassilo@member.fsf.org>
+
+ * tex.el (TeX-source-correlate-sync-source): Restore Emacs 21
+ compatibility.
+
+2011-05-26 Tassilo Horn <tassilo@member.fsf.org>
+
+ * tex.el (TeX-source-correlate-sync-source): Adapt to handle
+ file:// URLs.
+
+2011-05-15 Ralf Angeli <angeli@caeruleus.net>
+
+ * Makefile.in (STYLESRC): Add style/setspace.el.
+
+ * tex.el (TeX-expand-list): Add a safeguard to the %(outpage)
+ expander for when an output page function returns nil.
+
+2011-05-09 Tassilo Horn <tassilo@member.fsf.org>
+
+ * tex.el (TeX-synctex-output-page-1): New function for calling
+ synctex.
+ (TeX-synctex-output-page): Use it, and try relative file names
+ with and without leading ./ when calling synctex before falling
+ back to page 1.
+ (TeX-source-correlate-sync-source): Add &rest parameter, because
+ Evince 3 sends an additional (ignored) parameter via dbus.
+
+2011-05-01 Ralf Angeli <angeli@caeruleus.net>
+
+ * tex.el (TeX-tree-expand): Use a different test to check for an
+ absolute path on Windows.
+
+ * font-latex.el (font-latex-built-in-keyword-classes): Add
+ definition for \rule and remove the one for \sbox.
+
+2011-04-25 Ralf Angeli <angeli@caeruleus.net>
+
+ * style/setspace.el: Add support for changing \displayskipstretch.
+
+2011-04-25 Mads Jensen <mje@inducks.org>
+
+ * style/setspace.el: New file.
+
+2011-04-25 Ralf Angeli <angeli@caeruleus.net>
+
+ * latex.el (LaTeX-style-list): Add memoir.
+
+2011-04-20 Ralf Angeli <angeli@caeruleus.net>
+
+ * tex-fold.el (TeX-fold-expand-spec): Make sure the expansion of a
+ placeholder is not processed again.
+
+2011-04-15 Ralf Angeli <angeli@caeruleus.net>
+
+ * font-latex.el (font-latex-built-in-keyword-classes): Make a few
+ additions and corrections.
+
+ * latex.el (LaTeX-common-initialization): Prompt for file
+ extension instead of name when inserting \addcontentsline or
+ \addtocontents.
+
+2011-04-10 Ralf Angeli <angeli@caeruleus.net>
+
+ * tex.el (TeX-source-correlate-mode): Check for D-Bus session.
+
+2011-04-10 Antoine Levitt <antoine.levitt@gmail.com> (tiny change)
+
+ * tex.el (TeX-source-correlate-sync-source): Do not use
+ `goto-line'.
+
+2011-04-03 Ralf Angeli <angeli@caeruleus.net>
+
+ * Makefile.in (STYLESRC): Add style/xspace.el.
+
+ * style/xspace.el: Add copyright notice and license blurb.
+ Correct a few things.
+
+2011-04-03 Mads Jensen <mje@inducks.org>
+
+ * style/xspace.el: New file.
+
+2011-03-27 Tassilo Horn <tassilo@member.fsf.org>
+
+ * tex.el (TeX-source-correlate-mode): Add support for I/O
+ correlation mode inverse search for the Evince document viewer.
+
+2011-03-23 Ralf Angeli <angeli@caeruleus.net>
+
+ * style/bulgarian.el, style/czech.el, style/danish.el,
+ style/frenchb.el, style/icelandic.el, style/polish.el,
+ style/polski.el, style/slovak.el, style/swedish.el: Do not set
+ `TeX-quote-language' if `override' is in effect.
+
+2011-03-20 Ralf Angeli <angeli@caeruleus.net>
+
+ * tex-buf.el (TeX-synchronous-sentinel): Strip directory part of
+ master file because we are already in the master directory.
+
+2011-03-13 Ralf Angeli <angeli@caeruleus.net>
+
+ * Makefile.in (STYLESRC): Add style/lettrine.el and
+ style/multicol.el.
+
+ * style/lettrine.el: Add copyright notice and license blurb.
+ Correct a few things.
+
+ * style/multicol.el: Add copyright notice and license blurb.
+ Simplify environment definitions. Provide completion for lengths
+ the package defines. Get rid of indentation and filling barrier.
+ Remove fontification definitions.
+
+2011-03-13 Mads Jensen <mje@inducks.org>
+
+ * style/lettrine.el: New file.
+
+ * style/multicol.el: New file.
+
+2011-02-27 Ralf Angeli <angeli@caeruleus.net>
+
+ * latex.el (LaTeX-common-initialization): Add support for
+ \ProvidesPackage.
+
+2011-02-06 Ralf Angeli <angeli@caeruleus.net>
+
+ * style/letter.el (LaTeX-env-recipient): Use \renewcommand instead
+ of \def to set date.
+
+2011-01-30 Ralf Angeli <angeli@caeruleus.net>
+
+ * tex.el (TeX-parse-macro): Do not insert braces if the argument
+ is 0 or less.
+ (TeX-parse-argument): Put both the macro and the marked region in
+ a TeX group if the argument is less than 0.
+
+ * latex.el (LaTeX-common-initialization): Give macros that change
+ font size a -1 argument so that braces are added around them if
+ if there is an active region.
+
+ * doc/auctex.texi (Adding Macros): Document special options 0 and
+ -1 for number-type specs.
+
+2011-01-29 Ralf Angeli <angeli@caeruleus.net>
+
+ * tex.el (TeX-complete-symbol): Get rid of the window with the
+ completions when possible.
+
+2011-01-23 Ralf Angeli <angeli@caeruleus.net>
+
+ * tex-fold.el (TeX-fold-post-command): Add `forward-char' and
+ `backward-char' to commands on which to open an overlay.
+
+ * doc/auctex.texi (Adding Macros): Mention
+ `TeX-arg-input-file-search'.
+
+2011-01-22 Ralf Angeli <angeli@caeruleus.net>
+
+ * tex.el (TeX-tree-expand): Make `subdirs' parameter optional. Do
+ not try to call kpsewhich with --expand-braces anymore and adapt
+ code for handling of results accordingly.
+ (TeX-doc-extenstions): New variable.
+ (TeX-tree-roots): New function.
+ (TeX-tree-roots): New user option.
+ (TeX-kpathsea-format-alist): Remove.
+ (TeX-search-files-kpathsea): Add and use `extensions' and `scope'
+ parameters.
+ (TeX-search-files): Do not call `TeX-search-files-kpathsea'
+ anymore.
+ (TeX-search-files-type-alist): New variable.
+ (TeX-search-files-by-type): New function.
+
+ * latex.el (LaTeX-arg-usepackage): Let-bind
+ `TeX-input-file-search'.
+ (LaTeX-search-files-type-alist): New user option.
+ (TeX-arg-input-file-search): Doc fix.
+ (TeX-arg-input-file, TeX-arg-bibstyle, TeX-arg-bibliography): Use
+ `TeX-search-files-by-type' instead of `TeX-search-files'.
+ (LaTeX-common-initialization): Set `TeX-search-files-type-alist'.
+
+2011-01-09 Ralf Angeli <angeli@caeruleus.net>
+
+ * latex.el (LaTeX-common-initialization): Add support for
+ \settoheight and \settodepth.
+
+2010-12-26 Ralf Angeli <angeli@caeruleus.net>
+
+ * doc/auctex.texi (Simple Style): Add a note about the naming of
+ the style file and the style hook.
+
+2010-12-12 Ralf Angeli <angeli@caeruleus.net>
+
+ * latex.el (LaTeX-env-args): Add the optional argument at the
+ right position when wrapping the environment around existing text.
+
+2010-12-05 Ralf Angeli <angeli@caeruleus.net>
+
+ * context.el: Set up abbrev table.
+ (ConTeXt-mode-common-initialization): Set `local-abbrev-table'.
+
+ * latex.el: Set up abbrev table for LaTeX and docTeX mode.
+ (docTeX-mode): Set abbrev table.
+ (LaTeX-common-initialization): Set `local-abbrev-table'.
+
+ * plain-tex.el: Set up abbrev table.
+ (plain-TeX-common-initialization): Set `local-abbrev-table'.
+
+ * tex.el (TeX-mode-prefix): Add mode parameter.
+ (VirTeX-common-initialization): Do not set `local-abbrev-table'
+ anymore.
+ (TeX-abbrev-mode-setup): New function.
+
+ * doc/changes.texi: Mention change of abbrev handling.
+
+2010-12-04 Ralf Angeli <angeli@caeruleus.net>
+
+ * latex.el (LaTeX-verbatim-macro-boundaries): Support verbatim
+ macros with braces.
+
+2010-12-04 Augusto Ritter Stoffel <arstoffel@inf.ufrgs.br> (tiny change)
+
+ * latex.el (LaTeX-math-keymap): Define a key for the math prefix
+ only if it has not been used as a prefix after the prefix.
+
+2010-11-16 Ralf Angeli <angeli@caeruleus.net>
+
+ * tex.el (TeX-view-program-list-builtin): Add Okular.
+
+2010-10-17 Ralf Angeli <angeli@caeruleus.net>
+
+ * latex.el (TeX-arg-input-file-search): New user option.
+ (TeX-arg-input-file): Use it.
+
+2010-10-11 Ralf Angeli <angeli@caeruleus.net>
+
+ * tex.el (TeX-synctex-output-page): Return "1" if no page number
+ can be found to prevent an infinite loop in command expansion.
+
+2010-10-02 Ralf Angeli <angeli@caeruleus.net>
+
+ * style/beamer.el ("beamer"): Prompt for block title.
+
+2010-09-28 Ralf Angeli <angeli@caeruleus.net>
+
+ * context.el (ConTeXt-extra-paragraph-commands): Remove.
+ (ConTeXt-language-variable-list): Add
+ `ConTeXt-extra-paragraph-commands'.
+
+ * context-en.el (ConTeXt-extra-paragraph-commands-en): New
+ variable.
+
+ * context-nl.el (ConTeXt-extra-paragraph-commands-nl): New
+ variable.
+
+2010-09-18 Ralf Angeli <angeli@caeruleus.net>
+
+ * context.el (ConTeXt-expand-options): Eval value from engine
+ alist.
+
+2010-09-12 Ralf Angeli <angeli@caeruleus.net>
+
+ * tex-fptex.el: Remove.
+
+ * Makefile.in (AUCSRC): Reflect removal of tex-fptex.el.
+
+ * doc/wininstall.texi: Reflect removal of tex-fptex.el.
+
+ * style/virtex.el: Mention author. Do not unnecessarily protect
+ `lambda' with `function'.
+
+ * font-latex.el (font-latex-keyword-matcher): Refine last change
+ to work properly with lists of face symbols.
+
+2010-09-11 Ralf Angeli <angeli@caeruleus.net>
+
+ * style/natbib.el: Update copyright information.
+
+ * style/letter.el: Update copyright information.
+
+ * style/harvard.el: Update copyright information.
+
+ * style/doc.el: Do not unnecessarily protect `lambda' with
+ `function'.
+
+2010-09-06 Arne J¸rgensen <arne@arnested.dk>
+
+ * style/danish.el: Changed font-latex-add-quotes from french to
+ german.
+
+2010-08-30 Ralf Angeli <angeli@caeruleus.net>
+
+ * style/ngerman.el: Prevent "| from leading to color bleed.
+
+ * style/german.el: Prevent "| from leading to color bleed.
+
+2010-08-29 Ralf Angeli <angeli@caeruleus.net>
+
+ * doc/preview-dtxdoc.pl: Use explicit variable with split instead
+ of implicit split to @_ which does not work anymore in Perl 5.12.
+
+2010-07-11 Ralf Angeli <angeli@caeruleus.net>
+
+ * tex-info.el: Delete trailing whitespace.
+
+2010-07-04 Ralf Angeli <angeli@caeruleus.net>
+
+ * doc/faq.texi: Update infos about Emacs versions. Add FAQ entry
+ for file:line:error messages in case `TeX-next-error' fails due to
+ unbalanced parens.
+
+ * tex.el (TeX-print-command, TeX-queue-command)
+ (TeX-printer-list): Switch back to Berkeley-style commands.
+
+2010-06-24 Ralf Angeli <angeli@caeruleus.net>
+
+ * doc/auctex.texi (Texinfo mode): Make a few corrections.
+
+2010-06-19 Berend de Boer <berend@pobox.com>
+
+ * context.el: proper indent of all macros that can appear inside
+ an itemize list such as \sym.
+
+2010-06-12 Ralf Angeli <angeli@caeruleus.net>
+
+ * tex-info.el (Texinfo-find-env-end, Texinfo-find-env-start):
+ Enable the commands to be used repeatedly without getting stuck at
+ an environment start or end respectively.
+
+2010-05-27 Ralf Angeli <angeli@caeruleus.net>
+
+ * autogen.sh: Set LANG=C when looking into ChangeLog for
+ AUCTEXDATE.
+
+2010-05-24 Vincent BelaŻche <vincent.belaiche@gmail.com>
+
+ * doc/auctex.texi (Texinfo mode): New section.
+
+2010-05-17 Ralf Angeli <angeli@caeruleus.net>
+
+ * tex.el (TeX-math-input-method-off-regexp): Fix regexp.
+
+2010-04-25 Ralf Angeli <angeli@caeruleus.net>
+
+ * tex.el (TeX-print-command): Support printing of Postscript and
+ PDF files. Doc fix.
+ (TeX-queue-command): Use lpstat instead of lpq. Doc fix.
+ (TeX-printer-list): Support printing of Postscript and PDF files.
+ Make use of System V style commands (lp, lpstat) instead of
+ Berkeley style (lpr, lpq).
+ (TeX-printer-default): Doc fix.
+
+2010-04-17 Ralf Angeli <angeli@caeruleus.net>
+
+ * tex-buf.el (TeX-warning): Throw an error with a sensible message
+ if the file for the warning could not be determined.
+
+2010-04-13 Ralf Angeli <angeli@caeruleus.net>
+
+ * tex-buf.el (TeX-format-filter): Calculate the current column as
+ difference between line start and end instead of using
+ `current-column' in order to do the right thing when octal codes
+ are present.
+
+2010-04-11 Ralf Angeli <angeli@caeruleus.net>
+
+ * font-latex.el (font-latex-keyword-matcher): Quote a list of face
+ properties but do not to quote a face symbol.
+
+2010-04-05 Ralf Angeli <angeli@caeruleus.net>
+
+ * tex-buf.el (TeX-parse-error): Allow `TeX-error-file' to become
+ empty.
+
+2010-03-28 Ralf Angeli <angeli@caeruleus.net>
+
+ * plain-tex.el: New file.
+
+ * tex.el: Move code related to plain TeX to plain-tex.el.
+
+ * Makefile.in (AUCSRC): Add plain-tex.el.
+
+ * context.el: Require `plain-tex'.
+
+2010-03-27 Ralf Angeli <angeli@caeruleus.net>
+
+ * tex.el (TeX-view-program-selection): Doc fix.
+ (TeX-clean): Regexp-quote the master file name.
+
+2010-03-20 Ralf Angeli <angeli@caeruleus.net>
+
+ * style/french.el: New file.
+
+ * Makefile.in (STYLESRC): Add style/french.el.
+
+2010-03-07 Ralf Angeli <angeli@caeruleus.net>
+
+ * latex.el (TeX-arg-key-val): Hint at key=value format in prompt.
+ (LaTeX-fill-region-as-para-do): Match whitespace without comment
+ starter at beginning of line when dealing with code comments.
+
+2010-03-06 Ralf Angeli <angeli@caeruleus.net>
+
+ * Makefile.in (DIST_PREFIX): Use the working directory for the
+ folder with distribution files.
+ (FTPDIR, WWWDIR): Make them subdirectories of `DIST_PREFIX'.
+ (COMMITTER_NAME, COMMITTER_EMAIL): Remove.
+ (COMMITTER): New variable.
+ (.PHONY): Update.
+ (tar-ball-clean): Use `check-tag'.
+ (check-tag): New name for `check-dist'.
+ (dist): Do not call `release-commit' anymore.
+ (snapshot): Now an alias for `dist'.
+ (release-commit): Use `COMMITTER'.
+ (release-sign): New name for `full-release' target. Generate
+ version 1.1 directive files.
+ (xemacs-package): Depend on `check-tag'.
+ (WPACKAGEFILES): Include info files with a numerical supplement to
+ the .info extension. Depend on `check-tag'. Check for presence
+ of `WEMACSVER' variable. Try to find a local AUCTeX tar ball
+ before downloading one. Use `TAG' instead of `WAUCVER'. Put ZIP
+ archive into `FTPDIR'.
+ (WAUCVER, WEMACSVER): Remove.
+ (release-upload): New target.
+ (www-doc): Depend on `check-tag'. Update URLs for Emacs manuals.
+
+2010-02-21 Ralf Angeli <angeli@caeruleus.net>
+
+ * Version 11.86 released.
+
+2010-02-21 Ralf Angeli <angeli@caeruleus.net>
+
+ * RELEASE: Update for upcoming release.
+
+ * doc/install.texi (Prerequisites): Update information about Emacs
+ distributions.
+
+ * doc/tex-ref.tex: Bump version number. Update section on TeXing
+ options.
+
+ * configure.ac: Bump version number.
+
+ * auctex.spec (Version): Bump version number.
+
+ * doc/fdl.texi: Switch to GFDL 1.3.
+
+ * doc/auctex.texi: Switch to GFDL 1.3.
+
+ * doc/preview-latex.texi: Switch to GFDL 1.3.
+
+ * doc/changes.texi: Update for next release.
+
+2010-02-20 Ralf Angeli <angeli@caeruleus.net>
+
+ * tex.el (TeX-doc): Add a fallback in case nothing is found via
+ the backend list, e.g. when using MiKTeX 2.8.
+
+ * doc/auctex.texi (Documentation): Document change in `TeX-doc'.
+
+2010-02-14 Ralf Angeli <angeli@caeruleus.net>
+
+ * doc/changes.texi: Mention preview.sty supporting XeTeX.
+
+2010-02-13 Ralf Angeli <angeli@caeruleus.net>
+
+ * tex.el (TeX-XeTeX-command, LaTeX-XeTeX-command): Remove.
+ (ConTeXt-engine): Doc fix.
+ (ConTeXt-Omega-engine): Doc fix. Make obsolote.
+ (TeX-expand-list): Add support for LuaTeX. Adapt to new engine
+ handling.
+ (AUC-TeX-version, AUC-TeX-date): Remove.
+ (TeX-engine-alist-builtin): New variable.
+ (TeX-engine-alist): Adapt to new engine handling and make it a
+ defcustom.
+ (TeX-engine-alist): New function.
+ (TeX-engine): Adapt to new engine handling and make it
+ buffer-local.
+ (LaTeX-engine-alist): Remove.
+ (TeX-engine-set): Adapt to new engine handling and take care of
+ TeX PDF mode.
+ (TeX-clean-default-output-suffixes): Add .xdv.
+ (TeX-mode-specific-command-menu-entries): Construct list of
+ engines from `TeX-engine-alist'.
+
+ * context.el (ConTeXt-expand-options): Adapt to new engine
+ handling.
+
+ * doc/auctex.texi (Processor Options): Document options and
+ functions of new engine handling.
+
+2009-12-30 Ralf Angeli <angeli@caeruleus.net>
+
+ * tex.el (TeX-view-command-raw): Abort if no matching viewer is
+ found.
+
+ * doc/preview-faq.texi (Troubleshooting): Add some hints about
+ preview-latex overwriting output files.
+
+2009-12-28 Ralf Angeli <angeli@caeruleus.net>
+
+ * style/austrian.el: New file.
+
+ * style/naustrian.el: New file.
+
+ * Makefile.in (STYLESRC): Add style/austrian.el and
+ style/naustrian.el.
+
+2009-12-26 Ralf Angeli <angeli@caeruleus.net>
+
+ * doc/auctex.texi (Known problems): New subsection on dealing with
+ font locking problems.
+
+ * font-latex.el (font-latex-syntax-alist): New variable.
+ (font-latex-add-to-syntax-alist): New function.
+ (font-latex-setup): Use `font-latex-syntax-alist'.
+
+ * style/shortvrb.el: New file.
+
+ * Makefile.in (STYLESRC): Add style/shortvrb.el.
+
+ * tex-style.el (LaTeX-shortvrb-chars): New variable.
+
+ * doc/changes.texi: Document changes after 11.85.
+
+ * context.el (ConTeXt-expand-options): Check for XeTeX engine, not
+ for mode which does not exist anymore.
+
+ * tex.el (plain-TeX-common-initialization): Let commented lines be
+ matched by `paragraph-separate' in order for commented and
+ non-commented paragraphs to be filled separately.
+
+2009-12-12 Ralf Angeli <angeli@caeruleus.net>
+
+ * tex-buf.el (TeX-parse-error): Also find quoted file names with
+ newlines. Remove the newlines from the matched string if
+ necessary.
+
+2009-12-07 Ralf Angeli <angeli@caeruleus.net>
+
+ * tex-buf.el (TeX-parse-error): Add an alternative in the parser
+ regexp for quoted file names. Strip the quotation marks if a file
+ name was found with the alternative.
+
+2009-12-06 Ralf Angeli <angeli@caeruleus.net>
+
+ * tex-fold.el (TeX-fold-command-prefix): New variable.
+ (TeX-fold-mode): Use it.
+ (TeX-fold-keymap): Remove prefix strings.
+
+ * tex.el (TeX-fold-menu): Remove hard-coded key binding labels.
+
+ * doc/auctex.texi (Folding): Mention `TeX-fold-command-prefix'.
+
+2009-11-22 Ralf Angeli <angeli@caeruleus.net>
+
+ * doc/wininstall.texi: Do not refer to Emacs 22 anymore. Improve
+ the paragraphs about PNG support.
+
+2009-11-01 Ralf Angeli <angeli@caeruleus.net>
+
+ * style/pstricks.el: Disable key bindings for macro parameter
+ addition and change.
+ (LaTeX-pst-color-list, LaTeX-pst-boolean-list)
+ (LaTeX-pst-fillstyle-list): Remove information for completion
+ mechanism.
+ (LaTeX-pst-trimode-list, LaTeX-pst-linestyle-list): Remove.
+ Handled directly in `LaTeX-pst-basic-parameters-list'.
+ (LaTeX-pst-basic-parameters-list): New variable.
+ (LaTeX-pst-parameters): Call `TeX-arg-key-val' instead of
+ `LaTeX-package-parameters' and thereby use a different completion
+ mechanism.
+ (LaTeX-pst-macro-psdots): Do not add a dotstyle parameter.
+ (LaTeX-pst-env-pspicture): Handle optional parameter via
+ `multi-prompt-key-value'.
+ ("pstricks"): Handle arguments of \psdot and \psdots correctly.
+
+2009-10-31 Ralf Angeli <angeli@caeruleus.net>
+
+ * tex.el (TeX-verbatim-p-function): New variable.
+ (TeX-verbatim-p): New function.
+ (TeX-in-comment): Use it.
+ (TeX-brace-count-line): Use `TeX-in-comment' instead of just
+ checking for a comment character.
+
+ * latex.el (LaTeX-common-initialization): Set
+ `TeX-verbatim-p-function'.
+
+2009-10-25 Ralf Angeli <angeli@caeruleus.net>
+
+ * doc/auctex.texi (Starting Viewers): Describe new viewer
+ selection options.
+ (Folding): Add some hints on how to do automatic folding.
+
+ * tex.el (TeX-view-predicate-list-builtin)
+ (TeX-view-predicate-list, TeX-view-program-list): Doc fix.
+ (TeX-view-program-list-builtin, TeX-view-program-selection):
+ Conditionalize default value based on system type. Doc fix.
+ (TeX-synctex-output-page): Do not return random stuff if there was
+ no match.
+ (TeX-clean-default-intermediate-suffixes): Remove SyncTeX files as
+ well.
+
+2009-10-21 Ralf Angeli <angeli@caeruleus.net>
+
+ * tex.el (TeX-synctex-output-page): Handle files in subdirectories
+ correctly.
+
+2009-10-18 Ralf Angeli <angeli@caeruleus.net>
+
+ * tex-buf.el (TeX-run-discard): Doc fix.
+ (TeX-run-discard-or-function): New function.
+
+ * tex.el (TeX-command-list): Use `TeX-run-discard-or-function' as
+ hook for View command and provide it as a customization option.
+ (TeX-view-program-list): Add the possibility to use a function to
+ call the viewer.
+ (TeX-view-command-raw): Support the use of a function to call the
+ viewer.
+
+2009-10-11 Ralf Angeli <angeli@caeruleus.net>
+
+ * tex.el (TeX-view-predicate-list-builtin): Remove combined
+ predicates for paper properties and add new predicates testing
+ only one property.
+ (TeX-view-program-list-builtin): Use new predicates.
+ (TeX-view-program-list): Provide the possibility to use a list of
+ predicates.
+
+2009-10-10 Ralf Angeli <angeli@caeruleus.net>
+
+ * tex.el (TeX-view-program-list): Shave off extra closing paren.
+
+2009-10-04 Ralf Angeli <angeli@caeruleus.net>
+
+ * tex.el (LaTeX-command-style, TeX-print-style, TeX-view-style):
+ Doc fix.
+ (TeX-view-predicate-list-builtin, TeX-view-program-list-builtin):
+ New variables.
+ (TeX-view-predicate-list, TeX-view-program-list)
+ (TeX-view-program-selection): New user options.
+ (TeX-match-style, TeX-view-match-predicate)
+ (TeX-view-command-raw): New functions.
+ (TeX-expand-list): Use `TeX-view-command-raw' for %V expander.
+
+2009-09-13 Ralf Angeli <angeli@caeruleus.net>
+
+ * tex-buf.el (TeX-error): Cater for case of file:line:error
+ messages without context.
+ (TeX-parse-error): Add support for quoted file names with
+ backslashes as path separators. Those might be emitted by MiKTeX
+ 2.8.
+
+2009-06-14 Ralf Angeli <angeli@caeruleus.net>
+
+ * doc/auctex.texi (Indenting): Mention `LaTeX-item-regexp'.
+ (Fontification of math): New section replacing and extending
+ `Subscript and superscript'.
+
+2009-04-26 Ralf Angeli <angeli@caeruleus.net>
+
+ * tex.el (TeX-source-correlate-mode): Clean `custom-requests'
+ property.
+ (VirTeX-common-initialization): Call `TeX-source-correlate-mode'
+ minor mode function when initializing the mode instead of when
+ loading the file.
+
+2009-04-13 Ralf Angeli <angeli@caeruleus.net>
+
+ * latex.el (TeX-arg-key-val): Eval `key-val-alist' argument if it
+ is a symbol.
+
+ * style/listings.el ("listings"): Do not eval arguments of
+ `TeX-arg-key-val'.
+
+ * multi-prompt.el (multi-prompt-expand-completion-table): New
+ function.
+ (multi-prompt-key-value): Use it.
+
+ * style/pstricks.el: Correct header info.
+ (LaTeX-pst-input-int, LaTeX-pst-point, LaTeX-pst-angle)
+ (LaTeX-pst-extdir, LaTeX-pst-arrows, LaTeX-pst-dotstyle-list)
+ (LaTeX-pst-refpoint-list, LaTeX-pst-refpoint)
+ (LaTeX-pst-macro-multirputps, LaTeX-pst-env-pspicture): Improve or
+ correct prompt.
+ ("pstricks"): Move to the bottom of the file. Do not use
+ `function' to quote `lambda'. Turn off TeX PDF mode. Use `mapc'
+ instead of `mapcar'.
+
+2009-04-05 Ralf Angeli <angeli@caeruleus.net>
+
+ * tex-buf.el (TeX-help-error): Make search for help text in log
+ file more robust.
+
+2009-04-04 Ralf Angeli <angeli@caeruleus.net>
+
+ * style/listings.el ("listings"): Remove redundant list when
+ calling `TeX-arg-key-val'. Use `LaTeX-env-args' for lstlisting
+ environment.
+
+ * latex.el (LaTeX-env-args): New function.
+ (TeX-arg-conditional, TeX-arg-eval, TeX-arg-label)
+ (TeX-arg-index-tag, TeX-arg-index, TeX-arg-macro)
+ (TeX-arg-environment, TeX-arg-cite, TeX-arg-counter)
+ (TeX-arg-savebox, TeX-arg-file, TeX-arg-define-label)
+ (TeX-arg-define-macro, TeX-arg-define-environment)
+ (TeX-arg-define-cite, TeX-arg-define-counter)
+ (TeX-arg-define-savebox, TeX-arg-document, LaTeX-arg-usepackage)
+ (TeX-arg-input-file, TeX-arg-bibstyle, TeX-arg-bibliography)
+ (TeX-arg-corner, TeX-arg-lr, TeX-arg-tb, TeX-arg-pagestyle)
+ (TeX-arg-verb, TeX-arg-pair, TeX-arg-size, TeX-arg-coordinate)
+ (TeX-arg-insert-braces): Doc fix.
+
+ * multi-prompt.el (multi-prompt-separator): Remove.
+ (multi-prompt-key-value-collection-fn): Do not search for
+ `multi-prompt-separator'.
+ (crm-local-must-match-map, crm-local-completion-map): Silence the
+ byte compiler.
+ (multi-prompt-key-value): Require crm.el here and not at
+ top-level.
+
+ * tex-info.el (TeX-texinfo-mode): Add @lowersections and
+ @raisesections.
+
+ * doc/auctex.texi (Adding Environments): Document hooks for
+ `LaTeX-add-environments'.
+
+2009-03-29 Ralf Angeli <angeli@caeruleus.net>
+
+ * style/listings.el (LaTeX-listings-key-val-options): New
+ variable.
+ ("listings"): Use it. Check for font-latex function, not feature.
+
+ * latex.el (TeX-arg-key-val): New function.
+
+ * multi-prompt.el: Require crm.el.
+ (multi-prompt-separator, multi-prompt-key-value-sep)
+ (multi-prompt-completion-table): New variables.
+ (multi-prompt-key-value-collection-fn, multi-prompt-key-value):
+ New functions.
+
+2009-03-22 Ralf Angeli <angeli@caeruleus.net>
+
+ * tex-site.el.in: Revitalize support for completion in \cite
+ macros via `BibTeX-auto-store'.
+
+2009-03-02 Holger Sparr <holger.sparr@gmx.net>
+
+ * Makefile.in (STYLESRC): Add style/multido.el;
+ style/pst-{grad|node|plot|slpe}.el
+
+2009-03-01 Ralf Angeli <angeli@caeruleus.net>
+
+ * latex.el (LaTeX-verbatim-macro-boundaries): Do step backwards at
+ beginning of buffer.
+ (LaTeX-search-forward-comment-start): Treat find of comment at
+ limit correctly.
+
+ * tex-fold.el (TeX-fold-comment-do): Abort backward search for
+ comment start at beginning of buffer. Do not fold empty comment.
+
+2009-02-24 Holger Sparr <holger.sparr@gmx.net>
+
+ * style/multido.el: New file.
+
+ * style/pst-grad.el: New file.
+
+ * style/pst-node.el: New file.
+
+ * style/pst-plot.el: New file.
+
+ * style/pst-slpe.el: New file.
+
+2009-02-23 Holger Sparr <holger.sparr@gmx.net>
+
+ * style/pstricks.el: Actually implement support for writing
+ PSTricks code.
+
+2009-02-22 Ralf Angeli <angeli@caeruleus.net>
+
+ * doc/auctex.texi (Multi-line fontification): Remove.
+
+ * doc/todo.texi (Wishlist): Fix typo. Remove entry which is
+ already supported.
+
+ * style/tabularx.el: New file.
+
+ * Makefile.in (STYLESRC): Add style/tabularx.el
+
+2009-02-15 Ralf Angeli <angeli@caeruleus.net>
+
+ * style/natbib.el ("natbib"): Check for font-latex function rather
+ than feature. Add fontification spec for \cite.
+
+ * doc/auctex.texi (Simple Style): Bring example in line with
+ reality.
+
+2009-01-24 Ralf Angeli <angeli@caeruleus.net>
+
+ * tex.el (TeX-source-correlate-method): Doc fix.
+ (TeX-source-correlate-mode): Call minor mode function after file
+ is loaded.
+
+2009-01-14 Ralf Angeli <angeli@caeruleus.net>
+
+ * latex.el (LaTeX-babel-insert-hyphen): Put `delete-selection'
+ property on function symbol.
+
+2009-01-04 Ralf Angeli <angeli@caeruleus.net>
+
+ * style/CJK.el: New file.
+
+ * style/ruby.el: New file. Correct argument numbers of \rubysize
+ and \rubysep.
+
+ * style/CJKutf8.el: New file.
+
+ * Makefile.in (STYLESRC): Add style/CJK.el and style/ruby.el. Add
+ style/CJKutf8.el.
+
+2009-01-03 Ralf Angeli <angeli@caeruleus.net>
+
+ * style/flashcards.el ("flashcards"): Test for font-latex function
+ instead of feature. Reflect that \cardbackstyle has an optional
+ argument.
+
+2008-12-29 Ralf Angeli <angeli@caeruleus.net>
+
+ * style/hyperref.el ("hyperref"): Test for font-latex function
+ instead of feature. Activate hyperref referencing style if
+ possible.
+
+2008-12-28 Ralf Angeli <angeli@caeruleus.net>
+
+ * tex-buf.el (TeX-current-pages): Get rid of trailing periods.
+ (TeX-LaTeX-sentinel): Add support for longtable warning. Use only
+ one search per condition. Call `message' like `format'.
+
+2008-12-22 Ralf Angeli <angeli@caeruleus.net>
+
+ * tex.el (TeX-doc-backend-alist): Call `TeX-tree-expand' instead
+ of `TeX-macro-global-internal'.
+
+ * tex-jp.el (TeX-macro-global): Call `TeX-tree-expand' instead of
+ `TeX-macro-global-internal'.
+
+ * latex.el (LaTeX-env-item): Deactivate the mark before inserting
+ \item.
+ (LaTeX-insert-item): Swap point and mark when mark if necessary.
+ Insert newline only when not at beginning of line.
+
+ * tex.el (TeX-deactivate-mark): New function.
+ (TeX-parse-argument): Use it.
+
+2008-12-21 Ralf Angeli <angeli@caeruleus.net>
+
+ * tex.el (TeX-auto-private, TeX-style-private): Per default
+ propose a place in the user's Emacs directory, not in the TeX
+ tree.
+ (TeX-style-path): Add values to the end of the list. Doc fix.
+
+ * doc/auctex.texi (Automatic Private): Adjust descriptions of
+ `TeX-macro-private', `TeX-auto-private', and `TeX-style-private'.
+
+2008-12-16 Ralf Angeli <angeli@caeruleus.net>
+
+ * tex.el (TeX-tree-expand): New name for
+ `TeX-macro-global-internal'. Adapt parameter list to make it more
+ flexible. Update doc string. Do not return removed default
+ argument.
+ (TeX-macro-global): Change to accomodate new interface of
+ `TeX-tree-expand'.
+ (TeX-macro-private): New function.
+ (TeX-macro-private): Use it to determine variable value.
+
+2008-12-13 Ralf Angeli <angeli@caeruleus.net>
+
+ * tex.el (plain-TeX-clean-intermediate-suffixes)
+ (plain-TeX-clean-output-suffixes): New variables.
+
+2008-12-01 Ralf Angeli <angeli@caeruleus.net>
+
+ * tex.el (VirTeX-common-initialization): Revert last change.
+
+2008-11-30 Ralf Angeli <angeli@caeruleus.net>
+
+ * tex.el (VirTeX-common-initialization): Do not add call to
+ `TeX-update-style' to `find-file-hooks' but call it directly.
+
+2008-11-23 Ralf Angeli <angeli@caeruleus.net>
+
+ * tex.el (TeX-source-correlate-determine-method): Use configured
+ LaTeX command and find -synctex switch even if there are spaces in
+ front of it, as e.g. with MiKTeX.
+ (TeX-format-list): Use \subsection and \subsubsection as well to
+ identify a LaTeX file.
+
+2008-11-02 Ralf Angeli <angeli@caeruleus.net>
+
+ * font-latex.el (font-latex-match-math-env)
+ (font-latex-extend-region-backwards-math-env): Do not match
+ \\[...].
+
+ * tex-fold.el (TeX-fold-expand-spec): Do not treat `\' special in
+ replacement text.
+
+2008-10-26 Ralf Angeli <angeli@caeruleus.net>
+
+ * tex.el (plain-TeX-common-initialization): Respect double dollar,
+ i.e. "$$", as a paragraph separator.
+
+2008-10-14 Ralf Angeli <angeli@caeruleus.net>
+
+ * latex.el (LaTeX-current-environment): Fix handling of commented
+ parts.
+
+ * tex.el (TeX-comment-prefix): Save match data.
+
+2008-10-13 Ralf Angeli <angeli@caeruleus.net>
+
+ * doc/changes.texi, doc/install.texi, doc/intro.texi,
+ doc/preview-readme.texi, doc/quickstart.texi: Make some
+ corrections and updates.
+
+2008-10-12 Ralf Angeli <angeli@caeruleus.net>
+
+ * tex-buf.el (TeX-warning): Fix regexp for detecting bad boxes.
+
+2008-10-11 Ralf Angeli <angeli@caeruleus.net>
+
+ * tex.el (TeX-set-mode-name): Indicate TeX PDF mode as a trailing
+ flag.
+ (TeX-engine): Doc fix.
+
+ * doc/auctex.texi: Restructure some parts. Update and extend it a
+ bit to reflect the recent changes of functionality.
+
+2008-10-07 Ralf Angeli <angeli@caeruleus.net>
+
+ * tex.el (TeX-interactive-mode): Add to `minor-mode-alist'.
+ ("desktop"): Remove `TeX-interactive-mode' from
+ `desktop-locals-to-save'.
+
+2008-10-06 Ralf Angeli <angeli@caeruleus.net>
+
+ * latex.el (LaTeX-paragraph-commands-regexp-make): Make it work
+ for the case that `LaTeX-paragraph-commands' is set.
+
+2008-10-05 Ralf Angeli <angeli@caeruleus.net>
+
+ * tex.el (TeX-engine): New variable.
+ (TeX-expand-list): Use it instead of XeTeX and Omega mode
+ variables.
+ (hack-one-local-variable): Remove references to XeTeX and Omega
+ mode variables.
+ (TeX-set-mode-name): Remove lighters for XeTeX and Omega mode.
+ (TeX-engine-alist, LaTeX-engine-alist): New variables.
+ (TeX-engine-set): New function.
+ (TeX-Omega-mode): Mark as obsolete. Remove defcustom.
+ (TeX-PDF-mode): Use `TeX-engine' instead of mode variables.
+ (TeX-XeTeX-mode): Remove.
+ (TeX-mode-map): Remove key bindings for toggling XeTeX and Omega
+ mode.
+ (TeX-mode-specific-command-menu-entries): Use new facilities for
+ switching TeX engines.
+ ("desktop"): Remove reference to TeX Omega mode.
+
+ * context.el (ConTeXt-expand-options): Use `TeX-engine' instead of
+ XeTeX and Omega mode variables.
+
+2008-09-07 Ralf Angeli <angeli@caeruleus.net>
+
+ * tex.el (TeX-PDF-mode): Add to `minor-mode-alist'. Use "" as
+ lighter.
+ ("desktop"): Remove `TeX-PDF-mode' from `desktop-locals-to-save'.
+
+ * latex.el (LaTeX-mark-environment): Swap beg and end.
+
+2008-08-02 Ralf Angeli <angeli@caeruleus.net>
+
+ * tex-bar.el (TeX-bar-TeX-buttons, TeX-bar-LaTeX-buttons): Mimic
+ the default tool bars more closely.
+
+2008-08-02 Reiner Steib <reiner.steib@gmx.de>
+
+ * toolbar-x.el (toolbarx-default-toolbar-meaning-alist): Provide
+ different defaults for different Emacs and XEmacs versions.
+ Conditionally add a `new-file' entry.
+
+2008-07-28 Ralf Angeli <angeli@caeruleus.net>
+
+ * toolbar-x.el (toolbarx-image-path): Protect against load-path
+ items being nil.
+
+ * style/foils.el (LaTeX-style-foils): Silence the byte compiler.
+
+ * style/epsf.el (TeX-arg-epsfsize): Silence the byte compiler.
+
+ * tex.el (TeX-source-specials-view-start-server): Alias only if
+ `defvaralias' is available.
+ (TeX-master, TeX-convert-master): Move upwards to prevent some
+ compiler warnings.
+
+2008-07-27 Ralf Angeli <angeli@caeruleus.net>
+
+ * tex.el (TeX-synctex-tex-flags): New variable.
+ (TeX-source-correlate-expand-options): Use it.
+ (TeX-source-specials-tex-flags): Remove possibility to create
+ lists.
+
+ * context.el (ConTeXt-expand-options): Support TeX XeTeX mode and
+ TeX Source Correlate mode.
+
+2008-07-24 Ralf Angeli <angeli@caeruleus.net>
+
+ * tex.el (TeX-source-specials-mode): Fix last change.
+
+2008-07-23 Ralf Angeli <angeli@caeruleus.net>
+
+ * tex.el (TeX-expand-list): Prevent "%(PDF)" expander from
+ returning "pdf" if `TeX-XeTeX-mode' is active. Make "%(tex)" and
+ "%(latex)" expanders aware of the XeTeX commands.
+ (hack-one-local-variable): Cater for `TeX-XeTeX-mode'.
+ (TeX-set-mode-name): Cater for `TeX-XeTeX-mode'.
+ (TeX-source-specials-mode): Mark as obsolete.
+ (TeX-PDF-mode): Disable TeX XeTeX mode if TeX PDF mode is
+ disabled.
+ (TeX-Omega-mode): Disable TeX XeTeX mode if TeX Omega mode is to
+ be enabled.
+ (TeX-XeTeX-command, LaTeX-XeTeX-command): New variables.
+ (TeX-XeTeX-mode): New minor mode.
+ (TeX-mode-map): Define key for TeX XeTeX mode.
+ (TeX-mode-specific-command-menu-entries): Add entry for TeX XeTeX
+ mode. Make the engine-related options exclusive by using radio
+ buttons. Refine the wording for some options.
+
+2008-07-19 Ralf Angeli <angeli@caeruleus.net>
+
+ * tex.el (TeX-source-correlate-determine-method): Do not error out
+ if calling the engine fails.
+
+ * latex.el (LaTeX-mark-environment): Keep point upon unsuccessful
+ search.
+
+2008-07-19 Vincent BelaŻche <vincent.b.1@hotmail.fr> (tiny change)
+
+ * latex.el (LaTeX-mark-environment): Support marking of multiple
+ nested environments.
+
+2008-07-17 Ralf Angeli <angeli@caeruleus.net>
+
+ * latex.el (LaTeX-paragraph-commands-regexp-make): Take
+ `LaTeX-paragraph-commands' into account.
+ (LaTeX-paragraph-commands-regexp): Move behind
+ `LaTeX-paragraph-commands' definition.
+
+2008-07-14 Ralf Angeli <angeli@caeruleus.net>
+
+ * style/pdfsync.el ("pdfsync"): Use
+ `TeX-source-correlate-output-page-function' rather than
+ `TeX-sync-output-page-function'.
+
+ * tex.el (TeX-command-list): Remove SyncTeX expanders.
+ (TeX-expand-list): Adapt function calls. Remove SyncTeX expander.
+ (hack-one-local-variable, TeX-set-mode-name): Remove
+ `TeX-synctex-mode' and `TeX-source-specials-mode'. Add
+ `TeX-source-correlate-mode'.
+ (TeX-source-correlate-method): New variable.
+ (TeX-source-correlate-method-active): New variable.
+ (TeX-source-correlate-output-page-function): Renamed from
+ `TeX-sync-output-page-function'.
+ (TeX-source-correlate-start-server): Renamed from
+ `TeX-view-start-server'.
+ (TeX-source-correlate-start-server-asked): Renamed from
+ `TeX-view-start-server-asked'.
+ (TeX-source-correlate-start-server-flag): Renamed from
+ `TeX-view-start-server-flag'.
+ (TeX-source-correlate-gnuserv-p): Renamed from
+ `TeX-view-gnuser-p'.
+ (TeX-source-correlate-server-enabled-p): Renamed from
+ `TeX-view-server-enabled-p'.
+ (TeX-source-correlate-start-server-maybe): Renamed from
+ `TeX-view-start-server-maybe'.
+ (TeX-source-specials): Remove custom group.
+ (TeX-source-correlate-determine-method): New function.
+ (TeX-source-correlate-expand-options): Renamed from
+ `TeX-source-specials-expand-options'. Support SyncTeX as well.
+ (TeX-source-correlate-map): Renamed from
+ `TeX-source-specials-map'.
+ (TeX-source-correlate-mode): Renamed from
+ `TeX-source-specials-mode'. Support SyncTeX as well.
+ (TeX-source-specials-mode): Now an alias for
+ `TeX-source-specials-mode'.
+ (TeX-source-specials-tex-flags, TeX-source-specials-places)
+ (TeX-source-specials-view-position-flags)
+ (TeX-source-specials-view-editor-flags)
+ (TeX-source-specials-view-gnuclient-flags)
+ (TeX-source-specials-view-emacsclient-flags): Put into `TeX-view'
+ rather than `TeX-command' group.
+ (TeX-source-specials-view-expand-options): Adapt for new function
+ names and distinction between source specials and SyncTeX.
+ (TeX-synctex-mode): Remove.
+ (TeX-mode-map): Remove binding for TeX SyncTeX mode.
+ (TeX-mode-specific-command-menu-entries): Remove menu entry for
+ TeX SyncTeX mode. Use Source Correlate moniker instead of Source
+ Specials.
+
+2008-07-07 Ralf Angeli <angeli@caeruleus.net>
+
+ * doc/auctex.texi (Folding): Fix last change.
+
+2008-07-06 Ralf Angeli <angeli@caeruleus.net>
+
+ * doc/auctex.texi (Folding): Document folding of math constructs
+ and the possibilities of providing expanders and alternatives in
+ replacement specifiers.
+
+ * tex.el (TeX-command-list): Add expanders for SyncTeX.
+ (TeX-expand-list): Start server if necessary when viewing. Define
+ expander for SyncTeX.
+ (hack-one-local-variable): Cater for TeX SyncTeX mode.
+ (TeX-set-mode-name): Add lighter for TeX SyncTeX mode.
+ (TeX-view): New customization group.
+ (TeX-view-start-server): Renamed from
+ `TeX-source-specials-view-start-server'.
+ (TeX-source-specials-view-start-server): Rename to
+ `TeX-view-start-server' and define alias.
+ (TeX-view-start-server-asked): Renamed from
+ `TeX-source-specials-view-start-server-asked'.
+ (TeX-source-specials-view-start-server-asked): Rename to
+ `TeX-view-start-server-asked'.
+ (TeX-view-start-server-flag): New variable.
+ (TeX-view-gnuserv-p): Renamed from
+ `TeX-source-specials-view-gnuserv-p'.
+ (TeX-source-specials-view-gnuserv-p): Rename to
+ `TeX-view-gnuserv-p'.
+ (TeX-view-server-enabled-p): New function.
+ (TeX-view-start-server-maybe): New function.
+ (TeX-source-specials-mode): Set `TeX-view-start-server-flag'.
+ (TeX-source-specials-view-expand-client): Adapt call to new
+ function name.
+ (TeX-source-specials-view-expand-options): Do not try to start the
+ server here anymore.
+ (TeX-synctex-mode): New minor mode.
+ (TeX-synctex-output-page): New function.
+ (TeX-mode-map): Add key for toggling TeX SyncTeX mode.
+ (TeX-mode-specific-command-menu-entries): Add menu entry for TeX
+ SyncTeX mode.
+ (TeX-math-input-method-off-regexp): New variable.
+ (TeX-toggle-off-input-method): Remove.
+ (TeX-math-input-method-off): Do without
+ `TeX-toggle-off-input-method'.
+
+2008-07-04 Berend de Boer <berend@pobox.com>
+
+ * context.el, context-en.el: added a few more entries to the menu
+ to select ConTeXt macro's from.
+
+2008-06-29 Ralf Angeli <angeli@caeruleus.net>
+
+ * style/bulgarian.el ("bulgarian"): Use value of
+ `TeX-quote-after-quote' for default quote insertion behavior.
+
+2008-06-28 Ralf Angeli <angeli@caeruleus.net>
+
+ * font-latex.el (font-latex-find-matching-close): Simplify. There
+ is no need for a general mechanism if the supported chars are
+ limited at another place.
+
+ * tex.el (TeX-search-syntax-table): Support (...) and <...>.
+
+ * tex-fold.el (TeX-fold-macro-spec-list): New spec for \item.
+ Adapt doc string to reflect new functionality.
+ (TeX-fold-macro-nth-arg): New `delims' parameter which can be used
+ to find other macro args than those enclosed by braces.
+ (TeX-fold-expand-spec): New function.
+ (TeX-fold-hide-item): Use it.
+
+ * doc/auctex.texi (European): Document `bulgarian' language
+ option.
+
+ * Makefile.in (STYLESRC): Add style/bulgarian.el.
+
+ * style/bulgarian.el: New file.
+
+2008-06-21 Ralf Angeli <angeli@caeruleus.net>
+
+ * style/hyperref.el: New file.
+
+ * Makefile.in (STYLESRC): Add style/hyperref.el.
+
+2008-06-07 Ralf Angeli <angeli@caeruleus.net>
+
+ * font-latex.el (font-latex-make-built-in-keywords): Distinguish
+ command-type keyword classes from others when creating the
+ respective variables.
+
+ * doc/auctex.texi (Font Locking): Structure with nodes.
+ (Fontification of macros): Describe format specifiers for macros
+ with arguments.
+
+2008-05-30 Ralf Angeli <angeli@caeruleus.net>
+
+ * tex-fold.el (TeX-fold-macro-spec-list): Add some documentation.
+ (TeX-fold-hide-item): Support replacement of argument specifiers
+ like "{1}" by the respective argument value in the display string.
+
+2008-05-30 Joost Kremers <joostkremers@fastmail.fm> (tiny change)
+
+ * tex-fold.el (TeX-fold-macro-spec-list): Add function choice.
+ (TeX-fold-hide-item): If specifier is a function, call it with all
+ mandatory arguments of macro.
+
+2008-05-25 Ralf Angeli <angeli@caeruleus.net>
+
+ * latex.el (docTeX-mode): Add regexp group to value of
+ `TeX-comment-start-regexp'.
+
+ * style/doc.el (LaTeX-doc-after-insert-macrocode): New function.
+ ("doc"): Add it to `LaTeX-after-insert-env-hooks'.
+
+ * latex.el: Get rid of some compiler warnings.
+ (LaTeX-after-insert-env-hooks): New variable.
+ (LaTeX-insert-environment): Remove docTeX-specific code.
+ Run `LaTeX-after-insert-env-hooks'
+
+ * style/beamer.el (LaTeX-beamer-after-insert-env): New function.
+ ("beamer"): Add it to `LaTeX-after-insert-env-hooks'. Get rid of
+ some compiler warnings. Support the semiverbatim environment.
+
+ * style/dinbrief.el: Get rid of some compiler warnings.
+
+ * style/dk-bib.el: Get rid of some compiler warnings.
+
+ * style/emp.el: Get rid of some compiler warnings.
+
+ * style/epsf.el: Get rid of some compiler warnings.
+
+ * style/foils.el: Get rid of some compiler warnings.
+
+ * style/graphicx.el: Get rid of some compiler warnings.
+
+ * style/letter.el: Get rid of some compiler warnings.
+
+ * style/prosper.el: Get rid of some compiler warnings.
+
+ * style/psfig.el: Get rid of some compiler warnings.
+
+ * texmathp.el: Get rid of some compiler warnings.
+
+ * tex.el: Get rid of some compiler warnings.
+
+ * tex-jp.el: Get rid of some compiler warnings.
+
+ * tex-buf.el: Get rid of some compiler warnings.
+
+ * font-latex.el: Get rid of some compiler warnings.
+
+ * context.el: Get rid of some compiler warnings.
+
+ * context-en.el: Get rid of some compiler warnings.
+
+ * context-nl.el: Get rid of some compiler warnings.
+
+2008-05-22 Ralf Angeli <angeli@caeruleus.net>
+
+ * tex-buf.el (TeX-command-sentinel): Use `TeX-master-file' instead
+ of `TeX-active-master' for `TeX-transient-master'.
+
+2008-05-17 Ralf Angeli <angeli@caeruleus.net>
+
+ * doc/auctex.texi (Font Specifiers): Correct argument list of
+ `TeX-font'.
+
+2008-05-13 Ralf Angeli <angeli@caeruleus.net>
+
+ * doc/auctex.texi (Font Specifiers): Document `LaTeX-font-list'.
+
+2008-05-10 Reiner Steib <reiner.steib@gmx.de>
+
+ * tex-bar.el (TeX-bar-TeX-buttons, TeX-bar-LaTeX-buttons): Add
+ standard Emacs buttons to custom set.
+ (TeX-bar-TeX-buttons): Use `tex' instead of `latex' in custom set.
+
+2008-05-04 Ralf Angeli <angeli@caeruleus.net>
+
+ * tex-site.el.in (AUCTeX): Move customization group here from
+ tex.el and load the main files defining customization options.
+
+ * tex.el (AUCTeX): Move customization group to tex-site.el.in.
+ (TeX-expand-list): Make %(outpage) default to "1".
+
+2008-05-01 Ralf Angeli <angeli@caeruleus.net>
+
+ * toolbar-x.el (toolbarx-xemacs-refresh): Only activate the tool
+ bar if it is already visible. Remove redundant if clause.
+
+ * tex-buf.el (TeX-format-filter): Do not remove linebreak if the
+ following line starts with an opening parenthesis.
+
+2008-04-28 Ralf Angeli <angeli@caeruleus.net>
+
+ * doc/Makefile.in (install-auctex): Do not use `-' to suppress
+ errors within command.
+
+2008-04-28 David Kastrup <dak@gnu.org>
+
+ * tex-buf.el (TeX-run-command): disable undo in run buffer
+
+2008-03-12 Ralf Angeli <angeli@caeruleus.net>
+
+ * style/pdfsync.el (LaTeX-pdfsync-output-page): Kill buffer with
+ pdfsync file if it was loaded by us.
+
+2008-03-02 Ralf Angeli <angeli@caeruleus.net>
+
+ * tex-info.el (texinfo-environment-regexp): Terminate.
+
+2008-03-01 Matan Ninio <emacs@auctexdev.ninio.org> (tiny change)
+
+ * style/pdfsync.el (LaTeX-pdfsync-output-page): Include
+ subdirectories relative to master file in file names. Searching
+ for the file entry in the .pdfsync file allows for an optional
+ `.tex' extension in the filename. Find further p lines if the
+ current context does not contain any more.
+
+2008-02-24 Ralf Angeli <angeli@caeruleus.net>
+
+ * Makefile.in: Add windows-package target and related variables.
+
+2008-02-23 Ralf Angeli <angeli@caeruleus.net>
+
+ * tex.el (TeX-common-menu-entries): Add exception for docTeX mode
+ when extending the customization menu.
+
+2008-02-17 Ralf Angeli <angeli@caeruleus.net>
+
+ * doc/auctex.texi: Repeat direntry after each category as per
+ recommendation of Karl Berry.
+
+ * doc/preview-latex.texi: Repeat direntry after each category as
+ per recommendation of Karl Berry.
+
+2008-02-11 Ralf Angeli <angeli@caeruleus.net>
+
+ * font-latex.el (font-latex-make-match-defun)
+ (font-latex-keyword-matcher): Recognize old-style type specs which
+ could be lists. Prevents "void-function nil" error during font
+ locking.
+
+2008-02-10 Ralf Angeli <angeli@caeruleus.net>
+
+ * Makefile.in (maintainer-clean): Do not depend on distclean. How
+ did this ever work?
+ (www-doc): Use release files. Update URLs. Make gendocs.sh use
+ texi2html.
+
+ * doc/Makefile.in (extradist): Re-add tex-ref.pdf dependency.
+ (install-auctex): Do not install reference card when producing an
+ XEmacs package.
+
+2008-02-10 Ralf Angeli <angeli@caeruleus.net>
+
+ * Version 11.85 released.
+
+2008-02-10 Ralf Angeli <angeli@caeruleus.net>
+
+ * RELEASE: Update for upcoming release.
+
+ * auctex.spec (Version): Bump version number.
+
+ * configure.ac: Bump version number.
+
+ * doc/todo.texi: Add copyright notice.
+ (Bugs): Remove entry about XEmacs bug since AUCTeX now helps
+ XEmacs in doing multi-line font locking.
+
+ * doc/tex-ref.tex: Bump version number. Updated references to
+ toggles for bad boxes and warning. Mention `Clean' and `Clean
+ All' commands.
+
+ * doc/install.texi: Add copyright notice.
+ (Prerequisites): Update information about Emacs 22.
+
+ * doc/wininstall.texi: Update information about requirements,
+ esp. availability of Emacs 22.
+
+2008-02-09 Ralf Angeli <angeli@caeruleus.net>
+
+ * tex-buf.el (TeX-error, TeX-warning): Handle `expert' option of
+ `TeX-display-help'.
+ (TeX-warning): Find error file in same window.
+
+ * tex.el (TeX-display-help): Add `expert' option.
+
+ * doc/auctex.texi (Commands): Add some explanatory text for TeXing
+ options. Document `TeX-show-compilation'.
+ (Debugging): Reflect new option of `TeX-display-help'.
+
+ * doc/changes.texi: Add changes for 11.85. Add copyright notice.
+
+2008-02-08 Reiner Steib <Reiner.Steib@gmx.de>
+
+ * tex-bar.el (LaTeX-symbols-toolbar-visible-flag): Improve doc string.
+
+ * toolbar-x.el (toolbarx-image-path): Improve doc string.
+
+2008-02-07 Ralf Angeli <angeli@caeruleus.net>
+
+ * tex-buf.el (TeX-parse-TeX): Do not pop to output buffer.
+ (TeX-warning): Since we do not pop to the output buffer, find the
+ source file in the original window.
+
+2008-02-05 Ralf Angeli <angeli@caeruleus.net>
+
+ * font-latex.el (font-latex-built-in-keyword-classes): Add syntax
+ alternatives for some commands.
+ (font-latex-setup): Give ?@ word syntax for font locking.
+ (font-latex-syntax-error-modes): New variable.
+ (font-latex-match-command-with-arguments): Use it.
+
+2008-02-04 Ralf Angeli <angeli@caeruleus.net>
+
+ * font-latex.el (font-latex-set-syntactic-keywords): Revert change
+ from 2007-04-09 because the unbalanced treatment of \begin and
+ \end may lead to color bleeding.
+
+2008-02-03 Ralf Angeli <angeli@caeruleus.net>
+
+ * Relicense all "GPLv2 or later" files to "GPLv3 or later".
+
+ * COPYING: Switch to GPLv3.
+
+ * doc/Makefile.in, doc/preview-dtxdoc.pl: Add coypright and
+ license notices.
+
+ * style/beamer.el, style/scrbook.el: Add license notices.
+
+2008-02-03 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ * tex-info.el (Texinfo-insert-node): Correct name of let-bound
+ variable.
+
+2008-02-03 Ralf Angeli <angeli@caeruleus.net>
+
+ * tex-info.el: Make sure the Texinfo mode of AUCTeX is still used
+ after loading texinfo.el.
+
+2008-02-02 Ralf Angeli <angeli@caeruleus.net>
+
+ * Makefile.in, auctex.spec, autogen.sh, configure.ac: Add
+ copyright and license notices.
+
+ * texmathp.el, style/amsmath.el, style/amsthm.el,
+ style/fancyref.el, style/index.el, style/makeidx.el,
+ style/multind.el, style/varioref.el: Reflect copyright assignment
+ of Carsten Dominik to FSF in coypright notices and adapt licence
+ notice accordingly.
+
+2007-12-28 Ralf Angeli <angeli@caeruleus.net>
+
+ * tex-buf.el (TeX-command-expand): Do not evaluate `file' as a
+ function.
+
+2007-12-25 Ralf Angeli <angeli@caeruleus.net>
+
+ * latex.el (LaTeX-fill-move-to-break-point): Ignore whitespace
+ when checking if verbatim macro starts at beginning of line.
+
+2007-12-08 David Kastrup <dak@gnu.org>
+
+ * texmathp.el (defgroup, defcustom): Remove compatibility cruft.
+
+2007-11-20 Reiner Steib <Reiner.Steib@gmx.de>
+
+ * doc/install.texi (Prerequisites): Add openSUSE.
+
+2007-11-20 David Kastrup <dak@gnu.org>
+
+ * doc/install.texi (Prerequisites): Update to reflect current
+ realities.
+
+2007-11-03 Reiner Steib <Reiner.Steib@gmx.de>
+
+ * tex-buf.el (TeX-record-buffer): New variable, only in Emacs.
+ (TeX-pop-to-buffer): New function.
+ (TeX-recenter-output-buffer, TeX-background-filter)
+ (TeX-parse-TeX, TeX-parse-error, TeX-help-error): Use
+ `TeX-pop-to-buffer'.
+
+2007-10-30 Reiner Steib <Reiner.Steib@gmx.de>
+
+ * toolbar-x.el (toolbarx-find-image): Rename argument. Improve
+ doc string.
+
+2007-10-11 Ralf Angeli <angeli@caeruleus.net>
+
+ * latex.el (TeX-arg-verb): Honor active region.
+
+2007-10-10 Ralf Angeli <angeli@caeruleus.net>
+
+ * style/MinionPro.el ("MinionPro"): Run style hook for amsmath
+ which is loaded via MnSymbol.
+
+2007-10-09 Ralf Angeli <angeli@caeruleus.net>
+
+ * style/nomencl.el: New file.
+
+ * Makefile.in (STYLESRC): Add style/nomencl.el.
+
+2007-10-03 Ralf Angeli <angeli@caeruleus.net>
+
+ * font-latex.el (font-latex-user-keyword-classes): Doc fix.
+
+2007-08-26 Ralf Angeli <angeli@caeruleus.net>
+
+ * font-latex.el (font-latex-command-with-args-default-spec):
+ Default to nil.
+
+2007-08-24 Ralf Angeli <angeli@caeruleus.net>
+
+ * font-latex.el (font-latex-match-command-with-arguments): Show
+ error indicator only in LaTeX mode.
+
+2007-08-23 Ralf Angeli <angeli@caeruleus.net>
+
+ * style/nicefrac.el ("nicefrac"): Fix last change.
+
+2007-08-22 Ralf Angeli <angeli@caeruleus.net>
+
+ * style/jurabib.el ("jurabib"): Use `font-latex-add-keywords'.
+ Add syntax information.
+
+2007-08-21 Ralf Angeli <angeli@caeruleus.net>
+
+ * style/scrreprt.el: Add licence text.
+ ("scrreprt"): Use `font-latex-add-keywords'. Add syntax
+ information.
+
+ * style/scrpage2.el: Add licence text.
+ ("scrpage2"): Use `font-latex-add-keywords'. Add syntax
+ information.
+
+ * style/scrlttr2.el: Add licence text.
+ ("scrlttr2"): Use `font-latex-add-keywords'. Add syntax
+ information.
+
+ * style/scrbook.el ("scrbook"): Use `font-latex-add-keywords'.
+ Add syntax information.
+
+ * style/scrbase.el ("scrbase"): Use `font-latex-add-keywords'.
+ Add syntax information.
+
+2007-08-20 Ralf Angeli <angeli@caeruleus.net>
+
+ * style/url.el ("url"): Use `font-latex-add-keywords'.
+ Add syntax information.
+
+ * style/subfigure.el ("subfigure"): Use `font-latex-add-keywords'.
+ Add syntax information.
+
+ * style/csquotes.el ("csquotes"): Update for version 3.7. Use
+ `font-latex-add-keywords'. Add syntax information.
+
+ * style/MinionPro.el ("MinionPro"): Use `font-latex-add-keywords'.
+ Add syntax information.
+
+ * font-latex.el (font-latex-built-in-keyword-classes): Correct
+ syntax spec for \subsubparagraph.
+
+2007-08-19 Ralf Angeli <angeli@caeruleus.net>
+
+ * style/units.el ("units"): Use `font-latex-add-keywords'.
+ Add syntax information.
+
+ * style/nicefrac.el ("nicefrac"): Use `font-latex-add-keywords'.
+ Add syntax information.
+
+ * style/listings.el ("listings"): Use `font-latex-add-keywords'.
+ Add syntax information.
+
+ * style/flashcards.el ("flashcards"): Use `font-latex-add-keywords'.
+ Add syntax information.
+
+ * style/comment.el ("comment"): Use `font-latex-add-keywords'.
+ Add syntax information.
+
+ * style/booktabs.el ("booktabs"): Use `font-latex-add-keywords'.
+ Add syntax information.
+
+ * style/babel.el ("babel"): Use `font-latex-add-keywords'.
+ Add syntax information.
+
+ * style/paralist.el ("paralist"): Use `font-latex-add-keywords'.
+ Add syntax information.
+
+ * style/natbib.el ("natbib"): Use `font-latex-add-keywords'.
+ Add syntax information.
+
+ * style/mdwlist.el ("mdwlist"): Use `font-latex-add-keywords'.
+ Add syntax information.
+
+ * style/graphicx.el ("graphicx"): Use `font-latex-add-keywords'.
+ Add syntax information.
+
+ * style/fancyref.el ("fancyref"): Use `font-latex-add-keywords'.
+ Add syntax information.
+
+ * style/captcont.el ("captcont"): Use `font-latex-add-keywords'.
+ Add syntax information.
+
+ * style/beamer.el ("beamer"): Use `font-latex-add-keywords'.
+
+ * font-latex.el (font-latex-add-keywords): New function.
+ (font-latex-command-with-args-opt-arg-delims): Add parentheses.
+
+2007-08-14 David Kastrup <dak@gnu.org>
+
+ * tex.el (TeX-insert-backslash): put delete-selection property on.
+
+2007-08-13 David Kastrup <dak@gnu.org>
+
+ * Makefile.in (all): make new target "docs" as well. Descend for
+ docs, info and dvi.
+ Before regenerating extradist documentation, copy version info
+ from checked-out version (can we do that saner?).
+ On various targets, replace set -x with a somewhat more elaborate
+ version that echoes more for make -n.
+
+2007-08-10 Ralf Angeli <angeli@caeruleus.net>
+
+ * tex.el (TeX-doc-backend-alist): Delete buffers used for checking
+ availability of info files.
+
+2007-08-08 Ralf Angeli <angeli@caeruleus.net>
+
+ * tex-buf.el (TeX-TeX-sentinel-check): Shave off quotation marks
+ from file name if present.
+
+2007-08-04 Ralf Angeli <angeli@caeruleus.net>
+
+ * tex.el (TeX-run-style-hooks): Set `default-directory' to the
+ directory of the master file.
+
+2007-07-11 Ralf Angeli <angeli@caeruleus.net>
+
+ * style/pstricks.el ("pstricks"): Do not disable TeX PDF mode if
+ pst-pdf is used.
+
+2007-07-10 Ralf Angeli <angeli@caeruleus.net>
+
+ * tex-buf.el (TeX-format-filter): Remove line breaks at column 79.
+
+2007-07-09 Ralf Angeli <angeli@caeruleus.net>
+
+ * tex.el (TeX-comment-forward): Call `comment-normalize-vars' if
+ available.
+
+2007-07-01 Ralf Angeli <angeli@caeruleus.net>
+
+ * style/verbatim.el: Add copyright notice and licence info.
+
+ * style/paralist.el: Add copyright notice and licence info.
+
+ * style/booktabs.el: Add copyright notice and licence info.
+
+ * style/scrbase.el: Change copyright notice of Mark Trettin to FSF
+ to reflect the assignment. Add licence info to header.
+
+ * style/subfigure.el: Change copyright notice of Reiner Steib to
+ FSF to reflect the assignment. Add licence info to header.
+
+ * style/captcont.el: Change copyright notice of Reiner Steib to
+ FSF to reflect the assignment. Add licence info to header.
+
+ * latex.el (LaTeX-auto-minimal-regexp-list): Match optional
+ arguments of document style or class macro even if they contain
+ periods, e.g. in case of "BCOR8.25mm" in KOMA Script classes. Get
+ rid of superfluous escapes in complemented character alternatives.
+
+ * tex.el (TeX-insert-dollar): Show matching start only if
+ `blink-matching-paren' is non-nil.
+
+2007-06-20 Ralf Angeli <angeli@caeruleus.net>
+
+ * latex.el (LaTeX-common-initialization): Turn TeX PDF mode on
+ when pst-pdf.sty is used.
+
+2007-06-10 Ralf Angeli <angeli@caeruleus.net>
+
+ * latex.el (LaTeX-common-initialization): Do not add pstricks to
+ style hooks.
+
+ * style/pstricks.el: New file.
+
+ * Makefile.in (STYLESRC): Add style/pstricks.el.
+
+2007-05-25 Ralf Angeli <angeli@caeruleus.net>
+
+ * font-latex.el (font-latex-match-command-with-arguments): Check
+ if `match-beg' is set.
+
+2007-05-20 Ralf Angeli <angeli@caeruleus.net>
+
+ * style/beamer.el ("beamer"): Use new syntax in format specifier
+ for frametitle macro.
+
+ * font-latex.el (font-latex-built-in-keyword-classes): Use new
+ syntax for format specifiers.
+ (font-latex-user-keyword-classes): Describe new syntax for format
+ specifiers.
+ (font-latex-command-with-args-default-spec): Use new syntax for
+ format specifiers.
+ (font-latex-command-with-args-opt-arg-delims): New variable.
+ (font-latex-match-command-with-arguments): Use it. Change format
+ specifier parsing to support new syntax.
+ (font-latex-match-mandatory-arg): Remove.
+
+2007-05-05 Ralf Angeli <angeli@caeruleus.net>
+
+ * doc/faq.texi: Add entry about programs not being found by
+ ./configure when PATH is not set correctly.
+
+2007-04-29 Ralf Angeli <angeli@caeruleus.net>
+
+ * tex-buf.el (TeX-parse-error): Match any closing parenthesis.
+
+2007-04-28 Ralf Angeli <angeli@caeruleus.net>
+
+ * font-latex.el (font-latex-fontify-region): Force redisplay
+ instead of setting `jit-lock-context-unfontify-pos'.
+ (font-latex-command-with-args-default-spec): New variable.
+ (font-latex-match-command-with-arguments): Use it.
+ (font-latex-built-in-keyword-classes): Correct some syntax
+ specifiers.
+ (font-latex-jit-lock-force-redisplay): New function.
+ (font-latex-fontify-region): Use it.
+ (font-latex-doctex-preprocessor-face): Make DocStrip guards stand
+ out on Emacs 21.
+
+2007-04-23 Ralf Angeli <angeli@caeruleus.net>
+
+ * latex.el (LaTeX-environment-menu): Support optional arguments
+ specified by vectors.
+
+ * style/flashcards.el: New file.
+
+ * Makefile.in (STYLESRC): Add style/flashcards.el.
+
+ * doc/auctex.texi (Adding Environments): Document possibility to
+ specify optional arguments in `LaTeX-add-environments'.
+
+2007-04-22 Reiner Steib <Reiner.Steib@gmx.de>
+
+ * doc/changes.texi: Add index entries for auctex.el and
+ tex-site.el. Add references to INSTALL or manual.
+
+ * doc/install.texi (Loading the package): Add index entries for
+ auctex.el and tex-site.el.
+
+ * doc/wininstall.texi: Add index entries for tex-mik.el and
+ tex-fptex.el. Clarify loading.
+
+2007-04-22 Ralf Angeli <angeli@caeruleus.net>
+
+ * font-latex.el (font-latex-fontify-region): Force context-related
+ unfontification only if the region has to be extended.
+ (font-latex-find-matching-close): Do not look up syntax-table
+ properties.
+ (font-latex-extend-region-backwards-command-with-args)
+ (font-latex-extend-region-backwards-command-in-braces)
+ (font-latex-extend-region-backwards-math-env)
+ (font-latex-extend-region-backwards-math-envII)
+ (font-latex-extend-region-backwards-quotation): Doc fix. Return
+ nil if no content requiring region extension was found.
+
+2007-04-16 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ * latex.el (LaTeX-math-default): Add various Greek uppercase
+ macros provided by amsmath.sty.
+
+2007-04-15 Ralf Angeli <angeli@caeruleus.net>
+
+ * font-latex.el (font-latex-match-math-envII): Regexp-quote the
+ string used to look for the environment end in order for starred
+ environments to be found.
+
+2007-04-13 Mark Trettin <Mark.Trettin@gmx.de>
+
+ * style/scrbase.el ("scrbase"): Fix typo in prompt.
+ (TeX-arg-KOMA-fontelements): Add \dictum, \pagination,
+ \disposition, and \minisec macros.
+
+2007-04-13 Ralf Angeli <angeli@caeruleus.net>
+
+ * style/beamer.el ("beamer"): Specify syntax of \frametitle macro
+ for font locking.
+
+2007-04-12 Ralf Angeli <angeli@caeruleus.net>
+
+ * style/amsmath.el ("amsmath"): Call `reftex-add-to-label-alist'
+ only if function is bound.
+
+2007-04-09 Ralf Angeli <angeli@caeruleus.net>
+
+ * tex.el (TeX-doc-backend-alist): Add --view parameter to texdoc
+ call since texdoc in MiKTeX fires up a web page not useful for our
+ purposes otherwise.
+
+ * tex-mik.el: Set `TeX-kpathsea-path-delimiter' to nil since
+ kpsewhich in MiKTeX (aka findtexmf) does not emit any useful
+ information if fed with kpathsea-related variables anyway. This
+ change makes `TeX-doc' work again on MiKTeX.
+
+ * font-latex.el (font-latex-set-syntactic-keywords): Match the
+ \begin macro of verbatim environments in case it is preceded by
+ other content than whitespace.
+
+2007-04-04 Ralf Angeli <angeli@caeruleus.net>
+
+ * latex.el (LaTeX-backward-paragraph): Fix grouping in order to
+ return the right value when no paragraph command is found.
+
+2007-04-01 Ralf Angeli <angeli@caeruleus.net>
+
+ * tex-buf.el (TeX-help-error): Correct regexp for matching line
+ indicator.
+
+2007-03-31 Ralf Angeli <angeli@caeruleus.net>
+
+ * latex.el (LaTeX-verbatim-environments): Fix typo.
+ (LaTeX-backward-paragraph): Special-case verbatim environments in
+ order to prevent leading brackets or braces from being interpreted
+ as part of the \begin macro. Clean up a bit.
+
+2007-03-24 David Kastrup <dak@gnu.org>
+
+ * context.el (ConTeXt-find-indent): Use `condition-case' rather
+ than `ignore-errors', and don't barf if at the end of file (like
+ with an empty file).
+
+2007-03-23 David Kastrup <dak@gnu.org>
+
+ * context.el (TeX-ConTeXt-sentinel): Fix end-of-run detection.
+
+2007-03-19 Ralf Angeli <angeli@caeruleus.net>
+
+ * style/comment.el: New file.
+
+ * Makefile.in (STYLESRC): Add style/comment.el.
+
+ * font-latex.el (font-latex-syntactic-keywords-extra): New
+ variable.
+ (font-latex-set-syntactic-keywords): Use it.
+
+ * tex-style.el (LaTeX-comment-env-list): New variable.
+
+2007-03-18 Ralf Angeli <angeli@caeruleus.net>
+
+ * doc/auctex.texi (Commands): Remove dependency on software du
+ jour from description of `TeX-DVI-via-PDFTeX'.
+
+2007-03-12 Ralf Angeli <angeli@caeruleus.net>
+
+ * font-latex.el (font-latex-quotes): Add nil option.
+ (font-latex-match-quotation)
+ (font-latex-extend-region-backwards-quotation): Do nothing if
+ `font-latex-quotes' is nil.
+
+ * doc/auctex.texi (Font Locking): Document nil option of
+ `font-latex-quotes'.
+
+2007-03-11 Ralf Angeli <angeli@caeruleus.net>
+
+ * latex.el (LaTeX-fold-math-spec-list): `decode-char' is not
+ autoloaded in XEmacs. Only use it when it is defined.
+
+ * doc/auctex.texi (European): Document `icelandic' language
+ option.
+
+ * Makefile.in (STYLESRC): Add style/icelandic.el.
+
+ * style/icelandic.el: New file.
+
+2007-03-11 David Kastrup <dak@gnu.org>
+
+ * RELEASE (Footnotes): Update Emacs CVS locations.
+
+2007-03-10 Ralf Angeli <angeli@caeruleus.net>
+
+ * tex-fold.el (TeX-fold-auto): Default to nil.
+
+2007-03-09 Ralf Angeli <angeli@caeruleus.net>
+
+ * tex.el (TeX-clean): Catch error on Emacs 21 when only one file
+ is to be deleted.
+
+2007-03-06 Ralf Angeli <angeli@caeruleus.net>
+
+ * tex.el (TeX-search-syntax-table): Set syntax of ?\( and ?\)
+ explicitely to whitespace for Emacs 21.
+ (TeX-search-syntax-table): Clean the syntax table more thoroughly.
+
+2007-03-04 Ralf Angeli <angeli@caeruleus.net>
+
+ * tex.el (TeX-find-macro-boundaries): Make it possible to restrict
+ the search with new argument `lower-bound'.
+ (TeX-find-macro-start): Make it possible to restrict the search
+ with new argument `limit'.
+
+ * font-latex.el: Merge from multiline-font-lock branch.
+ (font-latex-do-multi-line, font-latex-use-cache): Remove.
+ (font-latex-multiline-boundary): New variable.
+ (font-latex-built-in-keyword-classes): Add information about
+ syntax of macros. Quote face names.
+ (font-latex-deactivated-keyword-classes): Adapt type to new form
+ of `font-latex-built-in-keyword-classes'.
+ (font-latex-make-match-defun): Accept `face' argument.
+ (font-latex-keyword-matcher): Support up to 8 slots for faces.
+ (font-latex-make-built-in-keywords): Support new form of keywords
+ classes.
+ (font-latex-user-keyword-classes): Provide possibility to specify
+ macro syntax.
+ (font-latex-make-user-keywords): Add warning face in relevant
+ matchers.
+ (font-latex-extend-region-functions): New variable.
+ (font-latex-setup): Use it. Clean up.
+ (font-latex-fontify-region): New function.
+ (font-latex-unfontify-region): Cater for XEmacs.
+ (font-lock-after-change-function): Advise function for challenged
+ editors.
+ (font-latex-find-matching-close): Use `TeX-search-syntax-table'.
+ (font-latex-not-on-same-line-as): New function.
+ (font-latex-set-cache, font-latex-get-cache)
+ (font-latex-check-cache): Remove.
+ (font-latex-put-multiline-property-maybe): New function.
+ (font-latex-match-command-cache): Remove.
+ (font-latex-matched-faces): New variable.
+ (font-latex-matched-face): New function.
+ (font-latex-match-command-with-arguments): Use them. Set warning
+ face when syntax not correct.
+ (font-latex-match-in-braces-cache): Remove.
+ (font-latex-match-mandatory-arg): New function.
+ (font-latex-extend-region-backwards-command-with-args): New
+ function.
+ (font-latex-match-command-in-braces): Set multiline property if
+ necessary.
+ (font-latex-extend-region-backwards-command-in-braces): New
+ function.
+ (font-latex-match-math-env): Set multiline property if necessary.
+ (font-latex-extend-region-backwards-math-env): New function.
+ (font-latex-math-environments): New variable.
+ (font-latex-match-math-envII): Use it. Set multiline property if
+ necessary.
+ (font-latex-extend-region-backwards-math-envII): New function.
+ (font-latex-update-quote-list): New function.
+ (font-latex-match-quotation): Use it. Set multiline property if
+ necessary.
+ (font-latex-extend-region-backwards-quotation): New function.
+
+2007-02-25 David Kastrup <dak@gnu.org>
+
+ * tex.el (TeX-read-string): Add new function that will inherit the
+ input method if feasible. TODO: replace calls of `read-string'
+ with this wherever it may be appropriate.
+
+2007-02-20 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ * tex-buf.el (TeX-region-file): Doc fix.
+
+2007-02-15 Masayuki Ataka <masayuki.ataka@gmail.com>
+
+ * tex.el (TeX-after-insert-macro-hook): New hook.
+ (TeX-insert-macro): Use it.
+
+ * tex-fold.el (TeX-fold-auto): New variable.
+ (TeX-fold-mode): Append auto fold stuff to the end of
+ `TeX-after-insert-macro-hook'.
+
+2007-02-13 Ralf Angeli <angeli@caeruleus.net>
+
+ * tex.el (TeX-clean): Fix last change.
+
+2007-02-10 Ralf Angeli <angeli@caeruleus.net>
+
+ * tex-fold.el (TeX-fold-macro-spec-list-internal)
+ (TeX-fold-env-spec-list-internal)
+ (TeX-fold-math-spec-list-internal): New variables.
+ (TeX-fold-region-macro-or-env, TeX-fold-item): Use them.
+ (TeX-fold-comment-do): Doc fix.
+ (TeX-fold-mode): Set TeX-fold-*-spec-list-internal variables. Use
+ <mode-prefix>-fold-*-spec-list variables if bound.
+
+ * latex.el (LaTeX-fold-macro-spec-list)
+ (LaTeX-fold-env-spec-list, LaTeX-fold-math-spec-list): New
+ variables.
+
+ * tex.el (TeX-mode-prefix): New function.
+ (TeX-clean): Use it.
+
+2007-02-10 Masayuki Ataka <masayuki.ataka@gmail.com>
+
+ * tex-jp.el (TeX-japanese-process-input-coding-system)
+ (TeX-japanese-process-output-coding-system): Use system-type
+ instead of window-system. Suggested by Ikumi Keita
+ <ikumi@ikumi.que.jp>.
+
+2007-02-09 Masayuki Ataka <masayuki.ataka@gmail.com>
+
+ * tex-jp.el (TeX-japanese-process-input-coding-system)
+ (TeX-japanese-process-output-coding-system): Do not use
+ default-coding-system to set process-coding-system, anymore. The
+ value is set to shift_jis or euc-jp depending on window-system.
+
+ * tex-bar.el: Fix typo. Reported by Ikumi Keita
+ <ikumi@ikumi.que.jp>.
+
+2007-02-09 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ * tex-jp.el (japanese-TeX-command-list): Add
+ `TeX-run-discard-foreground' and `TeX-run-function' for
+ function-item.
+ (japanese-TeX-set-process-coding-system): New function.
+ (TeX-after-start-process-function): Use it. Cater for the
+ accidental case that no-Japanese loads tex-jp.el and his
+ coding-system is set to unexpected one.
+
+2007-02-05 Ralf Angeli <angeli@caeruleus.net>
+
+ * tex.el (TeX-submit-bug-report): Remove unnecessary code.
+ Include a plea for upgrading into introductory blurb.
+
+2007-02-01 Ikumi Keita <ikumi@ikumi.que.jp>
+
+ * latex.el: Move (provide 'latex) to the end of buffer.
+ (TeX-global-input-files, BibTeX-global-style-files)
+ (BibTeX-global-files): checkdoc cleaning.
+ (LaTeX-fill-paragraph, LaTeX-fill-code-comment): Use function
+ TeX-match-buffer instead of buffer-substring-*.
+ (LaTeX-209-to-2e): Likewise.
+
+ * tex-buf.el (TeX-command-region, TeX-command-buffer)
+ (TeX-next-error, TeX-check-files, TeX-command-next)
+ (TeX-output-extension, TeX-run-set-command, TeX-run-interactive)
+ (TeX-sentinel-default-function, TeX-region-create, TeX-region)
+ (TeX-error-file, TeX-error-offset, TeX-parse-TeX)
+ (TeX-error-description-list): checkdoc cleaning.
+ (TeX-run-command, TeX-TeX-sentinel-check, TeX-BibTeX-sentinel):
+ Use substitute-command-keys to message key binding.
+ (TeX-current-pages): Add doc string.
+
+ * tex.el (TeX-print-command, TeX-queue-command)
+ (TeX-command-list, TeX-printer-list, TeX-set-mode-name)
+ (TeX-regexp-group-count): checkdoc cleaning.
+ (plain-TeX-mode-hook): Declare user option explicitly using
+ defcustom.
+ (TeX-search-files-kpathsea): Use TeX-kpathsea-path-delimiter
+ instead of kpathsea-path-delimiter.
+
+2007-01-23 Ralf Angeli <angeli@caeruleus.net>
+
+ * doc/auctex.texi (Quotes): Document
+ `TeX-math-close-double-dollar'. Add subheadings.
+
+2007-01-22 Ralf Angeli <angeli@caeruleus.net>
+
+ * autogen.sh: Define PDFTEX if empty and pass it to `make dist' in
+ `doc' directory for documentation generation.
+
+ * doc/Makefile.in (docdir, PACKAGE_TARNAME): New variables.
+ (dist): Add tex-ref.pdf target.
+ (extradist): Remove tex-ref.pdf target.
+ (install-auctex): Add tex-ref.pdf target. Install tex-ref.pdf
+ into $(docdir).
+
+2007-01-21 Ralf Angeli <angeli@caeruleus.net>
+
+ * tex-fptex.el: Make calls of start.exe work with quoted file
+ names.
+
+ * tex-mik.el: Make calls of start.exe work with quoted file names.
+
+2007-01-21 Masayuki Ataka <masayuki.ataka@gmail.com>
+
+ * tex-fold.el (TeX-fold-type-list): New new type 'math.
+ (TeX-fold-math-spec-list): New variable.
+ (TeX-fold-dwim, TeX-fold-region, TeX-fold-region-macro-or-env)
+ (TeX-fold-item): Try to fold math macros as well.
+ (TeX-fold-buffer, TeX-fold-paragraph, TeX-fold-make-overlay)
+ (TeX-fold-item-end): Mention new type 'math.
+ (TeX-fold-math): New function.
+
+2007-01-20 David Kastrup <dak@gnu.org>
+
+ * auctex.spec: Remove unused `%{extraconfig}' argument.
+
+2007-01-20 Masayuki Ataka <masayuki.ataka@gmail.com>
+
+ * tex-fold.el (TeX-fold-macro-spec-list): Fold marginpar, eqref,
+ glossary, copyright, textregistered and texttrademark macros as
+ well.
+
+2007-01-18 Masayuki Ataka <masayuki.ataka@gmail.com>
+
+ * tex-jp.el: Update maintainer email address.
+
+ * style/verbatim.el: Update author email address.
+
+2007-01-17 Reiner Steib <Reiner.Steib@gmx.de>
+
+ * tex.el (TeX-clean-default-intermediate-suffixes): Add beamer
+ suffixes.
+
+2007-01-16 Masayuki Ataka <masayuki.ataka@gmail.com>
+
+ * tex-jp.el (japanese-TeX-command-list): Use "%`" and "%'" magic
+ to allow file names with spaces. See also change log for
+ TeX-command-list in tex.el on 2006-10-10.
+ Reported by Ikumi Keita <ikumi@ikumi.que.jp>.
+
+2007-01-14 Ralf Angeli <angeli@caeruleus.net>
+
+ * doc/wininstall.texi: Add copyright notice and licence reference.
+ Mention --infodir. Some clean-ups.
+
+2007-01-13 Ralf Angeli <angeli@caeruleus.net>
+
+ * Makefile.in (www-doc): Generate AUCTeX and preview-latex manuals
+ in single directory. Patch gendocs.sh to use texi2html instead of
+ makeinfo (patch not included).
+
+2007-01-12 Ralf Angeli <angeli@caeruleus.net>
+
+ * Version 11.84 released.
+
+2007-01-12 Ralf Angeli <angeli@caeruleus.net>
+
+ * RELEASE: Update for release.
+
+ * doc/changes.texi: Update for release.
+
+ * auctex.spec (Version): Bump version number.
+
+ * configure.ac: Bump version number.
+
+ * doc/tex-ref.tex: Bump version number.
+
+2007-01-11 Ralf Angeli <angeli@caeruleus.net>
+
+ * Makefile.in (STYLESRC): Add style/polski.el.
+
+ * RELEASE: Mention support for `polski' LaTeX package.
+
+ * style/polski.el: New file.
+
+ * doc/auctex.texi (European): Mention `polski' language option.
+
+2007-01-08 Ralf Angeli <angeli@caeruleus.net>
+
+ * RELEASE: Document some new features.
+
+ * style/polish.el: New file.
+
+ * Makefile.in (STYLESRC): Add style/polish.el.
+
+ * doc/auctex.texi (European): Remove references to `plfonts' and
+ `plhb' styles for typesetting Polish text because they seem to be
+ out of use. Refer to the `polish' option for the babel LaTeX
+ package instead.
+
+ * tex.el (TeX-quote-language-alist): Replace references to
+ `plfonts' and `plhb' by `polish'.
+
+2007-01-07 Ralf Angeli <angeli@caeruleus.net>
+
+ * doc/wininstall.texi: Refer to up-to-date versions of CVS Emacs.
+
+ * doc/install.texi (Prerequisites): Refer to up-to-date versions
+ of CVS Emacs.
+
+2007-01-05 Reiner Steib <Reiner.Steib@gmx.de>
+
+ * doc/auctex.texi (European): Improve TeX-quote-language-alist.
+
+ * tex.el (TeX-command-default): Mark as safe-local-variable.
+ (TeX-quote-language-alist): Improve custom type. Add links to the
+ manual. Improve doc string.
+
+2006-12-30 Ralf Angeli <angeli@caeruleus.net>
+
+ * doc/auctex.texi (Folding): Document user-visible changes in the
+ folding functionality.
+
+2006-12-29 Ralf Angeli <angeli@caeruleus.net>
+
+ * tex-info.el (TeX-texinfo-mode): Set `comment-use-syntax'.
+
+ * tex-fold.el: Update author email address.
+ (TeX-fold-type-list): New variable.
+ (TeX-fold-keymap): Add key binding for `TeX-fold-comment'.
+ (TeX-fold-dwim): Try to fold comment as well.
+ (TeX-fold-region): Move implementation of region folding for
+ macros and environments out into the new function
+ `TeX-fold-region-macro-or-env' and cater for comments as well.
+ (TeX-fold-region-macro-or-env, TeX-fold-region-comment)
+ (TeX-fold-comment, TeX-fold-comment-do): New functions.
+
+ * latex.el (LaTeX-common-initialization): Set
+ `TeX-search-forward-comment-start-function'.
+ (LaTeX-fill-region-as-para-do, LaTeX-fill-paragraph)
+ (LaTeX-fill-code-comment): Call `TeX-search-forward-comment-start'
+ instead of `LaTeX-search-forward-comment-start'.
+
+ * tex.el (VirTeX-common-initialization): Set `comment-end-skip'
+ and `comment-use-syntax'.
+ (TeX-fold-menu): Add entry for folding comments.
+ (TeX-comment-forward): New compatibility function.
+ (TeX-comment-or-uncomment-region): Use it.
+ (TeX-search-forward-comment-start-function): New variable.
+ (TeX-search-forward-comment-start): New function.
+
+2006-12-10 David Kastrup <dak@gnu.org>
+
+ * latex.el (LaTeX-section-hook): Place into `LaTeX-macro' group.
+ (LaTeX-verbatim-macros-with-delims)
+ (LaTeX-verbatim-macros-with-braces): Same here.
+ (LaTeX-verbatim-environments): Place into `LaTeX-environment'
+ group.
+
+2006-12-07 Ralf Angeli <angeli@caeruleus.net>
+
+ * tex-bar.el (TeX-install-toolbar, LaTeX-install-toolbar): Add
+ `toolbarx-refresh' to `TeX-PDF-mode-hook' in the current buffer
+ only.
+
+2006-12-06 Ralf Angeli <angeli@caeruleus.net>
+
+ * context-nl.el (ConTeXt-nl-mode-initialization): Use correct
+ syntax for prompting for an optional argument in case of \items
+ macro.
+
+ * context-en.el (ConTeXt-en-mode-initialization): Use correct
+ syntax for prompting for an optional argument in case of \items
+ macro.
+
+ * context.el (ConTeXt-arg-setup): Capitalize prompt.
+
+2006-12-04 Miguel Frasson <mvsfrasson@gmail.com>
+
+ * toolbar-x.el (toolbarx-emacs-add-button):
+ Insert buttons in KEYMAP (new arg).
+ Unnecessary &optional removed.
+ Removed broken code for fake-button `:new-line'.
+ (toolbarx-emacs-refresh-process-button-or-insert-list):
+ New arg KEYMAP inserted.
+ Unnecessary &optional removed.
+ (toolbarx-emacs-refresh):
+ Fixed bug with `tool-bar-map' let-bound and made local variable.
+ (toolbarx-xemacs-refresh-process-button-or-insert-list):
+ Docstring improved..
+ (toolbarx-xemacs-refresh):
+ Using `nreverse' directly inside `let'.
+ `nreverse' is applied to lists generated from actual
+ data-structures, leaving such data-structures alone.
+
+2006-11-26 Ralf Angeli <angeli@caeruleus.net>
+
+ * context.el (ConTeXt-texexec-option-nonstop): New variable.
+ (ConTeXt-expand-options): Use it.
+
+2006-11-24 Ralf Angeli <angeli@caeruleus.net>
+
+ * tex.el (plain-TeX-enable-toolbar): Rename from
+ `TeX-enable-toolbar'.
+ (plain-TeX-maybe-install-toolbar): Rename from
+ `TeX-maybe-install-toolbar'.
+ (TeX-plain-tex-mode): Use new names.
+
+ * doc/auctex.texi (Running TeX and friends): Explicitely mention
+ `plain-TeX-enable-toolbar' and `LaTeX-enable-toolbar'.
+
+2006-11-16 Ralf Angeli <angeli@caeruleus.net>
+
+ * latex.el (LaTeX-fill-region-as-para-do): Do not break before
+ code comments if at a commented beginning of a line.
+
+2006-10-21 Reiner Steib <Reiner.Steib@gmx.de>
+
+ * doc/preview-latex.texi: Fix @node commands.
+
+2006-10-20 David Kastrup <dak@gnu.org>
+
+ * doc/auctex.texi (top): Mention reference card.
+
+ * doc/Makefile.in (PREVIEWTEXIFILES): Add `version.texi'.
+
+ * doc/auctex.texi: Add formatting emergencystretch. Move macros
+ input.
+ (top): Rearrange somewhat. Avoid duplicate contents (?).
+
+ * doc/preview-latex.texi: Restructure and relicense taking
+ auctex.texi as an example.
+
+ * doc/auctex.texi (top): In the user-visible part of the info
+ file, move the copying info completely to the "Copying this
+ manual" section in order to reduce clutter.
+
+2006-10-19 David Kastrup <dak@gnu.org>
+
+ * RELEASE: Mention previous XEmacs package problems.
+
+2006-10-16 David Kastrup <dak@gnu.org>
+
+ * tex-buf.el (TeX-parse-error, TeX-error, TeX-warning): Replace
+ the error parser basically by what we have in preview-latex.
+ However, this does not yet do the fine-grained hackery around
+ possible TeX quote characters that preview-latex employs in order
+ to get the correct character position in a line even under adverse
+ conditions.
+
+2006-10-11 David Kastrup <dak@gnu.org>
+
+ * tex-buf.el (TeX-error-description-list): Add preview-latex error
+ pattern here.
+
+ * tex.el (TeX-expand-list): Add "%m" pattern from preview.
+ (TeX-add-local-master): Make a local variable wrapper more
+ suitable for docstrip.
+
+2006-10-10 David Kastrup <dak@gnu.org>
+
+ * RELEASE: Mention space in file names, PostScript stack
+ tolerance.
+
+ * tex-buf.el (TeX-command-expand): Make `file' self-quoting in
+ expansion, and trick around with `TeX-command-pos' and other junk
+ in order to make the quoting stuff of "%`" and "%'" work.
+ (TeX-view-output-file): Became pretty pointless. Remove.
+
+ * tex.el (TeX-command-list): Use "%`" and "%'" magic to allow file
+ names with spaces.
+ (TeX-output-view-style): Don't quote "%s", that's the job of
+ `TeX-command-expand'.
+ (TeX-expand-list): Use the `-interaction' option. Define "%`",
+ " \"\\", "\"" and "%'" patterns. Somebody should probably rather
+ turn this into external functions in `tex-buf.el': the stuff
+ really has no business here and does not get byte-compiled. Use
+ `file' for "%o".
+
+2006-10-07 Ralf Angeli <angeli@caeruleus.net>
+
+ * latex.el (LaTeX-fill-region-as-paragraph): Match "foo\ %" as
+ well.
+
+2006-10-04 Ralf Angeli <angeli@caeruleus.net>
+
+ * tex.el (TeX-find-macro-boundaries): Prevent `up-list' and
+ friends from finding parens in comments if point is not in a
+ comment and vice versa.
+
+2006-10-02 David Kastrup <dak@gnu.org>
+
+ * doc/auctex.texi: Change the licensing terms to require no front
+ and back cover texts, and explicitly exclude the GFDL from being
+ licensed under the GFDL.
+ (top): Give a synopsis for the license section in the top menu.
+ Remove redundant version mentions, remove the explicit exclusion
+ of the GFDL from GFDL licensing: RMS says it is unnecessary.
+
+2006-09-29 David Kastrup <dak@gnu.org>
+
+ * autogen.sh: Use `=' instead of `==' in tests.
+
+ * doc/Makefile.in (version.texi): Let version.texi depend rather
+ on ChangeLog in order not to disturb pregenerated documentation.
+
+ * autogen.sh: Prepare `AUCTEXDATE' and `AUCTEXVERSION' for `make
+ dist'.
+
+ * Makefile.in (tar-ball): Pass version and date into autogen.sh
+
+ * doc/Makefile.in (AUCTEXDATE, AUCTEXVERSION): get from configure.
+ (AUCTEXTEXIFILES): Add fdl.texi and version.texi
+ (version.texi): create depending on Makefile.
+ (maintainer-clean): Remove version.texi. Should this be in the
+ distclean target instead?
+
+ * doc/fdl.texi: Add it.
+
+ * Makefile.in (DOCFILES): Remove, unused.
+ (doc/Makefile): Add target.
+ (info, dvi, install-man, install-docs, clean, distclean)
+ (tar-ball): depend on doc/Makefile
+
+ * doc/.cvsignore: Add version.texi, remove unused auto.texi.
+
+ * doc/auctex.texi: Rearrange header material, put under GFDL, add
+ license, take version numbers from version.texi.
+
+2006-09-21 David Kastrup <dak@gnu.org>
+
+ * RELEASE: Adapt to upcoming release.
+
+ * doc/install.texi (Configure): Remove reference to
+ `--with-kpathseasep' option.
+
+ * tex-mik.el (TeX-kpathsea-path-delimiter): initialize to ";".
+
+ * tex-fptex.el (TeX-kpathsea-path-delimiter): initialize to ";".
+
+2006-09-20 David Kastrup <dak@gnu.org>
+
+ * tex-buf.el: Let `TeX-active-buffer' return nil if there is no
+ command buffer. Change copyright notice from Kresten Krab Thorup
+ to reflect assignment to FSF.
+
+ * latex.el: Change copyright notice.
+
+ * tex.el: Change copyright notice.
+
+ * doc/tex-ref.tex: Change copyright notice.
+
+ * doc/auctex.texi: Change copyright notice.
+
+2006-09-17 Reiner Steib <Reiner.Steib@gmx.de>
+
+ * doc/faq.texi: Fix syntax error.
+
+2006-09-16 Ralf Angeli <angeli@caeruleus.net>
+
+ * doc/faq.texi: Explain the abbreviation AUC.
+
+2006-09-13 Reiner Steib <Reiner.Steib@gmx.de>
+
+ * toolbar-x.el (toolbarx-emacs-refresh): Don't modify global value
+ of `tool-bar-map'.
+
+2006-09-11 Reiner Steib <Reiner.Steib@gmx.de>
+
+ * latex.el (LaTeX-math-default): Remove X2ABB for \Pr. Suggested
+ by Adam Johnson <thu_zh@hotmail.com>.
+
+2006-09-08 Reiner Steib <Reiner.Steib@gmx.de>
+
+ * latex.el: Use read-kbd-macro instead of kbd for LaTeX-math-mode.
+ (LaTeX-math-default): Add bindings for \var... symbols.
+ (LaTeX-math-default): Change binding for \vartheta.
+
+2006-09-08 David Kastrup <dak@gnu.org>
+
+ * latex.el: Allow strings for keys in LaTeX-math-mode.
+ (LaTeX-math-list): Allow string for key.
+
+2006-09-06 Ralf Angeli <angeli@caeruleus.net>
+
+ * doc/auctex.texi (Mathematics): Align description of
+ `LaTeX-math-list' with reality.
+
+2006-08-25 David Kastrup <dak@gnu.org>
+
+ * doc/preview-faq.texi (Requirements, Installation Trouble)
+ (Customization): Update and remove stuff, mostly because
+ preview-latex is integrated with AUCTeX now.
+
+2006-08-30 Ralf Angeli <angeli@caeruleus.net>
+
+ * latex.el (TeX-latex-mode): Check if `tool-bar-mode' is bound.
+
+ * tex.el (TeX-plain-tex-mode): Check if `tool-bar-mode' is bound.
+
+2006-08-26 Ralf Angeli <angeli@caeruleus.net>
+
+ * doc/auctex.texi (European): Make replacement of
+ language-specific hyphen strings more obvious.
+
+2006-08-25 Ralf Angeli <angeli@caeruleus.net>
+
+ * style/csquotes.el: Bring up to par with version 3.5.
+
+2006-08-17 David Kastrup <dak@gnu.org>
+
+ * doc/auctex.texi (Viewing): Type fix.
+
+2006-08-05 Berend de Boer <berend@pobox.com>
+
+ * context-en.el: quite a few more English ConTeXt macros made
+ available in menu.
+
+ * context-nl.el: few more Dutch ConTeXt macros made available in menu.
+
+ * context.el: more ConTeXt macros made available in menu.
+
+2006-08-02 Reiner Steib <Reiner.Steib@gmx.de>
+
+ * tex-bar.el (TeX-bar-TeX-button-alist, TeX-bar-LaTeX-button-alist):
+ Make `file' invisible in TeX-PDF-mode. Add clean.
+ (TeX-bar-TeX-buttons, TeX-bar-LaTeX-buttons): Improve custom type.
+
+2006-07-27 Reiner Steib <Reiner.Steib@gmx.de>
+
+ * tex-bar.el (TeX-bar-TeX-buttons, TeX-bar-LaTeX-buttons): Improve
+ wording.
+
+ * doc/changes.texi: Add bug fixes. Add TeX tool bar.
+
+ * doc/auctex.texi (Running TeX and friends): Add
+ TeX-enable-toolbar.
+
+ * tex-bar.el: Copy of tool bar stuff from LaTeX-*.
+ (TeX-bar-TeX-buttons, TeX-bar-TeX-all-button-alists)
+ (TeX-bar-TeX-button-alist): New variables.
+ (TeX-bar-TeX-buttons, TeX-install-toolbar): New funtions.
+ (TeX-tool-bar-button-definitions): New custom group
+
+ * tex.el (TeX-enable-toolbar): New variable.
+ (TeX-maybe-install-toolbar): New function.
+ (TeX-plain-tex-mode): Add `TeX-maybe-install-toolbar'.
+
+2006-07-27 David Kastrup <dak@gnu.org>
+
+ * doc/wininstall.texi: Add explanation of how to augment `PATH'.
+
+ * doc/todo.texi (Mid-term Goals): Typo.
+
+2006-07-25 David Kastrup <dak@gnu.org>
+
+ * style/doc.el ("doc"): Add macrocode and macrocode* to
+ indentation-neutral environment list.
+
+ * latex.el (LaTeX-insert-environment): Leave mark at start of
+ content when inserting around active region.
+
+2006-07-11 David Kastrup <dak@gnu.org>
+
+ * latex.el (LaTeX-font-list): Add `\mathbb' on C-c C-f C-s.
+
+2006-07-25 Ralf Angeli <angeli@caeruleus.net>
+
+ * font-latex.el (font-latex-match-script): Don't match groups
+ spanning more than one line in order to avoid visually wrong
+ indentation in subsequent lines.
+ (font-latex-match-quotation): Do not match escaped quotation
+ marks.
+
+2006-07-23 Ralf Angeli <angeli@caeruleus.net>
+
+ * bib-cite.el, tex-mik.el, doc/changes.texi, doc/history.texi,
+ doc/wininstall.texi: Fix spelling of MiKTeX.
+
+2006-07-21 Ralf Angeli <angeli@caeruleus.net>
+
+ * font-latex.el (font-latex-match-script): Fix last check-in.
+
+2006-07-18 Ralf Angeli <angeli@caeruleus.net>
+
+ * font-latex.el (font-latex-match-script): Apply subscript and
+ superscript highlighting only once in order to prevent the font
+ size becoming too small.
+
+2006-07-15 Ralf Angeli <angeli@caeruleus.net>
+
+ * latex.el (LaTeX-maybe-install-toolbar): Enable tool bar in LaTeX
+ mode only.
+ (LaTeX-maybe-install-toolbar): Revert last change.
+ (TeX-latex-mode): Set `tool-bar-mode-on-hook' buffer-locally
+ instead.
+
+2006-07-12 Ralf Angeli <angeli@caeruleus.net>
+
+ * latex.el (LaTeX-fill-move-to-break-point): Fix regexp for
+ matching whitespace and comment characters at the start of a line.
+ Simplify forward search.
+
+2006-07-11 Ralf Angeli <angeli@caeruleus.net>
+
+ * tex.el (TeX-find-macro-boundaries, TeX-find-macro-start): Remove
+ unused argument.
+ (TeX-find-macro-end-helper): Handle macros at the end of the
+ buffer correctly.
+
+2006-07-10 Ralf Angeli <angeli@caeruleus.net>
+
+ * tex.el (TeX-math-close-double-dollar): New variable.
+ (TeX-insert-dollar): Use it.
+
+ * Makefile.in, doc/Makefile.in (datarootdir): New variable used by
+ autoconf 2.59e.
+
+2006-07-09 Ralf Angeli <angeli@caeruleus.net>
+
+ * aclocal.m4 (EMACS_CHECK_MULE): Check for EMACS_UNIBYTE
+ environment variable and do not set MULESRC if it is present.
+
+2006-07-07 Ralf Angeli <angeli@caeruleus.net>
+
+ * tex.el (TeX-normal-mode): Force update of style list.
+
+2006-07-02 Ralf Angeli <angeli@caeruleus.net>
+
+ * tex.el (TeX-doc-backend-alist): Explicitely supply doc directory
+ for non-kpathsea-based TeX systems.
+
+2006-06-29 Ralf Angeli <angeli@caeruleus.net>
+
+ * latex.el (LaTeX-fill-region-as-paragraph): Fix treatment of code
+ comments in case of something like "\%}%".
+
+2006-06-24 Ralf Angeli <angeli@caeruleus.net>
+
+ * tex.el (TeX-clean): Delete files in directory of master file.
+
+2006-06-23 Joshua Buhl <jbuhl_nospam@gmx.de>
+
+ * doc/tex-ref.tex (title{Outlining TeX Documents}): new section.
+
+2006-06-19 Ralf Angeli <angeli@caeruleus.net>
+
+ * style/amsmath.el ("amsmath"): Prompt for alignment option with
+ subarray environments.
+
+2006-06-18 Ralf Angeli <angeli@caeruleus.net>
+
+ * tex.el (TeX-doc-backend-alist): Preserve window configuration
+ when checking for info backends.
+
+2006-06-17 Ikumi Keita <ikumi@revery.net>
+
+ * tex.el (TeX-parse-arguments): Makes to work with proper value of
+ TeX-insert-macro-default-style.
+ (TeX-insert-braces): Place braces with right direction with active
+ region, (related to the case when the region is being marked
+ backwards).
+
+2006-06-17 Masayuki Ataka <ataka@milk.freemail.ne.jp>
+
+ * tex.el (TeX-clean): Delete generated files associated with
+ `TeX-region-file'. Suggested by Ikumi Keita <ikumi@revery.net>.
+
+2006-06-12 Ralf Angeli <angeli@caeruleus.net>
+
+ * tex.el (Info-find-file): Do not autoload.
+ (TeX-doc-backend-alist): Use a method for checking the presence of
+ an info file which works in Emacs 21 as well.
+
+2006-06-11 Ralf Angeli <angeli@caeruleus.net>
+
+ * tex.el (TeX-doc-backend-alist): Don't error out if
+ `Info-find-file' is not available.
+ (TeX-doc): Use `interactive-p' instead of `called-interactively-p'
+ which is not available in Emacs 21.
+
+2006-06-11 Ikumi Keita <ikumi@revery.net>
+
+ * style/amsmath.el ("amsmath"): Docfix for 'uproot'.
+ (LaTeX-amsmath-env-alignat): Fix typo.
+
+2006-06-08 David Kastrup <dak@gnu.org>
+
+ * Makefile.in (PREVIEW_BUILD_DIR): New variable for building the
+ preview standalone bundle.
+ (preview-ball): New target for creating the preview standalone
+ bundle for CTAN.
+
+2006-06-08 Reiner Steib <Reiner.Steib@gmx.de>
+
+ * auctex.spec (%post, %postun): Use mktexlsr instead of texhash.
+ Only update the relevant ls-R file.
+ (%install): Add comment about preview.cfg.
+ (%install, %files): prauctex.cfg is the config file, not
+ preview.cfg.
+
+2006-06-07 Ralf Angeli <angeli@caeruleus.net>
+
+ * latex.el (LaTeX-set-paragraph-start): New function.
+ (LaTeX-paragraph-commands-add-locally)
+ (LaTeX-common-initialization): Use it.
+
+2006-06-07 Reiner Steib <Reiner.Steib@gmx.de>
+
+ * Version 11.83 released.
+
+2006-06-07 Reiner Steib <Reiner.Steib@gmx.de>
+
+ * Makefile.in (full-release): Remove duplicate pass phrase prompt.
+ (release-commit): Only commit ChangeLog.
+
+ * Makefile.in (rpm-packages): Rename from rpm-builds.
+
+ * RELEASE: Fix typo.
+
+ * Makefile.in (rpm-builds): Add preview-tetex.
+
+ * auctex.spec: Add "-n" for preview-tetex.
+ (%install): Create preview.cfg.
+
+2006-06-07 David Kastrup <dak@gnu.org>
+
+ * RELEASE: Add info about preview RPM.
+
+ * doc/install.texi (Advice for package providers): Adapt package
+ advice to what we actually do for RPM files.
+
+ * auctex.spec: attempt to add preview-tetex package.
+
+2006-06-07 Reiner Steib <Reiner.Steib@gmx.de>
+
+ * Makefile.in (XEMACS_BUILD_DIR): New variable.
+ (xemacs-package): Use it.
+ (tar-ball-clean): Add XEMACS_BUILD_DIR.
+ (CP): New variable.
+ (tar-ball, www-doc): Use it.
+
+ * RELEASE: Update RPM stuff.
+
+ * tex.el (TeX-line-number-at-pos): New compatibility function.
+
+ * style/pdfsync.el (LaTeX-pdfsync-output-page): Use it.
+
+ * auctex.spec (Obsoletes): Remove preview-latex-common.
+
+2006-06-06 Ralf Angeli <angeli@caeruleus.net>
+
+ * style/pdfsync.el (LaTeX-pdfsync-output-page): Initialize
+ `sync-record' with a non-nil value.
+
+ * doc/auctex.texi (Viewing): Fix reference to Commands node
+ looking ugly in info output. Slightly rearrange forward/inverse
+ search section. Document pdfsync support a bit more in detail.
+
+2006-06-06 Reiner Steib <Reiner.Steib@gmx.de>
+
+ * RELEASE: Use "SUSE" instead of "SuSE".
+
+ * auctex.spec (Release): Bump to 1.
+ (%changelog): Add 11.83.
+
+ * doc/changes.texi: Add @xref for pdfsync.
+
+ * doc/auctex.texi (Viewing): Mention pdfsync.
+
+ * doc/todo.texi (Wishlist): Add newline. Mention pdfsync.
+
+2006-06-06 David Kastrup <dak@gnu.org>
+
+ * RELEASE: Add details about downloadable packages. Beg harder.
+
+2006-06-05 Reiner Steib <Reiner.Steib@gmx.de>
+
+ * RELEASE: Mention LaTeX tool bar.
+
+2006-06-05 Ralf Angeli <angeli@caeruleus.net>
+
+ * font-latex.el (font-latex-quote-regexp-beg)
+ (font-latex-quotes-control): Make buffer-local.
+ (font-latex-add-quotes): Revert last change and do not make
+ `font-latex-quotes-control' buffer-local which it now already is.
+
+2006-06-04 Ralf Angeli <angeli@caeruleus.net>
+
+ * font-latex.el (font-latex-add-quotes): Make
+ `font-latex-quote-regexp-beg' buffer-local.
+
+2006-06-04 Reiner Steib <Reiner.Steib@gmx.de>
+
+ * Makefile.in (rpm-builds): New target.
+ (full-release): Use gpg-agent if available.
+ (RPM_SIGN): New variable.
+ (rpm-builds): Use it.
+
+ * doc/install.texi (Advice for non-privileged users): Reword to
+ avoid underfull hbox.
+
+2006-06-03 Ralf Angeli <angeli@caeruleus.net>
+
+ * doc/auctex.texi (top): Update master menu.
+ (Running TeX and friends): Update menu.
+ (Miscellaneous Commands): Remove.
+ (Cleaning, Documentation): New nodes.
+
+ * doc/changes.texi: Update references to documentation about
+ cleaning and documentation access.
+
+2006-06-02 Reiner Steib <Reiner.Steib@gmx.de>
+
+ * doc/auctex.texi (Miscellaneous Commands): New node.
+
+ * doc/changes.texi: Add @xref-s.
+
+2006-06-02 David Kastrup <dak@gnu.org>
+
+ * doc/changes.texi: Change one ref to xref.
+
+2006-05-31 Reiner Steib <Reiner.Steib@gmx.de>
+
+ * doc/changes.texi: Conditionalize reference.
+
+ * doc/Makefile.in (MAKEINFO_PLAIN): Remove --no-validate.
+
+ * auctex.spec (%files emacs): Remove %exclude.
+
+2006-05-30 Reiner Steib <Reiner.Steib@gmx.de>
+
+ * doc/Makefile.in (MAKEINFO_PLAIN): New. Add --no-validate.
+
+ * doc/changes.texi: Add tool bar.
+
+ * doc/auctex.texi (top): Remove tool bar.
+ (Running TeX and friends): Add tool bar here. Adjust.
+
+2006-05-25 David Kastrup <dak@gnu.org>
+
+ * RELEASE: Mention file-line-error style messages.
+ Mention XyMTeX fix.
+
+ * doc/changes.texi: The same.
+
+
+2006-05-25 Ralf Angeli <angeli@caeruleus.net>
+
+ * tex.el (TeX-update-style-hook): New variable.
+ (TeX-update-style): Use it.
+ (TeX-remove-style): Fix typo.
+
+ * font-latex.el (font-latex-quotes-internal): New variable.
+ (font-latex-quotes-set-internal): New function.
+ (font-latex-match-quotation): Use it. Use
+ `font-latex-quotes-internal' instead of `font-latex-quotes'.
+ (font-latex-setup): Remove code for figuring out type of
+ language-specific quotation mark matching which is now in
+ `font-latex-quotes-set-internal'.
+
+ * RELEASE: Update for 11.83.
+
+ * auctex.spec, configure.ac, doc/auctex.texi, doc/changes.texi,
+ doc/preview-latex.texi, doc/tex-ref.tex: Bump version number.
+
+ Update address of FSF in GPL notices.
+
+2006-05-22 Ralf Angeli <angeli@caeruleus.net>
+
+ * font-latex.el (font-latex-quotes-fallback)
+ (font-latex-quote-style-list-french)
+ (font-latex-quote-style-list-german): New variables.
+ (font-latex-quotes): Add `auto' option.
+ (font-latex-setup): Try to derive type of quotation mark matching
+ from document properties.
+
+ * tex.el (TeX-elt-of-list-member): New function.
+
+ * doc/auctex.texi (Font Locking): Document `auto' option of
+ `font-latex-quotes'.
+
+2006-05-21 Ralf Angeli <angeli@caeruleus.net>
+
+ * tex.el (TeX-source-specials-mode): Mark as safe.
+ (TeX-PDF-mode): Use `TeX-booleanp'.
+ (TeX-booleanp): New function.
+
+ * font-latex.el (font-latex-quotes): Mark as safe.
+ (font-latex-fontify-script): Use `TeX-booleanp'.
+
+2006-05-17 Ralf Angeli <angeli@caeruleus.net>
+
+ * latex.el (LaTeX-forward-paragraph): Make regexp more efficient.
+
+2006-05-15 Reiner Steib <Reiner.Steib@gmx.de>
+
+ * tex.el (TeX-PDF-mode): Rewrite safe-local-variable property for
+ Emacs 21 compatibility.
+
+ * font-latex.el (font-latex-fontify-script): Ditto.
+
+2006-05-10 Reiner Steib <Reiner.Steib@gmx.de>
+
+ * tex.el (TeX-master): Quote safe-local-variable lambda expression
+ to avoid byte compilation.
+
+2006-05-08 Reiner Steib <Reiner.Steib@gmx.de>
+
+ * font-latex.el (font-latex-fontify-script): Mark as
+ safe-local-variable.
+
+2006-05-07 Reiner Steib <Reiner.Steib@gmx.de>
+
+ * tex.el (TeX-PDF-mode): Mark as safe-local-variable.
+ (TeX-master): Don't use t in safe-local-variable declaration.
+ (TeX-doc): Clarify.
+
+2006-05-07 Ralf Angeli <angeli@caeruleus.net>
+
+ * font-latex.el (font-latex-match-quotation): Do not match
+ quotation marks in math constructs.
+
+2006-05-05 Berend de Boer <berend@pobox.com>
+
+ * context.el (ConTeXt-mode-common-initialization): Previous fix
+ still wrong. Problem is that all local variables were killed, so
+ added a save/restore around the common initialisation.
+
+2006-05-04 Berend de Boer <berend@pobox.com>
+
+ * context-nl.el (context-nl-mode) and context-en.el
+ (context-en-mode): can now assume that ConTeXt-current-interface
+ is buffer local.
+
+ * context.el (ConTeXt-current-interface): this variable should
+ always be buffer local. With this and above two changes having
+ buffers with two interfaces at the same time works correctly
+ (again?).
+
+2006-04-26 Ralf Angeli <angeli@caeruleus.net>
+
+ * tex-buf.el (TeX-TeX-sentinel-check, TeX-parse-error): Support
+ file-line-error error indicators.
+
+2006-04-22 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * tex.el (TeX-format-list): Extend regexp for ConTeXt mode.
+
+2006-04-21 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * latex.el (docTeX-mode): Make filling and indentation aware of
+ DocStrip guards.
+
+2006-04-20 David Kastrup <dak@gnu.org>
+
+ * tex-buf.el (TeX-warning): Don't balk if `string' is nil.
+
+2006-04-17 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * font-latex.el (font-latex-match-script): Fix matching of nested
+ braces.
+
+2006-04-12 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * latex.el (LaTeX-babel-insert-hyphen): Do not error out at
+ beginning of buffer.
+
+2006-03-28 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * Makefile.in (install-metadata): Do not use an inline test for
+ checking if preview is enabled. Just to be on the safe side.
+
+2006-03-27 David Kastrup <dak@gnu.org>
+
+ * doc/intro.texi (Introduction): refer to `below' instead of
+ probably non-existing `preview/README'.
+
+ * tex.el: tiny typo.
+
+ * latex.el (LaTeX-close-environment): Allow prefix argument to
+ reopen the environment.
+
+2006-03-22 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * Makefile.in (install-metadata): Append preview/auto.el to start
+ file if configured with preview-latex.
+
+2006-03-20 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * latex.el (LaTeX-insert-environment): Do not polute the kill
+ ring.
+
+2006-03-15 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * latex.el (TeX-latex-mode): Set up tool bar correctly for XEmacs
+ and activate it for every buffer in Emacs. Run mode hooks as late
+ as possible.
+
+2006-03-14 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * configure.ac: Check for `make' and abort if not present. Use
+ `AC_PROG_MAKE_SET' instead of deprecated `AC_SET_MAKE'.
+
+ * latex.el (LaTeX-common-initialization): Add \dots to supported
+ TeX symbols.
+
+2006-03-13 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * tex.el (TeX-mode-map): Change `C-c ?' binding from
+ `describe-mode' to `TeX-doc'.
+ (TeX-common-menu-entries): Add `Find Documentation...' entry for
+ `TeX-doc'.
+ (plain-TeX-menu-entries): Remove space before ellipsis.
+ (TeX-doc-backend-alist): Make texdoc backend available in all
+ modes.
+
+ * latex.el (LaTeX-mode-menu): Remove space before ellipsis.
+
+ * doc/changes.texi: Advertise cleaning and documentation finding
+ functionality.
+
+2006-03-07 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * tex-buf.el (TeX-next-error, TeX-active-buffer): Get master from
+ the command buffer.
+ (TeX-error, TeX-warning): Do not set `TeX-master' but set
+ `TeX-command-buffer' to the right value instead.
+
+2006-02-17 Masayuki Ataka <ataka@milk.freemail.ne.jp>
+
+ * tex-buf.el (TeX-error-description-list): Fix error messages.
+ Changed from `documentstyle' to `documentclass'. The duplicated
+ entries `counter too large' are combined. Add the name of
+ referenced book and the section number to the entry `Missing \\$
+ inserted'.
+
+ * tex-jp.el (TeX-error-description-list): Likewise.
+
+2006-02-16 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * tex.el (TeX-master): Mark as safe.
+
+2006-02-09 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * doc/wininstall.texi: Intersperse some information about PATH.
+
+2006-02-08 Reiner Steib <Reiner.Steib@gmx.de>
+
+ * tex.el (TeX-clean-default-intermediate-suffixes): Add .brf and
+ .out for hyperref.
+
+2006-02-08 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * tex.el (TeX-kpathsea-format-alist): Add search specs for
+ documentation.
+ (Info-find-file, info-lookup->completions): Autoload.
+ (TeX-doc-backend-alist): New variable.
+ (TeX-doc): New function.
+
+ * doc/todo.texi (Wishlist): Add a few words about documentation
+ lookup for macros.
+
+2006-02-07 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * tex-buf.el (TeX-run-ispell-on-document): Reintroduce for
+ compatibility reasons.
+
+ * tex.el (TeX-command-list): Use `TeX-run-function' instead of
+ `TeX-run-ispell-on-document' for "Spell" option. Remove
+ `TeX-run-ispell-on-document' as option for the third element of an
+ item.
+ (TeX-ispell-document): Move here from tex-buf.el.
+
+ * tex-buf.el (TeX-run-ispell-on-document): Remove.
+ (TeX-ispell-document): Move to tex.el.
+
+2006-02-07 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * tex.el (TeX-command-list): Remove "ConTeXt Clean". Add general
+ "Clean" and "Clean All" options. Add `TeX-run-function' as an
+ option for the third element of an item and document it.
+ (TeX-clean-default-intermediate-suffixes)
+ (TeX-clean-default-output-suffixes, TeX-clean-confirm): New
+ variables.
+ (dired-mark-pop-up): Autoload.
+ (TeX-clean): New function.
+
+ * tex-buf.el (TeX-run-function): New function.
+
+ * tex-info.el (Texinfo-clean-intermediate-suffixes)
+ (Texinfo-clean-output-suffixes): New variables.
+
+ * latex.el (docTeX-clean-intermediate-suffixes)
+ (docTeX-clean-output-suffixes)
+ (LaTeX-clean-intermediate-suffixes, LaTeX-clean-output-suffixes):
+ New variables.
+
+ * context.el (ConTeXt-clean-intermediate-suffixes)
+ (ConTeXt-clean-output-suffixes): New variables.
+
+2006-02-04 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * font-latex.el (font-latex-make-sectioning-faces): Set the face
+ size for XEmacs again after `set-face-parent' was called which
+ erroneously overwrites the original size. Without this fix
+ sectioning faces may be unscaled after starting XEmacs.
+
+2006-02-03 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * doc/auctex.texi (top): Add detailed menu for better
+ accessibility. Fix formatting/usage of references to RefTeX and
+ preview-latex manuals.
+
+2006-02-03 Reiner Steib <Reiner.Steib@gmx.de>
+
+ * latex.el (LaTeX-enable-toolbar): New variable.
+ (LaTeX-maybe-install-toolbar): New function.
+ (TeX-latex-mode): Add LaTeX-maybe-install-toolbar to
+ tool-bar-mode-on-hook.
+
+2006-01-31 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * aclocal.m4: Check for {late,last,early}-package-hiearchies if
+ `late-packages' is not bound (which indicates we are dealing with
+ XEmacs 21.5).
+
+2006-01-28 Masayuki Ataka <ataka@milk.freemail.ne.jp>
+
+ * tex-jp.el (TeX-command-list): Use function ignore insted of nil
+ for the third element of `separator for command menu' because
+ defcustom of TeX-command-list requires the third element function.
+ Reported by Ikumi Keita <ikumi@revery.net>.
+
+2006-01-28 Ikumi Keita <ikumi@revery.net>
+
+ * tex-buf.el (TeX-run-discard-foreground): Renamed from
+ TeX-run-dviout.
+ (TeX-run-dviout): alias to TeX-run-discard-foreground.
+
+ * tex.el (TeX-command-list): Use TeX-run-discard-foreground
+ instead of TeX-run-dviout.
+
+2006-01-25 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * style/csquotes.el (LaTeX-csquotes-insert-environment): Set
+ prompt for mandatory arguments.
+ ("csquotes"): Bring up to par with csquotes 3.2.
+
+ * style/url.el ("url"): Support the \path macro.
+
+2006-01-25 Masayuki Ataka <ataka@milk.freemail.ne.jp>
+
+ * tex-buf.el (TeX-run-dviout): Undo previous change.
+
+ * tex.el (TeX-command-list): Ditto.
+
+2006-01-24 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * latex.el (LaTeX-verbatim-macros-with-delims)
+ (LaTeX-verbatim-macros-with-delims-local)
+ (LaTeX-verbatim-macros-with-braces)
+ (LaTeX-verbatim-macros-with-braces-local): Doc fix.
+ (LaTeX-verbatim-environments, LaTeX-verbatim-environments-local):
+ Doc fix. Make the correct variable buffer-local.
+ (LaTeX-verbatim-macros-with-delims)
+ (LaTeX-verbatim-macros-with-braces, LaTeX-verbatim-environments):
+ New functions.
+ (LaTeX-verbatim-macro-boundaries): Find macro in case point is
+ just in front of it.
+ (LaTeX-verbatim-p): Doc fix. Correct macro lookup.
+ (LaTeX-fill-move-to-break-point): Do not break verbatim macros
+ with braces across lines (in addition to macros with delimiters).
+ For example in case of \lstinline{...} this would result in an
+ error and in case of \url{...} spaces would be messed up (in
+ conjunction with the `obeyspaces' package option).
+
+ * font-latex.el (font-latex-set-syntactic-keywords): Instead of
+ appending lists of verbatim macros and environments manually use
+ new LaTeX-verbatim-* functions.
+
+2006-01-24 Ikumi Keita <ikumi@revery.net>
+
+ * latex.el (LaTeX-fill-move-to-break-point): Fix previous change.
+
+2006-01-23 Reiner Steib <Reiner.Steib@gmx.de>
+
+ * Makefile.in: Add CP_A. Add coment on maintainer-only targets.
+ (xemacs-package): Use CP_A.
+
+2006-01-22 Ikumi Keita <ikumi@revery.net>
+
+ * latex.el (LaTeX-fill-move-to-break-point): Use TeX-espaced-p to
+ check TeX escape char.
+
+ * tex.el (TeX-command-list): Removed TeX-run-dviout because dviout
+ here is only work with Emacs on MS-DOS.
+
+ * tex-buf.el (TeX-run-dviout): Removed.
+
+ * tex-jp.el (japanese-TeX-command-list): Remove TeX-run-dviout.
+ Commented out easy-menu-define (plain-TeX|LaTeX)-mode-command-nemu.
+ (japanese-TeX-mode, japanese-plain-tex-mode)
+ (japanese-latex-mode): Doc fix.
+ (japanese-TeX-self-insert-command): Renamed from
+ tex-jp-self-insert-command.
+ (TeX-insert-punctuation): Follow the change.
+ (TeX-error-description-list): Doc fix.
+
+2006-01-22 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * tex-fold.el (TeX-fold-macro-spec-list): Fold pageref macro as
+ well.
+
+2006-01-16 David Kastrup <dak@gnu.org>
+
+ * Makefile.in (xemacs-package): Don't clean up after building so
+ that we have a chance for debugging.
+
+2006-01-14 David Kastrup <dak@gnu.org>
+
+ * configure.ac: Don't check for INSTALL_INFO if already set.
+
+2006-01-14 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * doc/changes.texi: Advertize pdfsync support.
+
+ * latex.el (LaTeX-header-end, LaTeX-trailer-start): Do not pick up
+ commented header end or trailer start respectively.
+
+2006-01-13 David Kastrup <dak@gnu.org>
+
+ * Makefile.in (xemacs-package): Don't run `install-info' and
+ `texhash'
+
+2006-01-11 Reiner Steib <Reiner.Steib@gmx.de>
+
+ * Makefile.in (tar-ball): Fix use of TAG_EXPORT.
+
+2006-01-04 Reiner Steib <Reiner.Steib@gmx.de>
+
+ * tex-fold.el (TeX-fold-mode): Autoload as an interactive
+ function.
+
+2005-12-28 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * style/pdfsync.el: New file.
+
+ * Makefile.in (STYLESRC): Add style/pdfsync.el.
+
+ * tex.el (TeX-output-view-style): Add %(outpage) expander to xpdf
+ call. Start xpdf in server mode.
+ (TeX-expand-list): New %(outpage) expander.
+ (TeX-sync-output-page-function): New variable.
+
+2005-12-28 Reiner Steib <Reiner.Steib@gmx.de>
+
+ * Makefile.in (tar-ball): Use TAG_EXPORT for snapshots.
+
+ * auctex.spec (description): Add preview-latex.
+ (install, files): Don't create preview directory.
+
+2005-12-21 Ikumi Keita <ikumi@revery.net>
+
+ * latex.el (LaTeX-mark-section): Remove read-only mark `*' from
+ interactive.
+ (LaTeX-fill-move-to-break-point): Use `*' instead of `+' for
+ looking back Japanese Macro in order to prevent breaking line just
+ after TeX-esc, in other words, not to break TeX command `\JJJ'
+ into `\' and `JJJ'. Use variable linebeg instead of function
+ line-beginning-position.
+
+2005-12-17 Reiner Steib <Reiner.Steib@gmx.de>
+
+ * auctex.spec (Provides): Make emacs/site-lisp/preview.
+ (Release): Bump to 1.
+
+2005-12-17 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * Version 11.82 released.
+
+2005-12-17 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * Makefile.in (COMMITTER_NAME, COMMITTER_EMAIL): New variables.
+ (release-commit): Use them.
+
+ * auctex.spec, configure.ac, doc/auctex.texi,
+ doc/preview-latex.texi, doc/tex-ref.tex: Bump version number.
+
+ * doc/changes.texi: Minor rewordings for 11.82.
+
+2005-12-08 Reiner Steib <Reiner.Steib@gmx.de>
+
+ * tex.el (TeX-completing-read-multiple): Mention the availability
+ of crm.el in recent XEmacs packages.
+
+2005-12-07 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * tex.el (TeX-macro-history): New variable.
+ (TeX-insert-macro): Use it.
+
+2005-12-05 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * tex-info.el (TeX-texinfo-mode): Do not add braces around
+ arguments of commands which do not expect them.
+
+ * latex.el (TeX-arg-free): Move to tex.el.
+
+ * tex.el (TeX-arg-free): Move here from latex.el.
+ (TeX-insert-dollar): Do not abort with an error with an error if a
+ dollar is inserted in a math construct not started with a dollar.
+ Issue a message about the mismatch instead and insert the dollar.
+
+ * font-latex.el (font-latex-quote-list): Add default quotes.
+ (font-latex-add-quotes): New function.
+ (font-latex-match-quotation): Remove hard-coded quotation mark
+ lists and adapt `font-latex-quote-list' to the active quote style
+ instead. Babel-specific quotation mark strings are now added to
+ `font-latex-quote-list' by style files.
+
+ * style/slovak.el, style/ngerman.el, style/italian.el,
+ style/german.el, style/danish.el: Add fontification support for
+ quotation mark strings provided by babel.
+
+2005-11-30 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * texmathp.el: Revert last change because it makes math
+ switch/toggle matching tricks harder to use.
+
+ * latex.el (LaTeX-listify-package-options): New function.
+ (LaTeX-auto-cleanup): Use it.
+ (LaTeX-arg-usepackage): Add \usepackage options to style list.
+
+ * tex.el (TeX-insert-quote): Turn opening/closing quotation mark
+ into "" if <"> is typed with point behind it and insert " with any
+ following <"> key type.
+
+2005-11-29 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * texmathp.el (texmathp-in-commented-line, texmathp-in-comment):
+ New functions.
+ (texmathp-match-environment): Use them.
+ (texmathp-match-switch): Make aware of comments.
+
+2005-11-27 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * style/MinionPro.el: New file. Contributed by Mark Trettin.
+
+ * Makefile.in (STYLESRC): Add style/MinionPro.el.
+
+ * doc/changes.texi: Advertise support for MinionPro.sty.
+
+ * RELEASE (IMPORTANT): Add Mark.
+
+2005-11-25 David Kastrup <dak@gnu.org>
+
+ * doc/todo.texi (Wishlist): Add suggestion about longlines.el.
+
+2005-11-24 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * tex.el (TeX-toggle-debug-warnings): Use correct variable for
+ state indication.
+ (TeX-kpathsea-format-alist): Add entry for "sty". Prevents
+ kpathsea-based search from failing e.g. in case of \usepackage
+ insertion.
+
+ * doc/changes.texi: Document removal of
+ `font-latex-title-fontify' alias.
+
+ * font-latex.el: Remove alias for `font-latex-title-fontify'.
+ (font-latex-make-user-keywords): Use hack from tex-mode.el to
+ fontify the backslash in "\end{verbatim}" and similar correctly.
+ (font-latex-set-syntactic-keywords): Use the backslash of
+ "\end{verbatim}" and similar for the syntax property, not the
+ newline character which led to fontification going wild when text
+ at the end of the environment was inserted.
+
+2005-11-22 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * doc/changes.texi: Mention completion support for LaTeX packages.
+
+ * RELEASE: Update for 11.82.
+
+2005-11-19 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * tex-site.el.in (tex-site-unload-hook): Don't let it fail on
+ Emacs 21.
+
+2005-11-18 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * doc/changes.texi: Fix key binding for
+ `TeX-toggle-debug-bad-boxes'.
+
+ * doc/auctex.texi (Quotes): Document change of
+ `TeX-insert-braces'.
+ (Filling): `M-g' for `LaTeX-fill-region' has been deactivated for
+ a long time. Reflect that in the documentation.
+
+ * tex.el (TeX-token-char): Doc fix.
+ (TeX-insert-braces): Do something more sensible if region is
+ activated.
+
+2005-11-17 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * tex-buf.el (TeX-parse-error): Do not match empty strings.
+
+2005-11-12 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * tex-buf.el (TeX-toggle-debug-boxes): Move to tex.el.
+ (TeX-LaTeX-sentinel-has-warnings)
+ (TeX-LaTeX-sentinel-has-bad-boxes): New functions.
+ (TeX-LaTeX-sentinel): Check for warnings and bad boxes and inform
+ the user is the respective options are non-nil.
+ (TeX-parse-error): Conditionalize checking for warnings and bad
+ boxes. Find warnings without line numbers as well.
+ (TeX-warning): Doc fix (no need to return nil anymore). Support
+ warnings without line numbers.
+
+ * tex.el (TeX-toggle-debug-boxes): Do not autoload.
+ (TeX-debug-bad-boxes): Doc fix.
+ (TeX-debug-warnings): New variable.
+ (TeX-toggle-debug-bad-boxes): Moved here from tex-buf.el.
+ (TeX-toggle-debug-warnings): New function.
+ (TeX-mode-map): Define new key bindings for
+ `TeX-toggle-debug-bad-boxes' and `TeX-toggle-debug-warnings'.
+ (TeX-mode-specific-command-menu-entries): Add or change menu
+ entries for `TeX-toggle-debug-bad-boxes' and
+ `TeX-toggle-debug-warnings'.
+
+ * doc/auctex.texi (Debugging): Document debugging support for
+ warnings and changes of debugging bad boxes.
+
+ * doc/changes.texi: Advertise debugging support for warnings and
+ changes of debugging bad boxes.
+
+ * font-latex.el (font-latex-set-syntactic-keywords): Doc fix.
+ Check if LaTeX-specific variables are bound which may be unbound
+ if font-latex is being used in ConTeXt mode.
+
+2005-11-07 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * tex.el (TeX-insert-backslash): Use regular function call instead
+ of `funcall'.
+
+2005-11-05 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * tex.el (TeX-electric-sub-and-superscript): New variable.
+ (TeX-insert-sub-or-superscript): New function.
+ (TeX-mode-map): Use `TeX-insert-sub-or-superscript' for `_' and
+ `^' keys.
+ (TeX-insert-backslash): New function.
+ (TeX-mode-map): Use `TeX-insert-backslash' for `\'.
+ (TeX-electric-escape): Adapt doc string.
+
+ * doc/auctex.texi (Mathematics): Document
+ `TeX-electric-sub-and-superscript'.
+
+ * doc/changes.texi: Advertise `TeX-electric-sub-and-superscript'.
+
+2005-10-31 Masayuki Ataka <ataka@milk.freemail.ne.jp>
+
+ * latex.el (LaTeX-fill-move-to-break-point): Do not break lines in
+ the Japanese Macros. Suggested by Ikumi Keita <ikumi@revery.net>.
+
+2005-10-30 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * doc/install.texi (Prerequisites): Update information about
+ development version of Emacs for Debian.
+ Update information about development version of Emacs for
+ Mac OS X and Windows.
+
+2005-10-29 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * style/frenchb.el, style/francais.el: Clean up.
+
+2005-10-28 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * tex.el (TeX-quote-language-alist, TeX-insert-quote): Support
+ functions as opening and closing quotation marks.
+
+ * style/frenchb.el: New file.
+
+ * style/francais.el: New file.
+
+ * doc/auctex.texi (European): Document support of French.
+
+ * doc/changes.texi: Advertise support of French.
+
+ * Makefile.in (STYLESRC): Add style/frenchb.el and
+ style/francais.el.
+
+2005-10-24 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * doc/install.texi (Configure): Document --with-kpathseasep.
+
+ * doc/auctex.texi (Commands): Add index entry for PDF mode.
+
+ * configure.ac (preview_enabled): Export `TEX' in unquoted form.
+
+2005-10-23 David Kastrup <dak@gnu.org>
+
+ * style/babel.el (LaTeX-babel-package-options): Only use 2
+ argument form of defvaralias in order not to make XEmacs barf.
+
+2005-10-23 Arne J¸rgensen <arne@arnested.dk>
+
+ * style/amstext.el (LaTeX-amstext-package-option): New variable.
+
+ * style/amstex.el (LaTeX-amstex-package-options): New variable.
+
+ * style/amsopn.el (LaTeX-amsopn-package-options): New variable.
+
+ * style/amsmath.el (LaTeX-amsmath-package-options): New variable.
+
+ * style/amsbsy.el (LaTeX-amsbsy-package-options): New variable.
+
+ * style/fancyref.el (LaTeX-fancyref-package-options): New
+ variable.
+
+ * style/harvard.el: Updated GPL to version 2. Fixed FSF address.
+ (LaTeX-harvard-package-options): New variable.
+
+ * style/index.el (LaTeX-index-package-options): New variable.
+
+ * style/listings.el (LaTeX-listings-package-options): New
+ variable.
+
+ * style/makeidx.el (LaTeX-makeidx-package-options): New variable.
+
+ * style/mdwlist.el (LaTeX-mdwlist-package-options): New variable.
+
+ * style/multind.el (LaTeX-multind-package-options): New variable.
+
+ * style/natbib.el (LaTeX-natbib-package-options): New variable.
+
+ * style/nicefrac.el (LaTeX-nicefrac-package-options): New
+ variable.
+
+ * style/paralist.el (LaTeX-paralist-package-options): New
+ variable.
+
+ * style/units.el (LaTeX-units-package-options): New variable.
+
+ * style/scrpage2.el (LaTeX-scrpage2-package-options): New
+ variable.
+
+2005-10-21 Reiner Steib <Reiner.Steib@gmx.de>
+
+ * toolbar-x.el (toolbarx-find-image): Fix previous commit.
+
+2005-10-21 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * tex-mik.el (tex-site): Require 'tex-site no more.
+
+ * doc/changes.texi: Document removal of 'tex-site requirement from
+ `tex-mik.el'.
+
+ * configure.ac (packagedir): Quote value of `infodir'.
+
+2005-10-20 David Kastrup <dak@gnu.org>
+
+ * toolbar-x.el: Revert mostly to 2005-05-02 state, but add a
+ fallback to find-image.
+
+2005-10-20 Reiner Steib <Reiner.Steib@gmx.de>
+
+ * toolbar-x.el (toolbarx-find-image): Use image-search-load-path
+ and image-load-path when available.
+ (toolbarx-find-image): Revert previous fix. Instead, rely on
+ find-image whenever possible and don't abuse locate-library.
+
+2005-10-20 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * font-latex.el (font-latex-make-user-keywords): Append string
+ face in order to make string fontification of ``foo $bar$ baz''
+ constructs work.
+
+2005-10-19 Arne J¸rgensen <arne@arnested.dk>
+
+ * latex.el (LaTeX-arg-usepackage): If
+ `LaTeX-<package>-package-options' is bound and nil don't ask for
+ package options.
+
+ * style/verbatim.el (LaTeX-verbatim-package-options): New
+ variable.
+
+ * style/varioref.el (LaTeX-varioref-package-options): New
+ variable.
+
+ * style/url.el (LaTeX-url-package-options): New variable.
+
+ * style/subfigure.el (LaTeX-subfigure-package-options): New
+ variable.
+
+ * style/inputenc.el (LaTeX-arg-inputenc-inputenc): Doc fix.
+ (LaTeX-inputenc-package-options): Doc fix.
+
+ * style/dk-bib.el (LaTeX-dk-bib-package-options): Doc fix.
+
+ * style/captcont.el (LaTeX-captcont-package-options): New
+ variable.
+
+ * style/booktabs.el (LaTeX-booktabs-package-options): New
+ variable.
+
+ * style/babel.el: Add doc string to `LaTeX-babel-package-options'
+ and use `defvar' instead of `setq'.
+
+ * style/alltt.el (LaTeX-alltt-package-options): New variable.
+
+2005-10-13 Reiner Steib <Reiner.Steib@gmx.de>
+
+ * style/dk-bib.el, style/inputenc.el: Add coding cookie. Delete
+ trailing whitespace. Reindent.
+
+2005-10-13 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * style/dk-bib.el (LaTeX-dk-bib-package-options): Define only
+ once.
+
+2005-10-13 Jan-Ake Larsson <jalar@mai.liu.se>
+
+ * tex-buf.el: Change defcustom group from TeX-commands to TeX-command
+
+2005-10-12 Arne J¸rgensen <arne@arnested.dk>
+
+ * tex.el: Provide a `TeX-completing-read-multiple' either by
+ defalias'ing `completing-read-multiple' or defining a wrapper
+ around `multi-prompt'.
+
+ * latex.el (LaTeX-arg-usepackage): New function. Asks about what
+ package to use, loads the AUCTeX style file, and asks about
+ package options (possibly based on definitions in the AUCTeX
+ style file).
+ (LaTeX-common-initialization): Use it.
+
+ * style/babel.el: Define `LaTeX-babel-package-options' to be a
+ list of languages/options for the babel package.
+
+ * style/inputenc.el: New file.
+
+ * style/dk-bib.el: New file.
+
+ * Makefile.in (STYLESRC): Added style/inputenc.el and
+ style/dk-bib.el.
+
+2005-10-10 Arne J¸rgensen <arne@arnested.dk>
+
+ * latex.el (LaTeX-auto-regexp-list): Removed spurious characters
+ in variable definition.
+
+2005-10-10 Reiner Steib <Reiner.Steib@gmx.de>
+
+ * doc/auctex.texi (top): Index "tool bar" and "toolbar". Use
+ "tool bar" in the text.
+
+ * doc/changes.texi: Use "tool bar".
+
+ * auctex.spec: Install auctex.el and preview-latex.el for SuSE
+ too. Don't use extraconfig.
+
+2005-10-07 Reiner Steib <Reiner.Steib@gmx.de>
+
+ * Makefile.in (tar-ball): Re-add fixed spec file.
+
+2005-10-07 Masayuki Ataka <ataka@milk.freemail.ne.jp>
+
+ * tex.el (TeX-token-char): New variable.
+ (plain-TeX-auto-regexp-list): Use it.
+ Suggested by Ikumi Keita <ikumi@revery.net>.
+
+ * latex.el (LaTeX-auto-regexp-list, BibTeX-auto-regexp-list): Use
+ it.
+
+ * tex-jp.el (LaTeX-auto-regexp-list, plain-TeX-auto-regexp-list)
+ (BibTeX-auto-regexp-list): Removed.
+
+2005-10-06 Reiner Steib <Reiner.Steib@gmx.de>
+
+ * auctex.spec: Fixes for Fedora. Create site-start.d and add
+ files.
+
+2005-10-02 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * tex-buf.el (TeX-BibTeX-sentinel): Shorten message in case of
+ errors.
+
+ * Makefile.in (install-lisp): Use MULESRC instead of MULEELC
+ because a `c' is already being appended by the installation code.
+
+ * tex-jp.el (japanese-TeX-command-list): Remove obsolete
+ `TeX-run-LaTeX' option.
+
+ * tex.el (TeX-current-macro): New function.
+
+ * latex.el (LaTeX-verbatim-macros-with-delims)
+ (LaTeX-verbatim-macros-with-delims-local)
+ (LaTeX-verbatim-macros-with-braces)
+ (LaTeX-verbatim-macros-with-braces-local)
+ (LaTeX-verbatim-environments, LaTeX-verbatim-environments-local):
+ New variables.
+ (LaTeX-verbatim-macro-boundaries, LaTeX-current-verbatim-macro)
+ (LaTeX-verbatim-p, LaTeX-search-forward-comment-start): New
+ functions.
+ (LaTeX-verbatim-macros): Remove.
+ (LaTeX-fill-region-as-para-do): Simplify.
+ (LaTeX-fill-move-to-break-point): Use
+ `LaTeX-verbatim-macros-with-delims'.
+ (LaTeX-fill-paragraph, LaTeX-fill-code-comment): Handle comment
+ starters in verbatim constructs correctly.
+
+ * font-latex.el (font-latex-verbatim-environments)
+ (font-latex-verbatim-environments-local)
+ (font-latex-verb-like-commands)
+ (font-latex-verb-like-commands-local)
+ (font-latex-verbatim-macros, font-latex-verbatim-macros-local):
+ Remove.
+ (font-latex-set-syntactic-keywords): Use new `LaTeX-verbatim-*'
+ instead of `font-latex-verb*' variables.
+
+ * doc/auctex.texi (Font Locking): Document change of
+ verbatim-related variables.
+
+ * doc/changes.texi: Document change of verbatim-related variables.
+
+ * style/alltt.el ("alltt"): Use new variables for verbatim
+ constructs.
+
+ * style/listings.el ("listings"): Use new variables for verbatim
+ constructs.
+
+ * style/url.el ("url"): Use new variables for verbatim constructs.
+
+ * latex.el (LaTeX-insert-environment): Mostly rewritten. Improve
+ handling of macrocode environments.
+
+2005-10-02 Christian Schlauer <cschl@arcor.de>
+
+ * tex-buf.el (TeX-BibTeX-sentinel): Check whether BibTeX reports
+ any warnings or errors.
+
+ * doc/changes.texi: Mention it.
+
+2005-10-02 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * texmathp.el (texmathp-match-environment): Make aware of
+ comments.
+
+2005-09-29 Masayuki Ataka <ataka@milk.freemail.ne.jp>
+
+ * doc/install.texi (Customizing): Removed "Contributed files"
+ section.
+ Suggested by Ikumi Keita <ikumi@revery.net>.
+
+2005-09-29 Ikumi Keita <ikumi@revery.net>
+
+ * texmathp.el (texmathp-tex-commands-default): Remove "xxalignat*"
+ and add "boxed".
+
+2005-09-27 Reiner Steib <Reiner.Steib@gmx.de>
+
+ * auctex.spec: Add files in %{_datadir}/emacs/site-lisp.
+ Suggested by Jan-Ake Larsson. Added startfiles. Exclude
+ %{_infodir}/dir.
+
+2005-09-27 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * configure.ac: Document option for specifying AUCTeX startfile as
+ --with-auctexstartfile, not --with-auctex-startfile which does not
+ work. Note that changing the internal name from `auctexstartfile'
+ to `auctex-startfile' is not an option because of the `-' in the
+ name which gives the shell headaches.
+
+ * auctex.spec: Adapt to --with-auctexstartfile and
+ --with-preview-startfile.
+
+ * doc/install.texi (Configure): Document change from
+ --with-auctex-startfile to --with-auctex-startfile and
+ --with-preview-startfile to --with-previewstartfile.
+
+2005-09-26 Reiner Steib <Reiner.Steib@gmx.de>
+
+ * auctex.spec: Bump version number. Remove install-contrib, use
+ install-docs. Don't install preview/* because these are not
+ generated.
+
+2005-09-25 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * Makefile.in (tar-ball): Don't create WWW directory and don't
+ copy HTML files.
+ (www-doc): New target.
+
+2005-09-25 David Kastrup <dak@gnu.org>
+
+ * Version 11.81 released.
+
+2005-09-25 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * RELEASE, configure.ac, font-latex.el, doc/auctex.texi,
+ doc/changes.texi, doc/preview-latex.texi, doc preview-readme.texi,
+ doc/tex-ref.texi, doc/todo.texi: Bump version number.
+
+ * Makefile.in (DISTCLEANFILES): Add tex-site.el.out.
+
+2005-09-24 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * Makefile.in (tar-ball): Remove dysfunctional spec file from
+ distribution.
+ (full-release): Disable RPM creation.
+
+ * doc/auctex.texi: Bump version number.
+
+ * configure.ac: Bump version number.
+
+2005-09-24 David Kastrup <dak@gnu.org>
+
+ * doc/install.texi (Advice for package providers): Suggest
+ "anytex" instead of "notex" for without-texmf compilations.
+
+2005-09-23 Reiner Steib <Reiner.Steib@gmx.de>
+
+ * tex-site.el.in (TeX-modes-set): Add custom group.
+
+2005-09-19 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * tex.el (TeX-auto-parse-length, TeX-auto-x-parse-length)
+ (TeX-auto-x-regexp-list): Doc fix.
+
+2005-09-17 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * texmathp.el (texmathp-tex-commands-default): Add "minipage" as
+ `env-off' and "\framebox" as `arg-off'.
+
+2005-09-13 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * RELEASE: Update for upcoming release.
+
+ * doc/changes.texi: Mention `font-latex-slide-title-face' and
+ `font-latex-match-slide-title-keywords'.
+
+ * doc/auctex.texi (Font Locking): Document
+ `font-latex-slide-title-face' and
+ `font-latex-match-slide-title-keywords'.
+
+2005-09-10 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * font-latex.el (font-latex-make-match-defun): Fontify only if
+ `font-latex-match-*-keywords' and
+ `font-latex-match-*-keywords-local' are non-empty.
+ (font-latex-make-match-defun): Revert.
+ (font-latex-make-built-in-keywords): Do not set
+ `font-latex-match-*' if there are no keywords. (Nicer solution
+ than the original change in `font-latex-make-match-defun'.)
+
+2005-09-08 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * font-latex.el (font-latex-built-in-keyword-classes): New
+ `slide-title' class.
+ (font-latex-slide-title-face): New face.
+ Specify :size for XEmacs.
+
+ * style/beamer.el ("beamer"): Fontify \frametitle with
+ `font-latex-slide-title-face'.
+
+2005-09-05 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * tex-buf.el (TeX-command): Doc fix.
+
+2005-09-02 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * texmathp.el (texmathp-tex-commands-default): Add "\textrm" as
+ `arg-off'.
+
+2005-08-30 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * tex.el (TeX-font-replace-macro): Compute syntax table.
+
+2005-08-26 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * latex.el (LaTeX-common-initialization): Remove redundant call to
+ `make-local-variable' for `outline-heading-alist'. Set
+ `outline-heading-alist' only if it is already defined.
+
+2005-08-26 Matthieu Moy <Matthieu.Moy@imag.fr> (tiny change)
+
+ * latex.el (LaTeX-common-initialization): Set
+ `outline-heading-alist'.
+
+2005-08-24 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * latex.el (LaTeX-mark-section): Now marks subsections as well.
+ Former behavior is available via prefix argument.
+
+ * doc/changes.texi: Mention change of `LaTeX-mark-section'.
+
+2005-08-23 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * font-latex.el (font-latex-script): Return face symbols, not
+ names of non-existent variables.
+
+ * tex.el (TeX-font-replace-macro): Do not use `TeX-find-macro-end'
+ for it may look too far in cases like "\emph{foo}{}". Use
+ `forward-sexp' with a stripped syntax table instead.
+
+2005-08-19 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * doc/wininstall.texi: New "In a Nutshell" section.
+
+2005-08-18 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * configure.ac: Quotify `packagelispdir' and `packagedatadir'.
+ (preview_enabled): Export unquoted variables.
+ Declare/initialize and export variables separately.
+
+ * Makefile.in (DESCEND): Quote $$OLDPWD.
+
+2005-08-17 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * doc/auctex.texi (Adding Macros): Remove superfluous entry for
+ `TeX-arg-file' and correct entry for `TeX-arg-input-file'.
+
+ * latex.el (TeX-arg-input-file): Doc fix.
+
+ * tex.el (TeX-command-list): Remove `TeX-run-LaTeX'. Add
+ `TeX-run-ispell-on-document' in order to prevent mismatch in
+ customization buffer.
+
+2005-08-05 David Kastrup <dak@gnu.org>
+
+ * font-latex.el (font-latex-doctex-preprocessor-face): Remove
+ `list' from already quoted list.
+
+2005-08-02 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * tex-fold.el (TeX-fold-region): In case of single-char non-letter
+ macros there does not have to be checked for a partial match.
+ This allows for folding of stuff like \,.
+
+2005-08-01 Berend de Boer <berend@pobox.com>
+
+ * context-en.el (ConTeXt-setup-list-en): typo fixed.
+
+2005-07-21 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * font-latex.el (font-latex-set-syntactic-keywords): Set and
+ update `font-latex-doctex-syntactic-keywords' here.
+ (font-latex-doctex-syntactic-keywords): Default to nil.
+
+ * doc/auctex.texi (Japanese): Remove references to contrib make
+ targets. Minor clean-ups.
+
+ * aclocal.m4 (library): Replace COMPILE_MULE and CONTRIB_MULEELC
+ with MULESRC and MULEELC.
+
+ * Makefile.in (CONTRIB, CONTRIBELC, CONTRIB_MULE, COMPILE_MULE)
+ (CONTRIB_MULEELC): Remove.
+ (MULESRC, MULEELC): New variables.
+ (AUCSRC): Add bib-cite.el and tex-fptex.el.
+ (CLEANFILES): Remove CONTRIBELC and CONTRIB_MULEELC. Use MULEELC
+ instead.
+ (.PHONY): Remove contrib, install-contrib and install-contrib-el
+ targets.
+ (lisp): Depend on STYLESRC and MULESRC. Compile MULESRC as well.
+ (auto-loads.el): Use MULESRC.
+ (contrib, install-contrib-el, install-contrib): Remove.
+ (install-el): Install MULESRC.
+ (install-lisp): Install MULEELC.
+
+ * style/csquotes.el: Bring up to par with csquotes 3.0.
+ (LaTeX-csquotes-insert-environment): New function.
+
+2005-07-15 David Kastrup <dak@gnu.org>
+
+ * doc/preview-todo.texi: Mention that preview.dtx is not a
+ showpiece for AUCTeX.
+
+2005-07-15 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * tex.el (TeX-run-style-hooks): Adjust `default-directory' to
+ match the directory of the style.
+
+2005-07-14 David Kastrup <dak@gnu.org>
+
+ * doc/install.texi (Configure): explain about --without-packagedir.
+ (Advice for package providers): Same here.
+
+ * aclocal.m4 (EMACS_PATH_LISPDIR): Allow packagedir=no with XEmacs.
+
+ * configure.ac: protect against packagedir starting with `-'
+
+2005-07-12 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * font-latex.el (font-latex-match-math-envII): Match environment
+ begin and end with whitespace between macro and argument as well.
+
+ * doc/install.texi (Configure): Add `file' macro.
+
+ * texmathp.el (texmathp-match-environment): Match environment
+ begin and end with whitespace between macro and argument as well.
+
+2005-07-12 David Kastrup <dak@gnu.org>
+
+ * doc/wininstall.texi:
+
+ * doc/install.texi (Configure): Explain prefix a bit more.
+
+ * doc/Makefile.in (install-man): include tex-ref.tex.
+
+2005-07-08 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * tex.el (TeX-insert-quote): Do not inhibit special quote
+ insertion in docTeX documentation parts.
+
+ * font-latex.el (font-latex-match-command-with-arguments)
+ (font-latex-match-command-in-braces): Remove call to
+ `font-latex-commented-outp'.
+ (font-latex-match-quotation): Do not consider matches in comments
+ or verbatim-like constructs. Fix typo.
+
+2005-07-07 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * latex.el (LaTeX-fill-move-to-break-point): Make non-MULE
+ XEmacsen happy.
+ (LaTeX-fill-paragraph): Don't treat trailing comment starters as
+ code comments.
+
+ * font-latex.el (font-latex-match-quotation): Always use multibyte
+ strings for comparison.
+
+ * doc/auctex.texi (top): Make the summary notes appear as
+ "Executive Summary" in printed output.
+
+ * doc/intro.texi: Main heading in rawtext case should not be
+ numbered. Main heading in printed output has to be chapter, not
+ section, in order to fit into the rest of the sectioning
+ hierarchy.
+ (Introduction): Add two intermediate headings in order to make the
+ structure clearer.
+
+ * doc/.cvsignore: Add auto directory.
+
+2005-07-06 David Kastrup <dak@gnu.org>
+
+ * doc/tex-ref.tex: Rearrange and add information for preview-latex.
+
+2005-07-05 David Kastrup <dak@gnu.org>
+
+ * doc/preview-latex.texi (Simple customization): Document new
+ option `preview-preserve-counters'.
+
+ * doc/auctex.texi (top): Mention RefTeX, `LaTeX-install-toolbar'
+ and preview-latex.
+
+2005-07-01 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * tex.el (TeX-submit-bug-report): Mention FAQ section.
+
+ * doc/changes.texi: Advertise inclusion of preview-latex and
+ overhaul of installation procedures.
+
+ * doc/install.texi (Advice for package providers): Refer to
+ preview-latex.el file.
+
+ * doc/quickstart.texi (Quick Start): Use (load "auctex.el" nil t
+ t) instead of (require 'tex-site).
+
+ * doc/faq.texi: Use (load "auctex.el" nil t t) instead of (require
+ 'tex-site).
+
+ * doc/intro.texi (Introduction): Use (load "auctex.el" nil t t)
+ instead of (require 'tex-site).
+
+2005-06-30 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * doc/auctex.texi (Folding): Do not quote `lambda' function.
+
+2005-06-29 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * font-latex.el (font-latex-quotes): Get rid of :set function and
+ move most of its content to `font-latex-match-quotation'.
+ (font-latex-quotes-control): New variable. Initialize with nil.
+ (font-latex-match-quotation): Use it.
+ The whole changeset lets quote matching recognize automatically
+ when the value of `font-latex-quotes' changed while making sure
+ that the regexp only has to be rebuilt when a change actually
+ occured.
+
+ * doc/todo.texi (Mid-term Goals): Update text about integration of
+ preview-latex.
+
+ * doc/auctex.texi (Floats): Clarify use of
+ `LaTeX-top-caption-list'.
+ (Display, Internationalization): Make node and heading clearer.
+ (European): Describe insertion of multiple consecutive hyphens.
+
+2005-06-24 David Kastrup <dak@gnu.org>
+
+ * RELEASE: Minor change.
+
+ * configure.ac: Move checks and export for PERL here (needed for
+ doc of preview-latex).
+ (preview_enabled): Don't export Info-related variables, as they
+ are not needed in preview.
+
+ * Makefile.in (AUCTEXVERSION): import.
+ (info, dvi): No subshell needed.
+ (auctex.el): Depend on config.status
+ (install-metadata): pass upstream version into prv-install.el
+
+2005-06-21 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * tex-info.el (TeX-texinfo-mode): Use `TeX-run-mode-hooks'.
+
+ * latex.el (TeX-latex-mode): Use `TeX-run-mode-hooks'.
+
+ * context.el (ConTeXt-mode-common-initialization): Use
+ `TeX-run-mode-hooks'.
+
+ * configure.ac: Make info about configuration clearer (in
+ connection with the message for preview-latex).
+
+ * tex.el (TeX-master-file): `TeX-default-extension' is a variable,
+ not a function.
+ (TeX-run-mode-hooks): New function.
+ (TeX-plain-tex-mode, ams-tex-mode): Use it.
+
+2005-06-21 David Kastrup <dak@gnu.org>
+
+ * Makefile.in (xemacs-package): reorder args.
+
+ * configure.ac: disable INSTALL_INFO for XEmacs package.
+
+ * doc/Makefile.in (install-man): Use $$i instead of $i.
+
+2005-06-20 David Kastrup <dak@gnu.org>
+
+ * doc/install.texi (Advice for package providers): Propose package
+ structure.
+
+ * doc/Makefile.in (install-man): Install sources for texinfo
+ files.
+ (.PHONY): Add install-man.
+
+ * Makefile.in (.PHONY): Add install-man and xemacs-package
+ (install-man): Just descend into doc directory.
+ (xemacs-package): Try building some XEmacs package.
+
+ * autogen.sh: Don't run distclean, that seems unexpected.
+
+ * RELEASE: Further fold in stuff from preview/RELEASE which is now
+ deleted.
+
+2005-06-20 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * font-latex.el (font-latex-superscript-face)
+ (font-latex-subscript-face): Add to correct customization group.
+ (font-latex-match-command-with-arguments)
+ (font-latex-match-command-in-braces, font-latex-match-math-env):
+ Don't set a dummy match. Remove unnecessary throw..catch clauses.
+
+2005-06-18 David Kastrup <dak@gnu.org>
+
+ * RELEASE: Well, the merge with preview-latex is no longer
+ "planned".
+
+2005-06-16 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * doc/preview-faq.texi (Requirements): Denastify.
+
+ * tex.el (TeX-master-file): Don't override existing master with
+ `TeX-transient-master'.
+
+ * tex-style.el (LaTeX-includegraphics-read-file): Doc fix.
+
+2005-06-15 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * doc/install.texi (Prerequisites): Denastify.
+
+ * doc/auctex.texi (Font Locking): Fix typo.
+
+ * configure.ac: Use correct variable for --disable-preview switch.
+
+2005-06-15 Masayuki Ataka <ataka@milk.freemail.ne.jp>
+
+ * Makefile.in (auto-loads.el): Auto-load COMPILE_MULE, too.
+
+2005-06-14 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * RELEASE: Update stuff about fixed bugs and new features.
+
+2005-06-14 David Kastrup <dak@gnu.org>
+
+ * doc/wininstall.texi: Spell out file names more explicitly.
+ Remove any hint of a version that might lead Windows users to
+ assume this documentation is for some reason more outdated than
+ year-old stuff they find via Google.
+
+ * Makefile.in (install-docs): Make exit status of test bad-shell
+ safe.
+
+2005-06-14 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * Makefile.in (all): Do not depend on `docs' target.
+ (.PHONY): Remove `docs'. Add `info' and `dvi'.
+ (docs): Remove.
+ (info, dvi): New targets.
+ (tar-ball): Make sure `dist' stuff is up-to-date.
+ Revert, as it is superfluous.
+
+ * doc/Makefile.in (dist): Correct file name for
+ preview-latex.info.
+ (info, dvi): New targets.
+ (.PHONY): Add them and remove `auctex' and `preview'.
+ (auctex, preview): Remove.
+
+2005-06-14 David Kastrup <dak@gnu.org>
+
+ * RELEASE: Adapt RELEASE notes to include preview-latex info.
+
+ * README.CVS: Adapt to reality.
+
+ * doc/Makefile.in (all): Same as dist.
+ (dist): Just create DISTTEXTS and info files.
+ (extradist): Additional stuff for ftp site.
+ (disttexts): Remove target.
+ (clean): Don't remove info files.
+ (maintainer-clean): Remove info files.
+
+ * autogen.sh: Add error messages, run autoconf in preview
+ subdirectory. Heed MAKE variable if set.
+
+ * Makefile.in (CVSFILES): Define files not to use in tarball.
+ (tar-ball): Remove them.
+ (tar-ball): Make extradist for additional doc files on ftp.
+
+2005-06-12 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * tex-buf.el (TeX-ispell-document): Cater for the case where the
+ master file is located in a different directory.
+ (TeX-run-ispell-on-document, TeX-ispell-document): Doc fix.
+
+2005-06-11 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * tex.el (TeX-master-file): Check `TeX-transient-master' not only
+ in the shared case.
+
+ * tex-buf.el (TeX-region-create): Let-bind `TeX-transient-master'.
+
+2005-06-10 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * doc/auctex.texi (Parsing Files): Fix display of reference.
+ Get rid of references to \documentstyle.
+ (Simple Style, Adding Macros, Adding Environments)
+ (Hacking the Parser): Clean up code examples.
+
+ * tex.el (TeX-master-file-ask): Get rid of "<default>" string as
+ default for `read-file-name'. Fixes unresponsiveness of Emacs on
+ Windows and fallback to minibuffer if file is opened via menu and
+ prevents file history from being cluttered. Use relative file
+ name for master file.
+ (TeX-master-file): Get rid of "this file" string as default for
+ `read-file-name'.
+
+2005-06-09 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * tex-fold.el (TeX-fold-ellipsis): New variable.
+ (TeX-fold-hide-item): Use it.
+
+ * Makefile.in (DESCEND): Make MSYS happy if $(subdirs) is null,
+ e.g. when --disable-preview is used.
+ Make the change more safe with regard to the exit code.
+
+2005-06-09 David Kastrup <dak@gnu.org>
+
+ * doc/wininstall.texi: Change line endings blurb. Write drive:
+ everywhere in the example strings.
+
+ * doc/preview-readme.texi (Introduction): Some cosmetic changes to
+ account for the merge.
+
+ * mkinstalldirs:
+
+ * install-sh: Replace `#/bin/sh' with `:' as this should be more
+ portable when called from a Bourne shell (which is what the
+ Makefiles do).
+
+2005-06-08 David Kastrup <dak@gnu.org>
+
+ * doc/preview-dtxdoc.pl: Replicate possible CR line endings
+ faithfully, and don't use multiline strings.
+
+2005-06-08 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * doc/.cvsignore: Ignore all *.info, *.info-*, and *.pgs files.
+
+ * Makefile.in (preview_enabled): New variable.
+ (all): Depend on `docs' target.
+ (.PHONY): Add `docs' target.
+ (docs): New target.
+ (install): Depend on `install-docs' instead of `install-info'.
+ (install-info): Remove.
+ (install-docs): New target.
+
+ * autogen.sh: Generate preview-latex docs as well.
+
+ * configure.ac: Substitute preview_enabled variable in output
+ files.
+
+ * doc/.cvsignore: Add relevant preview-latex files.
+
+ * doc/Makefile.in (TEXIFILES): Rename to AUCTEXTEXIFILES.
+ (PERL, PREVIEWTEXIFILES): New variables.
+ (all): Now depends on `auctex' and `preview' targets. Move
+ AUCTeX-specific targets from original to `auctex'.
+ (install): Now depends on `install-auctex' and `install-preview'
+ targets. Move AUCTeX-specific targets and content from original
+ to `install-auctex'.
+ (.PHONY): Add `auctex', `preview', `install-auctex', and
+ `install-preview'.
+ (auctex, install-auctex, preview, install-preview): New targets.
+ (auctex.dvi, auctex.pdf, auctex.info): Depend on
+ $(AUCTEXTEXIFILES) instead of $(TEXIFILES).
+ (preview-latex/index.html, html-docs, preview-dtxdoc.texi)
+ (preview-latex.dvi, preview-latex.ps, preview-latex.pdf)
+ (preview-latex.info, ../PROBLEMS): New targets (from
+ preview/doc/Makefile.in).
+ (../README, ../TODO, ../FAQ): Create output combined from
+ respective AUCTeX and preview-latex files.
+ (clean, maintainer-clean): Cater for preview-latex files.
+
+ * doc/todo.texi (Development): More specific heading for plain
+ text output.
+
+ * doc/preview-todo.texi: Move here from preview/doc/todo.texi.
+
+ * doc/preview-readme.texi: Move here from preview/doc/readme.texi.
+
+ * doc/preview-problems.texi: Move here from
+ preview/doc/problems.texi.
+
+ * doc/preview-faq.texi: Moved here from preview/doc/faq.texi.
+
+ * doc/copying.texi, doc/preview-dtxdoc.pl, doc/preview-latex.texi:
+ Moved here from preview/doc/.
+
+2005-06-07 David Kastrup <dak@gnu.org>
+
+ * tex.el (TeX-regexp-group-count): New function.
+ (TeX-auto-parse-region): Rewrite to use hashes and to save overuse
+ of `looking-at'. We really should keep the relevant information
+ complete in hashes instead of moving them forward and back between
+ hashes and lists, but at least this change removes most of the
+ really evil quadratic behavior while keeping the original API.
+ Yet.
+
+2005-06-07 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * font-latex.el (font-latex-fontify-sectioning): Doc fix.
+
+ * doc/auctex.texi (Font Locking): Document the nature of the
+ `color' option for `font-latex-fontify-sectioning'.
+
+2005-06-06 David Kastrup <dak@gnu.org>
+
+ * configure.ac: Remove call of MAKEINFO_CHECK_MACROS: we expect a
+ recent enough makeinfo version if you want to bootstrap, anyway.
+
+2005-06-06 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * tex-bar.el (TeX-bar-LaTeX-button-alist)
+ (menu-strings-buttons-alist): help-echo functions are called with
+ arguments.
+
+2005-06-06 David Kastrup <dak@gnu.org>
+
+ * doc/Makefile.in (TEXINFOINCLUDES): Remove.
+ (MAKEINFO_MACROS): Remove.
+
+ * tex-buf.el (TeX-format-filter): Don't let match-data generate
+ markers. This is a terrible performance hog!
+ (TeX-format-filter): Actually, we don't need to save any
+ match-data inside of a filter function with current versions of
+ Emacs and XEmacs.
+
+2005-06-05 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * style/scrbase.el, style/scrbook.el, style/scrreprt.el: Use
+ `sectioning' instead of `title' for sectioning fontification.
+
+ * doc/changes.texi: Mention change of `title' to `sectioning' for
+ keyword variables.
+
+ * font-latex.el (font-latex-fontify-sectioning)
+ (font-latex-built-in-keyword-classes)
+ (font-latex-keyword-matcher): Use `sectioning' instead of `title'.
+ (font-latex-deactivated-keyword-classes): New variable.
+ Don't do extra quoting.
+ (font-latex-make-built-in-keywords): Remove unnecessary `let'.
+ Check `font-latex-deactivated-keyword-classes' in generated
+ `font-latex-match-*-make' functions.
+
+ * tex.el (TeX-quote-language-alist): Do not use `alist' widget
+ because XEmacs 21.4 does not provide it. Do not use a cons cell
+ for opening and closing quotation marks in order to simplify
+ structure.
+ (TeX-quote-language): Describe structure as in
+ `TeX-quote-language-alist'.
+ (TeX-insert-quote): Adapt to new structure of `TeX-quote-language'
+ and `TeX-quote-language-alist'.
+
+ * doc/auctex.texi (European): Describe new structure of
+ `TeX-quote-language-alist'.
+ (Font Locking): Use `sectioning' instead of `title'.
+ Describe deactivation of built-in keyword classes.
+
+ * style/csquotes.el, style/czech.el, style/danish.el,
+ style/german.el, style/italian.el, style/ngerman.el,
+ style/slovak.el, style/swedish.el: Reflect new structure of
+ `TeX-quote-language'.
+
+2005-06-04 David Kastrup <dak@gnu.org>
+
+ * doc/Makefile.in (TEXINFOINCLUDES): macros.texi has moved here
+ from ../preview/doc
+ (../INSTALL, ../INSTALL.windows, ../README, ../CHANGES, ../TODO)
+ (../FAQ): Change dependencies accordingly.
+
+ * configure.ac: Rearrange checks for MAKEINFO.
+ Export more stuff into preview's configure. Maybe this is better
+ done with use of caches?
+
+ * autogen.sh: Don't look in preview subdirectory.
+
+ * Makefile.in (configure): Depend on local aclocal.m4
+
+2005-06-03 David Kastrup <dak@gnu.org>
+
+ * doc/Makefile.in (TEXINFOINCLUDES, TEXIFILES, ../INSTALL)
+ (../INSTALL.windows, ../README, ../CHANGES, ../TODO, ../FAQ): Move
+ ../preview/doc/macros.texi to here again.
+
+2005-06-02 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * tex.el (VirTeX-common-initialization): Explicitely make
+ `find-file-hooks' buffer-local in XEmacs 21.4 which fails to do
+ this via `add-hook'.
+
+2005-06-01 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * latex.el (LaTeX-backward-paragraph): Use catch..throw instead of
+ an indicator variable. Don't refer to a saved match data.
+ Check for `TeX-esc', not specific char.
+
+ * style/babel.el ("babel"): Disable font locking of macros not
+ handled correctly.
+
+2005-05-30 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * style/babel.el: New file.
+
+ * Makefile.in: Add style/babel.el.
+
+ * doc/changes.texi: Mention babel support.
+
+2005-05-28 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * tex-buf.el (TeX-next-error): Call `next-error' as fallback.
+ (TeX-previous-error): New function.
+
+ * tex.el (TeX-mode-map): Remap bindings of `next-error' and
+ `previous-error' to `TeX-next-error' and `TeX-previous-error'
+ respectively.
+
+2005-05-24 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * tex.el (TeX-command-list): Remove chktex comment.
+
+ * doc/auctex.texi (Checking): A user should not (have to) edit
+ tex.el to switch from lacheck to chktex.
+
+ * font-latex.el (font-latex-make-match-defun)
+ (font-latex-make-built-in-keywords): Do not byte-compile generated
+ functions here but at the end of font-latex.el. Prevents
+ byte-compiler warnings due to possibly undefined functions.
+
+2005-05-24 David Kastrup <dak@gnu.org>
+
+ * configure.ac: Recurse into preview _before_ starting any
+ AC_SHELL_QUOTIFY business to avoid double quoting.
+
+ * doc/tex-ref.tex (\title{RefTeX (long)})
+ (\title{RefTeX (short)}): New columns. One will have to go.
+
+2005-05-22 David Kastrup <dak@gnu.org>
+
+ * tex.el (TeX-PDF-mode): Use the standard minor mode function
+ instead of redefining it.
+ (TeX-PDF-mode-parsed): New function replacing the previous extra
+ functionality in `TeX-PDF-mode'.
+ (TeX-PDF-mode-on, TeX-PDF-mode-off): Warn in docstring. Use
+ `TeX-PDF-mode-parsed'.
+
+2005-05-21 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * doc/install.texi, doc/wininstall.texi: Small corrections.
+
+ * tex-bar.el (TeX-bar-LaTeX-button-alist): Reenable mode-specific
+ images for View button.
+ (LaTeX-install-toolbar): Add `toolbarx-refresh' to
+ `TeX-PDF-mode-hook'.
+
+ * tex.el (TeX-PDF-mode): Run `TeX-PDF-mode-hook'.
+
+2005-05-21 David Kastrup <dak@gnu.org>
+
+ * autogen.sh: Remove argument to preview/autogen.sh
+
+ * doc/install.texi: Integrate the installation instructions for
+ preview-latex.
+
+2005-05-20 David Kastrup <dak@gnu.org>
+
+ * doc/tex-ref.tex (section{Greek Letters}): Add \Xi.
+
+2005-05-18 Ikumi Keita <ikumi@revery.net>
+
+ * style/amsmath.el (LaTeX-label-alist): Add "multline" environment.
+
+ * Makefile.in:
+ * configure.ac:
+ * preview/Makefile.in: Change "==" to "=" in the argument of
+ "test" for Bourne shell compatibility.
+
+2005-05-19 David Kastrup <dak@gnu.org>
+
+ * doc/wininstall.texi: Rearrange to make suitable for standalone
+ installation including preview-latex. Adapt to a few
+ changes (like tex-fptex and tex-mik not being in load-path by
+ default).
+
+2005-05-19 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * tex-site.el.in (tex-site-unload-hook, TeX-modes): Do not use
+ `dolist'. Prevents console pop-ups with XEmacsen on Windows.
+
+ * latex.el (LaTeX-fill-move-to-break-point): Check for
+ `charset-after' to make non-MULE XEmacsen happy. Some
+ reformatting.
+
+2005-05-18 David Kastrup <dak@gnu.org>
+
+ * latex.el (LaTeX-math-default): Add Xi (reported by Uli
+ Fahrenberg).
+
+2005-05-17 David Kastrup <dak@gnu.org>
+
+ * Makefile.in (EXTRAFILES): remove. No longer needed.
+ (auto-loads.el): Undo previous change. Properly group statements.
+ (install-el): Rewrite condition for some non-Posix shells.
+ (install-metadata): Rewrite condition for non-Posix.
+ (tar-ball): Change owner and group to root. This is not portable,
+ but will be needed only by the maintainers, anyway.
+ (auto-loads.el): ignore errors also for braindead make.
+ (install-metadata): Same here.
+ (clean): Burp if cd doc fails.
+ (distclean): Same here.
+ (tar-ball): rewrite for braindead shells.
+ (tar-ball): make sure doc exists. Why do I bother, actually, the
+ tarball target is not for public consumption, anyway.
+
+2005-05-17 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * Makefile.in (auto-loads.el): Don't stop on non-zero exit code.
+
+2005-05-16 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * tex.el (TeX-transient-master): New variable.
+ (TeX-master-file): Use it.
+
+ * tex-buf.el (TeX-command-sentinel): Bind `TeX-transient-master'.
+
+2005-05-14 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * latex.el (LaTeX-babel-hyphen): Doc fix.
+ (LaTeX-common-initialization): Call `easy-menu-add' as late as
+ possible.
+
+2005-05-15 Ikumi Keita <ikumi@revery.net>
+
+ * Makefile.in (CLEANFILES): Add $(CONTRIBELC) and
+ $(CONTRIB_MULEELC).
+ (DISTCLEANFILES): Add auctex.el and auto-loads.el.
+ (auto-loads.el): Add $(COMPILE_MULE)
+
+2005-05-14 Ikumi Keita <ikumi@revery.net>
+
+ * style/amsopn.el:
+ * style/amsmath.el: Move "mode"-like entries from amsopn.el to
+ amsmath.el.
+
+ * style/amsmath.el: Edit entries in TeX-add-symbols.
+ Remove duplicate entry "raisetag".
+ Add some new entries.
+ Make arrow macros like "overleftarrows" to take argument.
+ Remove accents macros like "Hat" because they are obsolate in
+ amsmath v2.
+ (LaTeX-item-list): Add "multline*", "matrix", "pmatrix",
+ "bmatrix", "Bmatrix", "vmatrix" and "Vmatrix" environment.
+ (LaTeX-label-alist): Remove "aligned" environment.
+
+ * tex-style.el (LaTeX-amsmath-label): Fix doc.
+
+ * latex.el: (LaTeX-math-default): Remove duplicate entry
+ "nabla". Remove AMS Accents like "Hat" because they are obsolate
+ in amsmath v2.
+ (LaTeX-babel-hyphen): Fix doc.
+ (LaTeX-common-initialization): Edit some entries in TeX-add-symbols.
+
+2005-05-13 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * doc/changes.texi: Small corrections.
+
+2005-05-12 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * tex-fold.el (TeX-fold-make-overlay): Calculate priority before
+ the overlay is instantiated.
+
+ * font-latex.el (font-latex-match-command-with-arguments): Make
+ XEmacs happy.
+
+ * latex.el (LaTeX-fill-newline-hook): New hook.
+ (LaTeX-fill-newline): Use it.
+
+ * tex-fold.el (TeX-fold-keymap): Remove deprecated key bindings.
+ (TeX-fold-region, TeX-fold-item): Use `TeX-fold-item-end'. Do not
+ compute display string (now done in `TeX-fold-hide-item').
+ (TeX-fold-make-overlay): Do not mess with display string anymore.
+ Thereby remove it from list of function arguments.
+ (TeX-fold-item-end, TeX-fold-overfull-p)
+ (TeX-fold-update-at-point): New functions.
+ (TeX-fold-buffer-substring): Get 'display property instead of
+ 'TeX-fold-display-string which is not used anymore.
+ (TeX-fold-hide-item): Computation of display string and faces as
+ well as provisions for overfull lines are done only in this
+ function now. The 'display property is now set for XEmacs as
+ well.
+ (TeX-fold-mode): Add and remove `TeX-fold-update-at-point' to
+ `LaTeX-fill-newline-hook' respectively.
+
+ * tex.el (TeX-overlay-prioritize): Fix oversight in XEmacs version
+ of the function.
+
+2005-05-11 Reiner Steib <Reiner.Steib@gmx.de>
+
+ * Makefile.in (tar-ball): Allow YYYYMMDD-a TAG for snapshots.
+
+2005-05-11 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * font-latex.el (font-latex-set-syntactic-keywords): Don't freak
+ out if there is whitespace in front of the \begin/\end pair of
+ verbatim and verbatim-like environments.
+
+ * latex.el (LaTeX-auto-cleanup): Discard only options which
+ actually include a "=".
+
+ * Makefile.in: Whitespace cleanup.
+
+ * tex.el (TeX-overlay-prioritize): Fix calculation of priority for
+ in-between overlay.
+ (TeX-insert-quote): Insert TeX quote if point is just before math,
+ comment, or verbatim content.
+
+2005-05-11 David Kastrup <dak@gnu.org>
+
+ * doc/Makefile.in (TEXINFOINCLUDES): Add directory modifier
+ TEXIPWD. This is ugly.
+ (html/auctex_toc.html): Use it.
+
+ * Makefile.in (tar-ball): Make tar-ball from exporting, and allow
+ for TAG being a date specification.
+ (full-release): Omit release tag check.
+
+2005-05-10 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * font-latex.el (font-latex-forward-comment): New function.
+ Prevent infinite loops and repair regexp.
+ Simplify. Code mainly by David Kastrup.
+ (font-latex-match-command-with-arguments): Use it. Set
+ fontification start of optional argument to opening bracket.
+ Apply restriction of region more globally. Fix handling of
+ multiple optional arguments. Break if the end of the first
+ mandatory argument could not be found.
+
+2005-05-09 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * tex.el (TeX-normal-mode): Ask for master file in 'shared case.
+
+ * font-latex.el (font-latex-built-in-keyword-classes): Doc
+ fix (typo).
+ (font-latex-match-command-with-arguments): Set macro end before
+ any comments. Do not move forward over comments if point is over
+ the limit.
+
+2005-05-09 David Kastrup <dak@gnu.org>
+
+ * doc/Makefile.in (dist): Use DISTTEXTS instead of explicit list
+ in this directory.
+
+2005-05-07 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * tex.el (VirTeX-common-initialization): Remove Emacs 20
+ compatibility code. Call `TeX-master-file' during load of shared
+ files as well.
+
+2005-05-06 Reiner Steib <Reiner.Steib@gmx.de>
+
+ * Makefile.in (DOCFILES): Remove macros.texi to make "tar-ball"
+ work again.
+
+2005-05-06 David Kastrup <dak@gnu.org>
+
+ * tex.el (TeX-load-style): Fix typo `expand-filename'.
+
+2005-05-06 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * tex.el (TeX-local-master-p): Limit search.
+
+ * doc/Makefile.in (TEXINFOINCLUDES): New variable used for file
+ inclusion with makeinfo, texi2dvi and texi2pdf.
+ (MAKEINFOINC): Remove.
+
+ * doc/intro.texi (Introduction): Make package activation clearer.
+
+2005-05-05 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * doc/intro.texi (Introduction): Be consistent with the display of
+ commands in the rest of the manual.
+
+ * tex-fold.el (TeX-fold-mode): Improve doc string and add its
+ first line to the autoload form.
+
+2005-05-04 David Kastrup <dak@gnu.org>
+
+ * tex-fold.el (TeX-fold-mode): Change autoload cookie because of
+ XEmacs.
+
+2005-05-03 David Kastrup <dak@gnu.org>
+
+ * auctex.spec: First attempt
+
+2005-05-02 David Kastrup <dak@gnu.org>
+
+ * doc/install.texi:
+
+ * doc/intro.texi:
+
+ * doc/wininstall.texi: overhaul.
+
+ * autogen.sh: adapt to auto.texi scheme.
+
+ * toolbar-x.el (toolbarx-install-toolbar): Remove overlong doc
+ string from autoload.
+
+ * tex-site.el.in (tex-site-unload-hook): Define to remove the
+ after-load hooks and load-path entry.
+ (TeX-modes-set): Use defalias instead of fset to allow unloading.
+
+ * README.CVS: Change instructions.
+
+2005-05-02 David Kastrup <dak@gnu.org>
+
+ * bib-cite.el: Revert 2005-04-19 change: autoloads are not
+ extracted from CONTRIB packages.
+
+2005-05-02 David Kastrup <dak@gnu.org>
+
+ * Makefile.in (tex-site.el.out, auctex.el, configure)
+ (Makefile, config.status): Add targets to get reconfiguration if
+ necessary.
+
+ * style/url.el:
+
+ * style/ltx-base.el:
+
+ * style/units.el:
+
+ * style/alltt.el:
+
+ * style/alphanum.el:
+
+ * style/jura.el:
+
+ * style/emp.el:
+
+ * style/doc.el:
+
+ * style/slides.el:
+
+ * style/csquotes.el:
+
+ * style/listings.el:
+
+ * style/nicefrac.el:
+
+ * style/ltxdoc.el:
+
+ * style/jurabib.el:
+
+ * style/mdwlist.el:
+
+ * style/amstex.el: Change maintainer address.
+
+ * doc/intro.texi (Introduction): Changes, cleanup, corrections.
+
+2005-05-01 David Kastrup <dak@gnu.org>
+
+ * doc/install.texi (Prerequisites): Shorten.
+ (Prerequisites): Mention that one can survive without texinfo.
+ (Configure): Add prefix information.
+ (Configure): Sync with preview-latex docs. Mention the
+ disable-preview option and preview-specific options.
+
+ * configure.ac: Don't use have-preview macro. Conflicts with the
+ idea of pregenerated docs.
+
+2005-05-01 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * font-latex.el (font-latex-make-match-defun)
+ (font-latex-make-built-in-keywords): Byte-compile generated
+ functions.
+
+ * Makefile.in (clean, distclean): Descend.
+
+2005-05-01 David Kastrup <dak@gnu.org>
+
+ * tex.el (TeX-load-style): Properly expand file names, and fix a
+ terrible order-of-arguments bug.
+
+ * configure.ac: fix syntax error with MAKEINFO_MACROS
+
+ * tex-site.el.in (TeX-mode-alist): Use correct file name for
+ texinfo-mode.
+
+ * Makefile.in (AUCSRC): Move tex-style.el before latex.el
+
+ * configure.ac: Add have-preview to macros if we have preview
+ enabled.
+
+ * doc/Makefile.in (MAKEINFOINC): Use macros.texi in preview/doc
+ directory.
+ (auctex.dvi, auctex.pdf, auctex.info, ../INSTALL)
+ (../INSTALL.windows, ../README, ../CHANGES, ../TODO, ../FAQ): Use
+ MAKEINFOINC
+
+ * doc/macros.texi: Remove in lieu of version in preview/doc.
+
+ * doc/intro.texi (Introduction): Reorganize, use more of rawfile.
+ Mention preview-latex.
+
+ * tex-buf.el:
+
+ * tex-fold.el:
+
+ * tex-font.el:
+
+ * tex-fptex.el:
+
+ * tex-info.el:
+
+ * tex-mik.el: Change maintainer to auctex-devel@gnu.org
+
+2005-04-30 David Kastrup <dak@gnu.org>
+
+ * Makefile.in (install-metadata): Correct version number.
+ (DESCEND): different quoting.
+ (install): Same here.
+ (install-metadata): Don't depend on some exit values.
+
+ * configure.ac: substitute auctexstartfile. Export auctexdir as
+ `..'.
+ If installing info into XEmacs package, disable install-info. If
+ makeinfo is disabled, don't check for macros.
+
+ * Makefile.in (auctexstartfile): autoconf variable.
+ (subdirs): autoconf variable.
+ (PACKAGE, PACKAGE_INFO): macros.
+ (DESCEND): For rebuilding stuff and installing.
+ (all): descend.
+ (tex-site.el): don't include autoloads when XEmacs.
+ (install): descend.
+ (install-startup): new target
+ (install-el): don't install tex-site on XEmacs.
+ (install-el): don't fail on .nosearch not installed.
+ (install-metadata): new target for XEmacs.
+
+2005-04-29 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * tex.el: Remove `TeX-doc' for `ams-tex-mode'.
+
+2005-04-29 David Kastrup <dak@gnu.org>
+
+ * auctex.el.in:
+
+ * context.el:
+
+ * latex.el:
+
+ * tex-jp.el:
+
+ * tex-site.el.in:
+
+ * tex.el:
+
+ * tex-info.el: Remove TeX-doc.
+
+ * tex-info.el (Texinfo-mode): Fix type in alias.
+
+ * tex-site.el.in (tex-site): Provides are added by Makefile.
+ Remove them here.
+
+ * configure.ac: Generate tex-site.el.out instead of tex-site.el.
+
+ * Makefile.in (AUTOLOAD): New form for autoloads from rest of line.
+ (all): Make depend on tex-site.el
+ (lisp): Depend on tex-site.el
+ (tex-site.el, auto-loads.el): New targets.
+
+2005-04-28 Reiner Steib <Reiner.Steib@gmx.de>
+
+ * tex-site.el.in (TeX-mode-alist): Exchange value and doc string.
+ (TeX-modes-set): Check if mode is fbound.
+
+ * doc/changes.texi: Mention changes in sectioning fontification.
+
+ * doc/auctex.texi (Font Locking): Adjust to new sectioning
+ fontification.
+
+ * font-latex.el: Rename most *-title* stuff to *-sectioning*. Old
+ names: font-latex-title-%s-face, font-latex-title-fontify,
+ font-latex-update-title-faces, font-latex-make-title-faces
+ font-latex-title-max. New names: font-latex-sectioning-%s-face,
+ font-latex-fontify-sectioning, font-latex-update-sectioning-faces,
+ font-latex-make-sectioning-faces, font-latex-sectioning-max.
+ (font-latex-fontify-sectioning): Fix typos in doc string.
+
+2005-04-28 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * doc/auctex.texi (Development): New name replacing "ToDo".
+
+ * doc/faq.texi, doc/todo.texi: Fix for raw output.
+
+2005-04-28 David Kastrup <dak@gnu.org>
+
+ * tex-site.el.in (TeX-doc): Use AUCTeX-version.
+
+ * configure.ac: fiddle with relative paths.
+
+ * Makefile.in: several changes to buld structure.
+
+ * auctex.el.in (TeX-doc): Startup file source.
+
+ * doc/wininstall.texi:
+
+ * doc/intro.texi:
+
+ * doc/install.texi:
+
+ * doc/faq.texi:
+
+ * doc/changes.texi: Make the stuff compile cleanly.
+
+ * doc/Makefile.in (DISTTEXTS): list plain text files in parent dir.
+ (.PHONY): everything needed here.
+ (auctex.info): don't ignore errors.
+ (../INSTALL, ../INSTALL.windows, ../README, ../CHANGES)
+ (../TODO, ../FAQ, disttexts): New targets.
+ (INSTALL, INSTALL.windows, README, CHANGES, HISTORY, TODO, FAQ):
+ Remove.
+ (clean): Don't remove files in this directory.
+ (maintainer-clean): New target, removes files in parent, too.
+
+ * autogen.sh: Create info files and distribution texts like
+ preview-latex does, and recurse into preview directory to do the
+ same.
+
+2005-04-27 David Kastrup <dak@gnu.org>
+
+ * tex.el (TeX-lisp-directory, TeX-auto-global): Don't
+ `file-name-as-directory'fy.
+ (TeX-style-global, TeX-auto-local, TeX-style-local)
+ (TeX-macro-global, TeX-macro-private): Same here.
+ (TeX-auto-private): Use expand-file-name.
+ (TeX-style-private): Same here.
+ (TeX-check-path): Same.
+ (TeX-load-style): Adapt.
+
+ * tex-buf.el (TeX-check-files): Be robust against non-slashed
+ directory names.
+ (TeX-ispell-document): Same here.
+
+ * tex.el (AUC-TeX-version, AUC-TeX-date): Protect
+ `make-obsolete-variable' against obsolete Emacsen.
+
+2005-04-28 Masayuki Ataka <ataka@milk.freemail.ne.jp>
+
+ * doc/changes.texi: Mention the fix of Japanese fill problems.
+
+2005-04-27 David Kastrup <dak@gnu.org>
+
+ * configure.ac: Correct bug reporting address and move stuff over
+ from preview.
+ * aclocal.m4: remove, we want the one in preview instead.
+
+ * tex-site.el.in (AUCTeX-version, AUCTeX-date): get via configure.
+
+ * tex.el (info): Add "docTeX" to info prefixes.
+ (AUCTeX-version, AUCTeX-date): removed to tex-site.el.
+ (AUC-TeX-version, AUC-TeX-date): Use `make-obsolete-variable'. Is
+ version 11.50 correct?
+
+ * tex-bar.el (LaTeX-install-toolbar): Adjust toolbarx-image-path.
+
+ * autogen.sh: Use aclocal.m4 from preview subdirectory.
+
+ * tex.el (TeX-submit-bug-report): Add `TeX-command-list' to bug
+ reports.
+
+2005-04-23 David Kastrup <dak@gnu.org>
+
+ * tex-buf.el (TeX-command): Let it accept `TeX-active-master' as
+ well, by not touching `TeX-current-process-region-p' unless
+ `TeX-region-file' or `TeX-master-file' have been identified
+ explicitly.
+ (TeX-view): Simplify.
+ (TeX-active-process, TeX-active-buffer): Simplify.
+
+2005-04-22 David Kastrup <dak@gnu.org>
+
+ * tex-buf.el (TeX-help-error): Create the correct log file
+ name corresponding to the current run.
+ (TeX-error, TeX-warning): Pass runbuffer info into the routines to
+ get the correct log file name in all circumstances.
+
+2005-04-20 David Kastrup <dak@gnu.org>
+
+ * configure.ac: don't bother about pre-2.50 autoconf. Check
+ version more fine-grainedly.
+
+2005-04-19 David Kastrup <dak@gnu.org>
+
+ * texmathp.el (texmathp-match-switch): Add autoload cookie.
+
+ * tex.el (no-doc): Remove: not needed because autoloads are
+ documented by the cookie extraction process.
+ (bibtex-mode-hook): Remove. This will be done by an autoload
+ cookie from latex.el instead.
+ (BibTeX-auto-store, LaTeX-math-mode, japanese-plain-tex-mode)
+ (japanese-latex-mode, texinfo-mode, latex-mode, multi-prompt)
+ (texmathp, texmathp-match-switch): Remove autoloads since this is
+ done by cookies extracted into auctex.el.
+ (TeX-region-create, TeX-save-document, TeX-home-buffer)
+ (TeX-pin-region, TeX-command-region, TeX-command-buffer)
+ (TeX-command-master, TeX-command, TeX-kill-job)
+ (TeX-recenter-output-buffer, TeX-next-error)
+ (TeX-toggle-debug-boxes, TeX-region-file, TeX-current-offset)
+ (TeX-process-set-variable, TeX-view): Make comment nil instead of
+ no-doc.
+ (font-latex-setup, tex-font-setup): Remove autoloads. Should be
+ done by cookies instead.
+ (TeX-tex-mode): rename from tex-mode.
+ (TeX-plain-tex-mode): rename from plain-tex-mode.
+ (ams-tex-mode): Change autoload cookie.
+
+ * tex-jp.el (japanese-plain-tex-mode, japanese-latex-mode): Change
+ autoload cookies.
+
+ * tex-font.el (tex-font-setup): Add autoload cookie.
+
+ * tex-fold.el (TeX-fold-mode, tex-fold-mode): Add autoload
+ cookies.
+
+ * multi-prompt.el (multi-prompt): Add autoload cookie.
+
+ * latex.el (auto-mode-alist): Add .drv to latex-mode.
+ (TeX-latex-mode): Changed name from latex-mode.
+ (TeX-doctex-mode): Same here for doctex-mode. Explicitly set
+ major-mode to doctex-mode: we don't want different modes.
+
+ * tex-info.el (texinfo): Alias texinfo-mode to Texinfo-mode for
+ symmetry.
+ (Texinfo-mode): Autoload.
+
+ * context.el (ConTeXt-mode, context-mode): Add definitions and
+ aliases and autoload cookies.
+
+ * bib-cite.el: Remove autoload from instructions.
+
+ * toolbar-x.el (toolbarx-image-path): New variable.
+ (toolbarx-make-string-from-symbol)
+ (toolbarx-make-symbol-from-string, toolbarx-good-option-list-p)
+ (toolbarx-separate-options, toolbarx-merge-props)
+ (toolbarx-make-command, toolbarx-emacs-mount-popup-menu)
+ (toolbarx-xemacs-mount-popup-menu, toolbarx-mount-popup-menu)
+ (toolbarx-option-value, toolbarx-eval-function-or-symbol)
+ (toolbarx-test-image-type, toolbarx-test-button-type)
+ (toolbarx-test-any-type, toolbarx-test-string-or-nil)
+ (toolbarx-test-toolbar-type, toolbarx-test-dropdown-type)
+ (toolbarx-test-symbol, toolbarx-test-dropdown-default)
+ (toolbarx-test-dropdown-save)
+ (toolbarx-process-group-without-insert, toolbarx-process-group)
+ (toolbarx-process-symbol, toolbarx-process-dropdown-group)
+ (toolbarx-find-image, toolbarx-emacs-add-button)
+ (toolbarx-emacs-refresh-process-button-or-insert-list)
+ (toolbarx-emacs-refresh, toolbarx-xemacs-image-properties)
+ (toolbarx-xemacs-button-properties, toolbarx-xemacs-refresh):
+ Remove autoload cookies.
+ (toolbarx-find-image): Use `toolbarx-image-path'.
+
+2005-04-26 Reiner Steib <Reiner.Steib@gmx.de>
+
+ * font-latex.el (font-latex-update-title-faces): Remove unused
+ variable. Don't call when loading the file.
+ (font-latex-title-fontify): Document that faces set outside of
+ customize might be modified.
+ (font-latex-make-title-faces): Set height or size so that
+ customize won't complain.
+
+2005-04-24 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * tex-buf.el (TeX-interactive-goto-prompt): New function.
+ (TeX-run-interactive): Use it instead of setting
+ `comint-scroll-to-bottom-on-output'. Use `add-hook'.
+
+2005-04-23 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * font-latex.el (font-latex-update-title-faces): Do not touch
+ customized faces.
+ (font-latex-title-fontify): Use `custom-initialize-default'.
+ (font-latex-make-title-faces): Check for value of `saved-face'
+ property for determining face customization.
+
+ * tex.el (TeX-find-macro-boundaries): Reimplement. Now handles
+ \foo{\bar}{ba-!-z} case correctly.
+ (TeX-find-macro-start-helper): Remove.
+
+2005-04-22 Reiner Steib <Reiner.Steib@gmx.de>
+
+ * font-latex.el (font-latex-make-title-faces): Define the face,
+ don't set size. Set parent/inherit conditionally.
+ (font-latex-update-title-faces): New function.
+ (font-latex-title-fontify): Add :initialize and :set. Using
+ `font-latex-update-title-faces' allows changing the height within
+ an Emacs session.
+ (font-latex-title-5-face): Renamed from title-4-face.
+ (font-latex-built-in-keyword-classes): Use title-0 and title-5
+ faces.
+
+2005-04-22 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * tex-buf.el (TeX-run-interactive): Make output buffer scroll.
+
+2005-04-18 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * tex-fold.el (TeX-fold-region): Get rid of \_> for matching
+ macros. It prevents macros immediately followed by numbers from
+ being found.
+
+2005-04-17 Masayuki Ataka <ataka@milk.freemail.ne.jp>
+
+ * style/amsmath.el (LaTeX-item-equation): just-one-space before
+ `\\' at the end of line.
+
+2005-04-15 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * style/harvard.el ("harvard"): Activate harvard citation format
+ in RefTeX.
+
+2005-04-14 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * tex-fold.el (TeX-fold-force-fontify): New variable.
+ (TeX-fold-buffer): Use it. Make sure the buffer is fontified
+ before folding is done.
+
+ * doc/auctex.texi (Folding): Mention `TeX-fold-force-fontify'.
+
+ * doc/changes.texi: Mention `TeX-fold-force-fontify'.
+
+2005-04-14 Ikumi Keita <ikumi@revery.net>
+
+ * style/amsmath.el: Fix comment.
+ ("amsmath"): Removed duplicate settings of "alignat*" and
+ "xalignat*" from LaTeX-add-environments. Add "xalignat",
+ "xalignat*", and "xxalignat" to LaTeX-item-list.
+ (LaTeX-amsmath-env-alignat): Do not ask label if the tail of ENV
+ is "*".
+
+2005-04-14 Masayuki Ataka <ataka@milk.freemail.ne.jp>
+
+ * latex.el (LaTeX-fill-move-to-break-point): Refactoring. Set
+ third argument of re-search-backward to 'move instead of using
+ skip-chars-backward.
+
+2005-04-13 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * latex.el (LaTeX-math-abbrev-prefix): Offer only string type for
+ customization. Add proper :initialize and :set functions to allow
+ the value to be changed without having to restart Emacs.
+
+ * doc/auctex.texi (Mathematics): Document only the string-nature
+ of `LaTeX-math-abbrev-prefix'.
+
+2005-04-12 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * latex.el (LaTeX-math-abbrev-prefix): Can now be a string to be
+ used with `kbd'.
+ (LaTeX-math-abbrev-prefix): New function.
+ (LaTeX-math-keymap, LaTeX-math-mode): Use it.
+
+ * doc/auctex.texi (Mathematics): Explain
+ `LaTeX-math-abbrev-prefix' more verbosely.
+
+2005-04-12 Reiner Steib <Reiner.Steib@gmx.de>
+
+ * tex-site.el.in (TeX-lisp-directory): Avoid open-parenthesis at
+ beginning of a line.
+
+ * tex-style.el (LaTeX-beamer-inner-themes)
+ (LaTeX-beamer-outer-themes, LaTeX-beamer-color-themes)
+ (LaTeX-beamer-font-themes): New variables for style/beamer.el.
+
+ * style/beamer.el (LaTeX-arg-beamer-inner-theme)
+ (LaTeX-arg-beamer-outer-theme, LaTeX-arg-beamer-color-theme)
+ (LaTeX-arg-beamer-font-theme): New functions.
+
+2005-04-10 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * tex.el (TeX-parse-argument): Another stab at fixing this
+ function. The last change from 2005-03-23 broke the insertion of
+ macros like \footnote with a marked region. This is pure
+ guesswork. *sigh*
+
+ * latex.el (LaTeX-section-heading): Shorten prompt.
+ (LaTeX-section-title): Simplify. Shorten prompt.
+ (LaTeX-auto-minimal-regexp-list): "\" and "." are not special in a
+ complemented character alternative.
+ (LaTeX-math-keymap): Define key for prefix insertion inside
+ defvar.
+ (math): Use `LaTeX-math-keymap' only.
+ (LaTeX-math-mode-menu): Use `LaTeX-math-mode-map' (defined by
+ `define-minor-mode').
+ (LaTeX-math-mode): Assign `LaTeX-math-keymap' to
+ `LaTeX-math-abbrev-prefix'. Use `LaTeX-math-mode-menu' with
+ `LaTeX-math-mode-map'.
+ (LaTeX-math-insert-prefix): Remove.
+
+2005-04-08 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * font-latex.el (font-latex-match-command-with-arguments): Skip
+ over comments as well as whitespace.
+
+ * tex.el (TeX-output-extension): Default to nil.
+
+2005-04-07 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * tex.el (TeX-output-extension): Set correct default depending on
+ the value of `TeX-PDF-mode'.
+ (TeX-output-extension): Revert.
+ (VirTeX-common-initialization): Set `TeX-output-extension' here.
+
+2005-04-05 Christian Schlauer <cschl@arcor.de>
+
+ * tex.el (TeX-submit-bug-report): Fix typo in doc string, fill doc
+ string.
+
+ * latex.el: Change maintainer address.
+ (LaTeX-section): Fix typo in doc string. Remove code that almost
+ always inserts a new line.
+ (LaTeX-section-section): Fix doc string. Add code that
+ conditionally inserts a new line (which also bundles the
+ modification of the buffer in this function).
+ (LaTeX-section-hook): Fix typo in doc string.
+ (LaTeX-default-position): Use `do not' instead of `don't' in doc
+ string and customize value menu (as in `LaTeX-float).
+ (LaTeX-item-list): Fix typo in doc string.
+
+2005-04-05 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * tex.el (TeX-PDF-mode, TeX-interactive-mode, TeX-Omega-mode): Set
+ customization group.
+
+ * latex.el (LaTeX-math-default): New entry and key for \colon.
+ New "Punctuation" category. Get rid of some entries in
+ "delimiters" category already defined in "Arrows". Get rid of
+ "delimiters" category and merge entries defined there into
+ "Delimiters.".
+ (LaTeX-math-menu): Remove "delimiters" and add "Punctuation".
+
+2005-04-04 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * font-latex.el (font-latex-make-user-keywords): Make XEmacs
+ happy.
+
+ * doc/changes.texi: Fix @xref.
+
+ * doc/auctex.texi (Quotes): Fix @xref.
+ (European): Be more verbose.
+
+ * tex-info.el (texinfo-mode): Get rid of hyphens in prompts.
+ Add @xref command.
+
+ * latex.el (LaTeX-babel-hyphen, LaTeX-babel-hyphen-after-hyphen):
+ Doc fix.
+ (LaTeX-babel-hyphen-language-alist): Use t as default value for
+ insertion behavior.
+
+ * tex.el (TeX-quote-language-alist): Use t as default value for
+ insertion behavior.
+
+ * doc/auctex.texi: New tag line.
+ (Quotes): Replace description about (n)german.sty-specific quote
+ insertion by a generalized one and refer to section about European
+ languages.
+ (European): Add subsections. Add information about new
+ functionality and customization options for language-specific
+ quote and hyphen insertion.
+ (Folding): Add information about help echo.
+ (Viewing): Add subsection heading. A single one does not really
+ make sense.
+
+ * doc/changes.texi: Add some news.
+
+2005-04-03 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * tex-fold.el (TeX-fold-help-echo-max-length): New variable.
+ Add :type and :group specs.
+ (TeX-fold-make-help-echo): New function.
+ No space before ellipsis.
+ Okay, color does not look too bad.
+ (TeX-fold-make-overlay): Use it.
+ Remove call to `TeX-fold-make-help-echo' again as we have to
+ recompute the string anyway.
+ (TeX-fold-hide-item): Set help-echo property.
+ Recompute help echo string.
+ (TeX-fold-show-item): Invalidate help-echo property.
+
+2005-04-02 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * doc/faq.texi (Frequently Asked Questions About AUCTeX): Minor
+ enhancements in wording.
+
+ * tex.el (TeX-open-quote, TeX-close-quote)
+ (TeX-quote-after-quote): Doc fix.
+ (TeX-quote-language-alist, TeX-quote-language): New variables.
+ (TeX-insert-quote): Use them.
+ (TeX-submit-bug-report): Doc fix.
+
+ * latex.el (LaTeX-mode-map): Map "-" to
+ `LaTeX-babel-insert-hyphen'.
+ (LaTeX-babel-hyphen, LaTeX-babel-hyphen-after-hyphen)
+ (LaTeX-babel-hyphen-language-alist, LaTeX-babel-hyphen-language):
+ New variables. (Moved from tex-style.el and style/german.el
+ respectively and generalized.)
+ (LaTeX-babel-insert-hyphen): New function. (Moved from
+ syle/german.el).
+
+ * tex-style.el (LaTeX-csquotes-open-quote)
+ (LaTeX-csquotes-close-quote): Doc fix.
+ (LaTeX-german-quote-after-quote, LaTeX-german-open-quote)
+ (LaTeX-german-close-quote, LaTeX-german-hyphen)
+ (LaTeX-german-hyphen-after-hyphen): Remove.
+
+ * style/csquotes.el ("csquotes"): Use `TeX-quote-language'.
+
+ * style/italian.el (LaTeX-italian-open-quote)
+ (LaTeX-italian-close-quote): Remove.
+ ("italian"): Use `TeX-quote-language'.
+
+ * style/ngerman.el (LaTeX-german-quote-after-quote)
+ (LaTeX-german-open-quote, LaTeX-german-close-quote): Remove.
+ ("ngerman"): Use `TeX-quote-language' and
+ `LaTeX-babel-hyphen-language'.
+
+ * style/german.el: Move definition of "-" key to latex.el.
+ (LaTeX-german-hyphen-internal): Move to latex.el as
+ `LaTeX-babel-hyphen-language'.
+ (LaTeX-german-insert-hyphen): Move to latex.el as
+ `LaTeX-babel-insert-hyphen'.
+ ("german"): Use `TeX-quote-language' and
+ `LaTeX-babel-hyphen-language'.
+
+ * style/czech.el, style/danish.el, style/slovak.el,
+ style/swedish.el: Use `TeX-quote-language' and
+ `LaTeX-babel-hyphen-language' where appropriate.
+
+2005-03-31 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * doc/faq.texi (Frequently Asked Questions About AUCTeX): Add
+ general information about how to deal with bugs. Adapt version
+ numbers for Emacs.
+
+2005-03-31 Masayuki Ataka <ataka@milk.freemail.ne.jp>
+
+ * latex.el (LaTeX-fill-move-to-break-point): Skip non-space chars
+ backward if re-search-backward does not find white spaces or
+ LaTeX-nospace-between-char-regexp. Add mule check before line
+ break between 2-byte and 1-byte chars.
+ Reported by Ikumi Keita <ikumi@revery.net>.
+ Do not move point if re-search-backward didn't find proper line
+ break point.
+
+2005-03-30 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * tex.el (TeX-submit-bug-report): Insert AUCTeX version into mail
+ subject.
+
+2005-03-30 Ikumi Keita <ikumi@revery.net>
+
+ * latex.el (LaTeX-env-label): Remove `TeX-toggle-off-input-method'
+ because `TeX-math-input-method-off' is already called in
+ `LaTeX-insert-environment'.
+
+2005-03-29 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * tex-style.el (LaTeX-german-hyphen): Doc fix. Fix :type.
+
+ * style/german.el (LaTeX-german-insert-hyphen): Do not add "=
+ repeatedly but stick to - after the first swapping.
+
+2005-03-28 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * style/german.el (LaTeX-mode-map): Bind `-' to
+ `LaTeX-german-insert-hyphen'.
+ (LaTeX-german-quote-after-quote, LaTeX-german-open-quote)
+ (LaTeX-german-close-quote): Move to tex-style.el.
+ (LaTeX-german-hyphen-internal): New variable.
+ (LaTeX-german-insert-hyphen): New function.
+ ("german"): Set `LaTeX-german-hyphen-internal'.
+
+ * tex-style.el (LaTeX-german-quote-after-quote)
+ (LaTeX-german-open-quote, LaTeX-german-close-quote): Move here
+ from style/german.el.
+ (LaTeX-german-hyphen, LaTeX-german-hyphen-after-hyphen): New
+ variables.
+
+ * doc/auctex.texi (Font Locking): References are now fontified
+ with `font-lock-constant-face' because `font-lock-reference-face'
+ is deprecated.
+
+ * font-latex.el: Change maintainer address.
+ (font-latex-quotes, font-latex-make-built-in-keywords)
+ (font-latex-user-keyword-classes): Doc fix. (Mention that setting
+ the variable directly does not take effect.)
+ (font-latex-make-match-defun, font-latex-make-built-in-keywords)
+ (font-latex-make-user-keywords): Doc strings of generated
+ variables and functions now refer to the creating functions.
+ (font-latex-warning-face, font-latex-sedate-face)
+ (font-latex-italic-face, font-latex-bold-face)
+ (font-latex-math-face, font-latex-string-face)
+ (font-latex-verbatim-face, font-latex-superscript-face)
+ (font-latex-subscript-face, font-latex-title-1-face)
+ (font-latex-title-2-face, font-latex-title-3-face)
+ (font-latex-title-4-face): Remove these face variables.
+ (font-latex-title-fontify): Remove :set function.
+ (font-latex-built-in-keyword-classes): Use
+ `font-lock-constant-face' instead of `font-lock-reference-face'
+ because the latter is deprecated in Emacs (and only an alias for
+ the former which will not work if the quoted face name is used).
+ Use new `title' specifier as type of keyword for the titling
+ keywords and mention it in the doc string.
+ (font-latex-keyword-matcher): Quote face specifiers in any case.
+ (font-latex-make-user-keywords)
+ (font-latex-syntactic-face-function): Quote face specifiers.
+ (font-latex-setup): Remove obsolete method for fontifying strings
+ or math respectively.
+
+2005-03-28 David Kastrup <dak@gnu.org>
+
+ * tex.el: Change maintainer address.
+ (TeX-submit-bug-report): Change bug reporting address.
+
+ * doc/wininstall.texi: Change contact info.
+
+ * doc/intro.texi (Introduction): Change contact info.
+
+ * doc/auctex.texi (top): Change contact info.
+
+2005-03-27 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * font-latex.el (font-latex-match-simple-command): New function.
+ (font-latex-make-user-keywords): Use it instead of specifying the
+ regexp directly. Prevents stuff like "\foo\foo\foo\foo" from
+ being fontified like a zebra.
+ (font-latex-match-command-with-arguments): Check for limit when
+ looking at optional and mandatory arguments. Prevents an infinite
+ loop in XEmacs when typing the "n" of \begin in "\begi\n[foo]".
+ (font-latex-user-keyword-classes): Specify a default value for the
+ list.
+
+2005-03-24 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * Makefile.in (AUCELC): Derive from AUCSRC.
+ (STYLEELC, CLEANFILES, DISTCLEANFILES, DISTTEXTS): New variables.
+ (some): Use STYLEELC.
+ (clean): Use CLEANFILES.
+ (distclean): Use CLEANFILES and DISTCLEANFILES. Call distclean
+ target in doc directory.
+ (maintainer-clean, extraclean): New targets.
+
+2005-03-23 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * tex.el (TeX-parse-argument): Deactivate mark after insertion of
+ first mandatory argument. Fixes insertion of braces at wrong
+ places for multi-argument macros like \parbox and \multicolumn.
+ See also change from 2004-12-01 which obviously did not suffice.
+
+2005-03-22 Masayuki Ataka <ataka@milk.freemail.ne.jp>
+
+ * latex.el (LaTeX-fill-move-to-break-point): Prevent line break
+ between 2-byte char an 1 byte-char.
+
+ * latex.el (LaTeX-fill-move-to-break-point): Do not skip
+ LaTeX-nospace-between-char-regexp.
+ Reported by Ikumi Keita <ikumi@revery.net>.
+
+2005-03-19 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * tex-fold.el (TeX-fold-buffer-substring): Better safe than sorry.
+
+2005-03-18 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * font-latex.el (font-latex-make-title-faces): According to
+ upstream `font-size' is likely to vanish. So back to
+ `face-height' but scale it down a bit to better match actual font
+ size.
+
+2005-03-17 David Kastrup <dak@gnu.org>
+
+ * tex.el (TeX-overlay-priority-step): New variable, previously in
+ tex-fold.el under different name.
+ (TeX-overlay-prioritize): new function in Emacs and XEmacs
+ variants.
+
+ * tex-fold.el (TeX-fold-make-overlay): Use `TeX-overlay-prioritize'.
+ (TeX-fold-priority-step, TeX-fold-prioritize): Renamed and moved
+ to tex.el.
+
+ * tex-buf.el (TeX-region-create): Transfer
+ `buffer-file-coding-system' from master buffer to region.
+
+2005-03-17 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * latex.el (LaTeX-section-list-add-locally)
+ (LaTeX-largest-level-set): New functions.
+ (LaTeX-add-environments): Invalidate menu variables instead of
+ setting `LaTeX-menu-changed'.
+ (LaTeX-section-menu-entry): Do not enable symbol.
+ (LaTeX-section-menu-create, LaTeX-menu-changed)
+ (LaTeX-menu-update): Remove.
+ (LaTeX-section-menu, LaTeX-environment-menu)
+ (LaTeX-environment-modify-menu): New variables.
+ (LaTeX-section-menu-filter, LaTeX-environment-menu-filter): New
+ functions.
+ (LaTeX-mode-menu): Use them.
+ (LaTeX-common-initialization): Move setting of
+ `LaTeX-largest-level' upwards because it is needed when the menu
+ is being generated. Do not use `activate-menubar-hook' and
+ `activate-popup-menu-hook' anymore.
+
+ * tex.el (VirTeX-common-initialization): Force update of style
+ information.
+
+ * style/scrreprt.el, style/scrbook.el, style/scrbase.el,
+ style/scrartcl.el, style/report.el, style/jsbook.el,
+ style/jsarticle.el, style/jreport.el, style/jbook.el,
+ style/jarticle.el, style/j-report.el, style/j-book.el,
+ style/j-article.el, style/book.el, style/article.el,
+ style/alphanum.el: Use new functions for setting
+ `LaTeX-largest-level' or `LaTeX-section-list' respectively.
+
+2005-03-16 Ikumi Keita <ikumi@revery.net>
+
+ * latex.el (LaTeX-fill-move-to-break-point): Limit the max number
+ of characters to look backward for `TeX-looking-at-backward'.
+
+2005-03-16 Masayuki Ataka <ataka@milk.freemail.ne.jp>
+
+ * latex.el (LaTeX-nospace-between-char-regexp): Changed from
+ defcustom to defvar.
+
+2005-03-15 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * font-latex.el (font-latex-make-title-faces): Deal with the case
+ that `font-size' returns a number. Or nil.
+
+ * tex.el (TeX-view-style): Remove support for "a4" and "a5".
+
+2005-03-14 David Kastrup <dak@gnu.org>
+
+ * latex.el (docTeX-indent-inner-fixed)
+ (LaTeX-indent-calculate-last): Add support for macrocode*, macro*,
+ environment and environment* environment.
+
+2005-03-14 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * context.el (ConTeXt-indent-item-re): Do not treat
+ \setup... commands like \item.
+
+2005-03-14 Masayuki Ataka <ataka@milk.freemail.ne.jp>
+
+ * tex-fold.el (TeX-fold-prioritize): Cater for preview-latex.
+
+2005-03-11 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * latex.el (LaTeX-paragraph-commands-regexp-make): New function.
+ (LaTeX-paragraph-commands-regexp, LaTeX-paragraph-commands): Use
+ it.
+ (LaTeX-paragraph-commands-add-locally): New function.
+
+ * style/beamer.el ("beamer"): Use it. Newline not needed anymore
+ because \frametitle is now a paragraph command and will not be
+ filled together with the other content.
+
+ * context.el (ConTeXt-find-indent): Correct indentation of
+ environments.
+
+ * latex.el (LaTeX-fill-region-as-para-do): Use
+ `remove-text-properties' instead of
+ `remove-list-of-text-properties' because the latter is not
+ available in Emacs 21.
+
+2005-03-10 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * style/beamer.el ("beamer"): Find the correct start of
+ environment in case a frame environment is inserted with point on
+ a non-empty line. Insert an additional newline to set off title
+ and content.
+
+ * font-latex.el (font-latex-make-title-faces): Use `font-size'
+ instead of `face-height' to determine the font size because the
+ latter (as the sum of the face's ascent and descent) returns
+ inappropriate values. Suggested by Steven E. Harris
+ <seh@panix.com>.
+
+2005-03-09 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * tex.el (TeX-comment-prefix): New function.
+
+ * latex.el (LaTeX-current-environment, LaTeX-find-matching-end)
+ (LaTeX-find-matching-begin): Rather than using the start or end of
+ a commented region as a boundary, look further for other commented
+ regions with the same prefix possibly containing an environment
+ start or end respectively.
+ (LaTeX-mode-menu): An empty help string is useless and may lead to
+ an empty tooltip.
+
+2005-03-09 Masayuki Ataka <ataka@milk.freemail.ne.jp>
+
+ * style/amsmath.el ("amsmath"): Fixed typo: "dotssc" -> "dotsc".
+ Added symbol "dots" and "dotsi".
+
+ * latex.el (LaTeX-insert-environment): Call
+ `TeX-math-input-method-off'.
+ * style/amsmath.el (LaTeX-amsmath-env-alignat)
+ (LaTeX-amsmath-env-aligned): Do not call
+ `TeX-math-input-method-off' from here.
+ Reported by Ikumi Keita <ikumi@revery.net>.
+
+2005-03-08 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * latex.el (LaTeX-current-environment): Doc fix.
+
+ * font-latex.el (font-latex-make-built-in-keywords): Make doc
+ string of `font-latex-match-*-keywords' more clear.
+
+2005-03-08 Masayuki Ataka <ataka@milk.freemail.ne.jp>
+
+ * tex.el (TeX-toggle-off-input-method): Turn off input method iff
+ `current-input-method' starts one of "chinese", "japanese", and
+ "korean". Use `inactivate-input-method' instead of
+ `toggle-input-method'. Doc fix.
+ Suggested by Ikumi Keita <ikumi@revery.net>.
+
+2005-03-07 Reiner Steib <Reiner.Steib@gmx.de>
+
+ * tex-style.el: New file. defcustoms for style/*.el should go
+ here.
+
+ * latex.el (LaTeX-includegraphics-extensions)
+ (LaTeX-includegraphics-options-alist)
+ (LaTeX-includegraphics-strip-extension-flag)
+ (LaTeX-includegraphics-read-file, LaTeX-beamer-themes): Moved to
+ tex-style.el.
+ (tex-style): Require.
+
+ * style/amsmath.el (LaTeX-amsmath-label): Moved to tex-style.el.
+
+ * style/beamer.el: Remove install instructions. Won't work
+ properly outside current AUCTeX anymore. Removed CVS Id.
+ (LaTeX-beamer-section-labels-flag)
+ (LaTeX-beamer-item-overlay-flag): Moved to tex-style.el.
+
+ * style/csquotes.el (LaTeX-csquotes-quote-after-quote)
+ (LaTeX-csquotes-open-quote, LaTeX-csquotes-close-quote): Moved to
+ tex-style.el.
+
+ * style/emp.el (LaTeX-write18-enabled-p): Moved to tex-style.el.
+
+ * Makefile.in (AUCSRC): Added tex-style.el.
+
+2005-03-07 Masayuki Ataka <ataka@milk.freemail.ne.jp>
+
+ * tex-jp.el (japanese-TeX-command-list)
+ (japanese-TeX-error-messages): Change from defvar to defcustom.
+
+2005-03-06 Masayuki Ataka <ataka@milk.freemail.ne.jp>
+
+ * doc/auctex.texi (I18n): Comment fix.
+
+ * latex.el: Set fill-space nonsticky.
+ (LaTeX-fill-delete-newlines): Check text property 'fill-space.
+
+2005-03-04 David Kastrup <dak@gnu.org>
+
+ * Organizational: preview-latex development has been moved from
+ <URL:http://sourceforge.net/projects/preview-latex> into the
+ AUCTeX CVS Archive on
+ <URL:http://savannah.gnu.org/projects/auctex> in subdirectory
+ auctex/preview.
+
+2005-03-04 Reiner Steib <Reiner.Steib@gmx.de>
+
+ * doc/auctex.texi (I18n): Try to make text more clear.
+
+ * style/beamer.el (LaTeX-beamer-search-themes)
+ (LaTeX-arg-beamer-theme): New functions adding completion for
+ \usetheme.
+
+ * latex.el (LaTeX-beamer-themes): New variable.
+
+2005-03-05 Ikumi Keita <ikumi@revery.net> (tiny change)
+
+ * tex-jp.el (japanese-TeX-command-list): Doc fix.
+
+2005-03-03 Ikumi Keita <ikumi@revery.net>
+
+ * tex.el (TeX-macro-global-internal): New function.
+ (TeX-macro-global): Use it.
+ (TeX-kpathsea-format-alist): Removed duplicate line.
+
+ * tex-jp.el: Use `TeX-macro-global-internal' and append path for
+ Japanese TeX into TeX-macro-global. Do not override
+ `TeX-expand-list', no more.
+ (japanese-TeX-command-list): Add :help string. Change
+ `TeX-run-LaTeX' to `TeX-run-TeX'.
+ (japanese-TeX-command-default, japanese-LaTeX-command-default):
+ Quote symbol TeX-command in doc string.
+
+2005-03-03 Thomas Baumann <thomas.baumann@ch.tum.de>
+
+ * style/beamer.el (LaTeX-beamer-item-overlay-flag): New variable.
+ Used for controling the insertion of overlays in
+ `LaTeX-item-beamer'.
+ (LaTeX-item-beamer): Use it.
+
+2005-03-02 Reiner Steib <Reiner.Steib@gmx.de>
+
+ * doc/auctex.texi (I18n): Fix some markup errors.
+
+2005-03-02 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * font-latex.el (font-latex-make-title-faces)
+ (font-latex-title-4-face): Use yellow on terminals with dark
+ background and blue4 on terminals with light background.
+
+2005-03-02 Masayuki Ataka <ataka@milk.freemail.ne.jp>
+
+ * doc/auctex.texi (Floats): Document `LaTeX-top-caption-list'.
+
+2005-03-01 Masayuki Ataka <ataka@milk.freemail.ne.jp>
+
+ * doc/auctex.texi (I18n): Revised.
+
+2005-02-28 Masayuki Ataka <ataka@milk.freemail.ne.jp>
+
+ * tex-jp.el (TeX-japanese-process-input-coding-system)
+ (TeX-japanese-process-output-coding-system): Fix comment.
+
+2005-02-27 Masayuki Ataka <ataka@milk.freemail.ne.jp>
+
+ * latex.el (LaTeX-fill-move-to-break-point): Cater for kinsoku,
+ especially for Japanese.
+
+2005-02-24 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * latex.el (LaTeX-common-initialization): Update LaTeX menu when a
+ popup menu in XEmacs is opened.
+
+2005-02-23 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * bib-cite.el: Some doc fixes in the commentary section.
+
+2005-02-23 Ikumi Keita <ikumi@revery.net> (tiny change)
+
+ * doc/auctex.texi (I18n): Removed FIXME comment.
+
+2005-02-22 Ikumi Keita <ikumi@revery.net> (tiny change)
+
+ * latex.el (LaTeX-fill-delete-newlines): Call search-forward,
+ which is copied from `fill-delete-newlines', with BOUND TO.
+
+2005-02-21 Reiner Steib <Reiner.Steib@gmx.de>
+
+ * doc/auctex.texi (Japanese): Fix bogus macro.
+
+2005-02-21 Masayuki Ataka <ataka@milk.freemail.ne.jp>
+
+ * doc/auctex.texi (Japanese): Doc fix.
+ Suggested by Ikumi Keita <ikumi@revery.net>.
+
+2005-02-20 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * tex-fold.el (TeX-fold-macro-nth-arg): Doc fix.
+ Do not skip more than one closing brace backwards.
+ Use `TeX-fold-buffer-substring'.
+ (TeX-fold-prioritize): Doc fix.
+ (TeX-fold-buffer-substring): New function.
+ Do not use `dolist' which uses an unwanted local binding of the
+ list variable.
+
+2005-02-19 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * latex.el (LaTeX-current-environment): New variable.
+ (LaTeX-indent-calculate, LaTeX-fill-region-as-para-do): Use it.
+ Improves filling performace by caching current environment.
+
+2005-02-19 Masayuki Ataka <ataka@milk.freemail.ne.jp>
+
+ * tex-jp.el (TeX-japanese-process-input-coding-system): Remove
+ garbage code.
+ Reported by Ikumi Keita <ikumi@revery.net>.
+
+ * latex.el (LaTeX-nospace-between-char-regexp): New variable.
+ (LaTeX-fill-delete-newlines): Use it.
+ (LaTeX-fill-move-to-break-point): Ditto. Fix comment.
+
+2005-02-18 Masayuki Ataka <ataka@milk.freemail.ne.jp>
+
+ * latex.el (LaTeX-fill-delete-newlines): New function.
+ (LaTeX-fill-region-as-para-do): Use it.
+
+2005-02-16 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * font-latex.el (font-latex-set-syntactic-keywords): Give an
+ escape char at the end of a verbatim construct punctuation syntax.
+ Prevents wrong fontification of stuff like "\verb|foo\|".
+
+2005-02-16 Masayuki Ataka <ataka@milk.freemail.ne.jp>
+
+ * tex-jp.el (TeX-after-start-process-function): Removed code for
+ XEmacs. `set-process-coding-system' is available in XEmacs 21.1.
+ (TeX-japanese-process-input-coding-system)
+ (TeX-japanese-process-output-coding-system): Change from defvar to
+ defcustom. Use `default-process-coding-system'; Old XEmacs
+ doesn't have the variable?
+ Suggested by Ikumi Keita <ikumi@revery.net>.
+
+2005-02-15 Masayuki Ataka <ataka@milk.freemail.ne.jp>
+
+ * latex.el (LaTeX-fill-move-to-break-point): Simplify.
+ (LaTeX-fill-region-as-para-do): Cater for the situation where
+ there is a line ending with Japanese characters and the following
+ line starts with a non-Japanese character.
+
+2005-02-14 David Kastrup <dak@gnu.org>
+
+ * aclocal.m4 (AC_LISPIFY_DIR): new function.
+ (AUCTEX_AUTO_DIR): Use it.
+
+ * tex-site.el.in (TeX-lisp-directory, TeX-auto-global): put
+ autoconfed expression on a line of its own.
+
+2005-02-14 Masayuki Ataka <ataka@milk.freemail.ne.jp>
+
+ * latex.el (LaTeX-fill-region-as-para-do): Get rid of a space at
+ eol if the last character of the line is Japanese (e.g. short
+ Japanese lines).
+ (LaTeX-fill-move-to-break-point): Do not skip characters if the
+ text is written in Japanese (e.g. long Japanese line).
+ Reported by Ikumi Keita <ikumi@revery.net>.
+
+2005-02-14 Ikumi Keita <ikumi@revery.net> (tiny change)
+
+ * tex-jp.el (LaTeX-auto-regexp-list): Use
+ `LaTeX-auto-class-regexp-list'.
+
+2005-02-13 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * tex-info.el (Texinfo-environment, Texinfo-modify-environment):
+ New functions.
+ (Texinfo-insert-environment): Not interactive anymore as it is now
+ called by `Texinfo-environment'.
+ (Texinfo-mode-map): `C-c C-e' now calls `Texinfo-environment'.
+
+2005-02-12 Masayuki Ataka <ataka@milk.freemail.ne.jp>
+
+ * tex.el (TeX-add-local-master): Insert "japanese-" before mode
+ name if buffer local variable `japanese-TeX-mode' is non-nil.
+ Suggested by Ikumi Keita <ikumi@revery.net>.
+ (japanese-slitex-mode): Removed obsolete autoload of slitex.
+
+ * doc/auctex.texi (Japanese): Doc fix to follow the latest
+ tex-jp.el.
+
+2005-02-12 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * tex.el (TeX-find-macro-boundaries): Return an alist instead of a
+ list.
+ (TeX-find-macro-end): With `TeX-find-macro-boundaries' returning
+ an alist `cdr' is now sufficient.
+ (TeX-find-macro-end-helper): Save match data.
+ (TeX-font-replace-macro): Use `TeX-find-macro-end' instead of
+ `forward-sexp'. Fixes errors e.g. when trying to remove the font
+ spec of a string like "\textbf{(}".
+
+2005-02-11 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * latex.el (LaTeX-env-figure): Make function aware of active
+ selections. There are still some indentation issues left.
+
+ * style/epsf.el ("epsf"): Do not add epsffig environment. Fixes
+ error if latex.el(c) is not loaded.
+ (LaTeX-env-epsffigure): Remove.
+
+2005-02-11 David Kastrup <dak@gnu.org>
+
+ * tex-site.el.in (TeX-lisp-directory): Use `@lispauctexdir'
+ instead of `"@auctexdir@"' and `@lispautodir' instead of
+ `"@auctexdir_expanded"'.
+
+ * configure.ac (lispauctexdir): create version of `$(auctexdir)'
+ that is Lisp-quoted, not shell-quoted.
+ (lispautodir): Similarly.
+
+ * doc/Makefile.in (prefix): Append $(null) to some assignments to
+ save quoted backslashes at line ends.
+
+ * Makefile.in (prefix): Append $(null) to some variable
+ assignments to let quoted backslashes at their end remain quoted.
+ (auctexdir): Get from configure.
+
+2005-02-10 Masayuki Ataka <ataka@milk.freemail.ne.jp>
+
+ * tex-jp.el: Fix bug that once japanese-plain-tex-mode entered,
+ plain-tex-mode do as japanese-plain-tex-mode.
+ Reported by Ikumi Keita <ikumi@revery.net>.
+ (japanese-TeX-mode): Doc fix. Make variable buffer local and
+ permanent-local.
+ (japanese-plain-tex-mode-initialization)
+ (japanese-latex-mode-initialization): Do not initialize
+ japanese-TeX-mode. Use `when' instead of `if'.
+
+2005-02-09 Peter S Galbraith <psg@debian.org>
+
+ * bib-cite.el (bib-master-file): Apply patch from Peter Heslin.
+ TeX-master can now have symbol values (other than t or nil).
+
+2005-02-09 Masayuki Ataka <ataka@milk.freemail.ne.jp>
+
+ * tex-jp.el (LaTeX-auto-regexp-list): Removed `usepackage' because
+ it is defined in `LaTeX-auto-minimal-regexp-list'.
+ (plain-TeX-auto-regexp-list): Fix regexp; Use `\\|' instead of `|'.
+ Fill lines in the same way in tex.el.
+ (TeX-japanese-process-input-coding-system)
+ (TeX-japanese-process-output-coding-system): Use if-statement in
+ defvar instead of outside of defvar. Change default value of FSF
+ Emacs to 'euc-jp.
+ (TeX-after-start-process-function): Add code for FSF Emacs.
+
+2005-02-08 Masayuki Ataka <ataka@milk.freemail.ne.jp>
+
+ * style/alphanum.el: Added `Local Variables'.
+ Suggested by Ikumi Keita <ikumi@revery.net>.
+
+ * font-latex.el: Fix typo in `Local Variables'.
+ Reported by Ikumi Keita <ikumi@revery.net>.
+
+2005-02-07 Reiner Steib <Reiner.Steib@gmx.de>
+
+ * doc/faq.texi (Frequently Asked Questions About AUCTeX): Fix typo
+ in previous commit.
+
+2005-02-07 Masayuki Ataka <ataka@milk.freemail.ne.jp>
+
+ * style/jarticle.el ("jarticle"): Use `LaTeX-section-level'.
+
+2005-02-07 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * latex.el (LaTeX-fill-code-comment): Compute the end of the
+ region to be filled _after_ indentation happened.
+
+2005-02-07 David Kastrup <dak@gnu.org>
+
+ * doc/faq.texi (Frequently Asked Questions About AUCTeX): Be quite
+ more verbose about Emacs/XEmacs and versions.
+
+2005-02-04 David Kastrup <dak@gnu.org>
+
+ * Version 11.55 released.
+
+ * Makefile.in (tar-ball):
+
+ * doc/Makefile.in (clean, html/auctex_toc.html, dist): Move HTML
+ stuff into html directory.
+
+2005-02-04 David Kastrup <dak@gnu.org>
+
+ * RELEASE: Some more Emacspeak blurb.
+
+2005-02-04 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * RELEASE: Make description of changes clearer.
+
+2005-02-04 David Kastrup <dak@gnu.org>
+
+ * RELEASE (Warning): warn about XEmacs 21.4.16.
+
+2005-02-01 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * tex.el (TeX-search-syntax-table): Give ?\" character punctuation
+ syntax. Prevents parenthetical characters from being hidden from
+ `TeX-find-opening-brace' if they happen to be enclosed between two
+ quotation marks.
+ Better use whitespace syntax for ?\" as this is the equivalent of
+ a nil entry in the syntax table.
+ (TeX-search-syntax-table): Remove superfluous possibility to
+ specify comment and escape characters as arguments.
+
+2005-02-01 Masayuki Ataka <ataka@milk.freemail.ne.jp>
+
+ * doc/changes.texi: Mention support for the jsarticle and jsbook
+ classes.
+
+ * tex-jp.el (japanese-LaTeX-style-list): Added
+ jsclasses (jsarticle and jsbook).
+
+2005-01-31 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * configure.ac: Bump version info to 11.55.
+
+ * auctex.spec (Version): Bump to 11.55.
+ (Release): Reset to 1.
+
+ * doc/tex-ref.tex: Bump version info to 11.55.
+ (Source Display): Adapt information about key bindings to current
+ implementation.
+
+ * doc/auctex.texi: Bump version info to 11.55.
+
+ * doc/changes.texi: Add information about changes in AUCTeX 11.55.
+
+ * RELEASE: Add information about fixed bugs in AUCTeX 11.55.
+
+ * latex.el (LaTeX-fill-region-as-para-do): Limit the search for
+ sentence ends. Fixes erroneous addition of spaces at places
+ following a paragraph to be filled.
+
+2005-01-31 Masayuki Ataka <ataka@milk.freemail.ne.jp>
+
+ * style/jsarticle.el: New file.
+
+ * style/jsbook.el: New file.
+
+ * Makefile.in (STYLESRC): Add them.
+
+2005-01-29 Masayuki Ataka <ataka@milk.freemail.ne.jp>
+
+ * tex-jp.el (LaTeX-fill-region-as-para-do): Removed.
+
+2005-01-28 Reiner Steib <Reiner.Steib@gmx.de>
+
+ * tex.el (AUCTeX-date): Use ISO 8601 format.
+ (TeX-submit-bug-report): Include AUCTeX-date when using a
+ non-released version.
+
+2005-01-26 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * tex.el: Do not use whitespace syntax for ?~. Prevents these
+ characters from being deleted during filling.
+
+2005-01-25 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * tex-buf.el: Update header.
+ (TeX-view-output-file): Let `TeX-active-master' return file name
+ without directory. Fixes viewer not finding output file when
+ being called in a subdirectory.
+ (TeX-active-master): Add new parameter `nondirectory'. Doc fix.
+
+2005-01-21 David Kastrup <dak@gnu.org>
+
+ * auctex.spec (Conflicts): Mention the outdated emacspeak from
+ FC3.
+
+2005-01-20 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * font-latex.el (font-latex-set-syntactic-keywords): Do not call
+ `regexp-opt' on empty lists. Prevents `regexp-opt-group' from
+ entering a loop on installations with an outdated regexp-opt.el.
+
+ * tex-buf.el (TeX-command-region): Pass name of region file
+ without directory to `TeX-command-query' because a test in the
+ latter expects it like that.
+ (TeX-command-query): Doc fix.
+
+2005-01-19 Jan-Ake Larsson <jalar@mai.liu.se>
+
+ * aclocal.m4, configure.ac: A few small changes to allow sync with
+ preview-latex' aclocal.m4
+
+2005-01-19 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * tex.el (hack-one-local-variable): Make sure the byte compiler
+ does not barf on `minor-mode-list' by eliminating the reference to
+ this variable.
+
+2005-01-15 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * doc/auctex.texi (top): Restrict to one content listing in HTML
+ output.
+
+ * doc/todo.texi (Wishlist): Remove bug regarding parsing of LaTeX
+ class files.
+
+ * tex.el (TeX-macro-global): New function.
+ (TeX-macro-global): (the variable) Moved here from tex-site.el.in.
+ Use new `TeX-macro-global' function.
+
+ * aclocal.m4 (library): Remove TEX_INPUT_DIRS function.
+
+ * configure.ac (auctexdir): Remove call to TEX_INPUT_DIRS.
+
+ * lpath.el: Setting `TeX-macro-global' is not necessary anymore as
+ it now is in tex.el.
+
+ * tex-site.el.in (TeX-macro-global): Move defcustom to tex.el.
+
+ * doc/install.texi (Configure): Remove documentation of
+ --with-tex-input-dirs.
+
+ * doc/wininstall.texi: Remove documentation of
+ --with-tex-input-dirs.
+
+ * latex.el (LaTeX-insert-environment): Insert a simple newline
+ character instead of using `newline'. Fixes insertion of
+ environment end at wrong place in XEmacs.
+ (LaTeX-fill-region): Remove superfluous `save-restriction'.
+ (LaTeX-auto-class-regexp-list): Add patterns for commands
+ described in "LaTeX2e font selection" (fntguide).
+
+2005-01-14 Reiner Steib <Reiner.Steib@gmx.de>
+
+ * doc/auctex.texi (European): Document all TeX-language-*-hook
+ variables. Don't document obsolete `dk.sty'.
+
+2005-01-14 David Kastrup <dak@gnu.org>
+
+ * auctex.spec: Add and remove auctex.info instead of auctex in
+ info dir. Bump release to 2 to match upload.
+
+2005-01-13 David Kastrup <dak@gnu.org>
+
+ * font-latex.el (font-latex-set-title-face)
+ (font-latex-title-fontify): font-latex-title-fontify, not
+ fontity. fontify, fontify, fontify.
+ * doc/changes.texi: Ditto.
+ * doc/auctex.texi (Font Locking): Ditto.
+
+2005-01-12 David Kastrup <dak@gnu.org>
+
+ * Version 11.54 released.
+
+2005-01-12 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * style/beamer.el: Update copyright information. General
+ clean-up.
+ ("beamer"): Support frame environment.
+ The overprint has an optional "area width" argument, not a
+ mandatory "overlay" argument.
+
+2005-01-09 Reiner Steib <Reiner.Steib@gmx.de>
+
+ * RELEASE: Addition to contributors section.
+
+ * tex-bar.el (TeX-bar-LaTeX-button-alist): Use generic "view"
+ image instead of mode specific.
+
+2005-01-09 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * RELEASE: Added information about fixed bugs and added features
+ in AUCTeX 11.54.
+
+ * auctex.spec (Version): Bump to 11.54.
+
+ * configure.ac: Bump version info to 11.54.
+
+ * doc/auctex.texi: Bump version info to 11.54.
+
+ * doc/tex-ref.tex: Bump version info to 11.54.
+
+2005-01-07 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * latex.el (LaTeX-forward-paragraph): Allow finding paragraph
+ commands even if they are preceded by whitespace and comment
+ starters.
+
+2005-01-06 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * tex.el (TeX-forward-comment-skip): Differentiate prefixes with
+ whitespace between comment starters.
+
+ * latex.el: Update copyright information.
+ (LaTeX-indent-calculate-last, LaTeX-fill-region-as-para-do): Do
+ not widen.
+ (LaTeX-fill-region-as-paragraph, LaTeX-fill-region-as-para-do):
+ Use a marker instead of narrowing the region.
+ (LaTeX-indent-line, LaTeX-indent-inner-do)
+ (LaTeX-current-indentation, LaTeX-back-to-indentation): Handle
+ prefixes with whitespace between comment starters correctly.
+
+2005-01-05 Reiner Steib <Reiner.Steib@gmx.de>
+
+ * style/graphicx.el: Added completion of boxing macros. Fontify
+ some macros.
+
+ * font-latex.el (font-latex-built-in-keyword-classes): Fixed typo
+ in doc string.
+
+2005-01-02 Reiner Steib <Reiner.Steib@gmx.de>
+
+ * toolbar-x.el (toolbarx-default-toolbar-meaning-alist): Some
+ checkdoc related fixes. Still not checkdoc clean.
+
+ * tex-bar.el (Commentary): Don't mention stuff done by
+ configure/make in the instructions.
+ (TeX-bar-help-from-command-list): Quote symbols in doc string.
+ File is checkdoc clean now.
+
+ * doc/auctex.texi: Update copyright.
+ (Mathematics): Explain how to enable LaTeX-math-mode by default.
+ Suggested by Chris Wallace <c.wallace@qmul.ac.uk>.
+ (Filling, Outline): Markup fixes: Use @lisp instead of @example
+ where appropriate.
+
+2004-12-30 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * tex-fold.el (ConTeXt-find-matching-start): Require 'tex and add
+ autoloads to make the compiler happy.
+
+ * doc/changes.texi: Add and tweak some stuff for 11.54.
+
+2004-12-28 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * tex.el (TeX-auto-parse-region): Do not add element to `symbol'
+ if it is already contained.
+
+2004-12-23 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * latex.el (LaTeX-indent-outer-do): Remove redundant code.
+
+2004-12-20 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * font-latex.el: Add coding cookie.
+ (font-latex-quote-end-list): Remove.
+ (font-latex-quote-list): New variable.
+ (font-latex-quotes, font-latex-match-quotation): Use it for
+ generalization.
+ (font-latex-keyword-matcher): Revert last change.
+ (font-latex-make-built-in-keywords): Match the empty string only
+ at the end of multi-char macros.
+ (font-latex-make-user-keywords): Make sure sedate face is not used
+ for words right after a "\\".
+ (font-latex-set-syntactic-keywords): Do not match linebreaks as
+ delimiters of `verb-like-commands'.
+
+2004-12-19 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * font-latex.el (font-latex-keyword-matcher): Highlight only first
+ matched group.
+ (font-latex-make-built-in-keywords): Set up grouping for warning
+ keywords and mark its end with "[^A-Za-z@*]".
+
+2004-12-17 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * latex.el (LaTeX-fill-paragraph): Do not narrow region when code
+ comments are filled. Fixes wrong indentation if a line with a
+ code comment following an indented line is filled.
+ Mark end of current line, not beginning of next.
+ Jump to start of code comment line after regular filling.
+
+2004-12-16 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * font-latex.el (font-latex-built-in-keyword-classes): Move
+ warning keywords up in order to save them from being covered by
+ less important faces. Include "include" in warning keywords.
+
+ * aclocal.m4 (TEX_INPUT_DIRS): Change `IFS' temporarily for
+ tokenizing the string instead of inserting newlines. The latter
+ did not work anyway because there was one backslash too much in
+ "\\n". Strip trailing slashes of determined directories before
+ concatenation.
+
+ * doc/install.texi (Configure): Quote value for
+ --with-tex-input-dirs.
+
+ * doc/wininstall.texi: Quote value for --with-tex-input-dirs.
+
+ * tex.el (TeX-arg-opening-brace, TeX-arg-closing-brace): New
+ variables.
+ (TeX-parse-arguments, TeX-parse-argument, TeX-argument-insert):
+ Use them.
+
+ * latex.el (TeX-arg-free): Temporarily bind
+ `TeX-arg-opening-brace' and `TeX-arg-closing-brace'.
+
+2004-12-15 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * tex.el (TeX-source-specials-view-position-flags): Fix syntax for
+ xdvi.
+
+2004-12-14 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * doc/auctex.texi (top): Duplicate top node and wrap it in @ifinfo
+ and @ifhtml environments respectively.
+
+2004-12-13 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * context.el (ConTeXt-paragraph-commands-regexp): Match any
+ command starting with "\start" or "\stop" and the respective
+ language variants.
+
+2004-12-11 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * tex-fold.el (TeX-fold-keymap): Change key bindings for clearout
+ commands.
+ (TeX-fold-item, TeX-fold-remove-overlays): Doc fix.
+
+ * tex.el (TeX-fold-menu): Change display of key bindings for
+ clearout commands.
+
+ * doc/auctex.texi (Folding): Document new key bindings for
+ clearout commands.
+
+2004-12-10 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * tex-fold.el (TeX-fold-keymap): Add key binding for
+ `TeX-fold-dwim'.
+ (TeX-fold-dwim): New function.
+ Add support for folding regions.
+ (TeX-fold-macro, TeX-fold-env): Call `message' here instead of in
+ `TeX-fold-item' to get the right return value for the latter.
+ (TeX-fold-item): Move `message' out to get the right return value.
+ (TeX-fold-remove-overlays): Signal if an overlay was deleted with
+ the return value.
+
+ * tex.el (TeX-fold-menu): Add menu entry for `Tex-fold-dwim'.
+
+ * doc/auctex.texi (Folding): Document `TeX-fold-dwim'.
+ Mention support for folding regions with `TeX-fold-dwim'.
+
+ * doc/changes.texi: Advertise folding and unfolding of regions as
+ well as DWIM functionality.
+
+ * tex-fold.el (TeX-fold-keymap): Add key bindings for
+ `TeX-fold-region and `TeX-fold-clearout-region'.
+ (TeX-fold-region): Make interactive.
+
+ * tex.el (TeX-fold-menu): Add menu entries for folding and
+ unfolding of regions.
+
+ * doc/auctex.texi (Folding): Document folding and unfolding of
+ regions.
+ Document `TeX-fold-dwim'.
+
+ * latex.el (LaTeX-fill-code-comment): Do not hardcode tab width.
+
+2004-12-09 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * tex-fold.el (TeX-fold-keymap): Add key bindings for
+ `TeX-fold-paragraph' and `TeX-fold-clearout-paragraph'.
+ (TeX-fold-buffer): Now calls new `*-region' functions.
+ (TeX-fold-paragraph): New function.
+ (TeX-fold-buffer-type): Remove.
+ (TeX-fold-region): New function. Basically encloses contents of
+ `TeX-fold-buffer-type' but type parameter is not mandatory
+ anymore.
+ (TeX-fold-clearout-buffer): Now calls `TeX-fold-clearout-region'.
+ (TeX-fold-clearout-paragraph, TeX-fold-clearout-region): New
+ functions.
+
+ * tex.el (TeX-fold-menu): Add menu entries for folding and
+ unfolding of paragraphs.
+
+ * doc/auctex.texi (Folding): Document folding and unfolding of
+ paragraphs.
+
+ * doc/changes.texi: Advertise folding and unfolding of
+ paragraphs.
+
+ * tex.el (TeX-comment-start-regexp): New variable.
+ (TeX-comment-or-uncomment-region, TeX-uncomment)
+ (TeX-forward-comment-skip, TeX-find-macro-end-helper): Use it.
+
+ * latex.el (LaTeX-newline, LaTeX-insert-environment)
+ (LaTeX-env-item, LaTeX-indent-line, LaTeX-current-indentation)
+ (LaTeX-fill-region-as-paragraph, LaTeX-fill-region-as-para-do)
+ (LaTeX-fill-move-to-break-point, LaTeX-fill-paragraph)
+ (LaTeX-fill-code-comment, LaTeX-fill-region)
+ (LaTeX-forward-paragraph, LaTeX-backward-paragraph): Use
+ `TeX-comment-start-regexp' instead of `comment-start'.
+ (LaTeX-backward-paragraph, LaTeX-indent-line): Simplify.
+
+ * style/mdwlist.el ("mdwlist"): Use `TeX-comment-start-regexp'
+ instead of `comment-start'.
+
+ * style/doc.el (LaTeX-env-no-comment): Use
+ `TeX-comment-start-regexp' instead of `comment-start'.
+
+2004-12-07 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * tex-fold.el (TeX-fold-buffer-type): Do not ignore case during
+ search.
+
+ * context.el (ConTeXt-paragraph-commands-regexp): New name for
+ `ConTeXt-paragraph-commands'. Doc fix. Match escape character at
+ front as well.
+ (ConTeXt-mode-common-initialization): Use it. Set
+ `LaTeX-paragraph-commands-regexp' instead of
+ `LaTeX-paragraph-commands'. Adapt definition of
+ `paragraph-start'.
+
+2004-12-05 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * tex.el (hack-one-local-variable): Advise it in order to call
+ minor mode functions for AUCTeX minor modes activated by
+ file-local minor mode variables.
+
+ * latex.el (LaTeX-math-mode): Define using `define-minor-mode'.
+ Make it compatible with older Emacsen.
+
+2004-12-02 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * style/csquotes.el (LaTeX-csquotes-quote-after-quote): Avoid
+ interference with (n)german.el.
+
+2004-12-01 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * Makefile.in (distclean): Remove generated `configure' file.
+ And revert again as it does not comply with the definition of
+ standard targets in the GNU make manual.
+
+ * style/jurabib.el ("jurabib"): Add further macros.
+
+ * tex.el: Add coding cookie.
+ Use punctuation syntax for "ÂĞ" and "Âğ" characters.
+ (TeX-parse-argument): Deactivate mark after insertion of first
+ pair of braces. Fixes problems with the insertion of macros with
+ more than one brace and an active selection.
+
+ * style/csquotes.el (LaTeX-csquotes-open-quote)
+ (LaTeX-csquotes-close-quote): Doc fix.
+ ("csquotes"): Repair quoting. Use completing-read where
+ possible. Use a stricter test for usage of quotes.
+
+ * doc/auctex.texi (Quotes): Document csquotes.el.
+
+2004-11-29 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * style/csquotes.el: New file.
+
+ * Makefile.in (STYLESRC): Add style/csquotes.el.
+
+ * doc/changes.texi: Advertise support for csquotes.sty.
+
+2004-11-29 Reiner Steib <Reiner.Steib@gmx.de>
+
+ * tex.el (TeX-auto-insert): Added SKIP argument.
+ (TeX-auto-store): Use it to avoid circular dependencies.
+
+ * style/graphicx.el (LaTeX-arg-includegraphics): Add "page".
+
+ * latex.el (LaTeX-includegraphics-options-alist): Ditto.
+
+2004-11-29 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * doc/auctex.texi: Use "auctex.info" instead of "auctex" as info
+ file name.
+
+ * doc/Makefile.in: Adapt to suit change in info file name from
+ "auctex" to "auctex.info".
+
+ * doc/.cvsignore: Adapt to suit change in info file name from
+ "auctex" to "auctex.info".
+
+ * doc/changes.texi: Advertise use of "auctex.info" info file name.
+
+2004-11-29 Jan-Ake Larsson <jalar@mai.liu.se>
+
+ * configure.ac: Add @command macro test
+
+ * configure.in: Moved to configure.ac
+
+ * configure.ac: Moved from configure.in
+
+ * doc/macros.texi: Add @command macro
+
+ * doc/auctex.texi: Change order of @top and @ifnottex, error
+ message otherwise.
+
+ * doc/Makefile.in: Add MAKEINFO environment variable for texi2...
+ usage. Remove old (confusing) messages.
+
+2004-11-28 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * doc/intro.texi (Introduction): @/ unfortunately is only
+ available since Texinfo 4.6. Remove it for now.
+
+ * doc/auctex.texi: Correct some references.
+
+2004-11-27 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * doc/auctex.texi: Remove RCS keyword.
+ Correct subtitle.
+ Various corrections of filling and capitalization.
+ Move up installation instructions.
+ (Display): New node and chapter holding display-related content.
+ (Font Locking): New node and section.
+ (Folding): Now a section. Remove the silly first paragraph.
+ (Outline): Now a section.
+
+ * doc/macros.texi: Add `@fontlatex' macro.
+
+ * doc/install.texi: Specify node unconditionally in the file.
+
+ * doc/intro.texi (Introduction): Use `@email' instead of `@url'
+ for email addresses.
+
+ * doc/quickstart.texi (Processing): Better heading.
+
+ * font-latex.el: Clean up comments.
+ (font-latex-built-in-keyword-classes): Add explanation of the
+ variable structure.
+ (font-latex-match-command-with-arguments): Change "asterix" to
+ "asterisk".
+
+2004-11-25 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * latex.el (LaTeX-backward-paragraph): Jump to macro start. D'oh.
+
+ * texmathp.el: Rearrange variable and function definitions in
+ order to get as few compiler warnings as possible due to the
+ reintroduction of the :set function in `texmathp-tex-commands'.
+ Add a dummy `defvar' for `texmathp-tex-commands' to silence the
+ compiler.
+ (texmathp-tex-commands): Reintroduce a :set function as advertised
+ in `texmathp-compile'.
+ (texmathp): Remove the conditional call to `texmathp-compile' as
+ this is handled by the :set function in `texmathp-tex-commands' on
+ load of the file.
+
+ * tex.el: Autoload `texmathp-match-switch'.
+
+2004-11-24 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * font-latex.el (font-latex-bold-face, font-latex-italic-face)
+ (font-latex-math-face, font-latex-string-face)
+ (font-latex-warning-face, font-latex-verbatim-face): Inherit from
+ suitable base faces if possible. Doc fix.
+ (font-latex-sedate-face): Doc fix.
+
+ * latex.el (LaTeX-paragraph-commands): Doc fix.
+ (LaTeX-backward-paragraph): Do not unnecessarily jump to a (wrong)
+ position after the macro start.
+
+ * tex.el: Move (nearly all) autoloads to a single place. Remove
+ redundant autoload for `TeX-region-file'. Add autoload for
+ `TeX-view'.
+ (TeX-parse-macro): Doc fix.
+ Do not add braces for macros defined as `("foo" 0)'.
+ (TeX-parse-arguments): Do not bind `<' and `>'.
+ (TeX-parse-argument, TeX-argument-insert): Do not use `<' and `>'
+ formerly bound by `TeX-parse-arguments'. Fixes some compiler
+ warnings.
+ (TeX-auto-list-information): Use `message' correctly.
+
+ * tex-info.el (texinfo-mode): Add `@email' macro.
+
+2004-11-22 Berend de Boer <berend@pobox.com>
+
+ * context.el (ConTeXt-mode-common-initialization): ConTeXt does
+ not need italics correction.
+
+2004-11-20 Christian Schlauer <cschl@arcor.de>
+
+ * doc/auctex.texi (Floats): Update.
+
+ * doc/changes.texi: Mention change of `LaTeX-float'.
+
+ * latex.el (LaTeX-float, LaTeX-env-figure): Implement "do not
+ prompt" option. `LaTeX-float' has the same customize value menu
+ like `LaTeX-default-position' now. This implies that the old
+ meaning nil corresponds to `""' now, while nil means "do not
+ prompt".
+ (LaTeX-env-figure): Ask for `Float position' instead of `Float
+ to'.
+ (LaTeX-float): New default value "" instead of "htbp" (after a
+ discussion on the mailing list).
+ (LaTeX-default-format, LaTeX-default-width)
+ (LaTeX-default-position): Omit `Specifies the' in doc-string.
+
+2004-11-19 Miguel Frasson <frasson@math.leidenuniv.nl>
+
+ * tex-buf.el (TeX-run-TeX): Improve comments.
+
+2004-11-18 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * tex-buf.el (TeX-TeX-sentinel-check): Use only the letters after
+ the last dot of a file name for the file extension.
+
+2004-11-16 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * latex.el (LaTeX-fill-move-to-break-point): Search backward for
+ \verb|...| constructs rather than forward. Fixes cases with more
+ than one constructs per line. Reported by Christan Schlauer.
+
+2004-11-16 David Kastrup <dak@gnu.org>
+
+ * doc/wininstall.texi: Clarify --with-xemacs.
+
+2004-11-15 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * latex.el (LaTeX-paragraph-commands): Now is a customizable list
+ instead of a regular expression.
+ (LaTeX-paragraph-commands-internal)
+ (LaTeX-paragraph-commands-regexp): New variables.
+ (LaTeX-forward-paragraph, LaTeX-backward-paragraph)
+ (LaTeX-common-initialization): Use
+ `LaTeX-paragraph-commands-regexp' instead of
+ `LaTeX-paragraph-commands'.
+
+2004-11-12 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * latex.el (LaTeX-close-environment): Insert a newline at the end
+ of the environment if an uncommented line follows a commented one.
+
+2004-11-11 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * latex.el (docTeX-in-macrocode-p): Search backward for an
+ environment beginning rather than forward for its end.
+
+2004-11-08 David Kastrup <dak@gnu.org>
+
+ * latex.el (doctex-mode): Set the mode name.
+
+2004-11-04 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * tex-info.el (texinfo-mode): Add `@command' macro.
+
+ * doc/auctex.texi (Commands): Correct key binding for
+ `TeX-Omega-mode'. Add index entry. Use `@command' instead of
+ `@code' where appropriate.
+
+ * font-latex.el (font-latex-built-in-keyword-classes): Use correct
+ face for `font-latex-match-title-3'.
+
+2004-11-04 Miguel Frasson <frasson@math.leidenuniv.nl>
+
+ * images/amstex.xpm: Added. Contains symbolic color
+ 'backgroundToolBarColor', required by (GNU/Linux) XEmacs.
+
+2004-11-03 Christian Schlauer <cschl@arcor.de>
+
+ * latex.el (LaTeX-env-figure, LaTeX-env-minipage)
+ (LaTeX-env-tabular*): Do always accept the user's input as the new
+ buffer-local values for `LaTeX-float' and `LaTeX-default-width',
+ even if the user entered the empty string.
+ (LaTeX-env-minipage): Do not ask for the (optional) position if
+ `LaTeX-default-position' is set to `nil'. Behaviour agrees with
+ LaTeX-env-array and LaTeX-env-tabular* now.
+ (LaTeX-env-array, LaTeX-env-tabular*): Changed `setq'-assignment
+ of `LaTeX-default-position' so that it works not only the first
+ time in buffers with `LaTeX-default-position' set to `nil'.
+ (LaTeX-env-array, LaTeX-env-minipage, LaTeX-env-tabular*): Use
+ `LaTeX-optop', `TeX-grop', etc. instead of `{', `['.
+ (LaTeX-env-picture): Don't delete whitespace after inserting the
+ environment. Cursor position corresponds to proper indentation
+ now.
+
+2004-11-03 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * tex.el (TeX-delete-dups-by-car): New name for `TeX-delete-dups'.
+ (TeX-delete-duplicate-strings, TeX-sort-strings): New functions.
+ Contributed by Reiner Steib and David Kastrup.
+
+ * font-latex.el: Require 'tex.
+ (font-latex-user-keyword-classes): Enhance :set function to tell
+ user which entry is duplicated.
+
+ * latex.el (TeX-arg-input-file): Use new name
+ `TeX-delete-dups-by-car' instead of `TeX-delete-dups'.
+
+ * style/graphicx.el (LaTeX-includegraphics-read-file-TeX): Use
+ new name `TeX-delete-dups-by-car' instead of `TeX-delete-dups'.
+
+2004-11-02 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * font-latex.el (font-latex-make-user-keywords): Add the "fixed"
+ matchers here rather than in `font-latex-make-built-in-keywords'.
+
+ * latex.el (LaTeX-math-default, LaTeX-math-menu): Use "Greek
+ Uppercase" instead of "Greek" and "Greek Lowercase" instead of
+ "greek".
+
+2004-11-02 David Kastrup <dak@gnu.org>
+
+ * latex.el (LaTeX-paragraph-commands): Make `\maketitle' a
+ paragraph starter.
+
+2004-11-01 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * font-latex.el (font-latex-make-built-in-keywords)
+ (font-latex-make-user-keywords): Append rather than prepend
+ matchers.
+
+2004-11-01 Miguel Frasson <frasson@math.leidenuniv.nl>
+
+ * toolbar-x.el
+ (toolbarx-make-command): Code clean up.
+
+2004-11-01 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * font-latex.el: Change maintainer information.
+ (font-latex-keywords): New customization group.
+ (font-latex-built-in-keyword-classes): New variable.
+ (font-latex-make-match-defun, font-latex-keyword-matcher): New
+ functions.
+ (font-latex-make-built-in-keywords): New name for
+ `font-latex-make-keywords'.
+ Move default keyword definitions from
+ `font-latex-match-*-keywords' to
+ `font-latex-match-*-keywords-local'.
+ Integrate `font-latex-match-*-keywords-set' function into
+ `font-latex-match-*-keywords' defcustom.
+ (font-latex-keywords-1, font-latex-keywords-2): Default to nil.
+ All matchers are now added in `font-latex-make-built-in-keywords'
+ and `font-latex-make-user-keywords'.
+ (font-latex-user-keyword-classes): New variable.
+ (font-latex-make-user-keywords): New function.
+
+ * doc/changes.texi: Remove duplicate word.
+ Mention possibility to add new keyword classes.
+
+ * doc/quickstart.texi: Some rewordings, corrections and
+ enhancements.
+
+2004-10-29 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * tex.el (TeX-auto-symbol-check): Use `add-to-list' instead of
+ `cons' in order to avoid duplicates.
+
+ * latex.el (LaTeX-auto-minimal-regexp-list): Use non-greedy
+ operators for getting the end of a TeX group.
+ (LaTeX-auto-cleanup): Use `add-to-list' instead of `cons' in order
+ to avoid duplicates.
+
+2004-10-29 Miguel Frasson <frasson@math.leidenuniv.nl>
+
+ * tex-buf.el: Add simple error report system.
+ (TeX-error-report-switches): New variable (plist).
+ (TeX-run-TeX),
+ (TeX-TeX-sentinel-check): Use it, updating error state,
+ where property is (intern (TeX-master-file)).
+
+ * tex-bar.el: Remove defadvice's to TeX-run-TeX and
+ TeX-TeX-sentinel-check.
+ (TeX-bar-error-handling-switches): Removed.
+ (TeX-bar-LaTeX-button-alist): next-error updated.
+
+2004-10-28 Reiner Steib <Reiner.Steib@gmx.de>
+
+ * tex-bar.el (TeX-bar-LaTeX-button-alist): Add `TeX-save-document'.
+
+ * doc/changes.texi: Renamed function `LaTeX-install-toolbar'.
+
+ * tex-site.el.in: Ditto.
+
+2004-10-28 Miguel Frasson <frasson@math.leidenuniv.nl>
+
+ * tex-bar.el: Now requires tex-buf.el, for error handling.
+ Renamed symbols:
+ (LaTeX-install-toolbar): New name for `latex-install-toolbar'.
+ (tex-bar-latex-buttons): New name for `tex-bar-latex-buttons'.
+ (tex-bar-img-filename): New name for `tex-bar-img-filename'.
+ (TeX-tool-bar): New name for `tex-tool-bar' group.
+ (TeX-bar-LaTeX-buttons): New name for `tex-bar-latex-buttons'.
+ (TeX-bar-LaTeX-all-button-alists): New name for
+ `tex-bar-latex-all-button-alists'.
+ (TeX-tool-bar-button-definitions): New name for
+ `tex-tool-bar-button-definitions'.
+ (LaTeX-symbols-toolbar-switch-contents): New name for
+ `latex-symbols-toolbar-switch-contents'.
+ (LaTeX-symbols-toolbar-contents): New name for
+ `latex-symbols-toolbar-contents'
+ (LaTeX-install-toolbar): New name for `latex-install-toolbar'.
+
+ Use separator only in Emacs, while buildin separator is not
+ implemented for XEmacs.
+ (TeX-bar-help-from-command-list): New function, that returns the
+ :help string for ITEM from TeX-command-list.
+ (TeX-bar-error-handling-switches): New variable.
+ (TeX-run-TeX [tex-buf.el]): before-adviced to reset error
+ internals.
+ (TeX-TeX-sentinel-check [tex-buf.el]): after-adviced to set error
+ internals when error happens.
+ (TeX-bar-LaTeX-button-alist): New button next-error, which is
+ resp. visible/active when error detected on Emacs/XEmacs. All
+ buttons received :help from TeX-command-list.
+ (TeX-bar-LaTeX-buttons): next-error is default, and file is no
+ longer default.
+
+2004-10-27 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * latex.el (LaTeX-auto-class-regexp-list): New variable.
+ Match "\DeclareRobustCommand\foo" besides
+ "\DeclareRobustCommand{\foo}" as well.
+ (LaTeX-auto-regexp-list): Use it.
+ (LaTeX-auto-cleanup): Do not consider key=value options. Check
+ for "Package" in addition to "package".
+
+2004-10-26 Reiner Steib <Reiner.Steib@gmx.de>
+
+ * tex.el (TeX-auto-generate-global): Only parse cls and sty files.
+
+2004-10-26 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * font-latex.el (font-latex-match-command-in-braces): Remove
+ references to non-existent variables.
+
+2004-10-26 Reiner Steib <Reiner.Steib@gmx.de>
+
+ * latex.el (LaTeX-math-list): Improve doc string and custom type.
+ (LaTeX-math-default): Added doc string.
+
+2004-10-26 Frank Kĵster <frank@kuesterei.ch>
+
+ * doc/quickstart.texi: Don't use so many nodes. Several fixes.
+
+2004-10-26 Reiner Steib <Reiner.Steib@gmx.de>
+
+ * Makefile.in (tar-ball): Don't include CVS stuff.
+
+ * doc/changes.texi: Mention experimental tool bar support.
+
+ * Makefile.in (tar-ball): Include tex-bar images.
+
+2004-10-25 David Kastrup <dak@gnu.org>
+
+ Toolbar patches by Reiner Steib
+ * Makefile.in (aucteximagedir): Define.
+ (AUCSRC, AUCELC): Add toolbar files.
+ (install-images): new target.
+
+ * tex-site.el.in (TeX-image-directory): Define.
+
+ * tex-bar.el (toolbar-x): require toolbar and latex at runtime.
+
+2004-10-24 Reiner Steib <Reiner.Steib@gmx.de>
+
+ * Makefile.in (DOCFILES): Added doc/quickstart.texi.
+
+2004-10-23 Miguel Frasson <frasson@math.leidenuniv.nl>
+
+ * toolbar-x.el:
+ (toolbarx-emacs-mount-popup-menu): Nil cannot be a menu key
+ anymore (fixed).
+ (toolbarx-test-image-type): Improve comments. Add support for
+ variables defined with `defimage', which are considered a simple
+ value for the :image property.
+ (toolbarx-emacs-refresh): Nil cannot be a toolbar (menu) key
+ anymore (fixed).
+ (toolbarx-install-toolbar): Improved documentation for the :image
+ property.
+
+2004-10-22 Miguel Frasson <frasson@math.leidenuniv.nl>
+
+ * tex-bar.el: Improve comments. Symbol-toolbar code moved to the
+ bottom of the file.
+ (tex-bar-latex-buttons): Improve comments. Add custom :type.
+ (tex-bar-latex-buttons): New command -- display a list of defined
+ buttons.
+ (tex-bar-available-meaning-alists): Removed (renamed).
+ (tex-bar-latex-all-button-alists): New name of
+ `tex-bar-available-meaning-alists'. Add custom :type.
+ (tex-bar-meaning-alist): Removed (renamed).
+ (tex-bar-latex-button-alist): New name of `tex-bar-meaning-alist'.
+ Add custom :type. Renamed `latex-symbols' button to
+ `latex-symbols-experimental'.
+
+ * toolbar-x.el: Improve comments.
+ (toolbarx-process-group-without-insert): Become autoloaded.
+ (toolbarx-process-group): Code cleanup.
+ (toolbarx-process-symbol): Code cleanup.
+ (toolbarx-default-toolbar-meaning-alist): Separator button label
+ renamed from `:sep' to `separator'.
+
+2004-10-22 Reiner Steib <Reiner.Steib@gmx.de>
+
+ * doc/auctex.texi (European): Adjust to change of
+ `LaTeX-italian-open-quote'.
+
+2004-10-20 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * aclocal.m4 (TEX_INPUT_DIRS): Do not use -e command line option
+ for grep.
+
+2004-10-18 Reiner Steib <Reiner.Steib@gmx.de>
+
+ * doc/quickstart.texi: Fix markup.
+
+2004-10-18 Frank Kĵster <frank@kuesterei.ch>
+
+ * doc/quickstart.texi: New chapter.
+
+ * doc/changes.texi: Mention `Quick Start'.
+
+ * doc/auctex.texi (Font Specifiers): Add \textrm and \textsf
+ (Commands): Add TeX-Omega-mode
+ (top): Print contents near at the beginning.
+
+ * doc/macros.texi: New macro @sans.
+
+ * doc/intro.texi (Introduction): Removed sections obsoleted by
+ `Quick Start' (Indentation and filling, Completion, Editing your
+ document, Outlines).
+
+2004-10-18 Reiner Steib <Reiner.Steib@gmx.de>
+
+ * doc/todo.texi, doc/install.texi, doc/history.texi,
+ doc/changes.texi, doc/auctex.texi: Remove optional arguments of
+ all @node commands.
+
+ * doc/Makefile.in (TEXIFILES): Added quickstart.texi.
+
+2004-10-18 Frank Kĵster <frank@kuesterei.ch>
+
+ * doc/Makefile.in (TEXIFILES): Add macros.texi.
+ (auctex.dvi, auctex.pdf): Depend on TEXIFILES.
+
+2004-10-18 Christian Schlauer <cschl@arcor.de>
+
+ * latex.el (LaTeX-env-figure, LaTeX-env-minipage): Point out to
+ the user that the placement (figure) and position (minipage)
+ specifiers are optional arguments.
+ (LaTeX-env-figure): Simplified. Do not insert the (optional)
+ placement specifier `LaTeX-float' into the buffer if the user
+ entered the empty string when asked for `float'.
+
+2004-10-18 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * font-latex.el (font-latex-make-keywords): Correctly evaluate
+ keywords when making `font-latex-match-*-keywords' defcustom.
+
+2004-10-17 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * doc/todo.texi (Bugs): Document some bugs related to font locking
+ and folding.
+
+ * latex.el (LaTeX-insert-environment): Partial rewrite. Stay in
+ comments. Do not comment uncommented following lines. Get rid of
+ redundant comment prefix.
+ (LaTeX-indent-calculate): Check for beginning of buffer.
+ (LaTeX-indent-calculate-last): Do not check for beginning of
+ buffer. Fixes wrong indentation of environments at the top of the
+ buffer.
+
+2004-10-16 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * tex-fold.el (TeX-fold-macro-nth-arg): Use
+ `TeX-find-closing-brace' instead of `forward-sexp'. Fixes
+ problems with comment characters in \url macros.
+
+ * latex.el (LaTeX-paragraph-commands): Use `regexp-opt' to
+ generate the regexp.
+ (LaTeX-common-initialization): Add support for "$$" to
+ `paragraph-start'.
+
+ * context.el (ConTeXt-mode-common-initialization): Add support for
+ "$$" to `paragraph-start'.
+
+ * font-latex.el: Remove change log.
+ (font-latex-make-keywords): New function.
+ (font-latex-match-variable-keywords-local)
+ (font-latex-match-variable-make)
+ (font-latex-match-variable-keywords-set)
+ (font-latex-match-variable-keywords, font-latex-match-variable)
+ (font-latex-match-reference-keywords-local)
+ (font-latex-match-reference-make)
+ (font-latex-match-reference-keywords-set)
+ (font-latex-match-reference-keywords)
+ (font-latex-match-reference)
+ (font-latex-match-function-keywords-local)
+ (font-latex-match-function-make)
+ (font-latex-match-function-keywords-set)
+ (font-latex-match-function-keywords, font-latex-match-function)
+ (font-latex-match-title-1-keywords-local)
+ (font-latex-match-title-1-make)
+ (font-latex-match-title-1-keywords-set)
+ (font-latex-match-title-1-keywords, font-latex-match-title-1)
+ (font-latex-match-title-2-keywords-local)
+ (font-latex-match-title-2-make)
+ (font-latex-match-title-2-keywords-set)
+ (font-latex-match-title-2-keywords, font-latex-match-title-2)
+ (font-latex-match-title-3-keywords-local)
+ (font-latex-match-title-3-make)
+ (font-latex-match-title-3-keywords-set)
+ (font-latex-match-title-3-keywords, font-latex-match-title-2)
+ (font-latex-match-title-4-keywords-local)
+ (font-latex-match-title-4-make)
+ (font-latex-match-title-4-keywords-set)
+ (font-latex-match-title-4-keywords, font-latex-match-title-2)
+ (font-latex-match-textual-keywords-local)
+ (font-latex-match-textual-make)
+ (font-latex-match-textual-keywords-set)
+ (font-latex-match-textual-keywords, font-latex-match-textual)
+ (font-latex-match-warning-keywords-local)
+ (font-latex-match-warning-make)
+ (font-latex-match-warning-keywords-set)
+ (font-latex-match-warning-keywords, font-latex-match-warning)
+ (font-latex-match-warning-function): Now generated by
+ `font-latex-make-keywords'.
+ (font-latex-match-bold-command-keywords-local)
+ (font-latex-match-bold-command-keywords)
+ (font-latex-match-bold-command)
+ (font-latex-match-italic-command-keywords-local)
+ (font-latex-match-italic-command-keywords)
+ (font-latex-match-italic-command)
+ (font-latex-match-math-command-keywords-local)
+ (font-latex-match-math-command-keywords)
+ (font-latex-match-math-command)
+ (font-latex-match-type-command-keywords-local)
+ (font-latex-match-type-command-keywords)
+ (font-latex-match-type-command)
+ (font-latex-match-bold-declaration-keywords-local)
+ (font-latex-match-bold-declaration-keywords)
+ (font-latex-match-bold-declaration)
+ (font-latex-match-italic-declaration-keywords-local)
+ (font-latex-match-italic-declaration-keywords)
+ (font-latex-match-italic-declaration)
+ (font-latex-match-type-declaration-keywords-local)
+ (font-latex-match-type-declaration-keywords)
+ (font-latex-match-type-declaration): New variables generated by
+ `font-latex-make-keywords'.
+ (font-latex-match-bold-command)
+ (font-latex-match-bold-command-make)
+ (font-latex-match-bold-command-keywords-set)
+ (font-latex-match-italic-command)
+ (font-latex-match-italic-command-make)
+ (font-latex-match-italic-command-keywords-set)
+ (font-latex-match-math-command)
+ (font-latex-match-math-command-make)
+ (font-latex-match-math-command-keywords-set)
+ (font-latex-match-type-command)
+ (font-latex-match-type-command-make)
+ (font-latex-match-type-command-keywords-set)
+ (font-latex-match-bold-declaration)
+ (font-latex-match-bold-declaration-make)
+ (font-latex-match-bold-declaration-keywords-set)
+ (font-latex-match-italic-declaration)
+ (font-latex-match-italic-declaration-make)
+ (font-latex-match-italic-declaration-keywords-set)
+ (font-latex-match-type-declaration)
+ (font-latex-match-type-declaration-make)
+ (font-latex-match-type-declaration-keywords-set): New functions
+ generated by `font-latex-make-keywords'.
+ (font-latex-keywords-1): Use new functions.
+ (font-latex-bold-command-keywords)
+ (font-latex-italic-command-keywords)
+ (font-latex-math-command-keywords)
+ (font-latex-type-command-keywords)
+ (font-latex-bold-declaration-keywords)
+ (font-latex-italic-declaration-keywords)
+ (font-latex-type-declaration-keywords): Remove.
+ (font-latex-match-command-with-arguments): New name for
+ `font-latex-match-command-outside-arguments'. Third argument now
+ is an integer instead of a binary. It specifies the number of
+ mandatory arguments of a LaTeX macro. Simplify the function.
+ (font-latex-match-font-cache)
+ (font-latex-match-font-outside-braces): Remove.
+ (font-latex-match-in-brace-cache): New name for
+ `font-latex-match-infont-cache'.
+ (font-latex-match-command-in-braces): New name for
+ `font-latex-match-font-inside-braces'. Generalize, so that it can
+ be used for any command and does not return a special, complex
+ match.
+ (font-latex-set-syntactic-keywords): Try to minimize false
+ fontifications of macros which may look like \foo{bar} and
+ \foo{bar{.
+ (font-latex-commented-outp): Do not consider comment characters in
+ verbatim content.
+
+2004-10-15 Reiner Steib <Reiner.Steib@gmx.de>
+
+ * latex.el (LaTeX-default-format, LaTeX-default-width)
+ (LaTeX-default-position): Fix doc strings.
+
+2004-10-14 Reiner Steib <Reiner.Steib@gmx.de>
+
+ * latex.el (LaTeX-default-width): Make it buffer local.
+ (LaTeX-env-minipage): Pick up new value of LaTeX-default-width.
+
+2004-10-14 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * tex-fold.el (TeX-fold-macro-spec-list): Add starred sectioning
+ commands.
+
+ * latex.el (LaTeX-fill-region-as-paragraph): Do not add linebreaks
+ after "$$ " at the end of paragraph filling.
+ (LaTeX-fill-move-to-break-point): Simplify. Add support for
+ $$...$$ type display math.
+
+ * style/jurabib.el: New file.
+
+ * Makefile.in (STYLESRC): Add jurabib.el.
+
+ * doc/changes.texi: Mention support for the jurabib package.
+
+2004-10-14 Miguel Frasson <frasson@math.leidenuniv.nl>
+
+ * auctb.el: Removed (renamed to tex-bar.el)
+
+ * tex-bar.el: Added; (new name of auctb.el). Added support for
+ buttons and customization.
+ (install-auctex-toolbar): removed.
+ (tex-tool-bar): New custom group, inside AUCTeX group.
+ (tex-tool-bar-button-definitions): New custom group, inside
+ tex-tool-bar group.
+ (tex-bar-latex-buttons): New custom variable: buttons in LaTeX
+ mode.
+ (tex-bar-meaning-alist): New custom variable.
+ (tex-bar-available-meaning-alists): New custom variable:
+ collection of variables for meaning-alists.
+ (latex-install-toolbar): New function: install the toolbar for
+ LaTeX mode.
+ (latex-symbols-toolbar-contents): added separator between symbol
+ switches and symbols.
+
+ * toolbarx.el: Removed (renamed to toolbar-x.el)
+
+ * toolbar-x.el: Added; (new name of toolbarx.el).
+ (toolbarx-default-toolbar-meaning-alist) Added `:sep' button.
+ (toolbarx-emacs-add-button): clean up.
+
+2004-10-13 Reiner Steib <Reiner.Steib@gmx.de>
+
+ * latex.el (LaTeX-default-width): New variable.
+ (LaTeX-env-minipage, LaTeX-env-tabular*): Use it.
+ (LaTeX-environment): Mention it in the doc string.
+ (LaTeX-env-label): Reindent.
+
+ * tex.el (TeX-delete-dups): Use our own (faster) version.
+
+ * latex.el (LaTeX-env-array, LaTeX-env-minipage)
+ (LaTeX-env-tabular*): Don't delete whitespace after inserting the
+ environment. Cursor position corresponds to proper indentation
+ now. From Christian Schlauer <cschl@arcor.de> with some
+ modifications.
+
+2004-10-12 Reiner Steib <Reiner.Steib@gmx.de>
+
+ * doc/auctex.texi (Completion): Mention `C-c RET' for
+ `TeX-insert-macro'. Fixed typo.
+ (Parsing Files): Fixed typo.
+ (European): Improved.
+ From Frank Kĵster <frank@kuesterei.ch>, slightly modified.
+
+ * latex.el (LaTeX-common-initialization): Use `LaTeX-env-tabular*'
+ for "tabular*".
+
+2004-10-12 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * tex-info.el (Texinfo-insert-node): Emacs 21.3 and earlier
+ expect a list of lists.
+
+ * tex.el: Cater for `delete-selection-mode'.
+ `eval-after-load' (used for support of desktop.el) in Emacs 21.3
+ and earlier expects a string, not a symbol.
+ (TeX-point-is-escaped): Remove. Implementation of
+ `TeX-escaped-p', which does the same, is slightly nicer.
+ (TeX-insert-dollar): Use `TeX-escaped-p'.
+
+2004-10-11 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * font-latex.el: Small clean-ups and rearrangements.
+ (font-latex-match-variable-keywords)
+ (font-latex-match-reference-keywords)
+ (font-latex-match-function-keywords)
+ (font-latex-match-title-1-keywords)
+ (font-latex-match-title-2-keywords)
+ (font-latex-match-title-3-keywords)
+ (font-latex-match-title-4-keywords)
+ (font-latex-match-textual-keywords)
+ (font-latex-match-warning-keywords): Remove redundant defvars.
+ (font-latex-match-variable, font-latex-match-reference)
+ (font-latex-match-function, font-latex-match-title-1)
+ (font-latex-match-title-2, font-latex-match-title-3)
+ (font-latex-match-title-4, font-latex-match-textual)
+ (font-latex-match-warning): Set default values and make
+ buffer-local.
+ (font-latex-match-reference): Add doc string.
+ (font-latex-set-syntactic-keywords): Do not set comment syntax.
+
+2004-10-10 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * style/booktabs.el, style/captcont.el, style/fancyref.el,
+ style/mdwlist.el, style/natbib.el, style/nicefrac.el,
+ style/paralist.el, style/scrbase.el, style/scrbook.el,
+ style/scrlttr2.el, style/scrpage2.el, style/scrreprt.el,
+ style/subfigure.el, style/units.el (TeX-add-style-hook): Do not
+ set up font-latex variables if font-latex is not loaded and
+ enabled.
+
+ * style/alltt.el, style/listings.el, style/url.el
+ (TeX-add-style-hook): Do not set up font-latex variables if
+ font-latex is not loaded and enabled. Reinitialize font-lock
+ defaults.
+
+ * font-latex.el: Do not autoload `texmathp'.
+ (font-latex-fontify-script): Doc fix.
+ (font-latex-script): Do without `texmathp'.
+ (font-latex-syntactic-keywords): Default to nil.
+ Make buffer-local.
+ (font-latex-setup): Set syntactic keywords.
+
+2004-10-08 Reiner Steib <Reiner.Steib@gmx.de>
+
+ * tex.el (TeX-update-style, TeX-parse-arguments)
+ (TeX-parse-argument, VirTeX-common-initialization)
+ (TeX-auto-parse-region): Simplify code by using `unless'.
+
+2004-10-08 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * tex.el (TeX-search-forward-unescaped)
+ (TeX-search-backward-unescaped, TeX-re-search-forward-unescaped)
+ (TeX-search-unescaped, TeX-escaped-p): New functions.
+ (TeX-find-macro-boundaries): Use `TeX-escaped-p'.
+
+ * latex.el (LaTeX-newline, LaTeX-current-indentation)
+ (LaTeX-fill-region-as-para-do, LaTeX-fill-move-to-break-point):
+ Use new search functions from tex.el.
+
+ * tex-fold.el (TeX-fold-make-overlay, TeX-fold-hide-item)
+ (TeX-fold-show-item): Respect `font-lock-mode'.
+
+ * style/amstex.el: Add copyright and license information.
+ ("amstex"): Do not load amsmath.el in `plain-tex-mode' or
+ `ams-tex-mode'.
+
+2004-10-06 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * texmathp.el (texmathp): Limit environment search with result of
+ macro search if possible.
+
+ * font-latex.el (font-latex-verb-like-commands): New variable.
+ (font-latex-set-syntactic-keywords): Use it.
+ (font-latex-match-command-outside-arguments)
+ (font-latex-match-font-outside-braces)
+ (font-latex-match-font-inside-braces): Check face at the beginning
+ of the match to make keyword fontification possible even if a
+ macro's argument was already fontified due to syntactic keyword
+ fontification.
+
+ * style/listings.el (TeX-add-style-hook): Suppress indentation in
+ lstlisting environments. Fontify both \lstinline|...| and
+ \lstinline{...}. Add lstlisting environment to
+ `LaTeX-verbatim-regexp'.
+
+ * style/url.el (TeX-add-style-hook): Treat arguments \url|...| and
+ \url{...} as verbatim.
+
+ * style/alltt.el (TeX-add-style-hook): Use buffer-local variable
+ `font-latex-verbatim-environments-local'.
+
+2004-10-05 Miguel Frasson <frasson@math.leidenuniv.nl>
+
+ * toolbarx.el (toolbarx-default-toolbar-meaning-alist): New
+ constant, providing a MEANING-ALIST for the insertion of the
+ default buttons and some extra ones in Emacs and XEmacs.
+
+2004-10-05 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * tex.el (TeX-output-view-style): Move more special items upwards.
+ Remove "a4" and "a5" styles.
+
+2004-10-04 Miguel Frasson <frasson@math.leidenuniv.nl>
+
+ * toolbarx.el:
+ (toolbarx-emacs-add-button)
+ (toolbarx-test-image-type): Add Emacs `image descriptor' as valid
+ image specification (Emacs only).
+ (toolbarx-emacs-add-button): "transp-strip" is new `tranparent
+ strip' image file.
+
+ * images/bibtex.xpm, images/dvipdf.xpm, images/dvips.xpm,
+ * images/error.xpm, images/exec.xpm, images/execbibtex.xpm,
+ * images/execdvips.xpm, images/execerror.xpm,
+ * images/execpdftex.xpm, images/exectex.xpm,
+ * images/execviewdvi.xpm, images/execviewpdf.xpm,
+ * images/execviewps.xpm, images/gv.xpm, images/jumpdvi.xpm,
+ * images/pdftex.xpm, images/pspdf.xpm, images/sep.xpm,
+ * images/tex.xpm, images/view.xpm, images/viewdvi.xpm,
+ * images/viewpdf.xpm, images/viewps.xpm: Add symbolic color
+ 'backgroundToolBarColor' to make pics work in (GNU/Linux) XEmacs
+
+2004-10-02 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * font-latex.el: Some clean-ups, rearrangements and performance
+ improvements.
+ (font-latex-verbatim-face): XEmacs does not like :inherit.
+ (font-latex-setup): Activate `font-latex-syntactic-face-function'.
+ (font-latex-faces-present-p): New function.
+ (font-latex-match-command-outside-arguments): Use it.
+ (font-latex-bold-command-keywords)
+ (font-latex-italic-command-keywords)
+ (font-latex-math-command-keywords)
+ (font-latex-type-command-keywords): New variables.
+ (font-latex-match-font-outside-braces): Use them.
+ Check for comment and verbatim faces.
+ (font-latex-bold-declaration-keywords)
+ (font-latex-italic-declaration-keywords)
+ (font-latex-type-declaration-keywords): New variables.
+ (font-latex-match-font-inside-braces): Use them.
+ Check for comment and verbatim faces.
+ (font-latex-script): Use `font-latex-faces-present-p'.
+
+ * doc/changes.texi: Add some new features and fixed bugs.
+
+2004-09-29 Miguel Frasson <frasson@math.leidenuniv.nl>
+
+ * images/bibtex.xpm, images/dvipdf.xpm, images/dvips.xpm,
+ * images/error.xpm, images/exec.xpm, images/execbibtex.xpm,
+ * images/execdvips.xpm, images/execerror.xpm,
+ * images/execpdftex.xpm, images/exectex.xpm,
+ * images/execviewdvi.xpm, images/execviewpdf.xpm,
+ * images/execviewps.xpm, images/gv.xpm, images/jumpdvi.xpm,
+ * images/pdftex.xpm, images/pspdf.xpm, images/sep.xpm,
+ * images/tex.xpm, images/view.xpm, images/viewdvi.xpm,
+ * images/viewpdf.xpm, images/viewps.xpm: Add designed images for
+ toolbar buttons.
+
+2004-09-29 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * font-latex.el (font-latex-do-multi-line): Add new option and use
+ it as default value.
+ (font-latex-use-cache): New variable.
+ (font-latex-match-command-outside-arguments)
+ (font-latex-match-font-outside-braces)
+ (font-latex-match-font-inside-braces): Use it.
+ (font-latex-check-cache): Do not check if cache is to be used.
+ (font-latex-setup): Set up multi-line font locking.
+
+2004-09-28 Miguel Frasson <frasson@math.leidenuniv.nl>
+
+ * toolbarx.el: Support for grouping `:insert' clauses in the 3
+ engines (performance improvement.) Better comments and
+ docstrings.
+ (toolbarx-process-symbol): Fix `nreverse'-missing bug.
+
+ * auctb.el: Fix Copyright notice (to FSF). Remove "AMS Special"
+ from ppup menu. Simplify. Remove garbage comments from end.
+ (auctb-img-filename): Remove "symb-pics/" from return. Add
+ "symb-pics/" explicitly where it is needed in the defconst's.
+
+ * images, images/dropdown.xpm, images/ltx-symb-turn-off.xpm,
+ * images/ltx-symb-turn-on.xpm: Add designed images for symbol
+ toolbar.
+
+2004-09-28 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * font-latex.el: Add change log entries and bump version.
+ (font-latex-find-matching-close): Fix typo in last commit.
+ (font-latex-match-font-inside-braces): Set actual numbers in the
+ match, not nil. Fixes errors with `font-lock-multiline' enabled.
+
+2004-09-27 David Kastrup <dak@gnu.org>
+
+ * font-latex.el (font-latex-find-matching-close): Simplify.
+
+ * latex.el (LaTeX-math-default): Use `W in math mode for the Omega
+ letter.
+
+ * tex.el (TeX-find-macro-start-helper): Simplify.
+ (TeX-find-macro-end-helper): Simplify.
+ (TeX-find-macro-end-helper): Stop if `forward-sexp' fails.
+
+ * doc/todo.texi (Wishlist): Macro spell checking mentioned.
+
+2004-09-26 Miguel Frasson <frasson@math.leidenuniv.nl>
+
+ * toolbarx.el: Add to cvs (first version).
+
+ * auctb.el: Add to cvs (first version); features only a symbol
+ toolbar.
+
+2004-09-24 Davide G. M. Salvetti <salve@debian.org>
+
+ * configure.in: Add `--(en|dis)able-build-dir-test' switch to
+ allow disabling `VALID_BUILD_DIR'.
+
+2004-09-22 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * tex.el (VirTeX-common-initialization): Revert last change.
+
+ * font-latex.el (font-latex-keywords-2): Use function
+ `font-latex-match-script' instead of regexp directly.
+ (font-latex-fontify-script): Doc fix.
+ (font-latex-match-script): Reintroduce.
+
+2004-09-19 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * latex.el (LaTeX-verbatim-macros): New variable.
+ (LaTeX-fill-move-to-break-point): Do not break inside of macros
+ defined in `LaTeX-verbatim-macros'.
+ (LaTeX-fill-newline): Do not trigger auto-fill.
+
+ * style/listings.el (TeX-add-style-hook): Add "lstinline" to
+ `LaTeX-verbatim-macros'.
+
+ * font-latex.el (font-latex-set-syntactic-keywords): "*" is not
+ allowed as a \verb delimiter.
+
+ * doc/todo.texi (Bugs): Another bug gone the way of the poodle.
+
+2004-09-18 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * latex.el (LaTeX-indent-line): Use XEmacs' functions to deal with
+ extents/overlays. Avoids dependence on overlay.el.
+ (LaTeX-fill-region-as-paragraph): Inhibit filling of "Local
+ Variables" section, if to be filled as a paragraph.
+
+ * style/url.el: Add some (low-level) symbols for completion and
+ fontification.
+ (TeX-arg-urlstyle): New function.
+
+ * doc/todo.texi (Bugs): Remove some obsolete bug descriptions.
+
+2004-09-17 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * font-latex.el (font-latex-verbatim-environments): Change from
+ defvar to defcustom.
+ (font-latex-verbatim-environments-local)
+ (font-latex-verbatim-macros)
+ (font-latex-verbatim-macros-local): New variables.
+ (font-latex-set-syntactic-keywords): Use them.
+
+ * style/listings.el: New file.
+
+ * Makefile.in (STYLESRC): Add it.
+
+ * doc/changes.texi: Mention support for listings.sty.
+
+2004-09-16 Reiner Steib <Reiner.Steib@gmx.de>
+
+ * doc/changes.texi: Mention built fixes.
+
+2004-09-16 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * font-latex.el (font-latex-commented-outp): Reimplement for
+ better performance.
+
+ * doc/changes.texi: Streamline documentation of performance
+ changes.
+
+ * tex.el (TeX-search-syntax-table): Make XEmacs happy.
+ (VirTeX-common-initialization): Append our stuff to the end of
+ `find-file-hooks'. Fixes problems with `auto-insert-mode'.
+
+2004-09-15 Jan-…ke Larsson <jalar@mai.liu.se>
+
+ * aclocal.m4 (EMACS_LISP): quote ${emacs}, Windows....
+
+2004-09-13 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * doc/changes.texi: Add changes from 11.51 up to now.
+
+ * style/url.el: New file.
+
+ * Makefile.in (STYLESRC): Add style/url.el.
+
+2004-09-12 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * font-latex.el (font-latex-keywords-1): Add highlighter for math
+ macros.
+ (font-latex-keywords-2): Use regexp for matching instead of
+ `font-latex-match-script'.
+ (font-latex-match-font-outside-braces): Add support for math, esp.
+ "\ensuremath".
+ (font-latex-match-script): Remove.
+ (font-latex-script): Fix check for present faces. Add `texmathp'
+ check in case there is no math face present.
+
+2004-09-09 Reiner Steib <Reiner.Steib@gmx.de>
+
+ * aclocal.m4 (texinputdirs): Strip leading "!!".
+
+2004-09-08 Reiner Steib <Reiner.Steib@gmx.de>
+
+ * latex.el (TeX-arg-input-file): Remove duplicates from the
+ completion list. Simplify code by using `unless'.
+
+2004-09-08 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * tex-info.el (Texinfo-insert-node): New function.
+ (Texinfo-mode-map): Use it.
+
+2004-09-07 Davide G. M. Salvetti <salve@debian.org>
+
+ * aclocal.m4 (EMACS_LISP): Sync echo output with real emacs
+ invocation.
+
+2004-09-07 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * tex-info.el (Texinfo-insert-environment): Add a space between
+ inserted "@end" and environment name in case of active region.
+
+2004-09-05 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * tex.el (TeX-search-syntax-table): New function and variable.
+ (TeX-find-balanced-brace): New function.
+ (TeX-find-closing-brace): Use `TeX-find-balanced-brace'.
+ (TeX-find-opening-brace): Ditto.
+ (TeX-find-macro-boundaries): Add `lower-bound' argument.
+ (TeX-find-macro-start-helper): Add `limit' argument.
+ (TeX-find-macro-start): Ditto.
+
+2004-08-31 Reiner Steib <Reiner.Steib@gmx.de>
+
+ * doc/changes.texi: Add `LaTeX-includegraphics-read-file'.
+ Mention use of `start' for MikTeX and fpTeX.
+
+ * latex.el (LaTeX-includegraphics-read-file): New variable.
+
+ * tex.el (TeX-delete-dups): New defun or defalias.
+
+ * style/graphicx.el (LaTeX-includegraphics-read-file-TeX): Renamed
+ from `LaTeX-includegraphics-read-file'. Remove duplicates using
+ `TeX-delete-dups'.
+ (LaTeX-includegraphics-read-file-relative): Insert relative
+ filename. From Dan Nicolaescu <dann@ics.uci.edu>.
+ (LaTeX-arg-includegraphics): Use funcall for image-file.
+
+2004-08-28 David Kastrup <dak@gnu.org>
+
+ * Version 11.53 released.
+
+2004-08-28 David Kastrup <dak@gnu.org>
+
+ * doc/tex-ref.tex: Bump version.
+
+ * configure.in: Bump version number.
+
+ * auctex.spec (Version): bump to 11.53.
+
+ * doc/auctex.texi: Bump version to 11.53.
+
+2004-08-28 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * Makefile.in (install-el): Fix typos.
+
+2004-08-27 Reiner Steib <Reiner.Steib@gmx.de>
+
+ * tex.el (TeX-kpathsea-format-alist): Added
+ LaTeX-includegraphics-extensions.
+ (TeX-search-files): Fix non-kpathsea case.
+
+ * style/graphicx.el (LaTeX-includegraphics-read-file): Use
+ completion based on TeX-search-files.
+
+2004-08-27 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * tex-fold.el (TeX-fold-preserve-comments): New variable.
+ (TeX-fold-buffer-type): Use it.
+
+ * font-latex.el (font-latex): Add to AUCTeX's customization group.
+ (font-latex-find-matching-close): Correctly recognize multiple
+ escape characters. Add missing paren.
+
+2004-08-26 Masayuki Ataka <ataka@milk.freemail.ne.jp>
+
+ * tex-site.el.in (japanese-slitex-mode): Removed obsolete autoload
+ of slitex.
+
+ * tex-jp.el (japanese-plain-tex-mode, japanese-latex-mode): Use
+ `TeX-defun' for getting version info into mode doc.
+
+2004-08-26 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * tex-mik.el: Use `start' instead of the respective executable for
+ PostScript, PDF and HTML files.
+
+ * tex-fptex.el: Ditto.
+
+2004-08-25 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * tex.el (TeX-find-macro-boundaries): Detect the start of any
+ macro, not just those consisting of [A-Za-z@].
+ Remove some superfluous `goto-char' calls.
+ (TeX-find-macro-start-helper): Reimplement once again. Original
+ patch by David Kastrup; slightly modified. Doc fix.
+ (TeX-find-macro-end-helper): Doc fix. Handle macros not
+ consisting of [A-Za-z@] correctly.
+ (TeX-find-opening-brace): Improve performance.
+
+2004-08-25 Reiner Steib <Reiner.Steib@gmx.de>
+
+ * tex.el: Autoload `TeX-process-set-variable' and `TeX-region-file'.
+
+2004-08-25 Jan-…ke Larsson <jalar@mai.liu.se>
+
+ * aclocal.m4: EMACS_PATH_LISPDIR: Expand lispdir if relative to
+ binary. Quote lispdir, and deal with exec_prefix, add missing
+ bracket.
+
+ * aclocal.m4: Fix xemacs<->emacs mistake, restore path searching
+ when --without-packagedir is given
+
+ * configure.in: enable --without-packagedir
+
+ * aclocal.m4: Barf if packagedir not found, don't bother with
+ load-path on xemacs' lispdir
+
+2004-08-25 David Kastrup <dak@gnu.org>
+
+ * tex-buf.el (TeX-command): Call `TeX-process-set-variable' with
+ correct options, so that the viewer command is next unless
+ overridden.
+
+ * tex.el (TeX-set-mode-name): Set `TeX-command-next' in the
+ buffers where they actually count.
+
+2004-08-24 David Kastrup <dak@gnu.org>
+
+ * latex.el (LaTeX-math-default): Correctly code "jmath" and
+ "Bbbk".
+
+2004-08-24 Reiner Steib <Reiner.Steib@gmx.de>
+
+ * doc/auctex.texi (Mathematics): Add `LaTeX-math-menu-unicode'.
+ (Changes): Refer to `history.texi' _after_ the newer changes.
+
+ * doc/changes.texi: Added versions 11.51-11.53.
+
+2004-08-24 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * tex.el (VirTeX-common-initialization): Use "%" instead of
+ `comment-start' for `comment-start-skip'.
+ (TeX-find-opening-brace): Do not use an inverse matcher but negate
+ the whole expression.
+ (TeX-find-macro-start-helper): Reimplement. Should be much faster
+ now.
+
+ * latex.el (LaTeX-current-environment): Use
+ `buffer-substring-no-properties'.
+ (LaTeX-indent-line): Revert last change. Only multi-line overlays
+ at the start of a line are affected by the XEmacs bug.
+
+ * tex-info.el (Texinfo-environment-list): Add "command" macro.
+
+2004-08-24 Reiner Steib <Reiner.Steib@gmx.de>
+
+ * doc/install.texi (Prerequisites): Add `easy-mmode.el' update for
+ XEmacs.
+
+2004-08-23 David Kastrup <dak@gnu.org>
+
+ * latex.el (LaTeX-indent-line): Get all overlays, not just one.
+ (LaTeX-math-default): Add iota.
+ (LaTeX-math-default): Use different symbol for triangle.
+ (LaTeX-math-default): Don't use `?\S-e' for `?E'.
+
+ * tex.el (TeX-match-buffer): Use `buffer-substring-no-properties'
+ (TeX-in-commented-line): Use `skip-chars-forward' and `forward-line'.
+ (TeX-in-line-comment): Use `forward-line'.
+ (TeX-brace-count-line): Use `skip-chars-forward'.
+
+ * RELEASE: Some updates.
+
+ * latex.el (LaTeX-section): Use an active region as title if available.
+ (LaTeX-section-title): Prompt with title if present. Should we
+ ask at all?
+ (LaTeX-math-list): Add Unicode code point.
+ (LaTeX-math-menu-unicode): New customization variable for unicode
+ in math menu. Only set in GTK Emacs for now. Does not work on
+ XEmacs. Use it for initializing the menus. Also prefix menu
+ points with backslash.
+
+ * Makefile.in (.PHONY): Declare a bunch of phony targets to
+ protect against users making files/directories with that name (in
+ particular "lisp").
+
+2004-08-22 David Kastrup <dak@gnu.org>
+
+ * style/italian.el ("italian"): Don't overwrite existing local
+ variable settings.
+
+ * style/ngerman.el ("ngerman"): Don't overwrite existing local
+ variable settings.
+
+ * style/german.el ("german"): Don't overwrite existing local
+ variable settings.
+
+ * tex.el (TeX-set-mode-name, TeX-PDF-mode): XEmacs needs two
+ arguments for `local-variable-p'.
+
+2004-08-20 David Kastrup <dak@gnu.org>
+
+ * tex.el (desktop): Save TeX-Omega-mode, too.
+
+ * Makefile.in (full-release): Source rpm is auctex, not
+ auctex-emacs.
+
+ * auctex.spec (Provides): Provide auctex as well to satisfy
+ preview-latex. create package emacs nevertheless.
+
+ * Version 11.52 released.
+
+2004-08-20 David Kastrup <dak@gnu.org>
+
+ * tex.el (AUCTeX-version): move to front and also eval when
+ compiling. Other version info moved, too.
+ (TeX-defun): Macro for putting version info into definition.
+ (plain-tex-mode): Use `TeX-defun'.
+ (ams-tex-mode): Use `TeX-defun'.
+
+ * tex-info.el (texinfo-mode): Use `TeX-defun' for getting version
+ info into mode doc.
+
+ * latex.el (latex-mode): Use `TeX-defun' for getting version info
+ into mode doc.
+
+ * context.el (context-mode): Use `TeX-defun' for getting version
+ info into mode doc.
+
+ * auctex.spec (BuildRoot): New naming scheme.
+
+ * RELEASE: Add `DESTDIR' blurb.
+
+2004-08-19 David Kastrup <dak@gnu.org>
+
+ * auctex.spec: Change `tex-site.el' to overwriting config file
+ mode.
+
+ * tex.el (plain-tex-mode): Move menu initializiation here instead
+ of `plain-TeX-common-initialization'. We don't want "TeX" menus
+ in `ConTeXt-mode' or `AmSTeX-mode'.
+ (plain-TeX-common-initialization): remove `easy-menu-add' here.
+ (TeX-common-menu-entries): Change "Customize" strategy again.
+ (plain-TeX-menu-entries): Move from `plain-TeX-menu'.
+ (plain-TeX-mode-menu): Use `plain-TeX-menu-entries'.
+ (AmSTeX-mode-map): Derive from `TeX-mode-map' not
+ `plain-TeX-mode-map'.
+ (AmSTeX-mode-menu): Define menu for `AmSTeX-mode'.
+ (ams-tex-mode): Add menus in proper order.
+
+ * tex-info.el (texinfo-mode): Swap order of `easy-menu-add'.
+
+ * latex.el (LaTeX-common-initialization): Swap order of
+ `easy-menu-add'.
+
+ * context.el (ConTeXt-mode-common-initialization): Swap order of
+ `easy-menu-add', move `major-mode' init to front.
+
+ * latex.el (LaTeX-common-initialization): Exchange order of
+ `easy-menu-add' to get better menu layout in XEmacs.
+
+2004-08-19 Reiner Steib <Reiner.Steib@gmx.de>
+
+ * auctex.spec (description): Overhauled.
+
+ * doc/install.texi: Markup fixes, see "(texinfo)command".
+
+ * doc/wininstall.texi: Ditto.
+
+2004-08-19 David Kastrup <dak@gnu.org>
+
+ * latex.el (LaTeX-mode-menu): Use `TeX-common-menu-entries'.
+
+ * tex-info.el (Texinfo-mode-menu): Use `TeX-common-menu-entries'.
+
+ * tex.el (ams-tex-mode): Add `plain-TeX-mode-menu' here. Doh.
+
+ * context.el (ConTeXt-mode-menu): Use `TeX-menu-with-help' instead
+ of `TeX-maybe-remove-help'.
+ (ConTeXt-mode-menu): Use `TeX-common-menu-entries'.
+
+ * tex.el (TeX-customization-menu): Save the customization menu
+ here when generated, so that we have it available in all modes.
+ (TeX-common-menu-entries): The common menu entries for TeX modes.
+ (plain-TeX-mode-menu): Use `TeX-common-menu-entries'.
+
+ * configure.in: export `localstatedir'.
+
+ * Makefile.in (localstatedir): import `localstatedir'.
+
+2004-08-19 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * doc/install.texi (Customizing): tex-site.el should be edited no
+ more. Customize should be used instead. Relevant variables are
+ determined during configuration now.
+ Mention build/installation commands for contributed files.
+
+2004-08-19 Reiner Steib <Reiner.Steib@gmx.de>
+
+ * auctex.spec: Fixes for SuSE.
+
+2004-08-19 David Kastrup <dak@gnu.org>
+
+ * aclocal.m4: `putative-existing-lisp-dir' is not a package
+ directory if `lisp' is not a path component. Normalize
+ whitespace.
+ Remove trailing slash from packagedir.
+
+ * tex-site.el.in (TeX-macro-global): Don't quote texinputdirs
+ additionally.
+
+ * aclocal.m4: Really remove trailing slashes/backslashes.
+ Don't expand `lispdir'.
+ (library): Surround `texinputdirs' with quotes. Output it
+ enclosed in parens.
+ (library): Let `autodir' refer unexpanded to `localstatedir'.
+ Add some quoting in patterns.
+
+ * doc/Makefile.in (DESTDIR): introduce `DESTDIR' into installation
+ targets.
+
+ * Makefile.in (DESTDIR): introduce `DESTDIR' into installation
+ targets.
+
+2004-08-18 David Kastrup <dak@gnu.org>
+
+ * tex-fold.el (TeX-fold-buffer-type): Don't use `end-of-buffer' as
+ it plays around with the current window point.
+
+ * Makefile.in (auctexdir, styledir): Use `${...}' for symmetry
+ with aclocal.m4
+
+ * aclocal.m4: Use `${...}' instead of `$(...)' everywhere.
+
+2004-08-18 Jan-…ke Larsson <jalar@mai.liu.se>
+
+ * aclocal.m4 (EMACS_LISPDIR): Output expanded lispdir
+
+2004-08-18 David Kastrup <dak@gnu.org>
+
+ * configure.in: Shell-quote autodir.
+
+ * RELEASE: Some minor changes.
+
+2004-08-18 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * RELEASE: Change version to 11.52. Replace old feature/bug
+ information.
+
+ * font-latex.el (font-latex-script): Disable raising of characters
+ for older Emacsen. Original patch by Reiner Steib.
+ Bump version and add change log entry.
+
+ * tex-fold.el (TeX-fold-unfolded-face): Make it look more blueish
+ on displays with 24bit color depth.
+ (TeX-fold-buffer-type): Use either a complemented character
+ alternative to be on the safe side or "\\_>" on Emacsen which
+ support it.
+
+2004-08-17 Reiner Steib <Reiner.Steib@gmx.de>
+
+ * texmathp.el (texmathp-tex-commands-default): Added \label.
+ Various checkdoc-related fixes.
+
+2004-08-17 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * tex-fold.el (TeX-fold-buffer-type): Use alternative way to
+ determine end of search pattern. Fixes problem with starred
+ macros.
+ Fix compile errors and add further match alternatives.
+ (TeX-fold-item): Recognize starred macros as well.
+ XEmacs does not know `match-string-no-properties'.
+ (TeX-fold-make-overlay): Do not alter `display-string' before
+ `face' is set.
+ (TeX-fold-hide-item): Get only the string part of
+ `display-string'.
+
+ * tex.el (TeX-fold-menu): Wrap value in `TeX-menu-with-help'.
+ Fixes XEmacs start-up error.
+
+ * tex-mik.el: Fix typo in comment.
+
+ * auctex.spec (Version): Change to 11.52.
+
+ * configure.in: Change AUCTeX version to 11.52.
+
+ * doc/tex-ref.tex: Change AUCTeX version to 11.52.
+
+ * doc/auctex.texi: Change AUCTeX version to 11.52.
+
+2004-08-17 David Kastrup <dak@gnu.org>
+
+ * Makefile.in (full-release): Fix a few things.
+
+ * Version 11.51 released.
+
+2004-08-17 David Kastrup <dak@gnu.org>
+
+ * aclocal.m4: Quote when expanding and remove trailing backslash,
+ too.
+ (library): Don't check for $PWD but for default-directory.
+
+2004-08-16 David Kastrup <dak@gnu.org>
+
+ * doc/wininstall.texi: move --prefix description up, since it
+ might be the only needed option.
+
+ * doc/tex-ref.tex (section{Font Selection}): Add italic
+ corrections and small-caps entry.
+
+ * tex.el (info): Add more prefixes to `Info-file-list-for-emacs'.
+
+ * tex-jp.el (japanese-TeX-command-list): Comment addition.
+
+ * RELEASE: Add availability and update release notes.
+
+ * Makefile.in (RPMROOT): New variable.
+ (tar-ball): Clean up `$(FTPDIR)' and `$(WWWDIR/doc)' before
+ installation.
+ (full-release): New target that does RPM building, signing and
+ other stuff for upload.
+ (patch): gzip the patch.
+
+ * auctex.spec: Add definition stuff for SuSE.
+ (BuildRoot): Don't specify infodir when it is not used.
+
+ * bib-cite.el: Fix refTeX link.
+
+2004-08-16 Jan-…ke Larsson <jalar@mai.liu.se>
+
+ * aclocal.m4 (EMACS_PROG_EMACS): Add "${prefix}/bin" for Windows users
+
+ * aclocal.m4 (EMACS_LISPDIR): Remove trailing slash from lispdir_expanded elisp string
+
+2004-08-16 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * aclocal.m4 (VALID_BUILD_DIR): New function.
+
+ * configure.in: Use it.
+ Change AUCTeX version to 11.51.
+
+ * doc/tex-ref.tex: Change AUCTeX version to 11.51.
+
+ * doc/auctex.texi: Change AUCTeX version to 11.51.
+
+ * auctex.spec (Version): Change to 11.51.
+
+ * Makefile.in (distclean): Get rid of autom4te.cache.
+
+2004-08-15 David Kastrup <dak@gnu.org>
+
+ * tex-info.el: Change Copyright notice to FSF
+
+ * tex-mik.el: Change Copyright notice to FSF
+
+ * tex.el: Change Copyright notice to FSF
+
+ * font-latex.el: Change Copyright notice to FSF
+
+ * multi-prompt.el: Change Copyright notice to FSF
+
+ * tex-buf.el: Change Copyright notice to FSF
+
+ * tex-site.el.in: Change Copyright notice to FSF
+
+ * style/scrartcl.el: Change Copyright notice to FSF
+
+ * style/scrbook.el: Change Copyright notice to FSF
+
+ * style/scrlttr2.el: Change Copyright notice to FSF
+
+ * style/scrreprt.el: Change Copyright notice to FSF
+
+ * latex.el: Change Copyright notice to FSF
+
+ * tex-info.el: Change Copyright notice to FSF
+
+ * tex-mik.el: Change Copyright notice to FSF
+
+ * tex.el: Change Copyright notice to FSF
+
+ * bib-cite.el: Change Copyright notice and URLs.
+
+2004-08-15 Dan Nicolaescu <dann@ics.uci.edu>
+
+ * latex.el (LaTeX-common-initialization): Don't set
+ `selective-display'.
+
+2004-08-15 David Kastrup <dak@gnu.org>
+
+ * doc/tex-ref.tex: Add Omega entry, rearrange.
+
+ * tex.el (TeX-print-command): Use `%(o?)'.
+ (TeX-command, TeX-Omega-command, LaTeX-command)
+ (LaTeX-Omega-command, ConTeXt-engine, ConTeXt-Omega-engine): New
+ customization strings to implement various expanders.
+ (TeX-command-list): Use them.
+ (LaTeX-command-style): Same here.
+ (TeX-printer-list, TeX-view-style, TeX-output-view-style): Use
+ `%(o?)'.
+ (TeX-expand-list): New entries.
+ (TeX-PDF-mode): Don't switch on in Omega mode.
+ (TeX-Omega-mode): New minor mode.
+ (tex-omega-mode): alias for it.
+ (TeX-mode-map): Keybinding for it.
+ (TeX-mode-specific-command-menu-entries): Add quick viewer entry.
+ (TeX-mode-specific-command-menu-entries): Add Omega toggle and
+ inactivate PDF when Omega is on.
+
+ * context.el (ConTeXt-expand-options): New function for generating
+ `texexec' options.
+
+2004-08-15 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * tex.el (TeX-fold-menu): New variable.
+ (plain-TeX-mode-menu): Use it.
+
+ * context.el (ConTeXt-mode-menu): Use `TeX-fold-menu'.
+
+ * latex.el (LaTeX-mode-menu): Use `TeX-fold-menu'.
+
+ * tex-info.el: Change every occurence of "TeXinfo" to "Texinfo".
+ (Texinfo-environment-list): Add some missing environments.
+ (Texinfo-find-env-end, Texinfo-find-env-start): New functions.
+ (Texinfo-mode-menu): Use `TeX-fold-menu'.
+
+ * tex-fold.el (TeX-fold-buffer-type): Support folding of
+ environments in texinfo-mode.
+ (TeX-fold-item): Ditto.
+ (TeX-fold-hide-item): Display an error string if the macro
+ argument cannot be found.
+
+2004-08-14 David Kastrup <dak@gnu.org>
+
+ * tex.el (TeX-command-list): rename `%(execmode)' to `%(execopts)'
+ since it has gotten quite fatter.
+ (TeX-expand-list): Implement `TeX-PDF-mode',
+ `TeX-interactive-mode', `TeX-source-specials-mode' for ConTeXt and
+ pass on `ConTeXt-current-interface'.
+
+2004-08-14 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * tex-mik.el: Change `TeX-source-specials-viewer-flags' to
+ `TeX-source-specials-view-position-flags' as the latter is now
+ used in tex.el.
+ Set `TeX-source-specials-view-editor-flags'.
+
+ * tex-fptex.el: Ditto.
+
+2004-08-13 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * doc/auctex.texi (top): We want the introduction to appear in
+ HTML output as well.
+
+2004-08-13 David Kastrup <dak@gnu.org>
+
+ * Version 11.50 released.
+
+2004-08-13 Jan-…ke Larsson <jalar@mai.liu.se>
+
+ * aclocal.m4: Add another alternative for lispdir
+
+2004-08-13 David Kastrup <dak@gnu.org>
+
+ * auctex.spec (Source0): Change source URL.
+
+ * Makefile.in (EXTRAFILES): Add RELEASE and auctex.spec.
+ (tar-ball): Don't create CHANGES-$(TAG), just CHANGES (as it is
+ always a longer history). But create RELEASE-$(TAG) instead:
+ that's release-specific.
+
+2004-08-13 David Kastrup <dak@gnu.org>
+
+ * doc/wininstall.texi: Changes to --prefix and --with-auto-dir,
+ partly by Christian Schlauer.
+ Add a few words of my own after suggestions.
+
+ * doc/changes.texi, style/units.el, style/nicefrac.el,
+ Makefile.in: Add contributed styles for units.sty and
+ nicefrac.sty from Christian Schlauer.
+
+2004-08-13 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * tex-fold.el (TeX-fold-unspec-use-name): New variable.
+ (TeX-fold-item): Use it.
+
+ * RELEASE: Add warning about `TeX-command-list'.
+
+ * doc/auctex.texi (Commands): Add "be".
+ (Folding): Document `TeX-fold-unspec-use-name'.
+
+2004-08-13 David Kastrup <dak@gnu.org>
+
+ * Makefile.in (tar-ball): copy only one auctex, add pdf manual and
+ reference card.
+
+ * doc/Makefile.in (dist): Add tex-ref, and both pdf and ps
+ (tex-ref.ps, auctex.ps): Use -Ppdf option for better quality.
+
+ * auctex.spec (BuildRoot): Add CHANGES.
+
+ * Makefile.in (release-commit): There are no Version: strings
+ anymore, don't replace them.
+
+ * tex-fptex.el: customize Queue and Print commands appropriately.
+
+ * tex-mik.el: customize Queue and Print commands appropriately.
+
+ * tex.el (TeX-expand-list): Call TeX-printer-query differently.
+ (TeX-command-menu-print, TeX-command-menu-printer-entry)
+ (TeX-command-menu-entry): Implement stuff differently, add "Other"
+ menu entry.
+
+ * tex-buf.el (TeX-printer-query): Change arguments here.
+ Reorganize, too.
+
+ * doc/auctex.texi (Commands): Fix a warning.
+
+ * tex-info.el (TeXinfo-mode-menu): Other quoting.
+ (texinfo-mode): Set `TeX-mode-p', `TeX-base-mode-name', call
+ `TeX-set-mode-name'.
+
+ * context.el (ConTeXt-mode-menu): Add the environments back to
+ folding.
+
+ * doc/auctex.texi, doc/faq.texi, doc/install.texi, doc/intro.texi,
+ doc/todo.texi: various changes and smaller typos corrected.
+
+ * doc/macros.texi fix problems with PDF links and indexing.
+
+ * configure.in: Check for pdftex, dvips, texi2html, texi2dvi,
+ texi2pdf.
+
+ * doc/Makefile.in (TEXI2HTML, TEXI2DVI, TEXI2PDF): new variables
+ entered by configure.
+ (auctex.dvi): Use texi2dvi.
+ (auctex.pdf): New target.
+ (clean): Remove PDF files.
+
+2004-08-12 David Kastrup <dak@gnu.org>
+
+ * tex-jp.el (japanese-TeX-command-list): Fixed this to new style.
+ (LaTeX-command-style): Same here. Hey, this should even make
+ preview-latex work mostly with Japanese files and PDFTeX.
+
+2004-08-12 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * tex-buf.el (TeX-view-extension): Remove.
+ (TeX-view-output-file): Use the function `TeX-output-extension'
+ instead of `TeX-view-extension'.
+ (TeX-run-set-command): Setting `TeX-view-extension' not necessary
+ anymore.
+
+ * tex.el (TeX-view-extension): Remove.
+
+2004-08-11 David Kastrup <dak@gnu.org>
+
+ * doc/wininstall.texi: explain about tex-mik.el and tex-fptex.el
+
+ * tex-fptex.el: require tex-site. Only set `TeX-lisp-directory'
+ if it has not been customized. Construct `TeX-command-list' from
+ its default value.
+
+ * tex-mik.el: same here.
+
+ * tex.el (TeX-mode-specific-command-menu): Tiny optimization.
+ (TeX-mode-specific-command-menu-entries): Make it legal for
+ `TeX-command-mode-menu-entry' to return nil for indicating no menu
+ entry at all (so that entries like "Print" or "Queue" may be
+ dynamically removed).
+
+2004-08-11 Reiner Steib <Reiner.Steib@gmx.de>
+
+ * doc/auctex.texi (Commands): Adjust references.
+ (Viewing): Make source specials a subsection. Adjust references.
+
+ * tex.el (TeX-source-specials-mode): Remove bogus :link. Refer to
+ viewing node of the manual.
+
+ * doc/changes.texi: Added references.
+
+ * doc/todo.texi (Wishlist): Markup fix.
+
+2004-08-11 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * doc/auctex.texi (Viewing): Add some information about forward
+ and inverse search.
+
+ * tex-mik.el: Synchronize `TeX-command-list' with tex.el.
+ Use gsview32 in `TeX-output-view-style'.
+
+ * tex-fptex.el: Synchronize `TeX-command-list' with tex.el.
+
+2004-08-11 David Kastrup <dak@gnu.org>
+
+ * doc/tex-ref.tex: Move papersize stuff to the front. Fiddle
+ somewhat with the sizes, too.
+
+ * auctex.spec (Version): Change version, web sites, some build
+ stuff (this is not yet finished).
+
+ * auc-old.el: remove.
+
+ * doc/Makefile.in (TEXIFILES): refer to auctex.texi instead of
+ auc-tex.texi. Change all dependent stuff, too.
+
+ * Makefile.in (DOCFILES): refer to doc/auctex.texi instead of
+ doc/auc-tex.texi
+
+ * doc/auc-tex.texi: renamed into doc/auctex.texi.
+
+ * doc/auc-tex.texi (Commands): Some rewording.
+
+ * doc/todo.texi (Wishlist): Some rearrangements and additions.
+
+2004-08-10 David Kastrup <dak@gnu.org>
+
+ * latex.el (LaTeX-math-default): Reorder and complete Greek
+ letters, use Babel transcription conventions for them.
+
+ * doc/tex-ref.tex: Add \sl definition.
+ (section{Miscellaneous}): Use \string~ for tilde.
+ (section{Greek Letters}): Reorder and complete Greek letters.
+
+ * tex.el (TeX-PDF-mode): Set `TeX-output-extension' too.
+ (ams-tex-mode): Move `TeX-set-mode-name' after running hooks.
+
+ * tex-ref.tex: merge math-ref.tex, update a few things, format
+ stuff.
+
+ * math-ref.tex: removed.
+
+ * doc/Makefile.in (all): Remove math-ref.tex
+
+ * Makefile.in (DOCFILES): Remove math-ref.tex
+
+2004-08-10 Reiner Steib <Reiner.Steib@gmx.de>
+
+ * RELEASE: Add `volunteers welcome'.
+
+ * doc/auc-tex.texi (Completion): TeX-insert-macro-default-style.
+
+ * tex.el (TeX-source-specials-mode): Add manual link.
+
+ * doc/auc-tex.texi (Commands): Say how to enable
+ TeX-source-specials-mode permanently.
+ (Viewing): Describe TeX-view.
+
+2004-08-10 David Kastrup <dak@gnu.org>
+
+ * tex.el (TeX-maybe-remove-help): convert Emacs' :visible into
+ XEmacs' :included.
+
+ * latex.el (LaTeX-mode-menu): Change bug submit menu entry.
+
+ * context.el (ConTeXt-mode-menu): Same.
+
+ * tex.el (plain-TeX-mode-menu): Same.
+
+ * tex-info.el (TeXinfo-mode-menu): Same.
+
+ * latex.el (LaTeX-mode-menu): A few changed help strings and other
+ small fry.
+
+ * context.el (ConTeXt-mode-menu): Rework menu, reorganize it, add
+ help strings.
+
+2004-08-10 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * tex-info.el (TeXinfo-mode-menu): Capitalize menu entries.
+
+ * context.el (ConTeXt-project-structure-menu-name)
+ (ConTeXt-section-block-menu-name, ConTeXt-mode-menu): Capitalize
+ menu entries.
+
+ * tex-info.el (TeXinfo-mode-menu): Add help strings.
+
+ * tex.el (TeX-command-list): Set a default value which will not
+ lead to an inactive menu entry.
+ (plain-TeX-mode-menu): Add some help strings.
+ Capitalize menu entries.
+ (tex-source-specials-mode): New alias for
+ `TeX-source-specials-mode'.
+
+ * latex.el (LaTeX-mode-menu): Rearrange and insert help strings.
+ Capitalize menu entries.
+
+ * tex-fold.el (tex-fold-mode): New alias for `TeX-fold-mode' used
+ in tex.el.
+ (TeX-fold-buffer-type): Support folding of environments in ConTeXt
+ mode as well.
+ (TeX-fold-item): Ditto.
+
+ * doc/auc-tex.texi (Commands): Change `TeX-source-specials' to
+ `TeX-source-specials-mode' where appropriate.
+
+ * RELEASE: Include contributors. (Hopefully I got everybody.)
+
+2004-08-10 David Kastrup <dak@gnu.org>
+
+ * tex.el (TeX-set-mode-name, TeX-source-specials-map)
+ (TeX-source-specials-mode, TeX-source-specials-expand-options)
+ (TeX-source-specials-view-expand-options): Rename
+ `TeX-source-specials' to `TeX-source-specials-mode'.
+ (TeX-PDF-mode): Make first arg optional (actually, not sure this
+ is a good idea).
+ (tex-pdf-mode): alias for `TeX-PDF-mode'.
+ (tex-interactive-mode): alias for `TeX-interactive-mode'
+ (tex-fold-mode): add autoload.
+ (TeX-mode-map, TeX-mode-specific-command-menu-entries): rename
+ `TeX-source-specials' to `TeX-source-specials-mode'.
+ (TeX-command-list): Add help strings.
+ (TeX-command-menu-entry): Splice help into command entries.
+ (TeX-mode-specific-command-menu-entries): Remove help in XEmacs.
+ (TeX-mode-specific-command-list): Save unnecessary copies and
+ conses.
+
+2004-08-09 David Kastrup <dak@gnu.org>
+
+ * tex.el (TeX-set-mode-name): Add LOCAL argument.
+ (TeX-source-specials, TeX-mode-set, TeX-global-PDF-mode)
+ (TeX-PDF-mode, TeX-interactive-mode): Use it.
+ (plain-tex-mode): Move `TeX-set-mode-name' to after running the
+ hooks.
+
+ * latex.el (latex-mode): Move setting the mode name to after
+ running the hooks.
+
+ * tex.el (TeX-maybe-remove-help): new function (noop on Emacs).
+ (TeX-menu-with-help): new macro (noop on Emacs).
+ (TeX-mode-specific-command-menu-entries): Add a lot of help strings.
+ (plain-TeX-mode-menu): Same here.
+
+ * latex.el (LaTeX-mode-menu): `:visible' is not known in XEmacs,
+ and I don't want to clutter the menu with "Convert 209 to 2e" when
+ not necessary.
+
+ * RELEASE (Requirements): some additions.
+ Incorporate some suggestions from Ralf.
+
+ * tex.el (TeX-set-mode-name): Actually use `reset' (patch by Ralf
+ Angeli).
+
+ * latex.el (LaTeX-common-initialization): There is no "LaTeX2e"
+ command anymore, so don't set it. Don't do anything on
+ "DVIoutput". doc fixes.
+
+ * doc/auc-tex.texi (Commands): Explain `TeX-command-buffer',
+ `TeX-pin-region', `TeX-PDF-mode', `TeX-interactive-mode',
+ `TeX-source-specials'.
+
+2004-08-09 Berend de Boer <berend@pobox.com>
+
+ * context.el (ConTeXt-current-environment): now properly skips
+ nested environments instead of always returning the last
+ environment just above the cursor.
+
+2004-08-08 David Kastrup <dak@gnu.org>
+
+ * tex-buf.el (TeX-run-set-command): Initialize
+ `TeX-output-extension' based on `TeX-PDF-mode'.
+
+ * tex.el (TeX-command-output-list): Don't look at pdf* commands.
+ Don't have default mode "dvi".
+ (VirTeX-common-initialization): Don't add to
+ desktop-locals-to-save locally: that's broken.
+ (desktop): Add stuff into appropriate variables for proper desktop
+ save/restore.
+ (TeX-mode-specific-command-menu-entries, plain-TeX-mode-menu):
+ Reorganize menus. Add font commands into plain TeX menu.
+
+ * tex-info.el (TeXinfo-mode-menu): Reorganize menu.
+
+ * latex.el (LaTeX-mode-menu): Reorganize menu.
+
+ * context.el (ConTeXt-mode-menu): Reorganize menu.
+
+2004-08-07 David Kastrup <dak@gnu.org>
+
+ * tex.el (TeX-base-mode-name): Make buffer-local (Doh).
+ (TeX-set-mode-name): Doc fix.
+
+ * doc/todo.texi (Mid-term Goals): Use @previewlatex macro.
+ (Mid-term Goals): New entries. Should some of them be moved to
+ wishlist? Remove a few fixed bugs.
+
+ * doc/macros.texi: move @ConTeXt macro out of info-only section.
+ Typeset @previewlatex differently.
+
+2004-08-06 Reiner Steib <Reiner.Steib@gmx.de>
+
+ * font-latex.el: Use "gnu.org" instead of "nongnu.org".
+
+ * bib-cite.el: Ditto. Use "AUCTeX", not "auc-tex".
+
+ * lpath.el: Use "AUCTeX".
+
+2004-08-05 Reiner Steib <Reiner.Steib@gmx.de>
+
+ * doc/macros.texi: New @ConTeXt macro.
+
+ * doc/auc-tex.texi, doc/changes.texi, doc/history.texi,
+ doc/todo.texi, doc/wininstall.texi: Use macros @AUCTeX, @ConTeXt,
+ @LaTeX everywhere.
+
+ * doc/auc-tex.texi (European): Mention Emacs 21. Fixed typo.
+
+ * doc/todo.texi: Help for documentation wanted.
+
+ * doc/changes.texi: Some additions: captcont and subfigure,
+ `LaTeX-includegraphics-options-alist', `LaTeX-default-position',
+ kpathsea based completion, `TeX-insert-macro-default-style'.
+ Refer to installation nodes (autoconf installation).
+
+ * tex.el (TeX-submit-bug-report): Added more explanations.
+
+ * latex.el (LaTeX-style-list): Improve doc-string.
+
+ * font-latex.el (font-latex-script-display): New variable. Make
+ raise of sub-/superscripts customizable.
+ (font-latex-unfontify-region, font-latex-script): Use it.
+
+2004-08-05 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * RELEASE: Improve sectioning and add some more information.
+
+2004-08-05 David Kastrup <dak@gnu.org>
+
+ * tex-site.el.in: don't require 'tex-mik on Windows, let the user
+ load it instead of tex-site if he wants to.
+
+ * tex.el (TeX-command-list): Add `%(PDFout)', `%(mode)' and
+ `%(execmode)'. Remove `TeX Interactive', `LaTeX Interactive' and
+ `ConTeXt Interactive'.
+ (LaTeX-command-style): Don't provide a default for a
+ `LaTeX-version' of "2": people can customize this if necessary
+ themselves, we would not know a sane default, anyway.
+ (TeX-expand-list): Support `TeX-DVI-via-PDFTeX', `%(PDFout)',
+ `%(mode)' and `%(execmode)'.
+ (TeX-set-mode-name): Add `reset' flag to indicate that the next
+ step should again be TeXing. Add "I" flag.
+ (TeX-source-specials): Call `TeX-set-mode-name' with `reset' flag.
+ (TeX-mode-set): Variable setter for TeX modes.
+ (TeX-PDF-mode): Make the default value a global mode.
+ (TeX-global-PDF-mode): Toggle function to change default
+ `TeX-PDF-mode'.
+ (TeX-PDF-mode): Remove local binding of `TeX-PDF-mode' in case of
+ conflicts. Call `TeX-set-mode-name' with `reset' flag.
+ (TeX-DVI-via-PDFTeX): New customizable variable.
+ (TeX-interactive-mode): New mode.
+ (TeX-mode-map): Add binding for `TeX-interactive-mode'.
+ (TeX-mode-specific-command-menu-entries): Add menu entry for it.
+
+ * tex-buf.el (TeX-command-expand): Document `%%'.
+ (TeX-run-TeX): If `TeX-interactive-mode' is set, run
+ `TeX-run-interactive' instead.
+
+2004-08-04 Reiner Steib <Reiner.Steib@gmx.de>
+
+ * font-latex.el (font-latex-fontify-script): Default to nil in
+ XEmacs.
+
+2004-08-04 David Kastrup <dak@gnu.org>
+
+ * tex.el (TeX-base-mode-name, TeX-set-mode-name): Move to front,
+ add catering for global mode switches.
+ (TeX-source-specials, global-TeX-PDF-mode): Use this.
+
+ * latex.el (LaTeX-common-initialization): Add style hook for
+ "ifpdf".
+
+2004-08-04 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * font-latex.el (font-latex-unfontify-region): New function.
+ (font-latex-setup): Use it.
+
+2004-08-04 David Kastrup <dak@gnu.org>
+
+ * tex-fptex.el (TeX-command-list): Remove PDFTeX calls.
+
+ * tex-mik.el (TeX-command-list): Remove PDFTeX calls.
+
+ * tex.el (TeX-command-list): Use %(PDF) where necessary, drop
+ PDFTeX entries.
+ (LaTeX-command-style): Add %(PDF) here.
+ (TeX-expand-list): Expand %(PDF).
+ (TeX-mode-p): Moved.
+ (TeX-PDF-mode, global-TeX-PDF-mode): New minor modes.
+ (TeX-PDF-mode-on, TeX-PDF-mode-off): Shortcuts for calling.
+ (TeX-PDF-mode-parsed): New variable.
+ (TeX-set-mode-name): Simplify.
+ (TeX-mode-map): Add C-c C-t C-p for TeX-PDF-mode.
+ (TeX-mode-specific-command-menu-entries): Add menu entry for it.
+
+ * latex.el (LaTeX-math-mode): Refresh modeline after generating
+ it, not before.
+ (LaTeX-common-initialization): Add style-hooks fo pdftex, dvips
+ and others.
+
+ * tex.el (TeX-view-style, TeX-output-view-style): Place dvi file
+ name last.
+
+2004-08-03 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * tex.el (TeX-source-specials): New customization group.
+ (TeX-source-specials, TeX-source-specials-tex-flags)
+ (TeX-source-specials-places)
+ (TeX-source-specials-view-start-server): Use it
+ (TeX-source-specials-view-position-flags)
+ (TeX-source-specials-view-gnuclient-flags)
+ (TeX-source-specials-view-emacsclient-flags): Change defvar to
+ defcustom.
+ (TeX-source-specials-view-editor-flags): New customize option.
+ (TeX-source-specials-view-expand-client): Return not only client
+ but options as well.
+ (TeX-source-specials-view-expand-options): Use
+ `TeX-source-specials-view-editor-flags'.
+
+2004-08-03 Reiner Steib <Reiner.Steib@gmx.de>
+
+ * tex.el (TeX-source-specials-places): Change comment.
+
+2004-08-03 David Kastrup <dak@gnu.org>
+
+ * latex.el (LaTeX-mode-menu): Add "Close Environment"
+
+ * tex.el (TeX-source-specials-view-gnuserv-p): replaces
+ `TeX-source-specials-view-guess-server'.
+ (TeX-source-specials-view-expand-client)
+ (TeX-source-specials-view-expand-options): Use this.
+
+2004-08-03 Reiner Steib <Reiner.Steib@gmx.de>
+
+ * style/alphanum.el, style/doc.el, style/jura.el,
+ style/ltx-base.el, style/ltxdoc.el: Added coding cookies.
+
+2004-08-03 David Kastrup <dak@gnu.org>
+
+ * RELEASE: Change Source Special description and a few other
+ things.
+
+2004-08-03 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * tex.el (TeX-expand-list): New %cS expander for
+ `TeX-source-specials-view-expand-client'.
+ (TeX-source-specials-view-start-server): New customize option.
+ (TeX-source-specials-view-start-server-asked): New variable.
+ (TeX-source-specials-view-position-flags): New name. Formerly
+ known as `TeX-source-specials-viewer-flags'.
+ (TeX-source-specials-view-gnuclient-flags): New variable.
+ (TeX-source-specials-view-emacsclient-flags): New variable.
+ (TeX-source-specials-view-expand-client): New function.
+ (TeX-source-specials-view-expand-options): Expand options for
+ inverse search as well.
+ Correct return value.
+ Use `TeX-source-specials-view-guess-server'.
+ (TeX-forward-comment-skip): Only consider consecutive comment
+ characters when comparing the comment prefix.
+ (TeX-source-specials-view-guess-server): New function.
+
+ * doc/changes.texi: Avoid email addresses.
+
+ * doc/tex-ref.tex: Update to 11.50.
+
+2004-08-02 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * doc/changes.texi: Advertise support for toggling source
+ specials. Mention macro completion in docTeX mode and fix for
+ filling in XEmacs with preview-latex and activated previews.
+
+2004-08-01 David Kastrup <dak@gnu.org>
+
+ * doc/wininstall.texi: Remove info about manual installation.
+ Explain about preferred path syntax.
+
+ * doc/install.texi: Move info dor INSTALL.Windows.
+
+2004-08-01 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * tex-fptex.el: Do not overwrite customized variables.
+
+ * tex-mik.el: Ditto.
+
+ * Makefile.in (STYLESRC): Add new style files.
+
+ * aclocal.m4: Synchronize with preview-latex.
+
+ * tex-fold.el (TeX-fold-macro-spec-list): Add references to
+ default.
+ (TeX-fold-buffer-type): Additionally pass display string
+ specification and type to `TeX-fold-make-overlay'
+ (TeX-fold-item): Ditto.
+ (TeX-fold-make-overlay): Accept display string specification and
+ type as arguments and set them accordingly in the overlay.
+ Do not signal overfullness if the dispay string contains a
+ linebreak.
+ (TeX-fold-macro-nth-arg): Make `macro-start' mandatory so that
+ macro boundaries may be determined even if point is not inside of
+ a macro.
+ (TeX-fold-hide-item): Recompute display string on closure if
+ display string specification is an integer.
+
+ * style/alphanum.el: Add header and reformat.
+
+ * style/jura.el: Add header.
+
+ * style/doc.el: New file. Contributed by Frank Kĵster
+ <frank@kuesterei.ch>.
+ (TeX-add-style-hook): Remove bogus `LaTeX-add-index-entries' call.
+
+ * style/ltx-base.el: New file. Contributed by Frank Kĵster
+ <frank@kuesterei.ch>.
+
+ * style/ltxdoc.el: Ditto.
+
+2004-07-31 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * font-latex.el: Autoload `texmathp'.
+ (font-latex-keywords-2): Add `font-latex-match-script'.
+ (font-latex-script-keywords): Remove.
+ (font-latex-fontify-script): Remove :set function.
+ (font-latex-match-script): New function.
+
+ * tex-mik.el (TeX-view-style): Remove unconditional source
+ specials option for yap.
+ (TeX-output-view-style): Set it.
+ (TeX-source-specials-viewer-flags): Ditto.
+
+ * tex-fptex.el (TeX-view-style): Adapt options to WinDVI
+ documentation.
+ (TeX-output-view-style): Set it.
+ (TeX-source-specials-viewer-flags): Ditto.
+
+2004-07-30 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * Makefile.in (tar-ball): Remove warning which often confuses
+ users.
+
+ * aclocal.m4 (EMACS_MAJOR_VERSION): New test and variable.
+
+ * configure.in: Fix AUCTeX version.
+
+ * tex-site.el.in: At least (X)Emacs 21 is required.
+
+ * tex.el: Ditto.
+
+ * doc/Makefile.in (install): Remove warning which often confuses
+ users.
+
+ * doc/auc-tex.texi: Fix version numbers.
+ (Changes): New name. Formerly known as "History".
+ (ToDo): New heading.
+
+ * doc/changes.texi: Add heading for `rawfile'. Change `section'
+ to `heading'.
+
+ * doc/faq.texi (Frequently Asked Questions About AUCTeX): At
+ least (X)Emacs 21 is needed.
+
+ * doc/install.texi (Prerequisites): Ditto.
+
+2004-07-29 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * tex-fold.el (TeX-fold-macro-spec-list): Extend default. Add
+ specification for argument number.
+ (TeX-fold-env-spec-list): Ditto.
+ (TeX-fold-folded-face): Renamed from
+ `TeX-fold-display-string-face'.
+ (TeX-fold-unfolded-face): New face and variable.
+ (TeX-fold-buffer-type): Move through buffer from bottom to top in
+ a single run in order to allow easier prioritization of nested
+ overlays.
+ (TeX-fold-item): Compute display string via
+ `TeX-fold-macr-nth-arg'.
+ (TeX-fold-make-overlay): Consider the length of the display string
+ as well when judging if a line is overfull. Let priority be
+ computed by `TeX-fold-macr-nth-arg'. Do not call
+ `TeX-fold-hide-item'.
+ (TeX-fold-macro-nth-arg): New function.
+ (TeX-fold-priority-step): New variable.
+ (TeX-fold-prioritize): New function.
+ (TeX-fold-hide-item): Set mouse-face.
+ (TeX-fold-show-item): Ditto. Do not set face twice.
+ (TeX-fold-post-command): Recognize mouse clicks as well.
+
+ * tex.el (TeX-find-macro-boundaries): New function.
+ (TeX-find-macro-end-helper): Find macro arguments with a preceding
+ linebreak as well.
+
+ * doc/auc-tex.texi (Folding): Document new functionality.
+
+ * latex.el (LaTeX-fill-region): Improve performance by avoiding
+ unnecessary calls to `LaTeX-forward-paragraph'.
+
+ * font-latex.el (font-latex-fontify-script): Doc fix.
+
+2004-07-23 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * tex-fold.el (TeX-fold-make-overlay): New function.
+ Remove superfluous `let'.
+ (TeX-fold-buffer-type, TeX-fold-item): Use it.
+ (TeX-fold-mode): Call `TeX-fold-clearout-buffer' after clearing
+ `post-command-hook'.
+
+2004-07-22 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * latex.el (LaTeX-indent-line): Temporarily make invisible
+ overlays visible in XEmacs.
+
+ * tex.el (TeX-comment-region): Use a real function instead of an
+ `fset' and temporarily change `comment-start' for certain XEmacs
+ releases.
+ (TeX-comment-or-uncomment-region): Use it.
+ (TeX-comment-or-uncomment-paragraph): Ditto.
+
+ * doc/changes.texi: Remove warning about TeX-fold not working
+ correctly on XEmacs.
+
+2004-07-21 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * tex-fold.el (TeX-fold-display-string-face): Remove `min-colors'
+ spec as XEmacs does not like them.
+ (TeX-fold-hide-item): Set face on the glyph and not on the
+ overlay/extent in XEmacs.
+ (TeX-fold-post-command): Do not check detached extents in XEmacs.
+
+ * context.el (ConTeXt-mode-menu): Check if variable is defined.
+ Necessary for XEmacs compatibility.
+ (ConTeXt-menu-update): Fix creation of environment menus.
+
+ * latex.el (LaTeX-mode-menu): Check if variable is defined.
+ Necessary for XEmacs compatibility.
+
+ * tex-info.el (TeXinfo-mode-menu): Ditto.
+
+2004-07-20 Reiner Steib <Reiner.Steib@gmx.de>
+
+ * font-latex.el (font-latex-set-title-face): New function.
+ (font-latex-title-fontity): Use it to make customization work
+ during a session.
+ (font-latex-title-*-face): Use it to simplify the initialization.
+
+2004-07-20 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * tex-fold.el (TeX-fold-macro-spec-list): New name for
+ `TeX-fold-spec-list'. More unobtrusive default.
+ (TeX-fold-env-spec-list)
+ (TeX-fold-unspec-macro-display-string)
+ (TeX-fold-unspec-env-display-string): New variables.
+ (TeX-fold-keymap): New key bindings which are more mnemonic and
+ orient at preview-latex's bindings instead of outline.el.
+ (TeX-fold-buffer): Transfer contents to `TeX-fold-buffer-type'
+ which can be used for both macros and environments.
+ (TeX-fold-buffer-type): New function.
+ (TeX-fold-macro): Transfer contents to `TeX-fold-item' which can
+ be used for both macros and environments.
+ (TeX-fold-env): New function.
+ (TeX-fold-item): New function. Prioritize overlays.
+ (TeX-fold-clearout-item): New name for `TeX-fold-clearout-macro'.
+ (TeX-fold-hide-item, TeX-fold-show-item): Adapt doc string.
+
+ * latex.el (LaTeX-hide-environment): Remove. Functionality is now
+ provided by TeX-fold.
+ (LaTeX-show-environment): Ditto.
+ (LaTeX-mode-map): Remove key bindings for `LaTeX-hide-environment'
+ and `LaTeX-show-environment'.
+ (LaTeX-mode-menu): Adapt key bindings for folding. Remove menu
+ entries for `LaTeX-hide-environment' and `LaTeX-show-environment'.
+
+ * context.el (ConTeXt-mode-menu): Adapt key bindings for folding.
+
+ * tex-info.el (TeXinfo-mode-menu): Ditto.
+
+ * doc/auc-tex.texi (Folding): Document new and changed functions
+ and variables related to folding environments (new) and macros.
+
+ * doc/changes.texi: Advertise support for folding environments.
+
+2004-07-18 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * tex.el (TeX-source-specials): Do not set a lighter in
+ `minor-mode-alist' but use `TeX-set-mode-name' instead.
+ (TeX-base-mode-name): New variable.
+ (TeX-set-mode-name): New function.
+ (plain-tex-mode): Set `TeX-base-mode-name' instead of `mode-name'
+ and use `TeX-set-mode-name'.
+ (ams-tex-mode): Ditto.
+
+ * context-en.el (context-en-mode): Ditto.
+
+ * context-nl.el (context-nl-mode): Ditto.
+
+ * latex.el: Do not add a lighter for `LaTeX-math-mode' in
+ `minor-mode-alist'.
+ (LaTeX-math-mode): Use `TeX-set-mode-name'.
+ (latex-mode): Set `TeX-base-mode-name' instead of `mode-name' and
+ use `TeX-set-mode-name'.
+
+ * tex-fold.el (TeX-fold-mode): Do not set a lighter in
+ `minor-mode-alist' but use `TeX-set-mode-name' instead.
+
+2004-07-17 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * tex.el (TeX-find-macro-start): Fix handling of nested macros.
+ (TeX-find-macro-start-helper): New function.
+ (TeX-find-macro-end-helper): New function.
+
+ * tex-info.el (TeXinfo-mode-menu): Fix extension of customize
+ menu.
+
+ * latex.el (LaTeX-env-figure): Prevent superfluous blank lines and
+ give RefTeX a chance to generate a label in environments with a
+ bottom caption. Patch by Christian Schlauer <cs-usenet@arcor.de>.
+ (LaTeX-style-list): Add entry for beamer class.
+
+ * context.el (ConTeXt-mode-menu): Add "Show/Hide" submenu.
+
+ * doc/auc-tex.texi (Folding): Document key binding for
+ `TeX-fold-mode'.
+
+2004-07-14 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * tex-info.el (TeXinfo-mode-map): Inherit from `TeX-mode-map'.
+ (texinfo-mode): Enable TeX-master functionality.
+
+ * tex.el (TeX-one-master): Include .texi files.
+ (TeX-add-local-master): Use "@c " as comment prefix in Texinfo
+ mode.
+
+ * tex-fold.el (TeX-fold): Move customization group from `LaTeX' to
+ `AUCTeX'.
+
+ * doc/changes.texi: Advertise folding functionality.
+
+2004-07-12 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * tex-fold.el (TeX-fold-display-string-face): Cater for display
+ devices with few colors.
+ (TeX-fold-keymap): Add key bindings for showing and hiding
+ individual macros.
+ (TeX-fold-macro): New function.
+ (TeX-fold-clearout-buffer): New name for
+ `TeX-fold-remove-all-overlays'.
+ (TeX-fold-clearout-macro): New function.
+ (TeX-fold-remove-overlays): New function.
+
+ * latex.el (LaTeX-mode-menu): Add entries for showing and hiding
+ individual macros.
+
+ * tex-info.el (TeXinfo-mode-menu): Update and rearrange. Add
+ entries for "Show/Hide" functionality.
+
+ * doc/auc-tex.texi (Show/Hide): New section.
+ (Folding): New subsection.
+ (Outline): Moved under "Show/Hide".
+
+2004-07-10 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * tex.el: Do not require tex-fold.el.
+ Autoload `TeX-fold-mode'.
+ (TeX-mode-map): Add keybinding for `TeX-fold-mode'.
+
+ * tex-fold.el: Do not add keybinding for `TeX-fold-mode' with
+ `TeX-mode-hook'.
+ (TeX-fold-post-command): Do not hijack other overlays.
+
+2004-07-09 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * tex-fold.el: New file.
+
+ * Makefile.in (AUCSRC): Add tex-fold.el.
+ (AUCELC): Add tex-fold.elc.
+
+ * latex.el (LaTeX-find-macro-start): Move to tex.el and rename to
+ `TeX-find-macro-start'.
+ (LaTeX-find-macro-end): Analogous.
+ (LaTeX-forward-paragraph): Change call to `LaTeX-find-macro-*' to
+ `TeX-find-macro-*'.
+ (LaTeX-backward-paragraph): Ditto.
+ (LaTeX-mode-menu): Add submenu "Show/Hide". Add entries for
+ relevant functions in tex-fold.el and add the show/hide
+ environment entries which were in "Formatting and Marking" before.
+
+ * tex.el: Require tex-fold.el.
+ (TeX-find-macro-start): New function. Formerly known as
+ `LaTeX-find-macro-start' in latex.el.
+ (TeX-find-macro-end): New function. Formerly known as
+ `LaTeX-find-macro-end' in latex.el.
+
+2004-07-08 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * texmathp.el (texmathp-match-environment): Let environments be
+ added more than once.
+
+ * font-latex.el (font-latex-superscript-face)
+ (font-latex-subscript-face): New faces.
+ (font-latex-script-keywords): New constant.
+ (font-latex-fontify-script): New customize option.
+ (font-latex-script): New function.
+
+2004-07-02 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * tex-buf.el (TeX-view): Inform the user if the output file is
+ not present.
+
+ * tex.el (TeX-forward-comment-skip): Fix `count' functionality.
+ Stop as well at places where the prefix of commented lines
+ changes. Simplify and improve efficiency by saving current
+ prefix before while-loop starts. Adapt documentation string.
+ (TeX-backward-comment-skip): Adapt documentation string.
+
+2004-06-24 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * context.el (ConTeXt-environment-menu-name): Make name distinct
+ from `LaTeX-environment-menu-name'.
+ (ConTeXt-environment-modify-menu-name): Analogous.
+
+2004-06-17 Reiner Steib <Reiner.Steib@gmx.de>
+
+ * Makefile.in (tar-ball): Change permissions of auctex-$(TAG).
+
+ * tex.el (TeX-source-specials-expand-view-options): New function.
+ (TeX-expand-list): Added new specifier (%dS) for
+ `TeX-source-specials-expand-view-options'.
+ (TeX-view-style, TeX-output-view-style): Add %dS for source
+ specials in all xdvi calls.
+ (TeX-expand-list): Remove useless lambda.
+
+ * tex-buf.el (TeX-output-style-check): Remove addition of source
+ specials.
+
+2004-06-17 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * tex.el (TeX-one-master): Add "dtx" extension.
+ (TeX-add-local-master): Insert \iffalse...\fi in docTeX mode.
+ (TeX-file-extensions): Add "dtx" extension.
+ (docTeX-default-extension): New variable.
+
+ * latex.el (LaTeX-find-macro-start): Use next whitespace if the
+ end of an opened macro cannot be determined.
+ (doctex-mode): Set `TeX-default-extension' to
+ `docTeX-default-extension'.
+
+ * doc/changes.texi: Add information about `TeX-newline-function'.
+
+2004-06-16 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * style/mdwlist.el (TeX-add-style-hook): Change variables only
+ locally.
+
+ * latex.el (LaTeX-default-verb-delimiter): New variable.
+ (TeX-arg-verb): Use it.
+
+2004-06-15 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * style/mdwlist.el: New header.
+ (TeX-add-style-hook): Add support for \makecompactlist, \suspend,
+ and \resume.
+
+2004-06-14 David Kastrup <dak@gnu.org>
+
+ * tex-buf.el (TeX-pin-region): Don't balk at unpinning if there
+ is no pinned region.
+
+ * tex.el (TeX-mode-specific-command-menu-entries): Be more
+ meticulous about when the pin-region menu entry can be used.
+
+2004-06-13 David Kastrup <dak@gnu.org>
+
+ * tex.el (TeX-pin-region): Add autoload form.
+ (TeX-mode-map): Add keybinding for TeX-pin-region.
+ (TeX-mode-specific-command-menu-entries): Add menu entry for it.
+
+ * tex-buf.el (TeX-command-master, TeX-command-region)
+ (TeX-command-buffer): Add `override-confirm' prefix argument.
+ (TeX-pin-region): New function to replace previous interactive
+ prefix for TeX-command-region. Change TeX-region semantics
+ accordingly.
+
+2004-06-13 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * doc/faq.texi: New file.
+
+ * doc/auc-tex.texi (Filling): Add information about activating
+ `auto-fill-mode'.
+ (FAQ): Add node.
+
+ * doc/todo.texi (Bugs): Add bug when fontifying unmatched math
+ toggles in verbatim-like environments.
+
+ * doc/.cvsignore: Add `FAQ'.
+
+ * doc/Makefile.in (TEXIFILES): Add `faq.texi'.
+ (FAQ): New target.
+ (dist): Add `FAQ'.
+ (clean): Ditto.
+
+ * .cvsignore: Add `FAQ'.
+
+ * Makefile.in (DOCFILES): Add `doc/faq.texi'.
+ (EXTRAFILES): Remove `PROBLEMS'.
+ (tar-ball): Add `FAQ'.
+
+ * autogen.sh: Activate creation of `FAQ' from `doc/faq.texi'.
+
+2004-06-11 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * tex-fptex.el (TeX-command-list): Use correct expander for
+ "View PDF".
+
+ * latex.el (LaTeX-fill-region-as-para-do): Fix removal of trailing
+ whitespace.
+ (LaTeX-fill-move-to-break-point): Prevent infinite loop in
+ commented regions.
+ (LaTeX-fill-newline): Fix compatibility with XEmacs, i.e. use
+ code related to text properties only for Emacs and reintroduce
+ insertion of a potential fill prefix for XEmacs.
+
+2004-06-10 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * doc/changes.texi: Add some news regarding upcoming release.
+ Try to match former news with actual releases.
+
+2004-06-07 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * tex.el (TeX-comment-padding-string): New function.
+
+ * latex.el (LaTeX-newline): Do something sensible if point is
+ at the start of a commented line or inside of one and right at
+ the start of another one in the same line.
+ (LaTeX-insert-environment): Fix insertion of environments if
+ point is inside or right before a commented line.
+ (LaTeX-indent-line): Use `TeX-comment-padding-string'.
+
+2004-06-05 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * font-latex.el (font-latex-make-title-faces): New function.
+ (font-latex-title-1-face, font-latex-title-2-face)
+ (font-latex-title-3-face): Now generated by
+ `font-latex-make-title-faces' and compatible with XEmacs.
+ (font-latex-title-4-face): Add face specification for XEmacs.
+
+2004-06-04 David Kastrup <dak@gnu.org>
+
+ * tex-buf.el (TeX-view-mouse): New function.
+
+ * tex.el (TeX-source-specials-map): Outcomment madcap mouse
+ bindings.
+ (minor-mode-map-alist): Remove TeX-source-specials manually, as I
+ can't figure out how to not get it placed there by
+ define-minor-mode.
+ (TeX-split-string): Correct docs. Simplify.
+ (TeX-parse-path): Fix pattern.
+
+2004-06-03 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * tex.el (TeX-newline): New function.
+ (TeX-mode-map): Use it.
+
+ * latex.el: Various checkdoc-related fixes.
+ (LaTeX-forward-paragraph): Check for and cope with multi-line
+ paragraph commands not only those with a single line.
+ Check for LaTeX macro at the end of a paragraph command.
+ (LaTeX-backward-paragraph): Check for and cope with multi-line
+ paragraph commands not only those with a single line.
+ (LaTeX-paragraph-command-p): Remove.
+ (LaTeX-find-macro-start): Find macro start even if point is
+ already at the start.
+
+ * doc/auc-tex.texi (Marking and formatting): Split into
+ `Indenting' and `Filling'.
+ (Indenting): New section.
+ (Filling): New section.
+
+ * doc/intro.texi: Fix key representations and reference to
+ `fill-paragraph'.
+
+2004-06-02 David Kastrup <dak@gnu.org>
+
+ * tex-buf.el (TeX-format-filter): Don't use split-string which
+ appears to trigger an XEmacs bug.
+
+2004-06-02 Reiner Steib <Reiner.Steib@gmx.de>
+
+ * tex.el (TeX-insert-macro-default-style): Fixed typo in doc-string.
+
+2004-06-01 Reiner Steib <Reiner.Steib@gmx.de>
+
+ * tex.el (TeX-no-braces-modes): Removed. Revert unintened
+ addition from 2004-04-19 commit.
+ (TeX-insert-macro-default-style): New variable.
+ (TeX-parse-arguments): Use it.
+ (TeX-insert-macro): Document dependence on
+ `TeX-insert-macro-default-style' and prefix. Fix typo in comment.
+
+2004-05-29 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * tex.el (TeX-source-specials-map): Fix key binding for XEmacs.
+
+2004-05-27 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * aclocal.m4 (TEX_INPUT_DIRS): Quote regexps with square brackets.
+
+ * tex.el (TeX-newline-function): Rename. Formerly known as
+ `TeX-newline'.
+ (TeX-mode-map): Use new name.
+
+ * doc/auc-tex.texi (Marking and formatting): Rename `TeX-newline'
+ to `TeX-newline-function'.
+
+2004-05-26 Reiner Steib <Reiner.Steib@gmx.de>
+
+ * style/graphicx.el (LaTeX-arg-includegraphics): Rewrite.
+ Optional macro arguments can be controlled by
+ `LaTeX-includegraphics-options-alist' now.
+ (LaTeX-includegraphics-extensions)
+ (LaTeX-includegraphics-read-file): New functions.
+ (TeX-include-graphics-simple): Removed; use
+ `LaTeX-includegraphics-options-alist' instead.
+ (TeX-string-divide-number-unit, TeX-default-unit-for-image): Moved
+ to `tex.el'.
+
+ * latex.el (LaTeX-includegraphics-extensions)
+ (LaTeX-includegraphics-options-alist)
+ (LaTeX-includegraphics-strip-extension-flag): New options for
+ `style/graphicx.el'.
+
+ * tex.el (TeX-kpathsea-path-delimiter): Fix doc-string.
+ (TeX-insert-macro, TeX-parse-arguments): Skip optional macro
+ arguments when called with a prefix.
+ (TeX-string-divide-number-unit, TeX-default-unit-for-image): From
+ `style/graphicx.el'.
+ (TeX-arg-maybe): New function.
+
+ * latex.el (LaTeX-common-initialization): Added additional
+ arguments for \parbox.
+
+2004-05-26 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * tex.el (TeX-newline): New name for `TeX-indent-on-newline'. It
+ now holds function definitions and not mere symbols anymore.
+ (TeX-mode-map): Use it.
+
+ * doc/auc-tex.texi (Marking and formatting): Remove documentation
+ for `TeX-indent-on-newline' and document `TeX-newline'.
+
+2004-05-26 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * tex.el (TeX-indent-on-newline): New option.
+ (TeX-mode-map): Use it.
+
+ * doc/auc-tex.texi (Marking and formatting): Document
+ `TeX-indent-on-newline' plus small corrections.
+
+2004-05-25 David Kastrup <dak@gnu.org>
+
+ * tex-buf.el (TeX-command): Add `override-confirm' argument.
+ (TeX-view): New function, without confirmation.
+
+ * context.el (ConTeXt-mode-map): Inherit keymap instead of
+ copying.
+
+ * latex.el (LaTeX-mode-map): Inherit keymap instead of copying.
+
+ * tex.el (TeX-source-specials-map): New variable.
+ (TeX-source-specials): Make a minor mode. Replaces
+ `TeX-toggle-source-specials' and
+ `TeX-source-specials-active-flag'.
+ (TeX-source-specials-expand-options): Adapt to that.
+ (TeX-electric-macro-map): inherit from
+ `minibuffer-local-completion-map' instead of copying.
+ (plain-tex-mode): Help string uses `plain-TeX-mode-map'.
+ (TeX-mode-p): New variable, set in TeX modes.
+ (VirTeX-common-initialization): Set it.
+ (TeX-mode-map): Proper defvar. Add keybindings for
+ `TeX-source-specials' and `TeX-view'.
+ (plain-TeX-mode-map): Inherit instead of copy.
+ (AmSTeX-mode-map): Same here.
+
+ * doc/auc-tex.texi: Change info dir formatting, adapt copyrights
+ according to the assignment process.
+
+2004-05-25 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * doc/install.texi (Configure): Remove unused option
+ `--with-texmf-dir'. Document new option `--with-tex-input-dirs'.
+
+ * doc/wininstall.texi: Ditto. Add information about new option
+ `--with-auto-dir'.
+
+ * latex.el (LaTeX-backward-paragraph): Revert check-in of
+ 2004-05-24.
+
+2004-05-24 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * latex.el (LaTeX-backward-paragraph): Recognize if point is at
+ the end of a line when the test for a macro following a paragraph
+ command is carried out.
+
+2004-05-23 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * font-latex.el (font-latex-doctex-^^A): Add mistakenly deleted
+ space again.
+
+2004-05-21 Reiner Steib <Reiner.Steib@gmx.de>
+
+ * style/graphicx.el (TeX-string-divide-number-unit): Renamed from
+ misspelled `TeX-string-divide-nuber-unit'. Reformat file. Fix
+ some doc-strings and comments.
+
+2004-05-20 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * aclocal.m4 (TEX_INPUT_DIRS): New help string. Better error
+ handling.
+
+2004-05-19 David Kastrup <dak@gnu.org>
+
+ * aclocal.m4: Comment EMACS_LISP.
+ (EMACS_TEST_LISPDIR): remove both trailing backslash and slash.
+
+2004-05-19 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * latex.el (LaTeX-fill-move-to-break-point): Prevent infinite loop
+ in lines starting with whitespace.
+ (LaTeX-forward-paragraph): Don't consider paragraph commands
+ followed directly by a TeX macro as part of an adjacent paragraph.
+ (LaTeX-backward-paragraph): Ditto.
+
+2004-05-18 Davide G. M. Salvetti <salve@debian.org>
+
+ * aclocal.m4 (AUCTEX_AUTO_DIR): Change `autodir' default to
+ `${localstatedir}/auctex' to conform to the GNU Coding Standards.
+ Add `autodir_expanded' as the properly expanded version of
+ `autodir'. Inform the user about the check in progress.
+ * tex-site.el.in (TeX-lisp-directory): Use `@autodir_expanded@'.
+
+2004-05-17 Reiner Steib <Reiner.Steib@gmx.de>
+
+ * aclocal.m4 (AUCTEX_AUTO_DIR): Avoid AS_HELP_STRING for
+ compatibility with autoconf < 2.58.
+
+2004-05-17 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * aclocal.m4 (TEX_INPUT_DIRS): Use `--expand-braces' instead of
+ `--show-path' in the kpsewhich calls. Use `--expand-path' as a
+ fallback e.g. for MikTeX. Assume that we are dealing with a
+ TDS-compliant TeX system and add "/tex/" and "/bibtex/bst/"
+ subdirectories to the output of the kpsewhich calls accordingly.
+
+ * latex.el (LaTeX-fill-newline): Don't use code specific to GNU
+ Emacs for XEmacs. Call `newline-and-indent' instead.
+
+2004-05-15 Davide G. M. Salvetti <salve@debian.org>
+
+ * aclocal.m4 (AUTO_DIR): Code cleaned; renamed to
+ `AUCTEX_AUTO_DIR'.
+ * configure.in: Change `AUTO_DIR' to `AUCTEX_AUTO_DIR'.
+
+2004-05-14 Davide G. M. Salvetti <salve@debian.org>
+
+ * style/italian.el (LaTeX-italian-open-quote)
+ (LaTeX-italian-close-quote): Use standard babel syntax rather than
+ latin1 characters. Patch by David Kastrup <dak@gnu.org>.
+
+2004-05-14 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * latex.el (LaTeX-indent-calculate-last): Ignore commented lines
+ when called in a non-comment line.
+
+ * style/scrbase.el (TeX-add-style-hook): Fontify \minisec like a
+ sectioning command.
+
+2004-05-14 Reiner Steib <Reiner.Steib@gmx.de>
+
+ * tex.el (TeX-auto-generate): Bind `enable-local-eval'.
+
+2004-05-13 Davide G. M. Salvetti <salve@debian.org>
+
+ * doc/auc-tex.texi (European): Sort languages list alphabetically.
+
+ * doc/install.texi (Configure): Document `--with-auto-dir'.
+
+ * Makefile.in (DOCFILES): Added `doc/macros.texi'.
+
+ * doc/Makefile.in (distclean): New.
+
+2004-05-13 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * latex.el (LaTeX-env-item): Don't eat non-empty lines when
+ called on a marked region unless they only consist of whitespace
+ and comment characters. Fill the paragraph of a potentially
+ outdented line after insertion of \item.
+
+ * aclocal.m4 (TEX_INPUT_DIRS): Repair quoting.
+
+ * tex.el (TeX-kpathsea-format-alist): Rename. Formerly known as
+ `TeX-kpathsea-directory-alist'. Add information to every format
+ about the file extensions to be found.
+ (TeX-search-files-kpathsea): Adapt to new information in
+ `TeX-kpathsea-format-alist'.
+ (TeX-mode-specific-command-menu-entries): Move source specials
+ toggle up to first level of command menu.
+
+2004-05-12 Davide G. M. Salvetti <salve@debian.org>
+
+ * aclocal.m4 (AUTO_DIR): New function.
+ * configure.in: Use `AUTO_DIR' to expand `@autodir@' in
+ `tex-site.el.in'.
+ * Makefile.in (autodir): Use `@autodir@'.
+ * tex-site.el.in (TeX-auto-global): Definition moved from
+ `tex.el'. Use `@autodir@'.
+ * tex.el (TeX-auto-global): Definition moved to `tex-site.el.in'.
+ * lpath.el: Bind `TeX-auto-global'.
+
+ * style/italian.el: New file.
+ * doc/auc-tex.texi (Font Specifiers): Removed two sentences
+ referring to the old behavior of the short-cuts for easy
+ insertions of fonts changing macros. (At that time they added
+ things like `{\it --!--}', now they add things like
+ `\textit{--!--}'.)
+ (Marking and formatting): Reflect renaming of
+ `LaTeX-format-comment-syntax-aware' to `LaTeX-syntactic-comments'.
+ (European): Document `italian.el'.
+ * Makefile.in (STYLESRC): Added `italian.el'.
+
+ * lpath.el: Bind `TeX-macro-global'.
+ * tex.el: No need to `(require 'tex-site)' at compilation time,
+ see `lpath.el'.
+
+2004-05-12 David Kastrup <dak@gnu.org>
+
+ * tex.el (TeX-source-specials-active-flag)
+ (TeX-source-specials-check-function, TeX-source-specials-xdvi-p)
+ (TeX-source-specials-check-xdvi)
+ (TeX-mode-specific-command-menu-entries)
+ (TeX-maybe-set-source-specials, TeX-toggle-source-specials):
+ Remove all checks for validity of the Source Special options.
+ Just assume that the user knows what he is asking for.
+
+2004-05-12 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * aclocal.m4 (TEX_INPUT_DIRS): Don't use `findtexmf' but a
+ universal call of `kpsewhich' and unify paths separated by `;'
+ or `:'.
+
+ * context.el (ConTeXt-mode-menu): Show `TeX-comment-or-uncomment-*'
+ functions in the menu instead of the comment and uncomment
+ functions which don't have a key binding.
+
+ * tex.el (plain-TeX-mode-menu): Ditto.
+ (TeX-mode-map): Move definitions of `C-c ;' and `C-c %' downwards
+ so that they become visible in the menu.
+
+ * latex.el (LaTeX-fill-region-as-para-do): Remove extra spaces
+ between words.
+ (LaTeX-mode-menu): Show `TeX-comment-or-uncomment-*'
+ functions in the menu instead of the comment and uncomment
+ functions which don't have a key binding.
+
+2004-05-11 David Kastrup <dak@gnu.org>
+
+ * style/beamer.el: Updates from Thomas Baumann checked in.
+
+2004-05-10 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * font-latex.el (font-latex-doctex-^^A): Add compatibility code
+ for Emacs 20 and XEmacs to fix compile error.
+ (font-latex-verbatim-face): Add parentheses to fix error with
+ Emacs 20.
+ (font-latex-doctex-preprocessor-face): Ditto.
+ (font-latex-doctex-documentation-face): Ditto.
+
+ * style/prosper.el (LaTeX-prosper-insert-slide): Don't stay in
+ comment upon inserting a slide in an overlay.
+
+2004-05-09 Reiner Steib <Reiner.Steib@gmx.de>
+
+ * tex.el (TeX-source-specials-check-function): Added "Always on"
+ choice.
+
+2004-05-09 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * font-latex.el (font-latex-doctex-syntactic-keywords): Moved to
+ the right place and corrected quoting.
+
+ * context.el (ConTeXt-indent-syntax-table): Create with
+ `make-syntax-table' instead of `easy-mode-defsyntax' to allow
+ compilation with Emacs 20.
+
+ * aclocal.m4 (TEX_INPUT_DIRS): New function.
+
+ * configure.in: Use `TEX_INPUT_DIRS' for the expansion of
+ `@texinputdirs@' in `tex-site.el.in'.
+
+ * tex-site.el.in: Updated header.
+ (TeX-macro-global): Moved here from `tex.el'. Use
+ `@texinputdirs@'.
+
+ * tex.el: Require `tex-site' at compile time.
+ (TeX-macro-global): Moved to `tex-site.el.in'.
+
+2004-05-09 Reiner Steib <Reiner.Steib@gmx.de>
+
+ * tex.el (TeX-toggle-source-specials): Added missing call to
+ `TeX-maybe-set-source-specials' in last commit.
+
+2004-05-08 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * font-latex.el (font-latex-verbatim-face)
+ (font-latex-doctex-preprocessor-face)
+ (font-latex-doctex-documentation-face): New variables and faces.
+ (font-latex-verbatim-environments, font-latex-syntactic-keywords)
+ (font-latex-doctex-syntactic-keywords)
+ (font-latex-doctex-keywords): New variables.
+ (font-latex-set-syntactic-keywords)
+ (font-latex-syntactic-face-function, font-latex-doctex-^^A)
+ (font-latex-doctex-syntactic-face-function): New functions.
+ (font-latex-setup): Set special `font-lock-defaults' for docTeX
+ mode.
+ (font-latex-commented-outp): Don't classify line comments in
+ docTeX mode as "real" comments.
+
+ * latex.el (doctex-mode): Call `TeX-install-font-lock' to
+ activate special fontification in docTeX mode.
+
+ * style/alltt.el (TeX-add-style-hook): Added "alltt" to
+ `font-latex-verbatim-environments'.
+
+ * context.el: Updated header.
+
+ * context-nl.el: Updated header.
+
+ * context-en.el: Updated header.
+ (context-en-mode): Set `ConTeXt-current-interface' to "en".
+
+2004-05-06 Reiner Steib <Reiner.Steib@gmx.de>
+
+ * tex.el (TeX-toggle-source-specials): Simplify the code.
+
+2004-05-06 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * Makefile.in (DOCFILES): Added `todo.texi'.
+
+2004-05-05 Reiner Steib <Reiner.Steib@gmx.de>
+
+ * tex.el (TeX-command-list, TeX-source-specials-expand-options)
+ (plain-tex-mode, TeX-view-extension, ams-tex-mode): Doc fixes.
+
+ * tex.el (TeX-mode-hook, AmS-TeX-mode-hook): Have always been run,
+ but were not declared with defcustom (or defvar).
+
+ * latex.el (LaTeX-mode-hook): Ditto.
+
+ * Makefile.in (tar-ball-clean): New.
+
+ * autogen.sh: Create README and TODO.
+
+ * .cvsignore, doc/.cvsignore: Add TODO.
+
+2004-05-04 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * tex.el (TeX-expand-list): Inserted new expander `%S' for source
+ specials command line option.
+ (TeX-command-list): Inserted `%S' for source specials support
+ where appropriate.
+ (LaTeX-command-style): Ditto.
+ (TeX-source-specials-expand-options): New function.
+
+ * tex-buf.el: Updated header.
+ (TeX-style-check): Remove code specific to source specials and
+ thereby revert to state before 2004-04-27.
+
+ * tex-jp.el: Updated header.
+ (japanese-TeX-command-list): Inserted `%S' for source specials
+ support where appropriate.
+
+ * tex-fptex.el: Updated header.
+ (TeX-command-list): Inserted `%S' for source specials support
+ where appropriate.
+ (LaTeX-command-style): Setting removed.
+
+ * tex-mik.el: Updated header.
+ (TeX-command-list): Inserted `%S' for source specials support
+ where appropriate.
+ (LaTeX-command-style): Setting removed.
+
+ * doc/auc-tex.texi (Checking): Updated URL's for lacheck and
+ chktex.
+
+2004-05-02 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * tex.el: Header updated.
+ (TeX-master-file): Removed bogus test for `TeX-header-end'.
+
+ * doc/auc-tex.texi (ToDo): New name for node/section formerly
+ known as `Projects' or `Wishlist' respectively.
+ Removed items not relevant anymore and moved the rest to the new
+ file `doc/todo.texi'.
+ Removed `Credits' section.
+
+ * doc/Makefile.in (TEXIFILES): New constant.
+ (auctex): Use it.
+ (dist): Added `TODO'.
+ (TODO): New target.
+ (clean): Added `TODO'.
+ Some formattig changes.
+
+ * doc/todo.texi: New file.
+
+ * Makefile.in (tar-ball): Added `TODO'.
+
+ * doc/changes.texi: Advertise support for `beamer.cls'.
+
+2004-04-30 David Kastrup <dak@gnu.org>
+
+ * tex-buf.el (TeX-command-expand): Add "%%" expansion, make order
+ of TeX-expand-list irrelevant, make the whole junk work
+ efficiently.
+
+2004-04-30 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * latex.el: New header.
+ (LaTeX-indent-environment-list): Remove `alltt' and add support
+ for it in `alltt.el' instead.
+
+ * Makefile.in (STYLESRC): Added `alltt.el'.
+
+ * style/alltt.el: New file.
+
+ * doc/changes.texi: Describe changes in quote insertion if
+ `german.sty' or `ngerman.sty' is used.
+ Advertise new style files.
+
+2004-04-29 Reiner Steib <Reiner.Steib@gmx.de>
+
+ * tex-buf.el (TeX-style-check): New optional argument. This fixes
+ an error in the last commit.
+
+ * tex.el (TeX-expand-list): Use it.
+
+2004-04-27 Reiner Steib <Reiner.Steib@gmx.de>
+
+ * tex-buf.el (TeX-style-check, TeX-output-style-check): Check for
+ source special stuff here instead of `TeX-expand-list'. Honor
+ `TeX-source-specials-places'.
+
+ * tex.el (AUCTeX): Fix URL.
+ (TeX-default-mode, TeX-force-default-mode, TeX-install-font-lock)
+ (TeX-source-specials-active-flag): Changed custom group.
+ (TeX-expand-list): Move source special stuff to `TeX-style-check'
+ and `TeX-output-style-check'.
+ (TeX-source-specials-tex-flags): Make it customizable.
+ (TeX-source-specials-places): New variable.
+ (TeX-source-specials-viewer-flags): No IFS needed anymore.
+
+2004-04-26 Reiner Steib <Reiner.Steib@gmx.de>
+
+ * context.el (context-guess-current-interface): Simplify code.
+
+2004-04-25 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * tex-info.el (texinfo-mode): Make last change in
+ `font-lock-defaults' compatible with Emacs 20.
+
+ * latex.el (LaTeX-fill-region-as-paragraph): Indent lines ending
+ with `\\' upon filling a region.
+ (LaTeX-fill-region): Prevent infinite loop at end of buffer.
+
+2004-04-24 David Kastrup <dak@gnu.org>
+
+ * style/natbib.el ("natbib"): Add fontification for regexps.
+ Patch by Thomas Baumann.
+
+2004-04-24 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * tex-info.el (texinfo-mode): Set `font-lock-defaults' as in
+ `texinfo.el'. This way we get e.g. syntax-highlighting of
+ comments in Texinfo mode.
+
+2004-04-24 Reiner Steib <Reiner.Steib@gmx.de>
+
+ * tex.el (TeX-toggle-source-specials)
+ (TeX-maybe-set-source-specials, TeX-source-specials-check-xdvi):
+ New (renamed) functions.
+ (TeX-source-specials-active-flag, TeX-source-specials-tex-flags)
+ (TeX-source-specials-viewer-flags)
+ (TeX-source-specials-check-function, TeX-source-specials-xdvi-p):
+ New (renamed) variables. Tried to clarify doc-strings and
+ variable names.
+
+2004-04-23 David Kastrup <dak@gnu.org>
+
+ Source special support by Dan Nicolaescu <dann@ics.uci.edu>:
+ * tex.el (TeX-command-list): start viewer with TeX-run-discard
+ (TeX-expand-list): Add source special flags to viewer call.
+ (TeX-expand-list): Add source special flags to LaTeX call.
+ Various new functions.
+ (TeX-current-file-name-master-relative): New function replacing
+ TeX-current-file-name-nondirectory (which is not really needed, I
+ guess). This change sole fault of dak.
+ (TeX-mode-specific-command-menu-entries): Source Special entry.
+
+2004-04-23 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * latex.el (LaTeX-fill-region-as-paragraph): Fix call to
+ `indent-region' for "older" Emacsen.
+ (LaTeX-mode-menu): Fix menu extension for customization.
+
+ * context.el (ConTeXt-mode-menu): Fix menu extension for
+ customization.
+
+ * tex-info.el (TeXinfo-insert-environment): Support enclosure of
+ a selected region by the environment to be inserted.
+ Don't eat newline at the end of the environment.
+ (TeXinfo-mode-map): Bind `C-c C-e' to `TeXinfo-insert-environment'
+ analogous to LaTeX mode.
+
+2004-04-21 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * style/slides.el: Remove obsolete SliTeX-related code and
+ replace it by minimal support for slides.cls.
+
+ * latex.el: Change spaces to tabs in indentation.
+ (LaTeX-fill-region-as-paragraph): Filling is disabled for
+ environments listed in `LaTeX-indent-environment-list'. To be
+ consistent with filling of other environments where indentation
+ occurs, at least indent those environments.
+
+ * tex.el: Change spaces to tabs in indentation.
+
+2004-04-20 Reiner Steib <Reiner.Steib@gmx.de>
+
+ * tex.el (TeX-output-view-style): Move "dvips && gv" element to
+ the top of the list (not shadowed by a4paper anymore). Added
+ "pst-" in this element.
+
+2004-04-20 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * latex.el (LaTeX-current-environment): Respect value of
+ `LaTeX-syntactic-comments' and mode by narrowing the region if
+ necessary and checking necessary conditions. Use
+ `TeX-forward-comment-skip' and `TeX-backward-comment-skip' for
+ narrowing.
+ (LaTeX-find-matching-end): Ditto.
+ (LaTeX-find-matching-begin): Ditto.
+ (docTeX-in-macrocode-p): New function.
+
+ * tex.el: More checkdoc-related fixes.
+
+2004-04-20 David Kastrup <dak@gnu.org>
+
+ * style/natbib.el: Patch from Thomas Baumann for \bibpunct.
+
+ * Makefile.in (STYLESRC): Add style/beamer.el.
+
+ * style/beamer.el: Support file contributed by Thomas Baumann.
+
+2004-04-19 Reiner Steib <Reiner.Steib@gmx.de>
+
+ * tex.el, latex.el: Make almost checkdoc clean. See "FIXME" for
+ remaining issues.
+
+ * context.el, context-en.el, context-nl.el: Reindent. Coding
+ conventions fixes (but files are still far from being checkdoc
+ clean).
+
+2004-04-19 Berend de Boer <berend@pobox.com>
+
+ * context-en.el (ConTeXt-default-environment-en): added default
+ environment for en interface.
+
+ * context-nl.el (ConTeXt-default-environment-nl): added default
+ environment for nl interface.
+
+ * context.el (ConTeXt-default-environment): now depends on language.
+
+2004-04-16 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * tex.el (TeX-view-style): Enhance documentation string.
+ (TeX-output-view-style): Ditto.
+
+2004-04-16 Reiner Steib <Reiner.Steib@gmx.de>
+
+ * tex-info.el (TeXinfo-command-menu): Use
+ `TeX-mode-specific-command-menu'.
+
+ * tex-jp.el (plain-TeX-mode-command-menu)
+ (LaTeX-mode-command-menu): Ditto.
+
+2004-04-16 David Kastrup <dak@gnu.org>
+
+ * Makefile.in (STYLESRC): Add jura.el and alphanum.el
+ style/jura.el, style/alphanum.el: contributed by Frank Kĵster.
+
+2004-04-16 Berend de Boer <berend@pobox.com>
+
+ * context.el (context-guess-current-interface): support for
+ recognizing interface=XX in comment to determine language to use.
+
+ * tex.el (TeX-format-list): recognize ConTeXt dutch interface.
+
+ * Makefile.in: AUCSRC includes the new context-en.el and context-nl.el.
+ Ditto fo AUCELC.
+
+ * context.el: English interface macro's moved to context-en.el.
+ All defmacro's are now replaced by defvars which are set to the
+ proper language dependent interface as a local buffer variable.
+ Some changes to make the context mode actually multi-lingual.
+ (ConTeXt-mode-common-initialization): new routine with
+ initialization common to all ConTeXt modes.
+ (context-mode): guesses current interface for en and nl interfaces.
+ (context-guess-current-interface): new routine that determines
+ what ConTeXt language interface is in use.
+
+ * context-nl.el: new file containing Dutch interfaces macro's
+ previously in context.el. Use context-nl-mode to activate.
+
+ * context-en.el: new file containing English interfaces macro's
+ previously in context.el. Use context-en-mode to activate.
+
+2004-04-15 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * tex.el (TeX-mode-specific-command-menu): Now holds the logic for
+ returning a Command menu definition suitable for different Emacs
+ versions. Its original content is now in the function
+ `TeX-mode-specific-command-menu-entries'.
+ (TeX-mode-specific-command-menu-entries): New function.
+ (plain-TeX-mode-command-menu): Simply use
+ `TeX-mode-specific-command-menu' instead of the logic which now
+ is part of it.
+ (AmSTeX-mode-command-menu): Ditto.
+
+ * latex.el (LaTeX-mode-command-menu): Ditto.
+
+ * context.el (ConTeXt-mode-command-menu): Ditto.
+
+2004-04-14 Reiner Steib <Reiner.Steib@gmx.de>
+
+ * doc/Makefile.in (clean): Remove *.tmp (created with auc-tex.ps).
+
+ * doc/.cvsignore: Added *.tmp.
+
+ * .cvsignore: Revert 2004-04-12 change. Added README.
+
+ * Makefile.in (tar-ball): .nosearch is not useful here.
+
+2004-04-13 David Kastrup <dak@gnu.org>
+
+ * aclocal.m4: Try something in AC_FULL_EXPAND that does not
+ require bash.
+ Replace ' with quote in EMACS_LISP
+ Correct a few instances of misspelled AUCTeX.
+
+2004-04-13 Reiner Steib <Reiner.Steib@gmx.de>
+
+ * Makefile.in (DOCFILES, EXTRAFILES): Added files needed for the
+ configure based installation.
+
+2004-04-12 Reiner Steib <Reiner.Steib@gmx.de>
+
+ * Makefile.in (dist): Split into `check-dist', `release-commit'
+ and `tar-ball'.
+ (snapshot): New. Use `check-dist' and `tar-ball'.
+ (release-commit): Fix mail address.
+ (REMOVE, MINMAPSRC, min-map): Removed.
+ (DIST_PREFIX): Derive FTPDIR and WWWDIR from this.
+
+ * doc/Makefile.in (dist): Use INSTALL and INSTALL.windows instead
+ of INSTALLATION.
+
+ * doc/.cvsignore: Added INSTALL, INSTALL.windows, auc-tex.ps
+
+ * .cvsignore: Removed INSTALL, INSTALL.windows.
+
+2004-04-12 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * latex.el (LaTeX-syntactic-comments): New name. Formerly known
+ as `LaTeX-format-comment-syntax-aware'. This should better
+ reflect the meaning the variable will receive eventually.
+ (LaTeX-indent-line): Use new name.
+ (LaTeX-current-indentation): Ditto.
+ (LaTeX-back-to-indentation): Ditto.
+ (LaTeX-fill-paragraph): Ditto.
+ (doctex-mode): Ditto.
+
+ * context.el (context-mode): Use `LaTeX-syntactic-comments'
+ instead of `LaTeX-format-comment-syntax-aware'.
+
+2004-04-10 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * doc/auc-tex.texi (Japanese): Refer to `INSTALL' instead of
+ `INSTALLATION'.
+
+ * doc/intro.texi: Refer to `INSTALL' and `INSTALL.windows'
+ instead of `INSTALLATION'.
+
+ * IRIX: Removed.
+
+ * Makefile.in (EXTRAFILES): Removed IRIX.
+
+ * COPYING: Updated to current incarnation.
+
+2004-04-09 Reiner Steib <Reiner.Steib@gmx.de>
+
+ * Makefile.in (install-el, dist): Add .nosearch in style/ and
+ auto/.
+
+2004-04-09 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * context.el (ConTeXt-current-interface): eval-and-compile instead
+ of eval-when-compile seems to solve the undefined error message.
+
+2004-04-08 Peter S Galbraith <psg@debian.org>
+
+ * font-latex.el (font-latex-setup): Bug Fix; was overriding
+ font-latex-string-face. Thanks to Reuben Thomas for finding the bug.
+
+2004-04-08 Jan-…ke Larsson <jalar@mai.liu.se>
+
+ * configure.in: Remove sole reference to texmfdir
+
+ * aclocal.m4: Fix --with-lispdir
+
+2004-04-08 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * latex.el (LaTeX-fill-paragraph): Fix check for code comment.
+ (LaTeX-fill-code-comment): Ditto.
+
+ * tex.el (TeX-in-commented-line): Don't alter match data. Fixes
+ problems with `LaTeX-find-matching-end'.
+ (TeX-in-line-comment): Ditto. (Prophylactic.)
+
+2004-04-08 Berend de Boer <berend@pobox.com>
+
+ * latex.el (LaTeX-outline-name): could reach past end of buffer
+ when an imenu was created and LaTeX-outline-regexp contained a
+ macro that either didn't take a argument between braces or a macro
+ was found in the document and the user forgot to specify the
+ argument. And that macro was after the last 20 characters of the
+ buffer.
+
+ * context.el (ConTeXt-current-interface): eval-when-compile this
+ variable fixed another reported compiliation error.
+
+2004-04-07 Reiner Steib <Reiner.Steib@gmx.de>
+
+ * latex.el (LaTeX-default-position, LaTeX-env-array)
+ (LaTeX-env-tabular*): Implement "don't prompt" option.
+
+ * doc/auc-tex.texi (Tabular-like): Added `LaTeX-default-format'
+ and `LaTeX-default-position'.
+
+2004-04-07 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * latex.el (LaTeX-fill-break-at-separators): New name. Formerly
+ known as `LaTeX-fill-distinct-contents'.
+ Changed 'braced and 'math options to various symbols for opening
+ and closing separators (braces, brackets, math switches) which
+ can be activated independently.
+ (LaTeX-fill-move-to-break-point): Use it.
+
+ * doc/auc-tex.texi (Marking and formatting): Reflect change of
+ `LaTeX-fill-distinct-contents' to
+ `LaTeX-fill-break-at-separators'.
+ Describe `LaTeX-fill-break-before-code-comments'.
+
+2004-04-07 David Kastrup <dak@gnu.org>
+
+ * tex-buf.el (TeX-run-command): Turn off line number mode in the
+ run-buffer effectively by setting line-number-display-limit
+ locally to 0.
+ (TeX-format-filter): Use a more sophisticated procedure for
+ fishing out page numbers in order to have fast matches.
+
+2004-04-07 Berend de Boer <berend@pobox.com>
+
+ * Lots of enhancements to context.el. There is now a ConTeXt
+ specific menu which lists ConTeXt specific macro's for inserting
+ start/stop pairs, project structure and setup of things. Menu also
+ let's you jump to the etexshow definition if you have that
+ installed. Querying for macro parameters is non-existent or
+ flaky. outline and imenu support added. You can close an XML tag
+ if you're editing XML in ConTeXt with C-c /.
+ List of environments is now complete.
+ Paragraph formatting works in certain cases, but is really slow or
+ doesn't work in certain cases.
+ Indenting the same: works sometimes, but still flaky.
+ Bugs fix: start/stop insertion works now.
+
+ * documentation now mentions ConTeXt sometimes.
+
+ * context.el (ConTeXt-current-interface): make now doesn't complain
+ anymore when byte compiling ConTeXt.
+
+ * tex.el now recognizes ConTeXt dutch interface.
+
+2004-04-05 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * latex.el (LaTeX-fill-code-comment): Respect `indent-tabs-mode'.
+ Fix partially taken from GNU Emacs' fill.el.
+
+ * tex.el (TeX-mode-specific-command-list): New function.
+ (TeX-mode-specific-command-menu): Use it.
+
+ * tex-buf.el (TeX-command-query): Use
+ `TeX-mode-specific-command-list' to get a command list specific
+ to the current mode for command completion.
+
+2004-04-04 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * latex.el (docTeX-indent-inner-fixed): New var.
+ (LaTeX-indent-calculate): Use it.
+ (LaTeX-indent-calculate-last): Reset indentation to zero after
+ macrocode environments.
+
+ * style/booktabs.el (TeX-add-style-hook): Add fontification
+ support.
+
+2004-04-04 David Kastrup <dak@gnu.org>
+
+ * latex.el (LaTeX-find-matching-end, LaTeX-find-matching-end): Try
+ to keep track of in-comment-ness
+
+2004-04-03 David Kastrup <dak@gnu.org>
+
+ * Makefile.in (STYLESRC): Add emp.el.
+
+ * style/emp.el: New file contributed from Yvon Hevel.
+
+2004-04-02 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * latex.el (LaTeX-back-to-indentation): Use `beginning-of-line'
+ instead of `move-to-left-margin' as it is faster and we don't use
+ the margin anyway.
+ (LaTeX-fill-region-as-para-do): Use `point-max' for correctly
+ determining the end of the filling loop in case of a code comment.
+ Narrow to region in any case to simplify this determination in
+ case there is no code comment.
+ (LaTeX-fill-move-to-break-point): Fix compatibility code for
+ getting the initial break point. In case there is no valid break
+ point on the way towards the beginning of the line, look down the
+ line.
+
+2004-03-28 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * tex.el (TeX-output-view-style): Remove option for landscape in
+ case of PDF output.
+
+2004-03-26 David Kastrup <dak@gnu.org>
+
+ * latex.el (LaTeX-fill-region): Correct percentage display.
+
+ * tex-buf.el (TeX-format-filter): Strictly restrict backward
+ searches for page number patterns.
+
+2004-03-26 Davide G. M. Salvetti <salve@debian.org>
+
+ * bib-cite.el, latex.el, tex-buf.el, tex-jp.el, tex.el:
+ Map (function (lambda ...)) to (lambda ...) for better
+ readability.
+
+ * doc/.cvsignore: Added CHANGES, HISTORY, README, auc-tex*.html.
+
+ * doc/intro.texi: Minor fix.
+
+2004-03-26 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * latex.el (LaTeX-indent-line): Use `looking-at' instead of
+ `re-search-forward'. Pass indent amount to
+ `LaTeX-indent-{inner,outer}-do' functions.
+ (LaTeX-indent-inner-do, LaTeX-indent-outer-do): Let them be called
+ with an explicit parameter for the indent amount.
+ (LaTeX-indent-calculate-last): Distinguish a commented and an
+ uncommented line when skipping backwards to the preceding line.
+ Move tests for comment skips into the `cond' statement for better
+ readability.
+ (LaTeX-fill-break-before-code-comments): New customize option.
+ (LaTeX-fill-region-as-paragraph): Change the regular expression
+ which is used for searching for special line ends so that it is
+ not such a performance hog. Code for determining the region to
+ fill was adapted accordingly.
+ (LaTeX-fill-region-as-para-do): Remove trailing whitespace after
+ newlines were changed to spaces. Reported by Reiner Steib
+ <Reiner.Steib@gmx.de>.
+ Use `narrow-to-region' for keeping track of potential code comment
+ starts.
+ Break a line at the last non-comment word before a code comment.
+ This can be configured with
+ `LaTeX-fill-break-before-code-comments'.
+ (LaTeX-fill-move-to-break-point): Use `LaTeX-back-to-indentation'
+ for going to the right start of a line.
+ (LaTeX-fill-paragraph): `LaTeX-backward-paragraph' does not skip
+ forward over empty lines itself anymore, so do it here.
+ (LaTeX-fill-region): Use `LaTeX-forward-paragraph' and
+ `LaTeX-backward-paragraph' instead of the old code which
+ determined paragraph boundaries manually.
+ (LaTeX-forward-paragraph, LaTeX-backward-paragraph): Improve
+ handling of paragraph commands.
+ (LaTeX-paragraph-command-p): Get rid of the test for the opening
+ brace because there doesn't have to be one.
+ (LaTeX-find-macro-start): New function.
+ (LaTeX-find-macro-end): New function.
+
+ * .cvsignore: Added `tex-site.el'.
+
+2004-03-23 David Kastrup <dak@gnu.org>
+
+ * tex.el (VirTeX-common-initialization): Back out last change
+ about sentence-end-double-space.
+
+2004-03-22 Jan-…ke Larsson <jalar@mai.liu.se>
+
+ * aclocal.m4, configure.in: Fix bug for the case $prefix=NONE
+
+ * Makefile.in: distclean target removes tex-site.el
+
+2004-03-22 David Kastrup <dak@gnu.org>
+
+ * latex.el (LaTeX-fill-distinct-contents): Simplify customization
+ type: nil is a complete list.
+
+2004-03-21 David Kastrup <dak@gnu.org>
+
+ * tex.el (VirTeX-common-initialization): Set
+ sentence-end-double-space and sentence-end to more appropriate
+ values for TeX.
+
+2004-03-21 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * latex.el (LaTeX-fill-region-as-paragraph): Fix separation of
+ lines with code comments looking like " {%".
+ (LaTeX-fill-move-to-break-point): Fix determination of break point
+ for an opening brace where there is no break point immediately
+ after the respective closing brace.
+ (LaTeX-fill-region-as-para-do): Fix determination of code comment
+ begin in filling loop.
+
+2004-03-20 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * latex.el (LaTeX-fill-region-as-para-do): Fix compatibility code
+ for older Emacsen.
+
+2004-03-19 David Kastrup <dak@gnu.org>
+
+ * tex-site.el.in (texinfo-mode): Autoload tex-info again. I
+ suppose we will get to know why it was disabled when someone
+ complains.
+
+2004-03-19 Davide G. M. Salvetti <salve@debian.org>
+
+ * doc/Makefile.in (clean): Add HISTORY.
+
+ * tex.el (TeX-lisp-directory): Removed, it's already defined in
+ tex-site.el.in.
+
+2004-03-19 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * latex.el (LaTeX-current-environment): Use correct regexp for
+ determination of a comment.
+ (LaTeX-format-comment-syntax-aware): Renamed from
+ `LaTeX-fill-comment-syntax-aware' because it affects both filling
+ and indentation.
+ (LaTeX-indent-line): Add support for doing outer and inner
+ indentation.
+ (LaTeX-current-indentation): Ditto.
+ (LaTeX-back-to-indentation): Ditto.
+ (LaTeX-indent-calculate): Ditto.
+ (LaTeX-indent-calculate-last): Ditto. Fix indentation for
+ environments mentioned in `LaTeX-document-regexp' which use an
+ unclosed brace in the first line.
+ (LaTeX-indent-inner-do): New function.
+ (LaTeX-indent-outer-do): New function.
+ (LaTeX-fill-region-as-paragraph): Include lines with code comments
+ in regions to be filled. Recognize lines ending with `\par' as
+ boundaries for filling.
+ (LaTeX-fill-region-as-para-do): Better handling of code comments.
+ (LaTeX-fill-paragraph): Make function more readable by selecting
+ different filling methods by a `cond' statement and putting code
+ for the determination of the region to fill in case of
+ syntax-aware filling into the separate functions
+ `LaTeX-forward-paragraph' and `LaTeX-backward-paragraph'. Better
+ handling of code comments.
+ (LaTeX-fill-code-comment): New function.
+ (LaTeX-forward-paragraph): New function.
+ (LaTeX-backward-paragraph): New function.
+ (LaTeX-paragraph-command-p): New function.
+ (LaTeX-common-initialization): Let `paragraph-start' handle
+ comments preceded by whitespace as well.
+ (LaTeX-fill-move-to-break-point): Support `\[' and `\]' as well
+ if `LaTeX-fill-distinct-contents' is activated.
+
+ * tex.el (tex-mode): `comment-start-skip' shouldn't match line
+ beginnings.
+ (VirTeX-common-initialization): Ditto.
+ (TeX-in-line-comment): New function.
+ (TeX-forward-comment-skip): Use correct regexp for determination
+ of a comment. Fix case where `count' is less than zero, i.e. if
+ a backward search is performed.
+ (TeX-backward-comment-skip): New function.
+
+ * doc/auc-tex.texi: Reflect name change of
+ `LaTeX-fill-comment-syntax-aware' to
+ `LaTeX-format-comment-syntax-aware'.
+
+2004-03-18 Jan-…ke Larsson <jalar@mai.liu.se>
+
+ * Makefile.in, configure.in, tex-site.el, tex-site.el.in:
+ Move tex-site.el to tex-site.el.in, generate tex-site.el at configure
+ time rather than at install time
+
+2004-03-18 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * tex.el (TeX-output-view-style): Use `%f' instead of `%s.ps' for
+ PostScript files.
+ (TeX-mode-map): Change key binding of `TeX-master-file-ask' to
+ `C-c_' because `C-c-' is already taken by RefTeX.
+
+ * doc/auc-tex.texi: Change "Formatting" node to "Running TeX and
+ friends" and use a respective heading.
+ Adapt key binding for `TeX-master-file-ask'.
+
+ * doc/intro.texi: Correct URLs.
+
+2004-03-14 David Kastrup <dak@gnu.org>
+
+ * tex.el (TeX-command-list): Change interactive calls to use
+ \input, so that pdflatex \pdfoutput=0 becomes a legal way to call
+ LaTeX.
+ (VirTeX-common-initialization): Save TeX-master if desktop
+ package is used.
+
+2004-03-14 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * tex.el (TeX-output-view-style): Fix it after it was accidently
+ and incorrectly changed with the last check-in. Patch by David
+ Kastrup <dak@gnu.org>.
+ (TeX-view-style): Ditto.
+
+2004-03-11 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * tex.el (TeX-find-opening-brace): Don't match the char before the
+ brace. This returns the correct position and fixes the handling
+ of the limit parameter.
+
+ * latex.el (LaTeX-fill-move-to-break-point): Don't match the char
+ before the char to find in case of backward searches.
+ (LaTeX-fill-region-as-paragraph): Make the regular expression,
+ which serves searching for lines with code comments, match the
+ whole line.
+
+2004-03-10 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * latex.el (LaTeX-fill-move-to-break-point): Use `TeX-esc' in
+ other, similar places not covered by the last check-in as well.
+
+ * doc/auc-tex.texi: Document `LaTeX-indent-environment-list',
+ `LaTeX-fill-comment-syntax-aware' and
+ `LaTeX-fill-distinct-contents' as well as slightly improve some
+ other parts in the section about `Marking and formatting'.
+
+2004-03-10 David Kastrup <dak@gnu.org>
+
+ * latex.el (LaTeX-fill-move-to-break-point): Use TeX-esc in
+ regexps to accommodate Texinfo better.
+ (LaTeX-fill-move-to-break-point): no regexp-quote within braces.
+ (LaTeX-common-initialization): Correct \multicolumn prompt
+
+2004-03-09 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * latex.el (LaTeX-fill-move-to-break-point): Cope with unmatched
+ closing braces when `LaTeX-fill-distinct-content' is enabled for
+ braced content.
+
+2004-03-09 Jan-…ke Larsson <jalar@mai.liu.se>
+
+ * Makefile.in: Add separate target for .el files to cater for debian
+
+2004-03-07 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * style/booktabs.el: New file.
+
+ * Makefile.in (STYLESRC): Add `booktabs.el'.
+
+ * doc/changes.texi: Advertise support for `booktabs.sty'.
+
+2004-03-06 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * doc/auc-tex.texi: Small corrections in `Viewing' section.
+
+2004-03-02 Jan-…ke Larsson <jalar@mai.liu.se>
+
+ * doc/Makefile.in: Add packagedir
+
+2004-03-02 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * latex.el (LaTeX-insert-environment): Fix insertion of newlines
+ for the case where `LaTeX-insert-into-comments' is activated but
+ point is not inside a comment.
+
+2004-02-28 David Kastrup <dak@gnu.org>
+
+ * Makefile.in (install-lisp): Overwrite old tex-site.el if it has
+ the "Don't edit" comment in it. Rename it otherwise. Use
+ $(auctexdir) instead of $(lispdir) for replacing @AUCTEX.
+
+ * tex-buf.el (TeX-command-query): Allow doctex-mode for .bbl file
+ checking.
+
+ * tex-site.el: Discourage customization in-file.
+
+ * latex.el (LaTeX-outline-regexp, LaTeX-environment)
+ (LaTeX-document-style-hook): Change docs to refer to document
+ classes instead of document style.
+ (LaTeX-env-document): Don't insert anything but document class.
+ (LaTeX-menu-update): Check for doctex-mode.
+ (doctex-mode): Make it a major mode derived from latex-mode.
+
+2004-02-28 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ Merge with new-fill branch.
+
+2004-02-27 Jan-…ke Larsson <jalar@mai.liu.se>
+
+ * configure.in: Respect --infodir even if using xemacs.
+
+ * aclocal.m4: Add yes/no answer for the MULE check.
+
+ * Makefile.in: Correct xemacs-install.
+
+ * Makefile.in, aclocal.m4, configure.in: If there is a wrongly
+ installed tex-site.el, use the proper install directory anyway
+ (i.e., don't be side-tracked), and remove the wrongly installed
+ tex-site.el. These things are only needed for CVS users who have
+ used the erroneous xemacs-installation.
+
+2004-02-27 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * latex.el (LaTeX-mode-menu): Insert customize option and
+ rearrange.
+ (LaTeX-fill-move-to-break-point): Bandaid for not breaking inside
+ square brackets where the content fits into one line.
+
+ * tex.el (plain-TeX-mode-menu): Insert customize option.
+
+ * doc/auc-tex.texi: Document options for inserting quotes in files
+ where `(n)german.sty' is used and the invocation of external
+ viewers.
+
+2004-02-26 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * latex.el (LaTeX-fill-break-before-macro)
+ (LaTeX-fill-break-after-macro): Unused, so removed.
+ (LaTeX-fill-distinct-contents): New name for defcustom
+ `LaTeX-fill-break-before-and-after'.
+ (LaTeX-fill-move-to-break-point): Fix filling of nested braces and
+ math.
+ (TeX-find-closing-brace, TeX-find-opening-brace)
+ (TeX-forward-comment-skip): Moved to `tex.el'.
+
+ * tex.el (TeX-find-closing-brace, TeX-find-opening-brace)
+ (TeX-forward-comment-skip): Moved from `latex.el'.
+
+2004-02-26 David Kastrup <dak@gnu.org>
+
+ * latex.el (doctex-mode): Make a minor mode.
+
+ * tex-site.el (doctex-mode): Add autoloads and file extensions.
+
+ * tex.el (TeX-master-file): Don't overwrite TeX-master when not
+ asking the question.
+
+2004-02-22 David Kastrup <dak@gnu.org>
+
+ * latex.el (LaTeX-newline): New function. Spread it throughout
+ the code in order to stay in comments for completion and
+ insertion commands.
+ (doctex-mode): New function.
+
+2004-02-19 David Kastrup <dak@gnu.org>
+
+ * latex.el (LaTeX-fill-paragraph): Back out changes from
+ 2003-12-29.
+ Create separate new-fill branch for Ralf's code.
+
+2004-02-17 Reiner Steib <Reiner.Steib@gmx.de>
+
+ * font-latex.el (font-latex-title-4-face): Added missing :weight
+ and :inherit for color displays.
+
+2004-02-15 Peter S Galbraith <psg@debian.org>
+
+ * bib-cite.el (bib-cite-fontify-help-as-bibtex)
+ (bib-cite-fontify-help-as-latex): Check existence of
+ font-lock-unset-defaults; no longer defined in CVS Emacs.
+ Thanks to Adrian Lanz for reporting the problem.
+
+2004-02-15 Reiner Steib <Reiner.Steib@gmx.de>
+
+ * font-latex.el (font-latex-title-4-face): Use different colors
+ depending on background.
+
+2004-02-03 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * tex.el (TeX-comment-region): Map to `comment-region' instead of
+ `TeX-comment-or-uncomment-region'.
+ (TeX-uncomment-region): New name for `TeX-un-comment-region'. Not
+ mapped to `TeX-comment-or-uncomment-region' anymore.
+ (TeX-uncomment): New name for `TeX-un-comment'. Use
+ `TeX-uncomment-region' instead of `uncomment-region' which is not
+ available in Emacs 20.
+ (TeX-comment-or-uncomment-paragraph): New name for
+ `TeX-comment-paragraph' which explains its function better. Use
+ new name `TeX-uncomment'.
+ (TeX-mode-map): Bind key chains to `TeX-comment-or-uncomment-*'
+ functions.
+ (plain-TeX-mode-menu): Adapt function calls in menu entries.
+
+ * tex-info.el (TeXinfo-mode-map): Bind key chains to
+ `TeX-comment-or-uncomment-*' functions.
+ (TeXinfo-mode-menu): Adapt function calls in menu entries.
+
+ * latex.el (LaTeX-mode-menu): Adapt function calls in menu
+ entries. Small enhancements.
+
+ * doc/auc-tex.texi (Commenting): Adapt documentation to reflect
+ changes in commenting interface.
+
+2004-01-31 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * tex.el (TeX-comment-or-uncomment-region): New function or alias
+ respectively introduced to obtain compatibility with GNU Emacsen
+ before 21.4.
+ (TeX-uncomment-region): New function or alias respectively
+ introduced to obtain compatibility with GNU Emacsen before
+ 21(.1?).
+ (TeX-comment-region): Bound to `TeX-comment-or-uncomment-region'.
+ (TeX-un-comment-region): Bound to `TeX-comment-or-uncomment-region'.
+
+2004-01-27 Masayuki Ataka <ataka@milk.freemail.ne.jp>
+
+ * tex-jp.el (TeX-command-list): Fixed previous change.
+
+2004-01-25 Masayuki Ataka <ataka@milk.freemail.ne.jp>
+
+ * tex-jp.el (japanese-TeX-command-list): Remove dummy code for
+ command menu.
+
+2004-01-23 Masayuki Ataka <ataka@milk.freemail.ne.jp>
+
+ * tex-jp.el (japanese-TeX-command-list): Change single quotes to
+ double. We get reasonable results under both Windows and Unix.
+ See also log of TeX-command-list in tex.el on 2002-12-19.
+
+ * tex.el (TeX-toggle-off-input-method): Removed some Japanese
+ input methods (Canna, Wnn, SKK) because their code is copied from
+ YaTeX, which is not GPL program. Toggle off CJK (Chinese, Japanese,
+ Korean) input methods in LEIM.
+ (TeX-math-toggle-off-input-method): Doc fix.
+
+2004-01-13 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * latex.el (LaTeX-mode-menu): Removed menu filters in the submenus
+ for inserting and modifying environments which call
+ `LaTeX-menu-update'.
+ (LaTeX-common-initialization): Add `LaTeX-menu-update' to
+ `activate-menubar-hook' instead.
+
+2004-01-12 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * tex.el (TeX-view-style, TeX-output-view-style): Use a regexp
+ which matches `a5', `a5comb' and `a5paper' instead of the old
+ which matches only `a5'.
+
+2004-01-12 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * tex.el (TeX-command-menu-name): New constant.
+ (TeX-mode-specific-command-menu): Reimplemented the loop which
+ builds the menu.
+ (TeX-mode-command-menu): Use new constant and call
+ `TeX-mode-specific-command-menu' via `:filter'.
+ (AmSTeX-mode-command-menu): Ditto.
+
+ * context.el (ConTeXt-mode-command-menu): Use new constant
+ `TeX-command-menu-name' and call `TeX-mode-specific-command-menu'
+ via `:filter'.
+
+ * latex.el (LaTeX-mode-command-menu): Ditto.
+
+ * tex-info.el (TeXinfo-mode-command-menu): Ditto.
+
+ * tex-jp.el (plain-TeX-mode-command-menu)
+ (LaTeX-mode-command-menu): Ditto.
+
+2004-01-10 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * doc/changes.texi: Added further news.
+
+2004-01-09 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * doc/auc-tex.texi: AUC TeX to AUCTeX. Use `%%%' instead of a
+ single `%' character in examples for Local Variables. Add
+ information about new behavior in respect to the query for the
+ master file. Explain new function `TeX-master-file-ask'.
+
+ * doc/changes.texi: Advertise new master file behavior. Remove
+ news about new commenting behavior which is not true anymore.
+
+ * doc/intro.tex.: AUC TeX to AUCTeX.
+
+ * tex.el (TeX-local-master-p): Removed one `%' character in regexp
+ to let it find "% TeX-master:" as well.
+
+2004-01-07 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * tex.el (TeX-command-list): Changed defcustom definition to one
+ which allows the specification of several modes for one command
+ and adapted the defaults to it. Thanks to David Kastrup for most
+ of the code.
+ (plain-TeX-command-menu): Adapted the call to
+ `TeX-mode-specific-command-menu'.
+ (AmSTeX-mode-command-menu): Ditto.
+
+ * latex.el (LaTeX-mode-command-menu): Adapted the call to
+ `TeX-mode-specific-command-menu'.
+
+ * context.el (ConTeXt-mode-command-menu): Ditto.
+
+ * tex-info.el (TeXinfo-mode-command-menu): Ditto.
+
+ * tex-jp.el (japanese-TeX-command-list): Adapted list entries
+ according to defcustom changes in `tex.el'.
+ (plain-TeX-mode-command-menu): Adapted the call to
+ `TeX-mode-specific-command-menu'.
+ (LaTeX-mode-command-menu): Ditto.
+
+ * tex-mik.el (TeX-command-list): Adapted list entries
+ according to defcustom changes in `tex.el'.
+
+ * tex-fptex.el (TeX-command-list): Ditto.
+
+2004-01-06 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * tex.el (TeX-command-list): Get rid of the superfluous sixth
+ element in the defcustom and menu/command definitions.
+
+ * tex-jp.el (japanese-TeX-command-list): Ditto.
+
+ * tex-mik.el (TeX-command-list): Ditto.
+
+ * tex-fptex.el (TeX-command-list): Ditto.
+
+2004-01-05 David Kastrup <dak@gnu.org>
+
+ * latex.el (LaTeX-common-initialization): Add \item to the
+ paragraph starters.
+
+2004-01-05 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * tex.el (TeX-mode-specific-command-menu): New function to be used
+ for generating a mode-specific command menu.
+ (plain-TeX-mode-map): New map to be used by plain-tex-mode.
+ (plain-TeX-mode-command-menu): New menu used instead of
+ `TeX-mode-menu' which utilizes `TeX-mode-specific-command-menu'.
+ (TeX-mode-menu): Removed in favor of
+ `plain-TeX-mode-command-menu'.
+ (AmSTeX-mode-map): New map to be used by ams-tex-mode.
+ (AmSTeX-mode-command-menu): New menu.
+ (ams-tex-mode): Moved and grouped with other AmSTeX-related code.
+ Added code to use new menu.
+ (TeX-command-list): Added new choice for the selection of the mode
+ for the respective command. Adapted doc string. Added respective
+ symbols to command definitions. Rearranged command definitions.
+ Changed `LaTeX PDF' to `PDFLaTeX'.
+
+ * latex.el (LaTeX-mode-command-menu): New menu used instead of
+ `TeX-mode-menu'.
+ (LaTeX-common-initialization): Activate it.
+
+ * context.el (ConTeXt-mode-command-menu): New menu used instead of
+ `TeX-mode-menu'.
+ (context-mode): Activate it.
+
+ * tex-info.el (TeXinfo-command-menu): Adapted for using
+ `TeX-mode-specific-command-menu'.
+
+ * tex-jp.el (japanese-TeX-command-list): Added symbols to command
+ definitions needed for assigning them to the respective mode.
+ (TeX-mode-menu): Removed.
+ (plain-TeX-mode-command-menu): New menu utilizing
+ `TeX-mode-specific-command-menu'.
+ (LaTeX-mode-command-menu): New menu utilizing
+ `TeX-mode-specific-command-menu'.
+ (LaTeX-mode-map): Removed key definition for `TeX-mode-menu'.
+
+ * tex-fptex.el (TeX-command-list): Added symbols to command
+ definitions needed for assigning them to the respective mode.
+ Changed `LaTeX PDF' to `PDFLaTeX'.
+
+ * tex-mik.el (TeX-command-list): Ditto.
+
+ * doc/changes.texi: Mention the change to a mode-specific command
+ menu and the need for the deletion of any former customization of
+ `TeX-command-list'.
+
+2004-01-03 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * tex.el (TeX-mode-map): Use `C-c -' as a key binding for
+ `TeX-master-file-ask' as `C-c !' is already used in `context.el'.
+
+2004-01-02 David Kastrup <dak@gnu.org>
+
+ * latex.el (LaTeX-left-comment-regexp)
+ (LaTeX-right-comment-regexp, LaTeX-ignore-comment-regexp): revert
+ an inadvertant change two checkins ago. I was just experimenting
+ with something that did not yet work (as if the original did) and
+ did not intend checking it in.
+
+2003-12-30 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * tex.el (TeX-master-file): Added new parameter `ask' which is
+ to be used if the user shall be asked when the function is
+ called. Took out the code which provides the functionality for
+ asking the respective question and added it to the newly created
+ function `TeX-master-file-ask'.
+ (TeX-master-file-ask): New function.
+ (TeX-local-master-p): New function.
+ (tex-mode): Removed the call of `TeX-master-file' via the hook
+ `hack-local-variables-hook'.
+ (VirTeX-common-initialization): Added the call to
+ `TeX-master-file' via the hook `find-file-hooks'. Additionally
+ `TeX-update-style' will be called to activate the respective style
+ files.
+ (TeX-mode-map): Added key binding for calling
+ `TeX-master-file-ask'. This is a temporary solution.
+ (TeX-mode-menu): Took out redundant entry for `TeX-home-buffer'.
+ Added entry "Set Master File" for `TeX-master-file-ask'. Grouped
+ menu entries relevant for multifile handling.
+
+ * latex.el (LaTeX-mode-menu): Changed analogously to
+ `TeX-mode-menu'.
+
+2003-12-29 David Kastrup <dak@gnu.org>
+
+ * latex.el: Fix AUCTeX URL.
+ (LaTeX-fill-paragraph): Skip from inline comments to either line
+ comments or something that is not merely an inline comment. I am
+ not even sure that this skipping makes good sense, in particular
+ since it is followed by `forward-paragraph'.
+ (LaTeX-common-initialization): Change the definitions of
+ `paragraph-start' and `paragraph-separate' to something that
+ makes things like `forward-paragraph' and its ilk behave more
+ sensibly when in comments. The previous behavior is just awful,
+ and caused a lot of inadvertant damage when using things like
+ `fill-paragraph' within comments.
+ (LaTeX-common-initialization): Remove syntax error, sorry.
+
+2003-12-29 David Kastrup <dak@gnu.org>
+
+ * latex.el: Fix AUCTeX URL.
+ (LaTeX-fill-paragraph): Skip from inline comments to either line
+ comments or something that is not merely an inline comment. I am
+ not even sure that this skipping makes good sense, in particular
+ since it is followed by `forward-paragraph'.
+ (LaTeX-common-initialization): Change the definitions of
+ `paragraph-start' and `paragraph-separate' to something that
+ makes things like `forward-paragraph' and its ilk behave more
+ sensibly when in comments. The previous behavior is just awful,
+ and caused a lot of inadvertant damage when using things like
+ `fill-paragraph' within comments.
+
+2003-12-26 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * style/scrbase.el (TeX-add-symbols): Remove redundant entries.
+
+ * style/scrlttr2.el (TeX-add-symbols): Remove redundant entry.
+
+ * style/scrpage2.el: Remove unnecessary coding cookie and text in
+ introductory comment.
+
+2003-08-02 Mike Sperber <mike@xemacs.org>
+
+ * latex.el (latex-mode): Really turn off filladapt. It just
+ doesn't work with `LaTeX-fill-paragraph'.
+
+2003-12-02 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * tex.el (tex-mode): Let `TeX-master-file' be called upon opening
+ a file. This shall restore the behaviour before the last change
+ regarding the question for `TeX-master'. Thanks to Peter
+ Galbraith for setting the patch right.
+
+2003-11-28 David Kastrup <dak@gnu.org>
+
+ * tex.el (LaTeX-update): Advice removed because of the following:
+
+ * latex.el (LaTeX-menu-update): Now called via :filter predicate
+ of menus.
+
+2003-11-27 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * style/paralist.el: Removed coding cookie in first line.
+ Removed obsolete comment regarding placement of file.
+ (LaTeX-paralist-env-item-opt-label): Renamed from
+ `pl-LaTeX-env-item-opt-label' and changed references accordingly.
+ Added docstring.
+ Let `itemize' and `enumerate' environments use this function.
+ Thanks to Reiner Steib for these suggestions.
+
+2003-11-26 Reiner Steib <Reiner.Steib@gmx.de>
+
+ * latex.el (LaTeX-section-label): Added "part" and
+ "subsubsection". Sync "chapter" with fancyref.sty.
+
+ * style/fancyref.el ("fancyref"): Added font-lock keywords.
+
+2003-11-25 Reiner Steib <Reiner.Steib@gmx.de>
+
+ * latex.el (LaTeX-math-default): Added greek \var... symbols.
+ (LaTeX-common-initialization): Removed "SLiTeX", added spacing
+ commands and "appendix".
+
+ * font-latex.el (font-latex-match-function-keywords): Added
+ spacing commands, "nonumber", "centering", "TeX", and "LaTeX".
+ (font-latex-match-textual-keywords): Added textsuperscript.
+
+2003-11-17 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * Makefile.in (STYLESRC): Added scrpage2.el.
+
+2003-11-17 Peter S Galbraith <psg@debian.org>
+
+ * font-latex.el (font-latex-keywords-2): Had forgotten to set
+ LAXMATCH on all title matches. Thanks to Ralf Angeli for
+ reporting the bug.
+
+ * bib-cite.el (bib-cite-file-directory-p): New functions. I had
+ introduced a call to code from ff-paths.el by mistake.
+
+2003-11-17 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * style/scrbase.el (TeX-add-style-hook): Added further symbols to
+ `TeX-add-symbols' and rearranged them alphabetically.
+ Added macros with parameters to
+ `font-latex-match-<type>-keywords-local'.
+ Added `addsec' and `addpart' to
+ `font-latex-match-title-<num>-keywords-local'.
+
+ * style/scrbook.el (TeX-add-style-hook): Analogous.
+
+ * style/scrlttr2.el (TeX-add-style-hook): Analogous.
+
+ * style/scrreprt.el (TeX-add-style-hook): Analogous.
+
+ * style/scrpage2.el: New file.
+
+2003-11-16 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * tex.el (VirTeX-common-initialization): Disabled lines which set
+ `comment-add' to 1 to restore commenting with a single `%'.
+ (TeX-un-comment-region): Function code removed and function name
+ mapped to `comment-dwim'.
+ (TeX-un-comment): Allow searching for commented lines with
+ potential white space at the beginning.
+ (TeX-comment-paragraph): Partially rewritten to allow it to be
+ used for both commenting and uncommenting.
+ (TeX-in-commented-line): New function used in
+ `TeX-comment-paragraph'.
+
+ * doc/auc-tex.texi (Commenting): Reflect changes in `tex.el'.
+
+2003-11-13 Ralf Angeli <angeli@iwi.uni-sb.de>
+
+ * style/paralist.el: New file.
+
+ * Makefile.in (STYLESRC): Added paralist.el.
+
+2003-10-18 Peter S Galbraith <psg@debian.org>
+
+ * font-latex.el: checkdoc cleaning (almost clean now).
+
+2003-09-18 Peter S Galbraith <psg@debian.org>
+
+ * font-latex.el (font-latex-quotes): New defcustom to fontify
+ either french or german quotes.
+ (font-latex-quote-regexp-beg): New variable. Holds the regexp to
+ match the beginning of a quote.
+ (font-latex-quote-end-list): New variable. Holds the list of
+ strings to end a matched quote.
+ (font-latex-match-quotation): Fixed to use above variables.
+
+2003-09-18 Peter S Galbraith <psg@debian.org>
+
+ * bib-cite.el: bib-cite-aux-inputs: new defcustom.
+ Minor code cleanup for `match-string'.
+
+2003-09-15 Reiner Steib <Reiner.Steib@gmx.de>
+
+ * tex.el (TeX-master-file): Fix 'shared case.
+ Tiny patch from Shiro Takeda <zbc08106@park.zero.ad.jp>.
+
+2003-09-08 Peter S Galbraith <psg@debian.org>
+
+ * bib-cite.el: Ripping out off-topic imenu code.
+
+2003-09-07 Peter S Galbraith <psg@debian.org>
+
+ * font-latex.el: Bug fix when font-lock-multiline is set to t.
+
+2003-08-21 Reiner Steib <Reiner.Steib@gmx.de>
+
+ * Changelog: Added coding cookie.
+
+ * doc/Makefile.in (install): Check if auctex-* exists. Needed
+ because default split size changed in texinfo 4.6.
+
+2003-07-25 Peter S Galbraith <psg@debian.org>
+
+ * font-latex.el: Make & highlighted in font-latex-warning-face.
+ Better document font-latex-match-*-keywords-local variables.
+
+2003-07-20 Masayuki Ataka <ataka@milk.freemail.ne.jp>
+
+ * configure.in: Use mule support check.
+
+ * Makefile.in (CONTRIB_MULE, COMPILE_MULE, CONTRIB_MULEELC): New macros.
+ (contrib): Compile CONTRIB and COMPILE_MULE.
+ (install-contrib): Install CONTRIB_MULE and CONTRIB_MULEELC, too.
+
+ * aclocal.m4 (EMACS_CHECK_MULE): Check (X)Emacs mule supported.
+
+ * Makefile.in (clean): Remove Emacs auto-save files. Remove elc
+ files in the current and style directory.
+
+2003-06-21 Masayuki Ataka <ataka@milk.freemail.ne.jp>
+
+ * Makefile.in: Delete trailing whitespaces.
+
+ * tex.el (TeX-near-bobp): Undo last change.
+
+ * tex-jp.el: Fix some document.
+ (AUCTeX-jp): New custom group.
+ (japanese-TeX-command-default, japanese-LaTeX-command-default)
+ (japanese-LaTeX-default-style, japanese-LaTeX-style-list):
+ Support for defcustoms.
+
+2003-06-14 David Kastrup <dak@gnu.org> (tiny patch from Stephen Gildea)
+
+ * tex.el (TeX-auto-untabify): Change default to nil.
+
+ * doc/auc-tex.texi (Parsing Files): document this.
+
+2003-06-07 David Kastrup <dak@gnu.org>
+
+ * tex.el (TeX-lisp-directory, TeX-auto-global, TeX-style-global)
+ (TeX-auto-local, TeX-style-local, TeX-macro-private)
+ (TeX-load-style, TeX-parse-path, TeX-run-style-hooks)
+ (TeX-auto-write, TeX-auto-generate, TeX-auto-generate-global)
+ (TeX-ignore-file, TeX-search-files): try catering with Windows
+ file names.
+ (TeX-directory-absolute-p): removed, since file-name-absolute-p
+ serves the same purpose.
+
+2003-06-06 Jan-…ke Larsson <jalar@mai.liu.se>
+
+ * Makefile.in: Added datadir
+
+2003-06-05 Masayuki Ataka <ataka@milk.freemail.ne.jp>
+
+ * latex.el (LaTeX-env-label): Toggle off input method when
+ entering math mode.
+ * style/amsmath.el (LaTeX-amsmath-env-alignat)
+ (LaTeX-amsmath-env-aligned): Ditto.
+
+ * tex.el (TeX-toggle-off-input-method): Removed interactive.
+ (TeX-math-input-method-off): New function.
+ (TeX-insert-dollar): Use it. Do not call function
+ TeX-toggle-off-input-method directly.
+
+2003-06-03 Masayuki Ataka <ataka@milk.freemail.ne.jp>
+
+ * tex.el (TeX-macro): Set group 'AUCTeX.
+
+2003-06-03 David Kastrup <dak@gnu.org>
+
+ * latex.el (LaTeX-mode-menu): Replace "Change Font" with "Replace
+ Font"
+
+ * tex-info.el (TeXinfo-mode-menu): Same here.
+
+ * doc/tex-ref.tex (section{Font Selection}): Same here.
+
+2003-06-03 Masayuki Ataka <ataka@milk.freemail.ne.jp>
+
+ * tex.el (TeX-math-toggle-off-input-method): New user option.
+ (TeX-toggle-off-input-method): New function.
+ (TeX-insert-dollar): Use it.
+
+2003-06-02 Masayuki Ataka <ataka@milk.freemail.ne.jp>
+
+ * tex.el (TeX-near-bobp): Fixed typo in doc-string.
+
+2003-05-27 Piet van Oostrum <piet@cs.uu.nl>
+
+ * latex.el (LaTeX-auto-minimal-regexp-list): Changed regexp to
+ allow \documentclass[]{someclass}.
+
+2003-05-02 Patrick Gundlach <patrick@gundla.ch>
+
+ * context.el: ConTeXt-environment can now modify the current
+ environment. Added preliminary functionality for calling a
+ function on an environment. ConTeXt-mark-environment,
+ ConTeXt-find-matching-stop and ConTeXt-find-matching-start
+ (similar to the ones in latex.el) added.
+
+2003-04-15 Reiner Steib <Reiner.Steib@gmx.de>
+
+ * doc/wininstall.texi: Fixed typos in configure options.
+
+2003-04-15 Patrick Gundlach <patrick@gundla.ch>
+
+ * tex.el (TeX-command-list): Changed %v to %V in View. Now
+ TeX-output-view-style is used for setting viewer preferences. See
+ changes from 2003-02-06 below.
+
+2003-04-15 Reiner Steib <Reiner.Steib@gmx.de>
+
+ * .cvsignore: Added INSTALL and INSTALL.windows
+
+ * Makefile.in (STYLESRC): Added captcont.el and subfigure.el
+
+2003-04-15 Jan-…ke Larsson <jalar@mai.liu.se>
+
+ * doc/wininstall.texi: Corrected download info for GNU Emacs
+
+2003-04-14 Peter S Galbraith <psg@debian.org>
+
+ * font-latex.el (font-latex-match-*-keywords): New user
+ customizable variables to add fontification keywords.
+ See `M-x customize-group [RET] font-latex'.
+ (font-latex-match-*-keywords-local): New buffer-local variables to
+ be used by elisp style file writers.
+ (font-latex-match-*-keywords-set): Support for defcustoms.
+ (font-latex-match-*-make): Build the actual font-lock variables
+ from the `font-latex-match-*-keywords' defcustoms.
+
+2003-04-14 David Kastrup <dak@gnu.org>
+
+ * doc/install.texi (Customizing): hilit-LaTeX.el deleted.
+
+2003-04-14 Jan-…ke Larsson <jalar@mai.liu.se>
+
+ * autogen.sh: Generate INSTALL and INSTALL.windows
+
+ * doc/Makefile.in: Use the configure compatibility test results
+
+ * doc/macros.texi: Compatibility macros, initial version
+
+ * configure.in: Do the makeinfo tests, for compatibility with
+ texinfo 3.12, test for tex
+
+ * doc/install.texi: Changed to document the autoconf stuff
+
+ * doc/wininstall.texi: Added
+
+2003-04-10 David Kastrup <dak@gnu.org>
+
+ * tex.el (AUCTeX): Fix URLs.
+
+ * context.el: Fix AUCTeX URL.
+ Make modification date RCS tag.
+
+2003-04-09 Patrick Gundlach <patrick@gundla.ch>
+
+ * tex.el (TeX-command-list): Changed ConTeXt Clean from purge to
+ purgeall; I guess this behaves as users would expect.
+
+ * context.el: minor cleanups, switched to the name "AUCTeX" where
+ not done yet. Made ConTeXt-add-environments able to
+ byte-compile. Added new copyright statement.
+
+ * Makefile.in: Added context.el(c)
+
+2003-04-09 Jan-…ke Larsson <jalar@mai.liu.se>
+
+ * aclocal.m4: More sane emacs-macro path-searching.
+
+2003-04-07 David Kastrup <dak@gnu.org>
+
+ * tex.el (TeX-kpathsea-directory-alist): Fix bad kpathsea
+ searchpath name for LaTeX files.
+
+2003-04-03 Jan-…ke Larsson <jalar@mai.liu.se>
+
+ * aclocal.m4: Make the emacs-macro path-searching tests run, and
+ make EMACS_PROG_EMACS fail gracefully when no binary executable is
+ found.
+
+
+2003-03-29 David Kastrup <dak@gnu.org>
+
+ * tex-buf.el (TeX-run-discard): Use `call-process' instead of
+ `start-process' in order to completely detach a process.
+ (TeX-region-extra): Make empty by default since code was not
+ working with plain or ConTeXt.
+
+2003-03-24 Masayuki Ataka <ataka@milk.freemail.ne.jp>
+
+ * Makefile.in (CONTRIB): Remove hilit-LaTeX.el because it is
+ obsolete.
+ (contrib): Remove compile code for hilit-LaTeX.el.
+
+2003-03-13 David Kastrup <dak@gnu.org>
+
+ * style/german.el (LaTeX-german-quote-after-quote)
+ (LaTeX-german-open-quote, LaTeX-german-close-quote): New
+ variables to initialize quote stuff from. If you set these in
+ file local variables, they will propagate accordingly to
+ `TeX-quote-after-quote' et al.
+
+ * style/ngerman.el (LaTeX-german-quote-after-quote)
+ (LaTeX-german-open-quote, LaTeX-german-close-quote): the same.
+
+2003-02-25 David Kastrup <dak@gnu.org>
+
+ * Makefile.in (dist): Version info in tex.el gets automatically
+ calculated from CVS tags.
+
+ * tex.el: Some changes for dir slashiness.
+ (TeX-master-directory): return a proper directory name, not a
+ file name.
+
+ * tex-buf.el (TeX-quote-filename): Return the changed file!
+ Yikes! How could this ever have worked?
+
+2003-02-24 David Kastrup <dak@gnu.org>
+
+ * tex.el (AUCTeX-version): Generate automatically from CVS
+ variables.
+ (TeX-master-directory): somewhat more defensive version (final
+ goal is to be able to make a TeX minor mode).
+
+2003-02-22 David Kastrup <dak@gnu.org>
+
+ * tex-wizard.el: A first sketch of the idea.
+
+2003-02-17 Piet van Oostrum <piet@cs.uu.nl>
+
+ * tex.el (TeX-arg-literal): Remove illegal and superfluous &optional.
+
+ * latex.el (TeX-arg-free): Remove illegal and superfluous &optional.
+
+2003-02-17 David Kastrup <dak@gnu.org>
+
+ * font-latex.el (font-latex-find-matching-close): Remove a very
+ complicated way of doing nothing since the byte compiler warns
+ about it.
+
+2003-02-15 David Kastrup <dak@gnu.org>
+
+ * tex.el (LaTeX): Change :prefix field to LaTeX.
+ (TeX-auto-add-type): Make more readable and place doc string
+ indicating the origin into generated functions.
+
+ * font-latex.el (font-latex-setup): Try to behave better when the
+ interesting newlines in verbatim environments get moved.
+ Probably not the ultimate solution.
+
+ * tex-site.el: AUC TeX to AUCTeX, new header.
+
+ * Makefile.in: AUC TeX to AUCTeX.
+
+ * latex.el: AUC TeX to AUCTeX, new header.
+
+ * tex-buf.el (TeX-quote-filename): New function.
+ (TeX-region-create): Use it so that Windows can talk about its
+ master files properly.
+ (TeX-help-error): Try not to have "log file has changed"
+ messages. AUC TeX to AUCTeX, new header.
+
+ * tex.el: AUC TeX to AUCTeX, new header.
+
+ * auc-old.el: AUC TeX to AUCTeX, new header.
+
+ * README.CVS: Check in a first version. Ok, it currently
+ contains a few lies, but the basics are not wrong, and hopefully
+ we will have soon what it takes to make it true.
+
+ * doc/auc-tex.texi: Name change of AUC TeX to AUCTeX. A few
+ other cleanups.
+
+ * configure.in, Makefile.in, doc/Makefile.in: everything moves to
+ autoconf, fix a few things.
+
+ * Makefile, doc/Makefile: deleted.
+
+2003-02-14 Patrick Gundlach <patrick@gundla.ch>
+
+ * context.el: Added basic environment support (insert-envrionment
+ and close-environment). Added basic interface support.
+
+ * tex.el, latex.el : moved TeX-arg-literal and TeX-near-bopb from
+ latex.el to tex.el. More will follow.
+
+2003-02-13 David Kastrup <dak@gnu.org>
+
+ * Makefile.in (clean): Remove .elc files.
+ (distclean): new target.
+
+ * aclocal.m4 (EMACS_EXAMINE_PACKAGEDIR): make this work properly
+ more or less.
+ (EMACS_CHECK_AUCTEX): use auctexdir instead of AUCTEXDIR (synch
+ with preview-latex aclocal.m4) and strip trailing slash.
+
+2003-02-11 Peter S Galbraith <psg@debian.org>
+
+ * hilit-LaTeX.el: Removed. It's obsolete. Use font-latex.el instead.
+
+2003-02-11 Patrick Gundlach <patrick@gundla.ch>
+
+ * tex.el (TeX-command-list): Changed TeX-run-LaTeX to
+ TeX-run-TeX.
+
+ * tex-buf.el (TeX-run-TeX): TeX-run-TeX gets the
+ TeX-sentinel-function from the major mode, so TeX-run-LaTeX and
+ alike won't be needed if they don't need to do something
+ fancy. Defaliased TeX-run-LaTeX to TeX-run-TeX.
+ (TeX-run-interactive): Uses TeX-sentinel-default-function
+ instead of TeX-sentinel-function.
+
+ * latex.el (latex-mode): Sets TeX-sentinel-default-function
+ instead of TeX-sentinel-function.
+
+ * tex-mik.el (TeX-command-list): Changed TeX-run-LaTeX to
+ TeX-run-TeX.
+
+ * tex-fptex.el (TeX-command-list): Changed TeX-run-LaTeX to
+ TeX-run-TeX.
+
+2003-02-08 Patrick Gundlach <patrick@gundla.ch>
+
+ * tex-site.el: Added simple ConTeXt support.
+
+ * latex.el (latex-mode): Added explicit set of
+ TeX-sentinel-function to be used in TeX-run-interactive.
+
+ * tex-buf.el: Added TeX-run-ConTeXt. Removed explicit call to
+ TeX-LaTeX-sentinel in TeX-run-interactive. The sentinel-function
+ is now inherited from the buffer calling
+ TeX-run-interactive. Hopefully this won't break anything.
+
+ * tex.el: Adapted TeX-command-list for ConTeXt
+ support. Interfaces for texexec and texutil added. Nonstopmode
+ (texexec) and purge (texutil) won't work right with current
+ ConTeXt versions. This will be fixed in ConTeXt versions later
+ than Feb 2003.
+
+ * context.el: basic support for ConTeXt added. New
+ sentinel-functiont that is different from the LaTeX one.
+
+
+2003-02-08 pvoostrum <pvoostrum@nono.cs.uu.nl>
+
+ * tex.el: Added missing semicolon in TeX-command-output-list.
+
+ * tex.el: Changed defcustom to defvar.
+
+2003-02-08 Piet van Oostrum <piet@cs.uu.nl>
+
+ * tex.el (TeX-output-extension, TeX-view-extension): Changed
+ defcustom into defvar, as these are intermediate variables.
+
+2003-02-07 Piet van Oostrum <piet@cs.uu.nl>
+
+ * tex.el (TeX-command-output-list): Corrected customization widget.
+
+2003-02-06 Piet van Oostrum <piet@cs.uu.nl>
+
+ * tex-buf.el
+ (TeX-save-document, TeX-command-query)
+ (TeX-output-style-check, TeX-run-format, TeX-TeX-sentinel-check):
+ Added support for pdftex (and others)
+ (TeX-run-set-command, TeX-output-extension)
+ (TeX-view-extension, TeX-view-output-file): new functions.
+
+ * tex.el (TeX-output-extension, TeX-view-extension)
+ (TeX-output-view-style, TeX-command-output-list): new variables
+ (TeX-expand-list): adapted for pdf output.
+
+2003-01-31 Jan-…ke Larsson <jalar@mai.liu.se>
+
+ * configure.in: Use new lispdir check.
+
+ * aclocal.m4: Some cleaning of macro names. Windows quoting by
+ David Kastrup <dak@gnu.org>. Also, lispdir now checks (x)emacs
+ load-path instead of physical disk content.
+
+ * Makefile.in: Fix infodir
+
+2003-01-30 Piet van Oostrum <piet@cs.uu.nl>
+
+ * tex-buf.el (TeX-parse-error): Exclude { and } from filenames to
+ improve parsing of error messages from pdftex.
+
+2003-01-24 Reiner Steib <Reiner.Steib@gmx.de>
+
+ * tex.el (TeX-kpathsea-path-delimiter, TeX-search-files-kpathsea):
+ Fixed braces.
+
+2003-01-22 David Kastrup <dak@gnu.org>
+
+ * tex.el (TeX-search-files): Check in first version of kpathsea
+ support. This implementation does not yet cooperate properly
+ with TeX-auto-generate-*
+
+2003-01-18 David Kastrup <dak@gnu.org>
+
+ * configure.in: Announce AUC TeX, not preview.
+
+2003-01-16 Reiner Steib <Reiner.Steib@gmx.de>
+
+ * style/varioref.el ("varioref"): Fixed typo.
+
+ * Makefile.in (ELCC): `-no-init-file' is the same as `-q'
+
+2003-01-15 Jan-Ake Larsson <jalar@mai.liu.se>
+
+ * configure.in, aclocal.m4: Compatibility fix
+
+ * aclocal.m4 (AC_PROG_EMACS): New. File is now identical to that
+ of preview-latex.
+
+ * configure.in: Use it
+
+2003-01-08 Jan-Ake Larsson <jalar@mai.liu.se>
+
+ * Makefile.in: From Makefile
+
+ * configure.in, aclocal.m4, autogen.sh: Initial version
+
+ * mkinstalldirs, install-sh: Prepare for autoconf
+
+2002-12-29 David Kastrup <David.Kastrup@t-online.de>
+
+ * tex.el: Add support for Info-goto-emacs-command-node and
+ similar.
+
+2002-12-19 David Kastrup <David.Kastrup@t-online.de>
+
+ * tex-buf.el (TeX-home-buffer): Don't home to deleted buffers.
+
+ * tex.el (TeX-command-list): Change single quotes to double.
+ That way, we will get reasonable results under both Windows and
+ Unix. File names with double quotes in them will break stuff,
+ just like file names with single quotes in them did so
+ previously. Tough.
+
+2002-12-18 David Kastrup <David.Kastrup@t-online.de>
+
+ * tex-buf.el (TeX-run-shell): Start shell from TeX process buffer
+ in order to inherit environment from there (like cwd).
+ (TeX-run-discard): Same here.
+ (TeX-run-shell, TeX-run-discard): Rather let default-directory
+ temporarily: we may not have a TeX process buffer!
+
+2002-12-17 Masayuki Ataka <ataka@milk.freemail.ne.jp>
+
+ * all.el: Removed. unrelated to TeX mode.
+ OBSOLETE files (all.el, auc-menu.el, maniac.el, and outln-18.el)
+ are available at:
+ <ftp://ftp.dina.kvl.dk/pub/Staff/Per.Abrahamsen/auctex/>
+
+2002-12-15 David Kastrup <David.Kastrup@t-online.de>
+
+ * Makefile (dist): Correct zip file name.
+
+2002-12-15 Masayuki Ataka <ataka@milk.freemail.ne.jp>
+
+ * Makefile (MINMAPSRC): Remove auc-menu.el, maniac.el, and
+ outln-18.el.
+
+2002-12-15 David Kastrup <David.Kastrup@t-online.de>
+
+ * auctex.spec (Release): Well, change version number. retag.
+
+ * Version 11.14 released.
+
+2002-12-15 Masayuki Ataka <ataka@milk.freemail.ne.jp>
+
+ * auc-menu.el: Removed. Taken into Emacs and unused.
+
+ * maniac.el: Ditto.
+
+ * outln-18.el: Ditto.
+
+2002-12-15 David Kastrup <David.Kastrup@t-online.de>
+
+ * Makefile: some changes for my setup.
+
+2002-12-14 David Kastrup <David.Kastrup@t-online.de>
+
+ * graphicsx.el: removed. superseded by graphicx.el and unused.
+
+2002-12-13 Reiner Steib <Reiner.Steib@gmx.de>
+
+ * latex.el (LaTeX-label): Added completing for labels. Avoid
+ inserting an empty label.
+
+2002-12-12 Reiner Steib <Reiner.Steib@gmx.de>
+
+ * style/amsopn.el ("amsopn"): Added \operatorname.
+
+2002-12-12 David Kastrup <David.Kastrup@t-online.de>
+
+ * doc/auc-tex.texi (top): Change "version 12" to "almost 12".
+ This is beta, after all.
+
+2002-12-12 Masayuki Ataka <ataka@milk.freemail.ne.jp>
+
+ * tex-jp.el (japanese-LaTeX-style-list): Remove styles overlapped
+ with LaTeX-style-list. Append values to LaTeX-style-list instead
+ of overwriting.
+ (japanese-latex-mode-initialization): Do not overwrite
+ LaTeX-style-list.
+
+2002-12-11 Reiner Steib <Reiner.Steib@gmx.de>
+
+ * bib-cite.el: Updated URLs.
+
+ * doc/intro.texi: Ditto.
+
+ * font-latex.el: Ditto.
+
+ * latex.el: Ditto.
+
+ * tex.el: Ditto.
+
+ * style/amsmath.el (LaTeX-amsmath-label): Improved doc-string.
+
+ * doc/auc-tex.texi (Equations): New @subsection documenting
+ LaTeX-equation-label, LaTeX-eqnarray-label and LaTeX-amsmath-label.
+
+2002-12-11 Masayuki Ataka <ataka@milk.freemail.ne.jp>
+
+ * tex-jp.el (japanese-LaTeX-default-style)
+ (japanese-LaTeX-style-list): remove buffer-local declarations
+ where they don't make sense.
+
+2002-12-10 David Kastrup <David.Kastrup@t-online.de>
+
+ * doc/changes.texi: Some more news.
+
+ * doc/auc-tex.texi: Start talking about version 12 (which will be
+ the next stable release).
+ (European): Talk a bit about LaTeX2e stuff, and don't talk about
+ too ancient XEmacsen. Also mention X-Symbol.
+
+ * doc/Makefile (install): Create infodir if not existent.
+
+2002-12-10 Reiner Steib <Reiner.Steib@gmx.de>
+
+ * font-latex.el (font-latex-match-textual): Fixed typo in doc-string.
+
+ * latex.el (LaTeX-section-label): Fixed typos in doc-string.
+
+2002-12-10 David Kastrup <David.Kastrup@t-online.de>
+
+ * latex.el (LaTeX-label): Fix a thinko/type where label would be
+ non-nil in cases where a label should not be asked for.
+
+2002-12-10 Reiner Steib <Reiner.Steib@gmx.de>
+
+ * style/amsmath.el (LaTeX-amsmath-label): New variable.
+ ("amsmath"): Add environments to LaTeX-label-alist.
+
+2002-12-10 Masayuki Ataka <ataka@milk.freemail.ne.jp>
+
+ * tex-jp.el: Remove if statement for Emacs 19.
+ Fix lots of white spaces.
+
+2002-12-09 David Kastrup <David.Kastrup@t-online.de>
+
+ * latex.el (LaTeX-optop, LaTeX-optcl, LaTeX-default-options,
+ LaTeX-figure-label, LaTeX-table-label, LaTeX-equation-label,
+ LaTeX-eqnarray-label, LaTeX-style-list): remove buffer-local
+ declarations where they don't make sense.
+
+2002-12-09 Reiner Steib <Reiner.Steib@gmx.de>
+
+ * latex.el (LaTeX-style-list): Added some supported classes.
+ Fixed a typo.
+
+ * style/amsmath.el ("amsmath"): environment "xxalignat*" doesn't
+ exist.
+ (LaTeX-amsmath-env-alignat): environment "xxalignat" should not
+ get a \label.
+
+ * Makefile (BATCH): Added `-no-site-file' to batch options.
+
+2002-12-07 David Kastrup <David.Kastrup@t-online.de>
+
+ * font-latex.el (font-latex-setup): Better stab at verbatim
+ handling.
+
+ * tex-buf.el (TeX-region-create): Make file name in !name
+ messages relative to master file directory.
+
+2002-12-06 David Kastrup <David.Kastrup@t-online.de>
+
+ * latex.el: Lots of doc fixes/white space. Did the mistake of
+ running checkdoc. Not clean yet, but different.
+ (LaTeX-label-alist): New buffer-local variable for label prefixes
+ lookup.
+ (LaTeX-label): Use it.
+
+2002-11-25 David Kastrup <David.Kastrup@t-online.de>
+
+ * latex.el (TeX-arg-define-index): correct typo.
+
+2002-11-25 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * Version 11.13 released.
+
+2002-11-25 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * tex.el: Fixed CVS merge error.
+
+ * Version 11.12 released.
+
+2002-10-28 David Kastrup <David.Kastrup@t-online.de>
+
+ * Makefile (prefix): Revert accidental change to
+ /usr/local/emacs-21 (sorry folks).
+
+2002-10-26 David Kastrup <David.Kastrup@t-online.de>
+
+ * Makefile (STYLESRC): Add style/scrlttr2.el
+
+2002-10-26 Mark Trettin <Mark.Trettin@gmx.de>
+
+ * style/scrbase.el: Added optional Argument "Pagenumber" to
+ \maketitle. Changed \textsubscript from `t' to "Text".
+
+ * style/scrlttr2.el: Initial version.
+
+ * style/scrbase.el: Added additional clearpage commands:
+ \cleardoublestandardpage \cleardoubleplainpage and
+ \cleardoubleemptypage
+
+2002-10-24 Masayuki Ataka <ataka@milk.freemail.ne.jp>
+
+ * latex.el (LaTeX-env-contents): New function.
+ (LaTeX-common-initialization): Added 26 LaTeX commands, 2 LaTeX2e
+ environments, and 41 LaTeX2e commands.
+
+2002-10-08 David Kastrup <David.Kastrup@t-online.de>
+
+ * style/scrreprt.el, style/scrbase.el, style/scrartcl.el,
+ style/scrbook.el: header comments refer to COPYING.
+
+2002-10-02 David Kastrup <David.Kastrup@t-online.de>
+
+ * Makefile (STYLESRC): Add compilation targets for Komascript
+ support.
+
+ * Check in Komascript support by Mark Trettin. See below.
+
+2002-09-28 Mark Trettin <Mark.Trettin@gmx.de>
+
+ * scrbase.el:
+ First attempt on implementing the `captionbeside'-Environment. I'm not
+ really satisfied by now.
+
+2002-09-27 Mark Trettin <Mark.Trettin@gmx.de>
+
+ * scrreprt.el, scrbook.el: Reformatted code.
+
+ * scrbase.el:
+ Fixed Typos in comments and escape characters in function docstrings.
+ Thanks to Reiner Steib.
+ Reformatted code.
+
+ * scrbase.el:
+ Changed `uppertitleback', `lowertitleback' from asking to just `t'
+
+ * scrbase.el:
+ Changed `addpart', `addsec' and `minisec' from Macro to sectioning
+ command.
+
+ * scrreprt.el, scrbook.el:
+ Changed `addchap' from Macro to sectioning command.
+
+2002-09-26 Mark Trettin <Mark.Trettin@gmx.de>
+
+ * scrartcl.el: LaTeX-section-list removed.
+
+ * scrartcl.el: Initial version. Testing LaTeX-section-list.
+
+ * scrbase.el: Initial version of the base file.
+
+ * scrreprt.el, scrbook.el: Initial version.
+
+ * scrbook.el, scrbase.el, scrreprt.el, scrartcl.el:
+
+2002-09-22 David Kastrup <David.Kastrup@t-online.de>
+
+ * tex.el: Apply spelling fixes from "Davide G. M. Salvetti"
+ <salve@debian.org> to tex.el.
+
+2002-03-24 David Kastrup <David.Kastrup@t-online.de>
+
+ * tex-buf.el (TeX-parse-TeX): Make subordinate files without
+ major mode default to that of the calling file when doing error
+ processing.
+
+2002-03-21 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * tex-site.el (eamcs-major-version): Changed if to when.
+ Suggested by Martin Thornquist <martint@ifi.uio.no>.
+
+2002-03-15 David Kastrup <David.Kastrup@t-online.de>
+
+ * tex.el (TeX-master-file): Don't make C-c ` bomb out in files
+ like xxx.gls. Probably a more elaborate way would be to export
+ the TeX-master variable into files visited by error parsing.
+ Could be incorrect, however, if more than one file included them.
+
+2002-02-15 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * tex.el (TeX-auto-generate): Expand file name.
+ Suggested by "Dr. Mark A. Friedman" <DrMarkAFriedman@earthlink.net>.
+
+ * latex.el (LaTeX-common-initialization): Set
+ `fill-paragraph-function'.
+ (LaTeX-mode-map): Don't bind M-q.
+ Suggested by Nils Klarlund <klarlund@research.att.com>.
+
+ * tex.el (TeX-printer-list): Fixed spelling.
+ Reported by Nils Klarlund <klarlund@research.att.com>.
+
+2002-02-14 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * tex.el: Fixed some spelling errors.
+ Patch by "Davide G. M. Salvetti" <salve@debian.org>.
+
+2002-01-24 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * Version 11.11 released.
+
+2002-01-24 Masayuki Ataka <ataka@milk.freemail.ne.jp>
+
+ * tex.el (TeX-format-list): Support t(article|report|book) class file.
+ Reported by Atsuhito Kohda <kohda@pm.tokushima-u.ac.jp>
+
+ * tex-jp.el (japanese-TeX-command-list): Undo last change.
+ (LaTeX-command-style): Support t(article|report|book) class file.
+ (japanese-LaTeX-style-list): Ditto.
+ Reported by Atsuhito Kohda <kohda@pm.tokushima-u.ac.jp>
+
+2002-01-21 Peter S Galbraith <psg@debian.org>
+
+ * font-latex.el: Updated to V0.800.
+ Added font-lock-syntactic-keywords to font-lock-defaults to handle
+ verbatim environment, as suggested by Stefan Monnier 5 years ago (!)
+ * bib-cite.el: Updated to V3.17.
+ XEmacs has imenu after all.
+
+2002-01-21 Masayuki Ataka <ataka@milk.freemail.ne.jp>
+
+ * tex.el (TeX-format-list): Fix problem that AUC TeX switch to
+ JLATEX mode if the class file starts with the letter `j'.
+ Reported by Joe Reinhardt <jmr@everest.radiology.uiowa.edu>.
+
+ * tex-jp.el (LaTeX-command-style): Support js(article|book).
+
+2002-01-21 Atsuhito Kohda <kohda@pm.tokushima-u.ac.jp> (tiny change)
+
+ * tex-jp.el (japanese-TeX-command-list): Use `%l' instead
+ of [pj]latex command.
+
+2002-01-18 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * tex.el (LaTeX-command-style): Fix comment.
+ Reported by Atsuhito Kohda <kohda@pm.tokushima-u.ac.jp>
+ via. Debian.
+
+ * latex.el (LaTeX-outline-name): Allow longer names.
+ Reported by "Michael Soulier" <msoulier@nortelnetworks.com>
+ via. Debian.
+
+2001-12-22 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * latex.el (LaTeX-imenu-create-index-function): Strip text
+ properties.
+ Reported by Venkatesh Prasad Ranganath <rvprasad@@cis.ksu.edu>.
+
+2001-12-13 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * style/prosper.el: New file.
+ Contributed by Phillip Lord <p.lord@russet.org.uk>.
+ * Makefile (STYLESRC): Added it.
+
+2001-11-27 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * Version 11.10 released.
+
+2001-11-26 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * Version 11.09 released.
+
+2001-11-26 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * auc-old.el (insert-mode-line): Use `insert' instead of
+ `insert-string'.
+
+2001-10-27 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * latex.el (LaTeX-ignore-comment-regexp): Doc fix.
+ Reported by Reuben Thomas <rrt@sc3d.org>.
+
+2001-11-16 David Kastrup <David.Kastrup@t-online.de>
+
+ * tex-buf.el (TeX-process-check): We didn't catch the case where
+ during the question a different process got started in the
+ buffer. In that case, we just ask again.
+
+2001-11-06 David Kastrup <David.Kastrup@t-online.de>
+
+ * tex-buf.el (TeX-command-sentinel): insert post-mortem info
+ before any markers in order to keep markers/point at end of file.
+
+2001-11-02 Masayuki Ataka <ataka@milk.freemail.ne.jp>
+
+ * style/graphicx.el (TeX-arg-includegraphics): Accept prefix
+ argument and find all files. dvipdfm image file support.
+
+2001-10-19 Masayuki Ataka <ataka@milk.freemail.ne.jp>
+
+ * tex-jp.el (japanese-TeX-command-list): Fixed for mendex.
+ * doc/auc-tex.texi (Japanese): Doc fix.
+
+2001-10-17 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * Version 11.08 released.
+
+2001-10-17 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * doc/intro.texi, doc/install.texi: Updated contact info.
+ Reported by Henrik Holm <h.holm@spray.no>.
+
+2001-10-16 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * Version 11.07 released.
+
+2001-10-16 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * tex.el (VirTeX-common-initialization): Set `comment-add' in
+ order to get "%%" by default by comment region like Lisp mode.
+ Suggested by "Davide G. M. Salvetti" <salve@debian.org>.
+ Change `comment-indent-hook' to `comment-indent-function'.
+
+
+2001-10-15 Peter S Galbraith <psg@debian.org>
+
+ * font-latex.el: Remove self-installation to LaTeX-mode-hook now
+ that TeX-install-font-lock does it.
+
+2001-10-15 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * Version 11.06 released.
+
+2001-10-15 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * tex.el: Removed font lock support.
+ (TeX-install-font-lock): New option.
+ (VirTeX-common-initialization): Call it.
+
+ * tex-font.el: New file.
+
+2001-10-13 David Kastrup <David.Kastrup@t-online.de>
+
+ * tex-buf.el (TeX-current-offset): The number of things that can
+ go wrong for a simple task like determining the current line
+ number is simply amazing. count-lines skips over newlines in
+ intangible text-properties or overlays. Fixed for GNU Emacs,
+ don't know whether XEmacs has problems with it.
+
+2001-10-13 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * Version 11.05 released.
+
+2001-10-12 David Kastrup <David.Kastrup@t-online.de>
+
+ * tex-buf.el (TeX-run-command): Let the TeX-process-buffer acquire
+ a buffer-local value of TeX-command-buffer so that its sentinel
+ will still refer to the right buffer even if another compilation
+ has been started.
+ (TeX-run-interactive): Same here.
+ (TeX-process-check): Don't bomb out when user does not want to
+ kill a process that has died on its own in the meantime.
+
+2001-10-11 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * tex.el (TeX-auto-local, TeX-style-local): Doc fix: Mention that
+ these should be relative.
+ Suggested by <lanz+list@wsl.ch>.
+
+2001-10-09 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * Version 11.04 released.
+
+2001-10-09 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * tex.el (TeX-view-style): New option.
+ (TeX-expand-list): Use it.
+ (TeX-command-list): Use it.
+
+2001-10-05 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * Version 11.03 released.
+
+2001-10-05 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * style/amsmath.el ("amsmath"): More items.
+ Patch by Masayuki Ataka <ataka@milk.freemail.ne.jp>.
+
+2001-10-04 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * tex-buf.el (TeX-LaTeX-sentinel): Use `with-current-buffer'.
+
+ * tex-buf.el (TeX-LaTeX-sentinel): Use the value of
+ `TeX-command-BibTeX' in `TeX-command-buffer'.
+ Patch by Katsuaki KAWACHI <kawachi@cim.pe.u-tokyo.ac.jp>.
+
+ * tex-fptex.el: New file.
+ Contributed by Fabrice Popineau <Fabrice.Popineau@supelec.fr>.
+ * Makefile (CONTRIB): Added it.
+
+2001-10-04 Peter S Galbraith <psg@debian.org>
+
+ * multi-prompt.el (multi-prompt-next): fixed for emacs-21.
+ Use minibuffer-contents-no-properties to get minibuffer contents
+ if it exists.
+
+2001-10-03 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * Version 11.02 released.
+
+2001-10-03 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * latex.el (LaTeX-top-caption-list): New option.
+ (LaTeX-env-figure): Use it.
+ Patch by ataka@milk.freemail.ne.jp (Masayuki Ataka).
+
+ * style/graphicx.el (TeX-string-numberp): New function.
+ (TeX-arg-includegraphics): Call it.
+ Patch by ataka@milk.freemail.ne.jp (Masayuki Ataka).
+
+ * style/verbatim.sty: New file.
+ Contributed by ataka@milk.freemail.ne.jp (Masayuki Ataka).
+
+ * tex-info.el (texinfo-mode): Comment out cindex.
+ Reported by Kai.Grossjohann@CS.Uni-Dortmund.DE (Kai GroŸjohann)
+
+ * style/amsmath.el (LaTeX-item-equation, LaTeX-item-equations):
+ New functions.
+ ("amsmath"): Add new item types.
+ Patch by ataka@milk.freemail.ne.jp (Masayuki Ataka).
+
+2001-10-02 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * Version 11.01 released.
+
+2001-10-01 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * latex.el (LaTeX-submenu-name-format): Fixed spelling error.
+ Reported by Martin.Quinson@ens-lyon.fr.
+
+2001-10-01 David Kastrup <David.Kastrup@t-online.de>
+
+ * tex-buf.el (TeX-region-create):
+ Oops, broke more than I fixed. Offset calculation must be for the
+ line following the offset message. This worked before since we always
+ were in the middle of a line (only the offset calculation for the C-c
+ C-r command itself was definitely sometimes wrong). Corrected that.
+
+ * style/graphicx.el (TeX-arg-includegraphics):
+ Fixed an obvious typo complained about by the byte-compiler. checkdoc
+ removed a few spaces.
+
+ * auc-old.el (TeX-region): Correct offset calculation.
+
+ * tex.el (TeX-current-line):
+ Correct line number calculation when at beginning of line for %n
+ flag. Autoload TeX-current-offset for that if necessary.
+
+ * tex-buf.el (TeX-current-offset, TeX-command-region,
+ TeX-region-create):
+ Correct offset calculations when not at start of line. New function
+ TeX-current-offset for that.
+
+2001-04-11 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * Version 10.0g released.
+
+2001-04-11 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * tex-site.el: Don't enable tex-info.el by default.
+
+ * latex.el (LaTeX-hide-environment): Disabled by default.
+ Suggested by Christopher Allen <cpcallen@ruah.dyndns.org>.
+
+2001-03-27 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * Version 10.0f released.
+
+2001-03-27 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * tex.el (unless): Don't enable Emacs 21 font-lock for Emacs 20.
+ (VirTeX-common-initialization): Ditto.
+
+2001-03-26 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * Version 10.0e released.
+
+2001-03-26 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * tex.el (TeX-expand-list): Changed default to lazy evaluation of
+ `TeX-view-style' and `LaTeX-command-style'.
+ Suggested by Peter Neergaard <turtle@cs.bu.edu>.
+
+ * latex.el (LaTeX-indent-calculate, LaTeX-indent-calculate-last):
+ Backindent when brace is at the start of a line.
+ Patch by Masashi Shimbo <shimbo@cis.ibaraki.ac.jp>.
+
+ * doc/auc-tex.texi: Fixed dir entry.
+ Reported by David Masterson <dmasters@Rational.Com>.
+
+ * tex-info.el (TeXinfo-mode-map): "\e\r" bound to `map', not
+ `TeXinfo-mode-map'.
+ Patch by Dan Nicolaescu <dann@godzilla.ICS.UCI.EDU>.
+
+2001-03-01 Hidenobu Nabetani <nabe@debian.or.jp>
+
+ * tex-jp.el: Don't work correctly in current AucTeX.
+ Patch by Masayuki Ataka <j1297007@ed.kagu.sut.ac.jp>
+ and Yuzo Furukawa <hurukawa@kuee.kyoto-u.ac.jp>.
+ Removed support for NEmacs and Mule1,2 which are based
+ on Emacs 18 and 19.
+ Created new variable japanese-TeX-command-list and
+ added support for mendex.
+ Updated LaTeX-auto-regexp-list variable.
+
+2001-01-09 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * all: Changed `sunsite.auc.dk' to `sunsite.dk'.
+
+2001-01-02 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * Version 10.0d released.
+
+2001-01-02 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * tex-mik.el (TeX-command-list): Don't prompt for view.
+
+2000-12-04 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * Version 10.0c released.
+
+2000-12-04 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * tex.el: Avoid :inherit font property with Emacs 20.
+ Reported by Damien WYART <wyart@iie.cnam.fr>.
+
+2000-12-01 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * Version 10.0b released.
+
+2000-11-30 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * Version 10.0a released.
+
+2000-11-30 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * tex.el: Copied Emacs 21 font-lock defs here.
+ (VirTeX-common-initialization): Activate them.
+
+2000-10-25 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * PROBLEMS: Updated.
+
+ * WIN-NT: Removed.
+ * MSDOS: Removed.
+ * VMS: Removed.
+ * OS2: Removed.
+ * Makefile (EXTRAFILES): Removed above files.
+
+2000-10-20 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * style/graphicx.el: Updated by author.
+ Ryuichi Arafune <arafune@ushioda.riec.tohoku.ac.jp>
+
+2000-10-19 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * style/graphics.el: New file.
+ * Makefile (STYLESRC): Added it.
+ * style/graphicx.el: Renamed from `style/graphicx.el'.
+ * Makefile (STYLESRC): Updated.
+ Reported by "Dr. Thomas Baumann" <thomas.baumann@ch.tum.de>.
+
+2000-10-09 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * Version 9.10t released.
+
+2000-10-09 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * latex.el (LaTeX-outline-name): Don't escape `{' or `}' in
+ regexps.
+ Patch by "Stefan Monnier" <monnier+gnu/emacs/news/@RUM.cs.yale.edu>.
+
+ * tex-mik.el (TeX-command-list): Use `TeX-run-discard' for "View"
+ command.
+ Suggested by "Claus Dethlefsen" <c.dethlefsen@lancaster.ac.uk>.
+
+ * latex.el (LaTeX-common-initialization): `\bibitem' starts
+ paragraphs, just like `\item'.
+ Reported by Werner LEMBERG <sx0005@sx2.HRZ.Uni-Dortmund.DE>.
+
+2000-10-06 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * tex.el (TeX-current-line): Return a string, not a number.
+ Reported by Julia Habel <julia.habel@gmx.de>.
+ Patch by Dirk.Ullrich@DaimlerChrysler.com.
+
+2000-06-15 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * tex-site.el: Require tex-mik after changing load-path.
+ Reported by "I. Jossang" <ij202@eng.cam.ac.uk>.
+
+2000-06-13 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * IRIX: New file.
+ * Makefile (EXTRAFILES): Added it.
+
+2000-05-10 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * Version 9.10s released.
+
+2000-05-03 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * Version 9.10r released.
+
+2000-05-02 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * tex.el (TeX-mode-map): Don't bind `.' and `,' by default.
+
+2000-05-03 Peter Galbraith <psg@debian.org>
+
+ * font-latex.el: file was broken. Updated to 0.701 (30 Mar 2000).
+ * bib-cite.el: file was broken. Updated to 3.16 (20 Dec 99).
+
+2000-04-14 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * Version 9.10q released.
+
+2000-03-30 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * style/graphicsx.el: New file.
+ * Makefile (STYLESRC): Added it.
+ Donated by Ryuichi Arafune <arafune@ushioda.riec.tohoku.ac.jp>.
+
+2000-04-14 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * Version 9.10q released.
+
+2000-03-23 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * latex.el (LaTeX-math-keymap): Accept vector for
+ `LaTeX-math-abbrev-prefix'.
+ (LaTeX-math-insert-prefix): Better error message if
+ `LaTeX-math-abbrev-prefix' is not bound.
+ Reported by Jan Vroonhof <vroonhof@math.ethz.ch>.
+
+2000-02-23 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * tex-info.el (TeXinfo-environment-list): Added more missing
+ environments. Patch by Akim Demaille <akim@epita.fr>.
+
+2000-02-22 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * tex-info.el (TeXinfo-environment-list): Add `group'.
+ Patch by Akim Demaille <akim@epita.fr>.
+
+2000-01-28 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * tex.el (TeX-command-list): Add `makeinfo --html' support.
+ Suggested by Akim Demaille <akim@epita.fr>.
+
+2000-01-20 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * tex-info.el (TeXinfo-mode-map): Added "\e\r" binding for
+ `texinfo-insert-@item'.
+ Reported by Akim Demaille <akim@epita.fr>.
+ (TeXinfo-mode-menu, texinfo-mode): Changed menu name and mode name
+ to `Texinfo'.
+ Suggested by Akim Demaille <akim@epita.fr>.
+
+1999-12-21 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * bib-cite.el: Updated to 3.16 (20 Dec 99).
+
+ * font-latex.el: Updated to 0.700 (20 December 1999).
+
+2000-03-30 Peter Galbraith <psg@debian.org>
+
+ * font-latex.el: Updated to 0.701 (30 Mar 2000).
+
+2000-01-14 Peter Galbraith <psg@debian.org>
+
+ * bib-cite.el: Updated to 3.16 (20 Dec 99).
+ * font-latex.el: Updated to 0.700 (20 Dec 99).
+ * hilit-LaTeX.el: Changed author email address.
+
+1999-12-20 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * Version 9.10p released.
+
+1999-12-20 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * bib-cite.el: Updated to 3.15 (20 Dec 99).
+
+ * tex-mik.el (TeX-command-list): Fixed default PDF LaTeX command.
+ Reported by "Christian Schlauer" <Christian.Schlauer@web.de>.
+
+ * Version 9.10o released.
+
+1999-12-20 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * bib-cite.el: Updated to 3.13 (20 Dec 99).
+
+1999-12-11 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * style/danish.el ("danish"): Support Danish quotes.
+ Suggested by arne@daimi.au.dk (Arne J¸rgensen).
+
+1999-12-03 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * tex-info.el (texinfo-mode): Added `kill-all-local-variables'.
+ Reported by Stefan Monnier <foo@acm.com>.
+
+ * Version 9.10n released.
+
+1999-12-03 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * tex-mik.el: Fixed typo.
+ Reported by Bernt Guldbrandtsen <bg@rs580.sh.dk>
+
+1999-12-01 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * Version 9.10m released.
+
+1999-12-01 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * Makefile (AUCSRC, AUCELC): Added `tex-mik.el'.
+
+1999-11-26 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * Version 9.10l released.
+
+1999-11-26 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * latex.el (LaTeX-env-figure): Use `\centering' instead of
+ `center' environment.
+ Patch by Stefan Monnier <foo@acm.com>.
+
+1999-11-25 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * tex-mik.el (tex-mik): Add provide.
+
+ * tex-site.el: Automatically require `tex-mik.el' under NT.
+
+1999-11-12 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * tex.el (TeX-current-file-name-nondirectory): New function.
+ (TeX-expand-list): Use it.
+
+1999-11-10 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * doc/auc-tex.texi: Fixed references.
+ Patch by Stefan Monnier <foo@acm.com>.
+ * tex.el (TeX-lisp-directory): Use `locate-library' to find
+ default under Emacs.
+ Patch by Stefan Monnier <foo@acm.com>.
+ (TeX-dwim-master): New function.
+ (TeX-master-file): Use it.
+ (TeX-master): Document it.
+ Patch by Stefan Monnier <foo@acm.com>.
+
+1999-11-06 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * Version 9.10k released.
+
+1999-11-06 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * latex.el: Use `indent-according-to-mode' instead of
+ `LaTeX-indent-line'.
+ (LaTeX-mode-map): Don't remap `TAB'.
+ Patch by "Stefan Monnier <foo@acm.com>".
+
+1999-11-03 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * tex.el (TeX-command-list): Added `LaTeX PDF' command.
+
+1999-10-28 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * Version 9.10j released.
+
+1999-10-27 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * Makefile (dist): Create a .nosearch in the style directory.
+ (install-lisp): Ditto.
+ Suggested by Markus Rost <rost@IAS.EDU>.
+
+1999-10-26 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * Version 9.10i released.
+
+1999-10-26 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * tex.el (TeX-master-directory): Call `substitute-in-file-name'.
+ Patch by Alexander Holt <alexander.holt@ed.ac.uk>.
+
+ * style/ngerman.el: New style.
+ Suggested by Torsten Schuetze <schuetze@math.tu-dresden.de>.
+ * Makefile (STYLESRC): Added it.
+
+ * tex-buf.el (TeX-command-query): Added history argument.
+ Suggested by Werner LEMBERG <sx0005@sx2.HRZ.Uni-Dortmund.DE>.
+
+ * latex.el (LaTeX-environment): Added history argument.
+
+ * tex.el (TeX-add-style-hook): Don't add the same hook twice.
+ Suggested by Jarl Friis <jarl@diku.dk>.
+
+ * tex.el: Removed portability code for old Emacsen.
+
+1999-10-25 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * Version 9.10h released.
+
+1999-09-27 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * latex.el (LaTeX-auto-cleanup): Allow multiple packages for
+ `usepackage'.
+ Reported by Torsten Schuetze <schuetze@math.tu-dresden.de>.
+ (LaTeX-auto-cleanup): Also add "unmangled" documentstyle.
+ Reported by Cyril Humbert <humbert@phobos.univ-mlv.fr>.
+
+1999-09-09 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * style/mdwlist.el: New file.
+ Patch by Stephen Heilbronner <heilbron@nm.informatik.uni-muenchen.de>.
+ * Makefile (STYLESRC): Added it.
+
+1999-08-20 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * Version 9.10g released.
+
+1999-08-20 Hidenobu Nabetani <nabe@debian.or.jp>
+
+ * tex.el (TeX-format-list): Add "JLATEX" and "JTEX" which is needed
+ to load tex-jp.el automatically.
+ * tex-jp.el (TeX-format-list): Remove "JLATEX" and "JTEX".
+
+1999-08-19 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * latex.el (LaTeX-hide-environment, LaTeX-show-environment): make
+ them work with new outline mode.
+ Reported by Thomas Schick <schick@math.psu.edu>.
+
+ * tex.el (match-string): New compatibility function.
+ Reported by Andrew Edward Santosa <andrews@comp.nus.edu.sg>.
+
+1999-08-18 Hidenobu Nabetani <nabe@debian.or.jp>
+
+ * tex-jp.el (TeX-command-list): Add "jLaTeX" and "pLaTeX".
+ (TeX-mode-menu): Fix the problem that menu "TeX" is unchanged.
+ (TeX-japanese-process-input-coding-system): Update for Emacs 20.
+ (TeX-japanese-process-output-coding-system): Update for Emacs 20.
+ (TeX-command-default): Change from "j-article" to "jarticle".
+ (LaTeX-fill-region-as-para-do): Fix the problem that fill mode
+ don't work in Emacs 20.
+
+1999-07-16 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * Version 9.10f released.
+
+1999-07-16 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * latex.el (LaTeX-auto-minimal-regexp-list): Recognize usepackage
+ options.
+ (LaTeX-auto-cleanup): Ditto.
+
+1999-07-15 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * tex.el (TeX-ignore-file): Ignore babel, it loads everything.
+ Reported by Mate Wierdl <mw@wierdlmpc.msci.memphis.edu>.
+
+ * style/foils.el: Removed require 'latex.
+ * style/natbib.el: Ditto.
+ * style/harvard.el: Ditto.
+ * style/slides.el: Ditto.
+ * style/latexinfo.el: Ditto.
+ Reported by Mate Wierdl <mw@wierdlmpc.msci.memphis.edu>.
+
+ * Makefile (infodir, lispdir, aucdir, EMACS): Use `standard' values.
+ Reported by Mate Wierdl <mw@wierdlmpc.msci.memphis.edu>.
+
+ * tex-info.el (texinfo-mode): Fix doc string.
+ Reported by Bob Weiner <weiner@altrasoft.com>.
+
+1999-05-17 Jerry James <jerry@cs.ucsb.edu>
+
+ * tex.el: Fix two typos in comments.
+ (set-text-properties): Protect against possible XEmacs version
+ 21.13, 22.13, etc.
+
+1999-05-14 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * latex.el (LaTeX-indent-environment-list): Customized.
+
+ * Version 9.10e released.
+
+1999-05-14 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * tex.el: (TeX-auto-generate): Reimplemented support for numeric
+ `TeX-file-recurse'.
+ (TeX-search-files): Ditto.
+
+1999-05-03 Rune Kleveland <runekl@math.uio.no>
+
+ * style/amsart.el ("amsart"): Load `amsthm.el'.
+ * style/amsbook.el ("amsbook"): Ditto.
+
+1999-03-29 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * Version 9.10d released.
+
+1999-03-29 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * doc/changes.texi: Added extra `@'.
+
+ * Version 9.10c released.
+
+1999-03-19 Carsten Dominik <dominik@strw.leidenuniv.nl>
+
+ * tex.el (TeX-insert-dollar): Better error message when trying
+ to insert a dollar in math-mode.
+
+ * texmathp.el (texmathp-tex-commands-default): Added more default
+ macros.
+
+1999-03-12 Carsten Dominik <dominik@strw.LeidenUniv.nl>
+
+ * latex.el (TeX-arg-index-tag): New function, to be used by the
+ index.el and multind.el style files.
+ (LaTeX-auto-index-regexp-list): Now matches both \index and
+ \glossary.
+ (TeX-arg-index): Renamed from TeX-arg-define-index.
+ (TeX-arg-define-index): Now an alias for `TeX-arg-index'.
+ (LaTeX-common-initialization): Added a regexp for index and
+ glossary to `TeX-complete-list'. Added entry for glossary with
+ `Tex-add-symbols'.
+ * style/index.el: New file.
+ * style/makeidx.el: New file.
+ * style/multind.el: New file.
+ * style/varioref.el: New file.
+ * style/fancyref.el: New file.
+ * Makefile (STYLESRC): Added `style/index.el', `style=makeidx.el',
+ `style/multind.el', `style/varioref.el', `style/fancyref.el'.
+
+1999-02-23 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * tex.el (TeX-search-files): `nconc' the result.
+ Reported by Berwin Turlach <bturlach@maths.adelaide.edu.au>.
+
+1999-02-11 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * Version 9.10b released.
+
+1999-02-11 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * doc/changes.texi: Typo: @ldots -> @dots.
+
+ * Version 9.10a released.
+
+ * doc/auc-tex.texi: Changed version to 9.10.
+ * doc/history.texi: Ditto.
+ * doc/changes.texi: Ditto.
+
+1999-02-11 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * Version 9.9p released.
+
+1999-02-08 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * tex-jp.el (TeX-format-list): Fix JLATEX format.
+ Patch by Tsutomu OKUMURA <oku@nml.t.u-tokyo.ac.jp>.
+
+ * style/foils.el (LaTeX-style-foils): Removed spurious `\n'.
+ Reported by Bernt Guldbrandtsen <bernt@jupiter.ansci.iastate.edu>.
+
+1999-02-05 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * Makefile (install-contrib): Added `$(CONTRIBELC)' dependency.
+ Suggested by Nils Ackermann <Nils.Ackermann@math.uni-giessen.de>.
+
+1999-01-29 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * tex.el (TeX-search-files): `mapcar' instead of `mapcan'.
+
+1999-01-12 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * tex.el (TeX-font-replace-macro): Renamed from
+ `LaTeX2e-font-replace'. Use `TeX-esc'.
+ * latex.el (LaTeX-common-initialization): Use it.
+ * tex-info.el (texinfo-mode): Ditto.
+ (TeXinfo-font-list): Add `delete'.
+ Suggested by Christoph Wedler <wedler@fmi.uni-passau.de>.
+
+1999-01-11 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * Version 9.9o released.
+
+1999-01-11 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * tex.el (TeX-insert-braces, TeX-command-list): Fixed custom types.
+ Patch by Markus Rost <markus.rost@mathematik.uni-regensburg.de>.
+
+1999-01-09 Christoph Wedler <wedler@fmi.uni-passau.de>
+
+ * latex.el (LaTeX2e-font-replace): Don't use hard-coded regexp for
+ font commands, use local `TeX-font-list', i.e., `LaTeX-font-list'.
+
+1999-01-05 Christoph Wedler <wedler@fmi.uni-passau.de>
+
+ * tex.el (TeX-load-style-file): Do not prevent .elc style files to
+ be loaded if `TeX-byte-compile' is nil, just prevent compilation.
+ (TeX-lisp-directory): Only use `locate-data-directory' if this
+ function is defined and AucTeX is installed as an XEmacs package.
+
+1998-12-12 Christoph Wedler <wedler@fmi.uni-passau.de>
+
+ * tex.el (load-path): Don't add `TeX-lisp-directory'.
+ (TeX-lisp-directory): Use `locate-data-directory' if present.
+
+1998-12-12 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * Version 9.9n released.
+
+1998-12-12 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * tex.el (TeX-file-recurse): Added right parenthesis.
+ Reported by Bernt Guldbrandtsen <bernt@stat.washington.edu>.
+
+1998-12-11 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * Version 9.9m released.
+
+1998-12-11 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * font-latex.el: Updated.
+ * bib-cite.el: Ditto.
+
+ * Version 9.9l released.
+
+1998-12-01 Alastair Burt <burt@dfki.de>
+
+ * doc/auc-tex.texi (Automatic):
+
+ * lisp/tex.el: Extended the semantics of TeX-file-recurse
+ -- now accepts a positive integer as a bound on the recursion.
+ Functions TeX-search-files and TeX-auto-generate have been amended
+ appropriately.
+
+1998-11-23 Carsten Dominik <dominik@strw.leidenuniv.nl>
+
+ * texmathp.el (texmathp): Added autoload cookie.
+
+1998-11-20 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * Version 9.9k released.
+
+1998-11-20 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * tex.el (TeX-load-style-file): Protect `byte-compile-file'.
+ Reported by Kurt Swanson <kurt@dna.lth.se>.
+
+ * latex.el (LaTeX-outline-name): New function.
+ (LaTeX-imenu-create-index-function): New function.
+ (LaTeX-common-initialization): Use it.
+
+ * tex-buf.el (TeX-run-interactive): Make sure buffer is writable
+ (needed in Emacs 20.3).
+ Reported by many.
+
+1998-10-15 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * doc/auc-tex.texi (European): Removed references to obsolete
+ packages.
+
+1998-07-29 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * Version 9.9j released.
+
+1998-07-29 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * tex-buf.el (TeX-run-ispell-on-document, TeX-ispell-document):
+ New functions.
+ * tex.el (TeX-command-list): Use them.
+ Patch by Jason Stewart <jasons@cs.unm.edu>.
+
+ * Version 9.9i released.
+
+1998-07-29 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * tex.el (TeX-parse-macro, TeX-arg-string, TeX-parse-argument): If
+ region is active, put it inside empty brackets.
+ Patch by Peter Thiemann <pjt@cs.nott.ac.uk>.
+
+1998-07-16 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * tex.el (plain-TeX-auto-regexp-list): Add missing \\'es.
+ Reported by Markus Rost t4287
+ <markus.rost@mathematik.uni-regensburg.de>.
+
+1998-07-14 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * Version 9.9h released.
+
+1998-07-14 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * tex.el (TeX-insert-dollar): Use `string-equal' to compare
+ strings.
+ Patch by Carsten Dominik <dominik@strw.leidenuniv.nl>.
+
+1998-06-25 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * Version 9.9g released.
+
+1998-06-25 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * latex.el (LaTeX-auto-index-regexp-list): Remove extra quote.
+ Patch by Carsten Dominik <dominik@strw.leidenuniv.nl>.
+
+1998-06-24 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * Version 9.9f released.
+
+1998-06-24 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * latex.el (LaTeX-auto-index-regexp-list): Fix parentheses.
+ * texmathp.el (texmathp): Use `if (not' instead of `unless'.
+ Patch by Carsten Dominik <dominik@strw.leidenuniv.nl>.
+
+1998-06-15 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * Version 9.9e released.
+
+1998-06-15 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * doc/Makefile (auc-tex.ps): Use `-o' to specify output file.
+ Suggested by Paul McJones <mcjones@pa.dec.com>.
+
+1998-06-12 Carsten Dominik <dominik@strw.leidenuniv.nl>
+
+ * latex.el (LaTeX-font-list): Default value now contains special
+ math font commands.
+ (LaTeX2e-font-replace): Added support for math fonts.
+
+ * tex.el (TeX-font-list): Docstring changed. Extra prefix and
+ suffix for math fonts allowed.
+ (TeX-describe-font-entry): Adapted to extended `TeX-font-list'.
+ (TeX-font): Detects math mode (using `texmathp') and inserts
+ special math font commands when available.
+
+1998-06-11 Carsten Dominik <dominik@strw.leidenuniv.nl>
+
+ * tex.el: (TeX-insert-dollar): Rewritten with `texmathp'.
+ (TeX-dollar-verify, TeX-locate-delimiter, TeX-bouncing-point):
+ Obsolete functions removed.
+
+1998-06-11 Carsten Dominik <dominik@strw.leidenuniv.nl>
+
+ * latex.el: Made index entries available for global completion
+ like labels and citation keys.
+ (TeX-arg-index, TeX-arg-define-index): New functions.
+
+1998-06-10 Carsten Dominik <dominik@strw.leidenuniv.nl>
+
+ * natbib.el ("natbib"): Rewritten to allow for more flexible
+ control of optional note arguments. New macros in NatBib 6
+ supported. Added support for RefTeX.
+
+1998-06-10 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * Version 9.9d released.
+
+1998-06-10 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * texmathp.el: New version from Dominik.
+
+ * Version 9.9c released.
+
+1998-06-10 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * tex.el (texmathp): Added autoload.
+ (TeX-math-mode-p): Deleted.
+ (TeX-parse-macro): Use `texmathp' instead of `TeX-math-mode-p'.
+
+ * texmathp.el: New file by Carsten Dominik
+ <dominik@strw.LeidenUniv.nl>.
+ * Makefile (AUCSRC): Added.
+ (AUCELC): Added.
+
+1998-06-05 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * tex.el (TeX-expand-list): Add `%n' escape.
+ (TeX-current-line): New function.
+ Suggested by "Lee, Sang-Min" <smagus@acorn.snu.ac.kr>.
+
+ * doc/auc-tex.texi: Doc fixes by Gustavo Chaves
+ <gustavo@cpqd.com.br>.
+ * doc/intro.texi: Ditto.
+ * doc/install.texi: Ditto.
+
+1998-05-16 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * latex.el: Checkdoc'ed.
+
+1998-04-29 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * doc/README: Update iesd->sunsite in addresses.
+
+1998-04-03 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * doc/Makefile (auc-tex.ps): Cut of the first two lines.
+
+1998-03-29 Carsten Dominik <dominik@strw.LeidenUniv.nl>
+
+ * latex.el (LaTeX-section-section): When RefTeX is available,
+ notify it about the new section.
+
+1998-03-04 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * doc/math-ref.tex (section{Symbols}): Wrong keybindings.
+ Reported by "Ron Smith" <rsmith@eel.ufl.edu>.
+
+1998-02-27 Soren Dayton <csdayton@cs.uchicago.edu>
+
+ * tex.el (TeX-load-style): Also look in master directory.
+
+1998-02-27 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * tex.el (TeX-insert-punctuation): Only expand abbrevs when abbrev
+ mode is on. Suggested by Alastair Burt <alastair.burt@dfki.de>.
+
+1998-02-25 SL Baur <steve@altair.xemacs.org>
+
+ * doc/auc-tex.texi: Add direntry section for automatic
+ installation.
+
+1998-02-25 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * Version 9.9b released.
+
+1998-01-02 John Griffith <griffith@sfs.nphil.uni-tuebingen.de>
+
+ * latex.el (LaTeX-auto-regexp-list): Recognize empty optional
+ arguments and macros in optional arguments.
+
+ * tex.el (TeX-parse-argument): minor spelling correction.
+ (TeX-argument-insert): ditto
+
+1998-02-25 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * tex.el (TeX-match-extension): Fold case when matching
+ extensions.
+
+1998-02-20 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * Version 9.9a released.
+
+1998-02-20 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * Version 9.8l released.
+
+1998-02-20 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * Version 9.8k released.
+
+1998-02-12 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * latex.el (LaTeX-math-list): Make tags match doc string.
+
+1998-01-28 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * Version 9.8j released.
+
+1998-01-28 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * tex-jp.el: Added credit.
+ Patch by KOBAYASHI Shinji <koba@flab.fujitsu.co.jp>.
+
+1997-12-10 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * tex-site.el: Added `defcustom' kludge to tex-site.el.
+ Suggested by "Ralph J. Hangleiter" <hangleit@math.uni-goettingen.de>.
+
+1997-10-27 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * latex.el (TeX-arg-input-file): Add trailing slash.
+ (TeX-arg-bibstyle): Ditto.
+ (TeX-arg-bibliography): Ditto.
+ Patch by Ching-Mo Chang <chang@wsu.edu>.
+
+1997-10-20 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * Version 9.8i released.
+
+1997-10-20 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * Version 9.8h released.
+
+1997-10-20 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * Version 9.8g released.
+
+1997-10-20 Peter S Galbraith <rhogee@mixing.qc.dfo.ca>
+
+ * font-latex.el: Updated to V0.504 (Oct 20 97)
+
+ * bib-cite.el: Updated to 3.04 (Aug 25 97)
+
+ * hilit-LaTeX.el: Updated to V1.17 (Sep 06 95)
+
+1997-10-01 kifer@CS.SunySB.EDU (Michael Kifer)
+
+ * tex.el (TeX-insert-punctuation): Expand abbrevs in the
+ beginning.
+
+1997-09-11 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * tex-buf.el (TeX-run-silent): New function.
+
+ * tex.el (TeX-command-list): Changed default for view from
+ `TeX-run-background' to `TeX-run-silent'.
+
+1997-09-10 "Dr. Werner Fink" <werner@suse.de>
+
+ * style/dinbrief.el: Updated.
+
+1997-09-08 karlheg@inetarena.com (Karl M. Hegbloom)
+
+ * tex-info.el (texinfo-mode): Regexp fix.
+
+1997-08-29 David J. Rowe <rowe@asys47.wdl.lmco.com>
+
+ * latex.el (LaTeX-auto-regexp-list): Added support so newcommand*,
+ renewcommand*, providecommand*, newenvironment* and
+ renewenvironment* are recognized by TeX-auto-generate and
+ TeX-auto-generate-global.
+ (LaTeX-common-initialization): Added all of above "starred"
+ commands to symbol list and added providecommand to symbol list.
+
+1997-08-29 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * Version 9.8f released.
+
+1997-08-29 Carsten Dominik <dominik@strw.LeidenUniv.nl>
+
+ * amsmath.el ("amsmath"): Added environments xalignat and
+ xxalignat, and starred forms
+
+1997-08-22 Christoph Wedler <wedler@fmi.uni-passau.de>
+
+ * tex-buf.el (TeX-region-create): Also bind `orig-buffer' which
+ might be useful in `TeX-region-hook'.
+
+1997-07-14 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * Version 9.8e released.
+
+1997-07-14 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * Makefile (STYLESRC): Added `style/natbib.el'.
+
+1997-07-13 Berwin Turlach <berwin.turlach@anu.edu.au>
+
+ * Added style support for natbib.sty
+
+1997-07-11 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * Version 9.8d released.
+
+1997-07-11 Jan Vroonhof <vroonhof@math.ethz.ch>
+
+ * latex.el (LaTeX-auto-regexp-list): More LaTeX2e support.
+
+1997-07-05 Berwin Turlach <berwin.turlach@anu.edu.au>
+
+ * latex.el (BibTeX-auto-store): make TeX-master a local variable
+ and set it to true.
+
+1997-07-03 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * Version 9.8c released.
+
+1997-07-03 Carsten Dominik <dominik@strw.LeidenUniv.nl>
+
+ * style/amsmath.el ("amsmath"): Use `TeX-arg-ref' for eqref.
+
+1997-06-29 Berwin Turlach <berwin.turlach@anu.edu.au>
+
+ * harvard.el: Updated the support for harvard.el
+
+1997-06-30 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * Version 9.8b released.
+
+1997-06-28 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * tex-buf.el (TeX-LaTeX-sentinel): `natbib' support.
+ Patch by Berwin Turlach <berwin.turlach@anu.edu.au>.
+
+1997-06-27 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * Version 9.8a released.
+
+1997-06-24 Christoph Wedler <wedler@fmi.uni-passau.de>
+
+ * tex.el (TeX-update-style): `TeX-auto-update' could be unbound.
+ (TeX-auto-x-parse-length): New variable. Allows to use maximimum
+ = slow parsing for the beginning of a file and minimum = fast
+ parsing, e.g., just for labels, for the rest of the file.
+ (TeX-auto-x-regexp-list): Ditto.
+ (TeX-auto-parse-region): New function.
+ (TeX-auto-parse): Use them.
+
+ * tex-buf.el (TeX-region-extra): New variable with a value which
+ redefines \cite for the region file in order get less
+ warnings. With value "", this variable has no effect.
+ (TeX-region-hook): New variable.
+ (TeX-region-create): Use them.
+
+ * latex.el (LaTeX-indent-line): TeX commands are case sensitive.
+ (LaTeX-find-matching-end): Would not work correctly with more than
+ one \end in a line.
+ (LaTeX-find-matching-begin): Would not work correctly with more
+ than one \begin in a line.
+
+ (LaTeX-menu-max-items): New variable with value 25. Split menu
+ if number of entries in a menu is larger than this value. If nil,
+ never split menu into submenus, which is the behaviour before the
+ introduction of this variable.
+ (LaTeX-submenu-name-format): New variable.
+ (LaTeX-split-long-menu): New function using the two new variables.
+ (LaTeX-menu-update): Use it.
+
+ (LaTeX-document-regexp): New variable. Texts in environments
+ other than "document", e.g., "letter", could be without initial
+ indentation.
+ (LaTeX-verbatim-regexp): New variable. \begin and \end of
+ environments other than "verbatim\\*?", e.g., "program", could
+ start at column 0.
+ (LaTeX-begin-regexp): New variable similar to `LaTeX-item-regexp'.
+ Commands other than "begin", e.g, "if", could increase the
+ indentation.
+ (LaTeX-end-regexp): New variable similar to `LaTeX-item-regexp'.
+ Commands other than "end", e.g, "fi", could decrease the
+ indentation.
+ (LaTeX-indent-comment-start-regexp): New variable. Would allow
+ you to correct the automatic indentation with commands in special
+ comments.
+ (LaTeX-indent-calculate): Use them.
+ (LaTeX-indent-level-count): Use them.
+ (LaTeX-indent-calculate-last): Use them.
+
+ (LaTeX-math-insert-function): New variable.
+ (LaTeX-math-insert): Use it.
+
+1997-06-11 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * latex.el (TeX-arg-ref): New alias.
+ (LaTeX-common-initialization): Use it.
+ Patch by Soren Dayton <csdayton@cs.uchicago.edu>.
+
+1997-06-05 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * latex.el (LaTeX-auto-minimal-regexp-list): Added `usepackage'.
+ (LaTeX-auto-minimal-regexp-list): Ditto.
+ Patch by Carsten Dominik <dominik@strw.LeidenUniv.nl>.
+
+ * style/amsmath.el: New file.
+ * style/amstext.el: New file.
+ * style/amsbsy.el: New file.
+ * style/amsopn.el : New file.
+ * style/amsthm.el: New file.
+ * Makefile (STYLESRC): Added them.
+ Files provided by Carsten Dominik <dominik@strw.LeidenUniv.nl>.
+
+1997-06-03 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * style/slovak.el: New file.
+ * style/czech.el: New file.
+ * Makefile (STYLESRC): Add them.
+ Files provided by Milan Zamazal <pdm@fi.muni.cz>.
+
+1997-04-17 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * Version 9.7p released.
+
+1997-04-12 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * tex.el: Added customize information.
+ * tex-buf.el: Ditto.
+ * latex.el: Ditto.
+
+1997-04-06 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * Version 9.7o released.
+
+1997-04-06 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * latex.el (LaTeX-equation-label): New variable.
+ (LaTeX-eqnarray-label): New variable.
+ (LaTeX-label): Support `figure*', `label*', `equation', and
+ `eqnarray'.
+ (LaTeX-env-figure): Support `table*'.
+ Patch by Joes Staal <staal@geo.tudelft.nl>.
+
+1997-03-28 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * latex.el (LaTeX-down-section): Doc fix.
+ (LaTeX-section-heading): Ditto.
+ (LaTeX-section-title): Ditto.
+ (LaTeX-env-array): Ditto.
+ (TeX-braces-user-association): Ditto.
+ (LaTeX-fill-region-as-paragraph): Ditto.
+ (LaTeX-math-abbrev-prefix): Ditto.
+ (LaTeX-math-mode): Ditto.
+ (TeX-arg-right-insert-p): Ditto.
+ (latex-mode): Ditto.
+
+1997-03-26 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * Version 9.7n released.
+
+1997-03-26 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * latex.el (LaTeX-math-default): Fixed hebrew delimiters.
+ Patch by John Griffith <griffith@sfs.nphil.uni-tuebingen.de>.
+
+1997-03-26 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * latex.el (LaTeX-209-to-2e): Use `buffer-substring-no-properties'.
+ Reported by Graham Gough <graham@cs.man.ac.uk>.
+
+1997-03-17 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * Version 9.7m released.
+
+1997-03-17 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * tex.el (TeX-auto-generate): Only generate when needed.
+ (TeX-auto-generate-global): Ditto.
+ Patch by Helmut Geyer <Helmut.Geyer@IWR.Uni-Heidelberg.De>.
+
+ * Makefile (install-contrib): Don't move elc files twice. Patch
+ by Helmut Geyer <Helmut.Geyer@IWR.Uni-Heidelberg.De>.
+
+1997-03-13 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * style/danish.el: Copied from `style/dk.el'.
+ * Makefile (STYLESRC): Added `style/danish.el'.
+ Suggested by Lars Frellesen <frelle@math-tech.dk>.
+
+1997-03-04 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * Version 9.7l released.
+
+1997-03-04 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * Makefile (some): Don't use `style/*.elc'.
+
+1997-02-27 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * tex.el (TeX-electric-macro): Default to space after dot.
+
+1997-02-26 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * Version 9.7k released.
+
+1997-02-26 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * tex.el (TeX-submit-bug-report): Fix address (sunsite, not iesd!).
+
+1997-02-25 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * Version 9.7j released.
+
+1997-02-21 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * Makefile (some): New target.
+ Suggested by Steven L Baur <steve@miranova.com>.
+
+1997-02-20 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * Version 9.7i released.
+
+1997-02-20 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * tex.el: Removed autoloads that conflicts with `tex-mode.el'.
+ (TeX-lisp-directory): Default to data-directory.
+
+1997-02-15 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * Version 9.7h released.
+
+1997-02-15 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * tex-buf.el (TeX-lisp-directory): Removed.
+
+1997-02-07 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * Version 9.7g released.
+
+1997-02-06 Karl Eichwalder <ke@ke.Central.DE>
+
+ * Makefile (install-lisp): Don't install $(aucdir)/lpath.el and
+ $(aucdir)/tex-site.el.
+ (contrib, install-contrib): New targets.
+
+1997-01-30 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * latex.el (LaTeX-math-default): uparow -> uparrow. Reported by
+ Kyeong Soo Kim <kks@baekdu.rgit.wustl.edu>.
+
+1997-01-29 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * Makefile (AUCSRC): Removed `ltx-help.el'.
+
+1997-01-27 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * Version 9.7f released.
+
+1997-01-27 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * latex.el (LaTeX-label-function): New variable.
+ (LaTeX-label): New function.
+ (LaTeX-section-label): Use it.
+ (LaTeX-env-figure): Ditto.
+ (LaTeX-env-label): Ditto.
+ Patch supplied by Carsten Dominik <dominik@strw.LeidenUniv.nl> for
+ better RevTeX.el support.
+
+ * latex.el (LaTeX-env-figure): Don't insert \leavevmode, at the
+ request of David Carlisle <carlisle@ma.man.ac.uk>.
+
+1997-01-20 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * Version 9.7e released.
+
+1997-01-20 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * tex-buf.el (TeX-parse-error): Support LaTeX warnings. Patch by
+ Frederic Devernay <devernay@istar.fr>.
+ (TeX-warning): Ditto.
+
+1997-01-17 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * Version 9.7d released.
+
+1997-01-17 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * tex-jp.el: XEmacs 20 support by Soren Dayton
+ <csdayton@cs.uchicago.edu>.
+
+1997-01-13 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * Makefile (CP): Use `cp -p'. Suggested by Graham Gough
+ <graham@cs.man.ac.uk>.
+
+ * Version 9.7c released.
+
+1997-01-08 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * doc/intro.texi: Spelling fixes by Franklin Chen <chen@adi.com>.
+
+ * tex-buf.el (TeX-shell-command-option): Insitialize from
+ shell-command-switch. Suggested by Fabio@Colorado.EDU (Fabio
+ Somenzi).
+
+ * latex.el (LaTeX-mode-menu): Added sans serif. Patch by Ralf
+ Fassel <ralf@atg.venture.de>.
+
+1997-01-03 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * Makefile (install-lisp): Also install `.el' files. Requested by
+ several people.
+
+1996-12-11 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * Makefile (tex.elc): New entry.
+ (install-lisp): Use it. Trevor Jim <tjim@saul.cis.upenn.edu>
+ reported that `make install' wouldn't make the elc files.
+
+1996-12-10 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * Version 9.7b released.
+
+1996-12-10 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * tex-buf.el (TeX-run-format): Bind `buffer' before `process' to
+ avoid side effect. Suggested by Frederic Devernay
+ <devernay@istar.fr>.
+
+ * Version 9.7a released.
+
+1996-12-10 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * latex.el (LaTeX-fill-region-as-para-do): Minimal support for
+ `sentence-end-double-space'.
+
+1996-12-09 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * Version 9.6m released.
+
+1996-12-01 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * Version 9.6l released.
+
+1996-12-01 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * tex-jp.el: Patch from IKEMOTO Masahiro
+ <ikeyan@airlab.cs.ritsumei.ac.jp>.
+
+1996-11-29 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * Version 9.6k released.
+
+1996-11-22 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * latex.el (LaTeX-mode-menu): Made `LaTeX-math-mode' a toggle.
+
+1996-11-16 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * Version 9.6j released.
+
+1996-11-14 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * latex.el (LaTeX-common-initialization): Added eqref to
+ LaTeX-label-list. Suggested by Martin Hagstrom
+ <martinh@sto.foa.se>.
+
+1996-11-13 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * tex-buf.el (TeX-region-create): Disable font lock. Suggested by
+ several, patch by Christoph Wedler <wedler@fmi.uni-passau.de>.
+
+1996-11-05 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * tex.el (TeX-file-extensions): Added "texinfo".
+
+1996-09-30 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * latex.el (LaTeX-mode-map): Do not overwrite standard binding of
+ `M-g'.
+
+ * tex.el (popup-mode-menu): Run `LaTeX-menu-update' if present.
+ Workaround for bug reported by Hendrik Visage
+ <hendrikv@di.denel.co.za> and othors.
+
+ * latex.el (LaTeX-float): Allow nil.
+ (LaTeX-env-figure): Don't insert float if nil. Feature suggested
+ by Andre Eickler <eickler@db.fmi.uni-passau.de>.
+
+1996-09-16 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * Version 9.6i released.
+
+1996-09-16 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * tex.el (TeX-mode-syntax-table): Made `$' have the syntax class
+ `$' at the suggestion of Mats Bengtsson <matsb@s3.kth.se>.
+
+1996-08-31 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * latex.el (TeX-arg-cite): Use `multi-prompt' when asking for
+ entries.
+ (TeX-arg-bibliography): Ditto.
+
+1996-08-29 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * Makefile: Simplified installation (I hope).
+
+1996-08-28 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * Makefile: Removed lacheck.
+
+1996-08-23 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * tex-buf.el (TeX-run-command): Change to master directory before
+ executing command.
+ (TeX-region-file): Allow dummy second argument.
+ (TeX-run-background): Run in master directory.
+ (TeX-run-interactive): Run in master directory.
+
+ * tex.el (TeX-master-file): Allow second argument `NONDIRECTOPRY'.
+ (TeX-expand-list): Set second argument `NONDIRECTORY' to file
+ entries.
+ (TeX-master-directory): New function.
+ * tex.el (TeX-auto-write): Write in master directory.
+
+1996-08-22 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * latex.el (LaTeX-current-environment): Ignore comments. Reported
+ by Stephen Eglen <stephene@cogs.susx.ac.uk>.
+
+ * tex.el (TeX-directory-absolute-p): Added `windows-nt'.
+
+ * tex-buf.el (TeX-shell): Added `windows-nt'.
+ (TeX-shell-command-option): Added `emx' and `windows-nt'.
+ Reported by Ulrich Poetter <poetter@em.uni-frankfurt.d400.de>.
+
+1996-08-21 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * tex.el (VirTeX-common-initialization): Removed duplicate
+ initialization of `words-include-escapes'. Reperted by Mark Hovey
+ <hovey@math.mit.edu>.
+
+1996-08-14 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * Makefile (CONTRIB): Added `font-latex.el'.
+
+1996-07-30 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * Makefile (aucdir): Changed `lib' to `share' per new emacs
+ conventions. Reported by "Edward J. Huff"
+ <huffe@carbon.chem.nyu.edu>.
+
+1996-07-16 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * latex.el (LaTeX-fill-region-as-para-do): Make sure `.}' gets
+ two spaces at end of sentence when filling.
+
+1996-07-15 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * tex.el (TeX-parse-path): Ignore tralining //. Suggested by
+ Gĥran Uddeborg <Gĥran.Uddeborg@carmen.se>.
+
+1996-05-05 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * all: Use version number instead of CVS id.
+
+ * tex.el (TeX-mode-map): Don't bind `del'. We aren't supposed to
+ have any tabs in the first place.
+
+1996-05-02 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * tex.el (TeX-mark-active, TeX-active-mark) [XEmacs]: The
+ definition of these two were swapped. Bug reported by
+ Vladimir Alexiev <vladimir@cs.ualberta.ca>.
+
+1996-04-25 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * tex.el (TeX-update-style): Don't run parent style hooks for
+ files that doesn't match `TeX-one-master'. Suggested by many
+ people.
+
+1996-04-24 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * latex.el (LaTeX-close-environment): Bind
+ `next-line-add-newlines' to t. Patch by Fritz Knabe
+ <knabe@matecumbe.ing.puc.cl>.
+
+1996-04-01 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * latex.el (LaTeX-fill-region-as-para-do): Fill `.}' as a sentence
+ end. Patch by Fritz Knabe <knabe@matecumbe.ing.puc.cl>.
+
+1996-03-11 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * latex.el (LaTeX-math-cal): Use `\mathcal{}' under LaTeX2e.
+ Reported by Mate Wierdl <wierdlm@zebra.msci.memphis.edu>.
+
+1996-03-05 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * tex-info.el (texinfo-mode): Rely on texinfo.el to provide the
+ outline regexp.
+
+1996-02-20 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * tex.el (TeX-command-menu-queue, TeX-command-menu-queue-entry):
+ New functions supporting printer queue queries from the menu. By
+ Ulrik Dickow <dickow@nbi.dk>
+ (TeX-command-menu-entry): Use them.
+
+1996-02-13 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * style/swedish.el: Support for Swedish quotation style by "G\vran
+ Uddeborg" <gvran@uddeborg.pp.se>.
+
+1995-12-21 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * latex.el (LaTeX-math-default): Added more definitions by Mehmet
+ Balcilar <MBALCIL@econ.wayne.edu>.
+
+1995-12-18 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * latex.el (LaTeX-fill-region-as-paragraph): Removed old version.
+ (LaTeX-math-menu): Redefined the math mode menu.
+
+1995-12-14 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * latex.el (LaTeX-math-menu): New variable.
+ (LaTeX-mode-menu): Use it. Suggested by Peter S Galbraith
+ <rhogee@mixing.qc.dfo.ca>.
+
+1995-11-13 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * tex.el (VirTeX-common-initialization): Set `comment-multi-line'
+ to nil.
+
+1995-10-13 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * PROBLEMS: Some easymenu explanations.
+
+ * tex.el: Require easymenu.el instead of auc-menu.el.
+ * Makefile (AUCSRC): Removed easymenu.el and auc-menu.el.
+ (MINMAPSRC): Removed easymenu.el, column.el and cpp.el.
+ * easymenu.el: File deleted.
+ * column.el: File deleted.
+ * cpp.el: File deleted.
+
+ * latex.el (LaTeX-math-insert): Don't check if `TeX-insert-macro'
+ is defined.
+ (LaTeX-close-environment): Work better when called on an empty
+ line. Fixed by David Aspinall <da@dcs.ed.ac.uk>.
+
+1995-10-12 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * tex.el ('LaTeX-math-mode): Autoload from latex.el instead of
+ ltx-math.el. Reported by Richard Brankin <richard@num-alg-grp.co.uk>.
+
+1995-02-14 Per Abrahamsen <abraham@iesd.auc.dk>
+
+ * latex.el (LaTeX-fill-region-as-paragraph): Should now format \\
+ correctly. Patch by michal@ellpspace.math.ualberta.ca (Michal
+ Jaegermann).
+ (LaTeX-fill-region-as-para-do): New function.
+ (LaTeX-fill-region-as-paragraph): Do not fill paragraphs inside
+ special environments.
+
+1995-02-12 Per Abrahamsen <abraham@iesd.auc.dk>
+
+ * tex.el (TeX-byte-compile): Make it default to nil. Suggested by
+ michal@ellpspace.math.ualberta.ca (Michal Jaegermann).
+
+ * tex-buf.el (TeX-command-query): Also offer to save files when
+ started from a menu. Reported by wscoas@win.tue.nl (Anton
+ A. Stoorvogel).
+ (TeX-LaTeX-sentinel): Don't suggest BibTeX if there is no
+ bibliographies. Suggested by Piet van Oostrum <piet@cs.ruu.nl>.
+
+1995-02-11 Per Abrahamsen <abraham@iesd.auc.dk>
+
+ * tex-buf.el (TeX-run-format): Protect against being run from a
+ different buffer. Patch by Michael Kifer
+ <kifer@sbkifer.cs.sunysb.edu>.
+
+ * latex.el (LaTeX-math-default): Moved `Phi' from V to F in
+ LaTeX-math-mode. Suggested by dak@ind.rwth-aachen.de (David
+ Kastrup).
+ * doc/math-ref.tex: Documented it.
+
+1995-02-02 Per Abrahamsen <abraham@iesd.auc.dk>
+
+ * tex-buf.el (TeX-home-buffer): Added interactive, reported by
+ edavid@lami.univ-evry.fr.
+
+1995-02-01 Per Abrahamsen <abraham@iesd.auc.dk>
+
+ * hilit-LaTeX.el: Upgraded to 1.06.
+
+ * Makefile (CONTRIB, EXTRAFILES): Moved tex-jp.el to CONTRIB.
+
+1995-01-27 Per Abrahamsen <abraham@iesd.auc.dk>
+
+ * latex.el (LaTeX-paragraph-commands): Incorrectly placed
+ parenthesis. Reported by mic@cs.ucsd.edu (Michelangelo Grigni).
+
+1995-01-26 Per Abrahamsen <abraham@iesd.auc.dk>
+
+ * latex.el (LaTeX-fill-region): Use marker to mark end of region
+ instead of integer, as the formatting may change the size of the
+ region.
+ (LaTeX-common-initialization): Fixed bug in paragraph definitions.
+ Reported by Steve Anderson <anderson@sapir.ling.yale.edu>.
+
+ * tex.el (save-match-data): Added by koba@flab.fujitsu.co.jp
+ (Kobayashi Shinji).
+ (bibtex-mode-hook): Don't use add-hook yet. Reported by
+ koba@flab.fujitsu.co.jp (Kobayashi Shinji).
+
+1995-01-25 Per Abrahamsen <abraham@iesd.auc.dk>
+
+ * tex.el (change-major-mode-hook): Also clear
+ `LaTeX-environment-list'.
+
+ * Makefile (AUCSRC): Add `auc-menu.el'.
+
+ * tex.el: Use auc-menu instead of easymenu.
+
+ * tex.el: Inserted comment to mark end of site customization.
+ Suggested by john@minster.york.ac.uk (John A. Murdie).
+
+ * tex.el (change-major-mode-hook): Forgot a set of parentheses.
+ Reported by Frederic Devernay <Frederic.Devernay@sophia.inria.fr>.
+
+ * tex-buf.el (TeX-current-pages): Removed extra parentheses.
+ Reported by mic@cs.ucsd.edu (Michelangelo Grigni).
+
+1995-01-24 Per Abrahamsen (abraham@iesd.auc.dk)
+
+ * tex.el (change-major-mode-hook): Added workaround for error in
+ XEmacs 19.11's `kill-all-local-variables'.
+
+1995-01-23 Per Abrahamsen <abraham@iesd.auc.dk>
+
+ * latex.el (LaTeX-common-initialization): Removed unnecessary
+ regexp quotes of `TeX-esc'.
+
+ * style/amsart.el: Move `eqref' definition to `style/amstex.el'
+ and load that style hook.
+ * style/amstex.el: New file.
+ * Makefile (STYLESRC): Added it.
+ Suggested by vb1890@PLAY.CS.NYU.EDU (Victor Boyko).
+
+1995-01-22 Per Abrahamsen <abraham@iesd.auc.dk>
+
+ * latex.el, ltx-math.el, Makefile: Integrated `ltx-math.el' in
+ `latex.el'.
+ * tex-site.el: Removed autoload for `LaTeX-math-mode'.
+
+1995-01-19 Per Abrahamsen <abraham@iesd.auc.dk>
+
+ * latex.el (latex-mode): Epoch fix by Martin Sjolin
+ <marsj@ida.liu.se>.
+
+1995-01-17 Per Abrahamsen <abraham@iesd.auc.dk>
+
+ * bib-cite.el: New file contributed by Peter S. Galbraith
+ <rhogee@bathybius.meteo.mcgill.ca>.
+
+ * hilit-LaTeX.el: New file contributed by Peter S. Galbraith
+ <rhogee@bathybius.meteo.mcgill.ca>.
+
+ * Makefile (CONTRIB): New macro for user contributed emacs lisp
+ packages, initialized with `bib-cite.el' and `hilit-LaTeX.el'.
+ (EXTRAFILES): Added $(CONTRIB) to the list.
+
+ * tex.el (TeX-directory-absolute-p): Moved definition before
+ `TeX-macro-private'. Reported by Frederic Devernay
+ <Frederic.Devernay@sophia.inria.fr>.
+
+ * latex.el (LaTeX-common-initialization): Remove extra and wrong
+ "\\\\par" from `paragraph-separate'. Bug reported by
+ nijhof@th.rug.nl (Jeroen Nijhof).
+
+1995-01-11 Per Abrahamsen <abraham@iesd.auc.dk>
+
+ * tex-buf.el (TeX-command-region): Comment fix. Patch by
+ wlang@rs6000.mri.akh-wien.ac.at (Willi Langenberger).
+ (TeX-region-create): More outline-mode safe. Patch by
+ wlang@rs6000.mri.akh-wien.ac.at (Willi Langenberger).
+
+ * Makefile (dist): Put version number in WWW page. Suggested by
+ several people.
+
+ * latex.el (LaTeX-auto-regexp-list): Ignore first optional
+ argument to newenvironment if there is a second. Problem reported
+ by schiotz@ltf.dth.dk (Jakob Schiotz).
+
+ * style/amsbook.el: New file. Problem reported by Denby Wong
+ <3dw16@qlink.queensu.ca>.
+
+1995-01-04 Per Abrahamsen <abraham@iesd.auc.dk>
+
+ * tex-buf.el (TeX-TeX-sentinel-check): New function. Updates
+ `TeX-current-page' with regexp by dodd@roebling.poly.edu (Lawrence
+ R. Dodd)
+ (TeX-current-pages): New function.
+ (TeX-LaTeX-sentinel, TeX-TeX-sentinel): Use it.
+ (TeX-format-filter): Removed unnecessary check before assignment.
+
+1995-01-03 Per Abrahamsen <abraham@iesd.auc.dk>
+
+ * tex-buf.el (TeX-LaTeX-sentinel): Write number of pages even
+ when labels or citations are missing. Patch by
+ dodd@roebling.poly.edu (Lawrence R. Dodd).
+
+1994-12-07 Per Abrahamsen <abraham@iesd.auc.dk>
+
+ * tex.el (TeX-directory-absolute-p): New function. Should work on
+ both Unix and MS DOS. Problem reported by schiotz@ltf.dth.dk
+ (Jakob Schiotz).
+ (TeX-parse-path): Use it.
+ (TeX-auto-generate): Use it.
+
+1994-12-05 Per Abrahamsen <abraham@iesd.auc.dk>
+
+ * latex.el (BibTeX-auto-store): Set TeX-auto-parse-length to
+ 999999 locally. Problem reported by Christoph Wedler
+ <wedler@fmi.uni-passau.de>.
+
+1994-12-02 Per Abrahamsen <abraham@iesd.auc.dk>
+
+ * tex-buf.el (TeX-LaTeX-sentinel): Check whether the ".bbl" file
+ need to be udpated before setting TeX-command-next to "BibTeX".
+ (TeX-command-query): Remove previous change.
+
+1994-11-28 Per Abrahamsen <abraham@iesd.auc.dk>
+
+ * latex.el (LaTeX-209-to-2e): New function by
+ Graham Gough <graham@cs.man.ac.uk>.
+
+ * latex.el (LaTeX-mode-menu): Move many commands to new
+ "Miscellaneous" submenu.
+
+ * tex-buf.el (TeX-home-buffer): Don't take arg.
+
+ * latex.el (LaTeX-left-right-indent-level): New variable
+ controling indentation for \left \right blocks.
+ (LaTeX-indent-level-count): New function. Previously only LaTeX
+ macros at the beginning of the line would affect indentation.
+ This problem was reported by many people.
+ (LaTeX-indent-calculate-last): Call `LaTeX-indent-level-count'.
+ Take into account that \end and \right at the beginning of the
+ line has immediate effect.
+
+1994-11-27 Per Abrahamsen <abraham@iesd.auc.dk>
+
+ * latex.el (TeX-global-input-files): New variable. Idea and
+ sample code by Christophe Mignot <Christophe.Mignot@loria.fr>.
+ (TeX-arg-input-file): Use it.
+ (BibTeX-global-style-files): Mention how it is reset in
+ `TeX-normal-mode'.
+ (BibTeX-global-files): Ditto.
+
+ * tex.el (TeX-normal-mode): Reset `BibTeX-global-style-files',
+ `BibTeX-global-files', and `TeX-global-input-files' if invoked
+ with an argument.
+
+ * tex-site.el: Ignore trailing `/' when adding TeX-lisp-directory
+ to load-path. Patch by Michael Ernst
+ <mernst@research.microsoft.com>.
+
+ * tex-buf.el (TeX-LaTeX-sentinel): Don't rerun LaTeX on missing
+ references, unless they have changed. Patch by schiotz@ltf.dth.dk
+ (Jakob Schiotz).
+
+ * latex.el (LaTeX2e-font-replace): New function.
+ (LaTeX-common-initialization): Set TeX-font-replace-function to
+ LaTeX2e-font-replace when using latex2e.
+
+ * tex.el (TeX-font-replace-function): New variable.
+ (TeX-font): Use it.
+
+ TeX-font-replace-function and LaTeX2e-font-replace were
+ contributed by Peter Thiemann
+ <thiemann@provence.informatik.uni-tuebingen.de>.
+
+
+1994-11-22 Per Abrahamsen <abraham@iesd.auc.dk>
+
+ * MSDOS: Added. Contributed by schiotz@ltf.dth.dk (Jakob
+ Schiotz).
+
+ * OEMACS: Removed.
+
+ * tex.el (VirTeX-common-initialization): Make
+ `words-include-escapes' a local variable before setting it.
+ Reported by Bo Nygaard Bai <bai@iesd.auc.dk>.
+
+1994-11-15 Per Abrahamsen <abraham@iesd.auc.dk>
+
+ * tex.el (TeX-auto-store): Change to functions that prevent the
+ auto file buffer from entering emacs-lisp-mode.
+ (TeX-auto-insert): Don't rely on emacs-lisp-mode for indentation.
+ Suggested by Stefan Schĥf (schoef@informatik.uni-oldenburg.de).
+
+1994-11-11 Per Abrahamsen <abraham@iesd.auc.dk>
+
+ * tex.el (TeX-macro-global): Change to `standard' path.
+
+1994-11-09 Per Abrahamsen <abraham@iesd.auc.dk>
+
+ * tex-buf.el (TeX-command-query): Suggest TeX-command-default
+ again if bbl file is newer than dvi file.
+
+1994-11-07 Per Abrahamsen <abraham@iesd.auc.dk>
+
+ * tex.el (TeX-submit-bug-report): Indicate LaTeX-version.
+ Suggested by schiotz@ltf.dth.dk (Jakob Schiotz).
+
+1994-10-26 Per Abrahamsen <abraham@iesd.auc.dk>
+
+ * Makefile (dist): Automatically update AUC-TeX-version and
+ AUC-TeX-date in tex.el
+
+ * tex.el (AUC-TeX-version): Added AUC-TeX-version and
+ AUC-TeX-date from auc-ver.el.
+
+ * auc-ver.el: File removed.
+
+ * tex.el: Added version specific code from seperate files.
+
+ * tex-19.el, tex-18.el, tex-lcd.el: Files removed.
+
+1994-10-25 Per Abrahamsen <abraham@iesd.auc.dk>
+
+ * doc/auc-tex.texi (Projects): Removed an implemented item.
+
+ * tex.el (TeX-command-current): New variable.
+ (TeX-command-select-master): New function.
+ (TeX-command-select-buffer): New function.
+ (TeX-command-select-region): New function.
+ (TeX-command-menu): Use TeX-command-current instead of explicit
+ file argument.
+ (TeX-command-menu-print): Remove file argument.
+ (TeX-command-menu-printer-entry): Don't pass file argument.
+ (TeX-command-create-menu): Removed.
+ (TeX-mode-menu): New menu.
+ (plain-TeX-mode-menu): Removed entries now in TeX-mode-menu.
+ (plain-TeX-mode-menu): Use `toggle' for bad boxes.
+ (plain-TeX-common-initialization): Enable TeX-mode-menu.
+
+ * latex.el (LaTeX-mode-menu): Removed entries now in
+ TeX-mode-menu.
+ (LaTeX-mode-menu): Use `toggle' for bad boxes.
+ (LaTeX-common-initialization): Enable TeX-mode-menu.
+
+ * tex-info.el (TeXinfo-command-menu): New menu.
+ (TeXinfo-mode-menu): Move commands to new menu.
+ (TeXinfo-mode-menu): Use `toggle' for bad boxes.
+ (texinfo-mode): Enable TeXinfo-command-menu.
+
+1994-10-24 Per Abrahamsen <abraham@iesd.auc.dk>
+
+ * Makefile (AUCSRC): Removed auc-menu.el from AUC TeX distribution.
+ (MINMAPSRC): Added easymenu.el temporarily to min-map distribution.
+
+ * auc-menu.el: Just load easymenu.el when using GNU Emacs.
+
+ * easymenu.el Try to use RMS's easymenu instead of auc-menu.
+ (easy-menu-define): Call `easy-menu-do-define' to do
+ the real work. Document XEmacs keyword arguments.
+ (easy-menu-do-define): New function.
+ (easy-menu-create-keymaps): Support XEmacs keyword arguments in
+ menu definition.
+ (easy-menu-remove): Make is a function instead of a macro.
+ (easy-menu-add): Ditto.
+
+1994-10-21 Per Abrahamsen <abraham@iesd.auc.dk>
+
+ * doc/auc-tex.texi (Completion): Less confusing BibTeX advice, I hope.
+
+ * tex-jp.el: Added patch from koba@flab.fujitsu.co.jp (Kobayashi
+ Shinji).
+
+ * latex.el (TeX-arg-insert-braces): Have \left and \right on
+ different lines. Patch by thiemann@informatik.uni-tuebingen.de
+ (Peter Thiemann).
+
+ * Makefile (dist): Add CHANGES and ChangeLog files to the ftp
+ directory. Suggested by Frederic Devernay
+ <Frederic.Devernay@sophia.inria.fr>.
+
+ * latex.el (LaTeX-indent-calculate): Allow nil second element in
+ `LaTeX-indent-environment-list'.
+ (LaTeX-indent-environment-list): Added special environments
+ suggested by thiemann@informatik.uni-tuebingen.de (Peter
+ Thiemann).
+
+1994-10-20 Per Abrahamsen <abraham@iesd.auc.dk>
+
+ * tex.el (TeX-auto-list-information): Spelling error.
+
+1994-10-18 Per Abrahamsen <abraham@iesd.auc.dk>
+
+ * latex.el (LaTeX-common-initialization): Make "LaTeX2e" the
+ default command if you have set `LaTeX-version' to "2" and is
+ using "\documentclass".
+
+1994-10-06 Per Abrahamsen <abraham@iesd.auc.dk>
+
+ * latex.el (LaTeX-paragraph-commands): End each word with a "\\b"
+ to avoid accidentally matching longer macros.
+
+ * tex.el (TeX-add-local-master): Use three %'s when adding buffer
+ local variables. Suggested by Raymond Toy <toy@rtp.ericsson.se>.
+
+ * tex.el (TeX-format-list): Added entry for AmSTeX by Ulf Juergens
+ <ulf@Mathematik.Uni-Bielefeld.DE>.
+
+ * tex.el (ams-tex-mode): Run AmS-TeX-mode-hook, not
+ plain-TeX-mode-hook. Reported by Ulf Juergens
+ <ulf@Mathematik.Uni-Bielefeld.DE>.
+
+ * tex-buf.el (TeX-format-filter): Add `save-match-data'. Patch by
+ David Aspinall <da@dcs.edinburgh.ac.uk>.
+
+1994-09-14 Per Abrahamsen <abraham@iesd.auc.dk>
+
+ * cpp.el: Use RMS's version.
+
+1994-09-13 Per Abrahamsen <abraham@iesd.auc.dk>
+
+ * doc/history.texi, doc/auc-tex.texi: Fixes from Chris Fearnley
+ <@vm.uni-c.dk:FEARNLCJ@DUVM>.
+
+1994-09-09 Per Abrahamsen <abraham@research.att.com>
+
+ * latex.el (LaTeX-insert-environment): Don't fill environments
+ listed in `LaTeX-indent-environment-list'. Suggestion by Graham
+ Gough <graham@cs.man.ac.uk>.
+
+ * tex.el (LaTeX-command-style): Made latex2e first in the list.
+ Suggested by Frederic Devernay <Frederic.Devernay@sophia.inria.fr>.
+
+1994-09-05 Per Abrahamsen <abraham@research.att.com>
+
+ * tex.el (TeX-file-extensions): Added LaTeX2 `cls' extension after
+ query by jmv@di.uminho.pt (Jose Manuel Valenca).
+
+1994-08-30 Per Abrahamsen <abraham@research.att.com>
+
+ * tex-jp.el: New version from koba@flab.fujitsu.co.jp (Kobayashi
+ Shinji).
+
+ * tex.el (TeX-command-list): Fifth element is now ignored.
+
+ * tex-buf.el (TeX-command-query): Check if region file is newer
+ than dvi file.
+ (TeX-command-region): Only query for command _after_ region file
+ is created.
+ (TeX-region-create): Only save file if the new content is
+ different than the original content.
+
+1994-08-29 Per Abrahamsen (abraham@research.att.com)
+
+ * tex-buf.el (TeX-warning): Use offset for line end. Fixed by
+ ddw2@sunbim.be (Dominique de Waleffe).
+
+1994-08-26 Per Abrahamsen (abraham@iesd.auc.dk)
+
+ * doc/auc-tex.texi (Projects): Removed preceding item from
+ wishlist.
+
+ * latex.el (LaTeX-common-initialization): Fix to comments
+ separating paragraphs by koba@flab.fujitsu.co.jp (Kobayashi
+ Shinji).
+
+ * tex-jp.el (LaTeX-fill-region-as-paragraph): New version for MULE
+ 2.0 by Tomotake FURUHATA <furuhata@trl.ibm.co.jp>.
+
+ * tex.el (TeX-function-p): Spelling error in doc.
+
+1994-08-23 Per Abrahamsen (abraham@iesd.auc.dk)
+
+ * doc/intro.texi (Contacts): Some reformulations.
+
+1994-08-21 Per Abrahamsen (abraham@iesd.auc.dk)
+
+ * tex-jp.el (TeX-insert-punctuation): Japanese version from
+ koba@flab.fujitsu.co.jp (Kobayashi Shinji).
+
+1994-08-19 Per Abrahamsen (abraham@iesd.auc.dk)
+
+ * doc/install.texi: The `site-lisp' directory is also available in
+ Lucide Emacs 19.10. Reported by Tim Geisler
+ <geisler@pms.informatik.uni-muenchen.de>.
+
+1994-08-18 Per Abrahamsen (abraham@iesd.auc.dk)
+
+ * latex.el (TeX-arg-cite): Prompt for multiple keys. Suggested by
+ Masahiro Kitagawa <kitagawa@ee.es.osaka-u.ac.jp>.
+
+1994-08-17 Per Abrahamsen (abraham@iesd.auc.dk)
+
+ * style/german.el ("german"): Use `TeX-quote-after-quote'.
+ Suggested by te@informatik.uni-hannover.de (Thomas Esser).
+
+ * latex.el (LaTeX-common-initialization): Error in regexp for
+ multiple arguments to `\cite', reported by Masahiro Kitagawa
+ <kitagawa@ee.es.osaka-u.ac.jp>.
+
+1994-08-17 Per Abrahamsen (abraham@iesd.auc.dk)
+
+ * latex.el (LaTeX-env-figure): Put caption inside center
+ environment. Suggested by Martin Wunderli <wunderli@inf.ethz.ch>.
+
+ * tex.el (TeX-strip-extension): If NODIR is set to `path', remove
+ the directory part iff it is equal to the current directory, or is
+ a member of either `TeX-macro-global' or `TeX-macro-private'.
+ (TeX-master-file): Use `path' for NODIR when querying the user for
+ a file name. Reported finger@brachio.Informatik.Uni-Dortmund.DE
+ (Bernd Finger).
+
+1994-08-16 Per Abrahamsen (abraham@iesd.auc.dk)
+
+ * latex.el (LaTeX-common-initialization): `eqnarray*' should not
+ have a label. Reported by dodd@roebling.poly.edu (Lawrence R.
+ Dodd).
+
+1994-08-11 Per Abrahamsen (abraham@iesd.auc.dk)
+
+ * tex-buf.el (TeX-background-filter): Always show background
+ output.
+
+1994-08-10 Per Abrahamsen (abraham@iesd.auc.dk)
+
+ * Makefile (MINMAPSRC): Added `all.el'.
+
+ * all.el: New file.
+
+ * tex-buf.el (TeX-LaTeX-sentinel): Write "some" if
+ TeX-current-page is nil. Reported by Michail Rozman
+ <roz@physik.uni-ulm.de>.
+
+1994-08-09 Per Abrahamsen (abraham@iesd.auc.dk)
+
+ * auc-menu.el (easy-menu-add): Undid previous change.
+ (top level `cond'): Use Emacs 18 code if `window-system' is nil.
+ Patch by Patrice Belleville <patrice@cs.sfu.ca>.
+
+1994-08-08 Per Abrahamsen (abraham@iesd.auc.dk)
+
+ * tex.el (TeX-electric-macro): No electricity after `.' or `\'.
+
+1994-08-06 Per Abrahamsen (abraham@iesd.auc.dk)
+
+ * latex.el (LaTeX-paragraph-commands): New variable.
+ (LaTeX-common-initialization): Use it. Suggested by
+ liyuan@allwise.research.att.com (Yuan P. Li).
+
+ * auc-menu.el (easy-menu-add): Check that `x-popup-menu' is bound
+ and that we are running under X before calling it. Reported by
+ Adrian F. Clark <alien@essex.ac.uk>
+
+1994-08-04 Per Abrahamsen (abraham@iesd.auc.dk)
+
+ * tex-jp.el (LaTeX-fill-region-as-paragraph): Patch for Emacs 19
+ regexps by koba@flab.fujitsu.co.jp (Kobayashi Shinji) reported by
+ Uenami Ken'ichi <uenami@rita.cow.melco.co.jp>.
+
+ * doc/auc-tex.texi (European): Mention `iso-cvt.el' as suggested
+ by mike@vlsivie.tuwien.ac.at (Michael Gschwind).
+
+1994-08-03 Per Abrahamsen (abraham@iesd.auc.dk)
+
+ * doc/history.texi: New file.
+
+ * doc/Makefile (HISTORY): Added rule.
+
+ * Makefile (EXTRAFILES): Added `ChangeLog'.
+ (DOCFILES): Added `history.texi'.
+
+ * doc/auc-tex.texi (History): Made ready for 9.2. Move history to
+ `history.texi'.
+
+ * doc/changes.texi: Made ready for 9.2. Introduce ChangeLog.
+
+ * Makefile (LispInstall): Use "/bin/pwd" instead of "pwd".
+ reported by mic@cs.ucsd.edu (Michelangelo Grigni).
+
+ * ChangeLog: New file.
+
+ * Version 9.1 released.
+
+This file records repository revisions from
+commit c865982cacab289f4480f9145b3438ec06824232 (exclusive) to
+commit 8eb3cccba9f0085e5d4d1d734abcb9d1dcbf6169 (inclusive).
+
+;; Local Variables:
+;; coding: utf-8
+;; End:
+
+ Copyright (C) 1994-2016 Free Software Foundation, Inc.
+
+ This file is part of GNU AUCTeX.
+
+ GNU AUCTeX is free software: you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation, either version 3 of the License, or
+ (at your option) any later version.
+
+ GNU AUCTeX is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with GNU AUCTeX. If not, see <http://www.gnu.org/licenses/>.
diff --git a/support/auctex/13.1-extra/ChangeLog.1.sig b/support/auctex/13.1-extra/ChangeLog.1.sig
new file mode 100644
index 0000000000..e24aae2eb1
--- /dev/null
+++ b/support/auctex/13.1-extra/ChangeLog.1.sig
Binary files differ
diff --git a/support/auctex/13.1-extra/auctex.pdf b/support/auctex/13.1-extra/auctex.pdf
new file mode 100644
index 0000000000..37cfd17748
--- /dev/null
+++ b/support/auctex/13.1-extra/auctex.pdf
Binary files differ
diff --git a/support/auctex/13.1-extra/auctex.pdf.sig b/support/auctex/13.1-extra/auctex.pdf.sig
new file mode 100644
index 0000000000..8542b0ef9e
--- /dev/null
+++ b/support/auctex/13.1-extra/auctex.pdf.sig
Binary files differ
diff --git a/support/auctex/13.1-extra/auctex.ps b/support/auctex/13.1-extra/auctex.ps
new file mode 100644
index 0000000000..347c01900a
--- /dev/null
+++ b/support/auctex/13.1-extra/auctex.ps
@@ -0,0 +1,23439 @@
+%!PS-Adobe-2.0
+%%Creator: dvips(k) 2021.1 Copyright 2021 Radical Eye Software
+%%Title: auctex.dvi
+%%CreationDate: Sun Feb 20 19:30:49 2022
+%%Pages: 141
+%%PageOrder: Ascend
+%%BoundingBox: 0 0 612 792
+%%DocumentFonts: CMBX12 CMR10 CMSY10 CMMI12 CMMI10 CMSS10 CMCSC10 CMTT10
+%%+ CMSL10 CMSLTT10 CMB10 CMTI10 CMR7 CMR9 CMTT9 CMSS12 CMTT12 CMMI9
+%%+ CMR8
+%%DocumentPaperSizes: Letter
+%%EndComments
+%DVIPSWebPage: (www.radicaleye.com)
+%DVIPSCommandLine: /usr/bin/dvips auctex.dvi -Ppdf -o auctex.ps
+%DVIPSParameters: dpi=8000
+%DVIPSSource: TeX output 2022.02.20:1930
+%%BeginProcSet: tex.pro 0 0
+%!
+/TeXDict 300 dict def TeXDict begin/N{def}def/B{bind def}N/S{exch}N/X{S
+N}B/A{dup}B/TR{translate}N/isls false N/vsize 11 72 mul N/hsize 8.5 72
+mul N/landplus90{false}def/@rigin{isls{[0 landplus90{1 -1}{-1 1}ifelse 0
+0 0]concat}if 72 Resolution div 72 VResolution div neg scale isls{
+landplus90{VResolution 72 div vsize mul 0 exch}{Resolution -72 div hsize
+mul 0}ifelse TR}if Resolution VResolution vsize -72 div 1 add mul TR[
+matrix currentmatrix{A A round sub abs 0.00001 lt{round}if}forall round
+exch round exch]setmatrix}N/@landscape{/isls true N}B/@manualfeed{
+statusdict/manualfeed true put}B/@copies{/#copies X}B/FMat[1 0 0 -1 0 0]
+N/FBB[0 0 0 0]N/nn 0 N/IEn 0 N/ctr 0 N/df-tail{/nn 8 dict N nn begin
+/FontType 3 N/FontMatrix fntrx N/FontBBox FBB N string/base X array
+/BitMaps X/BuildChar{CharBuilder}N/Encoding IEn N end A{/foo setfont}2
+array copy cvx N load 0 nn put/ctr 0 N[}B/sf 0 N/df{/sf 1 N/fntrx FMat N
+df-tail}B/dfs{div/sf X/fntrx[sf 0 0 sf neg 0 0]N df-tail}B/E{pop nn A
+definefont setfont}B/Cw{Cd A length 5 sub get}B/Ch{Cd A length 4 sub get
+}B/Cx{128 Cd A length 3 sub get sub}B/Cy{Cd A length 2 sub get 127 sub}
+B/Cdx{Cd A length 1 sub get}B/Ci{Cd A type/stringtype ne{ctr get/ctr ctr
+1 add N}if}B/CharBuilder{save 3 1 roll S A/base get 2 index get S
+/BitMaps get S get/Cd X pop/ctr 0 N Cdx 0 Cx Cy Ch sub Cx Cw add Cy
+setcachedevice Cw Ch true[1 0 0 -1 -.1 Cx sub Cy .1 sub]{Ci}imagemask
+restore}B/D{/cc X A type/stringtype ne{]}if nn/base get cc ctr put nn
+/BitMaps get S ctr S sf 1 ne{A A length 1 sub A 2 index S get sf div put
+}if put/ctr ctr 1 add N}B/I{cc 1 add D}B/bop{userdict/bop-hook known{
+bop-hook}if/SI save N @rigin 0 0 moveto/V matrix currentmatrix A 1 get A
+mul exch 0 get A mul add .99 lt{/QV}{/RV}ifelse load def pop pop}N/eop{
+SI restore userdict/eop-hook known{eop-hook}if showpage}N/@start{
+userdict/start-hook known{start-hook}if pop/VResolution X/Resolution X
+1000 div/DVImag X/IEn 256 array N 2 string 0 1 255{IEn S A 360 add 36 4
+index cvrs cvn put}for pop 65781.76 div/vsize X 65781.76 div/hsize X}N
+/dir 0 def/dyy{/dir 0 def}B/dyt{/dir 1 def}B/dty{/dir 2 def}B/dtt{/dir 3
+def}B/p{dir 2 eq{-90 rotate show 90 rotate}{dir 3 eq{-90 rotate show 90
+rotate}{show}ifelse}ifelse}N/RMat[1 0 0 -1 0 0]N/BDot 260 string N/Rx 0
+N/Ry 0 N/V{}B/RV/v{/Ry X/Rx X V}B statusdict begin/product where{pop
+false[(Display)(NeXT)(LaserWriter 16/600)]{A length product length le{A
+length product exch 0 exch getinterval eq{pop true exit}if}{pop}ifelse}
+forall}{false}ifelse end{{gsave TR -.1 .1 TR 1 1 scale Rx Ry false RMat{
+BDot}imagemask grestore}}{{gsave TR -.1 .1 TR Rx Ry scale 1 1 false RMat
+{BDot}imagemask grestore}}ifelse B/QV{gsave newpath transform round exch
+round exch itransform moveto Rx 0 rlineto 0 Ry neg rlineto Rx neg 0
+rlineto fill grestore}B/a{moveto}B/delta 0 N/tail{A/delta X 0 rmoveto}B
+/M{S p delta add tail}B/b{S p tail}B/c{-4 M}B/d{-3 M}B/e{-2 M}B/f{-1 M}
+B/g{0 M}B/h{1 M}B/i{2 M}B/j{3 M}B/k{4 M}B/w{0 rmoveto}B/l{p -4 w}B/m{p
+-3 w}B/n{p -2 w}B/o{p -1 w}B/q{p 1 w}B/r{p 2 w}B/s{p 3 w}B/t{p 4 w}B/x{
+0 S rmoveto}B/y{3 2 roll p a}B/bos{/SS save N}B/eos{SS restore}B end
+
+%%EndProcSet
+%%BeginProcSet: alt-rule.pro 0 0
+%!
+% Patch by TVZ
+% Makes dvips files draw rules with stroke rather than fill.
+% Makes narrow rules more predictable at low resolutions
+% after distilling to PDF.
+% May have unknown consequences for very thick rules.
+% Tested only with dvips 5.85(k).
+TeXDict begin
+/QV {
+ gsave newpath /ruleY X /ruleX X
+ Rx Ry gt
+ { ruleX ruleY Ry 2 div sub moveto Rx 0 rlineto Ry }
+ { ruleX Rx 2 div add ruleY moveto 0 Ry neg rlineto Rx }
+ ifelse
+ setlinewidth 0 setlinecap stroke grestore
+} bind def
+end
+
+%%EndProcSet
+%%BeginProcSet: texps.pro 0 0
+%!
+TeXDict begin/rf{findfont dup length 1 add dict begin{1 index/FID ne 2
+index/UniqueID ne and{def}{pop pop}ifelse}forall[1 index 0 6 -1 roll
+exec 0 exch 5 -1 roll VResolution Resolution div mul neg 0 0]FontType 0
+ne{/Metrics exch def dict begin Encoding{exch dup type/integertype ne{
+pop pop 1 sub dup 0 le{pop}{[}ifelse}{FontMatrix 0 get div Metrics 0 get
+div def}ifelse}forall Metrics/Metrics currentdict end def}{{1 index type
+/nametype eq{exit}if exch pop}loop}ifelse[2 index currentdict end
+definefont 3 -1 roll makefont/setfont cvx]cvx def}def/ObliqueSlant{dup
+sin S cos div neg}B/SlantFont{4 index mul add}def/ExtendFont{3 -1 roll
+mul exch}def/ReEncodeFont{CharStrings rcheck{/Encoding false def dup[
+exch{dup CharStrings exch known not{pop/.notdef/Encoding true def}if}
+forall Encoding{]exch pop}{cleartomark}ifelse}if/Encoding exch def}def
+end
+
+%%EndProcSet
+%%BeginFont: CMR8
+%!PS-AdobeFont-1.0: CMR8 003.002
+%%Title: CMR8
+%Version: 003.002
+%%CreationDate: Mon Jul 13 16:17:00 2009
+%%Creator: David M. Jones
+%Copyright: Copyright (c) 1997, 2009 American Mathematical Society
+%Copyright: (<http://www.ams.org>), with Reserved Font Name CMR8.
+% This Font Software is licensed under the SIL Open Font License, Version 1.1.
+% This license is in the accompanying file OFL.txt, and is also
+% available with a FAQ at: http://scripts.sil.org/OFL.
+%%EndComments
+FontDirectory/CMR8 known{/CMR8 findfont dup/UniqueID known{dup
+/UniqueID get 5000791 eq exch/FontType get 1 eq and}{pop false}ifelse
+{save true}{false}ifelse}{false}ifelse
+11 dict begin
+/FontType 1 def
+/FontMatrix [0.001 0 0 0.001 0 0 ]readonly def
+/FontName /CMR8 def
+/FontBBox {-36 -250 1070 750 }readonly def
+/PaintType 0 def
+/FontInfo 9 dict dup begin
+/version (003.002) readonly def
+/Notice (Copyright \050c\051 1997, 2009 American Mathematical Society \050<http://www.ams.org>\051, with Reserved Font Name CMR8.) readonly def
+/FullName (CMR8) readonly def
+/FamilyName (Computer Modern) readonly def
+/Weight (Medium) readonly def
+/ItalicAngle 0 def
+/isFixedPitch false def
+/UnderlinePosition -100 def
+/UnderlineThickness 50 def
+end readonly def
+/Encoding 256 array
+0 1 255 {1 index exch /.notdef put} for
+dup 67 /C put
+dup 73 /I put
+dup 74 /J put
+dup 75 /K put
+dup 79 /O put
+dup 83 /S put
+readonly def
+currentdict end
+currentfile eexec
+D9D66F633B846AB284BCF8B0411B772DE5CE3DD325E55798292D7BD972BD75FA
+0E079529AF9C82DF72F64195C9C210DCE34528F540DA1FFD7BEBB9B40787BA93
+51BBFB7CFC5F9152D1E5BB0AD8D016C6CFA4EB41B3C51D091C2D5440E67CFD71
+7C56816B03B901BF4A25A07175380E50A213F877C44778B3C5AADBCC86D6E551
+E6AF364B0BFCAAD22D8D558C5C81A7D425A1629DD5182206742D1D082A12F078
+0FD4F5F6D3129FCFFF1F4A912B0A7DEC8D33A57B5AE0328EF9D57ADDAC543273
+C01924195A181D03F5054A93B71E5065F8D92FE23794D2DB9928A7C95D3A6E9B
+8E92F84CA0AA44461D2F4FA0F8B81C6F5B7BE98C9712BE166610465CF689DFAF
+27C875C029C0116DE61C21DA0092D029E7DBEDFDDEE3D67E6936623AB53FA2AF
+18BEDDD7AC19A19CADB6ED6CA7A26E6044BE414FFF59C0B98D5819A6B881F9AB
+7AD0D03BDD5CD309C67811D5CF0B93F6FDC9AE64F74ED4E81F2E18D880BD842A
+DAFD0BDF06300201C6946087FC0B999447BC370200BFB8CA420B668B32EBC242
+6DB1546A7164CF55B332FE9D239B65F532B69EF9F4F93828A44C8F5C526126F8
+B7A369114CA68D4F98638121F4E17F351723D9F1A902FCF087F94AFD23876517
+2D15B482AF2D68C3F31FFA864E031596E597882578AC7FB0DAE2A713B065B374
+3E2E72519ED6D50CBCA40A7275A7109A4F3ED8A4566AD8832890D3D1F4899850
+9B757442B7EA355175CD5D6D8B4152ED2D7EEB4CE30F174FF672140354046A45
+7098EC45B9DF3DF5CF7B417E201DA88308CEF4CED8E8903AF24FB8DD0187352D
+25738519ECBC70304F8F620CC45D2586619205DA3955696FAFFE2082402B3502
+CB682F410DE5FFE80A4DA3D3BCF02E35BD577D0DE55E7B8A33B7A2FD5136B5DD
+A0BCB61F8E7F4363C21F890CF287304DDB8FCE7FE207C0D160B81E7EA662BED2
+DFF8C444E19C91E72254257CD87240A70F1A964FA54ED9ECF27E27A57DACC3DE
+EABB92C085030870C6CF5C40B6E47F5C0AEB30E84A73ECDABB2D754EF6EA28BB
+16EBD6636BC288E62F4A38BFB55F5F4DD20FDD77D767F6CB52F9513E8EB75413
+07F1877B2C01278675177499E4E8EB09F2657821613F5C7643FC064293EC6E9E
+B519FFAEEA36B19C9D1302CF91FCBF87FCB57C5F995CB6712BB3D8681EB6F05B
+B2A4195A3C73CB4ABCCFB958EAC533BD89560D2790CDE1444C0F2E4EF27A529C
+F01052964E56F6D76A190E5FF45934BB711A3406284AF130D4DC0D8112BB3752
+762CA0200CA262359D4F54C0CCFA9A50DE18C7DB14419E2990ADDC4A54B94978
+D9174CA39434022FA77FB30179EF805E2189C35919F5EBE215EE2A00B4407826
+CE56329C5586D8B414770BA5D45513C3AF1931D632FCE69B4CA504944E03362C
+74A1177C6398A61A12DAA0F156543E2A8E9969C4308B7ACC21A5ECAC8F172541
+1B1316A88C0C163E574FFD3CD22FF08488662FCF2F9344BC25D02146F36CA6F9
+E2D0130C654B7485EEA9A110A33AA0C769121F81821E9A2BD062FAC158359D44
+3F9D9947200EF1EDDD5860F10438B162A69683957300C75AF7546C70C97AB2EE
+37EAAF0089E2623F787F252569B06C665FDB45EC9681C0774ACFBA76B98C4E89
+7EB12AA5F8798FFC110B49C25E3A483ABE83B0BCC6DF0578403ADC369E013762
+C9D08FC94D949BAE636ACA9F36F4E3F02296775A062077B011A705B6F1784D36
+A926622CB3847533D7ACB24A4EBABB14593B5D8E1DAE2BFEF8A51835C8D4E76D
+7543C126A4271C59A5881A5AF89331694F84489CA66725995DC3070F306EA447
+CF30F63CD476A46D528EC1FFBFB8EACFA2BEEDCF54C92CE2BD26DEA5827186BD
+3A4D1709415CEE7D51D671357B4A5D11E835F63521B9824EE5282E58F05A8ACC
+FD249461181A38C2F47BAC4E79BE368D64F886AA493C61CBCB2ED401C8AFBA61
+59CA6F6216D941A92AC52ACB3D7ECC28D6A58EF4CC70BA6DE23E80937AB38E89
+6F05FDD15B954C0826636267EDAF9F2BB466BF79D2E10EED9B04297E6BC93069
+79581ADD1A9D9FAE9306F46AC95B98C60A2E53D60CF1AA4069BE301E17E25070
+F98DD67BD8642B1D07571A32766072E48BF27E1576FFEED300D7313A358A823B
+49C8F135961B7E259095C9BB67F996CE0B90E95344F203922F47E11753F70D38
+2ECB615403490310CEE6C03AFA97DA2F47ED47125D110FA69725BA0018F6A40B
+29A307FDB3E52322A77A0102E6F57654CF1E96A134D13860D83AFA0A41112D3F
+2247A09ACF7D06713BE443FA27C7E7220E875965D53030FE7D2D62EFD2F1DB87
+5FB091FEAF599BA8C5167525899E578AB341BFE2BC4E53A047093168AE189237
+EA55F055514EFA939DAE9E859CB5FBCF37D99484F44FE5AA5FA386B28BB642F5
+5DBAF059A50FE96C7C6D834531D64F1F2E99AB2E96EE74D149178B1C0618495E
+293973D9A03E1790654B67C0882376ABEC17D74785B3737D81644F28B3BC6FFF
+F92FE29126995A07E0BC5EF3A4B93789A103C428943E045B8D1A5063AE71E806
+568D48072E53DEA85253B01DF0BB7367A6BE4DD7BE514AD74E3F77C825ABA405
+64DAFA25EAFF8F63344B5F6B523629776CEB090B546469F6A6008DE43072DD3C
+DEF51F62731037D1FBD0C038A1E9B669849EB3BEBA281624F13D20B61917A109
+A0A7871A73F7BAA18077360B38A4625C5DB9AB9E43BDEEB856FD0E2D3AA2E075
+267B978B9EB47F2369302E87DBD5D5B422830BEC32411FE75D584C58650EFB1D
+136FEB92B94BF8939FD63AFB7349C7511E5E46AA7324F8B1FFCA9C2A9E9720C0
+A720918E8E860F137567D386AC29870FD990BD69465B3A3D2A0ECF2753578AD7
+80DC87EBB319EB5AFE0B6F6FF8616EA30C51425FE3ECBC5F8D0B0BEFDEF32FA7
+D168B4E85C804B7326A0942CFDE732B1171C643452B7099B31649CA2C38B62FB
+46EBDF7180004C549B53F88021D029452C2B37D8C565BCDB0B11541039A13C0A
+E45D4B68C7907B8BF08C6F41F564B62BB554235D50330E78DD02795516D969C9
+66119D718798120442CB7EB9877FF84EC69DAE25F8559DCE3BD8042959F695F8
+2F99845B1B5680DDCF181D806CC4903E077D1FF5E60918EB34C0B1E028422B71
+CA63EFBF3F4F3CD813CE831EB54265A555BDD35AD7D723F9CFBDAB29C54F8AFF
+2D35C6A3299E0A2DB470C7B141B1E3E10DABB7873AE302926BA8743278FAA8C0
+DC6174501D6A289CF980A3F55F2DD5C3A514E7E7F13133C35D2697D64C25130C
+DB78FC997968D6B3BC929E8A31B6D212C5128E4412632BC52B3A1049F7F2F61B
+C74AE9A6AD19B9E2E240617E2882F7D29ED3A4279439107AF9AEBEE47CE85DE5
+CE9595A96A118ACF1EB1F5929930321AF7732E351E18C6AD378508E37B4C327B
+0E06AAE21278AFA9255AFE5C022034DA2968D260879B4B38E7EE2E11A593DC3F
+CE71ABA050C004473324CAB6F3C50E85DEDA3E9A27388D8FD3A8F6E42A79670E
+F7549CFAD4CCB337A6E0BAA4846ABCA059F1E1933CF11DC0FFBFF550CC4A1B47
+CF7BCE0875FA747AA854534960F757884505A5AEE0330179A9547A4AE3E68479
+7A457DE83326DC30B67F27CFD4AB697601CEE352F72F0966B3CEE3EA24683BEF
+6D23AD51B8432C3F0DD0D0F80791E1091F38988B7A54E466A9AC7810DE8B7893
+6B0AA6356597891D56190A7660BC7F657BC559E0525D41EC228078F2FBF89C6C
+72D666DAD838CBF0861FBF0A1D4ECC069AA49DFBAE5C56B781A1D5D79DAAC256
+13E3F9B928A2394FC71691E4355642764459714412D6F8EF803FC5F7353822DE
+6CCBB8FBE5AA1F2C7F4D384039D85E7728527DF9FE0239E2CF8BCB7411C000B7
+1FE660AE6A2A19229E5E8776CC83EFF3C27403935756463EB4721C51FE0B1197
+86C2F17842A0FB639F28083DFD4F1E86D7D3BEFA922514ABF489C5CCE93D6F72
+D2EAAE14F6CBA2BE4BBE7D7EA8EA19DB3A87350D4A52064137C3D15A5B05B03B
+70B1DA7328D10713B83974C390C3270AF5A9A47C0BFBFABB9F31063B0CCFBB10
+0F236C74446688198EFF039110F6FF42FA9F82D463AD3958B5FD205BDF85DE20
+FE3F0C7AEEF350AEE6DBC1DE2E2DA4F4599956F59D6F121F7086DC120416E180
+52DBBC4E56C09746938698860F30007091E1CC0351B43990E47208ED495310F5
+7BA9C6AB3CA10A3F1B318FD47C1CE3B9FF1304321F9623E32D315AA9CE64B35B
+F841E6C62B5B2488A311C94937879E5E0E170FA77AF0AC75C5E6E9F3E8F825AA
+09C1702682E14FDFA72D27901C5BDE009B1E52E8C4511C6F6336251BD45261F7
+401CA3DAE7C4B0CAEB91B9954BF4A97C48ECE7FAD401351D59DDAE9DA94E2335
+74A2B880E4749D3D7026CB5299F16C204B6E00A20A6619C34922C7D3FB50F127
+3157CFC08DCC5164C8023CD1B6C3556C73CB8E4ADA845339CA9BABA1457ECEE6
+ECB9849DF1F0FEBC89E5F97C92978A500196520839CEBA6C0FD2E3D27BB4B4F0
+93CB2BB565F4627C6DB62DD0E084E627D69B5DEF42EF094381B62C0D67EFD197
+301B132420F51A41561E6106870147E0D597078435BE3819ACF0DE28AD779847
+F3D2CF667DA06955D53E0204CEA2935E9E984E76963D3079EC092031E2A10E61
+1227E5EE6770DD4D745A52655369EBA06A19BD7D95BBA271E488241199D1008E
+36EA99F8DFD2A9F87B06B070158B466AA4C6EA3BA77DB0F853F0BF9A304EA291
+34069714368E0B94DFCBA3BE5EDB6C8204DFA7EAF5C3406F60A7056407D1BF6C
+CB85C1F432F97D821F5518BBA79AF8453A568FB2C2D025A70CEC75F46C545011
+ACE3A99B2582793BA1DC655230AE2EFD24DE20A01D4A441AFFAB7771F223FA6B
+9169849E727E494247F67D6E1EA9DCA06A082FE2094BD548AD7F08B565145634
+E7ED832FEC1378306DDC796303392ADB0CBA130B63B38ED57B7828B47732853A
+893E8836FE19CCF27002AE92C2B2CACFDF8A42F1B8066E033B965D2E9157FDF8
+E1264B40813C1A4CE424274AA3528A4F09B3B53DD4D23789A68B3D17BC1398AE
+0ADA2C2168427A49846DE0216908C2FFFEF4F13C1ECA12AD341E238EE46E6DC2
+B71B54C52659632911F901660261E493AE2483D64E119D9924489779B62BC9FB
+A052E822FD8D83178E09ADC825DF0DA07FCE7AD68EEB29FAA275A13691B4A5A5
+B0BC0499CD6307610CD6209583C1152C559A2760823F8DC0B9B990BFFE7B7E9F
+3969B968AFEAADB9FC0F1410EBBAA0DB979CF153F0B8C978405F8E6F2B6406D7
+AAFBF4A655A15DD6D1E9A7EAE10EF89264659B09283F50B734236885FC09FBE5
+98D780012FA77FCB19F15BDC522CC7312546C0730EF5225DEA8C22A3BC6554EF
+4FE73B9AEB5C2F7DBD474221760E5F539A064AC450591BCF3499E3968F2CBD6B
+F15BA2B37080A4129B66D4C2188524F025414F14DB3F96049A8B0E5EB2BBE7A1
+AD64A988FE875FE4FE5186BB4F5DDA16983CB052D474B7D72F3E8965663EB50E
+015C72407C3437142D3D7DBC055FA627139488DBC5A0F98D805C2143D99F491A
+167E07AF60EC9F17C36289368D740B632CB919A0E74C412B76CE7A5906D5200F
+9E79CEB9C65ADA3A0F23E8947E834AE7A329A9F0AA7A6BF545B1D7B4666C6522
+CFF268634EA06DB3A82D91A4C0A9B227E79961212881A54A6762C335DE7E0831
+130C45D94394D21C049B9D189ED955438C2151514F17BFC67E431DD9A8349202
+2F616AEC1C7B19F63D5000EB4771370924BD4B9053FE78B5E4A244B9A149D66D
+A8BF3B398396D2233E92E4A5FDC70FAADEADAFD255193D688842DBA865CF6154
+C9348D590F3FEB135D4B7BD4D76A52CB140888247CAFAB25ED51F4D187041CA0
+ABD956F83A5661CEC171B52AF92F9ADE27973B560C802E1E0FF51C4003D1289A
+CDD09F8EDA8AFDFF666D35418CEADF3B0BE298F0D1E5C8E024D6A2017A7E71F3
+3A9FEC9930F1118101E040339F9D41379170928DDF5B5875212B271DC843F612
+E0C21C67263186E3D6929160464D4D5C8928E14D0845762C36FFBDE548188E20
+3B6BAFE5EECA0385142F01216FB8A90C43A472C1D4447FE5C7C78CC088FC72E7
+3FAFA062C338BDE8A430FDF1951B107D8D73FF9376FACDE5900BA362C66F8C1D
+947F9545C5C13A53E4479B1C1A50472C05E8F8C266C6D4F4EB08E97B3B1BA972
+26973B844545089C5732322BCC9A5A8FC972FA0D7DB8BD85D2F515ADE65DA479
+0224F7EA2276CFED0B75B2C23AE7377F86F1F6F205D6FE19377D87E782143697
+984E731F83CA888199CEB425643C259D4FB8B58DD69A96085198306494BB497E
+FE7C9954EF35B679BBE3847A9C73507874F71FC97665E2A58BA41407A1745247
+44A79B588D969D11CE4B863CDA655DAA53CEA5C3C263B345E782006CE9831D49
+603D2D95DE9E370D617F5928BA416C362BB2B4DEF16A5D44BD24B34257765F3B
+6223B3F9B54DAED69A90C7050AB97B06693D253C6894CBD7B497DA449F1D9B7C
+D91B421891EC0724F59C82B9CB288DC42F2D2D7A7F22EE3D910E15953D7766AE
+276DABED3820390BAF2700C4653E1C77FE63DB71A66D93ED293E25B8412A1EFF
+809554BF04ED0DE83F7F190883ED793803CAD2C34A66524D3A580ACDF3C13B22
+08F18905E7A4A16DA9ED2A112462FB9FFE481EC2069E484E8BBFC19D594153B7
+3DED4C11762223B7586483B06BC164D824D1A6FCAE80A35DE0DB8B33396771DF
+76DC5C05578EF1BE00A70BAF3D951A01C87328DB2B0DAD6E1B4C21F37D1BC0C5
+A929BDE5EADF20DA60C4DE2E3C151005814F24824D33B95F700E09A0207EB602
+3EF60DEB1622B91DB99A855A8F1DA96358F05CFCEDBDDDFC8446AE3391BEEC41
+966E594E28D052DD5ADA49DFF65E79540EBE5329DFD86C23CC800F95221B9C18
+CBBF941D2FA47EF1EF59A89DB5DD188E75EE94AD2A79E2221107E5992C00D531
+2E00B544895A9204656867E3DE9D4CDB64B920B5CCA9A73E6514B36CABAE01BF
+94C15603B86780190595560F792E5EF01650074EA4A9BBC6ED284B9AC2020641
+DCBCEE0ED27FE58171DFE104EEE4202759E594159DF45113C00236127A46FB35
+9EC705F21C0E456C1F0F924594C09AC64D4377C5FEEF764BA4A09ABA8D09DEB1
+FC13B0CD202B2F04CF5D73DEAB65C36C2FA7C0DC236BEEF6D23BFFC9C493DC8E
+1831F19EEF81EEDD976E43BAC6B5CED13F901DE59835FC75490EA528A72CEB77
+24C38B258EC38B9E6B97F85CA8C10D8809BBE55A6FAA12456FCAC786942E123C
+06D1E55F7ED04400088BEC968BC5081DC7A1B1B65166E7821679F76694F235FC
+6854C8776AF855B83445D9FF919B1D80E98DE0741D06D6C5EEDB3E3EA6392530
+F1BA817737D8162F7B3A36AC2A03190CDEC654383E31934C3E0A012B639532C6
+26FEBE9B412F1C92D1943B7C18CEF510729D501349644C97F087F2F840074AE6
+D8CD0FB2E620FFC908BFCD938B675A0A4A687F7FBE8F3DD06A62D7B6DE7DF3E2
+49D367D60B10061EA86CD512F5A1BE8950D83C62695E130128E0037B62552D17
+064319BBB9B1FAB9D79705E5D68AAE9B36EA14BF1A59A863BDB8DAD9AB5D7B8A
+E30E2B499F952D65877C8E38EDD7DB29F9579D09E629AC188DB6A6403AB4BA3A
+D358B3770D727A2B77D84B6C9EC17E29D88E3421F9B7D2D822EB78BB8BB50692
+8C46DD6F9BBEF2E848A2B5669B200019802AD19661537A84D3514AEC5AA47445
+2C791E01DCEDF18D9506367241255FFADEEA6183F51A9F42448A7DE413C08359
+52DAD2A60FD606AFE14702BD3B0EC448720FE63438D020DEDFCDE3582FC31DF1
+17B25FC152789D2F17FD60B8209D292D2152DCF8D28B5ADC04F6659BBB746CDF
+145163361823CA343763AA951C640B5D4A99B7787105A1609EDD6A596EFC3F6F
+2AEBB90C4B257BF563574D9980BA3160D59811D25FDA43865C2EF2168316F2FA
+FF514FDD56C78D3EEF38378129BE38676C1A750B344A8C069A83E035F8729D43
+6B65B80B3DD3D4B8F9041C564626D9CB87AB7B9379F8A02E912F859AE0B3F9CE
+0F253FB6800D5D6BB753CFB933FB9303AAAC573D7380FC3563D88AEDC9A339CF
+931828B48A6BEE434017BD459FCF89FA30E0281A08AB3702602A019C2A4ED08E
+25C484868F0F35C5B1D5CCDA01DA9BEAA7E70B4C0C5CB3807EFABFDCF9F836D1
+4E174995D179680584434D8A5C8A4255456DEAD95CFA49EFFC7FCFF15F02AF05
+42CBDEC8A968BAC180465CA16DADE2068C88D05D8DF6E9B6801A1EC77B9DBF82
+B3264F22CE76C7D71928B78B486DAD78FEE4CDF0421F6EF381677160E9A1B856
+3C878F63D14FD85B96E3367E39C2B1263ECDA94AF1363599B3B91E334535E38C
+1FAA3A2254373D2EFC8A090D9EEC1BBDEFA5E18455769EC2C44150D88467F7F6
+655C33DB876CB358166643D27571F421C1B0D63D6787206B9D5712A1C01F7DFE
+EE2F5C7837A2CED595769F0DBC6266B8B45107DA63B98EA5C407E7F7B494A2A6
+7394AC6F573815F1B7C717C02E4F5181635739B878932FA28EC9639213DCD760
+AB3C87F5206C3142D25BB19DD04E436325B02152F4A8C80A956758A6CABBE318
+CDF792BD9626086E57C4B309FA76BC36B16A036B10BE5920C173D0BAF4E892EF
+236B98A6264BA47B2CAEDD7B758EC2523F93C8126D48FC7C66F6E36196199B9C
+FF70564D1EC0DB4966BC1936099D80092643DCD7EA5662102DF78C2D1B324AFC
+932A2FC038482E99271E5AD88F508DB219E17105252FC2AF2DB015018B1E750C
+203D00096E80310BDF36D9C15D6ED710F8C777565D83A9BB0C8380B37A30FAAE
+9489E6263914D2828D37BA55F7D6031830C2A5366F87A2921846760A91EE93AC
+FA992C945D8B1767C9FC4C5BCE09BBC52096374A0C323ED7E426E84A24DC5844
+0CD53C097D9AAA438D358554FD9C409A304329A0EFA5435AF4D949067E8B6084
+4CD00EB617A7530210CED373C2B3018B1B009FDA34201FAC264EB3385B055E16
+3A6C50BDD11EEE8E0002288F9C16A23CD2D95F95A24C7BB3688DC1106F36AD71
+BD86A199B03ADF86FC1BB235B2AD17353DFB2265609759019D6FE1C53BE963F6
+840FC33A449B4EB2A5541040187EF1B97B5FAE174C0E7044D2872FFEF1C42162
+F5093D6CB277ED8FF6D89C0756BFE65DEDD0370BE4C0ED5EBFBED0E61FB3A995
+F363D720C9DA497B4162D92A6B52A525B5416043A51513916D3C88F430EF6BD8
+37933B5D60FDC13EDD44502BE7FBB81C8F91685A5CE54B6AC708A1FE00B1F3CE
+7D7E20F71F04018E50B8060F6894DA5261B498DC12F3295FF6142E886FCBDCDB
+4356DB1B9D3F927953FBFBB429BD956EE0A4B4B3D9A0BD2BBAE53661491E4F7A
+312D0A306FEA80910B1EF2DD3FFB27599587D7A01E92BDE09F1034DCED43D0BA
+19F77311E467CA802B62FFC6DBF24C66067517BAF9FFCC6ED35CE74652B2B8BD
+1719789D6FDBFF199899A82F90B26CC5291450FBE1233AD3E0AE42409C6608CC
+C2F7D176BF1778C0B5698C1A8A665470ADBFED8C925302E9493A73437FAD744B
+BA6C1253E6C3AB97AF37EC0F5B5D2895983BB74A14B7448C5F21D19F284F05B3
+AC30AAD28E0C4FD2711010D0F14661A5CD20E32DE873B643AA4C9BFF54771F19
+B59A2760C5E1EF6FAD908017A8296B3D21204E4DEF717B70DB9DD5CFB78CF2D9
+4BD7287278BF49C8B839011FE4734A508018CD1FBFBF671260BC2684DEBED2C9
+54FB9B84C71E64203FBFD904A7B9E2B4F11234AF2B9789E29F150A155F648FF3
+B11B4D2DDF689BABDB47A427C85BE466B2B92C1CCE54480111BBDA0340FB96A4
+F005D78E0F5A0B981A08BBB49549F26D00AF02289A264F9376844EDB30BFCA2C
+ED7D7AD05ADA3F8AAC47674FF713A6542B14B3B98E746E8FE3077B1A64754225
+EE9FDE3BA924CE5D89644D12949F64D2BB357A95C69A8093CE735378A87E7A66
+9C29521307DA08A0702B83D657683E580E350D1C5BDF2A1F2C385E240AFC7AE4
+7BEA53026442B79CD4EFCE83EAB0D73ADF8180B82367BDC7CD18AEB6BB
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+cleartomark
+{restore}if
+%%EndFont
+%%BeginFont: CMSY10
+%!PS-AdobeFont-1.0: CMSY10 003.002
+%%Title: CMSY10
+%Version: 003.002
+%%CreationDate: Mon Jul 13 16:17:00 2009
+%%Creator: David M. Jones
+%Copyright: Copyright (c) 1997, 2009 American Mathematical Society
+%Copyright: (<http://www.ams.org>), with Reserved Font Name CMSY10.
+% This Font Software is licensed under the SIL Open Font License, Version 1.1.
+% This license is in the accompanying file OFL.txt, and is also
+% available with a FAQ at: http://scripts.sil.org/OFL.
+%%EndComments
+FontDirectory/CMSY10 known{/CMSY10 findfont dup/UniqueID known{dup
+/UniqueID get 5096651 eq exch/FontType get 1 eq and}{pop false}ifelse
+{save true}{false}ifelse}{false}ifelse
+11 dict begin
+/FontType 1 def
+/FontMatrix [0.001 0 0 0.001 0 0 ]readonly def
+/FontName /CMSY10 def
+/FontBBox {-29 -960 1116 775 }readonly def
+/PaintType 0 def
+/FontInfo 9 dict dup begin
+/version (003.002) readonly def
+/Notice (Copyright \050c\051 1997, 2009 American Mathematical Society \050<http://www.ams.org>\051, with Reserved Font Name CMSY10.) readonly def
+/FullName (CMSY10) readonly def
+/FamilyName (Computer Modern) readonly def
+/Weight (Medium) readonly def
+/ItalicAngle -14.04 def
+/isFixedPitch false def
+/UnderlinePosition -100 def
+/UnderlineThickness 50 def
+end readonly def
+/Encoding 256 array
+0 1 255 {1 index exch /.notdef put} for
+dup 0 /minus put
+dup 2 /multiply put
+dup 13 /circlecopyrt put
+dup 15 /bullet put
+dup 102 /braceleft put
+dup 103 /braceright put
+dup 110 /backslash put
+readonly def
+currentdict end
+currentfile eexec
+D9D66F633B846AB284BCF8B0411B772DE5CD06DFE1BE899059C588357426D7A0
+7B684C079A47D271426064AD18CB9750D8A986D1D67C1B2AEEF8CE785CC19C81
+DE96489F740045C5E342F02DA1C9F9F3C167651E646F1A67CF379789E311EF91
+511D0F605B045B279357D6FC8537C233E7AEE6A4FDBE73E75A39EB206D20A6F6
+1021961B748D419EBEEB028B592124E174CA595C108E12725B9875544955CFFD
+028B698EF742BC8C19F979E35B8E99CADDDDC89CC6C59733F2A24BC3AF36AD86
+1319147A4A219ECB92D0D9F6228B51A97C29547000FCC8A581BE543D73F1FED4
+3D08C53693138003C01E1D216B185179E1856E2A05AA6C66AABB68B7E4409021
+91AA9D8E4C5FBBDA55F1BB6BC679EABA06BE9795DB920A6343CE934B04D75DF2
+E0C30B8FD2E475FE0D66D4AA65821864C7DD6AC9939A04094EEA832EAD33DB7A
+11EE8D595FB0E543D0E80D31D584B97879B3C7B4A85CC6358A41342D70AD0B97
+C14123421FE8A7D131FB0D03900B392FDA0ABAFC25E946D2251F150EC595E857
+D17AE424DB76B431366086F377B2A0EEFD3909E3FA35E51886FC318989C1EF20
+B6F5990F1D39C22127F0A47BC8461F3AFDF87D9BDA4B6C1D1CFD7513F1E3C3D3
+93BEF764AA832316343F9FE869A720E4AA87AE76FA87A833BBC5892DE05B867F
+10FA225E233BCFA9BB51F46A6DF22ADCEACC01C3CD1F54C9AEFA25E92EFAC00D
+7E2BA427C25483BA42A199F4D2E43DFCE79A7156F7417ACF78E41FCA91E6C9EF
+B933450D851B73A6AB6AEA7EE4C710CB5C14270D1674FA334686653793FCB31B
+491E870D3C2BC654D2C1DE463EC9BA29D7371AA1078800EF93D3F66263A2EBBB
+F5723697BF7448BD0D2E301544BECF497FD475B85DFEF52AF4F8F8BE445CABE6
+019318806D10C5952157FF8F8286C1EE701545C8F60EFA854EAE66835A2046A6
+915D395F1E0366EFE0C0391583FE001FF16D82A2E2DA5F57754A2C6F69306E36
+356ECF8EFC3F1188AD6FCD2427E0580C97A5B69B4E0E09B85EEDE142F5ADD2F0
+5DE51D6DB72B127412A0D57106C19CA493048A4F815129ABE767D51715B1515D
+9C21067CB5BC88741B7298C83EAE36A866DFA87D8981F179B1C31292F56BBB64
+3C430779468AAF07C8A8B4934E1E775FE3F35186BD1FA6EE3689C1C750678AF1
+FBF9B23195A124C5C991FE670AC0C86FD39D2B07B9A319E74EFD498B45820252
+720ECDF7294F7B0B137CEB86D33BFCEB8606985A3260FD669E461C8BE94216C5
+D434FD8854F44EE66E5A289A9F9E32BC36AF645D53F96652602BAED418C8D726
+BD04A1B4617551FE4DEF54083D414F7DCE004E6BB2DC9C2EF7CE232B254BA2C5
+7DCBD36C2072ED46FF711F121A701E2284BF1B718B3164382B8F453D68FA0377
+DFE106503B8401D4DB87F5402A3AC9A442FA060B0610A9524D530C7157C26B56
+AC970FCC1D5655FFFFA39246E6420CF97D08ADFB7B05822679BD40C638DDF0E7
+A97BFE8918B611A145AC965C203F1428812F9D340AF499B3A915B22BE798594E
+0F520109FC81E452180AE45B170FF999C5FC2761C6CECD8742A5A6FC97F16743
+AD4EFCC6572A6D3F3E4E330C5CB2FF6FEA48A5B64DD3DBE943BD9918D4A18E18
+CBCF598AEFBB6AB3CD2CBC9BFD6099272F6543F3E532E0E21E614BD2880B1023
+0AC234CB705827BF016DB84E00E8C255FDEFA0101A842929540B7B4AA8A089BD
+5EFF05B72356B6BC3727817823B5CDBB1B963103000D7F2A4E2A1472FC3E614B
+5CBCB6D6D784023173DEFEBFA8F9ED87EC1A0A9EE98CA59CFC964CF943DC683F
+E9E00DA718C4425A705A69D99988EC6F152525C790912C2E46A2381A569424AB
+54DF4798BC2D7E7A361E7991641D4B756CE2A7FF4A2848927092C59C2C4B8809
+E13AB84FB6B111E680D7FB9F2FFC2C5C66B0B501E4447C2E46C10E2F6124476F
+A140C404CFE2DC9E0199BF61E035CEB481D438139A9630934E541D261FFD2906
+4CAD99E20655FA746AFB81EDBB5601F5FD6B1D6832A01D585E2C55053F6A7378
+4DAACCAC7608DBDADAAE732D66B3E7F87E79756337C1A961E53A4651BE7C77F4
+038B89C87F650C54A2A90EB7F1D525BB353F33318551EE8D84A6A83C718EA5A4
+B2AC0F7306B1E095819B87015A90CA3ED739B09061782C28CDB36BA4BD5E5308
+5CBB70414E4112193DAC4A1FA30996327230D1E021F3CD8115E12D239D93FFDC
+B645910EB29E40D830E7BAF2DB255FD7C4E776557BB38157917D993EAC245837
+A3B515147043574157B8342D829C7228CCEA843ABC89D1785A9672A5923FC4CD
+2F3FF27E6FCACF84E2D3136CA2C0FD3EF1EE7354CD04C38B5FB874553646ED2D
+CEDF7E362EADD04B18051F20A8FB0DE18E152385B9D05F98A3A7EF177824E246
+455ABE69E2F700EB78185CCFC07E3B4C6FA301112528D977367D30D0D5D59EDE
+FAEB706DDC970A9E296236C725B2B55B09B9C336B8E23CBA5FB8692D56F33B03
+16294E5FC7FAA42E96395A57CE51CA8DDD77442F142E2E576B778373FB31C81C
+16840BB422CA827E30A81829648BDF1CA36700EA32AD888D097C1FE0A05B2D9F
+483AEE40269DF09AF0D1AD3DF80C45DDC59C2A03FBB661C79B87853737C6D352
+67626B657321B16198DBD6DB98A092F17878AE4698121E1006E53D6F9B0A3BE2
+3FB68828EF854A0CDBAA68B37ABCA6AD4A3D809AAF0BAB1697A81FE59C98C472
+1E33CD70A75A22C249DD11D76C2575ED3370A25892A16D2FD569CDA70C130770
+93F493C7D47D6F9A5424A7A542BAD726BFC3AB225DCEBBE6AC4BE006F8C7C0EA
+051424B08305BF2D951AB2986AAFEA04E078CA79B399585BFF0F1ADCED02E15B
+8765EB6BF6A8E4D0901EFF2C3AA104924EAD9637A35D877E0C51A3C37DA78CD4
+8643C8CE6DCDDE3F116A6C2390F948E5371BEB5AD2E87B41C5F01FB5C196C436
+6E256A88D082E3F46E4EFFBF605B2EFF1E9D9AD5EE4DDC323A137CD9451EDEE0
+06F7D82898D71FAF2362C0FCF1F726F97F820305B7CE20728CA08C63575083A7
+84BA28B7DE2B916432475510E274C12FFD1660A717F51DACFDF0A102D85224E0
+D6DB607BB72569ABB8A7BC6A10354CBBC01732EFE35B72062DF269CB25EA3DE6
+DC603B04C90C5912D2C38D7A5ACDCDD3F6F116D884F0D8C528F69D5D47BA20DB
+0A9E585C7D8CC3C324FE8A1DF150279F7E8FB43BDB720E624E5E9918032C02CD
+8020636AE5C38DA2484B7F4B34163E0D0A561B43B80E97746DC05C871AB620EC
+C5D47101ECED4A7E25F291184BEF8B80024AA7BB456C1B83A907652B331DEA34
+754226C39C6889EBEEFDAD081E01EF8FE47751987667836FDE4C8BB8A3FD4406
+1E643B4EA37BD370734D1A2DB17C2F4B74B4ED75098B433601F75A88C9A37A05
+CCB157EF6E32023BFA33973F3E655A4D58289136996FCFA61EEABD70791B6523
+1FF5DE71AB8A17038923118A5EED8D59C4C58D246FFA9BB26472346B40C8741F
+153D19CAFF20DD2A86C6DB89154A630FB1761929FC3F0448EE2F089C1C953E02
+905BA8DE75D101A982A611056C4B237596C10951DD98BAB838B742D3CF7DE718
+617DB72E5268583223E37E029D1C8FD3F1D21690151F76B76C52C725CA135CA2
+8666553E863CE188BFC9B99AF56AC2DB5BFEBEB12FB563D00244EB89E478657A
+98AF2E1223C1ABC25A4500E8119B86EB3C26B8A2F3505A3E5610F89B7C34E278
+53FA0A54A7F46D84A35EFEC36AE660A9E3C37EE3864106702DE5AF6C45ABF64B
+888A4A51323138CE77DB935576FE6B4824B6942DF80625098CE1B5B32B234F1D
+052A9D6039697118A9D793793775D8729D8574A2E74D7109C7B7E23BC5E2E87A
+CA8E019203952A4892544E1AD3D4EDD22971611358AB230E9A2ABDF00A288501
+A01B67C42B33F6B78C39562DB50F4663B922D9BE0D8A150311AE44B83C1F129F
+07337323E9A23211EE58E16043E127C6F9574019179F5635648A011266677B56
+B5D0201A4E1470B952A1579B57AB2329CD4C615395023C653F784D36B5EE3672
+10D191F29EA508CE84763CA4CE7C2C5229E38E241255A5CABCD6C7CBAED901A2
+CA53B5E24111921CDDF83578D33D463D70EDACA0E470D8F592303FB6BFD68B4D
+3F3BE2D7C5EC8BBF10C90111A33E205F2649B56E8443F6FAA6C721C66575AE12
+D4C40F1F46CF9E9DA675AB5D5840D938780CD9E4AD6736ECBEB6A4397613586F
+849B51048AC5F9405E03E14540A5E5582F61CDCDB57EDDF95A8C6705F433EE16
+648F098C03DED8A2AD94AE3DE202D629B9422ABB031318D48F2C85F9DBFA17BE
+84708AA3B6C9F81F4508F7A5CB7B6646AB8722ECF817877B77D473F577556DAA
+2BA0ABACFCF5DEA7498C47328E873019A956FBB250FD9D8885D21D368FA70CBD
+2709D2DA44EE7A9869963EAB48789541906DE49FAE785ECE1F18A22C7E7ED204
+9768896B78E9EB7A2BD6EEC1B26083940656ECD689D92942CC8AF05CBF82AED0
+B45A7DF4DD7AA6526FB597322560B9ED3087A65B5EEF1371C328A021411BFE3B
+D9B5088B2F1AAE381FFED52D2D1E02CD0DA78683E3B06171CBE94BE9760005D7
+135893D7CC2DB097F6AC664D9594CF1C650F84DA80D2EDE04802DBA33CE3DAFE
+EB7A37E8AEFA4FDA6252FF21E8673DD98E67124D5DBC7BACF361E57077B71939
+C1D1FB923E4E35C075CD1BCBE0E80DAEA1320D55B43EAB45D9B26C366B278782
+7519FDC482D98839BF0DF2E7C3A56A1C1A3FC0E57A75CA414F6536C1FE8EB7A0
+4ADFEE3BEDA0F53BE8CF5F64230784A797133E8CD46BCCB3BF38BCE38A73CCE2
+9E073ADE792F7128231DDD1F63E6156ADB2609C200837C2E8A2D93D2A7BC9171
+050C709A71E44E32B1B03C92EB5CF1D3BAB1C38E027DC4ED9AED633D98CD7486
+3F773ACF8AE332631CF2ABE6D606607593FE862ADE31803964E3F4DC3CE3A271
+C76BDD95C87CDB3B87BC26FC7A16D567EEC62E6FF0D471B4853DB8A94D4CACF8
+843824F818083F10E88D52FC4253E8203292CB40F1414AE7E51DD7347007C342
+CD70E8E9F2D2A13D71213B841DDEAAB208AD9EA644591C15DEB084165F9DF24B
+B91D3BBEEC2E34E38EF16A0C3F00700A7BDCBBFED2EC0D09601AD6538288DB50
+3478B051B5E16B604A0341FE621A58718D960D699D3FAD284310DCF54EB13175
+19A75A539EE98E804AEA24689D3540F0F12951A3C01FACCE9A7BAF4D0DAFA946
+FF65A4D2A4C39969607272C6886F44E90ABE27CA3A1F12A29D9B32E60E8E34F0
+17C5FE43D0E69A99A922D98909B2BBCD145E59A5E7F5426B3988F73B09A525F6
+8BD4915663C1301323180E760BE81CB874B020FDA3AE63340E4261E4F3E4949B
+CC0966BDC4426190BE9F5D77F76A72AD925662E5FE1CEF9CCAB68F0BD33DA003
+F11EB91AC4502FBD6AE48DA0F9D07C35B96B103E379B8A83A05FE728F1716194
+1F650F75BEBADB2E3810388F3E2DC7B19F1BA9E32925F2FD9F19F4E8701F3E4E
+4069125D7C401144740691E7A460021A47B1E27997FC1DDABEC5BD0EE0B20194
+2D579C7D6727AA124083242BDA46D8E116E2751C5F298851A62B60AEBE82A929
+9B9F2492BA35690D1EFD16215B8EF14E7A3803B93C28FA41D971B05B6AF3B593
+E74AD1E68A5FCE12A86E63B78BFEA87D3949FD164F12277A4688BE96356791CB
+8671C49365608F3EDECC109321AF92B4C29CAF073DA3A7D73E913D0D83FAC5EB
+BD884D4C686056404DAAAD6F82F94F803FA1FB0DD8908D1DF08FB87A8BB83027
+04DE0CBB1C6FEB6B517FBD7CF065120079E608CE41893C2BC96A347826CCDFD5
+C69E161217F2127A59F1A6F22037641613F191F22D5B4CDCBCC2EE5615623404
+ABA7BE6C5FE475481615B2AC1A2412E54688DD21E44CC9AF5F16E634AFCA389C
+4D740B7B51BB141BFAD1080E7C726C1606A28ED492E6BDE9F800EFACD1513909
+84E98CEB6A0B7A2A6F3E1D1DCC3B2552795E0932673E59ECC56DDD37A1D52BA6
+C3F0E905978AB568941A163F4CE3AAB5C5B16F86016EC47BA6F3F7AAAA77C3B6
+09C8C3ABDB6D514A76ECD37C37AA88B5860630B3406B494F7725975596F84777
+D9CF48686EC9C5DBCC1D78513F591C7C10AB9D153B3D41426B7BF668B0D04503
+56BCB686258462C1DC61095724B9F3312316262FD7C1AEC6E54DE7E5A7BD8EFF
+035299B8FD8A4A7B0F51404F4A760F4D8B4C0FB7A32FA4B2383AB6E9C78FDEDB
+FE6A5788D38A6701B123630C2A6D820A684166FBBC83DB17069494FBD411B333
+CB37E2491C5BD035A33867A6D3A3D420CC31ACF43AA07182CAAE67E40EC63663
+B678F71D4C6E0EC3A0AAF904CD3AA66E0DE5E3CDE049E94249B39A1C06E3CE9A
+F974B2484BB2CDA14282B9511E505B3C89F9C802218AE40D1A7541335C5736DD
+CD565D4B9F4CC78F3A393737EDB4FBD0DA299E21CCFEBA5478EEF013F0552A8B
+0BB11FF46CCDB784E8BDCF730A16363E66572049E42C695886EAB42A9AD9094C
+B635DF4B5B9BD9B9AE8455DFA3EEFC77653190F9A8B1E93B7281C2A21EA7DDA9
+33484745BDF7E3DD63C7AC66C286C9A5A698A5E4D7A91710B7FF943FB23609B6
+4B442F83CB795788FAB5E9CF3F75D5487DA26170E4561C7941C910B088C3B86D
+F844B0F340CF82786A3FCF347048463EBD2006281A816627065DDA6CD4D3AC5E
+2024BC96C7D896381BBB567951E7A1F29D4E95351298B000D29E5F3D0448CB5A
+CFDAE1BADE9403B90371C3A07D208948AFA022A69C519434B6813086ADF518D5
+88E0B92072A44BA1B3EBB630A13B7AB90992E85B6D67361C8D96F3E0D826FF37
+17B67E4B1EB7BADFD98D7F4FD17BECE740ADF13C141EBF0A91CB105DABB32FE0
+55086D56A0D358841D15FD349E6B95512E4EDF4C430216FF85C2ABE995E4B40A
+A6044CC8820AD885C07E052B3F91C2E9A1D163BFFD210F7BE95B923E2500DB50
+2075106DB541C267BD450B25B670CE80BCD068D4DBFF2D82634175B61FBD3BC3
+406131F44C7D6F18D375D1F2270829DDF29DC14DBB58A30AC193245D18DE91F8
+AB88AB548D8138605BB5A50073295534E314366E26665AE70482B890E4101D6B
+60E4F3B37ABCA1346DAAE8FDB8DD9C832EFF3E73BA470E2BACE7B8515CB43388
+C27AF99FF9322175CF8D4947E6B3846AFF5163E972156847F58A66660EC8A3A6
+5FB47C9F637B4CBB4C73B6A080B0CF6FD1E9665E92032540570FFCC747C67C50
+822811AADC404BC7ECD1673E8AA6C3A2F1D82F39430B58C29145E2F1B679C46E
+94EDC711883F1E4EA84117A54757E8895A40401A26E1437B39A2F65CAADD6E02
+D71FA8AF7453668DC613F326A3344F74AD7AC67569AF399385500ABDA5EDD3BA
+343CC5EDD4B558467626850E752B9959FEF1454E53E7A3DCBC2255AD8F6AB4FE
+894455118A61C58840CB68A925ACCAD75CEACE863D806916228F0614191A1CD5
+DC9BAE256018615AA3725834519449B0A88B4F396654E74099C007930ADB1327
+DD119BF799FE3B0B223E1EDA04FE2DA7A1C879143E1C33B6C6344F4BA033AD6F
+8E88C33DEF1977796B454BAB2494C930F492A518E8198C708A75FFEF8C49C324
+A718AB59B889DED521229E741FFE53F98EBE88B0405AD523254FD3FA4BBE96DA
+DA1C27C1C979A0DD4E61C3B1F4C4DE01E42F1C4435EECFC02D97994BC8AF5270
+E7CB1458D76ED0229C5FFB4A23B8716018F9050970895D51722CDE8F2EA3D947
+DFF374D84915D5C5D16463A6FFCD079D1ED416C4347BF831FF0C4ADFB61295DC
+4D5785BB0852BF472CFC97EC174491CAF961AB90629F055E75DAA6D9898E8653
+5BCF379816CAE46FEA62E7BE8E9B953466E51828172C4DBD0E1BBAD1CE28B5B1
+02B3E36403BE80B49A47446A6677FCED438F01D60EB10F478C89528FA337D0D8
+88D3FC123C076507ACDAF783A9A6E24ED73BF24B6E0F11C13E532DE5F70B15A0
+657F5ED27D204449A841ED19E01432CFFE928E921321113780D036D34F2797DE
+D4459CFD15BB117B5C9745EF3CD2B296D91FAD48C80B136D94476967E255F808
+AD2B5D522ADEC64176833756510391815A1D4A8DA1D0AEE7CAD36A1D161889F2
+3347D5B6BC503300FDDD48F594F391D5FB42C42113C538E707C16EE24A3F375E
+7C506E8F49CE50FF9DEF3B4A4C1BEB3848EAA3477349833BA22D2A9012287D8B
+A8C4CB4307A1188ACC0E6E9338E1559BE5FAFF381BD82A6C71C267409468B3C0
+2C1A29F4281D565836EAE57F680490FEA4A952FF64C8CD11C377C294DCD1EC25
+CEFB2B6DCE959D0208F85B6E32E9B44FD455F9B134A5306D95EA29F37BB8B86D
+9E592159338E1293F449380E13C21AE42E6319C88EC1A9F09E58A0ADB9740B20
+DAC0E973F1B8B96EE7439168103E2A76CFFBC91D6B63EBAF8E3E8AAAA3EBC76A
+B3258382890971FAFBE2C80951B29FF54FB8BF3574738BC5D16198F94AAAEC2C
+64C7B863AB6BFB8B63802A5CFAEFE53B997B9F5E605CD6C608445CD1DEB88FA8
+1F6C859AAEA1672BE03DC87A4D3FB3D3EAEEB367FFF108DF8A1422422E4763B2
+A06D9C3706CFE6D221F5B8F1CB5D4DE67AB8725DFFB7B75E9BC96137D655AFCD
+0B0BA120BA846B5E9E4AE348E9A1A3FDF814AA45B2D3297E8228772C7AC45F0B
+5CE440D21EBCED53E60997B0620D654772A58AB332F3C207194521FAB6C68B11
+36598CCAFCBB067FC51CC4B30C244753E9FCA06E411E0E300D72372B9EA9AE64
+533E3C3DB9BF1661B8A1B30733B9D7647FA2B1C4318DD3F5293C01896B10A613
+7358DBBB38D0C2D1E1B2679EA5C23E6FFFC909BE9507DA999228E0872069452A
+3EE1047F495DF295A8D77B26B39C76BF7356EEFDF63F873908EBC2C0354E9AF5
+3DD35254B8FC0BD1855BBE038DFF73910AD16E318EE37FA1B97D937F135D1AD6
+CB52C1EB24EEC96AE47F9118D20E6C585351C4160A769C8BC0E18238589A71DB
+9A8A639A86FF309161ED6F98CA9C852B449C0B1E82BCBD9EBFE8BFA845617E48
+260A5DBA9ED8BDD4CC852F53207B94F41E1C5628846025AB127AE89A9FCD8BB0
+62277D3EFD58D059977646ABFC12163818B4FB2C14844235C0B04D0000FD65A2
+AB20F4A89C1915F372EA345B48F2392ED18CD5B9EE1087DE5C3FE9891B709E85
+B5B29C45535D94E8D215298C4B61614CF0B23F7EED2A77E32FB4CD184D7806B4
+5973CC7FA685046A2B139040C8A362242F996BD784FF6B61895D4EDB85B228AC
+FE7105337B31265A082F37CE0E231B790E470BF554BEADAC0E45B54EFB78B3A0
+6FD19F17987A0636E38390D473C37123D0EB1DE433765906CC6959556A54B6BB
+6F9E1B37B0B0CFE59B6C4DEDBDD72A1CA6F95F82A14974698AB6215354895BBF
+E89661A298ACF478A3813385371641850533AD3F0AB886E358171F3B2270C12F
+8D6ADB959F7248DE65FBBE8F2BA8D15B814214159C3FE665C9FFB285F88EE487
+1B514DA17F5692733040AC1ABD8DFBA0C02546B32E52C4AB913CBACEE04693F3
+413465D9D3A65F3AF578200FA0A066FE0BCED6324B9255ECBF5AB968D841D143
+670EC3DC258CFC2A842A1398CD00D17B2A9AA1A265CE4E8AF2457447348A57DC
+7DDBEDBEC922860E01581A89E0A4145C4953A26ED78A5E09713B11C73E893563
+00CF61E56CC65048E76D8DCC1233F910A2F4DF49DD6678D24B2F3ED28404D322
+EA5BA93D9CA3166FDD6ADA9C3DF8971CC3847025F87C46824670E18970997696
+FD02D0A435B772AFBBC3DB65F14AD9A97CB30650D8ED2D86C2F660B39BD56AA6
+7FEDE50815CE4C341EE7145CB2
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+cleartomark
+{restore}if
+%%EndFont
+%%BeginFont: CMMI9
+%!PS-AdobeFont-1.0: CMMI9 003.002
+%%Title: CMMI9
+%Version: 003.002
+%%CreationDate: Mon Jul 13 16:17:00 2009
+%%Creator: David M. Jones
+%Copyright: Copyright (c) 1997, 2009 American Mathematical Society
+%Copyright: (<http://www.ams.org>), with Reserved Font Name CMMI9.
+% This Font Software is licensed under the SIL Open Font License, Version 1.1.
+% This license is in the accompanying file OFL.txt, and is also
+% available with a FAQ at: http://scripts.sil.org/OFL.
+%%EndComments
+FontDirectory/CMMI9 known{/CMMI9 findfont dup/UniqueID known{dup
+/UniqueID get 5087384 eq exch/FontType get 1 eq and}{pop false}ifelse
+{save true}{false}ifelse}{false}ifelse
+11 dict begin
+/FontType 1 def
+/FontMatrix [0.001 0 0 0.001 0 0 ]readonly def
+/FontName /CMMI9 def
+/FontBBox {-29 -250 1075 750 }readonly def
+/PaintType 0 def
+/FontInfo 10 dict dup begin
+/version (003.002) readonly def
+/Notice (Copyright \050c\051 1997, 2009 American Mathematical Society \050<http://www.ams.org>\051, with Reserved Font Name CMMI9.) readonly def
+/FullName (CMMI9) readonly def
+/FamilyName (Computer Modern) readonly def
+/Weight (Medium) readonly def
+/ItalicAngle -14.04 def
+/isFixedPitch false def
+/UnderlinePosition -100 def
+/UnderlineThickness 50 def
+/ascent 750 def
+end readonly def
+/Encoding 256 array
+0 1 255 {1 index exch /.notdef put} for
+dup 58 /period put
+readonly def
+currentdict end
+currentfile eexec
+D9D66F633B846AB284BCF8B0411B772DE5CE3C05EF98F858322DCEA45E0874C5
+45D25FE192539D9CDA4BAA46D9C431465E6ABF4E4271F89EDED7F37BE4B31FB4
+7934F62D1F46E8671F6290D6FFF601D4937BF71C22D60FB800A15796421E3AA7
+72C500501D8B10C0093F6467C553250F7C27B2C3D893772614A846374A85BC4E
+BEC0B0A89C4C161C3956ECE25274B962C854E535F418279FE26D8F83E38C5C89
+974E9A224B3CBEF90A9277AF10E0C7CAC8DC11C41DC18B814A7682E5F0248674
+11453BC81C443407AF41AF8A831A85A700CFC65E2181BCBFBD07FC5A8862A8DB
+7E2B90C16137614CDAFB584A32E50C0935109679E31306B8BDD29F1756946A67
+7A7C2D9BA6FAB9B20A424AA0E6F4BA64C2801C2FB5A1156CBEED0ACB95F697B8
+BC2A6E6AA7EB1F9FD8E3C9B1A16697EE1F0E7400421A7765AB218FC837A49365
+82DC6B2C877A7DA84A81E6126EE96DB25C17A207D3020A045DCDAA064360DFFC
+E3CD50E21ED239D2A6450D04F879A26443ADEB6A20ACC504989876476C7D1A74
+91564FEA1F4CC2C8C8FDF666DB537F315AE1886C73CB5B00E67E7B398A6C018E
+540EAEE98BB8136C4F044EDD63C33431D2CF9740F051DF365A4045D9D8782112
+7BB5D494D9235BA98CF2F30CB119F5A904C32AD04C960C43FC1F5FD8DA7D90D8
+93AFB59F3FF4F796481AE2A7548F948FECFC6C127C4D3F159B08F206AE8C296D
+EE470DB2F879EA79475E029D22D7A8535C09A18689DB0609CC233E5199C02756
+972CC9C94D9FCE264DEE5D75C8D651E4E2D1189AD9588CB815722BB5EE3C379A
+6F31C2E6AE1AE4CCEB29766190AFA20EA937114978752189F1A9F42B39483149
+796FCFA123BA9CCD1D9BE28289660BCAE16C40B5B504058D55CFCBFB4F4E3D94
+DDBF39F157E63946534DA81C018B1C01B9F10DDB55E0A5C2B3985ED1977C039B
+D6755EA42CD09E27751E159C30B93F376DBE61CD3AED34BA36A768F232EB3B80
+E3E6B77C4A48D408217818E398B83D995AB6BC871F20991DF57313D6EB0C793D
+0F28088EBDB7F38DAF7E01AAB3476EC24D7BB38A9889A7D3038D930FF4289B83
+F54A7BE1E2D98A3822098D2E4D067A0D400C20C0B2B4BBD74C13ED1B827490F9
+ECF48F8C3994C1C5AAC9CF783BFA4F307528F51EAB55F961808A42ED53F00C97
+72A432EAEDCFCFB622389BDA707B6ACC9433B065CF29EBFE93AD14B8ECD5F47F
+F073F11822C49B8BE924CDFA6348C3A75E9BB9BF3F31C41716B34794B28CDAC9
+4DB8B087E180A9B3B17680F73D9C12C8D86A922C948093629F5D7F542ED882A1
+692F4F6696865E53E3E2DD43B2D5E8C989CFAA5CA5C4C5999045E170BDE9921C
+BACD6F2863F5553EAB2BA2D4A9034729EC0C4201DE90DA89B0A27C5A5C974109
+4E37BFB3F46B3A506169FB0C68E1CAFC844419A8D261A1FD86A3BB78E33D5FB1
+CFC687A5975987CE45155E5FDFAF0CC5FD5568CB1C26212F92E88255F0549F59
+41B33125946DE43436BEC00804063FBF03EC796E3361B1C852EC3038D107F80A
+9198968265D5488B26D7670B22C2D75EDFFD1B7B4AAFA36DFD94640C9D0E2D20
+5BCA18683EFB91834A3939AB8EB60E2F09655BE003582634C52770DA9668C292
+2E02929D812EE2B0CC65F020064AD5BDAC5F5693B30508F40ED8E20E87149BD5
+8DD41AFF83FD1944804017DC5A04512E593549FFFAE501131CE2FDB65EFD0B8B
+33809CBAEE411B3941C241550B9C30DD28088708F1C0CC3125CBEDCD985EAD28
+03313741F67DB5744A87B381147D5BA70AE1145C27F794854628D87D6C1ECCA1
+749E3465B950175D3C3F40E344297BD92D3190041A4392033A79BEAEAABB8DBE
+CC14E39612F43721CFAE6F79074429221CA588AA2501DE520A464DE157A03AFE
+3C082FAE7628FC0C57FFC61D0330AE6332D20FDBB09BF36848FE05E782D6379F
+64F9C82C45402481B0A35989027F9756BF5A79DA2D96E10F39167ADB4305578F
+90B509B6891338FA1D67DCFD61804AA6621526B2EE4769589A2646581712AC05
+DA6E98D16494F07D612743058F54FEE516BD89A8EC3E03F9D7F905175D3412C8
+F7329077FD6EB25213F3CAC94BA0C3363B759401B6EF7548C7D709F3241D030D
+4EB46A1AE81863C412BDDAEA6084C37143A4C5E41BC646315B1CD09F934186CF
+49D1D8239E363A435307030BD79536B50B723A39DD763DB539F24A10DDA12BD4
+E467339D2D6DB177D6FC539FA77D2DE4118EBAC161E928749F7C753ADEF86117
+58619F1155C563DF2E11ACA8347908B98113AED58FCD0394150EEC94B7F986EE
+88BF7171D208D8F1774B1DD478F0C2958AE372D257E7EDF0F6B5D6059CC4D5D3
+B00FCBD2E9CBE79235B9A5A3E943CC27AABB58728C95C7DBD4F4A1F8A4DA99AE
+7377B0CC0BFBD454794398AE0D5F7281771FFE87B25A819F36E692286A42D776
+01794A43CA9BB30FB8FFDAAF014F909A369E34C2F6C75B7D4EB9DB0580E33F46
+19654443AFF8384B95600B86FF8E41FEFD032355626D60C7507C058EF832DF41
+194B48A36F11082D1DCF4723E21401E0C7447AABFAB4639B26E3D2730E348F55
+53EBFF39CDD03E06E2FA5FB379603C879EDB7E1A10F89695C9C47DEEE52BE0A3
+F446F187AB9D7E93E6F9387F21129034F36DF40605D28FD526AF82CA9D232BE4
+412567F06B38ECCD496EF40A7B243E46C9FEBA4F1BF4B1ECA029C5EC239353D6
+C0B100BF7E7DB33BD1277DE104F15AA19F37340A777741AD1AD693BC76DA48CC
+C6F83CD84591ECFEE375979972B0FAC4C10B625E4BFB261B9FFFA83C31DA0108
+4FFB6377466E9739E0EB64424BD9FC7239C7DD834EC6788A0F97FE714AF92831
+E1BA36A8A9E24739F1DC82DC26CC3CE28C210AA7C569B19E1784D663A0CA4E81
+AFF43E86D6F5F63778847700072CEB77A4EB946DC1F23DBC00BCE773203F76DF
+00F0B085F31420672974DDC642D885E95BA6BBE43E1CA8ABF464D9881CDECC7A
+E98E31B9754C9B72A8BD5CF6D4D214DBC3BA7A0CDF6635953F5AC1E7639C4A91
+C7AECE4C75CA3389C348F656FC2CC96C84C85A926237B6504DB51937C9CFCDAC
+B75C31ED570D180757884E27757783DB2D5F35ECC48C496CDA342D49AA947BF8
+2FDAD2F19DFE8CD1C76A8FA08F33681F3E12E229D7DAB45BE3A3F258B5ED4980
+F15340CF20D965252843E026803E8AEE736EC41CCA82167401977AB719AA2F50
+0B791EEAA82027B3C712D2EB9D14BF8F94FBDE2227609BCAC41EC08DE2BAC023
+28352F913F7DF08D4E1C66E83F764578B22B4EB7191E852B91ADCCB1BCFDB1F4
+E63DFD152E86FA9DE9BC8908130EFDE29CC4401339C05B5B9764CF8EFF14951A
+C6C13AF979546996BF22F2B96D3D585B90CD27DADEC78914DA48432C6ACBDD42
+20EF583FD41F2F6D6D10C3DF7DD077304B5940BB0462656E306CBD91EB9B756B
+7014B1884A36201EC582FC9345C386043DD2818FC301EF78791C1D7854F8FACE
+5DE9801DE9F59D5B4271E003AB897B2EF49501589D681D59CFFD9B03F722EEF4
+74ABD29997515DA3591496B62666744EA76DCA45504F8075C0652D6779DBEAE4
+90430C2945FBD60AD53B51DDBEFC7ED703C418B4B244C8FFA5A3C1B7600C5A55
+3EBDB93C16AC191C3A28EB2279BD3F0D67C826BC6A73D3C0AD02262368AB4621
+98A1605F2887BC5880E1AF2780330E0FD01D7CAACBB0F008A42C427F38236066
+54799594E515B289044BAC4DADF8B3686B4372C5110201221FDA923F131E07E7
+93C44BAD406838BA4D1C277EF74098B8C0EDC41EEDD58C195D7DFF5FEDBF96FC
+19CEBC6C3006DD2CBF76916B4298BB915663C2F61AFD7747E03A03BD7280197A
+9DA590E3D081C6F53DBF94E8D6FDDDD910A70AB18A0F6D48A590FFAB314D6CFD
+E3FB20C1F3C91063F00726A2C13A3D48323F9854839405E5A29D66A43E6E2B84
+A8B3765F1D817071D4D6FF42BC785C2D11AB2B9452F141696CE19C6AFB9777DB
+107D6E22D8CC6C26440BC48248AD8805C4329D46BF433741CB519B21663392DA
+5DC7FC9BF37E5BC396BFADD7263D09F6B4D69594AB386B7BDFCF3BACB97A0E08
+22013E716E642592A20136CF9CFD61D4E515D80E06A4CB4FC9D9B916C93CEA95
+B83B98C48CF36C1D02291D4F5C0419338D64E33C90C90EDD2BA3B96D70FAFE0D
+403A060CFF448D3E28A9B1E3916018465E86095BAAB4706CF7ED350D7C554789
+D7F4FE5F180767DE8739259E68CF142040BE1E2E8C6152DE3417C1FAEA7584B6
+20781DC4A9796431EE713DAC4E713C839D7A4FDC8AB6BFEFFE767AFD8B67FDA6
+943AD387E5D3BCB09039ADB64ECC2BE2620C6EC269E708DD06C311F450099E33
+AF46AEC644222E7DC4DBB9371EE12CFBC4F9B27AB46AD1DA96CE006E1DF8291F
+A550A93026CBFFC1087B134EC6EA76F5E109CDA58FF47338A0039A786A575F70
+B8A03A4F9C8D07A4C856C77D9BCC8E3EAA740172D0C2D0A15BA35C9E5717D7FA
+2691774DDE730BB9D7C70D7AE103DB8D35F3728470C76EBA0E670634E1A0BA84
+2FA102BAD7271DF2680D86A4CA6FC353869987700E5E3FD778165456033D624F
+E9B3E80EBF431ACC934AA0357E824B8AD73E222B510DE8445C55C07C8E5DE46D
+E478F832BDDECAF2EBB11941DCF84CCD887043FAED9AA90D12BC8CA9A0C8D94F
+8D3BF1F80B14B6CAE6BB1C6AA405AA64BB94D5A82CFEA548BA070796A02F9642
+87326D066101435AB9EB40BA9EA9E61B363F5F5E3B924369796E8B78DE3414A4
+2B79C6A13ECB2F34E6299658D07D2B3DEF3D4383CE009A927F0EF5C196652842
+D96B857AB5E905201E7E8BA21A5EBED1FC6863BA9A1A6E5390407F75055E2EEC
+512FBDB3E82CEA13663F1A1944DA072C765D8CED06AB461470C5723BDC1271D4
+4D1D049D3EB131743F1EC9A6ADDAA038ACA2C41D139DC6A84EC3C61AC7F1E559
+6155CC2F49171F6E07CF56D721D9728E87FC7DCBCAC46455A3694C765FE807E9
+9CBC2D304AF37E0F28CCB22F239541B53A4D24D09C662559267467EA487BD33A
+0BEFD4899B581D20582930703A868655C31BE935364CA6A95FBCB22CB714C040
+9718824DFE97929D0482430726CCB5A5307957DD2432A9B6271E849148DEB76B
+FAA290FF6D0B18DC5B76407852E81C105EC6CFAB0F620C6DC9DA555A33C167B1
+430A8BC338BFC7D75B7099CC906AD923FA107C74D3FBB719D77A4E5A685FF9D8
+56424EE4AA074434B809D894ED50F6A60A035C5223EA25DD8983B9B34210DABE
+718D7B2BEB293FF1B63CFB1CBDAFC69552963D90F5E3FF533A3FDBB626E9FAA3
+F3C119E5E01C7BFF832A033C3515BF049E29558B1DAD652F2888E339E67D15AE
+95F9BD14E3253DFE9072B24C0E7E85025B71096AF51C86AECB2921126A43156B
+EC812B32B1164BD9B2B947D503C015616DBF2024F5C8CB3236C1DCA653D661FE
+6B1C19A22D272A176B7F1B7F9E67AF40DB0EFD4940E58B2A050249CA4E55CAF7
+6ACFD84FB46FEF952D18552B3972D79D808B4C263B8C7E1BB647A2D03E102867
+630D5C3F2C917F765A4F6FB8106BA6A9D0093E27A4CB6049C2371287D94B5111
+6E7020776EBD744C6C920464BBBC0AC206033E8240017F8CCB112596ECD7CAFA
+89950CF43FD87ACA750C03A778A37FBCE9C82C2F5ABB135BB02DA8E8C0D24475
+3BEA9D79372D0022FF1ABD378C151417DBC69FE5C9CA38D23A3900E34BF924A2
+90777ACDC37930B67DD44A2E76DDBD9B89598D5F626BFD325A978D277265DA47
+38CFAF16E7FF1946E15F41CA73F7B4B02E5AE8FC4C37B115BC567E4EEEFEFC34
+EC8974B1465AE57759EDDA28DD38A9210871D35D331AE1BE6097C3EC21C770C9
+B25D040B2ECCC3AEB1EA1BF99E0C2C0F192C13BB9152CFCF75332E03F9CEC376
+9B8C285A35F53655BE38713E09AE34BA2DA9C06FA42A6FD2D00CBF2AFD2BADB9
+1571629C65DA38A431710CF5B01FCA68E8B8569922FBC3F9B64A5509B6F677AF
+1B97E91FFFEB6308AB68AC58F9BA43DB5E764021E75B56170EB44C2C0A7DB86C
+62B8982256D3621EBE3DB3994DBF5C5A14CF34B4AF3BD5697F8E3203085DE9D5
+84B0598169760B925463E93DC87CE70AF4C2DF0F4287D2F2069847BCCF7A37A2
+AD451D5ACE4DBCCB2E14D5DF38B226952E7446BF87BEC736EF3D5AE793304618
+D66D3299AB9F9CA1D13F134FAEDF36750046E27706C7CBD8E0877BB6276E5196
+BC2A355D109C0253644918E1CC11B717DE6FBDA201E769812752888CD66268F6
+4ACF4A9449378F9F9923D584BA1B51F33663BE7A306887BC14A37E3C5A4654E6
+531D6EB63DE3946BD8BA95CFB037991174F36D61D842071E6625605CAA350A24
+FE551025D10871FE0E2599A63900C8520EF4911C53A03897C8BEE152451708E2
+43FCF4E700C583A5E8DBCC03BF9CAB864DBD19E1760945DEA0EC0BA38BEA8256
+D3A8D4F70F6685A99C6BD2BA8B412A26C002D76138CFCC7DF6802931E5D97BA6
+0151F6A4C572235B4196B22B7B2D14B32886DF0D2CA8A277ABAAC53B63F64CE4
+E4C088192AAB674497E8AF81961359C389B51F4A257373D907C615030BFBEF53
+DBD99058FD06E352450B658478C10454AC8FC0232B70D5CB916981978053E358
+99D322A07294748BA427FFD1E45C909171017B52B7C742FD77A8560852D819DD
+8DD53211A14D7B2FD11E42941722FD3985D627FDAF87EB57326A0D290B5077D1
+8A4230BEB40523A8565F95E0D44F036A571DB698EDD9D94FEC9512369E5E5E73
+A3CA5C142617944F4F99C0697ED088ACAC007FCE06E5A6EDE7D0E03A3399DCE5
+362271BC31533866BA79FD1FB3F608B22CCD4111FFB1BA35D920A23AD157C6B3
+C3DAE11069D5E46DEDA7158C6478D8B8C0D9DC237CDF0CC6633911673C43FB79
+E4F9B7F27495201E5ADE66255BC2CBE9D9F237DECB62A19D62CB41A1C92432D2
+07F0629E913A71B3F1AAF8B8C5AC66D3C8605A48F8913E39C859E163DB1DBC8F
+0ACFEE80A40B6172032E95A76B752B873FB4DF23CF3A655AF1A1B88C8DC156C6
+190DE72973950565454C0A188A33395FD3D529A88F2B578356DE8EBBC12F04C4
+5B899F667D9E6F3A4EC6DD8DE71FD4C2E2B6D56823EE4E0526679D71FF1B868D
+F261489F06F97B010CCBE640E2F57BA3DC3332B329F7958394BA9777D833AB50
+005E8E9232547104065ACE33396772B0E0BD66D2C6CC54DEDD071E444D8C95F8
+6F88B31E20FDB80F77C83151B7E25BD3736B4F9BDC52EE78C41E9475E5A6D94C
+D348AB42F5E36B4F167D29EBDFBD43B03F77EB296B06A36880FF17D412E77EA9
+F2E7C25FD05E16BEC6732681EA21AC3FF6893B93FC09316A370CDDB86D9E6087
+F6042C3F9ECD742778389170F5F041329782FB9F9702F7533E51F355F71825AE
+2BF4F8FE50D413AC9A20C41B42537FDBE8DDC5A5C793D3760C1EE13716068752
+F0AF10812250BEDFB4D7133FD58F4587BACD572505C84A7D3802D27443175FE0
+0D89C3398B55176D8642AFBAB5CBCDFD6220C8488564B4306D74A58CD2921AAD
+73CF803C754DAC2F30A5324886E273064FA51781D5BC596BFEDDCE3982EA1AA2
+62CA7BAA1B16C6EBB99B2AAC4E6C9CEFB3D10F19987045C4918DB239E6E63D79
+5F44B9D097118D081153AFF96E5EB39CBFBB99A3BE30909F614869031358EB98
+F07A97EA78AE50375941B2474DB46AF3305F2B208D45921F93743A6CB8AC584F
+6BEBE25ECAADD5A789EF60C9F54446687E7B030DA3E5243189F02BA46BFD28B7
+DC14822E136AC7E40CE20458DDBF356488045C95907363864CD6943643BF0109
+EE027A3091C11EA392EA91320EBFEA3B857370AD8EB86D73F035A476F7058222
+E8CDE78CA1AA9EA69A8AA6EBFF3E67324C567B914134DE042D6F8F18A9373107
+536E8D90189917D343F5299024239E2EC1D2D177D82DC8E344A7CF2AC71AEC18
+36F139E7A4EB59A67192BCA9ED0EB25DE13032F6FEAFC3B1F4FC81BB0EDC41DF
+B9EB92618667C59EA499B788CD26C2137D70F1B0AF793AF5AD0D0941F2E746E3
+F5A7F0288BC1EE11E982EAAE763CA422D72FBBC0D754AD58FBF92629DC8866A0
+431213513744DB48E52EFC89C83FEB082588E4F30D7DA77BB598E51CAE7E4900
+5CD570C914EFBA426BAFF7A56FC775ECF5BE13F2C42E51EF96784E5201C0B64C
+074AC229FF0BFDF71E6D5E08D8755D2C12B770B6466A9C9C61C15582DCD2FF78
+E9E74DC2B1CAA344EC0339EBFF92CD2CC1D62E2FA8FF15E7459A83C6CFA58A77
+2F1A40BD276E76B675FD6834052B33BF9190F04DF6AA5FA3BB7D77A88DD5B600
+324C5E28216F47682EC29EABF35BA842BA2294A3D72B126EBB852AB741186C9F
+FC84B12DC4A6CEC08F2D03EE61B65C845841EE17F1B765649A
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+cleartomark
+{restore}if
+%%EndFont
+%%BeginFont: CMTT12
+%!PS-AdobeFont-1.0: CMTT12 003.002
+%%Title: CMTT12
+%Version: 003.002
+%%CreationDate: Mon Jul 13 16:17:00 2009
+%%Creator: David M. Jones
+%Copyright: Copyright (c) 1997, 2009 American Mathematical Society
+%Copyright: (<http://www.ams.org>), with Reserved Font Name CMTT12.
+% This Font Software is licensed under the SIL Open Font License, Version 1.1.
+% This license is in the accompanying file OFL.txt, and is also
+% available with a FAQ at: http://scripts.sil.org/OFL.
+%%EndComments
+FontDirectory/CMTT12 known{/CMTT12 findfont dup/UniqueID known{dup
+/UniqueID get 5000833 eq exch/FontType get 1 eq and}{pop false}ifelse
+{save true}{false}ifelse}{false}ifelse
+11 dict begin
+/FontType 1 def
+/FontMatrix [0.001 0 0 0.001 0 0 ]readonly def
+/FontName /CMTT12 def
+/FontBBox {-1 -234 524 695 }readonly def
+/PaintType 0 def
+/FontInfo 9 dict dup begin
+/version (003.002) readonly def
+/Notice (Copyright \050c\051 1997, 2009 American Mathematical Society \050<http://www.ams.org>\051, with Reserved Font Name CMTT12.) readonly def
+/FullName (CMTT12) readonly def
+/FamilyName (Computer Modern) readonly def
+/Weight (Medium) readonly def
+/ItalicAngle 0 def
+/isFixedPitch true def
+/UnderlinePosition -100 def
+/UnderlineThickness 50 def
+end readonly def
+/Encoding 256 array
+0 1 255 {1 index exch /.notdef put} for
+dup 34 /quotedbl put
+readonly def
+currentdict end
+currentfile eexec
+D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7
+5182433CF9F333A38BD841C0D4E68BF9E012EB32A8FFB76B5816306B5EDF7C99
+8B3A16D9B4BC056662E32C7CD0123DFAEB734C7532E64BBFBF5A60336E646716
+EFB852C877F440D329172C71F1E5D59CE9473C26B8AEF7AD68EF0727B6EC2E0C
+02CE8D8B07183838330C0284BD419CBDAE42B141D3D4BE492473F240CEED931D
+46E9F999C5CB3235E2C6DAAA2C0169E1991BEAEA0D704BF49CEA3E98E8C2361A
+4B60D020D325E4C2450F3BCF59223103D20DB6943DE1B57D05DA0555DF933BB0
+7B42D264831116C06C79335D519461E7B0E870A6715E3D74A08D1BCF86E3BCC3
+A43FC6BAD1C68BD9D4AFCC06D845FD1F1E70D7A47F0BBCAECE8396E04591E5E3
+4797F646AFEEB7DB548183F0B74C9BB6BA2AA04E7F5950EC8AE97C741D4B2C5C
+A8E7A8DF5A36A30B5A7592D95E1DBC63EF33C92FE459792CED29E2B8B6919251
+75EF62089BD7D44A6E1F9B62EC802FBE62B821DA1C3B2DDED45D27964AD29ED0
+9FB7868F3A8FEADA87A8E42D52C1EB7229D7C79B60BDA263F2BDB025AE14A507
+098FA274206BACFB4A0A7257D5998EE8F0FDCA79CB61DD1FC59DADD11E16BF02
+ECDFD706CDA1E72054D4EB55AF7BA9F19955886BC0BD6E0E3FE3769C94AF3581
+DFB2BCD67FE2892AF07E858A01280194D8DD7332B3D0A585C87FAB056C2EAA9B
+5AD48D1C9F00CEF8EF0D1408DBE1C03D04B231D7B8D5D998FE0CD7EE19828EF2
+F988EBF6DDBFEE00F04A4A1F4E1A55DED7EF3AACEAB5005F1962C724A017C914
+2936E2E0DF26A55ACD7DD836C6035CBF07981C1BCE3615064F0540A1034C69B4
+E3908E76EF8925D486DF0B4A8E1F02D8AA99585A7C31847AB9382F83880C1C21
+C496AB2DF8E7BD4643B28B704B5F6B53429D3EE940A79135F5BF0396E5B46F23
+42AF406C26D12BEA7A41F332AEB75DF43C15334CF4651A99F602036946B1B91D
+4BB0D2E51C20216D892C8173241AC8FD15A37C3CDD8AB4FB67D8565AFA61C068
+95E3D6E46D7C09BBD09428207D506AD43C693F3C3D787F6A5C39084AE45E81C9
+830900DB50DAD10A17E118FB5E9680B5194716A788FF7514A1167DD1A305FE62
+C7DBA30E569DD3565AC9C80B112E221E3878624A015F6224597D02C9A07B368C
+F9FDC817988D12CB00ABFAB288C20A59AE40E7A75C235938C47F77261BED14BB
+6574F633BC4DE9E8AEABC46E0965AD69748C315B6DB5F264D5E7635BE37E23FB
+873E2488086BA27275142C774A4A241F92E8ACFF0F25E81E2565642D88F77DE7
+03BA6E0AB8C273D43F5C88DD273D7886C1572D674B086E08EE5BE56A520D713D
+1D90DD8D1CF414C76B64854635C76855F949FA06475925968913CF6D405E6CE9
+C7325E216C93328EF1390B3995953041DFBEFD92CE03F8AB67DF89C85998CC8D
+19199061983636565EA9CEE78F66FE545C426BBF082829BFCA6239FDB2098A98
+569F22A6715C133C5CCAD16601B7CAA82217BCF845B62C35259149B0763A56C8
+C61594B1CF2751F7A3A54EE4DCA3C0BFBB266065EFFB6D397B08D1C442EDC482
+09469FC69EC41020E0D193F7857E7F5A0950AA0536FE61EBC494DBB4F9B00644
+03B3CB9EA2FADFD042CAAC318BB79F1290EDF7B15459011E64F859B565604862
+78CE11B9CEC298E0CCEC1657
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+cleartomark
+{restore}if
+%%EndFont
+%%BeginFont: CMSLTT10
+%!PS-AdobeFont-1.0: CMSLTT10 003.002
+%%Title: CMSLTT10
+%Version: 003.002
+%%CreationDate: Mon Jul 13 16:17:00 2009
+%%Creator: David M. Jones
+%Copyright: Copyright (c) 1997, 2009 American Mathematical Society
+%Copyright: (<http://www.ams.org>), with Reserved Font Name CMSLTT10.
+% This Font Software is licensed under the SIL Open Font License, Version 1.1.
+% This license is in the accompanying file OFL.txt, and is also
+% available with a FAQ at: http://scripts.sil.org/OFL.
+%%EndComments
+FontDirectory/CMSLTT10 known{/CMSLTT10 findfont dup/UniqueID known{dup
+/UniqueID get 5000800 eq exch/FontType get 1 eq and}{pop false}ifelse
+{save true}{false}ifelse}{false}ifelse
+11 dict begin
+/FontType 1 def
+/FontMatrix [0.001 0 0 0.001 0 0 ]readonly def
+/FontName /CMSLTT10 def
+/FontBBox {-20 -233 617 696 }readonly def
+/PaintType 0 def
+/FontInfo 9 dict dup begin
+/version (003.002) readonly def
+/Notice (Copyright \050c\051 1997, 2009 American Mathematical Society \050<http://www.ams.org>\051, with Reserved Font Name CMSLTT10.) readonly def
+/FullName (CMSLTT10) readonly def
+/FamilyName (Computer Modern) readonly def
+/Weight (Medium) readonly def
+/ItalicAngle -9.46 def
+/isFixedPitch true def
+/UnderlinePosition -100 def
+/UnderlineThickness 50 def
+end readonly def
+/Encoding 256 array
+0 1 255 {1 index exch /.notdef put} for
+dup 37 /percent put
+dup 40 /parenleft put
+dup 42 /asterisk put
+dup 45 /hyphen put
+dup 46 /period put
+dup 47 /slash put
+dup 49 /one put
+dup 50 /two put
+dup 51 /three put
+dup 58 /colon put
+dup 59 /semicolon put
+dup 63 /question put
+dup 64 /at put
+dup 65 /A put
+dup 66 /B put
+dup 67 /C put
+dup 68 /D put
+dup 69 /E put
+dup 70 /F put
+dup 76 /L put
+dup 77 /M put
+dup 78 /N put
+dup 82 /R put
+dup 84 /T put
+dup 85 /U put
+dup 88 /X put
+dup 91 /bracketleft put
+dup 93 /bracketright put
+dup 95 /underscore put
+dup 96 /quoteleft put
+dup 97 /a put
+dup 98 /b put
+dup 99 /c put
+dup 100 /d put
+dup 101 /e put
+dup 102 /f put
+dup 103 /g put
+dup 104 /h put
+dup 105 /i put
+dup 106 /j put
+dup 107 /k put
+dup 108 /l put
+dup 109 /m put
+dup 110 /n put
+dup 111 /o put
+dup 112 /p put
+dup 113 /q put
+dup 114 /r put
+dup 115 /s put
+dup 116 /t put
+dup 117 /u put
+dup 118 /v put
+dup 119 /w put
+dup 120 /x put
+dup 121 /y put
+dup 122 /z put
+dup 123 /braceleft put
+dup 125 /braceright put
+readonly def
+currentdict end
+currentfile eexec
+D9D66F633B846AB284BCF8B0411B772DE5CE33C33655F6FF751F340A8D6C01E3
+2E02C24E186BA91B34A1F538959D4450CB683EAE5B034D030186901B458D3777
+6B3942BD2E07121385120248891AEC2EB33C4E3A0CF00828D0F130C31A918C18
+979FE94379C648EF21ABF659253E43CD1253866F157F1DF85AE7E8714F061B1E
+ABA3AD094FE8D6293916FA82EE4F486C7E513A06D4C9BE44306A8287970B4ABF
+B6D1F9274A5A0BB6ECF713ADBD1260D5D6C4420D357FD486470A74B2F0621B59
+A9373ABECDBF32FA68AABB66FAB0C970A3354A335FEDDA1C288245E6C890B8DA
+3D0EB953283ABFE372221EEB1586B0167F634E3F29CADCAB484B81A243CE1E3F
+D5106AD6BDB1AEC91123377F816711CB9D5140120FEA84B8205B79D1569509FC
+6B671211985CEF51691C45A168740BD826464B2CB0ABC575E7D453161328F80F
+3AF1C99EC219010EC6C95E0A8D1909719CF18BE424967E90DF67537220E60C3C
+4345B154D08F9EA684710E659DFFB0BA1B7FDDCD519305900A5E1CDA219A6C90
+DF8BD712A3686DAB90344E8784C7A9AF3318550285039B701B9FA1D3A3C3B6C2
+753F1E794A3463A173C99A9EC0E2AB5737134CEC2C97CD6A37E38692ADB4B131
+54697B7BBBB23680C72CE96066D8007B90AF0FC5958232AB4F21826691E9874D
+107F47DAC1026298D787989BD77CB43A09FC95F6997DB00D8483AE9C2716CBD3
+7CDF02DA34FDA2F0754ED0968270E118DDD8BAAAA65C41D699E2BCC2556AA231
+328187D2F50FD518CF458B0BA1F7DBAF4B231CFD61D5DC56335B53C3013BCCC9
+85690E19E992ACE55EEF2BA7A75DEE6DC33933C226FC1494269B7CA4CBAE987C
+2C787386400172AE3F44AE47115F4117EED866713BDDCA4A7AF658C49F913CB7
+308635000043F63BA210410A66E192289592882C477B2EEA0B2A339F0E7CF450
+CA0EF79D3A6C28598825CA03FD688DA60C95EF707C6E67CB7E57DE7A80545195
+739ACBDF27069F34C9E0216C3D17CFE7A652B910FCC9B9AECC2E646809C22D93
+FAFAD465DE794755AFF5BEC17160C9563B5C51D07022E2D3A256FB5CACE131D6
+F4B30F591A0419D957D8F0DCAA0A8D65A8D83422AD7C2613FF13A302E152B312
+3F1ABB45E42084EAC894FE335C07324849C9736D00C872C4551997DB889AF17A
+A52C5AA77DEB548B0103B77F65717F70B90C1BBAEA7BCB4959F32851A9882A3F
+55673F24103D6BF7FB3AD3EC3CC50FD8FBB4A6B13C3D278174320713A7B327CC
+A71F01E50840B33D0FC3F5F6A6F2B0F2D0E38494B1C73096A430510F927235FB
+69E931DA8CE5415EE88D0248565E3347353621A48F7948AC9EAB5F5057541B50
+82BA955D90BBC82E582FD71904445A59186022FB928015235B60830DA59813D0
+8DA3FC306C43FF8BB2CB6772B1F7BA3C1AA4B2343E7DA7E065EA53A4E5E28DC8
+0790F2D5CFB203CB135A08DCC9702B59A63290444F202756E55B9FB053F773D6
+0F69C63E74DE593E49186FF4304E8FA76C3E3006358DE549E946DB69431981E8
+1261C9C9A884E4EC708F69E6AF5D22C5BAC49F2AE85903E3D48D03B7B97054F1
+D2937A0C685D912D6D20A75A77712164DCBF8FE4D5460DACE139C5A934EEA09F
+B94DBF168A4BC03A9D689936D833018FF43837DF9519AD10F357F00BC068E737
+170FC9FC6715165F733A0B6FADB9ABB48B845167DBE6D771C916577FC2132863
+767DC6E3D460E779254194AA690983184D934F5E858C1176B3862B69B42EBE7D
+EC9AC4E020085D474093F7694C8A8C2025D4B0163E29320C384D62A9F3FBCB1F
+AB5A374EF3DBA48AC2147A207AEFE8B78BECEBC55C97B538F3A0FF4589D171E3
+826342C8A5186224FEE54E4C6AD5EB02BCB4088B132FA1A48362824BEF161235
+8E661DCFDFD8429C65CCEF63902D0E07C2FEC1DC2756D942F13FECCB7E8A8048
+345338F24B7808E46A04A915C111F939E2669A12FAC0BA4F74B832EAC83EABEE
+67E2817C058E69C2010F2572FDD15194CD8DF0FE9F827D349C0444A18D1A86FD
+802BC120A5114FA3523C221242C7E767B0AAF6AD15DA1561CE8EB18A2401D71E
+20481FA5F1E247CB5288F47795A6A3A3BB186E89EAAC4A54AC91405427136127
+5B151203426830F7CADABDB3FF63B40CA29CF8E667E71615869978E99E6F3F07
+0170EACDE3DC62DC05681D7680E2E96C30002AE34A4E5EAEDF88577601A82C36
+22D625A03B0451D7BBAAAE0C396711500E94A482EA787495073F16A76D1657DC
+4EA7C7B83BC30CE7F145B65B6E2ADC207D192CE3B5FEF7031F4BD64F57E1BEFF
+CCFFE06F1E4ECA48B442DF413766A70DA626359183A9B24C70419487423C816B
+4BCB067E661E47E172563090D6328BD738D2B0FE41A0C1D7A47576A79BAFC880
+0473229D134F998909898301CEF50A82B627A9A06DF59D0B9C530EC5D877F1E5
+220D3A1ABD2ACBFDF1933F92B3137B22B9F95A961D93B729307749A50D8A6403
+7AD0F9C40743E39B8D198CFCF7C033D99440D46D821D97545B930EF92E7AE005
+27F2FC766FDD4790FD1913C7A13328E73E587618ABD9008022C5C6C23935CEFE
+B5ECA2CEBA1D25DD846B48423F7186E03B1F61C8F1D5AC95CE03C83B2F221300
+7A761D6CB5F7F9251D3F9A7F4B25B99EE7A1347ED3059A811A82A35A033E9B07
+A4FB2A95009576F48665605C478E5F6C1B135016FEB4AE6A6BE4B4359836E04D
+45AA11366992162973FB6266547C2E570B8F56F6D992D2C0F63950A16839FE10
+F56E59D93A37573E3268C5892C9F3358753D1FAD6379E82BE740FA17236E96F7
+C53A2FF785FAB86AD17EB1DE8A6AA9C69B91C9D9B43B5188E51F6939FEC21B65
+AF17DCE95DD3BA4F1DD51F0BD5E5869A1ECA7398B6E664EB0D189181E9C23012
+DC1E54C146842A90909DBEC03B79B58909205F2CB2A7F83C66B437D7F7DB9781
+FF0C67F004E979C95B706D8D85255CCD827CF6196D847DB380B56980109E96CA
+997157BE78A4F758CE59D78158A854EF2C20099438F74777D3B0298D45BA86D4
+3C0AC30C984718FD62ABA0567AF0A70C1DD41953E3E7212D5C562085177E650A
+2ACD49940551E3F7619B4CC31DBF67AC15D938619B95DBF66E6D1300B1BB8605
+31C4011379FB5388CA49E4A9BD6C921560CB8D513F8716A0733D2A7D77E62D22
+A69B54E9048CA168D210816E613CF6357706EF6B118A1263B858B7E19AA98891
+43BD675B06C893579957BAB97199ACB82C080593ECB8B66A7334779CC16E4D0D
+4AF365CA6AF9727AE29417B61A5FD52452873B1D666044F8E7C1F6C6AA3397B5
+94A5780F4005FB5E41698FADD1594B505A58253D68D2AE3320E22165D198050E
+425820CC0A43FF1D61F168D87CDD30C14D387610B6CDB63BAA39B3EC9B3CA616
+FF1CC679227749DED3DDEA26B4D97C633090DCB8D8A6E5E07E3579E4A99BF1D5
+51E43D1D7F139C9CB1D76D8F693A3F23A74EFBE79F01E0B850BC6B6C7F62C2E9
+859469A144853434895D73DA6BD2B348A48BA80E79327ABD96539F2EA2209852
+E1BF6B0B819D7C68A9A1D0F6F39416E3EC4AC21DCD3C51D3B5B8D417EFAE165F
+2A7E0B76E558AC9F685A76FEC7E3C73CD607D9025DE6113BE5D0401887A53910
+82A813B026A502B51D484797D9D7E79A25B6624940AEDB4A15F2C73CA1AF60FA
+22D15BFBF268EB044FAE17822511AC6580D1D74DBA3C3335217780B29FEE792D
+200B00B8CD888A8BFF15D938FC758BB5CD9B3E08E1AC6CD1669E663BE86711A5
+892684DFCAF70C11E803164994BDAD89128AAD6461D4558AC2ECA3E05EB56D32
+0290AB16A6DF7133DDCBDEAE89C6CD83552792E23CBF567D57E46548EEB0A140
+437492B53C14419B6FE7E64AC23923A9E85F56A9DF209DC4E6BCAF1E045F9CA3
+BB904BFA150F4083C18B0CB5580450CDB657EA768E71222C71DA911A722AB9D9
+E18B6847F417125C40EA8A0CA1F551A4548712D098209C78DF9C3F78605E5402
+DA2DBE2218E49B819296D5AC88D17DDBA982E171733D1E9E295B3157C9B90BF1
+CE68CB185947D1E3D7544155B741296D14B064BEFD3E6AF25C74006CF6800551
+80FCAAEE6FC9105E1674EDFE68C45617D8D3E2264CD395EE94EDD017EB85884F
+FDF530EDF4F3F14750CA066F149E688FAF8EF4B5FE6AB515CD298E8D170346CA
+9B32BAD1D86DC147BD12EBEDF6CE1E749C5B48314F512470A568C172C35CFA41
+031E34586A89404CB5372D7B2C7A6D96F420D4D7C2D4C08184F4AF86B4536A90
+9367598424112A7B05D7107B23695CBCD569002290599E0FF4EC5C852C31F5F3
+9BD56BB840DC17DEEA579E7A7A9F764788D4E3774BD523D21267869224D68891
+4523070E80A123B58F7B579866332FC38A41A5915EC06F2D14FBE4A6CAF59AEB
+57E98D661637EBB885AA5D74AD429CCFF64E5149815E7350118E6385F4C74E0B
+2EB474A6DED021D429F01C9B0634A09250C40E22B3BFE1B7246D18116D585F39
+0E06E9B5F27A6CB77C8E9462189CB900CFEF08F798CAE15FBD94587F33816EE9
+03FB2DA6826EB69D8C284AB9F7B00630D0420EB6E35E0E288BA25F5C2345C067
+22412633898AF99C2FB232D1469025BF262B567F29A05F4816FE8EEF5F02BD79
+06202F6A1E3E5D4B3C91BA8D5FF53D5136BF70E5FAEF441A7310CA83721711FC
+39EE48BFB2FF287234B1A6102AF146B10A632A53AF97E11FFAC3A2A86BBAE3BD
+E0459ECF0305366078066F2CC628A3918E775E4236651B3D817AF1684B07A163
+A0142D16F55D2FB5F2255A8813B8E54EF3E801E95A4A226AB8C0476AC5EDCAD6
+9258ACB6F7C0CBDD298A0B816560622A1871FBE2FAEBFE697A8216A0D8FE30C6
+B1BA6C3E975F78182743842E7F851064037394142AC91B2530FB1D511EB20F3F
+79EDD8B7E1579D35F6E7B2883C47A46B6C1A458BECD6BE58AAFD834A7D82A553
+2FE4E66878E4699856DEDE964F454638F768AEDB595A883E380408F558015FB5
+8720954ECE2704AFAD4D62E8BB2657C4FA920D72248B3F762B2F12D125B796AA
+1C4BD6B42D766EC1C9B2C7AA4B6A3474BF753742DE8AB76D0AB0DD9A20EE2DCA
+0F34CB25995ED3183759CA83ABC32B8BDF0B06EF169252587971F7D37463BFA2
+BE36B2E45559DD73DE7CBE29DE92B9BE6B9F8093F934BA311D81E18A8DA92FC3
+312E3FAB43C53E803975981F0076EBB8F257C123908450661B6FA79E7ECE98F3
+B0A94E0DE3A4DCC8E0FEC106CDEDAA297A75BF1E40F3C2419BF72A644F452E2F
+9A8793810319885EB3AB23B1E80E8B62A889311355C73722C18E62711A7E6A16
+A5B923408444B13F6522FECA9A60B067EE332B83E1A69CD835C9D69B5D8859D6
+91F9276863D2E2E8193641E4239F4ED15E2C482C735BF5434BAA454EC2830C1F
+7CF766DAC9E924F17F03093132627673BA3D99DC2DBFC89E5BA032C16D3C1C8D
+78B3C464081044DB53C7A29E925F4157EEEE928C8E28EDA5F0A4BB6E0042D8AC
+7595C350645118172D04FBF06B2C9A9F3603A54B57999E2960C993724CCD6A09
+766BDF73F66E07FCA9BD09079CE8010E6CFECBE2E5DE1EA4E280AB78D5184C11
+016385007CB5AC0BC95955A1E88EA1A1D8EFEA886007708BA063F556D9284D4D
+C764E75CECA51BEE3D35DFCEBF6175953D30FDAC00F23B1721A1DD577945B5E3
+8176A21A649D907B5F63C71718ECF32ECCF1B26BF15AF694F1045CF98FC75278
+E9782ACD3D83CBDBEE690D29B3176E745AAE436382D258CB22F3DEDD02E441FC
+6A9931AC2F61156DE258DAAD5EDAD41E6C0DFC902173168BB4F51DFA7EA615C8
+B0F92FDB118378CBAC3D56B6B9BB0883C0C14EAA67396AAA7987222A132B7959
+44FC1E9D6DB6D549DFBEF8D2DD8C53DD3B66935FC239E74E2C440CCA13C068EB
+C4A3B69F499F573D076E2C92E24F2C69B806591B0807CD903E078683854963EE
+5125C3640860CEF37BE186DB781475554BFE6C528A9633AD5772BD53244E24AB
+42CA2D1123AF45FA257940CE611D83014DF04E60220E9AF27CB2A2247BBB004A
+F5722A5EF058FDC7DC2B6ED1406649DBAA58DF2ED3A91483D60F11C4A39BAF57
+CB1E320A987B790672CDD3E3BEF4A67032244DED2FF4588B2072CDABFEB36009
+9F4BCBEE16F811A44CEC77F8AE873C90C0F4C975E51014ECBD45A56A63F034C2
+82212977023A132E5C88AAA826D841FDE9CBCE7A01E4B6F0EBDDB9A69EFEBD72
+0B41EDA807CEDB791084047624BC11CE10B7A0A311272EFC9E013FA374D97EA5
+F7998FD908748CA72D8CABFD0F01220C2114D3B462B22FB71A23B284B1CBC7D9
+EA20BE71F8ACCED21F096009A14A7C7B51450BA51514707EB46B9FAAB31CFBEA
+E1DDA6F5D9AF0B6E7D05A1EEEEECD606427B0F2363D1B882B50140466B9D3CBD
+D00DB06DDD1BD4681E367DAA4B7C405C6281B67FFF794041738FC6A01D261CDD
+F6E0A330985F2CA782CBCC02B6F4EE5993434F656B91A51CC03B1D73FFA6629F
+14F6075EBFD83B702D8844A96CFB5C14051595BC7DB2218156A6DEDA5C98CAD8
+BEB5284D9D9F86406A8C1AE85857185991C360E5F44DEF352A1F301207BE94C2
+9A3A11BA468FACB3FA2D683419C44EFDD7C8F1079659F3ABD89D7F168B1591E5
+6105F9B3FA481BA953CD34CCFE73E427D3AFC46E5C58C2981198BA284DB8B37A
+6647BEAA561799877DD6858FCA71CA6003F2961FAA529906673EA94D82D78116
+4DAC81011FD175DA707C1E15D4B6FF19F8720A4E05E6E103E2DE880FA9C192BE
+C5ABE7C311C2ECCBCE8F9713DBA74AEC37A61C8F21F271B35F0F7C88B182525B
+A4183377597ACDA9A6E2F181725D427795B975BC4168A408D292CAA484BD1B8C
+9DC62E737ABC805C8FCB7E96454DA032B601345570EAE0379BDA84BB6D15D780
+42FA1E068A7D62F152B43B788513E13724666FAB4E2B4F04B0448194E46582CE
+7389BAF0D1DD4435BAA6B82AC305C04686B89FD51197C721D941BD2893596024
+1598E6C2BD84527EDA6FAB782033E4BB4F964FBACD96CAEC3F3CF89CBABF6B4D
+4D3AD14A03D4BE931632BB03BC2B92842FAD51A19A756892D5B978DB695D0540
+CC9D030C612E2B201D60D09F56332DD0BA1351EE62816C21A35C33DC11B37BE4
+D2F164ACD836A5CA1553CBC733E3B159860454B17064B4E22D3764FF6293BC81
+CFA3B2325C8E072857F6FF4ADAA8818247D431A28D3C5FDFBFB24A6CAA327AC1
+0B3630C84ED9F0D33B8255A3CAA9C5A0C79F7BF6BA3B9801C3BD0B30AEF7CCA9
+92F25E332EA97A7CC653C93D1497992D6B76363885B92ADE34C2A33E30A3B1A0
+57E9C16D8CEC189565808D3FAC92973C71CDE74DE9D8781CCAF88747758014C4
+5B62667D4D2CC5EBEBE77C5AD00C6A69D1819F5A786964501E077EB3BBEA52A4
+57729AEDF35253F7E1D31F2DD1587BC15CCFC1B0CA930DA83E2031B099A38158
+8D1849E7145AC74777A3C7136DEABB0C787E5A218309A65EC7D128147EDE3AE0
+C0AC039B56F767A22555CFCC12DCBC7F5A5A3B4E86EF5A69EEA93DF0BAF2A3F3
+7504F5C6A7A67388D2F9045BD755BEB7DFBC2EED679497EBEC808BE20FDCB5C7
+B586463BBB898DECCCF7249E9047DA943FAF0718A2050FCFDF8A4C2029FBA674
+EA64003AC03A847185936FC375CC67B3006EA681F61F640C3640A78D0C7FF521
+D477981E23E5956BAF42252463FDBEC49BB560A9428D248B0C5250CFA2A49CD9
+DBCEF73123C13BA382D3CF6A7B8A8CA3191D379A659F0E2C6E9CAFE9DA2AC074
+F622E397A2F7C73347364AE249B11AE2C34AA7F0D27B5F35D548D5AD1228597D
+D16A478C901D3A34D870BA39F770885B7DE62298F0114752435050E99EA4E5E0
+56B965EA185E8DF96B9FE97EE23DD45AADBFE02B427222B9FC99DA94FB2648B8
+46BD30F881BAD3820DCA4D8093BA0FE70E03482CC063B751439125623FA7AE40
+52DB2A380D89D5E37BF264CC73DA9A1540031587F481A0F146C6ED6F3F2957FA
+19477F075ACF64D424279612DA5AE02B2A140048386D01B1F30EADF2050B71A7
+993773D5B68C6FE65EAC53411AC6E7E26E49BE5FE1079A8BC565D2CEB7E3B896
+593D720DBF66CDB26DA5D8E533A346845E31374A7C85FB6B06C3D54FE3408013
+864CB0954A2FFC00ED17CC167AF714716376B789A71059DF2032E0E907761E81
+F0C887810337F52662AF43FA1A7528923B0A30A217FA184ACB73207EB3018D5C
+09EA88CA0873AE690E94D43B360D9C1070D7CBAE9BBA72E82EF9914D3AED6D1A
+5539585EAE67293B5FBF0A378306EB277F84EEB57CCA51EA76EA03F0A09A6D8C
+9EB9A9AF470690AFB8ECFC153036208A3AA1BE8F7AB1DBB27CD8BF8B107F22DA
+A8606A40D5F25493FBEA5FB1D267DF8AB5BFF7FED0FA3F9B6B3AFBF380BEAF8A
+E6C650B5CAC390C5CAA72856C1E8748D575B7F1A6B0E2E20CEDB0A5836118F41
+2737226E13A23247922FA567C03EBD07549DD501F4BFA0AE8260E2333CA62BDB
+9302337CD98D1F4F08BE86ACFC605A40D7B7516316CE5C4F0937F28F8815FB2C
+BD9DD7777FC6556C7ED0FBFE7820F42D26BDD342BE1666E63B511E1C427F7374
+DE7DC83F2B95ABCED3E77119632B760A9A000532B9A7775B84BF2B6AA2205ED5
+50EADE9526AEE02A9116F3EEDB7F1F323705D5B7F8D6B96ADCA94F4030BA6F96
+A9E7C9A7EA9D9B4E35C2CE9D6CE0112DE97156459BC9E1BC7F215BD2862966F4
+18EBF3468AFB1223AC3118BA245D332DAF7E1DB701F8E34536ADF9087D99E04F
+D2598A03C2050442F0841C7A3953DB2DA78675F36F9C0CA1756FACA40F00101E
+FCA695625FCB7DE8E0308D6435F05F6C89F974CA3563065DA1A5CF5E4E5360BC
+8096132CD03A036739DE06F53F2F45D28E555D5A287FCE788A1550A77AA5DC70
+B7F5D3FBACADDCE51903A9A92950D8B409E7733498C9B871E26B4399FF8D4EC1
+B5592114F9FE30AE9C57473E23F3B1E4ABCA5379243140E3FB1DEC19243A455F
+5406CFB36510DE55B9C5DA78C4BEEF9BA34D45FDAAA9779DEB56E9146A7F9132
+9A8F6B24CC94A37E2BE445B33C32FD7F2BBDF474CD15695C04F720162893DAF5
+E5E49A55D60CAF313CF83049F77A3A4496E5095674091C4E71B46510642E345A
+0B3EF7A7F2E2FE4E64D6D87D4F30DCB4F1683982A6218E2E0E8633F43D99E79C
+39A96D404E37F3C93AD18405EE0B7BF78F14B0E819D6BBCCB192799111CD0B23
+BDEB81964195B352B961BD62CF4C0621BF96AF2F2A75AE8AD2C7E3D3501839EF
+474F131070BA85A7E07B446F24D5C7D336D4818805EC5D7629666C1345FFE34D
+0627FFE7343D076B890849C4156A692379808BB5DF7A6D4DE08F7CF2EBB4A6FE
+9ABF45949A0228DE7C30CDB7E7EA60DA92FD908DC48C7FCE2166AA2914DDD2C9
+DA4C0FE9647865773C708CF3950EC68A371E67E81BD6A053AB91F791D133FEE7
+ADB9AB33D71C2339C812EAFF2BD3BC6C738AFCE82A0B2C89A0FF0B9279975DC1
+5BC1265A47D261E5135D54239B12F7F3478FD016DAB3096D7797D5079425DB35
+04A5AB6B93147E40F3C56318AA3C54A886AB946E0F029C17E8038BADA5FEEB9E
+F204CFDC53D19994C0A8EE8B048EE814A6B7936118FF7F18124B6F5BFCC383C6
+FDF2801B976D10E85E0473BEBA2BC7121ECF78DDB7B71F2F2C1C48DCEE44D6A3
+64BE288AA8B159F298A051B8AF1A5446EB25BBD41AEB600C8CCB71CFD7C63F20
+FDAE935320F972462CEB17A12D4F647E8410BD0CBE457D809817AA8D1F28F0EF
+E34A28F92A73BAD78FC78B7474FA231CA3F56E3CD37DC29BB1003E6921B772C7
+957490DD5A80BB74BEE6355EE2583992E33059098C2E411577444F42215FDEF5
+07539A89117D9908F76734F14C6AFBF755D2F1B7E90B929DC7166E42246934DD
+000F25917D4843B243C88386AB24C19400253B5B9F2903A888C5F6CC3790C8F7
+25E490AD14AE24201303A5141925F9B4F0643C39E6C2C83484A53EE30A24D9A4
+BDD4FCC09560A33F4759CC4252305CACACB8F7454796942D932B51B87EEAE947
+1386EED4018DCFB7DD769131691F3AD1DDE58461AE35B7F52652B97E47A08A89
+182718E1C03672CDA2A67799E73F0EA1B817C4EC13E0CB4A7EF88EF375AC9DB1
+B1A2913373C7E6E25A331B334880537BFCDFC59AE9027DEC86CF4340C3A28940
+13AD185190A4B9189F57C2A52EC144C6B31477108440972FFD632C00DBA2F26E
+2AF7554A0F86017383B6B710D0DD338D0F99DCE6E45E0BFD7FAFF6B113D40623
+5B814DA931774DDA73A4D318D977BE7CE765705FE6AA57154B836EE30A712FA4
+E646884DD1D5A0133E8E587CCF21AAA094796FF152869D68D63B301FA1E6F1F3
+D8C90FDB2A33B5819982A3B0CD5C74D0777191B1A4C22217497FF2CA8BD6A3A4
+D8EDF1777C875F22FD0AEAD864CDD50E136CD11ECB88AF81A2ED82D15FCC3FDA
+6BEA54D96C55D1A762EB065F30CCE2AD855EE157F2201053C32115C67BAD91C7
+E21A27C2E9CB63295AA51B894069EB68D346219206D176E29F02B0DC33970950
+6D31C95AB5E20925B85CAB56CB1BE27198F0867DBA51F3EF77515AAE2977ACD2
+08C0429066EE183752510F5850A207CCC27A6CBE54D1AE2B035DE35B0C1EE1A4
+6C4740DB37FD19066A52E6A1E299ACFCF25129560DF0008757D5FEC16EC7B382
+150B5D6A48FA59BBD75ACA4FF8C95962C720529B74033859194565EAD36433EA
+415A022AFDC67299D4332C3BE1A1C618CC28649DB08B4054ED1870E11AE5D949
+D54DFBAC9B3C9C9AF2E0D627E9B118101083E94631B8C70D77613E7D7686CBEC
+067E4C5CFDFFDF9D2CD3096FADBB3121EF0BD34D8D5F49DBAF9D26396E3FA2F9
+0F620677B8CA223BCD87A5689AD5567E371B3CBAC84656609C2D99995B97C092
+16EBC52F16FCB467D6300E0E2440A4FA1ADC675B162E529E419DC0B2D9D1ADEC
+6717905AF11CA9D3243145737F32ABEB25A19DB07DCED356922EF01D005C6301
+B46DA561A7AD068E1143029B4176B05DFC4A8C002026B9651BB1B638B168B165
+E47AC2611EA44F0E319558F8B12EC74AD29D8C6F7C40314577A43F0F0C73A33D
+267112C82715B672B01C32B87CDE09CDCF071D42A5A6ACFADE363F8F3442933D
+68321FECEB2BF57ADA141650E881F7174B377273C6A6CA746ECCF75DE3174AB7
+901B6B7B40780F5B08CC2EE1CC570667EE9FBFAD62F91B7FC2753D8A67D7624F
+311AA78D0E2745857DC76BCA642F5D16C61B787675827A773AFA2B401434EDE8
+436846C7B54B1D3B59E7135AB587FA16097E93D6188026A758BC1D896EB27238
+2CE2360CE3EB0B3E6BB6234BD0EB572F6289EC3B195A25B7F04C4A1D386CAB46
+2328B5531CD23D370A1F835C08B79857AD1CC617B7FFB6A5495B43C5C0296F26
+BF43E1960950421E89697D8D3A963C6491448420242AF1886F8F0BC458CCDD1A
+9E558451D09E5F1D3D4132685EA394047116ED76C29C37E71ECB5CD928536A0B
+6646940CF4E7DA6FF49FF734C996D1E470C76B93F07AC2FD3DD1E8CE58B99E17
+7D8AA4FDF08C42B0D841E6DBD02D03DE4979C192B323B7A8B0F1BFECD3897A08
+2ECCB109776A8629D6708100806591475F749E0DFC77F685A078765CF3D7CB20
+09566947C17130F1191F127F64883FA25128EF04692D48613064C4609E64004D
+73BB55E9EA795D3F4CF7787B30546DD404710390AA206244ACDE22F7E1B32837
+0195F33A188AFC413C3117BCC14F8CEA7B3ED8D9EA111408A23B59A1181C330B
+59380F00FA438085EE5FDCAB9086F1203D5E00D3555031F5FEB957245A63BD99
+2F8A44016AF38EC9CD873BF0E6CE3DB71477715A00DD0F5431B226526FBB94D1
+2889125F8EA7D7D80983AED7CD685D2C4554DF6BF18771FAABE9082809881582
+765313933E5BEF8DC10543F08FDC7D27838A205CB8E27C4085BC4757076C4416
+9D01C1C6F2AB67176555EC8390D7B360A52085702AA4B3F06037754C0F2F7D85
+85F3E9FDC61063B64739530DD9DC830D3FCDAE72815D168D9F29E7CB51AC1416
+D64E975D394B9771D0BBA49D29217344677A5F761DF68A6473E765543A642DE5
+1AD182C3D5E54C81142E0B13D014A036DEBB1D80CEED73812BC1B6A58B47CCB0
+3CC294872F880C83B3B80DF265AD2AE75E11183F39EB8210EE2A3988D81519AE
+D8603CBF1BC4CABEAFAD471AB8E8A27C308F57010B5CADC66A20CB49CB206B21
+787866682904E8B6F96BAB38CD985D3ECFD4BC2DC8FC006ED251B33D15BD5B49
+F67F077EB05C4A8152BC42199280A4A6002FB515B12066A81CB7EE6D1EE4CEE0
+627D6864C7FE9BDE38A9A9AD1D936C224044CBC2A34605C0655AE3865D71207F
+0434C9599D05F947382CA09D0FEDE570D6B42FF26C563DDF0D26463380F03236
+01D250C5FF5764250D46FDC11C1F3DDE606AB7F3C144605EF356683AE666BA95
+24CE145F76001F2ADA5F39FA6CDB8E23838CFE8F367C0B00033C38B3730E3185
+7AE63C40CF06AA01921F48E5FAD944D2115ADF2DE08AF7B3BE09EF8E14C13ADE
+42D2F8C165A49D43EB6C9820239E2AC5CD126B249D27466C137C8E9C4C2E8063
+043FFEADB335F71E210019176C26C7F674E45659035CB8B5D56DF516196E20C3
+B893449E1F2238C2C51BDCFAEE8FF6E75916805935197231C7833C288E5CAB2B
+7BFF76B8B957B6BA87D29A0C5BEBE4A6ADAB8E92754FBDFFC985FFA9AAAD7CEC
+232C103C301CF6DA4B4CDEB502F6C69E3CCE3F2DBCB27CBCCDD25856166ED800
+0011B8AE56946A783799F1FA60B6EEA75E57AB6AF664ED1D95ECFE48911B4F84
+5FD744642C97636E31ACE20E647F8BB7C891F0572C53457321AF5C68C970B69F
+F387BDD580712566AF5D1A6D506A3691F30AD1A208AD5120F15CC52C2E5597FC
+87864D69D23B1C1ABB413B39A6723D7506D5C928DA55565872C3C6643B3E1661
+80C1A776CACC9F2AB472542AC98D16D1E9BE2DE721080FADB20CCDDFE019114D
+C6E7411CD110C27668DCA48A4E4524925A70ED96BE19C122419651EB3CD0D159
+6D21726638BEFD4F4AB8C7961FA81BDEF18E040075517ADCD56EC9FF35B9122C
+2AB2790C5A56A0C32A26500EBA5723B6C821A2F394BA85855CD5B40D8570BF65
+9B518A016B2CC6AA9D35A192836B9FA499B55FC00D16C92EF79720472E9B3EA3
+959D07C672B9D863D61A4C6F6342C57D7A0212189ED185426560C99F90424C6A
+C2FCDE549E84CCDCA8F7C46C39A1DB71B4A3EA049FDBE727B703C202EA3E61EC
+14D6E1E7D898F5FDDA54FC44BECA4B3EE7195F6342B211A00225A607A515038E
+3BA0474115E434E928EBB153D35B618239D0686C24EE51AFF3A88360FC07F7A5
+10F1C399536AD40C44472C0EFB9BED3A4A19AE09F2F88BA8B8A2AD4DF9756C57
+750C8B67B716F00AE5E8130810E1DFBB11533D6B975952D647AC2104C5244C1F
+7AE055551675EAAB795B0DF5E8479631B2B90137157ABD3868594B2576605249
+A08596F24669A095DF6289C9A8490D0FCB2A34D61834567CD4D6805E6085D3E7
+8C2FBDAE5DCE2549B912625104181A55C0AE9ED546B6CA50D18680395736C04C
+3FF16B8144F3034D47839FC9E0F3018B274690D84A4EEA97FCCA2BC266083174
+8E304EEB76DCAE7A994EB9469DD2821487B34A98C5C1B1A06D126F3432F16117
+0DC496B3FCBF052CA7703C1A5A80577935B84DB8DDEE31522B8F21D8A30E825A
+B4CF76EE7313907FC20F2D4ABFBE8A4D56F142ED0441C04057FFD93FC9C02034
+BF6434BDD59EC5CEFBA4937DA6D741E536DDF2DD149E3A5829438B85C555A61A
+C0435D7D490A218171910FF800FF83E1CA12EC0BE544B4FD54C6D4EB658FE7F8
+06CC25249FAAD164A5026E4B6223EEED925E44577CA378FDA2AFCC1AEB18BCE8
+AA450059EC5BA46EF38D17C39CDBB6B53E2EB41D8C72754261E9715B3CF7B122
+2658656A63C717536ACC41088DB20A37F55482483AD4023B9DD25B9BC679D20F
+C6C1594DD84DC09FFAC49C5C11D5B792897C36F5FBBB979A7C5D4FBD811E730F
+C49EFDDB23895B89FB746ACD835EB1451E58630307CA75B33C4964D8F9DB47FE
+C023D073E16B20837FCF73E08A4211AD764B9A2DC9A56247508C3991C5691CD6
+211F5A33EA0A677D8B9A7218DD9FADC8E0109270B33C6271C75E4640484E475D
+CBBEAB8F4EF59261283C9D71A65DF4443A1A767B8972A502073D3CD11757A4C2
+115D44C5E5AF734865515EA1F600710A4FA1F80FA1973168D40B199071675324
+809F05176B37D32DE1D5F18DBD5928FA7B95997591C811679BCD7FA4F2661969
+DB73DCE0545C0F5BDEA715EBEC671BF8DF227B71AAC0D394A629EDB3A9EAFA1D
+A59BB1C8414C8651963C42AC610BDCC6502103D419615D19367A0CB1244C1FA3
+A92C613C5EB908DDFB1F6A2B328C3B02E476D99213EDEC8689A98633C9ED2F4D
+B564029EAEAD6B4BF7F48AAA82BF703E5E6CE02FFEFED2931515BD54C1F27759
+596FDED99C51181F62454414D457F8EDC1C2176725CB27E8D032DEEF1CD5593A
+34C4C1635518C26A7CFE7FF060437B07A4E9E3A7832DD8DE42A87EEAB74983D9
+28B4224CA69B96744B0AEC49227FAE93BA351FA4633022F8E4AF427B7443CE98
+5AF58310731BD6BC244A430CDFCA453CAE76B6C18DD7B9B21AB1FC26A6D947AE
+CC1D69175A7AE9CA5BE35193C250B5871463A866D3C56BC789E320C12384CB3C
+FCCACC18EFE5F33B9811C75AFE9617A2B228E8210EA96DF696544BC213A842D3
+5663D1A6047E45B73F359348DB163BD2A3F158855D7E8DFD5C047CF004438DE6
+553C05AE977E2D46B89BC7700598626C381D7A9DE85F15653AF8961B6654C050
+49BBB2A28BAC4D8E483AF9F5A0089813D7B44C0BADFBFCACAE6A80E37E3827BD
+668B3505E860A63DF340C50520A4B897C2ED5BDA233FD90900EB1744A529EBCA
+E8F7ED22F61146EA597311EB9ACD9A47CB34E6C233BC11DADF4B08C49DAC9C1A
+98A6DBD19EA0CC6CA504FCDA4055AEED4B61441DAD725DDBDFB38F1E89014B3B
+6B4E03A305E4EC5DCC4699F4A11B0C21781246160F83B7ACA89E037446B0082E
+0B0DBE6C32CFCC7C3CB3AC239473496AA120CDEF346FC095F91059FDDEBFC53D
+C4E70FCD6561EF001208E027EBC4AA02E26264295E85F8DA8A22465873C95974
+A826A2FA9775BA836030546928AC76A97F7C89D853C15697C34E6C2FC09BDB8A
+4A02D72F30EA4780E4055C92D61299525BDA6DD26639668C6CD6A23833A9887A
+EB4AE1A44733C8BF923EB704C04CCDAD13A2858B48DD559009F3C9A110EE9D2C
+1E066CB545F71B222F85F72272ABC6CBECA141ACA57407CE5E05538B9A75EA79
+8608712D9D15C067A5FF5BECFBBF5144B7BDEEF1F5D72853AEE103D48C92503A
+8842D291A15F65610DA15080D7C5923D90FE9227A8B91C3820738AC188D4BEF0
+B820E9AB4000AB84E20F421D28C575DBC5635F87F7B532E11C533D663D42406C
+6ED1E3CF21A1F732AD02E503CDCCC855E94C9FC60F54829AD4B43979F24537E1
+B40E1197431CDC746D65410EED98A6C131A77F3050F7539BC0B23B4EAE070BDD
+80D2B7412D7B12928BBDCF54373DF75A5545E1C5628CAA0FB37AA9266B8EF823
+32BA32402292402C43865262C096F45E87FF5EEDD418EE3D060147ED67B86202
+B29AC7CF825D3E21656FD79ABC47764573648A3F0034002541A3F19EEB1F01E9
+288CABF41465EF73C9EE284AC2795205776F4D6FE020BF882E639C1D765F29C6
+AFDAE8CAC7E1D890D10AA5B9AA26BADAB14699330EE61693A19B8C1F57A321A6
+90E1EA59030FA4E2E6CD438E310C2C95040DFB3C0ADE277CF069C4A3A00877C2
+35B9A24906D896CDCD1E0E470CF8F3C323E750110FEC8FC29A0AA80FB41269D7
+C1833F70CBC947585BF6483B67E988378A7F7D9239B10EA7079900D7EC8CE86F
+58CDFFEDFD6CE9C9669CECB5B9B7BF73C101BCA162B381D3A30F918C9EFFB178
+748785B6EBF57FA87B77A9CF46D3029839DE42617DE029433F38799E1C07A409
+49F43D67B0CC8244F99EFD152B5F35D87D6C321070ACC0438A3AC192CBC96809
+8D53A698F40194F0533256924352104E29F5ABF54C9FDDC5A456D995C19FFA07
+3556C89ABB0AABD9B5D9305AB87B79E3039E98B9C6B2B47FC277F2A927265716
+5736172DD35BA997B66A149C9CBE46073733B41779AB68648D53D7BB9D46E722
+1F176FA57A3ED5CE13E0155332043B774507B75D713526914D5B235D3A1FA9FB
+F8A0AE52803375EE9404E68517788DA28D36A5073E8C21967B84BD3CF45EF38B
+468F20558E9DE4C4273D8CBE8C0ABE7402557BF7AEC6B5A6EE70672577C222EC
+C3CA4A500F443C36B3CBD8BBA6117340F7A6FB8446D93EA67B79909928410EF6
+FC0A11C83C4E7A4AD11A64081FD853530C57D8A3D44572B6C6D3A6822A6CD964
+6732DCA0DEB3EC4A6CABE93AB4C86DC52CC70AC2B25CD13C56BC4839DE17C368
+4018421BEF8E2F891A0AE5D71B7061BE1E34B20F42B86F2C357416BEE9D75DBF
+2CBA99A69D55E769587AD607B1DAD30162E51303F00C119976692F7E86386E52
+D37B2866B12F228EFD75DAA936D0011C53E7B33DF4C0C41E71CC3597C3E3BEE2
+4CC5460C8B8BA3E71EC4DB1C0C7598B30C60588B36C76B03C4D83D9B31C28A8E
+270F59394BE5823D15A0A3DA5AF3291A9EDEA5DC361AB48AF16780B25AF55D4B
+B28FD9E57FE637308043FBB00E5C23C42D54296BC832E3612611769F24DE2659
+047841EE88F6CEECE1B69489F44E0F359C2BA03ED46DBDA5F193A11FA49D87A0
+5E42BF8F096FF265476244B515D7D746CEA0FAC98E1417FFB8DB503C6B36344E
+37F91B322CBE43FF0E6289D4C1C73B5E7708D0FA7459225EDAFC58AE11A9DFED
+BC98A8986462A937597D433F25DD0AD59AC6763A8A47D7460DDAE42717EDF835
+BFD107770E42C96E1954B46E47E79C8A9CF643FAB5830B46BD1B81EB4C0B506C
+D632F679E82AF8E1C4C78F7DF56C5982D9A401F0F3E91FD9D041F9AFD6EEE582
+DA25879FF04B337861A38B68C1B3E84E4A43B756E775C0A67EE1442D59F6F1C7
+2EEECBD43FC0ECDC96DF0C1A90C6122A619885A048828609DD2FFD5AE3689759
+74757A161CCF76EE6A8A9D749253279034641EC2548820863E1EBFF8D02ECE32
+C789B4FD68FBFDFCBAF4CB7DDD4D42A761455D467C7901A6B1A2121F255B21C8
+AE66052ACC9C3689C143919EEDB929F38ECCAF5158C4FDBBEB41682356D3E05E
+E1FCAF7880DB6926E118C783475496DDEF3049B42CE591A2D3E87EDD3371A299
+36F8D00AFB32A9BCBECCFABE99A81B1305702CE78E80071D84C7ED80E3180D79
+40C13EC97245BEE26DA50BAE8E1D83EE6C388E1C300253D1407EAAD4203B2EA1
+BDEE35B818789BB0AA5E96375F99F8B681D311F9F65CCF742A5BFA81E630F7F9
+C1AECBE1C8C135769859C1A1DD55EB0B47F6CB1F80396117978D4954CCE28CD6
+5A25DFAAC8D9F9468361E5DED16602CE87CC3ECF124E057DE9BDE81EFD485B48
+13549389EC025F138A4DAB75E962863BE2ECC574316F84581ED7EAFB31576496
+D7D145B3409C76F5031CB1CF95767DA9722DA767BA2B43CC6A8A99248C11795E
+D6F77520DFA239096CB37D75471A2A8D31205A0A216ADA2383E06C9E8389D1D2
+1B6B5AF88F3E26D7681148F09489B914E4B153D9B8820A39858CB86527DF7F37
+F847599D8C9D55AAFAAAE50CDF0DFCB49659E0DC55C6D811ABCAA4D81E9A7811
+4424B864B84AD1E8353EB641EE3CFC2027CA1F1472163965EF2B7121D2846F29
+15E2E39ACBB57BE4B84BCC5DE49D69161D8E1E1ECA7364EA1D4D32A6EB52C65A
+509EB68F9F62BC705AC16CB9AAEE429ECCE6BB27A3E75A8DED52D4D5D5B492D4
+E88CE9E7552E353DCC1CCEB7758FB42E00E39A86319FF245126BD9E527B98ED7
+CE1BAE48EB36E7E3786E815A21FB65D87B4CB8881541F87DDA6706E3FDC359C3
+CB24168FEC0394647BA58DA74B40A9FA01EAD2D4230D0F9844FC6FE314D27272
+8653E8EFBB798F145B0FBA3A2BA9B5AB34D13D99AC7278BD90A04C7EE7CFFB79
+B542B1E0EC021F4704A7BBA89D5D93AFA623AAC359696665A2FBF5A7F36047A2
+E1F8C7DCF926F60F3DBBC81CB4B6925955A62AB1396C62B46F828483876C3FFA
+6FCB401514C85A28B6215050E6331A6864242F45BAE1D6666E01AD0C3C9D9752
+81804F459F91AA0F9341EF96006CCE9C08706F49C66C8981AFB65E10B41AFC28
+AB26653D0160CDCD1A56E47E5AFF7690BFB61B710DDA6C1AFB213EEAF4C130AC
+A3345C3DAABD1E2333A62EE61DC36163272B787C5CD52534142B523EBF3D7848
+8F32446CB3F383D9A5E1B6D0437903A3374E37F288CD76336C31E23E816B3E7B
+2DBBDF455D49A40FBA45C275F5F5C3A838F4C66F5C29F52CA64896843C6C61C8
+7525AA9C5A6F4082ED542AE1FDCFB0B1C4C514D1E85F5030ADC6FB19F202A68F
+2DD3B241100EBF4DA14CB88039983EF61E3BE291AD68EBCE793F71906EAC2EFF
+F7E28321A5986AB28206D3BB45F71A1DF0CE5AD18974C288F493E85C9BD3801B
+8366D14205E48C236B5B3E27E0B177C8306541305B61D72E642E32BEFF7900FB
+5963CE4B5F8F91005F770C78E142852D3F120005DFCDD5CBE3791C98B50EDDE2
+460650CC57DE9861AC6DD031BBF75BE88DA5BFE046263F5F1D44501F5BDE6658
+F99D40321F4758AF9C10C577EDC39F3EAB0816C1DA2EBC231180F0CE67F7DEEF
+5CF0C2540FE006EA6B683FD55DF3C02946884F0DC5CC9DADCF456C70FD8E950C
+3CB03A5C5F6DA6BDA3DE84392C5BFFDD4DBB3F714070DDC4AA549D5ACC2324E9
+0570F83E665BE38B2AB4AED60BE9F0649718FDBB270E8647DC9554723CA6E2DF
+496DBC4E8FE803BFA47BBCB3E6FBA89C0F43500972A3B91FA03B5065F31D2272
+C7CA983B761F460AE233AA095A93804870F897B806717A078FCF1CC14A54E9AC
+3FAAF0365A5A7E950FB1A0B96CD1A4C35BFFA4C9FDC15FEEAFBDA650DEE7BB73
+48956F15F495CA3D3ECE6180853E7842ABB9195091807278A7DE225A56DB6A19
+284D22565895A34D32A74BF89A5BE8748C04EF3742E36652220EFB7636490035
+01F35B39B097AB46C811D3909E93254C3EBE554DD6FF33363D95D3991FC4D834
+7076F50A146F1E542C5043C74E88A8A1E52766674151F60214BBE1E4C80BD375
+5DC0CA64C822E8A7616ED37074A27D0761D86F85144BC983BE7B34EF993FDA2C
+218B486A0F104A193B3EFD715EAB0D06024391A51299FC782C37908EC0480442
+C704C96400867B0B86A4C06EEE557A486D47D2C4A2B5846631CF1E0135F65D51
+5A4B000445F06007151ED901CF307E19518DEDCEBF2CAB88DD1AAD1250C2D7A5
+0656CEA9A7780ADBC2091BC41EEED7037480D98CF2636B57F067A51CBCFB030B
+E90076936D3864A4A1CA0C1476DF80845AC648509AB2CF97D35D6F907FEA690A
+F823C6453BA11A8D111B1E3442E0ED0EAE8A93392DDBA187B24F60D5A6403DDA
+674802F8CBEB38BD6518CEEFD52DC62306F3186925E5AF7032A811AF55D036CC
+488BC8186FA23CF7AC9DCE1E2221EAEAA827E2B44480EC238411F3D668DE671D
+A9F90B3859AF75D100CEC5984B7A63F3625D95A1798AE41AEB43712B6E07FBC7
+C16BAEA37478B59A2CFDC5E7B782E26335A66E3C16FBCE41F71E9C598ACCBE25
+8C2F9D9F67697FEE44B255952013B1EC1469440DD419DB4FC12F7A8E9820B688
+33B7B750E23172571EC087B853F525B00DF5858E69C0A9E02E99B8F6540B5AE4
+4B7555E5F39AE61CECA78E0182B8C02B75BA3D909E7F9D1CFA35D0F51730EBF3
+DA6CB9BA0F8CCAE3E57199537DA7D6608DEB095F38AF9631C3AD97088F2428B8
+833A5666A3DDBD77CB8B17061DEBC00254F4FC3CE1E71E80D36A042CB5FB7FB0
+EB173FAD355382BD77A5928477346B39192546413504B3186C1618DAC07EAA36
+2E40524F69A5859C1C836E6D10AAA54F5A5E922E9E2ED9C95B9524F5A13302F5
+7FE5DB335915F7080C762217809B613FA519F1425A1C506739B82CAC08EEFEF2
+C5CD4109CFE0F0C538ED923FBA356AA4121CA28F920457DC574BBB8E134D8689
+A2293CB7FAC443A972938024EA1F372A16E57D355EE46B78547B8D14C9A9924E
+E4FE985E8DDBAF6313DB0ADA7C47CD82E6891224A561B74DF738CDAC6850DC05
+67BC9C4F12095A683D085602056D8E16352896AF4FBF688BFEC802241E8D6D6E
+0DFD0EB23C87763D970B67386DF03D81E916BD8FDFE3B7B87FF0AE0FF4E8FED8
+D6A2296963B947C484DC1BC849E469C53F0AD9EB6D28D8FC222648B17188CD84
+20C7BCD2CF1A4670541FB11DF75939E8CCF4DB7B1AB7F7B89097E42DA8DD8EA2
+8234A5ED99B5C7D7B1131911FFE09AD9F843A8389B54CE49E542328895A6CCE3
+DF46D56B5B8B6E061D1534A9A385160ED6D701819574E5C1D2B3865ACB2DACE9
+43A4F43D302DB77ACBB79BA4AB4D95A34976A806EAE970A8C3E94B858FAB5F62
+E01AC7F10AD52D3D192CEFBD3DF606BF404952B2693E89EE7DAA67F70862A9BB
+D0DCDD1EAE9F7E963F7689BEEA423B0A785353E3D27BE35174664A5DDCA7CCB1
+E4E9203F8A61A178F388CBD5ACBDF8F75CAC1FC5D18A530A9B51B7B27B8B0BE2
+3127C26A248F29645160ACBA73B0BB93D0F6242CAFFBF3449A9134AA148A79AC
+A5FAFD655F2B297BB3B97DED54E5A66F7265767C6E2DA513475DA66E4275E076
+EB975BFA7F576A9E6257C332CDA12615902BA254D3937219F4FD1DC1974A68C9
+E128383E
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+cleartomark
+{restore}if
+%%EndFont
+%%BeginFont: CMSL10
+%!PS-AdobeFont-1.0: CMSL10 003.002
+%%Title: CMSL10
+%Version: 003.002
+%%CreationDate: Mon Jul 13 16:17:00 2009
+%%Creator: David M. Jones
+%Copyright: Copyright (c) 1997, 2009 American Mathematical Society
+%Copyright: (<http://www.ams.org>), with Reserved Font Name CMSL10.
+% This Font Software is licensed under the SIL Open Font License, Version 1.1.
+% This license is in the accompanying file OFL.txt, and is also
+% available with a FAQ at: http://scripts.sil.org/OFL.
+%%EndComments
+FontDirectory/CMSL10 known{/CMSL10 findfont dup/UniqueID known{dup
+/UniqueID get 5000798 eq exch/FontType get 1 eq and}{pop false}ifelse
+{save true}{false}ifelse}{false}ifelse
+11 dict begin
+/FontType 1 def
+/FontMatrix [0.001 0 0 0.001 0 0 ]readonly def
+/FontName /CMSL10 def
+/FontBBox {-62 -250 1123 750 }readonly def
+/PaintType 0 def
+/FontInfo 9 dict dup begin
+/version (003.002) readonly def
+/Notice (Copyright \050c\051 1997, 2009 American Mathematical Society \050<http://www.ams.org>\051, with Reserved Font Name CMSL10.) readonly def
+/FullName (CMSL10) readonly def
+/FamilyName (Computer Modern) readonly def
+/Weight (Medium) readonly def
+/ItalicAngle -9.46 def
+/isFixedPitch false def
+/UnderlinePosition -100 def
+/UnderlineThickness 50 def
+end readonly def
+/Encoding 256 array
+0 1 255 {1 index exch /.notdef put} for
+dup 12 /fi put
+dup 13 /fl put
+dup 36 /dollar put
+dup 45 /hyphen put
+dup 46 /period put
+dup 49 /one put
+dup 65 /A put
+dup 67 /C put
+dup 69 /E put
+dup 70 /F put
+dup 71 /G put
+dup 76 /L put
+dup 77 /M put
+dup 78 /N put
+dup 82 /R put
+dup 84 /T put
+dup 85 /U put
+dup 88 /X put
+dup 97 /a put
+dup 98 /b put
+dup 99 /c put
+dup 100 /d put
+dup 101 /e put
+dup 102 /f put
+dup 103 /g put
+dup 104 /h put
+dup 105 /i put
+dup 107 /k put
+dup 108 /l put
+dup 109 /m put
+dup 110 /n put
+dup 111 /o put
+dup 112 /p put
+dup 114 /r put
+dup 115 /s put
+dup 116 /t put
+dup 117 /u put
+dup 118 /v put
+dup 119 /w put
+dup 120 /x put
+dup 121 /y put
+readonly def
+currentdict end
+currentfile eexec
+D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7
+5182433CF9F333A38BD841C0D4E68BF9E012EB32A8FFB76B5816306B5EDF7C99
+8B3A16D9B4BC056662E32C7CD0123DFAEB734C7532E64BBFBF5A60336E646716
+EFB852C877F440D329172C71F1E5D59CE9473C26B8AEF7AD68EF0727B6EC2E0C
+02CE8D8B07183838330C0284BD419CBDAE42B141D3D4BE492473F240CEED931D
+46E9F999C5CB3235E2C6DAAA2C0169E1991BEAEA0D704BF49CEA3E98E8C2361A
+4B60D020D325E4C2450F3BCF59223103D20DB6943DE1BA6FC8D4362C3CE32E0D
+DCE118A7394CB72B56624142B74A3863C1D054C7CB14F89CBAFF08A4162FC384
+7FEDA760DD8E09028C461D7C8C765390E13667DD233EA2E20063634941F668C0
+C14657504A30C0C298F341B0EC9D1247E084CC760B7D4F27874744CDC5D76814
+25E2367955EA15B0B5CD2C4A0B21F3653FCC70D32D6AC6E28FB470EB246D6ED5
+7872201EF784EE43930DC4801FC99043C93D789F5ED9A09946EC104C430B5581
+299CB76590919D5538B16837F966CF6B213D6E40238F55B4E0F715DBD2A8B8B8
+80A4B633D128EB01BB783569E827F83AF61665C0510C7EA8E6FC89A30B0BC0EB
+5A53E5E67EF62D8855F6606E421BD351916549C569C7368AAFB714E22A023584
+8B1D6B52FC6F635E44058690002C6BA02CEC21C54CC8875B408A8BB84F445894
+5D6B3E4841CA20AF852A660FE9C832F773691DC6F7197FF3DEAEE97418A5ED2F
+F2AE65300416227CD3BB03C29003C770CD7D2A7A2E4C1DCA193651C2CDDBF93B
+966938788694BFB562AB0010268955FC3555E5984CCAB0A9B7590C77C9BC713E
+A29E5BD7193A4E971D1752DDD0F0AA4648E7E87BBCE66A1E836C715C408B07A5
+9EB56BEFD4596706CF839BA4CFA90CAD4038C1E006B51913279A2C31FBEE5BD4
+A7D74F9103CE6124F5B439CB860987DF44FE17EF88EF1BF62C67060D25696BCD
+94ADF08F04E349CEBDF9D3389D870D94CC05E393B3F4362A13A6A672EE5E8F5A
+DFE7046AFE3EBAEA58FFEBA4A47BF61F92E2003756DA643CCF2C9DFCCAB62669
+E3C2A18D690B64D907F50BCA155A85E47C3A6954C6FF7ACA36D8DFCE777B7929
+5F5D5F787B9C247ABF13D6D7B4A8F06BA25CCB342F8A5071325CDA86AD71BA23
+8A9695C7D1D50D0AAC267AB7CDBA7AAF46A264B7B081B7E79AD937FEE4969FD5
+155A99E652461EFFB4BD010E5885631E2B2497D6B8C43CE77D7D47FE201DD46E
+4482FFDCE150A1183C22C004A0AF0E1F42AA6804E038E1DFC8B0A3CE26B52038
+44D2E7F759DA5C252489E5525963D68BC27C82247BEB18818C7D4CF0BC5CC97D
+8C701034B8DF798DD4CE36C3F8B1FD40B2DA14EA75583852875031AF8C909EE0
+04495FDCD04B05A5EFEBA56A8CAC1F57F1B8AB91FB25C81CD51EE69D6E0F52CC
+A0E12CF7E3187D67DF71A599FFD895FAA7BF80E2E6B96592BE77AE96905BAF0F
+F547355A36C443797DDA7C414AA606CF9153E03450B77D1BA4088D739DF55F07
+111B9E11AF37F45B6EDE6D7AC126E05886A57C83886DA87761BE600DEECD1344
+8A82BD652BE7ABFE6A0F50ED7C6F4EE12CDFD80CA7A5518692F267C51C3FE76C
+567BB8DDBE09A2AF901F79AD02B435287CB8057B3D5EE6655071F67B00438728
+C4C3EBD648BAF650993AFE5E2B29074A99ED0FB725D9B8CE8B0292B08A280214
+C3AF252BEEAD30C88F72E322FAC3E9D78A1038F5DFC41F7BF1AE3744A0677094
+51B77C2D630B67853FE5E975A395C06A4D4DA744040B272C2B88D8B7ED3A2C01
+66F503C9DFD3C7DDAC865900D2A4F2CDF517F449851DB1963468D0266D7A3E58
+9F6B2A1843E6444274F16A9930302DACD8D2BC4588765099A86BCCD8A31DF0E6
+2853114DFF2D19F812F19AE6C2E419D7AC1BC024D1195074FD0C6717BFB389A4
+4D5428E7BB2E4F9E9FDEDED7BDCBDD3460805AEA0B5F6460C2FDF19273CE5BA7
+5D3AAE0DB94C6AFA8339646191C23B0149E7CBF136FC4C844E025A38935DF256
+0A0A6466A45EE8B9B23B6A055856FB084F87C73BA28F1883E3B184CD813C72F9
+233B78CA4E125ABD26F29B92CD9DF39D6FDC2A217E2B6B45D9B0A4D536790A5D
+BC0903069565A442FA7466414D948AC432C6B75D8D0E1DBB217CA3DC38A52DEF
+62E9D5AE9E753956C13819D93148C7683BE4F71B80BC066D8C19FC807FB1C086
+B49215DCF56A91A42089F0D063B9981925691F7DDE3237403AC714F5CC3ACA88
+DB2F1DD205578C00472FD70C8BA4F752E3923ACF3164D442A6B639902ED060D0
+C5777BC20F9A3BDA60FA3BC986C38136FBD2E8F910E32EF36377C9CC187F4AFA
+CCEC423DB925B378522B748BDF12D523804CABA83CB5A7ED69FAB9AAB75EE8FC
+38D9866E3754C4E2F2B9AEFA804044D878DED0E114EA0E9682FCF38F6628E63D
+FE1C1B5615E54FAE8684566EDC4B616F76EEFD6207E0386F06D3BFFA26425F24
+303CC7C8A8D7021E7D09B202616988287838C3DBCE3179B4FB5C726E603A47F2
+8248CB508F327D1291CF3F08F7C88298DC2D0F778D24304EFCF6E074182BF5B1
+8E6551811FD6991971692108E289B61053D6DCBA2925B3903E8916EBD09D97A2
+C6D08E89DE4C0CDF7185E1E00DF456B249F0BFC686E04FDAAD2772DC2C39DD53
+9C23A41471267F53A87E5C2B8CBCDB66CE0B9844BC506428E6150B48D2FA6363
+4FDB2CEDFBAE0B7DBCE4D83E29B2955F8966272CB865EDB360C8A8C19EC62A29
+03066483E4083524A1E8D80FE3867BC1AA91753C26ACBE8489AB0E3330206212
+93E07ED473DBF457EB8489E66FB4B8ED8A9EA8911CF9308CFE3E6D6F36810EE8
+91CCB11BD548617B2C683C354452B9229E7C9E68828BBEC324420DF7C188CCE0
+FBB514547553A7E9B38AC265783891F42DA472388569C8E7594F7E8810895A27
+06E456902A8D9F65CA808F1FD475D011C4572F8A654BA01D67942226A663D179
+95149FFF41A9F55AE84EEB9A6A39C017D7E4FD6EFEEE7FF3CE847CDB064A4954
+9DCD273B810E0F259501BA4003A3EC1ABA6E13D24C0B57FF82D6DF077833B6A2
+7EA54801BA81DB961C261689C0887FAD83771E55D3D137AFBB21779397E11972
+6C6CA922F45AFA5C0526863A5AD8B9C0775CCBA17FFD37A44CED4710884DBC31
+5C9D3F5441595B86CF7CA2EEE42AE87896E9E60EBF5F35C2B7FDBF9A9CDAE262
+3F48396F0F741E9DDF1D4FEF75E68AFB020D06CC29B3A7B2ED819D1AABC12B91
+CA2A65F1AFDDA2F3FB322E0268DBBA024663E49EFF076455338FE31A16B04EC1
+797EAB0B49AFFB906A0690A1E8E2F5314773E1CCFFF43E6FB3875AC907F0C5D0
+DCB9BCC127014D472463560CA0CB1C2CE614D94177C7A52A5B089316689C8112
+CA57E35D716D956DBF9013B1E5B9626456B1433C8C15FA906458F957133B9E19
+8D46DC3AC015F7602538C2AE3927C6DDBACF38E59220C2F5AF36B68DE9117C51
+04CF7DF32B1AF55B87D1D8A5F4BCFEC66F63B32B6548DEDA3AAB06C5310E4757
+78AFF947DA22809B360FE535506A554DDDE5A6F2411246653710ECE5CD3185BE
+730520A766C47E1ED01890059882BE1432586864E1A86A7F586438C8DD35C00F
+021A741ED47E0F16DB6070ED0C50038632CA4AC2975578A8372A080CC0447C79
+CEABDF2BCD5E78564247B0F0025F556DA8FB62125227849EACFB724A4AE3EF57
+90C07A5B27D2E59425F56BF8AD84C5F5310FEB1BC73D536339FC2E6A5BE2DAFD
+97FC835E0D52F680F80ACA37DB498AACF152B9B44626CD89E3302C3EE1623EE0
+F998FA78305960AAB9F483F731F5F67A8C963C23DB8E48FB804EF8B86FAFE7F9
+4C09641915FA7E3930AC922682313408BC1607C76751CEEAFD660206A39CF394
+40ABE2A313AB7D5FD6444E219DC5C26734D322BA268D330AC17959A390D6C8E7
+3A155095BDD66516DAD5D65519A7FB871ECDA77061EFB21F359158B4470EF79B
+362C35C06B85C9A9505C8361939C6AC013F2CFE8EEF46FD8CB4452AAB3EF1FA7
+DC066557BADC2ADDDF7DDC2A0E1DD4A357E27A2073427EACF9B9035DA5272136
+7DF37E26D96ED4B2ACD60596E039BCB15E259C72FEB3344E3EEE3D4F17DF4233
+04C1416BCADE80BD483DD8C9AF979E1C7D50C4CF015870703F88B92C4FE46AB8
+DE6717B55C460C805B391B84333097E116F4A51F631FAFAB34CFC925BEE8B72B
+C9FD5F5A79D8F2295FBFAE649DC6AB47794AC7D73431FFE5BE992F2B5AC67049
+B5208251C0E442385A9FACF25E3A98D7F5D4C2A1ABDC600AABE84769CA83350F
+9B87F71CEAD3600E02FF9AC03C1B5C21C84F911511A0CF0111BAC7605EE31229
+3C526A79D943D92E1CC3C38ABE82D560CFD4172F318030852A5FCC0534B8B3FE
+D7365987C8B48A072907B26CDC2108130A33233E8E0BB5FDF14FB55098A10EA2
+B51AD9EFB119F82B08D256D396D3263FBD9DBF172D43A90ACD1A31F3E89E8571
+74BE98B9560E2CD661A2F93C69FEA3FF26B00772AE2C2C24B98D3D122EA2AA8A
+44652CCDF4EF4F01CA7D62A976E23E8A86291F43BFAF38FD9C325E70F9C36CB5
+A181DAD30156E98339E6A0498D3420B7BB3B4E651A9090D4A17604AE386273A8
+3D4AE8CC18345E6E19DF06BA848F203F74B161D6A8882991CBA7385F308696A1
+BEEB0130D938A764B98A2001A38489B1334025EA848CA44A116D64926D460D64
+01159E77EA7ED9ECE7BA77635BE564A4ED89315BDFF54ACE6AA1A26591D13CD4
+6D6425CA7933769B842192858D10998509396829263290A3A7CFEBBDA3EE6CDD
+DF1E492AECDFF7941B53573F01F623CA0A5ECC9D05A3D0954F7AE8CE94AC3B2A
+CD4E27519B2E16F033EB732AA024BBAF74626DB55DC74B1FDDB07FAE98B4AC5C
+683CFD8744F361838D343B657EBF52DEEE7AEA7565C5BEEFE455DDDBC4DCCA7D
+87D6D769C5ECCF14118A14A85A86865777C8E28F953160D5E82844AE54D541DF
+550D5F1519E183E0C42BE88F0458CE8087F2CD4B1B49A8E9E3D127C4A4CB74A6
+2E73BF4CC317781D03FF04BC36AC0E4AF99E2ACAD20F6F8029DE8A035DAB40DB
+17D237850BCDD05931FF4B0FE2D0B79EC5A88FE0236271CCB075BD194AA25AFB
+3FB93A5206F61A14602E4EB6F1C31C654527CE0C02D04314DF9AFD710D0EBB9E
+F8721B97F5FB18E27507E1F800B5509A58A1A8296C72B7B73F99B6CFE42E9C2F
+B63B3555475E562672645CD374BCDE937A9B05A157FB3E74C8297507253E957B
+1A9DC421946734CEFA3D5EE357DAC7E9DE17A5BDDEF6B2D2A740BC58128FC514
+61154664412BA1C05209EC992A77B7CA45AB7C0EEBF590A5B5652866008CDEF7
+124A3003AE6A7CF9DF3C72750CBD281358CD2FF25B162B78CBB971DB3477F8D2
+ECA3EE9CBC90323B2C236E375337EA0848CD7CB5781A2B0A42DE7E4D99DB2746
+0B26796CEE129D23C76794B7CE21C13C7D4A998B752C8CF43A4821B736EBE246
+D2A2BD7BA3351FBCD1B0A501EC1EAABE60D06DA2FE39BE1F0AD629769FDDC933
+F9D02F9686EC8C2D7455C26AF4DD3F6860B2289E3A30E1C254AD17D731CB73B2
+BF4DFE90CAEECE3ED0CD3FB4C8F4C7BE1C056AB4E9B95781A8968E3CC1010003
+75DFBC4AB9F6B27C5A9AD88D94441A8ADF09EB275E5F0E5E6F3BFEA0FA8C308A
+8593ABA0645ECA8FDC3F0E264B35D4B0DDB86B93CD8A047FC409E18196B501C3
+B003622999C47BAC04FD1ABD8AD359C977766E9643EF3BD6385306B08EE3E13E
+7DA5A06AE33D17A3D574C6390DB6E9429754B210F0C349C359559C7EAA2350BD
+F61D4D8A92B1AF697BC620FA0351E67E0D9F41A95A47EE0BF210C2C48691901F
+F905F65693DCB85BE412F097480F6A7266AE0A928729DA0F691CBFFF3B276EA7
+322BCD2206D96E3DAFDFB992CA8F2955F0E8B882729DFF840569D12E4DA1775E
+523AA734552AAB6F2F16B89B39F1A3FF0E07EA08D13E612F201716C67F327017
+6C041760DA30374434808273062C1FFA2C47B3FB578807BC26537F542040FF77
+66C995EF3E8B08B09FCD3EE89C30F157158A739606D2CEAA26694A4F1CEA6633
+B54933141CB85C60AB262E2D4E824A3B85C2BEF810DD774F296AB37D0BAE7182
+5648CD18556ACB124246A75474B232D712C2358908B5D9A76F82C626BFDE01A1
+093B8FA6AA0B32F2CDEF737B28BC0448FF816DDB5812131DA0DD5979D77C3838
+B978CC3F6778A4BFCE9A7087EFB19749285AE4C92B99A6649DA349A2E0889D72
+6D4FC664522F06C8C4D86D30BA43ED4E42211217D01636A4E17E2A132D26F394
+EC34EA12D84594AED9C6CDBBC0908860F39B240FA7D7B3003DB10322498691CF
+A294C0FC7ACC0BAD1EED3E9D60AAE3F7429695892D1A21CEBF062C6129B33966
+8B2EF6E932F9891DE6028B81C5E9B23278D35B7F0D83989BCBA25E20E9D503DE
+144DC485F09A4EFA1268AC5E4B551C5B2F1D51E9B9B9C0FEE585204F869D0BE0
+7287D7570A12940A47C1F51AC6134F03B415C30E147C49F89228855D093EE55F
+172711F37776E97A99CC4B36E2F10713E36FB279FD3FA5A0EB9F3938F42E2BB9
+254EB8F0C0F30391735019E02BFDA21D9813C6A22279B898EAF01AA892B14DC6
+5912B9275167AB46EBC420836CC1A5F38A4EB47C039A7BCA62BC3FCE4199FC71
+011DD6E5FFA0F3D7F04AC02AF91B9249B9F993AE346572329DA852115BEF8460
+B94690E790003586F473F37EAB5AC2922F5F663EE2C3C0C336A8DB71650631AC
+0A923A389AC911CB215EC2EC7D50CF8AEFD59EBFFA53A9F1FFB7E6215F17093E
+3975F186FE23BB5FA5474C11408FABD223E1E6F62035B5A5C1AEFD8899F00FFB
+E729C2D5FD551E80716CEA4E8281660286A802AAE8D5834F37F2EAC46297E57E
+993B09251DD7789D3467417E393B7DEABD06676B96241B0E43ED1A1A9FC3B12E
+0D34B2B0792B79AA648FE9450C3B209FB6D7D91F50C52A5DAB0BC81A8B698BD9
+18946EFF691912D7348D48FE68CD876FC6F71F81165D0C3272DA1A992308D9E0
+ED6D0A4DAD679AF495F62B78D462B463BD4A40931172290C615B3B3B6B47E45F
+CEBB85E0A6AB6832067CA6D403C239530D07F199788AA4DD52553836851C5228
+1072406F6D7323A334E7A7FCA588897C4FBA6D4F7DEB65525EFB74E539C988C3
+A685A98752F7198E77E456A545F0D23A1BEF81EF58B02D289CF980A3F17BEC8A
+6F83DD90C4A917EB0E5E2B444A608E2E9D2FF80620E16AC1D7775C0A10C1299B
+BEE0E1AB24C50647E5CA1DA65CFF3B2C295F0644CA7826E1DC6FADEA93D66A20
+DE852F20AD224D28DB900519EB1569837139C833F24B799F7EBE3FDC14235323
+1D0BCD4991C861F38DF413A5A5588B73AEC3BBFDB885CE17BB3E97B4E6A79761
+93EC8418C2BC4725CD61B5E30C07352F647C3FD50083878C13CFAC241DDCB082
+E53703D182068727F9EB6FACEC25F6D901D7309ED7370867E34E267519E22D62
+4FC7093448BD0D6B1C43D318A3E14C92032325C132AE0FF7ED707E1FA4A955FB
+F5224BE0045CB14ECC321D0F333FE24EEFCC504F7C756451D7693C3E6CA87526
+4912E1B6DB935BDE76FBFAFCA4ED473F1D2618812CFF25A6859C626A216603C1
+361BE3E071FCFEC2D4BF2FEBDE07DBD56A1BFF8303901168FA06488BA6B76F36
+95B0A90D7724E9ADB567C2ADC65CF3482CF47FD1D16F70AA19A97D0F9EFC611C
+AEA5E1ACCDA7FB2DF05E9480936281484BC329F0B771775E73F7FD72FE3F45F0
+50ADBD03932B38F37A8F0A66B2F739EA3AC8811C8F514E68C5643E4AFF485C81
+88475A523D7FCCA5C8809BD49846C77795A38DC6406082000236A4D2628B5932
+AB7916D44EC2210CB941B1422DEB13896DD78CB7B7F400EA5A6CD639D9CC828F
+52311A11F2A84E566DE98826F1E28D55FB08ED70950205DE52C207CF14238446
+084FB4DCE04C781858BB4E0744C023EB0B563769751AF1D807EED20E4AFFDC46
+3C1510C782FD92902761F7557FEF701AA67B20A9B019C760B2BBA8A048BA3681
+35DB440925CABA05B8A13B2D30D14FA875D3E200A018C78BE2E930457BC33AD2
+FE3610314A268E9A30EB41F7C771758410E7D1179567B22CFF76517901CB7805
+FA27AE1A2E9ACFC032BA907F1B99F3DE86B975605D28FD7459DB83C8EC381617
+441BE95D470868FB7A81DE241EC72384E10F995262F6C66416290A1AB82116D9
+99DBF4CA8002828A0B8F207A9F33AD1BCC21592261A181AC864D9DE7F43FF609
+93FF317E2A0B71D337DE2F7E9C5CE6F85C655457DBD51637C51A5FF27FC1322B
+EF3797CB68909FC7385149C47AF9C2E66CC7481E727C2C231D9878D4C5E8A0F0
+9E221C7F8549E3D51108E3306E0263EC193104C160EBA0AEB7A47E404232EE1E
+AF4648252B6994A1E21FFECD68C172C88799050B8950E5F1FEAC65D6D6EB4570
+EB1B44F5F7421368A230FDAC6A90B4BF5B86C0DA478505B996CA48EEB9EF955D
+402CFD5897BFDD86CA4D94AFD9625961BD0FB15446DA7D8F3577FD9987446AF4
+AD5549F56F4330AF711A2A139FD375F78A213D402DA9BDED7448C06B18F536B0
+43602F3B6474560B1E18618DAECBFD64148EB436391C077A654534DF27D6EC14
+126C7C4BF7FEB69F0E59CD5D0E96717211573C32E1163BFEFA01A59CBA45A3A0
+7D78565837F030A20B0BA51A91209A37D833C10777E414DD1FBD5EB9CC456AF2
+DB87AF014BC42AA593AC1964F609DAB52C7D8A99169C2DD603161ED96CD1A441
+1E274F3327EBECD5C6F8B8EB1CDBA3CA6780372C6B6E74DE246147D99FA1E040
+3C3C7BB44DA736C255DDE4BFC03D3A7442F2B77FD9E8E813F4F95993F85152C0
+092704CBE70B421894A6FA2C7713CB66E1CDB5A666BB0ACD6C8336AB9C5DC308
+017B7DE9EE789657B5FF0BDAC5E982618B3056B7DAC2E891657B98C37678DF91
+1D83972DECD70AA8347FD8B29751F63FE74EBF6912AC6C6DB5FA22143300386E
+C4C39058BBA43DD8E52BD0501E1CD72F4E4E7D69D21DD98DF21EA75A646FEE75
+CD52DD16A29F41FF4225A4A7C8E45DDC773C3E45500281C949690D2D53C97F74
+6925FCCD8693C9500E6078E1E111EFB5B8716C87BAE727D2867E27940605DC02
+7AA191EC1F187D43273EC454017394533E7BDADA9CE23BEA25D09708B58EA0EE
+446B96F5CA76C3D22D2946796E0AB69FA996F2109119F23CF6C46EF7F04BF975
+E0403FA95395600DC543FDE4EB42B7FDC45B9DC109B7C97F37DC7A65B01E9BEB
+7182722096A2ED54B434DA410A3F0857D82C602180B9EFB6FF5F4664D911B0E6
+420382FA6186D41A682E92848EB7825B472D2085242B038A0CEA93FE2C19591F
+6856D45F46077B075C0D5BB8BC9FF06884213A4A4570C0B0FECBB57AB31F3768
+C685C50F7E3B2A238A4ABDC608CC277213F96AB84C1450398847B020311E8341
+34408F03370513AC5C22D86CC7F1ABD6058748742A63FC51A11EFD5CAC77A61D
+756320E41AF82A1AF856EFFE6A1AEB210E3654DB9427C19DFD523A2902203E9B
+FD6C921F854DED62D3D06C41F4FDA9C0015D9AC38C68DFA492FB1194366A1977
+8E3C92DE540688B3BEE2045EE7F807874630D5FE61F09D10AF3843B82DFADF2A
+0BF41D41F8E561C5559BAAFC7FEA345E2D35E33B794FD8F2CA0FF190EE8BD98E
+9C6E8DC66E3B0DB2ACAC6BAC16519BD9A1FE3E42503A01A325F4919B04ADA061
+CD55945A58AA0FF34323C4355048AB61B7665630DBF995F461FB47BD4A5F932F
+CE2CD96CA7E2B105422F0AC5B368CF019B7038132A551C945254FD7FA483F47F
+CB2889DECF8145E853C16AD38F667185B96150831E517518BDB9894FC790766B
+42F89F8410B6296BCA53DDF5DFA25B7A5B6039C94883A95A45882530443811AC
+3A7EB749EEA392E80E42280B6A51453D00C125A826D1F7DCD43710363568513D
+363B34BEF3D21F64A2D51C5BFA41F09D88FD765FE37306167A76D16EC5CF1C65
+DA4E6C2D49D080819EBC2FE6EA1DD13E36F08F4DB4AA7EA9FD07C7AF447D9771
+A3E127CEAEBC0BA80687311743F8052CD7C79E7FFF4AC6CFCC36AB795C1D8636
+8D4B79BEA46131FC9908091C63A2DF256B993D782523629F2ABBA7DDF07ACF14
+F9B7B99756DD9E763FF057D2A3DDDBC1C4AC511F6650AC342B25D52C37AA7FA7
+3CAE3E2ACE25A88F1F9ACFDD948C023F9689A126B758B1C0B3285851E1F7DB0B
+8CEF99E330182F161689ACFBE20BF267C63BE54710A31076B8F1A2ED8AA1743A
+6A8339DCB98EC7AFAD6DEB03F9B32EE3D88693F97B1FEFC5D3E9E8D8952A511C
+D930BC89A3C222E8D21F76B432D3D0CB0D5516F615FE3AD34C33118A3737E773
+3F580430D0D049331C052EADE398F62EAC6E3669D361C1263A2F706F470D715D
+0D4B35F6099730472FB7211261BC41F974455B8D5525E1778F23648D03B32B8F
+7D0B732B6ADA3A79D0C97BCCE73B336969F5218B959B2E158F2AADAABBBA1CB2
+15756917F142167F311B1C7683B8B76119EE2E302D435CB80D3FCED69B118764
+02EAB199D888256969E226554F45A82F32E2CE6520D421B368B53CF492966CF4
+DB89E18FC748252D4B713F4F120D107F5B5320DB4E6C7FD73791A03E02B7EA14
+1F632E50A2562DABEEC39F008ACEF2860BAE4E6B614CD9546EC0E2A174AB52C5
+7D86478F8F160FE26D28CF873A7E7882C6503E5617162183752D80FC25728CA3
+CCA4E4CDE70D89289AA402D22F9891E4A8DBA4ACBE8B7E81ED8C7898CA6DC5F6
+6CD7EDA75133896491601D1CE8F04D8C95243711B8FDE17A0B750097403E07DF
+1D9536C307515976930FCA63A1E7B327698633A9EAD0C139FF39AFA868943840
+B7B58DBBA6F76ED06C85C5B8048AFE986C31C6A07FCED10F7065DBA8082B2842
+000B6681EE911B3D3CB889BC863EDCEB4FC95A1D6B8AC1EA11D9F2FC0907818A
+57DD699E8FE6A29570AA5C1977EBD4F6D91FCA1C8E4FF2DF66100447C1CC703E
+0F411110F34BA3CB71484B0A4FA0B17F3DA3B82E4E94ACFADC202A3ABC64D389
+61E7396C6B51090DFE8E1EA89666E0CE993F44CFB6CD6F799AF1798D63AD9E2E
+5AA286D4FC22364295BFAAD2295CA2E7E844128881084F07859265089D48E568
+D5F411E38ABDE7EE7F3AB6FCE50489499A6F7EF5BFE161C8612D665BFD0B1F79
+78EA1BB15850BDDE03124AEBB96A10E4CE31A42FD539DD18FC11E2923B43D595
+7FFA5B77D552FE09931B3C3299A8B652E08EF8FA125410C4DF7CCAEE4B5F3227
+563B9E5C712F9A40069C684256ED0FA4F415EA21AF98887C452DECC0C428CE45
+B7FA585269874D16EC9CC3F0324C46837AF733AE4EEEC67190A6E37CB7D00F96
+B4DC57F66A1AFEB92831D5F07A8302F8ED54A9BE6271BB9B2FA10F72B3AF55FB
+0856499FD37777388FD89C1B451CA1C4D507B5E903F068F734720BCA374A6CD7
+C8430D03C091DEDB4EA280C0FEAC47731867EC9CE37E9BFA06BCDBFF029F1114
+A5FA3A70AFB2DB9D717A23F603EEC11A11EC2B56E99C2505AA418C5D1BA896A6
+0AC5FE981583F45DDD5707BDCE167F1FE1267E77B25CC64F2DD8238473ECBFC1
+6B7D1CE20F05C0E85FDA67C8EDB9215C828D0A6F50298CFA56D7412EE456072B
+56D97FA12D34D6B531691250F490792A97926EA173996A5D09B06AC4A63E05B3
+9D3B106FD10E2970430048D37FD4BE900EC77F25F8BE9DCC70C5A6242A2426B0
+BFEF433832D3AA7F1E4423D111841C552E0AE6B772CAAA2A4A4B5A67010E05D6
+37357A44ED9695EC1040660561E2451861D720D3FC9F804CA1B947EA0A37FCAF
+263C9323F6F9653E10C663704833BC0102F776389B37D1C2EAB5419B88CABCA0
+742198C73CC58A872C43F12C10D84E2F88BE17A8C2FFF3AB698B8FBB32DCF524
+AF8FE1F6136FB116AC5F80D0A20C6015F6451F6B2F105C25A63C74E17F529338
+0D6F6C629B62773BEF72A3C5E12F0FDAF19A0537D73012C01D71394B9E27190B
+F5C53AB411931134A646C967D3E5AFD142EB7EA37121D7D901171AEDC08E72EA
+D556F7C6D909A8394BD13C1F2D1FC69024C9F0314F05432A4F41FF2B027FA3CC
+B32CFFB39C68B10B2AAC6E9EA6F8066003511018A66591DFF83F749C71A115B1
+97D78FD99C5784B2B7604401F86CBF8CE081F8D7B12F2024164D28D374FC58AB
+AD93F74207F3AF38A54CCCDF67A2C31E98C19AF04F313D1BE308C02E3ADAAB53
+3E4D524AEBD0FE56D1C83659B0AC27CB7579FCB3CE6A0323347A9B408BF6A31B
+6C2EC080B4480154A27C06C441FD3DEC30E0F771C07CDEEAB81C6DAF329AD2A0
+34450758F4814ED43D16C1DB335C1ED6888843308F4B7ADD5F3155693EF30318
+E89E87FCB058320EF27B1C64354D0D2E112AC61202730381F3C4A9E52F0C33F3
+EED5EF7582663FF4ACC4CB71ECDD6BFC536E46CF71416BF9ED1DB93449410B25
+6BB96C4E7169F4D8CE9BD13B8E148ED0C7D8F33C3EF389111D6DEBD3AB0C6514
+07A581025D3E0B9B16107D8915AD120E7D7F2C51E9860A0E5AE96B81E55029E2
+5CC8DF299BA8F260B4A5308D90E9472F2F57BF459D8D66C42B6162915CFE47DD
+89DFA4BFABC6E60673DCD33470713B3E09558E109B2DADA9D3CC98CDFF57631B
+DA70D384589741E8BC3B90DA691C8EA31922C4F9C02FBAE4D9C1E5BFFED93D46
+6158125BAA9A13A87DCC70809451B5A5AE2E6AA65398A172F0CF027BBEC8BD10
+785B8E1E3CEBA210BE51A38FC75C202A169DACA316F9094A9C5CFBB385148BD4
+385069C35C4C314680162C3B30230085B4509E5256DE72F020D340A3908A6CC7
+51C389443A9CE4AA58B5486FF459625FC24BACA32ADF4E305B0D60575059FF3C
+3DF9E59CA8D12A1AB23ED4C319CD9F64C8F8F5F154E12B75356E08825EF09AC0
+EA7A377749E984E879B33AD75786271B5D76721B124E00A684164AEA49E9E907
+D709281CAB1A4A2727B33FAEC49D38EF4BC34FB337719C8845AF77AD33B06435
+A94E3ADCCC811B5CCA237441C470E67FECD6A892ADE26727C00082EA84CCFAF2
+71C0A63EE23A51275063DCD9F7FFCDA4623DCCFCBFF14082EAC130FE0242E6C0
+57F4E371F719D19EEB5A4FABD40B128036F4950FF8C16A7B5BE0DE2D8839376A
+782BFB288F51910B39D7D87D48257CBCC0D203E7709A0FE2A08FE479027C91E7
+2A3C8CE32858BE9E61A539F68339D0844D5BAD01841E8A8CE1212FD77993089C
+826F8C34592958DA33943C3D0AE6BB4EEF2EB4B83B89AB58F1A5B1C857363B18
+B5F0AD24BC4941685C05B01251000F3FBEEB8774E468818649981A0DD6D3A0BF
+CEBC9AD20C76B390CCD267281F66BF6342A0B794782C1A33903B6B7054A36A86
+E01263BD5143E8BFFA6ED06D569E746EBC2047B1BC5A88BA655E9AD1E7883672
+41C9777077FF59FCFA8F80B9CC0D0B722D9D32E63215F4113844FF5440997015
+782613AAEB2D9E65C2EFD85886F0CA6D96DA7C613DA219E86826E05CCE5DF039
+1F9EC6A903E1F2DD7C22BE1F5EDE2550A61EA9098B07C47B07018456C2BE9078
+16E0CD50F43C98005266269FABBF8AC8EB27ADAA3574F03B0FF319BA8D902363
+08D3D82AD8B9447A6D20DC16A220E0313B0FB992135B505643FA8823B366823D
+670CCC6A58FFD8183FAE123F5A38BFD29C07F12B70A64A1AE612BBC6BFFF961B
+C0739B1BBDF7A76D7F6AA13755ECD959FF9401241399B85B7045BC6918790671
+DFA3E7A9F9FC6C12C0841F0723E4C5F4A2EBEC60707BC62453CEAC8162828EE6
+A7E817E26C1A07D9B66AF4DC800AA8A6A6E0D173288FB1C184FC69F879505A9A
+4B51DD20D821CAED38B15EFA27AEFA82609CC15950859CCE1C08AE453ECA6237
+9E08EB45671664E81D139026D18DD9BA117FD7D093C42E8484AB6DA8D66A45B6
+8130489D23E2BAF7E4E7780998531BF1429B914890D4EA6E621CFC25E0644E87
+DAADBEAE9592016E25BA62DB6A4D07C727CDFD4AA1641D3352031A9886F62AB0
+D4D207F6866CDC0B9B02ECA3C6D66A759767241DA4FB488F2C81DDBB1ED01E19
+090A8AA4D11E611F1D22A166909451D7076A6E9CC92982AFBC7EFEF40066000F
+A3FA6BDE71C2C516D8C749174B4C5660F2E992375D95CD17A2E332FFA0D2470C
+4063C3822E4451DA4DA60B0E51FAFD3617D0B63BE97AA7CBB77BC455452AA70D
+F3AC7E6E2A9AA82EF440E690CC5F452F7BBD0B6BB3206943A9E8A77B78B6B379
+11E91B85519A8C5080388D0DCD45062406E940400850CE0BCCA5DD9F01AE0193
+582C84A2C0CF11A2A193E0279EEAE6B7B68EF10833ED4DD1B85FEEF7E637A0E6
+1276A1D9D33872BD87E46D78B8EE10A5D7799AA80A589F8D1508C4A9AC8D9573
+B507EC8F4119C122317E220DBFC47E41DB572A93D1CBAEB228220BF9D00D8072
+8F6B7775AD6BBD53D7A2A74ECB828E924D50898646BB362F99B7ABF723E6E5D1
+BC79C5D437868BFE3B477B0ACD0A858782359C0A35D0BF06548F5A210973D41A
+1BC27CCF613D076B87A65A998D9B09CF01A1C4CC91C2E78CBBAB1F3C0BF4B7DF
+0B8FDFD476E0B09363639278DCEE4594E95E6AF67C7B554AF51015B4351B0AC1
+94E50D3CAA924E63E00BAB9B3A9BA56FD0E54417454D41C69078ECB9D82EAF75
+C7CDBC8C617AE7C350B5AC7E878DD930B0F2578D8D7748B4206B5CCF203B62B2
+EF2268EE613EDEBACE99E6CF4C71E1BAF70AFB6AA0958CAAFC1BCC4B28218431
+1BD6C0C7DAFDC1016C2E48A39FFE585F734F46F8D097D53AB08B8F51F999D74E
+BAE6B64EFF04E2934748D3E59E7A03CF561F867CFB6DF45718C109502B3FC73F
+C5A1B9954EF8AAE7BA09FB2453EEC73B2D040A6A7E7786556A73428214919BF9
+32958F4DFCB28F7309E04966DC4FF5D1F783DD217AB236A8FD205907DDDD30C5
+3BF5A375ED9AAC052773EBD90B2B8A526FC1019FC0EDA4FBCBF0C510DCF4DA5A
+35B813751C5B694BC7BE4470E19E9A32737B8EF9387A92CE1611928EEB978849
+23196F222C89F64638E225AD6B0AA5CF559D2ED72E787F0AE3BC4622DF2FBA3F
+B22D58D425EDD3F18256821A175DAADBE07D6AC1B7F232FE817282F51F262AB0
+2AF858D6D0D2DD68A2A38F7C3137D65C76403E7C3693D1F14AB98F592616F6A9
+0404B936EBF898681DA0A155E3EB7CB346E47058B1091776E5D2C40988BD34D6
+4C5DE90CCCAD0EAD350CC21F7080AAC05808774D586FD1412B4788EEE6B63F74
+A420946ADDFEE44D18891BD1C22E8ABD59374F62B3AA78712B5E9B5DAE972887
+B20C6369DDEFD293D1E6F4FF7339740DD4E810676982D84E3BBC3DB23F1016F4
+2C90DD66B2CC149CB4B2D4DA8AF8761B77C35329AA167E15BB4925F19286C6A5
+BB7898E3ACB157603DD555F971E7D419962EEAB2BA8F2F90F567EDD0BA92E1F0
+A0BC0B79499F9F7C9985A1F6541D5717E2E594351DEF1E9ADB7FE97D05464F38
+19B22E882236AAC1EFD676064598AA068B89CDF77BDC8412AA7AB4304CD91745
+8681284A6E53BA7947B688B31A0FEBBD75EF59E46807210B24337C91C9D54014
+CEDA78A1A5CAD80E7DDB12BCABAE79EC4C3F70F8EFB74D026C4EDF48EA60379C
+A780A432BD6BA8B967DB13FC5F99FF0E481829905366D9B89AC7EB14889256B3
+E51698694F189960501721D19E89E0D4885EE9EAAFB249525F46118D60FF287D
+03192F9CF784196293761F17AC26A252B076126FC04751BBB0FA92C012086E07
+4A924F07579514766DF6AD23B9C9E02748CE9A1C74EA0D918EA708F4EBE5DDDB
+398BDA5B4F0176F60D307D8D1F875040F3E84523E7C4DBD3F56F2BB2C917557F
+D90649EFA294F53C7186EA1DF0079B2EC8FA051AFBD6343BCEF932AE30C1BB08
+38BCE2B4159DAE726D1911CB45331E07D0A64542FF84C3FE28C017EAEBFC1694
+DBA9C674C8321E035DBC9185D9299FEFEAC084E0C31102E73E4D7EF3C7BFB18D
+77856C562C78FADAE4E19162F8F347BE388614B4D1BDC51E8E71371F65C954AC
+CC2FCF29EF34870961D63A9C62729A8000D1F2952D3B219F3BDA7A8D542D499E
+88E7E9B924C6B0D4EF16039CEF88C2BB6EA35C6A7A34CABDF92A153233BA5ED8
+8D7F312BAFCC2445BD8A6B175878E7FEC76AC3099A6C79A8DC9C3C0D0BBCF0D7
+E225FBC5B3753C00F8A965DD04407621B21914E54B632AA621774C613413DB1E
+ADC7BA418F7E012D748345214A3AB30FFA2ADB2BD9DB2C3CC364C938A8C34579
+6E70B0C8E6106FCF550102996213B3121D8EBD15A9426FC93E78EAACB82E700F
+EBB1EF17559645F3661AC95F46A33F32C3C2864C63C7686EE7CF27021C71DCE8
+E9B702CEA65D6D1716992C56CF18CDF760BD0A4ACE38165E0A6535D1DBC6FD11
+46D51EE8F5FBDB9C104F79A81B1C74A213973644E8E7E95728441E0C5045ED9B
+A960F73107D600DDFA167DED8E63F09BD38C1B8355EA6E0A82691418B8290BA0
+296E8C9E0F5DBDEA4C1CCA05EDCFF053FE8B164A13FEFC647460FA23A39CE0FA
+7B7CA2A57097A800B0773AB9AF6B1CCA38B9BBAF40C7C2A1117643F844EF68A6
+F45AEB7201BB61668C617965971AF864BD61EB68BF9E8D5A92878F172FE77FA6
+45000852BFE885817B4443B7C3C6FD92D4979F59D026A2F40E634C84FF2EB374
+DD925D734F4BEB6DF452B2B881447A824578E9FE7DF07E482FD900F8576BFC70
+C8846ACB2A1CCBC70C249A3AD7CCDB4EB605D89E02F1E987700DB0B505EBF7F0
+30CF143435078855E141A686F695DCAA9750EB781CD94D54ECBD2462833E7E22
+2C2FF7BC819AA4432C8D59E35D551B913AE57CD8A4D03B75F485FAE22258CDF8
+5425171089FFF0B1FB95E0FC04393F0F41F9FAA564B63FFCA9CDAACBE55CDFC0
+1AD52D624CF4FDCB2A68EC1AF612A6EC671F4953109F92D69436FC4589D11143
+EEAB669925301813BDA5D240F095352E6F277CDB396CDA6A690E2F5ACDA4E157
+A895B84E78B195F0315A9B6E639D8EB9BC0C755ED41F90FD9E0787F175C516BB
+FABB12DE58FC41BDE3216519FE9CA2AD5E9989E01ECDF331BA98A98C426A72DA
+47A1817DB280E16EFAE4A99D12F62EB77A617734596E07B0729D23B8063C7209
+A55524BB4A6807918F96731EDE6D08E7A75516600CD877018BFC4FA66BE2A30E
+E68711DCE06B51DE94BB8794C8C33C55CA26FB47F463DBDA38CBC4D917BEC937
+89F3548354C2F98F621BABD09BBE41476A887BC494DDA8AC0F4A4B0F8AA2B5EB
+131839A7407166B224A6944F32C40998B117E6A85ECF09161042000FCED8DF1E
+62C1A6DCE70EB66199FD78AD28CEA1CE571899A6C31D26C62D027E7A413858B1
+4257ECFE2B4C4D996BE9A59E71DF1046A2AC1B08884DCE9BCBC3A3B4A57CCFD0
+7C6CA166C3C9C466EB8C8FA4E95D33C4A2CCD850DC3E01CDC49B9E3348BD9C57
+6FB7F0095EE783775F09FB2D8F6E1E60F556386DCA82110C1143BB533FC6C057
+1770D6D9D60E4D46D8841DE5DFBD96677C44B46D40C96AA1B58EF33E5E9FF977
+9BD8A199643C1887E417F68EB9FADAC35B8610365A05605B8A72F993451D865E
+FCEED16619E089E778787784A91374EF149880B65A342DFC2C7DEA8DA758CCB3
+0B10C66E0C94C80BE6644B2706DDF6EFEFCA6AD75739F97F1693B2E22F5F7B42
+7C29B16BD27F9FC8C107EA0377C757640FF166C201DDFF7F41E8FB0F037A2340
+10B7BB27290F69C52C146016D09F5A79D2577BCF832AB65DD4D069F1B2B3DE1D
+EED26C33D798C8F2B37941F021AD44646F5A087E07BE96A2C094F392833259F5
+8A323471237C89D6806CAC278CA56CF5AEDF025D9B2A40321BF48ECA0DB83985
+1C784655E40B2FDACDEB009B70A8C0C58C07188C96EED292A15254ABEAF86986
+F2FA5B0E4FC36D79235F6B3E8C6377E4ABF320E2C0266151D928E5D69415CA28
+B1FC9676AEB65901F78AF5A1742DD334E7AE19CFFAFDC8439CA191195F2BCC93
+0ADEBF97224FD4A9D97D4B73757AADA6F869A0915910D977CCEB6F984DEEB13B
+5896623A7C5BB4863BB1766550B8706A8D288BCBB321DEE27442EE401637E9D0
+BC2577A1C8CBAC9706C012334D2B3BC91BA887344102FF0E7A38EAE4BD976EEB
+25E7FB77C30ACB4DE4596903B7466A17693A204FEF1A469FD4DACB032D4E6673
+4AA30D31222AB6420189B75E7FBC53EF85A422967019BA5C09502884F3D37B0D
+1E3AF1907A8905CF482D0CC991E61C0BC65C38FA89A1EF43A8F55E339395C738
+19227597D3C9E77422A9788E8556158AC06E114A6EAC9EDD242F3B9F2BBE922E
+4C76503907FD639808CEA4A969167ED8AD7054E1F7B2EC7A692BF0FCEE1B3DF9
+68722044681E7CD633056B4B6E0561C1B14E251B61E90365022C99B818079063
+8831F99B58B01882035AFD89073457FD1828995CBBCDE2403B7B3E039A787703
+59DC85DBCB686B32BF1A50499749391F6C37510DCFB234EE1B405D19C7CEC586
+E9BDB2898954E0E38A03E6DB51C80B7DAD3EDA1726D9DDB632A07A0E1ED6735D
+7C6D77E6F2DCB786390672C20B2FA2074A93A6332A84DA2E32B654810E0A1D25
+52DF80A065A401915B4DA4DF0BE3A0838B51BDC9D4A3532E795E38ECF0DF1226
+438EE3E3D5E55E641C0DEB0C7D98EB67CE303E95A2F30B89C68A57FCF9897B41
+58305A02C5C00CB97B89651BF5D8A60CA5F5D4224FB70439115FCB62EFFB9B82
+DDD857E7968D834E3B379D14E49AAD1BA90A5D2350D08D63C297367F2001EFF2
+12F263F868B1BBF73EFC178033810FC89FBD13818D3D8E774ECB8E0497188671
+F3927E8B1122AA000347E5233AB486D183400ABC4C5497B840332E19E53214C8
+D798863AC07C64FE7E715422F6791222B98D26AC9319836791C464F46C7BC50D
+8D95854C91A9CE353CE7A1040FAF2DE1FD6A5A82B244628C662A6AD5B4AC4B9F
+2DB165F278F27A029B340CB828D6AB8CEA6AE75A95E222E213C3A0A745D61125
+C21E30C9FB01185A38CB532C4AD0E123C53549A4F69CC66D4D160429FDFB29DF
+CC65C82367E312AA6920ACAD219EBAAFF50DBB9FF7413E16D99608E8C577046C
+3BA9DAE2FF839CF18CB295D0215486CBEA1090265608DF5E3625E7D2D8C7A11F
+6C5CED03A287FBE13AD9D1C41E074D806CAC7434F6A256FEAEAC9EBCD365B550
+95569AD62A4F7D13DEB9E061A01DAC0BBBC5274AF89A205F936C86A483000819
+81DA3878362163763EF026100094B97CED7D38C864C3C068D0D660FE25C2597A
+65FE4B47E2D249FBBCC638D3A333A4202782920B934C570F71E20C38A5C47A6A
+BA8ADD151635F271E889F1DAC05DAB18767852841CEEF7E156B44CFA321DC565
+86AEA7BF17F7723763B6287C335A4128B9CDBC8D4C2FA98643219EDA744B8549
+006A7A2218CB9DE223DC9FA377DB82EC2453C76DA0E30A90717235AA3B337F2D
+A1CF84E11B2FA9804105F754196BCCEE9439AE975FF56F271755E7D7C748E4A0
+1C35F7B73EBD6CA0EE3DDE57D595F0DAAEB317F3805A264E7DFE6EB3F2C29C7D
+89B9B81E52D9D23F75293C92DDCED1D4049012CD3937B80161A007B409F1EDEB
+11FB175A8EAE32369D2B040D7CCCAA5F89D6F4F5DF7AE873D6AEE5DCC6A4BA43
+8B3FA9DC4D0B706FB749118A76C28BC9F5D1E5FD9B739A32F79F1B1322732435
+359350C34C2F34BDCB5FEA4515043C41804990D41AA14B87C811B4202E060C6F
+69AD171F52B4A16C438A28C3160A3C7064FEB194535E9613E02B39F75DD986CE
+E08150AD13F7B2C6B7315B4546DDBEBDDEB458693969A7CA035C48DE4979CBE7
+572DC59BA171C4B078B47D61EE114A12BAFE331A10C286AC93969D02BD6DCB36
+6572A2AA58F39863980AFD89EBA362D6DFA8BA922839FF5A88148770B6A78249
+D17E966FDBC19BD463BDBC2A00E2CA0AAD9F135E749D5DA791330BD11ECCEC90
+C39441CFC447FE7C7E0390497BF06CA997592B4FE43C369161779B55186D5A3C
+8B16A8D87D96E51343D6CEBBFC45AE97A48F6B93758B990D1687E1F5310F2CE4
+38D5D6B57045B70DDA00732CF917680526F19E50D32330C7915FBA597E8BF7D9
+F9A4DECB5DF4D269DBEE296201ED2C3724F9FAF844E84935BA7684460C437392
+41333EDA96A7E5928A986A0CBBA53C95C5E1A7CFC793159E79A5CAE831F46702
+4425618430A1805F8FC93D7492BDFE3A8D5D29BEF8053AC938678316082E96EB
+63CC918AD6282E831AD0A573B757063CAA29FE5FCF5AA2EA1D1250E8E0D66F3A
+1D055F1AAD55D3925BAD2D4A7734486EE7CD77D519F3C1D96F393D0CA5C56A25
+05AABE029079EDCABDC71CB5B6AAA213482135C6655D14312CE9378813F4F53C
+56EBC74A81BE2626DEB01B69874FD8686DF0D4E5638FD824BF0565FA0517EEC9
+89823898347261339AC8E1520CF7E0B11F95006B31DBC6D5D732762D29467441
+32ECD6BED0C9F496348D63D35B66CFE522565B4BDD7B39BB712BA455B22905D0
+2BBA08E1BFCF2A2E4AC2C664D26B528919256ED34DC3FC513BCAC7D3D776B5D6
+52B41BA60AB548E83DC0569C15BDDC5BDEA453D25220DEA67F5DB58176A439A3
+286131F844CEDACB0D611516158CEBB85041F870F8E0BE7D73CD849E4822ACFA
+D98BD8EEAB770FDCAEC6103C7DAE0667F132730EB748018E4BCCC451F82CA183
+C83958A0A1E136420B0B69429BAFC53C74A31776B6B1B9144888281F693E91C9
+2FD84D2DBE9C822B2B3C0714CEE0806121D7F1A2DE462D5881F3900A1913416B
+099193ED1E06BB2700248F189EB108B336EDA95C60981B4023CADC510096323D
+7F7220BF413E7D5A6139B9CC590A865D4AD8714757DD3BC2DFB9AD9295C849D5
+1E18C9951256AE3E5C3CEE5C81F445256520C1C80AE92E1CAA4C813BDD573161
+F1B1EA4F1B135D4665FD694BB03E68C2DCB0B5F2F35D7ED800352263963994EC
+B0066D41D5B256115B615E05F2CA838FDDBAAF3F9E4606D4B5AAB7E6D06BB1AB
+0AEA89354518F07A1DDF09A2C18050772FD3C68CBCC73F6D24BCE4E99C1938DF
+FF319B8D12C59AED1A3BA18F06A730562031D5D1BA9496D222195DF195FC2FD2
+F4E5DF852529028A7A6ACC502003CE80009210ACF8FD2A6E1B97A73AE7348CDB
+B4E6206063401C0FBFBDBDF9860F32E9C424DB426DFC87F31CDD7A26476F4733
+E58750386D1380657AEF1C6F0E5FE948C6A4A254CCD84F12BDB50488DE41BD4E
+96147DAB3BAF3347B44944E164F7A00A383A9B21ED0697B6E8E72D485DC026D5
+3364AF93BB1807078C59BADFD94DAD5ECE6E6A5887D700664A0E793BDDABAC82
+9D5AF0247FF379AB906DCBB930792B839315DE8278EA437733FB6ACFA08FAD72
+E32332C45E52259C65BADF2F9A5EE7D53DBF6C92E282CFAA9F89A87D2A33DE6C
+2EF1F447F951A74A7F106DEFB02E5B8258D924E4F2232A5A75D9068F273D700F
+82DC7BE5DAAA27F44A46
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+cleartomark
+{restore}if
+%%EndFont
+%%BeginFont: CMB10
+%!PS-AdobeFont-1.0: CMB10 003.002
+%%Title: CMB10
+%Version: 003.002
+%%CreationDate: Mon Jul 13 16:17:00 2009
+%%Creator: David M. Jones
+%Copyright: Copyright (c) 1997, 2009 American Mathematical Society
+%Copyright: (<http://www.ams.org>), with Reserved Font Name CMB10.
+% This Font Software is licensed under the SIL Open Font License, Version 1.1.
+% This license is in the accompanying file OFL.txt, and is also
+% available with a FAQ at: http://scripts.sil.org/OFL.
+%%EndComments
+FontDirectory/CMB10 known{/CMB10 findfont dup/UniqueID known{dup
+/UniqueID get 5000761 eq exch/FontType get 1 eq and}{pop false}ifelse
+{save true}{false}ifelse}{false}ifelse
+11 dict begin
+/FontType 1 def
+/FontMatrix [0.001 0 0 0.001 0 0 ]readonly def
+/FontName /CMB10 def
+/FontBBox {-62 -250 1011 750 }readonly def
+/PaintType 0 def
+/FontInfo 9 dict dup begin
+/version (003.002) readonly def
+/Notice (Copyright \050c\051 1997, 2009 American Mathematical Society \050<http://www.ams.org>\051, with Reserved Font Name CMB10.) readonly def
+/FullName (CMB10) readonly def
+/FamilyName (Computer Modern) readonly def
+/Weight (Bold) readonly def
+/ItalicAngle 0 def
+/isFixedPitch false def
+/UnderlinePosition -100 def
+/UnderlineThickness 50 def
+end readonly def
+/Encoding 256 array
+0 1 255 {1 index exch /.notdef put} for
+dup 38 /ampersand put
+dup 45 /hyphen put
+dup 47 /slash put
+dup 58 /colon put
+dup 71 /G put
+dup 72 /H put
+dup 73 /I put
+dup 76 /L put
+dup 77 /M put
+dup 78 /N put
+dup 79 /O put
+dup 83 /S put
+dup 84 /T put
+dup 85 /U put
+dup 87 /W put
+dup 91 /bracketleft put
+dup 93 /bracketright put
+dup 97 /a put
+dup 98 /b put
+dup 99 /c put
+dup 100 /d put
+dup 101 /e put
+dup 102 /f put
+dup 103 /g put
+dup 104 /h put
+dup 105 /i put
+dup 107 /k put
+dup 108 /l put
+dup 109 /m put
+dup 110 /n put
+dup 111 /o put
+dup 112 /p put
+dup 115 /s put
+dup 116 /t put
+dup 117 /u put
+dup 118 /v put
+dup 119 /w put
+dup 120 /x put
+dup 121 /y put
+readonly def
+currentdict end
+currentfile eexec
+D9D66F633B846AB284BCF8B0411B772DE5CE3DD325E55798292D7BD972BD75FA
+0E079529AF9C82DF72F64195C9C210DCE34528F540DA1FFD7BEBB9B40787BA93
+51BBFB7CFC5F9152D1E5BB0AD8D016C6CFA4EB41B3C51D091C2D5440E67CFD71
+7C56816B03B901BF4A25A07175380E50A213F877C44778B3C5AADBCC86D6E551
+E6AF364B0BFCAAD22D8D558C5C81A7D425A1629DD5182206742D1D082A12F078
+0FD4F5F6D3129FCFFF1F4A912B0A7DEC8D33A57B5AE0328EF9D57ADDAC543273
+C01924195A181D03F5054A93B71E5065F8D92FE23794D2D432E1428FB6D5BDAF
+3F02C975AA4E0072BE5F8CC7D3D59BA3FD04709FC9E52189F55C7747056EDBF5
+F85CCBDB1DDE9F9163AC7158EE8DBFBE8D94A46510118ECE6A280C4872F448F2
+E6A6B36AE3224FA448DAF204D1C998D010C6BF52DDCC45831DF1EC22528B00C7
+70525CAC9F6BAD892E7D5C81295A2AEFA8A5E4B6BA2C4EF61FD3FECFA2A8551B
+DC84DAC597222341E762620D3D3C1A4AFF2F6D68C4813004318FDBBDE23AE224
+617F7BC1F3846943E915624D6BBFC555E2EDD013F190492F03CB64E5F2403723
+7A2D4652BFFAD1FAA1DBA4538F2C3E608367BF95E09B853A2BBF9930D9B3BE46
+0BFBEF05DA75DF3D8E11A09D472A9E45C626428A1A599C111ADDEC7A4E70407A
+014F792395A2A12303EF51698D487854EA15000AB08BCCA8B2E35A5018F5460C
+9B223315D7B838BFEB224E8D1DC9A0C1077DA31F5FCE0D9D499EB0507B90E9A0
+1F92FB5FBB8D40568C1E8B8CD6E1DD27CAE6E107AEAC5696CFEB19091B40FD77
+7A4B4F0F261702BFF5E2320C62EB5C6E9DDE142E9FC7DEAB99D90297AE0F15A7
+04C0E3B39FBC85CB6B92BDA7917698230B5374D9159807ED1D07947D95802693
+A856C84812ABD3EBA336B88CC8F37288CAB59790B0882A4ED6815FF6D7A1BB35
+5C7B7437D2ED76E806813478007886ED1009A1E73CCE210FFA69A20D6E05A713
+F6EFAB133D146B0EBD547CD29FFE7870973C1E71854C1C643BADC69974BE360A
+4CF84FAB098EA3DCD2DD8B2FAAD19429B0ACC7C312B03E6446F1C1D51E6AB45F
+72F11FFA078DF3196EA970B24B1BE607571795A2FDC2EE7194E9422C483799EE
+23E16A737951BB935EE2C2BF008B6190E0138D551E75C9E6D0EA48E64E9750C4
+BAAE32B894BE25D092CFAE894230430E43C585D0F06636C8D56BB80A4597A0AA
+547FBCF12821C20F0E62369E1A9CD2343B8A8647B2FBB1F4C86CAB1F7A14669B
+69DC857F9BC7538A864E523C2DF7C830315E0907CB17C8FB6E412A2A9E88317C
+0026A6A402B36BDC433015AEBAD775835E5ADB4EE75FD8CA06C199E000CEDF93
+00692F29C5394DEE45DFF2D42872B1370C8D4A14E144FF36163C849F9339AB97
+EA87BD445733162A34E609BA1E92DC92F9AC892E7A0B39AB0FFE517856491695
+56155FF0C2B231EF1314CD4A146EDB1CA9AF7DD546CACDE1E6B49BF0D4ACBC09
+55C85E2D38DF84E0B779642F7E9C26CE19EDBF328104B9E803D1B03F3FC24C4C
+9EF0D27C8E5AFA420A63981C000A0C1F0B3D3F853FF300EEC524C586376AF998
+DF4ED5AA16D8E298C159C2A3E33048D4EF192A11287F69B11BE24D49A033B334
+83CB8783383F92EFB9E3BE84CEF37796BA4211E534B0360970B9C57EA7CB54FB
+F582789A83113ADD2415B3F84AC4ECA15DC70878A32559198DAE67B083B0EE6D
+68A92511FA8FD6BA88A42769E3FBBBBDFDAD61F99A6C274B48CB044D16FD5953
+44F1503D8D1D6DBAC41C1246A71EBCEE5B1F0DCE3EE7E3A99792DD8FFBD94DD4
+3A5ED347A62D301B6739AD2BCCC7C57378C29FA5A83759E7AC6F1505DF6C0E16
+71587914F698608AD93ABEC43611DE709ABC3F1C0A1343CBED5F09DDB4FACE0A
+8BBA9DE5B85FE9B4365358DFE877BBFD9AF08BC60BAD7C41433BBDBA17EA9A7B
+92F76358612FE44F43A85588DAACCF7846ECF5C58B22F18120F895317609AFA1
+06E88CA1D73C4CD5098CF44093207C31F46977B6D22665AACAD5A169906640F6
+3DFFEB3937BD6CE1501C52783743F8F6110DF43ECF512D49A55379432CAB1C33
+7C38B7A38DDB91F0683A052378CBED8BDE4E6DC32FFF6D723A4D1469D32AEDA9
+FBF89B9604656DD0D44ADFAC39BA893808676E1E08444CE56F6CAFF3E93D8D41
+F164049193BA11AF94B43515BC79D6A538C00B08FB518EB67C27E73380A651DC
+4B244E8A2E4ED405EA5C7EEDDB09D44C458A883C839B98D9D6A2209516E0310C
+AD777536190ED06F47EB2ED61C53A2E0AD0CA4E4035324DE75F272B1CA6BC1FB
+B912807B7331D932DADA30F1975A1C9A8B55604EEE8A0CB514C6CAEECAF9C46B
+5D5563E8934B421EA1CCE3B96412D78DBEEABA59FC603CC6ECF65BDB5B66EAF9
+14B852CC04286EBEDD560713090BC417A10BB834944E007F45B61AD6E6150B9C
+10A6FBA56C1B45EA5F9A5379B1A0788513DD4100B82BD61D89E6841A26B362B1
+D4762EAF4FF3BEABD882700BE9832115405728C5292BE942F871661EB0E6B29D
+430CB271A090B6F5399184F21ED6728171B1783C982E61DB7C0BF90CBC1482CE
+C6982B4F0AA39076B64CCA5A71BE73CA65F2CB60B89AFACA957EF8E6429F2182
+CA36220F80EEC5D01AD7061DF45CC5109D9F0B7E2B6DB9D6C6326A45DC6C05D1
+E81B636A82592D99C7B7ADA0E958A0D7570BFF1830017A6241AD62C53D4CB36C
+583672FBA265142DCE545F4855CA3D9E528143AAC66EBC9527B76EE43B4F4E2B
+B209BD265D6AEF18D168CA7BA2CEC40DF86FF352029597A5A3B2941D467DF229
+50C788D4276C5B400F360AB596E35983262A215047C9714912B2E69CABC0DBDF
+BF6925E19EDF3A6638CF5794722C8B92C6DCF5853DF288B9DA52A2152F98227C
+FC04D3C318E7D942E9D33582A490888F0C1CC1A8C4474091B4956222DE467632
+33CF5DB7DA165B59A648AC6945687B0ADB83EF5B286CC469B2C9E4AE92ACAE8E
+86E4C62A092B8F6C05EB2ED346DAA7C573A03760ADB3CD55B6C794FF4463BAC4
+2F4A738F9C4237107C503A7EBF4F4BB4380DBB64F5F5C9B268111752FD2204CF
+F25085683D071FB4149A64426859D407936A3D1E2C627652C126D8F9264E2919
+960ACB9DD61BDF973492CDB1FD20EA81E06BECF5E164A8ABAC12926DE1CBC0FC
+6693737B4875F465B5623C899FE129B3A52A2BDF104F8B8429890AC870580C7D
+B078A9E26C322D1A8AC1C6B2BF340813D989EE8D054882B965905D33EC3F4278
+DC41BE055E0E5F73B5A1F45E9E69718F5E155B4EA30B28BD28C52C6C322F2E84
+674CE600D699CEE1D2CFB7212BD8168B45824890273A0AAE4757D112980DF2DC
+C3026300B4BBC9B081817AC7F4D48B309E66CC7455708C772A08EF6FAC829363
+E27AEBC3E7D0A91984C05935B16E102E81D6AAAC347E38EBA40125543263BCA6
+9C6F4AD6BF8C3A90279FCA4A99D9290C3B8E0DEBB4B2DF932F66FD47AAC3094B
+7582FF8265CFF8BBC7F79C8C74B1FF94B26F3817A39B5FFC6BB562BF6DBF9CEC
+31CC3BE4D7E431D41D55D96C4F020486F993781828E9E8850192F9F6BA350AAA
+5E292210B0EFA4061EC8BD6EE15E3FAA4AB2F54110D17D29BA32C0D28559FF32
+D164DCC98EAC78822D6D6AC6F4871D47290A11C83670374F072A9DC723096C89
+EA584D43BBB13584D9B8B1820C415DA2E0DCA1B50655E81B47B9AC8343DD8FAF
+95F4771ABF81361EBFA9259EE8901F31C21E95DD22FE04BDB77D23DA561FFCE5
+A7708647AAF65FBA2FD95E843D839E5734D4C08A215180C7244924E002A965D8
+AB29470A1B86065B4133A9A6EBA05EF1AC67DFB5ED8DD8C11450233D2624EFEF
+3E6D3DCA7E23ADF174BC83AF25A1D7529E52D39C27DA86A2DF4BE4F8A96361CE
+7025BC1954C75A765ABC95B4AFE0AF5474653E6808F85893BE6ECA1A37F8B666
+05A9E9FBAADB0DD86848D6FC48A1000FAB396F756513798E09D29ED6DBCC8466
+40181BB71C92CAAF8E240E16304DB9F4B0FB6880004A0F9AF6228E60646647D1
+669577DA709B4FDB8721B95B07B4599652A303FFCEBF858A41F08BF3B83EBD31
+74EFA947A8ABFC7467D6CC544B655A7BD4B6A4F5EA9BF11CFC9CDCE14FEEDEC5
+9116A3FEF962932F8B105BC4C51744916E8976815AC286B1E682D83091E9C533
+839223A68B9D977C41107F597E05C3D8C1C3E79542A990B0E8E22F34BBDD8E47
+B6C2CAF54B72E8F0E8A41DB343934FD2C33B6D77AF2E9061C4E76BF258CFD615
+30AEAECE9D04569D358541C346C922A01D017BCE85D4F083AA9B6939D85EEF29
+335D1BDCC9E6D5F7F58EC2BA2D8CE50CCB38AE6A2DE2F695B76831F8F591BEC4
+EC6391563D18E4169151F552B5E1601B1DDA6F93E5C8B5F4FE63F5E002AA3C15
+E0C8DE2C735EE00E9A2A01530FF37B7FEB0FB182A4E381CF1BBC80D743209814
+F99002980CEBCBE3E677005766CE1D0AF4DCC9F103499D1961771FFBF01B833F
+1701EF6EB1A381A287F73E519C01084241335905661B2E8B86B398C88F39BBC5
+09FACC1344E15CC7685708BCB3F43EAD4E24A84AA0687FCE0A2178D9BA84EBB9
+68E8A727DAF9A0B28A7CA3B119798603F9BBC6728C5A6B4BFC84C95DC4F36839
+C2649E364CEA39A4EDBBA4C0E27C61648D38CA46B64E8CE797CA3464C80214EE
+28A1E58B387AE0A663A39F04F57899ED62FB0E542EA108AC32490B4B2BC068F6
+2087BE9C9C3CBFDD80F2E632BC4C971A79A0A3C3A5607B997223A9F6373EE51F
+C58EBEE7756A391C91758A1F6567F532A5EB762A2927F57CF9F0E845E4F66B3D
+8100D1795B706FD32944CEF24A054650EC911A54A22F4F35E3034AC70F07C98B
+8DD43BE9F7D68C50D6449791F5331A189706D9CD18417348B9F296D8D01368E3
+2523FCC0EF33B998FE925B4CC7BE329B32D6AF791BFFACB60E4874412C8C8676
+34914A453A592C7614AEE5001DF3E5E8D9335A155C65174B940E1AE61ACBCBD8
+A41D7E1C6FC0680E094ECF65C60CE714E6EB2A1897D8A3F39FF58D64EF7E9A41
+4CD8E55BE32CE8CA29239A9BE3FD6B1DD5CA5A035AB1FE57CAFACB8A39B6A877
+C853BE6BAAEF5714982FBFA414EC128B61326B60D83076E690FDCBE3D2AD256B
+FA7A15B804402826684AAD933E94853CD0CDEA3CCA7DC833E486F431EC4764DB
+F3FB244DB99FA0CA2FA14DFA75A326385B3AF92AF8E4C6D437DC3DCC07FAF25B
+6C0F270333ED377B08E498BC3004C25C7A991DAC9A3E0D1FC43E2EB6996C7269
+7A864CEF35FE312DD8F87E37AC69490299CEF9B059EC7E7492D1D6E5640E0AC6
+35B97F7A629B6B7CDF3BF86D2B518EA807B03E4F79DEA59C84D98E4C94102EE3
+71A29649ED75F5ED02EFEED8064E2D54E8F9CA0C4284B987B81B7F41FD7DCAC4
+FB9C3ED70774F9FD09F3321CE1D0319C1129F5868DABBD183045984748C8A3E4
+53E085818729A1353B13C78E63E837DE483E9E2ABFDAD16534420BE4D7976D35
+F56B86EEB90F663E9778A6E0CD698E6324EC2D19901972B74EDAB8F4073E4F37
+89082F08735E8345BA167B2B76C77703C586CA5DAF41C0DD0E231184DECD8A9C
+DE8FD239B6CC636507A5BE6EE5283C06A1D8D59E98A31AA76F4D358DBC641DE2
+ECE3D9F2D262FE2E878E909A950A7642A3F59995519D541B96D459F24F12682A
+9AE61FC08CF436D9DF060DAAA90884A1281B370A2F824704B5347FEC65E14E7E
+3D212E29723427BBB12C1CB91B28CA47D6FA8259A875EDAE4B49C33B2F73938A
+784C1E7A7F21873CAD55A868A1451B070A3F259A983293289B131E07C903D7A6
+3CC66CEF8C4D2B6736282896A2683EEB944B67240CAC5FBD8A1392A875245A9E
+2611B511909A041846063E465473D41958104E92519C0F86706AD640FC6CEA10
+620C9718C4589D9D562D8810CF6F461B776D5A1B040F8272D43C029C2A695D2E
+86CF508C4AB11104E575E13C2EF56914E241279BE0558CD3D59D25BF13CE8212
+3D7AD1F25FA5A9155AA06306C7CD0F49E3498856318B0ADF279731E1769839EF
+98657EE73CF07B0585EECB67F5FF609E0E3DA1B78F6A8FBE2F2E0C051237AB4B
+1587DD72BBFD962E865EAE0CAF1A5C592F5019C7533BAF297C0F78F3287838D6
+CEBFC8B5969486A5134DA76B4961C8056E1EF1F2AD17F19D7998175D66B3149A
+2CF21CCABA281EA0345EF50C1EBE7004ED495C6D03963B639A66638A43C049C6
+DCD311B5F86EBC814BE42D432EEC87B861FCBA9C8729FA5AE87E20C5B30B8E5A
+BB41189A42B9853CA408BA01A559CAB722AAC3DA28E70AD79E1BBC8B6FCC937C
+180B5C2E20B03D3FBAC60C83F765CDCDB3146FE5C0B02911F6E120D63EDFB0B0
+86CCF83C2AB62922450206D3701588B54A8B232126BE120432E6BB2E25C50B13
+708D742A44E20176C54FF89F4589B10D5396C94625AEA1914AC168899FE7AE9A
+7D90DA67A5EF3DDA25CCBB18DBAC3AF4AB889528A381542185821B96CCFB4302
+987611DD5B5B8514FDD7F5148D1BAC9C34567F75EDAB317E0B8A7A76604A42F3
+1D46332C4791006DD1AB657308CDBBC7314592707EB163326E345C2C5EA05B33
+01FEA5B7A346E6B1B6EF58B692150C6116B149B6A26B493674337A9C1CB4F42B
+A7A80AC587F9BBD7A487F407EBBF9978840A01B5E7E772DF7EF28481E7AD14F2
+424816AAA958320A0E6F318C757A474F7B05AC0F570094372CDE877B479AE3F4
+90C257A2B3F443DE43D8A58594BE8D4B5C7E5E075ACFB1AFAD4C06415266E168
+FB38C1CA256287953EDAB1D40537A3633CB52FECF3D35BEB8C2C6CBEECB54BBA
+CD6E043EEF68A21D7639FAB8D1006B1119CF92350D9773502F7554B4B3036EA3
+D747596506FC674DC01ADEA9B45ADC43B9E6947235E9BA30FF462252038D91D1
+D908E9132A946FD03B86A08885AC44CEE72F0E27AA63A901F2DCCB86D87702D9
+A66F35F06D6640115B075B0260FB116E24E795E24DAE988CD48A95FFD3116E92
+63D02221D272531186E2AAB74496FB78A4064C9C9772608C49D46E40FE28088E
+B5109171E7AF69599BD8BC1186C196EB11FB4132F5C9FC1395220392E17B66E2
+32215E54E9483196341D6DC691FCCEFBD00DFF4C095FA8AB36A374BD5E1F5082
+730A698AAB7B57A5399196ABCF7B7963E2970CCAC5E9A5EC552CDBE1E2EE1968
+B81CF5BDDFF9D385C9C1FFD726A0C52A4CB0C8121E77AEA16157C1EDCD1AEFF5
+5607E8F5C44072DC54332B95AF28417E2D45B4685F270821EB6C455AC147F938
+50CC9F7F2006D933D0664AADBF5D7E3E6DAD57527AB59DDD13BCA392B059FAD2
+E7833AD00F62EB89CD7BECA9DD479F7CD7C981859EF43CBB1EC1681081B58A39
+2CEC9FEC039082771E1BF48968431F72817C8156D0D6B65DD33D472BCC49496D
+1F5FB1796892C6A45BCC65BECF41D8604B811824739647D87A7B28FDB3574478
+9807DA2557F411E0BA7479F31B9E3BBE6F3CAAA653883A9D2BEF2073F47F057A
+CFD20BE1371F17F5B6F0A9520F2EFCC3C04A24EC272C43E1F587ACDAFEAD7076
+6139D04FD9A50F67301D7765109C76D6270D2DECC94017A877EF386AC7F625C0
+ABCA9A6D15D71AF7A5889403DDB83EDE87EF5A69EEA97995CC1601160B296750
+32AD8D65A456F5471AD4536F1AF41A4D370203F897686CAE7C89577D3A843E90
+9C08CF3E3D489625256DA5E0984BF971E0D8D251AE5B09C17883CE07750051DF
+770B920AABB2E80A4944EF613891B4EC3F9E214339AEDFDD5DD15240933DC82C
+D878BCB743ACBB562A41BBD86191E1129718826681FD12981D4159C7432DC3D9
+AD4C6C478EEEA0A34030BDD0B9122E8AE5F0B473AC5A48346D56C2DE42815D19
+FE378D252960D3F56654B31C58CBBBE0D634FF6EB81295809AF12222C58345C0
+4595590CFBE4FD924113743D5E41F80796B2C5CA077D8042C15732ADBEB4AB2C
+772E80E7C490AA9104DFEA7D363CCEE8BDE3644BC9E155CC433060C749151A6E
+25E7A787826AB0187BBC8C1DEDC1B91AE502256231B376E2B3FCE63EA61889A9
+FDDAC13FEAF57217EC230CCA301F89A1016CD5766F92298023B5A14A5EE325D1
+C4CA5023439EC8B832FDABFC818580D0817FE37B1D01A11B703086EE57A865FE
+C1A4D1579782B6E455DCC39BA86A4D8E1D84E1D1C15FA740A00EFAB0C19B7B6C
+6A3BF72DCAC6A4CF31407A555660E2681176CEFB2BCA1C3023DAF80229ADDA35
+214FDC42E414169A39946956E17DFBB364CF9CFD044214141B237DF5DF3D73B9
+A05A76AC2F2739F6074B0FEA1BF81DEE25415E248B9D6D252176D69A78D4A4CB
+523C473610D33CF7539006B6BD861801D55698E3D6ECE62CE5CC9FE34A8AAB8B
+ADFA0EFCCDED873C969BD830908D6F35C06A0069BE62547792EDB97DF199549D
+5462192BDBD440D7D3CC95B07B66FF5B0B16D514B4700D1A1987B865E9AE8317
+4BC2AD3AD8C7AD5B2503C0FCF4CAB35E28096FC933C2A48F857015B10EA15FEE
+D8C9718D18D9E787C0676EA7D89CDEF33DD29BE0CEBB371143A888AB7267A42F
+FA7E9B9BF26D89F8080EFD3E27CFE8E73245C3386E1D3D23A66E2CB9C2911747
+8DCA487525E1C3F510C57CFB7F8704A4ACFEF73599A75F4CC61A1039E15FD1BB
+1E34FB52C19518ADA3A64F66A4154153787A74B90E9FDF9F187FFEFC99BE8A1C
+90FD721D4FC14C1041FACE4E1CC464C595EDAFE1F74F8947DFA5DBB3CBDC0D14
+1E6448CB70F59CF4453E20D1676F73282EE05C4601DBC866E7CA9F85171781D2
+A9E3AC27760482CA6C3869386D5E5A3AD96D4C20576641992B6FDAA6C02D615B
+1335836F29E43AA612BEF5FB67FA76663EBE29AB14A7F75414E0E248E3990432
+2E7B0904F7E664F20BBAD05824F7E57B6F256644CCFB0F56DD7FCCD56C6A2FFA
+EF7F44462037F64AD302B53D24F832D318EC9D9030C878E1BEC7095A6CD9DF5E
+B7B1D4421701CFF9F28F904D475B01CCBC458C619C36CCFFD9CA891F52A27969
+9D0D75BD17268E7638C2ADD596EE13E2F75B9803F689AB2594D4F72E5FB7E0FB
+7C0EDD1F3AC568F3A01BB0A4F369E4457C8E7CB8712A7B9582B47FFFC8ACB987
+02E49E3911CBA453BB7BDBF54F0A7E925F80CB7B3C0CA585B40556BF2B12A820
+B489EE94566073A2831163E3392D62EE04B6FD897614AFF5F427DA9012292FD5
+42603C0985CBDB9327C0F0DB7967A62113F20A22D4F859738B58190F596CCEB2
+1A1007D6F060C67D1EDD0CBF09DE2AC4559EB2DE9BF471777CD50E97A9B6FA19
+A95E2BBDE3A9F4A037033E4FB15800A31AD800E35EC9A05C910604AB59A2AA36
+805B9239673049A79A2B3F3BF29F43F2793374AF33657126FFFAA198BCEE3E26
+49399DCF540EA8CCD5D9DCE0284E482DC5ED3B02537F977572A43B8B6DE07959
+B984E18539ACB6B5EF3C61EAF56707EADA87E1186C71EB919150F792A7A2D4C7
+672B8101DE40F17DF613E4A1A38FA51A85B62624C8B45D2D01A3ACE7BD8CD4D6
+42600BC1A4F556476692F5D45226A9EF67A03AF6D2978F2B28B1FCD80CABD3F9
+52FA94A49C05A7C7BCB5D87A866D836E502AD75446D3DE9A72AFE1B8CD2B0CC5
+8D21F19B1C52FD876272FB72AB3FD05017F4D58CA025B697CEDC11D55BB0E6D5
+6DB2AAB9A7BDF846C38049CFA009EEC7B247B6EDFCAA0917FA5A7E8C009BB33D
+42898C2114EDE86FB1298DCCD522EFE7A8F8FEB7493418824488234075AB2475
+1FC731966F6A59817C66B68C69F1FC03614856180507D3EF229031FB6277F236
+BF65AD7EF09EF4C5442C937BAC692650DF80B91A7DC91BA39D33F82AB487EC7A
+E3E4A1CB314075E3FC2A7728536E9031A0E65889F75AB4A0072D66959030A3CF
+EB75E5C5F4F7D4514546A822D6F4AC34C587AD10494648110EB89AE59E82FEC6
+29C33EA821C675AD329963DAA6C8957ACFD0880BF5E3FE51870FDE1C24DDE9D7
+43D54772AD9929D0B27C2093C4729360ECEB6764AF08091C90A4B54F2AF77FCB
+2A775BBE7CAB6D0AEB5E4688ECD8410EB9884A86050D3D0052B82CB4D9A9AC25
+0776AC3E927B04811F2F73E403E481955C25465A399B38C19CDCE412BDA2DDA7
+8EDF3C7363319526289D68F9854213B3077B5E627A5B36449DD33D405006E629
+D7F787AD484970949C00763BB66AB7EC5195DBE5F245416A43CE37D09F9821A3
+3D00EF2C77B1988268111C9C433F3D1D6A4E5217AF81BD376D62BBA8A2A20473
+D03A3BD18F4E3133C4D426A4F308D69A82A27A62000D274161B761658858BF59
+79B16D97E8522755BF204980CF7218CEBBB0B4D7CA33EEAA23471F7690F1EF14
+747E900DACBBCFDB5FF5CB13D0CAA2EBC61AAE674228910B9B924356BFD59092
+4A33D854909ED37CD8B3E2F0014B5EDB519F7DCDE62B18D6E1C27C548BA76996
+3AE46BBF6CD5830F14C6DA36A7E5A54CF00F7A5790779B64E7AE64402F0EF697
+577B6745AA3D33B0A9182200FC207C8220437388CB6CB67534FF65EC94602D5E
+8841C8F3B7B3DC4C9D7DBD39F607E7BC7AB923755E37C9635B6E59F5C53F1DC4
+0F5FCB9511CE2762CF66FCDF071418B434BA126AEF50941E0C375B327584021D
+44F050053CF2C02A4C827772A0B68C7DBF4FF39634FA055E65255AC7B807E768
+6F065BE97CB014F6D36CEB4127FF0CE8F06C12ED235665FD5B3379FDC00C5F6A
+54511C02B6F9C5319EE794660D185AF2FAD114DE84909B4C89D1DF56F327CAA9
+50CDF73DC0C6155836E81D5FDB939E854555BE1AD4F50CFB475262B85947BD6E
+BF453D5A2DF88F7D44AC78835525BEE0F212DB2EF1C73B212AF8C6578033C3F6
+D07860631F6831E7B1407A095B332FB0F3947D6309D34FBE7DD9324506190E60
+693E2D2AC50DE8CE87D7A4061F975A922CD95F0AE7B463938461A71F3A56CCE2
+264931CAA7790172EAE51923E862926A77B2C9CF10A9CA7A3A09525C76DC5C0B
+5BF0F18E57B3759AF4700B44D82FBE5A1208746732D6B47E045509314D473969
+768057B9F8000359B6AB6421B57AC2E3C77553900ACC925EBCC0AAB8BBFE5C88
+5634D4C146CAE13FCD691031EB348FB11378BF0700DA6C4B917471A73A505F98
+43C64D353399938DA87B02E200E0CCA066452621F7D65259B3969F8CDAC77A51
+4F2939B230DD0F47D05EA1B3FE31392DEC021573B2EE4DCB3F246E67F9564A68
+34BCFD2982084B4A6DCF50FD2028EC2B3903C4A9A3D4DD3377F3E8C7DFD0877B
+91C85EAAC62411E391966857000AECD4087F1FA3C1439CDF032824D6931F48B7
+2EEC80C16B93E648C2C9A6C9C77105D83D37503E99EB06B705D4FDCC88041B98
+C6E5AA42A315B45C0F17A829B8CF73DD726DA6619333D147772070864A5641E7
+7B01A267DF12A87C3C0CC0054F07E49B650D128EF9D6FEE1489FDEFDC52B64B1
+AC59330552885C60F425E50CA3F3134526CCD21B8D21B72B0E72D756B6F3D550
+DB8A4BC39A84ECC82D727971C8A03878C1108C98903ADDD6EC3A54DDB723F653
+19E60E4714299F142C427349F38B120E2E83431F6F616BAA3941EBB08AE39BC8
+B715A5E5CA37153BEAA68A098FC5A3C1A239B41177CDF33223C43DBF9769DEF6
+86809E38002FDA5DA9568B1981653B761B73BDEED50AB0EB750AA6EB45C8BCBD
+79814CBD35A8DEFADF9F37CF2D7E5B4A6E9B4DB89B2BD69FBB926B528701A122
+AE6D636EE56352DF9304D3EAD59289EEBD8CD6C690F5CC905969171EFE6B21A2
+0DF1C9104BCAC3F4C56D472FCFB56F1030A42BB2443827447218E34EC90B905C
+32B3B4A12763484B9E200313303B7FE6DF78EDADF6AE0CE7B329B316548A18C8
+87AC1A1CDED5E0D0FB49FFAF4857F791B6F21CE477F5F93F6D148BECE916B1C0
+CEF07ABC8CCC750A9469841E2E6E183F673D7FFC7CBC2BFF82B0C9DB0A49DA9C
+652BD08190C57019EE8EE9B024B580675CED47D991C93704B872375C1C38C920
+893DF9B0B726440EF7011B023FEF5D04552EFCA1EC40D8A9EB86013CDE8B9663
+943CD6985C08B3402B910EE976B7FAFE4257767BC4BEDAEED476248D30C66C22
+BA495F965FE09163DAF9EF0D856D0F1555E2CF45558D608E00E67E5E812DE311
+EBBF8D54B471B379CC230DCAB177A2D4C09606D3D6F889FBD4856AF1B72716C2
+656186136083E66662154AF87BF09DFE719E2968F08696D52F9EDBE559E8FE20
+AF1240653C7361EF049D7D679B333E2F3EEF99BF35C24BF02B384D53B4DAC421
+793AD158B36467B5BE0F5F268B36445489FB64E204A42BBC6E2D6B0B9C524FBD
+8BD69890C5ED21943739D42E6F8E6E6CB65BCB7AA55A3DD85B3D66BAD834222F
+4BB6107417F2A208B5797A04E5249C88F2AC2A0DBD25F93BDF6EDCEA948192AA
+3EB99B0742FCB8BF67D89842E59493C141045FC0A0C4083573FE7E3C05B0866B
+84EBAB90CB2598666F8D347BCF2CBD66BB856E9E2C7C8890636CDEFD10C7AD5E
+616112E2541C1B3F14876AAE369E14C8910DFFA0226F57E101F75E1D158849F4
+72EB3B796DD56E10E32DCD378E20DE15D02776880032568E4CDA63BEA2983492
+E96A467A2CBE67393D9DE31A91643E32A1AFAEABDE3F1BD824AF15365594F024
+CDE5E3294C6EBEFC5500C3C1D2890C6F0CFC5763390916621BD64B450A1794D7
+DC76B6F175E20B17535D31434DF9C56F1A4177266986A760811FFBAB8022301A
+FB55720D059613D92E877D00F415A4DE8D2D49B1A6CC5D2FA240EF8BD52925AF
+B750D3B9261EB1CAEECE823FFF4FE78A5362F59E21BD96058F4F06A3E95CBA80
+18FF5E4C3E41B716AE9B156685D9DA412ED76C9A03221A7D94FCC6BD612549D4
+F7DF0C0595E73EF8BDE962C634DDA08F9ACE2D434FE0179E902006B691264170
+284405A3AC2B98C7487E369AECC707A6BD3915CF621CE835E0B73743A916079A
+C6DCAE501303C231E70D908BA6416B368B818D300D326629EB971292EDB91460
+669B083D88126F1F3D9D186F39824F68AF597761B36D6D38C201EB0660FBBC3A
+85AB4C9E94E0F0053D8DF411A1592C07FF27AF18012F142610C1719079E0F6F5
+96DC31004A9B21D2E9913A968A58709220A3ED5F6BB01110DC8901AD37BEE7C1
+241845AEDF5738833F487770B4F14A4E5F598F2D6B75080275B58D938145F57E
+135A12BE5F79C4026C5DDD9A12321443CDAFBBAA82F2C7801242F1EA0FFCE303
+2501906D171DBF01CBEDD77A58EEF7B74E37109CD2E957349F47E999D4AFACBA
+96329B883A4F1D0E8333769BF901862AD43DFA1624068A2943F725816910DD6F
+773D9874197D8B76CA4731E1C73504F04CD3F6CADAA05B1A28FF7531C0173C85
+DE28C0F92C691DFA4D6264688B43F40E3D7E2C850701C4EDFC35BF3A7D6029C3
+96F032D8CB45B08EAE6F36F131D0BAC8A355D6E467B47C09C41037BA09BAD063
+2542AA25BFA99CC90D1B7CF74962FF0BA856EC02B67ECD40FB4D9D049A01ED49
+462610690CAC497AFB70E6595A197CFA7A97CA8B0ED21EB76DB5A2D52A6E6702
+C7CF649F03425377AF4A62517ED0F50B2702BEFE3044838F24861CC18B6093F7
+539813470ACE893D830FB9FB53A25397B560433B9867E2812273B50EC908C9FE
+6EA00FF36763BF41EFCFFCCC113C5123D4A09DC3B0046C2BBF796ABA33416022
+952A7A4F464359759DCBDE659C235A9F46B3E77D383FFDBF79B9272110D990AC
+48EF30C2DF699B6B72385A9BA8770B9E5072B582D4EF36A9CD53C60B47954502
+B9BC6601A2405E3CC4E2931E7CFAE3BA6D5A9153E63671BE801F29EAAE187F41
+D402C1B582562BB330409C718642FFA4B8E8B3083D63023209B26ED05C267D0A
+64DC8A630B7C79B773CFD8C8B50AD9BE382EB3632D9254168E3F2BD5347564C4
+6317C48A3676028B9A2057AC97B4272CE1D3DB67ABC1E6D5F4CA8A0CC093F77B
+D07FD84FAED34D2CFE552F5B702A0FCEBA824206B6D1DE39311201B547F7F4EB
+738BEF3D872361501B0DD735EDA4CE1123C48EEB962F8447B133A66CAAC337F7
+380FD2943964CA615306F79DF7296F96C2C92217FBB42F642687413ACA3790B9
+433F54D14F4345B89D57C2DEA3CCBA3472695E8D6C2B6824FE245993C6C189C3
+0C751F40AB4BADBDB686158EA6F840DD9B5872D2A89EB3341D651B3D84077AF5
+801CCF2638C66FE1A81AFAE435442FC9605D8954A8AE0FF69EC2602F422046B1
+1E12F9F693D459C15D451CF8DD2F7F5468F0B0574A3547295B9FBE49C3F0DA61
+1975A7602E76E7A6A7792CACACA5F197000F3387C06FB08B1928EA711A92A2BB
+42B3009D68B95305D2D1B7AA6EEAACEB836C6542ADC8798BF1E4FEC373643773
+48A121EFCC5A6BBD2F1BB46E404C84557CD6125578019B0E30737F8E6D382BF0
+A9A9D6C26BF1258D237E4E9643E56669040F15E23B9501B752CDE3298C23C9A2
+7C66C8A7CD6D4E4BC7349F5AF3AADBA8A5026C96419DE737A547C4AB7CE0F07C
+255F0DB419C423CB737C6FDF67606E45BC24E107D89FFF5DA36064AB77F1E180
+081AB65E041383DD06204117FA7B73D2265056D530F28BB0F795DCC5694E1349
+5CC3B7254CA3ABBE4EFCA1DDD3224DA43A159FF20ADD92F6CAD8ECEEADA9FAFF
+9DE8F37BDC96144BF50C378E228599E20F76FB9566F9768030784B6EDB1FE674
+54A0814F635C97CC3D756692953E025D1A5087C81BEDEFC264408C6D21DD7D28
+D7D828CBB2ACFF0504BC7105008715420279F2ABF7A9670CCC56A6D6E9704775
+465BDBEC2CBC8C85F948D48FD064FA0F116B20FB6D5596D20DD41E1204477A25
+E44EDD175C3B9C27D2A832A155A42F4044C22047F0317355E786E2D7932EBD87
+722B05A01CDF8523B5E2F080931F08283AD0EE933485C07EB3772503B8CA19A4
+DE27C259AF668F687D20065108D8B572806F1E31058FFA97FC9BC8714D2C3DF2
+9848A072E889E69841C70422218A059A8BD33FD69C9E7A20C1DB3921FBCCF0E6
+3740731E40D4D9932D76FEA8D437B5A15DA11DD28F7CC2EE3C864778A7101C0F
+BBA7DE2B80077DA396A820E3E12BDACBDDCF698CAF1CF698CE0A147CD4013CE8
+F70A777E892F5B7B7D283AE83C7E16E12C26812D6F0F6523956316CB4C2DF36F
+186F6A2E2C91EA5342895B978FE20AC8CA1CBB5758B26E9A61EB332EF3240D09
+81395532F6A49F0A86CF85C98A3BDDCD2F84C22E91A4144641295CCF65082264
+438A4E026E18089B6BE9EE97ABE431A8D1B0F36A35BB34D27D3E1AF55830F758
+6E3EA432A75E4CCA457FFA22D787926F1B6B6D988BE3F652D9E37F3976C7BDBF
+460B673C366F0D9A8C2BC3A8B898991036B57848BC0280A1409217E7FD9AEAD6
+B641EF51D8CE4ADE1FB13B17A846A55AD7E22C3844888FE66EB734DC558BCB6A
+D5567DAC7FBBC03893BE048C5ED2FBB31B28A593205F1F7ED43008EA8DB102B7
+1547CDF0A3FCCFE7C67ECD5E824535124A4DF03F112FEFF12C5C92598439F4DC
+82ACF818EB9E2C54EE0BC0DD34B0B64AEDC95C0C3EA2889150D2D2EDCC7E954C
+D76C6702C1C22CC65CCC90EC4B85CBA2328C41A2D93282D6C783BA87D0D5CDFE
+47D78DBAEC7BA8C6AC77182A90D343BFC090E91688BA8DE22D49A14D0E45A767
+9C8BDE647AB5350F8194910480F05A8F26093C27CB0926CF238A005800CBB6D7
+CF30CCF55C7BA6699E5D75853CFF16DFEFAC61D36B21A56C89707AE82890F542
+8C7FF10C0C8FDD751575AC1857B5C4EB00DCC4A1BAD60F4D1F89A3B37E2930B7
+F1A125B463BABFB17E4A6EE00D11AF35242DA39C01EDFCA80946A0B546E21DE4
+25BCD2AA3DD16748689BB607241F41B5879C41070E685066725DE83ED965ADB9
+CEC9DFE18C9255E20169E72FBFF40515AF5F67EAEE20606B20E5BB89F2F65058
+F334A0EAD9BEACA70FFE0322046046DC94B501D1F0145B5D2851D9AD6DDC92F8
+6FD12F02385A64356710E8BE06CD9F726B2D096C84C0A73777A5960DF436EB0B
+07ED400D1147264B6EB94A80C830B0592B7CADE46189ABF45CB74B406D6AF220
+18214F7F38222BC10CC22832749D6DE445EE710C1A43B67349750E4924F9F9DB
+5CA07845B046A110227E13E37F9036DC43F27A40B72A0344627D31026777434E
+6D7144AE61384E8C13FE269CCF966DC1A366933C60854FAA6F36024607C4E491
+E61F56684858AB170117BF8370282DCA3D2B202D5E473B09C51B5AAD555B0814
+D07672FA2F619704BAC2AFE309C25CA0004E842201ECCD918E2C6E83C794E8A7
+4219B80E6C6B660239481635C254F78B33C0C43CD8FD5F41292FB7B624A83C7B
+386607E520D26DE709FD462D613CA4001F96F6344F2E0A2C0A60D95CBEC122C5
+614DC91DF1A7A899CF9C7AC2B7CC39248D4348467E793B6B3F844579704ECB4E
+6454E0708886CEC303C3185C09334629DD4F658A5A4F99EB1F04A38A04ABE3FE
+AC0CC64E6BB4DCDF326B4C8855173E352ACF51B0B715D7FA11AB6C6CE0EF667C
+B211DC3CB4213B41FFCDFA340BEA320668EE63F6A186471B2B583794BB95CD3C
+2EB34BD6AF9A410EE6A292109C6FED778472D5E0BF69C3E19FC181A3AE8B5D81
+1E2C392340B16075BC92927C95553F27FB3AA139CA97A4261B301B21E5F16997
+2F59DA8074809DC7AF545015FFB560C6B96CCC5A5A51E43CAE4DA5233BFC135C
+D64739F727574190C641EBA231DD40FDF770D5F2CFC7D85990CC33BCB2B9506A
+F424F0CCC1BAC2605CF593C8E33CC236D1444D6D6E5624EB164317495D88DDDC
+B135046130E55258522EEF9F11D9AE94C3B285768FADABC84FE197E62F07F708
+1A5410293F04A8A1E3B51F3175D710BFCF1353777411D806D99BDB42B132F636
+D1FA1B1E3A2C99F0A76956FD1174BDABC3A1F1C7E6C9DD3D33A2D2C335F7A102
+4BEBF2D0D481EC96E1D10C0916E31DD65C81724CF8CC33AC3CB0329A248031DE
+073DB425B320836FE52E18111F2DAD3F6EE6F05E39729A059541F43966C732BF
+3267BBA00769A3C71D59284A0473B41AB3F0B27F173E3B44460DB5DF0178ADF3
+6C29A2EAF5F3371349583B49E6163F5EE857E788E4F57B142E413CA4EFA43238
+BC2302B60E9C90733D00CFC7766717B668CD25A09630FFF49F9F369290AFE2F3
+E2BA32BC2DB69B2F5C9084340C54FC68A134FC5D3002428CEB697BD5A7CB3AE7
+1955B3C2D8F5D38620D25E6F371D50A244720391C79A76BFC9E422B6A4B09E56
+B24538CE1D6F5040040A21E312635725A36E6902F57599F1C5070880D9596141
+93326639C8BDCCD6D420979C84EA4ECDB86A4B8B305D4DAFD49CD9DA8B654016
+367DAC29B23DA8097B1B86561FDFBB4958282673E21AE8D6033F6EC1B57506CF
+874607C930E00180B9FE3AFC847527D92E2C8253801947AB84F1832AED48CAC5
+9ED0D5EBE4D801EBA3FE3A9D06397157DCF3B4A2CEE1747B1C1D71BD54258829
+E00EA01ACA0D0983787B7AB7D848411CC700E69ECF9E0C9165258404125D410F
+5D41E27DFB41CD67BD28628515C7CB56F0510CEA0D7FE4478CBB9F80715EF9D3
+5430C110FB20CEF017E9B5487B5B29393556B4A43E37FD8D1617CF8CA5BE333F
+9BCD44388A9040B42620F21CA258EB46DBEB99B3CA1433C12DFFBE78799B869E
+4B61CD4F0CDD44034839B844AA42CCD2CD515D3CCF155C181A1F04E943ADA801
+AC248B10A86F10D7296F40A47FAC36E93A69AFD308E10BCAAF22EEF15E990A34
+5539613F1D8978D824BF65FCA3CA0FF6EF5466CCB433D8F7BA3CAA8D93D5FC58
+CE178D02CEDEC4271F7B93350A559DEC7ACFCC0C9EB31173E4F5014B98181092
+10D63943D266FC47ACCF9A09F4BA0AE1BAC7834F6AD30E497AD32206FC899CA4
+38DAB306BC17A75B4526AB611D8A28F9A9166E6DED42732B6B7F90173E34E8D5
+23549873346DACFA09799B4B8C33D31AD1DD3A90341E65EF5BC9EEA493A05358
+CB0CCE35C4BD2AE8A4E2A09EC55CA86166A01EFE35A15F1CA055D518470559D0
+F97FFFDE0C9F4006959843E407D6867EEE177F3086D71738FE955FD753E8DD69
+338835F2700587A9195D2B7DA1CE96BCD49FE7E5FBA5504432B17124A8CFF270
+F8E615524ACC58BD8408E8F52D62F5F26D2658D63AE46A58AC8B1547747B3478
+032BE8356008CAA1D18D27BE54CFAA5D3AC8246049616F171C10684B4D07F134
+53498F6F5FEBE544495EF5B07841F9ED40418B9287DB19F6888192ECB2EECC52
+93531E47BCD1BDBE705C0F25916CFD28CD081D2492EFDB3A6264AB96498A6899
+F4A4E724193869F53D95753BE7C77B52259304B369DC0538CBB613E67630432C
+D2594BCDF9BE87332AA1A874C31316170F8B0D84E2EB135E958166DCF9EA96D5
+B3DAE2BF36263C65F0F769B5CD362B7D41411911D0D8D97E5DBCE9F65F59BBC5
+1D5A5E95CAA66C567BCCD35AE533AB959087ECD18280487CAA22D36460C00771
+3F855C6AB3C560E4417C
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+cleartomark
+{restore}if
+%%EndFont
+%%BeginFont: CMSS12
+%!PS-AdobeFont-1.0: CMSS12 003.002
+%%Title: CMSS12
+%Version: 003.002
+%%CreationDate: Mon Jul 13 16:17:00 2009
+%%Creator: David M. Jones
+%Copyright: Copyright (c) 1997, 2009 American Mathematical Society
+%Copyright: (<http://www.ams.org>), with Reserved Font Name CMSS12.
+% This Font Software is licensed under the SIL Open Font License, Version 1.1.
+% This license is in the accompanying file OFL.txt, and is also
+% available with a FAQ at: http://scripts.sil.org/OFL.
+%%EndComments
+FontDirectory/CMSS12 known{/CMSS12 findfont dup/UniqueID known{dup
+/UniqueID get 5000804 eq exch/FontType get 1 eq and}{pop false}ifelse
+{save true}{false}ifelse}{false}ifelse
+11 dict begin
+/FontType 1 def
+/FontMatrix [0.001 0 0 0.001 0 0 ]readonly def
+/FontName /CMSS12 def
+/FontBBox {-62 -251 978 758 }readonly def
+/PaintType 0 def
+/FontInfo 9 dict dup begin
+/version (003.002) readonly def
+/Notice (Copyright \050c\051 1997, 2009 American Mathematical Society \050<http://www.ams.org>\051, with Reserved Font Name CMSS12.) readonly def
+/FullName (CMSS12) readonly def
+/FamilyName (Computer Modern) readonly def
+/Weight (Medium) readonly def
+/ItalicAngle 0 def
+/isFixedPitch false def
+/UnderlinePosition -100 def
+/UnderlineThickness 50 def
+end readonly def
+/Encoding 256 array
+0 1 255 {1 index exch /.notdef put} for
+dup 45 /hyphen put
+dup 97 /a put
+dup 101 /e put
+dup 102 /f put
+dup 108 /l put
+dup 110 /n put
+dup 111 /o put
+dup 116 /t put
+dup 120 /x put
+readonly def
+currentdict end
+currentfile eexec
+D9D66F633B846AB284BCF8B0411B772DE5CD06DFE1BE899059C588357426D7A0
+7B684C079A47D271426064AD18CB9750D8A986D1D67C1B2AEEF8CE785CC19C81
+DE96489F740045C5E342F02DA1C9F9F3C167651E646F1A67CF379789E311EF91
+511D0F605B045B279357D6FC8537C233E7AEE6A4FDBE73E75A39EB206D20A6F6
+1021961B748D419EBEEB028B592124E174CA595C108E12725B9875544955CFFD
+028B698EF742BC8C19F979E35B8E99CADDDDC89CC6C59733F2A24BC3AF36AD86
+1319147A4A219ECB92D0D9F6228B51A97C295470093CA270C3B9175168F5F1A9
+C0DF3159598E2D7266342CEF20B1D7A2FE16E14791B4E287FF321F9B1FFA3BC3
+63E7D638862C1C1FB094496395B6EBB00CF22CFC36F7A6BB2F48002F91371910
+3547AC863B33E91359F073CFC9B2D475549B52D89F5E3931E2D26A834FB89F85
+35B24D1CE098ACA855B0AF248C1E878F3648CA2CFA03712F69DF578ED9C1C8EA
+69D46462BCA02370D9A2FD09D7F14FD5FE961EA2094DD46CF91193B32ACF647D
+B12977B832AAC3C53F013E784682EB12261ADFEC0872E9CD5923866508337457
+7F0CE15A46C9A92F0DAE6EFE3B93DFCEDC0CA1ACE8FC02DC646CD01A01F7DA6D
+608F5CE76754CA4A4AB5231D232D50DFE662E538640F30ADFC2BBB3588E8C300
+142C0A0008B34677CE1F880293D9800792867FFE1B4FA14EF495824417015378
+F78191FF7D7AA7994EF153BAD5F3A07D851131A6998B1895529999F8125CDD7D
+86B59EB003502D90EC7BDCE68D373DE9612D22D3B03A8803283D487733F00E00
+28C35981040157C74863047AB1775DCD295AC53B633FF93C7256F60DA7F5F567
+7AF3482EEF84356410460D34C3CD5EC59C2D878C3A9E48F9FD786A5F9D047357
+3E7B22C9647F670ACF812EE3EA6C7620B6D35219200B0CFB45E63B318CCB7FF2
+BD2A6372C24011729B9C64DF6EC33A04A4F6F5F981F3847056146AD8560A7EA9
+82475197C0B977EEDD88FD8921B65D2C8A23CFB6B36BAC2716CB80063296FD68
+5BD495B4F63C787C3201C713016ADADA1E479693C2F427BF0F10BB6AB2F6E1BB
+B758CDE41BEA76EBB0636C01692F6DDD77DA1C6F4362F139ADDFF0837C37B00F
+FBFEDCDB767A8CABAA776469D9BD6E6D9762ECF34D1C3C275D1D148FEC3D88FE
+36EB6C6A620B8E2BA67A0AE80B9715F544D14CF026EF95CB413C0B539C557C55
+E7277455B7AC440ED2C77C1B42568D1C5B6D0D2F0B8404EC9AFBE717B4CEC6FE
+079CE0BE7030CBFBF8D73E55C766FDBC69D3FE7F4FE9340263AD6F8FBA1147C4
+0A97878FD14E3DFCACC3DB0681C548295037E1D768F7EFF9E6084DB71CD4720C
+1D75C5B96C38532A3BC26D0928134D100453D84F6241290CBC6CB5075E5F66AA
+F03ED8DE63A07BB97330A3B3CB8DAF1E9B32E924F639EBBBC592CA23D5351DA0
+032D7BD972EEA75DF2D8E15430511DAA16A7654D9247093183A43E562B99A799
+DDD5D1CB197FBF5DB330367A3C52530EA66791325668F653518443D2A9C78E8A
+544FC9A34389DED4C616DAFF685A99D29934784297FD22290D57FEA0758C203A
+B43CFECC5D2180452F21540BDAF90C304BF1DE08651933B7C10BCA90C8F829CB
+8DF6FD10A29FE4EDE6D20852E7E43C0F5D5DDB7AEB1BF29D30CD07BA36A74931
+469B2ECE710B676E99271435C01D0BC32B0A72BEC454982BBEC7BCA26396DC3B
+2ACA96F836CB6E45AC527C48AF37E1EC4CEB184F7DC0670BE4BF97B56A99D239
+5B20763658DB829C336E369A77617A0A34AFD550CE09C91B7CF82B3A5B652D64
+C0961DB302FC8E79C00F02695379E94FAF494A8FCADCCF156BECEFB40D3D9415
+540A53C6720A67B49BF087BE80C380B95D32277D8A775312160945A2119011DB
+FAD703BC869E2861D622507A65719243E283B88D5CB5C3AAAF8FDF0C7C72367C
+A325ADD8D891B7EB7FBE1E903C371BEF3836C7AA53E3C3802D9A9EA2797D8E05
+2CD51A48E76330D188B409E0A2365916CF833CB86FC4DAEC9B51672DA0C3D789
+07CCD0EC3BFF4DCE1A3769E69AD8D597D87917324FC4DA960801350C839C37F8
+8D3C8CA488A7D0106E11078AC6D3B694E8A44E5F36E2D7C90685BF19447DC151
+4E0252426DD02E7E08501C3EB0D9C864BF32BE2DFB7175D0210BECE87FD50B9D
+F0819710B485A3674BE91FFA670166C6938D20E52C66E1190CFAEF126D225205
+A728002F9DEDF1DFE02131F245BCD9C2AAA82381AE1577FF689D54388A98EED9
+5897DCC7EF560F75C2845FBBF08996A6C4734138E2BB4C565554A02538F32CAC
+A0E1BAA22DA9E9CF73EC32E76581309D4659BFDAE4DF5750459F7D9C28BACD23
+326299A75134A4EC7FFBC92108DD63AAFBCEB31050DC5657B02A4A9DC8BCEB11
+30A800757B3964FBB3B1B354F7AE8FD9F87EFFED5AAABAE605B0662DA3E34E6A
+3FF1DFD75D62F061B0E436B14D85E26CE841B868AAE5197FD4BF93C134EE8FD6
+6DFC807EB3C63E7E09B5E2AE41DCE803B518626015F56CC3B6BF31461B5CD0FB
+5048765834CE4AC08BC587B078EAE39F280591AF10C91113F2F0595F08A7AF0A
+6AFED5036805F8569070A02A4E88E810DCCBE7086AB9E774D7757B9140B6A487
+05D2652D69F45809242A1841D7B8209B04EE3B98E53BBEC660927D79241B67A1
+7561DE46262CD2EA631CC6D586C83C51EFB7AABAB87EFBB4C5DAB2DEAC9603D3
+585C41B6EBEC35B1E04FF553CC386174A76FFD4392F500682A350D65766F2A6E
+B22B54F7CEDA49B214675AE4661C80763B57BDDFA0DDE948A8907F930F7AF362
+01E9C3E09E2AA1FDD6B938E71FCF8BC71F76021275F1E327752BB0792F3A3E82
+7C89E1CABAEE06A91E649D6D4264DE433ADEF3A4FDAAF8467F429CC800B0FDCB
+B33122260B211EEB89B4A9A0B41EFA9D0E9E3845186C09D81C379334E83F3E38
+016EEEFF5AE32BE14C7FBFC371BE767E9F41A4B79532CB791324523B88F9C986
+E68478711DC711ED277B25D231047ED775F7F2DF7A1720BE57BC79F4D4B53E25
+ED3A78235CECA6593D63C067388DF67367D743C8BCC6BF28A6FFD04F75055CDD
+9E643BDB7DB63C41035883C800FE4C90D1D6A5B7022E57D745820555DF933B8B
+7352610F757EBDEFF020D89DA275040B9FADDE7544C1FC5A3BE04BFA9174A6B2
+C2CE4C529E441CD1C89F3E35AE14599B277882F35DD5D4F734D23503DA669A97
+57C456950EFA1EB1B8F0E11D47AB5E3AA5EEB3F4E2532C704A22660A4EF8A6E9
+5EE48E35A7DD8E9D6EED1B650739ADDC22422DA7D5F095F4D2EC83307B18E93C
+46FA4A7E38EEE0E410CAB30FBF589E9108A2C75ADD6B92634ADA85EB42910E54
+556CD86413C0EEEAFAA23ED4313A92D89AA13ED415D3FD0A4C70B506D1EB3945
+60DE98A614B9FD5B708F5998D9E9FAEAA2BFCDBC9379A7529393718912646230
+1501C1BF3114ABB02AF2EB0F0BA1FFFF101B4F168E6126933CBA71F3A52841EC
+19C6319F8ABEC016582DB65B189D69F8B18576DADE57D5007ACD9F48FC6C46B2
+E7788082500CD75CCD0FF4F663025051AFFEE5A63BD8428922BA16D33D2DB733
+4FC629A418D07EA5AB9E8F2928C2B3CE2E7728425829F059BF4E4D9E44019345
+4F93C5C2847AF331E1589A9F6889425C7F81C07B953844C2DE59110D4EF8FB7D
+37CAEE30ECEBB89A6D46423D324D261123D8D8E9EC9BB8C5A08E8348504B8553
+71ED224595A61A30AE73973C3C0959708B0AA187548FF1DDE756D8CA8E35B409
+B56FE1F4DB6497E5D2749177C766A2145A38F89DB483B6A744763D009FE79B7D
+F873BE94A07584DADF0BA63361A01C9679110ABCEF756BF7650CDEE1AE068B9C
+A35DB06F48A851DD67F8A2641B467D2A7DCE760D2A52A57BB022B6C686B5029D
+EA65466EA3887B29E88B221748FDCE289A5D3D1F7D1648EE5275D9D3BEF0F841
+815DB5820EDEAB2CF692BB12E0E06CF6E77850D82127BB182CB2B22A712B0A7B
+2DADD3ACB6EFE7633BEDEF90DAFCF305E1A662BF4E797C1430173040B91EC63C
+54DEA656B6E6C5513590AC60FA6DA144976890940A527A8CC210528E66431438
+6D1DB2EB164DFADFDA0DF6792349726002A351CB2333FA0DD7CB17102451C739
+9DC8D0F2719303BD23B57150E317E6907925C9052164C182BF22AF1DA3DB68AA
+A60DFDA4B48819C41B8F1F63B59CA6A916131EAADDF1C8373AF61EBBF40AE1A3
+561A46D7C7C188D792F8CA53A6731E31D6A437E8ED46916D32ADFEC279B3D6F2
+C4098D3ADBB17993C5EC68B75686546BDF2197CBDF85F6D98895647EFA676EEE
+B4F034F1A5B2E02FB6F500547FD3F619F04EA866305D2E9DB95116EFE6E99BCF
+D090D3EB8405B60FA3CE7819BBEE0EC8FDEB0BA89ED4827F0B816850676B1AA6
+518D89A2E240F89123B76A2FA4B0785611BCFB3B3D52A065F31486F8A8DFA02F
+D4AE04EEDAA7DAD07EB25EC8F6165ADD9BE3C3EECF7A10735E4863BB85855A44
+F356085F624F40553AC10E2CCA29EE9682192635061EB159AC4FDE005CA23170
+2730408E744F13922FC8F6E50D3581E2128593031F532D4AF9B83949EA999CF8
+DC4F827DA0400CC283BB42DD7B5C3FD1BC9B444EF218893BB35FAB0802ACF9F3
+86F39BE308A1FE7E192640CDB41A7C2AD6DF62664E0B65D4D51BAF07EEC928F2
+83F6AD45AF73FBD55CD6282ECF58BB428E70A614F7C0514D86A8DCD947E71283
+D5E389FCB2F945E93F952A0BF65C6F8C4039D418CAB8AC54B1C4EDEECAF9BF88
+67C1B8452629A46E151E04E7A2FA928E5639BBBD37697CF484E77FBDF82B435C
+98BFAF001AAA118A7EBD5DC32F7B24B4AB1F7E51BFB64B526D9330007B782963
+AB27FFEE5F70AAC1FA5442E2D8168C039E01748A039C3A689131FE94F880B68A
+77069A844C61A6C98BB1B4F1590EA2716A1B5C396B50A683341F9E170E3094FE
+802BB1182BB2F17BC6B948669D3B147FF32AE01CD8F69EEF73D1445381ED2309
+A354EB2E29A9010C7B6397255579818A22523FD624EF673B3EEC48AAEF18D74D
+DA99B90E05E5431B6B36F777C5D77BE64B1172B484595562D001A18AE3640DFA
+405BC69A63460C0C837064459E1D4B7216CAE709E2B418647D60A2FFABAA8790
+0FB7C9B846459C1C68F59203875FEF7BDDFC8204D18CD54C272145FE65C966EA
+43B87FFF33225E445EDEAB34FE1869428714992B43E324DFACB816DE195E1773
+06321365C446DA650A634DFBA56A7F360C6CF0D7AF37EF7FB16C21FD2819940C
+461DE8284C44320C48E9837D1E9FF36098B5D244DF3B7CDA03E81647D62B9619
+F20255A91926776DE45DFA051C811D22587AA88822BD9DD7518D2AF2B9BA64C4
+DA24D03512408EF8550E28293FFCF9AF98F32E57B475724C9C7E723FFD364834
+D5DD514065392F9B2AAE36B4BAF5D017F36EA730DA4FA02D2AAA3704C6715919
+0BFF56A8F70F73F63AE796DB52FD7F861E9486ED170B5718A96AE2F50C168F81
+277899992A9E8E8B2E30A42B4389CD8A5BE57F5C74CBB0963D99A23E8024D640
+EE408A699E8E0C9BF7C5A2D72EB716C5EDFFD75798695F26704E9D5CB4F84FE7
+D02407ABB81DB79A8DBF52839D28E4C18EA548C1163F8DEF04E5B400E7E4AD0C
+B12195B21898D241A158560DB4DE0652FD1C0189220A15F2D3367EA1340CF29B
+CF9B3E1191E4A6FEFB3965DFFA22A1278738B1F84CEDCBCB2BD50D2B2EBD78C0
+BF95298BB3A67BAFFA78FE0C53D277665EAA3FF29C2DC7DEE1070C71B9D1F1A1
+0D8F784CED8C64C9F7F1353625B8A20D9998967044C40ADDEEC59E604DF34B6E
+541B242534176E092AFCCE4376235F5078CBFAE6E780242892FA7CD38F05110C
+E18D82329631BDD915D67954C5EF38239289D05BCB5447466554809184CDAAF8
+72FF8C9858B15EDDE82FBEEBFE4223EB96731EF7E7E03289A818DB17FF0F7055
+0881E02DAAFC64C8C2D90A54238F00F4BBF4220435EB9619AA788CC0F45721A6
+D659A1D2F0E4D6565DB68B522CB5DF1876D750F62E1724BE71175CD7E34489CE
+26B2D193392BEB23D2F7CC570D53AF94E157A9B9980087A36D35F7B644A04E15
+992803A2B7A629DBC863D890C85F4520FFCA5B253333E78DE36D8DC1C1559684
+96F1B4ABA8729A7C2992B5FAF2DD6AC96B934A7E2933F902535F5EFF762518BE
+68D73EC2C947D47C55CEBD77842D472703A519E08A0CDD731179AE74425AF46E
+7B1924C3C418A01A584202D71B6971FA8115353B77FBF830EE8F526166204CFC
+467B0678093F1C99361A95F76860E5FA170FFE674314C3EF05549E5B37EC7925
+A770392344B531E799A4B3FF2F7CDEE784DD83EE019E72B93D1CFC8E0A22AD9C
+EF7683BF07123573E2DD156E38DC7C9E7BD934043A78E6BF8B774F2A41734082
+47A9C8CBC6B90CC3849160963575DA80ACE6FF24CE7030F2ABE7D154F0136D25
+8A7063FEFCA0536DB608D0D60932BFD670CA642FA6FCDEDC699B264729DF1B09
+205547869402464424FF3D9DBED6F0E4300E3E7238ACD91DF0E7D75BE26D9633
+A318695FE6F38E564A5550B1D88109954AD4C18DFEF5F1247E51EE10CA1D515D
+E7498B7813DE16A1F0C0B7EAC9B12867E736CAF5DD4B0F046C037967A52296B5
+A617B3D3F9E2A8B4A3055A56A2822269CC563348D2E3917603E98EA9EADCA4CA
+3B25AD1C1383ED759EAF4D36CD00A9FBF59CDA77057576C3B17FCA601CD9907B
+6FAF24443FE8EB53B6A73FEA434AA8F6EFEAC96EAF36B67537E7C2BB67870C49
+A3D4EFECA0491A8317DB36B809899C713F8D5AB2D4E7E1FC61EC80AB862627CB
+783D35F2E9F125909D4C0E2E738DAB7740776FD0686F6EBEA3DF9A2B0C51D010
+D1EBA517A0E69619BCDBEB06FBABE70082449BA53C10AA86EA4B7CD697309D9B
+D10BA8E876680DA091DE9C9D6DCFFE367D80D14DADEFA67B59D7143888AA8C53
+1FFCA518BC95086BCDF146209B4861ABB60465A6D6C78BBB404C3E7C1112DCA4
+9305087190550CECE3EA832D0712C0CF0B61192675CD247A2B5701A16E75C857
+A4C178A22A1D3DBED9B521B404FBAB9B419A719AE42BDC1379FB0CC4BFC871AD
+A4F7E7C05DF29A1DCCE36AC9B4BC32B9920AB925EEC4D356F52090CC4A6936FF
+4A3748F709B8F5C398ACAE3751FAD82FE555F958CF43B6F73B16AA7D68BA02FE
+9DDB752B3ECE4052A653D84AD8BD66E09AC5FADBFA18CE0F2F1DD4189737FD42
+1E32B534DC5E3C6862B1D72AA1318BAC7F9DB1895E6E381FBF2670356182800F
+375922CB0B2A22617DAA12804F620541DD272F9A6C139843C84A33D9BF2A486B
+013E52CB05D9017161827203DBB820DA90D9A8E6851E95719B2D4F1BA81CB12C
+E46D15A6BF84F58C48CBEFC4D3E3C5532EE8CDFFF85AD6343D2ACF82C9087ED9
+5461F063D846D9B7F9191441037652147A1FB0E5DE51F07980058DF9F5670809
+01F3FD83C1A5D27D298B6E57AFBFDA9576EFDF1F95D82E70548C5FB10AF7EA24
+863D19438876D55950F9516D7AA746CF61E60CE24E08E6DC996E9F3C45D51959
+49F4510CD259F52BB087AE3539D66ADD238985FC4A770E9CE248BDA4FF5FAB5B
+B4B336BA1879CAD2EE6D783F3ABE68AE466F1CEA1F103C20FB7C9CD0FBAB2B12
+ABFDCA5081BDF6243568FD63D98230C21EA5D82652AA00322178C0B8F3808B87
+D38C4E8EC303DD63864D17622873C25435E8396051D09F767EB0D83096C78D90
+C44DACFC188EA312D672CB43CC538CB80F4E155643DA96831B0E420FF2F6227E
+DB76DF562284CB2141970D34822E321C25140729BEC5D882E212CA38625B8EDD
+68B9B6038BFBA2BCACD038FEDCAA58CC5E3B4A60D7970B7920A77815A98DA5BC
+23DDB9FAE35B3F807F0E1E1136486D823D64BE32DE4B92F3E228C78B8866192D
+F45563086FBBA428BCBB7CDCC3B0DCD52FB71984263646726EA5AB024774E44B
+ADF912F9E30F49D3A8FBD63C501BD04883F80817CB20C2ED8F04F07A51A96499
+663C88B604B22DBA181F64336DB19F3D0AC1DAB9EAB21669397A488CC92F0640
+CE6A8AF32E9BDB8607D766CA8CACDEFCAF9A316FE78D92B60DC4BE164A03C531
+F34B53DB291BB2F6754DAE04E8C4F911B346B8EC57A4DA26D80D31ECB2901006
+FCA067BD5377B5734328533AF9DC509D70F0AB9EA20C301A0DB7BCC3F49D6072
+E15BF76A1812E932CE3B50F0179B013150BD57032052DFAA444C14BEEA12CEE1
+BEFA574643EAEED50C843AE02AC966F3C4AD294D52F199F9C7094BF0EAD8152B
+F747AF7DA9BE8A1587A7BC96C88948AFDBA815E9F133322F471CD166272471D2
+FA90C418428EEA7FE8502D8A61B50F46B5B9122C6B9BF4310CB34A64391848CC
+391F73B1DA470B4CE15673A78CA8CDAAC39FE833909120E08EB1F262505F2321
+B0743143F2F1002AD7D2F05EE659058620D20FAF3916DE4271273CF39110B40F
+EEF6B961452F14E31F619F5E4225045A6DCBDC95FBFBD335A3EF9BE83719532B
+3AE3DE77086647EEF3B23273F75E5FA905C17DE333AF2B4D7B954812322405B1
+3681292D7E99904F799F1D430E724A434B9D811E6C02528C286AE8F24BCCB9DC
+5718E8283109CA88AACB869123087708018EA13E7145AC5B4BF8500ABF6AD55F
+4CC926B3C0A04FAE51E9B06B463F8F79653201D752DC07EA3A7D588CC01735D7
+EE5B915869093BFDE2333DC1EECCDFFC08207705814329DB4B1B53DDE1CABCA6
+DDE0364563E6854FB4971F1B61977BE48CE6EB5670B0ECDBE2ADB6FAA8D103EE
+17F33E03CB22DD75279846257BA63DE1310D56EA91C91DB05D00F8395E3C8735
+32654478BC33D4267B154CD0018983CFB5094F22FF7677AD8C651F486E5C0E6D
+3576CC4E86F059D5793E6566EEF24609855C1D0AB38A76C092919E921C69B87E
+D5B37534DF52BB57A542856BFB026E8BBE96A826E14E881F766E7D70A80C9220
+5B5E03EABC0E6D47571B4E29BE74C33662EED149E5991A51B68E8DB15D881BB0
+9A6BC3A905372E1E6D1508DBA09353828DB507C9EFB8E60406EECB972CF58C53
+CA179342106D83837FF4BFFC7FBF52C4E206FC6A4C4F46B1542336722E3D5D73
+6190A1802221644EECCEA8564F418C258CBDD90EBEA708936B8F41E92B49C6D2
+002E7A5DAEC11466DFABBCEA3A1AE5405B0B613FFBEC11A4C2E81BB9548C7003
+B58E9173D4DC7E394098CEB41BDBC591CE47CC7D590B08FDDEBD2F5A4AD7F89E
+ED28653FD365AEF12B0AA672BD55870128001C87D374B52FAE7D5C71BB9B8383
+7AE36C2372F0000D4A502F6CC7C688F35089C1D320B5EFE4CE52512B099B98EC
+C0CD643DFBF5CB4057D3326B3F99E69392C6F2F6C635A2C1DEA4373451019973
+E5A0D48288B32A295D7B0F8B9EAFAA47F017CAC9342E7C5B0F6CDE95BF698B60
+14F9647CAA29598FF7A6958C93EAF8F74FE2C9C84BFF89D35B34E369D46289CD
+858676FBF1431A7DE98954CE5CFCFC4242C028B782F2181EC00A0208763B10F0
+D61AAC58D59AA240A4E321A6E8C13A75B4FF54CE92C8EC02D635974C58C9B24A
+381320B835F15DA7575C9668C9273941B38A9A4D66765DCA4BCC5B872F9C0FC4
+88985B4EF27EB72C2735A5C563FAD37783A0FF31C8191A2A9F426EBDEAAE209D
+0EB0233966790F00FA25A528A6001019B19779D2AD76E250716A3100DC98A5C0
+E8B7F630CA10C74DBDF318288F02169B218B0F002033DF175A6E1F64583C081E
+C01EBBE7C887C6E4ED889BF7BCE5F9C823926F6B56EE5E447BDB691E037C24B2
+65C389DC36EF0512BA3E9F20A94BABE996D96A43424C86DDFA97985BA9573E8B
+A83ECFF0581CC4ED0D50BF3A28BF4930039DDD25DE50C838
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+cleartomark
+{restore}if
+%%EndFont
+%%BeginFont: CMTT9
+%!PS-AdobeFont-1.0: CMTT9 003.002
+%%Title: CMTT9
+%Version: 003.002
+%%CreationDate: Mon Jul 13 16:17:00 2009
+%%Creator: David M. Jones
+%Copyright: Copyright (c) 1997, 2009 American Mathematical Society
+%Copyright: (<http://www.ams.org>), with Reserved Font Name CMTT9.
+% This Font Software is licensed under the SIL Open Font License, Version 1.1.
+% This license is in the accompanying file OFL.txt, and is also
+% available with a FAQ at: http://scripts.sil.org/OFL.
+%%EndComments
+FontDirectory/CMTT9 known{/CMTT9 findfont dup/UniqueID known{dup
+/UniqueID get 5000831 eq exch/FontType get 1 eq and}{pop false}ifelse
+{save true}{false}ifelse}{false}ifelse
+11 dict begin
+/FontType 1 def
+/FontMatrix [0.001 0 0 0.001 0 0 ]readonly def
+/FontName /CMTT9 def
+/FontBBox {-6 -233 542 698 }readonly def
+/PaintType 0 def
+/FontInfo 9 dict dup begin
+/version (003.002) readonly def
+/Notice (Copyright \050c\051 1997, 2009 American Mathematical Society \050<http://www.ams.org>\051, with Reserved Font Name CMTT9.) readonly def
+/FullName (CMTT9) readonly def
+/FamilyName (Computer Modern) readonly def
+/Weight (Medium) readonly def
+/ItalicAngle 0 def
+/isFixedPitch true def
+/UnderlinePosition -100 def
+/UnderlineThickness 50 def
+end readonly def
+/Encoding 256 array
+0 1 255 {1 index exch /.notdef put} for
+dup 34 /quotedbl put
+dup 36 /dollar put
+dup 37 /percent put
+dup 39 /quoteright put
+dup 40 /parenleft put
+dup 41 /parenright put
+dup 42 /asterisk put
+dup 44 /comma put
+dup 45 /hyphen put
+dup 46 /period put
+dup 47 /slash put
+dup 48 /zero put
+dup 49 /one put
+dup 50 /two put
+dup 51 /three put
+dup 52 /four put
+dup 53 /five put
+dup 59 /semicolon put
+dup 63 /question put
+dup 65 /A put
+dup 66 /B put
+dup 67 /C put
+dup 68 /D put
+dup 70 /F put
+dup 71 /G put
+dup 72 /H put
+dup 73 /I put
+dup 76 /L put
+dup 77 /M put
+dup 78 /N put
+dup 79 /O put
+dup 80 /P put
+dup 83 /S put
+dup 84 /T put
+dup 85 /U put
+dup 86 /V put
+dup 88 /X put
+dup 91 /bracketleft put
+dup 92 /backslash put
+dup 93 /bracketright put
+dup 94 /asciicircum put
+dup 95 /underscore put
+dup 96 /quoteleft put
+dup 97 /a put
+dup 98 /b put
+dup 99 /c put
+dup 100 /d put
+dup 101 /e put
+dup 102 /f put
+dup 103 /g put
+dup 104 /h put
+dup 105 /i put
+dup 106 /j put
+dup 107 /k put
+dup 108 /l put
+dup 109 /m put
+dup 110 /n put
+dup 111 /o put
+dup 112 /p put
+dup 113 /q put
+dup 114 /r put
+dup 115 /s put
+dup 116 /t put
+dup 117 /u put
+dup 118 /v put
+dup 119 /w put
+dup 120 /x put
+dup 121 /y put
+dup 122 /z put
+dup 123 /braceleft put
+dup 126 /asciitilde put
+readonly def
+currentdict end
+currentfile eexec
+D9D66F633B846AB284BCF8B0411B772DE5CE3DD325E55798292D7BD972BD75FA
+0E079529AF9C82DF72F64195C9C210DCE34528F540DA1FFD7BEBB9B40787BA93
+51BBFB7CFC5F9152D1E5BB0AD8D016C6CFA4EB41B3C51D091C2D5440E67CFD71
+7C56816B03B901BF4A25A07175380E50A213F877C44778B3C5AADBCC86D6E551
+E6AF364B0BFCAAD22D8D558C5C81A7D425A1629DD5182206742D1D082A12F078
+0FD4F5F6D3129FCFFF1F4A912B0A7DEC8D33A57B5AE0328EF9D57ADDAC543273
+C01924195A181D03F5054A93B71E5065F8D92FE23794DDF2E6BABDA4215500A0
+42D1A3D0D02C0C98BB1D6ED0B7791274C38B038FC7921FF1FB8FAE7258C09259
+4B8E1BD9EDCEDE9ADAD9BD9598EEA9691589649A9A21539161E374075BEE3457
+689F308A4A7AC9F2FE4B301A6C36B0442FB92E3B002623493DC087800B5A0521
+0DB96A23175AC584DE166F59142779F26FEE9783E28DE49FC3A8D6583EE63FBA
+610DA773CA18ACE6F64A4867A1A7817120ABF9DE4D17782866E6CB6B65A9F6D8
+3667C8D3E61E5356E35343FDD4C6436DF73934470916CB5F0ECEA6BFF092E735
+C7C355B56189D1DD5715EC97E50145FFC17BB1497315A9585D713A7A6DFC7933
+995468EFD0F59E3C15865B87925A3F2930E20D5A35970E2C44F1629FA16E00EE
+EE21EFC50D49F5BC02300D0A7BB85E649CB4E2E828C8B1C5469463013E71D723
+2CB11BCBAC191AC751A2AF7FC228395CE9472DC1809052012AEC2CD66695DAF0
+4CA04234F0187F4116C93F59A7F1F8123DE87F111853B785A20CA8B49B3B0CEC
+B11AD345E1A11578D2EFEB0536D125237086CC8CD9F34A5137AC5DDFD8746014
+D74AAE8239B81ACF65F379CF2153B06A238A2D767F294CAE0D79228F0B7D45CE
+510AC9657A1776202FEF42F96D476E7DF407786AEA12DEA0013D3B4C5D0640F5
+BC5BB72C34066270399CE595827175B23B25072723BD24E07F6BCD9EF0175DEF
+93714BAA53960F81103CFB731CED4A267B53727BCA3C97B0BA5004055D4EF0EC
+F725658E53AC86E4061B489AD4154915C3981B3B703E1E2A8D390CCECCA99385
+45EBE35441B062D7D12DAB2B31569387187D74A4043FD71F1C6D352EAE0F6757
+4345FBFB6DB15CAE47CAC4BAE47AECAE5FF5EC19057DCEFA1B23F47364ABDF47
+088A7C6A2AE26B10459B6D41CB69182FD1472F326CE3A15B59255D1DE3B616D8
+9D1F12561038839781E657C896B8C58A32DF5AEA23732A0966D96C68C988ED7A
+09B7E2C8F9F3D0D56879764781566299A4EDD3588BDF70E3D924D25074F30988
+E35BDD827AE4D0B4A06F55A9976BF0DB3C0B1D09CD08E8CB168B50617691638C
+0EC1A791C228177D4FFB021EC3DF5082CA3487AD2EFC8DE9466A690ADDB4C52A
+FE2A6DB4CC275CD33D9136E735279FBB2008D59E667905EBB04326EC33C98B2C
+94744B7F540D86E90DED64572ECF1EAD3A58EC101642B245A9C7232DC8FB8741
+03F97883BB32FB955C22F878FA0FD114451A3B3859B0B5537AFAB73AEC7DB2BF
+409E1FB41D473714F6BEA73CB085139879FA31710E01915C2938C37BAD6D7D71
+45B897E00857D3931A489EAC7B42BCE4E65F73F67FE027CE482DC47598ABCB95
+39E98DA8ECA3E23F0799D5963ABA6E2984DEACBE7B46B40ADC6213E0F4D08971
+58F68C946C748E4B4217CBA2391BE2086C9758F4E32C9B6413E48D84D33A6E85
+84747029C0A9C9B92841D217A902BA8EB333999D62FDA9F82BFC8ED11F67988A
+0CAE42182E414A9766AFFF4B046A09D476F8E3F15A8C7829BEE982D8350BDF5F
+F215F2BBBF68D4B567BAB798B9604C79306C475926E9FEC0F07A99F43473C6FD
+B15AC29C3D07FEBAD1BAFF75AAF2FBE94F104F1DBF838044FAD94B661B06AECD
+D9AEBD02B60CA4546DD6B5B5C1A3833ED07845671CEFCA8955CE0DE5DB8FC93B
+3306683CBFB8E5B79A863DE78D455DE9D592043C2686F88A43140F8B9F3B553B
+7047420E93E753829F8D47AC7621CFE3626F271E31F0019CC02D0B57F67BB47D
+8CFB63E902EA3231C00EC66EEC0D30FE8394558BD3535C888C4CEFC6EB72E737
+712ADC6300162D5D79BEE0CA1F6E4127A0BC90656C01692F6D82C85550AFC97E
+C2693E379160FDB9636FA41AE9C75B7F6643B05971C6D67CE30971D590FC07B3
+E0B36B4D1C7F25110B5DA2130D574FA292B47322975A2BADBDB39AAE69BDDBDA
+A880F9AAB580117708C79204DFFDC08BF4A48919B5C22228845CE8C3109E93AC
+2479E523B8A1C12A6E541118F121DC6B4EAED83491A03192D5C3A2A45D1A2467
+757E7B377C635CF5CAE11A7CB49D49F3A1BB2286090B5F0E4F89869D1771D50C
+54B5C5E091E3048A2C194F0ED00DD64FB95BAC6FA9D61ECD093ED416DA3A4981
+DB07CFF17C4F55C62DF628EBFF06FAC3F3D3F91C30EBB34052BE1A08F5EDA4B9
+08977197950A282B84E21D43C64BE3AE4BCE22C70E7D392DE09D89B7F23351AD
+6AD37225C12BA79EC9951F5DA1E505DB26200190ADE0E549305B7530CB86EFD2
+A896F13A97E51754F70B609CB4511CEFC38BA579C071E9510A49982389980DC5
+336D6C4A2DB100DFEC4055C7AA9C55880F94FBEA9EB280BEF66CB8E1E38A359D
+E5AFB12B540CD599085ADDA7FC2C72E7C873015773FFEECA2C596B75BC39A3EB
+3C43FA2E53C0D7993042F3D652BCC483E48B7F6C94C3FF6D38E276086A6AE67A
+E5A571B9C72E0D7824E0BC2ADF51A393B9E334649F786EC1923C854382B89627
+1B9E701AE5A6C42E672B2C6A33C8BBCA8F69B9061E787D6B92183F20CF4C3903
+FF5417427B84798C82BE28D2C81624E3920CA61EC9EADB364B5A6E50E49A1A72
+A9A090A1FCD84814B8B2708AD787D2B5015DA1305874F58C5EB62F843685FCB6
+465FCA80176CAB2B2FE65E0A270BCE1E3DB97564BEDFAE5CA44395A8DF4505C0
+3E103CC3B914359B2870DA6CD30382EAE8949131CFE31E9E75C3E47A3834BB32
+CF183D4A8B9001710D0A11390C9DAD116196568591D38C2AF4ADD852F31494EF
+573462759A35415900360882739789D6B89ACEFA251C5ED90ED704DD7C3C80CA
+9F6CDED69537D201D520C99E69EEAD5D3C0EB84C166660B3C190166D93EDFE6D
+15BCB6DC5CDCA825E48D33845CC2FB15291AAB823F25CF8BB0A1EAED8BEC524D
+D9CA016027141FAC9D35B64FB9C224552F29EF6B32497254E319090E698FD8A5
+15491CDFE1B988C79A0E3B9D01E12FF084E9FA86CCAE02A3EE6F2917B61A2CC1
+64B8CAF309D1AB48A34227A7729DFF99CB6EC282E3FAEDD2673779AA7E4C1789
+D93FDC37FE95F087C5F88F53D30A2DA9C913BF205FC6BDD060A40184F4AAEB3C
+D080D63B89CA3DEFF310D09EF0A83F3914BD5B7932980ECE139EF0313C20B4C8
+576EE0FE3F28FAF4D3CE7CD0890BC824A85B8EF4636BDF1EF1BB519F93D36540
+ED09FAF93FD71992CA2CE2E83F5355162ECEB32AD218092F45D5A61A44E67135
+EF0453589CECDC6962D0E8DA7E7567603BAF50B2C8F1CA65EA5320984E7D69AC
+9A7D3D7F92565D79E8C9DD2D92CCA7DE9CD058545E9F98AA47904D70E1897099
+3C4C852B3BA131DDD348433C336BDF5FBDFB62120DDEAEB3255E3207B0C84A0A
+1ECF9EC869DB9BFA3693B03FCB27C5A5D3CDD62630DEDE91B4DD5B9784BF0BDD
+FC6EEC3FA7ACA9E15FAE47CDD9B7FCD2BF0EFA10716F08C0AF25FF67CB6F9598
+C607D2FCA452417D2C69DC808A9441A66492394C3450BD30632AE739EAD654BA
+4343459CA36B6D5B2C12C39495952F2EF93D82C73E33236785A79609E260C4E0
+CF3A3C950DE71DDC3939D42DB1CB1CA917CEAD56979A70F8F3B207C805319FA7
+3C000AE2B21D711A6D78C7BFB901334DC06F59EAB6D94B507734C27971F8458D
+D00193645AB92FB8FE163D5C51AE4F40BDB4F2C51691E76EE0636F071F37AAA9
+BA78BD12459CA499210EB0CE2F8BD317387797C33F5933AE7A6264DA06B4A6A6
+1188326147A16B205D1F965872DED7D8EDB3294FAD2FCDF0D423329E9CCF879D
+4E0B966D509F45527F7609DD09694D286F6FF7535EF8971B7DFBAF608A19D442
+C133207EB1152ABBD11C455D0977F66A9B73E51381D1CA4B66E87C0C7175A63D
+80C699A052F00C41DAEF42E7A40E07B1B14107AB0787E24E17C1462960E3C54C
+AE73BE4924464FB177EC62F116B2822842541543EFF7ABDDEE197D6BD8F8D4E6
+59175D8C5957550B70BE775AD52FFF6E7C00DA7CDC16E1DF7446BB5D8FD82647
+3E9F87D5EA365C82A2D991321ECB14A9E3AEADC5A56665DF7072D6DAE402BCB6
+14D92B17F9E063E4E9D8D239C91F5C7C0BCD2FBD936C9D4A0B57659420343B59
+B395BBD1AB5B6003F653699D57E7581F9813CC98D4F072FB78899D6DECC42D34
+F2787EDEA64058B46C4BFAA2BB96E9BE5CACE8D91E4C080ADFC0FA0D4A29C6B8
+54FEA9E11DBCF53D9CA40A21AE5076451EDAB3593E56B6D453DC8EAB8C78B588
+34D4C4F36861B5649BC1E9F3091E704BDA7613ED45C911DFECA74EEA05165191
+825F95A947CAF382FBAF01F3B8B041ACCDF39718D7DC5BA6CA12BB20EEE96439
+BF2E2628AA3BD2C91998E6247A690FCB0CC95F286F427345CC4F1115BA3A6E54
+4743355F2CC991CBDFF5725902C1F5A6DEFDC8638A26EA456C33C27773D6214F
+66536CD2E44FD253531732D5A8C44B336B1BB47B0477350EB8CF74889B93402E
+2356A9CAAFCA562315D8E0B3F42F08932CB87BA2499A875AFA08D11DA73B38AF
+F46D03B7F639A8D7BF88CF07FFF4E91716DCCE6E2CCAB60A64D5E40EFD8B336A
+1BFCC4CB04F49DE1FBDE7AA5B2092A6EDBD913D161A3271AB6411622D0E14416
+37F81E0102F5B0F2F9A2B27819E4BACD7C50E29D6291AE5B0973C657761545A6
+741729620EF2BF1046B3913399C10982EE5F4142CF461EA31042E432CC79A1A1
+39C607D22E45A6DEC008CB4BF6007CDE9DD5802B49A62C8E02A6D448B64177CC
+887AD71D171B99E7ABE2085B37D90B3BD8513995D9A57F53184DA474F6DB5E49
+B73E04CC214EA5398DF7D7541F94E623E8687B511640457A48A68E9D9D6584CD
+15B57CC044D8091C771D175F2EEDD411099BC8F7B4317DC503BB5E405AEEB526
+5E6E1B1F2705275D274E012A98F66075CEB90AFC648B964DDC0E9C4AE7B24CE1
+80B051022E5781A533A21DCFB97893847D685137EAD85BA708A7E118C72FA839
+A9E460B5D17365A0AF1F53A98319FB64A5819B087F554BC056C4BE44113A5404
+BEF759F890C1CA5E7AE156F4F8106FDB4F8DFCCC640976983EADB30976344048
+2A86D7B2AF4A01CA736B98D52ACE392AD4BECE7E61C710B08B66F01857CA460B
+B8376E257113E10F6DEDF14CE2A4E6A99ECBCD302C36CADB713D849EAE9EB598
+F29DC98531D793B79F83091F9B136809E006F34E423D528CC4309AFFB3EEB47B
+9A9DE4D5B25CE953345C326BCBE2B4912641780637783084D3D12693F8135483
+CBB0AC4EE0B5610D7CEB7DF205830BDB9BB404DC1B28FB0824CC187B26C19A91
+DA0025EC739BF3993700101D042DED86D67F5FB87912CFC51AA7DF53F2162D62
+6314A2CE13810D0B8D81F45771391A236422CFA0F35F7A0CDF14ACB2724AA57B
+7C2C28D53029B1146558610E0CFBBF72A85AB9BA308F846228F299F13F68E8F7
+D963B2EE9EF7D4C21690632B640BDDAD0556EFA4EFBF035F13377ABB5CBC280B
+9E0C12AACB153C93351E5BA95A7D149010E204950A59C7FC6581D9703468C1E9
+EFAE37E7E6ACB892B3F8D1248D9A4A72F642FECC5E0B25C15EEB921EDDE84D12
+0E524FE6133C4921FF4921242392C12FBE69744D53739F7E849C1B96C4020AB2
+1FF10DEA608F111749E2FBD8DBCB17F353DCB3075B4F4B8186963EFE95A76A10
+85AA5BB6DB4095291974221829A8E436680F4860E01C3843BE5BB3101D0869C0
+EFCE08D187BC04F58C7A450A59093680A0F09E8E3F12DF5223E7EAFEFA01978F
+D8354753A68022CC92C71F2CA732DADAA8A466D4AAE5999B0DC077715671F518
+E6277741F44AE798EE50DF44CCF71FCF8BC71F76374005FEBC4883C6EDA854B0
+88C0C2B476709AA809ECE41AE786DB1A32B3FBBCC14921673578D3514C8CA842
+E1FF90BE33F7B93ADF6BFB8B1AFBBD080783BEF056A6BFAEF676F7BF9F2DFCC8
+01D255A9F0391951210D60D4D4DCA93AA858B38C0D7B8FD740D5FC6F277C2A68
+54CC2DE1F40B6347201FCA2A0A91822708D820CE645C3E4E5A09FE25721AB33A
+97871ED448F38FC5A349D81F402B34461D840D5768BFC6849439AB6115104F78
+B87115B1DAE12542EA898F86ACE247709817850B067F537E6137196101D46DD2
+D842EA03EF4501E34074E8458E638ACC4EB349A7430AB035BEF2DD4CE00554F9
+18F9FE32A55AC1E7E50D64AAFDA278D77A7149C59DC5B1E3064A4B281A54C9CE
+A5EA94ABEAE4C6D5674C208ABC72563976487136AF2E21F835BEFD232D7F0D13
+1D19932367F51D5379934DA7F1635AC51EE5CEBFA63D4D32F018DEF13624EE62
+31DAE68A08DBE3B4FDAAFC75291C8C6CC7A657E3C7453C7D1461A36E88E633D5
+408253B673AD87A9FB2D0F56DF1305916D14D5DD62051E27BCE09CEE9A1F14AF
+1D7164BA5FB6E6EC8D38750F7E28BE330909F303ECDEE692E347DE13C8C2F82E
+29C8BE6EFD76546F362A12A1C2DC12389EA95ACB4DCBE95620F0C193EAD91B33
+BAAC5801AE827B9AB3FCE5D11D1D7854F8FA8A31670119CC0CA98628F801838B
+AAC7EF90AC5466BE69CE3E3CD9951A5EB9AC08014285422F6DA6F6E221BB30F8
+0042A11F2E4B765BB0D142AD52F4D85785EA71B2E1CE20728B9E9306CE93268D
+99B822A5AB5232EC7E26EE1160850AD3905864A01357F22722B6A54D4EBE58CE
+480EAD9FBF068EE965AC4B5FD2FA8CCB91ECFC6E90B9C49268CA0B0FDAD23ADC
+D5A74B41149BB08454054C451AD0DA4CCF8B60F2EBD061AA03A011D548B6B481
+FAB00AF9225BB5463F27FD67333FB51F8664536267E95CFAA0BE3BC1B8F889CB
+587A3A4FA2B45864F07E11372C9507A625C0030EF7030A0B4D931BCC48F6DD51
+A4D1F63FDC4B59C1CB18E6242E9F4B4B8AD9755B870FE60D640181FB7EB8120C
+C56F51DC8C47FCC6318C2145EDCBEFA7BC4253315BA67FD2B3D4AF6A9F3F229C
+AB75B592EADE15B1FB5FDBA1C0F786BD21A51506B7A2E42C2D086BA6F84D1B3D
+AC7531545F0B01346831FF36A52CAC1E390F99AEDC265B44B0FC9C581BBA6BE4
+48B723811EBCAEA5FEFAEA7E5B987F2C7B3E9A65D2D14A7B74F099401C57E367
+385352D0776D2A908F7A5A2E4D4160946C5591397877025C8C387CA413EFED56
+8B142E8341E349DB4DBA422A4FEE56A573972A0C66590175158E48850A9F7F38
+4B95726787B8F969FDBC97491CC81CABC976CD00A27D1DFCA7CF467A956C1C6C
+839817AEF8794B6151FAE9261119DD5DB787DC9D3B420FD325ED6599FACADE0C
+320D54C2E0D296537E22C1783670A9D9BECAEC63853EC2F05A990260DC189D63
+7CCC0BDDF2CF7585071ABAC14630666737041194D0777EA4292AE60BD7F7100E
+DB568C90F0D899EA006CA423CFFD6EC70A5D3D8AC43C747DBAD3B02219E47D8D
+DE030631F4678C357A58ECC52782B31B50CFD44EC33F41585E51B27E3997D33F
+461BEF897220AEC80007F13C5A1EE3A0430CA899047DF944831F8B010A7DE74A
+BFD26001472DC00CDC9F17CC435F61ADAD4E9AE062ED477FC621FDDF9242C449
+1BB3F77FDD1519A251B663A693D84B42BF0962F537757F38CE5C5D56B98AB10A
+3B70C8AE8D52DCAFCEC22E7B09D3C4EFDA1841C74CA975E4F8294F7BDC796500
+0ABE197ED3737A65F7BAE601C91DB3983EAE11DA3EA18ABBBA3650DC361C2E77
+EF9F97618B0C337A906FF39926D2B0B7883ABBA650816C4C6B34EEA836994EEA
+AFEDDE56E0099D0E09EB88EB093544B9BF4871200746A0409C475FC4232A38D8
+F3105B0FF44E4F132378DD12D9E796412FD0F9478322215E9F59E69396C35AC4
+097C4995B60BF4D8B3AFD0A002B3A6E4FA114131410D5658999B86DFDD3005F3
+AED1FA8F077AD1F27EA249221585703F20FB70E37A26C6C3F2E101693C94612B
+65BF89F37AA3C10A40EE8E49915F1A1B95D2193D8003DECEF9D76FDAA33B1AA9
+CEDCB21C2A3B057479888EB349CDBE1919CCCBC6DADC20934BEC7614C6B16BD0
+D8ECDFEF0BDE3A8D7E4D974B4A7A2D094ECDCC3BA85A8579371B91324AE4F7DF
+CBEA9150C9B8A72CA75F419A5EB9870C8679E50A5EDD0353E7BB1F97647B8A27
+324A51DF91CF569299F13A726E93DCBB9576DBC525560F7AA8A84221E28E80A9
+93F085D828FA62D5AB3E8C90B209ABB9EC00754B2523E1F4DAE27992B583EAE3
+970CAAD43A47B5884EA17F86665AEB19E4A1B62EB62D3EC44AED3D7648C399A8
+FA809CF94AFA2A535EDDCCDB5ED2526C14D183491743456DC90132EB90551686
+558D7AD8DABBE66F67CBBC4387C6050515C926AC1EC77E7F27B2F662CBA32AD2
+83EEADEFCD24E59E3FF87DC207A72562EFD856849940C48611327BBA37FA44CE
+1FC1A1B090304751BD1862B9DE31D5DED0930AEB81DF122D4BE3AB540BE7F182
+4E9B8D05E8436C13C6D2EA9D4AFC8AE0EDD3B2A71987877A53CCDDF6D6098A68
+94F51C348B3373D65CF46A9E1B1A2B01CF11D0FE782F3DB1EB837DE33ED8B2FF
+A568BC7298C9A6E4667A9EBA1B02E95BE3B1E6C0458EF0C7FAAA3946A2527C0B
+258FFD412E15A1B26205CC055DC64BC64D3DEB13D303AF27B811A5DF62A1FF54
+5B6E0F2784D26D6DFD52C69E7A8B82108BBF6B75CFDE13F312F720CD88167467
+35078691A087782FE8E1D3E40D3C41AF720234167B3242374F54F30CD6AF018F
+F2D6747A8ECD8F8CF491A0EF078132B567859F8B52592FBE231B4C8C8E8AD0F4
+23DE760F21669FB67DCDF0DE9E3FFD16931A83208CC3413E620EB38F2B4586BB
+5C239F9E37AFC99ABE07B5B5966D306C05A30603A560B5E95E409EB2A5EC8369
+6BBB21EC5F2BDACE71B7A3EC79EEE2F756EEA733BF757DB3091AEA21909098DE
+59D6FC39CFE0DC0C7ED92998D8DBB6892A6E0D95192C772C129FD400614C8F34
+E3E61687F5CB7E22925D8492015EBDC64580C1DB3F6B9C3570CBF8B4D5ADEC13
+3943EF9CF68E8B744071E15EFAF5B3391DAAC123058C540EB35B8EAA031DB721
+7443EC4DB18A3F4FA672FB4035053C2145031682E23DE822B6665BA5D636DE83
+5A2FFAF38BEF60C464CADE4FA8A5098CFE3C79F19EB4F0DC96A54574215E2310
+C9DB80B52652F720AB8D85FEA7FAE49DEA15D312559AAD1558D237760D77DEFA
+BE2F860CCDC1B55589801D9F6AB7EF1B542E89BD38FD530DA93DEF7841B702C7
+C13E96EF72D6A2468AA85C9F3923DAD3E8B8D8D412FEA78C3BC95A844D999BC6
+0BD024E22FD4785E301E00D194C0801327A3A79E82C8125AD79175D288B9BD13
+26A96A380D8042A24F9E7DA1368F171A1F06F7CECF575A97E47A54DE65FC1145
+8CDB88845FE12A76ECC3315747CD38F0C8DFC61D6550147D921E03BA5C2045AA
+AF4376102D949ABF642A66362286965196B4F874F3C791DA263CA4588529914A
+A7ED0E1C2676DF5CDBDEFB79E54EADFDDBBC776568F7B8FFB01881D2C9FFE57F
+3EBE4BD8677B60131D1AACD2E36A772E56FF71B9E4F329458AF9219B8EFDF362
+6CC91E15ABD5902E5AA2C99D424B8A586CBF7E290E73DB8CAE8A8A7D053DD4EC
+2EAA9B55AEDF2EB1E5C8E21E23475A2F4B1E6F378620FCB8825170DA0D61FEA8
+617B3FA9695DA7791AD492B5C6210A4AD04FFBA25D1932EB59B3485574BBFFB5
+4E6B6A9BB219A3E5384C61A9A1AF0F531033D353DF1EA68E9004E076D7D8CFAD
+C253581597B69E7526C7F32FFF4590157EC103D77148A50A5E4D1BE38DBC439E
+B557A473BDCA0E36ACD6EEA977069F5C5CC693426098E1F998E11FE745E5004A
+C2AE373FB3765B140A85AA0AB2B457546967C692E1DBC741F860E01B4E4C79EB
+B0150D49B235F0D8B39C059D8F12DB72EE173D97C845E7F88435C4970E32C83F
+F455AA2DDE2A506AB34C221BCDEF69396EB3D8EE3165B8B2F2FB3916E9C24C24
+84AE1502A7073801451FA3B3E3CE08CF427E99E4033577ADA81E085652D0B6D5
+0ECDAD2365EAD06D47F6B05A5E7ABB1D48C9E888FF86C256377391EC408174B0
+AE34E1F59C0FE6A4FA3EE34E7A4E886A3638CD6E935A3060A2436567B1CF2BB1
+1A8888B20CCA8DAC7A7CBC8276920E0DB009CE5FE55C60C894B9EDBEC33A7492
+E8BE11CB03C9FDCFDEFFBC606BB6CECE02ACFA24DFC09B87354023750E60EE44
+AF669446D64A4B034076A6A25AEB63180335653C355C2C32894A957AE89DF75B
+C5A9EE4CE66FCC9558B1C1B4D7711B882E6B55581B8D17AC88386A797DDE56DE
+49270BFFFE274E68274A8363AF716BE13131B3C103D6D353468CCFC745FEC7DA
+4170C6594BC173FBD034CD52E9FF3B9B7EF7724C60683BC3E6B765B8A82042F6
+0251CBEED4519B316DA179E313C19ADFA5E0BD7F3F3C40DE1ABB99DD98C219BC
+A17A21272AB07A2F9081998CEA9B52F5BC86587B227FA2B49082542A2605A42B
+84D906B8EBC73E9028A576076D9EE7E94B546F7FDBE974BD1D7CE4C95A51563C
+1713D842A94596636F7AED1B10A5C58E9A812C0207FC1D747E8A46ED6BC81697
+13B6E8A266673938F4FD08272F4F62AB51979B041ED013154F97F49D48A4E2B0
+2F5C1C92702EE75100B0E28449D832314B19BD1AE30517CF513F7A53D19A268A
+65F4000BCABFF147FE290FB7FA54C8E35B682B2675BA8C7B15B6C705B85EB0D9
+4058191651DA1698E2C35870EDC52AA0310C5ED8B581CF332463592688835C4D
+DF5ABCB7CF9D5C46E1AEFAC4C485440ED35F483F456EE7D8F245A130C9F1D4BA
+DE418A817DE2E36D3918B4D1A11B6801F4D735EF4AF0375D9E8B3A4A9314567F
+1692018B5D61202A84DF752D2B2C9A8858E9BC74C0E9AA58FD4B4C7A7430A004
+A8AF32E1546ED39B338C5C093C7B34121CD317CC83A14F42869DDEE75801F54F
+A61D3BEF28BC1130C25E3A51317BF47FD1C07D5C8418DA4ACA1B3DE0DE56C605
+C9C079C41E9FE316D87C19607FB185E6562F7742E507CBEB44809E2410D1947D
+0C7D4B15020045F809457B1EFE3A2B0AD1A34E0CA8B9F5F7B8AF30EF6D9C1B4C
+B4E94578D14C931DBA6EC2519352C0B2053A185AE0EE7CEBDA6839CA51A4261A
+2BDA155B9AD66CACD95B14D98D828DE021A88E84EBBCE0DD819C789830E45CB4
+93987F25C230F14DC5D606B1D6BD89F8DE0968E04EDBFC852D2E598734CD6F38
+DE2434C152647108A4C2D906CBDE2484B9006A0677219802BC6CF0CE3C83347C
+0083DD51A4C209C1A7D1CF384B5BC06547FA0169B347ADA2A7676DC9F2DE70E2
+B75E786FAB0D4DA8A61D571ED336534690EABB6E730B603F5B0057D6F22C6394
+109E845D7AEB853410C50C11B31893FCAC5A7982AAAEFC78173585FA966157E3
+D03ABC8B3DA3F442F05560E52A0B5B4950071C79CBB0EE75795BC9C557075B73
+690626B89A367E751E5B79F20895B7F6B1347CFD14B492F038B2D5FF40094FDF
+C41FD41F8346B5F9B96CB20E838C8A1E4CB585F7518355090D5B3812FD8F517C
+5AC7BE0EF0521109135CCC0965F17961014F5B1DD412C5F3297FA7B4F926DBAF
+51707300104B61E56738C57C85442A43157D1E10160EA7CF6CA1DF52A255DD19
+D4B939EC8E71EC0DB26EFDA3A69D7AB53EC4F4115E63F87C664AE2BE945F2404
+0B77FD25D3EFA379D0E3228E4897C5277AF19272BFD362C3DD7C36A3B0E41B11
+3E2DD1CDC784E4A7C65A1D99965C005A16DBCAA1ADCFA90B78679342EAF5C4AC
+01421CF7064EBFFF0F3A31632B1D07496159EDB2E7F24D7F0C508A8F92F008B0
+E0F7D354B8EDE895B4730AB54DF45F471F1EE27D2840177F6E34A676FD39073C
+8198783956C22892105260D8A1AA17911ED66945C19DBAA3C4B0F57687E5D3FF
+4D48607C19677CC89F855F2D7FA7FA5449CEAE94CF7BB884B6561ECB87C777FE
+0E8673A5CDFB2B8CACE70011B4FB8F85AA411377DBD0B7C11EF0605669058BF6
+86A305059EBD74A2B283EF73209FEEA7FCEA463273499D5CF52107FEA460CE1F
+A810090407A1865B9DBBF45EF775768AEAB21E101BA4731D6CEDF5746834D956
+8D02F93FEB0C449AC8B872D9B366F279628980110486F535E050B78BDDCF8E23
+04C89B60D1E0653E40868A8F30FD181C29F3D45A6550F1181F367C9BB3D59672
+899692973529E93B493502DBEA28D7319ABCDFA4A28F7C5086D153C032D6E715
+6E06F53620C5D9EFCB9876B4E85D4501C0BE8687440FC3B4C40FDA121222342F
+704CCF6FE4224009C049ADCF1008544DDDDC1FB8E0F712672C442062B4C28FF3
+641AA765252EA3D19F5C590A4CD46529C9BDB7688CB3FAFFB6E8ED4363BF533E
+AE8457A032E0D0BFA503F05AE0C3D51744C2A6F433B32ADDCFF4F83D7702C17E
+5B0BC25F89AE3CE27B9460AA1CE06DA9DA8E4137863AC897C0776B576B2A4BA5
+EEB8A885816F92903EC4E1E6CCB1081DC7BAA7785E6A26D020B2F62CAD8BF968
+9006A3E533DFD89E46FB24D5BB89978EAC3FCCA9B7BEEF73854CE58EF0EF30F9
+DE7C3B513F4C62A53A49A5EA1EAF1132AA6DA9ECFD5386EEB189DCEA2A57634F
+E8FFCEA9B3B7F68CE311B03130ACA988A0792260376D0DECCE84EBB5E791B2DF
+B53FA95766F5623D122CB64F56E09890D936211AEAD05B0ED0C8B4A9468D54E5
+A52E2C1ECC45FA3AE01892EC810BEA9D95C4FADAD7335606578F29C20323947E
+FFB6DF00C497882D62C50FF5C97670195965C8707D190C6AA6F4310D575C438B
+2DFD7E2AEB43990A71DAEC6DE1F55F59A6219C11BEF87B7969C78B5C08BD72ED
+362C934B742BB48DA366F67D8DAFA0C63E1111C991C67D442698326FD33FB656
+5A6A8E74EE85562B0C81639AEC7C39F9E1009A779DD8457CC47AE4CE40D50918
+4F1E66350E59961188B39DF114D7E5C81F49D7F237151B962925C604D11A6562
+95E3950BC5AC8657216599FB63808D48A7E98A78F95D577D36B274050A0FA67D
+158EC78D87538F421B305B823E94431A3626FB42379734184534F47696848A73
+DDD08943C2845BAC56CF7A7014A6FFAFBE0AF1D5EA1FA9E093641B0981A0A4A2
+49169A3F31A3C88236147340E5BD5EBD63FE95CF75E5E1F65C4D1F832FD5CA52
+0333DB77BBA0567035C1D5A50182223C4BBEC546AAEA67B751AC8E2B34B38093
+B900D478781C5ACD5C4EBF1219FF68EE1C6CD6963D180EF18D90A85C67D7F8C5
+25A4A81D67C0C2D150280E5EA19C1A30C80E511EE06E65ADF6B75BFFE07A9A07
+28AA49295ED28C248271132CAFB88C71C93A9645DB01E8CFF5C31A2138D3B288
+4797869A740AEC850EA653F11278A6722D541D251B648E408B555B2FE0A15A5D
+AA9A341EF448C7619DBDCEDA843F45A6DC3877227BC252316B145D0F15E8FC2A
+65C48BCA90F3610FAECEFA22C81D9FA2A7771D2C0BEBA94040CEE3A5CE28667F
+3C7FC3EFAFEE0F00BBE7F1204585025AFA096252AC09AC7F46820B019D8D976F
+5FB1B0BBC54773E8E34CCABACC3DE6131DB4776B36D1523036740A63859BA61E
+CEBF7769725C910964B478CF2C95FE8B76519FDDD53CD2F5A0332941FAA36890
+27C672E2C6D6E05B7DA8C435A28E59EE52D8E647F167BDEE72576F8AAF9F160D
+305CA410BE22E67F7A3289C751F799E9672FDFF01008FD318E6E8C54684B6D3C
+8CED36347F16A10BA507DDA998EA8C4BE66F8B3DC3C3CA12B9E69C576E25BFD7
+6A986C033ADD4A5F37091D68FD176F4DE4F9441E1170BB05CC2CAF62115E3E7C
+9E5FDEF5E707B2BA966A9367347DF930DA48744E2E0C3B7BF136C920EB1AE350
+8C97F3C3B2F0A15CA0314383059E383DC0DF74149ED013793D78BED023F84994
+4C29B8FF6AD96D699DDBF5DFE4B630E41556BED318484152478D39B14A270A71
+676258D72A2F1ABA6C352696106CD3D41FBC01B809E3482E886F2E644596774D
+D8A00F7C174F400FEA9FFBA7BDEA1B1997A4B16D055952C0B93E8449F2682E86
+4F80F188E6DE08518A706D1D009B6BEAB748D0050BF745668E398562E2E6E382
+E32829A70D0C73863559C8D287BC5E87BCB1FE3BB4DF56BC20FD619AC71628CD
+93F09AB7A0387E949F2DF1D811721242BBA7435D6112B6257F894DD63A7F45E1
+56F8C5D565C1D3F68B3DB883127FCE90F361D28FC937A1EFB40408CBCC04B2FF
+9D00DBE2CED3A6E9EDF130770B599761709C01E925B51222B7CEC43FE872A904
+6C8DFBD389B5357393BD0D53ED0EE83CF71485DD6584A11B7B95910075B4368D
+643CB7D82B6CF5739A43E87858AD3D0DF38EA335F308E7AA57A40404E04D0EAE
+E1ED221D3166B28AD9583F5E2449EBCAE53829D862995B7F80EF934DE18B1410
+78D63F242D0E2F5370D69CDDD693D504BC74ADB409126352E83627FC7E4E2B96
+2E129A887AACC3CF7E387414E4A0175374DC8D9C8AED05C44B9335D6B5302363
+E83DA41D321A2DFCFC72883B11AF2F0C4B0A9D318091C896EB2069300324A61F
+BA8070E9B7C34556974D0A5B382C425DE82C21A58AEBB2F50B3AA2E3FFF41D00
+DE7D7BCAE1994A9FE510180E9E35A6163A676CFC4CA129DE33CFA52A84BB3FE1
+36E8DD00A885B611744B36A81F48D683F8D5EDFFF3EB95A4E9754F0D0E594B0E
+DC8FA13DA9C7F05CCAF98279B1851EF00C9C8ABE6BCC4151B152DC2599D5542F
+15E544EB858BB033C713EA7A1B17B8D46281E52047DFCE26049A2A2B483DC74C
+77F276FE2744D1634E946F5BD76C36F7BE6093E857D261FC085B06703DCA04E3
+B03F82815924CE383E8EE46940DAECC3C799286224185E33469B8BAC0EB2D5F9
+5560295AEAA503847A124D93EFF2B819A33B6F98BCE6D9FF5A5C9CD2570D209E
+552A00867F5797879051E508DD4E20B25E46A6FF79A1F1FE5E41BDF84BBCACAA
+62D2645A064A763F50B060347ADA6EA05B43B7C45F0FD5BD2EDD7085F00618F1
+14D198CF523AD6812CE559F9C9B8FBCE7A3CC792AAC500CC517D2882A89B52CE
+8FE754C1E6D006790AAA2C28D4EF672AEA34FF1F4098E3C382EBE2A50DA133C8
+0D57457898A147EFA74D97CC4BAEBDC25FED541C361306F1E89BD945E183DD30
+AED15C42339696C7F25C461A70642D20CD6B1D30C440BC2E5D5592EBDEA46F96
+69CB6ED36D21BE79B5AFB7130BCEA60E80DE13A54FA5F5A10BB7D20F21F90320
+E2B41A881781153D2B122996AADC3E79F6ACCF727C43A6F1A690A7E696729C71
+96180DC51DC0BD9428E2641978AB0E2A7EC77AB52B21BA0DF44CBE9F1B14F6D0
+D6B2804A0F0B7894F8A397CE96D86E1C22429246FF7C46FA82EE6DE00D29B05D
+415B50B236C6BDB002CEB2D35BF6AE5491B91344E7226DCB9D77D1C1DA9F2D2D
+41359F5A20151E751387E447CD0FD9344F52D60441AD256658E344F5916EFFB5
+3DFFD91E73D4BDDB71A325D8697AEEC6F836960BAD33AE0C6AD036F6072C1468
+63CE304EF66DD2A101C542040738C40DE6A553648B022A7D16193D906899C03D
+3C16C1C84AEB01C192932D4B42AA499F7E7DB82B79011B31A6868533BC4695FA
+C555FB5A6933F159D2B758B769C6D7F2EF723987C4DB673A21F4F037A5111755
+9512F5B103A6C43BFEDA95017BEB4A4F46E801AF1EF72D680872C95568E90CBC
+2C49BC7F1001853BF5A2DB7D4072F452C24BAFFD5BA7A610A4E82CDDA3AC6C0C
+12D6B8EAB6DE25C87E3AE758C6194E9D47E5E0AF4C778328E4D6D1634EA8D017
+D977107224CECC3D7D41343C8945C836EEF6D5B3AECBC24903E0A550F2B6AE04
+C37E7ADAB2583814170CFCCA6BA332CA7493ACBD166AC78552F465CE47C973E8
+83686ED8B0E125AE85A17F27EE5C5F22C2BB51E088C9E47729E107539535AB1A
+9AA6775B2466F531F1553913207AB441D409EB034D0E44AA31E5318979D037C7
+28DDCDD6CD69550B130510BFD01A7DFA600D16F1E38C42637805C29C322740F0
+3C43FF60D8284361046435E8A3AF9211D47396AEBE0C24A60DF163D87BD55242
+56FAF131B8A42D81C0A6F2F5BA18B186331D1F449152B8EAFADADFCD9C272FFD
+D1AF6226906A9E6BFB3D86A02F12AC01D306390158C918596329435480B4B82D
+DFA9CFEAD31ED31AC5429D0AA985E6666842E6E13BC8CBB354E11F7C2F803A0A
+8BBDF3FF043C6C4947A77A398A25D1966FE4A9D04DD50BB3042EB43140F18FCC
+8FF8316DEB3A5C4EA30DEFA393AC45EAB98FAFC1C145662D6A33AED5E17D9959
+C595AD7941AE16EF07E5EBAF28554082C84CFF17974F0AAB7CD089F2BA04898F
+86E3F1CB1261A0CDF9162C2EE85E4A97080AE32BC9D7E8BE58B79A38BC09084E
+C800479160AB5139A1E59E90E3ADB067251246BD9A26831836FB95F9B4F877B5
+2DD19E97F535FC81AE24410CF9D56E296B4054418824138B372EC18202FB1821
+DF4EF96A6C2F90329DC44E58A9BEC7C7A4BF4DF6D6E0DEE6CD16CCA59BE8DCF2
+9BF96F5476D7FBA3E64DA9CC63288390AB442080E3F09D31818C724064AB4BAE
+6FCF83E8EC3C165A83B1372B150DEEABD05B77CB851C7F6E503E8EFA20A69444
+821A3D893A53460854BE07CFF010AC76A06DB861E0CE9D87424C690D38674741
+FC18D4F3037F7760B1DBAE0384C2F02714818116E6265532A6F71A2493984943
+1D97BC296237E1D4B00F0CEB9B96FE8BF5EEE99B8E1455CE8C98C82C887419C2
+B65DC3E51025E57A75B1BED9F28E8AB8B48D258DCD19CF4AC94D49F5BF6BADA9
+0E128C03EE93456E3A07E0E061822F7736B090AE9F451EB846D371C18E0B4FD7
+8B7E5A66B643A47D742FEAB217F4FAB563CB130EC03ADDC334279F61DA43B1A2
+A516106F66BBEB6156A3765570B67A883998B34E48247F3137CEB1F3266EB616
+714521A52F9889E0513E7DE6A899A75E55CF91C4BB4276EA77F734ECDE98709E
+A01AB834395B5BE0CAB6478E87DFED8A0F94687E13387F5F914A49CB203D46E5
+FF0AF55D6A45B2E602F271E8B47853529D6C568344A65C5D87E83220EA14C0D9
+01EC7E2CE6CCACDC04A3720D089CC21B7825388C1FD6A3ADA4CEA00415B1A5B7
+C28C9BD8820E377405BB453EB1621C72E6F458DABB5422A6DC42A827E9FA9E15
+65D43D15CCE545B438BEB17490707B4F7A945D6FF5B628D74ECA5A7E8546C6D3
+EFEE841DCE2A41943F494B58CD91706C661A7EAE76B438219A190122A015231C
+2C293210B45BC180AF3CBF33388E4224C26C09D256C8A4EBBFD2475595E2FFDB
+9C652B602BC1EDA2A8365DF797E28728A69399D93F52D0CC31AAB5220DA81E54
+A288770305EF140F886A7578766BA73446D879A1959E93DDB9C0305D7DE1D516
+589D55402685BD0B7D58D39C2CC3FACCB9208B5B9EFDAD04D2BFCAD67439FF93
+8277AE848F9E39229D9D3E1909AD23E9AD1A91E2DDE51F92255CAC4F68DA6C37
+E2554EBF9FBE93FCA7F3D94460097D84A23E699EA5115C81AD4FF99732C4C841
+0D2EEFC0C4136B5181E26684E48941354472472D1D59F10239F5223AF7D4130F
+AE680834D3545D3BA6E91A415437221937F537196BCD39ACE7ABC6FC6FADDA3C
+9D77134248358A86D49F4C140F1EB745B0986665B48CBBCE7F245D030B2C2072
+99880CCA75837F28A53EDFA165CCE5AB547C64CADA1382C90CD7D324B01C1641
+AAF0CB4ABA6A2870165B523FE8842E2FED02200A37E7EC78CDF197BBCC15B23D
+EAC876CF190B8DFD66603A7FB738643728A72DCB416C7777B9E1939A49FA3360
+58002DD2952487C61D7F75DE9597DF9FA2B2156976A0ADBDD82B8F87A490B6E8
+2FDBBE05716F9E28714EAF99E63B5CE16F221182FF59044738F61FBA1E4E6647
+40F18D3D5128FAA9ABA6D00D4AE7A22DBF91749E8AC3C728913B3516BE789AA0
+23B85BCBBB180215A6168727EAAA59B463996139096FE08B72BEF671339F900E
+B82E070598A3B424418A8551BADC6FA53369CF434603FD12897CE497E4109A3E
+DBC999CDA0F98C1F0BA65E60DD9E274855BE6DA57B4A0857B2F391B3823BE67E
+69A28A47178768A7DADF5E4A41358173E22BF67DD21C329D403FFC93CCA808D4
+833EE15C0B26A51727191AAB5EE95E400EFD8DD52C5A2CEE285E18A49041E8D7
+2E6F2650E6CD0E037AB190C250AB32419E877F8F9B9C3E5BDF9F3EAFB29DCD2A
+0F7ACB641AB7164C105B5CCD6A2B2AD64A91D75098F2F84AC538C1B41F2378AA
+461BC4EF6599AFA4A6C904603A82B76523AD28D342D881AEE9E425DA7AE08F59
+D41D8AC2C69F7F2B53EA320FF034116FA7CE2A5B492799FDB8A486483FB09DA8
+96A273BF821D4ABBC961634FD318C2FDD1396F40816359510284CF098DF9DB06
+D337E4B53C63F2F49011EF4D22D671802176A8B3788FEBFF6BAFCC674905B1C5
+21519907A2ADE75D6BB6D561E7DF869A1158C48AF8664ED2225047C58A401C06
+4AB4CB7C920BC994E975308568CB0D81E88DD195725FCE33ED17F0B083DDE876
+B25F9FCF93661DE88E98B91FC7CA4D1F13B8773E595B7AC357AD65957DBD55A0
+D6E728D6A1913F3571C0EB67EF585215AEA388604CCC9A3140A63CB75341CD50
+E38FB5604FEB82AB6E9BDF9BA7BF3246D8F5B8519202705550F6E605BB5A69F7
+10DEEAA077EDA7B549EEFCF76CF5EC73A6E0EE7DADFD17F913618CF476089200
+B40D4B1A14665C9DFB3181892A2807C916822A6458C7F38D793D28C7A980E330
+9A4E382E7C31F99F6B871EDE4254937712D939AF6C5E5BFD347E693C31E1AF88
+AE2FBFE44022D7D62ACAE2B3397CC36D7E833AC65A9A3925B7E86195A6AEF39E
+A1892F9327D0CBFFC8ED5AF58C7DA5544395AAB651298AAC4737B81DF98EAC38
+668D8882A46E7786C5429DBC07A6ACA61070391443847B444EAB8341C3A12525
+A42D8C125B20107FCE6A7CCE4AAC2BE4072344BDC08D59D08A9A2326F18F47F6
+F05C64675CFC315DF146A8540532FB073BBC792CA5F6DD6FEE290A4FA2D6E10D
+D7D85C5DD386FD00B6F7014DA81CCE9CD270A0EEC13101CEF0963FC82282E479
+3F4FF7BCB102F99359163B77D3457520F268F73F2C67CB79873A1199D1EDDDD8
+379569E78851B37C2B6B34B3E2AA486AE857EF0336377B5712F249C33603EA1B
+0AE4D903524DA51BCF33CC103256290E4EAECE6A072CCC3FE3E2F5C0C57991EE
+7B96C112A679086445E50A6219E175FB80FCFFE276113E9CEB5B1F37A3A5CEA4
+01F72DCE5FAA4609D845DAC97EA84260D750B74B4D2FE248833CF1461342757D
+9922D0DAD751389597ACE66C328A782D2140C5A02BBF989533F67899E1B8BBCB
+0B49F197CCC5F75915419DB6D4C35152216F42B859B9EB3AC6E60A39D02D5BA7
+6C0407405A894D90B5AB348A6F0063B89D3A028068D82712FCDDA56DC9AD5743
+782FEA33D188FF56B66A603068586A51772A90128E66A8A4ADF14430BDCC597A
+D37CBB9D815925808A3D776FC5B9B40DC3FA0D1180B1FCA1A750087C22693A39
+A1AD1BA7E622C791E3ACC96A5DF8F1AB2597547C965386971B43DE8E549D801E
+733D508D626E7135C578BB2B75385089CDB801FF454D8C8FB899C02A976B81E2
+F7C65C0E657F998E48FDEDCE8969F0D675A4D7D464BDBE98BCB492DDF5745B2E
+4036DBE6679A0AC34B395121E466137BF9FEDC86ADD696735480B8BA5FD20AA6
+B32F7961D92D79AEB17FA6FED5EA0E40DEF61A3B33BE3B8F785DDEC7D5B2B0C8
+294F373BDC18560C848BD00F28165B18BDB2956C5562C925329990BAAB884ABC
+DCDF7ECC4665E0716927F63B1AB29D4B8C0B4ADE1730A00834453DA42DCE0399
+2217E29764E354BD9233E60A06EF98DF5D642D59D0CB458622426E4147BB57CA
+E1CB3A0C69CD0FF8D3A221AC97F19FD05DB65EAD0186CD641AD4F6E103F7A64D
+F6F48E40FB29A7EC0F588E521C54FE4054671A6A5BE6A97DACB3CFC46717C841
+862CFBC7ADFBDB1AE4FC14F69A82767F912908EE4535F19DE5AA9DDBB7EE439F
+9E9E13FDE224EC1A4BB841A1179FC50895F9341C123C2E15C268C0070096DEA6
+AF7AD28EF5F93BB596CACE0999BFE9F907D37B2A65F5B077471FE7D9DB90821F
+79FCDB360E956A9B9979610CB0F4D48D50B421AA51484F546403320162FA3D0D
+713FE8A679F99DFCB70FE60FA655130E5E71048063469C7F7FC0A7A389C0C07E
+7CB5BF67BC621793547D8A0A63AD06DB98AB63C8CF5F574118C456B2A24148EC
+40D8BCB3909B58E99274DB6FD41BA7B0D07B265661A2C4E9D6D97A7719EA7C32
+CE3485A341DA3E81AE55B0CE575E648D0207BC5B6F9E339D15083D5CC26AA8B7
+0ACA4FAC34AD327756590D1A536240675B839E72BCE3025E129DFE699B123BBA
+E1958B2D79CF59C6B9C9EF0EE834652843F4CE08BE190405C87F08168CD25238
+083E8DDA73C93F9654C2B0FFB1729B8F9C84C6C3DE8807E34DD0308A2DE61D6F
+7914B33B3CC0E143BFBD96CD610A81A62F14651828C8F3A087F4BE21A90D716C
+BE3EDC939296BEA3EA0F9CB1B1F0B6578BD85048F6965FBC7D6DA5726753277E
+CD1A4EAF19D6C1C86F4A68B44B517622F8AFAEE9E251C92E16E6501AFB1BC340
+637C89F86C2853BC49C9A8DC9B1354F740819626D6AC033948F10E90951EC532
+78007DF6D2CCB82FE258D436D4B0F2ADF1ECE04AF3F7DF3B35097823258B4A00
+740F477589CE034FA0DBB070FAAD2EEEF8AE48FBAB745C3B131C33A8A181DB27
+962B6A827F6B0517B5CE437BFDF6849D7B042D6569A9593C442029D630C0D16B
+D00AB9D27B05A297ADC2CA1993EABBDD70D2792F5CB5C2066EC9DD52B1CE2385
+D36418F523A06A130CF3DE25DDFDAAA606D46182385CDDA42BC4773F0318F2E0
+5827DF3518D8FFC8F4AAA9EB8DE0DFF32BA91BBEF7099C2DF96DD4EA06FEC90E
+79638FA85A2B0AB9540905D0043926F889E0476A0D123996A774BFB1B0244C8F
+D4315A52BE500B09ABC0E17E57FE3C14DC58F4B960490BE933DA1C1CD6E0CB31
+8479447FEE9BB8749E09A19CB88056EECAC208DEA3819029548A61AE8667227F
+B7D5843D6369488CC4DD3EB123E3C4483DBF56C225743DBC46D599912589BBB8
+713C3C314845C02C33635ADD8E05A7F9B787C1A98ED8A371FDB66344EE449A20
+0C6C9D9B3A47EAD49F448290F8014F205303CDA6478752E9DED0487B8EAB0E9D
+427CE9D4DAD00A155B388AE21CCC98BE650D85FA20492365F6822D82C93F7DC4
+6CD8D40F0102A7E47212BE386C0AE651A7DE856F5BF144FAFB4F7DD1ED29CCB4
+37A74ADDF5EAFE93F26BEB10E6FE1B79C4074B4F017419D33FD255A3AC6518F9
+C333FDEC9C3CBB0A753B109832853C664B53C442D54A62641D5D4E67DEB3D99E
+CF67C91DE42BCEE5B02EBFDAEE10D451F847611969A52639D739A0107A068F09
+05D609B9B2F1686A41139494DE28AF1E42595285E3D4ECE69168345D714358D3
+99382252BFFDC08426D67266EF4C313F016B151A69F1056AB8BF7C013DCA930A
+A0D4210EEC746D386E85FEC5C0469E0A456A488DBD22D97D081E281B5723746D
+EFE1F45FE0A9B97DDA4D927CF87388E169767267725B6654DBE0B070E0D86B64
+6B2D012226317E557AF0C43017775BB84457C8AB538565E0669909E3DFD88AA1
+719168BA031451E625F95ED6A5A719C175A4A431E52816927B2CF10EF9460559
+5F94AC96C0780423542BD17704CE62FC7750E48532265A95FFF15F5407CF8251
+108F23B63715A129D9B6E69E1D0C287A1EC81EF444D7231BB78C68C937277756
+3E909B03AD1255A1D29797B5D1CBA5EFAA1CC541F550BF0657B5DC66CED4DC7C
+15E1FDC46BF34CB1B62F5268BEAD18F7E4F53AA50CED0395A3D8745178C6800F
+146B934B6B0D902BFC2BC62FDCAE5BB29253700F44FBCC99D2CDB222B9C46A90
+BD31A9EBB61032EE9EC943925EB49374A1AC9E85750D435DC2B1D840E154D36D
+C8924C34F6D12EF9A1AD7059E7B2359283CCCB00B6AFF8A980DEC7B98662F33C
+4F1EE2CC0C4CBF7BDE0EC2119E54B1CF7460C2FD4ADE5FA2C37FA55B4AC8FEB1
+CFF397A16C467F9DC8E0F86102D8945B8E0C3684494C56F65264A7C0F131647C
+ACCBCD8CAFC73AF5458A723ECA8F61A02F7C9828063FDB0FCA899638B28B924B
+0E5D87F6C4C9551D0700E910B91A5C70824E537A64394B818A06E1F7BF74CF7F
+983BC7241C649A897DB4947D2B4E02A0ADFA6E360C810769E7BFE07A28E8ACC6
+F9325AD028CCDFF500E739C9E4C2143D72E84B55C02370EFD60EA3BD47A4B2BA
+DCC80546ABE2DC5DCFCAF6363B436E73E99A7659610B184FFA80B89394EF8496
+17297C7F3FDBA450993403DE
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+cleartomark
+{restore}if
+%%EndFont
+%%BeginFont: CMR9
+%!PS-AdobeFont-1.0: CMR9 003.002
+%%Title: CMR9
+%Version: 003.002
+%%CreationDate: Mon Jul 13 16:17:00 2009
+%%Creator: David M. Jones
+%Copyright: Copyright (c) 1997, 2009 American Mathematical Society
+%Copyright: (<http://www.ams.org>), with Reserved Font Name CMR9.
+% This Font Software is licensed under the SIL Open Font License, Version 1.1.
+% This license is in the accompanying file OFL.txt, and is also
+% available with a FAQ at: http://scripts.sil.org/OFL.
+%%EndComments
+FontDirectory/CMR9 known{/CMR9 findfont dup/UniqueID known{dup
+/UniqueID get 5000792 eq exch/FontType get 1 eq and}{pop false}ifelse
+{save true}{false}ifelse}{false}ifelse
+11 dict begin
+/FontType 1 def
+/FontMatrix [0.001 0 0 0.001 0 0 ]readonly def
+/FontName /CMR9 def
+/FontBBox {-39 -250 1036 750 }readonly def
+/PaintType 0 def
+/FontInfo 9 dict dup begin
+/version (003.002) readonly def
+/Notice (Copyright \050c\051 1997, 2009 American Mathematical Society \050<http://www.ams.org>\051, with Reserved Font Name CMR9.) readonly def
+/FullName (CMR9) readonly def
+/FamilyName (Computer Modern) readonly def
+/Weight (Medium) readonly def
+/ItalicAngle 0 def
+/isFixedPitch false def
+/UnderlinePosition -100 def
+/UnderlineThickness 50 def
+end readonly def
+/Encoding 256 array
+0 1 255 {1 index exch /.notdef put} for
+dup 11 /ff put
+dup 12 /fi put
+dup 39 /quoteright put
+dup 44 /comma put
+dup 45 /hyphen put
+dup 46 /period put
+dup 47 /slash put
+dup 48 /zero put
+dup 49 /one put
+dup 50 /two put
+dup 51 /three put
+dup 52 /four put
+dup 53 /five put
+dup 54 /six put
+dup 55 /seven put
+dup 56 /eight put
+dup 57 /nine put
+dup 65 /A put
+dup 66 /B put
+dup 67 /C put
+dup 68 /D put
+dup 69 /E put
+dup 70 /F put
+dup 71 /G put
+dup 72 /H put
+dup 73 /I put
+dup 74 /J put
+dup 75 /K put
+dup 76 /L put
+dup 77 /M put
+dup 78 /N put
+dup 79 /O put
+dup 80 /P put
+dup 81 /Q put
+dup 82 /R put
+dup 83 /S put
+dup 84 /T put
+dup 85 /U put
+dup 86 /V put
+dup 87 /W put
+dup 88 /X put
+dup 96 /quoteleft put
+dup 97 /a put
+dup 98 /b put
+dup 99 /c put
+dup 100 /d put
+dup 101 /e put
+dup 102 /f put
+dup 103 /g put
+dup 104 /h put
+dup 105 /i put
+dup 106 /j put
+dup 107 /k put
+dup 108 /l put
+dup 109 /m put
+dup 110 /n put
+dup 111 /o put
+dup 112 /p put
+dup 113 /q put
+dup 114 /r put
+dup 115 /s put
+dup 116 /t put
+dup 117 /u put
+dup 118 /v put
+dup 119 /w put
+dup 120 /x put
+dup 121 /y put
+dup 122 /z put
+readonly def
+currentdict end
+currentfile eexec
+D9D66F633B846AB284BCF8B0411B772DE5CE3DD325E55798292D7BD972BD75FA
+0E079529AF9C82DF72F64195C9C210DCE34528F540DA1FFD7BEBB9B40787BA93
+51BBFB7CFC5F9152D1E5BB0AD8D016C6CFA4EB41B3C51D091C2D5440E67CFD71
+7C56816B03B901BF4A25A07175380E50A213F877C44778B3C5AADBCC86D6E551
+E6AF364B0BFCAAD22D8D558C5C81A7D425A1629DD5182206742D1D082A12F078
+0FD4F5F6D3129FCFFF1F4A912B0A7DEC8D33A57B5AE0328EF9D57ADDAC543273
+C01924195A181D03F5054A93B71E5065F8D92FE23794D2DB9AF72336CC4AD340
+15A449513D5F74BFB9A68ABC471020464E3E6E33008238B123DEDE18557D712E
+ED5223722892A4DAC477120B8C9F3FE3FD334EACD3E8AABDC3C967C61FF003B4
+B10C56D6A490CE9594D57A2D431B9E5E10FE3D8832E227A7087611431ABCD029
+85F4865E17E17F8CFBD2CADC97E0A8820E3ACEC873F31464466A9545E967E53C
+DBDDB8478E69063FBB891566BAF88B7660A4405B16834761F041CCF7650AF955
+F9E853AA9F5F4382E1FE7D0C5BB4023818A2383F91249D48CE021250EC9EEB1D
+2835E18FB73026250B32A8849067D5E2258797C917F998F2D4121D96560C5FB5
+B5D3471216639A8671B6DFAC5E3554EC36D9A72518525A795590C74DD70DA3A7
+78BFC43E51D6F2BA52F17D4DD00D389D3983EC54912AFF73684A8A7E345537B7
+E62361C04A47859DA084BC72EA53512DC54132EB2EE671793603015652EAFDE3
+41C4B6B679BD60AEC5153EA0D2200CB1D097DAD770F5F31E6FC475A225995277
+B867B731D5401E2D02B85BA85158C80FF7E2BBCC42B98AC867E67D25DB656072
+55A0D32AB7AA483A5A9686CEA4E2B3031D90D84DB3E2DEE7706C91BA81CB8DAA
+700E5F61E07D6998C9552C81B66FD10A10033D49EF3BCB0FF22ED0A3737523C9
+8F851C61C4BF8A213BF6EC70C956AE48B5BD276CC0437C72BF6515B10739919A
+F00F6ADD2798CB211668842349171A5AEB0664D2C44397E55A4A9EBDF54A3EF4
+FBBCDAD9DAEF4B0CAEF7112FA828F2F8D9F633D37E5516AB5ECEA87342EF8DC4
+3A50548490F5BC9A8A1F98AC7AEAD9D913BFA10CA86D73AEB5BACC1FEEFDCC15
+B3655522CCA2C772E902FAB2A6FC153597D52763EB44AB7489FF061F7F58E8F2
+AEAAF4D17F36CBFC00D3C653F335D14240C87DB4339DA9D30A5BD1F502BC9013
+461B9DB2FBEEC01BB18990439A0E9CA6576BC9CF6B1A3DB9386C4A5D4AA6A5DC
+CFA45FB75F22E10ECB72565DB441A194902C91427B4F676E531C661F7A2C3C85
+CD534D1C89B6779B2EDC8E44667B992C20C70B663BFBF680A6CF4383EB7CA26C
+4D1F06B5EF4025BBE65795F1EDB5CCB97050872D6C07BC2974F905ACDB7A765F
+291365D6C8152153E7F017A25FB4476C60FD9EAF9A121633DBEAC32F62850223
+D6418566AB350F90F4B35F19598478F76B63E347D4C61E203D4DB8ECB9889181
+C387F4B663A502C638761D2782BB96EAC81A0108D7BD6938F67FEBB69218D115
+D8E89CFABCE15C6ACC7FEB983332A51A6A73CF4E341574F366713D7FB29956D9
+9BF238A87483D37E526A2EA2F101EDD34E34CB92730DCA7235AA0027189BE405
+2DAB4AA021A30C28B26C50808E1E965C02F6212EC7C72F5683339425A7739380
+A422E6191ED8453AF0CAAA424AE44DFA7CC5C2F6EAA8D73A5101D8E9517DBCFB
+2858D0E8ECB7DC430EF23A9E4428CB7DED8D035D6050251AC101A2D0E884721E
+2F21E573F948048BB8FF888911C508CC198BD750083B339500C426AFCD5634A6
+AAAC1C7E91249667B231BBFC64B4317192FE07FE9DA0DDB5E517D097AAE46577
+9555F29D45C67CDE9812CAD03F220B20519F2FF32DCA56A554D4296FE2D1F3FB
+B209B5270E0E695EA5A0EF1144957CE045881AEB8D05D72CE57F4D34617AED67
+0D3AF0472CD8D60933651626550366E300E72A9C89ACD475C2E2ED9BD44B472D
+9DAFE943F8E02A6DC38E447EED964624C37C3130E48211CA279BB6A0BD59466B
+42F3D89B5746F29E084E22CF58395AF0F29E55113F3A3F2F52CB3A6DF3D026D0
+C81754B8E2E4A15F6943BE9D0087D5166060734FD07C4C57D7C7D90E8C9C1F35
+623CEEE3ABAE75E1A18A1E3B50B7266BD2D8E812CFEB4A46B856885B185640D6
+B9C22179551002B94282F57FB433B7FF157D2F0D240836B72AF4A331668AE5D4
+E6B85415F4E8B9D2F9AF90FAFAA0A3866DF417CA5A31348CF9B41B8F5F4D2F97
+CCF7ADE851B5E2E2F6E319AAF5792EBB9DA2C6AA8B73D889F3CDAA42932CDA7D
+07A7E59183CD89520DDFC36E5D513BFD8AD0886046585F29B4D7F42CC0C27AA7
+53915AB1167D292FE91957E94A57FEE2D49C20C9070ECD736BDEE0F046E60350
+EA539DC298156A4E0D019E7D481FDDA6861E20678516AB80ABEC1F09B126BCB9
+52E8272A06BB6DD87ACFC423B4A4FC9A3DC8DCAEBB807C5F748F1FF8B17B8B88
+F426206BF1B7B7D239D26BC3CF0776C467A98CFBBCA5FB6145D5900137ED19DC
+D002F10704AA680EC753C22E29AAB15712EF22AF73D80820A1EEE953463D4EA3
+81FAF99518D4FD0F862A324FC44C4B9542A92C5B60CC983CC8F647CE5BDB4D6D
+B92B380E0E5F7208A9CD91FA9A469548162C761C1BA05AC9D60B766764D821B6
+B4E17F56CE455F06EA1EE2D38FE47581746C4C5FBA63AEE2B58E877D1A8FA83A
+31C972D53B64E92EEEA147426A92CFBF76FC614119C6E9C6476FD6A069C803BF
+E949FBE50B5AB1F1463F9747E8D353F7BBD991C4F90F920BC9407D8E24720293
+846D052214E60390C3CB926D38C83AF697425D80C2B4FC4706615B905516B733
+46ACA325CEA68FB21B2D17CF0B68BA4DF249368625CF83441EDBF2B86C957C1E
+44CD722BD2537CE84FBA07EC7AE15C840041B9F7F3040072E6084CD55B301C08
+A64A53BD4D3DC30DCAC6C152F316ABC59B8EE978793EBD568849DCC2A75A495A
+BC83470D503F8E389F54B4A4A31624E83C601B43AC1E52CB811FAA7CA6B644A5
+1AE0BFD4FC774C9C9DFC2769ABFA9C83F900BE2DD4010416053A1D4874E6ECF4
+D86E44B4CAB15D53E5630C144B0C15B58DAAD785BA298B1893D1B09BA5D40344
+6678FD2D17FF6674433C976D6DAC659175CED26139967C9B2B9CFFD78FC2570A
+E5142141C2888DBF2DC8503F9137CE7CB21A1EBC2D65BF33FCEFBC85C9CB736E
+24E8595CE934AB032CC70BD6A3B0F3BDBFBBE185512FDB7BE3D4A6620478453E
+75D044BF770B44C9741E31985E6DAF5A318D7BED12B02A4BCFE60D25EF12843D
+EFC9BAE2A3F2EFAD66D7858E83EB46BB09D2FF8AE9C43844A7001C86ED97AF51
+C511E3A89A1BE349FF5215D1A57843EF51456B9838133846F19BE79AAA5C1AB0
+5F400E5E8E7B0BF96EFCA3B8F0894BE589F2C9FB6C97BD16D38F0A237CD4F034
+099C41F85C7E2C7BEC8E02C4F327306A53B4B48B26A8926670CEEF96F6DF2281
+7C2DAD99EF8B81BBB777227C2475AE7400DC393D9C0445E925DB1E955950F7AE
+53E9AC4306794239346A419F7B5DF4168382EF5956B81F83BD4BB7635B3BCC84
+7D84D05AEDC02D14675D777CD19B08124001A4F4EA96990D96000C082A12F00F
+7FEF793A7FA69D56D3A38D012168C5458B667190AFE80E02C816CAFF0A71953C
+D80B085CD286027E2FDBB05452AA762FD7C813B2E19A79C74190E04E746C4933
+CE1E300CAF5DD53B08110509BDA404EF07FA1BC5224BF1205DE8E0C3276A13DD
+866675103B960C5F36644F96B4FAC16F5D6E91F74629B318FCCC8E8CB13EB76B
+B0B7B90718D913A52A04732EA3667674994A325A7973C601A7DDD50F658E0826
+ACB8E53D4914B0274AED98D7BC3B2B7F9D48A7ECC2F8ABEE05CF2C4F2B90360B
+B7DF779EAF3E103D1D83EDBE32DDA873768D8C37DC10A5354A94B4153049AD64
+FF3E0BB51AB91D7C0B4134D8731CD0270DAAF19BED9EAD800A14B65B68EEE89B
+40DD624111670DDC7C030DEFE0D1B96420E249332445C155BA96231C88E70643
+D526BDF3CA1E05FEE72CE2B881CFC01ED780C10E89F0828AD55FE29043BC56E8
+2750A6DD15AADD54492F6092618F4CC6A31766B17FC60766D18C307EFC9BB787
+39047DAD6B38419EFBA46B4E2C932F97451FE78AD75FA90DE409FC6DD46585D2
+1941F5ED47A8FBAEF5A917A240959E8D9F9917DEA3247D9CAE6BF7A88DB4C4A4
+F9F5A6DCE542420A032FF3392FE0F3357B51F884D6181583A554F75B1DF192E9
+253CC828FF06B0D992D5316435980B044BB191508C7C45CD90F797F88856424B
+14A5707459C50EDCF3E3D8D1667AAA83015405354CE744C66D9A5728F29E0085
+6DBF740717FA0799E3BCC4ED7841588B496A5E549B953A7FD288B4A045DB611E
+E3B2F35963FF18ACCB1C968BEEA2CBF52B3999AAF89A05320BB2E97F52CFE06B
+9F10E3A79865A3059A957F97972D80ADF678A36E2B586C101FC6AFA4D137C13E
+EE7102C9B8EF78CB057F8B7476F146E8FF5C897FD5503DD198128CFF7B5FB339
+FAD0AF0EA967F77B07B367A4AC9F668F8BED99B98E87FAC750EE045602D76C3F
+289FC9D97694C96AAC0AD1BD3FA94DF2CBCEA24B40F47B9B59E54EECEE7AC4C3
+A3F5D19160E4C1EA830D57FBE10D8D46AC5CA0260F22FAA45236F0F542BEA9C5
+5A88F878F68B36114E0573900C65E305462B22A3429A17C7A567694414DDDA46
+5F30542B8FD4F00F6C295B2E8D3A986B953D96822DB2ECD48E8BB1763434E652
+152EF3717F5E7FA10FF0B01D9F64E22C5DBD7254629658887BACEC0ABDE972EE
+67299FB84A05B3EFE22B6976DB4CCA384232DDAE38C31623A4E39EA2E82C1EA3
+BBB68F1A7DBF405DEC37CB7203A895C36A44BD2D63F45B3888AF91D37B510A59
+3C921BB44DA620892AD87B665F69F6FA510B071ECC403CB2BE2F54B3969C9E88
+713244BC97C1466DA8216DA7600C221E7E7EF5C789D2E12B36422023A03E11BF
+2790FD6062FE6BF62F5010A92F0A104B76E255A0975E04F6F20F760881BDA7F5
+D834D1D328B6EC19AA7D5E5678A84C74C82553DBE8BB5765E84F5A8789032143
+6020940B4B8D45FC3433D356E28C25F42D0C19F911213D85951B2B00D01B77BB
+A4C72E964F9D95422BEDE582A05CD52E03D28A996E6CC8FCD910CBAB728073F9
+F9FAEED5470FFA55930447C5BA816F826F983D53EC9941EC8364B3060FD74C95
+26D4F5CA753B574FD2FA4D1D333785241D8741B79E628BC852FDC35478C5ED9A
+C1BE88C5EE7302816E65C12B58EA16FEDD4672EB3E24B6EDAD5DCE263BA8A970
+350B651E5A9F3C281D85BC3F44EADD0D93402E36489BA5185E7D388974B0B700
+70575188BB610CCA20F081E2CBDA13DCC6F72567962ADB342E02C1E763B673C5
+F7384E24C6E1730A3A790D690A2103AEF88E0C1D4480DC9B25E5C8C9E1919C95
+F83320179B4C7C4A26D559BFB24D7D596FB73758C9990C451E77FCDDD17763B8
+9C30A9534E3CB6680D3D419D4B70B0B0A0D160FCCDE169714E373F65B7144CC2
+DB9A44E041211E1517D3148E65A2486CBE5E74E625261CCF65392FB4F3091473
+F9E8DF327D59A58558E5C9F7190DB577D5DC658F5E36258291C708B3D224653D
+064BB6079F91293FC733710893AD1C96169B30CBFE4E9D52E7EFAE4AFEE68FEF
+1AFD5E7E9DFCE8DE332B0FDC0514F9B3090AC85BBFB527FD8034DD33E9576325
+A8769AE09AF1BA792447DDD932B98FC9486B39E0B04DDB3EFB7A30DA0940B33E
+E27490E0E841E87B1C90E5248A91742ABEDC10F43A8AF0F9C5B4A4930B1AADAF
+01874B9AC3B8D0DBECCDA6CD7E96471FAA15CB7F8A599C5746327CE392224C3C
+40BD60AF97BCA6FF6FCAB2FEA114D7300B89E91C3BC92D5B3E2C83BB37992D8C
+72F661EFD0AA034C738C019DFB79BF40651A1A34BC1EB9F5AAF58F8B3DA32645
+24AFF8636486F08BC21533B5FF7391B0679A78DFDCB03DAF6BB7475A1D51DAC1
+EE4BE9B986655D1FDB6936445EF99B58B303FE79F11275EEA96A9F6808EA8775
+D873D1052FAC93769789C700F20EB2ED6D15676F6E563A769CA9298E463FC311
+83281483B1C953370D196727A6A0E66D32D9480AB1B6DCA77868C1A2D5DB6483
+5F31EB6B18EEFEF1CDC31533E69B0AFC6B30FC9912DC89BAAEEADC30BE14F448
+1A6B70D36A5D9B01799BEEA686066114910842D022EB464A9A1E8F0A5628BA69
+AA9A1925CCADD44703BC67A89F3B48E4680726DC4360274185CF3C8AB747A8FC
+4B928AD62B092EFE48B01E33ED756DB696171FDB775396BBA138E056F71EDAE3
+7A1E4CC272B8418114B0E81DE0BC43DB3C133167344488820A92DF10FFA26FB9
+65FCA2C87D302E956DE6B4FE145145440C83DB43A68F8B29A592B127BDF49063
+B7F11E155CD4CAE305525BEA56B7C412A6260426407BD892A3F2B444AC3421E6
+FB6E6425EB5C3053C5644666B80405530FA0012B54557327C98E0F4F064099A6
+4ACAAFC1870359C1B6FBE7606BB8A26026AE20C212210449905E628AF1B20490
+8CE908B7EF3E3DB551C85AEB0F7FEB6A8D215B97998E5DD9C7CCFB2A9402B8B6
+1770D4023777D4B45A73F471355353412C51D4CE71FAD1E0AFBD87B5F86307F3
+10D0B94F1194EFFB64AD5DA54A4200490F609CA8B912E149F8217ABB1E9EBB3B
+C4470E7365CF5E1E761AA1945044B225BD53D142F6588C50E0644740F7DD55E4
+8F73201E5354A8BC78339211AFC4935F44701FBA043AAC4BA4698E9D7700029A
+C79F992F62627C91EB855F64C4B251718FDA71EDAF082A0C7B00550949D617A0
+7071FB14F05620CCF2180941341D8E60FC88823438FD728A4042AFA8B853107F
+852F631518B61B234565291B5D5B89DA818DEE3AE3B68A2869DFA63255CC882C
+3B16BBA08FCE3632E57FF7A07F857A1F0FDCADAB39D77960BD827CCC8661A997
+648BF5BEBC0FD2286C2A112A8DEB9CCB6330A049170D5D68EEEEA011D3EF3EBD
+855236B9380087CBBB6BE24191F728B7EAC5B50F7A547AA0989B7C7D3437DBCE
+1669341264E290646F2C8C5A3ACAAC7CB63DC692FAAE13E9B40E8BD39FE16A0C
+1660CE66872D061056C04DDDC265C024BEF8B7E3C3AEE76FE5C9702002C28BE0
+B180295EE00E567FA2E5CD1638226D24A7C732E1BD8103B476EF5702768689C7
+D4FCD47F2AB94A2B1FBAE6ABF87B09E7713C773FB65CA83F7318035B332B9F99
+24A2C8897527021321D003AAD7C273E4BFA2710B9BB26C2CFD3D9A5D7ED1096C
+552D50028AE2476FCD6D12A5D0A897521313ED1A3A8456A70C16EAA50A3E6733
+6DC89FEC56AB54A579EF264377A103939D5EE00A90B4F2206D0023AF9491FBE0
+800C6540FC945199E20E945F46CEEA2E885F6800B9DF042BCEF4291A4B1A62C8
+6A7ACFF872B25FA3AE69E0093F3D0FF13A3313430C06F1AF94D500431566F659
+E8C859A5F80F5BD2E85C8E32603D3745628E8FE6FBC50FA68F9C3811A2BEFEA4
+5852CAE2AE5AAD3230ED050593BAD0A9581EB7B327C6916B8FC348F4C23E6FA2
+00FA28AAACCB3091C1D83F7BB88672A53A2EA3B8C7C24374E400C57F0F01019F
+E52D5C47F389D4C9AF126F4080F9AB8D1C8F470932BBECCEC72A9796F6E965A4
+82057DDB43D68298A00880D4C2E2496F26F015FD83C5549215753459310339B7
+6B2961EEEE74DA31FEC8E2BDDA42D4080A32372AC372524BDDA580EF6634ACE3
+128C69D04D890DCA337212B109585C665AA83EFE47D5BABC2627A86EAD11BF7D
+744176652C7F9497785A7A06A994ED8414BBE8B26E74D48CB83FA24AAFBDD507
+84A90195EA3D77BCE8C2BEDDD1DC52E8164DF15D65B916EBDF3A8A76849653DF
+AE3CAF9561AF3B705F75B9E5DFD6758DB65A2FD54683759912E0D0035CFBCD86
+5D22CE175F9E50FA2301ADBCFAAB2B89B8917307766C4D228198F718DBA1B2E4
+BBB59748043483206B2C87D3A6A95880E47C868308F390EBB8A2F7925D14E782
+6F40A532E02978A494F370A732947755C8CC6FDD9F7092778849B9887820EF5F
+67871FAD992447F76CF16F85D0A04140B7A29CE125D733D197D58FD4186D335B
+DBD88456EC1A698AFBEE2418D715F0A4CFADC0E9D88F83AF8B6CA0AF8A510C59
+E63798EB43CAD793E287BF3CAD7E8CAE1E9BB5F52171A78D4463B995CF637964
+5825941C8B7E1B1408619FCA686B5792D720974ED9249ECE9FE8FCC567D66582
+903C00361D3E72B158C3AD92707D0FA8D6ACE4E66AFD3916267CE37DAD4D1373
+D818CE3F6952EAB0E1C9F7328D9A2C4EC787117853336A14E258D14211E2100A
+636C28C34EF07F0E59BABCD25E48D57FC896D57DFFCF445C5F8015B05CBC1E06
+3BBCEB0ED5F63317937B6E3D5ED2A177CAAC366A85E33B1D60649626A1EAC051
+CAF959945AC0B31D21C930C20A2C4EB6B7D7B2A078E2140075279B962D6D0A0E
+E253AC638B9D0E758FCD57D9685EE33312C1A0A5CF1762F57C0C7236EF014B54
+7DB1B8C3CE37A262AD69A31F5A1E4C2BCF7C4310523B30CCA645B8DA15419438
+C2D541657DC32658E7F14C18F6048F3DFBBE365542B2411B2B72CF35172C6264
+534AC64D3DEB13D303AF97D51A071EC797D611DC571CD4A5E4B308CFF0F78CF2
+8A475ED04DCCE94CB6A54B5D27A8719A0B094E42D3B5FA1D967E96405E690437
+6F9F1F155B7FA0873D8AF3D270825B0EF286176436B0B820176667500E587821
+56ED77373459669911695E73E63BF4D510C4E7701979B23EF39FD99184A9408D
+6E873189ADCE5797F05566E50997C9560E91F4B1C26ADE2DD3774D903024A13E
+DE0D58B50937201B2A09636706EE7EFA0BDED029524BDFCB30ECD32498B83D55
+314EE0611726295A18202E78D9E7ABAA72B5E3CDB4AE7B8AEDDC17BD74DAB42B
+89CD68290A966725CAEB2EFF9DA3263218CFB4EC471D3DFE4F9CEDA7EABF0254
+FBF5D937B7A3E1613C70FE9B6EFAD84880B93B599B2D1D813331DA7761B1A0D6
+2F34410FFA48078866C7B64E1E4C6302ACF441853116E59E434E14DC1EF4A4A7
+2E26C987F09AF3C55C7D0CC9082ED09958E703F7486024E351F0EEFB34B069C6
+226EE3F230A7E511F12853850CCBA04985FBAFC4D47EB50DB3BDC0B3A663581A
+4F3A4219952A5CC56B52BAD811DC40C844FBADAA58CC5E267DA97B5E069A414D
+615BA09E9EEB1B5569D9EDD079214D48AB202F11B005AD3DFBE56FD549948DBF
+70F52E38E750F117266FE61C81CD58E3E15D51FE0B2F99426D6F68DFE42F76B1
+C606C6C44A719DE7A7064294F45F0C80BAFCFA34AE97E49505319A38E0768A22
+013B2EA2DD4CCEA9C99BF5A1B462BEF990BF43B31AB889FBDDC24858055BB674
+C98C6D159862B0A98AE6A40E870F02D282D91027186F22BDD96FBD7BF2BB485F
+D76EDD12377E32DF8E4EF5950323C14ABB5BE3A36153EA88A7174862433CB1AE
+431032B15FA5A8135CC0E5C281463B9D81A24A87CE67671CCD5E63C77F43B6C1
+D578C4E656523462C1E86622E415296C2E4F4673281D976A2120A6C468EA4C91
+7F63C8B579466D5A32C7F1AB7CE762865FF1FD67F5864E5FC17BE838221612A2
+0A3068D841DDC6DE83688CD0FACC7802A20A5EB6D8216B9838044154E901C336
+02FC88F666C7ED81894089B682B047113C19A69E25FA0A54CBFE9D83E9002CF1
+39A985A1AA9C3A7014232F7EE4D840B43621750CE0FB3A0CBA00608A4B2404DF
+5CCB96D55993FAF317FDB02B908697F5961E95C2924BB6C120232591F6378D4F
+95089679E4028786A076BA359C457EF10D7F085457D328A97C303E575CF664A6
+510AD6BD87E9BD84993B8EA92441119D3C068471628A5D6B13B95692C2467BB2
+F239F2F71D77DE7B4D89F5D4757A0EB5FBCF02BFE433633215E43A66386F7FE0
+9C53EF7316B3746B3B132906D4F88BF1AAD0847701F00CFB561CCB595DD243DE
+0B26B643227743471A5BA1685A850C35B267F877A6F6398C6B98D076E9C77780
+2AB1AF51FF4CBEB193B07086E706A42C572943FB64EF33B2FCAFE24A7E8AA7A1
+0B4922FD10D540926AB84D5AAFEF3551361909FAD8FE4194FEB6C80B82BBE500
+BA57EA207A371DE4FC42E75D0C67E537C0BD61BD8B0180E628761D164A984395
+A72059979D7F6656991B167335EE5A80F1C308DF85B02DD20A23DD5EF270640B
+610611BCB26961CA3A1BBAEA7BCB4CE232E60DA31233D7314E18E98E17B68924
+D0EF745E300E28030F6670C4C2F1ED2F77855E1566A71B087E880854229AD80D
+394D7EF737422C6EF5F82121498F7C2849D92D296E722EA5BBFB3A9DB28C9EBC
+83E3C898523C8443CC31AD035DF36428B235A3B0A266263814261553D7333D42
+E035E47D45448C30A1B7CE9555E40CD15E85A621E0B92DE16EB80EA7DAECCFCD
+ACBCBB3218AF563C1E7E5A48F8EF09FEBC37824CC08A5360640BB17710A5ECDA
+DB2CDB17ACEFDE8AA1B61512532ABC877673C46D2ED300E13509AD1A5D943788
+3EB782E275EDBFE0C92AC0395A6E3A2D629461953F86C652AC7E3FD7DF2D61EA
+D736CBA49F438FC7B411CCBDDA2E4322C05285154C6C083DE97C76C16514FEC7
+F8AF666913C95B1392EAA3BFF3213E4AAE753E34A76C5748B50A86215CBAA451
+FE6089C1CD9A4221D13E18278A7F6E5446424AACEF6E602AEBBB00E979542548
+03F00DE58CC2FB13249C74E48A07ACDA40D82FBFB59DD01ACF79F4EBF044D2A2
+BBDDA413740CEBB6DDF8BA40D44BFEFA0C1FB7334D1CF3CF6DB7C37249622BE4
+BB68518A75BB3A2A6FF7A297938A3C986ED1DBA3EFF2A3DDE9B389B56D97D431
+75C68A664D4ADEDF7B744D16448572E723F8319E6632AEB6E2359139DAB79693
+B7A28E94797638E4E18DE7CBB3F7B32145474534DA87D9B2508F6EA9CD75E334
+8EB6B63C9F292A1AFA82AC901BBFA2B28C690E1AC41DDC5044F15D6136DF326E
+C566C0FBECD3F9BA8FF157EC5645F32C10395A8E068E85DA86EAB99EA8AB4F89
+E3A03269302261C6A4526935FA1672EC205224D9C599227E2A9645FC3C3A26E2
+E4F62F16732AD07499DAC123E7D701453BF552439E48A73462FC8DAE9D72B50C
+BF30D30056B64B406EE4DAC044F794A5FE9035D0A0BCDBE4DDB7FD8B30AF53B6
+01FBE4ADF1CD33D4F705A140E20A3E49C7C2BE9601DC03BEE4B71FA58960CDAB
+1C83DFB2A964F75AD9A1EB81D57444601601C80A3FBB12C193B5EE5CA2D190F4
+4B5524DF65E0C3707A4FE9FF699BBAA5AFF5B06734DFD74D8565ECF76F7B42D4
+223ADB362BADBA632957632F2D7F74A6746A57E760D5B18FE187B3A2AA7CAF89
+8A8C63E331D9C1301089B3C18EBCCCB03FDA28E1633C80D9A55D9F3616FB9D5E
+3D2668879C5CE6FB9DA097201A15F2F52342C3A40049B1172C257C39885F5832
+DEF8DA8C8771539BC5ADF68563744C9362CB048554323BF9537A5544B10A2680
+3187B82066FE51F9F03DFF41230589D03D182DAFF4B1B37671FBEBC74BCB58A3
+0F2AF5EC10F8C3AC21754C9E12431C4A29620439BC010AE9983E49DE5B8B817B
+39A90CD358E3B4250BC1B46A697F2DEE283CD5659C858317BC04E28AA41D3416
+8FED0681D743B664A130D7AE54745F37C4C13C85AAC3709F71DAD3322D0A4B3E
+8ECC00B26518842E44292432AACDE0EE7079A861A2CF4806850EE46CDB714DBF
+ABAE7EDE2426F200FB8824E295D661814417B7A6ED56A878BC8DE4FAF3F1B826
+3087A3B30FCFAE383E3414DE9C4AA52B9ADAF8E1B2DE61E6C16B082C90D11F73
+F1EB2A494D5992139520BF0D9F315126C6910A6F787AC6FA68EB26F6AE19EE8D
+7572AAF7F9EF4D76E22826765785C746EC9A9C696066B3142800112883155634
+98C14D3221A0F97CDB6BA9B9A5C97D16662471100A8256F5AF4B17B41C57B2BB
+A444CF16EB5400A336DB6EB48DE28B653076CA53A918C81867464391F7FA39E4
+C521746C296530CB54CED988035366CB8B787DC692F76A41935A42EF73F1096F
+BF08D24EA1DC8378140FA0E65CC2E02A63F527641041D23A40F360EB4770A599
+71BFB19FA553152A94A0A0DA04A936AC73D6E2490517C107B91D6E192E8E6BDA
+F83366DC0B67C6CBF8FC5D9FB807E92C2EB7617C9683178A81A28C7A0CB515E5
+41EF808AE0E7DEFBA40202EEBA9A8A1E3CC4FA61A338421098892B57DBB28FA6
+29E97749047567CBE05173A15AE3CFD178DDE3CC80245E7DF6A5F2E55EF40641
+88B95E4481AB785457F03949CE396615D0C693B602851BA9D8EE31733F9D6BF4
+81EC49E069877C13346E1A9D0DB17A1D92FD8AAC6F7EB288548BDD619267DE8D
+9332855D195F914DD7D136F155C66A246238605A750B419D7E4936406E30F8C6
+170D9CBA374B1EBEA00760D777A946BB2459CABBEEEE2B5A22812930B829CFAA
+FC6C73C5AAC1B449711144CFE9AE5E861F32D8ACB1763668374EE0428A2DB86F
+45ED9BAF119A757B6B077BAA8166A39AD811CEDFBEEF1B6BB49B9B4C7B358007
+E98F5179C120BACB1A416058054B80325EADBF6374D50863AFA4A85A22712CAA
+F0CCA9E9D5784E6DA0AF488A5B39BC5E8998D8BD89B70629E2168E71F05BAC1C
+8696D2C800780CAAAF1DB1B5DE95A4922406DA163CC4E10FB09C5AEDCC1652BC
+F9923D623199B048A30BE135534349CCA71B9AE60DFD29F06AB759989AF5E5DA
+64DE70AB169B30BF30BA4A8DF08F4CB9DA744CFDFC9F8602E8127DC689EA4DD4
+CCFF6B1AB6341B685EBD454002C45CD771D7D1AA0DA578254C9A7CA117C9B08C
+AA5BF278DF4C86C353901520494A347499BC6AC4A45981310D5F9ACE156B3650
+AE9CA1E37070DB58977CD1B89A1427D4ECE356CD5F9659EB653BDBFF284A650B
+1B6260AE3AFC5DF73714FE3ABD5789D68B60C391480683DCD52281611D77AEED
+549C779C15A11F207F0ACB610175AE8A22C28319F792166574662053A397EBE5
+084B58A61D1EABB9E59D05FCE1CBE632B2D8DFC0B422C9D3BFA8949F0888C23A
+C44FACBC731820A45D030A9C9C42D44259B2FC5B1EAB3E8AD41CCC7A74B47D92
+689D8A61C65504186B17FB5B339E857F741AEF6DE1BA46DE2BB19CD129CB21F8
+E74D93E5685DEDEB95FAEECEECFAE7B4FB43CBF2A2F53A1D37066FC1B5B3A3E2
+2490CCBB915551AFE225349BD993DBF4A4507D3FB5135AFCEE97788EA117B26A
+0E652726A9A5BEB838B1D7CA3B877F3CEBBE77CDBDC19BA86DDB9E53D09DAF75
+516F32BBB96C11E38437598EF72720FDEE89F8DAB322C25C41755489D012EB62
+8E2469ADC02450284D76E04BBE75F9571FC2C5DDB3139BCB3A5D96A8EE709FCB
+89FAF058BDF058A84978B208829667C5816233CB38AADE3AC342217E3957E5C3
+C801D2F57E75F2189A526363E1F4B46AE18D8ECAE13C8D16FF56D5340065FC1D
+CFA9789F8D566424DE1915D6AEC9276545CE9E6CCDD4233EC7D505226F00B402
+438F160E8B1003B506D33E2B82CE851BAD08C28E0A861545D5D1FB22E455D938
+2A72608ED5FF3B3D38B436D3FD43D065B0DD8DBD142CCDAB3A19B1E217B760C4
+25788153C6EAE267B3956636F9D43455DE4C8BA39A00E33FE1CDC022D23781A4
+B5FB35FB303F942132A2A0413B551E217DF1FD3746B264A20D64D948083B0E5C
+178DA27D169B13531EF681D6A37AABC10CE5FFD715A53984717757B1562AA1B9
+51E33C7EF5F1ABBCCF66452D16D0CE5E5E3CAF96944C34506DCCC29AA17F4616
+B0C5911FFBC2174C0134E4A0C87C33E69896007DE816D1187CF797A2E8F3F5AB
+AA63C39604D5F1755A433A975ACC0EBA71496DC8AC2F5F0072BF7AD48A6FBB32
+3DB913A944F7F4E7F15199427644AF7D05216A1400C15FE88EEF0E095930150D
+0AB4682B9838E4566006E8CB22A1B4D2BD0452B12C08D6C61740D89DDAB068E5
+2DBFD3517DE10713CD4A4FF7D86FDE9210356CD6333A93C96498BA7D28BBB44B
+FFED185935FE5BF6F8CE3E2752409F561E4B5E66F3EDF66C3806416A8DA0BC35
+7255AD6E400A5BA983985068D0CDDBD1007ABD8C84B98939C484436ABC7B5FA6
+6AE94927D2C9CB2808F2436875FEED07B0A0ADDC62535C052E0AE18A5763EC86
+4CB4353C49A547AC2D50670757FE4501A7E4D320EF875D5BDC94830D240D7185
+D2A7D458A920E3D5938B8ABC21631D14D0C39ABC7DE7531C49D425D5DBC7749B
+0BBCDA039F84019BC3746E8DB010E123264CD15095D1FC0CDBFEE83EC5DACF1A
+2F54D0B1B2EE9D7179910D45996FD6C0A5B3C26E997DB0C6FE6299C11FEB9321
+C7A7B231E00760ABEA972BE1F5AE144C83CAFD9D083F51CA317924564F05C353
+CD9B2B14DCFE7217AC70D8D9D025E22CD406870FA91A1C26172920ECD252A380
+12C6D4A14003140C66C94585EDA483ECB57A5BB0A88D1CC5D0BCC425B6A58558
+0A6A7001BFC6520EF2BC90FD63531B69A4D7221303B7E36CE6D65B419C4F80F5
+342E745D860CED70A43933A63141A2AB082023CAD1E9DB0D3B48097123A80175
+A8A7D6D2A157F873A2160CA70E07D4E637AF5247F9F02264C5F486C15C8BF00A
+7633661DA93EFCE08DAAE81B81F3052239AFBD0CE0DC8A9A37A391F23F5B29B7
+3A73E898BCFA29792E74677F9C95E37D424EB5F99AC6E5057DD7B63C9C108A0C
+B15D4F6555325CF693A42136142D771E5BC81984E820F5380184F0D1763D698D
+FE96C5834384DD2A843781573BB5F216D86B7E2C1EA4583DBBBDCD04BFD75F32
+040772B2E0A833A9F9653986A2688940FE3025AD2DF5E2F9C4D7CD1082C51FE8
+C68EB88496B9E7221E1172DDC50D887318F47298D459393530B1F847268DD5C1
+E2E91ED20142FBFFE5B605843412A02046BE31FCFCCCE74EEC946B4412B0F6C0
+ABDEA1A4C1F239153B09A0681809C3BEB32301C8B31E51C57C52D7033844F211
+89DDEA5CBA71C8BFF55F5E9B5356005C58C4375D707863F446C8252E6C38ABB8
+C973F9D515E68D9058C079316BBA44453BAB34F4F69BD0286BC11C5743A7C337
+7D566A8C20ABEC09D10FECD771EB4D7EC5E2F059E4D84B62A58EB79167ABB422
+E8CE6995245A37081357BE9CAA1126E00AB501A779602112B28B2409AFDF22E0
+7EAE70520453EB711C9E15DB89AC7ABBC27640E632FDD1011588D4D7F0F02D54
+CE7FE67D6936EC54DE81AF0B4100C33FD91B23A295A4879879200A4659F351A8
+E12C2A1E02C5A4D92F51D437D06F0D1CDFEBC2C8F44913690537D3163EE5CC2A
+F5B7B8173A3EDC80B1478CF7C2A5ACE305733BF769E750C921AE5FFD8CFE1532
+F383A7054CA7D401814425A36C51BCA33FC13152BAE1D6B5DFA6932B683C6989
+8AFFF906F1DDC7105159BC2DA6A472B902E9ECDF83A21F0D9DD827D82BF58545
+E280782456FC7DFFFFBD80203486F267DF62FE574564E589B306364B85628EBB
+74DE1E05709507BFC806AA30A327668262692681625B21BFFC999D542D732B12
+BA10B7B6B09C1D0DD89841727F37453AEC94F6063AAB3804389659ABD3693A01
+8E1BCC455E7D355FDA070C416EB271F0FA218A18202EAD4F82E941A643DE344E
+44AF41A8ADCC419FBE67C78A8FABB1A7BABE2A38D9CC5F73052C2A064B9E94C7
+CE2CBDC782D127FBB75B5B64E6C2E446DD0118BEB8A81AB0A0B6007A757191D3
+8ED786BF32A819305B73E7D673040AE27E6752BB0D9F166CCFF68951B1DC0E3A
+7D5DDA00F27F055A2E1FB2D410C3641AD20892B3F2F8108D15617D9EBBDA4BBC
+265ED348F3495E21098FD344D92C1E451FCB9712E985AB5F61CC954F825928E5
+009897B6F235FDAC0B1A8C690AB59682291AC519D00AC9CC22533F155A180B75
+46BCADA5AF2A5CDBC003A1671217FB7833C3BD11222A4AD582A10799C0C6A00B
+7B6039AAD2723F8EBFD55A65466DC4387667A3085013E36FD44D14884DF54466
+1BC4452BF761E1A13C51F253103149A572E9B07131DD5BF048EBC1D3C8237477
+5DC7D40A44B359918143BC3575B6CB93796AC1181B67B470693F0A1456466A1F
+E663624FC2D4B45515D380690D7A1D90B17F2C1FFB561CA8D6C292D35FF227C7
+467EFDBBD369DD8ED76BEA4ECFAEB0FC1926E13D20F24353FA841FB70F0C9170
+E7461DE9E3BEC90184E24D537493E5871291EEB5B72DF786D6F7026B0AB13A4C
+18BE767DBB48965435204B850AD36BE23D094324829AFCD7F4B4AD30130000D0
+ADE896685B123A41B5B215CDACA44C4BE8ACBA879EB01E542FA8FD4CCCB01BC1
+5F04FB51D7706233ECB865159657824882199D38EDF551796A6AA322F9812D70
+9E19404876A4376528B7845993D719FF69944A7E5728251B803871E2D7BC7D69
+703B287CDE9D21679D3A43FE69200F86CA3596BAA848D7748C0D30222C391F9C
+598F80E34AA63C1F82EEC6B3536B58C33AA8820981E4C375B0EF548929CDA130
+C041AE8DF135D9196A9F44D1D54B22C0EE8B05A605AC34545B1F9C990A17DB0E
+DF2AAF859D8DBE3D34FAEC5A49600DDFA51C21945ADD342F44F5F59128B14428
+7A1721F59EB3C7EBC6E55BCA2DF40D2B0A7D7C07BED348879DAED251F9E2D33B
+B9B259926BB4756CCF4B234D63DB2F472644C2D1401150BC186C8FD6A7E589F8
+5435E2DB5A893397D075E8B843320D3FE6046AEE48BA1A9F557AC5120F596E2A
+6685538298C859DB8DEDE7A4BB70DF9D09CA51F8E5445E863762DD369E9D4277
+7362524389E71CF0579389641CC32219C600F7B2420FB8F1C3A42FA376705CAA
+A5BFD30A1463984695B469A71A5E3629A78DF438236665F539F50BC17F71160F
+453C5ED94A930F92EC9F331E574FD8186D2003D706E834CFE45FA81F531AAF45
+CCB118212544977856B655CC4DA54C8074B90DC1051BC1BF8DE4010BD2C83FA9
+5A94D9EF357803ACD47A10F41B585EC2EF773EDDCFC1E269B2CB09B85A61740E
+90B0B605357F60A18B6DD45FBE707A13A2DEC3B7CF886166634634892CA2ADFB
+A23E045B53AD55EF2307CD02EC72E8917A001831F9DCD324FAC25453444B75E6
+251F0421E74A159F3E35BCBF15BB2F94C13677212E4B3D61DFF20336444BAD59
+3FCB320E8A8CE2813457527F7ECAC243964AAB3A249951F9364AF3B6474383C1
+BF15E87325E8CA4CFEDF9A693470CF05111AF578FC1480CBB041B6FA460A0AA3
+352AB39589A846F69651BBC12791AD76D37343099DA3BC228E78313E64ADCB38
+1F03FBDEF2B30909ECD1226F219EA5E0ED7416FEF6AFCB8FC900E78A2767D9C5
+75F611EC4C9DF831C814127BFCF6A6D31B93361FF342721D7314727DC7C67F3D
+49AA521A5E1F5C5C0EEEA1E0633D51286A3BD2CD6B6DCA507418C115B95F9D84
+D1AF23336B5A0C4C0E2BEC36E72796F172CE5407BC0285D166AB55F2D04B8108
+613D27A4F2141FDFEF6183FBE5FC602B7E701A4B4809E0DFE0C96491D55087A7
+C6DB8D4AB19D8D1CCE36F5C603C33357DBDD2B20D94A1AEC7A29EFEB6FCA9D8B
+45742F1332DC67BC92381760C4B3E86A7C7ACE24854CAA7E9D64937BFFF43C97
+00E0C56B026DF486EC25A29AAA4538484BD3FA7CED3FFACE32F29AC28E200A25
+3F2AC52D05EBF8A78B9901229E8ABD80E7CCB960504662A9A382972E086F827F
+44ADA5DEEB1CC4A7F77CF91114374BF597D5120D8A8894156AEC67BF98DACD40
+4FB5D499B597CFDBB37806CEA0B7F31BDF656ECC12A90F6F42B7B05675C1E77B
+E38A5229BFD53262EDD5A81BDB6D549B7BB4F85CE769E3886365FE5913564996
+FA2BCA5B4A47BD45515E6ABD33E7DB0D6D3E73F30E031C1F5E4F880A7966085C
+10217860C92F8BCB1DE7A538A91939FFA9A9EB91670C901A19E1BE80E80CAC52
+D9B5AA697DFDC6BF100B2E26484E7DA2A576A329AF51295FB4A5473F822DF603
+EC9ED957A19AA163BB44814CB88A79000370E2887851818A4943C9B4491C4186
+25EBCD74377725969416CF6F3B4C8DF4909571CD4F5B06363F5D018F939CAB7F
+C869B51F013E924C91A726E2F083BC4C99F8667FFC55EBC6FB3BFEC75F48345C
+377FC1DA2331DED7EC09F50B3B4242B61C94F29E875AC3E2380C39A1EE4943E6
+51711B1AFB5924E30B69D69EB4E27E514A79EEB9AD5115FC96A83843FC01A69C
+11712E8DB1A2E2AC3343EAB5F4CA762112687B66E38B44A41A08B42F09F51081
+07E6F7C4E7F198DA01EA87A1A1A359B502157E6C4E0786AA7402BAA26A7E99B3
+1DA23FEE96750A6001B760FFB4A5C1D13F06FE76B111A0BF289252DA6788BBAF
+C405D212687C98FD2A0A19A64549B7433985EF540E302435E66315897E4DF3B1
+78C293F1E3FEE474B9177CC5EDC983FA41096A7B68B8C01937EC5BB93519E6E0
+0CA3C33D13304680DEDFF8DF3076E095AA7D0D01C75662FB33B38580513DC105
+AE28DADE5B1D72BB3D0BC484428B67928D971BD3AAE41C591FDD565E55CB23F9
+33029C89224A89402604D95410D5552E40ED5B82FAD4B399D61ED1668F1E85F6
+1798FA5E6E956D920C92302C7CA3DDEF7794F558AD8E060B6648BF467DC2B460
+0DC3662D47AB0D27D77B0EDA6EDA8354F2B2A7C3B1F0464EB702B447079ED974
+3608E903011432306A9830DAFFAD431562870BF6519CFA8CE4D1FFA3B942DECB
+7871D0B9398F41CB9E7EA4865F520B995F915838897FA086DDC8794426115B33
+3C0E5F3F8BC21E3879BB51EB6DDEF3523E2E352A01897FD2B32111E8C3D6AC66
+F715349B6168D1D423CE059D950DBF4E07F72E053F45CAD006D0615050E04BAC
+53546A6A05E6EE4768D5261D63CC4EA879004AB68465CC8D5C844D622B88DE71
+CE558EF389FB2961EA4C36B5F450CC3679F3CF72853E158639CB651C240C46C9
+318DA53E2DD3694A74BBCFBEBD252326890275084E4CDBB81002B9883ADED38A
+FB2543436DC62E1EDD180CE5817A740CADC9DD13F1D5A0023C7BF9610AEE65F4
+75188F2F52C9AEE71ED7B6267DD38AFFBC53F808CE9DF18AFF9D2DF5409550ED
+2F8E1CFAFF15E3E152328D0DA24698834E04F64705916884F9F382249396FB87
+8332871162BD17F8FC692D128C4BF8813579FA3B709ABDCDFAA28A4195454786
+E26681AABAABD46D2AC3552FEDA704154A7079B07EA9E61EED7640F4AB57ABB3
+F34EE74E3DFDE8730A8264BBC665BC5BD54397AE6EE35E485A59D5499101346F
+A7B3DCBE1D3E1E449393425391A13B8BE977DDB6999B0862000689CF4820EC9D
+DC0876A8B34D4F110BC92750D19391CE35885FBD745F70011F4C295AC74083B6
+5C6723FF8967B38478FD9ADB4080A066B6D2A5B09176A7BC0E746D710F1842BB
+FA3E5671E7D0A566ED106FD5CC68F5BFB9483C40693C0594BE410FD05564C4B3
+C62E61E58559FEE6BED5F4E45E3F9C2551931B7F4F3132DF4292B2A59B5EFCCD
+CECB71C52694E53F01862482796CC25A99A0FCBB6BB1FA089D795CAF8CF67B15
+D968EB7CBD7CB297C7C837C49C429F2504B204E26CFB9ABC0896ADE95ECA4F96
+A7D1617F095E231EE6A2F6741EBE533E33D311559B42E7C82B5BE95221FD35AA
+4CFD4CCC6327EADB331422783C8DDC931F402C645C1F1751C7CB72DCE26360F8
+C50DB978BB42F520477EDAB1F97991C98FB151CA0E64998FAD6C4C5CFBC10EE1
+BED392696730A5C47E0F5C28CF4DE17EFC8A7A697A602FD106F9BC8F3EBE5634
+625D209656A43BAD08B674E6B67FD41F7EF0D9BE4DC1391D18B46693F1FCAF3A
+11989FB6C9D24524227FEBA7B5F8F6A6D1FB44903CADCE57B75C62AF5B65316E
+55F2A44FF16A71866018C39DB7CAFED1EBABD9E93804A41F7B0C6E014885AD16
+83E5A83B3285B8D794D5BEB32197BF5203BB77DB8C929D476F3C8E0C80A74B07
+E551DD90464D2B3EEF162B2428E67394E9F3533F5E2300D69766829FE12AE2FC
+4285C3492913F3E05D582AAD933EBAB3FD69392F4186FD5FF0D3735157BAAB86
+D649094FF4A46EFA489F1C225D2468F588E55FB4A69E57B7A3E110710F226C52
+011AF8E33F286BE89B89C614718303A5B0D0387724B61413CA8EED9C2082F0C2
+AFF32BAB5D17395057A057315BB86942BDBC4D58EC2C2B2F6635DDD378C9341D
+8131A9C6976557F2845860B7EF71E3DB7E36EB7B608D2AD0185C2379E299DC5A
+A8931D4611F6CC9F1F7C586B7BAC83366638CFB90533527E449E744A5FE4B455
+0415B33984336937733F81DD758EF2910978270D6AE61F07A045105FA271476D
+AB383FECCDE5A938E63715DEEC25F2DB3B480EF7F114BDAEB8BC754755D731DB
+6066AAF92FC5D63E5CFDB8F1E1E2E46AC6FDFFD1EEA2D7ECB4A5F8103E51D74C
+22AD5BCB8AB602B1818C666478BB99CAA14D78A15654491620DFDECC896DBEE5
+D709BB9CE614D50C1B53EEC6EE189E1D90CE758DC515E625FAB93B5D9FF96205
+E89A7B698F02C7C4BB17B1FC33D48D68DB7A0C087DCBCA000302A28FEB2BA4AF
+B9D4285B4810B1C2FF98731542286A058FCCBE5A44CCDA145E42E3D8FE1E48FF
+7589F575F14219CD1458A22C0040B04BECDBCA988AEF7890ADFA35408652EF2B
+874B5BE77CED62A4B65D9C4EF87C528D93475F6E2FAC7CE5A4C2BFE3E8D68669
+5590AC5370A0CD63C4EEC566D4D43412671142B396ED236A6491230A1E3DB1B3
+39D2105FA21ABA5609028BA267AB9644351200E20E0385966CA880BC7FB16BE2
+E841468A893DFB8C7ACDBC44001FDEB29831FB73601E93ACAA05CDD88BFD3D96
+7731738B205BAB4320019B86759F9743203C2402CBB8BC3A0F5B84FDADBD73CD
+629AAB27B303D1FF20950FC13EB2D2F4B32C9591F4598DD2EF32A48E53B1ECCB
+EB692E8F7AD42A9F11B4D5797D238E4DAE1244915EDB9C994261DEEF5BE9C9A3
+13CFFC773E352893D120A32A41B131C04EB70D6366481A830ED104DAF8C72F2A
+827D53CE9836447DED0A8375D023D70B0C977BC1FC0E3C2E8FE2AD6992260091
+37354764B105DAF92C736C6D2559FA03B5EDBAA9669D9B1C65B5CABD8326DFD7
+B4D525FFF9B5C03D93E8CF20EAB89EE95E2A90415F51B0CE4858680A51FF9091
+D7E75A16FF155BA57F77B0F6874F5AFEEC7FC345C047177E1139CC1D398B27EE
+59C1715BAE5183EC4DC9FBA30AB5A66CD33CF298385461B200FFF6809988AF12
+F1DCE7A3300419CA8944BDAD2616D32E79A90ADBE0B15243771FD4D28FAB96E1
+B1B03C5DD3F289C2BC9A3D62C1754AAD58306F286E2E14322A07DCAA34995557
+074FA51D30554931C0ED5A9192344DECC4090DF55E96652F40B56AB51DA3F340
+AFDF12262BE12CC0B45FF84330A17280E9D865A90B30F40A20A3DA8EBFAE5D9E
+12D068ED6E713F497BEF02122FC602561ED98EC5A048265914B7B030C357C147
+BE7C873811E911B14E09E48B5B4511A96F0BE97F9890D378B1F1BF8DB290D50A
+AF5D275271228DD122BEC0DF4EF290235BA625314C0A20BDBF458201A0BF61B9
+E99A2B6912C0855F386A8538AF8B97EBF7E32C80DB4868706671350C1AA008B9
+A0464D5A2BA20B90BE3871C732ED5611E034E6F5C3B6317F62F8C42F3E3BE745
+BF869606B24F0F5733366D658BCF000158F94256C8323D4DA0FA3C3E5CF6D3E7
+DE5FFAA99EA233FC4610B677DD75FAC22765B701DF505BE6F1AB30AFFC52FC48
+66178AB7B495BA098E3AA2E3421853A8CA9FF2324C11B5C3C898D707553AA905
+C2976745086F4E22D8621DA9940FBF7CF39B917607281676B23F52F0D8FB66F8
+379DD48DD6E8677B22533A564D4D1BAB75C941B9085D35C59BC1E41E7C42F919
+57B10744282065C6B5EFC504A64AC3096D127F0FD859B35C30F49D2DA4BD1C50
+FD3F22A455DC7E47BEF4675A53744C7BBD54CFBD3B5CDDE768220F5F76675F0F
+787A18BCDAF512C796CAC0956721442EC75DC1C89B3EAA1857781E60EA2CFBAD
+C8A01568E1E38B1DF3BCB49E132C8E253ECB88F5DE36F4075500EF7A5B63D98C
+6AF40243A0F297A1C05D31FBC9E9225AA602FEB908150D871A6E8BF1FD0D0E08
+3FA4C34E2B0CEB05F1368487B13F5C0D2D519EBEBC5139803589E3C68451537E
+F7875B38A48B862B9606E8E074B6748CFFF75857202076B439D84404FDDB8729
+DD1AFF931F19B2DE5BA6B3584A389D1E4BA069077CBFF79A77D9E405FA5F20DB
+89AB18ACEF80DA753D3579729A7BC0FDD1EF49AA37FD22644B1610B4191CB270
+8028E03E9778123D8383F06085B614518DAC3E4E19FB8AC4F41E69B5C9859CC0
+BCD96C3252AA7ECDCA6592DF32C6FDCF1BCDB665B024EA2C887F7D0DEF8119F3
+06CC5F26231C4336B2E8285715286AFCD882956094AB3FF82B6BF47270841A5A
+4B29060C8B91B8E317E2D3817E1BC25D968A816E575380FECF6D3EB877330665
+BE10AD866592065FC64B4E2BE71616D68FC936F54D433372AA4E6111781F096A
+9269C1B7E2AE03B2A14D2FA8FC9C9DD926281A6DF4CE5DA94D595ADF23C8B5EA
+4CF0DD9598A9036BD2B225522C18A8F5EB374703AFF1B6BE4D31BEF3E51E085B
+C12CFDFE3915D2E594CA5DBBCEDC5F72A27A2B207BC890555C397F7CB77BA136
+8CC1632E70540CA40BC737B182FA4E94204D067DDAD94E9E0CCB4C5E1D96560E
+26600581A70237DD7CFE7F62942095B3410EB715422686EEDC6A9249C9EA0D8F
+19BE3532EA52BD0C4C7E564FA2E208D867F4CF6569D33CEC248BF0507EC7006B
+443B870C7B453084B6DEB164817616BA7BBA43DFF11CECE67001296ED617A599
+2142458F1004EFCEC7F60BF77A0D9CEA8317C76266F312151CB0C36C89B9E2F3
+A6B9C8029446BA877D776B7FBFA746E673810D88B845281ED0CAEE77E10B0C88
+AA2152517F461BC47583D9A422FE10FC59A86AAF242A717BF49C5DCAE0387182
+BD836822A7E33176F1B4BECFA89D903AE9053E8487FD253D9BF23D418F79069E
+C6A59A1D3AEBC41912A66D8E8B9A4C2928060CFBA2526C130933D1D030725D06
+5B79D1C35649C7D303A6E73EB80B96BF05F79F67897276041A791E66247F6DF2
+ED2715C058A4E79CD199CBD6F766E80CC1645ED3CA90BDCA5EA025B9AE1ECC3C
+C6AD444B14241F4C0673364D2F5F08BD3A9E4945C3DB0B62F6307CD34C093524
+81BF0EF1DECD2CB93BDBABBBE1CC4356E9E1F4E28C58A82A3621A72E50961D31
+72E9EA54A1A9B2087A5763C09B76C0F7FA247A6E4D77DF360AE0D72A2DB56013
+C9A6965BD45D8ECE85EE5E4ACB8D038C990D9A6BD4C1E0BDD7EA6F877D7AAE6D
+3F7F620D081518B53433B3F994D8D9A65520866B8DA5385C71625666055F8A4A
+32B1BA979FA2D100D2AEB8E05B03080039725A2ED2632591BE464F6F988D621D
+9EB9207366F7694B9CA390F89EFAE4D86556D2CC523946237CF6BAFD01DF7F86
+5E5EBD5013441196011D609B326183310D32861D54E63661F855835C8DEB9D4F
+E4A7EC250472E3EE26403B2B2874EBBDCD2DD0C52E71A65D753B3895FE1D0562
+3BBC84DA17FDBB8DB3CEED5683E45A8A870178E348D8CE23217E783A6718F352
+0D6A03AEE6F2B39BECFFACDCC97D52BE40F994935FD8C9019ED7E29EB490C087
+E0ECED1032B20D6067523E5C62E46F94B8184DD8EDEE6FF380C5D270153B21D2
+25C89E8225B727A0C508BDC8F4B7E7B44EE513CC576B4DC980C58FCE9D71F5FA
+FA485E5FCAE8602A48EC14F279C908B647DFAFA466597D549FE137E5AB610932
+75599E40B0A2FECFD8B025C2CD802A5F1973695CEBD8AA3D5CAE868EAC504274
+9F692F3E37854EC981874BDB7BAB76B3BFD25011351E51CC1CD753A8E4755ACA
+20CD4A1AAC3C5B1DACDF7308B9B4E84398CB01117869BDFF02C0432EA2B3C943
+60B71F9439D3028FF29855D03031F438F9A7DBCB3A87AB96EF8AD6B392B45CB5
+EFD233DF7461DAB605F44D00ACAD7A6E938FCE2271F93D41A9556C40EC39E775
+2DB5912E76931A59B816777C6EAACBE4F17140AF2929D99710F2FF7E0D9DDC7C
+B31B1279A501B4CE861FEB183C17C244D55AF9DFAE6A02E11F67C81FB01A4781
+3DB339984F30F2ACC5E5995231005F1208F6560EFBD9E86E04BA024336AFB48E
+C3FBC3E579F7E24DFB236B12E926EE40A1B4DC97D16478058D3EFC2D147B8298
+46217D6F866BCEF0FE82A89D843EA1062122EF569E1D6223AB9D1FF0F128F791
+3A55EE1EDC47F4423CBB3BA5283D6FC6D629653C689CC1607391E06DE961EDC6
+218EB05DB06E322CF0DDA8B255E753424D567312145FF315AA16C75E35B77272
+EDF021028D8240CC04B04404559E7EBBC63AAA5F50E92C1C93286EF137367D39
+E23179367E8A6E8FEEAD2D410EC68A669534DA9F1AB66BF60A8A5BF87BD8DA59
+627D1523DED228FDEACEEB83B1873F6663A181F484398CA7A21BBCDADFBA564E
+F733738951C06216014758410BD913E2C2BDE745B2C87B57A48FD8C33C1FBD66
+DC15A2FA00150F06BEE1378C7A4CA29605808681D4EEB5E22B35A884F67AA123
+E6D56B5F752A26C1DD80D9FE037F8890EF9B019C462CA496562D629890044B15
+037AEFE994D82717135CCBF9E5DD3C78D1CD6435B458DCDEDBF3EB18A5EA67A5
+CBE6331625FC01DBC0AE5B0499936476C767BF7CB89F3E8E951E9C0639A07436
+A553FA597C5011118A8C5F840EE246F8F53624B8AB6327537CAF4E44E3E04D39
+28794968AB1AD508F29E7D95DA9DE8FE51CCE120580F26D09AB5D2B7F23D0BC3
+A80E1FD9C944A45411AF573A6AD47193F02D92B7428891FA6723D5CAD801B61F
+DB660EBC23C08CE99D9F28A1EE267304632FBB88746F56B3353DE302B97BCA38
+CEF08162C769BCDEA4699AB8E22444635353A968C8260AC2B97C53512DD9ACAE
+12563F10C0912C4A11FD4125812DA3CE03F4C921635E967A7AF2C7E7B607D0AB
+81FEF561D838F78C1C8B32D2BC6EAE0A5A9E28148F3C89BF8FE30C7DD97D8CB4
+A9C5F4E431AA9DDD921EE920649C65354833129FCBE8F54032DB3509DAA7764F
+D7165CEE37E0053D79F5DD593A2B9BCDB8A71EF44830FC51355CC4EE4D0DE323
+559A86C8F003A267867C17BAAF261B8F884A97E2D6BCACB8DB30EB705092B58F
+6383FFCC53D9E08DF1223B0E807FCB78A398F7D22242A6615D4F29B40682953D
+193B393798FF6B8116AD426FF782D40B26DB017DDA13BCF09FEEC4AD6207B280
+3D2029D240382BA136FFFD49031671C22AEF364EF140F3AB07FF276EE1A6DD35
+B42BFA000C2AFF160CBD9B46D79019DC823F259745165641D045A1C010E78865
+6628BC6133423784F0D6CEF49DC39FAEA7C3F57CFE7BE5B3FC124688403DC853
+03620908D4C4DAA59310DDE3E3DED2EDAC2458B14C13C8BA059ABCD499061338
+9953A88FE649B422083B620DCB7F71F624A076C063E43E35C70F45A27B632DB9
+1731B8038DF8230C38D4F6BE203FDDB7138B0C1611614753FF92BCB5EC55921F
+AA732C9EBACB277C40204F1FF62BF33BA236403437A5245E771519C7D75E658E
+645D5D4B99058C030981733D551E8052B202F04562D38CAFB04A25025DA9591A
+1C4B15A603F598A296FE8BA57EA40CD093F41307494F8EB27E92A112EBAD0DF3
+03AE42AEA0652CC1A090F5D02BB48AD43EE26CB6711FDAFF603F7C0D982495B3
+75DACCAED5EAD82232C80DE40365C60B31B929A771920E8C080FDCF1594FEC3D
+790C556572C54BA43B0F499A98F28F64EAE90089FD8BAC64B0B75D8E1F8DD4DC
+83FADB3EB38C932512030464DB780E0223AE46E1EE90606CDDD2F92A37D9A1C6
+C10ACEE600716ED8F3EF9C12EA7C0382B32E555DFA46CF6DCB00FBC6DEAF6638
+CE413472BD47B8A9B144D4C4DC037A0F81AB19F343BA1E9E4FBF9D7DB1F36AC2
+EFA5FF751C315D80A2C756A7C3C263E21D7C7916A3552FBB0DDC10C55C02FBA4
+26F5A1C553B9005BF5AA9109C1E358BF9B957AFC01581715860F453DD6266289
+B6E72401B8F078AF066EDC7C98E7AF14349EE0C5F054FD4AFCFFA5293CB8C115
+B6A31089D5BFC497EFACEE92CE27060227830FC1B026832ADEF5A2D4D7AA204C
+5C73ADCB95AAB5B7C4EA232F0E6823A97D9D2B56FBC54E06D81175C92B73BE92
+94902619C56CA4130EE42A6D4D9B4AD7DA77B55A243FC96287489686F0D078AD
+1E3C2107D1B1349D173DCF1CA0DD35F9C710B467AC98B81D8D085F6B3D5F1595
+0578D156D8E16932B1C53EA33548A34603FE588EF088ECF012612E2B06BE6352
+3984738A500012B86C47A254508D2ECB455DAD902F46270B5A96F6A9E2F8306D
+094029AF11C653376DA60228F3802B38A678E9261B70133A567F775E2EBAC15D
+3A85F528EDFE48AEFC9D75D0F61488AD7409D2BF8541E115FC80F1177D6E6D8A
+081D00A771BC4E12A2E4A91713C2A5E1A40A2820EBEAF4B43339ED194F1DE6AA
+7109276F90680BDA742B8A0AD1B15BBA10C0601BC7FEB8B5FCBA775C5B293EAF
+FFCDDCAB0881E35F873B2E56716CDD19581567670FEAAF32C579D9CC027EE23F
+3B3B52CAE3944CF1525EF20BFA30B5804AD9BE9880E07215F77BDC2A3F6D0F40
+7805506E2635A667B92F950064D121BDE3734161FC0C4B9329F0EC913E9328D2
+FB109D16447F75BB503999E3D085F6109FCAE081E4533F0A98411F76B2CFC6A6
+0ACE67379BC779334C00923B24C6C5B5DB1A8ED81DDBD33D5DE9F884082CE909
+086C2D17515B613272D09873C8B42B8E0DDC6DC415C08D39CAE4F0351FB96C83
+59B5605F1792407EB6E96CB280A67DB2E8B5D841B0F5AD5CC3F9EC027CBED786
+4FB53E9E7F144F0DC10D39E071781813577403EE6950D52F878A0415D9F2C52D
+ED5C57DD6E5777F047E1BED7E1B8D1A89AC09EC9E6432470B5372BD1CC24CF65
+8C90DF2FDAEA00B4A47DA3A5B48FB1EF898589A03C50ADBE975A1A235739CE71
+CEC37BA9217B8EDBCF22366652F6E89184C45D586918DFBFDF9ACC0A2938C260
+08A2BD29CDE8D6762AF8A8441667DBB458CFF9EF97CE13FE8A571399EE47256F
+635EA6F0E2941C21B380CD1CAF5FC792DD8615440C3AE6D5B25FB76F7BAAAB8E
+AC0667B1E7F3EDDF15E41CD480986F06AC47CE1234B94B683CA0C8B0472D25CA
+B55F749865CC83098AA6C8613C2385E32A328A66985A97408E4B810EA4DB0F62
+2D126976B340975798445001ABB20FB7DC0E3C3D5CEA7308E6B59584D798B69C
+52D5F39291A777CD973FCB82C911C1E7B43B95A383876F3F86987074541EB029
+EE6359841860CBA2DEC9495144BE3663BDCC145CA98FD30678C190C0D0C7F64A
+D7FA7F43C6B5BDD58D7702F0D6131E3B8BE8488BEE409D0A182906EEEC9CBE4A
+E13721DD5384124E2D66593C3FC3FBD21EBFF98EC75DFA7950789CAD4DAB1143
+DBA27A63422CB5479A9E948D6CC2A9ED4A7008421187EADC177EABF5638187BC
+48D4EA7CA54323BA22ABB52743BC8C53FD8C6B04B7D7DCE13E120B301B9435A5
+20323E9D49866FC6D12F3AD0DBEE577FDF8C184E42EEDA27A202B61391198721
+09CBF41EF4A0484E69531BEA82C9887064A2CDAB966AF33BC0D408917281E969
+6C854B08B310731BF87A36BEE4F6A915DBF09627149887DAF2B8378A3B07EC99
+157C6296B325C3DB5E83E85B90D90D84C99AF9377BC3D59601F2BABD1B588AD7
+8737E55FCA61C9E4F8C0CB8325E6A3D788724728E3970975E1FA73ED547D908D
+05809EB0C0B90A68B8F23DF4EC56A164B1426F0DB784CD15298C86B1AF8CA098
+B196662B606711423149D9F30789FA6580780AEE7E661CB630353B43B7980341
+A044D9C7855E8BB6023A8CC49237510F8DF1773CB914843C6F0C8AA57E63B0EC
+E9099726DFAEFE71F96F18B80DBE6AD001743C994FEA21A9DDEC34739F5F902A
+007FAA77EB9DDE698CD3D0A727DC0BC29D476AF611D560075ADE8D5D1AD91721
+2DB9D492666982CBAC7E8C57D83E0E09C3544CA72AB01B6F49003A1353767F0C
+61442001AC90FED036CF292982C8F1FBC78B9BA29DD6FB1CF6906B0FBA37403A
+56842019993EAFD18EE0E38E2195E017BB90277582D77DD779C3EB2C14CBE553
+0B7E46249C3B22B0319F5E744AC179158B1296010ADDBDAD28D36F699CE709E5
+ED846108929BE5FDAB6682C95F8296920D2019EB38CE9C49F710DAB7741FC8A5
+F8991B7055369D856A7F4D02A70ECE139697F6D5126E53779B982544AFF86BC8
+D989DB92D4DDCAC3D8A22EF8AD1EF0C343A777342BC4B768F484D442109F086F
+B907CE7807B159F2F03C0798DA955590BC2763B30E2D99CFC78FF1AD5C792731
+F7A97CAD9220716ABED7A17B83E9B939164082AB74C022AF9828C57C8D6ED987
+ED60F4D7DDBDA575B1F1265C7836F2C4412E4ED1394854
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+cleartomark
+{restore}if
+%%EndFont
+%%BeginFont: CMR7
+%!PS-AdobeFont-1.0: CMR7 003.002
+%%Title: CMR7
+%Version: 003.002
+%%CreationDate: Mon Jul 13 16:17:00 2009
+%%Creator: David M. Jones
+%Copyright: Copyright (c) 1997, 2009 American Mathematical Society
+%Copyright: (<http://www.ams.org>), with Reserved Font Name CMR7.
+% This Font Software is licensed under the SIL Open Font License, Version 1.1.
+% This license is in the accompanying file OFL.txt, and is also
+% available with a FAQ at: http://scripts.sil.org/OFL.
+%%EndComments
+FontDirectory/CMR7 known{/CMR7 findfont dup/UniqueID known{dup
+/UniqueID get 5000790 eq exch/FontType get 1 eq and}{pop false}ifelse
+{save true}{false}ifelse}{false}ifelse
+11 dict begin
+/FontType 1 def
+/FontMatrix [0.001 0 0 0.001 0 0 ]readonly def
+/FontName /CMR7 def
+/FontBBox {-27 -250 1122 750 }readonly def
+/PaintType 0 def
+/FontInfo 9 dict dup begin
+/version (003.002) readonly def
+/Notice (Copyright \050c\051 1997, 2009 American Mathematical Society \050<http://www.ams.org>\051, with Reserved Font Name CMR7.) readonly def
+/FullName (CMR7) readonly def
+/FamilyName (Computer Modern) readonly def
+/Weight (Medium) readonly def
+/ItalicAngle 0 def
+/isFixedPitch false def
+/UnderlinePosition -100 def
+/UnderlineThickness 50 def
+end readonly def
+/Encoding 256 array
+0 1 255 {1 index exch /.notdef put} for
+dup 49 /one put
+readonly def
+currentdict end
+currentfile eexec
+D9D66F633B846AB284BCF8B0411B772DE5CE3DD325E55798292D7BD972BD75FA
+0E079529AF9C82DF72F64195C9C210DCE34528F540DA1FFD7BEBB9B40787BA93
+51BBFB7CFC5F9152D1E5BB0AD8D016C6CFA4EB41B3C51D091C2D5440E67CFD71
+7C56816B03B901BF4A25A07175380E50A213F877C44778B3C5AADBCC86D6E551
+E6AF364B0BFCAAD22D8D558C5C81A7D425A1629DD5182206742D1D082A12F078
+0FD4F5F6D3129FCFFF1F4A912B0A7DEC8D33A57B5AE0328EF9D57ADDAC543273
+C01924195A181D03F5054A93B71E5065F8D92FE23794D2DB981ABA2ACC9A23A5
+3E152596AF52983541F86D859FC064A0E3D5FC6647C3CAB83AD4F31DDA35019C
+CDB9E3DD3FEBD4C2B36BA3CF6E6C7DA85E25D8A31A9BAD39BDF31FD0D1790707
+9DE6A078E8A409D8295F642DF492AC4F86AC84383B0F4C6BAA7C22AD5A898A71
+D6CB34D2CD12266C486B75E75A69C14819DD9BB8159088E04D4717E576B8482D
+BDA52110AC8B8A80E4E9D58F470EEBD3CF44A1E1EE8DA318FFF3611B02534FC9
+F4018C7C57E80570D2F634D98BE5D5EC6D95051157F0EA94A3D12BE0B4B79939
+F82F8D73136D3337C44E314B0B16CB030D9A12E01FB667105F334C3EE965E5A3
+D410D2F1531547A4497C355AEEB295CD3C5334BEE5232992960B757594B89F3E
+52095042DBE6B4DA3C3AD50CA95EA9EBADA10630B500CF1FCCA7D60306743681
+7E428D33B7F7C40B425CD58E4CD8AB474BCE6A307BC6C6EBC15A8A96E0E2977E
+A33389154536F5C5D8CF036D07F24094E779E5ACBE5502C92892F10F4C6DB627
+C7EC4C7BF20B39418A8A85D7FD9B0EAAFD871DDD41F93BDE5FE619AFB8711824
+DE890E62C1969A6FE28DD3578AF43D58A728FAFF0B9FAA640962C8F35A26F76C
+67F3548D6DB54A25CEB368B47F97EA2B0C4D7C0E7894A4F0C823C6C1922CF9DC
+10E05600556F1C7C9AFB33A2DB6F8730F70D6BF94B1FB0887451F2FFEEF3584F
+DFADCFA9A2D4846B8F0E51620E1327D994CDF973B837D10C90FF76DE22B47CD5
+EE3183898D156861AB4DFAD34A1E3FA260B8164E6680BF58413A553E88F6100B
+C4F4E8E972C81A5F88A7DBCDC308B4C3581BCDE13877B976B1F84330839FE5CF
+C78551620EB803DF94A5C921F8EE24F7EF8FC4C3E1653514212631F54F90E3DC
+E9EAF96E998F340C4F729ECF7AB430FDB7C0BE3DF2C0D23015820E28B743CAD7
+7F0AE95413C3EEABBC69E852F53EE1DC260D7F1E712BECEF2F18437DB23D8E74
+2902AAFBC733AC5BAA452DD6F3671859AD836C8564E99CDC4183D8495AFD99D6
+1F0D65B6588CE7546717911E25BDCA6C2649E3A7466A3E2DA7C7994A30AB4449
+672EFD00632EFA8629C1AFB7D53D801028F77C864869FE636213A69173003EA6
+BE1ABA95EB07B13D1594BEFCC95ECB0A9CFA9892EE0677D6B6C250855762B7A7
+8E4E022640F93169DFA0303A0D5E73BF3E0F4D4AAD10FD7E4EB20532BA30371F
+E9F480F9513432946F9828AFB5D4AEAFA5829B2CB544E5EB634C4537EF7DF08A
+A1CFD94A52DCF0E7CE4C5EFFB01E6D50558B75DB4C8D5512B06080F27BE62E01
+2EEA6A0357441401458C842D3DD4C35B8F561D816B336216CE0C14BF77648AF5
+E33912CF95872A1E1AB9A18980A0B29A881D13397C15E1CBA5D3E0B27943EBE2
+F3003D15EB446BCFC1C231832475D5B7AA19E4CFDE119D6CD62D053C6D29C333
+5F729791D17B3F7108074EEF4D1BD101CB33E01004532CB0D716D2E54D169C6E
+80163E70C0E9081F31A1ECBAE079D2A518B790B0CB2CD03DFD034A0F4788E800
+B0CD2DC1FAFDD487C2F381EBAB2A2F3F3AF82021B211DC9CD2FBA6A1BB3D4AEA
+4C7F3D9A5C21DFF284CCB827D205A69638E98D5DD8E36AFC1A4481B5CB2A2E8F
+D6C838DA6F81990F5ED928DC7457501B5C979FF4CD20A830896A460C5DB13D56
+A3B2B5D9B292374A9BF392894DD99FCD6A1E655AB395E839F074D1596488700C
+4E2891C8AEEF66568E82A8B826F9A28FF84D4D9BDA21F638EAF96880B4EBE0D8
+081982F34831A03BEE81FC177700C2360D2A48915EC40D5FE85B400E175D5AF1
+067FA0097904FB647757BB44B4042D30D1557BD0F7922D731142FD682139CEB7
+58CA4C8C240A0B86B1888CACC507E24E04020BF1882BD9B4CAECFA97DB24D7F5
+AD64C69454027F198BA35881B94EE9159A2D73E450C3BDAED66B886D6DEBC84B
+653E165176228F88993F12A170775A8D7038BDF2FE8DC1F7B98BDC02D1E6686E
+9B834F6C0AD90780B17DFE25F0A4E470CBA84E73F2D22BEE09A040F14CFA2C14
+0FDA5A5149B5FAFFE49F55EEFC43831BC43A8326FEE9C7F469C0FC3B000884FA
+41DA7318EB57262CB96FC4EC7F16CA07FE1C3BE8C2DBC8A8135953D6DDF20BDF
+75A2B6D26074FCE752BD32FB9F5CA797775E8DB9BB9786B469A3CD65A0D9DDDA
+C2A166E454A94860EEF5B5C12172DDFC576A03F6E6F8A735FF21A3E9CCB4CAA1
+3064893487697986A42CB5888B2B0A79FA3C74E8187BDDF7BEAB884B70B8D4AA
+AC6615745AEB906E08BF831CFDE222F58D02B428D55E9D5A3CDE74E42D8A2CB7
+E1A3A9439B678AD438793ABBEB72B21C58981DAF3EDCE4BB93D95F4A1E943BBC
+B3A012DE92FED4F232A3A7D60CE60B605151F9C7C18A5C653E5D6D15E5B49A63
+73E7A339504D0ACC74B8B116EA88C3EBA2CC631AAB29F761E5F062966AD2FD28
+7FFE52FA8A115DBE23E471094FFB3CBAFBDF11B7E9058313F2D069B2CE98A962
+64645738F02A31E2F2AC11628724034ADBCEE012721EBF0A567893411F950410
+B20754A7510D041FFA6144AC9CC46D846B82581F20BBD001D34D9764010824BE
+61C30D05E5C5D100A24F1917F01799CF5BC4E50FCECFEA732CB50196825F0E08
+8A1EC868C6D4357857EE2957E081A0E4372E31A8ABEF23C3F2EA0FEE57DE4D08
+61C570175C41AA0C7A3A579ADF593F18B4AE3782D2552E4E0759C32E059EE741
+2D8191E381731769F6648B3581CAF11DAE46471896666F18F02918B0860BDA3C
+BD5DE777672447C23C62ACFC2611ED5239D6A266FDA6031EBC5A530C1A2FF7A6
+B4380B9A4C877267854AD1F1677CB5433F28894ADF93D39EAB94541A8D232E08
+22D082D0951A60F62B87DC028714EC74133A4D65F7D0D1296C0E189C4A42AA98
+28E8AE7ECBB9FC8DFABCC6EEB1E9FB06227F90808EF31331CCC5D4C9A6182181
+047902DC9FD0444FB94B60FC74F3B677758088CE6A159D940C5CF682335E756A
+8BACF06AD7225D49B0002392C889B0FE2C71311D2596F4903D12FA20BA2FFE25
+A0804B4BC282929BE31E0F46B34532CB5795A65218CFAE21F390792DA67775C7
+B91A2BF4C16DE4F6551DAE3A5827F616BE9040EE6B1008DA2F99A01EF66D697A
+6CD1A44E0A15D1F39EA8025E886A68A1E9C334327C7703EE721E497CA924AC90
+7723106D913C5ED4BA4FC743CEA8D0F5172526107DA65775C0B1B77179D336C2
+9B09B608D80B1A1E87CA1A84A833A00D980D919BFF56F6390E9D5B45E9935CF5
+E69D003564462F750F7DCE02DC23CC215A0696B74D8BD3156A392A94F557655E
+00BFAA035647568ED66157FACC585E411F7F428569C147DC43F6E4FDE693D0F3
+9917BEFEDF61FB980B85515FF6424824E2D995B05CA1E5D3E8BD8D3281DB7CE4
+E54923E84058FFC0A8A2C491327D0F87CE4C352B724167CEE224DABA3B95757E
+4A419594BE4F92E78BA6D35D4C93D31ECC3134B24A45DC32445725BB044F09A3
+AA8C31EFC0A2944ACE2F2CE054CF24DB350FB3C71115518C24BDC0F7E54250AF
+9D3378D38480E1CB9029F31570C619A28F065CA4FED5665EDB96712ABEB33B9B
+4232C00C1B0215F08D53F7E430887035AC25BEAF06942FD1B6C442253C887AB7
+D694C1A6115C8990B4CAF1E81DD1FDDD6B03C00055BE956BE7FD8A4E1049AE69
+EDA8593CBA8C4A41E046C689FBBF9F1B64E5856A7FB1C61EC815A56DE2A8ED33
+41F370B8203D4E5B19C63AE9E6E0D26F4F3814B5AF48AD30EC9B8402C941FDD9
+722FCAFC638FBB835F83DC77F93D367266FA7DFFFCB567EF82B1695AB4D94D09
+B18AC041811027229DF431F5CB2BBF6ACCE9D500C8F075A74590641C1A607C56
+D2B8624797BCD9C91C3177818691FBB4744EDB6056464A0B95B8D63F7C22309B
+82D6126E2057BCC9FE5566D96B7A9B201A09B0D3252A5494C8CA2C8BA8A13C29
+37EF2A882D61DA708C279F663D88A8E2999A0F3B6F98C49901A7631BF7708B67
+54D0B4C52BF4BE0DA0439E6763A7C9D639AD4092E77B13D3510DAE1475C978AC
+796F9B2AAD3BFF35C5A3E19B5E2BF704B3BBDF68CE48BA4FA2496D60E58888EA
+28AE12D00E9F0816FAC190590A865BB58569A91BF0345D01230ABA361442006D
+BA2C90EC2036BBAB79EBAFC3F217DBD5854C519235F9627A1C3C71D21ED38AEF
+0BB40F3B86BB9F09A3F309473D8757AB7E638DC1C59A7F9BCD49DE4107A2E54F
+422767FB94048987847205584309397F554744690ACFFDF5902FE5DB355930B8
+71863217830DD7A563B0B3A4025ACE75B0E777B4414B62A13B50C54E0E6D47E9
+D43BF769B9411B74E1069BF71BA873B4B8973EC9BA492A5DEA58D267872BB246
+10AA67B143D0E2223FFB4991E583E629413CC894C3FA4869B72D19CE1A0CEC8C
+0FF5E5A3EC1FCB7D3C4289813F0D249A11B55104BD60B2A89BEF44CC77CCDA9A
+065B8B83B4F4253AA1D535290DCFAA4773452D110D2B3370F9E2FE5432B54A9E
+644EB3BA9BFF62347F376839024CD5EF3C5DFD30F412DD5474B7933E6A1AB63B
+4B12F2417C72D0543C26A263AEA53E5BAEBD67E23553A72E949DEC556BEB5D09
+C4D7A89B14FE4EC68D0E3E9D65A64B285E53590F418EDA8175113CA375A29930
+DDCF4C71ABB26CEB800C2C2B253AC1F53651C88A56ABE5A74F3B54CB4FFDDB92
+60AD7272BA25EC2F6FB759AA6E1E7964FB55AD09F4EB25DE45FD01833947BD05
+6266AA8ABB7DD792941C7A070FCF3A4636FBF8921C70298D42FE92F079DBA2AD
+6149D9CF9EF7264DE6DFCD4429949B15EA90B596340713BD61926DDB2BB23BE8
+F9DE38A31620A817420A245946E551463960A8C5C7295E3B3D6A59BCDF5E472A
+40B7A2CDDAA43CD8AAFC411D037142579D11054A903E102DF0D0C7B5BB854DBA
+F3F086AF991F7F5D5C730F8F9AF213F25786F3EC0E54530FF912F4876FDE16B6
+A07D0DC4FC46EC6363BCB68B83ACC448B801EC43FDD2F8BE0E93D809FF81E38E
+176AE17C67C85FEA58EC95435434C49A950AA955D8B20989C550AB1F1C31B7FF
+99422E1F48FB7D6F327C6DBC4695A03903DB275B94CB39386E46579271870A25
+21823E75C377E9D5B46655E8CD8F986372CF8BA846423E26582315A9D19E0BF5
+305C32B2A0EAC3ECB275B1D8BE11A37ADF524944219D94EA2C5DBDA768828B6D
+775DA8CDB09E0570E4ADDF462EFD8D3FA3F86B1DEECDFFB699AF6507257C1879
+16FC615868C2D51F03CD57BA38D42995D9164B257441210084DC409B6EE4C119
+0B2E17B0A8D5326DD0010E4A325D5F77BF935693BC90A00A28C7B5F74817DA39
+F47A41E32F4F92AA04D30D810F7B1484EB53AD8CFC8CE8928B570314E0F713F8
+AF127227190F9C16BB73D2A217FF801C391A29095DA5E4974D137A0CAA7DE702
+E20DD4755B1D78739756A5E7EC3542B96AD6844199FFA2F5F2E9C64E2DA4FB2A
+ED79869F745C59D235438251BC2E6D26112AAED20E06021D1AB896EE1F1DD2EB
+437FBD4A25E42245C5A647493FCC9922E6DD7AF57D5D482921D1CBD6F0F02949
+C27777144751C1E72F4EE2BC343D4AE7A8A8758123B54FB1A026144C643651EF
+0907A376945E19A8FC7F98A034832A5820A481B0823F980F59623E0511593FEA
+BDE6EFBCC0383242CBD4954027B075B21F10472059A480D6E5ED01C3B07461CE
+9810251A5C5643EC7403130C2246E8616CEA25EAC7A0076731FEA8CC43BCE3BE
+933FCE61067F5FD402E67E2B9DAD954AA77C5BC86BC5E4BCE2ED676D8D8EC7D0
+ABC5C86D82180B9D5D7451C71B5149B6B67883578DE9909317928C0A92E3205E
+F23015400A1763A6FBF67FDE3318AD2696685A1832FC31CF38589EBC7CA1C818
+60D2B2211E04EFCCEA88D9A9082E82951EEB123924A267CB03C48889032F2892
+4227E217FA28F87E01CBF27BF1EA60641A4238258CB7AA355908FE36D90F5CAD
+FE992D03A33E47CA9AEBEFDA57793F39DC6A9E85D5B289F6B862B35DBCF82E43
+5CD6A862F6FFAC36478C384C3BDB0148CB1FEDF55969C776E77917635B5A65EB
+F2AD351D21CD3822D43289FE8EB0FED58182997097C7E9F4373553AE1CA92083
+EDE3BBE6C3BC7009D15AB5FEC6A59E9FD1BCC7B2099CA15FEF083B9CBF7B890E
+CDDDE6BA0AFF306C76500C945DC91BD533FF9A585CEEDEF79238C54E6168001E
+26FEB29E523EE501BFA4F60B782B1499B07084C35A2434B4D29D3D8E2C8F945F
+A9922443B68D07DF7EAA1F4CDEFFC438B597D8943E231B5216808A85F30EDC81
+9DF5DD22F54A45335B4C2203887475F39D247F0E7347BACFEAF220ED82F9263A
+6488E73C1910023E505FDEB143006C1A351D441AC57F9D52D2C6D63D78C75605
+999885676BBBAD56074298E0BFDACBA1830BA58E87F436CC670EE8EB1870154D
+72DDBBF3794F8CAAA3F1E11DE29752DD99EAC695838A19BB67A1FA3829B6E0BC
+5301610A0351AAA749F456AE31ADD87D6ABADCDD1FB3CE81C3713F48780DF407
+530CB284B2AC709F52EE7AD647DEF9FA4D2A867CCEF728F3D40CF34C28D21527
+10160B3DAFB5FE16AFC9D36C6EC4021FC189005862082BEA60AC72B63AD27D72
+FAF3C2D89DA2648FC4C65104A069212D87144E8533CD86A6D73DC7CD9DBA25CE
+7DA53B000266F3871B24663C77723703315C5E4A89DFCDBAB384AE7EB2F455AE
+AB191FED406F7F6EC9E5B8276EF5C4CBA041AC7E8BCEC7CAE840154BDCA3232F
+15711ABD1E867A434E9787CA0A6D1F197597DA27ED2402CB2D84ED082E8D3A39
+81E6EB270DCA4E7A90E2BEBD3CBB3A2BE3CAB926192D7292CC16845B6399A543
+BCFD224BB52F21352732DB5154FA3442733066CDC3E186D8AA97CD801DFBE43A
+116C86889BE198DA88CA978B8C40ACB67E8F7BA499DE68A6FF0DC72C3D00BA1A
+B378B39610F15CA026F95ED8155CE3FFFFA2E2FEB352DBE14CEE1669F2387B70
+55B91185FBBED764266215D518716EDA3DFC9E5DB6B148A553E75AE5E38E1CFC
+6EF47B314D54CF24BC13856F4F7C976BB91D143DE32FF49BFFC87E17885A1893
+BA1B8E441B08EFC04F7D103C1FFBB665194B3D0920473740C55FB1C50EBCF717
+A2359B687FCEAD65616EE89A68F8D91AFACAA0B238EE4AF0279AF5BE5294C3DE
+A7E1F5E6248C0210E7D40683F04B12A933C746ECB517CF94BBCC6E4CF49AC715
+D8005AFECBDFB7A6B417DB8A28F8E9EAF39CEC1CA64DF37A5E66A76C26F721F8
+A63B003A040A62F87DCF61B298F960D510BEFA453F118E59E7DE8CA3DD002EF0
+127EAF733D5C61B5132348D280F84D159809CC71A3C6F7373BBFD8D6EF715D34
+0016DEFF14AA5F960BF1BB9AC304A1823722843547BB4CA5EA4C41C6C2701C8F
+7BDC810443F9DF34BA469A3260009B799871BAF8523C8763544DCD0B382D44C5
+F75046AFF85F0B5A3188C2EE786CEEE5496A5AF4BCB0B429CAFC403FB983EFE3
+61FD9F52ADFC38E07A0FD7BACBA530D2E4DAB2592AA9564843E7E2305047F060
+C5FE4243FA8FDF1B5D4F61ACA7850A604FBC6D6970959752695C90F78961B4E2
+C8CFA41082B1A37405AABCEE5BA3DC2B9EA76F486117B84728EC6D8AE6379CCB
+402C2AA89078EC992C00D53151E9D82C65643F549A572A20F05107A41BE5AC57
+8EDE92AE20B05E2D0C98151CC92D5389A675DFE39DF546A33A84A4C534337ADE
+B17C34E09145B37CE1EB1D10D42CC8D6E6B127A3809F7202381FDB88D42084CD
+0AEAEB8A8288CB56870EA2BE9D0B9DC8291021CA561E2BA388DA3494E433E0EE
+5E69DA51D0AC505C9F71562D3E9750F23CF14D2C8ECF0692FBBCB4A92B48B4B0
+AA2163A447D5FBE86D961AE4D4251149F11C4BC269E10B48E8C42DC2484EDE87
+6540CB8A5EA2494148D09CC9D5014EB73C29368A3945AAA1BA4C17BF640D2A0D
+414293480FD600A77D37471828C4645C5A4AC4729F4EA76FC946810B4968EB0A
+719D8F3E61D2B740AE9A33E9F02982A13ED4B6ED0C6C4A93A9E9EC045D0CDADF
+DC01ABAD0BD95692907C04F06F06F1BF6259C8E71099FB64B4FE263D06C5854B
+070C8B864D8ACA6EBF440DE14DA34A2A548C9F1557C70A4D718F4F881707851A
+6DCC39BD8791D806F5DE551CDF8612C7EE6707D554CD826CF352CA634FCFAFC7
+232F32B3F0EE3D2577915BEB212005E06625FFC9F49383C9C64F51B6541F6AC6
+12D2359547103898D05E52CE54B46835
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+cleartomark
+{restore}if
+%%EndFont
+%%BeginFont: CMTT10
+%!PS-AdobeFont-1.0: CMTT10 003.002
+%%Title: CMTT10
+%Version: 003.002
+%%CreationDate: Mon Jul 13 16:17:00 2009
+%%Creator: David M. Jones
+%Copyright: Copyright (c) 1997, 2009 American Mathematical Society
+%Copyright: (<http://www.ams.org>), with Reserved Font Name CMTT10.
+% This Font Software is licensed under the SIL Open Font License, Version 1.1.
+% This license is in the accompanying file OFL.txt, and is also
+% available with a FAQ at: http://scripts.sil.org/OFL.
+%%EndComments
+FontDirectory/CMTT10 known{/CMTT10 findfont dup/UniqueID known{dup
+/UniqueID get 5000832 eq exch/FontType get 1 eq and}{pop false}ifelse
+{save true}{false}ifelse}{false}ifelse
+11 dict begin
+/FontType 1 def
+/FontMatrix [0.001 0 0 0.001 0 0 ]readonly def
+/FontName /CMTT10 def
+/FontBBox {-4 -233 537 696 }readonly def
+/PaintType 0 def
+/FontInfo 9 dict dup begin
+/version (003.002) readonly def
+/Notice (Copyright \050c\051 1997, 2009 American Mathematical Society \050<http://www.ams.org>\051, with Reserved Font Name CMTT10.) readonly def
+/FullName (CMTT10) readonly def
+/FamilyName (Computer Modern) readonly def
+/Weight (Medium) readonly def
+/ItalicAngle 0 def
+/isFixedPitch true def
+/UnderlinePosition -100 def
+/UnderlineThickness 50 def
+end readonly def
+/Encoding 256 array
+0 1 255 {1 index exch /.notdef put} for
+dup 33 /exclam put
+dup 34 /quotedbl put
+dup 35 /numbersign put
+dup 36 /dollar put
+dup 37 /percent put
+dup 38 /ampersand put
+dup 39 /quoteright put
+dup 40 /parenleft put
+dup 41 /parenright put
+dup 42 /asterisk put
+dup 43 /plus put
+dup 44 /comma put
+dup 45 /hyphen put
+dup 46 /period put
+dup 47 /slash put
+dup 48 /zero put
+dup 49 /one put
+dup 50 /two put
+dup 51 /three put
+dup 52 /four put
+dup 53 /five put
+dup 54 /six put
+dup 55 /seven put
+dup 56 /eight put
+dup 57 /nine put
+dup 58 /colon put
+dup 59 /semicolon put
+dup 60 /less put
+dup 61 /equal put
+dup 62 /greater put
+dup 63 /question put
+dup 64 /at put
+dup 65 /A put
+dup 66 /B put
+dup 67 /C put
+dup 68 /D put
+dup 69 /E put
+dup 70 /F put
+dup 71 /G put
+dup 72 /H put
+dup 73 /I put
+dup 74 /J put
+dup 75 /K put
+dup 76 /L put
+dup 77 /M put
+dup 78 /N put
+dup 79 /O put
+dup 80 /P put
+dup 81 /Q put
+dup 82 /R put
+dup 83 /S put
+dup 84 /T put
+dup 85 /U put
+dup 86 /V put
+dup 87 /W put
+dup 88 /X put
+dup 89 /Y put
+dup 90 /Z put
+dup 91 /bracketleft put
+dup 92 /backslash put
+dup 93 /bracketright put
+dup 94 /asciicircum put
+dup 95 /underscore put
+dup 96 /quoteleft put
+dup 97 /a put
+dup 98 /b put
+dup 99 /c put
+dup 100 /d put
+dup 101 /e put
+dup 102 /f put
+dup 103 /g put
+dup 104 /h put
+dup 105 /i put
+dup 106 /j put
+dup 107 /k put
+dup 108 /l put
+dup 109 /m put
+dup 110 /n put
+dup 111 /o put
+dup 112 /p put
+dup 113 /q put
+dup 114 /r put
+dup 115 /s put
+dup 116 /t put
+dup 117 /u put
+dup 118 /v put
+dup 119 /w put
+dup 120 /x put
+dup 121 /y put
+dup 122 /z put
+dup 123 /braceleft put
+dup 124 /bar put
+dup 125 /braceright put
+dup 126 /asciitilde put
+readonly def
+currentdict end
+currentfile eexec
+D9D66F633B846AB284BCF8B0411B772DE5CE3DD325E55798292D7BD972BD75FA
+0E079529AF9C82DF72F64195C9C210DCE34528F540DA1FFD7BEBB9B40787BA93
+51BBFB7CFC5F9152D1E5BB0AD8D016C6CFA4EB41B3C51D091C2D5440E67CFD71
+7C56816B03B901BF4A25A07175380E50A213F877C44778B3C5AADBCC86D6E551
+E6AF364B0BFCAAD22D8D558C5C81A7D425A1629DD5182206742D1D082A12F078
+0FD4F5F6D3129FCFFF1F4A912B0A7DEC8D33A57B5AE0328EF9D57ADDAC543273
+C01924195A181D03F5054A93B71E5065F8D92FE23794DDF2E5ECEBA191DB82B3
+7A69521B0C4D40495B5D9CE7A3AF33D17EE69979B82B715BAD8A5904C5DE0260
+6C15950CCF6E188A0CDF841EB68E5A2F88253E382140F87C87E55C9EA93B8C89
+14A36CDF630D6BE7CD36DBDCE22B21778E8648B97B7EC6742EB5114BDF0454B0
+0EA7B1FE236C84C0E5308C871F67B973892890557AA12E00B2C20C71F516C397
+3F3BBD14A1D0149CA064391056E45E9470FC7F6F556ABC82653B3C8049AB5CF4
+BA83C8F2158C236B2FFD4208846013BAF4165E8BB8D334C8FF2E8D74AF5DAB2F
+D44788869B08399421AAA900ECC6A2D594641C121660D4B5F512938994C18DD0
+FCD9B008F68F0351D21ED735B2740CB1E0C1CCD25EB548C35B844601D98828DB
+556F71D07E081A593FF12DAF83676492A0FFE16E95717A07082B43A966C1EE8F
+8A59E1255E1705C43A23CF29A5E4A6547C93F1680A870EE7BAD8CF74D838CD5E
+F806911D8FE4262ED8E7F5BC58B92C9C6D74F8AD45FBB021EC7E97393018B9DB
+B1B84E7B243ADB05ADD3F1DB3692ADC5D47FEC7DF93080669E63281F1576B673
+125EDF08016664BE73364F65389F7C3B66623AD1754ECBEF9E5CE6948D933787
+A5674279ACB2EBECD3B4E6361419AB32028A27670C9F3E18B746A10B00AF6D77
+4EC00E3BE521C02A99AE5BAA98F793EB1228952BE67934B91472E01AF7B816BC
+56D7F19F631A1927846D800C107B1E9CBFF9D2DD513B4A8CE2E0DFD77B1ED178
+E43FA7052765E9FAF89989D490D8FEF6C536EC0D4AE27A74F474B98DA9E6B92F
+15E063DB260571979A5DE2423920CE1F59F56EB11E00E3BB9D466A8263E1E385
+2014BEFDA8D1EA3EDA04BE32AEE6CD15C5C010A1DF7F705A2C0C18E87C8DCCE9
+05D9163181CBA56C0FAC8C06A2990554C8E759D076B01BBEADE3B5FB8B551390
+6C8E4A2A1C6E7D9C708614626F3770C0AB7DD2027469C77975C27576065862AD
+04E5E50CEBE907E3E991FA0C627302C0E207B4D5992BEBAB5853AD1C0D271728
+C76F40A79392ACCA7358F948AC65DC823CFDA59E1FF69CEBB6B7EC3CF21669E4
+70D999508F9C49E2D9F8818CA53C977D93E15FBBBAF75B1E84F0BA62BCC4BAFA
+4EEC82D804C8A8C0210F3E5E258BB1F6921AF02BA9861BAD5C3D5FC8CEFABA8A
+A607E547B802096F7AEB09FBA99C83C9A494B94408DD607CA6561A6E6660C473
+62CF8D35F31D052F6C6C8138A8E1430CBA7EA6973D6D510C1A06B3FBD79D9364
+240C1A00272DA44B89A9FE8D5BF36DC1B5EBB4A78ADBE9C5EDB485F093D9517D
+69E1AC9A8E6C9D7C324E3797CFEAD9A18E82E03F69B2CED7D5DDCD1A218BF2E2
+ED2293AE999FE2A4B5213A10083EE0407BCF8007670B8C737EAB30311C868D84
+121149ACB4A27F3ED6C0C181C98AAAF51B105F264B5672D7F745131ABAB5BEA4
+0C9B43C0DD9116D6DC61F90BE72018F290D26D5E9D341055CAF09C9F45333CDB
+D45B7954271767F638EEC499F7B53C2CC5774EA7A7F024C4CABFB93D9CB1856A
+0C671A4ECA7C62EA5242648A84E7F3AFB9547A0AFC29593CFCE6D8B873A78157
+D337CABD291431C0A2CE1F37E0CD7340567AC206FF98E4B5A6410F70F750451C
+550EFB54AA259A1B236CA9CB730D2CEF125EC65D959441F7CC9768F777B44844
+CC9842A307C72B740680ACBBF6AA35FA7A94825069BF7696ED81A371A9E5475A
+9D997F2DFAD339AADF797F7E03E654234455AC3D17702A420EE0A597BA31BDE4
+FEB8DBA7C61D311CC90441A620164DC22DC2D373973EF84CC553453AB1B3337F
+7B39983B8DFFB3A9425F119B45C1CD37A76F905777B3154CA6200792F1759D06
+E017890F4041A385F2238E3C48B6C8EE6F5258463FDBFF7AC762F6C4363926D6
+50F004D473B7B7F73CA686B559C2885F1AA761653C727A77D73431E9D110E76A
+2E55C68CD50F43997C9B2FC4710F8C8540909829E215678E63BB8363C4B8AF05
+9986102BB36580D9CA95CD216B7C321822CB41B2E0422CD077F3B55E0246FDB2
+44D5976F67296B5B0BE4B06F6E43535C21164E6C5089C3E9BA2D6B30888C57DE
+49DC8D9D46C0D5EDC47ACF2C03B72DE3B69512508539019B759280BABEA12BC9
+385308A0395C4CD33182A10A5A229743379C2075D82D8BFCE4A66E1AA087A091
+8F5372684FA5037D1B92D50CD9CB4F50AD4F8EE7D51F1C9E63C721CB5B9BD011
+6F0A8DD4FDCD2B008F223A1036D90F0F3B252487DE7898F9AFBB3A9D9CD49E0C
+EF4ADAD5155A98D2125ED5A3D3907F67301649519419F33CD942E8DDEAC1BDA0
+E90C431B198F646766A8FA9F8D1561B57E126EF604838C0C1966655CF31FB7EB
+C8CCC434FC1C96046D38203E1791EC824A3D7AED85C029288D4608CA7668A2BE
+484C99639F121845B22EEFCE0A3B808261921AA042AE19E641769E91277BEC29
+4594082CCB3058F90FAC4A700A8A827ACA00FCF574ABC8EB7DBCECD97F2B22C0
+0AA19E8739B81AF8C6F621D69B8E6F29BAE233FBA655A0AF5BDFD7F5C6B9167C
+6BC7AB693D45EF2AD999F5DA3CEFA39BA48A17EE6D9F2C4DAB91AE3F0044DC3F
+5D5506CE4675AA928B0092D6F173644F91295216D8BBB14CDDE0AD524A4D545C
+1B5E284A3BF0396664081CFB4F186A84A0D24D61E82F4767C1E55A0642720CF3
+909FA1AB8EAB78030B59BEA067DEDBD2F1D0340E790AB2777DB18248521934A8
+BB38A58B7F633DEA4291B0D5D13E9A882C974697CC6D3B49E030C94EA29B5506
+CC29C44D01B4751B453A46A9F6BF3BF135AE87A4CE232AF57B66578310DE41E0
+2A6AC422117F1963C4D7CC306BD25A6E724E51921779F22F029733122E23E2F0
+CB340008813ABB104380C80A492B3FC6D0BB07CB8D8409E9576891EF6E5C9D08
+EB8320DFA31BAFFBD336D0C2BBC3D3B2D30368B9860768FC080D30569C7F7811
+0EBEDA2962476113625EEB555490B8CE4C5F99D74ED10F738C61854CFF8B41C6
+9402E56BE8856144A1A05D0B05F4CB7EF728B2F4F5A439F18C3B68CEFA41E59A
+D8308ADC92EC1289DC84CF48D2CDEFF509A145BF945E1E00D552D329EBD2A7C4
+21D58082CC8FA790E981F4AC8EAB99950678FD3A7DA3DF13778681B208DD71A0
+7C3CBD0664B37C9EDC6B601D79A2C51FB54DAEE849F93209793849104E722D3F
+52DFAF7047EEEDDFE744787A5801E4AC2C3D58EC5DDC15FCEE03990C53B0C57A
+FC54F125A04C8E4A0ADAA725808C587E7DAFB9F784FA2875689979D316DC22BD
+AA36B306A1ABCF907B63C6476737B746099973CAEA8C1E2C5C41F27E0F7DE8D7
+F0D942E34E92F43FE902653D4D2EBB6F3B9F7928B1550A82AF234D45D028F429
+067652BD3D391BF423AE72B9CB1E8D91E898161BE3A7849D456A861A2046711E
+E934DC59442AE7D81661CE8EF727D8D7DDC0270E937E40F896AEAE6171661431
+C1025C53172F9D366834BA0054FBFD84503FBAE328B6FDEA180F8EA35B1DA937
+5CC3B8F00C206908C2FFFFA6A7AC6915D15EA44BDCF29E2BFCFD4A849535F19B
+0D307C696BE8205C7D84B9C77F02EF27D911056EDBB4080E4D3ED72788666CAD
+CD91B0ECE27A177DB23320A7FA9C31408B4D02D2A4B1CC6DDE1A6CAC3D8EC1EC
+2226EC98E51046D1EC26FA20EE62D24747D83CF4941DCE5CCEEC0DBE387149CD
+E05B19FFCAFC0D117F9A3E60DCD4C815228D98EF95EB559AD0ACC0D50FFDF714
+56C3C812EA5ADBB013BBD956A7C4CC0ED7D3E25D5C9AF5E626F18297F75D4957
+F5B0B33379114B903FE98BCF35C3FF76FEE1D9AEB711F2962276531F7380EE3F
+E368720E0292A170A15C5539B1FC7BB954EE2624B504CB8C805B8D31AC38307F
+0513606F09211AE64DAC447693B2A0AD15E9A64C34F5A911ECD0ABCA90E9791D
+67C6BD202B0858EF96E7722305B8AC02B01AB1706CC6AE875A8DDD15EE349046
+EAA65005E7866B506EDFB7A5A2AFD5C9E9DCC821A79EE9C1EA2C7BBA32A40BC7
+CEC26DB1AC473C8C3960ACEC581B37D6569E8C8C42950BAB7930B65E1570E3F8
+9A7FA719F1DCFDA45A3BF2AAB32C9A93BA3552608A61C623DE59BCB346E87EF5
+9CF025A87803161221C5C1C6F6B3403712C76E9D755C7BD68D7F2DC03C14CDF0
+C1BBED1D648B905B4B17037B7263C1EA7A7F06FAAC4E09E08483A8D714C19861
+327CD9C32DDF850302DD6DDE24912D00C22ECDF3CDFB18FA831A41A7488EC203
+F564CFE30D506F0829A96D35A7E09C3DCD107D589B627A15B55C5D6649126BEC
+60B88C55ECCBB4E680265D9EAB4CE22965D3B1AF759B01ACB0D0E6C92B6B4EFD
+A81E6A648708979487FC591CF09631310D46891423F4EC159A73E30D8DD147A4
+B0EACF6D45D18CD16CEB8176F03ABCB41F2234747B9733C8FAF34AE5D43D3BA5
+0CE0FACFC9B087F84FB6C68678BC6E76022B1526D6E5B3A48EC1A110BD75F45F
+1C4DC6D39F254976453F57DF873B7D635C80C42026DE020E5BAFE0DA0D54D1E1
+DC634D2621BA184347E5252F645A6A1DB7657C48124186F0E4C644077457C24D
+55753C651A9A7B6349867641464B515B821349C795A645420508673B93750D0C
+7A3B33EB1F09782033742AE8F3A23FC02284E6C03818FADD1731361542E3FA3E
+75B8D52B668C3E18A4AE967D0FC3157083D952AFB8144D549E69EAAC51C279C5
+E5D88A0D9D53013DFFB4352A1598FF84DCDE6FA32FC377306B9B92C0F96EE149
+8CD55E7B2445B86CCA7A547FA732D52D59025129FD8C6333AC0DF4F0CFF6287E
+F2036D5DBBB3B91B92F12FEBE0B61A313A4DB5A9CF0BB3DDB781A56FEBFFACCB
+8CB9D1D3DBDBC4CB6AAE6769E470582403CB920630221B68BCB625CD4605FA8F
+D3D5B7A1A28D15E44B38E92E906C138E72C15B86F64C38E23BF0440052A8C914
+54397F49DBED99D0AF7CEA3B0A05FF37C2D7EAE1412567E6776333237C31E3C0
+49949EC8BFD6E0F6446CE2D4DCD2C1524A288818CC5D159BF8463A847AE4A2B9
+CC8C58F822804B81B13BF4F2DEB6229C4F51F093075581791D02C36A13B855A0
+34900AA7CD4F1A797652656FE3A8425A38F421C4CC0ACA1CDD44FA6B31219276
+1CDE1CD63D6A58CE705CB56CCA1260F9B86E989019071563A9B4C274A87558CA
+6EF1660D574EDA276801F0057740E2C3B80D253D697736484D892CE1AB128B8A
+DECD69712F5E70E895FBAA927E8194D792A04AB6CE205E04E38A433BBB793FB4
+E8BBC4279D58A223C6673D909D6AFECD246E66A52F4CB35E5931D24C828489BD
+4ECAF621A220D8ECF702BEB01C4FC7510197D3F6D15321EC87175ADBA6434ECD
+2B5A306E91375CAD22CD94301763E4A8B981472890422C5488FCD523C9CB17DC
+ED22FBF12D5F7525D0D6BCFE8CE85B0DFB1D6F989C267FFBA0A996D309E4A934
+3DB54A9D29C88B9D55D7300DA3D46419256C5A07A2A529A8DE8BD1727281F5FE
+97033D861E0531B14E811378EC1AF1CC7EE9BA2B07D935843D3053F673979F8C
+FAFD59D555B56CE338F606747238B22BD62C42BB7238FEA335678D474A643570
+A9E7B4970E8C541CE9DBC7BF70ED7BA33639D6744A18379455029E934C95E2EF
+639C4848CE9A0879B51649FAB023A71782444B451F92A34CB8A124270CCF86D4
+D18EEF5C1D2B2A29012613851C49F50702D63BACF95EE2AB4D72B375E0A62615
+E0991E130A67ECBA9E05329B740708F1CB148724C3A6E5E3AEC1F88EBCA398D2
+1CA8827C977D72734310233176D1AE26C55CF2CEACA62223315C28FCF6305C7E
+A22414D4739A059F552F1F9372CCCA5FED4F9AC987942848EB498900269511F3
+F408CBEA0659B954F5F1B18AE4FB270213646F9B28AE4439D2BA2D3E0AAAA780
+5E530E4EFC8A060EB979E12191044509DA0C14397AFF949E12DC970658D5EAF5
+4EA963F5BC1407A32F3837CA6A24B7F3D60EB8E6222B702E25ED903F9D21AE50
+664A095009BDEAF4B78DAF94E5A55D48366CABF07791A1684B2F54EA69070844
+4F031AF8DF416C2D3679F8BA038B0DC9DD0400CA6B34667BCBBC07E62C1668A8
+35A8C57C9048A7227E672E89681B54D662079A189A9E96A3CA96D8DD10189B04
+1DA49BA2729F1CA585B1BD5C467295285D52E47CA904235A1A3E48EFAE9EB6F6
+01374125CE89D53C276858668CF45D2F092DDCAA52418E0BB94C2B8266B4D88A
+5D911507BB1DDA3D8F6E7C14A91CA11AE799EC42E993098E18CADA70BD2A1D82
+2C39326C6E3F9E84CD9758B9AE43D79BF99E6A0CD713E95B3D9B7DB90D127DE0
+DAFEBF850CAAACBD860B5DEF2082F1ADA64B44B193C4A1417BE221FDCA36456C
+BE5934C8CE3ED55AE3A11697C2D682B7D0F72D48976451D205783BE25DBD2507
+39C14FFB4BB828DFD187104F38A7F11D5F0698C11E8C1D4F107CACE573FDC4B1
+C56FDAE47024D6FD16A2FEABB434CA320300FC4B6C1B6CA08F76C60B7C08A665
+99F404DBA8A2A1EB18EF6750E4EC186E31561A3F080BA6562967546715859481
+7BA782940F5C5D06626D6F6A412CA7C13820EC7C1DF23E15E5829F698CF617BE
+D940523E4EE4ADECEC48C24297DBAD528BA1DCE7AC335A1D15D55415B108EFC8
+6D45030D27B3EA63B2B4CD771DBE66AE0218ABB1153D4B7482289D1313CEF184
+5C960B1E3C3C953912CC6F4521D1E15636C1545EEE457EFB87B88C9E43CC2F38
+6BC4BC96969F4FF28ABB06F4454C01CEF1B6DC538F1E832FC1666D977E5A881B
+F72F1B4C7DD4BE167A5535F1163A0706F9A0B26400178DF8A128FB5EBE6A7B81
+E478AD183EC06622B591337B9F1872AAEA356F4FC67EE767B34CB5A4D90702D9
+39FB846947F4096FB3DCF16EC81455164783BA0B5D723060DAFF411B68307E81
+7BEA1D9A47A5AA3D648E618C83C60F060029E6EC4D46B045FA7415BAB2AD0AA5
+ED9C729C24136F6AF61E6409C0B5CA760B16225641E268A68CFB8260BBEAFC77
+6626EBD97195E77CAB425CFB0096D805D9EE699E41680D095AE9FA10122A7882
+2F00F495C9EB2102DF0D3E61833BC0A2E468C5CF7AB430FDB7C0BE3DF2C0D230
+1580BAA25D65F599378D873165482A1FBB224AEA89C6BCCFBDBA42AE1C5DCF41
+06969F585CD3B737D1388D6359F5468D88FCD2279BDB270F6A858FB7D2ABDEFE
+5EE8FB79FA437F8F50237B92C307B73B0DCB808D07A9C3255CB9B3B17039CE5A
+288103D05D132863FB522A02CEE3839EF9AF7F07D99732F0B8B384745369FB3E
+7901166478F4A16076A1504C5E98D17408494E270BBF4470ED12B4332422679F
+759F1D93984D7E506D16950DB6C2682FE1379EFFA6F6C95DD71F6E55BE3EF6AF
+E0CB25388EEB436E6527806FC75484133F6E561DEB979D5C1FFEFDAF2A6D964E
+03BAE0BD593C2992AD84569C81050F7A793C5263E50C2F50B98C4CC703EAE17A
+6AEDAACE312DAFAF5278D125B6EFC5587484F61DAFF46B87B7C9B1EEDECA4859
+314A9A9E2248467DE1E54D90DD671660B9040B3E0DD982260822177EFD757266
+74A16C83A7FB168016A320D3DF3BD7726F1F4EC90EE5DFE810C96B099FD4368D
+906AE4699049EFD37E8EF058D4B97BF71106445AADD4FC6E90615A0066823A36
+673B8DE32322BBE861AE251226B4385AB28702831270DBD25D666FBB0AD7B96E
+A44E891EA1EAF0F87013AFC982E33D67A28E96E0C9CB99B9E4192536830D9901
+931A8CAFA41289633B20BA3BD7AA3414B6DA8D57CCF2FBE39920CC06361F075B
+CC40335DB9A0071CFF77F6B7BB47F3100DBDC9C4A58C2B81EC99E8E966AF3390
+E3FBCC28BA1D79961C8A1584266454DF772FBA99664D74D4A89FC82FFEDFCFE1
+4C9E4A04291E803D142E37E7ACA66AB279378F2F192FFB2B5BBAD18B95F03136
+2CB594A3D6D3F8576B90A6C4DAD6D6C8EE07AF682F925F01D0B26CBA347C03BE
+F3B0585CF4539FDC66915E22117078CC94D621F31DCB3E021998A5D6EE94CA4B
+E214D07517283D56973D8E4367392BF6C1150DEBF459D141AE0941C1C8C5CFBE
+E735D796E365A1B0F60BB4CF2801EAFE4889EE5F338D3C4885368281B3C95CCE
+251C28A90D318A8A0384439B38D63B94757252062EA44E88509FDD2E75FAAB71
+7329622828B2785C1A8B26351BC74237A6BF99216652ACBD4CCF54CFC8AC72A6
+46342F1E32D4318E7E27C7B2DAC943B3E72C472FC6F1DDA8684AA922516A672C
+E969C047E318B5E3B1270C1BEB1C4071A15BC81B29B268C679B41FC5E381BE33
+DD95F0D68118CBB60C521E5CB2BA46A10E50E9238163713290DF6DD8A27D3813
+F871C07E725D4518013D9A84CEC96782541E5580E33C2EBCDB18F08EB4655A46
+507A8526DB26C854928B81FD502B0CCE4A68943C12078F57C10F4E85FBEE1025
+46D925B8B3B447D4920410FEEB9844FABE985F9228FDD9F58392F2F3BD650E49
+2E3AD5A14984874DF4572816931885CE8A448EC95BBF40DDF4F85653AD90A88C
+C4A879C0C7596E61997B972E8A55E57B17F802C738E5C7A8FBF6424F8B131B23
+CEE3EA3747DB066246C250EAD335A76FA166ABF75120CECB59076AB31A51F176
+57176CBE8C802A97B0542A5CFD6D5E6D7EC848B923012E45D9F065BFFA0D03E6
+788B68BA4DE51DA37994948F859D41C28BA939C3A82BFDB44DA585AE80B8CD7B
+A6EEA79B70BFB4864E06F06A9751BD2D2A209D150D7135E0A25D67263EDD2A7C
+C63B5B76ADB05D44BD5BC0BB3EBCE2E74E1AE5F7DE07A59D90C932DAA2553505
+27F2AFC05F7CEB39E1C7E54F69FB0BBB069959F2FBD11709F8E81F6E7CA06DBA
+1CBDD8E7A78487462596DA288B50B295E46F4C3D9BA862688C68859734B232A7
+4B371D2BD786924F186524765E789EEAA30B20C069322D42C893A30BF1BD2C46
+F8F3732DDFE80B8FC1789239345944D8B457824FD80D11184E73FBA30EB80A9F
+2FD466826D4E666E3A835B98A1D4AE5D17053A6A648E26E77BD08F9A3E02956A
+AE82C4929E9666F539079846527D0E326FE7CBBF86E3722BA3E53F8A5121080B
+ACF8D3C67A2A1DF624B9DB92105D3C833F5A6ECEC108E026E1D3D968967A1447
+15CEFDD09123D56606134BC3449404ADAB1330C9238DE48F3CDFBC91EB86D7B3
+8B85B5BA97376A0673E434DBFF19798EA90BFBD94493E2D21976F8106FC0C276
+C81C9B9F7D4A68120DDA56FC6EC65FFA40DB78A60A05EC270A106DEEBD2CB92B
+F0622BD2B1D43771DF39AAD3ECB655F317AB483F7290C148690903AAA636583C
+99DE3DBA99EFE20773D3D8DDD816A28D7BD8881DE570BAF5C7A30679179E1214
+FCFED81605FE56AEA21C1894167F93D648B474352A65C0756F812F97AB435ADD
+22C031A21714A626DE35308AC51CD676DB1748DD2773532294FA77CFB2AAFD32
+A72BB7A045F12B4934A768F89217233DBBD69B900B28492A26713CA5D61A9042
+A982CB071F1F875718FAC168E4E275860DB6369B8114E1BDD4801110B62C3E3E
+CF140554C826967A99F4E9726526E87D57BF845CE38E33893E5F9788769B6A4B
+A4577C38C8D45AF2EDC9F4FA7DD9979AB8E14FF5D8956233AB4C02982BE8E561
+C63B7BC314793F634DB6F086E1A60D9FC3B69D3A7C20A99FBF3CB028CDBCEB60
+E803C8DC3C5F0CCAC030905E72BBAC052520CB0E40E23B46B2150DE67F61E4B1
+8C4D55904B7F90DDE4A4A78B11AE1009DE46DA396791B1C0EA63FB6897FDFA0F
+42474042E7E9B06A703A7C6E672AC6705506F3C0B6861BC85CEBB9DC9BCFDE0D
+43F5248CD7CAD4B89835BACABBCE6C791BC35FE7211E775C009844FC75CBF6CA
+DA6A6B7B488270BFAFFA3E9950914CB0F88C8AB7CDEFD2FDE11ADA7073037EF3
+1A5CEEE37090F3A56D06FBC70597907A26498593783878C02722ECFD5D65903C
+7D421CAFA78924DD27756853568535B02533C3393183D6E30DA6ED4BD6582E09
+A5A4B4404EC452E91CB44515AC6124EBADAAE8A98D8A95E7D14DA39951EBC461
+D426490071462F246794023DE1BDC04AB0F1834D50F748C3C60A07E1FB8EF400
+78DBAB90B59500BD1232A872ED51928329CC8F06E83164FBB2D0B24222223EE5
+992241E8E00D5DCCD6DB9A8E2325ADBE12FC8512AC127BBEABDA739672C1644B
+554850CD75724E6779A7E76424CAF89E9455860E0AE2679231F4A535C0ED4336
+313717D6F7A4A4DA833847A1BCFC7BF99234FA645F2B85C9A9AAF7108931E3CB
+077A9C571E57B0D7EFD92B56C3AA4FCEC0BCAA96005E649AE8012366BE6E62CD
+9E742F8F45AE4C96BCD73AD80AFB6F061D629ABEAEC3018CFF45E41F46751953
+44E490B1355DC49C1E10BF343307263584091D122ABB1E3892E532B6DBAA105F
+CD48375C112331EC5DB49E4D4CE2D126C9274B21E678E5E3EAAD4EA0CAAA29A7
+86FD8819217B195EC6E40AF23ABCD71156656DAD38C931C8730715A2773DC44C
+4DEF14D92C2A054739F27D7EF349A0EB76D952BD9BA169B4F85C09D80984D232
+2CB4A3812BDE539DC79E2EDC7C221739D16B10246A5F57151C210878556D4176
+31EFF3AB6C4D78C4F0DF81692B3C9BDE4F85242BF0E84BACBFA39688BB222A81
+E85E9CB332868ED5B64E140C66E242B97A90C13B6DFBC3D285A49BA9D4BA1A47
+64D83577FFB50BF974D953F42A249ADF9AC228CC4D8E82213FD463BC757AFF26
+DF4D1678FBCD55AFD5FB3014C0380B2F8CA9D6400DF2AA041580A6FA5694ADBA
+674286F00E531693DB28F7C996D5A66F80AAAF53001EDFBC065C72FA5BE3F114
+1FA3354376AEF7374AE1D0A8E9B06C58FD029922164DC9FA09343FB6652232E2
+2EE34C662F0092BE479D739ACE775C6F589775DD768B736F7391B9AEBDE7F760
+727702E145CF749DC457B2E98A36C52416107B1E59084B5F777B61511B8D17AC
+88386A7933CAF852CA23FE179B67DF8DCF15800755605847ECC0FD77873727FC
+1AF2BA8BC75D30E26C40913771E528724FD7C5DE284A8B58AE55A5C48AF26AC8
+02E155B8FCD6755D8F7F5A6F1AE66E4D24A13567B6463B18E65972BD75ABF732
+FB41F87A62FECE9A50C697BCEA1E3B3DF1E3DC961DCA598220CC746326F85F83
+72E803A4E69106EC5BCA01139F92171DBF9964BBEC8D3370039623CA1F927CBF
+FE7DA71B04B4321EB4D3FCB27F8404994CC7DE5F26AB8FC019A203D6DF2F449D
+85A4F103F7604986A1AC1F7D05D239E728FD6AD1DB5024B0A0542130D2B0E7EA
+4432F910F9FD75568F5732EAC95F7A87CEBC359949C26595741533E952327791
+87E42DF84E1064E1BDD3F5A6455087B8E9C783AB9ABBCAF032E9FA32C27ED7E6
+CA7E3D1D76CD1905166090BD81A85485B9B4E976DB2E19A8E62EFB795FD6298C
+9ADA57D5BDA2FEBB227F0EFEC59E4B51E06B8358006F9D79C1EFE92510D6046B
+6AFEEDC793137DE622A8B3F5C9E3B21F29A98A589D9CEE75E348FD4D206415CE
+508AB95A7496236AF1F6F5ED6B3ADFBAF1E35B51484F9B1E0C11C5AEAB9336F5
+A8861ACE1EC74C4A145A64E4FC8F6BEB3A16B021AFF4AEDA59B06326A8D7FCB3
+3B75F9729BFB7EEEDA8A1774728C80AED40BC35D42045E5CEEBBBEFAD2566CB1
+AD69A9A972826DF0F2303BB232367E611C115E8955DC97779B1AF269B84574C0
+9D816C88BAE3AACA6428CFC648FCF0869AD9236591E3B8FA326BD2EDE7F97286
+511C75F4EE4F7B4DA33BA2CE7F778D92AE7C1B4844CAB3ED8FCA285454D78469
+1639D24729E8002E4507A114407DF51543CF7DFFDB7E05ADB2D36E139F2DBACF
+D90AF274AFB3E5AB5B38918A28EDFCF6EACA78248BEFDC2FAC0E041AD35B1240
+B33191F5397FD09BD2B23112C25D27233ACEBD728E9B2D6ACEF70F13DDA614AC
+12AD845A43269E2BA323A9051FD2B5C539F417DEB625465AD2370DE58D4E0C1C
+90DDBBC85CC416287B4FD8DE7F41085412CA5A1508A9A383089690144F4DC4FB
+B64B7D3E1AFE43B8CA67E55244940C3C3605E259BD02335B0DDA6F022D585A7C
+4A98ECF5D52756717DC98BDC5FF425948858B33C58D1A6521ACD41B381CEBAA1
+C0A3AA55193D46F5962C2C7F26589F5888F3A2BAA0FA4206601B580FEBADAD8C
+34CD8AC20C07D8232B7E2EDEE184FA4D901844FFB3E8F2629CC1462B42CDA11F
+FDD31DBB41286064731E0D0677CDB3BF5A61BA4171C2A79FA9E8D667FC547BEA
+9571408643C4383979354C214CF6C9D8971E91D944791F0E6B2EADB55E4D1356
+66A1D81D0B769C30E3E7672B22170177C015F8B9657663B486648801252DBE96
+AA54E5068AF986D8EA010E158F07F0A3140FE739BF702ECCBDD73F65353D300F
+50FFD9536BE94A080A36C9FB22EBE3E60FD4773B6BCAD134DCA14E30A7A429B7
+23035AEB6C8E5EA7A79937BA62F3B99BE1D0E72D2398C52B32E55823AADC7CF8
+DE4435F908959FF59420B4038042746132994A046C678FB1DC065049E1E5794E
+DC638D83EE32D6423E07B092D82CEC388DD63E05E9ECBDBDEEB34A56DFF67D10
+1113B0996774C5EC465A774C371547440A4AB91C1A64419914ED7D27F7175331
+A0CA4E7F6E85D9BA778C26AD642AC9CAA66D8605332DD7EF702B00E46CEB58A6
+D51573013917544EA4219777E83385E3DF69CFA50DF2AC71C64036CE75E24738
+3A2E951CF750EB4D28EA85F95B13C30825C273091A568A69537BF03D70272A6B
+1E47077D64054588403AC984B9A80390C866A2E2DFB498064555EF3D4D531D10
+669C3E830EA3E0067B5677AFA5BD29C94B5E0893EA14FE874B911DB192F0527D
+646E7206F79859D5E6EA4ECE8B26BBA97BB791BD7DA4F7F7CEBCC8B04D00D920
+6D2E4227F997936A16C683A0AE11F059109A2E679244E9776DC9C7ECBB0BB73D
+D9A149C90BA2C69AD26F9F900323DFF9D04779F53AED156C8A8647FCE57DEFFB
+863B8D148E6722A9077DD3F50DF532094874AC6682680AAEADB785FEBB7F3B12
+1FDFFA94A4BACEC70943405DB37CF6E9E4C7EE51977A803035E06AD0D3B43734
+C8B07ACCCA764DE24A841023316C84CEBF6A2D86E6382281856D8AFC9BABD871
+3BE9E6B1F99262A2BC0C99138A5049C44F2527B02E07E40B9727017F30E59AFD
+9EAF7590517673069D0D5D399446C5D4DA1996CEE93112B322C35290AE4C14E4
+B651FEB0CD3C9A845F5AA9B6C6CC7548895DFB88574F89AE4BC8DF6C94084367
+40ED5EEC51173B32A02B6DA16353E91D07EFD2E034DB0A4B57608EA80C56D975
+9DF0B73BB12A1FC8FE26C7B5486C971D89217E6D45760045255531E2579830FB
+B4984CA52896E88D964BC91E1CD3B3CED5DE4861F98DEAB97979BA9A30F100CA
+027362CFFDD972347B466B295D8244F99EF1A929E54F99830FA62F0A11D7C279
+D5D76395F83D12264B50782207C957324FE35DE6C03C571A0C0E06F1AE3A6C85
+5F8AD72CC806E2EC0BCA6128524A9FA3EF41B372968B0F4D4CDD2B5E5C4FE3A7
+27D0EB547C3F34CA3BCAD92FFA62D761F21C4B213C9529C60D4D83A4AC9BBFE0
+500EDD6E1F22E53E1ADFBB8D1A0FA4D68668E7DF7DEE87CC7A6E55AB0EA91178
+3B46465E041B262CAC2C775B6964AE59F1352A98F4F6D6FE648DDA8C1769A333
+0D35A6CFD30357BC2D059D67ABF7E1A4C78246AF7E9528014CC2D36E12379284
+C17974375E1E4ACA37593C07876312F2BE5018E71F85E140BCC45EB4BFAA7CC3
+0FF2CAF72A76A0788108BE53388ED11FB521CE8C5499F528ECA91F2A21EBD10C
+1F26C0D816DF93E840052230356507BFE615320D7C856332A9DC966AE7960B19
+95C50BFACDB6E824E5E05F6F21CA855CCAA7991F052F222DE81361C6CCBF9BAE
+BCA4BB3E293FEE1A4ACF635AECDBD204EB5AD40926DE56664B67751E90289EF1
+005DE6AEA7BB788D5C1BDEA4D2626A0AD6FB4DCB5D4F5FE3C3B0ABE2AB39EC39
+0C83EF5DD92D5458ACCC7CC6C23E930E60CC81636BE65CAA56A7C552DF3AD090
+F41C8448DBBC4785B2E5359CE5F4B5458E0F5D5BDFB191B5E11D166CDCD979E5
+71B494C2AC013D908F0786751D8E4921C8D3AFF9A2640371F0037CDD33A5B239
+5427A3F13FEDDE7350199E194CBD0D0367A32B654893961B696E27248EE1FA2E
+D4C6128E66526AA9EFE0693BADA6F4196A617A86AA1667503F45B430D50D2187
+1922575245D78C0E696E7301A6D4C9A2BF81FD0294459432A5B46F334A1E9CFA
+D0EAFCEEE0127679E963B04EC13B8C81380E5F68992E95314062767FB1A7481D
+C7268BDDF0840C1BA24B08335256C46FF042661523EE084DBC7F05ABA12EB45E
+BD46ECD92DE2DDAFC372498CBDC82A51AE32A4E3AC7FAC9C2B2FCEA14C18E2B5
+8A2182F6188B9EBDEA3F0288071552D838AFF8F28D41E13633EEEF3DF8EA106B
+78CAB5C69A6F54C5CA0600D151A5FA476183D2EC55D4AE76E856BFE0B91A8A75
+6D9FEAB2BEABCABDD42BA4FA9EAB6335D036B99C7E345632F2557C5AB48093BC
+2B01BEADFF47D830F7F724A305C4DB87B0F44C29D460FC45B1525EDCCBC9C566
+CC6434A2A4767FF5A35E0094097E9A0CE33CD9D09310E77F84662E4870C64BFC
+11D2D1E263756EFDB365A2F6C9EF4E5FB1F493192F14F6CD68C35AF59AEF138E
+60665714C3AAB84BE8A44AACE61A940B2274EC6E48F0DFB2E10870A423F84636
+8C6C1F4EA85F9560C3190AC388727BE054B2A8FA80A18F3309CFB0087553CB4B
+75A3A01B7676B26E92C11B85C7BBC51B8E7842877A2C5FA7CBEE7CDB00123789
+6159D6A49B0B7D5503C2096749F69526C2779388AD5CD2675B5087B5DF61197B
+9FDEEF9AAE9C98B8DD71E5B2AD45CBE9C6CF84E39CE3B1412895A86B6A016279
+EF39755F2F1F045B62CE8EED13A9B05E445D2C8B781987E5DD891070AAFE3F8E
+76F9B2901111D4094DED65E0631AD91AE2A497BA0322EAB3978A2405CA6CE376
+C1C51461BB73B990EDDDDF66F4C4AD9BF1F403AD130F104D67A7781839273653
+181EE49022707C03B0945C08271CAAECB922893F0050270F2BF1AFA776C78DDC
+F2B55A1F80184F2A26D230D42131E91A53A536B5238D2702E8AEA9AD5CDD9E20
+D13B7D67EA0C52E48B6FB033D2BE976B2EDB855FEB8D9BB4BFEBB0A96867CD85
+C04317DFDDBDACEE413EAFE6544CB5CE9DF41E99AC8F9945D8E303A1E86F2AB6
+A12E5E79185B7C1DFB6DB8FD9D6F93B34165F8B88D3993DF034507AFF20DBE60
+72D3329495A1AB31BA5E057D40C10BB6B0B1CF50F1D07F748531DC0BF1011195
+07428DB85302235746CDA81DF9D05F085EE1E452E45FA115CC80E114E4D1F5CC
+36C6266733E70CB2EE8C9FA7F641A08047CEB84126E1B8723F6A19B637D2B4CE
+E73281E6AA7964DFFF6002BFDEB7D206DDA4BC7CCEBC5FCAEE8DE9C3203ECF73
+56082B0B67F2C3DE2B7A30B839E736A96CCC8F10515C450389C37EBF7316889A
+602D35C3DDA74A5270D5C280CBBEFD3ED473D45E068EC4E011E4DADEBA005914
+2DE2C0854DED8C7DF430FF29F3E454442645B646A1718796E9D5910271F088D2
+522DBBBF002D5BB08A129AC2F716E57D31217D6186E05A410F634502EA74C7F5
+8A1DBB0F5B35012291FF58700C3A41856C8351BEB4233AC8FC879D0B1CD0CE1E
+CE50742ED437BE8F80280AEEAE20A7C7C2770F6AEECD7A9F9009207730C6F05B
+42ECE0F1B464558D7487F5143FC0E1B7EBE675BC48A18C0C34A99404579F99BF
+ED16457F3E0C800434234257AA531955833AD900928626C993955299593C8495
+B084CA0AD01EBDDE91E49EE562C961D3828F38FF1B05D977DAC40742AA7AE4E2
+A153C65511D055BA412F67425D63B303296F3B9C4C4B377099F265646D101B4E
+117C63F22CB46BFF21081B885853610C36A2F5BE721BA16AD203F9167F60B7FF
+A83CD5EB56C2FFAB222A1D3B9210B8698863158C6848F0FADF096831557D9B81
+A0061BA5E1BBB75FCC178EC4E5263CE0FDBCED4239012B64808BC85776D70835
+F713846E6C17D92E80B8A1DFED2CFFE0962B5FE2FB7CC764DA214977A03EB01C
+CCB1CD127A23C5486A8115BB840132B3D568D9EDE75B7A0AA814ABBC47854FED
+7F75B0EFB6A2C9B19CABCB0334F70451A7B03662DD83ABC273D16D79E801718C
+7DD2B8D033AB828E9D80023B1024E377295E7A660F894F128B9380E57CCE7DE8
+F842F80F76BCBDD52EAEF474C6F368DA0B30648C46E13121652CE16AB55D78F3
+9E15E6210751706E6EF3DDAD926FDC49C13CCFC3436C9B01008F8D656C0A2111
+8B21119342A600757477D5AE24F673FBE2429BA7A0BD4A3AD41ACB26D732FD54
+BD3F5499F4EF2CA22F29ED773A796AAE0E8D05CBDD3A56EDFA1ABE8A8E3C631F
+7CDB0DB86B5D7345C7CEBAB208702C6E19D0ED09E26980AAE57BB17CE2A98477
+4628C86F7336599DC729B04C8C5C4F0E908D6135434598BA3A1C594B46832E3D
+866A992F4382C00C928540FA636C958C807B2BC3CD4BC1F7C6A79F8DB58A9722
+CD5D352FC5B0B8383ACFEE3BA2072B5A66A5858F4A7CDD70DAAA4A6088CD55F1
+561872587AAE330EF9E76619AAB72744C83D29A51EB86C057D0F5972E5C31FCC
+4A34175C47ABDFAE5311D2318126FB8F15AE8A40E609CDB7ACA07431DFC2DD91
+30765EA0F2DA53F1C9C6459E18645FF6BF92FF9918F860151D1C53E8076239BD
+1FA4F932A7EA9589A439AA3793B4F939AA349A2DB6F574CEFC3F0537A18CA734
+6CA31DEFA1F46A0D93B0A8092E176ACF3475136F03D66506E0B4814E0DEBA2F2
+0640483BB98FE5AD51457A49387EB6FA7CB464DE2683DEFCEEE7754322EC3D75
+BE93657480EE0B205EA0764C411F2957048D84137E27961DDDA720B972697AAC
+07A00FAD82226F92DCCF48E9DF7BC311D9098D9BD2069BB306449EEC97FFBD75
+202C13B602FAA33F29675411D738AE1F3DC5C97641F8215E8ED4A28904C06387
+EEB28B2F6C0494289228512B76CC04B6741C6076C4FE2C42D58A28C332E9FDE9
+289001D2BBC1A8790D7F1FAC88E645E1D3B50C1CA28B24A31E14025679A61250
+67BA993BB3F22CDE012A9CEC30F66DF165A53EB4145850535DA2E17F27E7AD30
+C2EBC274B6D9388B8B58D7BB242581B22AB5ED916276841540EDA6001252565D
+E7E0FC7B762602133B335FAAD00E9690F90747675CE69B17A789DC774D8009FE
+D9D4B7105854A44B634A56D4266E3AD008A1F78FE23FF876B9F8A640E2302C70
+AF50667B3D4B8954D01DDC88BC8140462F22B67EDF59692BA9A70B1E6DE915F7
+429567A130A730A359F58388DE4EB4382EE07D03CCCE3FAE0EA6391A05A3F255
+B63DD8E4EE1F8FEA91F96EDAABD436790E0DA067F0662CFA8BBBEA3E434171BF
+790C78B3CA0A3F4BACFBEAA9B18E5FE5B266A3AE06B85400A1B90902EFE6BB8D
+76D07EA68E0AAE52FB0D6B15660874A3CE6AA275FD279CEA98BACADC5869A3ED
+0E11200EB25B9760D1795B7B261C9144BECE83D37BF4C3FFAEBCCFC3554D6CB9
+40D9E4F20333CF18582D379942940574524B17B767B0405722EDBA9A360D2C14
+C4680EFBC0442D6C35B5C0DEFAD773793338EDC66E14A05FC87F7A38091DB3CB
+0EF6D9F2AFEB4356B5E024ABEF34EB7799EF3A658BB58F6FB1D43C792C3816DE
+A1A41493FD6C4FE088F02379292015FA9CCAC621CEB98F8709AADBF331027B17
+B236BE24CD7AE1F02DBC0064D65C26C3C0929DA5713DD9C0FE39EDEDD24C4417
+D36FE80291FBDD3245918CA105AD4E52ACA28BA901ABBE8D416A53A412921112
+AEE6120650FC6DA122D1B82738BF5A127633BE6E2044F0104614AFD80315251D
+D086A8D2A91C87A545F61CB01CD289CFE86ADC1A5DE5B1DD7F2EDEFC81927F3B
+0DAA749D888E4FE9B6EA80B3E0A2F5E9721B6F81192E021E2705ECCB1F92AB50
+D51064B847A13AD0F32B1769102B0531276D47FC621D5660D4436DB33E028F9F
+EFEEB9953010AB8660E5C9F531E242D7873358F6E6B713478FC40CB42B9A7D06
+40D8558706F5A5628BE9842BEE345E759EC581ACEBFD70A6CD51D412A810C00B
+8ADA276E44994D72AE69AA71C61D1FAA8456710D603D30B155F6AABFB76DE963
+386AFEB54E41E450C65E6F0C0979855EB117AA0B50E8FB8C02F2973CB5A53C34
+D2E7ED301619A8325C4F085454D451BCCD02F46AC1129662EFFDFBC6B4600C37
+A51490A3619DE5ECA9003AD60D601154F03B7053A8CA9FF2134C5F2175DE2120
+76226AB000F940193F4D0B17EBDFD9247B85FE823DE740CCBA6D0CEF119CE48A
+44AD0A5EE0760573119CD4EF9FB0C6C81C6826A24B88B3E3D878091FBD73B117
+0F8A875A96C13E2F328C28A482C250DC5871C5232F3AC55CA4F231C71DF26715
+0585A2F42DEE145A6987ED34593DD1A62C731D15BE51CCD339D52845AD9896BF
+90DBE789D5AE81199735293C113E5BC6BCCBCE4D9A721EC3E4DA08ACF5A4819C
+986402BFCC14DCBC35FBC26252B9BD83BCDB7AFA4075DC58E1CCB295F542F303
+FB0A8F54063D40E435DA18E845DB2030D62BCEBAFBB972608132584E6D484E06
+1FD48230B808A8C67AF8AEEC2C48822C588437DB547A734A7169FDA7A3B347D8
+B59BF7447DA941F25E502F0C3FEBF9D1132DE2FE4093425CC3CE4515D00CB74E
+85AE8C677A13E7A54CC8073C841E5C8F32B4B967EF7694054582447BDCE42E74
+9B07C2140E92CEC205C25B2625F070461422FA1077941A1ED5F1CF6C218CEBB5
+AE70ECA87102BE081C33626F0678F82485CB1DEA62D26C89654FCF294BAFB0A7
+4DC08F22F7993016648570008BE8DB1EFD7ECB6A3147B3A23EDDBC413039004E
+7B3ED15CCCC90A4771467EFE51E795F464FF11EAB2B813118ACA0FED6EFA734F
+2532D136E26F42623A52A863BA0CFA773109F261A97EB35DBDA81768BD5F13C7
+2668C6DAF749BE6564A1F81947F6D224A5A9D792AE5B783F95AB372F71305CFC
+29F5A86D98432C0ADFA5E448EB06D022053BCD2D95E7611C2D321E0E53FF9C5C
+670EFE6732E74ED7DAA70D1F18AC98D8D975E8F82B3903A16CEA2CF34224E30D
+65D0E7E05A991E5C98B8554F8E02C7C85EADC34E9C879B00570862CB7AD01F85
+F6107E0A3013F98A90E972FBD3561659583B08455577D12F25F5E74EE2474C94
+A69EC94EBBCCB05FB90FD00CC773826A7EE5FC7D252AB1748847E38C8F50631B
+42E0FEDCD88D4C47E7F91B74EA3AD2E26B57E6674C78EB74B6178B20B27FFCC1
+0594A99352D7115AF251222F772D66892BE04E44FA40EDFAAB219628CF4D5B83
+746EEED9CF0F84A19EBF3D3DFD8F33BAE2835C1E6E57983B5D9B3FB0AD120B7B
+A8DB2C3648B676F02D98ABF893569C55D5102E772A97947F6D85464AF35BF392
+1F0B31A8D4AAAD549FEB9409B8EA47605D1CBD9D50934D6E14D282AF3727CA58
+CC4B26B63D41755E802E798A1F2153FC12585BE8BDBAB3991AD188CA10DA3F55
+F9056640A1F31D0242A015938DA000ADDFAC774FA6B5010D4647E13682290E2E
+48CDED102CD6A4993C9858F0C7E3842F1C3FBA14E431D068BAB68258C10DE1DF
+682EBB96525AA82E20EA1E4E124DD7630E3553EFFE0F03C3763A776C5D64318B
+2BBF007C0029ACC45615D3B4E77CEB40688EC755F2A1606CDFE4ED8B1B5D4515
+6D9582137DF6358A8208CE99B191999792310E3E9138DCBA4E726700E4D0C4EF
+016EBB22A37C4213BED2822EDC5D5F54C40EB2D22A92E40E63D827FCC8A24CF7
+A802576CD9CF3795892FD077CC77DB908564E4944CD852A3C41466E0683F6437
+BF3CB99189CAF2F3D7A293C5349F494200A88F74FC900122A5E6DE4157BB22A5
+2041988C2E1FFA890A4143AAA8BBD5EEEE9157CE5CAD36C9A1B929576C41094B
+1F4BDF445A6FE42CA871679B1385BA5088BFF264500DB66A1AEE0BF19810E27F
+327D44DD4317C307C811C38864698A0F0F93F9DDE1BA1B7B00D469645A8E353B
+9307B242284689AEE0675E9C6CE7ED473ACB90EBAEE98BE4E336CC926D952D74
+BA108E306C78B1A91D07F7ED434F37B86AE93C52081C696B4BF20053B340BB3D
+961C387DEFF21597F306C4B741A96D98DB7E7B8D835889C6581688EEB62F6E3C
+163BE8E23A7EF73B87D41CB4FE29BC6D23EAF95A258B8FF77B832EBBCD1B4645
+2FF147D8B3EAA3F930231FE68C357114E9B7433B34CC96AAD26540792628B506
+452359AD152CAC44BEFD9F9660DE8FEC6D6FB19E8BD650BFB237E9501AC91ED8
+F6EF73EE75E5BCACB151AF904AD4D476523E7504F0291AB8DDD14437C79E6B4D
+DBF914075E3568A4755A04CA0C42E50665D8ABA4D83273260D3020063D02AE1D
+8FC05995D51B8C9A90DD26BB3C05A6EE022E69F2E59362C07D09CF5E337E94C3
+6672053AAECBFE391F148C575A8C4BDC3EA5E5EC498D8B8C31733E0DF0638D69
+4A5BC67021F8B3B32199C6A36B021ED18B113D6E1DEE67D7C9CA6336ABBD9E22
+93C79BEDEAF3ED5BBDF5083A19705A33848918F66916F8937AE3E2B76A160487
+F6CBDEA233B128EFA70896AB27EAEEE73AB7BAB3AB9F856E924D34DB474FFE9E
+FED841710AE8A00345D7DEA9D92D4423550B37F6D3855F22DA2D8DF65A99E569
+B058C4B4BB0413B844DFFDFD665385374781CB3B9AF1833591C22D4FC7B71BE0
+329E06E9610DB8BDCDC0A319EB45571B2CA8C1E7FE7EB46410AF9BAEC3867949
+264F207EDC23D35E402E1EBD41B8FEA39BAF4A2DCFFDD6DD7B0F10BA352D91D8
+07E4A7FADCB8D98F59A08AE999157809B208DF0FA06D47DC568DF681FF72AAE1
+7B37FC433C7AEEC73AF11AD7EAC745BB7D6691B0920B2B78CADA825E0BC5D030
+ACDBC0E9E5A37B34D796FA5A2DAEE16C7F467787D292BA93A5FF4DE374BFBBED
+DA7E28361FE2071F6D64FDA8F4F97097ACA617A3B1C0C2ECF71DDAE8478CCE80
+D97ADBACA25E95A43084465EB30234C653F7266BBE0EA83CE96906D8C5D03F7F
+8FDD490D7FE1D84E6BE16F9E10AC20709FCA8AACC1B8A8A8A566EB46EC51BAB1
+3BF501E4B079468F08130FF0BF3D2B786F71543C16B7BB173B8D1329A2C65A69
+C5ED57B225E7774F694B44D1ECADE5CF4A53B2315504DB62C2F8E2ED5321B19A
+494103966108C3C60D5B246F8FCEE5007D4DD369C2E2CBC8076019CF8DEC8891
+63114D54F0C8B58363E7043FB422986FFB468FB3D978A0E326D6967CBDDA745C
+15348C665619F41AC20591C3A4610C4190100E753B621C08F9CC026BE5FE3654
+E37790CEBD7F51AB4F187C19641865234E54A5720D419544E7EDD0D718C5592E
+EAD0F2363EC919871D7FA3EF55B1F89C176926F360586A5C8C5C205F554BDB1A
+D25A28E7B2335616E6AF945A8F4D81BC0B998AE317B36246B8361F639E308272
+58FEC15DD63172C4BCE2C57D7711AA0109673D6AD7FB5935FF390A9BF9752B84
+54AA0A4D5726691D59620F66900EDCE15B7B332BE3E198C3562A351299D0E8D8
+F655F492587525A1FB2EA800268A800C8F7FDE34EB732312694F7180247ACCC2
+AEE06ECBB1972DD04B35B46E7564AA7B265DD4E1377B9E3198FC069C67400AE5
+C707F1A990985D93906B1FBF31ABF448C926AFE10242CD3C1B314598F98A899F
+33B9C031F4FD8ABF398E13035EF7A1A3C1370D98F60038A508E7D86C06C6AC19
+48982631E4DD41BE967BC5B1893A693E46860A9E0A3823A73B42F4219A80096A
+04E7A736E423B0DEBF67C4E5DC0A49F6AE294B152C16ABF8426D3845D886BF29
+D906492867AF7E0297D62911AFD504E1AAA7B9EFA2A81FE0C58C8A9A44D6BE0D
+05A751E818DE653489C7A71932AD98C0F0DE2619DFD1C690F29287F56E14E2D9
+2677C61BA8C6DFC1DB65B882C3B3D02964A9D835213F4E37EF48C61E45A3DA8D
+17E7C45ECD56CB63F1372D99817A40CA9705A02785F9173509680DEF0A484A21
+7DD6B88ACCFB9483E9F7B11F08B580B1C76C0D2B9337927694A23DB941C2EE08
+A6E8F874BEC2F5A0E18845791B8297752731F994FA78F6D82EC09FF8EF2FC7A4
+400DF95C31487CF65CDEBBD4BD866647510832BEA0B9D9661CFB8F513AD5954C
+0ABB6A70841E230C19DC4E1B2B4F8D1421BC5D54782C9A6AAD8AA6CEA14D0A5E
+0D66988D9CBA1B65D54C779BF5D79D5A9DAEC89F5551A50F35C316AF4667D96E
+1B7476A500E6BE15C3525A5D7EAF873813D2207E1E5166444F1BD0D52427EBF2
+445483FFF53E7B0ED56AD4741F99ED5F37E7141CBC1C23EC7F69A476C458F327
+EAB3A290A1BB29D1BCDC1D2FA2942208E102AC9818E22E9EC10F2F3AEEF94BD1
+399614049D1EDD94EDA791EBA2E8D5C25A7449941098425A7A911998D3F9F15D
+633C05A5355167A1196D0C4340AF63CC3D268CF99A692C94ADE405C646D19F0B
+0B1A8530615AFA7FC4AAB63663D90BC517A3392B9499103A4F2E189C57322879
+839C898DAF180FF50CB64A3D5172671A2B7F3B6F22307B1B10D233CD138AB41B
+945692D447F0E8228B337F45E3871A224466DB6BCDD2D9B857B2C359D39745C8
+C1836665BD49218EA80E4BDAF20B5B889D1578CF0E7EB6FAAEC228886F530BA4
+F2806B4851E34349A8588CADA96A3D70C51BBD3DC1CB0825C3B4E3C72286C053
+D10BDF61280F27AC3DEF4ADB164FE4CB2EBE6E1155C0A437315CC818237C8AF4
+FE4776C1306B158683FDC03838F66CB6A3618EA101BDBE131D8D77DEE97B10B1
+CFB45A1B9E13E4B02A6A556BB8B78769A410F13BB0C3BFFDD6F776E19CA0F03A
+217BCDB2EA78614CB68F8B8141F38FF7BE62D28458B5FB08734676B36DD03A70
+A1843999E4AE5384029901548D01045972AA77AD5214FB345A7F47C4A7480A58
+BBDAD39FDE66FB7B2C0EF82AC9A814D3A1298684923374EC5E92F8B52B1726E8
+EEB56AF8DEAFBB31F4D1090401675DA4EB033C6905C784A0205D94F0A305F1B4
+3255F47774576908F0C3BED7D3438327E24EC145BF5BCFABDBFCA47D40B77029
+36431000A253860094BFD836DCF19E6BFB5FF75508CBF65FEA900382745FC2AE
+EF968CCE1C6032205871B023892F451474E5379DFD5F885E428FABEC1DEFCB4D
+2DB98F261D3C039591905768B03BCF8588618F386C8B75F2C2B1CFEB5ACB821C
+23474D93C05C07B8D88B88D0430BF19BF699C9D649C1ABA7A7B4FDB7B8E70A4C
+8394B27AB99AB406E334AFE0050AC566D7695FDBBF508E93E7D22121EBA505B0
+F1AE5FA3B8F32E1BA971585EFC7A2CE5513CE410748439522542F90B380AB0AD
+9F1527055B7E2A559E1D3735128D02B96EA028FD5DA8727E33CE3822A44301B6
+BBABDA3192C650FCD7D1F89142A5D47544C19458F86412D6DCFA1BABF3CF4A80
+AF980F44F7AB893A9D2197BAE883BB672E63C3C00CCA363F5C45CE6BC30BEC6C
+8BCA685F08F46FEE281A42C171FFF3C6A1AC5E551C659C6808E76FE3B7178792
+1F94B67E7E100DA039040206D53CB9366F100A637FC14350869EB5D2AEC8DBBC
+E24FE1547A3C7D3CC0E8A48EDEFC323D31C026792AD179215E7FFA45F18D9585
+6859EF48E7F6A90A693FF66A3CC8DB1C13A75E722B3CEF084079D8E423ED67D8
+077EC4FD608EDC7FBB8121E59BD2B2304F54D6540DC186CAB44E68F342836E8B
+559AEB63C74E0DCB9A1891F1D3628F5B34AF42617385F3CD3B28B585C21553FF
+A2E96A984B1043371A184D83AFA58B0600E291B50A97E114C507E56DF287386D
+B1FA3A1C3D62A89D690481412D3846D17D12224C971DFFAAD2F99244B3366EAD
+4E46C7A4B6551ABC34B99543E712AADE0AA1D56E8EF3439A5BBA78CFF308AEFE
+71C3292D3FAAB992A98480B3B553A7102156FC99CEFB5FA56EF0CF162145E5E1
+18D263A6598B436C0190DB08CEE27A69D4F5A7B3B9D740B7C51E5C9149FF2629
+BB8568FE356A82BD8B2E6905B03CF385AF23E961E9A6DAF1A7B2034A05608971
+E9D56EB8195F133BC99502765EE811A4DAB4025733606A888224AE875FAEB9AA
+3B2579585ECFAE0C90E1BFCA9727F7CBC87CF62D35C4AB3657235C3A46C38225
+79FE1424CE94C3A3D64F1FB8D3D673ADACA1DC48A0E0726753818924A4A186EA
+34B2CB2492D0B8A64516FDB920DC59E1AA8FFC403D852DC03ACEB1E33DCA32F0
+737CF57D4665843BD6AC9EBCA63C092035810CCF5ABB9262737F2C256A4EADEE
+B450387F9326EDD7B4242C0D981F8BF9D7CCCE6AD7BD77A96058E2B9B1CD0BF4
+C4697B977AD1422661E854176C6DA938D17CEE9F3A6121BE465803C51D56BFBD
+E8EC49553DDF8127F1FC35DB9C4F0AA3959FD17ED40E850DADAE2AC870E5AA53
+662019B26B3E6EBEF1387EA4A60510219B9D0995F8504945385704D6FB4E93F4
+1125F862CA15265C1FA66F440B8FB9E5B33433014EB2A517BAD771FA7DF8F23E
+89CD3E58F89DF19776DBC3E5673CF190B35CF68B5934C0EB37558FC14581FA56
+07CAF596E51991008C035194B7FA9F150E30B53A7B2117BFCE6932CB3929B2F6
+87232470568A90CBBDD9B77C77A7966AE1C84FD680681AEC09BAC06E39688AE5
+4DE2DB3CEE5F0B072865B5CFF15C835C9AF5737D9ED19C1501BCBBBE909F0EFA
+978CBAFE5A25D203D8E630B36740B22E854CED07D73DE75FD6C1C0C80417E0FA
+BB6BC4AAE6DACBE26F499B8B69B958DEFCB7BCE7ACC9F5E058098170F4FB9E54
+DE12711C4C3A03E0CA3C1EC7AFCF26747BADD5D594A901E31CD42DDFBC50655E
+D669003E1D6A34E98C1A37F3C2B05A0F4E331390D4BEB19372A91BA3894FB886
+5868375664253DA120D2C094492E7C0E14EFFF97A9825F549B5FD8B89FA4CB6A
+5FEA11B2E0293BA22D57FD4A0150902AA3729D81EF74D6AF88D6B2133CA24B68
+FEC7E3941B884067B53DAD429CB7ED9FB023A5F693D1FF1EED9A6FF32F20F947
+5A2FA756EDB6621DD7DF077220C96AEB910E49A2B4CCCF82A02DACB0C42E8263
+7F0E76DFF2F21CEF6628EADC5BB5648BF82DB67FC39B0D0244A0BC0B30A59B8F
+76A7594A3D2A38DC3E6BD9CD05354E6EBE00448D7A7B8A5C094AE8D756151870
+EE984259842C8D2B2AE14D8E3C1FB010DE3B6996499A2426A124DC57BA152304
+D2467D7F3BD9286F3EBD43AF7A51079FBD7770947FD252FA6264E78B48ACC9C5
+CAA45D69784D107686B57E3CC94690C09B47CAE7845398B2C480A183A771FF94
+39B68F3FC3DCEC7059DF57105EF23C92555131F6D1F5DD509E1B6AEB3A4DCEF3
+4F6E660AE7C859139A1414839CAD6380155F907BF0E607BF2710C8F3743A3E44
+558DD7B820D8B9634E9183D0EC8B93297E33C71F2EFAE552E2D8371398CA8729
+60C6FE5B314600A01053279AE003D4470756977366467B2C843E267BCC69AFCE
+5E5297ECB2D69BE6EA118D486F05CE63785E52956ACA64662A962C5148E96C61
+346B834C2401B2A61A002A9738C28120BA7BCFF64A84F85D2F23792555C345E4
+86A37AEDD3C06176AB27D3CDA4FA46EFB1897C5D8827AC392F28A592DC1C5143
+13BA138F0D8B27ABFEE428D062538FE6BA62D2BDEC73EC3B830825E12E69D1C4
+CBFC07C631BBB7AE9BC8F8BDB25DB7415C7B9D0502C734FBAB387E201D1CEEDB
+C5F72A9FF2328DAECFC97A3EA1A75E7C7CCF1B274A3829B9F71C3B1BEC03923C
+F6E1E5E32BB8CBE6E71A855F1A7FB01A6AD8959A4E7CA24AED8F8E8B50967EDF
+E32A69B846B22F7A39D36B8809005E70C6A148F861C9DD68986677F16FF78F10
+B479132D9D5A4DEA428B5F2F360DDFB20C99B653F0F5C2B44472F947FF0F981D
+DA1317377C9D2B686A583814170CF417ED89686E568B1585A8AC08A5B6137695
+B2518B04FA646222A16B167CFAA29A59C9ABEC521868DFF306DE1F11715F16FD
+79F34C80F3BF298AE6ED20352AE60DC029C41552AD946C6CF7CB95F9E8B8C4A1
+7107F9BB0C5C9347D4669F4BAC9DA73D798104C9116FC8E1D10FC2C01AF559AB
+4A139BE448BCBDF113943FCBA3781DC6C0FB26637AF91874924BB9568BE0D34C
+71CBE4CB7CEED092D787C77608D3B2EC8137780BEA416E72DDAB37227A75087E
+DD680558A48CB39B804C795E4CA1642149C488A97186CA640A209F1D4DFE0F8A
+AB95DF6289C9A8490D3AB5B7C2D9F869665C9E163A58F200C3C97983E8D52E0A
+7D7BA1DC68876C3DA365168C1674B44A9F6702CE1BC29C5239240AF0C98E88FB
+64ECD020A7063061468DC709BD3E1BCA4E93E3574CFC4511B3548B5B263ECB2B
+C11543731619C381177C9AC98DC17EF0F1EA4D1A657A58136D873EC2D6555B70
+1B62409E24897A3DB5132039914365D529B476CC5587B1773CEA7C6BED50BC79
+35A2D753876A555D29273A8387A0E7BF81374BDC9B68A4EEA07E3A3E68876AE3
+3443F3DECD2711DE89C23961B364E650317DFCABD116D9E5E7476D6168852B8E
+945A52C78FF81DA9CCF9308C08C11438653AF10D496C82E6FF8FACBC785EFF4D
+42D053AC59E4E2869CF0A44B71AD9422D3C10F47DCF39CA5F57BF5BECDC098C7
+D011468870269798486A67D03579A843222ACE77AD05B05546101DFE33B04237
+EF34690DC25DF3B937113E46C233599F73B00F1C01DFCDC08F2138602C09172A
+63B0229F92E494FBBC896EE5B16BC65C990307F74B506E1BFB8C22D3FC4BB714
+962E6F057604B73859CAF2E14FAD61F427364992092D8CCECE6D0E51676BAC7B
+DA24651A425A61E74040AED70EA59FABA7035514A0F8FDE6DFB1B43838565702
+17B9C8C8786D4C359FFF347DFE060A91FA81932E96C73FEC129D1C5024570262
+FF1C515171973F908B4FB47B13A5AF652072A270ECF4A00402AA0CB9DB91FFAC
+B54DBBDBF179BD3E3A9B67A3E714F7C2A423A61F3AEC621C1D7E31C0398E4F22
+FE8F979EBFD5B143C3FA34E11D5EB1688A8C482D3ED2099DE89BD08069678287
+8FFCDAC7C19706F2288F51DF332B96106C6B7600C0BE4F8C89D013CD7D779472
+EAF9261E10092901566EF875F29CE04D8C6D8ECB37A7096078BDF6DD5F25348F
+9E39DAC89EB8A3DF269E7A7178579E626380EDA7E5D330B2639731FCF802E2E9
+BFA9A87C1685656736F55EF3769FA1EAB28933073CB87621A6B8B9D3D2BC4A98
+61022BCE0E35EF358D903FC77F8930D2CA2D663557BE3B573EBB07E2140779B8
+9E526B45BD4896EDF8229A02DD4A48A0AEAF7CB14679238B301370C1ABB056F0
+C37D9CC91141B5E855363E0E51345F4FC983345AB2057F726F0677C7BF6ACB6C
+AEF80CC2EA9C976206FE0B4D84795ED3D5A4588D0C90E7ABEC97ABCA62A18F8E
+1814E2538564B4A07A82C6758BAE9E8D37DCF47EA9E8154B9299DF7A51EAC45D
+BC4A341307F1A49176F83486153168BAADB77B19D2B6BE161BEFD021722F44D7
+1740E3687921E12D64AAA3744F9457E83A0F7B0459E7E046E29182F0286F38D5
+C35449E6849AAE29E612601164437702FD0BF9BF2331612F3AADD906ED5E7F26
+539AC3A8F798F447076200C0290D58C14A617D9A072FDF46123F89F21F0EA20D
+71F222AF6AAB681CC9BC2CE9E1F37D489C73E8E628B0CE90389C1BF15FBB82CC
+432631F956C85AC52EE619CC864EC00F4E631597691DFF1905D1CC16C78749FE
+9F39FC04257224F8E8B41629AA9A71827D002361850AF30D1EDAFC58E323E361
+D3ADCC591BDEA4D2626A0AD6903C6814FE57E782ED040FBC2CE140AC36336CBB
+C17BE07B5CCC863940CF36853E0154113D625788877329B9C4739F481E8CA942
+27B2DE3588F60EA297BDFA0F3EA34E275455988892F060C98F91758EA4E0B0D1
+7170E0C4FC9E9781A6875512E97E81B7373A9E352BAD9EB00004CBC4763871BD
+BD54D005815128532889B5ADC362B1B64657910FE5FA3DA3A8DCB70BF46C5598
+B1D844B4EAF1AAEC9BB44D37C48872A9307BD5A5FAA4A4DFF81CE7D2952B9676
+6126C65726EA85CF7F0AFADBE9EB077441F9A590F684AB98F22ACD1ABCB1B2BA
+8B659E7716DD06767E04AF78FFD888F6BEBF6D950A42CB9195E69F18C9607C70
+71CCD52A86C7A08A586B816A9F16F69941A08ECB1AE3CD0CD58F6F5AB5D5A8B4
+165655F31B21C0EAC5BD295E419A6F3C925F969C2A605E9183F96BF17FD4CD07
+86E04E57D07565CDD7841835BADA8EC57AADA52666BE34F2736B7015C1637315
+A8B2CC14C4AC2C8509D32D5199FE6F293BE46A5C3F32A00BDFC2EF6F344527DA
+D36898DD9C5319A8617AB3E95814A87C301FD92EEAE2639CD4978DC8DC62F3A4
+E42C0821F9F9178C3EE632D3C4E798C24945CBAF94FCCE65046E1C233B9D4A15
+65ADD80B536709F0282414B62F5A142E08B52F3C21F014438B0FD1E36B9A7734
+A6D9CA034080481D75E317CFC24F723F9B801401DF362BD4C9DDBFA99C6BC828
+D03481F1EB9F767573CF5E7B3A22A2323EDE34AB5CDE29E05D610715C9723FB2
+25BBA2FA1D2D7CDDC230CB6C49E52F3054D5D0D11613CB8A3B5D229A41A20622
+C0D20AE3B443B2527EE54AB4DB3E1CDC89013D56AB754CA542F4F4C634A46751
+2629264596717A9FBF6D3781809A14E3970B65DCE2C2957451414108915A803D
+93292A2B802A02CEC1B34F3E455620AEC38A4F28CC09D835F42FC57741BA951E
+AE907E955DFABA52A9076F322B8F122351E85D75B99EDFF3D2D50059FBF2064F
+A86648300F3B78B9117ACC4B83F8AAEB1AE57A1F056BE2AAD247429B873D314A
+F4ABABB5EA4F9031F8CF29DBCCFAE1EB519D9C3572E4D2D88AC3E856F900D267
+D734164AFCB4FF518AEA409AD3EBA59AF40E53493536188BB496B9247ACBCB88
+529DF6DE1C453F1BBC597E43FF1B8DE2FAACBCD384C813336B5C11F56F368789
+ABEB6C7F5758F356C6ABA76F4E50463EB728315DB7F6C64A6C9C890F2AD3337F
+6FB7E3A64190D687003065D990A395F60505C5334CFCC4F05D7061288AF4B52D
+E3555C18F955D9C5FBEC3FD4F83C580E6D3576CC4E86F059D59F40152A454984
+8BF8A749E118855B6ED6BA9E66316EAB63309FC2C597F76F4981CD56BB180EC7
+1BEE4A8C9AFBCE06C7ED7BA126782D47474F91AAEF69C0D9EC460B44D3083ECF
+8D93D7F22005B41477145A3362A0E22A47B50E3CCEE3693B8259A795F645A9DF
+C7AB00FDC56372725AE9B280EFFEDBB1D082DFF316E125358052E8BBC8C8DA6B
+8DEFE3454245BB6E682F8DBEE76901EED818622974D66EFD951F003F6FB019E4
+9AEFE6DC73BA878DAAEDC7329E5ED9019A6482B802298F4F123A3DB13E508C7A
+38ACB631516936D5373AB9518D138EABB19F460E45C725E5BE52907093AC519B
+3E495CF7078266468CCF9D9494A22A2382968051800791A0AC4AD6D5F6E48621
+D520B1F52F44BC2001587154A8340542CA42417EAA002CA3328AC878AC6C8238
+797C1345E2356FCD4FBE87CDC346EA0B830FF17B35C374F9D8A71451EA3A6159
+8CFD6A39AF6FD5BF14A39F1824CF7179C92FF7E2765F9CB624B1BEAE7110F34F
+B1E74C926352B57E7DAE80C98E60ADEA3F23564CB6DA53E4141092E9EF973CEF
+2915A6D0E5882CB9C2ADC2FA533B616A1874FC20A4D58A73AAE65CA4F4B6FAD0
+E1A970C748F18D80FB0120FD6B766DD79DF40C3BD8A215F6A5A701F16C9982DC
+C6E18342F5E1B2331133DE2500CCF86137564CFB52A759B7CE851424DFD802B0
+5EABAA0AF079E5F906CE3CB4B32D049586A09739B4AAAFEE980A8B608C62FB4C
+CED631546433847D6A103065F35190E73B45F78AC127AF9462CD4DC92B98E22F
+0FE0780F1D6057D8FA051D0D54385ECE63C32FCDD8BD2E82208122C8B8C25498
+92011D7F3A5383F18936E94F570BF307DCA1BF05277B87E366F30A79A2A7EEBE
+FD048294EE529625C7C10AA28694F3FE49D0B8790B39B1A7637E667CD5BB9D75
+9AF8067981238094150A78CCE08B225B427932DC47779922EEAAEFD137E82CFB
+4AA3476AE7AB02558ECD89D6AEAABCDB85F1FB4F4E318FFF3A9CAB4757EF24DA
+ADB33711E855A0E25582F10469F1B6C19089AF013C38F2624826A5730646
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+cleartomark
+{restore}if
+%%EndFont
+%%BeginFont: CMCSC10
+%!PS-AdobeFont-1.0: CMCSC10 003.002
+%%Title: CMCSC10
+%Version: 003.002
+%%CreationDate: Mon Jul 13 16:17:00 2009
+%%Creator: David M. Jones
+%Copyright: Copyright (c) 1997, 2009 American Mathematical Society
+%Copyright: (<http://www.ams.org>), with Reserved Font Name CMCSC10.
+% This Font Software is licensed under the SIL Open Font License, Version 1.1.
+% This license is in the accompanying file OFL.txt, and is also
+% available with a FAQ at: http://scripts.sil.org/OFL.
+%%EndComments
+FontDirectory/CMCSC10 known{/CMCSC10 findfont dup/UniqueID known{dup
+/UniqueID get 5087402 eq exch/FontType get 1 eq and}{pop false}ifelse
+{save true}{false}ifelse}{false}ifelse
+11 dict begin
+/FontType 1 def
+/FontMatrix [0.001 0 0 0.001 0 0 ]readonly def
+/FontName /CMCSC10 def
+/FontBBox {14 -250 1077 750 }readonly def
+/PaintType 0 def
+/FontInfo 10 dict dup begin
+/version (003.002) readonly def
+/Notice (Copyright \050c\051 1997, 2009 American Mathematical Society \050<http://www.ams.org>\051, with Reserved Font Name CMCSC10.) readonly def
+/FullName (CMCSC10) readonly def
+/FamilyName (Computer Modern) readonly def
+/Weight (Medium) readonly def
+/ItalicAngle 0 def
+/isFixedPitch false def
+/UnderlinePosition -100 def
+/UnderlineThickness 50 def
+/ascent 750 def
+end readonly def
+/Encoding 256 array
+0 1 255 {1 index exch /.notdef put} for
+dup 97 /a put
+dup 99 /c put
+dup 104 /h put
+dup 105 /i put
+dup 108 /l put
+dup 109 /m put
+dup 112 /p put
+dup 115 /s put
+dup 119 /w put
+readonly def
+currentdict end
+currentfile eexec
+D9D66F633B846AB284BCF8B0411B772DE5CE3C05EF98F858322DCEA45E0874C5
+45D25FE192539D9CDA4BAA46D9C431465E6ABF4E4271F89EDED7F37BE4B31FB4
+7934F62D1F46E8671F6290D6FFF601D4937BF71C22D60FB800A15796421E3AA7
+72C500501D8B10C0093F6467C553250F7C27B2C3D893772614A846374A85BC4E
+BEC0B0A89C4C161C3956ECE25274B962C854E535F418279FE26D8F83E38C5C89
+974E9A224B3CBEF90A9277AF10E0C7CAC8DC11C41DC18B814A7682E5F0248674
+11453BC81C443407AF41AF8A831A85A700CFC65E2181BB89566A9BDEC70EB4F2
+048A6EB631F05C014D372103E37FC3FA317EBC9973565A638403DA02E48B7D31
+CFF6C241DC5CDB470561002FF46437C06EF93BC99352DF04393C661FFFBF4BA2
+0723ABD9B3E9CA9E63BA57EFDBAE684655CBBDBA15ADAE43E1A2C98A3CF060A3
+D16AF8FE3A49B50A24C20EEED716E49AF6013D4D38CD9CC41A91C17E4D04D79D
+567E1EF49110AA9C34464E95D81A730ECEB2C9AF38FBA6B45E253288438B4CB3
+DC75B3A906D4357293BA41E59C35223A6C9CBD6FF5FC90C2D07CBB376C7320FF
+435A6251822BFCBB612CE630EDF826C37E95F541C21B93FCE127591D5E38165E
+2B58A34AAE37712BC58B63FFD70AB80F4F24612CFD2F1466BAAF3CA2BCB45148
+D0DEA0E9B8FBA4C4FF5B8B3CB02E461355051842BD1C94F41066B9B909DB83B1
+DCDCBEF7CD00A43E4C0B8191A29600CA197F0BA227FB8309BB539D2A620BAC70
+8A1AB2DFA51ADC9873B8E5582DCD3ED154E5D727D1665F99BD89883D69E6CC2F
+DB3A57AEB612171A88E22F038461DE03FC357F771675E34E90D4D19B4B36891C
+9D2333960400E97494F4FC4DBCE6A73C34A0409E433BBDC0AAAEBA7D3555066E
+1CFBB4515C8B573C9B9DD12ED5B6ECEBE35AD0DDEA9DB004FC6CB540B5117B49
+59CABE5FD74C6F5B6482B42C20B5FF0467D1DBD7CED2CC651CA57852B6FBB402
+A6764DB342889132C911CAA713A7F2FDD8A5E849345D6C81025E02F5B8B682BA
+90CC9B467FBC37362436EA6BF8EB62D784B01D5430147945BC09D1F49EE89F2E
+3E2B8E6D439248A56F82F2E03EA5C7A922F2813BE6538A3A423BEBC55B345AFB
+3B3C125306749E137C647D78028AE1FBF3E1A82C260132832A9668F454D39C41
+736717DED0A99F6B11F005F0E1D07FE84713AAB4C042FDC166AA146D7B5E9198
+E4F485BE5B135EA281FF1C1E616B5AAF02771F58C5840CB5A427FF9794F93E94
+17FD799C78AED1DC4810BCEF4C6C51D3C1504EA2C6F2B29805B7ECF97B5F637D
+FE92E168CB9029E90404CB54FB312FC7AA8A9F2F524C03E61F03B1E31D4F061E
+1677B39D5D30C9FD4673E1723F4AE3CCF38593AD6D7F61E9DF3C010E51F25085
+35D51105E1464BA146A78D7297D4D310AD91342A0BB942034A3EC0696B467367
+3E39D202D637E6B14D0EBCA6AD3CF22B07D4CA69C0FCBB6C93782B2F0DFC5AC1
+5D8A16CB5EDB671A0C1BA9D10F63CEAFCD0E06E42C730C8EF769CCFD57937245
+658F486036D37E8BDDE5670A212FB488A8753322A5B170C9662750AA958C0BBD
+8E97D8239D2A08B30416504DEEC4E506013E037C91785C674F8A6A44E23FEE6F
+CCC00CC5E4D355B0871FDB8ECD64F70EE32449BB5D6F84F8C8AA2D5B1A489BA9
+D7FF2DBAA8D0B84054E93D64D3E77850A3724824914A0F821EEC3D605DD851A7
+606936B8B9E24D6E932E16C448140FE94DD96C75AECB73850035ED9C04A1D93C
+64B21E7D4657E030483EC5C3554AEF8BE4D0FE5B9743B875340B09E01273DAE8
+F256C50A1A8F2E0417440A8BB0173F59E11523E1CEF2593A4AC5AF2167627B00
+C5EA97D125EB8A4BD4C372877ABF10F5B7B149D73787E0834BFB3084E9508DF7
+072DD71637019599252059738D4D6BC57A9358E4B14F6AF9C4B31DB8E25C29B3
+7A15F9953BD73ACDE5F0445A5DC406BB4635FAE51C1D8202AE31730E6F355317
+1DC197DB0B6177307C60E5D38F4487363EE051B2E609A52BC4D45B14B6558B6B
+5E1618748794B8340752CDBE7756C068975B559615D4CD5A97CE30BAA7B2B1A3
+2FEF2E055232B24FD8A21BECDE1B6A479A28EC80AE2CD16DB50B30B4A6CFCF06
+491C7CD5AC29FB964D4846415233947522676DEABDA0D9535F8507D33693930C
+B4E4240A02B0CE7EA288516B8A6EF908D7F8BAF9012D052C6AC96D9F8F6ADB07
+8984F3559C5E7E3022A957982155FC9CD599C74E18328D3AB46F9DD15D1C4C3F
+9B93ADB4489BA02CFCF57DE6270F3AD2F8597BE71786510EF08142F430EE5568
+4F9DDB792B7C46B6135E341DBBF062FBC50FABA80CD4A384157BAE57CBEA9781
+AA4416323265168AC097DE7E30A0D4750143A4FCE70A863A31876A8FA5327C3E
+36E89589E363AA2B1A6E8B09F5AEB8FFFD0396067173465B6503383DE517A6EA
+88C0FC08578398C2A721E5AEB29F4AC9BC990A50CD87BD35A11F9E81F68E7B85
+5E5B95A4F9A5D30379EF90D78E1E466DEF867BAEFC4F5ED2C762BFF099C1C2B3
+5E0DA1C2FB33BE1379413CDDB1EE6BB3A495331F72F2FAEB8152E8AD5FD334A8
+AAB0082A71D5574B618EA8D487B8FAF1B445F3395B1E21224F5492A0E06F5152
+7726835C900E2E52BE3B7B654183AEDEC68053DD0AF19EF6DBC10B6FC08EC7D0
+CC0E2C8FAF8C9A4C21FB7C34E074BBA4EE64226BEC8C928A784C1BEE35B72EC8
+E9295240B29DDC2539CD118BAC38DB3917D14CD33AB45FE47E827F2A2B193AFF
+53C5396C52CEA4F43F06AC2D08C74CC85D608CBA267175EC31311EE25AB48DD9
+FE811B411AE426C9FC0B6044D1EBF130231623F1566CEA4D1C06D8032FD9808A
+94479C842BC41B675CF6B90113BD681F8D43F51D5016D80EDC11D7640FB950D4
+E709A46184406ED90D0892A4CD9062938A8205697A200DBE1F38EB166EFEA0EC
+4FCB45CDAF82EA103DD6FDD03D146F3E42EDA6496064DB3F4FC1C5280C9E604B
+D5EBCA08BF2AAC90156C11EF68137DC76502EBF216F3AF3EE30DD2676D218428
+F41C655093F8B530FCA378B5769F262A6FDB4B66B83F18F050E77227E28D71F4
+5F4425CB8D51B3DAE872CD86D7804F870BC564A6DA1CA13EDB00D131CE4F6460
+7021661B99612629DCC20C85CF155EDC5111E015A77B0B82A8FC1EBB374B7EF2
+361419BA93B857D5C9944BB5B4AEDD86ABCC261542077FE09701C96370168579
+5F89D5AAA08D700E2643E88C2FB8D1D56D37AAA9744872E7C050B4CE046B47A7
+83F224FA9FD311C955EFBF173042C8FC66524135F579B1397828870D5C9DC71F
+8615FADE2A1CFAEA90F732B6C266E2F3048FC43EDA7A6B6D98E9DB793CF457B3
+F5877E7A055C92B0246FEA8C72B3B3456F93BF36E2651D32CD614C3AECC0B4BC
+F824C8363E593A6458D37408FC5B09883B280005DD24123E2D4B1B85F4113327
+EEDD9186A4AF2CD6439B46C5C168C125CA80F9EE9E68906620EE126CFBF26E15
+B269838A54224EDCFE2A373EB750D4829BFA410DE5F1541E428BB1E024AF496D
+F5F1C151F5A645C8622F2EF9088D57A2811868A8A8BFCDBFCE3ACB8463AC35B4
+8B6F44E1C1232805842F56FA468F81FF37D5D55B81CA56058558544C142EB3BE
+07CFB1F75DECB1E48C14D6AFDD455989AA6FFE8B8DC54F462B3C20E31D270BCE
+8E68E2B43A6625AC7E9792704FAAD6CE8BBE0B341DA7189EBB3E9D5375B27FD4
+12506D5BCA50AEDC6955E6C3C7BAA84BACAF7ABDF3A270C7734EC3C6EC22793B
+E67B0E288F99699D38DA8B79F2D21DD97945FBDDD132A8F0BF947950D3C0B4AA
+EB7B2C435AFE54489E1930610311D718AC610C21A644F34CB2D1959B3066F39B
+EADEAB5CFC6AF4D191D86B02402B00D1C5262707861C5308730579795EB53207
+A291A27A8B5C4DAE0A87A0C6A260026CA3CB620E1002E066A515D7990F3DEA29
+0FAC962E0B82B7A6C86B1EDC54007822BAECED673FAAEF88C8109777EB79A53F
+AF3C58546974F2F56E70E9B5CB59ACB5C27CB01895557B2D82134D7F02029B24
+3331621F38E68717F5CB68A8892D0B9C0A8ED4F8BB56E80505170D44C6856128
+2DED0254ADA4875CF56B4D97372AAE730D4C77A2940DC8C178274DF88A9EE037
+215C6FE7B9D481EE4DE809B124C0270782411ACCCF89906A8B143D0BA8B2CEDE
+E9B90465C3E57A4FD9AD2702323450256ABD09A1F8C26F08480317C08B75B720
+70A161C99715A35A94DD5C9647ED0F8A5337B774C8E54F9653AC859485A1FED5
+37B725A7E4BA58711CBCDA6054E34CBD8E9F9460179DA7DBD243D81A1531FDDE
+BF2BD425BD9DBE75EAA333B1F5793669A215549A774597E6ADA16D323FE5601A
+EDA41092730009A99BF5B5AAE281844A6BF3292D4D4EDE36B4FD8BCAEB6EB72F
+AC5D3CD53D0D621CA9EA8D254FDCB2B5161EE9E80B266563F669805A3A15271A
+0753983004A1ECC7FBADF62AFEA4DAB49A178C231759857DB910668BDB07CB3F
+7E8EC24901863088B3231EE3FA563924032C91CA9D68DB398F9BD9AC0C651EC8
+9051C9F709CD784F3FF5951DECD7E869ACC34B83AECDB011E6594347855EE7F5
+28811F744A4BD70D4E9077EA7EC19FFCF612689F12B34332857AE41F13E6D16A
+962DB9B6AAAC167B9FBDF0068EA13412F318384134B29F3F0C399F1973A3564E
+F9C3C39B5BDD4C98D81A6CB476E565860B50704BD65ABD630A5F1372F2D826F3
+3AD47C08B8AD3176A170C369EF3CEEB190134006D6135C5B8CCDBE1C11FFF1EC
+3F6D8C46E15C4F5EB9ED9F31A129594D542D40DC3815CD075A0DBB648D868AF5
+15A05C4BDB28BF23653A3AD96CF6AFC065DCCCB23D5D9A945F8CBB539DD3BFA8
+DB8F1FBF9B6F25B41EB4309995CA3D5D6ABD70CBB4A2F0C6364E5439AD1045FF
+72F6B45A30BD3A548CFAADDCC6C15D46F6D783D3E520215751DC98335A4ED512
+D7D19235CDF911CC69F3CF4365B678EBF3E87C456A4E77339C74930083445588
+462529C22A96A28C5CE87AFA0C981F26CAED5A1C8DBCDDA612624DBE0373F026
+465185A4D8C73CCD8D71EE97116F8F7D341B87FD78F9CCB9FBDA2A7799711607
+6BBA855AE9D5C505870DC85FDFAAA130A351D56AADBFBD6A7D52055E3200F8B7
+8AE9A00092B55DEA8BDE224B4BA7FD4A191CB1FFC4CB995FEE1AC2883AB69E1A
+AFFC09AB5B9AE311A030A5BA05E2213F9BBF016C8FA80689C069314D91274B20
+53FCC65C7D7B3A7504887525BFFA060304931672A078BCD7F269595686310E34
+E1ECA868899BC402D17EC36CE40D5041D7CEDA77F7764C9D98793F5334F574DF
+E93CB10A5E8ADAE95CE63D2339557091B4B4911A4987CF21B7F1DBADBC2DD605
+8EB72473C1F2EABCC44E0D0339EECB55DA74085606C3F89D57ACFBF5755A5395
+CA8D4BD47E4EE8D8B882D3AB31A1F0C62E74654C7E041E4FF2693A38A9796064
+46526B0A37E6B5BF8E48E80EDEF81E34DA8F6CC9025936A4D0E6D709D61B7B5C
+AB550397117F3F9D2F5A542A64DEA8E1178F7337124D6B56BA92F659AAD694D7
+391028731E01284BFEA635314A8DA8DF7A34EA3B6B2F8803BE6DCB423A9E8015
+55EBD90EBAE8A00298B3B6B1C02BA516AF528122C1F2B07EF69F5466C2C36643
+0D665D6561705509B7582D8301AF3C32E2F3B9433E3E04D62117C7E8A368BDE1
+0D4DAA1C415B2A6573116D2A169AFEF700A83F55D88813585E89C94C07802BA8
+3AE8F9BC3CDBFD9C2E35D062B1FD6E79E1EF104FC70B0AB09D12CA027F33F85A
+22F0ECBB4AD55FE8C616B82C46CE69A600E4F767BD7A9C5F9B37A3196B038384
+5DEF76A8884425FE598A63AEB19FA698C2AF7CAA4983CEC789268E22BA051EE0
+20A40633D22D8F707626ED30E8273EAAD1C065F0B2E1718B5AC853ABE09330C3
+B0082A71D557169BC1559B6D285A3499D41C4CCF1F74884EC3917EB9C574371E
+AFE8578DDCA459B8D22C0188A8D150437B05FB92022C95EB6FBCC954216B5FED
+CBC7C90B9A1F061376A9840FB64390A6BA99CFC8279A86A730C6DBFD14C53C4B
+7277D676BD42203677E9ABEEC8C97E13DAA626474513B06F8734DD784F2FBBB9
+B3B448B8E8221E380AB4A86D3A683B86A54129519D50DD4FE63B30954D805CED
+A9A5D9A39C58B65B08E1C19555E927C6DBF7FD07252B2B57F62B905D6B488201
+213D106A41033B26FFBAC2E616DA6ADA6D560BADF10E68872806CFD6F6E19D7B
+57CF1F7A030A7BAD374F16A977E0ECB8742D034ADAF9C247DA19C8AEA74EF6CE
+DAFD6B1DC562FD3B77E4D008BDE4D8C7FCA9895DA1AC9EAA01C32A0DA712B082
+9438E77230D38FC4153E1711417B918BA6CC03203A5FF082AF880F48518D8271
+C1121E4F1386B30A7F1BC6F10EA98443F8A65C867A109336B808BC9A8E2A75AC
+F950835AA84B56F59DA4C8A18859C3B68F6B6DE09A6675F639EA9107BDB67B0F
+54EBC564BC2D781B61C14363A54956BA78A2BB89C9F966C94EEFC29EE9F4E23E
+C0BF750144DC289F0DEE1F8A25BB52E54F656FAFEE4BD2DA57E1306BBE648051
+1D0CFD6A23A3DF082E3CF13197BF1B7FB22B2CD427BB78F455C9634DF989DC90
+7BB2AE247B1C99AB2062855B2948341B0F857ACD750B59E370A6698C6A1F5287
+72A4A9628A592E313956C242DF8277EDD2F1FDFB07CDC104275FFBF796D7518A
+DF49FF3CDEC3BDFF1D290C382F244DF18005ECDABF0C5C2C64EEC4383E2E07DC
+5C82587C071E59B46B7BEF31D268F39D9B12D534344FBA515E9DE8F166FAD1E2
+7D1558967AAAD3829D3F7EC6938D20E5379F414532976ABA844D97A5E9078901
+EAE4D0ED1F4C7EE7A2D80D891A5013D6409A38ACFA497F5A169EB7F9F4890DC4
+62FA6A89EA48267331F086992B9CA9305E16611E6AEE67DCDD588A25D37F45B1
+0DE75C802EE021E574B64B3969DE2E5061ED9364B646C38D4BBA86802CA6338A
+94E135D2256920EBFB1AA22D9E90C7D16853F0DF9F2D942748EE540E4FCE63C6
+5380D7AB4ADD6CB00FE8F7867E4862D8DB432F28331428CC350CDF7F447A65ED
+D7683ECA35A22ADD06E9FE6BAF060913AEEE7B2B8EE4798E437698CC9EB2428E
+74CE73F84D0D2292DE709D71FFF8901C3505370E6F1D4E28E6B7372492C65A88
+159371B1D60D77CEC93B272B6C5394EE1D2EF9969DB2838B8E128553879A1BA5
+2884B0A596E8FC3D1E648B7E26A4AC57DF09B9CE09B2F91D8CA618CA52AB3DBD
+D005A56A420366069B73146A6F58E88BA49671A1AB7C2070C3D42AA770285143
+40AE7D7868C0E1993506B07C086AD7D4F28CE2D15853FC5FBCBF9425D8012B9E
+DB6E1E5002517659C8DA69DCEACA94F368537668843D281FC11782F1C5F71977
+CA215349EE6F20565DE3D8D8212A40E1227A4B22965FA64A0B02C62BFDE97E6F
+C3C54FED4057EF9D258C42D7440C78C5E0CC58A40DD74ECED4152F70A93CE71A
+1B3A57C46F74A6D27BF98C97CCD31A8EA487260F224A3E40F52C65490AB4098A
+7B9EEB54A5A415C8C88568F7D9EFE74BBB785FA18AA27D9201F28BBC477A20A5
+D1307AA78EB8C7CAD409AB64B29E4115E45F5FADDCC80CA74B296C4265A40614
+37F2ACD8386AC0202D6FDB6711E8CB06442F209D781E940ADDD6D881D4F8E874
+357C533115923B90138FFE31D3577C6AAE60D768970FAAB682CD0DCA3E9A9A68
+6393E4B772691C1013ADFFC90C508D51B02D2518ADCC7E79F7DE5DF9D18B8435
+6129064DD1A3995E5A6F45D78287CC10A0EAFBF47223494C5EA934B1BC2F7C53
+686C5880303F9E3ADC8B100D441D944686E1FD811C646C6DD0224F6CF55FA87F
+D132EF50450879A25242A18683BD6D0266F8F333F3768D1952B0F32AA75106D8
+EC0AB703F287E847CB91FFB88CD9DA174B49171822BDE34621CF41EA772230A6
+3088F8D19CF2364A329162D39E166AC728B267758341630B00398D64538FCC4D
+E3E6CF103794C29AEF7F7E56970F6B1ABA87DC8D23E280EDC77556593D02DFF3
+154883CFE4EF04E07E7539A4750FA1CF1A994E99B656E728D140C83AE1F196AD
+9F049188A4184C84556C0476BE46DDA8ED86888DDA3065C5091D99EEEAC43092
+40B97AE327215024ACC0134CBE91FD761C26A48EDFF9028DA28222985FAED7B6
+A1CC891D07185666E34BEFBBF77C6C32B88FF3F1046E4EB2CD942E70746DDCDE
+002E74BA03A2B15E0529E61DCAC207A71F61C89D81B3C53C5B458EAC70ADFC54
+810310CB04E1A21FFBC5DE2429EC0989A3F2B6AE4290A005FBE736750956765D
+637B7CABF7F9A593D9FF6C322895835C0007A78771D1404671122F9CF898AB24
+1A5648EF8C40B27FD537612C4CBC6E584FBD058DBD4F0A00C63A79077826D3F1
+859589B221F7F82DBE392601B0A89142648EB40BCD943E382FC7758A10F978FF
+6DD9C3C1D284C5642C812DBF29A75A50BF63F788CBEA5883DC1544ABB49289EE
+2C99CB03C1BA72C7320904C7EC94736825A793D5629EABFCEFAB8D28B6F23858
+89A6967942A943FAB5E5B26B8567CC9606DE60329C6D890843F700FC1F60656A
+38164ED7976AD47A8E54940B9E340D61353AAD260C9273D45772AEC8E9F4F045
+9CC576D152757AF3B74DFB9B6962001EA9FF7F62C2E36F71D9B76BB99DA7631F
+774795B8CD1E08480153496DE5E08A1F4BEA681D0C1D6336A49A222B0537ABD9
+75A3A9D27D0B71B8913E9355F8E56C5FB3E14B9D5ACC4F87339FF9D9039ADEEC
+660B5CEF75E7C1772D4A3A4D0C8976A165766D9DBD0CA8132D17E5149AE716A9
+2E255277FB5294A96194C462C74AAB251A36941768EDB3EC6DC2C481393ABA6C
+8BC2F3AB0BF5A6E5619BE16DF43BB099C53FBC12888471BB015C15BC8A1A68FD
+819256EA97FC40C25015B3BD33673C5BA58E2B82A3AC078A05C98E6B7151A1F9
+775157C31D96285557B39435C3613CB19AA08614B2E93ACCA5523F194B74CB0F
+A4ACFDB0BA6053252D732F32BF7C921F8B776AA0F3349BFC6F63562A40AB966B
+CDF62ACFDD8C96F66CE0C24588EB7E31DE3FE22E12EBD943E5F6A8D6C9D8D85F
+84FC28F31C5144478C169940B66E19B94429C67D53E9B5A2FA4CBC377781980D
+182CB12BE40EE1AD37DA942425B50F519698215F20032C2A1A3E58C03790AEE6
+5D5FAB922317D143DB4BAE33202ECADA7FD818E10F1ED494347270F8310C9CA2
+C700E060562B0F66226781E14591E9423D3CD7B8BFECF6126B24DE4748C0BD5F
+348BA5C080F0E5122ED96B38B227E8197333CC40668C3323005EDFE890F54218
+C48A770CB831C607651FA5C18345997C6F1ECC8B7B9345C4C8E35C7393FAD69F
+850FD3B81044F78B4FA7F6F72E3B381DD5368DC453A2FA3FDAF38CFDBA37F80A
+79F14C538E3F448C40251A7330D7AF05A09E68BDDD13A0EC86187321A23E8741
+12C1910B12799A0A5E68EB262A88EC25FB76FF5F6AD01ACA11AC71B515EEA5FC
+A81C0B9A7BEB58ED1ECE48E73E77BE66EBAABD2F94061B22FD1CCC1A31757A4A
+BBBFA65EAF45943A8ADC41EC5D2F669C6E73A005B011C88F7610000D4594E3E1
+1209F54DD9225B8BC8D7459EFEC53F908F9221C4B34CF496258492E0383265DC
+B1B5C0835A09A3935F2D0F84522AB52CF53507AAA21BED26F71757EDAA427B31
+EE8655C7382109B2C7DBDD943EAEA5631BC8245195CD6B7F12740E694D0B27AC
+7BBF145950072A0C13C6E6540CD523B4E4F010521306F8B119690BE1493066F1
+556CDA3F9602A769ABCC5E9516BC56CC3C663920F6ED73F980DAABB261A194B2
+1BB818931BD4542158C91B11FE3B3D3DB176B670C78084185EAC0063D0F59AAD
+63FCBB16420B57370F5D3BF12CC88DA8396D75964C67F3EE4D176E0AF2808B52
+F123BB659DA8D9FC73F4709FF4F542D2F3497A9E40F51D65E69C0C4F73B8B786
+39682E6EC2A1A0B9726EEED2B8F4A1F3EC4B6CA69B9C1FD8FD5DBF2345E4021C
+005C8748F9A564ACA1F6D0D70653A566372276F1027C3B460984A4F0BF05A4A6
+339924C1C204102B1798DFC36400F32118F45DD16E454CAF177FFFE23B71C614
+8A9A3513F60B9E792B8BB1D98FD98CF95614F1530F2CBB98E142B90191BA6301
+ABB5AC71737CAADE6D4CCBA8DB07160E793F5A9FB3AE061C7A7FCCB6E7508A13
+03F6862BF136D0E4CD96111AB828BD4CA27766349675E442F777D987842A80CA
+8AA9FC5818C1E4EA2259EEB5585A11320A6FDD96CF72F806FDB2FE93C7EFB4F8
+FC92F81F42DDAF581CC453CD13D6C39C57C6177F65D4BAC3837B73660D0C86A6
+FCDB86C3E7F761BDCEE435622A2742E6FFF0A361ADFE9338AE485FC82D5D8A33
+B4370DFC6AF7C35F62CECF3088AB97A77D3E96968A4D3C6F8AD9C1EAF306A7CC
+9586712B8633BBE54AB83180D4F83A4FC071A71292E343B7CBC984E9D5B91BC7
+3DC7AC9F38275C798071F6E4C0A29284FD2C9A87F349B72CBD67F0EEBB3239D9
+0FD3B614ED03A1B6AABEF60393411ADDD8A4D100287DB34FA754CE4B3232DCD7
+BC6A86424041620064165C84AD5140D27D3E74B20815A6C6136A2FDFEF12DE4C
+AB9EE84468BEB9746A7AA7336A332A7BFD609BF702795098707195F96453B1F6
+CC7FD8379AB0A55DB64CF5EC9877133C6F7E6060DDDA48D84A1B87D3A4778E1A
+39A0CFBCA70391384391426AEF2D5B015C51232C5AB243F257563FA9BED33AB4
+6771DA10D3CCF0D31FB7C7C7C33C91A476F71A4929B6EEAD5218376B6795B97F
+77B966BD1BD860F8A6451B81C7DAB7E1041F4662F94FB64216E327D819A306F7
+6A0A0C0796C9B010E8B41E418A5BAD6D8EEB4F3BAAD6092532944DB2D613CF5C
+CB9E970C6BE40E912127F8C24590AD88E805E814F8523723F58EF4EF254CD4D0
+28FF271CD9EC5B59C0C1F3F49C3A49841B66DC178BBDCC8A89A57EEE03C382BA
+F7494200645396490CF5EEEA1FA49A0298BC52F81409FA08BDD7AA5635EDA9D1
+9F44E18383529E86B46EA66EE6B28B629610FEF6E6061BC102244BE8129BA08D
+C4FC2ED69C41D8EA611480299B989923046DCFF25A32D315FB829A1F1E4F544C
+196E7B63B1655B087E1D37F72283858FB5339E0A903412DD222EC1437C8BC877
+E982E20BE602895BFFD63A28D2AFBF47E3043595DE9C214F0D40ABC756892F10
+917053C5B452364D240EC60D9428FF29C996587094BA645F37E7F513B98E902A
+AB8E851F0A6680546AB05EA192665B5282BFDBCDB8F9AA60164EDC2A9E04874E
+AD54CBEE96D3F3D75A81E2C09DF73DC9516D67CE0CB51449BCE551559703356C
+D4BB5BD6
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+cleartomark
+{restore}if
+%%EndFont
+%%BeginFont: CMTI10
+%!PS-AdobeFont-1.0: CMTI10 003.002
+%%Title: CMTI10
+%Version: 003.002
+%%CreationDate: Mon Jul 13 16:17:00 2009
+%%Creator: David M. Jones
+%Copyright: Copyright (c) 1997, 2009 American Mathematical Society
+%Copyright: (<http://www.ams.org>), with Reserved Font Name CMTI10.
+% This Font Software is licensed under the SIL Open Font License, Version 1.1.
+% This license is in the accompanying file OFL.txt, and is also
+% available with a FAQ at: http://scripts.sil.org/OFL.
+%%EndComments
+FontDirectory/CMTI10 known{/CMTI10 findfont dup/UniqueID known{dup
+/UniqueID get 5000828 eq exch/FontType get 1 eq and}{pop false}ifelse
+{save true}{false}ifelse}{false}ifelse
+11 dict begin
+/FontType 1 def
+/FontMatrix [0.001 0 0 0.001 0 0 ]readonly def
+/FontName /CMTI10 def
+/FontBBox {-35 -250 1124 750 }readonly def
+/PaintType 0 def
+/FontInfo 9 dict dup begin
+/version (003.002) readonly def
+/Notice (Copyright \050c\051 1997, 2009 American Mathematical Society \050<http://www.ams.org>\051, with Reserved Font Name CMTI10.) readonly def
+/FullName (CMTI10) readonly def
+/FamilyName (Computer Modern) readonly def
+/Weight (Medium) readonly def
+/ItalicAngle -14.04 def
+/isFixedPitch false def
+/UnderlinePosition -100 def
+/UnderlineThickness 50 def
+end readonly def
+/Encoding 256 array
+0 1 255 {1 index exch /.notdef put} for
+dup 12 /fi put
+dup 45 /hyphen put
+dup 97 /a put
+dup 98 /b put
+dup 99 /c put
+dup 100 /d put
+dup 101 /e put
+dup 102 /f put
+dup 103 /g put
+dup 104 /h put
+dup 105 /i put
+dup 108 /l put
+dup 109 /m put
+dup 110 /n put
+dup 111 /o put
+dup 112 /p put
+dup 114 /r put
+dup 115 /s put
+dup 116 /t put
+dup 117 /u put
+dup 118 /v put
+dup 120 /x put
+dup 121 /y put
+dup 122 /z put
+readonly def
+currentdict end
+currentfile eexec
+D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7
+5182433CF9F333A38BD841C0D4E68BF9E012EB32A8FFB76B5816306B5EDF7C99
+8B3A16D9B4BC056662E32C7CD0123DFAEB734C7532E64BBFBF5A60336E646716
+EFB852C877F440D329172C71F1E5D59CE9473C26B8AEF7AD68EF0727B6EC2E0C
+02CE8D8B07183838330C0284BD419CBDAE42B141D3D4BE492473F240CEED931D
+46E9F999C5CB3235E2C6DAAA2C0169E1991BEAEA0D704BF49CEA3E98E8C2361A
+4B60D020D325E4C2450F3BCF59223103D20DB6943DE1B57C5FD29DA32D34C95E
+2AB2ADB3F60EEB0600C8ADE15A2380DE10AC5AAD585FBD13097B1A7E8E210D4A
+EE96785449E07F0C8EBC2EC5EFBFD0897DFDC15E5BFAC9584D8DE95C5AB288CD
+8AD8B9BEF0B8E5F887B3B0B331542FC8184DCCB753DB6ACEEF98B85756B988DF
+CAF1AE0DBE7D37D5F44A2E760AAE3A5197C27B15E32275A64946C3E4D0476FD2
+7FDE148C788DD2106F7C825E270588AC05B57E625AB17BDD02306F9E5FC851DC
+32A5A6EDC43C770A71419B2C0C8074EF3F222C8A2097CD81A91F333A521B3A09
+482A4FE1CB231CE344AD126AA284C3280AAC3AD162CF0EE241BFB4C8F20502FF
+118507F5D1B5FD898571015E73E5CF2281085072E00D401F6F59761EEC3E8381
+1F26F75DB66C504AB6BABA87D121B1E7040A07AA2FE01F80DBC246CC03C4B2DC
+C2A715980C52B7F96BC1A78FCC7F4F52EEED5F705E08FC1E5BBFCAD121FA88AA
+8EBE58172C162AF409DBB0728F14923ED02A65EA24E5D52B6AD07777455A70A4
+61833D3789C719BA92E901232599767E423D5AD9C807670BE0E7B5CFF8256A20
+C7BF7214FFE0342809570F5966A2C43E784F35015D9040BA34FEAB6A6F089504
+3A40A9E9D711A2721D3F4998371430FB3C94BFC619559B97D49627BB630F4B70
+9D0A8FE4E916235335C3962F3CFDB04C4A3CF714DB5E260F4E66FFF2F27CEF2A
+D4AA26BBCAED23B8BDC98F8F453BA27AD7758537561E766B82DC3032E92A9EB0
+125D98A22C5466AF069BF72A9BFA052A8628FEC6A6AD0B711DFFEDE3AA2D7CE8
+34EA487038EF50F953B8B4471CBA6FC3C53877EC1BC94582B1123EDF44B4056A
+30F49394BDE22CDAD7F01951C7013D26979277D18EFA594E8F4F2B5E615187D9
+39E842EC28461B9ABA52020A127D2CB9002A673A435B13C10602EEFDBBA6BD49
+9DDEAB9E68D655443A5C2492BA061C1391A51592BA8C353A6F6A0708E8860184
+2B5D031D2CAB87D618E9F6F7A0BF3F66B3FD5A25BB91F7F1F5F99CFF56EFF4FF
+0A35C55658001ED2E97B26C869292F6274D433A5443179DBB8EE987196306348
+3F9E87C6422AFFDD30080C9AC4EE7FE5E2DCBFEE4974331F4AAE479FD8806D4D
+9C2B85FC69EB0453AD827A1E767E5C484BDFBF5C8D6E2B3C96298B390F22D757
+802643A79D5E29CF3AEDF0E12CFBECA4663444FC87F2027571DBA9ECF688BF28
+FF0DDB3AEDBA0FB28447CB4B5D5205F40C1E7A525FD7373392EEFFD910AC82D0
+98E71660A1B3227C4A2592F3E853CA4CDF64DF19A52582E167234F4036FAAAB9
+5446BE102DE2BF43E82F0112C2A20F15A3F92C6571AC761665A905362C4F8BDF
+AC8705519C99862CD9C0D75113C4AB5FBB83C880E46B82715B5628890D9103AD
+A2329638B95D93C4DECDC5E6C588C9D5183EE6FC28FAF9825F02DCA567306D93
+5440987A81B51EE7291107A08F201C609FEF91A8F0587E8B13D4BAF74A5A6815
+DE9E4441F46AF8E1DDDFA2D611C889614040B144A5EC064DEE4638C04EAB2E37
+4CA8F50FB8C4D65BB296DCCCD39F1F554CFBED96670A91F515CA10EF896874BC
+8EF48C6447752C70FF5A06F928DB55586354076773BFF7E94C4C3A7A1C1F421B
+A9B4E3936EC26E0C19BBBFC90F021E877F54B62108F6DD1C7F6D5B8E64FC9362
+E173F01BF2904B7E5A08B3543611562C2714099DE7D4FA330DB148B560A9601F
+42A84452811CE213DCE782A0D7809CFD954D6BC1EBF2BA4D1B18F50FA8174C96
+3E0120E266AD5DDB40B3F6798AC28CDC5C3C4BC34583528F5B5DC8A222B80B59
+A3A93DC715D061EC6915E6E6E21A25425C25E8747C60F170D61047108826F96F
+7830E220C108B441B6EA3198E33C49BAD8D43086E49F5A2BC7958A1A8CD011C4
+49045193394696EC3DDD0BE084E8F2E9F0B9496F035C0DEC1CE11409DF566428
+D50043CFF5CDD1092F6E0807E660B68163BCA738E8D98FC6EE3F713164CD204C
+0BA84FFF4F33F47BC31750B448603D7ADB9AE92FA91AEBBBEC0DCD66980E6955
+CEB425ED07115B24E40F53B29B9D840842EAC691B4F591F866DF27556474B485
+1C6F53DD72499847109B16C7093984A6B8487D4F3870DD517945CD90E648C1BB
+8A6861E540FCF9D75B984B5009B5CC760CBE297042C240DD624111670B703388
+6FE6FC0E89C6B4C88F51DFF3913D0CC1FB4770C8CBEADD4B86393605C0B6C468
+83CA5594754411B6FC331EF56D7CD6D247FAE42E966583C29239A8F862348D29
+60B177984B6B957E733DB4D275015691D91443BBB13C2DA96097A29733CDB284
+42F89C85A7A743338C9DD3BBC4EE53F695E5163E6E1ABE5791ABF100B198B9B2
+1C21E2FA2FB4AFE7F9BB2D381260CDD3A2CC05BF513AA1E80ED69FA27BC5ED5A
+21445BF00BC2F997B356D94AF13736C6D3B0613EB6F4CD96A685FEB672661DCA
+206105EDC3CA07900676EB2FAB37F48D2E8207BDE1463894DA3C5B1488AC1EE9
+D39DAF691648048F5D7A384B8927F8DA2BE3602669F71D80686E427F395134E7
+7ADCC611BA91AD4B7A0237213C60CF2C905359C90795230344FC3C50A22BD44B
+55B2044792509F50F5C21F53D9F9E9F063ADBED3AB99E2613B23334FE8DF70B4
+6120F2EDF69F50BE793EE145B9FF9C73179DE640FC2ACEB5C6617F918CEEB762
+4CD81E665B2E544864D13230B058717B207D3CC5D6647D5343DB4D0356082392
+871EFFA896631A7E0D6477942B632074A9A4EF7B09D4701B1639BAAB4E03A40E
+9B54A7A4F845CD63F88831EBFA4FB847847CB98F3455CB5957F2E0A0F5623645
+DBB5C5564C7F8B117D6E27E65C0F3EA81AE67B4AE4B201E7C4FB0A8364FE53F5
+41A7CE8F834C2C4B322809B353A5E63BBA7BF3B7DC1A85EA700BD287C2BD3FC8
+2832B0BB4695FC937FF5EF06FCD87DCE6DE793C2B1EE10E6450352C17726155F
+220D550B1759E15AB2C1D5968E52C8080CD280E99D3CCC0E80C2EF8BBFD96001
+A226FEED7311EFB4B67F424B557A877379A15BCA54780F0CD2CCA00400B9B39D
+981C6B552AFD2506D1B23618FA9AE6D8143CD7198A8482CB416CCE62B992347F
+337D505A4078713BBD91E5535BD58EF0351EBDCD749CC24D4AD39F8CECD7D6C8
+139756680A4C03A58B3374CEC658D30160AE4863A3938A891BB59CBE02BB451B
+1BA4B2B6E68AB61DEB85F95E3C909B8B66E220B9F18280161C279F10F7093CDC
+100A53D542F071CC0A5AF834DC1D18738F5DD62A5573E884E1FFD22BD810828A
+1EA47F8218C15A2E97CBC609927DA3CC2B802EA4A0D7EB57627C135E3B065905
+F97597D818A2C5CC6F328AD25AD11FA50F1E4FE637980B7474D6F85A521892FB
+72989AABEBE02A2D0EFE88A6F67AC29F5D8DDFEDAAF465C439983C6B84389FF7
+A6434462BEB7B07DBE4BBA61ACD4A60C55B5C0AAE527DE381DFECA2E6BAFDC8D
+310364ECB42CAFF72BA93C067B2F02D1CA7C34AE7CDC46787A0E234C8BE8A928
+7A6F3DDE0338FAD532A9886E8E3525B85DD39364AB03EC4C0DD25DC179CC1989
+1BE232E387E857C78332D834679195E10F1E7B87B7966DA3B2238F53D1E13FE2
+8F55ED6A92A750C7250C9B91E29796621E7E9520373214D7DA81B2875A986D33
+80382AFF6DE1F829F048E57664D9C4ACE91E4684A51023943A4964AB5657D610
+3A5405EFD4CFD1EBA684243E15093C9667797BB47617B66054EE02C41FFEC45C
+C1BAE8AD56B00D323FCB1D2744F061FA16E161988741A319B1564E04BA210996
+4F9F02A3268CABE450D166A763F5284954564A1C86B76544C5F5ACDFE0D758DB
+865A1CFCF9FE8CD5F9C3B2998C56468FD52DF8EE60C6935A3D221EAEC7714E3B
+301371C7DDA0B03A2416238F2B47BAD3A2C5021C886DF51C695AF9C87A864B48
+3BB3FE0B355EED5454B59B25A0D8A1B8CBD356C24F64D9B55E16C30C011365C9
+1E0380753BA3EDC0868788D5F50B9353D0227BCEE1BE36998B2622C0759BD66B
+E4444250589F9CEDE766D8B940770CB6B89503E925B35C00CBEC2873D2DC4A29
+0823FB7A3717B69A7DEDBAAECC067949932728E89BEECAA91DE3AF9BF070B9C0
+30EEFA8C0A55C8388CAA2F0515915C98E67FA095BB98967D14B0DCAFA9622E4E
+2E0EBFC768D80585ACDF28D8A5C2B6EE2FE7AAF62FFB90F569F84A0903996DF0
+C1D5723366C436E4088F3E2BB9B47F9789052A71CF5C49908CDC1DDA194BFB89
+14D7E3D7D4D72A150FD6FFD8303E9DE5A97A71B808B8BDF2AE466F31BF5D7A4A
+44F81230BBE2B456A221E2F72A8B59F8FEA8D31F8A005A5BD93B9F49CFDC3DCC
+CE2B67090460F632271C7157BDC2F05BC2749FD562FC28682A616A52D1B67654
+DF78B7843A9EC26A7DE2EB168F874904C2915B97534B2D4D9F74A9573A771D34
+9F7BC855E8F794621BF6AD471BCC347E2DF5F620F5C209E33A4CBF1EA85AEA87
+4492A77342DD33EF615FF34037D660B713C908786D9022051B825226545827A3
+2AD1B05D654DB6E6D261B4E8AF0933AD1F0FCFC7201E1A7C1B4199F160C38676
+21ABA2DDF1CEB655B3EC3226E0B122976EEA998F7A5241F062E54AD1DFD6ED26
+47C99A439E0AE95415059179867CDD3F0FF751F3141309F40E00A6C7C28433E4
+F649BCD5DAA64177580E05C495EE7BCBCC5FBF104DAF360CC2711386655B26F9
+D349D887EEB32ADE595241560FD5924A1745A22E6A01DB9C285EF14596EBFF0F
+03F36EB2E0A7C3864F819EF7B0855121292D49482F046A55CD7271FE03F02EA5
+886864D9D8EC22A68C23089EAEFFF03DED6484D8C341861EF8B6FD3C5BDF5AC8
+352DA4E13A1E30D0CB71E090E9CFB9AB2CAFD0CA7C34AE7D8E3B2EB4666834BD
+9CCD1AC2108348AFEF6071796F4BB2FFA4A67ED917E76A109FA2DC2A30D744A0
+9AE653A748C1D18FB52595D84E87F1C1FB6B2F32667FE203262C66627AEFFED3
+92B23861E5EB238BB4EDCE09DAE1C65BAFC198CDD1B45D42CDF93E16BB82D35F
+821E9E49067E966AFAB2AB52928F8DD6359984071FC37AA652FB834A09E5BD93
+3AFAE161140E74C6531E413E8FBBFC42BFE8A464B71EB1D8CAA93B33D7BCC3B0
+47C7EEFCD3E9FCF26FF9441DD9BDE68D77AD7251C06BBB9A2103049E8827CAF0
+F26BEF33F656A690235DEEC623CC519AFA82DE2AE16FB99F780FD7D8290DA40B
+9B604AEF36B529FD184239E7D50561A07428D28E51B55546590A1AEAD4B7F2B1
+AB8C5B9022C1FA03E33F8F409B24911AB8BFCF6EF4A8E415263C789F89063E71
+C0910DC20347469380B7FC1EEB87D4CED7F4A361E58B61C91AFCABA35C03F978
+B9FB5257C31657EE48504C355CE893FE3C553274C641DBC4004F5D5B879CC5ED
+D3F21F867F6DF054127067DE86189F0B59A1B90FDABCDFEE61423609D888EEFD
+F4A1367129962110C651D9481CEDDB8C5C2576A59AED64E95F7ED042AEAE2F7E
+81AC0C408E593DC30DCAC334EDE9EE27D932B98F040DDCD195D6155607DD2038
+970EB78221A94C52BD4F0EAC65F1FC10E5DAA93C17266F351669CAE56F42B68C
+6D01E1EA03AE554D63CE76D800FDD9CFD89F80A241EAEFF7EDFA41794EA25CE7
+97BD5028464D2CD45B53834B4AEF8BF0B9E7C6ECDEACEC887E8790A47A93F668
+A9095E5FA1116A122C0E5B74E2226C654D3187C6CFD8807917820423DA3EC1DE
+AA020EEEF2280C44A15209EE2F3FC1776875308CEAD38571E7BF889F287E4594
+971A83605E0B4169D4A23EE790515223DF8724054EDAD905F57918FC0BC64F96
+514B4BF7DC9BA79E763C22C977FB6146B10D26FEA1BAA7BAF21312F78D1625A7
+8E242D743471DB5821408AB786E4A7EA9D35E30E85533C617689F95758FB2C7C
+392E759C299DCCE36689686DE0C4DCE32649493650BA194A6208C5EAB670B170
+3F2C70BF0EF0E3BE2FB0A79224FF4ECECD6BB3388C6D06867A0E5E3DB93C1B2F
+464C23E44D3132E7D4086E3B59B1D13F49EB4772DEDF8EDC4F603217233FB7BE
+C13C28648E9AA51D53F11FB896839F97AEDD8834BCA53CB0021AE91FD8E95E2E
+F8A094093AF556B9639F508A401542B06821FF9DE1A745FE9AC5CACD5E8E1053
+911442FC15CA5333751ABFE2C617D38FA1DC332BFEF44AE569DC631C93EC54D6
+261583A695F5A392867A57F59B741EFCD2DCFECBC55D1EA5F2317601C9DFE9ED
+D1EA466210FFA905A8F85BD58B98991BEA58DFD1CDED5C9B086D42CCE632DADA
+147941917B879139E016B0DDEB8446BA017FC8EE5A354533D667B0835F5D027D
+C2D580C16B80B3D05CC92C0465CAE077729F0A15B2DAFC89DCD349B3F81D0516
+C65526EB5C10E45A8A85D716EE35FB9AB201FD7C89ADE5AD925A174169DA20FB
+61E96C73A143DF964C20589EF24A0FCFE6195317F2FA0D2249C0D8E649C3D9AD
+FF13332EA2E4C9CD36D8443EC8F027B61CEF92C6A6B72DD4ACBACC16E429A9A3
+F5F29C1631360E32F8C1C93ACB22F810B86D2969A7480F486F62F8488BEEC74C
+2C1AF13BB92BC578E8CD30BEA6BC8CB68ED730F54CED0167605FA76AD7B7E88C
+7AE7688E598F91C471BD65A542E96D64B1EAF19FB4F1234308C48C2DC86E2193
+11ABDB4C6189C6F201627C693691A86DD07FF55C30FDB3F72381E09C6080FD7C
+9182762E5001E30F52A216E0B71E4D2D4E2F3B20F95DF3A11FDB2D2B5B5FAA66
+C46226D5E0C77066349770514E5675550FAC9394FB27CD2C2F974F1FD58C04A3
+1EF53A8AB3B2202CCA1CEFA66228E1480A0709436C44BD3319C40CF888AE4692
+5DBBB52B15CF3A518F627F672135A24D5DB9B2EBEF04C860AECF231EBB5A3BF5
+6DCCD5E72FE4B6DD29E896691868A7DE4120AD06AC573F5608B8449B38E71CA0
+EB5CDA3F942482EA7973661170F81DC88D54DD5B92323F46F833DFA757107E9E
+F62A47CC50FAA1B68ED535C3E0E1073532A05ED339C8D70B3B9864808ABACD23
+AA95E9FDA43D54C66A675FA074E0A5B8777D3C07850A09087F36852B5351F35D
+8BC4DDFCA35CF29CD5E3DE118A741FAC4DED36847F2E2C6CFE08669301722D94
+376F540982958074E7F1383C409652F6C99DA39FE90B38221E75BC1ECB93ABF6
+B00F410A0C5651DB418566AB350FDA1789AFD88286AF3BCB42B98386F7BC144B
+02DEB8940D20A6B3062F0C4244EABC50923390064F1D027A8BACC3DE45156E56
+4A942D1B87F1C4A76B0D4D6801AE792CCAE3009BF25368B31B6AD5476FBD3BFF
+9759EF463EF5E78E10B7BF64005B2ABE0E8813950A08A1808587A98E0021D0DD
+751AD515E8278F1A0759E85D8A084490BBB0F8206484AA36388B1013643D3198
+3509078847BDAE08E76FA5BF3E3A73C323CE093DCC148E3C02C2DE1E26C94D5A
+40EC8308ECB02FF7DD04EC1005A2A0DC74D4E587F10A3EF349E828F69FD38962
+2F0C74D5DAB3ED6CC9F97008ACCE74C086A503948DEF1AAF58FC8BEC703CD360
+D32098A56AC776B1BD08442052A2A4EF6C8798F7CDC102AF1A2009657254762A
+0793F79A39DCD6ADBAA5EC84A7ED6018BBE727E5D477893D84F157074B24C13E
+8D4881C7DF8ADC13EBA0D89745EF93B7616EC5355600BB0D2B630AABA3CF2946
+AFFD0B2B724EF0F28393F2034B2E69DA5061426805353EB4D80E20739BC4C510
+6C45275B8261DCBA10DE1D104B12F46ACD230977EE7D7D1D35D2814139E38C4B
+CA6937CCFA653349B1EF64A98457F7B4B5D8F2978F16ECCEF7054905863AA46E
+DD524CB33459220C71E9EFA7845A3A760A507B3D3ABC525B35930B613710A13D
+098832C58EBBC8B0CA6AD516E6385792C59220331D0922A1F6F838A8DE13C337
+900462F952EABBDC2EB1FBF94A66186C177501453CD3FE3582073DD86F04406B
+41B6AEB440DA475E13240445D46726A6D45185D56BAB8807CEC8A8F7CE1AD149
+7CE2E1BB5DE4E5B9592241DD136479A65905FD0062C91DFF7349874BFEA5D9EA
+2F610ADB9AE7757B2307A1BB9D6797D9F9C4844A59841C7C7682105E23A374BC
+A91885E7410F56F60C29AB8B417E2D6092F8BB70A2DD5DEDD4BA1077D7CC62FD
+EA43428C6F79C332342E15F75B08A1ED360B3511F823E75AD49BA7AE63B19238
+2AFE8FAC2715E2FDC895E95036D23127557837506A3B542B0E4651CE2B89C252
+31EE8ADC26E2C04E8E30A9CA12F066CE01953BE7867171FF6C7E834742C36C3B
+58E74E4B482CB85FD4D24DB03D753F260A585D552CDC9E1941446F2F5B45FF24
+2DA4932B973139F328E7E92828B900BFD398B6F41DAA0D6861C66AA7F5E3299C
+87A5925CE0E0F9E09AAE0792954A1F2C0AAA8288DEEFFE579E38A3CE8A943EB4
+55322A87C1634074EBEC25F724DC1BCC1BC10458CA6C4395659B0DB6B612C151
+557CC669D8DC37769E59A5AC6BF061C79FEE265DBB59520EB8FFEA273601D1E8
+2984B8AE31AE343F37D03E2BF97DC48AFE50BB6138C7B9F9B5E28672A37BD8F5
+8F8C98DC43DB22C6537028798198E2D3B0453ED72487267D653DD50F1BBBDA92
+833A987A95FC1F275B90B581B4BB62B6863A4CFAE37F715EDF3EA5A33679FEB6
+4847ABB4B3D170C275B9F1AC3156D731198DACE0B051674E85B758500AC9FBEE
+ECC75EBBD85F8D62AAA328FB09C6526F853077AEF7EFBFC2B6A29D6D508B1E19
+EAFA4C67EEE44045B9F15B9762B3DDF5CE5C18B23A5C2F73A1F6DF7F8679AB78
+843AA41FD2A7DC02B45B729EB76C66A89F5F76E5C4A0C0563B1EC5E75D72EE35
+A7F1FC89216B60D82F6F2B8DBE85E4FF4D63712C689E696F60B52AB622C2A4F9
+37C380775EDB72638D3F81F61D8D74C76D813DDFFF35ABD9A502F2BC7FF65754
+2A8660A5A53E0CDC2E8A95B6E33CA153EB711DC796D313C8183D707D3F0E3EE8
+BA65E0FCE3F1C07F3D93F77056688B5496AE35A6BA0B59619DE78640A8C3F7D9
+7DC5E94894E1E63A7D80600B945B1CCA50F1B85F57673C6CE09EFC4E229D4635
+48AB466118D273BAF7C1B52A067A88C00EBFA7FCB378F1575BC0145F294E6F7F
+8007602C6560476FA20BDB91831B22404DB1C4C167594B1216C25226D262FEC6
+F5D0DBAC4B8D743C669CFF2068CB9BCD2DAE8CD6EE1B33BBF7514C4941AFCDD6
+89B75F67339B25AB6E267BCCC5E2118879AACCECB5CC2865802BDB4D7581F5A0
+E81AB0F7AA143FDBE743E16D028E46BDA94AC2CBA77DBEFBFA32E462EBCDBDC5
+B86B63333A0C05C65D4B351948D03668F7A86A8A1388C4604675EA7384F3398E
+49404AFCE19832C975A668FBDC29D06268085022982F01A2DA1DA8B8DD5F4584
+75F98D7606BD6A45A403CC026A4BD1AFA63E1BC1034C1F617E14A1EE9543BF7E
+1ADB8019F7AFE089150EBFC613C414955363C43E0D82ACBB01251C070E7F1040
+602A58B2BF55094DF2BCD2689320899F987472681D0933A4BE78C2ED69D76E60
+2C437D4D3EA9C8D25588F1689224D92CDC65AC636325718AF7EA47946CFF07C2
+DC0FF0BE3642ABB0CC38BEB60E00B41D45DCEE44A71F11B99CC4CDE61DB03620
+2EFB584A4AB556A060A924FC67943CEFB59A42C9FEEEF40368D670AD0A97B2CA
+25DAD387DCC0E15D93ACA287892B57F5B93DEACADC3D7490FA0B555625DD74AC
+AA44FEFF11F36BDE0E2B1BDA5B90B874ECFEE099B33FC49D08807696374A4A48
+ACA503B3C565FE949A30F08F9A68541FC740549496AA70885C19FB751B46C797
+2BDAE3C044E0BBD0FFCFB0E6676B8A06318ECE80777A5FA5A137CC043FA0E17B
+8BA4E8C5DCD5854EE5775355100225D52D719BBE3AE2BBAEE2A9EBFC1E6DDB44
+30B4DC186F26DA75731DF0BB2232903645900B351A1A40EF09E80E4D602E3F3B
+91708A66B4DBCFCC2A6B3C3FEDA18C851EEDB91B757FB44909E3DF1BB06DDFE7
+30B193FB0D3D09F8B11E7B417B00555E2413A2572E67AA9B48C859A4FA50B834
+CFB8512BD5E9D13DD1132F6704EC4ECE2A132C3AE447A5F332E60928ADA72B63
+9846383F731E0F6D8B5458ED73FCB6EA6615E2379E6AB895CADB47F4595A502D
+45D99ED65A2909B95468CEF6DA0393F644D5CBFB34C7642F7B42A38ED34DAED1
+97C0DC8F2556AFD0956F35C26FD1413849912627AD230A6DF64A657B8EACA61C
+E01E0FC10E680D1213CBB756CD85D67343E6C89CA30981C6B31AC0BB3CF76D73
+3EA83F472E0FBAC18DA0968BB15942BB25984BCBF99592996F4B896AB6077E37
+432C9DACD78769827CF159E0BFD7E792E9A623D05DD7F2983F157A4E0D3C61C8
+44FD2EE38965EDFA7909CE809C8FAC231541015D692C17D65E4A5AADD889C7DB
+270829AC12FB746B45CB6E51A33757FD8DCEA2A2463A5385A7D26AAC611D52C1
+B34DDD9BAC5528425D14F1A1BC360DFDFE3BEB7F64B8953464D5E51C084F386D
+C01377E330E092399A1561466E4CBF250E6116263E851E69FEFB6F87E787428C
+AE45B72D5DAE6604373B6FEB56498D20C8F3DDA108F21777D6268C5A441F8CFD
+645224BF770D1EA396AD030D201BC97168457F9CDDC0EC5ABE50F6C0E1517FDD
+8CDD84F001AAC6C443170C8035C85FF1B22148F15D4F46F72F5175D2E7CE515F
+5C4B88AA069FB729544F21EB4854AFF8029D3BB68BA7656826053B8A40D2D3E2
+1CA91D675C22E04748053A4F58F16631EE73EAF3BE24887DDC7386D383019A1F
+4D4C0C7D200BB207B3D4C13CECB57148BECD8AE309672117294A9A7841AD59D9
+075D88423F4AE8B0ED77F03521577FA42CDB723BA19BA97E42C7E58EA96F8DAF
+17F3CB4B9D4CA90C0BF63D26093E26A976C675D7B47446C00ED4A912A0888878
+91B0BAB846D49AD12C8DA6A5528CA5A7F64B0C873985C4C7713D106FED4CD077
+897FB24D22971E97A051B6C33BFB4AC4D60812445BB0CD2D13C38A6B16ED355C
+070D45F9AC385466AC97F5F8F4CA31C645504859C1555BAB2AB12CA4801AB7E4
+024665E614946B1120A6AB6D4A5C71B8E0C23EE6004438B0A54B43464C5DF742
+CBBAF8BA3C8293BE5F5F8AD72F4B7EA5DC738A3015A673FD38F560DB292F8DEB
+171506D7F6EEAF8EBAAE8D8327B2AD3870A055BC10A3B4546F9EAE27691FA805
+1221AFF75332313A99B69CA24B4F153183391C8326956B5BFC9AB4EE79898350
+3DCC52C019CB014D5812041B2C22A334B937B141C2D92A07F60E2D6C2B16A519
+9D449A10C93CCC5F4245F718F487DBB70939635CA3D14857258432672AA71A05
+3721ED37E01F9029202738EF2E340B53DDEB6185D8F7BC1B2D8F487ED248EDA7
+444953E6C818C746376D9D69C5F3B39D196F9A83337028E6FAD500D57259881C
+E93C0BD11ED011695BD68082F889B07EEE69DDE7841921842C5E429ED3178FFD
+C215CACD00545E375162DFAAB668817AD027AFFFA47C496918F72A9A09325EBA
+9C70F712EF0B9CBF5271E60626E279740982A66347E7D6A91E2D8FA947C9D520
+5953BFAD40A5D324FE4416C41A6155D02269F9327268A547AF8638B6ED3728DE
+51E3996EB0E75D11BDECFBBCF3E626AB55005886617FEB04CD06BB9F901C5E11
+D03301BE551560682EA18959E468DB2C39A425378898DDEC3C1E5406DAD98D42
+75E7D0353DB8870CF699A2D0D9AFF118BCE99D4135CB3911D903BCB433340415
+06F350A251C345372A50611B9FB5849D76480726810CEB5DD2A2CE681B7FEF81
+124E3B7CA9EE75A9A7A7CA2051DF9E633486BD14D307EB9D70C89BB5FA5EB80F
+C48AD1D9E0A818B8CF241D560C814D2E570BC8E7460CB1DB9AADD206B9C7429D
+1A612B974D91901F3566C0154F776200221875059C86AF41AEA5500AAFB4487F
+D2053C4D7381FF8B0A8214F8E7C8F50CEC532870FD72E532ACD77DF523582F77
+1B3703919135C0CCA468BC4BF3D5CB39EF99B4CF53F087A73A019962CCB81C18
+C906B758DD94F218C426F498D142DAAD8859332A7BFB30996BEA18E4600CA81B
+6B8D40EFE9113EE072CE4CE2AA2B283B73264D129172F4F03BCFCC35CDD233D6
+D78079F2766DA52254D281B5E3FBE79064E0C26513AD2BBE9A6153DE080342B4
+59A4D9A5E8E98C7279C0B4EF5EA76951AC855D9DF7099FC7A86CA1F2BE378A04
+4EB47527E70997E7F8734C7573B0B3F5CBB8F4ABA956B3092EB3A21BEC2B157F
+A1C8BB36E8D990BE13EC81BF24B42A6AB1C192A9DF21164EB9EC3A4B7F3329B7
+8245A32E97A3DB30544AE9D532E7F08572216CC6D89CDA3599DFD66C12F3601B
+529E9DBDC32CFB0827C94DAE745DEA6ABDFCFB43EDD6AA2DE85B2A5F350AE150
+CC10B18634BF6D173FFA7483FCD1E820BF4AC090E32D74DA160781C32F9E55B8
+ED26E15F0F74CF9130BDAF8BC5B12A44175BACEC25A8873D9DA6DB0668A3D243
+85B7359AC1898B736A80334FF6B0EE9C2E036E2AB2665E9DA60A27F86A9FF515
+23F3746A33C500090B0AA8D5F49FF530E9B2BD52E1EB139DDEE37B3B666413ED
+5348C3823892BE726513C7B4E4CE26F876DEC35B086B5BDBB2E93435B0FBD1E3
+9B13C65E49F939FF9D963D769A957C8AF3B96D1AD6B40E168500CA6AA53BA667
+0F486A424162A5890F5E338C1131AFE8FE311DBA11A9C3D697C78708348A3F09
+231F3588FF31A10EBA854A7D3D64EC55B757096DDDE4CA579FF5F0647A405768
+A0D2E65CE18ADA68B2CB312EAB66052B00B836B6CB710F316B44B073A28A48A4
+E25E13AEC17ADE01811928BC5C3A332B2DB5C442C30AE5B61340C2A8387FA0EA
+B65A76FBFCE01EEBEE0CDC46F91C6A56896E3247F5A6CEA57B5A5E3871EE167A
+58C5BACFA50F0DCBBDA81B931991C53F08C1F976127FEAE6C71EF1A0F9BC19DD
+D049FD1F9A9D0A7C4C88F8FEAC1E447CF2A02102BDBEF646F295F6B74B789F5A
+C6056E59185152BBF5425178FCCC6424EA90399235814C5D2D14EA923DF0700E
+C28F5B4ED903D875C23EC485408761337192538EEB6B430493DEBD8A4E7F401A
+4CB1907BD0B5907EA59DBEB9656FDA90B1F852D454E395F1CF0EC34049DC6E98
+62B5EFA3FCE1590D248E260E8F515CE38E2344910E9D2956938B64DE8A532576
+731F248FF590E8240A86D11E5833C6EBA5885289FC1C899FF385F8A29A7269CC
+086EF6CD399D998540D4A4EEAFA4F14DE7CB0E311264A5A5527C67C935710CFD
+3E65227904C801999BF52AFF3FF151EDC1EF40698F0DA2DA36CA8E9714BD5302
+2F9D22D3870A4617F76FCE8FCAB92577238CC3D789F742641B8ABDECC13463F4
+E4DE9F765B6EBF7B118C0472AEE9331CBA74705138D48295A0DD8E230277AE83
+2FF3A695F5C0132AABB8DAE8394DE90701DC79C1D72DCB3B77CB7FFC28A8FB5A
+66A67EC3C7B5EE0B1C02AF9076F20CEC9472DAFE9D4B3F365E6470C706158272
+835ECE9D4874AFFC5AF9B47C686344B7D4B9165DF226682D49619F1E07CD20BC
+4C3E7E10996A9D8C277A95A8B156134AD8477DF27E5FFC41B3BD175772277FE5
+253FE5AD5908CC9CC54033E2AEA70CE58D918E9522E348C80ADE8123CF41EA3B
+7EEDEE6FCAA18519FF6629A9B96C878937B7E39D2F2213CA6345DF1EC9FAA972
+F055DCF2EF1560B4A9B5F58711B106D9A051876F72EFF2611CA56A788BE199FC
+4B295BC6089ECF01D76512564939CF76C36DBD7B8F39E47C29D66B88841F5CBA
+918F299A840DDA39635F059294A931271D76D80F54EE8ECC2810A04D9EF41838
+CF7C1CA2D8C1654EBE49CA6D31CC087B6321CE32FC115B0E586156745715B4CB
+163F73710C3681C9A314442656FAEFD47A3E023EC11F638155BFF715B0FE7062
+55B87D4CC2C4000860FC595E8F10E895F0249EB9133350A098A1E15AA90E3296
+9BA85C674BBE5D8B88A8440D01C97245AB0CA7B9639EDE9913E9ACF41E8F3403
+2779E8DE8B2D15AA7EBEFF90EBE27074340A4DA7A961C2524936CB42398E0CF2
+8FA05C68F72BFB308FADA106E8298C207108A1A7B6C738CFD59DAF7BF29010E7
+B6C9149EA5C887C3CC278DE307873FF4AA7240C747CC03DAAE0E80F33CF486D5
+56182BC67628B7A41117C402E7D486A45071135A7EB7B19C4C3E345D6A7BBC27
+8B9199DC277C458B672FA92897F95810C00DC9BD2B287E512C42635FE6D3DEBB
+8A629D91DF8CF22B33041322C7E8CC986A26C33B9A22784804C244E1B8F6DA34
+E744588F81B28CE3BD72BFFB1520028AF9B2BB1B4C48F856B7D61CC8D18468D4
+3FFEC7283DEC7BFED7F5F2D7BF4D001CD76787370FC7B81ACFB703C77101D972
+BAEC539741242A13294D1F59B770CAA1C70F88A3C71F149644213D1C53DD993E
+F11C6DE11898F21139CC1CE58B5D12E3943441BA46811A76A895E0C520881850
+F1ECC92C58090B86F5BB66F867811F2ADD036861B2055918FB7E87488D047A38
+5BB9365A3C15DDA5C96432381C10F6694F66CFBBFC67E6121AC3733669EB166B
+511A354676A1F10EBACB43DD91EAC834463124DFF7ACBDE30DB3E62B6CEB6DC0
+7E8E528CDB646FD21FD03CCD996D200765030431151D49F074B64D9EA9532D3E
+931E50AD0CB68C575E0443880D3778377DB64BDA43EE9B184E309DE0C33B1330
+2D92DF3EA47C8E6BC8AFD52F97AD72E9327217CD7195695C5A871813FA21E49F
+762269D363BF1294CA4088A76DE5EECFE3962C8D63641E552B2706A71FFA5E26
+7B0049A1472D79DE9A17A3153617F0A93786A8D19B544E3BF8B663781445FBC2
+F7831DB1219CCD1BF0F0D059A203450A587C699986E57B88A5E463BEE1A93B20
+9B2791F4CA8EA829D70090D0506DEA640C8F5210556C29B9478EFBFD0C79EB59
+A5B1476C38C1C4D04F140AB011960BBEF44E3FF6151277CECD762B76478E881F
+1B6E76726C3E605B879B9B21C9B30997CE97393571B8B18747773A4D136D1ABD
+7EFC9C03CEB52E6804449AA473D6F1D504A170389A6CDCAC31B39465438A3CA4
+BE9761294DB93832D9EC114038D5AADD7F4DE0AF78CA296549E80E60BC12355C
+3872CDDCD2D3CFF5066F9CBE387B710117798FE439AC84A2E1B16A007414BF66
+1D8A63936F29807C5D5F6CE412A0E585BE875AFEB9AEE59AF8EDDC6B06B255CE
+F02F1D4A87EEF29ECEDBEBEF3E01FA1F30320CFDFD48848264D4BD841F130D2C
+131F3B11F32F1443687DB377A7968B8EC9915BA35EBBC24DA38D1351CC29AB3D
+CD8289DF52E9AA2BF7AE832E1DA508CD595996FA1517FDAF000094DC211CB2CB
+946957B9C8C9B7788AA847277F1B5D995E4DD6574DF0308425984909A1663AB3
+6232890EF816F1D5F648C653E4636150C6D588D6309548FDA32EC2C667CFA14A
+7F934224E5025D2227BA6ADD3426D1B8BF8E0E6DB853F699C0C90D9DDEB8C898
+3B119AF4414065A9934F0666D1371A234540C237C78CF36CDEDBA1ADA1421850
+A8BC3BB483C1B32ECE639348E69A3555C49D1516D28A781C7B7E5D9859CB0FC6
+C0DBA8C3AD0FFB8ACE5A2E3A75A30F1CA6AC956B4166022ADF4B6D98E28FA640
+10F96BC2EE7F5B63AB3D955F301B86F307E683C96ADABD51C68B3F93A846697C
+2E728C7EEC821483BB9D29E08772D7F05E1F3132A7EC48D4AA04B23933C7EA48
+26BCB1D04928C3B3601EA931F3AED13E8918E3E64338161F70C212EC8FBBA210
+75FEA6E0BC540C2A9366E6E1B887955814E85B190F60CCE23B8683116E98126D
+C19622C09986C770CD3E257E39A1B0D3035552240115B909D6DA2B829D7A8CD4
+E2DE0AFF542BDF1E4449139E9C6829BF1435B670062776079B0805DA7BBA0D0A
+E54C6D2B99C4ECC61768047784AD847DF32F09C442E34558BE6250FC4D038324
+F73B337BD3E9E4515DA12A0FAD93687A6D96510D772EB27C7561912960B91874
+3B54F2AEBC96FC2F9F26C460161E1D62064967D554CA38FCFDD9815B5E5F8196
+21718847CE3D7961D68D33D5AA495903433C5D84BCB4C149027FFE8663A68E4E
+A86BFFC4D0589D167BEAB33A0AC1681E6421AD830A1DAD188375F9C92F6DAA79
+467EEFDFB2BC96D7E19BA8E5D5A06A26BA43C3BE358763779DA3FF287425D407
+8EB6EB9C2DAD516EC52670D717361F5D9E6F3506C4F67794CC39BF43A9A1D2B9
+C3C7B2A7908050B4675077A4B2513156AA3B89BB60E653A33A7FFCB1F542EF1C
+5E136564C85878C8FF2220D81BF263862C47C417916BFD72562DC26F6FAE2F36
+1751D3E61A61F1C3B6B1397D0952A9AD75FC0BD56558EE5ED3C2A0DF63B64819
+3381DF1E80C17944CA6062585102342B2F84D9FE484C809CE2F885BF6D5BBA80
+5428DCF6FE7C4D70
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+cleartomark
+{restore}if
+%%EndFont
+%%BeginFont: CMBX12
+%!PS-AdobeFont-1.0: CMBX12 003.002
+%%Title: CMBX12
+%Version: 003.002
+%%CreationDate: Mon Jul 13 16:17:00 2009
+%%Creator: David M. Jones
+%Copyright: Copyright (c) 1997, 2009 American Mathematical Society
+%Copyright: (<http://www.ams.org>), with Reserved Font Name CMBX12.
+% This Font Software is licensed under the SIL Open Font License, Version 1.1.
+% This license is in the accompanying file OFL.txt, and is also
+% available with a FAQ at: http://scripts.sil.org/OFL.
+%%EndComments
+FontDirectory/CMBX12 known{/CMBX12 findfont dup/UniqueID known{dup
+/UniqueID get 5000769 eq exch/FontType get 1 eq and}{pop false}ifelse
+{save true}{false}ifelse}{false}ifelse
+11 dict begin
+/FontType 1 def
+/FontMatrix [0.001 0 0 0.001 0 0 ]readonly def
+/FontName /CMBX12 def
+/FontBBox {-53 -251 1139 750 }readonly def
+/PaintType 0 def
+/FontInfo 9 dict dup begin
+/version (003.002) readonly def
+/Notice (Copyright \050c\051 1997, 2009 American Mathematical Society \050<http://www.ams.org>\051, with Reserved Font Name CMBX12.) readonly def
+/FullName (CMBX12) readonly def
+/FamilyName (Computer Modern) readonly def
+/Weight (Bold) readonly def
+/ItalicAngle 0 def
+/isFixedPitch false def
+/UnderlinePosition -100 def
+/UnderlineThickness 50 def
+end readonly def
+/Encoding 256 array
+0 1 255 {1 index exch /.notdef put} for
+dup 11 /ff put
+dup 12 /fi put
+dup 36 /dollar put
+dup 39 /quoteright put
+dup 40 /parenleft put
+dup 44 /comma put
+dup 45 /hyphen put
+dup 46 /period put
+dup 47 /slash put
+dup 48 /zero put
+dup 49 /one put
+dup 50 /two put
+dup 51 /three put
+dup 52 /four put
+dup 53 /five put
+dup 54 /six put
+dup 55 /seven put
+dup 56 /eight put
+dup 57 /nine put
+dup 58 /colon put
+dup 65 /A put
+dup 66 /B put
+dup 67 /C put
+dup 68 /D put
+dup 69 /E put
+dup 70 /F put
+dup 71 /G put
+dup 72 /H put
+dup 73 /I put
+dup 74 /J put
+dup 75 /K put
+dup 76 /L put
+dup 77 /M put
+dup 78 /N put
+dup 79 /O put
+dup 80 /P put
+dup 81 /Q put
+dup 82 /R put
+dup 83 /S put
+dup 84 /T put
+dup 85 /U put
+dup 86 /V put
+dup 87 /W put
+dup 88 /X put
+dup 89 /Y put
+dup 91 /bracketleft put
+dup 94 /circumflex put
+dup 97 /a put
+dup 98 /b put
+dup 99 /c put
+dup 100 /d put
+dup 101 /e put
+dup 102 /f put
+dup 103 /g put
+dup 104 /h put
+dup 105 /i put
+dup 106 /j put
+dup 107 /k put
+dup 108 /l put
+dup 109 /m put
+dup 110 /n put
+dup 111 /o put
+dup 112 /p put
+dup 113 /q put
+dup 114 /r put
+dup 115 /s put
+dup 116 /t put
+dup 117 /u put
+dup 118 /v put
+dup 119 /w put
+dup 120 /x put
+dup 121 /y put
+dup 122 /z put
+readonly def
+currentdict end
+currentfile eexec
+D9D66F633B846AB284BCF8B0411B772DE5CE3DD325E55798292D7BD972BD75FA
+0E079529AF9C82DF72F64195C9C210DCE34528F540DA1FFD7BEBB9B40787BA93
+51BBFB7CFC5F9152D1E5BB0AD8D016C6CFA4EB41B3C51D091C2D5440E67CFD71
+7C56816B03B901BF4A25A07175380E50A213F877C44778B3C5AADBCC86D6E551
+E6AF364B0BFCAAD22D8D558C5C81A7D425A1629DD5182206742D1D082A12F078
+0FD4F5F6D3129FCFFF1F4A912B0A7DEC8D33A57B5AE0328EF9D57ADDAC543273
+C01924195A181D03F5054A93B71E5065F8D92FE23794D2D43A151FEE81296FBE
+0CF37DF6A338C826464BA5198991445EC4BE80971DB687336AE8F74B516E333D
+2D8AB74D362C559AAE6ACFAE49AEEF4F52E28C869222C1301D041E7A0BC1B608
+1BF728EF9E98F3A12EB2714E7F16B14E055FE1FA0EEFB058860ACADEDA9D0E4C
+42E3C6F1E4869471BFAA3760175F3FBD842755A9D7847EBF605F18293B42F557
+FBE2715002669091BB033E1AAD657532F34F7C66E4F04D63ABB07E6CB9D9AEAE
+78EDE8B79DD9BC87A1FF445EAA05B5572BB880E69F4DE1F82D7F0E9980AB0C18
+22C448B0B1722D3CC33C56FF287CECB80658B3AF5E7675BE82CEFF3DAD5942EE
+A03C955FF979E41E54BCFB5316A9AB8945C403A73180D0961416EC9C92F49811
+4B91BC4C788392994587517718521E416D469F69952149FF7F9224377EBA1065
+4A727BF806A112A7B45B0A1BA1D5A23683960575368D9EAC8C04753BF7465AF7
+95F25C258C63E4FDFFD0B412FD381946AA38C0B961652BCEC30322C47BF4755D
+9F91880688AF066E32FFB22E1A52DE741307AD3ED830D6BAA1D1F562919666DC
+5E8FD9862AC8600B0AE0BC7FC779252AAC57248744ACC8A8AAFA836BCF09B0DF
+9253DFBB1CB77EA8A59D42D1B18FF25E9AED72FA62FEC3F126F030F5D7DED9C3
+CF60FE890BA4A48E39E687BFFAEAB96AE542A6387F6624486037C8924002A511
+BEE5FBFD780AC1D4BEC3FBC47A930BAD0280D444259528B6C565DE11DE36BB65
+9BADC55C1EDA1A80458E98896D782DFB5C137897419602809F9BF8CA39F00C68
+EFB9E076FB324C2963F23CBFED28B9EF70EAA4E4B903225D1F199A7162AB239A
+D92D71C18B1B682D04C6A48926275BCB16D413B2A0E953E1257E0B12D8B717CE
+2EC84CFBC046A4338A69F454A469B12118E562B4F56C5FFB3CA5D357513E6FFE
+947A564B229C7FD873057D5C7CDF03E958294A1003B37D8DF565A70A00A3734B
+0138AE5277D383D10C2BD853EF806D3CCDC47739F0E374A3DF3B63638B949ED6
+4EC25869DC1C0B1F4DBDFFCC97382841D8F10F3635C792139A1EC462FDBA379C
+BE0990CA2E70FE73137AFBBF30CA54954D7E7377CC50BDD780DDD4C7FDC77AD2
+F3EB1169F14A0041F18160F43C24FAF556DB5D621709FBC544CE55424F7446D4
+6AC07A51C8CD5161AB0AD5084A96FB35D77F1CA155147DEF8D7A590EA6939514
+D4A226588295CE0007BA8A550895511C8D80BBE5CDFB8A50D249C3BDCA974415
+F5557914A9B805782F399E4078DDB6264F1A49A9A5BA45E284A5196E9828EBA8
+481D357B8D9E6ECA631A6204439FDFACE7D7E6A2392726107CB7D2517CD19A24
+FBE592C119626DB221BBB635B6EB84845C16A9585282E34958B961F4A543AF9D
+419B6A9105BF185FC767712D923437BE08A9C0EB92AB6792DBDC671029B6FCA6
+7F717FCE379C0F3B51C6CF042A762ED04898FBB4B0105C3C4ADDDC18C51BAA3B
+70A93666669547081D9246732CFF74C83EE90DA17F5B4F8BAF47FE4D81590988
+2858C9B96071341FA0A0D23BDD4947FC9BC2297913CFBD4FD6CA4303AB3179AE
+0203F1BD502065F90CE9BEA3B52DAFE4A29446082EA0E6B1D7AF1F31D0AD02CC
+9A7FACE2CA86E5FE0F6A425B28A5940ECA306891CECDB3CFC7A5BBC76B5D9E8A
+C754379ADE80B4D72CE493010317BF21A0CF4A0A55C1246218839DCA3F4D626D
+1F4161D38F54AD5142C1CEE95C61D8BB10FAD4B772F4955777AFDE8AE5A837C2
+A2BBB11D0BF5DA2E63D0B75ED421DBA9C789B281B01846B65DC572BA69591969
+21265DB722AE86BD8CAA3D887C975A617ACEDDFB7AAB341F47532AC0F354A530
+7662C089DA3939588774FFA16FC4A52555DED6D6F51DE718BF5F345C23C90198
+17B77CB8B5D53A5CE7A79F3E286B6A59F3F6178AC8BF15C0A15C1A8A95D03B60
+30EBE53DE328CE085CD9A1D49C69AA299C5B58B24334A546F6E274C1B534DC8F
+3289553F560C2F81E413ADB92FA0E7DD1C2F39D5FD268EBA97AB7335ECF28257
+96B4EADB7D0778706CB41C7E9C882760E7670936774A1088FFB2011115FDADB3
+B69EBD5108760762521C25C968C3E282DC3400001AC8FB1EA27FF643E3025950
+1D617BB8BB321281708E496277E11DD3AE0023DA9F25AD06B39C7CF527FED27B
+57397E88D3DF70EE4FCCEFC8A0927D6B05517E571B3E70ECC99F3CBA32CCD4DE
+B8BF22626B6C94FE65598A88AB90D238461EBD9A098DADEA4091AF1CDD7560EC
+8E1B9BC2321686E1759E6B8A270C8CB4A254F7368039602EAEAB86ED21CDED91
+8F2DB9889F46981C494C7EAF5E819B91C129F0740B8002B510014985E5791F59
+B16879CC6521D8E9F1C4C1890AC85A78022BE614BEFF318AB2616F0C3F02405E
+BB425D1555472A2642BA7686E431DC3FB8A1688B76660D9957C3FDE8D58109AC
+21B1234C9DDF3F0FAF93BCF7B2F88A001F23162E1A13E5E9118D51B485B70A91
+D0CBC39CF44413FD8686D9030782DAB58064F5B987E0402AF5B264B17BD31BD4
+FDF63951BECD73ACA6138854EF35B062D01F33073850D9C09A818828C581241F
+A625AB3638081DD0F00F946BE5450D38489CECEA4E66B4D85CC8AE0157E2AEE4
+A22A9313829F24D573101D84CC1784D1CED7DFAD5DD966601370C6CCBB723082
+A86BBAF0A5D867D0D2E3CA16E14E5109A29EF02649C47E12E88B3B397D65CACA
+DEB9940B92100744D686066F8250FF30E5F13D81428EE238A2E4E07ACE0F5C38
+7D79D4A336D0D26AF9C2B84088ED8ECDF94A1E3FADB45AFDAB46CAD6FF950B0F
+07AA2CDF82374DA76C56D29C80138841EB13F0D02ADD32F88B23E282ECC845F9
+BB9AAECE9CDC644AC2D49577A92307A83A99434F6493156DF25DBF0FCF2EC21E
+8C50A312C3D19E0609C0038554CF4FEF3ACEB7A833FD54B06EF0D617C2971C89
+E4C06075B09B84A4F78A82152B9A9C540B1D881313C2C74F20ED064A9606EC2C
+B56D7BB4797F1EEF4A9B13579CCF311FA4A4DFA62D80FDB7F535CC6526D1AAE5
+45C008EAF024B48C377522F74D939A475970533E645B1BFA81997549AFF26F67
+2AAE6C2EFA357DB3B525276EF330905688777057F4E4CBF584520A534A8587E5
+5A8360891E75A15205E8ADAC4A4E5A6E27D0C4A7D492216E4BC023AB027F37AF
+A8DC7579BA50204D5F45A51460C5BD8A5A7F87668CA6451137F2F59E117BBE28
+5C40820882A5546FA76F0CF49F8A6EC445F0647CC3227C400F56E7E9B84A6975
+E85E243CC1666DBAFF4E07EEAF3AF71BDACB30DAEA792F2B8504CAB071544F01
+5D66243D529C479D276FE22F7E275D9E7FA9C6EECA18716B2F213916E32C1D94
+6E32397B41AC6779543218E506569E3544803BBF9B404A983EBA62A494187B30
+8D3DFA4E1237A2E5E08224A60492C09ADAD8775B7CDB830520829BA164209ACB
+BCDEB2D574CEBFB7AE4BE72DF4EB1945FEF2458761AD8DCC0D378AEB7DA002C6
+9C14A665DAAA532B0ABA98D7BFB5A6151FF6703385AF7AE8FD315A492FCCDBCB
+B825707F9566B3B4943A3C61C3DEFDC31A843A2D67AB06891F3E110DD8C73D3B
+B5E4151B51D9F13905D7D94DB9ABBFCAF35F43B6EEE256B1A80ED6D1739D8D5E
+8C767F6F0E8704C5345D028A2A6DAFD9BB7AA048B8B895FE9423A7ACE858BADD
+595CB074A128DAFE08FDFFD6BDAC0114159A702FDCBF8013804B0CAEAD7AF38E
+FAF086A3248AD4FCA1401A85AE2F72E3E6956DC0996FE8ADB18F89B14A208A15
+13F81AF73D0DB72F78C4DA634ADE3C73756CAE6AF2E149C26316DFD93370BE1A
+FB4A79F77A67C07CB0A53C78367F21661D4AFE9E27328E077B522B50FD9AE2E3
+DA087BE481515B5DD7BF894A96A84A6C78874100505B7DDE1D22EFCE8D58B3AB
+313AB5495F72E2CA4E6AE22C0CB854302B9990372F1661D9F0A517F90686F248
+C5643008B3D29F7296E5C8FD4049886662EFDD4106E17C879F5D41CE84F87E89
+F6A3117C968B95A35940CC29C43E1E0DEF51C1E46B676301F40D59615C3F73DD
+DE37B72FF7105DB84227DA5241583272AB1C3CD97AE11C1EE98FFDB5E5F44844
+8FC41BEA5C54B26341AFF6830D9D0A5A2901B0653D8BD0746838194D240FF753
+E99750D3383373F453723D86BE97B571B8B84D8696089B5CFDD53E6C562A2197
+A8C4FB0CC690C27761A816B441029D3D306245052E0C41B53025D8CB7267CFE3
+C17FDFE348E765326F91AEB700CC49162DF748171214252CBC821493DD01AA20
+417D66DF47EBEFFF3E9BB2B0A2BE7D9B8C68BD570FC2EB0FA54CECC318F04C43
+19598BDE93F2F13DC7847354C99059AB20593EE51E94F9D4E9241869D605AAF4
+9D9B5FD88C3798A039A67993C5EC68B6326B132E647F67EACCA7F7AE7F718D85
+12666E90D7C73EF210E344964A38228B236679A2B18F5E081234CAA2458F8D83
+3F0CA308D19663CB12EB904076EF88E556407C33C9380A6A3D68A9EFE65387C1
+A1BCD2D26DFD2AC0881EC30E81C0A4E76C244A2BD822EE88C4A60B480D107E68
+90E419A1F512E865BA922A7830909BC2611A80931CB2E9344529586726614D94
+3AC5200FB9FF68AD9686506C5EFA8788C0AD0251AFE7F95E84683380CDB421C5
+B1A783B6D5F3A6BD1BC1C14B363DB01C87C0796DCDD5BECF41A1A9F43183CF6B
+82C2AE49F0BFDC5DEF7729F2E638EE6EA9E4D059EB9BB1B992AD8C82D501A550
+1BF73CBBFE740179B54E193E84A55DCD61B343C1852780FFB44248FC9426AC94
+AA2B3FE20FBA30F6C4D1E0FF3EDCDD8C0F57CCB50CDB0EFE2E04A8927E239C1D
+9B026C7929BB48461D4D695FFC766C8A0E545B1BCC2AA068D1865333108E7985
+2D93F9B00EA0A90939D0D3840D59B6CC0CE2C147B2E1A9A4F14270FE3ACF51D5
+99F7349106165AD627CBBB0ABA01ECC6D3A14C1DC1ED23A9DB9865BB4396C51A
+31ECD001EAC94B33C34E29C5611148EF3E55DD61813470B8F3CE32564C749414
+3C93C77EA5A3538A0B5AE3FC4DA32813B06772E0E48E25BB39F3F6FDCC077E86
+F86FA50E18FD19EB2F37311CE87F18F3BC85CE7FD71CA92D5C3264E34E04A2E5
+70C79D99F54D6C6D9D527AE45EBB48411221134587D2253E7C8ED7658EDCA34E
+5E768DD14E0200470F73C44D006CE8CB35DE1CA3EC10ADC668B0662A7774C891
+84EC95A31DD872F0728D9F65CA80940080E04630BE4DEC77A2C49E3913C39978
+BF145F8832AF2C4385EBCDB15F9D32C22CBA0CF950877717D6F1591D7C0B8047
+8C9BFCB16AF7124ED83137695F3D69228DB633053208C29E0ABA1B06A7FB3EE7
+5625CB44927E2DA6E038A6E62DEBDA2D96A03177982D8FA33BAAF4426E05F4B7
+9C1748B3FF7691F9888E7FF864A10B9DF761A41E6B5CFAD2BDD7E1C4924AC97B
+F4B352705316DD1A58637CC12D71C18A5CA691AB2AA8F171590EC24582B1123E
+94D4DC587D8F99E18A711776BF4013C96446BFECFEE4C809EA94B169088024DE
+0CBD20199A915AA406F0BD5F3D63D1467C49B4691AEBBB35ED6624F2D7BB74BC
+E80FD92B9FD04DD9C2BE9B6FD29EC7EC07FAB447511C61DD299C783BC09AE2A4
+7B3CBCA6A20C6631D06D0B2E2482A50612BB7C29B7E7D0A205EB0E8436702581
+596BC996ABD58CD8D5BAAE4B1478195CAFF98FE0141287296C4EFB8D2E7A8442
+F0A3AA9F9264329982532295A176BA1867EF732BBAC49AF485D9D0F7130F617E
+7F7DEEF935874D55A22240F8EDE4F247D5F73481373A392D40A8076BD91079E1
+1CE5998BA13D48D56B49A92B4A18430E316405D2E2E391B496A1934671FF1785
+AF42BA3B2D14B8E04014437FD194455C50289DFBA61B5C377BCBDADA48E82DEE
+4E70EF5E9DC03064907BCB8BE4D59DE069FB0C0CB140DA54708E630767313F9F
+744594AD8A499CFEF733E640A11FD74E46A749F9C7D18D49251BF85C6EB4668D
+67598C31A8F90922FEAEAD4B83B6E7184567DC798E4BA1C4C9B3461A478D63CA
+054F13B502DACB674EB49D6BB935E5EC82BF99FDA7D47C581AD7F940DF4FC6FA
+6C6D25D647033AC69505F0CAC58DE99087F365531A6283CB89CB644688963C3B
+8B2203A94294E58739EF23C7803630A1F9121D62BE1977DE2F41687C8CAF87FE
+CBD7AD3B98E0D95C8C6E1A7CCB0E09465AA874DC90A0F5DB2C5E7C130297FD39
+EFE63B0350B5139D09E6864D22C3F1150B29196E40EEF9723E71158B7ECFB8E4
+C426FEDCD439420B7F1C251FADA347C9A2C49738B5A17922E1EA93CA7B125B76
+57449EAA9C1D591CAD327D0E98EF2D44D614EE9ED49DD31ACAC0B956620B6BA5
+5BF6D08CA7541059D5ED2EF00AE2EE95488F5645BF6837D9241C0D3959B7580F
+C9ECB2BCF3E65C07D52EC9CFB21C11CD4C883E44C173214C900C44D2E1E43DD1
+CE8DFE3DA93C38B548BC4EC46FF91F30CFB97525E1FD4E77686433B20BABF8D2
+848C1CDF1BCF185CFD7A81D2D4BB826E837E2AF35CFC4F419F698DB0C43E9F9C
+B0FB628AC9A3CBE9B1FF4A067016E70333E78B32AB2D89C483834B31F5808FDB
+77492E099F1504DABCA5722C7860CDCEDB2DDEB512FFCC7D287F4945FD711F28
+87BC3D36173566B81FC2C1290C717A09697DAC6072408E20926D39270121CE58
+3EF97CE12EDD7F87F2C8CFE36C3C0400869C0D813B71C425343EE0CDF717BDD8
+409D5297D0F8F7FDEB0257C0A391F5635E0DB1116058942FF3E7C94D5F2873A7
+A3B0ADAFC3835AF2BE474E6741319BC6695FB37F59AEE388F81F6E66F910000B
+72E6BA7531B4378CEFEEDC79CCF4947BA1703823B5AB4F4AD73D9615C66C489D
+99D68E49C9BF765B7FC547BAB9640D51D5A7A2396507AB5A4DFF3D14F52422CD
+8FCFEAA06A56C6C7FFCD29C9A7A59DDD2A909A9363FE5F1E9629616D25ED38CB
+E754C059E4379318CC491C3B1A90128693AC53F80F8210FAEA7EE638902A7D3C
+82B95B3F5AE340EC1B648DBB9FB679D6E80B7F426D8671FE7136D97F51E2D2F3
+C9CE9183E4061CA40091A2A70DBB9ECBB19CE3F65ADD0FB346B54BAB182E2CD0
+EAF4C0F402C25573FB344EA771B297BEB615FCD0595172E84ED2A62FF8962634
+23C19076C2A9ECEED5135994EB397303A9619C76DC55E032DA83FBA441BD484A
+59F70A5110A8927F6239A14D4E223E189A5462E4A92EAEFFA4B961A2A32B320F
+C2B4E8C1821FA67A655B5042C15E4DE1FB3652B55078DB123573C4E986B19DB0
+1C5131F3DFAB271C30A5476B4A19D8FC922E31879C34BAED94C07A4841B8209C
+403369FB8E842610D1EB4662B6171A4465FD0E819964F62EC5B0ADC92F08CF90
+1DE0B410FFBAD16F6D355E8AD72CCF67961EDB6CDA82398021007C2D0462E893
+75EB0710AE4A6CDD15077C9DEFC5774EF4A657734D703CE42174259B58E5277E
+0DF26BF59AF8D1A3E7DC12E3C12AA4B67CF35B19962F6950C2020B698D971B35
+82FF84E72F72FBB0C54A112BADBAE6C4CAA358BDE6A705AB59332C3850CA3D25
+C7564499BC1319121CE0D93218210C68080AFF33420E3CB3A48BF9EB66BC07C8
+A79D8CD8E78C200FF7CFA3DAED0B9E87E6141C88B436D8FCBA50AC195FCBB9BC
+9512B95FE3A37FFAAB39850FCEBD4D50A243EA416E73F53B4B00F3B6EAE0CA06
+0693AFFEF215D00BFCAD02E45496D7C8F5E99EB9096FC4300D038C1AFD31EC4C
+5ACA6B72C1BE7204E37A4CBBCB1EC26AB87F2FF82DE20601025169A5FBD2D060
+62B5B2DBC288C79C33B596832AA18D730AD572C6EDFABCBD36DEA87C0F323C3D
+6E537AD3B43C6F3A905597570A8C6B0B4A5E08C08EAFF9731E745F2BA8ED0C0E
+1ADF7821CFCD4E38F3F4C243CAD31D9F8FC68B9043740852B4CCBDD37BF728E5
+648215961FA82A0C847ADCC5187331D0863A4573BE520C02CAE14AED4F06B3F1
+FB4A318AB54CD86DEC824707B29F858FD726A167F2333855C0575EAF4EBEA0B6
+754B1775F967140641FC06F82B191244186FF347A351FBD8FA62E8C978B21F6A
+E124929876488AFA97FAD262BE3D172E2F03F564F1325C9F1E050C83C12E0CE3
+C7F58270B5C40B46B3F592FB41FFB7F59EBD69B2F489441E398FEF7F84C85055
+531D95FD21629B0E509C2FCEE995D025BAD5D3F28CDBA5CD414405ACBD936C3F
+AA4CB2620D7426002161F983AE95E542EB8553AFF7E57B82E05FDD5FC433E1DB
+BBCFFB1ED92299DB0291CAB10A84529B7FE279C62628A24A2FC36B01976E13BA
+6CBB27085F3E9FAA6F6AB25CD0F9B879FC87D5F6BC8BC00A44123626DC9CB159
+90C6D14B7BCBA095CC2BD04A7126DDD4AC823F4AC3E225DFDD7CA9031023CBEE
+603CD1DC2AB701F16FFAC44FAD5A50EC402F70F4C2B403772176979C11032728
+BF872DC77347FC43F28CB71E97BC0184963FA54A8E161D9B51EE1B89F32F409E
+F01F82D09B739A8C31BCB73E5DA40B937286E7E68A2C3CD4C6CB185352361539
+C164DB729E9EC9B6AA11AB7BF074D4B78B6A9B620E99B7BB1B3D548EBEF4ED50
+7DBC6B011893E0ADAB62CAD23B3C31A13567389FF89C66EB0DC4BEC651D6F7AD
+53F64E01B10841011E70880A8AEDA8AB6C34FAEF1DBEE8F686C9F7CD14B9E858
+27777BB349D60B7957482E6B8F80C6A6EA5F6C66BABFB57E21692FF5F1D0BC11
+0C03E9E4417DAED96B701B6228584130E7CB714DF2D43A7ABE3F749D3D903AEA
+B51AF2C584A572821E866DA1BB9EE688CCBBF54E74ADB2ECD4DA5021135C2AF6
+69B3B0C58AA195C62586FFDD0A089E72AEF2D94AE6DB57DCA260ED54E6C1E711
+5D406B4A84317F6E746E3BC96AF504B4F6236B8E42F224C7E7E7F62B00AB67DA
+CE04FCCE9A77D84F05A019235EE19ED4D22578690F0777ABCC53B11E7BEB2887
+661E5AA4FCA1C094CFFFD07B9ABF842E0A6AF84F9CA1510164BC121D38A19544
+B3F1FBBB5B9F8085F6AF8BA387A13A53C5F187911A72A9E2F12B142349E3AC25
+1267BEED7075B675B4C64B6FC91D37585AD7F89CD78835F4931B8B6E9B4EC526
+5D7F4DAD029BADE12A7480EF916EEA8C8AA4E685CAEADCF6567F4037CC079385
+340B8A7402E9CD160B3BD7EE6D98016CFC16E7F8B5965952D11B786367BD555E
+360BEAB4E1AEA714935EF43EDCD2CF7E194F4E442F725A0007EF45F896F95F9B
+10A7DB507EF148CD37635CB318633D04D6C067E42716DF484151CDD90B1ECBBF
+D208B9BADEC77B960F79261381ABCAC9E92BE6340E11AB95E21A04CA12F9E4D9
+36EB33E30077CA3348056F47A2681B063770F43A16F9AECAD7C2B92C2809EB4C
+E4F1B7FE2C1D0A77AD2F46381FA09E54BB25BAEE68DDE0F447E55A5EBAD43777
+71A68F3800CA5DBE4BEFEA6A54FF5BD38167984D8D8586FD177BB2E047E65D20
+D99389B8E18340F497F1F8DE913BE69BDDC2FC2FFF3752E143E307148E719A1A
+D211B389EB188877482AC744CF947C97B754B30E39129FFE3B87BD34D7DD0ACF
+C9F40BAA2839FEF2F07EA8ACF31C924F7244EB5BEB8690020D40B7713454FA28
+9CC5E2E49917B80A8984988477C03AA40B4C729000989BBDED813D9BEEA9FA3C
+E3570FDCE214663BB747F42107D92270D0365687AF6269E4897D74E0CB3983AF
+2319C475EF26837156E47EFDD7E1270E744E0953F3982634E008F481C3D4CD61
+BC4AA18BBC4FFCB317EAD1B553F2CF208B026128BD2826E5799B66168555F5B8
+D7F25493FBEA5FB1D267BFF9A516519B4DCFDD06F93338F78643B594AB29A3B0
+1A11C8EE32FE7A22F3F64C8D1447E9550A8D702ADB21C9283B7DC4CCC893878F
+400AA5280D5ADB74D4221EA6E24324CE66772866BEC344A05658B11E93C89D8E
+FCF8E52574EF3722CC428E113AB5992AB1BF0EE4C9EC3FCA93D50494D09D8C24
+707A748CC97785179888D87D701268FFFACF4291D2A59C0B68887B2EA7266659
+52711C8CE0CC9E00884610A4162F7DD41D1E8B45D6086BA5A1AB0200FFAE86D6
+98DA43FF9D8B376CE4E01D134D9C0AABE152444362CF6F82C90F95AC32E915A7
+3823D44950DDE2397B89736E347E58541D332D9BF2A28480783F5233671CBC38
+5B0D460407D43D8E2B08A047831182FEB719E944B933CE9C9A9B375D3F6CAFA7
+D21BFE933C004CA91D251D3C7A511B1F01835DCA3F6A618C4EEF561B545EC00D
+3D7F2208A46969AA7A28E51C605811FA6CBF9FDB3FBAD76E3D6815E8AA3A5B4D
+694B06BDC8943422B084E4952A1CACA21857AF98D5FC5B86F0DC59857AB82895
+51B0629E8D4EE57835BA40072EEECFFE2E2EC153EBB132924133AA2006252717
+7D8B28A43BE2D2C880F8AD56FFF5D00E7CDD5653DACEC9DB56D8A58E54A2212F
+611769F5E66E1F62546EDC33E3D39D887C44A20149D3829472BF3065902933B8
+DEAAF1D3B8536EAF8BAE0115FCD414709B3B1B6C8AD6E727C94EF5170B849F36
+26F99F53A9EED6E85AC11C909FDDE2E3AE152D3552B8810283ED9C73DAECC728
+8A99B7017C4D3CAB43CAB46D110CE507E5C46F21D7D0692B82EEF9A921B47AAF
+AC3620CF307F334D772E7BA32FDC3A56B94EAED34C9068C1FD77300C64A2795C
+39B72A3A784EFC59E8AEAA8DC2AB80F9DFA2B54A8FBDD37FA4694193D30D4CF4
+957A050DB4B44DC6823B01770A1CA38A5C3C2DEE7642AA85B161973A9C28C57F
+881886765C9FDDEF469A503E64D42049DE78F78D521998C03DBD3B06A9371E1D
+098C17FB04F3049AC9369E1331DC2CB398C2826A6007B51CBFE7ED472CC5D8B7
+67E0EBD55ED283903D37DE7C9A65108985A19CF94848F0AFF09CF91740FB73A7
+D6773CE6E08026F784DADC0ABBC629121D6B102F02AF52B9B3021A8C4497E9A2
+53D09FF67368B9E3D691E5B1724E1A05A4D64FD0ABC5C1639DF6261A094C1EBE
+A2635440B72F3F97F784C61572ED6064997994B067A8006DF70D1B845E812988
+C65D5D7529758EF2D65D1A389ED62F6EEA0FA34CA1A98A98BA078CD8C26428AB
+09387BB44BB017C8B04174B6A134D52614D2AD13609D2FD97EA1D1645322269A
+D83801193F13F4629B0E59C7A238E2F2201F0B12949A3D1378CCC7F9D30B96B0
+C05DEFC0F54D4513B79A6B023D29F87FEA0EB8B77A4F9B8BD993AD55236E5E0F
+9A55AA1548E182899AB2131AA34A645572256827C0F914E665E9D871DC783FC4
+CEEC66F9F4A04AA534C80FF89253E3D888D8AFEA4AC0531B5EC4E2B5F472ED60
+1A037515E48F97C3BAD8105C257B1BE54EEE1FD4859C1862243565A9F520641A
+6C325A5DB9CE0515D36867F7CB13E853C375EDDE35D781EEEC7969C836AEF172
+26B22DF3EA27DBC1C681ADDCB2055B4703F69D40E98EA96E19223906ED3B07D8
+7F63CCA5CEA06D96B585D142F943EC94BA6FBDB71138E293DE437DF33B65C973
+7CF0CC0AED3C93F3DD643ACBFCFC3338AE8272E3151BA3BF57C81929140D2509
+EEC33596C36A1480AC390338A7F8F2EFC9C4E0679F851EB62F1104498D7C5BFD
+E0E5774658BB36B2C87C17C3161FFBAF85F5E944628FFB7FEBA4301B9C0E0B74
+FE81379EDC0D8DF640FFA3ECACB978BAD2F1D45D6E7AFF0EDC778B4A701990CE
+EC739D7CFCFDFECE97BE3ED1745466A30F7127869FF200CC66A83A529C8C5D3F
+DD81C9AC371149A45513F1D7ADE45E3E72C373CBD75639DDC82CAADE19057AA0
+D0BD0CB2A2DED23F681CEFDF7C20F43B62CE69FA8B59FEC165F9A48D9E4C173F
+CF5D1A0E7679F05C2B06F2981C57F22C941802C592474C9A9D268C770FDE9801
+DCCE28D844A2F27F0B99C809CF9CB8C1856A301FA75C97CC6DCD5630787D1A6A
+904A1F0B4038A5D1FCA4F33495CB3DB7DBE8E1BFED452A0DE73ED60A629DE4B6
+AC6C2FC319E08635C8ACB499F5793A0A79402FDF3E059471BAA7A89885472587
+284CAE8411B213D29BD7BBA843A15894C0F050CA3A89758399F32CC1D935D7EB
+3FBF67D23E426C63941FFD2D777809BB36464978370913A6ED4A54886014C5BF
+BFE075C2E3C9920F714A11F1805BA7FA5E2346D4EF88E789588544764671091C
+5A43FD4AF920D5984DBF9F64A9FDDB14728D122AA8FC75F01D91AAD8C08C3F8D
+FAA46041D130BBE9D6F2FFBE31CDFC0DFB5D8C1446A63C54D40C7D62D3A57BC2
+89C279F38C82961A92BFC735C3F6FFE14EAE2054EB67AE85F2D9244B4D296F66
+7FC4CB99092B430DEBB51944EA86047489E67376DEE36661CC8EFE0282D9BFE9
+A49C1ECC8B979586EED8C41C79B484E815D862A683A5135F289FAC97ED170FCF
+C7EBA516DBE479DBB6F85964E60DB80730895D1465E950EAD0E0C9EF0201991A
+A7FF8093A757443AC87EE55239613AD8F96773D2F86DAF0F0C854AEA885BDDB7
+F6B03536D7FA2A6086C3F6B62384B0857BAD7ADA6AE37B53D44663342B491982
+A9C618E53EB0D1FBAA554BF2BAC258F8F5CD227AF5D1B2C7539B799E68D765A1
+482806F78C7A573A02783D95D43D885930CA8AFED049E3826D4AD4AE3374699A
+D1113F076C14A2E24A313AECA64454BBD2DDE6495DB8CD85A2BE9C00C28A05B7
+314F29F4C222CB58477926D0DD065A53AD9A6B2ECEE5118D86CD0D1CD7A6E44E
+E03F87DC01BD31BBA50B1F0B8D3DA49D2C1F98161C96B625EC111D6E1163695D
+F5BE00AF6444F6FF65EC93792AC5D4D4D2B1E23654E2FD216A2FF2CA191E320F
+CB5F53D3D609DF3EA7475D1E0301647B9AB965B786C8CBF487C6D09DFD1B59D0
+432EBFBA8EECEFAFA97CAD9F91877F18145D51F0036F134AA26D7D6036F5041D
+1F5DC2238900AAA90B64A9F6383A311E5CB8FE191946E20F6BB4A89A2D73D057
+3BC7DB8FF8255D5561D44AFEA266F0EF1BEB9E2AF66AE5B094CCCA5080C58A7D
+6E845C85EE2F6AE507AE5F944A3CDE77C50334D2635A92C5D67C2925675BB7F8
+2010AC87A1E6E835425856E8ADDFFEED93CCD82622D080F7A0B14EE66E1D478A
+A9DDD4C0A14F7F82B279113880140A66681EFBA456114E89E7C3677EDAB10D2D
+2D2A525BF7F0BB76B92ADEF948D85CAC53C05525AA471F7F2D5318EFE97977DE
+16311669FE7B255DCDAF0622A7BC97A5C36DA235456D703C88281653EC66A19C
+0EDE5FDFDBF06AA0EA0AEAE04065FEAD7873B4E75ED0F48C015FA30A95D07E0C
+97A848F075F70A8BB95BF5FC2B73097B3C4F505B975877D435B86EA1D0487A78
+46AFD538E29BA6BEA171469EB79354A5FD86B89995641B58D6C5B4D37EAAB226
+72957ABE3D61D53588257C922DE01398B5216857A622D0AE6AD9F6D142777384
+1784BC917B2857270476B993B06C6B0743855D5C5B1656443D65BDF83B2CCDB8
+F19B8824AD69ABB144F97C83DF8E971DF6B8A22F2A9121D34AC8298714F031D7
+E8DD61FF26A6D35820C2807B3CE00CC0E505B92A01FF204201FE04EC2998935A
+A292CC3F1EBF7A24C2EAF918CF84119075C30739BF8C1514E165635C3F2703E5
+C1D030D5E958C9419A0192DCFB57832AC860AFECBB1C0307251FD8B04A651813
+5B445F51973F23E58572C2F55D9C77FC63F67DFC8C73C907B42FDABF8351341B
+0180318EA6424A4AFE1DF71241ADCB5540223565A63AC952EFA519BE7B75A27E
+62B4E25D3A825A9ABF61180ECBF179331AADD7DC7BD039A54658A7D2D9A53374
+0A4A1518C0AC89E4FA0E6EF76DB049181D4C3D2E1CE52ED5220A0BFB5487BE59
+97D5020F364C0B7BF4D152B530ED5158DC5F08272F9CB7E8A7215F25778D228E
+4231513C44151C9BB65595EC6A9A4122965C64614DEC76918540FFC90867F249
+3BE43039CEAC6F691C79F8BE886F6B61FC7360DC04481744935E932274F7F86A
+FDE25FFC857F60C23BF6C643D62A35EFFB1788B40E1926D6A728D07D78FA73E1
+616C0C0A84475BA3A7476A1F97505CFD3AC12FAFFB7E73B84C1C26FE3F4B6E1C
+0D8D6148711C9B5CF1090E315BD7263AFCF86BD56EDDB76DC502CB2AC2E25938
+A076A50A42167101EFBE05725AE2CDAF1F1C76027BEC8C88C8373368089BEDF2
+A57981029E84192A4D5D8471431FB7054A92CC2F93EB292C3B663DA875AB9328
+7C1AF5ACB025FCAB6547445516B691A601992DC1E73ABDE9FFB16569ECB607BD
+5DAD4485CCC0EDF7094D9D4DC5C24B3ABA71F02A8A000855CD0B2E152DA4FE46
+A7BAFB77C4298E3E5939446467FD4A2D6ADB60CF8B7BC3490CE32B3C5D64B068
+1EDC698E00D9F2EE1F418A1CEDB5EAA3D41C4F8CACF51FEC24E88DA624A63FC9
+763BCB8F5EFBCF8A5492086354C17AB82E2CC5C6D15F41F7AA0AEDC1AFE275CF
+6788694C1871F58E313C5814D532E1D48A472F507F19326FA92EF9A53E72B3C9
+E0C26C26FD11B3995C4C2F9782F5A7F397BC3D4EC1C3CE541246FBEF5B7EF962
+F2146285968CAE7EC99054A7BAED0F5CA4C9CD533B88D8348E171AD0502BDDD1
+9A1FC2C2A7F9929562BB237F37B2834C5E04618D4A0D97BD6BA7838D213CB815
+E623AAC95FDBEEC8D8434731B8D803C836727E3CB2C322F9AD4EFBD4AFFC5E52
+49F1A58E71BCE43C2A1286F2A80ECDAC23EA36358B42FC75BFC3B46C655198C2
+99B770FC41D1300A4E44E309A17D3EC762E9F99F95A6D713D5AD2DEEFBFB3782
+B10E913B8EE987E7A20F0390262D2EB2D4DDE28F092DDDCA1A55C21E00873EAF
+85AA69C6A2030C87964F23F1D623A6833636F8B33B0C664CBCBF9C99B954D3D6
+B8C95D897581CB17BCDFDE7721EACEC78AA0DD89FE5D9E0C1C256B23F6E5FC9C
+337066628D0A5B36B0DE344BC91056A36D83C74DA36CC39842E6CBF290884098
+B1A6971F9A9C80EF6D10D9B7CAD3844F930D90251ECBF80AB67B1D0C5F0DF228
+D2407E31973AEE376D17961747480523DD6C8827FF85437E2A5DA9CE658A5C0E
+111692F5CF81B4593B317A31B5CF413C5ACAEE18F2ACA8F96A8DE889E2409A23
+E1F32F3E07DAADBE82285041FC38796BBE666AF139A5D030E246A018A0B600A3
+91C337FFD627805EE5CF490E59065B64BA99834D2AABE391690087CF86DBB69E
+754412232664FEFEE41F3340456DC0A7B41ACBF24F9B08BD1C92A6020D5ADDB2
+7A5891F54B788780B5673FB049CC773F08C2105737F2176E871B9C3C98F67846
+90243F4765F537A0DBAFAD4279D74F694B37C738ADFD23FBBD1E62E64D66ACE8
+1EE441DEE2CF046E1C19EB2D2BBC4B5A3518679FE66E4DD45100AE860361F963
+1399AFA41E839E3D599783520A216B08D5B9D2447D1C62E2D6907F3F1641F472
+BE10E671B249EE715C15E0EF82060F6E671EBD2CBE1FFCBCD43AA1BB88F66696
+11236B13F55A2E788613DFDAB70B09741B3E20A98F88FF552EC322809BBFB70D
+3E938879A97979010E1D42D6B117D013AB3C43077B636FB9E373C8B34F419F61
+827371FE834A59117DF40A5ADEC512B6B173EC9E72DF93091C0D7A4F71151A16
+505DC27B7BD42811D5408B2BDE00803740FA585FFB4EE28288F940C65DF718B6
+05897335DAF4958CA8CE279C265703774B018D91E4EC57D801A8097A80F14C6E
+AB1A719DF5B2E5B3E0C76BCCA3261E69DA43E4B1283ADC30611E5CCA828C3BCC
+F43835280B0C569DD11E57B1E6C23124A59EF5AA90F8DA1CD6E94C66F9B8899C
+6588E08596F794108CA1849BA3632A6BD410095A505D6AEBF06C70F9BD5FC3F0
+D8F7B91ACFEC6677C2A7DFBA86445FF9E7674F7954700D6B27D0098C6780346F
+923A1A347C30F3341D2071131FFF47E45382C04895C92166876D9DEB0CB34F13
+ECF3A3C691069F5CF6B2BCB11524CC41CDB64931F826DE0802AD28B3CF1A0EB2
+19C21C4EDEAA15980E88E720B5EFDD2C06C60188777EE90E756A14D175D17FE2
+8816D484CA18A036BE99814D7DD9C1B31F7D8C0D98D581CA2962995261673719
+F147836F2B9F89A4FA9A52C730BA9A60A2A4E6D13DC10D740EFCD84C692D8ED3
+4B976B69A763D73EA831B5EA4D7B76924E5508C9586EBD9BAFA31BECBCB8105E
+AF3522FD623B3617F015A11C323EBABF0DB0BF65B1AF78FE9D60A6E1CE66D69F
+63AB649933CB7E3388B6F968EAF471C09ACD3A6D3D114013C222243805CF391B
+050818272D00506E8E8547DDE8A9ECA20B946AA9DA9760E78FA58D0FCCA03D6A
+0558D8346289F4A52186DBEE06ED9422FC55492DB96F7BB98E5108A1D111649A
+C856D6CB082EAD628D712ACF9AFDAE6887FFE0FCE94E160C3935CF88854C5061
+446EF50213B7630728B48B009C38C73427F9F0A889E23CBBAFAF7609865B1E9D
+CA4C6961A0205BC9C6B94C50090089F2AD82EE916148605B0763423A4052883A
+1108344766D549496BBDFE9DDAF08EEA7A248ECD8D1B01E5342CB4761A745FD0
+ECCA0B1C414689814BB4EBCC573BF2969409AF1A6140D9740F054998F327B137
+AEFCDCD6665943E0E384358B31F31BED5A3A47EEB5629D0394171CBE1F8EAF96
+A1FB56F180BD13B1CE8779CDD6CC20E9D7C3926B96C1EA5672CFF984782F73E9
+B17957A80628A492DA1D5C575B4665CBB8CA549AD669B560D1CD0307848D905C
+FB28459B69489AFDE6F0C961D4482D926301C404FF03BD832C0EDA05F603D9C5
+C1CC7A08B6CDA5866AD5FC70F9C54D470AE5F02726A67CE50B2B382CC3364602
+9AC92A374080DE4D56580A4BBE440839A5F1AE333E7499117141B51EF466D314
+66C55259503A1407E835286412C03BDE2988E62292843D48D6861F28E504D84F
+8A5F0CD27760BF1DBC628CE92165A5BE2D0B46D93CF9D0F431E429345A63E435
+C32A80FF707912DB0FC6824E93CFCE6463AD97E6C492820D5F4CAC462E54E265
+C145EAEED839DD04669147C61A0DB446F1A0729514E168355A2C6B135761C8BB
+8C01E53E35A246D4340BC30BE7319A535E7AEA4157C159EB9AE45312E6AE7972
+494B653CCD3F8ED463DC38B372C1F28A6B4E67665ED4AF8E4142FD46C7E66981
+E659BBD3597C4128C5326C1A3D419D5A737FF7E69A379D38EF54074247C87551
+F959B05D2F368E7D11EE46EBA76AF7D82B482F70A84B7236F858393B8C63CA09
+123BCB43AE1AEC68FDB380FDAFF302D757F1C33CB19935458383F3A325733D4A
+9C372C6AD50D72E8AD0A17A9B927FD1AFB5A7B51622FA77591F7558F13E94A84
+7E601F688D3E8CF5B152D317F33D8DF4D4E465A9DAA4DE1588CFFC90300DF42A
+119CD673D7A7319A778DE9A1151279505385DEC0F3EC7AA8FF7A313732B2E761
+EA59019D32ABFD833DB2B49C1E5B6380B055A03C1C13718F9FEA758FDDCF11B2
+03DE89DBAB1EDD3076DDE968D2466D8A009A5B5EB74C03D845860E855B6F2258
+38245CC1664CC08975B4FE219EF7D29B540A237F007AD63C8E63100D4A22620F
+B7C2A9D4C093B85969244AE68FD208A257AB807335733F06B20405BF1FC736D2
+DEC242E1E72A18EE0B6BD35B97FBEF01BFF2E0CA2E321D4391744A468A0DE046
+0D21E04F89F1051E911038DD7CEC1E5909915AF3A6ED8E67BEA3E05E4A3B5544
+38F734C8E2933A68CA7A4061A48A74C42A0E2920294A114A25646567C34D12A1
+03992C0E01C10D7F78818ABC6666F1CB59DC8CE005730D9BA5B19D1B34D9AA19
+7A2DDA6F8D751039E9025F6D618280B0EA3E416D07CF1BECB8981A8EF28098FB
+CD2135B0E9B5FACA8BD2BCF75995B7DFA43CB6B1778303AADF3DA008E0172BAB
+08DE437FBA007C5BB3ED790642491010B5948EA8286E202F48D475B1B7E3F5E1
+7CD8E1F2FB66C282C9DCB3423B6E301FD7B99840BAC114CAD82A0D1A19B7ADA6
+2E24FAFDB0E407E2CCE2D39A5FAB221D5EB290CE1BC740EC90A076F1C99284E4
+2BC1101EF6FEFFA700A9CFA14014B98E86BCBFC86DCBCE3AA7670F004855D2E2
+040E4F406EE45878F5D4C1D4FA4F8E8453D819981A3CAEA9E141B46720D15CCE
+D23E26BDAC393CB8855BF564D6C88F58A62EC0159A33C47103F4FDF4E7C4A478
+524B428FFF4B04B211873366B3D5D76F5F4F5FC48FCEA7BFC8353E4549DB087B
+E86D0D3498F793E4379854A2D1E13070602414220B77DFF657A423AAFC6128A6
+F764B9F12CEC0AA29830A93368FD858C4BDC676CD01670D55B4C0E0335455554
+57DA95B9DF7FE930996EC25AB370430814AC36613FA8DEECCFC02A1FBA0B94E2
+99B8247F96C68B1A138E1D6FA79088251EAE6BE81D95F13C5EA63FA536B8E175
+16BD2814CC0705BA49CAC5E419132755D3D43874483AEC16788A0CB3F6A4F9AA
+3105CAF8B0C06543F8057BB1D4788DE1B961DEC4A85046D6C9FFCE3016D92251
+3965BA3B0C9EEEBFAEA15CAF98EC822F02DB6C8C6BD6AADD455B57E0A0A78673
+133130D798DA27945C9F6E5C2F4B1FB02185E2B88C59D5ACD4F3C4DF0CFDF92D
+3F7AECF91A89E060778988B109E9C8AD25FEB7DA0E1AB19473ED04AA464958DD
+C4108D44AF003F4325164897842DA48EA1BB52198DFB4C6C9F01C0D0A1279B79
+E2411D18FCBA9062D02EAC683F46AE5ADB358C80699C765E6C7516FC66CB9029
+641F2AE5E4306ED916F5119AEAF9E71FA44ADEBB116F7E369E8FC348AB1E6821
+33F1D66FB88DCED174E32650B6E80FEA80DDBA9FC02370C7AA21E1AF09098D2C
+59CD4620C26F1AC50F701A692751F86B614A67D8EAE4CEB9D0B0669964ADDA2B
+A176F93FF1ED5C96588665EF7CC4128AFB46970EA863741C3C9CC9B9499182BE
+4014CFB19C12E9631843CD7041273828D0F3BD6688586480A8BF7DF7918EFF00
+2C8454F18585F4D63199BC4710024310709329FA0EFE39DE6B66956A4B2FB658
+916AF992E4701BF536892F728250F593252E47357215041E45F60FA8C9C9F49F
+812CD9A8F5048BC735D93673BF2AFE9F1266C6A36B2178FD2C9348006C4453EF
+B11E5FCA409C59E961981EF8F1AFA8B029D1CC7716129B44506D2EFF4DB236D8
+E358972C8BB10782CE750860BACC3743BCC4B765A5134D17828B12DB8E393C7B
+A99FC248E5F1918C2004F0D54E71DED54548AD917A4744F8D50DEC1D1E501D31
+434091A73B5B5F0C332618C438EA652942D58A0E20B5BA8E3C06F940B2615857
+D7165D12216995A5B6243548EFD5DB3204B9A2D0D4F6A0B736B8A9719927C092
+4716DE81FE484C097C1A643090AA9BF0185BD14F0D6823117C9A99FDFA230C7C
+D1158C77FC9BA138C8E082EFE827C9213D7B0217545891DB48FBAB6B21147144
+BF053B6524FF6934ED8E225A0C936A9E998384DF2C9619D2C98B5A35C1B21A1D
+28AA09B9254A5267D3DA0E917DB646E601894F7EB7C30D4D7557DB95DB2A837D
+ACCD77137923B69135155CCF62D8B607314732490BCFF5DF4FEF8A3D178492AD
+36371B20D33E7B196598265BC787CF7E15915D13041C2D533B8EC4E26D0CC318
+03DB449C66CE1E090DC4F8005C5793C6CF2F540DC7731B11CA106CA1D9B8E901
+076347C72AA9B23049E5D0562925E48FFA912C9F3DD63E80DCD59CE4A449B312
+9F58D723F03B65144F0C4583E79399B44C7FA674D6B455747C32E96A9B40B751
+8CCAC87721A5078E4720D89CA851270AD1124CFEA8060ADD6C16FD63E8322882
+2486FA127D28D8BF5A64AFE69CF05D1F751112E66E37BFF9B10C6EA8552D21E7
+2B2492E3E01E65E735400034B7ED9FEFBDFB7794F39210BAF2A73529B71EE778
+19F308CDD2C9FCFA30A1EB8EF15A6D472A6F0E7745FD647C0A32A9CB91CE332A
+563C6243AE75B165D9BCBFFE07613F2CF328A1CFE27EB08BB4363ED083389D9A
+C04A9DEBBD84F97F6D4D54679A2D2E68C9704C7E12A3A57F25F81895E8BD7ABD
+743CDCB717A70C6A5D40A3E06C1B344F1AFBD0DE30864919F3FAD4450366F4CE
+1A8ACBF491640349423309B22ADC68BBDF399AA8F6DDE5B346ACB00DE8867A11
+8AC0AA336105917D19A4D988C40C7A8CCF6EFFB43E4292EA79B502B1C5670F48
+C7349CA46960F38A2F56EE7DBE02841ECAE902F8754070C489829EAF6C165A39
+EB148B25546C17FE63E2A529630AC15F37FCF8D2FA1C1D0083FB6E4F154C9C1A
+EE661ABAF6277B8C221EAC12625EA5BA6B350E2885DC398E1E0F9CB4C1BD85AA
+F8D36325E6699B9786FEACBDB9CCB15E2B9329348C440C2841CADD75A44252B6
+AFFE3AC1557FFCE2D9FD07ECCEFDEE968BC04E37AB2BC6A4A40DBC890211B5E1
+7FBBA4A313FBD4AA5B7D720E7172BBDADD245E3D5B4C1F4502DC2CBE524CA5AF
+7D1406F804A4B3F4D707A7F1CE4F28ACFC43C4C5693D56A6659D3CBD2D2D7E51
+9F4E9AC1C6B7703A395D95206B7AFE4AE86C066BD57E3ECC6B7163FCA1A2DEE4
+33D332EDD3024886EA1B9EA9B7738B768B9D2F5C9F5375439144FB6C3FB28388
+E7F52B58D7E81DAA0021901B3CFCDF490DE81D5EBBBE39859BE6E0DB6C6C880F
+36B6E1F7752651D437D555CB1FEF98DFE5A0C6A880440839544DD0AB969B6294
+2E82A60FCBD805F6C67A096861537F18C2D448629E2BD5BAEC19CB63E238E2D7
+4CB6542F6F2C36A827D761688B6B9870C450DEC4BBEE096A6DF7E894CC474619
+7B9721E75D8FF69B9C9F6E075B2F74D5013868F72C89083C87C4C8AA1B502A13
+3BBBE193E79876A48921E027EEABE1C94999A54BC2DAFAC407FA5C176FCCA45C
+0B09B53CEC35B726C3350474E6CFC1ECF070DB0A735696C67C2AB387FA7EB7D0
+1F9FDD411BAD8D015E39C197572901B4519253052E8F49135E700F1BF7B4F2FA
+3672E8EB4A51A90396478C6377E7451BC58A32479692F992C16F7ABD37BD5924
+C4EBF769A8D2BA374C7A727DF08E08FFD7A632BB364557E63CE28897E0F6DF9F
+3AE99A63806D0888E9157E822EBA7222F8C1DEBF4B36E34FDADCB034A69E326C
+E7B8288FEC1BE8CE44A1467100D7C94C08175FED6C2B1F45684BCF9DEC2E7D3A
+9F877149D4CBAE832516E02F259178EF4481CEC9C76D35237ECC80ABBA359D0C
+9B95FF260496C8C049343690D632316749084DED85656C6A0EAF022709A09F96
+AE34049218AC8302835E748597CD524D5F2766C68842DC94BBDC9D0D51E4F114
+252AEAA31BF48339826E622822F02809BD45645EF815049770D5843423C6C567
+4998CFCD1C04E8D7A821A0CE9F373222A67D7E500F705E9CBC2C6BC39028F913
+F18B2EF044C64DF957518B7A029749D09B1DBA06E9EFB8969DF7A6055581A67E
+029BCED04963A4A7BCCD327560B07CC5B6A3A0D31BC9A6AC0626330739312E13
+A65BCB0DCB69CF2300A449DF4655802BC387CB5990FDC89FEEFD56EDFEE84B37
+EC6A084ED722E29855EC52B63E1F08301045AEA797FD2E15CB4D1B3BC88FE975
+1D4727CFDF19FFB3A71EBD6C0B4A715E3FDD4D56F359926834FFB43173BF5242
+8D52FC6A8CA8C1A23B1F17D89AB22962CF2DEFACE5C0684266B3BB9B0574647C
+BA5F5DD70377ADD301F782F1203AE40F7745CA94682C0D0700730C2F2E7F7528
+5830FE525085FB1653A0DA51035FC7E045D7D1294A87EA8C6E69CEEB01F18F6B
+A85391BA5A3FDEBAD82FBFC05EC666D459D44ABB60B6A2279114D7C028B9F6E2
+DD742D30B2210580565959C31D4D6FBE839FBD7FB4FE310BE097DBABB82CB26C
+CF35EA3DCD523582A49732CBC9EDCF78F4B88A8159A579FE7C82C95C796F7E93
+7AAE0AB08A05FA35EE0A83782F892DC7FFA96123B2908D79F293C81AAD246C2F
+30BEECAFE8953CFB6CD7470DB6E45DD462D01245F0235640009D8FB05DE87EA8
+8AC4C5E19640DA35BFBD15B8600D9FE4540F0966B9B8CBBE768180EA74F8170C
+82E6C737D8FCD37E000BDFDBF0B1E4115E56A0DBB3BC607CF434E199B68BE771
+BE3E25C0A5D7593A23ACD815B1EF688F7B4E061D8DF77C32EC39D4B959BFCE72
+E5FC0366B858C0CB3CD9781EE59393688B1DDB7F1F1F8C5C38DA1C2898A81C62
+FA986C7EF34309BDBFBD4553E4ACB04B3426E4FA9994D941E84B0E73300404BB
+13FC7D83CE9BA94D2A6D80F964B88EA3293B6D94CE721292CF5D6E935BC49C27
+3A495B6D2A713CCD890D178498EFFE2E3E37F2239ED56C746C51DB29AD5D9528
+2E3AF55B5D84B7FF6538FB6A082DE0B5E51A6A5C3E7CAED86C85B5BCF1648540
+E8CBBA9E88EB35684C668B6895B3F0CCD747EBC0EA42E9413D009E65007A04D5
+F7290382F8137BFE7B3755E2361967EC4F26F3CEAA87EEE85148994CD355CBD6
+C275DCD4C01DEB37B32323F781A1F9A30A6DC0E194A99BDDFB42D858A8F2F4FF
+7F06793545C1CF25C07B1C6B2F9FEB86B956FD54C576E4E6402C832C704C638B
+C974CC3F79244FCDC98EC2EBC2BADFD63E818A8E09F01431E9C232C9718A83DB
+6000C9AF463A5E4D6C81BA4D7F6EE01684D828EB7BBA07BDBC0BFBAD033DBF70
+E5C3D96E2C14115ECDB633A58E2E3371A826B6EA9C99986E15EDDB0C60977061
+02165F95D34AB0BE62B58E5B603726F353ECE6EF600F91E820BF34FE6232208E
+38ACF20B7FA8B67F7E470C047AD1D1F9D6E64606208B3EE65C24BA95B6ED229A
+EDCE97B9F8CA5F7312B8794464428109839558D6952DD1F3B7A6B686AC6964D1
+14CA36C8A6051774DA6B1DE36CA6CEA478AD12E2F5AA2A4FF5CFBBBC76ECA5B5
+71DA90E7E54DE6905D925D717DA74177E994150AFE6140B25D36E95CAF15A0C2
+F115EE68987C0B9C7D02A47241FBF17C52BC16303F3D0449BAC1BBB9B4F3D3A5
+F0E24AF095178039C8A6C7131A73F3A25BFF3191323D6ACE0688864C6876511B
+4AC536FC5CEBF44C01AF7E1051FF9EB7B08F5C3BFFAA77C29452A5DB9E038000
+48BA6594819A4751D4B6353E0353B8BD10E5385E9DD919A44D916BA2D0C9AF32
+E9BF5C62E98E9EA50B9F8C3420E4FE8AA91B1F409F47C1AD0F24FF1A4345191F
+7FF1F3B6C64F71FC4583CACF8511AF7FEB54B8DAF2803EB687572073BF872F92
+C1229D258649B0B2B4877CA6BD0E32FB86F83928B383D72BFE1BF66EEBF89A65
+B03A98966F181970DD6DB4EF262367945C032D84AD61AF001134DD6A9B51E267
+0B3A1637946C2D2B5EDE52C43EC79C7D400F827DA99D27C15F8E3EABD6FD1CE6
+538EE0D43A86E998145FD7B2240BEC45F9E6A3EE11D82F243338074DC2B079CD
+F2C9DC8BA554C9CE3CBB1DE5A1A15CAA5FAA4A6DC17AAC1DD8B15790185F29BD
+B14D27FCE255ACA9846ABC36ED49020F2D72FFF581176E83E4D3A80566BEBCFF
+ACFDEAE59C0252D717827442B031807C2CA6D8B3508F25AB957986DC23DE6E82
+DA4297A993DAF201CBBE0499772567BC1B2F65CEB370FBC05A0DFF8050917D79
+2CE31F38D842793CB4E50AD9B1AD1798F9B3E0911B8CCE2F5A0F89F542DC4638
+C176043AAEA317C9108706B918A175C8E431BF9BFC12DB66A89AB009342CD59A
+0FB57FE6411EF0FD7A38032B934FD7D79D149475726ABDBA806730D8A797092A
+87DF52008309D259E2600351389A6B6F1F07C08102C1063EF7FBA406A6A88590
+6768DB5C41D1B1270DB692988A6A5D61EF1D16DCBE5567F9A830C9D9C864E23F
+89BDCC48142C734698FB5D6DA7572D97532A46C16B8C5E066E8D6D035D2FA148
+993CB54D5638E5109C4256E14813D5FA65F96D232DA2FD638DDF115817C3169F
+96A962457BEA6473EB89E1FC94D07C192F8B4B576D72E8470301E255E6712EE1
+3BF19D139B3167327BE10591923C95FF461906458F0BF4E1AAE0C200FD598E7E
+ED294FAB45F51304BC4E1E35381AA3C86818C5219B47EBBE472BC644CE56680C
+409D5D120B687D81BB176C6C768CFB631F0A45DEDC6E3363A2E9A9A232D99EC5
+623AD5B94EACBFD57876CC670E52FB73A3CF3011643EFF34AB459F803E0DEDC3
+60D7623D6E785AFAAD8E804E12B66F01A369B4A4372FDD44E4F790FB67A615C5
+9374BA5488D46282FD7F54DD86C8DE6C98CFF61A8CCC8CB11D2CDF568840CEE9
+5813BBE5AB9E6DD9B8746137F7D828B4BF2429C7450B1515CCC76BA7BABB1BB9
+500C672C12EF53CED0AA8117B425D96484EE024FC81F02A507C741B30CA1F3CC
+7829985C9DFF7B9B0D51D3B3FD6C4A89F476C8D5EA7428BED4A3A830CCD56BB5
+D8D2BA0F0F04700E859087DBA2C5EE73138132701A027EE7499DB445E611A717
+8816D8240E317CC35542C6BD2C81EF9BE7B70733FE2F06E6A8CB4884C815E3F0
+C95440B510C334CFF8D7A06EAC7CCEF519D8FFD959C6BFB904E281CB57B3B305
+FEAA1EBB4AC39E8F222453ACF3E0FCA5C9AE4DCD1C7CF91FCB06D1BA5BB558B9
+D95322E6643C5418EFED4CB9D6386DBE50C422EE47BCD8BC7F2661AC6E397183
+CA5BA36407617EC78ADF978D5A0CABB68A70DC2ED0ACD58741C772E563C3F4A5
+6E24BC6A8F45937BECCD7985FDBF43CBA246136504899CCFDFEF2446DA8C6E38
+9660559CE7866EE6FDD68E056073138C7410A9202B0E67C1445C242161415877
+FDFE0D9CAB0D27A059B2DC99FF6BB364933F9ABC267AEF2A54C40432EBBE9E38
+8F17F9F24BC442A66067D8AE88AC530C7F37CAA96ED36FA22D2AD0A6E178CFAE
+12EF3FF42EF89C96DE1A3FE91C5CF0FD6792580E09E5E5D074AA3E5D6B4F39C1
+F8ECE526BB7E5098066B8D785F9BD41998CE20B3BF815193F80BC9AFE9485685
+41037CE031019F0E8F8362A5C497D80A71CF59B5FCA5CD630D827B463F0A9016
+1F33563680BEEC65117A93EF95CABA9DD18B25E68F56723C64E95670F5B8CC1F
+FE2D0376B41C806A9E6B0C6AA830785FCC0D70D44DBCAE27C7EAA76961C97138
+B7038196786B457B58EDE9A42813820E8BD73114FAF333BDED77AAE15AF0D393
+B4086CABE584F7B3ABECCA2C4400EB4399E76475A4AAA63E3E73EB74D2B46C7E
+9F2107DC0029D0492EFA86EE5E399627C9D9DAFD1F0008AC7EDDA6395C8AE212
+8ACBA5AAC2D39E6AF364B7813394B6D257C1062C3DEF9F73BE05201D12AE6936
+05745241C4325CF51FBA47AFAC5D9C5BE8A475E5A9566844092543D3BBF1EEE9
+448603E65C1B72578D208383D2BED1A31A7D6D81C254E5902BAB72EF16A16DCA
+2B2376520EFF93103E2A2B3967230D91C55B6322A5AA2ADE8142FFF5B6C7E166
+FE2BCC694BBFD0870A2F33612FD64C61846B9CCD54BDED0AB00D32510849E99E
+836E4CA181FD630BDF8A6A3C971A03327F45128991F23CFBF2434CB6754A87FB
+8CD7FC22DC73A905C3FD44F1C08E217DD8E3741AC5782BE51C9A6F5F555364EF
+2DA36CA7F82C494869246EDA1D830C6A6EB606C13A583FB19B49CD094160974B
+788D5284125D182E752CA8D367FCA18019E826A7FE5B5B35F10CB44DDF6A07F7
+F5E52A7758FB8C4510F844586FFD4AF43EEE502B8D7947962B6E1A5C32DA0346
+E32269AD34D059B50ABE5CEEB1B0CE6DF3F6566F053B10F4110C76C0CDECE066
+713AE09B1D9B2C1A1BDE2D90E74CB34D28D6B594F4D4964CF5BBCFC7014AD7D8
+F540C1346EA70FF1038E273B1965C26C747C8354E3E73DC64A1C24EAEDDD6186
+3A37A29D7EE06CC7A1D2F34E386A380B35BEB28F205BC3E9A4AA1AFF5E9E59B6
+0C7B1E33D5D867C7A443A594F2323043C6C89881C5B4378A8BB67437D480DD77
+61E6A8FC571627942DBD16E47166265F623947A5AF880BF635560DF36FFCAC90
+2128B2DE231E234A3C87257E42BAAF18165D4CB911F1BDCEBD1F0F977ACFEDBC
+DCA6EF19D0317250BC8B8527FA0FE9A6562C9245B73EFF849A6E521FEA190BA0
+4145C6A63E8243D0F8ED07268FAFFB3C5DBB3E15395573150E0BF0C0C8EFB64C
+7510FE77B2C9DBDC10B3371E452A1F4458655C02B3DC376486032D4AA297E409
+10789156A8527CA96DD442BF5E6C0785627997F0D7134517C7162A330AF80197
+03302551DA2AD374C01FD0E5EE12A32BC42B7F799EB6744D1673EFF83C496F21
+EFAB119B1C1C213B8B953DF123D6DC1D86F84F51D5C2DE5F34C1FA0AC15659C1
+D0AB81E70C76884B23B2FF04DA22ECD8919018F383E5DA71ED166094B03E1B34
+4E911691300F012388CCF0E9045A7F4C7139AEC7ED06F929567B02B2A1611B01
+32989A61C5BCF1AE486F6F894F5E96DEC036D2C9C3627971F93465A1FFB77BCD
+D1FD54F7AF55556CF50DAB9A4153AB1AEFF9A7E8642E880B1AD5621ECE039E03
+67FBCA3B9397CDC48685A5348AC6B355878A63816F84883C5636E02ABBD1C01C
+B501345417861EE0D3E114AB4D81543BECF8C8BA11B77B4D14B06F9FD09F8077
+0E50B69F93A4742E7F6F843E032737084927CABC5AD10E0B57DBAEDC918B8E1F
+D54DD90A33A6FC4C38C04ADF861DA3862C968F4E0F433B002459E3ADCCCFCABC
+F0FC87CAB959A4FC57D295F87DB9F0C47039BB768BCADE510C4D073E9C3AAAC5
+0FA6E99F8D91B78842BC0A1852DF0F80FAC0ADA1E301E8E418F024694789696D
+572EFF5B52119676AB55DB5A0AA349C9CA20ADC081A909A2FA05CCE374889558
+A6D0506CD684662594AF7809E0E8A6620407E09B7B4C62375B3B894CDBB3F3C0
+72CD66648E093CDBB393EC21169BD5409A6E2CF55DB87515BAA77DD9D8616027
+39389E85A44694974D27D00894DC4D93C3C0505E6E2B98
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+cleartomark
+{restore}if
+%%EndFont
+%%BeginFont: CMR10
+%!PS-AdobeFont-1.0: CMR10 003.002
+%%Title: CMR10
+%Version: 003.002
+%%CreationDate: Mon Jul 13 16:17:00 2009
+%%Creator: David M. Jones
+%Copyright: Copyright (c) 1997, 2009 American Mathematical Society
+%Copyright: (<http://www.ams.org>), with Reserved Font Name CMR10.
+% This Font Software is licensed under the SIL Open Font License, Version 1.1.
+% This license is in the accompanying file OFL.txt, and is also
+% available with a FAQ at: http://scripts.sil.org/OFL.
+%%EndComments
+FontDirectory/CMR10 known{/CMR10 findfont dup/UniqueID known{dup
+/UniqueID get 5000793 eq exch/FontType get 1 eq and}{pop false}ifelse
+{save true}{false}ifelse}{false}ifelse
+11 dict begin
+/FontType 1 def
+/FontMatrix [0.001 0 0 0.001 0 0 ]readonly def
+/FontName /CMR10 def
+/FontBBox {-40 -250 1009 750 }readonly def
+/PaintType 0 def
+/FontInfo 9 dict dup begin
+/version (003.002) readonly def
+/Notice (Copyright \050c\051 1997, 2009 American Mathematical Society \050<http://www.ams.org>\051, with Reserved Font Name CMR10.) readonly def
+/FullName (CMR10) readonly def
+/FamilyName (Computer Modern) readonly def
+/Weight (Medium) readonly def
+/ItalicAngle 0 def
+/isFixedPitch false def
+/UnderlinePosition -100 def
+/UnderlineThickness 50 def
+end readonly def
+/Encoding 256 array
+0 1 255 {1 index exch /.notdef put} for
+dup 11 /ff put
+dup 12 /fi put
+dup 13 /fl put
+dup 14 /ffi put
+dup 33 /exclam put
+dup 34 /quotedblright put
+dup 37 /percent put
+dup 39 /quoteright put
+dup 40 /parenleft put
+dup 41 /parenright put
+dup 42 /asterisk put
+dup 44 /comma put
+dup 45 /hyphen put
+dup 46 /period put
+dup 47 /slash put
+dup 48 /zero put
+dup 49 /one put
+dup 50 /two put
+dup 51 /three put
+dup 52 /four put
+dup 53 /five put
+dup 54 /six put
+dup 55 /seven put
+dup 56 /eight put
+dup 57 /nine put
+dup 58 /colon put
+dup 59 /semicolon put
+dup 61 /equal put
+dup 63 /question put
+dup 65 /A put
+dup 66 /B put
+dup 67 /C put
+dup 68 /D put
+dup 69 /E put
+dup 70 /F put
+dup 71 /G put
+dup 72 /H put
+dup 73 /I put
+dup 74 /J put
+dup 75 /K put
+dup 76 /L put
+dup 77 /M put
+dup 78 /N put
+dup 79 /O put
+dup 80 /P put
+dup 81 /Q put
+dup 82 /R put
+dup 83 /S put
+dup 84 /T put
+dup 85 /U put
+dup 86 /V put
+dup 87 /W put
+dup 88 /X put
+dup 89 /Y put
+dup 90 /Z put
+dup 91 /bracketleft put
+dup 92 /quotedblleft put
+dup 93 /bracketright put
+dup 96 /quoteleft put
+dup 97 /a put
+dup 98 /b put
+dup 99 /c put
+dup 100 /d put
+dup 101 /e put
+dup 102 /f put
+dup 103 /g put
+dup 104 /h put
+dup 105 /i put
+dup 106 /j put
+dup 107 /k put
+dup 108 /l put
+dup 109 /m put
+dup 110 /n put
+dup 111 /o put
+dup 112 /p put
+dup 113 /q put
+dup 114 /r put
+dup 115 /s put
+dup 116 /t put
+dup 117 /u put
+dup 118 /v put
+dup 119 /w put
+dup 120 /x put
+dup 121 /y put
+dup 122 /z put
+dup 123 /endash put
+dup 124 /emdash put
+readonly def
+currentdict end
+currentfile eexec
+D9D66F633B846AB284BCF8B0411B772DE5CE3DD325E55798292D7BD972BD75FA
+0E079529AF9C82DF72F64195C9C210DCE34528F540DA1FFD7BEBB9B40787BA93
+51BBFB7CFC5F9152D1E5BB0AD8D016C6CFA4EB41B3C51D091C2D5440E67CFD71
+7C56816B03B901BF4A25A07175380E50A213F877C44778B3C5AADBCC86D6E551
+E6AF364B0BFCAAD22D8D558C5C81A7D425A1629DD5182206742D1D082A12F078
+0FD4F5F6D3129FCFFF1F4A912B0A7DEC8D33A57B5AE0328EF9D57ADDAC543273
+C01924195A181D03F5054A93B71E5065F8D92FE23794D2DB9B8591E5F01442D8
+569672CF86B91C3F79C5DDC97C190EE0082814A5B5A2A5E77C790F087E729079
+24A5AC880DDED58334DD5E8DC6A0B2BD4F04B17334A74BF8FF5D88B7B678A04A
+2255C050CB39A389106B0C672A1912AFA86A49EFD02E61E6509E50EE35E67944
+8FC63D91C3D2794B49A0C2993832BC4CDC8F7BD7575AD61BCDF42E2E421AA93E
+3FF9E4FAD980256D8B377043A07FC75D6169338028692CCA8CD1FE92FD60AD26
+D57B7519B80A8F8DCE9CEE5CDF720AF268D3C14099498A843D76E3B6C0328F24
+D36EFE7F5C4E5B5C612786200C8DE3A41EE5F1FFAF4097653CFCDC8F4FD32E0B
+03EDB3E413283B9EFB0AC33B055617005BC9B0057FD68C52D1B0E67F0C571685
+767F2AA85ADE4E0104A1C777733D5E318A22A9944336E5B98D965E50D31F357A
+8B6EA5A0EA98E1B027CE68C2EDB149EDDD04ED74A1B3D206D471A0C11C11449B
+DE190BBFEBC08C9E1B7513B43DA3134D6B11A2516E6E86B67F68C970A320D05E
+94FEC57FB347606DF89989C33482BD09D011C55AA920319E7B26A205D3D0F004
+22466F09C0482A164CFB27EF6ED2B040ECCC3DCAF345B5A73676F193D43123B7
+72FD6CFC5E37930E61EBD5A6307E4DE70194E6384EC0D79DB6AD86D3B319A31C
+8B0589D0FE28241D8ACE280D0530EE99C80723E560BB72AE9D53F4713181F491
+344B06D3027BA4E9E94D4305BE1D817197C54C8FF56CD6964165F6448ECC8A8A
+64B48B4F0FD69299A137589E2491A283509B21A3A5772F75B7602A9F60AE559B
+07A58436D04222C73EAEA72DE9A5A441F88D27C11F4F91255EFE280E91A4ACAC
+1E98A4E5E6C57B9AE86FD218C3CD8F24A4104156A80F13821384E529783C52C8
+78B94AB3A0096090867ED32E8A30980E737922037F75F062BD83BF4F5929BC51
+CC22AEE2DBBAAA001CFFBFF41D258424FAD888FFF1BEAB796A44E3126159E120
+7E4025C676CF94888A1971AEF8B6764B3AF4A92D36FAF6FC56FD049710EE3782
+BC2CD84FE2473F133BE03C1346B875463F126DCAB15C7A9BCC9A727D23611462
+4E8D2BFD2466600285D79518712B8681ABCD69608E6AA9578F7BD771EC36E01A
+5A17BC17E375020ECA59B43790ABEB9DF5F4FBBEF807E5699EFEAC563E1ACC5D
+EFA336E75DE6D8248E9381BB110884FDC89C2F9A41EBBC9A8A1F98E6A41F68BE
+EE30E25CA148C1EFF42DFF8C214A6537AB11F260B8C329A4947B5FC8DC9C5622
+4DF7BF4FBFB00380D47BABB03BC30627AA74103E553F55278F538EDD8C1E64CE
+0F1398CA0AB5A86630139B4A7E8FC02804CAFF3830114640AE50D2FDA3B561B5
+C63AD7EE3347804CBB40FB1E77A6C89735DD870351C3A1811591AB493251B904
+314F65791963C0412377C1D02362C5E9655F1C3D4803CD379A8EF24C48218C2E
+DF1165840462BF37DDE1B8D5FF09FA2C3B261E2F1A65ECFBE5D4EAD43B52C029
+EEB3948CB8A252CBAF545C8FA1C31E920E23A12DD7222CEF2D2A513BD758EA13
+DA33BF5FBF1D734653EB83DA2D374A5B9A0CE316F24EE375D6DF6BDA49954C2E
+DB25A88821193636119D469BA66E5DAA9C92520FD4F84426A4E54273FA469084
+7517817A6EE3E21176D333825E88046F50B3CF6938AF9BA79A2F51398239EB91
+1A2D07F7FCD948427FF62F40FF95E39FE1A1AA8451411563FD5388472251C155
+69BDE9283B41900B21EB1190D06E6B13B7794FED020D2C1BDD205AE77B084BCE
+EF628249398B496DE85B406FC2E1939EF00DFC84C07E26CF72EC401BAAE756E5
+7F6673216E7560D1C2A723CB405EE5CA474A07F61B81F8836482F73DC9516D67
+CE0CB770EAD755B6B356198B4B97EBB29C63456953270CCC8D5650C1D006E69D
+38DE2DFEAB27DAD50A817F0D645D30AF5B75A7B53CBD3D2B8D87BD0A7E525AF3
+22F7ADDFCE31716914C2318260C2E2B4664893921B68C5A93334A361D94A759C
+0D7B146D6FD94F0442D672BDA0F6432E18F3C5DFA37ADA378D95B75F413C9ED1
+BB5C606A3EC7DFB3F796F59B0478C13FD1900381EFE0BB5242D5B5D34D03AF1D
+4BDC93EAF8020E26CA23C8B0E7DDEBBC6762A557067A4CE05A524188A8F02E2F
+3625DA38DFCF381727887F5646A3995A8A38A5FB1E5D5EBB395FDD0B7C8E71AD
+B48EEDB62AB2CE99D121435EFBBFCEEA69AE9ED8238B60CC7288DE33C766CDFE
+15B767B4AE2E6CE0965E77272AC9F86023DA620548CFAC85BC751C44218A29C9
+849F1C2DCBDFAD895B54E51A569952ED50F82DC8A19F367E7E44643854EFD6B3
+FCAEB04E55E4661C82D31E2932611748480EF61FB2FBFB0CFB940BEA81AFCD84
+4C6A6332D7A600170E38A8EAFCD4F93DC153C43175434C86BC747348FAC61B76
+1FEC9027C1A193E55C80F1F20B5317AA0A05AAA36AE235F6E49F06E570FEE798
+84857D7552EA92EF3EFAD52DE39C2F8F43C59E3A957B7B926FC95FC4B60186DF
+7F3523EE2AB74E294C8C4BCD8B4975E84849E0FBDA6C0B0F24A636DFA578B122
+CF97BC5089E21E9F5298D1C9F30CB8BAFF6A3A11BB4D9A0A5CF2B18D055C44CA
+4FD4D8FE1AF3630907DE7E585AA811F9CD11FB2C8FC791851D651009FA5DF20B
+3C33FD2FF848A9E3F5652BD294965A332DD3F246C91B0ADA34017FF2451D1394
+F9C3C95AAC6EC8062BE98E8914D51DA6A164AD13938693D446044859D03A949D
+F9AC5DF4A000CDA98BB516D762CB9F6D44B5268FD0C26E88BC4A760C0F75A140
+DEBDECA4F511128B7D2805872160C55236F0A0FA7637FF0D4E94AC079CD3C8A7
+D03A5A56F26B0438B577C46011A10532FEBCAD14FBD6032E224F45691A726886
+56F305231EB2FCDF59C8BBFCB5DBD2D093A0E84D62AC93A2312CA69295E937C4
+8DBA1802B85F54B5E7E6D6216A918F911FF705D3B5CF055F1D873B96283A0B53
+59344D910CD396D883F6F7836BA65FAB4393A773A8F6BC298069E5BA38210EED
+49C9D920F718E3FCE692527DC7CCE6963BF744F2C91BC5952564196D60574E86
+87A0FAB21F2DB2BD5A51D7FBD8FC19946D24E5A228462C4772F978E650ADCE3B
+8D66B9C21279C531CA1C3A8ECE3420BB65837287A7222CC3673A2A5F8BBFDB60
+C719CD073EF9A23675198462C7C87B24CC92D6AEE5C25AC63855CC3281494342
+D28F3D2FDE0C183486769A4FD5B0143193D31FCB2C2A14E487BBD96D0BADBB64
+D1B56021C363A795BF10E2DB448261C363A54A4AC1182B470C457AA82DF3F5D1
+F4B329806141EBD53CAE309319B94133D7EBDC2D0453A905ADD207364371E178
+0A95C2686E3B34C4A978BFC0EE968C39ABA00889BC5149162C2B54483D44FD3B
+5CFF41F611C7E03B94945F414560E874D7CF27FFD0630890D7D7EA66CBD15448
+229059E1C436BB33D69552B5367AB5D53591C4678D0C704DD3EA23F5D9E8A7AC
+17D003C19E333E726FFFA2961F33C70F429085F7BFE3E2510F59B78F58B19CB4
+01B48E184BAD9020FECCE3AF52048A056981DAEA02AE78197E65855DDB170616
+F54278395D9EA50DC83761AE759F9CDEF9E1948E7002414FC05286ED793E6662
+3347F2A9AF8917493D7305B92CF93E8E9185F70015F5594084298A6C2F9FD3C0
+689F262AC9FEDC9B89577ECDE92F08D3142209FBCE7B5C0A840CC767BCA56C20
+4E4E545E2BE4D21C53855CEE4CD0AB35D1A604C0FFFF77DBAE4289752276559F
+A05FEE65F45ECAF44E95E23FAB6052195C7948AF0B1126482D4E02D72BF8AB03
+DE0F1A632F7672AD9DDE70EDC82AA993678A82BEAD0BC2649C4707FD8509810D
+364B5C6FE0E10772E95288C622C2F06C634F4DF8C7FD1432BC9310D5F24FEE3F
+7AB324863D6DABAA1576E70643CA79EF4D7DF4105093D66CEE0F3B87D2164A7F
+26EA05F5C4645B22D3E1BFD2219657712C168FD90DE801FB0F32759E80DEC1E1
+43CEEB19FED12D757205043FC98FEC62D6A8D8B97BC083B4A0E985AF7850D6FD
+8716B9957C1C35A0675BC53DF672C425C79F43FDABAEE7D63F092CF271C9A9D7
+C41F40C4189510987887942E60A412B3EEC84C9A6E1AC7D54D528F5604B72C08
+94B7882621A5BF1F325B92FF96B80878CC550D1AE4D8196E41CB1251856609A5
+C4D3BD05A922D0D45E039D9450DEF8490A3E924E41434194910BF60BA1B08BE1
+B41824345627745541A4F1703E956328F6227D11C74946B38CFB096139979E56
+4E723B889B44C6D78673868C89912F8B4F0B4B485F1587A637B630F92E6072D5
+7F3B44EA6FD96BBD4FC28A6C1D90805E3BE3E42A7BC9C880762966C55BC04E01
+204D083AE976FAE6F37C94F27E68F8C0F28D52B17F6C0FD7C9150701FD78F8CE
+B8E8DC9260E3974005EB5CA728171F482D765016C94D4ADFE4A42EF42212BC56
+7E4EEEE8B0D2A7856CD4E44F55C0BAB762F92CB8D64C17022D4BF3A47C12F5E6
+279FC23101FEE93753653CE8CEDC3B75C9CCB29BF1D4554C6120DE8EE750FCBB
+E38B5D915206974962E320362E59B3F21B3AB1875703191043D03284D4467346
+CFF2F98CEB4845B73ED8E003E0DC94251B73E13A9B51A3F1430BCF6A21EB9B7A
+65E17FA411F53BE6432F1506232B8159E008FA257F884A4A01AC53BE91754D78
+BF14A5B0FBFB9C31BF4908355F8A762052968DF526D118708CCB0B7CB5BEE285
+6DAB6CD2E3934178E60BECB11AAB5478623CF6C50C92F8BB5D1A583609028FA7
+B8A53B791BDC9EF76A124F3F7641857E4BEA0837CB36176EC9A522EA7F41B8D3
+63C37D1145367BD300F17B54522A834BBB74DE12BF9EB26ACE6F24A046D58F89
+4D4B7DF74875F1A0C1C9D97BE0849593D7B398EB4B00BEBC8C8D1497B6EF831A
+A35380FFB7F1AFA4D888AA52C9482E8B1755CC209905F98F40D95B44D4DCBCB6
+67423D1BC2F3560FF0A8B4F0CAC352A4EE2C1D946E45AAEC8A6AD40303F3382C
+DF0756BFA3B1ED64C169E56ED1C760F2FF0E24DC5C9F41306EF8D2628153D30A
+5DCB0791126BEFD4947D7EF08301FE015F2B0008DFFCBF9F2D4D859FD43EC7D9
+C5BE237E9BF6665B7B1BEBB362F0C0C3A8D86010B9C97FA741C97C2E0513386C
+9C26C235B14DD2A58BFDAC7B5F63DB4DA6D5D37D0098175A9071590E1DF66A3D
+B8173A047C29D7D35557F06132CC920B5460B8AFC11D23D09A4E45D089F5EB51
+963FA1A6256E359D485107FD143B2BF21FDE9DA5744BC2615E86C31C89470CF0
+D06C6397D9FCCB316EA9989430240759D2C4945D941F159FC02327F34B042BAB
+B5C3A47C78E8C1A6FBCD396B1A51CC4B020B8AD401841EDABACECDB482D6EC5B
+72D2BFEB4556720FADD49D07307C8B22ACB7E310CA4151A85C71EEF70E8D15DE
+B3B00F26E0E166C14647A65ADA228A3D1C89025BE059306565DB1B1EFC37D358
+8C1EB024254AFD049BA977BD4C2C605050E17940A89D0D4C5D963E792320F5DB
+3706682E03D25D9E02487247819551465092CC22B6B56E93F3AB528038FEC3F0
+668F866707A19B0463BE706EC729D2EE1653AAC7E29BD25BFB3241D4792F5152
+ED415B4E7FA92C2EE5A22E27E8B75542C492E56D811C192E95542A6FE0BFE5A5
+69273C2ABED4300D491B92D2AECDD278404CB84B1BB1BD7AFEC858215837D118
+C0E928BE7E07CFEEB51A6D21375B772B8248C994564014015232A0DA4BEA1754
+3274F407FED0837A236371F1A32056240F2015B1E7F4B2CA72C6B58610A66F13
+407CFFBA5E0A2893C1F572D50F51286E9133B5A84239C9493B0574E77D281D01
+11D00683354A000C9700EAFBC1FD104EA19DFCB87470190E7E2CE26E3A6FD0FF
+2620B87B82AC8686B6206B530F17E9348BC7D04B948348802CE53A312443DB87
+4DBBA5313A6A2A8DAB8A1CC9A594FF8C299281C0A261C8CB2226B732FBEEDE40
+2C6ACC74A1A61379E2E1CD5548CD908268A32FA83D8504C442EA0E183ADBF7FF
+9FD09C037AB03516ECCA93FF048235BD11A25DB07F164512A079C5392AC7F889
+CE96AE5C8D9580BCAFCC087C35E76EED1A671E87C12E3045E15A687134736DF8
+DA984772AFD189D68571A2ED7256F1E204230E41D3D9DD876F938951714A3973
+0CA9310489F8E807C1C7A4E51AEA5BC030610A5D7263FF7E0F9FDE3E5E37A362
+5B919000BD94D978583B942EB79CF2BEAC33FEBC9A67272EB10865BA8FB75FD7
+9D280AB59F91B96C16C982DE848D76D8FA8620DFD7C80B7DEAE7264350D6FB3A
+EF04794DA3305844A7CF718F6D1A4A3AFF6826173A076A1372ABFC54ED3AC6C2
+09C9287FC830556CA694E21CA5342ECA7B10C90AFC4783D841D7B1E34FA3DB7A
+2B706F3E21B0FBAB23E7257962FC3BC309CEA2C7239A9D6B44CC96825115ABD2
+AF9A2566D2F3382C01569FBDB94C8D664A5DA0F7DC3DD140CA77C743D7BC1420
+324ECF9E4780280EB119885E96A6C619CE3C0C8E1E264E2DEB137E5DC8149786
+486D65667ECF47B1A1E20E9E6E4FC8323E0BC8E61BDD3BCDFC6575C69C03E31A
+EFFC290472CBBD049DE3F840AEE37A2486034240F80E75D8A79E0762377DF660
+52B12EAA16D678990B11A9BFBC03C1D4FCDA9FD4FFBB3E88352438102F10B7C5
+9F04C013B6575B5E948FAB58EA691984A0E54E6B9F3F505FFFEF74D06FA1CDF3
+4B8A95904C8A2763AA8AF5B71D00F5DE09DC1CDF87A08B6D181453063E14C12D
+B7BB3775A6E2A901636273D9EEB833EA8CF20FD83AE899E28DADE10EEEC20BD7
+BD93085A4B1AC80AC1AE8280C14767F1A487BD066007A0D050317BD081131A14
+6EA0898ED59E46DA7B6254BDCCBC660686E2EDA0E77A705A653733BB5C5497D0
+B130359F866CF293FB6EF0C2AC5BAA2DB0DED045E2DED3A2612D078333260359
+16CF0CCB272D34767EA069E0F0B0D42327A18529D72E890EDA6195C2688438ED
+E9ACDBEED41E81CA8EB5E43C2B09CE266EFCA03F2D7FF57F12B06F9E54FCC6A6
+546676F6FFC5B8B7D3F0982B6FF0D21D949309F0C0B175CC1D0976F8C55C6AED
+6E821C39041E22D91AB30922F2B2EC2746BC7DAB484991542FBC82D87B487507
+559AB466F73EE23C2D3194DC5CE4C9AE66D3164613AC5CBB3DB501B64DA7C91B
+C7ED2EE9027FC0906820B35D4F2CF66C4F9CE4A884B7C07155BCA884ECA5EB3A
+ABB83F84DB1F5639599DC7D3F51241AB5D95C3BCB7AB1EC90B4BC989F74FB354
+04B2D7366A34D335A47B8C00C05CB423482BF6C7970A95545424A08AFF9A035B
+7F83F52B65A9799CE76E303B85664B624C65E9CA58184C7BE2BB9D9C86A4DE5A
+8165EE3DA2E652B5022EE7893896BABD88931DE1D538F615787645DF5ACBBA0B
+A8E5B899A37321AA7D4B283AC9234978C2DD81813A1EE5DB6EC170DAC1B6EF02
+94892635B498765C07A38D2E9DB0B7581B11056C28278F89B0E60998379C07EB
+C0EAEDC32AA69B8B836F92A61AFD35688315B2C3F860632FC13E4BDFB63214BC
+41CC6859EAB3AC3034449213CAB99FA1D216563419CD6D6CE4E1B56F33E6C654
+7AA9DCB5B05FC068DF02AC32408C8010AD004F6CCA9887830927F8CBCD49CDB5
+18CAC1EAFF815FF2F6F527F936948201565003022C6C7390B4E3C2B219FB4F76
+9F12BD25CA7B3B61D1A2F8DFEE795D04D5428B42FB66E0C254AF7B7A10CEF7FD
+E5ADA5E217BE24851180E9A1700FBA66C7D2B0D7BFDE4F4EED1D24B821A40947
+5620363657F6D048E651A689822CF815E72FC8AE9D835BE31D1DD8B54C9A717F
+4DC319B4B59AE073936EA40B070524C7E71D5A7B64436DA107749746B516E29F
+E3BBCB8F8C473E706670E11E5B221716F315FF097CD1841D0069FA69EA1898FF
+9F9EC2518C77806A19730C97F54BEAD604548D553D4A6EDB247853225E24E7E9
+89D71F6BC94DB986467E755CCC99069B313F5745B02B4BB608A39F0A0A732B87
+7EA2DED68219754BF1FBCA350327572D769C962EF9242132D93A5C8E9725D8D3
+AAAEC15ED0F362471AA58488620156F3474FA59CA080EA96FE995D2B3DEEADF3
+3141D157481C66507725ACA5953CBBE1ACEE7E3F02C72C6552D15EB3D612730E
+61A06A43575568DC3CF3844BABF04CA767E2995196097015E0C4F622C4356B6B
+F41DBAFD797A4B9D7AC22332C552043EF98913D0D9B50CA6B7CDAF903BC5C04F
+D20A952BA5CC35B646ACD0A287C956B98C450051AF6AAF79DF37F8954473F8F6
+652BF03AE2AE82B99D820CF93F5FC0BA17EBD7AF90313E70594EB5C354023BFA
+07912408F1757319C7288E99872B907D5AB583B082EEED8AB079C63E38B07D11
+6744856E689A479CB3A8BC081F33CB06755926204981DC0A45B3ACC18F6865BB
+EE2C50DB43B62E3630FC1D9B1FFB3BFFAA6D0A20C0381ADF48E4D916BEE85BA2
+BB40F538F55C11D50F882B73913840B45161262BC8B0012694C3EF26452F9B77
+2CD7C7AD6BFEEAFE31C8A721C2D46AA00C10681BA9970D09F1E10DDC250E2AC3
+9A160EC8C9654FCEB36AC2B586E978D54744FC8A0E963D8EF6E228ADD22D093B
+B889C940206F504F14DD921D909BE06EC9BACBC23EB9E9D137FBC983570FFD2E
+CC5D2EB5D2A4A8604A4AD418B800EDC6B89809E00091A2315EA8C071AB631CCD
+04C3EA77541646B7F9D70B7EA564D92A65C4DED8966517660EFB9F77E172CD8F
+1B5FA83270898C3709DE964B0C4A899418435F92C13E94F5C1C5B9D7DF3E8793
+5F9E83CE1430E3EF275A5169C1005B864AD5B7ABD694E7D77B43D157B6070EAB
+843B16BD639F53C50A48E040D063779B47F67AF0E115947CDE6A0C9DE8196D3A
+E61C1A57B150A5B386F71C863ECEB8ACAAD9A9B92C336A7B118D8D5B1FCBD698
+2637028A7DB25D4314EE94974E09C2413E9C51A2504CF5B4ACDA26CE82FD1900
+CF01D52F946CDA5F6434B8BD541503B1A1BDA72225592CEA5B55ADE52666C150
+B0FFD1DA9BBBDE3C40E443C917C0A91444CD19BA8FC48C88835F09F35C6B43C7
+C81B914BB437E99E48FCEF5984A0E10096DE7CBD0AFBD750D7BF11B5633DC364
+6F547C1BB5DC55F4F2108D1ABAAA7CE8CAA45AE2984FBC51954AEBD3D188916B
+B0C5FF9339A80310E4A90B3E8CD587CDABD9D54EA413DE4E7B777779C2022362
+96A9052378EDD3DA31F05B94979170169F1B43C60BACFAD96C76BA86B66DC30F
+BB57A48CBCB99683368A8E087D65343CD9DFD9B28DA91EAA3BC9FAD76337D87A
+047661444966D02502C915E2823AEAE71C7640BCC8AC451239E34711D34A753C
+44D5DD5647148520F4B28C97D8FF00A10B1D34592A32E90CF70EF4A01F9CF8AC
+5EF9C240EB792EB337DFED508E5C91D91A3F16D2E067208120CD058F4EFB98D0
+3C634F3DCF13881E7135C3FDC75362064CBC02FE1DFB6F49557DE90DE0C12A1C
+AA5F609267E04AF24404E050CDB6C3D6BC5DDB715621D4315D4D30E900EF3A5B
+03D6524107544DFAF0ACE84F19C2119ED9CA58E88C81FCB5C33A327A8DA8CD1C
+BC87E83C7AEA2E430ED13B6F1B9E6045FA02C88B025D5CE7D6D191883B928672
+AF8E7B0467A90A15680C1610576D93E6492A99787D4E0D49A5306DB04502D5BA
+2E9DC1DC55365D68F27B9FCC33D55FF35C41EDD546F479E7D69B54B3BE72ED0C
+62C80AFB76758B53337424120BBCB1872EFF9859B2BBF5F9B82BCB01902D7268
+65B72FDE5A7C8DB2A7A03C9E8646AAB65F552E9342902FFD80972B325816F999
+AB36938B6B88F8D84CE7EC8B95C459191023377A30F50EE2D9C8C41FCF685389
+1F4BA89C1547A41B767259CF565ADA5011FEA13A782B566EFE3DBF496A99DCC9
+543E261859EC309993B0F727286B02F19048772DB89984ADC5EE723C48078B9A
+79E0B93DC55249EB4AE55C975CF75029C56E88707079C24297C206B35C0F52EB
+0D3BDD760EAF8BE7BB9A41E778AD0ACFFF1A6C37F1AE3E7AD1990C7022449B76
+7A23C9B0CDEB4626B42C96306A9544DD84D640F525DF20EB1EDF35AE470BCD3F
+B4F384E51CA45D81C3BB20EDAE1B6C8B109BC6C12B8CB7ABD01394E2CE389A6D
+7CBB108D67C913765E081FBA3E79CE29FCDBA0850408B31A55D6FBF2DCE01478
+04BFA09E8706E8C9437ED67CD32A37E836CD1E17F99EEAEFE28541BAA7AD8145
+225393FD3EF8D033328E19749F7D700E64B829F82F3A7C8499B0FC557C3FC783
+38866397480538DA97E4FB6C63CBD4EE16455CEA2832C5EBC2637574DAA16916
+B8B2868A63B44BA3EC24A6314835DBF2D38BAD05F14E96741AA7E4BD3BB7833A
+D1C66EB4EDA345525F2447BD1AC8E0356493282EA56C6ECC81EFF7A74E1174DB
+AD3A842B36E0B339F2F83896892EB69F7ED2BE72EBA0BB60C59D40F48D09320A
+591CCBA48D1D05BFC34D0B31735BB9A6C138E8615E21F1554432DEC1E25C073D
+0D16E9D6F0255D88E0E87308560F434CC0E7DDDE759166759765DEC82366284D
+4BC47C4DA087781B275B5711FD6B2279E9D4CB734E1ACBF2A59249A4937E75A3
+79B263B6DA1A3516E90DF279D2D5E0C97ECE4BFC98224B9506D90AB34063E508
+A0C4DEDEAF4ED82E1BF056124045843102761545870DF537009C00AEBB04D578
+FAD4737E69DFD916065B1C34F194BEEF7A2CB60CDDE431A0349D36A979BB1884
+3C388AD5EF92932B86E5FDE6558AAA21C046DBC85DADA57DC476C1339AE9DE58
+34371106FFEC2E1BF06BA289F4BF1233F53321A57879D8E1AA7A5DC71B8F705B
+1AA8697A500C94CCB3AE355200EFC6B9FA03621E0543A84DD889F23C85091CF6
+8205E2650FE6376557B19A9664C864AE880125F06EC5FFEE834138BD7BC43BE6
+86FEB49300C39EF66C73814880994B414731F0AA45DF19EEC082EE27E72DA39C
+71EB0EB707D5936DA04EF89E6900E73866F56ABA3B6F9DB5575462F1364A7B16
+30CA0BD02D13D7875008CEECAD3A540AC08C46261501E9CB24318536ECB3EA76
+42ED1B2A49C20FD36B31583A2695B590A0496A486815A6150C0BC1335DB50A7B
+9FE25238CE3295507729B4FD2D2AC515EEAC8E07578309FD7351CE86D4E2DB76
+077BC2119BAB40577875000A90E147F150B8E98FBBCEC64AC7004C28C3C7CB5D
+045BB984A519FCED4413A9117D008FEB967EBC92504F51D3EEC517BBCD2688FF
+913D3F49F86D7A71BDAC55FD47082DBE0067691AAE981F94EE504FA1B79DF008
+11BB5237A95479E4E9813350499ED01C6E485D399717A3AE14785C8C69D836C4
+5624577D5FE7FA8F4381A343C8646CB7E1197EE9CAA4370CD0AC9ED69D15F816
+E38BFD18D6DFD222EF239ED19B1A5E17BE8DBF06B24BED099BD4ED00A3A0AE0A
+653C08A3EBDF22FEFACCA5D723337B886403B701ECAB7A2410D91B2350C9B349
+B72DCBE46913459F089EFE0C9232665F5E79B5E28460788DD1ADD12F0A4AAC43
+2A02E6413AD94EE3D2A4F58F34886F37C2D18213DEA42B39B6759C59A2CB5645
+DEF5BB2CE952943C7F8B51B62396F4A8FB1A4042652967EB4F063DFF43BD4DC9
+6663256ED43A577B77F81BAD98DC1344787B04B7E09BECDA35DC497840DFB401
+91270EE3BFD711367F67F5F9AC09ACDBCFCA598C1C84F3704BDCB50479413FDC
+C1CEE14D1A67BCB8C1E42CA3858B13E52C9309AAFAA6F9EF687CECEC6ABEF325
+0922B3402092CD52FADA2CD2B2BD502D6C566B0425559FCE9A00386490A8A577
+3046930B807EA00345F19ADEBEB7DD581C8E5A011C46D4FF59909EB59D1EF237
+0C2A49669AA4339CF26E4199D500F52589F5545C25DBF6F108411736DA09E872
+2259218D7B8DB91740E954DCA4A6667BB22C849A72954E3754B1C47243745AD2
+A3D57CCC9E35C93FEC0118A7769996F884789F272CA43BE6C9B54D726DEB10BB
+D456C161EB13CD1DF6AE98F6798010F76FBD8D4C718A6ED15BCF2FBA48D1D361
+6A63D93DD0005779B0116F8B148DD87504652967C67B4AAAFB9A3C72EDED884C
+A932EB02F3447CE092C85223E50F1695E2F60775BB1225F94FB7236008EEEF18
+55B9A48D28BB363416C0958F01305C9EC94B754BFE4B548B3A650A50808E3159
+3A54ACF96E55CC78A5E876FE6EB0B3A2CF8C5F604E26409B80AC6AE54B4C3C03
+F4F9B2CB5B6DC32495D5247D877453098B1CCA426DB4BC12DEABE00DFD67D999
+73200D0779A7FC96645630504CB449E94C749BD813E87844C8C9709112938ACF
+9BB26060C6DB9E198E1F5792D3B9E8E52ACF97B1D8E1021F51C47CEAE7F14357
+1C36769B6559E8FCD460FFB21007E49DF356C1F01CF78E6D002A07986293BF57
+C7C11141EF873A4D7DCC46BC1E9FFED9B1D45889A21A1204D6ED9A98ABAA446E
+C0821754B7FB62AAF8178718AF1A38804DADD238C05F4E80CB1B5C5151305C3E
+0878838D31234CEDB70F36E38390D473C3717014E77EDFA8DE1F54F2FB3B3A40
+EF28831334E1E727FEE5D60CA1B0784E9865B00EE8B410B6B921EB1A029A179D
+B0D892C920334E62A6AAA8137C4B8A7D6312F3E8F27DAA9C755B75CA93BE048C
+E142E4743D5DEC93729D362EF1C610144BEF6F00035EB90645567DEE2522A50E
+28BC0AB58790AB0459CC00FBF0EE23940CB5E2DD650908EA1795C412FF9DF3A6
+109FDEB484A8B9100A315D31849F0AA9876F8B9CDD64765EE5EE2483DFDE804C
+B12FA6B0EA6F74EA5BEAFE3D947BA16CC916C66B17FA3B8C0435161A714F0703
+88A37E7A9FD889FA29952DD52E3BA7C864937143FC6822A658871C88608A9A9B
+351FB780D11B72D1331D46CF68E7200F0AE4A82B64C2FCFE145F8D5AB954697E
+4F68EAA114B2B4CE8F32188E9725D8D3AAAEC150959C74B9134DD46C874040B8
+447CFF35B8CAB7349313C74D63DC4518196CFDA8D65CFCC1DE2CC2DFD4D24FB2
+CEBF1FE1C6ECAB54588A59E739DBEEFD716ACEDC22CD69ACEC454312EC1DCE03
+8F8B740631E360AA6DBA1E54991EC7922725600CABB41F639DD64D65594D5BB7
+300B2A77A5CF0158D31439C030C0B76180F42BFBF941CC362A11E0BF7854BF43
+230EF10B6DBE472F83389D740F5BC1FF862296A31BA59D2F24C230F828A4F187
+27A2C122F5A959F052D673C8B1966B0AFA70AECAABFEEDC5718176B275775201
+469C9D0A8E6FB7A4E67284134AB9975585272C47BA5249D5A65A1BA3ACAF5BD5
+71E5DD513FA8FBE2AEDC6269D84F7C92D2BF0CA570CD6FC067FC70DE0B05B11D
+24D09BD925DC59359DAE2A50778D5252CCE225E4259AFB2EBBC09D2A62111101
+B54DA4D4C40E586B3DE6C5FBCB5F3199E6FC664012F7921F36ABDC5F9716ED27
+27A9B86D2316AC08788E5FEF463E9A29290122B3079FCE6DAC04BEF74FF305C8
+937B89431F0276FB5C0FA52C0B89FD7E5700FD6DB73F5F5D88044A8E85DCBC79
+78288260AF33B936534820753AD0B50993DCB4F814A74AAC2F624BA1A1A7B887
+DAE15DD109245B17C4CD5894E18665C2568664D0036D9A3CCE818C382EA430DD
+D392F93F6CE1A96A706E3173E7FDFF11507F563D618A76A8577B52FE7EF710A6
+D336DBE67434BAF5039BC2C34CCAE07F425DDAD61FC0F9455B89CFFFE2CA0800
+A42FE1130CE6B1554812FA1291BBE07E0C67E5D6309438AFE84125A02D2D9CB3
+A071B1CD822E89289ED25BF62A3557574A05A987C247EC9100EB23AD62895A1D
+1B291AFAF7D9FAC3F3E4F87F4E29A8614A0F8F8B52F0B9B7BDC994EAEB7BA5E7
+BE1EDEB4D4909B0B678B4023B2C99A2FC4D11ADFCF22708B4608243A1A5B55D8
+09EE8B4A4E3EA754AF2A66163983C930FC2F5AAD343618C2328EB925A0417B90
+118758B7FF4133BE34F5C01C6EA2309634FB8D2B9C7C7E0EF5AD6B0558660D76
+0FA888F7B0079CFADED254ECB19DFCACEE37B15E547DC1E0222FFB6E638AFB2F
+4CF2409F17FBAFA610A9B33421C05DF87F646028813B2F1590F692771B9EF9AC
+B31BFD48EA3ED7AE561EA78C8C5C558FD5ACB69867F89ABF0968CA97E8908E6A
+585F1DE537DCBF98A1C91C7589BE5E2BC53216CB850128192EB1CD3A7814FF17
+E96BD1BA6669D5226AA3694F18D3E5F9A2D82734F3375F752F3370CEC1B60FC7
+8C07412BFC71B00989CFA6DF356C79B7954C25EAAD5DD515EFFF332AD53C0C6B
+CB7CB98575E07D868CDF2D745500630C03FE16638AA12A43413F06237E793FBB
+314543F4DFCF30C47F465656EBDD39A2EC7710943B70AA540F407E92619AFFA0
+2C5358C6BAB6459070671221F2C3DDB440055E132A5B6CA435BA896600CEAC9E
+E871FB9413BB748DD0140152A2870FF69CD6F6094D142621C414569978F12A7A
+34048454A3C60A99FEC7F9D22B1C3E5792EA41E708598309AA6A6B73986DA6EB
+06D6988839AF7D7DC1CDC57B5A1170984D135CBCF7A28771CEF1EA499347E42F
+DEA3FBE3729665106605712DB6751CADA2BA4E49DF66EED0215FF5E5E2DDC173
+6C69B6543DBBDB4B285A454862575A98331D84645956323FD9843062575BE953
+F76DA268C4D90E3BDB2299262F81F447C2A59709A90D2C40AEF1AA5C6CFD37C5
+31D238A2E93814F350358756AB05B600523C00E81FCF2FEE494D4B2D3D1E47D4
+C180F8E29FF48965E7EFE8D198B05903E450D781E53190B12B6C9342356AC280
+A1383A6B0269B07C75521EE3E96472D8C93A20C5AB47E59EBD9398F4A1DB9B72
+7F5C30FE608EFE260DE155F40040B6100EE101EFFA72A577BDD282E7DE7435DE
+92E869B4974752336F77E851A3AE47EEF9F07115C3D31AB13E71AFBF2C6D8C43
+9FC7EFE397DD343D1F5474DD6770EF1E0E974D3AA7B9C15FF71FBBDE903FB182
+ACBA54704C81644E6824832A44AC7D974CE752D7BD3FD71F05B5701A6C1D7A9C
+DD0F34CE734EA1D8F49D7D630B46BA60A492FA4E3F8E35D63A7D66F4B4D22FC0
+374855F2EA5674FA1BC165962828AD5150F01709FE4B61D0A67E4F97226C4A73
+CFADFEB5A4A7459D70B56CD9734D043789D94432730A2C8094677CE6AF243D3B
+0677E04DF971D8205C76F8B1AC1F0223E0F7E082792E0DAB8416AF06ABA6227C
+09314CA860C7CA05269AC9B2D5D1236DD6FCC3BE9A2B89F0180966957C0B3E74
+0A4BA9F30D0EBAB162662BABE41432CFFE928E9213217E0D6F6A752178D37425
+B356DB6981BCD46EBBD0303A30B682962C3ADAF33D32D98069EE7E38F9FBCEBF
+9EC257B4CCE9ED34700BFFF7A5221BEDFED589DA942DC3359B885E983DF0F108
+8A69A2B740582597F40821458DAA5E847CB536D95BF84C0E15A4E254ACAA465A
+60FC882D67CEECE67FD029199237B98DA4027901451D5FF82AC1DD60BD7A4523
+402365FED48061DD6362C9CE9F8F0266E557EED5205A2BEEDD0BAD6F83FC7B65
+8E7BA9A15E1996916272643AFCED4EBEE0C38372E394C8BAFF9EB5ADA460969E
+5B92C8B6052B034C9B0453B0A7397FA8F55202BBA4FA2CCD5F86BB1613DCBEF6
+8C1800BD37B48A23B8F9C81E92AD3E6DB20BDFB06D416499EEEC2DAB52E6AC53
+A8E9358E1719E03B550DE36502395FA7BA10489A45E704A871B7D91D5DAAAD3D
+2FC80FE9F19C210C2EB9E210F83B0FE940A709AB5E59151FBDDFBA6072C08864
+DD8A8203C98ECF3CBA0130D104E4ACB01B09A3C0AC54C6103BF27244057C0BAC
+0869FDEACB89A9A8CC16ADE5036432ACD035E1B67288214C15AEEE0F10BBE13F
+10AF681F8A43BE3055E87660AFC27B2A8DFE4BF68A9B219F2EFD0A0F5912A3EE
+23F807106ECDDC5857424D53DE9E16492E78C8635C3C26D5797F82A8247937CB
+89D16224F256FCE62B13D8A27BC1E36D87454F196C0EB3A42CEEFE622B2531C4
+8A9520525A39C159856D03AE116AA264D2A274CD739F6A9A462B65E0DD1AC90A
+D05BF827E52858773026A720635D5EF665B5923BCA032893CFB04D94D1E61362
+12D034F1968CB669DDF5C0D61BBC0627D648E6B3AE0A02211214320CEF7A01F6
+C9635146AA1EF85548101F0826DCD8F38B5DB350413C47FFF7A34B17F6F12891
+0927088FAAC8B246057D7EA2AA59C8AB538565E0669969BF3BF2E5BBB24CF7FF
+108A9068937ED1134D4D1C3CAF5F6BDD341813D799EB375C10E7945EF2A12AC7
+388552ADEA2832FF5D3BF9F046C9204CE41B9720AC0C26C3402F1BB9209B2AD4
+A9A580F2306C9BAB3E59241B3DBD5D8AC9C7924356678D5905BE1102647AD31B
+D2E8CF3923B308232F147481BCB2D7F5B413DB875796BE37A22AF0F202637E13
+FB0502DCBB94EA7DA6A4FB8AB42298E7E5D3794153749F162F3EA9C2A8DF2BE6
+0B36C32E6D0A8421FFB276424FBA628157411AB13C014DE11BA22BDC6B1D8577
+93E7996092E2E5E6BC080CCDB5F1A2B709293E26562A3B1C768DBFA43A9F1DE8
+C0F5316EC5B0ADA256949D8F35CC1891B8AA800E9560139FDD35FC22B9D97189
+C2097D945A59E8EEB21BA865E94FCB972EAB369E56BDEF41315FA820D6ADE912
+2D3FDF1F875A494666873429AC429977FA2BF287425F15C7B70EBF5D602D0AE8
+4182B9EE8FDBA842C82768B552990EF935042D304986BFCBAE0B0961A95A1DB4
+3A2FBB3727F310813505F33CF181B10DD0B210706B03C88740EBA242949AAEB7
+91A3C121DED74637BBEBE647FB8A5708D1616E642A91666BEF8FBC10FCE2E49D
+333AE3E16BBC6BC08C8DDDB5410CC9BF7E40C388884201A7FB1E87FD7C080036
+49E8C98AB15D6AF684C3500602BDA0E2D9B5593DF8723EAC4E46FA882232BD69
+579049DC2E54895E8B15D7E7222714D3CD6C4AB8B56537DEC20CFA8F776326E1
+EBCC52727A71A177D6721D7FA6AD1F4069A92E70C3437D695A82AB2C13EA2E09
+20F5AB65D1CAA1A918E6AED5DAB56FA0543316359E940785C1931312B9C97CDD
+32DAFFFB6FB164454B2E07E4DB88EC03A78F36C8556CF4937CDF58E2F0CA6E30
+97B04AF98BE81E9E35232F1632E36764FB0372480BF2E40F3F96D418896170EB
+8564F5C570BDCFCB8287EAED4A0D78B75F557609D336119DD4768326AFF6B561
+31CF899DE18855AD440A4E6327C8866D08D9E8B83639067DA3816E5DB972C297
+9529D2F4231A3D5542A67A3F6739203C1D6F6884A5D12CBC78C06B69647F4258
+553CFA9D68A6EF2D4B8E20F7DD6A0E5D16974E3843148EC9D7523438E43C1884
+EBF29C337243C46790D5C722AA7D9926C45516493F94DECC8D17DCDA3BF8D7CD
+FA22977D7A9CFDE2E2F5D1E8882A73FE2F401E17A2331BD977303F3D7FEF77E6
+62F164A5407FB4839797F59998D6A5E57528D187FCECA17518DA62DA15BC418A
+DBE3A8E369F2FA85F7B2D29E5246C7C57B55AAECFF4934B8C14761C7393CF504
+04339361768087D510AFA526C2FB6222E27F0435AE49585FEDD0D8D4CD54081A
+6EDBA1F260D339B39C6751940FC0B8EE0FF03951C5969AA4F9B5BC70B26232B3
+FB83ADE52D20A617C927AA72D434FA982B59D5C64D782F7D28EA3040FC3709A4
+11F22445BD2AA2FD27AE78E3F9D6D1F5F9148923736B701B5702317CEDEEFD4D
+E00BD38C42CD824EB1E7AC6127A62280C5E623B43B187B9797A83BFE4F25FB99
+C2C820906F33427BE9CBA47462C2C938FA9CD28B70C52B15B159EB1C927650E2
+9EE75C89DF9C922B0317F9027064FD2DD99023030F1C29F213D683120071FD9C
+1AC3D54C62D5887117CAB77563939CDFD4865A5AFF5503CA536C4C78BF30A578
+99067A9516ECE8F29922C272DF9212565523B22A11DBC1F8AC330966AF134AEE
+5A0FA16510FB9F6DA2F7DDEA5C43E1DFB828076A9FA49DBDEA51EDB5A2002254
+81BDDC1584CAFD5789FC5956F913B551A06F38AAE7651962D706E0A75CF6375F
+2D8F006711D7107AE228E9E7EC95ACFA781255580A33E2480AECE92A8A60B8C0
+0CCE291F21362BA6312F7CD4F5BD2199FFB6326BB9858B28D4D907AE02FBF900
+23D8B4079E94F745B86BB5F0B7B18A8BD8712CD538A67FC57AB2866F49468A21
+5947316C1A52CA35F1DF81E05EC96F31B77CCDE9E33230C61B70FF181321B5F2
+98C1EFDD156733B7D9E82CCD3229B583DE6B52DD3BCB412675A9066EBB23C79B
+1FCD7821B3C0A6C25812A4AEB683B689B12C0C3702960DD45DC2723FD557B36C
+E400851AC890B8F676F2D111DD1CC9EDD33FC0E344CFA334210E45DF3FF1BC25
+1F610FCED2833788D8834C57EBCA7A5C9AAA61D3C6EFDF7C6404FE7B33545D4D
+507DB0B18E4FED1FB356A63667F94B1218C3D295146C7B9CFF923F968C9272C2
+5984165A2E7AC101671249E41C9F217398267508558163C13C61E233C414AA82
+84DFE4F052E84E726F4DB30DEE1D3857C6C193716510CBC13EBAFBA915B755BD
+36CD7C9714D2787799BB146363C0D54CEC3901C273D51048902293F3E531024F
+77B0E8F58B168758506E2702898BE5E985B54FD5FDAFE78B87A0BC17DA64574D
+D810BE058A66F9170354E9B8F5D201AA5A6A6AE813C378A9B0A3B12A63E90747
+D1F64E309C65D84E62AF5FC3AFEEB68B889644B14979E5EB43EA2BD7176F6BEF
+B9CDEC6F0075EDB9D6C6A7694480B2FDD7ECF145FB5D594344159AABF915929C
+46156BB32E9549FAB5A0F00DA9AD6FBBF98F07C509B21CF9A12352427915EAF5
+34C7A7AD1224B52A3434848AB0F1FFC42738B6487CD795BDDFA6721BC3D87C42
+A14BD954264ED9AF2F3054D5D0C74F7E2D4F222FEFA67EEF8FB207ACB0ADC5BE
+86E2CE769DA9A67E4CD81BE5A92D77CCD7F30F6CC4033B531BC256632944C8C7
+835FABC0D66D8C96C26C353F276C69A6DF466380605B4743D90F988C431F63B7
+424F84340459B546ECD2300282AB8CAC88FB70DB77D6C78DAE20D593CB4027B0
+842CBB910FA54DFB7375F529690133D923E5379DFDF85B331DCC7F45C830BE6D
+7A26A1C31F095C2BBB7EBA45013868D61B2436A6B7E4409021BD369A98BAD834
+DAB38717C0D90AB4064842EF398929164F1AB26E20A4840541F40E6E531DEBE9
+38F87BD487ABCB3F2832933134863E315789DD8EDF5E020B27F5307EBE093057
+22726323173F324AC4201E46E7627D3823707FC7269CACBC2F407EA9F550BE90
+1BC6153080961E6FB3B06B3DEFE46A81C7B78850D9363A58638576BB99E8D14F
+B5F21F1138DF5AEEFEBEFC4B5C07E29D614EA3C3B8C8002485CB219AD2E474B7
+B801E4083B1067D1B025189CDD562B1FB8D168CCBF2D1AAB2B301564DB8D45F0
+3B5386D24926ED6CD438019AAEB4CBA89E6979C5C71ED6D72DA4688EAD3F9CE7
+8A29A25B3C9DE6B53ACB6592E6669042ECB5E23B0765142008AE4903D01C0D17
+9362DDF3CB7E7F27A9167F069EF1E3931BA08269E7D9C3FE228BE97D92BDE776
+297807DAB61C3033FDE5AA96242BEE2A12C7768FF7546A475CA0EA6AFF204F0C
+F7142BB2F8604F424FD6DC2878480251009000526EC943294A34B1A1C5F7341A
+3BD29088758556CA3D89AC429A5042A8F42F74AAE50D5ACDCB21633942B10D91
+D3E22BC4BF92E217772A4DD49AFAC8C256B01E849D442BD9A27FFBB7A8094BC4
+821D9342BFF2B7AB9F508521C05CC911BA71B5A4AB3BE390D34CA58CFAE06925
+23A2303A160B2A2D8EF663354F14112F8EE815BAF796741328F4BCA76ADD3EA3
+35B0A58C11FA1C0DA98AC3A3851633738936F4B3454CD3BE7D4C14F70DDFCBC6
+8105E24C5C8E12735897E1F2929FD5B49EA16F0D804E5225132983FFA5D24BDD
+7C080CADEF8D48562FA750F989F7714235D2C3BE812091AEB61F77C581DAD3EF
+C21B40D0E4AF8CF39E47A26DEB70970B5D4357C646ACD11485A859A7810C13CC
+DD2715BFDB2F110AE7D7FA0CFC41F262CD8778E1D0872460E61D259BC61CB1D2
+048D1422E2A190399F9C7EC47468409880EC5A267B8E1D6ACE0DBDB2D8446D8D
+67D20BA4C0D29310A88999DB17590F163E205D36CCFEAD57F4FCA87B590B8682
+6631429372BEBF8DA5DBA1B1016720132C999AE50F34CC63921CCE37F3D7DD69
+90D3471BB709F58D7A4AC9C5F4D938D26A6EA251342CF1ED2225C62118E96904
+804E1DAB88EC2297F9D1294234957351FDAE8EA646AF5EC839620EA959AAAD0F
+BA1FDC171ACF33E48BF92956A57581673A7B20A7B19F061949C4242A77B904AA
+B9EE5FF290B816B3F0B3FEF9AFFB1F1A9B6988E38FE9C523735759FAC7560BB1
+A1BFAB5DC360D63374577D3AA05935BC2122DAF5E261C77D41301B87EE738E3A
+3A161185A8B95C4D9A6F21BFBA3BFA1CDC9E92F39272C2CCB706D0AFD8D55464
+23E0CB48363E285F16E96CCECFA3FDCD09C0827C138FCD8C9628136847484C16
+172B8F81C16973790E42B975DB6D56A75411BF1500376BF25D66D4C08A0FCD62
+06F74576CC7BA2AE41B38E5EE55F5EABD6CC757EABA61BA0AD08E1E3019BFDF5
+3BB2D6010A5FB61DE2E53983E41C61A33B7C47058FD1E63D36B1ED4BDBD2B57E
+22D8800677E6DAE334CCD969F263004E229C31B17D8E328AAFFF15F4C1740BF9
+B170396F9EF61D5795147038AD858100FA78E986CF6E93C34E3CD77CFDD9827C
+DDF31B8088E02F7E65A796B12D5571CEB28E4D0065A97351948C12811E4C7340
+EE7253A9232E07A665106BF191AA78AFBB5DC8948DA3EE1F5B3E52CDDFB1FBED
+4E82D2ECA05053B87E1B70E982E9601B408509F7CE390085555D09A9B0F7BE1F
+E33BA3A778D9DF12A9CABA8D589B309E919EA23B6516FCD5156AD3D02F6369B9
+BF197AF88ED0C422DDB70DD9774E82C9D3A3B8484AC8FA12ED60D38C04F75FF0
+1CC08CCD94E0B3FF7CFACF72CF5B5C4B7FC9A4ACB57DB2FD498EF5B5D251F9C2
+9C380D598304FD8D479452A634E3B2960132F37E017C3A4D21B87009737D475B
+CDCCA000F7EC4B40381D42C5741D8F4CE098352B4073059EED014CA862CD9ECC
+FC380228F146A271EAC2E4A6A5D0579DB81B53BE2ED1E2EC2A396AB7BD800E87
+A948C38FCC5538865E137FF34BA68F2CA989A1223CF425A668C4A60F273EFA83
+D92373C69A6EE6B7927FE77C69337537CDE941697377E99803C2031E7691E9B4
+FB431EA6CFDEF5964527187E0F1C8159833388230CAA7D4DC7A46FAC4064090B
+89848A57899F2391128B9771D25E6A060D8A792F8547EB4C16DF4AD075D93924
+47CC96D6F2F01B66AB027805470CF8FD96032EB5FC89A0F2B97BC23BBE0684B9
+6133FBC56339AD1B68BCC35B10F2A09DDD0120ACF593AAC1139BEDBFF54E9B06
+147906FA8004DC34E7362DE31515C872CD7CA148D9B3509EEAB4F234E1E8D1B9
+EE8F66A8BA6C5607DEF9F707DDD65627F94AE00FA81AC5C53E190ED4DCD560CF
+568A1FF5C07F9BF8E7E184EBBBD3C0090D56E1A47E55C8CD446A504ACF3CF8D2
+C64B2C9AA1EE531D5643F56F26484DFE6493D03FD631A356E7EF31BA00B0FA5C
+889F0798B6CFF5CB729C89F400985A3F07A348D383B1B0D9293FF37CD9737AAF
+D7D04380D72C03170EEB1C3B46192705D76B9C0A58D9933332C2B34D76CC0F42
+02306BE83FF73F9B0551DE892F6A22A3223BDD1EB19830B5101F1CE8A459D88F
+B7F02ACEDD9C83BFA28C5605CEEB03AAAE813E89383425FF92BA9068A56165AA
+0CAE069389B80B50B1E71BA9C0D030F2F68C454176B3D2697505A3C2206E0D91
+1B5E361D65A6369D06F57E93AE934A68E845413CFCD9E2AB47B87254095AD09E
+AF0431D05E133AE9AF94988FECF2F2E501351A9AA7CC36B3E35E5E253C8DBB82
+6D0900A13B3814AA81DF64217AD5D43ECF0B11CB02C52EEF59A7F96D6913A04C
+07659DE5775BC3759413FBA7521A63647B7596B46ED1166E280C4EC0BCD035FE
+576104E6AFB8A8F64FE8BC79A2F15EB1886A8A74C5140E3851D25DAAB0329EAB
+0277CBAC974572882AE374CA7F5F18CC6AFDBAFBD7BF94445C378641787A516D
+865D5ACEE03CDDE3398B54F849444D502D3A7523E3F7B160043BF8CF4DB38601
+FD75B6DFFC5F1D01CA713A2A3E9B7F928DC23450EB445627BB513F9556469A47
+15C0014DC5FC7293DFF731A00102493618D9ADAA82AF3FD1502563C4C273DF61
+648A78F120E2F1C73424CCE7E06A99F809C195FCDD345D4E041CEDA5215D7F1A
+F4B1391508ED0A991E89414A2AA7024B5CF52908013E8DBF2D07ACBB0E2AC708
+935536E19B1CE231D48C1320A9C2E3E2E140DF0F707A570551B71C1BCD440400
+5002710B72C9388334F01A197C61296A4F6865865AB7A2475A2D5D7F9D1C826E
+BCF376CE8466EC13287925D499A8E3F2715040FB193B0AE0BB5B3D4BCFB6F4DD
+6ECA883B72D7726CFD03281869FF859BE989E3BC39E36026A575E121A9B57249
+C5E219A0ED62FCFDB7D627143F57D909495BAF0C9C87B603D29490FD796FFB7E
+DF94321B31A82A28747DC8BD34D756A313343A6860DEA7E2959E409B518030DD
+E641E74EC39DC7F9586547CF1EABB934264675144E98BA7E2CF7CE5740CFE9B1
+94599B4BFDC2555F4D4680E8D89BFEA86CA2724C6CE23F2E70A52BE6813DB218
+EE0CF2B1E51093AEB61D522234A18636C70457AB6283D02106C63F14D88D8AE9
+8E2882439F0F491D6F428C4AA598200C438992A0D0A72520071EDC7C18F7180C
+0FE307A3701E62E54A56FA4F686494C66219B124247126D75AED6FE19654154D
+FB726EABAF884943B556905FBA9BE5C2A15E01126E35F3D7F01256041024F5A4
+83089422DB3D54B6D5597C2D994B950CE9AF44C8C5EC5EF9DE8B9606B49596CC
+F9537E686577DB3BCEC9E999912678A0E5D929236579DA6E55D746724AFF32E7
+FFBF3E0AFA20BC2C98EFF9D3D5E84062956E58AF5575F00C3E9701EFE58255E3
+17DCABEB8287B2431CD9B223A134B466D1F9E282E8A958678E21CC65E09E79C7
+A5617019B58D8CE6CECCE95A1E69CF2BD2FF855DC81A35445F70F6DCA952A15F
+50F0C27C31C1E5942D02E242C317FADA07475A9D890254168C47E095A3EA986C
+2FEEF85FDA1F754E47925339512E696FE2937419C7A56EA2562AF133BF9147D8
+6ED367EEC3212D562CB536B2C8EE6BA95407F1201B20C1840F22FF188B2CEF34
+F5BC642B218F7CF86020C22634D58246FD9575A9B89AAC2C556DF87B053FBAA5
+332AD4DA1AAE3978F76AF912A76391A07637A30EE45C7AA15277231624BECFDA
+BE22556A06A2FFABD4E9748D02552EF69B12169F7CE708B47650E7574E35ADDF
+9D9AA4C75D3DBA47ABA9B4E1F68E63D1F12F2B76A268F8A625C6E41C4ABA497F
+365F9621D52C3869529AE9054F73D76B4686FC3A3402A0F0E29DD8A7C2496E9A
+32CA705ACD09C66031C2B12CCEEE3D944839FDA855ADBE61250A831EAE02FB00
+BAB877B37714C820A4D076965E72B4ED483533D6077E7EBDC45E2BD237F583F5
+38B60EC490ADA7B2E82EDC0B92B8060E555946E95DC85C098144CF1AA689BA7F
+20FA1CB7E2491256DBD4972863D9BC37AE7A25D2E5F8EFFF841FC7AD71E67D35
+9E4E7306F02277C59BC03C6B58D83844F0F6A2CCB7A97FDA26E4249507D9D1A2
+E3C33080F571A10D97EC3C8F1E306F17F7AD4B4D0B38E05EDF1B72D7A06B2222
+EEA92B22A73512981C01ABAE2897AB335B107C24C6505B221BBF52379F9A3CA2
+6216AB8299A968F0056E9DB7BD799041FC2177319477158CAB3D303B8F35AF55
+2F94B30B2F78609DB2BF623CBE05AA10B78E5C9DF533A27345F54CF5728620C7
+5CCC1E109C3DFA9027564E519345A3ACF837645D73C7824DC8683BDD03F9E062
+1AB815EBADF9EA376596D0350BA79AB3CAE4DD456E91C32E9DE1147AD139137E
+1E9920EB826607F36FD494CCB6158951141F88856A407D0DB04273355DC5FABD
+CA26DD705B4CBDA7A6802E64161E117861CC97E2077B3D0710B7A3AADDF9C109
+B62A31632A741727CD864843A8296B2DB4465DE2B17673C37B170A552F9959F9
+5F2DC9FC245D900A409D303E38E8F4B2BF1E3135E0D6B334D09E7CEB54AEAC37
+FFA97B88DC41CDB5BCEBE15973C5551CEEB271E5A27D7E3FBB9AE6B19EC8982F
+7BB93CF5F1BB01E01AE77686239FB93D09C810EC22C080F83A8D6CAA105B2E8B
+E69B7A9526E492876E68ED5AB611C0DDC94257F3DDDCDE7122DDA761134D7902
+92FE265E0FE99D5508909BC5C308D18CECE82B609AA0D37BBAB4751194F09EBA
+31BB00746A89D7AD725F57AB6DE76D0891320D8AF9109BBD111AE8851EB09858
+1E09ECA50C64D8CDD03D3E39280F45A4E818C21A3AA1C9537CFFA667AAC91A14
+CC21B4E5152DA58C64A6EE27F942A8202003F4E636FFC6CD856BFA0C0E2CBAA5
+85766FCE1797E1DE2E2C5F932476F64C06A3137810CA3069B91195BAFD302443
+61E92D7E7A1999CC1404BDD85DEDEA398202C4E3A404B05B094D979598EDF069
+2B310B8255C5E77D6EE587581BD838CA0E037C7D2452CEF2D59B278352E789FF
+68EB9B3ADEFF95F4FE674250AB0A06F8D80D0831A12D45026D33E88028B582A5
+527F57DA403828F7E24B3E691E0300B17267FAB97632114F603C689298260AC7
+71F9343D64F45E2E8600D6C7E049457FADA716A66E0B6E7B4541989CC3AAE2D8
+CEE572BC93D93F8FF04BBC1049D15EF71CD963702B0F7AA5FA86D7D61F38CED0
+C0A9F6656F5B2527AD4DFD8C028CB9031DBFEA8A85670A4EB9D4B2B67C95E49C
+3511F425F61B172866CD1F83F712ECE1FC8B842E5785F1F00B7B2B516675FBAE
+1A015F1402E25FF6603D8935F6816F46C04623AFEDF2153E9C5B632AFB49AE0F
+25DD3F0B5CD0FDEC506992400A3B49AA90B4CD1DA1F7CBC4D761890B1AE9E39B
+222E40BAEA491634B15441FCA7CF03DF259C477BC7448CDD97FE7EBE2212FF2A
+DAEC0027D74E9C98DC88AEC68F87A7B105E83435B68391771056058A480F7A2E
+F6606EC15AA9AE81B0F73DE910056151F74F1BF768D1A7511F6B00D2EB2B4A32
+10C3EB58C2950296C57AB80788FFF889EBFA2161A918C9709FE1D36AD260D963
+E3463AE3318F304CD54767DE1292CD70FF0AE66BAC076ABA8117F6B64E6A2852
+83883D484CD1428C0454950EC8B21A865E17C10A0F5A21580D62E64892C8D038
+A51310EC200F9357ACA1B23F539C40CD4B0CB78E682522EEDC51BBA3D03EDA6D
+19870932F09AE2083520003B2E2B95BFAC78A2699DDD3201080D5378B483D14F
+3CE38E82400E135C6FEB7BAE8A1671CAC278EB1BC871C96DE56B3EA4950C6FAB
+E08200BD9B7A286BCA5EB02273CAD12A6CB3A4C9EF68F36D141C1D91FD6DCE0E
+612001B524702B8A8B07AC0188444D815F7263869ABB9265FADF06952425B6B0
+166630EBAFDF59AF3C1271D9BD889BF1CA55F838A5F4D21A9B6A3BD83010CFB3
+D31F47CB229B800F51C862E81461F32B6D2F24261556159FE9BC58328B9D7327
+7080F4B9905A12BD9478B15DB49B6959CCFD94DDE00B41B77EA84CAD2AE64040
+1AC64C7A7F0040CC282827B08F8C4BA9DDD7591C78567DB8E02B2A2A94F1BBBF
+22D6299FDEC8DDF7BBACFC19D7C5EA63D4D3D59EEE126DEC4BC9D1A091A958E1
+F2DD7211F2D4B61393D046B08222CD55CBBFB8E3BFE02486024171F05B25E6F6
+38699AB2EEE48F600986BD6A66DE961E712E1A44E22BFD30AF632DFAA7D8EBA3
+FA385B2B08A242C4FC9327B30E6475830752210D9338B5E7C8E689DD414842FA
+0D809012ADE92D7B9AC339892EDE97D529082B0357194BC6571183DFCE838DED
+6AB1576C14DE2F9C56B331D18B19D821CB1BDEAF4C83724628FB3E42E70CFBA4
+ACC660A4E378511A9031A2DEE9D7AF102F7855A4C012731CD1B07EE8FAEBCC42
+C6B193DAF0136A87B9267983DBB4BA2DFCA43D9855462EE62949721B81E28D78
+20ABAEA3C4E850B13C43DBF3C6698B3A8B15C32F29E5D8BF18007D48C4B1CDAF
+2EC8297F917C21EE2BD586F1984A8000CF94FC6E5DCD8897461BB15A960BC6DD
+1704B3E04B1E1CEC9DA9465A228B71F24C3D458D5E7333E186E336C6F6452912
+7EE7FFFA66DD5C6C5A4AC9E21CE0044FE5D8427F2F7FA776A94AA72747937645
+4E39868649A149287D02EFE233CC29EB2B476F90351C0085207BF6FEC49E2D07
+0D35CF62DCAD8AC9112921EE666D988450BFEBB8D9179DFBFB340A44A65A9AB2
+56046E29E39CD9E7C0B1B306FBC2797C27639B690D07F6D9C28C083EE429EA53
+06A3E1A44ABE943C48E02A5A82184C765D245887100A69CB0B47D2FC59070CC4
+23683C122149D68B1FE2327AE6938D2642F50E901DD76EFC5336C73225B1AC4D
+690505561B2A3E2B35A309987EF99D034B8A892C06A69CEC44623D099AE47C98
+BCF621267DC652010703F446B82FACA1F018B723743D5020E817126576E3CF1B
+A41BC1B88B0ABD8EA2134AB5F3AE4A82574FAD904992515A04142BE4004EBDFA
+CB358A43DCB65A1E7265892FCED43D11FBCD961ABDA5F1FAB2DFE25576B45250
+D8387E58C1C4678361058304E5AE1E44C1E658ECDA5DF9A59C10CD76EDCABA42
+4B8711DCF7F26772D674391113F92A306D1A7DD5613E26AF478A83B656642240
+C8D2A71DFB7D1D9AE453C05049EFFAA859F581CA4167C44854A10D45077EBD2B
+86D3CC275DEA591CF8D26474E6C2677A3F5C2871EF64104289501E988A49730A
+6465F16DCB7B6BA278E4325CA841F2AA45528F7FE6BB8972C45C5DE9BCA71188
+96F17F3FFA4EFE424539758FCA39CB4F17E057E8401B5769E6E9692D36D49C6B
+9524D9E76271438C23B584F9F2A471F20C8C612948AAF0379A65D1628B10E534
+D6F1C17CA2886F753F1864C8B69CC514621FD3D9BD30DB0202463A3AF2665568
+14E8780ED12396B524D01A86E083BA9E4085D859E6F7B8849498AD2677987801
+9DF995F9A4CC5B7EFEE303149F10D97119CA46A10BD728BF9E0A77289A859602
+5F00892C630E79E18C4F0C98B86B213997B4A5847FAAC0A6214AE52033013D69
+F28C8EE647DB28C742A4919CBD475D901FC755241AAAC82AF71C0AD83D0CB540
+F0CB708300D8EB4692FA48AEAAF8D8974166552179E4DF2FF26302105AF68EF7
+5D7B803EDA6B4EE5FF69736631C02D847D0A23745CADF5D7A6685925B76099F2
+C6E6ABBC216CF9831117BDFE2BAF6043FC7872A9EDAF0D32477CB311A4DA3275
+FD9D9AAF5B00DC8D5928FDA3FAB44C4F2C4D6F555DAC9A6DEB5E116F6379D92B
+8BB3B78326B164C7CEEECEBEBDA0B9B11E2D1F11FC1E1EDEBB49ADB8EDBA7FA0
+7FC77A24D5FC81E9B96933A5861EDE5D479304FBAD0A3FFCE3F66C3FB8639CAA
+70CA29AE825C02ED500CAEA9F2A94291A1ABFF3C0FAC11629AB9EE0F00B7243F
+E7171E7A77F97F4E0810A0415519E28BA62CE9CAF4B207110B3A7FD18A6C4952
+9BAE36D1249689B95DCC7E18B7BF7F28E6CD8D0A487F6EB9E0402BEC974C55C0
+A729D1E6BFA39BF76720F2325C98EF555B0838A03334044953A14713D731E623
+485AE613A6284C9D39D0E1AD75A76F47C50A2E74C0EDDDC6F0688562EA1BB6A3
+7E9DEB35950BD1D0AB167C439422836234BA24C55AF123D520329DD091386C80
+13306C77EDEE403D9EAFB1EDCF6C2BF2DAAAC0FBF56A53C9DC6947C5FA38F09E
+7C49D8FF2A5716DD8DABBB6589B20A16C2E1CEC512D7ED440B8167231C54795E
+922470770F8E8F83A65B2FE916512EAC1DC92055C2EC03B30BD0A48BB12EF9E8
+7979A319390C48C1D8FDCF2A41B6E0D08FC78F1121BE8A4BDC5ECDB6645EDFFE
+FAF6136B85BF768107EB891D67A5EE47DB36045D48C49AB2FA9A5B9B36BCD0BB
+7BD6CA140611053DA3355954290248A1662743634895BD8CFF6940965AABF92D
+008098CD908B7719A3F0E4A1776137C03CFD7DCEA38EDAEA182A1FE39311908D
+11E96B60F966C2467E24D84DF506C7B2CA181DD7793A94C2E5B91EE43EC836AF
+A546357D0811847209DCD7EB72B803BF3C46E3E017DE8B37469951D1B481C3F8
+F4FA0F70BD17DDF49F558D227DBD1D40CDE8ADAE6CE949258B30B2BB011B6534
+0FCADAC222B35BA6F5AE36BBFEB03BA8063CEAE55B36E95EDD094B4460E6E244
+1F44B9C57506D216D927736E2110479E30FD636A2629C398FE118B4751AEDE08
+37393E445D98113FD06AD1CFD5A9875C9922F1ED3E3F34817AA165F559940B0E
+989063FBF8639E926C8F492B64D4246642ADACBA04AEDE0A23CBA90F0F4BD086
+665ED92AC0C06F46E95760F433708F50E4EF689EB3ED2707E4DBC6C45F6F7FEE
+25EC23E573DD02D39FB30821A2713A2A452A8E5868F3848A8BD93A78183E4733
+09812FCB45B6811C54706529B2ED4059093B8C284C6E040C9171B56C60D8F58D
+9E94506F6C8FE7288828FF84606ED43C6663E96E96BBEA5BDBB0FAF650EA0352
+430EA854687031092D23722E9F114B7C792E1E79C944D7AC4EC43D61AEF2CCA2
+6381F06D23C8A80CB84B20645DB9329383EF323CD6B5F8B35AEEE53A4E4A0E4D
+FF04FFF80015DD4546348D094E966736F2699A8BC87AD5FEC77BF327E203310B
+D835A63C48441ACCD6A49FAFEF566308FDFF69A9A3153B52249E474805D823BC
+7FAA0C57EF3FBDD46C1E4F0771949A92BF7E9518F29AEE7459D2311E8AE3CA85
+D168C5B6C579F811EF7CF01AB6D0A76A4762208D2925F4B9A9334F037317B115
+E9BB3C34DE43B531F84BE499DBDD0DFC5625393B1996CEA106CB6F49F53934C6
+1DE31CCD2F63C6D4DA7E7D11C9A823DCC91F07A6DDC78CABD1D099D222F4DC5A
+2CCB5C06500F615218665934DD1726DF1BE65940F4AEE96AA48C2F837CFC9D50
+0D2ABEE5AAF44636118DB17482BE989E0CCCDA00F97E73F65478057922FD27AC
+37022BED44EC88B1F945230A55A6E534903A8468E5F3CCE3B3ED464089D4A5E0
+EAED2ACDFD0005F0BDB897AC79634EC76BA012E3802D48CF6746E92E7EE27630
+01F610979280672E7C5010A28CED511D087F1F727FC2DEF5257F13281EC6D2E4
+6C4A58D35079B3C0B0C66D19494A1FE7FB1246463A3D67D75F9153ED6DCDA753
+99E15378C484B84DD4DDD8BF8C50D1DC9AFDD56BE3B3B1431B81D7F44BFB6C18
+476EF429BB8B6C6C2263E8644C96EF4A9D15B89005E8764644302B2C0A503B53
+61653FBB1ED6160E58CEA8AF5B493C9D1976EF46F2EB0B9967E28828DD63DBBE
+EF48BAEEC0AF504E0701D0F7AB3656F9E0944407F3B913D9F3DAD48D49DBA065
+435DD9DED141997BF876CD003365E412835FB7EE20F4823686A85342EDAD6B53
+87E0AE24E82FF72E17F8B6D8EE5F102F465043250BDBBCFB6A1AA6FA18D90CE6
+94EA9249CC881C15EE8E33C09A1C748C6295E997567A9F3AA81DB321A96E3A14
+99E5AA66DB976C92AC103F0BACF3BF3724A90C771655A6706AC66ADAE03209D5
+349EAC4B93606874CBC23D12714E7B23DCE4BCD95C8B5E206EA3FAE0B1493FF2
+25E80F3402A5508F2F577DA49DC59A3DEE22818C16E2CF4CAAD1F8D15D0712DA
+024C34F4D728E9E820BF394275FFC6E165ED7165BEBE59AC478411664909D4A1
+5566058FEAB78658F2EB9980986523EE6925DEA8E7C1FC99B8134497A6ABCD7D
+69119D23B62F5C3F49DD0BD89F6A998F069F7FEFA3956BFF7055ED0DF76A6636
+758B4D3C557173C38084AF6B61D6639412EF536CB8B2B5BEA73027FB6298A50C
+77A3ED1ED04207368DD8DAC5BFE77EC3053D0360D4A6DA8AB8BE0A1080EF7449
+C67314A2ACFBD28974A2427B0B71838E606B3F44A6147C257CD6CE372B58F478
+C708521FFAD9ADF807F7BF41025B441CAF6662A858B862A96500CD2FFE6D62FC
+9DEA6F8B59A253450A1EB6BBB9A447AE623815B07A806C17B2193FAB27A3A246
+AA4B9563BA84AE1A56F755F5F49970506489D3A3BCEE198632CC739EEB8AE763
+09BF9BEBE690EF4822CB500B966F5979F97BD8C30848442F883EA29EE06F24C3
+49052607881DC7B2FD12F1ACB514A7F16FC865EB19AAC2568F3B675EFA8145E5
+266D30699CB6BC59F4E64B21507DEF9FEC81F63352CE17A794B63EFA36FF6258
+62C148BFF529178B7AACAE1D37B297F53E44BA7701E20DF32DA97E1B837221F5
+1F397C867B22A6A69FFF2F46DD0409D88AA04CD8A343EAECD293BB377E6E885C
+270EB6036BB1F086C1931E86A5AC8004666D4A2F76F1C52530FBC25745E00A15
+6FA92F2036004BA2AFF1BD77A41EEC53C308E25F63B366A6E8A6C2D3563CF1AE
+27A8CD4E2AE808A302FED71EBD3112EDB6AAF2F7F315E895DB20C271527FC26B
+7AFDC16165F1892F2AFF591CC88110D29138842D1BA38964DA1D0F0C83023E43
+F621AE79B0DEEE5F696C1A0E361ACAC472753985DB9732B5C1738F7C0AA74BE6
+71AF6AF965FBD174A81B41B6079E7C99B986593FEF040625BE0FD8B04996609D
+EFC3CD1DFD76FCFE4B1B1DD4C4E03524E3DB2D56EC897A0DC3F50A1EB8253689
+7DD93C2D004D4173B500FE78F4A81011B1FD119E0A6F1C4CD86E8A7569D7D228
+1567413F0A635698228C0AEEDB191E7C728A59C65C84C9601C1F46E543B54219
+6C8746BE832FADACEBD4B2674ED27A18394CFC25C826C2B9E1751D957B52CC87
+38CC7155127457FD4DE65AD3DC00B434277F12B9F6D3F6B35E43C1F6F6234B81
+62F0D27CB1AA4C3BD60272B19F32B4202FCB0C6704B40281A2D93E47D53DE3CD
+3C488D7AF5BB126554789617E374EE885327AD0806EAF2B45F88677D0E489E95
+16D6418C7B5EF28B374FF06A2CC58D4450C05EEAFDD5A9C4F23E2C0F9279CDF5
+517DC195319B50B09AA7D56B225CE09CA62BDF6FD2DE70B21AD751CA86AF2829
+EDC4C775553538C163176CF1DD171B2C3A6EE014F6037296394FD698649AAD6E
+23D29B64583AB468C5D275428E98FE377166FB2261A4150E4AB89E9C20AF23ED
+F158AF3F48223B4C1BC333DE3359FB5EC194EABF3F36D6A651FCC5AE3A6CB987
+E1C0442D3354C9830033E2DCAD55844154F5B4ED28E4ED959F685AB1E471B999
+C048282589675585E081725A41CDF41AE9D510B7C27BF9908F296255FC08EB64
+40932F18B39E8B853C214ED40BE92690CBAC58F3605D0585E9AB77289019BEB8
+9360DCB68722F66BCF2E5134D3A32C8EF1DBB9B2640DB857A464BB8F8A0907E3
+4097CF2B2F3AB0A1ECDEB3FB157E77590E5F58B1CB8A38DFABA9721DB309D3BC
+C1CA1D9EF0114430B5DAD30DB4B73D9DD6F65307F6D0766F4C3E149C1208CE3F
+F90B849455B64CB8B2CB8FCBDDD70AE564179C81B0A7A58E9B237FDAE358851C
+C65097305519E5C0FBBB69B43E23147F2BBE383F295DD6B8B6B156ECC92275AC
+F4B451C2887D90D8B2BD1379C9CDEF1DC4C628E24A2ED644D679F3F502B94614
+3570D5E98660525D0DFCBB32E14303A4B55820C54DDBBE8C24033D5F1E7D7B71
+0B040E05CAABF285231772F02809C80FA02010C8810D7079028A2B1157C118E9
+B72E8A757A6DC6D266439974A298A00856D086FFBC66C7C317F35B513EFB60CC
+8279906B5C1972404495D3C33610D0C4FBBDC084ED427026534EC88361C2B6FB
+36CB08E1C53645A9D4FFFECB02617CB95177D1336BA052ABFF152B0D736048C5
+35D7CB6B53A741C42DBEDD9F91EE066AAA2570F4F7B20DE4032A7946FAF193FF
+46C83D99E4253C66CA4D69AFA204DE63FD30D66216BF5E71C9014B161BCF6515
+DBEA2C712D2B7E4FA697803CB8515380765401AC862A9C76E92FCAAC2807245F
+AF7EE506AEBCE91771DBD6270FE884AA7C736EE7E92489402E21773E20071B6A
+BE162DDD76012C75F875C702A6FB9D2A29E14B00F05A777E4881A0E16C97BF74
+90F32A1A633EF8DC9CA7EDBB36A19973631E80335A08E4BE5ADF69FDE1F6525C
+EE1FCCA225B66FECF1353A78F92A359FE17A46EFE61B432361590BC23EF4FEB4
+64465124923530C09EDE09AC2D08D2DDC5C48EBE32D2E67DF29895091FDA6BBD
+C050AC94EB8BDF4131CF841E1C5DEA29F7541F09EB66A4339550CBEC224B435B
+F9DA9A4315743E9598ADA7A65CAA3CEEDAC1170A5A22EC3E86E0F3DEE22DC816
+A9821FF4B6719CFB03D94D774EC0A469EA6A5126069E2E50BC735D6BE9CF2E95
+FC33E8E54F3C6767EAE888D600CB696E6144F5879BCEF7700E30225956CDC37C
+88E8F28B4B871DEDC9FE1D1FB2B139B17DD36CAB6194798F7AE860D1957DD589
+D0A1AF3C54808EAB1D4F6C59656CD31D1D2AA31ECFE5A7BD25B3A783497E1C24
+3011400D9737657876BBD0F40F570EDD34E2B1EB68AF85629F500308D43EF4D3
+6C3C6BFCA4AAD20BD5A5999156EFBFAD446DA00D274786BC1E9EA0BDCB88249E
+581DC8DAAB3FD7E71100B2D1BF8D6F0A6699B9A3C4F03B60DB33BC1C238D977C
+4E335DD7B22B1F52099FB9FFC4E4B84AC2D775721AF3A282A9263F331D559813
+DBDC271A19E0E1E418886C032C1747728257D8415E3A8EF812F24E4150D5DB60
+67DAB37F88AC0412F7F8B06F2ECA7EF394CEE467D3C69F639C691172D8D333E6
+A9355DE507BC1563E503FDC0E99C5DBF29DC361BC4239F7FE8A96CFAF3626452
+F90D94214B33161C3868D4250A18470AD46208E1B170897098BA274197A8A888
+24B8A6E883B709D5A4AC141FB9AD9EDDF409F935B8A3F5E733C3D69FBC51B1DB
+39C6E067866D6A118522E8B3B704F1AC209B7259BC12032AEDD250E03E7884D5
+3150BE0039979FA3FAE37EE7ED9F539DB3534244EF82BBABA01B635378670080
+BE511945DB4F0DC7453302F1DFD18E59A5B37E1728A156F7B461B3ABF98F38F4
+3FB1050406E747CF9DDD70F0F4DE9EC09635139549F1FC9D43BC5F2815373C3E
+0EB602787F03A68951929046F5E4604B8AE707C04DE06F8081AF03C5F04B100C
+EEDCF5D4CE11F44F4C4EF96CA39E6AC5B874CD00BB1789C9FC22642ECB388BC3
+A5C1D6737B8A013B5B2F161DF2ACA03CEBF19BF5C86A69CD65EC4C10DB4FC8B3
+17AE17933DF319EFDF3B6D2D5950CDBC29F64F9B9B19FD0CF341F153AAC4D852
+6D51B7B25F469BD8BE0B0992A7742E39C2C18CACBA6F69B0234897490003D578
+29C12A936EA9542205D3974FC77A5A680D02669E415C9746B94C0AFE8480CF8D
+49ACE00B47D72B2F0BAE415A3C14A29A86B2FD3B0F933029DA47097D9EE13807
+5FF302D39AA63FF028F0D3F3D842CC37EE55E3F3DCAC4D1E7C05CD698F594654
+D7F0499F9174D3E29D232BC7F683358C324C705900CCC0D624BE4B0C5C9E58F7
+0480392DB8C6F7C09132AC09FF4B4C4F29B1E3F77DC0F39883CF97421E5F935C
+4534E63493B47D8CA33BC6BE9F60CCE1BE12947351D345D4C1FA32143F4EF35B
+332B72B64B6E569A91485C29580D15843DB0960C10B45C9222692273074E89E7
+6C6860D15705432535FB0648EEB4082C67F82BDF2C97733FBDB5E2D0D9EA9EA2
+35C7D9245C09B7E5D86F9565F6F6C40A393491EE95FB5B9DF92D8254B485BA2E
+42BB213EC6F2434C08305ED7B6140F6C11E1FD274313E2544E8270D313644A6E
+E63243123DE8CF9FCB9B29D1175B97CA35953FACAC954B4C48F5D3181D5570EB
+17B33222377CE251B99F539D6DAE0FD77AAB6E363A4294737A56BAB8DC5DF3CB
+C27B852A51E3673C405F9AEDB7C0C2E4C5B70855DF36448106515A89CD5F84FB
+33DEA0C47130182742868A898A41BB458E56DEDC906FD351001273C3C6AD9CCE
+E5DCD7C5FA6AAAF2594CD28ABEEF0E83879ECD93BC56B3A4F76A6D26D70BD6DE
+EB222ADB5013955EE14DE5F29D0B7655C02B7A676AA4B3F283E48B869097B740
+D6B3A468C31350C5C357A9AD2D752DFDC8622458FB3B30A12D85B1B9347171DF
+DC7ED01BFADF46DA470B5FA564071BA600C06EEDB33527C4D2F44F0EBBF9E401
+E12D4F87D1150EA4A3F039E549A9369CB269DCAD7A8A9C1FD62A03CF00B2ECEF
+1BB0839605851E29BB27330B912F529F0471508DE6A424C6A6C362E9AC4F46C8
+EC4F29803BFB590859E646DD3D071F640057A7183F36664DAD98E133A61BC110
+D66EEA6152FEB8DFDAA7C15E32F50EABC9807CC1AC64D82FEFB315071C57B093
+17A86E7D2FEA5CB09BFAE54328AEE61B20348C2A69D63D46BB4D900AE0DE03E1
+6207C9D1B3ACE7E465EB50865CAD85206F0FF8F28039C3CC00EC2250CEA0A7DC
+6CE4BA7CE990A77EB44903B9AEB1CCDDB676994A6AD5E5EEE23CAB4A30000211
+B4A73EC341129B19BCB39318FE70285C23ADA8ECE82439923C5641FE04C9D82B
+A875A5E177
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+cleartomark
+{restore}if
+%%EndFont
+%%BeginFont: CMSS10
+%!PS-AdobeFont-1.0: CMSS10 003.002
+%%Title: CMSS10
+%Version: 003.002
+%%CreationDate: Mon Jul 13 16:17:00 2009
+%%Creator: David M. Jones
+%Copyright: Copyright (c) 1997, 2009 American Mathematical Society
+%Copyright: (<http://www.ams.org>), with Reserved Font Name CMSS10.
+% This Font Software is licensed under the SIL Open Font License, Version 1.1.
+% This license is in the accompanying file OFL.txt, and is also
+% available with a FAQ at: http://scripts.sil.org/OFL.
+%%EndComments
+FontDirectory/CMSS10 known{/CMSS10 findfont dup/UniqueID known{dup
+/UniqueID get 5000803 eq exch/FontType get 1 eq and}{pop false}ifelse
+{save true}{false}ifelse}{false}ifelse
+11 dict begin
+/FontType 1 def
+/FontMatrix [0.001 0 0 0.001 0 0 ]readonly def
+/FontName /CMSS10 def
+/FontBBox {-61 -250 999 759 }readonly def
+/PaintType 0 def
+/FontInfo 9 dict dup begin
+/version (003.002) readonly def
+/Notice (Copyright \050c\051 1997, 2009 American Mathematical Society \050<http://www.ams.org>\051, with Reserved Font Name CMSS10.) readonly def
+/FullName (CMSS10) readonly def
+/FamilyName (Computer Modern) readonly def
+/Weight (Medium) readonly def
+/ItalicAngle 0 def
+/isFixedPitch false def
+/UnderlinePosition -100 def
+/UnderlineThickness 50 def
+end readonly def
+/Encoding 256 array
+0 1 255 {1 index exch /.notdef put} for
+dup 45 /hyphen put
+dup 97 /a put
+dup 101 /e put
+dup 102 /f put
+dup 105 /i put
+dup 108 /l put
+dup 110 /n put
+dup 111 /o put
+dup 112 /p put
+dup 114 /r put
+dup 115 /s put
+dup 116 /t put
+dup 118 /v put
+dup 119 /w put
+dup 120 /x put
+readonly def
+currentdict end
+currentfile eexec
+D9D66F633B846AB284BCF8B0411B772DE5CD06DFE1BE899059C588357426D7A0
+7B684C079A47D271426064AD18CB9750D8A986D1D67C1B2AEEF8CE785CC19C81
+DE96489F740045C5E342F02DA1C9F9F3C167651E646F1A67CF379789E311EF91
+511D0F605B045B279357D6FC8537C233E7AEE6A4FDBE73E75A39EB206D20A6F6
+1021961B748D419EBEEB028B592124E174CA595C108E12725B9875544955CFFD
+028B698EF742BC8C19F979E35B8E99CADDDDC89CC6C59733F2A24BC3AF36AD86
+1319147A4A219ECB92D0D9F6228B51A97C295470093CA270C4488BB4EB864B48
+63941B9739638D2E6F3CC778582B46AEB4E466D89D1C211225274356A4BC90F3
+274C6AA56E200249B7D0949A3FD4185DCB3E5286910EFD7CA72D5D8E8052C96F
+388D12094B87D3705CE64459558CF024667C0FE96CBB32B0BC9E51037D7BD62B
+E4B05FF99384E71D78441A79B0B1DBA1CAE02434A9FAE46596FB86B873B1670D
+AE0BAF516445A0DDC127F8FF3ADA0B10EC30A9CC1F7E9248828B5E8AB46C3FE4
+154B80A54128A08777F5F9B8C519C7E3B632B3476F007FA156E9F39FBE57638B
+4214CD2BA79BA9DDA0F4C073AED814ABCCC2F7906C57A872C00E67FF03AC1200
+29DAB92376422FA21C67CA98BCEB8C431CA2D3EDDC16972F84BF6DB2F705BAB5
+CAB39C82D139FB1304B9E7BF1F6FF447596081D5690B1519E468D6BE49C329C5
+C9C809023EDEB9DCE4A6D52A8049E0CC134E8B41BFC6558CFCAD3D9D2773EA16
+131567AE6231B3235869767A1E7C1FA6C8D6FC1B276CBB1CAD14D376188C9682
+302836A9290E587D4225EB8BB1DBA2C4580A81FACFDA197174FE948CE757C575
+F23070FD84DE121955D7D9307BF986C5E739FFFB6CB76822C341FBD9FC2E3378
+AC9332B40C07D5B8745D74E30F1D719EAFAEDBF5FBC40D0546F69A66072D8A49
+28D2CC2E76B9B1EFD191E0BC7510C2C8761BD92EFCFDAC263342A01398A56D18
+121A591FF5CD4AD8B25699A7897E60BA940336BC17B9EC9F97C2464D031F958A
+A3548D0C97C50C580B6EEFD0FE8330EE2BB0D2E7FD1DAE33448953544A4B1C5D
+8EB57798D0ED4B22909FEA78ECDBC4D8A124DA05B9999242D68681017285A0C7
+69041C1F79442279FBE328733EA0A6694D68BA89739FDB9297BE0CF1808C07F7
+BBF6F1538DFE084EC8C0EC24D883F6CC08A51DFEA23EE920F44BA55FFF58E960
+C7BEE551FCD2D5814DE7E3F835608073C2CB80EC57100CFD484C837881674E92
+B217F4D11165427DACCC29C129005874C05CDE5FBB2D912368EA2B98C45AEDD8
+8A0D2493F60EF36809C8C6EBBC7856F6656E8D398BCB29DAACD4F7D4300A0B01
+161CEF51195D2C58DDFBCAFC1C03F49304ADF02789889826F1E20BCC14827565
+F2A45CA57DCC61B52E33638A0C6C5A59B145E82B82571DF1806EC40FC0E8634E
+A34A791B1325571E19F3AC2EF6FE68A14B0ABEF7EBE0EDA3942E85E5AE967A14
+0C5AEBFF2A36DCA8866700CB7082D2ABE470864C44AEE1F6D180D511304C8674
+D02FAB12A7079ABF96E1CA3CDF9D75532123E87663B1D524265AEF63EB5C2169
+B67A651A101E1C7EDB008D3DB06DB1FC1A81B41B291D6C4A58FB57989FFCA434
+DA84B3914D1D80B17AA3A55A70BBC06C49DD5F7DDD03FEB0055088558FA192A5
+261477899857CF598DB740E82D035E84CF17B33048CFED2DCBEBC2B75CCAEBEA
+B6C5AA1C6978FBB36ED98D9047028360ED430A0AA69AC85A8F83825EA649E1B2
+64B260197B06A24A1DD969CEEEE136FB046D713D0630B246BD41CA285F076038
+F7F8431913BB9A3E70311844D4C22AA446E3CA217A9DFD75A898997130269B29
+AD4AB7D9662856E677FB2DAED7078639CF31C6E6637C74DE2B5D0ACB88BD61F3
+CE3C5D56D3D4B3EC1ACB33EACBE05E53A133EBFE93CE6A0CBC8F24BDC5B31BBF
+5B3E55D6B40B1CED389076014667E28BBBD60145A06BDECEE8011A2C6F06D091
+73767A8045CEF2A110B614149FEE783A2351FB2938A9F73CA406538EAD82ACC5
+A3DFD3DE00221E1B4EA977AF8C89661357FF7D2F1FCEAD6CFC9D6AD81F95100D
+EA1F328249AD84AE849220E6593D45015B4D7C9527F3063E9F6DB6E572092A1F
+1F460696227D5F0FA5A5484B1F0D8B4A35066451663BE448D924DBBFD388B6D6
+D7CFC87C9E75B7CF79A4C9207E29E0BAAAD7FDF529B860F7731EA978E335334C
+13CB2F0A4250F5957B44CAA0674AE8356F586A24FD137103973B9A1FC31090C7
+C84DC5D380404BCDF3FE20C6F74FFDD8BD1DE845E99DC6FE09931F003834ECC8
+08C5D962070B6C44F901A787CCEF048A2C584A2285506B4D4E82B1BF130E2220
+B6C8B3240A4CBBCE16AD3676B23A50B75F82CD88D1B8F21D30A12716426112B3
+23DFDE5A348DC9DCCCE5BB5DB5433A5AC125DE1229FFAAE0D8319B2929986EEA
+56A93BA1FBDBE617F30852A3DC8C712DF674169C6D656F75E252187A085B2788
+2467CC4DB08D48EE6A98C61BC55E6EFB1938FAA718802B7587B94C8F1477E9BB
+DCF6E02B5E67FE3AD9D87C321CD9BC0CCD36B9C4BC601E6BD552EAB8E1C940CE
+3A22F3C2501C3C939CB4F17CE97566F0A04602D2A22A05CECDF4A49CAFD6332D
+5870E1F31AAA5F86867F71610CDB83E473B9D20BA00D8986D7148E0EED03865D
+9622864B52B09D12E0C5FCDD023D29D5AB1CACFA92B6FC14FC84E95F407861D5
+2BEE3301AF399FD7ED04DFDE6679A345A282E7FC08D47E3FC8969D3B00ACD7B7
+F8769647D6D4F4106340EF739583374D023C2702C48FAC1B643B5897D2D7DBCB
+73257712A0FDEEEB98A021D218CDDEBBA34687E23C4828D7F96D1ADDFAED7EA5
+B279322E6D55FB486AD8F3A8E7B2C67915564FE56F0C9277A06B29C47FB7D007
+11AFDDB3FC1B173B4E449CC6B198041CCA0624D81B4840FE5B63BE72157AC6E7
+03E5E95D2E2CE2E40BCE8044A8F2AA45F855484A891B9F0F8F70188AC66A8DEE
+F4D656CBE216E6D9AC33BA8DD0685D480833E1226784469A221D9FA3CA600AC7
+5574B5226649A9C48CCB43339942FC9010F86BAA2D181AEB487A92A96BF2EDF1
+60F3B93FDFF4137A25A8AEC5ADF8613019CDB103DC4367EF3D8AEB4FED0E6BF7
+622AE0CD3CAA0321D26CA4280CFB60D08D9560AB8AA5698231171B881BE9A27F
+BDCF3162134126212C523738D221AA05E31CEE73D9D40F73C450B6AE2C1E70D5
+C37162BDF55943069923A290A6C720042566E55A21CD81C460818883AB016C16
+8FCCD1255A66977DC1C110261D7642199D466DD3D2493A2D47694F842241C474
+1752B00DA03E69CD16A8A14BEB8A431A315D19A39BA978E46EB1189089FEF647
+F9DBB58AAE6B3FBD475E4DCAD241A051DD100ABE81D40ADF18A4C50F53BF749F
+D6F7C8E02A5665B4AD18DDAE79096DD447F8BD32C68F9F97F05E0071D9E9AFEE
+257B96D48ABD9920418E17C8F027E9E975E4A08DFB1988E7104CBBC1CAF356EA
+7750AA7110BE116AF1BA69A94776E4356573B38472A8A1292C63701543B0F315
+611A0E0595B30424A1137478BA6F990AC7C3AB4DB69E75C222B617F373C521D4
+246E954E9857AF59D1E6C36412B643733CF5E1C90389EF0E5E0DA55D3AD12E97
+E7630C315F72A03CAF22E0ACE3AAAFC1D496CF4E5ABC49C2DD5E264BE7EB2698
+AFF36089B5DD2C53DB1C1FCFBE1E89D41A95DDD278CEB29DC85FD1DB8B83CAB1
+EB37C531E9BB8466ED6B8B60258D3C355626CDA43A32834DC89DFB11E5FC6D68
+0F78CFA871113DB81A1690250A6F842ADA15734CB6DF7C6ACED6D8D586BC4E1A
+94EF3052FB0F8B9454390B882CBB6E135AF1F9C777AC362C2A758C3A98117120
+73C6E2FAFB580716D4B2889A4331CC658AAE996245685B973D9C184541385680
+AEC2956107DAB00230FB39BE98D3CA898D917E5F2088F26CBA4F8B5B115B6443
+8753331233B10852702FC26D9DD4C990C13CE4D0DCEA23D62A826A4B4FD16070
+5F3638C0A50A3373A33FCAA6F3644975AFD0560EE5F2D1CDF08820373468E4FE
+6679A229D6955CFDF7ACAA92A87E6D8571AD18CF59F84F88A674B2946FF20A28
+B9798EAA22442415EB46B9498DDC0F4BA6ADD347AB43E9293CAABEAE80127378
+129D5DC69F6DFFBDAFA5D65580239E8EDF6833D0DE6DF75F0FD090A83CE0974B
+AC947BABBD1B1C7194DDAEA37B0CAB477ABF9433FCE0243C8D308409427D1DCB
+8EE4FC36C7E5CEE104904B520B3F6E677A5B92F694BDBC2C799991667E0EC14C
+B95EAE7DE1854BF4542F05B4AF401CF67FC3E46EA5A0DC362F3CF177B1796DA6
+753AA803E724D1721DDD1BCB0C12CE0859E172D2A370C3697286F80D9E138AFD
+A0EE016805F847BD30D11D8B891E54C77AB51A7CABF76BB14B06153C7F811FE4
+93FC4B7CF161051A458EDF767DF94F487DB939A2740B4242BFEE234F75084DDE
+207E84533004B933D43C712F0C71DA4A00FFD6D721EBC93AFDC4200E3B8DE433
+3ED3E1DB799BAA27548ADC853AFF5D9D6BD92D644E3CF394789C99D9DC054A26
+7770AF5DC5BD6563929AE11BE341F036584DD573D3F43D9D975201EF77BEEF80
+D1EEDD1D4AD5D4D4DAF6D5B9D4C1736CB111D6FC74C236779C0ADA430323A825
+09EA8D0CB1772220AF28B93098BDB36913159208D1B2D7ED45808BF7B686419C
+5C0E3DAB5BC9830FDF3B494D624EE8068BF6F5212BD69EF466B9A213047BD105
+B848F056DC544A8CE66C546B1A4DCB4BA29CF0EB4DCD9C2452F22172AFF33B29
+E97E12D8F0D312B03BD9E5377BF0C81D884F1E79DB66E8144F106DFD2579AD26
+C693C5B68F3AC46BF0D6281032D4D4BAEB2243151AB1AC0BDA2ACDDD4D590C90
+F29B335DF8F57DC593DCC081FB56924028E3161AC4865B49D1B0F63F5EE866D9
+7A71171C09B09A44B0E32F03494D9EA63F3C89F5E772BE25A6557F119299E989
+99BA041694ED805AA4F3BBDF00D88171C9D43A9085A287A36A1F0F9386F2A98A
+96815CA51F06E1CDF20B757983C5FDF4003F5438232159F325C6335B734FD982
+1423BA77D0EFD044381AFBD0704E3DE95D23A70E2428E9AA355A9A8A25C6C74B
+48488C14DEC93A766E112D74C83576ED355F17A809E8D3F9C65C4E3E14EF484F
+4658DFB57597E2A4461D8044E95844391C1275D63F282B37888C842A5151937A
+45007547263D70195ACC018A373D498B88C5A028BC66ED96A343EEE74D61EEB3
+D9472B6A549CEB8699F4B35154A0E2ED22867E4F9E4A76311EB2C9F9078FBA81
+838EA49C2966BA64C165434DA3093206B70186BE80600B891D9979F730FDC794
+5DD6D8B2090CC67A634B719F441092A10C447A86ADB78DAE45823ECED5FCEADA
+ECA52E363D913D9EFC0ED98A5A1F823DDA3350EE27F09C14E4C7298CC0FB6200
+DEBC640C68C82D70AFB7A7BA668F1D7948686206884736CD03D9F6E6CF9702BF
+E3C932CEF3CE07FBBFCEC0476EA6E8D5D4C5C6450C8FB236B89BB82D51886240
+5BA7462F50A88F69228DCBDF26B7250E90B3DF8E94ACA1CADD9EFB5C73EF9DD5
+46052314D445CC92512BA231F79A09A2F0D91976B160B8C9BA055DA4AAC1300D
+491193EC66A6DE12BE01EEEDBC3A2291DA1F27AB76596A236B75E19FC5F1FB6A
+DA1AD835CA08B6CD03B97B4CA1BFCBDD2500BB09F1A1B0438E4A759370EFA318
+F062BA9F3D352572CE232E6FBADDAA5363807D0DC5320B807FE5485C8CB09B6B
+0BED9F5B1300FF370252DEBAC9DB25CE2EC494E8EEA45FC6604B3C104E81B287
+EDD49F3D7430EC9176A16B4FCEC5DF68DCC11ADF90BD5337E2E4B59BEFAC8298
+E5ED2C7FC5928635420FB1955251932713236DCE28012C86F63D12AF1DB634D0
+0B8CB8992B8723548177BD6822A808FF221A9E38B0DCCBC1F3430A9BAEDA89CD
+ACEBBDD8CCA5E17F1CC37E35A01E058BAAAB6BE7124314DA19962BADB74EE73D
+8FB13FF6AFB6FFF97926CA045B62B98BAA753AB0FC78B881D3FAFF9EE2FE918C
+8EDBEF87637F1530E3E13AC090FF81F4136E08D5F3734327E643CDF621278741
+A17AEBC56E21217888A6C8B5ED4269731910E7E25693CFBDD4EB4A32698F2447
+4C45D73E810B627D8719E4E34D8FF378F9B68BFB149AC67B3B1E55F20D097FC1
+AF74D46F5A3923C63DFEBFCA210F6B257F5FF3F2AC34CE41C15C9977634E473C
+2235295C05C3DF6B3009C7854BF11CC87471CBE085793AF9C5D05C5479B9E780
+14A5A6F3F6DDE5A18243DA15732CCF26ADE40C566DBC3C62B71D46DE87A12C6A
+647CAC923254E2E74AF882DBD5C9E108A9160393C5CD12566AF7C824EFEAC56E
+6F05B92C73A76824C5ED1735BCBAC61B98D509250C854CF1500C212F574D18D6
+4426B8510FE9785B814A70E75C9234D42483E736D0689D3561E8EE5650F33A36
+D50127589401D267BA6442E8616E2CDB1F6691D3FC4A2A377E5E154972E890DD
+60CB463E9EA9A6EA61087DF452FA5646F69BE879337EAA0F5DA4438FF0365627
+4E3B16851C2F08E976FDA27AF451CCEFED00376FC3D6E0C160F0BC19544DE289
+BECEEF9A067FD71D54DA3A4F73F06E2F522BA07551296214DDA47B1BBB1212E0
+1100ACB5F65FD30C655A3402C83058F8ECFE48FA60B6A3DC86C4996414130194
+6676EC7F37454023AB53E9D9EE60249ABF6953E76DCE3123DD268BBD492412BE
+65D7C3E5A5E483C381182A8F19B506F0AF6DCD55532B89852D1D96021B22E9DF
+D9D072BD7DD4450577E658B433A84F92752B260AFA2EC4A118747CBFE36AB7D7
+6D5DD96A119AA1BDD0FDCBC3AFDAE5FF72713EB46759A06CD09B5CFABCDAB0E9
+85599506AC07AA525978AB157496163AAB387F079EC9FA1F9E91B9C2FBCDC9EC
+7027D77016760539AC03F1C1DB242D28D6EE946C42DD2262D82ED48C3A839853
+BA977046F0EF373AFF884AC3112D2FB319421C3165DFA5710BFB9AB9595A10F4
+9D05704B9E22137CF27F4B2DA9CEF6D8801D5F792969B2E58FB539B8038DF440
+6DE20C0313A7BCD16F279290AD6859B0E657CC3041C7928CAE35B9D3A681F2A3
+2D40F8EDAF1127E754276556C95E1282514B6EB6E43FF4F0FAFF28C715E3F39A
+374415B62C1F5F8E31E006D6ABC736057910A3729AC60360CEE1B2C8D9F77336
+39CAC45329A372205FD551B9E9EA5082411207473D9D90E76136AA70180172E6
+AF6EF3EF6B38B1906B904BE9BD5251EF067738840C28877659B649C6C4CA328F
+1BEF8A9CEC2CB062702F58CC0B8D2D097FBC278F9FD894E10ACE1DEC4530CBF8
+E4E467B6DB9C596DF0C3D43E6AD70F30B733EEE692C2EBD68756D0C16E1F00B6
+AD011B5DA073A769B53C2DA2E7C9B7ADC6F551BF4DF4C39C66443692C3DC62CD
+B1E094013F364D04BE2FBFCD1C7B2836180E9022E0434421FFA4317A50096684
+CF0B8740EF680F27F4A84AAF2AA92C64883BAF57BDC60C6467A8D4E09E6316FF
+9BE73053045E5F3586DA3BD1298DC15D751913FB1E72EF80047F6B33591B97D3
+DFAD34EB224D64EF60F5B4ACC6EB42E1BE0CB2812FF2F3C264AD2E44F5EBA441
+670CA0A60E73176ACDC4E42E74F8F489C73481EB5D46A61FDA1C0FF9F8844DBD
+99CECAFE2A72833E4522981FA13713AAFAF8F121E60FAA6F379B2C8874CFF23B
+8FECE70654E5855E525A403700A96CF7F8111BF2B58386E29640D82F1DD86900
+E0E203F3ED554209CBDA2A61A5641D4B39D98C5C43D4575648D06BB82B6C4D4A
+F043EC61B17C208CE8B4F43A7BCBBE588A3D13A183D79A47404223037FCFA4F1
+DD237344E589F161BB9BBF3FAD2E28749350DB9A74C09E894BBCA85B82E704E2
+99788B24642A7D0F0FD96601CF1AE4819EBECAB89824A0DC1C03BA4B546ED36E
+DABC8D49CFAA53D2A9A5DD6B3431E364C99ED0323513476CDCEE49BC413E50BF
+51EB93563DC03B62F84C5F96ED713F288D109C79179AEC41424822772032035A
+40E84014F5BF40948F05E8562C99266B9E54AECEF94765BC79375C69A0385023
+A014B8705931C9A419C8F2B72C3F7054CD6487E75ED2E852BC19302D02C671FE
+3892C7AF2A90D6F29771AF31FA95258B6F3434228B377F5FB494E28B5F0393C8
+9DEA5E5726B81B7983D241BF7F78928EF8D8528C8F6DB7B307D720243DF00E84
+A37A7B2C720348F83ACEFFA78929F4CFB5CCCCB2A074C78B92C8573750B91386
+CECD4A1243D1B002B45B933534C0B4C51DDC50BE37BB6E42B8FFD25C9B6A4A80
+0FDD3858D50F2166A9067E52D8B453FAE2DED99D96EF9523BD348F2C93DB66CD
+B17BE44AE1E2031C3CB01E713C3B3CD4361048D12E21C486C25269C5BAF6F1D4
+88A0C8698AE746147056CCF2A0DCD7035A43FCF3667E13505AFD480503000FE8
+B5CC5495F9863A9BEF24CCFBDEAED491A646332A571BD194D5E8EB01E9169ED8
+6736412195AAA273BC7BB965C8818A53896F76B627A600BE050E645BEC59B1DB
+14A6EECC6AF068AFACFADE342458015F57983ACF8912B5CAD20ECD2C142D78CD
+96C11B52FE223AC12C65643F211172488DB4D482463AF0C7487FD386C81AA230
+D10F40F275B8162DBFFDD07CC588F6956E6BAB6D60E5C94B0E0C03AA2C8633A9
+C8DAB4E96DFC9CFBED73EBD70DE13443F8CD56E8D3510D397885B06DDA96A3BA
+24963A25122FCF107D6612F856A7F5BB46E5F523A259C67FBFA976D0603C06AE
+48FB017EA63243AA6E43F9D9E8EC0EDC2B45083B960DCB0D610C49AED4722677
+895DBD75A476C78C8EC100445E81ADC82B122B275BB12BFFB0880BBC55EA6388
+9DF510CDE4EE30A1CAA52AF15CCA7038E85066D608D01AE9B08B8A8CB6AFD258
+ECC7A5195B16550613A12A0872C348C34AF68D0484F7BA40BD5593F534AFF02A
+B362C3E28CABFF209FF918ED69651CFC4704147444BA5D3405D662189DD8FE3E
+44B1AC9264FB891E9F94B49D55C3578B4998E0F3C83060EEC04CEE3BFAF4C8B9
+B5C65627F8A92E0FAA5DBB942AC95F5DF5B78E3754014EC609B77CF3A8FE9E9C
+AF0CD40AAA1B6EF3203E4E6842737EB5639A9FB784E862CB50A3226476E6B369
+D02C7636F932AD5995988F64F9C0B935248A50043E58B7F54511E10141A5DE70
+3E1FDEB99F530FDE5C206D7033C2140DFF0126762A121963E74C2BB4DB186702
+511B91E2D4007006A97B2E772FE65CD9B3FAE24078B6285C0B5914E7D57EE644
+6BE3AF3FCBDE8540D8EDB0D3940D27F42E5A8CDC390B4309C51F3F387161CB7C
+671F72D66487659E349627FF4BC3D666384ECE13459AE465E0A8B9FE2E531778
+A3293E9E4F0A2B9B75922C84FEC2EFAE7CE80841AE217C2982895FAFC35A80F8
+55B3708ACFADBE8638961FEFDD06540CEFB6121DD19450F80388685CD034190C
+F2A6A20E81D819D4D4A5EE1B05DDDD6029969747AEB8921103D5C6B348F6258F
+6620A0323E8952F2552901EAE6AED3F602BCF3A4081432DF51763E87A627A574
+A03D2BC02E985FDB5C7C897600F4406A6BE4DD3B35BF9989372B5D8D55D26350
+FCB942AC53AE16E7DA32F0E9894D4BF528C5F56DA4AFF500C39F9B4485746F64
+490045D2EA7E278DFBBB8CC4FA48E6922743DBDAF8BA436B6523958BE6265015
+FFD7D555FF08F8FCF58C509CA3C276757A2C518078881F4F5E56B96A6754C15C
+9C5344002581CF1BD10A9531AC596208BA05F84B2D6E251452FE2B0E7746B420
+619BAB9D3F07B9866D8D8FB50E185E3E540CFA6E4168AADD6775DE8F381898EB
+700A5C0B3FB7674554F55BCD75EB42FAB63CD838BED606E404F3689EB8433DF5
+3F94F15441EAC5192BEDEA0897B4F8DF6310AAD244F5FD60260AB4AC1D705680
+6E90CC3FD5E13DF3152F92DE2048EEAF24FCE5D6883BEDA03531EC081B04C1CE
+3569A6FEBDB408863368F5F91EE2753657C5311453065C3E29E6FAF9DC154BAB
+03CB8C398AA15EBA77C49D3152D414A3BAF75C50D90FED7F54434CD70871179A
+D464D91B9E7D97E9CAC09464221EB2A0351BFD8765A896FADB9C08B128F2AE7C
+30CF3F47F6412871FD3E019E6BDA10E29BC3ECC5ADAEA2803DAA990CA9242A3B
+FA2D0BA202B5727A47EE48F042CC3D7FAEFCE30269905EADE42EF1ECD4DEEB15
+4FAD704FDC46126357168582EE2152B7367D63B9C6902A4B4C5DFD5DA0B51FFD
+D358BDC23AE93CC1AE191AFB61124C4BAEF28C2C962B467B3848C71B518C0DAC
+29A6C864CA6CBF48594D6E6AD6D1286802B353ABCB841DAE522D63CFA12F8768
+CBA8AEB782DFAA19B1EF4C0DC232CD3B5DDA88266E90041F53617A3D61F47E24
+68275E3136D169C3D5AFA4949F7A588040D8F70E03C2A7A10E8F882F0C91BBB9
+CC14AA3188EB36BC2E699A117E983D2B92E070A2FCA0353A8E91A7EBF6A0B693
+C97919902F3990CFB13C02ACA92EA1D82AC36F8540334DD80BE2EC9834A41EC3
+339DBD2F2D9E9DBCF18DBC4DB5F1B3EDF09C496D8DB5BB5186B7FFE90300F765
+A548C4E6D2FD17C884D5DC1BAE5DBBEB1855E1221247350921660A5EDC79FD02
+38C899426D5D58F0E585256923F98A705EF1D1697F18DC33D6977908DD8B4047
+D2E0D345399ADA8F22C123D2BED329FBCAB516B4EDFFCEE705240531948F4DAA
+268F652AA6CFCA7CF014149D137766084B81EBC3C75A928250699E991A86469E
+A68CE03885554B99A7A7B6F045D8293CE15834FB681F3F1A2D5F921F1A04D375
+D1F22708201E7FB6C3D2CDA6BA9285C1B0C8F37E7D2BED6777F8B2592293C415
+C80089DD8435BB450F282C4B3465
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+cleartomark
+{restore}if
+%%EndFont
+%%BeginFont: CMMI10
+%!PS-AdobeFont-1.0: CMMI10 003.002
+%%Title: CMMI10
+%Version: 003.002
+%%CreationDate: Mon Jul 13 16:17:00 2009
+%%Creator: David M. Jones
+%Copyright: Copyright (c) 1997, 2009 American Mathematical Society
+%Copyright: (<http://www.ams.org>), with Reserved Font Name CMMI10.
+% This Font Software is licensed under the SIL Open Font License, Version 1.1.
+% This license is in the accompanying file OFL.txt, and is also
+% available with a FAQ at: http://scripts.sil.org/OFL.
+%%EndComments
+FontDirectory/CMMI10 known{/CMMI10 findfont dup/UniqueID known{dup
+/UniqueID get 5087385 eq exch/FontType get 1 eq and}{pop false}ifelse
+{save true}{false}ifelse}{false}ifelse
+11 dict begin
+/FontType 1 def
+/FontMatrix [0.001 0 0 0.001 0 0 ]readonly def
+/FontName /CMMI10 def
+/FontBBox {-32 -250 1048 750 }readonly def
+/PaintType 0 def
+/FontInfo 10 dict dup begin
+/version (003.002) readonly def
+/Notice (Copyright \050c\051 1997, 2009 American Mathematical Society \050<http://www.ams.org>\051, with Reserved Font Name CMMI10.) readonly def
+/FullName (CMMI10) readonly def
+/FamilyName (Computer Modern) readonly def
+/Weight (Medium) readonly def
+/ItalicAngle -14.04 def
+/isFixedPitch false def
+/UnderlinePosition -100 def
+/UnderlineThickness 50 def
+/ascent 750 def
+end readonly def
+/Encoding 256 array
+0 1 255 {1 index exch /.notdef put} for
+dup 11 /alpha put
+dup 12 /beta put
+dup 21 /lambda put
+dup 58 /period put
+dup 63 /star put
+readonly def
+currentdict end
+currentfile eexec
+D9D66F633B846AB284BCF8B0411B772DE5CE3C05EF98F858322DCEA45E0874C5
+45D25FE192539D9CDA4BAA46D9C431465E6ABF4E4271F89EDED7F37BE4B31FB4
+7934F62D1F46E8671F6290D6FFF601D4937BF71C22D60FB800A15796421E3AA7
+72C500501D8B10C0093F6467C553250F7C27B2C3D893772614A846374A85BC4E
+BEC0B0A89C4C161C3956ECE25274B962C854E535F418279FE26D8F83E38C5C89
+974E9A224B3CBEF90A9277AF10E0C7CAC8DC11C41DC18B814A7682E5F0248674
+11453BC81C443407AF41AF8A831A85A700CFC65E2181BCBFBC7878DFBD546AC2
+1EF6CC527FEEA044B7C8E686367E920F575AD585387358FFF41BCB212922791C
+7B0BD3BED7C6D8F3D9D52D0F181CD4D164E75851D04F64309D810A0DEA1E257B
+0D7633CEFE93FEF9D2FB7901453A46F8ACA007358D904E0189AE7B7221545085
+EDD3D5A3CEACD6023861F13C8A345A68115425E94B8FDCCEC1255454EC3E7A37
+404F6C00A3BCCF851B929D4FE66B6D8FD1C0C80130541609759F18EF07BCD133
+78CBC4A0D8A796A2574260C6A952CA73D9EB5C28356F5C90D1A59DC788762BFF
+A1B6F0614958D09751C0DB2309406F6B4489125B31C5DD365B2F140CB5E42CEE
+88BE11C7176E6BBC90D24E40956279FBDC9D89A6C4A1F4D27EC57F496602FBC4
+C854143903A53EF1188D117C49F8B6F2498B4698C25F2C5E8D8BD833206F88FC
+BD5B495EB993A26B6055BD0BBA2B3DDFD462C39E022D4A1760C845EA448DED88
+98C44BAAB85CD0423E00154C4741240EB3A2290B67144A4C80C88BE3D59AD760
+E553DAC4E8BA00B06398B1D0DFE96FB89449D4AE18CE8B27AFE75D2B84EFDB44
+143FD887F8FB364D000651912E40B0BAEDDA5AD57A3BC0E411E1AD908C77DCE3
+981985F98E258A9BB3A1B845FC4A21BCC54559E51BC0E6C22F0C38540F8C9490
+88A0E23EA504FA79F8960CC9D58611C519D3ACDC63FB2FBCAE6674357D7F2285
+4BCC9F54D3DA421D744D3A341DA3B494BB526C0734E1A8FC71501745399F7683
+FD17EC3044419A88C3979FD2ABA5B0130907B145A8462AAF0A9B511D2C8A7C7F
+347FF6AC057E6512902BFD2918E2CD31DE615F5D643764E900B60287670AE18F
+FDE15545D8BC69591A8CBBB275AFFC9B14BD68DF0AAB32268FB84844D4DBC7BB
+C591C1AC5102C50A9C7BAAA848DA88B0519F0F5F0813BF055CF0E3C86F633A04
+B779D2E8E656DB1E09A66A85FE21CA8BA5523F472A229E83F2C4E91ABA46C733
+F3C7B5775B06C97782BC225C46385BEBDC61572458EFC5CF4190AB7A9C1C92DA
+29F84BAACF552089195966E3AD9E57CC914D20B6962BE80429A16D4DF1ECAA66
+36C4343FADF0B2B48F12E2EB8443C4AA29D00949255F3968617F98B8ABD4CC12
+048B838EE243A21AC808BD295195E4AE9027005F52258BFCA915C8D9AED9A2C0
+80814F79CF943FBE3594C530A22A92E11BE80FCEC1684C4F56712D5846B0749C
+9B54A979B315222F209DEE72583B03093EC38F7C5B9F9BCB21DBE8EDDAE9BE8B
+75ACE6B12A31083AC8348EC84D1D29D2297A266284B7E9734E207DAF59A25F4E
+4AA38509E993C5394FED76E6A2F25462685C4C86C6E8CFC9863338EC1428BDFC
+74616BB1BC8948B0ED4C87C15B4405F3A7796F9DB3798FFFE8BD0A94E834817B
+D5E9812E308D0CC920470A6F2CD088FCB80462BF7CB3F039A7DF3DAF5B2B5355
+E083A385CD2EAF0FC181E40E96DD7E9AB9EF5C7E6866A13B8A54718E950FE097
+EF0951A357114F18CE9933D28B3A77AA71E3CE884661F13284BCED5D5FD1A86D
+543E588FF473DC2CF9A4DC312500135F29C2D0174B32018C8DBD40EF9A232883
+710A1F2AB2CD11312300ACDF789A9B7B93D2035D81D1C84984D92D78A53A00C6
+EDA94B24BBAC1AD17774A4E07E6F74ABD90415965616AD540C8ECD8C3A44EE4F
+7F4F6BB6238C5062D63FA59B7BF08BE93FAEA70A2AB08FBEAAF7DBF56B95FD93
+03CA406543BA6C9527D0DF01F5108D31A51778A5EB1C93F27B72B46146A353A2
+01CACBC829603B9989A87CF64528682CCBA0562A8165B185C58A5C6BB72F5E89
+500ACCAAB8ECEFBB2640E99EAEEC4EA979AA793D013D61D8ACF8784FF8D9398F
+F6A252A709324FB39509F0B3A4E725E82F53543383C6765BE556CC897C758208
+AA3AD37B0406E4A79F8F0A6C1983FC73E71CD858C0DB66ED66D5D992978614EE
+1EA91EBE191E082EBA1FC040AF19A2202575C2EBEB8058833E3520FA03D2F915
+85C1ED337E457B9FEEB0C6EF2735EFDA6E0D05FA641BCF698AC6B97751E8306C
+4DF00A39B8581FF53DB8F8525FDB196D85950906CCB59B8EF171349AA3B567B1
+6A00819947A995FB383C3C1709C9A2C113B2E40BB832B7D4A0FBA0B16A2C455F
+55809CC425C403E9668DC66BE45B71A81C332FD4DB279D22A2959962304A8F18
+085893DAC61317D24A8F198FDAB95F3B86F0AFD35047B868A9A17037A2829A02
+BAB042F75F349E197A7EED41984C2859754CAFD0251439921C248B463B516951
+2E1322C80D73F9CBCAA63A585450275AC2492E4D3FB78E800F788254DB5E610D
+CF788DF5C70FF99892BCDF16133E34B24B77C8F097F546B87C603DDB8998B66E
+BACB68BA27462AF54AA405682EC96D701F0D474DECD5F95CA2102DF639EB169E
+D518162C2BAE45FF698B6DE15FC6E7DE48C336C40A670FD26952A6BAB09115E1
+991F0073419F2CC2A1C08BE91096936AA0C37E4ED3CCCEE235476074B8FF1125
+6BDE3701F85532D8BB64CCC927CC335281C95EA689706F0AC717DC2CF680C754
+E5EFD7FA4BB8880B2B727A964C876D4A223069D4E6001771F0E23EAD2A4BBC80
+E76675297B2EF05F52BF4E71B3EE2BE3048CF088C79540113C66AE98B2FD3CB1
+B0741A215FD070882C52765009D7D711DAA2508F19AE7DDA15229A856AC49BC3
+4DDF40814FF96500E4B9B02D412E94623C5FDCC76C0FB8E42DF56A904FE49D65
+1DA7C53901B2EA71AB658A464D3ABDE27D9DB8D9E0B48F64E61A2495AD5D8DAB
+B5E72424AD017DF37964AF911BD7FA21A5EB4775DC8E95EF0C0EB856B00D89D7
+8172A1DE8530767D317B8256103E53CFB877E10686A04F5A08F8DC58D843DEBA
+FD5F40597588663D103689F6EB3EB14D06E18C8078F2538B43E712DF491FC5C6
+AF639256C8C6134B64D560D8476DEA6329D995E46CC4BC78841C59E73648B47E
+BFA7DE0846422F738454AE77E822A083405289247BD7C478BE4974F742CD6051
+E99FBB1D1B3FBABFEE855174734EE45E87D0AADF32B1283B911162A9955847FD
+38944D70584FAA6B1A7191C5C134B73F98EB632B69E2F0C0F94156787C34C8A3
+7622A029D58F9626B74F8A8A1F3803E0BC20E0EADEB1E99B70F1BD9F980FB751
+2A842843DE42EB142A84D5D3138629AE9EAF6F3479C423E8829C8816FA6EFA27
+DCE5580E65AA9854B1C64163DC318420CD993C15BFD76A8BA1182860A6B03D6D
+22B8CF43CFE6C8AB27C64842E239CAE707D3086BADDE1D7C94E3BC96319470D6
+8D26915C575CFDD03271D6BB9DE86A0EB6EEA6E768B224A626C62A9AB48A6EDB
+44F70BB5AF991CDF9736D65933E81CC57A78F623F33EC9AF535F2F25FA4EEC90
+D50DB7E87F31E971A75A33A301CA6013EEC5A4E179D695B33DADF2C98364434A
+42926776000B610E17524162253F6FA638D6581C18F99EA0BD1D2E24D2424ADF
+C05010D08192485153DD03930C7BF45237593E484F9851E6D464FA10FECA5D9E
+0C8CCC97DE029030900CDBB491C5CF226DBF903CFE7735D939C3FDF3A20B70CE
+66579B28B99313FEE914E295388C7BC8E055A2E54EA3A8206D3C8F4F7C0BA5E6
+E519419FD8CE215F7B8E9BEC604A9E3FE272A0328A24E31997C8A91E0946BCF1
+6943A97CBED2AB9FC636B49828BBB8B89E0BBC2653796431224895ABA5DAC41E
+1854BD9764E86147FD7624F736F40DE3B7582EDDFD15C2BDE3F22B5A54D7DF10
+B87A1301CE85CFC061689A890A321412A13314AE96DCD3EDA75035FDD8F4AB9B
+897A2C68263A68457032C469987970648BA2D88B1C5375DFEAA35A917B8A952E
+EE670427942AEDB3CB599C5746180E392837D371E15D860620ABDB6AA7772C40
+A5E346661673ACA530BE3D8E3FFB895E5DA3DC23B1B43C080C77F7E47847F0F3
+F3AA5CA9E4BF75FC5EBD18D19F21A7DAA3B11CABC6E4070A15F7DBC8B05EB6AA
+A02EF1B078EB66D61D6AFE41DA9B36FE7EC9EF94D1EA26282A9871E2CACB3126
+2AD49C2D9B50A6E47D8F2CCAD50992D1B430979A45FD9E76182A19964BB2A1F6
+51779A2B258DC1DF4C2F3074621286831F3848AC152DDD2BA561E6586ADA88D3
+598A2CE2CD048F027CE0008B828BD915887D7785341E8305DF2346ADB76BE99F
+87B02173BDC334E9221C8DF54114A6B24C1C5340299512FA6C8C51AB4C8778CE
+178CEF531C6D1B5FF0A1BE8EFF767F959BD4C345C52699A29A17B2A230842BF6
+4B011217D6D24EDAC3F6D53482786F1CA33169B90ECD499407D37CE9B70DDF78
+7B7547B32952535BA9ACD1E244447AE3FCED3AF28717083CF9590A09780984D6
+AF0743C82AE4FB3E2BB2856A4153A3967A023FFC35382D6C22D84A924900B6A6
+3DDD400E6D2418DA6C27F2FA34C075C902B89EBAE658B3C9A18EEE449DA5A379
+337DE95CB7AB3F0970CF1A5D8FAD8090E495570FDFB2FBBA79244780D8035547
+C5A55BB21A2270F724BF5D442CDC5BB9F09BE0CAE59B1C2270F0BDACE698F2C5
+DE8F66BFB9634904B161F5BA2B1950048300D69BABD312D58D89C4ED527AF7BA
+7DA2478EDC2CDEE3473DD8A8ED9D891CD1FC21F23013228BB3281B71FCE959BD
+6F8E9059D682A7FCC5265A0620992D4FA8D78377EB34CE3ECA070EE3707239BC
+98907DB0120CE42ABA32CF97127E28382BDDFD685674279F588D4F951216C355
+821361790F64C2CC720DE97E8ECB57326C43EE47367628E05769E106868B54F4
+C33C9951908DF6FC4F5ED2C7787BD8FA591BBB3E9C6C1DA94CC5E38D9B20C886
+7D237572FF46DD896A4D6163408EA6CEFAC398EE041EAE29D577E75326CA17A6
+B072D47A7B13EC441CE6DAA042ECD02134CBFA6809A435050413817193DAEB16
+A5882C8AEA44BCF36E74E9ECCDFE7E19FF5A5DD7A94E5AB4F8702C3DA7F42325
+23C808670A0490F5B373DADE40814FF9650241D3D69C91FBC5ECE728F827D9BF
+C928602E05477903449E079164CA39859C4BCA60C579F490AA455F82B5050BB3
+969AFB478E0D4A257B3356EA3CD62051FCE6C6B1929CFF85BFDF166BEF658E10
+3A55E007F38EBBB248B3F0B8ED1925106B499B762E45113AE1AC9DE09644C84B
+9C08034B297314EE69BC32DB6E7D7FB9913CE5AC17E7335979E9DCCE2BAB3725
+1976155551F9706A576FE0E3ADCCF72C87683291528ECB749CB0ED291966E239
+B5E3630676BD409E08F85BC1AEC9A2D4135376284A96EA24431243BD6FE8B966
+95F11A4BB53F392E0AEFEA623064FF8A7002367B0A515635CB2D2DDFB9B4A8D7
+FE721754E81BBA548848A235B91AD4E4F7DB19CCE2F61D277FC00AB956EB93BE
+44AB4970CA56BF59506C94ED160FB1E25D3DF2988A532BDB787BFB8539D22986
+FDC378AC31444E63C4727FEE121A43751043849E6DCAC5B59D0FC703AAFBBFD4
+E8B7C268F21615AD02CE9DABEFA27B5FE6A6441B619539CAB1F810F1263447AA
+633F5DAF483752EF1A0421740E3A811D2D2898CBF53E7F686C9223FD7235F02D
+6F90D2D48CC20AB87778DE3C6FB335E0F0EC20B5DC5B65223FE117526DE2C72F
+FE839DF93CB2A7D66CD900CB325F891E311BEC932F703FB4FEFA29DB8B9C88DD
+375EC71B3D58C7BC59ADA91971A3BDA1ADEA629CE6CC92BD542CDDFAA7706FB2
+6CDDE2DF07E56D6741916AE8E8744339816F3E6C38062747AA9FDA2A2678A6B7
+EFEA870AA3A4D71B25EE3013EAB1DBA34401B867C7A41AE51E0421D41D3BB83C
+E120C8FEABA6E5DEC53A689C21426D4BBCB68CB37568761C360E6D4E3596FB7D
+F4DEC7918E58C0293D12D6DDA7E9DCDAAD7C939F55CD1BC4A228B31E9A904156
+DA6B40B08E6ACE674618B768DD681C772A3E55FE096CF949CF3B0460ABDCD891
+D17B37B355B29AB5137899C036F31DA026244FA25FB798FBE5105BDA29F46538
+D3D3AC1001A7BCECE64DE94FFE6C354166A0F97256137BDFA07F6E22A3D1D2F4
+9588DBAE95E895BC5E64DDCBBAA8D0A22C229B42CB717FC711E7E9DF793DF80B
+9F14754585A3C7E17F37B32924B9F9870DA8635E3E18BD1DCD81EDF01834D9C6
+B33F23C956C2FCBFA47D84422F583459D827D1E120B97694D12F1F54D02379C0
+D288F7104F3FFCF4F76E3494F4ACBD1BE3A15543CC680924C78A473F8E311ADF
+8FE00A04C6C393DE61AD3EDA5BC031E2353076A2489391B52632387CA28A7B93
+FBB065A6EF3658AE80B1ADA47E9B2539E73A71FA75645F85ED8ECC257FB4CF26
+B6C912DE9D0F9899E70BECCB934AD32CF49A093371A9F73DE6255EBC39DE1E7F
+00D0CBDABD4D0383977E694890E71FBE5C376BE5F3A80C28987417504F515C50
+909F3D31178BB9B1D085BE514F71B910A9085BD6122DDC72A150BFE266920E49
+5661BCB4BAB51D6DEFE32B616963DBD989FCDD1637B294CE4E288655FBEFA1BF
+7F25BBF8CF17C2D5FD161A7C2CC9CC7490D9BF15A1D35B3BFA43ADE256E88BDA
+BD490D92907C57BAC408A575EC84D6AEE070148C7C9A91C03B09FDBD792E8FF0
+C0B886AAD2EDD86541E5E579359D40E3AC312ACD3D8FD49F71BD533DDF8859B1
+BAF17F1884E331DD07CEEF93B71D492AEBAADF7A263450A7A72210CE630A0D37
+BF024BDC09ACC882816B8C22C62AE38A3A8D0F6EBC2B1B2C0B8161A8B076DD5D
+4B779C0788546BB4CF57332230D237856B00D79C28A7C01D11F44B7304F69075
+94B97A745DA43D1BE561372CE611C345A843834E46AD9DDB16CABCD3FA33D6F1
+F6B5C0497F5EE5400B305CDC16A7EC286AA4D45D0EEBB9DA06AC9C5294D68EC9
+E4DC3CA2B92CE8FC0526184A86EDC7AB34D67E60AC12D9CA8FD300235EC968BA
+92C6FBDA47572BC5600F25249F60AD287CBDAE980E747FCBE7EE5CD323E733F0
+63553B494D3DDEB9CC1480B5C3BB79A28E419AA65B18CB297AB383419E890E2A
+CE6F98C9900CCB4675280A10CF060B8D220DDA1BE55DFA65715EABCC1AFAA271
+B1F8732341613E17B231231A0D24D4D7FC198AE04D89A99C4536217769C6FBD9
+5EE24A6302F97438F7C0E311C878F674B4477A5ADA3952CDE4055AC408B8174E
+86F8FB797646DFFFE0ECA25D1BAB9A9F71F3926D3D85AA63E7A8C931D71E79E0
+AF1EAC26FADE468F4FF7F3861D14C10E3BE1F9EAFD6D3A544E8108D5DAB5B180
+3950C74818BC8AF4758A108F462EF1826647A49667F5E482038C54716856D9BC
+35F29922846D2148F92F943E951D7438C73D6A60459A8003174036C64E1629CD
+155D47FD04B03C023AD67CD5A70C98AB556EEAB8C48169706E5B352F6505D580
+AC945171BFE62E81F8F500438AC3B64D857BA5BC54C2C4BBB237F8FA51296255
+E66A92A61FE13FDE781D393557EB72CEBAD86511035F775FAC39A0479CCD400F
+226709118F887F47CC2ECC8F79816D4A945B2845F50AFD62D8C9A9BBF4739496
+9E644BC9F7B04803B7EE75A09EAE94365F6F374B4FCEB0B506C76297564B9B6B
+8B812BC3A33929AA94692572B010E6210AEAA312BDFC88BF302244AB9D587A9B
+919823FD01DE12438D960944D1977800FEB49E638C32E5B188B1CA033E0C37EE
+A142F746367888AA119535F0CCAF7EAA461B790EB089D2D6962E28A398439BB7
+9C9943654D7A2D765B46BC0DD1F915327F369162E1BA1BA83110B93F442905E0
+523BFF5E279508A98568CD5CFD18FABBE9D17265A9081E7BF64155A2CE3C0DF7
+88D00671AD65654709589BAD7EA65BBA811387ABA5CA0BC3F66D3D48597A0D1D
+2C268375DF47CCF62166262AE4840AB03BF49BE67A05EF66328EC729F03CA5FF
+AD3937FC053E223303565DC771ACF32E63DFB96D5030E787961D72D02C195C66
+B48E9AF0309DC169CFE8D16E2818DA94693A18F027DEA0D9122E8494CE3AC668
+3B5554571BE12596F1E4AC4A664CDCEB7842581CA963B239C132D1566EA3C8D8
+813C2E0080CFCD413A5E2C9EEAD59E66502FB01BB368F2FA3CF56A1050F137A2
+FEAFDC6A20C41F128D7F71AE194BB7FB162DC7DAA8343334F08112B1C794FAA3
+1573564D8D7C11D702C166B199C7098769B7EC2F642E351BDA11D4F792AF6C22
+BF79FCF36470B18B73059213D441E7727326D7D224EFE80C19EC2E678B3D220A
+EC405BD0CD2C5504A6F61532B0DC5A976631666169F05CCAD28930D39D3F1E7A
+B6119FB4C73EAF0F026CECECDAAC8557F337C02F9225E1D7AB31E65498EFFBCC
+0EBC7DD1516DE41595DAADB6B31FDB14998CED54D8A0A2A1EE88C2D56F05A555
+F0B49D72C3BD5AF85D8802F20DBE59E59DD0448AEE35A14DC8F6845A9203AEB6
+9911A213BDE76F9D4FB11BFB4BC0FDAF6692812AF7547A39985F67E40180B7A1
+C6E9D7E3BDBE0AD70479625AC2F54B1C01B5F1E17787A3E469C5BD0779B1584B
+C7E7D01621D9B998D3903635B32E74E7D77CC2A6245E5230C14BFDFCF24CBE2F
+64DB8BA17A79F27EA674652C989531463E7833FC122F6701F41C8B1D749CC130
+922AAACE9ADF91FF3B731012F7643054384A438B3A43F355C3471931E082EA51
+CFCF63660736D82BB88C7A4F3867C13E6ECCFC7DB4002043149C6F905AE2B64B
+B33589A36A215FD48E971F2F3C10D5F3330BFB4ED7627F89D16EB6794BBB90FB
+F380521AB6AF021A81D1608189AB8695A392880FB7027C3A38DFBC3C772B0F93
+4A2603C8133EF132884A42E6FE1D73A5F4CE17C0AEB262EC0055328D433797C1
+D1180A8D59A0FB8BD22175C5DC28C265CA31C031E100CC37EA29E6D526366D4A
+D6BD5507F07509B97CB9A1868CE86A86D52BA42D713ACF383F1848D9A27076E0
+3A1715F6CBE963052FAC7E57B9DCAF0FA6777EA5D65FC33C0BFF36E1B6AE49FB
+204EC14CF1D1BAD3A8104A593B43D7C9C6B4EE6EB3444683AC4745AD7577C8EB
+4BCC88AC389883B37BC718470E0887E1804DC3C2F415085B6A429CE674B7F370
+E3FF8681F841D409A1038F9147B65BCD9C77943660D94C63C3BA30443BD15323
+1F3D5B83D78FE414B0B6A128FC90EFEDEF2B2554E573151DAC74A3531EDCF2F3
+00890D0BA07AB5BA183A20AA9D5C5CD7D14794898D7FAE39283C59A5BAB45AE9
+1B596C5E163A457A5F4F882B97A29CB81BD3E197F42AB3C22CF372FBF4A2CBE0
+F5EBE1A1738A509E39E1F791F469AC00972AEA1B1C3AE1572D2AF36A73169DD6
+B302B1D90BCBCB789721C2678208E34AA32EE7F55D66DD4555D3D1545AEAA07F
+C86EF939C6CED4BDBB0D7D2B808F1CFDB2F2EF43D04E0D9E68F14754E8834C78
+91BB
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+cleartomark
+{restore}if
+%%EndFont
+%%BeginFont: CMMI12
+%!PS-AdobeFont-1.0: CMMI12 003.002
+%%Title: CMMI12
+%Version: 003.002
+%%CreationDate: Mon Jul 13 16:17:00 2009
+%%Creator: David M. Jones
+%Copyright: Copyright (c) 1997, 2009 American Mathematical Society
+%Copyright: (<http://www.ams.org>), with Reserved Font Name CMMI12.
+% This Font Software is licensed under the SIL Open Font License, Version 1.1.
+% This license is in the accompanying file OFL.txt, and is also
+% available with a FAQ at: http://scripts.sil.org/OFL.
+%%EndComments
+FontDirectory/CMMI12 known{/CMMI12 findfont dup/UniqueID known{dup
+/UniqueID get 5087386 eq exch/FontType get 1 eq and}{pop false}ifelse
+{save true}{false}ifelse}{false}ifelse
+11 dict begin
+/FontType 1 def
+/FontMatrix [0.001 0 0 0.001 0 0 ]readonly def
+/FontName /CMMI12 def
+/FontBBox {-31 -250 1026 750 }readonly def
+/PaintType 0 def
+/FontInfo 10 dict dup begin
+/version (003.002) readonly def
+/Notice (Copyright \050c\051 1997, 2009 American Mathematical Society \050<http://www.ams.org>\051, with Reserved Font Name CMMI12.) readonly def
+/FullName (CMMI12) readonly def
+/FamilyName (Computer Modern) readonly def
+/Weight (Medium) readonly def
+/ItalicAngle -14.04 def
+/isFixedPitch false def
+/UnderlinePosition -100 def
+/UnderlineThickness 50 def
+/ascent 750 def
+end readonly def
+/Encoding 256 array
+0 1 255 {1 index exch /.notdef put} for
+dup 58 /period put
+readonly def
+currentdict end
+currentfile eexec
+D9D66F633B846AB284BCF8B0411B772DE5CE3C05EF98F858322DCEA45E0874C5
+45D25FE192539D9CDA4BAA46D9C431465E6ABF4E4271F89EDED7F37BE4B31FB4
+7934F62D1F46E8671F6290D6FFF601D4937BF71C22D60FB800A15796421E3AA7
+72C500501D8B10C0093F6467C553250F7C27B2C3D893772614A846374A85BC4E
+BEC0B0A89C4C161C3956ECE25274B962C854E535F418279FE26D8F83E38C5C89
+974E9A224B3CBEF90A9277AF10E0C7CAC8DC11C41DC18B814A7682E5F0248674
+11453BC81C443407AF41AF8A831A85A700CFC65E2181BCBFBFE3573BF464E2BE
+882A715BE109B49A15C32F62CF5C10257E5EA12C24F72137EB63297C28625AC3
+2274038691582D6D75FE8F895A0813982793297E49CC9B54053BA2ABD429156A
+7FFCD7B19DAA44E2107720921B74185AE507AC33141819511A6AC20BC20FB541
+0B5AAEC5743673E9E39C1976D5E6EB4E4D8E2B31BEA302E5AF1B2FBCEC6D9E69
+987970648B9276232093695D55A806D87648B1749CB537E78BB08AA83A5001F7
+609CD1D17FFA1043EB3807AF0B596AF38C91A9675E2A53196FEF45849C95F7DC
+182A5EC0EC4435A8A4B6E1CDBF9A5AF457564EA72BF85228EB6FD244F2511F5A
+CA9B71A65D53CC06EF5F7EC3A85106139A4D312378BC22183C09A229577B793A
+1B7422611C03E84BF809F46C62CE52D3AE29CE01C32B202ACDAA5B72733EB0AE
+C31D7EF7BA88D2D14F85313F7A8B9B7A5B124B03AB923744D336C969E5CE304D
+3AD977A46664479EDEFB69F113024E761C05FA48A54072DF9E12C2F352ACB3E6
+D04F6EEFFDE209E7FA3DA22E5B1D1409461F4286B7F4F8251B44E5CB7805762E
+E129FF4A06A7458F3191926B1CAF70E32C6571AD2DC07C34FF62840896F4D200
+761B1A7FA356526D1E3AB4C542AF13623BAEB9F61B1BEEF79A9205B1FEFDAE24
+8799D516A9ACC30BC0139C63C9A0523E9D5439213B67D490C96F902958779B8F
+68BD8E9FDDCE8A3A2E35877DB6C94B7612382ED8F218EB1157D2ADD090A2448D
+10B99FBC9211C5629ED1C61C74FE93041E5AA03EA4AC3FFDA00C2B6E719CFAA4
+262FE17F66804A6B54D3669836EE4367D2A2991580C5564463C973CA0DA38AC6
+922716E13B4A807B50304B8826CEFEAA47C305FC07EB2AF25FA7945797237B16
+56CDE17AB0834F5C97E0CC5741B061C6FF3A8DD1A79B9A173B66A6A750538E26
+32FBC92E75BA15CFFE22A7302F47908547007402569158F62C29BA2956534FEA
+7DACF1E507AC309DAE8C325F2A6023D2FBD81EF42146BFCE6A16A6310A650460
+7B07BB7647C8760FADDF0DBBCD3DA6CC4645D1732DB3A22D8B76E1D2D48E4D4A
+46F4BEB80CE65F3517283A1AE08391FD1C10ED452133706BC6725AABC80107FD
+754A8BA47B0281D479F052CE26A723EFFACB79B213041A536542AB334769A2BF
+88505D82C498ABDD5A73EB539530F47CAC52825D16A969C8BB56D4A7F2830B8F
+CB63B92B576E7BD922A4B25E634751F8A3B7C4EBAFCB373EDC8B8281B1D1371A
+7844E9AD990CFF09F0D7ED73A5CF873D2D5C9E8A9923CFA31E1A4B4CCCC40760
+8B3AC8FC3C88BC08BD7407725281BB879A1A822D94997826418F1B89D303F2C0
+BE7A0102E6F529630CBF1BC5BF3E4578C164A3DDE45E62A957EF3FB7F0FBBA6B
+CA1E79A1ED195B6A11CFB345B663C5E72FA55D80476F604F6C4257B51686AE25
+8F7D159FE605DDA0AC74BAA5034F29FFFD403070013C6E2D8EF6A0990D91173B
+D5A3AEB98B64E412991505C3CB7C2CDE13C091FEB3DFBCAF30C4C19511102300
+135BD5D444BB55692013F52056908DFAB2ABFACE81A58423ACEC59344CEF7D4A
+C5A3EFFFFF70759BC3E593D878281225060B97D1BEE6B26EED90571FEAFA1812
+1115C0EEC892F5DE6FDD68321A0B3F10A2D771B79BD85476AF6018472A499A86
+07D64CFF4550866AFE590C471C80EB12CB3A989A60BC7BED39097C12D9286E39
+14C7952C4C64820B4DE44A1827B7B0B535244E93FDB80036D6332F90F95B472D
+7031E7E3819E881BD0313CFA112EB3AAE943C99C47635CCA7E34DC0306C04E5D
+2E9F60FF037EB11602BE74E8E6B711392E866E3E55D988F7C856417A2B9C186D
+639819B4786D039B77F8578EF63C088FF28BD08D8353031445C8498A8F445BC3
+D08923D32AC04BF3CAFEFCCC1E77EA894F4E846F47EF62D6841B8D8576FEAE8F
+90044626869D04D61D64D56E8C51AF8C18D6CC3FEF3B6C4F7D56FE3260354948
+10104F69B117FB8269292579A7D52FED688C663B643D8D99F13956612271073E
+1A337AED059B7A93819A28CDF01569CBEB51069D22ADAE25C47355560F402B2E
+8C9900DA82B79C64497C8494F42FABE5AC41791C2010D98FB7E593C744F250DC
+D837DB0EAA4F75D0016970F3AE8359878A08CF9A697A06C5EA945819151265B9
+1A12122B98F79185DF852257BB4798E7DC03712EA6ED34F6E6AE1476788DBC33
+9229FADB8D581BE1A63F596698DBD6DB98A092F67197A4FD4A50B648F2691875
+EE2495D6BB310078F516785A0CEC7EB6E8305FDBAEB1D15690409FE32DD9CFAE
+DBD3866FB63EBCAAB73E3E4BE5D7F3AA44793938AAF3F8341683F0790F1D46A3
+60CE083F9BEDDA22E0639A92393960F86602216FA51E2754BC2F4CD0BDECE3D8
+FFAB7E0E49613DD4956C9A10AEA798BDA1F756C755BEC12147ADECAB0FB73B7D
+203A11D84DD2AB5AA98FD38C1C2573570FD49A4924A94A106D2A7D850E793608
+FB135853E8C4204441CDBE697FD0CB330B1C3596F32D2BCBF263237EAB362D09
+DA6F531B40384DC91F30674760CA7B64BA1968F6A7FC9EBEF431A1AFC5E76D7F
+2D44DCB7F61C7F6B16196B3E8B47343F572DBA8B8B21B43E35BB6B2DD5C7982D
+244FD4304D254D6CCB5E8CF70E77F50812F41A988EEB3B26BF0F6F69BBA18077
+31134B5A5823D10FEF6201D045AEE7A24E0F25376E9FC66340C56C05F6CD810B
+724D85CC4BB8D789834A447CBBA159565D08BA5793D8599035BB5063271518E8
+F6C50E7DCE71B1D186270DDC860C6DC0CD506010EB5B1FDF6BE47A9A18CC15D7
+D657E58BED9EECAD5CE5D49F63139A39BC52C6584BB2C3264D51BD584B40F8EA
+AFCD8B83F548594386EB2B05CE803105E84931DC6E7A1398073D48E130E0D907
+CD0F1ECC3254EDF5D4DDBF44415DC9BA66C673820CDB0FDF033D59BE2B5EFCEF
+01FF9D33EDC88F8D522E07F1689D024DBCD09A16A63519E1764C8630FF36058D
+CFC07027E0ECDA01E0E85B166C613B22F587B4D355EB018BA93E92A36007B4DA
+287FF5A91F7D8A0EDF5554ACCF45AC8066E88865C5692E63EB99CAC81367B605
+8E6C19EB98EBFE0D2D161B447B9A70CDD1122C7B78A413369016E6D8481E2AE9
+9AA97B5DD0ACC9B0820F7742CEB2F46F89F3E2092621969A88DC0156B4F941A1
+6BF1546D4B136657C47B082A8A35FE96016BAF3D9679B8C32EDDD6AE6DF3BFB5
+7854074FA019707FC22BFA82299E72ADF9A980AE29A8E2434277E58B01F6B03C
+192E1E25DADD49F6E3F69799AE62B56E00B60A031BF8721DB8B2CB6D4A4C15CA
+AB1FDE010AB7DC0DDED977389B101B8E53A949222FAA126656E02817DD32B0D4
+A49516CEC2B97EA7C78FD66229B044EB92F502384BCC6CCDFFF995EABE3BB7A9
+50D5D1AED861E7D3BA8D333026C673C5762712E763E59261426044583D789C67
+A606B96F97663F92BF104CE02FBFDFC521EC0D6670B7D4F85A229F51426DE912
+3B729C4A535FB7C88D0A5E78074751B58885DD6BDD2DD9E9C83F105E8CF63DDF
+CA7DB39D0319CA7CC2E73F42747F007574DE25AE1538B4D493D22D0D5F0F80C6
+5F6FA3937C8391DE2F0116F81DB2DB0EF751EC838A7F85F163A6F48804E84B96
+8D715EF25B7E2A5CAECC558D80F421052A1D698F3B8452AC27E30A4E6226E3CE
+084C8A83ADA0818A110923CF7AC7AD4CB92AE4ABBE0A9EC1FF935FD02774C1F7
+92A278E513012AD17722A23C55EF82E18F8847B5CCE47F4FE3EC508BA563F7B2
+AE56C94285A18DED4D432FB0CEFC05A20BC17DDF9FF919C724810A8ED7358A27
+97EC93C1A13C443A91947FE1F6F528EA7B628917FA7E554A1D7B31ED46C5ABCF
+92BA57961C8876DB4041305EBB029B03D8351D5E2819FF87E97ED214D8F1CEF5
+7F7668DDE223721C0B810F4A4AC81CA4EAC86EAE546E1B15D91E626FB9A31824
+5BFF17C4E79FD56ADBF6DBF01BAF6453A81EBDCB38A5FC0FD0FF0646B3B0D199
+13E2E59A1B5CAB6DE5329BE389BA0E2A2AB55CA40B711ED746C24F1E48892E76
+6DACF7DA163CDC90CF076763008E7A899870CDED5A80758E6177BE6B93B07EB1
+5800A3BF7B9AAC3FA825CE594EF5B7546B181375FA8F37608DF17856D2F8EBD5
+6030A9E6F6BEAF224AD2AEF76D03B023E2FCB922CB8E3C6816AABB61FE6E4F83
+F21B4935102C860ECA03DBEFCA461F0E5B93E5A8D18440BCF7D1D6252A24CB6E
+A64FDAC8B67C4888519AA368D9C4A8C08C7155DF5BACD75C5196C571C3C456C4
+7CE8D90215FA6EE8CDD72C48740F7F5930EC3632DB63A9C8D2DA125088C0F05A
+9FC83D16B7F53163F4EB6FF372C6C3115F1E68EB35967D11126EDEDF0BF80817
+E68A698183B3EB0A207DB43786E1B9D289359D75AD5E465328CAA90E712C2962
+AE2A466173F2FF30EB535A6054BB0B875DC8552C16B49DF17CF84D98D35497BD
+F55E273FCBB0C735899529A69990E09149FBD2DDE64B7FA8D50AE83925DF03C8
+0B63EA158FBABB12A028803DA4B9DD6C48C0FEC469C4E730729F4BB420D5B003
+1918B4AE9CF35CFD31E8E62A44C0484E3D00143BF1D330235E821E5CFEAB4D31
+7CB4604DB1F310457FCF9075A3527279644D908DE847CCD00B6F50DBDEF91D3E
+38238CAF550FDCABA2C3A46237218DCC5A09AFAF69997E1EBDA7EFE6FC99ECC8
+5D4AFD5EE35FE2346BE79B499EC8EC436868154A947D13BC02C780EBA4B9E64F
+3026F1BF5DC1F8D64FEA1281EA40B4BC355638A3A59BD9055BCBB232FA45EA0B
+B405131B64F105814019BC55466EE78E9E9ABB62DB30EA452F7EFD7196C76A85
+15B2CFCD89922CADC0F392B0C54A231F3999AEFB53C24EB0C63B0C8A1A1ABB6B
+AAB2F93E5ECC7AB90EADA320E918106BAAFC1F8C425C617639984629018BA674
+6FF4F338AC43E23BC3740542911C058D43A49A11CB3A0CC8E3088BB5BA6048D6
+CC2AD250DE956BFBE83BB24C945C20D9C22E7105983F284EF478F9B68BFB0322
+EEB7D62802CBAAEFF1C2332159DCC7243EA40CE15C734EA905E04C476B178B82
+A08ABCB0B86A7330C75E62EE7844C9E22DDB013ADDF20AFE08122EE1B930A81D
+806A0F8CC584CB7FF5F56F9B35E5FF78FD93E7E4A40C64537464EAA275FE88F4
+461FC6A467C8A69B9A9FBC10D44AC1B753D313A8E7D97F5FAEB60F82855658D1
+4DCEE043C8FCDFD8A29DD091F3BA55874A458B2B8989F35055C72FC411382361
+9AADC717E602B48D7C9521D3971A6F7EB19D539445DDE9EFBC5B58FA9E5E426C
+172C45CDA24985FC4632287FC3B15849DEB56F5A061993AB10A6BC59868534E6
+69888175053108B77E4978D971B4EC57224C0F93EEA4C15AE92254140A94704E
+ED5666FC06C5341F643F779CC88A9E81891565C63B6F7F6286E664F4E0A48690
+356DC96F1B98026C563700772485B83BFA06435D4E0793EF822F423C93FBACA0
+E5D889D2B76771C6F0EE997A5DB43C2F6921132890406E3C33F6F159B14C5D78
+7C151BDFFDD02B697315F191B5490073EB418A4FF2A398C68D44F0CD1B87CF9C
+B52F12728B72F94D752D23151196A256908135C87991E508B8906CE2539DCA8A
+31F86809C8C6C18A09F6129BD7CDC6B37E76B648788056851F22BD3E3B5772FF
+EC01D822B57FFDB3BAE624F05531292641FD6A7E3666152D18F6C653048DD7D7
+98A942C840C4A0FA662F260B21C64214152BB86F03662A330109C5AC0A5EBA30
+C6201F558858130703DF76AF4FBBEE069BDE45C0D9467077D85FFED4F9BA9C61
+AED87D67CDCA453A6528AC5BA153E1039D9CCC556CEA5CBB542265FF54A1B208
+E0E13740E7E7C26AA00AEE909F8F3ADC2726081A744D8EF6BB711BF5F611A900
+76F91C26A338DA13A7160A9F42410CCEB3190000D963D036FDA05A29F598EF40
+8FAE6F8E7E6F50C99C3304A573501C13A00023085F057DF331E3354CBE65D573
+CAE73BF15B3B96B502E0AAF2B4A86237E98A997AAEFFF4227D5A26E8972C48E7
+761F430733E6EF8AB2D903C17FAFBFA21C25F8A0AC157D397BF3CC1AE7598F0A
+2BE4FB46B29443CE57F41FD5F91122E9D86F903E94D5B55E2BB95949C156D138
+89883BEFD634311F9280C7F028DCA6408D3A682DF5B55B9F7ABF08F019190F60
+D39E4F0E80F0594235B09A5320109638B938633A2C196E4ED2B43DCD8643C3CF
+C6123B076B7F73352F906D96FDE0FBF50CCCA432712C574D5857838BAC30B485
+D25024EB254A7EFE57D1DF0892C275CDB3DF77602F0FED0FAEBC644BCACA04B8
+B424DB125E487794CAB36E01B5E1A26F5E1E97A739AA36D77A12F5B45338EB39
+AF36CEBDED55DCBFCF497FD475FC6BAB5530AD6153C6BD982564EE8712185F1F
+D5EA7ADF4104661168A01994C1FD773A50C8AD6A3E4D332E4D59521BB8BBC6C3
+866EB4AC3EA4532477E6CBF6BBF0860031C3B916AA25E3492670EA67F55CF4FD
+207C684A0DDB6F4AD21B2909CBA71BCE2E762012B0927BA72367A6AE0AF87F73
+756C9BC85E4EDE35317E2CCCD138C02C7A8013AFDC1A48C3A4BB8EF257BDEEA7
+60E012F54D12D31D18DC59D5E526F12567B8688B4B67E16B56713870300016BD
+A3B9DA87FDC865246AF8E94316799110D86B1DDADB8A673402D4226C519C058A
+1D1E5A5778584FC28AF12819B1924060BC4F54B1054EA6AB0149E04B8C4302D4
+A56D8A347EB5D3D2A0E12CF7E35059BDB53D9FF6BD25F6D9619BC4669CFC1048
+C6C9978B8751B840F27D82A69075832BE59F55C1737CBB1220FB8FF691FDBDF3
+03BD7D225A9372AC221C38245E48320E1CCF898D9EEDD678E5B8C65B7F588321
+1A3953EEB9B39EA9A8CB72DB08C3E9234DFFF5FDF9DF804C021D57E97DA7622B
+97F4CB6E0EB640E0DC9EA15C5193F92A3A7565F4C7A4C9CC327F7CD2C44900AE
+D9E76FFE62FC37FA376E77131B566AE67C3E09DA80F198BBB995EE8FA47EEDB8
+4B467C6C7DB8AEA745CF8C56B8BE56534E9C56FCB2B7006426DFE93D728FA4CF
+94F131C549814E54ECE7C914C5FE8E4961D3437CE7475D03534B62650F551D97
+201C794AA877445DBEB11C85ADF6119B05360700F8CEDE4766E3A1D7A35CDDC7
+9ABF7C619E3868A39D1852DBE1EEAF5D7898C78323873AC005542B68C43C5000
+CC58F675EB595F87C879694751494676465891E8A897158B481F11A171CCBBD7
+29603F00210CFD7FF31FE3D273933ECC34AFBCC4108D9B76D9ECE63EA06CF939
+4799092A54A749DACB82C1424E9879672C8BC084C360014C9C1B6D5D65C68AED
+66CE329C3AD712C0A36BE7EF03FDF339CAA2E0336D387A693B1DFAB5D5164E31
+14755A158168962C9B399F8F1DF3FF5060D7464D5071058C30C572A2BC7DEE53
+84BD7614A4BEC4C84E18CF7EC81C811724463BD46CECA5FB57B0F55EAE20CC74
+6AD815D1897B037C197D2456797B992C20C70B663BF99FE28C513B4E221C8E12
+49779F8C0AE8517048ADDF7CDF0D698E3EFE60071C4997B7F5EF12B6CB65390C
+224F13FBB99FFC034C0710F05019899689B6D3350BBA65C7CE7C2AB03D81B9A5
+5F3D65E4D462DAB189006669F7390A78A1B8908A4C913B15DB8827DFF15BB9A4
+A6037DDB643103B937257A7DAB025F09D53FBBC2BCB6B0BCD8D56B2B2784E498
+1F6CF8470DCC892AD0CFE11578718948BABF9C1427084643B66BB9181094E29D
+5FBE37708E1D8A6B7518A96876844CB66954227A7A6AF28DD075A462526DD5D6
+40EECC56FA366106E55C7068997B54B7F0D03AC1AD45D28C67C7ECA99DBEDB1C
+E18A79C353113E2E05B837E703278B202112B1C69E42A69D64B62F0E7D8F7E5B
+C1F93F0F99EC20EF312046F4B0CD7DAB31E422070B629A7FA96583CF3F1519CD
+CF08806F40ACD7BB5C960F21E9DA7FB3C72CBA0801ADE83DF738A4EC94F2977D
+2B95A166BA4AE28CAD1E37FBBF49D342CDB4DF615E2C5F3076313AC517C350DE
+710F5D52DE31DF69864D29DABF14234DF13904BA4333B0D714EEA55CDD79DE45
+FF5D64259C877191547076B1C7684CD252C0337BD9DF66CDC5DBAA4F3102F2E8
+FE48385C55727B80D11F3BE0B7568AA9356FB2B180A6B1392D620DED02F0B736
+5F4399FB9D32DFBC8ED942AD311C82250DA8BFE98D65
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+cleartomark
+{restore}if
+%%EndFont
+TeXDict begin 40258431 52099146 1000 8000 8000 (auctex.dvi)
+@start /Fa 172[523 3[732 3[731 483 339 5[680 67[{}6 885.568
+/CMR8 rf /Fb 145[797 7[797 102[{}2 1594.02 /CMSY10 rf
+/Fc 197[284 58[{}1 996.264 /CMMI9 rf /Fd 221[820 34[{}1
+1594.02 /CMTT12 rf /Fe 134[523 3[523 523 523 523 1[523
+523 523 523 523 523 1[523 523 523 1[523 1[523 1[523 97[{}17
+996.264 /CMSLTT10 rf /Ff 145[738 1[369 2[369 58[369 46[{}4
+1328.35 /CMSL10 rf /Fg 139[518 3[738 664 738 1[369 2[369
+7[646 3[372 1[372 52[1033 38[{}10 1328.35 /CMB10 rf /Fh
+135[652 3[514 4[712 731 1[335 5[435 633 3[682 51[475
+45[{}9 1454.55 /CMSS12 rf /Fi 134[697 697 697 697 697
+697 697 697 1[697 697 697 697 697 697 1[697 697 697 1[697
+697 697 697 697 51[697 45[{}23 1328.35 /CMSLTT10 rf /Fj
+129[523 2[523 523 523 523 523 523 523 523 523 523 523
+523 523 523 523 523 523 523 523 523 523 523 523 523 523
+523 523 523 523 523 523 523 523 2[523 1[523 523 523 523
+2[523 523 523 523 523 2[523 523 523 523 1[523 523 523
+523 1[523 3[523 5[523 523 523 523 523 523 523 523 523
+523 1[523 523 523 523 1[523 523 1[523 34[{}71 996.264
+/CMTT9 rf /Fk 133[455 540 540 740 540 569 398 404 401
+540 569 512 569 853 284 540 313 284 569 512 313 455 569
+455 569 512 284 7[768 1052 768 768 740 569 754 796 697
+796 768 938 640 796 526 370 768 803 668 697 782 740 725
+768 7[512 512 512 512 512 512 512 512 512 512 512 284
+341 284 4[284 26[569 597 11[{}68 996.264 /CMR9 rf /Fl
+206[441 49[{}1 774.872 /CMR7 rf /Fm 134[697 697 697 697
+697 697 697 697 697 697 697 697 697 697 697 697 697 697
+697 697 697 697 697 697 697 8[697 1[697 1[697 3[697 2[697
+697 2[697 2[697 1[697 697 697 20[697 45[{}37 1328.35
+/CMTT10 rf /Fn 158[893 97[{}1 1455.65 /CMCSC10 rf /Fo
+133[496 589 562 1[558 651 403 496 511 1[620 620 681 991
+310 2[372 620 558 372 558 620 558 558 620 51[434 32[681
+12[{}24 1212.12 /CMTI10 rf /Fp 134[640 640 875 640 673
+473 478 2[673 606 673 1010 337 640 1[337 673 606 370
+566 673 539 673 589 9[1253 1[933 842 673 3[909 949 1152
+727 2[481 949 953 12[337 10[606 1[404 45[{}36 1212.12
+/CMB10 rf /Fq 133[727 864 864 1182 864 909 636 645 668
+864 909 818 909 1364 455 864 1[455 909 818 500 747 909
+727 909 795 8[1236 1690 1236 1258 1138 909 1221 1229
+1118 1229 1279 1552 983 1281 845 609 1279 1286 1029 1074
+1254 1182 1163 1236 8[818 818 818 818 818 818 818 818
+1[818 455 545 455 31[909 955 11[{}63 1454.55 /CMBX12
+rf /Fr 167[830 1[830 830 799 615 2[753 861 830 1015 692
+861 569 400 830 869 723 753 846 799 1[830 65[{}20 1106.96
+/CMR10 rf /Fs 130[636 1[636 636 636 636 636 636 636 636
+636 636 636 636 636 636 636 636 636 636 636 636 636 636
+636 636 636 636 636 636 636 1[636 1[636 2[636 2[636 636
+1[636 3[636 636 636 5[636 636 636 636 636 636 636 636
+3[636 636 6[636 636 636 1[636 636 636 2[636 1[636 2[636
+37[{}58 1212.12 /CMSLTT10 rf /Ft 134[640 640 875 640
+673 471 478 475 1[673 606 673 1010 337 640 1[337 673
+606 370 539 673 539 673 606 8[909 2[909 875 1[892 3[909
+1111 758 4[951 791 825 1[875 1[909 15[606 3[404 8[606
+22[673 673 12[{}40 1212.12 /CMSL10 rf /Fu 129[636 636
+636 636 636 636 636 636 636 636 636 636 636 636 636 636
+636 636 636 636 636 636 636 636 636 636 636 636 636 636
+636 636 636 636 636 636 636 636 636 636 636 636 636 636
+636 636 636 636 636 636 636 636 636 636 636 636 636 636
+636 636 636 636 636 636 636 636 636 636 636 636 636 636
+636 636 636 636 636 636 636 636 636 636 636 636 636 636
+636 636 636 636 636 636 636 636 33[{}94 1212.12 /CMTT10
+rf /Fv 136[1013 3[555 2[676 2[905 622 2[366 743 4[716
+1[743 97[{}9 1212.12 /CMCSC10 rf /Fw 135[559 828 559
+1[438 465 414 1[626 606 626 1[290 2[290 2[370 539 3[582
+51[404 45[{}15 1212.12 /CMSS10 rf /Fx 192[606 4[337 36[707
+8[686 775 11[{}5 1212.12 /CMMI10 rf /Fy 197[434 58[{}1
+1594.02 /CMMI12 rf /Fz 133[956 1136 1136 1554 1136 1196
+837 849 879 1[1196 1076 1196 1793 598 2[598 1196 1076
+658 982 1196 956 1196 1046 2[1076 7[1625 1[1497 1196
+1[1616 1470 1616 1[2041 3[801 2[1353 1412 1649 1554 1[1625
+11[1076 1076 1076 1076 1076 4[598 44[{}43 1912.83 /CMBX12
+rf /FA 152[606 606 86[606 1[1212 10[943 1[943{}6 1212.12
+/CMSY10 rf /FB 133[797 946 946 1295 946 996 697 707 732
+946 996 897 996 1494 498 946 548 498 996 897 548 818
+996 797 996 872 5[498 1[1354 1354 1852 1354 1378 1247
+996 1338 1347 1225 1347 1402 1701 1077 1404 926 668 1402
+1410 1127 1177 1374 1295 1275 1354 6[498 897 897 897
+897 897 897 897 897 897 897 1[498 1[498 3[697 498 2[897
+23[996 12[{}69 1594.02 /CMBX12 rf /FC 131[1212 606 539
+640 640 875 640 673 471 478 475 640 673 606 673 1010
+337 640 370 337 673 606 370 539 673 539 673 606 337 2[337
+606 337 741 909 909 1246 909 909 875 673 892 943 825
+943 909 1111 758 943 623 438 909 951 791 825 926 875
+859 909 1[572 1[943 1[337 337 606 606 606 606 606 606
+606 606 606 606 606 337 404 337 1[606 471 471 337 1[1010
+2[606 337 18[1010 673 673 707 11[{}87 1212.12 /CMR10
+rf /FD 167[1950 2[1985 1796 14[1695 1[1865 1[1950 65[{}6
+2295.39 /CMBX12 rf end
+%%EndProlog
+%%BeginSetup
+%%Feature: *Resolution 8000dpi
+TeXDict begin
+%%BeginPaperSize: Letter
+/setpagedevice where
+{ pop << /PageSize [612 792] >> setpagedevice }
+{ /letter where { pop letter } if }
+ifelse
+%%EndPaperSize
+ end
+%%EndSetup
+%%Page: 1 1
+TeXDict begin 1 0 bop 2000 17560 a FD(A)-72 b(UCT)9094
+18070 y(E)10465 17560 y(X)p 2000 18956 48000 443 v 26455
+20240 a FC(A)404 b(sophisticated)h(T)35727 20501 y(E)36401
+20240 y(X)f(en)-34 b(vironmen)g(t)405 b(for)f(Emacs)37128
+21679 y(V)-101 b(ersion)404 b(13.1,)f(2022-02-17)2000
+63805 y FB(Kresten)600 b(Krab)e(Thorup)2000 65687 y(P)-50
+b(er)599 b(Abrahamsen)2000 67569 y(Da)-50 b(vid)599 b(Kastrup)g(and)f
+(others)p 2000 68543 48000 222 v eop end
+%%Page: 2 2
+TeXDict begin 2 1 bop 2000 60307 a FC(This)438 b(man)-34
+b(ual)439 b(is)e(for)h(A)-34 b(UCT)15584 60568 y(E)16259
+60307 y(X)437 b(\(v)-34 b(ersion)438 b(13.1)g(from)f(2022-02-17\),)447
+b(a)438 b(sophisticated)g(T)43666 60568 y(E)44340 60307
+y(X)g(en)-34 b(viron-)2000 61768 y(men)g(t)405 b(for)f(Emacs.)2000
+63562 y(Cop)-34 b(yrigh)g(t)8030 63525 y(c)7694 63562
+y FA(\015)404 b FC(1992-1995,)g(2001,)g(2002,)g(2004-2021)h(F)-101
+b(ree)403 b(Soft)-34 b(w)g(are)406 b(F)-101 b(oundation,)406
+b(Inc.)5200 65355 y(P)-34 b(ermission)468 b(is)g(gran)-34
+b(ted)469 b(to)g(cop)-34 b(y)-101 b(,)484 b(distribute)469
+b(and/or)g(mo)34 b(dify)468 b(this)h(do)34 b(cumen)-34
+b(t)469 b(under)5200 66816 y(the)505 b(terms)g(of)g(the)h(GNU)f(F)-101
+b(ree)504 b(Do)34 b(cumen)-34 b(tation)506 b(License,)529
+b(V)-101 b(ersion)505 b(1.3)f(or)h(an)-34 b(y)505 b(later)5200
+68277 y(v)-34 b(ersion)364 b(published)h(b)-34 b(y)365
+b(the)f(F)-101 b(ree)364 b(Soft)-34 b(w)g(are)366 b(F)-101
+b(oundation;)379 b(with)365 b(no)f(In)-34 b(v)-67 b(arian)-34
+b(t)365 b(Sections,)5200 69738 y(no)277 b(F)-101 b(ron)-34
+b(t-Co)g(v)g(er)279 b(T)-101 b(exts)277 b(and)h(no)f(Bac)-34
+b(k-Co)g(v)g(er)277 b(T)-101 b(exts.)496 b(A)277 b(cop)-34
+b(y)277 b(of)h(the)f(license)f(is)h(included)5200 71200
+y(in)404 b(the)h(section)f(en)-34 b(titled)405 b(\\GNU)f(F)-101
+b(ree)403 b(Do)34 b(cumen)-34 b(tation)406 b(License.")p
+eop end
+%%Page: -1 3
+TeXDict begin -1 2 bop 49663 -1550 a FC(i)2000 3985 y
+Fz(T)-179 b(able)716 b(of)g(Con)-60 b(ten)g(ts)2000 8619
+y FB(Executiv)-50 b(e)600 b(Summary)199 b Fy(:)268 b(:)d(:)g(:)g(:)h(:)
+f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)h(:)380 b FB(1)2000
+12310 y(Cop)-50 b(ying)304 b Fy(:)266 b(:)f(:)h(:)f(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)
+f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)h
+(:)f(:)485 b FB(2)2000 16002 y(1)1793 b(In)-50 b(tro)50
+b(duction)411 b Fy(:)265 b(:)g(:)g(:)h(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)h(:)f(:)g(:)g(:)g(:)h(:)590 b FB(3)3660 17828 y FC(1.1)1212
+b(Ov)-34 b(erview)403 b(of)i(A)-34 b(UCT)-101 b(eX)104
+b Fx(:)203 b(:)f(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)
+g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g
+(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)286 b FC(3)3660
+19289 y(1.2)1212 b(Installing)405 b(A)-34 b(UCT)-101
+b(eX)254 b Fx(:)203 b(:)e(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h
+(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)
+h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)436
+b FC(4)5321 20750 y(1.2.1)1212 b(Prerequisites)133 b
+Fx(:)200 b(:)h(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f
+(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)
+f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)314
+b FC(4)5321 22212 y(1.2.2)1212 b(Con\014gure)166 b Fx(:)203
+b(:)f(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h
+(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)
+g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)348
+b FC(5)5321 23673 y(1.2.3)1212 b(Build/install)404 b(and)g(uninstall)
+271 b Fx(:)203 b(:)e(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)
+g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g
+(:)452 b FC(7)5321 25134 y(1.2.4)1212 b(Loading)404 b(the)g(pac)-34
+b(k)-67 b(age)261 b Fx(:)201 b(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g
+(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)
+f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)442 b FC(7)5321
+26595 y(1.2.5)1212 b(Pro)-34 b(viding)404 b(A)-34 b(UCT)-101
+b(eX)405 b(as)f(a)g(pac)-34 b(k)-67 b(age)205 b Fx(:)d(:)f(:)h(:)g(:)f
+(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)
+f(:)h(:)g(:)f(:)387 b FC(8)5321 28056 y(1.2.6)1212 b(Installation)404
+b(for)h(non-privileged)e(users)305 b Fx(:)201 b(:)h(:)g(:)g(:)f(:)h(:)g
+(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)486
+b FC(9)6981 29517 y(1.2.6.1)1212 b(Using)404 b(A)-34
+b(UCT)-101 b(eX)405 b(from)g(lo)34 b(cal)403 b(Git)h(rep)34
+b(o)286 b Fx(:)202 b(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)
+g(:)g(:)f(:)h(:)468 b FC(10)5321 30979 y(1.2.7)1212 b(Installation)404
+b(under)h(MS)g(Windo)-34 b(ws)159 b Fx(:)203 b(:)f(:)f(:)h(:)g(:)g(:)f
+(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)
+h(:)g(:)341 b FC(10)5321 32440 y(1.2.8)1212 b(Customizing)198
+b Fx(:)203 b(:)e(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)
+f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g
+(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)380
+b FC(15)3660 33901 y(1.3)1212 b(Quic)-34 b(k)404 b(Start)358
+b Fx(:)202 b(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)
+f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f
+(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)
+538 b FC(15)5321 35362 y(1.3.1)1212 b(F)-101 b(unctions)405
+b(for)f(editing)h(T)-101 b(eX)404 b(\014les)303 b Fx(:)201
+b(:)h(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f
+(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)484 b FC(16)6981
+36823 y(1.3.1.1)1212 b(Making)404 b(y)-34 b(our)404 b(T)-101
+b(eX)404 b(co)34 b(de)404 b(more)g(readable)259 b Fx(:)201
+b(:)h(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)440
+b FC(16)6981 38285 y(1.3.1.2)1212 b(En)-34 b(tering)404
+b(sectioning)h(commands)280 b Fx(:)203 b(:)f(:)f(:)h(:)g(:)f(:)h(:)g(:)
+g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)462
+b FC(16)6981 39746 y(1.3.1.3)1212 b(Inserting)404 b(en)-34
+b(vironmen)g(ts)169 b Fx(:)203 b(:)f(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)
+f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g
+(:)f(:)h(:)351 b FC(17)6981 41207 y(1.3.1.4)1212 b(Inserting)404
+b(macros)220 b Fx(:)201 b(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f
+(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)
+h(:)g(:)g(:)f(:)h(:)g(:)g(:)401 b FC(17)6981 42668 y(1.3.1.5)1212
+b(Changing)405 b(the)g(fon)-34 b(t)349 b Fx(:)202 b(:)g(:)f(:)h(:)g(:)g
+(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)
+f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)529 b FC(17)6981
+44129 y(1.3.1.6)1212 b(Other)404 b(useful)h(features)136
+b Fx(:)202 b(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)
+f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)317
+b FC(18)5321 45591 y(1.3.2)1212 b(Creating)404 b(and)h(viewing)f
+(output,)i(debugging)318 b Fx(:)202 b(:)g(:)g(:)f(:)h(:)g(:)g(:)f(:)h
+(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)499 b FC(18)6981 47052
+y(1.3.2.1)1212 b(One)311 b(Command)j(for)d(LaT)-101 b(eX,)312
+b(help)34 b(ers,)329 b(view)-34 b(ers,)329 b(and)313
+b(prin)-34 b(ting)168 b Fx(:)203 b(:)225 b FC(18)6981
+48513 y(1.3.2.2)1212 b(Cho)34 b(osing)405 b(an)f(output)i(format)344
+b Fx(:)201 b(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)
+h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)524 b FC(18)6981
+49974 y(1.3.2.3)1212 b(Debugging)405 b(LaT)-101 b(eX)347
+b Fx(:)202 b(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)
+g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g
+(:)g(:)529 b FC(19)6981 51435 y(1.3.2.4)1212 b(Running)405
+b(LaT)-101 b(eX)404 b(on)h(parts)g(of)f(y)-34 b(our)404
+b(do)34 b(cumen)-34 b(t)105 b Fx(:)204 b(:)d(:)h(:)g(:)f(:)h(:)g(:)g(:)
+f(:)h(:)287 b FC(19)2000 54761 y FB(2)1793 b(Editing)599
+b(the)f(Do)50 b(cumen)-50 b(t)600 b(Source)201 b Fy(:)266
+b(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)382
+b FB(20)3660 56588 y FC(2.1)1212 b(Insertion)405 b(of)f(Quotes,)g
+(Dollars,)f(and)i(Braces)356 b Fx(:)202 b(:)f(:)h(:)g(:)g(:)f(:)h(:)g
+(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)538
+b FC(20)3660 58049 y(2.2)1212 b(Inserting)405 b(F)-101
+b(on)-34 b(t)405 b(Sp)34 b(eci\014ers)256 b Fx(:)201
+b(:)h(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f
+(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)
+h(:)g(:)g(:)437 b FC(23)3660 59510 y(2.3)1212 b(Inserting)405
+b(c)-34 b(hapters,)404 b(sections,)g(etc.)341 b Fx(:)202
+b(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h
+(:)g(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)523
+b FC(24)3660 60971 y(2.4)1212 b(Inserting)405 b(En)-34
+b(vironmen)g(t)405 b(T)-101 b(emplates)222 b Fx(:)202
+b(:)g(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f
+(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)404 b
+FC(26)5321 62433 y(2.4.1)1212 b(Equations)308 b Fx(:)202
+b(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g
+(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)
+g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)489 b
+FC(28)5321 63894 y(2.4.2)1212 b(Floats)240 b Fx(:)202
+b(:)g(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f
+(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)
+f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)422
+b FC(28)5321 65355 y(2.4.3)1212 b(Itemize-lik)-34 b(e)402
+b(En)-34 b(vironmen)g(ts)358 b Fx(:)201 b(:)h(:)g(:)g(:)f(:)h(:)g(:)f
+(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)
+f(:)h(:)g(:)f(:)h(:)g(:)538 b FC(29)5321 66816 y(2.4.4)1212
+b(T)-101 b(abular-lik)-34 b(e)404 b(En)-34 b(vironmen)g(ts)220
+b Fx(:)203 b(:)f(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)
+g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)402
+b FC(29)5321 68277 y(2.4.5)1212 b(Customizing)405 b(En)-34
+b(vironmen)g(ts)371 b Fx(:)202 b(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)
+g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h
+(:)g(:)f(:)552 b FC(30)3660 69738 y(2.5)1212 b(En)-34
+b(tering)405 b(Mathematics)244 b Fx(:)203 b(:)e(:)h(:)g(:)f(:)h(:)g(:)g
+(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)
+f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)426
+b FC(30)3660 71200 y(2.6)1212 b(Completion)123 b Fx(:)203
+b(:)f(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h
+(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)
+g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)304
+b FC(31)p eop end
+%%Page: -2 4
+TeXDict begin -2 3 bop 49327 -1550 a FC(ii)3660 1107
+y(2.7)1212 b(Marking)404 b(En)-34 b(vironmen)g(ts,)405
+b(Sections,)g(or)e(T)-101 b(exinfo)405 b(No)34 b(des)166
+b Fx(:)202 b(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)348
+b FC(34)5321 2568 y(2.7.1)1212 b(LaT)-101 b(eX)362 b(Commands)j(for)f
+(Marking)e(En)-34 b(vironmen)g(ts)365 b(and)f(Sections)168
+b Fx(:)202 b(:)295 b FC(34)5321 4029 y(2.7.2)1212 b(T)-101
+b(exinfo)350 b(Commands)h(for)f(Marking)f(En)-34 b(vironmen)g(ts)351
+b(and)g(Sections)168 b Fx(:)202 b(:)277 b FC(34)3660
+5491 y(2.8)1212 b(Commen)-34 b(ting)344 b Fx(:)201 b(:)h(:)g(:)g(:)f(:)
+h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h
+(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)
+h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)523 b FC(35)3660
+6952 y(2.9)1212 b(Inden)-34 b(ting)123 b Fx(:)203 b(:)f(:)g(:)g(:)f(:)h
+(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)
+g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h
+(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)304
+b FC(35)3660 8413 y(2.10)1212 b(Filling)367 b Fx(:)202
+b(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g
+(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)
+g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g
+(:)f(:)549 b FC(37)2000 11756 y FB(3)1793 b(Con)-50 b(trolling)599
+b(Screen)g(Displa)-50 b(y)314 b Fy(:)267 b(:)e(:)h(:)f(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)h(:)f(:)g(:)495 b
+FB(40)3660 13582 y FC(3.1)1212 b(F)-101 b(on)-34 b(t)406
+b(Lo)34 b(c)-34 b(king)241 b Fx(:)200 b(:)i(:)g(:)g(:)f(:)h(:)g(:)f(:)h
+(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)
+h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h
+(:)g(:)g(:)f(:)h(:)g(:)422 b FC(40)5321 15044 y(3.1.1)1212
+b(F)-101 b(on)-34 b(ti\014cation)405 b(of)g(macros)121
+b Fx(:)201 b(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)
+h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h
+(:)g(:)g(:)302 b FC(41)5321 16505 y(3.1.2)1212 b(F)-101
+b(on)-34 b(ti\014cation)405 b(of)g(quotes)274 b Fx(:)202
+b(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)g(:)f
+(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)
+456 b FC(44)5321 17966 y(3.1.3)1212 b(F)-101 b(on)-34
+b(ti\014cation)405 b(of)g(mathematical)f(constructs)321
+b Fx(:)202 b(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)
+f(:)h(:)501 b FC(45)5321 19427 y(3.1.4)1212 b(V)-101
+b(erbatim)404 b(macros)g(and)h(en)-34 b(vironmen)g(ts)274
+b Fx(:)202 b(:)g(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)
+h(:)g(:)g(:)f(:)h(:)g(:)f(:)456 b FC(46)5321 20888 y(3.1.5)1212
+b(F)-101 b(aces)403 b(used)i(b)-34 b(y)405 b Fw(font-latex)185
+b Fx(:)201 b(:)h(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)
+g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g
+(:)g(:)366 b FC(46)5321 22350 y(3.1.6)1212 b(Kno)-34
+b(wn)405 b(fon)-34 b(ti\014cation)406 b(problems)247
+b Fx(:)202 b(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)
+g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)429
+b FC(46)3660 23811 y(3.2)1212 b(F)-101 b(olding)405 b(Macros)f(and)h
+(En)-34 b(vironmen)g(ts)264 b Fx(:)203 b(:)f(:)f(:)h(:)g(:)g(:)f(:)h(:)
+g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g
+(:)g(:)f(:)446 b FC(46)3660 25272 y(3.3)1212 b(Outlining)405
+b(the)f(Do)34 b(cumen)-34 b(t)198 b Fx(:)203 b(:)f(:)g(:)g(:)f(:)h(:)g
+(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)
+g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)380
+b FC(50)3660 26733 y(3.4)1212 b(Narro)-34 b(wing)153
+b Fx(:)203 b(:)f(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)
+g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g
+(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)
+g(:)f(:)335 b FC(51)3660 28194 y(3.5)1212 b(Prettifying)315
+b Fx(:)202 b(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)
+g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g
+(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)
+g(:)496 b FC(51)2000 31537 y FB(4)1793 b(Starting)599
+b(Pro)50 b(cessors,)599 b(View)-50 b(ers)600 b(and)3793
+33419 y(Other)f(Programs)369 b Fy(:)266 b(:)f(:)h(:)f(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)h(:)
+f(:)g(:)g(:)g(:)h(:)f(:)g(:)550 b FB(52)3660 35246 y
+FC(4.1)1212 b(Executing)404 b(Commands)332 b Fx(:)202
+b(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g
+(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)
+g(:)f(:)h(:)g(:)g(:)511 b FC(52)5321 36707 y(4.1.1)1212
+b(Starting)405 b(a)f(Command)h(on)g(a)f(Do)34 b(cumen)-34
+b(t)405 b(or)f(Region)299 b Fx(:)202 b(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f
+(:)h(:)481 b FC(52)5321 38168 y(4.1.2)1212 b(Selecting)403
+b(and)i(Executing)f(a)h(Command)143 b Fx(:)202 b(:)g(:)g(:)g(:)f(:)h(:)
+g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)324
+b FC(54)5321 39629 y(4.1.3)1212 b(Options)404 b(for)h(T)-101
+b(eX)404 b(Pro)34 b(cessors)242 b Fx(:)201 b(:)g(:)h(:)g(:)f(:)h(:)g(:)
+g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g
+(:)g(:)f(:)h(:)g(:)f(:)424 b FC(57)3660 41090 y(4.2)1212
+b(Viewing)405 b(the)f(F)-101 b(ormatted)405 b(Output)264
+b Fx(:)204 b(:)d(:)h(:)g(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)
+g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)446
+b FC(60)5321 42552 y(4.2.1)1212 b(Starting)405 b(View)-34
+b(ers)161 b Fx(:)202 b(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h
+(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)
+h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)343 b FC(60)5321
+44013 y(4.2.2)1212 b(F)-101 b(orw)-34 b(ard)405 b(and)g(In)-34
+b(v)g(erse)403 b(Searc)-34 b(h)183 b Fx(:)203 b(:)e(:)h(:)g(:)f(:)h(:)g
+(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)
+g(:)f(:)h(:)g(:)g(:)f(:)365 b FC(62)3660 45474 y(4.3)1212
+b(Catc)-34 b(hing)406 b(the)e(errors)199 b Fx(:)i(:)h(:)f(:)h(:)g(:)f
+(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)
+f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f
+(:)h(:)g(:)380 b FC(64)5321 46935 y(4.3.1)1212 b(Con)-34
+b(trolling)405 b(w)-34 b(arnings)405 b(to)f(b)34 b(e)404
+b(rep)34 b(orted)158 b Fx(:)202 b(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h
+(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)339
+b FC(65)5321 48396 y(4.3.2)1212 b(List)403 b(of)i(all)e(errors)h(and)g
+(w)-34 b(arnings)346 b Fx(:)202 b(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g
+(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)
+526 b FC(65)3660 49857 y(4.4)1212 b(Chec)-34 b(king)405
+b(for)f(problems)200 b Fx(:)i(:)g(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f
+(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)
+f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)382 b
+FC(66)3660 51319 y(4.5)1212 b(Con)-34 b(trolling)405
+b(the)g(output)138 b Fx(:)204 b(:)d(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g
+(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)
+g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)320 b
+FC(67)3660 52780 y(4.6)1212 b(Cleaning)405 b(in)-34 b(termediate)404
+b(and)h(output)h(\014les)235 b Fx(:)202 b(:)g(:)g(:)g(:)f(:)h(:)g(:)f
+(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)417
+b FC(67)3660 54241 y(4.7)1212 b(Do)34 b(cumen)-34 b(tation)406
+b(ab)34 b(out)405 b(macros)f(and)h(pac)-34 b(k)-67 b(ages)274
+b Fx(:)201 b(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)
+h(:)g(:)f(:)h(:)456 b FC(68)2000 57584 y FB(5)1793 b(Customization)599
+b(and)f(Extension)319 b Fy(:)268 b(:)d(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)h(:)f(:)500 b FB(69)3660 59411 y FC(5.1)1212
+b(Mo)34 b(des)405 b(and)f(Ho)34 b(oks)335 b Fx(:)202
+b(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g
+(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)
+g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)g(:)516 b FC(69)3660
+60872 y(5.2)1212 b(Multi\014le)405 b(Do)34 b(cumen)-34
+b(ts)212 b Fx(:)202 b(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g
+(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)
+g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)394 b
+FC(69)3660 62333 y(5.3)1212 b(Automatic)405 b(P)-34 b(arsing)405
+b(of)f(T)-101 b(eX)404 b(Files)131 b Fx(:)202 b(:)f(:)h(:)g(:)g(:)f(:)h
+(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)
+h(:)g(:)f(:)h(:)g(:)g(:)f(:)313 b FC(71)3660 63794 y(5.4)1212
+b(Language)405 b(Supp)34 b(ort)197 b Fx(:)203 b(:)e(:)h(:)g(:)g(:)f(:)h
+(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)
+h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h
+(:)g(:)g(:)378 b FC(73)5321 65255 y(5.4.1)1212 b(Using)404
+b(A)-34 b(UCT)-101 b(eX)405 b(with)g(Europ)34 b(ean)405
+b(Languages)328 b Fx(:)202 b(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)
+f(:)h(:)g(:)g(:)509 b FC(73)6981 66716 y(5.4.1.1)1212
+b(T)-34 b(yping)405 b(and)g(Displa)-34 b(ying)404 b(Non-ASCI)34
+b(I)405 b(Characters)127 b Fx(:)202 b(:)g(:)f(:)h(:)g(:)f(:)h(:)309
+b FC(73)6981 68178 y(5.4.1.2)1212 b(St)-34 b(yle)404
+b(Files)g(for)g(Di\013eren)-34 b(t)404 b(Languages)296
+b Fx(:)202 b(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)
+f(:)h(:)g(:)477 b FC(74)5321 69639 y(5.4.2)1212 b(Using)404
+b(A)-34 b(UCT)-101 b(eX)405 b(with)g(Japanese)g(T)-101
+b(eX)287 b Fx(:)202 b(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)g
+(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)469 b FC(76)3660
+71100 y(5.5)1212 b(Automatic)405 b(Customization)103
+b Fx(:)203 b(:)f(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)
+g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h
+(:)g(:)f(:)h(:)g(:)284 b FC(78)p eop end
+%%Page: -3 5
+TeXDict begin -3 4 bop 48990 -1550 a FC(iii)5321 1107
+y(5.5.1)1212 b(Automatic)405 b(Customization)g(for)f(the)h(Site)196
+b Fx(:)202 b(:)g(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)
+h(:)g(:)f(:)h(:)g(:)378 b FC(79)5321 2568 y(5.5.2)1212
+b(Automatic)405 b(Customization)g(for)f(a)g(User)276
+b Fx(:)201 b(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)
+h(:)g(:)g(:)f(:)h(:)g(:)457 b FC(79)5321 4029 y(5.5.3)1212
+b(Automatic)405 b(Customization)g(for)f(a)g(Directory)319
+b Fx(:)201 b(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)
+h(:)501 b FC(80)3660 5491 y(5.6)1212 b(W)-101 b(riting)404
+b(Y)-101 b(our)405 b(Own)f(St)-34 b(yle)404 b(Supp)34
+b(ort)303 b Fx(:)203 b(:)f(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h
+(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)484
+b FC(80)5321 6952 y(5.6.1)1212 b(A)404 b(Simple)g(St)-34
+b(yle)404 b(File)227 b Fx(:)201 b(:)h(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f
+(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)
+f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)408 b FC(80)5321
+8413 y(5.6.2)1212 b(Adding)405 b(Supp)34 b(ort)405 b(for)f(Macros)227
+b Fx(:)202 b(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)
+g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)408
+b FC(82)5321 9874 y(5.6.3)1212 b(Adding)405 b(Supp)34
+b(ort)405 b(for)f(En)-34 b(vironmen)g(ts)355 b Fx(:)202
+b(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g
+(:)f(:)h(:)g(:)g(:)f(:)535 b FC(86)5321 11335 y(5.6.4)1212
+b(Adding)405 b(or)f(Examining)g(Other)g(Information)222
+b Fx(:)202 b(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)
+g(:)g(:)403 b FC(88)6981 12796 y(5.6.4.1)1212 b(Adding)405
+b(bibliographies)f(in)g(st)-34 b(yle)404 b(ho)34 b(oks)353
+b Fx(:)202 b(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)
+g(:)534 b FC(88)6981 14258 y(5.6.4.2)1212 b(Examining)404
+b(P)-34 b(ac)g(k)-67 b(age/Class)404 b(Options)322 b
+Fx(:)201 b(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h
+(:)g(:)g(:)502 b FC(88)6981 15719 y(5.6.4.3)1212 b(Adding)405
+b(Supp)34 b(ort)405 b(for)g(Option)f(Completion)294 b
+Fx(:)203 b(:)f(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)476
+b FC(89)5321 17180 y(5.6.5)1212 b(Automatic)405 b(Extraction)f(of)g
+(New)g(Things)324 b Fx(:)202 b(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h
+(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)504 b FC(90)2000
+20523 y FB(App)50 b(endix)600 b(A)1602 b(Cop)-50 b(ying,)599
+b(Changes,)f(Dev)-50 b(elopmen)g(t,)3793 22405 y(F)-199
+b(A)-50 b(Q,)598 b(T)-149 b(exinfo)598 b(Mo)50 b(de)372
+b Fy(:)266 b(:)f(:)g(:)h(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)h(:)f(:)g(:)553
+b FB(93)3660 24231 y FC(A.1)1212 b(Cop)-34 b(ying)406
+b(this)e(Man)-34 b(ual)170 b Fx(:)203 b(:)f(:)f(:)h(:)g(:)f(:)h(:)g(:)g
+(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)
+f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)352
+b FC(93)5321 25693 y(A.1.1)1212 b(GNU)404 b(F)-101 b(ree)403
+b(Do)34 b(cumen)-34 b(tation)406 b(License)167 b Fx(:)201
+b(:)g(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g
+(:)f(:)h(:)g(:)g(:)f(:)349 b FC(93)3660 27154 y(A.2)1212
+b(Changes)406 b(and)f(New)f(F)-101 b(eatures)106 b Fx(:)202
+b(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h
+(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)288
+b FC(100)3660 28615 y(A.3)1212 b(F)-101 b(uture)405 b(Dev)-34
+b(elopmen)g(t)289 b Fx(:)203 b(:)f(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h
+(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)
+h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)471 b
+FC(118)5321 30076 y(A.3.1)1212 b(Mid-term)404 b(Goals)192
+b Fx(:)202 b(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)
+g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h
+(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)374 b FC(118)5321 31537
+y(A.3.2)1212 b(Wishlist)329 b Fx(:)202 b(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)
+g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g
+(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)
+g(:)f(:)h(:)g(:)511 b FC(119)5321 32998 y(A.3.3)1212
+b(Bugs)123 b Fx(:)201 b(:)h(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g
+(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)
+f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g
+(:)f(:)h(:)g(:)304 b FC(121)3660 34460 y(A.4)1212 b(F)-101
+b(requen)-34 b(tly)405 b(Ask)-34 b(ed)404 b(Questions)153
+b Fx(:)202 b(:)g(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)
+h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f
+(:)335 b FC(121)3660 35921 y(A.5)1212 b(F)-101 b(eatures)405
+b(sp)34 b(eci\014c)403 b(to)i(A)-34 b(UCT)-101 b(eX's)405
+b(T)-101 b(exinfo)404 b(ma)67 b(jor)405 b(mo)34 b(de)336
+b Fx(:)202 b(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)518 b
+FC(123)5321 37382 y(A.5.1)1212 b(Ho)-34 b(w)405 b(A)-34
+b(UCT)-101 b(eX)405 b(and)g(the)f(nativ)-34 b(e)405 b(mo)34
+b(de)404 b(w)-34 b(ork)404 b(together)181 b Fx(:)202
+b(:)g(:)g(:)g(:)f(:)h(:)363 b FC(123)5321 38843 y(A.5.2)1212
+b(Where)403 b(the)i(nativ)-34 b(e)404 b(mo)34 b(de)404
+b(is)g(sup)34 b(erseded)121 b Fx(:)202 b(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)
+f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)302 b FC(123)5321
+40304 y(A.5.3)1212 b(Where)403 b(k)-34 b(ey)404 b(bindings)h(are)e
+(mapp)34 b(ed)405 b(to)g(the)f(nativ)-34 b(e)405 b(mo)34
+b(de)279 b Fx(:)201 b(:)h(:)g(:)f(:)461 b FC(125)5321
+41766 y(A.5.4)1212 b(Whic)-34 b(h)404 b(nativ)-34 b(e)404
+b(mo)34 b(de)404 b(k)-34 b(ey)404 b(bindings)h(are)f(missing)341
+b Fx(:)202 b(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)523
+b FC(125)2000 45109 y FB(Indices)254 b Fy(:)267 b(:)e(:)g(:)g(:)h(:)f
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)
+f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)h
+(:)f(:)g(:)g(:)436 b FB(127)3660 46935 y FC(Key)404 b(Index)173
+b Fx(:)202 b(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)
+f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g
+(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)
+f(:)h(:)g(:)g(:)f(:)h(:)355 b FC(127)3660 48396 y(F)-101
+b(unction)406 b(Index)249 b Fx(:)201 b(:)h(:)g(:)g(:)f(:)h(:)g(:)g(:)f
+(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)
+h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f
+(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)431 b FC(128)3660 49857
+y(V)-101 b(ariable)404 b(Index)121 b Fx(:)202 b(:)f(:)h(:)g(:)g(:)f(:)h
+(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)
+g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h
+(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)g(:)f(:)303 b FC(129)3660
+51319 y(Concept)406 b(Index)123 b Fx(:)201 b(:)h(:)f(:)h(:)g(:)g(:)f(:)
+h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)g(:)f
+(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)f(:)h(:)g(:)f(:)
+h(:)g(:)g(:)f(:)h(:)g(:)f(:)h(:)g(:)g(:)304 b FC(132)p
+eop end
+%%Page: 1 6
+TeXDict begin 1 5 bop 49394 -1550 a FC(1)2000 3985 y
+Fz(Executiv)-60 b(e)717 b(Summary)2000 7107 y FC(A)-34
+b(UCT)5332 7368 y(E)6007 7107 y(X)418 b(is)f(an)h(in)-34
+b(tegrated)419 b(en)-34 b(vironmen)g(t)419 b(for)f(editing)g(L)29270
+6950 y Fv(a)29831 7107 y FC(T)30504 7368 y(E)31177 7107
+y(X,)j(ConT)35671 7368 y(E)36346 7107 y(Xt,)g(do)34 b(cT)41009
+7368 y(E)41683 7107 y(X,)421 b(T)-101 b(exinfo,)421 b(and)2000
+8568 y(T)2673 8829 y(E)3347 8568 y(X)404 b(\014les.)3660
+10361 y(Although)373 b(A)-34 b(UCT)12313 10622 y(E)12988
+10361 y(X)371 b(con)-34 b(tains)373 b(a)e(large)g(n)-34
+b(um)g(b)34 b(er)373 b(of)e(features,)379 b(there)371
+b(are)g(no)h(reasons)f(to)h(despair.)2000 11822 y(Y)-101
+b(ou)477 b(can)f(con)-34 b(tin)g(ue)477 b(to)g(write)f(T)17178
+12083 y(E)17852 11822 y(X)g(and)h(L)21988 11665 y Fv(a)22549
+11822 y FC(T)23222 12083 y(E)23896 11822 y(X)f(do)34
+b(cumen)-34 b(ts)477 b(the)g(w)-34 b(a)g(y)477 b(y)-34
+b(ou)476 b(are)g(used)h(to,)494 b(and)477 b(only)2000
+13284 y(start)471 b(using)f(the)h(m)-34 b(ultiple)471
+b(features)f(in)g(small)g(steps.)737 b(A)-34 b(UCT)31561
+13544 y(E)32236 13284 y(X)470 b(is)g(not)h(monolithic,)486
+b(eac)-34 b(h)471 b(feature)2000 14745 y(describ)34 b(ed)340
+b(in)h(this)h(man)-34 b(ual)342 b(is)e(useful)i(b)-34
+b(y)341 b(itself,)353 b(but)342 b(together)g(they)f(pro)-34
+b(vide)341 b(an)g(en)-34 b(vironmen)g(t)342 b(where)2000
+16206 y(y)-34 b(ou)502 b(will)e(mak)-34 b(e)501 b(v)-34
+b(ery)500 b(few)i(L)15403 16049 y Fv(a)15964 16206 y
+FC(T)16637 16467 y(E)17310 16206 y(X)g(errors,)524 b(and)501
+b(mak)-34 b(es)502 b(it)f(easy)f(to)i(\014nd)g(the)f(errors)g(that)h
+(ma)-34 b(y)501 b(slip)2000 17667 y(through)405 b(an)-34
+b(yw)g(a)g(y)-101 b(.)3660 19460 y(It)372 b(is)f(a)h(go)34
+b(o)g(d)371 b(idea)g(to)h(mak)-34 b(e)371 b(a)h(prin)-34
+b(tout)373 b(of)f(A)-34 b(UCT)27518 19721 y(E)28193 19460
+y(X's)371 b(reference)f(card)h Fu(tex-ref.tex)376 b FC(or)371
+b(one)h(of)2000 20922 y(its)404 b(t)-34 b(yp)34 b(eset)405
+b(v)-34 b(ersions.)3660 22715 y(If)466 b(y)-34 b(ou)466
+b(w)-34 b(an)g(t)467 b(to)f(mak)-34 b(e)465 b(A)-34 b(UCT)18410
+22976 y(E)19085 22715 y(X)465 b(a)-34 b(w)g(are)466 b(of)g(st)-34
+b(yle)465 b(\014les)g(and)i(m)-34 b(ulti\014le)465 b(do)34
+b(cumen)-34 b(ts)467 b(righ)-34 b(t)466 b(a)-34 b(w)g(a)g(y)-101
+b(,)2000 24176 y(insert)404 b(the)h(follo)-34 b(wing)405
+b(in)f(y)-34 b(our)404 b(init)g(\014le)g(\(usually)h
+Fu(~/.emacs.d/init.el)p FC(\).)5200 25969 y Fu(\(setq)638
+b(TeX-auto-save)j(t\))5200 27430 y(\(setq)d(TeX-parse-self)j(t\))5200
+28892 y(\(setq-default)g(TeX-master)f(nil\))3660 30685
+y FC(Another)569 b(thing)g(y)-34 b(ou)568 b(should)h(enable)e(is)h
+(RefT)26157 30946 y(E)26831 30685 y(X,)608 b(a)568 b(comprehensiv)-34
+b(e)568 b(solution)g(for)g(managing)2000 32146 y(cross)413
+b(references,)i(bibliographies,)h(indices,)f(do)34 b(cumen)-34
+b(t)415 b(na)-34 b(vigation)415 b(and)f(a)g(few)g(other)g(things.)568
+b(\(See)2000 33607 y(Section)404 b(\\Installation")h(in)f
+Ft(The)h(RefT)20272 33868 y(E)20946 33607 y(X)f(man)-34
+b(ual)48 b FC(.\))3660 35401 y(F)-101 b(or)581 b(detailed)f
+(information)h(ab)34 b(out)581 b(the)f Fw(p)-34 b(review-latex)580
+b FC(subsystem)h(of)f(A)-34 b(UCT)41481 35662 y(E)42156
+35401 y(X,)624 b(see)580 b(Section)2000 36862 y(\\In)-34
+b(tro)34 b(duction")406 b(in)e Ft(The)g Fw(p)-34 b(review-latex)404
+b Ft(Man)-34 b(ual)48 b FC(.)3660 38655 y(There)464 b(is)g(a)g(mailing)
+g(list)g(for)g(general)f(discussion)i(ab)34 b(out)465
+b(A)-34 b(UCT)34781 38916 y(E)35455 38655 y(X:)659 b(write)464
+b(a)g(mail)f(with)i(\\sub-)2000 40116 y(scrib)34 b(e")660
+b(in)g(the)h(sub)67 b(ject)662 b(to)f Fu(auctex-request@gnu.org)668
+b FC(to)661 b(join)g(it.)1308 b(Send)661 b(con)-34 b(tributions)663
+b(to)2000 41577 y Fu(auctex@gnu.org)p FC(.)3660 43371
+y(Bug)687 b(rep)34 b(orts)686 b(should)h(go)f(to)h Fu
+(bug-auctex@gnu.org)p FC(,)763 b(suggestions)687 b(for)f(new)h
+(features,)757 b(and)2000 44832 y(pleas)683 b(for)f(help)h(should)h(go)
+e(to)h(either)f Fu(auctex-devel@gnu.org)690 b FC(\(the)683
+b(A)-34 b(UCT)41427 45093 y(E)42102 44832 y(X)683 b(dev)-34
+b(elop)34 b(ers\),)2000 46293 y(or)660 b(to)h Fu(auctex@gnu.org)k
+FC(if)c(they)g(migh)-34 b(t)661 b(ha)-34 b(v)g(e)661
+b(general)f(in)-34 b(terest.)1308 b(Please)660 b(use)g(the)h(command)
+2000 47754 y Fs(M-x)405 b(TeX-submit-bug-report)412 b(RET)803
+b FC(to)f(rep)34 b(ort)802 b(bugs)h(if)f(p)34 b(ossible.)1732
+b(Y)-101 b(ou)802 b(can)h(subscrib)34 b(e)802 b(to)2000
+49215 y(a)719 b(lo)-34 b(w-v)g(olume)719 b(announcemen)-34
+b(t)721 b(list)e(b)-34 b(y)719 b(sending)g(\\subscrib)34
+b(e")719 b(in)g(the)g(sub)67 b(ject)720 b(of)f(a)g(mail)g(to)2000
+50677 y Fu(info-auctex-request@gnu.org)p FC(.)p eop end
+%%Page: 2 7
+TeXDict begin 2 6 bop 49394 -1550 a FC(2)2000 3985 y
+Fz(Cop)-60 b(ying)2000 7107 y FC(A)-34 b(UCT)5332 7368
+y(E)6007 7107 y(X)467 b(primarily)g(consists)h(of)g(Lisp)f(\014les)h
+(for)g(Emacs,)483 b(but)468 b(there)g(are)f(also)h(installation)g
+(scripts)2000 8568 y(and)f(\014les)e(and)i(T)10003 8829
+y(E)10676 8568 y(X)f(supp)34 b(ort)467 b(\014les.)723
+b(All)465 b(of)h(those)h(are)e Ft(free)68 b FC(;)496
+b(this)466 b(means)g(that)h(ev)-34 b(ery)g(one)465 b(is)g(free)h(to)
+2000 10029 y(use)383 b(them)h(and)f(free)g(to)g(redistribute)g(them)h
+(on)f(a)g(free)f(basis.)532 b(The)384 b(\014les)e(of)i(A)-34
+b(UCT)40821 10290 y(E)41495 10029 y(X)383 b(are)g(not)h(in)e(the)2000
+11490 y(public)505 b(domain;)556 b(they)505 b(are)g(cop)-34
+b(yrigh)g(ted)506 b(and)f(there)g(are)g(restrictions)f(on)i(their)f
+(distribution,)531 b(but)2000 12951 y(these)413 b(restrictions)g(are)g
+(designed)g(to)h(p)34 b(ermit)412 b(ev)-34 b(erything)413
+b(that)i(a)e(go)34 b(o)g(d)413 b(co)34 b(op)g(erating)412
+b(citizen)h(w)-34 b(ould)2000 14413 y(w)g(an)g(t)342
+b(to)e(do.)517 b(What)341 b(is)e(not)i(allo)-34 b(w)g(ed)340
+b(is)g(to)g(try)f(to)i(prev)-34 b(en)g(t)340 b(others)g(from)g(further)
+h(sharing)f(an)-34 b(y)340 b(v)-34 b(ersion)2000 15874
+y(of)404 b(these)h(programs)f(that)h(they)g(migh)-34
+b(t)405 b(get)f(from)g(y)-34 b(ou.)3660 17667 y(Sp)34
+b(eci\014cally)-101 b(,)514 b(w)-34 b(e)493 b(w)-34 b(an)g(t)494
+b(to)f(mak)-34 b(e)492 b(sure)h(that)h(y)-34 b(ou)493
+b(ha)-34 b(v)g(e)493 b(the)g(righ)-34 b(t)493 b(to)g(giv)-34
+b(e)492 b(a)-34 b(w)g(a)g(y)493 b(copies)g(of)f(the)2000
+19128 y(\014les)373 b(that)h(constitute)g(A)-34 b(UCT)15959
+19389 y(E)16634 19128 y(X,)379 b(that)374 b(y)-34 b(ou)374
+b(receiv)-34 b(e)371 b(source)i(co)34 b(de)372 b(or)h(else)f(can)i(get)
+f(it)g(if)g(y)-34 b(ou)373 b(w)-34 b(an)g(t)375 b(it,)2000
+20589 y(that)462 b(y)-34 b(ou)462 b(can)f(c)-34 b(hange)462
+b(these)f(\014les)g(or)g(use)g(pieces)g(of)g(them)h(in)f(new)g(free)g
+(programs,)475 b(and)462 b(that)g(y)-34 b(ou)2000 22051
+y(kno)g(w)405 b(y)-34 b(ou)405 b(can)f(do)g(these)h(things.)3660
+23844 y(T)-101 b(o)489 b(mak)-34 b(e)488 b(sure)g(that)h(ev)-34
+b(ery)g(one)487 b(has)i(suc)-34 b(h)488 b(righ)-34 b(ts,)510
+b(w)-34 b(e)488 b(ha)-34 b(v)g(e)489 b(to)f(forbid)h(y)-34
+b(ou)488 b(to)g(depriv)-34 b(e)488 b(an)-34 b(y)g(one)2000
+25305 y(else)469 b(of)i(these)f(righ)-34 b(ts.)737 b(F)-101
+b(or)470 b(example,)486 b(if)470 b(y)-34 b(ou)471 b(distribute)g
+(copies)e(of)i(parts)g(of)f(A)-34 b(UCT)42638 25566 y(E)43313
+25305 y(X,)486 b(y)-34 b(ou)471 b(m)-34 b(ust)2000 26766
+y(giv)g(e)389 b(the)g(recipien)-34 b(ts)389 b(all)g(the)h(righ)-34
+b(ts)390 b(that)g(y)-34 b(ou)390 b(ha)-34 b(v)g(e.)534
+b(Y)-101 b(ou)389 b(m)-34 b(ust)391 b(mak)-34 b(e)389
+b(sure)g(that)i(they)-101 b(,)392 b(to)34 b(o,)392 b(receiv)-34
+b(e)2000 28227 y(or)404 b(can)g(get)g(the)h(source)f(co)34
+b(de.)538 b(And)405 b(y)-34 b(ou)404 b(m)-34 b(ust)405
+b(tell)f(them)h(their)f(righ)-34 b(ts.)3660 30021 y(Also,)457
+b(for)446 b(our)g(o)-34 b(wn)447 b(protection,)457 b(w)-34
+b(e)447 b(m)-34 b(ust)447 b(mak)-34 b(e)446 b(certain)g(that)h(ev)-34
+b(ery)g(one)446 b(\014nds)h(out)g(that)g(there)2000 31482
+y(is)420 b(no)h(w)-34 b(arran)g(t)g(y)422 b(for)f(A)-34
+b(UCT)15280 31743 y(E)15955 31482 y(X.)587 b(If)421 b(an)-34
+b(y)421 b(parts)g(are)f(mo)34 b(di\014ed)421 b(b)-34
+b(y)421 b(someone)f(else)g(and)i(passed)f(on,)k(w)-34
+b(e)2000 32943 y(w)g(an)g(t)415 b(their)f(recipien)-34
+b(ts)413 b(to)h(kno)-34 b(w)414 b(that)h(what)f(they)g(ha)-34
+b(v)g(e)414 b(is)f(not)h(what)h(w)-34 b(e)414 b(distributed,)i(so)e
+(that)g(an)-34 b(y)2000 34404 y(problems)404 b(in)-34
+b(tro)34 b(duced)405 b(b)-34 b(y)405 b(others)f(will)g(not)h(re\015ect)
+e(on)i(our)f(reputation.)3660 36198 y(The)415 b(precise)f(conditions)h
+(of)g(the)g(licenses)e(for)i(the)g(\014les)f(curren)-34
+b(tly)414 b(b)34 b(eing)414 b(distributed)i(as)f(part)g(of)2000
+37659 y(A)-34 b(UCT)5332 37920 y(E)6007 37659 y(X)518
+b(are)g(found)i(in)f(the)g(General)e(Public)i(Licenses)e(that)j
+(accompan)-34 b(y)519 b(them.)882 b(This)519 b(man)-34
+b(ual)2000 39120 y(sp)34 b(eci\014cally)425 b(is)h(co)-34
+b(v)g(ered)425 b(b)-34 b(y)427 b(the)g(GNU)f(F)-101 b(ree)425
+b(Do)34 b(cumen)-34 b(tation)428 b(License)d(\(see)h(Section)g(A.1)g
+([Cop)-34 b(ying)2000 40581 y(this)405 b(Man)-34 b(ual],)404
+b(page)g(93\).)p eop end
+%%Page: 3 8
+TeXDict begin 3 7 bop 49394 -1550 a FC(3)2000 3985 y
+Fz(1)1076 b(In)-60 b(tro)60 b(duction)2000 9913 y FB(1.1)896
+b(Ov)-50 b(erview)600 b(of)d(A)-50 b(UCT)20105 10267
+y(E)21059 9913 y(X)2000 12038 y FC(A)-34 b(UCT)5332 12299
+y(E)6007 12038 y(X)337 b(is)g(a)h(comprehensiv)-34 b(e)337
+b(customizable)g(in)-34 b(tegrated)338 b(en)-34 b(vironmen)g(t)339
+b(for)e(writing)h(input)h(\014les)e(for)2000 13500 y(T)2673
+13761 y(E)3347 13500 y(X,)404 b(L)5319 13343 y Fv(a)5880
+13500 y FC(T)6553 13761 y(E)7226 13500 y(X,)g(ConT)11703
+13761 y(E)12378 13500 y(Xt,)g(T)-101 b(exinfo,)404 b(and)h(do)34
+b(cT)24061 13761 y(E)24735 13500 y(X)404 b(using)g(Emacs.)3660
+15690 y(It)433 b(supp)34 b(orts)433 b(y)-34 b(ou)433
+b(in)g(the)f(insertion)h(of)g(macros,)438 b(en)-34 b(vironmen)g(ts,)441
+b(and)433 b(sectioning)f(commands)i(b)-34 b(y)2000 17151
+y(pro)g(viding)424 b(completion)g(alternativ)-34 b(es)424
+b(and)g(prompting)h(for)f(parameters.)597 b(It)424 b(automatically)g
+(inden)-34 b(ts)2000 18612 y(y)g(our)375 b(text)g(as)g(y)-34
+b(ou)376 b(t)-34 b(yp)34 b(e)375 b(it)g(and)h(lets)e(y)-34
+b(ou)376 b(format)g(a)e(whole)i(\014le)e(at)i(once.)528
+b(The)376 b(outlining)g(and)f(folding)2000 20073 y(facilities)403
+b(pro)-34 b(vide)404 b(y)-34 b(ou)405 b(with)g(a)f(fo)34
+b(cused)404 b(and)h(clean)f(view)g(of)g(y)-34 b(our)404
+b(text.)3660 22264 y(A)-34 b(UCT)6992 22525 y(E)7667
+22264 y(X)467 b(lets)g(y)-34 b(ou)468 b(pro)34 b(cess)466
+b(y)-34 b(our)468 b(source)e(\014les)h(b)-34 b(y)468
+b(running)g(T)34072 22525 y(E)34746 22264 y(X)f(and)h(related)e(to)34
+b(ols)467 b(\(suc)-34 b(h)469 b(as)2000 23725 y(output)415
+b(\014lters,)h(p)34 b(ost)414 b(pro)34 b(cessors)413
+b(for)g(generating)h(indices)f(and)i(bibliographies,)g(and)f(view)-34
+b(ers\))414 b(from)2000 25186 y(inside)305 b(Emacs.)505
+b(A)-34 b(UCT)12974 25447 y(E)13648 25186 y(X)305 b(lets)g(y)-34
+b(ou)305 b(bro)-34 b(wse)305 b(through)h(the)f(errors)f(T)33595
+25447 y(E)34269 25186 y(X)g(rep)34 b(orted,)324 b(while)305
+b(it)g(mo)-34 b(v)g(es)304 b(the)2000 26647 y(cursor)422
+b(directly)g(to)h(the)g(rep)34 b(orted)422 b(error,)k(and)d(displa)-34
+b(ys)423 b(some)g(do)34 b(cumen)-34 b(tation)424 b(for)e(that)i
+(particular)2000 28108 y(error.)537 b(This)405 b(will)f(ev)-34
+b(en)404 b(w)-34 b(ork)404 b(when)h(the)f(do)34 b(cumen)-34
+b(t)406 b(is)e(spread)g(o)-34 b(v)g(er)404 b(sev)-34
+b(eral)403 b(\014les.)3660 30299 y(One)591 b(comp)34
+b(onen)-34 b(t)593 b(of)e(A)-34 b(UCT)17688 30560 y(E)18363
+30299 y(X)591 b(that)i(L)22999 30142 y Fv(a)23560 30299
+y FC(T)24233 30560 y(E)24906 30299 y(X)e(users)h(will)e(\014nd)j
+(attractiv)-34 b(e)591 b(is)g Fw(p)-34 b(review-latex)p
+FC(,)637 b(a)2000 31760 y(com)-34 b(bination)342 b(of)f(folding)h(and)g
+(in-source)e(previewing)h(that)h(pro)-34 b(vides)341
+b(true)g(\\What)h(Y)-101 b(ou)341 b(See)g(Is)f(What)2000
+33221 y(Y)-101 b(ou)405 b(Get")f(exp)34 b(erience)402
+b(in)i(y)-34 b(our)405 b(sourcebu\013er,)f(while)g(letting)g(y)-34
+b(ou)405 b(retain)f(full)g(con)-34 b(trol.)3660 35411
+y(More)348 b(detailed)g(information)g(ab)34 b(out)349
+b(the)f(features)h(and)f(usage)g(of)g(A)-34 b(UCT)37923
+35672 y(E)38598 35411 y(X)348 b(can)g(b)34 b(e)347 b(found)j(in)d(the)
+2000 36872 y(remainder)404 b(of)g(this)h(man)-34 b(ual.)3660
+39063 y(A)g(UCT)6992 39324 y(E)7667 39063 y(X)428 b(is)f(written)i(en)
+-34 b(tirely)427 b(in)g(Emacs)h(Lisp,)433 b(and)c(hence)e(y)-34
+b(ou)428 b(can)g(easily)f(add)h(new)g(features)2000 40524
+y(for)446 b(y)-34 b(our)446 b(o)-34 b(wn)447 b(needs.)665
+b(It)446 b(is)g(a)g(GNU)g(pro)67 b(ject)447 b(and)f(distributed)i
+(under)e(the)h(`GNU)f(General)f(Public)2000 41985 y(License)403
+b(V)-101 b(ersion)404 b(3'.)3660 44175 y(The)320 b(most)g(recen)-34
+b(t)319 b(v)-34 b(ersion)318 b(is)h(alw)-34 b(a)g(ys)320
+b(a)-34 b(v)-67 b(ailable)318 b(at)i Fu
+(https://ftp.gnu.org/pub/gnu/auctex/)2000 45637 y FC(.)3660
+47827 y(WWW)605 b(users)h(ma)-34 b(y)605 b(w)-34 b(an)g(t)608
+b(to)d(c)-34 b(hec)g(k)606 b(out)g(the)g(A)-34 b(UCT)30371
+48088 y(E)31046 47827 y(X)605 b(page)h(at)g Fu(https://www.gnu.org/)
+2000 49288 y(software/auctex/)p FC(.)3660 51478 y(F)-101
+b(or)407 b(comprehensiv)-34 b(e)407 b(information)h(ab)34
+b(out)407 b(ho)-34 b(w)408 b(to)f(install)g(A)-34 b(UCT)34964
+51739 y(E)35639 51478 y(X)407 b(See)f(Section)i(1.2)e([Installa-)2000
+52939 y(tion],)e(page)g(4,)g(or)g(Section)g(1.2.7)g([Installation)g
+(under)h(MS)g(Windo)-34 b(ws],)404 b(page)h(10,)e(resp)34
+b(ectiv)-34 b(ely)-101 b(.)3660 55130 y(If)564 b(y)-34
+b(ou)564 b(are)g(considering)f(upgrading)i(A)-34 b(UCT)25383
+55391 y(E)26058 55130 y(X,)603 b(the)565 b(recen)-34
+b(t)563 b(c)-34 b(hanges)565 b(are)e(describ)34 b(ed)563
+b(in)h(Sec-)2000 56591 y(tion)405 b(A.2)e([Changes],)i(page)f(100.)3660
+58781 y(If)539 b(y)-34 b(ou)539 b(w)-34 b(an)g(t)541
+b(to)e(discuss)g(A)-34 b(UCT)19672 59042 y(E)20347 58781
+y(X)539 b(with)g(other)g(users)g(or)g(its)g(dev)-34 b(elop)34
+b(ers,)571 b(there)539 b(are)f(sev)-34 b(eral)2000 60242
+y(mailing)404 b(lists)g(y)-34 b(ou)404 b(can)h(use.)3660
+62433 y(Send)418 b(a)f(mail)g(with)h(the)f(sub)67 b(ject)418
+b(\\subscrib)34 b(e")417 b(to)h Fu(auctex-request@gnu.org)424
+b FC(in)418 b(order)e(to)h(join)2000 63894 y(the)433
+b(general)f(discussion)h(list)f(for)h(A)-34 b(UCT)21299
+64155 y(E)21973 63894 y(X.)624 b(Articles)431 b(should)j(b)34
+b(e)432 b(sen)-34 b(t)433 b(to)g Fu(auctex@gnu.org)p
+FC(.)628 b(In)433 b(a)2000 65355 y(similar)381 b(w)-34
+b(a)g(y)-101 b(,)386 b(y)-34 b(ou)382 b(can)g(subscrib)34
+b(e)381 b(to)h(the)g Fu(info-auctex@gnu.org)389 b FC(list)381
+b(for)h(just)h(getting)f(imp)34 b(ortan)-34 b(t)2000
+66816 y(announcemen)g(ts)505 b(ab)34 b(out)504 b(A)-34
+b(UCT)17523 67077 y(E)18198 66816 y(X.)836 b(The)503
+b(list)g Fu(bug-auctex@gnu.org)510 b FC(is)503 b(for)g(bug)h(rep)34
+b(orts)503 b(whic)-34 b(h)2000 68277 y(y)g(ou)444 b(should)g(usually)f
+(\014le)g(with)h(the)f Fs(M-x)405 b(TeX-submit-bug-report)412
+b(RET)444 b FC(command.)656 b(If)443 b(y)-34 b(ou)444
+b(w)-34 b(an)g(t)2000 69738 y(to)424 b(address)h(the)f(dev)-34
+b(elop)34 b(ers)423 b(of)i(A)-34 b(UCT)20610 69999 y(E)21284
+69738 y(X)424 b(themselv)-34 b(es)424 b(with)h(tec)-34
+b(hnical)424 b(issues,)429 b(they)424 b(can)g(b)34 b(e)423
+b(found)2000 71200 y(on)405 b(the)f(discussion)h(list)f
+Fu(auctex-devel@gnu.org)p FC(.)p eop end
+%%Page: 4 9
+TeXDict begin 4 8 bop 2000 -1550 a FC(Chapter)405 b(1:)539
+b(In)-34 b(tro)34 b(duction)34560 b(4)2000 3985 y FB(1.2)896
+b(Installing)599 b(A)-50 b(UCT)18039 4339 y(E)18992 3985
+y(X)2000 6110 y FC(The)430 b(mo)34 b(dern)429 b(and)i(strongly)e
+(recommended)h(w)-34 b(a)g(y)430 b(of)g(installing)g(A)-34
+b(UCT)36266 6371 y(E)36940 6110 y(X)430 b(is)f(b)-34
+b(y)430 b(using)g(the)g(Emacs)2000 7572 y(pac)-34 b(k)-67
+b(age)668 b(manager)h(in)-34 b(tegrated)669 b(in)g(Emacs)f(24)h(and)g
+(greater)f(\()p Fr(ELP)-92 b(A)p FC(\).)1333 b(Simply)668
+b(do)h Fs(M-x)405 b(list-)2000 9033 y(packages)i(RET)p
+FC(,)502 b(mark)481 b(the)i(auctex)f(pac)-34 b(k)-67
+b(age)481 b(for)h(installation)h(with)f Fs(i)p FC(,)502
+b(and)482 b(hit)h Fs(x)f FC(to)g(execute)f(the)2000 10494
+y(installation)405 b(pro)34 b(cedure.)538 b(That's)405
+b(all.)3660 12538 y Fu(use-package)354 b FC(users)349
+b(can)g(use)h(this)g(simple)f(recip)34 b(e)347 b(in)j(their)f
+Fu(user-init-file)354 b FC(whic)-34 b(h)350 b(essen)-34
+b(tially)2000 14000 y(do)34 b(es)404 b(the)h(same)f(as)g(the)g(man)-34
+b(ual)405 b(installation)g(explained)f(ab)34 b(o)-34
+b(v)g(e.)5200 16044 y Fu(\(use-package)641 b(tex)6473
+17505 y(:ensure)e(auctex\))3660 19550 y FC(Using)340
+b(the)f Fr(ELP)-92 b(A)339 b FC(v)-34 b(ersion)339 b(has)g(sev)-34
+b(eral)338 b(adv)-67 b(an)-34 b(tages.)518 b(Besides)338
+b(b)34 b(eing)339 b(platform)g(and)h Fr(OS)f FC(indep)34
+b(en-)2000 21011 y(den)-34 b(t,)530 b(y)-34 b(ou)504
+b(will)f(receiv)-34 b(e)502 b(in)-34 b(termediate)504
+b(bug\014x)h(releases)d(b)34 b(et)-34 b(w)g(een)505 b(ma)67
+b(jor)505 b(A)-34 b(UCT)41197 21272 y(E)41871 21011 y(X)504
+b(releases)f(con-)2000 22472 y(v)-34 b(enien)g(tly)-101
+b(.)967 b(F)-101 b(or)547 b(past)h Fr(ELP)-92 b(A)547
+b FC(releases,)581 b(see)547 b Fu
+(https://elpa.gnu.org/packages/auctex.html)p FC(.)2000
+23933 y(Once)530 b(the)h(installation)g(is)f(completed,)562
+b(y)-34 b(ou)531 b(can)f(skip)g(the)h(rest)f(of)h(this)g(section)g(and)
+g(pro)34 b(ceed)530 b(to)2000 25395 y(Section)404 b(1.3)g([Quic)-34
+b(k)404 b(Start],)g(page)g(15.)3660 27439 y(The)363 b(remainder)f(of)g
+(this)h(section)g(is)e(ab)34 b(out)364 b(installing)e(A)-34
+b(UCT)32617 27700 y(E)33292 27439 y(X)362 b(from)g(a)h(release)e
+(tarball)h(or)g(from)2000 28900 y(a)404 b(c)-34 b(hec)g(k)g(out)405
+b(of)g(the)f(A)-34 b(UCT)14793 29161 y(E)15468 28900
+y(X)404 b(rep)34 b(ository)-101 b(.)3660 30945 y(Installing)518
+b(A)-34 b(UCT)12466 31206 y(E)13140 30945 y(X)517 b(should)h(b)34
+b(e)517 b(simple:)764 b(merely)515 b Fu(./configure)p
+FC(,)549 b Fu(make)p FC(,)d(and)518 b Fu(make)406 b(install)2000
+32406 y FC(for)448 b(a)g(standard)h(site-wide)f(installation)h(\(most)g
+(other)f(installations)g(can)g(b)34 b(e)448 b(done)g(b)-34
+b(y)449 b(sp)34 b(ecifying)447 b(a)2000 33867 y Fu(--prefix=...)408
+b FC(option\).)3660 35912 y(On)579 b(man)-34 b(y)579
+b(systems,)623 b(this)579 b(will)f(already)g(activ)-67
+b(ate)578 b(the)h(pac)-34 b(k)-67 b(age,)622 b(making)578
+b(its)h(mo)34 b(des)579 b(the)g(de-)2000 37373 y(fault)452
+b(instead)h(of)e(the)h(built-in)h(mo)34 b(des)451 b(of)h(Emacs.)681
+b(If)451 b(this)h(is)f(not)i(the)f(case,)462 b(consult)453
+b(Section)e(1.2.4)2000 38834 y([Loading)488 b(the)h(pac)-34
+b(k)-67 b(age],)509 b(page)489 b(7.)791 b(Please)488
+b(read)g(through)i(this)f(do)34 b(cumen)-34 b(t)489 b(fully)g(b)34
+b(efore)488 b(installing)2000 40295 y(an)-34 b(ything.)745
+b(The)473 b(installation)g(pro)34 b(cedure)473 b(has)g(c)-34
+b(hanged)473 b(as)g(compared)g(to)g(earlier)d(v)-34 b(ersions.)744
+b(Users)2000 41756 y(of)484 b(MS)405 b(Windo)-34 b(ws)485
+b(are)e(ask)-34 b(ed)484 b(to)g(consult)h(See)e(Section)h(1.2.7)g
+([Installation)g(under)g(MS)g(Windo)-34 b(ws],)2000 43218
+y(page)404 b(10.)2000 46126 y Fq(1.2.1)818 b(Prerequisites)2994
+48085 y FA(\017)800 b FC(GNU)404 b(Emacs)g(24.3)g(or)g(higher)4400
+50004 y(Using)g Fw(p)-34 b(review-latex)404 b FC(requires)f(a)h(v)-34
+b(ersion)404 b(of)g(Emacs)g(compiled)g(with)h(image)f(supp)34
+b(ort.)4400 52380 y Fp(Windo)-34 b(ws)1539 b FC(Precompiled)546
+b(v)-34 b(ersions)546 b(are)f(a)-34 b(v)-67 b(ailable)546
+b(from)g Fu(https://ftp.gnu.org/gnu/)10800 53842 y(emacs/windows/)p
+FC(.)4400 56218 y Fp(macOS)2680 b FC(F)-101 b(or)479
+b(an)h(o)-34 b(v)g(erview)479 b(of)h(precompiled)f(v)-34
+b(ersions)479 b(of)h(Emacs)f(for)h(macOS)f(see)g(for)h(ex-)10800
+57679 y(ample)404 b Fu(https://www.emacswiki.org/emacs/EmacsForMacOS)p
+FC(.)4400 60056 y Fp(GNU/Lin)-34 b(ux)10800 61517 y FC(Most)280
+b(GNU/Lin)-34 b(ux)279 b(distributions)i(no)-34 b(w)g(ada)g(ys)281
+b(pro)-34 b(vide)279 b(a)g(recen)-34 b(t)279 b(v)-67
+b(arian)-34 b(t)280 b(of)f(Emacs)10800 62978 y(via)404
+b(their)g(pac)-34 b(k)-67 b(age)403 b(rep)34 b(ositories.)4400
+65355 y Fp(Self-compiled)10800 66816 y FC(Compiling)544
+b(Emacs)f(y)-34 b(ourself)543 b(requires)f(a)h(C)h(compiler)e(and)i(a)f
+(n)-34 b(um)g(b)34 b(er)544 b(of)g(to)34 b(ols)10800
+68277 y(and)491 b(dev)-34 b(elopmen)g(t)491 b(libraries.)795
+b(Details)490 b(are)f(b)34 b(ey)-34 b(ond)491 b(the)g(scop)34
+b(e)489 b(of)i(this)f(man)-34 b(ual.)10800 69738 y(Instructions)510
+b(for)e(c)-34 b(hec)g(king)509 b(out)g(the)h(source)e(co)34
+b(de)508 b(can)h(b)34 b(e)508 b(found)i(at)f Fu(https://)10800
+71200 y(savannah.gnu.org/git/?group=emacs)p FC(.)p eop
+end
+%%Page: 5 10
+TeXDict begin 5 9 bop 2000 -1550 a FC(Chapter)405 b(1:)539
+b(In)-34 b(tro)34 b(duction)34560 b(5)2994 3985 y FA(\017)800
+b FC(A)404 b(w)-34 b(orking)405 b(T)10969 4246 y(E)11642
+3985 y(X)g(installation)4400 5676 y(W)-101 b(ell,)509
+b(A)-34 b(UCT)10936 5936 y(E)11611 5676 y(X)490 b(w)-34
+b(ould)490 b(b)34 b(e)489 b(p)34 b(oin)-34 b(tless)490
+b(without)i(that.)795 b(Pro)34 b(cessing)489 b(do)34
+b(cumen)-34 b(tation)491 b(requires)4400 7137 y(T)5073
+7398 y(E)5747 7137 y(X,)548 b(L)7863 6980 y Fv(a)8424
+7137 y FC(T)9097 7398 y(E)9771 7137 y(X)519 b(and)h(T)-101
+b(exinfo)520 b(during)h(installation.)885 b Fw(p)-34
+b(review-latex)519 b FC(requires)f(Dvips)i(or)f Fu(dvipng)4400
+8598 y FC(for)491 b(its)g(op)34 b(eration)491 b(in)g
+Fr(D)-31 b(VI)491 b FC(mo)34 b(de.)799 b(The)491 b(default)h
+(con\014guration)g(of)g(A)-34 b(UCT)40634 8859 y(E)41308
+8598 y(X)491 b(is)g(tailored)g(for)4400 10059 y(T)5073
+10320 y(E)5747 10059 y(X)404 b(Liv)-34 b(e)o(-based)405
+b(distributions,)g(but)g(can)f(b)34 b(e)404 b(adapted)i(easily)-101
+b(.)2994 11750 y FA(\017)800 b FC(A)404 b(recen)-34 b(t)404
+b(Ghostscript)4400 13440 y(This)421 b(is)e(needed)i(for)f(op)34
+b(eration)420 b(of)g Fw(p)-34 b(review-latex)420 b FC(in)g(b)34
+b(oth)421 b Fr(D)-31 b(VI)419 b FC(and)i Fr(PDF)f FC(mo)34
+b(de.)586 b(Ghostscript)4400 14901 y(v)-34 b(ersion)404
+b(7.07)g(or)g(new)-34 b(er)404 b(is)g(required.)2994
+16592 y FA(\017)800 b FC(GNU)404 b(mak)-34 b(e)4400 18282
+y(Recen)g(t)495 b(A)-34 b(UCT)11846 18543 y(E)12520 18282
+y(X)494 b(uses)h(GNU)f(mak)-34 b(e)494 b(sp)34 b(eci\014c)494
+b(capabilities)g(in)g(the)g(Mak)-34 b(e\014les.)809 b(If)494
+b(y)-34 b(our)494 b Fr(OS)p FC('s)4400 19743 y(default)582
+b Fu(make)g FC(command)g(is)e(not)i(GNU)f(mak)-34 b(e,)625
+b(y)-34 b(ou)581 b(ha)-34 b(v)g(e)582 b(to)f(obtain)h(it)f(in)g(order)f
+(to)h(build)4400 21205 y(A)-34 b(UCT)7732 21466 y(E)8407
+21205 y(X)537 b(b)-34 b(y)538 b(y)-34 b(ourself.)939
+b(GNU)538 b(mak)-34 b(e)537 b(is)g(sometimes)h(pro)-34
+b(vided)538 b(under)g(the)g(name)g Fu(gmake)h FC(in)4400
+22666 y(y)-34 b(our)404 b Fr(OS)p FC('s)g(binary)g(pac)-34
+b(k)-67 b(age)404 b(system.)2994 24356 y FA(\017)800
+b FC(The)405 b(T)-101 b(exinfo)404 b(pac)-34 b(k)-67
+b(age)4400 26047 y(Strictly)356 b(sp)34 b(eaking,)366
+b(y)-34 b(ou)357 b(can)g(get)f(a)-34 b(w)g(a)g(y)358
+b(without)g(it)f(if)f(y)-34 b(ou)357 b(are)g(building)g(from)g(the)g
+(distribution)4400 27508 y(tarball,)f(ha)-34 b(v)g(e)345
+b(not)g(mo)34 b(di\014ed)345 b(an)-34 b(y)345 b(\014les)f(and)h(don't)g
+(need)g(a)f(prin)-34 b(ted)345 b(v)-34 b(ersion)344 b(of)h(the)g(man)
+-34 b(ual:)509 b(the)4400 28969 y(pregenerated)404 b(info)h(\014le)f
+(is)f(included)i(in)f(the)h(tarball.)538 b(A)-34 b(t)405
+b(least)f(v)-34 b(ersion)404 b(4.0)g(is)g(required.)3660
+30889 y(F)-101 b(or)572 b(some)f(kno)-34 b(wn)572 b(issues)f(with)h(v)
+-67 b(arious)571 b(soft)-34 b(w)g(are,)614 b(see)571
+b(Section)g(\\Kno)-34 b(wn)573 b(problems")e(in)g Ft(the)2000
+32350 y Fw(p)-34 b(review-latex)403 b Ft(man)-34 b(ual)48
+b FC(.)2000 34801 y Fq(1.2.2)818 b(Con\014gure)2000 36761
+y FC(The)365 b(\014rst)f(step)h(is)f(to)h(con\014gure)f(the)h(source)f
+(co)34 b(de,)371 b(telling)364 b(it)g(where)h(v)-67 b(arious)363
+b(\014les)h(will)g(b)34 b(e.)525 b(T)-101 b(o)365 b(do)f(so,)2000
+38222 y(run)5200 39912 y Fu(./configure)640 b Fs(options)3660
+41603 y FC(\(Note:)502 b(if)329 b(y)-34 b(ou)330 b(ha)-34
+b(v)g(e)330 b(fetc)-34 b(hed)330 b(A)-34 b(UCT)20898
+41864 y(E)21573 41603 y(X)329 b(from)h(Git)f(rather)h(than)g(a)f
+(regular)g(release,)343 b(y)-34 b(ou)330 b(will)e(ha)-34
+b(v)g(e)2000 43064 y(to)404 b(\014rst)h(follo)-34 b(w)405
+b(the)f(instructions)i(in)e Fu(README.GIT)p FC(\).)3660
+44754 y(On)439 b(man)-34 b(y)438 b(mac)-34 b(hines,)447
+b(y)-34 b(ou)438 b(will)g(not)g(need)g(to)h(sp)34 b(ecify)437
+b(an)-34 b(y)439 b(options,)447 b(but)439 b(if)f Fu(configure)j
+FC(cannot)2000 46216 y(determine)404 b(something)h(on)f(its)h(o)-34
+b(wn,)405 b(y)-34 b(ou'll)403 b(need)i(to)f(help)g(it)g(out)h(with)g
+(one)f(of)h(these)f(options:)2000 48135 y Fu(--prefix=)p
+Fs(prefix)8400 49597 y FC(All)391 b(automatic)i(placemen)-34
+b(ts)392 b(for)g(pac)-34 b(k)-67 b(age)391 b(comp)34
+b(onen)-34 b(ts)393 b(will)e(b)34 b(e)392 b(c)-34 b(hosen)392
+b(from)g(sensible)8400 51058 y(existing)302 b(hierarc)-34
+b(hies)302 b(b)34 b(elo)-34 b(w)303 b(this:)488 b(directories)302
+b(lik)-34 b(e)301 b Fu(man)p FC(,)324 b Fu(share)304
+b FC(and)f Fu(bin)h FC(are)e(supp)34 b(osed)8400 52519
+y(to)405 b(b)34 b(e)403 b(directly)g(b)34 b(elo)-34 b(w)405
+b Ft(pre\014x)p FC(.)8400 54209 y(Only)361 b(if)g(no)g(w)-34
+b(ork)-67 b(able)361 b(placemen)-34 b(t)361 b(can)g(b)34
+b(e)361 b(found)i(there,)369 b(in)361 b(some)g(cases)g(an)g(alternativ)
+-34 b(e)8400 55671 y(searc)g(h)404 b(will)g(b)34 b(e)404
+b(made)g(in)g(a)g(pre\014x)g(deduced)h(from)f(a)g(suitable)h(binary)
+-101 b(.)8400 57361 y Fu(/usr/local)398 b FC(is)c(the)g(default)h
+Ft(pre\014x)p FC(,)h(in)-34 b(tended)396 b(to)e(b)34
+b(e)394 b(suitable)h(for)f(a)g(site-wide)h(instal-)8400
+58822 y(lation.)619 b(If)431 b(y)-34 b(ou)431 b(are)f(pac)-34
+b(k)-67 b(aging)431 b(this)h(as)f(an)g(op)34 b(erating)431
+b(system)g(comp)34 b(onen)-34 b(t)432 b(for)f(distri-)8400
+60283 y(bution,)528 b(the)502 b(setting)h Fu(/usr)h FC(will)e(probably)
+g(b)34 b(e)502 b(the)h(righ)-34 b(t)503 b(c)-34 b(hoice.)832
+b(See)502 b(Section)g(1.2.5)8400 61745 y([Advice)403
+b(for)h(pac)-34 b(k)-67 b(age)404 b(pro)-34 b(viders],)404
+b(page)g(8,)g(for)g(detail.)8400 63435 y(If)413 b(y)-34
+b(ou)413 b(are)f(planning)i(to)f(install)g(the)g(pac)-34
+b(k)-67 b(age)413 b(as)g(a)g(single)f(non-priviledged)h(user,)h(y)-34
+b(ou)8400 64896 y(will)430 b(t)-34 b(ypically)430 b(set)h
+Ft(pre\014x)514 b FC(to)431 b(y)-34 b(our)431 b(home)g(directory)-101
+b(.)617 b(Consult)432 b(Section)f(1.2.6)f([Advice)8400
+66358 y(for)404 b(non-privileged)g(users],)g(page)g(9,)g(for)g
+(addtional)h(instructions.)2000 68277 y Fu(--with-emacs=)p
+Fs(/path/to/emacs)8400 69738 y FC(If)376 b(y)-34 b(ou)376
+b(are)g(using)g(a)g(pretest)h(whic)-34 b(h)376 b(isn't)h(in)f(y)-34
+b(our)376 b Fu(PATH)p FC(,)382 b(or)376 b Fu(configure)j
+FC(is)d(not)h(\014nding)8400 71200 y(the)405 b(righ)-34
+b(t)404 b(Emacs)g(executable,)f(y)-34 b(ou)405 b(can)f(sp)34
+b(ecify)404 b(it)g(with)h(this)f(option.)p eop end
+%%Page: 6 11
+TeXDict begin 6 10 bop 2000 -1550 a FC(Chapter)405 b(1:)539
+b(In)-34 b(tro)34 b(duction)34560 b(6)2000 3985 y Fu(--with-lispdir=)p
+Fs(lispdir)8400 5446 y FC(This)346 b(option)g(sp)34 b(eci\014es)345
+b(the)h(lo)34 b(cation)344 b(of)i(the)g Fu(site-lisp)i
+FC(directory)d(within)h Fu(load-path)8400 6907 y FC(under)466
+b(whic)-34 b(h)467 b(the)f(\014les)g(will)f(get)h(installed)g(\(the)g
+(bulk)g(will)f(get)h(installed)g(in)g(a)f(sub)34 b(di-)8400
+8369 y(rectory\).)538 b Fu(./configure)408 b FC(should)d(\014gure)f
+(this)h(out)g(b)-34 b(y)404 b(itself.)2000 10318 y Fu
+(--with-auctexstartfile=auctex.el)2000 11779 y
+(--with-previewstartfile=preview-latex.el)8400 13240
+y FC(This)292 b(is)g(the)g(name)g(of)g(the)g(resp)34
+b(ectiv)-34 b(e)291 b(startup)i(\014les.)501 b(If)292
+b Ft(lisp)34 b(dir)378 b FC(con)-34 b(tains)292 b(a)g(sub)34
+b(directory)8400 14701 y Fu(site-start.d)p FC(,)363 b(the)349
+b(start)g(\014les)g(are)f(placed)g(there,)359 b(and)349
+b Fu(site-start.el)k FC(should)d(load)8400 16163 y(them)508
+b(automatically)-101 b(.)849 b(Please)507 b(b)34 b(e)507
+b(a)-34 b(w)g(are)508 b(that)h(y)-34 b(ou)508 b(m)-34
+b(ust)509 b(not)f(mo)-34 b(v)g(e)508 b(the)g(start)g(\014les)8400
+17624 y(after)404 b(installation)h(since)f(other)g(\014les)g(are)g
+(found)h Fo(r)-62 b(elative)493 b FC(to)404 b(them.)2000
+19573 y Fu(--with-packagelispdir=auctex)8400 21034 y
+FC(This)428 b(is)f(the)h(directory)e(where)h(the)h(bulk)f(of)h(the)g
+(pac)-34 b(k)-67 b(age)427 b(gets)g(lo)34 b(cated.)608
+b(The)427 b(start\014le)8400 22495 y(adds)405 b(this)g(in)-34
+b(to)405 b Fu(load-path)p FC(.)2000 24444 y Fu(--with-auto-dir=)p
+Fs(/dir)8400 25906 y FC(Y)-101 b(ou)327 b(can)f(use)h(this)g(option)g
+(to)g(sp)34 b(ecify)326 b(the)h(directory)e(con)-34 b(taining)328
+b(automatically)e(gener-)8400 27367 y(ated)430 b(information)g(b)-34
+b(y)430 b Fs(M-x)405 b(TeX-auto-generate-global)412 b(RET)p
+FC(.)615 b(It)430 b(is)f(not)h(necessary)8400 28828 y(for)554
+b(most)h(T)14198 29089 y(E)14871 28828 y(X)f(installs,)592
+b(but)555 b(ma)-34 b(y)554 b(b)34 b(e)553 b(used)i(if)f(y)-34
+b(ou)554 b(don't)h(lik)-34 b(e)553 b(the)i(directory)e(that)8400
+30289 y(con\014gure)405 b(is)e(suggesting.)2000 32238
+y Fu(--help)2584 b FC(This)473 b(is)f(not)h(an)f(option)h(sp)34
+b(eci\014c)472 b(to)g(A)-34 b(UCT)29501 32499 y(E)30176
+32238 y(X.)743 b(A)472 b(n)-34 b(um)g(b)34 b(er)473 b(of)g(standard)g
+(options)h(to)8400 33700 y Fu(configure)429 b FC(exist,)h(and)c(w)-34
+b(e)426 b(do)g(not)h(ha)-34 b(v)g(e)426 b(the)g(ro)34
+b(om)425 b(to)h(describ)34 b(e)425 b(them)h(here;)436
+b(a)425 b(short)8400 35161 y(description)404 b(of)h(eac)-34
+b(h)404 b(is)g(a)-34 b(v)-67 b(ailable,)403 b(using)i
+Fu(--help)p FC(.)2000 37110 y Fu(--disable-preview)8400
+38571 y FC(This)398 b(disables)f(con\014guration)h(and)g(installation)f
+(of)h Fw(p)-34 b(review-latex)p FC(.)535 b(This)398 b(option)f(is)g
+(not)8400 40032 y(actually)532 b(recommended.)924 b(If)533
+b(y)-34 b(our)532 b(Emacs)h(do)34 b(es)532 b(not)h(supp)34
+b(ort)534 b(images,)564 b(y)-34 b(ou)533 b(should)8400
+41493 y(really)375 b(upgrade)j(to)f(a)g(new)-34 b(er)377
+b(v)-34 b(ersion.)529 b(Distributors)377 b(should,)383
+b(if)377 b(p)34 b(ossible,)381 b(refrain)c(from)8400
+42955 y(distributing)444 b(A)-34 b(UCT)18380 43216 y(E)19055
+42955 y(X)442 b(and)i Fw(p)-34 b(review-latex)442 b FC(separately)g(in)
+h(order)f(to)i(a)-34 b(v)g(oid)443 b(confusion)8400 44416
+y(and)405 b(upgrade)g(hassles)f(if)g(users)g(install)g(partial)g(pac)
+-34 b(k)-67 b(ages)404 b(on)h(their)f(o)-34 b(wn.)2000
+46365 y Fu(--with-texmf-dir=)p Fs(/dir)2000 47826 y Fu
+(--without-texmf-dir)8400 49287 y FC(This)444 b(option)g(is)f(used)g
+(for)g(sp)34 b(ecifying)443 b(a)g Fr(TDS)p FC(-complian)-34
+b(t)444 b(directory)e(hierarc)-34 b(h)g(y)-101 b(.)656
+b(Using)8400 50749 y Fu(--with-texmf-dir=)p Fs(/dir)381
+b FC(y)-34 b(ou)374 b(can)f(sp)34 b(ecify)373 b(where)g(the)h(T)36774
+51010 y(E)37448 50749 y(X)g Fr(TDS)f FC(directory)g(hierar-)8400
+52210 y(c)-34 b(h)g(y)405 b(resides,)e(and)i(the)f(T)19965
+52471 y(E)20639 52210 y(X)g(\014les)g(will)g(get)g(installed)g(in)g
+Fs(/dir)p Fu(/tex/latex/preview/)p FC(.)8400 53915 y(If)391
+b(y)-34 b(ou)392 b(use)g(the)g Fu(--without-texmf-dir)398
+b FC(option,)c(the)e(T)35360 54176 y(E)36034 53915 y(X-related)f
+(\014les)g(will)g(b)34 b(e)391 b(k)-34 b(ept)8400 55376
+y(in)502 b(the)g(Emacs)g(Lisp)f(tree,)525 b(and)503 b(at)f(run)-34
+b(time)502 b(the)h Fu(TEXINPUTS)i FC(en)-34 b(vironmen)g(t)502
+b(v)-67 b(ariable)8400 56837 y(will)391 b(b)34 b(e)391
+b(made)h(to)g(p)34 b(oin)-34 b(t)392 b(there.)534 b(Y)-101
+b(ou)392 b(can)g(install)f(those)h(\014les)g(in)-34 b(to)392
+b(y)-34 b(our)392 b(o)-34 b(wn)392 b(T)46002 57098 y(E)46676
+56837 y(X)f(tree)8400 58299 y(at)405 b(some)f(later)f(time)h(with)h
+Fs(M-x)g(preview-install-styles)412 b(RET)p FC(.)2000
+60248 y Fu(--with-tex-dir=)p Fs(/dir)8400 61709 y FC(If)346
+b(y)-34 b(ou)347 b(w)-34 b(an)g(t)348 b(to)e(sp)34 b(ecify)346
+b(an)g(exact)g(directory)f(for)h(the)h(preview)e(T)38859
+61970 y(E)39533 61709 y(X)h(\014les,)357 b(use)347 b
+Fu(--with-)8400 63170 y(tex-dir=)p Fs(/dir)p FC(.)871
+b(In)513 b(this)h(case,)540 b(the)514 b(\014les)f(will)g(b)34
+b(e)513 b(placed)h(in)f Fs(/dir)p FC(,)542 b(and)514
+b(y)-34 b(ou'll)513 b(also)8400 64631 y(need)404 b(the)h(follo)-34
+b(wing)405 b(option:)2000 66580 y Fu(--with-doc-dir=)p
+Fs(/dir)8400 68042 y FC(This)543 b(option)h(ma)-34 b(y)543
+b(b)34 b(e)542 b(used)h(to)g(sp)34 b(ecify)543 b(where)f(the)h(T)34990
+68303 y(E)35664 68042 y(X)g(do)34 b(cumen)-34 b(tation)544
+b(go)34 b(es.)954 b(It)8400 69503 y(is)463 b(to)g(b)34
+b(e)463 b(used)g(when)h(y)-34 b(ou)464 b(are)e(using)i
+Fu(--with-tex-dir=)p Fs(/dir)p FC(,)484 b(but)464 b(is)f(normally)f
+(not)8400 70964 y(necessary)403 b(otherwise.)p eop end
+%%Page: 7 12
+TeXDict begin 7 11 bop 2000 -1550 a FC(Chapter)405 b(1:)539
+b(In)-34 b(tro)34 b(duction)34560 b(7)2000 3985 y Fq(1.2.3)818
+b(Build/install)545 b(and)h(uninstall)2000 5944 y FC(Once)404
+b Fu(configure)j FC(has)e(b)34 b(een)403 b(run,)i(simply)f(en)-34
+b(ter)5200 8043 y Fu(make)2000 10142 y FC(at)431 b(the)f(prompt)h(to)g
+(b)-34 b(yte-compile)430 b(the)h(lisp)f(\014les,)436
+b(extract)430 b(the)g(T)32758 10403 y(E)33432 10142 y(X)g(\014les)g
+(and)h(build)g(the)f(do)34 b(cumen-)2000 11603 y(tation)405
+b(\014les.)538 b(T)-101 b(o)405 b(install)f(the)h(\014les)f(in)-34
+b(to)404 b(the)h(lo)34 b(cations)404 b(c)-34 b(hosen)405
+b(earlier,)d(t)-34 b(yp)34 b(e)5200 13702 y Fu(make)638
+b(install)2000 15801 y FC(Y)-101 b(ou)387 b(ma)-34 b(y)386
+b(need)h(sp)34 b(ecial)385 b(privileges)g(to)h(install,)k(e.g.,)f(if)d
+(y)-34 b(ou)387 b(are)e(installing)i(in)-34 b(to)387
+b(system)f(directories.)3660 17900 y(Should)402 b(y)-34
+b(ou)401 b(w)-34 b(an)g(t)402 b(to)f(completely)f(remo)-34
+b(v)g(e)400 b(the)g(installed)h(pac)-34 b(k)-67 b(age,)400
+b(in)h(the)g(same)f(directory)f(y)-34 b(ou)2000 19361
+y(built)405 b(A)-34 b(UCT)8228 19622 y(E)8902 19361 y(X)404
+b(run)5200 21460 y Fu(make)638 b(uninstall)2000 23558
+y FC(Y)-101 b(ou)382 b(will)f(need)h(administration)h(privileges)d(if)i
+(y)-34 b(ou)382 b(installed)g(the)g(pac)-34 b(k)-67 b(age)381
+b(in)-34 b(to)383 b(system)e(directories.)2000 26521
+y Fq(1.2.4)818 b(Loading)546 b(the)f(pac)-45 b(k)-91
+b(age)2000 28480 y FC(Y)-101 b(ou)458 b(can)f(detect)g(the)h
+(successful)g(activ)-67 b(ation)457 b(of)g(A)-34 b(UCT)28653
+28741 y(E)29328 28480 y(X)457 b(and)h Fw(p)-34 b(review-latex)457
+b FC(in)g(the)h(men)-34 b(us)458 b(after)2000 29941 y(loading)334
+b(a)f(L)7433 29784 y Fv(a)7994 29941 y FC(T)8667 30202
+y(E)9340 29941 y(X)g(\014le)g(lik)-34 b(e)333 b Fu(circ.tex)p
+FC(:)506 b(A)-34 b(UCT)23879 30202 y(E)24553 29941 y(X)333
+b(then)h(giv)-34 b(es)333 b(y)-34 b(ou)334 b(a)f(`)p
+Fu(Command)p FC(')i(men)-34 b(u,)348 b(and)334 b Fw(p)-34
+b(review-)2000 31402 y(latex)403 b FC(giv)-34 b(es)404
+b(y)-34 b(ou)405 b(a)f(`)p Fu(Preview)p FC(')i(men)-34
+b(u.)3660 33501 y(With)457 b(Emacs)g(\(or)f(if)h(y)-34
+b(ou)457 b(explicitly)e(disabled)i(use)f(of)h(the)g(pac)-34
+b(k)-67 b(age)456 b(system\),)470 b(the)457 b(startup)h(\014les)2000
+34962 y Fu(auctex.el)502 b FC(and)f Fu(preview-latex.el)k
+FC(ma)-34 b(y)499 b(already)g(b)34 b(e)499 b(in)g(a)g(directory)g(of)h
+(the)f Fu(site-start.d/)2000 36423 y FC(v)-67 b(ariet)-34
+b(y)488 b(if)h(y)-34 b(our)489 b(Emacs)g(installation)g(pro)-34
+b(vides)490 b(it.)793 b(In)489 b(that)h(case)e(they)h(should)h(b)34
+b(e)489 b(automatically)2000 37885 y(loaded)372 b(on)g(startup)h(and)g
+(nothing)g(else)e(needs)h(to)g(b)34 b(e)372 b(done.)528
+b(If)372 b(not,)378 b(they)372 b(should)h(at)f(least)g(ha)-34
+b(v)g(e)372 b(b)34 b(een)2000 39346 y(placed)404 b(somewhere)g(in)g(y)
+-34 b(our)405 b Fu(load-path)p FC(.)541 b(Y)-101 b(ou)405
+b(can)f(then)h(load)f(them)h(b)-34 b(y)404 b(placing)g(the)h(lines)5200
+41445 y Fu(\(load)638 b("auctex.el")i(nil)e(t)f(t\))5200
+42906 y(\(load)h("preview-latex.el")643 b(nil)637 b(t)g(t\))2000
+45005 y FC(in)-34 b(to)405 b(y)-34 b(our)404 b(init)g(\014le)g(suc)-34
+b(h)405 b(as)g Fu(init.el)h FC(or)e Fu(.emacs)p FC(.)3660
+47103 y(If)357 b(y)-34 b(ou)358 b(explicitly)d(used)j
+Fu(--with-lispdir)p FC(,)371 b(y)-34 b(ou)357 b(ma)-34
+b(y)357 b(need)h(to)f(add)h(the)f(sp)34 b(eci\014ed)357
+b(directory)f(in)-34 b(to)2000 48565 y(Emacs')404 b Fu(load-path)j
+FC(v)-67 b(ariable)403 b(b)-34 b(y)404 b(adding)h(something)g(lik)-34
+b(e)5200 50663 y Fu(\(add-to-list)641 b('load-path)f("~/elisp"\))2000
+52762 y FC(b)34 b(efore)404 b(the)g(ab)34 b(o)-34 b(v)g(e)405
+b(lines)e(in)-34 b(to)405 b(y)-34 b(our)405 b(Emacs)e(startup)j
+(\014le.)3660 54861 y(F)-101 b(or)658 b(site-wide)g(activ)-67
+b(ation)657 b(in)h(GNU)g(Emacs,)720 b(see)657 b(See)h(Section)g(1.2.5)f
+([Advice)f(for)i(pac)-34 b(k)-67 b(age)2000 56322 y(pro)-34
+b(viders],)403 b(page)i(8.)3660 58421 y(Once)i(activ)-67
+b(ated,)407 b(the)h(mo)34 b(des)407 b(pro)-34 b(vided)408
+b(b)-34 b(y)407 b(A)-34 b(UCT)28166 58682 y(E)28841 58421
+y(X)407 b(are)g(used)g(p)34 b(er)407 b(default)h(for)f(all)g(supp)34
+b(orted)2000 59882 y(\014le)397 b(t)-34 b(yp)34 b(es.)536
+b(If)397 b(y)-34 b(ou)398 b(w)-34 b(an)g(t)399 b(to)e(c)-34
+b(hange)398 b(the)g(mo)34 b(des)397 b(for)g(whic)-34
+b(h)398 b(it)f(is)g(op)34 b(erativ)-34 b(e)396 b(instead)i(of)g(the)f
+(default,)2000 61343 y(use)5200 63442 y Fs(M-x)637 b(customize-option)
+642 b(RET)c(TeX-modes)h(RET)3660 65541 y FC(If)415 b(y)-34
+b(ou)415 b(w)-34 b(an)g(t)417 b(to)e(remo)-34 b(v)g(e)414
+b(a)h(preinstalled)f(A)-34 b(UCT)26709 65802 y(E)27384
+65541 y(X)415 b(completely)f(b)34 b(efore)414 b(an)-34
+b(y)415 b(of)g(its)g(mo)34 b(des)414 b(ha)-34 b(v)g(e)2000
+67002 y(b)34 b(een)404 b(used,)5200 69101 y Fu(\(unload-feature)642
+b('tex-site\))2000 71200 y FC(should)405 b(accomplish)f(that.)p
+eop end
+%%Page: 8 13
+TeXDict begin 8 12 bop 2000 -1550 a FC(Chapter)405 b(1:)539
+b(In)-34 b(tro)34 b(duction)34560 b(8)2000 3985 y Fq(1.2.5)818
+b(Pro)-45 b(viding)544 b(A)-45 b(UCT)18191 4308 y(E)19060
+3985 y(X)545 b(as)h(a)g(pac)-45 b(k)-91 b(age)2000 5944
+y FC(As)401 b(a)g(pac)-34 b(k)-67 b(age)400 b(pro)-34
+b(vider,)401 b(y)-34 b(ou)401 b(should)h(mak)-34 b(e)400
+b(sure)h(that)h(y)-34 b(our)401 b(users)f(will)g(b)34
+b(e)401 b(serv)-34 b(ed)400 b(b)34 b(est)401 b(according)2000
+7406 y(to)419 b(their)f(in)-34 b(ten)g(tions,)423 b(and)d(k)-34
+b(eep)418 b(in)g(mind)h(that)h(a)e(system)g(migh)-34
+b(t)420 b(b)34 b(e)418 b(used)h(b)-34 b(y)418 b(more)g(than)i(one)e
+(user,)2000 8867 y(with)405 b(di\013eren)-34 b(t)404
+b(preferences.)3660 10922 y(There)330 b(are)f(p)34 b(eople)329
+b(that)i(prefer)f(the)g(built-in)g(Emacs)f(mo)34 b(des)330
+b(for)g(editing)g(T)38848 11183 y(E)39522 10922 y(X)f(\014les,)344
+b(in)330 b(particular)2000 12384 y(plain)475 b(T)5774
+12645 y(E)6447 12384 y(X)g(users.)749 b(There)474 b(are)g(v)-67
+b(arious)474 b(w)-34 b(a)g(ys)475 b(to)g(tell)f(A)-34
+b(UCT)31499 12645 y(E)32173 12384 y(X)475 b(ev)-34 b(en)474
+b(after)h(auto-activ)-67 b(ation)475 b(that)2000 13845
+y(it)517 b(should)g(not)h(get)e(used,)545 b(and)518 b(they)e(are)g
+(describ)34 b(ed)516 b(in)h(Chapter)h(1)e([In)-34 b(tro)34
+b(duction)518 b(to)f(A)-34 b(UCT)47743 14106 y(E)48418
+13845 y(X],)2000 15306 y(page)404 b(3.)3660 17362 y(So)465
+b(if)f(y)-34 b(ou)464 b(ha)-34 b(v)g(e)464 b(users)g(that)h(don't)g(w)
+-34 b(an)g(t)466 b(to)e(use)g(the)h(preinstalled)f(A)-34
+b(UCT)39596 17623 y(E)40270 17362 y(X,)479 b(they)464
+b(can)g(easily)2000 18823 y(get)404 b(rid)g(of)h(it.)538
+b(Activ)-67 b(ating)404 b(A)-34 b(UCT)18231 19084 y(E)18906
+18823 y(X)404 b(b)-34 b(y)404 b(default)h(is)f(therefore)g(a)g(go)34
+b(o)g(d)404 b(c)-34 b(hoice.)3660 20879 y(If)574 b(the)h(installation)f
+(pro)34 b(cedure)573 b(did)i(not)f(ac)-34 b(hiev)g(e)574
+b(this)g(already)f(b)-34 b(y)574 b(placing)g Fu(auctex.el)j
+FC(and)2000 22340 y Fu(preview-latex.el)546 b FC(in)-34
+b(to)540 b(a)g(p)34 b(ossibly)540 b(existing)g Fu(site-start.d)k
+FC(directory)-101 b(,)573 b(y)-34 b(ou)540 b(can)h(do)f(this)h(b)-34
+b(y)2000 23801 y(placing)5200 25857 y Fu(\(load)638 b("auctex.el")i
+(nil)e(t)f(t\))5200 27318 y(\(load)h("preview-latex.el")643
+b(nil)637 b(t)g(t\))2000 29374 y FC(in)404 b(the)h(system-wide)f
+Fu(site-start.el)p FC(.)3660 31429 y(The)467 b Fu(--without-texmf-dir)
+474 b FC(option)467 b(can)g(b)34 b(e)466 b(con)-34 b(v)g(enien)g(t)468
+b(for)e(systems)h(that)h(are)e(in)-34 b(tended)468 b(to)2000
+32891 y(supp)34 b(ort)418 b(more)f(than)i(a)e(single)g(T)-101
+b(eX)418 b(distribution.)579 b(Since)418 b(more)f(often)h(than)g(not)h
+(T)41546 33152 y(E)42219 32891 y(X)f(pac)-34 b(k)-67
+b(ages)417 b(for)2000 34352 y(op)34 b(erating)415 b(system)g
+(distributions)h(are)e(either)h(m)-34 b(uc)g(h)416 b(more)e(outdated)i
+(or)f(m)-34 b(uc)g(h)416 b(less)e(complete)h(than)2000
+35813 y(separately)429 b(pro)-34 b(vided)431 b(systems)f(lik)-34
+b(e)429 b(T)20251 36074 y(E)20924 35813 y(X)405 b(Liv)-34
+b(e)o(,)436 b(this)430 b(metho)34 b(d)430 b(ma)-34 b(y)430
+b(b)34 b(e)430 b(generally)f(preferable)g(when)2000 37274
+y(pro)-34 b(viding)405 b(pac)-34 b(k)-67 b(ages.)3660
+39330 y(The)289 b(follo)-34 b(wing)288 b(pac)-34 b(k)-67
+b(age)287 b(structure)h(w)-34 b(ould)289 b(b)34 b(e)288
+b(adequate)g(for)f(a)h(t)-34 b(ypical)288 b(fully)f(supp)34
+b(orted)289 b(Unix-lik)-34 b(e)2000 40791 y(installation:)2000
+43310 y(`)p Fu(preview-tetex)p FC(')8400 44771 y(St)g(yle)447
+b(\014les)f(and)h(do)34 b(cumen)-34 b(tation)448 b(for)f
+Fu(preview.sty)p FC(,)460 b(placed)446 b(in)-34 b(to)448
+b(a)e(T)42400 45032 y(E)43074 44771 y(X)g(tree)g(where)8400
+46233 y(it)426 b(is)f(accessible)f(from)i(the)g(teT)23042
+46494 y(E)23716 46233 y(X)g(executables)f(usually)g(deliv)-34
+b(ered)425 b(with)h(a)g(system.)603 b(If)8400 47694 y(there)426
+b(are)f(other)h(commonly)f(used)i(T)26067 47955 y(E)26740
+47694 y(X)f(system)g(pac)-34 b(k)-67 b(ages,)431 b(it)425
+b(migh)-34 b(t)427 b(b)34 b(e)425 b(appropriate)8400
+49155 y(to)405 b(pro)-34 b(vide)404 b(separate)g(pac)-34
+b(k)-67 b(ages)404 b(for)g(those.)2000 51543 y(`)p Fu
+(auctex-emacs-tetex)p FC(')8400 53004 y(This)353 b(pac)-34
+b(k)-67 b(age)352 b(will)f(require)g(the)i(installation)f(of)h(`)p
+Fu(preview-tetex)p FC(')j(and)d(will)e(record)h(in)8400
+54465 y Fu(TeX-macro-global)410 b FC(where)404 b(to)g(\014nd)i(the)e(T)
+29157 54726 y(E)29831 54465 y(X)g(tree.)538 b(It)404
+b(is)g(also)g(a)g(go)34 b(o)g(d)404 b(idea)g(to)g(run)11600
+56390 y Fu(emacs)638 b(-batch)h(-f)e(TeX-auto-generate-global)8400
+58314 y FC(when)425 b(either)f(A)-34 b(UCT)18375 58575
+y(E)19049 58314 y(X)425 b(or)e(teT)23570 58575 y(E)24244
+58314 y(X)h(get)h(installed)f(or)g(upgraded.)599 b(If)425
+b(y)-34 b(our)424 b(users)g(migh)-34 b(t)8400 59775 y(w)g(an)g(t)560
+b(to)e(w)-34 b(ork)559 b(with)f(a)h(di\013eren)-34 b(t)558
+b(T)25963 60036 y(E)26637 59775 y(X)g(distribution)h(\(no)-34
+b(w)g(ada)g(ys)561 b(prett)-34 b(y)558 b(common\),)8400
+61237 y(instead)405 b(consider)f(the)g(follo)-34 b(wing:)2000
+63624 y(`)p Fu(auctex-emacs)p FC(')8400 65086 y(This)640
+b(pac)-34 b(k)-67 b(age)640 b(will)f(b)34 b(e)640 b(compiled)g(with)g
+Fu(--without-texmf-dir)647 b FC(and)641 b(will)e(conse-)8400
+66547 y(quen)-34 b(tly)325 b(con)-34 b(tain)325 b(the)g(`)p
+Fu(preview)p FC(')i(st)-34 b(yle)324 b(\014les)h(in)f(its)h(priv)-67
+b(ate)324 b(directory)-101 b(.)511 b(It)324 b(will)g(probably)8400
+68008 y(not)426 b(b)34 b(e)425 b(p)34 b(ossible)425 b(to)g(initialize)f
+Fu(TeX-macro-global)431 b FC(to)425 b(a)g(sensible)g(v)-67
+b(alue,)430 b(so)425 b(running)8400 69469 y Fu
+(TeX-auto-generate-global)444 b FC(do)34 b(es)435 b(not)h(app)34
+b(ear)435 b(useful.)632 b(This)436 b(pac)-34 b(k)-67
+b(age)435 b(w)-34 b(ould)436 b(nei-)8400 70930 y(ther)404
+b(con\015ict)h(with)g(nor)f(pro)-34 b(vide)404 b(`)p
+Fu(preview-tetex)p FC('.)p eop end
+%%Page: 9 14
+TeXDict begin 9 13 bop 2000 -1550 a FC(Chapter)405 b(1:)539
+b(In)-34 b(tro)34 b(duction)34560 b(9)2000 3985 y Fq(1.2.6)818
+b(Installation)547 b(for)f(non-privileged)e(users)2000
+5944 y FC(Often)h(p)34 b(eople)544 b(without)j(system)d(administration)
+i(privileges)d(w)-34 b(an)g(t)547 b(to)e(install)f(soft)-34
+b(w)g(are)546 b(for)f(their)2000 7406 y(priv)-67 b(ate)403
+b(use.)539 b(In)404 b(that)i(case)d(y)-34 b(ou)405 b(need)f(to)h(pass)f
+(more)g(options)h(to)g(the)f Fu(configure)j FC(script.)3660
+9557 y(The)493 b(main)g(exp)34 b(edien)-34 b(t)492 b(is)g(using)h(the)f
+Fu(--prefix)j FC(option)e(to)g(the)g Fu(configure)i FC(script,)514
+b(and)493 b(let)f(it)2000 11019 y(p)34 b(oin)-34 b(t)367
+b(to)g(the)f(p)34 b(ersonal)366 b(home)h(directory)-101
+b(.)525 b(In)366 b(that)h(w)-34 b(a)g(y)-101 b(,)374
+b(resulting)367 b(binaries)f(will)f(b)34 b(e)366 b(installed)g(under)
+2000 12480 y(the)541 b Fu(bin)g FC(sub)34 b(directory)540
+b(of)h(y)-34 b(our)540 b(home)h(directory)-101 b(,)573
+b(man)-34 b(ual)542 b(pages)e(under)h Fu(man)h FC(and)f(so)f(on.)948
+b(It)540 b(is)2000 13941 y(reasonably)564 b(easy)f(to)i(main)-34
+b(tain)565 b(a)f(bunc)-34 b(h)565 b(of)f(p)34 b(ersonal)564
+b(soft)-34 b(w)g(are,)605 b(since)564 b(the)g(pre\014x)g(argumen)-34
+b(t)565 b(is)2000 15402 y(supp)34 b(orted)405 b(b)-34
+b(y)405 b(most)g Fu(configure)i FC(scripts.)3660 17554
+y(Y)-101 b(ou)313 b(often)g(need)g(to)g(sp)34 b(ecify)311
+b Fu(--with-lispdir)318 b FC(option)313 b(as)f(w)-34
+b(ell.)508 b(If)312 b(y)-34 b(ou)313 b(ha)-34 b(v)g(en't)314
+b(installed)e(Emacs)2000 19015 y(under)468 b(y)-34 b(our)469
+b(home)f(directory)f(and)h(use)g(Emacs)g(installed)g(in)g(system)g
+(directories,)482 b(the)469 b Fu(configure)2000 20477
+y FC(script)377 b(migh)-34 b(t)377 b(not)h(b)34 b(e)377
+b(able)f(to)h(\014gure)g(out)h(suitable)f(place)f(to)h(install)g(lisp)g
+(\014les)g(under)g(y)-34 b(our)377 b(home)g(di-)2000
+21938 y(rectory)-101 b(.)510 b(In)322 b(that)h(case,)337
+b(the)322 b Fu(configure)j FC(script)d(w)-34 b(ould)323
+b(silen)-34 b(tly)322 b(c)-34 b(ho)34 b(ose,)338 b(b)-34
+b(y)322 b(default,)339 b(the)322 b Fu(site-lisp)2000
+23399 y FC(directory)487 b(within)j Fu(load-path)h FC(for)d(the)h
+(place,)508 b(where)488 b(administration)i(privileges)d(are)g(usually)h
+(re-)2000 24860 y(quired)341 b(to)i(put)g(relev)-67 b(an)-34
+b(t)341 b(\014les.)518 b(Th)-34 b(us)343 b(y)-34 b(ou)342
+b(will)g(ha)-34 b(v)g(e)342 b(to)g(tell)g(the)g Fu(configure)j
+FC(script)d(explicitly)e(where)2000 26321 y(to)404 b(put)i(those)e
+(\014les)g(b)-34 b(y)-101 b(,)405 b(e.g.,)e Fu
+(--with-lispdir=`/home/myself/share/emacs/site-lisp')p
+FC(.)3660 28473 y(Y)-101 b(ou'll)608 b(ha)-34 b(v)g(e)608
+b(to)g(add)h(something)f(lik)-34 b(e)607 b(`)p Fu
+(/home/myself/share/emacs/site-lisp)p FC(')620 b(to)608
+b(y)-34 b(our)2000 29934 y Fu(load-path)407 b FC(v)-67
+b(ariable,)403 b(if)h(it)g(isn't)g(there)g(already)-101
+b(.)3660 32086 y(In)548 b(addition,)583 b(y)-34 b(ou)548
+b(will)e(ha)-34 b(v)g(e)548 b(to)g(tell)e Fu(configure)k
+FC(script)e(where)f(to)g(install)g(T)41799 32347 y(E)42473
+32086 y(X-related)g(\014les)2000 33548 y(suc)-34 b(h)398
+b(as)f Fu(preview.sty)k FC(if)c Fw(p)-34 b(review-latex)396
+b FC(isn't)h(disabled.)537 b(It)397 b(is)g(enough)h(to)f(sp)34
+b(ecify)396 b Fu(--with-texmf-)2000 35009 y(dir=$HOME/texmf)347
+b FC(for)342 b(most)h(t)-34 b(ypical)342 b(cases,)353
+b(but)343 b(y)-34 b(ou)343 b(ha)-34 b(v)g(e)342 b(to)g(create)g(the)g
+(direcotry)f Fu($HOME/texmf)2000 36470 y FC(in)319 b(adv)-67
+b(ance)318 b(if)h(it)f(do)34 b(esn't)319 b(exist.)510
+b(If)319 b(this)g(prescription)g(do)34 b(esn't)319 b(w)-34
+b(ork,)335 b(consider)319 b(using)g(one)g(or)f(more)h(of)2000
+37931 y(the)455 b(options)h Fu(--with-texmf-dir=)p Fs(/dir)p
+FC(,)475 b Fu(--without-texmf-dir)p FC(,)f Fu(--with-tex-dir=)p
+Fs(/dir)462 b FC(and)2000 39392 y Fu(--with-doc-dir=)p
+Fs(/dir)p FC(.)545 b(See)404 b(Section)h(1.2.2)e([Con\014gure],)h(page)
+h(5,)f(for)g(detail)g(of)g(these)h(options.)3660 41544
+y(No)-34 b(w)601 b(here)f(is)g(another)g(thing)h(to)f(p)34
+b(onder:)931 b(p)34 b(erhaps)600 b(y)-34 b(ou)601 b(w)-34
+b(an)g(t)602 b(to)e(mak)-34 b(e)600 b(it)g(easy)g(for)g(other)2000
+43005 y(users)549 b(to)h(share)f(parts)h(of)f(y)-34 b(our)549
+b(p)34 b(ersonal)549 b(Emacs)g(con\014guration.)975 b(In)550
+b(general,)584 b(y)-34 b(ou)550 b(can)f(do)g(this)2000
+44467 y(b)-34 b(y)534 b(writing)g(`)p Fu(~myself/)p FC(')i(an)-34
+b(ywhere)534 b(where)g(y)-34 b(ou)534 b(sp)34 b(ecify)533
+b(paths)i(to)f(something)h(installed)f(in)g(y)-34 b(our)2000
+45928 y(p)34 b(ersonal)516 b(sub)34 b(directories,)544
+b(not)517 b(merely)e(`)p Fu(~/)p FC(',)544 b(since)516
+b(the)h(latter,)544 b(when)518 b(used)f(b)-34 b(y)517
+b(other)f(users,)544 b(will)2000 47389 y(p)34 b(oin)-34
+b(t)405 b(to)f(non-existen)-34 b(t)406 b(\014les.)3660
+49541 y(F)-101 b(or)581 b(y)-34 b(ourself,)626 b(it)581
+b(will)f(do)i(to)f(manipulate)h(en)-34 b(vironmen)g(t)582
+b(v)-67 b(ariables)580 b(in)h(y)-34 b(our)581 b Fu(.profile)j
+FC(resp.)2000 51002 y Fu(.login)369 b FC(\014les.)526
+b(But)367 b(if)g(p)34 b(eople)366 b(will)h(b)34 b(e)366
+b(cop)-34 b(ying)368 b(just)g(Elisp)e(\014les,)374 b(their)367
+b(copies)f(will)h(not)g(w)-34 b(ork.)527 b(While)2000
+52463 y(it)562 b(w)-34 b(ould)563 b(in)g(general)e(b)34
+b(e)562 b(preferable)g(if)g(the)g(added)h(comp)34 b(onen)-34
+b(ts)564 b(where)e(a)-34 b(v)-67 b(ailable)561 b(from)h(a)g(shell)2000
+53924 y(lev)-34 b(el,)602 b(to)34 b(o)564 b(\(lik)-34
+b(e)564 b(when)g(y)-34 b(ou)565 b(call)e(the)h(standalone)h(info)f
+(reader,)603 b(or)564 b(try)g(using)g Fu(preview.sty)k
+FC(for)2000 55386 y(functionalit)-34 b(y)436 b(b)34 b(esides)434
+b(of)g(Emacs)h(previews\),)441 b(it)435 b(will)e(b)34
+b(e)434 b(a)h(big)f(help)h(already)e(if)i(things)g(w)-34
+b(ork)435 b(from)2000 56847 y(inside)404 b(of)h(Emacs.)3660
+58999 y(Here)f(is)g(ho)-34 b(w)405 b(to)f(do)h(the)f(v)-67
+b(arious)404 b(parts:)2000 62014 y Fq(Making)545 b(the)h(Elisp)f(a)-45
+b(v)-91 b(ailable)2000 63973 y FC(In)404 b(GNU)h(Emacs,)e(it)h(should)h
+(b)34 b(e)404 b(su\016cien)-34 b(t)405 b(if)f(p)34 b(eople)404
+b(just)h(do)5200 66125 y Fu(\(load)638 b
+("~myself/share/emacs/site-lisp/auctex.el")651 b(nil)637
+b(t)g(t\))5200 67587 y(\(load)h
+("~myself/share/emacs/site-lisp/preview-latex.el")654
+b(nil)637 b(t)g(t\))2000 69738 y FC(where)315 b(the)h(path)g(p)34
+b(oin)-34 b(ts)317 b(to)e(y)-34 b(our)316 b(p)34 b(ersonal)315
+b(installation.)510 b(The)315 b(rest)h(of)f(the)h(pac)-34
+b(k)-67 b(age)315 b(should)h(b)34 b(e)315 b(found)2000
+71200 y(relativ)-34 b(e)403 b(from)h(there)g(without)i(further)f(ado.)p
+eop end
+%%Page: 10 15
+TeXDict begin 10 14 bop 2000 -1550 a FC(Chapter)405 b(1:)539
+b(In)-34 b(tro)34 b(duction)33954 b(10)2000 3985 y Fq(Making)545
+b(the)h(Info)g(\014les)f(a)-45 b(v)-91 b(ailable)2000
+5944 y FC(F)-101 b(or)469 b(making)f(the)h(info)g(\014les)g(accessible)
+f(from)g(within)i(Elisp,)484 b(something)470 b(lik)-34
+b(e)468 b(the)h(follo)-34 b(wing)469 b(migh)-34 b(t)2000
+7406 y(b)34 b(e)404 b(con)-34 b(v)g(enien)g(t)405 b(to)g(add)f(in)-34
+b(to)405 b(y)-34 b(our)405 b(or)f(other)g(p)34 b(eople's)403
+b(startup)j(\014les:)5200 9267 y Fu(\(eval-after-load)642
+b('info)7109 10728 y('\(add-to-list)f('Info-directory-list)j
+("~myself/info"\)\))2000 13453 y Fq(Making)545 b(the)h(L)11170
+13259 y Fn(a)11817 13453 y Fq(T)12682 13776 y(E)13552
+13453 y(X)f(st)-45 b(yle)545 b(a)-45 b(v)-91 b(ailable)2000
+15413 y FC(If)588 b(y)-34 b(ou)588 b(w)-34 b(an)g(t)590
+b(others)e(to)g(b)34 b(e)588 b(able)f(to)h(share)g(y)-34
+b(our)588 b(installation,)634 b(y)-34 b(ou)588 b(should)h(con\014gure)g
+(it)e(using)2000 16874 y Fu(--without-texmf-dir)p FC(,)411
+b(in)404 b(whic)-34 b(h)405 b(case)e(things)i(should)h(w)-34
+b(ork)404 b(as)g(w)-34 b(ell)404 b(for)g(them)h(as)f(for)g(y)-34
+b(ou.)2000 19599 y Fq(1.2.6.1)818 b(Using)545 b(A)-45
+b(UCT)16581 19922 y(E)17449 19599 y(X)545 b(from)h(lo)45
+b(cal)546 b(Git)f(rep)45 b(o)2000 21558 y FC(With)510
+b(the)h(tec)-34 b(hniques)511 b(describ)34 b(ed)510 b(ab)34
+b(o)-34 b(v)g(e,)536 b(it)510 b(is)g(also)g(p)34 b(ossible)510
+b(to)h(use)f(A)-34 b(UCT)39808 21819 y(E)40483 21558
+y(X)510 b(directly)g(from)g(a)2000 23019 y(lo)34 b(cal)391
+b(Git)h(rep)34 b(ository)-101 b(.)533 b(Let's)391 b(assume)h(y)-34
+b(ou)393 b(ha)-34 b(v)g(e)392 b(y)-34 b(our)392 b(Git)g(rep)34
+b(ositories)391 b(under)h(`)p Fu(~/development/)p FC('.)3660
+24881 y(First,)310 b(y)-34 b(ou)286 b(ha)-34 b(v)g(e)286
+b(to)g(fetc)-34 b(h)286 b(a)g(cop)-34 b(y)285 b(of)h(the)g(A)-34
+b(UCT)26077 25142 y(E)26752 24881 y(X)286 b(Git)g(rep)34
+b(ository)-101 b(.)498 b(In)285 b(a)h(shell,)309 b(c)-34
+b(hange)286 b(directory)2000 26342 y(to)404 b(`)p Fu(~/development/)p
+FC(')409 b(and)c(do:)5200 28203 y Fu(git)637 b(clone)i
+(https://git.savannah.gnu.org/git/auctex.git)3660 30065
+y FC(No)-34 b(w)362 b(c)-34 b(hange)361 b(directory)e(to)i(`)p
+Fu(~/development/auctex)p FC(')367 b(and)361 b(run)g(`)p
+Fu(./autogen.sh)p FC('.)528 b(Next)360 b(thing)2000 31526
+y(is)404 b(to)g(run)h Fu(configure)i FC(lik)-34 b(e)403
+b(this:)5200 33388 y Fu(./configure)640 b(--without-texmf-dir)j
+(--with-lispdir=.)2000 35249 y FC(When)404 b(\014nished,)h(simply)f(en)
+-34 b(ter)5200 37111 y Fu(make)2000 38972 y FC(and)405
+b(y)-34 b(ou're)404 b(\014nished.)539 b(Note)404 b(that)i(the)e(`)p
+Fu(make)h(install)p FC(')i(step)d(is)g(not)h(necessary)-101
+b(.)3660 40834 y(No)-34 b(w)365 b(y)-34 b(ou)365 b(ha)-34
+b(v)g(e)365 b(to)f(tell)g(Emacs)g(ab)34 b(out)365 b(the)f(plan.)526
+b(The)364 b(follo)-34 b(wing)365 b(v)-67 b(ariables)363
+b(m)-34 b(ust)365 b(b)34 b(e)364 b(set)h(in)f(y)-34 b(our)2000
+42295 y(init)404 b(\014le)g(b)34 b(ecause)404 b(their)g(normal)g(v)-67
+b(alues)403 b(are)h(only)g(correct)f(when)i(A)-34 b(UCT)36507
+42556 y(E)37182 42295 y(X)404 b(is)g(installed:)5200
+44157 y Fu(\(setq)638 b(TeX-data-directory)643 b
+("~/development/auctex")9018 45618 y(TeX-lisp-directory)g
+(TeX-data-directory\))2000 47479 y FC(The)405 b(info)f(\014les)g(will)g
+(b)34 b(e)404 b(a)-34 b(v)-67 b(ailable)403 b(with)i(this:)5200
+49341 y Fu(\(eval-after-load)642 b('info)7109 50802 y('\(add-to-list)f
+('Info-additional-directory-list)16018 52263 y
+("~/development/auctex/doc"\)\))2000 54125 y FC(No)-34
+b(w)405 b(y)-34 b(ou're)404 b(ready)f(to)i(load)f Fu(auctex.el)j
+FC(and)e Fu(preview-latex.el)410 b FC(out)405 b(of)f(this)h(directory:)
+5200 55986 y Fu(\(load)638 b("~/development/auctex/auctex.el")648
+b(nil)637 b(t)g(t\))5200 57448 y(\(load)h
+("~/development/auctex/preview-latex.el")650 b(nil)638
+b(t)e(t\))2000 60173 y Fq(1.2.7)818 b(Installation)547
+b(under)e(MS)h(Windo)-45 b(ws)2000 62995 y(In)546 b(a)g(Nutshell)2000
+64955 y FC(The)384 b(follo)-34 b(wing)383 b(are)g(brief)g(installation)
+h(instructions)g(for)f(the)g(impatien)-34 b(t.)533 b(In)383
+b(case)g(y)-34 b(ou)383 b(don't)h(under-)2000 66416 y(stand)377
+b(some)e(of)h(this,)381 b(run)376 b(in)-34 b(to)376 b(trouble)g(of)f
+(some)h(sort,)381 b(or)375 b(need)g(more)g(elab)34 b(orate)375
+b(information,)382 b(refer)2000 67877 y(to)404 b(the)h(detailed)f
+(instructions)h(further)g(b)34 b(elo)-34 b(w.)2657 69738
+y(1.)800 b(Install)329 b(the)g(prerequisites,)342 b(i.e.)327
+b(GNU)i(Emacs,)343 b(MSYS)330 b(or)e(Cygwin,)344 b(a)329
+b(T)37927 69999 y(E)38600 69738 y(X)g(system,)343 b(and)330
+b(Ghost-)4400 71200 y(script.)p eop end
+%%Page: 11 16
+TeXDict begin 11 15 bop 2000 -1550 a FC(Chapter)405 b(1:)539
+b(In)-34 b(tro)34 b(duction)33954 b(11)2657 3985 y(2.)800
+b(Op)34 b(en)502 b(the)g(MSYS)h(shell)e(or)h(a)f(Cygwin)i(shell)e(and)i
+(c)-34 b(hange)502 b(to)g(the)h(directory)e(con)-34 b(taining)502
+b(the)4400 5446 y(unzipp)34 b(ed)405 b(\014le)f(con)-34
+b(ten)g(ts.)2657 7238 y(3.)800 b(Con\014gure)405 b(A)-34
+b(UCT)13257 7499 y(E)13932 7238 y(X:)4400 9029 y(F)-101
+b(or)563 b(Emacs:)856 b(Man)-34 b(y)564 b(p)34 b(eople)563
+b(lik)-34 b(e)562 b(to)i(install)f(A)-34 b(UCT)30065
+9290 y(E)30739 9029 y(X)564 b(in)-34 b(to)564 b(the)f(pseudo)h(\014le)f
+(system)g(hier-)4400 10490 y(arc)-34 b(h)g(y)473 b(set)g(up)h(b)-34
+b(y)473 b(the)h(Emacs)e(installation.)746 b(Assuming)474
+b(Emacs)f(is)f(installed)h(in)g Fu(C:/Program)4400 11952
+y(Files/Emacs)331 b FC(and)d(the)g(directory)e(for)h(lo)34
+b(cal)326 b(additions)j(of)e(y)-34 b(our)328 b(T)35509
+12213 y(E)36183 11952 y(X)f(system,)342 b(e.g.)327 b(MiKT)46924
+12213 y(E)47597 11952 y(X,)342 b(is)4400 13413 y Fu(C:/localtexmf)p
+FC(,)356 b(y)-34 b(ou)338 b(can)g(do)h(this)g(b)-34 b(y)338
+b(t)-34 b(yping)339 b(the)g(follo)-34 b(wing)339 b(statemen)-34
+b(t)339 b(at)g(the)f(shell)g(prompt:)7600 15204 y Fu(./configure)640
+b(--prefix='C:/Program)k(Files/Emacs')c(\\)8873 16666
+y(--infodir='C:/Program)k(Files/Emacs/info')e(\\)8873
+18127 y(--with-texmf-dir='C:/localtexmf')4400 19918 y
+FC(The)498 b(commands)h(ab)34 b(o)-34 b(v)g(e)498 b(is)g(example)f(for)
+h(common)h(usage.)820 b(More)497 b(on)i(con\014guration)g(options)4400
+21379 y(can)404 b(b)34 b(e)404 b(found)i(in)e(the)g(detailed)h
+(installation)f(instructions)h(b)34 b(elo)-34 b(w.)4400
+23171 y(If)498 b(the)g(con\014guration)h(script)e(failed)h(to)g(\014nd)
+h(all)e(required)g(programs,)521 b(mak)-34 b(e)497 b(sure)h(that)h
+(these)4400 24632 y(programs)416 b(are)f(in)h(y)-34 b(our)416
+b(system)g(path)h(and)g(add)f(directories)f(con)-34 b(taining)417
+b(the)f(programs)g(to)g(the)4400 26093 y Fu(PATH)405
+b FC(en)-34 b(vironmen)g(t)406 b(v)-67 b(ariable)402
+b(if)i(necessary)-101 b(.)538 b(Here)404 b(is)f(ho)-34
+b(w)406 b(to)e(do)h(that)g(in)f(W2000/XP:)5057 27885
+y(1.)800 b(On)404 b(the)h(desktop,)f(righ)-34 b(t)405
+b(clic)-34 b(k)403 b(\\My)h(Computer")h(and)g(select)f(prop)34
+b(erties.)5057 29676 y(2.)800 b(Clic)-34 b(k)404 b(on)g(\\Adv)-67
+b(anced")405 b(in)f(the)g(\\System)h(Prop)34 b(erties")403
+b(windo)-34 b(w.)5057 31468 y(3.)800 b(Select)404 b(\\En)-34
+b(vironmen)g(t)405 b(V)-101 b(ariables".)5057 33259 y(4.)800
+b(Select)501 b(\\path")i(in)f(\\System)g(V)-101 b(ariables")501
+b(and)h(clic)-34 b(k)501 b(\\edit".)831 b(Mo)-34 b(v)g(e)502
+b(to)g(the)g(fron)-34 b(t)503 b(in)e(the)6800 34721 y(line)392
+b(\(this)h(migh)-34 b(t)393 b(require)e(scrolling\))g(and)i(add)g(the)g
+(missing)f(path)h(including)g(driv)-34 b(e)392 b(letter,)6800
+36182 y(ended)405 b(with)g(a)f(semicolon.)2657 37973
+y(4.)800 b(If)404 b(there)g(w)-34 b(ere)404 b(no)h(further)f(error)g
+(messages,)f(t)-34 b(yp)34 b(e)7600 39765 y Fu(make)4400
+41556 y FC(In)404 b(case)g(there)g(w)-34 b(ere,)404 b(please)f(refer)h
+(to)g(the)h(detailed)f(description)g(b)34 b(elo)-34 b(w.)2657
+43348 y(5.)800 b(Finish)405 b(the)f(installation)h(b)-34
+b(y)404 b(t)-34 b(yping)7600 45140 y Fu(make)638 b(install)2000
+47793 y Fq(Detailed)545 b(Installation)i(Instructions)2000
+49752 y FC(Installation)512 b(of)g(A)-34 b(UCT)13365
+50013 y(E)14040 49752 y(X)511 b(under)i(Windo)-34 b(ws)512
+b(is)g(in)f(itself)h(not)g(more)f(complicated)h(than)h(on)f(other)2000
+51213 y(platforms.)518 b(Ho)-34 b(w)g(ev)g(er,)353 b(meeting)341
+b(the)f(prerequisites)g(migh)-34 b(t)341 b(require)e(more)h(w)-34
+b(ork)340 b(than)i(on)e(some)h(other)2000 52674 y(platforms,)405
+b(and)g(feel)e(less)h(natural.)3660 54466 y(If)470 b(y)-34
+b(ou)470 b(are)f(exp)34 b(eriencing)468 b(an)-34 b(y)470
+b(problems,)485 b(ev)-34 b(en)469 b(if)h(y)-34 b(ou)470
+b(think)g(they)f(are)g(of)h(y)-34 b(our)470 b(o)-34 b(wn)470
+b(making,)2000 55927 y(b)34 b(e)427 b(sure)g(to)h(rep)34
+b(ort)426 b(them)i(to)g Fu(auctex-devel@gnu.org)434 b
+FC(so)427 b(that)i(w)-34 b(e)427 b(can)h(explain)f(things)h(b)34
+b(etter)427 b(in)2000 57388 y(future.)3660 59180 y(Windo)-34
+b(ws)320 b(is)e(a)g(problematic)h(platform)g(for)f(installation)h
+(scripts.)510 b(The)319 b(main)f(problem)h(is)f(that)h(the)2000
+60641 y(installation)353 b(pro)34 b(cedure)352 b(requires)g(consisten)
+-34 b(t)354 b(\014le)e(names)h(in)g(order)f(to)h(\014nd)h(its)f(w)-34
+b(a)g(y)353 b(in)g(the)g(directory)2000 62102 y(hierarc)-34
+b(h)g(y)-101 b(,)404 b(and)h(Windo)-34 b(ws)405 b(path)g(names)g(are)e
+(a)h(mess.)3660 63894 y(The)337 b(installation)f(pro)34
+b(cedure)335 b(tries)g(\014nding)i(stu\013)g(in)f(system)f(searc)-34
+b(h)336 b(paths)h(and)g(in)e(Emacs)h(paths.)2000 65355
+y(F)-101 b(or)483 b(that)i(to)f(succeed,)502 b(y)-34
+b(ou)484 b(ha)-34 b(v)g(e)484 b(to)g(use)f(the)h(same)f(syn)-34
+b(tax)484 b(and)g(sp)34 b(elling)483 b(and)h(case)f(of)h(paths)h(ev-)
+2000 66816 y(erywhere:)557 b(in)414 b(y)-34 b(our)414
+b(system)g(searc)-34 b(h)414 b(paths,)j(in)d(Emacs')g
+Fu(load-path)j FC(v)-67 b(ariable,)414 b(as)g(argumen)-34
+b(t)415 b(to)f(the)2000 68277 y(scripts.)647 b(If)440
+b(y)-34 b(our)441 b(path)g(names)g(con)-34 b(tain)441
+b(spaces)f(or)g(other)h(`shell-unfriendly')f(c)-34 b(haracters,)449
+b(most)440 b(no-)2000 69738 y(tably)352 b(bac)-34 b(kslashes)353
+b(for)f(directory)g(separators,)362 b(place)352 b(the)h(whole)f(path)i
+(in)e(`)p Fu("double)406 b(quote)g(marks")p FC(')2000
+71200 y(whenev)-34 b(er)404 b(y)-34 b(ou)405 b(sp)34
+b(ecify)403 b(it)h(on)h(a)f(command)h(line.)p eop end
+%%Page: 12 17
+TeXDict begin 12 16 bop 2000 -1550 a FC(Chapter)405 b(1:)539
+b(In)-34 b(tro)34 b(duction)33954 b(12)3660 3985 y(Av)-34
+b(oid)360 b(`helpful')f(magic)g(\014le)h(names)f(lik)-34
+b(e)359 b(`)p Fu(/cygdrive/c)p FC(')j(and)f(`)p Fu(C:\\PROGRA~1\\)p
+FC(')i(lik)-34 b(e)358 b(the)i(plague.)2000 5446 y(It)660
+b(is)g(quite)g(unlik)-34 b(ely)660 b(that)h(the)g(scripts)f(will)g(b)34
+b(e)660 b(able)g(to)g(iden)-34 b(tify)661 b(the)g(actual)f(\014le)g
+(names)h(in-)2000 6907 y(v)-34 b(olv)g(ed.)531 b(Use)383
+b(the)h(full)f(paths,)388 b(making)383 b(use)g(of)h(normal)f(Windo)-34
+b(ws)384 b(driv)-34 b(e)382 b(letters)h(lik)-34 b(e)382
+b(`)404 b Fu('C:/Program)2000 8369 y(Files/Emacs')k FC(')451
+b(where)g(required,)462 b(and)452 b(using)f(the)h(same)f(com)-34
+b(bination)452 b(of)g(upp)34 b(er-)451 b(and)h(lo)-34
+b(w)g(ercase)2000 9830 y(letters)487 b(as)g(in)g(the)g(actual)g
+(\014les.)787 b(File)486 b(names)i(con)-34 b(taining)488
+b(shell-sp)34 b(ecial)485 b(c)-34 b(haracters)487 b(lik)-34
+b(e)486 b(spaces)h(or)2000 11291 y(bac)-34 b(kslashes)413
+b(\(if)h(y)-34 b(ou)413 b(prefer)g(that)h(syn)-34 b(tax\))414
+b(need)f(to)g(get)g(prop)34 b(erly)412 b(quoted)i(to)f(the)h(shell:)555
+b(the)414 b(ab)34 b(o)-34 b(v)g(e)2000 12752 y(example)403
+b(used)i(single)f(quotes)g(for)h(that.)3660 14554 y(Ok,)f(no)-34
+b(w)405 b(here)f(are)f(the)i(steps)f(to)h(p)34 b(erform:)2657
+16356 y(1.)800 b(Y)-101 b(ou)451 b(need)g(to)g(unpac)-34
+b(k)452 b(the)f(A)-34 b(UCT)21029 16617 y(E)21704 16356
+y(X)451 b(distribution)h(\(whic)-34 b(h)452 b(y)-34 b(ou)451
+b(seemingly)f(ha)-34 b(v)g(e)451 b(done)g(since)4400
+17818 y(y)-34 b(ou)393 b(are)f(reading)h(this\).)536
+b(It)392 b(m)-34 b(ust)394 b(b)34 b(e)393 b(unpac)-34
+b(k)g(ed)394 b(in)f(a)f(separate)h(installation)g(directory)f(outside)
+4400 19279 y(of)407 b(y)-34 b(our)407 b(Emacs)g(\014le)g(hierarc)-34
+b(h)g(y:)543 b(the)408 b(installation)f(will)f(later)h(cop)-34
+b(y)407 b(all)f(necessary)g(\014les)h(to)g(their)4400
+20740 y(\014nal)352 b(destination,)364 b(and)353 b(y)-34
+b(ou)352 b(can)g(ultimately)g(remo)-34 b(v)g(e)351 b(the)i(directory)e
+(where)h(y)-34 b(ou)352 b(unpac)-34 b(k)g(ed)353 b(the)4400
+22201 y(\014les.)4400 23999 y(Line)416 b(endings)i(are)f(a)g(problem)g
+(under)h(Windo)-34 b(ws.)579 b(The)417 b(distribution)i(con)-34
+b(tains)418 b(only)f(text)g(\014les,)4400 25460 y(and)424
+b(theoretically)e(most)h(of)g(the)h(in)-34 b(v)g(olv)g(ed)423
+b(to)34 b(ols)423 b(should)h(get)f(along)g(with)h(that.)596
+b(Ho)-34 b(w)g(ev)g(er,)427 b(the)4400 26921 y(\014les)481
+b(are)f(pro)34 b(cessed)481 b(b)-34 b(y)481 b(v)-67 b(arious)481
+b(utilities,)499 b(and)482 b(it)f(is)g(conceiv)-67 b(able)479
+b(that)j(not)g(all)f(of)g(them)g(will)4400 28382 y(use)422
+b(the)f(same)h(line)e(ending)i(con)-34 b(v)g(en)g(tions.)592
+b(If)422 b(y)-34 b(ou)421 b(encoun)-34 b(ter)422 b(problems,)k(it)421
+b(migh)-34 b(t)423 b(help)e(if)g(y)-34 b(ou)4400 29844
+y(try)404 b(unpac)-34 b(king)405 b(\(or)f(c)-34 b(hec)g(king)405
+b(out\))g(the)f(\014les)g(in)g(binary)h(mo)34 b(de,)403
+b(if)h(y)-34 b(our)405 b(to)34 b(ols)404 b(allo)-34 b(w)404
+b(that.)4400 31641 y(If)j(y)-34 b(ou)407 b(don't)g(ha)-34
+b(v)g(e)407 b(a)g(suitable)g(unpac)-34 b(king)408 b(to)34
+b(ol,)407 b(skip)f(to)h(the)g(next)g(step:)544 b(this)407
+b(should)h(pro)-34 b(vide)4400 33103 y(y)g(ou)405 b(with)g(a)f(w)-34
+b(orking)404 b(`)p Fu(unzip)p FC(')h(command.)2657 34900
+y(2.)800 b(The)387 b(installation)h(of)f(A)-34 b(UCT)17889
+35161 y(E)18563 34900 y(X)387 b(will)f(require)g(the)h(MSYS)h(to)34
+b(ol)386 b(set)h(from)g Fu(http://www.mingw.)4400 36361
+y(org/)539 b FC(or)f(the)g(Cygwin)h(to)34 b(ol)537 b(set)h(from)h
+Fu(https://cygwin.com/)p FC(.)946 b(The)538 b(latter)g(is)g(slo)-34
+b(w)g(er)538 b(and)4400 37823 y(larger)412 b(\(the)j(do)-34
+b(wnload)415 b(size)d(of)i(the)g(base)g(system)f(is)g(ab)34
+b(out)415 b(15)e(MB\))g(but)i(comes)e(with)h(a)g(pac)-34
+b(k-)4400 39284 y(age)481 b(manager)f(that)i(allo)-34
+b(ws)481 b(for)g(up)34 b(dating)482 b(the)g(to)34 b(ol)480
+b(set)h(and)h(installing)f(additional)g(pac)-34 b(k)-67
+b(ages)4400 40745 y(lik)-34 b(e,)403 b(for)h(example,)f(the)i(sp)34
+b(ell)403 b(c)-34 b(hec)g(k)g(er)404 b(asp)34 b(ell)o(.)4400
+42543 y(If)462 b(Cygwin)h(sp)34 b(eci\014c)462 b(paths)h(lik)-34
+b(e)461 b(`)p Fu(/cygdrive/c)p FC(')466 b(crop)c(up)h(in)f(the)h
+(course)e(of)i(the)g(installation,)4400 44004 y(using)443
+b(a)f(non-Cygwin)i(Emacs)e(could)g(conceiv)-67 b(ably)441
+b(cause)h(trouble.)654 b(Using)442 b(Cygwin)h(either)f(for)4400
+45465 y(ev)-34 b(erything)404 b(or)g(nothing)h(migh)-34
+b(t)405 b(sa)-34 b(v)g(e)405 b(headac)-34 b(hes,)404
+b Fo(if)661 b FC(things)405 b(don't)g(w)-34 b(ork)404
+b(out.)2657 47263 y(3.)800 b(Install)388 b(a)g(curren)-34
+b(t)388 b(v)-34 b(ersion)388 b(of)g(Emacs)g(from)g Fu
+(https://ftp.gnu.org/gnu/emacs/windows/)p FC(.)2657 49060
+y(4.)800 b(Y)-101 b(ou)584 b(need)f(a)h(w)-34 b(orking)584
+b(T)16703 49321 y(E)17376 49060 y(X)g(installation.)1077
+b(One)583 b(p)34 b(opular)584 b(installation)g(under)g(Windo)-34
+b(ws)584 b(is)4400 50522 y(MiKT)7464 50783 y(E)8137 50522
+y(X)431 b(\()p Fu(https://miktex.org/)p FC(\).)623 b(Another)431
+b(m)-34 b(uc)g(h)432 b(more)d(extensiv)-34 b(e)430 b(system)g(is)g(T)
+45774 50783 y(E)46448 50522 y(X)404 b(Liv)-34 b(e)4400
+51983 y(\()p Fu(https://www.tug.org/texlive/)p FC(\))415
+b(whic)-34 b(h)405 b(is)f(rather)g(close)f(to)i(its)f(Unix)g(cousins.)
+2657 53781 y(5.)800 b(A)698 b(w)-34 b(orking)698 b(cop)-34
+b(y)698 b(of)g(Ghostscript)h(\()p Fu(https://www.ghostscript.com/)p
+FC(\))708 b(is)698 b(required)f(for)4400 55242 y Fw(p)-34
+b(review-latex)403 b FC(op)34 b(eration.)539 b(Examining)404
+b(the)h(output)h(from)7600 57039 y Fu(gswin32c)639 b(-h)4400
+58837 y FC(on)487 b(a)g(Windo)-34 b(ws)488 b(command)g(line)e(should)i
+(tell)e(y)-34 b(ou)487 b(whether)h(y)-34 b(our)487 b(Ghostscript)g
+(supp)34 b(orts)488 b(the)4400 60298 y Fu(png16m)296
+b FC(device)c(needed)i(for)f Fr(PNG)h FC(supp)34 b(ort.)502
+b(MiKT)28477 60559 y(E)29151 60298 y(X)293 b(apparen)-34
+b(tly)294 b(comes)f(with)i(its)e(o)-34 b(wn)295 b(Ghost-)4400
+61760 y(script)404 b(called)f Fu(mgs.exe)p FC(.)2657
+63557 y(6.)800 b(P)-34 b(erl)415 b(\()p Fu(https://www.perl.org/)p
+FC(\))423 b(is)415 b(needed)h(for)f(rebuilding)h(the)f(do)34
+b(cumen)-34 b(tation)417 b(if)f(y)-34 b(ou)415 b(are)4400
+65018 y(w)-34 b(orking)295 b(with)h(a)f(cop)-34 b(y)295
+b(from)g(Git)g(or)f(ha)-34 b(v)g(e)296 b(touc)-34 b(hed)296
+b(do)34 b(cumen)-34 b(tation)297 b(source)d(\014les)h(in)g(the)g
+Fw(p)-34 b(review-)4400 66480 y(latex)311 b FC(part.)508
+b(If)312 b(the)g(line)f(endings)h(of)g(the)h(\014le)e
+Fu(preview/latex/preview.dtx)320 b FC(don't)313 b(corresp)34
+b(ond)4400 67941 y(with)405 b(what)g(P)-34 b(erl)404
+b(calls)f Fu(\\n)i FC(when)g(reading)f(text)g(\014les,)g(y)-34
+b(ou'll)404 b(run)g(in)-34 b(to)405 b(trouble.)2657 69738
+y(7.)800 b(No)-34 b(w)339 b(the)f(fun)g(stu\013)h(starts.)517
+b(If)338 b(y)-34 b(ou)338 b(ha)-34 b(v)g(e)338 b(not)h(y)-34
+b(et)337 b(done)i(so,)350 b(unpac)-34 b(k)339 b(the)f(A)-34
+b(UCT)41873 69999 y(E)42548 69738 y(X)338 b(distribution)4400
+71200 y(in)-34 b(to)405 b(a)f(separate)g(directory)g(after)g(rereading)
+f(the)i(instructions)g(for)f(unpac)-34 b(king)406 b(ab)34
+b(o)-34 b(v)g(e.)p eop end
+%%Page: 13 18
+TeXDict begin 13 17 bop 2000 -1550 a FC(Chapter)405 b(1:)539
+b(In)-34 b(tro)34 b(duction)33954 b(13)2657 3985 y(8.)800
+b(Ready)519 b(for)h(tak)-34 b(eo\013.)883 b(Start)521
+b(some)e(shell)f(\(t)-34 b(ypically)519 b Fu(bash)p FC(\))i(capable)e
+(of)h(running)g Fu(configure)p FC(,)4400 5446 y(c)-34
+b(hange)405 b(in)-34 b(to)405 b(the)f(installation)h(directory)e(and)i
+(call)e Fu(./configure)408 b FC(with)d(appropriate)g(options.)4400
+7455 y(T)-34 b(ypical)404 b(options)h(y)-34 b(ou'll)404
+b(w)-34 b(an)g(t)406 b(to)e(sp)34 b(ecify)404 b(will)f(b)34
+b(e)4400 10012 y Fu(--prefix=)p Fs(drive:/path/to/emacs-hierarchy)10800
+11474 y FC(whic)-34 b(h)350 b(tells)f Fu(configure)k
+FC(where)d(to)f(p)34 b(erform)350 b(the)g(installation.)521
+b(It)349 b(ma)-34 b(y)350 b(also)f(mak)-34 b(e)10800
+12935 y Fu(configure)413 b FC(\014nd)e(Emacs)e(automatically;)k(if)d
+(this)g(do)34 b(esn't)410 b(happ)34 b(en,)412 b(try)e
+Fu(--with-)10800 14396 y(emacs)427 b FC(as)f(describ)34
+b(ed)425 b(b)34 b(elo)-34 b(w.)603 b(All)425 b(automatic)h(detection)g
+(of)g(\014les)g(and)g(directories)10800 15857 y(restricts)473
+b(itself)h(to)g(directories)e(b)34 b(elo)-34 b(w)474
+b(the)g Ft(pre\014x)557 b FC(or)473 b(in)h(the)g(same)f(hierarc)-34
+b(h)g(y)474 b(as)10800 17318 y(the)498 b(program)f(accessing)g(the)h
+(\014les.)819 b(Usually)-101 b(,)520 b(directories)496
+b(lik)-34 b(e)497 b Fu(man)p FC(,)521 b Fu(share)499
+b FC(and)10800 18780 y Fu(bin)405 b FC(will)f(b)34 b(e)404
+b(situated)h(righ)-34 b(t)404 b(under)h Ft(pre\014x)p
+FC(.)10800 20789 y(This)355 b(option)h(also)f(a\013ects)f(the)i
+(defaults)f(for)g(placing)g(the)g(T)-101 b(exinfo)355
+b(do)34 b(cumen)-34 b(tation)10800 22250 y(\014les)404
+b(\(see)g(also)g Fu(--infodir)j FC(b)34 b(elo)-34 b(w\))405
+b(and)g(automatically)f(generated)g(st)-34 b(yle)404
+b(ho)34 b(oks.)10800 24259 y(If)443 b(y)-34 b(ou)443
+b(ha)-34 b(v)g(e)443 b(a)g(cen)-34 b(tral)443 b(directory)f(hierarc)-34
+b(h)g(y)443 b(\(not)g(un)-34 b(t)g(ypical)444 b(with)g(Cygwin\))g(for)
+10800 25720 y(suc)-34 b(h)564 b(stu\013,)604 b(y)-34
+b(ou)563 b(migh)-34 b(t)564 b(w)-34 b(an)g(t)565 b(to)f(sp)34
+b(ecify)562 b(its)i(ro)34 b(ot)563 b(here.)1015 b(Y)-101
+b(ou)563 b(stand)i(a)e(go)34 b(o)g(d)10800 27181 y(c)-34
+b(hance)346 b(that)h(this)f(will)f(b)34 b(e)346 b(the)g(only)g(option)g
+(y)-34 b(ou)346 b(need)g(to)g(supply)-101 b(,)358 b(as)346
+b(long)g(as)g(y)-34 b(our)10800 28643 y(T)11473 28904
+y(E)12147 28643 y(X-related)382 b(executables)h(are)f(in)h(y)-34
+b(our)383 b(system)f(path,)388 b(whic)-34 b(h)384 b(they)f(b)34
+b(etter)382 b(b)34 b(e)383 b(for)10800 30104 y(A)-34
+b(UCT)14132 30365 y(E)14807 30104 y(X's)404 b(op)34 b(eration,)404
+b(an)-34 b(yw)g(a)g(y)-101 b(.)4400 32661 y Fu(--with-emacs)10800
+34122 y FC(if)1128 b(y)-34 b(ou)1129 b(are)f(installing)h(for)f(a)g(v)
+-34 b(ersion)1129 b(of)f(Emacs.)2711 b(Y)-101 b(ou)1129
+b(can)g(use)10800 35583 y(`)p Fu(--with-emacs=)p Fs
+(drive:/path/to/emacs)p FC(')619 b(to)608 b(sp)34 b(ecify)607
+b(the)h(name)g(of)h(the)f(in-)10800 37044 y(stalled)529
+b(Emacs)f(executable,)559 b(complete)529 b(with)g(its)g(path)h(if)f
+(necessary)f(\(if)h(Emacs)10800 38506 y(is)404 b(not)h(within)g(a)f
+(directory)f(sp)34 b(eci\014ed)404 b(in)g(y)-34 b(our)405
+b Fu(PATH)g FC(en)-34 b(vironmen)g(t)405 b(setting\).)4400
+41063 y Fu(--with-lispdir=)p Fs(drive:/path/to/site-lisp)10800
+42524 y FC(This)439 b(option)g(tells)f(a)h(place)f(in)g
+Fu(load-path)k FC(b)34 b(elo)-34 b(w)439 b(whic)-34 b(h)439
+b(the)g(\014les)f(are)g(situated.)10800 43985 y(The)356
+b(startup)g(\014les)g Fu(auctex.el)i FC(and)e Fu(preview-latex.el)361
+b FC(will)355 b(get)g(installed)g(here)10800 45446 y(unless)320
+b(a)f(sub)34 b(directory)319 b Fu(site-start.d)324 b
+FC(exists)319 b(whic)-34 b(h)320 b(will)f(then)h(b)34
+b(e)320 b(used)g(instead.)10800 46907 y(The)555 b(other)g(\014les)g
+(from)g(A)-34 b(UCT)25691 47168 y(E)26366 46907 y(X)555
+b(will)f(b)34 b(e)555 b(installed)f(in)h(a)g(sub)34 b(directory)555
+b(called)10800 48369 y Fu(auctex)p FC(.)10800 50378 y(If)405
+b(y)-34 b(ou)405 b(think)h(that)g(y)-34 b(ou)405 b(need)g(a)g
+(di\013eren)-34 b(t)406 b(setup,)f(please)g(refer)f(to)h(the)h(full)f
+(instal-)10800 51839 y(lation)f(instructions)i(in)e(Section)g(1.2.2)g
+([Con\014gure],)g(page)g(5.)4400 54396 y Fu(--infodir=)p
+Fs(drive:/path/to/info/directory)10800 55857 y FC(If)g(y)-34
+b(ou)404 b(are)f(installing)h(in)-34 b(to)405 b(an)f(Emacs)f(directory)
+-101 b(,)403 b(info)h(\014les)g(ha)-34 b(v)g(e)404 b(to)g(b)34
+b(e)403 b(put)i(in)-34 b(to)10800 57318 y(the)396 b Fu(info)i
+FC(folder)e(b)34 b(elo)-34 b(w)396 b(that)h(directory)-101
+b(.)535 b(The)396 b(con\014guration)i(script)d(will)h(usually)10800
+58780 y(try)458 b(to)g(install)g(in)-34 b(to)459 b(the)g(folder)f
+Fu(share/info)p FC(,)475 b(so)458 b(y)-34 b(ou)458 b(ha)-34
+b(v)g(e)459 b(to)f(o)-34 b(v)g(erride)458 b(this)h(b)-34
+b(y)10800 60241 y(sp)34 b(ecifying)437 b(something)h(lik)-34
+b(e)437 b(`)p Fu(--infodir='C:/Program)411 b(Files/info')p
+FC(')441 b(for)c(the)10800 61702 y(con\014gure)405 b(call.)4400
+64259 y Fu(--with-auto-dir=)p Fs(drive:/dir)10800 65720
+y FC(Directory)340 b(con)-34 b(taining)342 b(automatically)f(generated)
+g(information.)519 b(Y)-101 b(ou)341 b(should)h(not)10800
+67181 y(normally)404 b(need)g(to)g(set)h(this,)f(as)g(`)p
+Fu(--prefix)p FC(')i(should)g(tak)-34 b(e)404 b(care)f(of)i(this.)4400
+69738 y Fu(--disable-preview)10800 71200 y FC(Use)f(this)h(option)g(if)
+f(y)-34 b(our)404 b(Emacs)g(v)-34 b(ersion)404 b(is)g(unable)h(to)f
+(supp)34 b(ort)405 b(image)f(displa)-34 b(y)-101 b(.)p
+eop end
+%%Page: 14 19
+TeXDict begin 14 18 bop 2000 -1550 a FC(Chapter)405 b(1:)539
+b(In)-34 b(tro)34 b(duction)33954 b(14)4400 3985 y Fu
+(--with-texmf-dir=)p Fs(drive:/dir)10800 5446 y FC(This)513
+b(will)e(sp)34 b(ecify)512 b(the)h(directory)e(where)h(y)-34
+b(our)513 b(T)34816 5707 y(E)35489 5446 y(X)g(installation)f(sits.)864
+b(If)512 b(y)-34 b(our)10800 6907 y(T)11473 7168 y(E)12147
+6907 y(X)468 b(installation)h(do)34 b(es)469 b(not)g(conform)g(to)g
+(the)g Fr(TDS)f FC(\(T)37261 7168 y(E)37935 6907 y(X)h(directory)e
+(standard\),)10800 8369 y(y)-34 b(ou)405 b(ma)-34 b(y)404
+b(need)g(to)h(sp)34 b(ecify)403 b(more)h(options)h(to)f(get)h(ev)-34
+b(erything)404 b(in)g(place.)4400 10526 y(F)-101 b(or)389
+b(more)f(information)h(ab)34 b(out)390 b(an)-34 b(y)389
+b(of)g(the)g(ab)34 b(o)-34 b(v)g(e)389 b(and)g(additional)h(options,)i
+(see)c(Section)h(1.2.2)4400 11987 y([Con\014gure],)404
+b(page)h(5.)4400 13796 y(Some)426 b(executables)g(migh)-34
+b(t)426 b(not)h(b)34 b(e)426 b(found)h(in)f(y)-34 b(our)426
+b(path.)605 b(That)428 b(is)d(not)i(a)f(go)34 b(o)g(d)426
+b(idea,)k(but)d(y)-34 b(ou)4400 15257 y(can)404 b(get)g(around)i(b)-34
+b(y)404 b(sp)34 b(ecifying)404 b(en)-34 b(vironmen)g(t)405
+b(v)-67 b(ariables)403 b(to)h Fu(configure)p FC(:)7600
+17066 y Fu(GS=")p Fs(drive:/path/to/gswin32c.exe)p Fu(")648
+b(./configure)640 b(...)4400 18875 y FC(should)442 b(w)-34
+b(ork)441 b(for)h(this)f(purp)34 b(ose.)650 b Fu(gswin32c.exe)446
+b FC(is)440 b(the)i(usual)g(name)f(for)g(the)h(required)e
+Fo(c)-62 b(om-)4400 20336 y(mand)433 b(line)495 b FC(executable)404
+b(under)g(Windo)-34 b(ws;)405 b(in)g(con)-34 b(trast,)404
+b Fu(gswin32.exe)k FC(is)c(lik)-34 b(ely)403 b(to)h(fail.)4400
+22146 y(As)350 b(an)g(alternativ)-34 b(e)349 b(to)h(sp)34
+b(ecifying)349 b(v)-67 b(ariables)348 b(for)i(the)g Fu(configure)i
+FC(call)d(y)-34 b(ou)350 b(can)g(add)g(directories)4400
+23607 y(con)-34 b(taining)587 b(the)g(required)f(executables)f(to)i
+(the)g Fu(PATH)h FC(v)-67 b(ariable)585 b(of)h(y)-34
+b(our)587 b(Windo)-34 b(ws)587 b(system.)4400 25068 y(This)529
+b(is)f(esp)34 b(ecially)527 b(a)h(go)34 b(o)g(d)529 b(idea)f(if)h
+(Emacs)f(has)h(trouble)g(\014nding)g(the)g(resp)34 b(ectiv)-34
+b(e)528 b(programs)4400 26529 y(later)404 b(during)g(normal)h(op)34
+b(eration.)2657 28338 y(9.)800 b(Run)405 b Fu(make)h
+FC(in)e(the)g(installation)h(directory)-101 b(.)2051
+30147 y(10.)800 b(Run)405 b Fu(make)h(install)g FC(in)e(the)h
+(installation)g(directory)-101 b(.)2051 31956 y(11.)800
+b(With)897 b(Emacs,)1021 b(activ)-67 b(ation)897 b(of)g(A)-34
+b(UCT)24161 32217 y(E)24836 31956 y(X)897 b(and)h Fw(p)-34
+b(review-latex)897 b FC(dep)34 b(ends)898 b(on)f(a)h(w)-34
+b(orking)4400 33418 y Fu(site-start.d)477 b FC(directory)472
+b(or)g(similar)g(setup,)491 b(since)472 b(then)h(the)h(startup)g
+(\014les)e Fu(auctex.el)k FC(and)4400 34879 y Fu(preview-latex.el)410
+b FC(will)404 b(ha)-34 b(v)g(e)405 b(b)34 b(een)405 b(placed)f(there.)
+540 b(If)405 b(this)g(has)g(not)g(b)34 b(een)405 b(done,)g(y)-34
+b(ou)405 b(should)4400 36340 y(b)34 b(e)404 b(able)g(to)g(load)h(the)f
+(startup)i(\014les)e(man)-34 b(ually)404 b(with)7600
+38149 y Fu(\(load)638 b("auctex.el")i(nil)e(t)f(t\))7600
+39610 y(\(load)h("preview-latex.el")643 b(nil)637 b(t)g(t\))4400
+41419 y FC(in)367 b(either)f(a)h(site-wide)g Fu(site-start.el)372
+b FC(or)366 b(y)-34 b(our)367 b(p)34 b(ersonal)367 b(startup)h(\014le)f
+(\(usually)g(accessible)f(as)4400 42880 y Fu(~/.emacs)407
+b FC(or)d Fu(~/.emacs.d/init.el)410 b FC(from)405 b(within)g(Emacs\).)
+4400 44690 y(The)334 b(default)h(con\014guration)g(of)f(A)-34
+b(UCT)22740 44950 y(E)23415 44690 y(X)333 b(is)h(probably)g(not)h(the)f
+(b)34 b(est)334 b(\014t)g(for)g(Windo)-34 b(ws)335 b(systems)4400
+46151 y(with)405 b(MiKT)10225 46412 y(E)10898 46151 y(X.)539
+b(Y)-101 b(ou)404 b(migh)-34 b(t)405 b(w)-34 b(an)g(t)406
+b(to)f(add)7600 47960 y Fu(\(require)639 b('tex-mik\))4400
+49769 y FC(after)273 b(loading)g Fu(auctex.el)i FC(and)f
+Fu(preview-latex.el)k FC(in)273 b(order)f(to)h(get)f(more)g
+(appropriate)i(v)-67 b(alues)4400 51230 y(for)404 b(some)g
+(customization)h(options.)4400 53039 y(Y)-101 b(ou)405
+b(can)f(alw)-34 b(a)g(ys)405 b(use)7600 54848 y Fs(M-x)637
+b(customize-group)642 b(RET)c(AUCTeX)g(RET)4400 56657
+y FC(in)404 b(order)g(to)g(customize)g(more)g(stu\013,)h(or)f(use)g
+(the)g(`)p Fu(Customize)p FC(')j(men)-34 b(u.)2051 58466
+y(12.)800 b(Load)515 b Fu(circ.tex)j FC(in)-34 b(to)516
+b(Emacs)g(and)g(see)e(if)i(y)-34 b(ou)515 b(get)h(the)f(`)p
+Fu(Command)p FC(')i(men)-34 b(u.)873 b(T)-101 b(ry)515
+b(using)h(it)g(to)4400 59928 y(L)4722 59771 y Fv(a)5283
+59928 y FC(T)5956 60189 y(E)6630 59928 y(X)404 b(the)g(\014le.)2051
+61737 y(13.)800 b(Chec)-34 b(k)374 b(whether)g(the)g(`)p
+Fu(Preview)p FC(')i(men)-34 b(u)374 b(is)g(a)-34 b(v)-67
+b(ailable)372 b(in)i(this)g(\014le.)528 b(Use)373 b(it)h(to)g(generate)
+f(previews)4400 63198 y(for)404 b(the)h(do)34 b(cumen)-34
+b(t.)4400 65007 y(If)444 b(this)h(barfs)g(and)g(tells)e(y)-34
+b(ou)445 b(that)g(image)f(t)-34 b(yp)34 b(e)444 b(`)p
+Fu(png)p FC(')h(is)f(not)g(supp)34 b(orted,)456 b(y)-34
+b(ou)444 b(can)g(either)g(add)4400 66468 y Fr(PNG)362
+b FC(supp)34 b(ort)363 b(to)g(y)-34 b(our)362 b(Emacs)g(installation)g
+(or)g(c)-34 b(ho)34 b(ose)362 b(another)h(image)e(format)i(to)f(b)34
+b(e)362 b(used)h(b)-34 b(y)4400 67929 y Fw(p)g(review-latex)p
+FC(.)4400 69738 y(Adding)431 b(supp)34 b(ort)430 b(for)g(an)g(image)f
+(format)h(usually)g(in)-34 b(v)g(olv)g(es)430 b(the)g(installation)g
+(of)g(a)f(library)-101 b(,)435 b(e.g.)4400 71200 y(from)600
+b Fu(http://gnuwin32.sf.net/)p FC(.)1135 b(If)600 b(y)-34
+b(ou)601 b(got)g(y)-34 b(our)600 b(Emacs)g(from)g Fu(https://www.gnu.)p
+eop end
+%%Page: 15 20
+TeXDict begin 15 19 bop 2000 -1550 a FC(Chapter)405 b(1:)539
+b(In)-34 b(tro)34 b(duction)33954 b(15)4400 3985 y Fu(org/)415
+b FC(y)-34 b(ou)414 b(migh)-34 b(t)414 b(w)-34 b(an)g(t)416
+b(to)e(c)-34 b(hec)g(k)413 b(its)h(README)g(\014le)f(\()p
+Fu(https://ftp.gnu.org/gnu/emacs/)4400 5446 y(windows/README)p
+FC(\))c(for)c(details.)4400 7301 y(A)424 b(di\013eren)-34
+b(t)424 b(image)f(format)i(can)f(b)34 b(e)423 b(c)-34
+b(hosen)425 b(b)-34 b(y)424 b(setting)g(the)g(v)-67 b(ariable)423
+b Fu(preview-image-type)p FC(.)4400 8762 y(While)496
+b(it)h(is)f(recommended)h(to)g(k)-34 b(eep)496 b(the)h(`)p
+Fu(dvipng)p FC(')h(or)f(`)p Fu(png)p FC(')g(setting,)520
+b(y)-34 b(ou)497 b(can)g(temp)34 b(orarily)4400 10223
+y(select)567 b(a)h(di\013eren)-34 b(t)569 b(format)f(lik)-34
+b(e)568 b(`)p Fu(pnm)p FC(')g(to)g(c)-34 b(hec)g(k)568
+b(if)g(the)h(lac)-34 b(k)567 b(of)i Fr(PNG)f FC(supp)34
+b(ort)569 b(is)f(the)g(only)4400 11684 y(problem)404
+b(with)h(y)-34 b(our)404 b(Emacs)g(installation.)4400
+13539 y(T)-101 b(ry)404 b(adding)h(the)g(line)7600 15394
+y Fu(\(setq)638 b(preview-image-type)643 b('pnm\))4400
+17248 y FC(to)309 b(y)-34 b(our)308 b(init)h(\014le)f(for)g(a)h(quic)
+-34 b(k)308 b(test.)507 b(Y)-101 b(ou)309 b(should)g(remo)-34
+b(v)g(e)308 b(the)h(line)f(after)g(the)h(test)g(again,)327
+b(b)34 b(ecause)4400 18709 y Fr(PNM)404 b FC(\014les)g(tak)-34
+b(e)405 b(a)-34 b(w)g(a)g(y)405 b Fp(v)-67 b(ast)404
+b FC(amoun)-34 b(ts)406 b(of)e(disk)g(space,)g(and)h(th)-34
+b(us)405 b(also)f(of)h(load/sa)-34 b(v)g(e)404 b(time.)3660
+21019 y(W)-101 b(ell,)403 b(that)i(ab)34 b(out)405 b(is)f(all.)538
+b(Ha)-34 b(v)g(e)404 b(fun!)2000 23798 y Fq(1.2.8)818
+b(Customizing)2000 25758 y FC(Most)412 b(of)h(the)f(site-sp)34
+b(eci\014c)411 b(customization)i(should)g(already)e(ha)-34
+b(v)g(e)412 b(happ)34 b(ened)413 b(during)g(con\014guration)2000
+27219 y(of)494 b(A)-34 b(UCT)6802 27480 y(E)7477 27219
+y(X.)807 b(An)-34 b(y)494 b(further)h(customization)f(can)g(b)34
+b(e)494 b(done)g(with)g(customization)h(bu\013ers)f(directly)2000
+28680 y(in)596 b(Emacs.)1114 b(Just)597 b(t)-34 b(yp)34
+b(e)596 b Fs(M-x)405 b(customize-group)410 b(RET)405
+b(AUCTeX)h(RET)597 b FC(to)f(op)34 b(en)597 b(the)f(customization)2000
+30141 y(group)567 b(for)f(A)-34 b(UCT)10949 30402 y(E)11624
+30141 y(X)566 b(or)g(use)g(the)h(men)-34 b(u)567 b(en)-34
+b(tries)566 b(pro)-34 b(vided)566 b(in)h(the)f(mo)34
+b(de)566 b(men)-34 b(us.)1026 b(Editing)566 b(the)2000
+31602 y(\014le)407 b Fu(tex-site.el)k FC(as)c(suggested)g(in)g(former)g
+(v)-34 b(ersions)407 b(of)g(A)-34 b(UCT)32937 31863 y(E)33612
+31602 y(X)407 b(should)h(not)g(b)34 b(e)406 b(done)i(an)-34
+b(ymore)2000 33064 y(b)34 b(ecause)404 b(the)g(installation)h(routine)g
+(will)e(o)-34 b(v)g(erwrite)404 b(those)h(c)-34 b(hanges.)3660
+34979 y(Y)-101 b(ou)448 b(migh)-34 b(t)448 b(c)-34 b(hec)g(k)447
+b(some)g(options)h(with)g(a)f(sp)34 b(ecial)446 b(signi\014cance.)668
+b(They)447 b(are)g(accessible)f(directly)2000 36441 y(b)-34
+b(y)405 b(t)-34 b(yping)405 b Fs(M-x)g(customize-option)k(RET)d
+Fu(<)p Fs(option)p Fu(>)g Fs(RET)p FC(.)42818 39143 y([User)e(Option])
+-48000 b Fm(TeX-macro-global)5200 40605 y FC(Directories)403
+b(con)-34 b(taining)405 b(the)f(site's)g(T)23021 40866
+y(E)23695 40605 y(X)g(st)-34 b(yle)404 b(\014les.)3660
+43308 y(Normally)-101 b(,)368 b(A)-34 b(UCT)12516 43568
+y(E)13191 43308 y(X)360 b(will)f(only)g(allo)-34 b(w)361
+b(y)-34 b(ou)360 b(to)g(complete)g(macros)f(and)i(en)-34
+b(vironmen)g(ts)361 b(whic)-34 b(h)360 b(are)2000 44769
+y(built-in,)466 b(sp)34 b(eci\014ed)454 b(in)f(A)-34
+b(UCT)16442 45030 y(E)17117 44769 y(X)454 b(st)-34 b(yle)453
+b(\014les)h(or)f(de\014ned)i(b)-34 b(y)454 b(y)-34 b(ourself.)687
+b(If)454 b(y)-34 b(ou)454 b(issue)f(the)h Fs(M-x)406
+b(TeX-)2000 46230 y(auto-generate-global)d FC(command)398
+b(after)e(loading)h(A)-34 b(UCT)31062 46491 y(E)31736
+46230 y(X,)398 b(y)-34 b(ou)397 b(will)f(b)34 b(e)396
+b(able)g(to)g(complete)h(on)2000 47691 y(all)523 b(macros)g(a)-34
+b(v)-67 b(ailable)522 b(in)i(the)f(standard)i(st)-34
+b(yle)524 b(\014les)f(used)h(b)-34 b(y)524 b(y)-34 b(our)523
+b(do)34 b(cumen)-34 b(t.)898 b(T)-101 b(o)523 b(do)h(this,)553
+b(y)-34 b(ou)2000 49152 y(m)g(ust)386 b(set)g(this)g(v)-67
+b(ariable)384 b(to)h(a)g(list)g(of)h(directories)e(where)h(the)h
+(standard)h(st)-34 b(yle)385 b(\014les)g(are)g(lo)34
+b(cated.)531 b(The)2000 50613 y(directories)358 b(will)h(b)34
+b(e)359 b(searc)-34 b(hed)359 b(recursiv)-34 b(ely)-101
+b(,)366 b(so)359 b(there)g(is)g(no)h(reason)f(to)g(list)g(sub)34
+b(directories)359 b(explicitly)-101 b(.)2000 52075 y(Automatic)299
+b(con\014guration)g(will)e(already)g(ha)-34 b(v)g(e)298
+b(set)g(the)g(v)-67 b(ariable)296 b(for)i(y)-34 b(ou)298
+b(if)g(it)g(could)g(use)g(the)g(program)2000 53536 y
+Fu(kpsewhich)p FC(.)542 b(In)404 b(this)g(case)g(y)-34
+b(ou)405 b(normally)e(don't)i(ha)-34 b(v)g(e)405 b(to)f(alter)g(an)-34
+b(ything.)2000 56930 y FB(1.3)896 b(Quic)-50 b(k)599
+b(Start)2000 59055 y FC(A)-34 b(UCT)5332 59316 y(E)6007
+59055 y(X)317 b(is)h(a)f(p)34 b(o)-34 b(w)g(erful)319
+b(program)e(o\013ering)h(man)-34 b(y)318 b(features)g(and)g
+(con\014guration)h(options.)511 b(If)317 b(y)-34 b(ou)318
+b(are)2000 60517 y(new)297 b(to)h(A)-34 b(UCT)9091 60778
+y(E)9766 60517 y(X)297 b(this)g(migh)-34 b(t)298 b(b)34
+b(e)297 b(deterren)-34 b(t.)503 b(F)-101 b(ortunately)298
+b(y)-34 b(ou)297 b(do)h(not)f(ha)-34 b(v)g(e)298 b(to)f(learn)g(ev)-34
+b(erything)297 b(at)2000 61978 y(once.)514 b(This)333
+b(Quic)-34 b(k)332 b(Start)h(Guide)g(will)f(giv)-34 b(e)331
+b(y)-34 b(ou)333 b(the)g(kno)-34 b(wledge)332 b(of)h(the)g(most)g(imp)
+34 b(ortan)-34 b(t)333 b(commands)2000 63439 y(and)296
+b(enable)f(y)-34 b(ou)296 b(to)f(prepare)g(y)-34 b(our)296
+b(\014rst)f(L)21108 63282 y Fv(a)21669 63439 y FC(T)22342
+63700 y(E)23016 63439 y(X)g(do)34 b(cumen)-34 b(t)297
+b(with)f(A)-34 b(UCT)35685 63700 y(E)36359 63439 y(X)296
+b(after)f(only)g(a)g(few)h(min)-34 b(utes)2000 64900
+y(of)404 b(reading.)3660 66816 y(In)481 b(this)g(in)-34
+b(tro)34 b(duction,)501 b(w)-34 b(e)480 b(assume)h(that)h(A)-34
+b(UCT)27224 67077 y(E)27899 66816 y(X)480 b(is)g(already)g(installed)h
+(on)g(y)-34 b(our)480 b(system.)768 b(If)2000 68277 y(this)391
+b(is)e(not)i(the)g(case,)h(y)-34 b(ou)390 b(should)i(read)e(the)g
+(\014le)g Fu(INSTALL)i FC(in)e(the)h(base)f(directory)g(of)g(the)g
+(unpac)-34 b(k)g(ed)2000 69738 y(distribution)529 b(tarball.)910
+b(These)528 b(installation)h(instructions)g(are)e(a)-34
+b(v)-67 b(ailable)527 b(in)h(this)h(man)-34 b(ual)528
+b(as)g(w)-34 b(ell,)2000 71200 y(Section)590 b(1.2)g([Installation],)
+635 b(page)590 b(4.)1096 b(W)-101 b(e)589 b(also)h(assume)g(that)h(y)
+-34 b(ou)590 b(are)f(familiar)g(with)i(the)f(w)-34 b(a)g(y)p
+eop end
+%%Page: 16 21
+TeXDict begin 16 20 bop 2000 -1550 a FC(Chapter)405 b(1:)539
+b(In)-34 b(tro)34 b(duction)33954 b(16)2000 3985 y(k)-34
+b(eystrok)g(es)406 b(are)g(written)h(in)f(Emacs)g(man)-34
+b(uals.)547 b(If)406 b(not,)h(ha)-34 b(v)g(e)407 b(a)f(lo)34
+b(ok)406 b(at)h(the)f(Emacs)g(T)-101 b(utorial)407 b(in)f(the)2000
+5446 y(Help)e(men)-34 b(u.)3660 7198 y(If)341 b(A)-34
+b(UCT)8141 7459 y(E)8816 7198 y(X)341 b(is)f(installed)h(in)g(an)-34
+b(y)341 b(other)g(w)-34 b(a)g(y)342 b(than)g(from)f(the)g(Emacs)g(pac)
+-34 b(k)-67 b(age)340 b(manager)h(\()p Fr(ELP)-92 b(A)p
+FC(\),)2000 8659 y(y)-34 b(ou)405 b(migh)-34 b(t)405
+b(still)e(need)i(to)f(activ)-67 b(ate)403 b(it,)h(b)-34
+b(y)405 b(inserting)5200 10411 y Fu(\(load)638 b("auctex.el")i(nil)e(t)
+f(t\))2000 12163 y FC(in)404 b(y)-34 b(our)404 b(user)g(init)h(\014le.)
+12856 11723 y Fl(1)3660 13915 y FC(If)278 b(A)-34 b(UCT)8078
+14176 y(E)8753 13915 y(X)278 b(is)g(installed)g(from)g
+Fr(ELP)-92 b(A)p FC(,)303 b(the)278 b(installation)h(pro)34
+b(cedure)277 b(already)h(cares)f(ab)34 b(out)279 b(loading)2000
+15376 y(A)-34 b(UCT)5332 15637 y(E)6007 15376 y(X)454
+b(correctly)f(and)i(y)-34 b(ou)454 b Fp(m)-34 b(ust)456
+b(not)e FC(ha)-34 b(v)g(e)455 b(the)g(line)e(ab)34 b(o)-34
+b(v)g(e)455 b(in)f(y)-34 b(our)455 b(init)f(\014le.)689
+b(Note)454 b(that)h(this)2000 16837 y(also)404 b(applies)g(if)g(y)-34
+b(ou)405 b(ha)-34 b(v)g(e)404 b(the)h(follo)-34 b(wing)405
+b(line)e(in)i(y)-34 b(our)404 b(init)g(\014le)5200 18589
+y Fu(\(package-initialize\))3660 20341 y FC(In)383 b(order)f(to)h(get)g
+(supp)34 b(ort)384 b(for)e(man)-34 b(y)383 b(of)g(the)g(L)25088
+20184 y Fv(a)25649 20341 y FC(T)26322 20602 y(E)26996
+20341 y(X)f(pac)-34 b(k)-67 b(ages)383 b(y)-34 b(ou)383
+b(will)f(use)h(in)f(y)-34 b(our)383 b(do)34 b(cumen)-34
+b(ts,)2000 21802 y(y)g(ou)405 b(should)g(enable)f(do)34
+b(cumen)-34 b(t)405 b(parsing)f(as)h(w)-34 b(ell,)403
+b(whic)-34 b(h)405 b(can)g(b)34 b(e)403 b(ac)-34 b(hiev)g(ed)405
+b(b)-34 b(y)404 b(putting)5200 23554 y Fu(\(setq)638
+b(TeX-auto-save)j(t\))5200 25015 y(\(setq)d(TeX-parse-self)j(t\))2000
+26767 y FC(in)-34 b(to)366 b(y)-34 b(our)365 b(init)h(\014le.)525
+b(Finally)-101 b(,)372 b(if)365 b(y)-34 b(ou)366 b(often)g(use)g
+Fu(\\include)i FC(or)c Fu(\\input)p FC(,)375 b(y)-34
+b(ou)366 b(should)g(mak)-34 b(e)365 b(A)-34 b(UCT)48416
+27028 y(E)49091 26767 y(X)2000 28229 y(a)g(w)g(are)405
+b(of)f(the)h(m)-34 b(ulti\014le)404 b(do)34 b(cumen)-34
+b(t)405 b(structure.)539 b(Y)-101 b(ou)405 b(can)f(do)h(this)f(b)-34
+b(y)405 b(inserting)5200 29980 y Fu(\(setq-default)641
+b(TeX-master)f(nil\))3660 31732 y FC(in)-34 b(to)532
+b(y)-34 b(our)531 b(init)g(\014le.)918 b(Eac)-34 b(h)531
+b(time)f(y)-34 b(ou)532 b(op)34 b(en)530 b(a)h(new)g(\014le,)562
+b(A)-34 b(UCT)35323 31993 y(E)35998 31732 y(X)531 b(will)f(then)h(ask)g
+(y)-34 b(ou)531 b(for)g(a)2000 33194 y(master)404 b(\014le.)3660
+34945 y(This)475 b(Quic)-34 b(k)474 b(Start)i(Guide)f(co)-34
+b(v)g(ers)474 b(t)-34 b(w)g(o)475 b(main)g(topics:)680
+b(First)474 b(w)-34 b(e)475 b(explain)f(ho)-34 b(w)476
+b(A)-34 b(UCT)45242 35206 y(E)45916 34945 y(X)475 b(helps)2000
+36407 y(y)-34 b(ou)455 b(in)g(editing)g(y)-34 b(our)455
+b(input)h(\014le)e(for)h(T)20576 36668 y(E)21250 36407
+y(X,)467 b(L)23285 36250 y Fv(a)23846 36407 y FC(T)24519
+36668 y(E)25192 36407 y(X,)g(and)456 b(some)e(other)h(formats.)691
+b(Then)456 b(w)-34 b(e)455 b(describ)34 b(e)2000 37868
+y(the)519 b(functions)h(that)f(A)-34 b(UCT)15614 38129
+y(E)16289 37868 y(X)518 b(pro)-34 b(vides)519 b(for)f(pro)34
+b(cessing)519 b(the)f(input)i(\014les)e(with)h(L)41838
+37711 y Fv(a)42399 37868 y FC(T)43072 38129 y(E)43746
+37868 y(X,)547 b(BibT)48081 38129 y(E)48754 37868 y(X,)2000
+39329 y(etc.,)403 b(and)i(for)f(viewing)g(and)h(debugging.)2000
+41903 y Fq(1.3.1)818 b(F)-136 b(unctions)546 b(for)f(editing)g(T)-136
+b(eX)545 b(\014les)2000 44684 y(1.3.1.1)818 b(Making)545
+b(y)-45 b(our)545 b(T)18017 45008 y(E)18887 44684 y(X)g(co)45
+b(de)546 b(more)f(readable)2000 46644 y FC(A)-34 b(UCT)5332
+46905 y(E)6007 46644 y(X)477 b(can)f(do)i(syn)-34 b(tax)477
+b(highligh)-34 b(ting)478 b(of)f(y)-34 b(our)477 b(source)g(co)34
+b(de,)494 b(that)478 b(means)f(commands)h(will)e(get)2000
+48105 y(sp)34 b(ecial)393 b(colors)g(or)g(fon)-34 b(ts.)537
+b(This)394 b(is)g(enabled)g(b)-34 b(y)394 b(default.)536
+b(Y)-101 b(ou)394 b(can)g(disable)g(it)g(lo)34 b(cally)392
+b(b)-34 b(y)394 b(t)-34 b(yping)395 b Fs(M-x)2000 49566
+y(font-lock-mode)409 b(RET)p FC(.)3660 51318 y(A)-34
+b(UCT)6992 51579 y(E)7667 51318 y(X)354 b(will)f(inden)-34
+b(t)355 b(new)g(lines)e(to)h(indicate)g(their)g(syn)-34
+b(tactical)354 b(relationship)g(to)g(the)h(surround-)2000
+52779 y(ing)490 b(text.)796 b(F)-101 b(or)490 b(example,)510
+b(the)491 b(text)f(of)g(a)g Fu(\\footnote)j FC(or)d(text)g(inside)f(of)
+i(an)f(en)-34 b(vironmen)g(t)491 b(will)e(b)34 b(e)2000
+54240 y(inden)-34 b(ted)447 b(relativ)-34 b(e)444 b(to)i(the)g(text)g
+(around)g(it.)663 b(If)446 b(the)g(inden)-34 b(ting)446
+b(has)g(gotten)h(wrong)f(after)g(adding)g(or)2000 55701
+y(deleting)384 b(some)f(c)-34 b(haracters,)387 b(use)d
+Fu(TAB)h FC(to)e(reinden)-34 b(t)385 b(the)f(line,)j
+Fs(M-q)d FC(for)g(the)g(whole)f(paragraph,)389 b(or)383
+b Fs(M-x)2000 57163 y(LaTeX-fill-buffer)410 b(RET)405
+b FC(for)f(the)h(whole)f(bu\013er.)2000 59737 y Fq(1.3.1.2)818
+b(En)-45 b(tering)545 b(sectioning)h(commands)2000 61696
+y FC(Insertion)577 b(of)f(sectioning)h(macros,)619 b(that)578
+b(is)e(`)p Fu(\\chapter)p FC(',)621 b(`)p Fu(\\section)p
+FC(',)h(`)p Fu(\\subsection)p FC(',)g(etc.)576 b(and)2000
+63157 y(accompan)-34 b(ying)443 b(`)p Fu(\\label)p FC(')g(commands)g
+(ma)-34 b(y)442 b(b)34 b(e)442 b(eased)g(b)-34 b(y)443
+b(using)f Fs(C-c)405 b(C-s)p FC(.)654 b(Y)-101 b(ou)442
+b(will)g(b)34 b(e)441 b(ask)-34 b(ed)443 b(for)2000 64618
+y(the)386 b(section)g(lev)-34 b(el.)531 b(As)386 b(nearly)f(ev)-34
+b(erywhere)385 b(in)h(A)-34 b(UCT)27765 64879 y(E)28439
+64618 y(X,)389 b(y)-34 b(ou)387 b(can)e(use)h(the)h Fu(TAB)f
+FC(or)g Fu(SPC)h FC(k)-34 b(ey)385 b(to)h(get)2000 66079
+y(a)477 b(list)h(of)f(a)-34 b(v)-67 b(ailable)477 b(lev)-34
+b(el)476 b(names,)496 b(and)478 b(to)g(auto-complete)g(what)g(y)-34
+b(ou)478 b(started)g(t)-34 b(yping.)759 b(Next,)495 b(y)-34
+b(ou)2000 67541 y(will)377 b(b)34 b(e)378 b(ask)-34 b(ed)378
+b(for)g(the)g(prin)-34 b(ted)379 b(title)e(of)h(the)g(section,)383
+b(and)c(last)f(y)-34 b(ou)378 b(will)f(b)34 b(e)378 b(ask)-34
+b(ed)378 b(for)f(a)h(lab)34 b(el)377 b(to)h(b)34 b(e)2000
+69002 y(asso)g(ciated)404 b(with)h(the)g(section.)p 2000
+69877 16000 45 v 2652 70776 a Fl(1)3660 71200 y Fk(This)341
+b(usually)i(is)e(a)g(\014le)h(in)g(y)-28 b(our)341 b(home)h(directory)f
+(called)i Fj(.emacs)p Fk(,)f(or)e Fj(.emacs.d/init.el)p
+Fk(.)p eop end
+%%Page: 17 22
+TeXDict begin 17 21 bop 2000 -1550 a FC(Chapter)405 b(1:)539
+b(In)-34 b(tro)34 b(duction)33954 b(17)2000 3985 y Fq(1.3.1.3)818
+b(Inserting)546 b(en)-45 b(vironmen)g(ts)2000 5944 y
+FC(Similarly)-101 b(,)477 b(y)-34 b(ou)465 b(can)f(insert)f(en)-34
+b(vironmen)g(ts,)480 b(that)465 b(is)f(`)p Fu(\\begin{})p
+FC('{`)p Fu(\\end{})p FC(')j(pairs:)658 b(T)-34 b(yp)34
+b(e)464 b Fs(C-c)405 b(C-e)p FC(,)2000 7406 y(and)314
+b(select)f(an)h(en)-34 b(vironmen)g(t)314 b(t)-34 b(yp)34
+b(e.)509 b(Again,)331 b(y)-34 b(ou)314 b(can)g(use)f
+Fu(TAB)i FC(or)e Fu(SPC)h FC(to)g(get)g(a)f(list,)331
+b(and)314 b(to)g(complete)2000 8867 y(what)443 b(y)-34
+b(ou)443 b(t)-34 b(yp)34 b(e.)652 b(Actually)-101 b(,)451
+b(the)443 b(list)f(will)f(not)i(only)f(pro)-34 b(vide)442
+b(standard)i(L)37088 8710 y Fv(a)37649 8867 y FC(T)38322
+9128 y(E)38995 8867 y(X)e(en)-34 b(vironmen)g(ts,)453
+b(but)2000 10328 y(also)498 b(tak)-34 b(e)498 b(y)-34
+b(our)498 b(`)p Fu(\\documentclass)p FC(')k(and)c(`)p
+Fu(\\usepackage)p FC(')j(commands)e(in)-34 b(to)499 b(accoun)-34
+b(t)498 b(if)g(y)-34 b(ou)498 b(ha)-34 b(v)g(e)2000 11789
+y(parsing)573 b(enabled)g(b)-34 b(y)573 b(setting)h Fu(TeX-parse-self)j
+FC(to)c Fu(t)p FC(.)1045 b(If)572 b(y)-34 b(ou)574 b(use)e(a)h(couple)g
+(of)g(en)-34 b(vironmen)g(ts)2000 13250 y(frequen)g(tly)-101
+b(,)438 b(y)-34 b(ou)432 b(can)f(use)g(the)h Fu(up)g
+FC(and)g Fu(down)h FC(arro)-34 b(w)431 b(k)-34 b(eys)431
+b(\(or)g Fs(M-p)i FC(and)f Fs(M-n)p FC(\))g(in)f(the)h(minibu\013er)g
+(to)2000 14711 y(get)404 b(bac)-34 b(k)404 b(to)h(the)g(previously)e
+(inserted)h(commands.)3660 16431 y(Some)425 b(en)-34
+b(vironmen)g(ts)425 b(need)f(additional)h(argumen)-34
+b(ts.)600 b(Often,)429 b(A)-34 b(UCT)36504 16692 y(E)37179
+16431 y(X)424 b(kno)-34 b(ws)425 b(ab)34 b(out)425 b(this)g(and)2000
+17893 y(asks)404 b(y)-34 b(ou)405 b(to)f(en)-34 b(ter)404
+b(a)h(v)-67 b(alue.)2000 20403 y Fq(1.3.1.4)818 b(Inserting)546
+b(macros)2000 22362 y Fs(C-c)405 b(C-m)p FC(,)441 b(or)432
+b(simply)h Fs(C-c)405 b(RET)434 b FC(will)e(giv)-34 b(e)433
+b(y)-34 b(ou)433 b(a)g(prompt)h(that)g(asks)e(y)-34 b(ou)434
+b(for)f(a)g(L)40466 22205 y Fv(a)41027 22362 y FC(T)41700
+22623 y(E)42373 22362 y(X)g(macro.)624 b(Y)-101 b(ou)2000
+23823 y(can)522 b(use)g Fu(TAB)h FC(for)f(completion,)552
+b(or)522 b(the)g Fu(up)p FC(/)p Fu(down)i FC(arro)-34
+b(w)522 b(k)-34 b(eys)522 b(\(or)g Fs(M-p)h FC(and)g
+Fs(M-n)p FC(\))g(to)g(bro)-34 b(wse)522 b(the)2000 25284
+y(command)347 b(history)-101 b(.)519 b(In)346 b(man)-34
+b(y)347 b(cases,)357 b(A)-34 b(UCT)23264 25545 y(E)23939
+25284 y(X)346 b(kno)-34 b(ws)347 b(whic)-34 b(h)347 b(argumen)-34
+b(ts)347 b(a)f(macro)g(needs)h(and)f(will)2000 26746
+y(ask)361 b(y)-34 b(ou)363 b(for)e(that.)526 b(It)361
+b(ev)-34 b(en)362 b(can)g(di\013eren)-34 b(tiate)361
+b(b)34 b(et)-34 b(w)g(een)363 b(mandatory)g(and)f(optional)g(argumen)
+-34 b(ts|for)2000 28207 y(details,)404 b(see)f(Section)i(2.6)f
+([Completion],)g(page)g(31.)3660 29927 y(An)326 b(additional)g(help)g
+(for)f(inserting)h(macros)f(is)g(pro)-34 b(vided)326
+b(b)-34 b(y)325 b(the)h(p)34 b(ossibilit)-34 b(y)325
+b(to)h(complete)f(macros)2000 31388 y(righ)-34 b(t)376
+b(in)f(the)g(bu\013er.)529 b(With)376 b(p)34 b(oin)-34
+b(t)376 b(at)f(the)h(end)f(of)h(a)f(partially)f(written)i(macro,)k(y)
+-34 b(ou)376 b(can)f(complete)g(it)2000 32849 y(b)-34
+b(y)405 b(t)-34 b(yping)405 b Fs(M-TAB)p FC(.)2000 35359
+y Fq(1.3.1.5)818 b(Changing)545 b(the)h(fon)-45 b(t)2000
+37318 y FC(A)-34 b(UCT)5332 37579 y(E)6007 37318 y(X)528
+b(pro)-34 b(vides)528 b(con)-34 b(v)g(enien)g(t)529 b(k)-34
+b(eyb)34 b(oard)528 b(shortcuts)h(for)f(inserting)g(macros)g(whic)-34
+b(h)529 b(sp)34 b(ecify)527 b(the)2000 38780 y(fon)-34
+b(t)407 b(to)g(b)34 b(e)405 b(used)i(for)f(t)-34 b(yp)34
+b(esetting)407 b(certain)f(parts)g(of)g(the)h(text.)544
+b(They)406 b(start)h(with)g Fs(C-c)e(C-f)p FC(,)i(and)f(the)2000
+40241 y(last)e Fs(C-)h FC(com)-34 b(bination)405 b(tells)f(A)-34
+b(UCT)18773 40502 y(E)19448 40241 y(X)404 b(whic)-34
+b(h)405 b(fon)-34 b(t)405 b(y)-34 b(ou)405 b(w)-34 b(an)g(t:)2000
+42219 y Fs(C-c)405 b(C-f)g(C-b)8400 43681 y FC(Insert)f
+Fp(b)34 b(old)404 b(face)g FC(`)p Fu(\\textbf{)p Fx(?)p
+Fu(})p FC(')j(text.)2000 45659 y Fs(C-c)e(C-f)g(C-i)8400
+47121 y FC(Insert)f Fo(italics)501 b FC(`)p Fu(\\textit{)p
+Fx(?)p Fu(})p FC(')407 b(text.)2000 49099 y Fs(C-c)e(C-f)g(C-e)8400
+50560 y FC(Insert)f Fo(emphasize)-62 b(d)526 b FC(`)p
+Fu(\\emph{)p Fx(?)p Fu(})p FC(')406 b(text.)2000 52539
+y Fs(C-c)f(C-f)g(C-s)8400 54000 y FC(Insert)f Ft(slan)-34
+b(ted)453 b FC(`)p Fu(\\textsl{)p Fx(?)p Fu(})p FC(')407
+b(text.)2000 55979 y Fs(C-c)e(C-f)g(C-r)8400 57440 y
+FC(Insert)f(roman)h(`)p Fu(\\textrm{)p Fx(?)p Fu(})p
+FC(')h(text.)2000 59419 y Fs(C-c)f(C-f)g(C-f)8400 60880
+y FC(Insert)f Fw(sans)g(serif)g FC(`)p Fu(\\textsf{)p
+Fx(?)p Fu(})p FC(')i(text.)2000 62859 y Fs(C-c)f(C-f)g(C-t)8400
+64320 y FC(Insert)f Fu(typewriter)k FC(`)p Fu(\\texttt{)p
+Fx(?)p Fu(})p FC(')e(text.)2000 66299 y Fs(C-c)f(C-f)g(C-c)8400
+67760 y FC(Insert)f Fv(small)459 b(caps)405 b FC(`)p
+Fu(\\textsc{)p Fx(?)p Fu(})p FC(')h(text.)2000 69738
+y Fs(C-c)f(C-f)g(C-d)8400 71200 y FC(Delete)e(the)i(innermost)f(fon)-34
+b(t)406 b(sp)34 b(eci\014cation)404 b(con)-34 b(taining)405
+b(p)34 b(oin)-34 b(t.)p eop end
+%%Page: 18 23
+TeXDict begin 18 22 bop 2000 -1550 a FC(Chapter)405 b(1:)539
+b(In)-34 b(tro)34 b(duction)33954 b(18)3660 3985 y(If)442
+b(y)-34 b(ou)442 b(w)-34 b(an)g(t)444 b(to)e(c)-34 b(hange)442
+b(fon)-34 b(t)443 b(attributes)g(of)f(existing)f(text,)451
+b(mark)441 b(it)h(as)g(an)g(activ)-34 b(e)441 b(region,)450
+b(and)2000 5446 y(then)518 b(in)-34 b(v)g(ok)g(e)518
+b(the)f(commands.)879 b(If)517 b(no)h(region)f(is)g(selected,)544
+b(the)518 b(command)g(will)f(b)34 b(e)517 b(inserted)g(with)2000
+6907 y(empt)-34 b(y)405 b(braces,)e(and)i(y)-34 b(ou)405
+b(can)f(start)h(t)-34 b(yping)405 b(the)f(c)-34 b(hanged)405
+b(text.)3660 8808 y(Most)480 b(of)g(those)g(commands)g(will)e(also)i(w)
+-34 b(ork)479 b(in)g(math)h(mo)34 b(de,)498 b(but)480
+b(then)g(macros)f(lik)-34 b(e)479 b Fu(\\mathbf)2000
+10269 y FC(will)404 b(b)34 b(e)403 b(inserted.)2000 13034
+y Fq(1.3.1.6)818 b(Other)545 b(useful)h(features)2000
+14993 y FC(A)-34 b(UCT)5332 15254 y(E)6007 14993 y(X)297
+b(also)g(tries)g(to)h(help)g(y)-34 b(ou)298 b(when)g(inserting)f(the)h
+(righ)-34 b(t)298 b(\\quote")g(signs)g(for)f(y)-34 b(our)298
+b(language,)319 b(dol-)2000 16454 y(lar)300 b(signs)i(to)f(t)-34
+b(yp)34 b(eset)301 b(math,)322 b(or)301 b(pairs)g(of)g(braces.)504
+b(It)300 b(o\013ers)h(shortcuts)h(for)f(commen)-34 b(ting)302
+b(out)g(text)f(\()p Fs(C-c)2000 17915 y(;)441 b FC(for)g(the)g(curren)
+-34 b(t)441 b(region)f(or)g Fs(C-c)405 b(\045)441 b FC(for)g(the)g
+(paragraph)g(y)-34 b(ou)441 b(are)f(in\).)649 b(The)441
+b(same)f(k)-34 b(eystrok)g(es)440 b(will)2000 19377 y(remo)-34
+b(v)g(e)319 b(the)g(\045)g(signs,)336 b(if)319 b(the)h(region)e(or)h
+(paragraph)h(is)f(commen)-34 b(ted)319 b(out)h(y)-34
+b(et.)510 b(With)320 b Fu(TeX-fold-mode)p FC(,)2000 20838
+y(y)-34 b(ou)467 b(can)g(hide)f(certain)g(parts)h(\(lik)-34
+b(e)466 b(fo)34 b(otnotes,)483 b(references)466 b(etc.\))g(that)i(y)-34
+b(ou)467 b(do)g(not)g(edit)f(curren)-34 b(tly)-101 b(.)2000
+22299 y(Supp)34 b(ort)390 b(for)e(Emacs')g(outline)h(mo)34
+b(de)388 b(is)g(pro)-34 b(vided)389 b(as)g(w)-34 b(ell.)533
+b(And)389 b(there's)f(more,)j(but)e(this)g(is)f(b)34
+b(ey)-34 b(ond)2000 23760 y(the)405 b(scop)34 b(e)403
+b(of)i(this)f(Quic)-34 b(k)404 b(Start)h(Guide.)2000
+26524 y Fq(1.3.2)818 b(Creating)546 b(and)g(viewing)e(output,)i
+(debugging)2000 29347 y(1.3.2.1)818 b(One)545 b(Command)g(for)h(L)21697
+29153 y Fn(a)22344 29347 y Fq(T)23209 29670 y(E)24079
+29347 y(X,)f(help)45 b(ers,)545 b(view)-45 b(ers,)543
+b(and)j(prin)-45 b(ting)2000 31306 y FC(If)338 b(y)-34
+b(ou)339 b(ha)-34 b(v)g(e)339 b(t)-34 b(yp)34 b(ed)339
+b(some)g(text)f(and)h(w)-34 b(an)g(t)341 b(to)e(run)f(L)25951
+31149 y Fv(a)26512 31306 y FC(T)27185 31567 y(E)27859
+31306 y(X)h(\(or)f(T)31670 31567 y(E)32344 31306 y(X,)351
+b(or)338 b(other)h(programs|see)f(b)34 b(elo)-34 b(w\))2000
+32768 y(on)504 b(it,)527 b(t)-34 b(yp)34 b(e)504 b Fs(C-c)405
+b(C-c)p FC(.)836 b(If)504 b(applicable,)527 b(y)-34 b(ou)504
+b(will)e(b)34 b(e)503 b(ask)-34 b(ed)504 b(whether)g(y)-34
+b(ou)503 b(w)-34 b(an)g(t)506 b(to)d(sa)-34 b(v)g(e)503
+b(c)-34 b(hanges,)2000 34229 y(and)418 b(whic)-34 b(h)418
+b(program)g(y)-34 b(ou)418 b(w)-34 b(an)g(t)419 b(to)f(in)-34
+b(v)g(ok)g(e.)578 b(In)418 b(man)-34 b(y)418 b(cases,)i(the)d(c)-34
+b(hoice)417 b(that)i(A)-34 b(UCT)43669 34490 y(E)44344
+34229 y(X)417 b(suggests)2000 35690 y(will)389 b(b)34
+b(e)390 b(just)g(what)h(y)-34 b(ou)390 b(w)-34 b(an)g(t:)534
+b(\014rst)390 b Fu(latex)p FC(,)k(then)c(a)g(view)-34
+b(er.)533 b(If)390 b(a)f Fu(latex)j FC(run)e(pro)34 b(duces)390
+b(or)f(c)-34 b(hanges)2000 37151 y(input)446 b(\014les)f(for)f
+Fu(makeindex)p FC(,)458 b(the)445 b(next)g(suggestion)h(will)e(b)34
+b(e)445 b(to)g(run)g(that)h(program,)455 b(and)445 b(A)-34
+b(UCT)48416 37412 y(E)49091 37151 y(X)2000 38612 y(kno)g(ws)405
+b(that)g(y)-34 b(ou)405 b(need)f(to)h(run)f Fu(latex)i
+FC(again)e(afterw)-34 b(ards|the)406 b(same)f(holds)f(for)g(BibT)43353
+38873 y(E)44027 38612 y(X.)3660 40513 y(When)563 b(no)f(pro)34
+b(cessor)561 b(in)-34 b(v)g(o)34 b(cation)562 b(is)g(necessary)f(an)-34
+b(ymore,)601 b(A)-34 b(UCT)36365 40774 y(E)37040 40513
+y(X)561 b(will)h(suggest)g(to)h(run)f(a)2000 41974 y(view)-34
+b(er,)403 b(or)h(y)-34 b(ou)405 b(can)f(c)-34 b(hose)404
+b(to)h(create)e(a)h(P)-34 b(ostScript)405 b(\014le)f(using)h
+Fu(dvips)p FC(,)g(or)f(to)h(directly)e(prin)-34 b(t)405
+b(it.)3660 43875 y(Actually)-101 b(,)403 b(there)f(is)h(another)g
+(command)g(whic)-34 b(h)404 b(comes)e(in)g(handy)i(to)f(compile)f(do)34
+b(cumen)-34 b(ts:)539 b(t)-34 b(yp)34 b(e)2000 45336
+y Fs(C-c)405 b(C-a)j FC(\()p Fu(TeX-command-run-all)p
+FC(\))415 b(and)408 b(A)-34 b(UCT)25762 45597 y(E)26437
+45336 y(X)407 b(will)f(compile)h(the)h(do)34 b(cumen)-34
+b(t)408 b(for)f(y)-34 b(ou)408 b(un)-34 b(til)408 b(it)2000
+46798 y(is)328 b(ready)g(and)h(then)g(run)f(the)h(view)-34
+b(er.)512 b(This)329 b(is)f(the)g(same)g(as)h(issuing)f(rep)34
+b(eatedly)327 b Fs(C-c)406 b(C-c)329 b FC(and)g(letting)2000
+48259 y(A)-34 b(UCT)5332 48520 y(E)6007 48259 y(X)404
+b(guess)g(the)h(next)f(command)h(to)f(run.)3660 50160
+y(A)-34 b(t)554 b(this)g(place,)590 b(a)553 b(w)-34 b(arning)555
+b(needs)e(to)h(b)34 b(e)553 b(giv)-34 b(en:)837 b(First,)590
+b(although)555 b(A)-34 b(UCT)40450 50420 y(E)41125 50160
+y(X)553 b(is)g(really)f(go)34 b(o)g(d)2000 51621 y(in)454
+b(detecting)g(the)h(standard)g(situations)g(when)g(an)f(additional)h
+Fu(latex)h FC(run)e(is)g(necessary)-101 b(,)465 b(it)454
+b(cannot)2000 53082 y(detect)464 b(it)f(alw)-34 b(a)g(ys.)716
+b(Second,)479 b(the)464 b(creation)f(of)g(P)-34 b(ostScript)465
+b(\014les)e(or)g(direct)g(prin)-34 b(ting)464 b(curren)-34
+b(tly)463 b(only)2000 54543 y(w)-34 b(orks)404 b(when)h(y)-34
+b(our)405 b(output)h(\014le)e(is)g(a)g Fr(D)-31 b(VI)403
+b FC(\014le,)h(not)h(a)f Fr(PDF)g FC(\014le.)3660 56444
+y(Ah,)h(y)-34 b(ou)404 b(didn't)h(kno)-34 b(w)405 b(y)-34
+b(ou)405 b(can)f(do)h(b)34 b(oth?)540 b(That)405 b(brings)f(us)h(to)f
+(the)h(next)f(topic.)2000 59208 y Fq(1.3.2.2)818 b(Cho)45
+b(osing)546 b(an)g(output)g(format)2000 61167 y FC(F)-101
+b(rom)426 b(a)f(L)6560 61010 y Fv(a)7121 61167 y FC(T)7794
+61428 y(E)8468 61167 y(X)h(\014le,)k(y)-34 b(ou)426 b(can)g(pro)34
+b(duce)426 b Fr(D)-31 b(VI)425 b FC(output,)433 b(or)425
+b(a)h Fr(PDF)f FC(\014le)g(directly)g Fo(via)518 b Fu(pdflatex)p
+FC(.)605 b(Y)-101 b(ou)2000 62629 y(can)430 b(switc)-34
+b(h)431 b(on)g(source)e(sp)34 b(ecials)429 b(for)i(easier)e(na)-34
+b(vigation)430 b(in)g(the)h(output)h(\014le,)k(or)429
+b(tell)h Fu(latex)i FC(to)e(stop)2000 64090 y(after)521
+b(an)g(error)e(\(usually)i Fu(--noninteractive)526 b
+FC(is)520 b(used,)550 b(to)521 b(allo)-34 b(w)521 b(y)-34
+b(ou)520 b(to)h(detect)g(all)f(errors)f(in)i(a)2000 65551
+y(single)404 b(run\).)3660 67452 y(These)h(options)g(are)f(con)-34
+b(trolled)404 b(b)-34 b(y)404 b(toggles,)g(the)h(k)-34
+b(eystrok)g(es)404 b(should)h(b)34 b(e)403 b(easy)h(to)h(memorize:)2000
+69738 y Fs(C-c)g(C-t)g(C-p)8400 71200 y FC(This)g(command)g(toggles)f
+(b)34 b(et)-34 b(w)g(een)405 b Fr(D)-31 b(VI)404 b FC(and)h
+Fr(PDF)e FC(output)p eop end
+%%Page: 19 24
+TeXDict begin 19 23 bop 2000 -1550 a FC(Chapter)405 b(1:)539
+b(In)-34 b(tro)34 b(duction)33954 b(19)2000 3985 y Fs(C-c)405
+b(C-t)g(C-i)8400 5446 y FC(toggles)f(in)-34 b(teractiv)g(e)404
+b(mo)34 b(de)2000 7572 y Fs(C-c)405 b(C-t)g(C-s)8400
+9033 y FC(toggles)f(SyncT)15645 9294 y(E)16319 9033 y(X)g(\(or)h
+(source)e(sp)34 b(ecials\))404 b(supp)34 b(ort)2000 11158
+y Fs(C-c)405 b(C-t)g(C-o)8400 12619 y FC(toggles)f(usage)h(of)f
+(Omega/lam)-34 b(b)34 b(da.)3660 14745 y(There)445 b(is)g(also)g
+(another)h(p)34 b(ossibilit)-34 b(y:)620 b(compile)444
+b(the)h(do)34 b(cumen)-34 b(t)446 b(with)g Fu(tex)g FC(\(or)f
+Fu(latex)p FC(\))i(and)f(then)2000 16206 y(con)-34 b(v)g(ert)354
+b(the)g(resulting)f Fr(D)-31 b(VI)353 b FC(\014le)g(to)h
+Fr(PDF)f FC(using)h Fu(dvips)p FC({)p Fu(ps2pdf)j FC(sequence)c(or)g
+Fu(dvipdfmx)j FC(command.)2000 17667 y(If)410 b(y)-34
+b(ou)411 b(w)-34 b(an)g(t)412 b(to)e(go)g(b)-34 b(y)411
+b(this)f(route,)i(customize)e Fu(TeX-PDF-from-DVI)415
+b FC(option.)558 b(Then)411 b(A)-34 b(UCT)46121 17928
+y(E)46795 17667 y(X)410 b(will)2000 19128 y(suggest)563
+b(y)-34 b(ou)562 b(to)h(run)f(the)g(appropriate)h(command)g(when)g(y)
+-34 b(ou)562 b(t)-34 b(yp)34 b(e)562 b Fs(C-C)405 b(C-c)p
+FC(.)1013 b(F)-101 b(or)562 b(details,)601 b(see)2000
+20589 y(Section)404 b(4.1.3)g([Pro)34 b(cessor)403 b(Options],)h(page)g
+(57.)2000 23246 y Fq(1.3.2.3)818 b(Debugging)545 b(L)16031
+23052 y Fn(a)16678 23246 y Fq(T)17543 23569 y(E)18413
+23246 y(X)2000 25205 y FC(When)286 b(A)-34 b(UCT)8749
+25466 y(E)9423 25205 y(X)286 b(runs)g(a)f(program,)309
+b(it)286 b(creates)e(an)i(output)i(bu\013er)d(in)h(whic)-34
+b(h)286 b(it)f(displa)-34 b(ys)286 b(the)g(output)i(of)2000
+26667 y(the)k(command.)501 b(If)291 b(there)h(is)e(a)i(syn)-34
+b(tactical)291 b(error)f(in)h(y)-34 b(our)292 b(\014le,)313
+b Fu(latex)293 b FC(will)e(not)h(complete)e(successfully)-101
+b(.)2000 28128 y(A)-34 b(UCT)5332 28389 y(E)6007 28128
+y(X)442 b(will)h(tell)f(y)-34 b(ou)443 b(that,)453 b(and)444
+b(y)-34 b(ou)443 b(can)g(get)g(to)g(the)g(place)f(where)h(the)g
+(\014rst)h(error)d(o)34 b(ccured)443 b(b)-34 b(y)2000
+29589 y(pressing)488 b Fs(C-c)406 b(`)488 b FC(\(the)h(last)g(c)-34
+b(haracter)488 b(is)g(a)g(bac)-34 b(ktic)g(k\).)792 b(The)488
+b(view)g(will)g(b)34 b(e)488 b(split)g(in)h(t)-34 b(w)g(o)489
+b(windo)-34 b(ws,)2000 31050 y(the)444 b(output)h(will)d(b)34
+b(e)443 b(displa)-34 b(y)g(ed)444 b(in)g(the)f(lo)-34
+b(w)g(er)444 b(bu\013er,)453 b(and)444 b(b)34 b(oth)444
+b(bu\013ers)f(will)g(b)34 b(e)443 b(cen)-34 b(tered)443
+b(around)2000 32511 y(the)437 b(place)g(where)g(the)g(error)f(o)34
+b(curred.)637 b(Y)-101 b(ou)437 b(can)g(then)h(try)f(to)g(\014x)g(it)g
+(in)g(the)h(do)34 b(cumen)-34 b(t)438 b(bu\013er,)445
+b(and)2000 33973 y(use)499 b(the)h(same)e(k)-34 b(eystrok)g(es)499
+b(to)g(get)h(to)f(the)g(next)g(error.)822 b(This)500
+b(pro)34 b(cedure)499 b(ma)-34 b(y)499 b(b)34 b(e)498
+b(rep)34 b(eated)499 b(un)-34 b(til)2000 35434 y(all)427
+b(errors)f(ha)-34 b(v)g(e)427 b(b)34 b(een)428 b(dealt)f(with.)608
+b(By)427 b(pressing)g Fs(C-c)405 b(C-w)428 b FC(\()p
+Fu(TeX-toggle-debug-boxes)p FC(\))436 b(y)-34 b(ou)428
+b(can)2000 36895 y(toggle)481 b(whether)i(A)-34 b(UCT)13706
+37156 y(E)14380 36895 y(X)482 b(should)h(notify)f(y)-34
+b(ou)482 b(of)g(o)-34 b(v)g(erfull)481 b(and)i(underfull)f(b)34
+b(o)-34 b(xes)481 b(in)h(addition)h(to)2000 38356 y(regular)403
+b(errors.)3660 40149 y(Issue)355 b Fs(M-x)405 b(TeX-error-overview)410
+b(RET)355 b FC(to)g(see)e(a)i(nicely)e(formatted)i(list)f(of)g(all)g
+(errors)f(and)i(w)-34 b(arn-)2000 41611 y(ings)404 b(rep)34
+b(orted)404 b(b)-34 b(y)405 b(the)f(compiler.)3660 43404
+y(If)437 b(a)f(command)h(got)f(stuc)-34 b(k)437 b(in)f(a)h(seemingly)e
+(in\014nite)i(lo)34 b(op,)444 b(or)436 b(y)-34 b(ou)436
+b(w)-34 b(an)g(t)438 b(to)f(stop)g(execution)f(for)2000
+44865 y(other)492 b(reasons,)514 b(y)-34 b(ou)493 b(can)f(use)g
+Fs(C-c)405 b(C-k)493 b FC(\(for)g(\\kill"\).)801 b(Similar)492
+b(to)g Fs(C-l)p FC(,)515 b(whic)-34 b(h)493 b(cen)-34
+b(ters)492 b(the)h(bu\013er)2000 46326 y(y)-34 b(ou)397
+b(are)f(in)h(around)g(y)-34 b(our)397 b(curren)-34 b(t)397
+b(p)34 b(osition,)398 b Fs(C-c)405 b(C-l)398 b FC(cen)-34
+b(ters)397 b(the)g(output)h(bu\013er)f(so)g(that)h(the)f(last)2000
+47787 y(lines)404 b(added)h(at)f(the)h(b)34 b(ottom)405
+b(b)34 b(ecome)403 b(visible.)2000 50444 y Fq(1.3.2.4)818
+b(Running)545 b(L)14524 50250 y Fn(a)15171 50444 y Fq(T)16036
+50767 y(E)16906 50444 y(X)g(on)h(parts)h(of)e(y)-45 b(our)545
+b(do)45 b(cumen)-45 b(t)2000 52403 y FC(If)430 b(y)-34
+b(ou)431 b(w)-34 b(an)g(t)432 b(to)f(c)-34 b(hec)g(k)430
+b(ho)-34 b(w)432 b(some)e(part)h(of)g(y)-34 b(our)430
+b(text)h(lo)34 b(oks)429 b(lik)-34 b(e,)436 b(and)431
+b(do)g(not)g(w)-34 b(an)g(t)432 b(to)f(w)-34 b(ait)431
+b(un)-34 b(til)2000 53865 y(the)344 b(whole)h(do)34 b(cumen)-34
+b(t)345 b(has)f(b)34 b(een)344 b(t)-34 b(yp)34 b(eset,)356
+b(then)345 b(mark)f(it)g(as)g(a)g(region)g(and)h(use)f
+Fs(C-c)405 b(C-r)p FC(.)519 b(It)345 b(b)34 b(eha)-34
+b(v)g(es)2000 55326 y(just)405 b(lik)-34 b(e)404 b Fs(C-c)h(C-c)p
+FC(,)f(but)i(it)e(only)g(uses)g(the)h(do)34 b(cumen)-34
+b(t)405 b(pream)-34 b(ble)404 b(and)h(the)g(region)e(y)-34
+b(ou)405 b(mark)-34 b(ed.)3660 57119 y(If)361 b(y)-34
+b(ou)362 b(are)e(using)i Fu(\\include)h FC(or)e Fu(\\input)i
+FC(to)e(structure)h(y)-34 b(our)361 b(do)34 b(cumen)-34
+b(t,)370 b(try)361 b Fs(C-c)405 b(C-b)362 b FC(while)e(y)-34
+b(ou)2000 58580 y(are)389 b(editing)i(one)f(of)g(the)g(included)h
+(\014les.)533 b(It)390 b(will)f(run)i Fu(latex)h FC(only)d(on)i(the)f
+(curren)-34 b(t)390 b(bu\013er,)j(using)d(the)2000 60042
+y(pream)-34 b(ble)404 b(from)h(the)f(master)g(\014le.)p
+eop end
+%%Page: 20 25
+TeXDict begin 20 24 bop 48788 -1550 a FC(20)2000 3985
+y Fz(2)1076 b(Editing)716 b(the)g(Do)60 b(cumen)-60 b(t)718
+b(Source)2000 7405 y FC(The)533 b(most)g(commonly)f(used)h
+(commands/macros)g(of)g(A)-34 b(UCT)31856 7666 y(E)32530
+7405 y(X)533 b(are)f(those)h(whic)-34 b(h)533 b(simply)f(insert)2000
+8866 y(templates)363 b(for)h(often)f(used)h(T)15724 9127
+y(E)16398 8866 y(X,)370 b(L)18336 8709 y Fv(a)18897 8866
+y FC(T)19570 9127 y(E)20244 8866 y(X,)h(or)363 b(ConT)26132
+9127 y(E)26806 8866 y(Xt)h(constructs,)371 b(lik)-34
+b(e)363 b(fon)-34 b(t)364 b(c)-34 b(hanges,)372 b(handling)364
+b(of)2000 10327 y(en)-34 b(vironmen)g(ts,)478 b(etc.)714
+b(These)463 b(features)g(are)f(v)-34 b(ery)462 b(simple,)476
+b(and)464 b(easy)e(to)h(learn,)476 b(and)464 b(help)e(y)-34
+b(ou)463 b(a)-34 b(v)g(oid)2000 11788 y(mistak)g(es)404
+b(lik)-34 b(e)404 b(mismatc)-34 b(hed)405 b(braces,)e(or)h(`)p
+Fu(\\begin{})p FC('-`)p Fu(\\end{})p FC(')k(pairs.)3660
+13681 y(Apart)443 b(from)f(that)g(this)g(c)-34 b(hapter)443
+b(con)-34 b(tains)442 b(a)g(description)g(of)g(some)g(features)g(for)f
+(en)-34 b(tering)442 b(more)2000 15142 y(sp)34 b(ecialized)303
+b(sorts)j(of)f(text,)324 b(for)305 b(formatting)h(the)f(source)g(b)-34
+b(y)305 b(inden)-34 b(ting)306 b(and)g(\014lling)f(and)g(for)g(na)-34
+b(vigating)2000 16603 y(through)405 b(the)g(do)34 b(cumen)-34
+b(t.)2000 19962 y FB(2.1)896 b(Insertion)599 b(of)f(Quotes,)g(Dollars,)
+h(and)f(Braces)2000 22951 y Fq(Quotation)547 b(Marks)2000
+24910 y FC(In)402 b(T)4186 25171 y(E)4860 24910 y(X,)f(literal)g
+(double)h(quotes)g(`)p Fu("like)k(this")p FC(')d(are)e(seldom)h(used,)g
+(instead)h(t)-34 b(w)g(o)403 b(single)e(quotes)h(are)2000
+26372 y(used)371 b(`)p Fu(``like)406 b(this'')p FC('.)529
+b(T)-101 b(o)371 b(help)g(y)-34 b(ou)371 b(insert)f(these)h(e\016cien)
+-34 b(tly)-101 b(,)376 b(A)-34 b(UCT)36321 26633 y(E)36996
+26372 y(X)371 b(allo)-34 b(ws)371 b(y)-34 b(ou)371 b(to)g(con)-34
+b(tin)g(ue)2000 27833 y(to)404 b(press)h Fu(")f FC(to)h(insert)f(t)-34
+b(w)g(o)405 b(single)f(quotes.)539 b(T)-101 b(o)404 b(get)g(a)h
+(literal)e(double)h(quote,)g(press)h Fu(")f FC(t)-34
+b(wice.)43872 30489 y([Command])-47999 b Fm(TeX-insert-quote)612
+b Fi(count)5200 31950 y FC(\()p Fu(")p FC(\))405 b(Insert)f(the)h
+(appropriate)f(quote)h(marks)f(for)g(T)28762 32211 y(E)29436
+31950 y(X.)5200 33843 y(Inserts)c(the)g(v)-67 b(alue)399
+b(of)i Fu(TeX-open-quote)j FC(\(normally)c(`)p Fu(``)p
+FC('\))g(or)g Fu(TeX-close-quote)405 b FC(\(normally)5200
+35304 y(`)p Fu('')p FC('\))f(dep)34 b(ending)405 b(on)g(the)f(con)-34
+b(text.)540 b(With)404 b(pre\014x)g(argumen)-34 b(t,)405
+b(alw)-34 b(a)g(ys)405 b(inserts)f(`)p Fu(")p FC(')g(c)-34
+b(haracters.)42818 37960 y([User)404 b(Option])-48000
+b Fm(TeX-open-quote)5200 39421 y FC(String)606 b(inserted)f(b)-34
+b(y)606 b(t)-34 b(yping)606 b Fu(")g FC(to)g(op)34 b(en)605
+b(a)g(quotation.)1144 b(\(See)605 b(Section)h(5.4.1)f([Europ)34
+b(ean],)5200 40882 y(page)404 b(73,)g(for)g(language-sp)34
+b(eci\014c)404 b(quotation)i(mark)d(insertion.\))42818
+43538 y([User)h(Option])-48000 b Fm(TeX-close-quote)5200
+45000 y FC(String)608 b(inserted)f(b)-34 b(y)608 b(t)-34
+b(yping)608 b Fu(")g FC(to)f(close)g(a)g(quotation.)1149
+b(\(See)607 b(Section)h(5.4.1)f([Europ)34 b(ean],)5200
+46461 y(page)404 b(73,)g(for)g(language-sp)34 b(eci\014c)404
+b(quotation)i(mark)d(insertion.\))42818 49117 y([User)h(Option])-48000
+b Fm(TeX-quote-after-quote)5200 50578 y FC(Determines)286
+b(the)h(b)34 b(eha)-34 b(vior)287 b(of)g Fu(")p FC(.)500
+b(If)286 b(it)h(is)g(non-nil,)310 b(t)-34 b(yping)288
+b Fu(")f FC(will)f(insert)h(a)g(literal)f(double)h(quote.)5200
+52039 y(The)312 b(resp)34 b(ectiv)-34 b(e)311 b(v)-67
+b(alues)311 b(of)h Fu(TeX-open-quote)317 b FC(and)312
+b Fu(TeX-close-quote)317 b FC(will)311 b(b)34 b(e)312
+b(inserted)g(after)5200 53500 y(t)-34 b(yping)405 b Fu(")f
+FC(once)g(again.)3660 56156 y(The)467 b(`)p Fu(babel)p
+FC(')g(pac)-34 b(k)-67 b(age)466 b(pro)-34 b(vides)467
+b(sp)34 b(ecial)465 b(supp)34 b(ort)467 b(for)f(the)h(requiremen)-34
+b(ts)466 b(of)h(t)-34 b(yp)34 b(esetting)467 b(quo-)2000
+57618 y(tation)522 b(marks)e(in)h(man)-34 b(y)521 b(di\013eren)-34
+b(t)521 b(languages.)889 b(If)521 b(y)-34 b(ou)521 b(use)g(this)h(pac)
+-34 b(k)-67 b(age,)549 b(either)520 b(directly)g(or)h(b)-34
+b(y)2000 59079 y(loading)471 b(a)f(language-sp)34 b(eci\014c)470
+b(st)-34 b(yle)471 b(\014le,)486 b(y)-34 b(ou)471 b(should)h(also)e
+(use)h(the)f(sp)34 b(ecial)470 b(commands)h(for)g(quote)2000
+60540 y(insertion)363 b(instead)g(of)g(the)g(standard)h(quotes)f(sho)
+-34 b(wn)364 b(ab)34 b(o)-34 b(v)g(e.)525 b(A)-34 b(UCT)34125
+60801 y(E)34800 60540 y(X)363 b(is)f(able)g(to)h(recognize)f(sev)-34
+b(eral)2000 62001 y(of)298 b(these)g(languages)g(and)h(will)e(c)-34
+b(hange)299 b(quote)e(insertion)h(accordingly)-101 b(.)503
+b(See)297 b(Section)h(5.4.1)g([Europ)34 b(ean],)2000
+63462 y(page)404 b(73,)g(for)g(details)g(ab)34 b(out)406
+b(this)e(feature)h(and)f(ho)-34 b(w)406 b(to)e(con)-34
+b(trol)405 b(it.)3660 65355 y(In)440 b(case)e(y)-34 b(ou)440
+b(are)e(using)i(the)g(`)p Fu(csquotes)p FC(')h(pac)-34
+b(k)-67 b(age,)447 b(y)-34 b(ou)440 b(should)g(customize)f
+Fu(LaTeX-csquotes-)2000 66816 y(open-quote)p FC(,)749
+b Fu(LaTeX-csquotes-close-quote)687 b FC(and)679 b Fu
+(LaTeX-csquotes-quote-after-quote)p FC(.)2000 68277 y(The)312
+b(quotation)g(c)-34 b(haracters)312 b(will)e(only)i(b)34
+b(e)311 b(used)h(if)f(b)34 b(oth)312 b(v)-67 b(ariables|)p
+Fu(LaTeX-csquotes-open-quote)2000 69738 y FC(and)625
+b Fu(LaTeX-csquotes-close-quote)p FC(|are)634 b(non-empt)-34
+b(y)626 b(strings.)1200 b(But)624 b(then)i(the)f(`)p
+Fu(csquotes)p FC('-)2000 71200 y(related)404 b(v)-67
+b(alues)403 b(will)h(tak)-34 b(e)404 b(precedence)f(o)-34
+b(v)g(er)404 b(the)h(language-sp)34 b(eci\014c)404 b(ones.)p
+eop end
+%%Page: 21 26
+TeXDict begin 21 25 bop 2000 -1550 a FC(Chapter)405 b(2:)539
+b(Editing)404 b(the)h(Do)34 b(cumen)-34 b(t)405 b(Source)24828
+b(21)2000 3985 y Fq(Dollar)546 b(Signs)2000 5944 y FC(In)386
+b(A)-34 b(UCT)6829 6205 y(E)7504 5944 y(X,)389 b(dollar)d(signs)g
+(should)h(matc)-34 b(h)387 b(lik)-34 b(e)385 b(they)h(do)h(in)f(T)31644
+6205 y(E)32317 5944 y(X.)533 b(This)387 b(has)f(b)34
+b(een)386 b(partially)f(imple-)2000 7406 y(men)-34 b(ted,)419
+b(w)-34 b(e)416 b(assume)g(dollar)f(signs)h(alw)-34 b(a)g(ys)416
+b(matc)-34 b(h)417 b(within)f(a)g(paragraph.)573 b(By)415
+b(default,)k(the)d(\014rst)g(`)p Fu($)p FC(')2000 8867
+y(y)-34 b(ou)389 b(insert)g(in)g(a)f(paragraph)i(will)e(do)h(nothing)h
+(sp)34 b(ecial.)533 b(The)389 b(second)g(`)p Fu($)p FC(')f(will)h(matc)
+-34 b(h)389 b(the)g(\014rst.)534 b(This)2000 10328 y(will)404
+b(b)34 b(e)403 b(indicated)i(b)-34 b(y)404 b(mo)-34 b(ving)405
+b(the)f(cursor)g(temp)34 b(orarily)403 b(o)-34 b(v)g(er)404
+b(the)h(\014rst)f(dollar)g(sign.)43872 12852 y([Command])-47999
+b Fm(TeX-insert-dollar)612 b Fi(arg)5200 14313 y FC(\()p
+Ft($)p FC(\))405 b(Insert)f(dollar)g(sign.)5200 16139
+y(Sho)-34 b(w)406 b(matc)-34 b(hing)405 b(dollar)f(sign)g(if)g(this)h
+(dollar)e(sign)i(end)f(the)h(T)34082 16400 y(E)34755
+16139 y(X)g(math)g(mo)34 b(de.)5200 17966 y(With)404
+b(optional)h Ft(arg)p FC(,)f(insert)g(that)h(man)-34
+b(y)405 b(dollar)e(signs.)3660 20490 y(T)4333 20751 y(E)5007
+20490 y(X)694 b(and)h(L)9579 20333 y Fv(a)10140 20490
+y FC(T)10813 20751 y(E)11486 20490 y(X)f(users)g(often)h(lo)34
+b(ok)693 b(for)h(a)f(w)-34 b(a)g(y)695 b(to)f(insert)g(inline)g
+(equations)g(lik)-34 b(e)693 b(`)p Fu($...$)p FC(')2000
+21951 y(or)581 b(`)p Fu(\\\(...\\\))p FC(')i(simply)e(t)-34
+b(yping)582 b Ft($)p FC(.)1070 b(A)-34 b(UCT)22720 22212
+y(E)23395 21951 y(X)581 b(helps)h(them)g(through)g(the)g(customizable)f
+(v)-67 b(ariable)2000 23412 y Fu(TeX-electric-math)p
+FC(.)42818 25936 y([User)404 b(Option])-48000 b Fm(TeX-electric-math)
+5200 27397 y FC(If)539 b(the)g(v)-67 b(ariable)538 b(is)h(non-nil)g
+(and)h(y)-34 b(ou)539 b(t)-34 b(yp)34 b(e)539 b Ft($)g
+FC(outside)h(math)g(mo)34 b(de,)572 b(A)-34 b(UCT)42692
+27658 y(E)43367 27397 y(X)539 b(will)f(auto-)5200 28858
+y(matically)441 b(insert)h(the)g(op)34 b(ening)442 b(and)h(closing)e
+(sym)-34 b(b)34 b(ols)442 b(for)g(an)g(inline)g(equation)g(and)h(put)f
+(the)5200 30320 y(p)34 b(oin)-34 b(t)377 b(b)34 b(et)-34
+b(w)g(een)377 b(them.)529 b(The)376 b(op)34 b(ening)377
+b(sym)-34 b(b)34 b(ol)376 b(will)f(blink)h(when)g Fu
+(blink-matching-paren)383 b FC(is)5200 31781 y(non-nil.)539
+b(If)405 b Fu(TeX-electric-math)410 b FC(is)404 b(nil,)g(t)-34
+b(yping)405 b Ft($)f FC(simply)g(inserts)g(`)p Fu($)p
+FC(')g(at)h(p)34 b(oin)-34 b(t,)405 b(this)g(is)e(the)5200
+33242 y(default.)5200 35068 y(Besides)349 b Fu(nil)p
+FC(,)361 b(p)34 b(ossible)350 b(v)-67 b(alues)349 b(for)h(this)g(v)-67
+b(ariable)349 b(are)g Fu(\(cons)406 b("$")f("$"\))351
+b FC(for)f(T)41960 35329 y(E)42634 35068 y(X)g(inline)f(equa-)5200
+36530 y(tions)405 b(`)p Fu($...$)p FC(',)g(and)f Fu(\(cons)i("\\\\\(")g
+("\\\\\)"\))g FC(for)f(L)28694 36373 y Fv(a)29255 36530
+y FC(T)29928 36791 y(E)30601 36530 y(X)f(inline)g(equations)h(`)p
+Fu(\\\(...\\\))p FC('.)5200 38356 y(If)514 b(the)g(v)-67
+b(ariable)512 b(is)h(non-nil)h(and)h(p)34 b(oin)-34 b(t)514
+b(is)f(inside)h(math)g(mo)34 b(de)514 b(righ)-34 b(t)514
+b(b)34 b(et)-34 b(w)g(een)515 b(a)e(couple)h(of)5200
+39817 y(single)466 b(dollars,)482 b(pressing)467 b Ft($)g
+FC(will)g(insert)g(another)g(pair)g(of)g(dollar)g(signs)g(and)g(lea)-34
+b(v)g(e)467 b(the)g(p)34 b(oin)-34 b(t)5200 41279 y(b)34
+b(et)-34 b(w)g(een)397 b(them.)537 b(Th)-34 b(us,)399
+b(if)d Fu(TeX-electric-math)403 b FC(is)396 b(set)g(to)h
+Fu(\(cons)406 b("$")f("$"\))398 b FC(y)-34 b(ou)396 b(can)h(easily)5200
+42740 y(obtain)345 b(a)f(T)10534 43001 y(E)11208 42740
+y(X)g(displa)-34 b(y)345 b(equation)f(`)p Fu($$...$$)p
+FC(')i(b)-34 b(y)344 b(pressing)h Ft($)f FC(t)-34 b(wice)344
+b(in)g(a)h(ro)-34 b(w.)519 b(\(Note)344 b(that)h(y)-34
+b(ou)5200 44201 y(should)441 b(not)f(use)g(double)h(dollar)e(signs)h
+(in)g(L)25600 44044 y Fv(a)26161 44201 y FC(T)26834 44462
+y(E)27508 44201 y(X)g(b)34 b(ecause)439 b(this)h(practice)g(can)g(lead)
+f(to)h(wrong)5200 45662 y(spacing)404 b(in)h(t)-34 b(yp)34
+b(eset)404 b(do)34 b(cumen)-34 b(ts.\))5200 47489 y(In)446
+b(addition,)457 b(when)447 b(the)f(v)-67 b(ariable)444
+b(is)i(non-nil)g(and)h(there)f(is)f(an)i(activ)-34 b(e)445
+b(region)h(outside)g(math)5200 48950 y(mo)34 b(de,)555
+b(t)-34 b(yping)526 b Ft($)f FC(will)g(put)h(around)h(the)e(activ)-34
+b(e)525 b(region)g(sym)-34 b(b)34 b(ols)525 b(for)h(op)34
+b(ening)525 b(and)h(closing)5200 50411 y(inline)533 b(equation)g(and)h
+(k)-34 b(eep)533 b(the)h(region)f(activ)-34 b(e,)564
+b(lea)-34 b(ving)533 b(p)34 b(oin)-34 b(t)534 b(after)g(the)f(closing)g
+(sym)-34 b(b)34 b(ol.)5200 51872 y(By)428 b(pressing)g(rep)34
+b(eatedly)428 b Ft($)h FC(while)f(the)h(region)f(is)h(activ)-34
+b(e)428 b(y)-34 b(ou)429 b(can)f(toggle)h(b)34 b(et)-34
+b(w)g(een)429 b(an)g(inline)5200 53333 y(equation,)j(a)426
+b(displa)-34 b(y)426 b(equation,)432 b(and)426 b(no)h(equation.)605
+b(T)-101 b(o)426 b(b)34 b(e)426 b(precise,)k(`)p Fu($...$)p
+FC(')d(is)f(replaced)g(b)-34 b(y)5200 54795 y(`)p Fu($$...$$)p
+FC(',)406 b(whereas)e(`)p Fu(\\\(...\\\))p FC(')i(is)e(replaced)f(b)-34
+b(y)405 b(`)p Fu(\\[...\\])p FC('.)3660 57318 y(If)461
+b(y)-34 b(ou)460 b(w)-34 b(an)g(t)463 b(to)d(automatically)g(insert)h
+(`)p Fu($...$)p FC(')g(in)f(plain)h(T)32509 57579 y(E)33183
+57318 y(X)f(\014les,)474 b(and)461 b(`)p Fu(\\\(...\\\))p
+FC(')h(in)e(L)47183 57161 y Fv(a)47744 57318 y FC(T)48417
+57579 y(E)49091 57318 y(X)2000 58780 y(\014les)404 b(b)-34
+b(y)404 b(pressing)h Ft($)p FC(,)f(add)g(the)h(follo)-34
+b(wing)405 b(to)f(y)-34 b(our)405 b(init)f(\014le)5200
+60606 y Fu(\(add-hook)640 b('plain-TeX-mode-hook)11564
+62067 y(\(lambda)e(\(\))f(\(set)h(\(make-local-variable)644
+b('TeX-electric-math\))21745 63528 y(\(cons)638 b("$")g("$"\)\)\)\))
+5200 64990 y(\(add-hook)i('LaTeX-mode-hook)11564 66451
+y(\(lambda)e(\(\))f(\(set)h(\(make-local-variable)644
+b('TeX-electric-math\))21745 67912 y(\(cons)638 b("\\\\\(")h
+("\\\\\)"\)\)\)\))3660 69738 y FC(Note)446 b(that)g(T)-101
+b(exinfo)445 b(mo)34 b(de)445 b(do)34 b(es)444 b(nothing)i(sp)34
+b(ecial)444 b(for)h Ft($)p FC(.)661 b(It)445 b(inserts)g(dollar)g
+(sign\(s\))h(just)g(in)e(the)2000 71200 y(same)404 b(w)-34
+b(a)g(y)405 b(as)f(the)h(other)f(normal)g(k)-34 b(eys)404
+b(do.)p eop end
+%%Page: 22 27
+TeXDict begin 22 26 bop 2000 -1550 a FC(Chapter)405 b(2:)539
+b(Editing)404 b(the)h(Do)34 b(cumen)-34 b(t)405 b(Source)24828
+b(22)2000 3985 y Fq(Braces)2000 5944 y FC(T)-101 b(o)387
+b(a)-34 b(v)g(oid)387 b(un)-34 b(balanced)388 b(braces,)i(it)c(is)g
+(useful)i(to)e(insert)h(them)g(pairwise.)532 b(Y)-101
+b(ou)387 b(can)g(do)g(this)g(b)-34 b(y)387 b(t)-34 b(yping)2000
+7406 y Fs(C-c)405 b({)p FC(.)43872 9946 y([Command])-47999
+b Fm(TeX-insert-braces)5200 11407 y FC(\()p Fs(C-c)405
+b({)p FC(\))367 b(Mak)-34 b(e)366 b(a)g(pair)g(of)g(braces)g(and)h(p)34
+b(osition)366 b(the)h(cursor)f(to)g(t)-34 b(yp)34 b(e)366
+b(inside)g(of)h(them.)526 b(If)366 b(there)5200 12868
+y(is)404 b(an)g(activ)-34 b(e)404 b(region,)f(put)j(braces)d(around)j
+(it)e(and)h(lea)-34 b(v)g(e)403 b(p)34 b(oin)-34 b(t)405
+b(after)g(the)f(closing)g(brace.)3660 15408 y(When)293
+b(writing)g(complex)f(math)h(form)-34 b(ulas)293 b(in)g(L)25279
+15251 y Fv(a)25840 15408 y FC(T)26513 15669 y(E)27186
+15408 y(X)g(do)34 b(cumen)-34 b(ts,)316 b(y)-34 b(ou)292
+b(sometimes)h(need)f(to)h(adjust)2000 16869 y(the)326
+b(size)f(of)h(braces)f(with)i(pairs)e(of)i(macros)e(lik)-34
+b(e)325 b(`)p Fu(\\left)p FC('-`)p Fu(\\right)p FC(',)343
+b(`)p Fu(\\bigl)p FC('-`)p Fu(\\bigr)p FC(')328 b(and)f(so)f(on.)512
+b(Y)-101 b(ou)2000 18330 y(can)421 b(a)-34 b(v)g(oid)422
+b(un)-34 b(balanced)423 b(pairs)e(with)h(the)f(help)h(of)f
+Fu(TeX-insert-macro)p FC(,)431 b(b)34 b(ound)422 b(to)g
+Fs(C-c)405 b(C-m)422 b FC(or)f Fs(C-c)2000 19792 y(RET)472
+b FC(\(see)g(Section)g(2.6)f([Completion],)488 b(page)472
+b(31\).)741 b(If)471 b(y)-34 b(ou)472 b(insert)f(left)h(size)f
+(adjusting)i(macros)e(suc)-34 b(h)2000 21253 y(as)441
+b(`)p Fu(\\left)p FC(',)451 b(`)p Fu(\\bigl)p FC(')442
+b(etc.)e(with)i Fu(TeX-insert-macro)p FC(,)455 b(it)441
+b(asks)f(for)h(left)g(brace)g(to)g(use)g(and)g(supplies)2000
+22714 y(automatically)401 b(righ)-34 b(t)402 b(size)f(adjusting)i
+(macros)e(suc)-34 b(h)402 b(as)f(`)p Fu(\\right)p FC(',)i(`)p
+Fu(\\bigr)p FC(')g(etc.)e(and)h(corresp)34 b(onding)2000
+24175 y(righ)-34 b(t)405 b(brace)e(in)h(addtion)i(to)e(the)h(in)-34
+b(tended)405 b(left)g(macro)e(and)i(left)g(brace.)3660
+26010 y(The)717 b(completion)f(b)-34 b(y)717 b Fu(TeX-insert-macro)722
+b FC(also)716 b(applies)g(when)h(en)-34 b(tering)717
+b(macros)f(suc)-34 b(h)717 b(as)2000 27471 y(`)p Fu(\\langle)p
+FC(',)342 b(`)p Fu(\\lfloor)p FC(')326 b(and)f(`)p Fu(\\lceil)p
+FC(',)342 b(whic)-34 b(h)325 b(pro)34 b(duce)325 b(the)g(left)f(part)h
+(of)g(the)g(paired)f(braces.)512 b(F)-101 b(or)325 b(ex-)2000
+28932 y(ample,)h(inserting)306 b(`)p Fu(\\lfloor)p FC(')j(b)-34
+b(y)307 b Fs(C-c)405 b(C-m)307 b FC(is)g(immediately)e(follo)-34
+b(w)g(ed)308 b(b)-34 b(y)307 b(the)g(insertion)g(of)f(`)p
+Fu(\\rfloor)p FC('.)2000 30393 y(In)543 b(addition,)577
+b(if)543 b(the)g(p)34 b(oin)-34 b(t)543 b(w)-34 b(as)544
+b(lo)34 b(cated)542 b(just)h(after)g(`)p Fu(\\left)p
+FC(')h(or)e(its)h(friends,)577 b(the)543 b(corresp)34
+b(onding)2000 31854 y(`)p Fu(\\right)p FC(')393 b(etc.)e(will)g(b)34
+b(e)391 b(inserted)h(in)f(fron)-34 b(t)393 b(of)f(`)p
+Fu(\\rfloor)p FC('.)536 b(In)391 b(b)34 b(oth)393 b(cases,)g(activ)-34
+b(e)391 b(region)g(is)h(honored.)3660 33689 y(As)f(a)f(side)g
+(e\013ect,)i(when)f Fu(LaTeX-math-mode)396 b FC(\(see)390
+b(Section)g(2.5)g([Mathematics],)j(page)d(30\))h(is)f(on,)2000
+35150 y(just)405 b(t)-34 b(yping)405 b Fs(`\()g FC(inserts)f(not)h
+(only)f(`)p Fu(\\langle)p FC(',)i(but)f(also)f(`)p Fu(\\rangle)p
+FC('.)3660 36985 y(If)h(y)-34 b(ou)404 b(do)h(not)g(lik)-34
+b(e)403 b(suc)-34 b(h)405 b(auto)g(completion)f(at)g(all,)g(it)g(can)g
+(b)34 b(e)404 b(disabled)g(b)-34 b(y)405 b(a)f(user)g(option.)42818
+39525 y([User)g(Option])-48000 b Fm(TeX-arg-right-insert-p)5200
+40986 y FC(If)481 b(this)h(option)g(is)f(turned)i(o\013,)500
+b(the)482 b(automatic)g(supply)g(of)f(the)h(righ)-34
+b(t)482 b(macros)f(and)h(braces)f(is)5200 42447 y(suppressed.)3660
+44987 y(When)426 b(y)-34 b(ou)425 b(edit)h(L)12295 44830
+y Fv(a)12856 44987 y FC(T)13529 45248 y(E)14202 44987
+y(X)g(do)34 b(cumen)-34 b(ts,)431 b(y)-34 b(ou)426 b(can)f(enable)g
+(automatic)h(brace)f(pairing)g(when)h(t)-34 b(yping)2000
+46448 y Fs(\()p FC(,)404 b Fs({)g FC(and)h Fs([)p FC(.)42818
+48988 y([User)f(Option])-48000 b Fm(LaTeX-electric-left-right-brace)
+5200 50450 y FC(If)466 b(this)g(option)h(is)f(on,)481
+b(just)468 b(t)-34 b(yping)466 b Fs(\()p FC(,)482 b Fs({)466
+b FC(or)g Fs([)g FC(immediately)f(adds)i(the)f(corresp)34
+b(onding)466 b(righ)-34 b(t)5200 51911 y(brace)480 b(`)p
+Fu(\))p FC(',)498 b(`)p Fu(})p FC(')480 b(or)g(`)p Fu(])p
+FC('.)766 b(The)480 b(p)34 b(oin)-34 b(t)481 b(is)f(left)h(after)f(the)
+g(op)34 b(ening)481 b(brace.)766 b(If)480 b(there)g(is)g(an)g(activ)-34
+b(e)5200 53372 y(region,)403 b(braces)h(are)g(put)h(around)g(it.)5200
+55206 y(They)573 b(recognize)f(the)i(preceding)f(bac)-34
+b(kslash)574 b(or)f(size)g(adjusting)i(macros)e(suc)-34
+b(h)574 b(as)f(`)p Fu(\\left)p FC(',)5200 56668 y(`)p
+Fu(\\bigl)p FC(')405 b(etc.,)e(so)i(the)f(follo)-34 b(wing)405
+b(completions)f(will)g(o)34 b(ccur:)6194 58502 y FA(\017)800
+b FC(\(when)405 b(t)-34 b(yping)405 b(single)f(left)g(brace\))8257
+60316 y FA(\000)800 b FC(`)p Fu(\()p FC(')404 b(-)p Fu(>)g
+FC(`)p Fu(\(\))p FC(')8257 62130 y FA(\000)800 b FC(`)p
+Fu({)p FC(')404 b(-)p Fu(>)g FC(`)p Fu({})p FC(')8257
+63944 y FA(\000)800 b FC(`)p Fu([)p FC(')404 b(-)p Fu(>)g
+FC(`)p Fu([])p FC(')6194 65758 y FA(\017)800 b FC(\(when)405
+b(t)-34 b(yping)405 b(left)g(brace)e(just)j(after)e(a)g(bac)-34
+b(kslash\))8257 67572 y FA(\000)800 b FC(`)p Fu(\\\()p
+FC(')404 b(-)p Fu(>)h FC(`)p Fu(\\\(\\\))p FC(')8257
+69386 y FA(\000)800 b FC(`)p Fu(\\{)p FC(')404 b(-)p
+Fu(>)h FC(`)p Fu(\\{\\})p FC(')8257 71200 y FA(\000)800
+b FC(`)p Fu(\\[)p FC(')404 b(-)p Fu(>)h FC(`)p Fu(\\[\\])p
+FC(')p eop end
+%%Page: 23 28
+TeXDict begin 23 27 bop 2000 -1550 a FC(Chapter)405 b(2:)539
+b(Editing)404 b(the)h(Do)34 b(cumen)-34 b(t)405 b(Source)24828
+b(23)6194 3985 y FA(\017)800 b FC(\(when)405 b(t)-34
+b(yping)405 b(just)h(after)e(`)p Fu(\\left)p FC(')h(or)f(`)p
+Fu(\\bigl)p FC('\))8257 5810 y FA(\000)800 b FC(`)p Fu(\\left\()p
+FC(')406 b(-)p Fu(>)e FC(`)p Fu(\\left\(\\right\))p FC(')8257
+7635 y FA(\000)800 b FC(`)p Fu(\\bigl[)p FC(')406 b(-)p
+Fu(>)e FC(`)p Fu(\\bigl[\\bigr])p FC(')6194 9460 y FA(\017)800
+b FC(\(when)405 b(t)-34 b(yping)405 b(just)h(after)e(`)p
+Fu(\\Bigl\\)p FC('\))8257 11285 y FA(\000)800 b FC(`)p
+Fu(\\Bigl\\{)p FC(')406 b(-)p Fu(>)e FC(`)p Fu(\\Bigl\\{\\Bigr\\})p
+FC(')5200 13505 y(This)358 b(auto)g(completion)g(feature)f(ma)-34
+b(y)358 b(b)34 b(e)357 b(a)g(bit)h(anno)-34 b(ying)359
+b(when)f(editing)g(an)f(already)g(existing)5200 14966
+y(L)5522 14809 y Fv(a)6083 14966 y FC(T)6756 15227 y(E)7430
+14966 y(X)484 b(do)34 b(cumen)-34 b(t.)779 b(In)484 b(that)h(case,)503
+b(use)484 b Fs(C-u)406 b(1)484 b FC(or)g Fs(C-q)h FC(b)34
+b(efore)483 b(t)-34 b(yping)485 b Fs(\()p FC(,)504 b
+Fs({)484 b FC(or)g Fs([)p FC(.)779 b(Then)485 b(no)5200
+16427 y(completion)333 b(is)g(done)h(and)g(just)h(a)e(single)g(left)g
+(brace)g(is)g(inserted.)515 b(In)333 b(fact,)348 b(with)334
+b(optional)g(pre\014x)5200 17888 y Ft(arg)p FC(,)404
+b(just)h(that)g(man)-34 b(y)405 b(op)34 b(en)404 b(braces)g(are)f
+(inserted)i(without)g(an)-34 b(y)405 b(completion.)2000
+21194 y FB(2.2)896 b(Inserting)599 b(F)-149 b(on)-50
+b(t)598 b(Sp)50 b(eci\014ers)2000 23319 y FC(P)-34 b(erhaps)518
+b(the)g(most)g(used)g(k)-34 b(eyb)34 b(oard)517 b(commands)i(of)f(A)-34
+b(UCT)31227 23580 y(E)31901 23319 y(X)518 b(are)f(the)h(short-cuts)g(a)
+-34 b(v)-67 b(ailable)517 b(for)2000 24780 y(easy)404
+b(insertion)g(of)g(fon)-34 b(t)406 b(c)-34 b(hanging)405
+b(macros.)3660 26637 y(If)489 b(y)-34 b(ou)489 b(giv)-34
+b(e)489 b(an)g(argumen)-34 b(t)490 b(\(that)g(is,)510
+b(t)-34 b(yp)34 b(e)489 b Fs(C-u)p FC(\))h(to)f(the)g(fon)-34
+b(t)490 b(command,)511 b(the)489 b(innermost)g(fon)-34
+b(t)2000 28098 y(will)353 b(b)34 b(e)353 b(replaced,)363
+b(i.e.)353 b(the)h(fon)-34 b(t)355 b(in)e(the)h(T)21373
+28359 y(E)22047 28098 y(X)g(group)g(around)h(p)34 b(oin)-34
+b(t)354 b(will)f(b)34 b(e)353 b(c)-34 b(hanged.)523 b(The)354
+b(follo)-34 b(wing)2000 29559 y(table)425 b(sho)-34 b(ws)426
+b(the)f(a)-34 b(v)-67 b(ailable)424 b(commands,)430 b(with)c
+Fx(?)e FC(indicating)h(the)g(p)34 b(osition)426 b(where)e(the)h(text)g
+(will)f(b)34 b(e)2000 31020 y(inserted.)2000 33240 y
+Fs(C-c)405 b(C-f)g(C-b)8400 34702 y FC(Insert)f Fp(b)34
+b(old)404 b(face)g FC(`)p Fu(\\textbf{)p Fx(?)p Fu(})p
+FC(')j(text.)2000 36890 y Fs(C-c)e(C-f)g(C-m)8400 38351
+y FC(Insert)f(medium)h(face)f(`)p Fu(\\textmd{)p Fx(?)p
+Fu(})p FC(')i(text.)2000 40540 y Fs(C-c)f(C-f)g(C-i)8400
+42001 y FC(Insert)f Fo(italics)501 b FC(`)p Fu(\\textit{)p
+Fx(?)p Fu(})p FC(')407 b(text.)2000 44190 y Fs(C-c)e(C-f)g(C-e)8400
+45651 y FC(Insert)f Fo(emphasize)-62 b(d)526 b FC(`)p
+Fu(\\emph{)p Fx(?)p Fu(})p FC(')406 b(text.)2000 47840
+y Fs(C-c)f(C-f)g(C-s)8400 49301 y FC(Insert)f Ft(slan)-34
+b(ted)453 b FC(`)p Fu(\\textsl{)p Fx(?)p Fu(})p FC(')407
+b(text.)2000 51489 y Fs(C-c)e(C-f)g(C-r)8400 52951 y
+FC(Insert)f(roman)h(`)p Fu(\\textrm{)p Fx(?)p Fu(})p
+FC(')h(text.)2000 55139 y Fs(C-c)f(C-f)g(C-f)8400 56600
+y FC(Insert)f Fw(sans)g(serif)g FC(`)p Fu(\\textsf{)p
+Fx(?)p Fu(})p FC(')i(text.)2000 58789 y Fs(C-c)f(C-f)g(C-t)8400
+60250 y FC(Insert)f Fu(typewriter)k FC(`)p Fu(\\texttt{)p
+Fx(?)p Fu(})p FC(')e(text.)2000 62439 y Fs(C-c)f(C-f)g(C-c)8400
+63900 y FC(Insert)f Fv(small)459 b(caps)405 b FC(`)p
+Fu(\\textsc{)p Fx(?)p Fu(})p FC(')h(text.)2000 66089
+y Fs(C-c)f(C-f)g(C-l)8400 67550 y FC(Insert)f(upp)34
+b(er)405 b(lo)-34 b(w)g(er)404 b(case)g(`)p Fu(\\textulc{)p
+Fx(?)p Fu(})p FC(')j(text.)2000 69738 y Fs(C-c)e(C-f)g(C-w)8400
+71200 y FC(Insert)f Fv(sw)-108 b(ash)405 b FC(`)p Fu(\\textsw{)p
+Fx(?)p Fu(})p FC(')i(text.)p eop end
+%%Page: 24 29
+TeXDict begin 24 28 bop 2000 -1550 a FC(Chapter)405 b(2:)539
+b(Editing)404 b(the)h(Do)34 b(cumen)-34 b(t)405 b(Source)24828
+b(24)2000 3985 y Fs(C-c)405 b(C-f)g(C-n)8400 5446 y FC(Insert)f(normal)
+g(`)p Fu(\\textnormal{)p Fx(?)p Fu(})p FC(')k(text.)2000
+7587 y Fs(C-c)d(C-f)g(C-d)8400 9048 y FC(Delete)e(the)i(innermost)f
+(fon)-34 b(t)406 b(sp)34 b(eci\014cation)404 b(con)-34
+b(taining)405 b(p)34 b(oin)-34 b(t.)43872 11537 y([Command])-47999
+b Fm(TeX-font)609 b Fi(replace)446 b(what)5200 12998
+y FC(\()p Fs(C-c)405 b(C-f)p FC(\))h(Insert)e(template)h(for)f(fon)-34
+b(t)405 b(c)-34 b(hange)405 b(command.)5200 14807 y(If)332
+b Ft(replace)399 b FC(is)332 b(not)h(nil,)346 b(replace)332
+b(curren)-34 b(t)332 b(fon)-34 b(t.)516 b Ft(what)360
+b FC(determines)332 b(the)h(fon)-34 b(t)334 b(to)e(use,)347
+b(as)332 b(sp)34 b(eci\014ed)5200 16268 y(b)-34 b(y)404
+b Fu(TeX-font-list)p FC(.)42818 18756 y([User)g(Option])-48000
+b Fm(TeX-font-list)5200 20218 y FC(List)404 b(of)g(fon)-34
+b(ts)406 b(used)f(b)-34 b(y)404 b Fu(TeX-font)p FC(.)5200
+22026 y(Eac)-34 b(h)426 b(en)-34 b(try)427 b(is)f(a)g(list)g(with)h
+(three)f(elemen)-34 b(ts.)604 b(The)427 b(\014rst)f(elemen)-34
+b(t)427 b(is)e(the)i(k)-34 b(ey)426 b(to)g(activ)-67
+b(ate)425 b(the)5200 23487 y(fon)-34 b(t.)660 b(The)445
+b(second)g(elemen)-34 b(t)444 b(is)g(the)g(string)h(to)g(insert)f(b)34
+b(efore)444 b(p)34 b(oin)-34 b(t,)454 b(and)445 b(the)g(third)g(elemen)
+-34 b(t)5200 24949 y(is)440 b(the)g(string)h(to)f(insert)h(after)f(p)34
+b(oin)-34 b(t.)648 b(An)440 b(optional)h(fourth)g(elemen)-34
+b(t)441 b(means)f(alw)-34 b(a)g(ys)441 b(replace)5200
+26410 y(if)404 b(not)h(nil.)42818 28898 y([User)f(Option])-48000
+b Fm(LaTeX-font-list)5200 30359 y FC(List)656 b(of)g(fon)-34
+b(ts)658 b(used)f(b)-34 b(y)656 b Fu(TeX-font)j FC(in)d(LaT)-101
+b(eX)656 b(mo)34 b(de.)1295 b(It)656 b(has)g(the)h(same)f(structure)h
+(as)5200 31821 y Fu(TeX-font-list)p FC(.)2000 35054 y
+FB(2.3)896 b(Inserting)599 b(c)-50 b(hapters,)600 b(sections,)f(etc.)
+2000 37179 y FC(Insertion)577 b(of)f(sectioning)h(macros,)619
+b(that)578 b(is)e(`)p Fu(\\chapter)p FC(',)621 b(`)p
+Fu(\\section)p FC(',)h(`)p Fu(\\subsection)p FC(',)g(etc.)576
+b(and)2000 38641 y(accompan)-34 b(ying)524 b(`)p Fu(\\label)p
+FC(''s)h(ma)-34 b(y)523 b(b)34 b(e)523 b(eased)h(b)-34
+b(y)524 b(using)g Fs(C-c)405 b(C-s)p FC(.)897 b(This)524
+b(command)g(is)f(highly)h(cus-)2000 40102 y(tomizable,)404
+b(the)g(follo)-34 b(wing)405 b(describ)34 b(es)403 b(the)i(default)g(b)
+34 b(eha)-34 b(vior.)3660 41911 y(When)344 b(in)-34 b(v)g(oking)343
+b(y)-34 b(ou)344 b(will)e(b)34 b(e)343 b(ask)-34 b(ed)343
+b(for)g(a)g(section)g(macro)g(to)g(insert.)518 b(An)344
+b(appropriate)f(default)h(is)2000 43372 y(automatically)334
+b(selected)g(b)-34 b(y)335 b(A)-34 b(UCT)18968 43633
+y(E)19643 43372 y(X,)348 b(that)336 b(is)e(either:)503
+b(at)335 b(the)g(top)g(of)g(the)g(do)34 b(cumen)-34 b(t;)358
+b(the)335 b(top)g(lev)-34 b(el)2000 44833 y(sectioning)493
+b(for)g(that)h(do)34 b(cumen)-34 b(t)494 b(st)-34 b(yle,)515
+b(and)493 b(an)-34 b(y)494 b(other)f(place:)715 b(The)494
+b(same)e(as)h(the)h(last)f(o)34 b(ccurring)2000 46294
+y(sectioning)404 b(command.)3660 48103 y(Next,)343 b(y)-34
+b(ou)329 b(will)e(b)34 b(e)328 b(ask)-34 b(ed)329 b(for)f(the)h(actual)
+f(name)g(of)h(that)g(section,)343 b(and)329 b(last)f(y)-34
+b(ou)329 b(will)f(b)34 b(e)327 b(ask)-34 b(ed)329 b(for)2000
+49564 y(a)397 b(lab)34 b(el)396 b(to)h(b)34 b(e)397 b(asso)34
+b(ciated)397 b(with)g(that)h(section.)536 b(The)398 b(lab)34
+b(el)396 b(will)g(b)34 b(e)397 b(pre\014xed)g(b)-34 b(y)397
+b(the)g(v)-67 b(alue)396 b(sp)34 b(eci\014ed)2000 51025
+y(in)404 b Fu(LaTeX-section-hook)p FC(.)43872 53514 y([Command])-47999
+b Fm(LaTeX-section)611 b Fi(arg)5200 54975 y FC(\()p
+Fs(C-c)405 b(C-s)p FC(\))h(Insert)e(a)g(sectioning)g(command.)5200
+56784 y(Determine)f(the)i(t)-34 b(yp)34 b(e)404 b(of)h(section)f(to)g
+(b)34 b(e)404 b(inserted,)g(b)-34 b(y)405 b(the)f(argumen)-34
+b(t)405 b Ft(arg)p FC(.)6194 58593 y FA(\017)800 b FC(If)404
+b Ft(arg)508 b FC(is)404 b(nil)g(or)f(missing,)h(use)h(the)f(curren)-34
+b(t)405 b(lev)-34 b(el.)6194 60394 y FA(\017)800 b FC(If)404
+b Ft(arg)508 b FC(is)404 b(a)g(list)g(\(selected)g(b)-34
+b(y)404 b(C-u\),)h(go)f(do)-34 b(wn)g(w)g(ard)407 b(one)d(lev)-34
+b(el.)6194 62195 y FA(\017)800 b FC(If)404 b Ft(arg)508
+b FC(is)404 b(negativ)-34 b(e,)404 b(go)g(up)h(that)g(man)-34
+b(y)404 b(lev)-34 b(els.)6194 63996 y FA(\017)800 b FC(If)404
+b Ft(arg)508 b FC(is)404 b(p)34 b(ositiv)-34 b(e)404
+b(or)f(zero,)g(use)i(absolute)g(lev)-34 b(el:)8564 65797
+y Fu(+)800 b FC(0)404 b(:)539 b(part)8564 67598 y Fu(+)800
+b FC(1)404 b(:)539 b(c)-34 b(hapter)8564 69399 y Fu(+)800
+b FC(2)404 b(:)539 b(section)8564 71200 y Fu(+)800 b
+FC(3)404 b(:)539 b(subsection)p eop end
+%%Page: 25 30
+TeXDict begin 25 29 bop 2000 -1550 a FC(Chapter)405 b(2:)539
+b(Editing)404 b(the)h(Do)34 b(cumen)-34 b(t)405 b(Source)24828
+b(25)8564 3985 y Fu(+)800 b FC(4)404 b(:)539 b(subsubsection)8564
+5723 y Fu(+)800 b FC(5)404 b(:)539 b(paragraph)8564 7460
+y Fu(+)800 b FC(6)404 b(:)539 b(subparagraph)5200 9474
+y(The)405 b(follo)-34 b(wing)404 b(v)-67 b(ariables)403
+b(can)i(b)34 b(e)403 b(set)i(to)f(customize)g(the)h(function.)5200
+11488 y Fu(LaTeX-section-hook)11600 12950 y FC(Ho)34
+b(oks)404 b(to)g(b)34 b(e)404 b(run)h(when)g(inserting)f(a)g(section.)
+5200 14964 y Fu(LaTeX-section-label)11600 16425 y FC(Pre\014x)g(to)g
+(all)g(section)g(references.)3660 18715 y(The)461 b(precise)e(b)34
+b(eha)-34 b(vior)459 b(of)h Fu(LaTeX-section)465 b FC(is)459
+b(de\014ned)i(b)-34 b(y)460 b(the)g(con)-34 b(ten)g(ts)462
+b(of)e Fu(LaTeX-section-)2000 20177 y(hook)p FC(.)42818
+22467 y([User)404 b(Option])-48000 b Fm(LaTeX-section-hook)5200
+23928 y FC(List)404 b(of)g(ho)34 b(oks)404 b(to)h(run)f(when)h(a)f(new)
+h(section)f(is)g(inserted.)5200 25666 y(The)h(follo)-34
+b(wing)404 b(v)-67 b(ariables)403 b(are)h(set)g(b)34
+b(efore)404 b(the)g(ho)34 b(oks)405 b(are)e(run)5200
+27680 y Fu(LaTeX-level)11600 29141 y FC(Numeric)g(section)i(lev)-34
+b(el,)402 b(default)j(set)g(b)-34 b(y)404 b(pre\014x)g(arg)g(to)h
+Fu(LaTeX-section)p FC(.)5200 31155 y Fu(LaTeX-name)11600
+32616 y FC(Name)f(of)g(the)h(sectioning)f(command,)h(deriv)-34
+b(ed)404 b(from)g Fu(LaTeX-level)p FC(.)5200 34630 y
+Fu(LaTeX-title)11600 36092 y FC(The)h(title)e(of)i(the)f(section,)g
+(default)h(to)g(an)f(empt)-34 b(y)405 b(string.)5200
+38106 y Fu(LaTeX-toc)11600 39567 y FC(En)-34 b(try)405
+b(for)f(the)g(table)h(of)f(con)-34 b(ten)g(ts)406 b(list,)e(default)h
+(nil.)5200 41581 y Fu(LaTeX-done-mark)11600 43042 y FC(P)-34
+b(osition)405 b(of)f(p)34 b(oin)-34 b(t)405 b(afterw)-34
+b(ards,)405 b(default)g(nil)f(meaning)h(after)f(the)h(inserted)f(text.)
+5200 45056 y(A)318 b(n)-34 b(um)g(b)34 b(er)320 b(of)f(ho)34
+b(oks)319 b(are)f(already)g(de\014ned.)511 b(Most)319
+b(lik)-34 b(ely)-101 b(,)334 b(y)-34 b(ou)319 b(will)f(b)34
+b(e)318 b(able)h(to)f(get)h(the)g(desired)5200 46517
+y(functionalit)-34 b(y)405 b(b)-34 b(y)405 b(c)-34 b(ho)34
+b(osing)404 b(from)h(these)f(ho)34 b(oks.)5200 48532
+y Fu(LaTeX-section-heading)11600 49993 y FC(Query)546
+b(the)g(user)h(ab)34 b(out)547 b(the)g(name)f(of)h(the)f(sectioning)h
+(command.)966 b(Mo)34 b(di\014es)11600 51454 y Fu(LaTeX-level)408
+b FC(and)d Fu(LaTeX-name)p FC(.)5200 53468 y Fu(LaTeX-section-title)
+11600 54929 y FC(Query)e(the)i(user)f(ab)34 b(out)405
+b(the)g(title)e(of)i(the)f(section.)539 b(Mo)34 b(di\014es)404
+b Fu(LaTeX-title)p FC(.)5200 56943 y Fu(LaTeX-section-toc)11600
+58404 y FC(Query)f(the)i(user)f(for)g(the)h(to)34 b(c)404
+b(en)-34 b(try)-101 b(.)538 b(Mo)34 b(di\014es)405 b
+Fu(LaTeX-toc)p FC(.)5200 60418 y Fu(LaTeX-section-section)11600
+61880 y FC(Insert)463 b(L)15459 61723 y Fv(a)16020 61880
+y FC(T)16693 62141 y(E)17367 61880 y(X)g(section)h(command)g(according)
+f(to)h Fu(LaTeX-name)p FC(,)481 b Fu(LaTeX-title)p FC(,)11600
+63341 y(and)277 b Fu(LaTeX-toc)p FC(.)500 b(If)276 b
+Fu(LaTeX-toc)k FC(is)d(nil,)301 b(no)277 b(to)34 b(c)277
+b(en)-34 b(try)277 b(is)f(inserted.)496 b(If)277 b Fu(LaTeX-toc)11600
+64802 y FC(or)489 b Fu(LaTeX-title)k FC(are)c(empt)-34
+b(y)490 b(strings,)510 b Fu(LaTeX-done-mark)495 b FC(will)488
+b(b)34 b(e)489 b(placed)h(at)11600 66263 y(the)405 b(p)34
+b(oin)-34 b(t)405 b(they)f(should)h(b)34 b(e)404 b(inserted.)5200
+68277 y Fu(LaTeX-section-label)11600 69738 y FC(Insert)580
+b(a)g(lab)34 b(el)579 b(after)h(the)h(section)f(command.)1067
+b(Con)-34 b(trolled)580 b(b)-34 b(y)581 b(the)f(v)-67
+b(ariable)11600 71200 y Fu(LaTeX-section-label)p FC(.)p
+eop end
+%%Page: 26 31
+TeXDict begin 26 30 bop 2000 -1550 a FC(Chapter)405 b(2:)539
+b(Editing)404 b(the)h(Do)34 b(cumen)-34 b(t)405 b(Source)24828
+b(26)5200 3985 y(T)-101 b(o)404 b(get)h(a)f(full)g(featured)h
+Fu(LaTeX-section)k FC(command,)404 b(insert)8400 5845
+y Fu(\(setq)638 b(LaTeX-section-hook)12218 7307 y
+('\(LaTeX-section-heading)13491 8768 y(LaTeX-section-title)13491
+10229 y(LaTeX-section-toc)13491 11690 y(LaTeX-section-section)13491
+13151 y(LaTeX-section-label\)\))5200 15012 y FC(in)404
+b(y)-34 b(our)404 b(init)h(\014le)e(suc)-34 b(h)405 b(as)g
+Fu(init.el)h FC(or)e Fu(.emacs)p FC(.)3660 17603 y(The)432
+b(b)34 b(eha)-34 b(vior)430 b(of)h Fu(LaTeX-section-label)437
+b FC(is)431 b(determined)g(b)-34 b(y)431 b(the)g(v)-67
+b(ariable)429 b Fu(LaTeX-section-)2000 19064 y(label)p
+FC(.)42818 21656 y([User)404 b(Option])-48000 b Fm(LaTeX-section-label)
+5200 23117 y FC(Default)405 b(pre\014x)f(when)h(asking)f(for)g(a)g(lab)
+34 b(el.)5200 24977 y(If)442 b(it)h(is)f(a)g(string,)452
+b(it)442 b(is)h(used)g(unc)-34 b(hanged)444 b(for)e(all)g(kinds)h(of)f
+(sections.)654 b(If)442 b(it)g(is)h(nil,)451 b(no)443
+b(lab)34 b(el)441 b(is)5200 26439 y(inserted.)805 b(If)493
+b(it)g(is)g(a)g(list,)515 b(the)493 b(list)g(is)g(searc)-34
+b(hed)493 b(for)g(a)g(mem)-34 b(b)34 b(er)493 b(whose)g(car)g(is)g
+(equal)f(to)h(the)5200 27900 y(name)426 b(of)g(the)g(sectioning)g
+(command)g(b)34 b(eing)426 b(inserted.)603 b(The)427
+b(cdr)e(is)h(then)g(used)g(as)g(the)g(pre\014x.)5200
+29361 y(If)404 b(the)h(name)f(is)g(not)h(found,)g(or)f(if)g(the)h(cdr)e
+(is)h(nil,)g(no)g(lab)34 b(el)404 b(is)g(inserted.)5200
+31221 y(By)528 b(default,)561 b(c)-34 b(hapters)529 b(ha)-34
+b(v)g(e)529 b(a)g(pre\014x)g(of)g(`)p Fu(cha:)p FC(')h(while)e
+(sections)h(and)h(subsections)g(ha)-34 b(v)g(e)529 b(a)5200
+32683 y(pre\014x)404 b(of)g(`)p Fu(sec:)p FC('.)540 b(Lab)34
+b(els)403 b(are)h(not)g(automatically)h(inserted)f(for)g(other)g(t)-34
+b(yp)34 b(es)405 b(of)f(sections.)2000 35993 y FB(2.4)896
+b(Inserting)599 b(En)-50 b(vironmen)g(t)601 b(T)-149
+b(emplates)2000 38119 y FC(A)405 b(large)f(apparatus)j(is)d(a)-34
+b(v)-67 b(ailable)404 b(that)i(supp)34 b(orts)407 b(insertions)e(of)g
+(en)-34 b(vironmen)g(ts,)406 b(that)g(is)f(`)p Fu(\\begin{})p
+FC(')2000 39580 y(|)f(`)p Fu(\\end{})p FC(')i(pairs.)3660
+41440 y(A)-34 b(UCT)6992 41701 y(E)7667 41440 y(X)428
+b(is)g(a)-34 b(w)g(are)429 b(of)f(most)h(of)g(the)f(actual)h(en)-34
+b(vironmen)g(ts)429 b(a)-34 b(v)-67 b(ailable)427 b(in)h(a)h(sp)34
+b(eci\014c)427 b(do)34 b(cumen)-34 b(t.)2000 42901 y(This)368
+b(is)f(ac)-34 b(hiev)g(ed)367 b(b)-34 b(y)368 b(examining)f(y)-34
+b(our)368 b(`)p Fu(\\documentclass)p FC(')j(command,)376
+b(and)368 b(consulting)g(a)f(precom-)2000 44363 y(piled)404
+b(list)g(of)g(en)-34 b(vironmen)g(ts)406 b(a)-34 b(v)-67
+b(ailable)403 b(in)h(a)g(large)f(n)-34 b(um)g(b)34 b(er)405
+b(of)g(st)-34 b(yles.)3660 46223 y(Most)377 b(of)f(these)h(are)e
+(describ)34 b(ed)376 b(further)g(in)g(the)h(follo)-34
+b(wing)377 b(sections,)k(and)c(y)-34 b(ou)376 b(ma)-34
+b(y)377 b(easily)e(sp)34 b(ecify)2000 47684 y(more.)538
+b(See)404 b(Section)g(2.4.5)g([Customizing)h(En)-34 b(vironmen)g(ts],)
+405 b(page)f(30.)3660 49544 y(Y)-101 b(ou)335 b(insert)e(an)h(en)-34
+b(vironmen)g(t)335 b(with)f Fs(C-c)405 b(C-e)p FC(,)349
+b(and)334 b(select)f(an)h(en)-34 b(vironmen)g(t)334 b(t)-34
+b(yp)34 b(e.)516 b(Dep)34 b(ending)334 b(on)2000 51006
+y(the)345 b(en)-34 b(vironmen)g(t,)357 b(A)-34 b(UCT)14622
+51266 y(E)15297 51006 y(X)344 b(ma)-34 b(y)344 b(ask)h(more)f
+(questions)h(ab)34 b(out)345 b(the)g(optional)g(parts)g(of)g(the)g
+(selected)2000 52467 y(en)-34 b(vironmen)g(t)405 b(t)-34
+b(yp)34 b(e.)539 b(With)404 b Fs(C-u)h(C-c)g(C-e)g FC(y)-34
+b(ou)405 b(will)f(c)-34 b(hange)404 b(the)h(curren)-34
+b(t)404 b(en)-34 b(vironmen)g(t.)43872 55058 y([Command])-47999
+b Fm(LaTeX-environment)612 b Fi(arg)5200 56519 y FC(\()p
+Fs(C-c)405 b(C-e)p FC(\))464 b(A)-34 b(UCT)14159 56780
+y(E)14834 56519 y(X)462 b(will)g(prompt)i(y)-34 b(ou)463
+b(for)f(an)h(en)-34 b(vironmen)g(t)464 b(to)e(insert.)714
+b(A)-34 b(t)463 b(this)g(prompt,)5200 57981 y(y)-34 b(ou)419
+b(ma)-34 b(y)419 b(press)g Fu(TAB)h FC(or)e Fu(SPC)i
+FC(to)f(complete)f(a)h(partially)f(written)i(name,)i(and/or)d(to)h(get)
+e(a)h(list)5200 59442 y(of)513 b(a)-34 b(v)-67 b(ailable)512
+b(en)-34 b(vironmen)g(ts.)865 b(After)512 b(selection)g(of)h(a)g(sp)34
+b(eci\014c)512 b(en)-34 b(vironmen)g(t)513 b(A)-34 b(UCT)45681
+59703 y(E)46356 59442 y(X)513 b(ma)-34 b(y)5200 60903
+y(prompt)405 b(y)-34 b(ou)405 b(for)f(further)h(sp)34
+b(eci\014cations.)5200 62763 y(If)463 b(the)g(optional)h(argumen)-34
+b(t)464 b Ft(arg)566 b FC(is)463 b(non-nil)g(\(i.e.)f(y)-34
+b(ou)464 b(ha)-34 b(v)g(e)463 b(giv)-34 b(en)463 b(a)g(pre\014x)g
+(argumen)-34 b(t\),)478 b(the)5200 64225 y(curren)-34
+b(t)404 b(en)-34 b(vironmen)g(t)406 b(is)d(mo)34 b(di\014ed)405
+b(and)g(no)f(new)h(en)-34 b(vironmen)g(t)405 b(is)f(inserted.)3660
+66816 y(A)-34 b(UCT)6992 67077 y(E)7667 66816 y(X)404
+b(helps)f(y)-34 b(ou)404 b(adding)h(lab)34 b(els)403
+b(to)h(en)-34 b(vironmen)g(ts)404 b(whic)-34 b(h)405
+b(use)e(them,)h(suc)-34 b(h)404 b(as)g(`)p Fu(equation)p
+FC(',)2000 68277 y(`)p Fu(figure)p FC(',)339 b(`)p Fu(table)p
+FC(',)f(etc)73 b(.)294 b(.)g(.)467 b(When)322 b(y)-34
+b(ou)321 b(insert)g(one)h(of)f(the)h(supp)34 b(orted)322
+b(en)-34 b(vironmen)g(ts)322 b(with)g Fs(C-c)405 b(C-e)p
+FC(,)2000 69738 y(y)-34 b(ou)486 b(will)g(b)34 b(e)486
+b(automatically)g(prompted)h(for)f(a)g(lab)34 b(el.)784
+b(Y)-101 b(ou)486 b(can)g(select)g(the)g(pre\014x)g(to)g(b)34
+b(e)486 b(used)h(for)2000 71200 y(suc)-34 b(h)405 b(en)-34
+b(vironmen)g(ts)405 b(with)g(the)g Fu(LaTeX-label-alist)410
+b FC(v)-67 b(ariable.)p eop end
+%%Page: 27 32
+TeXDict begin 27 31 bop 2000 -1550 a FC(Chapter)405 b(2:)539
+b(Editing)404 b(the)h(Do)34 b(cumen)-34 b(t)405 b(Source)24828
+b(27)42818 3985 y([User)404 b(Option])-48000 b Fm(LaTeX-label-alist)
+5200 5446 y FC(List)404 b(the)g(pre\014xes)g(to)h(b)34
+b(e)404 b(used)g(for)g(the)h(lab)34 b(el)403 b(of)i(eac)-34
+b(h)404 b(supp)34 b(orted)405 b(en)-34 b(vironmen)g(t.)5200
+7242 y(This)436 b(is)e(an)i(alist)f(whose)h(car)e(is)h(the)h(en)-34
+b(vironmen)g(t)436 b(name,)443 b(and)435 b(the)h(cdr)f(either)g(the)g
+(pre\014x)g(or)5200 8703 y(a)404 b(sym)-34 b(b)34 b(ol)404
+b(referring)f(to)i(one.)5200 10499 y(If)344 b(the)g(name)f(is)h(not)g
+(found,)357 b(or)343 b(if)h(the)g(cdr)f(is)h(nil,)355
+b(no)344 b(lab)34 b(el)342 b(is)i(automatically)f(inserted)h(for)g
+(that)5200 11961 y(en)-34 b(vironmen)g(t.)5200 13757
+y(If)553 b(y)-34 b(ou)554 b(w)-34 b(an)g(t)555 b(to)f(automatically)f
+(insert)h(a)f(lab)34 b(el)553 b(for)g(a)h(en)-34 b(vironmen)g(t)554
+b(but)g(with)h(an)e(empt)-34 b(y)5200 15218 y(pre\014x,)404
+b(use)g(the)h(empt)-34 b(y)404 b(string)h Fu("")f FC(as)h(the)f(cdr)g
+(of)h(the)f(corresp)34 b(onding)404 b(en)-34 b(try)-101
+b(.)3660 17681 y(As)508 b(a)g(default)h(selection,)533
+b(A)-34 b(UCT)19568 17942 y(E)20243 17681 y(X)507 b(will)h(suggest)g
+(the)h(en)-34 b(vironmen)g(t)508 b(last)g(inserted)g(or,)534
+b(as)507 b(the)2000 19142 y(\014rst)405 b(c)-34 b(hoice)403
+b(the)i(v)-67 b(alue)403 b(of)i(the)f(v)-67 b(ariable)403
+b Fu(LaTeX-default-environment)p FC(.)42818 21605 y([User)h(Option])
+-48000 b Fm(LaTeX-default-environment)5200 23066 y FC(Default)454
+b(en)-34 b(vironmen)g(t)454 b(to)g(insert)f(when)h(in)-34
+b(v)g(oking)454 b Fu(LaTeX-environment)459 b FC(\014rst)454
+b(time.)686 b(When)5200 24527 y(the)377 b(curren)-34
+b(t)377 b(en)-34 b(vironmen)g(t)377 b(is)f(`)p Fu(document)p
+FC(',)384 b(it)377 b(is)f(o)-34 b(v)g(erriden)376 b(b)-34
+b(y)377 b Fu(LaTeX-default-document-)5200 25988 y(environment)p
+FC(.)44946 28451 y([V)-101 b(ariable])-48001 b Fm
+(LaTeX-default-document-environment)5200 29912 y FC(Default)482
+b(en)-34 b(vironmen)g(t)482 b(when)g(in)-34 b(v)g(oking)482
+b(`)p Fu(LaTeX-environment)p FC(')487 b(and)482 b(the)g(curren)-34
+b(t)482 b(en)-34 b(viron-)5200 31374 y(men)g(t)410 b(is)g(`)p
+Fu(document)p FC('.)557 b(It)410 b(is)f(in)-34 b(tended)412
+b(to)e(b)34 b(e)409 b(used)h(in)g(L)31306 31217 y Fv(a)31867
+31374 y FC(T)32540 31634 y(E)33214 31374 y(X)f(class)h(st)-34
+b(yle)409 b(\014les.)555 b(F)-101 b(or)410 b(example,)5200
+32835 y(in)338 b Fu(beamer.el)k FC(it)c(is)g(set)h(to)f
+Fu(frame)p FC(,)353 b(in)339 b Fu(letter.el)i FC(to)e
+Fu(letter)p FC(,)353 b(and)339 b(in)f Fu(slides.el)k
+FC(to)d Fu(slide)p FC(.)3660 35298 y(If)756 b(the)h(do)34
+b(cumen)-34 b(t)757 b(is)f(empt)-34 b(y)-101 b(,)844
+b(or)756 b(the)g(cursor)g(is)g(placed)g(at)g(the)h(top)f(of)h(the)f(do)
+34 b(cumen)-34 b(t,)2000 36759 y(A)g(UCT)5332 37020 y(E)6007
+36759 y(X)438 b(will)g(default)i(to)f(insert)g(a)f(`)p
+Fu(document)p FC(')j(en)-34 b(vironmen)g(t)440 b(prompting)f(also)g
+(for)g(the)g(insertion)2000 38220 y(of)418 b(`)p Fu(\\documentclass)p
+FC(')k(and)c(`)p Fu(\\usepackage)p FC(')j(macros.)579
+b(Y)-101 b(ou)418 b(will)f(b)34 b(e)417 b(prompted)i(for)f(a)f(new)h
+(pac)-34 b(k)-67 b(age)2000 39681 y(un)-34 b(til)448
+b(y)-34 b(ou)449 b(en)-34 b(ter)447 b(nothing.)671 b(If)448
+b(y)-34 b(ou)448 b(do)g(not)g(w)-34 b(an)g(t)450 b(to)e(insert)f(an)-34
+b(y)448 b(`)p Fu(\\usepackage)p FC(')j(at)d(all,)458
+b(just)449 b(press)2000 41142 y Fu(RET)405 b FC(at)g(the)f(\014rst)h(`)
+p Fu(Packages)p FC(')h(prompt.)3660 42938 y(A)-34 b(UCT)6992
+43199 y(E)7667 42938 y(X)449 b(distinguishes)h(normal)f(and)g(exp)34
+b(ert)448 b(en)-34 b(vironmen)g(ts.)674 b(By)448 b(default,)461
+b(it)448 b(will)h(o\013er)f(com-)2000 44399 y(pletion)629
+b(only)f(for)g(normal)g(en)-34 b(vironmen)g(ts.)1212
+b(This)629 b(b)34 b(eha)-34 b(vior)628 b(is)g(con)-34
+b(trolled)628 b(b)-34 b(y)629 b(the)g(user)f(option)2000
+45861 y Fu(TeX-complete-expert-commands)p FC(.)42818
+48324 y([User)404 b(Option])-48000 b Fm(TeX-complete-expert-commands)
+5200 49785 y FC(Complete)405 b(macros)e(and)i(en)-34
+b(vironmen)g(ts)405 b(mark)-34 b(ed)405 b(as)f(exp)34
+b(ert)403 b(commands.)5200 51581 y(P)-34 b(ossible)404
+b(v)-67 b(alues)403 b(are)h(nil,)g(t,)g(or)g(a)g(list)g(of)g(st)-34
+b(yle)404 b(names.)5200 53710 y(nil)5053 b(Don't)404
+b(complete)g(exp)34 b(ert)404 b(commands)h(\(default\).)5200
+55838 y(t)5929 b(Alw)-34 b(a)g(ys)405 b(complete)f(exp)34
+b(ert)403 b(commands.)5200 57966 y(\()p Ft(st)-34 b(yles)528
+b FC(.)293 b(.)h(.)147 b(\))11600 59427 y(Only)404 b(complete)f(exp)34
+b(ert)404 b(commands)h(of)f Ft(st)-34 b(yles)p FC(.)3660
+61890 y(Y)-101 b(ou)369 b(can)f(close)f(the)i(curren)-34
+b(t)368 b(en)-34 b(vironmen)g(t)369 b(with)g Fs(C-c)405
+b(])p FC(,)375 b(but)369 b(w)-34 b(e)368 b(suggest)h(that)g(y)-34
+b(ou)369 b(use)f Fs(C-c)405 b(C-e)2000 63352 y FC(to)f(insert)h
+(complete)e(en)-34 b(vironmen)g(ts)406 b(instead.)43872
+65814 y([Command])-47999 b Fm(LaTeX-close-environment)5200
+67276 y FC(\()p Fs(C-c)405 b(])p FC(\))g(Insert)f(an)h(`)p
+Fu(\\end)p FC(')g(that)g(matc)-34 b(hes)405 b(the)f(curren)-34
+b(t)405 b(en)-34 b(vironmen)g(t.)3660 69738 y(A)g(UCT)6992
+69999 y(E)7667 69738 y(X)383 b(o\013ers)g(k)-34 b(eyb)34
+b(oard)383 b(shortcuts)h(for)g(mo)-34 b(ving)383 b(p)34
+b(oin)-34 b(t)384 b(to)g(the)f(b)34 b(eginning)384 b(and)g(to)f(the)h
+(end)g(of)2000 71200 y(the)405 b(curren)-34 b(t)404 b(en)-34
+b(vironmen)g(t.)p eop end
+%%Page: 28 33
+TeXDict begin 28 32 bop 2000 -1550 a FC(Chapter)405 b(2:)539
+b(Editing)404 b(the)h(Do)34 b(cumen)-34 b(t)405 b(Source)24828
+b(28)43872 3985 y([Command])-47999 b Fm(LaTeX-find-matching-begin)5200
+5446 y FC(\()p Fs(C-M-a)p FC(\))407 b(Mo)-34 b(v)g(e)404
+b(p)34 b(oin)-34 b(t)405 b(to)f(the)h(`)p Fu(\\begin)p
+FC(')g(of)g(the)f(curren)-34 b(t)405 b(en)-34 b(vironmen)g(t.)5200
+7300 y(If)450 b(this)i(command)f(is)f(called)g(inside)g(a)h(commen)-34
+b(t)451 b(and)h Fu(LaTeX-syntactic-comments)459 b FC(is)450
+b(en-)5200 8761 y(abled,)568 b(try)536 b(to)g(\014nd)h(the)f(en)-34
+b(vironmen)g(t)536 b(in)g(commen)-34 b(ted)537 b(regions)e(with)i(the)f
+(same)f(commen)-34 b(t)5200 10222 y(pre\014x.)43872 12800
+y([Command])-47999 b Fm(LaTeX-find-matching-end)5200
+14262 y FC(\()p Fs(C-M-e)p FC(\))407 b(Mo)-34 b(v)g(e)404
+b(p)34 b(oin)-34 b(t)405 b(to)f(the)h(`)p Fu(\\end)p
+FC(')g(of)f(the)h(curren)-34 b(t)404 b(en)-34 b(vironmen)g(t.)5200
+16115 y(If)450 b(this)i(command)f(is)f(called)g(inside)g(a)h(commen)-34
+b(t)451 b(and)h Fu(LaTeX-syntactic-comments)459 b FC(is)450
+b(en-)5200 17577 y(abled,)568 b(try)536 b(to)g(\014nd)h(the)f(en)-34
+b(vironmen)g(t)536 b(in)g(commen)-34 b(ted)537 b(regions)e(with)i(the)f
+(same)f(commen)-34 b(t)5200 19038 y(pre\014x.)2000 21755
+y Fq(2.4.1)818 b(Equations)2000 23714 y FC(When)453 b(inserting)f
+(equation-lik)-34 b(e)452 b(en)-34 b(vironmen)g(ts,)466
+b(the)452 b(`)p Fu(\\label)p FC(')i(will)e(ha)-34 b(v)g(e)453
+b(a)g(default)g(pre\014x,)464 b(whic)-34 b(h)2000 25175
+y(is)404 b(con)-34 b(trolled)404 b(b)-34 b(y)405 b(the)f(follo)-34
+b(wing)405 b(v)-67 b(ariables:)42818 27754 y([User)404
+b(Option])-48000 b Fm(LaTeX-equation-label)5200 29215
+y FC(Pre\014x)404 b(to)g(use)g(for)g(`equation')g(lab)34
+b(els.)42818 31793 y([User)404 b(Option])-48000 b Fm
+(LaTeX-eqnarray-label)5200 33254 y FC(Pre\014x)404 b(to)g(use)g(for)g
+(`eqnarra)-34 b(y')403 b(lab)34 b(els.)42818 35832 y([User)404
+b(Option])-48000 b Fm(LaTeX-amsmath-label)5200 37293
+y FC(Pre\014x)601 b(to)h(use)g(for)f(amsmath)i(equation)f(lab)34
+b(els.)1130 b(Amsmath)603 b(equations)f(include)f(`)p
+Fu(align)p FC(',)5200 38755 y(`)p Fu(alignat)p FC(',)406
+b(`)p Fu(xalignat)p FC(',)g(`)p Fu(multline)p FC(',)g(`)p
+Fu(flalign)p FC(')g(and)e(`)p Fu(gather)p FC('.)2000
+41472 y Fq(2.4.2)818 b(Floats)2000 43431 y FC(Figures)402
+b(and)h(tables)g(\(i.e.,)e(\015oats\))i(ma)-34 b(y)403
+b(also)f(b)34 b(e)402 b(inserted)g(using)h(A)-34 b(UCT)36421
+43692 y(E)37095 43431 y(X.)538 b(After)403 b(c)-34 b(ho)34
+b(osing)402 b(either)2000 44892 y(`\014gure')303 b(or)f(`table')h(in)g
+(the)g(en)-34 b(vironmen)g(t)304 b(list)e(describ)34
+b(ed)303 b(ab)34 b(o)-34 b(v)g(e,)323 b(y)-34 b(ou)303
+b(will)f(b)34 b(e)303 b(prompted)h(for)f(a)g(n)-34 b(um)g(b)34
+b(er)2000 46353 y(of)404 b(additional)h(things.)2000
+48569 y Ft(\015oat)g(p)34 b(osition)8400 50031 y FC(This)565
+b(is)f(the)h(optional)h(argumen)-34 b(t)565 b(of)g(\015oat)h(en)-34
+b(vironmen)g(ts)565 b(that)h(con)-34 b(trols)565 b(ho)-34
+b(w)566 b(they)8400 51492 y(are)535 b(placed)g(in)g(the)h(\014nal)f(do)
+34 b(cumen)-34 b(t.)933 b(In)536 b(L)29468 51335 y Fv(a)30029
+51492 y FC(T)30702 51753 y(E)31375 51492 y(X)f(this)h(is)f(a)g
+(sequence)g(of)h(the)f(letters)8400 52953 y(`)p Fu(htbp)p
+FC(')380 b(as)g(describ)34 b(ed)379 b(in)g(the)h(L)22575
+52796 y Fv(a)23136 52953 y FC(T)23809 53214 y(E)24482
+52953 y(X)g(man)-34 b(ual.)531 b(The)380 b(v)-67 b(alue)378
+b(will)h(default)h(to)g(the)g(v)-67 b(alue)379 b(of)8400
+54414 y Fu(LaTeX-float)p FC(.)2000 56600 y Ft(caption)2495
+b FC(This)541 b(is)e(the)i(caption)f(of)h(the)f(\015oat.)947
+b(The)541 b(default)g(is)f(to)g(insert)g(the)g(caption)h(at)f(the)8400
+58061 y(b)34 b(ottom)396 b(of)g(the)g(\015oat.)537 b(Y)-101
+b(ou)395 b(can)h(sp)34 b(ecify)395 b(\015oats)h(where)f(the)h(caption)g
+(should)h(b)34 b(e)395 b(placed)8400 59522 y(at)405 b(the)f(top)h(with)
+g Fu(LaTeX-top-caption-list)p FC(.)2000 61708 y Ft(short)g(caption)8400
+63169 y FC(If)471 b(the)h(sp)34 b(eci\014ed)471 b(caption)h(is)f
+(greater)f(than)j(a)e(sp)34 b(eci\014c)471 b(length,)488
+b(then)472 b(a)f(short)h(caption)8400 64630 y(is)479
+b(prompted)i(for)f(and)g(it)f(is)h(inserted)f(as)h(an)g(optional)g
+(argumen)-34 b(t)481 b(to)f(the)g(`)p Fu(\\caption)p
+FC(')8400 66092 y(macro.)892 b(The)523 b(length)g(that)g(a)g(caption)f
+(needs)h(to)g(b)34 b(e)521 b(b)34 b(efore)522 b(prompting)i(for)e(a)g
+(short)8400 67553 y(v)-34 b(ersion)404 b(is)g(con)-34
+b(trolled)404 b(b)-34 b(y)404 b Fu(LaTeX-short-caption-prompt-length)p
+FC(.)2000 69738 y Ft(lab)34 b(el)3874 b FC(The)402 b(lab)34
+b(el)400 b(of)i(this)g(\015oat.)538 b(The)402 b(lab)34
+b(el)401 b(will)f(ha)-34 b(v)g(e)402 b(a)g(default)g(pre\014x,)f(whic)
+-34 b(h)403 b(is)e(con)-34 b(trolled)8400 71200 y(b)g(y)405
+b(the)f(v)-67 b(ariables)403 b Fu(LaTeX-figure-label)410
+b FC(and)405 b Fu(LaTeX-table-label)p FC(.)p eop end
+%%Page: 29 34
+TeXDict begin 29 33 bop 2000 -1550 a FC(Chapter)405 b(2:)539
+b(Editing)404 b(the)h(Do)34 b(cumen)-34 b(t)405 b(Source)24828
+b(29)3660 3985 y(Moreo)-34 b(v)g(er,)565 b(y)-34 b(ou)534
+b(will)f(b)34 b(e)533 b(ask)-34 b(ed)534 b(if)g(y)-34
+b(ou)534 b(w)-34 b(an)g(t)535 b(the)f(con)-34 b(ten)g(ts)535
+b(of)f(the)g(\015oat)g(en)-34 b(vironmen)g(t)534 b(to)g(b)34
+b(e)2000 5446 y(horizon)-34 b(tally)359 b(cen)-34 b(tered.)524
+b(Up)34 b(on)359 b(a)g(p)34 b(ositiv)-34 b(e)359 b(answ)-34
+b(er)360 b(a)f(`)p Fu(\\centering)p FC(')j(macro)d(will)f(b)34
+b(e)359 b(inserted)g(at)g(the)2000 6907 y(b)34 b(eginning)405
+b(of)f(the)h(\015oat)g(en)-34 b(vironmen)g(t.)42818 9476
+y([User)404 b(Option])-48000 b Fm(LaTeX-float)5200 10938
+y FC(Default)405 b(placemen)-34 b(t)404 b(for)g(\015oats.)42818
+13507 y([User)g(Option])-48000 b Fm(LaTeX-figure-label)5200
+14968 y FC(Pre\014x)404 b(to)g(use)g(for)g(\014gure)h(lab)34
+b(els.)42818 17537 y([User)404 b(Option])-48000 b Fm(LaTeX-table-label)
+5200 18998 y FC(Pre\014x)404 b(to)g(use)g(for)g(table)h(lab)34
+b(els.)42818 21567 y([User)404 b(Option])-48000 b Fm
+(LaTeX-top-caption-list)5200 23028 y FC(List)404 b(of)g(\015oat)h(en)
+-34 b(vironmen)g(ts)405 b(with)g(top)g(caption.)42818
+25597 y([User)f(Option])-48000 b Fm(LaTeX-short-caption-prompt-length)
+5200 27059 y FC(Num)-34 b(b)34 b(er)404 b(of)h(c)-34
+b(hars)404 b(a)g(caption)h(should)g(b)34 b(e)404 b(b)34
+b(efore)404 b(prompting)h(for)f(a)h(short)f(caption.)2000
+29771 y Fq(2.4.3)818 b(Itemize-lik)-45 b(e)543 b(En)-45
+b(vironmen)g(ts)2000 31730 y FC(In)404 b(an)h(itemize-lik)-34
+b(e)402 b(en)-34 b(vironmen)g(t,)405 b(no)34 b(des)404
+b(\(i.e.,)f(`)p Fu(\\item)p FC('s\))j(ma)-34 b(y)404
+b(b)34 b(e)404 b(inserted)g(using)h Fs(C-c)g(LFD)p FC(.)43872
+34299 y([Command])-47999 b Fm(LaTeX-insert-item)5200
+35761 y FC(\()p Fs(C-c)405 b(LFD)p FC(\))506 b(Close)e(the)g(curren)-34
+b(t)504 b(item,)528 b(mo)-34 b(v)g(e)505 b(to)f(the)g(next)g(line)f
+(and)i(insert)f(an)g(appropriate)5200 37222 y(`)p Fu(\\item)p
+FC(')548 b(for)g(the)g(curren)-34 b(t)547 b(en)-34 b(vironmen)g(t.)969
+b(That)549 b(is,)583 b(`itemize')545 b(and)j(`en)-34
+b(umerate')548 b(will)e(ha)-34 b(v)g(e)5200 38683 y(`)p
+Fu(\\item)405 b FC(')f(inserted,)g(while)g(`description')g(will)f(ha)
+-34 b(v)g(e)405 b(`)p Fu(\\item[])h FC(')e(inserted.)42818
+41252 y([User)g(Option])-48000 b Fm(TeX-arg-item-label-p)5200
+42713 y FC(If)456 b(non-nil,)470 b(y)-34 b(ou)457 b(will)e(alw)-34
+b(a)g(ys)457 b(b)34 b(e)456 b(ask)-34 b(ed)457 b(for)f(optional)h(lab)
+34 b(el)456 b(in)g(items.)695 b(Otherwise,)469 b(y)-34
+b(ou)456 b(will)5200 44174 y(b)34 b(e)404 b(ask)-34 b(ed)404
+b(only)g(in)g(description)h(en)-34 b(vironmen)g(ts.)2000
+46887 y Fq(2.4.4)818 b(T)-136 b(abular-lik)-45 b(e)544
+b(En)-45 b(vironmen)g(ts)2000 48846 y FC(When)704 b(inserting)f(T)-101
+b(abular-lik)-34 b(e)703 b(en)-34 b(vironmen)g(ts,)779
+b(that)704 b(is,)778 b(`tabular')703 b(`arra)-34 b(y')703
+b(etc.,)777 b(y)-34 b(ou)703 b(will)g(b)34 b(e)2000 50307
+y(prompted)405 b(for)f(a)h(template)f(for)g(that)i(en)-34
+b(vironmen)g(t.)539 b(Related)404 b(v)-67 b(ariables:)42818
+52876 y([User)404 b(Option])-48000 b Fm(LaTeX-default-format)5200
+54338 y FC(Default)405 b(format)f(string)h(for)f(arra)-34
+b(y)404 b(and)h(tabular)f(en)-34 b(vironmen)g(ts.)42818
+56907 y([User)404 b(Option])-48000 b Fm(LaTeX-default-width)5200
+58368 y FC(Default)405 b(width)g(for)f(minipage)g(and)h(tabular*)g(en)
+-34 b(vironmen)g(ts.)42818 60937 y([User)404 b(Option])-48000
+b Fm(LaTeX-default-position)5200 62398 y FC(Default)399
+b(p)34 b(osition)398 b(string)h(for)f(arra)-34 b(y)398
+b(and)h(tabular)g(en)-34 b(vironmen)g(ts.)537 b(If)398
+b(nil,)h(act)f(lik)-34 b(e)398 b(the)g(empt)-34 b(y)5200
+63859 y(string)404 b(is)g(giv)-34 b(en,)404 b(but)h(don't)g(prompt)g
+(for)g(a)f(p)34 b(osition.)3660 66428 y(A)-34 b(UCT)6992
+66689 y(E)7667 66428 y(X)395 b(calculates)g(the)h(n)-34
+b(um)g(b)34 b(er)396 b(of)g(columns)g(from)f(the)h(format)g(string)f
+(and)h(inserts)g(the)f(suit-)2000 67889 y(able)404 b(n)-34
+b(um)g(b)34 b(er)405 b(of)g(amp)34 b(ersands.)3660 69738
+y(Y)-101 b(ou)364 b(can)g(use)f Fs(C-c)405 b(LFD)365
+b FC(\()p Fu(LaTeX-insert-item)p FC(\))370 b(to)363 b(terminate)h(ro)
+-34 b(ws)364 b(in)f(these)h(en)-34 b(vironmen)g(ts.)526
+b(It)2000 71200 y(supplies)436 b(line)e(break)h(macro)g(`)p
+Fu(\\\\)p FC(')g(and)h(inserts)f(the)h(suitable)f(n)-34
+b(um)g(b)34 b(er)436 b(of)g(amp)34 b(ersands)436 b(on)f(the)h(next)p
+eop end
+%%Page: 30 35
+TeXDict begin 30 34 bop 2000 -1550 a FC(Chapter)405 b(2:)539
+b(Editing)404 b(the)h(Do)34 b(cumen)-34 b(t)405 b(Source)24828
+b(30)2000 3985 y(line.)534 b(A)-34 b(UCT)8089 4246 y(E)8763
+3985 y(X)392 b(also)f(supp)34 b(orts)393 b(the)f(`)p
+Fu(*{num}{cols})p FC(')j(notation)d(\(whic)-34 b(h)393
+b(ma)-34 b(y)392 b(con)-34 b(tain)392 b(another)g(`)p
+Fu(*)p FC('-)2000 5446 y(expression\))439 b(in)g(the)g(format)g(string)
+g(when)h(calculating)e(the)i(n)-34 b(um)g(b)34 b(er)439
+b(of)g(amp)34 b(ersands.)644 b(Please)437 b(note)2000
+6907 y(that)424 b(`)p Fu(num)p FC(')f(and)g(`)p Fu(cols)p
+FC(')h(m)-34 b(ust)424 b(b)34 b(e)422 b(enclosed)h(in)f(braces;)432
+b(expressions)422 b(lik)-34 b(e)422 b(`)p Fu(*2l)p FC(')h(are)f(not)i
+(recognized)2000 8369 y(correctly)403 b(b)-34 b(y)404
+b(the)h(algorithm.)43872 10752 y([Command])-47999 b Fm
+(LaTeX-insert-item)5200 12213 y FC(\()p Fs(C-c)405 b(LFD)p
+FC(\))361 b(Close)f(the)g(curren)-34 b(t)360 b(ro)-34
+b(w)360 b(with)h(`)p Fu(\\\\)p FC(',)368 b(mo)-34 b(v)g(e)360
+b(to)g(the)g(next)g(line)f(and)i(insert)e(an)h(appro-)5200
+13674 y(priate)404 b(n)-34 b(um)g(b)34 b(er)405 b(of)g(amp)34
+b(ersands)404 b(for)h(the)f(curren)-34 b(t)405 b(en)-34
+b(vironmen)g(t.)3660 16057 y(Similar)709 b(supp)34 b(orts)711
+b(are)e(pro)-34 b(vided)710 b(for)f(v)-67 b(arious)709
+b(amsmath)i(en)-34 b(vironmen)g(ts)710 b(suc)-34 b(h)711
+b(as)e(`)p Fu(align)p FC(',)2000 17518 y(`)p Fu(gather)p
+FC(',)564 b(`)p Fu(alignat)p FC(',)g(`)p Fu(matrix)p
+FC(')533 b(etc.)918 b(T)-101 b(ry)531 b(t)-34 b(yping)532
+b Fs(C-c)405 b(LFD)532 b FC(in)f(these)g(en)-34 b(vironmen)g(ts.)921
+b(It)531 b(recog-)2000 18979 y(nizes)404 b(the)g(curren)-34
+b(t)405 b(en)-34 b(vironmen)g(t)405 b(and)g(do)34 b(es)404
+b(the)g(appropriate)h(job)g(dep)34 b(ending)405 b(on)f(the)h(con)-34
+b(text.)2000 21586 y Fq(2.4.5)818 b(Customizing)545 b(En)-45
+b(vironmen)g(ts)2000 23546 y FC(See)439 b(Section)h(5.6.3)g([Adding)g
+(En)-34 b(vironmen)g(ts],)449 b(page)440 b(86,)448 b(for)440
+b(ho)-34 b(w)441 b(to)f(customize)f(the)h(list)g(of)g(kno)-34
+b(wn)2000 25007 y(en)g(vironmen)g(ts.)2000 28168 y FB(2.5)896
+b(En)-50 b(tering)599 b(Mathematics)2000 30293 y FC(T)2673
+30554 y(E)3347 30293 y(X)384 b(is)g(written)h(b)-34 b(y)384
+b(a)g(mathematician,)389 b(and)c(has)f(alw)-34 b(a)g(ys)385
+b(con)-34 b(tained)385 b(go)34 b(o)g(d)384 b(supp)34
+b(ort)385 b(for)g(formatting)2000 31754 y(mathematical)415
+b(text.)569 b(A)-34 b(UCT)15979 32015 y(E)16653 31754
+y(X)415 b(supp)34 b(orts)415 b(this)g(tradition,)i(b)-34
+b(y)415 b(o\013ering)f(a)g(sp)34 b(ecial)413 b(minor)i(mo)34
+b(de)414 b(for)2000 33215 y(en)-34 b(tering)394 b(text)g(with)h(man)-34
+b(y)394 b(mathematical)g(sym)-34 b(b)34 b(ols.)535 b(Y)-101
+b(ou)394 b(can)g(en)-34 b(ter)394 b(this)g(mo)34 b(de)394
+b(b)-34 b(y)394 b(t)-34 b(yping)395 b Fs(C-c)405 b Fu(~)p
+FC(.)43872 35598 y([Command])-47999 b Fm(LaTeX-math-mode)5200
+37059 y FC(\()p Fs(C-c)405 b Fu(~)p FC(\))766 b(T)-101
+b(oggle)765 b(L)14412 36902 y Fv(a)14973 37059 y FC(T)15646
+37320 y(E)16320 37059 y(X)g(Math)h(mo)34 b(de.)1622 b(This)766
+b(is)f(a)g(minor)g(mo)34 b(de)765 b(rebinding)h(the)f(k)-34
+b(ey)5200 38521 y Fu(LaTeX-math-abbrev-prefix)509 b FC(to)501
+b(allo)-34 b(w)500 b(easy)g(t)-34 b(yping)502 b(of)e(mathematical)h
+(sym)-34 b(b)34 b(ols.)828 b Fs(`)500 b FC(will)5200
+39982 y(read)286 b(a)h(c)-34 b(haracter)286 b(from)h(the)f(k)-34
+b(eyb)34 b(oard,)310 b(and)287 b(insert)g(the)f(sym)-34
+b(b)34 b(ol)287 b(as)f(sp)34 b(eci\014ed)287 b(in)f Fu(LaTeX-math-)5200
+41443 y(default)435 b FC(and)e Fu(LaTeX-math-list)p FC(.)630
+b(If)432 b(giv)-34 b(en)433 b(a)f(pre\014x)h(argumen)-34
+b(t,)441 b(the)433 b(sym)-34 b(b)34 b(ol)432 b(will)g(b)34
+b(e)433 b(sur-)5200 42904 y(rounded)405 b(b)-34 b(y)405
+b(dollar)e(signs.)3660 45287 y(Y)-101 b(ou)609 b(can)e(use)h(another)g
+(pre\014x)g(k)-34 b(ey)607 b(\(instead)i(of)f Fs(`)p
+FC(\))g(b)-34 b(y)608 b(setting)h(the)f(v)-67 b(ariable)606
+b Fu(LaTeX-math-)2000 46748 y(abbrev-prefix)p FC(.)3660
+48517 y(T)-101 b(o)280 b(enable)f(L)9288 48360 y Fv(a)9849
+48517 y FC(T)10522 48778 y(E)11195 48517 y(X)g(Math)h(mo)34
+b(de)279 b(b)-34 b(y)279 b(default,)305 b(add)280 b(the)f(follo)-34
+b(wing)280 b(in)f(y)-34 b(our)279 b(init)g(\014le)g(suc)-34
+b(h)279 b(as)h Fu(init.el)2000 49978 y FC(or)404 b Fu(.emacs)p
+FC(:)5200 51747 y Fu(\(add-hook)640 b('LaTeX-mode-hook)i
+(#'LaTeX-math-mode\))42818 54130 y FC([User)404 b(Option])-48000
+b Fm(LaTeX-math-abbrev-prefix)5200 55591 y FC(A)354 b(string)g(con)-34
+b(taining)355 b(the)f(pre\014x)g(of)g Fu(LaTeX-math-mode)359
+b FC(commands;)371 b(This)355 b(v)-67 b(alue)353 b(defaults)i(to)5200
+57052 y Fs(`)p FC(.)5200 58820 y(The)364 b(string)g(has)g(to)g(b)34
+b(e)364 b(a)f(k)-34 b(ey)363 b(or)h(k)-34 b(ey)363 b(sequence)g(in)g(a)
+h(format)g(understo)34 b(o)g(d)365 b(b)-34 b(y)364 b(the)g
+Fu(kbd)h FC(macro.)5200 60282 y(This)405 b(corresp)34
+b(onds)404 b(to)g(the)h(syn)-34 b(tax)405 b(usually)f(used)g(in)h(the)f
+(man)-34 b(uals)405 b(for)g(Emacs)f(Lisp.)3660 62665
+y(The)h(v)-67 b(ariable)403 b Fu(LaTeX-math-list)409
+b FC(allo)-34 b(ws)405 b(y)-34 b(ou)404 b(to)h(add)g(y)-34
+b(our)404 b(o)-34 b(wn)405 b(mappings.)42818 65048 y([User)f(Option])
+-48000 b Fm(LaTeX-math-list)5200 66509 y FC(A)441 b(list)g(con)-34
+b(taining)442 b(user-de\014ned)g(k)-34 b(eys)440 b(and)i(commands)g(to)
+g(b)34 b(e)440 b(used)i(in)f(L)40241 66352 y Fv(a)40802
+66509 y FC(T)41475 66770 y(E)42148 66509 y(X)g(Math)h(mo)34
+b(de.)5200 67970 y(Eac)-34 b(h)404 b(en)-34 b(try)405
+b(should)g(b)34 b(e)404 b(a)g(list)g(of)g(t)-34 b(w)g(o)406
+b(to)e(four)h(elemen)-34 b(ts.)5200 69738 y(First,)384
+b(the)379 b(k)-34 b(ey)378 b(to)h(b)34 b(e)379 b(used)g(after)g
+Fu(LaTeX-math-abbrev-prefix)387 b FC(for)379 b(macro)f(insertion.)530
+b(The)5200 71200 y(k)-34 b(ey)492 b(can)h(b)34 b(e)493
+b(a)g(c)-34 b(haracter)493 b(\(e.g.)f(`)p Fu(?o)p FC('\))i(for)f(a)g
+(single)f(strok)-34 b(e)493 b(or)g(a)g(string)g(\(e.g.)g(`)p
+Fu("o)404 b(a")p FC('\))494 b(for)f(a)p eop end
+%%Page: 31 36
+TeXDict begin 31 35 bop 2000 -1550 a FC(Chapter)405 b(2:)539
+b(Editing)404 b(the)h(Do)34 b(cumen)-34 b(t)405 b(Source)24828
+b(31)5200 3985 y(m)-34 b(ulti-strok)g(e)309 b(binding.)508
+b(If)309 b(it)f(is)h(nil,)327 b(the)309 b(sym)-34 b(b)34
+b(ol)309 b(has)g(no)g(asso)34 b(ciated)308 b(k)-34 b(eystrok)g(e)308
+b(\(it)h(is)g(a)-34 b(v)-67 b(ailable)5200 5446 y(in)404
+b(the)h(men)-34 b(u,)404 b(though\).)5200 7342 y(Second,)g(a)g(string)h
+(represen)-34 b(ting)404 b(the)h(name)f(of)h(the)f(macro)g(\(without)i
+(a)e(leading)g(bac)-34 b(kslash.\))5200 9238 y(Third,)466
+b(a)453 b(string)h(represen)-34 b(ting)453 b(the)h(name)g(of)f(a)h
+(submen)-34 b(u)455 b(the)f(command)g(should)g(b)34 b(e)453
+b(added)5200 10699 y(to.)539 b(Use)404 b(a)g(list)g(of)g(strings)h(in)f
+(case)g(of)g(nested)h(men)-34 b(us.)5200 12595 y(F)-101
+b(ourth,)360 b(the)349 b(p)34 b(osition)349 b(of)g(a)f(Unico)34
+b(de)348 b(c)-34 b(haracter)348 b(to)h(b)34 b(e)348 b(displa)-34
+b(y)g(ed)349 b(in)g(the)g(men)-34 b(u)349 b(alongside)f(the)5200
+14056 y(macro)404 b(name.)538 b(This)405 b(is)f(an)g(in)-34
+b(teger)405 b(v)-67 b(alue.)42818 16719 y([User)404 b(Option])-48000
+b Fm(LaTeX-math-menu-unicode)5200 18180 y FC(Whether)327
+b(the)h(L)12476 18023 y Fv(a)13037 18180 y FC(T)13710
+18441 y(E)14384 18180 y(X)f(Math)h(men)-34 b(u)328 b(should)g(try)f
+(using)h(Unico)34 b(de)327 b(for)g(e\013ect.)513 b(Y)-101
+b(our)327 b(Emacs)g(built)5200 19641 y(m)-34 b(ust)405
+b(b)34 b(e)404 b(able)g(to)h(displa)-34 b(y)404 b(include)g(Unico)34
+b(de)404 b(c)-34 b(haracters)404 b(in)g(men)-34 b(us)405
+b(for)f(this)h(feature.)3660 22304 y(A)-34 b(UCT)6992
+22565 y(E)7667 22304 y(X's)404 b(reference)f(card)h Fu(tex-ref.tex)k
+FC(includes)c(a)g(list)g(of)h(all)e(math)i(mo)34 b(de)404
+b(commands.)3660 24200 y(A)-34 b(UCT)6992 24461 y(E)7667
+24200 y(X)593 b(can)g(help)f(y)-34 b(ou)593 b(write)g(subscripts)h(and)
+f(sup)34 b(erscripts)593 b(in)f(math)i(constructs)f(b)-34
+b(y)593 b(au-)2000 25661 y(tomatically)533 b(inserting)g(a)g(pair)g(of)
+g(braces)g(after)g(t)-34 b(yping)534 b Fu(_)f FC(or)g
+Fu(^)g FC(resp)34 b(ectiv)-34 b(ely)532 b(and)h(putting)i(p)34
+b(oin)-34 b(t)2000 27122 y(b)34 b(et)-34 b(w)g(een)474
+b(the)g(braces.)745 b(In)473 b(order)g(to)g(enable)g(this)h(feature,)
+490 b(set)474 b(the)f(v)-67 b(ariable)472 b Fu(TeX-electric-sub-)2000
+28583 y(and-superscript)409 b FC(to)c(a)f(non-nil)h(v)-67
+b(alue.)42818 31246 y([User)404 b(Option])-48000 b Fm
+(TeX-electric-sub-and-superscript)5200 32707 y FC(If)404
+b(non-nil,)h(insert)f(braces)f(after)i(t)-34 b(yping)405
+b Fu(^)f FC(and)h Fu(_)g FC(in)f(math)h(mo)34 b(de.)3660
+35370 y(Y)-101 b(ou)379 b(can)g(automatically)g(turn)g(o\013)g(input)g
+(metho)34 b(ds,)384 b(used)379 b(to)g(input)h(non-ascii)f(c)-34
+b(haracters,)383 b(when)2000 36831 y(y)-34 b(ou)405 b(b)34
+b(egin)404 b(to)g(en)-34 b(ter)404 b(math)h(constructs.)42818
+39494 y([User)f(Option])-48000 b Fm(TeX-math-input-method-off-regexp)
+5200 40955 y FC(Input)367 b(metho)34 b(d)367 b(matc)-34
+b(hing)367 b(this)g(regular)e(expression)h(is)f(turned)i(o\013)f(when)h
+Ft($)f FC(is)g(t)-34 b(yp)34 b(ed)367 b(to)f(b)34 b(egin)5200
+42416 y(math)405 b(mo)34 b(de)404 b(or)g(a)g(math)h(en)-34
+b(vironmen)g(t)405 b(is)f(inserted)g(b)-34 b(y)405 b
+Fs(C-c)g(C-e)g FC(\()p Fu(LaTeX-environment)p FC(\).)2000
+45780 y FB(2.6)896 b(Completion)2000 47905 y FC(Emacs)422
+b(lisp)h(programmers)f(probably)h(kno)-34 b(w)423 b(the)g
+Fu(lisp-complete-symbol)429 b FC(command)424 b(whic)-34
+b(h)423 b(w)-34 b(as)2000 49367 y(b)34 b(ound)340 b(to)f
+Fs(M-TAB)h FC(un)-34 b(til)340 b(completion-at-p)34 b(oin)-34
+b(t)340 b(b)34 b(ecame)338 b(the)h(new)g(standard)h(completion)f
+(facilit)-34 b(y)338 b(\(see)2000 50828 y(b)34 b(elo)-34
+b(w\).)1019 b(Users)564 b(of)h(the)f(w)-34 b(onderful)566
+b(isp)34 b(ell)563 b(mo)34 b(de)564 b(kno)-34 b(w)565
+b(and)g(lo)-34 b(v)g(e)564 b(the)h Fu(ispell-complete-word)2000
+52289 y FC(command)420 b(from)g(that)g(pac)-34 b(k)-67
+b(age.)584 b(Similarly)-101 b(,)422 b(A)-34 b(UCT)26830
+52550 y(E)27505 52289 y(X)419 b(has)h(a)f Fu(TeX-complete-symbol)426
+b FC(command,)2000 53750 y(b)-34 b(y)555 b(default)h(b)34
+b(ound)555 b(to)g Fs(M-TAB)i FC(whic)-34 b(h)555 b(is)g(equiv)-67
+b(alen)-34 b(t)554 b(to)h Fs(C-M-i)p FC(.)991 b(Using)555
+b Fu(TeX-complete-symbol)2000 55211 y FC(mak)-34 b(es)404
+b(it)g(easier)f(to)i(t)-34 b(yp)34 b(e)404 b(and)h(remem)-34
+b(b)34 b(er)403 b(the)i(names)f(of)h(long)f(L)32588 55054
+y Fv(a)33149 55211 y FC(T)33822 55472 y(E)34496 55211
+y(X)g(macros.)3660 57107 y(In)346 b(order)e(to)i(use)f
+Fu(TeX-complete-symbol)p FC(,)363 b(y)-34 b(ou)346 b(should)g(write)f
+(a)g(bac)-34 b(kslash)345 b(and)h(the)f(start)h(of)f(the)2000
+58568 y(macro.)689 b(T)-34 b(yping)456 b Fs(M-TAB)g FC(will)e(no)-34
+b(w)455 b(complete)f(as)h(m)-34 b(uc)g(h)456 b(of)f(the)f(macro,)467
+b(as)454 b(it)h(unam)-34 b(biguously)456 b(can.)2000
+60030 y(F)-101 b(or)420 b(example,)k(if)c(y)-34 b(ou)421
+b(t)-34 b(yp)34 b(e)420 b(``)p Fu(\\renewc)p FC('')i(and)f(then)g
+Fs(M-TAB)p FC(,)426 b(it)420 b(will)g(expand)h(to)g(``)p
+Fu(\\renewcommand)p FC(''.)2000 61491 y(But)341 b(there's)g(more:)506
+b(if)341 b(p)34 b(oin)-34 b(t)342 b(is)f(just)h(after)f(`)p
+Fu(\\begin{)p FC(',)355 b(then)342 b Fu(TeX-complete-symbol)348
+b FC(will)340 b(complete)2000 62952 y(L)2322 62795 y
+Fv(a)2883 62952 y FC(T)3556 63213 y(E)4230 62952 y(X)404
+b(en)-34 b(vironmen)g(ts,)405 b(etc.)538 b(This)405 b(is)e(con)-34
+b(trolled)405 b(b)-34 b(y)404 b Fu(TeX-complete-list)p
+FC(.)43872 65615 y([Command])-47999 b Fm(TeX-complete-symbol)5200
+67076 y FC(\()p Fs(M-TAB)p FC(\))407 b(Complete)d(T)15856
+67337 y(E)16530 67076 y(X)g(sym)-34 b(b)34 b(ol)404 b(b)34
+b(efore)404 b(p)34 b(oin)-34 b(t.)44946 69738 y([V)-101
+b(ariable])-48001 b Fm(TeX-complete-list)5200 71200 y
+FC(List)404 b(of)g(w)-34 b(a)g(ys)405 b(to)g(complete)f(the)g
+(preceding)g(text.)p eop end
+%%Page: 32 37
+TeXDict begin 32 36 bop 2000 -1550 a FC(Chapter)405 b(2:)539
+b(Editing)404 b(the)h(Do)34 b(cumen)-34 b(t)405 b(Source)24828
+b(32)5200 3985 y(Eac)-34 b(h)404 b(en)-34 b(try)405 b(is)f(a)g(list)g
+(with)h(the)f(follo)-34 b(wing)405 b(elemen)-34 b(ts:)5857
+5729 y(1.)800 b(Regexp)381 b(matc)-34 b(hing)381 b(the)h(preceding)e
+(text)h(or)f(a)h(predicate)g(of)g(arit)-34 b(y)381 b(0)f(whic)-34
+b(h)382 b(returns)f(non-)7600 7190 y(nil)404 b(and)h(sets)f(`matc)-34
+b(h-data')405 b(appropriately)g(if)f(it)g(is)g(applicable.)5857
+8934 y(2.)800 b(A)404 b(n)-34 b(um)g(b)34 b(er)405 b(indicating)g(the)f
+(subgroup)i(in)e(the)h(regexp)e(con)-34 b(taining)405
+b(the)g(text.)5857 10678 y(3.)800 b(A)404 b(function)i(returning)e(an)h
+(alist)f(of)g(p)34 b(ossible)404 b(completions.)5857
+12422 y(4.)800 b(T)-101 b(ext)404 b(to)h(app)34 b(end)405
+b(after)f(a)g(succesful)h(completion.)5200 14449 y(Or)f(alternativ)-34
+b(ely:)5857 16193 y(1.)800 b(Regexp)404 b(matc)-34 b(hing)405
+b(the)g(preceding)f(text.)5857 17937 y(2.)800 b(F)-101
+b(unction)405 b(to)g(do)f(the)h(actual)f(completion.)3660
+20247 y(More)701 b(recen)-34 b(t)700 b(Emacs)h(v)-34
+b(ersions)700 b(ha)-34 b(v)g(e)701 b(a)g(new)g(completion)g(mec)-34
+b(hanism.)1428 b(Mo)34 b(des)701 b(ma)-34 b(y)701 b(de-)2000
+21708 y(\014ne)718 b(and)h(register)e(custom)i Fu(completion-at-point)
+724 b FC(functions)c(and)f(when)f(the)h(user)f(in)-34
+b(v)g(ok)g(es)2000 23169 y Fu(completion-at-point)591
+b FC(\(usually)585 b(b)34 b(ound)586 b(to)f Fs(M-TAB)p
+FC(\),)631 b(all)584 b(suc)-34 b(h)585 b(registered)f(functions)i(are)e
+(con-)2000 24630 y(sulted)509 b(for)g(c)-34 b(hec)g(king)508
+b(for)h(p)34 b(ossible)508 b(completions.)853 b(Mo)34
+b(dern)508 b(completion)h(UIs)f(lik)-34 b(e)508 b Fo(c)-62
+b(omp)g(any-mo)g(de)2000 26091 y FC(supp)34 b(ort)405
+b(this)g(completion-at-p)34 b(oin)-34 b(t)406 b(facilit)-34
+b(y)-101 b(.)44663 28401 y([F)g(unction])-47999 b Fm
+(TeX--completion-at-point)5200 29862 y FC(A)-34 b(UCT)8532
+30123 y(E)9207 29862 y(X's)1275 b(completion-at-p)34
+b(oin)-34 b(t)1277 b(function)g(whic)-34 b(h)1276 b(is)g(automatically)
+f(added)i(to)5200 31323 y Fu(completion-at-point-functions)414
+b FC(in)404 b(T)26145 31584 y(E)26819 31323 y(X)g(and)h(L)30811
+31166 y Fv(a)31372 31323 y FC(T)32045 31584 y(E)32719
+31323 y(X)f(bu\013ers.)5200 33067 y(It)739 b(o\013ers)g(the)h(same)f
+(completion)g(candidates)h(as)f(w)-34 b(ould)741 b Fu
+(TeX-complete-symbol)746 b FC(\(and)5200 34529 y(is)779
+b(also)g(con)-34 b(trolled)780 b(b)-34 b(y)779 b Fu(TeX-complete-list)p
+FC(\))786 b(except)779 b(that)h(it)f(do)34 b(esn't)780
+b(fall)f(bac)-34 b(k)780 b(on)5200 35990 y Fu(ispell-complete-word)359
+b FC(whic)-34 b(h)353 b(w)-34 b(ould)354 b(b)34 b(e)352
+b(a)-34 b(wkw)g(ard)354 b(with)f(completion)f(UIs)g(lik)-34
+b(e)352 b Fo(c)-62 b(omp)g(any-)5200 37451 y(mo)g(de)p
+FC(.)3660 39761 y(A)574 b(more)f(direct)g(w)-34 b(a)g(y)575
+b(to)f(insert)f(a)h(macro)f(is)g(with)i Fu(TeX-insert-macro)p
+FC(,)621 b(b)34 b(ound)575 b(to)f Fs(C-c)405 b(C-m)2000
+41222 y FC(whic)-34 b(h)427 b(is)f(equiv)-67 b(alen)-34
+b(t)426 b(to)g Fs(C-c)405 b(RET)p FC(.)606 b(It)426 b(has)h(the)g(adv)
+-67 b(an)-34 b(tage)427 b(o)-34 b(v)g(er)426 b(completion)g(that)i(it)e
+(kno)-34 b(ws)427 b(ab)34 b(out)2000 42683 y(the)510
+b(argumen)-34 b(t)511 b(of)f(most)g(standard)h(L)19772
+42526 y Fv(a)20333 42683 y FC(T)21006 42944 y(E)21679
+42683 y(X)f(macros,)535 b(and)510 b(will)f(prompt)i(for)f(them.)855
+b(It)510 b(also)f(kno)-34 b(ws)2000 44144 y(ab)34 b(out)455
+b(the)g(t)-34 b(yp)34 b(e)455 b(of)g(the)g(argumen)-34
+b(ts,)468 b(so)454 b(it)h(will)e(for)i(example)f(giv)-34
+b(e)454 b(completion)g(for)h(the)g(argumen)-34 b(t)2000
+45605 y(to)404 b(`)p Fu(\\include)p FC('.)541 b(Some)404
+b(examples)g(are)g(listed)g(b)34 b(elo)-34 b(w.)43872
+47915 y([Command])-47999 b Fm(TeX-insert-macro)5200 49376
+y FC(\()p Fs(C-c)405 b(C-m)451 b FC(or)e Fs(C-c)405 b(RET)p
+FC(\))451 b(Prompt)f(\(with)h(completion\))f(for)g(the)g(name)f(of)h(a)
+g(T)41982 49637 y(E)42655 49376 y(X)g(macro,)460 b(and)5200
+50837 y(if)404 b(A)-34 b(UCT)9643 51098 y(E)10318 50837
+y(X)404 b(kno)-34 b(ws)405 b(the)g(macro,)e(prompt)i(for)f(eac)-34
+b(h)405 b(argumen)-34 b(t.)3660 53147 y(As)311 b(a)f(default)h
+(selection,)328 b(A)-34 b(UCT)18770 53408 y(E)19445 53147
+y(X)310 b(will)g(suggest)h(the)g(macro)e(last)i(inserted)f(or,)329
+b(as)310 b(the)h(\014rst)f(c)-34 b(hoice)2000 54608 y(the)405
+b(v)-67 b(alue)403 b(of)h(the)h(v)-67 b(ariable)403 b
+Fu(TeX-default-macro)p FC(.)42818 56918 y([User)h(Option])-48000
+b Fm(TeX-default-macro)5200 58379 y FC(Default)405 b(macro)e(to)i
+(insert)f(when)h(in)-34 b(v)g(oking)404 b Fu(TeX-insert-macro)410
+b FC(\014rst)405 b(time.)42818 60689 y([User)f(Option])-48000
+b Fm(TeX-insert-macro-default-style)5200 62150 y FC(Sp)34
+b(eci\014es)404 b(whether)h Fu(TeX-insert-macro)k FC(will)404
+b(ask)g(for)g(all)g(optional)g(argumen)-34 b(ts.)5200
+63894 y(If)457 b(set)f(to)h(the)g(sym)-34 b(b)34 b(ol)457
+b Fu(show-optional-args)p FC(,)475 b Fu(TeX-insert-macro)463
+b FC(asks)456 b(for)h(optional)g(ar-)5200 65355 y(gumen)-34
+b(ts)525 b(of)f(T)12314 65616 y(E)12988 65355 y(X)g(marcos,)553
+b(unless)524 b(the)g(previous)f(optional)i(argumen)-34
+b(t)525 b(has)f(b)34 b(een)524 b(rejected.)5200 66816
+y(If)541 b(set)g(to)g Fu(show-all-optional-args)p FC(,)583
+b Fu(TeX-insert-macro)546 b FC(asks)541 b(for)g(all)f(optional)i(argu-)
+5200 68277 y(men)-34 b(ts.)967 b Fu(mandatory-args-only)p
+FC(,)589 b Fu(TeX-insert-macro)552 b FC(asks)547 b(only)f(for)h
+(mandatory)h(argu-)5200 69738 y(men)-34 b(ts.)538 b(When)399
+b Fu(TeX-insert-macro)405 b FC(is)399 b(called)g(with)h(pre\014x)g
+(argumen)-34 b(t)400 b(\()p Fs(C-u)p FC(\),)i(it's)d(the)h(other)5200
+71200 y(w)-34 b(a)g(y)405 b(round.)p eop end
+%%Page: 33 38
+TeXDict begin 33 37 bop 2000 -1550 a FC(Chapter)405 b(2:)539
+b(Editing)404 b(the)h(Do)34 b(cumen)-34 b(t)405 b(Source)24828
+b(33)5200 3985 y(Note)348 b(that)i(for)e(some)g(macros,)359
+b(there)348 b(are)g(sp)34 b(ecial)347 b(mec)-34 b(hanisms,)360
+b(e.g.)347 b Fu(TeX-arg-cite-note-p)5200 5446 y FC(and)405
+b Fu(LaTeX-includegraphics-options-alist)p FC(.)3660
+8036 y(A)g(faster)f(alternativ)-34 b(e)404 b(is)g(to)g(enable)g(the)h
+(option)g Fu(TeX-electric-escape)p FC(.)42818 10626 y([User)f(Option])
+-48000 b Fm(TeX-electric-escape)5200 12088 y FC(If)681
+b(this)g(is)f(non-nil,)751 b(t)-34 b(yping)681 b(the)h(T)22700
+12348 y(E)23373 12088 y(X)f(escap)34 b(e)680 b(c)-34
+b(haracter)681 b Fu(\\)g FC(will)f(in)-34 b(v)g(ok)g(e)681
+b(the)g(command)5200 13549 y Fu(TeX-electric-macro)p
+FC(.)5200 15408 y(In)404 b(T)-101 b(exinfo)405 b(mo)34
+b(de,)403 b(the)i(command)g(is)f(in)-34 b(v)g(ok)g(ed)404
+b(b)-34 b(y)405 b Fs(@)f FC(instead.)3660 17998 y(The)413
+b(di\013erence)f(b)34 b(et)-34 b(w)g(een)413 b Fu(TeX-insert-macro)418
+b FC(and)413 b Fu(TeX-electric-macro)419 b FC(is)412
+b(that)h(space)f(k)-34 b(ey)2000 19460 y Fu(SPC)496 b
+FC(will)f(complete)g(and)h(exit)f(from)g(the)h(minibu\013er)f(in)h
+Fu(TeX-electric-macro)p FC(.)818 b(Use)495 b Fu(TAB)h
+FC(if)f(y)-34 b(ou)2000 20921 y(merely)403 b(w)-34 b(an)g(t)406
+b(to)e(complete.)43872 23511 y([Command])-47999 b Fm
+(TeX-electric-macro)5200 24972 y FC(Prompt)413 b(\(with)h(completion\))
+f(for)f(the)h(name)g(of)g(a)g(T)29870 25233 y(E)30543
+24972 y(X)g(macro,)h(and)f(if)g(A)-34 b(UCT)42669 25233
+y(E)43343 24972 y(X)413 b(kno)-34 b(ws)413 b(the)5200
+26433 y(macro,)403 b(prompt)j(for)e(eac)-34 b(h)404 b(argumen)-34
+b(t.)540 b(Space)404 b(\()p Fu(SPC)p FC(\))i(will)d(complete)h(and)h
+(exit.)3660 29023 y(By)386 b(default)h(A)-34 b(UCT)12933
+29284 y(E)13608 29023 y(X)386 b(will)f(put)j(an)e(empt)-34
+b(y)387 b(set)f(braces)g(`)p Fu({})p FC(')g(after)g(a)g(macro)g(with)h
+(no)g(argumen)-34 b(ts)2000 30484 y(to)442 b(stop)g(it)f(from)h(eating)
+f(the)h(next)g(whitespace.)651 b(This)441 b(is)h(suppressed)g(inside)f
+(math)h(mo)34 b(de)442 b(and)g(can)2000 31946 y(b)34
+b(e)404 b(disabled)g(totally)g(b)-34 b(y)405 b(setting)g
+Fu(TeX-insert-braces)410 b FC(to)404 b(nil.)42818 34536
+y([User)g(Option])-48000 b Fm(TeX-insert-braces)5200
+35997 y FC(If)388 b(non-nil,)j(app)34 b(end)389 b(a)f(empt)-34
+b(y)389 b(pair)e(of)i(braces)e(after)h(inserting)g(a)g(macro)g(with)h
+(no)f(argumen)-34 b(ts.)42818 38587 y([User)404 b(Option])-48000
+b Fm(TeX-insert-braces-alist)5200 40048 y FC(Con)-34
+b(trol)405 b(the)g(insertion)f(of)g(a)g(pair)g(of)h(braces)f(after)g(a)
+g(macro)g(on)g(a)g(p)34 b(er)404 b(macro)g(basis.)5200
+41908 y(This)310 b(v)-67 b(ariable)309 b(is)g(an)h(alist.)507
+b(Eac)-34 b(h)311 b(elemen)-34 b(t)309 b(is)h(a)g(cons)g(cell,)327
+b(whose)310 b(car)f(is)h(the)g(macro)g(name,)328 b(and)5200
+43369 y(the)315 b(cdr)f(is)h(non-nil)g(or)f(nil,)332
+b(dep)34 b(ending)315 b(on)g(whether)g(a)g(pair)f(of)h(braces)f(should)
+i(b)34 b(e,)332 b(resp)34 b(ectiv)-34 b(ely)-101 b(,)5200
+44830 y(app)34 b(ended)405 b(or)f(not)h(to)f(the)h(macro.)5200
+46690 y(If)380 b(a)f(macro)h(has)g(an)g(elemen)-34 b(t)380
+b(in)g(this)g(v)-67 b(ariable,)383 b(A)-34 b(UCT)31166
+46950 y(E)31841 46690 y(X)379 b(will)h(use)f(its)h(v)-67
+b(alue)379 b(to)h(decide)g(what)5200 48151 y(to)404 b(do,)h(whatev)-34
+b(er)404 b(the)h(v)-67 b(alue)403 b(of)i(the)f(v)-67
+b(ariable)403 b Fu(TeX-insert-braces)p FC(.)3660 50741
+y(Completions)383 b(w)-34 b(ork)382 b(b)34 b(ecause)382
+b(A)-34 b(UCT)21387 51002 y(E)22062 50741 y(X)381 b(can)h(analyze)f(T)
+30546 51002 y(E)31220 50741 y(X)h(\014les,)k(and)c(store)g(sym)-34
+b(b)34 b(ols)382 b(in)g(Emacs)2000 52202 y(Lisp)404 b(\014les)g(for)g
+(later)g(retriev)-67 b(al.)536 b(See)404 b(Section)h(5.5)e
+([Automatic],)i(page)f(78,)g(for)g(more)g(information.)3660
+54061 y(A)-34 b(UCT)6992 54322 y(E)7667 54061 y(X)584
+b(distinguishes)g(normal)g(and)g(exp)34 b(ert)583 b(macros.)1076
+b(By)583 b(default,)629 b(it)583 b(will)g(o\013er)g(comple-)2000
+55523 y(tion)538 b(only)f(for)g(normal)g(commands.)939
+b(This)538 b(b)34 b(eha)-34 b(vior)537 b(can)g(b)34 b(e)537
+b(con)-34 b(trolled)537 b(using)h(the)g(user)f(option)2000
+56984 y Fu(TeX-complete-expert-commands)p FC(.)42818
+59574 y([User)404 b(Option])-48000 b Fm(TeX-complete-expert-commands)
+5200 61035 y FC(Complete)405 b(macros)e(and)i(en)-34
+b(vironmen)g(ts)405 b(mark)-34 b(ed)405 b(as)f(exp)34
+b(ert)403 b(commands.)5200 62895 y(P)-34 b(ossible)404
+b(v)-67 b(alues)403 b(are)h(nil,)g(t,)g(or)g(a)g(list)g(of)g(st)-34
+b(yle)404 b(names.)5200 65119 y(nil)5053 b(Don't)404
+b(complete)g(exp)34 b(ert)404 b(commands)h(\(default\).)5200
+67311 y(t)5929 b(Alw)-34 b(a)g(ys)405 b(complete)f(exp)34
+b(ert)403 b(commands.)5200 69503 y(\()p Ft(st)-34 b(yles)528
+b FC(.)293 b(.)h(.)147 b(\))11600 70964 y(Only)404 b(complete)f(exp)34
+b(ert)404 b(commands)h(of)f Ft(st)-34 b(yles)p FC(.)p
+eop end
+%%Page: 34 39
+TeXDict begin 34 38 bop 2000 -1550 a FC(Chapter)405 b(2:)539
+b(Editing)404 b(the)h(Do)34 b(cumen)-34 b(t)405 b(Source)24828
+b(34)3660 3985 y(A)-34 b(UCT)6992 4246 y(E)7667 3985
+y(X)513 b(will)f(also)h(mak)-34 b(e)512 b(completion)h(for)g(man)-34
+b(y)513 b(macro)f(argumen)-34 b(ts,)541 b(for)513 b(example)f(existing)
+2000 5446 y(lab)34 b(els)521 b(when)h(y)-34 b(ou)523
+b(en)-34 b(ter)521 b(a)h(`)p Fu(\\ref)p FC(')g(macro)g(with)g
+Fu(TeX-insert-macro)527 b FC(or)522 b Fu(TeX-electric-macro)p
+FC(,)2000 6907 y(and)411 b(BibT)6905 7168 y(E)7579 6907
+y(X)f(en)-34 b(tries)411 b(when)g(y)-34 b(ou)411 b(en)-34
+b(ter)411 b(a)f(`)p Fu(\\cite)p FC(')i(macro.)557 b(F)-101
+b(or)410 b(this)h(kind)g(of)g(completion)f(to)h(w)-34
+b(ork,)2000 8369 y(parsing)312 b(m)-34 b(ust)312 b(b)34
+b(e)311 b(enabled)h(as)f(describ)34 b(ed)311 b(in)g(Section)g(5.3)g([P)
+-34 b(arsing)311 b(Files],)329 b(page)311 b(71.)508 b(F)-101
+b(or)311 b(`)p Fu(\\cite)p FC(')h(y)-34 b(ou)2000 9830
+y(m)g(ust)403 b(also)e(mak)-34 b(e)401 b(sure)g(that)i(the)f(BibT)20408
+10091 y(E)21081 9830 y(X)g(\014les)f(ha)-34 b(v)g(e)402
+b(b)34 b(een)401 b(sa)-34 b(v)g(ed)402 b(at)g(least)f(once)g(after)h(y)
+-34 b(ou)402 b(enabled)2000 11291 y(automatic)362 b(parsing)g(on)g(sa)
+-34 b(v)g(e,)369 b(and)363 b(that)f(the)g(basename)g(of)f(the)h(BibT)
+34786 11552 y(E)35460 11291 y(X)f(\014le)g(do)34 b(es)361
+b(not)h(con\015ict)g(with)2000 12752 y(the)405 b(basename)f(of)h(one)f
+(of)g(T)15272 13013 y(E)15946 12752 y(X)g(\014les.)2000
+16117 y FB(2.7)896 b(Marking)598 b(En)-50 b(vironmen)g(ts,)601
+b(Sections,)f(or)d(T)-149 b(exinfo)598 b(No)50 b(des)2000
+18243 y FC(Y)-101 b(ou)464 b(can)f(mark)g(the)h(curren)-34
+b(t)464 b(en)-34 b(vironmen)g(t)464 b(b)-34 b(y)464 b(t)-34
+b(yping)465 b Fs(C-c)405 b(.)p FC(,)478 b(or)463 b(the)h(curren)-34
+b(t)464 b(section)f(b)-34 b(y)464 b(t)-34 b(yping)2000
+19704 y Fs(C-c)405 b(*)p FC(.)3660 21600 y(In)g(T)-101
+b(exinfo)404 b(do)34 b(cumen)-34 b(ts)405 b(y)-34 b(ou)405
+b(can)f(t)-34 b(yp)34 b(e)404 b Fs(C-M-h)i FC(to)f(mark)e(the)i(curren)
+-34 b(t)404 b(no)34 b(de.)3660 23497 y(When)405 b(the)f(region)g(is)g
+(set,)g(the)g(p)34 b(oin)-34 b(t)405 b(is)f(mo)-34 b(v)g(ed)405
+b(to)f(its)h(b)34 b(eginning)404 b(and)h(the)g(mark)e(to)i(its)f(end.)
+2000 26257 y Fq(2.7.1)818 b(L)6576 26063 y Fn(a)7223
+26257 y Fq(T)8088 26580 y(E)8958 26257 y(X)545 b(Commands)h(for)g
+(Marking)g(En)-45 b(vironmen)g(ts)544 b(and)i(Sections)43872
+28984 y FC([Command])-47999 b Fm(LaTeX-mark-section)5200
+30445 y FC(\()p Fs(C-c)405 b(*)p FC(\))g(Set)g(mark)e(at)i(end)f(of)h
+(curren)-34 b(t)404 b(logical)g(section,)f(and)i(p)34
+b(oin)-34 b(t)405 b(at)g(top.)5200 32342 y(With)308 b(a)f(non-nil)h
+(pre\014x)f(argumen)-34 b(t,)328 b(mark)307 b(only)g(the)h(region)f
+(from)h(the)f(curren)-34 b(t)308 b(section)g(start)g(to)5200
+33803 y(the)324 b(next)f(sectioning)g(command.)512 b(Thereb)-34
+b(y)324 b(subsections)g(are)f(not)h(b)34 b(eing)323 b(mark)-34
+b(ed.)511 b(Otherwise,)5200 35264 y(an)-34 b(y)405 b(included)f
+(subsections)h(are)f(also)g(mark)-34 b(ed)404 b(along)g(with)h(curren)
+-34 b(t)405 b(section.)43872 37928 y([Command])-47999
+b Fm(LaTeX-mark-environment)5200 39389 y FC(\()p Fs(C-c)405
+b(.)p FC(\))462 b(Set)f(mark)f(to)i(the)f(end)g(of)g(the)g(curren)-34
+b(t)462 b(en)-34 b(vironmen)g(t)461 b(and)h(p)34 b(oin)-34
+b(t)461 b(to)h(the)f(matc)-34 b(hing)5200 40851 y(b)34
+b(eginning.)5200 42747 y(If)387 b(a)h(pre\014x)f(argumen)-34
+b(t)389 b(is)e(giv)-34 b(en,)390 b(mark)d(the)h(resp)34
+b(ectiv)-34 b(e)387 b(n)-34 b(um)g(b)34 b(er)388 b(of)g(enclosing)f(en)
+-34 b(vironmen)g(ts.)5200 44208 y(The)603 b(command)h(will)e(not)h(w)
+-34 b(ork)603 b(prop)34 b(erly)602 b(if)g(there)h(are)f(un)-34
+b(balanced)604 b(b)34 b(egin-end)603 b(pairs)g(in)5200
+45669 y(commen)-34 b(ts)405 b(and)g(v)-34 b(erbatim)404
+b(en)-34 b(vironmen)g(ts.)2000 48430 y Fq(2.7.2)818 b(T)-136
+b(exinfo)544 b(Commands)i(for)g(Marking)f(En)-45 b(vironmen)g(ts)545
+b(and)h(Sections)43872 51156 y FC([Command])-47999 b
+Fm(Texinfo-mark-section)5200 52617 y FC(\()p Fs(C-c)405
+b(*)p FC(\))g(Mark)f(the)g(curren)-34 b(t)405 b(section,)f(with)h
+(inclusion)f(of)g(an)-34 b(y)405 b(con)-34 b(taining)405
+b(no)34 b(de.)5200 54514 y(The)626 b(curren)-34 b(t)626
+b(section)f(is)g(detected)h(as)f(starting)i(b)-34 b(y)625
+b(an)-34 b(y)626 b(of)g(the)g(structuring)g(commands)5200
+55975 y(matc)-34 b(hed)555 b(b)-34 b(y)555 b(the)g(regular)e
+(expression)h(in)h(the)f(v)-67 b(ariable)553 b Fu(outline-regexp)560
+b FC(whic)-34 b(h)555 b(in)f(turn)5200 57436 y(is)352
+b(a)g(regular)f(expression)h(matc)-34 b(hing)353 b(an)-34
+b(y)353 b(elemen)-34 b(t)352 b(of)h(the)f(v)-67 b(ariable)351
+b Fu(texinfo-section-list)p FC(.)5200 59333 y(With)308
+b(a)f(non-nil)h(pre\014x)f(argumen)-34 b(t,)328 b(mark)307
+b(only)g(the)h(region)f(from)h(the)f(curren)-34 b(t)308
+b(section)g(start)g(to)5200 60794 y(the)324 b(next)f(sectioning)g
+(command.)512 b(Thereb)-34 b(y)324 b(subsections)g(are)f(not)h(b)34
+b(eing)323 b(mark)-34 b(ed.)511 b(Otherwise,)5200 62255
+y(an)-34 b(y)405 b(included)f(subsections)h(are)f(also)g(mark)-34
+b(ed.)5200 64152 y(Note)473 b(that)h(when)g(the)g(curren)-34
+b(t)473 b(section)g(is)g(starting)h(immediately)e(after)h(a)g(no)34
+b(de)473 b(command,)5200 65613 y(then)405 b(the)f(no)34
+b(de)405 b(command)g(is)e(also)h(mark)-34 b(ed)405 b(as)f(part)g(of)h
+(the)f(section.)43872 68277 y([Command])-47999 b Fm
+(Texinfo-mark-environment)5200 69738 y FC(\()p Fs(C-c)405
+b(.)p FC(\))462 b(Set)f(mark)f(to)i(the)f(end)g(of)g(the)g(curren)-34
+b(t)462 b(en)-34 b(vironmen)g(t)461 b(and)h(p)34 b(oin)-34
+b(t)461 b(to)h(the)f(matc)-34 b(hing)5200 71200 y(b)34
+b(eginning.)p eop end
+%%Page: 35 40
+TeXDict begin 35 39 bop 2000 -1550 a FC(Chapter)405 b(2:)539
+b(Editing)404 b(the)h(Do)34 b(cumen)-34 b(t)405 b(Source)24828
+b(35)5200 3985 y(If)387 b(a)h(pre\014x)f(argumen)-34
+b(t)389 b(is)e(giv)-34 b(en,)390 b(mark)d(the)h(resp)34
+b(ectiv)-34 b(e)387 b(n)-34 b(um)g(b)34 b(er)388 b(of)g(enclosing)f(en)
+-34 b(vironmen)g(ts.)5200 5446 y(The)603 b(command)h(will)e(not)h(w)-34
+b(ork)603 b(prop)34 b(erly)602 b(if)g(there)h(are)f(un)-34
+b(balanced)604 b(b)34 b(egin-end)603 b(pairs)g(in)5200
+6907 y(commen)-34 b(ts)405 b(and)g(v)-34 b(erbatim)404
+b(en)-34 b(vironmen)g(ts.)43872 9417 y([Command])-47999
+b Fm(Texinfo-mark-node)5200 10878 y FC(\()p Fs(C-M-h)p
+FC(\))335 b(Mark)c(the)i(curren)-34 b(t)332 b(no)34 b(de.)515
+b(This)333 b(is)f(the)g(no)34 b(de)333 b(in)f(whic)-34
+b(h)333 b(p)34 b(oin)-34 b(t)333 b(is)f(lo)34 b(cated.)514
+b(It)332 b(is)g(start-)5200 12340 y(ing)436 b(at)g(the)g(previous)g(o)
+34 b(ccurrence)435 b(of)h(the)g(k)-34 b(eyw)g(ord)436
+b Fu(@node)i FC(and)f(ending)f(at)g(next)g(o)34 b(ccurrence)5200
+13801 y(of)404 b(the)h(k)-34 b(eyw)g(ords)405 b Fu(@node)g
+FC(or)f Fu(@bye)p FC(.)2000 17050 y FB(2.8)896 b(Commen)-50
+b(ting)2000 19176 y FC(It)535 b(is)g(often)h(necessary)e(to)h(commen)
+-34 b(t)536 b(out)g(temp)34 b(orarily)534 b(a)h(region)f(of)i(T)36571
+19437 y(E)37244 19176 y(X)f(or)g(L)40626 19019 y Fv(a)41187
+19176 y FC(T)41860 19437 y(E)42534 19176 y(X)g(co)34
+b(de.)930 b(This)2000 20637 y(can)420 b(b)34 b(e)419
+b(done)i(with)f(the)h(commands)f Fs(C-c)406 b(;)420 b
+FC(and)g Fs(C-c)405 b(\045)p FC(.)586 b Fs(C-c)405 b(;)421
+b FC(will)e(commen)-34 b(t)420 b(out)h(all)e(lines)h(in)f(the)2000
+22098 y(curren)-34 b(t)421 b(region,)k(while)c Fs(C-c)405
+b(\045)422 b FC(will)e(commen)-34 b(t)422 b(out)g(the)g(curren)-34
+b(t)421 b(paragraph.)590 b(T)-34 b(yp)34 b(e)422 b Fs(C-c)405
+b(;)421 b FC(again)h(to)2000 23559 y(uncommen)-34 b(t)524
+b(all)e(lines)g(of)h(a)f(commen)-34 b(ted)524 b(region,)551
+b(or)523 b Fs(C-c)405 b(\045)523 b FC(again)f(to)h(uncommen)-34
+b(t)524 b(all)e(commen)-34 b(t)2000 25020 y(lines)404
+b(around)h(p)34 b(oin)-34 b(t.)539 b(These)405 b(commands)g(will)e
+(insert)h(or)g(remo)-34 b(v)g(e)404 b(a)g(single)g(`)p
+Fu(\045)p FC(')g(resp)34 b(ectiv)-34 b(ely)-101 b(.)43872
+27530 y([Command])-47999 b Fm(TeX-comment-or-uncomment-region)5200
+28991 y FC(\()p Fs(C-c)405 b(;)p FC(\))390 b(Add)f(or)g(remo)-34
+b(v)g(e)388 b(`)p Fu(\045)p FC(')h(from)g(the)g(b)34
+b(eginning)389 b(of)g(eac)-34 b(h)389 b(line)f(in)h(the)g(curren)-34
+b(t)389 b(region.)533 b(Un-)5200 30452 y(commen)-34 b(ting)504
+b(w)-34 b(orks)504 b(only)f(if)h(the)g(region)f(encloses)g(solely)f
+(commen)-34 b(ted)505 b(lines.)836 b(If)503 b(A)-34 b(UCT)48416
+30713 y(E)49091 30452 y(X)5200 31914 y(should)368 b(not)f(try)g(to)g
+(guess)g(if)g(the)g(region)f(should)i(b)34 b(e)366 b(commen)-34
+b(ted)368 b(or)e(uncommen)-34 b(ted)369 b(the)e(com-)5200
+33375 y(mands)485 b Fu(TeX-comment-region)490 b FC(and)485
+b Fu(TeX-uncomment-region)491 b FC(can)484 b(b)34 b(e)484
+b(used)g(to)h(explicitly)5200 34836 y(commen)-34 b(t)405
+b(or)f(uncommen)-34 b(t)405 b(the)g(region)f(in)g(concern.)43872
+37346 y([Command])-47999 b Fm(TeX-comment-or-uncomment-paragraph)5200
+38807 y FC(\()p Fs(C-c)405 b(\045)p FC(\))416 b(Add)f(or)f(remo)-34
+b(v)g(e)415 b(`)p Fu(\045)p FC(')f(from)h(the)g(b)34
+b(eginning)415 b(of)g(eac)-34 b(h)415 b(line)f(in)g(the)h(curren)-34
+b(t)415 b(paragraph.)5200 40268 y(When)396 b(remo)-34
+b(ving)395 b(`)p Fu(\045)p FC(')g(c)-34 b(haracters)396
+b(the)g(paragraph)g(is)g(considered)f(to)h(consist)g(of)g(all)f
+(preceding)5200 41729 y(and)405 b(succeeding)f(lines)g(starting)g(with)
+h(a)f(`)p Fu(\045)p FC(',)g(un)-34 b(til)405 b(the)f(\014rst)h
+(non-commen)-34 b(t)406 b(line.)2000 44979 y FB(2.9)896
+b(Inden)-50 b(ting)2000 47104 y FC(Inden)-34 b(tation)517
+b(means)e(the)g(addition)g(of)h(whitespace)f(at)g(the)g(b)34
+b(eginning)515 b(of)g(lines)g(to)g(re\015ect)f(sp)34
+b(ecial)2000 48565 y(syn)-34 b(tactical)472 b(constructs.)742
+b(This)472 b(mak)-34 b(es)472 b(it)g(easier)e(to)i(see)f(the)h
+(structure)h(of)f(the)g(do)34 b(cumen)-34 b(t,)489 b(and)473
+b(to)2000 50027 y(catc)-34 b(h)374 b(errors)f(suc)-34
+b(h)374 b(as)g(a)g(missing)f(closing)h(brace.)528 b(Th)-34
+b(us,)381 b(the)374 b(inden)-34 b(tation)375 b(is)f(done)g(for)f
+(precisely)f(the)2000 51488 y(same)404 b(reasons)g(that)i(y)-34
+b(ou)404 b(w)-34 b(ould)405 b(inden)-34 b(t)406 b(ordinary)e(computer)g
+(programs.)3660 53307 y(Inden)-34 b(tation)553 b(is)e(done)g(b)-34
+b(y)551 b(L)16899 53150 y Fv(a)17460 53307 y FC(T)18133
+53568 y(E)18807 53307 y(X)f(en)-34 b(vironmen)g(ts)552
+b(and)g(b)-34 b(y)551 b(T)32871 53568 y(E)33545 53307
+y(X)f(groups,)588 b(that)552 b(is)f(the)g(b)34 b(o)g(dy)551
+b(of)2000 54768 y(an)449 b(en)-34 b(vironmen)g(t)449
+b(is)f(inden)-34 b(ted)450 b(b)-34 b(y)448 b(the)h(v)-67
+b(alue)448 b(of)g Fu(LaTeX-indent-level)455 b FC(\(default)450
+b(2\).)671 b(Also,)459 b(items)2000 56230 y(of)441 b(an)f(`itemize-lik)
+-34 b(e')438 b(en)-34 b(vironmen)g(t)442 b(are)d(inden)-34
+b(ted)442 b(b)-34 b(y)441 b(the)g(v)-67 b(alue)439 b(of)i
+Fu(LaTeX-item-indent)p FC(,)455 b(default)2000 57691
+y FA(\000)p FC(2.)560 b(\(Items)412 b(are)f(iden)-34
+b(ti\014ed)413 b(with)f(the)g(help)g(of)f Fu(LaTeX-item-regexp)p
+FC(.\))567 b(If)412 b(more)f(en)-34 b(vironmen)g(ts)412
+b(are)2000 59152 y(nested,)k(they)e(are)f(inden)-34 b(ted)416
+b(`accum)-34 b(ulated')414 b(just)g(lik)-34 b(e)413 b(most)h
+(programming)h(languages)f(usually)f(are)2000 60613 y(seen)404
+b(inden)-34 b(ted)405 b(in)g(nested)f(constructs.)3660
+62433 y(Y)-101 b(ou)500 b(can)f(explicitely)e(inden)-34
+b(t)500 b(single)e(lines,)522 b(usually)499 b(b)-34 b(y)499
+b(pressing)g Fu(TAB)p FC(,)523 b(or)499 b(mark)-34 b(ed)499
+b(regions)g(b)-34 b(y)2000 63894 y(calling)511 b Fu(indent-region)517
+b FC(on)512 b(it.)862 b(If)511 b(y)-34 b(ou)513 b(ha)-34
+b(v)g(e)512 b Fu(auto-fill-mode)517 b FC(enabled)512
+b(and)h(a)f(line)f(is)h(brok)-34 b(en)2000 65355 y(while)472
+b(y)-34 b(ou)472 b(t)-34 b(yp)34 b(e)472 b(it,)488 b(Emacs)471
+b(automatically)h(cares)f(ab)34 b(out)473 b(the)f(inden)-34
+b(tation)473 b(in)f(the)g(follo)-34 b(wing)473 b(line.)2000
+66816 y(If)502 b(y)-34 b(ou)502 b(w)-34 b(an)g(t)503
+b(to)f(ha)-34 b(v)g(e)503 b(a)e(similar)g(b)34 b(eha)-34
+b(vior)502 b(up)34 b(on)502 b(t)-34 b(yping)503 b Fu(RET)p
+FC(,)527 b(y)-34 b(ou)502 b(can)g(customize)f(the)h(v)-67
+b(ariable)2000 68277 y Fu(TeX-newline-function)476 b
+FC(and)469 b(c)-34 b(hange)470 b(the)f(default)g(of)h
+Fu(newline)h FC(whic)-34 b(h)469 b(do)34 b(es)469 b(no)g(inden)-34
+b(tation)471 b(to)2000 69738 y Fu(newline-and-indent)373
+b FC(whic)-34 b(h)368 b(inden)-34 b(ts)369 b(the)f(new)f(line)g(or)g
+Fu(reindent-then-newline-and-indent)2000 71200 y FC(whic)-34
+b(h)405 b(inden)-34 b(ts)406 b(b)34 b(oth)404 b(the)h(curren)-34
+b(t)404 b(and)h(the)g(new)g(line.)p eop end
+%%Page: 36 41
+TeXDict begin 36 40 bop 2000 -1550 a FC(Chapter)405 b(2:)539
+b(Editing)404 b(the)h(Do)34 b(cumen)-34 b(t)405 b(Source)24828
+b(36)3660 3985 y(There)671 b(are)g(certain)f(L)14355
+3828 y Fv(a)14916 3985 y FC(T)15589 4246 y(E)16263 3985
+y(X)h(en)-34 b(vironmen)g(ts)671 b(whic)-34 b(h)672 b(should)g(b)34
+b(e)671 b(inden)-34 b(ted)672 b(in)f(a)g(sp)34 b(ecial)669
+b(w)-34 b(a)g(y)-101 b(,)2000 5446 y(lik)-34 b(e)733
+b(`)p Fu(tabular)p FC(')i(or)e(`)p Fu(verbatim)p FC('.)1529
+b(Those)735 b(en)-34 b(vironmen)g(ts)734 b(ma)-34 b(y)734
+b(b)34 b(e)733 b(sp)34 b(eci\014ed)734 b(in)f(the)h(v)-67
+b(ariable)2000 6907 y Fu(LaTeX-indent-environment-list)436
+b FC(together)427 b(with)g(their)f(sp)34 b(ecial)425
+b(inden)-34 b(tation)429 b(functions.)606 b(T)-101 b(ak-)2000
+8369 y(ing)440 b(the)f(`)p Fu(verbatim)p FC(')j(en)-34
+b(vironmen)g(t)441 b(as)e(an)h(example)f(y)-34 b(ou)440
+b(can)f(see)g(that)i Fu(current-indentation)446 b FC(is)2000
+9830 y(used)478 b(as)g(the)g(inden)-34 b(tation)479 b(function.)760
+b(This)478 b(will)f(stop)i(A)-34 b(UCT)31750 10091 y(E)32424
+9830 y(X)478 b(from)f(doing)i(an)-34 b(y)478 b(inden)-34
+b(tation)479 b(in)2000 11291 y(the)405 b(en)-34 b(vironmen)g(t)405
+b(if)f(y)-34 b(ou)404 b(hit)h Fu(TAB)g FC(for)f(example.)3660
+13212 y(There)352 b(are)f(en)-34 b(vironmen)g(ts)353
+b(in)e Fu(LaTeX-indent-environment-list)362 b FC(whic)-34
+b(h)352 b(do)g(not)h(bring)f(a)f(sp)34 b(e-)2000 14673
+y(cial)289 b(inden)-34 b(tation)292 b(function)f(with)g(them.)501
+b(This)290 b(is)g(due)h(to)f(the)g(fact)h(that)g(\014rst)f(the)h(resp)
+34 b(ectiv)-34 b(e)288 b(functions)2000 16134 y(are)444
+b(not)h(implemen)-34 b(ted)445 b(y)-34 b(et)444 b(and)h(second)g(that)g
+(\014lling)f(will)g(b)34 b(e)444 b(disabled)h(for)f(the)h(sp)34
+b(eci\014ed)444 b(en)-34 b(viron-)2000 17596 y(men)g(ts.)537
+b(This)397 b(shall)f(prev)-34 b(en)g(t)397 b(the)g(source)f(co)34
+b(de)395 b(from)i(b)34 b(eing)396 b(messed)g(up)h(b)-34
+b(y)397 b(acciden)-34 b(tly)396 b(\014lling)g(those)2000
+19057 y(en)-34 b(vironmen)g(ts)476 b(with)g(the)g(standard)h(\014lling)
+e(routine.)753 b(If)475 b(y)-34 b(ou)476 b(think)g(that)g(pro)-34
+b(viding)476 b(sp)34 b(ecial)474 b(\014lling)2000 20518
+y(routines)425 b(for)g(suc)-34 b(h)426 b(en)-34 b(vironmen)g(ts)426
+b(w)-34 b(ould)427 b(b)34 b(e)424 b(an)i(appropriate)f(and)h(c)-34
+b(hallenging)425 b(task)g(for)g(y)-34 b(ou,)430 b(y)-34
+b(ou)2000 21979 y(are)365 b(in)-34 b(vited)367 b(to)f(con)-34
+b(tribute.)527 b(\(See)366 b(Section)h(2.10)e([Filling],)373
+b(page)366 b(37,)373 b(for)366 b(further)h(information)g(ab)34
+b(out)2000 23440 y(the)405 b(\014lling)f(functionalit)-34
+b(y)-101 b(.\))3660 25361 y(The)443 b(c)-34 b(hec)g(k)442
+b(for)g(the)h(inden)-34 b(tation)444 b(function)f(ma)-34
+b(y)443 b(b)34 b(e)442 b(enabled)g(or)g(disabled)h(b)-34
+b(y)442 b(customizing)g(the)2000 26822 y(v)-67 b(ariable)403
+b Fu(LaTeX-indent-environment-check)p FC(.)3660 28743
+y(As)d(a)f(side)g(note)g(with)h(regard)f(to)g(formatting)i(sp)34
+b(ecial)398 b(en)-34 b(vironmen)g(ts:)537 b(New)-34 b(er)399
+b(Emacsen)g(include)2000 30205 y Fu(align.el)434 b FC(and)e(therefore)f
+(pro)-34 b(vide)431 b(some)g(supp)34 b(ort)432 b(for)f(formatting)h(`)p
+Fu(tabular)p FC(')h(and)f(`)p Fu(tabbing)p FC(')h(en-)2000
+31666 y(vironmen)-34 b(ts)383 b(with)f(the)h(function)g
+Fu(align-current)k FC(whic)-34 b(h)382 b(will)g(nicely)f(align)g
+(columns)i(in)f(the)g(source)2000 33127 y(co)34 b(de.)3660
+35048 y(A)-34 b(UCT)6992 35309 y(E)7667 35048 y(X)436
+b(is)f(able)g(to)h(format)g(commen)-34 b(ted)436 b(parts)g(of)g(y)-34
+b(our)435 b(co)34 b(de)435 b(just)i(as)e(an)-34 b(y)436
+b(other)g(part.)632 b(This)2000 36509 y(means)561 b(L)6189
+36352 y Fv(a)6750 36509 y FC(T)7423 36770 y(E)8097 36509
+y(X)f(en)-34 b(vironmen)g(ts)562 b(and)g(T)20361 36770
+y(E)21035 36509 y(X)e(groups)i(in)f(commen)-34 b(ts)561
+b(will)g(b)34 b(e)560 b(inden)-34 b(ted)562 b(syn)-34
+b(tactically)2000 37970 y(correct)416 b(if)h(the)h(v)-67
+b(ariable)416 b Fu(LaTeX-syntactic-comments)425 b FC(is)417
+b(set)h(to)f(t.)578 b(If)417 b(y)-34 b(ou)418 b(disable)f(it,)j(commen)
+-34 b(ts)2000 39432 y(will)404 b(b)34 b(e)403 b(\014lled)h(lik)-34
+b(e)404 b(normal)g(text)g(and)h(no)f(syn)-34 b(tactic)405
+b(inden)-34 b(tation)406 b(will)d(b)34 b(e)404 b(done.)3660
+41353 y(F)-101 b(ollo)-34 b(wing)397 b(y)-34 b(ou)397
+b(will)f(\014nd)i(a)e(list)g(of)h(most)g(commands)g(and)g(v)-67
+b(ariables)395 b(related)i(to)f(inden)-34 b(ting)398
+b(with)2000 42814 y(a)404 b(small)g(summary)g(in)g(eac)-34
+b(h)405 b(case:)2000 45131 y Fu(TAB)4492 b(LaTeX-indent-line)410
+b FC(will)404 b(inden)-34 b(t)405 b(the)g(curren)-34
+b(t)404 b(line.)2000 47384 y Fu(LFD)2000 48845 y Fs(C-j)4492
+b Fu(newline-and-indent)418 b FC(inserts)412 b(a)g(new)g(line)g(\(m)-34
+b(uc)g(h)413 b(lik)-34 b(e)411 b Fu(RET)p FC(\))i(and)g(mo)-34
+b(v)g(es)412 b(the)g(cursor)8400 50306 y(to)405 b(an)f(appropriate)h(p)
+34 b(osition)404 b(b)-34 b(y)405 b(the)f(left)h(margin.)8400
+52163 y(Most)d(k)-34 b(eyb)34 b(oards)401 b(no)-34 b(w)g(ada)g(ys)404
+b(lac)-34 b(k)400 b(a)i(linefeed)f(k)-34 b(ey)400 b(and)j
+Fs(C-j)f FC(ma)-34 b(y)401 b(b)34 b(e)401 b(tedious)h(to)g(t)-34
+b(yp)34 b(e.)8400 53625 y(Therefore)347 b(y)-34 b(ou)349
+b(can)e(customize)h(A)-34 b(UCT)27109 53885 y(E)27783
+53625 y(X)348 b(to)g(p)34 b(erform)347 b(inden)-34 b(tation)350
+b(up)34 b(on)348 b(t)-34 b(yping)349 b Fu(RET)8400 55086
+y FC(as)404 b(w)-34 b(ell.)539 b(The)404 b(resp)34 b(ectiv)-34
+b(e)403 b(option)i(is)f(called)f Fu(TeX-newline-function)p
+FC(.)42818 57799 y([User)h(Option])-48000 b Fm
+(LaTeX-indent-environment-list)5200 59260 y FC(List)468
+b(of)h(en)-34 b(vironmen)g(ts)470 b(with)g(sp)34 b(ecial)467
+b(inden)-34 b(tation.)735 b(The)469 b(second)g(elemen)-34
+b(t)469 b(in)f(eac)-34 b(h)469 b(en)-34 b(try)469 b(is)5200
+60721 y(the)404 b(function)i(to)e(calculate)g(the)h(inden)-34
+b(tation)405 b(lev)-34 b(el)403 b(in)i(columns.)5200
+62642 y(The)331 b(\014lling)f(co)34 b(de)330 b(curren)-34
+b(tly)331 b(cannot)g(handle)g(tabular-lik)-34 b(e)331
+b(en)-34 b(vironmen)g(ts)331 b(whic)-34 b(h)332 b(will)e(b)34
+b(e)330 b(com-)5200 64103 y(pletely)370 b(messed-up)i(if)f(y)-34
+b(ou)371 b(try)g(to)g(format)h(them.)528 b(This)371 b(is)g(wh)-34
+b(y)372 b(most)f(of)h(these)f(en)-34 b(vironmen)g(ts)5200
+65564 y(are)321 b(included)h(in)f(this)i(customization)f(option)g
+(without)i(a)d(sp)34 b(ecial)321 b(inden)-34 b(tation)323
+b(function.)512 b(This)5200 67026 y(will)404 b(prev)-34
+b(en)g(t)404 b(that)i(they)e(get)g(\014lled.)42818 69738
+y([User)g(Option])-48000 b Fm(LaTeX-indent-level)5200
+71200 y FC(Num)-34 b(b)34 b(er)299 b(of)g(spaces)f(to)h(add)h(to)e(the)
+h(inden)-34 b(tation)301 b(for)d(eac)-34 b(h)299 b(`)p
+Fu(\\begin)p FC(')h(not)f(matc)-34 b(hed)300 b(b)-34
+b(y)299 b(a)f(`)p Fu(\\end)p FC('.)p eop end
+%%Page: 37 42
+TeXDict begin 37 41 bop 2000 -1550 a FC(Chapter)405 b(2:)539
+b(Editing)404 b(the)h(Do)34 b(cumen)-34 b(t)405 b(Source)24828
+b(37)42818 3985 y([User)404 b(Option])-48000 b Fm(LaTeX-item-indent)
+5200 5446 y FC(Num)-34 b(b)34 b(er)404 b(of)h(spaces)f(to)h(add)f(to)h
+(the)g(inden)-34 b(tation)405 b(for)g(`)p Fu(\\item)p
+FC(''s)g(in)f(list)g(en)-34 b(vironmen)g(ts.)42818 8001
+y([User)404 b(Option])-48000 b Fm(TeX-brace-indent-level)5200
+9463 y FC(Num)-34 b(b)34 b(er)404 b(of)h(spaces)f(to)h(add)f(to)h(the)g
+(inden)-34 b(tation)405 b(for)g(eac)-34 b(h)404 b(`)p
+Fu({)p FC(')g(not)h(matc)-34 b(hed)405 b(b)-34 b(y)404
+b(a)g(`)p Fu(})p FC('.)42818 12018 y([User)g(Option])-48000
+b Fm(LaTeX-syntactic-comments)5200 13479 y FC(If)352
+b(non-nil)h(commen)-34 b(ts)353 b(will)f(b)34 b(e)352
+b(\014lled)g(and)h(inden)-34 b(ted)354 b(according)e(to)g(L)37168
+13322 y Fv(a)37729 13479 y FC(T)38402 13740 y(E)39076
+13479 y(X)g(syn)-34 b(tax.)522 b(Otherwise)5200 14940
+y(they)404 b(will)g(b)34 b(e)404 b(\014lled)g(lik)-34
+b(e)403 b(normal)h(text.)42818 17495 y([User)g(Option])-48000
+b Fm(TeX-newline-function)5200 18957 y FC(Used)415 b(to)h(sp)34
+b(ecify)414 b(the)i(function)h(whic)-34 b(h)416 b(is)f(called)f(when)i
+Fu(RET)g FC(is)f(pressed.)572 b(This)416 b(will)e(normally)5200
+20418 y(b)34 b(e)548 b Fu(newline)i FC(whic)-34 b(h)549
+b(simply)f(inserts)g(a)g(new)g(line.)970 b(In)548 b(case)f(y)-34
+b(ou)549 b(w)-34 b(an)g(t)549 b(to)g(ha)-34 b(v)g(e)548
+b(A)-34 b(UCT)48416 20679 y(E)49091 20418 y(X)5200 21879
+y(do)424 b(inden)-34 b(tation)425 b(as)e(w)-34 b(ell)423
+b(when)h(y)-34 b(ou)424 b(press)f Fu(RET)p FC(,)429 b(use)423
+b(the)h(built-in)g(functions)h Fu(newline-and-)5200 23340
+y(indent)392 b FC(or)e Fu(reindent-then-newline-and-indent)p
+FC(.)545 b(The)391 b(former)f(inserts)g(a)h(new)f(line)g(and)5200
+24801 y(inden)-34 b(ts)411 b(the)f(follo)-34 b(wing)410
+b(line,)g(i.e.)e(it)h(mo)-34 b(v)g(es)410 b(the)g(cursor)f(to)h(the)g
+(righ)-34 b(t)410 b(p)34 b(osition)410 b(and)g(therefore)5200
+26262 y(acts)430 b(as)g(if)g(y)-34 b(ou)430 b(pressed)g
+Fu(LFD)p FC(.)617 b(The)430 b(latter)g(function)h(additionally)f(inden)
+-34 b(ts)431 b(the)g(curren)-34 b(t)430 b(line.)5200
+27724 y(If)365 b(y)-34 b(ou)366 b(c)-34 b(ho)34 b(ose)365
+b(`)p Fu(Other)p FC(',)374 b(y)-34 b(ou)365 b(can)g(sp)34
+b(ecify)365 b(y)-34 b(our)365 b(o)-34 b(wn)366 b(fancy)g(function)g(to)
+g(b)34 b(e)365 b(called)f(when)i Fu(RET)5200 29185 y
+FC(is)404 b(pressed.)3660 31740 y(A)-34 b(UCT)6992 32001
+y(E)7667 31740 y(X)413 b(treats)f(b)-34 b(y)413 b(default)h(`)p
+Fu(\\[...\\])p FC(')g(math)f(mo)34 b(de)413 b(as)f(a)h(regular)f(en)-34
+b(vironmen)g(t)413 b(and)h(inden)-34 b(ts)2000 33201
+y(it)486 b(accordingly)-101 b(.)784 b(If)487 b(y)-34
+b(ou)486 b(do)h(not)g(lik)-34 b(e)485 b(suc)-34 b(h)487
+b(b)34 b(eha)-34 b(vior)486 b(y)-34 b(ou)487 b(only)f(need)g(to)h(remo)
+-34 b(v)g(e)486 b Fu(\\|\\[)i FC(and)f Fu(\\|\\])2000
+34662 y FC(from)404 b Fu(LaTeX-begin-regexp)411 b FC(and)405
+b Fu(LaTeX-end-regexp)k FC(v)-67 b(ariables)403 b(resp)34
+b(ectiv)-34 b(ely)-101 b(.)2000 37946 y FB(2.10)896 b(Filling)2000
+40071 y FC(Filling)282 b(deals)g(with)i(the)e(insertion)h(of)g(line)f
+(breaks)g(to)h(prev)-34 b(en)g(t)283 b(lines)f(from)h(b)34
+b(ecoming)282 b(wider)g(than)i(what)2000 41532 y(is)463
+b(sp)34 b(eci\014ed)462 b(in)h Fu(fill-column)p FC(.)719
+b(The)463 b(linebreaks)g(will)f(b)34 b(e)463 b(inserted)g
+(automatically)g(if)f Fu(auto-fill-)2000 42994 y(mode)454
+b FC(is)f(enabled.)686 b(In)453 b(this)g(case)g(the)g(source)g(is)g
+(not)h(only)f(\014lled)f(but)j(also)e(inden)-34 b(ted)454
+b(automatically)2000 44455 y(as)404 b(y)-34 b(ou)405
+b(write)f(it.)3660 46297 y Fu(auto-fill-mode)426 b FC(can)420
+b(b)34 b(e)420 b(enabled)h(for)f(A)-34 b(UCT)26558 46558
+y(E)27233 46297 y(X)420 b(b)-34 b(y)421 b(calling)f Fu
+(turn-on-auto-fill)426 b FC(in)420 b(one)h(of)2000 47758
+y(the)303 b(ho)34 b(oks)303 b(A)-34 b(UCT)10658 48019
+y(E)11333 47758 y(X)303 b(is)f(running.)506 b(See)303
+b(Section)g(5.1)f([Mo)34 b(des)303 b(and)h(Ho)34 b(oks],)322
+b(page)303 b(69.)505 b(As)303 b(an)g(example,)2000 49219
+y(if)389 b(y)-34 b(ou)390 b(w)-34 b(an)g(t)391 b(to)f(enable)f
+Fu(auto-fill-mode)394 b FC(in)389 b Fu(LaTeX-mode)p FC(,)396
+b(put)390 b(the)g(follo)-34 b(wing)390 b(in)-34 b(to)390
+b(y)-34 b(our)389 b(init)g(\014le:)5200 51061 y Fu(\(add-hook)640
+b('LaTeX-mode-hook)i(#'turn-on-auto-fill\))3660 52904
+y FC(Y)-101 b(ou)502 b(can)g(man)-34 b(ually)502 b(\014ll)f
+(explicitely)f(mark)-34 b(ed)501 b(regions,)525 b(paragraphs,)i(en)-34
+b(vironmen)g(ts,)526 b(complete)2000 54365 y(sections,)392
+b(or)d(the)g(whole)h(bu\013er.)533 b(\(Note)390 b(that)g(man)-34
+b(ual)390 b(\014lling)f(in)h(A)-34 b(UCT)36091 54626
+y(E)36765 54365 y(X)389 b(will)g(inden)-34 b(t)390 b(the)g(start)g(of)
+2000 55826 y(the)405 b(region)e(to)i(b)34 b(e)404 b(\014lled)g(in)g
+(con)-34 b(trast)405 b(to)f(man)-34 b(y)405 b(other)f(Emacs)g(mo)34
+b(des.\))3660 57668 y(There)370 b(are)f(some)g(syn)-34
+b(tactical)370 b(constructs)h(whic)-34 b(h)370 b(are)f(handled)i(sp)34
+b(ecially)368 b(with)i(regard)f(to)h(\014lling.)2000
+59129 y(These)404 b(are)g(so-called)g Ft(co)34 b(de)403
+b(commen)-34 b(ts)455 b FC(and)405 b Ft(paragraph)g(commands)p
+FC(.)3660 60971 y(Co)34 b(de)448 b(commen)-34 b(ts)448
+b(are)e(commen)-34 b(ts)448 b(preceded)f(b)-34 b(y)447
+b(co)34 b(de)447 b(or)f(text)h(in)g(the)h(same)f(line.)666
+b(Up)34 b(on)448 b(\014lling)2000 62433 y(a)507 b(region,)532
+b(co)34 b(de)507 b(commen)-34 b(ts)508 b(themselv)-34
+b(es)507 b(will)g(not)h(get)f(\014lled.)848 b(Filling)506
+b(is)h(done)h(from)f(the)h(start)g(of)2000 63894 y(the)472
+b(region)f(to)g(the)h(line)f(with)h(the)f(co)34 b(de)471
+b(commen)-34 b(t)472 b(and)g(con)-34 b(tin)g(ues)473
+b(after)e(it.)740 b(In)472 b(order)f(to)g(prev)-34 b(en)g(t)2000
+65355 y(o)g(v)g(erfull)447 b(lines)g(in)h(the)f(source)g(co)34
+b(de,)458 b(a)447 b(linebreak)g(will)f(b)34 b(e)448 b(inserted)f(b)34
+b(efore)447 b(the)h(last)f(non-commen)-34 b(t)2000 66816
+y(w)g(ord)463 b(b)-34 b(y)463 b(default.)714 b(This)463
+b(can)f(b)34 b(e)462 b(c)-34 b(hanged)463 b(b)-34 b(y)463
+b(customizing)g Fu(LaTeX-fill-break-before-code-)2000
+68277 y(comments)p FC(.)710 b(If)460 b(y)-34 b(ou)461
+b(ha)-34 b(v)g(e)461 b(o)-34 b(v)g(erfull)460 b(lines)g(with)h(co)34
+b(de)460 b(commen)-34 b(ts)461 b(y)-34 b(ou)461 b(can)f(\014ll)g(those)
+h(explicitely)e(b)-34 b(y)2000 69738 y(calling)451 b
+Fu(LaTeX-fill-paragraph)459 b FC(or)452 b(pressing)g
+Fs(M-q)h FC(with)g(the)g(cursor)f(p)34 b(ositioned)452
+b(on)h(them.)682 b(This)2000 71200 y(will)393 b(add)i(linebreaks)e(in)h
+(the)g(commen)-34 b(t)394 b(and)h(inden)-34 b(t)395 b(subsequen)-34
+b(t)395 b(commen)-34 b(t)395 b(lines)e(to)h(the)g(column)h(of)p
+eop end
+%%Page: 38 43
+TeXDict begin 38 42 bop 2000 -1550 a FC(Chapter)405 b(2:)539
+b(Editing)404 b(the)h(Do)34 b(cumen)-34 b(t)405 b(Source)24828
+b(38)2000 3985 y(the)359 b(commen)-34 b(t)360 b(in)f(the)h(\014rst)f
+(line)g(of)g(the)h(co)34 b(de)358 b(commen)-34 b(t.)525
+b(In)359 b(this)g(sp)34 b(ecial)358 b(case)h Fs(M-q)h
+FC(only)f(acts)g(on)g(the)2000 5446 y(curren)-34 b(t)404
+b(line)g(and)h(not)g(on)f(the)h(whole)f(paragraph.)3660
+7420 y(Lines)440 b(with)i(`)p Fu(\\par)p FC(')f(are)f(treated)h
+(similarly)e(to)h(co)34 b(de)440 b(commen)-34 b(ts,)450
+b(i.e.)440 b(`)p Fu(\\par)p FC(')h(will)f(b)34 b(e)440
+b(treated)h(as)2000 8882 y(paragraph)536 b(b)34 b(oundary)536
+b(whic)-34 b(h)536 b(should)g(not)g(b)34 b(e)535 b(follo)-34
+b(w)g(ed)537 b(b)-34 b(y)535 b(other)h(co)34 b(de)534
+b(or)h(text.)932 b(But)536 b(it)f(is)g(not)2000 10343
+y(treated)476 b(as)f(a)g(real)g(paragraph)h(b)34 b(oundary)476
+b(lik)-34 b(e)474 b(an)i(empt)-34 b(y)476 b(line)f(where)g(\014lling)g
+(a)h(paragraph)g(w)-34 b(ould)2000 11804 y(stop.)3660
+13778 y(P)g(aragraph)331 b(commands)f(lik)-34 b(e)328
+b(`)p Fu(\\section)p FC(')k(or)d(`)p Fu(\\noindent)p
+FC(')j(\(the)f(list)e(of)h(commands)g(is)f(de\014ned)i(b)-34
+b(y)2000 15239 y Fu(LaTeX-paragraph-commands)p FC(\))416
+b(are)406 b(often)i(to)g(b)34 b(e)406 b(placed)h(in)g(their)g(o)-34
+b(wn)408 b(line\(s\).)548 b(This)407 b(means)h(they)2000
+16701 y(should)418 b(not)g(b)34 b(e)417 b(consecuted)h(with)g(an)-34
+b(y)417 b(preceding)g(or)g(follo)-34 b(wing)418 b(adjacen)-34
+b(t)418 b(lines)f(of)h(text.)577 b(A)-34 b(UCT)48416
+16962 y(E)49091 16701 y(X)2000 18162 y(will)511 b(prev)-34
+b(en)g(t)512 b(this)h(from)e(happ)34 b(ening)513 b(if)f(y)-34
+b(ou)512 b(do)g(not)g(put)h(an)-34 b(y)512 b(text)g(except)f(another)h
+(macro)g(after)2000 19623 y(the)492 b(end)g(of)g(the)g(last)f(brace)g
+(of)h(the)g(resp)34 b(ectiv)-34 b(e)490 b(macro.)801
+b(If)491 b(there)g(is)h(other)f(text)h(after)g(the)g(macro,)2000
+21084 y(A)-34 b(UCT)5332 21345 y(E)6007 21084 y(X)404
+b(regards)g(this)g(as)h(a)f(sign)g(that)h(the)g(macro)f(is)f(part)i(of)
+f(the)h(follo)-34 b(wing)405 b(paragraph.)3660 23058
+y(Here)f(are)f(some)h(examples:)5200 25033 y Fu(\\begin{quote})6473
+26494 y(text)637 b(text)h(text)g(text)5200 28468 y
+(\\begin{quote}\\label{foo})6473 29929 y(text)f(text)h(text)g(text)3660
+31903 y FC(If)365 b(y)-34 b(ou)365 b(press)f Fs(M-q)i
+FC(on)e(the)h(\014rst)g(line)f(in)h(b)34 b(oth)365 b(examples,)371
+b(nothing)366 b(will)e(c)-34 b(hange.)526 b(But)365 b(if)f(y)-34
+b(ou)365 b(write)5200 33877 y Fu(\\begin{quote})641 b(text)6473
+35339 y(text)c(text)h(text)g(text)2000 37313 y FC(and)405
+b(press)f Fs(M-q)p FC(,)h(y)-34 b(ou)404 b(will)g(get)5200
+39287 y Fu(\\begin{quote})641 b(text)d(text)g(text)f(text)h(text)3660
+41261 y FC(Besides)744 b(co)34 b(de)743 b(commen)-34
+b(ts)745 b(and)g(paragraph)g(commands,)830 b(another)744
+b(sp)34 b(ecialit)-34 b(y)744 b(of)g(\014lling)g(in)2000
+42722 y(A)-34 b(UCT)5332 42983 y(E)6007 42722 y(X)387
+b(in)-34 b(v)g(olv)g(es)387 b(commen)-34 b(ted)388 b(lines.)533
+b(Y)-101 b(ou)387 b(should)h(b)34 b(e)387 b(a)-34 b(w)g(are)388
+b(that)g(these)g(commen)-34 b(ts)388 b(are)f(treated)2000
+44184 y(as)357 b(islands)h(in)g(the)f(rest)g(of)h(the)g(L)16806
+44027 y Fv(a)17367 44184 y FC(T)18040 44445 y(E)18714
+44184 y(X)f(co)34 b(de)357 b(if)g(syn)-34 b(tactic)358
+b(\014lling)f(is)g(enabled.)523 b(This)358 b(means,)367
+b(for)357 b(exam-)2000 45645 y(ple,)477 b(if)463 b(y)-34
+b(ou)464 b(try)f(to)g(\014ll)g(an)g(en)-34 b(vironmen)g(t)464
+b(with)g Fu(LaTeX-fill-environment)471 b FC(and)464 b(ha)-34
+b(v)g(e)464 b(the)f(cursor)2000 47106 y(placed)543 b(on)h(a)f(commen)
+-34 b(ted)544 b(line)f(whic)-34 b(h)544 b(do)34 b(es)543
+b(not)h(ha)-34 b(v)g(e)543 b(a)h(surrounding)g(en)-34
+b(vironmen)g(t)544 b(inside)f(the)2000 48567 y(commen)-34
+b(t,)405 b(A)-34 b(UCT)10888 48828 y(E)11562 48567 y(X)404
+b(will)g(rep)34 b(ort)404 b(an)g(error.)3660 50541 y(The)h(relev)-67
+b(an)-34 b(t)404 b(commands)h(and)f(v)-67 b(ariables)403
+b(with)i(regard)f(to)h(\014lling)f(are:)2000 52938 y
+Fs(C-c)h(C-q)g(C-p)8400 54399 y Fu(LaTeX-fill-paragraph)411
+b FC(will)404 b(\014ll)g(and)h(inden)-34 b(t)405 b(the)f(curren)-34
+b(t)405 b(paragraph.)2000 56706 y Fs(M-q)4492 b FC(Alias)404
+b(for)g Fs(C-c)h(C-q)g(C-p)2000 59012 y(C-c)g(C-q)g(C-e)8400
+60473 y Fu(LaTeX-fill-environment)507 b FC(will)499 b(\014ll)f(and)i
+(inden)-34 b(t)501 b(the)e(curren)-34 b(t)500 b(en)-34
+b(vironmen)g(t.)824 b(This)8400 61934 y(ma)-34 b(y)521
+b(e.g.)g(b)34 b(e)521 b(the)g(`do)34 b(cumen)-34 b(t')522
+b(en)-34 b(vironmen)g(t,)551 b(in)521 b(whic)-34 b(h)522
+b(case)f(the)h(en)-34 b(tire)521 b(do)34 b(cumen)-34
+b(t)8400 63395 y(will)404 b(b)34 b(e)403 b(formatted.)2000
+65702 y Fs(C-c)i(C-q)g(C-s)8400 67163 y Fu(LaTeX-fill-section)410
+b FC(will)404 b(\014ll)g(and)h(inden)-34 b(t)405 b(the)g(curren)-34
+b(t)404 b(logical)f(sectional)h(unit.)2000 69469 y Fs(C-c)h(C-q)g(C-r)
+8400 70930 y Fu(LaTeX-fill-region)410 b FC(will)404 b(\014ll)g(and)g
+(inden)-34 b(t)406 b(the)e(curren)-34 b(t)405 b(region.)p
+eop end
+%%Page: 39 44
+TeXDict begin 39 43 bop 2000 -1550 a FC(Chapter)405 b(2:)539
+b(Editing)404 b(the)h(Do)34 b(cumen)-34 b(t)405 b(Source)24828
+b(39)42818 3985 y([User)404 b(Option])-48000 b Fm
+(LaTeX-fill-break-at-separators)5200 5446 y FC(List)360
+b(of)g(separators)h(b)34 b(efore)360 b(or)g(after)g(whic)-34
+b(h)361 b(resp)34 b(ectiv)-34 b(ely)359 b(linebreaks)h(will)f(b)34
+b(e)360 b(inserted)h(if)f(they)5200 6907 y(do)488 b(not)g(\014t)g(in)
+-34 b(to)488 b(one)f(line.)788 b(The)487 b(separators)h(can)f(b)34
+b(e)487 b(curly)g(braces,)507 b(brac)-34 b(k)g(ets,)509
+b(switc)-34 b(hes)488 b(for)5200 8369 y(inline)322 b(math)i(\(`)p
+Fu($)p FC(',)339 b(`)p Fu(\\\()p FC(',)g(`)p Fu(\\\))p
+FC('\))323 b(and)g(switc)-34 b(hes)324 b(for)f(displa)-34
+b(y)323 b(math)h(\(`)p Fu(\\[)p FC(',)339 b(`)p Fu(\\])p
+FC('\).)512 b(Suc)-34 b(h)324 b(formatting)5200 9830
+y(can)470 b(b)34 b(e)469 b(useful)i(to)f(mak)-34 b(e)470
+b(macros)f(and)i(math)f(more)g(visible)f(or)g(to)h(prev)-34
+b(en)g(t)471 b(o)-34 b(v)g(erfull)470 b(lines)f(in)5200
+11291 y(the)480 b(L)7685 11134 y Fv(a)8246 11291 y FC(T)8919
+11552 y(E)9593 11291 y(X)g(source)f(in)h(case)g(a)f(pac)-34
+b(k)-67 b(age)480 b(for)g(displa)-34 b(ying)480 b(formatted)h(T)38688
+11552 y(E)39362 11291 y(X)f(output)i(inside)d(the)5200
+12752 y(Emacs)404 b(bu\013er,)g(lik)-34 b(e)403 b(preview-latex,)g(is)h
+(used.)42818 15210 y([User)g(Option])-48000 b Fm
+(LaTeX-fill-break-before-code-comments)5200 16671 y FC(Co)34
+b(de)428 b(commen)-34 b(ts)428 b(are)f(commen)-34 b(ts)429
+b(preceded)e(b)-34 b(y)428 b(some)g(other)f(text)h(in)g(the)g(same)f
+(line.)609 b(When)5200 18132 y(a)526 b(paragraph)h(con)-34
+b(taining)527 b(suc)-34 b(h)528 b(a)e(commen)-34 b(t)527
+b(is)f(to)g(b)34 b(e)526 b(\014lled,)556 b(the)527 b(commen)-34
+b(t)527 b(start)g(will)e(b)34 b(e)5200 19593 y(seen)454
+b(as)g(a)f(b)34 b(order)454 b(after)g(whic)-34 b(h)455
+b(no)f(line)f(breaks)h(will)f(b)34 b(e)454 b(inserted)g(in)f(the)i
+(same)f(line.)687 b(If)453 b(the)5200 21054 y(option)409
+b Fu(LaTeX-fill-break-before-code-comments)422 b FC(is)408
+b(enabled)g(\(whic)-34 b(h)410 b(is)e(the)h(default\))5200
+22516 y(and)469 b(the)f(commen)-34 b(t)469 b(do)34 b(es)468
+b(not)h(\014t)g(in)-34 b(to)468 b(the)h(line,)483 b(a)468
+b(line)g(break)f(will)h(b)34 b(e)468 b(inserted)g(b)34
+b(efore)467 b(the)5200 23977 y(last)404 b(non-commen)-34
+b(t)406 b(w)-34 b(ord)405 b(to)f(minimize)g(the)g(c)-34
+b(hance)405 b(that)g(the)f(line)g(b)34 b(ecomes)404 b(o)-34
+b(v)g(erfull.)42818 26434 y([User)404 b(Option])-48000
+b Fm(LaTeX-fill-excluded-macros)5200 27895 y FC(A)367
+b(list)g(of)h(macro)f(names)g(\(without)j(leading)d(bac)-34
+b(kslash\))368 b(for)f(whose)h(argumen)-34 b(ts)369 b(\014lling)e
+(should)5200 29357 y(b)34 b(e)398 b(disabled.)537 b(T)-34
+b(ypically)-101 b(,)399 b(y)-34 b(ou)398 b(will)g(w)-34
+b(an)g(t)400 b(to)f(add)g(macros)f(here)g(whic)-34 b(h)400
+b(ha)-34 b(v)g(e)398 b(long,)i(m)-34 b(ulti-line)5200
+30818 y(argumen)g(ts.)660 b(An)444 b(example)f(is)h Fu
+(\\pgfplotstabletypeset)452 b FC(from)444 b(the)h(pgfplotstable)g(pac)
+-34 b(k)-67 b(age)5200 32279 y(whic)-34 b(h)405 b(is)f(used)g(as)h(sho)
+-34 b(wn)405 b(in)g(the)f(follo)-34 b(wing)405 b(listing:)5200
+34072 y Fu(\\pgfplotstabletypeset[skip)646 b(first)638
+b(n=4]{\045)6473 35533 y(XYZ)f(Format,)6473 36995 y(Version)i(1.234)
+6473 38456 y(Date)e(2010-09-01)6473 39917 y(@author)i(Mustermann)6473
+41378 y(A)d(B)h(C)6473 42839 y(1)f(2)h(3)6473 44301 y(4)f(5)h(6)5200
+45762 y(})p eop end
+%%Page: 40 45
+TeXDict begin 40 44 bop 48788 -1550 a FC(40)2000 3985
+y Fz(3)1076 b(Con)-60 b(trolling)716 b(Screen)g(Displa)-60
+b(y)2000 7244 y FC(It)384 b(is)f(often)h(desirable)f(to)h(get)g(visual)
+f(help)g(of)h(what)h(markup)f(co)34 b(de)383 b(in)g(a)h(text)g
+(actually)f(do)34 b(es)383 b(without)2000 8705 y(ha)-34
+b(ving)385 b(to)f(decipher)f(it)h(explicitly)-101 b(.)531
+b(F)-101 b(or)383 b(this)i(purp)34 b(ose)384 b(Emacs)g(and)h(A)-34
+b(UCT)37531 8966 y(E)38205 8705 y(X)384 b(pro)-34 b(vide)384
+b(fon)-34 b(t)386 b(lo)34 b(c)-34 b(king)2000 10166 y(\(also)559
+b(kno)-34 b(wn)561 b(as)e(syn)-34 b(tax)560 b(highligh)-34
+b(ting\))561 b(whic)-34 b(h)560 b(visually)f(sets)g(o\013)g(markup)h
+(co)34 b(de)559 b(lik)-34 b(e)558 b(macros)h(or)2000
+11627 y(en)-34 b(vironmen)g(ts)482 b(b)-34 b(y)481 b(using)g
+(di\013eren)-34 b(t)481 b(colors)f(or)h(fon)-34 b(ts.)770
+b(F)-101 b(or)480 b(example)g(text)h(to)g(b)34 b(e)481
+b(t)-34 b(yp)34 b(eset)481 b(in)g(italics)2000 13089
+y(can)418 b(b)34 b(e)419 b(displa)-34 b(y)g(ed)419 b(with)g(an)g
+(italic)e(fon)-34 b(t)420 b(in)e(the)h(editor)g(as)f(w)-34
+b(ell,)421 b(or)e(lab)34 b(els)417 b(and)i(references)f(get)g(their)
+2000 14550 y(o)-34 b(wn)405 b(distinct)g(color.)3660
+16389 y(While)481 b(fon)-34 b(t)484 b(lo)34 b(c)-34 b(king)481
+b(helps)h(y)-34 b(ou)482 b(grasp)g(the)g(purp)34 b(ose)483
+b(of)f(markup)g(co)34 b(de)481 b(and)i(separate)f(markup)2000
+17850 y(from)405 b(con)-34 b(ten)g(t,)406 b(the)f(markup)g(co)34
+b(de)404 b(can)g(still)g(b)34 b(e)405 b(distracting.)540
+b(A)-34 b(UCT)34990 18111 y(E)35665 17850 y(X)404 b(lets)g(y)-34
+b(ou)405 b(hide)g(those)g(parts)2000 19311 y(and)282
+b(sho)-34 b(w)282 b(them)g(again)g(at)f(request)g(with)h(its)g
+(built-in)f(supp)34 b(ort)283 b(for)e(hiding)h(macros)f(and)h(en)-34
+b(vironmen)g(ts)2000 20772 y(whic)g(h)405 b(w)-34 b(e)405
+b(call)e(folding)h(here.)3660 22611 y(Besides)365 b(folding)g(of)g
+(macros)g(and)g(en)-34 b(vironmen)g(ts,)374 b(A)-34 b(UCT)30721
+22872 y(E)31395 22611 y(X)365 b(pro)-34 b(vides)365 b(supp)34
+b(ort)366 b(for)f(Emacs')f(out-)2000 24072 y(line)329
+b(mo)34 b(de)329 b(whic)-34 b(h)330 b(lets)g(y)-34 b(ou)330
+b(narro)-34 b(w)330 b(the)f(bu\013er)h(con)-34 b(ten)g(t)331
+b(to)f(certain)f(sections)h(of)f(y)-34 b(our)330 b(text)g(b)-34
+b(y)329 b(hiding)2000 25534 y(the)405 b(parts)f(not)h(b)34
+b(elonging)404 b(to)h(these)f(sections.)3660 27373 y(Moreo)-34
+b(v)g(er,)392 b(y)-34 b(ou)391 b(can)e(fo)34 b(cus)391
+b(in)e(a)h(sp)34 b(eci\014c)389 b(p)34 b(ortion)390 b(of)h(the)f(co)34
+b(de)389 b(b)-34 b(y)390 b(narro)-34 b(wing)391 b(the)f(bu\013er)g(to)g
+(the)2000 28834 y(desired)408 b(region.)551 b(A)-34 b(UCT)13578
+29095 y(E)14253 28834 y(X)408 b(pro)-34 b(vides)409 b(also)f(functions)
+i(to)e(narro)-34 b(w)410 b(the)e(bu\013er)h(to)g(the)g(curren)-34
+b(t)408 b(group)2000 30295 y(and)d(to)f(L)6160 30138
+y Fv(a)6721 30295 y FC(T)7394 30556 y(E)8068 30295 y(X)g(en)-34
+b(vironmen)g(ts.)3660 32134 y(A)g(UCT)6992 32395 y(E)7667
+32134 y(X)404 b(also)g(pro)-34 b(vides)404 b(some)h(WYSIWYG)f
+(features.)3660 33973 y(First,)461 b(y)-34 b(ou)450 b(can)g(customize)f
+Fu(font-latex-fontify-script)459 b FC(to)450 b(enable)f(sp)34
+b(ecial)449 b(formatting)i(of)2000 35434 y Fu(^)404 b
+FC(sup)34 b(erscripts)405 b(and)g Fu(_)f FC(subscripts)h(\(see)f
+(Section)h(3.1)e([F)-101 b(on)-34 b(t)406 b(Lo)34 b(c)-34
+b(king],)402 b(page)j(40\).)3660 37273 y(Secondly)-101
+b(,)376 b(A)-34 b(UCT)12284 37534 y(E)12958 37273 y(X)368
+b(with)h(GNU)g(Emacs)f(25)g(or)g(later)g(can)g(displa)-34
+b(y)369 b(certain)e(math)i(macros)f(using)2000 38734
+y(Unico)34 b(de)458 b(c)-34 b(haracters,)470 b(e.g.,)h
+Fu(\\alpha)459 b FC(as)f Fx(\013)t FC(.)701 b(This)458
+b(is)g(called)f(pretti\014cation)i(and)g(is)e(ligh)-34
+b(t)g(w)g(eigh)g(t)460 b(and)2000 40196 y(reasonable)404
+b(robust)h(\(see)f(Section)h(3.5)e([Prettifying],)h(page)g(51\).)3660
+42034 y(A)506 b(more)f(accurate)h(approac)-34 b(h)506
+b(is)g(pro)-34 b(vided)506 b(b)-34 b(y)506 b Fw(p)-34
+b(review-latex)p FC(,)530 b(a)505 b(subsystem)i(of)f(A)-34
+b(UCT)45993 42295 y(E)46668 42034 y(X,)530 b(see)2000
+43496 y(Section)473 b(\\In)-34 b(tro)34 b(duction")475
+b(in)d Ft(The)i Fw(p)-34 b(review-latex)472 b Ft(Man)-34
+b(ual)48 b FC(.)746 b(This)473 b(system)g(uses)g(L)40712
+43339 y Fv(a)41273 43496 y FC(T)41946 43757 y(E)42620
+43496 y(X)g(to)g(generate)2000 44957 y(images)454 b(that)i(are)e(then)h
+(displa)-34 b(y)g(ed)455 b(in)f(y)-34 b(our)455 b(bu\013er.)690
+b(It)454 b(is)g(extremely)f(accurate)h(but)i(can)e(b)34
+b(e)455 b(fragile)2000 46418 y(with)405 b(some)f(pac)-34
+b(k)-67 b(ages)404 b(\(lik)-34 b(e)403 b(older)h(pgf)h(v)-34
+b(ersions\).)3660 48257 y(Please)404 b(note)g(that)i(y)-34
+b(ou)404 b(can)g(use)h(pretti\014cation)g(and)g Fw(p)-34
+b(review-latex)403 b FC(together.)2000 51536 y FB(3.1)896
+b(F)-149 b(on)-50 b(t)598 b(Lo)50 b(c)-50 b(king)2000
+53661 y FC(F)-101 b(on)-34 b(t)439 b(lo)34 b(c)-34 b(king)437
+b(is)g(supp)34 b(osed)439 b(to)f(impro)-34 b(v)g(e)437
+b(readabilit)-34 b(y)438 b(of)f(the)h(source)g(co)34
+b(de)437 b(b)-34 b(y)438 b(highligh)-34 b(ting)438 b(certain)2000
+55122 y(k)-34 b(eyw)g(ords)334 b(with)h(di\013eren)-34
+b(t)334 b(colors)f(or)g(fon)-34 b(ts.)517 b(It)333 b(thereb)-34
+b(y)334 b(lets)g(y)-34 b(ou)334 b(recognize)e(the)j(function)g(of)f
+(markup)2000 56584 y(co)34 b(de)440 b(to)i(a)f(certain)f(exten)-34
+b(t)442 b(without)g(ha)-34 b(ving)442 b(to)f(read)g(the)g(markup)h
+(command.)649 b(F)-101 b(or)441 b(general)g(infor-)2000
+58045 y(mation)485 b(on)g(con)-34 b(trolling)484 b(fon)-34
+b(t)486 b(lo)34 b(c)-34 b(king)484 b(with)h(Emacs')f(F)-101
+b(on)-34 b(t)486 b(Lo)34 b(c)-34 b(k)483 b(mo)34 b(de,)504
+b(see)484 b(Section)h(\\F)-101 b(on)-34 b(t)486 b(Lo)34
+b(c)-34 b(k)2000 59506 y(Mo)34 b(de")404 b(in)g Ft(GNU)h(Emacs)f(Man)
+-34 b(ual)48 b FC(.)42818 62055 y([User)404 b(Option])-48000
+b Fm(TeX-install-font-lock)5200 63516 y FC(Once)421 b(fon)-34
+b(t)423 b(lo)34 b(c)-34 b(king)421 b(is)h(enabled)f(globally)g(or)h
+(for)g(the)g(ma)67 b(jor)422 b(mo)34 b(des)421 b(pro)-34
+b(vided)422 b(b)-34 b(y)423 b(A)-34 b(UCT)48080 63777
+y(E)48754 63516 y(X,)5200 64977 y(the)372 b(fon)-34 b(t)373
+b(lo)34 b(c)-34 b(king)371 b(patterns)i(and)f(functionalit)-34
+b(y)373 b(of)f Fw(font-latex)f FC(are)g(activ)-67 b(ated)372
+b(b)-34 b(y)372 b(default.)528 b(Y)-101 b(ou)5200 66438
+y(can)447 b(switc)-34 b(h)448 b(to)f(a)g(di\013eren)-34
+b(t)447 b(fon)-34 b(t)448 b(lo)34 b(c)-34 b(king)446
+b(sc)-34 b(heme)447 b(or)g(disable)g(fon)-34 b(t)448
+b(lo)34 b(c)-34 b(king)446 b(in)h(A)-34 b(UCT)46690 66699
+y(E)47365 66438 y(X)447 b(b)-34 b(y)5200 67899 y(customizing)404
+b(the)h(v)-67 b(ariable)403 b Fu(TeX-install-font-lock)p
+FC(.)5200 69738 y(Besides)344 b Fw(font-latex)h FC(A)-34
+b(UCT)17976 69999 y(E)18650 69738 y(X)345 b(ships)h(with)f(a)g(sc)-34
+b(heme)345 b(whic)-34 b(h)346 b(is)e(deriv)-34 b(ed)345
+b(from)g(Emacs')f(default)5200 71200 y(L)5522 71043 y
+Fv(a)6083 71200 y FC(T)6756 71461 y(E)7430 71200 y(X)301
+b(mo)34 b(de)301 b(and)h(activ)-67 b(ated)301 b(b)-34
+b(y)301 b(c)-34 b(ho)34 b(osing)302 b Fu(tex-font-setup)p
+FC(.)509 b(Be)300 b(a)-34 b(w)g(are)302 b(that)g(this)g(sc)-34
+b(heme)301 b(is)p eop end
+%%Page: 41 46
+TeXDict begin 41 45 bop 2000 -1550 a FC(Chapter)405 b(3:)539
+b(Con)-34 b(trolling)405 b(Screen)e(Displa)-34 b(y)26418
+b(41)5200 3985 y(not)296 b(coupled)g(with)g(A)-34 b(UCT)17566
+4246 y(E)18240 3985 y(X's)295 b(st)-34 b(yle)296 b(system)f(and)h(not)g
+(the)g(fo)34 b(cus)295 b(of)h(dev)-34 b(elopmen)g(t.)503
+b(Therefore)5200 5446 y(and)290 b(due)f(to)g Fw(font-latex)g
+FC(b)34 b(eing)289 b(m)-34 b(uc)g(h)290 b(more)f(feature-ric)-34
+b(h)289 b(the)g(follo)-34 b(wing)290 b(explanations)g(will)e(only)5200
+6907 y(co)-34 b(v)g(er)404 b Fw(font-latex)p FC(.)5200
+8755 y(In)350 b(case)g(y)-34 b(ou)351 b(w)-34 b(an)g(t)352
+b(to)f(ho)34 b(ok)350 b(in)g(y)-34 b(our)351 b(o)-34
+b(wn)351 b(fon)-34 b(ti\014cation)353 b(sc)-34 b(heme,)361
+b(y)-34 b(ou)350 b(can)h(c)-34 b(ho)34 b(ose)350 b Fu(other)i
+FC(and)5200 10216 y(insert)375 b(the)g(name)g(of)g(the)g(function)h
+(whic)-34 b(h)375 b(sets)g(up)h(y)-34 b(our)374 b(fon)-34
+b(t)377 b(lo)34 b(c)-34 b(king)373 b(patterns.)530 b(If)375
+b(y)-34 b(ou)375 b(w)-34 b(an)g(t)5200 11677 y(to)404
+b(disable)h(fon)-34 b(ti\014cation)406 b(in)e(A)-34 b(UCT)22209
+11938 y(E)22883 11677 y(X)405 b(completely)-101 b(,)403
+b(c)-34 b(ho)34 b(ose)404 b Fu(ignore)p FC(.)3660 14244
+y Fw(font-latex)755 b FC(pro)-34 b(vides)755 b(man)-34
+b(y)756 b(options)g(for)f(customization)g(whic)-34 b(h)756
+b(are)e(accessible)g(with)i Fs(M-x)2000 15705 y(customize-group)409
+b(RET)c(font-latex)j(RET)p FC(.)944 b(F)-101 b(or)538
+b(this)i(description)f(the)g(v)-67 b(arious)538 b(options)i(are)f(ex-)
+2000 17166 y(plained)404 b(in)h(conceptional)f(groups.)2000
+19877 y Fq(3.1.1)818 b(F)-136 b(on)-45 b(ti\014cation)545
+b(of)h(macros)2000 21836 y FC(Highligh)-34 b(ting)380
+b(of)f(macros)g(can)h(b)34 b(e)378 b(customized)i(b)-34
+b(y)379 b(adapting)i(k)-34 b(eyw)g(ord)379 b(lists)g(whic)-34
+b(h)380 b(can)f(b)34 b(e)379 b(found)i(in)2000 23297
+y(the)405 b(customization)f(group)h Fu(font-latex-keywords)p
+FC(.)3660 25145 y(Three)f(t)-34 b(yp)34 b(es)405 b(of)f(macros)g(can)g
+(b)34 b(e)404 b(handled)h(di\013eren)-34 b(tly)404 b(with)h(resp)34
+b(ect)404 b(to)g(fon)-34 b(ti\014cation:)2657 26993 y(1.)800
+b(Commands)477 b(of)e(the)h(form)f(`)p Fu(\\foo[bar]{baz})p
+FC(')k(whic)-34 b(h)476 b(consist)g(of)f(the)h(macro)f(itself,)492
+b(optional)4400 28454 y(argumen)-34 b(ts)388 b(in)e(square)g(brac)-34
+b(k)g(ets)387 b(and)g(mandatory)g(argumen)-34 b(ts)388
+b(in)e(curly)g(braces.)532 b(F)-101 b(or)386 b(the)h(com-)4400
+29915 y(mand)394 b(itself)e(the)h(face)g Fu(font-lock-keyword-face)400
+b FC(will)392 b(b)34 b(e)393 b(used)g(and)g(for)g(the)g(optional)h
+(argu-)4400 31376 y(men)-34 b(ts)432 b(the)g(face)f Fu
+(font-lock-variable-name-face)p FC(.)629 b(The)432 b(face)f(applied)g
+(to)g(the)h(mandatory)4400 32837 y(argumen)-34 b(t)405
+b(dep)34 b(ends)405 b(on)g(the)f(macro)g(class)g(represen)-34
+b(ted)404 b(b)-34 b(y)405 b(the)f(resp)34 b(ectiv)-34
+b(e)403 b(built-in)i(v)-67 b(ariables.)2657 34658 y(2.)800
+b(Declaration)448 b(macros)g(of)h(the)g(form)g(`)p Fu({\\foo)405
+b(text})p FC(')450 b(whic)-34 b(h)450 b(consist)e(of)h(the)g(macro)f
+(whic)-34 b(h)450 b(ma)-34 b(y)4400 36119 y(b)34 b(e)424
+b(enclosed)h(in)g(a)f(T)14017 36380 y(E)14691 36119 y(X)h(group)g
+(together)g(with)h(text)f(to)g(b)34 b(e)424 b(a\013ected)h(b)-34
+b(y)425 b(the)g(macro.)600 b(In)425 b(case)f(a)4400 37580
+y(T)5073 37841 y(E)5747 37580 y(X)461 b(group)h(is)f(presen)-34
+b(t,)476 b(the)462 b(macro)f(will)g(get)g(the)h(face)f
+Fu(font-lock-keyword-face)469 b FC(and)462 b(the)4400
+39041 y(text)523 b(will)g(get)g(the)g(face)g(con\014gured)h(for)f(the)g
+(resp)34 b(ectiv)-34 b(e)522 b(macro)h(class.)894 b(If)523
+b(no)h(T)43523 39302 y(E)44197 39041 y(X)f(group)g(is)4400
+40503 y(presen)-34 b(t,)405 b(the)f(latter)g(face)g(will)g(b)34
+b(e)403 b(applied)i(to)f(the)h(macro)f(itself.)2657 42323
+y(3.)800 b(Simple)380 b(macros)h(of)f(the)h(form)g(`)p
+Fu(\\foo)p FC(')g(whic)-34 b(h)381 b(do)g(not)g(ha)-34
+b(v)g(e)381 b(an)-34 b(y)381 b(argumen)-34 b(ts)382 b(or)e(groupings.)
+531 b(The)4400 43784 y(resp)34 b(ectiv)-34 b(e)403 b(face)h(will)g(b)34
+b(e)403 b(applied)i(to)f(the)h(macro)f(itself.)3660 45991
+y(Customization)h(v)-67 b(ariables)402 b(for)h(`)p Fu(\\foo[bar]{baz})p
+FC(')k(t)-34 b(yp)34 b(e)404 b(macros)e(allo)-34 b(w)404
+b(b)34 b(oth)404 b(the)f(macro)g(name)2000 47452 y(and)424
+b(the)g(sequence)f(of)h(argumen)-34 b(ts)424 b(to)g(b)34
+b(e)423 b(sp)34 b(eci\014ed.)596 b(The)424 b(latter)f(is)g(done)h(with)
+g(a)g(string)g(whic)-34 b(h)424 b(can)2000 48914 y(con)-34
+b(tain)405 b(the)g(c)-34 b(haracters)2000 51120 y(`)p
+Fu(*)p FC(')5090 b(indicating)405 b(the)f(existence)f(of)i(a)f(starred)
+g(v)-67 b(arian)-34 b(t)404 b(for)h(the)f(macro,)2000
+53300 y(`)p Fu([)p FC(')5090 b(for)404 b(optional)h(argumen)-34
+b(ts)405 b(in)g(brac)-34 b(k)g(ets,)2000 55480 y(`)p
+Fu({)p FC(')5090 b(for)404 b(mandatory)h(argumen)-34
+b(ts)406 b(in)e(braces,)2000 57660 y(`)p Fu(\\)p FC(')5090
+b(for)404 b(mandatory)h(argumen)-34 b(ts)406 b(consisting)e(of)h(a)f
+(single)g(macro)f(and)2000 59839 y(`)p Fu(|)p FC(')5090
+b(as)404 b(a)g(pre\014x)g(indicating)h(that)g(t)-34 b(w)g(o)406
+b(alternativ)-34 b(es)404 b(are)f(follo)-34 b(wing.)3660
+62046 y(F)-101 b(or)333 b(example)f(the)h(sp)34 b(eci\014er)332
+b(for)g(`)p Fu(\\documentclass)p FC(')337 b(w)-34 b(ould)334
+b(b)34 b(e)332 b(`)p Fu([{)p FC(')h(b)34 b(ecause)332
+b(the)h(macro)g(has)g(one)2000 63507 y(optional)462 b(follo)-34
+b(w)g(ed)462 b(b)-34 b(y)462 b(one)g(mandatory)g(argumen)-34
+b(t.)711 b(The)462 b(sp)34 b(eci\014er)461 b(for)g(`)p
+Fu(\\newcommand)p FC(')k(w)-34 b(ould)462 b(b)34 b(e)2000
+64968 y(`)p Fu(*|{\\[[{)p FC(')403 b(b)34 b(ecause)401
+b(there)g(is)g(a)g(starred)h(v)-67 b(arian)-34 b(t,)401
+b(the)h(mandatory)g(argumen)-34 b(t)403 b(follo)-34 b(wing)402
+b(the)f(macro)2000 66430 y(name)351 b(can)g(b)34 b(e)350
+b(a)h(macro)f(or)g(a)h(T)16548 66691 y(E)17222 66430
+y(X)f(group)h(whic)-34 b(h)352 b(can)f(b)34 b(e)350 b(follo)-34
+b(w)g(ed)352 b(b)-34 b(y)351 b(t)-34 b(w)g(o)352 b(optional)f(argumen)
+-34 b(ts)352 b(and)2000 67891 y(the)405 b(last)f(tok)-34
+b(en)405 b(is)e(a)h(mandatory)h(argumen)-34 b(t)406 b(in)e(braces.)3660
+69738 y(Customization)327 b(v)-67 b(ariables)323 b(for)i(the)g(`)p
+Fu({\\foo)405 b(text})p FC(')327 b(and)e(`)p Fu(\\foo)p
+FC(')g(t)-34 b(yp)34 b(es)325 b(are)f(simple)h(lists)f(of)h(strings)
+2000 71200 y(where)404 b(eac)-34 b(h)404 b(en)-34 b(try)405
+b(is)f(a)g(macro)f(name)i(\(without)h(the)e(leading)h(bac)-34
+b(kslash\).)p eop end
+%%Page: 42 47
+TeXDict begin 42 46 bop 2000 -1550 a FC(Chapter)405 b(3:)539
+b(Con)-34 b(trolling)405 b(Screen)e(Displa)-34 b(y)26418
+b(42)2000 3985 y Fq(General)545 b(macro)i(classes)2000
+5944 y Fw(font-latex)439 b FC(pro)-34 b(vides)439 b(k)-34
+b(eyw)g(ord)439 b(lists)g(for)f(di\013eren)-34 b(t)440
+b(macro)e(classes)g(whic)-34 b(h)440 b(are)e(describ)34
+b(ed)439 b(in)g(the)g(fol-)2000 7406 y(lo)-34 b(wing)405
+b(table:)2000 9711 y Fu(font-latex-match-function-keywords)8400
+11172 y FC(Keyw)-34 b(ords)404 b(for)h(macros)e(de\014ning)j(or)d
+(related)h(to)h(functions,)g(lik)-34 b(e)403 b(`)p Fu(\\newcommand)p
+FC('.)8400 12634 y(T)-34 b(yp)34 b(e:)539 b(`)p Fu(\\macro[...]{...})p
+FC(')8400 14095 y(F)-101 b(ace:)538 b Fu(font-lock-function-name-face)
+2000 16340 y(font-latex-match-reference-keywords)8400
+17801 y FC(Keyw)-34 b(ords)404 b(for)h(macros)e(de\014ning)j(or)d
+(related)h(to)h(references,)d(lik)-34 b(e)404 b(`)p Fu(\\ref)p
+FC('.)8400 19263 y(T)-34 b(yp)34 b(e:)539 b(`)p Fu(\\macro[...]{...})p
+FC(')8400 20724 y(F)-101 b(ace:)538 b Fu(font-lock-constant-face)2000
+22969 y(font-latex-match-textual-keywords)8400 24431
+y FC(Keyw)-34 b(ords)404 b(for)h(macros)e(sp)34 b(ecifying)404
+b(textual)g(con)-34 b(ten)g(t,)406 b(lik)-34 b(e)403
+b(`)p Fu(\\caption)p FC('.)8400 25892 y(T)-34 b(yp)34
+b(e:)539 b(`)p Fu(\\macro[...]{...})p FC(')8400 27353
+y(F)-101 b(ace:)538 b Fu(font-lock-type-face)2000 29599
+y(font-latex-match-variable-keywords)8400 31060 y FC(Keyw)-34
+b(ords)404 b(for)h(macros)e(de\014ning)j(or)d(related)h(to)h(v)-67
+b(ariables,)402 b(lik)-34 b(e)404 b(`)p Fu(\\setlength)p
+FC('.)8400 32521 y(T)-34 b(yp)34 b(e:)539 b(`)p Fu(\\macro[...]{...})p
+FC(')8400 33982 y(F)-101 b(ace:)538 b Fu(font-lock-variable-name-face)
+2000 36228 y(font-latex-match-warning-keywords)8400 37689
+y FC(Keyw)-34 b(ords)858 b(for)g(imp)34 b(ortan)-34 b(t)859
+b(macros,)971 b(e.g.)857 b(a\013ecting)h(line)f(or)h(page)g(break,)971
+b(lik)-34 b(e)8400 39150 y(`)p Fu(\\clearpage)p FC('.)8400
+40611 y(T)g(yp)34 b(e:)539 b(`)p Fu(\\macro)p FC(')8400
+42072 y(F)-101 b(ace:)538 b Fu(font-latex-warning-face)2000
+44849 y Fq(Sectioning)545 b(commands)2000 46809 y FC(Sectioning)622
+b(commands)h(are)e(macros)g(lik)-34 b(e)621 b(`)p Fu(\\chapter)p
+FC(')i(or)f(`)p Fu(\\section)p FC('.)1193 b(F)-101 b(or)621
+b(these)h(commands)2000 48270 y(there)602 b(are)f(t)-34
+b(w)g(o)604 b(fon)-34 b(ti\014cation)603 b(sc)-34 b(hemes)602
+b(whic)-34 b(h)603 b(ma)-34 b(y)602 b(b)34 b(e)602 b(selected)f(b)-34
+b(y)603 b(customizing)f(the)g(v)-67 b(ariable)2000 49731
+y Fu(font-latex-fontify-sectioning)p FC(.)42818 52429
+y([User)404 b(Option])-48000 b Fm(font-latex-fontify-sectioning)5200
+53890 y FC(P)-34 b(er)417 b(default)i(sectioning)e(commands)i(will)d(b)
+34 b(e)418 b(sho)-34 b(wn)419 b(in)e(a)h(larger,)h(prop)34
+b(ortional)418 b(fon)-34 b(t,)422 b(whic)-34 b(h)5200
+55351 y(corresp)34 b(onds)565 b(to)h(a)f(n)-34 b(um)g(b)34
+b(er)566 b(for)f(this)h(v)-67 b(ariable.)1021 b(The)565
+b(fon)-34 b(t)567 b(size)d(v)-67 b(aries)564 b(with)i(the)g(section-)
+5200 56812 y(ing)675 b(lev)-34 b(el,)742 b(e.g.)674 b(`)p
+Fu(\\part)p FC(')i(\()p Fu(font-latex-sectioning-0-face)p
+FC(\))686 b(has)676 b(a)f(larger)f(fon)-34 b(t)677 b(than)5200
+58274 y(`)p Fu(\\paragraph)p FC(')414 b(\()p Fu
+(font-latex-sectioning-5-face)p FC(\).)572 b(T)-34 b(ypically)-101
+b(,)413 b(v)-67 b(alues)411 b(from)h(1.05)f(to)h(1.3)5200
+59735 y(for)275 b Fu(font-latex-fontify-sectioning)286
+b FC(giv)-34 b(e)275 b(b)34 b(est)276 b(results,)301
+b(dep)34 b(ending)276 b(on)g(y)-34 b(our)275 b(fon)-34
+b(t)277 b(setup.)5200 61196 y(If)487 b(y)-34 b(ou)487
+b(rather)g(lik)-34 b(e)486 b(to)i(use)f(the)g(base)h(fon)-34
+b(t)488 b(and)g(a)f(di\013eren)-34 b(t)487 b(color,)507
+b(set)487 b(the)g(v)-67 b(ariable)486 b(to)h(the)5200
+62657 y(sym)-34 b(b)34 b(ol)462 b(`)p Fu(color)p FC('.)714
+b(In)462 b(this)h(case)f(the)h(face)f Fu(font-lock-type-face)469
+b FC(will)461 b(b)34 b(e)462 b(used)h(to)g(fon)-34 b(tify)5200
+64118 y(the)404 b(argumen)-34 b(t)406 b(of)e(the)h(sectioning)f
+(commands.)3660 66816 y(Y)-101 b(ou)373 b(can)f(mak)-34
+b(e)371 b Fw(font-latex)h FC(a)-34 b(w)g(are)373 b(of)f(y)-34
+b(our)372 b(o)-34 b(wn)373 b(sectioning)f(commands)h(b)34
+b(e)371 b(adding)i(them)f(to)g(the)2000 68277 y(k)-34
+b(eyw)g(ord)700 b(lists:)1130 b Fu
+(font-latex-match-sectioning-0-keywords)713 b FC(\()p
+Fu(font-latex-sectioning-)2000 69738 y(0-face)p FC(\))732
+b(.)293 b(.)h(.)802 b Fu(font-latex-match-sectioning-5-keywords)669
+b FC(\()p Fu(font-latex-sectioning-5-)2000 71200 y(face)p
+FC(\).)p eop end
+%%Page: 43 48
+TeXDict begin 43 47 bop 2000 -1550 a FC(Chapter)405 b(3:)539
+b(Con)-34 b(trolling)405 b(Screen)e(Displa)-34 b(y)26418
+b(43)3660 3985 y(Related)369 b(to)g(sectioning)g(there)g(is)f(sp)34
+b(ecial)368 b(supp)34 b(ort)370 b(for)f(slide)f(titles)h(whic)-34
+b(h)369 b(ma)-34 b(y)369 b(b)34 b(e)369 b(fon)-34 b(ti\014ed)370
+b(with)2000 5446 y(the)357 b(face)g Fu(font-latex-slide-title-face)p
+FC(.)532 b(Y)-101 b(ou)358 b(can)f(add)g(macros)g(whic)-34
+b(h)358 b(should)g(app)34 b(ear)356 b(in)h(this)2000
+6907 y(face)404 b(b)-34 b(y)404 b(customizing)h(the)f(v)-67
+b(ariable)403 b Fu(font-latex-match-slide-title-keywords)p
+FC(.)2000 9602 y Fq(Commands)546 b(for)g(c)-45 b(hanging)546
+b(fon)-45 b(ts)2000 11561 y FC(L)2322 11404 y Fv(a)2883
+11561 y FC(T)3556 11822 y(E)4230 11561 y(X)409 b(pro)-34
+b(vides)409 b(v)-67 b(arious)408 b(macros)h(for)g(c)-34
+b(hanging)410 b(fon)-34 b(ts)410 b(or)f(fon)-34 b(t)410
+b(attributes.)554 b(F)-101 b(or)409 b(example,)g(y)-34
+b(ou)410 b(can)2000 13023 y(select)381 b(an)i(italic)e(fon)-34
+b(t)384 b(with)f(`)p Fu(\\textit{...})p FC(')j(or)c(b)34
+b(old)382 b(with)h(`)p Fu(\\textbf{...})p FC('.)535 b(An)382
+b(alternativ)-34 b(e)382 b(w)-34 b(a)g(y)2000 14484 y(to)532
+b(sp)34 b(ecify)531 b(these)h(fon)-34 b(ts)533 b(is)f(to)g(use)g(sp)34
+b(ecial)531 b(macros)g(in)h(T)29791 14745 y(E)30465 14484
+y(X)f(groups,)564 b(lik)-34 b(e)531 b(`)p Fu({\\itshape)407
+b(...})p FC(')533 b(for)2000 15945 y(italics)479 b(and)i(`)p
+Fu({\\bfseries)407 b(...})p FC(')481 b(for)e(b)34 b(old.)766
+b(As)480 b(men)-34 b(tioned)481 b(ab)34 b(o)-34 b(v)g(e,)498
+b(w)-34 b(e)480 b(call)f(the)h(former)g(v)-67 b(arian)-34
+b(ts)2000 17406 y(commands)405 b(and)g(the)f(latter)g(declarations.)
+3660 19237 y(Besides)418 b(the)i(macros)e(for)h(c)-34
+b(hanging)420 b(fon)-34 b(ts)420 b(pro)-34 b(vided)419
+b(b)-34 b(y)419 b(L)31190 19080 y Fv(a)31751 19237 y
+FC(T)32424 19498 y(E)33098 19237 y(X)f(there)h(is)f(an)i(in\014nite)f
+(n)-34 b(um)g(b)34 b(er)420 b(of)2000 20699 y(other)340
+b(macros|either)g(de\014ned)h(b)-34 b(y)341 b(y)-34 b(ourself)340
+b(for)g(logical)f(markup)i(or)f(de\014ned)h(b)-34 b(y)340
+b(macro)g(pac)-34 b(k)-67 b(ages|)2000 22160 y(whic)-34
+b(h)543 b(a\013ect)e(the)h(fon)-34 b(t)543 b(in)f(the)g(t)-34
+b(yp)34 b(eset)542 b(text.)952 b(While)541 b(L)29398
+22003 y Fv(a)29959 22160 y FC(T)30632 22421 y(E)31305
+22160 y(X's)h(built-in)g(macros)g(and)g(macros)g(of)2000
+23621 y(pac)-34 b(k)-67 b(ages)421 b(kno)-34 b(wn)423
+b(b)-34 b(y)423 b(A)-34 b(UCT)15897 23882 y(E)16571 23621
+y(X)422 b(are)f(already)g(handled)i(b)-34 b(y)422 b Fw(font-latex)p
+FC(,)k(di\013eren)-34 b(t)422 b(k)-34 b(eyw)g(ord)422
+b(lists)f(p)34 b(er)2000 25082 y(t)-34 b(yp)34 b(e)472
+b(st)-34 b(yle)472 b(and)h(macro)e(t)-34 b(yp)34 b(e)472
+b(are)f(pro)-34 b(vided)473 b(for)f(en)-34 b(tering)472
+b(y)-34 b(our)472 b(o)-34 b(wn)473 b(macros)f(whic)-34
+b(h)473 b(are)e(listed)h(in)2000 26543 y(the)405 b(table)f(b)34
+b(elo)-34 b(w.)2000 28726 y Fu(font-latex-match-bold-command-keywords)
+8400 30187 y FC(Keyw)g(ords)404 b(for)h(commands)g(sp)34
+b(ecifying)403 b(a)h(b)34 b(old)405 b(t)-34 b(yp)34 b(e)404
+b(st)-34 b(yle.)8400 31648 y(F)-101 b(ace:)538 b Fu
+(font-latex-bold-face)2000 33811 y
+(font-latex-match-italic-command-keywords)8400 35272
+y FC(Keyw)-34 b(ords)404 b(for)h(commands)g(sp)34 b(ecifying)403
+b(an)i(italic)e(fon)-34 b(t.)8400 36734 y(F)-101 b(ace:)538
+b Fu(font-latex-italic-face)2000 38897 y
+(font-latex-match-math-command-keywords)8400 40358 y
+FC(Keyw)-34 b(ords)404 b(for)h(commands)g(sp)34 b(ecifying)403
+b(a)h(math)h(fon)-34 b(t.)8400 41819 y(F)-101 b(ace:)538
+b Fu(font-latex-math-face)2000 43983 y
+(font-latex-match-type-command-keywords)8400 45444 y
+FC(Keyw)-34 b(ords)404 b(for)h(commands)g(sp)34 b(ecifying)403
+b(a)h(t)-34 b(yp)34 b(ewriter)404 b(fon)-34 b(t.)8400
+46905 y(F)-101 b(ace:)538 b Fu(font-lock-type-face)2000
+49068 y(font-latex-match-bold-declaration-keywords)8400
+50530 y FC(Keyw)-34 b(ords)404 b(for)h(declarations)f(sp)34
+b(ecifying)403 b(a)h(b)34 b(old)405 b(t)-34 b(yp)34 b(e)404
+b(st)-34 b(yle.)8400 51991 y(F)-101 b(ace:)538 b Fu
+(font-latex-bold-face)2000 54154 y
+(font-latex-match-italic-declaration-keywords)8400 55615
+y FC(Keyw)-34 b(ords)404 b(for)h(declarations)f(sp)34
+b(ecifying)403 b(an)i(italic)e(fon)-34 b(t.)8400 57076
+y(F)-101 b(ace:)538 b Fu(font-latex-italic-face)2000
+59240 y(font-latex-match-type-declaration-keywords)8400
+60701 y FC(Keyw)-34 b(ords)404 b(for)h(declarations)f(sp)34
+b(ecifying)403 b(a)h(t)-34 b(yp)34 b(ewriter)404 b(fon)-34
+b(t.)8400 62162 y(F)-101 b(ace:)538 b Fu(font-latex-type-face)2000
+64857 y Fq(Deactiv)-91 b(ating)546 b(defaults)g(of)g(built-in)f(k)-45
+b(eyw)g(ord)544 b(classes)2000 66816 y Fw(font-latex)440
+b FC(ships)i(with)f(prede\014ned)h(lists)f(of)g(k)-34
+b(eyw)g(ords)441 b(for)g(the)g(classes)f(describ)34 b(ed)440
+b(ab)34 b(o)-34 b(v)g(e.)649 b(Y)-101 b(ou)441 b(can)2000
+68277 y(disable)593 b(these)g(defaults)i(p)34 b(er)592
+b(class)h(b)-34 b(y)593 b(customizing)h(the)f(v)-67 b(ariable)592
+b Fu(font-latex-deactivated-)2000 69738 y(keyword-classes)p
+FC(.)890 b(This)520 b(is)f(a)g(list)g(of)h(strings)g(for)f(k)-34
+b(eyw)g(ord)520 b(classes)f(to)h(b)34 b(e)519 b(deactiv)-67
+b(ated.)884 b(V)-101 b(alid)2000 71200 y(en)-34 b(tries)524
+b(are)f Fu(")p FC(w)-34 b(arning)p Fu(")p FC(,)556 b
+Fu(")p FC(v)-67 b(ariable)p Fu(")p FC(,)552 b Fu(")p
+FC(biblatexnoarg)p Fu(")p FC(,)j Fu(")p FC(biblatex)p
+Fu(")p FC(,)f Fu(")p FC(reference)p Fu(")p FC(,)f Fu(")p
+FC(function)p Fu(")526 b FC(,)p eop end
+%%Page: 44 49
+TeXDict begin 44 48 bop 2000 -1550 a FC(Chapter)405 b(3:)539
+b(Con)-34 b(trolling)405 b(Screen)e(Displa)-34 b(y)26418
+b(44)2000 3985 y Fu(")p FC(sectioning-0)p Fu(")p FC(,)462
+b Fu(")p FC(sectioning-1)p Fu(")p FC(,)g Fu(")p FC(sectioning-2)p
+Fu(")p FC(,)g Fu(")p FC(sectioning-3)p Fu(")p FC(,)g
+Fu(")p FC(sectioning-4)p Fu(")p FC(,)g Fu(")p FC(sectioning-)2000
+5446 y(5)p Fu(")p FC(,)346 b Fu(")p FC(slide-title)p
+Fu(")p FC(,)f Fu(")p FC(textual)p Fu(")p FC(,)i Fu(")p
+FC(b)34 b(old-command)p Fu(")p FC(,)347 b Fu(")p FC(italic-command)p
+Fu(")p FC(,)f Fu(")p FC(math-command)p Fu(")p FC(,)i
+Fu(")p FC(t)-34 b(yp)34 b(e-)2000 6907 y(command)p Fu(")p
+FC(,)405 b Fu(")p FC(b)34 b(old-declaration)p Fu(")p
+FC(,)405 b Fu(")p FC(italic-declaration)p Fu(")p FC(,)e
+Fu(")p FC(t)-34 b(yp)34 b(e-declaration)p Fu(")p FC(.)3660
+8677 y(Y)-101 b(ou)585 b(can)f(also)g(get)g(rid)g(of)h(certain)f(k)-34
+b(eyw)g(ords)584 b(only)-101 b(.)1079 b(F)-101 b(or)584
+b(example)f(if)h(y)-34 b(ou)585 b(w)-34 b(an)g(t)586
+b(to)e(remo)-34 b(v)g(e)2000 10138 y(highligh)g(ting)405
+b(of)g(fo)34 b(otnotes)405 b(as)f(references)f(y)-34
+b(ou)405 b(can)f(put)h(the)g(follo)-34 b(wing)405 b(stanza)g(in)-34
+b(to)404 b(y)-34 b(our)405 b(init)f(\014le:)5200 11908
+y Fu(\(eval-after-load)642 b("font-latex")6473 13369
+y('\(setq-default)7745 14831 y
+(font-latex-match-reference-keywords-local)7745 16292
+y(\(remove)d(\(assoc-string)i("footnote")12836 17753
+y(font-latex-match-reference-keywords-local\))15382 19214
+y(font-latex-match-reference-keywords-local\)\)\))3660
+20984 y FC(But)507 b(note)g(that)h(this)e(means)h(\014ddling)g(with)h
+Fw(font-latex)p FC('s)e(in)-34 b(ternals)507 b(and)g(is)f(not)h(guaran)
+-34 b(teed)508 b(to)2000 22445 y(w)-34 b(ork)404 b(in)g(future)i(v)-34
+b(ersions)404 b(of)g Fw(font-latex)p FC(.)2000 25055
+y Fq(User-de\014ned)545 b(k)-45 b(eyw)g(ord)544 b(classes)2000
+27014 y FC(In)483 b(case)g(the)g(customization)h(options)g(explained)f
+(ab)34 b(o)-34 b(v)g(e)483 b(do)g(not)h(su\016ce)f(for)g(y)-34
+b(our)484 b(needs,)502 b(y)-34 b(ou)484 b(can)2000 28476
+y(sp)34 b(ecify)380 b(y)-34 b(our)381 b(o)-34 b(wn)381
+b(k)-34 b(eyw)g(ord)381 b(classes)f(b)-34 b(y)381 b(customizing)g(the)g
+(v)-67 b(ariable)379 b Fu(font-latex-user-keyword-)2000
+29937 y(classes)p FC(.)42818 32324 y([User)404 b(Option])-48000
+b Fm(font-latex-user-keyword-classes)5200 33785 y FC(Ev)-34
+b(ery)453 b(k)-34 b(eyw)g(ord)455 b(class)f(consists)h(of)f(four)h
+(parts,)467 b(a)455 b(name,)466 b(a)455 b(list)f(of)g(k)-34
+b(eyw)g(ords,)467 b(a)455 b(face)f(and)h(a)5200 35246
+y(sp)34 b(eci\014er)403 b(for)h(the)h(t)-34 b(yp)34 b(e)404
+b(of)h(macros)f(to)g(b)34 b(e)404 b(highligh)-34 b(ted.)5200
+37016 y(When)354 b(adding)h(new)f(en)-34 b(tries,)363
+b(y)-34 b(ou)355 b(ha)-34 b(v)g(e)354 b(to)g(use)g(unique)g(v)-67
+b(alues)353 b(for)h(the)g(class)f(names,)364 b(i.e.)353
+b(they)5200 38477 y(m)-34 b(ust)470 b(not)f(clash)g(with)h(names)f(of)g
+(the)g(built-in)g(k)-34 b(eyw)g(ord)469 b(classes)g(or)f(other)h(names)
+g(giv)-34 b(en)469 b(b)-34 b(y)5200 39938 y(y)g(ou.)539
+b(Additionally)404 b(the)h(names)f(m)-34 b(ust)406 b(not)f(con)-34
+b(tain)405 b(spaces.)5200 41708 y(The)d(list)f(of)h(k)-34
+b(eyw)g(ords)402 b(de\014nes)g(whic)-34 b(h)403 b(commands)f(and)g
+(declarations)g(should)g(b)34 b(e)401 b(co)-34 b(v)g(ered)402
+b(b)-34 b(y)5200 43169 y(the)476 b(k)-34 b(eyw)g(ord)475
+b(class.)751 b(A)476 b(k)-34 b(eyw)g(ord)475 b(can)h(either)e(b)34
+b(e)475 b(a)g(simple)g(command)h(name)g(omitting)f(the)5200
+44631 y(leading)469 b(bac)-34 b(kslash)469 b(or)g(a)f(list)h
+(consisting)g(of)g(the)g(command)h(name)f(and)h(a)e(string)h(sp)34
+b(ecifying)5200 46092 y(the)404 b(sequence)g(of)h(argumen)-34
+b(ts)405 b(for)f(the)h(command.)5200 47862 y(The)g(face)e(argumen)-34
+b(t)406 b(can)e(either)g(b)34 b(e)403 b(an)i(existing)f(face)g(or)g
+(face)f(attributes)j(made)e(b)-34 b(y)405 b(y)-34 b(ou.)5200
+49632 y(There)388 b(are)g(three)g(alternativ)-34 b(es)388
+b(for)g(the)h(t)-34 b(yp)34 b(e)388 b(of)h(k)-34 b(eyw)g
+(ords|\\Command)390 b(with)f(argumen)-34 b(ts",)5200
+51093 y(\\Declaration)451 b(inside)g(T)16533 51354 y(E)17206
+51093 y(X)g(group")h(and)g(\\Command)h(without)f(argumen)-34
+b(ts"|whic)g(h)454 b(corre-)5200 52554 y(sp)34 b(ond)405
+b(with)g(the)g(macro)e(t)-34 b(yp)34 b(es)405 b(explained)f(ab)34
+b(o)-34 b(v)g(e.)2000 55164 y Fq(3.1.2)818 b(F)-136 b(on)-45
+b(ti\014cation)545 b(of)h(quotes)2000 57123 y FC(T)-101
+b(ext)402 b(in)f(quotation)i(marks)e(is)g(displa)-34
+b(y)g(ed)403 b(with)f(the)g(face)f Fu(font-latex-string-face)p
+FC(.)546 b(Besides)400 b(the)2000 58584 y(v)-67 b(arious)312
+b(forms)h(of)g(op)34 b(ening)312 b(and)i(closing)e(double)h(and)g
+(single)g(quotation)g(marks,)330 b(so-called)312 b(guillemets)2000
+60045 y(\()p Fu(<<)p FC(,)373 b Fu(>>)p FC(\))366 b(can)e(b)34
+b(e)365 b(used)g(for)g(quoting.)526 b(Because)363 b(there)i(are)f(t)-34
+b(w)g(o)366 b(st)-34 b(yles)364 b(of)h(using)h(them|F)-101
+b(renc)-34 b(h)365 b(st)-34 b(yle:)2000 61507 y Fu(<<)296
+b FC(text)g Fu(>>)p FC(;)332 b(German)296 b(st)-34 b(yle:)484
+b Fu(>>)p FC(text)p Fu(<<)p FC(|y)-34 b(ou)298 b(can)e(customize)f(the)
+i(v)-67 b(ariable)294 b Fu(font-latex-quotes)302 b FC(to)2000
+62968 y(tell)316 b Fw(font-latex)f FC(whic)-34 b(h)317
+b(t)-34 b(yp)34 b(e)317 b(y)-34 b(ou)316 b(are)g(using)h(if)f(the)g
+(correct)f(v)-67 b(alue)316 b(cannot)h(b)34 b(e)316 b(deriv)-34
+b(ed)315 b(from)i(do)34 b(cumen)-34 b(t)2000 64429 y(prop)34
+b(erties.)42818 66816 y([User)404 b(Option])-48000 b
+Fm(font-latex-quotes)5200 68277 y FC(The)469 b(default)h(v)-67
+b(alue)468 b(of)i Fu(font-latex-quotes)k FC(is)469 b(`)p
+Fu(auto)p FC(')h(whic)-34 b(h)470 b(means)f(that)h Fw(font-latex)e
+FC(will)5200 69738 y(try)391 b(to)h(deriv)-34 b(e)391
+b(the)h(correct)f(t)-34 b(yp)34 b(e)392 b(of)g(quotation)h(mark)e(matc)
+-34 b(hing)393 b(from)f(do)34 b(cumen)-34 b(t)392 b(prop)34
+b(erties)5200 71200 y(lik)-34 b(e)403 b(the)i(language)f(option)h
+(supplied)g(to)g(the)f(bab)34 b(el)404 b(L)30276 71043
+y Fv(a)30837 71200 y FC(T)31510 71461 y(E)32184 71200
+y(X)g(pac)-34 b(k)-67 b(age.)p eop end
+%%Page: 45 50
+TeXDict begin 45 49 bop 2000 -1550 a FC(Chapter)405 b(3:)539
+b(Con)-34 b(trolling)405 b(Screen)e(Displa)-34 b(y)26418
+b(45)5200 3985 y(If)389 b(the)h(automatic)g(detection)g(fails)g(for)f
+(y)-34 b(ou)390 b(and)g(y)-34 b(ou)390 b(mostly)g(use)f(one)h(sp)34
+b(eci\014c)389 b(st)-34 b(yle)389 b(y)-34 b(ou)390 b(can)5200
+5446 y(set)k(it)f(to)i(a)e(sp)34 b(eci\014c)393 b(language-dep)34
+b(enden)-34 b(t)396 b(v)-67 b(alue)393 b(as)h(w)-34 b(ell.)534
+b(Set)395 b(the)f(v)-67 b(alue)393 b(to)h(`)p Fu(german)p
+FC(')h(if)e(y)-34 b(ou)5200 6907 y(are)418 b(using)h
+Fu(>>)p FC(German)h(quotes)p Fu(<<)f FC(and)h(to)f(`)p
+Fu(french)p FC(')h(if)e(y)-34 b(ou)419 b(are)f(using)h
+Fu(<<)h FC(F)-101 b(renc)-34 b(h)419 b(quotes)g Fu(>>)p
+FC(.)5200 8369 y Fw(font-latex)462 b FC(will)f(recognize)f(the)i
+(di\013eren)-34 b(t)463 b(w)-34 b(a)g(ys)462 b(these)g(quotes)g(can)g
+(b)34 b(e)462 b(giv)-34 b(en)461 b(in)h(y)-34 b(our)462
+b(source)5200 9830 y(co)34 b(de,)403 b(i.e.)g(\(`)p Fu("<)p
+FC(',)h(`)p Fu(">)p FC('\),)h(\(`)p Fu(<<)p FC(',)f(`)p
+Fu(>>)p FC('\))g(and)h(the)g(resp)34 b(ectiv)-34 b(e)403
+b(8-bit)h(v)-67 b(arian)-34 b(ts.)5200 11731 y(If)404
+b(y)-34 b(ou)405 b(set)f Fu(font-latex-quotes)410 b FC(to)404
+b(nil,)g(quoted)h(con)-34 b(ten)g(t)406 b(will)d(not)i(b)34
+b(e)404 b(fon)-34 b(ti\014ed.)2000 14496 y Fq(3.1.3)818
+b(F)-136 b(on)-45 b(ti\014cation)545 b(of)h(mathematical)g(constructs)
+2000 16455 y FC(In)555 b(L)3988 16298 y Fv(a)4549 16455
+y FC(T)5222 16716 y(E)5895 16455 y(X)g(mathematics)g(can)g(b)34
+b(e)554 b(indicated)h(b)-34 b(y)555 b(a)g(v)-67 b(ariet)-34
+b(y)554 b(of)g(di\013eren)-34 b(t)556 b(metho)34 b(ds:)840
+b(toggles)554 b(\(lik)-34 b(e)2000 17916 y(dollar)601
+b(signs\),)651 b(macros)601 b(and)h(en)-34 b(vironmen)g(ts.)1131
+b(Math)602 b(constructs)h(kno)-34 b(wn)602 b(b)-34 b(y)602
+b Fw(font-latex)f FC(are)g(dis-)2000 19377 y(pla)-34
+b(y)g(ed)400 b(with)f(the)h(face)e Fu(font-latex-math-face)p
+FC(.)544 b(Supp)34 b(ort)400 b(for)f(dollar)g(signs)g(and)h(shorthands)
+h(lik)-34 b(e)2000 20839 y(`)p Fu(\\\(...\\\))p FC(')487
+b(or)f(`)p Fu(\\[...\\])p FC(')h(is)f(built-in)g(and)g(not)h
+(customizable.)783 b(Supp)34 b(ort)487 b(for)f(other)g(math)g(macros)
+2000 22300 y(and)427 b(en)-34 b(vironmen)g(ts)428 b(can)f(b)34
+b(e)426 b(adapted)i(b)-34 b(y)427 b(customizing)g(the)g(v)-67
+b(ariables)425 b Fu(font-latex-match-math-)2000 23761
+y(command-keywords)298 b FC(and)293 b Fu(texmathp-tex-commands)299
+b FC(resp)34 b(ectiv)-34 b(ely)-101 b(.)500 b(It)292
+b(is)g(no)g(longer)g(recommended)2000 25222 y(to)404
+b(customize)g Fu(font-latex-math-environments)p FC(.)3660
+27123 y(T)-101 b(o)318 b(con)-34 b(v)g(ert)318 b(y)-34
+b(our)318 b(customization)g(in)g Fu(font-latex-math-environments)327
+b FC(in)-34 b(to)318 b Fu(texmathp-tex-)2000 28584 y(commands)p
+FC(,)522 b(please)497 b(register)e(y)-34 b(our)497 b(o)-34
+b(wn)498 b(math)f(en)-34 b(vironmen)g(ts,)521 b(together)497
+b(with)g(starred)g(v)-67 b(arian)-34 b(ts)497 b(if)2000
+30046 y(an)-34 b(y)-101 b(,)561 b(as)529 b(en)-34 b(tries)530
+b(of)g Fu(env-on)h FC(t)-34 b(yp)34 b(e)530 b(in)f Fu
+(texmathp-tex-commands)p FC(,)568 b(then)531 b(clear)d(out)i
+Fu(font-latex-)2000 31507 y(math-environments)p FC(.)629
+b(Y)-101 b(ou)433 b(ha)-34 b(v)g(e)432 b(to)h(restart)f(Emacs)g(for)h
+(this)g(new)f(customization)h(to)g(tak)-34 b(e)432 b(e\013ect)2000
+32968 y(for)404 b(fon)-34 b(ti\014cation.)3660 34869
+y(In)331 b(order)e(to)i(mak)-34 b(e)330 b(math)h(constructs)g(more)f
+(readable,)344 b Fw(font-latex)330 b FC(displa)-34 b(ys)331
+b(subscript)g(and)g(sup)34 b(er-)2000 36330 y(script)277
+b(parts)g(in)g(a)g(smaller)f(fon)-34 b(t)278 b(and)g(raised)e(or)h(lo)
+-34 b(w)g(ered)277 b(resp)34 b(ectiv)-34 b(ely)-101 b(.)495
+b(This)277 b(fon)-34 b(ti\014cation)279 b(feature)e(can)2000
+37792 y(b)34 b(e)507 b(con)-34 b(trolled)508 b(with)g(the)g(v)-67
+b(ariables)507 b Fu(font-latex-fontify-script)516 b FC(and)509
+b Fu(font-latex-script-)2000 39253 y(display)p FC(.)42818
+41926 y([User)404 b(Option])-48000 b Fm(font-latex-fontify-script)5200
+43387 y FC(If)433 b(non-nil,)440 b(fon)-34 b(tify)434
+b(subscript)f(and)h(sup)34 b(erscript)433 b(strings.)624
+b(Concretely)-101 b(,)439 b(this)434 b(means)f(that)g(the)5200
+44848 y(scripts)404 b(are)g(raised)g(or)f(lo)-34 b(w)g(ered.)5200
+46750 y(Another)443 b(p)34 b(ossiblit)-34 b(y)442 b(is)g(setting)h
+(this)g(v)-67 b(ariable)441 b(to)i(the)f(sym)-34 b(b)34
+b(ol)443 b Fu(multi-level)p FC(.)657 b(In)442 b(this)h(case,)5200
+48211 y(in)522 b(a)h(form)-34 b(ula)523 b Fo(x)p Fu(^)p
+FA(f)p Fo(y)p Fu(^)p Fo(z)p FA(g)p FC(,)552 b Fo(y)629
+b FC(is)522 b(raised)g(ab)34 b(o)-34 b(v)g(e)522 b(and)i(smaller)d
+(than)j Fo(x)p FC(,)551 b(and)524 b Fo(z)671 b FC(is)522
+b(raised)g(ab)34 b(o)-34 b(v)g(e)5200 49672 y(and)413
+b(smaller)e(than)i Fo(y)p FC(.)562 b(With)412 b(man)-34
+b(y)413 b(script)f(lev)-34 b(els,)413 b(the)f(text)h(migh)-34
+b(t)412 b(b)34 b(ecome)412 b(to)34 b(o)412 b(small)g(to)g(b)34
+b(e)5200 51133 y(readable.)538 b(\(See)404 b Fu
+(font-latex-fontify-script-max-level)417 b FC(b)34 b(elo)-34
+b(w.\))5200 53034 y(Lastly)-101 b(,)468 b(y)-34 b(ou)456
+b(can)h(set)f(this)g(v)-67 b(ariable)455 b(to)h Fu(invisible)j
+FC(whose)e(b)34 b(eha)-34 b(vior)456 b(is)f(lik)-34 b(e)455
+b Fu(multi-level)p FC(,)5200 54496 y(and)405 b(in)f(addition)h(the)g
+(sup)34 b(er-/subscript)405 b(c)-34 b(haracters)404 b
+Fu(^)g FC(and)p 34179 54496 372 53 v 1354 w(are)g(not)h(displa)-34
+b(y)g(ed.)42818 57169 y([User)404 b(Option])-48000 b
+Fm(font-latex-fontify-script-max-level)5200 58630 y FC(Maxim)-34
+b(um)405 b(scripti\014cation)f(lev)-34 b(el)403 b(for)h(whic)-34
+b(h)405 b(script)f(faces)g(are)g(applied.)5200 60531
+y(The)k(faces)g Fu(font-latex-superscript-face)418 b
+FC(and)409 b Fu(font-latex-subscript-face)416 b FC(de\014ne)5200
+61993 y(custom)394 b Fu(:height)i FC(v)-67 b(alues)393
+b Fu(<)g FC(1.0.)535 b(Therefore,)395 b(scripts)f(are)f(displa)-34
+b(y)g(ed)394 b(with)g(a)f(sligh)-34 b(tly)394 b(smaller)5200
+63454 y(fon)-34 b(t)585 b(than)h(normal)e(math)g(text.)1079
+b(If)584 b Fu(font-latex-fontify-script)593 b FC(is)583
+b Fu(multi-level)588 b FC(or)5200 64915 y Fu(invisible)p
+FC(,)501 b(the)479 b(fon)-34 b(t)481 b(size)e(b)34 b(ecomes)478
+b(to)34 b(o)480 b(small)f(to)g(b)34 b(e)479 b(readable)g(after)h(a)f
+(few)h(lev)-34 b(els.)762 b(This)5200 66376 y(option)529
+b(allo)-34 b(ws)528 b(to)h(sp)34 b(ecify)527 b(the)i(maxim)-34
+b(um)529 b(lev)-34 b(el)526 b(after)j(whic)-34 b(h)529
+b(the)f(size)g(of)g(the)h(script)f(text)5200 67837 y(w)-34
+b(on't)405 b(b)34 b(e)404 b(shrunk)-34 b(en)405 b(an)-34
+b(ymore.)5200 69738 y(F)-101 b(or)334 b(example,)348
+b(in)334 b(the)h(expression)f Fo(x)p Fu(^)p FA(f)p Fo(y)p
+Fu(^)p FA(f)p Fo(z)p Fu(^)p Fo(a)p 26942 69738 V 545
+w(b)p FA(gg)p FC(,)348 b Fo(x)480 b FC(has)335 b(scripti\014cation)g
+(lev)-34 b(el)333 b(0,)348 b Fo(y)441 b FC(has)335 b(lev)-34
+b(el)5200 71200 y(1,)404 b Fo(z)552 b FC(has)405 b(lev)-34
+b(el)403 b(2,)h(and)h(b)34 b(oth)405 b Fo(a)496 b FC(and)405
+b Fo(b)480 b FC(ha)-34 b(v)g(e)405 b(scripti\014cation)f(lev)-34
+b(el)403 b(3.)p eop end
+%%Page: 46 51
+TeXDict begin 46 50 bop 2000 -1550 a FC(Chapter)405 b(3:)539
+b(Con)-34 b(trolling)405 b(Screen)e(Displa)-34 b(y)26418
+b(46)5200 3985 y(If)444 b Fu(font-latex-fontify-script-max-level)456
+b FC(w)-34 b(as)445 b(2,)454 b(then)445 b Fo(z)p FC(,)453
+b Fo(a)p FC(,)g(and)445 b Fo(b)520 b FC(w)-34 b(ould)445
+b(ha)-34 b(v)g(e)444 b(the)5200 5446 y(same)363 b(fon)-34
+b(t)365 b(size.)524 b(If)363 b(it)h(w)-34 b(as)364 b(3)f(or)g(more,)371
+b(then)364 b Fo(a)456 b FC(and)364 b Fo(b)439 b FC(w)-34
+b(ere)364 b(smaller)e(than)j Fo(z)511 b FC(just)365 b(in)e(the)h(same)
+5200 6907 y(w)-34 b(a)g(y)405 b(as)f Fo(z)553 b FC(is)404
+b(smaller)f(than)i Fo(y)511 b FC(and)405 b Fo(y)511 b
+FC(is)403 b(smaller)h(than)h Fo(x)p FC(.)3660 9380 y(The)458
+b(script)f(c)-34 b(haracters)458 b(`)p Fu(^)p FC(')e(and)i(`)p
+Fu(_)p FC(')f(themselv)-34 b(es)458 b(are)e(also)h(fon)-34
+b(ti\014ed)459 b(with)f(an)g(o)-34 b(wn)458 b(face)f(named)2000
+10841 y Fu(font-latex-script-char-face)p FC(.)42818 13313
+y([User)404 b(Option])-48000 b Fm(font-latex-script-display)5200
+14774 y FC(Displa)-34 b(y)439 b(sp)34 b(eci\014cation)440
+b(for)f(subscript)h(and)g(sup)34 b(erscript)440 b(con)-34
+b(ten)g(t.)646 b(The)440 b(car)f(is)g(used)h(for)f(sub-)5200
+16235 y(script,)552 b(the)524 b(cdr)f(is)g(used)g(for)h(sup)34
+b(erscript.)895 b(The)524 b(feature)f(is)g(implemen)-34
+b(ted)524 b(using)f(so-called)5200 17697 y(displa)-34
+b(y)540 b(prop)34 b(erties.)947 b(F)-101 b(or)540 b(information)h(on)f
+(what)h(exactly)f(to)g(sp)34 b(ecify)540 b(for)g(the)g(v)-67
+b(alues,)573 b(see)5200 19158 y(Section)404 b(\\Other)g(Displa)-34
+b(y)405 b(Sp)34 b(eci\014cations")404 b(in)g Ft(GNU)h(Emacs)f(Lisp)f
+(Reference)h(Man)-34 b(ual)48 b FC(.)2000 21822 y Fq(3.1.4)818
+b(V)-136 b(erbatim)545 b(macros)h(and)g(en)-45 b(vironmen)g(ts)2000
+23781 y FC(Usually)410 b(it)g(is)g(not)h(desirable)e(to)i(ha)-34
+b(v)g(e)410 b(con)-34 b(ten)g(t)412 b(to)f(b)34 b(e)410
+b(t)-34 b(yp)34 b(eset)410 b(v)-34 b(erbatim)410 b(highligh)-34
+b(ted)412 b(according)e(to)2000 25242 y(L)2322 25085
+y Fv(a)2883 25242 y FC(T)3556 25503 y(E)4230 25242 y(X)356
+b(syn)-34 b(tax.)523 b(Therefore)355 b(this)i(con)-34
+b(ten)g(t)357 b(will)f(b)34 b(e)356 b(fon)-34 b(ti\014ed)357
+b(uniformly)f(with)h(the)f(face)g Fu(font-latex-)2000
+26704 y(verbatim-face)p FC(.)3660 28504 y Fw(font-latex)845
+b FC(di\013eren)-34 b(tiates)845 b(three)g(di\013eren)-34
+b(t)845 b(t)-34 b(yp)34 b(es)845 b(of)g(v)-34 b(erbatim)845
+b(constructs)h(for)f(fon)-34 b(ti\014ca-)2000 29965 y(tion.)1526
+b(Macros)733 b(with)h(sp)34 b(ecial)732 b(c)-34 b(haracters)733
+b(lik)-34 b(e)732 b Fu(|)i FC(as)f(delimiters,)814 b(macros)733
+b(with)h(braces,)815 b(and)2000 31427 y(en)-34 b(vironmen)g(ts.)1577
+b(Whic)-34 b(h)750 b(macros)f(and)i(en)-34 b(vironmen)g(ts)751
+b(are)e(recognized)g(is)g(con)-34 b(trolled)750 b(b)-34
+b(y)750 b(the)2000 32888 y(v)-67 b(ariables)345 b Fu
+(LaTeX-verbatim-macros-with-delims)p FC(,)370 b Fu
+(LaTeX-verbatim-macros-with-braces)p FC(,)2000 34349
+y(and)405 b Fu(LaTeX-verbatim-environments)414 b FC(resp)34
+b(ectiv)-34 b(ely)-101 b(.)2000 37013 y Fq(3.1.5)818
+b(F)-136 b(aces)545 b(used)h(b)-45 b(y)545 b Fh(font-latex)2000
+38972 y FC(In)596 b(case)g(y)-34 b(ou)596 b(w)-34 b(an)g(t)598
+b(to)e(c)-34 b(hange)597 b(the)g(colors)e(and)i(fon)-34
+b(ts)597 b(used)g(b)-34 b(y)596 b Fw(font-latex)g FC(please)g(refer)f
+(to)h(the)2000 40434 y(faces)446 b(men)-34 b(tioned)447
+b(in)e(the)i(explanations)f(ab)34 b(o)-34 b(v)g(e)446
+b(and)h(use)f Fs(M-x)405 b(customize-face)k(RET)c Fu(<)p
+Fs(face)p Fu(>)h Fs(RET)p FC(.)2000 41895 y(All)429 b(faces)g
+(de\014ned)h(b)-34 b(y)430 b Fw(font-latex)f FC(are)f(accessible)g
+(through)j(a)e(customization)h(group)g(b)-34 b(y)430
+b(t)-34 b(yping)430 b Fs(M-x)2000 43356 y(customize-group)409
+b(RET)c(font-latex-highlighting-faces)415 b(RET)p FC(.)2000
+46020 y Fq(3.1.6)818 b(Kno)-45 b(wn)545 b(fon)-45 b(ti\014cation)546
+b(problems)2000 47979 y FC(In)374 b(certain)g(cases)g(the)g(fon)-34
+b(ti\014cation)376 b(mac)-34 b(hinery)374 b(fails)g(to)h(in)-34
+b(terpret)374 b(bu\013er)h(con)-34 b(ten)g(ts)375 b(correctly)-101
+b(.)527 b(This)2000 49441 y(can)420 b(lead)g(to)h(color)f(bleed,)j
+(i.e.)d(large)f(parts)i(of)g(a)f(bu\013er)g(get)h(fon)-34
+b(ti\014ed)422 b(with)f(an)f(inappropriate)h(face.)2000
+50902 y(A)353 b(t)-34 b(ypical)353 b(situation)h(for)f(this)h(to)g
+(happ)34 b(en)354 b(is)e(the)i(use)f(of)h(a)f(dollar)f(sign)i(\(`)p
+Fu($)p FC('\))f(in)g(a)g(v)-34 b(erbatim)353 b(macro)g(or)2000
+52363 y(en)-34 b(vironmen)g(t.)527 b(If)368 b Fw(font-latex)g
+FC(is)f(not)h(a)-34 b(w)g(are)369 b(of)f(the)g(v)-34
+b(erbatim)368 b(construct,)375 b(it)368 b(assumes)g(the)g(dollar)g
+(sign)2000 53824 y(to)358 b(b)34 b(e)357 b(a)h(toggle)g(for)g
+(mathematics)g(and)g(fon)-34 b(ti\014es)360 b(the)e(follo)-34
+b(wing)358 b(bu\013er)g(con)-34 b(ten)g(t)359 b(with)g(the)f(resp)34
+b(ectiv)-34 b(e)2000 55285 y(face)404 b(un)-34 b(til)405
+b(it)f(\014nds)h(a)f(closing)g(dollar)g(sign)g(or)g(till)g(the)g(end)h
+(of)f(the)h(bu\013er.)3660 57086 y(As)355 b(a)f(remedy)g(y)-34
+b(ou)355 b(can)f(mak)-34 b(e)354 b(the)h(v)-34 b(erbatim)354
+b(construct)h(kno)-34 b(wn)356 b(to)f Fw(font-latex)f
+FC(\(see)g(Section)g(3.1.4)2000 58547 y([V)-101 b(erbatim)351
+b(con)-34 b(ten)g(t],)363 b(page)351 b(46\).)521 b(If)352
+b(this)f(is)g(not)h(p)34 b(ossible,)362 b(y)-34 b(ou)351
+b(can)h(insert)f(a)g(commen)-34 b(ted)352 b(dollar)f(sign)2000
+60008 y(\(`)p Fu(\045$)p FC('\))373 b(at)f(the)g(next)g(suitable)g(end)
+g(of)g(line)f(as)h(a)g(quic)-34 b(k)371 b(w)-34 b(ork)-67
+b(around.)529 b(In)371 b(do)34 b(cT)-101 b(eX)372 b(do)34
+b(cumen)-34 b(ts,)379 b(`)p Fu(^^A$)p FC(')2000 61469
+y(is)404 b(also)g(a)-34 b(v)-67 b(ailable)403 b(for)h(similar)f(purp)34
+b(ose.)2000 64691 y FB(3.2)896 b(F)-149 b(olding)598
+b(Macros)f(and)h(En)-50 b(vironmen)g(ts)2000 66816 y
+FC(A)351 b(p)34 b(opular)352 b(complain)-34 b(t)352 b(ab)34
+b(out)352 b(markup)g(languages)g(lik)-34 b(e)350 b(T)29421
+67077 y(E)30095 66816 y(X)h(and)i(L)33982 66659 y Fv(a)34543
+66816 y FC(T)35216 67077 y(E)35889 66816 y(X)e(is)h(that)g(there)f(is)g
+(to)34 b(o)352 b(m)-34 b(uc)g(h)2000 68277 y(clutter)392
+b(in)g(the)h(source)e(text)h(and)h(that)g(one)g(cannot)g(fo)34
+b(cus)392 b(w)-34 b(ell)392 b(on)g(the)h(con)-34 b(ten)g(t.)536
+b(There)392 b(are)f(macros)2000 69738 y(where)323 b(y)-34
+b(ou)323 b(are)f(only)g(in)-34 b(terested)324 b(in)e(the)h(con)-34
+b(ten)g(t)325 b(they)d(are)h(enclosing,)338 b(lik)-34
+b(e)322 b(fon)-34 b(t)324 b(sp)34 b(eci\014ers)322 b(where)g(the)2000
+71200 y(con)-34 b(ten)g(t)408 b(migh)-34 b(t)406 b(already)g(b)34
+b(e)405 b(fon)-34 b(ti\014ed)408 b(in)e(a)g(sp)34 b(ecial)405
+b(w)-34 b(a)g(y)406 b(b)-34 b(y)406 b(fon)-34 b(t)408
+b(lo)34 b(c)-34 b(king.)543 b(Or)405 b(macros)h(the)g(con)-34
+b(ten)g(t)p eop end
+%%Page: 47 52
+TeXDict begin 47 51 bop 2000 -1550 a FC(Chapter)405 b(3:)539
+b(Con)-34 b(trolling)405 b(Screen)e(Displa)-34 b(y)26418
+b(47)2000 3985 y(of)356 b(whic)-34 b(h)357 b(y)-34 b(ou)357
+b(only)e(w)-34 b(an)g(t)358 b(to)f(see)e(when)i(actually)f(editing)g
+(it,)365 b(lik)-34 b(e)355 b(fo)34 b(otnotes)358 b(or)d(citations.)523
+b(Similarly)2000 5446 y(y)-34 b(ou)470 b(migh)-34 b(t)471
+b(\014nd)f(certain)g(en)-34 b(vironmen)g(ts)470 b(or)g(commen)-34
+b(ts)470 b(distracting)g(when)h(trying)e(to)h(concen)-34
+b(trate)2000 6907 y(on)405 b(the)f(b)34 b(o)g(dy)404
+b(of)g(y)-34 b(our)405 b(do)34 b(cumen)-34 b(t.)3660
+9028 y(With)378 b(A)-34 b(UCT)10097 9289 y(E)10771 9028
+y(X's)377 b(folding)h(functionalit)-34 b(y)379 b(y)-34
+b(ou)377 b(can)g(collapse)g(those)h(items)f(and)h(replace)e(them)i(b)
+-34 b(y)2000 10489 y(a)427 b(\014xed)f(string,)433 b(the)427
+b(con)-34 b(ten)g(t)428 b(of)f(one)g(of)g(their)f(argumen)-34
+b(ts,)433 b(or)427 b(a)f(mixture)h(of)g(b)34 b(oth.)606
+b(If)427 b(y)-34 b(ou)427 b(w)-34 b(an)g(t)429 b(to)2000
+11950 y(mak)-34 b(e)463 b(the)h(original)f(text)g(visible)g(again)g(in)
+h(order)f(to)g(view)g(or)g(edit)h(it,)478 b(mo)-34 b(v)g(e)463
+b(p)34 b(oin)-34 b(t)465 b(sidew)-34 b(a)g(ys)464 b(on)-34
+b(to)2000 13412 y(the)441 b(placeholder)f(\(also)h(called)f(displa)-34
+b(y)441 b(string\))h(or)e(left-clic)-34 b(k)440 b(with)i(the)f(mouse)g
+(p)34 b(oin)-34 b(ter)441 b(on)g(it.)648 b(The)2000 14873
+y(macro)311 b(or)f(en)-34 b(vironmen)g(t)312 b(will)f(unfold)h
+(automatically)-101 b(,)329 b(sta)-34 b(y)312 b(op)34
+b(en)311 b(as)g(long)g(as)g(p)34 b(oin)-34 b(t)312 b(is)f(inside)g(of)g
+(it)g(and)2000 16334 y(collapse)405 b(again)i(once)e(y)-34
+b(ou)407 b(mo)-34 b(v)g(e)406 b(p)34 b(oin)-34 b(t)407
+b(out)g(of)f(it.)544 b(\(Note)407 b(that)g(folding)g(of)f(en)-34
+b(vironmen)g(ts)407 b(curren)-34 b(tly)2000 17795 y(do)34
+b(es)404 b(not)h(w)-34 b(ork)404 b(in)g(ev)-34 b(ery)403
+b(A)-34 b(UCT)17803 18056 y(E)18478 17795 y(X)404 b(mo)34
+b(de.\))3660 19916 y(In)370 b(order)f(to)h(use)g(this)h(feature,)376
+b(y)-34 b(ou)370 b(ha)-34 b(v)g(e)370 b(to)g(activ)-67
+b(ate)370 b Fu(TeX-fold-mode)k FC(whic)-34 b(h)370 b(will)f(activ)-67
+b(ate)369 b(the)2000 21377 y(auto-rev)-34 b(eal)280 b(feature)h(and)g
+(the)g(necessary)f(commands)h(to)g(hide)f(and)h(sho)-34
+b(w)282 b(macros)e(and)h(en)-34 b(vironmen)g(ts.)2000
+22838 y(Y)-101 b(ou)389 b(can)g(activ)-67 b(ate)388 b(the)h(mo)34
+b(de)388 b(in)h(a)f(certain)h(bu\013er)f(b)-34 b(y)389
+b(t)-34 b(yping)390 b(the)f(command)g Fs(M-x)405 b(TeX-fold-mode)2000
+24299 y(RET)d FC(or)g(using)g(the)g(k)-34 b(eyb)34 b(oard)401
+b(shortcut)i Fs(C-c)i(C-o)g(C-f)p FC(.)538 b(If)402 b(y)-34
+b(ou)402 b(w)-34 b(an)g(t)403 b(to)f(use)g(it)f(ev)-34
+b(ery)401 b(time)g(y)-34 b(ou)402 b(edit)2000 25761 y(a)i(L)3332
+25604 y Fv(a)3893 25761 y FC(T)4566 26021 y(E)5240 25761
+y(X)g(do)34 b(cumen)-34 b(t,)405 b(add)g(it)f(to)g(a)g(ho)34
+b(ok:)5200 27881 y Fu(\(add-hook)640 b('LaTeX-mode-hook)i(\(lambda)c
+(\(\))23654 29342 y(\(TeX-fold-mode)k(1\)\)\))3660 31463
+y FC(If)794 b(it)g(should)h(b)34 b(e)793 b(activ)-67
+b(ated)794 b(in)g(all)f(A)-34 b(UCT)25956 31724 y(E)26631
+31463 y(X)794 b(mo)34 b(des,)891 b(use)794 b Fu(TeX-mode-hook)k
+FC(instead)d(of)2000 32924 y Fu(LaTeX-mode-hook)p FC(.)3660
+35045 y(Once)373 b(the)g(mo)34 b(de)372 b(is)g(activ)-34
+b(e)372 b(there)h(are)f(sev)-34 b(eral)372 b(commands)h(a)-34
+b(v)-67 b(ailable)372 b(to)h(hide)f(and)i(sho)-34 b(w)373
+b(macros,)2000 36506 y(en)-34 b(vironmen)g(ts)405 b(and)g(commen)-34
+b(ts:)43872 39618 y([Command])-47999 b Fm(TeX-fold-buffer)5200
+41079 y FC(\()p Fs(C-c)405 b(C-o)h(C-b)p FC(\))471 b(Hide)g(all)f
+(foldable)h(items)f(in)h(the)f(curren)-34 b(t)471 b(bu\013er)g
+(according)f(to)h(the)g(setting)5200 42540 y(of)404 b
+Fu(TeX-fold-type-list)p FC(.)5200 44661 y(If)463 b(y)-34
+b(ou)464 b(w)-34 b(an)g(t)465 b(to)e(ha)-34 b(v)g(e)464
+b(this)g(done)f(automatically)h(ev)-34 b(ery)462 b(time)h(y)-34
+b(ou)463 b(op)34 b(en)464 b(a)f(\014le,)477 b(add)464
+b(it)f(to)h(a)5200 46122 y(ho)34 b(ok)438 b(and)i(mak)-34
+b(e)438 b(sure)h(the)g(function)g(is)g(called)e(after)i(fon)-34
+b(t)440 b(lo)34 b(c)-34 b(king)438 b(is)g(set)h(up)g(for)g(the)g
+(bu\013er.)5200 47583 y(The)405 b(follo)-34 b(wing)404
+b(co)34 b(de)404 b(should)h(accomplish)f(this:)8400 49704
+y Fu(\(add-hook)639 b('find-file-hook)j(#'TeX-fold-buffer)h(t\))5200
+51825 y FC(The)507 b(command)h(can)f(b)34 b(e)507 b(used)h(an)-34
+b(y)507 b(time)g(to)h(refresh)e(the)i(whole)f(bu\013er)h(and)f(fold)h
+(an)-34 b(y)507 b(new)5200 53286 y(macros)477 b(and)i(en)-34
+b(vironmen)g(ts)479 b(whic)-34 b(h)479 b(w)-34 b(ere)477
+b(inserted)h(after)g(the)g(last)g(in)-34 b(v)g(o)34 b(cation)479
+b(of)f(the)g(com-)5200 54747 y(mand.)42818 57859 y([User)404
+b(Option])-48000 b Fm(TeX-fold-type-list)5200 59320 y
+FC(List)546 b(of)g(sym)-34 b(b)34 b(ols)546 b(determining)g(the)g(item)
+g(classes)f(to)i(consider)e(for)h(folding.)965 b(This)546
+b(can)g(b)34 b(e)5200 60782 y(macros,)393 b(en)-34 b(vironmen)g(ts)392
+b(and)g(commen)-34 b(ts.)535 b(P)-34 b(er)391 b(default)h(only)f
+(macros)f(and)i(en)-34 b(vironmen)g(ts)392 b(are)5200
+62243 y(folded.)42818 65355 y([User)404 b(Option])-48000
+b Fm(TeX-fold-force-fontify)5200 66816 y FC(In)301 b(order)g(for)g(all)
+g(folded)h(con)-34 b(ten)g(t)303 b(to)e(get)h(the)f(righ)-34
+b(t)302 b(faces,)321 b(the)302 b(whole)f(bu\013er)h(has)g(to)f(b)34
+b(e)301 b(fon)-34 b(ti\014ed)5200 68277 y(b)34 b(efore)511
+b(folding)h(is)f(carried)g(out.)861 b Fu(TeX-fold-buffer)517
+b FC(therefore)511 b(will)g(force)g(fon)-34 b(ti\014cation)514
+b(of)5200 69738 y(unfon)-34 b(ti\014ed)587 b(regions.)1080
+b(As)585 b(this)h(will)e(prolong)h(the)g(time)g(folding)g(tak)-34
+b(es,)630 b(y)-34 b(ou)585 b(can)g(prev)-34 b(en)g(t)5200
+71200 y(forced)404 b(fon)-34 b(ti\014cation)406 b(b)-34
+b(y)405 b(customizing)f(the)g(v)-67 b(ariable)403 b Fu
+(TeX-fold-force-fontify)p FC(.)p eop end
+%%Page: 48 53
+TeXDict begin 48 52 bop 2000 -1550 a FC(Chapter)405 b(3:)539
+b(Con)-34 b(trolling)405 b(Screen)e(Displa)-34 b(y)26418
+b(48)42818 3985 y([User)404 b(Option])-48000 b Fm(TeX-fold-auto)5200
+5446 y FC(By)466 b(default,)483 b(a)466 b(macro)g(inserted)h(with)g
+Fu(TeX-insert-macro)473 b FC(\()p Fs(C-c)405 b(C-m)p
+FC(\))468 b(will)e(not)h(b)34 b(e)467 b(folded.)5200
+6907 y(Set)497 b(this)g(v)-67 b(ariable)496 b(to)h(a)g(non-nil)g(v)-67
+b(alue)496 b(to)h(aumatically)f(fold)h(macros)g(as)g(so)34
+b(on)497 b(as)g(they)f(are)5200 8369 y(inserted.)42818
+10627 y([User)404 b(Option])-48000 b Fm(TeX-fold-preserve-comments)5200
+12088 y FC(By)433 b(default)i(items)f(found)i(in)e(commen)-34
+b(ts)435 b(will)f(b)34 b(e)434 b(folded.)629 b(If)434
+b(y)-34 b(our)434 b(commen)-34 b(ts)435 b(often)g(con)-34
+b(tain)5200 13549 y(un\014nished)454 b(co)34 b(de)451
+b(this)i(migh)-34 b(t)453 b(lead)e(to)i(problems.)682
+b(Giv)-34 b(e)451 b(this)i(v)-67 b(ariable)450 b(a)i(non-nil)h(v)-67
+b(alue)451 b(and)5200 15010 y(foldable)404 b(items)g(in)h(y)-34
+b(our)404 b(commen)-34 b(ts)405 b(will)e(b)34 b(e)404
+b(left)h(alone.)42818 17269 y([User)f(Option])-48000
+b Fm(TeX-fold-unfold-around-mark)5200 18730 y FC(When)488
+b(this)h(v)-67 b(ariable)486 b(is)i(non-nil)g(and)h(there)f(is)f(an)i
+(activ)-34 b(e)487 b(regione,)508 b(text)488 b(around)h(the)f(mark)5200
+20191 y(will)404 b(b)34 b(e)403 b(k)-34 b(ept)405 b(unfolded.)43872
+22449 y([Command])-47999 b Fm(TeX-fold-region)5200 23910
+y FC(\()p Fs(C-c)405 b(C-o)h(C-r)p FC(\))f(Hide)f(all)g(con\014gured)g
+(macros)g(in)g(the)h(mark)-34 b(ed)404 b(region.)43872
+26169 y([Command])-47999 b Fm(TeX-fold-paragraph)5200
+27630 y FC(\()p Fs(C-c)405 b(C-o)h(C-p)p FC(\))f(Hide)f(all)g
+(con\014gured)g(macros)g(in)g(the)h(paragraph)g(con)-34
+b(taining)405 b(p)34 b(oin)-34 b(t.)43872 29888 y([Command])-47999
+b Fm(TeX-fold-macro)5200 31349 y FC(\()p Fs(C-c)405 b(C-o)h(C-m)p
+FC(\))354 b(Hide)g(the)g(macro)f(on)h(whic)-34 b(h)354
+b(p)34 b(oin)-34 b(t)355 b(curren)-34 b(tly)353 b(is)g(lo)34
+b(cated.)521 b(If)354 b(the)g(name)g(of)f(the)5200 32810
+y(macro)433 b(is)g(found)i(in)e Fu(TeX-fold-macro-spec-list)p
+FC(,)449 b(the)433 b(resp)34 b(ectiv)-34 b(e)432 b(displa)-34
+b(y)434 b(string)g(will)e(b)34 b(e)5200 34271 y(sho)-34
+b(wn)406 b(instead.)540 b(If)404 b(it)h(is)f(not)h(found,)h(the)f(name)
+f(of)h(the)g(macro)f(in)g(sqare)g(brac)-34 b(k)g(ets)405
+b(or)f(the)h(de-)5200 35733 y(fault)429 b(string)f(for)g(unsp)34
+b(eci\014ed)429 b(macros)f(\()p Fu
+(TeX-fold-unspec-macro-display-string)p FC(\))441 b(will)5200
+37194 y(b)34 b(e)404 b(sho)-34 b(wn,)405 b(dep)34 b(ending)405
+b(on)g(the)f(v)-67 b(alue)404 b(of)g(the)h(v)-67 b(ariable)402
+b Fu(TeX-fold-unspec-use-name)p FC(.)43872 39452 y([Command])-47999
+b Fm(TeX-fold-env)5200 40913 y FC(\()p Fs(C-c)405 b(C-o)h(C-e)p
+FC(\))516 b(Hide)g(the)f(en)-34 b(vironmen)g(t)517 b(on)e(whic)-34
+b(h)517 b(p)34 b(oin)-34 b(t)516 b(curren)-34 b(tly)515
+b(is)g(lo)34 b(cated.)872 b(The)516 b(b)34 b(e-)5200
+42374 y(ha)-34 b(vior)420 b(regarding)f(the)i(displa)-34
+b(y)420 b(string)g(is)g(analogous)g(to)g Fu(TeX-fold-macro)425
+b FC(and)c(determined)5200 43836 y(b)-34 b(y)689 b(the)g(v)-67
+b(ariables)688 b Fu(TeX-fold-env-spec-list)696 b FC(and)690
+b Fu(TeX-fold-unspec-env-display-)5200 45297 y(string)406
+b FC(resp)34 b(ectiv)-34 b(ely)-101 b(.)43872 47555 y([Command])-47999
+b Fm(TeX-fold-math)5200 49016 y FC(Hide)428 b(the)g(math)h(macro)e(on)h
+(whic)-34 b(h)429 b(p)34 b(oin)-34 b(t)428 b(curren)-34
+b(tly)428 b(is)g(lo)34 b(cated.)609 b(If)428 b(the)g(name)g(of)g(the)g
+(macro)5200 50477 y(is)491 b(found)j(in)d Fu(TeX-fold-math-spec-list)p
+FC(,)522 b(the)492 b(resp)34 b(ectiv)-34 b(e)491 b(displa)-34
+b(y)492 b(string)g(will)f(b)34 b(e)491 b(sho)-34 b(wn)5200
+51939 y(instead.)502 b(If)291 b(it)h(is)f(not)h(found,)316
+b(the)292 b(name)f(of)h(the)g(macro)f(in)h(sqare)f(brac)-34
+b(k)g(ets)292 b(or)f(the)h(default)h(string)5200 53400
+y(for)535 b(unsp)34 b(eci\014ed)536 b(macros)f(\()p Fu
+(TeX-fold-unspec-macro-display-string)p FC(\))549 b(will)535
+b(b)34 b(e)535 b(sho)-34 b(wn,)5200 54861 y(dep)34 b(ending)405
+b(on)f(the)h(v)-67 b(alue)403 b(of)i(the)f(v)-67 b(ariable)403
+b Fu(TeX-fold-unspec-use-name)p FC(.)43872 57119 y([Command])-47999
+b Fm(TeX-fold-comment)5200 58580 y FC(\()p Fs(C-c)405
+b(C-o)h(C-c)p FC(\))f(Hide)f(the)h(commen)-34 b(t)404
+b(p)34 b(oin)-34 b(t)405 b(is)f(lo)34 b(cated)404 b(on.)43872
+60839 y([Command])-47999 b Fm(TeX-fold-clearout-buffer)5200
+62300 y FC(\()p Fs(C-c)405 b(C-o)h(b)p FC(\))e(P)-34
+b(ermanen)g(tly)405 b(unfold)g(all)f(macros)g(and)h(en)-34
+b(vironmen)g(ts)405 b(in)f(the)g(curren)-34 b(t)405 b(bu\013er.)43872
+64558 y([Command])-47999 b Fm(TeX-fold-clearout-region)5200
+66019 y FC(\()p Fs(C-c)405 b(C-o)h(r)p FC(\))e(P)-34
+b(ermanen)g(tly)405 b(unfold)g(all)f(macros)g(and)h(en)-34
+b(vironmen)g(ts)405 b(in)f(the)g(mark)-34 b(ed)405 b(region.)43872
+68277 y([Command])-47999 b Fm(TeX-fold-clearout-paragraph)5200
+69738 y FC(\()p Fs(C-c)405 b(C-o)h(p)p FC(\))424 b(P)-34
+b(ermanen)g(tly)424 b(unfold)i(all)d(macros)g(and)i(en)-34
+b(vironmen)g(ts)425 b(in)f(the)g(paragraph)h(con-)5200
+71200 y(taining)405 b(p)34 b(oin)-34 b(t.)p eop end
+%%Page: 49 54
+TeXDict begin 49 53 bop 2000 -1550 a FC(Chapter)405 b(3:)539
+b(Con)-34 b(trolling)405 b(Screen)e(Displa)-34 b(y)26418
+b(49)43872 3985 y([Command])-47999 b Fm(TeX-fold-clearout-item)5200
+5446 y FC(\()p Fs(C-c)405 b(C-o)h(i)p FC(\))364 b(P)-34
+b(ermanen)g(tly)364 b(sho)-34 b(w)365 b(the)f(macro)f(or)g(en)-34
+b(vironmen)g(t)365 b(on)f(whic)-34 b(h)364 b(p)34 b(oin)-34
+b(t)365 b(curren)-34 b(tly)363 b(is)5200 6907 y(lo)34
+b(cated.)528 b(In)372 b(con)-34 b(trast)374 b(to)f(temp)34
+b(orarily)371 b(op)34 b(ening)373 b(the)g(macro)f(when)h(p)34
+b(oin)-34 b(t)374 b(is)e(mo)-34 b(v)g(ed)373 b(sidew)-34
+b(a)g(ys)5200 8369 y(on)g(to)318 b(it,)334 b(the)317
+b(macro)f(will)g(b)34 b(e)317 b(p)34 b(ermanen)-34 b(tly)317
+b(unfolded)h(and)f(will)f(not)i(collapse)e(again)h(once)f(p)34
+b(oin)-34 b(t)5200 9830 y(is)404 b(lea)-34 b(ving)404
+b(it.)43872 12318 y([Command])-47999 b Fm(TeX-fold-dwim)5200
+13779 y FC(\()p Fs(C-c)405 b(C-o)h(C-o)p FC(\))371 b(Hide)e(or)g(sho)
+-34 b(w)371 b(items)f(according)f(to)h(the)g(curren)-34
+b(t)370 b(con)-34 b(text.)528 b(If)369 b(there)h(is)f(folded)5200
+15240 y(con)-34 b(ten)g(t,)578 b(unfold)544 b(it.)953
+b(If)543 b(there)f(is)g(a)g(mark)-34 b(ed)543 b(region,)576
+b(fold)543 b(all)f(con\014gured)h(con)-34 b(ten)g(t)544
+b(in)e(this)5200 16701 y(region.)c(If)404 b(there)g(is)g(no)h(folded)f
+(con)-34 b(ten)g(t)406 b(but)f(a)f(macro)g(or)g(en)-34
+b(vironmen)g(t,)405 b(fold)f(it.)3660 19190 y(In)519
+b(case)e(y)-34 b(ou)519 b(w)-34 b(an)g(t)520 b(to)e(use)h(a)f
+(di\013eren)-34 b(t)518 b(pre\014x)g(than)h Fs(C-c)406
+b(C-o)519 b FC(for)f(these)g(commands)h(y)-34 b(ou)519
+b(can)2000 20651 y(customize)360 b(the)g(v)-67 b(ariable)358
+b Fu(TeX-fold-command-prefix)p FC(.)532 b(\(Note)361
+b(that)g(this)f(will)f(not)i(c)-34 b(hange)360 b(the)g(k)-34
+b(ey)2000 22112 y(binding)405 b(for)f(activ)-67 b(ating)404
+b(the)h(mo)34 b(de.\))3660 23921 y(The)482 b(commands)g(ab)34
+b(o)-34 b(v)g(e)481 b(will)f(only)h(tak)-34 b(e)481 b(macros)f(or)h(en)
+-34 b(vironmen)g(ts)482 b(in)-34 b(to)482 b(consideration)f(whic)-34
+b(h)2000 25382 y(are)603 b(sp)34 b(eci\014ed)604 b(in)g(the)g(v)-67
+b(ariables)602 b Fu(TeX-fold-macro-spec-list)613 b FC(or)603
+b Fu(TeX-fold-env-spec-list)2000 26843 y FC(resp)34 b(ectiv)-34
+b(ely)-101 b(.)42818 29331 y([User)404 b(Option])-48000
+b Fm(TeX-fold-macro-spec-list)5200 30792 y FC(List)471
+b(of)g(replacemen)-34 b(t)471 b(sp)34 b(eci\014ers)471
+b(and)h(macros)f(to)g(fold.)740 b(The)472 b(sp)34 b(eci\014er)470
+b(can)i(b)34 b(e)470 b(a)i(string,)488 b(an)5200 32253
+y(in)-34 b(teger)404 b(or)g(a)g(function)h(sym)-34 b(b)34
+b(ol.)5200 34062 y(If)419 b(y)-34 b(ou)419 b(sp)34 b(ecify)419
+b(a)g(string,)j(it)d(will)g(b)34 b(e)418 b(used)i(as)f(a)g(displa)-34
+b(y)419 b(replacemen)-34 b(t)419 b(for)g(the)g(whole)h(macro.)5200
+35523 y(Num)-34 b(b)34 b(ers)546 b(in)g(braces,)580 b(brac)-34
+b(k)g(ets,)582 b(parens)546 b(or)f(angle)h(brac)-34 b(k)g(ets)546
+b(will)f(b)34 b(e)545 b(replaced)g(b)-34 b(y)546 b(the)g(re-)5200
+36984 y(sp)34 b(ectiv)-34 b(e)402 b(macro)f(argumen)-34
+b(t.)539 b(F)-101 b(or)403 b(example)e(`)p Fu({1})p FC(')i(will)e(b)34
+b(e)402 b(replaced)g(b)-34 b(y)403 b(the)f(\014rst)h(mandatory)5200
+38446 y(argumen)-34 b(t)471 b(of)g(the)g(macro.)737 b(One)470
+b(can)h(also)f(de\014ne)h(alternativ)-34 b(es)470 b(within)i(the)f(sp)
+34 b(eci\014er)469 b(whic)-34 b(h)5200 39907 y(are)457
+b(used)g(if)g(an)h(argumen)-34 b(t)458 b(is)f(not)h(found.)699
+b(Alternativ)-34 b(es)458 b(are)e(separated)i(b)-34 b(y)457
+b(`)p Fu(||)p FC('.)698 b(They)457 b(are)5200 41368 y(most)349
+b(useful)h(with)g(optional)g(argumen)-34 b(ts.)521 b(As)349
+b(an)g(example,)359 b(the)350 b(default)g(sp)34 b(eci\014er)348
+b(for)h(`)p Fu(\\item)p FC(')5200 42829 y(is)498 b(`)p
+Fu([1]:||*)p FC(')i(whic)-34 b(h)499 b(means)g(that)g(if)g(there)f(is)g
+(an)h(optional)g(argumen)-34 b(t,)522 b(its)499 b(v)-67
+b(alue)497 b(is)h(sho)-34 b(wn)5200 44290 y(follo)g(w)g(ed)414
+b(b)-34 b(y)414 b(a)g(colon.)566 b(If)414 b(there)f(is)g(no)h(optional)
+g(argumen)-34 b(t,)417 b(only)c(an)h(asterisk)f(is)g(used)h(as)f(the)
+5200 45752 y(displa)-34 b(y)404 b(string.)5200 47560
+y(If)383 b(y)-34 b(ou)383 b(sp)34 b(ecify)383 b(a)g(n)-34
+b(um)g(b)34 b(er)384 b(as)f(the)h(\014rst)f(elemen)-34
+b(t,)387 b(the)d(con)-34 b(ten)g(t)384 b(of)g(the)f(resp)34
+b(ectiv)-34 b(e)382 b(mandatory)5200 49021 y(argumen)-34
+b(t)405 b(of)g(a)f(L)13337 48864 y Fv(a)13898 49021 y
+FC(T)14571 49282 y(E)15244 49021 y(X)g(macro)g(will)g(b)34
+b(e)404 b(used)g(as)h(the)f(placeholder.)5200 50830 y(If)313
+b(the)g(\014rst)g(elemen)-34 b(t)312 b(is)h(a)f(function)i(sym)-34
+b(b)34 b(ol,)331 b(the)313 b(function)h(will)e(b)34 b(e)312
+b(called)g(with)h(all)f(mandatory)5200 52291 y(argumen)-34
+b(ts)278 b(of)f(the)g(macro)f(and)h(the)g(result)f(of)h(the)g(function)
+h(call)e(will)g(b)34 b(e)276 b(used)h(as)f(a)h(replacemen)-34
+b(t)5200 53752 y(for)404 b(the)h(macro.)5200 55561 y(The)346
+b(placeholder)f(is)g(made)g(b)-34 b(y)346 b(cop)-34 b(ying)346
+b(the)f(text)h(from)f(the)h(bu\013er)g(together)g(with)g(its)f(prop)34
+b(er-)5200 57022 y(ties,)551 b(i.e.)521 b(its)h(face)f(as)h(w)-34
+b(ell.)892 b(If)522 b(fon)-34 b(ti\014cation)524 b(has)e(not)h(happ)34
+b(ened)523 b(when)g(this)f(is)g(done)g(\(e.g.)5200 58483
+y(b)34 b(ecause)635 b(of)g(lazy)g(fon)-34 b(t)637 b(lo)34
+b(c)-34 b(king\))634 b(the)i(in)-34 b(tended)637 b(fon)-34
+b(ti\014cation)637 b(will)e(not)h(sho)-34 b(w)636 b(up.)1233
+b(As)635 b(a)5200 59944 y(w)-34 b(ork)-67 b(around)297
+b(y)-34 b(ou)297 b(can)f(lea)-34 b(v)g(e)296 b(Emacs)g(idle)g(a)g(few)h
+(seconds)g(and)g(w)-34 b(ait)297 b(for)f(stealth)h(fon)-34
+b(t)298 b(lo)34 b(c)-34 b(king)296 b(to)5200 61406 y(\014nish)326
+b(b)34 b(efore)325 b(y)-34 b(ou)326 b(fold)g(the)g(bu\013er.)512
+b(Or)325 b(y)-34 b(ou)326 b(just)h(re-fold)e(the)h(bu\013er)f(with)i
+Fu(TeX-fold-buffer)5200 62867 y FC(when)405 b(y)-34 b(ou)404
+b(notice)h(a)f(wrong)g(fon)-34 b(ti\014cation.)42818
+65355 y([User)404 b(Option])-48000 b Fm(TeX-fold-env-spec-list)5200
+66816 y FC(List)705 b(of)g(displa)-34 b(y)706 b(strings)g(or)f(argumen)
+-34 b(t)706 b(n)-34 b(um)g(b)34 b(ers)706 b(and)g(en)-34
+b(vironmen)g(ts)707 b(to)e(fold.)1443 b(Argu-)5200 68277
+y(men)-34 b(t)742 b(n)-34 b(um)g(b)34 b(ers)743 b(refer)e(to)g(the)h(`)
+p Fu(\\begin)p FC(')h(statemen)-34 b(t.)1552 b(That)743
+b(means)f(if)f(y)-34 b(ou)742 b(ha)-34 b(v)g(e)742 b(e.g.)5200
+69738 y(`)p Fu(\\begin{tabularx}{\\linewidth}{XXX})415
+b(...)406 b(\\end{tabularx})p FC(')517 b(and)d(sp)34
+b(ecify)512 b(3)h(as)g(the)5200 71200 y(argumen)-34 b(t)405
+b(n)-34 b(um)g(b)34 b(er,)405 b(the)g(resulting)f(displa)-34
+b(y)404 b(string)h(will)e(b)34 b(e)404 b(\\XXX".)p eop
+end
+%%Page: 50 55
+TeXDict begin 50 54 bop 2000 -1550 a FC(Chapter)405 b(3:)539
+b(Con)-34 b(trolling)405 b(Screen)e(Displa)-34 b(y)26418
+b(50)42818 3985 y([User)404 b(Option])-48000 b Fm
+(TeX-fold-math-spec-list)5200 5446 y FC(List)404 b(of)g(displa)-34
+b(y)405 b(strings)f(and)h(math)g(macros)f(to)h(fold.)3660
+7901 y(The)c(v)-67 b(ariables)400 b Fu(TeX-fold-macro-spec-list)p
+FC(,)409 b Fu(TeX-fold-env-spec-list)p FC(,)g(and)401
+b Fu(TeX-fold-)2000 9363 y(math-spec-list)350 b FC(apply)345
+b(to)g(an)-34 b(y)345 b(A)-34 b(UCT)21512 9624 y(E)22187
+9363 y(X)345 b(mo)34 b(de.)518 b(If)345 b(y)-34 b(ou)345
+b(w)-34 b(an)g(t)347 b(to)e(mak)-34 b(e)345 b(settings)g(whic)-34
+b(h)346 b(are)e(only)2000 10824 y(applied)397 b(to)g(L)8031
+10667 y Fv(a)8592 10824 y FC(T)9265 11085 y(E)9939 10824
+y(X)g(mo)34 b(de,)398 b(y)-34 b(ou)397 b(can)g(use)g(the)g(mo)34
+b(de-sp)g(eci\014c)396 b(v)-67 b(ariables)396 b Fu
+(LaTeX-fold-macro-spec-)2000 12285 y(list)p FC(,)405
+b Fu(LaTeX-fold-env-spec-list)p FC(,)412 b(and)405 b
+Fu(LaTeX-fold-math-spec-list)42818 14740 y FC([User)f(Option])-48000
+b Fm(TeX-fold-unspec-macro-display-string)5200 16201
+y FC(Default)431 b(displa)-34 b(y)431 b(string)g(for)g(macros)f(whic)
+-34 b(h)431 b(are)g(not)g(sp)34 b(eci\014ed)430 b(in)h
+Fu(TeX-fold-macro-spec-)5200 17663 y(list)p FC(.)42818
+20118 y([User)404 b(Option])-48000 b Fm
+(TeX-fold-unspec-env-display-string)5200 21579 y FC(Default)543
+b(displa)-34 b(y)543 b(string)g(for)g(en)-34 b(vironmen)g(ts)544
+b(whic)-34 b(h)543 b(are)g(not)g(sp)34 b(eci\014ed)543
+b(in)f Fu(TeX-fold-env-)5200 23040 y(spec-list)p FC(.)42818
+25496 y([User)404 b(Option])-48000 b Fm(TeX-fold-unspec-use-name)5200
+26957 y FC(If)495 b(non-nil)g(the)h(name)f(of)g(the)h(macro)e(or)h(en)
+-34 b(vironmen)g(t)496 b(surrounded)g(b)-34 b(y)495 b(square)g(brac)-34
+b(k)g(ets)495 b(is)5200 28418 y(used)438 b(as)g(displa)-34
+b(y)437 b(string,)446 b(otherwise)438 b(the)g(defaults)g(sp)34
+b(eci\014ed)438 b(in)f Fu(TeX-fold-unspec-macro-)5200
+29879 y(display-string)409 b FC(or)404 b Fu
+(TeX-fold-unspec-env-display-string)416 b FC(resp)34
+b(ectiv)-34 b(ely)-101 b(.)3660 32334 y(When)512 b(y)-34
+b(ou)512 b(ho)-34 b(v)g(er)512 b(with)h(the)f(mouse)f(p)34
+b(oin)-34 b(ter)512 b(o)-34 b(v)g(er)512 b(folded)g(con)-34
+b(ten)g(t,)540 b(its)511 b(original)g(text)h(will)f(b)34
+b(e)2000 33795 y(sho)-34 b(wn)404 b(in)e(a)f(to)34 b(oltip)403
+b(or)e(the)i(ec)-34 b(ho)402 b(area)f(dep)34 b(ending)403
+b(on)f(T)-101 b(o)34 b(oltip)402 b(mo)34 b(de)402 b(b)34
+b(eing)402 b(activ)-67 b(ate.)537 b(In)402 b(order)g(to)2000
+35257 y(a)-34 b(v)g(oid)312 b(exorbitan)-34 b(tly)311
+b(big)g(to)34 b(oltips)312 b(and)g(to)f(cater)g(for)g(the)g(limited)g
+(space)g(in)g(the)h(ec)-34 b(ho)311 b(area)g(the)g(con)-34
+b(ten)g(t)2000 36718 y(will)293 b(b)34 b(e)293 b(cropp)34
+b(ed)293 b(after)g(a)h(certain)f(amoun)-34 b(t)295 b(of)e(c)-34
+b(haracters)293 b(de\014ned)i(b)-34 b(y)293 b(the)h(v)-67
+b(ariable)292 b Fu(TeX-fold-help-)2000 38179 y(echo-max-length)p
+FC(.)42818 40634 y([User)404 b(Option])-48000 b Fm
+(TeX-fold-help-echo-max-length)5200 42095 y FC(Maxim)-34
+b(um)505 b(length)h(of)f(original)g(text)g(displa)-34
+b(y)g(ed)506 b(in)f(a)g(to)34 b(oltip)505 b(or)g(the)g(ec)-34
+b(ho)506 b(area)e(for)h(folded)5200 43557 y(con)-34 b(ten)g(t.)540
+b(Set)405 b(it)f(to)g(zero)g(in)g(order)f(to)i(disable)f(this)h
+(feature.)2000 46765 y FB(3.3)896 b(Outlining)599 b(the)f(Do)50
+b(cumen)-50 b(t)2000 48891 y FC(A)-34 b(UCT)5332 49152
+y(E)6007 48891 y(X)337 b(supp)34 b(orts)338 b(the)g(standard)g(outline)
+f(minor)g(mo)34 b(de)337 b(using)h(L)33203 48734 y Fv(a)33764
+48891 y FC(T)34437 49152 y(E)35111 48891 y(X/ConT)39453
+49152 y(E)40127 48891 y(Xt)g(sectioning)f(com-)2000 50352
+y(mands)405 b(as)f(header)g(lines.)538 b(See)404 b(Section)h(\\Outline)
+f(Mo)34 b(de")404 b(in)g Ft(GNU)h(Emacs)f(Man)-34 b(ual)48
+b FC(.)3660 52144 y(Y)-101 b(ou)405 b(can)f(add)h(y)-34
+b(our)404 b(o)-34 b(wn)406 b(headings)f(b)-34 b(y)404
+b(setting)h(the)f(v)-67 b(ariable)403 b Fu(TeX-outline-extra)p
+FC(.)44946 54600 y([V)-101 b(ariable])-48001 b Fm(TeX-outline-extra)
+5200 56061 y FC(List)404 b(of)g(extra)g(T)12836 56322
+y(E)13510 56061 y(X)g(outline)g(lev)-34 b(els.)5200 57853
+y(Eac)g(h)569 b(elemen)-34 b(t)568 b(is)g(a)h(list)f(with)h(t)-34
+b(w)g(o)570 b(en)-34 b(tries.)1031 b(The)569 b(\014rst)g(en)-34
+b(try)569 b(is)f(the)h(regular)e(expression)5200 59315
+y(matc)-34 b(hing)434 b(a)f(header,)440 b(and)434 b(the)g(second)f(is)g
+(the)h(lev)-34 b(el)432 b(of)h(the)h(header.)625 b(A)433
+b(`)p Fu(^)p FC(')g(is)g(automatically)5200 60776 y(prep)34
+b(ended)577 b(to)g(the)g(regular)f(expressions)g(in)g(the)h(list,)620
+b(so)576 b(they)h(m)-34 b(ust)578 b(matc)-34 b(h)577
+b(text)g(at)f(the)5200 62237 y(b)34 b(eginning)405 b(of)f(the)h(line.)
+5200 64030 y(See)397 b Fu(LaTeX-section-list)405 b FC(or)397
+b Fu(ConTeXt-)p Fs(interface)p Fu(-section-list)409 b
+FC(for)397 b(existing)h(header)5200 65491 y(lev)-34 b(els.)3660
+67946 y(The)317 b(follo)-34 b(wing)318 b(example)d(add)j(`)p
+Fu(\\item)p FC(')f(and)g(`)p Fu(\\bibliography)p FC(')k(headers,)334
+b(with)317 b(`)p Fu(\\bibliography)p FC(')2000 69407
+y(at)404 b(the)h(same)f(outline)g(lev)-34 b(el)403 b(as)i(`)p
+Fu(\\section)p FC(',)h(and)f(`)p Fu(\\item)p FC(')g(b)34
+b(eing)404 b(b)34 b(elo)-34 b(w)404 b(`)p Fu(\\subparagraph)p
+FC('.)5200 71200 y Fu(\(setq)638 b(TeX-outline-extra)p
+eop end
+%%Page: 51 56
+TeXDict begin 51 55 bop 2000 -1550 a FC(Chapter)405 b(3:)539
+b(Con)-34 b(trolling)405 b(Screen)e(Displa)-34 b(y)26418
+b(51)9018 3985 y Fu('\(\("[)638 b
+(\\t]*\\\\\\\\\\\\\(bib\\\\\)?item\\\\b")646 b(7\))10291
+5446 y(\("\\\\\\\\bibliography\\\\b")e(2\)\)\))3660 7240
+y FC(Y)-101 b(ou)516 b(ma)-34 b(y)515 b(w)-34 b(an)g(t)517
+b(to)f(c)-34 b(hec)g(k)515 b(out)h(the)g(un)-34 b(bundled)517
+b Fu(out-xtra)h FC(pac)-34 b(k)-67 b(age)515 b(for)g(ev)-34
+b(en)515 b(b)34 b(etter)516 b(outline)2000 8701 y(supp)34
+b(ort.)540 b(It)404 b(is)g(a)-34 b(v)-67 b(ailable)403
+b(from)h(y)-34 b(our)404 b(fa)-34 b(v)g(orite)405 b(emacs)f(lisp)g(arc)
+-34 b(hiv)g(e.)2000 11911 y FB(3.4)896 b(Narro)-50 b(wing)2000
+14036 y FC(Sometimes)468 b(y)-34 b(ou)468 b(w)-34 b(an)g(t)470
+b(to)e(fo)34 b(cus)468 b(y)-34 b(our)468 b(atten)-34
+b(tion)469 b(to)f(a)g(limited)f(region)h(of)g(the)g(co)34
+b(de.)729 b(Y)-101 b(ou)468 b(can)g(do)2000 15497 y(that)512
+b(b)-34 b(y)510 b(restricting)g(the)h(text)g(addressable)g(b)-34
+b(y)510 b(editing)h(commands)g(and)h(hiding)f(the)f(rest)h(of)f(the)
+2000 16959 y(bu\013er)448 b(with)g(the)g(narro)-34 b(wing)448
+b(functions,)460 b(see)446 b(Section)i(\\Narro)-34 b(wing")448
+b(in)g Ft(GNU)f(Emacs)h(Man)-34 b(ual)48 b FC(.)669 b(In)2000
+18420 y(addition,)445 b(A)-34 b(UCT)10490 18681 y(E)11165
+18420 y(X)436 b(pro)-34 b(vides)436 b(a)h(couple)f(of)g(other)h
+(commands)g(to)g(narro)-34 b(w)437 b(the)f(bu\013er)h(to)f(a)h(group,)
+2000 19881 y(i.e.)403 b(a)h(region)g(enclosed)g(in)g(a)g(pair)g(of)g
+(curly)g(braces,)f(and)i(to)f(L)30968 19724 y Fv(a)31529
+19881 y FC(T)32202 20142 y(E)32876 19881 y(X)g(en)-34
+b(vironmen)g(ts.)43872 22338 y([Command])-47999 b Fm
+(TeX-narrow-to-group)5200 23800 y FC(\()p Fs(C-x)405
+b(n)g(g)p FC(\))g(Mak)-34 b(e)404 b(text)g(outside)h(curren)-34
+b(t)404 b(group)h(in)-34 b(visible.)43872 26257 y([Command])-47999
+b Fm(LaTeX-narrow-to-environment)616 b Fi(count)5200
+27718 y FC(\()p Fs(C-x)405 b(n)g(e)p FC(\))427 b(Mak)-34
+b(e)426 b(text)h(outside)g(curren)-34 b(t)426 b(en)-34
+b(vironmen)g(t)428 b(in)-34 b(visible.)604 b(With)427
+b(optional)g(argumen)-34 b(t)5200 29179 y Ft(coun)g(t)432
+b FC(k)-34 b(eep)404 b(visible)f(that)i(n)-34 b(um)g(b)34
+b(er)405 b(of)g(enclosing)f(en)-34 b(vironmens.)3660
+31637 y(Lik)g(e)332 b(other)g(standard)i(narro)-34 b(wing)333
+b(functions,)347 b(the)333 b(ab)34 b(o)-34 b(v)g(e)332
+b(commands)h(are)f(disabled.)515 b(A)-34 b(ttempting)2000
+33098 y(to)397 b(use)g(them)g(asks)g(for)g(con\014rmation)h(and)g(giv)
+-34 b(es)396 b(y)-34 b(ou)397 b(the)g(option)h(of)f(enabling)g(them;)j
+(if)d(y)-34 b(ou)397 b(enable)2000 34559 y(the)405 b(commands,)f
+(con\014rmation)h(will)f(no)g(longer)g(b)34 b(e)404 b(required)f(for)h
+(them.)2000 37769 y FB(3.5)896 b(Prettifying)2000 39895
+y FC(Emacs)461 b(25)f(is)h(able)g(to)g(prettify)g(sym)-34
+b(b)34 b(ols)461 b(in)g(programming)g(language)g(bu\013ers,)475
+b(see)460 b(Section)h(\\Misc)2000 41356 y(for)490 b(Programs")g(in)g
+Ft(GNU)g(Emacs)g(Man)-34 b(ual)48 b FC(.)797 b(The)491
+b(canonical)f(example)f(is)h(to)g(displa)-34 b(y)491
+b Fu(\(lambda)406 b(\(\))2000 42817 y(...\))f FC(as)g
+Fu(\()p Fx(\025)f Fu(\(\))h(...\))g FC(in)g(Lisp)e(bu\013ers.)3660
+44610 y(A)-34 b(UCT)6992 44871 y(E)7667 44610 y(X)396
+b(can)g(use)g(this)h(feature)f(in)g(order)f(to)h(displa)-34
+b(y)397 b(certain)e(math)i(macros)f(and)g(greek)f(letters)2000
+46072 y(using)i(their)g(Unico)34 b(de)396 b(represen)-34
+b(tation,)399 b(to)34 b(o.)536 b(F)-101 b(or)396 b(example,)h(the)g(T)
+33607 46333 y(E)34281 46072 y(X)g(co)34 b(de)396 b Fu(\\alpha)406
+b(\\times)g(\\beta)2000 47533 y FC(will)375 b(b)34 b(e)375
+b(displa)-34 b(y)g(ed)376 b(as)g Fx(\013)408 b FA(\002)c
+Fx(\014)64 b FC(.)529 b(When)375 b(p)34 b(oin)-34 b(t)376
+b(is)g(on)f(one)h(of)f(the)h(c)-34 b(haracters,)381 b(it'll)374
+b(b)34 b(e)376 b(unpretti\014ed)g(au-)2000 48994 y(tomatically)-101
+b(,)360 b(meaning)349 b(y)-34 b(ou)350 b(see)f(the)h(v)-34
+b(erbatim)350 b(text)f(again.)521 b(F)-101 b(or)349 b(this)h(b)34
+b(eha)-34 b(viour)350 b(ho)-34 b(w)g(ev)g(er)350 b(y)-34
+b(ou)350 b(need)2000 50455 y(to)363 b(set)f Fu
+(prettify-symbols-unprettify-at-point)375 b FC(to)363
+b(t)f(or)g Fu(right-edge)k FC(whic)-34 b(h)363 b(will)f(unprettify)2000
+51916 y(the)405 b(sym)-34 b(b)34 b(ol)404 b(when)h(p)34
+b(oin)-34 b(t)405 b(mo)-34 b(v)g(es)404 b(in)-34 b(to)405
+b(or)f(near)g(it.)3660 53710 y(T)-101 b(o)317 b(enable)f
+(pretti\014cation)h(in)f(A)-34 b(UCT)20886 53971 y(E)21561
+53710 y(X,)333 b(simply)316 b(add)h Fu(prettify-symbols-mode)323
+b FC(to)317 b Fu(TeX-mode-)2000 55171 y(hook)p FC(.)503
+b(If)295 b(y)-34 b(ou)295 b(enabled)f(pretti\014cation)i(globally)e
+(with)h Fu(global-prettify-symbols-mode)p FC(,)326 b(then)295
+b(it's)2000 56632 y(automatically)404 b(enabled)h(in)f(A)-34
+b(UCT)18834 56893 y(E)19508 56632 y(X,)404 b(to)34 b(o.)3660
+58425 y(Y)-101 b(ou)530 b(can)g(also)g(add)g(custom)g(sym)-34
+b(b)34 b(ol)530 b(unico)34 b(de-c)-34 b(haracter)529
+b(pairs)h(for)f(pretti\014cation)i(b)-34 b(y)530 b(adding)2000
+59887 y(to)724 b Fu(tex--prettify-symbols-alist)p FC(.)1506
+b(Note)723 b(that)i(this)f(v)-67 b(ariable)722 b(is)h(part)h(of)g
+(Emacs')f(sto)34 b(c)-34 b(k)2000 61348 y Fu(tex-mode.el)408
+b FC(and)d(used)g(b)-34 b(y)404 b(that)h(and)g(A)-34
+b(UCT)24527 61609 y(E)25202 61348 y(X.)p eop end
+%%Page: 52 57
+TeXDict begin 52 56 bop 48788 -1550 a FC(52)2000 1882
+y Fz(4)1076 b(Starting)716 b(Pro)60 b(cessors,)716 b(View)-60
+b(ers)717 b(and)f(Other)4152 3985 y(Programs)2000 7286
+y FC(The)524 b(most)g(p)34 b(o)-34 b(w)g(erful)524 b(features)g(of)g(A)
+-34 b(UCT)22245 7547 y(E)22920 7286 y(X)523 b(ma)-34
+b(y)524 b(b)34 b(e)523 b(those)h(allo)-34 b(wing)523
+b(y)-34 b(ou)524 b(to)g(run)g(T)44052 7547 y(E)44726
+7286 y(X,)553 b(L)46847 7129 y Fv(a)47408 7286 y FC(T)48081
+7547 y(E)48754 7286 y(X,)2000 8747 y(ConT)4827 9008 y(E)5502
+8747 y(Xt)480 b(and)h(other)f(external)g(commands)h(lik)-34
+b(e)479 b(BibT)28715 9008 y(E)29388 8747 y(X)h(and)h
+Fu(makeindex)i FC(from)d(within)h(Emacs,)2000 10209 y(viewing)404
+b(and)h(prin)-34 b(ting)405 b(the)f(results,)g(and)h(moreo)-34
+b(v)g(er)404 b(allo)-34 b(wing)404 b(y)-34 b(ou)405 b(to)f
+Fo(debug)509 b FC(y)-34 b(our)405 b(do)34 b(cumen)-34
+b(ts.)3660 12062 y(A)g(UCT)6992 12323 y(E)7667 12062
+y(X)588 b(comes)g(with)g(a)g(sp)34 b(ecial)587 b(to)34
+b(ol)588 b(bar)g(for)g(T)28888 12323 y(E)29562 12062
+y(X)g(and)g(L)33921 11905 y Fv(a)34482 12062 y FC(T)35155
+12323 y(E)35829 12062 y(X)g(whic)-34 b(h)589 b(pro)-34
+b(vides)588 b(buttons)2000 13523 y(for)646 b(the)f(most)h(imp)34
+b(ortan)-34 b(t)647 b(commands.)1263 b(Y)-101 b(ou)646
+b(can)g(enable)f(or)g(disable)h(it)f(b)-34 b(y)646 b(customizing)f(the)
+2000 14984 y(options)i Fu(plain-TeX-enable-toolbar)653
+b FC(and)647 b Fu(LaTeX-enable-toolbar)652 b FC(in)646
+b(the)g Fu(TeX-tool-bar)2000 16445 y FC(customization)709
+b(group.)1450 b(Y)-101 b(ou)709 b(can)f(also)f(customize)h(the)h
+(buttons)h(b)-34 b(y)708 b(the)g(options)h Fu(TeX-bar-)2000
+17907 y(TeX-buttons)p FC(,)374 b Fu(TeX-bar-TeX-all-button-alists)p
+FC(,)381 b Fu(TeX-bar-LaTeX-buttons)369 b FC(and)363
+b Fu(TeX-bar-)2000 19368 y(LaTeX-button-alist)p FC(.)2000
+22668 y FB(4.1)896 b(Executing)599 b(Commands)2000 24793
+y FC(F)-101 b(ormatting)350 b(the)g(do)34 b(cumen)-34
+b(t)350 b(with)g(T)19241 25054 y(E)19915 24793 y(X,)360
+b(L)21843 24636 y Fv(a)22404 24793 y FC(T)23077 25054
+y(E)23750 24793 y(X)349 b(or)g(ConT)29265 25054 y(E)29940
+24793 y(Xt,)360 b(viewing)349 b(with)h(a)f(preview)-34
+b(er,)359 b(prin)-34 b(ting)2000 26254 y(the)386 b(do)34
+b(cumen)-34 b(t,)389 b(running)e(BibT)17018 26515 y(E)17691
+26254 y(X,)i(making)c(an)h(index,)i(or)d(c)-34 b(hec)g(king)385
+b(the)h(do)34 b(cumen)-34 b(t)386 b(with)h Fu(lacheck)2000
+27715 y FC(or)404 b Fu(chktex)i FC(all)e(require)e(running)j(an)g
+(external)f(command.)2000 30432 y Fq(4.1.1)818 b(Starting)547
+b(a)e(Command)h(on)f(a)h(Do)45 b(cumen)-45 b(t)546 b(or)g(Region)2000
+32391 y FC(There)385 b(are)g(t)-34 b(w)g(o)387 b(w)-34
+b(a)g(ys)386 b(to)f(run)h(an)g(external)f(command,)k(y)-34
+b(ou)386 b(can)f(either)g(run)h(it)f(on)h(the)f(curren)-34
+b(t)386 b(do)34 b(c-)2000 33852 y(umen)-34 b(t)583 b(with)g
+Fu(TeX-command-master)p FC(,)632 b(or)581 b(on)i(the)f(curren)-34
+b(t)582 b(region)f(with)i Fu(TeX-command-region)p FC(.)2000
+35314 y(A)609 b(sp)34 b(ecial)608 b(case)h(of)h(running)g(T)17419
+35575 y(E)18093 35314 y(X)f(on)h(a)f(region)g(is)g Fu
+(TeX-command-buffer)616 b FC(whic)-34 b(h)610 b(di\013ers)f(from)2000
+36775 y Fu(TeX-command-master)410 b FC(if)405 b(the)f(curren)-34
+b(t)405 b(bu\013er)f(is)g(not)h(its)f(o)-34 b(wn)405
+b(master)f(\014le.)43872 39352 y([Command])-47999 b Fm
+(TeX-command-master)5200 40813 y FC(\()p Fs(C-c)405 b(C-c)p
+FC(\))498 b(Query)d(the)h(user)g(for)g(a)g(command,)520
+b(and)496 b(run)h(it)f(on)g(the)g(master)g(\014le)g(asso)34
+b(ciated)5200 42274 y(with)524 b(the)f(curren)-34 b(t)524
+b(bu\013er.)896 b(The)523 b(name)h(of)f(the)h(master)f(\014le)g(is)g
+(con)-34 b(trolled)523 b(b)-34 b(y)524 b(the)f(v)-67
+b(ariable)5200 43736 y Fu(TeX-master)p FC(.)673 b(The)448
+b(a)-34 b(v)-67 b(ailable)447 b(commands)i(are)e(con)-34
+b(trolled)448 b(b)-34 b(y)448 b(the)g(v)-67 b(ariable)447
+b Fu(TeX-command-)5200 45197 y(list)p FC(.)43872 47774
+y([Command])-47999 b Fm(TeX-command-region)5200 49235
+y FC(\()p Fs(C-c)405 b(C-r)p FC(\))422 b(Query)d(the)h(user)g(for)g(a)g
+(command,)k(and)d(run)g(it)f(on)g(the)g(con)-34 b(ten)g(ts)422
+b(of)e(the)h(selected)5200 50696 y(region.)505 b(The)307
+b(region)e(con)-34 b(ten)g(ts)307 b(are)f(written)g(in)-34
+b(to)307 b(the)f(region)f(\014le,)325 b(after)306 b(extracting)g(the)g
+(header)5200 52157 y(and)343 b(trailer)e(from)h(the)g(master)g(\014le.)
+517 b(If)342 b(mark)g(is)f(inactiv)-34 b(e)342 b(\(whic)-34
+b(h)343 b(can)f(happ)34 b(en)343 b(with)g(T)-101 b(ransien)-34
+b(t)5200 53619 y(Mark)409 b(mo)34 b(de\),)411 b(use)f(the)g(old)g
+(region.)555 b(See)409 b(also)h(the)g(command)h Fu(TeX-pin-region)j
+FC(ab)34 b(out)411 b(ho)-34 b(w)5200 55080 y(to)404 b(\014x)h(a)f
+(region.)5200 56933 y(The)322 b(name)h(of)f(the)h(region)e(\014le)h(is)
+g(con)-34 b(trolled)322 b(b)-34 b(y)322 b(the)h(v)-67
+b(ariable)321 b Fu(TeX-region)p FC(.)514 b(The)323 b(name)f(of)g(the)
+5200 58394 y(master)384 b(\014le)g(is)g(con)-34 b(trolled)385
+b(b)-34 b(y)385 b(the)f(v)-67 b(ariable)383 b Fu(TeX-master)p
+FC(.)536 b(The)384 b(header)h(is)f(all)f(text)i(up)g(to)f(the)5200
+59855 y(line)340 b(matc)-34 b(hing)343 b(the)e(regular)f(expression)h
+Fu(TeX-header-end)p FC(.)522 b(The)342 b(trailer)e(is)h(all)f(text)h
+(from)g(the)5200 61317 y(line)445 b(matc)-34 b(hing)447
+b(the)f(regular)f(expression)h Fu(TeX-trailer-start)p
+FC(.)669 b(The)446 b(a)-34 b(v)-67 b(ailable)445 b(commands)5200
+62778 y(are)404 b(con)-34 b(trolled)404 b(b)-34 b(y)404
+b(the)h(v)-67 b(ariable)403 b Fu(TeX-command-list)p FC(.)43872
+65355 y([Command])-47999 b Fm(TeX-command-buffer)5200
+66816 y FC(\()p Fs(C-c)405 b(C-b)p FC(\))382 b(Query)c(the)j(user)e
+(for)h(a)g(command,)385 b(and)380 b(apply)g(it)g(to)g(the)g(con)-34
+b(ten)g(ts)381 b(of)f(the)h(curren)-34 b(t)5200 68277
+y(bu\013er.)515 b(The)334 b(bu\013er)g(con)-34 b(ten)g(ts)335
+b(are)e(written)h(in)-34 b(to)335 b(the)f(region)f(\014le,)347
+b(after)334 b(extracting)f(the)h(header)5200 69738 y(and)357
+b(trailer)e(from)h(the)h(master)f(\014le.)522 b(The)357
+b(command)g(is)e(then)i(actually)f(run)h(on)f(the)h(region)e(\014le.)
+5200 71200 y(See)404 b(ab)34 b(o)-34 b(v)g(e)404 b(for)g(details.)p
+eop end
+%%Page: 53 58
+TeXDict begin 53 57 bop 2000 -1550 a FC(Chapter)405 b(4:)539
+b(Starting)405 b(Pro)34 b(cessors,)403 b(View)-34 b(ers)403
+b(and)i(Other)f(Programs)14135 b(53)43872 3985 y([Command])-47999
+b Fm(LaTeX-command-section)5200 5446 y FC(\()p Fs(C-c)405
+b(C-z)p FC(\))333 b(Query)e(the)h(user)f(for)h(a)f(command,)347
+b(and)332 b(apply)g(it)f(to)h(the)g(curren)-34 b(t)332
+b(section)f(\(or)h(part,)5200 6907 y(c)-34 b(hapter,)482
+b(subsection,)h(paragraph,)g(or)466 b(subparagraph\).)728
+b(What)467 b(mak)-34 b(es)466 b(the)h(curren)-34 b(t)467
+b(section)5200 8369 y(is)517 b(determined)h(b)-34 b(y)518
+b Fu(LaTeX-command-section-level)527 b FC(whic)-34 b(h)518
+b(can)g(b)34 b(e)517 b(enlarged/shrunk)-34 b(en)5200
+9830 y(using)553 b Fu(LaTeX-command-section-change-level)564
+b FC(\()p Fs(C-c)405 b(M-z)p FC(\).)984 b(The)553 b(giv)-34
+b(en)552 b(n)-34 b(umeric)552 b(pre-)5200 11291 y(\014x)584
+b(arg)f(is)g(added)i(to)e(the)h(curren)-34 b(t)584 b(v)-67
+b(alue)583 b(of)h Fu(LaTeX-command-section-level)p FC(.)1086
+b(By)583 b(de-)5200 12752 y(fault,)774 b Fu
+(LaTeX-command-section-level)710 b FC(is)699 b(initialized)g(with)i
+(the)f(curren)-34 b(t)700 b(do)34 b(cumen)-34 b(t's)5200
+14213 y Fu(LaTeX-largest-level)p FC(.)1005 b(The)558
+b(bu\013er)f(con)-34 b(ten)g(ts)560 b(are)c(written)j(in)-34
+b(to)558 b(the)g(region)f(\014le,)595 b(after)5200 15675
+y(extracting)362 b(the)g(header)g(and)h(trailer)e(from)h(the)g(master)g
+(\014le.)525 b(The)362 b(command)h(is)e(then)i(actually)5200
+17136 y(run)405 b(on)f(the)h(region)e(\014le.)539 b(See)403
+b Fu(TeX-command-region)411 b FC(for)404 b(details.)3660
+19571 y(It)414 b(is)f(also)h(p)34 b(ossible)413 b(to)h(compile)f
+(automatically)g(the)h(whole)g(do)34 b(cumen)-34 b(t)414
+b(un)-34 b(til)415 b(it)e(is)h(ready)f(with)h(a)2000
+21032 y(single)404 b(command:)539 b Fu(TeX-command-run-all)p
+FC(.)43872 23468 y([Command])-47999 b Fm(TeX-command-run-all)5200
+24929 y FC(\()p Fs(C-c)405 b(C-a)p FC(\))516 b(Compile)d(the)i(curren)
+-34 b(t)514 b(do)34 b(cumen)-34 b(t)515 b(un)-34 b(til)514
+b(an)h(error)d(o)34 b(ccurs)513 b(or)h(it)g(is)f(\014nished.)869
+b(If)5200 26390 y(compilation)404 b(\014nishes)h(successfully)-101
+b(,)404 b(run)g(the)h(view)-34 b(er)403 b(at)i(the)f(end.)3660
+28825 y(Here)g(are)f(some)h(relev)-67 b(an)-34 b(t)404
+b(v)-67 b(ariables.)42818 31261 y([User)404 b(Option])-48000
+b Fm(TeX-region)5200 32722 y FC(The)515 b(name)g(of)g(the)g(\014le)f
+(for)h(temp)34 b(orarily)513 b(storing)i(the)g(text)g(when)h
+(formatting)g(the)f(curren)-34 b(t)5200 34183 y(region.)42818
+36618 y([User)404 b(Option])-48000 b Fm(TeX-header-end)5200
+38079 y FC(A)862 b(regular)f(expression)h(matc)-34 b(hing)863
+b(the)g(end)g(of)f(the)h(header.)1913 b(By)861 b(default,)977
+b(this)863 b(is)5200 39541 y(`)p Fu(\\begin{document})p
+FC(')409 b(in)404 b(L)18195 39384 y Fv(a)18756 39541
+y FC(T)19429 39802 y(E)20103 39541 y(X)g(mo)34 b(de)404
+b(and)h(`)p Fu(\045**end)h(of)f(header)p FC(')g(in)g(plain)f(T)42951
+39802 y(E)43625 39541 y(X)g(mo)34 b(de.)42818 41976 y([User)404
+b(Option])-48000 b Fm(TeX-trailer-start)5200 43437 y
+FC(A)837 b(regular)g(expression)g(matc)-34 b(hing)839
+b(the)f(start)g(of)g(the)g(trailer.)1838 b(By)837 b(default,)947
+b(this)838 b(is)5200 44898 y(`)p Fu(\\end{document})p
+FC(')408 b(in)d(L)16923 44741 y Fv(a)17484 44898 y FC(T)18157
+45159 y(E)18830 44898 y(X)f(mo)34 b(de)404 b(and)h(`)p
+Fu(\\bye)p FC(')g(in)f(plain)g(T)34506 45159 y(E)35180
+44898 y(X)g(mo)34 b(de.)3660 47334 y(If)430 b(y)-34 b(ou)431
+b(w)-34 b(an)g(t)431 b(to)g(c)-34 b(hange)430 b(the)h(v)-67
+b(alues)429 b(of)h Fu(TeX-header-end)435 b FC(and)c Fu
+(TeX-trailer-start)k FC(y)-34 b(ou)431 b(can)2000 48795
+y(do)378 b(this)g(for)g(all)f(\014les)g(b)-34 b(y)378
+b(setting)g(the)g(v)-67 b(ariables)376 b(in)i(a)f(mo)34
+b(de)378 b(ho)34 b(ok)377 b(or)h(p)34 b(er)377 b(\014le)g(b)-34
+b(y)378 b(sp)34 b(ecifying)377 b(them)h(as)2000 50256
+y(\014le)404 b(v)-67 b(ariables)403 b(\(see)h(Section)g(\\File)g(V)-101
+b(ariables")403 b(in)i Ft(The)f(Emacs)g(Editor)87 b FC(\).)43872
+52691 y([Command])-47999 b Fm(TeX-pin-region)5200 54152
+y FC(\()p Fs(C-c)405 b(C-t)h(C-r)p FC(\))578 b(If)f(y)-34
+b(ou)578 b(don't)g(ha)-34 b(v)g(e)578 b(a)f(mo)34 b(de)577
+b(lik)-34 b(e)576 b(T)-101 b(ransien)-34 b(t)578 b(Mark)f(mo)34
+b(de)577 b(activ)-34 b(e,)620 b(where)5200 55614 y(marks)485
+b(get)g(disabled)g(automatically)-101 b(,)505 b(the)486
+b(region)f(w)-34 b(ould)486 b(need)f(to)h(get)f(prop)34
+b(erly)484 b(set)h(b)34 b(efore)5200 57075 y(eac)-34
+b(h)500 b(call)f(to)h Fu(TeX-command-region)p FC(.)832
+b(If)500 b(y)-34 b(ou)500 b(\014x)g(the)h(curren)-34
+b(t)500 b(region)f(with)i Fs(C-c)405 b(C-t)g(C-r)p FC(,)5200
+58536 y(then)460 b(it)f(will)g(get)g(used)g(for)h(more)e(commands)i(ev)
+-34 b(en)459 b(though)i(mark)e(and)g(p)34 b(oin)-34 b(t)460
+b(ma)-34 b(y)460 b(c)-34 b(hange.)5200 59997 y(An)442
+b(explicitly)f(activ)-67 b(ated)441 b(mark,)451 b(ho)-34
+b(w)g(ev)g(er,)452 b(will)442 b(alw)-34 b(a)g(ys)442
+b(de\014ne)h(a)f(new)g(region)g(when)h(calling)5200 61458
+y Fu(TeX-command-region)p FC(.)3660 63894 y(A)-34 b(UCT)6992
+64155 y(E)7667 63894 y(X)439 b(will)g(allo)-34 b(w)439
+b(one)g(pro)34 b(cess)439 b(for)g(eac)-34 b(h)439 b(do)34
+b(cumen)-34 b(t,)449 b(plus)439 b(one)g(pro)34 b(cess)439
+b(for)g(the)h(region)e(\014le)2000 65355 y(to)528 b(b)34
+b(e)527 b(activ)-34 b(e)527 b(at)h(the)g(same)f(time.)909
+b(Th)-34 b(us,)560 b(if)527 b(y)-34 b(ou)528 b(are)f(editing)h
+Ft(n)g FC(di\013eren)-34 b(t)528 b(do)34 b(cumen)-34
+b(ts,)559 b(y)-34 b(ou)528 b(can)2000 66816 y(ha)-34
+b(v)g(e)399 b Ft(n)g FC(plus)f(one)h(pro)34 b(cesses)397
+b(running)j(at)f(the)f(same)h(time.)536 b(If)398 b(the)h(last)g(pro)34
+b(cess)397 b(y)-34 b(ou)399 b(started)g(w)-34 b(as)400
+b(on)2000 68277 y(the)469 b(region,)485 b(the)469 b(commands)h(describ)
+34 b(ed)469 b(in)g(Section)g(4.3)g([Debugging],)485 b(page)469
+b(64,)485 b(and)470 b(Section)f(4.5)2000 69738 y([Con)-34
+b(trol],)633 b(page)586 b(67,)633 b(will)586 b(w)-34
+b(ork)587 b(on)g(that)h(pro)34 b(cess,)631 b(otherwise)587
+b(they)g(will)f(w)-34 b(ork)587 b(on)g(the)g(pro)34 b(cess)2000
+71200 y(asso)g(ciated)404 b(with)h(the)g(curren)-34 b(t)404
+b(do)34 b(cumen)-34 b(t.)p eop end
+%%Page: 54 59
+TeXDict begin 54 58 bop 2000 -1550 a FC(Chapter)405 b(4:)539
+b(Starting)405 b(Pro)34 b(cessors,)403 b(View)-34 b(ers)403
+b(and)i(Other)f(Programs)14135 b(54)2000 3985 y Fq(4.1.2)818
+b(Selecting)545 b(and)h(Executing)f(a)h(Command)2000
+5944 y FC(Once)530 b(y)-34 b(ou)531 b(started)h(the)f(command)g
+(selection)f(with)i Fs(C-c)405 b(C-c)p FC(,)563 b Fs(C-c)405
+b(C-r)532 b FC(or)e Fs(C-c)405 b(C-b)532 b FC(y)-34 b(ou)531
+b(will)f(b)34 b(e)2000 7406 y(prompted)438 b(for)f(the)h(t)-34
+b(yp)34 b(e)437 b(of)g(command.)638 b(A)-34 b(UCT)25164
+7667 y(E)25838 7406 y(X)437 b(will)g(try)f(to)i(guess)f(whic)-34
+b(h)438 b(command)g(is)e(appro-)2000 8867 y(priate)377
+b(in)h(the)g(giv)-34 b(en)377 b(situation)i(and)f(prop)34
+b(ose)378 b(it)g(as)f(default.)531 b(Usually)377 b(this)h(is)g(a)f(pro)
+34 b(cessor)377 b(lik)-34 b(e)377 b(`)p Fu(TeX)p FC(')2000
+10328 y(or)331 b(`)p Fu(LaTeX)p FC(')i(if)e(the)h(do)34
+b(cumen)-34 b(t)333 b(w)-34 b(as)332 b(c)-34 b(hanged)332
+b(or)f(a)h(view)-34 b(er)331 b(if)g(the)h(do)34 b(cumen)-34
+b(t)332 b(w)-34 b(as)333 b(just)f(t)-34 b(yp)34 b(eset.)515
+b(Other)2000 11789 y(commands)405 b(can)f(b)34 b(e)404
+b(selected)g(in)g(the)g(minibu\013er)h(with)g(completion)f(supp)34
+b(ort)405 b(b)-34 b(y)405 b(t)-34 b(yping)405 b Fu(TAB)p
+FC(.)3660 13707 y(The)523 b(a)-34 b(v)-67 b(ailable)520
+b(commands)j(are)e(de\014ned)i(b)-34 b(y)522 b(the)g(v)-67
+b(ariable)520 b Fu(TeX-command-list)p FC(.)897 b(P)-34
+b(er)521 b(default)2000 15168 y(it)570 b(includes)g(commands)h(for)f(t)
+-34 b(yp)34 b(esetting)570 b(the)h(do)34 b(cumen)-34
+b(t)571 b(\(e.g.)e(`)p Fu(LaTeX)p FC('\),)612 b(for)570
+b(viewing)g(the)g(out-)2000 16629 y(put)428 b(\(`)p Fu(View)p
+FC('\),)434 b(for)427 b(prin)-34 b(ting)428 b(\(`)p Fu(Print)p
+FC('\),)435 b(for)427 b(generating)g(an)h(index)f(\(`)p
+Fu(Index)p FC('\))i(or)d(for)i(sp)34 b(ell)426 b(c)-34
+b(hec)g(king)2000 18090 y(\(`)p Fu(Spell)p FC('\))539
+b(to)f(name)g(but)g(a)g(few.)938 b(Y)-101 b(ou)538 b(can)g(also)f(add)h
+(y)-34 b(our)538 b(o)-34 b(wn)538 b(commands)h(b)-34
+b(y)538 b(adding)g(en)-34 b(tries)2000 19552 y(to)614
+b Fu(TeX-command-list)p FC(.)1172 b(Refer)613 b(to)h(its)g(do)34
+b(c)613 b(string)h(for)g(information)g(ab)34 b(out)614
+b(its)g(syn)-34 b(tax.)1167 b(Y)-101 b(ou)2000 21013
+y(migh)-34 b(t)521 b(also)f(w)-34 b(an)g(t)522 b(to)f(lo)34
+b(ok)520 b(at)g Fu(TeX-expand-list)526 b FC(to)520 b(learn)g(ab)34
+b(out)521 b(the)g(expanders)g(y)-34 b(ou)520 b(can)h(use)2000
+22474 y(in)404 b Fu(TeX-command-list)p FC(.)3660 24392
+y(Note)446 b(that)g(the)f(default)h(of)f(the)h(v)-67
+b(ariable)443 b(o)34 b(ccasionally)444 b(c)-34 b(hanges.)661
+b(Therefore)445 b(it)g(is)g(advisable)g(to)2000 25853
+y(add)451 b(to)f(the)h(list)e(rather)h(than)i(o)-34 b(v)g(erwriting)450
+b(it.)676 b(Y)-101 b(ou)451 b(can)f(do)g(this)h(with)g(a)f(call)f(to)h
+Fu(add-to-list)k FC(in)2000 27314 y(y)-34 b(our)411 b(init)f(\014le.)
+558 b(F)-101 b(or)411 b(example,)g(if)f(y)-34 b(ou)411
+b(w)-34 b(an)g(ted)413 b(to)e(add)g(a)g(command)g(for)g(running)g(a)g
+(program)g(called)2000 28775 y(`)p Fu(foo)p FC(')405
+b(on)f(the)h(master)f(or)g(region)f(\014le,)h(y)-34 b(ou)404
+b(could)h(do)f(this)h(with)g(the)f(follo)-34 b(wing)405
+b(form.)5200 30693 y Fu(\(eval-after-load)642 b("tex")6473
+32154 y('\(add-to-list)f('TeX-command-list)15382 33616
+y('\("Foo")e("foo)e(\045s")h(TeX-run-command)j(t)c(t)g(:help)h("Run)g
+(foo"\))15382 35077 y(t\)\))3660 36995 y FC(As)515 b(men)-34
+b(tioned)516 b(b)34 b(efore,)542 b(A)-34 b(UCT)19012
+37256 y(E)19686 36995 y(X)515 b(will)f(try)g(to)h(guess)g(what)h
+(command)f(y)-34 b(ou)516 b(w)-34 b(an)g(t)516 b(to)f(in)-34
+b(v)g(ok)g(e.)2000 38456 y(If)456 b(y)-34 b(ou)456 b(w)-34
+b(an)g(t)457 b(to)f(use)g(another)h(command)f(than)h(`)p
+Fu(TeX)p FC(',)469 b(`)p Fu(LaTeX)p FC(')457 b(or)e(whatev)-34
+b(er)456 b(pro)34 b(cessor)455 b(A)-34 b(UCT)48416 38717
+y(E)49091 38456 y(X)2000 39917 y(thinks)497 b(is)f(appropriate)h(for)g
+(the)f(curren)-34 b(t)497 b(mo)34 b(de,)519 b(set)497
+b(the)f(v)-67 b(ariable)496 b Fu(TeX-command-default)p
+FC(.)821 b(Y)-101 b(ou)2000 41378 y(can)504 b(do)g(this)h(for)f(all)g
+(\014les)f(b)-34 b(y)505 b(setting)f(it)g(in)g(a)g(mo)34
+b(de)504 b(ho)34 b(ok)504 b(or)g(p)34 b(er)503 b(\014le)h(b)-34
+b(y)505 b(sp)34 b(ecifying)503 b(it)h(as)g(a)g(\014le)2000
+42839 y(v)-67 b(ariable)403 b(\(see)h(Section)g(\\File)g(V)-101
+b(ariables")403 b(in)i Ft(The)f(Emacs)g(Editor)87 b FC(\).)42818
+45546 y([User)404 b(Option])-48000 b Fm(TeX-command-default)5200
+47007 y FC(The)381 b(default)h(command)g(to)f(run)g(in)g(this)g
+(bu\013er.)531 b(Must)382 b(b)34 b(e)381 b(an)g(en)-34
+b(try)381 b(in)g Fu(TeX-command-list)p FC(.)3660 49714
+y(In)489 b(case)g(y)-34 b(ou)489 b(use)g(biblatex)g(in)g(a)g(do)34
+b(cumen)-34 b(t,)511 b(when)490 b(automatic)g(parsing)f(is)g(enabled)g
+(A)-34 b(UCT)48416 49975 y(E)49091 49714 y(X)2000 51175
+y(c)g(hec)g(ks)487 b(the)h(v)-67 b(alue)486 b(of)i(`)p
+Fu(backend)p FC(')h(option)f(giv)-34 b(en)487 b(to)g(biblatex)h(at)f
+(load)g(time)g(to)h(decide)f(whether)h(to)2000 52636
+y(use)421 b(BibT)6653 52897 y(E)7326 52636 y(X)g(or)g(Bib)34
+b(er)419 b(for)i(bibliograph)-34 b(y)421 b(pro)34 b(cessing.)588
+b(Should)422 b(A)-34 b(UCT)36141 52897 y(E)36816 52636
+y(X)421 b(fail)f(to)h(detect)g(the)g(righ)-34 b(t)2000
+54097 y(bac)g(k)g(end,)405 b(y)-34 b(ou)404 b(can)h(use)f(the)g(\014le)
+g(lo)34 b(cal)403 b Fu(LaTeX-biblatex-use-Biber)413 b
+FC(v)-67 b(ariable.)44946 56804 y([V)-101 b(ariable])-48001
+b Fm(LaTeX-biblatex-use-Biber)5200 58265 y FC(If)281
+b(this)g(b)34 b(o)g(olean)281 b(v)-67 b(ariable)280 b(is)h(set)g(as)g
+(\014le)f(lo)34 b(cal,)305 b(it)281 b(tells)f(to)h(A)-34
+b(UCT)34725 58526 y(E)35400 58265 y(X)281 b(whether)h(to)f(use)g(Bib)34
+b(er)280 b(with)5200 59726 y(biblatex.)637 b(In)438 b(this)f(case,)445
+b(the)437 b(auto)34 b(detection)438 b(of)g(the)f(biblatex)h(bac)-34
+b(k)g(end)438 b(will)e(b)34 b(e)437 b(o)-34 b(v)g(erridden.)5200
+61187 y(Y)-101 b(ou)405 b(ma)-34 b(y)404 b(w)-34 b(an)g(t)406
+b(to)e(set)g(lo)34 b(cally)403 b(this)i(v)-67 b(ariable)402
+b(if)i(automatic)h(parsing)g(is)f(not)h(enabled.)3660
+63894 y(After)364 b(con\014rming)g(a)g(command)g(to)g(execute,)371
+b(A)-34 b(UCT)28616 64155 y(E)29291 63894 y(X)363 b(will)g(try)h(to)g
+(sa)-34 b(v)g(e)363 b(an)-34 b(y)364 b(bu\013ers)g(related)g(to)2000
+65355 y(the)287 b(do)34 b(cumen)-34 b(t,)310 b(and)287
+b(c)-34 b(hec)g(k)286 b(if)g(the)h(do)34 b(cumen)-34
+b(t)287 b(needs)g(to)f(b)34 b(e)286 b(reformatted.)500
+b(If)286 b(the)h(v)-67 b(ariable)285 b Fu(TeX-save-)2000
+66816 y(query)316 b FC(is)e(non-nil,)333 b(A)-34 b(UCT)14330
+67077 y(E)15005 66816 y(X)314 b(will)g(query)f(b)34 b(efore)315
+b(sa)-34 b(ving)314 b(eac)-34 b(h)315 b(\014le.)508 b(By)314
+b(default)h(A)-34 b(UCT)43040 67077 y(E)43715 66816 y(X)314
+b(will)g(c)-34 b(hec)g(k)2000 68277 y(emacs)285 b(bu\013ers)g(asso)34
+b(ciated)286 b(with)g(\014les)f(in)g(the)h(curren)-34
+b(t)285 b(directory)-101 b(,)308 b(in)285 b(one)h(of)f(the)h
+Fu(TeX-macro-private)2000 69738 y FC(directories,)453
+b(and)445 b(in)f(the)h Fu(TeX-macro-global)450 b FC(directories.)658
+b(Y)-101 b(ou)445 b(can)f(c)-34 b(hange)445 b(this)g(b)-34
+b(y)445 b(setting)f(the)2000 71200 y(v)-67 b(ariable)403
+b Fu(TeX-check-path)p FC(.)p eop end
+%%Page: 55 60
+TeXDict begin 55 59 bop 2000 -1550 a FC(Chapter)405 b(4:)f(Starting)h
+(Pro)34 b(cessors,)403 b(View)-34 b(ers)404 b(and)h(Other)f(Programs)
+14269 b(55)42818 3985 y([User)404 b(Option])-48000 b
+Fm(TeX-check-path)5200 5446 y FC(Directory)403 b(path)i(to)g(searc)-34
+b(h)404 b(for)g(dep)34 b(endencies.)5200 7279 y(If)404
+b(nil,)g(just)h(c)-34 b(hec)g(k)404 b(the)g(curren)-34
+b(t)405 b(\014le.)538 b(Used)405 b(when)g(c)-34 b(hec)g(king)404
+b(if)g(an)-34 b(y)404 b(\014les)g(ha)-34 b(v)g(e)405
+b(c)-34 b(hanged.)3660 9817 y(When)347 b(p)34 b(erforming)346
+b(sp)34 b(ell)346 b(c)-34 b(hec)g(king)346 b(on)h(a)f(do)34
+b(cumen)-34 b(t)347 b(or)f(a)h(region)e(\(in)-34 b(v)g(ok)g(ed)348
+b(through)f(A)-34 b(UCT)47601 10077 y(E)48276 9817 y(X's)2000
+11278 y(`)p Fu(Spell)p FC(')367 b(command)f(or)f Fs(M-x)406
+b(ispell)g(RET)p FC(\),)374 b(y)-34 b(ou)366 b(w)-34
+b(an)g(t)368 b(the)e(sp)34 b(ell)364 b(c)-34 b(hec)g(king)366
+b(program)g(to)g(skip)f(certain)2000 12739 y(macro)568
+b(argumen)-34 b(ts)569 b(and)g(en)-34 b(vironmen)g(ts,)610
+b(most)568 b(notably)h(the)f(argumen)-34 b(ts)570 b(of)e(referencing)f
+(macros)2000 14200 y(and)463 b(the)g(con)-34 b(ten)g(ts)464
+b(of)f(v)-34 b(erbatim)462 b(en)-34 b(vironmen)g(ts.)714
+b(The)463 b(skipp)34 b(ed)462 b(parts)h(are)f(con)-34
+b(trolled)463 b(b)-34 b(y)462 b(v)-67 b(ariable)2000
+15661 y Fu(ispell-tex-skip-alists)491 b FC(pro)-34 b(vided)484
+b(b)-34 b(y)483 b Fu(ispell.el)p FC(.)779 b(A)-34 b(UCT)33483
+15922 y(E)34158 15661 y(X)483 b(has)h(a)f(library)g(whic)-34
+b(h)484 b(can)f(b)34 b(e)2000 17122 y(added)411 b(to)f(this)g(v)-67
+b(ariable)408 b(dep)34 b(ending)411 b(on)f(the)g(v)-67
+b(alue)408 b(of)i Fu(TeX-ispell-extend-skip-list)420
+b FC(whic)-34 b(h)410 b(is)2000 18584 y(set)404 b(to)h
+Fu(t)f FC(b)-34 b(y)405 b(default.)42818 21121 y([User)f(Option])-48000
+b Fm(TeX-ispell-extend-skip-list)5200 22582 y FC(This)492
+b(b)34 b(o)g(olean)492 b(option)h(con)-34 b(trols)492
+b(whether)h(A)-34 b(UCT)29227 22843 y(E)29901 22582 y(X)492
+b(activ)-67 b(ates)492 b(its)f(extension)i(for)e(skipping)5200
+24043 y(certain)404 b(macro)f(argumen)-34 b(ts)406 b(and)f(en)-34
+b(vironmen)g(ts)405 b(when)g(sp)34 b(ell)403 b(c)-34
+b(hec)g(king.)5200 25876 y(When)657 b(non-)p Fu(nil)p
+FC(,)722 b(A)-34 b(UCT)17643 26137 y(E)18318 25876 y(X)657
+b(loads)h(the)g(\014le)e Fu(tex-ispell.el)662 b FC(and)c(adds)g(its)g
+(con)-34 b(ten)g(t)659 b(to)5200 27337 y Fu(ispell-tex-skip-alists)p
+FC(.)1060 b(This)575 b(library)g(can)g(and)h(will)f(nev)-34
+b(er)575 b(b)34 b(e)575 b(complete,)617 b(but)576 b(the)5200
+28799 y(in)-34 b(terface)461 b(can)g(b)34 b(e)460 b(used)i(to)f(add)g
+(selected)f(and)i(priv)-67 b(ate)460 b(macro)g(names)i(within)f(y)-34
+b(our)461 b(init)g(\014le)5200 30260 y(or)404 b(on)g(a)g(\014le)g(lo)34
+b(cal)403 b(basis.)5200 32093 y Fu(ispell-tex-skip-alists)412
+b FC(has)404 b(the)h(follo)-34 b(wing)405 b(structure:)8400
+33926 y Fu(\(defvar)639 b(ispell-tex-skip-alists)9673
+35387 y('\(\(;;)f FC(First)404 b(list)11582 36848 y Fu
+(\("\\\\\\\\addcontentsline")5735 b(ispell-tex-arg-end)643
+b(2\))11582 38310 y(\("\\\\\\\\\\\\\([aA]lph\\\\|arabic\\\\\)")1283
+b(ispell-tex-arg-end\))11582 39771 y(\("\\\\\\\\makebox")10823
+b(ispell-tex-arg-end)643 b(0\))11582 41232 y(\("\\\\\\\\documentclass")
+g(.)637 b("\\\\\\\\begin{document}"\)\))10945 42693 y(\(;;)h
+FC(Second)405 b(list)11582 44154 y Fu
+(\("\\\\\(figure\\\\|table\\\\\)\\\\*?")1282 b(ispell-tex-arg-end)643
+b(0\))11582 45616 y(\("list")14002 b(ispell-tex-arg-end)643
+b(2\))11582 47077 y(\("verbatim\\\\*?")e(.)c
+("\\\\\\\\end{verbatim\\\\*?}"\)\)\))9673 48538 y("Lists)h(of)f
+(regions)i(to)e(be)g(skipped)i(in)e(TeX)h(mode.)8400
+49999 y(First)g(list)g(is)f(used)h(raw.)8400 51460 y(Second)g(list)g
+(has)g(key)f(placed)i(inside)f(\\\\begin{}."\))5200 53293
+y FC(Eac)-34 b(h)494 b(item)g(is)g(an)g(alist)g(and)g(the)h(structure)f
+(of)g(it)g(is)g(describ)34 b(ed)493 b(in)h Fu(ispell-skip-region-)5200
+54755 y(alist)p FC(:)8400 56588 y Fu(\(defvar)639 b
+(ispell-skip-region-alist)9673 58049 y('\(\(...\)\))9673
+59510 y("Alist)f(expressing)i(beginning)g(and)d(end)g(of)h(regions)g
+(not)g(to)f(spell)h(check.)8400 60971 y(The)f(alist)h(key)g(must)g(be)f
+(a)f(regular)j(expression.)8400 62433 y(Valid)f(forms)g(include:)9673
+63894 y(\(KEY\))g(-)e(just)i(skip)g(the)f(key.)9673 65355
+y(\(KEY)g(.)g(REGEXP\))i(-)e(skip)g(to)h(the)f(end)g(of)g(REGEXP.)20491
+66816 y(REGEXP)h(may)g(be)f(string)h(or)f(symbol.)9673
+68277 y(\(KEY)g(REGEXP\))i(-)e(skip)h(to)f(end)g(of)g(REGEXP.)1276
+b(REGEXP)638 b(must)g(be)f(a)g(string.)9673 69738 y(\(KEY)g(FUNCTION)j
+(ARGS\))e(-)e(FUNCTION)k(called)e(with)g(ARGS)23672 71200
+y(returns)h(end)f(of)f(region."\))p eop end
+%%Page: 56 61
+TeXDict begin 56 60 bop 2000 -1550 a FC(Chapter)405 b(4:)539
+b(Starting)405 b(Pro)34 b(cessors,)403 b(View)-34 b(ers)403
+b(and)i(Other)f(Programs)14135 b(56)5200 3985 y(Let's)403
+b(go)i(through)g(the)g(\014rst)f(list)g(of)h Fu(ispell-tex-skip-alists)
+412 b FC(line)403 b(b)-34 b(y)405 b(line:)8400 5738 y
+Fu(\("\\\\\\\\addcontentsline")5735 b(ispell-tex-arg-end)643
+b(2\))5200 7492 y(KEY)409 b FC(is)e(the)h(string)g Fu
+("\\\\\\\\addcontentsline")p FC(,)416 b Fu(FUNCTION)410
+b FC(is)e Fu(ispell-tex-arg-end)414 b FC(called)5200
+8953 y(with)396 b Fu(ARGS)p FC(,)i(here)d Fu(2)p FC(.)536
+b Fu(ispell-tex-arg-end)402 b FC(is)395 b(a)g(function)i(pro)-34
+b(vided)396 b(b)-34 b(y)396 b Fu(ispell.el)i FC(whic)-34
+b(h)5200 10414 y(skips)430 b(as)g(man)-34 b(y)431 b(subsequen)-34
+b(t)432 b(optional)f(argumen)-34 b(ts)431 b(in)f(square)g(brac)-34
+b(k)g(ets)431 b(as)f(it)g(sees)g(and)h(then)5200 11875
+y(skips)507 b Fu(ARGS)h FC(n)-34 b(um)g(b)34 b(er)509
+b(of)e(mandatory)h(argumen)-34 b(ts)508 b(in)g(braces.)847
+b(Omitting)507 b Fu(ARGS)i FC(means)e(skip)5200 13337
+y Fu(1)605 b FC(mandatory)g(argumen)-34 b(t.)1142 b(In)604
+b(practice,)654 b(when)606 b(y)-34 b(ou)605 b(ha)-34
+b(v)g(e)605 b(something)g(lik)-34 b(e)604 b(this)h(in)g(y)-34
+b(our)5200 14798 y(do)34 b(cumen)-34 b(t:)8400 16551
+y Fu(\\addcontentsline{toc}{chapter}{Some)649 b(text})5200
+18305 y FC(The)459 b(\014rst)g(t)-34 b(w)g(o)460 b(argumen)-34
+b(ts)460 b(are)e(left)g(out)i(and)f(`)p Fu(Some)405 b(text)p
+FC(')460 b(will)e(b)34 b(e)458 b(sp)34 b(ell)458 b(c)-34
+b(hec)g(k)g(ed.)702 b(F)-101 b(or)458 b(the)5200 19766
+y(next)404 b(line)8400 21519 y Fu
+(\("\\\\\\\\\\\\\([aA]lph\\\\|arabic\\\\\)")1283 b
+(ispell-tex-arg-end\))5200 23273 y FC(the)404 b(name)h(of)f(the)h(coun)
+-34 b(ter)405 b(as)f(argumen)-34 b(t)405 b(is)f(skipp)34
+b(ed.)539 b(Next)403 b(line)h(is)8400 25026 y Fu(\("\\\\\\\\makebox")
+10823 b(ispell-tex-arg-end)643 b(0\))5200 26780 y FC(where)352
+b(only)f(optional)h(argumen)-34 b(ts)353 b(are)e(skipp)34
+b(ed,)362 b(the)352 b(\014rst)g(mandatory)h(argumen)-34
+b(t)353 b(is)e(c)-34 b(hec)g(k)g(ed,)5200 28241 y(e.g.)8400
+29994 y Fu(\\makebox[0pt][l]{Some)644 b(text})5200 31748
+y FC(Finally)-101 b(,)403 b(the)i(next)f(line)8400 33501
+y Fu(\("\\\\\\\\documentclass")643 b(.)637 b
+("\\\\\\\\begin{document}"\)\))5200 35254 y FC(ensures)462
+b(that)i(the)e(en)-34 b(tire)462 b(pream)-34 b(ble)463
+b(of)f(a)g(do)34 b(cumen)-34 b(t)463 b(is)f(discarded.)713
+b(Second)463 b(list)f(w)-34 b(orks)462 b(the)5200 36716
+y(same;)404 b(it)g(is)g(more)f(con)-34 b(v)g(enien)g(t)406
+b(for)e(en)-34 b(vironmen)g(ts)405 b(since)f Fu(KEY)h
+FC(is)f(wrapp)34 b(ed)405 b(inside)f Fu(\\begin{})p FC(.)5200
+38469 y(A)-34 b(UCT)8532 38730 y(E)9207 38469 y(X)318
+b(pro)-34 b(vides)319 b(t)-34 b(w)g(o)320 b(functions)f(to)g(add)h
+(items)e(to)h(car)f(and)h(cdr)f(of)h Fu(ispell-tex-arg-end)p
+FC(,)5200 39930 y(namely)412 b Fu(TeX-ispell-skip-setcar)419
+b FC(and)413 b Fu(TeX-ispell-skip-setcdr)p FC(.)570 b(The)412
+b(argumen)-34 b(t)414 b(of)5200 41391 y(these)345 b(functions)h(is)f
+(exactly)e(as)i(in)g Fu(ispell-tex-skip-alists)p FC(.)526
+b(Additions)346 b(can)f(b)34 b(e)344 b(done)i(via)5200
+42853 y(init)404 b(\014le,)g(e.g.:)8400 44606 y Fu(\(eval-after-load)
+642 b("tex-ispell")9673 46067 y('\(progn)11582 47528
+y(\(TeX-ispell-skip-setcar)12218 48990 y('\(\("\\\\\\\\mymacro")g
+(ispell-tex-arg-end\)\)\))11582 50451 y(\(TeX-ispell-skip-setcdr)12218
+51912 y('\(\("myverbatim")g(.)636 b
+("\\\\\\\\end{myverbatim}"\)\)\)\)\))5200 53665 y FC(Another)405
+b(p)34 b(ossibilit)-34 b(y)404 b(is)g(to)g(use)g(\014le)g(lo)34
+b(cal)403 b(additions)j(at)e(the)h(end)f(of)h(y)-34 b(our)404
+b(T)41267 53926 y(E)41941 53665 y(X)g(\014le,)f(e.g.:)8400
+55419 y Fu(\045\045\045)637 b(Local)h(Variables:)8400
+56880 y(\045\045\045)f(mode:)h(latex)8400 58341 y(\045\045\045)f
+(TeX-master:)k(t)8400 59802 y(\045\045\045)c(eval:)h
+(\(TeX-ispell-skip-setcar)645 b('\(\("\\\\\\\\mymacro")d(.)637
+b("{[-0-9]+}"\)\)\))8400 61264 y(\045\045\045)g(End:)5200
+63017 y FC(Finally)-101 b(,)590 b(A)-34 b(UCT)13079 63278
+y(E)13753 63017 y(X)554 b(pro)-34 b(vides)553 b(a)h(function)g(called)f
+Fu(TeX-ispell-tex-arg-end)561 b FC(whic)-34 b(h)554 b(sees)5200
+64478 y(more)470 b(argumen)-34 b(ts)471 b(than)h Fu(ispell-tex-arg-end)
+p FC(.)743 b(Refer)470 b(to)h(its)g(do)34 b(c)470 b(string)g(for)h
+(more)f(infor-)5200 65939 y(mation.)3660 68277 y(A)-34
+b(UCT)6992 68538 y(E)7667 68277 y(X)490 b(also)g(pro)-34
+b(vides)490 b(a)f(facilit)-34 b(y)490 b(to)g(skip)g(the)g(argumen)-34
+b(t)491 b(of)f(in-line)f(v)-34 b(erbatim)490 b(macros)g(lik)-34
+b(e)2000 69738 y(`)p Fu(\\Verb)p FC(')360 b(from)e Fu(fancyvrb.sty)363
+b FC(or)358 b(`)p Fu(\\mintinline)p FC(')k(from)d Fu(minted.sty)p
+FC(.)526 b(Characters)359 b(delimiting)f(the)2000 71200
+y(v)-34 b(erbatim)404 b(text)g(are)g(stored)h(in)f Fu
+(TeX-ispell-verb-delimiters)p FC(.)p eop end
+%%Page: 57 62
+TeXDict begin 57 61 bop 2000 -1550 a FC(Chapter)405 b(4:)539
+b(Starting)405 b(Pro)34 b(cessors,)403 b(View)-34 b(ers)403
+b(and)i(Other)f(Programs)14135 b(57)42818 3985 y([User)404
+b(Option])-48000 b Fm(TeX-ispell-verb-delimiters)5200
+5446 y FC(String)363 b(with)f(delimiters)f(recognized)h(for)g(in-line)f
+(v)-34 b(erbatim)362 b(macros.)524 b(This)363 b(v)-67
+b(ariable)361 b(is)g(initial-)5200 6907 y(ized)401 b(to)h(`)p
+Fu(!|#~"*/+^-)p FC('.)541 b(Since)402 b(this)g(string)g(is)g(used)g(to)
+g(build)h(a)f(c)-34 b(haracter)401 b(alternativ)-34 b(e)402
+b(inside)5200 8369 y(a)351 b(regular)g(expression,)361
+b(sp)34 b(ecial)351 b(c)-34 b(haracters)351 b(`)p Fu(^)p
+FC(')g(and)h(`)p Fu(-)p FC(')f(should)i(come)e(last.)521
+b(Other)351 b(c)-34 b(haracters)5200 9830 y(lik)g(e)497
+b(op)34 b(ening)499 b(brace)f(`)p Fu({)p FC(',)521 b(asterisk)498
+b(`)p Fu(*)p FC(')g(or)g(at)h(sign)f(`)p Fu(@)p FC(')g(should)i(b)34
+b(e)498 b(a)-34 b(v)g(oided)499 b(as)f(they)g(are)g(not)5200
+11291 y(recognized)403 b(b)-34 b(y)405 b Fu(font-latex.el)p
+FC(.)2000 14000 y Fq(4.1.3)818 b(Options)546 b(for)g(T)15726
+14324 y(E)16596 14000 y(X)f(Pro)45 b(cessors)2000 15960
+y FC(There)507 b(are)g(some)g(options)h(y)-34 b(ou)508
+b(can)f(customize)g(a\013ecting)g(whic)-34 b(h)508 b(pro)34
+b(cessors)507 b(are)g(in)-34 b(v)g(ok)g(ed)508 b(or)e(the)2000
+17421 y(w)-34 b(a)g(y)350 b(this)f(is)g(done)h(and)f(whic)-34
+b(h)350 b(output)h(they)e(pro)34 b(duce)350 b(as)f(a)g(result.)520
+b(These)349 b(options)h(con)-34 b(trol)349 b(if)g Fr(D)-31
+b(VI)349 b FC(or)2000 18882 y Fr(PDF)338 b FC(output)i(should)f(b)34
+b(e)338 b(pro)34 b(duced,)352 b(if)338 b(T)21222 19143
+y(E)21896 18882 y(X)g(should)h(b)34 b(e)338 b(started)h(in)g(in)-34
+b(teractiv)g(e)338 b(or)g(nonstop)i(mo)34 b(de,)351 b(if)2000
+20343 y(source)d(sp)34 b(ecials)346 b(or)i(a)g(SyncT)15606
+20604 y(E)16280 20343 y(X)g(\014le)f(should)i(b)34 b(e)348
+b(pro)34 b(duced)348 b(for)g(making)g(in)-34 b(v)g(erse)347
+b(and)i(forw)-34 b(ard)349 b(searc)-34 b(h)2000 21804
+y(p)34 b(ossible)379 b(or)f(whic)-34 b(h)380 b(T)12109
+22065 y(E)12783 21804 y(X)f(engine)f(should)i(b)34 b(e)379
+b(used)g(instead)h(of)f(regular)f(T)36277 22065 y(E)36951
+21804 y(X,)384 b(lik)-34 b(e)378 b(PDFT)43993 22065 y(E)44667
+21804 y(X,)383 b(Omega)2000 23266 y(or)404 b(XeT)5606
+23526 y(E)6279 23266 y(X,)g(and)h(the)g(st)-34 b(yle)404
+b(error)f(messages)h(are)f(prin)-34 b(ted)406 b(with.)43872
+25828 y([Command])-47999 b Fm(TeX-PDF-mode)5200 27289
+y FC(\()p Fs(C-c)405 b(C-t)h(C-p)p FC(\))314 b(This)g(command)h
+(toggles)e(the)h Fr(PDF)f FC(mo)34 b(de)313 b(of)h(A)-34
+b(UCT)37485 27550 y(E)38160 27289 y(X,)331 b(a)313 b(bu\013er-lo)34
+b(cal)313 b(minor)5200 28751 y(mo)34 b(de)539 b(whic)-34
+b(h)541 b(is)e(enabled)h(b)-34 b(y)540 b(default.)946
+b(Y)-101 b(ou)540 b(can)g(customize)f Fu(TeX-PDF-mode)544
+b FC(to)c(giv)-34 b(e)539 b(it)h(a)5200 30212 y(di\013eren)-34
+b(t)370 b(default)g(or)f(set)g(it)g(as)h(a)f(\014le)g(lo)34
+b(cal)368 b(v)-67 b(ariable)368 b(on)i(a)f(p)34 b(er-do)g(cumen)-34
+b(t)370 b(basis.)527 b(This)370 b(option)5200 31673 y(usually)404
+b(results)g(in)g(calling)g(either)g(PDFT)25109 31934
+y(E)25782 31673 y(X)h(or)e(ordinary)h(T)34142 31934 y(E)34816
+31673 y(X.)42818 34236 y([User)g(Option])-48000 b Fm
+(TeX-DVI-via-PDFTeX)5200 35697 y FC(If)453 b(this)g(is)f(set,)465
+b Fr(D)-31 b(VI)452 b FC(will)g(also)g(b)34 b(e)453 b(pro)34
+b(duced)453 b(b)-34 b(y)453 b(calling)e(PDFT)35614 35958
+y(E)36288 35697 y(X,)465 b(setting)453 b Fu(\\pdfoutput=0)p
+FC(.)5200 37158 y(This)436 b(mak)-34 b(es)435 b(it)h(p)34
+b(ossible)435 b(to)h(use)f(PDFT)24360 37419 y(E)25034
+37158 y(X)h(features)g(lik)-34 b(e)434 b(c)-34 b(haracter)435
+b(protrusion)i(ev)-34 b(en)435 b(when)5200 38619 y(pro)34
+b(ducing)505 b Fr(D)-31 b(VI)504 b FC(\014les.)839 b(Con)-34
+b(temp)34 b(orary)505 b(T)25573 38880 y(E)26247 38619
+y(X)f(distributions)i(do)e(this)h(an)-34 b(yw)g(a)g(y)-101
+b(,)531 b(so)504 b(that)h(y)-34 b(ou)5200 40080 y(need)404
+b(not)h(enable)f(the)h(option)g(within)g(A)-34 b(UCT)26916
+40341 y(E)27591 40080 y(X.)43872 42643 y([Command])-47999
+b Fm(TeX-interactive-mode)5200 44104 y FC(\()p Fs(C-c)405
+b(C-t)h(C-i)p FC(\))271 b(This)f(command)g(toggles)g(the)g(in)-34
+b(teractiv)g(e)269 b(mo)34 b(de)270 b(of)g(A)-34 b(UCT)40372
+44365 y(E)41047 44104 y(X,)296 b(a)269 b(global)h(minor)5200
+45565 y(mo)34 b(de.)735 b(Y)-101 b(ou)471 b(can)f(customize)f
+Fu(TeX-interactive-mode)477 b FC(to)470 b(giv)-34 b(e)470
+b(it)f(a)h(di\013eren)-34 b(t)470 b(default.)737 b(In)5200
+47026 y(in)-34 b(teractiv)g(e)418 b(mo)34 b(de,)422 b(T)15471
+47287 y(E)16144 47026 y(X)d(will)e(pause)i(with)g(an)g(error)e(prompt)j
+(when)f(errors)e(are)h(encoun)-34 b(tered)5200 48488
+y(and)405 b(w)-34 b(ait)405 b(for)f(the)h(user)f(to)g(t)-34
+b(yp)34 b(e)404 b(something.)43872 51050 y([Command])-47999
+b Fm(TeX-source-correlate-mode)5200 52511 y FC(\()p Fs(C-c)405
+b(C-t)h(C-s)p FC(\))397 b(T)-101 b(oggles)395 b(supp)34
+b(ort)397 b(for)f(forw)-34 b(ard)397 b(and)f(in)-34 b(v)g(erse)396
+b(searc)-34 b(h.)535 b(F)-101 b(orw)-34 b(ard)397 b(searc)-34
+b(h)396 b(refers)5200 53973 y(to)539 b(jumping)h(to)f(the)g(place)f(in)
+h(the)g(preview)-34 b(ed)539 b(do)34 b(cumen)-34 b(t)540
+b(corresp)34 b(onding)538 b(to)h(where)g(p)34 b(oin)-34
+b(t)5200 55434 y(is)503 b(lo)34 b(cated)503 b(in)h(the)g(do)34
+b(cumen)-34 b(t)505 b(source)e(and)h(in)-34 b(v)g(erse)504
+b(searc)-34 b(h)503 b(to)h(the)g(other)g(w)-34 b(a)g(y)504
+b(round.)838 b(See)5200 56895 y(Section)404 b(4.2.2)g([I/O)f
+(Correlation],)h(page)g(62.)5200 58741 y(Y)-101 b(ou)323
+b(can)g(p)34 b(ermanen)-34 b(tly)323 b(activ)-67 b(ate)322
+b Fu(TeX-source-correlate-mode)332 b FC(b)-34 b(y)323
+b(customizing)g(the)g(v)-67 b(ari-)5200 60202 y(able)318
+b Fu(TeX-source-correlate-mode)p FC(.)519 b(There)318
+b(is)h(a)f(bunc)-34 b(h)320 b(of)f(customization)g(options)h(for)e(the)
+5200 61663 y(mo)34 b(de,)404 b(use)g Fs(M-x)h(customize-group)k(RET)d
+(TeX-view)g(RET)g FC(to)e(\014nd)h(out)g(more.)5200 63509
+y(A)-34 b(UCT)8532 63770 y(E)9207 63509 y(X)559 b(is)g(a)-34
+b(w)g(are)560 b(of)g(three)f(di\013eren)-34 b(t)560 b(means)g(to)g(do)g
+(I/O)e(correlation:)849 b(source)559 b(sp)34 b(ecials)5200
+64970 y(\(only)548 b(D)-34 b(VI)548 b(output\),)587 b(the)548
+b(p)34 b(dfsync)549 b(L)23406 64813 y Fv(a)23967 64970
+y FC(T)24640 65231 y(E)25314 64970 y(X)f(pac)-34 b(k)-67
+b(age)548 b(\(only)h(PDF)f(output\))i(and)f(SyncT)48080
+65231 y(E)48754 64970 y(X.)5200 66431 y(The)392 b(c)-34
+b(hoice)392 b(b)34 b(et)-34 b(w)g(een)393 b(source)e(sp)34
+b(ecials)392 b(and)g(SyncT)29594 66692 y(E)30268 66431
+y(X)g(can)g(b)34 b(e)392 b(con)-34 b(trolled)392 b(with)h(the)f(v)-67
+b(ariable)5200 67893 y Fu(TeX-source-correlate-method)p
+FC(.)5200 69738 y(Should)323 b(y)-34 b(ou)321 b(use)h(source)f(sp)34
+b(ecials)321 b(it)g(has)h(to)g(b)34 b(e)321 b(stressed)g
+Fo(very)428 b FC(strongly)321 b(ho)-34 b(w)g(ev)g(er,)339
+b(that)322 b(source)5200 71200 y(sp)34 b(ecials)370 b(can)i(cause)f
+(di\013erences)f(in)h(page)h(breaks)f(and)h(spacing,)377
+b(can)372 b(seriously)e(in)-34 b(terfere)371 b(with)p
+eop end
+%%Page: 58 63
+TeXDict begin 58 62 bop 2000 -1550 a FC(Chapter)405 b(4:)539
+b(Starting)405 b(Pro)34 b(cessors,)403 b(View)-34 b(ers)403
+b(and)i(Other)f(Programs)14135 b(58)5200 3985 y(v)-67
+b(arious)310 b(pac)-34 b(k)-67 b(ages)310 b(and)h(should)g(th)-34
+b(us)312 b Fo(never)440 b FC(b)34 b(e)310 b(used)h(for)g(the)g(\014nal)
+f(v)-34 b(ersion)310 b(of)h(a)g(do)34 b(cumen)-34 b(t.)508
+b(In)5200 5446 y(particular,)422 b(\014ne-tuning)f(the)e(page)g(breaks)
+g(should)h(b)34 b(e)419 b(done)g(with)h(source)f(sp)34
+b(ecials)418 b(switc)-34 b(hed)5200 6907 y(o\013.)3660
+9498 y(Sometimes)521 b(y)-34 b(ou)520 b(are)f(requested,)549
+b(b)-34 b(y)520 b(journal)h(rules)e(or)h(pac)-34 b(k)-67
+b(ages,)548 b(to)520 b(compile)f(the)i(do)34 b(cumen)-34
+b(t)2000 10959 y(in)g(to)406 b Fr(D)-31 b(VI)404 b FC(output.)543
+b(Th)-34 b(us,)406 b(if)f(y)-34 b(ou)405 b(w)-34 b(an)g(t)407
+b(a)e Fr(PDF)f FC(do)34 b(cumen)-34 b(t)406 b(in)f(the)g(end)h(y)-34
+b(ou)405 b(can)g(either)f(use)h(XeT)48417 11220 y(E)49091
+10959 y(X)2000 12420 y(engine,)417 b(see)e(b)34 b(elo)-34
+b(w)415 b(for)g(information)h(ab)34 b(out)416 b(ho)-34
+b(w)416 b(to)g(set)f(engines,)i(or)e(compile)f(the)i(do)34
+b(cumen)-34 b(t)416 b(with)2000 13881 y Fu(tex)479 b
+FC(and)h(then)f(con)-34 b(v)g(ert)479 b(to)f Fr(PDF)g
+FC(with)i Fu(dvips)p FC({)p Fu(ps2pdf)i FC(b)34 b(efore)478
+b(viewing)g(it.)761 b(In)479 b(addition,)498 b(curren)-34
+b(t)2000 15342 y(Japanese)349 b(T)7759 15603 y(E)8433
+15342 y(X)f(engines)h(cannot)g(generate)f Fr(PDF)g FC(directly)g(so)g
+(they)h(rely)e(on)i Fr(D)-31 b(VI)p FC(-to-)p Fr(PDF)348
+b FC(con)-34 b(v)g(erters.)2000 16804 y(Usually)425 b
+Fu(dvipdfmx)i FC(command)f(is)e(used)i(for)f(this)g(purp)34
+b(ose.)601 b(Y)-101 b(ou)425 b(can)g(use)g(the)g Fu(TeX-PDF-from-DVI)
+2000 18265 y FC(v)-67 b(ariable)385 b(to)i(let)f(A)-34
+b(UCT)13060 18526 y(E)13735 18265 y(X)386 b(kno)-34 b(w)388
+b(y)-34 b(ou)387 b(w)-34 b(an)g(t)388 b(to)f(generate)f(the)h(\014nal)g
+Fr(PDF)f FC(b)-34 b(y)387 b(con)-34 b(v)g(erting)387
+b(a)f Fr(D)-31 b(VI)386 b FC(\014le.)42818 20855 y([User)404
+b(Option])-48000 b Fm(TeX-PDF-from-DVI)5200 22316 y FC(This)405
+b(option)g(con)-34 b(trols)404 b(if)g(and)h(ho)-34 b(w)406
+b(to)e(pro)34 b(duce)404 b(a)g Fr(PDF)g FC(\014le)g(b)-34
+b(y)404 b(con)-34 b(v)g(erting)405 b(a)f Fr(D)-31 b(VI)404
+b FC(\014le.)5200 24176 y(When)397 b Fu(TeX-PDF-mode)402
+b FC(is)397 b(non-nil,)h(if)g Fu(TeX-PDF-from-DVI)k FC(is)397
+b(non-nil)h(to)34 b(o)397 b(the)h(do)34 b(cumen)-34 b(t)398
+b(is)5200 25637 y(compiled)418 b(to)h Fr(D)-31 b(VI)419
+b FC(instead)g(of)g Fr(PDF)p FC(.)582 b(When)419 b(the)g(do)34
+b(cumen)-34 b(t)419 b(is)g(ready)-101 b(,)421 b Fs(C-c)405
+b(C-c)420 b FC(will)e(suggest)5200 27098 y(to)404 b(run)h(the)g(con)-34
+b(v)g(erter)404 b(to)g Fr(PDF)g FC(or)f(an)i(in)-34 b(termediate)404
+b(format.)5200 28958 y(If)377 b(non-nil,)382 b Fu(TeX-PDF-from-DVI)g
+FC(should)c(b)34 b(e)376 b(the)h(name)g(of)g(the)g(command)g(in)g
+Fu(TeX-command-)5200 30419 y(list)p FC(,)439 b(as)431
+b(a)g(string,)438 b(used)431 b(to)h(con)-34 b(v)g(ert)431
+b(the)g Fr(D)-31 b(VI)431 b FC(\014le)g(to)g Fr(PDF)g
+FC(or)f(to)i(an)f(in)-34 b(termediate)432 b(format.)5200
+31880 y(V)-101 b(alues)404 b(curren)-34 b(tly)404 b(supp)34
+b(orted)405 b(are:)6194 33740 y FA(\017)800 b Fu("Dvips")p
+FC(:)545 b(the)407 b Fr(D)-31 b(VI)406 b FC(\014le)h(is)f(con)-34
+b(v)g(erted)406 b(to)h Fr(PS)g FC(with)g Fu(dvips)p FC(.)547
+b(After)407 b(successfully)f(running)7600 35201 y(it,)e
+Fu(ps2pdf)i FC(will)e(b)34 b(e)403 b(the)i(default)g(command)g(to)f
+(con)-34 b(v)g(ert)405 b(the)f Fr(PS)h FC(\014le)f(to)g
+Fr(PDF)p FC(.)6194 37028 y FA(\017)800 b Fu("Dvipdfmx")p
+FC(:)542 b(the)405 b Fr(D)-31 b(VI)403 b FC(\014le)h(is)g(con)-34
+b(v)g(erted)405 b(to)f Fr(PDF)g FC(with)h Fu(dvipdfmx)p
+FC(.)5200 39253 y(\(case)326 b(is)g(signi\014can)-34
+b(t;)353 b(note)327 b(the)g(upp)34 b(ercase)326 b(`)p
+Fu(D)p FC(')g(in)g(b)34 b(oth)328 b(strings\))f(When)f(the)h
+Fr(PDF)f FC(\014le)g(is)g(\014nally)5200 40714 y(ready)-101
+b(,)403 b(the)i(next)f(suggested)h(command)g(will)f(b)34
+b(e)403 b(`)p Fu(View)p FC(')i(to)g(op)34 b(en)404 b(the)h(view)-34
+b(er.)5200 42574 y(This)414 b(option)g(can)g(also)f(b)34
+b(e)413 b(set)h(as)f(a)h(\014le)f(lo)34 b(cal)412 b(v)-67
+b(ariable,)414 b(in)g(order)f(to)g(use)h(this)g(con)-34
+b(v)g(ersion)414 b(on)5200 44035 y(a)404 b(p)34 b(er-do)g(cumen)-34
+b(t)405 b(basis.)5200 45895 y(Recall)471 b(the)i(whole)f(sequence)g(of)
+g Fs(C-c)405 b(C-c)473 b FC(commands)g(can)g(b)34 b(e)472
+b(replaced)f(b)-34 b(y)473 b(the)f(single)g Fs(C-c)5200
+47356 y(C-a)p FC(.)3660 49946 y(A)-34 b(UCT)6992 50207
+y(E)7667 49946 y(X)413 b(also)g(allo)-34 b(ws)413 b(y)-34
+b(ou)414 b(to)f(easily)f(select)g(di\013eren)-34 b(t)414
+b(T)30967 50207 y(E)31640 49946 y(X)f(engines)g(for)g(pro)34
+b(cessing,)415 b(either)e(b)-34 b(y)2000 51407 y(using)373
+b(the)g(en)-34 b(tries)373 b(in)f(the)h(`)p Fu(TeXing)406
+b(Options)p FC(')375 b(submen)-34 b(u)374 b(b)34 b(elo)-34
+b(w)373 b(the)g(`)p Fu(Command)p FC(')h(men)-34 b(u)373
+b(or)g(b)-34 b(y)373 b(calling)2000 52868 y(the)328 b(function)h
+Fu(TeX-engine-set)p FC(.)518 b(These)328 b(ev)-34 b(en)g(tually)327
+b(set)h(the)g(v)-67 b(ariable)326 b Fu(TeX-engine)331
+b FC(whic)-34 b(h)329 b(y)-34 b(ou)328 b(can)2000 54330
+y(also)404 b(mo)34 b(dify)404 b(directly)-101 b(.)42818
+56920 y([User)404 b(Option])-48000 b Fm(TeX-engine)5200
+58381 y FC(This)431 b(v)-67 b(ariable)429 b(allo)-34
+b(ws)431 b(y)-34 b(ou)431 b(to)g(c)-34 b(ho)34 b(ose)430
+b(whic)-34 b(h)431 b(T)28067 58642 y(E)28741 58381 y(X)g(engine)f
+(should)h(b)34 b(e)430 b(used)h(for)g(t)-34 b(yp)34 b(esetting)5200
+59842 y(the)460 b(do)34 b(cumen)-34 b(t,)474 b(i.e.)458
+b(the)h(executables)g(whic)-34 b(h)461 b(will)d(b)34
+b(e)459 b(used)h(when)g(y)-34 b(ou)460 b(in)-34 b(v)g(ok)g(e)460
+b(the)f(`)p Fu(TeX)p FC(')h(or)5200 61303 y(`)p Fu(LaTeX)p
+FC(')408 b(commands.)550 b(The)408 b(v)-67 b(alue)406
+b(should)j(b)34 b(e)407 b(one)g(of)h(the)g(sym)-34 b(b)34
+b(ols)407 b(de\014ned)i(in)e Fu(TeX-engine-)5200 62765
+y(alist-builtin)567 b FC(or)c Fu(TeX-engine-alist)p FC(.)1020
+b(The)563 b(sym)-34 b(b)34 b(ols)563 b(`)p Fu(default)p
+FC(',)604 b(`)p Fu(xetex)p FC(',)f(`)p Fu(luatex)p FC(')5200
+64226 y(and)405 b(`)p Fu(omega)p FC(')g(are)f(a)-34 b(v)-67
+b(ailable)403 b(from)h(the)h(built-in)f(list.)3660 66816
+y(Note)482 b(that)g Fu(TeX-engine)i FC(is)d(bu\013er-lo)34
+b(cal,)500 b(so)481 b(setting)g(the)h(v)-67 b(ariable)480
+b(directly)g(or)h(via)f(the)i(ab)34 b(o)-34 b(v)g(e)2000
+68277 y(men)g(tioned)377 b(men)-34 b(u)377 b(or)e(function)i(will)f
+(not)g(tak)-34 b(e)376 b(e\013ect)f(in)h(other)g(bu\013ers.)530
+b(If)375 b(y)-34 b(ou)377 b(w)-34 b(an)g(t)377 b(to)f(activ)-67
+b(ate)376 b(an)2000 69738 y(engine)271 b(for)f(all)g(A)-34
+b(UCT)12241 69999 y(E)12916 69738 y(X)271 b(mo)34 b(des,)297
+b(set)271 b Fu(TeX-engine)j FC(in)d(y)-34 b(our)271 b(init)f(\014le,)
+297 b(e.g.)270 b(b)-34 b(y)271 b(using)g Fs(M-x)405 b(customize-)2000
+71200 y(option)h(RET)p FC(.)674 b(If)449 b(y)-34 b(ou)450
+b(w)-34 b(an)g(t)451 b(to)e(activ)-67 b(ate)448 b(it)h(for)h(a)f
+(certain)f(A)-34 b(UCT)33490 71461 y(E)34165 71200 y(X)449
+b(mo)34 b(de)449 b(only)-101 b(,)460 b(set)449 b(the)g(v)-67
+b(ariable)p eop end
+%%Page: 59 64
+TeXDict begin 59 63 bop 2000 -1550 a FC(Chapter)405 b(4:)539
+b(Starting)405 b(Pro)34 b(cessors,)403 b(View)-34 b(ers)403
+b(and)i(Other)f(Programs)14135 b(59)2000 3985 y(in)433
+b(the)h(resp)34 b(ectiv)-34 b(e)432 b(mo)34 b(de)433
+b(ho)34 b(ok.)625 b(If)433 b(y)-34 b(ou)434 b(w)-34 b(an)g(t)435
+b(to)f(activ)-67 b(ate)432 b(it)h(for)g(certain)g(\014les,)440
+b(set)433 b(it)h(through)g(\014le)2000 5446 y(v)-67 b(ariables)403
+b(\(see)h(Section)g(\\File)g(V)-101 b(ariables")404 b(in)g
+Ft(The)g(Emacs)g(Editor)87 b FC(\).)3660 7173 y(Should)550
+b(y)-34 b(ou)549 b(need)f(to)h(c)-34 b(hange)549 b(the)g(executable)f
+(names)g(related)g(to)h(the)g(di\013eren)-34 b(t)548
+b(engine)h(set-)2000 8634 y(tings,)507 b(there)485 b(are)h(some)g(v)-67
+b(ariables)484 b(y)-34 b(ou)487 b(can)f(t)-34 b(w)g(eak.)785
+b(Those)486 b(are)g Fu(TeX-command)p FC(,)510 b Fu(LaTeX-command)p
+FC(,)2000 10095 y Fu(TeX-Omega-command)p FC(,)1252 b
+Fu(LaTeX-Omega-command)p FC(,)g Fu(ConTeXt-engine)1083
+b FC(and)1078 b Fu(ConTeXt-Omega-)2000 11557 y(engine)p
+FC(.)968 b(The)547 b(rest)g(of)g(the)g(executables)f(is)h(de\014ned)g
+(directly)f(in)h Fu(TeX-engine-alist-builtin)p FC(.)2000
+13018 y(If)395 b(y)-34 b(ou)396 b(w)-34 b(an)g(t)398
+b(to)e(o)-34 b(v)g(erride)394 b(an)i(en)-34 b(try)396
+b(from)g(that,)i(add)e(an)g(en)-34 b(try)396 b(to)f Fu
+(TeX-engine-alist)402 b FC(that)396 b(starts)2000 14479
+y(with)403 b(the)h(same)e(sym)-34 b(b)34 b(ol)403 b(as)g(that)g(the)g
+(en)-34 b(try)403 b(in)g(the)g(built-in)g(list)g(and)g(sp)34
+b(ecify)402 b(the)h(executables)f(y)-34 b(ou)2000 15940
+y(w)g(an)g(t)326 b(to)e(use)g(instead.)512 b(Y)-101 b(ou)324
+b(can)g(also)g(add)h(en)-34 b(tries)323 b(to)h Fu(TeX-engine-alist)330
+b FC(in)324 b(order)f(to)h(add)h(supp)34 b(ort)2000 17401
+y(for)404 b(engines)g(not)h(co)-34 b(v)g(ered)404 b(p)34
+b(er)404 b(default.)42818 19660 y([User)g(Option])-48000
+b Fm(TeX-engine-alist)5200 21121 y FC(Alist)368 b(of)g(T)10117
+21382 y(E)10790 21121 y(X)g(engines)g(and)g(asso)34 b(ciated)368
+b(commands.)527 b(Eac)-34 b(h)368 b(en)-34 b(try)368
+b(is)f(a)h(list)f(with)i(a)e(maxim)-34 b(um)5200 22582
+y(of)326 b(\014v)-34 b(e)326 b(elemen)-34 b(ts.)513 b(The)326
+b(\014rst)h(elemen)-34 b(t)326 b(is)f(a)h(sym)-34 b(b)34
+b(ol)326 b(used)h(to)f(iden)-34 b(tify)326 b(the)h(engine.)512
+b(The)327 b(second)5200 24043 y(is)360 b(a)h(string)g(describing)f(the)
+h(engine.)524 b(The)361 b(third)g(is)f(the)h(command)h(to)f(b)34
+b(e)360 b(used)h(for)g(plain)f(T)48080 24304 y(E)48754
+24043 y(X.)5200 25504 y(The)321 b(fourth)g(is)f(the)h(command)g(to)g(b)
+34 b(e)320 b(used)h(for)f(L)27515 25347 y Fv(a)28076
+25504 y FC(T)28749 25765 y(E)29423 25504 y(X.)510 b(The)321
+b(\014fth)h(is)e(the)h(command)g(to)f(b)34 b(e)320 b(used)5200
+26966 y(for)477 b(the)g Fu(--engine)i FC(parameter)e(of)g(ConT)25006
+27226 y(E)25681 26966 y(Xt's)f(`)p Fu(texexec)p FC(')j(program.)756
+b(Eac)-34 b(h)477 b(command)h(can)5200 28427 y(either)434
+b(b)34 b(e)434 b(a)g(v)-67 b(ariable)433 b(or)g(a)i(string.)629
+b(An)434 b(empt)-34 b(y)435 b(string)f(or)g(nil)g(means)h(there)f(is)g
+(no)g(command)5200 29888 y(a)-34 b(v)-67 b(ailable.)3660
+32146 y(In)513 b(some)g(systems,)540 b(Emacs)513 b(cannot)h(inherit)f
+(the)g Fu(PATH)h FC(en)-34 b(vironmen)g(t)514 b(v)-67
+b(ariable)512 b(from)h(the)g(shell)2000 33607 y(and)342
+b(th)-34 b(us)342 b(A)-34 b(UCT)10229 33868 y(E)10904
+33607 y(X)341 b(ma)-34 b(y)341 b(not)h(b)34 b(e)341 b(able)g(to)g(run)h
+(T)25146 33868 y(E)25820 33607 y(X)f(commands.)518 b(Before)340
+b(running)i(them,)354 b(A)-34 b(UCT)48416 33868 y(E)49091
+33607 y(X)2000 35068 y(c)g(hec)g(ks)409 b(if)g(it)g(is)g(able)g(to)g
+(\014nd)i(those)e(commands)h(and)g(will)f(w)-34 b(arn)410
+b(y)-34 b(ou)409 b(in)g(case)g(it)g(fails.)553 b(Y)-101
+b(ou)410 b(can)f(skip)2000 36530 y(this)c(test)f(b)-34
+b(y)405 b(c)-34 b(hanging)405 b(the)g(option)g Fu(TeX-check-TeX)p
+FC(.)42818 38788 y([User)f(Option])-48000 b Fm(TeX-check-TeX)5200
+40249 y FC(If)415 b(non-nil,)j(A)-34 b(UCT)14213 40510
+y(E)14887 40249 y(X)415 b(will)g(c)-34 b(hec)g(k)414
+b(if)h(it)g(is)g(able)f(to)h(\014nd)h(a)f(w)-34 b(orking)416
+b(T)38147 40510 y(E)38820 40249 y(X)f(distribution)h(b)34
+b(efore)5200 41710 y(running)417 b(T)10400 41971 y(E)11073
+41710 y(X,)i(L)13060 41553 y Fv(a)13621 41710 y FC(T)14294
+41971 y(E)14967 41710 y(X,)f(ConT)19458 41971 y(E)20133
+41710 y(Xt,)h(etc.)573 b(It)415 b(actually)g(c)-34 b(hec)g(ks)416
+b(if)g(can)f(run)i Fu(TeX-command)i FC(com-)5200 43171
+y(mand)462 b(or)f(the)g(shell)g(returns)g(a)g(command)h(not)g(found)h
+(error.)708 b(The)461 b(error)f(co)34 b(de)461 b(returned)h(b)-34
+b(y)5200 44633 y(the)404 b(shell)g(in)g(this)h(case)f(can)g(b)34
+b(e)404 b(set)g(in)g Fu(TeX-check-TeX-command-not-found)415
+b FC(option.)3660 46891 y(Some)605 b(L)7415 46734 y Fv(a)7976
+46891 y FC(T)8649 47152 y(E)9322 46891 y(X)f(pac)-34
+b(k)-67 b(ages)604 b(requires)f(the)i(do)34 b(cumen)-34
+b(t)605 b(to)f(b)34 b(e)604 b(compiled)g(with)h(a)f(sp)34
+b(eci\014c)603 b(engine.)2000 48352 y(Notable)412 b(examples)f(are)g(`)
+p Fu(fontspec)p FC(')j(and)f(`)p Fu(polyglossia)p FC(')i(pac)-34
+b(k)-67 b(ages,)413 b(whic)-34 b(h)412 b(require)f(LuaT)46053
+48613 y(E)46726 48352 y(X)h(and)2000 49813 y(XeT)4121
+50074 y(E)4795 49813 y(X)353 b(engines.)521 b(If)353
+b(y)-34 b(ou)353 b(try)g(to)g(compile)g(a)g(do)34 b(cumen)-34
+b(t)354 b(whic)-34 b(h)354 b(loads)f(one)g(of)g(suc)-34
+b(h)354 b(pac)-34 b(k)-67 b(ages)353 b(and)g(the)2000
+51274 y(set)449 b(engine)f(is)g(not)h(one)g(of)g(those)g(allo)-34
+b(w)g(ed)449 b(y)-34 b(ou)449 b(will)f(b)34 b(e)448 b(ask)-34
+b(ed)449 b(to)g(select)f(a)g(di\013eren)-34 b(t)449 b(engine)f(b)34
+b(efore)2000 52736 y(running)387 b(the)f(L)8888 52579
+y Fv(a)9449 52736 y FC(T)10122 52997 y(E)10795 52736
+y(X)g(command.)533 b(If)386 b(y)-34 b(ou)386 b(do)g(not)g(w)-34
+b(an)g(t)388 b(to)e(b)34 b(e)385 b(w)-34 b(arned)387
+b(b)-34 b(y)386 b(A)-34 b(UCT)40573 52997 y(E)41247 52736
+y(X)386 b(in)g(these)g(cases,)2000 54197 y(customize)404
+b(the)h(option)g Fu(TeX-check-engine)p FC(.)42818 56455
+y([User)f(Option])-48000 b Fm(TeX-check-engine)5200 57916
+y FC(This)446 b(b)34 b(o)g(olean)444 b(option)i(con)-34
+b(trols)446 b(whether)f(A)-34 b(UCT)28992 58177 y(E)29667
+57916 y(X)445 b(should)h(c)-34 b(hec)g(k)445 b(the)g(correct)f(engine)h
+(has)5200 59377 y(b)34 b(een)404 b(set)g(b)34 b(efore)404
+b(running)h(L)18431 59220 y Fv(a)18992 59377 y FC(T)19665
+59638 y(E)20339 59377 y(X)f(commands.)3660 61636 y(As)326
+b(sho)-34 b(wn)327 b(ab)34 b(o)-34 b(v)g(e,)341 b(A)-34
+b(UCT)16011 61896 y(E)16686 61636 y(X)325 b(handles)i(in)e(a)g(sp)34
+b(ecial)325 b(w)-34 b(a)g(y)326 b(most)g(of)g(the)g(main)g(options)g
+(that)h(can)e(b)34 b(e)2000 63097 y(giv)-34 b(en)337
+b(to)g(the)g(T)9205 63358 y(E)9879 63097 y(X)f(pro)34
+b(cessors.)516 b(When)337 b(y)-34 b(ou)337 b(need)g(to)g(pass)g(to)g
+(the)g(T)33902 63358 y(E)34576 63097 y(X)g(pro)34 b(cessor)336
+b(arbitrary)g(options)2000 64558 y(not)370 b(handled)g(b)-34
+b(y)370 b(A)-34 b(UCT)13645 64819 y(E)14320 64558 y(X,)375
+b(y)-34 b(ou)370 b(can)f(use)h(the)f(\014le)g(lo)34 b(cal)368
+b(v)-67 b(ariable)368 b Fu(TeX-command-extra-options)p
+FC(.)42818 66816 y([User)404 b(Option])-48000 b Fm
+(TeX-command-extra-options)5200 68277 y FC(String)428
+b(with)g(the)g(extra)f(options)i(to)f(b)34 b(e)427 b(giv)-34
+b(en)427 b(to)h(the)g(T)-101 b(eX)427 b(pro)34 b(cessor.)608
+b(F)-101 b(or)428 b(example,)k(if)427 b(y)-34 b(ou)5200
+69738 y(need)380 b(to)g(enable)g(the)g(shell)g(escap)34
+b(e)379 b(feature)h(to)g(compile)g(a)f(do)34 b(cumen)-34
+b(t,)386 b(add)381 b(the)f(follo)-34 b(wing)380 b(line)5200
+71200 y(to)404 b(the)h(list)f(of)g(lo)34 b(cal)403 b(v)-67
+b(ariables)403 b(of)i(the)f(source)g(\014le:)p eop end
+%%Page: 60 65
+TeXDict begin 60 64 bop 2000 -1550 a FC(Chapter)405 b(4:)539
+b(Starting)405 b(Pro)34 b(cessors,)403 b(View)-34 b(ers)403
+b(and)i(Other)f(Programs)14135 b(60)8400 3985 y Fu(\045\045\045)637
+b(TeX-command-extra-options:)646 b("-shell-escape")5200
+5816 y FC(By)472 b(default)i(this)g(option)g(is)f(not)g(safe)h(as)f(a)g
+(\014le-lo)34 b(cal)472 b(v)-67 b(ariable)471 b(b)34
+b(ecause)473 b(a)g(sp)34 b(ecially)472 b(crafted)5200
+7278 y(do)34 b(cumen)-34 b(t)405 b(compiled)f(with)h(shell)f(escap)34
+b(e)403 b(enabled)i(can)f(b)34 b(e)404 b(used)g(for)h(malicious)e(purp)
+34 b(oses.)3660 9811 y(Y)-101 b(ou)405 b(can)f(customize)g(A)-34
+b(UCT)17302 10072 y(E)17977 9811 y(X)404 b(to)h(sho)-34
+b(w)405 b(the)f(pro)34 b(cessor)404 b(output)i(as)e(it)g(is)g(pro)34
+b(duced.)42818 12345 y([User)404 b(Option])-48000 b Fm
+(TeX-show-compilation)5200 13806 y FC(If)404 b(non-nil,)h(the)f(output)
+i(of)f(T)18971 14067 y(E)19644 13806 y(X)f(compilation)h(is)f(sho)-34
+b(wn)405 b(in)g(another)f(windo)-34 b(w.)3660 16339 y(Y)-101
+b(ou)450 b(can)e(instruct)i(T)13703 16600 y(E)14376 16339
+y(X)f(to)g(prin)-34 b(t)450 b(error)d(messages)i(in)f(the)h(form)g(`)p
+Fu(file:line:error)p FC(')454 b(whic)-34 b(h)449 b(is)2000
+17800 y(similar)403 b(to)i(the)f(w)-34 b(a)g(y)405 b(man)-34
+b(y)405 b(compilers)e(format)i(them.)42818 20334 y([User)f(Option])
+-48000 b Fm(TeX-file-line-error)5200 21795 y FC(If)404
+b(non-nil,)h(T)11530 22056 y(E)12203 21795 y(X)f(will)g(pro)34
+b(duce)404 b(`)p Fu(file:line:error)p FC(')409 b(st)-34
+b(yle)404 b(error)f(messages.)3660 24329 y(ConT)6487
+24590 y(E)7162 24329 y(Xt)360 b(users)g(can)g(c)-34 b(ho)34
+b(ose)359 b(b)34 b(et)-34 b(w)g(een)361 b(Mark)e(I)34
+b(I)359 b(and)h(Mark)f(IV)h(v)-34 b(ersions.)523 b(This)360
+b(is)g(con)-34 b(trolled)360 b(b)-34 b(y)2000 25790 y
+Fu(ConTeXt-Mark-version)411 b FC(option.)42818 28323
+y([User)404 b(Option])-48000 b Fm(ConTeXt-Mark-version)5200
+29785 y FC(This)412 b(v)-67 b(ariables)411 b(sp)34 b(eci\014es)412
+b(whic)-34 b(h)413 b(v)-34 b(ersion)411 b(of)i(Mark)e(should)i(b)34
+b(e)412 b(used.)562 b(V)-101 b(alues)412 b(curren)-34
+b(tly)412 b(sup-)5200 31246 y(p)34 b(orted)482 b(are)e
+Fu("II")p FC(,)502 b(the)482 b(default,)501 b(and)482
+b Fu("IV")p FC(.)772 b(It)481 b(can)h(b)34 b(e)481 b(set)h(globally)e
+(using)i(customization)5200 32707 y(in)-34 b(terface)404
+b(or)g(on)g(a)h(p)34 b(er-\014le)403 b(basis,)h(b)-34
+b(y)405 b(sp)34 b(ecifying)403 b(it)h(as)h(a)f(\014le)g(v)-67
+b(ariable.)2000 35974 y FB(4.2)896 b(Viewing)598 b(the)h(F)-149
+b(ormatted)599 b(Output)2000 38100 y FC(A)-34 b(UCT)5332
+38361 y(E)6007 38100 y(X)327 b(allo)-34 b(ws)327 b(y)-34
+b(ou)327 b(to)h(start)f(external)f(programs)i(for)f(previewing)f(the)h
+(formatted)i(output)f(of)g(y)-34 b(our)2000 39561 y(do)34
+b(cumen)-34 b(t.)2000 42256 y Fq(4.2.1)818 b(Starting)547
+b(View)-45 b(ers)2000 44215 y FC(View)-34 b(ers)428 b(are)g(normally)g
+(in)-34 b(v)g(ok)g(ed)430 b(b)-34 b(y)429 b(pressing)f
+Fs(C-c)405 b(C-c)430 b FC(once)e(the)h(do)34 b(cumen)-34
+b(t)430 b(is)e(formatted,)436 b(whic)-34 b(h)2000 45676
+y(will)480 b(prop)34 b(ose)481 b(the)h(`)p Fu(View)p
+FC(')f(command,)501 b(or)480 b(b)-34 b(y)482 b(activ)-67
+b(ating)480 b(the)h(resp)34 b(ectiv)-34 b(e)480 b(en)-34
+b(try)481 b(in)g(the)g(Command)2000 47137 y(men)-34 b(u.)539
+b(Alternativ)-34 b(ely)404 b(y)-34 b(ou)404 b(can)h(t)-34
+b(yp)34 b(e)404 b Fs(C-c)h(C-v)g FC(whic)-34 b(h)405
+b(calls)e(the)i(function)g Fu(TeX-view)p FC(.)43872 49671
+y([Command])-47999 b Fm(TeX-view)5200 51132 y FC(\()p
+Fs(C-c)405 b(C-v)p FC(\))546 b(Start)f(a)f(view)-34 b(er)543
+b(without)j(con\014rmation.)959 b(The)544 b(view)-34
+b(er)543 b(is)h(started)h(either)f(on)g(a)5200 52593
+y(region)456 b(or)h(the)g(master)g(\014le,)469 b(dep)34
+b(ending)458 b(on)f(the)g(last)g(command)h(issued.)697
+b(This)457 b(is)g(esp)34 b(ecially)5200 54054 y(useful)473
+b(for)h(jumping)g(to)f(the)g(lo)34 b(cation)473 b(corresp)34
+b(onding)473 b(to)g(p)34 b(oin)-34 b(t)474 b(in)f(the)g(view)-34
+b(er)473 b(when)g(using)5200 55515 y Fu(TeX-source-correlate-mode)p
+FC(.)3660 58049 y(A)-34 b(UCT)6992 58310 y(E)7667 58049
+y(X)355 b(will)f(try)g(to)h(guess)f(whic)-34 b(h)356
+b(t)-34 b(yp)34 b(e)354 b(of)h(view)-34 b(er)354 b(\()p
+Fr(D)-31 b(VI)p FC(,)364 b(P)-34 b(ostScript)356 b(or)e
+Fr(PDF)p FC(\))g(has)h(to)g(b)34 b(e)354 b(used)2000
+59510 y(and)504 b(what)g(options)g(are)e(to)i(b)34 b(e)503
+b(passed)g(o)-34 b(v)g(er)503 b(to)g(it.)836 b(This)503
+b(decision)g(is)g(based)g(on)h(the)f(output)i(\014les)2000
+60971 y(presen)-34 b(t)339 b(in)f(the)g(w)-34 b(orking)339
+b(directory)e(as)h(w)-34 b(ell)338 b(as)g(the)g(class)g(and)h(st)-34
+b(yle)338 b(options)h(used)g(in)f(the)g(do)34 b(cumen)-34
+b(t.)2000 62433 y(F)-101 b(or)417 b(example,)i(if)f(there)e(is)h(a)g
+Fr(D)-31 b(VI)417 b FC(\014le)g(in)g(y)-34 b(our)417
+b(w)-34 b(orking)418 b(directory)-101 b(,)419 b(a)e Fr(D)-31
+b(VI)417 b FC(view)-34 b(er)416 b(will)h(b)34 b(e)417
+b(in)-34 b(v)g(ok)g(ed.)2000 63894 y(In)462 b(case)f(of)g(a)h
+Fr(PDF)f FC(\014le)g(it)h(will)f(b)34 b(e)461 b(a)g Fr(PDF)g
+FC(view)-34 b(er.)710 b(If)462 b(y)-34 b(ou)462 b(sp)34
+b(eci\014ed)461 b(a)h(sp)34 b(ecial)460 b(pap)34 b(er)462
+b(format)g(lik)-34 b(e)2000 65355 y(`)p Fu(a5paper)p
+FC(')304 b(or)d(use)h(the)g(`)p Fu(landscape)p FC(')i(option,)323
+b(this)303 b(will)e(b)34 b(e)301 b(passed)i(to)f(the)g(view)-34
+b(er)301 b(b)-34 b(y)302 b(the)g(appropriate)2000 66816
+y(options.)517 b(Esp)34 b(ecially)333 b(some)j Fr(D)-31
+b(VI)335 b FC(view)-34 b(ers)334 b(dep)34 b(end)336 b(on)g(this)g(kind)
+g(of)f(information)i(in)e(order)g(to)h(displa)-34 b(y)2000
+68277 y(y)g(our)433 b(do)34 b(cumen)-34 b(t)435 b(correctly)-101
+b(.)624 b(In)434 b(case)f(y)-34 b(ou)433 b(are)g(using)h(`)p
+Fu(pstricks)p FC(')h(or)f(`)p Fu(psfrag)p FC(')g(in)g(y)-34
+b(our)433 b(do)34 b(cumen)-34 b(t,)2000 69738 y(a)388
+b Fr(D)-31 b(VI)388 b FC(view)-34 b(er)387 b(cannot)i(displa)-34
+b(y)388 b(the)g(con)-34 b(ten)g(ts)390 b(correctly)c(and)j(a)f(P)-34
+b(ostScript)389 b(view)-34 b(er)387 b(will)h(b)34 b(e)387
+b(in)-34 b(v)g(ok)g(ed)2000 71200 y(instead.)p eop end
+%%Page: 61 66
+TeXDict begin 61 65 bop 2000 -1550 a FC(Chapter)405 b(4:)539
+b(Starting)405 b(Pro)34 b(cessors,)403 b(View)-34 b(ers)403
+b(and)i(Other)f(Programs)14135 b(61)3660 3985 y(The)365
+b(asso)34 b(ciation)365 b(b)34 b(et)-34 b(w)g(een)365
+b(the)g(tests)g(for)g(the)g(conditions)g(men)-34 b(tioned)366
+b(ab)34 b(o)-34 b(v)g(e)364 b(and)h(the)g(view)-34 b(ers)364
+b(is)2000 5446 y(made)347 b(in)g(the)g(v)-67 b(ariable)345
+b Fu(TeX-view-program-selection)p FC(.)529 b(Therefore)347
+b(this)g(v)-67 b(ariable)345 b(is)i(the)g(starting)2000
+6907 y(p)34 b(oin)-34 b(t)345 b(for)e(customization)i(if)f(y)-34
+b(ou)344 b(w)-34 b(an)g(t)345 b(to)f(use)g(other)g(view)-34
+b(ers)343 b(than)i(the)g(ones)f(suggested)g(b)-34 b(y)344
+b(default.)42818 9569 y([User)404 b(Option])-48000 b
+Fm(TeX-view-program-selection)5200 11030 y FC(This)295
+b(is)g(a)f(list)h(of)g(predicates)g(and)g(view)-34 b(ers)294
+b(whic)-34 b(h)296 b(is)e(ev)-67 b(aluated)295 b(from)g(fron)-34
+b(t)296 b(to)f(bac)-34 b(k)295 b(in)f(order)h(to)5200
+12492 y(\014nd)275 b(out)f(whic)-34 b(h)275 b(view)-34
+b(er)273 b(to)h(call)f(under)i(the)f(giv)-34 b(en)274
+b(conditions.)496 b(In)274 b(the)g(\014rst)g(elemen)-34
+b(t)274 b(of)g(eac)-34 b(h)274 b(list)5200 13953 y(item)378
+b(y)-34 b(ou)378 b(can)g(reference)e(one)i(or)f(more)h(predicates)f
+(de\014ned)i(in)f Fu(TeX-view-predicate-list)5200 15414
+y FC(or)556 b Fu(TeX-view-predicate-list-builtin)p FC(.)1006
+b(In)556 b(the)g(second)h(elemen)-34 b(t)556 b(y)-34
+b(ou)557 b(can)f(reference)5200 16875 y(a)468 b(view)-34
+b(er)467 b(de\014ned)i(in)f Fu(TeX-view-program-list)475
+b FC(or)468 b Fu(TeX-view-program-list-builtin)p FC(.)5200
+18336 y(The)405 b(view)-34 b(er)403 b(of)h(the)h(\014rst)g(item)f(with)
+h(a)f(p)34 b(ositiv)-34 b(ely)403 b(ev)-67 b(aluated)404
+b(predicate)g(is)g(selected.)3660 20998 y(So)654 b Fu
+(TeX-view-program-selection)663 b FC(only)654 b(con)-34
+b(tains)655 b(references)d(to)i(the)g(actual)g(implemen-)2000
+22459 y(tations)589 b(of)g(predicates)f(and)i(view)-34
+b(er)587 b(commands)j(resp)34 b(ectiv)-34 b(ely)586 b(whic)-34
+b(h)590 b(can)e(b)34 b(e)588 b(found)i(elsewhere.)2000
+23921 y(A)-34 b(UCT)5332 24181 y(E)6007 23921 y(X)534
+b(comes)f(with)i(a)f(set)g(of)h(precon\014gured)g(predicates)e(and)i
+(view)-34 b(er)534 b(commands)h(whic)-34 b(h)534 b(are)2000
+25382 y(stored)294 b(in)g(the)g(v)-67 b(ariables)292
+b Fu(TeX-view-predicate-list-builtin)305 b FC(and)294
+b Fu(TeX-view-program-list-)2000 26843 y(builtin)372
+b FC(resp)34 b(ectiv)-34 b(ely)-101 b(.)525 b(If)369
+b(y)-34 b(ou)369 b(are)g(not)h(satis\014ed)g(with)g(those)f(and)h(w)-34
+b(an)g(t)371 b(to)f(o)-34 b(v)g(erwrite)369 b(one)g(of)g(them)2000
+28304 y(or)506 b(add)g(y)-34 b(our)506 b(o)-34 b(wn)507
+b(de\014nitions,)532 b(y)-34 b(ou)507 b(can)f(do)g(so)g(via)f(the)h(v)
+-67 b(ariables)505 b Fu(TeX-view-predicate-list)2000
+29765 y FC(and)405 b Fu(TeX-view-program-list)p FC(.)42818
+32427 y([User)f(Option])-48000 b Fm(TeX-view-predicate-list)5200
+33888 y FC(This)466 b(is)e(a)h(list)g(of)h(predicates)f(for)g(view)-34
+b(er)464 b(selection)h(and)h(in)-34 b(v)g(o)34 b(cation.)721
+b(The)466 b(\014rst)g(elemen)-34 b(t)465 b(of)5200 35349
+y(eac)-34 b(h)428 b(list)h(item)f(is)g(a)g(sym)-34 b(b)34
+b(ol)429 b(and)g(the)g(second)f(elemen)-34 b(t)429 b(a)f(Lisp)g(form)h
+(to)f(b)34 b(e)428 b(ev)-67 b(aluated.)611 b(The)5200
+36811 y(form)404 b(should)h(return)g(nil)f(if)g(the)g(predicate)g(is)g
+(not)h(ful\014lled.)5200 38706 y(A)321 b(built-in)h(predicate)f(from)g
+Fu(TeX-view-predicate-list-builtin)332 b FC(can)321 b(b)34
+b(e)321 b(o)-34 b(v)g(erwritten)322 b(b)-34 b(y)5200
+40167 y(de\014ning)405 b(a)f(new)h(predicate)f(with)h(the)f(same)g(sym)
+-34 b(b)34 b(ol.)42818 42829 y([User)404 b(Option])-48000
+b Fm(TeX-view-program-list)5200 44290 y FC(This)395 b(is)f(a)h(list)f
+(of)h(view)-34 b(er)394 b(sp)34 b(eci\014cations)395
+b(eac)-34 b(h)395 b(consisting)g(of)g(a)f(sym)-34 b(b)34
+b(olic)395 b(name)f(and)i(either)e(a)5200 45752 y(command)447
+b(line)e(or)h(a)g(function)h(to)g(b)34 b(e)446 b(in)-34
+b(v)g(ok)g(ed)446 b(when)h(the)g(view)-34 b(er)445 b(is)h(called.)663
+b(If)446 b(a)g(command)5200 47213 y(line)368 b(is)g(used,)376
+b(parts)369 b(of)g(it)f(can)g(b)34 b(e)369 b(conditionalized)f(b)-34
+b(y)369 b(pre\014xing)f(them)h(with)g(predicates)g(from)5200
+48674 y Fu(TeX-view-predicate-list)570 b FC(or)562 b
+Fu(TeX-view-predicate-list-builtin)p FC(.)1024 b(\(See)562
+b(the)h(do)34 b(c)5200 50135 y(string)407 b(for)h(the)f(exact)g(format)
+h(to)f(use.\))549 b(The)407 b(command)h(line)f(can)g(also)g(con)-34
+b(tain)408 b(placeholders)5200 51596 y(as)388 b(de\014ned)g(in)g
+Fu(TeX-expand-list)393 b FC(and)388 b Fu(TeX-expand-list-builtin)396
+b FC(whic)-34 b(h)388 b(are)f(expanded)5200 53057 y(b)34
+b(efore)404 b(the)g(view)-34 b(er)404 b(is)f(called.)5200
+54953 y(The)438 b(third)f(elemen)-34 b(t)437 b(of)h(eac)-34
+b(h)437 b(item)g(is)g(a)g(string,)446 b(or)437 b(a)g(list)g(of)g
+(strings,)446 b(with)438 b(the)g(name)f(of)g(the)5200
+56414 y(executable,)360 b(or)349 b(executables,)360 b(needed)350
+b(to)h(op)34 b(en)349 b(the)i(output)g(\014le)f(in)g(the)g(view)-34
+b(er.)520 b(Placeholders)5200 57875 y(de\014ned)376 b(in)g
+Fu(TeX-expand-list)k FC(and)c Fu(TeX-expand-list-builtin)384
+b FC(can)375 b(b)34 b(e)375 b(used)h(here.)528 b(This)5200
+59336 y(elemen)-34 b(t)454 b(is)f(optional)h(and)g(is)g(used)g(to)g(c)
+-34 b(hec)g(k)453 b(whether)i(the)f(view)-34 b(er)452
+b(is)i(actually)f(a)-34 b(v)-67 b(ailable)453 b(on)5200
+60798 y(the)404 b(system.)5200 62693 y(A)340 b(built-in)h(view)-34
+b(er)339 b(sp)34 b(ec)340 b(from)g Fu(TeX-view-program-list-builtin)350
+b FC(can)340 b(b)34 b(e)340 b(o)-34 b(v)g(erwritten)341
+b(b)-34 b(y)5200 64154 y(de\014ning)405 b(a)f(new)h(view)-34
+b(er)403 b(sp)34 b(ec)404 b(with)h(the)f(same)g(name.)3660
+66816 y(After)i(the)f(view)-34 b(er)404 b(is)h(called)f(via)h(either)f
+(the)i(`)p Fu(View)p FC(')f(command)h(or)f(the)g(k)-34
+b(ey)405 b(strok)-34 b(e)405 b Fs(C-c)g(C-v)p FC(,)g(the)2000
+68277 y(windo)-34 b(w)302 b(system)f(fo)34 b(cus)300
+b(go)34 b(es)300 b(and)h(sta)-34 b(ys)302 b(on)e(the)h(view)-34
+b(er.)503 b(If)301 b(y)-34 b(ou)301 b(prefer)f(that)h(the)g(fo)34
+b(cus)301 b(is)f(pulled)h(bac)-34 b(k)2000 69738 y(to)334
+b(Emacs)f(immediately)f(after)i(that)h(and)f(y)-34 b(ou)333
+b(are)g(using)h(evince-compatible)f(view)-34 b(er,)346
+b(customize)333 b(the)2000 71200 y(option)405 b Fu
+(TeX-view-enince-keep-focus)p FC(.)p eop end
+%%Page: 62 67
+TeXDict begin 62 66 bop 2000 -1550 a FC(Chapter)405 b(4:)539
+b(Starting)405 b(Pro)34 b(cessors,)403 b(View)-34 b(ers)403
+b(and)i(Other)f(Programs)14135 b(62)42818 3985 y([User)404
+b(Option])-48000 b Fm(TeX-view-evince-keep-focus)5200
+5446 y FC(When)502 b(this)h(option)g(is)f(non-nil)g(and)h(the)g(view)
+-34 b(er)501 b(is)h(compatible)g(with)h(evince,)525 b(the)503
+b(fo)34 b(cus)502 b(is)5200 6907 y(pulled)316 b(bac)-34
+b(k)316 b(to)g(Emacs)f(immediately)g(after)h(the)g(view)-34
+b(er)315 b(is)h(in)-34 b(v)g(ok)g(ed)316 b(or)g(refreshed)f(from)h
+(within)5200 8369 y(A)-34 b(UCT)8532 8630 y(E)9207 8369
+y(X.)3660 11078 y(Note)321 b(that)h(the)f(view)-34 b(er)320
+b(selection)g(and)h(in)-34 b(v)g(o)34 b(cation)322 b(as)e(describ)34
+b(ed)320 b(ab)34 b(o)-34 b(v)g(e)321 b(will)f(only)h(w)-34
+b(ork)321 b(if)f(certain)2000 12539 y(default)571 b(settings)f(in)g(A)
+-34 b(UCT)15775 12800 y(E)16450 12539 y(X)569 b(are)h(in)-34
+b(tact.)1036 b(F)-101 b(or)570 b(one,)611 b(the)570 b(whole)g(view)-34
+b(er)569 b(selection)g(mac)-34 b(hinery)2000 14000 y(will)538
+b(only)g(b)34 b(e)538 b(triggered)f(if)h(there)h(is)f(no)g(`)p
+Fu(\045V)p FC(')g(expander)h(in)f Fu(TeX-expand-list)p
+FC(.)946 b(So)539 b(if)f(y)-34 b(ou)538 b(ha)-34 b(v)g(e)2000
+15461 y(trouble)361 b(with)h(the)g(view)-34 b(er)360
+b(in)-34 b(v)g(o)34 b(cation)361 b(y)-34 b(ou)362 b(migh)-34
+b(t)362 b(c)-34 b(hec)g(k)361 b(if)g(there)g(is)f(an)i(older)e
+(customization)i(of)f(the)2000 16922 y(v)-67 b(ariable)373
+b(in)g(place.)528 b(In)374 b(addition,)381 b(the)374
+b(use)g(of)h(a)e(function)j(in)e Fu(TeX-view-program-list)381
+b FC(only)374 b(w)-34 b(orks)2000 18383 y(if)349 b(the)h(`)p
+Fu(View)p FC(')g(command)g(in)g Fu(TeX-command-list)355
+b FC(mak)-34 b(es)349 b(use)h(of)f(the)h(ho)34 b(ok)349
+b Fu(TeX-run-discard-or-)2000 19845 y(function)p FC(.)2000
+22627 y Fq(4.2.2)818 b(F)-136 b(orw)-45 b(ard)545 b(and)h(In)-45
+b(v)g(erse)545 b(Searc)-45 b(h)2000 24586 y FC(F)-101
+b(orw)-34 b(ard)526 b(and)f(in)-34 b(v)g(erse)525 b(searc)-34
+b(h)525 b(refer)f(to)h(the)g(correlation)f(b)34 b(et)-34
+b(w)g(een)526 b(the)f(do)34 b(cumen)-34 b(t)526 b(source)f(in)f(the)
+2000 26048 y(editor)426 b(and)h(the)f(t)-34 b(yp)34 b(eset)426
+b(do)34 b(cumen)-34 b(t)427 b(in)f(the)g(view)-34 b(er.)604
+b(F)-101 b(orw)-34 b(ard)426 b(searc)-34 b(h)426 b(allo)-34
+b(ws)427 b(y)-34 b(ou)426 b(to)g(jump)h(to)f(the)2000
+27509 y(place)491 b(in)g(the)h(preview)-34 b(ed)491 b(do)34
+b(cumen)-34 b(t)493 b(corresp)34 b(onding)491 b(to)h(a)g(certain)f
+(line)f(in)i(the)g(do)34 b(cumen)-34 b(t)492 b(source)2000
+28970 y(and)405 b(in)-34 b(v)g(erse)404 b(searc)-34 b(h)404
+b(vice)f(v)-34 b(ersa.)3660 30889 y(A)g(UCT)6992 31150
+y(E)7667 30889 y(X)435 b(supp)34 b(orts)436 b(three)e(metho)34
+b(ds)436 b(for)e(forw)-34 b(ard)436 b(and)g(in)-34 b(v)g(erse)434
+b(searc)-34 b(h:)600 b(source)434 b(sp)34 b(ecials)434
+b(\(only)2000 32350 y Fr(D)-31 b(VI)542 b FC(output\),)580
+b(the)543 b(p)34 b(dfsync)543 b(L)16713 32193 y Fv(a)17274
+32350 y FC(T)17947 32611 y(E)18621 32350 y(X)f(pac)-34
+b(k)-67 b(age)542 b(\(only)h Fr(PDF)f FC(output\))j(and)f(SyncT)41133
+32611 y(E)41807 32350 y(X)e(\(an)-34 b(y)544 b(t)-34
+b(yp)34 b(e)543 b(of)2000 33811 y(output\).)611 b(If)427
+b(y)-34 b(ou)428 b(w)-34 b(an)g(t)430 b(to)e(mak)-34
+b(e)427 b(use)h(of)f(forw)-34 b(ard)429 b(and)f(in)-34
+b(v)g(erse)427 b(searc)-34 b(hing)428 b(with)g(source)g(sp)34
+b(ecials)426 b(or)2000 35272 y(SyncT)5198 35533 y(E)5872
+35272 y(X,)443 b(switc)-34 b(h)437 b(on)f Fu(TeX-source-correlate-mode)
+p FC(.)642 b(See)435 b(Section)h(4.1.3)g([Pro)34 b(cessor)434
+b(Options],)2000 36734 y(page)474 b(57,)492 b(on)474
+b(ho)-34 b(w)476 b(to)e(do)h(that.)750 b(The)475 b(use)f(of)h(the)f(p)
+34 b(dfsync)475 b(pac)-34 b(k)-67 b(age)474 b(is)g(detected)h
+(automatically)f(if)2000 38195 y(do)34 b(cumen)-34 b(t)484
+b(parsing)g(is)f(enabled.)776 b(Customize)484 b(the)g(v)-67
+b(ariable)482 b Fu(TeX-source-correlate-method)493 b
+FC(to)2000 39656 y(select)403 b(the)i(metho)34 b(d)405
+b(to)f(use.)42818 42365 y([User)g(Option])-48000 b Fm
+(TeX-source-correlate-method)5200 43826 y FC(Metho)34
+b(d)1081 b(to)h(use)e(for)h(enabling)h(forw)-34 b(ard)1081
+b(and)h(in)-34 b(v)g(erse)1080 b(searc)-34 b(h.)2569
+b(This)1081 b(can)g(b)34 b(e)5200 45287 y(`)p Fu(source-specials)p
+FC(')512 b(if)c(source)f(sp)34 b(ecials)506 b(should)j(b)34
+b(e)507 b(used,)534 b(`)p Fu(synctex)p FC(')509 b(if)e(SyncT)44468
+45548 y(E)45142 45287 y(X)h(should)5200 46748 y(b)34
+b(e)404 b(used,)g(or)g(`)p Fu(auto)p FC(')h(if)f(A)-34
+b(UCT)19505 47009 y(E)20180 46748 y(X)404 b(should)h(decide.)5200
+48667 y(When)422 b(the)g(v)-67 b(ariable)421 b(is)g(set)h(to)g(`)p
+Fu(auto)p FC(',)427 b(A)-34 b(UCT)27384 48928 y(E)28058
+48667 y(X)422 b(will)f(alw)-34 b(a)g(ys)423 b(use)f(SyncT)40903
+48928 y(E)41577 48667 y(X)g(if)f(y)-34 b(our)422 b Fu(latex)5200
+50129 y FC(pro)34 b(cessor)525 b(supp)34 b(orts)526 b(it,)556
+b(source)525 b(sp)34 b(ecials)525 b(otherwise.)903 b(Y)-101
+b(ou)525 b(m)-34 b(ust)527 b(mak)-34 b(e)526 b(sure)f(y)-34
+b(our)526 b(view)-34 b(er)5200 51590 y(supp)34 b(orts)405
+b(the)g(same)f(metho)34 b(d.)5200 53509 y(It)417 b(is)h(also)f(p)34
+b(ossible)417 b(to)h(sp)34 b(ecify)417 b(a)g(di\013eren)-34
+b(t)418 b(metho)34 b(d)418 b(dep)34 b(ending)418 b(on)g(the)g(output,)k
+(either)417 b Fr(D)-31 b(VI)5200 54970 y FC(or)404 b
+Fr(PDF)p FC(,)f(b)-34 b(y)405 b(setting)f(the)h(v)-67
+b(ariable)403 b(to)h(an)h(alist)f(of)g(the)h(kind)8400
+56889 y Fu(\(\(dvi)638 b(.)f(`<source-specials)642 b(or)637
+b(synctex>'\))9036 58350 y(\(pdf)h(.)f(`<source-specials)642
+b(or)637 b(synctex>'\)\))5200 60269 y FC(in)401 b(whic)-34
+b(h)403 b(the)f(CDR)g(of)f(eac)-34 b(h)402 b(en)-34 b(try)402
+b(is)f(a)g(sym)-34 b(b)34 b(ol)402 b(sp)34 b(ecifying)401
+b(the)h(metho)34 b(d)402 b(to)g(b)34 b(e)401 b(used)h(in)f(the)5200
+61730 y(corresp)34 b(onding)404 b(mo)34 b(de.)539 b(The)404
+b(default)h(v)-67 b(alue)404 b(of)g(the)h(v)-67 b(ariable)402
+b(is)8400 63649 y Fu(\(\(dvi)638 b(.)f(source-specials\))9036
+65111 y(\(pdf)h(.)f(synctex\)\))5200 67030 y FC(whic)-34
+b(h)405 b(is)f(compatible)g(with)h(the)g(ma)67 b(jorit)-34
+b(y)404 b(of)h(view)-34 b(ers.)3660 69738 y(F)-101 b(orw)-34
+b(ard)449 b(searc)-34 b(h)448 b(happ)34 b(ens)449 b(automatically)f(up)
+34 b(on)448 b(calling)f(the)h(view)-34 b(er,)458 b(e.g.)447
+b(b)-34 b(y)448 b(t)-34 b(yping)449 b Fs(C-c)405 b(C-v)2000
+71200 y FC(\()p Fu(TeX-view)p FC(\).)890 b(This)521 b(will)f(op)34
+b(en)520 b(the)h(view)-34 b(er)519 b(or)h(bring)g(it)h(to)f(fron)-34
+b(t)521 b(and)g(displa)-34 b(y)521 b(the)g(output)h(page)p
+eop end
+%%Page: 63 68
+TeXDict begin 63 67 bop 2000 -1550 a FC(Chapter)405 b(4:)539
+b(Starting)405 b(Pro)34 b(cessors,)403 b(View)-34 b(ers)403
+b(and)i(Other)f(Programs)14135 b(63)2000 3985 y(corresp)34
+b(onding)427 b(to)h(the)g(p)34 b(osition)427 b(of)h(p)34
+b(oin)-34 b(t)428 b(in)f(the)h(source)f(\014le.)607 b(A)-34
+b(UCT)35774 4246 y(E)36449 3985 y(X)427 b(will)g(automatically)g(pass)
+2000 5446 y(the)405 b(necessary)e(command)i(line)e(options)j(to)e(the)h
+(view)-34 b(er)403 b(for)h(this)h(to)f(happ)34 b(en.)3660
+7239 y(Y)-101 b(ou)457 b(can)g(also)f(mak)-34 b(e)456
+b(sp)34 b(ecial)455 b(mouse)i(ev)-34 b(en)g(t)457 b(do)f(forw)-34
+b(ard)458 b(searc)-34 b(h)456 b(at)g(the)h(clic)-34 b(k)g(ed)456
+b(p)34 b(osition.)695 b(Use)2000 8700 y Fu(TeX-source-correlate-map)
+17264 8260 y Fl(1)18173 8700 y FC(and)405 b Fu(TeX-view-mouse)k
+FC(lik)-34 b(e)403 b(this:)5200 10493 y Fu(\(eval-after-load)642
+b("tex")6473 11954 y('\(define-key)e(TeX-source-correlate-map)645
+b([C-down-mouse-1])14745 13415 y(#'TeX-view-mouse\)\))3660
+15208 y FC(This)595 b(example)f(binds)h Fs(C-down-mouse-1)p
+FC(,)646 b(whic)-34 b(h)595 b(usually)f(op)34 b(ens)595
+b(a)f(concise)f(men)-34 b(u)595 b(to)g(select)2000 16670
+y(bu\013er,)404 b(to)h(the)f(command)h(to)f(do)h(forw)-34
+b(ard)405 b(searc)-34 b(h.)3660 18462 y(Up)34 b(on)326
+b(op)34 b(ening)325 b(the)g(view)-34 b(er)324 b(y)-34
+b(ou)325 b(will)f(b)34 b(e)324 b(ask)-34 b(ed)325 b(if)g(y)-34
+b(ou)325 b(w)-34 b(an)g(t)326 b(to)f(start)h(a)e(serv)-34
+b(er)324 b(pro)34 b(cess)324 b(\(Gn)-34 b(userv)2000
+19924 y(or)285 b(Emacs)g(serv)-34 b(er\))285 b(whic)-34
+b(h)286 b(is)f(necessary)g(for)g(in)-34 b(v)g(erse)285
+b(searc)-34 b(h.)499 b(This)286 b(happ)34 b(ens)286 b(only)g(if)f
+(there)g(is)g(no)h(serv)-34 b(er)2000 21385 y(running)504
+b(already)-101 b(.)834 b(Y)-101 b(ou)504 b(can)f(customize)f(the)i(v)
+-67 b(ariable)501 b Fu(TeX-source-correlate-start-server)2000
+22846 y FC(to)404 b(inhibit)h(the)g(question)f(and)h(alw)-34
+b(a)g(ys)405 b(or)f(nev)-34 b(er)404 b(start)g(the)h(serv)-34
+b(er)403 b(resp)34 b(ectiv)-34 b(ely)-101 b(.)42818 25302
+y([User)404 b(Option])-48000 b Fm(TeX-source-correlate-start-server)
+5200 26763 y FC(If)287 b Fu(TeX-source-correlate-mode)296
+b FC(is)287 b(activ)-34 b(e)287 b(and)g(a)g(view)-34
+b(er)287 b(is)g(in)-34 b(v)g(ok)g(ed,)311 b(the)287 b(default)h(b)34
+b(eha)-34 b(vior)5200 28224 y(is)451 b(to)g(ask)f(if)h(a)g(serv)-34
+b(er)450 b(pro)34 b(cess)450 b(should)i(b)34 b(e)451
+b(started.)679 b(Set)451 b(this)h(v)-67 b(ariable)449
+b(to)i Fu(t)g FC(if)g(the)g(question)5200 29686 y(should)331
+b(b)34 b(e)329 b(inhibited)i(and)f(the)h(serv)-34 b(er)329
+b(should)h(alw)-34 b(a)g(ys)331 b(b)34 b(e)329 b(started.)515
+b(Set)330 b(it)g(to)g Fu(nil)h FC(if)f(the)g(serv)-34
+b(er)5200 31147 y(should)405 b(nev)-34 b(er)404 b(b)34
+b(e)404 b(started.)539 b(In)-34 b(v)g(erse)404 b(searc)-34
+b(h)404 b(will)f(not)i(b)34 b(e)404 b(a)-34 b(v)-67 b(ailable)403
+b(in)h(the)h(latter)f(case.)3660 33603 y(In)-34 b(v)g(erse)341
+b(searc)-34 b(h,)354 b(i.e.)340 b(jumping)i(to)g(the)g(part)f(of)h(y)
+-34 b(our)341 b(do)34 b(cumen)-34 b(t)343 b(source)e(in)g(Emacs)g
+(corresp)34 b(onding)2000 35064 y(to)390 b(a)g(certain)g(p)34
+b(osition)390 b(in)g(the)g(view)-34 b(er,)392 b(is)d(triggered)h(from)g
+(the)g(view)-34 b(er,)392 b(t)-34 b(ypically)389 b(b)-34
+b(y)390 b(a)g(mouse)g(clic)-34 b(k.)2000 36525 y(Refer)349
+b(to)h(the)g(do)34 b(cumen)-34 b(tation)352 b(of)e(y)-34
+b(our)350 b(view)-34 b(er)349 b(to)h(\014nd)g(out)h(ho)-34
+b(w)351 b(it)e(has)h(to)g(b)34 b(e)350 b(con\014gured)g(and)h(what)2000
+37986 y(y)-34 b(ou)405 b(ha)-34 b(v)g(e)404 b(to)h(do)f(exactly)-101
+b(.)538 b(In)404 b(xdvi)f(y)-34 b(ou)405 b(normally)e(ha)-34
+b(v)g(e)405 b(to)g(use)f Fs(C-down-mouse-1)p FC(.)3660
+39779 y(Note)557 b(that)g(in)-34 b(v)g(erse)555 b(searc)-34
+b(h)556 b(with)h(the)g(Evince)e Fr(PDF)g FC(view)-34
+b(er)555 b(or)h(its)g(MA)-101 b(TE)556 b(fork)g(A)-34
+b(tril)556 b(migh)-34 b(t)2000 41241 y(fail)481 b(in)g(raising)h(the)f
+(Emacs)g(frame)h(after)f(up)34 b(dating)483 b(p)34 b(oin)-34
+b(t)482 b(in)g(y)-34 b(our)481 b(do)34 b(cumen)-34 b(t's)482
+b(bu\013er.)771 b(There)481 b(is)2000 42702 y(simply)494
+b(no)h(w)-34 b(a)g(y)495 b(to)g(raise)f(the)h(Emacs)f(frame)h(reliably)
+e(accross)h(di\013eren)-34 b(t)495 b(op)34 b(erating)494
+b(systems)h(and)2000 44163 y(di\013eren)-34 b(t)440 b(windo)-34
+b(w)441 b(managers)e(with)h(their)f(di\013eren)-34 b(t)440
+b(fo)34 b(cus)439 b(stealing)h(p)34 b(olicies.)642 b(If)439
+b(the)h(Emacs)f(frame)2000 45624 y(is)359 b(not)h(raised)e(after)i(p)34
+b(erforming)359 b(an)g(in)-34 b(v)g(erse)359 b(searc)-34
+b(h)359 b(from)g(Evince)f(or)h(A)-34 b(tril,)368 b(y)-34
+b(ou)359 b(can)h(customize)e(the)2000 47085 y(follo)-34
+b(wing)405 b(option.)42818 49541 y([User)f(Option])-48000
+b Fm(TeX-raise-frame-function)5200 51003 y FC(A)368 b(function)h(that)g
+(will)e(b)34 b(e)367 b(called)g(after)h(p)34 b(erforming)368
+b(an)g(in)-34 b(v)g(erse)367 b(searc)-34 b(h)368 b(from)g(Evince)f(or)g
+(A)-34 b(tril)5200 52464 y(in)404 b(order)g(to)g(raise)g(the)g(curren)
+-34 b(t)405 b(Emacs)f(frame.)5200 54257 y(If)497 b(y)-34
+b(our)496 b(Emacs)h(frame)f(is)h(already)f(raised)g(in)h(that)h
+(situation,)520 b(just)498 b(lea)-34 b(v)g(e)496 b(this)h(v)-67
+b(ariable)496 b(set)5200 55718 y(to)408 b(its)f(default)h(v)-67
+b(alue)407 b Fu(raise-frame)p FC(.)552 b(Otherwise,)408
+b(here)e(are)h(some)g(alternativ)-34 b(e)408 b(settings)g(that)5200
+57179 y(w)-34 b(ork)404 b(for)h(some)f(users.)8400 58972
+y Fu(;;)637 b FC(Alternativ)-34 b(e)404 b(1:)g(F)-101
+b(or)404 b(some)g(users,)g Fu(`x-focus-frame')409 b FC(w)-34
+b(orks.)8400 60433 y Fu(\(setq)638 b(TeX-raise-frame-function)645
+b(#'x-focus-frame\))8400 63355 y(;;)637 b FC(Alternativ)-34
+b(e)404 b(2:)g(Under)g(GNOME)g(3.20)g(\(and)i(probably)e(others\),)h
+(it)8400 64817 y Fu(;;)637 b FC(seems)404 b(some)g(fo)34
+b(cus)404 b(stealing)g(prev)-34 b(en)g(tion)405 b(p)34
+b(olicy)403 b(prohibits)i(that)8400 66278 y Fu(;;)637
+b FC(some)404 b(windo)-34 b(w)406 b(gets)e(the)h(fo)34
+b(cus)404 b(immediately)f(after)i(the)f(user)g(has)p
+2000 67552 16000 45 v 2652 68452 a Fl(1)3660 68875 y
+Fk(The)309 b(k)-28 b(eymap)311 b(name)e(is)h Fj
+(TeX-source-correlate-map)p Fk(,)317 b(not)309 b Fj
+(TeX-source-correlate-mode-map)p Fk(.)446 b(Actually)-85
+b(,)317 b(this)3660 70037 y(k)-28 b(eymap)250 b(isn't)g(implemen)-28
+b(ted)251 b(as)d(minor)h(mo)28 b(de)250 b(map)f(of)g
+Fj(TeX-source-correlate-mode)p Fk(,)268 b(in)249 b(order)g(that)g(its)g
+(bindings)3660 71200 y(don't)342 b(a\013ect)g(bu\013ers)g(outside)f(of)
+h(A)-28 b(UCT)19946 71414 y(E)20513 71200 y(X.)p eop
+end
+%%Page: 64 69
+TeXDict begin 64 68 bop 2000 -1550 a FC(Chapter)405 b(4:)539
+b(Starting)405 b(Pro)34 b(cessors,)403 b(View)-34 b(ers)403
+b(and)i(Other)f(Programs)14135 b(64)8400 3985 y Fu(;;)637
+b FC(clic)-34 b(k)g(ed)403 b(in)i(some)f(other)g(windo)-34
+b(w.)809 b(Here)404 b(w)-34 b(aiting)405 b(a)f(bit)g(b)34
+b(efore)8400 5446 y Fu(;;)637 b FC(issuing)405 b(the)f(request)g(seems)
+g(to)g(w)-34 b(ork.)8400 6907 y Fu(\(setq)638 b
+(TeX-raise-frame-function)12218 8369 y(\(lambda)h(\(\))13491
+9830 y(\(run-at-time)h(0.5)e(nil)f(#'x-focus-frame\)\)\))8400
+12752 y(;;)g FC(Alternativ)-34 b(e)404 b(3:)g(Use)g(the)g(external)g
+Fu(wmctrl)i FC(to)34 b(ol)404 b(in)g(order)g(to)8400
+14213 y Fu(;;)637 b FC(force)404 b(Emacs)g(in)-34 b(to)404
+b(the)h(fo)34 b(cus.)8400 15675 y Fu(\(setq)638 b
+(TeX-raise-frame-function)12218 17136 y(\(lambda)h(\(\))13491
+18597 y(\(call-process)14127 20058 y("wmctrl")g(nil)f(nil)f(nil)h("-i")
+f("-R")14127 21519 y(\(frame-parameter)642 b(\(selected-frame\))g
+('outer-window-id\)\)\)\))2000 24650 y FB(4.3)896 b(Catc)-50
+b(hing)598 b(the)h(errors)2000 26776 y FC(Once)461 b(y)-34
+b(ou'v)g(e)461 b(formatted)h(y)-34 b(our)462 b(do)34
+b(cumen)-34 b(t)462 b(y)-34 b(ou)462 b(ma)-34 b(y)462
+b(`debug')f(it,)475 b(i.e.)460 b(bro)-34 b(wse)462 b(through)h(the)f
+(errors)2000 28237 y(\(La\)T)4979 28498 y(E)5653 28237
+y(X)494 b(rep)34 b(orted.)807 b(Y)-101 b(ou)494 b(ma)-34
+b(y)494 b(also)g(ha)-34 b(v)g(e)494 b(a)g(lo)34 b(ok)492
+b(at)i(a)g(nicely)f(formatted)i(list)e(of)h(all)f(errors)g(and)2000
+29698 y(w)-34 b(arnings)405 b(rep)34 b(orted)404 b(b)-34
+b(y)405 b(the)f(compiler.)43872 32037 y([Command])-47999
+b Fm(TeX-next-error)611 b Fi(arg)444 b(reparse)5200 33498
+y FC(\()p Fs(C-c)405 b(`)p FC(\))353 b(Go)f(to)h(the)f(next)g(error)f
+(rep)34 b(orted)352 b(b)-34 b(y)352 b(T)27555 33759 y(E)28229
+33498 y(X.)521 b(The)352 b(view)g(will)f(b)34 b(e)352
+b(split)g(in)g(t)-34 b(w)g(o,)364 b(with)352 b(the)5200
+34959 y(cursor)452 b(placed)h(as)f(close)g(as)g(p)34
+b(ossible)453 b(to)g(the)g(error)e(in)i(the)f(top)i(view.)683
+b(In)452 b(the)h(b)34 b(ottom)454 b(view,)5200 36420
+y(the)404 b(error)g(message)f(will)h(b)34 b(e)404 b(displa)-34
+b(y)g(ed)405 b(along)f(with)h(some)f(explanatory)g(text.)5200
+38174 y(An)556 b(optional)g(n)-34 b(umeric)556 b Ft(arg)p
+FC(,)593 b(p)34 b(ositiv)-34 b(e)556 b(or)f(negativ)-34
+b(e,)593 b(sp)34 b(eci\014es)555 b(ho)-34 b(w)557 b(man)-34
+b(y)556 b(error)f(messages)5200 39635 y(to)499 b(mo)-34
+b(v)g(e.)822 b(A)498 b(negativ)-34 b(e)499 b Ft(arg)602
+b FC(means)499 b(to)g(mo)-34 b(v)g(e)499 b(bac)-34 b(k)498
+b(to)h(previous)g(error)e(messages,)522 b(see)498 b(also)5200
+41096 y Fu(TeX-previous-error)p FC(.)5200 42850 y(The)370
+b(optional)g Ft(reparse)437 b FC(argumen)-34 b(t)370
+b(mak)-34 b(es)369 b(A)-34 b(UCT)28887 43111 y(E)29562
+42850 y(X)369 b(reparse)g(the)h(error)e(message)i(bu\013er)f(and)5200
+44311 y(start)527 b(the)g(debugging)h(from)e(the)h(\014rst)g(error.)905
+b(This)527 b(can)g(also)f(b)34 b(e)526 b(ac)-34 b(hiev)g(ed)527
+b(b)-34 b(y)527 b(calling)e(the)5200 45772 y(function)405
+b(with)g(a)f(pre\014x)h(argumen)-34 b(t)405 b(\()p Fs(C-u)p
+FC(\).)43872 48111 y([Command])-47999 b Fm(TeX-previous-error)613
+b Fi(arg)5200 49572 y FC(\()p Fs(M-g)405 b(p)p FC(\))379
+b(Go)e(to)h(the)g(previous)f(error)f(rep)34 b(orted)378
+b(b)-34 b(y)378 b(T)29857 49833 y(E)30530 49572 y(X.)530
+b(An)378 b(optional)g(n)-34 b(umeric)377 b Ft(arg)481
+b FC(sp)34 b(eci\014es)5200 51033 y(ho)-34 b(w)513 b(man)-34
+b(y)512 b(error)f(messages)h(to)g(mo)-34 b(v)g(e)512
+b(bac)-34 b(kw)g(ard.)862 b(This)513 b(is)e(lik)-34 b(e)511
+b(calling)g Fu(TeX-next-error)5200 52494 y FC(with)405
+b(a)f(negativ)-34 b(e)404 b(argumen)-34 b(t.)3660 54833
+y(The)474 b(command)g Fu(TeX-previous-error)479 b FC(w)-34
+b(orks)473 b(only)g(if)g(A)-34 b(UCT)34493 55094 y(E)35168
+54833 y(X)473 b(can)g(parse)g(the)g(whole)g(T)48417 55094
+y(E)49091 54833 y(X)2000 56294 y(log)404 b(bu\013er.)539
+b(This)404 b(is)g(con)-34 b(trolled)404 b(b)-34 b(y)405
+b(the)f Fu(TeX-parse-all-errors)412 b FC(v)-67 b(ariable.)42818
+58633 y([User)404 b(Option])-48000 b Fm(TeX-parse-all-errors)5200
+60094 y FC(If)480 b(t,)499 b(A)-34 b(UCT)11127 60355
+y(E)11802 60094 y(X)480 b(automatically)g(parses)g(the)h(whole)f
+(output)j(log)c(bu\013er)i(righ)-34 b(t)481 b(after)f(running)5200
+61555 y(a)441 b(T)6920 61816 y(E)7594 61555 y(X)g(command,)450
+b(in)441 b(order)g(to)g(collect)f(all)g(w)-34 b(arnings)442
+b(and)g(errors.)648 b(This)441 b(mak)-34 b(es)441 b(it)g(p)34
+b(ossible)5200 63016 y(to)492 b(na)-34 b(vigate)493 b(bac)-34
+b(k)492 b(and)h(forth)g(b)34 b(et)-34 b(w)g(een)494 b(the)e(error)f
+(messages)h(using)h Fu(TeX-next-error)k FC(and)5200 64478
+y Fu(TeX-previous-error)p FC(.)554 b(This)408 b(is)f(the)g(default.)549
+b(If)407 b(nil,)g(A)-34 b(UCT)34815 64738 y(E)35490 64478
+y(X)407 b(do)34 b(es)407 b(not)h(parse)f(the)h(whole)5200
+65939 y(output)e(log)e(bu\013er)g(and)h Fu(TeX-previous-error)411
+b FC(cannot)405 b(b)34 b(e)404 b(used.)3660 68277 y(As)423
+b(default,)k(A)-34 b(UCT)13235 68538 y(E)13910 68277
+y(X)422 b(will)f(displa)-34 b(y)423 b(a)f(sp)34 b(ecial)421
+b(help)h(bu\013er)h(con)-34 b(taining)423 b(the)g(error)e(rep)34
+b(orted)422 b(b)-34 b(y)2000 69738 y(T)2673 69999 y(E)3347
+69738 y(X)398 b(along)h(with)g(the)f(do)34 b(cumen)-34
+b(tation.)539 b(There)398 b(is)g(ho)-34 b(w)g(ev)g(er)399
+b(an)g(`exp)34 b(ert')397 b(option,)j(whic)-34 b(h)399
+b(allo)-34 b(ws)398 b(y)-34 b(ou)2000 71200 y(to)404
+b(displa)-34 b(y)405 b(the)g(real)e(T)12717 71461 y(E)13391
+71200 y(X)h(output.)p eop end
+%%Page: 65 70
+TeXDict begin 65 69 bop 2000 -1550 a FC(Chapter)405 b(4:)539
+b(Starting)405 b(Pro)34 b(cessors,)403 b(View)-34 b(ers)403
+b(and)i(Other)f(Programs)14135 b(65)42818 3985 y([User)404
+b(Option])-48000 b Fm(TeX-display-help)5200 5446 y FC(If)375
+b(t)g(A)-34 b(UCT)10561 5707 y(E)11235 5446 y(X)375 b(will)f
+(automatically)h(displa)-34 b(y)375 b(a)g(help)g(text)g(whenev)-34
+b(er)375 b(an)g(error)e(is)i(encoun)-34 b(tered)5200
+6907 y(using)357 b Fu(TeX-next-error)362 b FC(\()p Fs(C-c)406
+b(`)p FC(\).)523 b(If)357 b(nil)f(a)h(terse)f(information)i(ab)34
+b(out)358 b(the)f(error)f(is)g(displa)-34 b(y)g(ed)5200
+8369 y(in)359 b(the)g(ec)-34 b(ho)359 b(area.)523 b(If)358
+b Fu(expert)j FC(A)-34 b(UCT)23054 8630 y(E)23729 8369
+y(X)358 b(will)h(displa)-34 b(y)359 b(the)g(output)h(bu\013er)f(with)h
+(the)f(ra)-34 b(w)359 b(T)48417 8630 y(E)49091 8369 y(X)5200
+9830 y(output.)2000 12451 y Fq(4.3.1)818 b(Con)-45 b(trolling)545
+b(w)-45 b(arnings)546 b(to)f(b)45 b(e)546 b(rep)45 b(orted)2000
+14410 y FC(Normally)447 b(A)-34 b(UCT)10699 14671 y(E)11374
+14410 y(X)448 b(will)f(only)g(rep)34 b(ort)448 b(real)f(errors,)457
+b(but)449 b(y)-34 b(ou)449 b(ma)-34 b(y)448 b(as)g(w)-34
+b(ell)447 b(ask)h(it)g(to)g(rep)34 b(ort)447 b(`bad)2000
+15871 y(b)34 b(o)-34 b(xes')404 b(and)h(w)-34 b(arnings)405
+b(as)f(w)-34 b(ell.)43872 18275 y([Command])-47999 b
+Fm(TeX-toggle-debug-bad-boxes)5200 19736 y FC(\()p Fs(C-c)405
+b(C-t)h(C-b)p FC(\))471 b(T)-101 b(oggle)471 b(whether)g(A)-34
+b(UCT)25135 19997 y(E)25810 19736 y(X)470 b(should)h(stop)h(at)f(bad)g
+(b)34 b(o)-34 b(xes)470 b(\(i.e.)g(o)-34 b(v)g(erfull)470
+b(and)5200 21197 y(underfull)351 b(b)34 b(o)-34 b(xes\))351
+b(as)g(w)-34 b(ell)350 b(as)h(normal)g(errors.)519 b(The)351
+b(b)34 b(o)g(olean)351 b(option)g Fu(TeX-debug-bad-boxes)5200
+22659 y FC(is)404 b(set)g(accordingly)-101 b(.)43872
+25062 y([Command])-47999 b Fm(TeX-toggle-debug-warnings)5200
+26524 y FC(\()p Fs(C-c)405 b(C-t)h(C-w)p FC(\))485 b(T)-101
+b(oggle)484 b(whether)h(A)-34 b(UCT)25176 26785 y(E)25851
+26524 y(X)484 b(should)h(stop)g(at)g(w)-34 b(arnings)485
+b(as)g(w)-34 b(ell)484 b(as)g(normal)5200 27985 y(errors.)538
+b(The)404 b(b)34 b(o)g(olean)404 b(option)h Fu(TeX-debug-warnings)410
+b FC(is)404 b(set)h(accordingly)-101 b(.)3660 30389 y(While)419
+b(man)-34 b(y)420 b(users)g(desire)e(to)i(ha)-34 b(v)g(e)420
+b(w)-34 b(arnings)421 b(rep)34 b(orted)419 b(after)h(compilation,)j
+(there)c(are)g(certain)2000 31850 y(w)-34 b(arnings)564
+b(that)f(are)f(considered)g(unimp)34 b(ortan)-34 b(t)564
+b(and)g(users)e(w)-34 b(an)g(t)564 b(to)f(ignore)f(them.)1014
+b(F)-101 b(or)562 b(a)g(more)2000 33311 y(\014ne-grained)349
+b(con)-34 b(trol)348 b(of)h(what)g(kinds)g(of)f(w)-34
+b(arnings)350 b(should)f(b)34 b(e)348 b(sho)-34 b(wn)350
+b(after)e(compilation,)359 b(A)-34 b(UCT)48416 33572
+y(E)49091 33311 y(X)2000 34772 y(pro)g(vides)404 b(other)h(options.)
+42818 37176 y([User)f(Option])-48000 b Fm(TeX-ignore-warnings)5200
+38637 y FC(Con)-34 b(trols)405 b(whic)-34 b(h)405 b(w)-34
+b(arnings)406 b(are)d(to)i(b)34 b(e)403 b(ignored.)5200
+40413 y(It)h(can)g(b)34 b(e)404 b(a)g(regexp)g(matc)-34
+b(hing)405 b(the)f(message)g(of)h(the)f(w)-34 b(arnings)406
+b(to)e(b)34 b(e)404 b(ignored.)5200 42188 y(More)389
+b(adv)-67 b(anced)389 b(users)h(can)f(set)g(also)h(this)f(option)i(to)e
+(a)h(sym)-34 b(b)34 b(ol)389 b(with)h(the)g(name)f(of)h(a)f(custom)5200
+43649 y(function)362 b(taking)g(as)f(argumen)-34 b(ts)362
+b(all)f(the)g(information)h(of)g(the)f(w)-34 b(arning)362
+b(listed)f(in)g Fu(TeX-error-)5200 45110 y(list)368 b
+FC(v)-67 b(ariable,)372 b(except)367 b(the)g(last)f(one)h(ab)34
+b(out)368 b(whether)f(to)g(ignore)f(the)h(w)-34 b(arning.)527
+b(See)366 b(the)h(co)34 b(de)5200 46572 y(of)322 b Fu(TeX-warning)327
+b FC(function)c(and)g(the)g(do)34 b(cumen)-34 b(tation)324
+b(of)e Fu(TeX-error-list)327 b FC(for)322 b(more)g(details.)43872
+48975 y([Command])-47999 b Fm(TeX-toggle-suppress-ignored-warnings)5200
+50437 y FC(\()p Fs(C-c)405 b(C-t)h(C-x)p FC(\))505 b(T)-101
+b(oggle)504 b(whether)h(A)-34 b(UCT)25236 50697 y(E)25911
+50437 y(X)504 b(should)i(actually)d(hide)i(the)f(ignored)h(w)-34
+b(arnings)5200 51898 y(sp)34 b(eci\014ed)410 b(with)g
+Fu(TeX-ignore-warnings)p FC(.)563 b(The)410 b(b)34 b(o)g(olean)410
+b(option)h Fu(TeX-suppress-ignored-)5200 53359 y(warnings)351
+b FC(is)e(set)f(accordingly)-101 b(.)520 b(If)348 b(this)h(is)f(nil,)
+360 b(all)348 b(w)-34 b(arnings)349 b(are)f(sho)-34 b(wn,)361
+b(ev)-34 b(en)349 b(those)g(matc)-34 b(hed)5200 54820
+y(b)g(y)404 b Fu(TeX-ignore-warnings)p FC(,)411 b(otherwise)404
+b(these)h(are)e(hidden.)5200 56595 y(Note)522 b(that)i
+Fu(TeX-debug-warnings)k FC(tak)-34 b(es)523 b(the)f(precedence:)774
+b(if)522 b(it)g(is)g(nil,)552 b(all)521 b(w)-34 b(arnings)523
+b(are)5200 58057 y(hidden)405 b(in)f(an)-34 b(y)405 b(case.)2000
+60678 y Fq(4.3.2)818 b(List)546 b(of)f(all)g(errors)i(and)f(w)-45
+b(arnings)2000 62637 y FC(When)397 b(the)h(option)g Fu
+(TeX-parse-all-errors)404 b FC(is)397 b(non-nil,)h(y)-34
+b(ou)398 b(will)e(b)34 b(e)397 b(also)g(able)g(to)g(op)34
+b(en)398 b(an)f(o)-34 b(v)g(er-)2000 64098 y(view)404
+b(of)g(all)g(errors)f(and)i(w)-34 b(arnings)405 b(rep)34
+b(orted)404 b(b)-34 b(y)404 b(the)h(T)28094 64359 y(E)28768
+64098 y(X)f(compiler.)43872 66502 y([Command])-47999
+b Fm(TeX-error-overview)5200 67963 y FC(Sho)-34 b(w)406
+b(an)e(o)-34 b(v)g(erview)404 b(of)g(the)h(errors)e(and)i(w)-34
+b(arnings)405 b(o)34 b(ccurred)403 b(in)h(the)h(last)f(T)40866
+68224 y(E)41540 67963 y(X)g(run.)5200 69738 y(In)473
+b(this)h(windo)-34 b(w)474 b(y)-34 b(ou)474 b(can)f(visit)f(the)i
+(error)e(on)h(whic)-34 b(h)474 b(p)34 b(oin)-34 b(t)474
+b(is)f(b)-34 b(y)473 b(pressing)h Fu(RET)p FC(,)491 b(and)473
+b(visit)5200 71200 y(the)373 b(next)g(or)g(previous)f(issue)h(b)-34
+b(y)373 b(pressing)g Fu(n)g FC(or)g Fu(p)g FC(resp)34
+b(ectiv)-34 b(ely)-101 b(.)526 b(A)373 b(pre\014x)g(argumen)-34
+b(t)374 b(to)f(these)p eop end
+%%Page: 66 71
+TeXDict begin 66 70 bop 2000 -1550 a FC(Chapter)405 b(4:)539
+b(Starting)405 b(Pro)34 b(cessors,)403 b(View)-34 b(ers)403
+b(and)i(Other)f(Programs)14135 b(66)5200 3985 y(k)-34
+b(eys)409 b(sp)34 b(eci\014es)409 b(ho)-34 b(w)411 b(man)-34
+b(y)410 b(errors)e(to)i(mo)-34 b(v)g(e)410 b(forw)-34
+b(ard)410 b(or)g(bac)-34 b(kw)g(ard.)555 b(Y)-101 b(ou)410
+b(can)g(visit)f(an)h(error)5200 5446 y(also)442 b(b)-34
+b(y)443 b(clic)-34 b(king)441 b(on)i(its)g(message.)653
+b(Jump)443 b(to)g(error)e(p)34 b(oin)-34 b(t)444 b(in)e(the)h(source)f
+(co)34 b(de)442 b(with)h Fu(j)p FC(,)452 b(and)5200 6907
+y(use)527 b Fu(l)h FC(see)e(the)i(error)e(in)h(the)g(log)g(bu\013er.)
+908 b(In)527 b(addition,)559 b(y)-34 b(ou)527 b(can)g(toggle)g
+(visibilit)-34 b(y)527 b(of)g(bad)5200 8369 y(b)34 b(o)-34
+b(xes,)586 b(generic)549 b(w)-34 b(arnings,)587 b(and)551
+b(ignored)f(w)-34 b(arnings)551 b(with)f Fu(b)p FC(,)587
+b Fu(w)p FC(,)f(and)551 b Fu(x)p FC(,)586 b(resp)34 b(ectiv)-34
+b(ely)548 b(\(see)5200 9830 y(Section)404 b(4.3.1)g([Ignoring)g(w)-34
+b(arnings],)405 b(page)f(65,)g(for)g(details\).)539 b(Press)403
+b Fu(q)i FC(to)f(quit)h(the)f(o)-34 b(v)g(erview.)42818
+13140 y([User)404 b(Option])-48000 b Fm
+(TeX-error-overview-open-after-TeX-run)5200 14601 y FC(When)303
+b(this)h(b)34 b(o)g(olean)303 b(v)-67 b(ariable)302 b(is)h(non-nil,)324
+b(the)304 b(error)e(o)-34 b(v)g(erview)303 b(will)f(b)34
+b(e)303 b(automatically)h(op)34 b(ened)5200 16062 y(after)404
+b(running)h(T)13253 16323 y(E)13927 16062 y(X)f(if)g(there)g(are)g
+(errors)f(or)h(w)-34 b(arnings)405 b(to)g(sho)-34 b(w.)3660
+19373 y(The)399 b(error)f(o)-34 b(v)g(erview)398 b(is)g(op)34
+b(ened)399 b(in)g(a)f(new)h(windo)-34 b(w)400 b(of)f(the)g(curren)-34
+b(t)399 b(frame)g(b)-34 b(y)399 b(default,)h(but)f(y)-34
+b(ou)2000 20834 y(can)404 b(c)-34 b(hange)405 b(this)g(b)34
+b(eha)-34 b(vior)403 b(b)-34 b(y)405 b(customizing)f(the)h(option)g
+Fu(TeX-error-overview-setup)p FC(.)42818 24144 y([User)f(Option])-48000
+b Fm(TeX-error-overview-setup)5200 25605 y FC(Con)-34
+b(trols)1016 b(the)g(frame)f(setup)h(of)g(the)g(error)e(o)-34
+b(v)g(erview.)2371 b(The)1016 b(p)34 b(ossible)1015 b(v)-67
+b(alue)1014 b(is:)5200 27066 y Fu(separate-frame)p FC(;)409
+b(with)c(a)f(nil)g(v)-67 b(alue)403 b(the)h(curren)-34
+b(t)405 b(frame)f(is)g(used)h(instead.)5200 29286 y(The)556
+b(parameters)f(of)h(the)g(separate)g(frame)f(can)h(b)34
+b(e)555 b(set)h(with)g(the)g Fu(TeX-error-overview-)5200
+30747 y(frame-parameters)410 b FC(option.)5200 32967
+y(If)364 b(the)h(displa)-34 b(y)364 b(do)34 b(es)365
+b(not)g(supp)34 b(ort)365 b(m)-34 b(ulti)365 b(frame,)372
+b(the)364 b(curren)-34 b(t)365 b(frame)f(will)g(b)34
+b(e)364 b(used)h(regardless)5200 34428 y(of)404 b(the)h(v)-67
+b(alue)403 b(of)i(this)f(v)-67 b(ariable.)2000 38278
+y FB(4.4)896 b(Chec)-50 b(king)599 b(for)f(problems)2000
+40403 y FC(Running)425 b(T)7625 40664 y(E)8299 40403
+y(X)f(or)f(L)11458 40246 y Fv(a)12019 40403 y FC(T)12692
+40664 y(E)13366 40403 y(X)h(will)f(only)g(\014nd)i(regular)e(errors)g
+(in)h(the)g(do)34 b(cumen)-34 b(t,)429 b(not)c(examples)e(of)h(bad)2000
+41864 y(st)-34 b(yle.)529 b(F)-101 b(urthermore,)381
+b(description)376 b(of)g(the)f(errors)g(ma)-34 b(y)376
+b(often)g(b)34 b(e)375 b(confusing.)530 b(The)376 b(utilities)g
+Fu(lacheck)2000 43326 y FC(and)490 b Fu(chktex)i FC(can)e(b)34
+b(e)489 b(used)i(to)f(\014nd)h(st)-34 b(yle)489 b(errors,)510
+b(suc)-34 b(h)491 b(as)e(forgetting)i(to)f(escap)34 b(e)489
+b(the)h(space)g(after)2000 44787 y(an)472 b(abbreviation)f(or)g(using)h
+(`)p Fu(...)p FC(')g(instead)g(of)f(`)p Fu(\\ldots)p
+FC(')i(and)f(other)f(similar)g(problems.)740 b(Y)-101
+b(ou)471 b(start)2000 46248 y Fu(lacheck)351 b FC(with)e
+Fs(C-c)405 b(C-c)g(Check)h(RET)349 b FC(and)g Fu(chktex)h
+FC(with)f Fs(C-c)405 b(C-c)h(ChkTeX)g(RET)p FC(.)521
+b(The)348 b(result)h(will)e(b)34 b(e)2000 47709 y(a)473
+b(list)g(of)h(errors)e(in)h(the)h(`)p Fu(*compilation*)p
+FC(')j(bu\013er.)746 b(Y)-101 b(ou)474 b(can)g(go)f(through)h(the)g
+(errors)e(with)j Fs(C-x)405 b(`)2000 49170 y FC(\()p
+Fu(next-error)p FC(,)457 b(see)442 b(Section)i(\\Compilation")g(in)f
+Ft(The)h(Emacs)f(Editor)87 b FC(\),)453 b(whic)-34 b(h)444
+b(will)f(mo)-34 b(v)g(e)443 b(p)34 b(oin)-34 b(t)445
+b(to)2000 50632 y(the)405 b(lo)34 b(cation)403 b(of)i(the)f(next)h
+(error.)3660 52851 y(Alternativ)-34 b(ely)-101 b(,)332
+b(y)-34 b(ou)315 b(ma)-34 b(y)314 b(w)-34 b(an)g(t)316
+b(in-bu\013er)f(notation.)510 b(A)-34 b(UCT)32195 53112
+y(E)32870 52851 y(X)314 b(pro)-34 b(vides)315 b(supp)34
+b(ort)315 b(for)f(this)h(using)2000 54312 y(the)353 b(Flymak)-34
+b(e)352 b(pac)-34 b(k)-67 b(age)352 b(in)h(Emacs)f(26)h(or)f(new)-34
+b(er)353 b(\(see)f(Section)h(\\Using)g(Flymak)-34 b(e")352
+b(in)h Ft(GNU)f(Flymak)-34 b(e)2000 55774 y FC(for)434
+b(details\).)630 b(T)-101 b(o)435 b(enable,)441 b(call)434
+b Fs(M-x)405 b(flymake-mode)j(RET)436 b FC(in)e(the)h(bu\013er)g(or)f
+(enable)g(it)g(in)h(all)f(bu\013ers)2000 57235 y(b)-34
+b(y)405 b(adding)g(this)f(to)h(y)-34 b(our)404 b(init)g(\014le:)5200
+59454 y Fu(\(add-hook)640 b('LaTeX-mode-hook)i(#'flymake-mode\))3660
+61674 y FC(Note)524 b(that)h(A)-34 b(UCT)12787 61935
+y(E)13462 61674 y(X)523 b(curren)-34 b(tly)524 b(only)f(pro)-34
+b(vides)524 b(supp)34 b(ort)525 b(for)e(using)i Fu(chktex)g
+FC(as)f(the)g(\015ymak)-34 b(e)2000 63135 y(bac)g(k)g(end.)3660
+65355 y(Eac)g(h)332 b(of)f(the)h(t)-34 b(w)g(o)332 b(utilities)f
+Fu(lacheck)j FC(and)d Fu(chktex)i FC(will)e(\014nd)h(some)f(errors)f
+(the)i(other)f(do)34 b(esn't,)346 b(but)2000 66816 y
+Fu(chktex)420 b FC(is)e(more)f(con\014gurable,)422 b(allo)-34
+b(wing)418 b(y)-34 b(ou)419 b(to)f(create)f(y)-34 b(our)419
+b(o)-34 b(wn)419 b(errors.)579 b(Y)-101 b(ou)418 b(ma)-34
+b(y)418 b(need)h(to)f(in-)2000 68277 y(stall)345 b(the)h(programs)g(b)
+34 b(efore)345 b(using)h(them.)520 b(Y)-101 b(ou)346
+b(can)f(get)h Fu(lacheck)i FC(from)d(URL:)p Fu(https://www.ctan.)2000
+69738 y(org/pkg/lacheck)439 b FC(and)c Fu(chktex)h FC(from)e(URL:)p
+Fu(https://www.ctan.org/pkg/chktex)p FC(.)639 b(T)45774
+69999 y(E)46448 69738 y(X)404 b(Liv)-34 b(e)2000 71200
+y(con)g(tains)405 b(b)34 b(oth.)p eop end
+%%Page: 67 72
+TeXDict begin 67 71 bop 2000 -1550 a FC(Chapter)405 b(4:)539
+b(Starting)405 b(Pro)34 b(cessors,)403 b(View)-34 b(ers)403
+b(and)i(Other)f(Programs)14135 b(67)2000 3985 y FB(4.5)896
+b(Con)-50 b(trolling)599 b(the)f(output)2000 6110 y FC(A)443
+b(n)-34 b(um)g(b)34 b(er)443 b(of)g(commands)h(are)e(a)-34
+b(v)-67 b(ailable)442 b(for)h(con)-34 b(trolling)443
+b(the)g(output)h(of)g(an)f(application)g(running)2000
+7572 y(under)405 b(A)-34 b(UCT)8770 7833 y(E)9444 7572
+y(X)43872 9766 y([Command])-47999 b Fm(TeX-kill-job)5200
+11227 y FC(\()p Fs(C-c)405 b(C-k)p FC(\))506 b(Kill)c(curren)-34
+b(tly)504 b(running)g(external)g(application.)837 b(This)505
+b(ma)-34 b(y)504 b(b)34 b(e)503 b(either)g(of)h(T)48080
+11488 y(E)48754 11227 y(X,)5200 12688 y(L)5522 12531
+y Fv(a)6083 12688 y FC(T)6756 12949 y(E)7430 12688 y(X,)403
+b(preview)-34 b(er,)403 b(BibT)17419 12949 y(E)18093
+12688 y(X,)h(etc.)43872 14883 y([Command])-47999 b Fm
+(TeX-recenter-output-buffer)5200 16344 y FC(\()p Fs(C-c)405
+b(C-l)p FC(\))h(Recen)-34 b(ter)404 b(the)h(output)h(bu\013er)e(so)g
+(that)h(the)g(b)34 b(ottom)405 b(line)f(is)g(visible.)43872
+18538 y([Command])-47999 b Fm(TeX-home-buffer)5200 19999
+y FC(\()p Fs(C-c)405 b Fu(^)p FC(\))373 b(Go)e(to)h(the)g(`master')f
+(\014le)g(in)g(the)h(do)34 b(cumen)-34 b(t)373 b(asso)34
+b(ciated)371 b(with)i(the)e(curren)-34 b(t)372 b(bu\013er,)378
+b(or)5200 21461 y(if)404 b(already)g(there,)f(to)i(the)f(\014le)g
+(where)g(the)h(curren)-34 b(t)404 b(pro)34 b(cess)404
+b(w)-34 b(as)405 b(started.)3660 23655 y(Additionally)-101
+b(,)405 b(output)h(\014les)e(pro)34 b(duced)404 b(b)-34
+b(y)405 b(A)-34 b(UCT)27609 23916 y(E)28283 23655 y(X)404
+b(can)h(b)34 b(e)404 b(placed)g(in)g(a)g(separate)g(directory)-101
+b(.)42818 25849 y([User)404 b(Option])-48000 b Fm(TeX-output-dir)5200
+27310 y FC(Set)549 b(this)g(option)g(to)g(the)g(path)g(of)g(a)g
+(directory)e(where)h(output)j(\014les)d(will)g(b)34 b(e)548
+b(placed.)971 b(The)5200 28772 y(output)359 b(\014les)d(include)h
+(those)h(that)g(are)e(pro)34 b(duced)357 b(b)-34 b(y)358
+b(applications)f(running)h(under)g(A)-34 b(UCT)48080
+29033 y(E)48754 28772 y(X,)5200 30233 y(temp)34 b(orary)473
+b(\014les)h(related)f(to)h(region)g(pro)34 b(cessing)473
+b(and)i(the)f Fw(p)-34 b(review-latex)473 b FC(\014les.)747
+b(If)474 b(a)g(relativ)-34 b(e)5200 31694 y(path)505
+b(is)f(sp)34 b(eci\014ed,)528 b(it)504 b(is)f(in)-34
+b(terpreted)505 b(as)e(b)34 b(eing)504 b(relativ)-34
+b(e)503 b(to)h(the)g(master)g(\014le)g(in)g(a)g(m)-34
+b(utli\014le)5200 33155 y(do)34 b(cumen)-34 b(t.)5200
+34861 y(This)472 b(is)f(a)g(bu\013er)h(lo)34 b(cal)470
+b(v)-67 b(ariable)470 b(and)i(m)-34 b(ust)473 b(b)34
+b(e)471 b(set)h(separately)f(for)g(all)g(do)34 b(cumen)-34
+b(ts)472 b(and)h(all)5200 36322 y(\014les)404 b(in)g(a)g(m)-34
+b(ulti\014le)405 b(do)34 b(cumen)-34 b(t.)539 b(F)-101
+b(or)404 b(example,)8400 38027 y Fu(\045\045\045)637
+b(Local)h(Variables:)8400 39489 y(\045\045\045)f(mode:)h(latex)8400
+40950 y(\045\045\045)f(TeX-output-dir:)642 b("build")8400
+42411 y(\045\045\045)637 b(End:)5200 44117 y FC(Alternativ)-34
+b(ely)-101 b(,)489 b(y)-34 b(ou)473 b(ma)-34 b(y)473
+b(use)f Fu(setq-default)477 b FC(to)c(set)g(the)g(default)h(v)-67
+b(alue)471 b(of)i(this)h(option)f(or)5200 45578 y(set)458
+b(it)h(as)f(a)h(directory)e(lo)34 b(cal)458 b(v)-67 b(ariable)457
+b(\(see)h(Section)h(\\Directory)e(V)-101 b(ariables")458
+b(in)g Ft(The)h(Emacs)5200 47039 y(Editor)87 b FC(\).)5200
+48745 y(Note)398 b(that)h(a)f(non-nil)g(v)-67 b(alue)397
+b(of)i Fu(TeX-output-dir)j FC(migh)-34 b(t)399 b(b)34
+b(e)398 b(incompatible)g(with)g(some)g(T)48417 49006
+y(E)49091 48745 y(X)5200 50206 y(commands)453 b(and)f(macros.)681
+b(In)452 b(particular,)463 b(the)452 b(L)28396 50049
+y Fv(a)28957 50206 y FC(T)29630 50467 y(E)30304 50206
+y(X)f(macro)h(`)p Fu(\\include)p FC(')i(is)d(kno)-34
+b(wn)453 b(to)f(not)5200 51667 y(w)-34 b(ork)470 b(with)i(this)e
+(option.)739 b(Some)470 b(T)21902 51928 y(E)22576 51667
+y(X)g(pac)-34 b(k)-67 b(ages)470 b(whic)-34 b(h)471 b(pro)34
+b(duce)471 b(in)-34 b(termediary)470 b(\014les)g(migh)-34
+b(t)5200 53128 y(also)539 b(b)34 b(e)538 b(incompatible.)944
+b(A)539 b(p)34 b(ossible)538 b(w)-34 b(ork)-67 b(around)540
+b(for)f(those)h(pac)-34 b(k)-67 b(ages)539 b(is)f(to)i(app)34
+b(end)539 b(the)5200 54589 y(v)-67 b(alue)403 b(of)i
+Fu(TeX-output-dir)k FC(to)404 b(the)h(en)-34 b(vironmen)g(t)405
+b(v)-67 b(ariables)403 b Fu(TEXINPUTS)k FC(and)e Fu(BIBINPUTS)p
+FC(.)2000 57624 y FB(4.6)896 b(Cleaning)598 b(in)-50
+b(termediate)601 b(and)d(output)h(\014les)43872 60238
+y FC([Command])-47999 b Fm(TeX-clean)5200 61699 y FC(Remo)-34
+b(v)g(e)585 b(generated)f(in)-34 b(termediate)585 b(\014les.)1079
+b(In)585 b(case)f(a)g(pre\014x)g(argumen)-34 b(t)586
+b(is)e(giv)-34 b(en,)629 b(remo)-34 b(v)g(e)5200 63161
+y(output)406 b(\014les)e(as)g(w)-34 b(ell.)5200 64866
+y(Canonical)455 b(access)e(to)i(the)g(function)g(is)f(pro)-34
+b(vided)455 b(b)-34 b(y)454 b(the)h(`)p Fu(Clean)p FC(')g(and)g(`)p
+Fu(Clean)406 b(All)p FC(')455 b(en)-34 b(tries)5200 66327
+y(in)404 b Fu(TeX-command-list)p FC(,)410 b(in)-34 b(v)g(ok)-67
+b(able)403 b(with)i Fs(C-c)g(C-c)h FC(or)d(the)i(Command)h(men)-34
+b(u.)5200 68033 y(The)574 b(patterns)h(go)-34 b(v)g(erning)574
+b(whic)-34 b(h)575 b(\014les)f(to)g(remo)-34 b(v)g(e)573
+b(can)h(b)34 b(e)573 b(adapted)j(separately)d(for)h(eac)-34
+b(h)5200 69494 y(A)g(UCT)8532 69755 y(E)9207 69494 y(X)404
+b(mo)34 b(de)404 b(b)-34 b(y)404 b(means)h(of)f(the)h(follo)-34
+b(wing)405 b(v)-67 b(ariables:)6194 71200 y FA(\017)800
+b Fu(plain-TeX-clean-intermediate-suffixes)p eop end
+%%Page: 68 73
+TeXDict begin 68 72 bop 2000 -1550 a FC(Chapter)405 b(4:)539
+b(Starting)405 b(Pro)34 b(cessors,)403 b(View)-34 b(ers)403
+b(and)i(Other)f(Programs)14135 b(68)6194 3985 y FA(\017)800
+b Fu(plain-TeX-clean-output-suffixes)6194 5778 y FA(\017)g
+Fu(LaTeX-clean-intermediate-suffixes)6194 7572 y FA(\017)g
+Fu(LaTeX-clean-output-suffixes)6194 9365 y FA(\017)g
+Fu(docTeX-clean-intermediate-suffixes)6194 11158 y FA(\017)g
+Fu(docTeX-clean-output-suffixes)6194 12951 y FA(\017)g
+Fu(Texinfo-clean-intermediate-suffixes)6194 14745 y FA(\017)g
+Fu(Texinfo-clean-output-suffixes)6194 16538 y FA(\017)g
+Fu(ConTeXt-clean-intermediate-suffixes)6194 18331 y FA(\017)g
+Fu(ConTeXt-clean-output-suffixes)6194 20125 y FA(\017)g
+Fu(AmSTeX-clean-intermediate-suffixes)6194 21918 y FA(\017)g
+Fu(AmSTeX-clean-output-suffixes)42818 24375 y FC([User)404
+b(Option])-48000 b Fm(TeX-clean-confirm)5200 25836 y
+FC(Con)-34 b(trol)474 b(if)f(deletion)f(of)i(in)-34 b(termediate)473
+b(and)g(output)i(\014les)e(has)g(to)g(b)34 b(e)473 b(con\014rmed)g(b)34
+b(efore)472 b(it)h(is)5200 27298 y(actually)404 b(done.)539
+b(If)404 b(non-nil,)g(ask)g(b)34 b(efore)404 b(deleting)g(\014les.)2000
+30508 y FB(4.7)896 b(Do)50 b(cumen)-50 b(tation)600 b(ab)50
+b(out)597 b(macros)i(and)f(pac)-50 b(k)-100 b(ages)43872
+33297 y FC([Command])-47999 b Fm(TeX-documentation-texdoc)5200
+34759 y FC(\()p Fs(C-c)405 b(?)p FC(\))281 b(Get)f(do)34
+b(cumen)-34 b(tation)282 b(ab)34 b(out)281 b(the)g(pac)-34
+b(k)-67 b(ages)280 b(installed)g(on)g(y)-34 b(our)281
+b(system,)304 b(using)281 b Fu(texdoc)5200 36220 y FC(to)432
+b(\014nd)i(the)e(man)-34 b(uals.)623 b(The)433 b(function)g(will)f
+(prompt)h(for)f(the)g(name)h(of)f(pac)-34 b(k)-67 b(ages.)622
+b(If)432 b(p)34 b(oin)-34 b(t)433 b(is)5200 37681 y(on)404
+b(a)h(w)-34 b(ord,)404 b(this)h(will)e(b)34 b(e)404 b(suggested)h(as)g
+(default.)5200 39474 y(If)386 b(the)h(command)g(is)e(called)h(with)h(a)
+f(pre\014x)g(argumen)-34 b(t,)390 b(y)-34 b(ou)387 b(will)f(b)34
+b(e)385 b(sho)-34 b(wn)388 b(a)e(list)g(of)h(man)-34
+b(uals)5200 40935 y(of)404 b(the)h(giv)-34 b(en)404 b(pac)-34
+b(k)-67 b(age)404 b(among)g(to)h(c)-34 b(ho)34 b(ose.)5200
+42729 y(The)528 b(command)g(can)f(b)34 b(e)527 b(in)-34
+b(v)g(ok)g(ed)527 b(b)-34 b(y)528 b(the)g(k)-34 b(ey)526
+b(binding)i(men)-34 b(tioned)529 b(ab)34 b(o)-34 b(v)g(e)527
+b(as)g(w)-34 b(ell)527 b(as)g(the)5200 44190 y(`)p Fu(Find)405
+b(Documentation...)p FC(')410 b(en)-34 b(try)404 b(in)g(the)h(mo)34
+b(de)404 b(men)-34 b(u.)p eop end
+%%Page: 69 74
+TeXDict begin 69 73 bop 48788 -1550 a FC(69)2000 3985
+y Fz(5)1076 b(Customization)716 b(and)g(Extension)2000
+8391 y FB(5.1)896 b(Mo)50 b(des)598 b(and)g(Ho)50 b(oks)2000
+10516 y FC(A)-34 b(UCT)5332 10777 y(E)6007 10516 y(X)414
+b(supp)34 b(orts)415 b(a)f(wide)g(v)-67 b(ariet)-34 b(y)413
+b(of)h(deriv)-67 b(ativ)-34 b(es)413 b(and)i(extensions)f(of)h(T)37900
+10777 y(E)38574 10516 y(X.)568 b(Besides)413 b(plain)h(T)48417
+10777 y(E)49091 10516 y(X)2000 11977 y(those)477 b(are)g(L)7663
+11820 y Fv(a)8224 11977 y FC(T)8897 12238 y(E)9570 11977
+y(X,)495 b(AMS-T)15081 12238 y(E)15756 11977 y(X,)f(ConT)20323
+12238 y(E)20998 11977 y(Xt,)h(T)-101 b(exinfo)477 b(and)h(do)34
+b(cT)32581 12238 y(E)33254 11977 y(X.)757 b(F)-101 b(or)477
+b(eac)-34 b(h)477 b(of)g(them)h(there)e(is)h(a)2000 13438
+y(separate)377 b(ma)67 b(jor)377 b(mo)34 b(de)376 b(in)g(A)-34
+b(UCT)18231 13699 y(E)18906 13438 y(X)376 b(and)h(eac)-34
+b(h)377 b(ma)67 b(jor)377 b(mo)34 b(de)376 b(runs)h Fu(text-mode-hook)p
+FC(,)387 b Fu(TeX-mode-)2000 14900 y(hook)433 b FC(as)f(w)-34
+b(ell)431 b(as)h(a)g(ho)34 b(ok)432 b(sp)34 b(ecial)430
+b(to)j(the)f(mo)34 b(de)431 b(in)h(this)g(order.)621
+b(\(As)433 b(an)f(exception,)438 b(T)-101 b(exinfo)432
+b(mo)34 b(de)2000 16361 y(do)g(es)437 b(not)i(run)f Fu(TeX-mode-hook)p
+FC(.\))644 b(The)438 b(follo)-34 b(wing)438 b(table)g(pro)-34
+b(vides)437 b(an)h(o)-34 b(v)g(erview)437 b(of)h(the)g(resp)34
+b(ectiv)-34 b(e)2000 17822 y(mo)34 b(de)404 b(functions)i(and)e(ho)34
+b(oks.)2000 21054 y Fp(T)-34 b(yp)34 b(e)4449 b(Mo)34
+b(de)403 b(function)2863 b(Ho)34 b(ok)2000 22516 y FC(Plain)404
+b(T)5855 22777 y(E)6529 22516 y(X)1732 b Fu(plain-tex-mode)1737
+b(plain-TeX-mode-hook)2000 23977 y FC(L)2322 23820 y
+Fv(a)2883 23977 y FC(T)3556 24238 y(E)4230 23977 y(X)4031
+b Fu(latex-mode)4281 b(LaTeX-mode-hook)2000 25438 y FC(AMS-T)5770
+25699 y(E)6444 25438 y(X)1817 b Fu(ams-tex-mode)3009
+b(AmS-TeX-mode-hook)2000 26899 y FC(ConT)4827 27160 y(E)5502
+26899 y(Xt)2288 b Fu(context-mode)3009 b(ConTeXt-mode-hook)2000
+28360 y FC(T)-101 b(exinfo)3231 b Fu(texinfo-mode)3009
+b(Texinfo-mode-hook)2000 29822 y FC(Do)34 b(cT)4778 30082
+y(E)5451 29822 y(X)2810 b Fu(doctex-mode)3645 b(docTeX-mode-hook)3660
+31593 y FC(If)284 b(y)-34 b(ou)284 b(need)f(to)h(mak)-34
+b(e)283 b(a)h(customization)g(via)f(a)g(ho)34 b(ok)284
+b(whic)-34 b(h)284 b(is)f(only)g(relev)-67 b(an)-34 b(t)283
+b(for)h(one)f(of)h(the)g(mo)34 b(des)2000 33054 y(listed)405
+b(ab)34 b(o)-34 b(v)g(e,)406 b(put)h(it)f(in)-34 b(to)406
+b(the)g(resp)34 b(ectiv)-34 b(e)404 b(mo)34 b(de)406
+b(ho)34 b(ok,)405 b(if)h(it)f(is)h(relev)-67 b(an)-34
+b(t)404 b(for)i(an)-34 b(y)406 b(A)-34 b(UCT)44812 33315
+y(E)45487 33054 y(X)405 b(mo)34 b(de,)2000 34515 y(add)424
+b(it)g(to)f Fu(TeX-mode-hook)428 b FC(and)c(if)g(it)f(is)g(relev)-67
+b(an)-34 b(t)423 b(for)h(all)e(text)i(mo)34 b(des,)428
+b(app)34 b(end)424 b(it)g(to)f Fu(text-mode-)2000 35976
+y(hook)p FC(.)3660 37747 y(Other)404 b(useful)h(ho)34
+b(oks)404 b(are)g(listed)g(b)34 b(elo)-34 b(w.)44946
+40138 y([V)-101 b(ariable])-48001 b Fm
+(TeX-after-compilation-finished-functions)5200 41600
+y FC(Ho)34 b(ok)386 b(whic)-34 b(h)388 b(is)f(run)g(after)g(the)g(T)
+20833 41861 y(E)21507 41600 y(X/L)23344 41443 y Fv(a)23905
+41600 y FC(T)24578 41861 y(E)25252 41600 y(X)f(pro)34
+b(cessor)386 b(has)i(successfully)e(\014nished)i(compiling)5200
+43061 y(y)-34 b(our)382 b(do)34 b(cumen)-34 b(t.)533
+b(\(See)382 b(Chapter)i(4)e([Pro)34 b(cessing],)385 b(page)d(52,)387
+b(for)382 b(\014nding)h(out)h(ho)-34 b(w)383 b(to)g(compile)5200
+44522 y(y)-34 b(our)300 b(do)34 b(cumen)-34 b(t.\))505
+b(Eac)-34 b(h)299 b(function)i(in)f(the)g(ho)34 b(ok)299
+b(is)g(run)h(with)g(the)g(compiled)f(output)j(do)34 b(cumen)-34
+b(t)5200 45983 y(as)404 b(its)g(argumen)-34 b(t.)5200
+47754 y(This)452 b(is)e(useful)i(for)f(automatically)h(refreshing)f
+(the)g(view)-34 b(er)451 b(after)g(re-compilation)g(esp)34
+b(ecially)5200 49215 y(when)279 b(using)h(Emacs)e(view)-34
+b(ers)278 b(suc)-34 b(h)280 b(as)f(Do)34 b(cView)277
+b(or)i(PDF)f(T)-101 b(o)34 b(ols.)497 b(The)279 b(function)h
+Fu(TeX-revert-)5200 50677 y(document-buffer)409 b FC(can)c(b)34
+b(e)403 b(added)i(to)g(the)f(ho)34 b(ok)404 b(for)h(this)f(purp)34
+b(ose.)2000 53843 y FB(5.2)896 b(Multi\014le)599 b(Do)50
+b(cumen)-50 b(ts)2000 55968 y FC(Y)-101 b(ou)482 b(ma)-34
+b(y)481 b(wish)h(to)g(spread)g(a)f(do)34 b(cumen)-34
+b(t)483 b(o)-34 b(v)g(er)481 b(man)-34 b(y)482 b(\014les)f(\(as)h(y)-34
+b(ou)482 b(are)e(lik)-34 b(ely)480 b(to)i(do)g(if)f(there)g(are)2000
+57429 y(m)-34 b(ultiple)552 b(authors,)590 b(or)552 b(if)g(y)-34
+b(ou)552 b(ha)-34 b(v)g(e)553 b(not)g(y)-34 b(et)552
+b(disco)-34 b(v)g(ered)552 b(the)g(p)34 b(o)-34 b(w)g(er)553
+b(of)f(the)h(outline)f(commands)2000 58890 y(\(see)424
+b(Section)h(3.3)f([Outline],)k(page)c(50\)\).)600 b(This)425
+b(can)f(b)34 b(e)424 b(done)h(b)-34 b(y)424 b(ha)-34
+b(ving)425 b(a)f(\\master")h(\014le)f(in)g(whic)-34 b(h)2000
+60351 y(y)g(ou)402 b(include)g(the)g(v)-67 b(arious)401
+b(\014les)g(with)i(the)f(T)22639 60612 y(E)23313 60351
+y(X)g(macro)f(`)p Fu(\\input)p FC(')i(or)e(the)h(L)37043
+60194 y Fv(a)37604 60351 y FC(T)38277 60612 y(E)38951
+60351 y(X)g(macro)f(`)p Fu(\\include)p FC('.)2000 61813
+y(These)436 b(\014les)f(ma)-34 b(y)435 b(also)g(include)g(other)h
+(\014les)f(themselv)-34 b(es.)632 b(Ho)-34 b(w)g(ev)g(er,)443
+b(to)436 b(format)f(the)h(do)34 b(cumen)-34 b(t)436 b(y)-34
+b(ou)2000 63274 y(m)g(ust)405 b(run)g(the)g(commands)g(on)f(the)h(top)f
+(lev)-34 b(el)403 b(master)i(\014le.)3660 65045 y(When)456
+b(y)-34 b(ou,)468 b(for)455 b(example,)467 b(ask)455
+b(A)-34 b(UCT)22502 65306 y(E)23177 65045 y(X)455 b(to)g(run)h(a)f
+(command)h(on)g(the)f(master)g(\014le,)468 b(it)455 b(has)h(no)2000
+66506 y(w)-34 b(a)g(y)387 b(of)f(kno)-34 b(wing)386 b(the)h(name)f(of)g
+(the)g(master)g(\014le.)532 b(By)385 b(default,)390 b(it)c(will)f
+(assume)h(that)h(the)f(curren)-34 b(t)386 b(\014le)2000
+67967 y(is)344 b(the)g(master)g(\014le.)518 b(If)344
+b(y)-34 b(ou)344 b(insert)g(the)g(follo)-34 b(wing)345
+b(in)e(y)-34 b(our)344 b(init)g(\014le)g(\()p Fu(init.el)j
+FC(or)c Fu(.emacs)p FC(\),)358 b(A)-34 b(UCT)48416 68228
+y(E)49091 67967 y(X)2000 69429 y(will)404 b(use)g(a)g(more)g(adv)-67
+b(anced)404 b(algorithm.)5200 71200 y Fu(\(setq-default)641
+b(TeX-master)f(nil\))e(;)e FC(Query)404 b(for)g(master)g(\014le.)p
+eop end
+%%Page: 70 75
+TeXDict begin 70 74 bop 2000 -1550 a FC(Chapter)405 b(5:)539
+b(Customization)405 b(and)g(Extension)24903 b(70)3660
+3985 y(In)355 b(this)g(case,)364 b(A)-34 b(UCT)13635
+4246 y(E)14310 3985 y(X)354 b(will)h(ask)f(for)h(the)g(name)g(of)g(the)
+g(master)f(\014le)h(asso)34 b(ciated)354 b(with)i(the)f(bu\013er.)2000
+5446 y(T)-101 b(o)437 b(a)-34 b(v)g(oid)437 b(asking)g(y)-34
+b(ou)437 b(again,)445 b(A)-34 b(UCT)20089 5707 y(E)20764
+5446 y(X)436 b(will)h(automatically)f(insert)h(the)g(name)g(of)g(the)g
+(master)g(\014le)2000 6907 y(as)448 b(a)f(\014le)g(v)-67
+b(ariable)447 b(\(see)g(Section)h(\\File)f(V)-101 b(ariables")447
+b(in)g Ft(The)h(Emacs)g(Editor)87 b FC(\).)669 b(Y)-101
+b(ou)448 b(can)g(also)f(insert)2000 8369 y(the)405 b(\014le)e(v)-67
+b(ariable)403 b(y)-34 b(ourself,)404 b(b)-34 b(y)405
+b(putting)g(the)g(follo)-34 b(wing)405 b(text)f(at)h(the)f(end)h(of)f
+(y)-34 b(our)404 b(\014les.)5200 10162 y Fu(\045\045\045)637
+b(Local)i(Variables:)5200 11623 y(\045\045\045)e(TeX-master:)k
+("master")5200 13084 y(\045\045\045)c(End:)3660 14878
+y FC(Y)-101 b(ou)346 b(should)g(alw)-34 b(a)g(ys)346
+b(set)g(this)f(v)-67 b(ariable)344 b(to)i(the)g(name)f(of)h(the)f(top)h
+(lev)-34 b(el)344 b(do)34 b(cumen)-34 b(t.)520 b(If)346
+b(y)-34 b(ou)345 b(alw)-34 b(a)g(ys)2000 16339 y(use)434
+b(the)h(same)f(name)g(for)h(y)-34 b(our)434 b(top)h(lev)-34
+b(el)433 b(do)34 b(cumen)-34 b(ts,)443 b(y)-34 b(ou)434
+b(can)g(set)h Fu(TeX-master)i FC(in)e(y)-34 b(our)434
+b(init)g(\014le)2000 17800 y(suc)-34 b(h)405 b(as)f Fu(init.el)j
+FC(or)d Fu(.emacs)p FC(.)5200 19593 y Fu(\(setq-default)641
+b(TeX-master)f("master"\))f(;)e FC(All)404 b(master)g(\014les)g(called)
+f Fu("master")p FC(.)42818 22051 y([User)h(Option])-48000
+b Fm(TeX-master)5200 23512 y FC(The)405 b(master)g(\014le)g(asso)34
+b(ciated)405 b(with)g(the)h(curren)-34 b(t)405 b(bu\013er.)541
+b(If)405 b(the)g(\014le)g(b)34 b(eing)404 b(edited)i(is)e(actually)5200
+24973 y(included)382 b(from)g(another)g(\014le,)j(then)e(y)-34
+b(ou)382 b(can)f(tell)g(A)-34 b(UCT)32167 25234 y(E)32842
+24973 y(X)381 b(the)h(name)g(of)g(the)g(master)f(\014le)h(b)-34
+b(y)5200 26434 y(setting)405 b(this)f(v)-67 b(ariable.)538
+b(If)404 b(there)g(are)f(m)-34 b(ultiple)405 b(lev)-34
+b(els)403 b(of)h(nesting,)h(sp)34 b(ecify)403 b(the)i(top)g(lev)-34
+b(el)403 b(\014le.)5200 28227 y(If)h(this)h(v)-67 b(ariable)403
+b(is)g Fu(nil)p FC(,)i(A)-34 b(UCT)20525 28488 y(E)21200
+28227 y(X)404 b(will)g(query)f(y)-34 b(ou)405 b(for)f(the)g(name.)5200
+30021 y(If)g(the)h(v)-67 b(ariable)402 b(is)i Fu(t)p
+FC(,)g(then)h(A)-34 b(UCT)21737 30282 y(E)22412 30021
+y(X)404 b(will)g(assume)g(the)h(\014le)f(is)g(a)g(master)g(\014le)g
+(itself.)5200 31814 y(If)380 b(the)h(v)-67 b(ariable)379
+b(is)h Fu(shared)p FC(,)387 b(then)381 b(A)-34 b(UCT)24781
+32075 y(E)25456 31814 y(X)380 b(will)g(query)f(for)h(the)h(name,)k(but)
+d(will)d(not)i(c)-34 b(hange)5200 33275 y(the)404 b(\014le.)5200
+35068 y(If)325 b(the)h(v)-67 b(ariable)325 b(is)g Fu(dwim)p
+FC(,)342 b(A)-34 b(UCT)20508 35329 y(E)21183 35068 y(X)326
+b(will)f(try)g(to)h(a)-34 b(v)g(oid)326 b(querying)f(b)-34
+b(y)326 b(attempting)h(to)f(\\do)g(what)5200 36530 y(I)404
+b(mean";)g(and)h(then)g(c)-34 b(hange)404 b(the)h(\014le.)42818
+38987 y([User)f(Option])-48000 b Fm(TeX-one-master)5200
+40448 y FC(Regular)404 b(expression)g(matc)-34 b(hing)405
+b(ordinary)f(T)26422 40709 y(E)27096 40448 y(X)g(\014les.)5200
+42242 y(Y)-101 b(ou)375 b(should)g(set)g(this)g(v)-67
+b(ariable)373 b(to)i(matc)-34 b(h)376 b(the)f(name)g(of)f(all)g
+(\014les,)380 b(for)375 b(whic)-34 b(h)375 b(it)g(is)f(a)h(go)34
+b(o)g(d)374 b(idea)5200 43703 y(to)420 b(app)34 b(end)421
+b(a)g Fu(TeX-master)i FC(\014le)d(v)-67 b(ariable)419
+b(en)-34 b(try)420 b(automatically)-101 b(.)586 b(When)421
+b(A)-34 b(UCT)43462 43964 y(E)44136 43703 y(X)421 b(adds)f(the)5200
+45164 y(name)431 b(of)g(the)h(master)f(\014le)g(as)g(a)g(\014le)f(v)-67
+b(ariable,)437 b(it)430 b(do)34 b(es)431 b(not)h(need)f(to)h(ask)e
+(next)i(time)e(y)-34 b(ou)432 b(edit)5200 46625 y(the)404
+b(\014le.)5200 48418 y(If)444 b(y)-34 b(ou)445 b(dislik)-34
+b(e)443 b(A)-34 b(UCT)15864 48679 y(E)16539 48418 y(X)444
+b(automatically)g(mo)34 b(difying)444 b(y)-34 b(our)445
+b(\014les,)453 b(y)-34 b(ou)445 b(can)f(set)h(this)f(v)-67
+b(ariable)5200 49880 y(to)380 b(`)p Fu("<none>")p FC('.)532
+b(By)379 b(default,)385 b(A)-34 b(UCT)22889 50141 y(E)23563
+49880 y(X)380 b(will)e(mo)34 b(dify)380 b(an)-34 b(y)379
+b(\014le)g(with)i(an)e(extension)h(of)f(`)p Fu(.tex)p
+FC(',)5200 51341 y(`)p Fu(.texi)p FC(')405 b(or)f(`)p
+Fu(.dtx)p FC('.)43872 53798 y([Command])-47999 b Fm
+(TeX-master-file-ask)5200 55259 y FC(\()p Fs(C-c)405
+b(_)p FC(\))522 b(Query)d(for)i(the)g(name)f(of)h(a)f(master)h(\014le)f
+(and)h(add)h(the)e(resp)34 b(ectiv)-34 b(e)520 b(File)f(V)-101
+b(ariables)5200 56721 y(\(see)351 b(Section)h(\\File)f(V)-101
+b(ariables")351 b(in)g Ft(The)h(Emacs)f(Editor)87 b FC(\))352
+b(to)g(the)g(\014le)f(for)g(setting)h(this)g(v)-67 b(ariable)5200
+58182 y(p)34 b(ermanen)-34 b(tly)-101 b(.)5200 59975
+y(A)-34 b(UCT)8532 60236 y(E)9207 59975 y(X)343 b(will)g(not)i(ask)e
+(for)h(a)g(master)g(\014le)f(when)h(it)g(encoun)-34 b(ters)345
+b(existing)e(\014les.)518 b(This)345 b(function)5200
+61436 y(shall)404 b(giv)-34 b(e)404 b(y)-34 b(ou)404
+b(the)h(p)34 b(ossibilit)-34 b(y)404 b(to)g(insert)g(the)h(v)-67
+b(ariable)403 b(man)-34 b(ually)-101 b(.)3660 63894 y(A)-34
+b(UCT)6992 64155 y(E)7667 63894 y(X)421 b(k)-34 b(eeps)421
+b(trac)-34 b(k)422 b(of)f(macros,)k(en)-34 b(vironmen)g(ts,)426
+b(lab)34 b(els,)425 b(and)d(st)-34 b(yle)421 b(\014les)g(that)h(are)f
+(used)h(in)f(a)2000 65355 y(giv)-34 b(en)429 b(do)34
+b(cumen)-34 b(t.)617 b(F)-101 b(or)429 b(this)h(to)g(w)-34
+b(ork)430 b(with)g(m)-34 b(ulti\014le)430 b(do)34 b(cumen)-34
+b(ts,)437 b(A)-34 b(UCT)37743 65616 y(E)38418 65355 y(X)430
+b(has)g(to)g(ha)-34 b(v)g(e)430 b(a)f(place)2000 66816
+y(to)482 b(put)g(the)g(information)g(ab)34 b(out)483
+b(the)e(\014les)h(in)f(the)h(do)34 b(cumen)-34 b(t.)771
+b(This)482 b(is)f(done)h(b)-34 b(y)482 b(ha)-34 b(ving)482
+b(an)g Fu(auto)2000 68277 y FC(sub)34 b(directory)368
+b(placed)h(in)f(the)h(directory)f(where)g(y)-34 b(our)369
+b(do)34 b(cumen)-34 b(t)370 b(is)e(lo)34 b(cated.)526
+b(Eac)-34 b(h)369 b(time)f(y)-34 b(ou)369 b(sa)-34 b(v)g(e)369
+b(a)2000 69738 y(\014le,)338 b(A)-34 b(UCT)7556 69999
+y(E)8231 69738 y(X)322 b(will)f(write)i(information)g(ab)34
+b(out)323 b(the)f(\014le)g(in)-34 b(to)323 b(the)g Fu(auto)g
+FC(directory)-101 b(.)511 b(When)322 b(y)-34 b(ou)323
+b(load)f(a)2000 71200 y(\014le,)381 b(A)-34 b(UCT)7599
+71461 y(E)8274 71200 y(X)375 b(will)h(read)f(the)i(information)f(in)g
+(the)g Fu(auto)i FC(directory)d(ab)34 b(out)376 b(the)h(\014le)e(y)-34
+b(ou)376 b(loaded)g Fo(and)p eop end
+%%Page: 71 76
+TeXDict begin 71 75 bop 2000 -1550 a FC(Chapter)405 b(5:)539
+b(Customization)405 b(and)g(Extension)24903 b(71)2000
+3985 y Fo(the)440 b(master)f(\014le)i(sp)-62 b(e)g(ci\014e)g(d)438
+b(by)i Fu(TeX-master)p FC(.)565 b(Since)412 b(the)g(master)g(\014le)g
+(\(p)34 b(erhaps)412 b(indirectly\))g(includes)2000 5446
+y(all)342 b(other)h(\014les)f(in)g(the)h(do)34 b(cumen)-34
+b(t,)356 b(A)-34 b(UCT)21685 5707 y(E)22360 5446 y(X)342
+b(will)g(get)g(information)i(from)f(all)e(\014les)i(in)f(the)h(do)34
+b(cumen)-34 b(t.)2000 6907 y(This)441 b(means)g(that)g(y)-34
+b(ou)441 b(will)f(get)g(from)h(eac)-34 b(h)441 b(\014le,)448
+b(for)441 b(example,)448 b(completion)441 b(for)f(all)g(lab)34
+b(els)440 b(de\014ned)2000 8369 y(an)-34 b(ywhere)405
+b(in)f(the)g(do)34 b(cumen)-34 b(t.)3660 10071 y(A)g(UCT)6992
+10332 y(E)7667 10071 y(X)631 b(will)g(create)g(the)h
+Fu(auto)g FC(directory)f(automatically)g(if)h Fu(TeX-auto-save)j
+FC(is)d(non-nil.)2000 11533 y(Without)557 b(it,)593 b(the)556
+b(\014les)g(in)g(the)g(do)34 b(cumen)-34 b(t)557 b(will)e(not)h(kno)-34
+b(w)557 b(an)-34 b(ything)557 b(ab)34 b(out)557 b(eac)-34
+b(h)556 b(other,)593 b(except)2000 12994 y(for)404 b(the)h(name)f(of)h
+(the)f(master)g(\014le.)539 b(See)403 b(Section)i(5.5.3)e([Automatic)i
+(Lo)34 b(cal],)402 b(page)j(80.)43872 15180 y([Command])-47999
+b Fm(TeX-save-document)5200 16641 y FC(\()p Fs(C-c)405
+b(C-d)p FC(\))h(Sa)-34 b(v)g(e)405 b(all)e(bu\013ers)i(kno)-34
+b(wn)405 b(to)f(b)34 b(elong)404 b(to)h(the)g(curren)-34
+b(t)404 b(do)34 b(cumen)-34 b(t.)42818 18827 y([User)404
+b(Option])-48000 b Fm(TeX-save-query)5200 20288 y FC(If)404
+b(non-nil,)h(then)f(query)g(the)g(user)g(b)34 b(efore)404
+b(sa)-34 b(ving)405 b(eac)-34 b(h)404 b(\014le)g(with)h
+Fu(TeX-save-document)p FC(.)2000 23317 y FB(5.3)896 b(Automatic)599
+b(P)-50 b(arsing)598 b(of)g(T)23555 23672 y(E)24508 23317
+y(X)g(Files)2000 25443 y FC(A)-34 b(UCT)5332 25704 y(E)6007
+25443 y(X)382 b(dep)34 b(ends)383 b(hea)-34 b(vily)381
+b(on)i(b)34 b(eing)382 b(able)f(to)i(extract)f(information)h(from)f
+(the)h(bu\013ers)f(b)-34 b(y)383 b(parsing)2000 26904
+y(them.)528 b(Since)372 b(parsing)h(the)f(bu\013er)g(can)g(b)34
+b(e)372 b(somewhat)h(slo)-34 b(w,)379 b(the)372 b(parsing)h(is)e
+(initially)g(disabled.)528 b(Y)-101 b(ou)2000 28365 y(are)314
+b(encouraged)h(to)f(enable)h(them)g(b)-34 b(y)315 b(adding)g(the)g
+(follo)-34 b(wing)315 b(lines)f(to)h(y)-34 b(our)315
+b(init)f(\014le)h(suc)-34 b(h)315 b(as)g Fu(init.el)2000
+29826 y FC(or)404 b Fu(.emacs)p FC(.)5200 31529 y Fu(\(setq)638
+b(TeX-parse-self)j(t\))d(;)e FC(Enable)404 b(parse)h(on)f(load.)5200
+32990 y Fu(\(setq)638 b(TeX-auto-save)j(t\))c(;)g FC(Enable)404
+b(parse)g(on)h(sa)-34 b(v)g(e.)3660 34693 y(The)443 b(latter)f(command)
+h(will)f(mak)-34 b(e)442 b(A)-34 b(UCT)23954 34954 y(E)24628
+34693 y(X)443 b(store)f(the)g(parsed)h(information)g(in)f(an)h
+Fu(auto)g FC(sub-)2000 36154 y(directory)435 b(in)h(the)g(directory)f
+(eac)-34 b(h)436 b(time)f(the)i(T)24289 36415 y(E)24962
+36154 y(X)f(\014les)g(are)f(stored,)444 b(see)435 b(Section)h(5.5.3)f
+([Automatic)2000 37615 y(Lo)34 b(cal],)500 b(page)483
+b(80.)773 b(If)483 b(A)-34 b(UCT)15906 37876 y(E)16581
+37615 y(X)482 b(\014nds)i(the)f(pre-parsed)f(information)i(when)f
+(loading)g(a)f(\014le,)502 b(it)482 b(will)2000 39077
+y(not)527 b(need)f(to)g(reparse)f(the)i(bu\013er.)904
+b(The)526 b(information)h(in)f(the)g Fu(auto)i FC(directory)d(is)g
+(also)h(useful)h(for)2000 40538 y(m)-34 b(ulti\014le)465
+b(do)34 b(cumen)-34 b(ts,)480 b(see)464 b(Section)h(5.2)f
+([Multi\014le],)478 b(page)465 b(69,)479 b(since)464
+b(it)g(allo)-34 b(ws)465 b(eac)-34 b(h)465 b(\014le)f(to)h(access)2000
+41999 y(the)321 b(parsed)g(information)h(from)f(all)f(the)h(other)g
+(\014les)f(in)h(the)g(do)34 b(cumen)-34 b(t.)512 b(This)321
+b(is)f(done)i(b)-34 b(y)321 b(\014rst)g(reading)2000
+43460 y(the)492 b(information)h(from)f(the)g(master)g(\014le,)513
+b(and)493 b(then)f(recursiv)-34 b(ely)490 b(the)j(information)f(from)g
+(eac)-34 b(h)492 b(\014le)2000 44921 y(stored)404 b(in)h(the)f(master)g
+(\014le.)3660 46624 y(The)h(v)-67 b(ariables)403 b(can)h(also)g(b)34
+b(e)404 b(set)g(on)h(a)f(p)34 b(er)403 b(\014le)h(basis,)g(b)-34
+b(y)405 b(c)-34 b(hanging)405 b(the)g(\014le)f(lo)34
+b(cal)402 b(v)-67 b(ariables.)5200 48327 y Fu(\045\045\045)637
+b(Local)i(Variables:)5200 49788 y(\045\045\045)e(TeX-parse-self:)642
+b(t)5200 51249 y(\045\045\045)637 b(TeX-auto-save:)642
+b(t)5200 52711 y(\045\045\045)637 b(End:)3660 54413 y
+FC(Ev)-34 b(en)517 b(when)g(y)-34 b(ou)516 b(ha)-34 b(v)g(e)517
+b(disabled)f(the)h(automatic)g(parsing,)544 b(y)-34 b(ou)517
+b(can)f(force)g(the)g(generation)h(of)2000 55875 y(st)-34
+b(yle)411 b(information)g(b)-34 b(y)411 b(pressing)g
+Fs(C-c)406 b(C-n)p FC(.)559 b(This)411 b(is)g(often)g(the)h(b)34
+b(est)411 b(c)-34 b(hoice,)411 b(as)g(y)-34 b(ou)411
+b(will)g(b)34 b(e)410 b(able)h(to)2000 57336 y(decide)404
+b(when)h(it)f(is)g(necessary)f(to)i(reparse)e(the)i(\014le.)42818
+59522 y([User)f(Option])-48000 b Fm(TeX-parse-self)5200
+60983 y FC(P)-34 b(arse)404 b(\014le)g(after)g(loading)g(it)h(if)f(no)g
+(st)-34 b(yle)404 b(ho)34 b(ok)404 b(is)g(found)i(for)e(it.)42818
+63169 y([User)g(Option])-48000 b Fm(TeX-auto-save)5200
+64630 y FC(Automatically)404 b(sa)-34 b(v)g(e)404 b(st)-34
+b(yle)404 b(information)h(when)g(sa)-34 b(ving)405 b(the)f(bu\013er.)
+43872 66816 y([Command])-47999 b Fm(TeX-normal-mode)612
+b Fi(arg)5200 68277 y FC(\()p Fs(C-c)405 b(C-n)p FC(\))368
+b(Remo)-34 b(v)g(e)367 b(all)f(information)i(ab)34 b(out)367
+b(this)g(bu\013er,)375 b(and)367 b(apply)g(the)g(st)-34
+b(yle)366 b(ho)34 b(oks)367 b(again.)5200 69738 y(Sa)-34
+b(v)g(e)360 b(bu\013er)f(\014rst)h(including)f(st)-34
+b(yle)359 b(information.)525 b(With)359 b(optional)h(argumen)-34
+b(t,)369 b(also)359 b(reload)f(the)5200 71200 y(st)-34
+b(yle)404 b(ho)34 b(oks.)p eop end
+%%Page: 72 77
+TeXDict begin 72 76 bop 2000 -1550 a FC(Chapter)405 b(5:)539
+b(Customization)405 b(and)g(Extension)24903 b(72)3660
+3985 y(When)434 b(A)-34 b(UCT)10557 4246 y(E)11231 3985
+y(X)433 b(sa)-34 b(v)g(es)433 b(y)-34 b(our)434 b(bu\013er,)440
+b(it)433 b(can)g(optionally)g(con)-34 b(v)g(ert)433 b(all)f(tabs)i(in)f
+(y)-34 b(our)433 b(bu\013er)g(in)-34 b(to)2000 5446 y(spaces.)531
+b(T)-101 b(abs)381 b(confuse)h(A)-34 b(UCT)16685 5707
+y(E)17359 5446 y(X's)381 b(error)e(message)i(parsing)g(and)g(so)g
+(should)h(generally)d(b)34 b(e)381 b(a)-34 b(v)g(oided.)2000
+6907 y(Ho)g(w)g(ev)g(er,)470 b(tabs)458 b(are)e(signi\014can)-34
+b(t)458 b(in)f(some)f(en)-34 b(vironmen)g(ts,)471 b(and)457
+b(so)g(b)-34 b(y)457 b(default)h(A)-34 b(UCT)43422 7168
+y(E)44097 6907 y(X)457 b(do)34 b(es)456 b(not)2000 8369
+y(remo)-34 b(v)g(e)423 b(them.)599 b(T)-101 b(o)424 b(con)-34
+b(v)g(ert)424 b(tabs)h(to)f(spaces)g(when)h(sa)-34 b(ving)424
+b(a)g(bu\013er,)k(insert)c(the)g(follo)-34 b(wing)425
+b(in)f(y)-34 b(our)2000 9830 y(init)404 b(\014le)g(suc)-34
+b(h)405 b(as)f Fu(init.el)j FC(or)d Fu(.emacs)p FC(:)5200
+11583 y Fu(\(setq)638 b(TeX-auto-untabify)643 b(t\))42818
+13921 y FC([User)404 b(Option])-48000 b Fm(TeX-auto-untabify)5200
+15382 y FC(Automatically)404 b(remo)-34 b(v)g(e)404 b(all)f(tabs)i
+(from)g(a)f(\014le)g(b)34 b(efore)403 b(sa)-34 b(ving)405
+b(it.)3660 17720 y(Instead)320 b(of)e(disabling)h(the)g(parsing)g(en)
+-34 b(tirely)-101 b(,)335 b(y)-34 b(ou)319 b(can)f(also)g(sp)34
+b(eed)319 b(it)f(signi\014can)-34 b(tly)319 b(up)g(b)-34
+b(y)319 b(limiting)2000 19181 y(the)536 b(information)g(it)f(will)g
+(searc)-34 b(h)535 b(for)g(\(and)i(store\))e(when)h(parsing)g(the)g
+(bu\013er.)932 b(Y)-101 b(ou)535 b(can)h(do)f(this)2000
+20643 y(b)-34 b(y)603 b(setting)f(the)h(default)g(v)-67
+b(alues)602 b(for)g(the)g(bu\013er)h(lo)34 b(cal)601
+b(v)-67 b(ariables)601 b Fu(TeX-auto-regexp-list)609
+b FC(and)2000 22104 y Fu(TeX-auto-parse-length)412 b
+FC(in)404 b(y)-34 b(our)404 b(init)g(\014le)g(suc)-34
+b(h)405 b(as)f Fu(init.el)j FC(or)d Fu(.emacs)p FC(.)5200
+23857 y Fu(;;)637 b FC(Only)404 b(parse)g(LaT)-101 b(eX)404
+b(class)f(and)i(pac)-34 b(k)-67 b(age)404 b(information.)5200
+25318 y Fu(\(setq-default)641 b(TeX-auto-regexp-list)i
+('LaTeX-auto-minimal-regexp-list\))5200 26780 y(;;)637
+b FC(The)405 b(class)e(and)i(pac)-34 b(k)-67 b(age)404
+b(information)h(is)f(usually)g(near)g(the)h(b)34 b(eginning.)5200
+28241 y Fu(\(setq-default)641 b(TeX-auto-parse-length)j(2000\))3660
+29994 y FC(This)535 b(example)f(will)g(sp)34 b(eed)535
+b(the)f(parsing)h(up)g(signi\014can)-34 b(tly)-101 b(,)568
+b(but)535 b(A)-34 b(UCT)38632 30255 y(E)39307 29994 y(X)534
+b(will)g(no)h(longer)f(b)34 b(e)2000 31455 y(able)499
+b(to)h(pro)-34 b(vide)500 b(completion)f(for)h(lab)34
+b(els,)522 b(macros,)h(en)-34 b(vironmen)g(ts,)524 b(or)499
+b(bibitems)h(sp)34 b(eci\014ed)499 b(in)g(the)2000 32917
+y(do)34 b(cumen)-34 b(t,)405 b(nor)f(will)g(it)g(kno)-34
+b(w)405 b(what)g(\014les)f(b)34 b(elong)404 b(to)h(the)f(do)34
+b(cumen)-34 b(t.)3660 34670 y(These)272 b(v)-67 b(ariables)270
+b(can)h(also)g(b)34 b(e)271 b(sp)34 b(eci\014ed)271 b(on)g(a)g(p)34
+b(er)271 b(\014le)g(basis,)297 b(b)-34 b(y)272 b(c)-34
+b(hanging)272 b(the)g(\014le)e(lo)34 b(cal)270 b(v)-67
+b(ariables.)5200 36423 y Fu(\045\045\045)637 b(Local)i(Variables:)5200
+37885 y(\045\045\045)e(TeX-auto-regexp-list:)644 b
+(TeX-auto-full-regexp-list)5200 39346 y(\045\045\045)637
+b(TeX-auto-parse-length:)645 b(999999)5200 40807 y(\045\045\045)637
+b(End:)42818 43145 y FC([User)404 b(Option])-48000 b
+Fm(TeX-auto-regexp-list)5200 44606 y FC(List)404 b(of)g(regular)g
+(expressions)g(used)g(for)g(parsing)h(the)g(curren)-34
+b(t)404 b(\014le.)42818 46944 y([User)g(Option])-48000
+b Fm(TeX-auto-parse-length)5200 48405 y FC(Maximal)403
+b(length)i(of)g(T)16008 48666 y(E)16681 48405 y(X)g(\014le)e(that)j
+(will)d(b)34 b(e)404 b(parsed.)3660 50743 y(The)481 b(pre-sp)34
+b(eci\014ed)479 b(lists)h(of)g(regexps)f(are)g(de\014ned)i(b)34
+b(elo)-34 b(w.)765 b(Y)-101 b(ou)481 b(can)e(use)h(these)g(b)34
+b(efore)480 b(loading)2000 52204 y(A)-34 b(UCT)5332 52465
+y(E)6007 52204 y(X)404 b(b)-34 b(y)404 b(quoting)h(them,)f(as)h(in)f
+(the)g(example)g(ab)34 b(o)-34 b(v)g(e.)44505 54542 y([Constan)g(t])
+-47998 b Fm(TeX-auto-empty-regexp-list)5200 56003 y FC(P)-34
+b(arse)404 b(nothing)44505 58341 y([Constan)-34 b(t])-47998
+b Fm(LaTeX-auto-minimal-regexp-list)5200 59802 y FC(Only)404
+b(parse)g(L)11694 59645 y Fv(a)12255 59802 y FC(T)12928
+60063 y(E)13601 59802 y(X)g(class)g(and)h(pac)-34 b(k)-67
+b(ages.)44505 62140 y([Constan)-34 b(t])-47998 b Fm
+(LaTeX-auto-label-regexp-list)5200 63601 y FC(Only)404
+b(parse)g(L)11694 63444 y Fv(a)12255 63601 y FC(T)12928
+63862 y(E)13601 63601 y(X)g(lab)34 b(els.)44505 65939
+y([Constan)-34 b(t])-47998 b Fm(LaTeX-auto-index-regexp-list)5200
+67401 y FC(Only)404 b(parse)g(L)11694 67244 y Fv(a)12255
+67401 y FC(T)12928 67662 y(E)13601 67401 y(X)g(index)g(and)h(glossary)f
+(en)-34 b(tries.)44505 69738 y([Constan)g(t])-47998 b
+Fm(LaTeX-auto-class-regexp-list)5200 71200 y FC(Only)404
+b(parse)g(macros)g(in)g(L)17226 71043 y Fv(a)17787 71200
+y FC(T)18460 71461 y(E)19133 71200 y(X)g(classes)g(and)h(pac)-34
+b(k)-67 b(ages.)p eop end
+%%Page: 73 78
+TeXDict begin 73 77 bop 2000 -1550 a FC(Chapter)405 b(5:)539
+b(Customization)405 b(and)g(Extension)24903 b(73)44505
+3985 y([Constan)-34 b(t])-47998 b Fm(LaTeX-auto-pagestyle-regexp-list)
+5200 5446 y FC(Only)404 b(parse)g(L)11694 5289 y Fv(a)12255
+5446 y FC(T)12928 5707 y(E)13601 5446 y(X)g(pagest)-34
+b(yles.)44505 7908 y([Constan)g(t])-47998 b Fm
+(LaTeX-auto-counter-regexp-list)5200 9369 y FC(Only)404
+b(parse)g(L)11694 9212 y Fv(a)12255 9369 y FC(T)12928
+9630 y(E)13601 9369 y(X)g(coun)-34 b(ters.)44505 11831
+y([Constan)g(t])-47998 b Fm(LaTeX-auto-length-regexp-list)5200
+13293 y FC(Only)404 b(parse)g(L)11694 13136 y Fv(a)12255
+13293 y FC(T)12928 13554 y(E)13601 13293 y(X)g(lengths.)44505
+15755 y([Constan)-34 b(t])-47998 b Fm(LaTeX-auto-savebox-regexp-list)
+5200 17216 y FC(Only)404 b(parse)g(L)11694 17059 y Fv(a)12255
+17216 y FC(T)12928 17477 y(E)13601 17216 y(X)g(sa)-34
+b(v)g(eb)34 b(o)-34 b(xes.)44505 19678 y([Constan)g(t])-47998
+b Fm(LaTeX-auto-regexp-list)5200 21139 y FC(P)-34 b(arse)404
+b(common)g(L)13663 20982 y Fv(a)14224 21139 y FC(T)14897
+21400 y(E)15571 21139 y(X)g(commands.)44505 23601 y([Constan)-34
+b(t])-47998 b Fm(plain-TeX-auto-regexp-list)5200 25062
+y FC(P)-34 b(arse)404 b(common)g(plain)h(T)17045 25323
+y(E)17718 25062 y(X)g(commands.)44505 27524 y([Constan)-34
+b(t])-47998 b Fm(TeX-auto-full-regexp-list)5200 28985
+y FC(P)-34 b(arse)404 b(all)f(T)10849 29246 y(E)11523
+28985 y(X)h(and)h(L)15515 28828 y Fv(a)16076 28985 y
+FC(T)16749 29246 y(E)17423 28985 y(X)f(commands)h(that)g(A)-34
+b(UCT)30694 29246 y(E)31369 28985 y(X)404 b(can)g(use.)2000
+32199 y FB(5.4)896 b(Language)598 b(Supp)50 b(ort)2000
+34324 y FC(T)2673 34585 y(E)3347 34324 y(X)482 b(and)h(Emacs)e(are)h
+(usable)g(for)g(Europ)34 b(ean)483 b(\(Latin,)501 b(Cyrillic,)f
+(Greek\))481 b(based)i(languages.)773 b(Some)2000 35785
+y(L)2322 35628 y Fv(a)2883 35785 y FC(T)3556 36046 y(E)4230
+35785 y(X)378 b(and)i(EmacsLisp)e(pac)-34 b(k)-67 b(ages)379
+b(are)f(a)-34 b(v)-67 b(ailable)378 b(for)h(easy)f(t)-34
+b(yp)34 b(esetting)380 b(and)g(editing)f(do)34 b(cumen)-34
+b(ts)380 b(in)2000 37247 y(Europ)34 b(ean)404 b(languages.)3660
+39042 y(All)387 b(Emacs)f(v)-34 b(ersions)387 b(supp)34
+b(orted)388 b(b)-34 b(y)388 b(curren)-34 b(t)387 b(A)-34
+b(UCT)28933 39303 y(E)29608 39042 y(X)386 b(can)h(handle)h
+Fr(CJK)f FC(\(Chinese,)k(Japanese,)2000 40503 y(and)405
+b(Korean\))f(languages)h(b)-34 b(y)404 b(default.)3660
+42299 y(In)491 b(most)g(cases,)511 b(sp)34 b(ecial)490
+b(v)-34 b(ersions)490 b(of)g(T)22660 42560 y(E)23334
+42299 y(X)h(engines)f(are)g(needed)h(for)f(high-qualit)-34
+b(y)491 b(t)-34 b(yp)34 b(esetting)2000 43760 y(of)409
+b Fr(CJK)g FC(languages:)547 b(CT)13579 44021 y(E)14254
+43760 y(X)408 b(and)h(ChinaT)21769 44021 y(E)22444 43760
+y(X)g(for)f(Chinese,)i(ASCI)34 b(I)409 b(pT)35604 44021
+y(E)36278 43760 y(X,)g(upT)39952 44021 y(E)40627 43760
+y(X)f(and)h(NTT)h(jT)48417 44021 y(E)49091 43760 y(X)2000
+45221 y(for)497 b(Japanese,)519 b(HL)10772 45064 y Fv(a)11333
+45221 y FC(T)12006 45482 y(E)12680 45221 y(X)496 b(and)i(kT)17848
+45482 y(E)18521 45221 y(X)f(for)f(Korean.)816 b(They)496
+b(are)g(necessary)g(as)g(w)-34 b(ell)497 b(when)g(y)-34
+b(ou)497 b(w)-34 b(an)g(t)2000 46682 y(to)495 b(t)-34
+b(yp)34 b(eset)494 b(do)34 b(cumen)-34 b(ts)496 b(sa)-34
+b(v)g(ed)495 b(in)f(their)g(domestic)g(enco)34 b(dings)495
+b(suc)-34 b(h)495 b(as)f(`)p Fu(Shift-JIS)p FC('.)812
+b(Curren)-34 b(tly)-101 b(,)2000 48144 y(A)-34 b(UCT)5332
+48405 y(E)6007 48144 y(X)404 b(o\013ers)g(nativ)-34 b(e)404
+b(supp)34 b(ort)405 b(for)f(pT)21854 48405 y(E)22529
+48144 y(X,)f(upT)26197 48405 y(E)26872 48144 y(X)h(and)h(jT)31585
+48405 y(E)32259 48144 y(X)f(only)-101 b(.)3660 49939
+y(If)422 b(y)-34 b(ou)421 b(don't)h(need)f(\014ne)h(tuning)g(in)g(the)f
+(result)g(with)h(resp)34 b(ect)421 b(to)g(the)h(t)-34
+b(yp)34 b(esetting)422 b(rules)f(of)g(their)2000 51400
+y(resp)34 b(ectiv)-34 b(e)437 b(national)i(standards,)449
+b(most)439 b(unico)34 b(de)438 b(based)h(T)29931 51661
+y(E)30605 51400 y(X)f(engines,)447 b(e.g.)437 b(LuaT)41547
+51661 y(E)42221 51400 y(X)h(and)i(XeT)48081 51661 y(E)48754
+51400 y(X,)2000 52862 y(can)328 b(handle)g Fr(CJK)g FC(languages)h(b)
+-34 b(y)328 b(default)h(if)f(they)g(are)f(enco)34 b(ded)328
+b(in)g Fr(UTF)p FC(-8.)513 b(The)328 b Fr(CJK)p FC(-L)42747
+52705 y Fv(a)43308 52862 y FC(T)43981 53123 y(E)44655
+52862 y(X)g(pac)-34 b(k)-67 b(age)2000 54323 y(is)404
+b(pro)-34 b(vided)404 b(for)h(supp)34 b(orting)405 b
+Fr(CJK)f FC(scripts)h(in)f(a)g(standard)h(L)30460 54166
+y Fv(a)31021 54323 y FC(T)31694 54584 y(E)32368 54323
+y(X)f(do)34 b(cumen)-34 b(t.)2000 56982 y Fq(5.4.1)818
+b(Using)545 b(A)-45 b(UCT)15308 57305 y(E)16176 56982
+y(X)546 b(with)f(Europ)45 b(ean)547 b(Languages)2000
+59805 y(5.4.1.1)818 b(T)-45 b(yping)544 b(and)i(Displa)-45
+b(ying)545 b(Non-ASCI)45 b(I)547 b(Characters)2000 61764
+y FC(First)487 b(y)-34 b(ou)488 b(will)f(need)g(a)h(w)-34
+b(a)g(y)488 b(to)f(write)g(non-ASCI)34 b(I)488 b(c)-34
+b(haracters.)788 b(Y)-101 b(ou)488 b(can)f(either)g(use)h(macros,)507
+b(or)2000 63225 y(teac)-34 b(h)439 b(T)5906 63486 y(E)6580
+63225 y(X)g(ab)34 b(out)440 b(the)f Fr(ISO)f FC(c)-34
+b(haracter)439 b(sets.)643 b(I)438 b(prefer)g(the)i(latter,)447
+b(it)438 b(has)i(the)f(adv)-67 b(an)-34 b(tage)440 b(that)f(the)2000
+64686 y(usual)405 b(standard)g(emacs)f(w)-34 b(ord)405
+b(mo)-34 b(v)g(emen)g(t)405 b(and)g(case)f(c)-34 b(hange)405
+b(commands)g(will)e(w)-34 b(ork.)3660 66482 y(Recommended)973
+b(enco)34 b(ding)972 b(for)g(L)20723 66325 y Fv(a)21284
+66482 y FC(T)21957 66743 y(E)22630 66482 y(X)g(do)34
+b(cumen)-34 b(t)973 b(is)f Fr(UTF)p FC(-8.)2242 b(Recen)-34
+b(t)972 b(L)43309 66325 y Fv(a)43870 66482 y FC(T)44543
+66743 y(E)45217 66482 y(X2e)f(has)2000 67943 y(nativ)-34
+b(e)1055 b(supp)34 b(ort)1057 b(for)e Fr(UTF)p FC(-8.)2492
+b(If)1055 b(y)-34 b(our)1055 b(L)25724 67786 y Fv(a)26285
+67943 y FC(T)26958 68204 y(E)27632 67943 y(X2e)g(is)f(not)i(recen)-34
+b(t)1055 b(enough,)1219 b(just)1056 b(add)2000 69404
+y(`)p Fu(\\usepackage[utf8]{inputenc})p FC('.)3660 71200
+y(Y)-101 b(ou)405 b(can)f(still)g(use)g Fr(ISO)g FC(8859)g(Latin)g(1)g
+(enco)34 b(ding)405 b(with)g(`)p Fu(\\usepackage[latin1]{inputenc})p
+FC('.)p eop end
+%%Page: 74 79
+TeXDict begin 74 78 bop 2000 -1550 a FC(Chapter)405 b(5:)539
+b(Customization)405 b(and)g(Extension)24903 b(74)3660
+3985 y(T)-101 b(o)316 b(b)34 b(e)315 b(able)g(to)g(displa)-34
+b(y)316 b(non-ASCI)34 b(I)316 b(c)-34 b(haracters)315
+b(y)-34 b(ou)316 b(will)e(need)i(an)f(appropriate)h(fon)-34
+b(t.)510 b(All)315 b(Emacs)2000 5446 y(v)-34 b(ersions)350
+b(supp)34 b(orted)351 b(b)-34 b(y)351 b(curren)-34 b(t)351
+b(A)-34 b(UCT)21312 5707 y(E)21986 5446 y(X)350 b(can)h(displa)-34
+b(y)350 b(8-bit)h(c)-34 b(haracters,)361 b(pro)-34 b(vided)350
+b(that)i(suitable)2000 6907 y(fon)-34 b(ts)406 b(are)d(installed.)3660
+8642 y(A)397 b(compromise)e(is)h(to)h(use)f(an)g(Europ)34
+b(ean)397 b(c)-34 b(haracter)396 b(set)g(when)h(editing)f(the)h
+(\014le,)g(and)g(con)-34 b(v)g(ert)397 b(to)2000 10103
+y(T)2673 10364 y(E)3347 10103 y(X)404 b(macros)g(when)h(reading)f(and)h
+(writing)f(the)h(\014les.)2000 12110 y Fu(iso-cvt.el)8400
+13571 y FC(Muc)-34 b(h)405 b(lik)-34 b(e)403 b Fu(iso-tex.el)408
+b FC(but)d(is)f(bundled)h(with)g(Emacs)f(19.23)g(and)h(later.)2000
+15578 y Fu(X-Symbol)1312 b FC(a)396 b(m)-34 b(uc)g(h)396
+b(more)f(complete)h(pac)-34 b(k)-67 b(age)395 b(for)g(Emacs)h(that)g
+(can)g(also)f(handle)h(a)g(lot)f(of)h(mathe-)8400 17039
+y(matical)404 b(c)-34 b(haracters)404 b(and)h(input)g(metho)34
+b(ds.)2000 19577 y Fq(5.4.1.2)818 b(St)-45 b(yle)544
+b(Files)g(for)i(Di\013eren)-45 b(t)544 b(Languages)2000
+21537 y FC(A)-34 b(UCT)5332 21798 y(E)6007 21537 y(X)489
+b(supp)34 b(orts)490 b(st)-34 b(yle)490 b(\014les)f(for)g(sev)-34
+b(eral)488 b(languages.)795 b(Eac)-34 b(h)489 b(st)-34
+b(yle)490 b(\014le)f(ma)-34 b(y)489 b(mo)34 b(dify)489
+b(A)-34 b(UCT)48416 21798 y(E)49091 21537 y(X)2000 22998
+y(to)629 b(b)34 b(etter)628 b(supp)34 b(ort)629 b(the)g(language,)685
+b(and)629 b(will)f(run)g(a)h(language)g(sp)34 b(eci\014c)627
+b(ho)34 b(ok)628 b(that)i(will)e(allo)-34 b(w)2000 24459
+y(y)g(ou)506 b(to)f(for)h(example)e(c)-34 b(hange)506
+b(isp)34 b(ell)504 b(dictionary)-101 b(,)530 b(or)505
+b(run)h(co)34 b(de)505 b(to)g(c)-34 b(hange)506 b(the)g(k)-34
+b(eyb)34 b(oard)505 b(remap-)2000 25920 y(ping.)721 b(The)465
+b(follo)-34 b(wing)465 b(will)g(for)f(example)h(c)-34
+b(ho)34 b(ose)464 b(a)h(Danish)g(dictionary)g(for)g(do)34
+b(cumen)-34 b(ts)466 b(including)2000 27381 y(`)p Fu
+(\\usepackage[danish]{babel})p FC('.)517 b(This)313 b(requires)f
+(parsing)i(to)f(b)34 b(e)313 b(enabled,)331 b(see)313
+b(Section)g(5.3)g([P)-34 b(ars-)2000 28843 y(ing)404
+b(Files],)f(page)h(71.)5200 30577 y Fu(\(add-hook)640
+b('TeX-language-dk-hook)11564 32038 y(\(lambda)e(\(\))f
+(\(ispell-change-dictionary)646 b("danish"\)\)\))3660
+33772 y FC(The)405 b(follo)-34 b(wing)405 b(st)-34 b(yle)404
+b(\014les)g(are)f(recognized:)2000 35779 y Fu(brazilian)2000
+37240 y(brazil)2584 b FC(Runs)356 b(st)-34 b(yle)355
+b(ho)34 b(ok)354 b Fu(TeX-language-pt-br-hook)p FC(.)530
+b(Giv)-34 b(es)355 b(`)p Fu(")p FC(')f(w)-34 b(ord)356
+b(syn)-34 b(tax,)365 b(mak)-34 b(es)354 b(the)8400 38701
+y Fu(")493 b FC(k)-34 b(ey)493 b(inserts)g(`)p Fu(``)p
+FC(')g(or)f(`)p Fu('')p FC(')h(dep)34 b(ending)494 b(on)g(con)-34
+b(text.)805 b(T)-34 b(yping)494 b Fu(")f FC(t)-34 b(wice)494
+b(will)e(insert)h(a)8400 40162 y(literal)403 b(`)p Fu(")p
+FC('.)538 b(T)-34 b(yping)405 b Fu(-)g FC(t)-34 b(wice)404
+b(will)g(insert)g(`)p Fu("=)p FC(',)g(three)g(times)g(`)p
+Fu(--)p FC('.)2000 42169 y Fu(bulgarian)8400 43631 y
+FC(Runs)443 b(st)-34 b(yle)443 b(ho)34 b(ok)442 b Fu
+(TeX-language-bg-hook)p FC(.)660 b(Giv)-34 b(es)442 b(`)p
+Fu(")p FC(')f(w)-34 b(ord)444 b(syn)-34 b(tax,)452 b(mak)-34
+b(es)442 b(the)h Fu(")8400 45092 y FC(k)-34 b(ey)531
+b(insert)g(a)g(literal)f(`)p Fu(")p FC('.)919 b(T)-34
+b(yping)532 b Fu(")f FC(t)-34 b(wice)531 b(will)g(insert)g(`)p
+Fu("`)p FC(')g(or)g(`)p Fu("')p FC(')g(dep)34 b(ending)532
+b(on)8400 46553 y(con)-34 b(text.)539 b(T)-34 b(yping)405
+b Fu(-)g FC(t)-34 b(wice)404 b(will)g(insert)g(`)p Fu("=)p
+FC(',)f(three)i(times)f(`)p Fu(--)p FC('.)2000 48560
+y Fu(czech)3220 b FC(Runs)427 b(st)-34 b(yle)427 b(ho)34
+b(ok)426 b Fu(TeX-language-cz-hook)p FC(.)612 b(Pressing)426
+b Fu(")h FC(will)f(insert)g(`)p Fu(\\uv{)p FC(')h(and)g(`)p
+Fu(})p FC(')8400 50021 y(dep)34 b(ending)405 b(on)f(con)-34
+b(text.)2000 52028 y Fu(danish)2584 b FC(Runs)481 b(st)-34
+b(yle)479 b(ho)34 b(ok)479 b Fu(TeX-language-dk-hook)p
+FC(.)771 b(Pressing)479 b Fu(")h FC(will)f(insert)g(`)p
+Fu("`)p FC(')h(and)g(`)p Fu("')p FC(')8400 53489 y(dep)34
+b(ending)571 b(on)f(con)-34 b(text.)1037 b(T)-34 b(yping)571
+b Fu(-)f FC(t)-34 b(wice)571 b(will)e(insert)h(`)p Fu("=)p
+FC(',)611 b(i.e.)569 b(a)h(h)-34 b(yphen)572 b(string)8400
+54950 y(allo)-34 b(wing)404 b(h)-34 b(yphenation)407
+b(in)d(the)g(comp)34 b(osing)405 b(w)-34 b(ords.)2000
+56957 y Fu(dutch)3220 b FC(Runs)405 b(st)-34 b(yle)404
+b(ho)34 b(ok)404 b Fu(TeX-language-nl-hook)p FC(.)2000
+58964 y Fu(english)2000 60426 y(australian)2000 61887
+y(canadian)2000 63348 y(newzealand)8400 64809 y FC(Runs)h(st)-34
+b(yle)404 b(ho)34 b(ok)404 b Fu(TeX-language-en-hook)p
+FC(.)2000 66816 y Fu(frenchb)2000 68277 y(francais)1312
+b FC(Runs)643 b(st)-34 b(yle)642 b(ho)34 b(ok)642 b Fu
+(TeX-language-fr-hook)p FC(.)1259 b(Pressing)642 b Fu(")g
+FC(will)g(insert)g(`)p Fu(\\og)p FC(')g(and)8400 69738
+y(`)p Fu(\\fg)p FC(')594 b(dep)34 b(ending)594 b(on)g(con)-34
+b(text.)1108 b(Note)594 b(that)g(the)g(language)g(name)g(for)g
+(customizing)8400 71200 y Fu(TeX-quote-language-alist)413
+b FC(is)403 b(`)p Fu(french)p FC('.)p eop end
+%%Page: 75 80
+TeXDict begin 75 79 bop 2000 -1550 a FC(Chapter)405 b(5:)539
+b(Customization)405 b(and)g(Extension)24903 b(75)2000
+3985 y Fu(german)2000 5446 y(ngerman)1948 b FC(Runs)443
+b(st)-34 b(yle)443 b(ho)34 b(ok)442 b Fu(TeX-language-de-hook)p
+FC(.)660 b(Giv)-34 b(es)442 b(`)p Fu(")p FC(')f(w)-34
+b(ord)444 b(syn)-34 b(tax,)452 b(mak)-34 b(es)442 b(the)h
+Fu(")8400 6907 y FC(k)-34 b(ey)431 b(insert)g(a)g(literal)g(`)p
+Fu(")p FC('.)619 b(Pressing)431 b(the)h(k)-34 b(ey)431
+b(t)-34 b(wice)431 b(will)g(giv)-34 b(e)431 b(y)-34 b(ou)432
+b(op)34 b(ening)431 b(or)g(closing)8400 8369 y(German)404
+b(quotes)h(\(`)p Fu("`)p FC(')f(or)g(`)p Fu("')p FC('\).)539
+b(T)-34 b(yping)405 b Fu(-)g FC(t)-34 b(wice)404 b(will)f(insert)i(`)p
+Fu("=)p FC(',)e(three)h(times)g(`)p Fu(--)p FC('.)2000
+10465 y Fu(icelandic)8400 11926 y FC(Runs)443 b(st)-34
+b(yle)443 b(ho)34 b(ok)442 b Fu(TeX-language-is-hook)p
+FC(.)660 b(Giv)-34 b(es)442 b(`)p Fu(")p FC(')f(w)-34
+b(ord)444 b(syn)-34 b(tax,)452 b(mak)-34 b(es)442 b(the)h
+Fu(")8400 13387 y FC(k)-34 b(ey)531 b(insert)g(a)g(literal)f(`)p
+Fu(")p FC('.)919 b(T)-34 b(yping)532 b Fu(")f FC(t)-34
+b(wice)531 b(will)g(insert)g(`)p Fu("`)p FC(')g(or)g(`)p
+Fu("')p FC(')g(dep)34 b(ending)532 b(on)8400 14849 y(con)-34
+b(text.)539 b(T)-34 b(yping)405 b Fu(-)g FC(t)-34 b(wice)404
+b(will)g(insert)g(`)p Fu("=)p FC(',)f(three)i(times)f(`)p
+Fu(--)p FC('.)2000 16945 y Fu(italian)1948 b FC(Runs)481
+b(st)-34 b(yle)479 b(ho)34 b(ok)479 b Fu(TeX-language-it-hook)p
+FC(.)771 b(Pressing)479 b Fu(")h FC(will)f(insert)g(`)p
+Fu("<)p FC(')h(and)g(`)p Fu(">)p FC(')8400 18406 y(dep)34
+b(ending)405 b(on)f(con)-34 b(text.)2000 20503 y Fu(polish)2584
+b FC(Runs)350 b(st)-34 b(yle)349 b(ho)34 b(ok)349 b Fu
+(TeX-language-pl-hook)p FC(.)528 b(Giv)-34 b(es)349 b(`)p
+Fu(")p FC(')f(w)-34 b(ord)350 b(syn)-34 b(tax)350 b(and)g(mak)-34
+b(es)349 b(the)8400 21964 y Fu(")425 b FC(k)-34 b(ey)424
+b(insert)h(a)g(literal)e(`)p Fu(")p FC('.)601 b(Pressing)424
+b Fu(")h FC(t)-34 b(wice)425 b(will)f(insert)h(`)p Fu("`)p
+FC(')g(or)f(`)p Fu("')p FC(')h(dep)34 b(ending)426 b(on)8400
+23425 y(con)-34 b(text.)2000 25522 y Fu(polski)2584 b
+FC(Runs)442 b(st)-34 b(yle)441 b(ho)34 b(ok)441 b Fu
+(TeX-language-pl-hook)p FC(.)656 b(Mak)-34 b(es)441 b(the)g
+Fu(")g FC(k)-34 b(ey)441 b(insert)g(a)g(literal)f(`)p
+Fu(")p FC('.)8400 26983 y(Pressing)404 b Fu(")g FC(t)-34
+b(wice)405 b(will)e(insert)h(`)p Fu(,,)p FC(')g(or)g(`)p
+Fu('')p FC(')g(dep)34 b(ending)405 b(on)g(con)-34 b(text.)2000
+29079 y Fu(portuguese)2000 30541 y(portuges)1312 b FC(Runs)443
+b(st)-34 b(yle)443 b(ho)34 b(ok)442 b Fu(TeX-language-pt-hook)p
+FC(.)660 b(Giv)-34 b(es)442 b(`)p Fu(")p FC(')f(w)-34
+b(ord)444 b(syn)-34 b(tax,)452 b(mak)-34 b(es)442 b(the)h
+Fu(")8400 32002 y FC(k)-34 b(ey)325 b(inserts)h(`)p Fu("<)p
+FC(')g(or)g(`)p Fu(">)p FC(')g(dep)34 b(ending)326 b(on)h(con)-34
+b(text.)513 b(T)-34 b(yping)327 b Fu(")f FC(t)-34 b(wice)326
+b(will)f(insert)h(a)g(literal)8400 33463 y(`)p Fu(")p
+FC('.)758 b(T)-34 b(yping)478 b Fu(-)g FC(t)-34 b(wice)477
+b(will)g(insert)h(`)p Fu("=)p FC(',)495 b(three)477 b(times)g(`)p
+Fu(--)p FC('.)759 b(Note)477 b(that)i(the)f(language)8400
+34924 y(name)404 b(for)h(customizing)f Fu(TeX-quote-language-alist)413
+b FC(is)403 b(`)p Fu(portuguese)p FC('.)2000 37021 y
+Fu(slovak)2584 b FC(Runs)427 b(st)-34 b(yle)427 b(ho)34
+b(ok)426 b Fu(TeX-language-sk-hook)p FC(.)612 b(Pressing)426
+b Fu(")h FC(will)f(insert)g(`)p Fu(\\uv{)p FC(')h(and)g(`)p
+Fu(})p FC(')8400 38482 y(dep)34 b(ending)405 b(on)f(con)-34
+b(text.)2000 40578 y Fu(swedish)1948 b FC(Runs)396 b(st)-34
+b(yle)396 b(ho)34 b(ok)395 b Fu(TeX-language-sv-hook)p
+FC(.)542 b(Pressing)395 b Fu(")h FC(will)f(insert)g(`)p
+Fu('')p FC('.)535 b(T)-34 b(yping)397 b Fu(-)8400 42039
+y FC(t)-34 b(wice)404 b(will)g(insert)g(`)p Fu("=)p FC(',)g(three)g
+(times)g(`)p Fu(--)p FC('.)3660 44136 y(Replacemen)-34
+b(t)331 b(of)f(language-sp)34 b(eci\014c)329 b(h)-34
+b(yphen)331 b(strings)f(lik)-34 b(e)329 b(`)p Fu("=)p
+FC(')h(with)h(dashes)f(do)34 b(es)330 b(not)g(require)f(to)2000
+45597 y(t)-34 b(yp)34 b(e)407 b Fu(-)h FC(three)f(times)g(in)g(a)g(ro)
+-34 b(w.)548 b(Y)-101 b(ou)408 b(can)f(put)h(p)34 b(oin)-34
+b(t)408 b(after)f(the)h(h)-34 b(yp)34 b(en)408 b(string)f(an)-34
+b(ytime)408 b(and)g(trigger)2000 47058 y(the)d(replacemen)-34
+b(t)404 b(b)-34 b(y)404 b(t)-34 b(yping)405 b Fu(-)p
+FC(.)3660 48837 y(In)628 b(case)g(y)-34 b(ou)628 b(are)g(not)h
+(satis\014ed)f(with)h(the)g(suggested)g(b)34 b(eha)-34
+b(vior)627 b(of)i(quote)f(and)h(h)-34 b(yphen)629 b(in-)2000
+50298 y(sertion)523 b(y)-34 b(ou)523 b(can)g(c)-34 b(hange)523
+b(it)f(b)-34 b(y)524 b(customizing)e(the)i(v)-67 b(ariables)521
+b Fu(TeX-quote-language-alist)531 b FC(and)2000 51760
+y Fu(LaTeX-babel-hyphen-language-alist)416 b FC(resp)34
+b(ectiv)-34 b(ely)-101 b(.)42818 54174 y([User)404 b(Option])-48000
+b Fm(TeX-quote-language-alist)5200 55635 y FC(Used)385
+b(for)g(o)-34 b(v)g(erriding)384 b(the)i(default)f(language-sp)34
+b(eci\014c)385 b(quote)g(insertion)g(b)34 b(eha)-34 b(vior.)532
+b(This)385 b(is)g(an)5200 57096 y(alist)409 b(where)g(eac)-34
+b(h)409 b(elemen)-34 b(t)409 b(is)g(a)g(list)g(consisting)h(of)f(four)h
+(items.)553 b(The)410 b(\014rst)f(item)g(is)g(the)h(name)5200
+58557 y(of)341 b(the)g(language)g(in)g(concern)f(as)h(a)g(string.)518
+b(See)340 b(the)h(list)g(of)g(supp)34 b(orted)342 b(languages)f(ab)34
+b(o)-34 b(v)g(e.)517 b(The)5200 60018 y(second)439 b(item)g(is)g(the)g
+(op)34 b(ening)440 b(quotation)g(mark.)643 b(The)439
+b(third)h(item)f(is)g(the)g(closing)g(quotation)5200
+61480 y(mark.)530 b(Op)34 b(ening)382 b(and)g(closing)f(quotation)h
+(marks)f(can)h(b)34 b(e)381 b(sp)34 b(eci\014ed)381 b(directly)f(as)i
+(strings)g(or)f(as)5200 62941 y(functions)350 b(returning)e(a)g
+(string.)521 b(The)348 b(fourth)i(item)e(is)f(a)i(b)34
+b(o)g(olean)347 b(con)-34 b(trolling)349 b(quote)f(insertion.)5200
+64402 y(It)337 b(should)h(b)34 b(e)336 b(non-nil)i(if)f(if)g(the)g(sp)
+34 b(ecial)336 b(quotes)h(should)h(only)f(b)34 b(e)336
+b(used)i(after)f(inserting)g(a)g(literal)5200 65863 y(`)p
+Fu(")p FC(')404 b(c)-34 b(haracter)404 b(\014rst,)g(i.e.)f(on)h(second)
+h(k)-34 b(ey)403 b(press.)42818 68277 y([User)h(Option])-48000
+b Fm(LaTeX-babel-hyphen-language-alist)5200 69738 y FC(Used)515
+b(for)f(o)-34 b(v)g(erriding)514 b(the)h(b)34 b(eha)-34
+b(vior)514 b(of)h(h)-34 b(yphen)515 b(insertion)g(for)f(sp)34
+b(eci\014c)514 b(languages.)870 b(Ev)-34 b(ery)5200 71200
+y(elemen)g(t)384 b(in)g(this)g(alist)g(is)f(a)h(list)g(of)g(three)g
+(items.)531 b(The)385 b(\014rst)f(item)g(should)g(sp)34
+b(ecify)384 b(the)g(a\013ected)p eop end
+%%Page: 76 81
+TeXDict begin 76 80 bop 2000 -1550 a FC(Chapter)405 b(5:)539
+b(Customization)405 b(and)g(Extension)24903 b(76)5200
+3985 y(language)523 b(as)g(a)g(string.)895 b(The)523
+b(second)h(item)e(denotes)i(the)f(h)-34 b(yphen)524 b(string)g(to)f(b)
+34 b(e)523 b(used)g(as)g(a)5200 5446 y(string.)1002 b(The)559
+b(third)g(item,)596 b(a)559 b(b)34 b(o)g(olean,)596 b(con)-34
+b(trols)559 b(the)g(b)34 b(eha)-34 b(vior)558 b(of)h(h)-34
+b(yphen)560 b(insertion)e(and)5200 6907 y(should)408
+b(b)34 b(e)407 b(non-nil)h(if)f(the)g(sp)34 b(ecial)407
+b(h)-34 b(yphen)408 b(should)g(b)34 b(e)407 b(inserted)g(after)h
+(inserting)f(a)g(literal)f(`)p Fu(-)p FC(')5200 8369
+y(c)-34 b(haracter,)404 b(i.e.)e(on)j(second)f(k)-34
+b(ey)404 b(press.)3660 10839 y(The)393 b(defaults)h(of)f(h)-34
+b(yphen)393 b(insertion)g(are)f(de\014ned)h(b)-34 b(y)393
+b(the)g(v)-67 b(ariables)391 b Fu(LaTeX-babel-hyphen)399
+b FC(and)2000 12300 y Fu(LaTeX-babel-hyphen-after-hyphen)415
+b FC(resp)34 b(ectiv)-34 b(ely)-101 b(.)42818 14770 y([User)404
+b(Option])-48000 b Fm(LaTeX-babel-hyphen)5200 16231 y
+FC(String)356 b(to)f(b)34 b(e)355 b(used)g(when)h(t)-34
+b(yping)356 b Fu(-)p FC(.)523 b(This)355 b(usually)g(is)g(a)g(h)-34
+b(yphen)356 b(alternativ)-34 b(e)355 b(or)g(h)-34 b(yphenation)5200
+17692 y(aid)404 b(pro)-34 b(vided)405 b(b)-34 b(y)404
+b(`)p Fu(babel)p FC(')h(and)g(the)g(related)f(language)g(st)-34
+b(yle)404 b(\014les,)g(lik)-34 b(e)403 b(`)p Fu("=)p
+FC(',)h(`)p Fu("~)p FC(')g(or)g(`)p Fu("-)p FC('.)5200
+19491 y(Set)362 b(it)f(to)h(an)g(empt)-34 b(y)362 b(string)g(or)f(nil)g
+(in)h(order)f(to)g(disable)h(language-sp)34 b(eci\014c)361
+b(h)-34 b(yphen)363 b(insertion.)42818 21961 y([User)404
+b(Option])-48000 b Fm(LaTeX-babel-hyphen-after-hyphen)5200
+23423 y FC(Con)-34 b(trol)573 b(insertion)g(of)g(h)-34
+b(yphen)573 b(strings.)1044 b(If)572 b(non-nil)h(insert)g(normal)f(h)
+-34 b(yphen)574 b(on)f(\014rst)f(k)-34 b(ey)5200 24884
+y(press)474 b(and)i(sw)-34 b(ap)475 b(it)g(with)g(the)g(language-sp)34
+b(eci\014c)474 b(h)-34 b(yphen)476 b(string)f(sp)34 b(eci\014ed)474
+b(in)g(the)h(v)-67 b(ariable)5200 26345 y Fu(LaTeX-babel-hyphen)410
+b FC(on)405 b(second)f(k)-34 b(ey)404 b(press.)538 b(If)405
+b(nil)e(do)i(it)f(the)h(other)f(w)-34 b(a)g(y)405 b(round.)2000
+29008 y Fq(5.4.2)818 b(Using)545 b(A)-45 b(UCT)15308
+29331 y(E)16176 29008 y(X)546 b(with)f(Japanese)h(T)29488
+29331 y(E)30358 29008 y(X)2000 30967 y FC(T)-101 b(o)287
+b(write)f(Japanese)h(text)g(with)g(A)-34 b(UCT)20057
+31228 y(E)20732 30967 y(X,)310 b(y)-34 b(ou)286 b(need)h(the)g(v)-34
+b(ersions)286 b(of)h(T)35554 31228 y(E)36228 30967 y(X)g(and)g(Emacs)f
+(that)i(supp)34 b(ort)2000 32428 y(Japanese.)733 b(A)-34
+b(UCT)11139 32689 y(E)11814 32428 y(X)469 b(supp)34 b(orts)470
+b(three)e(Japanese)i(T)27268 32689 y(E)27941 32428 y(X)f(engines)g(b)
+-34 b(y)469 b(default:)669 b(NTT)470 b(jT)44228 32689
+y(E)44902 32428 y(X,)485 b(ASCI)34 b(I)2000 33890 y(pT)3346
+34151 y(E)4020 33890 y(X)404 b(and)h(upT)9709 34151 y(E)10384
+33890 y(X.)3660 35689 y(Activ)-67 b(ate)330 b Fu
+(japanese-plain-tex-mode)339 b FC(or)330 b Fu(japanese-latex-mode)337
+b FC(to)331 b(use)g(the)f(Japanese)h(T)48417 35950 y(E)49091
+35689 y(X)2000 37150 y(engines.)683 b(If)453 b(it)f(do)34
+b(esn't)453 b(w)-34 b(ork,)464 b(send)453 b(mail)f(to)h(Masa)-34
+b(yuki)453 b(A)-34 b(tak)-67 b(a)452 b Fu(masayuki.ataka@gmail.com)461
+b FC(or)2000 38611 y(Ikumi)522 b(Keita)h Fu(ikumikeita@jcom.home.ne.jp)
+p FC(,)561 b(who)524 b(curren)-34 b(tly)522 b(concern)h(with)g(stu\013)
+h(related)f(to)2000 40073 y(Japanese)369 b(in)f(A)-34
+b(UCT)11816 40334 y(E)12490 40073 y(X.)527 b(None)368
+b(of)h(the)g(primary)e(A)-34 b(UCT)28670 40334 y(E)29345
+40073 y(X)368 b(main)-34 b(tainers)369 b(understand)h(Japanese,)376
+b(so)2000 41534 y(they)404 b(cannot)h(help)g(y)-34 b(ou.)3660
+43333 y(It)435 b(is)g(recommended)g(to)g(enable)g Fu(TeX-parse-self)440
+b FC(for)435 b(t)-34 b(ypical)434 b(Japanese)h(L)40006
+43176 y Fv(a)40567 43333 y FC(T)41240 43594 y(E)41914
+43333 y(X)g(users.)631 b(When)2000 44795 y(enabled,)k
+Fu(japanese-latex-mode)595 b FC(selects)588 b(the)h(suitable)g
+(Japanese)g(T)36634 45055 y(E)37308 44795 y(X)f(engine)h(automatically)
+2000 46256 y(based)385 b(on)f(the)h(class)f(\014le)f(name)i(\(suc)-34
+b(h)385 b(as)f Fu(jbook)p FC(,)390 b Fu(jsarticle)d FC(and)e
+Fu(tjreport)p FC(\))i(and)e(its)f(option.)533 b(See)2000
+47717 y(Section)404 b(5.3)g([P)-34 b(arsing)404 b(Files],)f(page)i(71.)
+3660 49516 y(It)455 b(is)f(imp)34 b(ortan)-34 b(t)456
+b(to)f(select)f(the)h(suitable)g(Japanese)g(T)29532 49777
+y(E)30206 49516 y(X)f(engine)h(b)34 b(ecause)454 b(the)h(selected)f
+(engine)2000 50978 y(determines)536 b(the)h(command)f(name)h(suc)-34
+b(h)537 b(as)f Fu(platex)i FC(and)f Fu(uptex)h FC(to)e(t)-34
+b(yp)34 b(eset)537 b(the)f(do)34 b(cumen)-34 b(t.)936
+b(If)2000 52439 y(y)-34 b(ou)490 b(\014nd)i(that)f(wrong)f(command)h
+(is)f(used,)512 b(c)-34 b(hec)g(k)489 b(the)i(v)-67 b(alue)489
+b(of)h Fu(TeX-engine)k FC(on)c(that)h(bu\013er.)797 b(If)2000
+53900 y(the)476 b(v)-67 b(alue)476 b(do)34 b(es)476 b(not)g(suit)h(the)
+f(curren)-34 b(t)477 b(do)34 b(cumen)-34 b(t,)495 b(c)-34
+b(hange)476 b(the)h(v)-67 b(alue)475 b(b)-34 b(y)476
+b(the)h(`)p Fu(TeXing)406 b(Options)p FC(')2000 55361
+y(submen)-34 b(u)406 b(b)34 b(elo)-34 b(w)404 b(the)h(`)p
+Fu(Command)p FC(')h(men)-34 b(u.)539 b(See)404 b(Section)g(4.1.3)g
+([Pro)34 b(cessor)403 b(Options],)h(page)g(57.)3660 57161
+y(T)-101 b(o)445 b(mak)-34 b(e)445 b(the)g(selected)e(engine)i(to)g(p)
+34 b(ersist)444 b(across)g(Emacs)h(sessions,)454 b(there)444
+b(are)g(t)-34 b(w)g(o)446 b(w)-34 b(a)g(ys)446 b(from)2000
+58622 y(whic)-34 b(h)405 b(y)-34 b(ou)405 b(can)f(c)-34
+b(ho)34 b(ose)404 b(one)g(according)g(to)h(y)-34 b(our)404
+b(needs:)2657 60421 y(1.)800 b(If)415 b(y)-34 b(ou)415
+b(use)g(a)g(sp)34 b(eci\014c)415 b(engine)g(\(almost\))h(exclusiv)-34
+b(ely)-101 b(,)415 b(customize)g(the)g(option)h Fu(japanese-TeX-)4400
+61883 y(engine-default)p FC(.)42818 64349 y([User)404
+b(Option])-45600 b Fm(japanese-TeX-engine-default)7600
+65811 y FC(The)405 b(default)g Fu(TeX-engine)i FC(in)d(Japanese)h(T)
+28162 66071 y(E)28836 65811 y(X)f(mo)34 b(de.)7600 67607
+y(The)405 b(default)g(v)-67 b(alue)403 b(is)h(`)p Fu(ptex)p
+FC('.)2657 69738 y(2.)800 b(If)559 b(y)-34 b(ou)559 b(w)-34
+b(an)g(t)561 b(to)e(set)h(the)f(engine)g(on)g(a)g(p)34
+b(er)558 b(\014le)h(basis,)598 b(use)559 b(the)g(\014le)g(lo)34
+b(cal)558 b(v)-67 b(ariables)557 b(to)j(set)4400 71200
+y Fu(TeX-engine)p FC(.)p eop end
+%%Page: 77 82
+TeXDict begin 77 81 bop 2000 -1550 a FC(Chapter)405 b(5:)539
+b(Customization)405 b(and)g(Extension)24903 b(77)4400
+3985 y(Here)403 b(is)h(a)g(sample)g(co)34 b(de)404 b(to)h(set)f
+Fu(TeX-engine)j FC(to)e(`)p Fu(uptex)p FC(':)7600 5840
+y Fu(\045\045\045)637 b(Local)i(Variables:)7600 7302
+y(\045\045\045)e(mode:)i(japanese-latex)7600 8763 y(\045\045\045)e
+(TeX-engine:)k(uptex)7600 10224 y(\045\045\045)c(End:)3660
+12536 y FC(In)405 b(the)f(b)34 b(oth)405 b(cases)f(ab)34
+b(o)-34 b(v)g(e,)404 b(the)g(v)-67 b(alid)404 b(v)-67
+b(alue)403 b(is)h(one)g(of)h(`)p Fu(ptex)p FC(',)f(`)p
+Fu(jtex)p FC(')h(and)g(`)p Fu(uptex)p FC('.)3660 14453
+y(Y)-101 b(ou)382 b(can)f(o)-34 b(v)g(erride)380 b(the)i(command)g
+(names)f(asso)34 b(ciated)381 b(with)h(the)f(ab)34 b(o)-34
+b(v)g(e)382 b(three)f(engines)g(or)f(de\014ne)2000 15914
+y(y)-34 b(our)360 b(o)-34 b(wn)360 b(engine)f(b)-34 b(y)360
+b(customizing)g Fu(TeX-engine-alist)p FC(.)529 b(See)359
+b(Section)h(4.1.3)f([Pro)34 b(cessor)358 b(Options],)2000
+17375 y(page)404 b(57.)3660 19293 y(It)446 b(is)f(sometimes)g
+(necessary)g(to)h(use)g(an)f(engine)h(whic)-34 b(h)446
+b(di\013ers)f(from)h(the)g(one)f(A)-34 b(UCT)44590 19554
+y(E)45265 19293 y(X)446 b(selects)2000 20754 y(automatically)-101
+b(.)633 b(F)-101 b(or)435 b(example,)443 b(ev)-34 b(en)435
+b(when)i(y)-34 b(ou)436 b(w)-34 b(an)g(t)437 b(to)f(use)g
+Fu(j-article)i FC(do)34 b(cumen)-34 b(t)437 b(class)e(delib-)2000
+22215 y(erately)409 b(with)h(ASCI)34 b(I)410 b(pL)13554
+22058 y Fv(a)14115 22215 y FC(T)14788 22476 y(E)15462
+22215 y(X,)h(A)-34 b(UCT)20451 22476 y(E)21125 22215
+y(X)410 b(selects)f(NTT)i(jL)29996 22058 y Fv(a)30557
+22215 y FC(T)31230 22476 y(E)31904 22215 y(X)e(command)i(if)f
+Fu(TeX-parse-self)k FC(is)2000 23676 y(enabled,)453 b(b)34
+b(ecause)443 b Fu(j-article)j FC(originally)c(b)34 b(elongs)443
+b(to)h(NTT)g(jL)32625 23519 y Fv(a)33186 23676 y FC(T)33859
+23937 y(E)34533 23676 y(X.)656 b(In)443 b(suc)-34 b(h)444
+b(cases,)452 b(use)444 b(the)f(\014le)2000 25138 y(lo)34
+b(cal)403 b(v)-67 b(ariable)403 b(metho)34 b(d)405 b(ab)34
+b(o)-34 b(v)g(e)404 b(to)g(select)g(the)g(engine)g(y)-34
+b(ou)405 b(in)-34 b(tend)405 b(to)g(use.)3660 27055 y(If)g(y)-34
+b(ou)404 b(usually)g(use)h(A)-34 b(UCT)16737 27316 y(E)17411
+27055 y(X)404 b(in)h(Japanese,)f(setting)g(the)h(follo)-34
+b(wing)405 b(v)-67 b(ariables)403 b(is)h(useful.)42818
+29761 y([User)g(Option])-48000 b Fm(TeX-default-mode)5200
+31222 y FC(Mo)34 b(de)448 b(to)h(en)-34 b(ter)448 b(for)g(a)h(new)f
+(\014le)g(when)h(it)g(cannot)g(b)34 b(e)448 b(determined)g(whether)h
+(the)g(\014le)f(is)g(plain)5200 32683 y(T)5873 32944
+y(E)6547 32683 y(X)404 b(or)g(L)9667 32526 y Fv(a)10228
+32683 y FC(T)10901 32944 y(E)11574 32683 y(X)g(or)g(what.)5200
+34601 y(If)316 b(y)-34 b(ou)317 b(w)-34 b(an)g(t)318
+b(to)e(en)-34 b(ter)317 b(Japanese)f(L)21149 34444 y
+Fv(a)21710 34601 y FC(T)22383 34862 y(E)23057 34601 y(X)g(mo)34
+b(de)316 b(whenev)-34 b(er)316 b(this)h(ma)-34 b(y)316
+b(happ)34 b(en,)334 b(set)317 b(the)f(v)-67 b(ariable)5200
+36062 y(lik)-34 b(e)403 b(this:)8400 37979 y Fu(\(setq)638
+b(TeX-default-mode)k('japanese-latex-mode\))42818 40685
+y FC([User)404 b(Option])-48000 b Fm(japanese-LaTeX-default-style)5200
+42146 y FC(The)405 b(default)g(st)-34 b(yle/class)403
+b(when)i(creating)f(a)g(new)h(Japanese)f(L)34424 41989
+y Fv(a)34985 42146 y FC(T)35658 42407 y(E)36332 42146
+y(X)g(do)34 b(cumen)-34 b(t.)5200 44064 y(The)405 b(default)g(v)-67
+b(alue)403 b(is)h(`)p Fu("jarticle")p FC('.)3660 46770
+y(It)453 b(is)g(recommended)f(also)h(for)g(Japanese)g(users)g(to)g
+(customize)f(the)i(option)f Fu(TeX-PDF-from-DVI)2000
+48231 y FC(to)404 b(`)p Fu("Dvipdfmx")p FC('.)542 b(See)404
+b(Section)g(4.1.3)g([Pro)34 b(cessor)402 b(Options],)j(page)f(57.)3660
+50148 y(There)g(are)g(three)g(customize)g(options)h(with)g(regard)f(to)
+g(the)h(enco)34 b(ding)404 b(of)h(Japanese)f(text.)42818
+52854 y([User)g(Option])-48000 b Fm(japanese-TeX-use-kanji-opt-flag)
+5200 54315 y FC(If)876 b(non-nil,)995 b(A)-34 b(UCT)15251
+54576 y(E)15926 54315 y(X)876 b(adds)h Fu(-kanji)i FC(option)e(to)g
+(the)g(t)-34 b(yp)34 b(esetting)877 b(command)g(when)5200
+55776 y Fu(TeX-engine)408 b FC(is)403 b(`)p Fu(ptex)p
+FC('.)3660 58482 y(Usually)528 b(A)-34 b(UCT)11500 58743
+y(E)12174 58482 y(X)528 b(guesses)f(the)h(righ)-34 b(t)528
+b(co)34 b(ding)527 b(systems)h(for)f(input)i(to)e(and)i(output)g(from)e
+(the)2000 59943 y(Japanese)404 b(T)7814 60204 y(E)8488
+59943 y(X)g(pro)34 b(cess,)404 b(but)h(y)-34 b(ou)404
+b(can)h(o)-34 b(v)g(erride)403 b(them)i(b)-34 b(y)404
+b(the)h(follo)-34 b(wing)405 b(t)-34 b(w)g(o)405 b(customize)f
+(options.)42818 62649 y([User)g(Option])-48000 b Fm
+(TeX-japanese-process-input-coding-system)5200 64110
+y FC(If)482 b(non-nil,)501 b(used)482 b(for)g(enco)34
+b(ding)481 b(input)i(to)f(Japanese)g(T)31731 64371 y(E)32405
+64110 y(X)f(pro)34 b(cess.)771 b(When)482 b Fu(nil)p
+FC(,)501 b(A)-34 b(UCT)48416 64371 y(E)49091 64110 y(X)5200
+65571 y(tries)404 b(to)g(c)-34 b(ho)34 b(ose)404 b(suitable)h(co)34
+b(ding)404 b(system.)42818 68277 y([User)g(Option])-48000
+b Fm(TeX-japanese-process-output-coding-system)5200 69738
+y FC(If)312 b(non-nil,)332 b(used)313 b(for)f(deco)34
+b(ding)313 b(output)i(from)d(Japanese)h(T)32502 69999
+y(E)33176 69738 y(X)f(pro)34 b(cess.)508 b(When)313 b
+Fu(nil)p FC(,)331 b(A)-34 b(UCT)48416 69999 y(E)49091
+69738 y(X)5200 71200 y(tries)404 b(to)g(c)-34 b(ho)34
+b(ose)404 b(suitable)h(co)34 b(ding)404 b(system.)p eop
+end
+%%Page: 78 83
+TeXDict begin 78 82 bop 2000 -1550 a FC(Chapter)405 b(5:)539
+b(Customization)405 b(and)g(Extension)24903 b(78)3660
+3985 y(The)790 b(former)e(customize)h(options)h Fu
+(japanese-TeX-command-default)p FC(,)895 b Fu(japanese-LaTeX-)2000
+5446 y(command-default)627 b FC(and)622 b Fu(japanese-TeX-command-list)
+630 b FC(are)621 b(remo)-34 b(v)g(ed)622 b(from)g(A)-34
+b(UCT)44963 5707 y(E)45637 5446 y(X.)1191 b(Use)2000
+6907 y Fu(japanese-TeX-engine-default)363 b FC(instead.)522
+b(If)353 b(y)-34 b(ou)354 b(need)f(to)h(customize)f(the)h(executable)f
+(\014le)g(name)2000 8369 y(suc)-34 b(h)405 b(as)f(`)p
+Fu("latex")p FC(',)i(the)e(options)i(for)e(them,)g(or)g(b)34
+b(oth,)405 b(customize)f Fu(TeX-engine-alist)p FC(.)3660
+10329 y(The)h(follo)-34 b(wing)405 b(t)-34 b(w)g(o)405
+b(additional)g(fon)-34 b(t)406 b(commands)f(are)f(a)-34
+b(v)-67 b(ailable)403 b(in)h(L)36518 10172 y Fv(a)37079
+10329 y FC(T)37752 10590 y(E)38425 10329 y(X)h(mo)34
+b(de)404 b(bu\013er.)2000 12706 y Fs(C-c)h(C-f)g(g)1138
+b FC(Insert)512 b Fp(gothic)g(fon)-34 b(t)513 b FC(command)g(`)p
+Fu(\\textgt{)p Fx(?)p Fu(})p FC(')h(or)e(`)p Fu(\\mathgt{)p
+Fx(?)p Fu(})p FC(')i(dep)34 b(ending)513 b(on)f(the)8400
+14167 y(con)-34 b(text.)2000 16460 y Fs(C-c)405 b(C-f)g(m)1138
+b FC(Insert)449 b(minc)-34 b(ho)449 b(fon)-34 b(t)450
+b(command)g(`)p Fu(\\textmc{)p Fx(?)p Fu(})p FC(')h(or)e(`)p
+Fu(\\mathmc{)p Fx(?)p Fu(})p FC(')i(dep)34 b(ending)449
+b(on)g(the)8400 17921 y(con)-34 b(text.)3660 20298 y(Although)423
+b(they)f(are)f(meaningful)h(only)f(with)h(`)p Fu(ptex)p
+FC(')g(and)g(`)p Fu(uptex)p FC(')h(engines,)i(it)d(w)-34
+b(on't)422 b(matter)g(in)2000 21759 y(bu\013ers)404 b(with)h(other)g
+(engines.)3660 23720 y(See)f Fu(tex-jp.el)k FC(for)c(more)f
+(information.)2000 27182 y FB(5.5)896 b(Automatic)599
+b(Customization)2000 29307 y FC(Since)517 b(A)-34 b(UCT)8610
+29568 y(E)9284 29307 y(X)517 b(is)f(so)h(highly)g(customizable,)545
+b(it)516 b(mak)-34 b(es)517 b(sense)g(that)h(it)e(is)h(able)f(to)h
+(customize)g(it-)2000 30768 y(self.)730 b(The)469 b(automatic)g
+(customization)g(consists)f(of)h(scanning)f(T)32649 31029
+y(E)33323 30768 y(X)g(\014les)g(and)h(extracting)f(sym)-34
+b(b)34 b(ols,)2000 32229 y(en)-34 b(vironmen)g(ts,)405
+b(and)g(things)g(lik)-34 b(e)403 b(that.)3660 34190 y(The)489
+b(automatic)f(customization)h(is)e(done)i(on)f(three)g(di\013eren)-34
+b(t)488 b(lev)-34 b(els.)788 b(The)489 b(global)e(lev)-34
+b(el)487 b(is)g(the)2000 35651 y(lev)-34 b(el)401 b(shared)h(b)-34
+b(y)403 b(all)e(users)h(at)g(y)-34 b(our)402 b(site,)g(and)h(consists)g
+(of)f(scanning)h(the)f(standard)i(T)42819 35912 y(E)43492
+35651 y(X)e(st)-34 b(yle)402 b(\014les,)2000 37112 y(and)500
+b(an)-34 b(y)500 b(extra)f(st)-34 b(yles)500 b(added)g(lo)34
+b(cally)498 b(for)i(all)f(users)g(on)h(the)g(site.)824
+b(The)500 b(priv)-67 b(ate)499 b(lev)-34 b(el)499 b(deals)g(with)2000
+38574 y(those)485 b(st)-34 b(yle)484 b(\014les)g(y)-34
+b(ou)484 b(ha)-34 b(v)g(e)485 b(written)g(for)f(y)-34
+b(our)484 b(o)-34 b(wn)486 b(use,)504 b(and)485 b(use)f(in)g
+(di\013eren)-34 b(t)485 b(do)34 b(cumen)-34 b(ts.)779
+b(Y)-101 b(ou)2000 40035 y(ma)-34 b(y)424 b(ha)-34 b(v)g(e)424
+b(a)g Fu(~/lib/TeX/)k FC(directory)423 b(where)h(y)-34
+b(ou)424 b(store)g(useful)h(st)-34 b(yle)423 b(\014les)h(for)g(y)-34
+b(our)424 b(o)-34 b(wn)425 b(use.)598 b(The)2000 41496
+y(lo)34 b(cal)454 b(lev)-34 b(el)453 b(is)i(for)g(a)g(sp)34
+b(eci\014c)454 b(directory)-101 b(,)467 b(and)455 b(deals)g(with)h
+(writing)f(customization)h(for)f(the)g(\014les)g(for)2000
+42957 y(y)-34 b(our)404 b(normal)g(T)9548 43218 y(E)10222
+42957 y(X)g(do)34 b(cumen)-34 b(ts.)3660 44918 y(If)459
+b(compared)g(with)h(the)f(en)-34 b(vironmen)g(t)460 b(v)-67
+b(ariable)458 b Fu(TEXINPUTS)p FC(,)475 b(the)459 b(global)g(lev)-34
+b(el)458 b(corresp)34 b(onds)459 b(to)2000 46379 y(the)530
+b(directories)f(built)i(in)-34 b(to)531 b(T)16490 46640
+y(E)17164 46379 y(X.)916 b(The)530 b(priv)-67 b(ate)530
+b(lev)-34 b(el)529 b(corresp)34 b(onds)530 b(to)g(the)h(directories)e
+(y)-34 b(ou)530 b(add)2000 47840 y(y)-34 b(ourself,)404
+b(except)g(for)g Fu(.)p FC(,)g(whic)-34 b(h)405 b(is)f(the)g(lo)34
+b(cal)403 b(lev)-34 b(el.)3660 49801 y(By)309 b(default)i(A)-34
+b(UCT)12780 50062 y(E)13455 49801 y(X)310 b(will)f(searc)-34
+b(h)310 b(for)f(customization)i(\014les)f(in)f(all)g(the)i(global,)328
+b(priv)-67 b(ate,)328 b(and)310 b(lo)34 b(cal)2000 51262
+y(st)-34 b(yle)466 b(directories,)481 b(but)468 b(y)-34
+b(ou)467 b(can)f(also)g(set)h(the)g(path)h(directly)-101
+b(.)724 b(This)467 b(is)f(useful)i(if)e(y)-34 b(ou)467
+b(for)g(example)2000 52724 y(w)-34 b(an)g(t)417 b(to)f(add)g(another)g
+(p)34 b(erson's)415 b(st)-34 b(yle)415 b(ho)34 b(oks)415
+b(to)g(y)-34 b(our)416 b(path.)573 b(Please)414 b(note)i(that)g(all)f
+(matc)-34 b(hing)416 b(\014les)2000 54185 y(found)406
+b(in)e Fu(TeX-style-path)409 b FC(are)403 b(loaded,)i(and)f(all)g(ho)34
+b(oks)404 b(de\014ned)h(in)f(the)h(\014les)f(will)f(b)34
+b(e)404 b(executed.)42818 56977 y([User)g(Option])-48000
+b Fm(TeX-style-path)5200 58439 y FC(List)404 b(of)g(directories)f(to)i
+(searc)-34 b(h)404 b(for)g(A)-34 b(UCT)25249 58699 y(E)25924
+58439 y(X)404 b(st)-34 b(yle)404 b(\014les.)3660 61231
+y(By)297 b(default,)319 b(when)298 b(A)-34 b(UCT)16171
+61492 y(E)16846 61231 y(X)297 b(searc)-34 b(hes)297 b(a)g(directory)g
+(for)g(\014les,)318 b(it)297 b(will)g(recursiv)-34 b(ely)295
+b(searc)-34 b(h)298 b(through)2000 62692 y(sub)34 b(directories.)42818
+65485 y([User)404 b(Option])-48000 b Fm(TeX-file-recurse)5200
+66946 y FC(Whether)459 b(to)g(searc)-34 b(h)459 b(T)16219
+67207 y(E)16893 66946 y(X)g(directories)f(recursiv)-34
+b(ely:)646 b(nil)459 b(means)g(do)g(not)h(recurse,)471
+b(a)459 b(p)34 b(ositiv)-34 b(e)5200 68407 y(in)g(teger)336
+b(means)h(go)f(that)h(far)f(deep)h(in)f(the)g(directory)g(hierarc)-34
+b(h)g(y)-101 b(,)349 b(t)336 b(means)h(recurse)e(inde\014nitely)-101
+b(.)3660 71200 y(By)404 b(default,)h(A)-34 b(UCT)13306
+71461 y(E)13980 71200 y(X)404 b(will)g(ignore)g(\014les)g(named)g
+Fu(.)p FC(,)h Fu(..)p FC(,)f Fu(SCCS)p FC(,)h Fu(RCS)p
+FC(,)g(and)g Fu(CVS)p FC(.)p eop end
+%%Page: 79 84
+TeXDict begin 79 83 bop 2000 -1550 a FC(Chapter)405 b(5:)539
+b(Customization)405 b(and)g(Extension)24903 b(79)42818
+3985 y([User)404 b(Option])-48000 b Fm(TeX-ignore-file)5200
+5446 y FC(Regular)404 b(expression)g(matc)-34 b(hing)405
+b(\014le)f(names)g(to)h(ignore.)5200 7171 y(These)551
+b(\014les)f(or)g(directories)f(will)g(not)i(b)34 b(e)550
+b(considered)h(when)g(searc)-34 b(hing)550 b(for)h(T)43124
+7432 y(E)43797 7171 y(X)g(\014les)f(in)g(a)5200 8632
+y(directory)-101 b(.)2000 11152 y Fq(5.5.1)818 b(Automatic)546
+b(Customization)g(for)g(the)g(Site)2000 13111 y FC(Assuming)306
+b(that)f(the)g(automatic)h(customization)f(at)g(the)g(global)g(lev)-34
+b(el)303 b(w)-34 b(as)306 b(done)f(when)h(A)-34 b(UCT)46186
+13372 y(E)46860 13111 y(X)305 b(w)-34 b(as)2000 14572
+y(installed,)362 b(y)-34 b(our)351 b(c)-34 b(hoice)351
+b(is)h(no)-34 b(w:)513 b(will)351 b(y)-34 b(ou)352 b(use)f(it?)522
+b(If)352 b(y)-34 b(ou)351 b(use)h(it,)362 b(y)-34 b(ou)352
+b(will)f(b)34 b(ene\014t)352 b(b)-34 b(y)351 b(ha)-34
+b(ving)353 b(access)2000 16034 y(to)479 b(all)f(the)h(sym)-34
+b(b)34 b(ols)479 b(and)g(en)-34 b(vironmen)g(ts)480 b(a)-34
+b(v)-67 b(ailable)478 b(for)h(completion)g(purp)34 b(oses.)762
+b(The)479 b(dra)-34 b(wbac)g(k)480 b(is)2000 17495 y(slo)-34
+b(w)g(er)441 b(load)g(time)g(when)h(y)-34 b(ou)441 b(edit)g(a)g(new)h
+(\014le)e(and)i(p)34 b(erhaps)441 b(to)34 b(o)441 b(man)-34
+b(y)442 b(confusing)g(sym)-34 b(b)34 b(ols)441 b(when)2000
+18956 y(y)-34 b(ou)405 b(try)e(to)i(do)f(a)h(completion.)3660
+20681 y(Y)-101 b(ou)613 b(can)g(disable)g(the)g(automatic)g(generated)g
+(global)f(st)-34 b(yle)613 b(ho)34 b(oks)612 b(b)-34
+b(y)613 b(setting)g(the)g(v)-67 b(ariable)2000 22142
+y Fu(TeX-auto-global)409 b FC(to)c(nil.)42818 24394 y([User)f(Option])
+-48000 b Fm(TeX-macro-global)5200 25855 y FC(Directories)403
+b(con)-34 b(taining)405 b(the)f(site's)g(T)23021 26116
+y(E)23695 25855 y(X)g(st)-34 b(yle)404 b(\014les.)42818
+28107 y([User)g(Option])-48000 b Fm(TeX-style-global)5200
+29568 y FC(Directory)403 b(con)-34 b(taining)405 b(hand)g(generated)g
+(T)25732 29829 y(E)26405 29568 y(X)f(information.)5200
+31293 y(These)g(corresp)34 b(ond)404 b(to)h(T)17038 31554
+y(E)17712 31293 y(X)f(macros)g(shared)g(b)-34 b(y)405
+b(all)e(users)h(of)h(a)f(site.)42818 33545 y([User)g(Option])-48000
+b Fm(TeX-auto-global)5200 35006 y FC(Directory)403 b(con)-34
+b(taining)405 b(automatically)f(generated)g(information.)5200
+36731 y(F)-101 b(or)298 b(storing)h(automatic)h(extracted)e
+(information)h(ab)34 b(out)300 b(the)f(T)34565 36992
+y(E)35238 36731 y(X)g(macros)f(shared)h(b)-34 b(y)299
+b(all)f(users)5200 38192 y(of)404 b(a)h(site.)2000 40712
+y Fq(5.5.2)818 b(Automatic)546 b(Customization)g(for)g(a)g(User)2000
+42672 y FC(Y)-101 b(ou)567 b(should)h(sp)34 b(ecify)566
+b(where)h(y)-34 b(ou)567 b(store)g(y)-34 b(our)567 b(priv)-67
+b(ate)566 b(T)29934 42933 y(E)30607 42672 y(X)h(macros,)607
+b(so)567 b(A)-34 b(UCT)41724 42933 y(E)42399 42672 y(X)566
+b(can)h(extract)2000 44133 y(their)397 b(information.)537
+b(The)397 b(extracted)f(information)i(will)e(go)h(to)g(the)g
+(directories)e(listed)i(in)g Fu(TeX-auto-)2000 45594
+y(private)3660 47319 y FC(Use)404 b Fs(M-x)i(TeX-auto-generate)k(RET)
+405 b FC(to)f(extract)g(the)h(information.)42818 49571
+y([User)f(Option])-48000 b Fm(TeX-macro-private)5200
+51032 y FC(Directories)526 b(where)i(y)-34 b(ou)528 b(store)f(y)-34
+b(our)528 b(p)34 b(ersonal)528 b(T)29096 51293 y(E)29769
+51032 y(X)g(macros.)909 b(The)528 b(v)-67 b(alue)527
+b(defaults)h(to)g(the)5200 52493 y(directories)486 b(listed)i(in)g(the)
+g Fu(TEXINPUTS)i FC(and)f Fu(BIBINPUTS)h FC(en)-34 b(vironmen)g(t)489
+b(v)-67 b(ariables)486 b(or)i(to)f(the)5200 53954 y(resp)34
+b(ectiv)-34 b(e)280 b(directories)f(in)i Fu($TEXMFHOME)k
+FC(of)c Fu(kpsewhich)j FC(setting)d(if)g(no)g(results)g(can)g(b)34
+b(e)281 b(obtained)5200 55416 y(from)404 b(the)h(en)-34
+b(vironmen)g(t)405 b(v)-67 b(ariables.)42818 57668 y([User)404
+b(Option])-48000 b Fm(TeX-auto-private)5200 59129 y FC(List)574
+b(of)i(directories)d(con)-34 b(taining)576 b(automatically)f(generated)
+g(A)-34 b(UCT)38317 59390 y(E)38992 59129 y(X)575 b(st)-34
+b(yle)574 b(\014les.)1051 b(These)5200 60590 y(corresp)34
+b(ond)404 b(to)h(the)f(p)34 b(ersonal)404 b(T)20442 60851
+y(E)21116 60590 y(X)g(macros.)43872 62842 y([Command])-47999
+b Fm(TeX-auto-generate)612 b Fi(tex)444 b(auto)5200 64303
+y FC(\()p Fs(M-x)405 b(TeX-auto-generate)411 b(RET)p
+FC(\))484 b(Generate)f(st)-34 b(yle)482 b(ho)34 b(ok)483
+b(for)g Ft(tex)567 b FC(and)483 b(store)g(it)g(in)g Ft(auto)p
+FC(.)776 b(If)5200 65764 y Ft(tex)487 b FC(is)404 b(a)g(directory)-101
+b(,)403 b(generate)h(st)-34 b(yle)404 b(ho)34 b(oks)404
+b(for)h(all)e(\014les)h(in)g(the)h(directory)-101 b(.)42818
+68016 y([User)404 b(Option])-48000 b Fm(TeX-style-private)5200
+69478 y FC(List)430 b(of)h(directories)e(con)-34 b(taining)432
+b(hand)f(generated)g(A)-34 b(UCT)32838 69738 y(E)33512
+69478 y(X)431 b(st)-34 b(yle)430 b(\014les.)617 b(These)431
+b(corresp)34 b(ond)5200 70939 y(to)404 b(the)h(p)34 b(ersonal)404
+b(T)14267 71200 y(E)14941 70939 y(X)g(macros.)p eop end
+%%Page: 80 85
+TeXDict begin 80 84 bop 2000 -1550 a FC(Chapter)405 b(5:)539
+b(Customization)405 b(and)g(Extension)24903 b(80)2000
+3985 y Fq(5.5.3)818 b(Automatic)546 b(Customization)g(for)g(a)g
+(Directory)2000 5944 y FC(A)-34 b(UCT)5332 6205 y(E)6007
+5944 y(X)368 b(can)g(up)34 b(date)370 b(the)e(st)-34
+b(yle)368 b(information)h(ab)34 b(out)370 b(a)e(\014le)g(eac)-34
+b(h)368 b(time)g(y)-34 b(ou)369 b(sa)-34 b(v)g(e)368
+b(it,)376 b(and)369 b(it)f(will)g(do)2000 7406 y(this)374
+b(if)g(the)g(directory)f Fu(TeX-auto-local)379 b FC(exists.)528
+b Fu(TeX-auto-local)379 b FC(is)374 b(b)-34 b(y)374 b(default)h(set)f
+(to)g(`)p Fu("auto")p FC(',)2000 8867 y(so)404 b(simply)g(creating)g
+(an)g Fu(auto)i FC(directory)d(will)h(enable)g(automatic)h(sa)-34
+b(ving)404 b(of)h(st)-34 b(yle)404 b(information.)3660
+10828 y(The)414 b(adv)-67 b(an)-34 b(tage)414 b(of)f(doing)h(this)f(is)
+g(that)h(macros,)h(lab)34 b(els,)414 b(etc.)f(de\014ned)h(in)f(an)-34
+b(y)414 b(\014le)e(in)i(a)f(m)-34 b(ulti\014le)2000 12289
+y(do)34 b(cumen)-34 b(t)440 b(will)f(b)34 b(e)439 b(kno)-34
+b(wn)441 b(in)e(all)g(the)h(\014les)f(in)h(the)f(do)34
+b(cumen)-34 b(t.)646 b(The)440 b(disadv)-67 b(an)-34
+b(tage)440 b(is)f(that)i(sa)-34 b(ving)2000 13750 y(will)404
+b(b)34 b(e)403 b(slo)-34 b(w)g(er.)539 b(T)-101 b(o)405
+b(disable,)f(set)g Fu(TeX-auto-local)409 b FC(to)404
+b(nil.)42818 16544 y([User)g(Option])-48000 b Fm(TeX-style-local)5200
+18005 y FC(Directory)403 b(con)-34 b(taining)405 b(hand)g(generated)g
+(T)25732 18266 y(E)26405 18005 y(X)f(information.)5200
+19966 y(These)g(corresp)34 b(ond)404 b(to)h(T)17038 20227
+y(E)17712 19966 y(X)f(macros)g(found)h(in)g(the)f(curren)-34
+b(t)405 b(directory)-101 b(.)42818 22759 y([User)404
+b(Option])-48000 b Fm(TeX-auto-local)5200 24221 y FC(Directory)403
+b(con)-34 b(taining)405 b(automatically)f(generated)g(T)30344
+24482 y(E)31018 24221 y(X)g(information.)5200 26182 y(These)g(corresp)
+34 b(ond)404 b(to)h(T)17038 26443 y(E)17712 26182 y(X)f(macros)g(found)
+h(in)g(the)f(curren)-34 b(t)405 b(directory)-101 b(.)2000
+29644 y FB(5.6)896 b(W)-149 b(riting)599 b(Y)-149 b(our)597
+b(Own)h(St)-50 b(yle)600 b(Supp)50 b(ort)2000 31769 y
+FC(See)331 b(Section)g(5.5)g([Automatic],)345 b(page)331
+b(78,)346 b(for)331 b(a)g(discussion)g(ab)34 b(out)332
+b(automatically)f(generated)g(global,)2000 33231 y(priv)-67
+b(ate,)369 b(and)362 b(lo)34 b(cal)360 b(st)-34 b(yle)361
+b(\014les.)524 b(The)361 b(hand)i(generated)e(st)-34
+b(yle)361 b(\014les)g(are)g(equiv)-67 b(alen)-34 b(t,)369
+b(except)360 b(that)j(they)2000 34692 y(b)-34 b(y)405
+b(default)g(are)e(found)j(in)e Fu(style)i FC(directories)d(instead)i
+(of)f Fu(auto)i FC(directories.)3660 36653 y(If)f(y)-34
+b(ou)404 b(write)g(some)g(useful)h(supp)34 b(ort)405
+b(for)f(a)g(public)h(T)28438 36914 y(E)29112 36653 y(X)f(st)-34
+b(yle)404 b(\014le,)f(please)h(send)h(it)f(to)g(us.)2000
+39478 y Fq(5.6.1)818 b(A)545 b(Simple)f(St)-45 b(yle)544
+b(File)2000 41437 y FC(Here)403 b(is)h(a)g(simple)g(example)g(of)g(a)g
+(st)-34 b(yle)404 b(\014le.)5200 43398 y Fu(;;;)637 b(book.el)i(-)e
+(Special)i(code)f(for)f(book)h(style.)5200 46321 y
+(\(TeX-add-style-hook)5836 47782 y("book")5836 49243
+y(\(lambda)h(\(\))7109 50704 y(\(LaTeX-largest-level-set)645
+b("part"\)\))5836 52165 y(TeX-dialect\))3660 54127 y
+FC(The)402 b(example)f(is)f(from)i(the)f(A)-34 b(UCT)20388
+54387 y(E)21063 54127 y(X)401 b(sources)g(and)h(is)f(loaded)g(for)h(an)
+-34 b(y)401 b(L)38428 53970 y Fv(a)38989 54127 y FC(T)39662
+54387 y(E)40336 54127 y(X)g(do)34 b(cumen)-34 b(t)402
+b(using)2000 55588 y(the)532 b(b)34 b(o)g(ok)530 b(do)34
+b(cumen)-34 b(t)533 b(class)d(\(or)i(st)-34 b(yle)531
+b(b)34 b(efore)531 b(L)25158 55431 y Fv(a)25719 55588
+y FC(T)26392 55849 y(E)27065 55588 y(X2e\).)920 b(\(Note)532
+b(that)g(the)g(ab)34 b(o)-34 b(v)g(e)531 b(co)34 b(de)531
+b(is)g(m)-34 b(uc)g(h)2000 57049 y(simpli\014ed)510 b(for)f
+(explanatory)h(purp)34 b(ose.\))856 b(The)510 b(\014le)f(sp)34
+b(eci\014es)509 b(that)i(the)f(largest)g(kind)f(of)h(section)g(in)2000
+58510 y(suc)-34 b(h)444 b(a)f(do)34 b(cumen)-34 b(t)443
+b(is)g(`)p Fu(part)p FC('.)655 b(The)444 b(in)-34 b(teresting)443
+b(thing)h(to)f(notice)g(is)f(that)i(the)g(st)-34 b(yle)442
+b(\014le)h(de\014nes)h(an)2000 59971 y(\(anon)-34 b(ymous\))514
+b(function,)539 b(and)512 b(adds)g(it)g(to)g(the)f(list)h(of)f(loaded)h
+(st)-34 b(yle)511 b(ho)34 b(oks)512 b(b)-34 b(y)511 b(calling)g
+Fu(TeX-add-)2000 61432 y(style-hook)p FC(.)3660 63394
+y(The)399 b(\014rst)g(time)f(the)h(user)f(indirectly)f(tries)h(to)h
+(access)f(some)g(st)-34 b(yle-sp)34 b(eci\014c)398 b(information,)i
+(suc)-34 b(h)399 b(as)2000 64855 y(the)423 b(largest)e(sectioning)i
+(command)g(a)-34 b(v)-67 b(ailable,)425 b(the)e(st)-34
+b(yle)422 b(ho)34 b(oks)422 b(for)g(all)g(\014les)g(directly)f(or)h
+(indirectly)2000 66316 y(read)463 b(b)-34 b(y)463 b(the)h(curren)-34
+b(t)463 b(do)34 b(cumen)-34 b(t)464 b(are)f(executed.)715
+b(The)463 b(actual)h(\014les)e(will)h(only)g(b)34 b(e)463
+b(ev)-67 b(aluated)462 b(once,)2000 67777 y(but)405 b(the)g(ho)34
+b(oks)404 b(will)f(b)34 b(e)404 b(called)g(for)g(eac)-34
+b(h)404 b(bu\013er)g(using)h(the)g(st)-34 b(yle)404 b(\014le.)3660
+69738 y(Note)428 b(that)h(the)g(basename)f(of)g(the)h(st)-34
+b(yle)427 b(\014le)h(and)h(the)f(name)g(of)g(the)h(st)-34
+b(yle)427 b(ho)34 b(ok)428 b(should)h(usually)2000 71200
+y(b)34 b(e)404 b(iden)-34 b(tical.)p eop end
+%%Page: 81 86
+TeXDict begin 81 85 bop 2000 -1550 a FC(Chapter)405 b(5:)539
+b(Customization)405 b(and)g(Extension)24903 b(81)44663
+3985 y([F)-101 b(unction])-47999 b Fm(TeX-add-style-hook)613
+b Fi(style)445 b(hook)f Fg(&optional)f Fi(dialect-expr)5200
+5446 y FC(Add)310 b Ft(ho)34 b(ok)383 b FC(to)309 b(the)h(list)f(of)g
+(functions)i(to)f(run)f(when)h(w)-34 b(e)310 b(use)f(the)h(T)35376
+5707 y(E)36050 5446 y(X)f(\014le)g Ft(st)-34 b(yle)377
+b FC(and)310 b(the)g(curren)-34 b(t)5200 6907 y(dialect)334
+b(is)h(one)f(in)h(the)g(set)g(deriv)-34 b(ed)334 b(from)h
+Ft(dialect-expr)p FC(.)515 b(When)335 b Ft(dialect-expr)421
+b FC(is)334 b(omitted,)349 b(then)5200 8369 y Ft(ho)34
+b(ok)477 b FC(is)404 b(allo)-34 b(w)g(ed)405 b(to)g(b)34
+b(e)403 b(run)i(whatev)-34 b(er)405 b(the)f(curren)-34
+b(t)405 b(dialect)e(is.)5200 10537 y Ft(dialect-expr)490
+b FC(ma)-34 b(y)405 b(b)34 b(e)403 b(one)i(of:)6194 12704
+y FA(\017)800 b FC(A)492 b(sym)-34 b(b)34 b(ol)491 b(indicating)i(a)e
+(singleton)i(con)-34 b(taining)493 b(one)e(basic)h(T)37378
+12965 y(E)38052 12704 y(X)g(dialect,)513 b(this)492 b(sym)-34
+b(b)34 b(ol)7600 14166 y(shall)404 b(b)34 b(e)404 b(selected)f(among:)
+7600 16666 y Fu(:latex)2584 b FC(F)-101 b(or)404 b(all)g(\014les)g(in)g
+(L)22026 16509 y Fv(a)22587 16666 y FC(T)23260 16927
+y(E)23933 16666 y(X)g(mo)34 b(de,)404 b(or)g(an)-34 b(y)405
+b(mo)34 b(de)404 b(deriv)-34 b(ed)403 b(thereof.)7600
+19166 y Fu(:bibtex)1948 b FC(F)-101 b(or)404 b(all)g(\014les)g(in)g
+(BibT)24246 19427 y(E)24919 19166 y(X)g(mo)34 b(de,)404
+b(or)g(an)-34 b(y)404 b(mo)34 b(de)404 b(deriv)-34 b(ed)404
+b(thereof.)7600 21666 y Fu(:texinfo)1312 b FC(F)-101
+b(or)404 b(all)g(\014les)g(in)g(T)-101 b(exinfo)404 b(mo)34
+b(de.)7600 24166 y Fu(:plain-tex)14000 25627 y FC(F)-101
+b(or)404 b(all)g(\014les)g(in)g(plain-T)25407 25888 y(E)26081
+25627 y(X)g(mo)34 b(de,)404 b(or)f(an)-34 b(y)405 b(mo)34
+b(de)404 b(deriv)-34 b(ed)404 b(thereof.)7600 28127 y
+Fu(:context)1312 b FC(F)-101 b(or)404 b(all)g(\014les)g(in)g(ConT)24531
+28388 y(E)25205 28127 y(Xt)h(mo)34 b(de.)7600 30627 y
+Fu(:classopt)14000 32088 y FC(F)-101 b(or)508 b(class)f(options)h(of)g
+(L)25382 31931 y Fv(a)25943 32088 y FC(T)26616 32349
+y(E)27290 32088 y(X)g(do)34 b(cumen)-34 b(t.)850 b(This)508
+b(is)f(pro)-34 b(vided)508 b(as)g(pseudo-)14000 33549
+y(dialect)404 b(for)g(st)-34 b(yle)404 b(ho)34 b(oks)404
+b(asso)34 b(ciated)404 b(with)h(class)f(options.)6194
+35530 y FA(\017)800 b FC(A)404 b(logical)f(expression)h(lik)-34
+b(e:)7600 38030 y Fu(\(or)405 b Fs(dialect-expression1)411
+b Fu(...)405 b Fs(dialect-expression_n)p Fu(\))14000
+39491 y FC(F)-101 b(or)353 b(union)g(of)g(the)g(sets)g(of)g(dialects)f
+(corresp)34 b(onding)353 b(to)g Ft(dialect-expression1)14000
+40952 y FC(through)405 b Ft(dialect-expression)p 28011
+40952 364 53 v 533 w(n)7600 43452 y Fu(\(and)g Fs(dialect-expression1)
+411 b Fu(...)405 b Fs(dialect-expression_n)p Fu(\))14000
+44913 y FC(F)-101 b(or)686 b(in)-34 b(tersection)686
+b(of)g(the)g(sets)g(of)h(dialects)e(corresp)34 b(onding)686
+b(to)g Ft(dialect-)14000 46375 y(expression1)500 b FC(through)406
+b Ft(dialect-expression)p 34556 46375 V 533 w(n)7600
+48875 y Fu(\(nor)f Fs(dialect-expression1)411 b Fu(...)405
+b Fs(dialect-expression_n)p Fu(\))14000 50336 y FC(F)-101
+b(or)295 b(complemen)-34 b(t)296 b(of)f(the)g(union)h(sets)g(of)f
+(dialects)g(corresp)34 b(onding)295 b(to)g Ft(dialect-)14000
+51797 y(expression1)564 b FC(through)469 b Ft(dialect-expression)p
+34683 51797 V 533 w(n)f FC(relativ)-34 b(ely)466 b(to)i(the)g(set)g(of)
+g(all)14000 53258 y(supp)34 b(orted)405 b(dialects)7600
+55758 y Fu(\(not)g Fs(dialect-expr)p Fu(\))14000 57219
+y FC(F)-101 b(or)279 b(complemen)-34 b(t)279 b(set)g(of)g(dialect)f
+(corresp)34 b(onding)279 b(to)g Ft(dialect-expr)365 b
+FC(relativ)-34 b(ely)14000 58681 y(to)404 b(the)h(set)f(of)h(all)e
+(supp)34 b(orted)406 b(dialects)3660 61887 y(In)499 b(case)f(of)h
+(adding)h(a)e(st)-34 b(yle)499 b(ho)34 b(ok)498 b(for)h(L)22836
+61730 y Fv(a)23397 61887 y FC(T)24070 62148 y(E)24743
+61887 y(X,)522 b(when)500 b(calling)e(function)i Fu(TeX-add-style-hook)
+2000 63348 y FC(it)550 b(is)g(though)-34 b(t)553 b(more)c(futurepro)34
+b(of)552 b(for)e(argumen)-34 b(t)551 b Ft(dialect-expr)637
+b FC(to)550 b(pass)h(constan)-34 b(t)552 b Fu(TeX-dialect)2000
+64810 y FC(curren)-34 b(tly)404 b(de\014ned)h(to)f Fu(:latex)p
+FC(,)i(rather)e(than)i(passing)f Fu(:latex)h FC(directly)-101
+b(.)44505 68016 y([Constan)-34 b(t])-47998 b Fm(TeX-dialect)5200
+69478 y FC(Default)366 b(dialect)f(for)h(use)f(with)i(function)g
+Fu(TeX-add-style-hook)k FC(for)366 b(argumen)-34 b(t)367
+b Ft(dialect-expr)5200 70939 y FC(when)405 b(the)f(ho)34
+b(ok)404 b(is)g(to)h(b)34 b(e)404 b(run)g(only)g(on)h(L)24657
+70782 y Fv(a)25218 70939 y FC(T)25891 71200 y(E)26564
+70939 y(X)f(\014le,)g(or)g(an)-34 b(y)404 b(mo)34 b(de)404
+b(deriv)-34 b(ed)404 b(thereof.)p eop end
+%%Page: 82 87
+TeXDict begin 82 86 bop 2000 -1550 a FC(Chapter)405 b(5:)539
+b(Customization)405 b(and)g(Extension)24903 b(82)2000
+3985 y Fq(5.6.2)818 b(Adding)545 b(Supp)45 b(ort)547
+b(for)f(Macros)2000 5944 y FC(The)335 b(most)f(common)h(thing)g(to)f
+(de\014ne)h(in)f(a)g(st)-34 b(yle)334 b(ho)34 b(ok)334
+b(is)f(new)i(sym)-34 b(b)34 b(ols)334 b(\(T)37250 6205
+y(E)37924 5944 y(X)g(macros\).)516 b(Most)334 b(lik)-34
+b(ely)2000 7406 y(along)480 b(with)h(a)f(description)h(of)f(the)g
+(argumen)-34 b(ts)482 b(to)e(the)h(function,)500 b(since)479
+b(the)i(sym)-34 b(b)34 b(ol)480 b(itself)g(can)g(b)34
+b(e)2000 8867 y(de\014ned)405 b(automatically)-101 b(.)3660
+10590 y(Here)404 b(are)f(a)h(few)h(examples)f(from)g
+Fu(latex.el)p FC(.)5200 12313 y Fu(\(TeX-add-style-hook)5836
+13774 y("latex")5836 15235 y(\(lambda)639 b(\(\))7109
+16696 y(\(TeX-add-symbols)7745 18158 y('\("arabic")h(TeX-arg-counter\))
+7745 19619 y('\("label")g(TeX-arg-define-label\))7745
+21080 y('\("ref")f(TeX-arg-ref\))7745 22541 y('\("newcommand")j
+(TeX-arg-define-macro)h([)637 b("Number)i(of)e(arguments")j(])c(t\))
+7745 24002 y('\("newtheorem")642 b(TeX-arg-define-environment)9018
+25463 y([)637 b(TeX-arg-environment)643 b("Numbered)d(like")e(])9018
+26925 y(t)f([)g(TeX-arg-counter)k("Within)e(counter")g(]\)\)\)\))44663
+29171 y FC([F)-101 b(unction])-47999 b Fm(TeX-add-symbols)612
+b Fi(symbol)525 b Ff(.)322 b(.)g(.)5200 30633 y FC(Add)405
+b(eac)-34 b(h)404 b Ft(sym)-34 b(b)34 b(ol)452 b FC(to)404
+b(the)h(list)f(of)g(kno)-34 b(wn)406 b(sym)-34 b(b)34
+b(ols.)3660 32879 y(Eac)-34 b(h)484 b(argumen)-34 b(t)485
+b(to)e Fu(TeX-add-symbols)489 b FC(is)483 b(a)g(list)g(describing)h
+(one)f(sym)-34 b(b)34 b(ol.)776 b(The)484 b(head)g(of)f(the)2000
+34340 y(list)404 b(is)g(the)g(name)h(of)f(the)h(sym)-34
+b(b)34 b(ol,)404 b(the)g(remaining)g(elemen)-34 b(ts)404
+b(describ)34 b(e)403 b(eac)-34 b(h)405 b(argumen)-34
+b(t.)3660 36063 y(If)370 b(there)g(are)f(no)h(additional)g(elemen)-34
+b(ts,)377 b(the)370 b(sym)-34 b(b)34 b(ol)370 b(will)f(b)34
+b(e)369 b(inserted)h(with)g(p)34 b(oin)-34 b(t)371 b(inside)f(braces.)
+2000 37525 y(Otherwise,)495 b(eac)-34 b(h)477 b(argumen)-34
+b(t)477 b(of)h(this)f(function)h(should)g(matc)-34 b(h)478
+b(an)f(argumen)-34 b(t)478 b(of)f(the)g(T)44368 37786
+y(E)45042 37525 y(X)g(macro.)2000 38986 y(What)405 b(is)f(done)g(dep)34
+b(ends)405 b(on)g(the)f(argumen)-34 b(t)405 b(t)-34 b(yp)34
+b(e.)3660 40709 y(If)576 b(a)f(macro)f(is)h(de\014ned)i(m)-34
+b(ultiple)575 b(times,)618 b(A)-34 b(UCT)27812 40970
+y(E)28486 40709 y(X)575 b(will)g(c)-34 b(ho)34 b(ose)575
+b(the)h(one)f(with)h(the)g(longest)2000 42170 y(de\014nition)405
+b(\(i.e.)e(the)i(one)f(with)h(the)g(most)f(argumen)-34
+b(ts\).)3660 43893 y(Th)g(us,)406 b(to)e(o)-34 b(v)g(erwrite)10291
+45616 y Fu('\("tref")639 b(1\))e(;)g FC(one)404 b(argumen)-34
+b(t)3660 47339 y(y)g(ou)405 b(can)f(sp)34 b(ecify)10291
+49062 y Fu('\("tref")639 b(TeX-arg-ref)h(ignore\))f(;)e
+FC(t)-34 b(w)g(o)405 b(argumen)-34 b(ts)3660 50785 y
+Fu(ignore)393 b FC(is)e(a)g(function)h(that)g(do)34 b(es)391
+b(not)g(do)h(an)-34 b(ything,)394 b(so)d(when)h(y)-34
+b(ou)391 b(insert)g(a)g(`)p Fu(tref)p FC(')h(y)-34 b(ou)391
+b(will)f(b)34 b(e)2000 52246 y(prompted)405 b(for)f(a)h(lab)34
+b(el)403 b(and)i(no)f(more.)3660 53969 y(Y)-101 b(ou)405
+b(can)f(use)h(the)f(follo)-34 b(wing)405 b(t)-34 b(yp)34
+b(es)404 b(of)h(sp)34 b(eci\014ers)403 b(for)h(argumen)-34
+b(ts:)2000 55954 y Fu(string)2584 b FC(Use)404 b(the)h(string)f(as)g(a)
+g(prompt)h(to)g(prompt)g(for)f(the)h(argumen)-34 b(t.)2000
+57939 y Fu(number)2584 b FC(Insert)495 b(that)h(man)-34
+b(y)495 b(braces,)517 b(lea)-34 b(v)g(e)494 b(p)34 b(oin)-34
+b(t)496 b(inside)e(the)h(\014rst.)811 b(0)495 b(and)h(-1)e(are)h(sp)34
+b(ecial.)809 b(0)8400 59400 y(means)476 b(that)g(no)g(braces)f(are)g
+(inserted.)752 b(-1)475 b(means)h(that)h(braces)e(are)f(inserted)i
+(around)8400 60862 y(the)317 b(macro)f(and)h(an)g(activ)-34
+b(e)317 b(region)f(\(e.g.)g(`)p Fu({\\tiny)406 b(foo})p
+FC('\).)510 b(If)317 b(there)f(is)h(no)f(activ)-34 b(e)317
+b(region,)8400 62323 y(no)405 b(braces)e(are)h(inserted.)2000
+64308 y Fu(nil)4492 b FC(Insert)404 b(empt)-34 b(y)405
+b(braces.)2000 66292 y Fu(t)5764 b FC(Insert)404 b(empt)-34
+b(y)405 b(braces,)e(lea)-34 b(v)g(e)404 b(p)34 b(oin)-34
+b(t)405 b(b)34 b(et)-34 b(w)g(een)405 b(the)g(braces.)2000
+68277 y Fu(other)h(symbols)8400 69738 y FC(Call)365 b(the)i(sym)-34
+b(b)34 b(ol)365 b(as)h(a)g(function.)527 b(Y)-101 b(ou)366
+b(can)g(de\014ne)g(y)-34 b(our)366 b(o)-34 b(wn)367 b(ho)34
+b(ok,)372 b(or)366 b(use)g(one)f(of)h(the)8400 71200
+y(prede\014ned)405 b(argumen)-34 b(t)405 b(ho)34 b(oks.)p
+eop end
+%%Page: 83 88
+TeXDict begin 83 87 bop 2000 -1550 a FC(Chapter)405 b(5:)539
+b(Customization)405 b(and)g(Extension)24903 b(83)2000
+3985 y Fu(list)3856 b FC(If)348 b(the)h(car)f(is)g(a)g(string,)359
+b(insert)348 b(it)h(as)f(a)g(prompt)i(and)f(the)f(next)h(elemen)-34
+b(t)348 b(as)g(initial)g(input.)8400 5446 y(Otherwise,)404
+b(call)f(the)i(car)e(of)i(the)f(list)g(with)h(the)g(remaining)e(elemen)
+-34 b(ts)405 b(as)f(argumen)-34 b(ts.)2000 7685 y Fu(vector)2584
+b FC(Optional)322 b(argumen)-34 b(t.)511 b(If)322 b(it)f(has)g(more)g
+(than)h(one)g(elemen)-34 b(t,)337 b(parse)321 b(it)g(as)g(a)g(list,)338
+b(otherwise)8400 9147 y(parse)449 b(the)g(only)g(elemen)-34
+b(t)449 b(as)g(ab)34 b(o)-34 b(v)g(e.)673 b(Use)449 b(square)f(brac)-34
+b(k)g(ets)450 b(instead)f(of)g(curly)g(braces,)8400 10608
+y(and)405 b(is)f(not)h(inserted)f(on)g(empt)-34 b(y)405
+b(user)f(input.)3660 12904 y(A)436 b(lot)g(of)h(argumen)-34
+b(t)437 b(ho)34 b(oks)436 b(ha)-34 b(v)g(e)436 b(already)g(b)34
+b(een)435 b(de\014ned.)635 b(The)437 b(\014rst)f(argumen)-34
+b(t)438 b(to)e(all)f(ho)34 b(oks)436 b(is)2000 14365
+y(a)461 b(\015ag)h(indicating)g(if)f(it)h(is)f(an)g(optional)i(argumen)
+-34 b(t.)711 b(It)461 b(is)g(up)h(to)g(the)g(ho)34 b(ok)461
+b(to)h(determine)f(what)i(to)2000 15826 y(do)393 b(with)g(the)g
+(remaining)g(argumen)-34 b(ts,)396 b(if)c(an)-34 b(y)-101
+b(.)535 b(T)-34 b(ypically)392 b(the)h(next)g(argumen)-34
+b(t)394 b(is)e(used)h(to)g(o)-34 b(v)g(erwrite)2000 17288
+y(the)405 b(default)g(prompt.)2000 19584 y Fu(TeX-arg-conditional)8400
+21045 y FC(Implemen)-34 b(ts)411 b(if)f Ft(expr)496 b(then)411
+b(else)p FC(.)555 b(If)410 b Ft(expr)497 b FC(ev)-67
+b(aluates)410 b(to)g(true,)h(parse)f Ft(then)h FC(as)f(an)h(argu-)8400
+22506 y(men)-34 b(t)405 b(list,)f(else)f(parse)h Ft(else)471
+b FC(as)404 b(an)h(argumen)-34 b(t)405 b(list.)2000 24745
+y Fu(TeX-arg-literal)8400 26206 y FC(Insert)553 b(its)f(argumen)-34
+b(ts)554 b(in)-34 b(to)553 b(the)g(bu\013er.)984 b(Used)553
+b(for)g(sp)34 b(ecifying)552 b(extra)g(syn)-34 b(tax)553
+b(for)g(a)8400 27668 y(macro.)2000 29907 y Fu(TeX-arg-free)8400
+31368 y FC(P)-34 b(arse)404 b(its)g(argumen)-34 b(ts)406
+b(but)f(use)f(no)h(braces)e(when)i(they)g(are)e(inserted.)2000
+33607 y Fu(TeX-arg-eval)8400 35068 y FC(Ev)-67 b(aluate)404
+b(argumen)-34 b(ts)405 b(and)g(insert)f(the)h(result)f(in)g(the)g
+(bu\013er.)2000 37308 y Fu(TeX-arg-label)8400 38769 y
+FC(Prompt)j(for)f(a)g(lab)34 b(el)405 b(completing)h(with)h(kno)-34
+b(wn)407 b(lab)34 b(els.)544 b(If)406 b(RefT)39040 39030
+y(E)39714 38769 y(X)g(is)g(activ)-34 b(e,)406 b(prompt)8400
+40230 y(for)e(the)h(reference)e(format.)2000 42469 y
+Fu(TeX-arg-ref)8400 43930 y FC(Prompt)438 b(for)f(a)g(lab)34
+b(el)436 b(completing)h(with)h(kno)-34 b(wn)438 b(lab)34
+b(els.)637 b(If)437 b(RefT)39381 44191 y(E)40055 43930
+y(X)g(is)g(activ)-34 b(e,)445 b(do)437 b(not)8400 45392
+y(prompt)578 b(for)e(the)h(reference)e(format.)1057 b(Usually)-101
+b(,)619 b(reference)575 b(macros)h(should)i(use)e(this)8400
+46853 y(function)406 b(instead)e(of)h Fu(TeX-arg-label)p
+FC(.)2000 49092 y Fu(TeX-arg-index-tag)8400 50553 y FC(Prompt)g(for)f
+(an)g(index)g(tag.)539 b(This)405 b(is)f(the)g(name)h(of)f(an)h(index,)
+e(not)i(the)g(en)-34 b(try)-101 b(.)2000 52793 y Fu(TeX-arg-index)8400
+54254 y FC(Prompt)405 b(for)f(an)g(index)g(en)-34 b(try)405
+b(completing)f(with)h(kno)-34 b(wn)405 b(en)-34 b(tries.)2000
+56493 y Fu(TeX-arg-length)8400 57954 y FC(Prompt)405
+b(for)f(a)g(L)16052 57797 y Fv(a)16613 57954 y FC(T)17286
+58215 y(E)17960 57954 y(X)g(length)g(completing)h(with)g(kno)-34
+b(wn)405 b(lengths.)2000 60193 y Fu(TeX-arg-macro)8400
+61655 y FC(Prompt)g(for)f(a)g(T)16403 61915 y(E)17077
+61655 y(X)g(macro)g(with)h(completion.)2000 63894 y Fu(TeX-arg-date)
+8400 65355 y FC(Prompt)272 b(for)f(a)g(date,)297 b(defaulting)273
+b(to)e(the)g(curren)-34 b(t)272 b(date.)494 b(The)272
+b(format)f(of)h(the)f(date)h(is)e(sp)34 b(ec-)8400 66816
+y(i\014ed)423 b(b)-34 b(y)424 b(the)f Fu(TeX-date-format)429
+b FC(option.)597 b(If)423 b(y)-34 b(ou)423 b(w)-34 b(an)g(t)425
+b(to)f(c)-34 b(hange)424 b(the)f(format)h(when)8400 68277
+y(the)490 b(`)p Fu(babel)p FC(')g(pac)-34 b(k)-67 b(age)489
+b(is)g(loaded)h(with)g(a)f(sp)34 b(eci\014c)489 b(language,)510
+b(set)490 b Fu(TeX-date-format)8400 69738 y FC(inside)418
+b(the)g(appropriate)g(language)g(ho)34 b(ok)417 b(\(for)i(details)e
+(see)g(Section)h(5.4.1)g([Europ)34 b(ean],)8400 71200
+y(page)404 b(73\).)p eop end
+%%Page: 84 89
+TeXDict begin 84 88 bop 2000 -1550 a FC(Chapter)405 b(5:)539
+b(Customization)405 b(and)g(Extension)24903 b(84)2000
+3985 y Fu(TeX-arg-version)8400 5446 y FC(Prompt)405 b(for)f(the)g(v)-34
+b(ersion)404 b(of)h(a)f(\014le,)f(using)i(as)f(initial)g(input)h(the)g
+(curren)-34 b(t)404 b(date.)2000 7492 y Fu(TeX-arg-environment)8400
+8953 y FC(Prompt)h(for)f(a)g(L)16052 8796 y Fv(a)16613
+8953 y FC(T)17286 9214 y(E)17960 8953 y(X)g(en)-34 b(vironmen)g(t)405
+b(with)g(completion.)2000 10999 y Fu(TeX-arg-cite)8400
+12460 y FC(Prompt)321 b(for)g(a)g(BibT)18022 12721 y(E)18696
+12460 y(X)g(citation.)511 b(If)321 b(the)g(v)-67 b(ariable)319
+b Fu(TeX-arg-cite-note-p)328 b FC(is)321 b(non-nil,)8400
+13921 y(ask)404 b(also)g(for)g(optional)h(note)g(in)f(citations.)2000
+15967 y Fu(TeX-arg-counter)8400 17428 y FC(Prompt)h(for)f(a)g(L)16052
+17271 y Fv(a)16613 17428 y FC(T)17286 17689 y(E)17960
+17428 y(X)g(coun)-34 b(ter)405 b(completing)f(with)h(kno)-34
+b(wn)405 b(coun)-34 b(ters.)2000 19474 y Fu(TeX-arg-savebox)8400
+20935 y FC(Prompt)405 b(for)f(a)g(L)16052 20778 y Fv(a)16613
+20935 y FC(T)17286 21196 y(E)17960 20935 y(X)g(sa)-34
+b(v)g(eb)34 b(o)-34 b(x)404 b(completing)h(with)f(kno)-34
+b(wn)406 b(sa)-34 b(v)g(eb)34 b(o)-34 b(xes.)2000 22980
+y Fu(TeX-arg-file)8400 24442 y FC(Prompt)405 b(for)f(a)g(\014lename)g
+(in)g(the)h(curren)-34 b(t)404 b(directory)-101 b(,)403
+b(and)i(use)f(it)h(with)g(the)f(extension.)2000 26487
+y Fu(TeX-arg-file-name)8400 27949 y FC(Prompt)360 b(for)g(a)g
+(\014lename)g(and)g(use)g(as)g(initial)f(input)i(the)f(name)g(of)g(the)
+g(\014le)g(b)34 b(eing)359 b(visited)8400 29410 y(in)404
+b(the)h(curren)-34 b(t)404 b(bu\013er,)g(with)h(extension.)2000
+31455 y Fu(TeX-arg-file-name-sans-extension)8400 32917
+y FC(Prompt)360 b(for)g(a)g(\014lename)g(and)g(use)g(as)g(initial)f
+(input)i(the)f(name)g(of)g(the)g(\014le)g(b)34 b(eing)359
+b(visited)8400 34378 y(in)404 b(the)h(curren)-34 b(t)404
+b(bu\013er,)g(without)i(extension.)2000 36423 y Fu(TeX-arg-input-file)
+8400 37885 y FC(Prompt)418 b(for)g(the)g(name)g(of)g(an)g(input)h
+(\014le)e(in)h(T)30498 38146 y(E)31171 37885 y(X's)g(searc)-34
+b(h)418 b(path,)j(and)e(use)f(it)f(without)8400 39346
+y(the)331 b(extension.)514 b(Run)331 b(the)g(st)-34 b(yle)330
+b(ho)34 b(oks)330 b(for)g(the)h(\014le.)514 b(\(Note)331
+b(that)g(the)g(b)34 b(eha)-34 b(vior)330 b(\(t)-34 b(yp)34
+b(e)331 b(of)8400 40807 y(prompt)h(and)h(inserted)e(\014le)g(name\))h
+(of)g(the)g(function)h(can)e(b)34 b(e)331 b(con)-34 b(trolled)332
+b(b)-34 b(y)331 b(the)h(v)-67 b(ariable)8400 42268 y
+Fu(TeX-arg-input-file-search)p FC(.\))2000 44314 y Fu
+(TeX-arg-define-label)8400 45775 y FC(Prompt)433 b(for)f(a)g(lab)34
+b(el)431 b(completing)h(with)h(kno)-34 b(wn)433 b(lab)34
+b(els.)621 b(Add)433 b(lab)34 b(el)431 b(to)i(list)f(of)g(de\014ned)
+8400 47236 y(lab)34 b(els.)2000 49282 y Fu(TeX-arg-define-length)8400
+50743 y FC(Prompt)412 b(for)g(a)g(L)16075 50586 y Fv(a)16636
+50743 y FC(T)17309 51004 y(E)17983 50743 y(X)f(length)i(completing)f
+(with)h(kno)-34 b(wn)413 b(lengths.)562 b(Add)413 b(length)f(to)g(list)
+8400 52204 y(of)404 b(de\014ned)i(lengths.)2000 54250
+y Fu(TeX-arg-define-macro)8400 55711 y FC(Prompt)334
+b(for)g(a)f(T)16191 55972 y(E)16865 55711 y(X)g(macro)g(with)i
+(completion.)515 b(Add)334 b(macro)f(to)h(list)f(of)h(de\014ned)g
+(macros.)2000 57757 y Fu(TeX-arg-define-environment)8400
+59218 y FC(Prompt)421 b(for)f(a)g(L)16100 59061 y Fv(a)16661
+59218 y FC(T)17334 59479 y(E)18008 59218 y(X)g(en)-34
+b(vironmen)g(t)421 b(with)g(completion.)587 b(Add)421
+b(en)-34 b(vironmen)g(t)421 b(to)g(list)f(of)8400 60679
+y(de\014ned)405 b(en)-34 b(vironmen)g(ts.)2000 62725
+y Fu(TeX-arg-define-cite)8400 64186 y FC(Prompt)405 b(for)f(a)g(BibT)
+18272 64447 y(E)18945 64186 y(X)h(citation.)2000 66232
+y Fu(TeX-arg-define-counter)8400 67693 y FC(Prompt)g(for)f(a)g(L)16052
+67536 y Fv(a)16613 67693 y FC(T)17286 67954 y(E)17960
+67693 y(X)g(coun)-34 b(ter.)2000 69738 y Fu(TeX-arg-define-savebox)8400
+71200 y FC(Prompt)405 b(for)f(a)g(L)16052 71043 y Fv(a)16613
+71200 y FC(T)17286 71461 y(E)17960 71200 y(X)g(sa)-34
+b(v)g(eb)34 b(o)-34 b(x.)p eop end
+%%Page: 85 90
+TeXDict begin 85 89 bop 2000 -1550 a FC(Chapter)405 b(5:)539
+b(Customization)405 b(and)g(Extension)24903 b(85)2000
+3985 y Fu(TeX-arg-document)8400 5446 y FC(Prompt)527
+b(for)g(a)g(L)16420 5289 y Fv(a)16981 5446 y FC(T)17654
+5707 y(E)18328 5446 y(X)f(do)34 b(cumen)-34 b(t)528 b(class,)557
+b(using)528 b Fu(LaTeX-default-style)533 b FC(as)527
+b(default)8400 6907 y(v)-67 b(alue)650 b(and)i Fu
+(LaTeX-default-options)658 b FC(as)651 b(default)h(list)e(of)h
+(options.)1280 b(If)651 b(the)g(v)-67 b(ari-)8400 8369
+y(able)481 b Fu(TeX-arg-input-file-search)490 b FC(is)482
+b(t,)500 b(y)-34 b(ou)482 b(will)f(b)34 b(e)481 b(able)g(to)h(complete)
+f(with)i(all)8400 9830 y(L)8722 9673 y Fv(a)9283 9830
+y FC(T)9956 10091 y(E)10630 9830 y(X)428 b(classes)f(a)-34
+b(v)-67 b(ailable)427 b(on)i(y)-34 b(our)428 b(system,)434
+b(otherwise)428 b(classes)g(listed)g(in)g(the)g(v)-67
+b(ariable)8400 11291 y Fu(LaTeX-style-list)413 b FC(will)408
+b(b)34 b(e)407 b(used)i(for)f(completion.)549 b(It)408
+b(is)g(also)f(pro)-34 b(vided)409 b(completion)8400 12752
+y(for)404 b(options)h(of)g(man)-34 b(y)405 b(common)f(classes.)2000
+15000 y Fu(LaTeX-arg-usepackage)8400 16461 y FC(Prompt)413
+b(for)f(L)15058 16304 y Fv(a)15619 16461 y FC(T)16292
+16722 y(E)16965 16461 y(X)h(pac)-34 b(k)-67 b(ages.)562
+b(If)412 b(the)g(v)-67 b(ariable)411 b Fu(TeX-arg-input-file-search)421
+b FC(is)412 b(t,)8400 17923 y(y)-34 b(ou)393 b(will)f(b)34
+b(e)393 b(able)f(to)h(complete)g(with)g(all)g(L)28463
+17766 y Fv(a)29024 17923 y FC(T)29697 18183 y(E)30370
+17923 y(X)g(pac)-34 b(k)-67 b(ages)392 b(a)-34 b(v)-67
+b(ailable)392 b(on)h(y)-34 b(our)393 b(system.)8400 19384
+y(It)404 b(is)g(also)g(pro)-34 b(vided)405 b(completion)f(for)g
+(options)h(of)g(man)-34 b(y)404 b(common)h(pac)-34 b(k)-67
+b(ages.)2000 21632 y Fu(TeX-arg-bibstyle)8400 23093 y
+FC(Prompt)408 b(for)g(a)g(BibT)18283 23354 y(E)18956
+23093 y(X)g(st)-34 b(yle)408 b(\014le)g(completing)f(with)i(all)e(st)
+-34 b(yle)408 b(a)-34 b(v)-67 b(ailable)407 b(on)h(y)-34
+b(our)408 b(sys-)8400 24554 y(tem.)2000 26802 y Fu
+(TeX-arg-bibliography)8400 28263 y FC(Prompt)487 b(for)g(BibT)17427
+28524 y(E)18100 28263 y(X)g(database)h(\014les)e(completing)h(with)h
+(all)e(databases)i(a)-34 b(v)-67 b(ailable)486 b(on)8400
+29724 y(y)-34 b(our)404 b(system.)2000 31972 y Fu(TeX-arg-corner)8400
+33434 y FC(Prompt)h(for)f(a)g(L)16052 33277 y Fv(a)16613
+33434 y FC(T)17286 33695 y(E)17960 33434 y(X)g(side)g(or)g(corner)f(p)
+34 b(osition)405 b(with)f(completion.)2000 35682 y Fu(TeX-arg-lr)8400
+37143 y FC(Prompt)h(for)f(a)g(L)16052 36986 y Fv(a)16613
+37143 y FC(T)17286 37404 y(E)17960 37143 y(X)g(side)g(with)h
+(completion.)2000 39391 y Fu(TeX-arg-tb)8400 40852 y
+FC(Prompt)g(for)f(a)g(L)16052 40695 y Fv(a)16613 40852
+y FC(T)17286 41113 y(E)17960 40852 y(X)g(side)g(with)h(completion.)2000
+43100 y Fu(TeX-arg-pagestyle)8400 44561 y FC(Prompt)g(for)f(a)g(L)16052
+44404 y Fv(a)16613 44561 y FC(T)17286 44822 y(E)17960
+44561 y(X)g(pagest)-34 b(yle)404 b(with)h(completion.)2000
+46809 y Fu(TeX-arg-verb)8400 48270 y FC(Prompt)g(for)f(delimiter)f(and)
+i(text.)2000 50518 y Fu(TeX-arg-verb-delim-or-brace)8400
+51979 y FC(Prompt)436 b(for)f(delimiter)f(and)i(text.)632
+b(This)436 b(function)g(is)f(similar)f(to)i Fu(TeX-arg-verb)p
+FC(,)447 b(but)8400 53441 y(is)466 b(in)-34 b(tended)467
+b(for)g(macros)f(whic)-34 b(h)467 b(tak)-34 b(e)466 b(their)g(argumen)
+-34 b(t)467 b(enclosed)f(in)h(delimiters)e(or)h(in)8400
+54902 y(braces.)2000 57150 y Fu(TeX-arg-pair)8400 58611
+y FC(Insert)540 b(a)g(pair)f(of)h(n)-34 b(um)g(b)34 b(ers,)575
+b(use)540 b(argumen)-34 b(ts)541 b(for)f(prompt.)946
+b(The)541 b(n)-34 b(um)g(b)34 b(ers)540 b(are)g(sur-)8400
+60072 y(rounded)405 b(b)-34 b(y)405 b(paren)-34 b(theses)405
+b(and)g(separated)f(with)h(a)f(comma.)2000 62320 y Fu(TeX-arg-size)8400
+63781 y FC(Insert)g(width)h(and)g(heigh)-34 b(t)405 b(as)g(a)f(pair.)
+538 b(No)404 b(argumen)-34 b(ts.)2000 66029 y Fu(TeX-arg-coordinate)
+8400 67491 y FC(Insert)404 b(x)g(and)h(y)f(co)34 b(ordinates)404
+b(as)g(a)g(pair.)538 b(No)405 b(argumen)-34 b(ts.)2000
+69738 y Fu(LaTeX-arg-author)8400 71200 y FC(Prompt)405
+b(for)f(do)34 b(cumen)-34 b(t)405 b(author,)g(using)g
+Fu(LaTeX-default-author)411 b FC(as)404 b(initial)g(input.)p
+eop end
+%%Page: 86 91
+TeXDict begin 86 90 bop 2000 -1550 a FC(Chapter)405 b(5:)539
+b(Customization)405 b(and)g(Extension)24903 b(86)2000
+3985 y Fu(TeX-read-hook)8400 5446 y FC(Prompt)405 b(for)f(a)g(L)16052
+5289 y Fv(a)16613 5446 y FC(T)17286 5707 y(E)17960 5446
+y(X)g(ho)34 b(ok)404 b(and)h(return)f(it.)2000 7535 y
+Fu(TeX-arg-hook)8400 8996 y FC(Prompt)h(for)f(a)g(L)16052
+8839 y Fv(a)16613 8996 y FC(T)17286 9257 y(E)17960 8996
+y(X)g(ho)34 b(ok)404 b(and)h(insert)f(it)g(as)g(a)g(T)32353
+9257 y(E)33027 8996 y(X)g(macro)g(argumen)-34 b(t.)2000
+11085 y Fu(TeX-read-key-val)8400 12546 y FC(Prompt)405
+b(for)f(a)g(`)p Fu(key=value)p FC(')j(list)d(of)g(options)h(and)g
+(return)g(them.)2000 14635 y Fu(TeX-arg-key-val)8400
+16096 y FC(Prompt)312 b(for)g(a)g(`)p Fu(key=value)p
+FC(')i(list)e(of)g(options)h(and)g(insert)f(it)f(as)h(a)g(T)39201
+16357 y(E)39875 16096 y(X)g(macro)f(argumen)-34 b(t.)3660
+18185 y(If)466 b(y)-34 b(ou)467 b(add)f(new)h(ho)34 b(oks,)481
+b(y)-34 b(ou)466 b(can)g(assume)g(that)i(p)34 b(oin)-34
+b(t)466 b(is)g(placed)g(directly)f(after)h(the)g(previous)2000
+19646 y(argumen)-34 b(t,)409 b(or)e(after)h(the)g(macro)f(name)g(if)h
+(this)g(is)f(the)h(\014rst)g(argumen)-34 b(t.)549 b(Please)407
+b(lea)-34 b(v)g(e)407 b(p)34 b(oin)-34 b(t)408 b(lo)34
+b(cated)2000 21108 y(after)403 b(the)g(argumen)-34 b(t)404
+b(y)-34 b(ou)403 b(are)f(inserting.)538 b(If)403 b(y)-34
+b(ou)403 b(w)-34 b(an)g(t)405 b(p)34 b(oin)-34 b(t)403
+b(to)g(b)34 b(e)403 b(lo)34 b(cated)402 b(somewhere)h(else)f(after)2000
+22569 y(all)364 b(ho)34 b(oks)365 b(ha)-34 b(v)g(e)365
+b(b)34 b(een)365 b(pro)34 b(cessed,)372 b(set)365 b(the)g(v)-67
+b(alue)364 b(of)h Fu(TeX-exit-mark)p FC(.)530 b(It)365
+b(will)f(p)34 b(oin)-34 b(t)366 b(no)-34 b(where,)373
+b(un)-34 b(til)2000 24030 y(the)405 b(argumen)-34 b(t)405
+b(ho)34 b(ok)404 b(sets)g(it.)3660 25805 y(Some)399 b(pac)-34
+b(k)-67 b(ages)399 b(pro)-34 b(vide)399 b(macros)f(that)i(are)e(rarely)
+f(useful)j(to)f(non-exp)34 b(ert)399 b(users.)537 b(Those)399
+b(should)2000 27266 y(b)34 b(e)404 b(mark)-34 b(ed)404
+b(as)g(exp)34 b(ert)404 b(macros)f(using)i Fu
+(TeX-declare-expert-macros)p FC(.)44663 29669 y([F)-101
+b(unction])-47999 b Fm(TeX-declare-expert-macros)616
+b Fi(style)444 b(macros)p Ff(...)5200 31130 y FC(Declare)403
+b Ft(macros)453 b FC(as)405 b(exp)34 b(ert)403 b(macros)h(of)g
+Ft(st)-34 b(yle)p FC(.)5200 32905 y(Exp)34 b(ert)404
+b(macros)f(are)h(completed)g(dep)34 b(ending)405 b(on)g
+Fu(TeX-complete-expert-commands)p FC(.)2000 35525 y Fq(5.6.3)818
+b(Adding)545 b(Supp)45 b(ort)547 b(for)f(En)-45 b(vironmen)g(ts)2000
+37484 y FC(Adding)386 b(supp)34 b(ort)387 b(for)f(en)-34
+b(vironmen)g(ts)386 b(is)f(v)-34 b(ery)385 b(m)-34 b(uc)g(h)386
+b(lik)-34 b(e)385 b(adding)h(supp)34 b(ort)387 b(for)e(T)40191
+37745 y(E)40865 37484 y(X)h(macros,)i(except)2000 38946
+y(that)606 b(eac)-34 b(h)605 b(en)-34 b(vironmen)g(t)606
+b(normally)e(only)h(tak)-34 b(es)605 b(one)g(argumen)-34
+b(t,)656 b(an)605 b(en)-34 b(vironmen)g(t)606 b(ho)34
+b(ok.)1140 b(The)2000 40407 y(example)403 b(is)h(again)h(a)f(short)h(v)
+-34 b(ersion)403 b(of)i Fu(latex.el)p FC(.)5200 42182
+y Fu(\(TeX-add-style-hook)5836 43643 y("latex")5836 45104
+y(\(lambda)639 b(\(\))7109 46565 y(\(LaTeX-add-environments)7745
+48027 y('\("document")i(LaTeX-env-document\))7745 49488
+y('\("enumerate")g(LaTeX-env-item\))7745 50949 y('\("itemize")g
+(LaTeX-env-item\))7745 52410 y('\("list")f(LaTeX-env-list\)\)\)\))3660
+54185 y FC(It)372 b(is)f(completely)g(up)h(to)f(the)h(en)-34
+b(vironmen)g(t)373 b(ho)34 b(ok)371 b(to)g(insert)h(the)g(en)-34
+b(vironmen)g(t,)378 b(but)373 b(the)f(function)2000 55646
+y Fu(LaTeX-insert-environment)414 b FC(ma)-34 b(y)406
+b(b)34 b(e)406 b(of)g(some)g(help.)544 b(The)407 b(ho)34
+b(ok)405 b(will)h(b)34 b(e)405 b(called)h(with)g(the)h(name)2000
+57108 y(of)447 b(the)h(en)-34 b(vironmen)g(t)448 b(as)f(its)h(\014rst)f
+(argumen)-34 b(t,)459 b(and)448 b(extra)f(argumen)-34
+b(ts)448 b(can)f(b)34 b(e)447 b(pro)-34 b(vided)447 b(b)-34
+b(y)448 b(adding)2000 58569 y(them)405 b(to)f(a)g(list)g(after)g(the)h
+(ho)34 b(ok.)3660 60344 y(F)-101 b(or)386 b(simple)g(en)-34
+b(vironmen)g(ts)387 b(with)g(argumen)-34 b(ts,)391 b(for)386
+b(example)g(de\014ned)h(with)g(`)p Fu(\\newenvironment)p
+FC(',)2000 61805 y(y)-34 b(ou)399 b(can)g(mak)-34 b(e)398
+b(A)-34 b(UCT)12992 62066 y(E)13667 61805 y(X)398 b(prompt)i(for)e(the)
+h(argumen)-34 b(ts)400 b(b)-34 b(y)399 b(giving)f(the)h(prompt)g
+(strings)g(in)g(the)g(call)2000 63266 y(to)454 b Fu
+(LaTeX-add-environments)p FC(.)694 b(The)454 b(fact)g(that)g(an)g
+(argumen)-34 b(t)455 b(is)e(optional)h(can)g(b)34 b(e)453
+b(indicated)h(b)-34 b(y)2000 64727 y(wrapping)405 b(the)g(prompt)g
+(string)f(in)h(a)f(v)-34 b(ector.)3660 66502 y(F)-101
+b(or)354 b(example,)362 b(if)354 b(y)-34 b(ou)353 b(ha)-34
+b(v)g(e)354 b(de\014ned)g(a)g Fu(loop)g FC(en)-34 b(vironmen)g(t)355
+b(with)f(the)g(three)f(argumen)-34 b(ts)354 b Ft(from)p
+FC(,)364 b Ft(to)p FC(,)2000 67963 y(and)405 b Ft(step)p
+FC(,)f(y)-34 b(ou)405 b(can)f(add)h(supp)34 b(ort)405
+b(for)f(them)h(in)f(a)g(st)-34 b(yle)404 b(\014le.)5200
+69738 y Fu(\045\045)637 b(loop.sty)p eop end
+%%Page: 87 92
+TeXDict begin 87 91 bop 2000 -1550 a FC(Chapter)405 b(5:)539
+b(Customization)405 b(and)g(Extension)24903 b(87)5200
+3985 y Fu(\\newenvironment{loop}[3]{...}{...})5200 5717
+y(;;)637 b(loop.el)5200 8639 y(\(TeX-add-style-hook)5836
+10100 y("loop")5836 11562 y(\(lambda)i(\(\))7109 13023
+y(\(LaTeX-add-environments)7745 14484 y('\("loop")h("From")e("To")g
+("Step"\)\)\)\))3660 16216 y FC(If)291 b(an)g(en)-34
+b(vironmen)g(t)291 b(is)f(de\014ned)h(m)-34 b(ultiple)291
+b(times,)313 b(A)-34 b(UCT)29805 16477 y(E)30480 16216
+y(X)290 b(will)g(c)-34 b(ho)34 b(ose)290 b(the)h(one)g(with)g(the)g
+(longest)2000 17677 y(de\014nition.)705 b(Th)-34 b(us,)475
+b(if)459 b(y)-34 b(ou)460 b(ha)-34 b(v)g(e)460 b(an)f(en)-34
+b(umerate)460 b(st)-34 b(yle)459 b(\014le,)473 b(and)460
+b(w)-34 b(an)g(t)461 b(it)f(to)f(replace)g(the)g(standard)2000
+19138 y(L)2322 18981 y Fv(a)2883 19138 y FC(T)3556 19399
+y(E)4230 19138 y(X)424 b(en)-34 b(umerate)425 b(ho)34
+b(ok)424 b(ab)34 b(o)-34 b(v)g(e,)429 b(y)-34 b(ou)425
+b(could)f(de\014ne)h(an)g Fu(enumerate.el)j FC(\014le)c(as)h(follo)-34
+b(ws,)429 b(and)c(place)2000 20599 y(it)404 b(in)g(the)h(appropriate)g
+(st)-34 b(yle)404 b(directory)-101 b(.)5200 22331 y Fu
+(\(TeX-add-style-hook)5836 23792 y("latex")5836 25253
+y(\(lambda)639 b(\(\))7109 26715 y(\(LaTeX-add-environments)7745
+28176 y('\("enumerate")i(LaTeX-env-enumerate)j(foo\)\)\)\))5200
+31098 y(\(defun)638 b(LaTeX-env-enumerate)644 b(\(environment)c
+(&optional)g(_ignore\))f(...\))3660 32830 y FC(The)450
+b(sym)-34 b(b)34 b(ol)449 b Fu(foo)h FC(will)f(b)34 b(e)449
+b(passed)h(to)f Fu(LaTeX-env-enumerate)456 b FC(as)449
+b(the)h(second)g(argumen)-34 b(t,)461 b(but)2000 34291
+y(since)404 b(w)-34 b(e)404 b(only)g(added)h(it)f(to)h(o)-34
+b(v)g(erwrite)404 b(the)g(de\014nition)h(in)g Fu(latex.el)i
+FC(it)d(is)f(just)j(ignored.)44663 36564 y([F)-101 b(unction])-47999
+b Fm(LaTeX-add-environments)614 b Fi(env)525 b Ff(.)322
+b(.)g(.)5200 38025 y FC(Add)405 b(eac)-34 b(h)404 b Ft(en)-34
+b(v)508 b FC(to)405 b(list)f(of)g(loaded)g(en)-34 b(vironmen)g(ts.)
+44663 40298 y([F)-101 b(unction])-47999 b Fm(LaTeX-insert-environment)
+615 b Fi(env)444 b Fg([)f Fi(extra)h Fg(])5200 41759
+y FC(Insert)404 b(en)-34 b(vironmen)g(t)405 b(of)g(t)-34
+b(yp)34 b(e)404 b Ft(en)-34 b(v)p FC(,)404 b(with)h(optional)g(argumen)
+-34 b(t)405 b Ft(extra)p FC(.)3660 44032 y(F)-101 b(ollo)-34
+b(wing)405 b(is)f(a)g(list)g(of)h(a)-34 b(v)-67 b(ailable)403
+b(ho)34 b(oks)404 b(for)g Fu(LaTeX-add-environments)p
+FC(:)2000 46035 y Fu(LaTeX-env-item)8400 47496 y FC(Insert)g(the)h(giv)
+-34 b(en)404 b(en)-34 b(vironmen)g(t)405 b(and)g(the)f(\014rst)h(item.)
+2000 49498 y Fu(LaTeX-env-figure)8400 50960 y FC(Insert)f(the)h(giv)-34
+b(en)404 b(\014gure-lik)-34 b(e)403 b(en)-34 b(vironmen)g(t)405
+b(with)g(a)f(caption)h(and)g(a)f(lab)34 b(el.)2000 52962
+y Fu(LaTeX-env-array)8400 54423 y FC(Insert)316 b(the)f(giv)-34
+b(en)316 b(arra)-34 b(y-lik)g(e)314 b(en)-34 b(vironmen)g(t)317
+b(with)f(p)34 b(osition)316 b(and)g(column)g(sp)34 b(eci\014cations.)
+2000 56425 y Fu(LaTeX-env-label)8400 57887 y FC(Insert)404
+b(the)h(giv)-34 b(en)404 b(en)-34 b(vironmen)g(t)405
+b(with)g(a)f(lab)34 b(el.)2000 59889 y Fu(LaTeX-env-list)8400
+61350 y FC(Insert)334 b(the)g(giv)-34 b(en)333 b(list-lik)-34
+b(e)333 b(en)-34 b(vironmen)g(t,)348 b(a)334 b(sp)34
+b(eci\014er)333 b(for)h(the)g(lab)34 b(el)333 b(and)h(the)g(\014rst)g
+(item.)2000 63353 y Fu(LaTeX-env-minipage)8400 64814
+y FC(Insert)459 b(the)h(giv)-34 b(en)459 b(minipage-lik)-34
+b(e)458 b(en)-34 b(vironmen)g(t)460 b(with)g(p)34 b(osition)460
+b(and)g(width)g(sp)34 b(eci\014ca-)8400 66275 y(tions.)2000
+68277 y Fu(LaTeX-env-tabular*)8400 69738 y FC(Insert)564
+b(the)g(giv)-34 b(en)563 b(tabular*-lik)-34 b(e)564 b(en)-34
+b(vironmen)g(t)564 b(with)h(width,)604 b(p)34 b(osition)564
+b(and)h(column)8400 71200 y(sp)34 b(eci\014cations.)p
+eop end
+%%Page: 88 93
+TeXDict begin 88 92 bop 2000 -1550 a FC(Chapter)405 b(5:)539
+b(Customization)405 b(and)g(Extension)24903 b(88)2000
+3985 y Fu(LaTeX-env-picture)8400 5446 y FC(Insert)404
+b(the)h(giv)-34 b(en)404 b(en)-34 b(vironmen)g(t)405
+b(with)g(width)g(and)g(heigh)-34 b(t)405 b(sp)34 b(eci\014cations.)2000
+7501 y Fu(LaTeX-env-bib)8400 8962 y FC(Insert)404 b(the)h(giv)-34
+b(en)404 b(en)-34 b(vironmen)g(t)405 b(with)g(a)f(lab)34
+b(el)403 b(for)h(a)g(bibitem.)2000 11016 y Fu(LaTeX-env-contents)8400
+12477 y FC(Insert)g(the)h(giv)-34 b(en)404 b(en)-34 b(vironmen)g(t)405
+b(with)g(a)f(\014lename)g(as)g(its)g(argumen)-34 b(t.)2000
+14532 y Fu(LaTeX-env-args)8400 15993 y FC(Insert)479
+b(the)g(giv)-34 b(en)478 b(en)-34 b(vironmen)g(t)480
+b(with)g(argumen)-34 b(ts.)763 b(Y)-101 b(ou)479 b(can)g(use)g(this)g
+(as)g(a)f(ho)34 b(ok)479 b(in)8400 17454 y(case)i(y)-34
+b(ou)481 b(w)-34 b(an)g(t)483 b(to)e(sp)34 b(ecify)481
+b(m)-34 b(ultiple)481 b(complex)g(argumen)-34 b(ts)482
+b(just)g(lik)-34 b(e)480 b(in)h(elemen)-34 b(ts)482 b(of)8400
+18915 y Fu(TeX-add-symbols)p FC(.)689 b(This)453 b(is)g(most)g(useful)g
+(if)g(the)g(sp)34 b(eci\014cation)452 b(of)h(argumen)-34
+b(ts)454 b(to)f(b)34 b(e)8400 20376 y(prompted)435 b(for)f(with)h
+(strings)f(and)h(strings)f(wrapp)34 b(ed)435 b(in)f(a)g(v)-34
+b(ector)433 b(as)h(describ)34 b(ed)434 b(ab)34 b(o)-34
+b(v)g(e)8400 21838 y(is)404 b(to)34 b(o)404 b(limited.)8400
+23595 y(Here)311 b(is)g(an)g(example)g(from)g Fu(listings.el)316
+b FC(whic)-34 b(h)312 b(calls)e(a)i(function)g(with)g(one)g(argumen)-34
+b(t)8400 25057 y(in)325 b(order)g(to)h(prompt)g(for)g(a)f(`)p
+Fu(key=value)p FC(')j(list)d(to)g(b)34 b(e)325 b(inserted)h(as)f(an)h
+(optional)g(argumen)-34 b(t)8400 26518 y(of)404 b(the)h(`)p
+Fu(lstlisting)p FC(')i(en)-34 b(vironmen)g(t:)11600 28276
+y Fu(\(LaTeX-add-environments)12236 29737 y('\("lstlisting")642
+b(LaTeX-env-args)13509 31198 y([TeX-arg-key-val)g
+(LaTeX-listings-key-val-options]\)\))3660 33252 y FC(Some)439
+b(pac)-34 b(k)-67 b(ages)439 b(pro)-34 b(vide)439 b(en)-34
+b(vironmen)g(ts)440 b(that)g(are)e(rarely)f(useful)j(to)f(non-exp)34
+b(ert)439 b(users.)642 b(Those)2000 34713 y(should)405
+b(b)34 b(e)404 b(mark)-34 b(ed)404 b(as)g(exp)34 b(ert)404
+b(en)-34 b(vironmen)g(ts)405 b(using)g Fu
+(LaTeX-declare-expert-environments)p FC(.)44663 37064
+y([F)-101 b(unction])-47999 b Fm(LaTeX-declare-expert-environments)619
+b Fi(style)444 b(environments)p Ff(...)5200 38526 y FC(Declare)403
+b Ft(en)-34 b(vironmen)g(ts)455 b FC(as)404 b(exp)34
+b(ert)403 b(en)-34 b(vironmen)g(ts)406 b(of)e Ft(st)-34
+b(yle)p FC(.)5200 40283 y(Exp)34 b(ert)372 b(en)-34 b(vironmen)g(ts)374
+b(are)d(completed)i(dep)34 b(ending)373 b(on)g Fu
+(TeX-complete-expert-commands)p FC(.)2000 42869 y Fq(5.6.4)818
+b(Adding)545 b(or)h(Examining)e(Other)i(Information)2000
+45656 y(5.6.4.1)818 b(Adding)545 b(bibliographies)g(in)g(st)-45
+b(yle)544 b(ho)45 b(oks)2000 47616 y FC(Y)-101 b(ou)396
+b(can)h(also)f(sp)34 b(ecify)395 b(bibliographical)h(databases)h(and)g
+(lab)34 b(els)395 b(in)h(the)h(st)-34 b(yle)396 b(\014le.)535
+b(This)397 b(is)e(probably)2000 49077 y(of)474 b(little)g(use,)491
+b(since)474 b(this)g(information)h(will)f(usually)g(b)34
+b(e)473 b(automatically)h(generated)h(from)f(the)g(T)48417
+49338 y(E)49091 49077 y(X)2000 50538 y(\014le)404 b(an)-34
+b(yw)g(a)g(y)-101 b(.)44663 52889 y([F)g(unction])-47999
+b Fm(LaTeX-add-bibliographies)615 b Fi(bibliography)528
+b Ff(.)322 b(.)g(.)5200 54350 y FC(Add)405 b(eac)-34
+b(h)404 b Ft(bibliograph)-34 b(y)509 b FC(to)404 b(list)g(of)h(loaded)f
+(bibliographies.)44663 56701 y([F)-101 b(unction])-47999
+b Fm(LaTeX-add-labels)612 b Fi(label)525 b Ff(.)322 b(.)g(.)5200
+58162 y FC(Add)405 b(eac)-34 b(h)404 b Ft(lab)34 b(el)451
+b FC(to)405 b(the)f(list)g(of)h(kno)-34 b(wn)405 b(lab)34
+b(els.)2000 60748 y Fq(5.6.4.2)818 b(Examining)544 b(P)-45
+b(ac)g(k)-91 b(age/Class)546 b(Options)2000 62707 y FC(In)494
+b(L)3927 62550 y Fv(a)4488 62707 y FC(T)5161 62968 y(E)5834
+62707 y(X)g(do)34 b(cumen)-34 b(ts,)518 b(st)-34 b(yle)493
+b(ho)34 b(oks)494 b(can)g(\014nd)h(the)f(pac)-34 b(k)-67
+b(age)494 b(names)g(and)h(those)f(options)h(giv)-34 b(en)494
+b(as)2000 64169 y(optional)405 b(argumen)-34 b(t\(s\))406
+b(of)e(`)p Fu(\\usepackage)p FC(')k(in)c Fu
+(LaTeX-provided-package-options)p FC(.)44946 66520 y([V)-101
+b(ariable])-48001 b Fm(LaTeX-provided-package-options)5200
+67981 y FC(Bu\013er)280 b(lo)34 b(cal)280 b(v)-67 b(ariable)279
+b(holding)i(alist)g(of)g(options)g(pro)-34 b(vided)282
+b(to)f(L)34519 67824 y Fv(a)35080 67981 y FC(T)35753
+68242 y(E)36426 67981 y(X)g(pac)-34 b(k)-67 b(ages.)497
+b(Eac)-34 b(h)281 b(elemen)-34 b(t)5200 69442 y(is)404
+b(a)g(cons)g(cell)f Fu(\()p Fs(package)k Fu(.)d Fs(option-list)p
+Fu(\))p FC(.)543 b(F)-101 b(or)404 b(example,)f(its)i(v)-67
+b(alue)403 b(will)h(b)34 b(e)9673 71200 y Fu(\(\("babel")639
+b(.)e(\("german"\)\))p eop end
+%%Page: 89 94
+TeXDict begin 89 93 bop 2000 -1550 a FC(Chapter)405 b(5:)539
+b(Customization)405 b(and)g(Extension)24903 b(89)10309
+3985 y Fu(\("geometry")640 b(.)d(\("a4paper")j("top=2cm")f
+("left=2.5cm")i("right=2.5cm"\)\))10309 5446 y(...\))3660
+7696 y FC(Y)-101 b(ou)467 b(can)e(examine)g(whether)i(there)e(is)g(a)h
+(sp)34 b(eci\014c)465 b(pac)-34 b(k)-67 b(age-option)466
+b(pair)g(b)-34 b(y)466 b Fu(LaTeX-provided-)2000 9157
+y(package-options-member)p FC(.)44663 11407 y([F)-101
+b(unction])-47999 b Fm(LaTeX-provided-package-options-member)620
+b Fi(package)445 b(option)5200 12868 y FC(Return)390
+b(non-)p Fu(nil)i FC(if)e Ft(option)g FC(has)h(b)34 b(een)389
+b(giv)-34 b(en)390 b(to)g Ft(pac)-34 b(k)-67 b(age)p
+FC(.)533 b(The)390 b(v)-67 b(alue)389 b(is)h(actually)f(the)h(tail)g
+(of)5200 14329 y(the)404 b(list)g(of)h(options)g(giv)-34
+b(en)404 b(to)h Ft(pac)-34 b(k)-67 b(age)p FC(.)3660
+16579 y(There)438 b(are)f(similar)f(facilities)h(for)g(class)h(names)f
+(and)i(those)f(options)g(giv)-34 b(en)438 b(in)f Fu(\\documentclass)
+2000 18040 y FC(declaration.)44946 20290 y([V)-101 b(ariable])-48001
+b Fm(LaTeX-provided-class-options)5200 21751 y FC(Bu\013er)380
+b(lo)34 b(cal)379 b(v)-67 b(ariable)379 b(holding)i(alist)g(of)g
+(options)g(pro)-34 b(vided)381 b(to)g(L)35417 21594 y
+Fv(a)35978 21751 y FC(T)36651 22012 y(E)37325 21751 y(X)f(classes.)530
+b(Eac)-34 b(h)381 b(elemen)-34 b(t)5200 23212 y(is)404
+b(a)g(cons)g(cell)f Fu(\()p Fs(class)j Fu(.)f Fs(option-list)p
+Fu(\))p FC(.)542 b(F)-101 b(or)404 b(example,)g(its)g(v)-67
+b(alue)403 b(will)h(b)34 b(e)9673 24936 y Fu(\(\("book")639
+b(.)e(\("a4paper")i("11pt")g("openany")h("fleqn"\)\))10309
+26397 y(...\))44663 28647 y FC([F)-101 b(unction])-47999
+b Fm(LaTeX-provided-class-options-member)619 b Fi(class)445
+b(option)5200 30108 y FC(Return)364 b(non-)p Fu(nil)h
+FC(if)f Ft(option)g FC(has)g(b)34 b(een)363 b(giv)-34
+b(en)364 b(to)f Ft(class)p FC(.)525 b(The)364 b(v)-67
+b(alue)362 b(is)i(actually)f(the)h(tail)f(of)g(the)5200
+31569 y(list)404 b(of)g(options)i(giv)-34 b(en)404 b(to)g
+Ft(class)p FC(.)44663 33819 y([F)-101 b(unction])-47999
+b Fm(LaTeX-match-class-option)615 b Fi(regexp)5200 35280
+y FC(Chec)-34 b(k)432 b(if)g(a)f(do)34 b(cumen)-34 b(tclass)433
+b(option)f(matc)-34 b(hing)433 b Ft(regexp)468 b FC(is)431
+b(activ)-34 b(e.)621 b(Return)433 b(\014rst)f(found)h(class)5200
+36741 y(option)405 b(matc)-34 b(hing)405 b Ft(regexp)p
+FC(,)e(or)h(nil)g(if)g(not)h(found.)3660 38991 y(These)620
+b(functions)g(are)e(also)h(useful)h(to)f(implemen)-34
+b(t)619 b(customized)g(predicate\(s\))h(in)f Fu(TeX-view-)2000
+40452 y(predicate-list)p FC(.)543 b(See)404 b(Section)h(4.2.1)e
+([Starting)i(View)-34 b(ers],)404 b(page)g(60.)2000 42970
+y Fq(5.6.4.3)818 b(Adding)545 b(Supp)45 b(ort)547 b(for)f(Option)f
+(Completion)2000 44930 y FC(When)332 b(the)h(user)e(inserts)h(`)p
+Fu(\\usepackage)p FC(')k(b)-34 b(y)332 b Fs(C-c)405 b(C-m)p
+FC(,)347 b(A)-34 b(UCT)31612 45191 y(E)32287 44930 y(X)332
+b(asks)g(for)g(the)g(optional)h(argumen)-34 b(ts)2000
+46391 y(after)550 b(the)f(pac)-34 b(k)-67 b(age)549 b(name)h(is)f(giv)
+-34 b(en.)974 b(The)550 b(st)-34 b(yle)549 b(\014le)g(of)h(that)g(pac)
+-34 b(k)-67 b(age)549 b(can)g(pro)-34 b(vide)550 b(completion)2000
+47852 y(supp)34 b(ort)405 b(for)f(the)h(optional)g(argumen)-34
+b(ts.)44946 50102 y([V)-101 b(ariable])-48001 b Fm(LaTeX-)p
+Fi(packagename)p Fm(-package-options)5200 51563 y FC(List)404
+b(of)g(optional)h(argumen)-34 b(ts)405 b(a)-34 b(v)-67
+b(ailable)404 b(for)g(the)g(pac)-34 b(k)-67 b(age.)3660
+53812 y(Here)404 b(is)g(an)g(excerption)g(from)g(`)p
+Fu(acronym.el)p FC(':)5200 55537 y Fu(\(defvar)639 b
+(LaTeX-acronym-package-options)6473 56998 y('\("footnote")h
+("nohyperlinks")i("printonlyused")f("withpage")7745 58459
+y("smaller")f("dua")e("nolist"\))6473 59920 y("Package)h(options)g(for)
+e(the)h(acronym)g(package."\))3660 61644 y FC(When)402
+b(the)f(pac)-34 b(k)-67 b(age)401 b(accepts)g(k)-34 b(ey-v)-67
+b(alue)399 b(st)-34 b(yle)401 b(optional)h(argumen)-34
+b(ts,)402 b(more)f(sophisticated)h(com-)2000 63105 y(pletion)422
+b(supp)34 b(ort)424 b(is)e(needed.)592 b(The)423 b(pac)-34
+b(k)-67 b(age)422 b(st)-34 b(yle)422 b(\014le)g(can)g(pro)-34
+b(vide)422 b(dynamic)g(completion)h(supp)34 b(ort)2000
+64566 y(b)-34 b(y)405 b(custom)f(elisp)g(function.)44663
+66816 y([F)-101 b(unction])-47999 b Fm(LaTeX-)p Fi(packagename)p
+Fm(-package-options)5200 68277 y FC(This)343 b(function)i(should)f(ask)
+e(the)i(user)f(for)g(optional)g(argumen)-34 b(ts)344
+b(and)g(return)f(them)h(as)f(a)g(string,)5200 69738 y(instead)352
+b(of)g(built-in)h(option)f(query)f(facilit)-34 b(y)-101
+b(.)521 b(When)352 b(this)g(function)h(is)e(de\014ned,)363
+b(A)-34 b(UCT)45768 69999 y(E)46443 69738 y(X)352 b(calls)5200
+71200 y(it)404 b(with)h(no)g(argumen)-34 b(t.)p eop end
+%%Page: 90 95
+TeXDict begin 90 94 bop 2000 -1550 a FC(Chapter)405 b(5:)539
+b(Customization)405 b(and)g(Extension)24903 b(90)3660
+3985 y(Here)404 b(is)g(an)g(excerption)g(from)g(`)p Fu(acro.el)p
+FC(':)5200 5747 y Fu(\(defun)638 b(LaTeX-acro-package-options)646
+b(\(\))6473 7208 y("Prompt)639 b(for)e(package)i(options)g(for)e(the)h
+(acro)f(package.")6473 8670 y(\(TeX-read-key-val)642
+b(t)637 b(LaTeX-acro-package-options-list\)\))3660 10432
+y FC(As)426 b(y)-34 b(ou)425 b(can)h(see)e(in)i(the)f(ab)34
+b(o)-34 b(v)g(e)426 b(example,)j(a)c(utilit)-34 b(y)426
+b(function)g Fu(TeX-read-key-val)431 b FC(is)425 b(a)-34
+b(v)-67 b(ailable)2000 11893 y(to)404 b(read)g(k)-34
+b(ey-v)-67 b(alue)403 b(pair\(s\))i(from)f(users.)3660
+13655 y(Note)409 b(that)h Fu(defvar)h FC(or)e Fu(defun)h
+FC(of)f Fu(LaTeX-)p Fs(packagename)p Fu(-package-options)421
+b FC(should)410 b(b)34 b(e)408 b(at)h(the)2000 15116
+y(top)476 b(lev)-34 b(el)474 b(of)h(the)g(st)-34 b(yle)475
+b(\014le)g(and)h(not)f(inside)g(the)h(st)-34 b(yle)474
+b(ho)34 b(ok,)493 b(b)34 b(ecause)474 b(the)i(st)-34
+b(yle)475 b(ho)34 b(ok)474 b(is)h(not)h(y)-34 b(et)2000
+16577 y(called)403 b(when)i(the)g(user)f(inputs)h(the)g(optional)g
+(argumen)-34 b(ts)405 b(in)f(resp)34 b(onse)404 b(to)h
+Fs(C-c)g(C-m)p FC(.)3660 18340 y(There)483 b(are)g(similar)f
+(facilities)g(for)h(class)g(options.)777 b(When)483 b(the)g(user)g
+(inserts)h(`)p Fu(\\documentclass)p FC(')2000 19801 y(b)-34
+b(y)445 b Fs(C-c)405 b(C-e)p FC(,)455 b(the)444 b(resp)34
+b(ectiv)-34 b(e)444 b(class)g(st)-34 b(yle)444 b(\014le)g(can)g(pro)-34
+b(vide)444 b(completion)h(supp)34 b(ort)445 b(for)g(the)f(optional)2000
+21262 y(argumen)-34 b(ts.)44946 23626 y([V)-101 b(ariable])-48001
+b Fm(LaTeX-)p Fi(classname)p Fm(-class-options)5200 25087
+y FC(List)404 b(of)g(optional)h(argumen)-34 b(ts)405
+b(a)-34 b(v)-67 b(ailable)404 b(for)g(the)g(class.)44663
+27451 y([F)-101 b(unction])-47999 b Fm(LaTeX-)p Fi(classname)p
+Fm(-class-options)5200 28912 y FC(Whic)-34 b(h)404 b(see.)2000
+31507 y Fq(5.6.5)818 b(Automatic)546 b(Extraction)h(of)e(New)g(Things)
+2000 33466 y FC(The)364 b(automatic)h(T)10808 33727 y(E)11482
+33466 y(X)f(information)h(extractor)e(w)-34 b(orks)365
+b(b)-34 b(y)364 b(searc)-34 b(hing)364 b(for)g(regular)g(expressions)f
+(in)h(the)2000 34927 y(T)2673 35188 y(E)3347 34927 y(X)459
+b(\014les,)473 b(and)461 b(storing)f(the)f(matc)-34 b(hed)461
+b(information.)706 b(Y)-101 b(ou)460 b(can)f(add)i(supp)34
+b(ort)460 b(for)g(new)g(constructs)2000 36389 y(to)404
+b(the)h(parser,)f(something)h(that)g(is)f(needed)g(when)h(y)-34
+b(ou)405 b(add)g(new)f(commands)h(to)g(de\014ne)f(sym)-34
+b(b)34 b(ols.)3660 38151 y(F)-101 b(or)405 b(example,)e(in)h(the)g
+(\014le)g Fu(macro.tex)k FC(I)403 b(de\014ne)i(the)f(follo)-34
+b(wing)405 b(macro.)5200 39913 y Fu(\\newcommand{\\newmacro}[5]{\045)
+5200 41374 y(\\def#1{#3\\index{#4@#5~cite{#4}}\\nocite{#4}}\045)5200
+42835 y(\\def#2{#5\\index{#4@#5~cite{#4}}\\nocite{#4}}\045)5200
+44296 y(})3660 46059 y FC(A)-34 b(UCT)6992 46319 y(E)7667
+46059 y(X)418 b(will)g(automatically)g(\014gure)g(out)h(that)g(`)p
+Fu(newmacro)p FC(')h(is)e(a)g(macro)g(that)h(tak)-34
+b(es)419 b(\014v)-34 b(e)418 b(argu-)2000 47520 y(men)-34
+b(ts.)852 b(Ho)-34 b(w)g(ev)g(er,)535 b(it)508 b(is)g(not)h(smart)g
+(enough)g(to)g(automatically)f(see)g(that)i(eac)-34 b(h)508
+b(time)g(w)-34 b(e)509 b(use)f(the)2000 48981 y(macro,)403
+b(t)-34 b(w)g(o)406 b(new)f(macros)e(are)h(de\014ned.)539
+b(W)-101 b(e)404 b(can)g(sp)34 b(ecify)404 b(this)g(information)h(in)g
+(a)f(st)-34 b(yle)404 b(ho)34 b(ok)404 b(\014le.)5200
+50743 y Fu(;;;)637 b(macro.el)j(---)d(Special)i(code)f(for)f(my)g(own)h
+(macro)g(file.)5200 53665 y(;;;)f(Code:)5200 56588 y(\(defvar)i
+(TeX-newmacro-regexp)6473 58049 y
+('\("\\\\\\\\newmacro{\\\\\\\\\\\\\([a-zA-Z]+\\\\\)}{\\\\\\\\\\\\\([)p
+(a-zA-Z]+\\\\\)}")7745 59510 y(\(1)e(2\))h(TeX-auto-multi\))6473
+60971 y("Matches)h(\\\\newmacro)h(definitions."\))5200
+63894 y(\(defvar)f(TeX-auto-multi)i(nil)6473 65355 y("Temporary)f(for)d
+(parsing)i(\\\\newmacro)h(definitions."\))5200 68277
+y(\(defun)e(TeX-macro-cleanup)643 b(\(\))6473 69738 y("Move)638
+b(symbols)h(from)e(`TeX-auto-multi')643 b(to)637 b(`TeX-auto-symbol'.")
+6473 71200 y(\(mapc)h(\(lambda)h(\(list\))p eop end
+%%Page: 91 96
+TeXDict begin 91 95 bop 2000 -1550 a FC(Chapter)405 b(5:)539
+b(Customization)405 b(and)g(Extension)24903 b(91)11564
+3985 y Fu(\(mapc)638 b(\(lambda)h(\(symbol\))16654 5446
+y(\(setq)g(TeX-auto-symbol)20473 6907 y(\(cons)f(symbol)g
+(TeX-auto-symbol\)\)\))15382 8369 y(list\)\))10291 9830
+y(TeX-auto-multi\)\))5200 12752 y(\(defun)g(TeX-macro-prepare)643
+b(\(\))6473 14213 y("Clear)638 b(`Tex-auto-multi')k(before)d(use.")6473
+15675 y(\(setq)f(TeX-auto-multi)j(nil\)\))5200 18597
+y(\(add-hook)f('TeX-auto-prepare-hook)k(#'TeX-macro-prepare\))5200
+20058 y(\(add-hook)c('TeX-auto-cleanup-hook)k(#'TeX-macro-cleanup\))
+5200 22980 y(\(TeX-add-style-hook)5836 24442 y("macro")5836
+25903 y(\(lambda)639 b(\(\))7109 27364 y(\(TeX-auto-add-regexp)644
+b(TeX-newmacro-regexp\))7109 28825 y(\(TeX-add-symbols)e('\("newmacro")
+19200 30286 y(TeX-arg-macro)19200 31748 y(\(TeX-arg-macro)f
+("Capitalized)g(macro:)d(\\\\"\))19200 33209 y(t)19200
+34670 y("BibTeX)h(entry:)f(")19200 36131 y(nil\)\)\)\))5200
+39054 y(;;;)f(macro.el)j(ends)d(here)3660 40839 y FC(When)378
+b(this)f(\014le)g(is)f(\014rst)i(loaded,)k(it)377 b(adds)g(a)g(new)h
+(en)-34 b(try)377 b(to)g Fu(TeX-newmacro-regexp)p FC(,)389
+b(and)377 b(de\014nes)2000 42301 y(a)451 b(function)i(to)e(b)34
+b(e)451 b(called)f(b)34 b(efore)451 b(the)h(parsing)f(starts,)464
+b(and)452 b(one)f(to)g(b)34 b(e)451 b(called)g(after)g(the)h(parsing)f
+(is)2000 43762 y(done.)772 b(It)482 b(also)f(declares)g(a)h(v)-67
+b(ariable)481 b(to)h(con)-34 b(tain)483 b(the)f(data)g(collected)f
+(during)i(parsing.)772 b(Finally)-101 b(,)500 b(it)2000
+45223 y(adds)405 b(a)f(st)-34 b(yle)404 b(ho)34 b(ok)404
+b(whic)-34 b(h)405 b(describ)34 b(es)403 b(the)i(`)p
+Fu(newmacro)p FC(')h(macro,)e(as)g(w)-34 b(e)404 b(ha)-34
+b(v)g(e)405 b(seen)f(it)g(b)34 b(efore.)3660 47009 y(So)296
+b(the)g(general)f(strategy)g(is:)484 b(Add)296 b(a)g(new)g(en)-34
+b(try)295 b(to)h Fu(TeX-newmacro-regexp)p FC(.)509 b(Declare)294
+b(a)h(v)-67 b(ariable)2000 48470 y(to)302 b(con)-34 b(tain)304
+b(in)-34 b(termediate)302 b(data)h(during)g(parsing.)504
+b(Add)303 b(ho)34 b(ok)302 b(to)h(b)34 b(e)302 b(called)f(b)34
+b(efore)302 b(and)h(after)f(parsing.)2000 49931 y(In)362
+b(this)h(case,)370 b(the)363 b(ho)34 b(ok)362 b(b)34
+b(efore)362 b(parsing)h(just)h(initializes)d(the)i(v)-67
+b(ariable,)369 b(and)363 b(the)g(ho)34 b(ok)362 b(after)h(parsing)2000
+51392 y(collects)403 b(the)i(data)g(from)f(the)h(v)-67
+b(ariable,)402 b(and)j(adds)g(them)g(to)f(the)h(list)f(of)g(sym)-34
+b(b)34 b(ols)404 b(found.)44946 53828 y([V)-101 b(ariable])-48001
+b Fm(TeX-auto-regexp-list)5200 55289 y FC(List)404 b(of)g(regular)g
+(expressions)g(matc)-34 b(hing)405 b(T)25422 55550 y(E)26096
+55289 y(X)f(macro)f(de\014nitions.)5200 57075 y(The)e(list)f(has)h(the)
+f(follo)-34 b(wing)401 b(format)g(\(\()p Ft(regexp)438
+b(matc)-34 b(h)401 b(table)68 b FC(\))474 b(.)294 b(.)f(.)147
+b(\),)401 b(that)g(is,)g(eac)-34 b(h)400 b(en)-34 b(try)401
+b(is)f(a)5200 58536 y(list)k(with)h(three)f(elemen)-34
+b(ts.)5200 60322 y Ft(regexp)p FC(.)538 b(Regular)404
+b(expression)g(matc)-34 b(hing)405 b(the)f(macro)g(w)-34
+b(e)404 b(w)-34 b(an)g(t)406 b(to)f(parse.)5200 62108
+y Ft(matc)-34 b(h)p FC(.)533 b(A)387 b(n)-34 b(um)g(b)34
+b(er)387 b(or)f(list)h(of)f(n)-34 b(um)g(b)34 b(ers,)391
+b(eac)-34 b(h)387 b(represen)-34 b(ting)386 b(one)h(paren)-34
+b(thesized)387 b(sub)34 b(expres-)5200 63569 y(sion)404
+b(matc)-34 b(hed)405 b(b)-34 b(y)405 b Ft(regexp)p FC(.)5200
+65355 y Ft(table)p FC(.)538 b(The)404 b(sym)-34 b(b)34
+b(ol)404 b(table)f(to)h(store)f(the)h(data.)539 b(This)404
+b(can)f(b)34 b(e)403 b(a)h(function,)g(in)f(whic)-34
+b(h)405 b(case)d(the)5200 66816 y(function)506 b(is)e(called)f(with)i
+(the)g(argumen)-34 b(t)505 b Ft(matc)-34 b(h)p FC(.)840
+b(Use)504 b Fu(TeX-match-buffer)510 b FC(to)505 b(get)f(matc)-34
+b(h)5200 68277 y(data.)537 b(If)398 b(it)g(is)f(not)i(a)e(function,)j
+(it)e(is)g(presumed)g(to)g(b)34 b(e)398 b(the)g(name)g(of)g(a)g(v)-67
+b(ariable)396 b(con)-34 b(taining)399 b(a)5200 69738
+y(list)387 b(of)h(matc)-34 b(h)389 b(data.)533 b(The)389
+b(matc)-34 b(hed)388 b(data)g(\(a)g(string)g(if)g Ft(matc)-34
+b(h)388 b FC(is)g(a)f(n)-34 b(um)g(b)34 b(er,)392 b(a)387
+b(list)h(of)f(strings)5200 71200 y(if)404 b Ft(matc)-34
+b(h)405 b FC(is)f(a)g(list)g(of)g(n)-34 b(um)g(b)34 b(ers\))406
+b(is)e(put)h(in)f(fron)-34 b(t)406 b(of)e(the)h(table.)p
+eop end
+%%Page: 92 97
+TeXDict begin 92 96 bop 2000 -1550 a FC(Chapter)405 b(5:)539
+b(Customization)405 b(and)g(Extension)24903 b(92)44946
+3985 y([V)-101 b(ariable])-48001 b Fm(TeX-auto-prepare-hook)614
+b Ff(nil)5200 5446 y FC(List)404 b(of)g(functions)i(to)e(b)34
+b(e)404 b(called)f(b)34 b(efore)404 b(parsing)h(a)f(T)30395
+5707 y(E)31069 5446 y(X)g(\014le.)44946 7904 y([V)-101
+b(ariable])-48001 b Fm(TeX-auto-cleanup-hook)614 b Ff(nil)5200
+9365 y FC(List)404 b(of)g(functions)i(to)e(b)34 b(e)404
+b(called)f(after)i(parsing)f(a)g(T)29620 9626 y(E)30294
+9365 y(X)g(\014le.)p eop end
+%%Page: 93 98
+TeXDict begin 93 97 bop 48788 -1550 a FC(93)2000 1882
+y Fz(App)60 b(endix)1037 b(A)1076 b(Cop)-60 b(ying,)716
+b(Changes,)g(Dev)-60 b(elopmen)g(t,)14601 3985 y(F)-239
+b(A)-60 b(Q,)717 b(T)-179 b(exinfo)714 b(Mo)60 b(de)2000
+8644 y FB(A.1)897 b(Cop)-50 b(ying)598 b(this)h(Man)-50
+b(ual)2000 10769 y FC(The)405 b(full)f(license)f(text)h(can)g(b)34
+b(e)404 b(read)g(here:)2000 13460 y Fq(A.1.1)817 b(GNU)546
+b(F)-136 b(ree)544 b(Do)45 b(cumen)-45 b(tation)547 b(License)18114
+15419 y FC(V)-101 b(ersion)404 b(1.3,)g(3)g(No)-34 b(v)g(em)g(b)34
+b(er)404 b(2008)5200 17247 y(Cop)-34 b(yrigh)g(t)11230
+17210 y(c)10894 17247 y FA(\015)404 b FC(2000,)g(2001,)g(2002,)g(2007,)
+g(2008)g(F)-101 b(ree)403 b(Soft)-34 b(w)g(are)5200 18708
+y(F)-101 b(oundation,)406 b(Inc.)807 b Fu(https://fsf.org/)5200
+21631 y FC(Ev)-34 b(ery)g(one)404 b(is)g(p)34 b(ermitted)404
+b(to)g(cop)-34 b(y)405 b(and)f(distribute)h(v)-34 b(erbatim)405
+b(copies)5200 23092 y(of)f(this)h(license)e(do)34 b(cumen)-34
+b(t,)405 b(but)g(c)-34 b(hanging)406 b(it)e(is)f(not)i(allo)-34
+b(w)g(ed.)2657 24919 y(0.)800 b(PREAMBLE)4400 26730 y(The)495
+b(purp)34 b(ose)494 b(of)g(this)h(License)e(is)h(to)g(mak)-34
+b(e)494 b(a)g(man)-34 b(ual,)517 b(textb)34 b(o)g(ok,)516
+b(or)494 b(other)g(functional)h(and)4400 28191 y(useful)402
+b(do)34 b(cumen)-34 b(t)402 b Ft(free)468 b FC(in)401
+b(the)g(sense)g(of)g(freedom:)537 b(to)401 b(assure)g(ev)-34
+b(ery)g(one)401 b(the)g(e\013ectiv)-34 b(e)400 b(freedom)4400
+29652 y(to)418 b(cop)-34 b(y)418 b(and)h(redistribute)f(it,)j(with)e
+(or)f(without)h(mo)34 b(difying)418 b(it,)j(either)d(commercially)d(or)
+j(non-)4400 31113 y(commercially)-101 b(.)705 b(Secondarily)-101
+b(,)474 b(this)461 b(License)e(preserv)-34 b(es)459 b(for)i(the)g
+(author)g(and)g(publisher)g(a)f(w)-34 b(a)g(y)4400 32575
+y(to)481 b(get)g(credit)f(for)g(their)h(w)-34 b(ork,)500
+b(while)480 b(not)h(b)34 b(eing)481 b(considered)f(resp)34
+b(onsible)481 b(for)f(mo)34 b(di\014cations)4400 34036
+y(made)404 b(b)-34 b(y)405 b(others.)4400 35846 y(This)309
+b(License)e(is)g(a)h(kind)g(of)h(\\cop)-34 b(yleft",)327
+b(whic)-34 b(h)309 b(means)g(that)g(deriv)-67 b(ativ)-34
+b(e)307 b(w)-34 b(orks)308 b(of)g(the)h(do)34 b(cumen)-34
+b(t)4400 37307 y(m)g(ust)452 b(themselv)-34 b(es)450
+b(b)34 b(e)451 b(free)f(in)h(the)g(same)f(sense.)678
+b(It)451 b(complemen)-34 b(ts)451 b(the)g(GNU)g(General)f(Public)4400
+38769 y(License,)403 b(whic)-34 b(h)405 b(is)f(a)g(cop)-34
+b(yleft)404 b(license)f(designed)i(for)f(free)g(soft)-34
+b(w)g(are.)4400 40579 y(W)-101 b(e)392 b(ha)-34 b(v)g(e)393
+b(designed)f(this)h(License)e(in)i(order)f(to)g(use)h(it)f(for)h(man)
+-34 b(uals)393 b(for)g(free)e(soft)-34 b(w)g(are,)396
+b(b)34 b(ecause)4400 42040 y(free)561 b(soft)-34 b(w)g(are)562
+b(needs)f(free)g(do)34 b(cumen)-34 b(tation:)854 b(a)561
+b(free)f(program)h(should)h(come)f(with)h(man)-34 b(uals)4400
+43501 y(pro)g(viding)383 b(the)h(same)f(freedoms)g(that)h(the)f(soft)
+-34 b(w)g(are)385 b(do)34 b(es.)531 b(But)383 b(this)h(License)e(is)g
+(not)i(limited)f(to)4400 44963 y(soft)-34 b(w)g(are)409
+b(man)-34 b(uals;)410 b(it)d(can)g(b)34 b(e)407 b(used)h(for)g(an)-34
+b(y)408 b(textual)f(w)-34 b(ork,)408 b(regardless)f(of)h(sub)67
+b(ject)409 b(matter)e(or)4400 46424 y(whether)419 b(it)f(is)g
+(published)i(as)e(a)h(prin)-34 b(ted)419 b(b)34 b(o)g(ok.)580
+b(W)-101 b(e)418 b(recommend)g(this)h(License)e(principally)h(for)4400
+47885 y(w)-34 b(orks)404 b(whose)h(purp)34 b(ose)405
+b(is)f(instruction)h(or)f(reference.)2657 49695 y(1.)800
+b(APPLICABILITY)403 b(AND)h(DEFINITIONS)4400 51506 y(This)532
+b(License)e(applies)h(to)h(an)-34 b(y)531 b(man)-34 b(ual)532
+b(or)f(other)h(w)-34 b(ork,)563 b(in)531 b(an)-34 b(y)531
+b(medium,)563 b(that)533 b(con)-34 b(tains)532 b(a)4400
+52967 y(notice)552 b(placed)g(b)-34 b(y)553 b(the)g(cop)-34
+b(yrigh)g(t)553 b(holder)f(sa)-34 b(ying)553 b(it)f(can)h(b)34
+b(e)552 b(distributed)h(under)g(the)g(terms)4400 54428
+y(of)499 b(this)g(License.)820 b(Suc)-34 b(h)500 b(a)e(notice)g(gran)
+-34 b(ts)500 b(a)e(w)-34 b(orld-wide,)523 b(ro)-34 b(y)g(alt)g(y-free)
+498 b(license,)521 b(unlimited)499 b(in)4400 55889 y(duration,)652
+b(to)602 b(use)g(that)h(w)-34 b(ork)602 b(under)h(the)f(conditions)h
+(stated)g(herein.)1131 b(The)602 b(\\Do)34 b(cumen)-34
+b(t",)4400 57350 y(b)34 b(elo)-34 b(w,)382 b(refers)377
+b(to)g(an)-34 b(y)378 b(suc)-34 b(h)378 b(man)-34 b(ual)378
+b(or)f(w)-34 b(ork.)530 b(An)-34 b(y)377 b(mem)-34 b(b)34
+b(er)377 b(of)g(the)h(public)f(is)g(a)g(licensee,)k(and)4400
+58812 y(is)332 b(addressed)g(as)g(\\y)-34 b(ou".)515
+b(Y)-101 b(ou)333 b(accept)f(the)g(license)f(if)h(y)-34
+b(ou)333 b(cop)-34 b(y)-101 b(,)346 b(mo)34 b(dify)332
+b(or)f(distribute)i(the)g(w)-34 b(ork)4400 60273 y(in)404
+b(a)g(w)-34 b(a)g(y)405 b(requiring)e(p)34 b(ermission)404
+b(under)h(cop)-34 b(yrigh)g(t)405 b(la)-34 b(w.)4400
+62083 y(A)448 b(\\Mo)34 b(di\014ed)448 b(V)-101 b(ersion")448
+b(of)g(the)h(Do)34 b(cumen)-34 b(t)448 b(means)h(an)-34
+b(y)448 b(w)-34 b(ork)448 b(con)-34 b(taining)449 b(the)g(Do)34
+b(cumen)-34 b(t)448 b(or)4400 63544 y(a)499 b(p)34 b(ortion)500
+b(of)f(it,)523 b(either)499 b(copied)g(v)-34 b(erbatim,)523
+b(or)499 b(with)h(mo)34 b(di\014cations)500 b(and/or)g(translated)g(in)
+-34 b(to)4400 65006 y(another)405 b(language.)4400 66816
+y(A)345 b(\\Secondary)f(Section")h(is)g(a)f(named)i(app)34
+b(endix)345 b(or)f(a)g(fron)-34 b(t-matter)347 b(section)d(of)h(the)g
+(Do)34 b(cumen)-34 b(t)4400 68277 y(that)284 b(deals)f(exclusiv)-34
+b(ely)281 b(with)j(the)f(relationship)h(of)f(the)g(publishers)h(or)f
+(authors)h(of)f(the)g(Do)34 b(cumen)-34 b(t)4400 69738
+y(to)496 b(the)g(Do)34 b(cumen)-34 b(t's)496 b(o)-34
+b(v)g(erall)495 b(sub)67 b(ject)497 b(\(or)f(to)g(related)f(matters\))i
+(and)f(con)-34 b(tains)497 b(nothing)g(that)4400 71200
+y(could)537 b(fall)f(directly)g(within)h(that)h(o)-34
+b(v)g(erall)536 b(sub)67 b(ject.)937 b(\(Th)-34 b(us,)571
+b(if)537 b(the)g(Do)34 b(cumen)-34 b(t)537 b(is)f(in)h(part)g(a)p
+eop end
+%%Page: 94 99
+TeXDict begin 94 98 bop 2000 -1550 a FC(App)34 b(endix)405
+b(A:)e(Cop)-34 b(ying,)405 b(Changes,)g(Dev)-34 b(elopmen)g(t,)404
+b(F)-135 b(A)-34 b(Q,)405 b(T)-101 b(exinfo)404 b(Mo)34
+b(de)11125 b(94)4400 3985 y(textb)34 b(o)g(ok)314 b(of)g(mathematics,)
+332 b(a)314 b(Secondary)g(Section)g(ma)-34 b(y)314 b(not)g(explain)g
+(an)-34 b(y)314 b(mathematics.\))509 b(The)4400 5446
+y(relationship)364 b(could)f(b)34 b(e)363 b(a)g(matter)h(of)f
+(historical)g(connection)h(with)g(the)g(sub)67 b(ject)364
+b(or)f(with)h(related)4400 6907 y(matters,)489 b(or)471
+b(of)i(legal,)487 b(commercial,)g(philosophical,)i(ethical)471
+b(or)h(p)34 b(olitical)471 b(p)34 b(osition)472 b(regarding)4400
+8369 y(them.)4400 10456 y(The)341 b(\\In)-34 b(v)-67
+b(arian)-34 b(t)341 b(Sections")g(are)f(certain)g(Secondary)h(Sections)
+g(whose)g(titles)g(are)f(designated,)354 b(as)4400 11917
+y(b)34 b(eing)354 b(those)g(of)h(In)-34 b(v)-67 b(arian)-34
+b(t)354 b(Sections,)364 b(in)354 b(the)g(notice)g(that)h(sa)-34
+b(ys)354 b(that)h(the)g(Do)34 b(cumen)-34 b(t)354 b(is)g(released)4400
+13378 y(under)369 b(this)f(License.)526 b(If)368 b(a)g(section)g(do)34
+b(es)368 b(not)h(\014t)g(the)g(ab)34 b(o)-34 b(v)g(e)368
+b(de\014nition)h(of)g(Secondary)f(then)h(it)f(is)4400
+14840 y(not)424 b(allo)-34 b(w)g(ed)425 b(to)f(b)34 b(e)423
+b(designated)i(as)e(In)-34 b(v)-67 b(arian)-34 b(t.)598
+b(The)424 b(Do)34 b(cumen)-34 b(t)424 b(ma)-34 b(y)424
+b(con)-34 b(tain)425 b(zero)d(In)-34 b(v)-67 b(arian)-34
+b(t)4400 16301 y(Sections.)513 b(If)328 b(the)g(Do)34
+b(cumen)-34 b(t)328 b(do)34 b(es)327 b(not)h(iden)-34
+b(tify)329 b(an)-34 b(y)327 b(In)-34 b(v)-67 b(arian)-34
+b(t)328 b(Sections)g(then)g(there)g(are)f(none.)4400
+18388 y(The)488 b(\\Co)-34 b(v)g(er)487 b(T)-101 b(exts")488
+b(are)f(certain)g(short)g(passages)h(of)g(text)f(that)i(are)d(listed,)
+508 b(as)487 b(F)-101 b(ron)-34 b(t-Co)g(v)g(er)4400
+19849 y(T)-101 b(exts)333 b(or)f(Bac)-34 b(k-Co)g(v)g(er)333
+b(T)-101 b(exts,)347 b(in)332 b(the)i(notice)e(that)i(sa)-34
+b(ys)333 b(that)h(the)f(Do)34 b(cumen)-34 b(t)333 b(is)g(released)e
+(under)4400 21311 y(this)344 b(License.)517 b(A)344 b(F)-101
+b(ron)-34 b(t-Co)g(v)g(er)345 b(T)-101 b(ext)344 b(ma)-34
+b(y)344 b(b)34 b(e)343 b(at)h(most)g(5)g(w)-34 b(ords,)356
+b(and)345 b(a)f(Bac)-34 b(k-Co)g(v)g(er)343 b(T)-101
+b(ext)344 b(ma)-34 b(y)4400 22772 y(b)34 b(e)404 b(at)g(most)h(25)f(w)
+-34 b(ords.)4400 24859 y(A)472 b(\\T)-101 b(ransparen)-34
+b(t")474 b(cop)-34 b(y)473 b(of)f(the)h(Do)34 b(cumen)-34
+b(t)472 b(means)h(a)f(mac)-34 b(hine-readable)473 b(cop)-34
+b(y)-101 b(,)489 b(represen)-34 b(ted)4400 26320 y(in)475
+b(a)g(format)h(whose)f(sp)34 b(eci\014cation)476 b(is)e(a)-34
+b(v)-67 b(ailable)474 b(to)i(the)f(general)g(public,)492
+b(that)477 b(is)d(suitable)i(for)4400 27782 y(revising)421
+b(the)h(do)34 b(cumen)-34 b(t)423 b(straigh)-34 b(tforw)g(ardly)423
+b(with)f(generic)f(text)h(editors)f(or)h(\(for)g(images)f(com-)4400
+29243 y(p)34 b(osed)316 b(of)h(pixels\))f(generic)f(pain)-34
+b(t)317 b(programs)f(or)g(\(for)g(dra)-34 b(wings\))318
+b(some)e(widely)g(a)-34 b(v)-67 b(ailable)315 b(dra)-34
+b(wing)4400 30704 y(editor,)390 b(and)d(that)h(is)e(suitable)h(for)g
+(input)h(to)f(text)f(formatters)i(or)e(for)h(automatic)g(translation)h
+(to)4400 32165 y(a)357 b(v)-67 b(ariet)-34 b(y)356 b(of)h(formats)h
+(suitable)f(for)g(input)h(to)g(text)f(formatters.)523
+b(A)357 b(cop)-34 b(y)357 b(made)g(in)g(an)h(otherwise)4400
+33626 y(T)-101 b(ransparen)-34 b(t)502 b(\014le)e(format)h(whose)g
+(markup,)525 b(or)500 b(absence)g(of)h(markup,)524 b(has)501
+b(b)34 b(een)500 b(arranged)h(to)4400 35087 y(th)-34
+b(w)g(art)355 b(or)e(discourage)h(subsequen)-34 b(t)355
+b(mo)34 b(di\014cation)354 b(b)-34 b(y)353 b(readers)g(is)g(not)h(T)
+-101 b(ransparen)-34 b(t.)524 b(An)353 b(image)4400 36549
+y(format)458 b(is)e(not)i(T)-101 b(ransparen)-34 b(t)459
+b(if)e(used)h(for)f(an)-34 b(y)457 b(substan)-34 b(tial)459
+b(amoun)-34 b(t)459 b(of)e(text.)698 b(A)457 b(cop)-34
+b(y)457 b(that)h(is)4400 38010 y(not)405 b(\\T)-101 b(ransparen)-34
+b(t")406 b(is)e(called)f(\\Opaque".)4400 40097 y(Examples)707
+b(of)g(suitable)h(formats)g(for)f(T)-101 b(ransparen)-34
+b(t)709 b(copies)e(include)g(plain)h Fv(asci)27 b(i)708
+b FC(without)4400 41558 y(markup,)500 b(T)-101 b(exinfo)482
+b(input)g(format,)501 b(LaT)23457 41819 y(E)24130 41558
+y(X)481 b(input)h(format,)501 b Fr(SGML)480 b FC(or)h
+Fr(XML)g FC(using)g(a)g(publicly)4400 43020 y(a)-34 b(v)-67
+b(ailable)331 b Fr(DTD)p FC(,)346 b(and)333 b(standard-conforming)i
+(simple)d Fr(HTML)p FC(,)346 b(P)-34 b(ostScript)333
+b(or)f Fr(PDF)g FC(designed)h(for)4400 44481 y(h)-34
+b(uman)469 b(mo)34 b(di\014cation.)730 b(Examples)468
+b(of)g(transparen)-34 b(t)469 b(image)e(formats)i(include)e
+Fr(PNG)p FC(,)484 b Fr(X)-31 b(CF)468 b FC(and)4400 45942
+y Fr(JPG)p FC(.)800 b(Opaque)491 b(formats)h(include)f(proprietary)g
+(formats)h(that)h(can)e(b)34 b(e)491 b(read)g(and)i(edited)e(only)4400
+47403 y(b)-34 b(y)455 b(proprietary)f(w)-34 b(ord)455
+b(pro)34 b(cessors,)466 b Fr(SGML)453 b FC(or)h Fr(XML)g
+FC(for)h(whic)-34 b(h)455 b(the)f Fr(DTD)g FC(and/or)h(pro)34
+b(cessing)4400 48864 y(to)g(ols)356 b(are)g(not)g(generally)f(a)-34
+b(v)-67 b(ailable,)365 b(and)357 b(the)f(mac)-34 b(hine-generated)357
+b Fr(HTML)p FC(,)365 b(P)-34 b(ostScript)358 b(or)d Fr(PDF)4400
+50326 y FC(pro)34 b(duced)405 b(b)-34 b(y)404 b(some)g(w)-34
+b(ord)405 b(pro)34 b(cessors)404 b(for)g(output)i(purp)34
+b(oses)405 b(only)-101 b(.)4400 52413 y(The)457 b(\\Title)f(P)-34
+b(age")456 b(means,)469 b(for)457 b(a)f(prin)-34 b(ted)457
+b(b)34 b(o)g(ok,)468 b(the)457 b(title)f(page)h(itself,)468
+b(plus)457 b(suc)-34 b(h)457 b(follo)-34 b(wing)4400
+53874 y(pages)368 b(as)g(are)g(needed)g(to)g(hold,)376
+b(legibly)-101 b(,)373 b(the)c(material)e(this)i(License)d(requires)h
+(to)i(app)34 b(ear)368 b(in)f(the)4400 55335 y(title)353
+b(page.)522 b(F)-101 b(or)353 b(w)-34 b(orks)354 b(in)g(formats)g(whic)
+-34 b(h)354 b(do)g(not)g(ha)-34 b(v)g(e)354 b(an)-34
+b(y)354 b(title)f(page)h(as)f(suc)-34 b(h,)365 b(\\Title)353
+b(P)-34 b(age")4400 56797 y(means)408 b(the)f(text)h(near)f(the)g(most)
+h(prominen)-34 b(t)408 b(app)34 b(earance)408 b(of)f(the)h(w)-34
+b(ork's)407 b(title,)g(preceding)g(the)4400 58258 y(b)34
+b(eginning)405 b(of)f(the)h(b)34 b(o)g(dy)404 b(of)g(the)h(text.)4400
+60345 y(The)461 b(\\publisher")h(means)f(an)-34 b(y)461
+b(p)34 b(erson)461 b(or)g(en)-34 b(tit)g(y)461 b(that)h(distributes)g
+(copies)f(of)g(the)g(Do)34 b(cumen)-34 b(t)4400 61806
+y(to)405 b(the)f(public.)4400 63894 y(A)395 b(section)g(\\En)-34
+b(titled)395 b(XYZ")g(means)g(a)g(named)h(subunit)g(of)f(the)h(Do)34
+b(cumen)-34 b(t)395 b(whose)h(title)e(either)4400 65355
+y(is)369 b(precisely)f(XYZ)h(or)g(con)-34 b(tains)370
+b(XYZ)f(in)g(paren)-34 b(theses)370 b(follo)-34 b(wing)370
+b(text)g(that)g(translates)g(XYZ)f(in)4400 66816 y(another)332
+b(language.)515 b(\(Here)331 b(XYZ)h(stands)h(for)e(a)h(sp)34
+b(eci\014c)331 b(section)g(name)h(men)-34 b(tioned)333
+b(b)34 b(elo)-34 b(w,)346 b(suc)-34 b(h)4400 68277 y(as)374
+b(\\Ac)-34 b(kno)g(wledgemen)g(ts",)382 b(\\Dedications",)e
+(\\Endorsemen)-34 b(ts",)382 b(or)374 b(\\History".\))529
+b(T)-101 b(o)374 b(\\Preserv)-34 b(e)4400 69738 y(the)447
+b(Title")g(of)f(suc)-34 b(h)448 b(a)e(section)h(when)h(y)-34
+b(ou)447 b(mo)34 b(dify)446 b(the)h(Do)34 b(cumen)-34
+b(t)447 b(means)g(that)h(it)f(remains)f(a)4400 71200
+y(section)404 b(\\En)-34 b(titled)405 b(XYZ")f(according)g(to)h(this)f
+(de\014nition.)p eop end
+%%Page: 95 100
+TeXDict begin 95 99 bop 2000 -1550 a FC(App)34 b(endix)405
+b(A:)e(Cop)-34 b(ying,)405 b(Changes,)g(Dev)-34 b(elopmen)g(t,)404
+b(F)-135 b(A)-34 b(Q,)405 b(T)-101 b(exinfo)404 b(Mo)34
+b(de)11125 b(95)4400 3985 y(The)369 b(Do)34 b(cumen)-34
+b(t)369 b(ma)-34 b(y)368 b(include)g(W)-101 b(arran)-34
+b(t)g(y)369 b(Disclaimers)e(next)h(to)h(the)g(notice)f(whic)-34
+b(h)369 b(states)g(that)4400 5446 y(this)451 b(License)e(applies)i(to)g
+(the)g(Do)34 b(cumen)-34 b(t.)678 b(These)451 b(W)-101
+b(arran)-34 b(t)g(y)451 b(Disclaimers)e(are)h(considered)h(to)4400
+6907 y(b)34 b(e)500 b(included)h(b)-34 b(y)501 b(reference)e(in)h(this)
+h(License,)523 b(but)502 b(only)e(as)g(regards)g(disclaiming)g(w)-34
+b(arran)g(ties:)4400 8369 y(an)g(y)491 b(other)g(implication)g(that)g
+(these)g(W)-101 b(arran)-34 b(t)g(y)491 b(Disclaimers)f(ma)-34
+b(y)491 b(ha)-34 b(v)g(e)491 b(is)f(v)-34 b(oid)491 b(and)g(has)h(no)
+4400 9830 y(e\013ect)404 b(on)g(the)h(meaning)f(of)h(this)f(License.)
+2657 11778 y(2.)800 b(VERBA)-101 b(TIM)404 b(COPYING)4400
+13726 y(Y)-101 b(ou)507 b(ma)-34 b(y)506 b(cop)-34 b(y)507
+b(and)g(distribute)h(the)e(Do)34 b(cumen)-34 b(t)507
+b(in)g(an)-34 b(y)507 b(medium,)532 b(either)506 b(commercially)e(or)
+4400 15187 y(noncommercially)-101 b(,)605 b(pro)-34 b(vided)567
+b(that)g(this)g(License,)605 b(the)566 b(cop)-34 b(yrigh)g(t)567
+b(notices,)606 b(and)567 b(the)g(license)4400 16649 y(notice)475
+b(sa)-34 b(ying)476 b(this)g(License)e(applies)h(to)h(the)g(Do)34
+b(cumen)-34 b(t)476 b(are)e(repro)34 b(duced)476 b(in)f(all)g(copies,)
+492 b(and)4400 18110 y(that)355 b(y)-34 b(ou)353 b(add)i(no)e(other)h
+(conditions)g(whatso)34 b(ev)-34 b(er)354 b(to)g(those)g(of)g(this)g
+(License.)520 b(Y)-101 b(ou)354 b(ma)-34 b(y)354 b(not)g(use)4400
+19571 y(tec)-34 b(hnical)437 b(measures)g(to)h(obstruct)g(or)f(con)-34
+b(trol)437 b(the)g(reading)g(or)g(further)h(cop)-34 b(ying)437
+b(of)h(the)f(copies)4400 21032 y(y)-34 b(ou)327 b(mak)-34
+b(e)326 b(or)g(distribute.)514 b(Ho)-34 b(w)g(ev)g(er,)342
+b(y)-34 b(ou)327 b(ma)-34 b(y)326 b(accept)h(comp)34
+b(ensation)327 b(in)g(exc)-34 b(hange)326 b(for)h(copies.)4400
+22493 y(If)428 b(y)-34 b(ou)429 b(distribute)g(a)f(large)g(enough)h(n)
+-34 b(um)g(b)34 b(er)429 b(of)g(copies)e(y)-34 b(ou)429
+b(m)-34 b(ust)430 b(also)e(follo)-34 b(w)428 b(the)h(conditions)4400
+23955 y(in)404 b(section)g(3.)4400 25903 y(Y)-101 b(ou)276
+b(ma)-34 b(y)276 b(also)g(lend)g(copies,)301 b(under)277
+b(the)f(same)g(conditions)h(stated)g(ab)34 b(o)-34 b(v)g(e,)301
+b(and)277 b(y)-34 b(ou)276 b(ma)-34 b(y)276 b(publicly)4400
+27364 y(displa)-34 b(y)405 b(copies.)2657 29312 y(3.)800
+b(COPYING)404 b(IN)g(QUANTITY)4400 31261 y(If)335 b(y)-34
+b(ou)335 b(publish)g(prin)-34 b(ted)336 b(copies)e(\(or)h(copies)g(in)f
+(media)h(that)h(commonly)e(ha)-34 b(v)g(e)335 b(prin)-34
+b(ted)336 b(co)-34 b(v)g(ers\))335 b(of)4400 32722 y(the)423
+b(Do)34 b(cumen)-34 b(t,)428 b(n)-34 b(um)g(b)34 b(ering)423
+b(more)g(than)g(100,)k(and)d(the)f(Do)34 b(cumen)-34
+b(t's)423 b(license)f(notice)g(requires)4400 34183 y(Co)-34
+b(v)g(er)456 b(T)-101 b(exts,)470 b(y)-34 b(ou)456 b(m)-34
+b(ust)458 b(enclose)d(the)i(copies)f(in)g(co)-34 b(v)g(ers)456
+b(that)h(carry)-101 b(,)468 b(clearly)455 b(and)i(legibly)-101
+b(,)468 b(all)4400 35644 y(these)521 b(Co)-34 b(v)g(er)521
+b(T)-101 b(exts:)772 b(F)-101 b(ron)-34 b(t-Co)g(v)g(er)523
+b(T)-101 b(exts)521 b(on)g(the)g(fron)-34 b(t)522 b(co)-34
+b(v)g(er,)549 b(and)522 b(Bac)-34 b(k-Co)g(v)g(er)520
+b(T)-101 b(exts)522 b(on)4400 37105 y(the)388 b(bac)-34
+b(k)388 b(co)-34 b(v)g(er.)532 b(Both)388 b(co)-34 b(v)g(ers)387
+b(m)-34 b(ust)389 b(also)e(clearly)f(and)i(legibly)f(iden)-34
+b(tify)388 b(y)-34 b(ou)388 b(as)f(the)h(publisher)4400
+38566 y(of)457 b(these)f(copies.)695 b(The)457 b(fron)-34
+b(t)457 b(co)-34 b(v)g(er)456 b(m)-34 b(ust)458 b(presen)-34
+b(t)457 b(the)g(full)f(title)g(with)i(all)d(w)-34 b(ords)458
+b(of)e(the)h(title)4400 40028 y(equally)409 b(prominen)-34
+b(t)411 b(and)f(visible.)555 b(Y)-101 b(ou)410 b(ma)-34
+b(y)410 b(add)g(other)g(material)g(on)g(the)g(co)-34
+b(v)g(ers)409 b(in)h(addition.)4400 41489 y(Cop)-34 b(ying)482
+b(with)h(c)-34 b(hanges)482 b(limited)f(to)h(the)g(co)-34
+b(v)g(ers,)500 b(as)481 b(long)h(as)f(they)h(preserv)-34
+b(e)481 b(the)g(title)h(of)f(the)4400 42950 y(Do)34 b(cumen)-34
+b(t)494 b(and)g(satisfy)g(these)g(conditions,)517 b(can)493
+b(b)34 b(e)493 b(treated)h(as)g(v)-34 b(erbatim)493 b(cop)-34
+b(ying)494 b(in)g(other)4400 44411 y(resp)34 b(ects.)4400
+46359 y(If)435 b(the)h(required)e(texts)i(for)f(either)g(co)-34
+b(v)g(er)435 b(are)g(to)34 b(o)435 b(v)-34 b(oluminous)436
+b(to)g(\014t)g(legibly)-101 b(,)442 b(y)-34 b(ou)436
+b(should)g(put)4400 47821 y(the)h(\014rst)h(ones)f(listed)g(\(as)g(man)
+-34 b(y)437 b(as)g(\014t)h(reasonably\))f(on)g(the)g(actual)g(co)-34
+b(v)g(er,)445 b(and)437 b(con)-34 b(tin)g(ue)438 b(the)4400
+49282 y(rest)404 b(on)-34 b(to)405 b(adjacen)-34 b(t)406
+b(pages.)4400 51230 y(If)360 b(y)-34 b(ou)360 b(publish)g(or)g
+(distribute)g(Opaque)g(copies)f(of)h(the)g(Do)34 b(cumen)-34
+b(t)360 b(n)-34 b(um)g(b)34 b(ering)361 b(more)e(than)i(100,)4400
+52691 y(y)-34 b(ou)373 b(m)-34 b(ust)373 b(either)e(include)h(a)g(mac)
+-34 b(hine-readable)373 b(T)-101 b(ransparen)-34 b(t)373
+b(cop)-34 b(y)373 b(along)f(with)h(eac)-34 b(h)372 b(Opaque)4400
+54152 y(cop)-34 b(y)-101 b(,)482 b(or)467 b(state)g(in)g(or)f(with)h
+(eac)-34 b(h)467 b(Opaque)g(cop)-34 b(y)467 b(a)f(computer-net)-34
+b(w)g(ork)469 b(lo)34 b(cation)466 b(from)h(whic)-34
+b(h)4400 55614 y(the)323 b(general)f(net)-34 b(w)g(ork-using)324
+b(public)e(has)h(access)f(to)h(do)-34 b(wnload)324 b(using)f
+(public-standard)h(net)-34 b(w)g(ork)4400 57075 y(proto)34
+b(cols)517 b(a)h(complete)f(T)-101 b(ransparen)-34 b(t)519
+b(cop)-34 b(y)517 b(of)h(the)g(Do)34 b(cumen)-34 b(t,)546
+b(free)516 b(of)i(added)g(material.)878 b(If)4400 58536
+y(y)-34 b(ou)517 b(use)f(the)h(latter)g(option,)545 b(y)-34
+b(ou)516 b(m)-34 b(ust)518 b(tak)-34 b(e)517 b(reasonably)f(pruden)-34
+b(t)518 b(steps,)545 b(when)517 b(y)-34 b(ou)517 b(b)34
+b(egin)4400 59997 y(distribution)510 b(of)e(Opaque)h(copies)f(in)g
+(quan)-34 b(tit)g(y)-101 b(,)536 b(to)508 b(ensure)h(that)g(this)g(T)
+-101 b(ransparen)-34 b(t)510 b(cop)-34 b(y)508 b(will)4400
+61458 y(remain)401 b(th)-34 b(us)403 b(accessible)e(at)g(the)h(stated)h
+(lo)34 b(cation)401 b(un)-34 b(til)402 b(at)g(least)f(one)h(y)-34
+b(ear)401 b(after)h(the)f(last)h(time)4400 62920 y(y)-34
+b(ou)490 b(distribute)g(an)g(Opaque)f(cop)-34 b(y)490
+b(\(directly)f(or)g(through)h(y)-34 b(our)490 b(agen)-34
+b(ts)490 b(or)f(retailers\))g(of)h(that)4400 64381 y(edition)404
+b(to)h(the)f(public.)4400 66329 y(It)459 b(is)h(requested,)472
+b(but)461 b(not)f(required,)472 b(that)461 b(y)-34 b(ou)460
+b(con)-34 b(tact)460 b(the)g(authors)g(of)g(the)g(Do)34
+b(cumen)-34 b(t)460 b(w)-34 b(ell)4400 67790 y(b)34 b(efore)380
+b(redistributing)h(an)-34 b(y)381 b(large)f(n)-34 b(um)g(b)34
+b(er)382 b(of)e(copies,)385 b(to)c(giv)-34 b(e)380 b(them)h(a)f(c)-34
+b(hance)381 b(to)g(pro)-34 b(vide)380 b(y)-34 b(ou)4400
+69251 y(with)405 b(an)f(up)34 b(dated)406 b(v)-34 b(ersion)404
+b(of)g(the)h(Do)34 b(cumen)-34 b(t.)2657 71200 y(4.)800
+b(MODIFICA)-101 b(TIONS)p eop end
+%%Page: 96 101
+TeXDict begin 96 100 bop 2000 -1550 a FC(App)34 b(endix)405
+b(A:)e(Cop)-34 b(ying,)405 b(Changes,)g(Dev)-34 b(elopmen)g(t,)404
+b(F)-135 b(A)-34 b(Q,)405 b(T)-101 b(exinfo)404 b(Mo)34
+b(de)11125 b(96)4400 3985 y(Y)-101 b(ou)340 b(ma)-34
+b(y)339 b(cop)-34 b(y)339 b(and)h(distribute)g(a)f(Mo)34
+b(di\014ed)340 b(V)-101 b(ersion)339 b(of)g(the)h(Do)34
+b(cumen)-34 b(t)340 b(under)f(the)h(conditions)4400 5446
+y(of)280 b(sections)f(2)g(and)h(3)f(ab)34 b(o)-34 b(v)g(e,)305
+b(pro)-34 b(vided)279 b(that)i(y)-34 b(ou)279 b(release)f(the)i(Mo)34
+b(di\014ed)280 b(V)-101 b(ersion)279 b(under)g(precisely)4400
+6907 y(this)386 b(License,)i(with)f(the)f(Mo)34 b(di\014ed)386
+b(V)-101 b(ersion)386 b(\014lling)f(the)h(role)f(of)h(the)g(Do)34
+b(cumen)-34 b(t,)390 b(th)-34 b(us)387 b(licensing)4400
+8369 y(distribution)455 b(and)f(mo)34 b(di\014cation)454
+b(of)g(the)g(Mo)34 b(di\014ed)454 b(V)-101 b(ersion)453
+b(to)h(who)34 b(ev)-34 b(er)454 b(p)34 b(ossesses)453
+b(a)h(cop)-34 b(y)454 b(of)4400 9830 y(it.)539 b(In)404
+b(addition,)h(y)-34 b(ou)404 b(m)-34 b(ust)405 b(do)g(these)f(things)h
+(in)g(the)f(Mo)34 b(di\014ed)405 b(V)-101 b(ersion:)4754
+11628 y(A.)800 b(Use)435 b(in)g(the)g(Title)g(P)-34 b(age)434
+b(\(and)i(on)g(the)f(co)-34 b(v)g(ers,)442 b(if)435 b(an)-34
+b(y\))435 b(a)g(title)g(distinct)g(from)g(that)h(of)f(the)6800
+13089 y(Do)34 b(cumen)-34 b(t,)462 b(and)451 b(from)f(those)g(of)h
+(previous)f(v)-34 b(ersions)450 b(\(whic)-34 b(h)451
+b(should,)462 b(if)450 b(there)g(w)-34 b(ere)450 b(an)-34
+b(y)-101 b(,)6800 14551 y(b)34 b(e)416 b(listed)h(in)f(the)h(History)f
+(section)h(of)g(the)f(Do)34 b(cumen)-34 b(t\).)577 b(Y)-101
+b(ou)417 b(ma)-34 b(y)417 b(use)f(the)h(same)g(title)f(as)6800
+16012 y(a)404 b(previous)g(v)-34 b(ersion)404 b(if)g(the)h(original)e
+(publisher)i(of)f(that)h(v)-34 b(ersion)404 b(giv)-34
+b(es)404 b(p)34 b(ermission.)4805 17810 y(B.)799 b(List)406
+b(on)g(the)g(Title)g(P)-34 b(age,)406 b(as)g(authors,)h(one)f(or)f
+(more)h(p)34 b(ersons)406 b(or)f(en)-34 b(tities)406
+b(resp)34 b(onsible)406 b(for)6800 19271 y(authorship)349
+b(of)e(the)g(mo)34 b(di\014cations)348 b(in)f(the)g(Mo)34
+b(di\014ed)347 b(V)-101 b(ersion,)358 b(together)347
+b(with)h(at)f(least)g(\014v)-34 b(e)6800 20733 y(of)319
+b(the)f(principal)g(authors)i(of)e(the)h(Do)34 b(cumen)-34
+b(t)319 b(\(all)f(of)g(its)g(principal)g(authors,)337
+b(if)318 b(it)g(has)h(few)-34 b(er)6800 22194 y(than)405
+b(\014v)-34 b(e\),)405 b(unless)f(they)g(release)f(y)-34
+b(ou)405 b(from)f(this)h(requiremen)-34 b(t.)4788 23992
+y(C.)800 b(State)410 b(on)f(the)h(Title)f(page)g(the)h(name)f(of)g(the)
+h(publisher)f(of)h(the)f(Mo)34 b(di\014ed)410 b(V)-101
+b(ersion,)409 b(as)g(the)6800 25453 y(publisher.)4737
+27252 y(D.)800 b(Preserv)-34 b(e)403 b(all)g(the)i(cop)-34
+b(yrigh)g(t)405 b(notices)f(of)g(the)h(Do)34 b(cumen)-34
+b(t.)4838 29050 y(E.)800 b(Add)418 b(an)f(appropriate)h(cop)-34
+b(yrigh)g(t)418 b(notice)f(for)g(y)-34 b(our)417 b(mo)34
+b(di\014cations)418 b(adjacen)-34 b(t)419 b(to)e(the)h(other)6800
+30511 y(cop)-34 b(yrigh)g(t)405 b(notices.)4872 32310
+y(F.)800 b(Include,)377 b(immediately)370 b(after)h(the)g(cop)-34
+b(yrigh)g(t)371 b(notices,)377 b(a)370 b(license)g(notice)h(giving)f
+(the)h(public)6800 33771 y(p)34 b(ermission)325 b(to)g(use)h(the)f(Mo)
+34 b(di\014ed)326 b(V)-101 b(ersion)325 b(under)g(the)h(terms)f(of)h
+(this)f(License,)340 b(in)325 b(the)h(form)6800 35232
+y(sho)-34 b(wn)406 b(in)e(the)h(Addendum)g(b)34 b(elo)-34
+b(w.)4712 37030 y(G.)800 b(Preserv)-34 b(e)302 b(in)h(that)h(license)e
+(notice)h(the)g(full)g(lists)g(of)g(In)-34 b(v)-67 b(arian)-34
+b(t)304 b(Sections)f(and)h(required)e(Co)-34 b(v)g(er)6800
+38492 y(T)-101 b(exts)404 b(giv)-34 b(en)404 b(in)h(the)f(Do)34
+b(cumen)-34 b(t's)405 b(license)e(notice.)4754 40290
+y(H.)800 b(Include)404 b(an)h(unaltered)f(cop)-34 b(y)405
+b(of)f(this)h(License.)5226 42088 y(I.)799 b(Preserv)-34
+b(e)425 b(the)i(section)g(En)-34 b(titled)428 b(\\History",)k(Preserv)
+-34 b(e)425 b(its)i(Title,)k(and)d(add)f(to)g(it)g(an)g(item)6800
+43550 y(stating)374 b(at)g(least)f(the)h(title,)379 b(y)-34
+b(ear,)378 b(new)c(authors,)380 b(and)374 b(publisher)g(of)g(the)g(Mo)
+34 b(di\014ed)373 b(V)-101 b(ersion)6800 45011 y(as)417
+b(giv)-34 b(en)417 b(on)h(the)f(Title)g(P)-34 b(age.)577
+b(If)417 b(there)g(is)g(no)h(section)f(En)-34 b(titled)418
+b(\\History")f(in)g(the)g(Do)34 b(cu-)6800 46472 y(men)-34
+b(t,)478 b(create)461 b(one)i(stating)h(the)e(title,)477
+b(y)-34 b(ear,)476 b(authors,)i(and)464 b(publisher)f(of)f(the)h(Do)34
+b(cumen)-34 b(t)6800 47933 y(as)481 b(giv)-34 b(en)480
+b(on)h(its)g(Title)f(P)-34 b(age,)499 b(then)482 b(add)f(an)g(item)f
+(describing)h(the)g(Mo)34 b(di\014ed)481 b(V)-101 b(ersion)480
+b(as)6800 49394 y(stated)405 b(in)f(the)h(previous)f(sen)-34
+b(tence.)5040 51193 y(J.)800 b(Preserv)-34 b(e)430 b(the)i(net)-34
+b(w)g(ork)433 b(lo)34 b(cation,)438 b(if)432 b(an)-34
+b(y)-101 b(,)438 b(giv)-34 b(en)432 b(in)g(the)g(Do)34
+b(cumen)-34 b(t)432 b(for)g(public)g(access)f(to)6800
+52654 y(a)414 b(T)-101 b(ransparen)-34 b(t)416 b(cop)-34
+b(y)414 b(of)h(the)f(Do)34 b(cumen)-34 b(t,)417 b(and)e(lik)-34
+b(ewise)413 b(the)i(net)-34 b(w)g(ork)415 b(lo)34 b(cations)414
+b(giv)-34 b(en)414 b(in)6800 54115 y(the)422 b(Do)34
+b(cumen)-34 b(t)421 b(for)g(previous)g(v)-34 b(ersions)421
+b(it)g(w)-34 b(as)422 b(based)g(on.)589 b(These)422 b(ma)-34
+b(y)421 b(b)34 b(e)420 b(placed)h(in)g(the)6800 55576
+y(\\History")333 b(section.)514 b(Y)-101 b(ou)333 b(ma)-34
+b(y)333 b(omit)g(a)g(net)-34 b(w)g(ork)334 b(lo)34 b(cation)332
+b(for)h(a)f(w)-34 b(ork)333 b(that)h(w)-34 b(as)334 b(published)6800
+57037 y(at)476 b(least)f(four)h(y)-34 b(ears)475 b(b)34
+b(efore)475 b(the)g(Do)34 b(cumen)-34 b(t)476 b(itself,)493
+b(or)475 b(if)h(the)f(original)g(publisher)h(of)f(the)6800
+58499 y(v)-34 b(ersion)404 b(it)g(refers)f(to)i(giv)-34
+b(es)404 b(p)34 b(ermission.)4721 60297 y(K.)799 b(F)-101
+b(or)316 b(an)-34 b(y)315 b(section)h(En)-34 b(titled)316
+b(\\Ac)-34 b(kno)g(wledgemen)g(ts")318 b(or)d(\\Dedications",)333
+b(Preserv)-34 b(e)314 b(the)i(Title)6800 61758 y(of)353
+b(the)g(section,)363 b(and)353 b(preserv)-34 b(e)352
+b(in)h(the)g(section)f(all)g(the)h(substance)h(and)g(tone)f(of)g(eac)
+-34 b(h)353 b(of)f(the)6800 63219 y(con)-34 b(tributor)405
+b(ac)-34 b(kno)g(wledgemen)g(ts)406 b(and/or)f(dedications)g(giv)-34
+b(en)404 b(therein.)4906 65018 y(L.)799 b(Preserv)-34
+b(e)469 b(all)h(the)h(In)-34 b(v)-67 b(arian)-34 b(t)471
+b(Sections)g(of)g(the)f(Do)34 b(cumen)-34 b(t,)488 b(unaltered)471
+b(in)f(their)h(text)f(and)6800 66479 y(in)478 b(their)g(titles.)759
+b(Section)478 b(n)-34 b(um)g(b)34 b(ers)479 b(or)f(the)g(equiv)-67
+b(alen)-34 b(t)477 b(are)h(not)g(considered)g(part)g(of)g(the)6800
+67940 y(section)404 b(titles.)4552 69738 y(M.)800 b(Delete)407
+b(an)-34 b(y)409 b(section)g(En)-34 b(titled)409 b(\\Endorsemen)-34
+b(ts".)553 b(Suc)-34 b(h)409 b(a)f(section)h(ma)-34 b(y)408
+b(not)h(b)34 b(e)409 b(included)6800 71200 y(in)404 b(the)h(Mo)34
+b(di\014ed)404 b(V)-101 b(ersion.)p eop end
+%%Page: 97 102
+TeXDict begin 97 101 bop 2000 -1550 a FC(App)34 b(endix)405
+b(A:)e(Cop)-34 b(ying,)405 b(Changes,)g(Dev)-34 b(elopmen)g(t,)404
+b(F)-135 b(A)-34 b(Q,)405 b(T)-101 b(exinfo)404 b(Mo)34
+b(de)11125 b(97)4754 3985 y(N.)800 b(Do)377 b(not)g(retitle)f(an)-34
+b(y)377 b(existing)g(section)g(to)g(b)34 b(e)376 b(En)-34
+b(titled)378 b(\\Endorsemen)-34 b(ts")378 b(or)f(to)g(con\015ict)g(in)
+6800 5446 y(title)404 b(with)h(an)-34 b(y)404 b(In)-34
+b(v)-67 b(arian)-34 b(t)405 b(Section.)4721 7273 y(O.)799
+b(Preserv)-34 b(e)403 b(an)-34 b(y)404 b(W)-101 b(arran)-34
+b(t)g(y)405 b(Disclaimers.)4400 9465 y(If)444 b(the)g(Mo)34
+b(di\014ed)444 b(V)-101 b(ersion)443 b(includes)h(new)g(fron)-34
+b(t-matter)445 b(sections)f(or)g(app)34 b(endices)443
+b(that)i(qualify)4400 10926 y(as)370 b(Secondary)h(Sections)f(and)h
+(con)-34 b(tain)372 b(no)e(material)g(copied)g(from)g(the)h(Do)34
+b(cumen)-34 b(t,)377 b(y)-34 b(ou)371 b(ma)-34 b(y)371
+b(at)4400 12387 y(y)-34 b(our)431 b(option)g(designate)g(some)g(or)f
+(all)g(of)h(these)f(sections)h(as)g(in)-34 b(v)-67 b(arian)-34
+b(t.)618 b(T)-101 b(o)431 b(do)f(this,)438 b(add)431
+b(their)4400 13848 y(titles)471 b(to)g(the)g(list)g(of)g(In)-34
+b(v)-67 b(arian)-34 b(t)471 b(Sections)h(in)e(the)i(Mo)34
+b(di\014ed)471 b(V)-101 b(ersion's)470 b(license)g(notice.)739
+b(These)4400 15309 y(titles)404 b(m)-34 b(ust)405 b(b)34
+b(e)404 b(distinct)h(from)f(an)-34 b(y)405 b(other)f(section)g(titles.)
+4400 17136 y(Y)-101 b(ou)564 b(ma)-34 b(y)564 b(add)h(a)e(section)h(En)
+-34 b(titled)564 b(\\Endorsemen)-34 b(ts",)605 b(pro)-34
+b(vided)564 b(it)g(con)-34 b(tains)565 b(nothing)g(but)4400
+18597 y(endorsemen)-34 b(ts)396 b(of)f(y)-34 b(our)395
+b(Mo)34 b(di\014ed)396 b(V)-101 b(ersion)394 b(b)-34
+b(y)396 b(v)-67 b(arious)394 b(parties|for)h(example,)h(statemen)-34
+b(ts)397 b(of)4400 20058 y(p)34 b(eer)361 b(review)f(or)i(that)g(the)g
+(text)g(has)g(b)34 b(een)362 b(appro)-34 b(v)g(ed)362
+b(b)-34 b(y)362 b(an)g(organization)g(as)g(the)g(authoritativ)-34
+b(e)4400 21519 y(de\014nition)405 b(of)g(a)f(standard.)4400
+23346 y(Y)-101 b(ou)377 b(ma)-34 b(y)376 b(add)h(a)g(passage)g(of)f(up)
+h(to)g(\014v)-34 b(e)377 b(w)-34 b(ords)377 b(as)f(a)h(F)-101
+b(ron)-34 b(t-Co)g(v)g(er)377 b(T)-101 b(ext,)382 b(and)377
+b(a)g(passage)f(of)h(up)4400 24807 y(to)360 b(25)h(w)-34
+b(ords)361 b(as)f(a)g(Bac)-34 b(k-Co)g(v)g(er)360 b(T)-101
+b(ext,)368 b(to)361 b(the)f(end)h(of)f(the)h(list)f(of)g(Co)-34
+b(v)g(er)361 b(T)-101 b(exts)360 b(in)g(the)h(Mo)34 b(di\014ed)4400
+26268 y(V)-101 b(ersion.)756 b(Only)476 b(one)h(passage)g(of)g(F)-101
+b(ron)-34 b(t-Co)g(v)g(er)478 b(T)-101 b(ext)477 b(and)g(one)g(of)g
+(Bac)-34 b(k-Co)g(v)g(er)477 b(T)-101 b(ext)476 b(ma)-34
+b(y)477 b(b)34 b(e)4400 27729 y(added)367 b(b)-34 b(y)367
+b(\(or)f(through)i(arrangemen)-34 b(ts)367 b(made)f(b)-34
+b(y\))367 b(an)-34 b(y)367 b(one)f(en)-34 b(tit)g(y)-101
+b(.)527 b(If)366 b(the)h(Do)34 b(cumen)-34 b(t)367 b(already)4400
+29191 y(includes)452 b(a)f(co)-34 b(v)g(er)451 b(text)g(for)h(the)g
+(same)f(co)-34 b(v)g(er,)463 b(previously)450 b(added)j(b)-34
+b(y)451 b(y)-34 b(ou)452 b(or)f(b)-34 b(y)452 b(arrangemen)-34
+b(t)4400 30652 y(made)469 b(b)-34 b(y)468 b(the)h(same)f(en)-34
+b(tit)g(y)469 b(y)-34 b(ou)469 b(are)f(acting)g(on)h(b)34
+b(ehalf)468 b(of,)485 b(y)-34 b(ou)469 b(ma)-34 b(y)468
+b(not)h(add)g(another;)501 b(but)4400 32113 y(y)-34 b(ou)453
+b(ma)-34 b(y)453 b(replace)e(the)i(old)f(one,)465 b(on)453
+b(explicit)e(p)34 b(ermission)452 b(from)h(the)g(previous)f(publisher)h
+(that)4400 33574 y(added)405 b(the)g(old)f(one.)4400
+35401 y(The)339 b(author\(s\))h(and)f(publisher\(s\))h(of)f(the)g(Do)34
+b(cumen)-34 b(t)339 b(do)f(not)h(b)-34 b(y)339 b(this)g(License)e(giv)
+-34 b(e)338 b(p)34 b(ermission)4400 36862 y(to)404 b(use)f(their)g
+(names)h(for)f(publicit)-34 b(y)404 b(for)f(or)g(to)h(assert)f(or)g
+(imply)g(endorsemen)-34 b(t)404 b(of)g(an)-34 b(y)404
+b(Mo)34 b(di\014ed)4400 38323 y(V)-101 b(ersion.)2657
+40149 y(5.)800 b(COMBINING)404 b(DOCUMENTS)4400 41976
+y(Y)-101 b(ou)515 b(ma)-34 b(y)516 b(com)-34 b(bine)515
+b(the)g(Do)34 b(cumen)-34 b(t)516 b(with)g(other)f(do)34
+b(cumen)-34 b(ts)516 b(released)e(under)i(this)f(License,)4400
+43437 y(under)509 b(the)g(terms)f(de\014ned)h(in)g(section)f(4)g(ab)34
+b(o)-34 b(v)g(e)509 b(for)g(mo)34 b(di\014ed)508 b(v)-34
+b(ersions,)534 b(pro)-34 b(vided)509 b(that)g(y)-34 b(ou)4400
+44898 y(include)336 b(in)g(the)h(com)-34 b(bination)337
+b(all)f(of)g(the)h(In)-34 b(v)-67 b(arian)-34 b(t)336
+b(Sections)h(of)f(all)g(of)g(the)h(original)e(do)34 b(cumen)-34
+b(ts,)4400 46359 y(unmo)34 b(di\014ed,)366 b(and)356
+b(list)f(them)h(all)f(as)g(In)-34 b(v)-67 b(arian)-34
+b(t)356 b(Sections)g(of)g(y)-34 b(our)355 b(com)-34 b(bined)356
+b(w)-34 b(ork)356 b(in)f(its)h(license)4400 47821 y(notice,)404
+b(and)h(that)g(y)-34 b(ou)404 b(preserv)-34 b(e)404 b(all)f(their)h(W)
+-101 b(arran)-34 b(t)g(y)405 b(Disclaimers.)4400 49647
+y(The)e(com)-34 b(bined)403 b(w)-34 b(ork)402 b(need)h(only)f(con)-34
+b(tain)403 b(one)g(cop)-34 b(y)402 b(of)h(this)g(License,)e(and)i(m)-34
+b(ultiple)403 b(iden)-34 b(tical)4400 51108 y(In)g(v)-67
+b(arian)-34 b(t)432 b(Sections)h(ma)-34 b(y)432 b(b)34
+b(e)432 b(replaced)f(with)i(a)f(single)g(cop)-34 b(y)-101
+b(.)622 b(If)432 b(there)g(are)f(m)-34 b(ultiple)432
+b(In)-34 b(v)-67 b(arian)-34 b(t)4400 52570 y(Sections)356
+b(with)h(the)f(same)g(name)g(but)h(di\013eren)-34 b(t)356
+b(con)-34 b(ten)g(ts,)367 b(mak)-34 b(e)356 b(the)g(title)g(of)g(eac)
+-34 b(h)356 b(suc)-34 b(h)357 b(section)4400 54031 y(unique)452
+b(b)-34 b(y)453 b(adding)g(at)f(the)h(end)g(of)f(it,)464
+b(in)452 b(paren)-34 b(theses,)465 b(the)452 b(name)h(of)f(the)h
+(original)e(author)i(or)4400 55492 y(publisher)333 b(of)g(that)g
+(section)g(if)f(kno)-34 b(wn,)348 b(or)332 b(else)f(a)i(unique)f(n)-34
+b(um)g(b)34 b(er.)516 b(Mak)-34 b(e)332 b(the)h(same)f(adjustmen)-34
+b(t)4400 56953 y(to)325 b(the)g(section)g(titles)f(in)h(the)g(list)f
+(of)h(In)-34 b(v)-67 b(arian)-34 b(t)325 b(Sections)g(in)g(the)g
+(license)f(notice)g(of)h(the)g(com)-34 b(bined)4400 58414
+y(w)g(ork.)4400 60241 y(In)549 b(the)h(com)-34 b(bination,)587
+b(y)-34 b(ou)549 b(m)-34 b(ust)551 b(com)-34 b(bine)550
+b(an)-34 b(y)549 b(sections)h(En)-34 b(titled)550 b(\\History")f(in)g
+(the)h(v)-67 b(ari-)4400 61702 y(ous)428 b(original)f(do)34
+b(cumen)-34 b(ts,)435 b(forming)428 b(one)f(section)h(En)-34
+b(titled)429 b(\\History";)439 b(lik)-34 b(ewise)426
+b(com)-34 b(bine)428 b(an)-34 b(y)4400 63163 y(sections)423
+b(En)-34 b(titled)423 b(\\Ac)-34 b(kno)g(wledgemen)g(ts",)429
+b(and)423 b(an)-34 b(y)423 b(sections)g(En)-34 b(titled)423
+b(\\Dedications".)594 b(Y)-101 b(ou)4400 64624 y(m)-34
+b(ust)405 b(delete)f(all)g(sections)g(En)-34 b(titled)405
+b(\\Endorsemen)-34 b(ts.")2657 66451 y(6.)800 b(COLLECTIONS)404
+b(OF)g(DOCUMENTS)4400 68277 y(Y)-101 b(ou)424 b(ma)-34
+b(y)423 b(mak)-34 b(e)423 b(a)g(collection)g(consisting)h(of)f(the)h
+(Do)34 b(cumen)-34 b(t)424 b(and)g(other)f(do)34 b(cumen)-34
+b(ts)425 b(released)4400 69738 y(under)564 b(this)h(License,)602
+b(and)564 b(replace)f(the)h(individual)g(copies)g(of)g(this)g(License)f
+(in)g(the)i(v)-67 b(arious)4400 71200 y(do)34 b(cumen)-34
+b(ts)567 b(with)g(a)e(single)h(cop)-34 b(y)566 b(that)h(is)e(included)h
+(in)g(the)g(collection,)605 b(pro)-34 b(vided)567 b(that)f(y)-34
+b(ou)p eop end
+%%Page: 98 103
+TeXDict begin 98 102 bop 2000 -1550 a FC(App)34 b(endix)405
+b(A:)e(Cop)-34 b(ying,)405 b(Changes,)g(Dev)-34 b(elopmen)g(t,)404
+b(F)-135 b(A)-34 b(Q,)405 b(T)-101 b(exinfo)404 b(Mo)34
+b(de)11125 b(98)4400 3985 y(follo)-34 b(w)494 b(the)g(rules)e(of)i
+(this)g(License)e(for)h(v)-34 b(erbatim)494 b(cop)-34
+b(ying)493 b(of)h(eac)-34 b(h)493 b(of)h(the)g(do)34
+b(cumen)-34 b(ts)494 b(in)g(all)4400 5446 y(other)404
+b(resp)34 b(ects.)4400 7306 y(Y)-101 b(ou)418 b(ma)-34
+b(y)418 b(extract)g(a)g(single)f(do)34 b(cumen)-34 b(t)419
+b(from)f(suc)-34 b(h)419 b(a)f(collection,)i(and)f(distribute)g(it)f
+(individu-)4400 8767 y(ally)464 b(under)i(this)g(License,)480
+b(pro)-34 b(vided)465 b(y)-34 b(ou)466 b(insert)g(a)f(cop)-34
+b(y)465 b(of)h(this)g(License)e(in)-34 b(to)466 b(the)g(extracted)4400
+10228 y(do)34 b(cumen)-34 b(t,)441 b(and)434 b(follo)-34
+b(w)433 b(this)h(License)e(in)h(all)f(other)i(resp)34
+b(ects)432 b(regarding)h(v)-34 b(erbatim)433 b(cop)-34
+b(ying)434 b(of)4400 11689 y(that)405 b(do)34 b(cumen)-34
+b(t.)2657 13549 y(7.)800 b(A)-34 b(GGREGA)-101 b(TION)405
+b(WITH)f(INDEPENDENT)g(W)-34 b(ORKS)4400 15409 y(A)373
+b(compilation)g(of)g(the)g(Do)34 b(cumen)-34 b(t)373
+b(or)g(its)g(deriv)-67 b(ativ)-34 b(es)371 b(with)j(other)f(separate)g
+(and)g(indep)34 b(enden)-34 b(t)4400 16870 y(do)34 b(cumen)-34
+b(ts)444 b(or)e(w)-34 b(orks,)452 b(in)443 b(or)f(on)h(a)g(v)-34
+b(olume)443 b(of)g(a)f(storage)h(or)f(distribution)i(medium,)452
+b(is)443 b(called)4400 18331 y(an)400 b(\\aggregate")g(if)h(the)f(cop)
+-34 b(yrigh)g(t)401 b(resulting)f(from)g(the)h(compilation)f(is)g(not)h
+(used)f(to)h(limit)e(the)4400 19792 y(legal)353 b(righ)-34
+b(ts)354 b(of)f(the)h(compilation's)g(users)f(b)34 b(ey)-34
+b(ond)354 b(what)g(the)g(individual)g(w)-34 b(orks)353
+b(p)34 b(ermit.)522 b(When)4400 21254 y(the)512 b(Do)34
+b(cumen)-34 b(t)511 b(is)g(included)h(in)f(an)h(aggregate,)537
+b(this)512 b(License)e(do)34 b(es)511 b(not)h(apply)g(to)f(the)h(other)
+4400 22715 y(w)-34 b(orks)404 b(in)h(the)f(aggregate)g(whic)-34
+b(h)405 b(are)f(not)h(themselv)-34 b(es)404 b(deriv)-67
+b(ativ)-34 b(e)403 b(w)-34 b(orks)404 b(of)g(the)h(Do)34
+b(cumen)-34 b(t.)4400 24575 y(If)303 b(the)f(Co)-34 b(v)g(er)303
+b(T)-101 b(ext)303 b(requiremen)-34 b(t)302 b(of)h(section)f(3)h(is)f
+(applicable)g(to)h(these)g(copies)f(of)h(the)g(Do)34
+b(cumen)-34 b(t,)4400 26036 y(then)299 b(if)e(the)h(Do)34
+b(cumen)-34 b(t)299 b(is)e(less)g(than)i(one)f(half)g(of)g(the)g(en)-34
+b(tire)298 b(aggregate,)318 b(the)299 b(Do)34 b(cumen)-34
+b(t's)298 b(Co)-34 b(v)g(er)4400 27497 y(T)-101 b(exts)353
+b(ma)-34 b(y)353 b(b)34 b(e)353 b(placed)g(on)g(co)-34
+b(v)g(ers)353 b(that)h(brac)-34 b(k)g(et)353 b(the)g(Do)34
+b(cumen)-34 b(t)354 b(within)g(the)f(aggregate,)363 b(or)352
+b(the)4400 28958 y(electronic)465 b(equiv)-67 b(alen)-34
+b(t)465 b(of)i(co)-34 b(v)g(ers)465 b(if)h(the)h(Do)34
+b(cumen)-34 b(t)466 b(is)g(in)g(electronic)f(form.)724
+b(Otherwise)466 b(they)4400 30419 y(m)-34 b(ust)405 b(app)34
+b(ear)404 b(on)h(prin)-34 b(ted)405 b(co)-34 b(v)g(ers)404
+b(that)h(brac)-34 b(k)g(et)405 b(the)f(whole)h(aggregate.)2657
+32279 y(8.)800 b(TRANSLA)-101 b(TION)4400 34139 y(T)g(ranslation)532
+b(is)f(considered)h(a)f(kind)h(of)f(mo)34 b(di\014cation,)564
+b(so)531 b(y)-34 b(ou)532 b(ma)-34 b(y)532 b(distribute)g(translations)
+4400 35600 y(of)591 b(the)f(Do)34 b(cumen)-34 b(t)591
+b(under)g(the)g(terms)f(of)h(section)f(4.)1097 b(Replacing)591
+b(In)-34 b(v)-67 b(arian)-34 b(t)590 b(Sections)h(with)4400
+37061 y(translations)606 b(requires)e(sp)34 b(ecial)604
+b(p)34 b(ermission)604 b(from)h(their)g(cop)-34 b(yrigh)g(t)606
+b(holders,)654 b(but)606 b(y)-34 b(ou)606 b(ma)-34 b(y)4400
+38522 y(include)325 b(translations)i(of)f(some)f(or)g(all)g(In)-34
+b(v)-67 b(arian)-34 b(t)326 b(Sections)g(in)f(addition)i(to)e(the)h
+(original)f(v)-34 b(ersions)4400 39983 y(of)418 b(these)g(In)-34
+b(v)-67 b(arian)-34 b(t)419 b(Sections.)580 b(Y)-101
+b(ou)418 b(ma)-34 b(y)418 b(include)g(a)g(translation)g(of)g(this)h
+(License,)h(and)e(all)f(the)4400 41445 y(license)547
+b(notices)h(in)g(the)g(Do)34 b(cumen)-34 b(t,)584 b(and)549
+b(an)-34 b(y)549 b(W)-101 b(arran)-34 b(t)g(y)548 b(Disclaimers,)582
+b(pro)-34 b(vided)548 b(that)h(y)-34 b(ou)4400 42906
+y(also)532 b(include)h(the)f(original)g(English)h(v)-34
+b(ersion)532 b(of)h(this)f(License)g(and)h(the)g(original)e(v)-34
+b(ersions)533 b(of)4400 44367 y(those)454 b(notices)g(and)h
+(disclaimers.)686 b(In)454 b(case)f(of)h(a)g(disagreemen)-34
+b(t)454 b(b)34 b(et)-34 b(w)g(een)454 b(the)g(translation)h(and)4400
+45828 y(the)469 b(original)e(v)-34 b(ersion)468 b(of)h(this)f(License)f
+(or)h(a)h(notice)f(or)g(disclaimer,)482 b(the)469 b(original)f(v)-34
+b(ersion)467 b(will)4400 47289 y(prev)-67 b(ail.)4400
+49149 y(If)381 b(a)g(section)g(in)g(the)g(Do)34 b(cumen)-34
+b(t)382 b(is)f(En)-34 b(titled)382 b(\\Ac)-34 b(kno)g(wledgemen)g(ts",)
+387 b(\\Dedications",)e(or)c(\\His-)4400 50610 y(tory",)360
+b(the)350 b(requiremen)-34 b(t)350 b(\(section)g(4\))g(to)g(Preserv)-34
+b(e)348 b(its)i(Title)g(\(section)g(1\))g(will)f(t)-34
+b(ypically)349 b(require)4400 52071 y(c)-34 b(hanging)405
+b(the)g(actual)f(title.)2657 53931 y(9.)800 b(TERMINA)-101
+b(TION)4400 55791 y(Y)g(ou)397 b(ma)-34 b(y)396 b(not)h(cop)-34
+b(y)-101 b(,)398 b(mo)34 b(dify)-101 b(,)397 b(sublicense,)g(or)f
+(distribute)h(the)g(Do)34 b(cumen)-34 b(t)397 b(except)f(as)g
+(expressly)4400 57252 y(pro)-34 b(vided)513 b(under)h(this)f(License.)
+864 b(An)-34 b(y)513 b(attempt)h(otherwise)g(to)f(cop)-34
+b(y)-101 b(,)540 b(mo)34 b(dify)-101 b(,)539 b(sublicense,)h(or)4400
+58713 y(distribute)405 b(it)f(is)g(v)-34 b(oid,)404 b(and)h(will)e
+(automatically)i(terminate)f(y)-34 b(our)404 b(righ)-34
+b(ts)405 b(under)g(this)f(License.)4400 60573 y(Ho)-34
+b(w)g(ev)g(er,)438 b(if)431 b(y)-34 b(ou)431 b(cease)f(all)g(violation)
+h(of)g(this)g(License,)437 b(then)431 b(y)-34 b(our)431
+b(license)f(from)h(a)g(particular)4400 62034 y(cop)-34
+b(yrigh)g(t)476 b(holder)f(is)g(reinstated)g(\(a\))h(pro)-34
+b(visionally)-101 b(,)492 b(unless)476 b(and)g(un)-34
+b(til)476 b(the)f(cop)-34 b(yrigh)g(t)476 b(holder)4400
+63495 y(explicitly)539 b(and)i(\014nally)f(terminates)h(y)-34
+b(our)540 b(license,)573 b(and)541 b(\(b\))h(p)34 b(ermanen)-34
+b(tly)-101 b(,)574 b(if)540 b(the)h(cop)-34 b(yrigh)g(t)4400
+64956 y(holder)458 b(fails)f(to)i(notify)f(y)-34 b(ou)458
+b(of)g(the)h(violation)e(b)-34 b(y)458 b(some)g(reasonable)g(means)g
+(prior)f(to)i(60)e(da)-34 b(ys)4400 66418 y(after)404
+b(the)h(cessation.)4400 68277 y(Moreo)-34 b(v)g(er,)421
+b(y)-34 b(our)418 b(license)g(from)g(a)g(particular)g(cop)-34
+b(yrigh)g(t)419 b(holder)g(is)f(reinstated)g(p)34 b(ermanen)-34
+b(tly)419 b(if)4400 69738 y(the)370 b(cop)-34 b(yrigh)g(t)370
+b(holder)g(noti\014es)g(y)-34 b(ou)370 b(of)g(the)g(violation)f(b)-34
+b(y)370 b(some)f(reasonable)h(means,)376 b(this)370 b(is)f(the)4400
+71200 y(\014rst)h(time)g(y)-34 b(ou)370 b(ha)-34 b(v)g(e)371
+b(receiv)-34 b(ed)368 b(notice)i(of)g(violation)g(of)g(this)g(License)f
+(\(for)h(an)-34 b(y)370 b(w)-34 b(ork\))371 b(from)f(that)p
+eop end
+%%Page: 99 104
+TeXDict begin 99 103 bop 2000 -1550 a FC(App)34 b(endix)405
+b(A:)e(Cop)-34 b(ying,)405 b(Changes,)g(Dev)-34 b(elopmen)g(t,)404
+b(F)-135 b(A)-34 b(Q,)405 b(T)-101 b(exinfo)404 b(Mo)34
+b(de)11125 b(99)4400 3985 y(cop)-34 b(yrigh)g(t)426 b(holder,)j(and)c
+(y)-34 b(ou)426 b(cure)e(the)h(violation)f(prior)h(to)g(30)f(da)-34
+b(ys)426 b(after)f(y)-34 b(our)424 b(receipt)g(of)h(the)4400
+5446 y(notice.)4400 7240 y(T)-101 b(ermination)367 b(of)f(y)-34
+b(our)366 b(righ)-34 b(ts)367 b(under)g(this)g(section)f(do)34
+b(es)366 b(not)g(terminate)h(the)f(licenses)f(of)i(parties)4400
+8701 y(who)508 b(ha)-34 b(v)g(e)508 b(receiv)-34 b(ed)506
+b(copies)i(or)f(righ)-34 b(ts)508 b(from)g(y)-34 b(ou)508
+b(under)g(this)g(License.)847 b(If)508 b(y)-34 b(our)507
+b(righ)-34 b(ts)508 b(ha)-34 b(v)g(e)4400 10162 y(b)34
+b(een)346 b(terminated)g(and)h(not)g(p)34 b(ermanen)-34
+b(tly)346 b(reinstated,)358 b(receipt)345 b(of)h(a)g(cop)-34
+b(y)346 b(of)g(some)g(or)g(all)f(of)h(the)4400 11623
+y(same)404 b(material)g(do)34 b(es)404 b(not)g(giv)-34
+b(e)404 b(y)-34 b(ou)405 b(an)-34 b(y)404 b(righ)-34
+b(ts)405 b(to)f(use)h(it.)2051 13416 y(10.)800 b(FUTURE)405
+b(REVISIONS)f(OF)h(THIS)f(LICENSE)4400 15210 y(The)554
+b(F)-101 b(ree)552 b(Soft)-34 b(w)g(are)555 b(F)-101
+b(oundation)556 b(ma)-34 b(y)553 b(publish)i(new,)590
+b(revised)553 b(v)-34 b(ersions)553 b(of)g(the)h(GNU)g(F)-101
+b(ree)4400 16671 y(Do)34 b(cumen)-34 b(tation)428 b(License)d(from)h
+(time)h(to)f(time.)606 b(Suc)-34 b(h)427 b(new)g(v)-34
+b(ersions)426 b(will)g(b)34 b(e)426 b(similar)g(in)g(spirit)4400
+18132 y(to)457 b(the)h(presen)-34 b(t)458 b(v)-34 b(ersion,)470
+b(but)458 b(ma)-34 b(y)457 b(di\013er)g(in)g(detail)g(to)g(address)h
+(new)f(problems)h(or)e(concerns.)4400 19593 y(See)404
+b Fu(https://www.gnu.org/licenses/)p FC(.)4400 21386
+y(Eac)-34 b(h)392 b(v)-34 b(ersion)391 b(of)g(the)h(License)e(is)i(giv)
+-34 b(en)391 b(a)g(distinguishing)i(v)-34 b(ersion)391
+b(n)-34 b(um)g(b)34 b(er.)535 b(If)392 b(the)f(Do)34
+b(cumen)-34 b(t)4400 22848 y(sp)34 b(eci\014es)603 b(that)h(a)f
+(particular)g(n)-34 b(um)g(b)34 b(ered)604 b(v)-34 b(ersion)603
+b(of)g(this)h(License)e(\\or)h(an)-34 b(y)603 b(later)g(v)-34
+b(ersion")4400 24309 y(applies)432 b(to)g(it,)438 b(y)-34
+b(ou)432 b(ha)-34 b(v)g(e)433 b(the)f(option)h(of)f(follo)-34
+b(wing)432 b(the)g(terms)g(and)h(conditions)f(either)g(of)g(that)4400
+25770 y(sp)34 b(eci\014ed)504 b(v)-34 b(ersion)504 b(or)g(of)h(an)-34
+b(y)504 b(later)g(v)-34 b(ersion)504 b(that)i(has)e(b)34
+b(een)505 b(published)g(\(not)g(as)g(a)f(draft\))i(b)-34
+b(y)4400 27231 y(the)436 b(F)-101 b(ree)434 b(Soft)-34
+b(w)g(are)437 b(F)-101 b(oundation.)634 b(If)435 b(the)g(Do)34
+b(cumen)-34 b(t)436 b(do)34 b(es)435 b(not)h(sp)34 b(ecify)434
+b(a)i(v)-34 b(ersion)434 b(n)-34 b(um)g(b)34 b(er)437
+b(of)4400 28692 y(this)459 b(License,)471 b(y)-34 b(ou)459
+b(ma)-34 b(y)459 b(c)-34 b(ho)34 b(ose)459 b(an)-34 b(y)459
+b(v)-34 b(ersion)458 b(ev)-34 b(er)458 b(published)i(\(not)g(as)f(a)f
+(draft\))i(b)-34 b(y)459 b(the)h(F)-101 b(ree)4400 30154
+y(Soft)-34 b(w)g(are)427 b(F)-101 b(oundation.)602 b(If)425
+b(the)g(Do)34 b(cumen)-34 b(t)426 b(sp)34 b(eci\014es)424
+b(that)i(a)f(pro)-34 b(xy)425 b(can)g(decide)f(whic)-34
+b(h)426 b(future)4400 31615 y(v)-34 b(ersions)433 b(of)g(this)h
+(License)e(can)h(b)34 b(e)432 b(used,)441 b(that)434
+b(pro)-34 b(xy's)433 b(public)g(statemen)-34 b(t)434
+b(of)g(acceptance)f(of)g(a)4400 33076 y(v)-34 b(ersion)404
+b(p)34 b(ermanen)-34 b(tly)404 b(authorizes)h(y)-34 b(ou)404
+b(to)h(c)-34 b(ho)34 b(ose)404 b(that)h(v)-34 b(ersion)404
+b(for)g(the)h(Do)34 b(cumen)-34 b(t.)2051 34869 y(11.)800
+b(RELICENSING)4400 36663 y(\\Massiv)-34 b(e)496 b(Multiauthor)h(Collab)
+34 b(oration)497 b(Site")f(\(or)g(\\MMC)h(Site"\))g(means)f(an)-34
+b(y)497 b(W)-101 b(orld)495 b(Wide)4400 38124 y(W)-101
+b(eb)476 b(serv)-34 b(er)475 b(that)i(publishes)f(cop)-34
+b(yrigh)g(table)477 b(w)-34 b(orks)476 b(and)h(also)f(pro)-34
+b(vides)476 b(prominen)-34 b(t)477 b(facilities)4400
+39585 y(for)366 b(an)-34 b(yb)34 b(o)g(dy)366 b(to)g(edit)g(those)g(w)
+-34 b(orks.)526 b(A)366 b(public)g(wiki)f(that)i(an)-34
+b(yb)34 b(o)g(dy)366 b(can)g(edit)g(is)f(an)h(example)g(of)4400
+41046 y(suc)-34 b(h)449 b(a)f(serv)-34 b(er.)670 b(A)448
+b(\\Massiv)-34 b(e)448 b(Multiauthor)i(Collab)34 b(oration")448
+b(\(or)h(\\MMC"\))g(con)-34 b(tained)449 b(in)f(the)4400
+42507 y(site)404 b(means)g(an)-34 b(y)405 b(set)f(of)h(cop)-34
+b(yrigh)g(table)405 b(w)-34 b(orks)404 b(th)-34 b(us)406
+b(published)f(on)f(the)h(MMC)g(site.)4400 44301 y(\\CC-BY-SA")469
+b(means)e(the)h(Creativ)-34 b(e)467 b(Commons)i(A)-34
+b(ttribution-Share)470 b(Alik)-34 b(e)466 b(3.0)h(license)g(pub-)4400
+45762 y(lished)356 b(b)-34 b(y)357 b(Creativ)-34 b(e)356
+b(Commons)i(Corp)34 b(oration,)366 b(a)357 b(not-for-pro\014t)h(corp)34
+b(oration)357 b(with)g(a)f(principal)4400 47223 y(place)344
+b(of)g(business)i(in)e(San)h(F)-101 b(rancisco,)355 b(California,)i(as)
+344 b(w)-34 b(ell)344 b(as)g(future)h(cop)-34 b(yleft)345
+b(v)-34 b(ersions)344 b(of)h(that)4400 48684 y(license)403
+b(published)i(b)-34 b(y)405 b(that)g(same)f(organization.)4400
+50477 y(\\Incorp)34 b(orate")407 b(means)g(to)h(publish)g(or)f
+(republish)h(a)f(Do)34 b(cumen)-34 b(t,)408 b(in)f(whole)h(or)f(in)g
+(part,)h(as)f(part)4400 51939 y(of)d(another)h(Do)34
+b(cumen)-34 b(t.)4400 53732 y(An)349 b(MMC)g(is)g(\\eligible)e(for)i
+(relicensing")f(if)h(it)f(is)h(licensed)f(under)h(this)h(License,)358
+b(and)350 b(if)e(all)h(w)-34 b(orks)4400 55193 y(that)560
+b(w)-34 b(ere)559 b(\014rst)g(published)h(under)f(this)h(License)d
+(somewhere)i(other)g(than)h(this)f(MMC,)g(and)4400 56654
+y(subsequen)-34 b(tly)463 b(incorp)34 b(orated)463 b(in)f(whole)h(or)f
+(in)g(part)h(in)-34 b(to)463 b(the)g(MMC,)g(\(1\))g(had)g(no)g(co)-34
+b(v)g(er)462 b(texts)4400 58115 y(or)404 b(in)-34 b(v)-67
+b(arian)-34 b(t)404 b(sections,)g(and)h(\(2\))g(w)-34
+b(ere)404 b(th)-34 b(us)406 b(incorp)34 b(orated)404
+b(prior)g(to)g(No)-34 b(v)g(em)g(b)34 b(er)404 b(1,)g(2008.)4400
+59909 y(The)541 b(op)34 b(erator)539 b(of)i(an)f(MMC)h(Site)f(ma)-34
+b(y)540 b(republish)h(an)f(MMC)h(con)-34 b(tained)541
+b(in)f(the)g(site)g(under)4400 61370 y(CC-BY-SA)402 b(on)g(the)g(same)f
+(site)h(at)f(an)-34 b(y)402 b(time)f(b)34 b(efore)401
+b(August)i(1,)f(2009,)g(pro)-34 b(vided)401 b(the)h(MMC)g(is)4400
+62831 y(eligible)h(for)h(relicensing.)p eop end
+%%Page: 100 105
+TeXDict begin 100 104 bop 2000 -1550 a FC(App)34 b(endix)405
+b(A:)e(Cop)-34 b(ying,)405 b(Changes,)g(Dev)-34 b(elopmen)g(t,)404
+b(F)-135 b(A)-34 b(Q,)405 b(T)-101 b(exinfo)404 b(Mo)34
+b(de)10519 b(100)2000 3985 y FB(ADDENDUM:)600 b(Ho)-50
+b(w)598 b(to)f(use)i(this)g(License)g(for)f(y)-50 b(our)598
+b(do)50 b(cumen)-50 b(ts)2000 6110 y FC(T)-101 b(o)461
+b(use)f(this)g(License)f(in)i(a)f(do)34 b(cumen)-34 b(t)461
+b(y)-34 b(ou)461 b(ha)-34 b(v)g(e)460 b(written,)475
+b(include)460 b(a)g(cop)-34 b(y)460 b(of)h(the)f(License)f(in)h(the)
+2000 7572 y(do)34 b(cumen)-34 b(t)405 b(and)g(put)g(the)g(follo)-34
+b(wing)405 b(cop)-34 b(yrigh)g(t)405 b(and)g(license)e(notices)h(just)h
+(after)f(the)h(title)f(page:)6246 9045 y Fj(Copyright)523
+b(\(C\))1047 b Fe(year)f(your)523 b(name)p Fj(.)6246
+10208 y(Permission)g(is)g(granted)h(to)f(copy,)g(distribute)g(and/or)h
+(modify)f(this)g(document)6246 11370 y(under)g(the)g(terms)h(of)f(the)g
+(GNU)g(Free)g(Documentation)h(License,)f(Version)g(1.3)6246
+12532 y(or)g(any)g(later)g(version)h(published)f(by)g(the)g(Free)g
+(Software)h(Foundation;)6246 13695 y(with)f(no)g(Invariant)h(Sections,)
+f(no)g(Front-Cover)g(Texts,)h(and)f(no)g(Back-Cover)6246
+14857 y(Texts.)1046 b(A)523 b(copy)h(of)f(the)g(license)g(is)g
+(included)g(in)g(the)h(section)f(entitled)g(``GNU)6246
+16019 y(Free)g(Documentation)h(License''.)3660 17792
+y FC(If)531 b(y)-34 b(ou)531 b(ha)-34 b(v)g(e)531 b(In)-34
+b(v)-67 b(arian)-34 b(t)531 b(Sections,)562 b(F)-101
+b(ron)-34 b(t-Co)g(v)g(er)532 b(T)-101 b(exts)531 b(and)h(Bac)-34
+b(k-Co)g(v)g(er)530 b(T)-101 b(exts,)562 b(replace)529
+b(the)2000 19253 y(\\with)73 b(.)295 b(.)f(.)146 b(T)-101
+b(exts.")404 b(line)g(with)h(this:)7292 20727 y Fj(with)523
+b(the)g(Invariant)h(Sections)f(being)g Fe(list)g(their)h(titles)p
+Fj(,)f(with)7292 21889 y(the)g(Front-Cover)h(Texts)f(being)g
+Fe(list)p Fj(,)g(and)g(with)g(the)h(Back-Cover)f(Texts)7292
+23051 y(being)g Fe(list)p Fj(.)3660 24824 y FC(If)469
+b(y)-34 b(ou)469 b(ha)-34 b(v)g(e)468 b(In)-34 b(v)-67
+b(arian)-34 b(t)469 b(Sections)g(without)h(Co)-34 b(v)g(er)469
+b(T)-101 b(exts,)484 b(or)468 b(some)h(other)f(com)-34
+b(bination)470 b(of)e(the)2000 26285 y(three,)404 b(merge)f(those)i(t)
+-34 b(w)g(o)405 b(alternativ)-34 b(es)404 b(to)h(suit)g(the)f
+(situation.)3660 28058 y(If)318 b(y)-34 b(our)317 b(do)34
+b(cumen)-34 b(t)318 b(con)-34 b(tains)318 b(non)-34 b(trivial)317
+b(examples)g(of)g(program)h(co)34 b(de,)333 b(w)-34 b(e)318
+b(recommend)f(releasing)2000 29519 y(these)574 b(examples)f(in)g
+(parallel)f(under)i(y)-34 b(our)574 b(c)-34 b(hoice)573
+b(of)h(free)f(soft)-34 b(w)g(are)575 b(license,)614 b(suc)-34
+b(h)574 b(as)g(the)g(GNU)2000 30980 y(General)404 b(Public)f(License,)g
+(to)i(p)34 b(ermit)403 b(their)h(use)h(in)f(free)f(soft)-34
+b(w)g(are.)2000 34149 y FB(A.2)897 b(Changes)598 b(and)g(New)g(F)-149
+b(eatures)2000 37671 y(News)599 b(in)f(13.1)2994 39796
+y FA(\017)800 b FC(In)473 b(math)g(en)-34 b(vironmen)g(ts)474
+b(`)p Fu(gather)p FC(',)491 b(`)p Fu(gather*)p FC(',)h(`)p
+Fu(gathered)p FC(',)f(`)p Fu(multline)p FC(')475 b(and)f(`)p
+Fu(multline*)p FC(',)4400 41257 y(\014ll)427 b(commands)i(suc)-34
+b(h)429 b(as)f Fs(M-q)g FC(and)h Fs(C-c)405 b(C-q)g(C-e)429
+b FC(are)e(disabled.)610 b(This)428 b(sorts)g(out)h(the)f(inconsis-)
+4400 42718 y(tency)461 b(b)34 b(et)-34 b(w)g(een)461
+b(those)g(and)h(`)p Fu(equation)p FC(',)476 b(`)p Fu(displaymath)p
+FC(')464 b(en)-34 b(vironmen)g(ts,)476 b(in)460 b(latter)h(of)g(whic)
+-34 b(h)4400 44180 y(\014lling)404 b(is)g(already)f(disabled.)4400
+45952 y(If)376 b(y)-34 b(ou)377 b(w)-34 b(an)g(t)378
+b(\014lling)e(in)g(suc)-34 b(h)377 b(en)-34 b(vironmen)g(ts,)383
+b(customize)376 b Fu(LaTeX-indent-environment-list)4400
+47413 y FC(to)405 b(remo)-34 b(v)g(e)403 b(them.)4400
+49186 y(Auto)i(\014ll)f(con)-34 b(tin)g(ues)405 b(to)g(w)-34
+b(ork)404 b(in)g(suc)-34 b(h)405 b(en)-34 b(vironmen)g(t)405
+b(an)-34 b(yw)g(a)g(y)-101 b(.)4400 50959 y(In)293 b(addition,)315
+b(A)-34 b(UCT)14164 51219 y(E)14839 50959 y(X)293 b(adds)g(supp)34
+b(ort)294 b(of)f(alignmen)-34 b(t)293 b(at)g(`)p Fu(&)p
+FC(')f(sign)h(in)g(`)p Fu(align)p FC('-lik)-34 b(e)293
+b(en)-34 b(vironmen)g(ts)4400 52420 y(suc)g(h)427 b(as)e(`)p
+Fu(alignat)p FC(',)433 b(`)p Fu(aligned)p FC(')427 b(and)g(so)e(on,)431
+b(as)426 b(w)-34 b(ell)426 b(as)f(`)p Fu(matrix)p FC('-lik)-34
+b(e)427 b(en)-34 b(vironmen)g(ts)426 b(suc)-34 b(h)427
+b(as)4400 53881 y(`)p Fu(pmatrix)p FC(',)406 b(`)p Fu(bmatrix)p
+FC(')g(and)f(so)f(on.)2994 55654 y FA(\017)800 b FC(No)-34
+b(w)324 b(t)-34 b(w)g(o)325 b(commands)f(`)p Fu(Texindex)p
+FC(')i(and)e(`)p Fu(Texi2dvi)p FC(')i(are)c(a)-34 b(v)-67
+b(ailable)323 b(when)h(y)-34 b(ou)324 b(t)-34 b(yp)34
+b(e)323 b Fs(C-c)406 b(C-c)324 b FC(in)4400 57115 y(T)-101
+b(exinfo)369 b(mo)34 b(de.)527 b(The)369 b(command)h(`)p
+Fu(Texindex)p FC(')h(runs)f Fu(texindex)i FC(on)d(index)g(\014les)g
+(and)h(`)p Fu(Texi2dvi)p FC(')4400 58576 y(runs)405 b
+Fu(pdftexi2dvi)j FC(or)c Fu(texi2dvi)i FC(according)e(to)h(the)f(v)-67
+b(alue)404 b(of)g Fu(TeX-PDF-mode)p FC(.)4400 60349 y(So)391
+b(y)-34 b(ou)392 b(can)f(t)-34 b(yp)34 b(eset)391 b(T)-101
+b(exinfo)392 b(do)34 b(cumen)-34 b(ts)392 b(in)-34 b(to)392
+b Fr(PDF)e FC(or)h Fr(D)-31 b(VI)391 b FC(format)g(from)h(within)g(A)
+-34 b(UCT)48080 60609 y(E)48754 60349 y(X.)2994 62121
+y FA(\017)800 b FC(A)-34 b(UCT)7732 62382 y(E)8407 62121
+y(X's)512 b(o)-34 b(wn)513 b(help)g(messages)f(for)h(L)23543
+61964 y Fv(a)24104 62121 y FC(T)24777 62382 y(E)25450
+62121 y(X)f(errors)g(are)g(no)-34 b(w)513 b(sho)-34 b(wn)514
+b(only)e(for)h(L)44035 61964 y Fv(a)44596 62121 y FC(T)45269
+62382 y(E)45942 62121 y(X)g(runs.)4400 63582 y(A)-34
+b(UCT)7732 63843 y(E)8407 63582 y(X)520 b(sho)-34 b(ws)521
+b(ra)-34 b(w)521 b(error/w)-34 b(arning)520 b(messages)g(found)i(in)e
+Fu(.log)h FC(\014les)f(for)g(runs)h(of)f(formats)4400
+65043 y(other)402 b(than)g(L)10713 64886 y Fv(a)11274
+65043 y FC(T)11947 65304 y(E)12621 65043 y(X,)g(suc)-34
+b(h)402 b(as)g(plain)f(T)22186 65304 y(E)22860 65043
+y(X,)h(ConT)27335 65304 y(E)28010 65043 y(Xt)g(and)g(T)-101
+b(exinfo,)402 b(as)f(it)h(do)34 b(es)401 b(ev)-34 b(en)402
+b(for)f(L)47183 64886 y Fv(a)47744 65043 y FC(T)48417
+65304 y(E)49091 65043 y(X)4400 66505 y(runs)k(when)g(it)f(can't)g
+(\014nd)h(a)f(matc)-34 b(hing)406 b(en)-34 b(try)404
+b(in)g(its)g(o)-34 b(wn)406 b(help)e(message)g(catalogue.)4400
+68277 y(Due)557 b(to)g(this)g(c)-34 b(hange,)595 b(customize)557
+b(option)g Fu(TeX-error-description-list)566 b FC(can)557
+b(no)g(longer)4400 69738 y(ha)-34 b(v)g(e)454 b(a)g(fallbac)-34
+b(k)453 b(en)-34 b(try)454 b(that)h(matc)-34 b(hes)454
+b(an)-34 b(y)454 b(error.)686 b(If)453 b(y)-34 b(our)454
+b(customized)g(v)-67 b(alue)452 b(includes)i(suc)-34
+b(h)4400 71200 y(en)g(try)-101 b(,)404 b(t)-34 b(ypically)404
+b(`)p Fu(\(".*")h(.)f("No)i(help)f(available"\))p FC(',)i(please)d
+(remo)-34 b(v)g(e)404 b(it.)p eop end
+%%Page: 101 106
+TeXDict begin 101 105 bop 2000 -1550 a FC(App)34 b(endix)405
+b(A:)e(Cop)-34 b(ying,)405 b(Changes,)g(Dev)-34 b(elopmen)g(t,)404
+b(F)-135 b(A)-34 b(Q,)405 b(T)-101 b(exinfo)404 b(Mo)34
+b(de)10519 b(101)2994 3985 y FA(\017)800 b FC(Tw)-34
+b(o)284 b(functions)f Fu(TeX-split-string)288 b FC(and)c
+Fu(TeX-assoc)h FC(are)d(no)-34 b(w)283 b(obsolete)g(and)g(will)f(b)34
+b(e)282 b(remo)-34 b(v)g(ed)4400 5446 y(in)493 b(future)h(release.)805
+b(If)493 b(y)-34 b(our)494 b(p)34 b(ersonal)493 b(co)34
+b(de)493 b(uses)g(these)h(functions,)516 b(use)494 b
+Fu(split-string)j FC(and)4400 6907 y Fu(assoc-string)408
+b FC(instead.)2994 8818 y FA(\017)800 b FC(The)343 b(function)g
+Fu(TeX-read-key-val)348 b FC(no)-34 b(w)344 b(accepts)e(a)g(function)i
+(call)d(as)i(second)f(argumen)-34 b(t.)519 b(This)4400
+10279 y(c)-34 b(hange)365 b(should)g(help)g(A)-34 b(UCT)18091
+10540 y(E)18766 10279 y(X)364 b(st)-34 b(yle)364 b(writers)g(who)h(use)
+g Fu(TeX-arg-key-val)k FC(and)d(ha)-34 b(v)g(e)364 b(to)h(deal)4400
+11741 y(with)405 b(dynamic)f(k)-34 b(ey-v)-67 b(alues.)537
+b(Example)404 b(of)h(usage:)7600 13651 y Fu(\(TeX-add-style-hook)643
+b("foo")8236 15113 y(\(lambda)c(\(\))9509 16574 y(\(TeX-add-symbols)
+10145 18035 y('\("bar")g(\(TeX-arg-key-val)j
+(\(function-returning-key-val\)\)\)\)\)\))2994 19946
+y FA(\017)800 b FC(Since)503 b(A)-34 b(UCT)10996 20207
+y(E)11671 19946 y(X)503 b(12.2,)528 b Fs(C-x)405 b(C-w)505
+b FC(acciden)-34 b(tally)503 b(disabled)g(the)h(parse)g(on)f(sa)-34
+b(v)g(e)504 b(in)f(that)i(bu\013er,)4400 21407 y(ev)-34
+b(en)404 b(when)h(y)-34 b(ou)405 b(enabled)f Fu(TeX-auto-save)409
+b FC(option.)539 b(This)405 b(bug)g(w)-34 b(as)405 b(\014xed.)2994
+23318 y FA(\017)800 b FC(A)-34 b(UCT)7732 23579 y(E)8407
+23318 y(X)404 b(no)-34 b(w)405 b(requires)e(GNU)h(Emacs)g(24.3)g(or)g
+(higher.)2994 25228 y FA(\017)800 b FC(Old)427 b(implemen)-34
+b(tations)428 b(for)e(view)-34 b(ers)427 b(w)-34 b(ere)426
+b(discarded,)433 b(as)427 b(announced)h(long)f(b)34 b(efore.)606
+b(The)427 b(v)-67 b(ari-)4400 26690 y(ables)448 b Fu
+(TeX-output-view-style)456 b FC(and)449 b Fu(TeX-view-style)k
+FC(ha)-34 b(v)g(e)449 b(no)g(e\013ect)e(no)-34 b(w.)673
+b(The)448 b(former)4400 28151 y(placeholders)404 b(`)p
+Fu(\045v)p FC(')g(and)h(`)p Fu(\045vv)p FC(')f(in)h Fu
+(TeX-command-list)k FC(are)404 b(ignored.)2994 30062
+y FA(\017)800 b FC(A)-34 b(UCT)7732 30323 y(E)8407 30062
+y(X)603 b(no)-34 b(w)604 b(uses)f(lexical)f(binding)i(whic)-34
+b(h)604 b(has)f(b)34 b(een)603 b(in)-34 b(tro)34 b(duced)604
+b(in)f(Emacs)g(24.)1135 b(This)4400 31523 y(c)-34 b(hange)490
+b(should)f(ha)-34 b(v)g(e)490 b(no)f(user-visible)f(e\013ect)h(and)g
+(require)f(no)h(man)-34 b(ual)490 b(adaptions)g(except)f(in)4400
+32984 y(the)405 b(follo)-34 b(wing)404 b(cases.)5057
+34895 y FA(\000)800 b FC(En)-34 b(tries)591 b(added)g(to)g(the)g
+(customization)h(v)-67 b(ariable)589 b Fu(TeX-expand-list)596
+b FC(also)590 b(had)i(access)6800 36356 y(to)641 b(v)-67
+b(ariables)639 b Fu(command)j FC(and)f Fu(pos)p FC(.)1248
+b(Those)641 b(are)e(no)-34 b(w)642 b(prop)34 b(erly)639
+b(declared)g(and)i(named)6800 37817 y Fu(TeX-expand-command)411
+b FC(and)404 b Fu(TeX-expand-pos)p FC(.)5057 39728 y
+FA(\000)800 b FC(En)-34 b(tries)566 b(added)h(to)f(the)g(customization)
+h(v)-67 b(ariable)565 b Fu(TeX-expand-list)571 b FC(had)566
+b(access)g(to)g(a)6800 41189 y(v)-67 b(ariable)373 b
+Fu(file)k FC(whic)-34 b(h)375 b(w)-34 b(as)376 b(b)34
+b(ound)376 b(to)f Fu(TeX-active-master)p FC(,)386 b(i.e.,)379
+b(it)c(ev)-67 b(aluated)374 b(to)h(either)6800 42650
+y(the)467 b(master)f(or)g(region)g(\014le.)725 b(This)466
+b(usage)h(m)-34 b(ust)467 b(b)34 b(e)466 b(replaced)g(with)h(either)f
+Fu(TeX-active-)6800 44112 y(master)406 b FC(or)e Fu
+(TeX-active-master-with-quotes)p FC(.)5057 46022 y FA(\000)800
+b FC(View)-34 b(er)283 b(en)-34 b(tries)283 b(in)g Fu
+(TeX-view-program-list)290 b FC(also)283 b(had)h(access)e(to)i(a)f(v)
+-67 b(ariable)282 b Fu(file)i FC(whic)-34 b(h)6800 47483
+y(w)g(as)488 b(b)34 b(ound)488 b(to)g(the)f(name)g(of)h(the)f(master)g
+(or)g(region)g(\014le)f(without)j(extension.)788 b(Instead,)6800
+48945 y(the)405 b(function)g Fu(TeX-active-master)410
+b FC(has)405 b(to)f(b)34 b(e)404 b(used)h(no)-34 b(w.)5057
+50855 y FA(\000)800 b FC(Macro)504 b(argumen)-34 b(t)506
+b(parsing)f(functions)h(could)f(set)g(a)f(v)-67 b(ariable)504
+b Fu(exit-mark)k FC(to)d(the)g(bu\013er)6800 52317 y(p)34
+b(osition)594 b(where)g(p)34 b(oin)-34 b(t)594 b(should)h(b)34
+b(e)594 b(left)f(after)h(all)f(argumen)-34 b(ts)595 b(ha)-34
+b(v)g(e)595 b(b)34 b(een)593 b(read.)1107 b(This)6800
+53778 y(v)-67 b(ariable)403 b(is)h(no)-34 b(w)405 b(named)g
+Fu(TeX-exit-mark)p FC(.)5057 55689 y FA(\000)800 b FC(The)424
+b(functions)i(in)d Fu(LaTeX-section-hook)431 b FC(had)424
+b(access)f(or)h(mo)34 b(di\014ed)424 b(the)g(previously)f(un-)6800
+57150 y(declared)441 b(v)-67 b(ariables)441 b Fu(title)p
+FC(,)453 b Fu(name)p FC(,)g Fu(level)p FC(,)g Fu(done-mark)p
+FC(,)h(and)443 b Fu(toc)p FC(.)653 b(These)443 b(v)-67
+b(ariables)440 b(are)6800 58611 y(no)-34 b(w)405 b(prop)34
+b(erly)404 b(declared)f(and)i(ha)-34 b(v)g(e)405 b(the)f(`)p
+Fu(LaTeX-)p FC(')i(pre\014x,)d(e.g.,)g Fu(LaTeX-done-mark)p
+FC(.)5057 60522 y FA(\000)800 b FC(The)557 b(functions)h(in)f
+Fu(ConTeXt-numbered-section-hook)567 b FC(and)557 b Fu
+(ConTeXt-unnumbered-)6800 61983 y(section-hook)433 b
+FC(had)c(access)f(or)g(mo)34 b(di\014ed)429 b(the)g(previously)f
+(undeclared)h(v)-67 b(ariables)428 b Fu(title)p FC(,)6800
+63444 y Fu(name)p FC(,)504 b Fu(level)p FC(,)g Fu(done-mark)p
+FC(,)i(and)484 b Fu(reference)p FC(.)779 b(These)484
+b(v)-67 b(ariables)482 b(are)g(no)-34 b(w)485 b(prop)34
+b(erly)482 b(de-)6800 64905 y(clared)403 b(and)i(ha)-34
+b(v)g(e)405 b(the)g(`)p Fu(ConTeXt-)p FC(')h(pre\014x,)e(e.g.,)e
+Fu(ConTeXt-title)p FC(.)5057 66816 y FA(\000)800 b FC(The)599
+b(functions)h(in)e Fu(TeX-translate-location-hook)608
+b FC(could)598 b(access)g(and)h(mo)34 b(dify)598 b(the)6800
+68277 y(free)657 b(v)-67 b(ariables)656 b Fu(file)p FC(,)721
+b Fu(line)p FC(,)g Fu(error)p FC(,)h Fu(offset)p FC(,)g
+Fu(context)p FC(,)g(and)658 b Fu(string)p FC(.)1300 b(Those)657
+b(are)6800 69738 y(no)-34 b(w)348 b(prop)34 b(erly)345
+b(declared)h(v)-67 b(ariables)345 b(with)j(the)f(pre\014x)f(`)p
+Fu(TeX-translate-location-)p FC(',)365 b(e.g.,)6800 71200
+y Fu(TeX-translate-location-file)p FC(.)p eop end
+%%Page: 102 107
+TeXDict begin 102 106 bop 2000 -1550 a FC(App)34 b(endix)405
+b(A:)e(Cop)-34 b(ying,)405 b(Changes,)g(Dev)-34 b(elopmen)g(t,)404
+b(F)-135 b(A)-34 b(Q,)405 b(T)-101 b(exinfo)404 b(Mo)34
+b(de)10519 b(102)2994 3985 y FA(\017)800 b FC(The)614
+b(constan)-34 b(t)615 b Fu(LaTeX-dialect)j FC(has)613
+b(b)34 b(een)614 b(renamed)f(to)h Fu(TeX-dialect)j FC(and)d(mo)-34
+b(v)g(ed)614 b(from)4400 5446 y Fu(latex.el)407 b FC(to)d
+Fu(tex.el)p FC(.)541 b Fu(LaTeX-dialect)409 b FC(no)-34
+b(w)405 b(is)f(an)g(obsolete)g(alias.)2994 7360 y FA(\017)800
+b FC(The)606 b(st)-34 b(yle)606 b Fu(latexinfo.el)k FC(is)c(remo)-34
+b(v)g(ed)606 b(from)g(A)-34 b(UCT)31212 7621 y(E)31887
+7360 y(X.)1144 b Fu(latexinfo.el)610 b FC(w)-34 b(as)607
+b(mean)-34 b(t)607 b(to)4400 8822 y(supp)34 b(ort)510
+b(latexinfo)f(whic)-34 b(h)510 b(in)g(return)f(w)-34
+b(as)510 b(a)f(L)26861 8665 y Fv(a)27422 8822 y FC(T)28095
+9083 y(E)28769 8822 y(X-2.09)g(extension)g(of)g(T)-101
+b(exinfo,)536 b(but)510 b(didn't)4400 10283 y(manage)404
+b(to)h(replace)e(T)-101 b(exinfo.)2994 12197 y FA(\017)800
+b FC(The)555 b(st)-34 b(yle)555 b Fu(siunitx.el)j FC(is)c(up)34
+b(dated)556 b(to)f(supp)34 b(ort)556 b(pac)-34 b(k)-67
+b(age)554 b(v)-34 b(ersion)555 b(3.)990 b(Key-v)-67 b(alue)553
+b(options)4400 13658 y(pro)-34 b(vided)420 b(b)-34 b(y)420
+b(older)g(pac)-34 b(k)-67 b(age)419 b(v)-34 b(ersions)420
+b(are)f(remo)-34 b(v)g(ed,)424 b(deprecated)c(macros)f(and)i(units)g
+(are)e(not)4400 15119 y(supp)34 b(orted)405 b(an)-34
+b(ymore.)2994 17034 y FA(\017)800 b FC(A)-34 b(UCT)7732
+17295 y(E)8407 17034 y(X)562 b(has)h(preliminary)f(supp)34
+b(ort)564 b(for)e(L)25844 16877 y Fv(a)26405 17034 y
+FC(T)27078 17295 y(E)27752 17034 y(X-ho)34 b(oks.)1014
+b(Ho)34 b(oks)562 b(pro)-34 b(vided)563 b(b)-34 b(y)563
+b(L)44597 16877 y Fv(a)45158 17034 y FC(T)45831 17295
+y(E)46505 17034 y(X)f(k)-34 b(er-)4400 18495 y(nel)465
+b(are)g(kno)-34 b(wn)466 b(and)g(a)-34 b(v)-67 b(ailable)465
+b(for)g(completion)h(in)f(`)p Fu(\\AddToHook)p FC(',)483
+b(`)p Fu(\\RemoveFromHook)p FC(')470 b(and)4400 19956
+y(`)p Fu(\\AddToHookNext)p FC('.)2994 21870 y FA(\017)800
+b FC(A)-34 b(UCT)7732 22131 y(E)8407 21870 y(X)419 b(is)g(no)-34
+b(w)420 b(able)g(to)f(place)g(all)g(generated)g(output)i(\014les,)i
+(including)d(those)g(that)g(are)f(pro-)4400 23331 y(duced)438
+b(b)-34 b(y)438 b(applications)h(running)f(under)h(A)-34
+b(UCT)27779 23592 y(E)28453 23331 y(X,)446 b(temp)34
+b(orary)437 b(\014les)h(related)f(to)h(region)g(pro-)4400
+24792 y(cessing)411 b(and)i Fw(p)-34 b(review-latex)410
+b FC(\014les,)j(in)f(an)g(output)h(directory)-101 b(.)560
+b(T)-101 b(o)412 b(use)f(this)i(feature,)g(set)f(the)f(new)4400
+26254 y(user)505 b(option)g Fu(TeX-output-dir)510 b FC(to)505
+b(the)g(absolute)g(path)h(of)f(the)g(output)i(directory)d(or)g(a)h
+(rela-)4400 27715 y(tiv)-34 b(e)416 b(path)i(whic)-34
+b(h)417 b(w)-34 b(ould)418 b(b)34 b(e)416 b(in)-34 b(terpreted)417
+b(as)g(b)34 b(eing)416 b(relativ)-34 b(e)416 b(to)h(the)g(master)f
+(\014le)h(in)f(a)h(m)-34 b(ulti\014le)4400 29176 y(do)34
+b(cumen)-34 b(t.)4400 31090 y(Note)532 b(that)h(this)f(feature)h(do)34
+b(esn't)532 b(w)-34 b(ork)532 b(if)g(the)g(do)34 b(cumen)-34
+b(t)533 b(includes)f(sub)h(\014le)e(placed)h(in)g(sub)4400
+32551 y(directory)403 b(b)34 b(elo)-34 b(w)405 b(the)f(main)g(\014le)g
+(via)g(`)p Fu(\\include)p FC(')i(command.)2994 34466
+y FA(\017)800 b FC(Man)-34 b(y)405 b(other)f(bugs)h(w)-34
+b(ere)404 b(\014xed.)2000 38039 y FB(News)599 b(in)f(12.3)2994
+40164 y FA(\017)800 b FC(Supp)34 b(ort)399 b(for)f(`)p
+Fu(PSTricks)p FC(')h(is)e(no)-34 b(w)399 b Fr(PDF)p FC(-orien)-34
+b(ted.)536 b(A)-34 b(UCT)32028 40425 y(E)32703 40164
+y(X)398 b(no)f(longer)h(turns)g(o\013)g(PDF)f(mo)34 b(de)4400
+41625 y(for)571 b(`)p Fu(PSTricks)p FC(')i(do)34 b(cumen)-34
+b(ts)572 b(ev)-34 b(en)571 b(without)h(`)p Fu(pst-pdf)p
+FC('.)1041 b(It)571 b(no)-34 b(w)572 b(sets)f(up)g Fu(TeX-PDF-from-)
+4400 43086 y(DVI)417 b FC(option)g(so)f(that)g Fr(PDF)g
+FC(output)i(is)d(generated)h(when)h Fu(TeX-PDF-mode)j
+FC(is)415 b(enabled)h(\(default\).)4400 44547 y(Users)407
+b(who)g(w)-34 b(an)g(t)409 b Fr(D)-31 b(VI)407 b FC(output)i(should)f
+(disable)f(PDF)g(mo)34 b(de)406 b(explicitly)g(b)-34
+b(y)407 b(\014le)g(lo)34 b(cal)406 b(v)-67 b(ariable,)4400
+46009 y(or)404 b(customize)g Fu(TeX-PDF-mode)k FC(to)d
+Fu(nil)p FC(.)2994 47923 y FA(\017)800 b FC(The)743 b(function)h
+Fu(font-latex-update-font-lock)752 b FC(has)743 b(b)34
+b(een)742 b(obsoleted)h(in)f(order)g(to)h(\014x)4400
+49384 y(`)p Fu(bug#37945)p FC('.)537 b(That)393 b(function)g(w)-34
+b(as)393 b(used)f(b)-34 b(y)393 b(sev)-34 b(eral)391
+b(st)-34 b(yle)391 b(\014les)h(in)g(order)g(to)g(refresh)g(fon)-34
+b(ti\014ca-)4400 50845 y(tion)409 b(after)f(adding)h(new)g(sym)-34
+b(b)34 b(ols)408 b(or)g(v)-34 b(erbatim)409 b(constructs.)551
+b(It)408 b(is)g(b)34 b(etter)409 b(to)f(call)f Fu(font-lock-)4400
+52306 y(flush)306 b FC(in)f(the)g(former)f(case)g(and)h
+Fu(font-latex-set-syntactic-keywords)317 b FC(in)304
+b(the)h(latter)g(case.)4400 53768 y(The)404 b(function)h
+Fu(font-latex-update-font-lock)413 b FC(still)403 b(exists)g(as)h(a)f
+(no-op)i(whic)-34 b(h)404 b(only)g(sho)-34 b(ws)4400
+55229 y(a)404 b(w)-34 b(arning)405 b(explaining)f(ho)-34
+b(w)405 b(to)g(up)34 b(date)405 b(fon)-34 b(t-lo)34 b(c)-34
+b(k)405 b(as)f(men)-34 b(tioned)405 b(ab)34 b(o)-34 b(v)g(e.)2994
+57143 y FA(\017)800 b FC(Math)426 b(expression)f(highligh)-34
+b(ting)427 b(w)-34 b(as)426 b(impro)-34 b(v)g(ed.)603
+b(Highligh)-34 b(ting)426 b(for)g(do)34 b(cumen)-34 b(ts)426
+b(with)h(a)e(lot)h(of)4400 58604 y(inline)404 b(math)h(expressions)f(`)
+p Fu($...$)p FC(')h(w)-34 b(on't)405 b(get)f(scram)-34
+b(bled)405 b(no)-34 b(w)405 b(\(`)p Fu(bug#33139)p FC('\).)4400
+60518 y(In)1082 b(addition,)1253 b(it)1082 b(is)g(no)h(longer)f
+(recommended)g(to)h(customize)f Fu(font-latex-math-)4400
+61980 y(environments)p FC(.)559 b(Use)409 b Fu(texmathp-tex-commands)
+417 b FC(instead.)555 b(See)409 b(Section)h(3.1.3)e([F)-101
+b(on)-34 b(ti\014cation)4400 63441 y(of)404 b(math],)h(page)f(45.)2994
+65355 y FA(\017)800 b FC(A)-34 b(UCT)7732 65616 y(E)8407
+65355 y(X)532 b(trac)-34 b(ks)533 b(c)-34 b(hanges)533
+b(in)g(L)20034 65198 y Fv(a)20595 65355 y FC(T)21268
+65616 y(E)21942 65355 y(X2e)f(2020-02-02)h(release.)923
+b(A)-34 b(UCT)38822 65616 y(E)39497 65355 y(X)532 b(supp)34
+b(orts)534 b(the)f(im-)4400 66816 y(pro)-34 b(v)g(emen)g(ts)565
+b(to)e(L)12929 66659 y Fv(a)13490 66816 y FC(T)14163
+67077 y(E)14837 66816 y(X)g(fon)-34 b(t)565 b(selection)e(mec)-34
+b(hanism)564 b(\(NFSS\).)h(New)f(macros)f(lik)-34 b(e)562
+b(`)p Fu(\\textsw)p FC(')4400 68277 y(or)444 b(`)p Fu(\\textulc)p
+FC(')j(are)d(added)i(to)f(fon)-34 b(t)446 b(insertion)e(k)-34
+b(eyb)34 b(oard)445 b(commands.)660 b(See)445 b(Section)g(2.2)f([F)-101
+b(on)-34 b(t)4400 69738 y(Sp)34 b(eci\014ers],)335 b(page)318
+b(23,)336 b(for)318 b(details.)510 b(F)-101 b(urther,)336
+b(the)319 b(en)-34 b(tries)319 b(in)f(the)h(men)-34 b(u)320
+b(`)p Fu(LaTeX)p FC(',)336 b(`)p Fu(Insert)406 b(Font)p
+FC(')4400 71200 y(are)e(reorganized)f(and)i(adjusted)h(accordingly)-101
+b(.)p eop end
+%%Page: 103 108
+TeXDict begin 103 107 bop 2000 -1550 a FC(App)34 b(endix)405
+b(A:)e(Cop)-34 b(ying,)405 b(Changes,)g(Dev)-34 b(elopmen)g(t,)404
+b(F)-135 b(A)-34 b(Q,)405 b(T)-101 b(exinfo)404 b(Mo)34
+b(de)10519 b(103)4400 3985 y(Macros)385 b(previously)g(pro)-34
+b(vided)386 b(b)-34 b(y)386 b Fu(textcomp.sty)k FC(are)385
+b(no)-34 b(w)386 b(part)h(of)e(L)37844 3828 y Fv(a)38405
+3985 y FC(T)39078 4246 y(E)39752 3985 y(X)h(k)-34 b(ernel.)531
+b(A)-34 b(UCT)48416 4246 y(E)49091 3985 y(X)4400 5446
+y(trac)g(ks)471 b(this)g(c)-34 b(hange)472 b(as)f(w)-34
+b(ell)471 b(and)h(supp)34 b(ort)472 b(for)f(the)g(new)h(macro)e(`)p
+Fu(\\legacyoldstylenums)p FC(')477 b(is)4400 6907 y(added.)2994
+8934 y FA(\017)800 b FC(Insertion)314 b(of)h(en)-34 b(vironmen)g(ts)315
+b(in)f(L)19702 8777 y Fv(a)20263 8934 y FC(T)20936 9195
+y(E)21610 8934 y(X)g(do)34 b(cumen)-34 b(ts)316 b(\(i.e.)d
+Fs(C-c)405 b(C-e)p FC(\))316 b(w)-34 b(as)315 b(impro)-34
+b(v)g(ed.)509 b(The)314 b(former)4400 10395 y(co)34 b(de)304
+b(had)i(a)e(few)h(bugs,)325 b(whic)-34 b(h)306 b(sometimes)e(resulted)h
+(in)g(either)f(spurious)h(empt)-34 b(y)306 b(line)e(or)g(spurious)4400
+11856 y(commen)-34 b(t)296 b(pre\014x,)316 b(or)295 b(b)34
+b(oth,)318 b(esp)34 b(ecially)293 b(when)j(the)f(region)g(is)g(activ)
+-34 b(e.)502 b(Those)295 b(bugs)h(are)f(no)-34 b(w)296
+b(\014xed.)2994 13883 y FA(\017)800 b FC(More)404 b(bugs)h(\014xed,)f
+(other)g(minor)g(features)h(implemen)-34 b(ted.)2000
+17793 y FB(News)599 b(in)f(12.2)2994 19918 y FA(\017)800
+b FC(A)-34 b(UCT)7732 20179 y(E)8407 19918 y(X)405 b(re\015ects)g(the)h
+(c)-34 b(hanges)406 b(in)f(L)22152 19761 y Fv(a)22713
+19918 y FC(T)23386 20179 y(E)24060 19918 y(X2e)g(2019-10-01)h(release.)
+541 b(`)p Fu(filecontents)p FC(')409 b(en)-34 b(viron-)4400
+21380 y(men)g(t)413 b(no)-34 b(w)413 b(tak)-34 b(es)412
+b(an)g(optional)h(argumen)-34 b(t)413 b(and)g(can)f(b)34
+b(e)412 b(used)g(an)-34 b(ywhere)412 b(in)g(a)g(do)34
+b(cumen)-34 b(t.)563 b(The)4400 22841 y(macros)556 b(`)p
+Fu(\\Ref)p FC(')i(and)f(`)p Fu(\\labelformat)p FC(')k(are)556
+b(mo)-34 b(v)g(ed)557 b(from)g Fu(varioref.sty)k FC(to)c(L)43122
+22684 y Fv(a)43683 22841 y FC(T)44356 23102 y(E)45029
+22841 y(X)g(k)-34 b(ernel.)4400 24302 y(`)p Fu(amsmath)p
+FC(')406 b(has)f(a)f(new)g(macro)g(`)p Fu(\\overunderset)p
+FC('.)2994 26329 y FA(\017)800 b FC(A)420 b(new)h(metho)34
+b(d)421 b(is)f(implemen)-34 b(ted)421 b(in)f Fw(p)-34
+b(review-latex)419 b FC(to)i(adjust)h(the)f(foreground)g(colors)e(of)i
+(gen-)4400 27790 y(erated)445 b(images)g(to)g(those)h(of)f(Emacs,)455
+b(when)446 b(the)g(L)28232 27633 y Fv(a)28793 27790 y
+FC(T)29466 28051 y(E)30139 27790 y(X)f(command)h(pro)34
+b(duces)445 b Fr(PDF)p FC(.)661 b(The)446 b(tra-)4400
+29251 y(ditional)405 b(metho)34 b(d)406 b(b)34 b(ecame)404
+b(in)-34 b(v)-67 b(alid)405 b(b)34 b(ecause)404 b(of)i(the)f(c)-34
+b(hange)406 b(in)-34 b(tro)34 b(duced)405 b(in)g(Ghostscript)h(9.27.)
+4400 30712 y(Unfortunately)-101 b(,)449 b(the)440 b(new)g(metho)34
+b(d)440 b(do)34 b(esn't)440 b(w)-34 b(ork)440 b(due)g(to)g(a)f(bug)h
+(in)g(Ghostscript)h(9.27)e(and)h(is)4400 32173 y(v)-67
+b(alid)517 b(only)g(for)h(Ghostscript)g Fu(>)g FC(9.27.)879
+b(There)517 b(is)h(also)f(a)h(fallbac)-34 b(k)517 b(metho)34
+b(d)518 b(for)g(gs)g(9.27)f(users)4400 33635 y(whic)-34
+b(h)403 b(displa)-34 b(ys)402 b(plain)g(\\blac)-34 b(k)402
+b(on)g(white")h(images.)537 b(F)-101 b(or)402 b(successful)g(function)i
+(of)e Fw(p)-34 b(review-latex)p FC(,)4400 35096 y(the)419
+b(users)f(are)g(encouraged)g(to)h(set)f(up)h(the)g(new)g(user)f(option)
+h Fu(preview-pdf-color-adjust-)4400 36557 y(method)481
+b FC(to)f(c)-34 b(ho)34 b(ose)479 b(appropriate)h(option)g(among)g(the)
+f(three:)689 b(new,)498 b(traditional)480 b(and)g(fallbac)-34
+b(k)4400 38018 y(metho)34 b(d.)2994 40045 y FA(\017)800
+b FC(A)-34 b(UCT)7732 40306 y(E)8407 40045 y(X)417 b(has)h(supp)34
+b(ort)418 b(for)f(the)h(Flymak)-34 b(e)417 b(pac)-34
+b(k)-67 b(age)417 b(in)g(Emacs)g(26)g(or)g(new)-34 b(er.)578
+b(T)-101 b(o)418 b(enable,)i(call)4400 41506 y Fs(M-x)405
+b(flymake-mode)j(RET)e FC(or)d(add)i(this)g(to)f(y)-34
+b(our)405 b Fu(.emacs)h FC(\014le:)7600 43532 y Fu(\(add-hook)640
+b('LaTeX-mode-hook)i(#'flymake-mode\))2994 45559 y FA(\017)800
+b FC(The)376 b(w)-34 b(a)g(y)376 b(the)g(option)g Fu(TeX-record-buffer)
+382 b FC(is)375 b(used)h(w)-34 b(as)376 b(corrected.)528
+b(It)375 b(w)-34 b(as)377 b(used)f(in)f(just)h(the)4400
+47020 y(opp)34 b(osite)468 b(w)-34 b(a)g(y)468 b(as)g(the)f(do)34
+b(cumen)-34 b(t)469 b(sa)-34 b(ys.)729 b(Erase)467 b(the)g
+(customization)h(if)g(y)-34 b(ou)468 b(ha)-34 b(v)g(e)468
+b(customized)4400 48481 y(this)405 b(option)g(since)e(it)i(no)-34
+b(w)405 b(acts)f(in)g(rev)-34 b(erse)403 b(to)i(y)-34
+b(our)404 b(exp)34 b(ectation.)2994 50508 y FA(\017)800
+b FC(A)1103 b(former)g(customize)g(option)i Fu
+(japanese-TeX-command-list)1112 b FC(is)1103 b(remo)-34
+b(v)g(ed.)2637 b(Use)4400 51969 y Fu(japanese-TeX-engine-default)p
+FC(,)560 b(or)521 b(if)h(it's)f(really)f(necessary)-101
+b(,)549 b(customize)522 b Fu(TeX-command-)4400 53430
+y(list)405 b FC(directly)f(if)g(the)g(task)h(whic)-34
+b(h)405 b(the)f(option)h(used)g(to)f(carry)f(is)h(required.)2994
+55457 y FA(\017)800 b FC(Supp)34 b(ort)468 b(for)e(standard)i(L)16508
+55300 y Fv(a)17069 55457 y FC(T)17742 55718 y(E)18416
+55457 y(X)e(without)i(e-T)25981 55718 y(E)26655 55457
+y(X)e(extension)h(is)f(no)-34 b(w)468 b(v)-34 b(ery)465
+b(limited.)725 b(It)467 b(do)34 b(esn't)4400 56918 y(w)-34
+b(ork)437 b(if)f(ra)-34 b(w)437 b(T)11574 57179 y(E)12247
+56918 y(X)g(co)34 b(de)436 b(is)g(put)h(on)g(the)g(command)g(line)e(to)
+i(in)-34 b(v)g(ok)g(e)437 b Fu(latex)h FC(command.)636
+b(It)436 b(also)4400 58379 y(fails)365 b(for)g(region)g(compilation)g
+(\()p Fs(C-c)406 b(C-r)366 b FC(and)f(so)h(on\))f(with)h(do)34
+b(cumen)-34 b(ts)367 b(of)e(non-ascii)g(\014le)g(name.)4400
+59841 y(In)430 b(addition,)438 b(it)430 b(no)g(longer)g(w)-34
+b(orks)431 b(with)g Fw(p)-34 b(review-latex)p FC(.)615
+b(W)-101 b(e)430 b(consider)g(this)h(incompatibilit)-34
+b(y)430 b(is)4400 61302 y(p)34 b(ermissible)335 b(b)34
+b(ecause)335 b(e-T)16677 61563 y(E)17351 61302 y(X)g(extension)h(is)f
+(enabled)h(for)g(standard)h(L)36514 61145 y Fv(a)37075
+61302 y FC(T)37748 61563 y(E)38422 61302 y(X)f(b)-34
+b(y)336 b(default)g(long)g(ago.)4400 62763 y(L)4722 62606
+y Fv(a)5283 62763 y FC(T)5956 63024 y(E)6630 62763 y(X)404
+b(v)-67 b(arian)-34 b(ts)404 b(suc)-34 b(h)405 b(as)f(XeL)18524
+62606 y Fv(a)19085 62763 y FC(T)19758 63024 y(E)20432
+62763 y(X)g(and)h(LuaL)26461 62606 y Fv(a)27022 62763
+y FC(T)27695 63024 y(E)28368 62763 y(X)f(are)g(not)h(a\013ected.)2994
+64790 y FA(\017)800 b FC(Key)471 b(binds)i(in)f(T)-101
+b(exinfo)473 b(mo)34 b(de)472 b(are)f(impro)-34 b(v)g(ed.)743
+b(T)-34 b(yping)473 b Ft($)p FC(,)489 b Fu(^)p FC(,)g
+Fs(_)472 b FC(and)h Fu(\\)f FC(no)-34 b(w)474 b(just)f(self-inserts)
+4400 66251 y(without)406 b(p)34 b(oin)-34 b(tless)404
+b(side)g(e\013ects)g(in)g(T)-101 b(exinfo)405 b(mo)34
+b(de.)4400 68277 y(In)361 b(addition,)370 b(the)362 b(option)g
+Fu(TeX-electric-escape)367 b FC(is)361 b(no)-34 b(w)362
+b(e\013ectiv)-34 b(e)360 b(in)h(T)-101 b(exinfo)362 b(mo)34
+b(de.)524 b(When)4400 69738 y(it)418 b(is)g(enabled,)j(t)-34
+b(yping)419 b Fs(@)f FC(will)g(in)-34 b(v)g(ok)g(e)418
+b Fu(TeX-electric-macro)424 b FC(o\013ering)418 b(completion)g(in)g
+(similar)4400 71200 y(st)-34 b(yle)404 b(with)h(other)f(T)13837
+71461 y(E)14511 71200 y(X)g(mo)34 b(des)404 b(of)h(A)-34
+b(UCT)24281 71461 y(E)24956 71200 y(X.)p eop end
+%%Page: 104 109
+TeXDict begin 104 108 bop 2000 -1550 a FC(App)34 b(endix)405
+b(A:)e(Cop)-34 b(ying,)405 b(Changes,)g(Dev)-34 b(elopmen)g(t,)404
+b(F)-135 b(A)-34 b(Q,)405 b(T)-101 b(exinfo)404 b(Mo)34
+b(de)10519 b(104)2994 3985 y FA(\017)800 b FC(F)-101
+b(on)-34 b(ti\014cation)420 b(supp)34 b(ort)419 b(for)f(`)p
+Fu(biblatex)p FC(')i(pac)-34 b(k)-67 b(age)418 b(is)f(impro)-34
+b(v)g(ed)419 b(and)f(up)34 b(dated)420 b(to)e(macros)g(pro-)4400
+5446 y(vided)409 b(b)-34 b(y)410 b(pac)-34 b(k)-67 b(age)409
+b(v)-34 b(ersion)409 b(3.12.)553 b(F)-101 b(or)409 b(quali\014ed)h
+(lists,)g(at)g(least)f(2)g(mandatory)h(argumen)-34 b(ts)410
+b(are)4400 6907 y(fon)-34 b(ti\014ed.)2994 8707 y FA(\017)800
+b FC(Supp)34 b(ort)602 b(for)g(column)f(sp)34 b(eci\014ers)600
+b(`)p Fu(w)p FC(')h(and)h(`)p Fu(W)p FC(')e(pro)-34 b(vided)602
+b(b)-34 b(y)601 b(`)p Fu(array)p FC(')h(pac)-34 b(k)-67
+b(age)601 b(is)g(added)h(to)4400 10168 y Fu(array.el)p
+FC(.)536 b(The)388 b(correct)f(coun)-34 b(ting)389 b(of)f(columns)h
+(only)e(w)-34 b(orks)389 b(when)f(the)h(`)p Fu(align)p
+FC(')f(parameter)g(is)4400 11629 y(enclosed)404 b(in)g(braces,)g(e.g.,)
+e(`)p Fu(w{l}{3cm})p FC('.)542 b(The)404 b(short)h(v)-34
+b(ersion)404 b(`)p Fu(wl{3cm})p FC(')i(is)d(not)i(supp)34
+b(orted.)2994 13428 y FA(\017)800 b FC(En)-34 b(tries)458
+b(for)g(`)p Fu(PDF)405 b(Tools)p FC(')459 b(are)e(added)h(in)g
+Fu(TeX-view-program-list-builtin)468 b FC(for)458 b(Windo)-34
+b(ws)4400 14890 y(and)311 b(macOS.)f(This)h(view)-34
+b(er)310 b(can)g(b)34 b(e)311 b(con\014gured)g(under)g(these)g(op)34
+b(erating)310 b(systems)h(with)g(an)g(en)-34 b(try)4400
+16351 y(lik)g(e)403 b(this)i(in)f(an)h(init)f(\014le:)7600
+18150 y Fu(\(setq)638 b(TeX-view-program-selection)646
+b('\(\(output-pdf)641 b("PDF)d(Tools"\)\)\))2994 19949
+y FA(\017)800 b FC(Sev)-34 b(eral)403 b(other)i(bugs)g(w)-34
+b(ere)404 b(\014xed,)g(man)-34 b(y)404 b(minor)h(features)f(w)-34
+b(ere)404 b(added.)2000 23178 y FB(News)599 b(in)f(12.1)2994
+25303 y FA(\017)800 b FC(A)-34 b(UCT)7732 25564 y(E)8407
+25303 y(X)615 b(no)-34 b(w)616 b(requires)e(GNU)h(Emacs)f(24)h(or)g
+(higher.)1171 b(Supp)34 b(ort)617 b(for)e(XEmacs)g(has)g(b)34
+b(een)4400 26764 y(dropp)g(ed.)2994 28564 y FA(\017)800
+b FC(Besides)494 b(the)i(c)-34 b(hange)496 b(in)f(the)g(supp)34
+b(orted)497 b(v)-34 b(ersion)495 b(of)g(Emacs,)518 b(there)495
+b(has)g(b)34 b(een)495 b(no)h(functional)4400 30025 y(c)-34
+b(hange)405 b(in)f(this)h(release,)d(whic)-34 b(h)405
+b(is)f(equiv)-67 b(alen)-34 b(t)404 b(to)g(v)-34 b(ersion)404
+b(11.92.)2000 33253 y FB(News)599 b(in)f(11.92)2994 35378
+y FA(\017)800 b Fw(p)-34 b(review-latex)399 b FC(is)h(compatible)g
+(with)h(Ghostscript)g(9.22)f(where)g(the)g(op)34 b(erator)400
+b(`)p Fu(.runandhide)p FC(')j(is)4400 36840 y(remo)-34
+b(v)g(ed.)532 b(All)383 b(o)34 b(ccurrences)383 b(of)h(`)p
+Fu(.runandhide)p FC(')k(in)c Fw(p)-34 b(review-latex)383
+b FC(are)g(replaced)h(b)-34 b(y)384 b(alternativ)-34
+b(e)4400 38301 y(co)34 b(de)404 b(making)g(it)g(w)-34
+b(ork)404 b(with)h(Ghostscript)g(9.22)f(again.)2994 40100
+y FA(\017)800 b FC(A)-34 b(UCT)7732 40361 y(E)8407 40100
+y(X)502 b(has)g(a)g(new)g(customize)g(option)h Fu
+(TeX-math-input-method-off-regexp)p FC(.)843 b(When)4400
+41561 y(y)-34 b(ou)401 b(b)34 b(egin)401 b(to)h(input)g(a)f(math)h
+(form)-34 b(ula,)402 b(the)f(curren)-34 b(t)401 b(input)h(metho)34
+b(d)402 b(is)f(turned)h(o\013)f(if)g(its)g(name)4400
+43023 y(matc)-34 b(hes)405 b(this)g(regular)e(expression.)4400
+44822 y(In)417 b(fact)g(this)h(v)-67 b(ariable)415 b(w)-34
+b(as)418 b(in)-34 b(tro)34 b(duced)418 b(long)f(b)34
+b(efore,)419 b(but)g(has)e(not)h(b)34 b(een)416 b(do)34
+b(cumen)-34 b(ted)419 b(in)d(info)4400 46283 y(\014les)404
+b(nor)g(turned)h(in)-34 b(to)405 b(a)f(customize)g(option)h(with)g
+Fu(defcustom)j FC(un)-34 b(til)405 b(this)f(release.)2994
+48082 y FA(\017)800 b FC(The)300 b(windo)-34 b(w)302
+b(system)e(fo)34 b(cus)300 b(is)f(pulled)h(bac)-34 b(k)300
+b(to)g(Emacs)g(when)h(viewing)e(with)i(evince-compatible)4400
+49544 y(view)-34 b(ers)404 b(if)g(a)g(new)g(customize)g(option)h
+Fu(TeX-view-evince-keep-focus)414 b FC(is)404 b(non-nil.)2994
+51343 y FA(\017)800 b FC(The)405 b(usual)f(dose)h(of)f(bug)h(\014xes)f
+(w)-34 b(as)405 b(administered.)2000 54571 y FB(News)599
+b(in)f(11.91)2994 56696 y FA(\017)800 b FC(No)-34 b(w)328
+b(A)-34 b(UCT)10416 56957 y(E)11090 56696 y(X)327 b(has)h(a)e(logo.)513
+b(The)327 b(L)21084 56539 y Fv(a)21645 56696 y FC(T)22318
+56957 y(E)22992 56696 y(X)g(co)34 b(de)326 b(to)h(create)f(it)h(is)g(a)
+-34 b(v)-67 b(ailable)326 b(in)g(the)i Fu(etc/)g FC(directory)4400
+58158 y(of)404 b(the)h(pac)-34 b(k)-67 b(age.)2994 59957
+y FA(\017)800 b FC(Add)473 b(supp)34 b(ort)474 b(for)f
+Fu(upmendex)p FC(,)492 b(an)473 b(extension)g(of)g Fu(makeindex)j
+FC(capable)c(of)h(sorting)g(indexes)g(b)-34 b(y)4400
+61418 y(unico)34 b(de)404 b(based)h(ICU.)2994 63217 y
+FA(\017)800 b FC(Fix)458 b Fw(p)-34 b(review-latex)457
+b FC(to)h(in)-34 b(teract)459 b(correctly)d(with)j(Japanese)f(L)33136
+63060 y Fv(a)33697 63217 y FC(T)34370 63478 y(E)35044
+63217 y(X.)700 b(The)458 b(parsing)h(routine)f(w)-34
+b(as)4400 64679 y(made)280 b(robust)h(not)f(to)h(b)34
+b(e)279 b(confused)i(b)-34 b(y)280 b(the)g(7-bit)h(enco)34
+b(ding)280 b(of)g(Japanese)g(text)g(and)g(the)h(necessary)4400
+66140 y(option)405 b(to)g(L)9975 65983 y Fv(a)10536 66140
+y FC(T)11209 66401 y(E)11882 66140 y(X)f(command)h(is)f(k)-34
+b(ept)405 b(ev)-34 b(en)404 b(when)h(pream)-34 b(ble)404
+b(cac)-34 b(hing)404 b(is)g(enabled.)2994 67939 y FA(\017)800
+b FC(The)292 b(new)h(\\Glossaries")e(en)-34 b(try)292
+b(in)g Fu(TeX-command-list)297 b FC(runs)c(the)f(command)g
+Fu(makeglossaries)p FC(.)2994 69738 y FA(\017)800 b FC(F)-101
+b(on)-34 b(ti\014cation)293 b(of)f(con)-34 b(trol)291
+b(sym)-34 b(b)34 b(ols)292 b(has)f(b)34 b(een)292 b(impro)-34
+b(v)g(ed.)501 b(Characters)292 b(de\014ned)g(in)f Fu(font-latex-)4400
+71200 y(match-simple-exclude-list)450 b FC(do)441 b(not)g(receiv)-34
+b(e)439 b(an)-34 b(y)441 b(fon)-34 b(ti\014cation.)650
+b(In)441 b(Do)34 b(cT)42645 71461 y(E)43318 71200 y(X)441
+b(mo)34 b(de,)449 b(the)p eop end
+%%Page: 105 110
+TeXDict begin 105 109 bop 2000 -1550 a FC(App)34 b(endix)405
+b(A:)e(Cop)-34 b(ying,)405 b(Changes,)g(Dev)-34 b(elopmen)g(t,)404
+b(F)-135 b(A)-34 b(Q,)405 b(T)-101 b(exinfo)404 b(Mo)34
+b(de)10519 b(105)4400 3985 y(c)-34 b(haracter)493 b(`)p
+Fu(_)p FC(')g(is)h(remo)-34 b(v)g(ed)493 b(from)h Fu
+(font-latex-match-simple-exclude-list)506 b FC(in)493
+b(order)h(to)4400 5446 y(fon)-34 b(tify)405 b(macros)f(lik)-34
+b(e)403 b(`)p Fu(\\__module_foo:nnn)p FC(')410 b(correctly)-101
+b(.)2994 7517 y FA(\017)800 b FC(F)-101 b(on)-34 b(ti\014cation)489
+b(of)e(math)g(en)-34 b(vironmen)g(ts)488 b(has)g(b)34
+b(een)486 b(impro)-34 b(v)g(ed.)787 b(Optional)488 b(and/or)f
+(mandatory)4400 8978 y(argumen)-34 b(t\(s\))406 b(to)f(en)-34
+b(vironmen)g(ts)405 b(are)e(not)i(fon)-34 b(ti\014ed.)2994
+11049 y FA(\017)800 b Fu(preview.sty)559 b FC(loads)c
+Fu(luatex85.sty)j FC(if)d(p)34 b(ossible)555 b(and)g(should)h(b)34
+b(e)554 b(compatible)h(with)h(new)-34 b(er)4400 12510
+y(luaT)6689 12771 y(E)7363 12510 y(X)404 b(v)-34 b(ersions.)2994
+14580 y FA(\017)800 b FC(A)-34 b(UCT)7732 14841 y(E)8407
+14580 y(X)606 b(has)h(a)f(new)h(customize)f(option)h
+Fu(TeX-ispell-verb-delimiters)p FC(.)1154 b(This)607
+b(string)4400 16042 y(con)-34 b(tains)481 b(usual)g(c)-34
+b(haracters)480 b(used)h(as)f(delimiters)f(for)h(in-line)g(v)-34
+b(erbatim)480 b(macros)g(lik)-34 b(e)479 b(`)p Fu(\\verb)p
+FC('.)4400 17503 y(T)-101 b(ext)475 b(b)34 b(et)-34 b(w)g(een)476
+b(delimiters)e(after)h(an)g(in-line)g(v)-34 b(erbatim)475
+b(macro)f(will)h(b)34 b(e)474 b(skipp)34 b(ed)475 b(during)h(sp)34
+b(ell)4400 18964 y(c)-34 b(hec)g(king.)2994 21034 y FA(\017)800
+b FC(F)-101 b(on)-34 b(ti\014cation)338 b(of)e(in-line)f(v)-34
+b(erbatim)337 b(macros)e(has)i(b)34 b(een)335 b(impro)-34
+b(v)g(ed.)517 b Fu(font-latex.el)340 b FC(recognizes)4400
+22496 y(an)570 b(optional)h(or)f(a)g(mandatory)h(argumen)-34
+b(t)571 b(for)g(macros)e(lik)-34 b(e)570 b(`)p Fu(\\Verb)p
+FC(')h(from)f Fu(fancyvrb.sty)p FC(,)4400 23957 y(`)p
+Fu(\\mint)p FC(')405 b(and)g(`)p Fu(\\mintinline)p FC(')j(from)c
+Fu(minted.sty)j FC(and)e(fon)-34 b(ti\014es)406 b(v)-34
+b(erbatim)404 b(con)-34 b(ten)g(t)406 b(correctly)-101
+b(.)2994 26027 y FA(\017)800 b FC(A)-34 b(UCT)7732 26288
+y(E)8407 26027 y(X)508 b(can)g(put)h(and)g(parse)f(lab)34
+b(els)507 b(in)h(optional)h(argumen)-34 b(t)509 b(of)f(en)-34
+b(vironmen)g(ts.)852 b(Inserting)4400 27489 y(lab)34
+b(els)361 b(is)g(done)h(b)-34 b(y)363 b(new)f(function)h
+Fu(LaTeX-env-label-as-keyval)p FC(.)533 b(A)361 b(new)i(customize)e
+(option)4400 28950 y Fu(LaTeX-listing-label)333 b FC(is)327
+b(a)-34 b(v)-67 b(ailable)326 b(as)h(pre\014x)f(to)h(lab)34
+b(els)326 b(in)h(co)34 b(de)326 b(t)-34 b(yp)34 b(esetting)328
+b(en)-34 b(vironmen)g(ts,)4400 30411 y(e.g.)651 b(`)p
+Fu(lstlisting)p FC(')656 b(en)-34 b(vironmen)g(t)653
+b(pro)-34 b(vided)652 b(b)-34 b(y)653 b(`)p Fu(listings)p
+FC(')h(pac)-34 b(k)-67 b(age.)1283 b Fu(LaTeX-listing-)4400
+31872 y(label)498 b FC(defaults)g(to)e Fu(lst:)p FC(.)817
+b(P)-34 b(arsing)497 b(of)g(lab)34 b(els)495 b(for)i(later)f
+(referencing)f(relies)h(on)g(t)-34 b(w)g(o)498 b(require-)4400
+33333 y(men)-34 b(ts:)5057 35404 y(1.)800 b(Lab)34 b(el)403
+b(should)i(come)f(as)g(last)g(k)-34 b(ey-v)-67 b(alue)403
+b(argumen)-34 b(t,)405 b(and)5057 37475 y(2.)800 b(lab)34
+b(el)403 b(m)-34 b(ust)406 b(b)34 b(e)404 b(enclosed)f(in)i(braces,)e
+(e.g.)10000 39545 y Fu(\\begin{lstlisting}[caption=Some)647
+b(Caption,label={lst:foo}])10000 41006 y(...)10000 42467
+y(\\end{lstlisting})2994 44538 y FA(\017)800 b FC(The)449
+b(function)h Fu(LaTeX-label)i FC(no)-34 b(w)450 b(tak)-34
+b(es)449 b(a)f(second)h(optional)g(argumen)-34 b(t)450
+b Fu(NO-INSERT)p FC(.)675 b(When)4400 45999 y(non-)p
+Fu(nil)p FC(,)442 b Fu(LaTeX-label)436 b FC(reads)d(a)g(lab)34
+b(el)432 b(and)h(returns)g(it)g(as)g(a)g(string.)624
+b(This)434 b(argumen)-34 b(t)434 b(is)e(also)4400 47460
+y(passed)405 b(to)f(an)-34 b(y)405 b(function)g(b)34
+b(ound)406 b(to)e Fu(LaTeX-label-function)411 b FC(\(see)404
+b(next)h(item\).)2994 49531 y FA(\017)800 b Fp(Incompatible)515
+b(c)-34 b(hange:)761 b FC(The)515 b(signature)g(for)f(the)h(function)h
+(passed)g(with)f(the)g(customize)f(op-)4400 50992 y(tion)400
+b Fu(LaTeX-label-function)407 b FC(has)400 b(c)-34 b(hanged.)538
+b(The)400 b(function)h(b)34 b(ound)401 b(to)f(this)g(v)-67
+b(ariable)398 b(is)i(no)-34 b(w)4400 52453 y(exp)34 b(ected)555
+b(to)h(tak)-34 b(e)555 b(an)h(optional)g(second)g(argumen)-34
+b(t)556 b Fu(NO-INSERT)p FC(.)996 b(When)556 b(this)g(argumen)-34
+b(t)556 b(is)4400 53915 y(non-)p Fu(nil)p FC(,)382 b(the)374
+b(function)i(should)f(read)f(and)h(only)f(return)g(a)g(lab)34
+b(el)374 b(as)g(a)g(string;)384 b(insertion)375 b(is)e(done)4400
+55376 y(b)-34 b(y)405 b(another)f(function.)2994 57446
+y FA(\017)800 b FC(Directory)4875 b(lo)34 b(cal)4875
+b(v)-67 b(ariables)4875 b(w)-34 b(ere)4876 b(ine\013ectiv)-34
+b(e)4876 b(for)4400 58908 y Fu(japanese-latex-mode)551
+b FC(and)546 b Fu(japanese-plain-tex-mode)p FC(.)968
+b(This)546 b(bug)f(w)-34 b(as)546 b(\014xed.)960 b(\(This)4400
+60369 y(w)-34 b(as)405 b(actually)f(done)g(in)h(A)-34
+b(UCT)18985 60630 y(E)19659 60369 y(X)404 b(11.90,)g(but)h(not)g(adv)
+-34 b(ertised\))2994 62439 y FA(\017)800 b FC(The)391
+b(output)i(of)f(Japanese)f(text)g(from)g(Japanese)g(T)28499
+62700 y(E)29173 62439 y(X)g(engines)g(is)g(deco)34 b(ded)391
+b(correctly)e(for)i(most)4400 63900 y(cases,)410 b(according)g(to)g
+(the)g(enco)34 b(ding)410 b(of)g(the)g(T)26073 64161
+y(E)26747 63900 y(X)f(do)34 b(cumen)-34 b(ts)411 b(and)g(the)f(lo)34
+b(cale.)554 b(The)410 b(di\013erence)4400 65362 y(b)34
+b(et)-34 b(w)g(een)584 b(MS)e(Windo)-34 b(ws,)629 b(macOS)582
+b(and)h(unix-lik)-34 b(e)582 b(OS)h(is)f(tak)-34 b(en)583
+b(in)-34 b(to)584 b(accoun)-34 b(t.)1075 b(\(This)583
+b(w)-34 b(as)4400 66823 y(actually)404 b(done)g(in)h(A)-34
+b(UCT)16655 67084 y(E)17329 66823 y(X)404 b(11.90,)g(but)h(not)g(adv)
+-34 b(ertised\))2994 68893 y FA(\017)800 b FC(Quite)404
+b(a)g(few)h(new)f(L)13779 68736 y Fv(a)14340 68893 y
+FC(T)15013 69154 y(E)15687 68893 y(X)g(pac)-34 b(k)-67
+b(ages)404 b(are)f(supp)34 b(orted.)2994 70964 y FA(\017)800
+b FC(As)404 b(usual,)h(man)-34 b(y)404 b(bugs)h(w)-34
+b(ere)404 b(\014xed.)p eop end
+%%Page: 106 111
+TeXDict begin 106 110 bop 2000 -1550 a FC(App)34 b(endix)405
+b(A:)e(Cop)-34 b(ying,)405 b(Changes,)g(Dev)-34 b(elopmen)g(t,)404
+b(F)-135 b(A)-34 b(Q,)405 b(T)-101 b(exinfo)404 b(Mo)34
+b(de)10519 b(106)2000 3985 y FB(News)599 b(in)f(11.90)2994
+6110 y FA(\017)800 b FC(In)338 b(addition)i(to)e(the)h(completion)f(p)
+34 b(erformed)338 b(b)-34 b(y)339 b Fu(TeX-complete-symbol)p
+FC(,)358 b(A)-34 b(UCT)43592 6371 y(E)44266 6110 y(X)339
+b(no)-34 b(w)339 b(also)4400 7572 y(supp)34 b(orts)284
+b(the)f(new)g(Emacs)f(standard)j(completion-at-p)34 b(oin)-34
+b(t)284 b(facilit)-34 b(y)282 b(\(see)h(the)g(Emacs)f(command)4400
+9033 y Fu(completion-at-point)p FC(\).)704 b(This)457
+b(also)g(means)g(that)h(mo)34 b(dern)456 b(completion)h(UIs)g(lik)-34
+b(e)456 b Fo(c)-62 b(omp)g(any-)4400 10494 y(mo)g(de)593
+b FC(w)-34 b(ork)503 b(out)h(of)g(the)f(b)34 b(o)-34
+b(x)503 b(in)h(T)21314 10755 y(E)21987 10494 y(X)f(and)h(L)26177
+10337 y Fv(a)26738 10494 y FC(T)27411 10755 y(E)28085
+10494 y(X)f(bu\013ers.)836 b(See)503 b(Section)g(2.6)g([Completion],)
+4400 11955 y(page)404 b(31,)g(for)g(details.)2994 13682
+y FA(\017)800 b FC(Completion)342 b(is)e(no)-34 b(w)342
+b(a)-34 b(w)g(are)341 b(of)g(b)34 b(eing)341 b(inside)g(a)f(math)i(en)
+-34 b(vironmen)g(t)341 b(and)h(then)f(completes)g(math)4400
+15143 y(macros.)2994 16870 y FA(\017)800 b FC(A)-34 b(UCT)7732
+17131 y(E)8407 16870 y(X)314 b(is)g(able)g(to)g(displa)-34
+b(y)315 b(sev)-34 b(eral)313 b(lev)-34 b(els)313 b(of)h(sup)34
+b(er-)315 b(and)g(subscripts,)332 b(eac)-34 b(h)315 b(one)f(raised)g
+(ab)34 b(o)-34 b(v)g(e)4400 18331 y(and)392 b(a)f(bit)g(smaller)f(than)
+j(its)e(basis.)534 b(F)-101 b(or)391 b(this)h(feature,)h(ha)-34
+b(v)g(e)392 b(a)f(lo)34 b(ok)390 b(at)i(the)f(customize)g(options)4400
+19792 y Fu(font-latex-fontify-script)300 b FC(\(esp)34
+b(ecially)289 b(the)i(new)g(v)-67 b(alues)290 b Fu(multi-level)295
+b FC(and)c Fu(invisible)p FC(\))4400 21254 y(and)445
+b Fu(font-latex-fontify-script-max-level)p FC(.)670 b(Also,)454
+b(the)444 b(script)g(c)-34 b(haracters)444 b(`)p Fu(^)p
+FC(')g(and)g(`)p Fu(_)p FC(')4400 22715 y(are)402 b(also)g(fon)-34
+b(ti\014ed)404 b(with)f(a)g(sp)34 b(ecial)401 b(face)h(named)h
+Fu(font-latex-script-char-face)p FC(.)548 b(See)402 b(Sec-)4400
+24176 y(tion)j(3.1.3)e([F)-101 b(on)-34 b(ti\014cation)406
+b(of)e(math],)h(page)f(45,)g(for)g(details.)2994 25903
+y FA(\017)800 b FC(P)-34 b(arsing)553 b(of)h(format)f(sp)34
+b(eci\014cation)553 b(in)g(v)-67 b(arious)553 b(tabular)g(en)-34
+b(vironmen)g(ts)554 b(has)g(b)34 b(een)553 b(impro)-34
+b(v)g(ed.)4400 27364 y(The)549 b(function)h Fu(LaTeX-insert-item)555
+b FC(\()p Fs(C-c)405 b(LFD)p FC(\))550 b(inserts)f(suitable)g(n)-34
+b(um)g(b)34 b(er)549 b(of)g(amp)34 b(ersands)4400 28825
+y(for)431 b(`)p Fu(*{num}{cols})p FC(')j(constructs.)618
+b(St)-34 b(yle)431 b(\014les)f(for)h(L)29098 28668 y
+Fv(a)29659 28825 y FC(T)30332 29086 y(E)31005 28825 y(X)g(pac)-34
+b(k)-67 b(ages)430 b(`)p Fu(tabularx)p FC(',)439 b(`)p
+Fu(tabulary)p FC(',)4400 30286 y(`)p Fu(longtable)p FC(',)426
+b(`)p Fu(dcolumn)p FC(')421 b(and)g(`)p Fu(siunitx)p
+FC(')h(are)d(adapted)i(to)f(tak)-34 b(e)420 b(adv)-67
+b(an)-34 b(tage)420 b(of)h(this)f(impro)-34 b(v)g(e-)4400
+31748 y(men)g(t.)2994 33474 y FA(\017)800 b FC(A)-34
+b(UCT)7732 33735 y(E)8407 33474 y(X)560 b(has)h(a)f(new)h(Isp)34
+b(ell)560 b(dictionary)g Fu(tex-ispell.el)565 b FC(for)560
+b(macros)h(and)g(en)-34 b(vironmen)g(ts)4400 34936 y(whic)g(h)321
+b(will)f(b)34 b(e)319 b(skipp)34 b(ed)320 b(during)h(sp)34
+b(ell)320 b(c)-34 b(hec)g(king.)510 b(The)321 b(activiation)e(of)i
+(this)g(feature)f(is)g(con)-34 b(trolled)4400 36397 y(b)g(y)589
+b(a)f(new)h(customize)f(option)h Fu(TeX-ispell-extend-skip-list)p
+FC(,)643 b(whic)-34 b(h)590 b(is)e(set)g(to)h Fu(t)f
+FC(and)4400 37858 y(activ)-67 b(ated)404 b(b)-34 b(y)404
+b(default.)2994 39585 y FA(\017)800 b FC(A)-34 b(UCT)7732
+39846 y(E)8407 39585 y(X)508 b(has)h(a)g(new)g(customize)f(option)i
+Fu(TeX-raise-frame-function)517 b FC(that)510 b(is)e(curren)-34
+b(tly)4400 41046 y(only)404 b(used)h(b)-34 b(y)404 b(Evince)f(and)i(A)
+-34 b(tril)404 b(in)-34 b(v)g(erse)404 b(searc)-34 b(h)404
+b(to)h(raise)e(the)i(Emacs)f(frame.)2994 42773 y FA(\017)800
+b FC(When)350 b(inserting)f(a)g(new)h(\015oat,)361 b(A)-34
+b(UCT)22597 43034 y(E)23271 42773 y(X)350 b(will)e(no)-34
+b(w)351 b(prompt)f(for)f(a)h(short-caption)g(if)g(the)f(length)4400
+44234 y(of)395 b(the)h(caption)f(pro)-34 b(vided)396
+b(is)e(greater)h(than)h(a)f(certain)f(size.)535 b(This)395
+b(size)f(is)h(con)-34 b(trolled)395 b(via)g(a)f(new)4400
+45695 y(user)404 b(option)h Fu(LaTeX-short-caption-prompt-length)p
+FC(.)2994 47422 y FA(\017)800 b FC(P)-34 b(arsing)296
+b(of)g(the)g(compilation)g(log)g(has)g(b)34 b(een)296
+b(rew)-34 b(ork)g(ed.)502 b(Y)-101 b(ou)296 b(should)h(encoun)-34
+b(ter)296 b(few)-34 b(er)296 b(mistak)-34 b(en)4400 48883
+y(\014les)404 b(while)g(na)-34 b(vigating)405 b(through)g(errors)f(and)
+h(w)-34 b(arnings.)2994 50610 y FA(\017)800 b FC(Tw)-34
+b(o)333 b(new)g(user)f(options,)348 b Fu(TeX-ignore-warnings)339
+b FC(and)333 b Fu(TeX-suppress-ignored-warnings)p FC(,)4400
+52071 y(allo)-34 b(w)461 b(ignoring)f(certain)g(w)-34
+b(arnings)462 b(after)e(compilation)h(of)f(the)h(do)34
+b(cumen)-34 b(t.)709 b(See)460 b(Section)g(4.3.1)4400
+53533 y([Ignoring)404 b(w)-34 b(arnings],)405 b(page)f(65,)g(for)g
+(details.)2994 55259 y FA(\017)800 b FC(A)291 b(new)h(option,)315
+b Fu(TeX-PDF-from-DVI)p FC(,)k(con)-34 b(trols)292 b(if)f(and)i(ho)-34
+b(w)292 b(to)g(pro)34 b(duce)291 b(a)h Fr(PDF)f FC(\014le)g(b)-34
+b(y)292 b(con)-34 b(v)g(ert-)4400 56721 y(ing)462 b(a)g
+Fr(D)-31 b(VI)462 b FC(\014le.)711 b(This)463 b(sup)34
+b(ersedes)462 b Fu(TeX-PDF-via-dvips-ps2pdf)470 b FC(whic)-34
+b(h)463 b(is)e(still)h(recognized)4400 58182 y(but)405
+b(mark)-34 b(ed)404 b(as)h(obsolete)f(and)h(ma)-34 b(y)404
+b(b)34 b(e)404 b(remo)-34 b(v)g(ed)404 b(in)g(future)h(releases.)2994
+59909 y FA(\017)800 b FC(Supp)34 b(ort)406 b(for)e(a)g(n)-34
+b(um)g(b)34 b(er)405 b(of)f(external)g(view)-34 b(ers)404
+b(has)g(b)34 b(een)404 b(added:)5394 61636 y FA(\017)800
+b FC(A)-34 b(tril)404 b(view)-34 b(er.)538 b(F)-101 b(orw)-34
+b(ard)405 b(and)g(in)-34 b(v)g(erse)404 b(searc)-34 b(h)404
+b(requires)f(v)-34 b(ersion)404 b(1.9.1)f(or)h(later)g(to)g(w)-34
+b(ork.)5394 63362 y FA(\017)800 b FC(dviout)691 b(view)-34
+b(er)690 b(on)h(Windo)-34 b(ws.)1400 b(Note)691 b(that)h(this)f(setup)g
+(w)-34 b(orks)692 b(when)f Fu(TeX-source-)6800 64824
+y(correlate-method)410 b FC(is)404 b(set)g(to)g(use)h(`)p
+Fu(source-specials)p FC(')j(for)d Fr(D)-31 b(VI)p FC(,)403
+b(e.g.:)10000 66550 y Fu(\(setq)638 b(TeX-source-correlate-method)13818
+68012 y('\(\(dvi)h(.)d(source-specials\))15091 69473
+y(\(pdf)i(.)e(synctex\)\)\))6800 71200 y FC(whic)-34
+b(h)405 b(is)f(the)g(default.)p eop end
+%%Page: 107 112
+TeXDict begin 107 111 bop 2000 -1550 a FC(App)34 b(endix)405
+b(A:)e(Cop)-34 b(ying,)405 b(Changes,)g(Dev)-34 b(elopmen)g(t,)404
+b(F)-135 b(A)-34 b(Q,)405 b(T)-101 b(exinfo)404 b(Mo)34
+b(de)10519 b(107)5394 3985 y FA(\017)800 b FC(SumatraPDF)405
+b(view)-34 b(er)404 b(on)g(Windo)-34 b(ws.)5394 5773
+y FA(\017)800 b FC(Zath)-34 b(ura)448 b(view)-34 b(er.)665
+b(F)-101 b(orw)-34 b(ard)447 b(and)g(in)-34 b(v)g(erse)447
+b(searc)-34 b(h)446 b(requires)g(a)g(recen)-34 b(t)447
+b(v)-34 b(ersion)446 b(of)h(the)g(pro-)6800 7234 y(gram)404
+b(to)h(w)-34 b(ork)404 b(\(3.4)g(or)g(later\).)2994 9022
+y FA(\017)800 b FC(A)272 b(new)g(function,)299 b Fu
+(TeX-documentation-texdoc)p FC(,)307 b(for)272 b(reading)f(do)34
+b(cumen)-34 b(tation)274 b(with)e(`)p Fu(texdoc)p FC(')4400
+10484 y(has)470 b(b)34 b(een)470 b(added.)736 b Fu(TeX-doc)472
+b FC(is)e(still)f(a)-34 b(v)-67 b(ailable)469 b(but)h(no)-34
+b(w)471 b Fs(C-c)405 b(?)470 b FC(runs)h Fu(TeX-documentation-)4400
+11945 y(texdoc)p FC(.)2994 13733 y FA(\017)800 b FC(A)-34
+b(UCT)7732 13994 y(E)8407 13733 y(X)818 b(has)g(a)g(new)g(custom)h
+(option)f Fu(LaTeX-reftex-cite-format-auto-activate)4400
+15194 y FC(whic)-34 b(h)405 b(con)-34 b(trols)405 b(the)g(automatic)h
+(activ)-67 b(ation)404 b(of)h(citation)f(formats)i(pro)-34
+b(vided)405 b(b)-34 b(y)404 b(RefT)45251 15455 y(E)45926
+15194 y(X)g(when)4400 16655 y(a)522 b(st)-34 b(yle)521
+b(\014le)h(is)f(loaded)h(and)g(RefT)20791 16916 y(E)21465
+16655 y(X)g(is)f(enabled.)892 b(Curren)-34 b(tly)-101
+b(,)551 b Fu(biblatex.el)p FC(,)k Fu(harvard.el)p FC(,)4400
+18116 y Fu(jurabib.el)502 b FC(and)e Fu(natbib.el)i FC(use)d(this)g
+(feature.)823 b(If)498 b(y)-34 b(ou)499 b(ha)-34 b(v)g(e)500
+b(customized)f Fu(reftex-cite-)4400 19578 y(format)406
+b FC(and)f(w)-34 b(an)g(t)406 b(to)f(use)f(y)-34 b(our)404
+b(settings,)h(y)-34 b(ou)404 b(should)h(set)g(this)f(v)-67
+b(ariable)403 b(to)i Fu(nil)p FC(.)2994 21366 y FA(\017)800
+b FC(A)-34 b(UCT)7732 21627 y(E)8407 21366 y(X)336 b(no)-34
+b(w)338 b(has)g(limited)e(supp)34 b(ort)338 b(for)f(the)g(TikZ)f(pac)
+-34 b(k)-67 b(age.)516 b(F)-101 b(or)336 b(the)i(momen)-34
+b(t,)351 b(this)337 b(includes)4400 22827 y(some)404
+b(basic)g(supp)34 b(ort)405 b(for)g(prompting)g(the)f(user)g(of)h
+(argumen)-34 b(ts)405 b(to)g(the)f(`)p Fu(\\draw)p FC(')i(macro.)2994
+24615 y FA(\017)800 b FC(The)668 b(st)-34 b(yle)667 b
+Fu(graphicx.el)k FC(w)-34 b(en)g(t)669 b(through)g(a)e(bigger)g(o)-34
+b(v)g(erhaul.)1329 b(The)668 b(optional)g(argumen)-34
+b(t)4400 26076 y(of)688 b(command)h(`)p Fu(\\includegraphics)p
+FC(')k(no)-34 b(w)690 b(supp)34 b(orts)689 b(k)-34 b(ey-v)-67
+b(al)687 b(query;)829 b(k)-34 b(eys)687 b(can)i(indep)34
+b(en-)4400 27537 y(den)-34 b(tly)801 b(b)34 b(e)800 b(c)-34
+b(hosen)801 b(an)-34 b(ytime)801 b(b)-34 b(y)800 b(pressing)h(the)g
+Fu(,)f FC(k)-34 b(ey)-101 b(.)1727 b(As)800 b(a)h(side)f(e\013ect,)898
+b(the)801 b(v)-67 b(ari-)4400 28998 y(able)704 b Fu
+(LaTeX-includegraphics-options-alist)716 b FC(is)704
+b(no)-34 b(w)705 b(no-op)f(and)h(is)f(remo)-34 b(v)g(ed)704
+b(from)4400 30460 y Fu(tex-style.el)p FC(.)1075 b(Y)-101
+b(ou)582 b(can)g(safely)g(remo)-34 b(v)g(e)581 b(an)-34
+b(y)582 b(customization)g(of)g(it)g(from)g(y)-34 b(our)582
+b(init)f(\014le.)4400 31921 y(The)502 b(mandatory)h(argumen)-34
+b(t)503 b(of)f(`)p Fu(\\includegraphics)p FC(')507 b(kno)-34
+b(ws)503 b(ab)34 b(out)503 b(image)e(\014le)h(extensions)4400
+33382 y(supp)34 b(orted)405 b(b)-34 b(y)405 b(the)f(used)h(engine)f
+(and)h(o\013ers)f(them)g(for)h(inclusion.)2994 35170
+y FA(\017)800 b FC(Supp)34 b(ort)317 b(for)e(other)h(L)14163
+35013 y Fv(a)14724 35170 y FC(T)15397 35431 y(E)16071
+35170 y(X)f(pac)-34 b(k)-67 b(ages)315 b(w)-34 b(as)317
+b(impro)-34 b(v)g(ed,)333 b(and)316 b(st)-34 b(yle)316
+b(\014les)f(for)h(sev)-34 b(eral)314 b(new)i(pac)-34
+b(k)-67 b(ages)4400 36631 y(w)-34 b(ere)404 b(added.)2994
+38419 y FA(\017)800 b FC(Man)-34 b(y)405 b(bugs)g(w)-34
+b(ere)404 b(crushed)g(along)h(the)f(w)-34 b(a)g(y)-101
+b(.)2000 41619 y FB(News)599 b(in)f(11.89)2994 43744
+y FA(\017)800 b FC(Y)-101 b(ou)559 b(can)f(no)-34 b(w)559
+b(run)g(all)e(commands)i(needed)f(to)h(compile)e(a)h(do)34
+b(cumen)-34 b(t)559 b(and)g(then)g(op)34 b(en)558 b(the)4400
+45206 y(view)-34 b(er)403 b(with)i(a)f(single)g(command:)539
+b Fu(TeX-command-run-all)p FC(,)411 b(b)34 b(ound)405
+b(to)g Fs(C-c)g(C-a)p FC(.)2994 46994 y FA(\017)800 b
+FC(Commands)449 b(suc)-34 b(h)447 b(as)g(`)p Fu(LaTeX)p
+FC(')h(and)g(`)p Fu(View)p FC(')g(can)f(no)-34 b(w)448
+b(b)34 b(e)446 b(executed)h(con)-34 b(v)g(enien)g(tly)447
+b(on)h(the)f(cur-)4400 48455 y(ren)-34 b(t)612 b(section)g(\(or)g
+(part,)663 b(c)-34 b(hapter,)664 b(subsection,)g(etc\).)1162
+b(See)611 b Fu(LaTeX-command-section)619 b FC(and)4400
+49916 y Fu(LaTeX-command-section-change-level)p FC(.)1152
+b(See)604 b(Section)h(4.1.1)f([Starting)h(a)g(Command],)4400
+51377 y(page)404 b(52,)g(for)g(details.)2994 53165 y
+FA(\017)800 b FC(F)-101 b(orw)-34 b(ard)490 b(and)g(bac)-34
+b(kw)g(ard)490 b(searc)-34 b(h)489 b(with)h(Evince)e(no)-34
+b(w)490 b(also)f(w)-34 b(ork)490 b(when)f(only)g(a)g(region)g(of)g(the)
+4400 54627 y(do)34 b(cumen)-34 b(t)405 b(is)f(compiled/view)-34
+b(ed.)2994 56415 y FA(\017)800 b FC(T)-101 b(o)406 b(op)34
+b(en)405 b(the)h(PDF)f(output)i(\014le)e(y)-34 b(ou)406
+b(can)f(no)-34 b(w)406 b(use)f(also)h(PDF)f(T)-101 b(o)34
+b(ols,)405 b(a)g(do)34 b(cumen)-34 b(t)406 b(view)-34
+b(er)405 b(for)4400 57876 y(Emacs.)538 b(With)405 b(it,)e(as)i(a)f
+(plus,)g(forw)-34 b(ard)405 b(and)g(bac)-34 b(kw)g(ard)406
+b(searc)-34 b(h)404 b(is)f(accurate)h(at)h(w)-34 b(ord)405
+b(lev)-34 b(el.)2994 59664 y FA(\017)800 b FC(With)399
+b(new)f(option)i Fu(TeX-PDF-via-dvips-ps2pdf)407 b FC(it)398
+b(is)g(p)34 b(ossible)398 b(to)h(compile)f(a)g(do)34
+b(cumen)-34 b(t)400 b(to)4400 61125 y Fr(D)-31 b(VI)404
+b FC(and)h(then)g(con)-34 b(v)g(ert)404 b(it)g(to)h Fr(PDF)e
+FC(using)i Fu(dvips)p FC({)p Fu(ps2pdf)j FC(b)34 b(efore)404
+b(viewing)g(it.)2994 62913 y FA(\017)800 b FC(New)508
+b(option)g Fu(TeX-file-line-error)514 b FC(allo)-34 b(ws)508
+b(to)g(select)f(\014le:line:error)e(st)-34 b(yle)508
+b(for)g(error)e(mes-)4400 64374 y(sages.)2994 66162 y
+FA(\017)800 b FC(Inden)-34 b(t)405 b(`)p Fu(\\[...\\])p
+FC(')h(math)f(mo)34 b(de)404 b(as)h(a)f(regular)f(en)-34
+b(vironmen)g(t)405 b(b)-34 b(y)405 b(default.)2994 67950
+y FA(\017)800 b FC(No)-34 b(w)405 b(A)-34 b(UCT)10493
+68211 y(E)11168 67950 y(X)404 b(suggests)h(to)f(run)h
+Fu(makeindex)i FC(when)e(appropriate.)2994 69738 y FA(\017)800
+b Fu(TeX-view-program-list)333 b FC(can)325 b(con)-34
+b(tain,)341 b(as)326 b(third)f(optional)h(elemen)-34
+b(t)325 b(of)h(eac)-34 b(h)325 b(item,)340 b(the)326
+b(name)4400 71200 y(of)404 b(the)h(executable\(s\))g(needed)f(to)g(op)
+34 b(en)405 b(the)f(view)-34 b(er.)p eop end
+%%Page: 108 113
+TeXDict begin 108 112 bop 2000 -1550 a FC(App)34 b(endix)405
+b(A:)e(Cop)-34 b(ying,)405 b(Changes,)g(Dev)-34 b(elopmen)g(t,)404
+b(F)-135 b(A)-34 b(Q,)405 b(T)-101 b(exinfo)404 b(Mo)34
+b(de)10519 b(108)2994 3985 y FA(\017)800 b Fu(TeX-expand-list)611
+b FC(v)-67 b(ariable)605 b(has)h(b)34 b(een)606 b(split)g(in)-34
+b(to)606 b Fu(TeX-expand-list)611 b FC(and)c Fu(TeX-expand-)4400
+5446 y(list-builtin)p FC(.)718 b(Only)463 b(the)g(former)f(is)g(in)-34
+b(tended)464 b(to)g(b)34 b(e)462 b(customized)h(b)-34
+b(y)463 b(the)g(user,)477 b(the)463 b(latter)4400 6907
+y(con)-34 b(tains)489 b(built-in)f(expanders.)790 b(Y)-101
+b(ou)489 b(migh)-34 b(t)488 b(w)-34 b(an)g(t)490 b(to)e(k)-34
+b(eep)488 b(in)g Fu(TeX-expand-list)493 b FC(only)487
+b(new)4400 8369 y(expansion)405 b(strings.)2994 10103
+y FA(\017)800 b FC(Before)452 b(running)j(commands)f(lik)-34
+b(e)452 b(T)21798 10364 y(E)22472 10103 y(X)h(and)h(L)26562
+9946 y Fv(a)27123 10103 y FC(T)27796 10364 y(E)28470
+10103 y(X,)465 b(no)-34 b(w)454 b(A)-34 b(UCT)36087 10364
+y(E)36762 10103 y(X)453 b(p)34 b(erforms)453 b(some)g(c)-34
+b(hec)g(ks.)4400 11564 y(If)345 b Fu(TeX-check-TeX)350
+b FC(is)344 b(non-nil,)357 b(it)345 b(will)g(test)g(whether)h(a)f(w)-34
+b(orking)345 b(T)36153 11825 y(E)36827 11564 y(X)g(distribution)i(is)d
+(actually)4400 13025 y(presen)-34 b(t)293 b(in)g(the)g(system)g(and)g
+(a)-34 b(v)-67 b(ailable)292 b(to)h(Emacs.)501 b(Instead,)315
+b(when)294 b Fu(TeX-check-engine)k FC(is)292 b(non-)4400
+14486 y(nil,)491 b(b)34 b(efore)474 b(running)h(L)15192
+14329 y Fv(a)15753 14486 y FC(T)16426 14747 y(E)17100
+14486 y(X)f(commands)h(A)-34 b(UCT)27885 14747 y(E)28560
+14486 y(X)474 b(will)f(c)-34 b(hec)g(k)474 b(whether)h(the)g(correct)e
+(engine)4400 15948 y(has)405 b(b)34 b(een)404 b(set,)g(based)g(up)34
+b(on)405 b(kno)-34 b(wn)406 b(restrictions)d(p)34 b(osed)405
+b(b)-34 b(y)404 b(L)33624 15791 y Fv(a)34185 15948 y
+FC(T)34858 16209 y(E)35532 15948 y(X)g(pac)-34 b(k)-67
+b(ages.)2994 17682 y FA(\017)800 b FC(Basic)454 b(supp)34
+b(ort)456 b(to)g(ConT)16572 17943 y(E)17247 17682 y(Xt)f(Mark)g(IV)f
+(has)i(b)34 b(een)455 b(added.)692 b(Users)455 b(can)g(no)-34
+b(w)456 b(select)f(the)g(Mark)4400 19143 y(v)-34 b(ersion)450
+b(to)g(b)34 b(e)449 b(used)i(with)f(new)h(option)f Fu
+(ConTeXt-Mark-version)p FC(,)468 b(and)451 b(A)-34 b(UCT)43020
+19404 y(E)43695 19143 y(X)449 b(is)h(able)g(to)4400 20604
+y(catc)-34 b(h)405 b(error)e(messages)h(in)g(the)g(output)j(log)c(of)i
+(a)f(Mark)g(IV)g(do)34 b(cumen)-34 b(t.)2994 22338 y
+FA(\017)800 b FC(Supp)34 b(ort)406 b(for)e(tons)h(of)f(L)15274
+22181 y Fv(a)15835 22338 y FC(T)16508 22599 y(E)17182
+22338 y(X)g(pac)-34 b(k)-67 b(ages)404 b(has)g(b)34 b(een)404
+b(added.)2994 24073 y FA(\017)800 b FC(Num)-34 b(b)34
+b(ers)405 b(of)f(bugs)h(ha)-34 b(v)g(e)405 b(b)34 b(een)404
+b(\014xed,)g(man)-34 b(y)404 b(minor)g(features)h(ha)-34
+b(v)g(e)405 b(b)34 b(een)404 b(added.)2000 27165 y FB(News)599
+b(in)f(11.88)2994 29290 y FA(\017)800 b Fu(TeX-PDF-mode)408
+b FC(is)c(no)-34 b(w)405 b(enabled)g(b)-34 b(y)404 b(default.)2994
+31024 y FA(\017)800 b FC(No)-34 b(w)434 b Fu(TeX-previous-error)440
+b FC(w)-34 b(orks)433 b(with)h(T)26014 31285 y(E)26688
+31024 y(X)f(commands)h(if)f(the)h(new)f(option)h Fu(TeX-parse-)4400
+32486 y(all-errors)424 b FC(is)c(non-nil,)k(whic)-34
+b(h)421 b(is)f(the)h(default.)588 b(When)420 b(this)h(option)g(is)f
+(non-nil,)425 b(an)c(o)-34 b(v)g(erview)4400 33947 y(of)516
+b(errors)e(and)i(w)-34 b(arnings)517 b(rep)34 b(orted)515
+b(b)-34 b(y)515 b(the)h(T)26794 34208 y(E)27468 33947
+y(X)f(compiler)f(can)i(b)34 b(e)515 b(op)34 b(ened)515
+b(with)h Fs(M-x)406 b(TeX-)4400 35408 y(error-overview)j(RET)p
+FC(.)540 b(See)403 b(Section)i(4.3)f([Debugging],)g(page)g(64,)g(for)g
+(details.)2994 37142 y FA(\017)800 b FC(St)-34 b(yle)909
+b(\014le)g(authors)h(are)e(encouraged)h(to)g(distinguish)i(common)e
+(from)g(exp)34 b(ert)908 b(macros)4400 38603 y(and)785
+b(en)-34 b(vironmen)g(ts,)880 b(and)785 b(mark)f(the)g(latter)g(using)h
+Fu(TeX-declare-expert-macros)793 b FC(and)4400 40065
+y Fu(LaTeX-declare-expert-environments)p FC(.)4400 41799
+y(Users)404 b(can)g(then)h(restrict)f(completion)g(using)h
+Fu(TeX-complete-expert-commands)p FC(.)2994 43533 y FA(\017)800
+b FC(Managemen)-34 b(t)483 b(of)f(L)13463 43376 y Fv(a)14024
+43533 y FC(T)14697 43794 y(E)15370 43533 y(X)g(pac)-34
+b(k)-67 b(age)481 b(options)i(in)e(the)h(parser)g(w)-34
+b(as)482 b(impro)-34 b(v)g(ed.)771 b(Y)-101 b(ou)482
+b(migh)-34 b(t)483 b(need)4400 44994 y(to)387 b(reparse)f(y)-34
+b(our)387 b(do)34 b(cumen)-34 b(ts,)391 b(esp)34 b(ecially)385
+b(if)i(y)-34 b(ou)387 b(loaded)g(the)h(`)p Fu(babel)p
+FC(')f(pac)-34 b(k)-67 b(age)387 b(with)h(language)4400
+46455 y(options.)2994 48190 y FA(\017)800 b FC(No)-34
+b(w)463 b(y)-34 b(ou)462 b(can)g(insert)f(`)p Fu($...$)p
+FC(')i(or)f(`)p Fu(\\\(...\\\))p FC(')h(b)-34 b(y)462
+b(t)-34 b(yping)463 b(a)f(single)f Ft($)p FC(.)711 b(T)-101
+b(o)463 b(do)f(this,)476 b(customize)4400 49651 y(the)326
+b(new)g(option)g(`)p Fu(TeX-electric-math)p FC('.)518
+b Fu(TeX-math-close-double-dollar)335 b FC(w)-34 b(as)326
+b(remo)-34 b(v)g(ed.)4400 51112 y(See)404 b(Section)g(2.1)g([Quotes],)g
+(page)g(20,)g(for)g(details.)2994 52846 y FA(\017)800
+b Fs(C-c)405 b(RET)g(documentclass)k(RET)284 b FC(completes)e(with)i
+(all)e(a)-34 b(v)-67 b(ailable)282 b(L)34755 52689 y
+Fv(a)35316 52846 y FC(T)35989 53107 y(E)36663 52846 y(X)h(classes,)306
+b(if)283 b(the)g Fu(TeX-arg-)4400 54307 y(input-file-search)446
+b FC(v)-67 b(ariable)438 b(is)i(non-nil.)646 b(Completion)441
+b(for)f(class)f(options)i(of)f(the)g(standard)4400 55769
+y(L)4722 55612 y Fv(a)5283 55769 y FC(T)5956 56030 y(E)6630
+55769 y(X)404 b(classes)f(is)h(pro)-34 b(vided)405 b(as)f(w)-34
+b(ell.)2994 57503 y FA(\017)800 b FC(New)1148 b(user)f(options)i
+Fu(LaTeX-default-author)p FC(,)1340 b Fu
+(LaTeX-fontspec-arg-font-search)p FC(,)4400 58964 y Fu
+(LaTeX-fontspec-font-list-default)p FC(,)557 b Fu(TeX-date-format)p
+FC(,)552 b(and)519 b Fu(TeX-insert-braces-)4400 60425
+y(alist)p FC(.)1216 b(A)630 b(new)f(p)34 b(ossible)630
+b(v)-67 b(alue)628 b(\()p Fu(show-all-optional-args)p
+FC(\))638 b(for)630 b Fu(TeX-insert-macro-)4400 61886
+y(default-style)422 b FC(w)-34 b(as)418 b(added.)579
+b(The)418 b(default)g(v)-67 b(alue)417 b(of)h Fu
+(TeX-source-correlate-method)426 b FC(has)4400 63348
+y(b)34 b(een)404 b(c)-34 b(hanged.)2994 65082 y FA(\017)800
+b FC(`)p Fu(biblatex)p FC(')533 b(supp)34 b(ort)532 b(w)-34
+b(as)531 b(greatly)f(expanded.)919 b(If)531 b(parsing)g(is)g(enabled,)
+562 b(A)-34 b(UCT)43577 65343 y(E)44252 65082 y(X)531
+b(lo)34 b(oks)530 b(at)4400 66543 y(`)p Fu(backend)p
+FC(')486 b(option)g(to)f(decide)f(whether)h(to)g(use)f(Bib)34
+b(er)483 b(or)i(BibT)35184 66804 y(E)35857 66543 y(X.)780
+b(The)485 b Fu(LaTeX-biblatex-)4400 68004 y(use-Biber)407
+b FC(v)-67 b(ariable)403 b(w)-34 b(as)405 b(c)-34 b(hanged)405
+b(to)g(b)34 b(e)404 b(\014le)f(lo)34 b(cal)403 b(only)h(and)h(is)f(no)h
+(more)e(customizable.)2994 69738 y FA(\017)800 b FC(With)468
+b(some)g(L)11018 69581 y Fv(a)11579 69738 y FC(T)12252
+69999 y(E)12925 69738 y(X)g(classes,)483 b(the)468 b(default)h(en)-34
+b(vironmen)g(t)469 b(suggested)g(b)-34 b(y)468 b Fu(LaTeX-environment)
+4400 71200 y FC(\()p Fs(C-c)406 b(C-e)p FC(\))497 b(when)f(the)g
+(curren)-34 b(t)496 b(en)-34 b(vironmen)g(t)497 b(is)e(`)p
+Fu(document)p FC(')j(w)-34 b(as)496 b(c)-34 b(hanged.)815
+b(With)495 b(`)p Fu(beamer)p FC(')p eop end
+%%Page: 109 114
+TeXDict begin 109 113 bop 2000 -1550 a FC(App)34 b(endix)405
+b(A:)e(Cop)-34 b(ying,)405 b(Changes,)g(Dev)-34 b(elopmen)g(t,)404
+b(F)-135 b(A)-34 b(Q,)405 b(T)-101 b(exinfo)404 b(Mo)34
+b(de)10519 b(109)4400 3985 y(class)406 b(the)g(default)h(en)-34
+b(vironmen)g(t)407 b(is)e(`)p Fu(frame)p FC(',)j(with)e(`)p
+Fu(letter)p FC(')i(it)e(is)f(`)p Fu(letter)p FC(',)j(with)f(`)p
+Fu(slides)p FC(')g(it)4400 5446 y(is)d(`)p Fu(slide)p
+FC('.)2994 7216 y FA(\017)800 b FC(Brace)355 b(pairing)i(feature)g(w)
+-34 b(as)357 b(enhanced)h(in)e(L)25110 7059 y Fv(a)25671
+7216 y FC(T)26344 7477 y(E)27018 7216 y(X)h(do)34 b(cumen)-34
+b(ts.)523 b(Supp)34 b(ort)358 b(for)f(`)p Fu(\\bigl)p
+FC(',)367 b(`)p Fu(\\Bigl)p FC(',)4400 8677 y(`)p Fu(\\biggl)p
+FC(')506 b(and)g(`)p Fu(\\Biggl)p FC(',)531 b(the)506
+b(same)f(as)g(the)g(one)g(for)g(`)p Fu(\\left)p FC(',)531
+b(w)-34 b(as)506 b(added)g(to)f Fu(TeX-insert-)4400 10139
+y(macro)p FC(.)540 b(F)-101 b(or)404 b(example,)f Fs(C-c)j(RET)f(bigl)g
+(RET)g(\()g(RET)g FC(inserts)f(`)p Fu(\\bigl\(\\bigr\))p
+FC('.)4400 11908 y(Y)-101 b(ou)348 b(can)f(insert)g(brace)f(pair)h(`)p
+Fu(\(\))p FC(',)358 b(`)p Fu({})p FC(')347 b(and)h(`)p
+Fu([])p FC(')f(b)-34 b(y)348 b(t)-34 b(yping)348 b(a)f(single)f(left)h
+(brace)g(if)g(the)h(new)f(user)4400 13370 y(option)405
+b Fu(LaTeX-electric-left-right-brace)415 b FC(is)404
+b(enabled.)4400 15140 y(Macros)460 b(`)p Fu(\\langle)p
+FC(',)475 b(`)p Fu(\\lfloor)p FC(')462 b(and)f(`)p Fu(\\lceil)p
+FC(',)475 b(whic)-34 b(h)460 b(pro)34 b(duce)460 b(the)h(left)f(part)g
+(of)h(the)f(paired)4400 16601 y(braces,)373 b(are)366
+b(treated)g(similarly)f(as)i(`)p Fu(\()p FC(',)373 b(`)p
+Fu({)p FC(')366 b(and)h(`)p Fu([)p FC(')f(during)g(the)h(course)f(of)h
+Fu(TeX-insert-macro)p FC(.)4400 18062 y(See)404 b(Section)g(2.1)g
+([Quotes],)g(page)g(20,)g(for)g(details.)2994 19832 y
+FA(\017)800 b FC(Supp)34 b(ort)406 b(for)e(dozens)g(of)h(L)16554
+19675 y Fv(a)17115 19832 y FC(T)17788 20093 y(E)18461
+19832 y(X)f(pac)-34 b(k)-67 b(ages)404 b(w)-34 b(as)405
+b(added.)2994 21602 y FA(\017)800 b FC(T)-101 b(abular-lik)-34
+b(e)594 b(en)-34 b(vironmen)g(ts)595 b(\(`)p Fu(tabular)p
+FC(',)644 b(`)p Fu(tabular*)p FC(',)g(`)p Fu(tabularx)p
+FC(',)f(`)p Fu(tabulary)p FC(',)h(`)p Fu(array)p FC(',)4400
+23063 y(`)p Fu(align)p FC(',)383 b(...\))529 b(are)376
+b(inden)-34 b(ted)378 b(in)e(a)h(nicer)e(and)j(more)e(informativ)-34
+b(e)376 b(w)-34 b(a)g(y)378 b(when)f(the)g(column)g(v)-67
+b(alues)4400 24524 y(of)404 b(a)h(table)f(line)f(are)h(written)h
+(across)f(m)-34 b(ultiple)404 b(lines)g(in)g(the)h(tex)e(\014le.)2994
+26294 y FA(\017)800 b FC(The)288 b(suitable)f(n)-34 b(um)g(b)34
+b(er)288 b(of)g(amp)34 b(ersands)288 b(are)f(inserted)g(when)h(y)-34
+b(ou)288 b(insert)f(`)p Fu(array)p FC(',)311 b(`)p Fu(tabular)p
+FC(')289 b(and)4400 27755 y(`)p Fu(tabular*)p FC(')330
+b(en)-34 b(vironmen)g(ts)329 b(with)g Fs(C-c)405 b(C-e)p
+FC(.)515 b(Similar)327 b(exp)34 b(erience)326 b(is)i(obtained)h(if)f(y)
+-34 b(ou)329 b(terminate)4400 29216 y(ro)-34 b(ws)375
+b(in)g(these)g(en)-34 b(vironmen)g(ts)376 b(with)f Fs(C-c)405
+b(LFD)p FC(.)530 b(It)375 b(supplies)g(line)f(break)g(macro)h(`)p
+Fu(\\\\)p FC(')f(and)i(inserts)4400 30678 y(the)405 b(suitable)f(n)-34
+b(um)g(b)34 b(er)405 b(of)g(amp)34 b(ersands)405 b(on)f(the)h(next)f
+(line.)4400 32447 y(Similar)f(supp)34 b(orts)406 b(are)d(pro)-34
+b(vided)405 b(for)f(v)-67 b(arious)404 b(`)p Fu(amsmath)p
+FC(')i(en)-34 b(vironmen)g(ts.)4400 34217 y(See)404 b(Section)g(2.4.4)g
+([T)-101 b(abular-lik)-34 b(e],)403 b(page)h(29,)g(for)g(details.)2994
+35987 y FA(\017)800 b FC(Commands)471 b(for)e(narro)-34
+b(wing)470 b(to)f(a)g(group)h(\()p Fu(TeX-narrow-to-group)p
+FC(\))477 b(and)470 b(to)f(L)42401 35830 y Fv(a)42962
+35987 y FC(T)43635 36248 y(E)44309 35987 y(X)g(en)-34
+b(viron-)4400 37448 y(men)g(ts)405 b(\()p Fu
+(LaTeX-narrow-to-environment)p FC(\))415 b(w)-34 b(ere)404
+b(added.)2994 39218 y FA(\017)800 b FC(No)-34 b(w)378
+b(arbitrary)e(options)i(can)g(b)34 b(e)376 b(passed)i(to)f(the)h(T)
+28321 39479 y(E)28995 39218 y(X)f(pro)34 b(cessor)376
+b(on)h(a)g(p)34 b(er)377 b(\014le)g(basis)g(using)g(the)4400
+40680 y Fu(TeX-command-extra-options)444 b FC(option.)634
+b(See)435 b(Section)g(4.1.3)g([Pro)34 b(cessor)434 b(Options],)444
+b(page)435 b(57,)4400 42141 y(for)404 b(details.)2994
+43911 y FA(\017)800 b FC(No)-34 b(w)277 b Fs(C-c)406
+b(C-e)f(document)i(RET)p FC(,)302 b(in)277 b(an)g(empt)-34
+b(y)277 b(do)34 b(cumen)-34 b(t,)303 b(prompts)278 b(for)e(`)p
+Fu(\\usepackage)p FC(')k(macros)4400 45372 y(in)404 b(addition)h(to)g
+(`)p Fu(\\documentclass)p FC('.)2994 47142 y FA(\017)800
+b Fu(TeX-add-style-hook)581 b FC(has)575 b(no)-34 b(w)575
+b(a)f(third)h(argumen)-34 b(t)576 b(to)f(tell)e(A)-34
+b(UCT)38676 47403 y(E)39351 47142 y(X)575 b(for)f(whic)-34
+b(h)575 b(dialect)4400 48603 y(\(L)5193 48446 y Fv(a)5754
+48603 y FC(T)6427 48864 y(E)7101 48603 y(X,)388 b(T)-101
+b(exinfo)384 b(or)g(BibT)17065 48864 y(E)17739 48603
+y(X\))g(the)h(st)-34 b(yle)384 b(ho)34 b(ok)384 b(is)g(registers.)531
+b(Lab)34 b(elling)383 b(st)-34 b(yle)384 b(ho)34 b(ok)384
+b(b)-34 b(y)384 b(dialect)4400 50064 y(will)404 b(a)-34
+b(v)g(oid)404 b(applying)h(them)f(not)h(in)f(the)h(righ)-34
+b(t)405 b(con)-34 b(text.)2994 51834 y FA(\017)800 b
+FC(There)404 b(ha)-34 b(v)g(e)405 b(b)34 b(een)404 b(lots)g(of)g(bug)h
+(\014xes)f(and)h(feature)g(additions.)2000 54997 y FB(News)599
+b(in)f(11.87)2994 57123 y FA(\017)800 b FC(A)-34 b(UCT)7732
+57384 y(E)8407 57123 y(X)404 b(no)-34 b(w)405 b(supp)34
+b(orts)405 b(Bib)34 b(er)403 b(in)h(conjunction)i(with)f(biblatex)f(in)
+g(addition)h(to)g(BibT)46171 57384 y(E)46844 57123 y(X.)2994
+58893 y FA(\017)800 b FC(Eac)-34 b(h)473 b(A)-34 b(UCT)10814
+59154 y(E)11489 58893 y(X)472 b(mo)34 b(de)473 b(no)-34
+b(w)474 b(has)f(its)f(o)-34 b(wn)474 b(abbrev)f(table.)744
+b(On)473 b(Emacsen)f(whic)-34 b(h)474 b(pro)-34 b(vide)472
+b(the)4400 60354 y(p)34 b(ossibilit)-34 b(y)314 b(to)g(inherit)f
+(abbrevs)h(from)g(other)g(tables,)332 b(the)314 b(abbrevs)g(from)f(the)
+i(T)-101 b(ext)313 b(mo)34 b(de)314 b(abbrev)4400 61815
+y(table)537 b(are)g(a)-34 b(v)-67 b(ailable)536 b(as)h(w)-34
+b(ell.)938 b(Newly)537 b(de\014ned)h(abbrevs)f(are)g(written)g(to)h
+(the)g(mo)34 b(de-sp)g(eci\014c)4400 63276 y(tables,)404
+b(though.)2994 65046 y FA(\017)800 b FC(The)405 b(\014le)e(`)p
+Fu(tex-fptex.el)p FC(')408 b(w)-34 b(as)405 b(remo)-34
+b(v)g(ed.)2994 66816 y FA(\017)800 b FC(F)-101 b(orw)-34
+b(ard/bac)g(kw)g(ard)495 b(searc)-34 b(h)494 b(for)f(Evince)f(has)i(b)
+34 b(een)493 b(impro)-34 b(v)g(ed.)807 b(If)493 b(Emacs)g(is)g
+(compiled)g(with)4400 68277 y(DBUS)416 b(supp)34 b(ort)418
+b(and)f(a)g(recen)-34 b(t)416 b(Evince)g(v)-34 b(ersion)416
+b(\(3.x\))h(is)f(installed,)k(the)d(comm)-34 b(unication)417
+b(go)34 b(es)4400 69738 y(o)-34 b(v)g(er)270 b(the)g(desktop)g(bus)h
+(instead)f(of)g(the)h(command)f(line,)296 b(resulting)270
+b(in)g(more)f(accurate)g(p)34 b(ositioning)4400 71200
+y(of)404 b(p)34 b(oin)-34 b(t)405 b(in)g(Emacs)f(and)g(highligh)-34
+b(ting)406 b(of)e(the)h(target)f(paragraph)h(in)f(Evince.)p
+eop end
+%%Page: 110 115
+TeXDict begin 110 114 bop 2000 -1550 a FC(App)34 b(endix)405
+b(A:)e(Cop)-34 b(ying,)405 b(Changes,)g(Dev)-34 b(elopmen)g(t,)404
+b(F)-135 b(A)-34 b(Q,)405 b(T)-101 b(exinfo)404 b(Mo)34
+b(de)10519 b(110)2994 3985 y FA(\017)800 b FC(A)582 b(problem)h(where)f
+(Ghostscript)i(threw)f(an)g(`)p Fu(/invalidfileaccess)p
+FC(')588 b(error)582 b(when)h(running)4400 5446 y Fw(p)-34
+b(review-latex)403 b FC(w)-34 b(as)405 b(\014xed.)2994
+7214 y FA(\017)800 b FC(A)404 b(lot)g(of)h(smaller)e(\014xes)h(and)h
+(additions)g(ha)-34 b(v)g(e)405 b(b)34 b(een)404 b(made.)2000
+10374 y FB(News)599 b(in)f(11.86)2994 12499 y FA(\017)800
+b FC(P)-34 b(arsing)516 b(of)h(L)10697 12342 y Fv(a)11258
+12499 y FC(T)11931 12760 y(E)12604 12499 y(X)f(output)i(w)-34
+b(as)517 b(impro)-34 b(v)g(ed.)875 b(It)516 b(is)g(no)-34
+b(w)517 b(less)f(lik)-34 b(ely)515 b(that)i(A)-34 b(UCT)43775
+12760 y(E)44449 12499 y(X)517 b(op)34 b(ens)516 b(a)4400
+13960 y(non-existen)-34 b(t)566 b(\014le)e(up)34 b(on)565
+b(calling)f Fu(TeX-next-error)p FC(;)649 b(a)564 b(problem)h(for)f
+(example)g(encoun)-34 b(tered)4400 15422 y(when)507 b(using)h(MiKT)
+14006 15682 y(E)14679 15422 y(X)e(2.8.)846 b(In)506 b(addition)i
+(quoted)f(\014le)f(names)h(as)g(emitted)g(b)-34 b(y)507
+b(MiKT)46292 15682 y(E)46965 15422 y(X)f(are)4400 16883
+y(no)-34 b(w)405 b(supp)34 b(orted.)2994 18651 y FA(\017)800
+b FC(A)439 b(new)f(framew)-34 b(ork)439 b(for)g(the)g(de\014nition)g
+(and)h(selection)e(of)g(view)-34 b(ers)438 b(w)-34 b(as)440
+b(implemen)-34 b(ted.)642 b(If)438 b(y)-34 b(ou)4400
+20112 y(ha)g(v)g(e)285 b(customizations)h(regarding)e(view)-34
+b(ers)285 b(y)-34 b(ou)285 b(will)f(ha)-34 b(v)g(e)285
+b(to)g(redo)g(them)g(in)g(this)g(new)h(framew)-34 b(ork)4400
+21573 y(or)404 b(reenable)f(the)i(old)f(one.)539 b(See)404
+b(Section)g(4.2.1)g([Starting)h(View)-34 b(ers],)403
+b(page)h(60,)g(for)g(details.)2994 23341 y FA(\017)800
+b FC(Comprehensiv)-34 b(e)405 b(editing)f(supp)34 b(ort)405
+b(for)f(PST)-101 b(ric)-34 b(ks)405 b(w)-34 b(as)405
+b(added.)2994 25109 y FA(\017)800 b FC(Supp)34 b(ort)370
+b(for)f(v)-67 b(arious)368 b(L)15306 24952 y Fv(a)15867
+25109 y FC(T)16540 25370 y(E)17214 25109 y(X)h(pac)-34
+b(k)-67 b(ages)369 b(w)-34 b(as)369 b(added,)377 b(e.g.)368
+b(`)p Fu(tabularx)p FC(',)377 b(`)p Fu(CJK)p FC(',)f(and)370
+b(`)p Fu(hyperref)p FC('.)2994 26877 y FA(\017)800 b
+FC(An)377 b(easy)e(w)-34 b(a)g(y)377 b(to)g(switc)-34
+b(h)377 b(b)34 b(et)-34 b(w)g(een)377 b(T)21922 27138
+y(E)22596 26877 y(X)f(engines)g(\(PDFT)31788 27138 y(E)32462
+26877 y(X,)382 b(LuaT)36800 27138 y(E)37473 26877 y(X,)g(XeT)41222
+27138 y(E)41895 26877 y(X,)g(Omega\))376 b(w)-34 b(as)4400
+28338 y(added.)2994 30106 y FA(\017)800 b FC(Supp)34
+b(ort)480 b(for)f(SyncT)14286 30367 y(E)14960 30106 y(X)g(w)-34
+b(as)479 b(added.)763 b(This)479 b(in)-34 b(v)g(olv)g(es)479
+b(the)g(command)h(line)e(options)i(for)e(L)47183 29949
+y Fv(a)47744 30106 y FC(T)48417 30367 y(E)49091 30106
+y(X)4400 31567 y(and)405 b(the)f(view)-34 b(er.)2994
+33335 y FA(\017)800 b FC(F)-101 b(olding)405 b(can)f(no)-34
+b(w)405 b(b)34 b(e)404 b(customized)g(to)h(use)f(macro)g(argumen)-34
+b(ts)405 b(as)f(replacemen)-34 b(t)404 b(text.)2994 35103
+y FA(\017)800 b FC(`)p Fu(preview.sty)p FC(')407 b(no)-34
+b(w)406 b(w)-34 b(orks)404 b(with)h(XeT)23329 35364 y(E)24003
+35103 y(X.)2994 36871 y FA(\017)800 b FC(A)404 b(lot)g(of)h(smaller)e
+(and)i(larger)e(bugs)i(ha)-34 b(v)g(e)405 b(b)34 b(een)404
+b(squashed.)2000 40031 y FB(News)599 b(in)f(11.85)2994
+42156 y FA(\017)800 b FC(F)-101 b(on)-34 b(t)521 b(lo)34
+b(c)-34 b(king)519 b(has)h(b)34 b(een)520 b(impro)-34
+b(v)g(ed)520 b(signi\014can)-34 b(tly)-101 b(.)886 b(It)520
+b(is)g(no)-34 b(w)520 b(less)g(prone)g(to)g(color)f(bleeding)4400
+43617 y(whic)-34 b(h)352 b(could)e(lead)h(to)g(high)g(resource)f
+(usage.)521 b(In)351 b(addition)g(it)g(no)-34 b(w)352
+b(includes)e(information)i(ab)34 b(out)4400 45079 y(L)4722
+44922 y Fv(a)5283 45079 y FC(T)5956 45340 y(E)6630 45079
+y(X)404 b(macro)f(syn)-34 b(tax)405 b(and)g(can)f(indicate)h(syn)-34
+b(tactically)403 b(incorrect)h(macros)f(in)i(L)42575
+44922 y Fv(a)43136 45079 y FC(T)43809 45340 y(E)44482
+45079 y(X)f(mo)34 b(de.)2994 46847 y FA(\017)800 b FC(The)405
+b(license)e(w)-34 b(as)405 b(up)34 b(dated)405 b(to)g(GPLv3.)2994
+48615 y FA(\017)800 b FC(Supp)34 b(ort)458 b(for)f(the)h(nomencl,)470
+b(\015ashcards)458 b(and)f(commen)-34 b(t)458 b(L)32031
+48458 y Fv(a)32592 48615 y FC(T)33265 48875 y(E)33939
+48615 y(X)f(pac)-34 b(k)-67 b(ages)457 b(as)g(w)-34 b(ell)456
+b(as)h(the)h(Ice-)4400 50076 y(landic)404 b(language)h(option)g(of)f
+(bab)34 b(el)404 b(w)-34 b(ere)404 b(added.)2994 51844
+y FA(\017)800 b FC(Supp)34 b(ort)406 b(for)e(folding)g(of)h(math)g
+(macros)f(w)-34 b(as)405 b(added.)2994 53612 y FA(\017)800
+b FC(Lots)404 b(of)h(minor)f(bugs)h(in)f(features)g(and)h(do)34
+b(cumen)-34 b(tation)406 b(\014xed.)2000 56771 y FB(News)599
+b(in)f(11.84)2994 58897 y FA(\017)800 b FC(There)376
+b(ha)-34 b(v)g(e)376 b(b)34 b(een)376 b(problems)g(with)h(the)f
+Fu(-without-texmf-dir)382 b FC(option)377 b(to)g(`)p
+Fu(configure)p FC(')h(when)4400 60358 y(the)551 b(v)-67
+b(alue)550 b(of)g Fu(-with-kpathsea-sep)557 b FC(w)-34
+b(as)552 b(set)e(or)h(determined)f(for)h(an)g(installation)g(system)
+4400 61819 y(with)558 b(a)f(default)i(di\013eren)-34
+b(t)557 b(from)h(that)g(of)g(the)f(run)-34 b(time)558
+b(system.)998 b Fu(with-kpathsea-sep)563 b FC(has)4400
+63280 y(b)34 b(een)404 b(remo)-34 b(v)g(ed;)404 b(the)g(setting)h(is)f
+(no)-34 b(w)405 b(usually)f(determined)h(at)f(run)-34
+b(time.)4400 65048 y(Due)481 b(to)h(this)f(and)h(other)g(problems,)500
+b Fw(p)-34 b(review-latex)480 b FC(in)h(the)h(released)e(XEmacs)h(pac)
+-34 b(k)-67 b(age)481 b(failed)4400 66509 y(under)405
+b(Windo)-34 b(ws)405 b(or)f(with)h(an)-34 b(ything)405
+b(except)f(recen)-34 b(t)404 b(21.5)g(XEmacsen.)2994
+68277 y FA(\017)800 b FC(A)-34 b(UCT)7732 68538 y(E)8407
+68277 y(X)553 b(and)h Fw(p)-34 b(review-latex)553 b FC(ha)-34
+b(v)g(e)553 b(b)34 b(een)553 b(c)-34 b(hanged)555 b(in)e(order)g(to)g
+(accommo)34 b(date)554 b(\014le)f(names)4400 69738 y(con)-34
+b(taining)412 b(spaces.)559 b Fw(p)-34 b(review-latex)410
+b FC(no)-34 b(w)412 b(tolerates)f(bad)h(P)-34 b(ostScript)412
+b(co)34 b(de)410 b(p)34 b(olluting)411 b(the)h(stac)-34
+b(k)4400 71200 y(\(lik)g(e)404 b(some)g(Omega)f(fon)-34
+b(ts\).)p eop end
+%%Page: 111 116
+TeXDict begin 111 115 bop 2000 -1550 a FC(App)34 b(endix)405
+b(A:)e(Cop)-34 b(ying,)405 b(Changes,)g(Dev)-34 b(elopmen)g(t,)404
+b(F)-135 b(A)-34 b(Q,)405 b(T)-101 b(exinfo)404 b(Mo)34
+b(de)10519 b(111)2994 3985 y FA(\017)800 b FC(`)p Fu(preview.sty)p
+FC(')407 b(had)e(in)f(some)g(cases)g(failed)g(to)h(emit)f(P)-34
+b(ostScript)405 b(header)f(sp)34 b(ecials.)2994 5724
+y FA(\017)800 b FC(Supp)34 b(ort)406 b(for)e(folding)g(of)h(commen)-34
+b(ts)405 b(w)-34 b(as)405 b(added.)2994 7462 y FA(\017)800
+b FC(The)484 b Fu(polish)h FC(language)f(option)g(of)f(the)h(bab)34
+b(el)483 b(L)27545 7305 y Fv(a)28106 7462 y FC(T)28779
+7723 y(E)29453 7462 y(X)g(pac)-34 b(k)-67 b(age)483 b(as)g(w)-34
+b(ell)483 b(as)g(the)h(p)34 b(olski)482 b(L)47183 7305
+y Fv(a)47744 7462 y FC(T)48417 7723 y(E)49091 7462 y(X)4400
+8923 y(pac)-34 b(k)-67 b(age)363 b(are)g(no)-34 b(w)364
+b(supp)34 b(orted.)526 b(Most)364 b(notably)g(this)f(means)h(that)g(A)
+-34 b(UCT)38805 9184 y(E)39480 8923 y(X)363 b(will)g(help)g(to)h
+(insert)4400 10384 y(quotation)405 b(marks)f(as)g(de\014ned)h(b)-34
+b(y)405 b Fu(polish.sty)i FC(\()p Fu("`..."')p FC(\))h(and)d
+Fu(polski.sty)i FC(\()p Fu(,,...'')p FC(\).)2994 12123
+y FA(\017)800 b FC(The)520 b(T)7680 12384 y(E)8353 12123
+y(X)f(to)34 b(ol)519 b(bar)g(is)g(no)-34 b(w)520 b(a)-34
+b(v)-67 b(ailable)518 b(and)i(enabled)g(b)-34 b(y)519
+b(default)h(in)f(plain)g(T)42065 12384 y(E)42739 12123
+y(X)g(mo)34 b(de.)883 b(See)4400 13584 y(Section)404
+b(1.3.2)g([Pro)34 b(cessing)403 b(F)-101 b(acilities],)403
+b(page)h(18.)2994 15323 y FA(\017)800 b FC(Bug)404 b(\014x)g(in)g(the)h
+(displa)-34 b(y)404 b(of)h(math)g(subscripts)g(and)g(sup)34
+b(erscripts.)2994 17061 y FA(\017)800 b FC(Bug)404 b(\014x)g
+Fu(TeX-doc)j FC(for)d(Emacs)g(21.)2994 18800 y FA(\017)800
+b FC(There)298 b(has)h(b)34 b(een)298 b(quite)h(a)f(n)-34
+b(um)g(b)34 b(er)299 b(of)g(other)f(bug)i(\014xes)e(to)h(v)-67
+b(arious)297 b(features)i(and)g(do)34 b(cumen)-34 b(tation)4400
+20261 y(across)404 b(the)g(b)34 b(oard.)2000 23362 y
+FB(News)599 b(in)f(11.83)2994 25487 y FA(\017)800 b FC(The)519
+b(new)g(function)g Fu(TeX-doc)i FC(pro)-34 b(vides)518
+b(easy)g(access)g(to)h(do)34 b(cumen)-34 b(tation)520
+b(ab)34 b(out)519 b(commands)4400 26948 y(and)f(pac)-34
+b(k)-67 b(ages)517 b(or)g(information)h(related)f(to)h(T)26678
+27209 y(E)27352 26948 y(X)f(and)h(friends)g(in)f(general.)878
+b(See)517 b(Section)g(4.7)4400 28409 y([Do)34 b(cumen)-34
+b(tation],)404 b(page)h(68.)2994 30148 y FA(\017)800
+b FC(Y)-101 b(ou)458 b(can)f(no)-34 b(w)458 b(get)f(rid)g(of)h
+(generated)f(in)-34 b(termediate)457 b(and)h(output)h(\014les)e(b)-34
+b(y)458 b(means)f(of)h(the)f(new)4400 31609 y(`)p Fu(Clean)p
+FC(')f(and)f(`)p Fu(Clean)406 b(All)p FC(')455 b(en)-34
+b(tries)455 b(in)g Fu(TeX-command-list)460 b FC(accessible)454
+b(with)h Fs(C-c)405 b(C-c)456 b FC(or)e(the)4400 33070
+y(Command)406 b(men)-34 b(u.)539 b(See)404 b(Section)g(4.6)g
+([Cleaning],)g(page)g(67.)2994 34809 y FA(\017)800 b
+FC(Supp)34 b(ort)402 b(for)f(forw)-34 b(ard)401 b(searc)-34
+b(h)401 b(with)h(PDF)e(\014les)h(w)-34 b(as)401 b(added.)538
+b(That)402 b(means)f(y)-34 b(ou)401 b(can)g(jump)h(to)f(a)4400
+36270 y(place)369 b(in)h(the)h(output)g(\014le)f(corresp)34
+b(onding)370 b(to)g(the)h(p)34 b(osition)370 b(in)g(the)g(source)g
+(\014le.)526 b(See)370 b(Section)g(4.2)4400 37731 y([Viewing],)403
+b(page)i(60.)4400 39470 y(Adding)361 b(supp)34 b(ort)362
+b(for)e(this)h(feature)g(required)f(the)g(default)i(v)-67
+b(alue)359 b(of)i(the)g(v)-67 b(ariable)359 b Fu(TeX-output-)4400
+40931 y(view-style)492 b FC(to)e(b)34 b(e)488 b(c)-34
+b(hanged.)794 b(Please)488 b(mak)-34 b(e)489 b(sure)f(y)-34
+b(ou)490 b(either)e(remo)-34 b(v)g(e)489 b(an)-34 b(y)489
+b(customizations)4400 42392 y(o)-34 b(v)g(erriding)430
+b(the)g(new)g(default)h(or)e(incorp)34 b(orate)429 b(the)h(c)-34
+b(hanges)431 b(in)-34 b(to)430 b(y)-34 b(our)430 b(customizations)h(if)
+e(y)-34 b(ou)4400 43853 y(w)g(an)g(t)406 b(to)e(use)h(this)f(feature.)
+2994 45592 y FA(\017)800 b FC(T)5073 45853 y(E)5747 45592
+y(X)479 b(error)g(messages)g(of)h(the)g Fu(-file-line-error)485
+b FC(kind)480 b(are)f(no)-34 b(w)480 b(understo)34 b(o)g(d)481
+b(in)e(A)-34 b(UCT)48416 45853 y(E)49091 45592 y(X)4400
+47053 y(and)405 b Fw(p)-34 b(review-latex)403 b FC(\(parsers)i(are)e
+(still)h(separate\).)2994 48791 y FA(\017)800 b FC(Bug)404
+b(\014x)g(in)g(XyMT)13406 49052 y(E)14080 48791 y(X)g(supp)34
+b(ort.)2994 50530 y FA(\017)800 b FC(The)369 b(L)7178
+50373 y Fv(a)7739 50530 y FC(T)8412 50791 y(E)9086 50530
+y(X)g(to)34 b(ol)369 b(bar)g(is)f(no)-34 b(w)370 b(enabled)g(b)-34
+b(y)369 b(default.)528 b(See)368 b(Section)h(1.3.2)g([Pro)34
+b(cessing)368 b(F)-101 b(acilities],)4400 51991 y(page)404
+b(18.)2000 55092 y FB(News)599 b(in)f(11.82)2994 57217
+y FA(\017)800 b FC(Supp)34 b(ort)406 b(for)e(the)g(MinionPro)g(L)19395
+57060 y Fv(a)19956 57217 y FC(T)20629 57478 y(E)21303
+57217 y(X)g(pac)-34 b(k)-67 b(age)404 b(w)-34 b(as)405
+b(added.)2994 58956 y FA(\017)800 b FC(W)-101 b(arnings)361
+b(and)h(underfull/o)-34 b(v)g(erfull)362 b(b)34 b(o)-34
+b(xes)361 b(are)f(no)-34 b(w)362 b(b)34 b(eing)361 b(indicated)g(in)g
+(the)g(ec)-34 b(ho)361 b(area)g(after)g(a)4400 60417
+y(L)4722 60260 y Fv(a)5283 60417 y FC(T)5956 60678 y(E)6630
+60417 y(X)383 b(run,)389 b(if)383 b(the)i(resp)34 b(ectiv)-34
+b(e)382 b(debugging)j(options)g(are)f(activ)-67 b(ated)383
+b(with)i Fu(TeX-toggle-debug-)4400 61878 y(warnings)311
+b FC(\()p Fs(C-c)406 b(C-t)f(C-w)p FC(\))310 b(or)e Fu
+(TeX-toggle-debug-bad-boxes)318 b FC(\()p Fs(C-c)406
+b(C-t)f(C-b)p FC(\).)508 b(In)308 b(this)h(case)4400
+63339 y Fu(TeX-next-error)409 b FC(will)404 b(\014nd)h(these)f(w)-34
+b(arnings)406 b(in)e(addition)h(to)f(normal)g(errors.)4400
+65078 y(The)345 b(k)-34 b(ey)344 b(binding)h Fs(C-c)405
+b(C-w)345 b FC(for)g Fu(TeX-toggle-debug-bad-boxes)353
+b FC(\(whic)-34 b(h)346 b(w)-34 b(as)345 b(renamed)g(from)4400
+66539 y Fu(TeX-toggle-debug-boxes)p FC(\))412 b(no)-34
+b(w)406 b(is)d(deprecated.)2994 68277 y FA(\017)800 b
+FC(A)-34 b(UCT)7732 68538 y(E)8407 68277 y(X)506 b(no)-34
+b(w)508 b(can)f(automatically)f(insert)h(a)f(pair)g(of)h(braces)f
+(after)h(t)-34 b(yping)508 b Fu(_)e FC(or)h Fu(^)g FC(in)f(math)4400
+69738 y(constructs)353 b(if)f(the)g(new)h(v)-67 b(ariable)351
+b Fu(TeX-electric-sub-and-superscript)363 b FC(is)352
+b(set)g(to)g(a)g(non-nil)4400 71200 y(v)-67 b(alue.)p
+eop end
+%%Page: 112 117
+TeXDict begin 112 116 bop 2000 -1550 a FC(App)34 b(endix)405
+b(A:)e(Cop)-34 b(ying,)405 b(Changes,)g(Dev)-34 b(elopmen)g(t,)404
+b(F)-135 b(A)-34 b(Q,)405 b(T)-101 b(exinfo)404 b(Mo)34
+b(de)10519 b(112)2994 3985 y FA(\017)800 b FC(Some)298
+b(language-sp)34 b(eci\014c)297 b(supp)34 b(ort)299 b(for)f(F)-101
+b(renc)-34 b(h)298 b(w)-34 b(as)298 b(added.)504 b(There)298
+b(no)-34 b(w)299 b(is)e(completion)h(supp)34 b(ort)4400
+5446 y(for)514 b(the)h(commands)g(pro)-34 b(vided)515
+b(b)-34 b(y)514 b(the)h(`)p Fu(frenchb)p FC(')h(\(and)f(`)p
+Fu(francais)p FC('\))i(options)e(of)f(the)h(bab)34 b(el)4400
+6907 y(L)4722 6750 y Fv(a)5283 6907 y FC(T)5956 7168
+y(E)6630 6907 y(X)529 b(pac)-34 b(k)-67 b(age)528 b(and)i(easier)e
+(input)i(of)g(F)-101 b(renc)-34 b(h)529 b(quotation)h(marks)f(\()p
+Fu(\\og)405 b(...\\fg)p FC(\))532 b(whic)-34 b(h)530
+b(can)4400 8369 y(no)-34 b(w)405 b(b)34 b(e)404 b(inserted)g(b)-34
+b(y)405 b(t)-34 b(yping)405 b Fu(")p FC(.)2994 10122
+y FA(\017)800 b FC(Completion)405 b(supp)34 b(ort)405
+b(for)f(options)i(of)e(some)g(L)26264 9965 y Fv(a)26825
+10122 y FC(T)27498 10383 y(E)28172 10122 y(X)g(pac)-34
+b(k)-67 b(ages)404 b(w)-34 b(as)405 b(added.)2994 11876
+y FA(\017)800 b FC(Already)547 b(in)g(v)-34 b(ersion)547
+b(11.81)h(the)f(w)-34 b(a)g(y)549 b(to)e(activ)-67 b(ate)547
+b(A)-34 b(UCT)32730 12137 y(E)33405 11876 y(X)547 b(c)-34
+b(hanged)549 b(substan)-34 b(tially)-101 b(.)969 b(This)4400
+13337 y(should)334 b(no)-34 b(w)333 b(b)34 b(e)332 b(done)h(with)h
+Fu(\(load)405 b("auctex.el")j(nil)e(t)e(t\))333 b FC(instead)g(of)g
+(the)g(former)f Fu(\(require)4400 14798 y('tex-site\))p
+FC(.)524 b(Related)352 b(to)g(this)g(c)-34 b(hange)352
+b Fu(tex-mik.el)j FC(do)34 b(es)352 b(not)g(load)g Fu(tex-site.el)j
+FC(an)-34 b(ymore.)4400 16260 y(That)426 b(means)f(if)f(y)-34
+b(ou)425 b(used)g(only)f Fu(\(require)407 b('tex-mik\))428
+b FC(in)d(order)f(to)h(activ)-67 b(ate)423 b(A)-34 b(UCT)45764
+16521 y(E)46439 16260 y(X,)429 b(y)-34 b(ou)4400 17721
+y(ha)g(v)g(e)290 b(to)f(add)h Fu(\(load)406 b("auctex.el")i(nil)d(t)f
+(t\))290 b FC(b)34 b(efore)289 b(the)g(latter)g(statemen)-34
+b(t.)502 b(See)289 b(Section)g(1.2.4)4400 19182 y([Loading)404
+b(the)h(pac)-34 b(k)-67 b(age],)403 b(page)h(7.)2994
+20936 y FA(\017)800 b FC(Handling)629 b(of)g(v)-34 b(erbatim)629
+b(constructs)g(w)-34 b(as)630 b(consolidated)f(across)f(A)-34
+b(UCT)39690 21197 y(E)40365 20936 y(X.)1212 b(This)629
+b(resulted)4400 22397 y(in)672 b(the)g Fw(font-latex)p
+FC(-sp)34 b(eci\014c)671 b(v)-67 b(ariables)670 b Fu
+(font-latex-verb-like-commands)p FC(,)749 b Fu(font-latex-)4400
+23858 y(verbatim-macros)p FC(,)922 b(and)815 b Fu
+(font-latex-verbatim-environments)825 b FC(b)34 b(eing)814
+b(remo)-34 b(v)g(ed)814 b(and)4400 25319 y(the)402 b(more)f(general)g
+(v)-67 b(ariables)400 b Fu(LaTeX-verbatim-macros-with-delims)p
+FC(,)414 b Fu(LaTeX-verbatim-)4400 26781 y(macros-with-braces)p
+FC(,)c(and)405 b Fu(LaTeX-verbatim-environments)414 b
+FC(b)34 b(eing)404 b(added.)2994 28534 y FA(\017)800
+b FC(The)319 b(output)h(of)f(a)f(BibT)15454 28795 y(E)16128
+28534 y(X)g(run)h(is)f(no)-34 b(w)320 b(c)-34 b(hec)g(k)g(ed)318
+b(for)h(w)-34 b(arnings)320 b(and)f(errors,)334 b(whic)-34
+b(h)319 b(are)f(rep)34 b(orted)4400 29995 y(in)404 b(the)h(ec)-34
+b(ho)404 b(area.)2994 31749 y FA(\017)800 b FC(The)292
+b(aliases)e(for)h Fu(font-latex-title-fontify)300 b FC(w)-34
+b(ere)290 b(remo)-34 b(v)g(ed.)501 b(Use)291 b Fu(font-latex-fontify-)
+4400 33210 y(sectioning)408 b FC(instead.)2994 34964
+y FA(\017)800 b FC(The)405 b(problem)f(that)h(Japanese)f(macros)g
+(where)g(brok)-34 b(en)405 b(across)f(lines)f(w)-34 b(as)405
+b(\014xed.)2994 36718 y FA(\017)800 b FC(V)-101 b(arious)404
+b(bug)h(\014xes.)2000 39849 y FB(News)599 b(in)f(11.81)2994
+41974 y FA(\017)800 b Fu(LaTeX-mark-section)508 b FC(no)-34
+b(w)503 b(marks)e(subsections)h(of)g(a)g(giv)-34 b(en)501
+b(section)h(as)g(w)-34 b(ell.)830 b(The)502 b(former)4400
+43436 y(b)34 b(eha)-34 b(vior)404 b(is)g(a)-34 b(v)-67
+b(ailable)403 b(via)g(the)i(pre\014x)f(argumen)-34 b(t.)2994
+45189 y FA(\017)800 b Fw(p)-34 b(review-latex)859 b FC(whic)-34
+b(h)860 b(w)-34 b(as)861 b(previously)d(a)-34 b(v)-67
+b(ailable)859 b(separately)g(b)34 b(ecame)859 b(a)g(subsystem)i(of)4400
+46650 y(A)-34 b(UCT)7732 46911 y(E)8407 46650 y(X.)918
+b(There)531 b(is)f(no)h(do)34 b(cumen)-34 b(ted)532 b(pro)-34
+b(vision)531 b(for)g(building)g(or)g(installing)g Fw(p)-34
+b(review-latex)4400 48112 y FC(separately)-101 b(.)698
+b(It)458 b(is)f(still)g(p)34 b(ossible)458 b(to)g(use)f(and)i(install)e
+(A)-34 b(UCT)33488 48373 y(E)34163 48112 y(X)458 b(without)h
+Fw(p)-34 b(review-latex)p FC(,)470 b(ho)-34 b(w-)4400
+49573 y(ev)g(er.)2994 51327 y FA(\017)800 b FC(The)420
+b(installation)g(pro)34 b(cedures)420 b(ha)-34 b(v)g(e)420
+b(b)34 b(een)419 b(o)-34 b(v)g(erhauled)420 b(and)h(no)-34
+b(w)420 b(also)g(install)f(startup)i(\014les)f(as)4400
+52788 y(part)432 b(of)f(the)h(pro)34 b(cess)431 b(\(those)h(had)g(to)g
+(b)34 b(e)431 b(copied)g(man)-34 b(ually)432 b(previously\).)620
+b(Y)-101 b(ou)431 b(are)g(advised)h(to)4400 54249 y(remo)-34
+b(v)g(e)332 b(previous)g(installations)i(of)e(A)-34 b(UCT)24610
+54510 y(E)25285 54249 y(X)333 b(and)g Fw(p)-34 b(review-latex)332
+b FC(b)34 b(efore)332 b(starting)h(the)g(installa-)4400
+55710 y(tion)410 b(pro)34 b(cedure.)552 b(A)410 b(standard)g
+(installation)g(from)f(an)h(unmo)34 b(di\014ed)410 b(tarball)f(no)g
+(longer)g(requires)4400 57171 y(Mak)-34 b(einfo)405 b(or)e(P)-34
+b(erl.)4400 58925 y(Also)569 b(note)g(that)h(the)f(w)-34
+b(a)g(y)569 b(A)-34 b(UCT)21154 59186 y(E)21829 58925
+y(X)569 b(is)f(supp)34 b(osed)570 b(to)f(b)34 b(e)568
+b(activ)-67 b(ated)569 b(c)-34 b(hanged.)1033 b(Instead)570
+b(of)4400 60386 y Fu(\(require)407 b('tex-site\))505
+b FC(y)-34 b(ou)501 b(should)h(no)-34 b(w)502 b(use)g
+Fu(\(load)406 b("auctex.el")i(nil)d(t)f(t\))p FC(.)830
+b(While)500 b(the)4400 61847 y(former)495 b(metho)34
+b(d)496 b(ma)-34 b(y)496 b(still)e(w)-34 b(ork,)519 b(the)495
+b(new)h(metho)34 b(d)496 b(has)g(the)g(adv)-67 b(an)-34
+b(tage)496 b(that)h(y)-34 b(ou)495 b(can)h(de-)4400 63309
+y(activ)-67 b(ate)550 b(a)h(preactiv)-67 b(ated)551 b(A)-34
+b(UCT)20634 63570 y(E)21308 63309 y(X)551 b(with)h(the)g(statemen)-34
+b(t)552 b Fu(\(unload-feature)409 b('tex-site\))4400
+64770 y FC(b)34 b(efore)345 b(an)-34 b(y)346 b(of)g(its)g(mo)34
+b(des)345 b(ha)-34 b(v)g(e)347 b(b)34 b(een)345 b(used.)519
+b(This)347 b(ma)-34 b(y)345 b(b)34 b(e)346 b(imp)34 b(ortan)-34
+b(t)346 b(esp)34 b(ecially)344 b(for)i(site-wide)4400
+66231 y(installations.)2994 67985 y FA(\017)800 b FC(Supp)34
+b(ort)406 b(for)e(the)g(bab)34 b(el)404 b(L)16614 67828
+y Fv(a)17175 67985 y FC(T)17848 68246 y(E)18522 67985
+y(X)g(pac)-34 b(k)-67 b(age)404 b(w)-34 b(as)405 b(added.)2994
+69738 y FA(\017)800 b FC(F)-101 b(olding)368 b(a)g(bu\013er)g(no)-34
+b(w)368 b(ensures)g(that)h(the)f(whole)g(bu\013er)g(is)f(fon)-34
+b(ti\014ed)369 b(b)34 b(efore)367 b(the)h(actual)g(folding)4400
+71200 y(is)431 b(carried)f(out.)621 b(If)431 b(this)h(results)g(in)f
+(un)-34 b(b)34 b(earably)432 b(long)f(execution)g(times,)438
+b(y)-34 b(ou)432 b(can)f(fall)g(bac)-34 b(k)432 b(to)p
+eop end
+%%Page: 113 118
+TeXDict begin 113 117 bop 2000 -1550 a FC(App)34 b(endix)405
+b(A:)e(Cop)-34 b(ying,)405 b(Changes,)g(Dev)-34 b(elopmen)g(t,)404
+b(F)-135 b(A)-34 b(Q,)405 b(T)-101 b(exinfo)404 b(Mo)34
+b(de)10519 b(113)4400 3985 y(the)402 b(old)f(b)34 b(eha)-34
+b(vior)401 b(of)g(relying)g(on)g(stealth)h(fon)-34 b(t)403
+b(lo)34 b(c)-34 b(king)400 b(to)i(do)g(this)f(job)h(in)f(the)h(bac)-34
+b(kground)403 b(b)-34 b(y)4400 5446 y(customizing)404
+b(the)h(v)-67 b(ariable)403 b Fu(TeX-fold-force-fontify)p
+FC(.)2994 7248 y FA(\017)800 b FC(F)-101 b(olded)417
+b(con)-34 b(ten)g(t)418 b(no)-34 b(w)418 b(rev)-34 b(eals)416
+b(part)h(of)g(its)f(original)g(text)h(in)g(a)f(to)34
+b(oltip)417 b(or)f(the)h(ec)-34 b(ho)417 b(area)f(when)4400
+8709 y(ho)-34 b(v)g(ering)405 b(with)f(the)h(mouse)f(p)34
+b(oin)-34 b(ter)405 b(o)-34 b(v)g(er)404 b(it.)2994 10511
+y FA(\017)800 b FC(The)1126 b(language-sp)34 b(eci\014c)1125
+b(insertion)h(of)f(quotation)i(marks)e(w)-34 b(as)1126
+b(generalized.)2701 b(The)4400 11972 y(v)-67 b(ariables)663
+b Fu(LaTeX-german-open-quote)p FC(,)737 b Fu(LaTeX-german-close-quote)p
+FC(,)g Fu(LaTeX-german-)4400 13433 y(quote-after-quote)p
+FC(,)1301 b Fu(LaTeX-italian-open-quote)p FC(,)i Fu
+(LaTeX-italian-close-quote)p FC(,)4400 14895 y(and)542
+b Fu(LaTeX-italian-quote-after-quote)551 b FC(are)540
+b(no)-34 b(w)542 b(obsolete.)949 b(If)540 b(y)-34 b(ou)541
+b(are)g(not)g(satis\014ed)4400 16356 y(with)405 b(the)g(default)g
+(settings,)f(y)-34 b(ou)405 b(should)g(customize)f Fu
+(TeX-quote-language-alist)412 b FC(instead.)2994 18158
+y FA(\017)800 b FC(Similar)428 b(to)i(language-sp)34
+b(eci\014c)429 b(quote)g(insertion,)435 b(A)-34 b(UCT)31452
+18418 y(E)32127 18158 y(X)429 b(no)-34 b(w)430 b(helps)f(y)-34
+b(ou)430 b(with)f(h)-34 b(yphens)431 b(in)4400 19619
+y(di\013eren)-34 b(t)405 b(languages)f(as)g(w)-34 b(ell.)539
+b(See)404 b(Section)g(5.4.1)g([Europ)34 b(ean],)403 b(page)h(73,)g(for)
+h(details.)2994 21421 y FA(\017)800 b FC(Fill)345 b(problems)h(in)f
+(Japanese)h(text)g(in)-34 b(tro)34 b(duced)347 b(in)e(A)-34
+b(UCT)31282 21681 y(E)31957 21421 y(X)346 b(11.55)f(w)-34
+b(ere)346 b(\014xed.)519 b(A)-34 b(UCT)45771 21681 y(E)46446
+21421 y(X)345 b(tries)4400 22882 y(not)326 b(to)g(break)g(lines)f(b)34
+b(et)-34 b(w)g(een)326 b(1-b)-34 b(yte)327 b(and)f(2-b)-34
+b(yte)326 b(c)-34 b(hars.)513 b(These)326 b(features)g(will)f(w)-34
+b(ork)326 b(in)g(Chinese)4400 24343 y(text,)404 b(to)34
+b(o.)2994 26145 y FA(\017)800 b FC(The)417 b(scaling)f(factor)h(of)g
+(the)g(fon)-34 b(ti\014cation)418 b(of)f(sectioning)g(commands)g(can)g
+(no)-34 b(w)417 b(b)34 b(e)417 b(customized)4400 27606
+y(using)562 b(the)g(v)-67 b(ariable)561 b Fu
+(font-latex-fontify-sectioning)p FC(.)1021 b(This)563
+b(v)-67 b(ariable)560 b(w)-34 b(as)563 b(previously)4400
+29067 y(called)520 b Fu(font-latex-title-fontify)p FC(;)586
+b(In)521 b(this)g(release)e(w)-34 b(e)521 b(pro)-34 b(vide)520
+b(an)h(alias)f(but)i(this)e(will)4400 30528 y(disapp)34
+b(ear)274 b(in)h(one)f(of)h(the)f(the)h(next)g(releases.)494
+b(The)274 b(faces)g(for)h(the)f(sectioning)h(commands)g(are)f(no)-34
+b(w)4400 31989 y(called)389 b Fu(font-latex-sectioning-)p
+Fs(N)p Fu(-face)400 b FC(\()p Ft(N)131 b FC(=0)73 b(.)295
+b(.)f(.)146 b(5\))391 b(instead)g(of)f Fu(font-latex-title-)p
+Fs(N)p Fu(-)4400 33451 y(face)f FC(\()p Ft(N)131 b FC(=1)73
+b(.)295 b(.)e(.)147 b(4\).)533 b(Analogously)388 b(the)g(names)g(of)g
+(the)g(v)-67 b(ariables)386 b(holding)i(the)g(related)g(k)-34
+b(eyw)g(ord)4400 34912 y(lists)351 b(w)-34 b(ere)352
+b(c)-34 b(hanged)352 b(from)g Fu(font-latex-title-)p
+Fs(N)p Fu(-keywords)361 b FC(to)352 b Fu(font-latex-sectioning-)4400
+36373 y Fs(N)p Fu(-keywords)p FC(.)557 b(See)408 b(Section)i(3.1)e([F)
+-101 b(on)-34 b(t)410 b(Lo)34 b(c)-34 b(king],)409 b(page)g(40,)h(for)f
+(details.)553 b(Mak)-34 b(e)409 b(sure)g(to)g(adjust)4400
+37834 y(y)-34 b(our)404 b(customizations.)2994 39636
+y FA(\017)800 b FC(Titles)351 b(in)h(b)34 b(eamer)351
+b(slides)g(mark)-34 b(ed)351 b(b)-34 b(y)352 b(the)g(\\)p
+Fu(\\)p FC(frametitle")g(command)g(are)f(kno)-34 b(w)352
+b(displa)-34 b(y)g(ed)352 b(with)4400 41097 y(the)429
+b(new)g(face)g Fu(font-latex-slide-title-face)p FC(.)621
+b(Y)-101 b(ou)429 b(can)g(add)g(macros)f(to)h(b)34 b(e)429
+b(highligh)-34 b(ted)4400 42558 y(with)405 b(this)g(face)f(to)g
+Fu(font-latex-match-slide-title-keywords)p FC(.)2994
+44360 y FA(\017)800 b FC(Of)404 b(course)g(a)g(lot)g(of)h(bugs)g(ha)-34
+b(v)g(e)404 b(b)34 b(een)404 b(\014xed.)2000 47596 y
+FB(News)599 b(in)f(11.55)2994 49721 y FA(\017)800 b FC(A)500
+b(bug)g(w)-34 b(as)501 b(\014xed)f(whic)-34 b(h)500 b(lead)g(to)g(the)g
+(insertion)g(of)g(trailing)f(whitespace)h(during)h(\014lling.)825
+b(In)4400 51182 y(particular)486 b(extra)f(spaces)i(w)-34
+b(ere)485 b(added)i(to)g(sen)-34 b(tence)486 b(endings)h(at)f(the)h
+(end)f(of)h(lines.)783 b(Y)-101 b(ou)487 b(can)4400 52644
+y(mak)-34 b(e)380 b(this)h(whitespace)g(visible)e(b)-34
+b(y)381 b(setting)g(the)g(v)-67 b(ariable)379 b Fu
+(show-trailing-whitespace)388 b FC(to)381 b Fu(t)p FC(.)4400
+54105 y(If)456 b(y)-34 b(ou)456 b(w)-34 b(an)g(t)458
+b(to)e(delete)g(all)f(trailing)g(whitespace)i(in)f(a)f(bu\013er,)469
+b(t)-34 b(yp)34 b(e)456 b Fs(M-x)405 b(delete-trailing-)4400
+55566 y(whitespace)j(RET)p FC(.)2994 57368 y FA(\017)800
+b FC(A)515 b(bug)g(w)-34 b(as)516 b(\014xed)f(whic)-34
+b(h)516 b(lead)e(to)h(a)g(`)p Fu(*Compile-Log*)p FC(')k(bu\013er)c(p)34
+b(opping)516 b(up)f(when)h(the)f(\014rst)4400 58829 y(L)4722
+58672 y Fv(a)5283 58829 y FC(T)5956 59090 y(E)6630 58829
+y(X)404 b(\014le)g(w)-34 b(as)405 b(loaded)f(in)g(an)h(Emacs)f
+(session.)2994 60631 y FA(\017)800 b FC(On)765 b(some)f(systems)h(the)h
+(presence)e(of)h(an)g(outdated)h(Emacsp)34 b(eak)764
+b(pac)-34 b(k)-67 b(age)765 b(lead)f(to)h(the)4400 62092
+y(error)622 b(message)i(`)p Fu(File)405 b(mode)g(specification)k
+(error:)d(\(error)g("Variable)i(binding)e(depth)4400
+63553 y(exceeds)h(max-specpdl-size"\))p FC('.)520 b(Precautions)332
+b(w)-34 b(ere)331 b(added)i(whic)-34 b(h)333 b(prev)-34
+b(en)g(t)332 b(this)g(error)f(from)4400 65014 y(happ)34
+b(ening.)533 b(But)383 b(nev)-34 b(ertheless,)387 b(it)c(is)f(advised)h
+(to)h(upgrade)f(or)g(uninstall)h(the)f(outdated)i(Emac-)4400
+66476 y(sp)34 b(eak)404 b(pac)-34 b(k)-67 b(age.)2994
+68277 y FA(\017)800 b FC(The)443 b(v)-67 b(alue)441 b(of)i
+Fu(TeX-macro-global)448 b FC(is)442 b(not)h(determined)f(during)h
+(con\014guration)g(an)-34 b(ymore)443 b(but)4400 69738
+y(at)456 b(load)g(time)f(of)h(A)-34 b(UCT)16187 69999
+y(E)16862 69738 y(X.)692 b(Consequen)-34 b(tly)457 b(the)f(asso)34
+b(ciated)455 b(con\014guration)i(option)g Fu(--with-)4400
+71200 y(tex-input-dirs)409 b FC(w)-34 b(as)405 b(remo)-34
+b(v)g(ed.)p eop end
+%%Page: 114 119
+TeXDict begin 114 118 bop 2000 -1550 a FC(App)34 b(endix)405
+b(A:)e(Cop)-34 b(ying,)405 b(Changes,)g(Dev)-34 b(elopmen)g(t,)404
+b(F)-135 b(A)-34 b(Q,)405 b(T)-101 b(exinfo)404 b(Mo)34
+b(de)10519 b(114)2994 3985 y FA(\017)800 b FC(Supp)34
+b(ort)406 b(for)e(the)g(L)13348 3828 y Fv(a)13909 3985
+y FC(T)14582 4246 y(E)15256 3985 y(X)g(Japanese)g(classes)g(`)p
+Fu(jsarticle)p FC(')j(and)e(`)p Fu(jsbook)p FC(')g(w)-34
+b(as)405 b(added.)2000 7215 y FB(News)599 b(in)f(11.54)2994
+9341 y FA(\017)800 b FC(The)363 b(parser)g(\(used)g(e.g.)f(for)h
+Fu(TeX-auto-generate-global)p FC(\))372 b(w)-34 b(as)364
+b(extended)f(to)g(recognize)e(k)-34 b(ey-)4400 10802
+y(w)g(ords)622 b(common)g(in)g(L)15115 10645 y Fv(a)15676
+10802 y FC(T)16349 11063 y(E)17022 10802 y(X)g(pac)-34
+b(k)-67 b(ages)621 b(and)h(classes,)675 b(lik)-34 b(e)621
+b(\\)p Fu(\\)p FC(DeclareRobustCommand")i(or)4400 12263
+y(\\)p Fu(\\)p FC(RequireP)-34 b(ac)g(k)-67 b(age".)972
+b(Additionally)548 b(a)h(bug)h(w)-34 b(as)549 b(\014xed)g(whic)-34
+b(h)550 b(led)e(to)h(duplicate)g(en)-34 b(tries)549 b(in)4400
+13724 y(A)-34 b(UCT)7732 13985 y(E)8407 13724 y(X)404
+b(st)-34 b(yle)404 b(\014les.)2994 15524 y FA(\017)800
+b FC(F)-101 b(olding)404 b(can)g(no)-34 b(w)405 b(b)34
+b(e)404 b(done)g(for)h(paragraphs)f(and)h(regions)f(b)34
+b(esides)403 b(single)h(constructs)h(and)f(the)4400 16985
+y(whole)535 b(bu\013er.)932 b(With)535 b(the)g(new)h
+Fu(TeX-fold-dwim)j FC(command)d(con)-34 b(ten)g(t)536
+b(can)f(b)34 b(oth)536 b(b)34 b(e)535 b(hidden)4400 18447
+y(and)417 b(sho)-34 b(wn)417 b(with)g(a)f(single)f(k)-34
+b(ey)415 b(binding.)575 b(In)416 b(course)f(of)i(these)f(c)-34
+b(hanges)416 b(new)h(k)-34 b(ey)415 b(bindings)i(for)4400
+19908 y(unfolding)440 b(commands)e(where)g(in)-34 b(tro)34
+b(duced.)642 b(The)438 b(old)g(bindings)i(are)d(still)h(presen)-34
+b(t)439 b(but)g(will)e(b)34 b(e)4400 21369 y(phased)405
+b(out)g(in)f(future)h(releases.)2994 23169 y FA(\017)800
+b FC(Info)405 b(\014les)f(of)g(the)h(man)-34 b(ual)405
+b(no)-34 b(w)405 b(ha)-34 b(v)g(e)405 b(a)f(.info)g(extension.)2994
+24969 y FA(\017)800 b FC(There)437 b(is)f(an)h(exp)34
+b(erimen)-34 b(tal)436 b(to)34 b(ol)436 b(bar)h(supp)34
+b(ort)437 b(no)-34 b(w.)638 b(It)436 b(is)g(not)i(activ)-67
+b(ated)436 b(b)-34 b(y)437 b(default.)637 b(If)436 b(y)-34
+b(ou)4400 26430 y(w)g(an)g(t)406 b(to)e(use)h(it,)f(add)7600
+28230 y Fu(\(add-hook)640 b('LaTeX-mode-hook)i
+('LaTeX-install-toolbar\))4400 30030 y FC(to)405 b(y)-34
+b(our)404 b(init)g(\014le.)2994 31830 y FA(\017)800 b
+FC(The)415 b(man)-34 b(ual)415 b(no)-34 b(w)415 b(con)-34
+b(tains)415 b(a)f(new)g(c)-34 b(hapter)415 b(\\Quic)-34
+b(k)414 b(Start".)569 b(It)414 b(explains)g(the)g(main)g(features)4400
+33291 y(and)405 b(ho)-34 b(w)405 b(to)g(use)f(them,)g(and)h(should)g(b)
+34 b(e)404 b(enough)h(for)f(a)h(new)f(user)g(to)h(start)f(using)h(A)-34
+b(UCT)47136 33552 y(E)47811 33291 y(X.)2994 35091 y FA(\017)800
+b FC(A)457 b(new)h(section)f(\\F)-101 b(on)-34 b(t)459
+b(Lo)34 b(c)-34 b(king")456 b(w)-34 b(as)459 b(added)f(to)f(the)h(man)
+-34 b(ual)458 b(whic)-34 b(h)458 b(explains)f(syn)-34
+b(tax)458 b(high-)4400 36552 y(ligh)-34 b(ting)281 b(in)f(A)-34
+b(UCT)13309 36813 y(E)13984 36552 y(X)280 b(and)h(its)g(customization.)
+498 b(T)-101 b(ogether)280 b(with)i(the)e(sections)h(related)f(to)g
+(folding)4400 38014 y(and)405 b(outlining,)f(the)h(section)f(is)g(part)
+h(of)f(the)h(new)f(c)-34 b(hapter)405 b(\\Displa)-34
+b(y".)2994 39814 y FA(\017)800 b FC(Keyw)-34 b(ords)599
+b(for)g(syn)-34 b(tax)599 b(highligh)-34 b(ting)600 b(of)f(L)25109
+39657 y Fv(a)25670 39814 y FC(T)26343 40074 y(E)27017
+39814 y(X)f(constructs)i(to)f(b)34 b(e)599 b(t)-34 b(yp)34
+b(eset)599 b(in)g(b)34 b(old,)647 b(italic)4400 41275
+y(or)553 b(t)-34 b(yp)34 b(ewriter)553 b(fon)-34 b(ts)555
+b(ma)-34 b(y)553 b(no)-34 b(w)555 b(b)34 b(e)553 b(customized.)986
+b(Besides)552 b(the)i(built-in)g(classes,)590 b(new)553
+b(k)-34 b(ey-)4400 42736 y(w)g(ord)475 b(classes)f(ma)-34
+b(y)474 b(b)34 b(e)474 b(added)h(b)-34 b(y)475 b(customizing)f(the)h(v)
+-67 b(ariable)472 b Fu(font-latex-user-keyword-)4400
+44197 y(classes)p FC(.)1596 b(The)756 b(customization)h(options)f(can)g
+(b)34 b(e)756 b(found)h(in)f(the)g(customization)g(group)4400
+45658 y Fu(font-latex-keywords)p FC(.)2994 47458 y FA(\017)800
+b FC(V)-101 b(erbatim)404 b(con)-34 b(ten)g(t)406 b(is)e(no)-34
+b(w)405 b(displa)-34 b(y)g(ed)405 b(with)g(the)g(`)p
+Fu(fixed-pitch)p FC(')i(face.)538 b(\(GNU)405 b(Emacs)f(only\))2994
+49258 y FA(\017)800 b FC(Syn)-34 b(tax)467 b(highligh)-34
+b(ting)467 b(should)f(not)h(spill)e(out)h(of)g(v)-34
+b(erbatim)466 b(con)-34 b(ten)g(t)468 b(an)-34 b(ymore.)723
+b(\(GNU)466 b(Emacs)4400 50719 y(only\))2994 52519 y
+FA(\017)800 b FC(V)-101 b(erbatim)404 b(commands)h(lik)-34
+b(e)403 b(`)p Fu(\\verb|...|)p FC(')k(will)d(not)h(b)34
+b(e)404 b(brok)-34 b(en)404 b(an)-34 b(ymore)404 b(during)h(\014lling.)
+2994 54319 y FA(\017)800 b FC(Y)-101 b(ou)588 b(can)f(customize)g(the)g
+(completion)h(for)f(graphic)g(\014les)g(with)h Fu
+(LaTeX-includegraphics-)4400 55781 y(read-file)p FC(.)2994
+57581 y FA(\017)800 b FC(Supp)34 b(ort)317 b(for)f(the)f(L)13082
+57424 y Fv(a)13643 57581 y FC(T)14316 57841 y(E)14990
+57581 y(X)h(pac)-34 b(k)-67 b(ages)315 b(`)p Fu(url)p
+FC(',)333 b(`)p Fu(listings)p FC(',)i(`)p Fu(jurabib)p
+FC(')318 b(and)e(`)p Fu(csquotes)p FC(')i(w)-34 b(as)316
+b(added)4400 59042 y(with)405 b(regard)f(to)g(command)h(completion)f
+(and)h(syn)-34 b(tax)405 b(highligh)-34 b(ting.)2994
+60842 y FA(\017)800 b FC(P)-34 b(erformance)404 b(of)g(fon)-34
+b(ti\014cation)406 b(and)f(\014lling)f(w)-34 b(as)405
+b(impro)-34 b(v)g(ed.)2994 62642 y FA(\017)800 b FC(Insertion)404
+b(of)h(no)34 b(des)404 b(in)g(T)-101 b(exinfo)405 b(mo)34
+b(de)404 b(no)-34 b(w)405 b(supp)34 b(orts)405 b(completion)g(of)f
+(existing)g(no)34 b(de)404 b(names.)2994 64442 y FA(\017)800
+b FC(Setting)360 b(the)f(v)-67 b(ariable)358 b Fu(LaTeX-float)363
+b FC(to)c Fu(nil)h FC(no)-34 b(w)360 b(means)f(that)i(y)-34
+b(ou)359 b(will)f(not)i(b)34 b(e)359 b(prompted)h(for)4400
+65903 y(the)349 b(\015oat)g(p)34 b(osition)349 b(of)g(\014gures)f(and)i
+(tables.)520 b(Y)-101 b(ou)349 b(can)f(get)h(the)f(old)h(b)34
+b(eha)-34 b(viour)348 b(of)h Fu(nil)g FC(b)-34 b(y)349
+b(setting)4400 67364 y(the)405 b(v)-67 b(ariable)402
+b(to)j Fu("")p FC(,)f(i.e.)f(an)i(empt)-34 b(y)404 b(string.)539
+b(See)404 b(also)g(Section)h(2.4.2)e([Floats],)h(page)g(28.)2994
+69164 y FA(\017)800 b FC(The)405 b(XEmacs-sp)34 b(eci\014c)403
+b(bug)i(concerning)f Fu(overlays-at)k FC(w)-34 b(as)405
+b(\014xed.)2994 70964 y FA(\017)800 b FC(Lots)404 b(of)h(bug)g
+(\014xes.)p eop end
+%%Page: 115 120
+TeXDict begin 115 119 bop 2000 -1550 a FC(App)34 b(endix)405
+b(A:)e(Cop)-34 b(ying,)405 b(Changes,)g(Dev)-34 b(elopmen)g(t,)404
+b(F)-135 b(A)-34 b(Q,)405 b(T)-101 b(exinfo)404 b(Mo)34
+b(de)10519 b(115)2000 3985 y FB(News)599 b(in)f(11.53)2994
+6110 y FA(\017)800 b FC(The)367 b(L)7176 5953 y Fv(a)7737
+6110 y FC(T)8410 6371 y(E)9083 6110 y(X)g(math)g(men)-34
+b(u)367 b(can)f(include)h(Unico)34 b(de)366 b(c)-34 b(haracters)366
+b(if)g(y)-34 b(our)367 b(Emacs)f(built)h(supp)34 b(orts)367
+b(it.)4400 7572 y(See)404 b(the)g(v)-67 b(ariable)403
+b Fu(LaTeX-math-menu-unicode)p FC(,)412 b(Section)405
+b(2.5)f([Mathematics],)f(page)i(30.)2994 9337 y FA(\017)800
+b FC(Bug)404 b(\014xes)g(for)g(XEmacs.)2994 11102 y FA(\017)800
+b FC(Completion)405 b(for)f(graphic)g(\014les)g(in)g(the)h(T)23706
+11363 y(E)24380 11102 y(X)f(searc)-34 b(h)404 b(path)h(has)g(b)34
+b(een)404 b(added.)2994 12868 y FA(\017)800 b Fu(start)406
+b FC(is)e(used)g(for)h(the)f(view)-34 b(er)404 b(for)g(MiKT)24609
+13128 y(E)25282 12868 y(X)g(and)h(fpT)30668 13128 y(E)31343
+12868 y(X.)2994 14633 y FA(\017)800 b FC(The)328 b(v)-67
+b(ariable)327 b Fu(TeX-fold-preserve-comments)337 b FC(can)328
+b(no)-34 b(w)329 b(b)34 b(e)328 b(customized)g(to)g(deactiv)-67
+b(ate)327 b(fold-)4400 16094 y(ing)404 b(in)g(commen)-34
+b(ts.)2000 19248 y FB(News)599 b(in)f(11.52)2994 21374
+y FA(\017)800 b FC(Installation)405 b(and)g(men)-34 b(us)405
+b(under)f(XEmacs)h(w)-34 b(ork)404 b(again)g(\(ma)-34
+b(yb)34 b(e)405 b(for)f(the)g(\014rst)h(time\).)2994
+23139 y FA(\017)800 b FC(F)-101 b(on)-34 b(ti\014cation)277
+b(of)f(subscripts)g(and)g(sup)34 b(erscripts)276 b(is)f(no)-34
+b(w)276 b(disabled)g(when)g(the)g(fon)-34 b(ti\014cation)277
+b(engine)4400 24600 y(is)404 b(not)h(able)f(to)g(supp)34
+b(ort)405 b(it)g(prop)34 b(erly)-101 b(.)2994 26365 y
+FA(\017)800 b FC(Bug)404 b(\014xes)g(in)g(the)h(build)f(pro)34
+b(cess.)2000 29520 y FB(News)599 b(in)f(11.51)2994 31645
+y FA(\017)800 b FC(PDFT)7615 31906 y(E)8289 31645 y(X)377
+b(and)i(Source)e(Sp)34 b(ecial)377 b(supp)34 b(ort)379
+b(did)f(not)g(w)-34 b(ork)378 b(with)h(ConT)37056 31906
+y(E)37730 31645 y(Xt,)k(this)378 b(has)h(b)34 b(een)377
+b(\014xed.)4400 33106 y(Similar)403 b(for)i(Source)f(Sp)34
+b(ecial)403 b(supp)34 b(ort)405 b(under)g(Windo)-34 b(ws.)2994
+34872 y FA(\017)800 b FC(Omega)404 b(supp)34 b(ort)405
+b(has)g(b)34 b(een)404 b(added.)2994 36637 y FA(\017)800
+b FC(Bug)404 b(\014xes)g(in)g(the)h(build)f(pro)34 b(cess.)2994
+38402 y FA(\017)800 b Fu(TeX-fold)407 b FC(no)-34 b(w)405
+b(supp)34 b(orts)406 b(folding)e(of)h(en)-34 b(vironmen)g(ts)405
+b(in)f(T)-101 b(exinfo)404 b(mo)34 b(de.)2000 41556 y
+FB(News)599 b(in)f(11.50)2994 43682 y FA(\017)800 b FC(The)426
+b(use)f(of)h(source)f(sp)34 b(ecials)424 b(when)j(pro)34
+b(cessing)425 b(or)g(viewing)g(the)g(do)34 b(cumen)-34
+b(t)427 b(can)e(no)-34 b(w)427 b(b)34 b(e)425 b(con-)4400
+45143 y(trolled)k(with)h(the)g(new)g Fu(TeX-source-specials)436
+b FC(minor)430 b(mo)34 b(de)429 b(whic)-34 b(h)430 b(can)g(b)34
+b(e)429 b(toggled)h(via)f(an)4400 46604 y(en)-34 b(try)411
+b(in)f(the)h(Command)h(men)-34 b(u)411 b(or)f(the)h(k)-34
+b(ey)410 b(binding)i Fs(C-c)405 b(C-t)g(C-s)p FC(.)558
+b(If)411 b(y)-34 b(ou)411 b(ha)-34 b(v)g(e)411 b(customized)4400
+48065 y(the)299 b(v)-67 b(ariable)297 b Fu(TeX-command-list)p
+FC(,)325 b(y)-34 b(ou)299 b(ha)-34 b(v)g(e)299 b(to)g(re-initialize)d
+(it)j(for)f(this)h(to)g(w)-34 b(ork.)504 b(This)299 b(means)4400
+49527 y(to)f(op)34 b(en)297 b(a)g(customization)h(bu\013er)f(for)g(the)
+h(v)-67 b(ariable)296 b(b)-34 b(y)297 b(t)-34 b(yping)298
+b Fs(M-x)405 b(customize-variable)411 b(RET)4400 50988
+y(TeX-command-list)f(RET)p FC(,)519 b(selecting)495 b(\\Erase)g
+(Customization")j(and)e(do)g(y)-34 b(our)496 b(customization)4400
+52449 y(again)404 b(with)h(the)g(new)f(default.)2994
+54214 y FA(\017)800 b FC(The)580 b(con)-34 b(ten)g(t)581
+b(of)e(the)h(command)g(men)-34 b(u)580 b(no)-34 b(w)580
+b(dep)34 b(ends)580 b(on)g(the)f(mo)34 b(de)579 b(\(plain)h(T)43982
+54475 y(E)44656 54214 y(X,)623 b(L)46847 54057 y Fv(a)47408
+54214 y FC(T)48081 54475 y(E)48754 54214 y(X,)4400 55675
+y(ConT)7227 55936 y(E)7902 55675 y(Xt)343 b(etc.\).)518
+b(An)-34 b(y)343 b(former)g(customization)h(of)f(the)g(v)-67
+b(ariable)342 b Fu(TeX-command-list)348 b FC(has)c(to)f(b)34
+b(e)4400 57137 y(erased.)538 b(Otherwise)404 b(the)h(command)g(men)-34
+b(u)405 b(and)g(the)f(customization)h(will)f(not)g(w)-34
+b(ork)405 b(correctly)-101 b(.)2994 58902 y FA(\017)800
+b FC(Supp)34 b(ort)384 b(for)e(hiding)h(and)g(auto-rev)-34
+b(ealing)382 b(macros,)k(e.g.)c(fo)34 b(otnotes)383 b(or)f(citations,)
+387 b(and)c(en)-34 b(viron-)4400 60363 y(men)g(ts)405
+b(in)f(a)g(bu\013er)h(w)-34 b(as)405 b(added,)f(Section)h(3.2)f([F)-101
+b(olding],)403 b(page)i(46.)2994 62128 y FA(\017)800
+b FC(Y)-101 b(ou)325 b(can)g(no)-34 b(w)326 b(con)-34
+b(trol)325 b(if)g(inden)-34 b(tation)327 b(is)d(done)i(up)34
+b(on)325 b(t)-34 b(yping)326 b Fu(RET)g FC(b)-34 b(y)325
+b(customizing)g(the)g(v)-67 b(ariable)4400 63590 y Fu
+(TeX-newline-function)p FC(,)411 b(Section)404 b(2.9)g([Inden)-34
+b(ting],)405 b(page)f(35.)2994 65355 y FA(\017)800 b
+FC(Limited)309 b(supp)34 b(ort)310 b(for)f Fu(doc.sty)j
+FC(and)e Fu(ltxdoc.cls)i FC(\(`)p Fu(dtx)p FC(')e(\014les\))f(w)-34
+b(as)310 b(added.)508 b(The)310 b(new)f(do)34 b(cT)48417
+65616 y(E)49091 65355 y(X)4400 66816 y(mo)g(de)360 b(pro)-34
+b(vides)360 b(functionalit)-34 b(y)362 b(for)e(editing)g(do)34
+b(cumen)-34 b(tation)362 b(parts.)525 b(This)360 b(includes)h
+(formatting)4400 68277 y(\(inden)-34 b(ting)376 b(and)g(\014lling\),)k
+(adding)c(and)f(completion)g(of)g(macros)f(and)h(en)-34
+b(vironmen)g(ts)376 b(while)e(sta)-34 b(y-)4400 69738
+y(ing)538 b(in)g(commen)-34 b(ts)539 b(as)f(w)-34 b(ell)538
+b(as)g(syn)-34 b(tax)539 b(highligh)-34 b(ting.)941 b(\(Please)538
+b(note)g(that)h(the)g(mo)34 b(de)537 b(is)h(not)4400
+71200 y(\014nished)405 b(y)-34 b(et.)539 b(F)-101 b(or)404
+b(example)f(syn)-34 b(tax)405 b(highligh)-34 b(ting)405
+b(do)34 b(es)405 b(not)f(w)-34 b(ork)405 b(y)-34 b(et)404
+b(in)g(XEmacs.\))p eop end
+%%Page: 116 121
+TeXDict begin 116 120 bop 2000 -1550 a FC(App)34 b(endix)405
+b(A:)e(Cop)-34 b(ying,)405 b(Changes,)g(Dev)-34 b(elopmen)g(t,)404
+b(F)-135 b(A)-34 b(Q,)405 b(T)-101 b(exinfo)404 b(Mo)34
+b(de)10519 b(116)2994 3985 y FA(\017)800 b FC(F)-101
+b(or)326 b(macro)g(completion)h(in)f(do)34 b(cT)20038
+4246 y(E)20712 3985 y(X)326 b(mo)34 b(de)326 b(the)h(A)-34
+b(UCT)30477 4246 y(E)31151 3985 y(X)327 b(st)-34 b(yle)326
+b(\014les)g Fu(doc.el)p FC(,)344 b Fu(ltxdoc.el)329 b
+FC(and)4400 5446 y Fu(ltx-base.el)482 b FC(w)-34 b(ere)477
+b(included.)759 b(The)479 b(latter)e(pro)-34 b(vides)478
+b(general)f(supp)34 b(ort)479 b(for)e(lo)-34 b(w-lev)g(el)477
+b(L)47183 5289 y Fv(a)47744 5446 y FC(T)48417 5707 y(E)49091
+5446 y(X)4400 6907 y(macros)483 b(and)h(ma)-34 b(y)483
+b(b)34 b(e)483 b(used)g(with)h(L)21475 6750 y Fv(a)22036
+6907 y FC(T)22709 7168 y(E)23383 6907 y(X)f(class)f(and)i(st)-34
+b(yle)483 b(\014les)g(as)g(w)-34 b(ell.)775 b(It)484
+b(is)e(curren)-34 b(tly)483 b(not)4400 8369 y(loaded)404
+b(automatically)h(for)f(those)g(\014les.)2994 10247 y
+FA(\017)800 b FC(Supp)34 b(ort)445 b(for)f(ConT)13845
+10508 y(E)14520 10247 y(Xt)g(with)h(a)f(separate)g(ConT)27853
+10508 y(E)28527 10247 y(Xt)g(mo)34 b(de)444 b(is)g(no)-34
+b(w)445 b(included.)658 b(Macro)443 b(de\014ni-)4400
+11708 y(tions)405 b(for)f(completion)g(are)g(a)-34 b(v)-67
+b(ailable)403 b(in)h(Dutc)-34 b(h)405 b(and)g(English.)2994
+13587 y FA(\017)800 b FC(The)375 b(\014lling)g(and)h(inden)-34
+b(tation)377 b(co)34 b(de)374 b(w)-34 b(as)376 b(o)-34
+b(v)g(erhauled)375 b(and)h(is)f(no)-34 b(w)376 b(able)e(to)i(format)f
+(commen)-34 b(ted)4400 15048 y(parts)398 b(of)g(the)f(source)g(syn)-34
+b(tactically)397 b(correct.)536 b(Newly)397 b(a)-34 b(v)-67
+b(ailable)396 b(functionalit)-34 b(y)399 b(and)f(customiza-)4400
+16510 y(tion)405 b(options)g(are)e(explained)h(in)g(the)h(man)-34
+b(ual.)2994 18388 y FA(\017)800 b FC(Filling)485 b(and)h(inden)-34
+b(tation)488 b(in)e(XEmacs)f(with)h Fw(p)-34 b(review-latex)485
+b FC(and)i(activ)-67 b(ated)485 b(previews)g(lead)h(to)4400
+19849 y(the)351 b(insertion)f(of)g(whitespace)h(b)34
+b(efore)350 b(m)-34 b(ulti-line)350 b(previews.)520 b(A)-34
+b(UCT)36545 20110 y(E)37219 19849 y(X)350 b(no)-34 b(w)352
+b(con)-34 b(tains)351 b(facilities)4400 21311 y(to)405
+b(prev)-34 b(en)g(t)404 b(this)h(problem.)2994 23189
+y FA(\017)800 b FC(If)429 b Fu(TeX-master)j FC(is)c(set)h(to)g
+Fu(t)p FC(,)434 b(A)-34 b(UCT)21834 23450 y(E)22509 23189
+y(X)428 b(will)g(no)-34 b(w)430 b(query)e(for)h(a)f(master)h(\014le)f
+(only)g(when)i(a)e(new)4400 24650 y(\014le)319 b(is)g(op)34
+b(ened.)511 b(Existing)319 b(\014les)g(will)g(b)34 b(e)319
+b(left)g(alone.)510 b(The)320 b(new)g(function)g Fu
+(TeX-master-file-ask)4400 26112 y FC(\(b)34 b(ound)406
+b(to)e Fs(C-c)h(_)g FC(is)f(pro)-34 b(vided)404 b(for)g(adding)h(the)g
+(v)-67 b(ariable)403 b(man)-34 b(ually)-101 b(.)2994
+27990 y FA(\017)800 b FC(Sectioning)379 b(commands)f(are)g(no)-34
+b(w)379 b(sho)-34 b(wn)380 b(in)e(a)g(larger)f(fon)-34
+b(t)379 b(on)g(displa)-34 b(y)378 b(devices)f(whic)-34
+b(h)379 b(supp)34 b(ort)4400 29451 y(suc)-34 b(h)577
+b(fon)-34 b(ti\014cation.)1058 b(The)577 b(v)-67 b(ariable)576
+b Fu(font-latex-title-fontify)585 b FC(can)576 b(b)34
+b(e)577 b(customized)g(to)4400 30913 y(restore)346 b(the)h(old)g(app)34
+b(earance,)358 b(i.e.)345 b(the)i(usage)g(of)g(a)f(di\013eren)-34
+b(t)347 b(color)f(instead)i(of)f(a)f(c)-34 b(hange)347
+b(in)g(size.)2994 32791 y FA(\017)800 b FC(Supp)34 b(ort)696
+b(for)f Fu(alphanum.sty)p FC(,)771 b Fu(beamer.cls)p
+FC(,)g Fu(booktabs.sty)p FC(,)g Fu(captcont.sty)p FC(,)h
+Fu(emp.sty)p FC(,)4400 34253 y Fu(paralist.sty)p FC(,)650
+b Fu(subfigure.sty)602 b FC(and)d Fu(units.sty)p FC(/)p
+Fu(nicefrac.sty)605 b FC(w)-34 b(as)598 b(added.)1121
+b(Credits)4400 35714 y(go)404 b(to)h(the)f(authors)h(men)-34
+b(tioned)406 b(in)e(the)g(resp)34 b(ectiv)-34 b(e)403
+b(A)-34 b(UCT)32331 35975 y(E)33006 35714 y(X)404 b(st)-34
+b(yle)404 b(\014les.)2994 37592 y FA(\017)800 b FC(Inserting)348
+b(graphics)g(with)g Fs(C-c)406 b(RET)f(includegraphics)k(RET)349
+b FC(w)-34 b(as)348 b(impro)-34 b(v)g(ed.)521 b(See)347
+b(the)h(v)-67 b(ariable)4400 39054 y Fu
+(LaTeX-includegraphics-options-alist)p FC(.)2994 40932
+y FA(\017)800 b FC(If)433 b Fu(LaTeX-default-position)441
+b FC(is)433 b Fu(nil)p FC(,)441 b(don't)434 b(prompt)g(for)f(p)34
+b(osition)434 b(argumen)-34 b(ts)434 b(in)f(T)-101 b(abular-)4400
+42393 y(lik)-34 b(e)403 b(en)-34 b(vironmen)g(ts,)405
+b(see)f(Section)g(2.4.4)g([T)-101 b(abular-lik)-34 b(e],)403
+b(page)h(29.)2994 44272 y FA(\017)800 b FC(Completion)403
+b(for)e(a)-34 b(v)-67 b(ailable)401 b(pac)-34 b(k)-67
+b(ages)402 b(when)g(using)g Fs(C-c)k(RET)f(usepackage)i(RET)c
+FC(w)-34 b(as)402 b(impro)-34 b(v)g(ed)4400 45733 y(on)405
+b(systems)f(using)h(the)f(kpathsea)h(library)-101 b(.)2994
+47612 y FA(\017)800 b FC(The)429 b(commen)-34 b(ting)428
+b(functionalit)-34 b(y)430 b(w)-34 b(as)429 b(\014xed.)610
+b(The)428 b(separate)h(functions)g(for)f(commen)-34 b(ting)429
+b(and)4400 49073 y(uncommen)-34 b(ting)551 b(w)-34 b(ere)549
+b(uni\014ed)h(in)g(one)f(function)i(for)e(paragraphs)h(and)h(regions)e
+(resp)34 b(ectiv)-34 b(ely)4400 50534 y(whic)g(h)405
+b(do)g(b)34 b(oth.)2994 52413 y FA(\017)800 b FC(Syn)-34
+b(tax)539 b(highligh)-34 b(ting)539 b(can)f(b)34 b(e)537
+b(customized)h(to)g(fon)-34 b(tify)539 b(quotes)g(delimited)e(b)-34
+b(y)538 b(either)g Fu(>>)p FC(Ger-)4400 53874 y(man)p
+Fu(<<)404 b FC(or)e Fu(<<)p FC(F)-101 b(renc)-34 b(h)p
+Fu(>>)404 b FC(quotation)f(marks)f(b)-34 b(y)403 b(c)-34
+b(hanging)403 b(the)g(v)-67 b(ariable)401 b Fu(font-latex-quotes)p
+FC(.)2994 55753 y FA(\017)800 b FC(Certain)336 b(T)9385
+56014 y(E)10059 55753 y(X/L)11896 55596 y Fv(a)12457
+55753 y FC(T)13130 56014 y(E)13803 55753 y(X)g(k)-34
+b(eyw)g(ords)336 b(for)f(functions,)350 b(references,)e(v)-67
+b(ariables)334 b(and)i(w)-34 b(arnings)337 b(will)e(no)-34
+b(w)4400 57214 y(b)34 b(e)465 b(fon)-34 b(ti\014ed)466
+b(sp)34 b(ecially)-101 b(.)719 b(Y)-101 b(ou)465 b(ma)-34
+b(y)465 b(add)h(y)-34 b(our)465 b(o)-34 b(wn)465 b(k)-34
+b(eyw)g(ords)466 b(b)-34 b(y)465 b(customizing)g(the)g(v)-67
+b(ariables)4400 58675 y Fu(font-latex-match-function-keywords)p
+FC(,)1030 b Fu(font-latex-match-reference-keywords)p
+FC(,)4400 60136 y Fu(font-latex-match-variable-keywords)349
+b FC(and)339 b Fu(font-latex-match-warning-keywords)p
+FC(.)2994 62015 y FA(\017)800 b FC(If)1030 b(y)-34 b(ou)1030
+b(include)g(the)g(st)-34 b(yle)1030 b(\014les)g Fu(german)i
+FC(or)d Fu(ngerman)k FC(in)d(a)g(do)34 b(cumen)-34 b(t)1031
+b(\(directly)4400 63476 y(or)918 b(via)f(the)h(`)p Fu(babel)p
+FC(')h(pac)-34 b(k)-67 b(age\),)1046 b(y)-34 b(ou)918
+b(should)h(no)-34 b(w)919 b(customize)f Fu(LaTeX-german-open-)4400
+64937 y(quote)p FC(,)515 b Fu(LaTeX-german-close-quote)500
+b FC(and)492 b Fu(LaTeX-german-quote-after-quote)502
+b FC(instead)4400 66399 y(of)532 b Fu(TeX-open-quote)p
+FC(,)569 b Fu(TeX-close-quote)537 b FC(and)c Fu(TeX-quote-after-quote)
+539 b FC(if)532 b(y)-34 b(ou)533 b(w)-34 b(an)g(t)534
+b(to)4400 67860 y(in\015uence)405 b(the)f(t)-34 b(yp)34
+b(e)404 b(of)h(quote)f(insertion.)2994 69738 y FA(\017)800
+b FC(Up)34 b(on)372 b(viewing)f(an)h(output)i(\014le,)k(the)372
+b(righ)-34 b(t)372 b(view)-34 b(er)371 b(and)h(command)h(line)e
+(options)h(for)g(it)g(are)f(no)-34 b(w)4400 71200 y(determined)519
+b(automatically)g(b)-34 b(y)519 b(lo)34 b(oking)519 b(at)g(the)g
+(extension)g(of)h(the)f(output)i(\014le)e(and)g(certain)p
+eop end
+%%Page: 117 122
+TeXDict begin 117 121 bop 2000 -1550 a FC(App)34 b(endix)405
+b(A:)e(Cop)-34 b(ying,)405 b(Changes,)g(Dev)-34 b(elopmen)g(t,)404
+b(F)-135 b(A)-34 b(Q,)405 b(T)-101 b(exinfo)404 b(Mo)34
+b(de)10519 b(117)4400 3985 y(options)414 b(used)g(in)g(the)g(source)f
+(\014le.)566 b(The)413 b(b)34 b(eha)-34 b(vior)413 b(can)h(b)34
+b(e)413 b(adapted)i(or)e(extended)h(resp)34 b(ectiv)-34
+b(ely)4400 5446 y(b)g(y)405 b(customizing)f(the)g(v)-67
+b(ariable)403 b Fu(TeX-output-view-style)p FC(.)2994
+7457 y FA(\017)800 b FC(Y)-101 b(ou)417 b(can)g(con)-34
+b(trol)417 b(whether)g Fu(TeX-insert-macro)423 b FC(\()p
+Fs(C-c)405 b(RET)p FC(\))418 b(ask)f(for)f(all)g(optional)i(argumen)-34
+b(ts)4400 8918 y(b)g(y)375 b(customizing)g(the)g(v)-67
+b(ariable)373 b Fu(TeX-insert-macro-default-style)p FC(,)391
+b(Section)375 b(2.6)f([Comple-)4400 10379 y(tion],)404
+b(page)g(31.)2994 12390 y FA(\017)800 b Fu(TeX-run-discard)409
+b FC(is)404 b(no)-34 b(w)406 b(able)d(to)i(completely)e(detac)-34
+b(h)405 b(a)f(pro)34 b(cess)404 b(that)h(it)f(started.)2994
+14401 y FA(\017)800 b FC(The)601 b(build)f(pro)34 b(cess)600
+b(w)-34 b(as)600 b(enhanced)h(and)g(is)f(no)-34 b(w)601
+b(based)g(on)f Fu(autoconf)j FC(making)d(installing)4400
+15862 y(A)-34 b(UCT)7732 16123 y(E)8407 15862 y(X)433
+b(a)g(mostly)g(automatic)g(pro)34 b(cess.)625 b(See)433
+b(Section)g(1.2)g([Installation],)439 b(page)434 b(4,)439
+b(and)434 b(Sec-)4400 17323 y(tion)405 b(1.2.7)e([Installation)i(under)
+f(MS)h(Windo)-34 b(ws],)405 b(page)f(10,)g(for)g(details.)2000
+21186 y FB(News)599 b(in)f(11.14)2994 23312 y FA(\017)800
+b FC(Man)-34 b(y)478 b(more)g(L)11304 23155 y Fv(a)11865
+23312 y FC(T)12538 23573 y(E)13211 23312 y(X)g(and)h(L)17351
+23155 y Fv(a)17912 23312 y FC(T)18585 23573 y(E)19259
+23312 y(X2e)e(commands)i(are)e(supp)34 b(orted.)761 b(Done)478
+b(b)-34 b(y)479 b(Masa)-34 b(yuki)478 b(A)-34 b(tak)-67
+b(a)4400 24773 y Fu(ataka@milk.freemail.ne.jp)2000 28636
+y FB(News)599 b(in)f(11.12)2994 30761 y FA(\017)800 b
+FC(Supp)34 b(ort)648 b(for)e(the)g(K)-34 b(OMA-Script)647
+b(classes.)1264 b(Con)-34 b(tributed)648 b(b)-34 b(y)647
+b(Mark)e(T)-101 b(rettin)647 b Fu(Mark.)4400 32222 y(Trettin@gmx.de)p
+FC(.)2000 36085 y FB(News)599 b(in)f(11.11)2994 38210
+y FA(\017)800 b FC(Supp)34 b(ort)483 b(for)f Fu(prosper.sty)p
+FC(,)505 b(see)481 b Fu(http://prosper.sourceforge.net/)p
+FC(.)782 b(Con)-34 b(tributed)485 b(b)-34 b(y)4400 39672
+y(Phillip)404 b(Lord)f Fu(p.lord@russet.org.uk)p FC(.)2000
+43534 y FB(News)599 b(in)f(11.10)2994 45660 y FA(\017)800
+b Fu(comment-region)540 b FC(no)-34 b(w)537 b(inserts)e
+Fu(\045\045)h FC(b)-34 b(y)536 b(default.)933 b(Suggested)537
+b(b)-34 b(y)535 b Fu(")p FC(Da)-34 b(vide)536 b(G.)f(M.)g(Salv)-34
+b(etti)p Fu(")4400 47121 y(salve@debian.org>)p FC(.)2000
+50984 y FB(News)599 b(in)f(11.06)2994 53109 y FA(\017)800
+b FC(Y)-101 b(ou)290 b(can)g(no)-34 b(w)290 b(switc)-34
+b(h)291 b(b)34 b(et)-34 b(w)g(een)290 b(using)g(the)g
+Fu(font-latex)j FC(\(all)c(emacsen\),)313 b(the)289 b
+Fu(tex-font)k FC(\(Emacs)4400 54570 y(21)485 b(only\))g(or)g(no)g(sp)34
+b(ecial)484 b(pac)-34 b(k)-67 b(age)485 b(for)g(fon)-34
+b(t)487 b(lo)34 b(c)-34 b(king.)780 b(Customize)486 b
+Fu(TeX-install-font-lock)4400 56032 y FC(for)404 b(this.)2000
+59894 y FB(News)599 b(in)f(11.04)2994 62020 y FA(\017)800
+b FC(No)-34 b(w)392 b(use)f Fu(-t)637 b(landscape)395
+b FC(b)-34 b(y)391 b(default)h(when)g(landscap)34 b(e)392
+b(option)g(app)34 b(ears.)534 b(Suggested)392 b(b)-34
+b(y)392 b(Erik)4400 63481 y(F)-101 b(risk)404 b Fu(frisk@isy.liu.se)p
+FC(.)2000 67344 y FB(News)599 b(in)f(11.03)2994 69469
+y FA(\017)800 b FC(Use)543 b Fu(tex-fptex.el)548 b FC(for)c(fpT)18760
+69730 y(E)19434 69469 y(X)g(supp)34 b(ort.)957 b(Con)-34
+b(tributed)546 b(b)-34 b(y)544 b(F)-101 b(abrice)543
+b(P)-34 b(opineau)544 b Fu(Fabrice.)4400 70930 y(Popineau@supelec.fr)p
+FC(.)p eop end
+%%Page: 118 123
+TeXDict begin 118 122 bop 2000 -1550 a FC(App)34 b(endix)405
+b(A:)e(Cop)-34 b(ying,)405 b(Changes,)g(Dev)-34 b(elopmen)g(t,)404
+b(F)-135 b(A)-34 b(Q,)405 b(T)-101 b(exinfo)404 b(Mo)34
+b(de)10519 b(118)2000 3985 y FB(News)599 b(in)f(11.02)2994
+6110 y FA(\017)800 b FC(New)465 b(user)g(option)g Fu
+(LaTeX-top-caption-list)473 b FC(sp)34 b(eci\014es)464
+b(en)-34 b(vironmen)g(ts)466 b(where)f(the)g(caption)4400
+7572 y(should)405 b(go)f(at)h(top.)539 b(Con)-34 b(tributed)406
+b(b)-34 b(y)405 b Fu(ataka@milk.freemail.ne.jp)413 b
+FC(\(Masa)-34 b(yuki)405 b(A)-34 b(tak)-67 b(a\).)2994
+9486 y FA(\017)800 b FC(Allo)-34 b(w)461 b(explicit)e(dimensions)i(in)f
+Fu(graphicx.sty)p FC(.)712 b(Con)-34 b(tributed)462 b(b)-34
+b(y)461 b Fu(ataka@milk.freemail.)4400 10947 y(ne.jp)406
+b FC(\(Masa)-34 b(yuki)405 b(A)-34 b(tak)-67 b(a\).)2994
+12861 y FA(\017)800 b FC(Limited)627 b(supp)34 b(ort)628
+b(for)g Fu(verbatim.sty)p FC(.)1212 b(Con)-34 b(tributed)629
+b(b)-34 b(y)628 b Fu(ataka@milk.freemail.ne.jp)4400 14322
+y FC(\(Masa)-34 b(yuki)405 b(A)-34 b(tak)-67 b(a\).)2994
+16236 y FA(\017)800 b FC(Better)343 b(supp)34 b(ort)344
+b(for)f(amsmath)h(items.)519 b(P)-34 b(atc)g(h)344 b(b)-34
+b(y)343 b Fu(ataka@milk.freemail.ne.jp)352 b FC(\(Masa)-34
+b(yuki)4400 17697 y(A)g(tak)-67 b(a\).)2994 19611 y FA(\017)800
+b FC(More)382 b(accurate)g(error)f(parsing.)531 b(Added)384
+b(b)-34 b(y)382 b(Da)-34 b(vid)382 b(Kastrup)h Fu
+(David.Kastrup@t-online.de)p FC(.)2000 23183 y FB(News)599
+b(in)f(11.01)2994 25308 y FA(\017)800 b FC(Bug)404 b(\014xes.)2000
+28206 y Fq(Older)545 b(v)-45 b(ersions)2000 30166 y FC(See)404
+b(the)g(\014le)g Fu(history.texi)409 b FC(for)404 b(older)g(c)-34
+b(hanges.)2000 33738 y FB(A.3)897 b(F)-149 b(uture)599
+b(Dev)-50 b(elopmen)g(t)2000 35863 y FC(The)468 b(follo)-34
+b(wing)468 b(sections)g(describ)34 b(e)467 b(future)h(dev)-34
+b(elopmen)g(t)469 b(of)e(A)-34 b(UCT)34624 36124 y(E)35299
+35863 y(X.)729 b(Besides)467 b(mid-term)g(goals,)2000
+37324 y(bug)379 b(rep)34 b(orts)378 b(and)g(requests)g(w)-34
+b(e)379 b(cannot)f(\014x)g(or)g(honor)h(righ)-34 b(t)378
+b(a)-34 b(w)g(a)g(y)379 b(are)f(b)34 b(eing)378 b(gathered)g(here.)529
+b(If)378 b(y)-34 b(ou)2000 38786 y(ha)g(v)g(e)480 b(some)g(time)g(for)g
+(Emacs)f(Lisp)h(hac)-34 b(king,)499 b(y)-34 b(ou)480
+b(are)f(encouraged)h(to)h(try)e(to)h(pro)-34 b(vide)480
+b(a)g(solution)2000 40247 y(to)422 b(one)h(of)f(the)h(follo)-34
+b(wing)423 b(problems.)592 b(If)422 b(y)-34 b(ou)423
+b(don't)g(kno)-34 b(w)423 b(Lisp,)j(y)-34 b(ou)423 b(ma)-34
+b(y)422 b(help)g(us)h(to)f(impro)-34 b(v)g(e)422 b(the)2000
+41708 y(do)34 b(cumen)-34 b(tation.)542 b(It)405 b(migh)-34
+b(t)405 b(b)34 b(e)405 b(a)f(go)34 b(o)g(d)405 b(idea)g(to)g(discuss)g
+(prop)34 b(osed)405 b(c)-34 b(hanges)405 b(on)h(the)f(mailing)f(list)h
+(of)2000 43169 y(A)-34 b(UCT)5332 43430 y(E)6007 43169
+y(X)404 b(\014rst.)2000 46067 y Fq(A.3.1)817 b(Mid-term)546
+b(Goals)2994 48027 y FA(\017)800 b FC(In)-34 b(tegration)405
+b(of)f Fw(p)-34 b(review-latex)404 b FC(in)-34 b(to)405
+b(A)-34 b(UCT)24813 48288 y(E)25488 48027 y(X)4400 49941
+y(As)281 b(of)g(A)-34 b(UCT)10657 50201 y(E)11332 49941
+y(X)280 b(11.81)h Fw(p)-34 b(review-latex)280 b FC(is)g(a)h(part)g(of)g
+(A)-34 b(UCT)31493 50201 y(E)32168 49941 y(X)281 b(in)g(the)g(sense)f
+(that)i(the)f(installation)4400 51402 y(routines)405
+b(w)-34 b(ere)404 b(merged)f(and)i Fw(p)-34 b(review-latex)404
+b FC(is)g(b)34 b(eing)404 b(pac)-34 b(k)-67 b(aged)404
+b(with)h(A)-34 b(UCT)41197 51663 y(E)41871 51402 y(X.)4400
+53316 y(F)-101 b(urther)420 b(in)-34 b(tegration)421
+b(will)e(happ)34 b(en)421 b(at)f(the)g(bac)-34 b(k)g(end.)587
+b(This)420 b(in)-34 b(v)g(olv)g(es)420 b(folding)h(of)f(error)f
+(parsing)4400 54777 y(and)c(task)e(managemen)-34 b(t)415
+b(of)f(b)34 b(oth)415 b(pac)-34 b(k)-67 b(ages)414 b(whic)-34
+b(h)414 b(will)f(ease)h(dev)-34 b(elopmen)g(t)414 b(e\013orts)g(and)g
+(a)-34 b(v)g(oid)4400 56238 y(redundan)g(t)406 b(w)-34
+b(ork.)2994 58152 y FA(\017)800 b FC(Error)403 b(help)i(catalogs)4400
+60066 y(Curren)-34 b(tly)-101 b(,)392 b(the)d(help)g(for)g(errors)e(is)
+i(more)f(or)g(less)g(hardwired)i(in)-34 b(to)389 b Fu(latex.el)p
+FC(.)536 b(F)-101 b(or)389 b(supp)34 b(orting)4400 61527
+y(error)474 b(help)i(in)f(other)h(languages,)493 b(it)475
+b(w)-34 b(ould)477 b(b)34 b(e)475 b(sensible)g(to)h(instead)g(arrange)f
+(error)f(messages)4400 62988 y(in)521 b(language-sp)34
+b(eci\014c)521 b(\014les,)549 b(mak)-34 b(e)521 b(a)g(common)g(info)h
+(\014le)e(from)h(all)g(suc)-34 b(h)521 b(catalogs)g(in)g(a)g(giv)-34
+b(en)4400 64449 y(language)494 b(and)g(lo)34 b(ok)492
+b(the)h(error)g(texts)g(up)h(in)f(an)h(appropriate)f(index.)806
+b(The)494 b(user)f(w)-34 b(ould)494 b(then)4400 65911
+y(sp)34 b(ecify)346 b(a)h(preference)f(list)h(of)g(languages,)358
+b(and)348 b(the)f(errors)f(w)-34 b(ould)348 b(b)34 b(e)347
+b(lo)34 b(ok)-34 b(ed)346 b(up)i(in)f(the)g(catalogs)4400
+67372 y(in)404 b(sequence)g(un)-34 b(til)405 b(they)f(w)-34
+b(ere)404 b(iden)-34 b(ti\014ed.)2994 69286 y FA(\017)800
+b FC(Com)-34 b(bining)406 b(`)p Fu(docTeX)p FC(')f(with)g(RefT)20692
+69547 y(E)21366 69286 y(X)4400 71200 y(Macro)f(cross)g(references)f
+(should)i(also)f(b)34 b(e)404 b(usable)g(for)g(do)34
+b(cumen)-34 b(t)405 b(na)-34 b(vigation)405 b(using)g(RefT)47342
+71461 y(E)48016 71200 y(X.)p eop end
+%%Page: 119 124
+TeXDict begin 119 123 bop 2000 -1550 a FC(App)34 b(endix)405
+b(A:)e(Cop)-34 b(ying,)405 b(Changes,)g(Dev)-34 b(elopmen)g(t,)404
+b(F)-135 b(A)-34 b(Q,)405 b(T)-101 b(exinfo)404 b(Mo)34
+b(de)10519 b(119)2994 3985 y FA(\017)800 b FC(Fix)404
+b(remo)-34 b(v)g(e-st)g(yle)404 b(feature)4400 5714 y(Curren)-34
+b(tly)719 b Fu(TeX-remove-style)k FC(implemen)-34 b(tation)719
+b(isn't)f(go)34 b(o)g(d.)1480 b(It)718 b(is)g(common)h(practice)4400
+7175 y(that)j(ma)67 b(jor)722 b(mo)34 b(de)721 b(functions)h(directly)e
+(add)i(macros)f(and)h(en)-34 b(vironmen)g(ts)722 b(via)e
+Fu(TeX-add-)4400 8636 y(symbols)451 b FC(and)e Fu
+(LaTeX-add-environments)p FC(,)466 b(but)450 b(those)f(macros)f(and)h
+(en)-34 b(vironmen)g(ts)449 b(are)f(lost)4400 10097 y(once)550
+b Fu(TeX-remove-style)555 b FC(runs.)977 b(It)550 b(is)g(necessary)f
+(to)h(run)h(ma)67 b(jor)550 b(mo)34 b(de)550 b(function,)587
+b(b)-34 b(y)551 b(e.g.)4400 11559 y Fu(normal-mode)p
+FC(,)359 b(again)343 b(to)h(reco)-34 b(v)g(er)342 b(them,)356
+b(but)344 b(that)h(mak)-34 b(es)343 b(no)g(p)34 b(oin)-34
+b(t)345 b(in)e(running)h Fu(TeX-remove-)4400 13020 y(style)406
+b FC(itself)e(b)34 b(ecause)404 b(ma)67 b(jor)404 b(mo)34
+b(de)404 b(function)i(kills)d(all)g(bu\013er-lo)34 b(cal)404
+b(v)-67 b(ariables.)4400 14748 y(As)404 b(of)h(A)-34
+b(UCT)10904 15009 y(E)11578 14748 y(X)405 b(12.3,)e Fu
+(TeX-remove-style)410 b FC(is)404 b(no)g(longer)g(used)h(b)-34
+b(y)404 b(an)-34 b(y)405 b(other)f(co)34 b(des.)2994
+16477 y FA(\017)800 b FC(Do)34 b(cumen)-34 b(t)405 b
+Fu(LaTeX-insert-into-commments)p FC(,)414 b Fu
+(TeX-translate-location-hook)p FC(,)f(and)405 b(us-)4400
+17938 y(age)f(of)g(ConT)10762 18199 y(E)11437 17938 y(Xt)h(mo)34
+b(de.)2000 20466 y Fq(A.3.2)817 b(Wishlist)2994 22425
+y FA(\017)800 b FC(Simplify)561 b(to)34 b(ol)560 b(bar)h(implemen)-34
+b(tation.)1010 b(The)561 b(library)f Fu(toolbar-x.el)565
+b FC(w)-34 b(as)561 b(dev)-34 b(elop)34 b(ed)561 b(as)g(an)4400
+23886 y(abstraction)516 b(la)-34 b(y)g(er)516 b(to)f(absorb)i
+(di\013erence)d(b)34 b(et)-34 b(w)g(een)517 b(XEmacs)e(and)h
+Fr(GNU)g FC(Emacs.)872 b(No)-34 b(w)517 b(that)4400 25348
+y(XEmacs)370 b(is)g(no)h(longer)f(supp)34 b(orted,)378
+b(the)370 b(library)-101 b(,)376 b(together)371 b(with)g
+Fu(tex-bar.el)i FC(as)e(a)f(whole,)377 b(can)4400 26809
+y(b)34 b(e)404 b(m)-34 b(uc)g(h)405 b(simpli\014ed)f(\(or)h(ev)-34
+b(en)404 b(uni\014ed\).)2994 28537 y FA(\017)800 b FC(Do)34
+b(cumen)-34 b(tation)405 b(lo)34 b(okup)404 b(for)h(macros)4400
+30266 y(A)553 b(parser)g(could)g(gather)h(information)g(ab)34
+b(out)554 b(whic)-34 b(h)554 b(macros)e(are)h(de\014ned)h(in)f(whic)-34
+b(h)554 b(L)47183 30109 y Fv(a)47744 30266 y FC(T)48417
+30527 y(E)49091 30266 y(X)4400 31727 y(pac)-34 b(k)-67
+b(ages)544 b(and)h(store)g(the)f(information)i(in)e(a)h(hash)-34
+b(table)545 b(whic)-34 b(h)546 b(can)e(b)34 b(e)544 b(used)h(in)g(a)f
+(bac)-34 b(k)g(end)4400 33189 y(for)538 b Fu(TeX-doc)i
+FC(in)e(order)f(to)h(op)34 b(en)538 b(the)g(matc)-34
+b(hing)539 b(do)34 b(cumen)-34 b(tation)539 b(for)f(a)g(giv)-34
+b(en)538 b(macro.)938 b(The)4400 34650 y(information)352
+b(could)g(also)f(b)34 b(e)351 b(used)h(to)g(insert)g(an)f(appropriate)h
+(`)p Fu(\\usepackage)p FC(')j(statemen)-34 b(t)353 b(if)e(the)4400
+36111 y(user)480 b(tries)f(to)h(insert)g(a)f(macro)h(for)f(whic)-34
+b(h)481 b(the)f(resp)34 b(ectiv)-34 b(e)479 b(pac)-34
+b(k)-67 b(age)479 b(has)h(not)h(b)34 b(een)479 b(requested)4400
+37572 y(y)-34 b(et.)2994 39301 y FA(\017)800 b FC(Impro)-34
+b(v)g(emen)g(ts)405 b(to)g(error)e(rep)34 b(orting)4400
+41029 y(F)-101 b(ringe)404 b(indicators)g(for)g(errors)g(in)g(the)g
+(main)h(text)f(w)-34 b(ould)405 b(b)34 b(e)404 b(nice.)2994
+42758 y FA(\017)800 b FC(A)404 b(math)h(en)-34 b(try)404
+b(grid)4400 44487 y(A)385 b(separate)g(frame)g(with)h(a)f(table)g(of)g
+(math)h(c)-34 b(haracter)385 b(graphics)g(to)h(clic)-34
+b(k)384 b(on)h(in)g(order)g(to)g(insert)4400 45948 y(the)405
+b(resp)34 b(ectiv)-34 b(e)403 b(sequence)g(in)-34 b(to)405
+b(the)g(bu\013er)f(\(cf.)539 b(the)404 b(\\grid")g(of)h(`)p
+Fu(x-symbol)p FC('\).)2994 47677 y FA(\017)800 b FC(Crossreferencing)
+404 b(supp)34 b(ort)4400 49405 y(It)430 b(w)-34 b(ould)432
+b(b)34 b(e)430 b(nice)f(if)h(y)-34 b(ou)431 b(could)f(index)h(pro)34
+b(cess)429 b(y)-34 b(our)431 b(fa)-34 b(v)g(orite)430
+b(collection)f(of)i Fu(.dtx)h FC(\014les)e(\(suc)-34
+b(h)4400 50867 y(as)339 b(the)h(L)8168 50710 y Fv(a)8729
+50867 y FC(T)9402 51128 y(E)10075 50867 y(X)f(source\),)352
+b(just)340 b(call)e(a)h(command)h(on)f(arbitrary)g(con)-34
+b(trol)339 b(sequence,)351 b(and)340 b(get)f(either)4400
+52328 y(the)372 b Fr(D)-31 b(VI)371 b FC(view)-34 b(er)371
+b(op)34 b(ened)372 b(righ)-34 b(t)372 b(at)g(the)h(de\014nition)f(of)g
+(that)h(macro)e(\(using)i(Source)f(Sp)34 b(ecials\),)377
+b(or)4400 53789 y(the)405 b(source)e(co)34 b(de)404 b(of)g(the)h
+Fu(.dtx)g FC(\014le.)2994 55518 y FA(\017)800 b FC(Better)404
+b(plain)g(T)11861 55779 y(E)12535 55518 y(X)g(supp)34
+b(ort)4400 57246 y(F)-101 b(or)367 b(starters,)375 b
+Fu(LaTeX-math-mode)d FC(is)367 b(not)h(v)-34 b(ery)367
+b(L)27404 57089 y Fv(a)27965 57246 y FC(T)28638 57507
+y(E)29311 57246 y(X-sp)34 b(eci\014c)367 b(in)g(the)h(\014rst)g(place,)
+374 b(and)368 b(similar)4400 58708 y(holds)405 b(for)f(inden)-34
+b(tation)406 b(and)f(formatting.)2994 60436 y FA(\017)800
+b FC(P)-34 b(age)481 b(coun)-34 b(t)483 b(when)f(compiling)f(should)i
+(\(optionally\))f(go)f(to)h(mo)34 b(deline)481 b(of)g(the)h(windo)-34
+b(w)483 b(where)4400 61898 y(the)470 b(compilation)g(command)g(w)-34
+b(as)470 b(in)-34 b(v)g(ok)g(ed,)486 b(instead)471 b(of)e(the)h(output)
+i(windo)-34 b(w.)736 b(Suggested)471 b(b)-34 b(y)4400
+63359 y(Karsten)404 b(Tinnefeld)h Fu
+(tinnefeld@irb.informatik.uni-dortmund.de)p FC(.)2994
+65087 y FA(\017)800 b FC(Command)379 b(to)f(insert)g(a)f(macro)34
+b(de\014nition)378 b(in)g(the)g(pream)-34 b(ble,)383
+b(without)c(mo)-34 b(ving)378 b(p)34 b(oin)-34 b(t)379
+b(from)e(the)4400 66549 y(curren)-34 b(t)405 b(lo)34
+b(cation.)538 b(Suggested)405 b(b)-34 b(y)405 b Fu(")p
+FC(Je\013rey)e(C.)h(Ely)p Fu(")g(ely@nwu.edu)p FC(.)2994
+68277 y FA(\017)800 b FC(A)359 b(database)g(of)g(all)f(commands)i
+(de\014ned)f(in)g(all)f(st)-34 b(yle\014les.)523 b(When)359
+b(a)f(command)i(or)e(en)-34 b(vironmen)g(t)4400 69738
+y(gets)422 b(en)-34 b(tered)422 b(that)h(is)e(pro)-34
+b(vided)422 b(in)g(one)g(of)g(the)g(st)-34 b(yles,)426
+b(insert)c(the)g(appropriate)g Fu(\\usepackage)4400 71200
+y FC(in)404 b(the)h(pream)-34 b(ble.)p eop end
+%%Page: 120 125
+TeXDict begin 120 124 bop 2000 -1550 a FC(App)34 b(endix)405
+b(A:)e(Cop)-34 b(ying,)405 b(Changes,)g(Dev)-34 b(elopmen)g(t,)404
+b(F)-135 b(A)-34 b(Q,)405 b(T)-101 b(exinfo)404 b(Mo)34
+b(de)10519 b(120)2994 3985 y FA(\017)800 b FC(A)381 b(w)-34
+b(a)g(y)383 b(to)e(add)h(and)h(o)-34 b(v)g(erwrite)381
+b(math)h(mo)34 b(de)381 b(en)-34 b(tries)382 b(in)f(st)-34
+b(yle)381 b(\014les,)386 b(and)c(to)g(decide)e(where)i(they)4400
+5446 y(should)405 b(b)34 b(e.)538 b(Suggested)406 b(b)-34
+b(y)404 b(Remo)g(Badii)g Fu(Remo.Badii@psi.ch)p FC(.)2994
+7212 y FA(\017)800 b FC(Create)404 b(template)h(for)f(\(\014rst\))h
+(line)f(of)g(tabular)h(en)-34 b(vironmen)g(t.)2994 8977
+y FA(\017)800 b FC(I)312 b(think)h(prompting)g(for)f(the)h(master)f(is)
+g(the)h(in)-34 b(tended)314 b(b)34 b(eha)-34 b(viour.)508
+b(It)312 b(corresp)34 b(onds)312 b(to)h(a)f(`shared')4400
+10439 y(v)-67 b(alue)403 b(for)i Fu(TeX-master)p FC(.)4400
+12204 y(There)545 b(should)h(probably)f(b)34 b(e)545
+b(a)g(`none')g(v)-67 b(alue)544 b(whic)-34 b(h)546 b(w)-34
+b(ouldn't)546 b(query)e(for)i(the)f(master,)580 b(but)4400
+13665 y(instead)405 b(disable)f(all)f(features)i(that)g(relies)e(on)i
+Fu(TeX-master)p FC(.)4400 15431 y(This)373 b(default)g(v)-67
+b(alue)372 b(for)g Fu(TeX-master)k FC(could)c(then)i(b)34
+b(e)372 b(con)-34 b(troled)372 b(with)h(mapping)h(based)f(on)f(the)4400
+16892 y(extension.)2994 18658 y FA(\017)800 b FC(Use)404
+b(index)g(\014les)g(\(when)h(a)-34 b(v)-67 b(ailable\))404
+b(to)g(sp)34 b(eed)404 b(up)h Fs(C-c)g(C-m)h(include)g(RET)p
+FC(.)2994 20423 y FA(\017)800 b FC(Option)405 b(not)g(to)f(calculate)g
+(v)-34 b(ery)403 b(slo)-34 b(w)405 b(completions)f(lik)-34
+b(e)403 b(for)h Fs(C-c)i(C-m)f(include)h(RET)p FC(.)2994
+22189 y FA(\017)800 b FC(F)-101 b(on)-34 b(t)405 b(men)-34
+b(u)405 b(should)h(b)34 b(e)403 b(created)h(from)h Fu(TeX-font-list)p
+FC(.)2994 23955 y FA(\017)800 b FC(Installation)405 b(pro)34
+b(cedure)403 b(written)i(purely)f(in)g(emacs)g(lisp.)2994
+25720 y FA(\017)800 b FC(Included)405 b(P)-34 b(ostScript)405
+b(\014les)f(should)h(also)f(b)34 b(e)404 b(coun)-34 b(ted)405
+b(as)f(part)h(of)f(the)h(do)34 b(cumen)-34 b(t.)2994
+27486 y FA(\017)800 b FC(A)540 b(nice)g(hierarc)-34 b(hical)540
+b(b)-34 b(y-topic)541 b(organization)g(of)g(all)e(o\016cially)h(do)34
+b(cumen)-34 b(ted)541 b(L)42592 27329 y Fv(a)43153 27486
+y FC(T)43826 27747 y(E)44500 27486 y(X)f(macros,)4400
+28947 y(a)-34 b(v)-67 b(ailable)403 b(from)i(the)f(men)-34
+b(u)405 b(bar.)2994 30713 y FA(\017)800 b Fu(TeX-command-default)399
+b FC(should)393 b(b)34 b(e)392 b(set)g(from)g(the)h(master)f(\014le,)i
+(if)e(not)h(set)f(lo)34 b(cally)-101 b(.)533 b(Suggested)4400
+32174 y(b)-34 b(y)405 b(P)-34 b(eter)403 b(Whaite)h Fu
+(peta@cim.mcgill.ca)p FC(.)2994 33939 y FA(\017)800 b
+FC(Mak)-34 b(e)471 b(A)-34 b(UCT)11065 34200 y(E)11740
+33939 y(X)471 b(w)-34 b(ork)472 b(with)g(`)p Fu(crypt++)p
+FC('.)741 b(Suggested)473 b(b)-34 b(y)471 b(Chris)h(Mo)34
+b(ore)470 b Fu(Chris.Moore@src.)4400 35401 y(bae.co.uk)p
+FC(.)2994 37166 y FA(\017)800 b FC(Mak)-34 b(e)349 b(A)-34
+b(UCT)10943 37427 y(E)11618 37166 y(X)349 b(w)-34 b(ork)350
+b(with)g(`)p Fu(longlines)p FC('.)523 b(This)350 b(w)-34
+b(ould)350 b(also)g(apply)f(to)h Fw(p)-34 b(review-latex)p
+FC(,)359 b(though)4400 38627 y(it)404 b(migh)-34 b(t)405
+b(mak)-34 b(e)404 b(sense)g(to)h(unify)f(error)f(pro)34
+b(cessing)404 b(b)34 b(efore)404 b(attempting)i(this.)2994
+40393 y FA(\017)800 b FC(The)439 b(`)p Fu(Spell)p FC(')g(command)h
+(should)f(apply)g(to)f(all)g(\014les)h(in)f(a)g(do)34
+b(cumen)-34 b(t.)643 b(Ma)-34 b(yb)34 b(e)438 b(it)h(could)f(try)h(to)
+4400 41854 y(restrict)409 b(to)g(\014les)h(that)g(ha)-34
+b(v)g(e)410 b(b)34 b(een)409 b(mo)34 b(di\014ed)410 b(since)f(last)g
+(sp)34 b(ell)409 b(c)-34 b(hec)g(k?)554 b(Suggested)411
+b(b)-34 b(y)410 b(Ra)-34 b(vinder)4400 43315 y(Bh)g(um)g(bla)405
+b Fu(rbhumbla@ucsd.edu)p FC(.)2994 45081 y FA(\017)800
+b FC(Mak)-34 b(e)404 b Fu(.)g FC(c)-34 b(hec)g(k)404
+b(for)h(abbreviations)f(and)h(sen)-34 b(tences)405 b(ending)f(with)h
+(capital)f(letters.)2994 46847 y FA(\017)800 b FC(Use)440
+b(Emacs)f(19)h(minibu\013er)g(history)g(to)g(c)-34 b(ho)34
+b(ose)440 b(b)34 b(et)-34 b(w)g(een)441 b(preview)-34
+b(ers,)448 b(and)440 b(other)h(stu\013.)646 b(Sug-)4400
+48308 y(gested)404 b(b)-34 b(y)405 b(John)g(In)-34 b(terran)g(te)405
+b Fu(interran@uluru.Stanford.EDU)p FC(.)2994 50073 y
+FA(\017)800 b FC(Do)34 b(cumen)-34 b(tation)405 b(of)g(v)-67
+b(ariables)403 b(that)i(can)f(b)34 b(e)404 b(set)g(in)h(a)f(st)-34
+b(yle)404 b(ho)34 b(ok.)4400 51839 y(W)-101 b(e)375 b(need)g(a)h(list)f
+(of)g(what)i(can)e(safely)g(b)34 b(e)375 b(done)h(in)f(an)h(ordinary)f
+(st)-34 b(yle)375 b(ho)34 b(ok.)529 b(Y)-101 b(ou)376
+b(can)f(not)h(set)g(a)4400 53300 y(v)-67 b(ariable)376
+b(that)i(A)-34 b(UCT)14853 53561 y(E)15528 53300 y(X)377
+b(dep)34 b(ends)378 b(on,)k(unless)c(A)-34 b(UCT)30360
+53561 y(E)31034 53300 y(X)378 b(kno)-34 b(ws)378 b(that)g(it)f(has)g
+(to)h(run)g(the)f(st)-34 b(yle)4400 54761 y(ho)34 b(oks)404
+b(\014rst.)4400 56527 y(Here)f(is)h(the)h(start)f(of)h(suc)-34
+b(h)405 b(a)f(list.)4400 58597 y Fu(LaTeX-add-environments)4400
+60058 y(TeX-add-symbols)4400 61519 y(LaTeX-add-labels)4400
+62980 y(LaTeX-add-bibliographies)4400 64442 y(LaTeX-largest-level)2994
+65903 y FA(\017)800 b FC(Outline)404 b(should)h(b)34
+b(e)404 b(\(b)34 b(etter\))405 b(supp)34 b(orted)405
+b(in)f(T)26608 66164 y(E)27282 65903 y(X)g(mo)34 b(de.)4400
+67668 y(A)-34 b(t)405 b(least,)f(supp)34 b(ort)405 b(headers,)f
+(trailers,)f(as)h(w)-34 b(ell)404 b(as)g Fu(TeX-outline-extra)p
+FC(.)2994 69434 y FA(\017)800 b Fu(TeX-header-start)410
+b FC(and)405 b Fu(TeX-trailer-end)p FC(.)4400 71200 y(W)-101
+b(e)404 b(migh)-34 b(t)405 b(w)-34 b(an)g(t)406 b(these,)e(just)h(for)f
+(fun)h(\(and)h(outlines\))p eop end
+%%Page: 121 126
+TeXDict begin 121 125 bop 2000 -1550 a FC(App)34 b(endix)405
+b(A:)e(Cop)-34 b(ying,)405 b(Changes,)g(Dev)-34 b(elopmen)g(t,)404
+b(F)-135 b(A)-34 b(Q,)405 b(T)-101 b(exinfo)404 b(Mo)34
+b(de)10519 b(121)2994 3985 y FA(\017)800 b FC(Plain)404
+b(T)8255 4246 y(E)8929 3985 y(X)g(and)h(L)12921 3828
+y Fv(a)13482 3985 y FC(T)14155 4246 y(E)14828 3985 y(X)f(sp)34
+b(eci\014c)404 b(header)g(and)h(trailer)e(expressions.)4400
+5908 y(W)-101 b(e)477 b(should)h(ha)-34 b(v)g(e)478 b(a)f(w)-34
+b(a)g(y)478 b(to)g(globally)f(sp)34 b(ecify)476 b(the)i(default)h(v)-67
+b(alue)476 b(of)i(the)g(header)f(and)h(trailer)4400 7370
+y(regexps.)2994 9293 y FA(\017)800 b FC(Get)404 b(closer)f(to)i
+(original)e Fu(TeX-mode)k FC(k)-34 b(eybindings.)4400
+11216 y(A)713 b(third)i(initialization)e(\014le)g(\()p
+Fu(tex-mode.el)p FC(\))718 b(con)-34 b(taining)715 b(an)f(em)-34
+b(ulator)714 b(of)g(the)g(standard)4400 12677 y Fu(TeX-mode)407
+b FC(w)-34 b(ould)405 b(help)g(con)-34 b(vince)403 b(some)h(p)34
+b(eople)404 b(to)h(c)-34 b(hange)404 b(to)h(A)-34 b(UCT)38116
+12938 y(E)38791 12677 y(X.)2994 14601 y FA(\017)800 b
+FC(Use)561 b(mark)-34 b(ers)562 b(in)f Fu(TeX-error-list)567
+b FC(to)562 b(remem)-34 b(b)34 b(er)560 b(bu\013er)i(p)34
+b(ositions)562 b(in)g(order)f(to)h(b)34 b(e)561 b(more)4400
+16062 y(robust)405 b(with)g(regard)f(to)g(line)g(n)-34
+b(um)g(b)34 b(ers)405 b(and)g(c)-34 b(hanged)405 b(\014les.)2994
+17985 y FA(\017)800 b FC(Finish)382 b(the)g(T)-101 b(exinfo)381
+b(mo)34 b(de.)531 b(F)-101 b(or)382 b(one)f(thing,)387
+b(man)-34 b(y)382 b(T)-101 b(exinfo)381 b(mo)34 b(de)382
+b(commands)g(do)g(not)g(accept)4400 19447 y(braces)404
+b(around)h(their)f(argumen)-34 b(ts.)2994 21370 y FA(\017)800
+b FC(Ho)34 b(ok)404 b(up)h(the)f(letter)g(en)-34 b(vironmen)g(t)405
+b(with)g Fu(bbdb.el)p FC(.)2000 24287 y Fq(A.3.3)817
+b(Bugs)2994 26246 y FA(\017)800 b FC(The)1083 b(st)-34
+b(yle)1082 b(ho)34 b(oks)1083 b(automatically)f(generated)h(b)-34
+b(y)1083 b(parsing)f(\014les)h(for)f Fu(example.dtx)p
+FC(,)4400 27707 y Fu(example.sty)p FC(,)352 b Fu(example.drv)339
+b FC(and)c Fu(example.bib)k FC(all)334 b(clash.)516 b(Bad.)f(Clash)335
+b(with)h(hand-written)4400 29168 y(st)-34 b(yle)404 b(ho)34
+b(oks)404 b(should)h(b)34 b(e)404 b(remo)-34 b(v)g(ed)404
+b(b)-34 b(y)405 b(dialect)e(discrimination)i(|)f(to)g(b)34
+b(e)404 b(c)-34 b(hec)g(k)g(ed.)2994 31092 y FA(\017)800
+b Fs(C-c)405 b(`)g FC(should)g(alw)-34 b(a)g(ys)404 b(sta)-34
+b(y)405 b(in)f(the)h(curren)-34 b(t)404 b(windo)-34 b(w,)406
+b(also)e(when)h(it)f(\014nds)h(a)f(new)h(\014le.)2994
+33015 y FA(\017)800 b FC(Do)512 b(not)h(o)-34 b(v)g(erwrite)512
+b(emacs)g(w)-34 b(arnings)513 b(ab)34 b(out)513 b(existing)f(auto-sa)
+-34 b(v)g(e)514 b(\014les)e(when)h(loading)f(a)g(new)4400
+34476 y(\014le.)2994 36400 y FA(\017)800 b FC(Ma)-34
+b(yb)34 b(e)1088 b(the)g(regexp)f(for)h(matc)-34 b(hing)1088
+b(a)g(T)27262 36661 y(E)27936 36400 y(X)f(sym)-34 b(b)34
+b(ol)1088 b(during)g(parsing)h(should)f(b)34 b(e)4400
+37861 y(`)p Fu("\\\\\\\\\\\\\([a-zA-Z]+\\\\|.\\\\\)")p
+FC(')702 b(|)694 b Fu(thiemann@informatik.uni-tuebingen.de)707
+b FC(P)-34 b(eter)4400 39322 y(Thiemann.)2994 41245 y
+FA(\017)800 b FC(A)-34 b(UCT)7732 41506 y(E)8407 41245
+y(X)404 b(should)h(not)g(parse)f(v)-34 b(erbatim)404
+b(en)-34 b(vironmen)g(ts.)2994 43169 y FA(\017)800 b
+FC(Mak)-34 b(e)415 b(`)p Fu(`)p FC(')f(c)-34 b(hec)g(k)415
+b(for)g(math)h(con)-34 b(text)415 b(in)g Fu(LaTeX-math-mode)p
+FC(.)576 b(and)416 b(simply)f(self)f(insert)h(if)g(not)h(in)4400
+44630 y(a)404 b(math)h(con)-34 b(text.)2994 46553 y FA(\017)800
+b FC(Mak)-34 b(e)434 b Fu(TeX-insert-dollar)441 b FC(more)434
+b(robust.)631 b(Curren)-34 b(tly)434 b(it)h(can)g(b)34
+b(e)434 b(fo)34 b(oled)434 b(b)-34 b(y)435 b(`)p Fu(\\mbox)p
+FC(''es)g(and)4400 48014 y(escap)34 b(ed)404 b(double)h(dollar)e(for)i
+(example.)2994 49938 y FA(\017)800 b FC(Correct)404 b(inden)-34
+b(tation)406 b(for)e(tabular,)h(tabbing,)g(table,)f(math,)g(and)h(arra)
+-34 b(y)404 b(en)-34 b(vironmen)g(ts.)2000 53538 y FB(A.4)897
+b(F)-149 b(requen)-50 b(tly)600 b(Ask)-50 b(ed)599 b(Questions)2657
+55663 y FC(1.)800 b(Something)405 b(is)f(not)h(w)-34
+b(orking)405 b(correctly)-101 b(.)536 b(What)405 b(should)g(I)f(do?)
+4400 57587 y(W)-101 b(ell,)328 b(y)-34 b(ou)311 b(migh)-34
+b(t)311 b(ha)-34 b(v)g(e)311 b(guessed)g(it,)329 b(the)311
+b(\014rst)g(place)f(to)h(lo)34 b(ok)310 b(is)g(in)h(the)g(a)-34
+b(v)-67 b(ailable)309 b(do)34 b(cumen)-34 b(tation)4400
+59048 y(pac)g(k)-67 b(aged)443 b(with)g(A)-34 b(UCT)15755
+59309 y(E)16430 59048 y(X.)653 b(This)443 b(could)g(b)34
+b(e)442 b(the)h(release)e(notes)i(\(in)g(the)g Fu(RELEASE)i
+FC(\014le\))d(or)g(the)4400 60509 y(news)341 b(section)g(of)g(the)g
+(man)-34 b(ual)342 b(in)f(case)f(y)-34 b(ou)341 b(are)f(exp)34
+b(eriencing)340 b(problems)h(after)g(an)g(upgrade,)353
+b(the)4400 61970 y Fu(INSTALL)457 b FC(\014le)e(in)g(case)g(y)-34
+b(ou)455 b(are)g(ha)-34 b(ving)455 b(problems)g(with)h(the)g
+(installation,)468 b(the)455 b(section)g(ab)34 b(out)4400
+63432 y(bugs)313 b(in)f(the)g(man)-34 b(ual)313 b(in)f(case)g(y)-34
+b(ou)312 b(encoun)-34 b(tered)313 b(a)f(bug)h(or)f(the)g(relev)-67
+b(an)-34 b(t)311 b(sections)i(in)f(the)g(man)-34 b(ual)4400
+64893 y(for)404 b(other)h(related)e(problems.)4400 66816
+y(If)442 b(this)g(did)g(not)h(help,)451 b(y)-34 b(ou)442
+b(can)g(send)h(a)f(bug)g(rep)34 b(ort)442 b(to)g(the)g(A)-34
+b(UCT)36905 67077 y(E)37580 66816 y(X)442 b(bug)g(rep)34
+b(orting)442 b(list)g(b)-34 b(y)4400 68277 y(using)525
+b(the)f(command)h Fs(M-x)405 b(TeX-submit-bug-report)411
+b(RET)p FC(.)899 b(But)524 b(b)34 b(efore)524 b(y)-34
+b(ou)524 b(do)g(this,)554 b(y)-34 b(ou)4400 69738 y(can)379
+b(try)g(to)g(get)g(more)f(information)i(ab)34 b(out)379
+b(the)h(problem)e(at)i(hand)f(whic)-34 b(h)380 b(migh)-34
+b(t)380 b(also)f(help)f(y)-34 b(ou)4400 71200 y(lo)34
+b(cate)403 b(the)i(cause)f(of)g(the)h(error)e(y)-34 b(ourself.)p
+eop end
+%%Page: 122 127
+TeXDict begin 122 126 bop 2000 -1550 a FC(App)34 b(endix)405
+b(A:)e(Cop)-34 b(ying,)405 b(Changes,)g(Dev)-34 b(elopmen)g(t,)404
+b(F)-135 b(A)-34 b(Q,)405 b(T)-101 b(exinfo)404 b(Mo)34
+b(de)10519 b(122)4400 3985 y(First,)371 b(y)-34 b(ou)364
+b(can)f(try)g(to)g(generate)g(a)g(so-called)g(bac)-34
+b(ktrace)363 b(whic)-34 b(h)364 b(sho)-34 b(ws)364 b(the)g(functions)h
+(in)-34 b(v)g(olv)g(ed)4400 5446 y(in)484 b(a)g(program)g(error.)777
+b(In)484 b(order)g(to)g(do)g(this,)505 b(start)484 b(Emacs)g(with)h
+(the)f(command)h(line)f(`)p Fu(emacs)4400 6907 y(--debug-init)p
+FC(')408 b(and/or)d(put)g(the)g(line)7600 8798 y Fu(\(setq)638
+b(debug-on-error)j(t\))4400 10689 y FC(as)433 b(the)g(\014rst)h(line)e
+(in)-34 b(to)434 b(y)-34 b(our)433 b(init)g(\014le.)624
+b(After)433 b(Emacs)g(has)g(started,)440 b(y)-34 b(ou)434
+b(can)f(load)g(a)f(\014le)h(whic)-34 b(h)4400 12151 y(triggers)412
+b(the)g(error)g(and)h(a)f(new)h(windo)-34 b(w)414 b(should)f(p)34
+b(op)413 b(up)g(sho)-34 b(wing)413 b(the)g(bac)-34 b(ktrace.)563
+b(If)412 b(y)-34 b(ou)413 b(get)4400 13612 y(suc)-34
+b(h)405 b(a)f(bac)-34 b(ktrace,)404 b(please)g(include)g(it)g(in)g(the)
+g(bug)h(rep)34 b(ort.)4400 15503 y(Second,)499 b(y)-34
+b(ou)481 b(can)f(try)g(to)g(\014gure)g(out)h(if)f(something)h(in)f(y)
+-34 b(our)480 b(p)34 b(ersonal)480 b(or)g(site)g(con\014guration)4400
+16964 y(triggers)410 b(the)h(error)e(b)-34 b(y)411 b(starting)g(Emacs)g
+(without)h(suc)-34 b(h)411 b(customizations.)558 b(Y)-101
+b(ou)411 b(can)g(do)g(this)g(b)-34 b(y)4400 18425 y(in)g(v)g(oking)334
+b(Emacs)f(with)i(the)f(command)g(line)f(`)p Fu(emacs)405
+b(-q)g(-no-site-file)k(-l)c(auctex)p FC('.)516 b(The)334
+b Fu(-l)4400 19886 y FC(option)351 b(loads)e Fu(auctex.el)k
+FC(whic)-34 b(h)351 b(y)-34 b(ou)350 b(normally)f(do)h(in)g(y)-34
+b(our)349 b(init)h(\014le.)520 b(After)350 b(y)-34 b(ou)350
+b(ha)-34 b(v)g(e)350 b(started)4400 21347 y(Emacs)343
+b(lik)-34 b(e)343 b(this,)356 b(y)-34 b(ou)343 b(can)h(load)f(the)h
+(\014le)f(triggering)g(the)h(error.)517 b(If)344 b(ev)-34
+b(erything)343 b(is)g(w)-34 b(orking)344 b(no)-34 b(w,)4400
+22809 y(y)g(ou)414 b(kno)-34 b(w)414 b(that)h(y)-34 b(ou)413
+b(ha)-34 b(v)g(e)414 b(to)g(searc)-34 b(h)413 b(either)g(in)h(the)f
+(site)h(con\014guration)g(\014le)f(or)h(y)-34 b(our)413
+b(p)34 b(ersonal)4400 24270 y(init)404 b(\014le)g(for)g(statemen)-34
+b(ts)406 b(related)e(to)g(the)h(problem.)2657 26161 y(2.)800
+b(What)405 b(v)-34 b(ersions)404 b(of)g(Emacs)g(are)g(supp)34
+b(orted?)4400 28052 y(A)-34 b(UCT)7732 28313 y(E)8407
+28052 y(X)417 b(w)-34 b(as)418 b(tested)f(with)h(GNU)404
+b(Emacs)g(24.3.)577 b(Older)417 b(v)-34 b(ersions)416
+b(ma)-34 b(y)417 b(w)-34 b(ork)418 b(but)g(are)e(unsup-)4400
+29513 y(p)34 b(orted.)2657 31404 y(3.)800 b(What)405
+b(should)g(I)f(do)g(when)h Fu(./configure)j FC(do)34
+b(es)404 b(not)h(\014nd)g(programs)g(lik)-34 b(e)403
+b Fu(latex)p FC(?)4400 33295 y(This)536 b(is)f(problem)g(often)h
+(encoun)-34 b(tered)536 b(on)g(Windo)-34 b(ws.)933 b(Mak)-34
+b(e)535 b(sure)g(that)i(the)e Fu(PATH)i FC(en)-34 b(viron-)4400
+34756 y(men)g(t)473 b(v)-67 b(ariable)470 b(includes)i(the)g
+(directories)f(con)-34 b(taining)473 b(the)g(relev)-67
+b(an)-34 b(t)471 b(programs,)488 b(as)472 b(describ)34
+b(ed)4400 36217 y(in)404 b(Section)h(\\Installation)f(under)h(MS)g
+(Windo)-34 b(ws")405 b(in)f Ft(the)h(A)-34 b(UCT)35426
+36478 y(E)36100 36217 y(X)404 b(man)-34 b(ual)48 b FC(.)2657
+38108 y(4.)800 b(Wh)-34 b(y)404 b(do)34 b(esn't)405 b(the)f
+(completion,)g(st)-34 b(yle)404 b(\014le,)g(or)g(m)-34
+b(ulti\014le)404 b(stu\013)h(w)-34 b(ork?)4400 39999
+y(It)404 b(m)-34 b(ust)406 b(b)34 b(e)403 b(enabled)i(\014rst,)f
+(insert)g(this)h(in)f(y)-34 b(our)404 b(init)h(\014le:)7600
+41890 y Fu(\(setq-default)641 b(TeX-master)f(nil\))7600
+43351 y(\(setq)e(TeX-parse-self)j(t\))7600 44812 y(\(setq)d
+(TeX-auto-save)j(t\))4400 46703 y FC(Read)565 b(also)g(the)g(c)-34
+b(hapters)566 b(ab)34 b(out)565 b(parsing)h(and)f(m)-34
+b(ulti\014le)565 b(do)34 b(cumen)-34 b(ts)567 b(in)d(the)i(man)-34
+b(ual.)1021 b(See)4400 48164 y(Section)404 b(5.3)g([P)-34
+b(arsing)404 b(Files],)f(page)i(71,)e(and)i(Section)g(5.2)f
+([Multi\014le],)f(page)h(69.)2657 50055 y(5.)800 b(Wh)-34
+b(y)404 b(do)34 b(esn't)405 b Fu(TeX-save-document)410
+b FC(w)-34 b(ork?)4400 51946 y Fu(TeX-check-path)409
+b FC(has)c(to)f(con)-34 b(tain)405 b Fu("./")h FC(somewhere.)2657
+53837 y(6.)800 b(Wh)-34 b(y)404 b(is)g(the)h(information)g(in)f
+Fu(foo.tex)i FC(forgotten)g(when)f(I)e(sa)-34 b(v)g(e)405
+b Fu(foo.bib)p FC(?)4400 55728 y(F)-101 b(or)433 b(v)-67
+b(arious)433 b(reasons,)441 b(A)-34 b(UCT)18750 55989
+y(E)19425 55728 y(X)433 b(ignores)h(the)f(extension)h(when)h(it)e
+(stores)h(information)g(ab)34 b(out)4400 57189 y(a)521
+b(\014le,)550 b(so)522 b(y)-34 b(ou)521 b(should)i(use)e(unique)h(base)
+f(names)h(for)f(y)-34 b(our)522 b(\014les.)889 b(E.g.)521
+b(rename)g Fu(foo.bib)j FC(to)4400 58651 y Fu(foob.bib)p
+FC(.)2657 60542 y(7.)800 b(Wh)-34 b(y)404 b(do)34 b(esn't)405
+b(A)-34 b(UCT)14877 60803 y(E)15552 60542 y(X)404 b(signal)g(when)h
+(pro)34 b(cessing)403 b(a)i(do)34 b(cumen)-34 b(t)405
+b(is)f(done?)4400 62433 y(If)279 b(the)g(message)g(in)g(the)g
+(minibu\013er)g(sta)-34 b(ys)280 b Fu(")p FC(T)-34 b(yp)34
+b(e)279 b(`C-c)g(C-l')f(to)i(displa)-34 b(y)279 b(results)g(of)g
+(compilation.)p Fu(")p FC(,)4400 63894 y(y)-34 b(ou)340
+b(probably)g(ha)-34 b(v)g(e)340 b(a)f(miscon\014guration)i(in)f(y)-34
+b(our)339 b(init)h(\014le)f(\()p Fu(.emacs)p FC(,)355
+b Fu(init.el)342 b FC(or)d(similar\).)517 b(T)-101 b(o)4400
+65355 y(trac)-34 b(k)470 b(this)i(do)-34 b(wn)472 b(either)e(searc)-34
+b(h)470 b(in)h(the)g(`)p Fu(*Messages*)p FC(')i(bu\013er)e(for)g(an)g
+(error)e(message)i(or)f(put)4400 66816 y Fu(\(setq)406
+b(debug-on-error)j(t\))426 b FC(as)f(the)h(\014rst)g(line)f(in)-34
+b(to)426 b(y)-34 b(our)425 b(init)h(\014le,)k(restart)425
+b(Emacs)h(and)g(op)34 b(en)4400 68277 y(a)407 b(L)5735
+68120 y Fv(a)6296 68277 y FC(T)6969 68538 y(E)7643 68277
+y(X)h(\014le.)548 b(Emacs)407 b(will)g(complain)h(loudly)f(b)-34
+b(y)408 b(op)34 b(ening)408 b(a)f(debugging)i(bu\013er)f(as)f(so)34
+b(on)408 b(as)g(an)4400 69738 y(error)448 b(o)34 b(ccurs.)672
+b(The)450 b(information)g(in)f(the)g(debugging)h(bu\013er)f(can)h(help)
+f(y)-34 b(ou)449 b(\014nd)h(the)g(cause)f(of)4400 71200
+y(the)405 b(error)e(in)h(y)-34 b(our)404 b(init)g(\014le.)p
+eop end
+%%Page: 123 128
+TeXDict begin 123 127 bop 2000 -1550 a FC(App)34 b(endix)405
+b(A:)e(Cop)-34 b(ying,)405 b(Changes,)g(Dev)-34 b(elopmen)g(t,)404
+b(F)-135 b(A)-34 b(Q,)405 b(T)-101 b(exinfo)404 b(Mo)34
+b(de)10519 b(123)2657 3985 y(8.)800 b(Wh)-34 b(y)404
+b(do)34 b(es)404 b Fu(TeX-next-error)409 b FC(\()p Fs(C-c)d(`)p
+FC(\))f(fail?)4400 5679 y(If)411 b Fu(TeX-file-line-error)418
+b FC(is)411 b(set)h(to)f(nil)g(\(not)i(the)e(default\),)j(these)e(sort)
+f(of)h(failures)f(migh)-34 b(t)412 b(b)34 b(e)4400 7141
+y(related)350 b(to)h(the)f(the)h(fact)g(that)g(when)g(writing)g(the)f
+(log)g(\014le,)361 b(T)32882 7402 y(E)33556 7141 y(X)350
+b(puts)h(information)g(related)f(to)h(a)4400 8602 y(\014le,)375
+b(including)368 b(error)f(messages,)375 b(b)34 b(et)-34
+b(w)g(een)370 b(a)e(pair)g(of)g(paren)-34 b(theses.)528
+b(In)368 b(this)h(scenario)e(A)-34 b(UCT)48416 8863 y(E)49091
+8602 y(X)4400 10063 y(determines)436 b(the)h(\014le)f(where)g(the)g
+(error)f(happ)34 b(ened)438 b(b)-34 b(y)436 b(parsing)h(the)f(log)g
+(\014le)g(and)h(coun)-34 b(ting)437 b(the)4400 11524
+y(paren)-34 b(theses.)540 b(This)404 b(can)g(fail)g(when)h(there)f(are)
+g(other,)g(un)-34 b(balanced)406 b(paren)-34 b(theses)405
+b(presen)-34 b(t.)4400 13219 y(Activ)-67 b(ating)563
+b(so-called)f(`)p Fu(file:line:error)p FC(')567 b(messages)c(for)g(the)
+g(log)g(\014le)f(usually)h(solv)-34 b(es)562 b(this)4400
+14680 y(issue,)453 b(as)444 b(these)g(kind)g(of)g(messages)g(are)f(are)
+g(easier)g(to)h(parse;)463 b(ho)-34 b(w)g(ev)g(er,)454
+b(they)444 b(ma)-34 b(y)444 b(lac)-34 b(k)443 b(some)4400
+16141 y(details.)518 b(Activ)-67 b(ation)342 b(can)g(b)34
+b(e)341 b(done)i(either)e(in)h(the)g(con\014guration)i(of)e(y)-34
+b(our)342 b(T)39868 16402 y(E)40542 16141 y(X)g(system)g(\(consult)4400
+17602 y(its)288 b(man)-34 b(ual)288 b(to)g(see)e(where)i(this)g(is\))f
+(or)g(b)-34 b(y)288 b(simply)f(k)-34 b(eeping)287 b(the)h(v)-67
+b(ariable)286 b Fu(TeX-file-line-error)4400 19063 y FC(to)405
+b(the)f(default)h(v)-67 b(alue)403 b(of)i(non-nil.)2657
+20758 y(9.)800 b(What)405 b(do)34 b(es)404 b(A)-34 b(UC)405
+b(stand)g(for?)4400 22452 y(A)-34 b(UCT)7732 22713 y(E)8407
+22452 y(X)459 b(came)h(in)-34 b(to)460 b(b)34 b(eing)460
+b(at)g(Aalb)34 b(org)459 b(Univ)-34 b(ersit)g(y)460 b(in)g(Denmark.)705
+b(Bac)-34 b(k)459 b(then)h(the)g(Danish)4400 23913 y(name)404
+b(of)h(the)f(univ)-34 b(ersit)g(y)405 b(w)-34 b(as)405
+b(Aalb)34 b(org)404 b(Univ)-34 b(ersitetscen)g(ter;)403
+b(A)-34 b(UC)405 b(for)g(short.)2000 26926 y FB(A.5)897
+b(F)-149 b(eatures)599 b(sp)50 b(eci\014c)598 b(to)g(A)-50
+b(UCT)26237 27280 y(E)27191 26926 y(X's)598 b(T)-149
+b(exinfo)598 b(ma)100 b(jor)598 b(mo)50 b(de)2000 29051
+y FC(A)-34 b(UCT)5332 29312 y(E)6007 29051 y(X)527 b(includes)g(a)g(ma)
+67 b(jor)528 b(mo)34 b(de)527 b(for)h(editting)g(T)-101
+b(exinfo)527 b(\014les.)908 b(This)528 b(ma)67 b(jor)527
+b(mo)34 b(de)528 b(is)f(not)g(the)2000 30512 y(same)391
+b(mo)34 b(de)391 b(as)f(the)i(nativ)-34 b(e)391 b(T)-101
+b(exinfo)391 b(mo)34 b(de)391 b(\(see)g(Section)g(\\T)-101
+b(exinfo)391 b(Mo)34 b(de")391 b(in)g Ft(T)-101 b(exinfo)61
+b FC(\))391 b(of)g(Emacs,)2000 31973 y(although)350 b(they)g(ha)-34
+b(v)g(e)349 b(the)g(same)g(name.)521 b(Ho)-34 b(w)g(ev)g(er,)360
+b(A)-34 b(UCT)29617 32234 y(E)30292 31973 y(X)349 b(still)f(relies)g
+(on)h(a)g(n)-34 b(um)g(b)34 b(er)350 b(of)f(functions)2000
+33435 y(from)404 b(the)h(nativ)-34 b(e)404 b(T)-101 b(exinfo)405
+b(mo)34 b(de.)3660 35129 y(The)505 b(follo)-34 b(wing)504
+b(text)g(describ)34 b(es)503 b(whic)-34 b(h)504 b(functionalit)-34
+b(y)505 b(is)f(o\013ered)f(b)-34 b(y)504 b(A)-34 b(UCT)40609
+35390 y(E)41284 35129 y(X)503 b(and)i(whic)-34 b(h)505
+b(b)-34 b(y)2000 36590 y(the)436 b(nativ)-34 b(e)436
+b(T)-101 b(exinfo)436 b(mo)34 b(de.)633 b(This)436 b(should)h(enable)f
+(y)-34 b(ou)436 b(to)g(decide)f(when)i(to)f(consult)g(the)g(A)-34
+b(UCT)48416 36851 y(E)49091 36590 y(X)2000 38051 y(man)g(ual)313
+b(and)g(when)g(the)f(man)-34 b(ual)313 b(of)g(the)f(nativ)-34
+b(e)312 b(mo)34 b(de.)508 b(And)313 b(in)f(case)g(y)-34
+b(ou)312 b(are)g(a)g(seasoned)g(user)g(of)g(the)2000
+39513 y(nativ)-34 b(e)409 b(mo)34 b(de,)410 b(the)f(information)h
+(should)g(help)f(y)-34 b(ou)410 b(to)f(swiftly)g(get)g(to)h(kno)-34
+b(w)409 b(the)h(A)-34 b(UCT)44201 39774 y(E)44875 39513
+y(X-sp)34 b(eci\014c)2000 40974 y(commands.)2000 43433
+y Fq(A.5.1)817 b(Ho)-45 b(w)546 b(A)-45 b(UCT)14875 43756
+y(E)15743 43433 y(X)545 b(and)h(the)g(nativ)-45 b(e)544
+b(mo)45 b(de)546 b(w)-45 b(ork)545 b(together)2000 45392
+y FC(In)564 b(a)h(n)-34 b(utshell)565 b(the)g(split)f(b)34
+b(et)-34 b(w)g(een)566 b(A)-34 b(UCT)22839 45653 y(E)23513
+45392 y(X)565 b(T)-101 b(exinfo)564 b(mo)34 b(de,)604
+b(and)565 b(nativ)-34 b(e)565 b(T)-101 b(exinfo)565 b(mo)34
+b(de)564 b(is)g(as)2000 46853 y(follo)-34 b(ws:)2994
+48548 y FA(\017)800 b FC(Most)601 b(of)g(the)g(editing)g(\(en)-34
+b(vironmen)g(t)602 b(creation,)649 b(commen)-34 b(ting,)650
+b(fon)-34 b(t)602 b(command)f(insertions\))4400 50009
+y(and/or)430 b(pro)34 b(cessing)428 b(commands)i(\(e.g.)f(compiling)f
+(or)h(prin)-34 b(ting\))430 b(whic)-34 b(h)430 b(are)f(a)-34
+b(v)-67 b(ailable)428 b(in)h(other)4400 51470 y(A)-34
+b(UCT)7732 51731 y(E)8407 51470 y(X)404 b(mo)34 b(des)404
+b(are)g(also)g(handled)h(b)-34 b(y)404 b(A)-34 b(UCT)27513
+51731 y(E)28188 51470 y(X)404 b(in)g(T)-101 b(exinfo)405
+b(mo)34 b(de.)2994 53164 y FA(\017)800 b FC(T)-101 b(exinfo-related)316
+b(features)g(\(e.g.)f(info)h(no)34 b(de)315 b(link)-67
+b(age)315 b(or)g(men)-34 b(u)316 b(creation\))g(rely)e(on)i(the)g
+(commands)4400 54626 y(pro)-34 b(vided)283 b(b)-34 b(y)283
+b(the)f(nativ)-34 b(e)283 b(T)-101 b(exinfo)283 b(mo)34
+b(de.)498 b(A)-34 b(UCT)27558 54886 y(E)28232 54626 y(X)283
+b(pro)-34 b(vides)282 b(the)h(k)-34 b(ey)282 b(bindings)i(to)e(reac)-34
+b(h)283 b(these)4400 56087 y(functions,)342 b(k)-34 b(eeping)325
+b(the)h(same)f(k)-34 b(eys)324 b(as)h(in)h(nativ)-34
+b(e)325 b(T)-101 b(exinfo)325 b(whenev)-34 b(er)325 b(p)34
+b(ossible,)341 b(or)325 b(similar)f(ones)4400 57548 y(otherwise.)2000
+60007 y Fq(A.5.2)817 b(Where)546 b(the)f(nativ)-45 b(e)545
+b(mo)45 b(de)545 b(is)h(sup)45 b(erseded)2000 61966 y
+FC(This)304 b(section)f(is)g(directed)f(to)i(users)f(of)h(the)f(nativ)
+-34 b(e)303 b(T)-101 b(exinfo)304 b(mo)34 b(de)303 b(switc)-34
+b(hing)304 b(to)g(A)-34 b(UCT)42787 62227 y(E)43461 61966
+y(X.)505 b(It)303 b(follo)-34 b(ws)2000 63427 y(the)475
+b(summary)g(of)g(the)g(nativ)-34 b(e)474 b(mo)34 b(de)475
+b(\(see)f(Section)h(\\T)-101 b(exinfo)475 b(Mo)34 b(de)474
+b(Summary")h(in)g Ft(T)-101 b(exinfo)61 b FC(\))475 b(and)2000
+64889 y(lists)404 b(whic)-34 b(h)405 b(of)g(its)f(commands)h(are)e(no)i
+(longer)f(of)g(use.)2000 66816 y(Insert)g(commands)8400
+68277 y(In)360 b(the)g(nativ)-34 b(e)360 b(T)-101 b(exinfo)359
+b(mo)34 b(de,)369 b(frequen)-34 b(tly)359 b(used)h(T)-101
+b(exinfo)360 b(commands)h(can)e(b)34 b(e)360 b(inserted)8400
+69738 y(with)411 b(k)-34 b(ey)409 b(bindings)i(of)f(the)h(form)f
+Fs(C-c)405 b(C-c)g(k)410 b FC(where)g Ft(k)483 b FC(di\013ers)410
+b(for)g(eac)-34 b(h)410 b(T)-101 b(exinfo)410 b(com-)8400
+71200 y(mand;)405 b Fs(c)f FC(inserts)g Fu(@code)p FC(,)i
+Fs(d)e FC(inserts)g Fu(@dfn)p FC(,)i Fs(k)e Fu(@kbd)p
+FC(,)h(etc.)p eop end
+%%Page: 124 129
+TeXDict begin 124 128 bop 2000 -1550 a FC(App)34 b(endix)405
+b(A:)e(Cop)-34 b(ying,)405 b(Changes,)g(Dev)-34 b(elopmen)g(t,)404
+b(F)-135 b(A)-34 b(Q,)405 b(T)-101 b(exinfo)404 b(Mo)34
+b(de)10519 b(124)8400 3985 y(In)301 b(A)-34 b(UCT)13144
+4246 y(E)13819 3985 y(X)301 b(commands)h(are)e(inserted)h(with)h(the)g
+(k)-34 b(ey)300 b(binding)i Fs(C-c)405 b(C-m)302 b FC(instead)g(whic)
+-34 b(h)8400 5446 y(prompts)333 b(for)g(the)g(macro)e(to)i(b)34
+b(e)332 b(inserted.)515 b(F)-101 b(or)332 b(fon)-34 b(t)334
+b(selection)e(commands)h(\(lik)-34 b(e)332 b Fu(@b)p
+FC(,)347 b Fu(@i)p FC(,)8400 6907 y(or)383 b Fu(@emph)p
+FC(\))i(and)f(a)f(few)h(related)f(ones)g(\(lik)-34 b(e)383
+b Fu(@var)p FC(,)388 b Fu(@key)d FC(or)e Fu(@code)p FC(\))i(there)e
+(are)g(bindings)8400 8369 y(whic)-34 b(h)444 b(insert)f(the)g(resp)34
+b(ectiv)-34 b(e)442 b(macros)h(directly)-101 b(.)654
+b(They)443 b(ha)-34 b(v)g(e)444 b(the)f(form)h Fs(C-c)405
+b(C-f)g(k)443 b FC(or)8400 9830 y Fs(C-c)405 b(C-f)g(C-k)378
+b FC(and)g(call)f(the)g(function)i Fu(TeX-font)p FC(.)532
+b(T)-34 b(yp)34 b(e)377 b Fs(C-c)405 b(C-f)h(RET)378
+b FC(to)f(get)g(a)h(list)f(of)8400 11291 y(supp)34 b(orted)405
+b(commands.)8400 13065 y(Note)371 b(that)i(the)e(pre\014x)g(argumen)-34
+b(t)373 b(is)d(not)i(handled)g(the)g(same)f(w)-34 b(a)g(y)372
+b(b)-34 b(y)372 b(A)-34 b(UCT)45027 13326 y(E)45701 13065
+y(X.)528 b(Note)8400 14526 y(also)318 b(that)h(the)f(no)34
+b(de)319 b(insertion)f(command)h(from)f(the)g(nativ)-34
+b(e)318 b(mo)34 b(de)318 b(\()p Fu(texinfo-insert-)8400
+15988 y(@node)p FC(\))406 b(can)e(still)g(accessed)g(from)g(the)h(T)
+-101 b(exinfo)404 b(men)-34 b(u)405 b(in)f(A)-34 b(UCT)39146
+16249 y(E)39821 15988 y(X.)2000 18075 y(Insert)404 b(braces)8400
+19536 y(In)398 b(A)-34 b(UCT)13241 19797 y(E)13916 19536
+y(X)398 b(braces)g(can)g(b)34 b(e)398 b(inserted)g(with)h(the)g(same)f
+(k)-34 b(ey)398 b(binding)h(as)f(in)g(the)h(nativ)-34
+b(e)8400 20997 y(T)-101 b(exinfo)582 b(mo)34 b(de:)892
+b Fs(C-c)405 b({)p FC(.)1070 b(But)582 b(A)-34 b(UCT)27285
+21258 y(E)27959 20997 y(X)581 b(uses)h(its)f(o)-34 b(wn)582
+b(function)h(for)e(the)h(feature:)8400 22459 y Fu(TeX-insert-braces)p
+FC(.)2000 24546 y(Insert)404 b(en)-34 b(vironmen)g(ts)8400
+26007 y(The)339 b(nativ)-34 b(e)339 b(T)-101 b(exinfo)338
+b(mo)34 b(de)338 b(do)34 b(es)339 b(not)g(insert)f(full)h(en)-34
+b(vironmen)g(ts.)517 b(Instead,)352 b(it)339 b(pro)-34
+b(vides)8400 27468 y(the)352 b(function)g Fu(texinfo-insert-@end)358
+b FC(\(mapp)34 b(ed)352 b(to)f Fs(C-c)405 b(C-c)h(e)p
+FC(\))351 b(for)h(closing)e(an)i(op)34 b(en)8400 28930
+y(en)-34 b(vironmen)g(t)405 b(with)g(a)f(matc)-34 b(hing)405
+b Fu(@end)h FC(statemen)-34 b(t.)8400 30704 y(In)369
+b(A)-34 b(UCT)13212 30965 y(E)13887 30704 y(X)369 b(y)-34
+b(ou)369 b(can)h(insert)f(full)g(en)-34 b(vironmen)g(ts,)377
+b(i.e.)368 b(b)34 b(oth)369 b(the)h(op)34 b(ening)369
+b(and)h(closing)8400 32165 y(statemen)-34 b(ts,)405 b(with)g(the)g
+(function)g Fu(Texinfo-environment)411 b FC(\(mapp)34
+b(ed)405 b(to)g Fs(C-c)g(C-e)p FC(\).)2000 34253 y(F)-101
+b(ormat)405 b(info)f(\014les)g(with)h(mak)-34 b(einfo)405
+b(and)g(T)22027 34513 y(E)22700 34253 y(X)8400 35714
+y(In)328 b(the)g(nativ)-34 b(e)328 b(T)-101 b(exinfo)328
+b(mo)34 b(de)328 b(there)f(are)h(v)-67 b(arious)327 b(functions)i(and)g
+(bindings)f(to)h(format)f(a)8400 37175 y(region)290 b(or)g(the)h(whole)
+f(bu\013er)h(for)f(info)h(or)f(to)g(t)-34 b(yp)34 b(eset)291
+b(the)g(resp)34 b(ectiv)-34 b(e)289 b(text.)501 b(F)-101
+b(or)290 b(example,)8400 38636 y(there)375 b(is)f Fu(makeinfo-buffer)
+380 b FC(\(mapp)34 b(ed)376 b(to)f Fs(C-c)405 b(C-m)g(C-b)p
+FC(\))376 b(whic)-34 b(h)375 b(runs)h(`)p Fu(makeinfo)p
+FC(')h(on)8400 40097 y(the)553 b(bu\013er)g(or)g(there)f(is)h
+Fu(texinfo-tex-buffer)559 b FC(\(mapp)34 b(ed)554 b(to)f
+Fs(C-c)405 b(C-t)g(C-b)p FC(\))554 b(whic)-34 b(h)8400
+41558 y(runs)405 b(T)11777 41819 y(E)12450 41558 y(X)g(on)f(the)h
+(bu\013er)f(in)g(order)g(to)g(pro)34 b(duce)405 b(a)f
+Fr(D)-31 b(VI)404 b FC(\014le.)8400 43333 y(In)447 b(A)-34
+b(UCT)13290 43594 y(E)13965 43333 y(X)447 b(di\013eren)-34
+b(t)447 b(commands)h(for)f(formatting)h(or)f(t)-34 b(yp)34
+b(esetting)448 b(can)f(b)34 b(e)446 b(in)-34 b(v)g(ok)g(ed)8400
+44794 y(through)358 b(the)g(function)g Fu(TeX-command-master)363
+b FC(\(mapp)34 b(ed)358 b(to)g Fs(C-c)405 b(C-c)p FC(\).)524
+b(After)357 b(t)-34 b(yping)8400 46255 y Fs(C-c)405 b(C-c)p
+FC(,)383 b(y)-34 b(ou)377 b(can)g(select)f(the)h(desired)f(command,)383
+b(e.g)376 b(`)p Fu(Makeinfo)p FC(')j(or)d(`)p Fu(TeX)p
+FC(',)383 b(through)8400 47716 y(a)547 b(prompt)i(in)e(the)h(mini)f
+(bu\013er.)968 b(Note)548 b(that)g(y)-34 b(ou)548 b(can)f(mak)-34
+b(e,)583 b(sa)-34 b(y)548 b(`)p Fu(Makeinfo)p FC(',)584
+b(the)8400 49177 y(default)405 b(b)-34 b(y)405 b(adding)g(this)f
+(statemen)-34 b(t)406 b(in)e(y)-34 b(our)404 b(init)h(\014le:)11600
+50952 y Fu(\(add-hook)640 b('Texinfo-mode-hook)17964
+52413 y(\(lambda)e(\(\))f(\(setq)i(TeX-command-default)k
+("Makeinfo"\)\)\))8400 54187 y FC(Note)564 b(also)f(that)h
+Fs(C-c)405 b(C-c)g(Makeinfo)i(RET)565 b FC(is)e(not)h(completely)e
+(functionally)i(equiv)-67 b(a-)8400 55648 y(len)-34 b(t)576
+b(to)h Fu(makeinfo-buffer)k FC(as)576 b(the)g(latter)g(will)f(displa)
+-34 b(y)577 b(the)f(resulting)g(info)g(\014le)g(in)8400
+57110 y(Emacs,)432 b(sho)-34 b(wing)429 b(the)e(no)34
+b(de)428 b(corresp)34 b(onding)427 b(to)g(the)h(p)34
+b(osition)427 b(in)g(the)h(source)e(\014le,)433 b(just)8400
+58571 y(after)558 b(a)h(successful)f(compilation.)1001
+b(This)559 b(is)f(wh)-34 b(y)-101 b(,)597 b(while)559
+b(using)f(A)-34 b(UCT)43038 58832 y(E)43713 58571 y(X,)597
+b(in)-34 b(v)g(oking)8400 60032 y Fu(makeinfo-buffer)409
+b FC(migh)-34 b(t)405 b(still)f(b)34 b(e)404 b(more)g(con)-34
+b(v)g(enien)g(t.)8400 61806 y(Note)498 b(also)f(that)i(in)e(the)h(case)
+f(of)h(a)f(m)-34 b(ulti\014le)498 b(do)34 b(cumen)-34
+b(t,)521 b Fs(C-c)405 b(C-c)499 b FC(in)e(A)-34 b(UCT)46033
+62067 y(E)46708 61806 y(X)497 b(will)8400 63268 y(w)-34
+b(ork)379 b(on)f(the)h(whole)g(do)34 b(cumen)-34 b(t)379
+b(\(pro)-34 b(vided)379 b(that)h(the)f(\014le)f(v)-67
+b(ariable)377 b Fu(TeX-master)382 b FC(is)c(set)8400
+64729 y(correctly\),)572 b(while)540 b Fu(makeinfo-buffer)545
+b FC(in)540 b(the)g(nativ)-34 b(e)540 b(mo)34 b(de)540
+b(will)f(pro)34 b(cess)540 b(only)f(the)8400 66190 y(curren)-34
+b(t)405 b(bu\013er,)f(pro)-34 b(vided)404 b(at)h(the)f
+Fu(@setfilename)k FC(statemen)-34 b(t)406 b(is)e(pro)-34
+b(vided.)2000 68277 y(Pro)34 b(duce)404 b(indexes)g(and)g(prin)-34
+b(t)8400 69738 y(The)2504 b(nativ)-34 b(e)2504 b(T)-101
+b(exinfo)2504 b(mo)34 b(de)2504 b(pro)-34 b(vides)2504
+b(the)g(binding)h Fs(C-c)8400 71200 y(C-t)405 b(C-i)598
+b FC(\()p Fu(texinfo-texindex)p FC(\))604 b(for)597 b(pro)34
+b(ducing)598 b(an)g(index)f(and)h(the)g(bindings)g Fs(C-c)p
+eop end
+%%Page: 125 130
+TeXDict begin 125 129 bop 2000 -1550 a FC(App)34 b(endix)405
+b(A:)e(Cop)-34 b(ying,)405 b(Changes,)g(Dev)-34 b(elopmen)g(t,)404
+b(F)-135 b(A)-34 b(Q,)405 b(T)-101 b(exinfo)404 b(Mo)34
+b(de)10519 b(125)8400 3985 y Fs(C-t)405 b(C-p)e FC(\()p
+Fu(texinfo-tex-print)p FC(\))408 b(and)403 b Fs(C-c)i(C-t)g(C-q)d
+FC(\()p Fu(tex-show-print-queue)p FC(\))410 b(for)8400
+5446 y(prin)-34 b(ting)467 b(and)g(sho)-34 b(wing)467
+b(the)g(prin)-34 b(ter)466 b(queue.)725 b(These)466 b(are)g(sup)34
+b(erseded)466 b(b)-34 b(y)466 b(the)h(resp)34 b(ec-)8400
+6907 y(tiv)-34 b(e)344 b(commands)i(a)-34 b(v)-67 b(ailable)344
+b(through)i Fs(C-c)405 b(C-c)345 b FC(\()p Fu(TeX-command-master)p
+FC(\))352 b(in)345 b(A)-34 b(UCT)48080 7168 y(E)48754
+6907 y(X:)8400 8369 y(`)p Fu(Texindex)p FC(',)406 b(`)p
+Fu(Print)p FC(',)f(and)g(`)p Fu(Queue)p FC('.)2000 10530
+y(Kill)430 b(jobs)1916 b(The)431 b(command)h Fs(C-c)405
+b(C-t)g(C-k)432 b FC(\()p Fu(tex-kill-job)p FC(\))j(in)c(the)g(nativ)
+-34 b(e)431 b(mo)34 b(de)431 b(is)g(sup)34 b(erseded)8400
+11991 y(b)-34 b(y)405 b Fs(C-c)g(C-k)g FC(\()p Fu(TeX-kill-job)p
+FC(\))k(in)404 b(A)-34 b(UCT)28439 12252 y(E)29114 11991
+y(X.)2000 14684 y Fq(A.5.3)817 b(Where)546 b(k)-45 b(ey)543
+b(bindings)j(are)g(mapp)45 b(ed)546 b(to)g(the)f(nativ)-45
+b(e)545 b(mo)45 b(de)2000 16644 y FC(This)322 b(no)34
+b(de)322 b(follo)-34 b(ws)322 b(the)g(nativ)-34 b(e)322
+b(T)-101 b(exinfo)322 b(mo)34 b(de)322 b(summary)f(\(see)h(Section)g
+(\\T)-101 b(exinfo)322 b(Mo)34 b(de)321 b(Summary")2000
+18105 y(in)404 b Ft(T)-101 b(exinfo)61 b FC(\))405 b(and)g(lists)f
+(only)g(those)g(commands)h(to)g(whic)-34 b(h)405 b(A)-34
+b(UCT)33265 18366 y(E)33940 18105 y(X)404 b(pro)-34 b(vides)404
+b(a)g(k)-34 b(eybinding.)3660 19934 y(Basically)383 b(all)g(commands)i
+(of)g(the)g(nativ)-34 b(e)384 b(mo)34 b(de)384 b(related)g(to)g(pro)34
+b(ducing)385 b(men)-34 b(us)385 b(and)g(in)-34 b(terlinking)2000
+21396 y(no)34 b(des)354 b(are)f(mapp)34 b(ed)355 b(to)f(same)g(or)f
+(similar)g(k)-34 b(eys)354 b(in)g(A)-34 b(UCT)28991 21656
+y(E)29665 21396 y(X,)364 b(while)354 b(a)f(few)i(insertion)f(commands)g
+(are)2000 22857 y(mapp)34 b(ed)405 b(to)f(A)-34 b(UCT)11426
+23118 y(E)12101 22857 y(X-lik)g(e)403 b(k)-34 b(eys.)2000
+25036 y Fu(@item)406 b FC(insertion)8400 26498 y(The)353
+b(binding)h Fs(C-c)405 b(C-c)g(i)353 b FC(for)g(the)g(insertion)f(of)h
+Fu(@item)i FC(in)d(the)h(nativ)-34 b(e)353 b(mo)34 b(de)353
+b(is)f(mapp)34 b(ed)8400 27959 y(to)405 b Fs(M-RET)g
+FC(or)f Fs(C-c)h(C-j)g FC(in)g(A)-34 b(UCT)24325 28220
+y(E)24999 27959 y(X,)404 b(similar)f(to)i(other)f(A)-34
+b(UCT)38614 28220 y(E)39289 27959 y(X)404 b(mo)34 b(des.)2000
+30120 y Fu(@end)405 b FC(insertion)8400 31582 y(The)470
+b(binding)g Fs(C-c)405 b(C-c)g(e)470 b FC(for)g(closing)f(a)g
+Fu(@)p Fs(foo)i FC(command)f(b)-34 b(y)470 b(a)f(corresp)34
+b(onding)470 b Fu(@end)8400 33043 y Fs(foo)439 b FC(statemen)-34
+b(t)440 b(in)f(the)g(nativ)-34 b(e)439 b(mo)34 b(de)438
+b(is)g(mapp)34 b(ed)439 b(to)g Fs(C-c)405 b(])439 b FC(in)g(A)-34
+b(UCT)42538 33304 y(E)43212 33043 y(X,)447 b(similar)438
+b(to)8400 34504 y(other)404 b(A)-34 b(UCT)14900 34765
+y(E)15575 34504 y(X)404 b(mo)34 b(des.)2000 36666 y(Mo)-34
+b(v)g(e)404 b(out)h(of)g(balanced)f(braces)8400 38127
+y(The)633 b(binding)h Fs(C-c)405 b(})633 b FC(\()p Fu(up-list)p
+FC(\))i(is)e(a)-34 b(v)-67 b(ailable)631 b(b)34 b(oth)634
+b(in)e(the)h(nativ)-34 b(e)633 b(mo)34 b(de)633 b(and)g(in)8400
+39588 y(A)-34 b(UCT)11732 39849 y(E)12407 39588 y(X.)768
+b(\(This)482 b(is)f(b)34 b(ecause)480 b(the)i(command)f(is)g(not)g
+(implemen)-34 b(ted)482 b(in)f(either)f(mo)34 b(de)8400
+41049 y(but)465 b(a)f(nativ)-34 b(e)464 b(Emacs)f(command.\))719
+b(Ho)-34 b(w)g(ev)g(er,)479 b(in)464 b(A)-34 b(UCT)36116
+41310 y(E)36790 41049 y(X,)479 b(y)-34 b(ou)464 b(cannot)h(use)f
+Fs(C-c)405 b(])8400 42510 y FC(for)f(this,)h(as)f(it)g(is)g(used)g(for)
+h Fu(@end)g FC(insertion.)2000 44672 y(Up)34 b(date)405
+b(p)34 b(oin)-34 b(ters)8400 46133 y(The)1991 b(bindings)h
+Fs(C-c)405 b(C-u)g(C-n)1992 b FC(\()p Fu(texinfo-update-node)p
+FC(\))1999 b(and)1991 b Fs(C-c)405 b(C-)8400 47594 y(u)f(C-e)545
+b FC(\()p Fu(texinfo-every-node-update)p FC(\))554 b(from)544
+b(the)g(nativ)-34 b(e)545 b(mo)34 b(de)543 b(are)h(a)-34
+b(v)-67 b(ailable)543 b(in)8400 49055 y(A)-34 b(UCT)11732
+49316 y(E)12407 49055 y(X)404 b(as)g(w)-34 b(ell.)2000
+51217 y(Up)34 b(date)405 b(men)-34 b(us)8400 52678 y(The)16577
+b(bindings)g Fs(C-c)8400 54139 y(C-u)405 b(m)544 b FC(\()p
+Fu(texinfo-master-menu)p FC(\),)585 b Fs(C-c)405 b(C-u)g(C-m)544
+b FC(\()p Fu(texinfo-make-menu)p FC(\),)585 b(and)544
+b Fs(C-c)8400 55601 y(C-u)405 b(C-a)466 b FC(\()p Fu
+(texinfo-all-menus-update)p FC(\))473 b(from)465 b(the)g(nativ)-34
+b(e)464 b(mo)34 b(de)465 b(are)e(a)-34 b(v)-67 b(ailable)464
+b(in)8400 57062 y(A)-34 b(UCT)11732 57323 y(E)12407 57062
+y(X)487 b(as)g(w)-34 b(ell.)787 b(The)488 b(command)g
+Fu(texinfo-start-menu-description)p FC(,)518 b(b)34 b(ound)8400
+58523 y(to)479 b Fs(C-c)405 b(C-c)g(C-d)480 b FC(in)f(the)g(nativ)-34
+b(e)479 b(mo)34 b(de,)497 b(is)478 b(b)34 b(ound)480
+b(to)f Fs(C-c)405 b(C-u)g(C-d)480 b FC(in)e(A)-34 b(UCT)46523
+58784 y(E)47198 58523 y(X)479 b(in-)8400 59984 y(stead.)2000
+62677 y Fq(A.5.4)817 b(Whic)-45 b(h)545 b(nativ)-45 b(e)545
+b(mo)45 b(de)546 b(k)-45 b(ey)543 b(bindings)j(are)g(missing)2000
+64636 y FC(The)530 b(follo)-34 b(wing)530 b(commands)g(from)f(the)h
+(nativ)-34 b(e)529 b(commands)i(migh)-34 b(t)530 b(still)f(b)34
+b(e)529 b(useful)g(when)i(w)-34 b(orking)2000 66098 y(with)405
+b(A)-34 b(UCT)8093 66359 y(E)8768 66098 y(X,)403 b(ho)-34
+b(w)g(ev)g(er,)405 b(they)f(are)g(not)h(accessible)e(with)i(a)f(k)-34
+b(ey)403 b(binding)i(an)-34 b(y)405 b(longer.)2000 68277
+y Fu(@node)h FC(insertion)8400 69738 y(The)392 b(no)34
+b(de)392 b(insertion)g(command,)j(mapp)34 b(ed)392 b(to)g
+Fs(C-c)405 b(C-c)g(n)392 b FC(in)g(the)g(nativ)-34 b(e)392
+b(mo)34 b(de,)394 b(is)d(not)8400 71200 y(mapp)34 b(ed)494
+b(to)g(an)-34 b(y)494 b(k)-34 b(ey)493 b(in)g(A)-34 b(UCT)24165
+71461 y(E)24840 71200 y(X.)807 b(Y)-101 b(ou)494 b(can)f(still)g
+(access)g(it)h(through)h(the)f(T)-101 b(exinfo)p eop
+end
+%%Page: 126 131
+TeXDict begin 126 130 bop 2000 -1550 a FC(App)34 b(endix)405
+b(A:)e(Cop)-34 b(ying,)405 b(Changes,)g(Dev)-34 b(elopmen)g(t,)404
+b(F)-135 b(A)-34 b(Q,)405 b(T)-101 b(exinfo)404 b(Mo)34
+b(de)10519 b(126)8400 3985 y(men)-34 b(u,)558 b(though.)909
+b(Another)527 b(alternativ)-34 b(e)527 b(is)g(to)g(use)g(the)g
+Fs(C-c)406 b(C-m)527 b FC(binding)h(for)f(macro)8400
+5446 y(insertion)404 b(in)g(A)-34 b(UCT)18139 5707 y(E)18814
+5446 y(X.)2000 7572 y(Sho)g(w)406 b(the)e(section)g(structure)8400
+9033 y(The)333 b(command)h Fu(texinfo-show-structure)340
+b FC(\()p Fs(C-c)406 b(C-s)p FC(\))334 b(from)e(the)i(nativ)-34
+b(e)332 b(mo)34 b(de)333 b(do)34 b(es)8400 10494 y(not)576
+b(ha)-34 b(v)g(e)575 b(a)g(k)-34 b(ey)574 b(binding)h(in)g(A)-34
+b(UCT)26695 10755 y(E)27370 10494 y(X.)1050 b(The)576
+b(binding)f(is)g(used)g(b)-34 b(y)575 b(A)-34 b(UCT)46390
+10755 y(E)47065 10494 y(X)575 b(for)8400 11955 y(sectioning.)p
+eop end
+%%Page: 127 132
+TeXDict begin 127 131 bop 48182 -1550 a FC(127)2000 3985
+y Fz(Indices)2000 8524 y FB(Key)598 b(Index)1949 11988
+y Fd(")2000 13544 y Fj(")255 b Fc(:)171 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)438 b Fk(20)1949 16847 y FB($)2000 18403 y
+Fj($)255 b Fc(:)171 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)438
+b Fk(21)1949 21789 y FB(\()2000 23345 y Fj(\()255 b Fc(:)171
+b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)438 b Fk(22)1949
+26730 y FB([)2000 28286 y Fj([)255 b Fc(:)171 b(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)438 b Fk(22)1949 31804 y Fz(^)2000 33361
+y Fj(^)255 b Fc(:)171 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)438
+b Fk(31)p 2074 36536 538 71 v 2000 38092 a Fj(_)255 b
+Fc(:)171 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)438 b
+Fk(31)1949 41492 y Fb(f)2000 43048 y Fj({)255 b Fc(:)171
+b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)438 b Fk(22)1949
+46332 y FB(C)2000 47888 y Fj(C-c)341 b(\045)210 b Fc(:)172
+b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
+f(:)g(:)g(:)g(:)g(:)g(:)393 b Fk(35)2000 49053 y Fj(C-c)341
+b(*)210 b Fc(:)172 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)393 b Fk(34)2000
+50219 y Fj(C-c)341 b(.)210 b Fc(:)172 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)393
+b Fk(34)2000 51385 y Fj(C-c)341 b(;)210 b Fc(:)172 b(:)f(:)g(:)g(:)g(:)
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)393 b Fk(35)2000 52550 y Fj(C-c)341 b(?)210 b Fc(:)172
+b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
+f(:)g(:)g(:)g(:)g(:)g(:)393 b Fk(68)2000 53716 y Fj(C-c)341
+b(])210 b Fc(:)172 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)393 b Fk(27)2000
+54881 y Fj(C-c)341 b(^)210 b Fc(:)172 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)393
+b Fk(67)2000 56047 y Fj(C-c)341 b(_)210 b Fc(:)172 b(:)f(:)g(:)g(:)g(:)
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)393 b Fk(70)2000 57213 y Fj(C-c)341 b(`)210 b Fc(:)172
+b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
+f(:)g(:)g(:)g(:)g(:)g(:)393 b Fk(64)2000 58378 y Fj(C-c)341
+b({)210 b Fc(:)172 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)393 b Fk(22)2000
+59544 y Fj(C-c)341 b(~)210 b Fc(:)172 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)393
+b Fk(30)2000 60709 y Fj(C-c)341 b(C-a)142 b Fc(:)172
+b(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)325 b Fk(53)2000 61875 y Fj(C-c)341 b(C-b)142
+b Fc(:)172 b(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)325 b Fk(52)2000 63040 y Fj(C-c)341
+b(C-c)142 b Fc(:)172 b(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)325 b Fk(52)2000
+64206 y Fj(C-c)341 b(C-d)142 b Fc(:)172 b(:)f(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)325
+b Fk(71)2000 65372 y Fj(C-c)341 b(C-e)142 b Fc(:)172
+b(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)325 b Fk(26)2000 66537 y Fj(C-c)341 b(C-f)142
+b Fc(:)172 b(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)325 b Fk(24)2000 67703 y Fj(C-c)341
+b(C-f)h(C-b)183 b Fc(:)171 b(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)366 b Fk(17,)341 b(23)2000 68868 y Fj(C-c)g(C-f)h(C-c)268
+b Fc(:)171 b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)451 b
+Fk(17,)342 b(23,)f(24)2000 70034 y Fj(C-c)g(C-f)h(C-e)183
+b Fc(:)171 b(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)366
+b Fk(17,)341 b(23)2000 71200 y Fj(C-c)g(C-f)h(C-f)183
+b Fc(:)171 b(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)366
+b Fk(17,)341 b(23)26997 11988 y Fj(C-c)g(C-f)h(C-i)183
+b Fc(:)170 b(:)i(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)365
+b Fk(17,)342 b(23)26997 13172 y Fj(C-c)f(C-f)h(C-l)97
+b Fc(:)171 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)280 b Fk(23)26997 14355 y Fj(C-c)341 b(C-f)h(C-m)97
+b Fc(:)171 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)280 b Fk(23)26997 15538 y Fj(C-c)341 b(C-f)h(C-n)97
+b Fc(:)171 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)280 b Fk(24)26997 16721 y Fj(C-c)341 b(C-f)h(C-r)183
+b Fc(:)170 b(:)i(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)365
+b Fk(17,)342 b(23)26997 17904 y Fj(C-c)f(C-f)h(C-s)183
+b Fc(:)170 b(:)i(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)365
+b Fk(17,)342 b(23)26997 19088 y Fj(C-c)f(C-f)h(C-t)183
+b Fc(:)170 b(:)i(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)365
+b Fk(17,)342 b(23)26997 20271 y Fj(C-c)f(C-f)h(C-w)97
+b Fc(:)171 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)280 b Fk(23)26997 21454 y Fj(C-c)341 b(C-f)h(g)165
+b Fc(:)171 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)348 b Fk(78)26997 22637 y Fj(C-c)341
+b(C-f)h(m)165 b Fc(:)171 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)348 b Fk(78)26997 23821
+y Fj(C-c)341 b(C-k)142 b Fc(:)172 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)325 b
+Fk(67)26997 25004 y Fj(C-c)341 b(C-l)142 b Fc(:)172 b(:)f(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)325
+b Fk(67)26997 26187 y Fj(C-c)341 b(C-m)142 b Fc(:)172
+b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
+f(:)g(:)g(:)g(:)325 b Fk(32)26997 27370 y Fj(C-c)341
+b(C-n)142 b Fc(:)172 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)325 b Fk(71)26997
+28553 y Fj(C-c)341 b(C-o)h(b)165 b Fc(:)171 b(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)348
+b Fk(48)26997 29737 y Fj(C-c)341 b(C-o)h(C-b)97 b Fc(:)171
+b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+280 b Fk(47)26997 30920 y Fj(C-c)341 b(C-o)h(C-c)97 b
+Fc(:)171 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)280 b Fk(48)26997 32103 y Fj(C-c)341 b(C-o)h(C-e)97
+b Fc(:)171 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)280 b Fk(48)26997 33286 y Fj(C-c)341 b(C-o)h(C-f)97
+b Fc(:)171 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)280 b Fk(47)26997 34470 y Fj(C-c)341 b(C-o)h(C-m)97
+b Fc(:)171 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)280 b Fk(48)26997 35653 y Fj(C-c)341 b(C-o)h(C-o)97
+b Fc(:)171 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)280 b Fk(49)26997 36836 y Fj(C-c)341 b(C-o)h(C-p)97
+b Fc(:)171 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)280 b Fk(48)26997 38019 y Fj(C-c)341 b(C-o)h(C-r)97
+b Fc(:)171 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)280 b Fk(48)26997 39202 y Fj(C-c)341 b(C-o)h(i)165
+b Fc(:)171 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)348 b Fk(49)26997 40386 y Fj(C-c)341
+b(C-o)h(p)165 b Fc(:)171 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)348 b Fk(48)26997 41569
+y Fj(C-c)341 b(C-o)h(r)165 b Fc(:)171 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)348 b Fk(48)26997
+42752 y Fj(C-c)341 b(C-q)h(C-e)97 b Fc(:)171 b(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)280 b Fk(38)26997
+43935 y Fj(C-c)341 b(C-q)h(C-p)97 b Fc(:)171 b(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)280 b Fk(38)26997
+45118 y Fj(C-c)341 b(C-q)h(C-r)97 b Fc(:)171 b(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)280 b Fk(38)26997
+46302 y Fj(C-c)341 b(C-q)h(C-s)97 b Fc(:)171 b(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)280 b Fk(38)26997
+47485 y Fj(C-c)341 b(C-r)142 b Fc(:)172 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)325
+b Fk(52)26997 48668 y Fj(C-c)341 b(C-s)142 b Fc(:)172
+b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
+f(:)g(:)g(:)g(:)325 b Fk(24)26997 49851 y Fj(C-c)341
+b(C-t)h(C-b)97 b Fc(:)171 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)g(:)g(:)280 b Fk(65)26997 51035 y Fj(C-c)341
+b(C-t)h(C-i)183 b Fc(:)170 b(:)i(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)365 b Fk(19,)342 b(57)26997 52218 y Fj(C-c)f(C-t)h(C-o)97
+b Fc(:)171 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)280 b Fk(19)26997 53401 y Fj(C-c)341 b(C-t)h(C-p)183
+b Fc(:)170 b(:)i(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)365
+b Fk(18,)342 b(57)26997 54584 y Fj(C-c)f(C-t)h(C-r)97
+b Fc(:)171 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)280 b Fk(53)26997 55767 y Fj(C-c)341 b(C-t)h(C-s)183
+b Fc(:)170 b(:)i(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)365
+b Fk(19,)342 b(57)26997 56951 y Fj(C-c)f(C-t)h(C-w)97
+b Fc(:)171 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)280 b Fk(65)26997 58134 y Fj(C-c)341 b(C-t)h(C-x)97
+b Fc(:)171 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)280 b Fk(65)26997 59317 y Fj(C-c)341 b(C-v)142
+b Fc(:)172 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)325 b Fk(60)26997 60500 y
+Fj(C-c)341 b(C-z)142 b Fc(:)172 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)325 b
+Fk(53)26997 61684 y Fj(C-c)341 b(LFD)228 b Fc(:)171 b(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)410
+b Fk(29,)342 b(30)26997 62867 y Fj(C-j)187 b Fc(:)171
+b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)370 b Fk(36)26997 64050
+y Fj(C-M-a)119 b Fc(:)172 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)302 b
+Fk(28)26997 65233 y Fj(C-M-e)119 b Fc(:)172 b(:)f(:)g(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)302
+b Fk(28)26997 66416 y Fj(C-M-h)119 b Fc(:)172 b(:)f(:)g(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)302
+b Fk(35)26997 67600 y Fj(C-x)341 b(n)h(e)233 b Fc(:)171
+b(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+g(:)g(:)g(:)g(:)416 b Fk(51)26997 68783 y Fj(C-x)341
+b(n)h(g)233 b Fc(:)171 b(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)416 b Fk(51)p
+eop end
+%%Page: 128 133
+TeXDict begin 128 132 bop 2000 -1550 a FC(Indices)42505
+b(128)1949 3985 y FB(L)2000 5531 y Fj(LFD)187 b Fc(:)172
+b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)370 b Fk(36)1949 8634
+y FB(M)2000 10180 y Fj(M-g)341 b(p)210 b Fc(:)172 b(:)f(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+(:)393 b Fk(64)2000 11342 y Fj(M-q)187 b Fc(:)172 b(:)f(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)370 b Fk(38)2000 12505 y Fj(M-TAB)119 b Fc(:)172
+b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)302 b Fk(31)26946 3985 y FB(T)26997
+5531 y Fj(TAB)187 b Fc(:)171 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)370
+b Fk(36)2000 15745 y FB(F)-149 b(unction)598 b(Index)1949
+18899 y(A)2000 20451 y Fj(align-current)303 b Fc(:)171
+b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)485
+b Fk(36)2000 21615 y Fj(ams-tex-mode)109 b Fc(:)172 b(:)f(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)292 b Fk(69)2000
+22779 y Fj(auto-fill-mode)269 b Fc(:)171 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)g(:)h(:)f(:)451 b Fk(37)1949 25923 y FB(C)2000
+27475 y Fj(context-mode)109 b Fc(:)172 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)292 b Fk(69)1949 30619
+y FB(D)2000 32170 y Fj(doctex-mode)143 b Fc(:)172 b(:)f(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)326 b Fk(69)1949
+35314 y FB(I)2000 36866 y Fj(indent-region)303 b Fc(:)171
+b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)485
+b Fk(35)1949 40258 y FB(J)2000 41809 y Fj(japanese-latex-mode)99
+b Fc(:)172 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)282 b Fk(76)2000
+42973 y Fj(japanese-plain-tex-mode)191 b Fc(:)171 b(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)373
+b Fk(76)1949 46365 y FB(L)2000 47917 y Fj(latex-mode)177
+b Fc(:)172 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
+(:)g(:)g(:)360 b Fk(69)2000 49081 y Fj(LaTeX-add-bibliographies)157
+b Fc(:)171 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
+f(:)g(:)g(:)g(:)339 b Fk(88)2000 50245 y Fj(LaTeX-add-environments)224
+b Fc(:)172 b(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)g(:)g(:)407 b Fk(87)2000 51409 y Fj(LaTeX-add-labels)
+201 b Fc(:)171 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)383
+b Fk(88)2000 52573 y Fj(LaTeX-arg-author)201 b Fc(:)171
+b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)383 b Fk(85)2000
+53737 y Fj(LaTeX-arg-usepackage)293 b Fc(:)171 b(:)g(:)g(:)g(:)g(:)h(:)
+f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)475
+b Fk(85)2000 54902 y Fj(LaTeX-)p Fe(classname)p Fj(-class-options)214
+b Fc(:)172 b(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)397
+b Fk(90)2000 56066 y Fj(LaTeX-close-environment)191 b
+Fc(:)171 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)373 b Fk(27)2000 57230 y Fj(LaTeX-command-section)
+259 b Fc(:)171 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)441 b Fk(53)2000 58394
+y Fj(LaTeX-declare-expert-environments)307 b Fc(:)171
+b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)488 b Fk(88)2000 59558
+y Fj(LaTeX-env-args)269 b Fc(:)171 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)451 b Fk(88)2000 60722 y Fj(LaTeX-env-array)235
+b Fc(:)171 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)417
+b Fk(87)2000 61886 y Fj(LaTeX-env-bib)303 b Fc(:)171
+b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)485
+b Fk(88)2000 63051 y Fj(LaTeX-env-contents)133 b Fc(:)172
+b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)315 b Fk(88)2000 64215
+y Fj(LaTeX-env-figure)201 b Fc(:)171 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)h(:)383 b Fk(87)2000 65379 y Fj(LaTeX-env-item)269
+b Fc(:)171 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)451
+b Fk(87)2000 66543 y Fj(LaTeX-env-label)235 b Fc(:)171
+b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)417 b
+Fk(87)2000 67707 y Fj(LaTeX-env-list)269 b Fc(:)171 b(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)451 b Fk(87)2000 68871
+y Fj(LaTeX-env-minipage)133 b Fc(:)172 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+(:)315 b Fk(87)2000 70036 y Fj(LaTeX-env-picture)167
+b Fc(:)k(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)349 b Fk(88)2000
+71200 y Fj(LaTeX-env-tabular*)133 b Fc(:)172 b(:)f(:)g(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)h(:)315 b Fk(87)26997 18899 y Fj(LaTeX-environment)167
+b Fc(:)k(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)350 b Fk(26)26997
+20197 y Fj(LaTeX-fill-environment)224 b Fc(:)172 b(:)f(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)407
+b Fk(38)26997 21494 y Fj(LaTeX-fill-paragraph)293 b Fc(:)171
+b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)475 b Fk(38)26997 22792 y Fj(LaTeX-fill-region)
+167 b Fc(:)k(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)350 b
+Fk(38)26997 24089 y Fj(LaTeX-fill-section)133 b Fc(:)171
+b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)316 b Fk(38)26997
+25387 y Fj(LaTeX-find-matching-begin)123 b Fc(:)171 b(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)305
+b Fk(28)26997 26684 y Fj(LaTeX-find-matching-end)191
+b Fc(:)171 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)373 b Fk(28)26997 27982 y Fj(LaTeX-indent-line)167
+b Fc(:)k(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)350 b Fk(36)26997
+29279 y Fj(LaTeX-insert-environment)157 b Fc(:)171 b(:)g(:)g(:)g(:)h(:)
+f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)339
+b Fk(87)26997 30577 y Fj(LaTeX-insert-item)253 b Fc(:)171
+b(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)435 b Fk(29,)342 b(30)26997 31874
+y Fj(LaTeX-mark-environment)224 b Fc(:)172 b(:)f(:)g(:)g(:)g(:)h(:)f(:)
+g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)407
+b Fk(34)26997 33172 y Fj(LaTeX-mark-section)133 b Fc(:)171
+b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)316 b Fk(34)26997
+34469 y Fj(LaTeX-match-class-option)157 b Fc(:)171 b(:)g(:)g(:)g(:)h(:)
+f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)339
+b Fk(89)26997 35767 y Fj(LaTeX-math-mode)235 b Fc(:)171
+b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)418 b
+Fk(30)26997 37064 y Fj(LaTeX-narrow-to-environment)283
+b Fc(:)171 b(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
+465 b Fk(51)26997 38362 y Fj(LaTeX-)p Fe(packagename)p
+Fj(-package-options)307 b Fc(:)171 b(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)489
+b Fk(89)26997 39659 y Fj(LaTeX-provided-class-options-member)238
+b Fc(:)172 b(:)f(:)g(:)g(:)g(:)g(:)421 b Fk(89)26997
+40957 y Fj(LaTeX-provided-package-options-member)170
+b Fc(:)i(:)f(:)g(:)g(:)353 b Fk(89)26997 42254 y Fj(LaTeX-section)303
+b Fc(:)171 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)486
+b Fk(24)26997 43552 y Fj(LaTeX-section-heading)259 b
+Fc(:)171 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)441 b Fk(25)26997 44849 y
+Fj(LaTeX-section-label)99 b Fc(:)171 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)282
+b Fk(25)26997 46147 y Fj(LaTeX-section-section)259 b
+Fc(:)171 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)441 b Fk(25)26997 47444 y
+Fj(LaTeX-section-title)99 b Fc(:)171 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)282
+b Fk(25)26997 48742 y Fj(LaTeX-section-toc)167 b Fc(:)k(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)g(:)g(:)g(:)g(:)350 b Fk(25)26946 54819 y FB(P)26997
+56784 y Fj(plain-tex-mode)269 b Fc(:)171 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)g(:)g(:)g(:)452 b Fk(69)p eop end
+%%Page: 129 134
+TeXDict begin 129 133 bop 2000 -1550 a FC(Indices)42505
+b(129)1949 3985 y FB(T)2000 5580 y Fj(TeX--completion-at-point)157
+b Fc(:)171 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
+f(:)g(:)g(:)g(:)339 b Fk(32)2000 6757 y Fj(TeX-add-style-hook)133
+b Fc(:)172 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)315 b Fk(81)2000
+7935 y Fj(TeX-add-symbols)235 b Fc(:)171 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)417 b Fk(82)2000 9113 y Fj(TeX-arg-bibliography)293
+b Fc(:)171 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)475 b Fk(85)2000 10291
+y Fj(TeX-arg-bibstyle)201 b Fc(:)171 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)h(:)383 b Fk(85)2000 11469 y Fj(TeX-arg-cite)109
+b Fc(:)172 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g
+(:)292 b Fk(84)2000 12647 y Fj(TeX-arg-conditional)99
+b Fc(:)172 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)282 b Fk(83)2000
+13825 y Fj(TeX-arg-coordinate)133 b Fc(:)172 b(:)f(:)g(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)h(:)315 b Fk(85)2000 15003 y Fj(TeX-arg-corner)269
+b Fc(:)171 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)451
+b Fk(85)2000 16181 y Fj(TeX-arg-counter)235 b Fc(:)171
+b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)417 b
+Fk(84)2000 17359 y Fj(TeX-arg-date)109 b Fc(:)172 b(:)f(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)292 b Fk(83)2000
+18537 y Fj(TeX-arg-define-cite)99 b Fc(:)172 b(:)f(:)g(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)282 b Fk(84)2000 19715 y Fj(TeX-arg-define-counter)224
+b Fc(:)172 b(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)g(:)g(:)407 b Fk(84)2000 20893 y Fj
+(TeX-arg-define-environment)89 b Fc(:)172 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)271 b Fk(84)2000
+22071 y Fj(TeX-arg-define-label)293 b Fc(:)171 b(:)g(:)g(:)g(:)g(:)h(:)
+f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)475
+b Fk(84)2000 23249 y Fj(TeX-arg-define-length)259 b Fc(:)171
+b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)441 b Fk(84)2000 24427 y Fj(TeX-arg-define-macro)293
+b Fc(:)171 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)475 b Fk(84)2000 25605
+y Fj(TeX-arg-define-savebox)224 b Fc(:)172 b(:)f(:)g(:)h(:)f(:)g(:)g(:)
+g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)407
+b Fk(84)2000 26783 y Fj(TeX-arg-document)201 b Fc(:)171
+b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)383 b Fk(85)2000
+27961 y Fj(TeX-arg-environment)99 b Fc(:)172 b(:)f(:)g(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)282 b Fk(84)2000 29139 y Fj(TeX-arg-eval)109 b Fc(:)172
+b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)292
+b Fk(83)2000 30317 y Fj(TeX-arg-file)109 b Fc(:)172 b(:)f(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)292 b Fk(84)2000
+31495 y Fj(TeX-arg-file-name)167 b Fc(:)k(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)h(:)349 b Fk(84)2000 32673 y Fj(TeX-arg-file-name-sans-extension)
+112 b Fc(:)172 b(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)295
+b Fk(84)2000 33851 y Fj(TeX-arg-free)109 b Fc(:)172 b(:)f(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)292 b Fk(83)2000
+35029 y Fj(TeX-arg-hook)109 b Fc(:)172 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)292 b Fk(86)2000 36207
+y Fj(TeX-arg-index)303 b Fc(:)171 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)485 b Fk(83)2000 37385 y Fj(TeX-arg-index-tag)167
+b Fc(:)k(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)349 b Fk(83)2000
+38563 y Fj(TeX-arg-input-file)133 b Fc(:)172 b(:)f(:)g(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)h(:)315 b Fk(84)2000 39741 y Fj(TeX-arg-key-val)235
+b Fc(:)171 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)417
+b Fk(86)2000 40919 y Fj(TeX-arg-label)303 b Fc(:)171
+b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)485
+b Fk(83)2000 42097 y Fj(TeX-arg-length)269 b Fc(:)171
+b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)451
+b Fk(83)2000 43275 y Fj(TeX-arg-literal)235 b Fc(:)171
+b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)417 b
+Fk(83)2000 44453 y Fj(TeX-arg-lr)177 b Fc(:)172 b(:)f(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)360 b
+Fk(85)2000 45631 y Fj(TeX-arg-macro)303 b Fc(:)171 b(:)g(:)g(:)g(:)h(:)
+f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)485 b Fk(83)2000 46809
+y Fj(TeX-arg-pagestyle)167 b Fc(:)k(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
+349 b Fk(85)2000 47987 y Fj(TeX-arg-pair)109 b Fc(:)172
+b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)292
+b Fk(85)2000 49165 y Fj(TeX-arg-ref)143 b Fc(:)172 b(:)f(:)g(:)g(:)g(:)
+g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)326 b
+Fk(83)2000 50343 y Fj(TeX-arg-savebox)235 b Fc(:)171
+b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)417 b
+Fk(84)2000 51521 y Fj(TeX-arg-size)109 b Fc(:)172 b(:)f(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)292 b Fk(85)2000
+52699 y Fj(TeX-arg-tb)177 b Fc(:)172 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
+f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)360 b Fk(85)2000
+53877 y Fj(TeX-arg-verb)109 b Fc(:)172 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)292 b Fk(85)2000 55055
+y Fj(TeX-arg-verb-delim-or-brace)283 b Fc(:)171 b(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)465 b Fk(85)2000
+56233 y Fj(TeX-arg-version)235 b Fc(:)171 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)417 b Fk(84)2000 57411 y Fj(TeX-auto-generate)167
+b Fc(:)k(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)349 b Fk(79)2000
+58589 y Fj(TeX-clean)211 b Fc(:)171 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)394 b Fk(67)2000
+59767 y Fj(TeX-command-buffer)133 b Fc(:)172 b(:)f(:)g(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)h(:)315 b Fk(52)2000 60945 y Fj(TeX-command-master)133
+b Fc(:)172 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)315 b Fk(52)2000
+62123 y Fj(TeX-command-region)133 b Fc(:)172 b(:)f(:)g(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)h(:)315 b Fk(52)2000 63301 y Fj(TeX-command-run-all)99
+b Fc(:)172 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)282 b Fk(53)2000
+64478 y Fj(TeX-comment-or-uncomment-paragraph)273 b Fc(:)171
+b(:)g(:)g(:)g(:)g(:)g(:)h(:)454 b Fk(35)26997 3985 y
+Fj(TeX-comment-or-uncomment-region)146 b Fc(:)172 b(:)f(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)329 b Fk(35)26997 5148 y Fj(TeX-complete-symbol)
+99 b Fc(:)171 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)282 b Fk(31)26997
+6312 y Fj(TeX-declare-expert-macros)123 b Fc(:)171 b(:)g(:)g(:)h(:)f(:)
+g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)305
+b Fk(86)26997 7475 y Fj(TeX-documentation-texdoc)157
+b Fc(:)171 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)339 b Fk(68)26997 8638 y Fj(TeX-electric-macro)133
+b Fc(:)171 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)316 b Fk(33)26997
+9802 y Fj(TeX-error-overview)133 b Fc(:)171 b(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)316 b Fk(65)26997 10965 y Fj(TeX-fold-buffer)235
+b Fc(:)171 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)418
+b Fk(47)26997 12128 y Fj(TeX-fold-clearout-buffer)157
+b Fc(:)171 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)339 b Fk(48)26997 13292 y Fj(TeX-fold-clearout-item)224
+b Fc(:)172 b(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)g(:)h(:)f(:)g(:)407 b Fk(49)26997 14455 y Fj
+(TeX-fold-clearout-paragraph)283 b Fc(:)171 b(:)g(:)g(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)465 b Fk(48)26997
+15618 y Fj(TeX-fold-clearout-region)157 b Fc(:)171 b(:)g(:)g(:)g(:)h(:)
+f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)339
+b Fk(48)26997 16782 y Fj(TeX-fold-comment)201 b Fc(:)171
+b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)384 b Fk(48)26997
+17945 y Fj(TeX-fold-dwim)303 b Fc(:)171 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)g(:)g(:)g(:)g(:)486 b Fk(49)26997 19108 y Fj(TeX-fold-env)109
+b Fc(:)171 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+(:)292 b Fk(48)26997 20272 y Fj(TeX-fold-macro)269 b
+Fc(:)171 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)452
+b Fk(48)26997 21435 y Fj(TeX-fold-math)303 b Fc(:)171
+b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)486
+b Fk(48)26997 22598 y Fj(TeX-fold-mode)303 b Fc(:)171
+b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)486
+b Fk(47)26997 23762 y Fj(TeX-fold-paragraph)133 b Fc(:)171
+b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)316 b Fk(48)26997
+24925 y Fj(TeX-fold-region)235 b Fc(:)171 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)g(:)g(:)418 b Fk(48)26997 26088 y Fj(TeX-font)245
+b Fc(:)171 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)g(:)428 b Fk(24)26997 27252 y Fj(TeX-home-buffer)235
+b Fc(:)171 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)418
+b Fk(67)26997 28415 y Fj(TeX-insert-braces)167 b Fc(:)k(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)g(:)g(:)g(:)g(:)350 b Fk(22)26997 29578 y Fj(TeX-insert-dollar)167
+b Fc(:)k(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)350 b Fk(21)26997
+30742 y Fj(TeX-insert-macro)201 b Fc(:)171 b(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)384 b Fk(32)26997 31905 y Fj(TeX-insert-quote)201
+b Fc(:)171 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)384
+b Fk(20)26997 33068 y Fj(TeX-interactive-mode)293 b Fc(:)171
+b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)475 b Fk(57)26997 34232 y Fj
+(TeX-ispell-skip-setcar)224 b Fc(:)172 b(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)407
+b Fk(56)26997 35395 y Fj(TeX-ispell-skip-setcdr)224 b
+Fc(:)172 b(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)407 b Fk(56)26997 36558 y Fj
+(TeX-ispell-tex-arg-end)224 b Fc(:)172 b(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)407
+b Fk(56)26997 37722 y Fj(TeX-kill-job)109 b Fc(:)171
+b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)292
+b Fk(67)26997 38885 y Fj(TeX-master-file-ask)99 b Fc(:)171
+b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)282 b Fk(70)26997 40048
+y Fj(TeX-narrow-to-group)99 b Fc(:)171 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)282
+b Fk(51)26997 41212 y Fj(TeX-next-error)269 b Fc(:)171
+b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)452
+b Fk(64)26997 42375 y Fj(TeX-normal-mode)235 b Fc(:)171
+b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)418 b
+Fk(71)26997 43538 y Fj(TeX-PDF-mode)109 b Fc(:)171 b(:)h(:)f(:)g(:)g(:)
+g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)292 b Fk(57)26997
+44702 y Fj(TeX-pin-region)269 b Fc(:)171 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)g(:)g(:)g(:)452 b Fk(53)26997 45865 y Fj(TeX-previous-error)133
+b Fc(:)171 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)316 b Fk(64)26997
+47028 y Fj(TeX-read-hook)303 b Fc(:)171 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)g(:)g(:)g(:)g(:)486 b Fk(86)26997 48192 y Fj(TeX-read-key-val)
+201 b Fc(:)171 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)384
+b Fk(86)26997 49355 y Fj(TeX-recenter-output-buffer)89
+b Fc(:)171 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)271 b Fk(67)26997 50518 y Fj(TeX-revert-document-buffer)89
+b Fc(:)171 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)271 b Fk(69)26997 51682 y Fj(TeX-save-document)167
+b Fc(:)k(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)350 b Fk(71)26997
+52845 y Fj(TeX-source-correlate-mode)208 b Fc(:)172 b(:)f(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)390 b Fk(57,)342
+b(62)26997 54008 y Fj(TeX-toggle-debug-bad-boxes)89 b
+Fc(:)171 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)271 b Fk(65)26997 55172 y Fj(TeX-toggle-debug-warnings)123
+b Fc(:)171 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)305 b Fk(65)26997 56335 y Fj
+(TeX-toggle-suppress-ignored-warnings)204 b Fc(:)172
+b(:)f(:)g(:)g(:)g(:)387 b Fk(65)26997 57498 y Fj(TeX-view)103
+b Fc(:)171 b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)285 b Fk(60,)342 b(62)26997 58662 y Fj(TeX-view-mouse)269
+b Fc(:)171 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)452
+b Fk(63)26997 59825 y Fj(Texinfo-mark-environment)157
+b Fc(:)171 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)339 b Fk(34)26997 60988 y Fj(Texinfo-mark-node)167
+b Fc(:)k(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)350 b Fk(35)26997
+62152 y Fj(Texinfo-mark-section)293 b Fc(:)171 b(:)g(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)475
+b Fk(34)26997 63315 y Fj(texinfo-mode)109 b Fc(:)171
+b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)292
+b Fk(69)26997 64478 y Fj(turn-on-auto-fill)167 b Fc(:)k(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)g(:)g(:)g(:)g(:)350 b Fk(37)2000 67689 y FB(V)-149
+b(ariable)598 b(Index)p eop end
+%%Page: 130 135
+TeXDict begin 130 134 bop 2000 -1550 a FC(Indices)42505
+b(130)1949 3985 y FB(A)2000 5533 y Fj(AmS-TeX-mode-hook)167
+b Fc(:)k(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)349 b Fk(69)2000
+6696 y Fj(AmSTeX-clean-intermediate-suffixes)273 b Fc(:)171
+b(:)g(:)g(:)g(:)g(:)g(:)h(:)454 b Fk(67)2000 7859 y Fj
+(AmSTeX-clean-output-suffixes)248 b Fc(:)172 b(:)f(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)431 b Fk(67)1949 11226
+y FB(C)2000 12774 y Fj(ConTeXt-clean-intermediate-suffixes)238
+b Fc(:)172 b(:)f(:)g(:)g(:)g(:)g(:)421 b Fk(67)2000 13937
+y Fj(ConTeXt-clean-output-suffixes)214 b Fc(:)172 b(:)f(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)397 b Fk(67)2000 15100
+y Fj(ConTeXt-engine)269 b Fc(:)171 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)451 b Fk(59)2000 16263 y Fj(ConTeXt-Mark-version)293
+b Fc(:)171 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)475 b Fk(60)2000 17426
+y Fj(ConTeXt-mode-hook)167 b Fc(:)k(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
+349 b Fk(69)2000 18589 y Fj(ConTeXt-Omega-engine)293
+b Fc(:)171 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)475 b Fk(59)1949 21956
+y FB(D)2000 23504 y Fj(docTeX-clean-intermediate-suffixes)273
+b Fc(:)171 b(:)g(:)g(:)g(:)g(:)g(:)h(:)454 b Fk(67)2000
+24667 y Fj(docTeX-clean-output-suffixes)248 b Fc(:)172
+b(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)431
+b Fk(67)2000 25830 y Fj(docTeX-mode-hook)201 b Fc(:)171
+b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)383 b Fk(69)1949
+28948 y FB(F)2000 30496 y Fj(fill-column)143 b Fc(:)172
+b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)326
+b Fk(37)2000 31659 y Fj(font-latex-deactivated-keyword-classes)136
+b Fc(:)172 b(:)f(:)g(:)319 b Fk(43)2000 32822 y Fj
+(font-latex-fontify-script)123 b Fc(:)171 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)305 b Fk(45)2000
+33984 y Fj(font-latex-fontify-script-max-level)238 b
+Fc(:)172 b(:)f(:)g(:)g(:)g(:)g(:)421 b Fk(45)2000 35147
+y Fj(font-latex-fontify-sectioning)214 b Fc(:)172 b(:)f(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)397 b Fk(42)2000 36310
+y Fj(font-latex-match-bold-command-keywords)136 b Fc(:)172
+b(:)f(:)g(:)319 b Fk(43)2000 37473 y Fj(font-latex-match-bold-)3024
+38636 y(declaration-keywords)236 b Fc(:)171 b(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)418
+b Fk(43)2000 39799 y Fj(font-latex-match-function-keywords)273
+b Fc(:)171 b(:)g(:)g(:)g(:)g(:)g(:)h(:)454 b Fk(42)2000
+40962 y Fj(font-latex-match-italic-)3024 42125 y(command-keywords)144
+b Fc(:)171 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
+f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)327 b Fk(43)2000
+43288 y Fj(font-latex-match-italic-)3024 44451 y(declaration-keywords)
+236 b Fc(:)171 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)418 b Fk(43)2000 45614 y
+Fj(font-latex-match-math-)3024 46777 y(command-keywords)229
+b Fc(:)172 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)g(:)g(:)g(:)g(:)g(:)g(:)413 b Fk(43,)341 b(45)2000
+47940 y Fj(font-latex-match-reference-keywords)238 b
+Fc(:)172 b(:)f(:)g(:)g(:)g(:)g(:)421 b Fk(42)2000 49103
+y Fj(font-latex-match-sectioning-0-keywords)136 b Fc(:)172
+b(:)f(:)g(:)319 b Fk(42)2000 50266 y Fj
+(font-latex-match-sectioning-1-keywords)136 b Fc(:)172
+b(:)f(:)g(:)319 b Fk(42)2000 51429 y Fj
+(font-latex-match-sectioning-2-keywords)136 b Fc(:)172
+b(:)f(:)g(:)319 b Fk(42)2000 52592 y Fj
+(font-latex-match-sectioning-3-keywords)136 b Fc(:)172
+b(:)f(:)g(:)319 b Fk(42)2000 53755 y Fj
+(font-latex-match-sectioning-4-keywords)136 b Fc(:)172
+b(:)f(:)g(:)319 b Fk(42)2000 54918 y Fj
+(font-latex-match-sectioning-5-keywords)136 b Fc(:)172
+b(:)f(:)g(:)319 b Fk(42)2000 56081 y Fj
+(font-latex-match-slide-title-keywords)170 b Fc(:)i(:)f(:)g(:)g(:)353
+b Fk(42)2000 57244 y Fj(font-latex-match-textual-keywords)307
+b Fc(:)171 b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)488 b Fk(42)2000
+58407 y Fj(font-latex-match-type-command-keywords)136
+b Fc(:)172 b(:)f(:)g(:)319 b Fk(43)2000 59570 y Fj
+(font-latex-match-type-)3024 60733 y(declaration-keywords)236
+b Fc(:)171 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)g(:)418 b Fk(43)2000 61896 y Fj
+(font-latex-match-variable-keywords)273 b Fc(:)171 b(:)g(:)g(:)g(:)g(:)
+g(:)h(:)454 b Fk(42)2000 63059 y Fj(font-latex-match-warning-keywords)
+307 b Fc(:)171 b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)488 b
+Fk(42)2000 64222 y Fj(font-latex-math-environments)248
+b Fc(:)172 b(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)431
+b Fk(45)2000 65385 y Fj(font-latex-quotes)167 b Fc(:)k(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)g(:)g(:)h(:)349 b Fk(44)2000 66548 y Fj
+(font-latex-script-char-face)283 b Fc(:)171 b(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)465 b Fk(46)2000 67711
+y Fj(font-latex-script-display)123 b Fc(:)171 b(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)305 b
+Fk(46)2000 68874 y Fj(font-latex-sectioning-0-face)248
+b Fc(:)172 b(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)431
+b Fk(42)2000 70037 y Fj(font-latex-sectioning-1-face)248
+b Fc(:)172 b(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)431
+b Fk(42)2000 71200 y Fj(font-latex-sectioning-2-face)248
+b Fc(:)172 b(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)431
+b Fk(42)26997 3985 y Fj(font-latex-sectioning-3-face)248
+b Fc(:)172 b(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)431
+b Fk(42)26997 5152 y Fj(font-latex-sectioning-4-face)248
+b Fc(:)172 b(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)431
+b Fk(42)26997 6319 y Fj(font-latex-sectioning-5-face)248
+b Fc(:)172 b(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)431
+b Fk(42)26997 7486 y Fj(font-latex-slide-title-face)283
+b Fc(:)171 b(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
+465 b Fk(42)26997 8653 y Fj(font-latex-subscript-face)123
+b Fc(:)171 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)305 b Fk(45)26997 9820 y Fj(font-latex-superscript-face)283
+b Fc(:)171 b(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
+465 b Fk(45)26997 10988 y Fj(font-latex-user-keyword-classes)146
+b Fc(:)172 b(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)329
+b Fk(44)26946 14441 y FB(J)26997 16001 y Fj
+(japanese-LaTeX-default-style)248 b Fc(:)172 b(:)f(:)g(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)431 b Fk(77)26997 17168
+y Fj(japanese-TeX-engine-default)283 b Fc(:)171 b(:)g(:)g(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)465 b Fk(76)26997
+18336 y Fj(japanese-TeX-mode)167 b Fc(:)k(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)350 b Fk(76)26997 19503 y Fj(japanese-TeX-use-kanji-opt-flag)
+146 b Fc(:)172 b(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)329
+b Fk(77)26946 22956 y FB(L)26997 24516 y Fj(LaTeX-amsmath-label)99
+b Fc(:)171 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
+f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)282 b Fk(28)26997
+25684 y Fj(LaTeX-auto-class-regexp-list)248 b Fc(:)172
+b(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)431
+b Fk(72)26997 26851 y Fj(LaTeX-auto-counter-regexp-list)180
+b Fc(:)172 b(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)363
+b Fk(73)26997 28018 y Fj(LaTeX-auto-index-regexp-list)248
+b Fc(:)172 b(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)431
+b Fk(72)26997 29185 y Fj(LaTeX-auto-label-regexp-list)248
+b Fc(:)172 b(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)431
+b Fk(72)26997 30352 y Fj(LaTeX-auto-length-regexp-list)214
+b Fc(:)172 b(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)397
+b Fk(73)26997 31519 y Fj(LaTeX-auto-minimal-regexp-list)180
+b Fc(:)172 b(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)363
+b Fk(72)26997 32686 y Fj(LaTeX-auto-pagestyle-regexp-list)112
+b Fc(:)172 b(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)295
+b Fk(73)26997 33853 y Fj(LaTeX-auto-regexp-list)224 b
+Fc(:)172 b(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)407 b Fk(73)26997 35020 y Fj
+(LaTeX-auto-savebox-regexp-list)180 b Fc(:)172 b(:)f(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)363 b Fk(73)26997 36187 y Fj
+(LaTeX-babel-hyphen)133 b Fc(:)171 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)316
+b Fk(76)26997 37354 y Fj(LaTeX-babel-hyphen-after-hyphen)146
+b Fc(:)172 b(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)329
+b Fk(76)26997 38521 y Fj(LaTeX-babel-hyphen-language-alist)307
+b Fc(:)171 b(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)489 b Fk(75)26997
+39689 y Fj(LaTeX-begin-regexp)133 b Fc(:)171 b(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)316 b Fk(37)26997 40856 y Fj(LaTeX-biblatex-use-Biber)157
+b Fc(:)171 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)339 b Fk(54)26997 42023 y Fj(LaTeX-)p
+Fe(classname)p Fj(-class-options)214 b Fc(:)172 b(:)f(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)397 b Fk(90)26997 43190
+y Fj(LaTeX-clean-intermediate-suffixes)307 b Fc(:)171
+b(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)489 b Fk(67)26997 44357
+y Fj(LaTeX-clean-output-suffixes)283 b Fc(:)171 b(:)g(:)g(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)465 b Fk(67)26997
+45524 y Fj(LaTeX-command)303 b Fc(:)171 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)g(:)g(:)g(:)g(:)486 b Fk(59)26997 46691 y Fj
+(LaTeX-csquotes-close-quote)89 b Fc(:)171 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)271 b Fk(20)26997
+47858 y Fj(LaTeX-csquotes-open-quote)123 b Fc(:)171 b(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)305
+b Fk(20)26997 49025 y Fj(LaTeX-csquotes-quote-after-quote)112
+b Fc(:)172 b(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)295
+b Fk(20)26997 50192 y Fj(LaTeX-default-author)e Fc(:)171
+b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)475 b Fk(85)26997 51359 y Fj
+(LaTeX-default-document-environment)273 b Fc(:)171 b(:)g(:)g(:)g(:)g(:)
+g(:)g(:)455 b Fk(27)26997 52526 y Fj(LaTeX-default-environment)123
+b Fc(:)171 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)305 b Fk(27)26997 53693 y Fj(LaTeX-default-format)293
+b Fc(:)171 b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)475 b Fk(29)26997 54861
+y Fj(LaTeX-default-options)259 b Fc(:)171 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)441
+b Fk(85)26997 56028 y Fj(LaTeX-default-position)224 b
+Fc(:)172 b(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)407 b Fk(29)26997 57195 y Fj
+(LaTeX-default-style)99 b Fc(:)171 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)282
+b Fk(85)26997 58362 y Fj(LaTeX-default-width)99 b Fc(:)171
+b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)282 b Fk(29)26997 59529
+y Fj(LaTeX-done-mark)235 b Fc(:)171 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)g(:)418 b Fk(25)26997 60696 y Fj
+(LaTeX-electric-left-right-brace)146 b Fc(:)172 b(:)f(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)329 b Fk(22)26997 61863 y Fj
+(LaTeX-enable-toolbar)293 b Fc(:)171 b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)475
+b Fk(52)26997 63030 y Fj(LaTeX-end-regexp)201 b Fc(:)171
+b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)384 b Fk(37)26997
+64197 y Fj(LaTeX-eqnarray-label)293 b Fc(:)171 b(:)g(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)475
+b Fk(28)26997 65364 y Fj(LaTeX-equation-label)293 b Fc(:)171
+b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)475 b Fk(28)26997 66531 y Fj(LaTeX-figure-label)
+218 b Fc(:)172 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)401 b Fk(28,)342 b(29)26997
+67698 y Fj(LaTeX-fill-break-at-separators)180 b Fc(:)172
+b(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)363 b
+Fk(39)26997 68866 y Fj(LaTeX-fill-break-before-code-comments)170
+b Fc(:)i(:)f(:)g(:)g(:)353 b Fk(39)26997 70033 y Fj
+(LaTeX-fill-excluded-macros)89 b Fc(:)171 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)271 b Fk(39)26997
+71200 y Fj(LaTeX-float)228 b Fc(:)172 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)411 b Fk(28,)342 b(29)p eop end
+%%Page: 131 136
+TeXDict begin 131 135 bop 2000 -1550 a FC(Indices)42505
+b(131)2000 3985 y Fj(LaTeX-fold-env-spec-list)157 b Fc(:)171
+b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)339 b Fk(50)2000 5223 y Fj(LaTeX-fold-macro-spec-list)89
+b Fc(:)172 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+g(:)g(:)271 b Fk(50)2000 6461 y Fj(LaTeX-fold-math-spec-list)123
+b Fc(:)171 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
+f(:)g(:)g(:)305 b Fk(50)2000 7699 y Fj(LaTeX-font-list)235
+b Fc(:)171 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)417
+b Fk(24)2000 8936 y Fj(LaTeX-indent-environment-check)180
+b Fc(:)172 b(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)363
+b Fk(36)2000 10174 y Fj(LaTeX-indent-environment-list)214
+b Fc(:)172 b(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)397
+b Fk(36)2000 11412 y Fj(LaTeX-indent-level)218 b Fc(:)172
+b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)h(:)401 b Fk(35,)341 b(36)2000 12650 y
+Fj(LaTeX-item-indent)253 b Fc(:)171 b(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)435
+b Fk(35,)341 b(37)2000 13888 y Fj(LaTeX-item-regexp)167
+b Fc(:)k(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)349 b Fk(35)2000
+15126 y Fj(LaTeX-label-alist)167 b Fc(:)k(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)h(:)349 b Fk(27)2000 16363 y Fj(LaTeX-level)143 b
+Fc(:)172 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)326 b Fk(25)2000 17601 y Fj(LaTeX-math-abbrev-prefix)157
+b Fc(:)171 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
+f(:)g(:)g(:)g(:)339 b Fk(30)2000 18839 y Fj(LaTeX-math-default)133
+b Fc(:)172 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)315 b Fk(30)2000
+20077 y Fj(LaTeX-math-list)235 b Fc(:)171 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)417 b Fk(30)2000 21315 y Fj(LaTeX-math-menu-unicode)191
+b Fc(:)171 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)373 b Fk(31)2000 22552 y Fj(LaTeX-mode-hook)235
+b Fc(:)171 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)417
+b Fk(69)2000 23790 y Fj(LaTeX-name)177 b Fc(:)172 b(:)f(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)360 b
+Fk(25)2000 25028 y Fj(LaTeX-Omega-command)99 b Fc(:)172
+b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)282 b Fk(59)2000 26266
+y Fj(LaTeX-)p Fe(packagename)p Fj(-package-options)307
+b Fc(:)171 b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)488 b Fk(89)2000
+27504 y Fj(LaTeX-paragraph-commands)157 b Fc(:)171 b(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)339
+b Fk(38)2000 28742 y Fj(LaTeX-provided-class-options)248
+b Fc(:)172 b(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)431
+b Fk(89)2000 29979 y Fj(LaTeX-provided-package-options)180
+b Fc(:)172 b(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)363
+b Fk(88)2000 31217 y Fj(LaTeX-section-hook)133 b Fc(:)172
+b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)315 b Fk(25)2000 32455
+y Fj(LaTeX-section-label)184 b Fc(:)172 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)367
+b Fk(25,)341 b(26)2000 33693 y Fj(LaTeX-short-caption-prompt-length)164
+b Fc(:)172 b(:)f(:)g(:)g(:)g(:)347 b Fk(28,)341 b(29)2000
+34931 y Fj(LaTeX-style-list)201 b Fc(:)171 b(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g
+(:)g(:)g(:)h(:)383 b Fk(85)2000 36169 y Fj(LaTeX-syntactic-comments)242
+b Fc(:)172 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+425 b Fk(36,)341 b(37)2000 37406 y Fj(LaTeX-table-label)253
+b Fc(:)171 b(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)435 b Fk(28,)341 b(29)2000
+38644 y Fj(LaTeX-title)143 b Fc(:)172 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)326 b Fk(25)2000 39882
+y Fj(LaTeX-toc)211 b Fc(:)171 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)394 b Fk(25)2000 41120
+y Fj(LaTeX-top-caption-list)311 b Fc(:)171 b(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)493 b Fk(28,)341
+b(29)2000 42358 y Fj(LaTeX-verbatim-environments)283
+b Fc(:)171 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+465 b Fk(46)2000 43596 y Fj(LaTeX-verbatim-macros-with-braces)307
+b Fc(:)171 b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)488 b Fk(46)2000
+44833 y Fj(LaTeX-verbatim-macros-with-delims)307 b Fc(:)171
+b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)488 b Fk(46)1949 49598
+y FB(O)2000 51378 y Fj(outline-regexp)269 b Fc(:)171
+b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)451
+b Fk(34)1949 56317 y FB(P)2000 58097 y Fj(plain-TeX-auto-regexp-list)89
+b Fc(:)172 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+g(:)g(:)271 b Fk(73)2000 59335 y Fj
+(plain-TeX-clean-intermediate-suffixes)170 b Fc(:)i(:)f(:)g(:)g(:)353
+b Fk(67)2000 60573 y Fj(plain-TeX-clean-output-suffixes)146
+b Fc(:)172 b(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)329
+b Fk(67)2000 61811 y Fj(plain-TeX-enable-toolbar)157
+b Fc(:)171 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
+f(:)g(:)g(:)g(:)339 b Fk(52)2000 63049 y Fj(plain-TeX-mode-hook)99
+b Fc(:)172 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)282 b Fk(69)26946
+3985 y FB(T)26997 5561 y Fj(TeX-after-compilation-)28021
+6733 y(finished-functions)304 b Fc(:)171 b(:)g(:)g(:)g(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)486
+b Fk(69)26997 7906 y Fj(TeX-arg-cite-note-p)99 b Fc(:)171
+b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)282 b Fk(84)26997 9078
+y Fj(TeX-arg-input-file-search)208 b Fc(:)172 b(:)f(:)g(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)390 b Fk(84,)342 b(85)26997
+10250 y Fj(TeX-arg-item-label-p)293 b Fc(:)171 b(:)g(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)475
+b Fk(29)26997 11422 y Fj(TeX-arg-right-insert-p)224 b
+Fc(:)172 b(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)407 b Fk(22)26997 12594 y Fj
+(TeX-auto-cleanup-hook)259 b Fc(:)171 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)441
+b Fk(92)26997 13766 y Fj(TeX-auto-empty-regexp-list)89
+b Fc(:)171 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)271 b Fk(72)26997 14938 y Fj(TeX-auto-full-regexp-list)123
+b Fc(:)171 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)305 b Fk(73)26997 16110 y Fj(TeX-auto-global)235
+b Fc(:)171 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)418
+b Fk(79)26997 17282 y Fj(TeX-auto-local)269 b Fc(:)171
+b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)452
+b Fk(80)26997 18455 y Fj(TeX-auto-parse-length)259 b
+Fc(:)171 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)441 b Fk(72)26997 19627 y
+Fj(TeX-auto-prepare-hook)259 b Fc(:)171 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)441
+b Fk(92)26997 20799 y Fj(TeX-auto-private)201 b Fc(:)171
+b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)384 b Fk(79)26997
+21971 y Fj(TeX-auto-regexp-list)150 b Fc(:)172 b(:)f(:)g(:)g(:)g(:)g(:)
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)333
+b Fk(72,)342 b(91)26997 23143 y Fj(TeX-auto-save)303
+b Fc(:)171 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)486
+b Fk(71)26997 24315 y Fj(TeX-auto-untabify)167 b Fc(:)k(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)g(:)g(:)g(:)g(:)350 b Fk(72)26997 25487 y Fj
+(TeX-bar-LaTeX-button-alist)89 b Fc(:)171 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)271 b Fk(52)26997
+26659 y Fj(TeX-bar-LaTeX-buttons)259 b Fc(:)171 b(:)g(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)441
+b Fk(52)26997 27831 y Fj(TeX-bar-TeX-all-button-alists)214
+b Fc(:)172 b(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)397
+b Fk(52)26997 29004 y Fj(TeX-bar-TeX-buttons)99 b Fc(:)171
+b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)282 b Fk(52)26997 30176
+y Fj(TeX-brace-indent-level)224 b Fc(:)172 b(:)f(:)g(:)g(:)g(:)h(:)f(:)
+g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)407
+b Fk(37)26997 31348 y Fj(TeX-check-engine)201 b Fc(:)171
+b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)384 b Fk(59)26997
+32520 y Fj(TeX-check-path)269 b Fc(:)171 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)g(:)g(:)g(:)452 b Fk(55)26997 33692 y Fj(TeX-check-TeX)303
+b Fc(:)171 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)486
+b Fk(59)26997 34864 y Fj(TeX-check-TeX-command-not-found)146
+b Fc(:)172 b(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)329
+b Fk(59)26997 36036 y Fj(TeX-clean-confirm)167 b Fc(:)k(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)g(:)g(:)g(:)g(:)350 b Fk(68)26997 37208 y Fj(TeX-close-quote)235
+b Fc(:)171 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)418
+b Fk(20)26997 38380 y Fj(TeX-command)143 b Fc(:)171 b(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)326 b
+Fk(59)26997 39553 y Fj(TeX-command-default)99 b Fc(:)171
+b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)282 b Fk(54)26997 40725
+y Fj(TeX-command-extra-options)123 b Fc(:)171 b(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)305 b
+Fk(59)26997 41897 y Fj(TeX-command-list)286 b Fc(:)172
+b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)469 b Fk(52,)342 b(54)26997
+43069 y Fj(TeX-complete-expert-commands)106 b Fc(:)172
+b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)288 b Fk(27,)342
+b(33)26997 44241 y Fj(TeX-complete-list)167 b Fc(:)k(:)g(:)g(:)h(:)f(:)
+g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)350 b Fk(31)26997 45413 y Fj(TeX-date-format)235
+b Fc(:)171 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)418
+b Fk(83)26997 46585 y Fj(TeX-debug-bad-boxes)99 b Fc(:)171
+b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)282 b Fk(65)26997 47757
+y Fj(TeX-debug-warnings)133 b Fc(:)171 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g
+(:)316 b Fk(65)26997 48930 y Fj(TeX-default-macro)167
+b Fc(:)k(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)350 b Fk(32)26997
+50102 y Fj(TeX-default-mode)286 b Fc(:)172 b(:)f(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)469
+b Fk(76,)342 b(77)26997 51274 y Fj(TeX-dialect)143 b
+Fc(:)171 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)326 b Fk(81)26997 52446 y Fj(TeX-display-help)201
+b Fc(:)171 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)384
+b Fk(65)26997 53618 y Fj(TeX-DVI-via-PDFTeX)133 b Fc(:)171
+b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)316 b Fk(57)26997
+54790 y Fj(TeX-electric-escape)99 b Fc(:)171 b(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)282 b Fk(33)26997 55962 y Fj(TeX-electric-math)167
+b Fc(:)k(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)350 b Fk(21)26997
+57134 y Fj(TeX-electric-sub-and-superscript)112 b Fc(:)172
+b(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)295 b Fk(31)26997
+58306 y Fj(TeX-engine)263 b Fc(:)171 b(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)g(:)445 b Fk(58,)342 b(76)26997 59479
+y Fj(TeX-engine-alist)286 b Fc(:)172 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)469
+b Fk(59,)342 b(76)26997 60651 y Fj(TeX-engine-alist-builtin)157
+b Fc(:)171 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)339 b Fk(59)26997 61823 y Fj
+(TeX-error-overview-frame-parameters)238 b Fc(:)172 b(:)f(:)g(:)g(:)g
+(:)g(:)421 b Fk(66)26997 62995 y Fj
+(TeX-error-overview-open-after-TeX-run)170 b Fc(:)i(:)f(:)g(:)g(:)353
+b Fk(66)26997 64167 y Fj(TeX-error-overview-setup)157
+b Fc(:)171 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)339 b Fk(66)26997 65339 y Fj(TeX-expand-list)235
+b Fc(:)171 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)418
+b Fk(54)26997 66511 y Fj(TeX-file-line-error)99 b Fc(:)171
+b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)282 b Fk(60)26997 67683
+y Fj(TeX-file-recurse)201 b Fc(:)171 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)384 b Fk(78)26997 68855 y Fj(TeX-fold-auto)303
+b Fc(:)171 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)486
+b Fk(48)26997 70028 y Fj(TeX-fold-command-prefix)191
+b Fc(:)171 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)373 b Fk(49)26997 71200 y Fj
+(TeX-fold-env-spec-list)224 b Fc(:)172 b(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)407
+b Fk(49)p eop end
+%%Page: 132 137
+TeXDict begin 132 136 bop 2000 -1550 a FC(Indices)42505
+b(132)2000 3985 y Fj(TeX-fold-force-fontify)224 b Fc(:)172
+b(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)407 b Fk(47)2000 5147 y Fj
+(TeX-fold-help-echo-max-length)214 b Fc(:)172 b(:)f(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)397 b Fk(50)2000 6310 y Fj
+(TeX-fold-macro-spec-list)157 b Fc(:)171 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)339 b
+Fk(49)2000 7472 y Fj(TeX-fold-math-spec-list)191 b Fc(:)171
+b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)373 b Fk(50)2000 8634 y Fj(TeX-fold-preserve-comments)89
+b Fc(:)172 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+g(:)g(:)271 b Fk(48)2000 9797 y Fj(TeX-fold-type-list)133
+b Fc(:)172 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)315 b Fk(47)2000
+10959 y Fj(TeX-fold-unfold-around-mark)283 b Fc(:)171
+b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)465
+b Fk(48)2000 12121 y Fj(TeX-fold-unspec-env-display-string)273
+b Fc(:)171 b(:)g(:)g(:)g(:)g(:)g(:)h(:)454 b Fk(50)2000
+13284 y Fj(TeX-fold-unspec-macro-display-string)204 b
+Fc(:)172 b(:)f(:)g(:)g(:)g(:)387 b Fk(50)2000 14446 y
+Fj(TeX-fold-unspec-use-name)157 b Fc(:)171 b(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)339 b
+Fk(50)2000 15608 y Fj(TeX-font-list)303 b Fc(:)171 b(:)g(:)g(:)g(:)h(:)
+f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)485 b Fk(24)2000 16770
+y Fj(TeX-header-end)127 b Fc(:)171 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g
+(:)310 b Fk(52,)341 b(53)2000 17933 y Fj(TeX-ignore-file)235
+b Fc(:)171 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)417
+b Fk(79)2000 19095 y Fj(TeX-ignore-warnings)99 b Fc(:)172
+b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)282 b Fk(65)2000 20257
+y Fj(TeX-insert-braces)167 b Fc(:)k(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
+349 b Fk(33)2000 21420 y Fj(TeX-insert-braces-alist)191
+b Fc(:)171 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)373 b Fk(33)2000 22582 y Fj
+(TeX-insert-macro-default-style)180 b Fc(:)172 b(:)f(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)g(:)g(:)363 b Fk(32)2000 23744 y Fj
+(TeX-install-font-lock)259 b Fc(:)171 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)441
+b Fk(40)2000 24907 y Fj(TeX-interactive-mode)293 b Fc(:)171
+b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)475 b Fk(57)2000 26069 y Fj
+(TeX-ispell-extend-skip-list)283 b Fc(:)171 b(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)465 b Fk(55)2000 27231
+y Fj(TeX-ispell-verb-delimiters)89 b Fc(:)172 b(:)f(:)g(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)271 b Fk(57)2000
+28394 y Fj(TeX-japanese-process-input-)3024 29556 y(coding-system)246
+b Fc(:)171 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)428
+b Fk(77)2000 30718 y Fj(TeX-japanese-process-output-)3024
+31880 y(coding-system)246 b Fc(:)171 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)h(:)428 b Fk(77)2000 33043 y Fj(TeX-language-bg-hook)293
+b Fc(:)171 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)475 b Fk(74)2000 34205
+y Fj(TeX-language-cz-hook)293 b Fc(:)171 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)475
+b Fk(74)2000 35367 y Fj(TeX-language-de-hook)293 b Fc(:)171
+b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)475 b Fk(74)2000 36530 y Fj
+(TeX-language-dk-hook)293 b Fc(:)171 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)475
+b Fk(74)2000 37692 y Fj(TeX-language-en-hook)293 b Fc(:)171
+b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)475 b Fk(74)2000 38854 y Fj
+(TeX-language-is-hook)293 b Fc(:)171 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)475
+b Fk(74)2000 40017 y Fj(TeX-language-it-hook)293 b Fc(:)171
+b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)475 b Fk(74)2000 41179 y Fj
+(TeX-language-nl-hook)293 b Fc(:)171 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)475
+b Fk(74)2000 42341 y Fj(TeX-language-pl-hook)293 b Fc(:)171
+b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)475 b Fk(74)2000 43504 y Fj
+(TeX-language-pt-br-hook)191 b Fc(:)171 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)373
+b Fk(74)2000 44666 y Fj(TeX-language-pt-hook)293 b Fc(:)171
+b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)475 b Fk(74)2000 45828 y Fj
+(TeX-language-sk-hook)293 b Fc(:)171 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)475
+b Fk(74)2000 46990 y Fj(TeX-language-sv-hook)293 b Fc(:)171
+b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)475 b Fk(74)2000 48153 y Fj(TeX-macro-global)287
+b Fc(:)171 b(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)469 b Fk(15,)341
+b(79)26997 3985 y Fj(TeX-macro-private)167 b Fc(:)k(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)g(:)g(:)350 b Fk(79)26997 5147 y Fj(TeX-master)263
+b Fc(:)171 b(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)445
+b Fk(52,)342 b(70)26997 6310 y Fj(TeX-math-input-method-off-regexp)112
+b Fc(:)172 b(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)295
+b Fk(31)26997 7472 y Fj(TeX-newline-function)150 b Fc(:)172
+b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g
+(:)g(:)g(:)333 b Fk(35,)342 b(37)26997 8634 y Fj(TeX-Omega-command)167
+b Fc(:)k(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)350 b Fk(59)26997
+9797 y Fj(TeX-one-master)269 b Fc(:)171 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)g(:)g(:)g(:)452 b Fk(70)26997 10959 y Fj(TeX-open-quote)269
+b Fc(:)171 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)452
+b Fk(20)26997 12121 y Fj(TeX-outline-extra)167 b Fc(:)k(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)g(:)g(:)g(:)g(:)350 b Fk(50)26997 13284 y Fj(TeX-output-dir)269
+b Fc(:)171 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)452
+b Fk(67)26997 14446 y Fj(TeX-parse-all-errors)293 b Fc(:)171
+b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)475 b Fk(64)26997 15608 y Fj(TeX-parse-self)127
+b Fc(:)171 b(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)309 b
+Fk(71,)342 b(76)26997 16770 y Fj(TeX-PDF-from-DVI)201
+b Fc(:)171 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)384
+b Fk(58)26997 17933 y Fj(TeX-PDF-mode)109 b Fc(:)171
+b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)292
+b Fk(57)26997 19095 y Fj(TeX-quote-after-quote)259 b
+Fc(:)171 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)441 b Fk(20)26997 20257 y
+Fj(TeX-quote-language-alist)157 b Fc(:)171 b(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)339 b
+Fk(75)26997 21420 y Fj(TeX-raise-frame-function)157 b
+Fc(:)171 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)339 b Fk(63)26997 22582 y Fj(TeX-region)263
+b Fc(:)171 b(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)445
+b Fk(52,)342 b(53)26997 23744 y Fj(TeX-save-query)269
+b Fc(:)171 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)452
+b Fk(71)26997 24907 y Fj(TeX-show-compilation)293 b Fc(:)171
+b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)475 b Fk(60)26997 26069 y Fj
+(TeX-source-correlate-map)157 b Fc(:)171 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)339 b
+Fk(63)26997 27231 y Fj(TeX-source-correlate-method)140
+b Fc(:)172 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)322
+b Fk(57,)342 b(62)26997 28394 y Fj(TeX-source-correlate-mode)123
+b Fc(:)171 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)305 b Fk(57)26997 29556 y Fj
+(TeX-source-correlate-start-server)i Fc(:)171 b(:)g(:)g(:)g(:)g(:)g(:)g
+(:)g(:)489 b Fk(63)26997 30718 y Fj(TeX-style-global)201
+b Fc(:)171 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)384
+b Fk(79)26997 31880 y Fj(TeX-style-local)235 b Fc(:)171
+b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)418 b
+Fk(80)26997 33043 y Fj(TeX-style-path)269 b Fc(:)171
+b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)452
+b Fk(78)26997 34205 y Fj(TeX-style-private)167 b Fc(:)k(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)g(:)g(:)g(:)g(:)350 b Fk(79)26997 35367 y Fj
+(TeX-suppress-ignored-warnings)214 b Fc(:)172 b(:)f(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)397 b Fk(65)26997 36530 y
+Fj(TeX-trailer-start)253 b Fc(:)171 b(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)435
+b Fk(52,)342 b(53)26997 37692 y Fj(TeX-view-evince-keep-focus)89
+b Fc(:)171 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)271 b Fk(62)26997 38854 y Fj(TeX-view-predicate-list)191
+b Fc(:)171 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)373 b Fk(61)26997 40017 y Fj(TeX-view-program-list)
+259 b Fc(:)171 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)441 b Fk(61)26997 41179
+y Fj(TeX-view-program-selection)89 b Fc(:)171 b(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)271 b Fk(61)26997
+42341 y Fj(Texinfo-clean-intermediate-suffixes)238 b
+Fc(:)172 b(:)f(:)g(:)g(:)g(:)g(:)421 b Fk(67)26997 43504
+y Fj(Texinfo-clean-output-suffixes)214 b Fc(:)172 b(:)f(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)397 b Fk(67)26997 44666
+y Fj(Texinfo-mode-hook)167 b Fc(:)k(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+350 b Fk(69)26997 45828 y Fj(texinfo-section-list)293
+b Fc(:)171 b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)475 b Fk(34)26997 46990
+y Fj(texmathp-tex-commands)259 b Fc(:)171 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)441
+b Fk(45)26997 48153 y Fj(texmathp-tex-commands-default)214
+b Fc(:)172 b(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)397
+b Fk(45)2000 51363 y FB(Concept)599 b(Index)1949 54828
+y(.)2000 56440 y Fj(.emacs)114 b Fc(:)171 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)297
+b Fk(7)1949 60119 y Fb(n)2000 61731 y Fk(`)p Fj(\\begin)p
+Fk(')257 b Fc(:)171 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)439 b Fk(26)2000 62915
+y Fj(\\chapter)103 b Fc(:)171 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)g(:)g(:)286 b Fk(16,)341 b(24)2000 64098
+y Fj(\\)p Fk(cite,)i(completion)g(of)212 b Fc(:)171 b(:)g(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+g(:)g(:)g(:)g(:)g(:)395 b Fk(34)2000 65282 y Fj(\\emph)205
+b Fc(:)171 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)388 b Fk(17,)341 b(23)2000 66465 y(`)p
+Fj(\\end)p Fk(')97 b Fc(:)172 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)279
+b Fk(26)2000 67649 y Fj(\\)p Fk(include)256 b Fc(:)171
+b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)g(:)g(:)438 b Fk(69)2000 68833 y Fj(\\)p Fk(input)198
+b Fc(:)172 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)381 b Fk(69)2000 70016
+y Fj(\\)p Fk(item)170 b Fc(:)i(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)352
+b Fk(29)2000 71200 y Fj(\\label)171 b Fc(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
+f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)354 b
+Fk(16,)341 b(24)26997 54828 y Fj(\\)p Fk(lab)28 b(el,)343
+b(completion)299 b Fc(:)171 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
+480 b Fk(34)26997 55997 y Fj(\\mathgt)279 b Fc(:)171
+b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)g(:)g(:)462 b Fk(78)26997 57167 y Fj(\\mathmc)279
+b Fc(:)171 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)462 b Fk(78)26997 58336 y Fj(\\)p
+Fk(ref,)341 b(completion)97 b Fc(:)173 b(:)e(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)280 b Fk(34)26997 59505 y Fj(\\section)103
+b Fc(:)171 b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)285 b Fk(16,)342 b(24)26997 60675 y Fj(\\subsection)228
+b Fc(:)172 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)411
+b Fk(16,)342 b(24)26997 61844 y Fj(\\textbf)137 b Fc(:)171
+b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+319 b Fk(17,)342 b(23)26997 63014 y Fj(\\textgt)279 b
+Fc(:)171 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+g(:)g(:)g(:)g(:)g(:)462 b Fk(78)26997 64183 y Fj(\\textit)137
+b Fc(:)171 b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)319 b Fk(17,)342 b(23)26997 65353 y Fj(\\textmc)279
+b Fc(:)171 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)462 b Fk(78)26997 66522 y Fj(\\textmd)279
+b Fc(:)171 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)462 b Fk(23)26997 67691 y Fj(\\textnormal)143
+b Fc(:)171 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
+f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)326 b Fk(24)26997 68861 y Fj(\\textrm)137 b Fc(:)171
+b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+319 b Fk(17,)342 b(23)26997 70030 y Fj(\\textsc)137 b
+Fc(:)171 b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
+f(:)g(:)319 b Fk(17,)342 b(23)26997 71200 y Fj(\\textsf)137
+b Fc(:)171 b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)319 b Fk(17,)342 b(23)p eop end
+%%Page: 133 138
+TeXDict begin 133 137 bop 2000 -1550 a FC(Indices)42505
+b(133)2000 3985 y Fj(\\textsl)137 b Fc(:)171 b(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)320 b Fk(17,)341
+b(23)2000 5151 y Fj(\\textsw)279 b Fc(:)171 b(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)462
+b Fk(23)2000 6317 y Fj(\\texttt)137 b Fc(:)171 b(:)g(:)g(:)g(:)g(:)h(:)
+f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)320 b
+Fk(17,)341 b(23)2000 7482 y Fj(\\textulc)245 b Fc(:)171
+b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)428 b Fk(23)1949 10770 y FB(A)2000 12327 y Fk(Abbreviations)115
+b Fc(:)171 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+(:)297 b Fk(30)2000 13492 y(Adding)341 b(a)g(st)-28 b(yle)343
+b(ho)28 b(ok)101 b Fc(:)172 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)284
+b Fk(80)2000 14658 y(Adding)341 b(bibliographies)157
+b Fc(:)172 b(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)340 b Fk(88)2000
+15824 y(Adding)h(en)-28 b(vironmen)g(ts)285 b Fc(:)171
+b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)468 b Fk(86)2000 16990
+y(Adding)341 b(lab)28 b(els)173 b Fc(:)f(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)
+g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)355 b Fk(88)2000 18156
+y(Adding)341 b(macros)101 b Fc(:)170 b(:)h(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)g(:)g(:)283 b Fk(82)2000 19321 y(Adding)341
+b(other)g(information)230 b Fc(:)172 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)413
+b Fk(88)2000 20487 y(Adding)341 b(supp)28 b(ort)341 b(for)g(completion)
+h(of)3024 21653 y(pac)-28 b(k)-57 b(age/class)342 b(options)195
+b Fc(:)171 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)378 b Fk(88)2000 22819
+y(Adding)341 b(to)h Fj(PATH)f Fk(in)h(Windo)-28 b(ws)137
+b Fc(:)169 b(:)i(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
+f(:)g(:)g(:)g(:)319 b Fk(11)2000 23985 y(align.el)291
+b Fc(:)171 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)472 b Fk(36)2000 25150 y(amsmath)144
+b Fc(:)172 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g
+(:)g(:)328 b Fk(28,)341 b(29)2000 26316 y(Argumen)-28
+b(ts)341 b(to)g(T)-85 b(eX)341 b(macros)281 b Fc(:)171
+b(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
+(:)g(:)g(:)464 b Fk(31)2000 27482 y(ASCI)28 b(I)340 b(pT)-85
+b(eX)289 b Fc(:)171 b(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+473 b Fk(73,)341 b(76)2000 28648 y Fj(auctex.el)297 b
+Fc(:)171 b(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)480
+b Fk(7,)341 b(112)2000 29813 y Fj(auto)g Fk(directories.)263
+b Fc(:)171 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)444
+b Fk(78)2000 30979 y(auto-\014ll-mo)28 b(de)133 b Fc(:)173
+b(:)e(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)315
+b Fk(35)2000 32145 y(Auto-Rev)-28 b(eal)239 b Fc(:)172
+b(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)422
+b Fk(46)2000 33311 y(Automatic)190 b Fc(:)172 b(:)f(:)g(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
+f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)372 b
+Fk(78)2000 34477 y(Automatic)342 b(Customization)187
+b Fc(:)172 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)g(:)g(:)g(:)g(:)g(:)370 b Fk(78)2000 35642 y(Automatic)342
+b(P)-28 b(arsing)165 b Fc(:)170 b(:)h(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)347 b Fk(71)2000 36808 y(Automatic)342 b(up)28 b(dating)342
+b(st)-28 b(yle)342 b(ho)28 b(oks)141 b Fc(:)172 b(:)f(:)g(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)324 b Fk(80)1949
+40207 y FB(B)2000 41763 y Fk(Bad)341 b(b)28 b(o)-28 b(xes)251
+b Fc(:)172 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)433 b Fk(64)2000 42929 y(Bib)28 b(er)196
+b Fc(:)172 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)378 b Fk(54)2000 44095
+y(biblatex)305 b Fc(:)171 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)486 b Fk(54)2000
+45261 y(Bibliographies,)343 b(adding)292 b Fc(:)171 b(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)g(:)475 b Fk(88)2000 46426 y(Bibliograph)-28 b(y)153
+b Fc(:)172 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g
+(:)g(:)336 b Fk(52)2000 47592 y(bibliograph)-28 b(y)-85
+b(,)341 b(completion)245 b Fc(:)173 b(:)e(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)428
+b Fk(34)2000 48758 y(BibT)-85 b(eX)154 b Fc(:)171 b(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)337
+b Fk(52)2000 49924 y(BibT)-85 b(eX,)342 b(completion)126
+b Fc(:)172 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)308 b
+Fk(34)2000 51089 y Fj(book.el)279 b Fc(:)171 b(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)462
+b Fk(80)2000 52255 y(Braces)179 b Fc(:)171 b(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)361
+b Fk(20)2000 53421 y(Brac)-28 b(k)g(ets)193 b Fc(:)171
+b(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)375 b Fk(20)2000 54587 y(Brazilian)342 b(P)-28
+b(ortuguese)184 b Fc(:)171 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)367
+b Fk(74)2000 55753 y(Bulgarian)153 b Fc(:)171 b(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)336
+b Fk(74)1949 59151 y FB(C)2000 60708 y Fk(Changing)341
+b(fon)-28 b(t)288 b Fc(:)172 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)472 b Fk(23)2000 61873 y(Changing)341
+b(the)h(parser)282 b Fc(:)172 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)466
+b Fk(90)2000 63039 y(Chapters)171 b Fc(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)355 b Fk(16,)341
+b(24)2000 64205 y(Chec)-28 b(king)289 b Fc(:)171 b(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)472
+b Fk(66)2000 65371 y(ChinaT)-85 b(eX)288 b Fc(:)171 b(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)472
+b Fk(73)2000 66537 y Fj(chktex)85 b Fc(:)172 b(:)f(:)g(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)268
+b Fk(66)2000 67702 y(citations,)343 b(completion)g(of)271
+b Fc(:)172 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)455 b Fk(34)2000 68868
+y(cite,)343 b(completion)g(of)246 b Fc(:)171 b(:)g(:)g(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+g(:)g(:)g(:)g(:)429 b Fk(34)2000 70034 y(CJK)341 b(language)311
+b Fc(:)171 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)493
+b Fk(73)2000 71200 y Fa(CJK)p Fk(-LaT)-85 b(eX)160 b
+Fc(:)170 b(:)i(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)343 b Fk(73)26997 3985 y(Cleaning)147 b Fc(:)171
+b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)g(:)330 b Fk(67)26997 5186 y(Commands)286 b Fc(:)171
+b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+469 b Fk(52)26997 6388 y(Completion)204 b Fc(:)172 b(:)f(:)g(:)g(:)g(:)
+g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)387
+b Fk(31)26997 7589 y(Con)-28 b(trolling)341 b(the)h(output)217
+b Fc(:)170 b(:)i(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)400 b Fk(67)26997
+8791 y(Cop)-28 b(ying)289 b Fc(:)171 b(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)472
+b Fk(2)26997 9992 y(Cop)-28 b(yrigh)g(t)132 b Fc(:)169
+b(:)j(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)g(:)315 b Fk(2)26997 11193 y(CT)-85 b(eX)119
+b Fc(:)169 b(:)i(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
+f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)301 b Fk(73)26997
+12395 y(Curren)-28 b(t)340 b(\014le)216 b Fc(:)171 b(:)g(:)g(:)g(:)g(:)
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)398
+b Fk(67)26997 13596 y(Customization)230 b Fc(:)171 b(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)412 b Fk(15)26997
+14797 y(Customization,)342 b(p)28 b(ersonal)97 b Fc(:)172
+b(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)280 b Fk(15)26997 15999 y(Customization,)342
+b(site)285 b Fc(:)171 b(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)466
+b Fk(15)26997 17200 y(Czec)-28 b(h)104 b Fc(:)171 b(:)g(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)287 b Fk(74)26946 21163 y FB(D)26997 22830 y Fk(Danish)95
+b Fc(:)171 b(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)277 b Fk(74)26997 24031
+y(Debugging)183 b Fc(:)171 b(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)365 b Fk(64)26997 25233
+y(Default)342 b(command)168 b Fc(:)k(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)351 b Fk(52)26997 26434 y(De\014ning)342 b(bibliographies)g
+(in)f(st)-28 b(yle)343 b(ho)28 b(oks)87 b Fc(:)171 b(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)g(:)270 b Fk(88)26997 27636 y(De\014ning)342
+b(en)-28 b(vironmen)g(ts)341 b(in)h(st)-28 b(yle)342
+b(ho)28 b(oks)215 b Fc(:)172 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+398 b Fk(86)26997 28837 y(De\014ning)342 b(lab)28 b(els)342
+b(in)g(st)-28 b(yle)342 b(ho)28 b(oks)102 b Fc(:)172
+b(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)285 b Fk(88)26997 30038 y(De\014ning)342 b(macros)f(in)g(st)-28
+b(yle)342 b(ho)28 b(oks)259 b Fc(:)171 b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
+f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)441 b Fk(82)26997 31240
+y(De\014ning)342 b(other)f(information)h(in)f(st)-28
+b(yle)342 b(ho)28 b(oks)160 b Fc(:)172 b(:)f(:)g(:)g(:)g(:)g(:)343
+b Fk(88)26997 32441 y(Deleting)g(fon)-28 b(ts)208 b Fc(:)170
+b(:)h(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)390 b
+Fk(17,)342 b(24)26997 33642 y(Descriptions)261 b Fc(:)172
+b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)444
+b Fk(29)26997 34844 y(Displa)-28 b(y)342 b(math)f(mo)28
+b(de)222 b Fc(:)173 b(:)e(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)405
+b Fk(20)26997 36045 y(Distribution)93 b Fc(:)172 b(:)f(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)276
+b Fk(2)26997 37247 y(Do)28 b(cumen)-28 b(tation)269 b
+Fc(:)171 b(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)451
+b Fk(68)26997 38448 y(Do)28 b(cumen)-28 b(ts)294 b Fc(:)171
+b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+476 b Fk(69)26997 39649 y(Do)28 b(cumen)-28 b(ts)342
+b(with)f(m)-28 b(ultiple)343 b(\014les)191 b Fc(:)171
+b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)373
+b Fk(69)26997 40851 y(Dollar)342 b(signs,)f(color)h(bleed)g(with)117
+b Fc(:)171 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
+f(:)g(:)g(:)300 b Fk(46)26997 42052 y(Dollars)293 b Fc(:)171
+b(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)475 b Fk(20)26997 43253 y(Double)342
+b(quotes)280 b Fc(:)171 b(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)g(:)g(:)462 b Fk(20)26997 44455 y(Dutc)-28 b(h)282
+b Fc(:)171 b(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)465 b Fk(74)26946 48418
+y FB(E)26997 50085 y Fk(English)223 b Fc(:)171 b(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)405
+b Fk(74)26997 51286 y(En)-28 b(umerates)150 b Fc(:)171
+b(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+333 b Fk(29)26997 52487 y(En)-28 b(vironmen)g(ts)150
+b Fc(:)171 b(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
+(:)333 b Fk(26)26997 53689 y(En)-28 b(vironmen)g(ts,)341
+b(adding)150 b Fc(:)171 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)333
+b Fk(86)26997 54890 y(Eqnarra)-28 b(y)264 b Fc(:)172
+b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)449 b Fk(28)26997 56091 y(Equation)297 b Fc(:)171
+b(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
+f(:)g(:)479 b Fk(28)26997 57293 y(Equations)95 b Fc(:)171
+b(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)277 b Fk(28)26997 58494 y(Errors)248 b Fc(:)169
+b(:)i(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)430 b Fk(64)26997 59696 y(Europ)28
+b(e)266 b Fc(:)171 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)450 b Fk(73)26997
+60897 y(Europ)28 b(ean)341 b(Characters)91 b Fc(:)169
+b(:)j(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)274 b Fk(73)26997
+62098 y(Examining)342 b(pac)-28 b(k)-57 b(age/class)342
+b(options)174 b Fc(:)d(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
+(:)g(:)357 b Fk(88)26997 63300 y(Example)342 b(of)f(a)h(st)-28
+b(yle)342 b(\014le.)165 b Fc(:)172 b(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)348
+b Fk(80)26997 64501 y(Expansion)237 b Fc(:)171 b(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)420
+b Fk(31)26997 65702 y(External)342 b(Commands)235 b Fc(:)171
+b(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)418 b Fk(52)26997
+66904 y(Extracting)341 b(T)-85 b(eX)341 b(sym)-28 b(b)28
+b(ols)305 b Fc(:)171 b(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)487 b Fk(78)p
+eop end
+%%Page: 134 139
+TeXDict begin 134 138 bop 2000 -1550 a FC(Indices)42505
+b(134)1949 3985 y FB(F)2000 5546 y Fk(F)-85 b(aces)222
+b Fc(:)172 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)405 b Fk(46)2000 6713
+y(FDL,)342 b(GNU)f(F)-85 b(ree)342 b(Do)28 b(cumen)-28
+b(tation)343 b(License)111 b Fc(:)171 b(:)g(:)g(:)h(:)f(:)g(:)g(:)293
+b Fk(93)2000 7880 y(Figure)342 b(en)-28 b(vironmen)g(t)222
+b Fc(:)172 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)405 b
+Fk(28)2000 9047 y(Figures)235 b Fc(:)172 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)418
+b Fk(28)2000 10214 y(Filling)211 b Fc(:)173 b(:)e(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)394
+b Fk(37)2000 11381 y(Finding)342 b(errors)289 b Fc(:)171
+b(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)473
+b Fk(66)2000 12548 y(Finding)342 b(the)g(curren)-28 b(t)340
+b(\014le)309 b Fc(:)171 b(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)490 b
+Fk(67)2000 13715 y(Finding)342 b(the)g(master)f(\014le)178
+b Fc(:)172 b(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
+f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)361 b Fk(67)2000
+14882 y(Floats)266 b Fc(:)171 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)448 b
+Fk(28)2000 16049 y(Flymak)-28 b(e)197 b Fc(:)173 b(:)e(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)379
+b Fk(66)2000 17216 y(F)-85 b(olding)311 b Fc(:)171 b(:)g(:)g(:)h(:)f(:)
+g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)494
+b Fk(46,)341 b(50)2000 18383 y(F)-85 b(on)-28 b(t)341
+b(Lo)28 b(c)-28 b(king)304 b Fc(:)171 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)486 b Fk(40)2000 19550 y(F)-85
+b(on)-28 b(t)341 b(macros)264 b Fc(:)171 b(:)g(:)g(:)g(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)447 b Fk(23)2000
+20717 y(fon)-28 b(t-latex)190 b Fc(:)172 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)372 b
+Fk(40)2000 21884 y(F)-85 b(on)-28 b(ts)208 b Fc(:)171
+b(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
+f(:)g(:)g(:)g(:)g(:)g(:)391 b Fk(23)2000 23051 y(F)-85
+b(ormatting)224 b Fc(:)172 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)407
+b Fk(35,)342 b(37,)f(52)2000 24218 y(F)-85 b(orw)-28
+b(ard)339 b(searc)-28 b(h)304 b Fc(:)171 b(:)g(:)g(:)g(:)g(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)g(:)g(:)487 b Fk(62)2000 25385 y(F)-85
+b(ree)281 b Fc(:)171 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
+f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)463
+b Fk(2)2000 26552 y(F)-85 b(ree)342 b(soft)-28 b(w)g(are)92
+b Fc(:)169 b(:)i(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)274 b Fk(2)1949 29760 y FB(G)2000 31320 y
+Fk(General)342 b(Public)g(License)182 b Fc(:)172 b(:)f(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+g(:)g(:)364 b Fk(2)2000 32487 y(Generating)342 b(sym)-28
+b(b)28 b(ols)179 b Fc(:)172 b(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)362
+b Fk(78)2000 33655 y(German)85 b Fc(:)172 b(:)f(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)268
+b Fk(74)2000 34822 y(Global)342 b(directories)195 b Fc(:)172
+b(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)378 b
+Fk(79)2000 35989 y(Global)342 b(macro)g(directory)97
+b Fc(:)171 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)280 b Fk(79)2000
+37156 y(Global)342 b(st)-28 b(yle)343 b(ho)28 b(ok)342
+b(directory)95 b Fc(:)171 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)278 b Fk(79)2000 38323
+y(Global)342 b(T)-85 b(eX)341 b(macro)g(directory)126
+b Fc(:)171 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)308 b Fk(79)2000 39490 y(GPL)158 b Fc(:)171
+b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)341 b Fk(2)1949 42697
+y FB(H)2000 44258 y Fk(Header)302 b Fc(:)171 b(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)485
+b Fk(52)2000 45425 y(Headers)100 b Fc(:)171 b(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)283
+b Fk(50)2000 46592 y(Hide)342 b(Macros)200 b Fc(:)171
+b(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)383
+b Fk(46)2000 47759 y(HLaT)-85 b(eX)211 b Fc(:)170 b(:)h(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)394
+b Fk(73)1949 50966 y FB(I)2000 52527 y Fk(I/O)341 b(correlation)159
+b Fc(:)172 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)342
+b Fk(57,)f(62)2000 53694 y(Including)247 b Fc(:)171 b(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)429
+b Fk(69)2000 54861 y(Inden)-28 b(tation)204 b Fc(:)171
+b(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+387 b Fk(35)2000 56028 y(Inden)-28 b(ting)204 b Fc(:)171
+b(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)387 b Fk(35)2000 57195 y(Indexing)175 b Fc(:)d(:)f(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)358
+b Fk(52)2000 58362 y Fj(init.el)308 b Fc(:)171 b(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)490
+b Fk(7)2000 59529 y(Initialization)161 b Fc(:)173 b(:)e(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)344 b Fk(15)2000
+60696 y(input)d(metho)28 b(d)190 b Fc(:)172 b(:)f(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)372 b Fk(31)2000
+61863 y(Inputing)190 b Fc(:)171 b(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)372 b Fk(69)2000
+63030 y(Installation)273 b Fc(:)171 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)455 b Fk(7)2000
+64197 y(In)-28 b(ternationalization)203 b Fc(:)172 b(:)f(:)g(:)g(:)g(:)
+g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)385 b Fk(73)2000 65364 y(In)-28 b(v)g(erse)341
+b(searc)-28 b(h)124 b Fc(:)170 b(:)h(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)307 b Fk(62)2000 66531 y Fj(iso-cvt.el)177
+b Fc(:)172 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
+(:)g(:)g(:)360 b Fk(74)2000 67699 y Fa(ISO)341 b Fk(8859)g(Latin)h(1)
+140 b Fc(:)170 b(:)h(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)322
+b Fk(73)2000 68866 y Fa(ISO)341 b Fk(Character)f(set)170
+b Fc(:)h(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)352
+b Fk(73)2000 70033 y(isp)28 b(ell)130 b Fc(:)173 b(:)e(:)g(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)313
+b Fk(55,)341 b(74)2000 71200 y(Italian)190 b Fc(:)171
+b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)g(:)g(:)h(:)372 b Fk(74)26997 3985 y(Itemize)246
+b Fc(:)173 b(:)e(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)429 b Fk(29)26997 5152 y(Items)187
+b Fc(:)171 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)370 b Fk(29)26946
+8361 y FB(J)26997 9922 y Fk(Japan)310 b Fc(:)171 b(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)494
+b Fk(76)26997 11089 y(Japanese)108 b Fc(:)172 b(:)f(:)g(:)g(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)291
+b Fk(76)26997 12256 y(jLaT)-85 b(eX)211 b Fc(:)170 b(:)h(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)394
+b Fk(76)26997 13423 y(jT)-85 b(eX)190 b Fc(:)170 b(:)h(:)g(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)372
+b Fk(73,)342 b(76)26946 16849 y FB(K)26997 18410 y Fk(Killing)h(a)e
+(pro)28 b(cess)211 b Fc(:)172 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+g(:)g(:)394 b Fk(67)26997 19577 y(kT)-85 b(eX)218 b Fc(:)171
+b(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+g(:)g(:)g(:)g(:)g(:)g(:)401 b Fk(73)26946 22786 y FB(L)26997
+24347 y Fk(Lab)28 b(el)342 b(pre\014x)195 b Fc(:)172
+b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)378
+b Fk(26,)342 b(28)26997 25514 y(Lab)28 b(els)294 b Fc(:)171
+b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
+g(:)476 b Fk(26,)342 b(28)26997 26681 y(Lab)28 b(els,)342
+b(adding)208 b Fc(:)172 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)g(:)g(:)391 b Fk(88)26997 27849 y(lab)28 b(els,)343
+b(completion)g(of)229 b Fc(:)171 b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)412
+b Fk(34)26997 29016 y Fj(lacheck)279 b Fc(:)171 b(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)462
+b Fk(66)26997 30183 y(Language)341 b(Supp)28 b(ort)266
+b Fc(:)171 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)450
+b Fk(73)26997 31350 y(LaT)-85 b(eX)140 b Fc(:)170 b(:)h(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)323
+b Fk(52)26997 32517 y(Latin)341 b(1)254 b Fc(:)171 b(:)g(:)g(:)h(:)f(:)
+g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)437
+b Fk(73)26997 33684 y(License)280 b Fc(:)171 b(:)g(:)g(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)462
+b Fk(2)26997 34851 y(Literature)308 b Fc(:)171 b(:)g(:)h(:)f(:)g(:)g(:)
+g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)491
+b Fk(52)26997 36018 y(Lo)28 b(cal)342 b(st)-28 b(yle)342
+b(directory)248 b Fc(:)172 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)431
+b Fk(80)26997 37185 y(Lo)28 b(cal)342 b(st)-28 b(yle)342
+b(ho)28 b(oks)291 b Fc(:)171 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
+f(:)473 b Fk(80)26946 40612 y FB(M)26997 42172 y Fk(Macro)341
+b(argumen)-28 b(ts)255 b Fc(:)171 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)h(:)438 b Fk(31)26997 43339 y(Macro)341 b(completion)132
+b Fc(:)172 b(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)314
+b Fk(31)26997 44507 y(Macro)341 b(expansion)143 b Fc(:)172
+b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)326
+b Fk(31)26997 45674 y Fj(macro.el)245 b Fc(:)171 b(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)428
+b Fk(90)26997 46841 y Fj(macro.tex)211 b Fc(:)171 b(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)394
+b Fk(90)26997 48008 y(Macros,)341 b(adding)272 b Fc(:)171
+b(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)454
+b Fk(82)26997 49175 y(Mak)-28 b(e)247 b Fc(:)171 b(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)429 b Fk(7)26997 50342 y Fj(makeindex)211 b Fc(:)171
+b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
+g(:)394 b Fk(52)26997 51509 y(Making)342 b(a)f(bibliograph)-28
+b(y)231 b Fc(:)172 b(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)414 b Fk(52)26997
+52676 y(Making)342 b(an)f(index)161 b Fc(:)173 b(:)e(:)g(:)g(:)g(:)g(:)
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)344 b Fk(52)26997 53843 y(Man)-28
+b(y)341 b(Files)310 b Fc(:)171 b(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)491 b Fk(69)26997 55011
+y(Master)342 b(\014le)271 b Fc(:)171 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)g(:)h(:)f(:)g(:)453 b Fk(67,)342 b(69)26997 56178
+y(Matc)-28 b(hing)341 b(dollar)h(signs)254 b Fc(:)171
+b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)437 b Fk(20)26997 57345
+y(Math)342 b(mo)28 b(de)342 b(delimiters)114 b Fc(:)173
+b(:)e(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)297 b Fk(20)26997 58512
+y(Math,)342 b(fon)-28 b(ti\014cation)342 b(of)289 b Fc(:)171
+b(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)472 b Fk(45)26997 59679
+y(Math,)342 b(fon)-28 b(ti\014cation)342 b(problems)f(with)243
+b Fc(:)171 b(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)425
+b Fk(46)26997 60846 y(Mathematics)130 b Fc(:)173 b(:)e(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)313 b Fk(30)26997
+62013 y(Multi\014le)343 b(Do)28 b(cumen)-28 b(ts)280
+b Fc(:)171 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)462 b Fk(69)26997
+63180 y(Multiple)343 b(Files)137 b Fc(:)173 b(:)e(:)g(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
+f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)320 b Fk(69)26946
+66607 y FB(N)26997 68167 y Fk(Next)342 b(error)229 b
+Fc(:)170 b(:)h(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)h(:)411 b Fk(64)26997 69334 y(Nipp)28 b(on)233
+b Fc(:)171 b(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)415 b Fk(76)26997 70502 y(NTT)340
+b(jT)-85 b(eX)260 b Fc(:)171 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)443 b Fk(73,)342 b(76)p eop end
+%%Page: 135 140
+TeXDict begin 135 139 bop 2000 -1550 a FC(Indices)42505
+b(135)1949 3985 y FB(O)2000 5534 y Fk(Other)342 b(information,)g
+(adding)301 b Fc(:)171 b(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)484 b Fk(88)2000 6698
+y(Outlining)291 b Fc(:)171 b(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)473 b Fk(46,)341 b(50)2000 7861 y(Output)232
+b Fc(:)172 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)415 b Fk(67)2000 9025 y(Ov)-28
+b(erfull)342 b(b)28 b(o)-28 b(xes)257 b Fc(:)171 b(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)439 b Fk(64)2000
+10188 y(Ov)-28 b(erview)245 b Fc(:)172 b(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)428 b
+Fk(50)1949 13316 y FB(P)2000 14866 y Fk(pac)-28 b(k)-57
+b(age/class)342 b(options,)g(Examining)260 b Fc(:)171
+b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)442
+b Fk(88)2000 16029 y(P)-28 b(arsing)340 b(errors)115
+b Fc(:)170 b(:)i(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+(:)298 b Fk(64)2000 17193 y(P)-28 b(arsing)340 b(LaT)-85
+b(eX)341 b(errors)250 b Fc(:)170 b(:)h(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)433
+b Fk(64)2000 18356 y(P)-28 b(arsing)340 b(new)h(macros)146
+b Fc(:)171 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)329 b
+Fk(90)2000 19519 y(P)-28 b(arsing)340 b(T)-85 b(eX)93
+b Fc(:)171 b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)277
+b Fk(71,)341 b(78)2000 20683 y(P)-28 b(arsing)340 b(T)-85
+b(eX)341 b(output)150 b Fc(:)171 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+333 b Fk(64)2000 21846 y Fj(PATH)341 b Fk(in)h(Windo)-28
+b(ws)292 b Fc(:)171 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)476
+b Fk(11)2000 23010 y(PDF)341 b(mo)28 b(de)111 b Fc(:)173
+b(:)e(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+g(:)294 b Fk(57)2000 24173 y(PDFSync)283 b Fc(:)171 b(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)466 b Fk(57,)341
+b(62)2000 25337 y(P)-28 b(ersonal)341 b(customization)119
+b Fc(:)172 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)301 b Fk(15)2000
+26500 y(P)-28 b(ersonal)341 b(information)163 b Fc(:)171
+b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)346 b Fk(79)2000 27663
+y(P)-28 b(ersonal)341 b(macro)g(directory)132 b Fc(:)171
+b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)315 b Fk(79)2000 28827 y(P)-28 b(ersonal)341
+b(T)-85 b(eX)340 b(macro)i(directory)161 b Fc(:)171 b(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)343
+b Fk(79)2000 29990 y(pLaT)-85 b(eX)310 b Fc(:)171 b(:)g(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
+f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)493
+b Fk(76)2000 31154 y(P)-28 b(olish)294 b Fc(:)171 b(:)g(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)476
+b Fk(74)2000 32317 y(P)-28 b(ortuguese)93 b Fc(:)171
+b(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)276 b Fk(74)2000 33481 y(Pre\014x)341 b(for)g(lab)28
+b(els)234 b Fc(:)173 b(:)e(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)417
+b Fk(26,)341 b(28)2000 34644 y(preview-install-st)-28
+b(yles)208 b Fc(:)174 b(:)d(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)391
+b Fk(6)2000 35807 y(Previewing)96 b Fc(:)172 b(:)f(:)g(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
+f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)278 b
+Fk(60)2000 36971 y(Prin)-28 b(ting)266 b Fc(:)172 b(:)f(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)450
+b Fk(52)2000 38134 y(Priv)-57 b(ate)342 b(directories)291
+b Fc(:)171 b(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)472
+b Fk(79)2000 39298 y(Priv)-57 b(ate)342 b(macro)f(directory)192
+b Fc(:)172 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)375 b Fk(79)2000 40461
+y(Priv)-57 b(ate)342 b(st)-28 b(yle)342 b(ho)28 b(ok)342
+b(directory)190 b Fc(:)172 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)373 b Fk(79)2000 41625
+y(Priv)-57 b(ate)342 b(T)-85 b(eX)341 b(macro)g(directory)220
+b Fc(:)172 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)g(:)g(:)403 b Fk(79)2000 42788 y(Problems)250 b Fc(:)171
+b(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
+f(:)g(:)432 b Fk(66)2000 43952 y(Pro)28 b(cesses)230
+b Fc(:)171 b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)412 b Fk(67)2000 45115 y(pT)-85 b(eX)289
+b Fc(:)171 b(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)473 b Fk(73,)341 b(76)1949 48464 y
+FB(Q)2000 50013 y Fk(Quotes)87 b Fc(:)172 b(:)f(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)270
+b Fk(20)2000 51177 y(Quotes,)342 b(fon)-28 b(ti\014cation)342
+b(of)158 b Fc(:)171 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)341 b
+Fk(44)1949 54526 y FB(R)2000 56075 y Fk(Redispla)-28
+b(y)342 b(output)307 b Fc(:)171 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
+f(:)g(:)490 b Fk(67)2000 57238 y(Re\014lling)255 b Fc(:)171
+b(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)436 b Fk(37)2000 58402 y(Reformatting)124
+b Fc(:)172 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)308
+b Fk(35,)341 b(37)2000 59565 y(Region)111 b Fc(:)172
+b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
+f(:)g(:)g(:)g(:)g(:)294 b Fk(52)2000 60729 y(Region)342
+b(\014le)197 b Fc(:)171 b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)379 b Fk(52)2000 61892 y(Reinden)-28
+b(ting)97 b Fc(:)172 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)g(:)g(:)g(:)g(:)280 b Fk(35)2000 63056 y(Rev)-28
+b(eal)168 b Fc(:)k(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
+f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)351 b Fk(46)2000
+64219 y(Righ)-28 b(t)211 b Fc(:)171 b(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)394
+b Fk(2)2000 65382 y(Running)341 b(BibT)-85 b(eX)119 b
+Fc(:)170 b(:)h(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)301
+b Fk(52)2000 66546 y(Running)341 b Fj(chktex)277 b Fc(:)172
+b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)460
+b Fk(66)2000 67709 y(Running)341 b(commands)166 b Fc(:)171
+b(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)348 b Fk(52)2000
+68873 y(Running)341 b(Flymak)-28 b(e)161 b Fc(:)173 b(:)e(:)g(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
+f(:)g(:)g(:)g(:)g(:)g(:)g(:)344 b Fk(66)2000 70036 y(Running)d
+Fj(lacheck)244 b Fc(:)171 b(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+426 b Fk(66)2000 71200 y(Running)341 b(LaT)-85 b(eX)104
+b Fc(:)171 b(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)287
+b Fk(52)26997 3985 y(Running)341 b Fj(makeindex)176 b
+Fc(:)171 b(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)358 b
+Fk(52)26997 5186 y(Running)341 b(T)-85 b(eX)225 b Fc(:)170
+b(:)h(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)408
+b Fk(52)26946 9313 y FB(S)26997 10977 y Fk(Sample)342
+b(st)-28 b(yle)342 b(\014le)287 b Fc(:)171 b(:)g(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)469 b Fk(80)26997 12178 y(Sectioning)118
+b Fc(:)172 b(:)g(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+(:)301 b Fk(16,)342 b(24)26997 13378 y(Sectioning)g(commands,)g(fon)-28
+b(ti\014cation)342 b(of)300 b Fc(:)171 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+g(:)483 b Fk(42)26997 14579 y(Sections)229 b Fc(:)172
+b(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)413
+b Fk(16,)341 b(24,)h(50)26997 15779 y(Setting)g(the)g(default)g
+(command)132 b Fc(:)172 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)315 b Fk(52)26997 16980 y(Setting)342
+b(the)g(header)259 b Fc(:)171 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+442 b Fk(52)26997 18180 y(Setting)342 b(the)g(trailer)144
+b Fc(:)172 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)327
+b Fk(52)26997 19381 y(Site)342 b(customization)259 b
+Fc(:)171 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)441
+b Fk(15)26997 20581 y(Site)342 b(information)303 b Fc(:)171
+b(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)485
+b Fk(79)26997 21782 y(Site)342 b(initialization)90 b
+Fc(:)174 b(:)d(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)273
+b Fk(15)26997 22982 y(Site)342 b(macro)f(directory)272
+b Fc(:)171 b(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)454 b Fk(79)26997
+24183 y(Site)342 b(T)-85 b(eX)341 b(macro)g(directory)300
+b Fc(:)171 b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)g(:)g(:)h(:)f(:)482 b Fk(79)26997 25383 y(Slo)-28
+b(v)-57 b(ak)218 b Fc(:)172 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)401 b
+Fk(74)26997 26584 y(Source)341 b(sp)28 b(ecials)211 b
+Fc(:)172 b(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)393
+b Fk(57,)342 b(62)26997 27784 y(Sp)28 b(ecifying)343
+b(a)e(fon)-28 b(t)161 b Fc(:)171 b(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+g(:)g(:)g(:)344 b Fk(23)26997 28985 y(Starting)d(a)g(preview)-28
+b(er)286 b Fc(:)171 b(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)468
+b Fk(60)26997 30185 y(Stopping)341 b(a)g(pro)28 b(cess)183
+b Fc(:)171 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)366
+b Fk(67)26997 31386 y(St)-28 b(yle)90 b Fc(:)172 b(:)f(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
+(:)g(:)273 b Fk(66)26997 32586 y Fj(style)119 b Fc(:)172
+b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)g(:)h(:)f(:)g(:)302 b Fk(80)26997 33787 y(St)-28
+b(yle)342 b(\014le)175 b Fc(:)d(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)358 b Fk(80)26997
+34987 y(St)-28 b(yle)342 b(\014les)201 b Fc(:)172 b(:)f(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)384
+b Fk(80)26997 36188 y(St)-28 b(yle)342 b(ho)28 b(ok)204
+b Fc(:)172 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)387 b Fk(80)26997 37388 y(St)-28 b(yle)342
+b(ho)28 b(oks)229 b Fc(:)172 b(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)412 b Fk(80)26997 38589 y(subscript)310
+b Fc(:)171 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)494 b Fk(31)26997 39789 y(Subscript,)341
+b(fon)-28 b(ti\014cation)342 b(of)299 b Fc(:)171 b(:)g(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)482
+b Fk(45)26997 40990 y(sup)28 b(erscript)96 b Fc(:)171
+b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)279 b Fk(31)26997 42190 y(Sup)28 b(erscript,)341
+b(fon)-28 b(ti\014cation)342 b(of)312 b Fc(:)171 b(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)495
+b Fk(45)26997 43391 y(supp)28 b(ort)341 b(for)f(completion)j(of)28021
+44591 y(pac)-28 b(k)-57 b(age/class)342 b(options,)g(Adding)294
+b Fc(:)171 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)478
+b Fk(88)26997 45792 y(Sw)-28 b(edish)101 b Fc(:)171 b(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)284
+b Fk(74)26997 46992 y(Sym)-28 b(b)28 b(ols)244 b Fc(:)171
+b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)g(:)427 b Fk(30)26997 48193 y(SyncT)-85 b(eX)190
+b Fc(:)170 b(:)h(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)372 b Fk(57,)342 b(62)26997 49393 y(Syn)-28 b(tax)341
+b(Highligh)-28 b(ting)133 b Fc(:)172 b(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)316 b Fk(40)26946 53520 y FB(T)26997 55185 y Fk(T)-85
+b(abify)218 b Fc(:)171 b(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)401 b Fk(71)26997
+56385 y(T)-85 b(able)341 b(en)-28 b(vironmen)g(t)202
+b Fc(:)172 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)385
+b Fk(28)26997 57586 y(T)-85 b(ables)215 b Fc(:)171 b(:)g(:)g(:)g(:)g(:)
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
+398 b Fk(28)26997 58786 y(T)-85 b(abs)130 b Fc(:)170
+b(:)h(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
+f(:)g(:)g(:)g(:)g(:)g(:)g(:)313 b Fk(71)26997 59987 y
+Fj(tex-jp.el)211 b Fc(:)171 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)394 b Fk(76)26997 61187
+y Fj(tex-mik.el)177 b Fc(:)171 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)360 b Fk(14)26997 62388
+y Fj(tex-site.el)86 b Fc(:)172 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)269
+b Fk(7,)341 b(15,)h(112)26997 63588 y(T)-85 b(eX)260
+b Fc(:)171 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)444 b Fk(52)26997
+64789 y(T)-85 b(eX)341 b(parsing)284 b Fc(:)171 b(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)468 b Fk(78)26997
+65989 y(to)28 b(ol)342 b(bar,)f(to)28 b(olbar)230 b Fc(:)172
+b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)413
+b Fk(52)26997 67190 y(T)-85 b(railer)159 b Fc(:)170 b(:)h(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g
+(:)342 b Fk(52)p eop end
+%%Page: 136 141
+TeXDict begin 136 140 bop 2000 -1550 a FC(Indices)42505
+b(136)1949 3985 y FB(U)2000 5531 y Fk(Underfull)341 b(b)28
+b(o)-28 b(xes)185 b Fc(:)172 b(:)g(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+g(:)g(:)g(:)368 b Fk(64)2000 6693 y(Uninstallation)102
+b Fc(:)172 b(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)284 b Fk(7)2000 7856 y(Un)-28 b(tabify)147 b Fc(:)171
+b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)g(:)g(:)330 b Fk(71)2000 9018 y(Up)28 b(dating)342
+b(st)-28 b(yle)342 b(ho)28 b(oks)312 b Fc(:)171 b(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)495 b Fk(80)2000 10180 y(upLaT)-85 b(eX)253 b
+Fc(:)171 b(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)436 b Fk(76)2000 11342 y(upT)-85 b(eX)232
+b Fc(:)171 b(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)416 b Fk(73,)341 b(76)1949 14668 y FB(V)2000
+16214 y Fk(V)-85 b(erbatim,)342 b(fon)-28 b(ti\014cation)341
+b(of)103 b Fc(:)171 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)286 b Fk(46)2000
+17376 y(View)-28 b(er)341 b(predicates)198 b Fc(:)172
+b(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)381 b
+Fk(88)2000 18538 y(Viewing)304 b Fc(:)171 b(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)486
+b Fk(60)26946 3985 y FB(W)26997 5531 y Fk(W)-85 b(arran)-28
+b(t)g(y)244 b Fc(:)170 b(:)h(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)427 b Fk(2)26997 6693
+y(W)-85 b(riting)341 b(to)h(a)f(prin)-28 b(ter)158 b
+Fc(:)170 b(:)h(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)341 b
+Fk(52)26946 10019 y FB(X)26997 11564 y Fk(X-Sym)-28 b(b)28
+b(ol)119 b Fc(:)172 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)g(:)g(:)g(:)g(:)g(:)g(:)302 b Fk(74)p eop end
+%%Trailer
+
+userdict /end-hook known{end-hook}if
+%%EOF
diff --git a/support/auctex/13.1-extra/auctex.ps.sig b/support/auctex/13.1-extra/auctex.ps.sig
new file mode 100644
index 0000000000..0295d6ec95
--- /dev/null
+++ b/support/auctex/13.1-extra/auctex.ps.sig
Binary files differ
diff --git a/support/auctex/13.1-extra/tex-ref.pdf b/support/auctex/13.1-extra/tex-ref.pdf
new file mode 100644
index 0000000000..c9c007c76e
--- /dev/null
+++ b/support/auctex/13.1-extra/tex-ref.pdf
Binary files differ
diff --git a/support/auctex/13.1-extra/tex-ref.pdf.sig b/support/auctex/13.1-extra/tex-ref.pdf.sig
new file mode 100644
index 0000000000..95cb24e76a
--- /dev/null
+++ b/support/auctex/13.1-extra/tex-ref.pdf.sig
Binary files differ
diff --git a/support/auctex/13.1-extra/tex-ref.ps b/support/auctex/13.1-extra/tex-ref.ps
new file mode 100644
index 0000000000..9bc1df73d5
--- /dev/null
+++ b/support/auctex/13.1-extra/tex-ref.ps
@@ -0,0 +1,5431 @@
+%!PS-Adobe-2.0
+%%Creator: dvips(k) 2021.1 Copyright 2021 Radical Eye Software
+%%Title: tex-ref.dvi
+%%CreationDate: Sun Feb 20 19:30:51 2022
+%%Pages: 2
+%%PageOrder: Ascend
+%%Orientation: Landscape
+%%BoundingBox: 0 0 596 842
+%%DocumentFonts: CMBX10 CMR8 CMTT8 CMCSC8 CMBX8 CMTI8 CMSL8 CMSY8 CMR6
+%%+ CMSY6 CMMI10 CMR7
+%%DocumentPaperSizes: a4
+%%EndComments
+%DVIPSWebPage: (www.radicaleye.com)
+%DVIPSCommandLine: /usr/bin/dvips tex-ref.dvi -Ppdf -o tex-ref.ps
+%DVIPSParameters: dpi=8000
+%DVIPSSource: TeX output 2022.02.20:1930
+%%BeginProcSet: tex.pro 0 0
+%!
+/TeXDict 300 dict def TeXDict begin/N{def}def/B{bind def}N/S{exch}N/X{S
+N}B/A{dup}B/TR{translate}N/isls false N/vsize 11 72 mul N/hsize 8.5 72
+mul N/landplus90{false}def/@rigin{isls{[0 landplus90{1 -1}{-1 1}ifelse 0
+0 0]concat}if 72 Resolution div 72 VResolution div neg scale isls{
+landplus90{VResolution 72 div vsize mul 0 exch}{Resolution -72 div hsize
+mul 0}ifelse TR}if Resolution VResolution vsize -72 div 1 add mul TR[
+matrix currentmatrix{A A round sub abs 0.00001 lt{round}if}forall round
+exch round exch]setmatrix}N/@landscape{/isls true N}B/@manualfeed{
+statusdict/manualfeed true put}B/@copies{/#copies X}B/FMat[1 0 0 -1 0 0]
+N/FBB[0 0 0 0]N/nn 0 N/IEn 0 N/ctr 0 N/df-tail{/nn 8 dict N nn begin
+/FontType 3 N/FontMatrix fntrx N/FontBBox FBB N string/base X array
+/BitMaps X/BuildChar{CharBuilder}N/Encoding IEn N end A{/foo setfont}2
+array copy cvx N load 0 nn put/ctr 0 N[}B/sf 0 N/df{/sf 1 N/fntrx FMat N
+df-tail}B/dfs{div/sf X/fntrx[sf 0 0 sf neg 0 0]N df-tail}B/E{pop nn A
+definefont setfont}B/Cw{Cd A length 5 sub get}B/Ch{Cd A length 4 sub get
+}B/Cx{128 Cd A length 3 sub get sub}B/Cy{Cd A length 2 sub get 127 sub}
+B/Cdx{Cd A length 1 sub get}B/Ci{Cd A type/stringtype ne{ctr get/ctr ctr
+1 add N}if}B/CharBuilder{save 3 1 roll S A/base get 2 index get S
+/BitMaps get S get/Cd X pop/ctr 0 N Cdx 0 Cx Cy Ch sub Cx Cw add Cy
+setcachedevice Cw Ch true[1 0 0 -1 -.1 Cx sub Cy .1 sub]{Ci}imagemask
+restore}B/D{/cc X A type/stringtype ne{]}if nn/base get cc ctr put nn
+/BitMaps get S ctr S sf 1 ne{A A length 1 sub A 2 index S get sf div put
+}if put/ctr ctr 1 add N}B/I{cc 1 add D}B/bop{userdict/bop-hook known{
+bop-hook}if/SI save N @rigin 0 0 moveto/V matrix currentmatrix A 1 get A
+mul exch 0 get A mul add .99 lt{/QV}{/RV}ifelse load def pop pop}N/eop{
+SI restore userdict/eop-hook known{eop-hook}if showpage}N/@start{
+userdict/start-hook known{start-hook}if pop/VResolution X/Resolution X
+1000 div/DVImag X/IEn 256 array N 2 string 0 1 255{IEn S A 360 add 36 4
+index cvrs cvn put}for pop 65781.76 div/vsize X 65781.76 div/hsize X}N
+/dir 0 def/dyy{/dir 0 def}B/dyt{/dir 1 def}B/dty{/dir 2 def}B/dtt{/dir 3
+def}B/p{dir 2 eq{-90 rotate show 90 rotate}{dir 3 eq{-90 rotate show 90
+rotate}{show}ifelse}ifelse}N/RMat[1 0 0 -1 0 0]N/BDot 260 string N/Rx 0
+N/Ry 0 N/V{}B/RV/v{/Ry X/Rx X V}B statusdict begin/product where{pop
+false[(Display)(NeXT)(LaserWriter 16/600)]{A length product length le{A
+length product exch 0 exch getinterval eq{pop true exit}if}{pop}ifelse}
+forall}{false}ifelse end{{gsave TR -.1 .1 TR 1 1 scale Rx Ry false RMat{
+BDot}imagemask grestore}}{{gsave TR -.1 .1 TR Rx Ry scale 1 1 false RMat
+{BDot}imagemask grestore}}ifelse B/QV{gsave newpath transform round exch
+round exch itransform moveto Rx 0 rlineto 0 Ry neg rlineto Rx neg 0
+rlineto fill grestore}B/a{moveto}B/delta 0 N/tail{A/delta X 0 rmoveto}B
+/M{S p delta add tail}B/b{S p tail}B/c{-4 M}B/d{-3 M}B/e{-2 M}B/f{-1 M}
+B/g{0 M}B/h{1 M}B/i{2 M}B/j{3 M}B/k{4 M}B/w{0 rmoveto}B/l{p -4 w}B/m{p
+-3 w}B/n{p -2 w}B/o{p -1 w}B/q{p 1 w}B/r{p 2 w}B/s{p 3 w}B/t{p 4 w}B/x{
+0 S rmoveto}B/y{3 2 roll p a}B/bos{/SS save N}B/eos{SS restore}B end
+
+%%EndProcSet
+%%BeginProcSet: alt-rule.pro 0 0
+%!
+% Patch by TVZ
+% Makes dvips files draw rules with stroke rather than fill.
+% Makes narrow rules more predictable at low resolutions
+% after distilling to PDF.
+% May have unknown consequences for very thick rules.
+% Tested only with dvips 5.85(k).
+TeXDict begin
+/QV {
+ gsave newpath /ruleY X /ruleX X
+ Rx Ry gt
+ { ruleX ruleY Ry 2 div sub moveto Rx 0 rlineto Ry }
+ { ruleX Rx 2 div add ruleY moveto 0 Ry neg rlineto Rx }
+ ifelse
+ setlinewidth 0 setlinecap stroke grestore
+} bind def
+end
+
+%%EndProcSet
+%%BeginProcSet: texps.pro 0 0
+%!
+TeXDict begin/rf{findfont dup length 1 add dict begin{1 index/FID ne 2
+index/UniqueID ne and{def}{pop pop}ifelse}forall[1 index 0 6 -1 roll
+exec 0 exch 5 -1 roll VResolution Resolution div mul neg 0 0]FontType 0
+ne{/Metrics exch def dict begin Encoding{exch dup type/integertype ne{
+pop pop 1 sub dup 0 le{pop}{[}ifelse}{FontMatrix 0 get div Metrics 0 get
+div def}ifelse}forall Metrics/Metrics currentdict end def}{{1 index type
+/nametype eq{exit}if exch pop}loop}ifelse[2 index currentdict end
+definefont 3 -1 roll makefont/setfont cvx]cvx def}def/ObliqueSlant{dup
+sin S cos div neg}B/SlantFont{4 index mul add}def/ExtendFont{3 -1 roll
+mul exch}def/ReEncodeFont{CharStrings rcheck{/Encoding false def dup[
+exch{dup CharStrings exch known not{pop/.notdef/Encoding true def}if}
+forall Encoding{]exch pop}{cleartomark}ifelse}if/Encoding exch def}def
+end
+
+%%EndProcSet
+%%BeginFont: CMR7
+%!PS-AdobeFont-1.0: CMR7 003.002
+%%Title: CMR7
+%Version: 003.002
+%%CreationDate: Mon Jul 13 16:17:00 2009
+%%Creator: David M. Jones
+%Copyright: Copyright (c) 1997, 2009 American Mathematical Society
+%Copyright: (<http://www.ams.org>), with Reserved Font Name CMR7.
+% This Font Software is licensed under the SIL Open Font License, Version 1.1.
+% This license is in the accompanying file OFL.txt, and is also
+% available with a FAQ at: http://scripts.sil.org/OFL.
+%%EndComments
+FontDirectory/CMR7 known{/CMR7 findfont dup/UniqueID known{dup
+/UniqueID get 5000790 eq exch/FontType get 1 eq and}{pop false}ifelse
+{save true}{false}ifelse}{false}ifelse
+11 dict begin
+/FontType 1 def
+/FontMatrix [0.001 0 0 0.001 0 0 ]readonly def
+/FontName /CMR7 def
+/FontBBox {-27 -250 1122 750 }readonly def
+/PaintType 0 def
+/FontInfo 9 dict dup begin
+/version (003.002) readonly def
+/Notice (Copyright \050c\051 1997, 2009 American Mathematical Society \050<http://www.ams.org>\051, with Reserved Font Name CMR7.) readonly def
+/FullName (CMR7) readonly def
+/FamilyName (Computer Modern) readonly def
+/Weight (Medium) readonly def
+/ItalicAngle 0 def
+/isFixedPitch false def
+/UnderlinePosition -100 def
+/UnderlineThickness 50 def
+end readonly def
+/Encoding 256 array
+0 1 255 {1 index exch /.notdef put} for
+dup 49 /one put
+readonly def
+currentdict end
+currentfile eexec
+D9D66F633B846AB284BCF8B0411B772DE5CE3DD325E55798292D7BD972BD75FA
+0E079529AF9C82DF72F64195C9C210DCE34528F540DA1FFD7BEBB9B40787BA93
+51BBFB7CFC5F9152D1E5BB0AD8D016C6CFA4EB41B3C51D091C2D5440E67CFD71
+7C56816B03B901BF4A25A07175380E50A213F877C44778B3C5AADBCC86D6E551
+E6AF364B0BFCAAD22D8D558C5C81A7D425A1629DD5182206742D1D082A12F078
+0FD4F5F6D3129FCFFF1F4A912B0A7DEC8D33A57B5AE0328EF9D57ADDAC543273
+C01924195A181D03F5054A93B71E5065F8D92FE23794D2DB981ABA2ACC9A23A5
+3E152596AF52983541F86D859FC064A0E3D5FC6647C3CAB83AD4F31DDA35019C
+CDB9E3DD3FEBD4C2B36BA3CF6E6C7DA85E25D8A31A9BAD39BDF31FD0D1790707
+9DE6A078E8A409D8295F642DF492AC4F86AC84383B0F4C6BAA7C22AD5A898A71
+D6CB34D2CD12266C486B75E75A69C14819DD9BB8159088E04D4717E576B8482D
+BDA52110AC8B8A80E4E9D58F470EEBD3CF44A1E1EE8DA318FFF3611B02534FC9
+F4018C7C57E80570D2F634D98BE5D5EC6D95051157F0EA94A3D12BE0B4B79939
+F82F8D73136D3337C44E314B0B16CB030D9A12E01FB667105F334C3EE965E5A3
+D410D2F1531547A4497C355AEEB295CD3C5334BEE5232992960B757594B89F3E
+52095042DBE6B4DA3C3AD50CA95EA9EBADA10630B500CF1FCCA7D60306743681
+7E428D33B7F7C40B425CD58E4CD8AB474BCE6A307BC6C6EBC15A8A96E0E2977E
+A33389154536F5C5D8CF036D07F24094E779E5ACBE5502C92892F10F4C6DB627
+C7EC4C7BF20B39418A8A85D7FD9B0EAAFD871DDD41F93BDE5FE619AFB8711824
+DE890E62C1969A6FE28DD3578AF43D58A728FAFF0B9FAA640962C8F35A26F76C
+67F3548D6DB54A25CEB368B47F97EA2B0C4D7C0E7894A4F0C823C6C1922CF9DC
+10E05600556F1C7C9AFB33A2DB6F8730F70D6BF94B1FB0887451F2FFEEF3584F
+DFADCFA9A2D4846B8F0E51620E1327D994CDF973B837D10C90FF76DE22B47CD5
+EE3183898D156861AB4DFAD34A1E3FA260B8164E6680BF58413A553E88F6100B
+C4F4E8E972C81A5F88A7DBCDC308B4C3581BCDE13877B976B1F84330839FE5CF
+C78551620EB803DF94A5C921F8EE24F7EF8FC4C3E1653514212631F54F90E3DC
+E9EAF96E998F340C4F729ECF7AB430FDB7C0BE3DF2C0D23015820E28B743CAD7
+7F0AE95413C3EEABBC69E852F53EE1DC260D7F1E712BECEF2F18437DB23D8E74
+2902AAFBC733AC5BAA452DD6F3671859AD836C8564E99CDC4183D8495AFD99D6
+1F0D65B6588CE7546717911E25BDCA6C2649E3A7466A3E2DA7C7994A30AB4449
+672EFD00632EFA8629C1AFB7D53D801028F77C864869FE636213A69173003EA6
+BE1ABA95EB07B13D1594BEFCC95ECB0A9CFA9892EE0677D6B6C250855762B7A7
+8E4E022640F93169DFA0303A0D5E73BF3E0F4D4AAD10FD7E4EB20532BA30371F
+E9F480F9513432946F9828AFB5D4AEAFA5829B2CB544E5EB634C4537EF7DF08A
+A1CFD94A52DCF0E7CE4C5EFFB01E6D50558B75DB4C8D5512B06080F27BE62E01
+2EEA6A0357441401458C842D3DD4C35B8F561D816B336216CE0C14BF77648AF5
+E33912CF95872A1E1AB9A18980A0B29A881D13397C15E1CBA5D3E0B27943EBE2
+F3003D15EB446BCFC1C231832475D5B7AA19E4CFDE119D6CD62D053C6D29C333
+5F729791D17B3F7108074EEF4D1BD101CB33E01004532CB0D716D2E54D169C6E
+80163E70C0E9081F31A1ECBAE079D2A518B790B0CB2CD03DFD034A0F4788E800
+B0CD2DC1FAFDD487C2F381EBAB2A2F3F3AF82021B211DC9CD2FBA6A1BB3D4AEA
+4C7F3D9A5C21DFF284CCB827D205A69638E98D5DD8E36AFC1A4481B5CB2A2E8F
+D6C838DA6F81990F5ED928DC7457501B5C979FF4CD20A830896A460C5DB13D56
+A3B2B5D9B292374A9BF392894DD99FCD6A1E655AB395E839F074D1596488700C
+4E2891C8AEEF66568E82A8B826F9A28FF84D4D9BDA21F638EAF96880B4EBE0D8
+081982F34831A03BEE81FC177700C2360D2A48915EC40D5FE85B400E175D5AF1
+067FA0097904FB647757BB44B4042D30D1557BD0F7922D731142FD682139CEB7
+58CA4C8C240A0B86B1888CACC507E24E04020BF1882BD9B4CAECFA97DB24D7F5
+AD64C69454027F198BA35881B94EE9159A2D73E450C3BDAED66B886D6DEBC84B
+653E165176228F88993F12A170775A8D7038BDF2FE8DC1F7B98BDC02D1E6686E
+9B834F6C0AD90780B17DFE25F0A4E470CBA84E73F2D22BEE09A040F14CFA2C14
+0FDA5A5149B5FAFFE49F55EEFC43831BC43A8326FEE9C7F469C0FC3B000884FA
+41DA7318EB57262CB96FC4EC7F16CA07FE1C3BE8C2DBC8A8135953D6DDF20BDF
+75A2B6D26074FCE752BD32FB9F5CA797775E8DB9BB9786B469A3CD65A0D9DDDA
+C2A166E454A94860EEF5B5C12172DDFC576A03F6E6F8A735FF21A3E9CCB4CAA1
+3064893487697986A42CB5888B2B0A79FA3C74E8187BDDF7BEAB884B70B8D4AA
+AC6615745AEB906E08BF831CFDE222F58D02B428D55E9D5A3CDE74E42D8A2CB7
+E1A3A9439B678AD438793ABBEB72B21C58981DAF3EDCE4BB93D95F4A1E943BBC
+B3A012DE92FED4F232A3A7D60CE60B605151F9C7C18A5C653E5D6D15E5B49A63
+73E7A339504D0ACC74B8B116EA88C3EBA2CC631AAB29F761E5F062966AD2FD28
+7FFE52FA8A115DBE23E471094FFB3CBAFBDF11B7E9058313F2D069B2CE98A962
+64645738F02A31E2F2AC11628724034ADBCEE012721EBF0A567893411F950410
+B20754A7510D041FFA6144AC9CC46D846B82581F20BBD001D34D9764010824BE
+61C30D05E5C5D100A24F1917F01799CF5BC4E50FCECFEA732CB50196825F0E08
+8A1EC868C6D4357857EE2957E081A0E4372E31A8ABEF23C3F2EA0FEE57DE4D08
+61C570175C41AA0C7A3A579ADF593F18B4AE3782D2552E4E0759C32E059EE741
+2D8191E381731769F6648B3581CAF11DAE46471896666F18F02918B0860BDA3C
+BD5DE777672447C23C62ACFC2611ED5239D6A266FDA6031EBC5A530C1A2FF7A6
+B4380B9A4C877267854AD1F1677CB5433F28894ADF93D39EAB94541A8D232E08
+22D082D0951A60F62B87DC028714EC74133A4D65F7D0D1296C0E189C4A42AA98
+28E8AE7ECBB9FC8DFABCC6EEB1E9FB06227F90808EF31331CCC5D4C9A6182181
+047902DC9FD0444FB94B60FC74F3B677758088CE6A159D940C5CF682335E756A
+8BACF06AD7225D49B0002392C889B0FE2C71311D2596F4903D12FA20BA2FFE25
+A0804B4BC282929BE31E0F46B34532CB5795A65218CFAE21F390792DA67775C7
+B91A2BF4C16DE4F6551DAE3A5827F616BE9040EE6B1008DA2F99A01EF66D697A
+6CD1A44E0A15D1F39EA8025E886A68A1E9C334327C7703EE721E497CA924AC90
+7723106D913C5ED4BA4FC743CEA8D0F5172526107DA65775C0B1B77179D336C2
+9B09B608D80B1A1E87CA1A84A833A00D980D919BFF56F6390E9D5B45E9935CF5
+E69D003564462F750F7DCE02DC23CC215A0696B74D8BD3156A392A94F557655E
+00BFAA035647568ED66157FACC585E411F7F428569C147DC43F6E4FDE693D0F3
+9917BEFEDF61FB980B85515FF6424824E2D995B05CA1E5D3E8BD8D3281DB7CE4
+E54923E84058FFC0A8A2C491327D0F87CE4C352B724167CEE224DABA3B95757E
+4A419594BE4F92E78BA6D35D4C93D31ECC3134B24A45DC32445725BB044F09A3
+AA8C31EFC0A2944ACE2F2CE054CF24DB350FB3C71115518C24BDC0F7E54250AF
+9D3378D38480E1CB9029F31570C619A28F065CA4FED5665EDB96712ABEB33B9B
+4232C00C1B0215F08D53F7E430887035AC25BEAF06942FD1B6C442253C887AB7
+D694C1A6115C8990B4CAF1E81DD1FDDD6B03C00055BE956BE7FD8A4E1049AE69
+EDA8593CBA8C4A41E046C689FBBF9F1B64E5856A7FB1C61EC815A56DE2A8ED33
+41F370B8203D4E5B19C63AE9E6E0D26F4F3814B5AF48AD30EC9B8402C941FDD9
+722FCAFC638FBB835F83DC77F93D367266FA7DFFFCB567EF82B1695AB4D94D09
+B18AC041811027229DF431F5CB2BBF6ACCE9D500C8F075A74590641C1A607C56
+D2B8624797BCD9C91C3177818691FBB4744EDB6056464A0B95B8D63F7C22309B
+82D6126E2057BCC9FE5566D96B7A9B201A09B0D3252A5494C8CA2C8BA8A13C29
+37EF2A882D61DA708C279F663D88A8E2999A0F3B6F98C49901A7631BF7708B67
+54D0B4C52BF4BE0DA0439E6763A7C9D639AD4092E77B13D3510DAE1475C978AC
+796F9B2AAD3BFF35C5A3E19B5E2BF704B3BBDF68CE48BA4FA2496D60E58888EA
+28AE12D00E9F0816FAC190590A865BB58569A91BF0345D01230ABA361442006D
+BA2C90EC2036BBAB79EBAFC3F217DBD5854C519235F9627A1C3C71D21ED38AEF
+0BB40F3B86BB9F09A3F309473D8757AB7E638DC1C59A7F9BCD49DE4107A2E54F
+422767FB94048987847205584309397F554744690ACFFDF5902FE5DB355930B8
+71863217830DD7A563B0B3A4025ACE75B0E777B4414B62A13B50C54E0E6D47E9
+D43BF769B9411B74E1069BF71BA873B4B8973EC9BA492A5DEA58D267872BB246
+10AA67B143D0E2223FFB4991E583E629413CC894C3FA4869B72D19CE1A0CEC8C
+0FF5E5A3EC1FCB7D3C4289813F0D249A11B55104BD60B2A89BEF44CC77CCDA9A
+065B8B83B4F4253AA1D535290DCFAA4773452D110D2B3370F9E2FE5432B54A9E
+644EB3BA9BFF62347F376839024CD5EF3C5DFD30F412DD5474B7933E6A1AB63B
+4B12F2417C72D0543C26A263AEA53E5BAEBD67E23553A72E949DEC556BEB5D09
+C4D7A89B14FE4EC68D0E3E9D65A64B285E53590F418EDA8175113CA375A29930
+DDCF4C71ABB26CEB800C2C2B253AC1F53651C88A56ABE5A74F3B54CB4FFDDB92
+60AD7272BA25EC2F6FB759AA6E1E7964FB55AD09F4EB25DE45FD01833947BD05
+6266AA8ABB7DD792941C7A070FCF3A4636FBF8921C70298D42FE92F079DBA2AD
+6149D9CF9EF7264DE6DFCD4429949B15EA90B596340713BD61926DDB2BB23BE8
+F9DE38A31620A817420A245946E551463960A8C5C7295E3B3D6A59BCDF5E472A
+40B7A2CDDAA43CD8AAFC411D037142579D11054A903E102DF0D0C7B5BB854DBA
+F3F086AF991F7F5D5C730F8F9AF213F25786F3EC0E54530FF912F4876FDE16B6
+A07D0DC4FC46EC6363BCB68B83ACC448B801EC43FDD2F8BE0E93D809FF81E38E
+176AE17C67C85FEA58EC95435434C49A950AA955D8B20989C550AB1F1C31B7FF
+99422E1F48FB7D6F327C6DBC4695A03903DB275B94CB39386E46579271870A25
+21823E75C377E9D5B46655E8CD8F986372CF8BA846423E26582315A9D19E0BF5
+305C32B2A0EAC3ECB275B1D8BE11A37ADF524944219D94EA2C5DBDA768828B6D
+775DA8CDB09E0570E4ADDF462EFD8D3FA3F86B1DEECDFFB699AF6507257C1879
+16FC615868C2D51F03CD57BA38D42995D9164B257441210084DC409B6EE4C119
+0B2E17B0A8D5326DD0010E4A325D5F77BF935693BC90A00A28C7B5F74817DA39
+F47A41E32F4F92AA04D30D810F7B1484EB53AD8CFC8CE8928B570314E0F713F8
+AF127227190F9C16BB73D2A217FF801C391A29095DA5E4974D137A0CAA7DE702
+E20DD4755B1D78739756A5E7EC3542B96AD6844199FFA2F5F2E9C64E2DA4FB2A
+ED79869F745C59D235438251BC2E6D26112AAED20E06021D1AB896EE1F1DD2EB
+437FBD4A25E42245C5A647493FCC9922E6DD7AF57D5D482921D1CBD6F0F02949
+C27777144751C1E72F4EE2BC343D4AE7A8A8758123B54FB1A026144C643651EF
+0907A376945E19A8FC7F98A034832A5820A481B0823F980F59623E0511593FEA
+BDE6EFBCC0383242CBD4954027B075B21F10472059A480D6E5ED01C3B07461CE
+9810251A5C5643EC7403130C2246E8616CEA25EAC7A0076731FEA8CC43BCE3BE
+933FCE61067F5FD402E67E2B9DAD954AA77C5BC86BC5E4BCE2ED676D8D8EC7D0
+ABC5C86D82180B9D5D7451C71B5149B6B67883578DE9909317928C0A92E3205E
+F23015400A1763A6FBF67FDE3318AD2696685A1832FC31CF38589EBC7CA1C818
+60D2B2211E04EFCCEA88D9A9082E82951EEB123924A267CB03C48889032F2892
+4227E217FA28F87E01CBF27BF1EA60641A4238258CB7AA355908FE36D90F5CAD
+FE992D03A33E47CA9AEBEFDA57793F39DC6A9E85D5B289F6B862B35DBCF82E43
+5CD6A862F6FFAC36478C384C3BDB0148CB1FEDF55969C776E77917635B5A65EB
+F2AD351D21CD3822D43289FE8EB0FED58182997097C7E9F4373553AE1CA92083
+EDE3BBE6C3BC7009D15AB5FEC6A59E9FD1BCC7B2099CA15FEF083B9CBF7B890E
+CDDDE6BA0AFF306C76500C945DC91BD533FF9A585CEEDEF79238C54E6168001E
+26FEB29E523EE501BFA4F60B782B1499B07084C35A2434B4D29D3D8E2C8F945F
+A9922443B68D07DF7EAA1F4CDEFFC438B597D8943E231B5216808A85F30EDC81
+9DF5DD22F54A45335B4C2203887475F39D247F0E7347BACFEAF220ED82F9263A
+6488E73C1910023E505FDEB143006C1A351D441AC57F9D52D2C6D63D78C75605
+999885676BBBAD56074298E0BFDACBA1830BA58E87F436CC670EE8EB1870154D
+72DDBBF3794F8CAAA3F1E11DE29752DD99EAC695838A19BB67A1FA3829B6E0BC
+5301610A0351AAA749F456AE31ADD87D6ABADCDD1FB3CE81C3713F48780DF407
+530CB284B2AC709F52EE7AD647DEF9FA4D2A867CCEF728F3D40CF34C28D21527
+10160B3DAFB5FE16AFC9D36C6EC4021FC189005862082BEA60AC72B63AD27D72
+FAF3C2D89DA2648FC4C65104A069212D87144E8533CD86A6D73DC7CD9DBA25CE
+7DA53B000266F3871B24663C77723703315C5E4A89DFCDBAB384AE7EB2F455AE
+AB191FED406F7F6EC9E5B8276EF5C4CBA041AC7E8BCEC7CAE840154BDCA3232F
+15711ABD1E867A434E9787CA0A6D1F197597DA27ED2402CB2D84ED082E8D3A39
+81E6EB270DCA4E7A90E2BEBD3CBB3A2BE3CAB926192D7292CC16845B6399A543
+BCFD224BB52F21352732DB5154FA3442733066CDC3E186D8AA97CD801DFBE43A
+116C86889BE198DA88CA978B8C40ACB67E8F7BA499DE68A6FF0DC72C3D00BA1A
+B378B39610F15CA026F95ED8155CE3FFFFA2E2FEB352DBE14CEE1669F2387B70
+55B91185FBBED764266215D518716EDA3DFC9E5DB6B148A553E75AE5E38E1CFC
+6EF47B314D54CF24BC13856F4F7C976BB91D143DE32FF49BFFC87E17885A1893
+BA1B8E441B08EFC04F7D103C1FFBB665194B3D0920473740C55FB1C50EBCF717
+A2359B687FCEAD65616EE89A68F8D91AFACAA0B238EE4AF0279AF5BE5294C3DE
+A7E1F5E6248C0210E7D40683F04B12A933C746ECB517CF94BBCC6E4CF49AC715
+D8005AFECBDFB7A6B417DB8A28F8E9EAF39CEC1CA64DF37A5E66A76C26F721F8
+A63B003A040A62F87DCF61B298F960D510BEFA453F118E59E7DE8CA3DD002EF0
+127EAF733D5C61B5132348D280F84D159809CC71A3C6F7373BBFD8D6EF715D34
+0016DEFF14AA5F960BF1BB9AC304A1823722843547BB4CA5EA4C41C6C2701C8F
+7BDC810443F9DF34BA469A3260009B799871BAF8523C8763544DCD0B382D44C5
+F75046AFF85F0B5A3188C2EE786CEEE5496A5AF4BCB0B429CAFC403FB983EFE3
+61FD9F52ADFC38E07A0FD7BACBA530D2E4DAB2592AA9564843E7E2305047F060
+C5FE4243FA8FDF1B5D4F61ACA7850A604FBC6D6970959752695C90F78961B4E2
+C8CFA41082B1A37405AABCEE5BA3DC2B9EA76F486117B84728EC6D8AE6379CCB
+402C2AA89078EC992C00D53151E9D82C65643F549A572A20F05107A41BE5AC57
+8EDE92AE20B05E2D0C98151CC92D5389A675DFE39DF546A33A84A4C534337ADE
+B17C34E09145B37CE1EB1D10D42CC8D6E6B127A3809F7202381FDB88D42084CD
+0AEAEB8A8288CB56870EA2BE9D0B9DC8291021CA561E2BA388DA3494E433E0EE
+5E69DA51D0AC505C9F71562D3E9750F23CF14D2C8ECF0692FBBCB4A92B48B4B0
+AA2163A447D5FBE86D961AE4D4251149F11C4BC269E10B48E8C42DC2484EDE87
+6540CB8A5EA2494148D09CC9D5014EB73C29368A3945AAA1BA4C17BF640D2A0D
+414293480FD600A77D37471828C4645C5A4AC4729F4EA76FC946810B4968EB0A
+719D8F3E61D2B740AE9A33E9F02982A13ED4B6ED0C6C4A93A9E9EC045D0CDADF
+DC01ABAD0BD95692907C04F06F06F1BF6259C8E71099FB64B4FE263D06C5854B
+070C8B864D8ACA6EBF440DE14DA34A2A548C9F1557C70A4D718F4F881707851A
+6DCC39BD8791D806F5DE551CDF8612C7EE6707D554CD826CF352CA634FCFAFC7
+232F32B3F0EE3D2577915BEB212005E06625FFC9F49383C9C64F51B6541F6AC6
+12D2359547103898D05E52CE54B46835
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+cleartomark
+{restore}if
+%%EndFont
+%%BeginFont: CMMI10
+%!PS-AdobeFont-1.0: CMMI10 003.002
+%%Title: CMMI10
+%Version: 003.002
+%%CreationDate: Mon Jul 13 16:17:00 2009
+%%Creator: David M. Jones
+%Copyright: Copyright (c) 1997, 2009 American Mathematical Society
+%Copyright: (<http://www.ams.org>), with Reserved Font Name CMMI10.
+% This Font Software is licensed under the SIL Open Font License, Version 1.1.
+% This license is in the accompanying file OFL.txt, and is also
+% available with a FAQ at: http://scripts.sil.org/OFL.
+%%EndComments
+FontDirectory/CMMI10 known{/CMMI10 findfont dup/UniqueID known{dup
+/UniqueID get 5087385 eq exch/FontType get 1 eq and}{pop false}ifelse
+{save true}{false}ifelse}{false}ifelse
+11 dict begin
+/FontType 1 def
+/FontMatrix [0.001 0 0 0.001 0 0 ]readonly def
+/FontName /CMMI10 def
+/FontBBox {-32 -250 1048 750 }readonly def
+/PaintType 0 def
+/FontInfo 10 dict dup begin
+/version (003.002) readonly def
+/Notice (Copyright \050c\051 1997, 2009 American Mathematical Society \050<http://www.ams.org>\051, with Reserved Font Name CMMI10.) readonly def
+/FullName (CMMI10) readonly def
+/FamilyName (Computer Modern) readonly def
+/Weight (Medium) readonly def
+/ItalicAngle -14.04 def
+/isFixedPitch false def
+/UnderlinePosition -100 def
+/UnderlineThickness 50 def
+/ascent 750 def
+end readonly def
+/Encoding 256 array
+0 1 255 {1 index exch /.notdef put} for
+dup 11 /alpha put
+dup 12 /beta put
+dup 13 /gamma put
+dup 14 /delta put
+dup 15 /epsilon1 put
+dup 16 /zeta put
+dup 17 /eta put
+dup 18 /theta put
+dup 20 /kappa put
+dup 21 /lambda put
+dup 22 /mu put
+dup 23 /nu put
+dup 24 /xi put
+dup 25 /pi put
+dup 26 /rho put
+dup 27 /sigma put
+dup 28 /tau put
+dup 29 /upsilon put
+dup 30 /phi put
+dup 31 /chi put
+dup 32 /psi put
+dup 33 /omega put
+dup 58 /period put
+dup 120 /x put
+readonly def
+currentdict end
+currentfile eexec
+D9D66F633B846AB284BCF8B0411B772DE5CE3C05EF98F858322DCEA45E0874C5
+45D25FE192539D9CDA4BAA46D9C431465E6ABF4E4271F89EDED7F37BE4B31FB4
+7934F62D1F46E8671F6290D6FFF601D4937BF71C22D60FB800A15796421E3AA7
+72C500501D8B10C0093F6467C553250F7C27B2C3D893772614A846374A85BC4E
+BEC0B0A89C4C161C3956ECE25274B962C854E535F418279FE26D8F83E38C5C89
+974E9A224B3CBEF90A9277AF10E0C7CAC8DC11C41DC18B814A7682E5F0248674
+11453BC81C443407AF41AF8A831A85A700CFC65E2181BCBFBC7878DFBD546AC2
+1EF6CC527FEEA044B7C8E686367E920F575AD585387358FFF41BCB212922791C
+7B0BD3BED7C6D8F3D9D52D0F181CD4D164E75851D04F64309D810A0DEA1E257B
+0D7633CEFE93FEF9D2FB7901453A46F8ACA007358D904E0189AE7B7221545085
+EDD3D5A3CEACD6023861F13C8A345A68115425E94B8FDCCEC1255454EC3E7A37
+404F6C00A3BCCF851B929D4FE66B6D8FD1C0C80130541609759F18EF07BCD133
+78CBC4A0D8A796A2574260C6A952CA73D9EB5C28356F5C90D1A59DC788762BFF
+A1B6F0614958D09751C0DB2309406F6B4489125B31C5DD365B2F140CB5E42CEE
+88BE11C7176E6BBC90D24E40956279FBDC9D89A6C4A1F4D27EC57F496602FBC4
+C854143903A53EF1188D117C49F8B6F2498B4698C25F2C5E8D8BD833206F88FC
+BD5B495EB993A26B6055BD0BBA2B3DDFD462C39E022D4A1760C845EA448DED88
+98C44BAAB85CD0423E00154C4741240EB3A2290B67144A4C80C88BE3D59AD760
+E553DAC4E8BA00B06398B1D0DFE96FB89449D4AE18CE8B27AFE75D2B84EFDB44
+143FD887F8FB364D000651912E40B0BAEDDA5AD57A3BC0E411E1AD908C77DCE3
+981985F98E258A9BB3A1B845FC4A21BCC54559E51BC0E6C22F0C38540F8C9490
+88A0E23EA504FA79F8960CC9D58611C519D3ACDC63FB2FBCAE6674357D7F2285
+4BCC9F54D3DA421D744D3A341DA3B494BB526C0734E1A8FC71501745399F7683
+FD17EC3044419A88C3979FD2ABA5B0130907B145A8462AAF0A9B511D2C8A7C7F
+347FF6AC057E6512902BFD2918E2CD31DE615F5D643764E900B60287670AE18F
+FDE15545D8BC69591A8CBBB275AFFC9B14BD68DF0AAB32268FB84844D4DBC7BB
+C591C1AC5102C50A9C7BAAA848DA88B0519F0F5F0813BF055CF0E3C86F633A04
+B779D2E8E656DB1E09A66A85FE21CA8BA5523F472A229E83F2C4E91ABA46C733
+F3C7B5775B06C97782BC225C46385BEBDC61572458EFC5CF4190AB7A9C1C92DA
+29F84BAACF552089195966E3AD9E57CC914D20B6962BE80429A16D4DF1ECAA66
+36C4343FADF0B2B48F12E2EB8443C4AA29D00949255F3968617F98B8ABD4CC12
+048B838EE243A21AC808BD295195E4AE9027005F52258BFCA915C8D9AED9A2C0
+80814F79CF943FBE3594C530A22A92E11BE80FCEC1684C4F56712D5846B0749C
+9B54A979B315222F209DEE72583B03093EC38F7C5B9F9BCB21DBE8EDDAE9BE8B
+75ACE6B12A31083AC8348EC84D1D29D2297A266284B7E9734E207DAF59A25F4E
+4AA38509E993C5394FED76E6A2F25462685C4C86C6E8CFC9863338EC1428BDFC
+74616BB1BC8948B0ED4C87C15B4405F3A7796F9DB3798FFFE8BD0A94E834817B
+D5E9812E308D0CC920470A6F2CD088FCB80462BF7CB3F039A7DF3DAF5B2B5355
+E083A385CD2EAF0FC181E40E96DD7E9AB9EF5C7E6866A13B8A54718E950FE097
+EF0951A357114F18CE9933D28B3A77AA71E3CE884661F13284BCED5D5FD1A86D
+543E588FF473DC2CF9A4DC312500135F29C2D0174B32018C8DBD40EF9A232883
+710A1F2AB2CD11312300ACDF789A9B7B93D2035D81D1C84984D92D78A53A00C6
+EDA94B24BBAC1AD17774A4E07E6F74ABD90415965616AD540C8ECD8C3A44EE4F
+7F4F6BB6238C5062D63FA59B7BF08BE93FAEA70A2AB08FBEAAF7DBF56B95FD93
+03CA406543BA6C9527D0DF01F5108D31A51778A5EB1C93F27B72B46146A353A2
+01CACBC829603B9989A87CF64528682CCBA0562A8165B185C58A5C6BB72F5E89
+500ACCAAB8ECEFBB2640E99EAEEC4EA979AA793D013D61D8ACF8784FF8D9398F
+F6A252A709324FB39509F0B3A4E725E82F53543383C6765BE556CC897C758208
+AA3AD37B0406E4A79F8F0A6C1983FC73E71CD858C0DB66ED66D5D992978614EE
+1EA91EBE191E082EBA1FC040AF19A2202575C2EBEB8058833E3520FA03D2F915
+85C1ED337E457B9FEEB0C6EF2735EFDA6E0D05FA641BCF698AC6B97751E8306C
+4DF00A39B8581FF53DB8F8525FDB196D85950906CCB59B8EF171349AA3B567B1
+6A00819947A995FB383C3C1709C9A2C113B2E40BB832B7D4A0FBA0B16A2C455F
+55809CC425C403E9668DC66BE45B71A81C332FD4DB279D22A2959962304A8F18
+085893DAC61317D24A8F198FDAB95F3B86F0AFD35047B868A9A17037A2829A02
+BAB042F75F349E197A7EED41984C2859754CAFD0251439921C248B463B516951
+2E1322C80D73F9CBCAA63A585450275AC2492E4D3FB78E800F788254DB5E610D
+CF788DF5C70FF99892BCDF16133E34B24B77C8F097F546B87C603DDB8998B66E
+BACB68BA27462AF54AA405682EC96D701F0D474DECD5F95CA2102DF639EB169E
+D518162C2BAE45FF698B6DE15FC6E7DE48C336C40A670FD26952A6BAB09115E1
+991F0073419F2CC2A1C08BE91096936AA0C37E4ED3CCCEE235476074B8FF1125
+6BDE3701F85532D8BB64CCC927CC335281C95EA689706F0AC717DC2CF680C754
+E5EFD7FA4BB8880B2B727A964C876D4A223069D4E6001771F0E23EAD2A4BBC80
+E76675297B2EF05F52BF4E71B3EE2BE3048CF088C79540113C66AE98B2FD3CB1
+B0741A215FD070882C52765009D7D711DAA2508F19AE7DDA15229A856AC49BC3
+4DDF40814FF96500E4B9B02D412E94623C5FDCC76C0FB8E42DF56A904FE49D65
+1DA7C53901B2EA71AB658A464D3ABDE27D9DB8D9E0B48F64E61A2495AD5D8DAB
+B5E72424AD017DF37964AF911BD7FA21A5EB4775DC8E95EF0C0EB856B00D89D7
+8172A1DE8530767D317B8256103E53CFB877E10686A04F5A08F8DC58D843DEBA
+FD5F40597588663D103689F6EB3EB14D06E18C8078F2538B43E712DF491FC5C6
+AF639256C8C6134B64D560D8476DEA6329D995E46CC4BC78841C59E73648B47E
+BFA7DE0846422F738454AE77E822A083405289247BD7C478BE4974F742CD6051
+E99FBB1D1B3FBABFEE855174734EE45E87D0AADF32B1283B911162A9955847FD
+38944D70584FAA6B1A7191C5C134B73F98EB632B69E2F0C0F94156787C34C8A3
+7622A029D58F9626B74F8A8A1F3803E0BC20E0EADEB1E99B70F1BD9F980FB751
+2A842843DE42EB142A84D5D3138629AE9EAF6F3479C423E8829C8816FA6EFA27
+DCE5580E65AA9854B1C64163DC318420CD993C15BFD76A8BA1182860A6B03D6D
+22B8CF43CFE6C8AB27C64842E239CAE707D3086BADDE1D7C94E3BC96319470D6
+8D26915C575CFDD03271D6BB9DE86A0EB6EEA6E768B224A626C62A9AB48A6EDB
+44F70BB5AF991CDF9736D65933E81CC57A78F623F33EC9AF535F2F25FA4EEC90
+D50DB7E87F31E971A75A33A301CA6013EEC5A4E179D695B33DADF2C98364434A
+42926776000B610E17524162253F6FA638D6581C18F99EA0BD1D2E24D2424ADF
+C05010D08192485153DD03930C7BF45237593E484F9851E6D464FA10FECA5D9E
+0C8CCC97DE029030900CDBB491C5CF226DBF903CFE7735D939C3FDF3A20B70CE
+66579B28B99313FEE914E295388C7BC8E055A2E54EA3A8206D3C8F4F7C0BA5E6
+E519419FD8CE215F7B8E9BEC604A9E3FE272A0328A24E31997C8A91E0946BCF1
+6943A97CBED2AB9FC636B49828BBB8B89E0BBC2653796431224895ABA5DAC41E
+1854BD9764E86147FD7624F736F40DE3B7582EDDFD15C2BDE3F22B5A54D7DF10
+B87A1301CE85CFC061689A890A321412A13314AE96DCD3EDA75035FDD8F4AB9B
+897A2C68263A68457032C469987970648BA2D88B1C5375DFEAA35A917B8A952E
+EE670427942AEDB3CB599C5746180E392837D371E15D860620ABDB6AA7772C40
+A5E346661673ACA530BE3D8E3FFB895E5DA3DC23B1B43C080C77F7E47847F0F3
+F3AA5CA9E4BF75FC5EBD18D19F21A7DAA3B11CABC6E4070A15F7DBC8B05EB6AA
+A02EF1B078EB66D61D6AFE41DA9B36FE7EC9EF94D1EA26282A9871E2CACB3126
+2AD49C2D9B50A6E47D8F2CCAD50992D1B430979A45FD9E76182A19964BB2A1F6
+51779A2B258DC1DF4C2F3074621286831F3848AC152DDD2BA561E6586ADA88D3
+598A2CE2CD048F027CE0008B828BD915887D7785341E8305DF2346ADB76BE99F
+87B02173BDC334E9221C8DF54114A6B24C1C5340299512FA6C8C51AB4C8778CE
+178CEF531C6D1B5FF0A1BE8EFF767F959BD4C345C52699A29A17B2A230842BF6
+4B011217D6D24EDAC3F6D53482786F1CA33169B90ECD499407D37CE9B70DDF78
+7B7547B32952535BA9ACD1E244447AE3FCED3AF28717083CF9590A09780984D6
+AF0743C82AE4FB3E2BB2856A4153A3967A023FFC35382D6C22D84A924900B6A6
+3DDD400E6D2418DA6C27F2FA34C075C902B89EBAE658B3C9A18EEE449DA5A379
+337DE95CB7AB3F0970CF1A5D8FAD8090E495570FDFB2FBBA79244780D8035547
+C5A55BB21A2270F724BF5D442CDC5BB9F09BE0CAE59B1C2270F0BDACE698F2C5
+DE8F66BFB9634904B161F5BA2B1950048300D69BABD312D58D89C4ED527AF7BA
+7DA2478EDC2CDEE3473DD8A8ED9D891CD1FC21F23013228BB3281B71FCE959BD
+6F8E9059D682A7FCC5265A0620992D4FA8D78377EB34CE3ECA070EE3707239BC
+98907DB0120CE42ABA32CF97127E28382BDDFD685674279F588D4F951216C355
+821361790F64C2CC720DE97E8ECB57326C43EE47367628E05769E106868B54F4
+C33C9951908DF6FC4F5ED2C7787BD8FA591BBB3E9C6C1DA94CC5E38D9B20C886
+7D237572FF46DD896A4D6163408EA6CEFAC398EE041EAE29D577E75326CA17A6
+B072D47A7B13EC441CE6DAA042ECD02134CBFA6809A435050413817193DAEB16
+A5882C8AEA44BCF36E74E9ECCDFE7E19FF5A5DD7A94E5AB4F8702C3DA7F42325
+23C808670A0490F5B373DADE40814FF9650241D3D69C91FBC5ECE728F827D9BF
+C928602E05477903449E079164CA39859C4BCA60C579F490AA455F82B5050BB3
+969AFB478E0D4A257B3356EA3CD62051FCE6C6B1929CFF85BFDF166BEF658E10
+3A55E007F38EBBB248B3F0B8ED1925106B499B762E45113AE1AC9DE09644C84B
+9C08034B297314EE69BC32DB6E7D7FB9913CE5AC17E7335979E9DCCE2BAB3725
+1976155551F9706A576FE0E3ADCCF72C87683291528ECB749CB0ED291966E239
+B5E3630676BD409E08F85BC1AEC9A2D4135376284A96EA24431243BD6FE8B966
+95F11A4BB53F392E0AEFEA623064FF8A7002367B0A515635CB2D2DDFB9B4A8D7
+FE721754E81BBA548848A235B91AD4E4F7DB19CCE2F61D277FC00AB956EB93BE
+44AB4970CA56BF59506C94ED160FB1E25D3DF2988A532BDB787BFB8539D22986
+FDC378AC31444E63C4727FEE121A43751043849E6DCAC5B59D0FC703AAFBBFD4
+E8B7C268F21615AD02CE9DABEFA27B5FE6A6441B619539CAB1F810F1263447AA
+633F5DAF483752EF1A0421740E3A811D2D2898CBF53E7F686C9223FD7235F02D
+6F90D2D48CC20AB87778DE3C6FB335E0F0EC20B5DC5B65223FE117526DE2C72F
+FE839DF93CB2A7D66CD900CB325F891E311BEC932F703FB4FEFA29DB8B9C88DD
+375EC71B3D58C7BC59ADA91971A3BDA1ADEA629CE6CC92BD542CDDFAA7706FB2
+6CDDE2DF07E56D6741916AE8E8744339816F3E6C38062747AA9FDA2A2678A6B7
+EFEA870AA3A4D71B25EE3013EAB1DBA34401B867C7A41AE51E0421D41D3BB83C
+E120C8FEABA6E5DEC53A689C21426D4BBCB68CB37568761C360E6D4E3596FB7D
+F4DEC7918E58C0293D12D6DDA7E9DCDAAD7C939F55CD1BC4A228B31E9A904156
+DA6B40B08E6ACE674618B768DD681C772A3E55FE096CF949CF3B0460ABDCD891
+D17B37B355B29AB5137899C036F31DA026244FA25FB798FBE5105BDA29F46538
+D3D3AC1001A7BCECE64DE94FFE6C354166A0F97256137BDFA07F6E22A3D1D2F4
+9588DBAE95E895BC5E64DDCBBAA8D0A22C229B42CB717FC711E7E9DF793DF80B
+9F14754585A3C7E17F37B32924B9F9870DA8635E3E18BD1DCD81EDF01834D9C6
+B33F23C956C2FCBFA47D84422F583459D827D1E120B97694D12F1F54D02379C0
+D288F7104F3FFCF4F76E3494F4ACBD1BE3A15543CC680924C78A473F8E311ADF
+8FE00A04C6C393DE61AD3EDA5BC031E2353076A2489391B52632387CA28A7B93
+FBB065A6EF3658AE80B1ADA47E9B2539E73A71FA75645F85ED8ECC257FB4CF26
+B6C912DE9D0F9899E70BECCB934AD32CF49A093371A9F73DE6255EBC39DE1E7F
+00D0CBDABD4D0383977E694890E71FBE5C376BE5F3A80C28987417504F515C50
+909F3D31178BB9B1D085BE514F71B910A9085BD6122DDC72A150BFE266920E49
+5661BCB4BAB51D6DEFE32B616963DBD989FCDD1637B294CE4E288655FBEFA1BF
+7F25BBF8CF17C2D5FD161A7C2CC9CC7490D9BF15A1D35B3BFA43ADE256E88BDA
+BD490D92907C57BAC408A575EC84D6AEE070148C7C9A91C03B09FDBD792E8FF0
+C0B886AAD2EDD86541E5E579359D40E3AC312ACD3D8FD49F71BD533DDF8859B1
+BAF17F1884E331DD07CEEF93B71D492AEBAADF7A263450A7A72210CE630A0D37
+BF024BDC09ACC882816B8C22C62AE38A3A8D0F6EBC2B1B2C0B8161A8B076DD5D
+4B779C0788546BB4CF57332230D237856B00D79C28A7C01D11F44B7304F69075
+94B97A745DA43D1BE561372CE611C345A843834E46AD9DDB16CABCD3FA33D6F1
+F6B5C0497F5EE5400B305CDC16A7EC286AA4D45D0EEBB9DA06AC9C5294D68EC9
+E4DC3CA2B92CE8FC0526184A86EDC7AB34D67E60AC12D9CA8FD300235EC968BA
+92C6FBDA47572BC5600F25249F60AD287CBDAE980E747FCBE7EE5CD323E733F0
+63553B494D3DDEB9CC1480B5C3BB79A28E419AA65B18CB297AB383419E890E2A
+CE6F98C9900CCB4675280A10CF060B8D220DDA1BE55DFA65715EABCC1AFAA271
+B1F8732341613E17B231231A0D24D4D7FC198AE04D89A99C4536217769C6FBD9
+5EE24A6302F97438F7C0E311C878F674B4477A5ADA3952CDE4055AC408B8174E
+86F8FB797646DFFFE0ECA25D1BAB9A9F71F3926D3D85AA63E7A8C931D71E79E0
+AF1EAC26FADE468F4FF7F3861D14C10E3BE1F9EAFD6D3A544E8108D5DAB5B180
+3950C74818BC8AF4758A108F462EF1826647A49667F5E482038C54716856D9BC
+35F29922846D2148F92F943E951D7438C73D6A60459A8003174036C64E1629CD
+155D47FD04B03C023AD67CD5A70C98AB556EEAB8C48169706E5B352F6505D580
+AC945171BFE62E81F8F500438AC3B64D857BA5BC54C2C4BBB237F8FA51296255
+E66A92A61FE13FDE781D393557EB72CEBAD86511035F775FAC39A0479CCD400F
+226709118F887F47CC2ECC8F79816D4A945B2845F50AFD62D8C9A9BBF4739496
+9E644BC9F7B04803B7EE75A09EAE94365F6F374B4FCEB0B506C76297564B9B6B
+8B812BC3A33929AA94692572B010E6210AEAA312BDFC88BF302244AB9D587A9B
+919823FD01DE12438D960944D1977800FEB49E638C32E5B188B1CA033E0C37EE
+A142F746367888AA119535F0CCAF7EAA461B790EB089D2D6962E28A398439BB7
+9C9943654D7A2D765B46BC0DD1F915327F369162E1BA1BA83110B93F442905E0
+523BFF5E279508A98568CD5CFD18FABBE9D17265A9081E7BF64155A2CE3C0DF7
+88D00671AD65654709589BAD7EA65BBA811387ABA5CA0BC3F66D3D48597A0D1D
+2C268375DF47CCF62166262AE4840AB03BF49BE67A05EF66328EC729F03CA5FF
+AD3937FC053E223303565DC771ACF32E63DFB96D5030E787961D72D02C195C66
+B48E9AF0309DC169CFE8D16E2818DA94693A18F027DEA0D916723EE6C6FB8277
+AA6DA4D1C92BA982B14FBB2476BD0BAFF8077A04AD0E925226F6B253C9E6AA96
+ECFEA818AD2996FE2FCB0706270ACBD66778364FF72B11D27470E4A3DB6EB52F
+B15B78BF2428B2D53E8E9FA8011B486336590169334DAA33548F87894EBABD92
+99F7EBCD3D446B33779A7B19A2C118E1ECDD902516C408CD25D9C12E32850456
+7129E62C6FFD312BBC3E84B1A63D5B09FFC01D1CAFB23E4250609265F2DAA5EB
+D59AAE0826046F2FF1CB6EFB3359703A549BF407A2695CAF9968A1157F2B0395
+052F18585F8444FE23A5C92EC5055E3369529E108C4DB123E692E357D88CF54E
+80D3CE579B620DC311DD2F8C2D95E222EA6F45AEBB7A292049C443333D5CE1EA
+046A351355D0F8DA185943869581C7C923795DCC6B670953246389119F1EF728
+776BF08302DFD4C4F3D2B841593ED94594B10B0A8EC45A77B1FB749163200638
+518B62E198CD5BF896C1B65476DE2DE426770109D70E1E870443A35AFF214D1D
+2EBF52A19DB761B3BE08E0AD2B20163FD679EB1ADBA0ADC95FF86F6126E2BFF6
+0924EC69D17209AD27AF3232E7105F7E8C45792870153A461AAA56280EF2A99F
+E519F01EB8B11CBE2D77DDD0CCB968F5376E5F7B409BE7BCB5AEC2AFE8043FEC
+7E89A61979E73B4A820209728ADA6EB5FAA5AC430DCC15DA16BC5B3384EFF650
+097A08D4ADAD0B91BE4684DF4C60AA0AA71D637C9111824AA7886FDADA6E09DA
+6983B8C2ECE04B17D26012CA6A5B01198610B29650FBDB0C4021EBCCFD555A10
+8F40866B92790B6B5243DAF80752FD017F6164B65E3F02F0895613847BA68332
+854E73486FD99056766B15C795E106E2A1628759F1C4350702EC1219C48299DF
+3F75F276B08850D9F879E89E6E4176EA4787A1CC952583482B6DFB4D62885FFB
+3358DDC2BE4625DFD8210DFDF435625AE8D6B53E227D31E088B34DCB60F072F3
+51828D33219C45483309884A3D04637A876D7DC5EBD8F7889E92279363682E89
+BA4ECB9BF037E275229C98C02992386CC8FA86814FC9474B9B938B172907A1A1
+91E15E4227B10D2C2A6AF37CD467E666D740BBD46B633C60A8AF02E9A7248845
+00197257377C05EE944AEFA30B4070A40E91580F997A5B7921EB92713A08CD54
+EB7323269E2709B7C6B1FA708EBE466ED62C018C2935EB46D3B3A9699B50E53D
+71AD32F6BFCC88593FD61E5A0DC9CF8685A2976CA901894404CB17ABE0BC388C
+197B96CE79A8E6DC84F17CDF60D191BA0D9A0D03F692B1CBFED473C778012E9B
+5ADA9E728E38DAC8628925E1CF944AB6C0B335AB19EAA25FE85BB3669DF61E76
+28760097E2D635091FAA5176BBF19BECDC8D44038B5EDECC3C24E1254FB57209
+A1FC0094FB2846E950FC3859C0CCD7040D3B1BC4FBAF13BBC90FB02545BCB823
+668506F0D780791FBD5E08C653934EDBCAB96F1FEBA8F447D885553E2A081D94
+BE3B718E06A0228B75805805B7F55DDCEDC55C70D2550DF6F346B08BCA8922DC
+18D5AD548D263D8DF7E4BAA1C4FA6EEC2683A635C67A08CB0DEE1EBB8CEBC704
+66B9CE2B08A7A503A9A9A104D7697EE7FAE1EEEE93F9FF6F9C864E08E757CC76
+29261B7CBD2D5114DDE1CD843B087E80425070CFF042971739474B1A4890FB50
+C006805CB45BD1F3FFD6D3B967E55FE8CA878EC89B4DA7DEA37B2BBEC6FD0340
+4FCC649FD2D0DB08C25280932421FB9817DF4B860B2342F4891D850B14899333
+B8585D9C731EB49F2F068645EC697EFDA5B4355E288C245FD5C7680CCC618B52
+C535F2742BFFCF7DEF46203FFEE36EDB5B0BD8DBFA299F6C682E764BEFB5FD04
+80F52500C1ED1FA92E98418A3C054414CF61DAAD28E17242B86F61F0C5F06D13
+2F83E6B4FA23E7FF16E92CDD5DD6EEF54A08DFC001F208D0EB0FAA5BEA3FA8B3
+F94D4E6F6B64ED83F114DCA92B89B0190D62C938A2F4F5634697E7B97B107AC6
+1CBBC4512E0CDFC2186BC57AB8C1063287C7E825BEAFC9D5E3BEA6142398D231
+2825926E3F5683470176DB6CC88AF085EADD902975EA40EF57CD4DDFFCE707BB
+D7D6FCF6072FFB4A0E9A58412189D9A354981D71628A0778D0FA55EF93A04356
+7A29DC5F9159AF80F18B12151744C1739447EA765D80173729ED952EFA828D16
+EAEAB2B52CE9523DCF7CA8ABC2133786CCE2276517297CEE7393B972A4CA69EF
+C90E208983674A837E596D564AD498D8C49AC9BA4B868FFE2ACAE06515109DA1
+C796FA4A223C1CC6A866AF0B0A4E4A0355A9963EFE5822A90B54217FB25D9BB4
+688058DB6592237015C4C0E680BAEED0F59621742C13AF84AFBDE9CBDA86D8DB
+8C3C25C9AF7DDB349125CDD3DAA0E8836D9AA36C0A1769DC63B636E709B2D480
+D1837A362F4E6D7593A1EFACEB938A74334A660D7988642DCF0670B5B4F77352
+84C650B4ADC04FA6F2A88D8A38499BD205B779B9DDF41FA17B4D3409672DE117
+702155E85FD03FA69D240432548D911AC51863A33A1F7981FA9FE79B56C26740
+E55DF636AF416A489D1A38171053086D8D349231AFD964269DF89EF130EF04F1
+6D0F1115762A7BF16D3BD70DE1C76C6801C6C70A9A765A38F0A02E32318565B6
+918DA1316C03BC464EBA19D1E585D1CAA94ABDA4AF8D153483CB06DDF1259734
+B51887C61C85FEBD360C66CB283130CA316357012FC86A720C0D679F19F1E443
+0E625B949AF078BC8C08CE9856CFD01C1EBBC2812DBEBE198152AC77A3478F28
+FF9C52AE6F1AD03B9D7BC6F7C69C86504AE4F250C5BF5943483A34BE6673EDCA
+24EC9156F7BD64FB53C99DDE79CEDCD0946C36D0F6239F61E6FE953FF4A576FA
+4BD8ED149B0B046580D64D6BF62C9EA0AD298222E1AD3A377F7246E37773735F
+095157C0DACF824A142F0D388AEA42C21329298DB79D2FC4C9611496F33A8065
+82A4A0E43CF30B314DA0719366DC73D5D0D4E03E9757D7C0912F9201F6E35E56
+3465682CEB9CDD526E638F5BFC181FA91E7785E529AF2F64559E4A0866E1853A
+75EEFB67242BA60F1E65C6613880E5D10F15FFAE888F0317B3616C835335A2F2
+AAE57377999829B21687F956B0D90887F01F6C955061B4CF38484C0F695AE161
+5DA7BD3C5B2E8025187E6A54FCEE64B9F19530EDBFEAF6EF76823622156A335C
+42DE6D106C0C954BA054773A932409C67ABA6A0E3BB501EE2B74A9F35E62459C
+6BEF3F52CA2A2CA062F6A69D9D0E545DDCE6B1834053213DC6A15350B3B8C52E
+EF19BCF29FF5B91BDC6649B4F7509DD1BB4905A14C185781CAA9A414AEEAD196
+A61556FA7CF2203F73BBCA3C036103051B6E59D65FFD06906A1ECAED47F2D916
+FFD1DB1B33062306ED9FDB28BB987909E96857FB82955E5579BB86C848D4E9B1
+374273F46ED3E641CF4C69214A2791AD14320D04664B73515C9B31C0548B77E3
+480A63F3CF94FC07A998752B9087B65B2E1859229188F6E97FD2EE0394D875E3
+79A507E5E6D1468B5B607971C09EC415C9E2EEE5C875912143E3EE14BE6F4D22
+7DCAEC595D9D1D663B76D9B16641F24B581250932BC808F092C9A758E037C541
+F2411832D72D6F3DF5CF53E41DA46A8E6AC7EFD75C780AFB6EC7D0885EA79897
+72DC07C7F65FBB1EDA3E6210CDBFDBD08A7703EAE596F59BF3E167E20B8C0D03
+F138B55C88F9BA05ADF8BAA05273DC61E55A7EA813F9B5668555EF5B74F86EE2
+F9B27D2EBC2653DCEDDAFB628D5F45C352FE95CDE90249953F22786BDC37F587
+7CEB20FA9F03C3F88B5D5BC03FE0440AB549D5EF2EE410A733E7F00BE5461810
+A2516DA1307219165738AFDEE266A51C141130B9F99F09E5C6C7B69F243B1B7E
+DEB4D2AA2E8DAA23AC94B08C3E8983E560AE31E3210CEA8C4B53483C917DCFEC
+A67D88F22535C7349C25C3E370F7D1F9527141651E243A8879D403DDFDBE2640
+AD7DE13802FA36CE5E12BEDF4E1C64583D301113552DBCDE8B254A66A1A2A01B
+6BDEA6B38ED3B52A2D4C73D8221F94B5B14AD4741BB7A6BF2F2DFE3B0FCD2E2C
+9A390AE0CC4A1674896252CFEBA3CCA93A177F0BE3E82118F3D918537A7F32B1
+9AC1783A542D7DB9FA5635EE30589F65B74CE1379E1ED0AF55E6ACBD9932228B
+50ACCD1A381F3FCEA5FDAC010885927493CBA34E8F35D36A01492788EB4BA1B1
+04AEAFD4A4B058F6C9BE02A6DECD25DDD90AC93BA4209B2ED1477C045ACC9C48
+6CEDCD2860C9014E938A63E631AD10A5A328E8AB99D5F1D9C37E579316FC7545
+605554DAE9B419244B1E2AB3AB05FBA51812751C3B2D68318AD6C828D8D479C1
+BB4066313FE8B37A7776235D03C5135896DE988170D8BBC2B3BF82CF1AA265FA
+093B59428855A8885089E98D387A3E89EDC497DEBBC0C5297BBF9C22352D8843
+9AEC12FFAC5BFD13F0BB07EC512D390E5719E4440AA159FA652FB8FA8FD35037
+5CCDF0FC25BE1D79F30C5E3784147347CD981082BC99EA3C0694211C1C9C82FB
+E67712A9721D0E0DCEE3FFF2DB1350EB068048856CD52E07CE061B0FFA4B8699
+9E747AD286D01FD2F976F1073A1CC4A1B666C3A1D6437E92D011E71288864B2A
+98E89CBA052E1D8098556BF1F79461998891EF7A63DA3AF331B87438535CBB94
+FCC31F8E732444311DAE0979824B82F67ED75AD9AC8B42372A4B858DC5A496AA
+1C5BAAF638919C4B0562BEBE71621F8351120C8B863A9AB484C68F7082C9D066
+EF735952813629C47B1AF70C680896AA6690043BDC049C35B443A85E4C0214BF
+9DA09852CC57528CE8CB189303C335D302FFAF6F01425F5F4EEA68FDC35981F6
+0F8FF97C6C98C0E733CAD3DF2407C41E379098EC726F4FECD5FB126D26760426
+4E19D4CD98B781B536DD4CBFA28DE795D7CF3734B90338CB0B0D03E866461957
+33BDEA865F633C228D2D09BCBD923C2D5FB8D6C409D231779F34DC42A2F4DF49
+97E672DEF9194979ED9A06590378C5F9464121CC24F94563A6E308BCEAA586C4
+DE123A258F7BBEA93B8F4FE9A0CB5237E8479CDA80F6858296378A159741BDE0
+CB09C5BDCA2F4AA60B5EFD1C5F70CAF5F23A6259447059B755C33D9B55433198
+973B71526D1D2EC50ADEF2FE56D5F3FCDFEA35B2F25185744686F09FC658F96B
+E30F936829D2F6EE420811AB1289859D273C8E58BBED3480FC1DD2C27ADD747C
+852961CDA71B1AEF3BBD135E152C18C425AE3B72B3DCBFFEB1490DB2842E44E3
+18966D11F28828B300DBAB32242279D335701950DA13453EDCA6E9E489DA9015
+DE9F5E50D467F96FFF711416A89204D9B109CD5D798C7488802A26728FF67CFA
+B62C7C62A8C9CE43B84FB91A7DE7109D563D112C29D22C8AA7749FDDBC291F8F
+18631FDF92FB0C3A5BF5413C37ABB5D02DAD34E5B5FD01174D9F331F42F74513
+2F821A44510C5E871A5A358B0F3C132D6D063C32F4F0D143503DA696843223CA
+F80820199F4FF9901FD0EFF641AE701D69F36B78A7835437CCFEC64FBCB3ECB1
+EEFF8F21A61147D2CBB4354113B33961B145704A546A9A1AEA5F436232A74B0D
+A172DCD5E5A788F5E2405BDCDDC1EC6335E641DD414006BC8D56281D34D20019
+361D8C3EFC3D5E031D4506675AE42DDC42EFBE0C77E50F763F58C20F626EFB27
+DA6F7DFF25944B147526D1C2223EC6EDD91188BAB34ECB92E0A99137B97D3C8D
+DFDBEA18B111707747094A70D96E549E4445A2ABA244ADB15692636D05CE6DD3
+A1CC8E7544E21CA86185EC63AB05216898BD6477D864799EFA2172702445AAD4
+D0373169BBCF1D6E8D63DBA00CD4CC3BF007D6C623C3D149FD1B75ED7EBDE272
+6FFB9BAA2646756420EC86A413C19D2C54B53229411B31C344642B0187F7D299
+90A566E29CEC76630A998E88966A82B64A6D4441E5A2F473A7FB0901A54F0587
+F12C7319A38F2EEAB0632CADC0A5D58E2D1D83E7BEF0225173BFEBF9588BAB4D
+FBDBB8F478F51A3D6DEE9033F6EEE3704B30D75C19A0D96A1F3EA3529A76CC49
+1975371D461222168009CAE1472A05E904FB4811716B08D5EFC292B63D42172B
+4FC3554FDC1968B0EA82CADF683F2148C969CCECDF40A6F67F2B5157D9EDE5D6
+934A8C31B22039A7FC88E58AF87301A7B900E015940ABFF26EA3D8E78FB1507B
+8A3D15790236F3469A5C7332B6F548096382F89E4ED318D431D216D9C57B7B60
+DD0B25246AD5D596F97A57657E608FB2AADD71F044A140926AA748EB31862A05
+0EE2B8F6EC995C5026574D7ED744042B565746C2B26FFE31B1F3C2BDC2A79296
+09735187171E0A05EE5B89BAF2EEC98536DCF3EB575E0C6BE341FD9B8A091CB3
+120DB6601DE7F725AEEAE26463F8AF2D899CCB85FD3F7F4E8A80805862D7851E
+2071A2AF4E065EB53ECEE9BDF5CE457CC283C9D1F9DF4801EF41D4B82D851795
+EFDF1C367B71F25DC6BADFF922EA660FEBCF7D9F307CB680FA81CCDD0F60A841
+EBCDC95501F1ED328E98168E24C94D5B7C9293ABE07ADB4BE8EFC29DA366FBE7
+016E13079DEFCD8527FA4C470A327ED77C427012CE6CA06FF74D1FE33BDE7690
+5B40A59589737899F57A894E30628DC0C38C179694EC935E0403E150508FA87D
+04486113B7BD7464E886EDC86F97A16EB0F0544A0AC59FC5E12740B39D351466
+6DA8D4AF9CBEA3116EC40E9B6818EFAE35027C85AEBE8ACB017752F4D5B3AA30
+
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+cleartomark
+{restore}if
+%%EndFont
+%%BeginFont: CMSY6
+%!PS-AdobeFont-1.0: CMSY6 003.002
+%%Title: CMSY6
+%Version: 003.002
+%%CreationDate: Mon Jul 13 16:17:00 2009
+%%Creator: David M. Jones
+%Copyright: Copyright (c) 1997, 2009 American Mathematical Society
+%Copyright: (<http://www.ams.org>), with Reserved Font Name CMSY6.
+% This Font Software is licensed under the SIL Open Font License, Version 1.1.
+% This license is in the accompanying file OFL.txt, and is also
+% available with a FAQ at: http://scripts.sil.org/OFL.
+%%EndComments
+FontDirectory/CMSY6 known{/CMSY6 findfont dup/UniqueID known{dup
+/UniqueID get 5096647 eq exch/FontType get 1 eq and}{pop false}ifelse
+{save true}{false}ifelse}{false}ifelse
+11 dict begin
+/FontType 1 def
+/FontMatrix [0.001 0 0 0.001 0 0 ]readonly def
+/FontName /CMSY6 def
+/FontBBox {-4 -948 1329 786 }readonly def
+/PaintType 0 def
+/FontInfo 9 dict dup begin
+/version (003.002) readonly def
+/Notice (Copyright \050c\051 1997, 2009 American Mathematical Society \050<http://www.ams.org>\051, with Reserved Font Name CMSY6.) readonly def
+/FullName (CMSY6) readonly def
+/FamilyName (Computer Modern) readonly def
+/Weight (Medium) readonly def
+/ItalicAngle -14.04 def
+/isFixedPitch false def
+/UnderlinePosition -100 def
+/UnderlineThickness 50 def
+end readonly def
+/Encoding 256 array
+0 1 255 {1 index exch /.notdef put} for
+dup 13 /circlecopyrt put
+readonly def
+currentdict end
+currentfile eexec
+D9D66F633B846AB284BCF8B0411B772DE5CD06DFE1BE899059C588357426D7A0
+7B684C079A47D271426064AD18CB9750D8A986D1D67C1B2AEEF8CE785CC19C81
+DE96489F740045C5E342F02DA1C9F9F3C167651E646F1A67CF379789E311EF91
+511D0F605B045B279357D6FC8537C233E7AEE6A4FDBE73E75A39EB206D20A6F6
+1021961B748D419EBEEB028B592124E174CA595C108E12725B9875544955CFFD
+028B698EF742BC8C19F979E35B8E99CADDDDC89CC6C59733F2A24BC3AF36AD86
+1319147A4A219ECB92D0D9F6228B51A97C29547000FCC8A4D6AE353EAB9DBA0D
+4335868937E3A2D0F9C8A4FBEAE138AE56EF84665582DDEF7B546714518D224A
+F91D19409EC600924626D79F58E272E3657E631C06412F9D42732B6AE0A93D81
+E2B13A81C76CC37FCA6DB35A1C6A572EFFEC7E1581C57B1D22EAE9C407771F40
+71D002A06A6AC249FCB7605C902A76EB298B05E39D543A63332A91B8A1ACE05B
+F902540FEC1024680B8D5857E4931D00781747C87ADCC45430B5462EA480BE50
+D07C5C9EA0D8D6447324434CF0D637BB13037B6E1C48F191C52CF2B9511690B5
+405280D5C825BD376EF12429837CD44BEA223DC8E199D8F85856C0FD551471CA
+B30481FAE99B71FAA56B639F549F449F2CA6F5450AADEAD4C09595A7A8530D12
+B23E012978225E112D23BD1D48DB097994A9D5EC707216D2BF5DF8B69E66ADBF
+DBDA4737737F51EB7A38A4207BB46456A8117067748659D654B1D14849F14920
+E57462ECFF602A181700A346C1E95131C6F1C66132915FFD999FD4105AFFE7D6
+7DA46DFCC4FE53265B14D7326F5A44A3E97902CCB106AE99ED6434AA9EEE7E6F
+60B8034EF80DF885FC63DFACB0AD1C00BE56F79B1AD41B065C59A35073B450F3
+7E6BC7B90C9D9337F9636943ED701398E6886947E126F1E12D74C5E4B5CF06EA
+E60F9B121B9B15E6752B127CCB9C26017A84BE6DD918AFE46DBF27BC06E66AD9
+830BF2D6CA9E24A0199DD3E732405F3210C97C9BD21545B5E4DC10E17C1A2C71
+851ED2B272055831A6F95864137C218E555B054BE3616820FE671E5BC08E7A48
+D683ACDB91E05F469C0C8919D71027E179F4911E878F8D13F999C63C4EC2C21D
+ADE1A11979B539C4C5746AA157A4EB4A7A153BC5D966197A7FF6A2DA3FDB161A
+EF43C2D906C617868617E72163D5B0BC29C36A60867C120A02E08264231FD46C
+1D3B62622A05129188D818E2AE83FB2770DF1D466CA38A49D15F9056BB7AB8BF
+D7DEB2E3B3A8157B59D138787B21CE3B3A456E230CFEC1374AC66B7DBBE788FD
+5182DA23264093CEF60D5BB0073AEDB68A61ECF1C69669244A1FA0CBA44DB83F
+352AEE6012082B8A3FD62F4497B1BE0E4FF77FF94BF221212D63BC1E35B9758F
+2D7F8FA002751DC0380AB954331E9AABA6C122F8F3D7E69CE8A6B359184F0531
+6B158ACF34C64C32F4671D430820B36C9A9397E9C877D734B17C3BBD8A88CE2B
+9F96D7AC5B8D55415E942D6C05392D03DAE53449F8FBE2225C91F228704BE9A1
+ECC568FB2E90C73F2F7AFA62859C35F0FB26756DE719BEA5A3EB81A6481507F1
+813CD1680EBFCF612FD9D3AA4B90688521446FABD5C54CAFE7B879F24B54449D
+2B30738B137B5E212B34BC5384BC2216A5D13F761D6E13A043DB2AABC0276705
+5C80CA394A8179D60DCA4651CE8B0A477165FF48A31BEC6B7C0852C9D72E11BE
+FEC5E4B984DFDE90218C105999E070FC83F1716D13389B5EEAE3F26C82FE9A7D
+3C67A98027D15DAD791348A21DD922C71145D287C7EA83B225377744BBB0082C
+22FD44E1B0DF60956DB9C4790F4E2F81C477DD4CA9F4BBB4287914EBBB4F6E36
+976C9E573496A2311E5C7677FBC4BB755B8BF925F291DE0442FBB8921402A487
+ECF23EC556C3FD66158727B10B74C778FA91EC16629F6E949624D265FA6FDF1F
+772E965A2C30C80AEEDC4A1867AE3D6D116BCE0F96D1A0C5138F294CC7C2AD72
+8BE152B314E26422FA2DDDFA89A054CEFC6607D932FACB035FC9FD9959C4A468
+CAC0F4DD41DFB83297EFFE36C352CA0A6B1485BF8433522BBBCCF9C73FB7334D
+1CFC92348F91C4D0EAD90B22BAC6B27D21CDF5AE65C056BDE3B30424F76C8EFE
+D7CDBC854B13EAEE0485CC348AC52F5345B7545B4FFC60B6E7CEF8D32354B233
+8DF503A03F5201EC012AA67157F4A47B902D269A060A5B8E10A37CA7CAAFD417
+1A13EED9533BD4A6E8845D7D236CB254D40930C273EA4372E0B13912B2CE9261
+275D51D202D461FD69AE352E95F72D61683267D4951BB602A0BACEAFF9516F3A
+C30EFFF3ACC08AD374A730287B148FE8E168089D239E1084E0F7D83CB9815031
+5428874FA4640E1C216514AA16C74BD2B9A95EFD7B6B0C575A5D5B3AD1086CE7
+E8EEE33490CDCF2E3FBAEDC984FE53D033987580E75E74E455E44496E186349A
+DE4B5125F69BF79936565986B3D91E6A25CE6E1C4527FE22580A39805A91BF6B
+90EFC8AD31FBA71FCC90EA04875B5A7ED05BA2FFD1C04774E1ECE84B4105ABBA
+798C339FB61ABF75C6FD3F24BC775A7FDBDD87BACCB9A86B4D928917CA62C0B8
+56343CAE0051A1172E7F234001A5FAA947CAF382FBF23E57F1144425713423E4
+4FC1AE1D096D10D6FECAA6A9186B0D519F51D06CC976A65A37E9219492E6218A
+FE9F99700C0D0D18BC48632268DA0F0CC24BE660E30645E7F63B0AD49CCA26EA
+CEDE4DED685DBD38F5C4BB6AD6CDFEBED1B14A456C27C448C91CBF6337FB3632
+7B9A565874F9849FC5E22C5A0437AF29E2B7FA405CF6B7AFEF66AE7449E89746
+66ED2D4C15A36C45C0F64E6F185B808FC788984C230B4BA63204B38C309F2DE2
+2937A92C184077F5252C9D6171EC6378273C32B61CF65E4DC124B321A4049294
+BB6CDD064D4E07605DA5FFB7B3B0A55A09D26C8624F03D8C197885BFF0A20B77
+257637447F628A4A642F6F92019F9ECA5B2DBCEDA63C05E5258C9DF131EDD1B2
+B4B04E7A5441035163BC2769B79C89ECFDF071E3517C59A45C9E97800724E1F5
+FDF504E2798FA9074A37B210B1C24DCC0B78263E2297ECA31D5C258BDD92D2DD
+8C53DD3B3BC3835E5AF52311EF0AACD6DCD159C45743B1AE7EE5A0111DCC9193
+441FB81F945D219DFF26BF50D80606DD3392CE941242CBAEA45077FBE6AD78E3
+0DF4FA54CC33CAC27A337FF307F14E60D1FA48FB8368E307441D6811676CFD38
+094A558CBF0B92503014BB169E345C27C74543CDA9E8134F85AA0DCE45EAF612
+1AB1D86FFB5E13CBDE8E0F68B19E30D0D9F5F0A3EF2A84AEE4D7F1F63A045297
+3F5C3080F313B32066E0C209C2708636C33A6531F1A483F3AFDFEA62305EF41E
+C55594660133146B24184070B87C22EE5B80D66C409076D733245FD100E936D4
+E844D8A15CF45C0CD6AB04F3B5FCB0BC7B1517BAF21CED4D6CCC3F19D21BABC5
+FFA9768D77A41BC3F5C4595D868F2FCA88D6E41558FA5A70FB562E4EB22651A3
+886F0ED1B46BFFF297A28ED67BAA28A1302BC866AA7A73418BADE0870872CE0A
+305A5E46BE0CF6B5794539B8509F1E2DB4E40124D72201589BC4B55ABA2F5C40
+E167175C7F7378203C949B8967E8CCC40F44A2D1D555A4273733874265542C0A
+3C47FF7144C4DB276320150FD5CF453A505BD3BC1E98738A1CBE175574037D47
+8EF9F80622F57DF4DAB8FB13004ED1DBBFB4664F8D7ADCCBD529B22235740EB1
+216799B2D8CEC7CC4D16D8273B6AEEA427D480AA6E3C463F46763864856713DB
+05307CE674714CAC8351410627B8D1087155F3788E744158F3428A767CDC9769
+CFBE28A30D635D7C4FC44E43E7F13128A867389FD66CFAE939AE2745055BE71A
+AA7A7817E24D38773771C77328F4A755C872AA977C062A3BF7EBCD6DEBC7746E
+70346293A661684D3988A5D0B29860E6789FA8911E0C0749ADCB9A6B053B0E31
+3D490B9A2982CFC167001648FDF96D040BEFDB75A4EB90E2974927BF38F10E78
+17FFB9DF2A65CF56C1F63544662CEA0E88A5141F990DF6B5DA79CEB5B4744083
+C4697EB37422BF120332AB934D292CE8A3624E2C8FE6862C2211254558459BAB
+D8F1D8C76C604098701163703FAED0BB298396C86A0427106C007A7CDBB0AC8E
+35F39B240F8D9D43C1BCECAB622C02E721A323383973B61DB81115E3552E4260
+9F252F18E01C1EA2B0A1DED4BA50A5822D10AC7ABD664C460A4022BA910804E2
+2094A3AE0F2AE375FB22CBD35CE9C2542C240A79BC6A79F1135E58985837E1CC
+1E5D6666BC5D61FE6EF590316F9D1E80C42B9A7B6106D8B7F575447AACBB2660
+2C96D7F024FFE3292611E82CFE62D95646B92CEF6F03EEFCB3F6950A22B0997E
+52C38B55B77C2EE7A4D047F27ADEC6BF0BC639589FD0D1E0A47C948AB5BADA43
+9846CBB5B1CE53E96622B59133303AA0F559A481E50382A2A38C98C1A56D9AD1
+1668FDDBB1FE8068DCE68E5DA13C2D9918D1FEC7F69A6DDD3A29E31A57B7BDDA
+EAC616202162DCC7B9DC52AF821A9C1D2D7F860A2F294904A55499432C7098CA
+BF79B1B0A1527B99A4C57673AF54297BA822AF200FFBDEC475158AD6ECB55F87
+555012ACFBDD0EA527CB5793CA7CACE2FD956F30D7A8AC7F6A98979BE4BD744F
+BB84A87668E3DE62A814B92D3139981200D5ADA86C5D733CF5107DF6CB5C999F
+F6F63ABEBC9694F0F67EC632BA8C58E715D92FD6BDD056F29753BCC3E54B0A7E
+63EC33F7A29740EF0D8351B5897B126FB6C33E9A33CC83DAB91691690B8B9598
+FD3F397FAD45555CF5FB9CD80879A0CAC1CD8E8D536F05134B21FA4065452DE4
+BC8F63C82A3C34A01D00F4BB254F2AD7F6171EFFF6D7BE1213C9456AB383C568
+BEC17694C545B98E8AD734D0522FEC92EB3182DDDAC54740AD352E7645D08B4D
+CB4DA9B381D36C920C77869619855B4CF730E590B0405CD25884D6DB4D49F1E3
+D79EC4D0489514359CABED492BD751104091A661A510F268EC681F818780F304
+D960A15E583F354DD574767B860C57CC9CCA991E710576C626EA909C6677057A
+C409AEE846B4D5C0535F849F33470FA395CCF5C05CBB9A1FB62CF656F7A2AA42
+34730F786153A9856C337112F6A555A70EFA76404E2B88DA2DB91E8A2BC5A05C
+CC339DCA364A87738B60497CB790EF16875CBC506695DC7D70C6ACCDB2A00555
+3877A013482D55281C83BB630CB3EFB0657E5490176CF23420B97265B22B4CFE
+1DF9E0B294F064F5160540EF3A452641C82E347A96514E4063A7FF16832736A8
+6F21F6881E269CA09FB66DF37CAE7FF46D6B9AE42B6396EBF9A7A06453A81EBD
+808B047421B0F88F62B3FF217542FBDA872D03A476FBC7C0D658C03AF70ABB40
+03F1A3027E0FE186A22AD461835877ECF843C0E8B8340306092FBC5E91783A48
+E010EBD29F114BC273BDC53D2C94275F8956A74561813AA6C2D896CB3F6E13E3
+30F6C230C00917A40EC6F4689B65BEE32F5722BB1D1147585AB3B3D2D5EB8273
+CBE30D1C6CA1BCC4BEA9B87A014E7ED3CE53D13ACC8D426267CD3BFB8497E1DC
+C51CEB14F9CFB4D4BC9D6EA5A49DC3871DE59C89F855F079299F45D363F78634
+493829329E3F370D117DEAA18E7A6989C515667C2229779B9A5494DF0B4109E7
+71D79D379FA7B408A4675FA3DE17ED0ED632F9A443527CDA8E960411AD4070EE
+173ABBFAF9101BE92BE59707F98419503A85AC58B949E8595D66D7B13B8FD4EF
+11B28FCB5955C5F147BD7FA141AE0CA2ABCB1CAF82FE22D3281852205087CF45
+549F4D5B47F52AF50E8F6FA0AEC0F95FD0B1EBDCF965BC8A924CE0F4598AC546
+C15CEE4EDE7E6DD0E5FEC3A531B944CEA406DBEE21C4CF3384A79D0D5CD51BD8
+AA5B8B1FC987AEB57E86D3C6FDFADF998A6D6043449FA5B88BB2DCBF2945A513
+AD7ECD01B39BE46A577437E1774C3FEA176287C51ACCA15909E987B5AC2CA664
+709AA5605EA89A8DCE6B4014CFA781E822E8B05F377BD0187D5EAA0585A98E2D
+6726C471578295D824D1FBFE89F04A67F1A360D799CDF92C1218F29C24DE22CB
+C6B625D044404C22C89C433715BD77D0BF171030BA84E292B7A81E2FD99D4E67
+BA702C2EFA11D4461D833E74E97C9E295C6D170DB6BD73D615D03E678B0296C0
+F8BF99321767684127625942B4C3241BD0608460C81D97FA658BC179917B5065
+74A4D1F729CEB1D51C82F9C90F0C712917AC482D413ED7CAAFD545508652DACC
+1A03842E354F734C5FCEC8C7BEA4C69B066DBC83BFAA473D0A632DA2CEDF20B7
+6C7C83B4AE2AF7E05AA2C081BB6870AE38848F3870DD62C7D56EF1CCDD4BA3B0
+32C61ABE629BBC464BBAB06AA0202772C16D82427ABAB4830ACEA267B0109A81
+BA5D832731D1E9C9F0552BEF7A9B7AAA73760C6A09B910009BA9D93F1A56298B
+A43A32D43CAA3988643DE373FF47C176CE92D7931601F0034E6CC303876498AC
+026BB32D2F656A3541815697CBA2B6D527B69816161B2E13171E073D7CD85435
+3D32708391F63D592B71D98805CD19978C2BAF780CB124372EEA0A3DAB537683
+DC74F9E9EF98843F170FB086AEFD526CB81A7CC88046C52E1E56EB40F6F5C75A
+FE9D5ADE49E82078858072F68BCD02487EBAF4E3F7F309628C1FDCD4B01F7D00
+E1AE0A7CD3455953FFC77EEDCC5B5ECB1FA583064EC17132A3C12C0153C4B87D
+AA57FF73AD33C22C81C545F0593DC7EF438FF7A5F76A04E52848E00CF2C8CB06
+F295B1CD3BDB1D9E4EDD765D3753EA8DB76DAACAD75CEAC866FC4CA41501200F
+F12998E8DA573786AA9A7232287A6D19A12536026BA4423EF0B6D81D38BDCD9D
+2BEF15BCF32824F8EE802B461F52BD926A5BEB2E6CB31AF83E98E849D4339FFF
+95419941B12D2F3B76CCD34D6B78B91BDFA5DB4D4879501DF3E514A5EA8F1713
+E96330C5B4F1B7BA42D42F05E229FC303AE00E954A81F9BD43016F5930A0C490
+6C753157E4355F6ED3C5D1963779EB27402522B5E9D459206B3A06E594DF198B
+785F96B96E13045594EB42EF4A8BFE0DFCB4C5A2DA9594431FBE72A5AE18991A
+36FEB5FD9E8B238B3A095939B6ECAF5644BCE7DFFD8EA3E723F66B305F142B71
+B26F34E0538E4B58C4B5984883C6B08F3D1F596B56578FFB0EDFFE3F95E3B6AB
+63CEFA183A5A49F07F0F7559994F56D7305139D06AC8DF9466E715D90AECB1E2
+C35E3CD3F387579B3C9CA6F5BD741A7A5D7B63FC0130AF374124DC8C6AFA4FAC
+E40BD5923FE889E87126FB22C1AC4FFBD351F884D70803BBE1BD0D40D3CDA0DA
+F6984C373D3174358BC41C8DD4A215283ECCBC24F345FE65E316F24940198A6C
+3B5483129706AEB60D6C0CCE0DF9C130593475C72A92662A323EA5B689E5AD0F
+C949536875C37AA2517281A36A1C1D5650AC96E0CC00C03266E279B54232A1E6
+E6697196A4270E1DC794D8DBDF0690372AE19121B85FFD357E965228C66BBE6B
+D2E55533F7A1BF30B2EABBAC98CE35C619556CF9F0A522E8EFE4BE3EC61FDFE4
+E364608963C928AA8B302B1636DE15C83711C8FA060C5BBB1BCB8E02215A4F4D
+560DBC4A235F6F07EFD20ABAFEDE0795AA3932556D6AE3F6EB8FD0C1C509FAA2
+55CCC2703661C9F48233B429F020E01C1F3B8090D331C3B925DD5D1CF9D19F95
+6B192C593225B5186109D3E6636E87BA6F24EFEACD1F06A29DB1D1F4DE0D0253
+87641AA4A1113755D0DDA6EE4234CD9AF550DF63A46FC6F698E623BBF6F05278
+858904B415033C1A33B7770D99247815E2A8F1216EB42EF9742EEB4E1D90EC3E
+F2C0661DFDD996CE1FD66F946B9D4FFADF86861CF8EDCD570CB400D181697747
+83F38B92B1803874C24AF99C66E5F966B0E72B725FFBC6172341596D8AE51C3C
+4676A65E4D32F499FB1ED170554DA7AFD79DE5953988516A8B2B123FA207BC49
+D80645DFB16A79549BD5E41606D80424DBFD6F5BA1DF0EC271C596EBB4FD0B84
+DC5EEC45C3FF598241368442A3FB06B460C7D46678069011FFAA3072402D4DD2
+3DA6139A548FA99A68AC61134087071ED8B4A37A0A8A1A3B48A2A8CCAA351D75
+1828BA7DD5B7758A43F98F4D449ECB58B20B26C40B35AC82623961CD892B5DE3
+777908625E1A91DDE62DEBB2EE5EA3CAD7E089F421DF613D976660D547CCB02B
+3C6B01F009299124A78E46BDFFC3F2497C435678B4DFF0E94094B0DD3B930E62
+909CED0E31BE64C98755D788745581211010BC58153656970B1CBB19204B729F
+7934CBA23B5AFB2C99CA646A8255194986DCABE733CA9702ED213BB1D75D21C6
+C339DFF3C3215747D0D1021CCF99461A0FB2060B3B10143F6AEA79DFFBB1C545
+24ED0BACFDA7BF65C93973BDFD18D18C0C0C9E4CD609FA511EFAFD083BC511BE
+0F2FABAE357EAB56789AE10A82A36559D1E1FA87138615D0EAC11FDD620BF780
+83EA7FEBA5AFCD7D236663F03D1432370FAB9C07A017743427F81BFB9808AD72
+ADADC3E3FF1486D5C7DEBBC6CC7478E6C576B5AFD9DA7B47BFA5BCB5DF78CBBD
+67D06567E86DC5A63EC2A8D3ECC1
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+cleartomark
+{restore}if
+%%EndFont
+%%BeginFont: CMR6
+%!PS-AdobeFont-1.0: CMR6 003.002
+%%Title: CMR6
+%Version: 003.002
+%%CreationDate: Mon Jul 13 16:17:00 2009
+%%Creator: David M. Jones
+%Copyright: Copyright (c) 1997, 2009 American Mathematical Society
+%Copyright: (<http://www.ams.org>), with Reserved Font Name CMR6.
+% This Font Software is licensed under the SIL Open Font License, Version 1.1.
+% This license is in the accompanying file OFL.txt, and is also
+% available with a FAQ at: http://scripts.sil.org/OFL.
+%%EndComments
+FontDirectory/CMR6 known{/CMR6 findfont dup/UniqueID known{dup
+/UniqueID get 5000789 eq exch/FontType get 1 eq and}{pop false}ifelse
+{save true}{false}ifelse}{false}ifelse
+11 dict begin
+/FontType 1 def
+/FontMatrix [0.001 0 0 0.001 0 0 ]readonly def
+/FontName /CMR6 def
+/FontBBox {-20 -250 1193 750 }readonly def
+/PaintType 0 def
+/FontInfo 9 dict dup begin
+/version (003.002) readonly def
+/Notice (Copyright \050c\051 1997, 2009 American Mathematical Society \050<http://www.ams.org>\051, with Reserved Font Name CMR6.) readonly def
+/FullName (CMR6) readonly def
+/FamilyName (Computer Modern) readonly def
+/Weight (Medium) readonly def
+/ItalicAngle 0 def
+/isFixedPitch false def
+/UnderlinePosition -100 def
+/UnderlineThickness 50 def
+end readonly def
+/Encoding 256 array
+0 1 255 {1 index exch /.notdef put} for
+dup 44 /comma put
+dup 45 /hyphen put
+dup 46 /period put
+dup 48 /zero put
+dup 49 /one put
+dup 50 /two put
+dup 51 /three put
+dup 52 /four put
+dup 54 /six put
+dup 55 /seven put
+dup 56 /eight put
+dup 57 /nine put
+dup 65 /A put
+dup 67 /C put
+dup 69 /E put
+dup 70 /F put
+dup 73 /I put
+dup 80 /P put
+dup 83 /S put
+dup 84 /T put
+dup 85 /U put
+dup 88 /X put
+dup 97 /a put
+dup 98 /b put
+dup 99 /c put
+dup 100 /d put
+dup 101 /e put
+dup 102 /f put
+dup 103 /g put
+dup 104 /h put
+dup 105 /i put
+dup 107 /k put
+dup 108 /l put
+dup 109 /m put
+dup 110 /n put
+dup 111 /o put
+dup 112 /p put
+dup 114 /r put
+dup 115 /s put
+dup 116 /t put
+dup 117 /u put
+dup 118 /v put
+dup 119 /w put
+dup 121 /y put
+readonly def
+currentdict end
+currentfile eexec
+D9D66F633B846AB284BCF8B0411B772DE5CE3DD325E55798292D7BD972BD75FA
+0E079529AF9C82DF72F64195C9C210DCE34528F540DA1FFD7BEBB9B40787BA93
+51BBFB7CFC5F9152D1E5BB0AD8D016C6CFA4EB41B3C51D091C2D5440E67CFD71
+7C56816B03B901BF4A25A07175380E50A213F877C44778B3C5AADBCC86D6E551
+E6AF364B0BFCAAD22D8D558C5C81A7D425A1629DD5182206742D1D082A12F078
+0FD4F5F6D3129FCFFF1F4A912B0A7DEC8D33A57B5AE0328EF9D57ADDAC543273
+C01924195A181D03F5054A93B71E5065F8D92FE23794D2DAE339BA29C1C6F656
+1DEF13780383DAE38A868377CC7D396B2A05F341AEE0F8BD0A0191F51AD11A4D
+2E927B848A1EF2BA15CFBE57A51E3AF07598275195C9613041F71C1AF39E61F9
+EFD5F6512FBDA76E29DE6B508F62F5CF9F73F5288DF1C7B0B82C92D3B6358BAD
+EC3CA20BDE55DAA7CC58004AA86B6CBF8C410D8287E88BF20588A39309C2B703
+CED322F030AA6069869064486CA651DA054FF3F5E56534CA358B0829A6B954D8
+9103436E6B06DAD1658BD4A95AB41343B01F5866FC87C4EDFC71F1477C98F8E1
+1DCF27EF743FF90BF918AB8C4E5AC35841E2F745480E5EDE1C1DEAFAD8D0018D
+2C1F1CFCAD9F6609859DEDFD1648A6CD23D8ABB80747F94899F17C8F3E6CA55A
+E176F19CDFDAA0D7C920B3A72051A4745560AC81978C92459EEE5AFE85AB247A
+32981139CBE352B248F4BE5F73503A084A3E91F05328EE521D9669E44E202584
+5407E7846F9FEE3D54EA18FFB144BF2D6803BF65AE402034B3CDBB40DD24217A
+3CE0E95E2717CACD603A958187C42B3558AA38D6B6390EEEDD396F96E6041FCF
+6F8888221AFA87EAD79F46E0E32CAED91E6C8500879AB6E580C581E8C8CE9B68
+2BB5EFE2604E8DCB2432D39D75EE556969F1B2FBDF6A4BC72D106AA7CF22C268
+464027898B311613E06E1584707F262F71D9F49D2149306A88E02BC60BBD6BDB
+EF41D90F19197BA9AEF32B5E63D5B9FF41B5602F9F786E76621DA54D574981AB
+87A72081EA05D6C6BA940EFEBD0904EA4E77BBCE17E20B42E1722617E0F6EF32
+F1ACDE9D758594E9C81049CCC10605A27C2A06872FBA9F159CB155609B496ADA
+4886F478E44029B5E620DE8319E257697E93E1CDFD27D560E2E4D34507020E2C
+D9FF06BFA14E056D81DF701FAC3ACE4BE6C098AE116E079F0044391EC1661F6E
+7A93B9320BD7F91E8FD2E8EB3F5CAE997D5CDD35107A1D35302260D1499B8B65
+39625B7925F97D917B66BAFEEA992873F07220714F192839948CEA080BDB9A03
+77B9DD032273DDB5629CB28B5D8797EDEFDBC601823E038384C90C79012A7D96
+8F27784DA15BACE21501C26E3AFA5DCCE81B52B0ABAF71A35D33103EA86F2415
+A39A830D559C5C6CA7423945BD3DFA942B20A06D7A8D8671F9831DBB52907AB4
+4E54776D29C6085CD9970B6DD21DD3EA8EB09C49CBEC6CDCEEB0BBB1B8827109
+3BDE64DDA024D67F098D6C1998506DDFF7907ABAADA1C39C759C850E0C6F8E89
+A392D1C9329ACFFA92D361218D75E115F70A47C53B73B356D703E9C499AAD098
+AA9C8119EE9E9708A9EA3049E976FA19AD04210D5F6092C7903FD155113F3A3F
+269B746560F70970AC9F8D09956E0E84DACE4112C4E7C7F6B3F0B63D26EFF95E
+2B2E9699D16BC8AFC4AD9113AA3A974C9E82E877288CF71E9169D2DCC61AAAA6
+C536E5604EF0716F6487292BBB677518504B52C63822BED3BD5FD14EB41EE6A8
+AD4B6CF90D39F98E12A765B645CBA3E8552FB9A986390212CE119E7C3DD675AC
+17BD006144BEC534DA2A860188619F17589008409C5A309CB83FBA70F6446B6E
+2B56991B6A03B1DE10C621591CEE45BECA27C54BC8B4F1754A9E8F660812710E
+117850E1BB6FD89BB13F8CE391C43DA89EA67E9C3E7A4697790EA26B0E4E2E80
+DCA508873A7AFFC11B8C02EF86C2316E8D8B6BCEA37F81A3A87546705F070C3B
+9D4D28C366CEBC1EE485B8E2357DBE46E86C87B9939DADA60888AA9F1B92FECC
+CC1C198DDB594BB70A8FE690ECAC21A414BAC89BF019F34D2A130F485EAE35B7
+2A10C67EA3A48A4D9734759CC93AD85C6A570500AE5AC9973FC76EFA06BF5DDC
+26E20E28D16B50957EE01AF2653F8D860817967AA5A9BF9BF7ABCDA710E9F34F
+4F0EBCC32B3C9C2971F6225D2DAA6A451366B83F32B2ACB83E746D365B2DE38D
+C1AB7447FE7B37F9630E410E5D8F0ECE74DF46C538947B3A167AD9F3E4A7EB3D
+60F5425AE75AC3A27D39311DA35696C3DC7282AF1532E7AECE63D13DDA0296A2
+01487185FDF1875AEF55A36C17D6A8DD329279D229259463A2F05CB7A874374B
+E2320E1F6CFECB9C1CE62FF468C29751ACD9754AF1EABE8E7696C2888914416E
+235B6766F20FFBEFF285277B639A51EA2F2E30D207BC891B00F0436008F980E0
+9EEE7FB375BB069B9E0BA11DA951A99D8E60B4F920A0495C247FA7DE904765AB
+DB5C3B2D634757E43EDD6FAA4DB3C67F82D6853E1170F0B2D8CE496DD4E72B0D
+28277BEF172F1402959F64527F9B640619F04416DDB9D05FB2ACD019CB9C119E
+E544D24EA6DAC5C69785394EA50E6EC9AAA9E14B904EAF29A733C6D7942B63F4
+85729686742F26DEF78DF0DA1CA7CEFBB684F4CAD99021A3B3D1FE03B9C5A4B1
+BD04CAC89BB91B11952A2B17A61789BEE0C54B46C03FE9A1AE73D17CF94BA30A
+237C29D414C3BCE8E3E2DDF83C0BD59DCB66C4D2C3DE73DA8378F3C6C8035D28
+7464399857E57651A53E9C4AA68DFCA91B2376CF98AC5290FDB9BDAD9EF1604E
+9B0A70EDDA1E564B6D2456E7BC722454ACA8C4950FDD44B6EB9AD01169A9F845
+B06A0DDB7897C847A5B1F42258AECF3807AE936C8F52C3A7A0A85D68160AE442
+FE81543DA6702D76AB6E8701F80DFC1D87C961E350D0E52AB2A298B9E5908600
+7E14D2A87309043CBF13F69AEAAB1BC239DEA88EB5176624F6046664B1D2691F
+FBB2071D3706F97DCCA355A6DCC4D09FD35DC078FBAAF672FFDECEC61050A120
+10B5A96629041303FD01ACCC7686165DED6AA712FF8E5E85DE33C4E7D877C49C
+6C469A90410BAF60BE65ECD91CDC2EE7AC0CA8BA7B53865F26092BFCAA0BCA77
+B80DC51DAD09C93C8DD8E43502B4B68F3D5918C3492196292447732BA90F5AB4
+9F5E1D634ADE1CCAAD028DE5EBA9535F6FC5908DBD2D643E0A7E059C8C386FDC
+E72659C0033F535C0D7F6B98D0335552D0BF3C6E302B672A5EAADFCEF81912E3
+8F54E6FB7EC2B325125159713D0AC50DEE3673B9B148643727E94C80971A2E73
+5E1E13237BE69C84FC039DCE02ECE2668AFD047F21A61BB94A9F498C9FE5CDEA
+B274B40728B6F6CA9B6C15BAAF92F465B0D7311B46545CBA90D874839443CCB9
+3110F052EB247B24B45A3D2FA6FBC7EB2A4BEC2A5892914B3C5EA3F4F9B9DCBF
+6F932D95700E045B49E4B1F2C9D2A42CF39CA2F5A2654E6E8E6E92473D28AACD
+5E35C6705EA728F704F5996D286BED433F976AB7E018621A577AED7C0AC0A84E
+A032FE1869F603E6F20386E3A190A30A21EA886249ECF8CDDE2C33D73BA8647A
+3DCA7A8DD9E8EC8D9A415D126BA38B6771C489DFC419303EE9C1B83FBFB3A0B8
+97D64F30E4BCBEC24DF603FF3BF541E00D5804B6B6543D3D2B661CC551D497A9
+9DFFF535AF424B2F3150BB39AAE8CDB306AAD37767BA10BADB031DC2FAB16955
+EE78342CCC0E8B5976BF98F215461A8C6F63EBE6E2F1A1104662DDE53388CB51
+8B44F3534853B8095F3B746A2459C2EF800FB1EF7F235EBAA9731E3AB3BE4369
+1D3636E3ADD5BDF0C34FA80E90D8A1DDE770943FD196E0A7C5F1FAF6970B34C6
+4673AACA6B2B5C12B9608521AE736C1F4B97209B063D991300ED5AF3D7F27E76
+68E0B858FD8BFF86581E2B9548C691E3E5D9EC4D39C9715CDE86C7D22223CCEB
+8A38C776A30AF14912390A7546DBECECD7A687D4F08646E57A12C80DCA022B7A
+33399761A50B8E0ABEFA1163EDEC3DFB5DA3248792EEEDD894872D4E6814B4C3
+548BAFCDE0CABBCDB97EC6D1BA47F2E77CC1389BF19D73661749AC33F46A618E
+A665A85776545BF9662F2179D7BFD604FA8EF4700591AF3AEC647E27B24B76F3
+133F9198DC15C1AED830E737909E43EB91C334C44BA35810007A3888E33F5DA5
+B3B2C35481C648AFE630CC3E08F77744E401B2934E407D1EC17ECE737606B076
+F8DE8EF3344F57495EF49D11580D6FB28AE0B1422521B320843B13467501CAE2
+3DB93D7BB779F73B6AA30050DA74BDBC3F8DBB30F32EAFD07734A151BB2BAED5
+C9B1F790059339B64BB4146470F30928C9A49AE88906BD6FDB7431A4B50809CE
+0F67ABA01CDCC2320B0B097187B9299E3D80CDD7BB5DD5BFA7B28D924C5633C5
+45A23CCEE097C41C3759C1FA8DBA0DD95034BCA89BD23FAC18C70093F40FF2F8
+0FAC5DD4835F2DFD40540E9A9E9FD951A8AF2CB766597DE00147B163BACFB7E6
+EFDA4DED594F1C746D8B46A1145E0E4058F5917B3F21E9BEBDE745EE72CDCA64
+FB31EF7A2E55265F32559480E2B6726D3DE26FFC97EB4E3160F117E890C4B2E5
+8DF310E6A728ABA85540F571C024F8DD58E1D7827FE97CED5EB31547EBC36415
+02B8C0E10B7E37D816F01D56A364B8552CBFAAA95BC4BDDCFDE91CE0EF005B4B
+7AB56FFB47A093AEDF0DE1EA48FC8103CA3CA1470864D2693E360006D05668A8
+AA422CCCED20DCEEBEA5CE0DA1EFB00FB93E922B18124FA11A88D0F6E0F719DA
+57603DD5DA42E1C56C2FD9E5415AA199D4F334C151C1157E75C107FBBFCEB706
+5F4EA47A29B54ED8CAEB8DDA2F53D2A703B95487619780A52DA1270011648A28
+AA64338E04AA5B92C1EDF3D8DA34FA6D227A0325EA6F22E9B38B6338C657BB21
+CD4C582DC04010330F62923F817E4EDC6E5C0E6500F2A975A8A95BAA30C4A134
+BB31B5AC45A2E7F6E9CDFC810D41344C4F606049445F8E93D74271C1E29DF7CB
+5459593BA28AECF64D903D3E4D77CF5C04B06DE44A41EE4D9FC769854503AC85
+69E4A5106E84016DE3D59865D4AB30BD6C9E45C45DCB5408421CC50CD6179C85
+34E55CC70FBD8FEFE9F1D5160664981716E3BC7F24B6F54E0323D9BC4B692971
+24419EE62D8B0BA726E2B4294A9A76F328B8101DA29E78BD5C4AC383350FE196
+4D42DB1653637D19530124858950C22F1E9CF5BC07D46B7A58CDE19CC88DCD2E
+7FE4EEFD8AA6047E919823C8CAB2EF5274F45E861E6508CC11A8AA90AED2403A
+B2BF1315C2157B3B50A3685205D93E40906EEE9DE5985405974BCE0B84BB37DB
+080A45C5237B269B93C0A7CF294A18B45464A41F604C494CBEF829A381155CFD
+71CEEA54CC39EEDB6DF58A9896246B09F95DC6BC40BA6916AAB5ED3D24F66154
+3662F8978FC63DA9280FF7ADB09EA5BA79D3B66E0C88BEC1EDD78DA93839073A
+A4D7B0E627000C4ABA76C47CCFEE92E319315333A5584A951E34C55412049C4A
+A5569FE65A006F77B416E0530AB6A8E7AD6C72340AD4CE25937158FABB2153EA
+281E1D840206F5DA38E00815E9081F81DAB9FAA8F4DAB305867AC84735DB4F52
+A36129929BD2084A8EA37BB6889695204BF7290B68D5E722540BF8A276F8BB6D
+451D582EE59D2FF03F6B97DDE05FA00C3D375D2D0AAC8FE298F85CC067B15481
+48D70B6A0354C705715B891915FE8EA45244677B9FCE81E72D66177E309F3F83
+F744B9EA9E55C3B30DEC6E5E03B3988FD526A82A5E8E1DC79127FC62B2FA7949
+B3AD3148868DE22BD4B5708E32CEAAE6ADEED1F463EAB9692411E18F8D6BF391
+126B2700B4CF3B59D02E3F8795130C96285A63FCD1E0F647ACB1D35E9C58BD01
+1DD06BABA00CA4343BEBEDBE677E053E9732B33A7495DF51782A07DA07F5646C
+770C957AD915CC70BA8E08BE7A1F4E6BA5BB9C603E38F6FB0A2578471C4D02F4
+283069856D926B9076EC73AA39CEB0A061AFF1575C7093FDAC9F89C3DC06EA45
+06F3C2A3BC9FF21128B10CB758DF0F099B459A5264A8C24C098110D2BA1A8532
+8FAE146A91BA7D033F591AB1A94B8A6FE0FFB610F698D216D58B4EF6C87B1524
+8037CBB7E23D8550A620341C6625A1A2ECE7CEE2598D66277F857231A36155E3
+984F147783E9B93975AC38A29F2FBCF704C8A04AD84C3E04A12D2321FA56811A
+5B6744813CCC187968C5C26BB8D3E6615A912FA5369C01CCF8C0DB790593B190
+1A90CFB5339B8771F325C5FC448D36C7312B11A15A8635BAB59CF3CAD176131E
+026F6E141B2619EF7F3048750CC9291397F141591EEC8B612D6656DD34DB54D6
+DBDD303CED74BE76664E7DC86FCFEEF2001C9DBA56418FB61F589566A47AF36E
+C94671C5E8939AF9F4D53C0DE7142B7B63C86AAFA65877EBBB48C64589AFB2CB
+1280AC099FC48058855CBDEB6C2D2A0D092267996591DC3B5EC8252984E9B27D
+2E9EDE8CD8303F0905DBFCAE497DE1B755B924452CDE11CF4F20893DD6FF7251
+427F520FE00580DAF1703FD968E0F8ECCDE618E1EA5820EE6CFED97C78864EF6
+26FAFEEE194A268F24249D44829AA360D731C34DC285501E966A959180718F72
+6330E4CC060588A2F65AE64A720DCAA818D49D4440F5D0B6C1F6C3A107E12445
+F1BED2D3FCBB87A9597F01C7332AA79143564056219BF87D4B907A04F77621AD
+054935E883B2B137D3D1C4BC792E8335CA08B6D83227F35736C41312A0BB077A
+60FC6488C5E02FD51A10AC113D4EF70038C649C1677B2204A77F2ECBE9B3C341
+F4126BECBCA61E3F3801F9188A3775924A62D30FB096B440286FA655EBA00A74
+9A4162904BEA07CE68EE76018346DEEE20839C9A2FF71179B58E1D4AB30856B5
+F5D97295A097174467010B15D733AAC5813CAA633746B430B1AAF9F997FDAAFD
+436844D1A56B8E25A89D2CC4BA6EE7ABD167818FD4F6C747E07B262C99EE2C35
+323F0B471586CA50F54C6381B052B15B0C58C19DEA82C0CA29F00400B727419B
+2379979CDCBFA966AD513FA903160C571C3BF1BA239540B11EF2371A3880837C
+6D6CA2F374280CFA1586427AE975A2AEC34244874E4D441DBAC6CD1828841C91
+069AA87FAE849C5DC7C9EC1B9876E59F3CCDF8BB23D939F5348D7486934BFB02
+CC5A22541ED352616830A510DE7732E5D8F7E785BBD31C2BC9D348CE5632654D
+2C1740F89D57FB2AA1FD8FA3304EA03F757BB8F498ED98E48485722E78D97B12
+A05F3A28438084D1CF90AC4C3FFCD7B3365941C45E1E02CB13CA1E99F7FA1D00
+1C9D489D5C95F019AB4CE89FA3B6604473DBD2CE8E278969E0A0FCBCE68C23F6
+9381882443D3FC16966555FC222F3FC4B1207522201AB7A15A7A6F22CDC9D392
+360BF4C95DAD35770E0AC7E5EFF015F2C74ED7391F40EC94B8D1C163B5DEE5B3
+911A20C2625AD3B24BD94D2A42405E655DA47D3F94F882CA2F479437B4E0BE71
+8AFA4482C6FB270F8D05B4599A01403DAAA90C01DF3AA7C2BC7E66AB6AA833AD
+FB6E5EE13E45CC7CE7E200FBFE639F9CFFF5D08512C02764997FD28368969BFB
+0876F236EF6189BE73AD827332DF1B2EADEAC0ED3B939CE5BC3CEC78975FC636
+44FCBC2CCF4396AC7343EC62E0E4F3DFFA2B880BF31D93ADFE201BE9CCEC8BA5
+0B9B919E05B851E0909968DA259EECC6AA0743F25247978CC09C28C4F878E29A
+5070E4023BCE95FE0ACCCC01D0EE219FA8344E8F6D7D4347563BF8AC030B9097
+41F24D4BC9494915A82EE9FD37FBB6A46BF077B728FB569B1258CEA5F51F36BE
+4F4D0F890D782E44748CA3FE8C8A515998371D9C7D2311F192B4B7E7C68FC6EE
+3F7136714C282A2570FE591F247A08319CE9EF1E43274E4E57166E31A2ECA506
+85350DA31AA4C33C9687F5210BA225EA1007C444FBFA2126769767E47A967884
+9F6DB7BDD4779EACE0894C524D7AB9AC6980C15451EBF292BDEA0993C7BBC27D
+088D0D3AEA95712FAAFDF0A13E39D3C84E61BCB7FEEE9AFB5FFCA9691A1D2B91
+CCFF1BED30BDEAC89D240F662BB23D7784962160D2D51116183DDFFFC28F1555
+02F957B20E26619874CEBE43D125F6E86386584056D02CC030BE48814FFA0AA4
+1F08AE0D5B320690DD2DDCC634D3D634D7CC06195116DFE7AC821F546EEFFE49
+8C6353DBB65EDA98ED92729AD8261FE1A662DE75C772FB11323AD065201A7943
+854262EB5F60AD32CE002FE7F15CBA8F8D641E848C50C59C9FC0E6CEEBF7774F
+B05107D8EE462228AA212D54BDA112352814FB6FAB913472DAB4547A50C2C1E5
+D7ABD94719F604EA68B1108EBB5BEBC3EF465BDD27C423B7A166A0435C6B8CEF
+3FC33121CAB7A1FA7A9E9088EDA3A1565DAD1C08E402BD6CF4EC99EC3CF3CBC8
+4FFBA306FC5E40690E464D46673BC84C902C0F96D40A6FB43CCF1D69F55D5667
+9ACE76B76E7746BF40F6B99E51650B25F3C0987FDE2186F38CBD6E817B18F36A
+F88D70E2BFD27B49565964995100CD4D10E7B2589F75C1E368AAE17AD3F564A6
+570AEB932973CF2E668CFEB3E5546E78ECFED082B48DF81342AAC98171F10526
+377C411AB8CDC428DE16472157ADDE421D5F5158344C0F4CBC2A53794D664BDD
+6D713A8D8C2120BEA9927D9A7846B4078B48C60E9793F573DB48600976BCCC41
+2D6226FE6CBA3B7D5B961571635C06FEC055A0396A0D4D9608BBA19EA8F3CFF4
+983B50C58AE51BBFF6166506FBE8D2AF170A11117DF6383CB01D326BEE157855
+51B076A423CD9CD7762E94D6B262628911CF9FF12FE399072916D515CA846D96
+0C388684A6242ED733E35C90510B2EF005F91A5EF4A70CEA157E142B8512D732
+CE5EBA419F57ED63C5353C29B78B2A86B988108F18DB3ECC698AA61599ADAC80
+F1B0340372C68FEF8805D5AF61A0B4EAB875EA8594DE7A226E9862E8216E02EA
+924EB6B52B0132E812D004F2563FED8D4A943445AD684C85062F2A2FDB90AA2B
+0614F151FB576660E03DB2035CDF9A93B5D15F45184C5B08FC0364E654C719A2
+B56B797A958C11F20C8D242408DC17EAFA9422F551510E7027680D97649B5318
+270A9FEA8AF187BEB255A2BAF8E3837A29183449E51CD1476309F1588EC0315C
+C96AC195F7CE9321E3B4993F53622857AB01B90A5F187996C4123ED93D8A8A99
+1A5771C9D065A290D33A566DD291E32C1E7BB743FB7395779088C6F2660C6339
+6FBD0C41E9D242C5F539E0A95CE86FC30D6832CD988D04A19ECEA792CAC34CF0
+75F70A8BB95BF5E6E0B008A030DCA0C0CD5B67DC6CCC4CA7489F05E570B9AD9A
+C41BCBD0AD2D918549401E1116FDF52BEAA4CB2FDAD00DA4E680C7A7B1AFF3A2
+56C9CD4910F9458455FA76BD4AFA36ECD72E4964109FAD2380CFF90FA3093AF0
+CE9FF95AC14B876BA7C11737C29D1A036CF1DF3E379D5154B735E4C590363D61
+DF0F3EFD82C7091D11AEEECCE7A4B9516FE0EF14A5C52A7D25FCEA468F8E5B97
+417B2B1A63B8C37431BD44E1275E6F10001A6961BC58BD3EAFBFFFC4BE762EB7
+0D08993F467635525EDB4CB370CAB1EA6FFA4ED06865125CFD91E252BC1AFEB6
+F08F4209C47C53E7E6E34C2E6DD1A817D80FD0FB09B205A8A4F2A0925456793D
+4D45EDBF33BD59230771C996F0100BA443A9E5B0674C84E00E9248D24D3A38E3
+7162E526D0CD584A210F7FA8D5787E921E768DEBE4B81CD25A568445DF873704
+DF655659ECD45DF226F437BDD023A03C1ACC376DBB9DFBEC179B307096B1692F
+0AF4B98D3085C78CB654F170AEC422ED469FFB5256DFAB4E95C6880B284CB277
+571FE9C20EA05967F507688EED0888A6E9943234794841B860D592506406B0C2
+1B064E7C5050114160731D6E858000597B05784A44B9D4A2B11E320439509668
+8849B0FB4393E215A44A0EF96D528454396B767CAE00F9D1EF1CC2F0016953A2
+15132AE48A3DAE7726D1107ADA916DFEDFCD9C2CEA3A18AC98528DBEC65FC153
+5EC4F4A178D0C92402B79444A51AD72D83793A6958AEE7E7103BC76D726F0CD6
+59CDE36366FD6501AD0088F5A0103B06B949242AE919ED9E422B07F0313DE97E
+E59C6F04BE2AF9BD1855E0B2DF0F2D12C51F090388BF9A8D39727B62656C4713
+D3CCA1EFD05A0E6481CEE2D2EAAD0C15C90084A79E00E9CB3344A2811369CB37
+0F10481BE1F5246B3BC28E4AC7C101626F0F755E5422B5370297A324ED6641F2
+9D2F2E03CBA32CF6C3855E61C2E2BAF192A428EBA6AA858A62BAE5C2650D4AD1
+366F1C163A2D644ACFDBF5E60DA28586B9C8F2CF08517613C8258DF44140898C
+CE42C61589E42728AF65511D64FD6D4C0CA82AAFF09B6C09494C5E573EA816B7
+9BDAFF1E09815C3A835DC039EFA763D648A69138411A913E0D8E456FA0F0C2EF
+6DA7894C3AB8DC8B3EB7C9A64235CAF980F0E148FA2BD7D1C826EB32307A623C
+4C4AE0085AD29C274D690618753482DCDC3CAA73F46262CB2CBE19479FD37D80
+BADE9AAFD52D3F1A6B1385D4EF1D84DEFBBB61EFBFE1B0962EAD693871C4CF25
+30570F3D04582EC91A0A32DA55406215E740950DF78F8F2A7B90E763451E8D75
+5615281133F9574566E6C34A7FEB7DA21AB78B75201253600D30D03AB4C45F61
+AA74FCDC1BB2ED9FF5D687A649FA97FC3EE56CD87756A4AB158626F5FA02B776
+5D00B58FC4EB44DCBC3F781CA1F45B06D9C9523783EDC33E584D2286A7F0BC13
+FE646358F31A14CCE0ACBACF30000D0BC98BBF836DB8FCF05715437FE59D0F4B
+D921C91DF02465C17674F7490126DA69E43A1A49D04D49FA2ADC807752F7A32D
+31E6E7E78E04807C531AC57CBAB05E3A40C6731FBB7F66BB5D9C3788B093CB64
+555F906252167DD5D9F95AB101CA5946A3376549E1313286944B8419E1DD0F70
+9C9989C5D865EAD3AFF74D363713AE88B1128FF63E52C8B351F2D05F6A259918
+8BBB035EDF22C12D9BC0CE758BB3F5B688362F961E1BE4D0E99C113CDBFEAE1B
+117970D6E3C786E71C9AF2141A5E5458F3383A67C716C939A1381E2CF3390824
+336004EFD09B33A833D57A183F1CB609C45509C8961DCE021E66EF367C861FD5
+EADA99E275D1967D1C0287C151D1B275A46A575A90AC8CE758508ED552D9E17E
+F288DF93A5455A2D87423546D458081724FEF81FF5BA13C5E14F62F58484BC3E
+67F5C32E8DFB56248A22F946587BC4E94CB36827B44C8C63F6C56D3BDCE6CDF8
+326C17D9B528FB39483186F54EADA3550D2D61EA04F0E10ADAFC496746FDF4E0
+F8967630D03E48BB667F7014A52ECE0C8A52BDAFF0597193E9A8875D54523190
+0CDECFA9A0C7CAB7BF04D218CC4568152898A511B22D4ECBA664AA6F284E3CAC
+EDA2D4AB85B5B79B7DA9542AC5263DC1D2B8B4E9315509A7DDC4D4C00E47EB04
+D74F1607712887953ECABFC50078250A2B6CB5C73050829D9F4C5B64092FA156
+4C290E9095ADD9B4AC45C58B474A66D6A2ACF80FACB60DAD05C25B31CDB8CE45
+A021F03746DCED5DF4663D86185ADF79DD1C53BA8FEF5DA458FD48EF1B3A6589
+AC96C4E95EA1E918D8D7F54FADDCE1DB4271F8177C256BDBF63671587D88AA1C
+0B86F56D263E149EC1073E0886B983857761DBABE3D5F3BFE644CDCFE5DE3C21
+E58EC804349358EF1307F4B0157AF0556C6D3A8BE8A15361AD0A3BA7775ECFC1
+5104E3FAB4CAE74F80FEBAFE5C351E35474C1D81EF95EF4AA240FDFDABC8042A
+407E26A07EAA92BB40590110611275262D9D10AB3A0F4F43419833CA6A812027
+7794039E7E1AABE20F8293A2CB20521882D86F2CF7E4A16CEE2992D9A0F3FCDD
+B6D458B4DF84D0D60908AC488088662AF978A61D212826AA501698EE9AA5F74F
+801E7E0740569FC94F84BDA2E73A2AE0296D78FBF2175B6A744001BDCA28619F
+340DBEC2CEFD1C9F3794F22EE373CB789BB09426778C3D7509BB3FE120BC4635
+FC0ABF9150A00A7E1F3515DAEAA5800F32C36FCA1275B7A7C62D7234351C76D0
+7A65B631C4B14EEADF92756665F8A66DF4A56798E83712FE078E1738433884A3
+96FC0E677AB632CFD49821DA8CDCE9EE3BF6C8F4CEF44942962B9E5259285CA4
+DF5CEB11EA1AB3DA265C47DD6FF441481698DC2E986A7413488DE87E0BEECFB8
+D5583EE95844364ECF8941E09946BA4F63044DC8D58CC3DF5CC4C73297637FA7
+16F19CB402D7E7B1A0A48BD20D638F5D0F889C3D5CDD82F3884D1EE0FEB9B398
+CCBE8077B8DE8266F62FABF66A6BDF232CE873877608DC89B5F068FABE22E6B4
+61671473D75DA4F3E607C35433FAEB6CB968F6FC11EBB17CDDDC882B291A12AD
+CC61AE36AF83DBB0C1F1BA151ECCC88087960F1C59D42F3C6B4D817E62EFB7D1
+5ADD8433EEABEE906071F9F2B688DF631FECF611ED8FEC5B531249689508D2D0
+B6F1D3286DFFAA59D490BD6B1BFE49F43489DC01847848EE0DD8030FC24C2D64
+9DD24DBD43768EBF5349E1EE6E81FE30B4DB6F608DA916C8715E3BE23CAE09EB
+805C69ACE6B5AB45E339353E05678D84490B0D404DC48D30CA62C1E67A134B2B
+268F83424CC6E4714FF832EC45B277B798EA56D54A3A807C25635E6BEABEB88E
+33A50DFF0B13AB26EAE6672E590842BEEB86F787AFD09364E46F2C51EE64EC30
+78B9C6F43938F529C1CDA5BDD2D84564AC49F10A9C00704CF57AFE844F3152FF
+B7EC7A4E67258BF5A0471636137754416ECB3D1603943D0CCCA840E95CB0D8E7
+C496374034BB13A16DD0175AD601E53245D4A9D0104FDEAABAB5B8A4875C039A
+12EFF7480C7838FC95A90D2FB2CF8B0927ACBA3C98441EEFF06702AD0A4F1127
+53161E95183057399D9469A253A32F1147BCC5F4098DF464FE19479AF29C1B2A
+BA3E128614349313646959AD479986B6F47C6AE05F033F6465AE374A45CCFADE
+1BAAFDC5132F3444F46BCFCEE6D089F78E030A5E61F541AE031FE54E4F411FF2
+22596C2D476624BC8F665767510AADA4364C05DB8E11BC6F13AA0DABD60A6DE0
+2C0D94119ACED4500C5CEF58EBE88A0461D3136125871D3EF84DCB30EF306534
+D78A4BD94C2616FD290CB4E4DF7402C7551F608D4A42D1A6533D449615C75C52
+B2E3E2687D513BA5E95C995778ED5B4B4D95B41B06A5DAA78C2F3BBC0E693356
+3B75EE2F33972DC88A9357F95B2C59EB16440916835436C0754ACD1F4C4B5190
+9168FE4C88B299339A1DA33A670BA19652F63FB6D5F3421A5E3E125979B59FE7
+C2A7CF9CD9FDCBD58CC8FDCCB9B06B7D937D9F4CDE54CD4013204E6203B8537D
+FDC0850DAD89EFEA7AFAA7BAFC41B4A366350F40C5FA82678B8522637A9C31F8
+0679AD985B17A0CF7DCD2A42BF9EE101CEDAE20316A258B296D6B8CDF2E3BDF8
+65139C2EAFEA4F071F4901D28469D54F9AE4FEDD70545B6916E2EF2F087DFD20
+E4992335FE461FFA9E663564A2934E3910C92A6D22087916CCE5C7A3070B5BA4
+11CEE776D0320CCE809F1AAC643347DA4E89C4CB422F778D283BF651D70235C1
+AC713CBC751D59A6C08E7D85827BB46E949D8F3575AB044624C6D04F41A7D1A1
+98BDD0A274C7C7C282441A6D4CE0416FA96B365CBF77080C751EC82E0A9CDFF0
+AEA30F62E2A400AAC3B387903D15AC665706DF7D774521FEC57AFD7DC584DAE2
+304A3EBB6711328C529BE6B5477E49125A840B6E4BD5FCDFADD6E374DDAC3A98
+96E6E44A78DAA7914F90467FA456CA4B1F539BEEE1A70487EE7E4F6D6851765F
+CD9C72CFA228FE1501D02D6D089CD03130FAD2674C65A510A9C528A198B8EC86
+9445BEE012D3885D8FC464B959BFD1793D8FB428829E0BEFEA0F27753709D787
+6501A243B3592EC3BD66EE8953F733BCD7BD2515E4660210627236C9C47DFD1F
+81D6FAFF23B5617095D03EAE56621E89FDF21F2EB68FF3C505C2FC2DFC9020F1
+4209092015A2BB81673A4F7EE6FEA1A344E2E551EFB96CB70336657F96199C72
+314267CC201B84EAB4105DEA1233AADA5A4622016D9995DD35A65E57FEDAF228
+1E22E72557A4A35F82C74CF8FB3A66CBB5B7837A98D34695B61FDC3DD8080B55
+DBD22254BC9BD790A4493E6E96B71BD9F1389C115774805F6D2D6D6C4826B7AE
+7B91C638FF94BCCC7E195754E29EFAA5DEF1046639AFC96BF82E287F270BB09D
+973804418CD6D3C1866A4EB2D6E1601A65FBB928ECEF02AB14C8DEB1472A2C13
+6EC108FDA88A38DBC6AB0BBD506E58795EB7F324EDA854D4E210DA49D190E739
+4056789B117C4DA5657B28E943B7EA378179A45FF03E53EC24972A5987BF1F16
+AE949DD210E55C107316C46E26EF18606B889319BEB71C8B2A074C5C91884E29
+C246D0D8D381F87B1C1D89BA53A918E349956C48239B9FA71D95D2568BEA7C16
+268B03CA4D01C1BD779213B47D2595A1D69935A2381FED5E4BBABD3156C06D09
+E9A78487CBC5608A1EB703CC863C6B064F37F1AABD26321DAFE3F92A10DB4F8B
+C4CDFD038C77590417133E66675A6F17509C83244D457F6469934ADA143EBA11
+6B8C51404F1FB82AE1375C3F5CAEBF99F75713DBCB1FB52F7AE163F2E55EC173
+7DFBEE5ACD23798BC7A77BEE8BFC4E6FDEA3793D3A2833614A8AF0581AD1AD5D
+65A55BE4A79E121CB19E94468EF1760711E3A92AF92BBD3C95FEA17AB28F3AE3
+98CCFCD3EF88C77D2958B088893B0DB6D8BA6C117E55AFED489112914F1F4B0D
+ACD6355349AFFC5EB3CD7E19172E1F68BFE6C3E5BBAF48CB30D3AC53A954E0CA
+80A8D21A74247B6C0C29A71CD8086473FBB977A9235E3262C80EC542AF7883F1
+FDA279CB3D200DBF174AEE271C0B42089EA721AE900D3FD243C1A5359B46A8F5
+F2201F8C78E4B9A0F49AFFAF271869467AAAB1029DD2B9D28D742F1056BEC599
+B9053C0C5A1737625B760A352A4A86C8D8F7EBAAAAF9805345D2B6462FEA1F54
+19CCF40A4FBB8FF1D7481AB7A67D62CD0F9802D3495E7893C63262DE912DFCFD
+2FE010F1BB2E8C50E2051F28DFC3DCB0FF39FFD3BC68CE057FCEAC5F9ED00C95
+5BC5852E709A7BBE864F04CAE2C07311C175E243CE1F5F859028124BA629B677
+68BA5C517446FFB8C2E3FC750E8AC2E1EE384B0FDBF4C75BA4159ABD3AA1AEE8
+8C13A3BC4FF5E1D546945D45D9DA3A757B590A5BAB25757BBA613E4674BD65C6
+D413B3BAF4D8D942858BFAC50D2B057DEC3B87964265303B5C3475DC64F8830C
+BF7E5D402C0194819E3F1C903C5AA91969134C48B9C864D83FB9F33B99D3503C
+EAA32AB7A68AC7879ED20201D17BBDB2B3E2C3DBFCDAA359524130BC7BC06923
+50BE362135292917153D5D62468C00FD50AEE7FFD43717217CB5C1B02B04D8A5
+E175CE260B803A2F1D39759BA200A13733BA91E304DE6C2CFE55A23044481597
+482D7562B6AAEECC573C3A39FC1E7E4EAF4BBABA4A421D8ABD64EDC264D9EDCA
+DD93C27BCC0A5C587ED09B17FC27A55064963D07A935CBED1A570F57E7B7F8BB
+EE3A231B0DB46E4067E6E3AA1531ADE60455AA9C8978C446EFFE02F7A1B43B6F
+62F0C2811763FA0094195854E02ED6D1960D59BF31D1F00F1DF6A9C76FAD3506
+3B0B8BF47B8DDFD6028A49C6C66A912C36B921781833262A5FB8AD666C7973B1
+9E08D0EF53BE49F9D92C2F909020DC0268D4FBEBD46C6435B1312574AAEC9EBC
+53F594682615D52578A6055647DC342E15D5E37C20A3376B79384E6B2ABF0F0C
+C7822DDAFFD611EBD6125745B8C0460DC2A2ECAC517A4EB3F56993D501CE2820
+714B43DD9E661207FDEFF1952C61044C3A56132694FAFB2A58D9D8CFECFE0D86
+0355084864D43E9CB1B559332C08AA0A3F20B5B3EA2A00B337FCF635E6B4FD71
+00F7919BECFF925B2C582954981DEA8ED7586FF42C49A9FF0AB9804E8249EA84
+C965C1BAE4422D85E42271E81185F5B899D83C531D8B13795F5491AC03E48FD7
+A2C57C4F2638AC78CFE2747AA4F26D563200A7CB87C48DB1BB2E41EF0F573125
+F11C2FD9EBA170F3F628CC9EE2E1FBA1E1913CCAE2324087087DBB0CE1F6ABDC
+2892C41EAE3725E9379503862604D5C1FF5BC941647B87F7A55106F1AA074BA3
+CB0FF8EB6E3DEB7798BF22989276A8669A78CC105DAFB3C4BCBCB5905115744F
+B59F02322A5DFF198089C6FD634E4CCFA6E19383010323B570E94D20248FFB3F
+DF97C5ABDE3841BBDE460996C77F8B7EFF3C516D837E466149CCA84484162015
+C2756DE0D977C39CE49BB407947B161D4342AF55C749ABAA8601DF90C5E60725
+E78C6611FD14FF5371A08B25CE6138E9146B0BAED1A484F8C2FE1581E0F10615
+ECD43802C6CA7495E9649ADA45D02AEB662B2AFF5C26A692EF4D5D3EAAD53C17
+F47B04A7133F2F205A167A0396978B074AB806032DBFA049C8D899865FDD3D99
+3784488B6473D0FE618B8E5683D1A549F80CEE238C3D5F80D283EE6F15D950DB
+63859126B89FF8F35E74B6231CA21946666CE40AB8873D1264F262EB0D0BD807
+4B48362E3B0095515ECC5875EC3D858EFAA3E2540906EAFD48D6B47E01738E64
+6E21CEB2C669D052FFA7AE9912D5BBD646586E865A1051B0323F29332B3F4F46
+39969B1B8F003813510FCDA226E2B0A1C3C5B655E75C069708587F5870762CEB
+15D605E38EF285D0DB2B59C0EF763E3BBE1117AE756DDEBA8EBB596005E766DC
+9B30700CA49556C7DB43E68BF6886ABC06F5A78D502B166202C9122928F3C437
+BB71B4F7A0A888B09451052A625A38A60C6A52D32BE60E356C094513F2465608
+30130F9EA8050ECFAE033364272C56AE3CAAF55B2D25F1DAB64A8F0C883FAA56
+6509284A84B6D7585B3E6964D1B86F396872126314C4E082E5D3117A339F1C51
+A4EA772741A28BEC7BD6FA28D77E76063A57D3AF3BDA513788674FD018295D83
+721CAAACB5AF54C4AC8E7A3478B30C7250F33B28049DC0E092573197CF71F579
+00AC33A7EA31B0C6A21EF433539DFFEA5B12D535F720FB2B172551CCD3592F37
+2AA2FAD480D45A4B397496837756B0C64838F70FAF9E373E7A85B96013C5A6D9
+B6261729D501EBD0F11BD3D0FB5BC2AFD0A4A7C81756162ACA1CFD610FC57454
+79B8BF868548FC1C5FE4820A349D99365779A9B80A79A2F5719EBE3771476876
+011BD931CC7B790DB2A7118BE1CF88F0CD186FEC96FB7203F1DFD899C24F1666
+19B57BC312E7C5803113A2D87E584A51472DD1380E2E1E2F137D2E50297B8829
+A829C1C28C310F15AEA54D612AE9F94729D1C581D3E2E88FAE8F40D60FE1E50B
+3A19EFF63669A11E9206C68007B7F3C6A18DA7ECEA474703EF31D2528576CF52
+50A753D04AB3DFF8528B3AADB5DFCD20C8E321516477D7E86E7902FE0C4C8513
+993DBDA5012DCF95EDE875EACB19A8DF0B4CF03E8B93DE52E67E136354181D8C
+5AA562591C396976CE557BA04E117A1A19DA24383839681A8250E285D5BA04D7
+944310B6650550273242201D45830DBBD30B65CA734E13BEEAFA94AF1E1C4023
+3E634FB131B04E5DF88F20A9FCB329E381B188F753928BBE13EC0AB31A0171C0
+D5A63C944836DB7E44A3D10523B9CD04FC8F88811551630ACB2412758E378BA7
+F48A1A339EE30B0D1CC132B3BFD932D2AC3225B8A6274D5EEB555D2AB4047ED7
+80A1B2E985819C771F86FF1294907FE80D4F4BDA6FF6BDB7705A43DA4915B965
+1B95AAC0CBA1D889B78F3E9530929B47D2E3800A459278A2E8AD50AE142768C9
+56F38B0EA16D49690DC3CE13AECA1533F449E7BC70E870009FF3170D457E9B21
+4576D85ABF2B1FAF0AF08DA2A704DCF887D4932CBA67E8C0DB5923A1EBA8A197
+350C1FBB316CCDD6532322244C81E3EC5474550D4235991186559CE50AD5327C
+03945868AF74B206B71092A163C00B6C629941D6BD151DE1901F274415228EEB
+8F31B64DE445698C6D5802967A65687B44BB0C8ECA65A08AE4DBB23097EE66C0
+86D8AF53914D3A6977B9381975C0627B378DA29644D076E7E4D221E1A022F5CD
+335FF301BF899D55042131F5877FBA627856C8FAF26CCA22A89BBD5297C712CA
+7E762E9912D61BCC62B4958DABEB2A69525626AD2F921009632C59A10EF0FDF6
+65CBEB11B767D3B3C884858047AEACE8591130BBBD40E4C3D873B92D3CF85D80
+3403AD899A7727CF847441990E24905C79F92FD1F6136C813C943A9B9501CAA9
+F811ED18EF77FF96C9EA5EAC9F755546149CCFC099CEF37272F2B87B7BAA4ABA
+D8942A338D94B222D5492BF5EFF46A37153FF194477E6D61337E6B816BB2A55E
+ACBA1E0D34DC8AA0B4B840B3B05AD6DD68DC5DAEB742CCE1EB5FC3CB80145C63
+308D43F54E8E801AED8B2AA8213FDE163D5BFB2B919D04DD1C6F6479FEE1CC8A
+04F711F055883A7660624FA5330AB38C98BDA28B55E7C8076D6E85B959A459BE
+401264A3770AB3FA7D09E39F87A71E586E935E5C33942D4B93B5F974C2A628F4
+BE8AAA47686335A36D29FCC71D982895820AB4C5C89ED84465073801E6BB7E4B
+4BEC9FB74B2755C647D12BAD2549356C0B641F114D0870CA5A6C887934D0C474
+6A9B09A06A31317E0D6D4409AF9DF565DA29D9C9AB6CFEBAE8091DAED9C6D21A
+815CCBB1A45D540C08679700552A83B9E05DB9DD792210F6D64D8C6E533FDEC1
+DE7A0643679FA1115096FE93C3DACE7DC37B5077513BF5351A635B8C1FF01582
+0B692A51051687E235D0E30E73D3D9A5D800725ADD0D71F6C166E83A48C3B33E
+12F23216EFF11F56BF6AFEB60DEC9C2A4919D06698904F052A50EF846BF95D6B
+5A753674388B757B84839FE07044D706AC4803E574337CBB5FE1EFD111682EDE
+4F967DD57149772D818AED7DB5FB2F6B39F3E974ACF23E78269661DCA43FE6F0
+AFAC61A3B834A7E295ED377DBD31F7802D2A2C3F8073F6251363E4FFE02DDC87
+22DCEA613500620AEFA35C0739AFF97189A20B27CFCB34FEB1E59ECC3B7D513F
+EB128C1D62A4F0F7C4F1678A10F64FD3CF32C7DD78F91B3B7D9A0DE97ACE6930
+B2063B728D22B2D03B473C17FAB66F8D574BAA4E8111AD648480F1F07FEB8EC2
+D814AC4BC90E54F399328359A83560318F5705F7AC76E32CAFB7994EE5C6E37C
+E267E006EF6A99CAEADBB840224764C2456C442DB46E7EA721429C93EC714838
+83AEE44AB0A1332F1482548EF688214DB74CCEDBB60A4F6A3A219B810A374D23
+B1E7E9D9AE9AA4652FB514F2712D0E0103F1FB80C01BBF20D49EFA2D4DBE72D6
+F730413B3ED4103706AFA55E61D65A1815E7786CE43D197A345F40E0381AECCE
+5CF59E2AA96E3A2DC1A40497CAFEF1FEE165FC1C6A889C0CCFDEE1D7CCDC7E21
+5109799642D4E3FF77D5595328480C2F7A4767C46AB634A6BF507920763A7202
+6C8527099AFB6F0018381D32F6A3ABE9E7AB9A7A7F3DE7D09C67ADC250B4D5D6
+C58BAE21132669F4975F4A6057997B77E3AF055DF4288323C813BEA5E5029A4A
+2AFE248A5F50B4B3616A18386ADA8EA046A7652CC314A1968B17A842D4348A77
+0E28863ABCA90982570B62CC2576F5856381683539076FA22EA3CE07883E24E4
+4FA6D1AA9A634B540260ECA954C351149C53A1F0C6A99DE97BC4730281D7B58C
+D486163EFD669F08A458DC12C8DB2A331899FD3EDB115E023181171015E5F4F5
+2539C9B1
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+cleartomark
+{restore}if
+%%EndFont
+%%BeginFont: CMSY8
+%!PS-AdobeFont-1.0: CMSY8 003.002
+%%Title: CMSY8
+%Version: 003.002
+%%CreationDate: Mon Jul 13 16:17:00 2009
+%%Creator: David M. Jones
+%Copyright: Copyright (c) 1997, 2009 American Mathematical Society
+%Copyright: (<http://www.ams.org>), with Reserved Font Name CMSY8.
+% This Font Software is licensed under the SIL Open Font License, Version 1.1.
+% This license is in the accompanying file OFL.txt, and is also
+% available with a FAQ at: http://scripts.sil.org/OFL.
+%%EndComments
+FontDirectory/CMSY8 known{/CMSY8 findfont dup/UniqueID known{dup
+/UniqueID get 5096649 eq exch/FontType get 1 eq and}{pop false}ifelse
+{save true}{false}ifelse}{false}ifelse
+11 dict begin
+/FontType 1 def
+/FontMatrix [0.001 0 0 0.001 0 0 ]readonly def
+/FontName /CMSY8 def
+/FontBBox {-30 -955 1185 779 }readonly def
+/PaintType 0 def
+/FontInfo 9 dict dup begin
+/version (003.002) readonly def
+/Notice (Copyright \050c\051 1997, 2009 American Mathematical Society \050<http://www.ams.org>\051, with Reserved Font Name CMSY8.) readonly def
+/FullName (CMSY8) readonly def
+/FamilyName (Computer Modern) readonly def
+/Weight (Medium) readonly def
+/ItalicAngle -14.04 def
+/isFixedPitch false def
+/UnderlinePosition -100 def
+/UnderlineThickness 50 def
+end readonly def
+/Encoding 256 array
+0 1 255 {1 index exch /.notdef put} for
+dup 1 /periodcentered put
+dup 2 /multiply put
+dup 18 /reflexsubset put
+dup 19 /reflexsuperset put
+dup 20 /lessequal put
+dup 21 /greaterequal put
+dup 26 /propersubset put
+dup 27 /propersuperset put
+dup 32 /arrowleft put
+dup 33 /arrowright put
+dup 34 /arrowup put
+dup 35 /arrowdown put
+dup 49 /infinity put
+dup 50 /element put
+dup 54 /negationslash put
+dup 56 /universal put
+dup 57 /existential put
+dup 59 /emptyset put
+dup 91 /union put
+dup 92 /intersection put
+dup 94 /logicaland put
+dup 95 /logicalor put
+dup 104 /angbracketleft put
+dup 105 /angbracketright put
+dup 110 /backslash put
+dup 114 /nabla put
+readonly def
+currentdict end
+currentfile eexec
+D9D66F633B846AB284BCF8B0411B772DE5CD06DFE1BE899059C588357426D7A0
+7B684C079A47D271426064AD18CB9750D8A986D1D67C1B2AEEF8CE785CC19C81
+DE96489F740045C5E342F02DA1C9F9F3C167651E646F1A67CF379789E311EF91
+511D0F605B045B279357D6FC8537C233E7AEE6A4FDBE73E75A39EB206D20A6F6
+1021961B748D419EBEEB028B592124E174CA595C108E12725B9875544955CFFD
+028B698EF742BC8C19F979E35B8E99CADDDDC89CC6C59733F2A24BC3AF36AD86
+1319147A4A219ECB92D0D9F6228B51A97C29547000FCC8A4D80B73E7B6CB7548
+0E1D77FFC695988391DC44AEED8CC947B3D7E198B9620E2238DB3A2819182F03
+14498B8CDFBA48926DA721920B221FB33BC21A8456AF10891403501D0F6415F0
+7E041AFFE109F640E54FC1A365674711EFF94E752652A4C8DA62CDB1149DB899
+2C4A4BD77A06E81E93C5698C05DD02F74A0756082738BDB53003B483752AE498
+DD718AEA8F3FB5A6B7E2D2AE8F309065F3D556F9A34AB90C88833A54295E0982
+209C466A301BA3372AABEE20D862C6DC6B6FAC1463C8CBA8AD766ED1B4C9D712
+2BECB4E6ABF558D8AB5281C35726BB8D046982C0DDAE17BFFC9394125E4E84C0
+B283977D31460B8EED4346CCB09F64DA0ACB640C6DBF32F2DC30D54668C1CC12
+24C7280593088E9958C047125C323E9C842801346A9CE5F50413D69F6DE99471
+65D2E387765E92EA4C43F17B467DF6E266D92551009C0E52E7219AE9F5E2E8D2
+88852086FF3600BFB50AF3EAF8C009D8D5F084B510F792385F328F7EFA8C38AD
+CDAB2EEDFBC6AA45F6DD7364C2F02DD2BE6C79C8361E83D4267CEC2407689864
+B57B5D967FC80AB3BE8CA43955FB0FD3081D438437559AD24A7ADD484C1E4A77
+B00BDCB0D1B121FEE983412E1EA5489BDCE5DCB4A7310135956B230C0DE7BBED
+516369A92BC41FAC8D73490984942D930DC193BF0C774C1AEF627B969EE4B001
+11381AC57815D7581E2372A1DB740B09F4A7FB4318B765DA4E7B44E8805CEF85
+44EC3B10613FE7B397BF91B69A5CB2E9086D1E7A1FAE0A9ABF2A237A2D29ABFF
+E392A18AEACBF28274E775D3FBAED4F46B982B9DA4602E24094EDCCBC9D6FC0F
+67C60376879245606C0B9C9A678E8917516BE1CF097B1C75C9F0DDAD6899F08F
+81FB7A198D45FE060CD2A550D9B8D58B882B969D7BC3EC018A1FE92BDB262835
+26516FF97AC387EA525FF987E5EB1EAAE4EA5866C9CC043D183763C530F7D7A1
+2070E4044507C4E5611FCC117FBE4396E0B24F672CD53D5FDFA56D561FB86D40
+90A52A7C7F29A119DFFB694A8C445367746A49CA5FA83163BE448EB19625DF26
+609A8C8672631A10411036CAA3D6C2F822A4B2505DCBE8E1CE6916AE515E78CE
+E8C894B134BF811671D17C19248853131DFFAEDB24B15FF17EAC194662460642
+48D23515AD434C68DF56753806FE96DB3A29F9D4980E0B6EAED7383F9FAD2584
+8F85679D6D1933677ADF5D31FE6E43DABF137E834A1DEA632D36EA5728625159
+8F33348893C9D1C510501628E4A9A80587DF6E179FAF68B158406A3EBCD726E2
+AC17F2DF8B3607072824D2E5A6479F7BADE32E603E54E7A83BB2DFDEDB0D80CD
+1F1BDD4F6C9025CC3A8A3685DF10A8183FA80CE0F0FE2BFF2500F76B1037AE41
+56D2D7FB468C3CA7549E3599A2AACF66302572F1B35BC8EF7C23F6FC4B720228
+1D673D903111CE378AAE83480B4DEB7EA84BB35F4F7BE997DD4FFF5A9B5E7650
+3C7365BA0965B242DC369D03215651184024A08EC284F1798B0726152884B4D8
+46411B3BC8F5CB53A70AD53BD7B1AF23528849B56CF2F75609FE715878CF6448
+38579380688B47AE3D374B0DB6ECA5B8284414090123D47F3F9DF389E023F431
+6B4C0DDEE4190DEEF4CA772742012754DA9A44A8F550FADA6D8FB0C512D5BA2C
+BB7DF71B1DA41FB6936BA71B710CC6A80751E43436F0F5888F51AB370DD4A088
+40F402661E08732C960705C7E0D29B8DA1A8A3E119409E51EE575E9655F47568
+023977917C8EC610BEBDB9C1F4EBC192084D63EAA00EC87B53E86620BB5AE51A
+579B0F8E1972CE1DA02832FC75184F45409DD9D413402C2FA27BCB0AE6DB4CE1
+5AFB114E23232DE07C4674969A1FC94D152C6D3A611F029ACF4D949A2C0755D0
+31C7DACDBB4DFCFAF7E87295CCF5D4AE28D87ABC3533D87EEF1507B9FF9063F7
+F007DF03734A20BC3A198B049000C92D2849C62DDAA719FC28EB372793E20128
+D786670E08948808BA45C4F6AA0DD8A8357CCC47228A760C5C7864853BD9C9A4
+285E446CB72C5C9D3F03FAB000810DC5674061FA116153040743E846506CFA67
+FA8770E785D7DBC7293F37389A0859CC22275B23C44B57B92A033A7BD194340A
+D6BAC6E103402F8396A5394C617CB2A27D9500921D5DA06115EC81715EA8E360
+4A95DCE8689CBE268B8E6C8B806CFB0ECBF634250243C9E1AFFACAD65311FA4C
+1DB0988203537E5EF12B86FB454D06CF05E4F4FC4143D62920E99304245B6ABC
+82E21192BE94F5E980DB21E07FEDF0EB0CAF4ABDFC20EF08A2A44A7940E2862E
+08FABA516152DBA899D6CA561EB08C7C8298DD511084E5230CEBF28AB1D84C85
+B5BAF4616C28FE05AFA4BABB3BA03F8CEEF3F3EB0D3034BD3D8D06629B8E9EBD
+72484057E71C9EB4DFC7C2CE7749271AC926C2419D618FB0B60FD6F81F0F2C04
+E529CC74DCC9E4AF32D935D7CA65FBD0842A7BAF162D08F782E65DF3AD9EFE69
+198AFA9208B22BC21BC4ECABB9BFFBA84C8421B74748E1EAAACEB59E566838F2
+C439579D6C75074F94493F7D5C8942D881AAE6302C37A61003AF77684EE99AD7
+EB5EEEF050C52E75E4E842F8174470FA60CB213BB6F257EEB26CC55D1202931B
+B981DE2535A87CF37BFF912220C117EE166CCAE58BBF624170FFBC0716726B36
+304D698F2CA131675F7B1199E6581B8C812C4FAF75814282477BE2B7EBCBA7C2
+FA6356B2876F89698C6C2493989E9EB252DE03BB374622A7C88B8EE9FEB4851E
+02F85CF70CDCA7BED5EC94E81170FB557C3BFC6F32CD70B506E56A2CC5451592
+130C6F570C679577C44D60A811DCEFB3535D855259B1021AC168DB76DD38B459
+F1813E3DB20AD9275D58880CE94058490ABBBB0D8DD16D4A65F680B30057F15D
+07FF54D779CC978E90A850A2D8D79961EE276BB26B594C16F56557435671A3D8
+ADD3DD0BC4BC73B0652B9DA8462FE614A14A11ADB2214EC4910823FB4CEC8938
+24354C5C62547EE5710FB5ECD93AA45DEA7411F6CA8D5B5FA222685E622AD73C
+1BD5DFD1C8F253352D6C7D14FF2FACF07CA5EB11392C6A33E9CABFD99F743BED
+55E8DEF49E07B9444171D1780C698E5B65B540F41F845AC188DC7C0C8B5BA5F3
+546BEAAA4F29F0DF30D5AC12A60862742623100074457BF2D820DCAAB340C1DF
+22FF26992DC02F276B40A7C528C84B72CD189A4088C90070486C49A1014FDDA3
+5093FC12DAF309FBC063653E6A33E14EB51B081126AB5BCB8016E975060B796D
+6CBFDFE6CB9E191F12E309254BDD6660E3227012F5DADE246B02B6D8127F1EE2
+248F48DC5ABBD229748444420C868450602120664984FE3A8B2373232CE5CA15
+E67172CAF7EA99F73A66AE33B1EDE5E8351DB02497CE3338930147873D4E46B5
+E918F5592A21789FA9F46232BE693DFC33240E2649D6AC1940B101D806089436
+F0CE230BF6D0363510378822891DBD3EEF3365430E74FB6C994BB40C8EEDA593
+CEDAFEBC3B87C7C04F52FBD7D557A77B44855CDBEC8A8D26F44D66446B5662AD
+15B6B79D13BD262D79BF51C09F8F690A61C7F11EC2E05F6BEDA273648E9E1EBC
+3D5F1D6ED486797F753064ADDA8494405556D43D395B1487EDE877CCC1EAE954
+1AEE2513DDA94897B733609E8179DFE1975590568202EF20D58A89B34874CC3A
+A5579473AC65E0EE61545AEF578ADE10BE3FB3E2CDC96678F613E4DEF7BC1B38
+8A551C93438A0540E292F65F1FA73D9AB30A5F545284085E4930A570C1807995
+7108AA8194607304488616DD4AB189F8EDC5F4507AEFD7847817A8ECFFDD2DD5
+DE95E04EAF2774F8AF661827229F01E769A32734097C457EB6FF056D90C46C5E
+9F936AA6BF2EE8244BBEDB8862E56423F5845BB10C8809730B011D650EA18945
+83C320A3F4ED095A5EF91929FC877ECC28A1C2CE74A53245E629BF46C6534983
+307B1C94EB35CECDEE86551F0C308F66690E591C5D9D8FE14F534CF3F5DB6D32
+39D7C799F392C4E65759B7BF61F4D8312E3B26C31466206A367A0DD7A90D25E2
+805D36ED5CE0A4BEBCAC0A348FADD2D2AAD670E28BE6E33F627B4A9F35078B1D
+6688084C4C18840673EF9B3526172EE14EF64E97C8B006C27DF6EF73BA6E6459
+3608F10EB1EC4B824DD5360B42AFF2084788B165747AABFB2C9C0EBBA9C6246C
+08F28143809315D6268E386F09BBAC54C34213438B56C386B34AA457D149CC39
+A3C163F56E3C2E637C63A79CF7F2DE969EF3AAFF75F3F20499A9ACA61279D545
+866FFE57D25998244F448AAB042B141952BD653007A889B1A716A4042CBBB827
+C1ED5E3C616C22D5FCB39D3B3539F9B71D50D25ECD2E5D953C7A5194C867DDB1
+75CE10B2C3A20E8CDE15AAE9F549D034838DC066CA649C31EE365D46450AF18B
+893748D055DD88C72391FD92DDF0AA1A1316051BC756F87BC9A425019B2FA7BD
+CA9F35E89E2229B3021DD24C9DF0DC3217F44DCF510116DDC9E92EFDA3E0A892
+491C8961CA484BA29B8CACD2FED2E246FA7414F892AF7B9F08698FDEC82D2E4D
+8C6ED1FD9E0BA2645663E7E97B0F780033D025F2EF3B364574C03F04FFC4E09A
+3D4182BBFCCCD8CA54A92434E2208803ED36F931D31C7498B7FCEE4B78AECF11
+B27123A10F031F9CBA36066680E4748E346D18FD0EFA395D1A9227530618ADD9
+64D96C50A0172F712CB427E8F7170F8A1691FB95B247A271499F0E63676BD64B
+167438333A3BD9CD9641AC637E0ADB17F1E394DF34AF5A2BD02030DD087BBA02
+E1209338B74075744A9A9966039AB6D223F385E06FF359257913E6C01BF32F5B
+A3640C7CA41A6C51F296E50DC1CD1D68491CE5D75E0ABDD4C5C4A97C8BE2BA35
+D91AF9F8F38E7AB8C1778B06A212D0416E6137087329AAA2679C51D014CC4DEF
+0F1543E2FD97621E552E19B29AA1368CB5046C188BA59B1E1875B25FB269DD2D
+C0678A42CD310702465694F2BF302AEBC43F714F7C657505132DDA71CD23D17D
+628BF3400EB5DDFCE2850F31B40C5913394649AA4241CF646F3939916C2077AD
+C11F8C3E478586AA7931E327333FCD8A2EB31DF4B47AA2F31B999556602DD998
+5848143C0CBD0B5187DF08E675550F2384D48C2954EA7D16AD2B94DF97C194D2
+302CC47BF968CB1F6C9641A87525D5C6972ACCA1D4A4B4DA8EC54BEA6E7312B3
+2737754A9FCBED3BA5F8220B751506BB0A5BB5CF706AFCC04BFD713A3BE3C842
+9FFDBAA0CA5691D0FCE76134841A169970903843163DE68FF09649E99945DB64
+491FD6D8B2DF237DBAF550D1B74263B3BF1EF6211F40D4DF2DEC46E4DE557088
+5D458A7CDC6F34B8C3F5C76582C8B7D24A333AAE0B43CA67436F8ECAD7C50B12
+35BAAD521033D8024E4DFCF01580AEC63BD5F8ADB778F822AC4FF0DA608EB7CC
+1A52A51B9F38FFADC0D2F4D8394C5D598123B483AE5AC1215F24F2492EBAA134
+3C58AD4E3B493AABDF753EBF1F04058C6981C353D6788C2D3294165B667D3765
+7883A8493F5D772F789F73979B254BB9397FDE4F8B76CA6FFF312F4B012949F4
+3EDCF1AC60FFF2681549DFF430B498405E79CB407DADFCEDCAB1E2FAD3B0F4C7
+B575A33EAFF9F67D37F50BB06D06834EA683862991C5BE340D4A7F8D131E733D
+289F72977870F9958102F5D835739F0F5A642E7194E8AF7FDA2937E5C0712CE4
+EE15CB475725030CE0F238C32775D3EC95CE3D0886046E3EEAE322F59D423E83
+DE88DDAB5CE0F70537487EBA5A16A9306BA7DDCA14A85A9F83B3BC3600DC9421
+BDADA2704A5A24F7174A3A486ACE68739EC5960038CB44D969A594E97AE1F42C
+42C1B7E3A456B3CDFC7683537B337AA8777F18CA45B22C8BEB18877DC624496B
+9E8EF9F386B7FE4D94ABD5CE3B5786E76FE04A35909C472C04654A4405932EE6
+A4A3E0F6DB088603FDD82F0EFCB85A962002A662D1AD0647A2F484B59075A1FA
+9F4327D542ED7962620B998ECC3A95CE736089593461CED9B5AAAB05C2DA3820
+5AF29B32904E1EEC357C8E282189C6D8F562DB11291091E6897E24CD8F8E2A34
+67F35D261E01336152E69831B0CC6B03FF1AC7EA22B745F513A25FE10F70E74A
+3FD71FE1EC9999BEDE7CFA6A97EA2DF621711BE950FF8960965685BAAEA71FA6
+36F165573A0A6A92DAEE41A9B0C97BF03419FF6BA1F44524D00FD671EACC4233
+9A857680DFD27B9F1E7A760058C8277B3761DB9969241D1824A7DADF70BBFC38
+89C6DB9091E3BFCB36851CB9662B365A4B7384BDBA1D385902D1E5DABA72A159
+63790096B927EA49299AE03E41C7F593F3B995D1155E91C62D5F68845ED3C797
+7798B56858F96C2FE2E37D812873B7801767082A6D6B60602CEB94B7F6D7A142
+72814734DC584A18D1FFEA7333D4C7E2DFE5B91E9AD92EB52533CA52FA888980
+C79FEEDF0FAFB3B20B497F9AB668BDAFA364B405916526D5C48E57DC30BC35B9
+BF684FDFAD199D9A28541327F3899AD505FBBBBB22F419E22E0149EE5FDD2B43
+AF442E2724EC16934C307FA731F90AD1C76B74569B78CDEA7C19808233C6364B
+D049F3F50A68D3EC5F29F2B96BC58C44AF90FE13F244B7129F14B5DAC3F3F310
+B330E67CA4EB76F895DAC8025F11EC7630EEB4826B5721348FA38F28B2AEEB1C
+5F7CA413C486C94B1DD96988F07F7A08D3635E28624878E55D4FFBEB5E183CB5
+93014D8A272EBCF3A09133603CFFEF43A6FF059BCE525706D3795884FB495748
+C8AFB50DB464459A5C36D7CD087631BC09C693A11BDF1C6011D9864FE66EE8C0
+4824A42E97D16E017C0BB73732D4537E2A5BB283B3568950E5681364DBC1D6DA
+058A122862A44ED85029A7B39F2FA7C362D859D0B429E056891339626AE6091D
+74F6110CA32F8F3E9507216997E6AD1A2F1FFBE8B407C9880DE230E234F6FD41
+A291851178BEAE5DB9DEB22E3443807E2BCEF12A4AE8C490AA9E3D2918329F47
+42314CD258A0760DE5FDAC4AF7209CEB530B8508B278952A3638CA8491C3B493
+516F461610DBAF32E923ACB834B15E2D169A10F2609EC0ACDF7BDBC777DD2C19
+2DB330FD557D3B06B78824D6AB237D8F2D57A7ED35F02CFA9290ED6893B41657
+A2485524A3F1642FF5808FDB77015D9467EDAC4A6BBE8A175833B1225A5554F7
+2C60207F7A2632A4023255E8EF1F38C1B8216C9B03319B60BEC9799E5378683F
+46E698FA75F2DFD40F17C603F3335F1EC70DBA1449C7A33EDDD46CC3DE4A6557
+EE67BF349AA8680FDBF415DC527129288B5879500180F75DF80394EC7CF11BC8
+9EE9A4ABD64DE3076A2963F83FA333F19FF74F79ECF36A87A31D6F125FD2415B
+3F6A6FC33C179F54CA164835F3C3DB62AF444BDF27AFF23098C7212477F688B8
+6F48D9AD080D544D57FEDD33D3D9AED9346CBB644C97C951D4AEEB2BF6F0CB18
+E2517BA7ADCFD00FE44E290E731D53E5C0D762FCBA08004562DCE6A5EF2FBB74
+B3053CBED3B6E896B1C3356DD9E8FCB69691AAF6BEBA0424D62B9F266D560B40
+89E20A9F35AD4A7F65A7183761ABBEE0F7EF26ED3565A25516A3A5A57143979A
+1EEED8CD52A69E4E1AE4795F3EE0CA21B9F4D166783A9AF54B08B6C56703932A
+310197E328C6E6A6BADAA11D66A952964F31FD690082FA02D1E2A4512A9F2742
+33B203FB770A3A1C7490ED630D0FAEB3066429D0237E18818EC368D0DA72EEAB
+969437E377F7FA61EA1F01DB965B88921D8ABDDC55A6ACF382866D400424C37B
+939EF97C6EE56522D30CF4313735637CF0AB9DFC59704484BA1EC2148619921D
+E10E9055FE022EA1DB12DE17BE51F5797AC1DB08F751F220ECCC2636CEB7BE8A
+5C27AE952F4946D01DD1D65C1D50D52A8DE84EEC46E015BEB634516E64EDA0EB
+F49A3D9F82169E5FE0D613468676A21638730B3AB63498478F514629E5A25C4F
+DE51CB19068F183D547C8F0B812141083A67AE2001F137F7BBC1C5B682179C97
+2B8F4DFD4FCDAA1BB09720C0DDDDF3EFAB0511033DFCDD9145F8BE5CFC2D5864
+EEDB8AF0E5CF8836A078A4716A24CDF975CC7EA03D80D1B3F78C5A2376918E5E
+8885EC6A79394CF4DE1D15FAE80ECA3039F0A81DFB61C508A1FFBA9172BB62E6
+455BD3144371CEB17F9EAF24C1267883DE0273D5ADB07EA6DC8175116ACED0B3
+025230B999C6FAA249DD541F70B960E35EE076A2DD25092F9EF7A89A36FD2786
+69C261DE19ABC26534F1DD1DE3941B7922FDFAE586936F1D4F5CE778AC2B74AC
+4F5B8D9C9108611B883FF044EC74318902389B0B85F33359E012FA6C256708F7
+99096FCE574A44A0C8B129D6E511993F45AB7BDA1DC584BFAF7D3A1D387A77DE
+13C7DB4228E9074BAC6FBC06AD1A8727BE68AAB174E0965F73E0EF99851BA72A
+097446FE8D54CEE9CBC3B88AF70F6E3778A0CBACF68B846FEA8F760EBFCCF49C
+7D65C9DC69FBDCA1E23E47BCF2C96A9C58E53950DB59E43228DF2E150E548F82
+897948B0563835AD56D15ABF55847CF270FD2F5B1AB4BC2F8AC9EADE218E9593
+18BB0F219C7A4548E96A7561B78132899E2A966F8AF3F6240DFAF336150413F9
+5EF933A3CE65E4AD7D3785B54B382ACF8A9F64DB52052955A0062CCC29E159FA
+45F6AFFA77753E225B6051BD7679C30F4A0646CBB96BDF818A6F3F967E9CCBBD
+59034F1E7BA539BEAE8F89259944B127ABA1B4845227F39DAD008CD09D05D238
+71426E7FF0244102643F220FC69B3106F6FC3079747386E6C7DCACF59FD7B023
+36E97B5A434FAAC91E29D0A5B56C99E0AA6100E2710BC7E751E48B280C4D1E74
+F057C8ADBA83C2F6BE1CC82AC0597E82C67732CAE120376C9849AB91C0D76A09
+11E9BB66131068C94227623D447A77E911586A477FB3D839512071D001B0BF7A
+337FBE21C27292B96AFD034B89AF4AE99FCDC4CE2B9ECBE22E438485BB31CBEC
+DC1E2A4587165B654FBC165561D8352DECB14842DFD5BE1C2FAC352791D01D7D
+C15DF9566E9F7CFF1759FAE3D341BE0300360BDE6B8F0A3AE32A2DC30AF24BAD
+F06253A49C97F691FF370260CDB4080C260FBAAEAA48530546225FE560778368
+5C3C4CD4638068376215071FDAC922C3D03EB8C050E91F070BFA7A3CA95E3505
+1F916C3C71B1C1719A271099B23A5F12AE4BA49F87BA82584AC8E3363B5284EA
+2B3DBC5CA5ECD937E7C7C0CA4DB5C371739DE1295B8F23C0D1485624A8BFDA1F
+EB17A81581E0EC06ADA226773F761F20CB53FC376F35D290443E2C69E1830521
+C71C961E8902F62F08443BC368236A5CCC31F303DE0498C3D34038848D6697C6
+8CB93C675325B4D2250480B1266FDEF0CD2B0018007FFC38E6E4387A09CD48B8
+84D05E2D04DC73981F0B4AB18B8E3362798FD1F5F1E62D649630D4FFCE1B885A
+D7506B8911FEA74FBE6BF64A16A5F22557D6203A2486D6ADD1F3D1D95B4B02F5
+30F8D08518F62026E862FD28EA4DA222F4F4F4280D92C20A33327FF348449C01
+E8512C6FACC044D71ABB1CFD9A17187C3B7C05CBF7C54421C7FADB95ECABAACF
+FF95911CFD7AE2AA9F9B62291F6C9796CD47EF76C8E62CDE28874D3D953DE11E
+A9AF37CF411CD7B65819761F19C9DCA1324362095B7F56D5DAA7486C95D807C6
+B36CC7C74BC513C410B7A15232A23E460139ADA7F1A9B0EC046515C296181A2A
+CD80630883BD55884E1A6367D245381E9A5CD42A0C01AF1F241CBFE455DED8C1
+D6EA31C0A219C527D3238D78A97D31B7AE43ABEAD548DA4CEC41ACB7036A3534
+F314DF453D24D585AE829AA12C70C880A4633B6A9F2DE963055D6CF366561FFA
+5DBD6CA4827C2333E26C82F7F4C1DC2780F2FC712EF68CA056B9EB8278D4A419
+04D66AD9A0ACAAFC66A1D917F8BD37EFC190AB8204C8A4343B0EFE2012EB35EB
+6A09F484C45823148FB81E70F1EFB920309EC6CB5567C4B1446B5AF4E70C3103
+0C7482349B5B2EB7AB6B514EC7422DCAF15BCBB0F9AD5B774E168472FB6C9F1E
+A0FE396F9E3B164D6013EC4992CFCAF62D6731ECD03B90688BAFC791B22BDFEB
+0D809FA98E296837CD9824EAAC0B17E8D08F79FBC81104E115DA2B386F776996
+3C07809D13EDBEFD2054BCF74F77BCAA4A519EFFA5E99C0D53298123465227F4
+7454D1127B2A5DFBD28491991D6F838BB21C7616DFFBD728E9CDE011E58247E8
+2DB6B3DAD5D6E6BF0C969DDE33B6D935DA55E2B3EC8706BB2DBA45359DA99AB6
+18A1F7EB38CBA85B58C47BC76E8B8851B4C887F08F8F9A921283550CF74C1542
+A55B9F76F2FE11A2F3208E74569B62017D3BF195F50762341230ACE43F7A3816
+9F6687BED894091581489ECAD0ABE59D3920610DB5A702563A74199325555FEF
+21AAE8EB5C8DF199AA284F7FBA6F57B518D6C94A536AB3126CFFDB7BAE9EA927
+3F7406540C9E49A2633CC19EC149D23C92486AC2778428242A4A13C1842F8BEB
+CBA0196D8EA443FD960E06FB1DFC5689A20A04216109EC42F648C6FDB039F031
+B2E12957156120E97FCFE05061029C8BA59B0E8C7D57A757E27F86B435DBD3E3
+14CB4F74B104D92CC03C4E2B739E9B978ECB257608EA6DD2F2752F5D17538250
+E58F55E7A291E987435FEAC298C4490DDD16603CFE753A59FD66D741B32310D5
+5FC27B38B71588599392C58B00E35EDD4488D215A90F05639AA21FD002A0E645
+281CB25399BFBCF72D3EC8EB3A6A3D6692B95037A7667C5036FF265CA17D4DD2
+288F47A9B278C3084190037202E64F66FAD210E1CB5FF306A86C80F558BCA5E6
+4735552E365B01CA075F785D28EDF3338D4B93514D77D27DC9D471E2D1826188
+8654965457FA674C191E036AC0F2833C2205B66A5F18681EDDB1EB44520587CA
+ECC632E061193A5D620DDB22039E797373FD26F4147C6B9FD654C5F5914694CC
+375FFCDA28EA3C9DEB516CDFEF3C38D980633DFDEC257F5E6F11CFF22178D005
+01BEE76F84D68FE14CA4B688AD97FD82CEC1891A7C3C820197A8D7BC27BE6628
+7CC9BA6E8C332D9FEF27048E5A80BEC05C68D3A7E2F2EBEF1BD96FF0E65C7F91
+6C777D9E6078D4B806FA4FD09432B71D7E58249FEDBD90B8E140BE099850CE95
+23D2CB6A1A6427CB71BA294550D4E86071EE29DCE4421ED78790C62428C640DD
+C6010324CBEF7CD97263E6F56165192C35E746B6FD3746CD6B767BF9B4785A78
+5CDCD865687327B33E077B56A334CF75F30A5D07F0E7CC188498B0A7F80BB51C
+4545011E721B992A9FC9C964C1AED30078BF60AEBCC535AD7D7A8000C00B04CE
+A680DC6972FFFA62E049E892510A91AAB3E39285E597D5502AEBA314B5D80617
+32EB64EE1983D66038AF9234C7A3EF86287815252EF4B8CFA35C8F7C7DDFC0C8
+1B298E4202127EC5D1E2699CB99A46367A9B02034B1BA62F983A6807AA2C0766
+AC8DEDE027ED69D2E10DD6F297DCD3779B486F8EE13377343B59D47703F3005A
+6E536C1E4C0F6F4E978304D8160CF117559674343312DADA99EBC7B61EDB1FBA
+CB84A7B1A02A92070A7186744F064411A23FFD996A6E64F296CFA362880EF983
+AAA87A1758EEB41C59564009B739A72D3BECD567048AC93DA20FB24DF20CCD8A
+05E35B39943E34315F57629B3366CCD6E1FD35554BB1E2AF243767A1AFF72EA0
+B752922A5D22310D9A13ED5DB60D9B6411736DB082FC7BF7B23F55BD0D81B5D9
+E2B0CBD90E8D6C807B94ECFF23D0B13ECD68918C566E308EFBAA60E61E094115
+5BED7E88A273A0D3C5031E0E235D933DFCD58CABFDAA5BCE8ACAC96AD6A01954
+488B6B3E3C0361CA9BD7C91A9F31307176B15FE3C6EAED71E5CB8FCFE3C51765
+46117F75BB4AB35C3DC749709A1EA44C8FBF29BD247F4E1CC43986D7A41425C8
+A11BC875369836F055082B36A65DF2F42FAF5F2809CCB63CC32720B27A31F79D
+E65BA2A74624910EAFF1CC1CC80FF7F8EAC441ED2157A3C932A0D150176FECD3
+E76C533FEDEC5FB6033B1985F54A249D9CBDDEC9665BBFC8D025FE01ACED87F0
+B4309B4DEABE295025F8C6C51EE5342FEBF66A132465E0C8E6112A430B1F020A
+D47D2FAB05D68CD9FA07CC6023BC7C01D00382B42E5ED421DC4CD158CEBCCB86
+8C03688B8A0A8BBB620B6CD105D7FDFA179EC5918F27DB28072115A25DF8FA5D
+9BA014A45FD70B84380577BC96AAAFAB4EE63912970233BA19742BB7B3D87794
+7F4D1A03C431CB688AE28BBDA40AEAD90745D22085254B1780ABE5621C3E6DAA
+8E6AF0DC2F6DC90264166AF420129E3CF882D9FA341A0273939EE1AAAF7DC2B5
+D20E4BCA7EA69CFA52B965FD95FE11787374034B18672AC17B1E6B401428A96A
+4BC7AAAF9EAB1BA5F42B4C962F0DE8698954AC3063A5507F2000C87D13D3CF40
+0E96020A0C8BCDD72EACC24A6E9F083F7354D907091F4A78D6E9657220F9858C
+B00BEBBC02A3BD2EE93A826BD23C730EF9E106976AB6F75A24C16D809E02AB6B
+6FAFE43070211EBE2ED9B4F7C66EB6B892B4C795CE528F6A3183BF1695FF36AF
+2D07EC3D5F183436B2A3E9F4CBD4659CCBA71937B47E559B504DC84A360D8A22
+3ECBD605DCA3BFB9958ECBD7C281D6DE929FDBB0146A558ACBDC3422FECB713C
+8648016FEE355C681D0C87AF91983BE7E135B1DB1470EB3A8AE4E11CDD00F147
+55F067D28BF0400C53FED90A05302A08B590BE15ED520D37B24761D708CEF192
+A446A9DD9078E331EDA16359CF5C1C3B7E999C1166890DF2A3DCC3597BEC9EC8
+065AEE454B6B97B29F60A0BECB071423712F0308FDDB6FB3463F4BA3A2F8F61E
+8ABADEA50C9E5E2A62C67F4FE4948252968464E67F4C4D83FE981B592292C1A3
+8761E4971F0F4C153A638A146861E765339E53CA5C6DE495344420BB07AB66A2
+60E3217F72FBC27111D1C8F310E591C8A8FF3F11C1C1BBB9AB904B1F1AD29139
+E79BEBA97AE481AD87B4741C63BB25E1D71751183AF87CFF3F3DC7FBEBFA0702
+A270F97EFDA07BAE6FA78C94ADDA4A356D107CCE3F27A34657F0F42E8F78417B
+81DCAA1B828C26A3F31685B2C153CC37151A654E24B7A4116D2B7E450C8F7BA3
+A4336EE2987561433B83756C54149E64640D5E91AB21C0B50526E49C039749A1
+9D0EC05F91FE8FB1B860104B2FBCCC02B9046F4C37D0C917B5A4E155AAADC506
+CB343FB40DAE12E6008419A6F5AC51CF7E5727FF6635C994C72E38912E4DA02B
+603E52B739DF909966C053D712ACE49AAD029282E812751787066BA074250C02
+3880CFB68F72FDF65ECD351C93B8D8108AAB3A5C6D1AEAA7B5D777D25292B54A
+A1C6595B4C6796F5E7AD
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+cleartomark
+{restore}if
+%%EndFont
+%%BeginFont: CMSL8
+%!PS-AdobeFont-1.0: CMSL8 003.002
+%%Title: CMSL8
+%Version: 003.002
+%%CreationDate: Mon Jul 13 16:17:00 2009
+%%Creator: David M. Jones
+%Copyright: Copyright (c) 1997, 2009 American Mathematical Society
+%Copyright: (<http://www.ams.org>), with Reserved Font Name CMSL8.
+% This Font Software is licensed under the SIL Open Font License, Version 1.1.
+% This license is in the accompanying file OFL.txt, and is also
+% available with a FAQ at: http://scripts.sil.org/OFL.
+%%EndComments
+FontDirectory/CMSL8 known{/CMSL8 findfont dup/UniqueID known{dup
+/UniqueID get 5000796 eq exch/FontType get 1 eq and}{pop false}ifelse
+{save true}{false}ifelse}{false}ifelse
+11 dict begin
+/FontType 1 def
+/FontMatrix [0.001 0 0 0.001 0 0 ]readonly def
+/FontName /CMSL8 def
+/FontBBox {-57 -250 1183 750 }readonly def
+/PaintType 0 def
+/FontInfo 9 dict dup begin
+/version (003.002) readonly def
+/Notice (Copyright \050c\051 1997, 2009 American Mathematical Society \050<http://www.ams.org>\051, with Reserved Font Name CMSL8.) readonly def
+/FullName (CMSL8) readonly def
+/FamilyName (Computer Modern) readonly def
+/Weight (Medium) readonly def
+/ItalicAngle -9.46 def
+/isFixedPitch false def
+/UnderlinePosition -100 def
+/UnderlineThickness 50 def
+end readonly def
+/Encoding 256 array
+0 1 255 {1 index exch /.notdef put} for
+dup 97 /a put
+dup 100 /d put
+dup 101 /e put
+dup 108 /l put
+dup 110 /n put
+dup 115 /s put
+dup 116 /t put
+readonly def
+currentdict end
+currentfile eexec
+D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7
+5182433CF9F333A38BD841C0D4E68BF9E012EB32A8FFB76B5816306B5EDF7C99
+8B3A16D9B4BC056662E32C7CD0123DFAEB734C7532E64BBFBF5A60336E646716
+EFB852C877F440D329172C71F1E5D59CE9473C26B8AEF7AD68EF0727B6EC2E0C
+02CE8D8B07183838330C0284BD419CBDAE42B141D3D4BE492473F240CEED931D
+46E9F999C5CB3235E2C6DAAA2C0169E1991BEAEA0D704BF49CEA3E98E8C2361A
+4B60D020D325E4C2450F3BCF59223103D20DB6943DE1BA6FC6788A68F1B7D76D
+C40AFF51BA67F2B6D507C52F60E009075EB86A2F571CFC3F72359AF74E179D7C
+CB059BADF0BA3AEEF7E12A386A56E36D0437E383FC6E79BE0F2101B1AD4AF71C
+B8632186590FE10CB84A5C5B7697BE651D718202CB8BCCD7DCB4A38CBBEE4416
+AF7E94EBA4F08892746A4A9136C206286523D9A8E24B91019263D106AEA3A9B9
+700A5803F6DAE903B08DFC09E88DC3EE0C3DB151A1FBF369078113C207BDD6B2
+71FF12710316C5E2D19805EC82369F3323C48AB2D0866BE1FDDC642EC7872337
+AAC35B4AAF96A55A31B52FED2D963A12C6B33060A7A963CAA6A90AA4CCD1532F
+CCCF3EDC99F3F01BD8A35405188DC9A9EC318D2C18A6802D40E5A96F37169422
+83CE2CC8A4AADB1C001469FE2940E65085C1578891634868DD821F70AAFFB536
+41365DD08F27891C7ED6E25771D0C2F5BE14FB3DB08F368938340D0BE14A78B3
+7BB3D0DB6D4081C541602D10670C8E5AEEC95900389022903F85D515DA824EAC
+292CFB83E0A52173EF54240D4C5E8F0CC92A122DCFEFBE1B6A61E8E0DBC2AA7E
+ADC77B211C63CFB5BE09D30A755516FE147541693079AE68390BB09A22216E62
+BB7441EE0E81281F81534508836A04B2CB404AF2D840E2695672DD83A11A71C0
+382AAD14319A70A21F39A0A3D7858F391F19D663FED1B23A7ACA10DAA2D078C9
+76DCFB5CA859D1EC117CAB5D82450990C48F8420B4D9A628962FCF5B63785BED
+EFF1DEC5F40CE8633D25EF3B10A40A7E28F329D6CDBAF7AD8456E2CEDB4BAC10
+8C3F9456A5E266FEBC68369E421849A47F07DBFA3A4549F0D47F406D37C55ADE
+0F20AFD1D06ACC0095EB265688B69C150894F7B3441C2B73828430314A6020A8
+FF783C2450FEC963CD3F21B539F97C0BE68A8949BE9ECB715B94DF8C666DAF0B
+0D135678C7A1F7A066F539079845AC6D510FA96B216D9ECF768D7727808D51CA
+563F473D057A9D661D20DE4F7C6F603AE607F6395ADD97CF103110260DA045A5
+AA3683819A2827B1BDE0391109B9CF1C650E71AD08992CE04E2AD6947F2B98CD
+C9902B4BA186D51BD579918B83295F56EC7B3105B1A3980875C74F0D0247EE49
+71824315BCBF79523B65F11308FD1073F50EF5D3E31EE80B61F0BC63D37BD779
+C394C39DD7D9CB276D2E52805F018360909EF950F6D26F2449C7AF9425D59BA9
+5F98D3DBB60D3C8424DDB44A45BD5496E9813FCEE15DF8A795BE01B06849E82F
+6C7413DFB9684AA38EC2160A7BC936731F430CCCA7FA830573F1393689DFB932
+B5E3D80AFF25615E4DBDA8F12E7870473223EE69B9E7C8F1785A5D4EDDD18067
+558B9F97553AAA1CEAC488DD9062FE4843A6BFE9CEBD4C8D5FEC0A25DF1B224E
+B22651A3886F0ED1B46BFFF297A8C38F33E60A80B5E4E6DE643F21B40FCD6F75
+5DD0C8E73C22210DA1B88361AEE4B83866649FCEDA1298546AF80668FF4CFC64
+028D9D1FF62619F683A4AD153BC887A41ABFA828D63321C9C98241797759BFB7
+5E6417A4B5548A36A4E365599E31567D501C6DB80F19AF9A7D1C1899A2742FBB
+23BE0330BFD52E43EA15E937FA723416D663FD7FBBF7B79B49C0EF4B42169359
+52AC3E73E08542C06CAA2252BDB447BD96D8705D07F97A56D8246A3C6EA8CDF2
+AEA09E6E80300F4540BC69D804A44D84D6E91ACF67705DBEBC3D9BD192ACA215
+86881C04C25866AEC86BC4A52D95B257413FD7A91FA78F23A415C330370245E7
+14F626B5486E7C7DCAC9F2D1FF1EC4EA297D6832C1255472030108D6593DBACF
+E7D55AF15C7EE74B7804D30BA5C8E10AC824256962085256137AF3C004A20039
+28DF5855669CB872F69F581A42D1405B226EAF1163AD8AB80BB338CA0B7E1F33
+5DD10FE4BB7753A71961E5699466B115A4A4FBC8C3A36C895FE3AF8EFDFAF95F
+1DA3E3035902EFB1A0B6A5859F8DFFC8F6AB65082D276091C86353DC0DF935CC
+3D4EC66CB7085BD64E127EF48804685EA84E9A228F195489399CB5CF45FCBBDB
+8AAABB29D629DDF76D551282B3C47945C5BBA3130569BD6922DCC01BC00B059E
+4F15D4C5FCA5BD52EFD7B6452F6A2350E907123C9A6B41E7D480382BE0CC5847
+FD65C82ADA4C1DC3D09F61972353FEA1FC90EEE3CCC6DC73DFB27320085B3801
+A85961982A0D32E21DE9AAAA4B5CACEC1F483ACE904EAB118A8E1F7B129749D3
+68B6227534B7568B10A97182F1DDC0110141FEB59AAE24D45E76930940AAEE6A
+CB1D01CC99EBA0064F71A1D94EA2A83073318A92FB69B57527C28959C9D05B40
+24F35429083C25157B775DBFF73D22D2EBF246590F7BF739E3B27852FD6FCCCF
+2700938CC0AA1DABD7856A17E7B694E80304ADCD7BE5AB48AFF6430699F5F38B
+814AEC30987C7B638A009355E189E077D1761F1D16058C97C42636EB175E88AA
+6D1D98B5E1A890A8FF33B16F989CA525638295391ABFD512CEEF539D72025FCC
+03672DA84DB6A7E146EA576DFDBFE534FD99B05B405CA7F34548DB50F70F93B4
+B585D2B5B8ED8A9EAB3CA7606F51122EF0DDC011073D863DA2EA515F7144B539
+7A86335D54FEF2C40D76AC30B5A9B00C47AB8E2B0C6309A98010BF7D5028CA0A
+00AF7845B289B7CBC1B951ED0DFC63927EFC9A37AA4214CD2B29D5830B7F71DF
+4A76111CF03421CB6BAE35492C78455F64C70181FFBAAB8E171C93312F24E820
+A0CF74E8F5D3AC965703AA3AFF703038FC7C34328A2725806BC5C2412D55B03B
+7C80FC4752619104791702FCD2321BAC89B950FEA58C01B7538E8C1CE04542FD
+0326ABFA19AD386342F5595AB497256DD9CC074A92DA0DC6D53B4172DB0B0746
+3B551935C9A820869B9547A4FB47CDCF0B0F333A7DABCDC09124886DF84F1697
+D128727A0015E26D7170EBEA86CC29BAB3D4DAF016DD82EACD1CD125D9E448FD
+1956526F4D9A46AA5C0E13D4122C63D01ED17B59A6C58308AD1E94FDC37BEB77
+7BCA6CB107783C8A942B10C3E6CFCAD530DFF43B7E80CB469180EC28595F641F
+BA76EC55C23635651CB627F6F147B026028765204F46E90B6ABD386F3FB2E2FC
+58B956238DC94E1BBDDEEBBE69935548A0CC7E8C3949E75F396A5986ED1C9991
+BE9315FD96D7BB2E271780E7196094F5EB574B23E193215594E0EED76A140BAC
+DB711886D173ABF08AB19FA6187281BCD9DF56E362729FF1F60CC07B7776DC3F
+EFB55A181C3706AF1722AC6A3A791CB1FAD042320CC217F45737357E14B5270C
+7D1F87092BB9164AD86398E9009AED35AC667AAAC20B61EFC473BA18E589B6EA
+4732D0BED3E0C7F956395AB78EA4E8D60D0820442E5C698E87A9EBE027666FA6
+F28BF4BB5E4E2B6088746F26F25805F8C100B69E19A3AF44A64D96901E3668E6
+9C3F848902A68D243C1FE4481F520E7AD6BD6AEDD2364BBD9F14CF6297A8D1FA
+652BA7E2CE9AE426099B1B832624C6CAB0283DF954B1BC39FDDBF42CA8B7CCE8
+5B50E35E9CF7A828D226C09A01A60A93F78DDCB27FCD8C037FA0728498E790AC
+E3A87946EC22B6D701EB4E1199F86D363F4CEBB17A129FECB2E8508927352418
+4688A1CAD422951C63089D66009722E7212F1B59707E6590FB84196BA1BF3C49
+563A21749DF9A9AC78D016986F247F2E9C6DB7FCD9AE02FAEA0ADF67F2CA49B5
+F23C51626858F17EAF47A0A0E2BB01B0692BB8313173862A3373D40E094539FB
+5D80747F05902FF63351603195CBB921D432A49CD4CF2F442E1D9A1519833166
+102168ECDF32500D526B883B14311B089E043D1981B24D4E657A8EDD1E60FFE9
+1D66CA9FD89BB7B407FB9BA23CF290D1B60857927BFC0E8476AE68E9043D514B
+2D8A4D2E4FE52A0236E5656DC11C46A369CC45124348D48E173E2257FDF3205C
+6EE9B0E54CF62C6A783137B95FE5B6528B0E5293C126AEE45F8BABC7D7C0120B
+9ECF53E087D18619EFD482EC710FB9054ECAD0A792E34A2AC3A0A8D765C29E5F
+ED8D97517869210D22B482351442EC24B8C2FA291E6F7041A0CB8A65867A4128
+9CE66ECA6173C6C4D68A6ADD5BB92F6A69C4429B6F8FFEF1F91428C174E876A4
+8461C19C21E55EDC5C9A6282B01CF797309F189A214FD644EA2DBA43A3BB1464
+7182477B36B8895EBBB3B91B86B39245D2C3AD41C9B008E4A80982E1E50ABF3C
+7488293189AE711E5D402BDA64FABDCF0E14F72B7876B4407758015E3C277B52
+363C660FC75996825A6D5850A91B0A56267F1B5055DA53724B28F61FD42782F4
+CECD374A354DF40EBAB016D76E7124B6AB054A0940976F0AE41F418BCE3C14E7
+FC1ADCA3A7B7C2CE9752F77CF1E3D1837EBABF3AF7EA098B16D3547545DE6049
+3191DA137FF260D71F07526A0360F682C51DB3BF12FEF9E9439AA0EF4AE70A26
+53AFA270C0314256C1D3DABE9EBB2CB9980E0983710AD93042B0DA47DE6A5194
+C4543586711D937C37396E28EE5B34A395F92792080C07B2233639A39B4791BB
+8434D2CC78898E21C8858AAE4712DCC5DB9581B869FA977A1A67973048C31A70
+F2D0B07D7B804AFFFFD31A7185C537334EF04B7EE5B50C7642CDD22279044219
+B552516EF787D1B5E09B4FFBDEC4C33163BC6BA3E78B182530F8F243950AAABF
+B5DC0B334CE71B31C8A860085ACB937EFC9CF3C816FC3AFA15345D0371FB5460
+6FCC131D81835320760B6AA52B5A559167AA2F0E43A2C8240DE39F4D2746F46A
+370314C1B9078791B24A5F98494C832AC312EEFA1F1269159236C520D9F47031
+A480F1667722ACFA7080BCB7AEB27CAB2F821D99DA8F38D6F7237DFB93ACF728
+EE85A4DEEFED60362937012DF99E77BBF5D1907CFCC81330D67C38EF73C47A95
+8DCA53657E83ED2107CD502E58FEEFAE8B054CEE0EC9B787F86A9DB084B04AD9
+9631F3CDD2560CE7A74AEFDD42BEE6F7FC977000E7BBD4050B171F4DC8C34C35
+246E0DA722B9ECA74A328C7C8EC6800D2420791F3BC055E890DF9A92B89F60B6
+5B4B9F453C8A701AB43D62ECDA37CC038D0C311037A9C0E17150D6EE9A6AA9B3
+6D4C431A77E8580EED2315B8C5A241821AB41271E0522D52E1BCE971AED4CBBF
+B87FF58BED2489898FE7C1D67C15F6A38FE98FD191E8029144E6C3EC0CE137DE
+F69F2E748D56D3738B5E2EC5BDC18A8B295CFA00A403AF164D3A200E931362AC
+2E2A4D168E552A480478ED6A100BFA756FA063833051363EF0D9FB7BF67A6B1E
+709BBCDF32B23B9AE0A73654608B97CFE8C5F73AEFBEADC721295F54F14763D7
+8DAC26F372DE89C54FF963C901E0094B22960D1BB3DE69AFB442BEA1E6338974
+FB54072467F559FADBD1C5755008EA852E921C292BBF2371F3A9537B94793B55
+F3E0314E80A82AEAA0C44BAA274D5399A21EF344F94C156789432DBF059776B1
+B9E59910C82EEAE121C60642B47133F443C18B95CCA4DBFD709116696264FC93
+6B68844CD37B153F4188070DD9B21FE5A825AA9F7F828DFB8D17F3C90E96D189
+85C7A1006ACAB231D08066754E58D29CDA4335A0726C4B7222CBC1637E76A015
+0F8F8BC89045E753109C1D7B4121212750E89D03CE3871EFB64F266EF6A7E462
+DC0733386244E0AA6D8F186E925E4F207967C3FCFAB92DC97DEAD22E2B26E485
+A3FC5761F0D66B38116F8057AADD245EA6EE308899704A7B5B043A97B952C514
+C7EEAFD3BBD4928CE085A1F7AB214356C59C8DCAC9056CFDCFA9411F19394FE6
+CB73D1B9440B2A59B5D2361BD2FAAD50E4BD469F5A72D20B2A4D5A56CA725317
+0729304F571FAC98E37719494F0D1F916CC9C2758BE5E7EB0DE78EA639FDB03F
+924928512320EBDD78AC5185AABE8CCC431C3A2B9F87805E0C317C7908483237
+0B8EA56D500AE909BA3900F67E8FD013E333537C3E71E4E8F14DE34735BFE7FB
+18335BDBABB74FC2D49A96A213DC83D3A927D106E5BC1D922E04B0139E3AEADE
+1B1116498BCBB7D5D1C94464B992FFE2583BAE8F4166170067534E0273DEBE33
+19C05F459214F90946CBFA201B6FC3ECF273C9AB1F00AC2CFDDBB903E8F97BE9
+A680EE1812D8B4699D367A7223717C338EA56591840381B11345DD87162E6F17
+C5E3A2AA5E729AC36A11B05884C44361932A2C4E596C3EF020E92473A1722BCE
+2E48CE98883CB70E2A48A7B52858A3CF0A075F27E50127561A67D9F171B5C908
+073B200D06183A84722A7A238C0A3EA10B79B6D5D9CD46CFED0D9741048DC243
+8EABB7BB787B6357BA9C73368569D7967AD92AB915DC1F2A702499BC6B97FB94
+0EEDA8087EE7668BD17461E100F305293CA4A69CE23A8CE680F80A0B5FC1AD77
+A230781EF5130E2B61F1B9257887DCDF19AFCC45CE924F8E9257EEC1C0DB2D01
+B9B53D27CB1843F97090E36B849DDA3FC1C5FFB653F4A7C22F688867AAB7629E
+B50D43AC229F50D150D739CFFCC166495BFE7C301470E6378BC5E85A8D4BC8B5
+5CA39F3DB06886353975ABA6FD089DC0CB49FE645BD51B5978D30D8C6FA9F532
+50DC86D9EF102C5C200A8DA52B4D30A9E9ADA5651E35D997297590E7C9FB7198
+425E32BBCE76AA2C918B521F2BD69A5F3564C0DDDB3B2187894A107FB4D2A918
+A9AA0A07BF72E15F0AA2BF08473BFF29B5DABF61A5D80A20972903E8A7B186F5
+86303428D5A2D74DB9FF195C3ECDBEE109B816F3A84C8EC0805C98D16A43C604
+F4449A5BDAD558892678332D577C804034B8239AFF16836D99FA202B929D3412
+F7EA5786D856FA704F2BD3C78B434EDBA19C763151FE243EF0ADEA487B852AED
+3632A39DFBEB6FEB541D22694A4F5FF7D8884CDE2A8DE9B4DA53AFC06A19871D
+6714F12050A1EEDDB35C1779F516DB9079042FE798335BE97E2A774433224ED2
+78CADA42E55EA714CD9BB16881801179A0E54E1D2618812CFF25A6859C626A21
+6603C1361BE3E071FCFEC2D4BF2FEBDE07DBD56A1BFF8303901168FA06488BA6
+9D3BE01E91BBAE9DDB777455D6C5D09EF9FF247A752864E3E382F78482624C16
+D611C620DFE9622AEBF3E90848AACE065E1606FDA60A03179B09B59CCD2DC2BF
+CD45AC15119956C38321D2F309F7E83E816759107C5298EA42460A33A4B4096A
+C60B69C71B068C4B6370C6C90FDA74BE785F5075263FA454B8AA41BE2340BA05
+1E5566D77C6302C19E84CE54374E355CF21B972B639480E58E72DF572F84941B
+74310CAF3FAF35829A2C0B6A61DF98A5D48215B219B2F80BAF038D6139305FB8
+D529380AB89AFD6254B4D21FB1DA5DE5C86EBBD9A2A7C516AECD160FD0C7F837
+D0D8D1DA00CABBC5992CEAA9673C3C70168B82F1000EECCBBD017C8B2036033F
+D5FB72D2400C0A38D264C55E0C7925C8B9F6498D2151DA36904A7725DC54B86C
+62D4335472853FF533B4D9A0085A9F3D2AE4734ECBED2C6C10CBF550F015EE52
+6112AB7CF68CCD60162908390F3A9DA1C17C70A13E9165637820129341337AF7
+24E887AB84B4894898A7EECE4FE3359B9F3BD5E9B9A10C428169DA9B37F61622
+315C04B3DB204505FC3D09D4701AC703A13F214C8BCE8E22362874E96298337D
+899351723315632C4F37D406A0B893C5749D1B2265BA0089D7C2E6225C1358E1
+96F71EB890D784EA3D660DD40D92CBD1A82F3D717898979CC2472F43BDDD82AE
+26C1201D8820515F71F79CC257CD4E9D867A7520BCB98A2FA756E7A67C5DA7C0
+1E154A813F6F51801CFF42FE6B4F110EF0EE31E786B24EFFB7EE54499894DBA1
+83551CBD5753D1054B1D220722C9E3E541242CBAE69BAC8E74B1ADCD47DCA980
+AE516417976E4A35C1048BE8B57C57E912B187C98F17D57CBC36BD9A87B95F4D
+3D3A5DAEDB69CEF14CCB61CC8B279A8333E05C5C9900422CBEC23A065A82C430
+57D7B7DE7FF43277AD266D82A82DA247347F11530B45FC5CCEDFFD812E1F2899
+3211CF1A860F6498DAA574E9CCA7E3B8A62A005C91C44B4B208211E18CF506B1
+54667E026579D5B9DFA814929398041DA12D5C8E3CB1C29EBB9ED36C21A78F4A
+1288221D4F07A25335F434AF871989EA1ADF66BF82BFE1526E02EB4587ADD840
+BC5F7B674DA2EEBF9ED20B4F72427BF07B747E3E0D1B3EA392AA1A9459CB2F65
+0AC7FABB94EDA1396F476766EBDE13373E6634C80E8A55F102693F88B626A105
+E792E9E6E8FE5CFD7E56396F2CA7DC59942BD2B24A76AB48A5F3CFA245A0A20F
+C8819BA735CC9472233A1F6B17883B0DFD91E74249A62E4881FF52BAE27239C4
+5B546A3F0DF389EC07512981AAD4259377348A0516C496A0A03DBE9B8D80E913
+0B9409A8A60114F66EFA9AD957A80CD3A39CF441FBA577DF847695BE99FBE380
+FA4BAF1A7E503FEFE15ECBC598264D06D86645F36FEE1F7C3D48243AC54CB13C
+ED91FCB59BCD7962781858224B18919D3140133E2D566B3B0C0B8A1C400700DF
+35251DC0760926F45BF434296ECEC15FF79DCCA75CFC0CF739266347BC3DF01A
+3FF2260807A16B1F5034D08E0E9B1F52D8312DC72FA0E859A95051C5B1D5E27A
+F3635EFA042ECE46D7196148E50DDAC0B3300B93F07144F2D31ECEBE6225D204
+DC6C5259CC8E7AEB8A344B53DF5D844C94837AB160BBAF852E65F969D16D5382
+D8DDAF397F0E3B5C98F7FE265C64F2B3E6D6ECD6CA4CC03716A694B46C44802F
+2AAF9B614C97DA47A6B605A078CDA94E10BAA506CDCAEF1FD7507DFA3351AB96
+8A46760130CBDE6FD45C0954067899BEADB86FE9C74E448592DFD3DED05A940F
+4B2B5040A4EE1A8EE47EF57687132F3780678771124AEBEB48B3E4F115098A10
+97FF0ABB367D6B2D9A71920EA4DF853BB6F997093F5ED44FF239F350AD7FABDB
+900CDC1CF94A733CB92859C700E42BE1A0FAB373A29875DE5953BB7DC0F543C2
+200B1EA87CBD8D00E078BF9FEE0B9C21568E71D99B15A4D1187D39E0D8445AE6
+68218D32D03A8EF3C08BFDFA822FAD1D519F7AD74540C7A579E591BDF2EA41C8
+CBB80F95815EFC35FE2A33333BE7EF9868B8F784FDA3AD25D76DE86B942E6A38
+183B5C0CA7256BEB6A7032F87756B2A97A18F19B70BBC8E7CA319D4F13167DE2
+B79117740BE384CED221917C3BD49780D25E82296584B008B0E452A2B644CCBF
+ED9EC70161EAC88CC015B8A10CA9F96E71B79DBE7088EACFBDC534A1CC050E15
+E5D0A080A925E0C16B104C1E9B49E3AA52FE571DD0EE49C108DB1AFF51FD8303
+C62D429A3F91352AE82EA43EAF5D3484A13A20916EF8648B3454C6E8C680DE70
+F7B7F96A97AD1FAE3AA9735F03007F8A1E27E0C073A4EF491EDD0DDC0DA8014A
+C7AA790E618D2D02671DEDAA568CB3641B26E2EE0421D07DBCB277EC53FB4123
+6DA7B87F2469EF030A1E217462BD6A19883C664D5DD5249530421A8815A8D25C
+0669919DE0D5F775E438CD6B173A0BB38BD598D35FD47B1A9AE7C2C0DC25F901
+2250F7F96921F65C44967B20C338FF7482C16FB4F62790EDAEECFA1527450DD3
+4AC70D5712A3760D76E33B2A262FFEFC429CED34DF2B9B0044B050747E7DBB81
+CF45EA8296DCCACB7CA81BB840680AFCAFF18CA3C20153140BD87FEB026C3D40
+83A7785DEC83E0B441BF1C105C1D3E0530D7A8F62CE7050BCDCC295BCD50DD63
+88128BC432E9E69CB99A9D9346D5DFF2990D250D76433763E94F473323BCD1D4
+C5A2D364E489CA3BDFFF00B26A391C99C947B4901456FDBF6B1928E67D57FDC9
+8C8F451756BF2466E0ACBEBFFFF099F504E2FFF16B1B7D4611E3E5FDF280BE8B
+F43398B59D44AA68081ABB8E8061F2634DE4BBBAD782E89DD87402C0CDE4BCFA
+70DCCAE4C3E6663139
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+cleartomark
+{restore}if
+%%EndFont
+%%BeginFont: CMTI8
+%!PS-AdobeFont-1.0: CMTI8 003.002
+%%Title: CMTI8
+%Version: 003.002
+%%CreationDate: Mon Jul 13 16:17:00 2009
+%%Creator: David M. Jones
+%Copyright: Copyright (c) 1997, 2009 American Mathematical Society
+%Copyright: (<http://www.ams.org>), with Reserved Font Name CMTI8.
+% This Font Software is licensed under the SIL Open Font License, Version 1.1.
+% This license is in the accompanying file OFL.txt, and is also
+% available with a FAQ at: http://scripts.sil.org/OFL.
+%%EndComments
+FontDirectory/CMTI8 known{/CMTI8 findfont dup/UniqueID known{dup
+/UniqueID get 5000826 eq exch/FontType get 1 eq and}{pop false}ifelse
+{save true}{false}ifelse}{false}ifelse
+11 dict begin
+/FontType 1 def
+/FontMatrix [0.001 0 0 0.001 0 0 ]readonly def
+/FontName /CMTI8 def
+/FontBBox {-35 -250 1190 750 }readonly def
+/PaintType 0 def
+/FontInfo 9 dict dup begin
+/version (003.002) readonly def
+/Notice (Copyright \050c\051 1997, 2009 American Mathematical Society \050<http://www.ams.org>\051, with Reserved Font Name CMTI8.) readonly def
+/FullName (CMTI8) readonly def
+/FamilyName (Computer Modern) readonly def
+/Weight (Medium) readonly def
+/ItalicAngle -14.04 def
+/isFixedPitch false def
+/UnderlinePosition -100 def
+/UnderlineThickness 50 def
+end readonly def
+/Encoding 256 array
+0 1 255 {1 index exch /.notdef put} for
+dup 97 /a put
+dup 99 /c put
+dup 100 /d put
+dup 101 /e put
+dup 104 /h put
+dup 105 /i put
+dup 108 /l put
+dup 109 /m put
+dup 112 /p put
+dup 115 /s put
+dup 116 /t put
+dup 122 /z put
+readonly def
+currentdict end
+currentfile eexec
+D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7
+5182433CF9F333A38BD841C0D4E68BF9E012EB32A8FFB76B5816306B5EDF7C99
+8B3A16D9B4BC056662E32C7CD0123DFAEB734C7532E64BBFBF5A60336E646716
+EFB852C877F440D329172C71F1E5D59CE9473C26B8AEF7AD68EF0727B6EC2E0C
+02CE8D8B07183838330C0284BD419CBDAE42B141D3D4BE492473F240CEED931D
+46E9F999C5CB3235E2C6DAAA2C0169E1991BEAEA0D704BF49CEA3E98E8C2361A
+4B60D020D325E4C2450F3BCF59223103D20DB6943DE1B57C5188B8F2AEA89F6B
+B9F27709B9A6F7FA0D2B5A522C8FFAC1E14B3F5FD04513BB94F52F432B304636
+6AE8FADAAF2CD49830BAF2AB6E4BE9BD0BBB46BCDF190BD729750493D407FFBC
+E0AF4FF2457B984427D29E386D7D003DE9F46C90DDB2052542599275C0B2AF3D
+5782F71AA076172B764888EE754083308056CE0FFD39135F0CA6359948C049FD
+63EBF553A84FB9B32845354B27A32CB1398F49E0A331193E0A858DD240483727
+07F041E6D75C1378445A58E2B31F146BAE8BE3BBDBFAEF873B44F245604F69FE
+376E57A404A743550B10A450B9C8413069E2E00F0C304EAA7CF987E7F4577A04
+77F67F4B845BAE635E0639F6E98C3DB615F4376F878495FFD22D7A49FA424EC2
+823C1587925820B548400B53B5513AE97A366A87B4FA8C886467766986F80174
+047CEE583365F828D13C1DC83280388C21E7822EA28E715C1C071B4DCA6F19BD
+1ECD540DE11C990D6AF7D52495E5882E8E4FD30B3C4E33BB91B30BDBE07DCE04
+3DA11D0A2E0DE87AA3FC65A92B11CD3F8A601536AC29992E7219A6E21E6F6DA8
+8B98EF41DBC1D19CD926D2888EFB42BBFA73C8ECFAC12E368E92598AA943FA70
+9D02829DB25AB9A0109C6361752223FE5E054C1E21CEF35E48979979A0DDDEF1
+5EFD7BBF989B7C7D3437DBCE1669341264E290646F2C8C564B6640D0DE9ECE1F
+71724CAD66C37C8EC298848C43387CD3F4488229EE5C7E68668B2D39471ACE31
+D502B7C9560ACDE008E84D99FD379D13C6AE62FCA484B7BADF5B8A92E69790E5
+8240C3E5C78A83E2600B0EADEB020DC3A7B2066E895AEA5A9A1E606E14818DF3
+56EFBF8876EDC25C14D6DAA1B7A80E8F667738D8D5040BDCA080A6A284C25651
+40E7A230582EA0204276217571168BF11644A7DF209C22E3748AAD3A90A2BFBE
+8C3BE010FE3BF7932B36DF91858583EFB3BB212E9F66A09F525981477AC03967
+95C70DC6BF8498F80B7F92B748560C07A583B14D5DB2E48718E2D5B118386AC0
+30DB1283D2842392655AD117A75B4425C51ABAE1EE122E68D24A35406B73CC2C
+A839EEE18F626494A7C781310FE182DBBE6EB9AB532E32EA64534ED6224450AE
+25E1C2DBD245F76936FDC8BD65775F5FB281330BE2F7E21E34FCA486106A8385
+BDE975E225E68DCA7CE41C0A882075D128AD32E4D0B0E2E2AAC9F40D272003FA
+C804774131EA9C190CCB741D688284EE32CD2C7790AA683F56E33D571100C12E
+F753258FBF6749FAED4540FD7BC73429B4C9C93BC9D2D482444C50FC35DEAF0D
+D65136129D220DF8B9CF961F93D4D0E6D6B8E0240B9DB73B2B81617E0A708DA4
+F9B95DFFF22A1EB794B5C2F4E7F2159471F9631DD4B7959B8D87BED8B70B67E2
+BF7D6DCD58A336E3A6E97DB53D94268910CC212EEBE18B4898A56E16F97C7C4D
+A34EB6E1E6AA0154FFEBB13000ED9A4DC26FFBF0481D95F5481A72F480EB7A04
+DCA9A6143D19B604F8502F25000352AE50C33C53657A4F6118EE324246191316
+DBB6635CBA9047F911F0799942C5F46782A8EB3F500BCC68948E58EB0CBEE0D0
+9BA12584C79AAEA795F4EFC3B04169FDB8EF672F6126BB7BA9497CF58CFCB0D5
+CD03BB351D07943B8D0FBFB7DEBA03E833D591660F31EA7BA55A9167766A26D6
+A156EAD371941D319D95FBE43260C19DD649BF80B44C9C695EB927095421DA01
+0D422AE17F547FDDFE09D3D867AD4A1C79014FABF12E69A547B73EC7DF70E3D9
+24D5E8012C5ED4917E2A5E7E830573F44CDBFDEFECDB5CD4BBE0C4DD6A458E31
+A7410FF8C89E1F04775713BC812C34E4D22D375927552B305FDE786B14AC3347
+6695364B2A8F5727B3A202ED392573AD67FC899007EE380485384D10CD55664A
+A7D6AEAD020002AD45B46C9273D50BED3387A0C1D11F894004CBC61C6A8A3166
+E68FF692B25063926DE2F698CD0A0141A4685DCF0FC0A785BB2FCBECCA57771E
+7031DAD19207691B2F1A9F00485D746765B4AF02A9606522D8C75BC14998D68B
+8208773F4D2635EB9502DDA4825EC7DD185DD098B953B086C9B9F99E0BDD7ACD
+058E3D2A02DD2B2C6959BB3D961E27D234189D23088DAC6B2204C4A9E0F76DCE
+394E2E4670346A37E7FA9402E40C20F3C40138C6C7CC90A5A8B9ED3104750118
+4AA57EA814ABC985B0796C3EEB88017C0F69BC5F268F7BA1B700E75A851B79B4
+FB5C715F3792340341D74B45D70D1651814D8847E02B814D47CD8172EB87619E
+5D66CF55CF11D1A877276DFFEA9028B507FA173E1A846D1C42C9662D79766315
+2619DC94A4E331F6B70E5ABA692A96E842D43B05362DA4546427CB890123AF04
+93293AA38FE8CEDB20D325E4E820137206A23DE2E8E3A5663638F74A89D5563E
+1BDA0CAF151F6BA70C4A22AF26E0AC3F2B9F8C45523A53AC4F25A2389F4980CE
+44A118CF1679CC860B075EBE32E52489F75FD6C747BE2E6996714FB61498B05A
+66C01A15D93BBC7C745CE0E923712BB3BF889239D7E9FA4CF6BFD3A48ADC1B62
+AA0D91BEC7F7C836F2AF0BDD8967BE0D63C5EBFA9BB4545AFCE1CBDE408F5DDB
+EAADB00BE93D21DCAECBC937212E64C17C742B77551A7486725DC5B6968B89B7
+71DDC6FF46B31DFE19C5F3FF92CAF32ABA409AEF643E4D8B672E5A4AF5923B10
+08389AEB65A68D4DDD8D8034EE1345D4A357E27A3A0CFBE376748764598912B1
+D29B80102831F3EAF20A854F9B13F3BBD61F69605AEC1B6ED1AB066F8A13D87A
+63A4008A3EEDA327F8541CD5F105D8A5EE4A79B9283820B195D8CEC1E00116EC
+DD4276E99B39A38EB9EB7D2B6FE23EE248EFB9095484930A1B8E68FFE5199643
+D9213A1789D8068E444F4814B88B0389D83C9F1F29572BDB7FFD034B33DC9AC1
+D271CEA82F4EADA3BC91F9E5E7DA608D8567EB4D8A605130E0045F722AD3A0CE
+CDEA22B9CCA878E88EC5E9C8D0B6142B281D99BF7F32D1CA8CED728DBE57C270
+D3636F62D06A97A245B5E7C84BE2B15987A2A4AAAB7C54479A14669B47F26C54
+034F20C1146AEC8295F995C1AE7C03D11F7257BE65803D8582ADA8257BC27F4C
+0459D9B41274267D50CE7C88C42987631D29869AB4EFB1F439D8808BEDBEFBCD
+DCE341F58196C6BBAACE9D924671C1B82E82CD6D394FB092FAEC820660D09767
+F14ED82B17FC5C7AA5C376A63AB05A4B4C6E21FC5A76185D3038591334DEDAFB
+D09146B80D3A0E5D0A171BD83313C9C49B569F42824FC8BF2E1C1DCC8B126E17
+FE92C679853C1EA00FD376A7C12142FB7EBC911168F98BBB77CD5673D038BED1
+677A498EFD3AF478A0E9F0F468310BB304E38BFBA27E35E329779BF4AADD96D5
+7D83517EB68BF45DEB72327924F3DF5FB0434E153C2B4A01BFBD77C6F1DF56C3
+19BCAF94457B781EE43E4F1D69434D96475880591A492100FA85E6AC6BF70299
+3FDCC4F27C49AAB1C339A841A571CE65C1E6C1133409236C0B2AF151A423E4FF
+7C84F42A41E472A5B18EB93DF182BBF8675AA3C0EE971808CC67B83E17FFB475
+CD041D9F5C69F907BC2E1699B9A516E048F1778C8EC1C50E7455B9BC6802E871
+E6EA5B6D6E92BC0048BFA7FCCE18DB433EB037D7D7081F00CF4020C07FFC871A
+C486338D2F8437040DAC75AC1E1114569C60CCF03792360B420F195F2383E51F
+D028FB342CADE9A8B13099A21C2603C7859188784D857D4950F4D82D15F025DC
+6D015BCB9626AB339674589595384AB6CF067820E908493AAEEA2F16D0FC91EA
+C797F6BCDC5963BA1B213CBC050661C84334FD7E643E978594B2E9979C25A9C3
+AD0F3E7AE0445CA0B106C97F962E5B314050AB826F8D01B3C3CB08E3795FAE53
+1C2E0D7A174A2A968AC06A53FD98F807C38CCB35BB57C39FA945D27153CF8C12
+4DD344A2F1FB3F777834716CB86D96C11C1BA9E1CE79DC7FFC1520067CC76AA8
+E4CA100D74C9C26DAC68F6E16C84365B8EB104CD382C5188423A3193C0BAF143
+CACB03DC0EFE64611C71C0BB65C2DB29CC8F9DF85B05CE69C685F54AE506DE41
+7225D2C3EC3021219C84392AE00D862EEC9D4FFD6E520E6245924A16A58D4B9E
+7050013BCA1D24C5C9FC8CC596220BFAF8F9A58D53396106230DD64C19F561A5
+462741FA6B99FC44A23493489E5DC251E63CF2A5629963F356789F78F3117F0F
+2B22F7EFB47D93B92A16F5951DEE257FFFC7E6F8E94BA6E73B3F2216186F3612
+4A276778340698C5C12ED370CF2D2FBAAAE66579A85351B509F73163C459C002
+0D6DA5E9018D6AF35E978779236104086149F79B914111202708B4FB7558F098
+4EC8C44BACC28CC8F20CA53726A73DF040976341CD72FFD434670AD09A62C5D2
+873E0A89A16FB8BB94B25FAD9DA42549758FAE38531D1BF13B2D4E51585C8E9A
+EFEACF6F368BD564FAC6784FB264BEFEC0C133A9F6AE59F53EEC61F03B9F6D46
+17E615CB7AC40DE1C29E1DBF2515A6462CE1278AD5E7C7D616B4D1F61C4092BB
+83FE68173BB8AD591B189106C69F30CA946AB505B955148A9C64F7E767DE1D32
+D19A9CF799F2F005D7E3D912E8351373CA6926D4D9BF2881198F3F92508B0F1C
+9E32E86304261D57A9FB7CE2CBB1DA95F42C728E876DAE97175B7684E1DED2EB
+F6353EF742AA647EA82CCBB8213238A4498C652B0020BBE09DF9248D2B0D7939
+D5D99B1AA7CE785B5979EE2E1EE199856BD2E03ABE8F2916C2A3ED3895AD6F32
+5B3E3C46493C37014B6F339268080FD6FA8B5CFA5527FD21AFF7098021762797
+3A3B7A778B16C138719535225E1C0FFD38E1DFD29E5128442D6FEFB2A9DC568E
+CCB4F97F808B485303A3DF9A7283E14900FEB5E75A0359E9AC87BD47B4E7DB71
+1D155DAB0441EB966240B3FA2F5AE8C5D6C61E156A959B6F0E1B104684A51023
+942121A09D119F830D312A3B23AF98AA065BCD631EFA0BB945442CDA214FA193
+995A49B79600D2AE25085BCBF58BA6A663037FAC029B9D75C7D3D862003DC968
+285FE22C8BCA86583F305C4250442843B2DFF5CDD4736168C668042864DF6C89
+F9719A52ABA0C611F280FFEEA603E4B9C8EB744D1542EDE8BDAFB30740B09788
+E825C550291039A4020367130E66BD2B8E1C04B02C1853F37F07FF529394D18B
+01106058E3C30412F79FF5E4DDC9CD06C77BEADAC904432DCF41C2667E85F89B
+E980DC692E1E396514B6DD04CE197D3B6BF3B059F0F74CAB342B984BBCA7551F
+A19EC31DF2A8F2923318A74269024BF26D7AED42E748B6B67721CE33B2B27A0E
+04C1E92E3B3F97BA524DB97E9C6D3291231DE3D48F7D78A6CC2FD49E98117A1B
+B39418F0DFD8FAFE4A374B337224B935E2827CF69102E30BDC6DE8448562F813
+3AAB07044FAF7324EEBB01DD182969963FE036A483EA0B5EBF59A52200685EDC
+B733F81996FF22E99E772495A82AE6CE4BAC947B819A9250C1E7BAB86C06C3D2
+C9180763BAE247CD41EC46883DA3E98C2C947A2F2E515A0C9593CBC5B7D6CF08
+AB2101C1209AF33851314D4578B0B711888FC3BA0EF3A9480FF16B1DEF59BAE7
+3FAD030F9F0F81014B0960C2B234854FF290473010B011ED96016519D2A3AA57
+5F40CD98C367DBA14AF270965CA1FCFB66295A2DA89F0FBB8AF87B013760D85F
+BD03F8AEDB62221C29746B7195C88D777EBB552D388D79F98A8472615C06F4D2
+DB9045B66BD7CF4A984C7C5A1642FBF92C821B9E74870C129F0E76FB23B27E12
+E88EF9194AB96BEF8846248DE86F31E6DDAD25BB4F86FE0E024A65FC6FBAF2D7
+E172453E3F9C5B5497C10045A0683BB3DA8B5A4EFAEEF4631E9E0042227002F4
+D9025797967F9F143189F30F6A89B4B26E4D274EFAA19677ABE18F75358168F1
+5D5106765AACB1F8338C0A221B5895C660D68EA1864577F8D3B2BD2FA3B7EA21
+A604274B6937DFCE6EB90D0C6F87D987DF0F7DB37E3219DAEC27C500B705C2A1
+D635405DDFD87C99299249281210DA7D0CF6C519389ECC166D99EC9C11EE000F
+96C180A20466E4D9D3F803E0F9562AD09FE2289B5A0F72ACDCDB700158C150B0
+01BC38D269742A8B62E8C005535374F10134162AADD690D40556FF6621E41001
+D530D47D29CB33294D0CD50A4428B8C74C9FE425DF4455A7B283350A112C7721
+565C68084184AA06B8D2FC631080885DA36A9BCC09F8C9AEB8C79D72C2DCBFDD
+BAADF34FA92449ABAAF510196620FF6693E252D31A6C2A4ACB3A198FE3278A25
+2ACCD4B665B5A62CAA65D60C1FFE196825927C922EED2EA130C945F1502263AC
+4D364DF0476BD7F79A6F7B75E217155FB7E9E5CC967B94ACAE72455C709DA98A
+0BA10E1F8851355190C17B6B6211D7610845B16D0FDDF9E12F55FFCAF2CD677B
+FDF3BDEAADAEAE4CADD0334DF5CDA9C737C3A04CAFBAF6C002C26CF29895C11A
+0C744C8738D1A720716272B4025DD975523DA33FC0B4EFBE48CE761B938D9530
+643C26E779566314BD72FDE97A88C62A94B4FE5CDB88C14952F739B5030A2A5E
+ADA78AA3EE7971299E4FBB93404E91DDA9CC799933E7C3B32DC630FCFA9C4F48
+B42B33DD10F5F23B79C539B5B0B645F34DA8D8DF9BF2A052140CD52CC5079D94
+33EB60C17ABE3756BD28A384D91BDF9D655FFEE546B49E98FA3C48243C291B6A
+FC5E352B2EBC82E2104BF7FF5B158847DF59B7B18CF808149DA8C6E55F357E22
+9B78BA28D7DF56A0CA7B55BCBC04307B5E2C811BDAC9815F70DC7671704699EF
+59855418FBFDEF36AE436B74A4447554B39D9362E30D50597C0061C1E4BD6F81
+5856620DC330EA0FA77EAEC9E087341C4BC808CAB056591CB4C5EE5DE3E6A198
+F86A0081801F197142D986047DAB4677A862AAD48DD9EC4BA033FFB00DDEA8A3
+6D8BDFA7EBE4743BB134B6AD5A014B084978DA46D117CEE5BBE5E0BBDF13CB5C
+EFFB4762D2400E5C0E15DAFB986DE0639D7547EC244B38F93EDF3D0C359594E7
+979A0E908E750C7C6BB9E65A9179CE5F2666103C493E84B165A3F08DA5F214A8
+A5E5B1ED447635BF3FCBD6577968E01745F81983DDF961336F79A6404DE6BD1F
+DC9039005742F0D3C45314A7BD52FB4E16727D439746DD5500DA19E0F89914E5
+73E52CE753649DB28FD70F7AC5726BDBAD3F715FD3611D9D27D304E2BA58C32B
+BFE69F9836D0AE72839A4B116CBDEEA9CDD5D6061782BBD53F7905B98A587AD7
+31C6DF8F3673AB9D6F5ABB9376D78137E8377EECB661B6CC8418438D510E6481
+ACC726178F7B86CB1EDD6B12CFA3E0AD19AF7096B7E75B753E06981B2BBC4BB0
+8F7BA4495FF84A571BDB84E280EE393419343F2FD0122C2D6E3C5DD7736E2374
+E41140B2B64EA6AA25D2D198799A2CDE0E7B3EFE8534815C7AE82D31577E8BC7
+73645A02780D46BE9F62A701B585FDBE40A8FABBF35A757B181C4F3070F208A3
+F3318CA3076C2878DDFD4BDEBB547BDBFECA4D5952491768306465317CB31A97
+DCB565FF8391CA4E1FA19533D7AD57332BD149910417E3E2025C86CC62591C4E
+F3C3B0A8C9CB69C788FFEB3945CD080EEA26332EE79D87259B08AD2CE83AD63E
+E90DA927AFAEBE9CE84F7A22CD13DDCB7E75C282537ACE01A31AF410A6ED11D9
+D2C6B6AA40D7CCAA092E9557F905DD1FF4CBEB5632AF3BF5A5898D94854212C9
+219CAA6900478F18909A10B834282FF1810458E2756AEA0AC692E809E0C72380
+B9AF1D01183DE5B1F2620B814FA2A23BC572F44474CB357380F46FD0BDC3CDC3
+016406B2BE245F88EC70E89A7B24032854B34F5FFF1B2283621D7A234D7EE7AF
+00BC8DA24B5DBA872B606D8DEC5A97128D0C9D92CE1AC3301B7E99A4A14404AF
+24867A1965DF6D1B4F7AEBAFD456DD376E010D766FC97B5256B4388BE0BFDE51
+8C3F79BA7B78FB84A35038C7203E82A1032486E7CD2BB3D24362F9F107A2291C
+550D20727A7077524AD6E91FC8F8A5176266F5B239FC9178B3D7790605222D2C
+6888EF23B977FDF3716359BD33D9DA95A07C349B6378EE8E815AE8A29BF80635
+978BB312BAE3A1FE6A853F35F81F5807BCDF3DD0DD915765DF678657B34BDCF8
+DF5F77D27542FE4FDAF81E1F113DD4256BE6504185EAF8D48F2D1C7AFFB286FA
+C18078C9EFE517926FCBB34E12E947B51597D0054C382800C28AF3CA81121806
+8C3AFCE0E7AC29F69C367F0DD4D73689183798A4A2605095672AF752A5AD8F1B
+52BE124FAFF443C0A979D48F768640F7EC9BDC5E27B86B5AAF00C4FD7FECE560
+A28F18196602A9C633716B282F736AEE1AC7C085CDAE56909D0EEF0D6E9DE7C9
+BA76C58FA2320AC909AED2A37F4A0C3EEA0397D31E8935816884A4D4375F94D6
+25783B4350FE523D48A9581B1B04DA19B0481FC764E9D110E76A3AB8B3C9BB5F
+F4610FE0F1BD55DB485F2AA917C92CCB460E7D37F4F37A97D2838D6F2EF33BAA
+EEE7AFE0EB5E4A97080AE32BC9D7A7AAF5B4A911DFE0299697A1BAA2E2021471
+F9FAF63329CA8A748FDA76F33AB217E02F991EB121FC7ACDE9AD09ADD254A539
+BD54EF2DE78638766D00374860AC346A1B04E66531CB39E72539D5C448D7ABD2
+BF85796178F3D538B22A657DB1A73202BB5BEE4F4C0F8F6292B9D6AD5A07CCE2
+8F698AC22E15D59CFAD9A241BCC92E0E626AEF281794F6605CBE638D9A975553
+88C5791F67BBC082BCB1677AC85B8BA3C3BD68170A43CF460D91933BB3E774A9
+83646D734F25A05337C817847E8108340C15413F21EC8651857E1DD1AE553233
+78F1A9D14A0C3D488489002787612999F5C926198C1EBBDFB58981E4678DB69E
+968D3E26740CA6B34681D94A6F86EB47B0774A07C87506618B6A594C0C327858
+58538FB98569D81CBF903DCC67C0425DFCB6FD6103A376AF0B6CFE2465730AE3
+3335738E31275EED4A3DBF11AE49611BC59B3E8A58766DCC99921AEF87C5D6EC
+41280B22A6C1577451835CF93C854D591080DE9E5083A71EFC7B78C8FA849E47
+AD0ABD10FB1FF4B71F7E19C832600F6BA44658B30E918B35D9FB591E623D3894
+800DEB348D5B01FBAE8AD6BA5CEFDC7C71193AF9F563ED20950A5F7CA95446FF
+EF897AC428BE64B4C9E04B8A06F4C66667E59500FC762C7ACD8762CA6AE2C6BE
+AF8A24DD10875C11FF50BCA57A05ECEB5E2A3E774C1914BDF741B066C38AFBA8
+A39D5FEB14399A4F49C93BFDD036003A1340991FEA4E096AA7DF34D58B8B0577
+9FB2C1A016EF7F47A4F92A27E7B8C81C7C6376FD896173048B632C51DC72336C
+8A98CF93D9D3B936007286F09033E3BBA631A61C5CC32843A422EA3151198413
+923C8B77909EAEC3F67A6EC26B613791D19E2773A8E74B38DDFEC1955A363F5C
+60FFB537ED7970A14EBF4194CA6FED6957B8E879A8F39EC3EB9B6B92089A8CBE
+1728F8225A369622A49EB0F3DC773F609A8B35A4C30B8F476C9C32C75BADCCB0
+4AF0FEB0CFCA9773605C53B6933D27E5BF8B32F8D4ADD16D27F5C77D0C119A7E
+93A5599B2DDC1E9B286BC4331FFF110D194FC97B6C4139ED0E59B4EE33AE78D3
+03F9580A7240773FD4886B8A53B4458CC771A939936C826CFFD6BF5FDDA48658
+F07C5EF30CBF069EABA181B7CF0FF955781C075739254A28D3F42E32EFE8220B
+8F12C08202262C915E46C94F31CC6FC594743C2585D7734AAA1E2FEB44952833
+D69D6072B6C7215124BFFDDBC8E6BDFB6293C58A259860E294B4087320D48073
+484E9829FAA3D76AAFB3F51ECB6D8F6D728FDC7EA62E2B6AA5BE11E125A24D4B
+41A563F5FD5F337C0BB000CD6AA2B40AC493251828275C01A7B9DC4935F7FB72
+850082A78DF5FCA160E0B66805C456C13244BC022359678AF4D4F5E798A916DE
+1590E2ECC094D4FDD08038542942AA2F982A16F2DCF16308DEEAE61ED0072AC6
+AF65E421861F92CC9384137D60CD94719AE7107C1FF37D09F4DF20DD01A930D6
+8609B5E6F336A5D25C5C57AD2BB211708D66377E362971018F07189CD6E5C37A
+67E031AC6B245089395A8535258F941F1BF136E8ADE93E6D96DA8775BDF2F709
+F583688A1EA37037A595DF21C5A1DF42F4ECED838FC539356FA37E66B2720D0D
+008A94847CEE84C9B4491CCAE520A8F3BEF8D806E9972B8F5DE0C3C3908647BB
+98DB4F8E584CFB2E3F56948DCF234087D4919CBB17B58F257DE069150004A57D
+0EA4C4E6ACBE2657BCEC962FE180F3C3B05483E233D4E2FEEC99165A7F32EEF9
+09290D0DBD686B2E55D59A4E9BFD8EAD32E31B2BB022DDC1C488CEB7A26357D3
+A7103FA3A5037403B8699A49CAC103022C12DA15BE756F9B5A1568559E25AA3E
+52095B038E49A065792AAD0D59824ED1092825647103EF2765AB018388B41DCE
+491850ACB8EB6BA556575C18014C2AEDE294FD86F7F83A3FDEB443BB77463A73
+54641965B392113A35F9BE3D7E08F32148FD0784CEEF98444775B8FFB4269242
+F1FC46C861EAB08F30E2145C89A639D4EEF7C0097AFE49BCE0EA1EF81CC7FEC7
+4E681619CE35BC1ED9396D376631588257CA5E4CAD4773FD2D1592D481C3814C
+098B38B635602388CB3416B9CDC26D6D80466B46EEE3A3A17562841049A1CF1D
+D70694AFD04E06A0437CCC8CA3029957B822B04EE1686F0C060F8378CC82FB11
+47AD6B6C12AF663B577F9952567EB3C1B824F80493E6B67871FDFC1F67416441
+93F8416594EBC5826F6B4B95D8AA12E1FDF5D6FFB55816E241B1950FF29DBE96
+F5A29C234FA7B826F3F9260291BFF6B6F1B332B7B040A71357DD6F09C5FD3FC7
+A6AE1AF88AE7B290DC1A87793D6AB0F8F9F97DCD20FF27073856016CE95B8153
+F58DBEE019FB783BB7CC5E16FB111D32EC7D58784D566BC3C83E25966BFC5869
+2875BC98337A5CD121FC2311EACE309AE4F3379EC8FB5AEE2AFC5CE0B991D90C
+4D209304527D6A0755FE79D2E1CD9FA87EE4715DFE6777D6E374B40F2DC3FE66
+8A86C3D7D1E5048E5B80CF568E44766BF999EF7A4B73128577D1CC314ABD6960
+79434623175675A129717C659522B87937D3AA3805C89F11C8EED629DBBAAEB7
+0E22711F72EF2E8BEDD2274F6C6E1BE8A7BFB02BACF56B792FE8ED64B791D0B5
+D9DF9179B9D291FA7162BC9278906D9226AF1D67BAF3F6F62F07459B11D32454
+6026C113070066F3677B915E598F74DC6E5778E312F8BB2C1E946A1532FE7805
+32D8D0368B6636EFBF6F687AA4044A88B814AF4F35C50FF9FFF60736B58295B4
+9E3509F6DF2E75E9AF91D6EA35932C2D78F65659BCBF0246E418733E6D8286DB
+9B97A2B850E9F51C646B3120376EE6DE4FF05B841379F0E6C96345109C5A7140
+0DD849ACA65EB7CD159D0B1A4AAFF9106ED815A1597C158E620ED4A606094959
+5BBBD309F4DD5FA5634C53F172782DD114FA6D917C46BE68439F235144022DAD
+54540A85FC114554519E29931BEEB2DBCB28FF9BB90DA4EC92E98B552FC48371
+6299F9BB8A1515E12566CEED2E44CEA4B4E8711E8583E3AF83352E6E8CBD8333
+66914BBA42A80CEBCF5866B166E3F4C323F8B698E0E286CF8F67E8BB47F937B0
+3A8005F1E246FCA0E8962C0B2C6124E57C481DCB7E5E465A50B2DC
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+cleartomark
+{restore}if
+%%EndFont
+%%BeginFont: CMBX8
+%!PS-AdobeFont-1.0: CMBX8 003.002
+%%Title: CMBX8
+%Version: 003.002
+%%CreationDate: Mon Jul 13 16:17:00 2009
+%%Creator: David M. Jones
+%Copyright: Copyright (c) 1997, 2009 American Mathematical Society
+%Copyright: (<http://www.ams.org>), with Reserved Font Name CMBX8.
+% This Font Software is licensed under the SIL Open Font License, Version 1.1.
+% This license is in the accompanying file OFL.txt, and is also
+% available with a FAQ at: http://scripts.sil.org/OFL.
+%%EndComments
+FontDirectory/CMBX8 known{/CMBX8 findfont dup/UniqueID known{dup
+/UniqueID get 5000766 eq exch/FontType get 1 eq and}{pop false}ifelse
+{save true}{false}ifelse}{false}ifelse
+11 dict begin
+/FontType 1 def
+/FontMatrix [0.001 0 0 0.001 0 0 ]readonly def
+/FontName /CMBX8 def
+/FontBBox {-59 -250 1235 750 }readonly def
+/PaintType 0 def
+/FontInfo 9 dict dup begin
+/version (003.002) readonly def
+/Notice (Copyright \050c\051 1997, 2009 American Mathematical Society \050<http://www.ams.org>\051, with Reserved Font Name CMBX8.) readonly def
+/FullName (CMBX8) readonly def
+/FamilyName (Computer Modern) readonly def
+/Weight (Bold) readonly def
+/ItalicAngle 0 def
+/isFixedPitch false def
+/UnderlinePosition -100 def
+/UnderlineThickness 50 def
+end readonly def
+/Encoding 256 array
+0 1 255 {1 index exch /.notdef put} for
+dup 98 /b put
+dup 100 /d put
+dup 108 /l put
+dup 111 /o put
+readonly def
+currentdict end
+currentfile eexec
+D9D66F633B846AB284BCF8B0411B772DE5CE3DD325E55798292D7BD972BD75FA
+0E079529AF9C82DF72F64195C9C210DCE34528F540DA1FFD7BEBB9B40787BA93
+51BBFB7CFC5F9152D1E5BB0AD8D016C6CFA4EB41B3C51D091C2D5440E67CFD71
+7C56816B03B901BF4A25A07175380E50A213F877C44778B3C5AADBCC86D6E551
+E6AF364B0BFCAAD22D8D558C5C81A7D425A1629DD5182206742D1D082A12F078
+0FD4F5F6D3129FCFFF1F4A912B0A7DEC8D33A57B5AE0328EF9D57ADDAC543273
+C01924195A181D03F5054A93B71E5065F8D92FE23794D2D4350D67F24B396427
+8808B79FF5CAF896E4A8A31E46499CEE35E6A5AF0CFD175C2DD628620C681947
+A02A01D3C2B715AB79D7FDAB638D887B77DFFEC5C3A9484104D84FCECC7296CE
+2A3488AE246E233A8D5B40ED5DCC44558B77422BDE47E0435F960EEC3A26DA9C
+E137555F0638511AAA14992C8DDA9A4A11B3F90BD4DAAD1883BBEC357DBD8389
+16EBE2AA8F93C2AD44F383ABE13B8C95B240563FAB987EA98794D301785E1E9F
+03DD545E51A6D58B3618E0750208D3AB913F9CE8C3B865D4CB83B90FB24962D6
+142B0204A1E271854F903A2FF600E087EE2FC222326051F155BE709B3E7A808A
+487B8AC3CD7D2EAB52C2ED68285F962D06677C2A5015A16B3D12D15D658D89E5
+18513C020222D1A995EA14D7D9CCAC4A552172146B53AA4DCF6DD217B61CFE98
+1E14709295D97DC8B168AFBBA9990F0BFB9F72A5305570A1848A9E2CCA702C77
+DF4F414CDDA4FD7DA25D9B09F05A77F37F1496F2601AA5FBE9B52C1C16FBE860
+A3FCA20DCAA3BBADDA16304242A306400D2BEC9BA12788A5AE0E0CABDCF565BF
+474A615DB6A14695E6C7288DE0B852EB91153F8A337E66DB5CB43E8234589F00
+4868530A5216CFCFA0DCDB92D6BDB092855E9BA80682D5679EF88F3152E8C2B9
+E38D0D6F26276BC74B8664E13D4B388124C88D19FFD2448E2743BC02AEB14694
+1AC48CB776F8526FA416549A3C35616E8FA5632AA0D557B90C5CF40BE1B62325
+97E45F7EC4F04CBC178B72A195912CD18498098C901CD35834FD6EEF765CB292
+5A753BAACA557BEA0AF989BDEE0F0C5DF8177084AFC20E7A78BFA536DC28E9DA
+FEBFF50E908CA6B5DA15D3CC28A00DBFF8A1D7FF0D82F2A397C0B8B23F959C99
+63BFBA5FC83D7F51CD0EA2E2C925F7F4AAEEC8A0483F50E02E4C0373FA4D7891
+3EDAB498C44A259B6A2E3E176143C12E25C7B880E2E6B96592BE77AEE1190C74
+35F4BA28952C002AB6B3A4B0BD9054855CBDC143CA9D20D20EB111A030D1C979
+86BDE77F3BB47918F4A456513EDCB90B7CF72E97296FE07F51D0DF8C9E666024
+69C209E6A4A5343F3DEDB6F09B06297505F8F8AC2AA857DC545E030DC9337FBC
+E48DC186C5DB047D0FF564B444054F7664AC72B7C39F39959BD574C099562FAF
+9832B2260D4F1E9FE64F6BE5243308B57499B6220EB4431A53E8D9A3C6BDF5F3
+8D7EA0754D363E897EC68D7E45DB4635D3E7D7176C8C364082D1D6B00D9A7AEE
+5E978FC3AC4D9D73E8FAE3086930DA11497F8867E01CAE42CD9D7D1558DA4694
+48501C4729614948B9DD2065E5F13275325302C24E28A22AC2F33304EAE0A317
+FE51288D91EFB7AF68B8B9C3BE1294CBC390862BC28463FBBD62A32E0AE3344C
+5F96E2343E5E1662E5626C6014E1F0E661126A00E1E24A4F7A2546C37B701BA8
+F18F93372B48893E3C0449CEA14D228BDB8FD17256DF2FE0767661F6A3972DA9
+33C746E2AFF1EFF2B44159CFF6A570C10260751299D8A30A3BC19239C9FE0DC6
+BAD2AD2558223FF4CA1B672426EBC422A12514F67D9152099848B13E131C0E90
+9037A6DBEC1CB183720F78C37D5EE5BFE81FCB2F615A9595791C6F56210C84FE
+62FF6F5F15B866C686D8881212D7B3F4342FD09FC1E4874D35DCDFDB9D506D5A
+06E5DB61F496E70C8E8B145B9BB951B2160B6FE86EA7AC1671BC40CDD866A9DB
+3103E91EB483E5BE3C037F2D2388A44D8154B216C433FB85231DA4F55D3D4A8E
+7FDA4387923679067F13454B02D9F2E2B030FD62C0750576F32F090E9A054DBF
+4BBB729B94162C080ECD81F2DB2BD1D65C1D50CE414D0FFB4C7E994B65177F04
+E786CACF71A5690F62AE3AE57F43247B8392D2BBD4E61262EA0CAD3868F33296
+BC7002271448E865DED4324FCD923313969D1355A579F918E6225955A2BD5B7E
+C2A0E02809102F295895722930FCCCE6E8DB301635221B57FA589533C2C3BEC4
+9B1958680BE6102180C667E4984C7B9250C5BB231F8E443B98EF07FAE3AC29F0
+B4CC4BE8A3DC0058FB2CCEB90262FC959D5ECC3A887E10E1E43FAE7DFBDE4882
+BA9035B38BB0F69F8659C0094EA643DEBCACFC8EB5C73AA25A1B83B2DA2D1D47
+29A27B554BB9A762D020EC05001DC8559E096F82581B248AF95D6F12FB73E4E9
+58BFF246EB803809F561F8E17E6B1B7B1472FC342761EF29FA2C3890FEEB96FF
+6B1A173A74A2A61837BE90AD9574EFD8D65602C63C560DEFBE5F0C1F8250E66B
+E7A8C1A68E8445CF67F672E2F11583F70E77F479916339FA7E5672DFD1907CAE
+45A5DBD35C535D903442EECF453495A6B256DC635941A6781C426A2E12BAF3BB
+73C147A74DDE4925D642BB73D9F2608554D967A0944D38CB29F984379073F6B2
+77301EA7AD503121EAA1AF349D72677869515D0E537AD762304A6A5CF31E8431
+D053D4A1B6C03A4DBE6BDAE2312FBC65F18FC8F4AA546FA69D09DCC722CEE1DA
+E02B6F69B69F675AE544ACAEFCDE959350E1EB6C45C162E08E153D1F3151AFF7
+B539D0834CA4B87B06732D5EC077B37373348A5CD7B39811286092ADBDD86931
+3F6867AC5D53E565234847205FEDC23BC1E1166CA113787DEB72AC251FE7FD1E
+250557284E533F3B2DA3BB22AFF13428D2537BBAFB70734A7FDDC68AF58A9D3F
+DD456ED2E4A0A89C6E22080101412164A955748ED5E689308C96FA5D23D63513
+5B8890A57983C9DAE333B38ADFE356C6CD6BB865C493151B24B9A1FC4D66C491
+12E8637906EBCBD60E76227E8847112135CE4FFB00B396FE3DC237292B8D2EA3
+03B263C1B6CDA2719C0D99B6CEEE6C86CB397C4D0C058BC2EE9D6298612D01BD
+31531819BFC228868453DB8EB836AF2394D45A222A21EBDE795E558E84A277F7
+D8591ADCD9E16C34201CB0D0FC1FE62FB107D53DA0D95F61A9A55585A3D106B5
+48B258A35D3AF66995A9DEE4312C0DA4C91CD3AA7FFBB7A5278FACBA05E5BBA0
+F936BC210EA4E107EB883DEBC83BBA0798B665F2DAF2BCFC00D524930B394187
+4712AC73DC2F901BDA21589E9132A50B6F16FE8C6153209BDEEC9025C3C24035
+F8623B3CDF420E064D2D3F1BEDA64E39C8482972C96B38BF7D25C1025A9DC57C
+40BE36086161C419BE1B0CB4B653DB07FA28934C41AFE90152A14AF2688FB6A0
+71AEB8175EEA7775C13F2B7C598C30E91EA8DB07ECDDAD64E40A8C8FAA3ACCAE
+ECD1296AB2075DE150F10502847E970256A70B7329834B1D80D40AC5C8DF55DD
+E3922D85820114F898F87E644EB8F460BFCFF752B635B6D08F46AEF2123A2E86
+913CF1B45DD2D01B8E560EC04230CC8DE7C78EA2970C224B371777430ED41B02
+63C87C9B29161341DAC785F547C2E6256370BF3BD8D7AEC72F6F9A4BDDFB6EFD
+45AF0A366B9387A4CD9164326B997BCDCFFE0D25D88E22888889D8E47C5709F7
+CAD17E0DD435B20E767B31521E9E14ADE57C7C9CDC2FD7D09DAF912F6C5CDC34
+6362133B50B8E5954814EFAE6AB8D004AF3CBE097BB0F61FDF1E10170F4EA28D
+CD93B802BE124A435403D3BAEBE8C1131718579194420AD650A3986AF9220363
+75155975B60093A9A6CD171834B2E39629041BEDA7CFAC7BA6411A206B09DD78
+CFF14E36304B7FAC838FEC6E4AC6847C6CEC1559B41D81383017668DD230C98B
+C317B08B199C270FEAF50868DFE6AD4243EAEB67590855074A248CEF8F64DB80
+D5CCAE6445AE92150058660E861467D0CECF61DCD5D4062CE9DF07CB098B90FB
+6CB59553A0956BD6339CAC2FA9C519C46AE9775672DD69D33C0E6D7F626EC2D5
+85070A68A450227CD535911F9E0CCD1BA379C750CD10C4190EC8B979C1E4ECBD
+DE2836E85616406FC2DFDA7E27A411276AD1B3900453DC3AD85C7A9BE51CCAEE
+315E3E5C31F8E6962721DA166B9660C8087C1F1ABD77950E061A2D924FBF4A89
+3FF5C570ABAC5EED011D2BF94BC1268EE4F2A2CCBCBA29FBCC4B186A3FCDDDD3
+B462305EABECBFD279C9860D5E490EA63D9231638E06EE8D58EE6E926C4A3D3A
+C5E957A20F1F99FA05C43BC4D1918DA051656EEF0C498748879BA4258DD73CAB
+0F32F20B98014C2B14A77186E43470F0182828955730F440493D34B0877065A7
+6E7B704B27F93DAD747DA77109C541A15F08A694A703E6E7C62BD0A86331EE79
+6C18A6C38923B88BF83BF212C76BA6EAC620CC859F0365F5511821261CE29DC2
+BFEBDE0CD36F0052692C9945077CD606E4841CB991D3C3DE9BE28EC7CBEC2FA6
+75984071CFDFA8857CCDF9005AA8FC549EF295DC701260CB4A5CE8FA0F439B22
+BC2C19D3C14E7B2B6B41AAA158659C307D9C91C2B12331BE152D3EF8FD324B9F
+8C3B74D553AADE2B0E89805F47FA2DF36766B8DF01CC2B6B44344BF4B11C7FD3
+186662A11137448ACE7D3F4CA515E0BEC21859D2BB5A25F67C48817404DFA0CA
+7B3D11495250150C6A1E32B80334E8F5C52D4769C8BDF3E6E3DA4FF1BC97E009
+A1AFD195205FC741837F21CC2942CC8322F3D6AAB6D330E6CE120E1A15E91987
+AD98FC12019A945B215BC72768F32A7635AB0F0E6E185AC7099F1A0EAEEC5FA0
+341EBECA077B25102310331CA87B74345506156CA5E853728217608416EC8173
+2D24CEE766E2B3B0BE183CF2A8B794E0E0E91C11D59B98DF5F4E5EA119F197B5
+D8800744F9FD45015FCF5E740105ECE72AB5AB7E1CFEB15807A0D1CDE00A44AD
+E94EF57AB546990A691FB2E24CB55477B7FAB6F12A28676DB7ECCC014AC70C80
+9199E921F449C232EEB88268A48DD86FCFA2E29FB450FEC618E9E317F4AACC68
+C51EBDB1B9E43F7574B40C0EB05E769D30F1C172645006D799E8C3D7C79DACD4
+FD269ABF9B24B215B534365D79535AE3578D714606D22AAA5A2039FE7A5DD52E
+506D293824BEF78F5E1C7228FF9097FF5AE8CB7B46E69C72FB43EEA7110A9EAA
+546E9975C54CFD56022EB1B21E00CEC393DFA488C49C90E73D57CAB0324E36CD
+0D2F0F0641DC3785CA9BFD680D609392CC2F852056E90276DA93043B14F30BDB
+C32808FCF16CD13E4A13B727BEB4FD42B29D6C215AF4811B965822960F6D7CDE
+92BBB8FB84B59075FC14075C30CEFD9D095ADD8043FD12452D3C5E4EFABC9671
+6E929D5932C337969F3F5448A2BC8001ACDDA043EE975F35E64D7436FB73B197
+697E87860E071F326C7080E9C2930CBA600C6875ECFA85DD4C3741945004B3C3
+298F2B741302E0FD39D990F20D68542B2FD0D71F52DE1ADF30FFA332306360C7
+C6BE3E6D510A691029D503FBFE96831D332831C69B590025C831281881968B86
+42817BFDCE322355F994FA9C8BE68A9222CC09AF9AB2AAE8BCFDEB69B8481CB5
+75E66873B08A4E8265F369448F0E3BC0C82D82F65216D0C93DE88322EE7D0FD4
+1089A1D6CC3B52F681BAEADB1C82EC3B82949C27C6C340BE7E27020015CF142C
+37DC3BA8E4EC2A4FA81E50EE6854C23B3EE301E43D83CF6B82E80ABAA01EC82A
+36CFE930297EE3A45783871EC4E77DCCC0923A9FB1654406FC8070BDADBD27D6
+0BA8837A459481ECB63F03DC3007700D360643864AFB3728C5573A20870E5D55
+4F698DB4B5610C30876DE56786D84C71AA9FDD5198B4F3F8918AF319B7FCD04C
+F06C90B2CD0CF2241C2055DB68F1CA5CD57990E68F6F832A5820A481B0823F98
+0F4BAE4D7E92F4F2BC118E01ADDB7D527E6BB49E85D37D7E0BE7BEFBD1BF9E1B
+9ECE91D28E664284D190010D1578C1F61F02610A9AA6E9527872276E59A25362
+68F74B88959CE84F497D8D89735413981FE4EF573E4E0C02D3F0EED5FC100A4A
+563949D21A3E29D86A84C9F945602D9EDA860C6C44492EF219DFEBCC016FA7A4
+AA12A727D4E218D22805E5EC878AEA7D8B5D79E84E74E78FD9E017FEC4220A7F
+9ABCD125BA6E9D378BDC19D0B267A323FDD0831C5E7EB7D4A5CE7047F272D3AD
+1E25F7C5327127A058C287FEC98BD81144447D5BF73C56472E552C7B1AAF6705
+05286122B612BF5A2AA8C4A6CD64088BAB59B008A43121FBF5692418FFCFAF05
+260D6EB20C680BB73F3988C3E4E3CEFC65BA637FDFBA60E6D9D63E6C7FE196F4
+412367C1F43343EC6FEE8F97FA0E95BF1BC2C15F14CB6C8E8B28248B5EBB6478
+FDDA9D183AFF6A63145824E518377F384740984DC6095FCF3F8B777DD23A221B
+AB1ED5EE27C19941184967846B8800E489E1B86F23ABC34237502ABCAF092C77
+38A1720A851E8EED24BFEC9AB4C8D4D7FFC3ED0C1CF4FC73B962EB53725DB67D
+983A8C2B9E30F4F85AFAA17D86EEFD57CB17BACFB8BB2204E7CDAC446C679226
+F21D1A5CF2EA719888BC727725346D58479B69213F9EC3520B9C3A1778061AB0
+3B330514114833525D40B3F7F45EE401534732803B807953EE20C9660FB790C2
+71513A220EBE1731295B205324F275FE110D60A77CBB43441472193570E67BD0
+E97D51AEDD94B4DA0D71DE66E18F22F1E6CCB81D1DAD113125743D82DD4BBC8C
+190BF7073078FB1235E8A329EC3C69E3D25B37B1BCBDFA50D0C34BA486AB50CE
+0F411AE5DDD05BF3ABA16151A06D566860A08B2C634786C823D615BE622BC8DC
+36FADBEE389BA4F7A5A32BBAC6403282F02E92ADF11C14F45B51D579631F067E
+09C17ACC247837A8B6F66C66574F91317CC12C73D09A75B80CFD11993FEFCED9
+859D36B55033A149ECF0A845F611FAC0A8DEE32B407091C0233808C79857C2C1
+540A530EBFAE98C5D51C955D02FE62C8F207C97D614636AF826A7F2247E56B54
+3B496509DEDA8A277F0100A94376F5FF85586C6721F65F3F6BCF8B19CAAF8E4A
+EB16AC97AB71C32FD3DC9E7F1CF02D29ED516BE9F8F0BA027C68A5467A91338C
+CB52C099EC4FB72775138197BFF472B4FB75B84D5D45824A705412F13EC5A2DF
+363D37E7ED7DEBD14AB754B8F7C829998351F76E0660BBBFAE6DE96BEA394965
+F14D65CD28C593B5056D41FBE0780AE9AFE5F697D3F41FD750D327F5DC23FE02
+1DC31AC1DC74721C939D38710BB1BE55E895C2181365CD2BF61E8B59023253B9
+7694B2215942A702B855A0102029229F2CFB8EBDED2BA9B723CD915E0CF54FD2
+D8B4CA2A0BD43DEB478AC342F292FF590B2FDCFEB7195BA687A7C7D4E17D5E06
+EDA0D7F0195D255CEA7288396CB53A961DC4EC29F949EA8AA48DBFD6BD2BC7C5
+7019E26D342B8BBD0AD9D48E689550DC1FD581EB0D6E4156D107E116D9326BF7
+E29F3479790283C8FA5AD1BF8562D11A26F81783E7B9CB3C74EDB9A2BCEE56F0
+0A6FF68026B320FAA86EF294C07F310B832941D400337C0A1C8DD466F2AEA9C9
+7284F09CF01CB6D17E333AFEAB84DB7E5451829DEE0B97F8D4037877EB32BE6C
+871C9B477865AFA9BECE34891B81B4416BF1C82CEBFBBB6757B7032E04E2ED10
+38DC59E06E65379DF10372264804733507A929783916D02CF3158E4AEC0531EB
+95502E07ECAAAE6EF0E70EE934263D6C8404739F468228484BC5BF2EDF9BF06C
+D5CABBE2E28975711AD2F485846A92D22DB307ED63FDF99120684837B21AE421
+751B4681AF90A153AE3B977850AF1B7FADFB4A0D074AEE539DD1B553D99CF869
+0D589B7C27086CD89458E78A94E33C2610617A56771E56B146D9143488B01742
+017A7EE0444948173C783DB8643039B61CAE1D863047ED474E47A1CB49DC43DA
+0099D2BE926D5C8CE61D98B0DF3B532AAB90EE57BC17191EF4119FCDB991ACE4
+B124110BEAD7BC80EC8A205638E2727D8464AFE44C65F47D33F454316DD87FAF
+A1C93E7C6C1E357F3E111E41706635476A360F789F0153DD8DBBFD19826BDB1C
+AD807F7DC8E3B4FC65AF1AFF2B5F23727E87CBB5B28857BB09DB24DA0108AC68
+5D78CADFEA384D7451C16602F9891FE1A54C2272216FF83158A6728EB552FABB
+698D732755E3C44D6CC3247CAB2B19C813B2EB0960B72F21F6F88930C4A419DC
+02C672FF33639D1B66B3112B34DC9D886178A9D2546071A5D3313EEDD84D6EF1
+6F175FB7A7E25A530CB50B6A5528D28509C64513F771332C612D82C22DEBF43B
+068E8715955C3D124B382FCDE8DDC4013D2058B60C5DCC8402BD985CAB49BBDA
+7CF2BB2EB7D249A385CDB1C35C9115CFAF34D028B611332520D0457F70CB6A8C
+2EFE186EAAFD86291D0CD0E47487C9B06AC4824CB38A90CF1E27FC4AFCB5C471
+CA83873E6FEBD631EC84ED440986C980D07DBB6132AE67DA0DA48935AF484F2F
+29D911B1D023C16FFF2AEADF41A3E6A9558D5F76F31761556F7D59803A6DC23F
+7A5B0E360136BA8103FADCFF06B68D948A3BF308954D8C464FBBCBFE040C25C1
+5CE396142491EC55E9676F05E4F6BA139C7635C303CDF144767A5F02CF481A02
+AE014DFFC0B6394D292BC61234672EBC646ED05DF8C832DDEEE1B71566E3E1AB
+2B9382EE4477B6BC1A77C19C9BDB4426549EFBFF019099D463BC9202FAFEA426
+D0339511FED25A5B3EE4A4FCB90E7D907F0294445401D39A52964F2E58697CC2
+6F8FE6EF9D10F7375881745D6DD0FABEDA76B6D815B939ABC69DE8382096F5EA
+889C5DF26A1D65A3E11909B9B7C776884ABC726CCE08B36A48B2FA90291D1127
+6C8C529B3578214C8836F5E539121AD8B159412946EF683E941BA4793F9A7E8E
+9E23B672B8C4BAABE815E146B23028E9A7F23EB1648E79E8EFE7C236BA149A95
+2F001C4F
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+cleartomark
+{restore}if
+%%EndFont
+%%BeginFont: CMCSC8
+%!PS-AdobeFont-1.0: CMCSC8 003.002
+%%Title: CMCSC8
+%Version: 003.002
+%%CreationDate: Mon Jul 13 16:17:00 2009
+%%Creator: David M. Jones
+%Copyright: Copyright (c) 1997, 2009 American Mathematical Society
+%Copyright: (<http://www.ams.org>), with Reserved Font Name CMCSC8.
+% This Font Software is licensed under the SIL Open Font License, Version 1.1.
+% This license is in the accompanying file OFL.txt, and is also
+% available with a FAQ at: http://scripts.sil.org/OFL.
+%%EndComments
+FontDirectory/CMCSC8 known{/CMCSC8 findfont dup/UniqueID known{dup
+/UniqueID get 5087400 eq exch/FontType get 1 eq and}{pop false}ifelse
+{save true}{false}ifelse}{false}ifelse
+11 dict begin
+/FontType 1 def
+/FontMatrix [0.001 0 0 0.001 0 0 ]readonly def
+/FontName /CMCSC8 def
+/FontBBox {9 -250 1142 750 }readonly def
+/PaintType 0 def
+/FontInfo 10 dict dup begin
+/version (003.002) readonly def
+/Notice (Copyright \050c\051 1997, 2009 American Mathematical Society \050<http://www.ams.org>\051, with Reserved Font Name CMCSC8.) readonly def
+/FullName (CMCSC8) readonly def
+/FamilyName (Computer Modern) readonly def
+/Weight (Medium) readonly def
+/ItalicAngle 0 def
+/isFixedPitch false def
+/UnderlinePosition -100 def
+/UnderlineThickness 50 def
+/ascent 750 def
+end readonly def
+/Encoding 256 array
+0 1 255 {1 index exch /.notdef put} for
+dup 67 /C put
+dup 68 /D put
+dup 70 /F put
+dup 80 /P put
+dup 83 /S put
+dup 97 /a put
+dup 100 /d put
+dup 105 /i put
+dup 108 /l put
+dup 109 /m put
+dup 112 /p put
+dup 115 /s put
+dup 118 /v put
+readonly def
+currentdict end
+currentfile eexec
+D9D66F633B846AB284BCF8B0411B772DE5CE3C05EF98F858322DCEA45E0874C5
+45D25FE192539D9CDA4BAA46D9C431465E6ABF4E4271F89EDED7F37BE4B31FB4
+7934F62D1F46E8671F6290D6FFF601D4937BF71C22D60FB800A15796421E3AA7
+72C500501D8B10C0093F6467C553250F7C27B2C3D893772614A846374A85BC4E
+BEC0B0A89C4C161C3956ECE25274B962C854E535F418279FE26D8F83E38C5C89
+974E9A224B3CBEF90A9277AF10E0C7CAC8DC11C41DC18B814A7682E5F0248674
+11453BC81C443407AF41AF8A831A85A700CFC65E2181BB89548D671519FE4AE5
+E2F7879D5B911D251E682EB376530AD694AAEF61D864A4A5A93CF3D187A59B35
+E54993EA7F74C5423D85448E1A705C0563E45836F13C18C200B2D5DDABF2BED3
+631B55C4A0600FA90ADEDD8B4FD4F633F279464A8A237E3814795472138C487C
+4AE14662E7138129A121F5BEE99BBA7D5AD3045494A51A84B2604FDF89A50961
+65FCBEB866466C97DEB615BB483BB29FA1C0C127CFF583020AF3AA27A2A54754
+434EF8D381A8AC1ADA3D54DD7693DF43AD36F1A8F65F0D8C5B78C9ABC2C583CA
+405FA15D7FA44B4FB6F4BF1ED457D14AC9943BF755C84E768E363ACAF6E88E18
+F289E54EA9D4D029EEFAAE92162AED70CE1377F5AF6F3B20271FB656B0D4F6A9
+69F6E08586DA85B84C06FE2843FE58D84C31DD06476C97A061EFCC1C9EEBAC74
+1105BB52E1B905BCC80FA248219B0238B47562B65A92AA0AB68A6D648C3765CC
+B0A1B9C0D3988834A749876B92B2F2534EC2825EA9AB224420A9F3192C7E27C6
+9CFAF5719C9D7C9655A25F301CD4BAA869A392C687D857D6B7E34BA7094C2DD2
+615004C555475C1879531361589E05B910CEF1F2B594EB3DEC6CCD5F7BC0DE29
+D9CC5FAFF8AC4EB150D16E99A73BEDE851686CC39999CDB4AC2632C70F854E23
+62F78D7F4E9B1A98930D1337C350648DD4C86C40FA628B40FFAD2D22E201887C
+9CCD1DF02A63FE2C590804559108C24C26292214B6417F8870AE1D225E2879C0
+84A79D7C4721BEC74A7D4316E470974430423B5B0E909629035D7CD17FD6B95F
+5288183E45DFE9EBF2E590CBCF392DF21D781030A73B3F22F3D8B0A28B925309
+AD01FFECA57738D4C8031DD83806E95B93EF474053FB421E7835397619AC9B35
+1DEA0115319F8350B23DB4D1BE37932EE62D29AFA4E34095082BB0D5E0B2C818
+2754BF660E774D8660B6F948519F91F3E5F881AEAD26C41258DA4147A52A5DA9
+6A412E375E158549563ECD05AF6B5BBE6577DA7F916714C92EB744F36E5BC45C
+9FC02480EAB65125C1C77CFF4D46A80993DFCA94A7BFD5243C40C5D65E89B477
+C9852F0F62E92E46B4E73E7146FA7FCCDDE1162DC60FFF17EEA97E25F8B12D3A
+2CA7892A536C00BA8B73EF9CB8DEB7E6A5200FF009E4778214C56B3F8ED700AC
+B35A3A014734A91F6B17107F0A101F204CDACD818E918CDC0E52311BAA36AB5D
+CAF118D6ECB653CF129A6AAB719A857C9C4D947F89E1D0AD0F4278313EE13A99
+E916EAE3AB3E737D418A092BB9164AD849973AE5A8F25A87540AA7A5EA2C948C
+E70264D20086C9B4BF727F7C98A5550B8A13470B79258F59B99BBF0218571E70
+CE45D65FF33664EFC8754AB19A72BC49354373FC00599F5A51102C2925891B26
+63AA7D97FCEB70517369AB183DB36564753EC1EA9DABBBEC8E8BD0FE7466AD8E
+7E407177B1CF3EBA0560B75BBCADB6FB7C040FE0505ECE7E0A5743CE95D87350
+0EC185B7DFF328DA72E13A6C3A226D5C9848382DC9B4AFFB73C0F577918B592F
+2D3ECED66891F630A2842AD87C4D30B23F7FC9CF0D5BB460A365C760C2FFB4E1
+D9F57E0B34E2510B5D0E09793FF68BB11DFD931EF9ABA161A6416D09ABAFA9EB
+17B384D18B17E36DE6D4A54DFF7A322E6F17D58DB0ADB752BC22486C0F8F856A
+AFEB395E340F59F8EDCEF0D4B9214BE44171EEC137A8E39FA99591AE735D0D1E
+71D63203B70FC69E60423A0D3730B77DFC6E129BA0A6F7FD771BF7D8850FB02B
+0E5D388518A5F34BD96DB38877B4969C11F7572C4B07913907B83A74480BEDA5
+F998882FDED00CA6BBC481A93482316630F9C434BDEF49C76D76B61F8B1149ED
+208F882C4787A0DE7B60CF8283321ECB93F51C6AADCB53381A22029AE7543338
+573AF55848F84B0840564B4B43C0A03337C95734056E4AF18EBF9E8F018F6041
+F345EC3631AB809AF9D5A2C6936A2C12B8F0FC47043429161F5F086B16FD6FF6
+96C3F807C885BC0599B1081858A9E9663C7A533BA1D37242DE6828873468F378
+4D7D67C7BA86EB8EC9516FD88ED0C262AE00920C155A9D7BCD9F2F6F66B26702
+10BFE9BA73AD20CBAC3D21D0A5AA17EE7ED5328CF305DAAF80B4AF21F38124C3
+84ECF2B7B6DD9BE55A56F06EB6CA2AFF7AD36CDBD4BBBE0EF671A92632E21DE9
+A8CD570CB5570BBA93368BD5B71379AEFDF6AE858371DBE9EDDECDC88C663911
+1D7908B80ABB7082660E6DC04E65C5761B7E8E764BF06CF9C1EF4A9A11218516
+9A36F67298BA684BA6E213EA03BAD61F4CA1C88324507B6EB4321EAAE99330F8
+EE85D002D182339615E35062F0685CDEEC4C4201FC2596F0CEDBD8106E0624AA
+9653A2DA712DACB54301EAFA7C3BEE3BBE535CC3FEC2057258664DA6A82327AA
+F4677BDCF38C29E489D619CE65A33724BD66EFBC725A020B39612FB59275B701
+A1C030240782F53FF1EEC6B743F532386563D7B43A59A476CD1DB2F274D8C0A1
+3E4A7979639BEE0CA446D4AA55E06A4ABDD512DA42D4E6363532CD7F8001B8F8
+6C6E6EFDFEF11FD6273EB38E66D41B36E4C79FAE183EF0694967C27E4D6E2930
+782BDF9764B9FBDFCF50D2FAD21FB8481387F67DBA30AB378F70D73F054C5978
+D8584832D13E00F79794FC0C0D5FF20A95EEFF913E94CD81A268BFFFA7028685
+239CB69FBD7742AA32767F0A936AD923FBC190444EB00832C59A4EA6C2798517
+3AA06867A894FAC97C313FA62E3AC562E11E6F7DEC48AFEC57D90540F9D8782F
+8361FA76EBFE2E0E11C971B0A89C923F1B0DBEB90FBFBAA55E416925CE3CAB81
+8510EFD652F79DA872F62895AFA1D9D20EBBBF04D8A46F2F7AE00527F2FC766F
+C6D9E333E41C6CB2FF0F1F990DEA608F11171403CF2B5AAF2BC6D6D186BBF80C
+B25E21F53D0F5B3BE5CDD0211DE09ED8F1D0BA9E81D873B767C125542D41D368
+85BF86A46431C040BFE8F19BE6B0463CAFE1B71102382A7B6A5A32261E17E167
+881DE250C8D216E5E217155604D514F20ADDDEAA2A3EBF3839C787955C69688D
+9432ED039707CF8A47FE2D38626C05660927697653426323635F937ACDD8D520
+FCCB4E21B706D0C752D2FC453041C4B6E60B37BE068179954AEC7D290854F02B
+C22CDBAE78E822A17ABD73B5AB8AB2A5DDC63B457604587FB8341C52D3779B0F
+053FEFCD5020F5871E36849A71FBEC0B148494BF0C7A85CE80FE94290213045D
+B1CE5D260D902A50ED3E39DD9A046FB9E3325E8EEE9A27A9B98CBA50E20D2FAD
+0869FB9CD0B8BDEC87474F17FBC849898BB7F65D5DB42CCE5596C146F2FDE082
+DD9899C5966433F814A18E371CA720A994ACBC9B761A4E1F9844E599820B0D19
+84805B67BC3FF5FF052D319AC2A89103B4A99A86F4AF096303144CB98A2E3E41
+C58672B574311EC4726BDA63710A111FDC7046B703A590273F3B619B91136640
+8FFF6F5772954DA94E297637E0D6B059D7447AB6E1F7940C8E60089BFD1869D5
+7AAC4F47CFD5AF7F2B6598B37937498F44F62529D63B0B87CD625366863FD3D7
+3E61F9AA51DC9B0F1BC6A5B97A62827CE2BD65985521B84285711D6EC973978C
+9B2A26D654966F57C1DB6212ACC2816FB368F3D3A628BA0FEB2AD51699524571
+DF5399D86CB40CEDB066336EFBB21ABEE3E94DC34C98B0C42B5677F0DAD2F528
+3ADC88065B3407DB5483A84FB9F3D506A6E7AFC1E9C5F3C9C915A126A459C864
+B011D959F4E77D639E1F6F88465A5959D30E953420E4B4C9300D31798BCE4533
+D6BD98227C927014A2251958285C8AD7BB2CEF04AD3F71C5E9E61AA4151174D0
+6DAE58E9E473D4C8DAF644EF1D64E6A66D3F8FAA85277B499121A0D5158FADCD
+BF1DC0003015706564A4DC160DDB27AF886BBD24644E23F98A1041798F5E6B08
+8ACBD6CD9DF03860FE1DB68203CC950408E7FF27F4A73EE5D6675B28C0312D41
+A9A515712A70F217533F5E48C5C64D05E0E4D4EBF6AE870FABB0C9D9B0A0D9AB
+1EE0F9DDE0D09261CDC7CDA865288FE5EA1A6167A817FB4D5F4E3A93B527F3C2
+5A9C7EC0794447A962E05DC133229FE81A37B84A74F44EA84721D3CED0E28E4A
+94968A06B83A86D4EF8F91E31CDD22DEC704CF82904A5AA0AD9B5DDC67789C75
+53165768A8DF5851807A575EFDDDB1E083A794A3051C9ECFFC63920C0653DA73
+53CFF324BFAA5C3373B60B8E06A2FE2E13FC7F4F7E397AC55A934ED1013D67A7
+676EF654849C710F2AE8CBDFDBFB02B3052F237641F2BD6DB145E303DB9F5006
+12E6D7986F1C847A50EC904B76FB5429D94DFEB3AF5DB212E45DF455E9472ADB
+3EF3453E8108712CAAEF2DB4DF7FAFDEB0FF027F86E49B23F70F52F73D5697DE
+B8A996389FF17E1CFD784BAB548A301F6DE89D06C753E27B49D8823658421E9C
+DD25A2395293E486D0E8CB7D743B3B5690B2D6B64068D9161A18DDC1EBA6D4C9
+C8A1C0D3CA57215B643D08F5ECE3CC12F018D724D525EA8775EFC2E0FC150D52
+F680F80B0BF8C56447C6C9CE31932401E88C8FCD7EB095255E1018042E550D03
+B94CDBE1C522FC3F0224F8B71968EFF44296E6AE25569C1E311BEC932F703FA8
+020CFACCC1FD47F82A1111E6BA0B0E9946C61057B36EAD78F81B6BC39BD9AA42
+2DF5DE25E679105852781DEFA77322CF852AE77E2E204EEDA9A2DE6A31F0D679
+B51A7B7957C80ADC9E39FD3AE933E8B104D3B3E78D5347C60AD6E3BE939F605A
+15AAAF9EAC2D603125766559F9DDA06253220572B5009CFA99DDF9B7DB867AA9
+71F62DFC64CAC736CC9D9C72B0DBADA638B94B78C05FE9AADA8F6529900A22D6
+BE3589B01CAF9D9CB5175687568F1BE80FFFE23FB56202D658B4C58F2B7D8FBC
+E0136D5C83902AF8AE6F81D1B75674CB85EF2132DC74A440C447171E6262564C
+0AB7A19A16302060680DB91FF1E8BB5BA4FA89A01CDC9580D0EE2028334F774C
+198E112ABD9A322DD32EA53D7324611AE479CB27063C3C20B69FA70BD8640741
+318FF5A5C7185CF84CF98B86B7C4D4342477EA760290514C194685F6C8C4D30C
+E7BFA8F5B3DAE433B66A5C23F1AB8936558DE80EC4796ECEDF8643252D3BFAE9
+093FBAC72EE7437F66448153CA92045063316E6BDA23423CD763A122165C5DEB
+140625AD5342DD43AD3D258AF86B659B63E9CDAE693E08CDF76897262ECAE8EF
+AB0C0CC586B47CA7A01E5947145542F3C6A215F6A63257450BEA6FA8F2A8958C
+E4724D2C7546E6AF667812F60E4802A14AB72A25574E1FB6921D5BAF91E995B0
+1AD594AB92E06534F84390EB9C9FA51D75A6CEC82502482C4ABC5F7A9BC4873D
+484AF88F5EA7C9F05D927B9D35CDDEC9BD08FF74868CC983903FE9759C382597
+231A5D76F148515A6ED2B0EA2CB743F4469EF04B11741EC597E1E44261A36118
+3969431AC5B8123A0176BF9AF121A97EF36DB9A765098416B00CEFB0F64CBDE6
+A9AB86BF1D561347FDA781231C219920C9C4CD8E713D089722581D9F690DA9C8
+847F85DBD43F140437D2B85628B88C2F5F25CA644D15562A0D4756C6DAF9E676
+CB4B5EA239B35C70B605F906973EF7AAE5C9068D2032FB41684A0E3BFBCF3CA4
+5E5FD723B4FFA13CA20F086B2A0D1A0AB671A5E43CD00F575A8F2127CFCAAE0B
+F52982A656B8CAF6CE23B874BB3159E9AF4C5919B4B255512E45A7AB785DD29A
+D0D634B74C53DC625838CEB4450191CA3255620A35BD645EAED5740C10938ED9
+6B36BD2D3384799F08DB5510617EACC2DBA1247C45ECB5D415973CF3E8320F50
+4AFC8F032F1CF309BCFD30203965AEAFEFC03ECFF89F58EAF355D391BE2DEFFF
+A5636FDE7C277E774DB2D61F9329F719A205826673136CE1579F75B1D25107C9
+63A244082A267E96FD2E67950EAFDE598049D44B1180D4E1A4D22A34424D5DC4
+BFC7C437C49EADA326847BBA689684F71E505CEF6EF7F07762736C691DF4C3EE
+0D4606D474B695571132DF38055B6E240C1A18837DADA1EDABDB1DE2304256B6
+00AC3A88CAA3FBD6EA258C5CD3512952DBE2720BD859CD0D71972DFCCB72428B
+427D3CACD5E91F361A09E78D1058BD65CDA99B02835FB72945CC6A0BA938AA73
+7D13A5C1DA04021C5DBA18FB4D38271FA2CA8B21FAA229F2EA8EE01B41C4CD17
+EBD5909D6A47FFB1E272B24972445D7E14A0B3D976C12EC41D83CE697E620677
+5E8F37130E0CC5A6BDDA8A9169D71E948ED65247D30F1932E95412F2DA9CFF06
+9F042D66342369976A083A67985C46B9C52A05D7776861C782C90523E70BAC02
+659D20283468465DA6C5BF9EB9E1050B30E7EE11B37EB80CC73B3248A35F18E0
+38C2F79362E6FFDA0A84CB5C9A105131A3578D7A265D60036E441B4B54036FD1
+02D505BACFD3FCC8544CA39AE09A12EAE1987B209F118468718525FD11CB11AD
+353DA5EAB4D7632613E58577395F1E0319DDD48E5875CA3DEB3E0772ADE0C8E1
+7E103B548776DA9C20C6F04B1E6A859B542A0B31454613287DC6F97878F764F8
+46D80393AF5C19D7DD3A045FD97E270F3B1B8027890848FC04F4E35475F9AC62
+D6DA67C63CE925E49F4E1F506ABDF2096BE667A03FC47F6167FA7CEC8A1643D0
+6ADDCEE6BDDE9230B18C16CF9D28AE1B679D14E05FF356D1DE31ED9497AE3A5F
+32909DE223CCDD069DC12186DD0B0C3B0B00301FF7F3B76A7D9D518C65E2C214
+3C8A46D81306D378B31398E28E56177BA115239FB831624DD70C46E2C169E397
+AF487647AF49C5E3166D36C530AF799F107474584B1B67DB5D3BBAD398B0E6A2
+291D230E2802DA7A3D3361F3D41BC17E6B3C4A5EF6167ACE8BFC5CA998F83B29
+6E861E9A9CF01519A28E45376A80CA55AE20D7261E60A9AFF38695891E37B32E
+B2DED159838FD65674F7AF09FEA8690C32FB07992CE2FDD664D6B9AA55136E31
+763715F94B48EE4D28E8702CA1B90F3432D8EF486A99C319E88D08150BB58FEA
+9DAC242591D70D6F0B81B2011B710B186AA7CFF05499B79F4671254EA02F546E
+9B66AD753ACFD168B8BE3E9F5E2AB603939D5EE00A90B4F27D42BB4CD3749B59
+1702A036DF5F83E25D39DA70DA245508B966EFE6E8A7E24DE54762ACFE4FAA6D
+2C4B2DAE7CD4C1EF0ECC01866496D915A4B233DD8749DDA75E8D24C6789B7006
+2475EA72E9BF28FB4CEB975B2D1561B513EF18E87D44CEDA8AFE8EBD9CE5D832
+7D062C221EFFCE801686E86DF05A82225620C99897453D7A5FC171E25AA9314F
+5E2DC53BF96EEA6E6060E80D44E15EAAB7551B2ABFFEFFC72FA093025F968EA6
+A204278911A18D2EBC6F0C3A9CE5E0F8D2102BF6C2AFC0EBA2470933E3D347F9
+01639DB90178F8AD1281DC8DEF04C758D0C9B0FD14A816C8955227F5909FFCB3
+00A69393A66B945C0155D649978738D7B3FF1FC8AAFD3A1A91939DA9BE2F3A91
+C77B99DBF62090F034F55223EF79024D6A2CEA4C77AE043FB8F0CF386FF06FE9
+B27DDE4EA71DF17A8A46F8BA93271E1EEEBE904A8979D6FF17F56053CEB7CB70
+C6CE2CE01B25916657AF2DBFEC92D0096CAD29EC47CC042D250FFD8DFD9D57B7
+0CA94DAD03E1781D26B5E32B6CB7B57E3A6E9F1E90C8C5E6FD217748AB27C8AB
+49846C20E12DE4561E51678F09DF9D5AD02F5EFFE7F772BC798A459E5F4A5E5E
+8C6053309C635BD330A099D53C922E96D922599E4BF96C1B9ECAE472DB8ABBDF
+7AA790BE70607DAED2044E15B24239DD308207BD6BA2200DC10ED188D6932329
+0EBBC3B35D92E4F2662E8A03B9029B67CE9029093EFC79858A4445ED454DF030
+4EDB3A32B9DA9E2DC2EFF49CBF99AFD5FBF1E5DCF14BB07A558DD211A5BBED13
+105CCE495AE3EC6EE9C4FADAA72FC2C4A95C05EDBF0C88D7C77FB1097C6B36D6
+495916FD69B176E7FCA1993B5020F8574CE0C8B6FCE43E382AA3BBE0C920F713
+85693E6B75BFC0436205231264EAB0C8355A58EADB30BCFFA3A71EF23D13FDAF
+E726428542B05F65857EC1CBE59F047E3956309ECAAA931855923F247467259B
+ADF061BF5F70E4BA0CD7D2227F5AF7A3B118162BDFAE809998E0B67DE1F71BFF
+B148DF0D8FF5F693D8D5CDD71FB4C14F64BD21B5600C95F491FE6B055F20FEFC
+83776C0938289F25AFDFBD34C7383E37E64B5BECEDF3DE162EA69AAA2F495518
+F9154E2048D905328C39DC5354AB5843C49F4BB74FF0A8C8A0D3B2C3C6EB9342
+30E7943A48416B53837D1CEA6118C31117BDA5A3373FE5AD1F7D9D6AE3018F1C
+02CCB3F652A2EDF25D95A9456C7098D09D500F5F9514DE1369F6396A0D9703D2
+67EA8E446B9B23E3DD0D702DC8B7C7967DAE5C92A2B7594B9988F6AD82E04E2D
+86D49BBD6130C1D74ED091D3734CA7E23B5DBA6AE66313261B843CE470506D38
+FEF9A2A491F52683EFD67A2156472E3619237CE9463C25E7774925329780274B
+50958860E21A77F5DC488F49F89EF7518CB2B5531E8A4C9CB76B4F5004EA990A
+C17BE31B42333D795F3EF6199A4999888DB3D7999E645CDC508D4DBEAFFFB056
+AB2DF8ED54CC3E214591D971775784DAC1E3A211386573E3229200F6DB5A6E31
+4B137A4D8742643CC44F142C62475EBC19A336A51A6D7C3EAB9DC767ADC6FA92
+A144FD4031A74E114A447BDDF91BAAAEE61A2BB0D5E0794D11B13596B550B308
+3771C35DE27F2042678BDECA28DE4C1C1BC8CD16C6D119D98000DEF3974A6F35
+FC02BDE74905B69BC77C20FF38193E4A194F078DAB803B0F4A51A721EBC0A7B8
+F16816ED1D0124D792E30B915574D8C5D8155166DDDCDAF5234D8BA27880EB19
+48417F8C22DE8D6F033B9BBBB8003C9E7A9DD9EEEB53F150F30C16C6CCFADC1E
+8813B713AF0C71A4907C2219A007F02302A39637808ACED41DF3F257F7CEE20C
+43F067B52EE03E26283A1372876AD8549BE0F88BD5FFC9C8A4A65100B62ADD41
+7F6CC9029626C9E3AD3ADB51425A32C1432003E48BB643AFE59F63D9C85586FF
+04DE29046FDDAA6CFB4DE31FDF65894FFA02A09CE1ECBE8A03DB845311D397EE
+DC21526553060E59939A412DED669499A23724EBAD75BB4134539943874F7AC5
+0EC776F4B71DA0FF3CEB5A7A00428134DE5F27AF56018CC1D0E891DB2DCB77A1
+338CEB614578499BACBB6CF1AD8FE891406DEA050E81BE0BB6EC50EAC8EA98EF
+D58B77D659365BC70D0FD56BC0F2D0CC2752AEC0026D9BF8E22C1D246B5706B1
+0308B59CFF2239199D64D9865C55093C8C0503156DD028288A77A71ACB7602F7
+6E4CEE8E44F69DAFE0F2EB4B097093AE080F962A065214E11E5CD40D1B93D234
+7AB3BE42EC698D89C01D69F4D6CD6AF48FE61E1195977DFDB521956CD03501A8
+0D0293E9E2DFF68248D09A1AA5962AA9BB5BE0D498BED18AD9D470C618D5B3C8
+9D5B55B86CD1F98B7851C0553A1B3B7E26A2BFA18AF0E55701017F3ADD8AEB9F
+1CDEB28EC1B3375E8102518C3D640326C90C488184C847EB8E213D82B9FB6340
+B44794C486016A3D6925A2C0C869F71F8F0810CAC77F1C615C89C12A2C0B43D0
+88AADA36B5B189550B3020267085BDF7C07494269CFE748F19DCA3AA78D559FB
+D2FA0826CC10ED1114C7D4433622CBE440DE641D2DA4639F6C9B28C2E539C8EC
+13937379B8B8D146DF870B5F6A8C1F33F65FC1826208EF9908CA9CACB4BBBA5A
+F4D05EE61BD26D2938AE1FDE56C6007F6C757D82D00DB714F8C072E6A80CA736
+496C6ADBF1F45222779F07A8DB3BCDEF355B57DB7A5F33B576D3D657600C82ED
+A578C24EA83238A825F6BA4C48A5D818965BC29F136D69564F525C02FFCD2472
+B0B9420E2DCD01636D1F34F2E6391016C44DF47785DE8EED58BEC8A07DE81C31
+BEB9C2B0DB3060B3E43E5F3169F2342D8EFFE73ADDDC4455F0EC7520942F107D
+E62E2E0EA4C03D8F36C18BC86B56BB13756047AD76AB1458C41573176396D53E
+A4A105BE90661487C6DC9FC166975ED6FB9DEE45388B71DAFB0B8E47AA3D290C
+4FCDF4C8BED044F59E717E2882E6A197A93EB0DDA1693D70EF6A04E965C63405
+5B33748254BAA02F1DB92F81707255BC7E976486F8BA3308C85044A4C14355AE
+0001A9D8A446ED680523F1C9864C0C8DA0E0D8965B7A7CBECDC2A7780B9D0989
+86AD13A5E6E4FCCA06492718BE518CA7F5DCFEBF16B80C1AFE096AB094E867B1
+C6EB817E68A32AF63C4C3BE58A4083EDDF78290743AC514245BA5CBD333F3AB6
+234C4DFE69A3CB6918141450DB72C3302293ECAF06E903D1BBC87B6C42948A5A
+35C13B5649DF7E077BAC69AA8DC1ECFF36DB03918F1E696678B10096033CE710
+AD001B008B2EA9E68673AB665AB574E4F3B695AEA86D44B06C9F62A4E6A13F2E
+16DDF4FF2E0D97E34E2B7324CA67E0528DBB219F6FFFF162D242AB7FE6572DB1
+41B2F2D996FB3D77D1A076B75ACC59A8FA4379155E2498E8A0B086F7B3D98E9B
+A0E1A0693F75308FF5FF794F44173701A752492EDDE0D33EA64CBCFB2BA797CD
+6CF0603CDE25B2EFB02B74C1AB219251F6AA2F0B6B08017A2157D4D372AA2CD6
+6A0AA196F566DFAC411068EEF89E2787DAC8D1D2C968452CAD32E8642B44FC51
+CA8E664345F3D62A4C9049029C0EC2AF6E1EFEA8F15931B17C366EC1DB681D16
+3368B77E230AE968666AC84C917ECEAD806DC5176FCC7BF5491D1290890BA1DA
+47A466111E0504E8FF3863A40D60672A349E2E475AFC4AC580175C23C226821E
+78F6EFE2E36705403C576A57EF65440586467FB90D1081CE13FE0CBD2F7D77EE
+7DEFC8A49DA3381AF029FD4DBD93614A68F13B5B2A60D9998855549BE7F69EAE
+DD94132E0A57EBABF80C7C4BEDBABC0251B12709D8434B8DE706116568413507
+43B2843F607A82F22EE1EA3C02D9DD5711C6CC3028083261BBF8BF26B8D5BA93
+9D6DAAB8C88DDD773FCEEE11E165C8A90CD00D630AB28BF3F8CBFAABC1AD5F68
+85988AE767DE6646231475D2D5FAA9D32A9DEB98F8900BE633DEC7505496CC23
+D28C06D207455C9DA92FF8D164E0403EAB20642C872C6E7D581B9518A3EA5603
+46347B43A5431F0A3F254EC28DFC631627501AA5F5E3102B82A7835F5696E962
+2FD6267D21C0AA342A8E3BA0DD5FF28C473AC63DCB534551DC4E050EA7028623
+D1001FDC309E13CFD77B6341F76BF60BBA952C46BAD5C0832451E8E550A41A35
+21D9A0A1FA5CEC8BB3624F830648D2AC6FAD9B55F735177F5139B7CC12FE8397
+0C8A45A7774AF658DE29E5D083CBDAAFFC26668E84F1C3B9AC58E555EE18EB90
+7EC3136999EDC6CDE4F4D9766AA1AA4BDAE3C2EAEE7288F11B15DCE0F8FC5F02
+80FB01E1ADE123F5712D1AE15D95EE92919CC480F3918A579DB625EF11F16B44
+8763B7FD5A2677234EAA2FF047DEDD51E17B15755A55CFB2B5F5418CFA92D1D6
+14101959067A8463780EB2307AD1E6359741E9B11D4BBDA27059846DA462B32C
+59253EE51FB9BAC08D9B24378DDDE5EE48A21702042A22EC9CF9B17DD919D671
+81B9CEE3A29A8E02BBFF6F52DE2E615DBB8CED9A237ADF54F18AA2710D8E6648
+7C2B1E7BDB41649633BD9A3A703F52281A8EF089721F9CF806D369708B591749
+DF1E06B2B039250815E4893062798D3A56B29B80ED8D0CACB3706F1ED5B6D65D
+E4FE88E271B20588372EFA2766FDE62D90FDF8020FB6C6A7EFB85A223D7AD3E0
+08661A93D12A69E817CA4E3CD158379DADB1079F4CCE6EA6FEEA5570E4626618
+4CE29E7CF73603BE58B7A5
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+cleartomark
+{restore}if
+%%EndFont
+%%BeginFont: CMTT8
+%!PS-AdobeFont-1.0: CMTT8 003.002
+%%Title: CMTT8
+%Version: 003.002
+%%CreationDate: Mon Jul 13 16:17:00 2009
+%%Creator: David M. Jones
+%Copyright: Copyright (c) 1997, 2009 American Mathematical Society
+%Copyright: (<http://www.ams.org>), with Reserved Font Name CMTT8.
+% This Font Software is licensed under the SIL Open Font License, Version 1.1.
+% This license is in the accompanying file OFL.txt, and is also
+% available with a FAQ at: http://scripts.sil.org/OFL.
+%%EndComments
+FontDirectory/CMTT8 known{/CMTT8 findfont dup/UniqueID known{dup
+/UniqueID get 5000830 eq exch/FontType get 1 eq and}{pop false}ifelse
+{save true}{false}ifelse}{false}ifelse
+11 dict begin
+/FontType 1 def
+/FontMatrix [0.001 0 0 0.001 0 0 ]readonly def
+/FontName /CMTT8 def
+/FontBBox {-5 -232 545 699 }readonly def
+/PaintType 0 def
+/FontInfo 9 dict dup begin
+/version (003.002) readonly def
+/Notice (Copyright \050c\051 1997, 2009 American Mathematical Society \050<http://www.ams.org>\051, with Reserved Font Name CMTT8.) readonly def
+/FullName (CMTT8) readonly def
+/FamilyName (Computer Modern) readonly def
+/Weight (Medium) readonly def
+/ItalicAngle 0 def
+/isFixedPitch true def
+/UnderlinePosition -100 def
+/UnderlineThickness 50 def
+end readonly def
+/Encoding 256 array
+0 1 255 {1 index exch /.notdef put} for
+dup 34 /quotedbl put
+dup 35 /numbersign put
+dup 36 /dollar put
+dup 37 /percent put
+dup 38 /ampersand put
+dup 39 /quoteright put
+dup 40 /parenleft put
+dup 41 /parenright put
+dup 42 /asterisk put
+dup 43 /plus put
+dup 45 /hyphen put
+dup 46 /period put
+dup 47 /slash put
+dup 48 /zero put
+dup 50 /two put
+dup 58 /colon put
+dup 59 /semicolon put
+dup 60 /less put
+dup 61 /equal put
+dup 62 /greater put
+dup 63 /question put
+dup 64 /at put
+dup 65 /A put
+dup 66 /B put
+dup 67 /C put
+dup 68 /D put
+dup 69 /E put
+dup 70 /F put
+dup 71 /G put
+dup 72 /H put
+dup 73 /I put
+dup 74 /J put
+dup 76 /L put
+dup 77 /M put
+dup 78 /N put
+dup 79 /O put
+dup 80 /P put
+dup 82 /R put
+dup 83 /S put
+dup 84 /T put
+dup 85 /U put
+dup 86 /V put
+dup 87 /W put
+dup 88 /X put
+dup 89 /Y put
+dup 91 /bracketleft put
+dup 92 /backslash put
+dup 93 /bracketright put
+dup 94 /asciicircum put
+dup 95 /underscore put
+dup 96 /quoteleft put
+dup 97 /a put
+dup 98 /b put
+dup 99 /c put
+dup 100 /d put
+dup 101 /e put
+dup 102 /f put
+dup 103 /g put
+dup 104 /h put
+dup 105 /i put
+dup 106 /j put
+dup 107 /k put
+dup 108 /l put
+dup 109 /m put
+dup 110 /n put
+dup 111 /o put
+dup 112 /p put
+dup 113 /q put
+dup 114 /r put
+dup 115 /s put
+dup 116 /t put
+dup 117 /u put
+dup 118 /v put
+dup 119 /w put
+dup 120 /x put
+dup 121 /y put
+dup 122 /z put
+dup 123 /braceleft put
+dup 124 /bar put
+dup 125 /braceright put
+dup 126 /asciitilde put
+readonly def
+currentdict end
+currentfile eexec
+D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7
+5182433CF9F333A38BD841C0D4E68BF9E012EB32A8FFB76B5816306B5EDF7C99
+8B3A16D9B4BC056662E32C7CD0123DFAEB734C7532E64BBFBF5A60336E646716
+EFB852C877F440D329172C71F1E5D59CE9473C26B8AEF7AD68EF0727B6EC2E0C
+02CE8D8B07183838330C0284BD419CBDAE42B141D3D4BE492473F240CEED931D
+46E9F999C5CB3235E2C6DAAA2C0169E1991BEAEA0D704BF49CEA3E98E8C2361A
+4B60D020D325E4C2450F3BCF59223103D20DB6943DE1B57D06E82116C79486D8
+C5C32DADDFCB2CBD26FE85FFCB176AA09FBE325434B8B9D358B7C180AEC54F8D
+24A1AB4D5EE5375B963A221F060453E01768F0A398352CB2C76E6E70BA017570
+BE1C3D3A86E803B10B506FD9DB49DF5CC7BE17133234D7BE9230BE8B7481B357
+08595FAE04D04B14C633C52E303B06EDEEF7CDDF20F34D7F08D991DFE2C4261F
+298E0A818EBFF29D3B29D1D0CE2F071B49B0622F65F936F6C1D4C6AA2860E56C
+9140A4FA23BA31888345142DBFA79825662511437347767D4A13A976FCF67EA6
+7882D7B391B37FC1E22787E484D19BB252C4D73AA3D73EFA5C6341CF6F127033
+2B91079B5FF8A164666CCC65D0002EF7E374098745C84E3037324B4248C5385C
+FCF0539F8C04CBC52404BDC6ABD1474617D06377A69F4851838F462E82A86BC6
+F8DB2E740B5270AECB0B922D4493A75422349138B539B6067C040F3007F04191
+CB545ACC01B4F28AF811266260FEEC04057287BB5C26C077946DDF23322FD99F
+2B3DFFB62AB8BF12000AA81ADAA6A064F9C34D5F36CB7F66A5EEB7B494FA1AAE
+32B380163AEE08F5BD270FAAD8DAF0CC5B6979B8D4FB6AD723E011DCFE119092
+D1025BB62280B745BB0FB140E82325F1FDFC029100F922BF206E5527B7D8F60C
+3F3E3AE2184CB954391D10A1618FA0940F12159167494E29A46125CB911B19C4
+97B4DC76FF53B7F79E380D7375FAB6C30A467E02E48BA73403D3900FBB440C9E
+951C081C8D5E04DC0C8E1BC7D552075CC360B7D1007367C655069324713715BF
+F8182AEB6F401A1F029FB3962BB3A0B2775979FDFFD834D5559EE20CF54D789D
+41AAE2A22A06E509E4E648FD33710B58A83FBC8DB8D6544577E03B186F0576A1
+0C1F1FDE425A0AA5724986D953945FD3ADC0C170FBDD241BAC988D65CA8FFD0B
+B013EB27813C9B3740FE2E9D8D81FEDAD1A95CC38494DCD832CC92797432F3B2
+4CBCF51F4C14C18B1E5146F691604D479DA92E0B1F5CABE244D8761E14138E95
+0EF0EC36424D8A7581AB3854188D11AF8339662D164EF37BF8635D5E0A836955
+688C6B9BBD36356BF8F5AEFAE3875512A503C38D058F5823D50EB25F683649F9
+F9D9FF4C5580C2F284030AED47099DF18280473AB6BFC7A2423D1E19F327E809
+4D24A7256E1A20BB90A03B2888E16AADF817FB7A6A3D5E467DCC72973CF4850E
+D8D09E8CEE8238655699D103FCF0530E683A96AE274E3AB64FFA85918AD11091
+CA12781BAE1F58937C4BEF292DE8D19F299F92B6B7C3975718BD9CEA902FDB73
+378141C0D5E65485B75CC9CF6563DBE0FE603E29CA55796DB18164725E17F4D4
+AC65FE25D9CD21C78BFAF06D080D7BBABCC5F672256D38952F85B451FD55B8F1
+976F35F23E9927510749842FDA197833A0CF88AEA992A8945DA35A724B445CAD
+08B4D617CC45364A36CEC6510A316A9D1882221DDEDCF16CF2DA1B7481AAC0EE
+A94FA95F2A0A5156B81553BAEEB8FDABDA924C313285118D89487D87AAE8323C
+B8E91F0BA461A60F11BE36C854633B1E54B69BDFDE29BC95687B9E8F320FDA9D
+ACD18752A6273681D50E9E3E06FEF82ED2A83E28396E3701DE733BC68DABD124
+EFAB186F9DDD499E248A2B39CAA0073E51FD4CFCA1F76A7361E0635EF78E1ED2
+273CEEF7E209E21B210E06BA5D975336D0027545B1CDD6301AB01937EBF10833
+85A46B1FC2B8C9A602CC1D8D7847726452B54F92CE9E96D00C2BF8F22B78CADB
+345F808F6798166D7204AF4AA84EA375F486E6EFFC33925EF596292213301424
+E477F206B5578F84DF9D2A4DF5237545DA1CD2BC84715D279A06B9CEDCC8D9AC
+EC11E3BA1AF0A6219359F107D06E5EA97732FE9448BCE0B6EA58D9B1BC0B9FCA
+8CA2ED9D9FE76ECE94EF02CFF6272448C3693C74C44A587FEC72199372809305
+41F5B2ACAEA83687FBE3B9CE0E4881AC08F26C5CD73572757D05B95FA9C54061
+0473BD7F6D28EBDF9325F8C1295B8EA857446C499BFB35C6217D62C4BD849ADE
+3289E9C2F0E563A0AB3B99886D8FAA54D0473B1EDF150E7EF83156B5F3D84B1C
+1A44EEC13EBD913C5D03C449849DD8E5B9262605B4E32B97AE213414E2DF671E
+691F2A0C0938DB4AB8F86636C0AE0F2E2C1F417602B5E92F669215D2727BA102
+CCCD8401B5A20F992358E494FB96CDDABBBE75DEE7D85D56322F1CB6EB22030C
+3104E3C8B52F96823CFE65D618412433AE047AB9485D4C59B5C29603E551DD04
+CC984D89FF5A1938D7AA5ABBF04F3E85D4A440F4A8BD072EFC5AC2CD7BA2CCA4
+DBF55F809F5234411CAD3837F6FA7430F487F3D7AAF06E555496B4CBDF5A3BDD
+FAA2BBFE02FBF00B70F06E0CAFAC541BA911A8ABACE64CBD43308E99BCD69C67
+B04CA465FFCA158ED53C29B2F3A89F10D72B369680F4BD98312C3A8EFA3B7AAA
+E5EFB1EE8B30A7D9EA2F610ADB9AE7D08D1C550EDC6EF9AED59AD97C7BA20869
+02F70E7DC09EC88DE26700150A8C850A2BE5EA9C41EA09096FD61B8B6D179177
+B0B26DA699FFFBD35DD78D4F18B53E3F0D9351B69E1FEF78A51AF83C60EAE830
+3A74BB9EA0DF2797954FF020FB70047AB3183FC079A4545B9D0DDBB3BBCB2299
+8FBE5C43F53C01E14F15018C97567C3FDA7E5B5AFAFC1E5D8432DBB387BA4CB1
+4ECEED850A4598747243F602BE97716A814912A31CA14512580849338B87F561
+B35A24F2D961DFF68248D0AB82C19DB2898252CF1D1DA260A9FA8F120B9B0ACC
+8F288D264F30646F681361DDA54DFA67D66872388660F42D237120215B88F09A
+3D9AFED47E64BFDED4B3B6378160FFDB8B1C24184029D7A7CE9D934718F3E7E1
+6E68E325D1A28DC555866AD0DB192A915A80F5E4CA88AE2B543EA9D1DF023BDD
+6DF3C5647E3FEA1BEE684AAF8AAF6F3110C11865EC05D26E020EE03A3D121CD2
+0FC0420288DBD1117D8FCF85CCEE8B2A6A632B817EAA9218E51FD26C92307C9B
+00A67D8836A5987DE40FED11924F8250E84363E35D449CBF408EB74B683128BB
+C35C9E6112A9D4C16FE851966BB17EEE6B5209484D2A397652CDCCE1D30866EF
+B8B6EEAE2F8EA0375B16C5FC2C4C440BCBFDBAC428DDBE6F0971F87A8E5B7879
+1C8CFC3CBEF77F6152822741B5A1A4E9A55C3F8B459F39A0A04160FD5433587A
+8D3F619498FDC68E0E19240001A32D74867F0AD2964E3B9C748E264B17DFB8CF
+44E405209E5159D3755CF2717F994265606809E80C7D729719E2A8B396CE2B48
+1B7D22E660AD09A912C3FEA46EAC1913F89616D2D39D2CB1EED30DE56F0B8659
+3A3D7A56722FF5C1B04D0D095C8637A71B6FCEA9AC04308FBDECACB3D1B688E9
+962A1AD948DB65B9B6B4467E6628BF292466DD9F2BE108ADC611B50F86CDB772
+2E297692FCF78905CCEF7FAED0C7731525B664507E894E5F10081A66AF2313B9
+636975EB8A4A85161BF3F1069A874532F7425C4AE253C6AF376FFDF2D440A5E8
+04418C1671BDFAE10D423ECDAB49D871D0D7F18AC624F5CBA164B62E962D8B38
+A6E004FD103F2EE62D3AA0BE791B44427DAB1834D5CB523CF4933B093FCD9167
+81340EA5216A4319CD7969895773E68DEC710348E6937A7C763DD804B4249AA4
+B594693CF8722A1728A8E716A962F965010CB527D5175C0F973EB1B3CD31D984
+3955152DACDB24ACE4B128DCC96C2449499447F7B9367390D644E1F9588141F8
+CC60837813244C166F41F6D8665A3A1E6C555D67DF2FD9830E09089871932D09
+9B02C0D063F056F22F4053FAF67AAF7D49F4AB16DA0CB57A81AEF9D22578DDAC
+A06835F2577152D86F22ED3EACC46FCF9C63E0A0162A42C7E2233C912E0494FA
+5123041B71F27933DC61D4A77FB324A6844A1EF354410BD542BCD237F7078F5C
+00B9E142A96AB5350152E20282DDA6E84179AC9A18648AD716E14BE3811F9ABD
+20F0A6DFF27E3B8EE3B8C67B2C02E6CBDF9D89982AAAF45866D8D637F96F2ED0
+622E5D98D4207EEC8AF72096337A8D1371C1F93F1254D5A81F27DCC9496597F4
+64C5806D183FB758CC8B06996EAC08A253F9F7CA51680E01D57FF501AA24FD56
+A7D7A296CE58A6111333F510C73CD1E8254D39C89F46B1DA4EC4EB4E08D2C5F0
+6812D0DB44FC83C05B37750CE6958B355F849E034E39D3C4E571D219F334BE90
+C7C9081C3A4BC270576395280B9B12071F1215EDC614D2B237B7DD011061B1EF
+E81F658FA5270013743118F3053A23D83DE48F6B9812B5F61C4DD99B406FE78A
+D7422606D11DDE703CE67BDD471029CEEDEE2D1D6560D458C4B3173B37CC6950
+2809D5E7D93A5BF0D3D37EB51696ABBBE642934E90B1E0AC0C6ED52128D06090
+7F7C517F4622906013E9C4EBCC85F8BD8AF0BEDCB96FF0685ABE96DE1899A6B2
+433125EF61CAFC659294F7A9644479D1A0AB799838A1926FF6F18AB9091D6D7B
+61ADCE450D5CDD120544F100A68E5A3619B63302C2EBFDAAD9393142B47189D9
+F5D3FAD4EEBC26C3B1D95433BC3DE11AD8565F5B108A52D2B809A99DB868C77D
+22F2CBCA9B7E8C7B005D8F0CA0325FA55751DAA985E03B45448F55F7999AFA2D
+DD30C501AA8995775BDDC0EE1B603296A8BA32BADF8D2AAE737EC1E1C5F01926
+66404A9BCFF6429E93FF9A2457A326E9A5C97A941D6C6E8EEF04E2A05D72ED61
+B0E5C18173CA32CB2A887A09567985BD9D0F92667B6C7E5F401D1B09ED4991FE
+1F24FCED460138867E7A2E350D48CF311F7D5AF9A06ABDBCAB7DE09532DD5B8A
+6414BC435EA96587E59B4CA1DA384FCF569CA71C045716DCCC4FD1A01E92BD0F
+02C157329FE99455411E56827AE5C1947F11B6781548D9ABD6330E7D56CE2057
+0859D3803650F18A17850119688706E778E09BB3FC3898580B70D991231DEEBD
+223CE4E36CECBBDDFC55B3B2E46CBB263B4A4EC252A8759203B584BFAF41D745
+D797A9397B57CD7CAC1B244A5A10DF337E1F955EB5D659EE9BD8F3E86988F0B9
+25767F201D5588F82DEECE8AA37E52B217A4CE6C5A4B0B4F8677E7886486DE44
+2928E54A08194BAA128AEB9BC94C4016AE8F8C91023EFF4D99B979AC9A7E7019
+4CBE5C87B51F8E8451802D48EE04151FCF99C29B34B294BCC75B8EE2FABAC5B2
+07AC6FA861787F84FF5C19FF1709484E62A54D42B9FEEDCA243A83F52F0AC277
+27B4BF4D9183B35EF77C254A8055348A148E0B46F7A65E4D357F6B9AC7D38E7C
+AE22D6822F4762250491BF5398718F1B2D1BB2712A7E755D67838B8E8B5AF4F7
+504F8074A53582093F332FFE49EF3462613217AB13A287F5314279B717828D98
+3A304D1CD12588FE6BA2F14784A5FBD09F41553B02D34A12BBDF79C5D67436FE
+0F1BF4EC14474D8895CB75CD89FBF644D9A5D04012A73E5A5962AB5D1D4E7E10
+FAE44820F337E8CC214A6902D364170DA0A360B62612182EEA94299F4AF9CCED
+AE886969D17E57EA78110906B2B5AECFB2DA92A884444DF68B04A835EBEAF4B0
+E3C074660F25915C19CF02A4678EA34BFE1C5D01F83EFA7228A9170FD0BE30C6
+9DCC717E318186CB6B4539F8295D843493BB396E6C18CAAF08BA46F9075AF68C
+94BF94CE6A0EBA781A64EAAF37014EDDF698EE83016084E5C8F1979021B4E097
+3B018F902A2148FE4A8A16D9F02098E4E79FEC266F7E2E9877C4C1EB75FFEFDB
+8DFD3A9E955F16D693CAAFBA12DA50EA0C33D25617CB945EACCC500F8CCD708A
+02AC9F1BF0BB72781AF0CE68CFC74B1D9B28FEB51BD75A9A064259C8318E49E8
+808599555318D3A983829A19A577F5449F4BF166815D7672C85A8C58D443E306
+B1F445683F38A6D2AC486AC98744E14FE8BCE414FAAE05E682B3600DD2BB2FA0
+812D130B39006B3158CE7FD23B018EFC17BA30D1D9A627BF025D8941269ED78A
+6557185B5DA653AAA35C908CD6C3CF478F02EB45052C4A5152895535FBC28A07
+F5DD9DA8EA947BA20E2C74820D72C244823AF20113D1CC55903C51E9630E563A
+6B56239C0AC0DEE8CCDC3099D8FEE019148825DE3E8CA8C343B67A589216E9E5
+8836BA306F41F46689DE70F849519B42EF75D4AB0E4F634654C72D6B8D2D0708
+FC1A769C15F20870882A62BAEB0896586854605DDAEDA8248352F7256DC369D7
+06E084FE0A0BB4BCF99EBD927ECFA410ABCFD8C513F638D725F285B9EEDD3CB7
+8C59917F8A9C5E454C61BA48C995E8647E4A174D88A6CA853A6FE8CD9C479914
+F2C88A4DC95734DCE56196A7821893154E83B92246A3A170C10B0161334F01D4
+FA77339F13BD4A758AD8FFDC7639F215105CBDA94EF67C1433A5B21C85C4B4B6
+274B74EA1C5A851C0B6B49DAAC0C4F91CE271E91573ECBE789E1FBD4C1E8A280
+3DBF534C667401E3E59A975A8D979D010C2DE134BB2AF41853D5553B660BF4C2
+07D9B01AE75BAB757AA5675515F43424B7BA9FDF519B7F15C379437B4F90EF8C
+6D4E73650A7E639BEE1661A8D1A476FC17EB87F694432324A6E74F5D22A8046C
+2ED20D76AAE468CCE9FC96A2F9D03364AB89F938742CD8A0C8B2B41C81832B8A
+EE4BA75139520226BA8D844B334FAF07CC3F2F336E67E467AB1176B0C987550B
+2DDAB5627F49E856DF773E814B0DE1B9BDF3F5093E0EF3767AA1290F5AF83C36
+20458F6E518E9F2EB3469C78A35D38B38BE6CD14BFDC4454D2A2083BB8AAC21E
+BFFAFDF0D4A2FFF114A340951A0130FA9A5FD17159AC916CA8F8091D6EDB74FB
+B32D370B90587BD8E13075B29F9EDF5EC74ECA4ABE8DEDCBA34ACF455C22B64E
+0192BCEA20441FB68C8B264F6645F1752D7A454556740E9B51D6041C995188B7
+56E25AC4EBAFE4A85891A1A8C088876DDC89C5FBD5F58FA6BFC43161E33A2882
+3F67367FA6B4AFCFEA7F5D138258C6F652B205A5A745D0E30CBDC546BCA20B93
+FD8A6C6511DCC57AC0A824380E558DE9E072D5BB9461E5139C5826554FB9BCE4
+32D93655AEBD22C6BE509E68625B96E59FC9713582CC6ED217F7D20C6518F1D3
+D80F022F30A207D6BDCA7186CFAF14FF84D723443698D4537F4B644D3359A734
+F7A6AE580AA67A40DB7CDE2B89B0F6D56586617C68246359D05A1D1ABF303637
+96A644BE07F1A153A44D312EBB63601981D4EF900ACB79286510B60D53FC64E2
+3254401701EEF17EAC1CEE4299EDAA221E255E10E0B8A467348D5C910FA861F6
+B7D3145B11DCDED82B63A62B34AED615830C672D56FF8A4BC354091E8C66673B
+704A64EED4D253B683263DD03CF14F875FEC5B07F5ED35769B2706F5C0DBAF21
+532F394CBE0514BA723EB270144F8A3835E74AC16F45E15E25F8752C2702E5A2
+D71F40F32FF82C2CCE63DB01D9F6548CCEF55EB96E21E7F5FE2701C5159B64ED
+5B390C81703A1673091D8D3DB7BFA775F50F995C001D5F190ADADE7610ED7991
+D79C27FAED9F246517AEDEA6F759FB817A29F5ABEB087A68345A23BD7E98B047
+5334E7B85BBFF2836BEB328F4DCE1B1D18D67124BB66EBFF6FE3609FC4A6A3E6
+63843A0DABE1B647A55030C71C3DA96FC7BC51E7B3C0453409A779C988E9012E
+D96897119BBADBA223A05ABFAA39250A9A608442EF334A24D7BBFEAAAF876C79
+2FE5D4BDAF4B4C3ACBC24808192B06471E41BACD0144601B652D969BD668573B
+BA3A469A6511DD9C80039625CEA947FCD490DD704C16E3977F3D6E0B995708BB
+0349FC14D2B84ACBF0DBAEFDD97BD87B20D797F456B497009219D6D87E52B890
+FE8F4B18AF6B8AFAC3BCAE18A3E97D4ECCF5B1BCF60BEA2C346D52412774E920
+67EEA3F9E44C6532ACCF664DE723E67BB99804925F340828C7C46094101238B9
+172D3E6B518CAD7380E3983CD79A973FD76F75A8CB2274A980468889080FB68E
+0828857B3798D0FB98852CAB744E6D2C3FC2086F2D2A6A4C40A1B48CC7D7869F
+886DCB622C427C36667AFB2399067053C43E16FEE2B322AAF4B2F6B5EA00C1F0
+177E07D99E5D05A0DB5E16F58A07B0C59F57379CCD2BB5576CABC444CBD7669A
+16F6E37594BA29129EDE91ADEA0E5A190B9047D36543EAD63C16F3A587FE2B12
+2B09A7DE247CD4ECEAB4E19D40B4FB3C73F81E5250C47D85BB419C24E5F573A1
+E25DFF90524F62A4DA060C20E545F64415BD65F207C44C0A10E429744B45DF03
+8C2EC1A0DF2861339A1B20E8264D809BB3D27AE113B5361C07C2E32024EA9AE3
+5A426AEBB3235A4B36BB42182AA509173EF2DEA512AA301C52448146445C96C9
+17F49F533E4609A356E2BF73095B0FE3714494766ADF2935DE22A9BB9A152526
+89A9EDDA761167333C1E0109F69CF0FA9D055A318B3CE75428FB8C90332DD334
+A7150BA3F04C559EBC3137873B9DEF763D11C5FAAB0E380649102345439BEB39
+CC6330BAB5CEDC657D4810B3C6CAAD133CCAD2CB4334AE7326C384892A64DFEE
+33FED07DA3EB7F25C65F90DFF1519B95942036588B7C6E4A3E6691DF110CCE48
+3D6BC330F0B63E9147120A443FD03D4872121C606C7D00A3CAA46329FF041EB6
+4D5DEAEE39DF033F8FA90DBA92935EC6F897BF117C7ADA013B639F5464D34602
+84924DB4F1D85E8273AC90A98F9B785566C90575ADD0501D64BE99ADE44F48D2
+249C813CAE97B9E729CA8072E472A8CEAA40363D70C1CA35BEFA41B38728C1AD
+D71B7ADC500C3CC1BD6FAF4BA9B72945A279CA392AC8F9FA7D1D986D946C94AC
+F466331B52ACA50DB852A221B9E9143C45563405F73D796B45235C1C481421D3
+5931C8ECDF80CF6A8F9BE5CCB2BAD13174852C80B1A378FA7A2B20DFEC7E0A25
+3F47FD9A01868A887BD3C8A456BD780F9714871AF48AD69B44850894D5A0FFB2
+BDCE54ECF7A8C2294D73A55A21D84F230A8F9FD729FB2BE5681E0C5E7AB9C6DB
+6BE998B206DC2E580C14CFDAAF71F5B5A83159B35D8C26791CC24CC383C976C4
+D946520D987F2E224261944120F6575D87CC414AC5369D30916E95B795FE9932
+8A64D01390E9E92FB631E50CCF7CAA582DC83C165364B0C4C374732083465252
+DF62F74BA02C857E90599ADA08CAFEE5F7C544FC67A950C399EE5C34BFFD6331
+767758371054BC44D266802D3157ECD1C4C02D47AFE4F322761ED912E57894C4
+7FFB1163CF6C3C330741AAE0CE1D6883BA94581B9DD38638665688467854BBAF
+3CDE4CE57C89F76286F6ED15C3C04EDA466A21D9AE4EE0D6DA1B6948FEDE7EBA
+36DC80581DE9CDD7495D03F43972D574BA841CD97E1F454B08391BE54E43CDB5
+4C1C107A2EA2F01F9DA55BE1F0AC49B8BADD510C82269219A9A71100701B5A80
+92E95BB6CEDE0E8656D914DDCFF561208AD3E5A18ED3A99907675838659B46E1
+2E40F082CC1AB8353D6D06BC94A3631792EF13757C700683712BBBB4C4A1092D
+E22562C355737321C75D47F82A6C3B043A2F042687E94EB13B1CD09961ACF9E8
+9A5DE3BA437018462A54D5CA04E5DBC61BA7BAADE0FB1CC66A9E943D9579FAA8
+F8CFB28F5180688504780EDA6B77999646DF20DA3998D862F8007EA8D849ABAC
+7B7D828ABDF5764FF148BB86A84A49765C386C2D6B610DB1136605A03BE3413F
+33F067E59B498FD13CD61A6F9F5C322774B95D79587626537C799222976EC1B9
+5711560A00BFBBD10E05C5DD2A8E4F4C237403823391F7BABC2DD95D476E6278
+46E3ADDC0CADA064C0B8A939EA88491E53973B098105CFF756FBB09681564A3C
+DAE7B858DE3CE437F9D144B0B5723525C7F6FEFA292973430D9FE8110C80CB2B
+EFB23792C19A7AE94AB78823CC0C68FA7783D02A4AE60D1C02401F21F5594EB7
+DD73E37EFFD40576E63BF4D510C4E7708598C58B7F4B3459D668C4EB1C7ED34C
+FDEFB689881B33493C16A6A89716EFB98DE51EC9074E2017774676ED41247769
+ED965C5132966E266EC24E1E866D5421016E343B5293A644F3730F7BC0BECB0B
+9B5E1BE6E4182A2C9A9544397A95D4DEF18B6799E76FD55ACA369F0B151B6D5E
+C8A827710E2CBFE39BC248980AB14D1E783CBFAE6132182AE69FE1F34F3E20D5
+87056384DD93690CE802017669C88DED74241E284D29B04265F589C0CFC698F2
+2BC91DAB1025B6B02840B9B10517E8A884C51689B34A9A5F22879FB01EC458E1
+C73505387E293D47F3D07E2B707F97C76D8618CB74ECEBB676B27A8926F512CB
+DE29698C1F2C7247CC000C31815031F9C3DC84210D1A02BA1D61AA29A869F079
+5C12194C46863F8FBCAAB7FA0D5A4708190A9733AAFF09D905D2FB69BB87E23A
+DAF3B7B7365E0B18684B8293F38D99A2C09628E70A99FF996EB75A358508B4FB
+72FA368CFA9C26F109E719729A4544C3E7329FE517DD0048FB75CD72BAD1177B
+1E151BE310C5443204B63ACC07AA32AF5F21AA9CA0C1BC771080501AD787299F
+0D0679194811FC3100BC978E67FC606534613D80A7C1186A5644F85EA349311D
+C99A3E9857C0F703820CF6F9DD798EBCECA8273252210F4E477B7825BAFAFE76
+AB2E58B250AB44D1443EA204A953C9463C1EA452AE7F1F2DD5EEC6EF11C8D8F9
+0BFF9AD0FCEA1EB6570F2323A0E59A5E1CB36FCD3655602CE097D62EBC6744A2
+29F1915963632D2F5CFF39D3226D759865C88987C2323CB63AC1E1A869059BF3
+54C4B16768F25D17A5FF11F0C45DAB568821834257ED272798B5BFE233333B33
+EB0B28C573D7A9252196628C0ECB8C0187D7936D2F5EE639C1D493EC8240ACE7
+0108856EF5494CC4AB8781DAB2A42E58DF1BC63A43145F71CAC02481B39C6EEB
+300148B1ABF410BBC391E58478A7A5BA5E8609E668F7C2FE071B6DDDBCF4E767
+6939688B8FC529E1857B703438C873CA5036261617FB6D2645AB85BACA8B659B
+D8E376D14301E0AE200C5C004461634D072CFF604D34684E258601DD95401516
+00AC18777132DA5A89EB23716322C5FA859C629ACFF7159C9414421E1FCE16EA
+C4BB19F33412BC290B9519A63560C6E5F85E045FE7503FA461BC61946568B3ED
+39F2B343A60A322D69C0025341A7320F11AC74CA3D8BE9EC6086552716072DAB
+DE1C93507C7B7698C7C322D59C4752BCEB01B22FD32559DBEAE09DD48BD54EC0
+4C924F9C995D26424D99F3409CBAFEA3914C490C9B3D6D600623C570C5C7E3F1
+538C847611C29DE22FDBE23C1CE1D88397C2A197BEF35FAC636B10BC5B40B63D
+86E0DF3FF037D5D7500E5926AA784E56A5F298307FA77274E58D0011A0D58763
+3038CA8C7FFCC72029A7471A35F4BBBBD2588B2A9AC09013AC4E3682C8936EAB
+8F311C1797B531B0BEB6D612A04A24480F3D1DC4326BD4824AB9E3A1E5D96AB0
+F8D4F2669AF6310773C3C980CF0C6D671B33F5A69DF5A96E539FE83D8673C1E5
+4FC15A9E197C6FA185A2568156BAD187A8EE777D581C56F702C7363253E2E375
+25B4ECD45EB7CDF40C747E9C5345B1B269931249E353DE9A88F4DAF30AE765AC
+1DD41244130DC14730FC64917683FC0E81E0A267B4827AB5252E55DE243A242E
+6503EB8CFF4730469F13694962373B618D20D0B8319283F91263E1A2EDC19D54
+0B11E7D3F89CE32FC2649522054A78753FB2A21BD89D139C8A6BBF6BADBD846A
+34D433E1ADAD2327FE9804B9BE79A6F4571D28264B4BADD2D789B3AADA0726B0
+A4333F69DDC6625EA2651E7E6F83AB4B30123290012966CC5AF1E95A5C580E40
+34AFF0C4A3D3D07D745468E74924A6BA6873B2F222D8207FD68296B473AB1BEA
+689613148F460E74FC5A63B5409CCEE4DE667DEE0535D0B7372F4A78597FEEFE
+C2BAED06C58378C4481FA78275C70C0DD51C48B136CC6A083AC126C30FAA3A54
+10F97F8C996CF629EC4B5DE104387D91A32B46FEE2CCB5DFE469029D318CB696
+D9B41BCD5BC02664B0B182FE6B19C9DEF43283BCA59F109E31E084378E6D7696
+775D9EEB6E9C95764DC7743DF1B532614A73ACF873DA3643FEAD903EC7C72CF4
+E50BDCDBDAC489742B86BCBB6D5FEE7302D4C3A81C4BD9B957D37FEDF2EE0268
+46E2FC9E075BBFD98D8770AD276AFA14EBEF82736ECF784D14003B43F7E8345F
+62FCEC83F6C7463B45665AE1CB1BB14FA60C8B3CA88FAA9F1DC3FE9665729A22
+714A5F0E7D7F57DE711DCC51743477135DC7222809DFD708FF2CBF6A78717591
+E6B242B8BF6859CA938E264DE8D06F6EB7A2D3AF4AFF5D875A8EECD291272026
+75D836FAEC1C17898CC7D369541283213613E64A34D2CBF9A9AE5D0DF8759616
+FD3A7023A736A74BF4F714011CF366B13F92A5123D4A1DCF7641550C829B8428
+BC584EA397105307A41E857357E5AA0E5E1483809B33D3844D80552057387408
+1E1AE04995F8B226AE198ED021FBECC4432D314E03978585ECB83BDC8D720E5E
+AF7393BEC2314C8E092B18FA67927F2B247C781944738A8DFA6AA2AD62931C8A
+A44D38DCDD16C38EC28E7A81F7855F3E2FB152BC32F50AB36993F20AD17D74EF
+A91DA6164FAA37EC831FACBEFB9D9BE2A81B6749828EB0A0D657BDACEB25A968
+8A41A7144A0E5D760917FE71EA174AAAE3B37DE2429024E114327E9DB0B006B6
+2F5870A174ED9FA6D425058979776E2B13BA59DA505EF290C932853C6B35FF98
+CDD47615F410D6462A439C85B69A22632739315F9747F77212BE5EEB2F3D27AB
+448719D7AB58050B3CEF21F92D753BA2A17FA22C129DFF2BD970E1A987D983CB
+9DA86758D0542A62DF41CF7477AC98051CB7501F3DE2885E91C75FDF5D359C1B
+15CE1B7F20806DD5ED1372A9166A07E0F79B543719EE88A5C04DD6AA51C14A10
+FC765487527D3171036E905D15188ACE4CFC939ABC0348FAD77848A481AF5189
+B8FD7E9F57D5AFCE77583DB8A066B709B56300DFB1ABABCC6F9A9A4F929099CD
+1CD84908339D11DA1DEFCBA79D448A66C73783602AA910682FA14D5CBD673AA7
+1F3C440102D11E3F8CAF7AE4AD56401DD9AF621B5D3790D7152B8B176B66427E
+A425F3AA35676786EBFC78B04D63A27F9D6C0BD55E296793F719334E92B50A42
+E370ADCC3AD89AE09FF322EB0160A9265263228FBCDD3B4F455E4FD262272512
+C333F26813524A43278C507438AC2142463890F5173FF70A78219F5633195423
+A73A346CB542883A06EB99B8184A76A515B6E146C4F2509B5FD27CBF95E195F6
+7C3D25635C74A8E1E0E7DF52BB9A5A2AA3AE147AEB6DCE4CB36E9DF5E114B8F3
+7508CB6FA824A0663C877ACF73A9B37BB50E0951A148F92AB641781724D9D34D
+A3C035A7CAF37EA0EC30F596D1A282AA4166CD134DA63EE8F6F098792BFFF1B9
+DA1751DB5DAB645D1D12B973D4C4FE3FA77F053012404FFE63A9A62F39ABB96E
+01F7162E5F92B29E0CB4C37C9F496A315A8030F2E7121F6A61995CCB195207CA
+67C250C2BDCB1CBEB94BB1C861BA0E9EDDE3C6973DC0F85D457ABA0A70877021
+7F3241D741BEAC669D7CA7086DCA8462C82B69494EA7FADC6CCA83CCC7FE1260
+A63838354979E9D4E2CC97B1A00789901409ACC686BA050573260FE9E669C61C
+16CB957CB04BB5BF9D28F6B5D50095B356B3DF80B750E0A01C60C65384F5A883
+AF41FE4036965B016AE14B95B703CBD6C84C3949172ACA78153B0423883BA857
+C54FB5E218199FCAC078E134EE49B3B1C88EF9A5A34AFB393AB5C5BBD391AFD0
+39ED3265CB7C93E0B7219C278BC0DB9A8188F297A164303FF0658504936027C8
+C7F3C4FA668FB8CDF6399C56C3675EA6442B556ADAC92C67C545347BF5F36259
+2540F94AFC34982496563B6D22385E6655F3A3B1E88641007BF475B79EB737F7
+64065B1122402A03744B3334231720980A0D40867ACB3E1E04DB3CF33CDE92FD
+A3F5A1F127E02C6F2C2CF36491A245A56D4D3CFF200FC051FB86DB98458F7649
+5F8C64F008133D8FD0EBEFFA011E577169D8C90E6CD39E7636D6906DD40A9BB3
+9EADBEFFC2474F55873EFAA3642A8C2E5E4A011653966FAA35EB7D15034AFE8C
+D87142886C1401B30DECD7F2E548C412967D9B7E5EEB5EF7BBC9C69DBA334DC3
+6475BD9996C4ADF10D4B57CB82C80C2B34B47AC8CE4E05FB93F4239ABD105731
+93B76396EF09535F0EF6C0AD398FBCD6329A73C7029428237C7D5FA601A3021E
+769CDFCAFEDA86061CC1181A9406B044FAD2075CDA5B2D8F5F40D75C349F6885
+10B62ECA55A4652A007BD1F21E0745345222A36D7AD6F4A5F4AFFDA6AB94DB0D
+4530BB69DC24BE76C7D2F3C596C6F28C2EE0C9793C412EDA3F33B549527B5BD8
+529006F92385B7E9EB6E710F839364A8938259191B85E06F83B0481CEAB40D22
+6A3C67EA12B13BBD778451A26CC5FF8A3529DCFC268C55EB169905EF0655424F
+83CE289F636605A35C55533A2DDA4538BD974A862FE3B1C9A3AD0BF551C1E101
+959FD37A27A07C2FE55144282DA876D3B022E4403546F28B77B6ABDE9194A2E3
+B6B1589306FAF32C00453CC4438ABF69AA96C65A2F840BFC9A0E4BE01BFEA6F6
+6110FCF2DB4AE88F7B0AB5DEB2D1434B1E129A133BADB1B445F5E8C6D4D19B1F
+B6F7F0E17882784CC7B6B0B0665F1BDFB873D1B8AA203FD57DEEAE1AE57DD67F
+DE821280498A9B358602746D9C547D06B109E6D2EA278D5184A682A87EA2A9F5
+909556084B0FA4C494ED40F2EC7F598C748F5A72F4A4DA540D3A6F0062E6561A
+D03A9AAAE04C441AF2A6E7BE510FA7828FCE912F80CBCB50A7727CA059C4CB32
+8E5E640AC5D172DC1471517692E6B6B71EDA189E9DB9503704F62DF26E116198
+F86DFD86C81B10175B6AAFA9C6D4FA2892BBB84A56F275341A657F8F7E42FBD2
+435A49295E9CBD473854E0E5D1D9F9C117E63EBE8672E56EE883484A0F4B25F6
+2095D4478A0E2BCF569737280B2740B4ECFCE48E21828E61DA9047F833A9F312
+A4A65FD12D1F3C060067D2DA34C46CC33162203ED5A2496907D768CFFAB4CB96
+B4E1B267CB1BB0671A0A6BA960ED2F7639C708C9C07D5F3EE6AACAA78CFB7CE5
+76896F76B818F58E6084B1881DFCA63F57D62E62233C7556567545E028918D32
+AE5A772B1238732F72D77CF6E7D1923F5F1BE141DA9EBAC514F4E98EA2F91611
+E87B3FA1126EDA7BD7D12E0430641DD866DB48BD4A1E9FE2598CD8B1AF3ABB4F
+FC36E8CC236F515133C502F6BE69F0326192CD4CC89276298A41D5383D5B146C
+F4A4BC7783DAA1C284CC1E33F6EC39837B20E0E6263643C279C9F044DC08D954
+BDE4C551423604E27D6FAF5457DCA41A3573E0C8F436DA9981B4C728C4FC3E69
+0EE306A00EFCD2EB83706CD01F11C651872D144B44FBC259EFD7B167898607B8
+11E6872E36B0DBC7969DC1265C70E123BA3FA4053F110E73CF09DE2C8458F700
+BC559B4609838BBD377C91590BA31C9E73B10D6C31632376B187B102F1068CF4
+CF86A49D3BDDA3D6C55D3B46CAE8460E2DACC53938076ED950D398F3F8C58114
+40D4AC14F2CC70C85CF38F11768F67B9DE1216DE2CF64D356337BF5625B0B7B8
+1889B980DA52042DF78184A9F67E07AEFB32144BBE967008B15D6EFA8A4DE2AD
+F28612EB91F711F07CD5CAACB06C94ABCAEE2B3B2B10399CA1D41A632628AF6A
+F99FE8450F3EF3734D1D9E312AA75C68D262F3674ACC3FF10B3D07C6518C7C5E
+87CACFBBC5287ECD3B25A20820E1FCE29E8CE3C5A1C09F667A6006A8460F897C
+634C777B97FD4FC927A12216E6D26D3FC3148C3B30CDD4B46431840873FD271B
+72F6C9130CD6CE78B7A5F4B970A594F67A095477E8229F7AD04D080871D5DB2B
+2B510EFE90A60B355211C1BB1C6AC55D42D1FD6397813C2A74532D8B3BC3E450
+F6C406DBA23F2AE2CBBB651DDC7302183DD23E82429AB70F428F57FDAB75BE51
+4484F7B979FA521730A083F613BC61D53BAB5AB8DE816D0B8AF164FAC0455FD7
+F74E72D11E58678513A5FD3AF8D7B7EDB98B1E0B3E3E6DD6B14B7EBF01FC6FF7
+944614447E216B170DCF2F66286C14315A5975C3666B0EC5E828FBCAD6B56AB5
+6737158C52B424A329BA954E1067C27698D20CE7F1189FEA07738F253E4847B5
+F882532787A343DB007AA29B93FCF3ED2B4A245B8B8F4A7A39CB1C59305B8B7F
+FD43D674D0E83006C3BC783EE659A8BE9B8526991F9D91B23822E5D302B391C4
+2CB67383827B9569CA3C96EC0386A02CF6F97DACC0202C640BF7488B98F4B17F
+7CB48663674F8247FF07469F8442B7788C002332B04ECFB00BB24CE3637F9DD5
+C6D59B4B3B349146BEBB076332F1F7817E6E24F32386B340C0337AB037ABD3BF
+7DF0EE0851828BE6C428438753942D0EC3005F830A813C30999E9C4906FC4EBB
+EE7AB3D8373074C50AEA1300A465CE838FE23A71E75EC927184F6EB48B92357E
+1F3972DA6010231ED1E3E9841BBFCEC7534980EDA8C6E90C02A6655BE7B599CF
+24758A08992428913039B33F3D536CF4587E61FD968126F57F8F75AD65F3D317
+D17AE7013CC16553103FCF4BC5CB31E637C10C745287A86EF19748144D85F72B
+4470B158CBC8E076AE856B0016F721EE8768AF0CFD2FD81D3D4525C28434CAE9
+C77B6ED1F6DE646F98C6E00640B63E5DD22D3E373783F8DE1780673E7D969430
+A93DB14A982DCB6D8956879B8C67E368DAE71746F6590F2D62E954C6C44AEEBC
+469852170AF8341E27CB24B2AE1BEA68EADB8EFA8ABD3608B68BDF5E0F8F58B7
+AD2B9818508B19185C769F36FD577E07F01202FCB8C44803E3817ED4D1433BD7
+AB8FD496C0D9BBCDF24990C3ABA28E4E11B21A178CAB441894BCC38795986E29
+2607618CF0FBD8BF14C5936271E05C4F178CD930D218F74E656DBD321ED0AEAE
+03E76AAED1028D0C52CFB08B5B3B2C6B6044031A656B655461E9D86E20D90BE4
+1B336C64D8B8345FE28EF503647CCE0F27CE3BC43F3E2D0774D07A1F29496EF3
+1328E85447BDE0A34236505D30F9421A05DA0EE60EECA10F8C15EA6E0CC2A77A
+6557CC9E893333406AEE2DFBF60C979540CE2C0FA483331722EA962FCA019FA3
+EB2A3B36C18BBB49F29227EC4D516E8203E19C79DB29552922AC4D8AFF79F174
+A3858FF6E451DA661A10D97B4E215E1941893BAA8236868BCD977C33F05DD108
+A9AD2314250A27D007DD9058180B6BE31F79CCAEDC118CEE275D33B4C06B0DAD
+BEFEAE71565B4DDA2F095A45872E0B55C1F779413D85F7536C4531FD616FBBC6
+604366E497D0956CB0D2AF8C0F16C4A192DC5C1B98982E5E6DB1017BFBEE1AAC
+1146306DA4D98C52D0F88A7EE9CA6110DC84A10FA9F730E70A8B3C0BDDE23400
+39C767179BF129CD2D36A986387D8E966871C3D29847C272640236603FF008CE
+67A408EE7E3EB0FBA2320E3651B788154CC7D44EB787C85786ABC45202C1EA91
+F2C0F49304934BE37B3B4AE70FEC3B4EA892F23811C8935603F02F337C60C886
+F0411D811F3A6C7177C2019E3F195158CCA566B47B7FD2F69522A21959DF9185
+D45819CBB81F511A04B3255063CDACC67ED7826811DC8B002A7730F64854B8B0
+493E629B7B994D224526EC2A18540B92F4064CC8F51F3376AB591D5E2647DB44
+5B4D4F562597CABBA82CE6FFDFF5A9AFBC29EC134DD98BF7DF65A465B63A9FDB
+
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+cleartomark
+{restore}if
+%%EndFont
+%%BeginFont: CMBX10
+%!PS-AdobeFont-1.0: CMBX10 003.002
+%%Title: CMBX10
+%Version: 003.002
+%%CreationDate: Mon Jul 13 16:17:00 2009
+%%Creator: David M. Jones
+%Copyright: Copyright (c) 1997, 2009 American Mathematical Society
+%Copyright: (<http://www.ams.org>), with Reserved Font Name CMBX10.
+% This Font Software is licensed under the SIL Open Font License, Version 1.1.
+% This license is in the accompanying file OFL.txt, and is also
+% available with a FAQ at: http://scripts.sil.org/OFL.
+%%EndComments
+FontDirectory/CMBX10 known{/CMBX10 findfont dup/UniqueID known{dup
+/UniqueID get 5000768 eq exch/FontType get 1 eq and}{pop false}ifelse
+{save true}{false}ifelse}{false}ifelse
+11 dict begin
+/FontType 1 def
+/FontMatrix [0.001 0 0 0.001 0 0 ]readonly def
+/FontName /CMBX10 def
+/FontBBox {-56 -250 1164 750 }readonly def
+/PaintType 0 def
+/FontInfo 9 dict dup begin
+/version (003.002) readonly def
+/Notice (Copyright \050c\051 1997, 2009 American Mathematical Society \050<http://www.ams.org>\051, with Reserved Font Name CMBX10.) readonly def
+/FullName (CMBX10) readonly def
+/FamilyName (Computer Modern) readonly def
+/Weight (Bold) readonly def
+/ItalicAngle 0 def
+/isFixedPitch false def
+/UnderlinePosition -100 def
+/UnderlineThickness 50 def
+end readonly def
+/Encoding 256 array
+0 1 255 {1 index exch /.notdef put} for
+dup 11 /ff put
+dup 12 /fi put
+dup 44 /comma put
+dup 45 /hyphen put
+dup 65 /A put
+dup 67 /C put
+dup 68 /D put
+dup 69 /E put
+dup 70 /F put
+dup 71 /G put
+dup 72 /H put
+dup 73 /I put
+dup 76 /L put
+dup 77 /M put
+dup 79 /O put
+dup 82 /R put
+dup 83 /S put
+dup 84 /T put
+dup 85 /U put
+dup 86 /V put
+dup 88 /X put
+dup 97 /a put
+dup 98 /b put
+dup 99 /c put
+dup 100 /d put
+dup 101 /e put
+dup 102 /f put
+dup 103 /g put
+dup 104 /h put
+dup 105 /i put
+dup 107 /k put
+dup 108 /l put
+dup 109 /m put
+dup 110 /n put
+dup 111 /o put
+dup 112 /p put
+dup 114 /r put
+dup 115 /s put
+dup 116 /t put
+dup 117 /u put
+dup 118 /v put
+dup 119 /w put
+dup 120 /x put
+dup 121 /y put
+dup 122 /z put
+readonly def
+currentdict end
+currentfile eexec
+D9D66F633B846AB284BCF8B0411B772DE5CE3DD325E55798292D7BD972BD75FA
+0E079529AF9C82DF72F64195C9C210DCE34528F540DA1FFD7BEBB9B40787BA93
+51BBFB7CFC5F9152D1E5BB0AD8D016C6CFA4EB41B3C51D091C2D5440E67CFD71
+7C56816B03B901BF4A25A07175380E50A213F877C44778B3C5AADBCC86D6E551
+E6AF364B0BFCAAD22D8D558C5C81A7D425A1629DD5182206742D1D082A12F078
+0FD4F5F6D3129FCFFF1F4A912B0A7DEC8D33A57B5AE0328EF9D57ADDAC543273
+C01924195A181D03F5054A93B71E5065F8D92FE23794D2D43B233BABF23DF8DB
+B6C2BD2F04672F9A3B7FE430263E962F16A948319C51B8ADE6E8A80D3D88023A
+6DEA4D271676C2C8615C4A0EA7DC8F6601610F398673A4D4B905F49EA868FEF6
+39BE073001A36DEA6C08ED51452F062B971740019692E221F4455EDE46AF24B8
+407A98B791F6AD525C72C09776247E194043281D04FE1CD1D8AD8DCEEC3045B4
+F95B3B41CD3300768D8A049815348BD7AC1004F5500817E3A267D694AE108BAF
+285B288FC5F28A03E9D34FE5D9B2F9A9BB26ADE66B1CF8EB5BE606E83D213C33
+DE083C20D636EF780E761944FCE3B8A950B1E6E7568F33B557C6D59E0CEAF185
+53E609A4F58AC4D5269116F958C4D115C44B5A6DABAB79D3BB6E60BDFCECE108
+74CFBE258779F32C80CD7D9A7CEBA50A0966BD9961F71560119668C4A0C30A5D
+ED91ACB30940502B24F33906D6E0F16F81DA87EB6D7FC8B7853BE388C40D75C2
+2CA8F94713AAA1561F5321CE97997CB4AF0E37F44E25B0F73CF4986422B1CD89
+8F861CA623004ADB1C28268D7F8C484AA10C9519B6AEADC95AFAA3304D60E85D
+718B2F67D2B734095E5A92C90785252C98067DC05137BE735220BBCB7C341D61
+C4B98BFB1EAF883D38D7A93195A059EF82B42027F23B6CD633231D704B891A9B
+03D11A646F13898F20321D7BC150C63FD6DC6BF9CAFD8DA759E95384B729A0B2
+767B9F3E55C682F7A248BC1184F7D294CFFAE0B246DFCC8F215625DDD4F49F09
+FA8D41CBF4A06152FEB152C61539ADF7E70A4D23AF8267D25CE3B12D39D62377
+547E2528D18DC4134FA3BE0437EE0B3509223D71F06D44C6227D62BD01AC0A2A
+3EDA975E894371C07CA1027B102549A7D552FFD25ED2DCC68E29E71BBAB43C62
+57B0BFC6A953ABC2EF703F35D112F6B5460018CDCEAD17F149DBE5B52C2B9E10
+9818EA6D97C8AC884F6841C9B600A7D868F59C1D80E98DE0741D06D69858EC84
+1B33C6C9938B7E8A6FF6C12AD456EECBD3EBAF0D7331536B9F6422019FAFFFA4
+822E79D6D89D6366DA636CB708894FEF904F366E295F1CB808E78E883913C4FB
+1631248ED6A7CF1095C0C61C4F05E4B9DFC47533A5FD24540AD71A0E2907B98B
+28085EB88ABFC3478C9644594C7DC4244ED5A7C1CA8D960B65497D56D174645A
+B88F12C2CF0A807DA314017984CF3C4FB7F47392A651EB9CFA961B28E2989893
+9FC4D97171BD5338673F5D1CE2C3C08D48A1B77769F01D5058236C655FFD864B
+80E28F900191D4EB349AA5E400A7B0A0FCA0F3E79D7A7C69775BF754329397B7
+D18B20B2683CBC4A19729BA878B3C17EBA0A7E9EE297A5B67E915CAD92C8F356
+582B8299DE6A58E73408F525F7EA895C48A8F0D626A06A96A50348DFBE479D89
+4272576FBB0CD332193D28A8F11503BAE98F8E1D73CF5BCADF23DCD4E6586ABB
+323568F5A34E359661074D50CD8D9DF27191FCE24F10225A5D721EFDE2547E1D
+CA998077D2340B1A4ADFFF570AA677CDF3305D5E3A394BB1626EB35074D4EEAC
+2F037CA2EA389F7683FD17A8E07C12B4CB3BA8C249C9B12D297C618009F76717
+0EBF5F2DD39A6BDA10A2E5A811D4E190660F5FDDBA29201B6F8042620397AB2C
+E59267A7247B0463891831A6F40582BC3F614E5167B646A8F53D8A31717DD9A1
+9034034E705BA7884F0E0738307AF69D3517147C282747F2788462FDC4336A4F
+9CD222908401A25F0A1F7B13B8DAE622DC965AD0BE62497420B70C04AF432237
+E0FDD043456187658ED93B0F9822A3998511DF05E59CC85B7B9992CA0CE3B814
+9723BAE70D2631F32B4BF93511F67179FFAD2075E1591CA5907A4C67701B56CF
+A5E5B02EB4A842BA1F18D6864E5677359C2FB4AF5BCBABAFB053F230CC129B45
+8D15413F736EB07C571521C7DE2A13F2AC1C133D491B0A607197BE9AA1231D96
+BED7968788246B2E4D2BD330F802810F5BDA3760FEA5210CFC6F54748FB1D921
+5CC3624BBA5B8962AA7D94159651589540B17CF7A785F297264F9C1006D36928
+6E2756D3B623A6087E4B106FBA76255903C624C07E18A1AF4E185A533C640711
+86BB477A906ADD36EB6C8F4A12BC2F01B2B98412E4E105977640930CD998D990
+0254A1E5E9843B7A8ADE0AF6D5871E6D3D666465AE69813A2E26333213FF6713
+6F08D55A90C079A56E1B9AC655F720FC22B5AD8550FFF26DA7B0C5A0B60DDB05
+64E8FAF684F3A455BA9BC9278043D79537D201D520E38750335A4C8FEA887377
+879331B68DAD6B253F4FF9981D0F9B9550ED5179B15EEEB00E560A3DB6E5973B
+63403E4E2F40A3D0B937246E9652000B917B1369741E0F913C14C2D2D6D1FCBE
+2CEC4422177C58523715BD070002EC2E13D383A1DC8C84228862B6C5D3B65667
+9FA97E175239BB7FE7E37E14B96DD7960A8AD49DF428CFC13B5D3CC22E245317
+47B5244DA97F1DF954CED2D552477237CB23D037C0DE728E26C82738954EEA1F
+F34FE497DA005AF03746DD2ACF77F6E6F2C224862A1D18AF6F7A5DAF34564387
+9E01DBFF49F8621C058C04C2B3F4F3033FF3E8A977B2CD6B2A3CA4A6C569B19F
+C5AC457AE9AF334DA66A730960C7565E93A2D373C0E3DE14646FFDA05DF4C6EB
+6D4CA8ACCA3C3115764F77B842581760BFB9E5C0EBE55308B0577A8F4D968CE2
+BA3361D79378D451DD150C34D7E901397AC63B33BD7DB13C50D678F5DE999238
+4B4EA15BD449C46F262D931478F5685CDEEC4C4201FC3EFA607AFB8F27AF6751
+125DE42D2FE2D31DE769B7E7FD8CC8C5D91343B537139A822A5BC4160BB5314E
+37501F65B4FC35475FE9E03E34CBF6795AE86CE409500BD0799DE39FA69978B6
+EC74D2197C03632D3F59B85F404DB31240968FA75059B2581B101E028CDECC2E
+7E5E25DFA106E9B8ADB81E82BE9ED3BAA9D03EEB22B7B67AB1262DF6AF5F5EFD
+A5627EFEB84F3A5F92EF2557EDA2843D7D18C592635623CEAB14CC3620F33986
+410D6DBAEF9F86E4E6682054540E2B01D8FF2161F10E66851A188BC15BD6666E
+8D3F21709F196A31EE676D28A2D12639CC2E7020A52910F052E61A0710DF09B0
+064171D05611451BD24FAD64716F141E1C41D3218A8115A3D73CA041D02B46D9
+28C3D07DF0FB668E8E91409C8D0A26A65CD737C075E026AC0A974C9BE658199B
+3B9D82ED95E4646977D8F60717DA4C68767DBD7E8320D5AA1D5DEB2E6B009759
+8282F27D64F1F904830AAB501CDA4D9233FC2F12F77F0FBCC46E6B729C71F6D5
+E6F3EA02EC35D1048394F4EF2177FC5EB726DE5EF2DE7997166B8BE5B5105D08
+EAAC3481FC612665CA112D3F889A0E5B7843EFFCEFACA24A01B6AC2B7DDE02F4
+A9295AA2409A3756BAAB44608DACBB56840060037869455BEBA46F10AFC68DD0
+0563843DF111C6D34911CF13AA6023E5E899060B5EC60D0F78FDEF3E981151A9
+24903EB13ED1A67EA1977449716D1A5A7EDE1A2E9465C9C2B20A58AF02D9F373
+73E627CBF296B3A6A4670C39F3B5EA30D76F0362C81020A1777F0ADDBC6B52F7
+213FEE1718214087837049CF2AF00407639657428B9E8B532F68B631611A3501
+3D9DCA38090E227BD0D6D0FB4130EE866DB6B195C873AFD18DDB3B1E40F740C6
+B3B375ADCBBF628A07A5FACED539FEDA3379D3B60216C2EA6629BE2F65199D82
+FE3AE627D7C67270F3497AE75F7A9514968B5950E2D63C38DA240AF4E6CAE88E
+E25167D179108679876E7C80C85FE1D2BCC2EC9B88BE76A8F5736E8E6B3A9CF9
+42E58A4ECB7914865E67C1468CF66D658206830B9380FE346DC2DC4BB56A92CE
+4B5E4EA9036C177869315A2D9E6CFE97E3BFD7CBE0747D40CE5E8A3A0988576B
+8AD2B1E4314C0D8A0CBCA08844A49F7E054D31BA7543730C0A7390BC4A288D10
+CE29E389A4791305D3AC1BB6F77C805F1032787306F78FF76A20A9E629899F6D
+13356768D33D7B9E294E8CD50CBFB9CA02A193922BD9B4372C912D1689B6644D
+52CAA30F7421E8114D077288119AD9514EF21E5B9989CCE2ABA0C12549FDF493
+FFB39736AC9EB72DAF45E4EA6057527FA9F5AA0A1A3F03C12F7482E465C766D3
+760DA7714D56C91BDAED507A5572BEB51A895F8DD3BD5AAB042650154FC7E4E5
+5EEA6194DF73AC5EE2CBD4EE26E29B1D2D0C458B4850BFE842DDF2EBB4E2A25D
+C6A11CA2D8F346E2B736DF88A3D57BC0380B52396A6C039212699F5D3342EB58
+0C3DD5D01D5078479BD9FD10C07925556C0AB0F03606F33796BA72074549EDA6
+E33644F62CA35207D7421D2727AD8419AD1772789D33405FCDDC9286BC34C974
+A52297F5BBD2E541E8BB473F733AE5097BBC9D5FACF18DE4173B4711E28B23ED
+16E0A6746A60F6FF903026A3900169EDA87D98396E762C2EC963D89197B8CD0C
+25244806BE7CBF46BE60A8F9171731EADFC969C28679B025371E5572E52A0EF8
+B3FD9B4638D03E20BFDEC9345E70B8166D38846DCA68E0D0B4B53629C7E7620B
+45E0A610BCD07FEF8814CF915CFB11119F42407D1C6DC1E6353451D40A382C2E
+C74DF2A4889ED5A3495C3E973565F7178CA190D22C9693C10EB12C1E7A8679CE
+4AFECFC964CC98111BA4ED2BA9B10292A71D5B11870EB08EB483922CE8628A06
+05E7CF6DF93E112B60EF888AA8DB52994EC33DC7277D7B7A4F913AD30257261A
+D6EE80476A9A8D316D190BE6CE0046CBBCED365AB305495284FA921BE0638E00
+63DB2AA4C5F163340BCCD1061B469504DEE350B82FBE1689C1B65D095405614B
+35997D6F0DACA7190D64ABA351705B17B23FE2EE5996FCD607F49F54392463EC
+DD5B944A4B82FA2BE3E75E2946D483060DF99277340B0AB65A2042AD088E2B75
+BBDAB869D1940F64B50D25078519D18748AD64AC5615EFAAF4F3105B0111AD40
+70EE173ABE6A4ACE486B4E5999158A4377FDA6922FAA6E9305F48570D14BC81F
+BFF4C663E1EA9D1E050534F9315A663C4C5DA52CB02EA6408AA473C32CB0CD71
+169BB43C0508A842F400240F0063243B4C459A1FCB3312C41C32ED0EE87F591A
+BCB6D5D3830AE4645CB4D40336DB4AB6540B52E70E1EA415CC6D886827EBC5B3
+EC35CC5C136243B0C20B3C603B648B132B99D05F9B48263ACFA59A856BE74441
+FECF5C6D1FE9D1F4F9942F460961901E16017144C37E83C6822177B2A6C47ECC
+6C47A1104460665E5BCFCF08874008302750EB991CD98D0D8D22B921F90B99B9
+05EE7C39F2BC2A7798157503743C9F2F267BDBE2E8A4CDA7317F81DBF8962E1C
+EC02822CC7F770FD4D08D335904375BF0C6DAA0510771627ECB9EE69C0F47D30
+69A87052989DF80D9F4F19F75B070C3689AB3BE0966453F9D56CED6C1745B50D
+813AE6D7E44B73423AB3778ABE4CD2C4DF40E14C5A426043F7057E2DFA2DAA70
+EA6723F1C7967FECB1E7C1C0CA283334163FBE31C32254490170C3513580A552
+19A5DD75E6C4ADCB12D33517A03318A6BBC7E4214266E125140D8C40F78A0340
+1F95D9FBEC4DCC55B71E89375AA94B0D55646F6C069561480407D0A3AC127024
+D7D1E9ED6B599A2A8766B8792F46D35508B66F302D289405B101A3C6BADA680D
+8C56E2A00B766A4CB155446F862FCF17537A2BE85418E20CD77C4F1F69F70BC6
+17BB5DA8FAA876D0E8BABE273A19C04A8697B3E3CF4725E2C77C8761A9243F24
+96F8AE96399996001A57FD75106745AB4646FB9C6421F1D4EBF3BE533BD11AE8
+14BFBD6D308376B26E08E4ADA490DDCCA94BE8240403D5EB0FE3549061DFB668
+4105B4FE77189546619B6BCF3F9723E278E98D50A17DB8A4C46744FA21760635
+5B332689316BD17C966D466AE737FE3ED7ABC443ADD88D4823A10BC9747ABDEE
+027515AC353A420523F85298029475D8BFD83A2CD00C02CA07974BAA581D2215
+A850E6E4C0A5E17E0EDF91C63FAC18C70093F40FEEAF0350B403E2806F4EAE96
+BF616A805616EE55C4657418C26CAF54187A6684821B86A76F15088AC4D5B551
+66C3CA8DC61E9810858D1204F899C7E3A1754F483134609F6EEE6364B1CC04FD
+92C86EF194FA3249601AD722D75D1D395CD15A93C768EC60A486AE885683364F
+93DA00A865C1035F913FDA69E7D9A0422880FB81EC23C00427F07A5EA3CCB613
+83C859958AC53FAEA26A6BB39ABA068863CCE3D447720BC31A5136E08EE58963
+093AF587A72112D55853A1048A2B1695DB2D7F13CC924F2F0902071260C33ED6
+30893A04577C0ACF0681C0FEC23E5404F844A83BB5A2F8DE1F0792196139993C
+1152094BC36A6AE5BAB4B8281E506F485F0BAEEBBE71E174B7CED1E52A8242F9
+DBDF3E0FBA296538D964EB5B7A4E23B1BB0F59872C9D4FE8498203E3AC08B71E
+D2B965AA6CD5D20DA6C83FDC86F4A5D68A58A72C5BB9BFE9BC755C56B24025CE
+6F24443D3CF32CD711D3D94C7C1DC275DDAE3341D840090F97CB6CAEF274C94F
+9F3BD3AAB3F98BA8A7B5CE5E48D1462DAAB37BEB1C10B410E8D33FA42D898183
+BD4F807112D78AA94509E33C179BF7C9E82E55AA7D09E128A0DA06A330CF4AF8
+5DC861498CE029CE8C1BD15C923A708F2E7AF98E4F7B34212A0CB417553C86EB
+6DD46B0466F1A21D29FC5111226794ECFCA5DD4240C0B8D106CCD7EA6F03E133
+BB7733F055D6FFA04EF5C6F872B4FDA3E42F0F036C4825543D75682ACF71B548
+DED160ACD05625274799D0AE201305DA526E01A3D2A719B1B15C05CC09467F3A
+5627860C0F36C503EE392E1786620F3F2287AFE56634E03566B9B1F537FD92A2
+913166228791871A8F8CBA1A1DA634E8224058052A10FE1E67CBD3FD21A6C07E
+243CBF58BDC78577847664EEA5225EB8D6679AB17C563848A9D4D58995EA3609
+51C1443B752A070D9872FE1643F0677019235AC25DC2B29169D38308F2170A1A
+A0FDCC59E6602197D2815B914041FFC7106DAAAF30CD97400C6D0826A40385A4
+C8520119A065CF32CF2FC5FBD8DFD29222528A7F96FDA533145846B3428F8239
+E50277C366418D713F84B12A5FD4F904DC13DB1844A391FDAEB97643A6FD2945
+942FD4FC5A4A35E184F23304B8B4D93D0C37EFCC4E106D4FCD0DA3E5D2117589
+3FFC2BD1D121026562C55C455C3585050B9460891B006F62D9D9B66695C3D348
+A467C14C0256FA9621CB056E7CD389505194FF463BCC4010897F9A690EA87D9D
+BB3ED4C174FBADB8A4744C6E4A44D773967FD703EC37672F9993DC48BCC8A060
+6CEFE8E6B8F10886E15BA0466AF410B90DF0020FAB88BE493606B6A734EA85BB
+926950EB10D2F2CFDBD182B0F133809612CCF6ACCAD049C8005A42FAF78368B9
+E7684F98DE421BE0A3BC0FAEE024A7BE67E15C8394F17FE84DFD8156C2A3E94D
+08259E15CC657E8CE3088395BF6B5F825764E141AE15EBD186DC049261623D26
+8636705E06C6E4A1F8ACAEA59F91B042DF5DB9C2AB986A784384706A43E5F18E
+42C29CC1CA86D4F247B3BBBC89F3633EE074DCA4AC15B1E33EE4822812A62E88
+C32B0AA57249980EE17AFC1346074800FA529445D18649A0475246A25CF325A0
+BDA06AAF392FD455218B13D9ED577D51A9500B9FB7860716A8E2FB3A8C4BE3B3
+6656C6A5653AEF00184020ACA0BCCBF48BE3BF91E11C8658686C89848E714E6D
+DC158DCD1C1BC03B83FF94C60B1DC71CE8A86B46DBE661C9F8F4677F8A2C7CF1
+E41A91EBDA2304735147BE66CDFF2673F09D408297302124C127F0B35690CAE9
+CE1679120CC4D582FB69550AD34A047DDFCD9D411724554CCED753DB52D6AA7B
+22B0C55EB698ADDBB0F8ED15C971AEF113C74B9E25DA29199237B98DA4023665
+C2A63A837E4CAB38F8DF37DBAB5DC80C0AB25B56BCA5D899F1575E61ADF75676
+F48EE26C054AD9A75FD88A3E17498AC26FD4DC8000A125D6DD423540B8A98779
+B28CE97C9CAFAC45693FF43249E4B559E7F19FB349F94B60AAAAF05B5FBF244E
+982B4B51D997DA5811CD43E1917DA885DD96133A5CE1A290DBBFD88AF285A879
+D3136C41C839FD2276760A7B4F21F4026AADCDAB3F113FCCCA9588C7FB72643E
+AB8F6D8AEAD1DC3DCA6E436B3DF24E7DC6AD37137B49327871EA80F3B8AEE932
+D20D9A5B4779DFFAD7B3E5D447023D6433575F8F5AF589D7E094DA3786555D0C
+046A427ADF128E00AC7B458D5A131A130D6F49A7ABF47833791F172D69FE6393
+EAE0E90E7FF7BC2333D4E0215D5201E4B209591782F8A664335F67B9DDE36DBA
+793EC77E5EB405862D14EAB6A99218B3F66F11EA2F345629C402BD8FD9CA0AC8
+FB5A2E119DAA9F80083C9BC54F4586C44320993CB5D9CBDC8F8522001F82A16C
+E307F175B794F4426E5D273581A6D2844444D82093FB03482B270D693391DEA7
+CB26D4A418E48A2989167B7DCE251F0D53D5C9B29D359A568FEDB965DF31CBF3
+900392FE739A2B43BFA2363CA74FA72668FC761D1A17B9C0B56D666F94E090DE
+EA37CAAB4E066201D6164118B5A5DB3FDF0B15175392AC33785AB5DF23A71731
+265FC02CA3F920D15628C16E671D3E2CF4CB9C39E511C083E7375654025CA02D
+8F78B6D19BC8369B2A6B80A8A3E16F148480E3E0A4266097351A03EDAD9D7E84
+CBF08F6E8615BCD0E6CFFE077688C365888921E4560B5118D8CF2E912DBEE229
+44E6CF716D3B3FEC178E2FD794D10267153A360C9C94BD89DFADB57108933735
+131A3C45F85184B78E26180BA3DBB0466C507369F2C6FD65AB2CF6A54F79BDB9
+DB56F26CFB3E6591E5D3A542B94F2EB8D997A7019306E4878DE4117F05362D8E
+51F061DCC9970506D4A778672A022D1935DC9683DA72C96C375C212393E44285
+47E4A313909459423ED2BA01D0E1E9DACA45F94EFC91D568C63F0DF551362FC2
+BA6B2E0C810759593AB1BDB8C2F50C4E8BD607B15F5ADFA4D0C3C442D34EF5E3
+44A819CFACC305F7B97766998E83E5365136ACF7F9D099F66AA8A05849BF1287
+CC4D31BBC3C5C605452A1D9522D16A67574D4434DD54953C19A2E022CE027509
+679591A42534055CBE4DABB07F7BB64332BA41E584EEA50F61F4C70166722E33
+58A5163F4065B389BB6DFF6156B8DFF94E829088D0BCEB50B7E52DEBB6E018A4
+D6F51C340F590215609750A7BD8EF784BE5729B830D5A3E4CD9AF2A51D4769E8
+FB10548593C75D5A9FBAF8FD09B605519BB8D051FA671B832B52CFE3278F08FD
+D23BF1D7567FF50C144C30A00A6E010BC2BDDAC2CEFE7844A903B608A46A1DA9
+77BF85A60CF0D262BEF849821975DA03DEDBC19DA349D5CB4106B105B82572A1
+0BDEE2612876A532BF35E41470AE30CBBFA16DE257A7958618418C5E78FD0770
+E039671A58E50611539EE7C418A951E6A7C632CC47EAA10D5CA9AF8ECDD6AD68
+ECC29592EEF4F7B93EB7877717D59F2EBB4652D2DC9D308373AB35AC69A2FF6C
+AB047B20647CBC2F422E1914220C12E843104349B3DDDE8CBDA5AFDB246484BD
+9E446913C4321E200B177332F44DC0F2A1DD706D4E8725F3A5EAE6735DE2C4F5
+32ADAD34F765D02F477045927036252805888063416CEE0E1C7AF3DD198A17D2
+EEDB140741D2C8AA4AF111BDE3C1B97344AA2F26D910EB634922CECC919061EC
+CB5A4D2443EB3A0B204C80310FD56056AB1126335CFD6C79EB947209CFA4A512
+DBB88A80B7AAEBB6D1FFC3A476F7ABDB58F3C0EEFE53F2579337B95BAC50135D
+CC0C72E45919A8ADAC2F80DCD9AD37C7063BFE894D99C4BE9E6EE4B5E5D6E036
+732286C17218A1C37530CB9BF8D672A4ACFFD6C686ECED5A62FF2289442E1301
+57F5D6252288D472AC0F813F4243646787899E06F98C036534061921806CC692
+5EE4A53F9EAC19379B1A4DC9D967DBF0F10152CAAE08206EABF5E61E7E0D9888
+B27423BF2BB8F1D14023D198F9E76C39817C8D9F13383683EC11A67040608203
+A5C71894C750378FE5CA9D10043EFD3B0B6FB3FD94EE15CA216170BAEB4F1CEF
+76B31D8B21E6B46EE9D1C3D61DB5C552A96045432B6CF2B9B44D0618160BE025
+2AD6E8F219450B78F1B4BBD53B18AABDC8BCF46DBBE3D7902E5AA2C99D424B8A
+3115B12B922BFD9169242E1F916995F0A89DD69B3DF37ED819F5933192098773
+EF4313CD8AD96FF7FA7D349FBD70395EA576D8D4BFDD535472E055CF8DFD7C56
+0CD0AED395C557F3BBCBC0EF7AC86FEDCC18D60D738374696DC15BB44B852830
+3B781AA3F66A0C77112AB99ACD7176D03DB6CC5E7E81AA4BFAE21371BA2D9B31
+95A8C0F2A951D02B64EAD7F397A555E8A6007303A2EF448865F44D33F5D721EB
+E79A621F73932AD5588250E028B81B1F6EA708F3FF32D70E116BC5EB64FDF33F
+F43017537F7F723DB71C003B16B5F01E360C71C1A09F86EE4B8E224F3A07AD6E
+A59178A4C7C3C822017B7DAC52EDDEC4919B9A63757B35BB317D4BF7ABC96FE1
+51F4B35EB329CF2EFACEC94B27EC377560A253B6B477C24A622EC4C769F961BF
+EE120A4D0F7E75F34EFF5322E3BF53BA9AE93D591648D335B12838BC4C002157
+1B3CC54019500DDC798B57B6D2B651306236464E9E509282CD12A5D63166ADDB
+5CB4E14E4CF934FE48E2FF716005481CCC738C7486E151353E91F39C83BD895E
+9C53BF525AB40761BA30B60BE5F16DE76F7DCB6931DCC304BCEDA4598C98B90E
+49194E408676D0A59D88ABE3C8FF2D1E30F218CF6CAC749486C2EB16FE74B13E
+836282CC9D024342F4C4C5D47C6DE264B0935F6B752B32A573A67B21D64A3692
+1F6DBCDAC7FD2F644B49A512290CF6ADD2DB56EAA02A6972AE43593D9D3E3E55
+9A5B4C2AA3D65232B9D5E134A0E513AF7D8629F2FB3381FBEF9762C42FE9ED97
+1D0B62637334536955A43DD38528C03CF0D6EF69FE398BC3FA116EBF02A0707C
+EABD8BE8ACFB570D76D01209F22F4D026A3744BF5BA2E45F81AC5CFCE312865B
+20C7D9B0ACA5FC06EEB85412A765DA2409B3CFD68AD25993B6D38F82F9F621FA
+00DF0D8F79D01A0832AB392DCA7ECB6F70316316D0BBAEB4DEA1D79F630E0AAA
+18339C530C9E7E52A557C7EDF17C8CDED2D7DFEDFBA57E7BAEFDC9E313DE95D8
+1DF8AB287F2246089CFDD51972D8DBD2ABC7D011C6D2D65F03B4FD411EE9DEFA
+BD0DB4DB4CBD2908537122BFBCD3D6496F81146E0271E215FB6C52D696C91C62
+C88CD8FF87CA931207960C9BA56892999790016B0236D719FF6A188B8A82FE05
+84ABB18035737DBDA92F6F61640C7B0B56F347B91D8206296D827DD6953758D1
+D05BB6BEAC73813C1C9F0ED2692B63BD50C964A773F0EDE23CF1142BE165D39A
+A88650777DBAEEFFFB52CFF48DC6C54697AA63744E460E7F3504A76E11566A6F
+67D8947C2BE4EB9963196DAE093DCE489BDDFF76A2E04222D425EF8E4FA92609
+6F9CD6FA39A45095F0B0D83DEE822BEB1A13607B8DF12AAB3255373E4A572C22
+8A9C586D5F74A2D61F2637BCFFD66D7911174E1643920E0C2B9489F70DFA7134
+42BE46F35435E5A63377251667C1807690B3BDC84E4368CBEE03FA8E6F2201AE
+CEDE2ACA80B644D034B65554DC3DB00BDB20D453A6D630AF3119450D4999DB5A
+071399984D1F58B7029117F85F9740C78E8A039E5EB0002DD69A688BDD39D7DA
+4DA1026F9B141D2CFB13F2F2B351B995E29028DAFFC55BFAC309B7DF3FE90DD1
+126553E2F1EEA284A17BEF794925957E0287AA686102B4E71FDA7E682B31744F
+C58B693E235D7ED0551058F0F22E30228971B7BE247C7CB67BC01A60F33B8C74
+2F77BA800348344A911FDBD50EAB869374AB0A9B724135E2BC392F763CEDB305
+A694769E3FAF2646AB51FF077C842E1E0D02F0848039D0F74528F79748A27A3E
+DC430B14225AF2D9D93E8458509ADDD01C62D5F7DCD00198DCE742F2829D0E45
+ADEE1526D34B26B89C68850AFDCBF9E7D63E85D3C693F60A8400E2BA4C860F55
+7A216D43FFC8612AA2C59D839EB8E9D8CCD99D6DC5D986DE920F89AD9845F27E
+BCB611EE2827B97A83C927938BB9F76B87BCE5B838DBC24425ACC724A64AFE1D
+EAAA897CDBF2D10869CC891DFC8F635F9309FBA7E46844B99BFDB67512A62616
+5A80B2A903420C9D2C6A5E9FCFA5982CEAFAD32B6CB94909CB25738AE184915F
+F1E3FCE39210421406204A740A0790C016396C2E7FB74B60F5DDB4A3B4E7123A
+443EF80A5930150D0AB4682BF2043512B1203DA1F86819A40ADF2CC6EB08A06E
+558A0A4E30C0C4E2940B317E7B81025DE3B04E481FC7AEED45FC8CFC47C6F24D
+243446DD2697412262952DABFA08EE7CE5A110E6AFCA609F9CA83ED2AA40A244
+0665B2F5B088E613DB97BAA3E01DBAE957EC6C016FCCD9F1CB14D6003E955A35
+B70900EAD5C1D9F77C5BD2425BE5675C280AA0B324E2A15E7BACC43E3BD6DEE4
+07935C35221FA301D3D6A6D10052272DC60B7AFE255E1B03916E5265B52C40BB
+72EFA199C50F9C41DEAB037364370D1012E754C5BC3137991D59E24A2F2D7009
+05BB0FAD19EEF600425B64AC5F1E53F50C8F1662133B8C90B24B59B776F258A3
+CEAB542865BB8145529217EC48BA60F840C1882814947F5214AEB55B32098FCE
+362E1155DA5C4DD28828041534EA5D5F44502E5C38B929FF6C64AE5C75ABD7E7
+F4B9351C7D0619507C2BDF8A131958C5F878639CEAE3E2202256F7FF78C64735
+492B1F3CC24389E3C202364FE4E267CC8C7EC96BB3CA2EB5B2F9C1360F771BD2
+BC4F868DEE02DA732023C65763BAD98D735C055A26DCBE2085E68E616C624944
+64324A063C514F3827085F51F0F0F1692C9D076BD68299C9476CD09C2386DC31
+83788C0BE489CA93372C057C466A04FDEB9E4662079129577DFE7FACC0D36E20
+201F68C9487FB7052664C0B26A79A92D32146076DA9A6A66EBCDF49E14C20021
+907577EE2340DAC22423CB5326B51116CDB2B801969D81C02A6BCFD597512B2B
+43F6F1F3904ED7F88F53CC7F6CB6E56CC43D36544D9A1A5B555C7237F766BE34
+39BD4AE78DA0441C8447A0C931A9DB1A3D4572B59FD4FE0205E8FEE80405C429
+54CB13181112D4655873A42879EBED8E98A4C8A6313C6A101F21BD3CEDF58CD3
+EBC0164FEC84A063B74D5431AADA6C020892DD64EE73555C161A5F578DF09757
+8D2F91AB1A16393BA46CCB9D14F6D77126C5D44AAB885AEED47F484AB52AA335
+053791F57274430C8D16C78B5EAC6E7C426D794DBFA82D6DD79D43DFCC24CC43
+A2C5E13BC10ECA984F78DCBAB6116D53BF50D6388A8127E35FF3D231C5655655
+851756C4BB44C77B6F68CEDF01D9280958050F4F9F15911E409CD3694427F354
+49571EB9B688C29CACC7E965EECCF3C6C9F784DB6BF6BE2AB12E912D1AD16698
+C3218B96CC7B65FCC1025049E5207AF5DA6C961041E0E9F4CCC5A4C3003CF68B
+FFAC984734254470E08C1F849BA9C5AC8421A77259DB6A820CAE2F119CBE258A
+54551D6A2A36B22A3A1FA1EE8F5643412C907A02D81B77D77C077958048B1E53
+960059768B678C911077411A6A2E5974E99477187AF7986430E36993988233BF
+993ADE9D5A35F8DE4BC3B666F08D1B2091935A5B335EFC856141CD7A31AE0A1B
+DA5873FA7BF2EBDB031BC894442A21D13662DA6868E547A612974A41A7D2B51D
+31A455425F7D6A9F2F5B8B729578A302139C3F1C1D1A95380A71360B1A3E856E
+A67905AD4B48040865AF25E420457A375B8AAB8245FC28A94A9990CE04FF427A
+142E9B2E6B3420FC5D40A1D336A8BBA21DDDB56B81845AEDF448A0DFC626533E
+89FAFFD237BD57F64E34B3D9446D6F27C2CE04D7E79897517564AE95F7C7685E
+4C102D094EEBC594C162F8A389A5ECD96C76E77C719DB3EE1D3E03455C1097C6
+FF120780522E2AFC3EB4980019B68CD4FCB2A8B6C8E2D942CB3EA895A9DE3D0B
+96395D6C1850B913046A1640927E64568444559FC43BFD84B8271E30F4F7F71A
+4019846BA42986B0203F1AC54F7E60B5417A03F817B55122B5104BB77C4C8511
+90EA9D45F6379D27D9CDBD80C47753A9E47B344880E2AF9BF2A1E1C903F16C5B
+74725EFC0933DCD1814DB1A18CE2F432C8C37950E59889C86B19118DABD66ACA
+446FF347151956FBB3777DA0F0BF054BCD09800C0F977EC06F15D343D76FBFA9
+4DF908CF27A2A8FAEFF680FDCD0B7F5BC85089633D03B6D4D93E06322A925789
+F51C61FBC740E3715BD7BC6050923F431065DD2EC6BCCF59CAD5360198494467
+7F1365C8FE2313B419814A8269C75E53AF406D153C13A010F87E9B2031B317D6
+D74CF7556F72A2EE77E09A48F4960D643B1DB010F083366969FA71D55649F758
+6EA9777C62B1CB7F294E418BB95B57F664B2E9E7F67547CD9FF93CE200AB415F
+553F0DBD2FEAF6E19211DEB57FECF1FBFF9AC43F4CE7CC2D0C3781972BB02D59
+90DBD6F5B702F1E6EB96907824B422891C2EF628623D5AF3E0C700F9BBAAB0A0
+8E9CAFDC175719846E7766979617DC0DBE58207EA2510FA8E8B1961B780501A9
+3F5A0071892F14CCEF31B61000EDAE3A76B0C1032FAF8F53C95A4516E2AAF7A9
+08ED896A18DCE99441A5716A03E26ABF5B83F7FEE88AB0DDA020109F1066F799
+9E12FF501F0306BFEEA87AB0EB9BB484408CFC1EDFFA0766EE5E5D94CF75C962
+570783B1A63AFABEF84903150D39742D157D8A1EC6E144D0C73B67FF029094CB
+08323157E2389F7759F9EB8D9C5256EFE9E4A9555306D00783AD3FE1004F5953
+2232AAF9F17A9A74C3BF6BDF6367D4B36DB63A231D9BDA1A1ECC0F647539CDEF
+B32C2001B7A5176640F4043C27A658C4390D87B81DDD84AC6B4AACD937C8A7A3
+C96A8F76801C277C9001952AF099C1AD594E2F828330B6B99FF6A12D33CB4FE0
+9B704AF8610661F6E72A081D561B959209E5175994487964FDB7C79D5C5AF9C5
+6FA331DD9BDE61F589E933C13E5DCABF639C250D1A76FF050B54A7ABDE13AFEE
+2448FFF58F4090B6EE412F54DE75B32CBB9E50A409E910E9A6C34E0CAC658DA4
+950A7AD3972C700E9E2325209624FF047469ADF55A178002049735433E504873
+D6D817436DAD5FC9674D96E52BE81DD3A330C2C92DC0E0D1BA3B37CA331EBF31
+72C48FC2F15F532D3385BF730DD661C4165A34915955ACE74E257A9BEEAB5190
+F82BF065BDE30D6D22269A82FA554885DE5967D853951EBE1E65D96A80F726AF
+87B8382D8DC41C817593EB77F06F686EA973D6EDEAEFF4446B9E4C731008AD2D
+9C76FCBD4A8305DD73E83D383418007B7C0A1B2F38AB71B88ECC902D9566B484
+1AD66D7ECBBE878F9396DC73B37C6FD88DF91670BE919B82EF0E7054094EFD08
+399159E2024E0097516607A3202B4325428247CE5EF0EB53F40D514E37A286BA
+591F2AB766BA9011F206BBEF0E13957996CF73912037AE8807318B8E3ABB2404
+69962E85DF2BF32DB9CD650DE046C0C83BA10CA81979929767F1FC37D712500F
+0A099E57924CA4B8CEA2A7D65F8C7B8996582AA2B21BB1904D18261B75B8C264
+1F01A01426718FEFE61DCBBF7F7572C561FB897719D1A9D34982D52F311F53A5
+67C504C187CB35D48D4B3EFC03E19DB9669702D839E40AEFDFF0B0C522756CDE
+F349E3CA0CA2F3ED70FEE18AAEE10C2F4CE9EAF05B9D36AFD7F2FA48464B86DC
+62C6CF8ECB868DBEBCD85BB3CF0DAC3B677338790259DF9BDB181D5CD34C9042
+577769BE4951BB9CBC03C6999514169C14C05999D76FCB51C3E31801B7B44D72
+680C91B291A7CA81A1B8B59E8D2B0BA86330EB8A007F600589676139B95B6170
+1FF42F6976F8C5C486653045603A89577B795B1088177FFC86052F5654D19105
+86AD6B02A56CEFE86EE9AAFE85D10F2F5DE16259D2DB438D5F0BF05EA7F7BCA6
+0E78983D95092D640840D2057778585C9F1D690162B1A54B0EF64B15BC1C6292
+184FDBF56F93C3B456B291E481A74568F12FF93BC132F6140CFB08F503A76DD3
+271A3B397F41644846B602E7940BADE0617C44B71C5E57DB8EDF6B62CEA5C6BA
+3A1309E90DD031971B9E6D2EC828E78486F8D81A10F50625DFF4C91B7BFAEA91
+35C07FC3A2095F8BD7CE4DF7EF794B4D4DFFEFE271E770B131442D905296C3D7
+C5CEB6E7AC12623B9AD537F9585570B198009D59E39DF9A6906C49E4032E9EED
+1B193E24879D899BE473B6852FB249F592C4D226CEDD895E94A992FF64D28597
+9413D999AA144007756FAD380385FD4F4DA23246B039A025829FF8F0F193768A
+F70AD12AC282A4667734CC7D22BF83AC4BC973790C9CEED4E77297A52A32526A
+75630354FE97ED1519C678F6A2343DFC0CE64EB7BBDB5A2DE66F623C9E835B56
+5E32F8FB55B78F66D140F9932628CE4CD14495916326E3F36EDB2739A9F6BA50
+462FC8CD9E89D772DF041AC1EE6A393AB85471E1FE0A945833040B4E3BD5ADE6
+687899CB3DEE087DE0C6E29149C2075115C4F799C5E3149F6146005D44A1EAF3
+BA24688EC2CE80A89A429FB8DC4D9C0D1D848417537C561700B4E4E169E60FCB
+E4BEE22AA779D11BF3A038A0F83DAE9E502865DB0DD1E6A3BFB06244B4C9D2E2
+8E799F8DFE3FCA0F2784611B128D7974AAA66094D79E7ABF1ED6A58F50CA2D24
+619C10B25C956151D3497D2EF046ADE52000555EBB479E45F811CD93B1ED2E80
+F82C73717D425397967122D3852F140F08C57964B8A27537B183C10C43EEE44B
+7F0554CCE598BEF54E57692651C461E2A7DF7E2E722AC8C3482FB596CF7E2F17
+7512C72BA052DF4384E36196041D87123A76FFFE235F795E4D1D043A71C56C9C
+07550D3C79C2B5F3B2E448FE82969A546E0E7AB6E610625751B0D5611FD38E60
+28CE4411D15AB6BACABF4D3378C78D26E7641FFDD796129BC03B60EBF13C17BE
+89D6CE111A8B1579A12368942BDC80A7DBF027A4336753BDBAA3AF60A644CB8C
+4473A8AE74604391E1B173E19E88A6E646DD0B39A2206292561D2520D5A5E80E
+61B2D513BA172D53E6653E6F33FB3D105872E73966D04AEC88E2A1103F97A3C2
+E0DFAC4C22EC60B6368FF57EA67981FD6F535FC06807DC6A0B10EEBE23B5D3EA
+61BD611420AECE085EAD1A41C2986E2822CF9AED56BF03E07006CD2BE66222AF
+13FE14B36781B221C039E532F7541ED27AE032328C5E2D48E58D1D8853E63C75
+1B12BA16A6966FC576BF4285297393EEEE57AFAE3545B7E72C408CF3C4F84AE3
+6D4C2F523A66E90244957D0E9B9A433E38762621FF1E0A3B000830088E9CA88F
+46938B952F09946024BFDE7124C2E4168A94506F8689777BD80A567439366265
+9A03FD3609A546D8C2544813244DB291F9DCA0D80C9913E78858A4817FDDF5CB
+D786BDBB43F2C37C8467B1686BDEE970B430C55772B71DD1BA324D442D998FC9
+4E1F61D48988916282359437736FB3D529B768C866A975F1F65B04BF24EDC5CD
+8790A49151C7DBC2CD4304AC3912A5F71CEA8B00A5743C1DD91907A984DEF697
+EB6647D31941C7F38B854CCFB2C409DBBE3DA1D7CC201CB9CCA409E4ECA1BB7E
+19B5F4D58231085FF900A67864095E472E576B886D0BB6E7F47CFDD91342BEE7
+1D94E06E8DB8E26BFEC2F6062FC1276600994E6CEED299C615A5730AF8539FF8
+AC927AF2705BCF36720F3619687CD875E62135DDD23CF9F8B1C8FE95E164997D
+5EA4DE0B959B9F9A6AD6E8CD879B3E8E03A8E31B7FD782941B7BE94437E88E0B
+35D981F8B91AC11D341DC849F287CD07F172E23142F685009CCD1241B206FE70
+3A04714780CF8323C01B35C9728DF65BA43905510B640ADF6273E1AC01087AE2
+A368C1DD19D8778B8677679581FBD2E2AA6D45E7A640694AF1B386AF5EBD7DC5
+A1DC0430AC5DA38AEE1A19825A33B158DCD9FE5857BF9D6BE59B6064AEFAFF1D
+F345AE8BCA98620488287DE7A5A7922D1A7A7DBEE72734C0A865102A555FC156
+7CBA58AADB9CA29AC308AF91EFF34FA56CDD526DB21BF5A2DB922253CBABF2B7
+F22B4A5BD2F6B074134A2B411C39C3481BB0FE33FD58314BEF67EF3E41BE39D7
+6DC99FDB0B98B9790BE34823B24CD315BC351E058E45C86B2D581E8BAE1D5EC2
+0494A747E8767BC4731D25397B8B8C563E1CF13E58404599E96514E96E87AE29
+07EEA019B3FFAB3AD3E6F0AFB69C903B9B186808F1C964DA19941165CB1E0DE2
+D40ED700156318835C2E89004719700ACF63EF60EA33938C745327BA69FF23BB
+3CC5BF249BA70BE2C0A3FAFE041A759FFD2E174E1B542FC4D0881DA46CBA26F2
+E79A5A5B9EE50C88D130BF719836D40C17ECD640B52FF6C63261BB0DCE6FBF69
+D05802EF13086103709E9C3FF8D570118BC694F5B24F2A7F5AA80C20932B0809
+895922C3C9C92B649022F8D6E9DFB7AD940173A32F9405B4D3B6CBDA83368C62
+BFDB32074C3C8A3138B030C6F1AFBA56EE6D8AB4F4CB64BC160634791B549964
+DD255B244FB489FE3640CE74A38130A65A6E74ED0258317E11063E5CD591034D
+C8E3494E6758268561BD618F733AD0DBC14F3E7E89C8987EDA49D16EB2F47CBE
+9A79F1EFDC3D75F65849D1A9F238CCCAA203C68C897B668A156DE80669F5AEF7
+4CCF7A6B31738736A230FDC630F0BB4918FC5B81462D87597CFA86F3642E6E7A
+209CA9B3C82CA9E90431BC64AC31576C8B727AD145DA4C49AA9F800520112AD6
+0A588E212CBC0762DAA7B9CD987144D12ED1A666C0F674354E8CAB7E5DC52FDC
+789BFC30C729187ED75A3BF3731AD2E1A34B85932EECF2CD67F6EE8EA9B35E7D
+037324273C1E866CC1E08954B7B6545BFC43C01932BAFA495A41169418A61050
+5A1289472F1BC2DF4FE01C6A6C79094D0A2DFE59427F0DC233796D7A56C45DA0
+917685C31DB91EBD5AE215BC354FA19C465630EFFBA62AEF4BBDF06B4D468E94
+84AFF6873BEED348CA82E70669F3DE479D012B511A9873E742F9280E3BE7F447
+32AF1235DB0297AC5B0BA32F6AD841A52C5821620693C7E77CBA3977BB90419E
+FA4512B1997CA4205958D21A5C7D9C66615ADB40E78345BB3F3450EC21CCDF91
+A4E7626245EC83F85E974B6864E5A302AAC16692DA6519480DC5212112F52CCB
+8C1E05B8CEE3419AF765D441C7BC413EF4EC4659924C8296AFA8271F10129C19
+BA809F90095F6E69E7D7A2AE274E3DE25FC3974E72D217417C0714FC1D765705
+4C01C6AD3A078C83FC4E547FEFD409D5759B1FC61D4FC4EC878825EADB380AF5
+A58CA709C1D75FB0602BF6E0863301EE5CD4C3D3E9BA35D1A20EA6599E3347DB
+A57F046A88C2CF2C9CFCAAE109CB1A5123222B0DDFEB155F1EB6881F9457257E
+85F757775973D35AC470AC6077E1E20492FCC904FD074738F2AB058BB134A772
+063F18E925780FF1BD5EC09D14D8089E76209D99BF4532E4E449B723B6911243
+D2547A09B322E4D9BCA6C44F55B3FF53F89FE570E06AE582C781FCC9DA1C8A89
+92F54D08E6A9F9FAF6100BB12C1E364A12FEE29D4EB1CF1CF6FE221E0854073E
+080C1484F34563A90EFE8B248DCE20A9FF30348287C9C3FA38970B18ECE35BDA
+EC4EC2A0FEF1BA223CD81A178CC49FE7DF3BDF2844D15D1184863C6DD86F11AF
+7FC668486590E0DEE21EA3FA386FA3A0324E3E5E63F9C038C6B74DD90898CC88
+B0218182234C9184247E2ACF6C071D208EC09D34B2E820E0986925884A35AE43
+9E46EF3651EF40F53B1818FAC5381A7559B0DBD67D4D1EFFD1F3777D6FA60A6D
+564961C16F8C223EF07106C1F9306E48113088C0317F6BF7EDF4495D0F3E6BD9
+71494C19BB9493C2167303207A80858BF60AFD299685ECE12F4E447E7BB87281
+1E43E06E4CB5CFCCABF11DF12C491A36FED67954D013F8313F69C4E135FD4CCD
+312AD3FC705A5CC1A50DED0A1DCA5EAD6DFBF406A7CB911BA9816CA9C60D3A77
+4AC7F74F45FC231E44EE35F90673C1A91E060EE2B28AD8629B9A3E0EC81F084C
+760E1B15D2646D01702D673FA8BCF6F38991E4F88AA1CD807A8709FD68039830
+92F2F4A9EF47FC736CB7232D0CE9DA35890BCF9858DE0746F75E0C02D69CB80D
+D2A18D92E9639CA92EC3809DCA0CFAB80E7CB99AD071609CD2E12A9B1066C8B9
+6470C1B5626C7B87B333147423BC9AB2746FF8A743DB648234425566A4E21251
+CC10E961BAD8DECB968CAE418103CCC2A6006AB74F8BD0EC6432F7C61F063993
+0D9E726A8DC8F98C404CA110A7C8B73DB8D8BABA595206A3DFF4CC0FA03A8BFE
+7772F370A84B1BC0F51DB00E662C8EEA37A15A6F5CE084EFF5488BBAEFD36CEE
+E42BBF1E4BD592549BE3EF87F04C40E7E35F4B42E6226FF6D76798D462650E99
+015C8D77B52C90C47D2EB98A10F43F95EBD899D000E1DBF0DCEF38470C1D7499
+BF0A764ADCCCC9E99C63FB9FC5FCEDC54572275CED23D089FEEDABF7E65E4CE2
+64DEF5AFAA9564465EA861903B50B9F3522E25BA20C78044F53ED3E5846870B4
+6321BA6D8116A6C8327E367ED27CF53826BF7BF4C69723D4512271775DBF0501
+00FD6B87A50C93D292962F2BA39B032A9FA9908928CD1E139934A7BB7EE1F893
+260B9C0E285A7E1A618B937CF83F85FFE860279F8E0A843B430EB9ED9E667094
+02E15264948341FA89869521C66446578B2C33DDFBEE3EA8AC2E76CF50953F41
+9F939B4F8CC399B5D0431F53346BD9131A9DDAA561B3BABB8844A374325F522C
+53874174E0FE3668AEC919BF1F49F44FC81BB3438C67E3B661631B7956323574
+7FBDC221C0A760D6D0C57B53080E8CBB4A47D0484A435E3998E0A9E8D27DE450
+8B4B81FB026B7BC3B3F0EEE5F77E621B130EF120887C053014FA1ABCEFD62192
+12AE216022CE7CBEE1B78FA35D188A5C2D7B1033F7F7059A8857A83371D3FF78
+97BD3B1F4457D2B969E19F8EF0333F4B38E01F1B871DC9DA1F9832B9313437D8
+4D88B9E34FB85C379AA4ECC5AB548534455B7440F0781906D7B389A9E3689D46
+34636134C7B4CF04E2DD36FF1B66264A6B04893A6DD9F3E85E06C8401A10868F
+40E67D7400466D2832731E9875002006A289FEFD63DE44BA785ABF61B66BE584
+0374ACA9E07CC36892DC31D5F15BBEBFCD5B7FEC7AEEF49DD1024E5B53D1CF88
+25DCF8D210864C569DB632519338B8E030E88B0AFEF863D5BC118DD433B1DBC3
+695C3213CCDBC58689550804CAE08CA8C2690C981D5D3B448D265D5C747C29FC
+7506657F57F74AAEF810098E811801D55698E3D6EC55930E9D1B12D54532F385
+56B2399DCB0265B4F6B1BC7215E3B558CB1C0E4DD70E8EC56273A8F3A8C79CC4
+73C970330C503FDBF8BC0BBD8FF9D3C0A08E55C6B4C7D67C295A421813E509D1
+BD68DD94CFF01B76E2737F1999B890D14925A4DABC3EF3561A784FA50039F252
+397C24D19BBF5DF56C62E45B8ECF59DDAC759FD2996504838F6189E539D42108
+CC3F581A64F97023FD9D7E56B35500EB29E51AEC85DD5364A76762E29DBAD65B
+35092C4A2A29FCF15BB6B394B7CE4A774F9CE1EBA940FECF7850C6042FC450C0
+211D63895E71711CDA6E748F3A646086ADB19A69A97C26828224C6A0385BB815
+6DA360C3B698EA1AB4C7707E67AD680172610EE7615075710DCE539FD13457EC
+27F90E4378728A8B6E74FA0782F303EB611A77A6AB06A98D11237967C9BE0576
+50E1E87E0394960B013AF040A7C382ADCE5F4F6ACFCC3D1CC9B51B7C5F9E8AA3
+131492D5BAD01C0F969E82E09C1A38E2359CE5313D6FD0236C455F7364D5F4B2
+3FF8E6A94B44AB996B1E36072BCEA4BF4DB2F0290AF900D6421AE72C9A22FBC2
+1C139A8C8197890719D152548DCFBA65D24EDA62DC5E10667C22E19A5779C7E7
+E81048B32BE9C92EE6DDF83269457ED2AD9C185811AE76294C070BFF89A36D41
+586AC00E84C4168820654C2E6C8E3A27568C67359AD62E685FEBCDF64E2AC9E1
+BE4294D87065F7AE0EC129BB2E186D3BCE025491D7DFF5DA64A58AE2343F9130
+981C3B5D5ADE639AF7F030F477F0C7A52DC65224F81ED78427DAD5579E820B47
+5B77CCF7A2D790FD0960E38E19686D468BEAE99C6135BB80F15974D4DA63DEA1
+77EBBFC22FCA3AC73922A715BA5032B0031702CCC61CDD9081EBD4B696C6A20C
+FB35097DE6617F0092844A62B92016A67EFBCC79286D599A8795CC56EB4B669B
+A65ED063A530D46BD2A7E4AF589A4BFB2CCD177095DDC16C896D58BB83259A5C
+3ED87C43439EF315647411FDD6B23C9F3BC622FF4F5C464DC989149A1C436C10
+D580DC57E4E1B9DB4E2004E950B9B7CFF662F4EFEDBB36B66078C4F0A4EEB053
+10BA53209E94CE3DD26573117CC54446D4EA710D8B3305BDF4B02E71DBE069DD
+B743F882489D902A98551F2A9F9D1536C95168A478829C3380F804FB18773F85
+72B8679C4CA5B6BF46AA5C1FDCCA8A99A187E167CDF1C9661CAAE537E14B8E38
+F2240C77A47ABBC7BD6FDB2843A1807FF8B4235C7EFCDB48857427D568157A28
+109E8F2CA5222BCA351A5EC765DCB2B4013A5958F903516C156C883211041608
+560C93067812FDBB6F44CC831F26D91E9701201CB6273B796C21EB9B8C74A2C4
+FCD628A92BAC4D386494DBA2AA64A0B4D97A6F262B217599DA1D40819EFAB6C0
+19EF990FEA9CE335016A8E61CE105EA01850B6BA603960E238CE71277B3892D7
+32A9D446923F4463A79D298357FFBA42961126BFDC6CDAF99EA77704177AC6C2
+F37443D05B20064696B570B84AAD3AC20091180F18C294120F80501D1C3C5C60
+D0AD828E586D72DDA3E8344489185561C20AB781C94E75D8437C803CE2473026
+5B61493A5EB7C06CE2B2BEB321353383F95C7C79D2B8012C558CA27613F59399
+7327291F1602E74278945D2D66E0E5F9052AE22434D370C42034FA54B9929EC5
+B11DAD7D1E338E4B7F23D2E6275117F4FE3C2B28F882B9B4ED3759D872949FB0
+6FF859564FC6CA2ABF4C146523FF0AB941B701C3AD43143BEF56FD9764ED7408
+44106493C1CF3A0E668E68FBC2164CAD0A1E0961DFBE4AEB7AD020F783A082C6
+69D124D7A37CC8148CE41CCD882F9A8CCF350DEB968132E9F13F77BF7D60
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+cleartomark
+{restore}if
+%%EndFont
+%%BeginFont: CMR8
+%!PS-AdobeFont-1.0: CMR8 003.002
+%%Title: CMR8
+%Version: 003.002
+%%CreationDate: Mon Jul 13 16:17:00 2009
+%%Creator: David M. Jones
+%Copyright: Copyright (c) 1997, 2009 American Mathematical Society
+%Copyright: (<http://www.ams.org>), with Reserved Font Name CMR8.
+% This Font Software is licensed under the SIL Open Font License, Version 1.1.
+% This license is in the accompanying file OFL.txt, and is also
+% available with a FAQ at: http://scripts.sil.org/OFL.
+%%EndComments
+FontDirectory/CMR8 known{/CMR8 findfont dup/UniqueID known{dup
+/UniqueID get 5000791 eq exch/FontType get 1 eq and}{pop false}ifelse
+{save true}{false}ifelse}{false}ifelse
+11 dict begin
+/FontType 1 def
+/FontMatrix [0.001 0 0 0.001 0 0 ]readonly def
+/FontName /CMR8 def
+/FontBBox {-36 -250 1070 750 }readonly def
+/PaintType 0 def
+/FontInfo 9 dict dup begin
+/version (003.002) readonly def
+/Notice (Copyright \050c\051 1997, 2009 American Mathematical Society \050<http://www.ams.org>\051, with Reserved Font Name CMR8.) readonly def
+/FullName (CMR8) readonly def
+/FamilyName (Computer Modern) readonly def
+/Weight (Medium) readonly def
+/ItalicAngle 0 def
+/isFixedPitch false def
+/UnderlinePosition -100 def
+/UnderlineThickness 50 def
+end readonly def
+/Encoding 256 array
+0 1 255 {1 index exch /.notdef put} for
+dup 0 /Gamma put
+dup 1 /Delta put
+dup 2 /Theta put
+dup 3 /Lambda put
+dup 4 /Xi put
+dup 5 /Pi put
+dup 6 /Sigma put
+dup 7 /Upsilon put
+dup 8 /Phi put
+dup 9 /Psi put
+dup 10 /Omega put
+dup 11 /ff put
+dup 12 /fi put
+dup 13 /fl put
+dup 34 /quotedblright put
+dup 39 /quoteright put
+dup 40 /parenleft put
+dup 41 /parenright put
+dup 42 /asterisk put
+dup 44 /comma put
+dup 45 /hyphen put
+dup 46 /period put
+dup 47 /slash put
+dup 49 /one put
+dup 51 /three put
+dup 58 /colon put
+dup 65 /A put
+dup 66 /B put
+dup 67 /C put
+dup 68 /D put
+dup 69 /E put
+dup 70 /F put
+dup 72 /H put
+dup 73 /I put
+dup 75 /K put
+dup 76 /L put
+dup 77 /M put
+dup 78 /N put
+dup 79 /O put
+dup 80 /P put
+dup 81 /Q put
+dup 82 /R put
+dup 83 /S put
+dup 84 /T put
+dup 85 /U put
+dup 86 /V put
+dup 87 /W put
+dup 88 /X put
+dup 89 /Y put
+dup 92 /quotedblleft put
+dup 94 /circumflex put
+dup 97 /a put
+dup 98 /b put
+dup 99 /c put
+dup 100 /d put
+dup 101 /e put
+dup 102 /f put
+dup 103 /g put
+dup 104 /h put
+dup 105 /i put
+dup 106 /j put
+dup 107 /k put
+dup 108 /l put
+dup 109 /m put
+dup 110 /n put
+dup 111 /o put
+dup 112 /p put
+dup 113 /q put
+dup 114 /r put
+dup 115 /s put
+dup 116 /t put
+dup 117 /u put
+dup 118 /v put
+dup 119 /w put
+dup 120 /x put
+dup 121 /y put
+dup 122 /z put
+dup 126 /tilde put
+readonly def
+currentdict end
+currentfile eexec
+D9D66F633B846AB284BCF8B0411B772DE5CE3DD325E55798292D7BD972BD75FA
+0E079529AF9C82DF72F64195C9C210DCE34528F540DA1FFD7BEBB9B40787BA93
+51BBFB7CFC5F9152D1E5BB0AD8D016C6CFA4EB41B3C51D091C2D5440E67CFD71
+7C56816B03B901BF4A25A07175380E50A213F877C44778B3C5AADBCC86D6E551
+E6AF364B0BFCAAD22D8D558C5C81A7D425A1629DD5182206742D1D082A12F078
+0FD4F5F6D3129FCFFF1F4A912B0A7DEC8D33A57B5AE0328EF9D57ADDAC543273
+C01924195A181D03F5054A93B71E5065F8D92FE23794D2DB9928A7C95D3A6E9B
+8E92F84CA0AA44461D2F4FA0F8B81C6F5B7BE98C9712BE166610465CF689DFAF
+27C875C029C0116DE61C21DA0092D029E7DBEDFDDEE3D67E6936623AB53FA2AF
+18BEDDD7AC19A19CADB6ED6CA7A26E6044BE414FFF59C0B98D5819A6B881F9AB
+7AD0D03BDD5CD309C67811D5CF0B93F6FDC9AE64F74ED4E81F2E18D880BD842A
+DAFD0BDF06300201C6946087FC0B999447BC370200BFB8CA420B668B32EBC242
+6DB1546A7164CF55B332FE9D239B65F532B69EF9F4F93828A44C8F5C526126F8
+B7A369114CA68D4F98638121F4E17F351723D9F1A902FCF087F94AFD23876517
+2D15B482AF2D68C3F31FFA864E031596E597882578AC7FB0DAE2A713B065B374
+3E2E72519ED6D50CBCA40A7275A7109A4F3ED8A4566AD8832890D3D1F4899850
+9B757442B7EA355175CD5D6D8B4152ED2D7EEB4CE30F174FF672140354046A45
+7098EC45B9DF3DF5CF7B417E201DA88308CEF4CED8E8903AF24FB8DD0187352D
+25738519ECBC70304F8F620CC45D2586619205DA3955696FAFFE2082402B3502
+CB682F410DE5FFE80A4DA3D3BCF02E35BD577D0DE55E7B8A33B7A2FD5136B5DD
+A0BCB61F8E7F4363C21F890CF287304DDB8FCE7FE207C0D160B81E7EA662BED2
+DFF8C444E19C91E72254257CD87240A70F1A964FA54ED9ECF27E27A57DACC3DE
+EABB92C085030870C6CF5C40B6E47F5C0AEB30E84A73ECDABB2D754EF6EA28BB
+16EBD6636BC288E62F4A38BFB55F5F4DD20FDD77D767F6CB52F9513E8EB75413
+07F1877B2C01278675177499E4E8EB09F2657821613F5C7643FC064293EC6E9E
+B519FFAEEA36B19C9D1302CF91FCBF87FCB57C5F995CB6712BB3D8681EB6F05B
+B2A4195A3C73CB4ABCCFB958EAC533BD89560D2790CDE1444C0F2E4EF27A529C
+F01052964E56F6D76A190E5FF45934BB711A3406284AF130D4DC0D8112BB3752
+762CA0200CA262359D4F54C0CCFA9A50DE18C7DB14419E2990ADDC4A54B94978
+D9174CA39434022FA77FB30179EF805E2189C35919F5EBE215EE2A00B4407826
+CE56329C5586D8B414770BA5D45513C3AF1931D632FCE69B4CA504944E03362C
+74A1177C6398A61A12DAA0F156543E2A8E9969C4308B7ACC21A5ECAC8F172541
+1B1316A88C0C163E574FFD3CD22FF08488662FCF2F9344BC25D02146F36CA6F9
+E2D0130C654B7485EEA9A110A33AA0C769121F81821E9A2BD062FAC158359D44
+3F9D9947200EF1EDDD5860F10438B162A69683957300C75AF7546C70C97AB2EE
+37EAAF0089E2623F787F252569B06C665FDB45EC9681C0774ACFBA76B98C4E89
+7EB12AA5F8798FFC110B49C25E3A483ABE83B0BCC6DF0578403ADC369E013762
+C9D08FC94D949BAE636ACA9F36F4E3F02296775A062077B011A705B6F1784D36
+A926622CB3847533D7ACB24A4EBABB14593B5D8E1DAE2BFEF8A51835C8D4E76D
+7543C126A4271C59A5881A5AF89331694F84489CA66725995DC3070F306EA447
+CF30F63CD476A46D528EC1FFBFB8EACFA2BEEDCF54C92CE2BD26DEA5827186BD
+3A4D1709415CEE7D51D671357B4A5D11E835F63521B9824EE5282E58F05A8ACC
+FD249461181A38C2F47BAC4E79BE368D64F886AA493C61CBCB2ED401C8AFBA61
+59CA6F6216D941A92AC52ACB3D7ECC28D6A58EF4CC70BA6DE23E80937AB38E89
+6F05FDD15B954C0826636267EDAF9F2BB466BF79D2E10EED9B04297E6BC93069
+79581ADD1A9D9FAE9306F46AC95B98C60A2E53D60CF1AA4069BE301E17E25070
+F98DD67BD8642B1D07571A32766072E48BF27E1576FFEED300D7313A358A823B
+49C8F135961B7E259095C9BB67F996CE0B90E95344F203922F47E11753F70D38
+2ECB615403490310CEE6C03AFA97DA2F47ED47125D110FA69725BA0018F6A40B
+29A307FDB3E52322A77A0102E6F57654CF1E96A134D13860D83AFA0A41112D3F
+2247A09ACF7D06713BE443FA27C7E7220E875965D53030FE7D2D62EFD2F1DB87
+5FB091FEAF599BA8C5167525899E578AB341BFE2BC4E53A047093168AE189237
+EA55F055514EFA939DAE9E859CB5FBCF37D99484F44FE5AA5FA386B28BB642F5
+5DBAF059A50FE96C7C6D834531D64F1F2E99AB2E96EE74D149178B1C0618495E
+293973D9A03E1790654B67C0882376ABEC17D74785B3737D81644F28B3BC6FFF
+F92FE29126995A07E0BC5EF3A4B93789A103C428943E045B8D1A5063AE71E806
+568D48072E53DEA85253B01DF0BB7367A6BE4DD7BE514AD74E3F77C825ABA405
+64DAFA25EAFF8F63344B5F6B523629776CEB090B546469F6A6008DE43072DD3C
+DEF51F62731037D1FBD0C038A1E9B669849EB3BEBA281624F13D20B61917A109
+A0A7871A73F7BAA18077360B38A4625C5DB9AB9E43BDEEB856FD0E2D3AA2E075
+267B978B9EB47F2369302E87DBD5D5B422830BEC32411FE75D584C58650EFB1D
+136FEB92B94BF8939FD63AFB7349C7511E5E46AA7324F8B1FFCA9C2A9E9720C0
+A720918E8E860F137567D386AC29870FD990BD69465B3A3D2A0ECF2753578AD7
+80DC87EBB319EB5AFE0B6F6FF8616EA30C51425FE3ECBC5F8D0B0BEFDEF32FA7
+D168B4E85C804B7326A0942CFDE732B1171C643452B7099B31649CA2C38B62FB
+46EBDF7180004C549B53F88021D029452C2B37D8C565BCDB0B11541039A13C0A
+E45D4B68C7907B8BF08C6F41F564B62BB554235D50330E78DD02795516D969C9
+66119D718798120442CB7EB9877FF84EC69DAE25F8559DCE3BD8042959F695F8
+2F99845B1B5680DDCF181D806CC4903E077D1FF5E60918EB34C0B1E028422B71
+CA63EFBF3F4F3CD813CE831EB54265A555BDD35AD7D723F9CFBDAB29C54F8AFF
+2D35C6A3299E0A2DB470C7B141B1E3E10DABB7873AE302926BA8743278FAA8C0
+DC6174501D6A289CF980A3F55F2DD5C3A514E7E7F13133C35D2697D64C25130C
+DB78FC997968D6B3BC929E8A31B6D212C5128E4412632BC52B3A1049F7F2F61B
+C74AE9A6AD19B9E2E240617E2882F7D29ED3A4279439107AF9AEBEE47CE85DE5
+CE9595A96A118ACF1EB1F5929930321AF7732E351E18C6AD378508E37B4C327B
+0E06AAE21278AFA9255AFE5C022034DA2968D260879B4B38E7EE2E11A593DC3F
+CE71ABA050C004473324CAB6F3C50E85DEDA3E9A27388D8FD3A8F6E42A79670E
+F7549CFAD4CCB337A6E0BAA4846ABCA059F1E1933CF11DC0FFBFF550CC4A1B47
+CF7BCE0875FA747AA854534960F757884505A5AEE0330179A9547A4AE3E68479
+7A457DE83326DC30B67F27CFD4AB697601CEE352F72F0966B3CEE3EA24683BEF
+6D23AD51B8432C3F0DD0D0F80791E1091F38988B7A54E466A9AC7810DE8B7893
+6B0AA6356597891D56190A7660BC7F657BC559E0525D41EC228078F2FBF89C6C
+72D666DAD838CBF0861FBF0A1D4ECC069AA49DFBAE5C56B781A1D5D79DAAC256
+13E3F9B928A2394FC71691E4355642764459714412D6F8EF803FC5F7353822DE
+6CCBB8FBE5AA1F2C7F4D384039D85E7728527DF9FE0239E2CF8BCB7411C000B7
+1FE660AE6A2A19229E5E8776CC83EFF3C27403935756463EB4721C51FE0B1197
+86C2F17842A0FB639F28083DFD4F1E86D7D3BEFA922514ABF489C5CCE93D6F72
+D2EAAE14F6CBA2BE4BBE7D7EA8EA19DB3A87350D4A52064137C3D15A5B05B03B
+70B1DA7328D10713B83974C390C3270AF5A9A47C0BFBFABB9F31063B0CCFBB10
+0F236C74446688198EFF039110F6FF42FA9F82D463AD3958B5FD205BDF85DE20
+FE3F0C7AEEF350AEE6DBC1DE2E2DA4F4599956F59D6F121F7086DC120416E180
+52DBBC4E56C09746938698860F30007091E1CC0351B43990E47208ED495310F5
+7BA9C6AB3CA10A3F1B318FD47C1CE3B9FF1304321F9623E32D315AA9CE64B35B
+F841E6C62B5B2488A311C94937879E5E0E170FA77AF0AC75C5E6E9F3E8F825AA
+09C1702682E14FDFA72D27901C5BDE009B1E52E8C4511C6F6336251BD45261F7
+401CA3DAE7C4B0CAEB91B9954BF4A97C48ECE7FAD401351D59DDAE9DA94E2335
+74A2B880E4749D3D7026CB5299F16C204B6E00A20A6619C34922C7D3FB50F127
+3157CFC08DCC5164C8023CD1B6C3556C73CB8E4ADA845339CA9BABA1457ECEE6
+ECB9849DF1F0FEBC89E5F97C92978A500196520839CEBA6C0FD2E3D27BB4B4F0
+93CB2BB565F4627C6DB62DD0E084E627D69B5DEF42EF094381B62C0D67EFD197
+301B132420F51A41561E6106870147E0D597078435BE3819ACF0DE28AD779847
+F3D2CF667DA06955D53E0204CEA2935E9E984E76963D3079EC092031E2A10E61
+1227E5EE6770DD4D745A52655369EBA06A19BD7D95BBA271E488241199D1008E
+36EA99F8DFD2A9F87B06B070158B466AA4C6EA3BA77DB0F853F0BF9A304EA291
+34069714368E0B94DFCBA3BE5EDB6C8204DFA7EAF5C3406F60A7056407D1BF6C
+CB85C1F432F97D821F5518BBA79AF8453A568FB2C2D025A70CEC75F46C545011
+ACE3A99B2582793BA1DC655230AE2EFD24DE20A01D4A441AFFAB7771F223FA6B
+9169849E727E494247F67D6E1EA9DCA06A082FE2094BD548AD7F08B565145634
+E7ED832FEC1378306DDC796303392ADB0CBA130B63B38ED57B7828B47732853A
+893E8836FE19CCF27002AE92C2B2CACFDF8A42F1B8066E033B965D2E9157FDF8
+E1264B40813C1A4CE424274AA3528A4F09B3B53DD4D23789A68B3D17BC1398AE
+0ADA2C2168427A49846DE0216908C2FFFEF4F13C1ECA12AD341E238EE46E6DC2
+B71B54C52659632911F901660261E493AE2483D64E119D9924489779B62BC9FB
+A052E822FD8D83178E09ADC825DF0DA07FCE7AD68EEB29FAA275A13691B4A5A5
+B0BC0499CD6307610CD6209583C1152C559A2760823F8DC0B9B990BFFE7B7E9F
+3969B968AFEAADB9FC0F1410EBBAA0DB979CF153F0B8C978405F8E6F2B6406D7
+AAFBF4A655A15DD6D1E9A7EAE10EF89264659B09283F50B734236885FC09FBE5
+98D780012FA77FCB19F15BDC522CC7312546C0730EF5225DEA8C22A3BC6554EF
+4FE73B9AEB5C2F7DBD474221760E5F539A064AC450591BCF3499E3968F2CBD6B
+F15BA2B37080A4129B66D4C2188524F025414F14DB3F96049A8B0E5EB2BBE7A1
+AD64A988FE875FE4FE5186BB4F5DDA16983CB052D474B7D72F3E8965663EB50E
+015C72407C3437142D3D7DBC055FA627139488DBC5A0F98D805C2143D99F491A
+167E07AF60EC9F17C36289368D740B632CB919A0E74C412B76CE7A5906D5200F
+9E79CEB9C65ADA3A0F23E8947E834AE7A329A9F0AA7A6BF545B1D7B4666C6522
+CFF268634EA06DB3A82D91A4C0A9B227E79961212881A54A6762C335DE7E0831
+130C45D94394D21C049B9D189ED955438C2151514F17BFC67E431DD9A8349202
+2F616AEC1C7B19F63D5000EB4771370924BD4B9053FE78B5E4A244B9A149D66D
+A8BF3B398396D2233E92E4A5FDC70FAADEADAFD255193D688842DBA865CF6154
+C9348D590F3FEB135D4B7BD4D76A52CB140888247CAFAB25ED51F4D187041CA0
+ABD956F83A5661CEC171B52AF92F9ADE27973B560C802E1E0FF51C4003D1289A
+CDD09F8EDA8AFDFF666D35418CEADF3B0BE298F0D1E5C8E024D6A2017A7E71F3
+3A9FEC9930F1118101E040339F9D41379170928DDF5B5875212B271DC843F612
+E0C21C67263186E3D6929160464D4D5C8928E14D0845762C36FFBDE548188E20
+3B6BAFE5EECA0385142F01216FB8A90C43A472C1D4447FE5C7C78CC088FC72E7
+3FAFA062C338BDE8A430FDF1951B107D8D73FF9376FACDE5900BA362C66F8C1D
+947F9545C5C13A53E4479B1C1A50472C05E8F8C266C6D4F4EB08E97B3B1BA972
+26973B844545089C5732322BCC9A5A8FC972FA0D7DB8BD85D2F515ADE65DA479
+0224F7EA2276CFED0B75B2C23AE7377F86F1F6F205D6FE19377D87E782143697
+984E731F83CA888199CEB425643C259D4FB8B58DD69A96085198306494BB497E
+FE7C9954EF35B679BBE3847A9C73507874F71FC97665E2A58BA41407A1745247
+44A79B588D969D11CE4B863CDA655DAA53CEA5C3C263B345E782006CE9831D49
+603D2D95DE9E370D617F5928BA416C362BB2B4DEF16A5D44BD24B34257765F3B
+6223B3F9B54DAED69A90C7050AB97B06693D253C6894CBD7B497DA449F1D9B7C
+D91B421891EC0724F59C82B9CB288DC42F2D2D7A7F22EE3D910E15953D7766AE
+276DABED3820390BAF2700C4653E1C77FE63DB71A66D93ED293E25B8412A1EFF
+809554BF04ED0DE83F7F190883ED793803CAD2C34A66524D3A580ACDF3C13B22
+08F18905E7A4A16DA9ED2A112462FB9FFE481EC2069E484E8BBFC19D594153B7
+3DED4C11762223B7586483B06BC164D824D1A6FCAE80A35DE0DB8B33396771DF
+76DC5C05578EF1BE00A70BAF3D951A01C87328DB2B0DAD6E1B4C21F37D1BC0C5
+A929BDE5EADF20DA60C4DE2E3C151005814F24824D33B95F700E09A0207EB602
+3EF60DEB1622B91DB99A855A8F1DA96358F05CFCEDBDDDFC8446AE3391BEEC41
+966E594E28D052DD5ADA49DFF65E79540EBE5329DFD86C23CC800F95221B9C18
+CBBF941D2FA47EF1EF59A89DB5DD188E75EE94AD2A79E2221107E5992C00D531
+2E00B544895A9204656867E3DE9D4CDB64B920B5CCA9A73E6514B36CABAE01BF
+94C15603B86780190595560F792E5EF01650074EA4A9BBC6ED284B9AC2020641
+DCBCEE0ED27FE58171DFE104EEE4202759E594159DF45113C00236127A46FB35
+9EC705F21C0E456C1F0F924594C09AC64D4377C5FEEF764BA4A09ABA8D09DEB1
+FC13B0CD202B2F04CF5D73DEAB65C36C2FA7C0DC236BEEF6D23BFFC9C493DC8E
+1831F19EEF81EEDD976E43BAC6B5CED13F901DE59835FC75490EA528A72CEB77
+24C38B258EC38B9E6B97F85CA8C10D8809BBE55A6FAA12456FCAC786942E123C
+06D1E55F7ED04400088BEC968BC5081DC7A1B1B65166E7821679F76694F235FC
+6854C8776AF855B83445D9FF919B1D80E98DE0741D06D6C5EEDB3E3EA6392530
+F1BA817737D8162F7B3A36AC2A03190CDEC654383E31934C3E0A012B639532C6
+26FEBE9B412F1C92D1943B7C18CEF510729D501349644C97F087F2F840074AE6
+D8CD0FB2E620FFC908BFCD938B675A0A4A687F7FBE8F3DD06A62D7B6DE7DF3E2
+49D367D60B10061EA86CD512F5A1BE8950D83C62695E130128E0037B62552D17
+064319BBB9B1FAB9D79705E5D68AAE9B36EA14BF1A59A863BDB8DAD9AB5D7B8A
+E30E2B499F952D65877C8E38EDD7DB29F9579D09E629AC188DB6A6403AB4BA3A
+D358B3770D727A2B77D84B6C9EC17E29D88E3421F9B7D2D822EB78BB8BB50692
+8C46DD6F9BBEF2E848A2B5669B200019802AD19661537A84D3514AEC5AA47445
+2C791E01DCEDF18D9506367241255FFADEEA6183F51A9F42448A7DE413C08359
+52DAD2A60FD606AFE14702BD3B0EC448720FE63438D020DEDFCDE3582FC31DF1
+17B25FC152789D2F17FD60B8209D292D2152DCF8D28B5ADC04F6659BBB746CDF
+145163361823CA343763AA951C640B5D4A99B7787105A1609EDD6A596EFC3F6F
+2AE30625F691465E941BD639BCBD939747D8B480F14B9D9A5BA5F868FBCA5461
+7237C8E49DF60B75AFE80A3F9F98DF24279612DA5AE02B2DB29716A1BF2E2F5C
+26BCB2EF1612A9D9EA2F610ADB9AE7F52C2A2E4AEF09FEBC37824CC08C206027
+B020024CB98169C9FAF20B76D6CDD0DBAC7ACDB204CB4FE1C4F7A53B0915D05D
+D8797D263214B80D797AB7E394B29523A3E2876BEF80C096036DD4C95B6B6EF4
+147D163B7D007B43C1294747F3ADD403E3C9F6D68EAA001B33374888A6584744
+E9D93FDF6BB4317AC50DEB778953DD522E0329DACE804AF7D8D7983121C21344
+DD2EAC6651D18A644CD5661A6CEA3704CE1F313FB4B57FBA49F54FD4D3C97E30
+8B9AF0A6E0F662104C8DA6055F23702BE0D79C81597DB54FDAE573662C48BDD0
+60C83CFB31C4FC4DA30E957320AEF84ECD9CAA63259283FA30B1EFB1AC1CD25B
+319DE2507612AA379A62EDFB1378A82FA82511BF1887387A293093EDDFB064BB
+5E6F16A2C5B87A779636760C9A55D083BDF3697A1363DB3004BFD2A9E46AC646
+7952AC94F43BB212D57C3275BEE1FC851A1D8EE864F047E748D8DA5D1064AE2E
+2B676CF42977E3C7A962AE6A4BF4C285A2D8EEC6E2A18E4AC4B42F81DB73914A
+1F2AF8786E14A6C63794EEAAAB9A2AAB5DBC6B4D224F07EA02F4172E040A2243
+24CEA4FD5A951827A2249E7EBF7F59869CC9A2D540973E7CAAAEAFE0630FF43D
+6268AC73F7E25673338A8CD6208492E7A448B9ADC22C30EA308E6A5C8EEB5921
+F493C8F5B7691CD0C45447060E2F1A2F16C98F3FEFE2DFA75A5E5A34CE402D25
+B239D9B179F816ACD71A7BBBE78152CE312FFEDD19C8C5BB020383E63FBA9E30
+09601EB90249C444D2959174E822FA71635073D66DA42BC11A31B16AD29268FE
+B99370D58610715987343DB3E6264AE06A474CF3265BF3AF3980CFB238C9C7D5
+C18FE5C2734062EF64DA78446DECD39C4F48989E429B5533BC70894EDD4B1438
+E357F95D49A18B78C96F56B2F86BEF7FB21BEDC4637A208E694C8DF428219490
+4590E91C5A8DAC52EADCC9E13525C5681EF626CA1138560781490639A62AF245
+46496A493D90349B12EE5440DD0AF248FA04594FCD8151BC6978A616AA0270D0
+317086E386AEE1A3500A38CC10FC179514E98F7BA783C6553D9A994CEBCD19AB
+9708B668EE7F6C22EC02CE64CE2A7B5D1CBB419F76EB15E659E4E8400DDBDCB4
+BC6AAF661E0AC6F1192183089E1D77DEDDA1FD87A3EEF40A4287660967FDF2CF
+20676679E734C708A5AA9A07A15CD75A1593F00457059D41B9E1EB0516B2AAEA
+28F4A1D59A0E40EABF78993FA94BB7CAC4C2D8E05471B4C290772E961950E6AE
+9AD8E59254D7710606022AD307D019B82E0E681D62BE9FCA3C6DB5737AB24DA1
+05BDD77C402683A5B68438BC32B8795D82BB0D9C2B305D2C11BA8482E4C546C7
+ACD100BBDA450A3B281DB9C065AAF6614214658A0C1A908C6329DB65998A8A12
+5CB3185327A0717DF8E5D55125D8A189FBED431ADD257A75AB374528BA2C7753
+45A64940CA61E095D6B39AEBBC8EDF93398E0207C49097FCE8D585AA20218329
+5DED523B7825A88E948B8587725BE2D808AE5C2739B543272DFF6715FBD13674
+7B74EE5C2F042242B888A58CB9071D7448F7D50E09ABC9BA25BA1B1F95B333DC
+31EE3028A9084030D5DDA999D30911D3537C346387BC44865D16E7DCF73DC65F
+CB25D5FCB717412CC6537F258E7C7E97BD0BD857C48CB9D9C125A5103EE5297C
+FFC1AA81C1938EE33E2E792734135D14A32B290344A2BE90C36DA2684B5F3F22
+E4825531B71619CB4C94830CE33F83A518EF12CB0B237EE6C699888139E96BC0
+9CB1421512D276CD673954919B73680CD645B728F4DD14375E8238CECBEFD007
+4830359A28B7094029DA1683E3A63DDF0B45F9CDF42C3C66810A9BD067F2030F
+89F91007B840CEB2A79F7A90F8FF01F730003FFDF9B518F211A8E13D34AE6A01
+8AC2A5EF3CBFC72A95FA6EBDF3E2785BE013264A8031E35E296FC51D92088467
+AE406008542A129C44BDC1520F6594B95B3D8EDC0A716CD6C614E572029226AE
+382EAC58D04BA399C7DFD1D12AAADFC782C802C1B26895684EEE73133FCC6298
+022525DBBBA4B5289670E1B48D22397BECD2EC57FE052ADB5007A1E3360838A4
+79481786ADAF842238700C108A4799C81948FFD877EBBE00D0A91802BB145178
+74615EC74F3C00FD9C6BC5D14EF52672F1DF54DAC270400D2C7878A369CB82EF
+33BA0E4B5F8859B30B726D272778742F0C153B882E67484D9FE814002FD3FE76
+5DE5FF6D4A1AF2E6D6EB3C63EF8942DCBEB2E8D8F43945F1C14CAFED396F68A4
+3CEB0D762CE6532980D59519EE60E5B116683AD208EC17307ACB7215C7E5C12A
+40A29301F9A7750EEFDDD73201D4C9AAEA6BA16F069AA383B3E2E775C17B2C78
+585BF9D4DC5AA8E79D1D3EB7CACB3419D0E0112F51E94992EA2CFA1BC46552AD
+20B21E38BA6D53B32994E0948FB501B17D14E3A70738130D4D7A0881EE204F09
+E4ADBE965C46DFF891D96A63374F7607C199B357BB5102D213420BB66944D11E
+59EFFCF8FF9B71B6C8614489177A1C267B3E6C84DFCD4D9305FFBDE2B317A522
+7E5CA4BB22ACA86D5E2EFAC14DB2872499D6956B7B4B744313B79F2BFA9B096B
+E74896FD09E65D539D8DA2EC0583E0CC46F726E4C5F271F4B4D149E5E1C5356D
+4253CE28492B63273D9FE5E8CD32E15CAD1C3FFAAF465ACED6E020BB47FE7267
+EB2A992CDE672FE003F448EAFDC274676E6EA49B0F54298C7AF8D8406E1F56FF
+F6C2929FCB76A2F8F9F8B18A08A1E710D396EF3C8E2A0F1C45CDF9431F393586
+26B6464C19BA72B49329CBDC455789D7555F00A8E46881C6083498124232F043
+3C8CF255A6512780DDBD70AE0150F83053687062110948B99930C73F0B4498A4
+0B275C8FC39AA695DEABA65897DF16A444FE813F43C8CA4E155524E0277309FE
+DF1307B90701B6D77DB7B6D885E5F32ADBC767E0C842A4E28C63B57E07C14689
+16FF49C25E5512D13532430CF4039CE64D5EE14F6FCE30B260386A4DA8FBE957
+2219B110036EC449844BEEB078FBC21B9DB378BAF357209A80F7F9E7A5FE85D9
+4652D970EF59D277EA981F38E8D05968B2D9F07EE9B0B11FC6890A8D2EDB051B
+A89B3C08E138D13919BA719C14D8C755FDA7F6D2B76593536B76D50C1293B0A2
+643D39344368A289A13E0A34DD3363BE6830FC6A32C0C8B0F4A1C66095055F64
+DE5FEFD1BB598B7BDB966EA8DC5C4888B7D3E4DE260548888D14A2A2678AF6B4
+C4CB8559154AB0B4D16B57093E73CBCF4A2ED3A378A700C063CE86732B6C9CFE
+21E6AC0B6F5899BAC8FD9F3EF7F3670BC165F690A733BF0481947599520E0258
+0B65D5D70411FF73C80FA9EA3C26891594AACF7CCE850CD811687B714AA83DBE
+EDD67ED9BBA5B8B198E58C7C56DBD48F71D42999376B078800E063EFE6049F53
+D9945A99F83EBF8C42BEB56EB67E17E3BB4E9D49BFC7B7E98B0B05337DD01BF5
+5E6B7EADD67E9EB609E5767411611A46AF20EFF4BE289B380079AF42A8BA795A
+7BEAB0D625692FD0D70D43440876695ADBA5E18DEBF508EEBBB0875C83E13D41
+51FA7AA6B342F440D614B55231FB06E7F9022B169B7BB6BC6B75464EADE50B9E
+A02D3208018280007240958A89B0D10E19048BBFEAF2F911C0D662667E5408D3
+F12066670F852096440405CDFA5104C8D01CFACA0AF4848229B614FAB9F46A68
+8A2B1B68CAE2D63A8A0FC76FC4F1D9435D2BCB9E0372BF89317679EF7DFBB762
+0A7C948BB6500B0AFD54E0176D7CF6924A491333DCF434AB02D9BDC8AD59B3F6
+634AB38F11433A17792B5762659B5C367D42D9C9D48BEF657C57782F7EBE7814
+7D9DD7EF3548CAEF39526D3C9FBC49CFA8433B2609600461CECCC6C20D269AA7
+B8E6B49163FF6E282D055641C6D41531A0A2BC17210CA5E16484BDB9B66A1358
+284A757C691030AF73D25F21A3B6E8CE78637ADB17C2836D43EECDD74A37DD09
+FEA98BF13CF20F41B3BA365727FFD7E3FB1AF62C3FB6088AAC5C4B6B9B561296
+94B2C7222A9200A87BE1DC43E064E2B98B851E46DD3C1DACAB34CBFCC3EDCE68
+32A71D67A4E8C102292D37D426E1A3FFFD13BD68AD41A549FAD038582439FA13
+94C45AB3AA2104AADA22A4FBF5C2F17B1E101498814FB250564A1BCF4FED196F
+085625888617C6D2E5A8F693A9FEB0E2937E2D3110FBEC9D19A110C4A705D15B
+8B42DD475C53475FE9FC2C3D1C14EC30CB5B4C90A944B7E959DB34A0F94C58B2
+6A6ACC87B2866B9FE8DC1CF693240183F2467505C31EA057EFAEAC973FCEDB3B
+EEADFBCCACBC46363DB362B9DEA04C4370A5F29A02F7C58126599FCC48138DAD
+0FA131035C44A1C5F2537461E10C30B86687E7E2026C9D785122310A87801493
+FD7A887E830443869246A90646CA6A89F219A66F8C259095BE1C02BE287636C7
+77538392C7D8A65ACB2654C441CE902A01B7EA2E913B1B50529581D8B86F168E
+D4CBDD91EC2B6D0026CD0C6F5FD202E49F3530C87DF009CFB94D8693C8A71384
+ABBA4987E16CD4F7DC5EFFCFE992C05B55EB2EF5C525DAF4453DF1C59B176238
+06B838A5D4BFCBF91521C287925BF53DB261BA5E9ACA4336DB62CFA180FDE101
+5B4960A018D56EB34DD17CEF0E165D637A51B7FF6047650AD7F3F6749528713F
+9A963FAA8EC2EC52E62DDBD4461AB13EC52E7A2A82F1E535B84FA7064A8D1E8B
+F002745772C058BCC688A3B29061F0692882EE647D604E55E6019121AFBE3F8B
+F08B7372BDC5F8A9C798E0558F91D77CDC71CF4EB3487845393F3EA6A06AAB55
+F5E2C5A5102205ED8150D803B6F16CF2DAC03FF8FD5A2D6AD9ABC6C0AB3ADCD9
+E596F6B1B6874D98D65294C92AB26DE63048F00F9873C089AFBC815B900D227C
+B2BC85538D10AE9804D32E149458B3980DDBF9BC6BC040E6BE9CF5F4B15E1D2B
+D5E85957D23D5C90FF481571BD88D6C5CD5510CD56AB65215AE6028BA4B205D0
+B0E35D9AA3103D0F9A1000C0FB0CDFD156953E0821013B268BEF935C5C82A347
+5EDF07A90F29410CA46516D6C3DAF6A626B0288EC268712F079669C64A83C5DA
+C6D0AA1C9D6DF61BD7D88100A6941ECB9FDF9968A990E5EB0FD33434F370DF91
+F6C06D561323924829C143BB7DDAE3CECA916319AC2EFBFEB7C8C883D0E817FC
+02A528F67DB9FEA313786EB65B687FD5AAD58CB8F2D60305E38C3D32C70C169A
+095C7583648422D22E53C0AAA2513E25EB857B0FF322BA0314878DCC783E421E
+716908D65B74AD74C43E0C9A9A6B0B12CB23883A1B390B62164913B8244AE8C1
+4A7636E2B6B82557F59AA2298AEE0DC10CB859C01C9E5CCF52F602351CDB45AC
+6AB04B97100EB651268CFF04588D9B2317345545C7628A83BC8B4B3F9DB6C26E
+46D7BBFF2A6B0BB0A0D448473536FFE598B0EF781EEAC357E91CA6C4CE825940
+6D0D594FCC3DE95B946ADF470BACC3D34172433CC65232F3B220B16C9405E61D
+47FB274F8A23D0EC778D5F09DB73C80A5726DC5795FD5AA35D3510D7FF7B061A
+3E9505220BAAB45BCC4B39F2FAF2D47C9FC3A01DDE15407BCCE6DD8337AD599F
+3022032E4AA9B89C027FE9F6734A93A07A99B0A7A932EB3A3410CFB80E299260
+9681769E37175AA2C13D7555CBFCB831CD048C78A18A234A58899A2FB0603CAF
+687707E4B09D6979A6686A96D9980E38CDE19C3CDE11B2EF26AA23D84DCB3F23
+DE1BC0A8197BAC17EDBE20BDB8485E39CC98CB9EAB173DF35BC86DF850C056DD
+B105F6BDA00DEDFD5F953D381EDD9EBC867A03B444DE799A49C832E70FEA5DF5
+74D8F7EF3EE5FBDC47CD853DA76235CBBA7B201E333BE3378A0ADCBBB0385B0B
+88E446FD1C4A2C31FA7F4F894F5FAC4907E719BA998B9BE1946E53B4130E332E
+4162F6B4BB45D54683EF9E457F114A8495A573F018074411F59F2BC45C7D2F51
+7E1D0690C7EE36ED2B666FAA11BF2C556A172BE98AF01B026D219DB9F101746E
+E84101477CEA649AFBA0AF6EB2B798A566E9D2C7B4BD5A23A6389604F99C4C81
+0DDA0927D5770F8651F0FD861A9A83B96972357AB8C7005C6EDF4D388B2F685D
+0A5D07F0E7D6E8CB23AB13E681CFAB40DBAB63E6E2AEA01E17FE3C4A1A9B0EB0
+FC99E5C3F909A43BEF53496596072B1709A0D645A62B9A57BF1051F29C7E1A6F
+88BA6092F5B5E41FF9E7FD3C8335EABA30DF97CF92FD80120C0B982F2E24CE9F
+CA7C3919EEEB5AB29830A72948B48C7453140156A3D3DD272057C2CFE0E90073
+8E63A9D463104E7CB5FDD1C85C55CC1F8456FBB46990A5043226AA7752C345FD
+9538B91E2916C8B74F9C62CC92AEEF9884730A467C3F58469903F17F33D55C17
+354C3481FB3702A3A7E88B1E7F78D55263064096FD5FA187C361A755811D2916
+A2707F57976026C09F74EFE277A090A844DE54C97EC158F1BF9F0C531195CB18
+138FD8F9545D7532748AB7D5443BAA3D58DFCAE44173A9C15FEE59FE416018CD
+392917E0D423829BCA1238BB241FC7117C4739A1A4D430A0C08A7726DEFEF246
+9C23562DD4FAA6A668B2585A3D8CDBBA21EB44350EB6C61678FAE69574F68DFA
+C241B3AC541D156C0E320578683660742038784FFB13649F77D74740BD78E334
+BC98768AADC8E7BBDF26057CE389DBF15DB98D24AF3BB612F7AB35F3CA3C2066
+F65D29EF38C3282FF2369FC92BDCCA6A88C9F7013AB927FF858647FCCEB4BFE5
+76BD0AB7E005EF20E87EE9FEC5BB26C6C3951756B2E177CBD60854661E3236C1
+0301AACE2D8F734F715687B801AB6D78C4DF27AE1EF0D1ACF9EB55A821C1A306
+6D1D4CE66260BA04F5A653B539E46640362B0491F6A8C455F06595C6D9964594
+BA35FEA20D5B05BE0A9F974E4E88CE7F48EA2B5BA160B2084AF5A001E119747E
+59DAF64988E6DA8B6C87213C72125865DD726572497A6859BB8BF6051F654EC9
+6E43E2A1F10ADC333AF6A1AF4CFEDEBD131F6F4B4B874AD88B2BF791ABA1453F
+1211082EDD69365177AD6C37B34608CD1BF07EC90684D027BC949409B6C7CFDB
+A4A216D5F56E1A5D62F28F0720F734524D4BFE23AA55CF13994211609953A49F
+D1401ADD37B22A10B6C7AD472B2B065DCFAFF93CE812C656A3AB7E0FB7520F92
+107D95A126317CFE2D60524389E71CF05793F45CA315C41BACE183DE1E71B42C
+061DED9A740FCC57A6F1120F170FC0211C9FF40F7F9242D4EA9A6ABDF3AE00AD
+434E26464102004C022ECE58AF645504190547EB21C2A4D7FF021A773A5B1712
+90BB62141DAD01F5B2477B03588A2FEF5E740B9A399F00EFD8E5CB1ED8E61469
+A7EC46826F8366B391412D72A7E55393579FE9C90ED3E8DF2C053A2927D89468
+2B8FF65D3F593DA3E581AE86521B742F06635B8046F79D505D2D1D23AAF2020D
+63F2B7BA13AE8639ABD112BC75781371972A7C63392ADC2B7A5485F0776D87E8
+7DABD6663543E520544BC7E49A92F087BF65CD69A329A8E255E9A2F4876B73A6
+3377291B6FDA34833346F8CBF40832A9CA4B9D2FC33A183A5B5F7C8E962198C9
+D01FEB82EAE324178B3531D1AC3DD649B831E96FD5713BCE27798C8941B8D2A4
+41A1318DD1F13C7ED1787D6497BC284156F4919ABEF195CD274F4EB647B2B59E
+ABFECC0714BC544C5932D1066AE3E7C35255546041A262FBE26ADEDB4E1429BA
+760353EC86FFC881D9D88B9F199AC2CA695928FBE0EF406E0BE5992558EE48AF
+9C7596B07E157142ACB1A0BD53AD32ED1674BF2D626D2100D578F151800F3EE6
+4BB3B927D2D98753C77009193584DFCE750F1EF8326F14B84C8CCFF0D738A993
+0BEAC3CB0974F7F6E8CE5D226E5202C9CF4BE415833176E71049BFE6CC3C8447
+4CEBE92896E1685F36E87997CDFA37A2C625858546368095E38C4532462AC1C9
+33B452AD6C937453D1E82581E11664C5A0B85FF92AC1A0849F6C0430884F2D3C
+9BC6AE65F41A5AF1422C972770468D5DABF6CB18A9046E39612597D3FF99461F
+3A9DA85022D95C0D51ECD81755442399832F7AB1D63209905D5789ADD54AD1DD
+FA77EE13D599A69413480A9914073A0B4E4C439A0C3AB756F68DC273F4E9C621
+23853D3F690CE4E0ACF88A3DFB6598A8B3D93BC2142F8A3282F6D86B89696B98
+10DC29F78D94817460F392F2C83E6E48D44B3C7AA7023C278BCEA6699CBA1140
+92077E5105FBCFC88BC0213682184DECC56EFC6EC3B8E02C124596329F3C2DCB
+4C089A92BA9DDF738319A852F084E4259362BBBF551ABD9A40B5022F789669C5
+AD5AA81EF3717049F5C85984C0466F8E2F7B95AB98150CAEE3EFD6C891CEAF48
+5F45AD3708B98E6D3C02869DFB10B49653A30D3B65789009F309B49FEF3B6A13
+641DE0D714D17DDFF559656CD6535F8DF177935AEAD7E43C6AA6D06923CEE2B1
+7625564AA13A1B7F0479A8450ABE90229866717EA91E688DA2FC44C25C0CE7E1
+2990CAB506C6CFB36B021B98FF035861E0A8BD2D727E883F419F6C06E0E67CB4
+FDC087E5A109E0D8B50BF75AD0F19F3D2BFCBEA41FF45AE0EF07925FC42BF271
+28044DF5C96E2D739F4C167F2CA69F788F020D5EEE64328EE70B7D79671BBF51
+A2A9CAC21040A612B4C089EAD3AD25B262395DE74274302EE5DBFCCDAB6204F4
+AB712B3B85E22DBE52F59834EE1FEB770CC6CC2ED95C7FAF433B6112BF05F9EB
+957F817C5699C7958F7DE45EFBF82ACF876C4F98D4B4A4EEBCD67ECEC51531E9
+8A4EB379C14D0C2E288EEA31448E9A090F1D0B7471B83D2AF01070B83AEAB9BB
+4430EA83F9854CE7F5FB27AF6605145509A03D10C1C749CAC4B000BD9637B299
+F7925E3A4B30216F2AA55DEEAB8E8C0413686AE3AA8C53DF9F5F0D74A58ED5C5
+E5E55BBA7B542848B0DA35E1384BE51D184F159522F8128454B1C170C31F15F1
+0E655E45FCA290B94F432803FF4279DACC94151B6BA980F0399BFD3C451AAE48
+F98F03AABCA81A0FCDA9D89F08C3E099763D910797BC8B563F0BF14697579275
+F50B11D75DE1916C93EF86E8D41DCF72AE283E055EE3930DEED111C705C8E715
+D381F065EF1BE869245DB6A0514D65EA5EE99D37CAF33EF5A36B6CDBD843A217
+DCD47FE8F75ADC07E5825D00AF58459F83AE59D7E884488F3D85BB7BD8D2BA48
+D72BF67E11EF832968706EB94D17204758BFC76E320C1A7DCCAD1BE5E5518A65
+171FD7D36514796E785D49E614237EBF65443F7A8B1C7097D1BE66B793AC950D
+3E6ACDDD32F6EF7BDA0A43D87E872579CB6AF8169FAB94CC2B20A1DEC0CD6B05
+45F7D17FB4F0BDB5F69F305FED781179461A78BEBCF879CBCF4505B1A8A79F70
+F86FD80F6239FDA9762BBA0213836AE95F8A0DB0EA0084F2458C84E0AEE6EDAF
+572EA8ACFCE761B1C771859ABF2D6F588DD3070F1E987DE47B7EABB00868D603
+0A15CD717E49A9A7DA04027EA88B08731CEE45AA483241E5F0348EEDEB706764
+653AB7A2A8C1308AD0261800DBDB0756A8EB8E0F16DD20906497600B9EB5F662
+FD7102338A45C3256CA9F6F91D42D338EF1337A57B7FE36E0517C58C176F995F
+459529CF130D69C7357957E4FD61F0ACC18D3D81276E1546C9CD702BC728B210
+256FF64ADEFE05FA3FD5539390CCDBEFE2D43014968FFA728768D8BA5DABBF01
+249BC717E1709C361D8822F7784C072B0FC55417A063DDF0BECF26B91704CA1D
+8F82A8D0A354447CF7C54F38D882DDE8DE5E810831BDF0460154234D8999C295
+4C323D3602CD61AB3CAC462A5A99D40C79CE0A7A14DE9399124BE4B702DB2ECF
+646E2DA24108D4560F47CA5C3201F0D8CB53D529131BB8B2D27DB8F81D319AB5
+1EA44411F95343CD35AC5A139870F655475AE410256E91BD8644C9346DB0D57A
+5144E47F2103D3EBC71AC99069ADD04BC7EB73C928DCF45A9BE293CBF7B7C589
+9CACE6EEAA3C730FD903407842683297024BDAE048BE84EECC2FAAA0269508D1
+02E9E2EC883E095A2852EDC0C0DFF1619E4EB3B384D0B68F0301FC6C8D867A38
+86EF99E3302B40CEB398CCA018F4C5A6189BB51FE83D09211798D184BD86B3C0
+12C745AD9E7DCF6C4638312C60521ADCE53F8EAF26B81508787ECF579CB4E2F3
+CB06219E486C9518152D921E3CA38E4D75B876CA70B1C7D8A9FDFE57A9F4D6E6
+C5757D0F46DC2AC136E2D1D16E8AED3B44B008F1E4557F286E4165F77795D418
+3A4E3024407C1D7074AE4D510F66655C190BB59D51EFA98439C68A9CB029FE00
+4BEDDE113EACFF54E905EFF56EDD9CAC4F5D29ADC2E264E9DA505505473B9DD0
+F2A381DFB5D3EA80B2AB32E9651D5D7B4E912A17DC332085232D107D7C83A27C
+2E2D1323BDDD6FC7D51EF5FB1E21D2B2572C228A9C6FB738DA7D2A88590E36B3
+0403C715EBB1DD144D5EDEB2CCDEA989E91A973111F5ADB5D1BF5E8F37DB1B38
+5FC0F58DE690CE045FF03202F7A997D9FB67A59B023CEAF9D1C948506CFD5C48
+D5957334C0DF8FF0F800188E7C30718597EBC84E3A9AC13B4A7FAC1E2CEA5C26
+CCFB9F42707688D802FFFFE5BF045D2B1A89F508BBE4104FAA21BE0A89BA8DF2
+A921F7B1057C62A2EBDB29A612AAFC741C6D1ADBFB264DB2289A88F598089ABD
+C26B25764693F8ADE876F94C26EDD8A94935487DC15E5499488F7BBF0C7873B1
+6F0322F54D521DC59E41F2C099255BE456D81AFD3F37BE6D927887D292FA2338
+E9CA16354878A9B7DDDEA284FDAAC1AAFC7D63E2CA1D0F8DC1B3BD6869F8DBDF
+51B6063A7259A83FD8684FA1D63265DF11CEDC333B99B25343AB355D9ED24646
+407C3712B0EEC9917E4C73215EEFA3A911CD85C97FF197F753FD1E428E5FD51F
+734153D8E719895E3FE0067FE77E264ABEFAF68CDBEEB452804BD45BF09173AE
+125B8F35CDED4935834B856428DF4D35C49E8DD019C040759C7EA160100E945B
+25C311AB5682CCABEF30D1E8A2B7A3A0D68CA5DF3A3412816E6E6F91889BA640
+C3633AAF7DA92263FD31F82C17CBA6C6A8EFB0D621729C9A8D359A7DBB6739AD
+5E90CAE2896505AA6F7DFCABFCCE42F80F2FEA1CFEC7F3D214C300AA4A013FBD
+B259E96E50E425F3C156DD39A18411E77240B6F94492A7EB8295D9D76727ED81
+D506700F292C14ED8F0F55934E08B5D5AF373DDBF900CA28D5A6256E2C7B3E8E
+6B253CA4286402ACF6D4174A6724ABC75F5717627FCE347A8049C10AB9D83CE2
+CF727C822A553645FD00E1B76238384F17FBD012EFCC197B3998D837A08DF808
+D8234AB5D948B3FEC3287B0908E7D392CD8A45E7CD047F2C00E634F83033646D
+81F1DCCEC77217E9D302A9F368349399ACEBF8000FCECF7E8B4444F14C80FC7D
+72A04ED0E91989F2A1A2225D0017E022965376CF5B6E3D42075C2CA4B4354981
+55CC8B49EDED62C145148C014660E6A9DB537F5B99E851B680125E8B5A8A183C
+5D5A79E3BCFF74DD02E3320FDB22A5A9A7044820EBA613B53DDDBAE854B390C5
+2E2A4218BFD2FE3E002E3151B3AF6576A7F37266BFFEA5823F579D030AD4E013
+650BD95B9E4357A4399D8BB8CEF6E175A0D7B2AC944C272D4B842707EC9599B1
+652CE8453D18F7A57F356CAD7A002D293B24A3DC620C0673DF1E75E5F919ACC6
+CE16235624AF0E9E651097E9BBDC97D5CFFA46AEC7777179418A622D6DCECAC7
+F02D161DA3212B11AD1CD47F7FBB3B37DFCE0310233F93870FC445D02C4AE3C0
+1FB3DAB2464B21CEDCA5467D602BE60B8FA73B69785A73644DFC59E15774A02C
+6A43E4FDBF97CAB4565CC6245FCE3AF15317970F13655C192FB1018DDA522549
+89CADF82FE0DFA7E28EB959BF7F0DD88CE637AFA32EB58E0D030E650969315C7
+AB9E7E670228CFC9AF215890547EB22A1F18AC224689D8A1DC088C5A005375AE
+879315C8E0FA2C16142EDF634B20679B250C439D80DA2E0B5DC3621FEBF50AE4
+5C0647A7FB41571A3603EFC253EED49A0CE240B56FD660D09541CF7450EF5E6D
+7834689C9EEF94AA363AF6944DDB5C1AF3C4517AC2096F689C95D7D8AB9EA1F1
+33A3422EC83561BD2C58E3FB1BC2E64116929A3DD4C0A5DACA07732B6282CAD4
+CB1C42A7A31580B822042F52E83DDCE447E01403DA27A81B7BCEB303A1965CCD
+0A04818FC7C5148CBE9432A8F6C3F5411E8ED99C8495C8428F013E66BD23C102
+B6FD66AF46D0D94D4F9FFA481635849BDEA4E0A10DFA748D0AA315B5BA05F23B
+3E1EFFE24D4D0D9535BB25B77EE40C69723FEE9EEA2439F0B0DC464A16F91F4B
+10FB2D22FBAF38A741D618495D563E523FAE19DBFF1F523F1C697615EDDCC785
+D62011ECEC1F176B699688A87250E952995D0594C0D007A66029C57037C29C68
+201331E6CFA74660747518F0A3B8A6657D446036C017ECA3B12AC809B4E74E2B
+52C4C06ECB933A0FD4BF2AD5D7734C0F08739B3247F8A6064B5CCB9F90FB1BF8
+2EF39E1FD1D6DD8A58BA7756D4138AD216B140EA5B5FECDB607B6F2CA5646605
+2A24F2561262FB1BF134FEA86A053ADEAAE09571C79B4E54AC4FB75933FF37C0
+14524CA14CD634D08179EEF94F0A53398E07FA9752CD9A685434FFE5EBD240E8
+FE59C4F8605B1C79FCB09F9B85F02AB573DF63FEA29D2CD40E33024D8E8C5A0B
+AECD3061B79E7D726B1125957397812C06E1ED904B3FB8BD71B9658916548712
+F48245160ABE8B85E90E6904E8FAF68D2EC8ACA50393E7E75576B37D87FB7FC4
+455938745F72111258A74AD9CF03031FC2AF3BDF7F1A72568F0CE3BC91B4F8E2
+DE63CBA0A5E507C318B867E33BD3F0F285C97B53FF5B2A584315C61098F6FE77
+90F33045E6DD711EDB10171A5EB3CE901148C97D666AA3B559B2181247BE35B0
+1E9B4FB6B0D7BF06F9E79B23E469287DBE5F40057B7180D08C7B976F4695342C
+2CC55FBABCA27AB49214E495292FE084CE10814FA6607535E59489830DA6B237
+D7A1DA47FC4F86B72C3C24A2046952E9F82F0A0CE8CE5B0935956323CBA73903
+47FD8A2F50A11D339DC31911EBF9FBD2B05D9013A8AC9A34EEF4E6B519391779
+A415EBD945608FE6571C1B8BC7C2ACD6361DE214E093C6F7BD89A91CEB4E7EDF
+8D4C8E64758D769D8669A82C7A8E07AE347C661129817401B7E59340E67F2FC2
+B59B757B10F0583E8641E9E1655393FE4BFDCD3C8EF016F2EEBE4381A2167C3E
+B900CB5694C4242722450984C2BD55CFB74B8DA38C2FA76CDB0F6CF2DAC38F97
+475FDB7C457F405A5E88AE1F7C05AD43979737564EF0B63F13038C42C6B4D625
+869DB79A1DEAF9BDB5EA5CDCCE27D677101621B7D1B911803EBB5C5653D17FC8
+DC00B9FEBE624A5B952731045B1919458F8C53067FE6D3971AC42C09961EC717
+A18F2479971809F839F2ED2A871C10B370C7CDC616F698F25ACBBD37D4936361
+5115C440CB08E3BC27906C8715C366FD306133EB052A5A50A25AA81C50724EE0
+87D53F227D5F11A4AF81627F194B08F4210A7EC67839D6DB5210568759D8B715
+18D8E43AD739943CD6285D1D6F4A59D94E694EBEC4A67569EC639C2EC4B8899A
+5CF332F2C06066119FDDFADE8E0E2C5BF996604E89D85B47ED2C04D588F0733F
+B039C2EAE8BA9BF93919E5D12D7B4A693F57DF0DD4AD7AF8403BEB0E5A56CA25
+2331764337AAD0A5DF1EF8CA3846A81D88C01FB997ED37A1ED69CC4D4CA06586
+39EE89E286566BFA9FF63B045378A7C1BEC2931E31B73010D27D6F8D534FEEA3
+A07BF210C87849BEF1F5BF8658D3813909E48EB0074D343C484053D81A918858
+978F503D4DF6FEF21165F191559B339B0C74C2D107B737E849CB24F01D22D033
+865228342C428528FFAE30A72449189ED6F1B90552B50C451A02F06CF6BAB306
+333F6637E3675F64BD6F4CEA7FC5614A64F789246C5EB1DFD719C4F23E67D5FF
+FFE95F61AE27A62BBEF9963CD2BE567DF5361EB99FDD792A5513B12D36389C01
+6D2A450FF4B34637BD30E900EE8C130A72A0CB9D9C76CC13CA46431D5D3AB28C
+319CF3F42722EBD9F974FD10939DAFD7ACE65BBF3B8674382DFEAD7D205180E1
+E7C05287BF6F6C0B380F03EFAB07C0942E7976E2170DA6010BBCF777346C9C03
+D44E82DC9E8B3782E8F9580152F14429A5AFE61E9BC8C97760FDEDC1CC8C93C3
+14464A5A003827A001D2C59525F85C08EAF30C258992FBC7F78D281027E9E837
+3793D9267B3F1F1427F5826F5DA59C1BAC6055E91C21F4EDA46BAA1F3F75A175
+077FA257107DE1828622C6DE59DA9DD86947C4B947BB08AD6048072DB59AC306
+214D6312F4143651CFF2E8DB66525092C3397312F3C0B36D563243A6623584F3
+1308AB368FA54E2AE39443046AE08605EF1D3DED8050B9742454924EBBC5C90C
+6F21BE50B01BD122E422C56FA42092261DF9B928852BD273BB2C5E8DD939A240
+CCF89ECFCD402E3450E39794ADF08E39CF4FFD4E0A7133F6E4BCBB3484628E96
+998B62B8A21018A93B2207106BC7BE8B74308B21CE2F94C1F3C30A95B1E0D8E2
+8B9AA1C472036F31EA0A40499EB16CAA23003207F7646BE28555A76A246697E2
+90A9388C0ADC412DCCC8377BA0F729C9FD3805C661DD916519490276758A7966
+0BC62D429A3F91352AE828EDE5DD7621E49D6AD540B7D37044823D3B750C4D52
+2AAF4A483D68F6F113738406BBE4849B063B23085931AF8B6468D3A6AA1C2616
+17CCB5D3D6D89B93799FC30018F46EAEC76B6F9C93E1ADA0FD5ACBB6EEB26364
+2926D66BC61B82E2344C8EC9D6ACD9DCC9680FB92E00AAF20076685280332096
+8E128A9AE9C7D07B7DF4172993E0062E671A8F317ED5D8246B3C9F6003EB040A
+5EFA776309DE6A4579C173E3EF1B175997846A1FE941E157C53428AC9116CA8B
+8D01939E2C1B91B1DDA47CC617BEC652E444E80F170B84689448F5FE3F30BC05
+CB53B8236C57A595A8678E89AE57590AB30F42EA5392F66729041A9E6894ACD4
+31C77DD578245F22177D75732649C1226B4580388E699265FF6B3A58A4A81447
+BD02784BA112EAC3D9AC78E04608DB75316AD3CFA839A3F2D011E8D9604A4784
+0295148D6AEDC0EE68000702A5DB455120FA72EF07943A0D6322DFE72F41AC43
+CB4D5D6779F2F959E62B1FDF6EBEF7EFBCAE4701877414C45596A860415D7EDD
+6F4795C2E92BF097A70433EAE5D0F6A6CF22B96ABB60EC898E9B138EEE59C440
+BDE342D6F20E1C9CC0528DC70F4AFD7AEDE5BE2229B8714E4BA296C9ADACF796
+351C948C96DD65AFCAEE626C933A0122A19FA96CF3CA30979058D6FD92F2626A
+D248749CA46D62915DDAEB0B865150D73F66FFE4BD2070B853E37F139566731F
+AC042AF236E9E1095FADABD922E0EC99BEAEFB34AA932F7C6FFF0E526E017866
+06FBB72BECFDE64ACAFD01476BCF481670FA84129C446DD56ECE55EAC7507E27
+72114106636201CA8A009051171F238ED184C2F6AA4B4D7E1BBEDED11E3F5C19
+08F70E75F506BB459C0D287F3375D9574F3C87D4BFD54A21A952E3EE2590D4F5
+BA707D0227AD8BCFACBC78CA0C69B34D7CC2D2E0A71AE23611AA9B9B10A9A739
+B45B84E2437323ABB0F07C2428F560F2FE11BA872C2ECA4085F354C29D1DF20B
+0C8CC08BFA0570AF1AA3A305E736448A694D4DBA4827672DF8C38F049BE122B3
+56A19F6561C6C91B39E377EB27270949C83EC60A4D8328B4CE013C3234A3C6DD
+E4801E926866DE7293A1F71D46E5261E0E8303BA7FE159EFF86B1F8937350CDD
+28F83E5C25663AA7D37E1EF00E16DA121868D5E80D0724D6D606C8FA5688B8D3
+ED9FB838C25FE30ABAEEDE108A4D8E9F9C340E2818ED8821E1CCB211A9763AD1
+557358AD05389C987ABC953B09AD7ACB7AC50948DD400D86CE8D8CFED5FED237
+ED87BAF50394FF34887BE006BE635FCC39F7E557D1098CEEAC3C9ADB9A33F089
+355D2283ED28B920FA01916C923556A679129218D8A9333FAFC466AC675FE653
+0D3AB9C458DA71AD0BBE6FD8AB874F48A8FDEEA8483BB50901E094AD40287A4D
+E7550CABF96A2C67FE963C4D7011D0FB7823372B1E4E4C0B0170BCD8247B9064
+17B644BF7829E58630002136AA8D6EFE1924855405F0221336142553B270AE43
+A9975F632CCC8FE8E288F9A0751F5890CC40448BFCD4BF7682BE05C40A3ED83E
+F032EFE21C09D3B38623B7CD40B360E24515993967756D803125DB7A8222A8F3
+27F38816DA35C8AE097250B3C9CB676B942099AA595FC2E6B8E2C2C485A99F57
+434435A98DFC9397C0CB1540A3590949369F04E7AB4E14C28A0100A57AAE262C
+CBDD3C4E1E5A6D3781469468F23738880E9613FF35A0F2843E7E8BE533DF9123
+C003FDCF569953982C7DD2E9B03FAF9FBA8E09ACD155FE0E01712735EA9627C8
+155C6BD3E2E7583D77E2C31A6AEBE8C6889C21650A0B65F9480EB421053910CF
+60AF328617F4B8034B0FACF0D8A9B9A73DAB80695650FA74EC4352E72B714794
+45764CFC5ED60AF6B2767180251F96A2E3D4E4130E63CBD032F7FCB0433C93BE
+A2B54192A601F469DEF70EB502E84868347E5FD89C167C94A3AF345BA7131A28
+7BCF3883C41CC33822F5C13488475F74BD0BE4333EDCE521CA94F45735B0BF6C
+0C84BC84335D0EA39ED7DCE7588984A4B1E661BBFC6618040999E6202F0D5538
+EF63AADB12308CA1332F2E257516A733B6A5DA31280E58C68A883239B8DC8811
+E3416B1EB81BDB4BC4A5F1AC8A4865FE9FD676D911F55390FE380C0FAC3EFB77
+2C0D8D627E1FB949A4CAB263A047E61EE54152E821641D51E36D52230DB26217
+B4B770A81C1507DF3C5F6ED6E77EBBDF8BE5A298DA7F82E0FF75F52AC36BA84A
+DEC2EF34C8E38EFD5B89EC74C97D894F2B748A90D17A23E39D936CE5394169BA
+3858FD4071760B31AF8224495A24F2BE2D00373B45143C5825DE3B13FE46BA5B
+EC1A00DD8456980D7E2483524028C1218FB9AABF51293C06ABF8954D61EA02EF
+BBE06F008CC14982BBEEB67BBBACCCC370876AC375D343348A02E1FA6E2C0FB6
+C8A601F6B1304260B899307D977604E4B6529074EADEBCDE78E541687480ABE9
+4FC10EE7FFB0F5B9C3D9AC271A68B9D1C594E127DD16E51542811DB72DB900AF
+AD72D24CE96C16EDB8C18D26E14078B985CD07D6AB7BF251E3111C99FA7CB11E
+C627EE73333A3659C7C3F5FCEEF39DAE7E952E7074955AB7E068165D29D8EABF
+8DC760C44C469F1AB2A40F2C0C31B7101216780DFD2246F6A9F3AD62E421DFE4
+88FE00238F6FF4A8F52A0B08C0DB203DC8BEDBB22A7F44F2617EDCD58E028D35
+5C45FDB670F39E2A3B139D0BC55CECFDCD8707CEA11481B31B975C427B75D6CC
+4383137258A02D0520835CF0A83D7BC9B85C79FD100BE10D1BCA7D2AA25F8CE5
+A4F23BC7CD9B2A3E485864A79734C7754470E69183B0D973BE66F3C582ECB524
+19CA6F2E0D2ADD6E2E8F09FDBE79B38B670F5A5AF51EDBCA34585149C49BC7F4
+2FF89B9E638FB3A4AEF248589D1227B38FF906EDE0FBDDEB7AEBCBF4E1DDC82C
+93F945319344EE235C16E13C26274EF76423A7DB7ABF71BEC98FC09F6FFDCEC4
+3EE84F4D71F8064A0AE5621554D41E0B72DDBAD11625A1C8AFB5DFEB948B7150
+DE49C8FECD6E258175DA173AEF2AF6F0AA00ACC05E9BA7AF1D2D12ACBAD41EC9
+788495AD24CC788DC2CD8C3E8DD1DB7DEEF482706E8D2A952F75725A2B011CD2
+EAB18A0C175208127ADC642EB2F169B44AFF65B9C705B2B2CB7C51269E7D8A38
+7432388C35BE1612BC65E733F7FF8685E58B1D0ACAB6B36E0E1F8D88515C5A4F
+4201EF19620A53F83F7135CC33EE74DDADDEAB6161C9E95E0BD9C5AA70FF4354
+3B58F95EB791D88F883F9274D54C0885FC842E089AFFF9156A440D1CACF4B7B0
+B69CEBAE3824A802A01B736F990575F1BE44A7B6EAD9D17DEA0ED1811F4385B8
+4BE075D6F0468DF95BA8B4E7ECDBF1F47A617672E9CF86004762F65AAA2FD388
+7F3BE6B497466D6662B8E86CB9D99F7850FE141B7704E1D9B8CA2C79AF20DD85
+9C870DE627AA8CCC13A35AABCBEDC677433CC4031E40D770C5771D4350144666
+06EC7C748A40418C7D29722ABCE5E894079DAD67EE664145FF321B70C98347B6
+4A11C52529CC20423754498F08FC1B1284410913214950CBC71CF0E3CE83540E
+E43ADDAFAE9F83E7B00A89DEEC26A76AAAFD1663D79473CE042AAB84ECA99131
+A79636189F137B883AD6F426B83ECC335FF497746E6F4E27BC702440617776FB
+F206B173F3DA5CD777675B2F67625BA3004B1D5EEAD3C8FD07733204188F284F
+746EBCFA5673E8CE18548F5973DAE933E7703CD98C5C454E64B1C74A6E1689F4
+12A67BD06B04EDFCA2E98D963B0E90F946CCB7A193EDF4178F80606EEE175222
+4E92F07900E19603929F52ABD90C2D3C3C262E567D7B38CBD639DC51270F1833
+8D7B4C4DDEA7DCC7A36076F6FE5A77A6FEB251238E8F4DD8B7475319B6541323
+BBEE9C7AED457AEFC82CABE4E9FD97FEE6F194DA32166CAE869614DD741F1D37
+5B20EAC2A40133D67C80AA58FBB73E2BCFBAAABC236D86764EF49E399B78DB60
+A34FA145C3DC0749B4278B493E1CA0E1A5E0185A71AE3CB3ED8F8182D355B075
+35081EC030D9C999493C39E6685CEA717D38B78985393C2AAD5E6F50CD9E229A
+302CF2A7F34FB0C58C917BFB2FC3575EBADF884508843DD9CE97A21862BBF7C6
+07A91198C2B0B8E8EFD46C4D1B94251BBC887357B9C86BB64C2A3232C4AFECD6
+8681E15851BC2AD7E25DF0819DB59AEB7C199470E0895B21CBD13F3533DDCBE7
+5B0CDFF813909B48290AEAFDCCC9F71050DFAE4DF84972612429EB4B527BE328
+27C656AF275A1A64B382CF73927BF0F8832574E8E7AACE96C1CB31807A32A33E
+B835589BACDEAAFEC64AAB0A66AAC2AA4FF335401038833FDF7D68A3F2624E55
+A95D19BC7B3F1DBD08BB16AA575162B8676B338985C6A0AEF4219316238D8BC8
+CD8E186086192F213499A01EE66CCF599BF62C7547013DEF1C58708024A037E7
+DBDDADC7496EE57E04A22A5D5CA368BB9AD5747333AE6BBA6262C9B80B42132B
+A001A7C0AF8995DCB1D5E7E6EA3EB29EDC8C880FF2F8F9B87ABBBDC3C5E6E09E
+A988562B83D54539AE9045B6DD6AAA15FC7FCCA523AF1CB756502ECC60459C3A
+49FD283364168D379C68AA90EFB30BF9837A7BA67402F643FEBC1A4C481ABE09
+9B1C0584AF90E3C9685D44160E57155197B9DE87FCF5AFB154A688FEA06669D5
+3A6F53707CE3105D3F46533B26B1C4741E4E7CC69D57658A8FB7B6882D354A81
+D33498045CE0D891D05D9FDAE3CF020B5DF1151B141DF88C791C9143CDF148D4
+282CE9BE5C63D5E17807D13D44282D6773A11F43AC3A3F76C069CFECC7739BD0
+61D581EF8E1B95D5330ABE136AE400950D2BC4C7D9520AE017E32537226C54A0
+FB77AEDA35AF5BE11FB61D2031411955A833EBB99B23B58EFE2CC3D2CB92702B
+906CB4FE252444A2FC794EFA36746804F3676BF6BE512673E729AC14FF2A10F2
+8F076A74831E3B2EC98FAA0A1F2D5BE3C388AD76644E3E367ADF51B058A470FD
+8B48C1AF21D6805FCFBDC32F6280A8D085CC72DC550BFEDAEE3A0F642130017F
+E567213A952277145987836FF9B5BA135141711E9705B25DB621D427FF7E3CA1
+CCA26B85F33ACA4B121A02030039F17E1D015F5935E08C0485EB1C119C76D471
+D5793D40B521F2A1F28647B5142C114E4636DAAB73D06E3BCD382CC066793F99
+A3C1E51DCE8289024EA83F1E7082C16CA42000E951CC75552FE4DA99735F86A4
+D28DDEBF29200504C98CB7BCA38AB1C209C06431A56E91BFEEFBDF1630B9AE7C
+A3B9DDAA1BFB56893C25D47B202459C21DB0EF4F2E1521EA5A15E3EEF22B11AA
+7B07BABA55E9737267EAB921CA1EC6A6349CDF78B307E5454AA8BBE4C9F7BBF9
+7850FE0E976FD6D8591878AD23461D6102C2218F39D8E3E29D4AF1885387AF85
+B175262111307F545CBDBE22498BEB7CFA1F6DB656E60884B18086BB9442498A
+432989C9178AE45CF1689D3DEA338E675FB96BE9992AA7C123CAC65D627525F6
+317C0EBAF620A0139D762DCEFAC9CAE44ED26F3EDC3BC50C1EBC7446618CD3F3
+C338C2064D93AAEC7A9AFAF52DDD3726BB452404C5213C2F6795240D8C1976BF
+B3899307E917CD47BDB29CF146735C5B1FFC3FAE9BC9941469B483665EE3318F
+8F26CCC4DF45739F352B34C281F06C534438B7C369D36185F41B1816E0E42B6A
+41DD55BB697E80E80FC1D0E477DCDD0F9FEB96A52DB6859ECEF641B400207A7F
+72087CDECCBC030AADF93062FB4F577AC1F43464F8CB35D114F8D4A4033C900D
+8FE7B949BC3DC59F5BD12793E84771A33890CA35F3EC7D86410B43D0E0A633DC
+D529B82438DEE375EEBBF380A19F5FDCDCFBCA513EE2C6098F3C7989636FB3EB
+116648A3E8A0E3E21A7DAE24FDFA93D54D2D2591A2F9EBE930A3084917F0D6D5
+530B8F0374AA6B67A5A18A9B7299896F9895EEEF824BBC827E481F5A53CFDBEA
+CCFBB0BE3F0F3ED6636201994753FFE023B9B76B890CE5D7A31FA3E3B35C0BC7
+079A2C1DA65AD805EC3295BDC4A7768DF5A9D6CF03663A4B8883B7E28AA8F4C8
+ED70620CC83566B001C278F376E06D7A84E214B62E7E3A5E7E0F6FA46CF3D093
+3E558CD94DD2FE47372886BCD803C057B35E6429C5E6887FB57B12378D0E8F29
+E7410BF440FA19EB65921E7E32EA2DDF447E83CAF0A1E6146149E59FD04BFB56
+9EA72C27E36F8E7D2E52673349CAEDD3C9187E129E4777176B8AE9026AC81CCB
+96B86C6788423DDF1E50BD729154
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+cleartomark
+{restore}if
+%%EndFont
+TeXDict begin 55380996 39158280 1000 8000 8000 (tex-ref.dvi)
+@start /Fa 206[441 49[{}1 774.872 /CMR7 rf /Fb 135[633
+61[307 24[689 721 693 660 598 484 633 572 631 484 547
+667 646 638 1[520 550 484 449 492 573 626 708 11[{}24
+1106.96 /CMMI10 rf /Fc 242[812 13[{}1 664.176 /CMSY6
+rf /Fd 134[427 1[578 427 449 320 324 320 1[449 406 449
+664 234 427 1[234 449 406 255 363 449 363 449 406 8[595
+2[595 578 449 2[544 6[294 2[522 544 1[578 1[595 7[406
+406 406 406 1[406 406 406 406 406 1[234 277 234 44[{}44
+664.176 /CMR6 rf /Fe 141[784 3[470 4[366 366 8[627 627
+1[627 627 31[470 1[523 523 1[0 3[627 941 13[470 470 941
+941 4[732 732 4[732 732 732 732 15[732 261 1[{}26 885.568
+/CMSY8 rf /Ff 139[366 371 4[523 1[261 6[418 523 2[470
+97[{}7 885.568 /CMSL8 rf /Fg 133[389 5[316 389 2[486
+2[777 243 2[292 486 2[437 486 437 1[486 97[{}12 885.568
+/CMTI8 rf /Fh 144[542 2[301 7[603 1[603 98[{}4 885.568
+/CMBX8 rf /Fi 137[561 2[424 2[513 2[681 473 2[281 4[573
+2[561 13[569 2[692 9[664 1[775 735 67[{}13 885.568 /CMCSC8
+rf /Fj 129[470 470 470 470 470 470 470 470 470 470 470
+470 470 470 470 470 470 470 470 470 470 470 470 470 470
+470 470 470 470 470 470 470 470 470 470 470 1[470 470
+470 470 470 470 470 470 1[470 470 470 470 470 1[470 470
+470 470 470 470 470 470 470 470 470 470 470 470 470 470
+470 7[470 1[470 470 470 470 1[470 470 470 470 470 470
+470 470 470 470 34[{}81 885.568 /CMTT8 rf /Fk 133[679
+806 806 1103 806 849 594 603 629 1[849 764 849 1273 424
+806 1[424 849 764 467 700 849 679 849 743 8[1155 1[1155
+1175 1063 849 5[1450 919 2[579 1196 1201 961 1004 1[1103
+1[1155 20[424 31[849 891 11[{}41 1328.35 /CMBX10 rf /Fl
+129[470 3[418 497 497 680 497 523 366 371 367 497 523
+470 523 784 261 497 288 261 523 470 288 418 523 418 523
+470 2[470 1[470 2[705 705 966 705 705 680 523 692 732
+640 732 705 862 588 731 1[339 705 1[614 640 718 680 666
+705 6[261 6[470 1[470 1[470 261 314 261 1[470 366 366
+261 4[470 20[523 523 549 680 732 680 732 680 705 627
+653 732 784 588{}78 885.568 /CMR8 rf /Fm 134[967 967
+1324 967 1018 713 723 755 1[1018 917 1018 1528 509 2[509
+1018 917 560 840 1018 815 1[891 8[1386 2[1410 1275 1018
+1375 2[1377 1[1740 6[1153 1204 1406 1324 1[1386 19[611
+45[{}34 1594.02 /CMBX10 rf end
+%%EndProlog
+%%BeginSetup
+%%Feature: *Resolution 8000dpi
+TeXDict begin
+%%BeginPaperSize: a4
+/setpagedevice where
+{ pop << /PageSize [595 842] >> setpagedevice }
+{ /a4 where { pop a4 } if }
+ifelse
+%%EndPaperSize
+ @landscape end
+%%EndSetup
+%%Page: 1 1
+TeXDict begin @landscape 1 0 bop -3447 -5293 a Fm(A)-51
+b(UCT)1591 -4939 y(E)2567 -5293 y(X)611 b(Reference)h(Card)3281
+-3808 y Fl(\(for)313 b(v)-26 b(ersion)314 b(13.1\))-6000
+-843 y Fk(Con)-42 b(v)g(en)g(tions)507 b(Used)-6000 1488
+y Fl(Carriage)315 b(Return)e(or)g Fj(C-m)7828 b(RET)-6000
+2551 y Fl(T)-78 b(abular)313 b(or)h Fj(C-i)11318 b(TAB)-6000
+3614 y Fl(Linefeed)313 b(or)h Fj(C-j)11097 b(LFD)-6000
+6554 y Fk(Shell)509 b(In)-42 b(teraction)-6000 8885 y
+Fl(Run)313 b(a)h(command)h(on)f(the)f(master)h(\014le)3067
+b Fj(C-c)472 b(C-c)-6000 9948 y Fl(Run)313 b(a)h(command)h(on)f(the)f
+(bu\013er)4979 b Fj(C-c)472 b(C-b)-6000 11011 y Fl(Run)313
+b(a)h(command)h(on)f(the)f(region)4850 b Fj(C-c)472 b(C-r)-6000
+12073 y Fl(Fix)313 b(the)h(region)11593 b Fj(C-c)472
+b(C-t)g(C-r)-6000 13136 y Fl(Kill)315 b(job)14298 b Fj(C-c)472
+b(C-k)-6000 14199 y Fl(Recen)-26 b(ter)314 b(output)f(bu\013er)8036
+b Fj(C-c)472 b(C-l)-6000 15261 y Fl(Next)313 b(error)g(in)h(T)222
+15452 y(E)744 15261 y(X/L)2168 15147 y Fi(a)2588 15261
+y Fl(T)3111 15452 y(E)3633 15261 y(X)f(session)3972 b
+Fj(C-c)472 b(`)-6000 16324 y Fl(Previous)314 b(error)f(in)h(T)1784
+16515 y(E)2306 16324 y(X/L)3730 16210 y Fi(a)4150 16324
+y Fl(T)4673 16515 y(E)5195 16324 y(X)f(session)2410 b
+Fj(M-g)472 b(p)-6000 17387 y Fl(T)-78 b(oggle)315 b(debug)e(of)h(bad)f
+(b)26 b(o)-26 b(xes)6452 b Fj(C-c)472 b(C-t)g(C-b)-6000
+18449 y Fl(T)-78 b(oggle)315 b(debug)e(of)h(w)-26 b(arnings)6921
+b Fj(C-c)472 b(C-t)g(C-w)-6000 19512 y Fl(View)314 b(output)f(\014le)
+10744 b Fj(C-c)472 b(C-v)-6000 20575 y Fl(Compile)314
+b(all)h(and)f(view)f(output)g(\014le)4105 b Fj(C-c)472
+b(C-a)-6000 22060 y Fl(Commands)221 b(y)-26 b(ou)221
+b(can)g(run)f(on)h(the)g(master)g(\014le)h(\(with)e Fj(C-c)472
+b(C-c)p Fl(\))222 b(or)f(the)-6000 23123 y(region)407
+b(\(with)e Fj(C-c)472 b(C-r)p Fl(\))408 b(include)e(the)g(follo)-26
+b(wing)407 b(\(starred)f(v)-26 b(ersions)-6000 24186
+y(are)314 b(not)g(a)-26 b(v)-52 b(ailable)315 b(in)f(all)h(mo)26
+b(des\):)-6000 25671 y(T)-5477 25862 y(E)-4955 25671
+y(X)15187 b(*)q Fj(TeX)-6000 26734 y Fl(L)-5751 26620
+y Fi(a)-5331 26734 y Fl(T)-4808 26925 y(E)-4286 26734
+y(X)14518 b(*)q Fj(LaTeX)-6000 27797 y Fl(ConT)-3804
+27988 y(E)-3282 27797 y(Xt)313 b(\(once\))10274 b(*)q
+Fj(ConTeXt)-6000 28859 y Fl(ConT)-3804 29050 y(E)-3282
+28859 y(Xt)313 b(F)-78 b(ull)11254 b(*)q Fj(ConTeXt)474
+b(Full)-6000 29922 y Fl(Mak)-26 b(einfo)13174 b(*)q Fj(Makeinfo)-6000
+30985 y Fl(Mak)-26 b(einfo)313 b(with)h(HTML)e(output)4799
+b(*)q Fj(Makeinfo)474 b(HTML)-6000 32047 y Fl(Appropriate)313
+b(preview)-26 b(er)8179 b Fj(View)-6000 33110 y Fl(Prin)-26
+b(t)313 b(the)h(output)10572 b Fj(Print)-6000 34173 y
+Fl(BibT)-4027 34364 y(E)-3505 34173 y(X)14208 b Fj(BibTeX)-6000
+35235 y Fl(Bib)26 b(er)15147 b Fj(Biber)-6000 36298 y
+Fl(Mak)-26 b(eIndex)12887 b Fj(Index)-6000 37361 y Fl(LaChec)-26
+b(k)13840 b Fj(Check)-6000 38423 y Fl(Mak)-26 b(e)313
+b(\(P)-26 b(ostScript\))314 b(File)7995 b Fj(File)-6000
+39486 y Fl(Isp)26 b(ell)15209 b Fj(Spell)-6000 40549
+y Fl(Delete)315 b(in)-26 b(termediate)314 b(\014les)7458
+b Fj(Clean)-6000 41611 y Fl(Delete)315 b(all)g(output)e(\014les)8530
+b Fj(Clean)473 b(All)-6000 44527 y Fk(T)-5192 44822 y(E)-4379
+44527 y(Xing)509 b(options)-6000 46858 y Fl(T)-5477 47049
+y(E)-4955 46858 y(X)260 b(runs)f(can)i(come)g(in)f(v)-52
+b(arious)260 b(t)-26 b(yp)26 b(es,)271 b(whic)-26 b(h)259
+b(ma)-26 b(y)260 b(b)26 b(e)260 b(toggled)i(and)-6000
+47921 y(are)314 b(indicated)g(in)g(the)g(mo)26 b(de)314
+b(line.)-6000 49406 y(PDF/D)-26 b(VI)314 b(mo)26 b(de)10695
+b Fj(C-c)472 b(C-t)g(C-p)-6000 50469 y Fl(Stop)314 b(on)f(errors)h
+(\(In)-26 b(teractiv)g(e)313 b(mo)26 b(de\))3575 b Fj(C-c)472
+b(C-t)g(C-i)-6000 51532 y Fl(I/O)314 b(correlation)h(\(S.)f(Sp)26
+b(ecials,)315 b(SyncT)8356 51723 y(E)8877 51532 y(X\))1460
+b Fj(C-c)472 b(C-t)g(C-s)23280 -5293 y Fk(Miscellaneous)23280
+-3383 y Fl(Read)314 b(A)-26 b(UCT)28284 -3192 y(E)28805
+-3383 y(X)314 b(man)-26 b(ual)7859 b Fj(C-c)472 b(TAB)23280
+-2320 y Fl(Find)313 b(do)26 b(cumen)-26 b(tation)9059
+b Fj(C-c)472 b(?)23280 -1258 y Fl(Math)313 b(Mo)26 b(de)12575
+b Fj(C-c)472 b(~)23280 -195 y Fl(Reset)314 b(Bu\013er)12306
+b Fj(C-c)472 b(C-n)23280 868 y Fl(Reset)314 b(A)-26 b(UCT)28446
+1059 y(E)28967 868 y(X)11016 b Fj(C-u)472 b(C-c)g(C-n)23280
+3224 y Fk(Multi\014le)510 b(Handling)23280 5134 y Fl(Sa)-26
+b(v)g(e)313 b(Do)26 b(cumen)-26 b(t)11019 b Fj(C-c)472
+b(C-d)23280 6196 y Fl(Switc)-26 b(h)313 b(to)h(master)g(\014le)g(or)g
+(activ)-26 b(e)314 b(bu\013er)2345 b Fj(C-c)472 b(^)23280
+7259 y Fl(Query)313 b(for)g(a)h(master)g(\014le)8044
+b Fj(C-c)p 42626 7259 283 45 v 23280 9597 a Fk(Command)508
+b(Insertion)23280 11507 y Fl(Insert)313 b(Section)11732
+b Fj(C-c)472 b(C-s)23280 12569 y Fl(Insert)313 b(L)26226
+12455 y Fi(a)26646 12569 y Fl(T)27169 12760 y(E)27691
+12569 y(X)g(en)-26 b(vironmen)g(t)6881 b Fj(C-c)472 b(C-e)23280
+13632 y Fl(Insert)313 b(item)12882 b Fj(C-c)472 b(LFD)23280
+14695 y Fl(Insert)313 b(item)h(\(alias\))10003 b Fj(M-RET)23280
+15757 y Fl(Close)314 b(L)26043 15643 y Fi(a)26463 15757
+y Fl(T)26986 15948 y(E)27508 15757 y(X)f(en)-26 b(vironmen)g(t)7064
+b Fj(C-c)472 b(])23280 16820 y Fl(Insert)313 b(T)26500
+17011 y(E)27022 16820 y(X)h(macro)g Fj({})8884 b(C-c)472
+b(C-m)23280 17883 y Fl(Insert)313 b(double)h(brace)9483
+b Fj(C-c)472 b({)23280 18945 y Fl(Complete)314 b(T)28037
+19136 y(E)28559 18945 y(X)g(macro)8601 b Fj(M-TAB)23280
+20008 y Fl(Smart)314 b(\\quote")11370 b Fj(")23280 21071
+y Fl(Smart)314 b(\\dollar")11292 b Fj($)23280 23288 y
+Fk(F)-127 b(on)-42 b(t)508 b(Selection)23280 25198 y
+Fl(Insert)313 b Fh(b)30 b(old)314 b Fl(text)10671 b Fj(C-c)472
+b(C-f)g(C-b)23280 26260 y Fl(Insert)313 b Fg(italics)383
+b Fl(text)10226 b Fj(C-c)472 b(C-f)g(C-i)23280 27323
+y Fl(Insert)313 b(roman)h(text)10136 b Fj(C-c)472 b(C-f)g(C-r)23280
+28386 y Fl(Insert)313 b Fg(emphasize)-49 b(d)401 b Fl(text)8047
+b Fj(C-c)472 b(C-f)g(C-e)23280 29448 y Fl(Insert)313
+b Fj(typewriter)318 b Fl(text)8046 b Fj(C-c)472 b(C-f)g(C-t)23280
+30511 y Fl(Insert)313 b Ff(slan)-26 b(ted)346 b Fl(text)9812
+b Fj(C-c)472 b(C-f)g(C-s)23280 31574 y Fl(Insert)313
+b Fi(Small)346 b(Caps)314 b Fl(text)7414 b Fj(C-c)472
+b(C-f)g(C-c)23280 32637 y Fl(Delete)315 b(fon)-26 b(t)12873
+b Fj(C-c)472 b(C-f)g(C-d)23280 33699 y Fl(Replace)315
+b(fon)-26 b(t)12272 b Fj(C-u)472 b(C-c)g(C-f)f Fe(h)p
+Fl(k)-26 b(ey)p Fe(i)23280 36086 y Fk(Source)509 b(F)-127
+b(ormatting)23280 37996 y Fl(Inden)-26 b(t)313 b(curren)-26
+b(t)312 b(line)9698 b Fj(TAB)23280 39059 y Fl(Inden)-26
+b(t)313 b(next)g(line)10849 b Fj(LFD)23280 40428 y Fl(F)-78
+b(ormat)314 b(a)g(paragraph)9134 b Fj(M-q)23280 41491
+y Fl(F)-78 b(ormat)314 b(a)g(region)10808 b Fj(C-c)472
+b(C-q)g(C-r)23280 42554 y Fl(F)-78 b(ormat)314 b(a)g(section)10490
+b Fj(C-c)472 b(C-q)g(C-s)23280 43617 y Fl(F)-78 b(ormat)314
+b(an)g(en)-26 b(vironmen)g(t)7696 b Fj(C-c)472 b(C-q)g(C-e)23280
+44986 y Fl(Mark)313 b(an)h(en)-26 b(vironmen)g(t)8494
+b Fj(C-c)472 b(.)23280 46049 y Fl(Mark)313 b(a)h(section)11288
+b Fj(C-c)472 b(*)23280 47419 y Fl(Commen)-26 b(t)314
+b(or)f(uncommen)-26 b(t)314 b(region)4339 b Fj(C-c)472
+b(;)23280 48482 y Fl(Commen)-26 b(t)314 b(or)f(uncommen)-26
+b(t)314 b(paragraph)2665 b Fj(C-c)472 b(\045)26528 49713
+y Fd(Cop)-22 b(yrigh)g(t)30575 49693 y(c)30350 49713
+y Fc(\015)277 b Fd(1987,)e(1992-1994,)h(2004-2006,)f(2008,)h(2010,)
+25604 50563 y(2012,)g(2014-2017,)f(2019-2022)g(F)-65
+b(ree)277 b(Soft)-22 b(w)g(are)277 b(F)-65 b(oundation,)276
+b(Inc.)31585 51413 y(for)g(A)-22 b(UCT)35031 51556 y(E)35474
+51413 y(X)277 b(v)-22 b(ersion)277 b(13.1)23280 52571
+y(P)-22 b(ermission)369 b(is)h(gran)-22 b(ted)369 b(to)h(mak)-22
+b(e)371 b(and)e(distribute)g(copies)g(of)h(this)f(card)h(pro-)23280
+53421 y(vided)323 b(the)g(cop)-22 b(yrigh)g(t)323 b(notice)f(and)h
+(this)g(p)22 b(ermission)321 b(notice)h(are)h(preserv)-22
+b(ed)323 b(on)23280 54271 y(all)276 b(copies.)60590 -5293
+y Fm(Math)612 b(Mo)51 b(de)52560 -2324 y Fk(V)-127 b(ariables)52560
+-117 y Fl(All)396 b(math)f(mo)26 b(de)395 b(commands)h(are)g(under)e
+(the)g(pre\014x)g(k)-26 b(ey)395 b(sp)26 b(eci\014ed)52560
+945 y(b)-26 b(y)313 b Fj(LaTeX-math-abbrev-prefix)p Fl(,)325
+b(default)314 b(is)g(\\)p Fj(`)p Fl(".)52560 2389 y(Y)-78
+b(ou)290 b(can)h(de\014ne)e(y)-26 b(our)290 b(o)-26 b(wn)290
+b(math)h(mo)26 b(de)290 b(commands)i(b)-26 b(y)289 b(setting)i(the)
+52560 3452 y(v)-52 b(ariable)314 b Fj(LaTeX-math-list)321
+b Fl(b)26 b(efore)313 b(enabling)i Fj(LaTeX-math-mode)p
+Fl(.)52560 6160 y Fk(Greek)510 b(Letters)52560 7986 y
+Fb(\013)1893 b Fl(\()p Fj(\\alpha)p Fl(\))2920 b Fj(a)52560
+9048 y Fb(\014)1975 b Fl(\()p Fj(\\beta)p Fl(\))3390
+b Fj(b)52560 10111 y Fb(\015)2028 b Fl(\()p Fj(\\gamma)p
+Fl(\))2920 b Fj(g)52560 11174 y Fb(\016)2109 b Fl(\()p
+Fj(\\delta)p Fl(\))2920 b Fj(d)52560 12236 y Fb(\017)2152
+b Fl(\()p Fj(\\epsilon)p Fl(\))1980 b Fj(e)52560 13299
+y Fb(\020)2117 b Fl(\()p Fj(\\zeta)p Fl(\))3390 b Fj(z)52560
+14362 y Fb(\021)2051 b Fl(\()p Fj(\\eta)p Fl(\))3860
+b Fj(h)52560 15424 y Fb(\022)2081 b Fl(\()p Fj(\\theta)p
+Fl(\))2920 b Fj(j)52560 16487 y Fb(\024)1963 b Fl(\()p
+Fj(\\kappa)p Fl(\))2920 b Fj(k)52560 17550 y Fb(\025)1955
+b Fl(\()p Fj(\\lambda)p Fl(\))2450 b Fj(l)52560 18612
+y Fb(\026)1934 b Fl(\()p Fj(\\mu)p Fl(\))4330 b Fj(m)52560
+19675 y Fb(\027)2054 b Fl(\()p Fj(\\nu)p Fl(\))4330 b
+Fj(n)52560 20738 y Fb(\030)2117 b Fl(\()p Fj(\\xi)p Fl(\))4330
+b Fj(x)52560 21800 y Fb(\031)1970 b Fl(\()p Fj(\\pi)p
+Fl(\))4330 b Fj(p)52560 22863 y Fb(\032)2029 b Fl(\()p
+Fj(\\rho)p Fl(\))3860 b Fj(r)52560 23926 y Fb(\033)1968
+b Fl(\()p Fj(\\sigma)p Fl(\))2920 b Fj(s)52560 24989
+y Fb(\034)2117 b Fl(\()p Fj(\\tau)p Fl(\))3860 b Fj(t)66640
+7986 y Fb(\035)2003 b Fl(\()p Fj(\\upsilon)p Fl(\))1980
+b Fj(u)66640 9048 y Fb(\036)1941 b Fl(\()p Fj(\\phi)p
+Fl(\))3860 b Fj(f)66640 10111 y Fb(\037)1908 b Fl(\()p
+Fj(\\chi)p Fl(\))3860 b Fj(q)66640 11174 y Fb( )1880
+b Fl(\()p Fj(\\psi)p Fl(\))3860 b Fj(y)66640 12236 y
+Fb(!)1912 b Fl(\()p Fj(\\omega)p Fl(\))2920 b Fj(w)66640
+13299 y Fl(\001)1817 b(\()p Fj(\\Delta)p Fl(\))2920 b
+Fj(D)66640 14362 y Fl(\000)2013 b(\()p Fj(\\Gamma)p Fl(\))2920
+b Fj(G)66640 15424 y Fl(\002)1869 b(\()p Fj(\\Theta)p
+Fl(\))2920 b Fj(J)66640 16487 y Fl(\003)1948 b(\()p Fj(\\Lambda)p
+Fl(\))2450 b Fj(L)66640 17550 y Fl(\004)1974 b(\()p Fj(\\Xi)p
+Fl(\))4330 b Fj(X)66640 18612 y Fl(\005)1896 b(\()p Fj(\\Pi)p
+Fl(\))4330 b Fj(P)66640 19675 y Fl(\006)1921 b(\()p Fj(\\Sigma)p
+Fl(\))2920 b Fj(S)66640 20738 y Fl(\007)1869 b(\()p Fj(\\Upsilon)p
+Fl(\))1980 b Fj(U)66640 21800 y Fl(\010)1921 b(\()p Fj(\\Phi)p
+Fl(\))3860 b Fj(F)66640 22863 y Fl(\011)1869 b(\()p Fj(\\Psi)p
+Fl(\))3860 b Fj(Y)66640 23926 y Fl(\012)1921 b(\()p Fj(\\Omega)p
+Fl(\))2920 b Fj(W)52560 27746 y Fk(Sym)-42 b(b)42 b(ols)52560
+29571 y Fe(!)1660 b Fl(\()p Fj(\\rightarrow)p Fl(\))805
+b Fj(C-f)52560 30634 y Fe( )1660 b Fl(\()p Fj(\\leftarrow)p
+Fl(\))1275 b Fj(C-b)52560 31697 y Fe(")2131 b Fl(\()p
+Fj(\\uparrow)p Fl(\))2215 b Fj(C-p)52560 32759 y Fe(#)2131
+b Fl(\()p Fj(\\downarrow)p Fl(\))1275 b Fj(C-n)52560
+33822 y Fe(\024)1869 b Fl(\()p Fj(\\leq)p Fl(\))4095
+b Fj(<)52560 34885 y Fe(\025)1869 b Fl(\()p Fj(\\geq)p
+Fl(\))4095 b Fj(>)52672 35852 y Fl(~)52560 35947 y Fb(x)1968
+b Fl(\()p Fj(\\tilde)p Fl(\))3155 b Fj(~)52672 36915
+y Fl(^)52560 37010 y Fb(x)1968 b Fl(\()p Fj(\\hat)p Fl(\))4095
+b Fj(^)52560 38073 y Fe(r)1817 b Fl(\()p Fj(\\nabla)p
+Fl(\))3155 b Fj(N)52560 39136 y Fe(1)1660 b Fl(\()p Fj(\\infty)p
+Fl(\))3155 b Fj(I)52560 40198 y Fe(8)2078 b Fl(\()p Fj(\\forall)p
+Fl(\))2685 b Fj(A)52560 41261 y Fe(9)2078 b Fl(\()p Fj(\\exists)p
+Fl(\))2685 b Fj(E)52560 42324 y Fe(6)2601 b Fl(\()p Fj(\\not)p
+Fl(\))4095 b Fj(/)52560 43386 y Fe(2)1974 b Fl(\()p Fj(\\in)p
+Fl(\))4565 b Fj(i)52560 44449 y Fe(\002)1869 b Fl(\()p
+Fj(\\times)p Fl(\))3155 b Fj(*)52560 45512 y Fe(\001)2340
+b Fl(\()p Fj(\\cdot)p Fl(\))3625 b Fj(.)52560 46574 y
+Fl(:)2340 b(\()p Fj(\\colon)p Fl(\))3155 b Fj(:)52560
+47637 y Fe(\032)1869 b Fl(\()p Fj(\\subset)p Fl(\))2685
+b Fj({)52560 48700 y Fe(\033)1869 b Fl(\()p Fj(\\supset)p
+Fl(\))2685 b Fj(})66640 29571 y Fe(\022)1869 b Fl(\()p
+Fj(\\subseteq)p Fl(\))1746 b Fj([)66640 30634 y Fe(\023)1869
+b Fl(\()p Fj(\\supseteq)p Fl(\))1746 b Fj(])66640 31697
+y Fe(;)2131 b Fl(\()p Fj(\\emptyset)p Fl(\))1746 b Fj(0)66640
+32759 y Fe(n)2131 b Fl(\()p Fj(\\setminus)p Fl(\))1746
+b Fj(\\)66640 33822 y Fe([)1974 b Fl(\()p Fj(\\cup)p
+Fl(\))4096 b Fj(+)66640 34885 y Fe(\\)1974 b Fl(\()p
+Fj(\\cap)p Fl(\))4096 b Fj(-)66640 35947 y Fe(h)2235
+b Fl(\()p Fj(\\langle)p Fl(\))2686 b Fj(\()66640 37010
+y Fe(i)2235 b Fl(\()p Fj(\\rangle)p Fl(\))2686 b Fj(\))66640
+38073 y Fl(exp)1163 b(\()p Fj(\\exp)p Fl(\))4096 b Fj(C-e)66640
+39136 y Fl(sin)1446 b(\()p Fj(\\sin)p Fl(\))4096 b Fj(C-s)66640
+40198 y Fl(cos)1342 b(\()p Fj(\\cos)p Fl(\))4096 b Fj(C-c)66640
+41261 y Fl(sup)1184 b(\()p Fj(\\sup)p Fl(\))4096 b Fj(C-^)66640
+42324 y Fl(inf)1529 b(\()p Fj(\\inf)p Fl(\))4096 b Fj(C-_)66640
+43386 y Fl(det)1294 b(\()p Fj(\\det)p Fl(\))4096 b Fj(C-d)66640
+44449 y Fl(lim)1295 b(\()p Fj(\\lim)p Fl(\))4096 b Fj(C-l)66640
+45512 y Fl(tan)1242 b(\()p Fj(\\tan)p Fl(\))4096 b Fj(C-t)66640
+46574 y Fe(_)1974 b Fl(\()p Fj(\\vee)p Fl(\))4096 b Fj(|)66640
+47637 y Fe(^)1974 b Fl(\()p Fj(\\wedge)p Fl(\))3156 b
+Fj(&)52560 51457 y Fk(Miscellaneous)52560 53664 y Fl(cal)315
+b(letters)13377 b Fj(c)471 b Fe(h)p Fl(letter)p Fe(i)p
+eop end
+%%Page: 2 2
+TeXDict begin @landscape 2 1 bop 1407 -5293 a Fm(preview-latex)-6000
+-1844 y Fk(Activ)-85 b(ation)-6000 474 y Fl(preview-latex)420
+b(is)h(part)g(of)f(A)-26 b(UCT)6875 665 y(E)7396 474
+y(X.)421 b(If)f(it)h(is)g(activ)-26 b(e,)448 b(y)-26
+b(ou)421 b(should)-6000 1536 y(see)398 b(an)g(en)-26
+b(try)397 b(\\Preview")h(in)g(the)f(men)-26 b(u)398 b(bar)f(when)g
+(editing)i(L)17431 1422 y Fi(a)17851 1536 y Fl(T)18374
+1727 y(E)18895 1536 y(X)-6000 2599 y(\014les.)415 b(If)301
+b(y)-26 b(ou)301 b(ha)-26 b(v)g(e)302 b(a)g(\\LaT)-78
+b(eX",)302 b(but)f(no)h(\\Preview")g(men)-26 b(u,)304
+b(add)d(the)-6000 3662 y(follo)-26 b(wing)315 b(to)f(y)-26
+b(our)313 b(init)h(\014le)g(\(usually)g Fj(~/.emacs.d/init.el)p
+Fl(\):)-6000 6205 y Fj(\(load)473 b("preview-latex.el")479
+b(nil)471 b(t)g(t\))-6000 9123 y Fk(Usage)508 b(and)h(k)-42
+b(eybindings)-6000 11441 y Fl(preview-latex)372 b(op)26
+b(eration)373 b(only)g(a\013ects)g(the)f(displa)-26 b(y)373
+b(of)f(the)g(bu\013er,)-6000 12503 y(not)452 b(its)g(con)-26
+b(ten)g(ts.)832 b(It)451 b(runs)g(only)h(on)g(demand,)486
+b(using)452 b(the)f(target)-6000 13566 y Fi(d)-20 b(vi)427
+b Fl(or)h Fi(PDF)g Fl(\014les)g(in)g(the)f(pro)26 b(cess.)761
+b(The)427 b(\014rst)g(command)h(in)g(the)-6000 14629
+y(follo)-26 b(wing)355 b(list)g(\(also)g(on)f(the)f(to)26
+b(olbar)355 b(button\))f(will)g(\(as)g(applicable\))-6000
+15692 y(repreview)301 b(an)i(activ)-26 b(e)302 b(region)h(or)g(a)f
+(single)h(mo)26 b(di\014ed)303 b(preview,)h(toggle)-6000
+16754 y(the)258 b(visibilit)-26 b(y)259 b(of)f(an)h(unmo)26
+b(di\014ed)258 b(preview)f(or)i(generate)g(previews)e(for)-6000
+17817 y(a)314 b(surrounding)f(bu\013er)g(area)i(up)e(to)h(the)f(next)g
+(preview.)-6000 19298 y(Preview)g(at)h(p)26 b(oin)-26
+b(t)10521 b Fj(C-c)472 b(C-p)g(C-p)-6000 20361 y Fl(Preview)313
+b(en)-26 b(vironmen)g(t)8716 b Fj(C-c)472 b(C-p)g(C-e)-6000
+21423 y Fl(Preview)313 b(region)11305 b Fj(C-c)472 b(C-p)g(C-r)-6000
+22486 y Fl(Preview)313 b(bu\013er)11434 b Fj(C-c)472
+b(C-p)g(C-b)-6000 23549 y Fl(Preview)313 b(do)26 b(cumen)-26
+b(t)9789 b Fj(C-c)472 b(C-p)g(C-d)-6000 24611 y Fl(Remo)-26
+b(v)g(e)314 b(previews)f(at)h(p)26 b(oin)-26 b(t)6726
+b Fj(C-c)472 b(C-p)g(C-c)f(C-p)-6000 25674 y Fl(Remo)-26
+b(v)g(e)314 b(previews)f(from)h(region)5287 b Fj(C-c)472
+b(C-p)g(C-c)f(C-r)-6000 26737 y Fl(Remo)-26 b(v)g(e)314
+b(previews)f(from)h(bu\013er)5416 b Fj(C-c)472 b(C-p)g(C-c)f(C-b)-6000
+27799 y Fl(Remo)-26 b(v)g(e)314 b(previews)f(from)h(do)26
+b(cumen)-26 b(t)3771 b Fj(C-c)472 b(C-p)g(C-c)f(C-d)-6000
+28862 y Fl(Cac)-26 b(he)314 b(pream)-26 b(ble)10873 b
+Fj(C-c)472 b(C-p)g(C-f)-6000 29925 y Fl(Switc)-26 b(h)313
+b(o\013)h(pream)-26 b(ble)314 b(cac)-26 b(he)6744 b Fj(C-c)472
+b(C-p)g(C-c)f(C-f)-6000 30987 y Fl(Read)314 b(T)-78 b(exinfo)313
+b(man)-26 b(ual)8614 b Fj(C-c)472 b(C-p)g(TAB)-6000 32050
+y Fl(Cop)-26 b(y)313 b(region)h(as)h(MML)8660 b Fj(C-c)472
+b(C-p)g(C-w)-6000 33531 y Fl(The)294 b(last)i(k)-26 b(eysequence)294
+b(will)i(cop)-26 b(y)294 b(a)i(region)f(with)g(previews)f(in)-26
+b(to)295 b(the)-6000 34594 y(kill)314 b(ring)g(in)g(a)g(form)g(\014t)f
+(for)g(sending)h(in)g(Emacs')h Fj(message-mode)p Fl(.)-6000
+37512 y Fk(Customization)508 b(within)i(Emacs)-6000 39829
+y Fl(Y)-78 b(ou)443 b(can)g(use)h Fj(M-x)472 b(customize-variable)478
+b(RET)445 b Fl(or)e(the)h(\\Preview/)-6000 40892 y(Customize")315
+b(men)-26 b(u)313 b(for)g(customization.)421 b(W)-78
+b(orth)-26 b(while)313 b(settings:)-6000 43080 y(If)g(y)-26
+b(ou)313 b(ha)-26 b(v)g(e)314 b(dvipng)f(a)-26 b(v)-52
+b(ailable:)-6000 44143 y(Set)313 b(to)i Fj(dvipng)11541
+b(preview-image-type)-6000 45912 y Fl(Keep)314 b(coun)-26
+b(ter)313 b(v)-52 b(alues)314 b(when)f(regenerating)i(single)g
+(previews:)-6000 46975 y(Set)e(to)i Fj(t)10597 b
+(preview-preserve-counters)-6000 48632 y Fl(Cac)-26 b(he/Don't)284
+b(cac)-26 b(he)283 b(pream)-26 b(ble)283 b(without)g(query)e(\(pream)
+-26 b(ble)283 b(cac)-26 b(hing)-6000 49694 y(is)257 b(done)g(using)g
+Fj(mylatex.ltx)262 b Fl(and)257 b(migh)-26 b(t)257 b(not)g(alw)-26
+b(a)g(ys)257 b(w)-26 b(ork.)398 b(Use)257 b(the)-6000
+50757 y(appropriate)272 b(k)-26 b(ey)271 b(sequences)g(for)g(o)-26
+b(v)g(erriding)272 b(the)f(follo)-26 b(wing)273 b(setting\):)-6000
+51820 y(Set)313 b(to)i Fj(t)p Fl(/)p Fj(nil)7776 b
+(preview-auto-cache-preamble)23280 -5293 y Fk(Customization)508
+b(from)h(L)37462 -5470 y Fi(a)37794 -5293 y Fk(T)38602
+-4998 y(E)39414 -5293 y(X)23280 -3208 y Fl(Customization)298
+b(is)f(done)f(in)g(the)h(do)26 b(cumen)-26 b(t)296 b(pream)-26
+b(ble)297 b(\(y)-26 b(ou)295 b(need)i(to)23280 -2146
+y(load)271 b Fj(preview.sty)k Fl(explicitly\))270 b(or)g(in)f
+Fj(prauctex.cfg)276 b Fl(\(whic)-26 b(h)269 b(should)23280
+-1083 y(load)315 b(the)e(system)h Fj(prauctex.cfg)319
+b Fl(\014rst\).)418 b(Commands:)23280 -20 y(Preview)313
+b(macro)4906 b Fj(\\PreviewMacro[{)p Fe(h)p Fl(args)p
+Fe(i)p Fj(}]{)p Fe(h)p Fl(macro)p Fe(i)p Fj(})23280 1043
+y Fl(Preview)313 b(en)-26 b(v)4279 b Fj(\\PreviewEnvironment[{)p
+Fe(h)p Fl(args)p Fe(i)p Fj(}]{)p Fe(h)p Fl(en)-26 b(v)p
+Fe(i)p Fj(})23280 2105 y Fl(Skip)313 b(macro)5912 b Fj
+(\\PreviewMacro*[{)p Fe(h)p Fl(args)p Fe(i)p Fj(}]{)p
+Fe(h)p Fl(macro)p Fe(i)p Fj(})23280 3168 y Fl(Skip)313
+b(en)-26 b(v)5285 b Fj(\\PreviewEnvironment*[{)p Fe(h)p
+Fl(args)p Fe(i)p Fj(}]{)p Fe(h)p Fl(en)-26 b(v)p Fe(i)p
+Fj(})23280 4896 y Fl(Div)g(erting)314 b(material)h(from)f(\015oat)g(en)
+-26 b(vironmen)g(ts)23280 5959 y(Snarf)313 b(stu\013)2639
+b Fj(\\PreviewSnarfEnvironment[{)p Fe(h)p Fl(args)p Fe(i)p
+Fj(}]{)p Fe(h)p Fl(en)-26 b(v)p Fe(i)p Fj(})23280 7372
+y Fl(V)-78 b(alues)314 b(to)g(b)26 b(e)314 b(used)f(within)g
+Fe(h)p Fl(args)p Fe(i)p Fl(:)23280 8435 y(Optional)i(argumen)-26
+b(t)16843 b Fj([])23280 9497 y Fl(Mandatory)313 b(argumen)-26
+b(t)15903 b Fj({})23280 10560 y Fl(Optional)315 b(star)19635
+b Fj(*)23280 11623 y Fl(Conditionals)5575 b Fj(?)p Fe(h)p
+Fl(tok)-26 b(en)p Fe(i)p Fj({)p Fe(h)p Fl(if)314 b(found)p
+Fe(i)p Fj(}{)p Fe(h)p Fl(if)g(not)f(found)p Fe(i)p Fj(})23280
+12686 y Fl(Skip)g(next)g(tok)-26 b(en)18648 b Fj(-)23280
+13748 y Fl(T)-78 b(ransformation)6009 b Fj(#{)p Fe(h)p
+Fl(macro)315 b(args)p Fe(i)p Fj(}{)p Fe(h)p Fl(replacemen)-26
+b(t)p Fe(i)p Fj(})23280 15162 y Fl(More)259 b(options)g(and)f
+(explanations)i(can)f(b)26 b(e)259 b(found)f(in)g Fj(preview.pdf)264
+b Fl(or)23280 16224 y(the)314 b(T)-78 b(exinfo)312 b(man)-26
+b(ual.)26856 19266 y Fm(F)-153 b(olding)612 b(Source)f(Displa)-51
+b(y)23280 21060 y Fl(T)-78 b(oggle)315 b(folding)f(mo)26
+b(de)9071 b Fj(C-c)472 b(C-o)g(C-f)23280 22123 y Fl(Hide)314
+b(all)h(items)f(in)g(bu\013er)7888 b Fj(C-c)472 b(C-o)g(C-b)23280
+23186 y Fl(Hide)314 b(all)h(items)f(in)g(region)7759
+b Fj(C-c)472 b(C-o)g(C-r)23280 24248 y Fl(Hide)314 b(all)h(items)f(in)g
+(paragraph)6085 b Fj(C-c)472 b(C-o)g(C-p)23280 25311
+y Fl(Hide)314 b(curren)-26 b(t)312 b(macro)9410 b Fj(C-c)472
+b(C-o)g(C-m)23280 26374 y Fl(Hide)314 b(curren)-26 b(t)312
+b(en)-26 b(vironmen)g(t)6821 b Fj(C-c)472 b(C-o)g(C-e)23280
+27436 y Fl(Sho)-26 b(w)313 b(all)i(items)f(in)g(bu\013er)7626
+b Fj(C-c)472 b(C-o)g(b)23280 28499 y Fl(Sho)-26 b(w)313
+b(all)i(items)f(in)g(region)7497 b Fj(C-c)472 b(C-o)g(r)23280
+29562 y Fl(Sho)-26 b(w)313 b(all)i(items)f(in)g(paragraph)5823
+b Fj(C-c)472 b(C-o)g(p)23280 30625 y Fl(Sho)-26 b(w)313
+b(curren)-26 b(t)313 b(item)9827 b Fj(C-c)472 b(C-o)g(i)23280
+31687 y Fl(Hide)314 b(or)g(sho)-26 b(w)313 b(curren)-26
+b(t)313 b(item)6607 b Fj(C-c)472 b(C-o)g(C-o)25520 34728
+y Fm(Outlining)612 b(T)34689 35083 y(E)35665 34728 y(X)f(Do)51
+b(cumen)-51 b(ts)23280 36523 y Fl(A)-26 b(UCT)25867 36714
+y(E)26388 36523 y(X)416 b(supp)26 b(orts)417 b(outline)g(mo)26
+b(de)417 b(b)-26 b(y)416 b(de\014ning)h(section,)443
+b(subsec-)23280 37586 y(tion,)338 b(etc.)476 b(as)333
+b(heading)h(lev)-26 b(els.)476 b(Y)-78 b(ou)332 b(can)h(use)g
+Fj(M-x)471 b(outline-minor-)23280 38649 y(mode)h(RET)492
+b Fl(to)e(toggle)i(outline)e(minor)h(mo)26 b(de.)948
+b(All)490 b(outline)h(minor)23280 39711 y(mo)26 b(de)242
+b(commands)g(are)f(under)f(the)h(pre\014x)f(k)-26 b(ey)240
+b(sp)26 b(eci\014ed)241 b(b)-26 b(y)240 b Fj(outline-)23280
+40774 y(minor-mode-prefix)p Fl(,)322 b(default)314 b(is)g
+Fj(C-c)472 b(@)p Fl(.)23280 42187 y(Hide)314 b(all)h(of)e(bu\013er)g
+(except)h(headings)3603 b Fj(C-c)472 b(@)f(C-t)23280
+43250 y Fl(Sho)-26 b(w)313 b(all)i(text)e(in)h(bu\013er)8180
+b Fj(C-c)472 b(@)f(C-a)23280 44313 y Fl(Hide)314 b(b)26
+b(o)g(dy)313 b(follo)-26 b(wing)315 b(this)f(heading)3813
+b Fj(C-c)472 b(@)f(C-c)23280 45375 y Fl(Sho)-26 b(w)313
+b(b)26 b(o)g(dy)313 b(follo)-26 b(wing)315 b(this)f(heading)3551
+b Fj(C-c)472 b(@)f(C-e)23280 46438 y Fl(Hide)314 b(subtree)12201
+b Fj(C-c)472 b(@)f(C-d)23280 47501 y Fl(Sho)-26 b(w)313
+b(subtree)11939 b Fj(C-c)472 b(@)f(C-s)23280 48564 y
+Fl(All)314 b(subheadings)g(visible)7985 b Fj(C-c)472
+b(@)f(C-k)23280 49977 y Fl(next)313 b(visible)i(heading)9196
+b Fj(C-c)472 b(@)f(C-n)23280 51040 y Fl(previous)314
+b(visible)g(heading)7570 b Fj(C-c)472 b(@)f(C-p)23280
+52102 y Fl(forw)-26 b(ard)313 b(to)h(next)f(subheading)6084
+b Fj(C-c)472 b(@)f(C-f)23280 53165 y Fl(bac)-26 b(kw)g(ard)313
+b(to)h(next)f(subheading)5327 b Fj(C-c)472 b(@)f(C-b)23280
+54228 y Fl(up)313 b(one)h(heading)h(lev)-26 b(el)8992
+b Fj(C-c)472 b(@)f(C-u)62298 -5293 y Fm(RefT)-153 b(eX)52560
+-3050 y Fk(Activ)-85 b(ation)52560 -1424 y Fl(RefT)-78
+b(eX)244 b(is)j(part)e(of)g(Emacs.)397 b(T)-78 b(o)245
+b(activ)-52 b(ate)247 b(and)e(mak)-26 b(e)246 b(it)g(in)-26
+b(teract)245 b(with)52560 -361 y(A)-26 b(UCT)-78 b(eX,)312
+b(insert)i(the)f(follo)-26 b(wing)315 b(lines)g(in)e
+Fj(init.el)p Fl(.)52560 1055 y Fj(\(add-hook)475 b('LaTeX-mode-hook)j
+(#'turn-on-reftex\))52560 2118 y(\(setq)473 b(reftex-plug-into-AUCTeX)
+481 b(t\))52560 4125 y Fk(T)-127 b(able)508 b(of)h(Con)-42
+b(ten)g(ts)52560 5751 y Fl(The)403 b(table)h(of)f(con)-26
+b(ten)g(ts)404 b(is)g(a)g(structured)e(view)h(of)g(the)h(en)-26
+b(tire)403 b(do)26 b(c-)52560 6814 y(umen)-26 b(t.)662
+b(It)395 b(con)-26 b(tains)396 b(the)f(sections,)417
+b(and)395 b(optionally)h(lab)26 b(els,)417 b(index)52560
+7877 y(en)-26 b(tries,)314 b(and)g(\014le)g(b)26 b(oundaries.)52560
+9175 y(Sho)-26 b(w)313 b(the)h(table)g(of)f(con)-26 b(ten)g(ts)63490
+8863 y Fa(1)69968 9175 y Fj(C-c)472 b(=)52560 10238 y
+Fl(Recen)-26 b(ter)314 b(*to)26 b(c*)315 b(bu\013er)e(to)h(here)64572
+9925 y Fa(1)69968 10238 y Fj(C-c)472 b(-)52560 12100
+y Fk(Crossreferences,)509 b(Citations,)g(Index)52560
+13822 y Fl(Insert)313 b(unique)g(lab)26 b(el)60274 13509
+y Fa(1)69968 13822 y Fj(C-c)472 b(\()52560 14885 y Fl(Reference)314
+b(a)g(lab)26 b(el)59577 14572 y Fa(1)69968 14885 y Fj(C-c)472
+b(\))52560 15947 y Fl(Insert)313 b(citation)i(with)f(k)-26
+b(ey)312 b(selection)3913 b Fj(C-c)472 b([)52560 17010
+y Fb(:)157 b(:)g(:)472 b Fl(prompt)313 b(for)g(optional)i(argumen)-26
+b(ts)2992 b Fj(C-u)472 b(C-c)g([)52560 18073 y Fl(Index)313
+b(w)-26 b(ord)313 b(at)h(p)26 b(oin)-26 b(t)314 b(with)f(default)g
+(macro)1047 b Fj(C-c)472 b(/)52560 19135 y Fl(Insert)313
+b(an)h(index)f(en)-26 b(try)8724 b Fj(C-c)472 b(<)52560
+20198 y Fl(Add)313 b(w)-26 b(ord)313 b(to)h(index)f(phrases)6289
+b Fj(C-c)472 b(\\)52560 21261 y Fl(Visit)314 b(index)g(phrases)f
+(bu\013er)6858 b Fj(C-c)472 b(|)52560 22323 y Fl(Compile)315
+b(and)e(displa)-26 b(y)314 b(index)6451 b Fj(C-c)472
+b(>)52560 23386 y Fl(View)314 b(cross)g(reference)60884
+23074 y Fa(1)69968 23386 y Fj(C-c)472 b(&)52560 24449
+y Fl(View)314 b(cross)g(reference)f(with)g(mouse)4062
+b Fj(S-mouse-2)52560 25512 y Fl(View)314 b(cross)g(reference)f(from)g
+(BibT)-78 b(eX)313 b(\014le)1859 b Fj(C-c)472 b(&)52560
+27374 y Fk(Standard)507 b(k)-42 b(eys)509 b(in)g(sp)42
+b(ecial)510 b(bu\013ers)52560 28999 y Fl(RefT)-78 b(eX's)327
+b(sp)26 b(ecial)329 b(bu\013ers)d(ha)-26 b(v)g(e)327
+b(man)-26 b(y)327 b(activ)-26 b(e)328 b(k)-26 b(eys.)458
+b(The)327 b(common)52560 30062 y(ones)314 b(are:)52560
+31361 y(Displa)-26 b(y)315 b(summary)e(of)h(activ)-26
+b(e)314 b(k)-26 b(eys)4362 b Fj(?)52560 32424 y Fl(Select)314
+b(this)g(item)11026 b Fj(RET)52560 33486 y Fl(Rescan)315
+b(the)e(do)26 b(cumen)-26 b(t)8556 b Fj(r)52560 34549
+y Fl(Displa)-26 b(y)315 b(lo)26 b(cation)315 b(in)f(other)g(windo)-26
+b(w)3771 b Fj(SPC)52560 35612 y Fl(F)-78 b(ollo)-26 b(w)314
+b(mo)26 b(de)12221 b Fj(f)52560 37474 y Fk(Multi\014le)510
+b(actions)52560 39100 y Fl(Since)271 b(RefT)-78 b(eX)270
+b(scans)h(the)g(en)-26 b(tire)270 b(\(m)-26 b(ulti\014le\))272
+b(do)26 b(cumen)-26 b(t,)279 b(it)271 b(can)g(pro-)52560
+40162 y(vide)324 b(commands)h(that)e(act)i(on)f(all)h(\014les)f(of)g(a)
+g(do)26 b(cumen)-26 b(t.)449 b(Chec)-26 b(k)323 b(the)52560
+41225 y Fj(Ref->Global)476 b(Actions)317 b Fl(men)-26
+b(u)313 b(for)g(these)h(commands.)52560 43087 y Fk(V)-127
+b(ariables)52560 44713 y Fl(T)-78 b(o)295 b(tell)i(reftex)e(ab)26
+b(out)296 b(y)-26 b(our)295 b(o)-26 b(wn)295 b(macro)i(de\014nitions,)j
+(customize)d(the)52560 45776 y(v)-52 b(ariables)52560
+47192 y Fj(reftex-label-alist)52560 48255 y(reftex-section-levels)52560
+49318 y(reftex-index-macros)52560 50380 y(reftex-cite-format)p
+52560 51054 25600 45 v 52560 51790 a Fa(1)53494 52102
+y Fl(An)436 b(argumen)-26 b(t)437 b(of)g Fj(C-u)h Fl(triggers)g(a)f(do)
+26 b(cumen)-26 b(t)437 b(scan)h(\014rst.)787 b(This)52560
+53165 y(can)284 b(b)26 b(e)283 b(necessary)g(if)h(\014le)f(con)-26
+b(ten)g(t)283 b(and)g(RefT)-78 b(eX's)283 b(kno)-26 b(wledge)283
+b(are)h(no)52560 54228 y(longer)315 b(consisten)-26 b(t.)p
+eop end
+%%Trailer
+
+userdict /end-hook known{end-hook}if
+%%EOF
diff --git a/support/auctex/13.1-extra/tex-ref.ps.sig b/support/auctex/13.1-extra/tex-ref.ps.sig
new file mode 100644
index 0000000000..a8386f56d6
--- /dev/null
+++ b/support/auctex/13.1-extra/tex-ref.ps.sig
Binary files differ
diff --git a/support/auctex/RELEASE-13.1 b/support/auctex/RELEASE-13.1
new file mode 100644
index 0000000000..b2543897a6
--- /dev/null
+++ b/support/auctex/RELEASE-13.1
@@ -0,0 +1,229 @@
+Release notes for AUCTeX 13.1 with preview-latex
+================================================
+
+AUCTeX provides by far the most wide-spread and sophisticated
+environment for editing LaTeX, TeX, ConTeXt and Texinfo documents with
+Emacs. Combined with packages like RefTeX, flyspell and others it is
+pretty much without peer as a comprehensive authoring solution for a
+large variety of operating system platforms and TeX distributions. It
+supports document-dependent completion and syntax highlighting, easily
+accessible menus, jumping to error locations in the source file, a
+number of editing shortcuts, intelligent indentation and filling of
+text during entry, and WYSIWYG previews of graphical elements like
+math formulas right in the Emacs source buffer, by virtue of its
+preview-latex component.
+
+One part of the preview-latex subsystem is the central `preview.sty'
+file that is independently useful for a number of applications and is
+available in unbundled form from CTAN.[1]
+
+AUCTeX needs volunteers in particular for non-programming tasks:
+documentation writing, tutorials, translations, reference material,
+sleuth work, testing.
+
+New features and fixed bugs in this release
+-------------------------------------------
+
+In math environments 'gather', 'gather*', 'gathered', 'multline'
+and 'multline*', fill commands such as 'M-q' and 'C-c C-q C-e' are
+disabled. This sorts out the inconsistency between those and
+'equation', 'displaymath' environments, in latter of which filling
+is already disabled.
+
+If you want filling in such environments, customize
+'LaTeX-indent-environment-list' to remove them.
+
+Auto fill continues to work in such environment anyway.
+
+In addition, AUCTeX adds support of alignment at '&' sign in
+'align'-like environments such as 'alignat', 'aligned' and so on,
+as well as 'matrix'-like environments such as 'pmatrix', 'bmatrix'
+and so on.
+
+Now two commands 'Texindex' and 'Texi2dvi' are available when you
+type 'C-c C-c' in Texinfo mode. The command 'Texindex' runs
+'texindex' on index files and 'Texi2dvi' runs 'pdftexi2dvi' or
+'texi2dvi' according to the value of 'TeX-PDF-mode'.
+
+So you can typeset Texinfo documents into PDF or DVI format from
+within AUCTeX.
+
+AUCTeX's own help messages for LaTeX errors are now shown only for
+LaTeX runs. AUCTeX shows raw error/warning messages found in
+'.log' files for runs of formats other than LaTeX, such as plain
+TeX, ConTeXt and Texinfo, as it does even for LaTeX runs when it
+can't find a matching entry in its own help message catalogue.
+
+Due to this change, customize option 'TeX-error-description-list'
+can no longer have a fallback entry that matches any error. If
+your customized value includes such entry, typically '(".*" . "No
+help available")', please remove it.
+
+Two functions 'TeX-split-string' and 'TeX-assoc' are now obsolete
+and will be removed in future release. If your personal code uses
+these functions, use 'split-string' and 'assoc-string' instead.
+
+The function 'TeX-read-key-val' now accepts a function call as
+second argument. This change should help AUCTeX style writers who
+use 'TeX-arg-key-val' and have to deal with dynamic key-values.
+Example of usage:
+ (TeX-add-style-hook "foo"
+ (lambda ()
+ (TeX-add-symbols
+ '("bar" (TeX-arg-key-val (function-returning-key-val))))))
+
+Since AUCTeX 12.2, 'C-x C-w' accidentally disabled the parse on
+save in that buffer, even when you enabled 'TeX-auto-save' option.
+This bug was fixed.
+
+AUCTeX now requires GNU Emacs 24.3 or higher.
+
+Old implementations for viewers were discarded, as announced long
+before. The variables 'TeX-output-view-style' and 'TeX-view-style'
+have no effect now. The former placeholders '%v' and '%vv' in
+'TeX-command-list' are ignored.
+
+AUCTeX now uses lexical binding which has been introduced in Emacs
+24. This change should have no user-visible effect and require no
+manual adaptions except in the following cases.
+
+ - Entries added to the customization variable 'TeX-expand-list'
+ also had access to variables 'command' and 'pos'. Those are
+ now properly declared and named 'TeX-expand-command' and
+ 'TeX-expand-pos'.
+
+ - Entries added to the customization variable 'TeX-expand-list'
+ had access to a variable 'file' which was bound to
+ 'TeX-active-master', i.e., it evaluated to either the master
+ or region file. This usage must be replaced with either
+ 'TeX-active-master' or 'TeX-active-master-with-quotes'.
+
+ - Viewer entries in 'TeX-view-program-list' also had access to a
+ variable 'file' which was bound to the name of the master or
+ region file without extension. Instead, the function
+ 'TeX-active-master' has to be used now.
+
+ - Macro argument parsing functions could set a variable
+ 'exit-mark' to the buffer position where point should be left
+ after all arguments have been read. This variable is now
+ named 'TeX-exit-mark'.
+
+ - The functions in 'LaTeX-section-hook' had access or modified
+ the previously undeclared variables 'title', 'name', 'level',
+ 'done-mark', and 'toc'. These variables are now properly
+ declared and have the 'LaTeX-' prefix, e.g.,
+ 'LaTeX-done-mark'.
+
+ - The functions in 'ConTeXt-numbered-section-hook' and
+ 'ConTeXt-unnumbered-section-hook' had access or modified the
+ previously undeclared variables 'title', 'name', 'level',
+ 'done-mark', and 'reference'. These variables are now
+ properly declared and have the 'ConTeXt-' prefix, e.g.,
+ 'ConTeXt-title'.
+
+ - The functions in 'TeX-translate-location-hook' could access
+ and modify the free variables 'file', 'line', 'error',
+ 'offset', 'context', and 'string'. Those are now properly
+ declared variables with the prefix 'TeX-translate-location-',
+ e.g., 'TeX-translate-location-file'.
+
+The constant 'LaTeX-dialect' has been renamed to 'TeX-dialect' and
+moved from 'latex.el' to 'tex.el'. 'LaTeX-dialect' now is an
+obsolete alias.
+
+The style 'latexinfo.el' is removed from AUCTeX. 'latexinfo.el'
+was meant to support latexinfo which in return was a LaTeX-2.09
+extension of Texinfo, but didn't manage to replace Texinfo.
+
+The style 'siunitx.el' is updated to support package version 3.
+Key-value options provided by older package versions are removed,
+deprecated macros and units are not supported anymore.
+
+AUCTeX has preliminary support for LaTeX-hooks. Hooks provided by
+LaTeX kernel are known and available for completion in
+'\AddToHook', '\RemoveFromHook' and '\AddToHookNext'.
+
+AUCTeX is now able to place all generated output files, including
+those that are produced by applications running under AUCTeX,
+temporary files related to region processing and preview-latex
+files, in an output directory. To use this feature, set the new
+user option 'TeX-output-dir' to the absolute path of the output
+directory or a relative path which would be interpreted as being
+relative to the master file in a multifile document.
+
+Note that this feature doesn't work if the document includes sub
+file placed in sub directory below the main file via '\include'
+command.
+
+Many other bugs were fixed.
+
+Requirements
+------------
+
+It is required that you use at least GNU Emacs 24.3.
+
+The preview-latex subsystem requires image support.
+
+You'll also need a working LaTeX installation and Ghostscript.
+dvipng[2] (version 1.4 or later), a very fast DVI converter, can be
+used to speed up the conversion.
+
+Availability
+------------
+
+The easiest way for getting AUCTeX is installing it with GNU ELPA, see
+<URL:https://elpa.gnu.org/packages/auctex.html> for more information.
+Other download options are available at
+<URL:https://ftp.gnu.org/gnu/auctex/>. At release time, we provide the
+source tarball. You can also use versions of Emacs that already
+include AUCTeX or a software package management system for your
+operating system which provides you with the latest release.
+
+A separate directory for each release contains some stuff from the
+tarball, such as ChangeLog, printable manuals, and a reference sheet.
+The download area is mirrored to the directory support/auctex on CTAN.
+AUCTeX is licensed under the GNU General Public License version 3.
+
+You'll find more information at the web site of AUCTeX
+<URL:https://www.gnu.org/software/auctex/>, including its mailing list
+addresses.
+
+Future development and additional information
+---------------------------------------------
+
+AUCTeX is proceeding as a GNU project with the long-term intent of
+merging it into Emacs. For that reason, all new contributors need to
+assign copyright to their contributions to the FSF (the usual
+procedure for Emacs contributors). The same holds for past
+contributors. The principal authors and maintainers have already done
+so, but it would require a diligent and diplomatic volunteer to find
+and ask the rest.
+
+Current AUCTeX managers are Arash Esbati, Mosè Giordano, and Tassilo
+Horn. Everybody is welcome to contribute to the project by reporting
+bugs and suggesting improvements, but the most effective way of
+helping AUCTeX development remains volunteering for tasks.
+
+The following people contributed to this release series (in
+alphabetical order): Ivan Andrus, Ralf Angeli, Masayuki Ataka,
+Mohammad Hossein Bateni, Fabrice Ben Hamouda, Thomas Baumann, Vincent
+Belaïche, Berend de Boer, Alex Branham, Uwe Brauer, Ken Brown, Joshua
+Buhl, Jean-François Burnol, Patrice Dumas, Arash Esbati, Werner Fink,
+Miguel Frasson, Peter S. Galbraith, Mosè Giordano, Andrea Greselin,
+Patrick Gundlach, Abdul-Lateef Haji-Ali, Jobst Hoffmann, Tassilo Horn,
+Yvon Hevel, Orlando Iovino, Mads Jensen, Arne Jĝrgensen, Philip
+Kaludercic, David Kastrup, Ikumi Keita, Philip Kime, Oleh Krehel,
+Joost Kremers, Frank Küster, Jan-Ċke Larsson, Matthew Leach, Brian
+Leung, Antoine Levitt, Leo Liu, Vladimir Lomov, Stefan Monnier, Dan
+Nicolaescu, Piet van Oostrum, Pieter Pareit, Nicolas Richard, Augusto
+Ritter Stoffel, Florent Rougon, Santiago Saavedra, Davide
+G. M. Salvetti, Rüdiger Sonderfeld, Holger Sparr, Mike Sperber, Reiner
+Steib, Christian Schlauer, Shiro Takeda, Mark Trettin (Please accept
+our apologies if we forgot somebody.)
+
+Footnotes:
+
+[1] <URL:https://www.ctan.org/pkg/preview>
+
+[2] dvipng is available via its project page
+<URL:https://savannah.nongnu.org/projects/dvipng> and from CTAN.
diff --git a/support/auctex/RELEASE-13.1.sig b/support/auctex/RELEASE-13.1.sig
new file mode 100644
index 0000000000..42fde557e8
--- /dev/null
+++ b/support/auctex/RELEASE-13.1.sig
Binary files differ
diff --git a/systems/texlive/tlnet/tlpkg/TeXLive/TLConfig.pm b/systems/texlive/tlnet/tlpkg/TeXLive/TLConfig.pm
index 0bfb0d5b21..277815ed16 100644
--- a/systems/texlive/tlnet/tlpkg/TeXLive/TLConfig.pm
+++ b/systems/texlive/tlnet/tlpkg/TeXLive/TLConfig.pm
@@ -1,4 +1,4 @@
-# $Id: TLConfig.pm 62052 2022-02-17 00:39:03Z preining $
+# $Id: TLConfig.pm 62091 2022-02-19 23:41:04Z preining $
# TeXLive::TLConfig.pm - module exporting configuration values
# Copyright 2007-2021 Norbert Preining
# This file is licensed under the GNU General Public License version 2
@@ -7,7 +7,7 @@
use strict; use warnings;
package TeXLive::TLConfig;
-my $svnrev = '$Revision: 62052 $';
+my $svnrev = '$Revision: 62091 $';
my $_modulerevision = ($svnrev =~ m/: ([0-9]+) /) ? $1 : "unknown";
sub module_revision { return $_modulerevision; }
@@ -128,7 +128,7 @@ if ($^O =~ /^MSWin/i) {
# during the first run of the installer.
# texlive-scripts are necessary for mktexlsr, updmap, fmtutil, ...
# the installation cannot continue without those
-our @InstallExtraRequiredPackages = qw/texlive.scripts/;
+our @InstallExtraRequiredPackages = qw/texlive.scripts kpathsea hyphen-base/;
if ($^O =~ /^MSWin/i) {
push @InstallExtraRequiredPackages, "luatex";
}
diff --git a/systems/texlive/tlnet/tlpkg/installer/ctan-mirrors.pl b/systems/texlive/tlnet/tlpkg/installer/ctan-mirrors.pl
index fb62efbc16..96fdc29dee 100644
--- a/systems/texlive/tlnet/tlpkg/installer/ctan-mirrors.pl
+++ b/systems/texlive/tlnet/tlpkg/installer/ctan-mirrors.pl
@@ -18,6 +18,7 @@ $mirrors = {
'https://mirrors.cqu.edu.cn/CTAN/' => 1,
'https://mirrors.dgut.edu.cn/CTAN/' => 1,
'https://mirrors.hit.edu.cn/CTAN/' => 1,
+ 'https://mirrors.nju.edu.cn/CTAN/' => 1,
'https://mirrors.sjtug.sjtu.edu.cn/ctan/' => 1,
'https://mirrors.sustech.edu.cn/CTAN/' => 1,
'https://mirrors.tuna.tsinghua.edu.cn/CTAN/' => 1,
@@ -47,7 +48,7 @@ $mirrors = {
},
'Korea' => {
'http://ftp.ktug.org/tex-archive/' => 1,
- 'https://ftp.harukasan.org/CTAN/' => 1,
+ 'https://cran.asia/tex/' => 1,
'https://ftp.kaist.ac.kr/pub/tex-archive/' => 1,
'https://mirror.kakao.com/CTAN/' => 1,
'https://mirror.navercorp.com/CTAN/' => 1,
@@ -118,6 +119,7 @@ $mirrors = {
'https://mirror.clientvps.com/CTAN/' => 1,
'https://mirror.dogado.de/tex-archive/' => 1,
'https://mirror.informatik.hs-fulda.de/tex-archive/' => 1,
+ 'https://mirror.physik.tu-berlin.de/pub/CTAN/' => 1,
'https://packages.oth-regensburg.de/ctan/' => 1,
},
'Greece' => {
@@ -180,6 +182,7 @@ $mirrors = {
'https://ctan.math.ca/tex-archive/' => 1,
'https://ctan.mirror.globo.tech/' => 1,
'https://ctan.mirror.rafal.ca/' => 1,
+ 'https://mirror.csclub.uwaterloo.ca/CTAN/' => 1,
'https://mirror.its.dal.ca/ctan/' => 1,
'https://muug.ca/mirror/ctan/' => 1,
},
@@ -195,7 +198,6 @@ $mirrors = {
'https://ctan.mirrors.hoobly.com/' => 1,
'https://mirror.las.iastate.edu/tex-archive/' => 1,
'https://mirror.math.princeton.edu/pub/CTAN/' => 1,
- 'https://mirror.mwt.me/ctan/' => 1,
'https://mirrors.concertpass.com/tex-archive/' => 1,
'https://mirrors.mit.edu/CTAN/' => 1,
'https://mirrors.rit.edu/CTAN/' => 1,
diff --git a/systems/texlive/tlnet/tlpkg/texlive.tlpdb b/systems/texlive/tlnet/tlpkg/texlive.tlpdb
index 0eca32581f..bf2c89f31f 100644
--- a/systems/texlive/tlnet/tlpkg/texlive.tlpdb
+++ b/systems/texlive/tlnet/tlpkg/texlive.tlpdb
@@ -26,11 +26,11 @@ depend container_split_src_files/1
depend frozen/0
depend minrelease/2016
depend release/2021
-depend revision/62080
+depend revision/62091
name 00texlive.image
category TLCore
-revision 62079
+revision 62086
shortdesc TeX Live files only in the source repository
longdesc The files here are not copied by the installer and containers
longdesc are not built for them; they exist only in the source
@@ -40,7 +40,7 @@ longdesc IgnorePatterns in the check_files routine in tlmgr.pl augment
longdesc this list. Those are not included in the source/ tarball. For
longdesc information on the 00texlive prefix see
longdesc 00texlive.installation(.tlpsrc)
-runfiles size=12502
+runfiles size=12538
.mkisofsrc
autorun.inf
texmf-dist/README
@@ -2615,6 +2615,7 @@ runfiles size=12502
tlpkg/tlpsrc/lua-widow-control.tlpsrc
tlpkg/tlpsrc/luabibentry.tlpsrc
tlpkg/tlpsrc/luabidi.tlpsrc
+ tlpkg/tlpsrc/luacensor.tlpsrc
tlpkg/tlpsrc/luacode.tlpsrc
tlpkg/tlpsrc/luacolor.tlpsrc
tlpkg/tlpsrc/luafindfont.tlpsrc
@@ -4531,7 +4532,7 @@ depend setting_available_architectures:aarch64-linux amd64-freebsd amd64-netbsd
name 00texlive.installer
category TLCore
-revision 62065
+revision 62082
shortdesc TeX Live standalone installer package
longdesc This package defines the files to go into the installer
longdesc archives (install-tl-unx.tar.gz, install-tl.zip) built by the
@@ -70118,7 +70119,7 @@ containerchecksum f763ff9a6832abce7a148bc5e8b9e5860f883ce0a56ad2119d9e18e7fb4dad
name collection-luatex
category Collection
-revision 60764
+revision 62086
shortdesc LuaTeX packages
relocated 1
longdesc Packages for LuaTeX, a Unicode-aware extension of pdfTeX, using
@@ -70149,6 +70150,7 @@ depend lua-ul
depend lua-uni-algos
depend lua-visual-debug
depend lua-widow-control
+depend luacensor
depend luacode
depend luacolor
depend luahyphenrules
@@ -70195,8 +70197,8 @@ depend truthtable
depend typewriter
depend uninormalize
depend yamlvars
-containersize 780
-containerchecksum 525f00fc9e24e6b20fd7933061f3456a15cbca6e2df6ea9666dd62edd8d006c247f05492236de64bae5bf9517e73997af6f884a5f03d63e28bec631fb94d2803
+containersize 784
+containerchecksum 35149503796e0f06b6a9e3be8067e3a3c88af9cd19717cd25aab450803f1bb6b72b405829a27b7503405876df46115af1846464280c0483b5109084d605fc50d
name collection-mathscience
category Collection
@@ -133939,7 +133941,7 @@ catalogue-topics graphics colour
name graphics-def
category Package
-revision 61899
+revision 62085
shortdesc Colour and graphics option files
relocated 1
longdesc This bundle is a combined distribution consisting of dvips.def,
@@ -133948,10 +133950,10 @@ longdesc dvisvgm.def driver option files for the LaTeX graphics and
longdesc color packages. It is hoped that by combining their source
longdesc repositories at https://github.com/latex3/graphics-def it will
longdesc be easier to coordinate updates.
-containersize 10988
-containerchecksum 0f7e3fbef047aff08bbc9245a803a3c22d95ffe5bd9e0030514857d83293d8c7f88028ce3bdb8dc8eea25dcff01e8b523cccf86676b4cb37f961719434d63eaa
-doccontainersize 604
-doccontainerchecksum 5d1addd8f3ae542951b1b28711b3376ad0000ea809f7394d7651597e7fbeadd022d297d02d4fd92db6a61c477d1f8239e129bec154b6208a26977004a093ae1a
+containersize 10980
+containerchecksum 0a427939d98618a357241fee7512c9f2f716a88b207b49fb31367ba4088643136004619a2a5fb0ec720895577188a5ec0860d4499e159af129f7f788f5d6d380
+doccontainersize 608
+doccontainerchecksum 7ae1018461ac342ca2ad85f7cbea7c6d04a48964cf4e07d68d1e2887ffe3081f1144a037899335cba24c4b5d6badc61b480114d10dc4fb45615b0f85897c4fb0
docfiles size=1
RELOC/doc/latex/graphics-def/README.md details="Readme"
runfiles size=23
@@ -187417,6 +187419,38 @@ catalogue-license lppl1.3c mit
catalogue-topics typesetting luatex
catalogue-version 0.5
+name luacensor
+category Package
+revision 62086
+shortdesc Securely redact sensitive information using Lua
+relocated 1
+longdesc This package provides simple tools for creating redacted
+longdesc documents with blacked-out text. Its tools are useful both for
+longdesc creating documents in a restricted environment (for redacted
+longdesc release in an unrestricted environment) as well as in an
+longdesc unrestricted environment (for eventual transfer and completion
+longdesc in the restricted environment). Redaction is done both by
+longdesc hiding all characters and by slightly varying the length of
+longdesc strings to prevent jigsaw identification. It also is friendly
+longdesc to screen readers by adding alt-text indicating redacted
+longdesc content.
+containersize 3512
+containerchecksum 280ba18784b3873f475280e307d707e226167875f94a9215f8a6e394bc26b07b6538add1b81a52efb0c3b57493be7acbd8f6134d79afeb7d3ebbe857f1bdfb06
+doccontainersize 133708
+doccontainerchecksum 0211a067150ff6568d3a97a17ccb3d7d66f1adcf877e43450fede506da855d865795a9bf29878a131933820b7bd5cca47241b4411994228ef47c947915358c5a
+docfiles size=39
+ RELOC/doc/lualatex/luacensor/README details="Readme"
+ RELOC/doc/lualatex/luacensor/luacensor.pdf details="Package documentation"
+ RELOC/doc/lualatex/luacensor/luacensor.tex
+runfiles size=3
+ RELOC/tex/lualatex/luacensor/luacensor.sty
+catalogue-contact-bugs https://github.com/ezgranet/luacensor/issues
+catalogue-contact-repository https://github.com/ezgranet/luacensor
+catalogue-ctan /macros/luatex/latex/luacensor
+catalogue-license lppl1.3
+catalogue-topics security editorial cond-comp luatex
+catalogue-version 1.0.0
+
name luacode
category Package
revision 25193
@@ -289556,7 +289590,7 @@ binfiles arch=x86_64-solaris size=1
name tex4ht
category Package
-revision 62051
+revision 62089
shortdesc Convert (La)TeX to HTML/XML
longdesc A converter from TeX and LaTeX to SGML-based formats such as
longdesc (X)HTML, MathML, OpenDocument, and Docbook, providing a
@@ -289577,10 +289611,10 @@ longdesc files from them is nontrivial, and generally done with the
longdesc Makefile in development, from which the TeX4ht package in TeX
longdesc Live is updated.
depend tex4ht.ARCH
-containersize 927344
-containerchecksum bba1e454fdf72f8702ecc5fb28d85483ca342939ddac1a285e5334cb7485cfb53999ea5a0d499bf80233ba6c4d07e0acde5670643f7f56c8b78792b8f80f2fd4
+containersize 927404
+containerchecksum 099d8eda0047cb09988f05be6a925a05c1789658287a1f8b26c72d858c89f6a9a1dd8cd9d225f193fe533db143893af3770fb2eb9b45896e49e4238ba4ca10d4
doccontainersize 136384
-doccontainerchecksum 6a669e5bd2099311a65e0455f6e98dc8e5693ab9be9ec150d381b7b21bc3230365fea58fc230c5207044f868d9aff23d2fa118b101626afd73b4f6fb9d35dc55
+doccontainerchecksum d185d6596b7f057cad650302c3b603a3e6730d1abcdc0458fdd6cd1f9cb14dfcb550100c0593a52e6f5496066cefe24853fa61ba47ae43824c1c00d8f90487e0
docfiles size=260
texmf-dist/doc/generic/tex4ht/Makefile
texmf-dist/doc/generic/tex4ht/README details="Readme"
@@ -289652,8 +289686,8 @@ docfiles size=260
texmf-dist/doc/generic/tex4ht/mn56.html
texmf-dist/doc/generic/tex4ht/mn5x.png
texmf-dist/doc/generic/tex4ht/mn6x.png
-srccontainersize 1235528
-srccontainerchecksum ba14ba7676f29dc389ea21fff676aabaf37fea7dba2110f50a6d1e000667ea9bb2d5b9cac6eb532ca6e49fe48cd0730ca32095ccb618adc860359672057594ae
+srccontainersize 1235868
+srccontainerchecksum 7a5b81f9580d22ba2641bef42a5dae7ff54ecc4f5c396f6c5662a9d24bcc52ab33f61ac2d51163f5f64a41aeb168e7e43697db5a8ad8f96d3caf6993016cbf6f
srcfiles size=3754
texmf-dist/source/generic/tex4ht/ChangeLog
texmf-dist/source/generic/tex4ht/Makefile
@@ -289728,7 +289762,7 @@ srcfiles size=3754
texmf-dist/source/generic/tex4ht/update-htfonts
texmf-dist/source/generic/tex4ht/wripro.tex
texmf-dist/source/generic/tex4ht/xtpipes.tex
-runfiles size=10615
+runfiles size=10616
texmf-dist/scripts/tex4ht/ht.sh
texmf-dist/scripts/tex4ht/htcontext.sh
texmf-dist/scripts/tex4ht/htcopy.pl
@@ -290062,6 +290096,7 @@ runfiles size=10615
texmf-dist/tex/generic/tex4ht/pctex32.4ht
texmf-dist/tex/generic/tex4ht/pd1enc.4ht
texmf-dist/tex/generic/tex4ht/pdfbase-hooks.4ht
+ texmf-dist/tex/generic/tex4ht/pdfx-hooks.4ht
texmf-dist/tex/generic/tex4ht/pgf.4ht
texmf-dist/tex/generic/tex4ht/picins.4ht
texmf-dist/tex/generic/tex4ht/pictex.4ht
@@ -299575,7 +299610,7 @@ docfiles size=376
name texlive-scripts
category TLCore
-revision 62065
+revision 62083
shortdesc TeX Live infrastructure programs
longdesc Includes install-tl, tl-portable, rungs, etc.; not needed for
longdesc tlmgr to run but still ours. Not included in tlcritical.
@@ -299583,10 +299618,10 @@ depend texlive-scripts.ARCH
depend texlive.infra
execute addMap mathpple.map
postaction shortcut type=menu name="TeX Live command-line" cmd=TEXDIR/tlpkg/installer/tl-cmd.bat
-containersize 108700
-containerchecksum 29ac8407efbc615d5bf43520cfc0be104c139b476290465ebd5d3711e961a752831182a2e64099069bb5adc96b9d83dcc73efdbca9580b1ea9f57c9b061108ab
-doccontainersize 403484
-doccontainerchecksum 909c86ea93f6d9bf786e3dd664bb25037e790bea046c8be8a9a070fd553461a9835dff44beefc8159a8b0d43da7c22c5779d09a8207f7bc3f4fb9a0445a7470e
+containersize 108708
+containerchecksum 6dc5c53b70ddae4590b9d84cd937a57856838eb085fa1ef95805f63cf1d5582872094b3120cae45d11a634d021cf4484f5c829c340d5e4d2b189dff3874a456a
+doccontainersize 403612
+doccontainerchecksum e2c5f30bb1061dad1581cbe16280e13afea593c3bc22e2fe332ed8fe16a9ce9b7a2b8b3855bf602a04d0803382398b658678c6d7c98ba041ee3a3eb09f428912
docfiles size=502
doc.html
texmf-dist/doc/man/man1/fmtutil-sys.1
@@ -336228,16 +336263,16 @@ catalogue-version 2.0
name xepersian
category Package
-revision 62074
+revision 62087
shortdesc Persian for LaTeX, using XeTeX
relocated 1
longdesc This package provides a convenient interface for typesetting
longdesc Persian and English texts in LaTeX, using the XeTeX engine.
-containersize 59436
-containerchecksum ca3f256e4dff246690787df8b1e084c672f65bf5ed8e49348828a0ddb8529e8870dbdeb025a736bdc4455601922ecc8139f729c21ae974b460c407d366478cba
-doccontainersize 1005544
-doccontainerchecksum 557c714377233de08e079d4d1b4e134013fb7c563cb1e8c072ca0cc5eb9a36d4a60bd6511560f1f63dd6e193618810d811e8fa893572780ef4acfabb37378ff2
-docfiles size=321
+containersize 60796
+containerchecksum e172ff9b02545226efc0989c4b0661494bcbcfaab90aa77b4add772a00a9d98313fbce39a93b6f297fe071bf63136d7904d06947b6058ac0c5205159cc9fd9b4
+doccontainersize 1018056
+doccontainerchecksum 0b63cbf8395c2f5d879fc9d6a39247a728c009c7040f82461c21fa3c7099911e50b5a2de6487ddfc33bef265e8029782e7fb6a0453b50b9c9d44a9dac62d3b24
+docfiles size=325
RELOC/doc/xelatex/xepersian/README details="Readme"
RELOC/doc/xelatex/xepersian/dkun-0.3.py
RELOC/doc/xelatex/xepersian/dkun-0.4.py
@@ -336256,9 +336291,9 @@ docfiles size=321
RELOC/doc/xelatex/xepersian/xepersian-doc.pdf details="Package user documentation"
RELOC/doc/xelatex/xepersian/xepersian-logo.tex
RELOC/doc/xelatex/xepersian/xepersian.pdf details="Package source documentation"
-srccontainersize 74708
-srccontainerchecksum b271885a52fd313f59b98c5e97b38dcef8fc39b480b5ea2c3e12e554a1aca69242bb6ede25752a79821f70411aa70b507289262c12185ba91a62663103f38af1
-srcfiles size=119
+srccontainersize 76100
+srccontainerchecksum 044afe11a366ea92f2054570f9fb23176b7180c42c2cb53b7a52b0e0daf1ba4e28dda1604906b8c6b7df5b18d25fd26f8638282826b9607e5d379af94f732fec
+srcfiles size=121
RELOC/source/xelatex/xepersian/xepersian-doc-basics.ltx
RELOC/source/xelatex/xepersian/xepersian-doc-boolean.ltx
RELOC/source/xelatex/xepersian/xepersian-doc-captions.ltx
@@ -336270,7 +336305,7 @@ srcfiles size=119
RELOC/source/xelatex/xepersian/xepersian-doc.ltx
RELOC/source/xelatex/xepersian/xepersian.dtx
RELOC/source/xelatex/xepersian/xepersian.ins
-runfiles size=115
+runfiles size=116
RELOC/fonts/misc/xetex/fontmapping/xepersian/persian-tex-text-nonumbers.map
RELOC/fonts/misc/xetex/fontmapping/xepersian/persian-tex-text-nonumbers.tec
RELOC/fonts/misc/xetex/fontmapping/xepersian/persian-tex-text.map
@@ -336344,7 +336379,7 @@ catalogue-contact-support https://github.com/tex-persian/xepersian/discussions
catalogue-ctan /macros/xetex/latex/xepersian
catalogue-license lppl1.3c
catalogue-topics persian xetex class
-catalogue-version 23.4
+catalogue-version 23.6
name xepersian-hm
category Package
diff --git a/systems/texlive/tlnet/tlpkg/texlive.tlpdb.md5 b/systems/texlive/tlnet/tlpkg/texlive.tlpdb.md5
index 6400a962c3..fd47dbe486 100644
--- a/systems/texlive/tlnet/tlpkg/texlive.tlpdb.md5
+++ b/systems/texlive/tlnet/tlpkg/texlive.tlpdb.md5
@@ -1 +1 @@
-2925cb2313ba15d91f02877efa9c6219 texlive.tlpdb
+034f985ea2451f3aa165827f04fcc002 texlive.tlpdb
diff --git a/systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512 b/systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512
index a2a01e1bff..711c41eb3b 100644
--- a/systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512
+++ b/systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512
@@ -1 +1 @@
-a0aee630a94b7f1a6e2175f47342a7c4c463b01deed8b2e3b2ce95d933ddcf319ceb50ef7335fa821fcfcda21b4f7a94d4cfd751fb182da260182dc5b55414d0 texlive.tlpdb
+8d3d3993829dfc03e673a18561a52a6f37d5939e1541d70bd5812139fc61130c6b870b7c05ea0b53b556d1bee7f962969a6041fa59af2f6cd828596f1d4c4ca4 texlive.tlpdb
diff --git a/systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512.asc b/systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512.asc
index 882ee56260..52c44132d0 100644
--- a/systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512.asc
+++ b/systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512.asc
@@ -1,10 +1,10 @@
-----BEGIN PGP SIGNATURE-----
-iQEcBAEBCgAGBQJiED/dAAoJEEzhh34ZQ4xwHPIH/ixdjQEMSXoNiBg8tu31n37w
-xo5cIGynxIOMWvhp1gjeQDt5tx/Q4YPXshl1pzulK9KVzn0Gz6bIppGhs6VVjjNP
-M03YS6nWkk7zV6mskFIcMZlBT/ZDAJll92BFtkyI/PyIKtO6UHarDlJ5nAHcroTh
-qDu8UiFBjkEDsyGeuBbgHWUqXoh6d0e36pWQzWF4WEIv2KbLmE0aUqOE7qoPXJrY
-jdh8eZtjwzxdGFVOVZ2rQuNWXICdycwQWUIMsV6Q+YYwdEh6j2HVYVQbyMJtxfCJ
-AORwXiPPbdmwswSBItyP0JnzIyFJwllfMdOP64vbcC6onTzv5g0n7so4HqMhG+0=
-=m5wG
+iQEcBAEBCgAGBQJiEZEKAAoJEEzhh34ZQ4xwNOEH/j1twl/pvZ79xzsPxpm0JxD7
+iCZzsRgyYaKV6+LxyvBsSIzQDIfAKSq6PI1adiepUDw7RrM37i/4pZb2tY0Fo24T
+ijkTKV9pSoqv9dTLqlUYyZtXx++7Ml8QVqmeJKgayy5ChwVtu7hDzwGeHsqTZS/N
+N+dBjqMXcAXMU4BIL08KoIEJGmQ1qL28zxtVzWa4bcuS2yN8xpbq7IDDd3sC4PS3
+aOgkw2+nc/KGjldKD6a038gY+MSlRnR1fN8VwAniY8W/VFEJPThkglzxU/IngguN
+cGTylJssPENkI7URVnSNM/Lg0kvbw6roJTHirMMpmfFrc3LnrPv5XgwX/GUmOUk=
+=2MvX
-----END PGP SIGNATURE-----
diff --git a/systems/texlive/tlnet/tlpkg/texlive.tlpdb.xz b/systems/texlive/tlnet/tlpkg/texlive.tlpdb.xz
index 8249ab3171..cc2da2e780 100644
--- a/systems/texlive/tlnet/tlpkg/texlive.tlpdb.xz
+++ b/systems/texlive/tlnet/tlpkg/texlive.tlpdb.xz
Binary files differ
diff --git a/systems/win32/miktex/tm/packages/next/pr.ini b/systems/win32/miktex/tm/packages/next/pr.ini
index e47b7f7070..07fbbd2c50 100644
--- a/systems/win32/miktex/tm/packages/next/pr.ini
+++ b/systems/win32/miktex/tm/packages/next/pr.ini
@@ -1,13 +1,13 @@
[repository]
-date=1645305435
+date=1645391881
lastupd=miktex-arctrl-bin-2.9 miktex-arctrl-bin-x64-2.9 miktex-asymptote-bin-2.9 miktex-asymptote-bin-x64-2.9 miktex-autosp-bin-2.9 miktex-autosp-bin-x64-2.9 miktex-axohelp-bin-2.9 miktex-axohelp-bin-x64-2.9 miktex-bibarts-bin-2.9 miktex-bibarts-bin-x64-2.9 miktex-bibtex-bin-2.9 miktex-bibtex-bin-x64-2.9 miktex-bibtex8bit-bin-2.9 miktex-bibtex8bit-bin-x64-2.9 miktex-bzip2-bin-2.9 miktex-bzip2-bin-x64-2.9 miktex-cairo-bin-2.9 miktex-cairo-bin-x64-2.9 miktex-chktex-bin-2.9 miktex-chktex-bin-x64-2.9
-lstdigest=bdbb4e6bded52973aa3b75af05fd9b01
+lstdigest=ce1666eb53f902f847d491a8541e1f9e
numpkg=5375
relstate=next
-version=8085
+version=8086
;;;;This configuration file is signed by a MiKTeX maintainer. The signature follows.
;;;;-----BEGIN MIKTEX SIGNATURE-----
-;;;; signature/miktex: urfAlhRBHV3Dr2NyPizuuQ63775LqF1Tia9yALc+AQXvVpgcac0UEX38XI7S5GinH/aMmxQDEHx2Yg2FKmnY9DZgTIkwuPtRaERe6q+Zs18LMAzCWpSEFKk0mYOzS5NmqsGHgIpmnp/lKjMpqLmKKMA395s32z2VxXgWBmq/lp4ieblf8agixzbuxEcgoKxE96nJnhCSULCuQbMILWr7AaaWWnLlDtjqgp+nAsPhlWfo7WzVUEcUmtb/aYPQWxBKk6NVAWJ0yx/gb3jYar9I1ORT1jSRVY419Qd5tZ19sktzMIjwYhqlSvkEKCy+svhYHZ5sRAPOkuoO8wK4Q8knkw==
+;;;; signature/miktex: Y/mn5l4F/NfGhHPM1kh9I3gMhrKN+JLeh2HR0vO6oLZ56f4BEeG00CbgMwh6Np9MCgk0GNXEZwS4ge5G+V7Z9+sHIZbdYVVoFIp5oRPHPFQnQJ48JdqzVG0gQLAdsQ5ASw2UIDOHJoM95U3x5wmFBq3zRMg0BxzPh/TKElJWx2lr3yZS3uhloqG4jmTswBOZFyG+hBIAF/X9/XNg2NqIHjm3c+ukjfc1IZBmS9d6w2K5v3LYS2cL1doWJLIN0RWvWWnRTyszfq97FMyOBBtMVIquUUnunPMnnCQ1etcvEx3AxVDF/lO7G2fI8q0AtIZJG9ANExGwjwkluPKN23Yk1w==
;;;;-----END MIKTEX SIGNATURE-----
diff --git a/systems/win32/miktex/tm/packages/pr.ini b/systems/win32/miktex/tm/packages/pr.ini
index 263463fc89..740dedd3b0 100644
--- a/systems/win32/miktex/tm/packages/pr.ini
+++ b/systems/win32/miktex/tm/packages/pr.ini
@@ -1,13 +1,13 @@
[repository]
-date=1645305111
-lastupd=asmeconf asmeconf__doc asmeconf__source babel babel-serbian babel-serbian__doc babel-serbian__source babel-serbianc babel-serbianc__doc babel-serbianc__source babel__doc babel__source beamer beamer__doc bidi bidi-atbegshi bidi-atbegshi__doc bidi-atbegshi__source bidi__doc bidi__source
-lstdigest=f8aceac5134f59b66e74286050772d04
+date=1645391502
+lastupd=biber-darwin-x86_64 asmeconf asmeconf__doc asmeconf__source babel babel-serbian babel-serbian__doc babel-serbian__source babel-serbianc babel-serbianc__doc babel-serbianc__source babel__doc babel__source beamer beamer__doc bidi bidi-atbegshi bidi-atbegshi__doc bidi-atbegshi__source bidi__doc
+lstdigest=f38b0977e5381da2305b04d0c8b6d8e7
numpkg=5375
relstate=stable
-version=8085
+version=8086
;;;;This configuration file is signed by a MiKTeX maintainer. The signature follows.
;;;;-----BEGIN MIKTEX SIGNATURE-----
-;;;; signature/miktex: JHbDvZ5r9zMpv8h0vRAZTGrUhkl+2I9ZqwBkY85uCAcgjytXu+JDBVRknoXeaRDfm5RpC8+R9oS7cJhKTElZJxAhj1X0uRqSbrqudpct45ykN2Ii1IcrjXPWVtJ2YbduH9W78NVY7Jxe1VegAr0MkJ8b1pQiR0pfsnl4KJFOuh54mjpzfy2WIEQg1kV9tXH5WFSMQmUmlC7aqmlUMp+Q341O8OZe2lCEIqIuqPVfjcbiRJ9K7VjC/Aj5zcL0nYYdpLYcKdEhyU4VYQpE0VcKqcBd/dKBlPXwctGHd4cMMVjGIMTe8uqFBnYsmY7M39MUAIrvOou43kjmSne13TkeHg==
+;;;; signature/miktex: mZHWbcMb1qwfzKpUYkI3AsP6/bZ9W3tXekktcuNZ2mBH31PQ2NDKys16Mq7e8/+S2yAYxOMr1v5ayw+4B3px5ckiZSBW8vqRIqiw/fX9HUJQX2zc5T0MXQLVm7jb2KmzK27pXttdJ8fZDhIAjdwZX+vnhVHA6Qm7riHtH2e2w+Suw9yCrNRa5N0nHqI+AGj+VlaV37hXl9LqtdO5j4QE7aVYw7E4tAQyXYZxchlWCqXAMIsfxk6KI+3lrCGCuey1WFamAJWtif7ciOGEQBEnLqm/RtP5QwsOmpFHZz6GkRk5zrMSRW30Ev7Bv8w6IXjrqXrZGigoBSOQT/8m6zScPQ==
;;;;-----END MIKTEX SIGNATURE-----
diff --git a/timestamp b/timestamp
index a88289419c..a1bf6e6c3c 100644
--- a/timestamp
+++ b/timestamp
@@ -2,4 +2,4 @@
# The source CTAN of this site's material:
dante.ctan.org
# The year-month-day-hour-minute of this site's material:
-2022-02-20-02-02
+2022-02-21-02-02