diff options
author | Norbert Preining <norbert@preining.info> | 2024-11-21 03:03:17 +0000 |
---|---|---|
committer | Norbert Preining <norbert@preining.info> | 2024-11-21 03:03:17 +0000 |
commit | 53b0a1d945ba8cba0311a865c58ddf8596f6b916 (patch) | |
tree | eb8bfbdea1dc03ff3418e98b1a38127ed6057fe9 | |
parent | e226de5f2c819531c084f98b2aeae85bbde395f7 (diff) |
CTAN sync 202411210303
87 files changed, 13336 insertions, 11282 deletions
diff --git a/FILES.byname b/FILES.byname index 6ecc07b7e1..2e0816fad2 100644 --- a/FILES.byname +++ b/FILES.byname @@ -2147,12 +2147,12 @@ 2024/11/18 | 1851 | biblio/citation-style-language/README.md 2024/11/18 | 12878 | biblio/citation-style-language/vancouver.csl 2024/11/18 | 4677009 | biblio/citation-style-language.zip -2024/11/19 | 1678 | biblio/ctan-bibdata/biblatex-ctan/ctan.bbx +2024/11/20 | 1678 | biblio/ctan-bibdata/biblatex-ctan/ctan.bbx 2022/10/08 | 127 | biblio/ctan-bibdata/biblatex-ctan/ctan.cbx -2024/11/19 | 2902889 | biblio/ctan-bibdata/ctan.bib -2024/11/19 | 3790528 | biblio/ctan-bibdata/ctan.pdf +2024/11/20 | 2903280 | biblio/ctan-bibdata/ctan.bib +2024/11/20 | 3790528 | biblio/ctan-bibdata/ctan.pdf 2023/01/16 | 1489 | biblio/ctan-bibdata/README -2024/11/19 | 4209194 | biblio/ctan-bibdata.zip +2024/11/20 | 4209291 | biblio/ctan-bibdata.zip 2023/02/23 | 3126 | biblio/pbibtex/pbibtex-base/cpp.awk 2023/02/23 | 1009 | biblio/pbibtex/pbibtex-base/generate.sh 2023/02/23 | 22362 | biblio/pbibtex/pbibtex-base/jabbrv.bst @@ -5514,7 +5514,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 -2024/11/19 | 134337 | FILES.last07days +2024/11/20 | 147589 | 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 @@ -206781,7 +206781,7 @@ 2019/12/30 | 7384611 | install/macros/latex/contrib/biblatex-contrib/biblatex-archaeology.tds.zip 2024/03/07 | 632494 | install/macros/latex/contrib/biblatex-contrib/biblatex-caspervector.tds.zip 2021/02/24 | 1516879 | install/macros/latex/contrib/biblatex-contrib/biblatex-chem.tds.zip -2024/11/17 | 711120 | install/macros/latex/contrib/biblatex-contrib/biblatex-ieee.tds.zip +2024/11/20 | 710232 | install/macros/latex/contrib/biblatex-contrib/biblatex-ieee.tds.zip 2022/03/21 | 316131 | install/macros/latex/contrib/biblatex-contrib/biblatex-iso690.tds.zip 2013/11/18 | 370052 | install/macros/latex/contrib/biblatex-contrib/biblatex-luh-ipw.tds.zip 2020/12/30 | 388952 | install/macros/latex/contrib/biblatex-contrib/biblatex-nature.tds.zip @@ -206946,7 +206946,7 @@ 2023/04/18 | 543445 | install/macros/latex/contrib/pagecolor.tds.zip 2024/07/31 | 4938988 | install/macros/latex/contrib/pagelayout.tds.zip 2009/09/03 | 151471 | install/macros/latex/contrib/pagenote.tds.zip -2015/12/21 | 991192 | install/macros/latex/contrib/pageslts.tds.zip +2024/11/20 | 911417 | install/macros/latex/contrib/pageslts.tds.zip 2023/04/12 | 444471 | install/macros/latex/contrib/papermas.tds.zip 2010/03/26 | 367318 | install/macros/latex/contrib/pdf14.tds.zip 2018/11/01 | 1331970 | install/macros/latex/contrib/pdfcomment.tds.zip @@ -225923,31 +225923,31 @@ 2024/02/07 | 35149 | macros/latex/contrib/beamer-contrib/themes/beamertheme-focus/LICENSE.md 2024/02/07 | 4142 | macros/latex/contrib/beamer-contrib/themes/beamertheme-focus/README.md 2024/02/07 | 265999 | macros/latex/contrib/beamer-contrib/themes/beamertheme-focus.zip -2024/11/09 | 872 | macros/latex/contrib/beamer-contrib/themes/beamertheme-gotham/ctan.ann -2024/11/09 | 108 | macros/latex/contrib/beamer-contrib/themes/beamertheme-gotham/ctan.note -2024/11/09 | 1355 | macros/latex/contrib/beamer-contrib/themes/beamertheme-gotham/gotham-blueprint.pdf -2024/11/09 | 658892 | macros/latex/contrib/beamer-contrib/themes/beamertheme-gotham/gotham-dev-impl.pdf -2024/11/09 | 470003 | macros/latex/contrib/beamer-contrib/themes/beamertheme-gotham/gotham-doc.pdf -2024/11/09 | 55026 | macros/latex/contrib/beamer-contrib/themes/beamertheme-gotham/gotham-doc.tex -2024/11/09 | 322879 | macros/latex/contrib/beamer-contrib/themes/beamertheme-gotham/gotham.dtx -2024/11/09 | 280574 | macros/latex/contrib/beamer-contrib/themes/beamertheme-gotham/gotham-example169transp.pdf -2024/11/09 | 1718 | macros/latex/contrib/beamer-contrib/themes/beamertheme-gotham/gotham-example169transp.tex -2024/11/09 | 283057 | macros/latex/contrib/beamer-contrib/themes/beamertheme-gotham/gotham-example43dark.pdf -2024/11/09 | 1740 | macros/latex/contrib/beamer-contrib/themes/beamertheme-gotham/gotham-example43dark.tex -2024/11/09 | 30419 | macros/latex/contrib/beamer-contrib/themes/beamertheme-gotham/gotham-exampleSimple.pdf -2024/11/09 | 158 | macros/latex/contrib/beamer-contrib/themes/beamertheme-gotham/gotham-exampleSimple.tex -2024/11/09 | 2898 | macros/latex/contrib/beamer-contrib/themes/beamertheme-gotham/gotham.ins -2024/11/09 | 7446 | macros/latex/contrib/beamer-contrib/themes/beamertheme-gotham/gotham-layout.pdf -2024/11/09 | 1455 | macros/latex/contrib/beamer-contrib/themes/beamertheme-gotham/gotham-logo.pdf -2024/11/09 | 1064295 | macros/latex/contrib/beamer-contrib/themes/beamertheme-gotham/gotham.pdf -2024/11/09 | 1291 | macros/latex/contrib/beamer-contrib/themes/beamertheme-gotham/gotham-safetybox.pdf -2024/11/09 | 229865 | macros/latex/contrib/beamer-contrib/themes/beamertheme-gotham/gotham-user-cmds.pdf -2024/11/09 | 7292 | macros/latex/contrib/beamer-contrib/themes/beamertheme-gotham/MANIFEST.md -2024/11/09 | 6613 | macros/latex/contrib/beamer-contrib/themes/beamertheme-gotham/README.md -2024/11/09 | 10944 | macros/latex/contrib/beamer-contrib/themes/beamertheme-gotham/section-Beamer.tex -2024/11/09 | 960 | macros/latex/contrib/beamer-contrib/themes/beamertheme-gotham/section-Conclusion.tex -2024/11/09 | 13932 | macros/latex/contrib/beamer-contrib/themes/beamertheme-gotham/section-Gotham.tex -2024/11/09 | 2966156 | macros/latex/contrib/beamer-contrib/themes/beamertheme-gotham.zip +2024/11/20 | 872 | macros/latex/contrib/beamer-contrib/themes/beamertheme-gotham/ctan.ann +2024/11/20 | 108 | macros/latex/contrib/beamer-contrib/themes/beamertheme-gotham/ctan.note +2024/11/20 | 1355 | macros/latex/contrib/beamer-contrib/themes/beamertheme-gotham/gotham-blueprint.pdf +2024/11/20 | 658850 | macros/latex/contrib/beamer-contrib/themes/beamertheme-gotham/gotham-dev-impl.pdf +2024/11/20 | 469850 | macros/latex/contrib/beamer-contrib/themes/beamertheme-gotham/gotham-doc.pdf +2024/11/20 | 55026 | macros/latex/contrib/beamer-contrib/themes/beamertheme-gotham/gotham-doc.tex +2024/11/20 | 322879 | macros/latex/contrib/beamer-contrib/themes/beamertheme-gotham/gotham.dtx +2024/11/20 | 280365 | macros/latex/contrib/beamer-contrib/themes/beamertheme-gotham/gotham-example169transp.pdf +2024/11/20 | 1718 | macros/latex/contrib/beamer-contrib/themes/beamertheme-gotham/gotham-example169transp.tex +2024/11/20 | 282835 | macros/latex/contrib/beamer-contrib/themes/beamertheme-gotham/gotham-example43dark.pdf +2024/11/20 | 1740 | macros/latex/contrib/beamer-contrib/themes/beamertheme-gotham/gotham-example43dark.tex +2024/11/20 | 30223 | macros/latex/contrib/beamer-contrib/themes/beamertheme-gotham/gotham-exampleSimple.pdf +2024/11/20 | 158 | macros/latex/contrib/beamer-contrib/themes/beamertheme-gotham/gotham-exampleSimple.tex +2024/11/20 | 2898 | macros/latex/contrib/beamer-contrib/themes/beamertheme-gotham/gotham.ins +2024/11/20 | 7446 | macros/latex/contrib/beamer-contrib/themes/beamertheme-gotham/gotham-layout.pdf +2024/11/20 | 1455 | macros/latex/contrib/beamer-contrib/themes/beamertheme-gotham/gotham-logo.pdf +2024/11/20 | 1064261 | macros/latex/contrib/beamer-contrib/themes/beamertheme-gotham/gotham.pdf +2024/11/20 | 1291 | macros/latex/contrib/beamer-contrib/themes/beamertheme-gotham/gotham-safetybox.pdf +2024/11/20 | 229879 | macros/latex/contrib/beamer-contrib/themes/beamertheme-gotham/gotham-user-cmds.pdf +2024/11/20 | 7292 | macros/latex/contrib/beamer-contrib/themes/beamertheme-gotham/MANIFEST.md +2024/11/20 | 6613 | macros/latex/contrib/beamer-contrib/themes/beamertheme-gotham/README.md +2024/11/20 | 10944 | macros/latex/contrib/beamer-contrib/themes/beamertheme-gotham/section-Beamer.tex +2024/11/20 | 960 | macros/latex/contrib/beamer-contrib/themes/beamertheme-gotham/section-Conclusion.tex +2024/11/20 | 13932 | macros/latex/contrib/beamer-contrib/themes/beamertheme-gotham/section-Gotham.tex +2024/11/20 | 2965418 | macros/latex/contrib/beamer-contrib/themes/beamertheme-gotham.zip 2007/02/01 | 3862 | macros/latex/contrib/beamer-contrib/themes/beamerthemeJLTree.sty 2021/04/05 | 1633 | macros/latex/contrib/beamer-contrib/themes/beamerthemelalic/beamercolorthemelalic.sty 2021/04/05 | 108 | macros/latex/contrib/beamer-contrib/themes/beamerthemelalic/beamerfontthemelalic.sty @@ -227280,19 +227280,19 @@ 2010/08/22 | 825665 | macros/latex/contrib/biblatex-contrib/biblatex-historian/historian.pdf 2010/08/22 | 2076 | macros/latex/contrib/biblatex-contrib/biblatex-historian/README.txt 2012/09/27 | 639121 | macros/latex/contrib/biblatex-contrib/biblatex-historian.zip -2024/11/17 | 304596 | macros/latex/contrib/biblatex-contrib/biblatex-ieee/biblatex-ieee-alphabetic.pdf -2024/11/17 | 2754 | macros/latex/contrib/biblatex-contrib/biblatex-ieee/biblatex-ieee-alphabetic.tex -2024/11/17 | 14508 | macros/latex/contrib/biblatex-contrib/biblatex-ieee/biblatex-ieee.bib -2024/11/17 | 402718 | macros/latex/contrib/biblatex-contrib/biblatex-ieee/biblatex-ieee.pdf -2024/11/17 | 8381 | macros/latex/contrib/biblatex-contrib/biblatex-ieee/biblatex-ieee.tex -2024/11/17 | 2782 | macros/latex/contrib/biblatex-contrib/biblatex-ieee/ieee-alphabetic.bbx -2024/11/17 | 2277 | macros/latex/contrib/biblatex-contrib/biblatex-ieee/ieee-alphabetic.cbx -2024/11/17 | 20319 | macros/latex/contrib/biblatex-contrib/biblatex-ieee/ieee.bbx -2024/11/17 | 2468 | macros/latex/contrib/biblatex-contrib/biblatex-ieee/ieee.cbx -2024/11/17 | 4712 | macros/latex/contrib/biblatex-contrib/biblatex-ieee/ieee-comp.cbx -2024/11/17 | 2284 | macros/latex/contrib/biblatex-contrib/biblatex-ieee/magyar-ieee.lbx -2024/11/17 | 637 | macros/latex/contrib/biblatex-contrib/biblatex-ieee/README.md -2024/11/17 | 710430 | macros/latex/contrib/biblatex-contrib/biblatex-ieee.zip +2024/11/20 | 304286 | macros/latex/contrib/biblatex-contrib/biblatex-ieee/biblatex-ieee-alphabetic.pdf +2024/11/20 | 2754 | macros/latex/contrib/biblatex-contrib/biblatex-ieee/biblatex-ieee-alphabetic.tex +2024/11/20 | 14508 | macros/latex/contrib/biblatex-contrib/biblatex-ieee/biblatex-ieee.bib +2024/11/20 | 402406 | macros/latex/contrib/biblatex-contrib/biblatex-ieee/biblatex-ieee.pdf +2024/11/20 | 8381 | macros/latex/contrib/biblatex-contrib/biblatex-ieee/biblatex-ieee.tex +2024/11/20 | 2782 | macros/latex/contrib/biblatex-contrib/biblatex-ieee/ieee-alphabetic.bbx +2024/11/20 | 2277 | macros/latex/contrib/biblatex-contrib/biblatex-ieee/ieee-alphabetic.cbx +2024/11/20 | 20319 | macros/latex/contrib/biblatex-contrib/biblatex-ieee/ieee.bbx +2024/11/20 | 1651 | macros/latex/contrib/biblatex-contrib/biblatex-ieee/ieee.cbx +2024/11/20 | 4712 | macros/latex/contrib/biblatex-contrib/biblatex-ieee/ieee-comp.cbx +2024/11/20 | 2284 | macros/latex/contrib/biblatex-contrib/biblatex-ieee/magyar-ieee.lbx +2024/11/20 | 637 | macros/latex/contrib/biblatex-contrib/biblatex-ieee/README.md +2024/11/20 | 709545 | macros/latex/contrib/biblatex-contrib/biblatex-ieee.zip 2016/07/05 | 50846 | macros/latex/contrib/biblatex-contrib/biblatex-ijsra/biblatex-ijsra.pdf 2016/07/04 | 5819 | macros/latex/contrib/biblatex-contrib/biblatex-ijsra/biblatex-ijsra.tex 2016/07/04 | 2464 | macros/latex/contrib/biblatex-contrib/biblatex-ijsra/ijsra.bbx @@ -230319,11 +230319,11 @@ 2010/03/30 | 977 | macros/latex/contrib/codedoc/README 2010/03/30 | 418487 | macros/latex/contrib/codedoc.zip 2021/05/12 | 4186 | macros/latex/contrib/codehigh/codehigh.lua -2023/02/11 | 125913 | macros/latex/contrib/codehigh/codehigh.pdf -2023/02/11 | 22800 | macros/latex/contrib/codehigh/codehigh.sty -2023/02/11 | 7966 | macros/latex/contrib/codehigh/codehigh.tex +2024/11/20 | 125299 | macros/latex/contrib/codehigh/codehigh.pdf +2024/11/20 | 22364 | macros/latex/contrib/codehigh/codehigh.sty +2024/11/20 | 7966 | macros/latex/contrib/codehigh/codehigh.tex 2021/05/11 | 186 | macros/latex/contrib/codehigh/README.txt -2023/02/11 | 107282 | macros/latex/contrib/codehigh.zip +2024/11/20 | 106559 | macros/latex/contrib/codehigh.zip 1995/01/02 | 2383 | macros/latex/contrib/codepage/codepage.drv 1995/01/02 | 131252 | macros/latex/contrib/codepage/codepage.dtx 1995/01/02 | 953 | macros/latex/contrib/codepage/codepage.ins @@ -232728,12 +232728,12 @@ 2008/02/10 | 19110 | macros/latex/contrib/ean13isbn/License.txt 2021/01/24 | 422 | macros/latex/contrib/ean13isbn/README 2021/01/24 | 322624 | macros/latex/contrib/ean13isbn.zip -2024/11/18 | 94987 | macros/latex/contrib/easybook/easybook.dtx +2024/11/20 | 95029 | macros/latex/contrib/easybook/easybook.dtx 2024/11/16 | 2081 | macros/latex/contrib/easybook/easybook.ins -2024/11/18 | 651969 | macros/latex/contrib/easybook/easybook.pdf -2024/11/18 | 113963 | macros/latex/contrib/easybook/easybook.tex -2024/11/18 | 913 | macros/latex/contrib/easybook/README.md -2024/11/18 | 706686 | macros/latex/contrib/easybook.zip +2024/11/20 | 651967 | macros/latex/contrib/easybook/easybook.pdf +2024/11/20 | 113960 | macros/latex/contrib/easybook/easybook.tex +2024/11/20 | 913 | macros/latex/contrib/easybook/README.md +2024/11/20 | 706723 | macros/latex/contrib/easybook.zip 2009/06/17 | 82589 | macros/latex/contrib/easy/doc/docbib.pdf 2009/06/17 | 78378 | macros/latex/contrib/easy/doc/docbmat.pdf 2009/06/17 | 99132 | macros/latex/contrib/easy/doc/doceqn.pdf @@ -234624,11 +234624,11 @@ 2018/01/22 | 11599 | macros/latex/contrib/fancyhandout/fancyhandout-doc.tex 2018/01/22 | 1095 | macros/latex/contrib/fancyhandout/README.md 2018/01/22 | 74486 | macros/latex/contrib/fancyhandout.zip -2024/07/23 | 205499 | macros/latex/contrib/fancyhdr/fancyhdr.dtx -2024/07/22 | 2205 | macros/latex/contrib/fancyhdr/fancyhdr.ins -2024/07/23 | 880898 | macros/latex/contrib/fancyhdr/fancyhdr.pdf -2024/07/23 | 2021 | macros/latex/contrib/fancyhdr/README -2024/07/23 | 908665 | macros/latex/contrib/fancyhdr.zip +2024/11/20 | 206778 | macros/latex/contrib/fancyhdr/fancyhdr.dtx +2024/11/15 | 2205 | macros/latex/contrib/fancyhdr/fancyhdr.ins +2024/11/20 | 885095 | macros/latex/contrib/fancyhdr/fancyhdr.pdf +2024/11/20 | 2409 | macros/latex/contrib/fancyhdr/README +2024/11/20 | 913316 | macros/latex/contrib/fancyhdr.zip 2018/01/20 | 61719 | macros/latex/contrib/fancylabel/fancylabel.dtx 2018/01/20 | 1785 | macros/latex/contrib/fancylabel/fancylabel.ins 2017/12/30 | 230161 | macros/latex/contrib/fancylabel/fancylabel.pdf @@ -244956,11 +244956,11 @@ 2023/08/22 | 1183 | macros/latex/contrib/numerica-plus/README.txt 2023/08/22 | 620896 | macros/latex/contrib/numerica-plus.zip 2023/08/22 | 1200 | macros/latex/contrib/numerica/README.txt -2023/09/06 | 780793 | macros/latex/contrib/numerica-tables/numerica-tables.pdf -2023/08/30 | 49609 | macros/latex/contrib/numerica-tables/numerica-tables.sty -2023/09/06 | 124712 | macros/latex/contrib/numerica-tables/numerica-tables.tex -2023/09/06 | 1035 | macros/latex/contrib/numerica-tables/README.txt -2023/09/06 | 685210 | macros/latex/contrib/numerica-tables.zip +2024/11/20 | 860444 | macros/latex/contrib/numerica-tables/numerica-tables.pdf +2024/11/19 | 62469 | macros/latex/contrib/numerica-tables/numerica-tables.sty +2024/11/20 | 157011 | macros/latex/contrib/numerica-tables/numerica-tables.tex +2024/11/20 | 1103 | macros/latex/contrib/numerica-tables/README.txt +2024/11/20 | 745088 | macros/latex/contrib/numerica-tables.zip 2023/08/22 | 1184724 | macros/latex/contrib/numerica.zip 2010/05/02 | 113649 | macros/latex/contrib/numname/numname.pdf 2007/07/05 | 16487 | macros/latex/contrib/numname/numname.sty @@ -245557,11 +245557,11 @@ 2020/08/12 | 332616 | macros/latex/contrib/pagesel/pagesel.pdf 2020/08/12 | 317 | macros/latex/contrib/pagesel/README.md 2020/08/13 | 336114 | macros/latex/contrib/pagesel.zip -2015/12/21 | 214506 | macros/latex/contrib/pageslts/pageslts.dtx -2015/12/21 | 323567 | macros/latex/contrib/pageslts/pageslts-example.pdf -2015/12/21 | 619343 | macros/latex/contrib/pageslts/pageslts.pdf -2015/12/21 | 8068 | macros/latex/contrib/pageslts/README -2015/12/21 | 970552 | macros/latex/contrib/pageslts.zip +2024/11/20 | 184075 | macros/latex/contrib/pageslts/pageslts.dtx +2024/11/20 | 305189 | macros/latex/contrib/pageslts/pageslts-example.pdf +2024/11/20 | 576094 | macros/latex/contrib/pageslts/pageslts.pdf +2024/11/20 | 7697 | macros/latex/contrib/pageslts/README +2024/11/20 | 893285 | macros/latex/contrib/pageslts.zip 2021/07/30 | 15183 | macros/latex/contrib/palette/palette.dtx 2021/07/30 | 182340 | macros/latex/contrib/palette/palette.pdf 2021/07/30 | 632 | macros/latex/contrib/palette/README.md @@ -253791,7 +253791,7 @@ 2024/11/19 | 48184 | macros/latex/contrib/tagpdf/tagpdf-backend.dtx 2024/11/19 | 2643 | macros/latex/contrib/tagpdf/tagpdf.bib 2024/11/19 | 36621 | macros/latex/contrib/tagpdf/tagpdf-checks.dtx -2024/11/19 | 1333299 | macros/latex/contrib/tagpdf/tagpdf-code.pdf +2024/11/19 | 1333160 | macros/latex/contrib/tagpdf/tagpdf-code.pdf 2024/11/19 | 2461 | macros/latex/contrib/tagpdf/tagpdf-code.tex 2024/11/19 | 36941 | macros/latex/contrib/tagpdf/tagpdf-data.dtx 2024/11/19 | 227 | macros/latex/contrib/tagpdf/tagpdf-docelements.tex @@ -253801,15 +253801,15 @@ 2024/11/19 | 28897 | macros/latex/contrib/tagpdf/tagpdf-mc-generic.dtx 2024/11/19 | 16571 | macros/latex/contrib/tagpdf/tagpdf-mc-luacode.dtx 2024/11/19 | 17162 | macros/latex/contrib/tagpdf/tagpdf-mc-shared.dtx -2024/11/19 | 1135897 | macros/latex/contrib/tagpdf/tagpdf.pdf +2024/11/19 | 1135923 | macros/latex/contrib/tagpdf/tagpdf.pdf 2024/11/19 | 46014 | macros/latex/contrib/tagpdf/tagpdf-roles.dtx 2024/11/19 | 4421 | macros/latex/contrib/tagpdf/tagpdfsetup-keys.tex 2024/11/19 | 7309 | macros/latex/contrib/tagpdf/tagpdf-space.dtx 2024/11/19 | 79413 | macros/latex/contrib/tagpdf/tagpdf-struct.dtx 2024/11/19 | 132670 | macros/latex/contrib/tagpdf/tagpdf.tex 2024/11/19 | 20783 | macros/latex/contrib/tagpdf/tagpdf-tree.dtx -2024/11/19 | 47044 | macros/latex/contrib/tagpdf/tagpdf-user.dtx -2024/11/19 | 2132293 | macros/latex/contrib/tagpdf.zip +2024/11/19 | 47059 | macros/latex/contrib/tagpdf/tagpdf-user.dtx +2024/11/20 | 2132345 | macros/latex/contrib/tagpdf.zip 2007/08/04 | 1263 | macros/latex/contrib/talk/example.tex 2007/08/04 | 465 | macros/latex/contrib/talk/Makefile 2007/08/04 | 2162 | macros/latex/contrib/talk/README @@ -271366,43 +271366,44 @@ 2022/04/17 | 607025 | macros/xetex/latex/hanzibox/hanzibox.pdf 2022/04/17 | 5515 | macros/xetex/latex/hanzibox/README.md 2022/04/17 | 616210 | macros/xetex/latex/hanzibox.zip -2024/11/16 | 641681 | macros/xetex/latex/hduthesis/doc/hduthesis.pdf -2024/11/16 | 11158 | macros/xetex/latex/hduthesis/doc/hduthesis.tex -2024/11/16 | 3509 | macros/xetex/latex/hduthesis/examples/cha/abstract.tex -2024/11/16 | 2125 | macros/xetex/latex/hduthesis/examples/cha/cha1.tex -2024/11/16 | 4666 | macros/xetex/latex/hduthesis/examples/cha/cha2.tex -2024/11/16 | 4828 | macros/xetex/latex/hduthesis/examples/cha/cha3.tex -2024/11/16 | 15107 | macros/xetex/latex/hduthesis/examples/cha/cha4.tex -2024/11/16 | 5429 | macros/xetex/latex/hduthesis/examples/cha/cha5.tex -2024/11/16 | 2697 | macros/xetex/latex/hduthesis/examples/cha/cha6.tex -2024/11/16 | 1616 | macros/xetex/latex/hduthesis/examples/cha/cha7.tex -2024/11/16 | 653 | macros/xetex/latex/hduthesis/examples/cha/thanks.tex -2024/11/16 | 18951 | macros/xetex/latex/hduthesis/examples/figures/image-0145.png -2024/11/16 | 14808 | macros/xetex/latex/hduthesis/examples/figures/image-0162.png -2024/11/16 | 6806 | macros/xetex/latex/hduthesis/examples/figures/image-0163.png -2024/11/16 | 4712 | macros/xetex/latex/hduthesis/examples/figures/image-0236.png -2024/11/16 | 6290 | macros/xetex/latex/hduthesis/examples/figures/image-0284.png -2024/11/16 | 11282 | macros/xetex/latex/hduthesis/examples/figures/image-0285.png -2024/11/16 | 17271 | macros/xetex/latex/hduthesis/examples/figures/image-0289.png -2024/11/16 | 13508 | macros/xetex/latex/hduthesis/examples/figures/image-0419.png -2024/11/16 | 9503 | macros/xetex/latex/hduthesis/examples/figures/image-0439.png -2024/11/16 | 13350 | macros/xetex/latex/hduthesis/examples/figures/image-0440.png -2024/11/16 | 464981 | macros/xetex/latex/hduthesis/examples/hduthesis-bc.pdf -2024/11/16 | 912 | macros/xetex/latex/hduthesis/examples/hduthesis-bc.tex -2024/11/16 | 147516 | macros/xetex/latex/hduthesis/examples/hduthesis-pg.pdf -2024/11/16 | 6151 | macros/xetex/latex/hduthesis/examples/hduthesis-pg.tex -2024/11/16 | 2283 | macros/xetex/latex/hduthesis/examples/reference.bib -2024/11/16 | 19101 | macros/xetex/latex/hduthesis/License -2024/11/16 | 553 | macros/xetex/latex/hduthesis/README.md -2024/11/16 | 22109 | macros/xetex/latex/hduthesis/tex/hdubadge.pdf -2024/11/16 | 29096 | macros/xetex/latex/hduthesis/tex/hdulogo.pdf -2024/11/16 | 21089 | macros/xetex/latex/hduthesis/tex/hdumotto.pdf -2024/11/16 | 5961 | macros/xetex/latex/hduthesis/tex/hduthesis-bc.layout-module.code.tex -2024/11/16 | 7808 | macros/xetex/latex/hduthesis/tex/hduthesis.cls -2024/11/16 | 907 | macros/xetex/latex/hduthesis/tex/hduthesis-font-module.code.tex -2024/11/16 | 7825 | macros/xetex/latex/hduthesis/tex/hduthesis-pg.layout-module.code.tex -2024/11/16 | 2024 | macros/xetex/latex/hduthesis/tex/hduthesis-unv.layout-module.code.tex -2024/11/16 | 1439470 | macros/xetex/latex/hduthesis.zip +2024/11/19 | 642274 | macros/xetex/latex/hduthesis/doc/hduthesis.pdf +2024/11/19 | 9561 | macros/xetex/latex/hduthesis/doc/hduthesis.tex +2024/11/19 | 3509 | macros/xetex/latex/hduthesis/examples/cha/abstract.tex +2024/11/19 | 2125 | macros/xetex/latex/hduthesis/examples/cha/cha1.tex +2024/11/19 | 4666 | macros/xetex/latex/hduthesis/examples/cha/cha2.tex +2024/11/19 | 4828 | macros/xetex/latex/hduthesis/examples/cha/cha3.tex +2024/11/19 | 15108 | macros/xetex/latex/hduthesis/examples/cha/cha4.tex +2024/11/19 | 5408 | macros/xetex/latex/hduthesis/examples/cha/cha5.tex +2024/11/19 | 2697 | macros/xetex/latex/hduthesis/examples/cha/cha6.tex +2024/11/19 | 1616 | macros/xetex/latex/hduthesis/examples/cha/cha7.tex +2024/11/19 | 653 | macros/xetex/latex/hduthesis/examples/cha/thanks.tex +2024/11/19 | 18951 | macros/xetex/latex/hduthesis/examples/figures/image-0145.png +2024/11/19 | 14808 | macros/xetex/latex/hduthesis/examples/figures/image-0162.png +2024/11/19 | 6806 | macros/xetex/latex/hduthesis/examples/figures/image-0163.png +2024/11/19 | 4712 | macros/xetex/latex/hduthesis/examples/figures/image-0236.png +2024/11/19 | 6290 | macros/xetex/latex/hduthesis/examples/figures/image-0284.png +2024/11/19 | 11282 | macros/xetex/latex/hduthesis/examples/figures/image-0285.png +2024/11/19 | 17271 | macros/xetex/latex/hduthesis/examples/figures/image-0289.png +2024/11/19 | 13508 | macros/xetex/latex/hduthesis/examples/figures/image-0419.png +2024/11/19 | 9503 | macros/xetex/latex/hduthesis/examples/figures/image-0439.png +2024/11/19 | 13350 | macros/xetex/latex/hduthesis/examples/figures/image-0440.png +2024/11/19 | 464474 | macros/xetex/latex/hduthesis/examples/hduthesis-bc.pdf +2024/11/19 | 942 | macros/xetex/latex/hduthesis/examples/hduthesis-bc.tex +2024/11/19 | 147864 | macros/xetex/latex/hduthesis/examples/hduthesis-pg.pdf +2024/11/19 | 6183 | macros/xetex/latex/hduthesis/examples/hduthesis-pg.tex +2024/11/19 | 2283 | macros/xetex/latex/hduthesis/examples/reference.bib +2024/11/19 | 19101 | macros/xetex/latex/hduthesis/License +2024/11/19 | 553 | macros/xetex/latex/hduthesis/README.md +2024/11/19 | 22109 | macros/xetex/latex/hduthesis/tex/hdubadge.pdf +2024/11/19 | 29096 | macros/xetex/latex/hduthesis/tex/hdulogo.pdf +2024/11/19 | 21089 | macros/xetex/latex/hduthesis/tex/hdumotto.pdf +2024/11/19 | 5477 | macros/xetex/latex/hduthesis/tex/hduthesis-bc.layout-module.code.tex +2024/11/19 | 7410 | macros/xetex/latex/hduthesis/tex/hduthesis.cls +2024/11/19 | 4415 | macros/xetex/latex/hduthesis/tex/hduthesisdoc.cls +2024/11/19 | 1372 | macros/xetex/latex/hduthesis/tex/hduthesis-font-module.code.tex +2024/11/19 | 8135 | macros/xetex/latex/hduthesis/tex/hduthesis-pg.layout-module.code.tex +2024/11/19 | 1948 | macros/xetex/latex/hduthesis/tex/hduthesis-unv.layout-module.code.tex +2024/11/20 | 1441424 | macros/xetex/latex/hduthesis.zip 2022/07/29 | 4885 | macros/xetex/latex/hfutthesis/hfut-bib/hfut.bib 2022/07/29 | 1810 | macros/xetex/latex/hfutthesis/hfut-chapters/abstract.tex 2022/07/29 | 560 | macros/xetex/latex/hfutthesis/hfut-chapters/acknowledgements.tex @@ -307203,6 +307204,9 @@ 2019/02/28 | 288 | systems/texlive/tlnet/archive/amsthdoc-it.r45662.tar.xz 2022/09/29 | 469112 | systems/texlive/tlnet/archive/andika.doc.r64540.tar.xz 2022/09/29 | 2853924 | systems/texlive/tlnet/archive/andika.r64540.tar.xz +2024/11/20 | 429988 | systems/texlive/tlnet/archive/anima.doc.r72895.tar.xz +2024/11/20 | 3080 | systems/texlive/tlnet/archive/anima.r72895.tar.xz +2024/11/20 | 8784 | systems/texlive/tlnet/archive/anima.source.r72895.tar.xz 2024/10/15 | 3166808 | systems/texlive/tlnet/archive/animate.doc.r72548.tar.xz 2024/10/15 | 23936 | systems/texlive/tlnet/archive/animate.r72548.tar.xz 2024/10/15 | 31088 | systems/texlive/tlnet/archive/animate.source.r72548.tar.xz @@ -308550,8 +308554,8 @@ 2020/09/26 | 3400 | systems/texlive/tlnet/archive/bxcalc.r56431.tar.xz 2023/07/23 | 1189172 | systems/texlive/tlnet/archive/bxcjkjatype.doc.r67705.tar.xz 2023/07/23 | 8556 | systems/texlive/tlnet/archive/bxcjkjatype.r67705.tar.xz -2024/11/12 | 2697012 | systems/texlive/tlnet/archive/bxcoloremoji.doc.r72817.tar.xz -2024/11/12 | 33664 | systems/texlive/tlnet/archive/bxcoloremoji.r72817.tar.xz +2024/11/20 | 2697308 | systems/texlive/tlnet/archive/bxcoloremoji.doc.r72896.tar.xz +2024/11/20 | 33688 | systems/texlive/tlnet/archive/bxcoloremoji.r72896.tar.xz 2019/02/28 | 1960 | systems/texlive/tlnet/archive/bxdpx-beamer.doc.r41813.tar.xz 2019/02/28 | 1380 | systems/texlive/tlnet/archive/bxdpx-beamer.r41813.tar.xz 2019/02/28 | 2232 | systems/texlive/tlnet/archive/bxdvidriver.doc.r43219.tar.xz @@ -309260,7 +309264,7 @@ 2020/03/04 | 408 | systems/texlive/tlnet/archive/collection-langpolish.r54074.tar.xz 2023/05/16 | 400 | systems/texlive/tlnet/archive/collection-langportuguese.r67125.tar.xz 2024/09/06 | 404 | systems/texlive/tlnet/archive/collection-langspanish.r72203.tar.xz -2024/11/18 | 7328 | systems/texlive/tlnet/archive/collection-latexextra.r72875.tar.xz +2024/11/20 | 7332 | systems/texlive/tlnet/archive/collection-latexextra.r72895.tar.xz 2024/07/28 | 708 | systems/texlive/tlnet/archive/collection-latex.r71912.tar.xz 2024/06/15 | 740 | systems/texlive/tlnet/archive/collection-latexrecommended.r71527.tar.xz 2024/08/17 | 1052 | systems/texlive/tlnet/archive/collection-luatex.r72049.tar.xz @@ -310666,9 +310670,9 @@ 2021/07/19 | 313228 | systems/texlive/tlnet/archive/easing.doc.r59975.tar.xz 2021/07/19 | 2220 | systems/texlive/tlnet/archive/easing.r59975.tar.xz 2021/07/19 | 7876 | systems/texlive/tlnet/archive/easing.source.r59975.tar.xz -2024/11/18 | 677896 | systems/texlive/tlnet/archive/easybook.doc.r72874.tar.xz -2024/11/18 | 20284 | systems/texlive/tlnet/archive/easybook.r72874.tar.xz -2024/11/18 | 20168 | systems/texlive/tlnet/archive/easybook.source.r72874.tar.xz +2024/11/20 | 682124 | systems/texlive/tlnet/archive/easybook.doc.r72897.tar.xz +2024/11/20 | 20296 | systems/texlive/tlnet/archive/easybook.r72897.tar.xz +2024/11/20 | 20156 | systems/texlive/tlnet/archive/easybook.source.r72897.tar.xz 2019/02/28 | 4540 | systems/texlive/tlnet/archive/easy.doc.r19440.tar.xz 2023/10/12 | 344 | systems/texlive/tlnet/archive/easydtx.aarch64-linux.r68514.tar.xz 2023/10/12 | 344 | systems/texlive/tlnet/archive/easydtx.amd64-freebsd.r68514.tar.xz @@ -313160,8 +313164,8 @@ 2022/12/17 | 3024 | systems/texlive/tlnet/archive/jourcl.r65290.tar.xz 2023/10/16 | 103692 | systems/texlive/tlnet/archive/jourrr.doc.r68556.tar.xz 2023/10/16 | 2820 | systems/texlive/tlnet/archive/jourrr.r68556.tar.xz -2022/07/15 | 160748 | systems/texlive/tlnet/archive/jpneduenumerate.doc.r63893.tar.xz -2022/07/15 | 2720 | systems/texlive/tlnet/archive/jpneduenumerate.r63893.tar.xz +2024/11/20 | 162368 | systems/texlive/tlnet/archive/jpneduenumerate.doc.r72898.tar.xz +2024/11/20 | 2768 | systems/texlive/tlnet/archive/jpneduenumerate.r72898.tar.xz 2022/07/11 | 327416 | systems/texlive/tlnet/archive/jpnedumathsymbols.doc.r63864.tar.xz 2022/07/11 | 4512 | systems/texlive/tlnet/archive/jpnedumathsymbols.r63864.tar.xz 2023/02/24 | 150364 | systems/texlive/tlnet/archive/jpsj.doc.r66115.tar.xz @@ -315670,9 +315674,9 @@ 2019/02/28 | 7064 | systems/texlive/tlnet/archive/niceframe.source.r36086.tar.xz 2024/07/20 | 516 | systems/texlive/tlnet/archive/niceframe-type1.doc.r71849.tar.xz 2024/07/20 | 275504 | systems/texlive/tlnet/archive/niceframe-type1.r71849.tar.xz -2024/11/14 | 2159472 | systems/texlive/tlnet/archive/nicematrix.doc.r72844.tar.xz -2024/11/14 | 42504 | systems/texlive/tlnet/archive/nicematrix.r72844.tar.xz -2024/11/14 | 92504 | systems/texlive/tlnet/archive/nicematrix.source.r72844.tar.xz +2024/11/20 | 2163868 | systems/texlive/tlnet/archive/nicematrix.doc.r72899.tar.xz +2024/11/20 | 42532 | systems/texlive/tlnet/archive/nicematrix.r72899.tar.xz +2024/11/20 | 92636 | systems/texlive/tlnet/archive/nicematrix.source.r72899.tar.xz 2019/02/28 | 2473836 | systems/texlive/tlnet/archive/nicetext.doc.r38914.tar.xz 2019/02/28 | 54740 | systems/texlive/tlnet/archive/nicetext.r38914.tar.xz 2019/02/28 | 28908 | systems/texlive/tlnet/archive/nicetext.source.r38914.tar.xz @@ -315683,8 +315687,8 @@ 2020/03/09 | 2404 | systems/texlive/tlnet/archive/nihbiosketch.r54191.tar.xz 2019/02/28 | 32224 | systems/texlive/tlnet/archive/nih.doc.r15878.tar.xz 2019/02/28 | 2728 | systems/texlive/tlnet/archive/nih.r15878.tar.xz -2021/04/12 | 725056 | systems/texlive/tlnet/archive/nimbus15.doc.r58839.tar.xz -2021/04/12 | 3815932 | systems/texlive/tlnet/archive/nimbus15.r58839.tar.xz +2024/11/20 | 725092 | systems/texlive/tlnet/archive/nimbus15.doc.r72894.tar.xz +2024/11/20 | 3816244 | systems/texlive/tlnet/archive/nimbus15.r72894.tar.xz 2022/08/15 | 213532 | systems/texlive/tlnet/archive/nimsticks.doc.r64118.tar.xz 2022/08/15 | 2140 | systems/texlive/tlnet/archive/nimsticks.r64118.tar.xz 2022/08/15 | 5548 | systems/texlive/tlnet/archive/nimsticks.source.r64118.tar.xz @@ -318245,9 +318249,9 @@ 2021/06/26 | 250232 | systems/texlive/tlnet/archive/siunits.doc.r59702.tar.xz 2021/06/26 | 6040 | systems/texlive/tlnet/archive/siunits.r59702.tar.xz 2021/06/26 | 34532 | systems/texlive/tlnet/archive/siunits.source.r59702.tar.xz -2024/11/16 | 1286888 | systems/texlive/tlnet/archive/siunitx.doc.r72859.tar.xz -2024/11/16 | 68184 | systems/texlive/tlnet/archive/siunitx.r72859.tar.xz -2024/11/16 | 123980 | systems/texlive/tlnet/archive/siunitx.source.r72859.tar.xz +2024/11/20 | 1286620 | systems/texlive/tlnet/archive/siunitx.doc.r72900.tar.xz +2024/11/20 | 68188 | systems/texlive/tlnet/archive/siunitx.r72900.tar.xz +2024/11/20 | 123996 | systems/texlive/tlnet/archive/siunitx.source.r72900.tar.xz 2024/11/12 | 712944 | systems/texlive/tlnet/archive/sjtutex.doc.r72826.tar.xz 2024/11/12 | 154612 | systems/texlive/tlnet/archive/sjtutex.r72826.tar.xz 2024/11/12 | 40044 | systems/texlive/tlnet/archive/sjtutex.source.r72826.tar.xz @@ -318824,9 +318828,9 @@ 2019/09/11 | 1292 | systems/texlive/tlnet/archive/tagging.r52064.tar.xz 2019/02/28 | 68912 | systems/texlive/tlnet/archive/tagpair.doc.r42138.tar.xz 2019/02/28 | 1244 | systems/texlive/tlnet/archive/tagpair.r42138.tar.xz -2024/10/29 | 1834692 | systems/texlive/tlnet/archive/tagpdf.doc.r72690.tar.xz -2024/10/29 | 39348 | systems/texlive/tlnet/archive/tagpdf.r72690.tar.xz -2024/10/29 | 73960 | systems/texlive/tlnet/archive/tagpdf.source.r72690.tar.xz +2024/11/20 | 1852944 | systems/texlive/tlnet/archive/tagpdf.doc.r72901.tar.xz +2024/11/20 | 39364 | systems/texlive/tlnet/archive/tagpdf.r72901.tar.xz +2024/11/20 | 74224 | systems/texlive/tlnet/archive/tagpdf.source.r72901.tar.xz 2019/02/28 | 131060 | systems/texlive/tlnet/archive/talk.doc.r42428.tar.xz 2019/02/28 | 4676 | systems/texlive/tlnet/archive/talk.r42428.tar.xz 2019/02/28 | 556 | systems/texlive/tlnet/archive/talk.source.r42428.tar.xz @@ -319228,7 +319232,7 @@ 2022/09/13 | 600 | systems/texlive/tlnet/archive/texlive-scripts.amd64-freebsd.r64356.tar.xz 2022/09/13 | 596 | systems/texlive/tlnet/archive/texlive-scripts.amd64-netbsd.r64356.tar.xz 2022/09/13 | 596 | systems/texlive/tlnet/archive/texlive-scripts.armhf-linux.r64356.tar.xz -2024/11/19 | 440100 | systems/texlive/tlnet/archive/texlive-scripts.doc.r72892.tar.xz +2024/11/20 | 440100 | systems/texlive/tlnet/archive/texlive-scripts.doc.r72904.tar.xz 2024/07/09 | 908 | systems/texlive/tlnet/archive/texlive-scripts-extra.aarch64-linux.r71749.tar.xz 2024/07/09 | 920 | systems/texlive/tlnet/archive/texlive-scripts-extra.amd64-freebsd.r71749.tar.xz 2024/07/09 | 908 | systems/texlive/tlnet/archive/texlive-scripts-extra.amd64-netbsd.r71749.tar.xz @@ -319250,7 +319254,7 @@ 2022/09/13 | 592 | systems/texlive/tlnet/archive/texlive-scripts.i386-linux.r64356.tar.xz 2022/09/13 | 596 | systems/texlive/tlnet/archive/texlive-scripts.i386-netbsd.r64356.tar.xz 2022/09/13 | 596 | systems/texlive/tlnet/archive/texlive-scripts.i386-solaris.r64356.tar.xz -2024/11/19 | 114412 | systems/texlive/tlnet/archive/texlive-scripts.r72892.tar.xz +2024/11/20 | 114404 | systems/texlive/tlnet/archive/texlive-scripts.r72904.tar.xz 2022/09/13 | 580 | systems/texlive/tlnet/archive/texlive-scripts.universal-darwin.r64356.tar.xz 2024/05/10 | 60592 | systems/texlive/tlnet/archive/texlive-scripts.windows.r71215.tar.xz 2022/09/13 | 596 | systems/texlive/tlnet/archive/texlive-scripts.x86_64-cygwin.r64356.tar.xz @@ -320027,8 +320031,8 @@ 2022/11/08 | 598160 | systems/texlive/tlnet/archive/turnstile.doc.r64967.tar.xz 2022/11/08 | 1904 | systems/texlive/tlnet/archive/turnstile.r64967.tar.xz 2022/11/08 | 7888 | systems/texlive/tlnet/archive/turnstile.source.r64967.tar.xz -2019/02/28 | 78428 | systems/texlive/tlnet/archive/turnthepage.doc.r29803.tar.xz -2019/02/28 | 1664 | systems/texlive/tlnet/archive/turnthepage.r29803.tar.xz +2024/11/20 | 124912 | systems/texlive/tlnet/archive/turnthepage.doc.r72902.tar.xz +2024/11/20 | 1780 | systems/texlive/tlnet/archive/turnthepage.r72902.tar.xz 2024/11/01 | 1888144 | systems/texlive/tlnet/archive/tutodoc.doc.r72719.tar.xz 2024/11/01 | 11376 | systems/texlive/tlnet/archive/tutodoc.r72719.tar.xz 2024/08/08 | 712 | systems/texlive/tlnet/archive/twemoji-colr.doc.r71991.tar.xz @@ -320614,9 +320618,9 @@ 2019/02/28 | 26448 | systems/texlive/tlnet/archive/wallcalendar.r45568.tar.xz 2019/02/28 | 1277340 | systems/texlive/tlnet/archive/wallpaper.doc.r15878.tar.xz 2019/02/28 | 1576 | systems/texlive/tlnet/archive/wallpaper.r15878.tar.xz -2024/02/04 | 2505788 | systems/texlive/tlnet/archive/wargame.doc.r69692.tar.xz -2024/02/04 | 242576 | systems/texlive/tlnet/archive/wargame.r69692.tar.xz -2024/02/04 | 206492 | systems/texlive/tlnet/archive/wargame.source.r69692.tar.xz +2024/11/20 | 2573940 | systems/texlive/tlnet/archive/wargame.doc.r72903.tar.xz +2024/11/20 | 276556 | systems/texlive/tlnet/archive/wargame.r72903.tar.xz +2024/11/20 | 221796 | systems/texlive/tlnet/archive/wargame.source.r72903.tar.xz 2023/03/22 | 285264 | systems/texlive/tlnet/archive/warning.doc.r66616.tar.xz 2023/03/22 | 1672 | systems/texlive/tlnet/archive/warning.r66616.tar.xz 2019/02/28 | 85512 | systems/texlive/tlnet/archive/warpcol.doc.r15878.tar.xz @@ -321219,16 +321223,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 2024/07/20 | 125851 | systems/texlive/tlnet/install-tl -2024/11/19 | 5758600 | systems/texlive/tlnet/install-tl-unx.tar.gz -2024/11/19 | 152 | systems/texlive/tlnet/install-tl-unx.tar.gz.sha512 -2024/11/19 | 488 | systems/texlive/tlnet/install-tl-unx.tar.gz.sha512.asc +2024/11/20 | 5756377 | systems/texlive/tlnet/install-tl-unx.tar.gz +2024/11/20 | 152 | systems/texlive/tlnet/install-tl-unx.tar.gz.sha512 +2024/11/20 | 488 | systems/texlive/tlnet/install-tl-unx.tar.gz.sha512.asc 2024/04/13 | 5743 | systems/texlive/tlnet/install-tl-windows.bat -2024/11/19 | 27716670 | systems/texlive/tlnet/install-tl-windows.exe -2024/11/19 | 153 | systems/texlive/tlnet/install-tl-windows.exe.sha512 -2024/11/19 | 488 | systems/texlive/tlnet/install-tl-windows.exe.sha512.asc -2024/11/19 | 34429467 | systems/texlive/tlnet/install-tl.zip -2024/11/19 | 145 | systems/texlive/tlnet/install-tl.zip.sha512 -2024/11/19 | 488 | systems/texlive/tlnet/install-tl.zip.sha512.asc +2024/11/20 | 27713733 | systems/texlive/tlnet/install-tl-windows.exe +2024/11/20 | 153 | systems/texlive/tlnet/install-tl-windows.exe.sha512 +2024/11/20 | 488 | systems/texlive/tlnet/install-tl-windows.exe.sha512.asc +2024/11/20 | 34429462 | systems/texlive/tlnet/install-tl.zip +2024/11/20 | 145 | systems/texlive/tlnet/install-tl.zip.sha512 +2024/11/20 | 488 | systems/texlive/tlnet/install-tl.zip.sha512.asc 2024/03/13 | 1229 | systems/texlive/tlnet/README.md 2024/03/13 | 0 | systems/texlive/tlnet/TEXLIVE_2024 2024/01/02 | 9011 | systems/texlive/tlnet/tlpkg/gpg/pubring.gpg @@ -321238,7 +321242,7 @@ 2024/01/02 | 1280 | systems/texlive/tlnet/tlpkg/gpg/trustdb.gpg 2024/07/29 | 50743 | systems/texlive/tlnet/tlpkg/installer/config.guess 2010/11/11 | 11651 | systems/texlive/tlnet/tlpkg/installer/COPYING.MinGW-runtime.txt -2024/11/17 | 7433 | systems/texlive/tlnet/tlpkg/installer/ctan-mirrors.pl +2024/11/20 | 7385 | systems/texlive/tlnet/tlpkg/installer/ctan-mirrors.pl 2024/09/25 | 234847 | 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 @@ -321280,12 +321284,12 @@ 2023/02/21 | 20371 | systems/texlive/tlnet/tlpkg/TeXLive/TLCrypto.pm 2024/05/02 | 5898 | systems/texlive/tlnet/tlpkg/TeXLive/TLDownload.pm 2023/04/08 | 28167 | systems/texlive/tlnet/tlpkg/TeXLive/TLPaper.pm -2024/11/19 | 19692925 | systems/texlive/tlnet/tlpkg/texlive.tlpdb -2024/11/19 | 48 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.md5 +2024/11/20 | 19695365 | systems/texlive/tlnet/tlpkg/texlive.tlpdb +2024/11/20 | 48 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.md5 2024/06/22 | 87725 | systems/texlive/tlnet/tlpkg/TeXLive/TLPDB.pm -2024/11/19 | 144 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512 -2024/11/19 | 488 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512.asc -2024/11/19 | 2613972 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.xz +2024/11/20 | 144 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512 +2024/11/20 | 488 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512.asc +2024/11/20 | 2616288 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.xz 2023/02/20 | 58928 | systems/texlive/tlnet/tlpkg/TeXLive/TLPOBJ.pm 2023/06/11 | 42749 | systems/texlive/tlnet/tlpkg/TeXLive/TLPSRC.pm 2023/02/21 | 16138 | systems/texlive/tlnet/tlpkg/TeXLive/TLTREE.pm @@ -333127,7 +333131,7 @@ 2014/07/05 | 611 | systems/win32/yandy/README 2014/07/05 | 1004628 | systems/win32/yandy/yandy-src.tar.xz 2014/07/05 | 1012416 | systems/win32/yandy.zip -2024/11/20 | 186 | timestamp +2024/11/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 Binary files differindex ba2250176f..08bbbf3dd0 100644 --- a/FILES.byname.gz +++ b/FILES.byname.gz diff --git a/FILES.last07days b/FILES.last07days index 90b228d0c8..30ae309687 100644 --- a/FILES.last07days +++ b/FILES.last07days @@ -1,8 +1,123 @@ +2024/11/20 | 960 | macros/latex/contrib/beamer-contrib/themes/beamertheme-gotham/section-Conclusion.tex +2024/11/20 | 95029 | macros/latex/contrib/easybook/easybook.dtx +2024/11/20 | 92636 | systems/texlive/tlnet/archive/nicematrix.source.r72899.tar.xz +2024/11/20 | 913 | macros/latex/contrib/easybook/README.md +2024/11/20 | 913316 | macros/latex/contrib/fancyhdr.zip +2024/11/20 | 911417 | install/macros/latex/contrib/pageslts.tds.zip +2024/11/20 | 893285 | macros/latex/contrib/pageslts.zip +2024/11/20 | 885095 | macros/latex/contrib/fancyhdr/fancyhdr.pdf +2024/11/20 | 8784 | systems/texlive/tlnet/archive/anima.source.r72895.tar.xz +2024/11/20 | 872 | macros/latex/contrib/beamer-contrib/themes/beamertheme-gotham/ctan.ann +2024/11/20 | 860444 | macros/latex/contrib/numerica-tables/numerica-tables.pdf +2024/11/20 | 8381 | macros/latex/contrib/biblatex-contrib/biblatex-ieee/biblatex-ieee.tex +2024/11/20 | 7966 | macros/latex/contrib/codehigh/codehigh.tex +2024/11/20 | 7697 | macros/latex/contrib/pageslts/README +2024/11/20 | 745088 | macros/latex/contrib/numerica-tables.zip +2024/11/20 | 7446 | macros/latex/contrib/beamer-contrib/themes/beamertheme-gotham/gotham-layout.pdf +2024/11/20 | 74224 | systems/texlive/tlnet/archive/tagpdf.source.r72901.tar.xz +2024/11/20 | 7385 | systems/texlive/tlnet/tlpkg/installer/ctan-mirrors.pl +2024/11/20 | 7332 | systems/texlive/tlnet/archive/collection-latexextra.r72895.tar.xz +2024/11/20 | 7292 | macros/latex/contrib/beamer-contrib/themes/beamertheme-gotham/MANIFEST.md +2024/11/20 | 725092 | systems/texlive/tlnet/archive/nimbus15.doc.r72894.tar.xz +2024/11/20 | 710232 | install/macros/latex/contrib/biblatex-contrib/biblatex-ieee.tds.zip +2024/11/20 | 709545 | macros/latex/contrib/biblatex-contrib/biblatex-ieee.zip +2024/11/20 | 706723 | macros/latex/contrib/easybook.zip +2024/11/20 | 682124 | systems/texlive/tlnet/archive/easybook.doc.r72897.tar.xz +2024/11/20 | 68188 | systems/texlive/tlnet/archive/siunitx.r72900.tar.xz +2024/11/20 | 6613 | macros/latex/contrib/beamer-contrib/themes/beamertheme-gotham/README.md +2024/11/20 | 658850 | macros/latex/contrib/beamer-contrib/themes/beamertheme-gotham/gotham-dev-impl.pdf +2024/11/20 | 651967 | macros/latex/contrib/easybook/easybook.pdf +2024/11/20 | 637 | macros/latex/contrib/biblatex-contrib/biblatex-ieee/README.md +2024/11/20 | 576094 | macros/latex/contrib/pageslts/pageslts.pdf +2024/11/20 | 5756377 | systems/texlive/tlnet/install-tl-unx.tar.gz +2024/11/20 | 55026 | macros/latex/contrib/beamer-contrib/themes/beamertheme-gotham/gotham-doc.tex +2024/11/20 | 48 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.md5 +2024/11/20 | 488 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512.asc +2024/11/20 | 488 | systems/texlive/tlnet/install-tl.zip.sha512.asc +2024/11/20 | 488 | systems/texlive/tlnet/install-tl-windows.exe.sha512.asc +2024/11/20 | 488 | systems/texlive/tlnet/install-tl-unx.tar.gz.sha512.asc +2024/11/20 | 4712 | macros/latex/contrib/biblatex-contrib/biblatex-ieee/ieee-comp.cbx +2024/11/20 | 469850 | macros/latex/contrib/beamer-contrib/themes/beamertheme-gotham/gotham-doc.pdf +2024/11/20 | 440100 | systems/texlive/tlnet/archive/texlive-scripts.doc.r72904.tar.xz +2024/11/20 | 429988 | systems/texlive/tlnet/archive/anima.doc.r72895.tar.xz +2024/11/20 | 42532 | systems/texlive/tlnet/archive/nicematrix.r72899.tar.xz +2024/11/20 | 4209291 | biblio/ctan-bibdata.zip +2024/11/20 | 402406 | macros/latex/contrib/biblatex-contrib/biblatex-ieee/biblatex-ieee.pdf +2024/11/20 | 39364 | systems/texlive/tlnet/archive/tagpdf.r72901.tar.xz +2024/11/20 | 3816244 | systems/texlive/tlnet/archive/nimbus15.r72894.tar.xz +2024/11/20 | 3790528 | biblio/ctan-bibdata/ctan.pdf +2024/11/20 | 34429462 | systems/texlive/tlnet/install-tl.zip +2024/11/20 | 33688 | systems/texlive/tlnet/archive/bxcoloremoji.r72896.tar.xz +2024/11/20 | 322879 | macros/latex/contrib/beamer-contrib/themes/beamertheme-gotham/gotham.dtx +2024/11/20 | 3080 | systems/texlive/tlnet/archive/anima.r72895.tar.xz +2024/11/20 | 305189 | macros/latex/contrib/pageslts/pageslts-example.pdf +2024/11/20 | 304286 | macros/latex/contrib/biblatex-contrib/biblatex-ieee/biblatex-ieee-alphabetic.pdf +2024/11/20 | 30223 | macros/latex/contrib/beamer-contrib/themes/beamertheme-gotham/gotham-exampleSimple.pdf +2024/11/20 | 2965418 | macros/latex/contrib/beamer-contrib/themes/beamertheme-gotham.zip +2024/11/20 | 2903280 | biblio/ctan-bibdata/ctan.bib +2024/11/20 | 2898 | macros/latex/contrib/beamer-contrib/themes/beamertheme-gotham/gotham.ins +2024/11/20 | 282835 | macros/latex/contrib/beamer-contrib/themes/beamertheme-gotham/gotham-example43dark.pdf +2024/11/20 | 280365 | macros/latex/contrib/beamer-contrib/themes/beamertheme-gotham/gotham-example169transp.pdf +2024/11/20 | 2782 | macros/latex/contrib/biblatex-contrib/biblatex-ieee/ieee-alphabetic.bbx +2024/11/20 | 27713733 | systems/texlive/tlnet/install-tl-windows.exe +2024/11/20 | 2768 | systems/texlive/tlnet/archive/jpneduenumerate.r72898.tar.xz +2024/11/20 | 276556 | systems/texlive/tlnet/archive/wargame.r72903.tar.xz +2024/11/20 | 2754 | macros/latex/contrib/biblatex-contrib/biblatex-ieee/biblatex-ieee-alphabetic.tex +2024/11/20 | 2697308 | systems/texlive/tlnet/archive/bxcoloremoji.doc.r72896.tar.xz +2024/11/20 | 2616288 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.xz +2024/11/20 | 2573940 | systems/texlive/tlnet/archive/wargame.doc.r72903.tar.xz +2024/11/20 | 2409 | macros/latex/contrib/fancyhdr/README +2024/11/20 | 229879 | macros/latex/contrib/beamer-contrib/themes/beamertheme-gotham/gotham-user-cmds.pdf +2024/11/20 | 2284 | macros/latex/contrib/biblatex-contrib/biblatex-ieee/magyar-ieee.lbx +2024/11/20 | 2277 | macros/latex/contrib/biblatex-contrib/biblatex-ieee/ieee-alphabetic.cbx +2024/11/20 | 22364 | macros/latex/contrib/codehigh/codehigh.sty +2024/11/20 | 221796 | systems/texlive/tlnet/archive/wargame.source.r72903.tar.xz +2024/11/20 | 2163868 | systems/texlive/tlnet/archive/nicematrix.doc.r72899.tar.xz +2024/11/20 | 2132345 | macros/latex/contrib/tagpdf.zip +2024/11/20 | 206778 | macros/latex/contrib/fancyhdr/fancyhdr.dtx +2024/11/20 | 20319 | macros/latex/contrib/biblatex-contrib/biblatex-ieee/ieee.bbx +2024/11/20 | 20296 | systems/texlive/tlnet/archive/easybook.r72897.tar.xz +2024/11/20 | 20156 | systems/texlive/tlnet/archive/easybook.source.r72897.tar.xz +2024/11/20 | 19695365 | systems/texlive/tlnet/tlpkg/texlive.tlpdb +2024/11/20 | 1852944 | systems/texlive/tlnet/archive/tagpdf.doc.r72901.tar.xz +2024/11/20 | 184075 | macros/latex/contrib/pageslts/pageslts.dtx +2024/11/20 | 1780 | systems/texlive/tlnet/archive/turnthepage.r72902.tar.xz +2024/11/20 | 1740 | macros/latex/contrib/beamer-contrib/themes/beamertheme-gotham/gotham-example43dark.tex +2024/11/20 | 1718 | macros/latex/contrib/beamer-contrib/themes/beamertheme-gotham/gotham-example169transp.tex +2024/11/20 | 1678 | biblio/ctan-bibdata/biblatex-ctan/ctan.bbx +2024/11/20 | 1651 | macros/latex/contrib/biblatex-contrib/biblatex-ieee/ieee.cbx +2024/11/20 | 162368 | systems/texlive/tlnet/archive/jpneduenumerate.doc.r72898.tar.xz +2024/11/20 | 158 | macros/latex/contrib/beamer-contrib/themes/beamertheme-gotham/gotham-exampleSimple.tex +2024/11/20 | 157011 | macros/latex/contrib/numerica-tables/numerica-tables.tex +2024/11/20 | 153 | systems/texlive/tlnet/install-tl-windows.exe.sha512 +2024/11/20 | 152 | systems/texlive/tlnet/install-tl-unx.tar.gz.sha512 +2024/11/20 | 145 | systems/texlive/tlnet/install-tl.zip.sha512 +2024/11/20 | 1455 | macros/latex/contrib/beamer-contrib/themes/beamertheme-gotham/gotham-logo.pdf +2024/11/20 | 14508 | macros/latex/contrib/biblatex-contrib/biblatex-ieee/biblatex-ieee.bib +2024/11/20 | 144 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512 +2024/11/20 | 1441424 | macros/xetex/latex/hduthesis.zip +2024/11/20 | 13932 | macros/latex/contrib/beamer-contrib/themes/beamertheme-gotham/section-Gotham.tex +2024/11/20 | 1355 | macros/latex/contrib/beamer-contrib/themes/beamertheme-gotham/gotham-blueprint.pdf +2024/11/20 | 1291 | macros/latex/contrib/beamer-contrib/themes/beamertheme-gotham/gotham-safetybox.pdf +2024/11/20 | 1286620 | systems/texlive/tlnet/archive/siunitx.doc.r72900.tar.xz +2024/11/20 | 125299 | macros/latex/contrib/codehigh/codehigh.pdf +2024/11/20 | 124912 | systems/texlive/tlnet/archive/turnthepage.doc.r72902.tar.xz +2024/11/20 | 123996 | systems/texlive/tlnet/archive/siunitx.source.r72900.tar.xz +2024/11/20 | 114404 | systems/texlive/tlnet/archive/texlive-scripts.r72904.tar.xz +2024/11/20 | 113960 | macros/latex/contrib/easybook/easybook.tex +2024/11/20 | 1103 | macros/latex/contrib/numerica-tables/README.txt +2024/11/20 | 10944 | macros/latex/contrib/beamer-contrib/themes/beamertheme-gotham/section-Beamer.tex +2024/11/20 | 108 | macros/latex/contrib/beamer-contrib/themes/beamertheme-gotham/ctan.note +2024/11/20 | 106559 | macros/latex/contrib/codehigh.zip +2024/11/20 | 1064261 | macros/latex/contrib/beamer-contrib/themes/beamertheme-gotham/gotham.pdf 2024/11/19 | 99706 | macros/latex/contrib/wargame/source/wargame.dtx 2024/11/19 | 9929 | macros/latex/contrib/wargame/source/hex/terrain/swamp.dtx 2024/11/19 | 9746 | macros/latex/contrib/siunitx/siunitx-symbol.dtx +2024/11/19 | 9561 | macros/xetex/latex/hduthesis/doc/hduthesis.tex 2024/11/19 | 950 | macros/latex/contrib/tagpdf/ex-formula-problem.tex 2024/11/19 | 9507 | macros/latex/contrib/wargame/source/hex/terrain.dtx +2024/11/19 | 9503 | macros/xetex/latex/hduthesis/examples/figures/image-0439.png +2024/11/19 | 942 | macros/xetex/latex/hduthesis/examples/hduthesis-bc.tex 2024/11/19 | 932 | macros/latex/contrib/wargame/source/package.dtx 2024/11/19 | 93020 | macros/latex/contrib/wargame/source/natoapp6c/symbols.dtx 2024/11/19 | 9044 | macros/latex/contrib/wargame/source/Makefile @@ -14,6 +129,7 @@ 2024/11/19 | 83535 | macros/latex/contrib/siunitx/CHANGELOG.md 2024/11/19 | 8281 | macros/latex/contrib/tagpdf/global-ex.png 2024/11/19 | 827 | macros/latex/contrib/tagpdf/ex-softhyphen.tex +2024/11/19 | 8135 | macros/xetex/latex/hduthesis/tex/hduthesis-pg.layout-module.code.tex 2024/11/19 | 805504 | systems/texlive/tlnet/archive/dvipdfmx.universal-darwin.r72890.tar.xz 2024/11/19 | 79413 | macros/latex/contrib/tagpdf/tagpdf-struct.dtx 2024/11/19 | 7854 | macros/latex/contrib/tagpdf/ex-formula-problem-luatex.pdf @@ -21,29 +137,38 @@ 2024/11/19 | 757356 | systems/texlive/tlnet/archive/piton.doc.r72889.tar.xz 2024/11/19 | 755 | macros/latex/contrib/wargame/doc/tutorial/patch.py 2024/11/19 | 742 | macros/latex/contrib/wargame/source/natoapp6c/compat/seamine.dtx +2024/11/19 | 7410 | macros/xetex/latex/hduthesis/tex/hduthesis.cls 2024/11/19 | 7309 | macros/latex/contrib/tagpdf/tagpdf-space.dtx 2024/11/19 | 703954 | macros/latex/contrib/siunitx/siunitx.pdf 2024/11/19 | 700 | macros/latex/contrib/tagpdf/ex-spaceglyph-listings.tex 2024/11/19 | 698 | macros/latex/contrib/tagpdf/ex-tagpdf-template.tex +2024/11/19 | 6806 | macros/xetex/latex/hduthesis/examples/figures/image-0163.png 2024/11/19 | 66424 | macros/latex/contrib/wargame/doc/tutorial/game.sty 2024/11/19 | 6626 | macros/latex/contrib/tagpdf/ex-attribute-luatex.pdf 2024/11/19 | 6573 | macros/latex/contrib/wargame/source/natoapp6c/core.dtx 2024/11/19 | 65516 | systems/texlive/tlnet/archive/piton.source.r72889.tar.xz +2024/11/19 | 653 | macros/xetex/latex/hduthesis/examples/cha/thanks.tex 2024/11/19 | 645508 | macros/latex/contrib/siunitx/siunitx-code.pdf 2024/11/19 | 642 | macros/latex/contrib/wargame/source/hex/terrain/tree.dtx 2024/11/19 | 6425 | macros/latex/contrib/wargame/source/util/bb.dtx +2024/11/19 | 642274 | macros/xetex/latex/hduthesis/doc/hduthesis.pdf 2024/11/19 | 632 | systems/texlive/tlnet/archive/collection-basic.r72890.tar.xz +2024/11/19 | 6290 | macros/xetex/latex/hduthesis/examples/figures/image-0284.png +2024/11/19 | 62469 | macros/latex/contrib/numerica-tables/numerica-tables.sty 2024/11/19 | 62019 | macros/latex/contrib/wargame/source/hex/terrain/rough.dtx 2024/11/19 | 618 | macros/latex/contrib/wargame/source/hex/terrain/mountain.dtx +2024/11/19 | 6183 | macros/xetex/latex/hduthesis/examples/hduthesis-pg.tex 2024/11/19 | 61788 | systems/texlive/tlnet/archive/fvextra.source.r72885.tar.xz 2024/11/19 | 604278 | macros/latex/contrib/wargame/doc/tutorial/game.pdf 2024/11/19 | 60301 | macros/latex/contrib/tagpdf/pac2024-report.png 2024/11/19 | 5816 | macros/latex/contrib/siunitx/siunitx-locale.dtx 2024/11/19 | 5787 | macros/latex/contrib/wargame/source/util/compound.dtx 2024/11/19 | 5775 | macros/latex/contrib/wargame/doc/tutorial/game.tex -2024/11/19 | 5758600 | systems/texlive/tlnet/install-tl-unx.tar.gz 2024/11/19 | 56935 | macros/latex/contrib/siunitx/siunitx-table.dtx +2024/11/19 | 553 | macros/xetex/latex/hduthesis/README.md +2024/11/19 | 5477 | macros/xetex/latex/hduthesis/tex/hduthesis-bc.layout-module.code.tex 2024/11/19 | 5428 | macros/latex/contrib/wargame/source/util/tikz.dtx +2024/11/19 | 5408 | macros/xetex/latex/hduthesis/examples/cha/cha5.tex 2024/11/19 | 5227 | macros/latex/contrib/wargame/source/natoapp6c/compat/seasurface.dtx 2024/11/19 | 514520 | systems/texlive/tlnet/archive/minted.doc.r72888.tar.xz 2024/11/19 | 512 | macros/latex/contrib/wargame/source/util/core.dtx @@ -51,26 +176,25 @@ 2024/11/19 | 499 | macros/latex/contrib/wargame/source/util/randomid.dtx 2024/11/19 | 496 | macros/latex/contrib/wargame/source/hex/tile.dtx 2024/11/19 | 4959 | macros/latex/contrib/wargame/source/hex/ridges.dtx -2024/11/19 | 48 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.md5 -2024/11/19 | 488 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512.asc -2024/11/19 | 488 | systems/texlive/tlnet/install-tl.zip.sha512.asc -2024/11/19 | 488 | systems/texlive/tlnet/install-tl-windows.exe.sha512.asc -2024/11/19 | 488 | systems/texlive/tlnet/install-tl-unx.tar.gz.sha512.asc 2024/11/19 | 4877 | macros/latex/contrib/wargame/source/util/misc.dtx +2024/11/19 | 4828 | macros/xetex/latex/hduthesis/examples/cha/cha3.tex 2024/11/19 | 48184 | macros/latex/contrib/tagpdf/tagpdf-backend.dtx 2024/11/19 | 4748 | macros/latex/contrib/siunitx/siunitx-abbreviations.cfg 2024/11/19 | 4715 | macros/latex/contrib/wargame/source/natoapp6c/compat/equipment.dtx -2024/11/19 | 47044 | macros/latex/contrib/tagpdf/tagpdf-user.dtx +2024/11/19 | 4712 | macros/xetex/latex/hduthesis/examples/figures/image-0236.png +2024/11/19 | 47059 | macros/latex/contrib/tagpdf/tagpdf-user.dtx 2024/11/19 | 4702 | macros/latex/contrib/wargame/source/hex/labels.dtx 2024/11/19 | 470008 | systems/texlive/tlnet/archive/dvipdfmx.i386-linux.r72890.tar.xz 2024/11/19 | 46781 | macros/latex/contrib/wargame/source/hex/terrain/woods.dtx +2024/11/19 | 4666 | macros/xetex/latex/hduthesis/examples/cha/cha2.tex 2024/11/19 | 465256 | systems/texlive/tlnet/archive/dvipdfmx.x86_64-solaris.r72890.tar.xz +2024/11/19 | 464474 | macros/xetex/latex/hduthesis/examples/hduthesis-bc.pdf 2024/11/19 | 460996 | systems/texlive/tlnet/archive/dvipdfmx.x86_64-linuxmusl.r72890.tar.xz 2024/11/19 | 46014 | macros/latex/contrib/tagpdf/tagpdf-roles.dtx 2024/11/19 | 4549 | macros/latex/contrib/wargame/source/tests/test.tex 2024/11/19 | 4491 | macros/latex/contrib/wargame/source/natoapp6c/list.dtx 2024/11/19 | 4421 | macros/latex/contrib/tagpdf/tagpdfsetup-keys.tex -2024/11/19 | 440100 | systems/texlive/tlnet/archive/texlive-scripts.doc.r72892.tar.xz +2024/11/19 | 4415 | macros/xetex/latex/hduthesis/tex/hduthesisdoc.cls 2024/11/19 | 438656 | systems/texlive/tlnet/archive/dvipdfmx.x86_64-linux.r72890.tar.xz 2024/11/19 | 43840 | macros/latex/contrib/siunitx/siunitx-compound.dtx 2024/11/19 | 436737 | macros/latex/contrib/anima/anima-doc.pdf @@ -78,7 +202,6 @@ 2024/11/19 | 435134 | macros/latex/contrib/wargame/doc/compat.pdf 2024/11/19 | 428068 | systems/texlive/tlnet/archive/dvipdfmx.i386-solaris.r72890.tar.xz 2024/11/19 | 42700 | systems/texlive/tlnet/archive/minted.source.r72888.tar.xz -2024/11/19 | 4209194 | biblio/ctan-bibdata.zip 2024/11/19 | 413 | macros/latex/contrib/wargame/source/natoapp6c/compat/missile.dtx 2024/11/19 | 413248 | systems/texlive/tlnet/archive/dvipdfmx.x86_64-darwinlegacy.r72890.tar.xz 2024/11/19 | 413196 | systems/texlive/tlnet/archive/dvipdfmx.aarch64-linux.r72890.tar.xz @@ -95,7 +218,6 @@ 2024/11/19 | 3866 | macros/latex/contrib/wargame/source/chit/elements.dtx 2024/11/19 | 381556 | systems/texlive/tlnet/archive/dvipdfmx.armhf-linux.r72890.tar.xz 2024/11/19 | 37988 | macros/latex/contrib/siunitx/siunitx-print.dtx -2024/11/19 | 3790528 | biblio/ctan-bibdata/ctan.pdf 2024/11/19 | 37519 | macros/latex/contrib/wargame/source/hex/terrain/beach.dtx 2024/11/19 | 37420 | macros/latex/contrib/wargame/source/hex/terrain/mountains.dtx 2024/11/19 | 3732 | systems/texlive/tlnet/archive/latex2pydata.r72886.tar.xz @@ -104,11 +226,11 @@ 2024/11/19 | 368056 | systems/texlive/tlnet/archive/dvipdfmx.i386-netbsd.r72890.tar.xz 2024/11/19 | 36621 | macros/latex/contrib/tagpdf/tagpdf-checks.dtx 2024/11/19 | 357884 | systems/texlive/tlnet/archive/mathfixs.doc.r72887.tar.xz +2024/11/19 | 3509 | macros/xetex/latex/hduthesis/examples/cha/abstract.tex 2024/11/19 | 348 | systems/texlive/tlnet/archive/extractbb.x86_64-darwinlegacy.r72890.tar.xz 2024/11/19 | 34624 | macros/latex/contrib/tagpdf/ex-alt-actualtext.pdf 2024/11/19 | 344 | systems/texlive/tlnet/archive/extractbb.x86_64-linuxmusl.r72890.tar.xz 2024/11/19 | 344 | systems/texlive/tlnet/archive/extractbb.universal-darwin.r72890.tar.xz -2024/11/19 | 34429467 | systems/texlive/tlnet/install-tl.zip 2024/11/19 | 340 | systems/texlive/tlnet/archive/extractbb.x86_64-solaris.r72890.tar.xz 2024/11/19 | 340 | systems/texlive/tlnet/archive/extractbb.x86_64-linux.r72890.tar.xz 2024/11/19 | 340 | systems/texlive/tlnet/archive/extractbb.x86_64-cygwin.r72890.tar.xz @@ -133,23 +255,22 @@ 2024/11/19 | 30984 | macros/latex/contrib/anima/anima.dtx 2024/11/19 | 2965141 | macros/latex/contrib/wargame.zip 2024/11/19 | 2941 | macros/latex/contrib/siunitx/siunitx-binary.dtx +2024/11/19 | 29096 | macros/xetex/latex/hduthesis/tex/hdulogo.pdf 2024/11/19 | 2904760 | systems/texlive/tlnet/archive/citation-style-language.r72884.tar.xz 2024/11/19 | 29040 | systems/texlive/tlnet/archive/dvipdfmx.r72890.tar.xz 2024/11/19 | 29032 | macros/latex/contrib/tagpdf/pac2024-version.png -2024/11/19 | 2902889 | biblio/ctan-bibdata/ctan.bib 2024/11/19 | 28897 | macros/latex/contrib/tagpdf/tagpdf-mc-generic.dtx 2024/11/19 | 2888 | macros/latex/contrib/wargame/source/natoapp6c/compat/subsurface.dtx 2024/11/19 | 2846 | macros/latex/contrib/wargame/source/natoapp6c/echelon.dtx -2024/11/19 | 27716670 | systems/texlive/tlnet/install-tl-windows.exe 2024/11/19 | 27686 | macros/latex/contrib/wargame/source/chit/shape.dtx 2024/11/19 | 273398 | macros/latex/contrib/siunitx/siunitx-v2.sty 2024/11/19 | 26980 | macros/latex/contrib/wargame/source/natoapp6c/shape.dtx +2024/11/19 | 2697 | macros/xetex/latex/hduthesis/examples/cha/cha6.tex 2024/11/19 | 2687590 | macros/latex/contrib/nicematrix.zip 2024/11/19 | 26545 | macros/latex/contrib/tagpdf/tagpdf.dtx 2024/11/19 | 2643 | macros/latex/contrib/tagpdf/tagpdf.bib 2024/11/19 | 2621 | macros/latex/contrib/siunitx/siunitx-code.tex 2024/11/19 | 261520 | systems/texlive/tlnet/archive/citation-style-language.doc.r72884.tar.xz -2024/11/19 | 2613972 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.xz 2024/11/19 | 25205 | macros/latex/contrib/tagpdf/ex-mc-manual-para-split-obsolete.pdf 2024/11/19 | 25131 | macros/latex/contrib/tagpdf/ex-structure-obsolete.pdf 2024/11/19 | 2502 | macros/latex/contrib/wargame/source/hex/towns.dtx @@ -162,27 +283,32 @@ 2024/11/19 | 23240 | macros/latex/contrib/wargame/source/utils/wgmakenato.py 2024/11/19 | 2308 | systems/texlive/tlnet/archive/extractbb.windows.r71669.tar.xz 2024/11/19 | 2284 | macros/latex/contrib/wargame/source/hex/extra.dtx +2024/11/19 | 2283 | macros/xetex/latex/hduthesis/examples/reference.bib 2024/11/19 | 227 | macros/latex/contrib/tagpdf/tagpdf-docelements.tex 2024/11/19 | 2274 | macros/latex/contrib/wargame/source/natoapp6c/compat/space.dtx 2024/11/19 | 2267 | macros/latex/contrib/wargame/source/natoapp6c/frames/base.dtx 2024/11/19 | 22492 | systems/texlive/tlnet/archive/piton.r72889.tar.xz 2024/11/19 | 22316 | macros/latex/contrib/siunitx/siunitx.dtx 2024/11/19 | 22302 | macros/latex/contrib/tagpdf/ex-AF-file.pdf -2024/11/19 | 2132293 | macros/latex/contrib/tagpdf.zip +2024/11/19 | 22109 | macros/xetex/latex/hduthesis/tex/hdubadge.pdf +2024/11/19 | 2125 | macros/xetex/latex/hduthesis/examples/cha/cha1.tex 2024/11/19 | 2115 | macros/latex/contrib/tagpdf/ex-mc-manual-para-split-obsolete.tex 2024/11/19 | 2108 | macros/latex/contrib/wargame/source/tests/chits.dtx +2024/11/19 | 21089 | macros/xetex/latex/hduthesis/tex/hdumotto.pdf 2024/11/19 | 20783 | macros/latex/contrib/tagpdf/tagpdf-tree.dtx 2024/11/19 | 2076 | macros/latex/contrib/tagpdf/link-figure-input.tex 2024/11/19 | 20397 | macros/latex/contrib/tagpdf/ex-formula-problem.pdf 2024/11/19 | 19830 | macros/latex/contrib/siunitx/siunitx-angle.dtx -2024/11/19 | 19692925 | systems/texlive/tlnet/tlpkg/texlive.tlpdb 2024/11/19 | 19652 | macros/latex/contrib/wargame/source/natoapp6c/frames/unknown.dtx 2024/11/19 | 19561 | macros/latex/contrib/tagpdf/ex-softhyphen.pdf 2024/11/19 | 19530 | macros/latex/contrib/tagpdf/ex-tagpdf-template.pdf +2024/11/19 | 1948 | macros/xetex/latex/hduthesis/tex/hduthesis-unv.layout-module.code.tex 2024/11/19 | 1944 | macros/latex/contrib/wargame/source/tests/map.dtx 2024/11/19 | 19346 | macros/latex/contrib/tagpdf/ex-attribute.pdf 2024/11/19 | 1932 | macros/latex/contrib/wargame/source/chit/battle.dtx 2024/11/19 | 1911 | macros/latex/contrib/wargame/source/natoapp6c/util.dtx +2024/11/19 | 19101 | macros/xetex/latex/hduthesis/License +2024/11/19 | 18951 | macros/xetex/latex/hduthesis/examples/figures/image-0145.png 2024/11/19 | 186896 | macros/latex/contrib/wargame/doc/symbols.pdf 2024/11/19 | 18461 | macros/latex/contrib/tagpdf/ex-patch-sectioning-koma-luatex.pdf 2024/11/19 | 1807 | macros/latex/contrib/wargame/source/natoapp6c/text.dtx @@ -193,11 +319,11 @@ 2024/11/19 | 17392 | macros/latex/contrib/wargame/source/natoapp6c/frames/hostile.dtx 2024/11/19 | 17360 | systems/texlive/tlnet/archive/mathfixs.source.r72887.tar.xz 2024/11/19 | 1729 | macros/latex/contrib/siunitx/siunitx-binary.cfg +2024/11/19 | 17271 | macros/xetex/latex/hduthesis/examples/figures/image-0289.png 2024/11/19 | 17162 | macros/latex/contrib/tagpdf/tagpdf-mc-shared.dtx 2024/11/19 | 1713 | macros/latex/contrib/wargame/source/hex/terrain/fields.dtx 2024/11/19 | 168585 | macros/latex/contrib/siunitx/siunitx.tex 2024/11/19 | 16853 | macros/latex/contrib/tagpdf/ex-spaceglyph-listings.pdf -2024/11/19 | 1678 | biblio/ctan-bibdata/biblatex-ctan/ctan.bbx 2024/11/19 | 16683 | macros/latex/contrib/wargame/source/natoapp6c/frames/neutral.dtx 2024/11/19 | 165834 | macros/latex/contrib/jpneduenumerate.zip 2024/11/19 | 16571 | macros/latex/contrib/tagpdf/tagpdf-mc-luacode.dtx @@ -205,24 +331,27 @@ 2024/11/19 | 1653 | macros/latex/contrib/wargame/source/natoapp6c/compat/installation.dtx 2024/11/19 | 163716 | macros/latex/contrib/siunitx/siunitx-number.dtx 2024/11/19 | 163175 | macros/latex/contrib/jpneduenumerate/jpneduenumerate.pdf +2024/11/19 | 1616 | macros/xetex/latex/hduthesis/examples/cha/cha7.tex 2024/11/19 | 1593457 | install/macros/latex/contrib/siunitx.tds.zip 2024/11/19 | 15564 | macros/latex/contrib/wargame/source/hex/split.dtx 2024/11/19 | 1545337 | macros/latex/contrib/siunitx.zip -2024/11/19 | 153 | systems/texlive/tlnet/install-tl-windows.exe.sha512 -2024/11/19 | 152 | systems/texlive/tlnet/install-tl-unx.tar.gz.sha512 2024/11/19 | 1529964 | macros/latex/contrib/wargame/doc/wargame.pdf 2024/11/19 | 15296 | macros/latex/contrib/siunitx/siunitx-quantity.dtx +2024/11/19 | 15108 | macros/xetex/latex/hduthesis/examples/cha/cha4.tex 2024/11/19 | 15000 | macros/latex/contrib/wargame/source/hex/shape.dtx 2024/11/19 | 14932 | systems/texlive/tlnet/archive/fvextra.r72885.tar.xz -2024/11/19 | 145 | systems/texlive/tlnet/install-tl.zip.sha512 -2024/11/19 | 144 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512 +2024/11/19 | 14808 | macros/xetex/latex/hduthesis/examples/figures/image-0162.png +2024/11/19 | 147864 | macros/xetex/latex/hduthesis/examples/hduthesis-pg.pdf 2024/11/19 | 1445 | macros/latex/contrib/tagpdf/ex-structure-obsolete.tex 2024/11/19 | 141163 | macros/latex/contrib/tagpdf/pac3.PNG 2024/11/19 | 13915 | macros/latex/contrib/wargame/source/chit/table.dtx +2024/11/19 | 1372 | macros/xetex/latex/hduthesis/tex/hduthesis-font-module.code.tex 2024/11/19 | 1367 | macros/latex/contrib/anima/README.txt 2024/11/19 | 1359 | macros/latex/contrib/wargame/source/natoapp6c/compat/activity.dtx +2024/11/19 | 13508 | macros/xetex/latex/hduthesis/examples/figures/image-0419.png 2024/11/19 | 1342 | macros/latex/contrib/wargame/source/chit/core.dtx -2024/11/19 | 1333299 | macros/latex/contrib/tagpdf/tagpdf-code.pdf +2024/11/19 | 13350 | macros/xetex/latex/hduthesis/examples/figures/image-0440.png +2024/11/19 | 1333160 | macros/latex/contrib/tagpdf/tagpdf-code.pdf 2024/11/19 | 132670 | macros/latex/contrib/tagpdf/tagpdf.tex 2024/11/19 | 1325 | macros/latex/contrib/tagpdf/ex-attribute.tex 2024/11/19 | 1323 | macros/latex/contrib/wargame/source/chit/stack.dtx @@ -239,10 +368,10 @@ 2024/11/19 | 119380 | macros/latex/contrib/wargame/source/hex/terrain/city.dtx 2024/11/19 | 1166 | macros/latex/contrib/siunitx/README.md 2024/11/19 | 1160 | macros/latex/contrib/tagpdf/ex-AF-file.tex -2024/11/19 | 114412 | systems/texlive/tlnet/archive/texlive-scripts.r72892.tar.xz 2024/11/19 | 11431 | macros/latex/contrib/wargame/source/hex/paths.dtx 2024/11/19 | 11366 | macros/latex/contrib/wargame/source/chit/oob.dtx -2024/11/19 | 1135897 | macros/latex/contrib/tagpdf/tagpdf.pdf +2024/11/19 | 1135923 | macros/latex/contrib/tagpdf/tagpdf.pdf +2024/11/19 | 11282 | macros/xetex/latex/hduthesis/examples/figures/image-0285.png 2024/11/19 | 11252 | macros/latex/contrib/siunitx/siunitx-abbreviation.dtx 2024/11/19 | 11120 | macros/latex/contrib/wargame/source/natoapp6c/compat/land.dtx 2024/11/19 | 1091 | macros/latex/contrib/wargame/doc/tutorial/Makefile @@ -255,7 +384,6 @@ 2024/11/18 | 9736 | biblio/citation-style-language/citeproc-context.lua 2024/11/18 | 968753 | macros/latex/contrib/fvextra.zip 2024/11/18 | 955 | macros/latex/contrib/minted/minted.ins -2024/11/18 | 94987 | macros/latex/contrib/easybook/easybook.dtx 2024/11/18 | 9408 | biblio/citation-style-language/citeproc-unicode.lua 2024/11/18 | 9389 | macros/latex/contrib/minted/minted1.sty 2024/11/18 | 938479 | macros/latex/contrib/nicematrix/nicematrix.pdf @@ -264,7 +392,6 @@ 2024/11/18 | 9190 | biblio/citation-style-language/citeproc-node-choose.lua 2024/11/18 | 91801 | biblio/citation-style-language/citeproc-bibtex-data.lua 2024/11/18 | 916642 | macros/latex/contrib/fvextra/fvextra.pdf -2024/11/18 | 913 | macros/latex/contrib/easybook/README.md 2024/11/18 | 84580 | biblio/citation-style-language/apa.csl 2024/11/18 | 8380 | systems/texlive/tlnet/archive/tuple.r72878.tar.xz 2024/11/18 | 837404 | macros/luatex/latex/piton/piton.pdf @@ -275,15 +402,11 @@ 2024/11/18 | 74387 | macros/latex/contrib/mathfixs/mathfixs.dtx 2024/11/18 | 7381 | macros/latex/contrib/bxcoloremoji/README-ja.md 2024/11/18 | 7380 | biblio/citation-style-language/citeproc-node-text.lua -2024/11/18 | 7328 | systems/texlive/tlnet/archive/collection-latexextra.r72875.tar.xz 2024/11/18 | 73263 | macros/latex/contrib/bxcoloremoji/bxcoloremoji.sty 2024/11/18 | 729 | macros/latex/contrib/minted/README 2024/11/18 | 70723 | biblio/citation-style-language/citeproc-output.lua -2024/11/18 | 706686 | macros/latex/contrib/easybook.zip 2024/11/18 | 7011 | biblio/citation-style-language/citeproc-node-locale.lua 2024/11/18 | 6813 | biblio/citation-style-language/citeproc-node-sort.lua -2024/11/18 | 677896 | systems/texlive/tlnet/archive/easybook.doc.r72874.tar.xz -2024/11/18 | 651969 | macros/latex/contrib/easybook/easybook.pdf 2024/11/18 | 6267 | biblio/citation-style-language/citeproc-ir-node.lua 2024/11/18 | 617 | biblio/citation-style-language/citeproc-lua.1 2024/11/18 | 615 | macros/latex/contrib/fvextra/README @@ -411,8 +534,6 @@ 2024/11/18 | 2100 | macros/latex/contrib/minted/CHANGELOG_LATEXMINTED_PYTHON_PACKAGE.md 2024/11/18 | 207178 | macros/latex/contrib/minted/minted.dtx 2024/11/18 | 2051 | biblio/citation-style-language/citeproc-node-number.lua -2024/11/18 | 20284 | systems/texlive/tlnet/archive/easybook.r72874.tar.xz -2024/11/18 | 20168 | systems/texlive/tlnet/archive/easybook.source.r72874.tar.xz 2024/11/18 | 2008975 | macros/latex/contrib/nicematrix/nicematrix-code.pdf 2024/11/18 | 19423 | biblio/citation-style-language/citeproc-latex-parser.lua 2024/11/18 | 19257 | support/extractbb/extractbb-scratch.lua @@ -444,7 +565,6 @@ 2024/11/18 | 11566 | support/extractbb.zip 2024/11/18 | 11496 | biblio/citation-style-language/citeproc-node-bibliography.lua 2024/11/18 | 11480 | biblio/citation-style-language/american-sociological-association.csl -2024/11/18 | 113963 | macros/latex/contrib/easybook/easybook.tex 2024/11/18 | 1138232 | systems/texlive/tlnet/archive/tex4ht.r72882.tar.xz 2024/11/18 | 10993 | biblio/citation-style-language/american-medical-association.csl 2024/11/18 | 10723 | biblio/citation-style-language/harvard-cite-them-right.csl @@ -462,7 +582,6 @@ 2024/11/17 | 888240 | systems/texlive/tlnet/archive/hduthesis.doc.r72869.tar.xz 2024/11/17 | 88620 | systems/win32/miktex/tm/packages/next/miktex-png-bin-x64-2.9.tar.lzma 2024/11/17 | 88376 | systems/texlive/tlnet/archive/pstricks.r72868.tar.xz -2024/11/17 | 8381 | macros/latex/contrib/biblatex-contrib/biblatex-ieee/biblatex-ieee.tex 2024/11/17 | 832530 | systems/win32/miktex/tm/packages/next/files.csv.lzma 2024/11/17 | 832506 | systems/win32/miktex/tm/packages/files.csv.lzma 2024/11/17 | 830575 | systems/win32/miktex/tm/packages/next/miktex-pdftex-bin-x64-2.9.tar.lzma @@ -476,21 +595,17 @@ 2024/11/17 | 7546908 | systems/texlive/tlnet/archive/pstricks.doc.r72868.tar.xz 2024/11/17 | 7521945 | fonts/newpx.zip 2024/11/17 | 75091 | systems/win32/miktex/tm/packages/next/miktex-ps2pk-bin-x64-2.9.tar.lzma -2024/11/17 | 7433 | systems/texlive/tlnet/tlpkg/installer/ctan-mirrors.pl 2024/11/17 | 73424 | systems/win32/miktex/tm/packages/next/miktex-graphite2-bin-x64-2.9.tar.lzma 2024/11/17 | 73384 | systems/win32/miktex/tm/packages/next/miktex-tex4ht-bin-x64-2.9.tar.lzma 2024/11/17 | 7203 | macros/latex/contrib/timeop/tex/timeop.sty 2024/11/17 | 71940 | systems/texlive/tlnet/archive/hduthesis.r72869.tar.xz 2024/11/17 | 711823 | graphics/mcf2graph/mcf_example.pdf -2024/11/17 | 711120 | install/macros/latex/contrib/biblatex-contrib/biblatex-ieee.tds.zip -2024/11/17 | 710430 | macros/latex/contrib/biblatex-contrib/biblatex-ieee.zip 2024/11/17 | 707755 | systems/win32/miktex/tm/packages/next/miktex-lcdf-typetools-bin-x64-2.9.tar.lzma 2024/11/17 | 699003 | systems/win32/miktex/tm/packages/next/miktex-harfbuzz-bin-x64-2.9.tar.lzma 2024/11/17 | 69808 | systems/win32/miktex/tm/packages/next/miktex-texify-bin-x64-2.9.tar.lzma 2024/11/17 | 67461 | systems/win32/miktex/tm/packages/next/miktex-bibarts-bin-x64-2.9.tar.lzma 2024/11/17 | 65129 | systems/win32/miktex/tm/packages/next/miktex-tdsutil-bin-x64.tar.lzma 2024/11/17 | 64577 | systems/win32/miktex/tm/packages/next/miktex-ttf2pk2-bin-x64-2.9.tar.lzma -2024/11/17 | 637 | macros/latex/contrib/biblatex-contrib/biblatex-ieee/README.md 2024/11/17 | 61078 | systems/win32/miktex/tm/packages/next/miktex-psutils-bin-x64-2.9.tar.lzma 2024/11/17 | 606847 | systems/win32/miktex/tm/packages/next/miktex-yap-bin-x64-2.9.tar.lzma 2024/11/17 | 602893 | systems/win32/miktex/tm/packages/next/miktex-libressl-bin-x64-2.9.tar.lzma @@ -509,7 +624,6 @@ 2024/11/17 | 481844 | macros/latex/contrib/zugferd/zugferd.pdf 2024/11/17 | 47371 | systems/win32/miktex/tm/packages/next/miktex-dvipng-bin-x64-2.9.tar.lzma 2024/11/17 | 473024 | systems/win32/miktex/tm/packages/next/miktex-doc.tar.lzma -2024/11/17 | 4712 | macros/latex/contrib/biblatex-contrib/biblatex-ieee/ieee-comp.cbx 2024/11/17 | 45906 | systems/win32/miktex/tm/packages/next/miktex-zlib-bin-x64-2.9.tar.lzma 2024/11/17 | 44348 | systems/win32/miktex/tm/packages/next/miktex-gsf2pk-bin-x64-2.9.tar.lzma 2024/11/17 | 44112 | systems/win32/miktex/tm/packages/next/miktex-upmendex-bin-x64.tar.lzma @@ -518,7 +632,6 @@ 2024/11/17 | 418728 | macros/latex/contrib/zugferd.zip 2024/11/17 | 40999 | macros/latex/contrib/zugferd/DEMO-rechnung-zugferd.pdf 2024/11/17 | 40385 | systems/win32/miktex/tm/packages/next/miktex-chktex-bin-x64-2.9.tar.lzma -2024/11/17 | 402718 | macros/latex/contrib/biblatex-contrib/biblatex-ieee/biblatex-ieee.pdf 2024/11/17 | 396915 | macros/latex/contrib/timeop/doc/timeop-doc.pdf 2024/11/17 | 395505 | systems/win32/miktex/tm/packages/next/miktex-cairo-bin-x64-2.9.tar.lzma 2024/11/17 | 394620 | macros/latex/contrib/timeop.zip @@ -542,15 +655,12 @@ 2024/11/17 | 31572 | systems/win32/miktex/tm/packages/next/miktex-bzip2-bin-x64-2.9.tar.lzma 2024/11/17 | 313 | macros/latex/contrib/zugferd/DEPENDS.txt 2024/11/17 | 305341 | systems/win32/miktex/tm/packages/next/miktex-freetype2-bin-x64-2.9.tar.lzma -2024/11/17 | 304596 | macros/latex/contrib/biblatex-contrib/biblatex-ieee/biblatex-ieee-alphabetic.pdf 2024/11/17 | 301 | macros/latex/contrib/timeop/README.md 2024/11/17 | 2943 | macros/latex/contrib/zugferd/DEMO-rechnung-zugferd.tex 2024/11/17 | 291549 | systems/win32/miktex/tm/packages/next/miktex-mo-bin-x64-2.9.tar.lzma 2024/11/17 | 29140 | systems/win32/miktex/tm/packages/next/miktex-findtexmf-bin-x64-2.9.tar.lzma 2024/11/17 | 287550 | systems/win32/miktex/tm/packages/next/miktex-metapost-bin-x64-2.9.tar.lzma 2024/11/17 | 2844431 | systems/win32/miktex/tm/packages/next/miktex-texworks-bin-x64-2.9.tar.lzma -2024/11/17 | 2782 | macros/latex/contrib/biblatex-contrib/biblatex-ieee/ieee-alphabetic.bbx -2024/11/17 | 2754 | macros/latex/contrib/biblatex-contrib/biblatex-ieee/biblatex-ieee-alphabetic.tex 2024/11/17 | 27375 | systems/win32/miktex/tm/packages/next/miktex-teckit-bin-x64-2.9.tar.lzma 2024/11/17 | 272070 | systems/win32/miktex/tm/packages/next/miktex-console-bin-x64-2.9.tar.lzma 2024/11/17 | 265070 | support/TeX4ht/source/ChangeLog @@ -558,20 +668,16 @@ 2024/11/17 | 25619 | systems/win32/miktex/tm/packages/next/miktex-devnag-bin-x64-2.9.tar.lzma 2024/11/17 | 25610 | systems/win32/miktex/tm/packages/next/miktex-fribidixetex-bin-x64-2.9.tar.lzma 2024/11/17 | 249251 | systems/win32/miktex/tm/packages/next/miktex-hitex-bin-x64.tar.lzma -2024/11/17 | 2468 | macros/latex/contrib/biblatex-contrib/biblatex-ieee/ieee.cbx 2024/11/17 | 245 | macros/latex/contrib/zugferd/zugferd.ins 2024/11/17 | 245916 | systems/win32/miktex/tm/packages/next/miktex-pmx-bin-x64-2.9.tar.lzma 2024/11/17 | 24157 | systems/win32/miktex/tm/packages/next/miktex-popt-bin-x64-2.9.tar.lzma 2024/11/17 | 232213 | systems/win32/miktex/tm/packages/next/miktex-metafont-bin-x64-2.9.tar.lzma -2024/11/17 | 2284 | macros/latex/contrib/biblatex-contrib/biblatex-ieee/magyar-ieee.lbx -2024/11/17 | 2277 | macros/latex/contrib/biblatex-contrib/biblatex-ieee/ieee-alphabetic.cbx 2024/11/17 | 221400 | systems/win32/miktex/tm/packages/next/miktex-curl-bin-x64-2.9.tar.lzma 2024/11/17 | 218786 | systems/win32/miktex/tm/packages/next/miktex-omegaware-bin-x64-2.9.tar.lzma 2024/11/17 | 217308 | systems/win32/miktex/tm/packages/next/miktex-hunspell-bin-x64-2.9.tar.lzma 2024/11/17 | 21652 | graphics/mcf2graph/CHANGELOG 2024/11/17 | 2144549 | systems/win32/miktex/tm/packages/next/miktex-zzdb2-2.9.tar.lzma 2024/11/17 | 2141800 | systems/win32/miktex/tm/packages/miktex-zzdb2-2.9.tar.lzma -2024/11/17 | 20319 | macros/latex/contrib/biblatex-contrib/biblatex-ieee/ieee.bbx 2024/11/17 | 203025 | systems/win32/miktex/tm/packages/next/miktex-pixman-bin-x64-2.9.tar.lzma 2024/11/17 | 2006583 | systems/win32/miktex/tm/packages/next/miktex-luatex-bin-x64-2.9.tar.lzma 2024/11/17 | 19987 | systems/win32/miktex/tm/packages/next/miktex-kpathsea-bin-x64-2.9.tar.lzma @@ -585,7 +691,6 @@ 2024/11/17 | 1539 | graphics/mcf2graph/mcf_exa_soc.mp 2024/11/17 | 1531085 | systems/win32/miktex/tm/packages/next/miktex-runtime-bin-x64-2.9.tar.lzma 2024/11/17 | 14595 | systems/win32/miktex/tm/packages/next/miktex-zzip-bin-x64-2.9.tar.lzma -2024/11/17 | 14508 | macros/latex/contrib/biblatex-contrib/biblatex-ieee/biblatex-ieee.bib 2024/11/17 | 1441840 | systems/win32/miktex/tm/packages/next/miktex-dvisvgm-bin-x64-2.9.tar.lzma 2024/11/17 | 1430 | macros/latex/contrib/zugferd/INSTALL.md 2024/11/17 | 141726 | systems/win32/miktex/tm/packages/next/miktex-mktex-bin-x64-2.9.tar.lzma @@ -614,43 +719,29 @@ 2024/11/16 | 9619 | systems/win32/miktex/tm/packages/bibcop.tar.lzma 2024/11/16 | 9578 | systems/win32/miktex/tm/packages/setspaceenhanced__source.tar.lzma 2024/11/16 | 9542 | macros/latex/contrib/zref-clever/CHANGELOG.md -2024/11/16 | 9503 | macros/xetex/latex/hduthesis/examples/figures/image-0439.png -2024/11/16 | 912 | macros/xetex/latex/hduthesis/examples/hduthesis-bc.tex 2024/11/16 | 91273 | systems/win32/miktex/tm/packages/enumext__source.tar.lzma 2024/11/16 | 90948 | systems/texlive/tlnet/archive/enumext.source.r72861.tar.xz -2024/11/16 | 907 | macros/xetex/latex/hduthesis/tex/hduthesis-font-module.code.tex 2024/11/16 | 886317 | macros/latex/contrib/zref-clever/zref-clever-code.pdf 2024/11/16 | 8758 | systems/win32/miktex/tm/packages/create-theorem__source.tar.lzma 2024/11/16 | 8520 | systems/win32/miktex/tm/packages/lettrine.tar.lzma 2024/11/16 | 8256 | systems/texlive/tlnet/archive/lettrine.r72860.tar.xz 2024/11/16 | 8104467 | graphics/pstricks/base.zip 2024/11/16 | 807 | macros/latex/contrib/zref-clever/README.md -2024/11/16 | 7825 | macros/xetex/latex/hduthesis/tex/hduthesis-pg.layout-module.code.tex -2024/11/16 | 7808 | macros/xetex/latex/hduthesis/tex/hduthesis.cls 2024/11/16 | 76349 | systems/win32/miktex/tm/packages/xltabular__doc.tar.lzma 2024/11/16 | 70 | macros/latex/contrib/zref-clever/DEPENDS.txt 2024/11/16 | 70990 | systems/win32/miktex/tm/packages/curve2e__source.tar.lzma 2024/11/16 | 68311 | systems/win32/miktex/tm/packages/siunitx.tar.lzma -2024/11/16 | 68184 | systems/texlive/tlnet/archive/siunitx.r72859.tar.xz -2024/11/16 | 6806 | macros/xetex/latex/hduthesis/examples/figures/image-0163.png 2024/11/16 | 6614 | systems/win32/miktex/tm/packages/bibcop__source.tar.lzma 2024/11/16 | 655110 | systems/win32/miktex/tm/packages/easybook__doc.tar.lzma -2024/11/16 | 653 | macros/xetex/latex/hduthesis/examples/cha/thanks.tex -2024/11/16 | 641681 | macros/xetex/latex/hduthesis/doc/hduthesis.pdf 2024/11/16 | 63295 | systems/win32/miktex/tm/packages/scaletextbullet__doc.tar.lzma -2024/11/16 | 6290 | macros/xetex/latex/hduthesis/examples/figures/image-0284.png 2024/11/16 | 6277 | systems/win32/miktex/tm/packages/naive-ebnf__source.tar.lzma 2024/11/16 | 621657 | systems/win32/miktex/tm/packages/multirow__doc.tar.lzma -2024/11/16 | 6151 | macros/xetex/latex/hduthesis/examples/hduthesis-pg.tex -2024/11/16 | 5961 | macros/xetex/latex/hduthesis/tex/hduthesis-bc.layout-module.code.tex 2024/11/16 | 5949 | systems/win32/miktex/tm/packages/biblatex-ieee.tar.lzma 2024/11/16 | 58254 | systems/win32/miktex/tm/packages/beamertheme-gotham__source.tar.lzma 2024/11/16 | 568622 | systems/win32/miktex/tm/packages/biblatex-ieee__doc.tar.lzma 2024/11/16 | 56160 | systems/win32/miktex/tm/packages/biblatex-gb7714-2015.tar.lzma 2024/11/16 | 55992 | systems/texlive/tlnet/archive/biblatex-gb7714-2015.r72863.tar.xz -2024/11/16 | 553 | macros/xetex/latex/hduthesis/README.md 2024/11/16 | 5481 | systems/win32/miktex/tm/packages/whatsnote.tar.lzma -2024/11/16 | 5429 | macros/xetex/latex/hduthesis/examples/cha/cha5.tex 2024/11/16 | 517550 | systems/win32/miktex/tm/packages/whatsnote__doc.tar.lzma 2024/11/16 | 509272 | systems/win32/miktex/tm/packages/naive-ebnf__doc.tar.lzma 2024/11/16 | 50659 | systems/win32/miktex/tm/packages/easybook__source.tar.lzma @@ -660,10 +751,6 @@ 2024/11/16 | 49506 | systems/win32/miktex/tm/packages/luamplib__source.tar.lzma 2024/11/16 | 49327 | systems/win32/miktex/tm/packages/postnotes__source.tar.lzma 2024/11/16 | 4871 | graphics/pstricks/base/Changes -2024/11/16 | 4828 | macros/xetex/latex/hduthesis/examples/cha/cha3.tex -2024/11/16 | 4712 | macros/xetex/latex/hduthesis/examples/figures/image-0236.png -2024/11/16 | 4666 | macros/xetex/latex/hduthesis/examples/cha/cha2.tex -2024/11/16 | 464981 | macros/xetex/latex/hduthesis/examples/hduthesis-bc.pdf 2024/11/16 | 4565 | systems/win32/miktex/tm/packages/scaletextbullet.tar.lzma 2024/11/16 | 455144 | systems/texlive/tlnet/archive/lettrine.doc.r72860.tar.xz 2024/11/16 | 4482 | systems/win32/miktex/tm/packages/xltabular__source.tar.lzma @@ -677,7 +764,6 @@ 2024/11/16 | 3717 | systems/win32/miktex/tm/packages/ezedits__source.tar.lzma 2024/11/16 | 359398 | systems/win32/miktex/tm/packages/nodepthtext__doc.tar.lzma 2024/11/16 | 35342 | macros/generic/tuple/tuple.tex -2024/11/16 | 3509 | macros/xetex/latex/hduthesis/examples/cha/abstract.tex 2024/11/16 | 33657 | systems/win32/miktex/tm/packages/bxcoloremoji.tar.lzma 2024/11/16 | 3282 | systems/win32/miktex/tm/packages/ezedits.tar.lzma 2024/11/16 | 3232 | macros/latex/contrib/zref-clever/zref-clever.ins @@ -689,11 +775,9 @@ 2024/11/16 | 30250 | systems/win32/miktex/tm/packages/bxcoloremoji__source.tar.lzma 2024/11/16 | 3020 | systems/win32/miktex/tm/packages/multirow.tar.lzma 2024/11/16 | 29961 | macros/generic/tuple/tuple-doc-en.tex -2024/11/16 | 29096 | macros/xetex/latex/hduthesis/tex/hdulogo.pdf 2024/11/16 | 280591 | systems/win32/miktex/tm/packages/luamplib__doc.tar.lzma 2024/11/16 | 28051 | systems/win32/miktex/tm/packages/nlctdoc.tar.lzma 2024/11/16 | 27907 | systems/win32/miktex/tm/packages/aomart__source.tar.lzma -2024/11/16 | 2697 | macros/xetex/latex/hduthesis/examples/cha/cha6.tex 2024/11/16 | 2670 | systems/win32/miktex/tm/packages/naive-ebnf.tar.lzma 2024/11/16 | 2669588 | systems/win32/miktex/tm/packages/bxcoloremoji__doc.tar.lzma 2024/11/16 | 258329 | systems/win32/miktex/tm/packages/whatsnote__source.tar.lzma @@ -703,35 +787,26 @@ 2024/11/16 | 25636 | systems/texlive/tlnet/archive/enumext.r72861.tar.xz 2024/11/16 | 234144 | systems/win32/miktex/tm/packages/rebuttal__source.tar.lzma 2024/11/16 | 2335 | systems/win32/miktex/tm/packages/stocksize__source.tar.lzma -2024/11/16 | 2283 | macros/xetex/latex/hduthesis/examples/reference.bib 2024/11/16 | 22712 | systems/texlive/tlnet/archive/aomart.source.r72865.tar.xz 2024/11/16 | 22613 | systems/win32/miktex/tm/packages/lettrine__source.tar.lzma 2024/11/16 | 2248877 | systems/win32/miktex/tm/packages/beamertheme-gotham__doc.tar.lzma 2024/11/16 | 223588 | macros/latex/contrib/zref-clever/zref-clever-doc.pdf 2024/11/16 | 22323 | systems/win32/miktex/tm/packages/mcf2graph.tar.lzma 2024/11/16 | 222135 | systems/win32/miktex/tm/packages/calculatoritems__doc.tar.lzma -2024/11/16 | 22109 | macros/xetex/latex/hduthesis/tex/hdubadge.pdf 2024/11/16 | 2194 | systems/win32/miktex/tm/packages/setspaceenhanced.tar.lzma -2024/11/16 | 2125 | macros/xetex/latex/hduthesis/examples/cha/cha1.tex -2024/11/16 | 21089 | macros/xetex/latex/hduthesis/tex/hdumotto.pdf 2024/11/16 | 2081 | macros/latex/contrib/easybook/easybook.ins 2024/11/16 | 20753 | systems/win32/miktex/tm/packages/multirow__source.tar.lzma 2024/11/16 | 2068736 | systems/win32/miktex/tm/packages/nicematrix__doc.tar.lzma -2024/11/16 | 2024 | macros/xetex/latex/hduthesis/tex/hduthesis-unv.layout-module.code.tex 2024/11/16 | 20106 | systems/win32/miktex/tm/packages/beamertheme-gotham.tar.lzma 2024/11/16 | 19887 | systems/win32/miktex/tm/packages/easybook.tar.lzma 2024/11/16 | 19418 | systems/win32/miktex/tm/packages/keytheorems.tar.lzma 2024/11/16 | 19149 | systems/win32/miktex/tm/packages/minted.tar.lzma -2024/11/16 | 19101 | macros/xetex/latex/hduthesis/License -2024/11/16 | 18951 | macros/xetex/latex/hduthesis/examples/figures/image-0145.png 2024/11/16 | 176972 | systems/win32/miktex/tm/packages/nicematrix__source.tar.lzma -2024/11/16 | 17271 | macros/xetex/latex/hduthesis/examples/figures/image-0289.png 2024/11/16 | 1715 | systems/win32/miktex/tm/packages/stocksize.tar.lzma 2024/11/16 | 1642 | systems/win32/miktex/tm/packages/xltabular.tar.lzma 2024/11/16 | 164276 | systems/texlive/tlnet/archive/beamertheme-rainbow.doc.r72864.tar.xz 2024/11/16 | 1635 | macros/latex/contrib/zref-clever/zref-clever-code.tex 2024/11/16 | 162438 | systems/win32/miktex/tm/packages/keytheorems__doc.tar.lzma -2024/11/16 | 1616 | macros/xetex/latex/hduthesis/examples/cha/cha7.tex 2024/11/16 | 1610872 | systems/texlive/tlnet/archive/biblatex-gb7714-2015.doc.r72863.tar.xz 2024/11/16 | 1599906 | systems/win32/miktex/tm/packages/enumext__doc.tar.lzma 2024/11/16 | 1599180 | systems/texlive/tlnet/archive/enumext.doc.r72861.tar.xz @@ -739,40 +814,30 @@ 2024/11/16 | 156216 | systems/win32/miktex/tm/packages/glossaries__source.tar.lzma 2024/11/16 | 15392 | systems/texlive/tlnet/archive/lettrine.source.r72860.tar.xz 2024/11/16 | 1516091 | systems/win32/miktex/tm/packages/biblatex-gb7714-2015__doc.tar.lzma -2024/11/16 | 15107 | macros/xetex/latex/hduthesis/examples/cha/cha4.tex 2024/11/16 | 148764 | macros/generic/tuple/tuple-doc-fr.pdf -2024/11/16 | 14808 | macros/xetex/latex/hduthesis/examples/figures/image-0162.png -2024/11/16 | 147516 | macros/xetex/latex/hduthesis/examples/hduthesis-pg.pdf 2024/11/16 | 147364 | systems/texlive/tlnet/archive/luaxml.doc.r72858.tar.xz 2024/11/16 | 147030 | macros/generic/tuple/tuple-doc-en.pdf -2024/11/16 | 1439470 | macros/xetex/latex/hduthesis.zip 2024/11/16 | 14152 | systems/win32/miktex/tm/packages/aomart.tar.lzma 2024/11/16 | 1408 | macros/generic/tuple/README 2024/11/16 | 13856 | systems/texlive/tlnet/archive/aomart.r72865.tar.xz 2024/11/16 | 136404 | systems/win32/miktex/tm/packages/luaxml__doc.tar.lzma 2024/11/16 | 136192 | systems/win32/miktex/tm/packages/ezedits__doc.tar.lzma -2024/11/16 | 13508 | macros/xetex/latex/hduthesis/examples/figures/image-0419.png -2024/11/16 | 13350 | macros/xetex/latex/hduthesis/examples/figures/image-0440.png 2024/11/16 | 13339 | systems/win32/miktex/tm/packages/keytheorems__source.tar.lzma 2024/11/16 | 1328 | systems/texlive/tlnet/archive/beamertheme-rainbow.r72864.tar.xz 2024/11/16 | 1321 | macros/generic/tuple/tuple.sty 2024/11/16 | 1306113 | systems/win32/miktex/tm/packages/minted__source.tar.lzma 2024/11/16 | 1293 | systems/win32/miktex/tm/packages/nodepthtext.tar.lzma 2024/11/16 | 1289959 | systems/win32/miktex/tm/packages/siunitx__doc.tar.lzma -2024/11/16 | 1286888 | systems/texlive/tlnet/archive/siunitx.doc.r72859.tar.xz 2024/11/16 | 127122 | graphics/pstricks/base/generic/pstricks.tex 2024/11/16 | 1260157 | systems/win32/miktex/tm/packages/curve2e__doc.tar.lzma 2024/11/16 | 125569 | macros/latex/contrib/zref-clever/zref-clever-doc.tex 2024/11/16 | 1255528 | systems/texlive/tlnet/archive/aomart.doc.r72865.tar.xz 2024/11/16 | 1251599 | systems/win32/miktex/tm/packages/aomart__doc.tar.lzma -2024/11/16 | 123980 | systems/texlive/tlnet/archive/siunitx.source.r72859.tar.xz 2024/11/16 | 123919 | systems/win32/miktex/tm/packages/siunitx__source.tar.lzma 2024/11/16 | 12070 | systems/win32/miktex/tm/packages/luaxml__source.tar.lzma 2024/11/16 | 1183029 | install/macros/latex/contrib/zref-clever.tds.zip 2024/11/16 | 11443584 | systems/win32/miktex/tm/packages/glossaries__doc.tar.lzma -2024/11/16 | 11282 | macros/xetex/latex/hduthesis/examples/figures/image-0285.png 2024/11/16 | 11187 | systems/win32/miktex/tm/packages/curve2e.tar.lzma -2024/11/16 | 11158 | macros/xetex/latex/hduthesis/doc/hduthesis.tex 2024/11/16 | 11157 | systems/win32/miktex/tm/packages/postnotes.tar.lzma 2024/11/16 | 110938 | systems/win32/miktex/tm/packages/stocksize__doc.tar.lzma 2024/11/16 | 1106 | systems/win32/miktex/tm/packages/nlctdoc__doc.tar.lzma @@ -807,6 +872,7 @@ 2024/11/15 | 24113 | macros/luatex/generic/luaxml/luaxml-domobject.lua 2024/11/15 | 226 | macros/latex/contrib/turnthepage/turnthepage-bib.bib 2024/11/15 | 2265 | macros/luatex/generic/luaxml/luaxml-pretty.lua +2024/11/15 | 2205 | macros/latex/contrib/fancyhdr/fancyhdr.ins 2024/11/15 | 219065 | macros/latex/contrib/aomart/aomfrench.pdf 2024/11/15 | 2168 | macros/luatex/generic/luaxml/luaxml-parse-query.lua 2024/11/15 | 208383 | macros/luatex/generic/luaxml.zip @@ -874,7 +940,6 @@ 2024/11/14 | 9328 | graphics/asymptote/doc/FAQ/bfnnconv.pl 2024/11/14 | 930 | graphics/asymptote/examples/polararea.asy 2024/11/14 | 926 | graphics/asymptote/runfile.h -2024/11/14 | 92504 | systems/texlive/tlnet/archive/nicematrix.source.r72844.tar.xz 2024/11/14 | 922 | graphics/asymptote/doc/imagecontour.asy 2024/11/14 | 9220 | graphics/asymptote/cmake-scripts/external-libs.cmake 2024/11/14 | 920 | graphics/asymptote/makeUnique.h @@ -915,7 +980,6 @@ 2024/11/14 | 856 | graphics/asymptote/examples/animations/sphere.asy 2024/11/14 | 8519 | graphics/asymptote/cudareflect/ReflectanceMapper.cu 2024/11/14 | 848 | graphics/asymptote/base/shaders/sum2.glsl -2024/11/14 | 84660 | macros/latex/contrib/aomart/aomart.dtx 2024/11/14 | 845 | graphics/asymptote/envcompleter.h 2024/11/14 | 843 | graphics/asymptote/tests/arith/integer.asy 2024/11/14 | 8439 | graphics/asymptote/runpath.in @@ -1092,9 +1156,7 @@ 2024/11/14 | 620 | graphics/asymptote/GUI/res/icons/android-done.svg 2024/11/14 | 62096 | macros/latex/contrib/postnotes/postnotes-doc.tex 2024/11/14 | 6204 | systems/texlive/tlnet/archive/bibcop.source.r72840.tar.xz -2024/11/14 | 62012 | macros/latex/contrib/aomart/aomsample1.tex 2024/11/14 | 61 | graphics/asymptote/examples/axialshade.asy -2024/11/14 | 61900 | macros/latex/contrib/aomart/aomsample.tex 2024/11/14 | 617 | graphics/asymptote/doc/logo.asy 2024/11/14 | 616 | graphics/asymptote/examples/Gouraudcontour.asy 2024/11/14 | 616 | graphics/asymptote/cudareflect/CMakeLists.txt @@ -1283,7 +1345,6 @@ 2024/11/14 | 427 | graphics/asymptote/examples/projectrevolution.asy 2024/11/14 | 426 | graphics/asymptote/examples/pathintersectsurface.asy 2024/11/14 | 426 | graphics/asymptote/doc/grid3xyz.asy -2024/11/14 | 42504 | systems/texlive/tlnet/archive/nicematrix.r72844.tar.xz 2024/11/14 | 424 | graphics/asymptote/examples/spiral3.asy 2024/11/14 | 4244 | graphics/asymptote/examples/fin.asy 2024/11/14 | 4242 | graphics/asymptote/tests/types/keyword.asy @@ -1609,7 +1670,6 @@ 2024/11/14 | 2164 | macros/latex/contrib/enumext/README.md 2024/11/14 | 2164 | graphics/asymptote/frame.h 2024/11/14 | 2164 | graphics/asymptote/examples/splitpatch.asy -2024/11/14 | 2159472 | systems/texlive/tlnet/archive/nicematrix.doc.r72844.tar.xz 2024/11/14 | 2146 | graphics/asymptote/abs3doutfile.h 2024/11/14 | 21448 | graphics/asymptote/base/feynman.asy 2024/11/14 | 2134 | graphics/asymptote/drawlabel.h @@ -1991,53 +2051,3 @@ 2024/11/14 | 1000 | graphics/asymptote/GUI/res/icons/chevron-with-circle-left.svg 2024/11/14 | 1000 | graphics/asymptote/doc/FAQ/Makefile 2024/11/14 | 10006 | graphics/asymptote/base/rationalSimplex.asy -2024/11/13 | 958 | biblio/bibtex/utils/bibcop/bibcop.1 -2024/11/13 | 92101 | macros/latex/contrib/curve2e/curve2e-manual.tex -2024/11/13 | 8438 | macros/latex/contrib/ezedits/ezedits.sty -2024/11/13 | 8362 | macros/latex/contrib/ezedits/ezedits_docs.tex -2024/11/13 | 81622 | macros/latex/contrib/xltabular.zip -2024/11/13 | 77022 | macros/latex/contrib/xltabular/xltabular-doc.pdf -2024/11/13 | 725293 | macros/latex/contrib/curve2e/curve2e.pdf -2024/11/13 | 706 | macros/latex/contrib/xltabular/Changes -2024/11/13 | 67636 | systems/texlive/tlnet/archive/scaletextbullet.doc.r72834.tar.xz -2024/11/13 | 652998 | macros/latex/contrib/curve2e/curve2e-manual.pdf -2024/11/13 | 619420 | systems/texlive/tlnet/archive/multirow.doc.r72833.tar.xz -2024/11/13 | 6055 | macros/latex/contrib/curve2e/README.txt -2024/11/13 | 593012 | macros/latex/contrib/naive-ebnf/naive-ebnf.pdf -2024/11/13 | 560352 | macros/latex/contrib/naive-ebnf.zip -2024/11/13 | 5100 | biblio/bibtex/utils/bibcop/bibcop-logo.pdf -2024/11/13 | 49044 | systems/texlive/tlnet/archive/luamplib.source.r72835.tar.xz -2024/11/13 | 4441 | macros/latex/contrib/stocksize/stocksize-doc.tex -2024/11/13 | 31418 | biblio/bibtex/utils/bibcop/bibcop.pl -2024/11/13 | 3109 | biblio/bibtex/utils/bibcop/README.md -2024/11/13 | 3040 | macros/latex/contrib/xltabular/xltabular-example.inp -2024/11/13 | 2824 | systems/texlive/tlnet/archive/multirow.r72833.tar.xz -2024/11/13 | 280172 | systems/texlive/tlnet/archive/luamplib.doc.r72835.tar.xz -2024/11/13 | 275983 | biblio/bibtex/utils/bibcop.zip -2024/11/13 | 266502 | biblio/bibtex/utils/bibcop/bibcop.pdf -2024/11/13 | 2640 | macros/latex/contrib/naive-ebnf/naive-ebnf.ins -2024/11/13 | 2628 | biblio/bibtex/utils/bibcop/bibcop.ins -2024/11/13 | 25396 | systems/texlive/tlnet/archive/luamplib.r72835.tar.xz -2024/11/13 | 2479 | macros/latex/contrib/stocksize/stocksize.sty -2024/11/13 | 2478 | macros/latex/contrib/ezedits/README.md -2024/11/13 | 2390 | macros/latex/contrib/stocksize/README.md -2024/11/13 | 237 | macros/latex/contrib/xltabular/xltabular-example.tex -2024/11/13 | 2139 | macros/latex/contrib/xltabular/xltabular.sty -2024/11/13 | 211 | biblio/bibtex/utils/bibcop/DEPENDS.txt -2024/11/13 | 2096 | systems/texlive/tlnet/archive/scaletextbullet.r72834.tar.xz -2024/11/13 | 208 | macros/latex/contrib/naive-ebnf/DEPENDS.txt -2024/11/13 | 20368 | systems/texlive/tlnet/archive/multirow.source.r72833.tar.xz -2024/11/13 | 197674 | macros/latex/contrib/curve2e/curve2e.dtx -2024/11/13 | 19344 | systems/texlive/tlnet/archive/keytheorems.r72832.tar.xz -2024/11/13 | 174292 | systems/texlive/tlnet/archive/keytheorems.doc.r72832.tar.xz -2024/11/13 | 17088 | macros/latex/contrib/naive-ebnf/naive-ebnf.dtx -2024/11/13 | 16186 | biblio/bibtex/utils/bibcop/bibcop.dtx -2024/11/13 | 15548 | systems/texlive/tlnet/archive/create-theorem.r72830.tar.xz -2024/11/13 | 153308 | macros/latex/contrib/ezedits/ezedits_docs.pdf -2024/11/13 | 1493 | macros/latex/contrib/naive-ebnf/README.md -2024/11/13 | 1440838 | macros/latex/contrib/curve2e.zip -2024/11/13 | 142593 | macros/latex/contrib/ezedits.zip -2024/11/13 | 112266 | macros/latex/contrib/stocksize/stocksize-doc.pdf -2024/11/13 | 1083 | macros/latex/contrib/naive-ebnf/LICENSE.txt -2024/11/13 | 1083 | biblio/bibtex/utils/bibcop/LICENSE.txt -2024/11/13 | 104488 | systems/texlive/tlnet/archive/create-theorem.doc.r72830.tar.xz diff --git a/biblio/ctan-bibdata/ctan.bib b/biblio/ctan-bibdata/ctan.bib index 2baec0ea4b..a2aa86e2c4 100644 --- a/biblio/ctan-bibdata/ctan.bib +++ b/biblio/ctan-bibdata/ctan.bib @@ -1,7 +1,7 @@ %% bib file of all CTAN packages %% (C) Herbert Voß %% -%% created at 19-11-2024, 02:00:02 +%% created at 20-11-2024, 02:00:02 %% %% This file is provided under the terms of the LPPL v1.3 or @@ -2269,6 +2269,17 @@ url = {https://ctan.org/pkg/andika}, } +@manual{ctan-anima, + title = {The \texttt{anima} package}, + subtitle = {Create slideshows with simple animations}, + author = {Adriano Gomes de Santana}, + date = {2024-11-19}, + version = {1.0}, + license = {lppl1.3c}, + mirror = {https://mirror.ctan.org/macros/latex/contrib/anima}, + url = {https://ctan.org/pkg/anima}, +} + @manual{ctan-animate, title = {The \texttt{animate} package}, subtitle = {Create PDF and SVG animations from graphics files and inline graphics}, @@ -24861,7 +24872,7 @@ title = {The \texttt{extractbb} package}, subtitle = {A reimplementation of extractbb, written in Lua}, author = {Max Chernoff}, - date = {2024-11-18}, + date = {2024-11-19}, version = {1.0.0}, license = {other-free,cc-by-sa-4}, mirror = {https://mirror.ctan.org/support/extractbb}, @@ -36523,8 +36534,8 @@ title = {The \texttt{jpneduenumerate} package}, subtitle = {Enumerative expressions in Japanese education}, author = {Yukoh Kusakabe}, - date = {2022-07-15}, - version = {1.2}, + date = {2024-11-19}, + version = {1.3}, license = {mit}, mirror = {https://mirror.ctan.org/macros/latex/contrib/jpneduenumerate}, url = {https://ctan.org/pkg/jpneduenumerate}, @@ -49918,8 +49929,8 @@ title = {The \texttt{nicematrix} package}, subtitle = {Improve the typesetting of mathematical matrices with PGF}, author = {François Pantigny}, - date = {2024-11-12}, - version = {6.29b}, + date = {2024-11-19}, + version = {7.0}, license = {lppl1.3}, mirror = {https://mirror.ctan.org/macros/latex/contrib/nicematrix}, url = {https://ctan.org/pkg/nicematrix}, @@ -64783,8 +64794,8 @@ title = {The \texttt{siunitx} package}, subtitle = {A comprehensive (SI) units package}, author = {Joseph Wright}, - date = {2024-11-15}, - version = {3.3.23}, + date = {2024-11-19}, + version = {3.3.24}, license = {lppl1.3c}, mirror = {https://mirror.ctan.org/macros/latex/contrib/siunitx}, url = {https://ctan.org/pkg/siunitx}, @@ -68396,8 +68407,8 @@ title = {The \texttt{tagpdf} package}, subtitle = {Code for PDF tagging using pdfLaTeX and LuaLaTeX}, author = {{The LaTeX Project Team} and Ulrike Fischer}, - date = {2024-10-28}, - version = {0.99g}, + date = {2024-11-19}, + version = {0.99h}, license = {lppl1.3c}, mirror = {https://mirror.ctan.org/macros/latex/contrib/tagpdf}, url = {https://ctan.org/pkg/tagpdf}, @@ -74392,7 +74403,7 @@ title = {The \texttt{tuple} package}, subtitle = {Expandable operations for tuples of numbers}, author = {Christian Tellechea}, - date = {2024-11-17}, + date = {2024-11-19}, version = {0.1}, license = {lppl1.3c}, mirror = {https://mirror.ctan.org/macros/generic/tuple}, @@ -74475,11 +74486,11 @@ @manual{ctan-turnthepage, title = {The \texttt{turnthepage} package}, - subtitle = {Provide "turn page" instructions}, - author = {Luca Merciadri}, - date = {2016-06-24}, - version = {1.3a}, - license = {lppl}, + subtitle = {Provide “turn page” instructions}, + author = {Luca Merciadri and Hans-Martin Münch}, + date = {2024-11-19}, + version = {2.0a}, + license = {lppl1.3c}, mirror = {https://mirror.ctan.org/macros/latex/contrib/turnthepage}, url = {https://ctan.org/pkg/turnthepage}, } @@ -78000,8 +78011,8 @@ title = {The \texttt{wargame} package}, subtitle = {A \LaTeX{} package to prepare hex’n’counter wargames}, author = {Christian Holm Christensen}, - date = {2024-02-03}, - version = {0.6}, + date = {2024-11-19}, + version = {0.8}, license = {cc-by-sa-4}, mirror = {https://mirror.ctan.org/macros/latex/contrib/wargame}, url = {https://ctan.org/pkg/wargame}, diff --git a/macros/latex/contrib/beamer-contrib/themes/beamertheme-gotham/gotham-dev-impl.pdf b/macros/latex/contrib/beamer-contrib/themes/beamertheme-gotham/gotham-dev-impl.pdf Binary files differindex 5935d8cdc0..6048764ed7 100644 --- a/macros/latex/contrib/beamer-contrib/themes/beamertheme-gotham/gotham-dev-impl.pdf +++ b/macros/latex/contrib/beamer-contrib/themes/beamertheme-gotham/gotham-dev-impl.pdf diff --git a/macros/latex/contrib/beamer-contrib/themes/beamertheme-gotham/gotham-doc.pdf b/macros/latex/contrib/beamer-contrib/themes/beamertheme-gotham/gotham-doc.pdf Binary files differindex a614d618b7..a0feb18939 100644 --- a/macros/latex/contrib/beamer-contrib/themes/beamertheme-gotham/gotham-doc.pdf +++ b/macros/latex/contrib/beamer-contrib/themes/beamertheme-gotham/gotham-doc.pdf diff --git a/macros/latex/contrib/beamer-contrib/themes/beamertheme-gotham/gotham-example169transp.pdf b/macros/latex/contrib/beamer-contrib/themes/beamertheme-gotham/gotham-example169transp.pdf Binary files differindex 9d8edbdab6..4d61d952ce 100644 --- a/macros/latex/contrib/beamer-contrib/themes/beamertheme-gotham/gotham-example169transp.pdf +++ b/macros/latex/contrib/beamer-contrib/themes/beamertheme-gotham/gotham-example169transp.pdf diff --git a/macros/latex/contrib/beamer-contrib/themes/beamertheme-gotham/gotham-example43dark.pdf b/macros/latex/contrib/beamer-contrib/themes/beamertheme-gotham/gotham-example43dark.pdf Binary files differindex 0de5e0f8a3..e5eca50334 100644 --- a/macros/latex/contrib/beamer-contrib/themes/beamertheme-gotham/gotham-example43dark.pdf +++ b/macros/latex/contrib/beamer-contrib/themes/beamertheme-gotham/gotham-example43dark.pdf diff --git a/macros/latex/contrib/beamer-contrib/themes/beamertheme-gotham/gotham-exampleSimple.pdf b/macros/latex/contrib/beamer-contrib/themes/beamertheme-gotham/gotham-exampleSimple.pdf Binary files differindex c9d77a620d..beebdfbb2c 100644 --- a/macros/latex/contrib/beamer-contrib/themes/beamertheme-gotham/gotham-exampleSimple.pdf +++ b/macros/latex/contrib/beamer-contrib/themes/beamertheme-gotham/gotham-exampleSimple.pdf diff --git a/macros/latex/contrib/beamer-contrib/themes/beamertheme-gotham/gotham-user-cmds.pdf b/macros/latex/contrib/beamer-contrib/themes/beamertheme-gotham/gotham-user-cmds.pdf Binary files differindex bac7e4525e..fe77dd5a17 100644 --- a/macros/latex/contrib/beamer-contrib/themes/beamertheme-gotham/gotham-user-cmds.pdf +++ b/macros/latex/contrib/beamer-contrib/themes/beamertheme-gotham/gotham-user-cmds.pdf diff --git a/macros/latex/contrib/beamer-contrib/themes/beamertheme-gotham/gotham.dtx b/macros/latex/contrib/beamer-contrib/themes/beamertheme-gotham/gotham.dtx index 1f19e92f20..896f9ce977 100644 --- a/macros/latex/contrib/beamer-contrib/themes/beamertheme-gotham/gotham.dtx +++ b/macros/latex/contrib/beamer-contrib/themes/beamertheme-gotham/gotham.dtx @@ -4738,7 +4738,7 @@ % \TestFiles{gotham-test-043} % \begin{macrocode} \defbeamertemplate*{itemize~item}{gotham}{%\textbullet} - \Large + \large \setbeamertemplate{itemize~item}[circle] \usebeamertemplate{itemize~item} } diff --git a/macros/latex/contrib/beamer-contrib/themes/beamertheme-gotham/gotham.pdf b/macros/latex/contrib/beamer-contrib/themes/beamertheme-gotham/gotham.pdf Binary files differindex 668b4b1431..63fa4d5eb4 100644 --- a/macros/latex/contrib/beamer-contrib/themes/beamertheme-gotham/gotham.pdf +++ b/macros/latex/contrib/beamer-contrib/themes/beamertheme-gotham/gotham.pdf diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-ieee/biblatex-ieee-alphabetic.pdf b/macros/latex/contrib/biblatex-contrib/biblatex-ieee/biblatex-ieee-alphabetic.pdf Binary files differindex a0d8744208..b971b2f418 100644 --- a/macros/latex/contrib/biblatex-contrib/biblatex-ieee/biblatex-ieee-alphabetic.pdf +++ b/macros/latex/contrib/biblatex-contrib/biblatex-ieee/biblatex-ieee-alphabetic.pdf diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-ieee/biblatex-ieee-alphabetic.tex b/macros/latex/contrib/biblatex-contrib/biblatex-ieee/biblatex-ieee-alphabetic.tex index 954e809ef6..92335ca82d 100644 --- a/macros/latex/contrib/biblatex-contrib/biblatex-ieee/biblatex-ieee-alphabetic.tex +++ b/macros/latex/contrib/biblatex-contrib/biblatex-ieee/biblatex-ieee-alphabetic.tex @@ -24,8 +24,8 @@ \href{mailto:joseph@texdev.net} {\texttt{joseph@texdev.net}}}} \title{The \pkg{ieee-alphabetic} bibliography style for \pkg{biblatex}% - \footnote{This file describes v1.4a, last revised 2024-11-17.}} -\date{Released 2024-11-17} + \footnote{This file describes v1.4b, last revised 2024-11-20.}} +\date{Released 2024-11-20} \providecommand*{\pkg}[1]{\textsf{#1}} diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-ieee/biblatex-ieee.pdf b/macros/latex/contrib/biblatex-contrib/biblatex-ieee/biblatex-ieee.pdf Binary files differindex c39aa43051..86676535fb 100644 --- a/macros/latex/contrib/biblatex-contrib/biblatex-ieee/biblatex-ieee.pdf +++ b/macros/latex/contrib/biblatex-contrib/biblatex-ieee/biblatex-ieee.pdf diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-ieee/biblatex-ieee.tex b/macros/latex/contrib/biblatex-contrib/biblatex-ieee/biblatex-ieee.tex index 9aefc79c82..cc4c811bb3 100644 --- a/macros/latex/contrib/biblatex-contrib/biblatex-ieee/biblatex-ieee.tex +++ b/macros/latex/contrib/biblatex-contrib/biblatex-ieee/biblatex-ieee.tex @@ -24,8 +24,8 @@ \href{mailto:joseph@texdev.net} {\texttt{joseph@texdev.net}}}} \title{The \pkg{ieee} bibliography style for \pkg{biblatex}% - \footnote{This file describes v1.4a, last revised 2024-11-17.}} -\date{Released 2024-11-17} + \footnote{This file describes v1.4b, last revised 2024-11-20.}} +\date{Released 2024-11-20} \providecommand*{\opt}[1]{\texttt{#1}} \providecommand*{\pkg}[1]{\textsf{#1}} diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-ieee/ieee-alphabetic.bbx b/macros/latex/contrib/biblatex-contrib/biblatex-ieee/ieee-alphabetic.bbx index cc7860b87c..97846e05a7 100644 --- a/macros/latex/contrib/biblatex-contrib/biblatex-ieee/ieee-alphabetic.bbx +++ b/macros/latex/contrib/biblatex-contrib/biblatex-ieee/ieee-alphabetic.bbx @@ -8,7 +8,7 @@ %% --------------------------------------------------------------- %% -\ProvidesFile{ieee-alphabetic.bbx}[2024-11-17 v1.4a biblatex bibliography style] +\ProvidesFile{ieee-alphabetic.bbx}[2024-11-20 v1.4b biblatex bibliography style] \RequireBibliographyStyle{ieee} diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-ieee/ieee-alphabetic.cbx b/macros/latex/contrib/biblatex-contrib/biblatex-ieee/ieee-alphabetic.cbx index 17b5d1841d..4ad67d08ac 100644 --- a/macros/latex/contrib/biblatex-contrib/biblatex-ieee/ieee-alphabetic.cbx +++ b/macros/latex/contrib/biblatex-contrib/biblatex-ieee/ieee-alphabetic.cbx @@ -8,7 +8,7 @@ %% --------------------------------------------------------------- %% -\ProvidesFile{ieee-alphabetic.cbx}[2024-11-17 v1.4a biblatex citation style] +\ProvidesFile{ieee-alphabetic.cbx}[2024-11-20 v1.4b biblatex citation style] \RequireCitationStyle{alphabetic} diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-ieee/ieee-comp.cbx b/macros/latex/contrib/biblatex-contrib/biblatex-ieee/ieee-comp.cbx index 7d21ec80a1..4fd285202e 100644 --- a/macros/latex/contrib/biblatex-contrib/biblatex-ieee/ieee-comp.cbx +++ b/macros/latex/contrib/biblatex-contrib/biblatex-ieee/ieee-comp.cbx @@ -8,7 +8,7 @@ %% --------------------------------------------------------------- %% -\ProvidesFile{ieee-comp.cbx}[2024-11-17 v1.4a biblatex citation style] +\ProvidesFile{ieee-comp.cbx}[2024-11-20 v1.4b biblatex citation style] \RequireCitationStyle{numeric-comp} diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-ieee/ieee.bbx b/macros/latex/contrib/biblatex-contrib/biblatex-ieee/ieee.bbx index e232763e4c..8d5de1ea2e 100644 --- a/macros/latex/contrib/biblatex-contrib/biblatex-ieee/ieee.bbx +++ b/macros/latex/contrib/biblatex-contrib/biblatex-ieee/ieee.bbx @@ -8,7 +8,7 @@ %% --------------------------------------------------------------- %% -\ProvidesFile{ieee.bbx}[2024-11-17 v1.4a biblatex bibliography style] +\ProvidesFile{ieee.bbx}[2024-11-20 v1.4b biblatex bibliography style] % Load the standard style to avoid copy-pasting unnecessary material \RequireBibliographyStyle{numeric-comp} diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-ieee/ieee.cbx b/macros/latex/contrib/biblatex-contrib/biblatex-ieee/ieee.cbx index 48ca3358f3..06d01b9236 100644 --- a/macros/latex/contrib/biblatex-contrib/biblatex-ieee/ieee.cbx +++ b/macros/latex/contrib/biblatex-contrib/biblatex-ieee/ieee.cbx @@ -8,47 +8,17 @@ %% --------------------------------------------------------------- %% -\ProvidesFile{ieee.cbx}[2024-11-17 v1.4a biblatex citation style] +\ProvidesFile{ieee.cbx}[2024-11-20 v1.4b biblatex citation style] -\RequireCitationStyle{numeric} +\RequireCitationStyle{numeric-verb} \ExecuteBibliographyOptions{ maxcitenames = 2, minnames = 1, + sortcites, sorting = none } -\DeclareCiteCommand{\cite}%[\mkbibbrackets] - {\usebibmacro{prenote}} - {\usebibmacro{citeindex}% - \usebibmacro{cite}} - {\multicitedelim} - {\usebibmacro{postnote}} - -\renewbibmacro*{cite}{% - \mkbibbrackets{% - \printtext[bibhyperref]{% - \printfield{labelprefix}% - \printfield{labelnumber}% - \ifbool{bbx:subentry} - {\printfield{entrysetcount}} - {}}}} - -\renewbibmacro*{textcite}{% - \iffieldequals{namehash}{\cbx@lasthash} - {\setunit{\multicitedelim}} - {\ifnameundef{labelname} - {\printfield[citetitle]{labeltitle}} - {\printnames{labelname}}% - \stepcounter{textcitecount}% - \savefield{namehash}{\cbx@lasthash}}% - \ifnumequal{\value{citecount}}{1} - {\usebibmacro{prenote}} - {}% - \printtext{\printdelim{namelabeldelim}}% - \usebibmacro{cite}% - \setunit{\textcitedelim}} - %% %% Copyright (C) 2011-2013,2015-2021,2024 by %% Joseph Wright <joseph@texdev.net> diff --git a/macros/latex/contrib/codehigh/codehigh.pdf b/macros/latex/contrib/codehigh/codehigh.pdf Binary files differindex 21c152b571..a30aa41ac3 100644 --- a/macros/latex/contrib/codehigh/codehigh.pdf +++ b/macros/latex/contrib/codehigh/codehigh.pdf diff --git a/macros/latex/contrib/codehigh/codehigh.sty b/macros/latex/contrib/codehigh/codehigh.sty index 62438d7dac..7f7a4a8a9a 100644 --- a/macros/latex/contrib/codehigh/codehigh.sty +++ b/macros/latex/contrib/codehigh/codehigh.sty @@ -12,7 +12,7 @@ \NeedsTeXFormat{LaTeX2e} \RequirePackage{expl3} -\ProvidesExplPackage{codehigh}{2023-02-11}{2023A} +\ProvidesExplPackage{codehigh}{2024-11-20}{2024A} {Highlight codes and demos with l3regex and lpeg} %\RequirePackage{xparse} @@ -603,36 +603,27 @@ %%> \section{Fake Verbatim Command} %%% ------------------------------------------------------- -\tl_new:N \l__codehigh_fake_code_tl +\tl_const:Nn \c__codehigh_fake_escape_tl { \\\{\}\#\^\ \% } \NewDocumentCommand \fakeverb { +m } { \group_begin: - \tl_set:Nn \l__codehigh_fake_code_tl {#1} - \__codehigh_fake_verb:N \l__codehigh_fake_code_tl + \group_align_safe_begin: + \ttfamily \frenchspacing + \tl_analysis_map_inline:nn {#1} + { + \int_compare:nNnTF {##2} = { -1 } + { + \exp_args:NNo \tl_if_in:NnTF \c__codehigh_fake_escape_tl {##1} + { \exp_after:wN \cs_to_str:N ##1 } + { \exp_after:wN \token_to_str:N ##1 } + } + { \exp_after:wN \token_to_str:N ##1 } + } + \group_align_safe_end: \group_end: } -\cs_new_protected:Npn \__codehigh_fake_verb:N #1 - { - \regex_replace_all:nnN { \c{\\} } { \\ } #1 - % use \cO to avoid errors of unmatched braces - \regex_replace_all:nnN { \c{\{} } { \cO\{ } #1 - \regex_replace_all:nnN { \c{\}} } { \cO\} } #1 - % use \cO to avoid doubled hash characters - \regex_replace_all:nnN { \c{\#} } { \cO\# } #1 - % need to escape ^ because ^^ and ^^^^ are special - \regex_replace_all:nnN { \c{\^} } { \^ } #1 - % why we can not use \c{\ } instead of \c{\h}? - \regex_replace_all:nnN { \c{\h} } { \ } #1 - \regex_replace_all:nnN { \c{\%} } { \% } #1 - % remove spaces after control words - \regex_replace_all:nnN { . } { \c{string}\0 } #1 - \tl_set:Ne #1 { #1 } - %\tl_log:N #1 - \ttfamily \frenchspacing \tl_to_str:N #1 - } - %%% ------------------------------------------------------- %%> \section{Tracing CodeHigh} %%% ------------------------------------------------------- diff --git a/macros/latex/contrib/codehigh/codehigh.tex b/macros/latex/contrib/codehigh/codehigh.tex index 5f1e0295e7..95896f01af 100644 --- a/macros/latex/contrib/codehigh/codehigh.tex +++ b/macros/latex/contrib/codehigh/codehigh.tex @@ -2,7 +2,7 @@ \documentclass[oneside]{book} \usepackage[a4paper,margin=2cm]{geometry} -\newcommand*{\myversion}{2023A} +\newcommand*{\myversion}{2024A} \newcommand*{\mydate}{Version \myversion\ (\the\year-\mylpad\month-\mylpad\day)} \newcommand*{\mylpad}[1]{\ifnum#1<10 0\the#1\else\the#1\fi} diff --git a/macros/latex/contrib/easybook/README.md b/macros/latex/contrib/easybook/README.md index 020a46abf1..0a56424eae 100644 --- a/macros/latex/contrib/easybook/README.md +++ b/macros/latex/contrib/easybook/README.md @@ -1,5 +1,5 @@ # The `easybook` document class -Easily typesetting Chinese theses or books (v2024hm) +Easily typesetting Chinese theses or books (v2024hn) ## Abstract `easybook` is a pure academic template created based on the `ctexbook` book document class. It also has the functions of `book` and `article` document class. Combined with the general framework design of the theses of many universities in China, providing multiple commands and interfaces allows users to easily customize the theses templates. Its basic macro package `easybase` can also be used with `ctex` and standard document classes. diff --git a/macros/latex/contrib/easybook/easybook.dtx b/macros/latex/contrib/easybook/easybook.dtx index d3b9609a4a..17987de27c 100644 --- a/macros/latex/contrib/easybook/easybook.dtx +++ b/macros/latex/contrib/easybook/easybook.dtx @@ -14,7 +14,7 @@ % This work has the LPPL maintenance status `maintained'. %<class|package>\NeedsTeXFormat{LaTeX2e}[2021/11/15] %<*class> -\ProvidesExplClass{easybook}{2024/11/18}{2024hm} +\ProvidesExplClass{easybook}{2024/11/20}{2024hn} {Easily typesetting Chinese theses or books} \bool_new:N \l__eb_compile_draft_bool @@ -302,7 +302,7 @@ %</class> %<*package> \RequirePackage{etoolbox} -\ProvidesExplPackage{easybase}{2024/11/18}{2024hm} +\ProvidesExplPackage{easybase}{2024/11/20}{2024hn} {Easily typesetting Chinese theses or books} \cs_generate_variant:Nn \dim_set:Nn { NV } @@ -2455,6 +2455,7 @@ { \addtocontents{loe}{\protect\addvspace{\skip_use:N \eb@thmt@loe@skip}} } } \def\thmtlo@chaptervspacehack{} + \def\thmt@mklistcmd{\thmtlo@newentry} \def\thmtname{\thmt@thmname} \def\thmtenvname{\thmt@envname} \def\thmtnote{\thmt@shortoptarg} @@ -2980,7 +2981,7 @@ } %</package> %<*tcolorbox> -\ProvidesExplFile{eb-tcolorbox.cfg}{2024/11/18}{2024hm} +\ProvidesExplFile{eb-tcolorbox.cfg}{2024/11/20}{2024hn} {Customization of tcolorbox for easybook} \cs_set_protected:Npn \addtotcbstyle #1#2 diff --git a/macros/latex/contrib/easybook/easybook.pdf b/macros/latex/contrib/easybook/easybook.pdf Binary files differindex 8a046a734f..ba8996b499 100644 --- a/macros/latex/contrib/easybook/easybook.pdf +++ b/macros/latex/contrib/easybook/easybook.pdf diff --git a/macros/latex/contrib/easybook/easybook.tex b/macros/latex/contrib/easybook/easybook.tex index 028362a0dc..c6e7623df3 100644 --- a/macros/latex/contrib/easybook/easybook.tex +++ b/macros/latex/contrib/easybook/easybook.tex @@ -23,8 +23,8 @@ name = easybook, color-scheme = blue, title = EASYBOOK使用手册, - version = v2024hm, - date = 2024/11/18, + version = v2024hn, + date = 2024/11/20, authors = 瞿毅, info = 简便地排版中文学位论文或书籍, email = toquyi@163.com, @@ -1176,7 +1176,7 @@ $\blacktriangleright$需要注意正确\textbf{编译索引}要增加 \code{-she \command{RegisterBititle}[\marg{条目名列表}] 根据已有章节标题命令注册一个双语标题命令 \cs*{bi}\meta{条目名}。\meta{条目名} 应当是 \module*{part}$\longrightarrow$\module*{subparagraph} 等已经存在的标题命令名,或是用 \cs{NewTitleCommand} 创建的标题命令名。 \command{NewTitleCommand}[\oarg{基础标题}\marg{条目名}\marg{章节层次}]\newtagv{2024aw}% - 创建一个命令名为 \meta{条目名} 新章节标题,并且支持 \CTeX 中的标题样式选项机制。指定可选参数后标题格式除了编号/名字会与 \meta{基础标题} 相同,否则默认为空。同时创建一个名为 \meta{条目名} 的计数器和标记命令 \code{\textbackslash}\meta{条目名}\cstext{mark}。同时还需指定标题的 \meta{章节层次},例如标准文档类中 \code{chapter} 级别为 \code{0}。 + 新创建一个名为 \meta{条目名} 的章节标题命令,支持 \CTeX 中的标题样式选项机制。指定可选参数后标题格式除了编号/名字会与 \meta{基础标题} 相同,否则默认为空。同时创建一个名为 \meta{条目名} 的计数器和标记命令 \code{\textbackslash}\meta{条目名}\cstext{mark}。同时还需指定标题的 \meta{章节层次},例如标准文档类中 \code{chapter} 级别为 \code{0}。 \command{NewTitleEntryCommand}[\oarg{扩展名}\marg{条目名}]\newtagv{2024aw}% 创建一个命令 \code{\textbackslash}\meta{条目名}\cstext{entry}\marg{标题},仅将 \meta{标题} 加入文件扩展名为 \meta{扩展名} 的目录中,而不在正文中输出标题,默认扩展名为 \code{toc}。 \begin{ctexexam} diff --git a/macros/latex/contrib/fancyhdr/README b/macros/latex/contrib/fancyhdr/README index 3131149015..66896312fd 100644 --- a/macros/latex/contrib/fancyhdr/README +++ b/macros/latex/contrib/fancyhdr/README @@ -1,21 +1,35 @@ -fancyhdr – Extensive control of page headers and footers in LaTeX2ε +fancyhdr – Extensive control of page headers and footers in LaTeX +extramarks - Extra marks for LaTeX The package provides extensive facilities, both for constructing headers and footers, and for controlling their use (for example, at times when LaTeX would automatically change the heading style in use). -The distribution package consists of the following files: +This is version 4.4 of fancyhdr.sty and extramarks.sty. They are +described in the third edition of The LaTeX Companion. + +The distribution package (fancyhdr.zip) consists of the following files: -README This file -fancyhdr.dtx The complete source of the package and documentation -fancyhdr.ins The installation file; run through TeX to generate *.sty -fancyhdr.pdf PDF of the documentation +README This file +fancyhdr.dtx The complete source of the package and documentation +fancyhdr.ins The installation file; run through TeX to generate *.sty +fancyhdr.pdf PDF of the documentation After processing (by tex) of fancyhdr.ins, the following package files will be generated: -fancyhdr.sty the LaTeX package -extramarks.sty a package for additional marks -fancyheadings.sty this loads fancyhdr with a warning message +fancyhdr.sty v4.4 2024/11/20 the LaTeX package +extramarks.sty v4.4 2024/11/20 a package for additional marks +fancyheadings.sty v4.1 2022/11/09 this loads fancyhdr with a warning message + +If you have a user distribution package (fancyhdr-dist-4.4.zip), +then you don't have to do this processing. + +If you have a source distribution fancyhdr-4.4.zip, it will also contain +the .sty files, but not the .pdf file. +To recreate the .sty files run +tex fancyhdr.ins +To create fancyhdr.pdf, either just run the 'make' command, or +latexmk fancyhdr.dtx Fancyhdr is a replacement for the old LaTeX2 package fancyheadings. That one should not be used anymore. The package fancyheadings included here @@ -27,11 +41,6 @@ In order to latex the documentation you need to have a copy of boxedminipage.sty (CTAN:/macros/latex/contrib/boxedminipage) and refcount.sty (CTAN:/macros/latex/contrib/oberdiek/) installed. -This is version 4.3.1 of fancyhdr.sty and extramarks.sty. They are -described in the third edition of The LaTeX Companion. -Extramarks.sty has not been changed, except for the version and -copyright information. - The older versions fancyhdr.sty version 3 and extramarks.sty version 2 are the packages as described in the second edition of The LaTeX Companion. That documentation can still be used for the newer @@ -45,5 +54,3 @@ version. Pieter van Oostrum. <pieter@vanoostrum.org> http://pieter.vanoostrum.org/ - - diff --git a/macros/latex/contrib/fancyhdr/fancyhdr.dtx b/macros/latex/contrib/fancyhdr/fancyhdr.dtx index c20c966b8b..64810dd5cd 100644 --- a/macros/latex/contrib/fancyhdr/fancyhdr.dtx +++ b/macros/latex/contrib/fancyhdr/fancyhdr.dtx @@ -26,7 +26,7 @@ %<fancyhdr>\ProvidesPackage{fancyhdr}% %<fancyheadings>\ProvidesPackage{fancyheadings} %<extramarks>\ProvidesPackage{extramarks} -%<fancyhdr|extramarks> [2024/07/23 v4.3.1 +%<fancyhdr|extramarks> [2024/11/20 v4.4 %<fancyhdr> Extensive control of page headers and footers]% %<fancyheadings> [2022/11/09 v4.1 %<fancyheadings> Legacy package to call fancyhdr] @@ -3075,13 +3075,19 @@ % Therefore paragraph hooks will not work inside \Package{fancyhdr} headers and % footers to avoid unwanted interactions with the main text. % \end{itemize} -% \item % Version 4.3.1, July 23, 2024 +% \item Version 4.3.1, July 23, 2024 % \begin{itemize} % \item Also reset \cs{everypar} to its original \TeX{} value % \cs{tex\_everypar:D} in \cs{f@nch@resetpar}, otherwise environments % based on \cs{trivlist} will not work properly in \Package{fancyhdr} % headers and footers. % \end{itemize} +% \item Version 4.4, Nov 20, 2024 +% \begin{itemize} +% \item Add setting the new style marks for \cs{leftmark} +% (\texttt{2e-left}) and \cs{rightmark} (\texttt{2e-right} and +% \texttt{2e-right-nonempty}) in \Package{extramarks.sty}. +% \end{itemize} % \end{itemize} % % @@ -4798,7 +4804,34 @@ % \begin{macro}{\markboth} % Our own definition of \cs{markboth}, mainly because \cs{@markboth} % gets more parameters. +% \changes{extramarks v4.4}{2024/11/20}{Add setting the new style marks +% for \cs{leftmark} (\texttt{2e-left}) and \cs{rightmark} +% (\texttt{2e-right} and \texttt{2e-right-nonempty}). We do this only if +% the new marks are defined in the \LaTeX{} kernel.} +% First the definition for modern \LaTeX{} distributions. % \begin{macrocode} +\ifdefined\ExplSyntaxOn +\ExplSyntaxOn +\DeclareRobustCommand*\markboth[2]{% + \begingroup + \let\label\relax \let\index\relax \let\glossary\relax + \expandafter\@markboth\@themark{#1}{#2}% + \@temptokena \expandafter{\@themark}% + \ifdefined\mark_insert:nn + % 3 new lines to set the new marks + \mark_insert:nn{2e-left}{#1} + \mark_insert:nn{2e-right}{#2} + \tl_if_empty:nF{#2}{ \mark_insert:nn{2e-right-nonempty}{#2} } + \fi + \mark{\the\@temptokena}% + \endgroup + \if@nobreak\ifvmode\nobreak\fi\fi} +\ExplSyntaxOff +% \end{macrocode} +% If we are with a pre-\LaTeX3 kernel, we use the definition from an +% older version of \Package{extramarks}. +% \begin{macrocode} +\else \def\markboth#1#2{% \begingroup \let\label\relax \let\index\relax \let\glossary\relax @@ -4807,6 +4840,7 @@ \mark{\the\@temptokena}% \endgroup \if@nobreak\ifvmode\nobreak\fi\fi} +\fi % \end{macrocode} % \end{macro} % \begin{macro}{\@mkboth} diff --git a/macros/latex/contrib/fancyhdr/fancyhdr.pdf b/macros/latex/contrib/fancyhdr/fancyhdr.pdf Binary files differindex 35cc4524ff..bd930be8a6 100644 --- a/macros/latex/contrib/fancyhdr/fancyhdr.pdf +++ b/macros/latex/contrib/fancyhdr/fancyhdr.pdf diff --git a/macros/latex/contrib/numerica-tables/README.txt b/macros/latex/contrib/numerica-tables/README.txt index 1aeb1f548d..04892f4fbd 100644 --- a/macros/latex/contrib/numerica-tables/README.txt +++ b/macros/latex/contrib/numerica-tables/README.txt @@ -1,4 +1,4 @@ -numerica-tables: a package to create tables of function values. +numerica-tables: a package to create tables of mathematical functions. Andrew Parsloe (ajparsloe@gmail.com) @@ -11,14 +11,14 @@ http://www.latex-project.org/lppl.txt numerica-tables allows the creation of possibly multi-column tables of mathematical function values in a wide variety of -formats. +styles based on the booktabs package. -Version 3.1.0 requires version 3 of numerica and the booktabs -package. numerica must be loaded before numerica-tables. -Version 3.1.0 of numerica-tables adds an index to the docu- -mentation and allows the rounding value to vary with row or -column (or both). See numerica-tables.pdf for details on how -to use the package. +Version 3.2.0 requires version 3 of numerica and the booktabs +package; numerica must be loaded before numerica-tables. The main +enhancement in version 3.2.0 of numerica-tables is the ability to +transpose tables from function values arranged in columns to +function values arranged in rows. See numerica-tables.pdf for +details on how to use the package. Manifest %%%%%%%% @@ -27,4 +27,3 @@ README.txt this document numerica-tables.sty LaTeX .sty file numerica-tables.pdf documentation for numerica-tables.sty numerica-tables.tex documentation source file - diff --git a/macros/latex/contrib/numerica-tables/numerica-tables.pdf b/macros/latex/contrib/numerica-tables/numerica-tables.pdf index c9f8ad108f..5e572d384b 100644 --- a/macros/latex/contrib/numerica-tables/numerica-tables.pdf +++ b/macros/latex/contrib/numerica-tables/numerica-tables.pdf @@ -10,373 +10,447 @@ endobj << /S /GoTo /D (section.1.1) >> endobj 8 0 obj -(\376\377\0001\000.\0001\000\040\000T\000a\000b\000l\000e\000\040\000s\000t\000r\000u\000c\000t\000u\000r\000e) +(\376\377\0001\000.\0001\000\040\000P\000a\000c\000k\000a\000g\000e\000\040\000o\000p\000t\000i\000o\000n\000s) endobj 9 0 obj << /S /GoTo /D (section.1.2) >> endobj 12 0 obj -(\376\377\0001\000.\0002\000\040\000S\000h\000a\000r\000e\000d\000\040\000s\000y\000n\000t\000a\000x) +(\376\377\0001\000.\0002\000\040\000T\000a\000b\000l\000e\000\040\000s\000t\000r\000u\000c\000t\000u\000r\000e) endobj 13 0 obj -<< /S /GoTo /D (chapter.2) >> +<< /S /GoTo /D (subsection.1.2.1) >> endobj 16 0 obj -(\376\377\0002\000\040\000\134\000n\000m\000c\000T\000a\000b\000u\000l\000a\000t\000e\000\040\000s\000e\000t\000t\000i\000n\000g\000s) +(\376\377\0001\000.\0002\000.\0001\000\040\000T\000r\000a\000n\000s\000p\000o\000s\000e\000d\000\040\000t\000a\000b\000l\000e\000s) endobj 17 0 obj -<< /S /GoTo /D (section.2.1) >> +<< /S /GoTo /D (subsection.1.2.2) >> endobj 20 0 obj -(\376\377\0002\000.\0001\000\040\000R\000o\000w\000-\000v\000a\000r\000i\000a\000b\000l\000e\000\040\000s\000e\000t\000t\000i\000n\000g\000s) +(\376\377\0001\000.\0002\000.\0002\000\040\000t\000a\000b\000u\000l\000a\000r\000\040\000e\000n\000v\000i\000r\000o\000n\000m\000e\000n\000t) endobj 21 0 obj -<< /S /GoTo /D (subsection.2.1.1) >> +<< /S /GoTo /D (section.1.3) >> endobj 24 0 obj -(\376\377\0002\000.\0001\000.\0001\000\040\000R\000o\000w\000-\000v\000a\000r\000i\000a\000b\000l\000e\000\040\000s\000p\000e\000c\000i\000f\000i\000c\000a\000t\000i\000o\000n\000:\000\040\000u\000n\000i\000f\000o\000r\000m\000\040\000c\000a\000s\000e) +(\376\377\0001\000.\0003\000\040\000S\000h\000a\000r\000e\000d\000\040\000s\000y\000n\000t\000a\000x) endobj 25 0 obj -<< /S /GoTo /D (subsection.2.1.2) >> +<< /S /GoTo /D (chapter.2) >> endobj 28 0 obj -(\376\377\0002\000.\0001\000.\0002\000\040\000R\000o\000w\000\040\000v\000a\000r\000i\000a\000b\000l\000e\000\040\000s\000p\000e\000c\000i\000f\000i\000c\000a\000t\000i\000o\000n\000:\000\040\000n\000o\000n\000-\000u\000n\000i\000f\000o\000r\000m\000\040\000c\000a\000s\000e) +(\376\377\0002\000\040\000\134\000n\000m\000c\000T\000a\000b\000u\000l\000a\000t\000e\000\040\000s\000e\000t\000t\000i\000n\000g\000s) endobj 29 0 obj -<< /S /GoTo /D (subsubsection.2.1.2.1) >> +<< /S /GoTo /D (section.2.1) >> endobj 32 0 obj -(\376\377\0002\000.\0001\000.\0002\000.\0001\000\040\000r\000f\000u\000n\000c) +(\376\377\0002\000.\0001\000\040\000R\000o\000w\000\040\000v\000a\000r\000i\000a\000b\000l\000e\000\040\000s\000e\000t\000t\000i\000n\000g\000s) endobj 33 0 obj -<< /S /GoTo /D (subsubsection.2.1.2.2) >> +<< /S /GoTo /D (subsection.2.1.1) >> endobj 36 0 obj -(\376\377\0002\000.\0001\000.\0002\000.\0002\000\040\000r\000d\000a\000t\000a\000,\000\040\000r\000f\000i\000l\000e\000,\000\040\000r\000v\000e\000r\000b\000\040) +(\376\377\0002\000.\0001\000.\0001\000\040\000R\000o\000w\000\040\000v\000a\000r\000i\000a\000b\000l\000e\000\040\000s\000p\000e\000c\000i\000f\000i\000c\000a\000t\000i\000o\000n\000:\000\040\000u\000n\000i\000f\000o\000r\000m\000\040\000c\000a\000s\000e) endobj 37 0 obj -<< /S /GoTo /D (subsection.2.1.3) >> +<< /S /GoTo /D (subsubsection.2.1.1.1) >> endobj 40 0 obj -(\376\377\0002\000.\0001\000.\0003\000\040\000F\000o\000r\000m\000a\000t\000t\000i\000n\000g\000\040\000r\000o\000w\000\040\000v\000a\000r\000i\000a\000b\000l\000e\000\040\000v\000a\000l\000u\000e\000s\000\040\000\046\000\040\000c\000o\000l\000u\000m\000n) +(\376\377\0002\000.\0001\000.\0001\000.\0001\000\040\000R\000o\000u\000n\000d\000i\000n\000g\000:\000\040\000r\000r\000o\000u\000n\000d) endobj 41 0 obj -<< /S /GoTo /D (subsubsection.2.1.3.1) >> +<< /S /GoTo /D (subsection.2.1.2) >> endobj 44 0 obj -(\376\377\0002\000.\0001\000.\0003\000.\0001\000\040\000R\000o\000u\000n\000d\000i\000n\000g\000:\000\040\000r\000r\000o\000u\000n\000d) +(\376\377\0002\000.\0001\000.\0002\000\040\000R\000o\000w\000\040\000v\000a\000r\000i\000a\000b\000l\000e\000\040\000s\000p\000e\000c\000i\000f\000i\000c\000a\000t\000i\000o\000n\000:\000\040\000n\000o\000n\000-\000u\000n\000i\000f\000o\000r\000m\000\040\000c\000a\000s\000e) endobj 45 0 obj -<< /S /GoTo /D (subsubsection.2.1.3.2) >> +<< /S /GoTo /D (subsubsection.2.1.2.1) >> endobj 48 0 obj -(\376\377\0002\000.\0001\000.\0003\000.\0002\000\040\000F\000o\000n\000t\000:\000\040\000r\000f\000o\000n\000t) +(\376\377\0002\000.\0001\000.\0002\000.\0001\000\040\000r\000f\000u\000n\000c) endobj 49 0 obj -<< /S /GoTo /D (subsubsection.2.1.3.3) >> +<< /S /GoTo /D (subsubsection.2.1.2.2) >> endobj 52 0 obj -(\376\377\0002\000.\0001\000.\0003\000.\0003\000\040\000A\000l\000i\000g\000n\000m\000e\000n\000t\000:\000\040\000r\000a\000l\000i\000g\000n) +(\376\377\0002\000.\0001\000.\0002\000.\0002\000\040\000r\000d\000a\000t\000a\000,\000\040\000r\000f\000i\000l\000e\000,\000\040\000r\000d\000e\000l\000i\000m\000,\000\040\000r\000v\000e\000r\000b\000\040) endobj 53 0 obj -<< /S /GoTo /D (subsubsection.2.1.3.4) >> +<< /S /GoTo /D (subsubsection.2.1.2.3) >> endobj 56 0 obj -(\376\377\0002\000.\0001\000.\0003\000.\0004\000\040\000R\000o\000w\000-\000v\000a\000r\000i\000a\000b\000l\000e\000\040\000h\000e\000a\000d\000e\000r\000:\000\040\000r\000h\000e\000a\000d) +(\376\377\0002\000.\0001\000.\0002\000.\0003\000\040\000F\000r\000a\000c\000t\000i\000o\000n\000-\000f\000o\000r\000m\000\040\000v\000a\000l\000u\000e\000s) endobj 57 0 obj -<< /S /GoTo /D (subsubsection.2.1.3.5) >> +<< /S /GoTo /D (subsection.2.1.3) >> endobj 60 0 obj -(\376\377\0002\000.\0001\000.\0003\000.\0005\000\040\000N\000u\000d\000g\000i\000n\000g\000\040\000t\000h\000e\000\040\000h\000e\000a\000d\000e\000r\000:\000\040\000r\000h\000n\000u\000d\000g\000e) +(\376\377\0002\000.\0001\000.\0003\000\040\000F\000o\000r\000m\000a\000t\000t\000i\000n\000g\000\040\000t\000h\000e\000\040\000r\000o\000w\000\040\000v\000a\000r\000i\000a\000b\000l\000e\000\040\000c\000o\000l\000u\000m\000n\000\040\000\046\000\040\000h\000e\000a\000d\000e\000r) endobj 61 0 obj -<< /S /GoTo /D (subsubsection.2.1.3.6) >> +<< /S /GoTo /D (subsubsection.2.1.3.1) >> endobj 64 0 obj -(\376\377\0002\000.\0001\000.\0003\000.\0006\000\040\000P\000o\000s\000i\000t\000i\000o\000n\000\040\000i\000n\000\040\000t\000h\000e\000\040\000t\000a\000b\000l\000e\000:\000\040\000r\000p\000o\000s) +(\376\377\0002\000.\0001\000.\0003\000.\0001\000\040\000P\000o\000s\000i\000t\000i\000o\000n\000\040\000i\000n\000\040\000t\000h\000e\000\040\000t\000a\000b\000l\000e\000:\000\040\000r\000p\000o\000s) endobj 65 0 obj -<< /S /GoTo /D (subsubsection.2.1.3.7) >> +<< /S /GoTo /D (subsubsection.2.1.3.2) >> endobj 68 0 obj -(\376\377\0002\000.\0001\000.\0003\000.\0007\000\040\000r\000v\000a\000r\000'\000,\000\040\000r\000h\000e\000a\000d\000'\000,\000\040\000r\000h\000n\000u\000d\000g\000e\000') +(\376\377\0002\000.\0001\000.\0003\000.\0002\000\040\000A\000l\000i\000g\000n\000m\000e\000n\000t\000:\000\040\000r\000a\000l\000i\000g\000n) endobj 69 0 obj -<< /S /GoTo /D (subsubsection.2.1.3.8) >> +<< /S /GoTo /D (subsubsection.2.1.3.3) >> endobj 72 0 obj -(\376\377\0002\000.\0001\000.\0003\000.\0008\000\040\000F\000r\000a\000c\000t\000i\000o\000n\000-\000f\000o\000r\000m\000\040\000v\000a\000l\000u\000e\000s\000:\000\040\000r\000f\000r\000a\000c) +(\376\377\0002\000.\0001\000.\0003\000.\0003\000\040\000F\000o\000n\000t\000:\000\040\000r\000f\000o\000n\000t) endobj 73 0 obj -<< /S /GoTo /D (subsection.2.1.4) >> +<< /S /GoTo /D (subsubsection.2.1.3.4) >> endobj 76 0 obj -(\376\377\0002\000.\0001\000.\0004\000\040\000A\000d\000j\000o\000i\000n\000e\000d\000\040\000m\000u\000l\000t\000i\000-\000f\000u\000n\000c\000t\000i\000o\000n\000\040\000t\000a\000b\000l\000e\000s) +(\376\377\0002\000.\0001\000.\0003\000.\0004\000\040\000R\000o\000w\000\040\000v\000a\000r\000i\000a\000b\000l\000e\000\040\000h\000e\000a\000d\000e\000r\000:\000\040\000r\000h\000e\000a\000d) endobj 77 0 obj -<< /S /GoTo /D (section.2.2) >> +<< /S /GoTo /D (subsubsection.2.1.3.5) >> endobj 80 0 obj -(\376\377\0002\000.\0002\000\040\000C\000o\000l\000u\000m\000n\000-\000v\000a\000r\000i\000a\000b\000l\000e\000\040\000s\000e\000t\000t\000i\000n\000g\000s) +(\376\377\0002\000.\0001\000.\0003\000.\0005\000\040\000N\000u\000d\000g\000i\000n\000g\000\040\000t\000h\000e\000\040\000h\000e\000a\000d\000e\000r\000:\000\040\000r\000h\000n\000u\000d\000g\000e) endobj 81 0 obj -<< /S /GoTo /D (subsection.2.2.1) >> +<< /S /GoTo /D (subsubsection.2.1.3.6) >> endobj 84 0 obj -(\376\377\0002\000.\0002\000.\0001\000\040\000C\000o\000l\000u\000m\000n\000\040\000h\000e\000a\000d\000e\000r\000\040\000f\000o\000r\000m\000a\000t\000t\000i\000n\000g) +(\376\377\0002\000.\0001\000.\0003\000.\0006\000\040\000F\000o\000n\000t\000\040\000s\000i\000z\000e\000\040\000o\000f\000\040\000t\000h\000e\000\040\000h\000e\000a\000d\000e\000r\000:\000\040\000r\000h\000s\000i\000z\000e) endobj 85 0 obj -<< /S /GoTo /D (subsubsection.2.2.1.1) >> +<< /S /GoTo /D (subsubsection.2.1.3.7) >> endobj 88 0 obj -(\376\377\0002\000.\0002\000.\0001\000.\0001\000\040\000S\000i\000n\000g\000l\000e\000-\000c\000o\000l\000u\000m\000n\000\040\000h\000e\000a\000d\000e\000r) +(\376\377\0002\000.\0001\000.\0003\000.\0007\000\040\000r\000m\000a\000t\000h) endobj 89 0 obj -<< /S /GoTo /D (subsubsection.2.2.1.2) >> +<< /S /GoTo /D (subsubsection.2.1.3.8) >> endobj 92 0 obj -(\376\377\0002\000.\0002\000.\0001\000.\0002\000\040\000M\000u\000l\000t\000i\000-\000c\000o\000l\000u\000m\000n\000\040\000h\000e\000a\000d\000e\000r\000:\000\040\000c\000h\000s\000t\000y\000l\000e) +(\376\377\0002\000.\0001\000.\0003\000.\0008\000\040\000r\000v\000a\000r\000'\000,\000\040\000r\000h\000e\000a\000d\000'\000,\000\040\000r\000h\000n\000u\000d\000g\000e\000') endobj 93 0 obj -<< /S /GoTo /D (subsubsection.2.2.1.3) >> +<< /S /GoTo /D (section.2.2) >> endobj 96 0 obj -(\376\377\0002\000.\0002\000.\0001\000.\0003\000\040\000U\000s\000e\000r\000-\000d\000e\000f\000i\000n\000e\000d\000\040\000h\000e\000a\000d\000e\000r\000:\000\040\000c\000h\000e\000a\000d) +(\376\377\0002\000.\0002\000\040\000C\000o\000l\000u\000m\000n\000-\000v\000a\000r\000i\000a\000b\000l\000e\000\040\000s\000e\000t\000t\000i\000n\000g\000s) endobj 97 0 obj -<< /S /GoTo /D (subsubsection.2.2.1.4) >> +<< /S /GoTo /D (subsection.2.2.1) >> endobj 100 0 obj -(\376\377\0002\000.\0002\000.\0001\000.\0004\000\040\000A\000l\000i\000g\000n\000m\000e\000n\000t\000:\000\040\000c\000a\000l\000i\000g\000n) +(\376\377\0002\000.\0002\000.\0001\000\040\000R\000o\000u\000n\000d\000i\000n\000g\000:\000\040\000c\000h\000r\000o\000u\000n\000d) endobj 101 0 obj -<< /S /GoTo /D (subsubsection.2.2.1.5) >> +<< /S /GoTo /D (subsection.2.2.2) >> endobj 104 0 obj -(\376\377\0002\000.\0002\000.\0001\000.\0005\000\040\000N\000u\000d\000g\000i\000n\000g\000\040\000h\000e\000a\000d\000e\000r\000\040\000e\000n\000t\000r\000i\000e\000s\000:\000\040\000c\000h\000n\000u\000d\000g\000e) +(\376\377\0002\000.\0002\000.\0002\000\040\000C\000o\000l\000u\000m\000n\000\040\000h\000e\000a\000d\000e\000r\000\040\000f\000o\000r\000m\000a\000t\000t\000i\000n\000g) endobj 105 0 obj -<< /S /GoTo /D (subsubsection.2.2.1.6) >> +<< /S /GoTo /D (subsubsection.2.2.2.1) >> endobj 108 0 obj -(\376\377\0002\000.\0002\000.\0001\000.\0006\000\040\000R\000o\000u\000n\000d\000i\000n\000g\000:\000\040\000c\000h\000r\000o\000u\000n\000d) +(\376\377\0002\000.\0002\000.\0002\000.\0001\000\040\000S\000i\000n\000g\000l\000e\000-\000c\000o\000l\000u\000m\000n\000\040\000h\000e\000a\000d\000e\000r) endobj 109 0 obj -<< /S /GoTo /D (section.2.3) >> +<< /S /GoTo /D (subsubsection.2.2.2.2) >> endobj 112 0 obj -(\376\377\0002\000.\0003\000\040\000M\000u\000l\000t\000i\000p\000l\000e\000\040\000f\000u\000n\000c\000t\000i\000o\000n\000s\000\040\000i\000n\000\040\000a\000\040\000s\000i\000n\000g\000l\000e\000\040\000t\000a\000b\000l\000e) +(\376\377\0002\000.\0002\000.\0002\000.\0002\000\040\000M\000u\000l\000t\000i\000-\000c\000o\000l\000u\000m\000n\000\040\000h\000e\000a\000d\000e\000r) endobj 113 0 obj -<< /S /GoTo /D (section.2.4) >> +<< /S /GoTo /D (subsubsection.2.2.2.3) >> endobj 116 0 obj -(\376\377\0002\000.\0004\000\040\000W\000h\000o\000l\000e\000-\000o\000f\000-\000t\000a\000b\000l\000e\000\040\000f\000o\000r\000m\000a\000t\000t\000i\000n\000g) +(\376\377\0002\000.\0002\000.\0002\000.\0003\000\040\000d\000i\000a\000g\000b\000o\000x\000,\000\040\000s\000l\000a\000s\000h\000b\000o\000x) endobj 117 0 obj -<< /S /GoTo /D (subsection.2.4.1) >> +<< /S /GoTo /D (subsubsection.2.2.2.4) >> endobj 120 0 obj -(\376\377\0002\000.\0004\000.\0001\000\040\000T\000i\000t\000l\000e\000\040\000f\000o\000r\000\040\000f\000u\000n\000c\000t\000i\000o\000n\000-\000v\000a\000l\000u\000e\000\040\000c\000o\000l\000u\000m\000n\000s\000:\000\040\000c\000t\000i\000t\000l\000e) +(\376\377\0002\000.\0002\000.\0002\000.\0004\000\040\000B\000u\000i\000l\000t\000-\000i\000n\000\040\000s\000t\000y\000l\000e\000s\000:\000\040\000c\000h\000s\000t\000y\000l\000e) endobj 121 0 obj -<< /S /GoTo /D (subsection.2.4.2) >> +<< /S /GoTo /D (subsubsection.2.2.2.5) >> endobj 124 0 obj -(\376\377\0002\000.\0004\000.\0002\000\040\000B\000e\000t\000w\000e\000e\000n\000\040\000h\000e\000a\000d\000e\000r\000\040\000\046\000\040\000t\000i\000t\000l\000e\000:\000\040\000c\000s\000u\000b\000t\000t\000l) +(\376\377\0002\000.\0002\000.\0002\000.\0005\000\040\000U\000s\000e\000r\000-\000d\000e\000f\000i\000n\000e\000d\000\040\000h\000e\000a\000d\000e\000r\000:\000\040\000c\000h\000e\000a\000d) endobj 125 0 obj -<< /S /GoTo /D (subsection.2.4.3) >> +<< /S /GoTo /D (subsubsection.2.2.2.6) >> endobj 128 0 obj -(\376\377\0002\000.\0004\000.\0003\000\040\000S\000u\000p\000p\000r\000e\000s\000s\000/\000s\000h\000o\000w\000\040\000h\000e\000a\000d\000e\000r\000\040\000r\000o\000w) +(\376\377\0002\000.\0002\000.\0002\000.\0006\000\040\000A\000l\000i\000g\000n\000m\000e\000n\000t\000:\000\040\000c\000a\000l\000i\000g\000n) endobj 129 0 obj -<< /S /GoTo /D (subsection.2.4.4) >> +<< /S /GoTo /D (subsubsection.2.2.2.7) >> endobj 132 0 obj -(\376\377\0002\000.\0004\000.\0004\000\040\000F\000o\000o\000t\000e\000r\000\040\000r\000o\000w\000:\000\040\000f\000o\000o\000t\000\040) +(\376\377\0002\000.\0002\000.\0002\000.\0007\000\040\000N\000u\000d\000g\000i\000n\000g\000\040\000h\000e\000a\000d\000e\000r\000\040\000e\000n\000t\000r\000i\000e\000s\000:\000\040\000c\000h\000n\000u\000d\000g\000e) endobj 133 0 obj -<< /S /GoTo /D (subsubsection.2.4.4.1) >> +<< /S /GoTo /D (subsubsection.2.2.2.8) >> endobj 136 0 obj -(\376\377\0002\000.\0004\000.\0004\000.\0001\000\040\000F\000o\000o\000t\000e\000r\000\040\000f\000u\000n\000c\000t\000i\000o\000n\000s) +(\376\377\0002\000.\0002\000.\0002\000.\0008\000\040\000M\000a\000t\000h\000\040\000s\000t\000y\000l\000e\000:\000\040\000c\000h\000m\000a\000t\000h) endobj 137 0 obj -<< /S /GoTo /D (subsection.2.4.5) >> +<< /S /GoTo /D (subsubsection.2.2.2.9) >> endobj 140 0 obj -(\376\377\0002\000.\0004\000.\0005\000\040\000H\000o\000r\000i\000z\000o\000n\000t\000a\000l\000\040\000r\000u\000l\000e\000s\000:\000\040\000r\000u\000l\000e\000s) +(\376\377\0002\000.\0002\000.\0002\000.\0009\000\040\000F\000o\000n\000t\000\040\000s\000i\000z\000e\000:\000\040\000c\000h\000s\000i\000z\000e) endobj 141 0 obj -<< /S /GoTo /D (subsection.2.4.6) >> +<< /S /GoTo /D (section.2.3) >> endobj 144 0 obj -(\376\377\0002\000.\0004\000.\0006\000\040\000S\000e\000c\000o\000n\000d\000\040\000r\000o\000w\000\040\000v\000a\000r\000i\000a\000b\000l\000e\000\040\000c\000o\000l\000u\000m\000n\000:\000\040\000r\000p\000o\000s\000=\0004) +(\376\377\0002\000.\0003\000\040\000M\000u\000l\000t\000i\000p\000l\000e\000\040\000f\000u\000n\000c\000t\000i\000o\000n\000s\000\040\000i\000n\000\040\000a\000\040\000s\000i\000n\000g\000l\000e\000\040\000t\000a\000b\000l\000e) endobj 145 0 obj -<< /S /GoTo /D (subsection.2.4.7) >> +<< /S /GoTo /D (section.2.4) >> endobj 148 0 obj -(\376\377\0002\000.\0004\000.\0007\000\040\000S\000e\000p\000a\000r\000a\000t\000i\000n\000g\000\040\000b\000l\000o\000c\000k\000s\000\040\000o\000f\000\040\000r\000o\000w\000s\000:\000\040\000r\000b\000l\000o\000c) +(\376\377\0002\000.\0004\000\040\000W\000h\000o\000l\000e\000-\000o\000f\000-\000t\000a\000b\000l\000e\000\040\000f\000o\000r\000m\000a\000t\000t\000i\000n\000g) endobj 149 0 obj -<< /S /GoTo /D (subsubsection.2.4.7.1) >> +<< /S /GoTo /D (subsection.2.4.1) >> endobj 152 0 obj -(\376\377\0002\000.\0004\000.\0007\000.\0001\000\040\000A\000d\000j\000u\000s\000t\000i\000n\000g\000\040\000t\000h\000e\000\040\000e\000x\000t\000r\000a\000\040\000s\000p\000a\000c\000e\000\040\000r\000b\000l\000o\000c\000s\000e\000p\000\040) +(\376\377\0002\000.\0004\000.\0001\000\040\000T\000i\000t\000l\000e\000\040\000f\000o\000r\000\040\000f\000u\000n\000c\000t\000i\000o\000n\000-\000v\000a\000l\000u\000e\000\040\000c\000o\000l\000u\000m\000n\000s\000:\000\040\000c\000t\000i\000t\000l\000e) endobj 153 0 obj -<< /S /GoTo /D (subsection.2.4.8) >> +<< /S /GoTo /D (subsection.2.4.2) >> endobj 156 0 obj -(\376\377\0002\000.\0004\000.\0008\000\040\000T\000a\000b\000l\000e\000\040\000p\000l\000a\000c\000e\000m\000e\000n\000t) +(\376\377\0002\000.\0004\000.\0002\000\040\000B\000e\000t\000w\000e\000e\000n\000\040\000h\000e\000a\000d\000e\000r\000\040\000\046\000\040\000t\000i\000t\000l\000e\000:\000\040\000c\000s\000u\000b\000t\000t\000l) endobj 157 0 obj -<< /S /GoTo /D (subsubsection.2.4.8.1) >> +<< /S /GoTo /D (subsection.2.4.3) >> endobj 160 0 obj -(\376\377\0002\000.\0004\000.\0008\000.\0001\000\040\000V\000e\000r\000t\000i\000c\000a\000l\000\040\000a\000l\000i\000g\000n\000m\000e\000n\000t) +(\376\377\0002\000.\0004\000.\0003\000\040\000S\000u\000p\000p\000r\000e\000s\000s\000/\000s\000h\000o\000w\000\040\000h\000e\000a\000d\000e\000r\000\040\000r\000o\000w) endobj 161 0 obj -<< /S /GoTo /D (section.2.5) >> +<< /S /GoTo /D (subsection.2.4.4) >> endobj 164 0 obj -(\376\377\0002\000.\0005\000\040\000F\000u\000n\000c\000t\000i\000o\000n\000\040\000v\000a\000l\000u\000e\000\040\000f\000o\000r\000m\000a\000t\000t\000i\000n\000g) +(\376\377\0002\000.\0004\000.\0004\000\040\000F\000o\000o\000t\000e\000r\000\040\000r\000o\000w\000:\000\040\000f\000o\000o\000t) endobj 165 0 obj -<< /S /GoTo /D (subsection.2.5.1) >> +<< /S /GoTo /D (subsection.2.4.5) >> endobj 168 0 obj -(\376\377\0002\000.\0005\000.\0001\000\040\000T\000r\000a\000i\000l\000i\000n\000g\000\040\000o\000p\000t\000i\000o\000n\000a\000l\000\040\000a\000r\000g\000u\000m\000e\000n\000t) +(\376\377\0002\000.\0004\000.\0005\000\040\000H\000o\000r\000i\000z\000o\000n\000t\000a\000l\000\040\000r\000u\000l\000e\000s\000:\000\040\000r\000u\000l\000e\000s) endobj 169 0 obj -<< /S /GoTo /D (subsubsection.2.5.1.1) >> +<< /S /GoTo /D (subsubsection.2.4.5.1) >> endobj 172 0 obj -(\376\377\0002\000.\0005\000.\0001\000.\0001\000\040\000F\000r\000a\000c\000t\000i\000o\000n\000-\000f\000o\000r\000m\000\040\000o\000u\000t\000p\000u\000t) +(\376\377\0002\000.\0004\000.\0005\000.\0001\000\040\000H\000e\000a\000d\000e\000r\000\040\000a\000n\000d\000\040\000f\000o\000o\000t\000e\000r\000\040\000r\000u\000l\000e\000s) endobj 173 0 obj -<< /S /GoTo /D (subsubsection.2.5.1.2) >> +<< /S /GoTo /D (subsubsection.2.4.5.2) >> endobj 176 0 obj -(\376\377\0002\000.\0005\000.\0001\000.\0002\000\040\000S\000c\000i\000e\000n\000t\000i\000f\000i\000c\000\040\000n\000o\000t\000a\000t\000i\000o\000n) +(\376\377\0002\000.\0004\000.\0005\000.\0002\000\040\000T\000i\000t\000l\000e\000\040\000a\000n\000d\000\040\000s\000u\000b\000t\000i\000t\000l\000e\000\040\000r\000u\000l\000e\000s) endobj 177 0 obj -<< /S /GoTo /D (subsection.2.5.2) >> +<< /S /GoTo /D (subsubsection.2.4.5.3) >> endobj 180 0 obj -(\376\377\0002\000.\0005\000.\0002\000\040\000T\000h\000e\000\040\000t\000\040\000o\000p\000t\000i\000o\000n) +(\376\377\0002\000.\0004\000.\0005\000.\0003\000\040\000T\000r\000i\000m\000\040\000a\000n\000d\000\040\000t\000h\000i\000c\000k\000n\000e\000s\000s\000\040\000o\000f\000\040\000r\000u\000l\000e\000s) endobj 181 0 obj -<< /S /GoTo /D (subsubsection.2.5.2.1) >> +<< /S /GoTo /D (subsection.2.4.6) >> endobj 184 0 obj -(\376\377\0002\000.\0005\000.\0002\000.\0001\000\040\000P\000a\000d\000d\000i\000n\000g\000\040\000t\000h\000e\000\040\000e\000x\000p\000o\000n\000e\000n\000t\000:\000\040\000\050\000p\000a\000d\000\051) +(\376\377\0002\000.\0004\000.\0006\000\040\000S\000e\000c\000o\000n\000d\000\040\000r\000o\000w\000\040\000v\000a\000r\000i\000a\000b\000l\000e\000\040\000c\000o\000l\000u\000m\000n\000:\000\040\000r\000p\000o\000s\000=\0003\000,\0004) endobj 185 0 obj -<< /S /GoTo /D (subsection.2.5.3) >> +<< /S /GoTo /D (subsection.2.4.7) >> endobj 188 0 obj -(\376\377\0002\000.\0005\000.\0003\000\040\000I\000n\000d\000i\000c\000a\000t\000i\000n\000g\000\040\000s\000i\000g\000n\000s\000\040\000o\000u\000t\000s\000i\000d\000e\000\040\000t\000h\000e\000\040\000t\000-\000n\000o\000t\000a\000t\000i\000o\000n) +(\376\377\0002\000.\0004\000.\0007\000\040\000S\000e\000p\000a\000r\000a\000t\000i\000n\000g\000\040\000b\000l\000o\000c\000k\000s\000\040\000o\000f\000\040\000r\000o\000w\000s\000:\000\040\000r\000b\000l\000o\000c) endobj 189 0 obj -<< /S /GoTo /D (subsection.2.5.4) >> +<< /S /GoTo /D (subsubsection.2.4.7.1) >> endobj 192 0 obj -(\376\377\0002\000.\0005\000.\0004\000\040\000R\000o\000u\000n\000d\000i\000n\000g\000\040\000t\000o\000\040\000v\000a\000r\000y\000i\000n\000g\000\040\000v\000a\000l\000u\000e\000s) +(\376\377\0002\000.\0004\000.\0007\000.\0001\000\040\000A\000d\000j\000u\000s\000t\000i\000n\000g\000\040\000t\000h\000e\000\040\000e\000x\000t\000r\000a\000\040\000s\000p\000a\000c\000e\000\040\000r\000b\000l\000o\000c\000s\000e\000p\000\040) endobj 193 0 obj -<< /S /GoTo /D (subsection.2.5.5) >> +<< /S /GoTo /D (subsection.2.4.8) >> endobj 196 0 obj -(\376\377\0002\000.\0005\000.\0005\000\040\000D\000i\000f\000f\000e\000r\000e\000n\000c\000e\000s\000:\000\040\000d\000i\000f\000f\000s) +(\376\377\0002\000.\0004\000.\0008\000\040\040\030\000H\000o\000r\000i\000z\000o\000n\000t\000a\000l\040\031\000\040\000t\000a\000b\000l\000e\000s\000:\000\040\000t\000r\000a\000n\000s\000p\000o\000s\000e) endobj 197 0 obj -<< /S /GoTo /D (subsection.2.5.6) >> +<< /S /GoTo /D (subsection.2.4.9) >> endobj 200 0 obj -(\376\377\0002\000.\0005\000.\0006\000\040\000F\000o\000r\000m\000a\000t\000t\000i\000n\000g\000\040\000s\000p\000e\000c\000i\000a\000l\000\040\000v\000a\000l\000u\000e\000s\000:\000\040\000Q\000?\000\040\000a\000n\000d\000\040\000A\000!) +(\376\377\0002\000.\0004\000.\0009\000\040\000T\000a\000b\000l\000e\000\040\000p\000l\000a\000c\000e\000m\000e\000n\000t) endobj 201 0 obj -<< /S /GoTo /D (subsubsection.2.5.6.1) >> +<< /S /GoTo /D (subsubsection.2.4.9.1) >> endobj 204 0 obj -(\376\377\0002\000.\0005\000.\0006\000.\0001\000\040\000S\000t\000a\000r\000\040\000o\000p\000t\000i\000o\000n\000:\000\040\000\134\000n\000m\000c\000T\000a\000b\000u\000l\000a\000t\000e\000*) +(\376\377\0002\000.\0004\000.\0009\000.\0001\000\040\000V\000e\000r\000t\000i\000c\000a\000l\000\040\000a\000l\000i\000g\000n\000m\000e\000n\000t) endobj 205 0 obj -<< /S /GoTo /D (section.2.6) >> +<< /S /GoTo /D (section.2.5) >> endobj 208 0 obj -(\376\377\0002\000.\0006\000\040\000O\000t\000h\000e\000r\000\040\000m\000a\000t\000t\000e\000r\000s) +(\376\377\0002\000.\0005\000\040\000F\000o\000r\000m\000a\000t\000t\000i\000n\000g\000\040\000f\000u\000n\000c\000t\000i\000o\000n\000\040\000v\000a\000l\000u\000e\000s) endobj 209 0 obj -<< /S /GoTo /D (subsection.2.6.1) >> +<< /S /GoTo /D (subsection.2.5.1) >> endobj 212 0 obj -(\376\377\0002\000.\0006\000.\0001\000\040\000N\000e\000s\000t\000i\000n\000g) +(\376\377\0002\000.\0005\000.\0001\000\040\000T\000r\000a\000i\000l\000i\000n\000g\000\040\000o\000p\000t\000i\000o\000n\000a\000l\000\040\000a\000r\000g\000u\000m\000e\000n\000t) endobj 213 0 obj -<< /S /GoTo /D (subsection.2.6.2) >> +<< /S /GoTo /D (subsubsection.2.5.1.1) >> endobj 216 0 obj -(\376\377\0002\000.\0006\000.\0002\000\040\000S\000a\000v\000i\000n\000g\000\040\000t\000a\000b\000l\000e\000s\000\040\000t\000o\000\040\000f\000i\000l\000e) +(\376\377\0002\000.\0005\000.\0001\000.\0001\000\040\000F\000r\000a\000c\000t\000i\000o\000n\000-\000f\000o\000r\000m\000\040\000o\000u\000t\000p\000u\000t) endobj 217 0 obj -<< /S /GoTo /D (subsection.2.6.3) >> +<< /S /GoTo /D (subsubsection.2.5.1.2) >> endobj 220 0 obj -(\376\377\0002\000.\0006\000.\0003\000\040\000V\000i\000e\000w\000i\000n\000g\000\040\000t\000h\000e\000\040\000L\000a\000T\000e\000X\000\040\000f\000o\000r\000m) +(\376\377\0002\000.\0005\000.\0001\000.\0002\000\040\000S\000c\000i\000e\000n\000t\000i\000f\000i\000c\000\040\000n\000o\000t\000a\000t\000i\000o\000n) endobj 221 0 obj -<< /S /GoTo /D (chapter.3) >> +<< /S /GoTo /D (subsection.2.5.2) >> endobj 224 0 obj -(\376\377\0003\000\040\000R\000e\000f\000e\000r\000e\000n\000c\000e\000\040\000s\000u\000m\000m\000a\000r\000y) +(\376\377\0002\000.\0005\000.\0002\000\040\000T\000h\000e\000\040\000t\000\040\000o\000p\000t\000i\000o\000n) endobj 225 0 obj -<< /S /GoTo /D (section.3.1) >> +<< /S /GoTo /D (subsubsection.2.5.2.1) >> endobj 228 0 obj -(\376\377\0003\000.\0001\000\040\000C\000o\000m\000m\000a\000n\000d\000s\000\040\000d\000e\000f\000i\000n\000e\000d\000\040\000i\000n\000\040\000n\000u\000m\000e\000r\000i\000c\000a\000-\000t\000a\000b\000l\000e\000s) +(\376\377\0002\000.\0005\000.\0002\000.\0001\000\040\000P\000a\000d\000d\000i\000n\000g\000\040\000t\000h\000e\000\040\000e\000x\000p\000o\000n\000e\000n\000t\000:\000\040\000\050\000p\000a\000d\000\051) endobj 229 0 obj -<< /S /GoTo /D (section.3.2) >> +<< /S /GoTo /D (subsubsection.2.5.2.2) >> endobj 232 0 obj -(\376\377\0003\000.\0002\000\040\000S\000e\000t\000t\000i\000n\000g\000s\000\040\000f\000o\000r\000\040\000\134\000n\000m\000c\000T\000a\000b\000u\000l\000a\000t\000e) +(\376\377\0002\000.\0005\000.\0002\000.\0002\000\040\000A\000c\000c\000o\000m\000m\000o\000d\000a\000t\000i\000n\000g\000\040\000s\000i\000g\000n\000s\000\040\000i\000n\000\040\000t\000h\000e\000\040\000t\000-\000n\000o\000t\000a\000t\000i\000o\000n) endobj 233 0 obj -<< /S /GoTo /D (chapter*.14) >> +<< /S /GoTo /D (subsection.2.5.3) >> endobj 236 0 obj -(\376\377\000I\000n\000d\000e\000x) +(\376\377\0002\000.\0005\000.\0003\000\040\000I\000n\000d\000i\000c\000a\000t\000i\000n\000g\000\040\000s\000i\000g\000n\000s\000\040\000o\000u\000t\000s\000i\000d\000e\000\040\000t\000h\000e\000\040\000t\000-\000n\000o\000t\000a\000t\000i\000o\000n) endobj 237 0 obj -<< /S /GoTo /D [238 0 R /Fit] >> +<< /S /GoTo /D (subsection.2.5.4) >> +endobj +240 0 obj +(\376\377\0002\000.\0005\000.\0004\000\040\000C\000e\000l\000l\000-\000,\000\040\000r\000o\000w\000-\000,\000\040\000c\000o\000l\000u\000m\000n\000-\000d\000e\000p\000e\000n\000d\000e\000n\000t\000\040\000r\000o\000u\000n\000d\000i\000n\000g) endobj 241 0 obj +<< /S /GoTo /D (subsection.2.5.5) >> +endobj +244 0 obj +(\376\377\0002\000.\0005\000.\0005\000\040\000D\000i\000f\000f\000e\000r\000e\000n\000c\000e\000s\000:\000\040\000d\000i\000f\000f\000s) +endobj +245 0 obj +<< /S /GoTo /D (subsection.2.5.6) >> +endobj +248 0 obj +(\376\377\0002\000.\0005\000.\0006\000\040\000F\000o\000r\000m\000a\000t\000t\000i\000n\000g\000\040\000s\000p\000e\000c\000i\000a\000l\000\040\000v\000a\000l\000u\000e\000s\000:\000\040\000Q\000?\000\040\000a\000n\000d\000\040\000A\000!) +endobj +249 0 obj +<< /S /GoTo /D (subsubsection.2.5.6.1) >> +endobj +252 0 obj +(\376\377\0002\000.\0005\000.\0006\000.\0001\000\040\000S\000t\000a\000r\000\040\000o\000p\000t\000i\000o\000n\000:\000\040\000\134\000n\000m\000c\000T\000a\000b\000u\000l\000a\000t\000e\000*) +endobj +253 0 obj +<< /S /GoTo /D (section.2.6) >> +endobj +256 0 obj +(\376\377\0002\000.\0006\000\040\000O\000t\000h\000e\000r\000\040\000m\000a\000t\000t\000e\000r\000s) +endobj +257 0 obj +<< /S /GoTo /D (subsection.2.6.1) >> +endobj +260 0 obj +(\376\377\0002\000.\0006\000.\0001\000\040\000N\000e\000s\000t\000i\000n\000g) +endobj +261 0 obj +<< /S /GoTo /D (subsection.2.6.2) >> +endobj +264 0 obj +(\376\377\0002\000.\0006\000.\0002\000\040\000S\000a\000v\000i\000n\000g\000\040\000t\000a\000b\000l\000e\000s\000\040\000t\000o\000\040\000f\000i\000l\000e) +endobj +265 0 obj +<< /S /GoTo /D (subsection.2.6.3) >> +endobj +268 0 obj +(\376\377\0002\000.\0006\000.\0003\000\040\000V\000i\000e\000w\000i\000n\000g\000\040\000t\000h\000e\000\040\000L\000a\000T\000e\000X\000\040\000f\000o\000r\000m) +endobj +269 0 obj +<< /S /GoTo /D (chapter.3) >> +endobj +272 0 obj +(\376\377\0003\000\040\000R\000e\000f\000e\000r\000e\000n\000c\000e\000\040\000s\000u\000m\000m\000a\000r\000y) +endobj +273 0 obj +<< /S /GoTo /D (section.3.1) >> +endobj +276 0 obj +(\376\377\0003\000.\0001\000\040\000C\000o\000m\000m\000a\000n\000d\000s\000\040\000d\000e\000f\000i\000n\000e\000d\000\040\000i\000n\000\040\000n\000u\000m\000e\000r\000i\000c\000a\000-\000t\000a\000b\000l\000e\000s) +endobj +277 0 obj +<< /S /GoTo /D (section.3.2) >> +endobj +280 0 obj +(\376\377\0003\000.\0002\000\040\000S\000e\000t\000t\000i\000n\000g\000s\000\040\000f\000o\000r\000\040\000\134\000n\000m\000c\000T\000a\000b\000u\000l\000a\000t\000e) +endobj +281 0 obj +<< /S /GoTo /D (chapter*.16) >> +endobj +284 0 obj +(\376\377\000I\000n\000d\000e\000x) +endobj +285 0 obj +<< /S /GoTo /D [286 0 R /Fit] >> +endobj +289 0 obj << -/Length 263 +/Length 269 /Filter /FlateDecode >> stream -xu=O0\}>۱7@H
T|TI'B 1~X&y]&-;%i+HvHAEa<S}~U~vnUi-'j%!l>3Y~r&e$
E4r_>Lh5MHD% 1:UDYY2PJ;ORsdv屭}[ȠfŃ1X$4j!E6tTc+fJ!:oRAf? +xuN0E^γ;@b@B,2*ZOҴB JX $\o?eTh(Uhk9PjSTlwZpF' e85C6S(#
£-Ы%?Wyj!IQB +(2HQ +v2iTd6'秮jZ<(m"E튇`Jca>R*
Q!g` ectt˳$˒*7ߢ5g endstream endobj -238 0 obj +286 0 obj << /Type /Page -/Contents 241 0 R -/Resources 240 0 R +/Contents 289 0 R +/Resources 288 0 R /MediaBox [0 0 612 792] -/Parent 246 0 R -/Annots [ 239 0 R ] +/Parent 294 0 R +/Annots [ 287 0 R ] >> endobj -239 0 obj +287 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[0 1 1] @@ -384,100 +458,109 @@ endobj /Subtype/Link/A<</Type/Action/S/URI/URI(ajparsloe@gmail.com)>> >> endobj -242 0 obj +290 0 obj << -/D [238 0 R /XYZ 132.768 705.06 null] +/D [286 0 R /XYZ 132.768 705.06 null] >> endobj -243 0 obj +291 0 obj << -/D [238 0 R /XYZ 133.768 667.198 null] +/D [286 0 R /XYZ 133.768 667.198 null] >> endobj -240 0 obj +288 0 obj << -/Font << /F39 244 0 R /F40 245 0 R >> +/Font << /F39 292 0 R /F40 293 0 R >> /ProcSet [ /PDF /Text ] >> endobj -249 0 obj +297 0 obj << -/Length 485 +/Length 509 /Filter /FlateDecode >> stream -xڕTMo0怃?)^u+fA85B=
-pv(>Y3'D T- c! +xڍTM0
G"^'9"57@Mj/êzv*VR?gOJ}A{x|hq*]k +2,,m
}>?/Oȯ
oQ&ts%ȥ endstream endobj -248 0 obj +296 0 obj << /Type /Page -/Contents 249 0 R -/Resources 247 0 R +/Contents 297 0 R +/Resources 295 0 R /MediaBox [0 0 612 792] -/Parent 246 0 R +/Parent 294 0 R >> endobj -247 0 obj +295 0 obj << -/Font << /F52 250 0 R /F37 251 0 R /F53 252 0 R >> +/Font << /F52 298 0 R /F37 299 0 R /F53 300 0 R >> /ProcSet [ /PDF /Text ] >> endobj -255 0 obj +303 0 obj << -/Length 1733 +/Length 1608 /Filter /FlateDecode >> stream -xX[D~_7\챵OEt> -i99{;'Cq:|"_x<V̏7!CB<Jtg2{8z\,V*Δ}Fpύ/ %lX>o+)"+-Ү0-VTw`&J -Q$'Dt90 -t;=Iڮ64q ]3+>&L^^#I=1顳-ViDfR}a +xXY6~_@҅<hI<])P٢wptd7ᐲd"s|3nt}8,:]8WqYe 2D}}*,:qx*_w\=b7@e: +b-0Uo?o~=V|dK|sWYXLXf0?8VLחmCIƩpTL؟!]ϷCݰ2 ySμˎv[GL$ +("ά QRo赃A"֞[t06$Hs2CIդ(BuuƊ)ks6 ʼnИ'hI<eFSd)[UY3I9d?%bƕw_K/7s · +J=qES'^hh۪_7?*.X0zj&n +)%h]Kvh+RS4K.3(sDڿw31xo@[qK^**$I86gMk>`)lDТ98<tT)B_nq>lz!%KAZtnNdqttL7n+|c՛UH 4o\=iKA
y@̅sacΤRgqetQVfP 6*t+jz3eszġ˛fEgQ2x6Dšw6>l\4N\ +5tionzRyI1b(mOI"t݉Л#81N$>-z}eH[%ϳ2Y/YhY7'תX7㥡Y)dz搏`+V<`f +]\iH62=!ػǎ-ja4w9`VOD +88.ߣUzt +;VT +u)7s֣4t2 +GW#zn¿q7:&N0mqMT'X^O0kwoέOW4`y7&Sۺ8~,(/kSuqsxW?#%8(J(kDX䬸Pl endstream endobj -254 0 obj +302 0 obj << /Type /Page -/Contents 255 0 R -/Resources 253 0 R +/Contents 303 0 R +/Resources 301 0 R /MediaBox [0 0 612 792] -/Parent 246 0 R +/Parent 294 0 R >> endobj -253 0 obj +301 0 obj << -/Font << /F54 256 0 R /F37 251 0 R /F53 252 0 R /F64 257 0 R /F65 258 0 R /F52 250 0 R >> +/Font << /F54 304 0 R /F37 299 0 R /F53 300 0 R /F55 305 0 R /F52 298 0 R >> /ProcSet [ /PDF /Text ] >> endobj -295 0 obj +342 0 obj << -/Length 1497 +/Length 1491 /Filter /FlateDecode >> stream -x՚IF+tEU}vŮ*Tv#MI}^k5,h^~{>nzTHiE#!%'Bqo:>d_D#5厀eKG%gTZQ$)B$0T?Y: 9̊[ͯ>Tb-|wz^@2Bԛ!؎`JD3?|XGc~^d&v!K=1aG#"46YSGkp05oɄj݄ sMEO۱1E -DIm -܁4 g4`g
zo@w&iX 2qn/XGzVzW_^髜&itlB|ZЌiҚ8Ԅ3ܐ|cj0[l;.2k>B" -; qU[DB`GYbF#H2u#3!f1<V;[e48;;֛(^PǬtypJ3\aͬT*[dT~0r=, -ĥ&2Vw -̃iUHI45Iq@kͩᎍÀ:͌ޮe%֣
Cvq0_9"ȩG"7ENYE<\L)+G\ ?"*C)/ck8˪:*VG tH%ϗŜ08
an#rFPRgF㦢]zJCHF_ȻN$ظ´/٫3TD\rlq#4W#Vi0lsfL9~BAt|ϘYXγ늦hX-髄qMPڄ6;Uz~Yq`{[K̇Jwmz.%Ќޗn.whD.jvRȔ@eExΰ}9ԒÉ3f.dC=d-/Q0abm'+̱C!״i~- -|C.ֻ.Jw辺Fv9yob=D~8j:"@R2lHQ<=eQW\NXi~[t_Ͼm\]WiM^Dz+W9gWDۏ-Dvjiz4.iz/} +xYnF+)]4A(utAKD&r~}!JH#K^Pw8{8X8xwOo +(GJ+LoRRB)$c'u^߮AY[40H*)D4#d*_
벘Dpfu +֭X݇}G "!lG0x6*'^$+caZ5$DH`|7vNDxZOmG;&`*m$"88RdHO=F!ů$U2o-#A_<0?8cV ]* +\`>)oRC!N1kvzuzvʸ@>ha9xh_ܳNڦN7%B,;u+GX"[2I95|P,;-NU9N{f<ook\9 +8JwIxt]8vq:([lo9(4U8Dx%Eh +i:P2)3T>3i?zDQŧSXnUwJJS)Z'6Ə
Fh6|[Hu$,$9HF$i9=+3$aUvG +1`q?%ͫƼjl43CXϖޙ
+2u TF +Ul$O̾ +U焚v2^jLDrf iۆcsVlz/ӫoSsM endstream endobj -294 0 obj +341 0 obj << /Type /Page -/Contents 295 0 R -/Resources 293 0 R +/Contents 342 0 R +/Resources 340 0 R /MediaBox [0 0 612 792] -/Parent 246 0 R -/Annots [ 259 0 R 260 0 R 261 0 R 262 0 R 263 0 R 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 ] +/Parent 294 0 R +/Annots [ 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 327 0 R 328 0 R 329 0 R 330 0 R 331 0 R 332 0 R 333 0 R 334 0 R 335 0 R 336 0 R 337 0 R 338 0 R ] >> endobj -259 0 obj +306 0 obj << /Type /Annot /Subtype /Link @@ -486,5548 +569,6681 @@ endobj /A << /S /GoTo /D (chapter.1) >> >> endobj -260 0 obj +307 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [147.716 502.814 239.428 511.67] +/Rect [147.716 500.877 242.832 511.67] /A << /S /GoTo /D (section.1.1) >> >> endobj -261 0 obj +308 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [147.716 488.922 234.419 499.715] +/Rect [147.716 490.859 239.428 499.715] /A << /S /GoTo /D (section.1.2) >> >> endobj -262 0 obj +309 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [132.772 467.004 254.768 477.898] +/Rect [170.63 476.967 282.737 487.76] +/A << /S /GoTo /D (subsection.1.2.1) >> +>> +endobj +310 0 obj +<< +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [170.63 466.949 298.428 475.215] +/A << /S /GoTo /D (subsection.1.2.2) >> +>> +endobj +311 0 obj +<< +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [147.716 453.057 234.419 463.849] +/A << /S /GoTo /D (section.1.3) >> +>> +endobj +312 0 obj +<< +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [132.772 431.139 254.768 442.033] /A << /S /GoTo /D (chapter.2) >> >> endobj -263 0 obj +313 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [147.716 455.049 265.884 465.842] +/Rect [147.716 419.184 265.884 429.976] /A << /S /GoTo /D (section.2.1) >> >> endobj -264 0 obj +314 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [170.63 443.094 380.26 453.887] +/Rect [170.63 407.228 380.26 418.021] /A << /S /GoTo /D (subsection.2.1.1) >> >> endobj -265 0 obj +315 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [170.63 431.139 399.632 441.932] +/Rect [202.511 395.273 326.13 406.066] +/A << /S /GoTo /D (subsubsection.2.1.1.1) >> +>> +endobj +316 0 obj +<< +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [170.63 383.318 399.632 394.111] /A << /S /GoTo /D (subsection.2.1.2) >> >> endobj -266 0 obj +317 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [202.511 421.121 271.502 429.387] +/Rect [202.511 373.3 271.502 381.566] /A << /S /GoTo /D (subsubsection.2.1.2.1) >> >> endobj -267 0 obj +318 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [202.511 407.228 339.303 417.432] +/Rect [202.511 359.408 376.773 369.611] /A << /S /GoTo /D (subsubsection.2.1.2.2) >> >> endobj -268 0 obj +319 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [170.63 395.273 385.491 406.066] +/Rect [202.511 349.39 334.709 358.245] +/A << /S /GoTo /D (subsubsection.2.1.2.3) >> +>> +endobj +320 0 obj +<< +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [170.63 335.497 405.112 346.29] /A << /S /GoTo /D (subsection.2.1.3) >> >> endobj -269 0 obj +321 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [202.511 383.318 326.13 394.111] +/Rect [202.511 323.266 362.494 334.335] /A << /S /GoTo /D (subsubsection.2.1.3.1) >> >> endobj -270 0 obj +322 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [202.511 373.3 298.484 382.156] +/Rect [202.511 311.31 329.312 322.38] /A << /S /GoTo /D (subsubsection.2.1.3.2) >> >> endobj -271 0 obj +323 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [202.511 359.131 329.312 370.2] +/Rect [202.511 301.569 298.484 310.425] /A << /S /GoTo /D (subsubsection.2.1.3.3) >> >> endobj -272 0 obj +324 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [202.511 349.39 367.447 358.245] +/Rect [202.511 289.614 367.447 298.469] /A << /S /GoTo /D (subsubsection.2.1.3.4) >> >> endobj -273 0 obj +325 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [202.511 335.221 375.252 346.29] +/Rect [202.511 275.445 375.252 286.514] /A << /S /GoTo /D (subsubsection.2.1.3.5) >> >> endobj -274 0 obj +326 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [202.511 323.266 362.494 334.335] +/Rect [202.511 265.704 383.222 274.559] /A << /S /GoTo /D (subsubsection.2.1.3.6) >> >> endobj -275 0 obj +327 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [202.511 311.31 356.904 321.791] +/Rect [202.511 253.748 271.502 262.015] /A << /S /GoTo /D (subsubsection.2.1.3.7) >> >> endobj -276 0 obj +328 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [202.511 301.569 362.162 310.425] +/Rect [202.511 239.579 356.904 250.06] /A << /S /GoTo /D (subsubsection.2.1.3.8) >> >> endobj -277 0 obj +329 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [170.63 287.677 337.67 298.469] -/A << /S /GoTo /D (subsection.2.1.4) >> +/Rect [147.716 227.901 280.966 238.694] +/A << /S /GoTo /D (section.2.2) >> >> endobj -278 0 obj +330 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [147.716 275.722 280.966 286.514] -/A << /S /GoTo /D (section.2.2) >> +/Rect [170.63 215.946 290.513 226.738] +/A << /S /GoTo /D (subsection.2.2.1) >> >> endobj -279 0 obj +331 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [170.63 263.766 320.512 274.559] -/A << /S /GoTo /D (subsection.2.2.1) >> +/Rect [170.63 203.991 320.512 214.783] +/A << /S /GoTo /D (subsection.2.2.2) >> >> endobj -280 0 obj +332 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [202.511 251.811 338.362 262.604] -/A << /S /GoTo /D (subsubsection.2.2.1.1) >> +/Rect [202.511 192.035 338.362 202.828] +/A << /S /GoTo /D (subsubsection.2.2.2.1) >> >> endobj -281 0 obj +333 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [202.511 239.579 380.233 250.649] -/A << /S /GoTo /D (subsubsection.2.2.1.2) >> +/Rect [202.511 182.017 336.425 190.873] +/A << /S /GoTo /D (subsubsection.2.2.2.2) >> >> endobj -282 0 obj +334 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [202.511 229.838 364.874 238.694] -/A << /S /GoTo /D (subsubsection.2.2.1.3) >> +/Rect [202.511 167.848 329.894 178.329] +/A << /S /GoTo /D (subsubsection.2.2.2.3) >> >> endobj -283 0 obj +335 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [202.511 215.669 329.312 226.738] -/A << /S /GoTo /D (subsubsection.2.2.1.4) >> +/Rect [202.511 155.893 350.013 166.963] +/A << /S /GoTo /D (subsubsection.2.2.2.4) >> >> endobj -284 0 obj +336 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [202.511 203.714 390.002 214.783] -/A << /S /GoTo /D (subsubsection.2.2.1.5) >> +/Rect [202.511 146.152 364.874 155.007] +/A << /S /GoTo /D (subsubsection.2.2.2.5) >> >> endobj -285 0 obj +337 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [202.511 192.035 331.36 202.828] -/A << /S /GoTo /D (subsubsection.2.2.1.6) >> +/Rect [202.511 131.983 329.312 143.052] +/A << /S /GoTo /D (subsubsection.2.2.2.6) >> >> endobj -286 0 obj +338 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [147.716 180.08 324.941 190.873] -/A << /S /GoTo /D (section.2.3) >> +/Rect [202.511 120.028 390.002 131.097] +/A << /S /GoTo /D (subsubsection.2.2.2.7) >> >> endobj -287 0 obj +343 0 obj +<< +/D [341 0 R /XYZ 132.768 705.06 null] +>> +endobj +344 0 obj +<< +/D [341 0 R /XYZ 133.768 667.198 null] +>> +endobj +340 0 obj +<< +/Font << /F57 345 0 R /F52 298 0 R /F37 299 0 R /F53 300 0 R /F67 346 0 R >> +/ProcSet [ /PDF /Text ] +>> +endobj +386 0 obj +<< +/Length 1845 +/Filter /FlateDecode +>> +stream +x՚koFWhtE4bv-6w)R ͯr8pL)ry\sFxr;/a$OIO_>l+&Id~3!D +(r:R%ߦtKfJuGn?{۹HKio[eub\ףL`nvizF 5{&38D/GxRppG'u. +KK0r${TX{!3v3M^Mdvu)MVugVtS{Yq_٤=|'œ +H"|C8OY1ɾ~ +C[fUԱ#JshHq8GeF)FIEnP3yY%o]ޱ +٩nT2*} eE(N@ A&rA 2-}u<Vu18;e騩ZLj5:\emKB+ OwʛӅkQf4싏]2F$i +{1C!Zs>0ZO>Xzq@P$R:VIzuw>8DG1Sn[u^.Fs*/nNh84aB|x,{.|ⰿ7UWӅ2ǬQbHj^bq'bKvUq'!I!Fя*mbr/<Zr +prsp#m2N2!~vEVME\g}@q3de-]{nق{P
||IX#NNp1,ʵ|ݴb!lCv +ZX
<M~☝>ZdnV-i3,-&mC QL8;S0tT A#t!rJ'S`Q:>5avXn +)1j{GVQ}͏$xfo%Coc`y!^_m+y쎮U~H1ag5ϙ}RPAtIDF1f&0.IGR=G̍w@+ +ywἻi8%Iœ] +=BV{czb(홏"WŶ)]oXL+ʥ:xij q}̅n>УDQ5(A:J7I^NbOŹ +endstream +endobj +385 0 obj +<< +/Type /Page +/Contents 386 0 R +/Resources 384 0 R +/MediaBox [0 0 612 792] +/Parent 294 0 R +/Annots [ 339 0 R 347 0 R 348 0 R 349 0 R 350 0 R 351 0 R 352 0 R 353 0 R 354 0 R 355 0 R 356 0 R 357 0 R 358 0 R 359 0 R 360 0 R 361 0 R 362 0 R 363 0 R 364 0 R 365 0 R 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 378 0 R 379 0 R 380 0 R 381 0 R 382 0 R 383 0 R ] +>> +endobj +339 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [147.716 168.125 286.39 178.918] -/A << /S /GoTo /D (section.2.4) >> +/Rect [202.511 654.302 330.753 665.095] +/A << /S /GoTo /D (subsubsection.2.2.2.8) >> >> endobj -288 0 obj +347 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [170.63 158.107 382.917 166.963] -/A << /S /GoTo /D (subsection.2.4.1) >> +/Rect [202.511 644.284 322.588 653.139] +/A << /S /GoTo /D (subsubsection.2.2.2.9) >> >> endobj -289 0 obj +348 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [170.63 146.152 348.934 155.007] -/A << /S /GoTo /D (subsection.2.4.2) >> +/Rect [147.716 630.392 324.941 641.184] +/A << /S /GoTo /D (section.2.3) >> >> endobj -290 0 obj +349 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [170.63 131.706 320.429 143.661] -/A << /S /GoTo /D (subsection.2.4.3) >> +/Rect [147.716 618.436 286.39 629.229] +/A << /S /GoTo /D (section.2.4) >> >> endobj -291 0 obj +350 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [170.63 122.242 283.18 131.097] -/A << /S /GoTo /D (subsection.2.4.4) >> +/Rect [170.63 608.418 382.917 617.274] +/A << /S /GoTo /D (subsection.2.4.1) >> >> endobj -296 0 obj +351 0 obj << -/D [294 0 R /XYZ 132.768 705.06 null] +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [170.63 596.463 348.934 605.319] +/A << /S /GoTo /D (subsection.2.4.2) >> >> endobj -297 0 obj +352 0 obj << -/D [294 0 R /XYZ 133.768 667.198 null] +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [170.63 582.017 320.429 593.973] +/A << /S /GoTo /D (subsection.2.4.3) >> >> endobj -293 0 obj +353 0 obj << -/Font << /F67 298 0 R /F52 250 0 R /F37 251 0 R /F68 299 0 R /F53 252 0 R >> -/ProcSet [ /PDF /Text ] +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [170.63 572.553 279.859 581.408] +/A << /S /GoTo /D (subsection.2.4.4) >> >> endobj -327 0 obj +354 0 obj << -/Length 1318 -/Filter /FlateDecode +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [170.63 560.598 307.146 569.453] +/A << /S /GoTo /D (subsection.2.4.5) >> >> -stream -xՙnFU9S(6I[]l!(&G -[$igRRai,Oboa
> ^1ڍ77No^fTzәG1C!Lx{SLBe连(瓀*?L1 c*ͳr'wE] $?zv`svx#H) -6 @8ȋ<ЯEʞk6E)9Os -WbtpWy5?HW"qX:DXa***-h0.Kx6 -(""ϓCzgT($tX/-䯺2zo
*v\Ee&zYiV 6<hCV}rg:}-1 &H*I<)2bk%[;LQqΣE:a_y*AZeR;̙nׁ%_ww˨j -g{ُFiquTD|eۡ5 9u'/@IHGVkI8V[3fy55+wZ2^<NuOcPPĄU{SH7*ٽP4'd<>5l^ԕovDI2&KVʺ4*`kHcWQ6wEt"0Bb]%0ⷴ`41;`_y -͟6buF]y%.*ߜ?n@E&(}^o-3qK$baGxg9Fg7n:tmMͨ}sfµ߉ڏGtCKSJ=M'M q)]?bSϨyOϖ4zQe<%K4N4DL7_w(lbЬs5@~ߐob1ץ>6~Iv/<DԻkewv7Fv_+8N/ަZT3IIC΄£oH爩}fhrI?75 -*,1!=n0 -2'*DÊhZm`:r nՓcܞiLXJl3.KdIW3f57$d Ã)e=0$a_q;heP"Ct$w"D\+g>
d -endstream endobj -326 0 obj +355 0 obj << -/Type /Page -/Contents 327 0 R -/Resources 325 0 R -/MediaBox [0 0 612 792] -/Parent 246 0 R -/Annots [ 292 0 R 300 0 R 301 0 R 302 0 R 303 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 ] +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [202.511 548.643 348.159 557.498] +/A << /S /GoTo /D (subsubsection.2.4.5.1) >> >> endobj -292 0 obj +356 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [202.511 656.239 316.417 665.095] -/A << /S /GoTo /D (subsubsection.2.4.4.1) >> +/Rect [202.511 536.687 345.668 545.543] +/A << /S /GoTo /D (subsubsection.2.4.5.2) >> >> endobj -300 0 obj +357 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [170.63 644.284 307.146 653.139] -/A << /S /GoTo /D (subsection.2.4.5) >> +/Rect [202.511 524.732 364.016 533.588] +/A << /S /GoTo /D (subsubsection.2.4.5.3) >> >> endobj -301 0 obj +358 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [170.63 630.115 364.901 641.184] +/Rect [170.63 510.563 375.362 521.633] /A << /S /GoTo /D (subsection.2.4.6) >> >> endobj -302 0 obj +359 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [170.63 618.436 348.989 629.229] +/Rect [170.63 498.885 348.989 509.677] /A << /S /GoTo /D (subsection.2.4.7) >> >> endobj -303 0 obj +360 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [202.511 606.205 407.686 617.274] +/Rect [202.511 486.653 407.686 497.722] /A << /S /GoTo /D (subsubsection.2.4.7.1) >> >> endobj -304 0 obj +361 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [170.63 594.526 275.902 605.319] +/Rect [170.63 474.698 338.556 485.767] /A << /S /GoTo /D (subsection.2.4.8) >> >> endobj -305 0 obj +362 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [202.511 582.571 325.355 593.364] -/A << /S /GoTo /D (subsubsection.2.4.8.1) >> +/Rect [170.63 463.019 275.902 473.812] +/A << /S /GoTo /D (subsection.2.4.9) >> >> endobj -306 0 obj +363 0 obj +<< +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [202.511 451.064 325.355 461.857] +/A << /S /GoTo /D (subsubsection.2.4.9.1) >> +>> +endobj +364 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [147.716 570.616 286.252 581.408] +/Rect [147.716 439.109 290.182 449.902] /A << /S /GoTo /D (section.2.5) >> >> endobj -307 0 obj +365 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [170.63 558.661 321.896 569.453] +/Rect [170.63 427.154 321.896 437.946] /A << /S /GoTo /D (subsection.2.5.1) >> >> endobj -308 0 obj +366 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [202.511 546.705 337.698 557.498] +/Rect [202.511 415.199 337.698 425.991] /A << /S /GoTo /D (subsubsection.2.5.1.1) >> >> endobj -309 0 obj +367 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [202.511 536.687 324.221 545.543] +/Rect [202.511 405.181 324.221 414.036] /A << /S /GoTo /D (subsubsection.2.5.1.2) >> >> endobj -310 0 obj +368 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [170.63 522.795 261.207 533.588] +/Rect [170.63 391.288 261.207 402.081] /A << /S /GoTo /D (subsection.2.5.2) >> >> endobj -311 0 obj +369 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [202.511 510.563 374.588 521.688] +/Rect [202.511 379.056 374.588 390.181] /A << /S /GoTo /D (subsubsection.2.5.2.1) >> >> endobj -312 0 obj +370 0 obj +<< +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [202.511 367.378 417.565 378.171] +/A << /S /GoTo /D (subsubsection.2.5.2.2) >> +>> +endobj +371 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [170.63 498.885 371.544 509.677] +/Rect [170.63 355.423 371.544 366.215] /A << /S /GoTo /D (subsection.2.5.3) >> >> endobj -313 0 obj +372 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [170.63 486.93 324 497.722] +/Rect [170.63 343.468 378.073 354.26] /A << /S /GoTo /D (subsection.2.5.4) >> >> endobj -314 0 obj +373 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [170.63 476.912 285.117 485.767] +/Rect [170.63 333.45 285.117 342.305] /A << /S /GoTo /D (subsection.2.5.5) >> >> endobj -315 0 obj +374 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [170.63 463.019 366.285 473.812] +/Rect [170.63 319.557 366.285 330.35] /A << /S /GoTo /D (subsection.2.5.6) >> >> endobj -316 0 obj +375 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [202.511 451.064 369.827 461.912] +/Rect [202.511 307.602 369.827 318.45] /A << /S /GoTo /D (subsubsection.2.5.6.1) >> >> endobj -317 0 obj +376 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [147.716 441.046 234.723 449.902] +/Rect [147.716 297.584 234.723 306.44] /A << /S /GoTo /D (section.2.6) >> >> endobj -318 0 obj +377 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [170.63 427.154 237.491 437.946] +/Rect [170.63 283.692 237.491 294.484] /A << /S /GoTo /D (subsection.2.6.1) >> >> endobj -319 0 obj +378 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [170.63 415.199 290.348 425.991] +/Rect [170.63 271.737 290.348 282.529] /A << /S /GoTo /D (subsection.2.6.2) >> >> endobj -320 0 obj +379 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [170.63 403.036 309.245 414.036] +/Rect [170.63 259.574 309.245 270.574] /A << /S /GoTo /D (subsection.2.6.3) >> >> endobj -321 0 obj +380 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [132.772 381.326 249.115 392.22] +/Rect [132.772 237.864 249.115 248.758] /A << /S /GoTo /D (chapter.3) >> >> endobj -322 0 obj +381 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [147.716 371.308 349.17 380.163] +/Rect [147.716 227.846 349.17 236.701] /A << /S /GoTo /D (section.3.1) >> >> endobj -323 0 obj +382 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [147.716 357.415 288.882 368.264] +/Rect [147.716 213.953 288.882 224.801] /A << /S /GoTo /D (section.3.2) >> >> endobj -324 0 obj +383 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [132.772 337.435 163.138 346.392] -/A << /S /GoTo /D (chapter*.14) >> +/Rect [132.772 193.973 163.138 202.929] +/A << /S /GoTo /D (chapter*.16) >> >> endobj -328 0 obj +387 0 obj << -/D [326 0 R /XYZ 132.768 705.06 null] +/D [385 0 R /XYZ 132.768 705.06 null] >> endobj -325 0 obj +384 0 obj << -/Font << /F37 251 0 R /F53 252 0 R /F64 257 0 R /F52 250 0 R >> +/Font << /F37 299 0 R /F53 300 0 R /F68 388 0 R /F52 298 0 R >> /ProcSet [ /PDF /Text ] >> endobj -331 0 obj +393 0 obj << -/Length 1894 +/Length 1815 /Filter /FlateDecode >> stream -xڝXۯ4߿oioHi"GEM64'{`;sq䜀ڞǞodw%JߤN&qJ{<Rq;؈tX~Ae&m:LdwE{%`}*q4l3"۾m2ऺ=#|iQpBA -Gp!.eK{VIt[v>Mf=TWnn@
~c$3NLmXQXneJucR+8dӭ$Np* -U&IH3Go9cm҉%KRk\Lmbi;@СxByl'
8xi di.iB^ڦA -ǁ'#Ms뭩zOLb=µdW3ÅB>X9_zĬһǽCe<N_!<ޢuAoHfq~ڡ͖3̌\f3MK4gsM~; {e% 1Zy_7
t*0 \3^p4̇)WGqIc} ->B4 -
]xkNtJw[$
IhH
MӀ%[(@| ]
aRF 6aޝNg"C8h#WWpn\Ͼ}f -RXRclUdV /ZAIٲZ4f13z2?LoF:v_ -*U!=OH&U 2RcU>Q -6Ͼ -Fpj:5)]2.RʦSNvY@ziE `FNel??qxN҅"!34D4#5? -S)T{h/č+o+ G/_RR -G@YO!e|(v<\M xjj^`v[윱EJBi#$#5,=KhmF;~ -BnH#u;1OAE~]ٵpB$HutBSnL TqIvkܯuiK}wJKM +xڕXK6WMZ[v )Cд{) +TZAVКsfOuuM@OX}OD]Y +o8 +MXqx +q)AP?eC=).bW;'姧ij1(a={,m$/@PMCSo +c"'tp@?sXsLwB./xn(>eQp+e9F39{u@HՐ/rvθMûW>eg</.X endstream endobj -330 0 obj +392 0 obj << /Type /Page -/Contents 331 0 R -/Resources 329 0 R +/Contents 393 0 R +/Resources 391 0 R /MediaBox [0 0 612 792] -/Parent 246 0 R +/Parent 294 0 R +/Annots [ 389 0 R 390 0 R ] >> endobj -332 0 obj +389 0 obj +<< +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [420.367 223.39 450.587 235.346] +/A << /S /GoTo /D (subsubsection.2.5.6.1) >> +>> +endobj +390 0 obj +<< +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [418.255 116.347 440.726 127.14] +/A << /S /GoTo /D (subsection.2.4.5) >> +>> +endobj +394 0 obj << -/D [330 0 R /XYZ 132.768 705.06 null] +/D [392 0 R /XYZ 132.768 705.06 null] >> endobj 2 0 obj << -/D [330 0 R /XYZ 133.768 667.198 null] +/D [392 0 R /XYZ 133.768 667.198 null] +>> +endobj +395 0 obj +<< +/D [392 0 R /XYZ 133.768 327.527 null] +>> +endobj +396 0 obj +<< +/D [392 0 R /XYZ 133.768 307.602 null] >> endobj 6 0 obj << -/D [330 0 R /XYZ 133.768 318.437 null] +/D [392 0 R /XYZ 133.768 278.586 null] >> endobj -329 0 obj +391 0 obj << -/Font << /F67 298 0 R /F37 251 0 R /F53 252 0 R /F65 258 0 R >> +/Font << /F57 345 0 R /F37 299 0 R /F53 300 0 R /F55 305 0 R >> /ProcSet [ /PDF /Text ] >> endobj -338 0 obj +399 0 obj << -/Length 2698 +/Length 2987 /Filter /FlateDecode >> stream -xڝYKsϯБڲċaJ*hXC -IM忧 -UCi+wl*<kow@/vg4CS5PZǭQQ_K}o/Er(;<MogI)r-ZP[ZH
ӆSn@J$Hzn -c)lmXR1lR{iJRҤuFsL?I=8&ࠢ2σp>u<6bt8jZ@O(B?=HfigN O^Pxb-:D -ܜ[x`-}f.f§1_-˄7
t;%<kb TPaqI'}&K)"A[*&1?%ɴ87sBg(H՛YM0" -k^&Rt> -?]0xskn$V|U96.U _F!mp (Z_߁xKn,[]).͑9]FQK<B -r!cN>cag][h~b iT
6S5,(qjIQ\q[\d>#h C<8fg~jr4d5xY -nbJ85:h@PPYx7.n^6QjWk*H.qQTeC4n>UỤpj'H;ip:WANW)AaM)6R -#us~wCW>/W37QpVk=~(pZeYRF? -h6>`=$4vKK +xڍY˲+3XeWrJV,lW@U*= +jc ;X6dvMN4X_i"Mٴ&QH=v_`+/0T͉g0@>\6)zz*qpDJLЊP݊tӒC_ұ+ +(0tw֑3yK؞MQp.Z2?""bmVghƅ1GB{qTiD?|-xph_V< +CV](DFGckW]N_K`P̖rb3nM !PėQ}Vt[{ΕKH<T,q/i#pkm?USކ01'Dc^ѡ$gڏ2͇XRpn)-$#v5 5ל<3Kt)a V\KTO5',C#7]N1_%i7hdt;&;&^#lC{kc_OY > +nX3;0;PK'zbF;\ށGqL91\<K0_
+2@s, +#Ps2/QȜrVݓf<rܪ`<+.9?>P˟&sbpBõ=!C?3Kko0`LnMkyezC4AUe}5ROeąx'+!) +\)#7WsldLR3T./ݨcz'~Μ$wkad endstream endobj -337 0 obj +398 0 obj << /Type /Page -/Contents 338 0 R -/Resources 336 0 R +/Contents 399 0 R +/Resources 397 0 R /MediaBox [0 0 612 792] -/Parent 345 0 R -/Annots [ 333 0 R 334 0 R 335 0 R ] +/Parent 401 0 R >> endobj -333 0 obj +400 0 obj +<< +/D [398 0 R /XYZ 132.768 705.06 null] +>> +endobj +10 0 obj +<< +/D [398 0 R /XYZ 133.768 609.332 null] +>> +endobj +14 0 obj +<< +/D [398 0 R /XYZ 133.768 209.428 null] +>> +endobj +397 0 obj +<< +/Font << /F37 299 0 R /F53 300 0 R /F57 345 0 R /F55 305 0 R >> +/ProcSet [ /PDF /Text ] +>> +endobj +408 0 obj +<< +/Length 2237 +/Filter /FlateDecode +>> +stream +xڍXY8~_ᷕ1Gc}XLBlɫ=AV(hva"w_渉7٦`Ea4ߤ*c\~)~E'CMٴoDi)["}LG<z]fڮ5UMϱn;$:i"#ӗ&qTr/x.IXMm/@a*Л,%Sg+GMW᳷I;\{LmcRay64vzu+<!*wl:xJXV쫮ne<Y˷}"7qCzIQǀ"zzlA%gTkk:'vCwFEaUن͑<cy#ybLX\a86̙Lq"-@嫶 +> ]^R)gD1S0,#]Fۗc_uȿP,^50Js<>l?t'\pg"ȈŦ`I.g|z>8c: +2iYK>L`dYVGSB"==]mf? +&3ʪ`]5ǖ#ȴ=L\5 lF +3C^wKnwu]\MkMmrZ_67KiF,d#4z+I|γ6iG +tzeom ;-7q6, +ׁl9!-&pE0ϗsÒ94ZW@+h@Ƅ~<yP8XJ&8݂W$,AOgOy\ID!_ +/ݻrXFUnf8='O9 &ލM@siKVޣjbw)KP@ǐ_g7;Ţj80ȤJtB.[2[~7gS HL)&O,c<N[CƊ3%kQB!d̳w<*ښq]Ā%X7q|܂I%[C79ilKyPki $.z~LV8 +9.* F~h3fe @^8p})m.қ0V!Eԡj5m#K9d6n^;Sf,%p`Rx$WKFebŇ<t[b/*ലuɮChS9lӄQ2ULLi=R,I;SWQęBs
(VZ'/e?=>U45E_gHY&F2jJؤ8?>R +
P槪vB/r'ÚT@!4Rqj +endstream +endobj +407 0 obj +<< +/Type /Page +/Contents 408 0 R +/Resources 406 0 R +/MediaBox [0 0 612 792] +/Parent 401 0 R +/Annots [ 402 0 R 403 0 R 404 0 R 405 0 R ] +>> +endobj +402 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [224.85 345.495 255.07 356.288] -/A << /S /GoTo /D (subsubsection.2.5.6.1) >> +/Rect [137.594 618.436 160.065 629.229] +/A << /S /GoTo /D (subsection.2.4.8) >> >> endobj -334 0 obj +403 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [421.329 314.223 428.303 325.015] -/A << /S /GoTo /D (chapter.2) >> +/Rect [197.232 496.443 227.451 507.236] +/A << /S /GoTo /D (subsubsection.2.1.3.7) >> >> endobj -335 0 obj +404 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [241.454 183.985 263.926 195.94] -/A << /S /GoTo /D (subsection.2.5.1) >> +/Rect [227.534 384.861 257.754 395.654] +/A << /S /GoTo /D (subsubsection.2.2.2.7) >> >> endobj -339 0 obj +405 0 obj << -/D [337 0 R /XYZ 132.768 705.06 null] +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [224.85 196.595 255.07 207.388] +/A << /S /GoTo /D (subsubsection.2.5.6.1) >> >> endobj -10 0 obj +409 0 obj << -/D [337 0 R /XYZ 133.768 473.175 null] +/D [407 0 R /XYZ 132.768 705.06 null] >> endobj -340 0 obj +18 0 obj << -/D [337 0 R /XYZ 133.768 385.762 null] +/D [407 0 R /XYZ 133.768 605.492 null] >> endobj -341 0 obj +22 0 obj << -/D [337 0 R /XYZ 133.768 342.81 null] +/D [407 0 R /XYZ 133.768 334.979 null] >> endobj -342 0 obj +412 0 obj << -/D [337 0 R /XYZ 133.768 311.538 null] +/D [407 0 R /XYZ 133.768 237.165 null] >> endobj -343 0 obj +413 0 obj << -/D [337 0 R /XYZ 133.768 280.057 null] +/D [407 0 R /XYZ 133.768 193.607 null] >> endobj -344 0 obj +414 0 obj << -/D [337 0 R /XYZ 133.768 225.082 null] +/D [407 0 R /XYZ 133.768 149.771 null] >> endobj -336 0 obj +406 0 obj << -/Font << /F37 251 0 R /F65 258 0 R /F67 298 0 R /F53 252 0 R /F64 257 0 R >> +/Font << /F37 299 0 R /F55 305 0 R /F53 300 0 R /F57 345 0 R /F67 346 0 R /F68 388 0 R /F58 410 0 R /F61 411 0 R >> /ProcSet [ /PDF /Text ] >> endobj -348 0 obj +419 0 obj << -/Length 1402 +/Length 2303 /Filter /FlateDecode >> stream -xڕW;8+\5#>%+સ˦e&!ɛ3J -4&9㼔t4l}(U -#j{XqR˩TᖊeQԮ%ƙXeX&Gz#ĭ7H{=O~D 1)ۺ^%9Ke1rmmё<Ya2MREՆsV`wCTU;q?WſO2p/agޕтWl1Z&bN>j*m="!ha s+ѷO47#^ed*i3l;;C$_ioGڗmբY)]26W^6ЃV;uU<6J1Y蹟gK9S)|l2r OBfC -GIF%cbW9YJa^0yu,!{ d_QP"nAJHV;ܪvG(&
@@k;ds -dC[2twmSjS?Rwi'erh%LL㳭.23UHCd{rvk4,h(2R3wZC
OlS\ܙK;&?hS
'RdZV -+U&8?g*x;cx}<`R#K[C%j{?x6XbP ch -tc( .OxUc)V߁ -[iPYg=DMZۈ%b -@Pq
DUϡhC5nW -=6}dOP8<[n|s15<v`XN ajʷf7n}l&3ߙ5u°VΑ|"Z`JgTMSQ<i*k8SƋ8S(y挩r)B`l]a6Gqn>fk!4fa猥p-!h'k4!:
T40F/D(/}C(~=|"qb^\CZ{mlT}hE s::]FSCOs]8UE27b3|1T>@@%aڀ (gZIofLwT +xڝXKϯajER!f
r Զ-,u$g;>_UQ/ًME_U1=_%Wyx\4=vl~}ۼVq__M=qj<M(7\Rl<ts/xOu%4ʣOM^f\k9ߩOtnH^Y/\y72f송 +-Dt88.ҋŞ +3#`&x6ZKԐDS_&3и|@jHU(2D{.8+oh=4Ea{<2u<y."AQ5>p*AuH +F?䪰b7}K-:sƾ^u/:i͇ǖQ>>Ҟ
3tj$ƹPUz J;\(}90ôtR$/oJ>bb1J@u0vq +f\yT.։ +TGy$Z]&hY"ַsч]RTmڵ,i endstream endobj -347 0 obj +418 0 obj << /Type /Page -/Contents 348 0 R -/Resources 346 0 R +/Contents 419 0 R +/Resources 417 0 R /MediaBox [0 0 612 792] -/Parent 345 0 R +/Parent 401 0 R +/Annots [ 415 0 R 416 0 R ] >> endobj -349 0 obj +415 0 obj << -/D [347 0 R /XYZ 132.768 705.06 null] +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [241.454 574.047 263.926 586.002] +/A << /S /GoTo /D (subsection.2.5.1) >> >> endobj -346 0 obj +416 0 obj << -/Font << /F37 251 0 R /F53 252 0 R /F65 258 0 R /F58 350 0 R >> +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [406.656 420.623 436.876 432.578] +/A << /S /GoTo /D (subsubsection.2.1.2.2) >> +>> +endobj +420 0 obj +<< +/D [418 0 R /XYZ 132.768 705.06 null] +>> +endobj +421 0 obj +<< +/D [418 0 R /XYZ 133.768 667.198 null] +>> +endobj +422 0 obj +<< +/D [418 0 R /XYZ 133.768 614.894 null] +>> +endobj +417 0 obj +<< +/Font << /F37 299 0 R /F53 300 0 R /F55 305 0 R /F61 411 0 R /F68 388 0 R >> /ProcSet [ /PDF /Text ] >> endobj -358 0 obj +430 0 obj << -/Length 1695 +/Length 2153 /Filter /FlateDecode >> stream -xڥXKF̄y1TG7,I忧{z@bڕÖ4M~|&3HY m,t.YEq&Fbq+<#
gi\у[.UVԔ
/i`DZ"&*X)4ќ婦:PGqxW_Ká'1HWrL٤Ѫ
Ųqa&C96_ID۪MG9\:&Q,Z:
7uG;p?
ɂv%<yD - q]>m$o<u!wlʱ)+Qo6$x@AnK@ݞ(z v3?lk8.Di[KķB톃viGx4˩{xgxOqSۭzd)!"~_A &28\cOIW-o^vyPH2ޟj3Ҝ@:OòMo(K Տe3pŤD)XB``Amn#y|N6@d7sb'$ }
#:p.z4O]n% -,ԧ\vM>o4y>^0w
kGA0} <|"BFwʑl.IN6e(&?xw-ݦBښ11EřDT:HGjrEK?`Bp40]S<qh۹1,
%*vw0l"7z7z*`[(2/0` -/Y-)xf,JxWBK:8ƪ,SH|
rl VneD +xڕ˒>_#U @|q묫W!FRBR|}͗]4~? w;ALJ[KH;pYaϧ2>Fߏ|>cF8d+C>*ms?]|(]P8N0TsO2I[-tk?$Q·^҉Hm:Rgu ^!)ʞkO|4qFq^~_ZITYu25sUEA(^SWEըo.mRЮwr[&V+Rej ++'A, ܫ5X"8^VsGXpj'70k*Z >(+esFeI{%rk:w!x@ +P=ܲt"M̽p6=ǶSWuJ/(g'ӉxUD8XVC5cLB[kV&q +u l^yQ57:J::~EV uGc[-U 3ᗟ.{VFdƬA\ +;i +7@)`F"PSPloHoV$әNu>Vd@Q>ꢦt箘õUe=Ji!l9m4L9`Bݔs9FVu>L8%a
"_B"aݐ@d[vt3t??g|ATǂcTLW}e +z>FkA9mʄΦ6p"b_z4%(i/l\ єy/J=~R`2ԔM +e;q7G,<_FTw}EhCEHhE϶K?|t?CO1WKpE.-:c(صg.=#'4aUNoMF//15 Zir8/RkVdYX-}*3LaQ>)#ngsЈ3a\[W3ƫ)л
}Ndn6~?-J{:,=R_HaXModV?h6q(8ԙ0RwTKoGkjtMPKi7ks +@Q1*aZ+hd9i&a +
e7mOE_=S<% +5S{OA+v"8ߛtn``~Ο̌%Hx
{/ +&KjK,Mѕg49ceyOrCOE~ˬu'%0JCei;>t첬Ya
ێ>iԅ̈́o1YRK4;24TE!3 B endstream endobj -357 0 obj +429 0 obj << /Type /Page -/Contents 358 0 R -/Resources 356 0 R +/Contents 430 0 R +/Resources 428 0 R /MediaBox [0 0 612 792] -/Parent 345 0 R -/Annots [ 351 0 R 352 0 R 353 0 R 354 0 R ] +/Parent 401 0 R +/Annots [ 423 0 R 424 0 R 425 0 R 426 0 R 427 0 R ] >> endobj -351 0 obj +423 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [408.501 454.053 423.224 464.846] -/A << /S /GoTo /D (section.2.1) >> +/Rect [416.942 392.944 431.665 403.737] +/A << /S /GoTo /D (section.2.2) >> >> endobj -352 0 obj +424 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [227.538 442.098 242.26 452.89] -/A << /S /GoTo /D (section.2.2) >> +/Rect [223.078 380.989 237.801 391.782] +/A << /S /GoTo /D (section.2.3) >> >> endobj -353 0 obj +425 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [396.28 442.098 411.002 452.89] +/Rect [394.906 380.989 409.629 391.782] /A << /S /GoTo /D (section.2.4) >> >> endobj -354 0 obj +426 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [297.716 430.143 312.439 440.935] +/Rect [297.716 369.034 312.439 379.827] /A << /S /GoTo /D (section.2.5) >> >> endobj -359 0 obj +427 0 obj << -/D [357 0 R /XYZ 132.768 705.06 null] +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [149.217 147.885 171.688 159.84] +/A << /S /GoTo /D (subsection.2.1.2) >> >> endobj -14 0 obj +431 0 obj << -/D [357 0 R /XYZ 133.768 667.198 null] +/D [429 0 R /XYZ 132.768 705.06 null] >> endobj -18 0 obj +26 0 obj << -/D [357 0 R /XYZ 133.768 416.126 null] +/D [429 0 R /XYZ 133.768 667.198 null] >> endobj -22 0 obj +30 0 obj << -/D [357 0 R /XYZ 133.768 387.475 null] +/D [429 0 R /XYZ 133.768 355.017 null] >> endobj -360 0 obj +34 0 obj << -/D [357 0 R /XYZ 272.581 246.955 null] +/D [429 0 R /XYZ 133.768 279.35 null] >> endobj -356 0 obj +428 0 obj << -/Font << /F67 298 0 R /F68 299 0 R /F37 251 0 R /F53 252 0 R /F65 258 0 R /F75 361 0 R /F76 362 0 R >> +/Font << /F57 345 0 R /F67 346 0 R /F37 299 0 R /F53 300 0 R /F55 305 0 R /F58 410 0 R /F61 411 0 R >> /ProcSet [ /PDF /Text ] >> endobj -366 0 obj +435 0 obj << -/Length 3003 +/Length 2514 /Filter /FlateDecode >> stream -xڵnFQ^XL\` dwl6MQ6JԐIߪCr{4htQ?]Xx%۫o~"K2vZ'gDi]/.u"qR>]6gM -D&*L[
`w,Q~ˡwB-w0o.?2Ny["JJgdӖU[wʰN$3'n<-4x Nw,auo5w*5P+KfZ -5yoKOl+P -XK.൙#lI>,zI*'L
TUGp`y¢@mfbi5jΚ!_R>ur,%$dZTI`F
n
0 ƥ?lB:0D<|I&P1*dNs$)CuPk4 -RF¦SQBقYwm#!+60KiMy'(C9 JFU+"RpHebE<Uvv`YN| -Q
i"ǂYbxܱsO+M1&f~ 's P -UGݜ76w7
tYmג=*IsqO?*wjђ_ѐcnS|$sPA -`|k]6s#O{)=U7R>).88Z 4Rn#\)߶y
a)[9-3&Uy?>q85[ˡ(hHFf"zn](܌R{y$!/'JEz^,0◤Yx -+XAP_}\h -nB9V;G=N7>=Aܻt2ǔJJT&;kEDy"J*c$g#eةhsid>3Mdw!T[y5!J_(Jڙ,BY8wdU2;-#0KFr!X_~__r1yͼ.^BfJ -'&^YDe.y11Br#ԲEl˾چH0Sm}<BXȪً -!"0Qm%tQΪ]&h{#I. o -gg -m۰A·c!ԧȻ<#!잦2JZ@DLB",9'| +xZKo8W^9| +``3@f^vׇn9F-u$`VԫY$T*Uů2M$4=Od$\' p%ZQ"OzeETj-H9aVk)efmdޯNj
ϋM +W=χ닯.i&5TPcgl %&3Ƀc%Y\V.etba[ZD0h؞ooAc7Y+rFM5<fiM\kF5Xk٧61)0jn=ڡesL}7Wv})1cf9_~d#bmW@;eaGnY!oŻ,E|IqSEQwe7)A3.ԯtj +\CLʥ bRe_zlB֣k +vAwR}}-z͇(WqUGh/$"-.;:Z`Fymf86FZo_$w} ZRlgvx3ixzSϱDBY社\.mv +A$$ҙ:}*5(p7 %J2@%#J +|Ӈe +E1jb3i?TsTOP{ +ccc9#[;;ws7P1{L}N4iɬY(!5ʷSVL2=oRK=oaʈPK +.Dt
Ƌa֤elD ,D41nmC[^c@"g%C
c)ý}$cxFC;>
۾o69}Q9/2
'jӦO?~Ç: ,Fpbl0|>C~V8G!*zyvAc_ܾɽ99>g8r6,;O +z
nTnli4DOG^3Pӆm)wn*dz\ wNҴg,]l8tk
%7~l?o endstream endobj -365 0 obj +434 0 obj << /Type /Page -/Contents 366 0 R -/Resources 364 0 R +/Contents 435 0 R +/Resources 433 0 R /MediaBox [0 0 612 792] -/Parent 345 0 R -/Annots [ 355 0 R 363 0 R ] +/Parent 401 0 R >> endobj -355 0 obj +436 0 obj +<< +/D [434 0 R /XYZ 132.768 705.06 null] +>> +endobj +437 0 obj +<< +/D [434 0 R /XYZ 272.581 662.328 null] +>> +endobj +433 0 obj +<< +/Font << /F37 299 0 R /F76 438 0 R /F77 439 0 R /F68 388 0 R /F53 300 0 R /F55 305 0 R /F58 410 0 R /F64 440 0 R /F61 411 0 R >> +/ProcSet [ /PDF /Text ] +>> +endobj +447 0 obj +<< +/Length 2985 +/Filter /FlateDecode +>> +stream +xZY~_vds 䚇 +nE
R[i}Y b8KmS9,!Miܣ~P<REb!'lz*jlz]gE֤.QWn?(-*wdss6SNWs&U\2KN 2_%\:zӂaR!_56rh&0(?mָ}V]=^VuWIl+q
]t<V'1xv5(<+~^3!LYؔLY*bvEƌ۴x3azfNlxg+kܓكdª.Ba;X`A93(,<d&͇Y`! $`OrlYnɬl`%ysPȜtjnNcaR2<1AkErBAy81MBTqS6̭7%n_"}Z-̳FSWq&-Ki+\{D
H0Dpn8 d-!h
BU/a6p^ +qމ2݀Ge#䮇 \M*'Ae p +!oPR<%akŒ +ɤĒ[JϞ+V/Gƈ8@iz:Hc -\VR*z8I4>#5 +˰X32e4EGW=uVf7;t1pEHrV"\s-{ő:lc=\KXѾ Ki(^Ty +dIft`O"{oM#$@28 I/#](@ѾCkrPC؋3%AoBE~F³wzdϚn#}FkV4ATŽCʇ)8`1o +^BZr^4!gHk#D2 +h_[OOp`,I\+eRt
Ƚ NqH:F~wC7e]:`R܅ %E ш~aL"[ui_S
!-a>pHzRl b (0W|R3NCnA~,N/Rl.Kw.u?W0]7Cco|:qvI^<a"9$@2CN؟[sp/`@ɫٝ}F`msUᎦ =N5;c_#팎tY !9[N.fT4IA@s*3mQn(yLmH!% KKϙ +_JLQ`BH4u]T|r2ayTx·P>auD`u$X4,Ƣ"A~hP`jaOͺZ`2~Tk!6`4*tλ+h4fݙovhB{G% +J|j +endstream +endobj +446 0 obj +<< +/Type /Page +/Contents 447 0 R +/Resources 445 0 R +/MediaBox [0 0 612 792] +/Parent 401 0 R +/Annots [ 432 0 R 441 0 R 442 0 R 443 0 R 444 0 R ] +>> +endobj +432 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [320.363 654.302 342.834 665.095] -/A << /S /GoTo /D (subsection.2.1.2) >> +/Rect [321.248 641.793 351.468 653.748] +/A << /S /GoTo /D (subsubsection.2.1.1.1) >> >> endobj -363 0 obj +441 0 obj +<< +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [383.075 467.528 405.546 478.32] +/A << /S /GoTo /D (subsection.2.4.5) >> +>> +endobj +442 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [447.321 390.735 469.792 402.69] +/Rect [325.788 340.283 348.259 351.075] /A << /S /GoTo /D (subsection.2.1.3) >> >> endobj -367 0 obj +443 0 obj << -/D [365 0 R /XYZ 132.768 705.06 null] +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [281.877 328.327 304.348 339.12] +/A << /S /GoTo /D (subsection.2.2.2) >> >> endobj -364 0 obj +444 0 obj +<< +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [321.733 232.133 351.953 244.088] +/A << /S /GoTo /D (subsubsection.2.1.1.1) >> +>> +endobj +448 0 obj << -/Font << /F37 251 0 R /F53 252 0 R /F55 368 0 R /F58 350 0 R /F64 257 0 R /F65 258 0 R /F61 369 0 R >> +/D [446 0 R /XYZ 132.768 705.06 null] +>> +endobj +445 0 obj +<< +/Font << /F37 299 0 R /F58 410 0 R /F53 300 0 R /F64 440 0 R /F61 411 0 R /F68 388 0 R /F55 305 0 R >> /ProcSet [ /PDF /Text ] >> endobj -372 0 obj +452 0 obj << -/Length 2534 +/Length 2834 /Filter /FlateDecode >> stream -xڵZ[o~ϯУN8CPle-[Jr.]Iɒ8ٳN^$1+3&J$4} FD+CP2MO7\}f4kJn֥1!涟ԏm Z~"fsnTz/2$3r 'Te#{H"IY78)!qIU2P<mm˺Dx&uae뿋] -gJ!BUw.% -A#U];j4WR,'B&>`_D2Hupz6 #Jg#?\|`0L0% $ -M_JLfG7qXj!۱i) %(aq=E3C`9b^/~DZ[$Y6l2\e!2Qa& -3m4 -0Yc)wG")9Y75Rf A@q|X9冽'Vy>swĪχU[ɄyG6`egWiͷU)#}1H A/c`$7hH1'B477hʥgy4DCDlq[' -bqJ8Xo7QlHLXf\v\<qt}|`} -Ъ滪X喂Xa,`P\ZU_Lvj[
wKׅJ*HdVe[?|eG/MDSV@<i"|6:SxD#~x7ub!=p*9pWڱ},Xk>0iWR#UtBDhWg)|½R|e
ڦ;?L켜Aps7ox6)z^u𱂹"y,UlUx44sK\q.ae/$-p\N -h&Ӣ{1euy < '<1vp'HfԘj}:f20**okdp-6Q<#\|CJ}!hfHV%ܔ+Si -l -*gr8.RQ݁iuG#93,.V3aP`,nfr8賙;H|+L$õ0<>0//vu~ -PW +xZmo_JN@ +|nEV~[Id{%Gv3.M>!&O M~?)d$\'w S,.Tr7OOL6.MYzC a +E F*NhK7|3sk]n=V㱸8=2fO_JnHr0rvH#:X]/#Yu +,;,vȯm0
$s̮1(Ikb#X`Gy- +OrB +Lb9QCOG&`Cr
?nA⭗PzWO`?0-DIo'`::,]/k|-}c1ЭW3*mXEYnArE]6E{vv77\`뭯qBSօ+9Xl+9~1< +<=̍; +]M4XrҖS$:b/>IN͊p>YpZd+_+oVY!&-zgu3f-dP0fsoh~z^-'EANg~0*Łz!YkԪ$v&u0\~9;NՕAoh%\ LvUzmhllYDrD-9_.y>b?=^;##Vƶ=ON_yޖ +]Z{oaLݪM|y~;+ƾ:CJk־94-K WSW{\okP+rYv/zyF |UnثC=,z~ϯO,ɽjX4DzB)x|,$}p % +Bqpğ?SJ2
?_9֘ܲ &|~\1k6':
MNJL:k!T)unNL:H +RL(nQ.k83Աu֛8u3?.qeȲ.ػ%.a;fђοee3I/qn"8XXւhYvI;2PJf ﺳOch +ҖhZ'??&4`%ZTslw3yA,JSVEpvIu>1st%x6Zg凷)5W?*w ^#G\RG7` y6
yF(7]$/='C{qrw@'[`,˼Pݍ,4_pGmUVefMhGP|?DB<<0sauɷMDgYgrRpQ,:0H^Q'߃k?KR~ت0V6BMS=:7otR&XwBg!a_UӺ,LhzYʽV.f] xuÒ:`ƅqEb(r忺p0I"RW.Bm̀oW{c)[5;&c)0E|VUy|aSO/Uȵ@_r~o/"K5πS,?Q!J +mB,2smVu
%`=h"<3nX{㠣9S(ܗfQ#`/ endstream endobj -371 0 obj +451 0 obj << /Type /Page -/Contents 372 0 R -/Resources 370 0 R +/Contents 452 0 R +/Resources 450 0 R /MediaBox [0 0 612 792] -/Parent 345 0 R +/Parent 455 0 R +/Annots [ 449 0 R ] >> endobj -373 0 obj +449 0 obj << -/D [371 0 R /XYZ 132.768 705.06 null] +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [439.243 140.438 461.714 151.231] +/A << /S /GoTo /D (subsection.2.1.3) >> >> endobj -26 0 obj +453 0 obj << -/D [371 0 R /XYZ 133.768 427.009 null] +/D [451 0 R /XYZ 132.768 705.06 null] >> endobj -375 0 obj +38 0 obj << -/D [371 0 R /XYZ 244.949 276.522 null] +/D [451 0 R /XYZ 133.768 524.643 null] >> endobj -370 0 obj +450 0 obj << -/Font << /F53 252 0 R /F37 251 0 R /F64 257 0 R /F65 258 0 R /F55 368 0 R /F61 369 0 R /F58 350 0 R /F56 374 0 R /F67 298 0 R /F75 361 0 R /F76 362 0 R >> +/Font << /F53 300 0 R /F58 410 0 R /F64 440 0 R /F61 411 0 R /F59 454 0 R /F52 298 0 R /F67 346 0 R /F37 299 0 R /F55 305 0 R >> /ProcSet [ /PDF /Text ] >> endobj -378 0 obj +458 0 obj << -/Length 2719 +/Length 2648 /Filter /FlateDecode >> stream -xڝYKoWmՀ[ÇD`7H.`
+wneR+jsI(dWFo>QfsZǙ7&ba)oUQ]N<px
,E_]A<n;-dv~1;r\Wj__]C<pt--y65QU;)c5hҨ/e}:}$Ѿ= -=yg -T/L%qkP0feF -)UۄJڠR^W_{8N,M͜lM침-)ĉ7skP2Ɵ?rDVY/>tl'X疉P<j{:%Mݱ8<5V05(h1@ -H#we18* CkO5Z`04CWW;YzsI:5N݄E2q <, a_0z%_
|J8T;#Y$E6jWt[ID)BLd$3Tٓ8o31"/_g -z_9qr%*/AD)=*XaEKhggIW*>@; - -Z)&[g&hΫ_q}c)E@QոקpCy -<IYg233vMX -yZ@\W.#)QE,
N -VTtK|dpzg*kXYՕUyg !r0$1Pպoh%nw8';\tEG.8Z0m<*wׯX"Ծ,ҸKi-PUQ_U+vrÖz.(eE -q -KFGXA2e}!A/6]b9Up_)`~HZ2ߘ +xڵYKQ%/v,mfmu[YbQOE.Yb=*!?^}YeI ++mr{"cVf5L&czUrUJ6[uS=7=ҫYLkKv>n2O]+s}uj6oyQƟn^ D$BsƕLdw'{xKYVdɳ_zLL +u鬙Mr82.+
3RQlP8Yd<-Xj6[t<
IPr&"C,"1ϙ$n]E'+Ҳ
GM݁EK$w]fp4e6
;o`ܻ)%jцu$ãہ<>V)F垄zWGAMؠNr҉.\g+Wo*%=Sʦ7u6iU;ϟ1g2S˽?(+U._݇3fZU_INں~0{Lzyؤe:ê('ti& +_g89,;}GOa9ܮ#e,ˊW-e%?Fxlf*ܗ0>}`CkqK6N
Y?9!c)Ғ=䎣nMSD֘)İ|JrXGDF{`i%`ɴ2oZbFek.0F)gKNy_!?wjJKf(dLGe?Cx
;<:cRu;=Yq3
Ytbl̲տhSm>FɻHA),B. +(. &ijـҡ7%^g8O;+[`J̬9Sg:@MzjJ<u1$FJ$AOG(.iV5á!C8'K` +(nl+ +ls +1B빍q31n6?ih0"<̫b\VAZX:vs fVYA@F<:Wk5J"Df~Xg1XpB8 FCSl̻5HᥘF25si{]}lQO[/YV@q+ހuӶ-puΠ -wj,d(j2\Ұ0`ef܆e0
uGJ"²?T)A
C-G|B< +CVZ+uキ#uf#dԂA$B`q +n5y1s%W}_ih]՟Qj[c8:j%毖eַj5˳foAKxm_}4X~B\8|f7{بК! +&**m 6W]>gfJ?I#NWLq+!B f6űfPB&F_~r>鹻>?oXxq&m> ?4>67G׳ۇp.S{J +7WEMŧ(Ɗ"hN'?^? endstream endobj -377 0 obj +457 0 obj << /Type /Page -/Contents 378 0 R -/Resources 376 0 R +/Contents 458 0 R +/Resources 456 0 R /MediaBox [0 0 612 792] -/Parent 345 0 R +/Parent 455 0 R >> endobj -379 0 obj +459 0 obj << -/D [377 0 R /XYZ 132.768 705.06 null] +/D [457 0 R /XYZ 132.768 705.06 null] >> endobj -30 0 obj +460 0 obj << -/D [377 0 R /XYZ 133.768 605.492 null] +/D [457 0 R /XYZ 244.949 662.328 null] >> endobj -34 0 obj +42 0 obj << -/D [377 0 R /XYZ 133.768 207.116 null] +/D [457 0 R /XYZ 133.768 453.026 null] >> endobj -376 0 obj +46 0 obj << -/Font << /F37 251 0 R /F53 252 0 R /F65 258 0 R /F58 350 0 R /F52 250 0 R /F68 299 0 R /F55 368 0 R /F61 369 0 R >> +/D [457 0 R /XYZ 133.768 253.38 null] +>> +endobj +456 0 obj +<< +/Font << /F37 299 0 R /F76 438 0 R /F77 439 0 R /F57 345 0 R /F55 305 0 R /F61 411 0 R /F58 410 0 R /F53 300 0 R /F52 298 0 R /F67 346 0 R >> /ProcSet [ /PDF /Text ] >> endobj -384 0 obj +464 0 obj << -/Length 2056 +/Length 2515 /Filter /FlateDecode >> stream -xZKo6W6orY[z-rV7]>$K -:(z%
C7"8OpW>0h%*!!%D -(20c3>I.4Kמ\4n=e;?ԮPcsW("5.oV,ST{oA2($$h괨5k< AZƀlҲhڟlsHS -r4y9㭹ە?<<#ٟG<yidoY]owjSM͘Ly*IY/x?[ׯ;"x},5 -i
K&*?7xYmWpEuI?Ʈ7sBޮ=hRmaJmOcG8s\# n+-5"tZ
-<P.doh`\ P&i=u-waJmbAj
x1U[~DMjXVrLje_yh<Cyt [(\_nv6l
xh|Ql+PE3.Gٿ)K;YQP";J.YK!.5$jf!aSt ->!JY<-c2FUmHfzѫz9HAO[YNMuj\NC驆a$io^jb//,C -_|'OFeMDw{\X{لg51fg3.1i;ޚyzNuH#8)LOI[1ly(V5.]sY烨l&4а",Ԃ䖤^ @<}Bb
>$ߍc
$R/JHih\AvX:]$vsK0WDg1-X.s%^a,z4 ;i,vYvFśA223cው2@<J@I)[rd1!G -T8*XdQdVqB^hl -PPˑgU|jǑD:ȏzK$XsU#gՎr{#h]uz.bIŪI/p~[>A)zER;[Y,4b+ɨՅ=о +xr۸_:e;yhgK]%YZe6i&s +5_f_:8@:{VV#LKZet҅DJ,[Rp|⏀ +Ѓ`.xG\s= +1,AAqĚ#=FMSQ9n_6Yݾe60U,QU6EEw$Ea.G]8Dǀ`ئ]iu+D~5pF$4 +9tBth౭rh!~/mx>@OX7 +Yk endstream endobj -383 0 obj +463 0 obj << /Type /Page -/Contents 384 0 R -/Resources 382 0 R +/Contents 464 0 R +/Resources 462 0 R /MediaBox [0 0 612 792] -/Parent 387 0 R +/Parent 455 0 R +/Annots [ 461 0 R ] >> endobj -385 0 obj +461 0 obj +<< +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [440.956 308.119 471.176 318.912] +/A << /S /GoTo /D (subsubsection.2.1.3.2) >> +>> +endobj +465 0 obj << -/D [383 0 R /XYZ 132.768 705.06 null] +/D [463 0 R /XYZ 132.768 705.06 null] >> endobj -382 0 obj +50 0 obj << -/Font << /F37 251 0 R /F53 252 0 R /F55 368 0 R /F61 369 0 R /F58 350 0 R /F56 374 0 R /F59 386 0 R >> +/D [463 0 R /XYZ 133.768 434.547 null] +>> +endobj +462 0 obj +<< +/Font << /F58 410 0 R /F64 440 0 R /F61 411 0 R /F37 299 0 R /F53 300 0 R /F55 305 0 R /F52 298 0 R /F67 346 0 R /F59 454 0 R >> /ProcSet [ /PDF /Text ] >> endobj -392 0 obj +471 0 obj << -/Length 3333 +/Length 3439 /Filter /FlateDecode >> stream -xڭˎ>_SN=,f -yZ@J&TUbvt,ڛ!?7h7%pX!_.NDɥV'TV":ڵ/NIeHНO}<5̼ɓ4#!پ[s \5֚'7fW.TQ<DЭL5{lyyqlCCi9vhv" -^(Ӣȗ_K -qVNSgݙ
[sfÁy|@Jg,:2 - - +:ys8
hQ1BJGz+;p~٫gV^! - _52xKs#x/.$È̓P7cKPHOQ"lEp<pt4þH~8UQIkEl>ƲCGkʼnؔxz$ D[ -~C0ty,E]²kb*.bڷ̞3+470_TOedS>K+(|)oA{KRо"y];B2u -.$ɤوPʑ'HЉ -9cAܝ!OAK%Je=/o%H@#K@((ִJјX!uf<)cy,*@/"tbpPRU,978qх ť|~T}^`Zx|ڶ@ UPhe*0HR-ӵU| -N!VWbSlac?AQG~ ezh[X"@HH9Γ22f4̩pöOIO;TZw(r`f.fF.,}=e1/zR 9؞?P8U" -%6=zsv<% -5ߚ_,{of}KQФ}붡FSQ\<AT=W;wc>$THvglW!8<kG'I|*+
EArඒӊbё?&ʑJH&K_חzBuELJRŋ")^"KHw]∵'WEiY"R+8-4
-I]i
kWOYO@FBd}v;-FeyM -JU^c.$ٙx=*`*DC[pM[Q[Qb$Xq <WQhvY\xE.~6չQq[89_uʞO%}\`-8`bAvi%_W^<sE<*33o2?+_T߽kTP -}FXB,2Lc;;}dfyx'Ρ؋wfG`ŴXչ5ϋaXݳ(,5s)kIcv8Y6J|k @\&nV|StH'XWVF||on +xڕZKoW +hl2^`p +|;+~)ҹ<,[ NWU8dL%tCsu _;e*ǣa1ױ=IY+*UNv?FmhɜO1CݔNC855*QZW4_NO?l/`Wmղm
(֨` +/xjtT +ٔaeAfP +¯S 4Cg ͫM]4%Ef2/ +za/,G+.-T
[_L[TT,;391wIb7ieN~SJj5w5Ψ++G\fnVCmC'oQMТ*7@|GQLhl8DQ>ك0ĭ/W~~aVA$1ά$,2lREj9 +u}'ݬ[`M{dILo$WEfTgc
X6t0C'gfPz|:.t3deZ0-1 RȗgcAƘk=`.mGiλБt#ĊC@vJ;߶ii^jwՁIAAWiPf0cr8~ϿibZˈBr +@]HFQvDD1 g>ͱ#VNv!kwZK+Ͱ녵qS<r^VBp~3)+/U<n]FG +Lh;.ITefɿOX@v1GJD"\m_Q83?n:1ErT} RZ¼+r`}LOuC3|?J$_<W;K~BC5ƍ'AYX8 Cf/P_kND3PYHWJoPvK12Wm~Hv3<p:\.'{x|;s[gNLPTEy[QO<cߞAUJΠEJ[x`Ȁ% +&^"TwrwӜ\QO>:[N/Ҥ)BC/cߙG-js`f?|3)@qm{c3L_ͱ endstream endobj -391 0 obj +470 0 obj << /Type /Page -/Contents 392 0 R -/Resources 390 0 R +/Contents 471 0 R +/Resources 469 0 R /MediaBox [0 0 612 792] -/Parent 387 0 R -/Annots [ 380 0 R 381 0 R 388 0 R 389 0 R ] +/Parent 455 0 R +/Annots [ 466 0 R 467 0 R 468 0 R ] >> endobj -380 0 obj +466 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [282.598 653.748 305.07 665.704] +/Rect [384.288 247.273 406.76 259.228] /A << /S /GoTo /D (subsection.2.4.3) >> >> endobj -381 0 obj +467 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [149.771 594.526 179.991 605.319] -/A << /S /GoTo /D (subsubsection.2.1.3.8) >> +/Rect [377.24 199.452 407.46 211.407] +/A << /S /GoTo /D (subsubsection.2.1.3.1) >> >> endobj -388 0 obj +468 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [254.237 546.705 284.457 557.498] -/A << /S /GoTo /D (subsubsection.2.2.1.2) >> +/Rect [174.179 127.721 204.399 139.676] +/A << /S /GoTo /D (subsubsection.2.2.2.6) >> >> endobj -389 0 obj +472 0 obj +<< +/D [470 0 R /XYZ 132.768 705.06 null] +>> +endobj +469 0 obj +<< +/Font << /F37 299 0 R /F53 300 0 R /F61 411 0 R /F55 305 0 R /F58 410 0 R >> +/ProcSet [ /PDF /Text ] +>> +endobj +476 0 obj +<< +/Length 2540 +/Filter /FlateDecode +>> +stream +xY_o
ϧSW>ij_Rzmӧ4)8V|lp^r8%d{ۇDCr84#t<__Ѩ(c6DhfȚIeutG(v|yWB%&>N&dJX-`s1'yyuʼs7
uuTypݕg\}lu{/WyYWWWus(]{5y"w;nL0?̮8ZNtFfph,KT42e&ˢ)abI1-RؐI-'Mx)&Oϰy< +f,6muNU~?uF H~39og!=}h)e\$LƚegXN{$5zyw,u"_&_&i&ϴvܔ6MhaT!R m &݅Ɛ-*U8/%*E)).l>L^BfXIxDH8ˢ<v:Ci{t5f%UɁԧͫ#;ǩ'iZ. +ۼ% {ܪ,52נ]Xxiț][L%xp4|FQ)K01 +( +Gn!tQEpH)Ǵ+!'v_C'H &<;h7Oi&ΫnKŐcԫI@Z*:;x;
d@!,@uK0i +Bêk#^?C =.8eėu7q$ԩOn`W~WC;gC&H+Ż{X1
ެx~` 0@/f +`>18&0Js
{H241pA10qpYcFKT]ru58yYA +^/z
vp* +aNZdo$QY: +&#Qj
j;X
[KōP8;f;v`jVΫS +endstream +endobj +475 0 obj +<< +/Type /Page +/Contents 476 0 R +/Resources 474 0 R +/MediaBox [0 0 612 792] +/Parent 455 0 R +/Annots [ 473 0 R ] +>> +endobj +473 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [378.878 249.369 393.6 260.162] +/Rect [378.878 118.628 393.6 129.42] /A << /S /GoTo /D (table.2.3) >> >> endobj -393 0 obj +477 0 obj << -/D [391 0 R /XYZ 132.768 705.06 null] +/D [475 0 R /XYZ 132.768 705.06 null] >> endobj -38 0 obj +54 0 obj << -/D [391 0 R /XYZ 133.768 342.478 null] +/D [475 0 R /XYZ 133.768 566.361 null] >> endobj -42 0 obj +58 0 obj << -/D [391 0 R /XYZ 133.768 236.425 null] +/D [475 0 R /XYZ 133.768 208.896 null] >> endobj -390 0 obj +474 0 obj << -/Font << /F37 251 0 R /F53 252 0 R /F58 350 0 R /F55 368 0 R /F65 258 0 R /F67 298 0 R /F52 250 0 R /F68 299 0 R >> +/Font << /F53 300 0 R /F58 410 0 R /F64 440 0 R /F59 454 0 R /F61 411 0 R /F52 298 0 R /F37 299 0 R /F55 305 0 R /F62 478 0 R /F57 345 0 R >> /ProcSet [ /PDF /Text ] >> endobj -397 0 obj +484 0 obj << -/Length 2129 +/Length 1866 /Filter /FlateDecode >> stream -xYs۸_P7os3̥sN(
EHq] -AlVce4dMuD'00hoӇ]zuݴBj{iKT4Lwz}Xu;n;&!yx߉Yv*\ pP_ 91 -Gжd=(S:I0}S)8Bˁe: -JxkvOx<$ew|N=3,y "KMl<sru9\IڋV]P@Unu-"9J=#M/ -XrYP'P<ƙYc -ծ-Ji߮qî*Pxwy+ҿjѮ]L9,\OƞZ?-\`ys=AR$/NT0EX$ٸ RZy1PؾRi۳|sp :4eY2p`qɛ)2P/;uIK&@EM%p@Azkav0/^/cl:b$(勐}8l[ncya]%CrF|p+1, \0b`#V.:.iΞjs&ɭ]Bem+?wY2spj-~{?/٦pj97UG8}o]&2aB{O2)T2&m
⿴~t_S>< R⬩6@pT2{L}')VHq`h,YʐP{`x8٪'SOν_٧ߏ iw SwF`}uQhBEx21Z +xڽXKs6WP wi:ͩH E$w +ᰮ(j5dBO)>f6Gw6SԖE7!qPflGBws/0 +b BxVܳX^,ϵ/j(b%QiostsYج>5/L;f̛{JyZ*Hd`o3gi DZ'BM2{bCN9)^=>8y>sau@`vPR +NK*|MK7z^ +?@ڃ +S蓝l#9AO?ç,~,NkC+8 +hw,fs8{$X@w}߅O$/M +8ӴQxuJ[ߙnY^gw~ʏ9UW幽KPb +70VH4ΝuX}0A8B;*ɧIe$P5nFF=, 'WH)2[75FZ͜:ID_R>埛XncT_!p6xIڳ%PstheQ>Vcc7-jN&+/5w/nvy{r.ul%K|K]>фFK0LP&Tv/-5E[ endstream endobj -396 0 obj +483 0 obj << /Type /Page -/Contents 397 0 R -/Resources 395 0 R +/Contents 484 0 R +/Resources 482 0 R /MediaBox [0 0 612 792] -/Parent 387 0 R +/Parent 455 0 R +/Annots [ 480 0 R 481 0 R ] >> endobj -398 0 obj +480 0 obj +<< +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [336.93 305.621 351.652 317.576] +/A << /S /GoTo /D (section.2.3) >> +>> +endobj +481 0 obj << -/D [396 0 R /XYZ 132.768 705.06 null] +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [303.776 274.294 326.248 285.087] +/A << /S /GoTo /D (subsection.2.4.6) >> >> endobj -394 0 obj +485 0 obj << -/D [396 0 R /XYZ 250.58 662.328 null] +/D [483 0 R /XYZ 132.768 705.06 null] >> endobj -46 0 obj +479 0 obj << -/D [396 0 R /XYZ 133.768 288.675 null] +/D [483 0 R /XYZ 228.981 662.328 null] >> endobj -50 0 obj +62 0 obj << -/D [396 0 R /XYZ 133.768 186.672 null] +/D [483 0 R /XYZ 133.768 429.116 null] >> endobj -395 0 obj +482 0 obj << -/Font << /F37 251 0 R /F75 361 0 R /F76 362 0 R /F53 252 0 R /F55 368 0 R /F61 369 0 R /F58 350 0 R /F52 250 0 R /F68 299 0 R >> +/Font << /F37 299 0 R /F76 438 0 R /F77 439 0 R /F52 298 0 R /F67 346 0 R /F55 305 0 R /F53 300 0 R /F54 304 0 R /F58 410 0 R /F64 440 0 R /F61 411 0 R >> /ProcSet [ /PDF /Text ] >> endobj -401 0 obj +491 0 obj << -/Length 2337 +/Length 2808 /Filter /FlateDecode >> stream -xZK
ar[ҤUԤRڤo=}P۴ZYL@PQ=G6@ -A7хu!*Vnj:"JɈmX|zp:c)qn.Ba~,LʱjȖ/m;\M?=(+nlġ2e) - }ɷ/A)L:^P6LOyTxa1xu-`ՉEcLݭ2)n'A#㳪Wz=7FxmwwEeFZ~Wڱ}$V(jP:
)y,+GDT>tE[" @-s -:
\ u \'[^t4n0Prg㙎bWX'//kGǔx{}{[ - -%Gh˪JKau>:"j$^_83Qҩ/XCUmmTM۲D1)PWu/X">[rs7HQ}8J -4`yK̂61mW.DW;"Pν3=Ziu +x]}_hdG*p W(Ck5$g俗r$˫]/PEq8\/+W_~~q{PƈwAhśkտͮ^]/Mn-BYwUwY_ۿ| tFk7&+5{\[iLֻkg=t|Vn@7=wfw!ԉ~{q-*$7h"bit勥Rp|XpU1dͮW"(,I#fG~ot1h| 2< +-ȬrV$LV7 ;TBA's"˅yYޖ;@ ("ԏ{JgkP*9@PPKR҅!LB4foG$Q$3NPeRc[בCiݾ'nˌmP|) +~A|wha~ +]e܍
,hw%(ּ35Aov4t@z]E'AV!Nm|rrI[E7# y<ڔݜUútFg nAL`Uہ +) +:✹<ǂ6byu儃ʲvqC6QL3=:97LvFFy^t1 +Y33gfOdxt˱bo'x^|H>cB~s{B9nڈj{\"a1 +UO[eGs!<$uO п@&6 UJJxx8Oy垄 -.mE.O7X*^ r C~
|/H}~ߝ MmLefl3~I5ɜ*2k{xC>|^~zCxF.ȫ~\Wrp5p9^^Ѕ7x_W炕)R۳a%('kRySxP{,nMn>.ЖnRxIs~2 +!"<Ê9 ceq5)rw +f+=*tڧOaL77 R +j'孅F7r2jgtֳ1J+%0܄T9'±$¥ʴy"pc)>dl;{TH=1\Sm?a*lg+!I[dY:" ;sW&hm*Qzsǔ*.K?_?ӇrpוqߺN˪o@,.}Zy$\_E⸣'ml}.&xۚkA +v:C/{9JWOM[<.ۻ:dazJUsLUЦ|<.Sjj,mKk]z7i!@+c
`i8 +K
毴Fhށݝ5?J
GQ|GZdЍAOl75 Y6%\Ǟ%ޕa@b'(D w&ub+C~+pK-"m$6놚M\5A85N暂^"N8'2힌_~6DdȾ0v5ys4J͜tYBvنoԨs@A+Ա֜~!=l5A+]q|@gct%OdOuƜOzGJHf8 endstream endobj -400 0 obj +490 0 obj << /Type /Page -/Contents 401 0 R -/Resources 399 0 R +/Contents 491 0 R +/Resources 489 0 R /MediaBox [0 0 612 792] -/Parent 387 0 R +/Parent 494 0 R +/Annots [ 486 0 R 487 0 R 488 0 R ] >> endobj -402 0 obj +486 0 obj << -/D [400 0 R /XYZ 132.768 705.06 null] +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [442.972 594.526 457.695 605.319] +/A << /S /GoTo /D (section.2.3) >> >> endobj -54 0 obj +487 0 obj +<< +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [309.118 288.2 323.84 298.993] +/A << /S /GoTo /D (section.2.3) >> +>> +endobj +488 0 obj << -/D [400 0 R /XYZ 133.768 569.627 null] +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [301.282 171.63 331.502 183.586] +/A << /S /GoTo /D (subsubsection.2.1.2.2) >> >> endobj -399 0 obj +492 0 obj << -/Font << /F37 251 0 R /F53 252 0 R /F52 250 0 R /F68 299 0 R /F55 368 0 R /F61 369 0 R /F58 350 0 R /F101 403 0 R /F98 404 0 R /F65 258 0 R >> +/D [490 0 R /XYZ 132.768 705.06 null] +>> +endobj +493 0 obj +<< +/D [490 0 R /XYZ 133.768 669.191 null] +>> +endobj +66 0 obj +<< +/D [490 0 R /XYZ 133.768 275.256 null] +>> +endobj +489 0 obj +<< +/Font << /F52 298 0 R /F37 299 0 R /F53 300 0 R /F55 305 0 R /F68 388 0 R /F58 410 0 R /F64 440 0 R /F61 411 0 R /F67 346 0 R >> /ProcSet [ /PDF /Text ] >> endobj -407 0 obj +497 0 obj << -/Length 2373 +/Length 2421 /Filter /FlateDecode >> stream -xZI-RЪdЗd$Hm$l-H
=)Me--j6rE۫^qdU\Ehe"Gizq|{4Toh\?^bPL#Xz-R%D[}UBFW@NtL+%NRėpދUEhcF*BRvmN
)+Kk(J,100YRD^t:#xL47]?͌Bx
*?ddg6d4Dw
aVMhqԒqWRIq]Y#LS]:S*uY -+8הP%^a!"̪/?װNJv6(><3(<1~yAVQQW=^:~R_ -=$\i}U;0ۥr/Kn.-٣d.g.@lfV#5DX6 ĺr\4냟8
̬]/Eyeiɛ˒{ɪiX6J -M&G1(o,P^eu]mRTՂ(G̭3ʋ
G.^\k#dTYߤfaEb1o1ѕ:a>.}m]]Pe
a&ҝ5|\r"lV omAn|#,I*Ĉb+նH+3aR/ -,U.[mp˂η.ݔM<5@$ŢuYx|GP7yY}Ru
1;3VnZ@+fUg>,xT@+nAz"\ - -"$oH(YvCBbcۍf kzE(t {gi(,8qķxLUP 9Ѩf -ǹfAgԯy&[!|OrecC7>ɊJv}Jlw)èAցu KD<o4:Z{8bA2=2vU:Y!9!5821R:D[Hۆ}axia7[.!p@0:IaK
p^優\ua^Iea߲6`*W&y3H[8hT,D@(BP[*4Âz9ޅtuJA=cԵ̐ -@O~;l"=WxMԳ;.hbxCz(&fg2c<;p|A(|OAwj00 3nwxcBB^W68d钐
ǀ2&/rq#ߕ~~~Vǃ|rxXg -DyZk-ݮH8KoO0{h>EsP=rYA}z=вlZa*篵t6ӊ
5skp2`e%h!s^9C1sjXX:j8~e)*9g_9[c/<y;| ^N$>eNs8_Y"_6$,@V/Er@̲ĹSל
sɬpԬ[vɌM0єH96Ǵ -u̩yfBgn]wV_Tx=R˄3)_}̿$!WFfgw -8Dɻp~Ҭɪ}^d)7wx'oIoyȟǘ %sK +Q:Qއ +xZ[o~[B}I>tQ?HXZ-T,)J,,gssG~oW>1%(TFwa)#)LDs|+M^o!t&3T(M&3%x|Od\6rDɌv߫ɋ{GzWV_?|r"u~_8^&bY^;ʯݺ1/F39bG3BP"lU~P7c,lbi +*(ZoV^mv)-sC(4@Yp@0FfO:bhx̲_+ꤪʢ 3O6#1 +eԞ[Y33_ģ";O5C1?,ߟUVB6gcقbaUjqQ6nBvi2/=vA9>^ &,|k
_h@{Tv׃<^ݼzvىl^Qջu6 ?~D!-F{]n2da +$z.rEx`L.g$bq{o +ң R3R?e C?#؆2F / endstream endobj -406 0 obj +496 0 obj << /Type /Page -/Contents 407 0 R -/Resources 405 0 R +/Contents 497 0 R +/Resources 495 0 R /MediaBox [0 0 612 792] -/Parent 387 0 R +/Parent 494 0 R >> endobj -408 0 obj +498 0 obj << -/D [406 0 R /XYZ 132.768 705.06 null] +/D [496 0 R /XYZ 132.768 705.06 null] >> endobj -58 0 obj +70 0 obj << -/D [406 0 R /XYZ 133.768 532.095 null] +/D [496 0 R /XYZ 133.768 447.056 null] >> endobj -62 0 obj +495 0 obj << -/D [406 0 R /XYZ 133.768 157.558 null] +/Font << /F37 299 0 R /F53 300 0 R /F58 410 0 R /F64 440 0 R /F61 411 0 R /F59 454 0 R /F52 298 0 R /F67 346 0 R /F68 388 0 R /F55 305 0 R /F99 499 0 R /F102 500 0 R >> +/ProcSet [ /PDF /Text ] >> endobj -405 0 obj +504 0 obj << -/Font << /F55 368 0 R /F61 369 0 R /F101 403 0 R /F58 350 0 R /F98 404 0 R /F37 251 0 R /F52 250 0 R /F68 299 0 R /F53 252 0 R /F65 258 0 R /F64 257 0 R >> +/Length 2749 +/Filter /FlateDecode +>> +stream +xێۺ}XWI؇hh! Zؒ#{i\(r/ bCj8ΝEY7Wg?j)YHE҅P.RhaΗR8k}Utwԩnϝ̯wBL-ut?u)nkD3amp%/ӧ˖LN3^}ʺh]]ތemׯls"8=P{Q;q42U3,m:Q]=|DmȊsAc"+nWq
U=pSޖՆ96Ɠ;j3e +8NEl#7]"BgvR˻:$%4yQH2AHe@a2ke +o9^w
+X^[tPpZ6(^&C_a@;cMS7-.Oix 81^!`3Зҁ"nzbе]jLzJ]ː(D8l#Q-=ًOu$֭$tE! 0)>nWWOfyH!.FH{]5Ñ)~o5ٛAqaaݟ
E ֱ!ՉfTs9n[liO#-q&8z}cNo!X&{i H;=>i^oh%RfIF +%H~AG-C9 p` +QX$hC!#_0N^`u:M'BDx+,4/3_-oI3UxK}&C?~{K}̲>, +dql&$X<r_DxY:sz&"H
ijG尧 u
ѯDqp47Hw=Apꊄ VALord^oj2r1S|vzdJjqqGHz}:G +/HyS1?a]ѿƫdۖkX[E +endstream +endobj +503 0 obj +<< +/Type /Page +/Contents 504 0 R +/Resources 502 0 R +/MediaBox [0 0 612 792] +/Parent 494 0 R +>> +endobj +505 0 obj +<< +/D [503 0 R /XYZ 132.768 705.06 null] +>> +endobj +74 0 obj +<< +/D [503 0 R /XYZ 133.768 667.198 null] +>> +endobj +78 0 obj +<< +/D [503 0 R /XYZ 133.768 514.818 null] +>> +endobj +502 0 obj +<< +/Font << /F52 298 0 R /F67 346 0 R /F37 299 0 R /F53 300 0 R /F55 305 0 R /F58 410 0 R /F64 440 0 R /F102 500 0 R /F61 411 0 R /F99 499 0 R /F68 388 0 R >> /ProcSet [ /PDF /Text ] >> endobj -415 0 obj +511 0 obj << -/Length 2092 +/Length 2777 /Filter /FlateDecode >> stream -xڽYKs6W#xlƇt鴷>"%qL*II;]<H2%+N' -(mowDbnnvu{c_dj4gXw&o<s{,pUqSϨL8m -uV3b!B5fȥBcƛlS;5vmU/% -[旱Glܪ<~smܺ@8-yE50A^[PT,s %,
U}슺rz0ދGr2eH@|5
-#[i5 -C5:☮AFnVW]v,N]cx2;. -a<lh6yM9i:o}M
Fvo7y!uEn}/e"y76Z"EWBRUCCقf /2:%`/gFU88Kdܤd/z8[Bf&D=qNxO/Io;qHA`!K5{3w6,VD!`$AL'jY[ ^?[WTsK2;+SݶƨqW'*27 +ÊKkfw
yQöuItt*6 -|E+쁒L03L`+IPPEެǩҜcD#8QVR2-m<t;
-g+~R2&DާƒNٓaOK ͌J4dYҞ&Y,R;vٕz_j
PAIpƭ |ݩg:3=̰ , -Ci-LˌfEOL'rt' ~s3GfXQD9=]7$zp ,c.yZylBmj-i?j8nm*Q#e9thB+is-jMrN AI1H>0ă"w-"uhef3팭3$$ ͝t(xC6mCgu±g[(خ]?F*atB/bיzS_bMn^N-GAA((D~86ՍQ
-f7P#sD*ΔmyܬvmZph}OoBS
2?\}.(=:jCi<zѐދ{<iUstP2q105.tq+J21S +xnH_H#bv'mDxT)fXU]wu7=+~?^QЙAFR9}Ɛz&Bjv7 bI#n^,f*ofG|^<z:KVY~|OIJ)>r88և[6Kƃ:'8 LxN8Mv~pXR5ENv٪y/~TUw1 =Am!<κk6X-$~eFBI0Ќf
Z,%/@&0cl^%We
}D'q`Q +#5q2,c}glR`2wd=tb Pe*??a2XJ&25ˁeH+s:$FϫbUٖ5OuL+ښ=!#XXr-ABOFvB.^H;AkD+|rl/#f8FRU +X}ڽn|GժCr#B8P.]OB")
VY]{LqRbei&h"" Z]cA?HˎFYZo iV#֮6SVNM.ҩNbтdߟ6yכժExM2kӨf%x1IHsA$2S٪ix +] Fz8``}R[Udlk-ܐ ";Wx@FxJ$`>錪ʇ|3Z`kO<0[CURPN~ya-2V6 + +do! 4ᳩ4ǎSd 2=S#RxtI@%&}_ǚj.۷V`M2H䠟پ(h5=wM^~xע&N|W8 +IdvCobq54Փx
P}7{ȴ9AQgJ${]Yr\DL"R`X*8'=ΗPX9%O#B8R$cacCp1WN3q +fC:)8KɁ I5/?_'(Q&INavJo/If֠<'GYЙm\<=GL`yI2
5hHj@sF`)Bbc \*AI)h幄7)RHOA +lR +R % +ILn,151)11>m`I8;KLk4~C0axy^up"ANjNwU+dZ +V(TԤciIjfK'x֯D#)OMHAhz[]LM.%~fML-AzKv$K83&Xf8q2'I1R2Qv6NO쟝Xj>ULxsM7{w6ۇmC'j0%i=-NIH8UڻTysZ7<ˆGAbG6~KRUp8r#Cu{:um:~ݪ;]76\h0KwQQ&%sMBmCXzBƵwJSe[`7J? +Q75& 0hR endstream endobj -414 0 obj +510 0 obj << /Type /Page -/Contents 415 0 R -/Resources 413 0 R +/Contents 511 0 R +/Resources 509 0 R /MediaBox [0 0 612 792] -/Parent 387 0 R -/Annots [ 409 0 R 410 0 R 411 0 R 412 0 R ] +/Parent 494 0 R +/Annots [ 501 0 R 506 0 R 507 0 R 508 0 R ] >> endobj -409 0 obj +501 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [303.776 562.646 326.248 573.438] -/A << /S /GoTo /D (subsection.2.4.6) >> +/Rect [175.286 576.137 205.506 586.93] +/A << /S /GoTo /D (subsubsection.2.2.2.9) >> >> endobj -410 0 obj +506 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [350.933 522.518 365.655 533.588] +/Rect [316.123 472.151 330.845 482.944] /A << /S /GoTo /D (section.2.3) >> >> endobj -411 0 obj +507 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [377.888 478.233 400.359 489.303] -/A << /S /GoTo /D (subsection.2.4.6) >> +/Rect [223.051 160.529 253.271 171.322] +/A << /S /GoTo /D (subsubsection.2.1.2.3) >> >> endobj -412 0 obj +508 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [365.081 226.822 395.3 237.615] -/A << /S /GoTo /D (subsubsection.2.1.2.2) >> +/Rect [377.888 116.043 400.359 127.112] +/A << /S /GoTo /D (subsection.2.4.6) >> >> endobj -416 0 obj +512 0 obj << -/D [414 0 R /XYZ 132.768 705.06 null] +/D [510 0 R /XYZ 132.768 705.06 null] >> endobj -66 0 obj +82 0 obj << -/D [414 0 R /XYZ 133.768 509.574 null] +/D [510 0 R /XYZ 133.768 667.198 null] >> endobj -70 0 obj +86 0 obj << -/D [414 0 R /XYZ 133.768 465.289 null] +/D [510 0 R /XYZ 133.768 563.267 null] >> endobj -413 0 obj +90 0 obj +<< +/D [510 0 R /XYZ 133.768 147.66 null] +>> +endobj +509 0 obj << -/Font << /F54 256 0 R /F53 252 0 R /F37 251 0 R /F52 250 0 R /F68 299 0 R /F55 368 0 R /F58 350 0 R /F56 374 0 R /F59 386 0 R /F78 417 0 R /F60 418 0 R >> +/Font << /F52 298 0 R /F67 346 0 R /F37 299 0 R /F53 300 0 R /F64 440 0 R /F58 410 0 R /F61 411 0 R /F59 454 0 R /F60 513 0 R >> /ProcSet [ /PDF /Text ] >> endobj -422 0 obj +516 0 obj << -/Length 2259 +/Length 2694 /Filter /FlateDecode >> stream -xZ[o~ϯrsy8(E^n}ɃVbȒ+' ;CR99gQrf8&w MJq6aBm j\7W?|^&:` >PŐW`M0AZkb&kCBq&pbqPtʎAiI,Ph2q̪PvtYtF)Dq00Hf%困/PAHgyOvP0$KGgKrQiKN\lr@bK~V.jU%Σ/4sRVB7#N)>v0 nN%c\,SUhTŞ}}ꊺ -]KA(aFBd,6zb)L]hU*l_fo t`)̺+#I?{-|.aeU^#}[>54e6~ʆhyYV89")YX0`?d.tz\hH=
pҲdı]S -6p0=M谛8_D[#g![D^*تBTO)dvlj3WLdzC4Lj_h$aw#V7Yjmn#u,7 -OH?G<!L@;K,5SÈm `{S=k=3D0rXws&i/+a:._!oPn7*A8VX5~UNw>亾RF>bgyы04HvK4y_,8.L}gG}!]jq]gg\!0)SW!U~" C$D}{/M
>P`&eݯ'M[! zyMʖ'_SC!!Bh
Irmoab~u#*ڿ -YKgfb5=6p(~j|>
&U1+ʛ,Cֽ8@]h1|MP珥o&X56kC㘞VGXZw|h-km
Y,S(@:N[_72WPcMxGs4HQ^"Y~Xd1kU'ev%5hNhd_u~B6BY( -K.o§J62bb\6_2̄Ήw +xn_Rr!-NCQ-E[%%iΒ"e:Dȋ\s5On?^)x歴M"cNd5)'M6^e*Z)J_ZOVƤy[ttiYTrzͳr}KD،qo.Kw<7 gλ!'M]G&pd5r$ *0#qt>-?ڛ_,$g)0몾]>-XX&W8%W+%ryƌ5Dn!o kZ3- +1YjT +2-3Bs*IԬ&މgqi+9|Дɲk|J8\T*E;'QBIHqNW<;=Xg"6OBU⌮y`糇F{)wX|>E +N|h +Ij
7jYNivpA!F\:uPΑg*ESQPI-NDd%4&@?UP<Ȑ]m[8c8mr;zagsĶ]4nN[)96|O6_Π^+80M:/f9u endstream endobj -421 0 obj +515 0 obj << /Type /Page -/Contents 422 0 R -/Resources 420 0 R +/Contents 516 0 R +/Resources 514 0 R /MediaBox [0 0 612 792] -/Parent 424 0 R -/Annots [ 419 0 R ] +/Parent 494 0 R >> endobj -419 0 obj -<< -/Type /Annot -/Subtype /Link -/Border[0 0 0]/H/I/C[1 0 0] -/Rect [283.658 210.306 298.38 221.099] -/A << /S /GoTo /D (section.2.3) >> ->> -endobj -423 0 obj +517 0 obj << -/D [421 0 R /XYZ 132.768 705.06 null] +/D [515 0 R /XYZ 132.768 705.06 null] >> endobj -74 0 obj +518 0 obj << -/D [421 0 R /XYZ 133.768 570.427 null] +/D [515 0 R /XYZ 265.04 662.328 null] >> endobj -78 0 obj +94 0 obj << -/D [421 0 R /XYZ 133.768 196.29 null] +/D [515 0 R /XYZ 133.768 512.802 null] >> endobj -420 0 obj +514 0 obj << -/Font << /F55 368 0 R /F61 369 0 R /F58 350 0 R /F56 374 0 R /F67 298 0 R /F37 251 0 R /F65 258 0 R /F53 252 0 R >> +/Font << /F37 299 0 R /F76 438 0 R /F77 439 0 R /F57 345 0 R /F55 305 0 R /F53 300 0 R /F58 410 0 R /F64 440 0 R /F61 411 0 R /F68 388 0 R >> /ProcSet [ /PDF /Text ] >> endobj -427 0 obj +523 0 obj << -/Length 2720 +/Length 2842 /Filter /FlateDecode >> stream -xZ[o~#UX۽_Nᇴ8=m~(䁖h$$'" J?Xr9;ovgHf⏿94mƙ!L+J:{_/ȋmX -!rNO2K=ˇRyT)a&/W;*zx۳|}4cSh2-f4[2J3?uq'sp} QDDSi"t./G)U-͟cb_KF9|;/Mk4lεteukj*pz(\v&P@1?pwT1KY"<R`03,P$ۮ<|S[\5wx_hMq uRȼM$DOz` _R5cW$b(xġ
ت <ַ:R-LTuK8
\F.In SlCzK"p.9P)Mgb -nm+WpTJ*WȄ F[NCS{Xcu^ᷫ oL/aHtX+C, -<_wא4z]FwiԑȠ_H8 -lbpp'l -nǝ7QpT80rotCim@!ڲ|.~6v4X'B4ӯ ]Lk#KRvx7!s27DeGxR纕וԃz`U{FD@Xat q5 -ekc@B& <
ʉB<k)l0
=wLȮʷ
>>^R/KUW8XݷۢQ\79t?Ö2%.c
|O^H*-ZBj|}XYK -7 y'^tHsj$#&+m,y-v -9 q*u_uSƢ.2Nb5_;^u˂p'wi`8XfM4*1c@t8*>0emU)b0-d -o`b#5]cl(b?.ݼIEv}6*. %7=]ܢ /wa8|=;wuR4:Vן @Ȕ/W/$ -˜)7T^Ĕ))BīLR&*:PE!hwU徍 -sHZ|"b{ߘ<W|WQ&cpq)eA2Qx%C3/#smVziͨz卶r[zOY9!li4T/l +xZKoHW(/$ݝ`2b0>,HL"5$3ߪKnf_=t[_.pw,\4"1.2 jq]|XvZ.]ySl.2+i˥ps[p#˷4]TxMGjMie2M]-͚|<vN9 7 +NO@KfGu_U[\Xn
%N İ:,r s6oZCQ` zʄ3x9JT ϜLsF2Y-<87)aS,6KYEc[T;fti]}萘VĵӃin{kOuWnAGeܐR0kgnMqbgZP_IZlc3aAf.i80/X]xik-e|O;oco|4O|cGDʹ0\#ADTW2BSȄaYW,rw863miNeΒUhأ?BC״FFzAL`}s6]QW/h1rg o4Qw4=u4}v86\wU |MР[3Ik|Kk~?
Ѧq1.^T(L܈= +D0^u^{$PÌx(RjPbDHD=pƬ]'nAj1U۞( [,O$ANBBD8 +Ri+)!
_, 3K66pĬ,i0F+X<:#p0`^a0zk +\pɠyL7]OBJ"H%`$w;BwmPnL]Ja CtdX҄/=F[n MAvML +9nn{MAa@N6#`}{%G\UO؋֥+^cFfa#532$|f&KXk`<XPRzc +|ʺIF"-)|^l>-<4{rK@>.~,s">ind3#9k,+i!"qi׃!3>$,|=)y>R|l >y+wVNH:m+^ǡf<M)XkWZ\;\Aq>j(u>jL2B!$+UӐ|ԉKѠh#|L4B$Fڗ0}WpljSL#dI|ᬒS*Ni
+Z3:V&l3!B)^P395))PpSo~&+m%܇9ǷT-ZF~£ЍBfJ{O!r _h +aCt]jHeK!ʜf[K|SI\l?ƪmŒT%aŮ}**_HD!P+}6X?aC*d +cEH|_ԡ{i=~1\kiSn_ִ'B0kJ:I?\4gADU4FM}_c_\5'|V1YOc,aIHWFuExbΨW2\ƴNVDGg endstream endobj -426 0 obj +522 0 obj << /Type /Page -/Contents 427 0 R -/Resources 425 0 R +/Contents 523 0 R +/Resources 521 0 R /MediaBox [0 0 612 792] -/Parent 424 0 R +/Parent 494 0 R +/Annots [ 519 0 R 520 0 R ] >> endobj -428 0 obj +519 0 obj << -/D [426 0 R /XYZ 132.768 705.06 null] +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [224.269 558.661 254.489 569.453] +/A << /S /GoTo /D (subsubsection.2.2.2.7) >> >> endobj -429 0 obj +520 0 obj << -/D [426 0 R /XYZ 265.04 662.328 null] +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [196.401 510.286 218.873 522.242] +/A << /S /GoTo /D (subsection.2.2.1) >> >> endobj -425 0 obj +524 0 obj << -/Font << /F37 251 0 R /F75 361 0 R /F76 362 0 R /F65 258 0 R /F53 252 0 R /F64 257 0 R /F58 350 0 R /F55 368 0 R /F61 369 0 R >> +/D [522 0 R /XYZ 132.768 705.06 null] +>> +endobj +521 0 obj +<< +/Font << /F37 299 0 R /F61 411 0 R /F53 300 0 R /F55 305 0 R /F58 410 0 R /F68 388 0 R /F64 440 0 R >> /ProcSet [ /PDF /Text ] >> endobj -435 0 obj +527 0 obj << -/Length 2052 +/Length 2673 /Filter /FlateDecode >> stream -xX[oF~[@̕-."@[8(EҶ9CRt1,s=F<x.}Pq4QpR, 21W:j"V"l_>uvO&!kuT+ݘqJhV#jI5K]OܷE^۲. -:VU}@iP Pu#KW-hLeY*%\OY(
U//Ok:nE|3Y~Uf k'Lq=-yy [^JgK}CEdbړåZ?]7l`*Q^%EJǦE3+>λ79Z+-[2}/fGo>tX_BT?佅nO#" -ܚ/Gd$G(i,^(cRc^]KL z'/l",;Z=^KG0R^ZHz91)1}9Lre59<Ԍy((SU9/+gp<1%Y,<{@HX -aSba9< -!, -?T^GbHJҜ3Ǧ8,GoC:(C颒|b397Yv9:|w}HD___9\n{
̆+dBz;|sԗhEvP:N bUG[AO:82[lmF -H*qNjlaBi<GH ->]DM -htBZRN:ir^qڤjYV;UB`7a5YGLsu q 1:48LA
>%>@-弔CG~ +xnm@7|Hbr 6c B-tHjb=U]͗L? +!MTEui?<f +! +Bƅu8[Dl*ޭM hU㲶`1; +MV5hrQl'S-EK,\x4A:L۵Cww2aP*hэg?U-Q(7b=Ro}y ),'@#y)CcSuYM<f {tȨEٯK: jX`6r|vE7˂V?t`B
Є]F` +([:GO
G9#>W>qtDQ +{hׂxzل3gJIlhh瀬_n/%VECM@j72 HI0X(3XS[zN;2r=0 +WekZ +^ƤyՏ
vÆ316pA˿y_ )<KRha6z#}&z`> ۃk=٢`}}r6 +Tz\rђO@1uڽRDAPuH r#YDwO&N_dxk_hM(Q{_7w.\m!S96d{0~(w<VaG+grOEClP¦>-֪C?AXPV<VD䋴"GTv=UjTKzZO/;,U^_X:kjRf%hCޞ1F</)J !yۗàM&z.}+7/UB 7/pxx3(W +z_*$tʸ9u + j˔nȗ
ApS~pr;⳾9/ +NLJ +/ݾ3 endstream endobj -434 0 obj +526 0 obj << /Type /Page -/Contents 435 0 R -/Resources 433 0 R +/Contents 527 0 R +/Resources 525 0 R /MediaBox [0 0 612 792] -/Parent 424 0 R -/Annots [ 430 0 R ] ->> -endobj -430 0 obj -<< -/Type /Annot -/Subtype /Link -/Border[0 0 0]/H/I/C[1 0 0] -/Rect [205.055 283.804 227.526 295.76] -/A << /S /GoTo /D (subsection.2.4.1) >> +/Parent 529 0 R >> endobj -436 0 obj +528 0 obj << -/D [434 0 R /XYZ 132.768 705.06 null] +/D [526 0 R /XYZ 132.768 705.06 null] >> endobj -82 0 obj +98 0 obj << -/D [434 0 R /XYZ 133.768 433.534 null] +/D [526 0 R /XYZ 133.768 667.198 null] >> endobj -86 0 obj +102 0 obj << -/D [434 0 R /XYZ 133.768 339.609 null] +/D [526 0 R /XYZ 133.768 296.605 null] >> endobj -437 0 obj +106 0 obj << -/D [434 0 R /XYZ 244.077 248.853 null] +/D [526 0 R /XYZ 133.768 181.437 null] >> endobj -433 0 obj +525 0 obj << -/Font << /F37 251 0 R /F53 252 0 R /F64 257 0 R /F65 258 0 R /F67 298 0 R /F52 250 0 R /F75 361 0 R /F76 362 0 R >> +/Font << /F57 345 0 R /F67 346 0 R /F37 299 0 R /F58 410 0 R /F53 300 0 R /F55 305 0 R /F61 411 0 R /F64 440 0 R /F52 298 0 R >> /ProcSet [ /PDF /Text ] >> endobj -441 0 obj +533 0 obj << -/Length 3072 +/Length 2360 /Filter /FlateDecode >> stream -xZ[F~_˪*. òM6,l4ݚaԑ}SHjɚMRթsEVNj@/^`UDەVQ\u庻/6ַjuţsgx,Nyϛ.]V>m.^_B`ܭ/@QqO>&_NmdY4:oKYy-ZN.H+V$t남CQ^uɃ-Hymw㑧"Ѯ~^Ⱥ{^iPty/~pL8d{rK&JqZoʲAgUyP]ɔCDƙgecVnI:zvܫn鮖sV;Urpѵ9mciYPA'\~1xAV1ṦS(1Uo|:Ҥ:F1'П{)B7kne=ơiP/ȝKU^C:Qa5ǬhVkp~Y;5*S~2zPcEՆcCEՋiEuCBX{
^< -l[\";dc뇽xt?̧oEݮBWqd\qqEҬ%c. -)s_\#ל88+y'PeT|'
0HᬸYѺK<FB -;2,vBXPOϺl9LFg!l[sk-GF?,m;0<*̟ -Dr>Ju=pjn91P)SF&H9y'gvr'#ݣpol~&9K5 \Q `[0W9+HGҜhy8_;I -5X˦*2'_KN<zIG_6RLhLPttsQŜĘ&K+^+L"\!5Sgx{r6]Cf>dMsobh}*nI
|&ݡ*h_Zȧ<mb??Q}iØ~^O Ci-Q1fJ^RY'b
)KM}0}:}l{V\]_[ճ-*EE+dߌ=;qb=m\KRjb5)b,ȠJOJ}?Rt~tf#fGvK,;*%<<*_%̖)Pfێ>>)A -1'#wQ59t$`ȝ}@oȘ;GYᣊ^ 9{ D <4Ayw9
f3ss|M[Ƽ` -3 +xZYo~#H}hdY Ix +O\~}LEIet}#"#htnfqy"l9/bT&o0loi&dCbv{$\_}"p#i%:L!t]h
/0RFE*4p{o/)%wR*@F4eFM +H8Ee@>[Bg:MT=8YzSj<\|EK:,o\җu"YoZT.%mׯ{_ + +~3ڎcWH)ΐHF&dZ̥4c3S""u PCXqKuqedHsV{0!+W*|tT->VuOGKVhhj{)( ((b^d +#"I
)]FWLPaė8Th ݆qYV0s\2e҈ȱ` v17L@bdݜ`0'@!HommRЂBWXw۬kۭPVT76 +n`OOJ1X0{8יCzNJ\8^0_:^JTKD!J5TsH.⻲ +P|Z6` +'i@ +NeRDwÎ[Wu䇉UyMW:ZlMi?/}v$cOiS~H5Ӵ~Hh'~W1r+@^@;Jт +: FVEӂܛlwOTLSn㾶3QݔUT5o{:SXwf_ə[\lwwaY4v)@1Qk6/yӸYmK0TmDLQ*M(9б-Egro;X~*}&ڑ_&%?/
v"m!AuYGyI endstream endobj -440 0 obj +532 0 obj << /Type /Page -/Contents 441 0 R -/Resources 439 0 R +/Contents 533 0 R +/Resources 531 0 R /MediaBox [0 0 612 792] -/Parent 424 0 R -/Annots [ 431 0 R 432 0 R 438 0 R ] +/Parent 529 0 R +/Annots [ 530 0 R ] >> endobj -431 0 obj +530 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [374.327 653.748 396.798 665.704] -/A << /S /GoTo /D (subsection.2.4.1) >> +/Rect [440.237 240.265 470.457 251.058] +/A << /S /GoTo /D (table.2.8) >> >> endobj -432 0 obj +534 0 obj << -/Type /Annot -/Subtype /Link -/Border[0 0 0]/H/I/C[1 0 0] -/Rect [157.761 629.838 187.981 641.793] -/A << /S /GoTo /D (subsubsection.2.2.1.5) >> +/D [532 0 R /XYZ 132.768 705.06 null] >> endobj -438 0 obj +535 0 obj +<< +/D [532 0 R /XYZ 244.077 662.328 null] +>> +endobj +110 0 obj +<< +/D [532 0 R /XYZ 133.768 227.321 null] +>> +endobj +531 0 obj +<< +/Font << /F37 299 0 R /F76 438 0 R /F77 439 0 R /F53 300 0 R /F58 410 0 R /F64 440 0 R /F61 411 0 R /F60 513 0 R /F66 536 0 R /F63 537 0 R /F62 478 0 R /F59 454 0 R /F65 538 0 R /F52 298 0 R /F55 305 0 R >> +/ProcSet [ /PDF /Text ] +>> +endobj +543 0 obj +<< +/Length 2769 +/Filter /FlateDecode +>> +stream +xZ[o6~ϯ<(EmEv.fAc+r%Iv琴,9x?H(\4hξAή3&1fϮfٛ堣&:wxK>g_~Ơf,cJ&35tyfLv-3Zd:5HP*c RK&OJťJ#)v
F +d|"ҹW_tD;^&nM&V#|+뷉p0f~>aHC)-5M%fѬdt9 G3bl$ +BcsJ*tVq:qфP4kG(Mdم 4!YMOhRtIƾ#XW"1=?hע6W"Pe0)1>Y\z:")Ng sdy)0 b{(6&,
U\^ޯմ:gyxM|m^NTrv)bfY6մt{11ejZ,\ŦE.6Vmt!b`Y=-ySwsESP²|ve9bMJ@3*䰲*QZf(EeM|z@mE;Mm. +I>VV% K3^lpS[ݑ&wta[ohXdϰ8 ö<!ZȶSCoRoriK!eZpȮ +2ы>lϋwn3Qx]WEWx&^\[ώhQ0-?Dl[
KN"_6h`-)i:0Z'%7@i +=q4_׳ +pXw st'ޟMaa"r5 +S-MYGzY@X-E%l +G
wn5nỸxa;h -Q\X0TuӖ G0[-rd*%XV(1gF;Q17d((bCZ=K +_[kNk^rнB,VG/hVMZ稯xjj|`n^ +*{yx5]Hnכ,فg'UW@*T*ثW^ݾJkM=ߒϭ +Yw`,|[0랔@ + _,iu9pA P
fuiOX]?bv^_<w$ + ݛCL]p}|s{)./Awo_ޥ"W(QG$V +,^`pKއ'\1/k)u +sVtuBZ?A7ևb _ɺRqˡƛ)ғF"& +TР_̗C0_V7-tp)v#0_~ǜ9`>YZz:g|//C/bQwtz|\Q(ȀTn +endstream +endobj +542 0 obj +<< +/Type /Page +/Contents 543 0 R +/Resources 541 0 R +/MediaBox [0 0 612 792] +/Parent 529 0 R +/Annots [ 540 0 R ] +>> +endobj +540 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [445.488 582.571 475.708 593.419] -/A << /S /GoTo /D (subsubsection.2.2.1.3) >> +/Rect [329.07 543.133 359.289 555.088] +/A << /S /GoTo /D (subsubsection.2.2.2.3) >> >> endobj -442 0 obj +544 0 obj << -/D [440 0 R /XYZ 132.768 705.06 null] +/D [542 0 R /XYZ 132.768 705.06 null] >> endobj -90 0 obj +114 0 obj << -/D [440 0 R /XYZ 133.768 534.414 null] +/D [542 0 R /XYZ 133.768 494.6 null] >> endobj -439 0 obj +541 0 obj << -/Font << /F37 251 0 R /F53 252 0 R /F65 258 0 R /F52 250 0 R /F68 299 0 R /F58 350 0 R /F55 368 0 R /F61 369 0 R /F56 374 0 R >> +/Font << /F58 410 0 R /F64 440 0 R /F61 411 0 R /F37 299 0 R /F53 300 0 R /F55 305 0 R /F52 298 0 R /F67 346 0 R /F68 388 0 R /F109 545 0 R >> /ProcSet [ /PDF /Text ] >> endobj -445 0 obj +548 0 obj << -/Length 1819 +/Length 2459 /Filter /FlateDecode >> stream -x[o6)(o6e@^ -l)̓"+E,IQ"rh'ٔ"$<"O4N>&8g'o -d$UBCJD<9OO'gdDX0|6'sB'$!!0!D:oO/p2'Qɝkw.1X?+xD)!ɌP`T CTdFNYhmqDh?)ܵ$%cI헍$
pɠs|8=GFηbaXG-QyR/(֖Qq[$`#ڢCH2dHR&d</( M@hlP' H856`f@_}YM}D\Ӌ>%+9oo3bEKPiB -팆kMH0u~Ӑ19If2cEOJ]ַ-D4[eU"+l}m{]SU4"]Z0qJaOK//^lb<t֬e彝 g_.ۦk,gy[~wuiVMf}QܞkF1ҲxQ|ֵlYjkS(jDB%61NvvE[uRy3By<?59iلD&x#Q/,v0OC[C Eo뮬*oΆN3/ -M,5F܁IdX@}:>w]_#L[酱/e+ -@mvС+84WLs<x_e>`-j`IB!&J#>I)A-Bh{fG*9f$vwȎGv<xd#;>D+~VG##҂SX(~ӿb5[=̃4pM_'Hefr2v&CZ!;Ju3L.1 -C\7l ;9=1H#vbyDrP#:UVb]ɖK0Z,V~(}pYg??)쀜cE]}%X 衶]@}1u$LFtW˭biʏV4xä(x悄72/@ +xZ[o~ϯ[Nq<tNw@yBd)$CR0Nh +T +u]uٺ'IEV}VD2ɶ,U6fEvnq8\j/K$̝͡c +\Bnyp&w6{Lj.sEo" +t1$e_Xzum_| +@?_S +qJqkܒ6a3_N2p`(?e2tK_/(@0"^gQÒ,݃;~a{Ce{
+xg$q0u
C Ƀ ̵+R`|U~&HUL>hrG"6yߋ2%rȎ9Zziח.Ġ:Xʐ$.N<Н<Pv}4Z`*ly@W$8*&k{42̝:MJH`%y
9WdZT
}MR@rECu7W=-)KrwKs>A0ڢsrw%OW ׯY !+(z9\ @Gw
]Flt}.p
2knPhr閬7, +Q*ީ+XBD[s\ @ܯN̋:k@A}Y'*0e !˼&b3>P$0!K0 v]fRfS`7ψVW[]P
\63l$(#4"r~ܞ?n|F}W7kbOv}|{1bt>Y5#~iufP&kޚb^$I KZ)r5Qr+{)-ݫ$u/@c҈t"%N +eCԱ yB7!/CXGf^@1pA9lhA5hDfmPE&)MOWP=jt<ED㻎v7e;~ +E{_z^}}710pѹ\R7.)QX?HWJ7){_ɨxdb1բsN8fd(8üH}fGwl@QkCQd_r{2$EfE ){ZQhE#%[fxQ44e& endstream endobj -444 0 obj +547 0 obj << /Type /Page -/Contents 445 0 R -/Resources 443 0 R +/Contents 548 0 R +/Resources 546 0 R /MediaBox [0 0 612 792] -/Parent 424 0 R +/Parent 529 0 R >> endobj -446 0 obj +549 0 obj << -/D [444 0 R /XYZ 132.768 705.06 null] +/D [547 0 R /XYZ 132.768 705.06 null] >> endobj -94 0 obj +118 0 obj << -/D [444 0 R /XYZ 133.768 173.076 null] +/D [547 0 R /XYZ 133.768 581.305 null] >> endobj -443 0 obj +546 0 obj << -/Font << /F55 368 0 R /F61 369 0 R /F58 350 0 R /F53 252 0 R /F37 251 0 R /F65 258 0 R /F52 250 0 R /F68 299 0 R >> +/Font << /F37 299 0 R /F53 300 0 R /F55 305 0 R /F61 411 0 R /F64 440 0 R /F52 298 0 R /F67 346 0 R /F58 410 0 R >> /ProcSet [ /PDF /Text ] >> endobj -450 0 obj +557 0 obj << -/Length 2297 +/Length 2800 /Filter /FlateDecode >> stream -xZo_A<~]P6}JJ"D\I{gHJLt~)ÙPDf?x? 94]Ƅ FL+CP*ʻl.ͫqm^^Wn.'%$(E~X 2\x?Fr/ڶ߬
ՅrUy:-g,XƑ~ϾQ&Qř[T0[Fٜ1T|bM;%khnFI%Vh?aA]݄'iu0IR¬)0ڭlatqє۪:
כsB-1tA2ڹ -?AX -oKSn>[t3l|;|2f:!t0ZԻ('QX' >a4:D -F=z2g -$cv2
<BQ40r)0G&d0Ԃhǯ$ A3oA%X0PM_ccGkI >Vq;)WEn/6AW4pbH,)euOi8vcne贿hVRBP#~U2 cbmn(~XGŴL=`P^XK2̋(LXrbN= 49FykRZLGpAi %QH@Up?2-_4ܹ)}AbA{_%/d;(og܄r[h(:*܉<H3ʌ!$l-hH͎y2*x{g1J]50: p*찺9Z:8tO!C2:j1Xw]OVǏZ-CzK!Xh,af0q)*"B"Ox6DzF{bMFJL2$7PM؍ 2 pG\P#YCvu}D;%/(x0ҤR^,Ģ=:!̈S̑$<p/)R䃧H|`Ք$7U0e]RAڹs -Qx"nu"Ұ2HSmю@m47 (I#G/ޤd-_Du <Bć[em5m@A>0;X}Hb;?pH+"P%,K-)C)"\DESB=nB7jc ig@q8hJFQiq;bm|h,_Z +xZݏFN,{YM^b'QaRI*k3;H}AaoVΓM'_<_H\'7)"d\f|H?2!ؔC<W귫%?_+m?7յtDŽ,Y0srrL;z5ޟ>oN\ +c贜,N+4o.}`9OXDicç<Y<3I8PM`ie8m"<^. +lW'r<}8 ¡Wup +hjXCQ=1WjMA_Ww{9pqzuNPBjA +{CDŨ8yH؉UYq `zU +}-V\vpmUp=ԝ(c) - ڠLC*#s hHo!4k0b2ΰr)($B]WU5`"7* +MDKg~H)ׂ,y-wٻ>DL&K#"M%]3?spWzW>gAa" +0Ђx,j?7M{?Sʱ]"YP p넂=ɪۣl_xa"#QEq4es\tWDL^Mhr!Xtowe9&mD/O-Ok XZ>{'OAF7PYNu3vZi|nϮe ¼JԉY}tF}ERK(\5u$1Stԧ$ظ +:J$L˘@'H0r]Vp2У|D3̈́9ۼyl|m|>u
0\M +GܵP9τ6g8ߝ +3#Va}1(1)#N1-}cCc[{DT& -%!7Ǯ;lJ`uU\kcqɕbԍC6X+|}HӁViE<T<kz=ۗ9<]yp~>6c(E&䞦FUy{yVp"OݒqLE6,fKm.֞c(}3 endstream endobj -449 0 obj +556 0 obj << /Type /Page -/Contents 450 0 R -/Resources 448 0 R +/Contents 557 0 R +/Resources 555 0 R /MediaBox [0 0 612 792] -/Parent 424 0 R -/Annots [ 447 0 R ] +/Parent 529 0 R +/Annots [ 550 0 R 551 0 R 552 0 R 553 0 R 554 0 R ] >> endobj -447 0 obj +550 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [434.785 172.254 465.005 183.046] -/A << /S /GoTo /D (section*.3) >> +/Rect [247.792 323.394 262.514 335.349] +/A << /S /GoTo /D (section.2.3) >> >> endobj -451 0 obj +551 0 obj << -/D [449 0 R /XYZ 132.768 705.06 null] +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [376.285 219.58 406.505 231.535] +/A << /S /GoTo /D (subsubsection.2.5.2.2) >> >> endobj -98 0 obj +552 0 obj << -/D [449 0 R /XYZ 133.768 410.674 null] +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [149.385 196.223 171.856 207.016] +/A << /S /GoTo /D (subsection.2.5.2) >> >> endobj -102 0 obj +553 0 obj << -/D [449 0 R /XYZ 133.768 159.615 null] +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [330.565 171.759 360.785 183.714] +/A << /S /GoTo /D (subsubsection.2.1.2.3) >> >> endobj -448 0 obj +554 0 obj +<< +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [386.307 171.759 416.527 183.714] +/A << /S /GoTo /D (subsubsection.2.1.3.2) >> +>> +endobj +558 0 obj << -/Font << /F37 251 0 R /F53 252 0 R /F65 258 0 R /F58 350 0 R /F55 368 0 R /F61 369 0 R /F52 250 0 R /F68 299 0 R >> +/D [556 0 R /XYZ 132.768 705.06 null] +>> +endobj +122 0 obj +<< +/D [556 0 R /XYZ 133.768 464.022 null] +>> +endobj +126 0 obj +<< +/D [556 0 R /XYZ 133.768 310.696 null] +>> +endobj +130 0 obj +<< +/D [556 0 R /XYZ 133.768 159.062 null] +>> +endobj +555 0 obj +<< +/Font << /F53 300 0 R /F58 410 0 R /F64 440 0 R /F61 411 0 R /F37 299 0 R /F52 298 0 R /F67 346 0 R /F55 305 0 R >> /ProcSet [ /PDF /Text ] >> endobj -455 0 obj +561 0 obj << -/Length 2408 +/Length 2487 /Filter /FlateDecode >> stream -xZIo8Wfs_KSCӓ[Qɲ--%L<.Zb*""FgnZd$0)L,6d^93IZRiiIUr>f<+>`ƻw:=m:@{$IY/P54!:LXgqJ7x/0wM2"[: hD;I_?OySy_-*so
sSg -tۺhۼtN)H:9]1,]LEES@BS{yfX!)蹉0\kE%dP M]z9ݧ!hly_5y1i/ Xi9:>`Dͬ:ra6ll -a'jۆCmCS[vXߚG۔
C<kܭvyn}{*X&2I'_䶰Ëqy-ᦾ|kHo<6Ůźa^=ً6נɶX#>!{Oͯ&.[aDW˪v/3_P0?AG|^M{/jH> 8AOrZPTh^W|_?_%x!uȖ5#i(]:JuS@3^75xq/6bQ[ Zʇ.aH2!lTs&SnD:aX2"$&J#*DfIz"I=8l8nOIAh2Q~jM:Q $ 8*B.ޣ<ވɃ_VmySr#\7z~o)$Mf27\7|4bf57h~Uoz>oN@)|Q~}qZd,rPB!}S{]JHd>,)>߿f#DnRH>q8js9)By_LT -<$C:9$$(#pXxfqΙ4± S.mST#89e^6:voi8;IVtlڴ:R&WK͓*|0K0rC[R'Wlg'zj'EB!8OIB]EB -QN&zᴮtw
Jg7m`gNKIkե&&t7ϙFO8qɘi "b!+<:
5>a0Iw3xdĖBm`c\챽6NrF5ԟ]9[Z~'gե77uu`8W[iMXͳPj`@{>S{*-8K~qIlڋ0 ʿs|hG+!^M@py\%^'"x:ו+K͉.c9baԈw+egʗM +xZIsW0Ebz_fJLUJ7UID2ˊ=k ^_[z>4mfl镴3z#ՌKZfFTH={M|Jm de9Osa?̅Kb'[h{7%W;&UVw~%yE+DcfK5h_ mY]43l
boqdRW
@Lb{YT<ۯP7<@Eu[ht\'`A8B#ћT镖W)owyUe}(z1_jACO|UʕNUh\ ܍$|jگvGJrϻvEMr3]H, +
RC\sGɊ}L9~bt3I]7%i@C<"\h;ƨ#T}[@ݷ
c2);cRv}yG;R:=ZEBRΔۛi\O~/#Sv<\yՠ +`M}z$<ߚj:kz džΚytք;7fM=5ִ̈́)75NN.)c#ljU/!;'+ +}:=ʥ śЯxV2 G*5Vt.}\NjV@d7"J
9C~WG +7е:N0
Jd5ПWBw`O` +K+6fH\2qNE4X='n֊!'Qq=V/:@ڜA1 + +2Q +ųB[K7ɻjba8v!:߃_5zp|}_^2 +܊ iYk_ iWOH8NoờR}u\d5ŧQq, +ʝԙ, endstream endobj -454 0 obj +560 0 obj << /Type /Page -/Contents 455 0 R -/Resources 453 0 R +/Contents 561 0 R +/Resources 559 0 R /MediaBox [0 0 612 792] -/Parent 457 0 R +/Parent 529 0 R >> endobj -456 0 obj +562 0 obj << -/D [454 0 R /XYZ 132.768 705.06 null] +/D [560 0 R /XYZ 132.768 705.06 null] >> endobj -106 0 obj +559 0 obj << -/D [454 0 R /XYZ 133.768 235.871 null] +/Font << /F37 299 0 R /F53 300 0 R /F58 410 0 R /F64 440 0 R /F61 411 0 R /F55 305 0 R >> +/ProcSet [ /PDF /Text ] >> endobj -453 0 obj +567 0 obj +<< +/Length 2336 +/Filter /FlateDecode +>> +stream +xZ[o6~ϯ;;y݇aL +h%6Ɩ4ߏvZ?,D$uxxn<h%4pFgDb\' ӊ0B%7U4W'({ +
[\Qz}%~=9%R3<*rĄܖͪ4f-}&B| L)'R:Z5^[hցtiIAe|}vuM9X|kO*F{|<w6xqNrU +FS(e]xː72Ls.ºV]}ֈܯMr_=2V$AJqXJ~iu~BK'"4~Q,BȔOaB|?*'FP5ˤt(&faGqxK f|rS--O+)MITrSʭ_J1u\pû&["|+)hO.m3<*t V狵Đ.k 3E1TxЄ!E2TfYy
=d:߬EY-omn2gJNʚ2vBp _$h^3 +[bHn/b&#=E
]p+"w cEG2NfV:+#(sTb<"Ni"^*Er@ +uNQXVyp:Lz3vΞ'ljc/UN:V +^/To + }߽& ̄p303}q >QAFT1cHІ2ܝL*2C"~V>XK`afT0w06r;P{P#[^H!O.Fh + +#=EzCJJ(eC +{z|iwn`c9۱Hkdw 'C2=s$GwE4sv.,a,G`hFh$9;;q0\jk>MZ|3\P~[`pLh8[n6aGu*;0w*;NcG++vOh'cv";:n]" +endstream +endobj +566 0 obj +<< +/Type /Page +/Contents 567 0 R +/Resources 565 0 R +/MediaBox [0 0 612 792] +/Parent 575 0 R +/Annots [ 563 0 R ] +>> +endobj +563 0 obj +<< +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [414.111 459.671 428.833 471.626] +/A << /S /GoTo /D (section.2.3) >> +>> +endobj +568 0 obj +<< +/D [566 0 R /XYZ 132.768 705.06 null] +>> +endobj +134 0 obj +<< +/D [566 0 R /XYZ 133.768 537.328 null] +>> +endobj +138 0 obj +<< +/D [566 0 R /XYZ 133.768 434.771 null] +>> +endobj +565 0 obj << -/Font << /F37 251 0 R /F53 252 0 R /F55 368 0 R /F61 369 0 R /F58 350 0 R /F65 258 0 R /F52 250 0 R /F68 299 0 R >> +/Font << /F53 300 0 R /F58 410 0 R /F64 440 0 R /F61 411 0 R /F62 478 0 R /F52 298 0 R /F67 346 0 R /F37 299 0 R /F68 388 0 R /F45 569 0 R /F43 570 0 R /F46 571 0 R /F48 572 0 R /F42 573 0 R /F108 574 0 R /F109 545 0 R >> /ProcSet [ /PDF /Text ] >> endobj -462 0 obj +578 0 obj << -/Length 2330 +/Length 3089 /Filter /FlateDecode >> stream -xZ[o~ϯ[Vy,bC<H֖md˕=nٓt5hyxh=D$\x~w{$lbS.R$FJqnrѤ?mֿ~\-էeaY.Ip"aW<r?-7uRdk<kޯ^ ]$:?`#>?=㚼'ȁ4+Nn C5Gk`JH|{ -$P)&uܽ'D[=holZVHQ3dJiBNUzb<LQ)h LЀhLck_⦣͍_7\vb3pįqcJM$-&lj"F$%aEYP=լC?9 -jaBt8f&pػfPi0E6kadpY+E -' -n'42m[@i/8`x #s8H%Jt"RvS[[vH.8A-w2YȪBqdlN2;0m+1!\uw:>9U'cIVݐ!j@6yN+1˂7_Nmܡi3[(u}߃n+"i< \\f`&J%Nʲ - -12BS]B((gb(!̜BSBR"V(9;?pV-h㬳O^$Q
`Ֆ +xk +;yKv4@R\Ѣh@ +Z=Yr%9Ñ,i[_MI#p3lv;c?^1t4*ʈfƥ#όB!f={PΗ7>OK`s(VMV5f=zYqb6WhfCkl)xHHʠ(tCA4VU3WAʐ;vq +U2Qz[f +/(Qy,"BBPN7r4!`X.#Ռd +5A0!1MKAsƺ[w,J⡕J!L~W}; #sÐ@Cc Ij +{s'}>TE
lsD ?3 L" +f2}{ +KBAd +3 +N)7?J W]BUʊ#7_'b,lm]R{!`Q6mLxa.0{U}H.?dl(T|0g*4dhyBHL(DG~w
ǀ7ĎR_I[Q422H<r)
~ZwhRPrƛu9":`:+0vA>d'V +->Ɏl6ާ@q(bQm6,PE29O<[{\_?4fQ?#w|E^pEKZ|/cxs9gBy|sB߽ѿy7aMKH0V|dqW\J +Zq;-Pf30fhNJv'Byu)Noflf|nB.MȎVY!AZ
Hk0U\[p`?<Z0u=a +=_ri$)pPe#Iʢ`Ԇg91GXnSSP\⁹MHIDTFe.!<=0W!J\N&J]Dzd^聿XzP?]Nh!%zP{z߁YF4m058lw(BG:(F] +dA/D+,Ɏ?Ps*hTɉ;j)k4߸Ӫ~8tBEP_Y^c!R_#ܟ N#M^V6M3Oa ܵ|]r;j8&H_Z$'yv[\YCoTOyz$a^2?=-rD}HYD_Z/B]BfL@V7 u7fNL|=AKp~~hhPCz/ɽA@Pd~&S$)L',=ajA3Ztt܋ZQ/ځ`?@`B)yĤe-i.Eg/#̧BfiC#c;}QwHMC_%`32!UP{1rT]ȺJXDh:ǂ&ճ8X|G_G?pSNU&g55<~*/byWr<=LnFf%5^ݼ +LD9.]c@*⤏/&`{(_Iܩ{^6'W≓i})9OrLJ)R5;
:Ko% +(gHOo7Q;gk\ ?'d&X6~*mܑL?uuBQ +yN{Eqrŧ5n9(]btFunQϬ& =[8=?7v"V9*O>D+[:vcM|-',CoyGPG>BB6]KF5|wO-mW97vwx!E +I endstream endobj -461 0 obj +577 0 obj << /Type /Page -/Contents 462 0 R -/Resources 460 0 R +/Contents 578 0 R +/Resources 576 0 R /MediaBox [0 0 612 792] -/Parent 457 0 R -/Annots [ 458 0 R ] +/Parent 575 0 R +/Annots [ 564 0 R ] >> endobj -458 0 obj +564 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [227.407 481.336 249.878 492.129] -/A << /S /GoTo /D (subsection.2.1.4) >> +/Rect [191.593 632.481 221.813 643.274] +/A << /S /GoTo /D (section*.2) >> >> endobj -463 0 obj +579 0 obj << -/D [461 0 R /XYZ 132.768 705.06 null] +/D [577 0 R /XYZ 132.768 705.06 null] >> endobj -110 0 obj +142 0 obj << -/D [461 0 R /XYZ 133.768 516.895 null] +/D [577 0 R /XYZ 133.768 667.198 null] >> endobj -460 0 obj +576 0 obj << -/Font << /F53 252 0 R /F55 368 0 R /F61 369 0 R /F58 350 0 R /F67 298 0 R /F37 251 0 R /F64 257 0 R >> +/Font << /F57 345 0 R /F37 299 0 R /F53 300 0 R /F68 388 0 R /F58 410 0 R /F64 440 0 R /F61 411 0 R /F65 538 0 R /F62 478 0 R /F60 513 0 R /F63 537 0 R /F59 454 0 R /F66 536 0 R /F55 305 0 R >> /ProcSet [ /PDF /Text ] >> endobj -467 0 obj +585 0 obj << -/Length 2807 +/Length 2516 /Filter /FlateDecode >> stream -xY[o~ϯ["&QE^l@
ز-lLs!%Lf -a]j96pi1iñWXK\XR)QNt9V}S>TH;dB4.Z0)*ιdNtm6+EV|X -W6p
v5"w97 v,[u6㒦=vpٌs鉔S5}".gXW+߇ǽFs 'P>#$OUXj8#£lr-SU.g*.1r]<4-8ao8~'3QmxM7@=6ݭ{T4{``UW8hn+ RF3 OjR[MMMTd8Q4gu} [ג{cO-#!~ǝQSKCz\u*]`JtGJ3["ZY= 20& -Aցo]n~l|3r1wL٨r`_=& حizv<CA
6Z$ ""y*N]O&"%>Vӎ& ̅3.\y9c~AKREu -ꙻjE(Cj[4ih! -:nu -waCN1Xgyk ~~6.E1^py'$O
ӡ}moݱ%ٟl(F9.} *pXcH;*Lp#7Ax -ѠfYp]SQUj.rx7!ߗ)4ќ -8HJkm%^sSˆR:B,`__3ZI PNݚjo=D\owLfsp5{`h[YaB-Ov -ȳ\["
S¾)ڷ;Ef#0),uم`4
chsUQ -ϻ.fJ.DoX2N+C+<Y(lE`=E( - / -?Q>/A_Ж~gLlC}rĊLٕKmdk
ok'qZ;w\h.WXD$2f`N75ldLҗ@ R̛թS"E@yHVAm -sdb} 8Lӻ0=Pe -DyR儼ӬQՀ|& -- -4xf]܌8PWųG5њe'Q)h}9c-l_~ƢXxv;jx -7!NIs8Kꆋ㪾IZb -z>mpNjZ^ uB/K?m]9+LZZ0od{56_)]yo8r`: ъ"9qWRYrhp"fKU;9|6`Tq٪ %]p4\+wٗY)*Y/,Tݐ.6=@ҢBCR.M}$v{<H3?<CȐN&A_hJ- +xڭˎ_A˗Hi>$"Ii[XYrTHYrkzv|]b+VUr#~J1kI-*]Vu̒f\%']W>ERVe_ѨޱƤ*gnom<vPoi +]Fj]@i4g6R*1\IZ':^Ɍ= ZKfLp;'|W .%/ +B,k^ +11%w +_9&fr̭LʤR}ͻ:cVȕbK+ZЫE%pp`Vcf$9yO6ܺ%].9)bYNxefTi߉ƆGIbYX5?V&%v*zМ/62c\|ɽgBoPPOJAyBe2S342&qu28/+Xoz±lo±wʘ4Wn8W +}E㼬?a? +3L_ul=EM}ŔA66!)kxkŬ!-\Y7Qcǵ=i=j>3#!URx.dFdLM)>^W89Re}IYz,wCQ{ 6 +)ڐzm|ٱ l8+ׇ;3WoHygqpI8+8`}Cz
\&eO +]uU ,>זb&&ߥqi.͏>s^s\-&4ڮ/BB1I3e~mO?!+뗾afӒ"WW!ˡQ!$2+*ٷ{ +ZAΊse<B9OCl8˲,t5H"c endstream endobj -466 0 obj +584 0 obj << /Type /Page -/Contents 467 0 R -/Resources 465 0 R +/Contents 585 0 R +/Resources 583 0 R /MediaBox [0 0 612 792] -/Parent 457 0 R -/Annots [ 459 0 R 464 0 R ] +/Parent 575 0 R +/Annots [ 580 0 R 581 0 R 582 0 R ] >> endobj -459 0 obj +580 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [350.262 617.883 372.733 629.838] +/Rect [321.017 312.355 343.488 323.425] /A << /S /GoTo /D (subsection.2.4.6) >> >> endobj -464 0 obj +581 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [436.086 510.286 458.557 522.242] -/A << /S /GoTo /D (subsection.2.4.1) >> +/Rect [457.111 197.722 471.834 209.678] +/A << /S /GoTo /D (table.2.6) >> >> endobj -468 0 obj +582 0 obj +<< +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [194.34 116.319 209.062 127.112] +/A << /S /GoTo /D (section.2.3) >> +>> +endobj +586 0 obj << -/D [466 0 R /XYZ 132.768 705.06 null] +/D [584 0 R /XYZ 132.768 705.06 null] >> endobj -114 0 obj +146 0 obj << -/D [466 0 R /XYZ 133.768 341.332 null] +/D [584 0 R /XYZ 133.768 288.784 null] >> endobj -118 0 obj +150 0 obj << -/D [466 0 R /XYZ 133.768 259.186 null] +/D [584 0 R /XYZ 133.768 184.965 null] >> endobj -465 0 obj +583 0 obj << -/Font << /F37 251 0 R /F55 368 0 R /F58 350 0 R /F61 369 0 R /F53 252 0 R /F65 258 0 R /F67 298 0 R /F68 299 0 R >> +/Font << /F37 299 0 R /F53 300 0 R /F58 410 0 R /F64 440 0 R /F61 411 0 R /F57 345 0 R /F67 346 0 R >> /ProcSet [ /PDF /Text ] >> endobj -472 0 obj +591 0 obj << -/Length 2021 +/Length 2326 /Filter /FlateDecode >> stream -xڭYKs6WEDo3æjJڍoh -XCKR8Sx"eV @'[8zp>'"2y(pIS4F*eqv_U)V CVY׳W8"LG)U#UVM -e<x%KnPJd$@2Mc"*Zḷ/{x)+vB0%8./q9Eu6ZHH}у88FE}L_#Dh)K$gP -g'Cjc)G(!i~8PqV yK6'gH9zk8]T ӽ;mM0ー,BR;5YI8"t\䠰 -]6=`]p- !nv?!vtoK -*CSI6h9 -^g?͡+_3k;R9ENA$i:Pnd]ar`m}mk픓lü / Crd?k?ofվ
LN)]aR+[2ft!izl`"v~y2"c^Y7K/7W Дo0`R83/7hhc]4M~ -.ہgIj=PYKơTx$SӰ!:+K{wLwml?-p"6 +xYKoHWj | + raH=Ih#6ŚN3ƈU;MW_.| F۠eX ySϐMb4QŸ,ͫM JD5`#H*o75E"YFȁl IvKzV98E#L@dƵ&dChWEH3EmZ>^a+Ni=fC؇6}
@MJtմo<^M"jNb. Rɫn^sdy^ϋj*Uѻoۧk%XFA_q}DNOc1N<1{utԖDdČvvL9Ne;^+kof~*muJ=p3m9:j#r2'mWܽ)pUԷ +(J!>p#x!"BB?zۑE ]ڼ͋RlW낫y5z
Oo+p_8,;hO(Rz +s2ӂTX_}9C:}ioW!U>ꦚYl+.Nt뭥 +H-Wbr
n""\- 7Ώミ*c`aq1sMWVy_;:8TehfĂ܆t=P3Aط"^mh2<)Cb魏gArl$(NIq]Ek.vĔ;nZHN`?E7U%iQ
=0\"C
F̆[XrBӡu
K u|pSG3K8CAbT釉)ȢȻ&rzBwU[9>X* +uQf>T)DZp_4 smfA4"ng +:8HA|J=RjƩrdP;MBs81-?]Ak) `T&Ob(?`Cf?(Sƃ>c<dq{&;Cfϑ?AA<tƤI젅*f}.;3ƃPLkAqf}6Yucp0e'cIsaH7 K˪'J_sWEdL9ÙVl(' Uh(.:$؈/)8ubêlfUo ++ad `7k7IjxW502eP"2OJYVh1ʝN3"-?y pEwhӲL蒙SN6A7L endstream endobj -471 0 obj +590 0 obj << /Type /Page -/Contents 472 0 R -/Resources 470 0 R +/Contents 591 0 R +/Resources 589 0 R /MediaBox [0 0 612 792] -/Parent 457 0 R -/Annots [ 469 0 R ] +/Parent 575 0 R >> endobj -469 0 obj +592 0 obj +<< +/D [590 0 R /XYZ 132.768 705.06 null] +>> +endobj +587 0 obj +<< +/D [590 0 R /XYZ 292.465 662.328 null] +>> +endobj +589 0 obj +<< +/Font << /F37 299 0 R /F76 438 0 R /F77 439 0 R /F53 300 0 R /F58 410 0 R /F64 440 0 R /F61 411 0 R /F62 478 0 R /F60 513 0 R /F63 537 0 R /F59 454 0 R /F65 538 0 R /F66 536 0 R >> +/ProcSet [ /PDF /Text ] +>> +endobj +597 0 obj +<< +/Length 2717 +/Filter /FlateDecode +>> +stream +xZKsFWʂ9#.u[[MvjiP! mT== +o^<zut݄O~<o_)7 ,Xi'WsOqL*3XM.R雋_݄F%,tΦsm|vRYQ.Jw{ShbΟ+۴,]lnygnϷ9|&8Cاis%eS˜~ب+>K[w>Oux,QDq&nT;jmf*]ey ɷQJJ}}eTVP+Q/h +&kVåӹ&n
ooK4pY\|$HJ0側LzMi"`}߸*g$/aebbM7|!,sM>ĉi'ɯg$%5x0@b*L̉srf0͡(BZ&Aפdkɵ>&z +8D|6'DH's +,]ad9?۩<ǔՙ:__OL@vwl/Ҳٽn#<M_HMrnOomy|MUUM + 9:
\/Jj-ẬzUU㖐MQb dzSŵ+KRA@]@]ScʜM6r\A"eM'>HPEK~}JϸWYR!2X[<v JR[hT +X,\sen?Wt|@\Y.)>=K]IbaAͪ\lQ
3?WbUW +pѝ߄Cw%]^B~[,`-kjF57k)Vg][H7 +nFVц&QO%ѣn-(ܫ}4f^[EyMDo;3Xɭɍ^v;> gl2F0fdӓ>ziCsg=ӻ\>7eI8ӎpRv
tndXn"\:|*Xӓ cb^jA:\p`;#&{{3IgM!7(l
wRp=hԛ6FK1L ߪf=2)K=-# +?^!͟ƇD|?݀ΤD,88)d4)'BVLG@~r?k<wޛ×r8 +B83dXpf|#y1|6* Yj|BIό +OQwG)"oGc
zB +c$'|R$A{#<˄4p$? 8p)zd +endstream +endobj +596 0 obj +<< +/Type /Page +/Contents 597 0 R +/Resources 595 0 R +/MediaBox [0 0 612 792] +/Parent 575 0 R +/Annots [ 588 0 R ] +>> +endobj +588 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [178.866 189.65 201.337 200.442] +/Rect [137.594 654.302 160.065 665.095] /A << /S /GoTo /D (subsection.2.4.5) >> >> endobj -473 0 obj +598 0 obj << -/D [471 0 R /XYZ 132.768 705.06 null] +/D [596 0 R /XYZ 132.768 705.06 null] >> endobj -474 0 obj +154 0 obj << -/D [471 0 R /XYZ 292.465 662.328 null] +/D [596 0 R /XYZ 133.768 475.74 null] >> endobj -470 0 obj +595 0 obj << -/Font << /F37 251 0 R /F75 361 0 R /F76 362 0 R /F53 252 0 R /F55 368 0 R /F61 369 0 R /F58 350 0 R >> +/Font << /F37 299 0 R /F53 300 0 R /F58 410 0 R /F64 440 0 R /F61 411 0 R /F57 345 0 R /F67 346 0 R /F55 305 0 R /F108 574 0 R /F109 545 0 R /F43 570 0 R /F46 571 0 R /F110 599 0 R /F49 600 0 R /F59 454 0 R /F62 478 0 R >> /ProcSet [ /PDF /Text ] >> endobj -478 0 obj +604 0 obj << -/Length 2501 +/Length 2675 /Filter /FlateDecode >> stream -xZo_ il59(rAhHb;%V[苹\{i>xwLb[i'WsOpL =XN>DӏygEoe@$,kzqۙi>aZ'ه|_O8s܅ui`tTRKXcԍTd3ǤPp럹ӹy,6i{s!-o.ӹZG1o[HPVNJCJ=GJ$evHӑ2gfc˙nL)IՈq -be:| ,x̌4hyt4Le c$Ha21(1Abn`AΨ01(?Nߨvbف#?$|c~S߆QY;ƥTi2'SҼ
-=%DtuVM+$^כuJc*f4m},,ɉi4d&R01ЄQf1 -,?POlA
pYYA_!cv!B()[뮂M/yQG[Q`2+EMYzfy:g~9w՞GmϣC -?I*oI8J+տP,daF& - &?CM|=O6څ,j
}u,A4#<f[ -v@md\jX'L86 M݆p
fYH!!WaKjY@olg.ҪJʇ۬o;L@Xcq7!'f!Fcaf_eG^ʁ|w -Ft3Ie\t}h;"yw?0'ۂI@E\nVP|m8{Aɗ|7\e>δ;Upp@1M@ѕRO"*_oVuFFO_t7D\J4_/P.EQk}y!ɝs?n 6`l;ٓz6ʛOqUV`N3l9QXAE#f\ym)
+,;#ВXuK܆b> @A,- 9QjջzB%859ϯ#e<Q0}bZ,|[fҸQ3IA-i8
a|ChL#ԗ -,J}3C=4i -B!.%O9sAm{9(a+p;eby,r<3ܪ1<Jԫ1t&=Z xJCMapk#XxXIjHdsgG8Hc$?DHg^4~=$Q<x$cHNr$h^Z֙$ %S c0VYjGs0Y_ހ=sxǡCb% ?Ͻ +xYY~_1Oi/v ";h 0;Cxja.rH.e }WWwU1\ݭOW?\|*ެn+mdXW7(z|yzccl\e?^*Uid"6:Q6IO .gݱF{ȹ$: &QX 5QV
ȞIR7B~$ajE.Dy";{EUQy(f>&A[a1ԁ̼mTxs
ݩnvXjA46k`w!x +ԜOcv:a"mW7QȬwHJpU߭HC2Є^Voi!]{DZX=M[wٶ+{֠H4ȤptwzCI?)+w!/j
ڃ)E.%D0 +nHEa`z|N/+.]}&VMޓZ'.x;*C߂0&6z;3+<F@HdY\p`p6NٕUz"*N.Eɢ pvk
B[i/XmP5~.wq79>)2ls+kͧȁFwǬQ뇼}WhȀuSreUw0/sދ}& $Zm\44Qx%fF#Ƌt-t 3$3
'ĬJboxY܌'ӱJSO +8&HzdBx&܂m%zگzvUή졋>aFyvGrΦ>HKlW3G9L/fJ;S!3ޛ(V0D*Jv_SڜA쀸M({GSDJ]@L~N<blK!zO=O3lj7$aϱ@Cq^ٝf9 hg#!5 +C87r5pL2@vA83;egV +~ADo;?K}K[`j +o,]OCW䲾 hv9`e,8+ q_]Fݡp|?Hl|2hBWq.Y^pA84XJz'+Gq_KF;L8tu'v +0}O55BO +7pkXpq"63DʎB`ۑar5 +'Ssp + endstream endobj -477 0 obj +603 0 obj << /Type /Page -/Contents 478 0 R -/Resources 476 0 R +/Contents 604 0 R +/Resources 602 0 R /MediaBox [0 0 612 792] -/Parent 457 0 R +/Parent 575 0 R +/Annots [ 593 0 R 594 0 R 601 0 R ] >> endobj -479 0 obj +593 0 obj << -/D [477 0 R /XYZ 132.768 705.06 null] +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [240.37 612.002 270.59 622.795] +/A << /S /GoTo /D (subsubsection.2.1.2.2) >> >> endobj -122 0 obj +594 0 obj << -/D [477 0 R /XYZ 133.768 558.471 null] +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [174.615 588.092 181.077 600.029] +/A << /S /GoTo /D (Hfootnote.1) >> >> endobj -476 0 obj +601 0 obj +<< +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [417.489 178.14 439.96 188.933] +/A << /S /GoTo /D (subsection.2.4.6) >> +>> +endobj +605 0 obj +<< +/D [603 0 R /XYZ 132.768 705.06 null] +>> +endobj +158 0 obj +<< +/D [603 0 R /XYZ 133.768 667.198 null] +>> +endobj +162 0 obj +<< +/D [603 0 R /XYZ 133.768 439.766 null] +>> +endobj +608 0 obj +<< +/D [603 0 R /XYZ 149.011 174.947 null] +>> +endobj +602 0 obj << -/Font << /F55 368 0 R /F61 369 0 R /F58 350 0 R /F67 298 0 R /F68 299 0 R /F37 251 0 R /F65 258 0 R /F53 252 0 R /F56 374 0 R /F59 386 0 R /F62 480 0 R >> +/Font << /F57 345 0 R /F37 299 0 R /F61 411 0 R /F53 300 0 R /F68 388 0 R /F58 410 0 R /F64 440 0 R /F59 454 0 R /F67 346 0 R /F55 305 0 R /F54 304 0 R /F150 606 0 R /F128 607 0 R /F148 609 0 R /F149 610 0 R >> /ProcSet [ /PDF /Text ] >> endobj -485 0 obj +617 0 obj << -/Length 3096 +/Length 3309 /Filter /FlateDecode >> stream -xڽZYܸ~_OqO0-()pAvd'Auhnetbu{#1Mby 7/_x'DFݟvB 6Dq U?~@ ?kkewin?T/6;ږ-/_xHoݐۃLľXlȑLp(j"f {(yI eup{2i<ڶ< 5N달b_qc"I(%)^ta1l[ZJ"O}w&ȩe^o4>ϳaO[S2!~PV1RF퇬)b$Q/7͵-.}s,jNwwk;jQ"t6~ZJ!/eE}S=J9EL"8nŻP
%~NV\SRmdY9Xު߹_ڳzjРz6qCBKVCR&S9bj
WSP -2Y ~uTT\~xCwMIql({hIBgQuP*xf$I2afz}j-@eB,м0dBI7D<iPqt<KjBVC&4MU8G -dACt0M6.]q_ml{uwWJ ᄌw8t E4@&[ -dGO&DSse6yTϘl9MpZ
i)F-8on$=I[q}u~ \ -=xd'4_1v8By.fs:&M'%S8qzY˳[@U6Պ;FWjPኅ ڟlhXyWd:g;qF}nw!o177Nq*'oLB -,\Q×g\@m(!).np@S -CYwkw|#dsҐL>Ã^z_>O[.@pf]50FHTAZN@_m@ڰr:`\)p Eu -$0i+!(OK R뻂zxwH&ӨEBge.8l;iVh*Qe -v>#8sĆ>N!olӃ#֞
5Achz"4.+֑s `ted)D\@µ-*9@.\{PVDlqHet 0+.GN]3ETɇ1+S}R[cHf P)O.5ph溋nxZ_c
q^ԘUͪaƛTly6t\e^F@LpwHppG2#W!4},Ƃ@;ңmO0*Z R4m_8,8 -?< -tJ/:1Z./?^0$a 3fZ}l*wMJ/h]s{!;\&>"-zm#5*PXqɷrYp[=ŲFj#xV3#*,a
tT:q!lSL
#U7 -lT0Ȩbq4㼣-p6e$cӜﺓI(u &Z0EtU Cq`<Uj7pu4X/q~<9ڿˆ~ -̀ {?CJ^XJa<$H +xڕZIܸWjERA`2sH:Hq +9<& Ppxu̥=Mn'.2ʉO3Γ0љwJPMSg%ni|ܨ5:E,2 +KQ(q|~ +`"t;0/[*V8K +-JW7h2Һ8K=(-"!K9>%Uޕfǣ'pϜeILND`g,Mu\Y˯o7* +1_ӈhEP33K8 C̃59nF}ŽC|DրD_Ujh"R +L2<a{
q.MM>2(_!ƀm\IѷD!8]_ڕ(hPA̴&o?T>$8ur¡!LL
d ;V8O-xْ
hG?P + qN@|4ڬ& +{
e+MIK@렟ÿoh`cGdp +9H ϠvsERয়qs@Mdڬ7DJ\8Faz/`Dm TZq[[^Z6
aN&7[
Ϟ@RJ NZM W3,K-IIĻ9Q1lV\ +Z-bJwO@iE KNϹ[ +x@}:78 . +(tM|s |^Br[PD, +.W"q3`U^oa?薦Hv 1zYI~UG_)p\Fxɉ! +FRXXl,L+&pзXT{s.
\n]⇪wcٱSYژ)7z ++2Oq
1{ +Bʭ,IyJON6X7
{vBAn2 +WjgQ&Qa@v\;G6Y#7٪K(p&3B@̼J@j%%^n/6K{pxUa"&L2DtNŢ^ +@s endstream endobj -484 0 obj +616 0 obj << /Type /Page -/Contents 485 0 R -/Resources 483 0 R +/Contents 617 0 R +/Resources 615 0 R /MediaBox [0 0 612 792] -/Parent 457 0 R -/Annots [ 475 0 R 481 0 R ] +/Parent 620 0 R +/Annots [ 611 0 R 612 0 R 613 0 R ] >> endobj -475 0 obj +611 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [355.156 612.002 385.376 622.795] -/A << /S /GoTo /D (subsubsection.2.1.2.2) >> +/Rect [173.469 380.323 188.192 392.278] +/A << /S /GoTo /D (table.2.7) >> >> endobj -481 0 obj +612 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [137.594 374.442 160.065 385.235] -/A << /S /GoTo /D (subsection.2.4.6) >> +/Rect [393.151 380.323 423.371 392.278] +/A << /S /GoTo /D (subsubsection.2.4.5.3) >> >> endobj -486 0 obj +613 0 obj << -/D [484 0 R /XYZ 132.768 705.06 null] +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [368.571 284.681 375.545 296.637] +/A << /S /GoTo /D (chapter.1) >> >> endobj -126 0 obj +618 0 obj << -/D [484 0 R /XYZ 133.768 667.198 null] +/D [616 0 R /XYZ 132.768 705.06 null] >> endobj -130 0 obj +619 0 obj << -/D [484 0 R /XYZ 133.768 574.594 null] +/D [616 0 R /XYZ 133.768 669.191 null] >> endobj -134 0 obj +166 0 obj << -/D [484 0 R /XYZ 133.768 356.454 null] +/D [616 0 R /XYZ 133.768 581.374 null] >> endobj -138 0 obj +170 0 obj << -/D [484 0 R /XYZ 133.768 246.273 null] +/D [616 0 R /XYZ 133.768 212.515 null] >> endobj -483 0 obj +615 0 obj << -/Font << /F67 298 0 R /F37 251 0 R /F58 350 0 R /F53 252 0 R /F68 299 0 R /F55 368 0 R /F65 258 0 R /F61 369 0 R /F52 250 0 R /F64 257 0 R >> +/Font << /F52 298 0 R /F37 299 0 R /F53 300 0 R /F68 388 0 R /F57 345 0 R /F67 346 0 R /F55 305 0 R /F150 606 0 R >> /ProcSet [ /PDF /Text ] >> endobj -490 0 obj +624 0 obj << -/Length 2978 +/Length 2603 /Filter /FlateDecode >> stream -xڭZYo8~ϯ[+@];X3ݗZX,%9IJdίʉWwxU잟6W?}٪Ef&T4Ʉj[}6{_?}NTIa - MwmT
u,LxkGzmtuyX-?5oeTWVPmqO
LtN\3Si* -ZK)r6`GXiaN%?=],jU mvj;Ͽy:QoCٕ(Qpz$vQ25f[3\6;S={ؾ'8]{D -^ݷm{?!0RF{BR:l
U5uTt+xݭx/W/DDFak -W`ت(Bِ\bJc0T5-D/L)tLH) --7je{SRaI,@'0baZ"tA~F?Bsޕgwۦ Y{"fqpK#V0KNcsJxU?L<((,<?h'QrKaQοʞc#kWm/+G,d<9mWm,t~ϣhȂ?%ՠ3314;, -xY-*YdD8
"< -l>B(yx` -!pYe);T~Dx)XֺEnFNd6;AaD&:+@dk:BXlLB,9z%G`Nw5E!((dzkۺאsT -d/S" p8|Gr~aPn2ђ4Z'>QV(td1\BhOʚC4!>DmGS4{k\>Ԧk21"M'~cۅ2U2 -=y╃-Q3On8Y@YC4gC{z\uiK?K@u-95
GIuv_j@vaD__85'6|Ox~:dTl<p/A
[%/X"S/2c0=ă7]6@lMlI(e$\aY̓-qvT&İ#H5<ѷ`z -<I3GOfcenc!+.*Z5;0mƺAKs Nָm=]R-}}NQK-2pFvȊlDǕ6w3LoR0`*`|PW7-NI^(*WDr3pũ`(s/$s>X~4t+ivqqUjlP+(J3ETB|8;5SG0f4=یWGo=!.{bw։J"YyNԚnɆ$s͜0U{frg<Lɠ``lbk%?[]fW((lɭp?qУ1Po^&u(zEgBM?,oA~?YK3yOo2J@$<v1H+@3='Y^ŭ7DQa)[Տ"JFBE$d +xڽYo8_͊_{9 +lo@[ȒOEeQ+n/9"=?qtѯ+woke"KT]EHK%6کz,^U\kJkc⏥rR.ˏ}(nAn.J8ʳxw̨ŧחD4q_ݱeS-XLK?m*[<V%)(/0#I@,Jt"fq1(.sѓ_4,U7V.M&\,ɄJdY%ҔtߠL.=z{*xƋ+QUͲ\;rRk.?V=&pQ+uu^yd&ĝg97^Md!NA5
H. w4ZE湭@U$MQǼ1o8=ZR]?>MMwW"N=XGkEk)Ef-?PGJGAPw32HDU,ltKX;z-KP?e}--+G'* +VtD.@TW~N5N
99'O"RiÊyh
ұn k}peIjlH&ggftpc93zKsƸ*wY2l[`d:-<tξjˤ쮡JףQrڇPjAfpqaXEMO +4iY8S` +UdO;G/:(i +>T4JtDm;6l!tByhW>n音$ +}zJ]$T4 xw|J)U%x|Ui]QqF$C w.NS)C@Z!oWyEӧ]S3s1~Λ0T*MUh-&K.=70[9MS x$|$#42HQZ3Kvc" }nĺ`QsP,j7nGNd:7 endstream endobj -489 0 obj +623 0 obj << /Type /Page -/Contents 490 0 R -/Resources 488 0 R +/Contents 624 0 R +/Resources 622 0 R /MediaBox [0 0 612 792] -/Parent 495 0 R -/Annots [ 482 0 R 487 0 R ] +/Parent 620 0 R +/Annots [ 614 0 R ] >> endobj -482 0 obj +614 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [460.986 629.838 475.708 641.793] -/A << /S /GoTo /D (table.2.7) >> +/Rect [285.844 451.781 316.064 462.574] +/A << /S /GoTo /D (subsubsection.2.4.5.3) >> >> endobj -487 0 obj +625 0 obj << -/Type /Annot -/Subtype /Link -/Border[0 0 0]/H/I/C[1 0 0] -/Rect [332.82 343.468 347.543 354.26] -/A << /S /GoTo /D (table.2.7) >> +/D [623 0 R /XYZ 132.768 705.06 null] >> endobj -491 0 obj +621 0 obj << -/D [489 0 R /XYZ 132.768 705.06 null] +/D [623 0 R /XYZ 188.335 662.328 null] >> endobj -492 0 obj +174 0 obj << -/D [489 0 R /XYZ 184.014 283.249 null] +/D [623 0 R /XYZ 133.768 438.837 null] >> endobj -488 0 obj +622 0 obj << -/Font << /F37 251 0 R /F53 252 0 R /F75 361 0 R /F115 493 0 R /F76 362 0 R /F114 494 0 R >> +/Font << /F37 299 0 R /F76 438 0 R /F148 609 0 R /F77 439 0 R /F149 610 0 R /F42 573 0 R /F58 410 0 R /F61 411 0 R /F52 298 0 R /F53 300 0 R /F55 305 0 R >> /ProcSet [ /PDF /Text ] >> endobj -500 0 obj +631 0 obj << -/Length 2901 +/Length 2480 /Filter /FlateDecode >> stream -xn=_ᷕ6w,ؗv!3@5qTs`<5tm]y(<<<zFg^G,vƤ!)3R
]nfW./%IYm
Ӥ8îXϹIv8]y_*ǹ}78ҤiAw%l*:k2@ޔ>m4yEKeiϳ%J OF -2ѽ!^`M8rsdͱ?L CXΎu8h}
\GGvHXUa?$@? -YNJ^uq}@&RI?C{29nɧg(6qr%$QMT:?x`5MMQUtppV3q֫״~?劣袽yoX'<6iiXKq(8fHy1xR
fd`]
j(˂P۩@y8N7,Zsr%p9 -3;Dδ7!<ଢ଼X2Tk}F -Nz+N]c'AP3kؘװ qoccO˸i@ -\D]_TAD"ZQ0ΔFA3־<1W}hoF$:'8299A$FN)|䔚3GNi"FN}.r3J3iGNhkҙS:"=tB(I)d_X#i$8KчV:Ygp -ژo<链UX<7(QY $ xC:aJrϵ,j3\ - .A]ZݕJ2v!wՋ\n9b G9mp?oc]{!gKKOA}Ly-x -s!e}
{s\OjB|I -<hVmJhQYq
Ű6OW@5;|G(0@6$ƕk|Epp/.XIϋѲh*Un7*x5c{<^úb -ʕL֮ٞ) -)[ݧ벪Pv&ؑhXH3cWid:VږSZ4R2 -ʌ\hh< [mY?݉ju-cv\H-W-yGM+ ]Ŗ~^J-L*klt
rDyc|,1dJcշK:Z<!\k_ɧ HS}{a-h< [4o$l
ډ7; 뺧S~ToW9
-d}㛫x$C3&B=z`$}ѠR~cs1WhR<vϒ$>:}m|mg]Ս$
u&78vUO8Kqn2{n*EFQ:V3젼y%TKIx_dYd*njw&&G4cfDZgZݾJdah۹l߆ød>M. -g| [2k x'UJ
6G0)ϩ!&uOI
doR` -Qs,^g9r(ynMRȯ|m7Y@-6KeiņYcT^(]/9`m3 iSȊG>ᡓgMhh F^/`YP [PpA!IgGk%
m ,NdhqjPhS\M$;ȁӵ'>u -+V5ΤѺ6ޫyr"1$&KI -_` /r*i<uS}9JFv(n,NC[SZ?HopӍfrq*J!.sʔtezj%`b]ueKV]&mh/ +xZIo8W6fs_; +֜gqF2""<R"g8[oFʨɯ[g$UWmF)GL +(a"p5`_"CՎ"d !ݚɌ-*|ODƐVb&őF݂Ɍ*[qW5B&kSrjft'", 0`D2bCAy/9do>*) +o.| +.g?}
+lI$@aDѡ@ 7ON1Do& +B_LD|hj ISFB/Ճnoxz)nƪe~T<Eᢶt۳O*Mp8pXTB祂 +(fm}܈-j\R\}_5]>Ebмh#H +ʁ +~ЫR~dzQK;2v.s-Rp\aBEsjhDA2}q?CpyW
=|bpA{CLMapfw~:etuq_Qtlث 7>v(1n#:_B#4S:7\MjD_?#}B9<\%u bnWp34Uq$<uC/0?ѽ:~X=d%a + n?ER>F B>&i`>ueRP268l' +8IixAąUs"ƣf@MB$LR#ؓ)M3aDlx LS&cDhxJ$D`";Ҋ)=xJb% HFx`'@+f8k~{*| 㰭רNw&خcKhNDm-۩D>A@I;jq?ݮrvmDɮ
EhE^٢`hxiw&ط[ʇ?x2 endstream endobj -499 0 obj +630 0 obj << /Type /Page -/Contents 500 0 R -/Resources 498 0 R +/Contents 631 0 R +/Resources 629 0 R /MediaBox [0 0 612 792] -/Parent 495 0 R -/Annots [ 496 0 R 497 0 R ] +/Parent 620 0 R +/Annots [ 626 0 R 627 0 R 628 0 R ] >> endobj -496 0 obj +626 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [150.05 350.901 180.27 361.97] -/A << /S /GoTo /D (subsubsection.2.1.3.6) >> +/Rect [365.812 380.391 380.534 391.184] +/A << /S /GoTo /D (table.2.7) >> >> endobj -497 0 obj +627 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [377.12 350.901 391.843 361.97] +/Rect [148.94 274.441 179.16 285.51] +/A << /S /GoTo /D (subsubsection.2.2.2.2) >> +>> +endobj +628 0 obj +<< +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [148.94 116.319 163.663 127.112] /A << /S /GoTo /D (section.2.3) >> >> endobj -501 0 obj +632 0 obj << -/D [499 0 R /XYZ 132.768 705.06 null] +/D [630 0 R /XYZ 132.768 705.06 null] >> endobj -142 0 obj +178 0 obj << -/D [499 0 R /XYZ 133.768 381.67 null] +/D [630 0 R /XYZ 133.768 554.049 null] >> endobj -498 0 obj +182 0 obj << -/Font << /F37 251 0 R /F53 252 0 R /F58 350 0 R /F65 258 0 R /F55 368 0 R /F61 369 0 R /F67 298 0 R /F68 299 0 R /F119 502 0 R /F62 480 0 R >> +/D [630 0 R /XYZ 133.768 355.872 null] +>> +endobj +629 0 obj +<< +/Font << /F58 410 0 R /F64 440 0 R /F61 411 0 R /F52 298 0 R /F37 299 0 R /F53 300 0 R /F150 606 0 R /F57 345 0 R /F67 346 0 R >> /ProcSet [ /PDF /Text ] >> endobj -505 0 obj +635 0 obj << -/Length 2572 +/Length 2829 /Filter /FlateDecode >> stream -xڭY[o~P)<. -}0PJ9%ho= )~5l[sEH3Ѡ=T»Ԝ@]ZJR*/Dz1{?ahG&ED9%x) -9 Hlj
qR(ߟwvMvk>H^9+@ J$|}r!}k;)eR"ԄzW_6t&~*O!whAA溡|A8:*ڕI -옊盄vRؽ@X1!02Q-![4.oTD'0A~<ށ`|6 U,/Ö_@M خotm+ë%9mX!MB5]$I'm@[02v3ܞ.$%˷a op}K#ák3ב`,)'-k[, v,!21Z -m(MbS1qo71u]&BrmҐl`Gom3tNWn=+ŭ[!HC1]a6|i p9E3ӳ"\O1<)}1){gC[/TƆb^z㈞ZO;<Q}g )^>[w DNRwy[ˋ -)ǃӊV %
T!,H}Ixo"@X8ȼe@]|,=ЅE/n5ŋ2mGq -Nh
(mREzط<"5i)Y%sApe,7Ƕ˛
͎ȇ\4;'QϢۀ$Tw.V%_BcǛæ( -BڏP|l -jofU[|8PԣϨQamtӀ YF3LXLYY/p] -/,c@D +xn]_o\ə nS +ȃ.eZnI-%9ëG˨8Ϲ_,g<|8{Fe\*Bh2!ɘTfq]\&⯯54ǪIb +:¤si|%J62ME]mN3ܤ0AaPäMt͜$eMYǶQevYW{MevT7^ +X dn +-ϒᄌn%Y-6hhJuM](hJ4y{jg%P6,ߖqЭ;I11ST0Q +fLzRi +j<.Zh8j +*ÐG +fEb>ɩYAsR+S'u4xO%\nìd-?l8Q)e| xp7ǣ+۶9 YͦݑV'IH/}-G{<
'Lsl{paI~j;ПM?LDPPyKj89ObBc_o}Lӌ=3Ľq3/X4yiӚ-cG8dNyH4WvToٝbѸM &;Ko;KoFjS$,>i{xbiLin@̵ωMMĚnjDPAsUVH@<īCxiTg">4MyD +FfحQYG``8ZνO=̽qU._DhvWeѴ\90H5N|.<ݻE(CQl6ʄ4wX:P< +;&_W=J($߭~#ySj"R%
ۛ+|;H\ĺ}57}4ب|u!㡆 +}Ӿ-Wʭah&U1%Xȉil-KOI +? v~>+= endstream endobj -504 0 obj +634 0 obj << /Type /Page -/Contents 505 0 R -/Resources 503 0 R +/Contents 635 0 R +/Resources 633 0 R /MediaBox [0 0 612 792] -/Parent 495 0 R +/Parent 620 0 R >> endobj -506 0 obj +636 0 obj << -/D [504 0 R /XYZ 132.768 705.06 null] +/D [634 0 R /XYZ 132.768 705.06 null] >> endobj -146 0 obj +633 0 obj << -/D [504 0 R /XYZ 133.768 224.016 null] +/Font << /F37 299 0 R /F53 300 0 R /F58 410 0 R /F55 305 0 R /F150 606 0 R /F64 440 0 R /F61 411 0 R /F59 454 0 R /F54 304 0 R >> +/ProcSet [ /PDF /Text ] >> endobj -503 0 obj +639 0 obj +<< +/Length 3082 +/Filter /FlateDecode +>> +stream +xڭn]_1y}I;I!lf(X)]+A=U]ռGuX]ѳb^ r{{m$nn7RlcEm6Ow~{ +>Y K'{z -r!2a$Xs2ʽy.ގ,B̄oDŽɜ21I/3c 'z1"J+Ee]v@.9B~q)#35 ySH67HG>ԪkcE}*{Z8jd#lw1¶& dqu>\>o9]+@[ZeO{l,ty\H,>PUfdp?5jΒn$16W]G`ޏTfkEVpYA +<GB8XΔƼ[%Ϛu4?+#RBxMŌ8N@k&3hDEqG@ǤUi9:̲<`Uhݴ^ZCy<z>{Ǫ20G9*zm1|E"^4!JpK7T:ՃgD2O,Bq61,HhL0@btXadά,oYK'db턣pfdR@vSBT=C*|x5&d"bڂdo}& +}|6<9OU3zNnC +&AJ=k&،Hp˧s0gw5&P5ӦΓ +zwbF +S1|TYv~#H?vk9 5y su=z ':c5^pR5{j/3Ǝl)hԴ4JK-\Zǡc-\DFeT+E3fW*7&=3 +?L,g1vF#=f^nRfno뺝J]6Ϥ 8-uR4 o ,,3Z%dx\Y."S>A:t +mpsCӞl;L\vV26Iz +Ki^~qU_ְҷwKnoK]y,)T6RqAY;R.f¾N"UsasS+<ˏ[6PQ:^K#XV0eNv*er$fOu[ ϐ*;;}d<<@nh m՞Ao hRj/(Ia<{\j?Jk+yz~XZWpѺpL\%2c2|Zj[K퇢ZIQP1jLˌM@'"hoB
V;.@hPUԧeU}[c,>u4 +<eAڋ'Y~^Qd"p^qGm<SOsS-vbbjl $<t|bd|/A~by6'=!><h ! @EUx2 +g8Ӌ3oQ=S1F*ҿD7`kOQcg𤳱dז +kϸ]_NvRrR23k 1$t6ƃs;'z[.xyǥr(?4ʡL\hP߮X\AO>0E;
r/}|0>FU@`
?| +endstream +endobj +638 0 obj +<< +/Type /Page +/Contents 639 0 R +/Resources 637 0 R +/MediaBox [0 0 612 792] +/Parent 620 0 R +>> +endobj +640 0 obj +<< +/D [638 0 R /XYZ 132.768 705.06 null] +>> +endobj +186 0 obj +<< +/D [638 0 R /XYZ 133.768 394.632 null] +>> +endobj +637 0 obj << -/Font << /F53 252 0 R /F119 502 0 R /F55 368 0 R /F61 369 0 R /F58 350 0 R /F62 480 0 R /F37 251 0 R /F54 256 0 R /F65 258 0 R /F67 298 0 R /F68 299 0 R >> +/Font << /F58 410 0 R /F64 440 0 R /F61 411 0 R /F37 299 0 R /F55 305 0 R /F57 345 0 R /F67 346 0 R /F53 300 0 R >> /ProcSet [ /PDF /Text ] >> endobj -509 0 obj +643 0 obj << -/Length 2616 +/Length 2483 /Filter /FlateDecode >> stream -xڵ]s۸ݿBrk#$KݙLsw]ӧ$l(RGRIL{w)ٙS3\~B|u⫟.x|sLVoVB)&vIeVow뺺vVҭ탏춈<}[?i;TwTf.ð麭slMe4,鮅`lOyW$UVv[ -b.;O|IP(㉙nO1gExu94@:=
/Վ%̠|=4Gȃb? -2UTB_B%IZ !B~Ek*w!5E-D..pB%%ZxP+W_]2 -ɍɍR],
G&.&àCP:Tr
y¨:l:/$V(W|UKQLG3+|@L!$wKF!b;FK-2@=60%`(HZ2#wBpmBrW8ۓ@Fx{P<y28pzOp2a㉹#Mm!$!) - -QA3zD:a1Q~&N=p" -䟅9HIoGrp|'TH6mI|R -!h.(*X ʸ}mR=PP#Wu} -T|RDf=kmCZ@qcb
^(ݥ.n^_UWuaٕWώU86P_E?!C<]Hy=7UӃ ]ÒӂY
Yp -"nb*FQLhRbo,sX4C0b_cM>^aW1U}CJ.%>%ײ+H3z'
]BdH 6Ĝ g0/s+pյ/&@ "Š$V8uL;$s/o^*vh+-I|K;N]v3֙3nQiOLu&ڵюm -|ǽF{Q'g=lc~&Ҟh[g=Q9i'v6ڣ=J;Kv~f?3Ħx-x?iY2`f(p0R&$൪MKpq!o`>{d}
icK}rr#^ -PNKMTB24tDuvt&@cC:iJ_ -%F%K,Wf(e% -wC1W8ye 13'~5yH B?7+ +xڭ]sܸݿBom?%Zwҷι'3WVړqr7Rkى;@ +>p"Nn +}ῶ4^U0G3zNrfb@KOK?~GLVQ~\n:Z5npP8BE1UB Y`BǞu!kݽaXDRKw +@Bi0#:esvvvE] +~)0o>8KNzcq!vFptnp6тYMʙPPOc)s]y$"a 1hD
%i=8}$`*_&⮈521L4+ʰXԳ!ҧ_&Ie@.2DS{0@ <M#,[/FHË7c(sݟJ=z =$I܈b쳼YiüD>CV[nOxGn-ȻҒ?K良4N>x3n6sm$Z&6 +ȓX0α@h$^O♠ KFvu*Y%뗘]"Ê绬w +dVdz?
0%HlVw+z
f*4=?N@3Hd'E@BH`:
[<ZaҒ,4/Oк*1cT}aZov:qomdݷԮKb/m3ׅZlfj?d i31MlNhon<e +q9ay~x"S(+R(}zLهH,> +L5q+mҖ~th}[2I04J +.;m]5m8yL c8G`~L~lc3䡱[8.%a_r'|KQrff|,ڶ9V;zB'r)$f_廧hA
ǶRP.Fa.ߋȻB8SF*4ϫ0N}-B,UA]f(XT;d$XΧ6Ei@KS&Qu% Ng'Oa8? + +w 4}̛n_3K:U}>Ww +|@#Y$Dc:ڸS/^O endstream endobj -508 0 obj +642 0 obj << /Type /Page -/Contents 509 0 R -/Resources 507 0 R +/Contents 643 0 R +/Resources 641 0 R /MediaBox [0 0 612 792] -/Parent 495 0 R +/Parent 620 0 R >> endobj -510 0 obj +644 0 obj << -/D [508 0 R /XYZ 132.768 705.06 null] +/D [642 0 R /XYZ 132.768 705.06 null] >> endobj -511 0 obj +190 0 obj << -/D [508 0 R /XYZ 133.768 557.618 null] +/D [642 0 R /XYZ 133.768 397.768 null] >> endobj -150 0 obj +194 0 obj << -/D [508 0 R /XYZ 133.768 169.513 null] +/D [642 0 R /XYZ 133.768 331.63 null] >> endobj -507 0 obj +641 0 obj << -/Font << /F37 251 0 R /F53 252 0 R /F55 368 0 R /F58 350 0 R /F52 250 0 R /F65 258 0 R /F61 369 0 R /F68 299 0 R >> +/Font << /F37 299 0 R /F58 410 0 R /F61 411 0 R /F53 300 0 R /F64 440 0 R /F52 298 0 R /F67 346 0 R /F57 345 0 R /F55 305 0 R >> /ProcSet [ /PDF /Text ] >> endobj -516 0 obj +649 0 obj << -/Length 2532 +/Length 2768 /Filter /FlateDecode >> stream -xڵZ[۸~_G3j;`wE_,HR@5c5H ͦ3/"i㹟I(~JՋ(%,(D+) 2]EocF19LƷTb\xɖ6/g/~:JIBzI4p:J3lYx8wr}rO8XfgXk7j5}_HTscϣ%`#^` -h-$X~]D?y6+WO -&]cs[4!BM@A>d˪Svw(#ʝ; ]Fd'Q7cG۬!POnq=Aԓq5 Ĺ{ЯkP-(DI4QU -~TQGvֶ$lҴsoגB^dD|8#D:q
Sէhn@&4$3T"50`q Ub -`N V>Rq pSci1H"thO#l9g>ք%,#9nta)1͡-]ޘ3"x)>,ر;~r`xV] -رC~^@gG9^. -B#F/RvwΩIQާ@K|ꀀ|&PKDĄH.Ya9 ToϕI,XŰNʀg.uR<Vq0z:2XOŜο0% N?m8Eu_b`|Ɋ^,v=>9rMO|G -'fVxmjntmVgjHw@z h5e{Es7wƍ}F]y^WvX"Ƈ-tǢqmUlr
)fnwhBmmVym -G7tƿv=\^+,e4YMTu֞3<^2~z߸6wעo Z"1«0M`<P;< +xYo8_U*~Zhbrp@)6-$')7ádɡbK9zL~=K7třzr0!TVi̅\,'Q3aT)Q,yфs.ҌEU7[ZA2*Z|iǚM-3Q97-K"ڍ5-NRfřg=q/J+b*,MwFb:wqO,z[ܻ=IOE,Hnah'D7m X~Nc~yrz_$z~[XsR4
8^U$u&XP7Bm`cc' +9gS̹iL%V3gD?/HLL*`RR +W@ ;z˛ρϗ3À'ܐH"9z ,86NQRxRRȢCs4h%L2R^p&Ip~/zh0ʁB:P/'EyŇ?c m3d!)&wnfSЌdzPU9ڌ)3Hg"$8;H +3Ig&Te/RK=bz^^*4 Jj $^X#+Սk[2գRqԭR xtb#EkHA#E)V+-%g[J^k +W1'X*ITĄNU6R +o07tWBȷpVK/]7
+|uuR,J@b> .Ƈ{Hй8B2߳6T@|0K8ΤO>j2?ReJ@
UCZyU\77.`:+y:$&6Pd(v$~8tnڐP6a'5 ꦒd`89P`Aݱ
c@\yȥ*5PƦ<yI#b1
dv3씅 P_3v2}Gm
Lj,>:Z8\U
zZʎbiCf!L`.nm[B$"0 ͑ٲڶڄhze,R9?% ʵyiW9TV!qXzÀgs|ؼ)K3ηxW#@M:NvkVܶ^#ePPhkRA"k3}dY,tTτa$;BۚwGBӷ
D0tb9ɇP1;8"15zzcE;tI=n77Z wi1+ z7ħgi.MBauLn^TbsM
@i<ILHvPXdP G<6 +%~` sq
63P`ҙǚqjfp +%YIO/|c.Eñ-/ږy[~muLWyc1NRfS:` 87㭪.,KFFb-Bʄ'5HHл +]`p9|X.ݵ}eQy+FAr$No(!>=>ClzB'VXs*κ~8uY6OU+ep8D`q$_.] <mmLDo4a|mݥv.? +n͟TEc#2}C;_jm^uB2
uuuq<ۿ]~} endstream endobj -515 0 obj +648 0 obj << /Type /Page -/Contents 516 0 R -/Resources 514 0 R +/Contents 649 0 R +/Resources 647 0 R /MediaBox [0 0 612 792] -/Parent 495 0 R -/Annots [ 512 0 R 513 0 R ] +/Parent 651 0 R +/Annots [ 645 0 R 646 0 R ] >> endobj -512 0 obj +645 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [428.502 495.433 443.224 507.388] +/Rect [416.371 554.676 431.094 565.468] /A << /S /GoTo /D (section.2.1) >> >> endobj -513 0 obj +646 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [225.073 153.145 247.544 163.937] -/A << /S /GoTo /D (subsection.2.1.4) >> +/Rect [459.879 241.975 474.601 253.93] +/A << /S /GoTo /D (section.2.1) >> >> endobj -517 0 obj +650 0 obj << -/D [515 0 R /XYZ 132.768 705.06 null] +/D [648 0 R /XYZ 132.768 705.06 null] >> endobj -154 0 obj +198 0 obj << -/D [515 0 R /XYZ 133.768 667.198 null] +/D [648 0 R /XYZ 133.768 412.948 null] >> endobj -158 0 obj +202 0 obj << -/D [515 0 R /XYZ 133.768 574.594 null] +/D [648 0 R /XYZ 133.768 309.181 null] >> endobj -514 0 obj +647 0 obj << -/Font << /F67 298 0 R /F37 251 0 R /F64 257 0 R /F53 252 0 R /F55 368 0 R /F56 374 0 R /F58 350 0 R /F52 250 0 R /F61 369 0 R >> +/Font << /F37 299 0 R /F53 300 0 R /F55 305 0 R /F54 304 0 R /F150 606 0 R /F58 410 0 R /F64 440 0 R /F61 411 0 R /F57 345 0 R /F68 388 0 R /F59 454 0 R /F52 298 0 R >> /ProcSet [ /PDF /Text ] >> endobj -521 0 obj +655 0 obj << -/Length 2175 +/Length 2411 /Filter /FlateDecode >> stream -xڭXݏ
LTK-`w42αs3ssg%)")G*I%я7߿mRʣ}Q%BWч~S>nZJl4;a#nm&b[]tӛ|덄aHTD6"1E;|DL%&zHJRøu3d -46d7~&uC#uM+,Y,9 ->2/ːȤASDfI<lv.Rc`تB#YRmRYФM:>jm5"̑rR] .rRߪoz
Y?&Z5;PtcpW2=@ZDS]5#km,%OuVLҥMZg!J~W.zSE<":0DDxitIk1"mw+RRaƑ;Wף ' -AWxoAp
.097LNsEa0yP%DJ -i<rDWפ(ԿopsԀ>>p&ޝ`jC|p} s]:[/L>-GGI/Cm -xP2%ϊ;BD` Zh.x9d# @wmʶ\ka{PgΕ{Y7spn-iS!pGJw.j`~k{D خidJ>
3I,;<(;utA|;;J2((^ޱ\7 -pn=& -xcxRP\]RM*;3<O%x|l1q -y@^#aX2#&zqE"xLkx] L-RFBIUo:7}C(
ْW1s(=N]ės -b#-r[j//dy5ۅQb:tӱ^uFp6r{_gEo5-~HXA;{,R}}ԟ?ސ1v:Buw;=|^+.{/QKX
^ߩxӅ -ЭILb7 +xڵYK89|Z`$`0=EZRG_U,e=9bcē}_x|yIR+mKRYU.y(7?nx퇷V->%AA2dI(q;c<JݤI~0[K]1GC܊fβT8,DGtzWtb<zɔHtkj4KqOW`-J@,HWP(/P_9.^ +jRILUqDГkכRcnUҥjoz-vv\V/bߌ1Ns%j9kikr͒o\n ä }uK +SJZ$Vf_dJڎgL %%)n
vR֒[~9/m|U/QLQ,~9X};s>`In +`ŷܚe7
kaPW|%,XNϜ?++RA
Q-CA˜qCy6Pcc5a'ϗ<LZ ~.9050iȺ2,uTb:oS]60dљ9KuW[#+=Z^282g`,VEfZU3o@}3ZuܲX
E]U|3E6mDC(2_ɩy{'dA0n|m!å!겠.U磤ˎx}BrASf&CPFyMIo37WL4??ڬ<68I/,WwU?q9dl-xuXO*GTٖ5ins:p&iZaMǨ1k#M5lT`Y]-Qv9VEvvqC:tqA]D1z27,:ze^v]~#7k_J̊`lh!z<EG+MhQŰq)FiY<d@-%o41{sfwjj}Z nsKAzmjN `z`m6ipkQ"5& Ǒ} ʸP+xFf-:kSҾ)At8M1}|J}~&9cMN(OEj{oR)pW.1 +(PИqޔDgD7dFyc$'fS&oͱ -X:ܰ<"$#j<ȁi(XAzkB>+d}S4 +c$C8{*+$*ʖFB),`@Ց`$=ml$+(
FdN;BaԭzbWf]Eo+PPn,cns;Bxw0:F4MWM&aJuipe[a˶+E +ʠPu1Kz=/F?ff}֕1wrz endstream endobj -520 0 obj +654 0 obj << /Type /Page -/Contents 521 0 R -/Resources 519 0 R +/Contents 655 0 R +/Resources 653 0 R /MediaBox [0 0 612 792] -/Parent 495 0 R -/Annots [ 518 0 R ] +/Parent 651 0 R +/Annots [ 652 0 R ] >> endobj -518 0 obj +652 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [150.477 267.971 180.697 278.764] -/A << /S /GoTo /D (subsubsection.2.1.3.8) >> +/Rect [223.314 484.035 253.534 494.828] +/A << /S /GoTo /D (section*.2) >> >> endobj -522 0 obj -<< -/D [520 0 R /XYZ 132.768 705.06 null] ->> -endobj -523 0 obj +656 0 obj << -/D [520 0 R /XYZ 270.505 662.328 null] +/D [654 0 R /XYZ 132.768 705.06 null] >> endobj -162 0 obj +206 0 obj << -/D [520 0 R /XYZ 133.768 488.892 null] +/D [654 0 R /XYZ 133.768 433.6 null] >> endobj -166 0 obj +210 0 obj << -/D [520 0 R /XYZ 133.768 383.392 null] +/D [654 0 R /XYZ 133.768 308.728 null] >> endobj -170 0 obj +214 0 obj << -/D [520 0 R /XYZ 133.768 299.312 null] +/D [654 0 R /XYZ 133.768 226.585 null] >> endobj -519 0 obj +653 0 obj << -/Font << /F37 251 0 R /F75 361 0 R /F76 362 0 R /F67 298 0 R /F53 252 0 R /F65 258 0 R /F52 250 0 R /F58 350 0 R /F55 368 0 R /F56 374 0 R >> +/Font << /F58 410 0 R /F64 440 0 R /F37 299 0 R /F61 411 0 R /F59 454 0 R /F57 345 0 R /F53 300 0 R /F55 305 0 R /F52 298 0 R >> /ProcSet [ /PDF /Text ] >> endobj -527 0 obj +660 0 obj << -/Length 2479 +/Length 2266 /Filter /FlateDecode >> stream -xZK6ϯ!UKe%xItTeS&ski #qdrƃakk}`d*ɒ߯?9M4҂.#q"Dzܤ_&3Nxz7Mso1e>d3'FŖ˼572o|â(GSi6pH49aTbUbmel~`?y ;Y4QɌ3_:t NLiЪ:\v} -ts# -`)6<f* -uG URXACVR:?=ؑ %.Ƒ0NDGކ_j;/25`}j8Z`_+ai.Z -_MԽ\Mp,)}gʢٙK5S -Dۛ7
S,80Bѓ-86pbDII{}$r-gwяD~Fo!3W +8 -=4Æ)~%Э<I''"c-.8-MzߥZ7s}R c&,WOB{QT75tW{HӨQ$_i s;q`;t{7! /pwv6)RcB.%JO\*j⛶[@9
:XRB[,3gm&7fX LRpL3V\Ɗ#8sGv$r,t -J5 ( -G2C#(8"xrΌQ6;'f䧇u~a)Su,>5#z2[m_FQL,7⃓!${pC}*ApW@d>³Ea %i[vimVuJ]wKujd8vN:HF2QUD!
bykYu^E`{-W(M(OsFT3&ݶ}fPC}Q@ o5NLMj -2j'7
0etA] 8BhaGw0Z3fVh3w|oo~<ܾn<]z1jnG*9pd4! pE '# +xZ]o6}ϯVl5-.зyˤXŒcmlّI}/EIIfy2%Q乗\wuO|uq+SAFR\-J"R`
:hFd2cO<>曨,=]En3we"DI1$_..4q@8J) +\Q#Y|]$뵃-.᧿ayd 8CXYD@ +H;:SQh`qݹ!{(@<Q($D +=o<]Dg'HVvY+@Yu(MzO/UV?</JwLmCVU
Z*ԼHSX{sW=nunWRPI[4M +ټ嶢},ð5yY$'vfQ͋OJ+w'Ub#WNREMth&zqVb,/ٔLaX:3he.i_'\< E/]͞fˇÏʒt2n@liFf`\_«ZfyJ j.p`gK'Dbp8NGqU<G:&__OQg)fg)vΏXDʘ!l:%O> +f8F'{wa8 Lpܣ}Q +MYŞu2Z WH +"53JK:~:J":enHT'Ak3p>XhOO-#7M!}9t,qJ̼UXr2\FҔn8SPNYA8⚝e8a"h=xA0D'%,$0[ +;_|` !HۗRVHVx̪ᘠ;LTMPQZ*p'-wIz\ݬVAJ.OACw"H/;@JńkJ";8S[7Lvy3/Ί$o鹑J
zG8oIL:@+iQz PИ endstream endobj -526 0 obj +659 0 obj << /Type /Page -/Contents 527 0 R -/Resources 525 0 R +/Contents 660 0 R +/Resources 658 0 R /MediaBox [0 0 612 792] -/Parent 529 0 R -/Annots [ 524 0 R ] +/Parent 651 0 R >> endobj -524 0 obj +661 0 obj << -/Type /Annot -/Subtype /Link -/Border[0 0 0]/H/I/C[1 0 0] -/Rect [405.035 208.401 427.507 219.194] -/A << /S /GoTo /D (subsection.2.5.2) >> +/D [659 0 R /XYZ 132.768 705.06 null] >> endobj -528 0 obj +539 0 obj << -/D [526 0 R /XYZ 132.768 705.06 null] +/D [659 0 R /XYZ 270.505 662.328 null] >> endobj -174 0 obj +218 0 obj << -/D [526 0 R /XYZ 133.768 321.37 null] +/D [659 0 R /XYZ 133.768 157.558 null] >> endobj -525 0 obj +658 0 obj << -/Font << /F53 252 0 R /F55 368 0 R /F61 369 0 R /F58 350 0 R /F114 494 0 R /F75 361 0 R /F56 374 0 R /F78 417 0 R /F59 386 0 R /F37 251 0 R /F60 418 0 R /F62 480 0 R /F52 250 0 R /F65 258 0 R >> +/Font << /F37 299 0 R /F76 438 0 R /F77 439 0 R /F108 574 0 R /F53 300 0 R /F58 410 0 R /F64 440 0 R /F61 411 0 R /F59 454 0 R /F60 513 0 R /F62 478 0 R /F63 537 0 R /F65 538 0 R /F52 298 0 R >> /ProcSet [ /PDF /Text ] >> endobj -532 0 obj +664 0 obj << -/Length 1980 +/Length 2328 /Filter /FlateDecode >> stream -xZ[oV~#5OPٶ/PLT"J;B)G4-y87sh_8~w}AFR]E1$!1]ϣjv{ӫ7%!-\|}2HDCGRJluqs9|)H}tt`~oJ#@sa(E{bn!IdGW>n4lWBn -#89)98NtNL,^N6<i*&u''EO^vhhJ#昤=jkԀ8>kN5J!^s$6m>߉XNl/!\>MlgQh0eDI_t%9G*~uߧMIv>K>]Id}F)ᓬ|Em`PAU +xZ[o~ϯ[i2l--;*G3Y,C'NH?lp}`*1H*uBCJD +(*5|ikKJ*6moS& 9ճ݃/7%/Fro#@$>7NQ;]#qi߀XaNPp5ϊmsܦu/wEZ؎ɂJ^TLj +h?[9ifkxirlem. +\EET*AO{Hv41c>bL#s +>LOZWy)xx]
ծ&:Ԭ:%"#M|զwEN6W)bBO/%'l{K%ed:Mb.fxj+ڷҢp_ $JXΚ<盇b ;DBu-|92b;YMXr~DEHnmp̭8Sǽ:l},|#eʊk'&pS$m]Ee|DsϮHc)a +='5"8m VI&*,amXş/>I" =< +$'+caQgTh)\omH`U'QaQ(mAcH1Zq
E}
9l/k8AZaNokxKB1p +J_?}V?<1k
p/rO}ӽРܻ1?g +vhlLM-\CP~vp=Gc5#*@@zbʞ*oUhiYVMaYݑoMfUܦ<My3<o4,5/yiGGCl-S[/]&{렚!M\b>Zx^4/fCa+ݣbfzJk:T}k6s/^ +Map TlG7T.LֱtVy<,mlv&=.-,ۭFB]]Ѿ?8Bc'cR)v{=9Yx"#W:c@pHĉ:aX"8t6:NDt0̹&/ +
ll3kc,j9Ѐ=R7j#*lXpE.4g3
>xI,~+
n:ɂK)\&4[b~bHEO5~bhN5&b +e濟:y#n([:xGXE,MWg^37U)Msmނ ++WVJTѵuo-+wmӻ~Ryܪػyʅ~\~-KŁ¡')2Xd^~Rg?I+b@!*zi-Z,qAX:"k%URDlYaB.g C8p~EAW:ÀQFDˌ<YZ@]ֆì*ACx{lEXKto/^/6@Uꋠ/<.E^?K1lH]auhi64)kIFuV.&,KtdHC g+M6ȜX=P)|.L}! endstream endobj -531 0 obj +663 0 obj << /Type /Page -/Contents 532 0 R -/Resources 530 0 R +/Contents 664 0 R +/Resources 662 0 R /MediaBox [0 0 612 792] -/Parent 529 0 R +/Parent 651 0 R +/Annots [ 657 0 R ] >> endobj -533 0 obj +657 0 obj << -/D [531 0 R /XYZ 132.768 705.06 null] +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [376.199 606.481 398.67 617.274] +/A << /S /GoTo /D (subsection.2.5.2) >> >> endobj -178 0 obj +665 0 obj << -/D [531 0 R /XYZ 133.768 546.683 null] +/D [663 0 R /XYZ 132.768 705.06 null] >> endobj -182 0 obj +222 0 obj << -/D [531 0 R /XYZ 133.768 298.701 null] +/D [663 0 R /XYZ 133.768 441.616 null] >> endobj -530 0 obj +226 0 obj << -/Font << /F55 368 0 R /F61 369 0 R /F58 350 0 R /F59 386 0 R /F62 480 0 R /F56 374 0 R /F67 298 0 R /F68 299 0 R /F65 258 0 R /F37 251 0 R /F53 252 0 R /F52 250 0 R >> +/D [663 0 R /XYZ 133.768 159.615 null] +>> +endobj +662 0 obj +<< +/Font << /F37 299 0 R /F58 410 0 R /F61 411 0 R /F55 305 0 R /F64 440 0 R /F53 300 0 R /F62 478 0 R /F65 538 0 R /F59 454 0 R /F57 345 0 R /F67 346 0 R /F52 298 0 R >> /ProcSet [ /PDF /Text ] >> endobj -536 0 obj +668 0 obj << -/Length 2174 +/Length 2237 /Filter /FlateDecode >> stream -xZ[o~У&X/i]6m$@[yvMNsH&X(|9n2痗gJ.3.TgZ
.7U[]V. -cT*+#N)? -UuE!]}ֶa<T#`DXZ]}j6 P>9{syA7XƔ LfZ(w4o2J30r9M$3e<{IcZ`-. cIU!Ov8PaqrqFTY+(}T; -d6yJ|lĪ`Rt!]p326䂶&iē*'F -%T'ak
JOn0
/7XNFꐚX>*|ѷR̓E(D2rOIy(aU/5L*%OV 5Ѐԯཆ@ѿWepgpn~^3|F@t tO?O7/$9tQqDJK㙂46wuiޖmbv[ė;JViR]b㭯09qwqTUJ(4ku5Ux33JlrpkqǞ7ud-)wbO}V1Lj=om+[`
\}Ym]!J"[MNx\2s|j߾jA7@^h.Qh~A-]Wi
kir_/{
ӚC\YC`'ࢦjw<fs`hM1gT`
([Os}x>ӯn`O'+h@:2MS@ -+>BV]S_Vk|Sƈ\MuHD'iimaB8rA(TI՟U3X hTyR6ml]j| -闚_솄c&:QX@}8-y8f`8P䌸1>\Ct ]Ɔtض1=x]#m):y4Ej{w}ܶHYr[1pOs>%z4'(`+-%'$Y%J1HSZZ2¡qddSpɍoqܐ-YCѥI)NU=a0k>ρh N]p%|H=_]m]|Uo?'Ǥtle|8SNLjװ03t"R̼sDhA4[`nlb%W7
06xz1d*]G
:snrȠp{V!D iDK_BXnpJSJH5X.v L }:'huA{1>[ -??zb*uQͨ5 -EUs9L|~:oXm.hd68 $#pw~!ʇr3۹Ӎ!?8
YkLysyH +xY[o~ׯ#7ю~I5` +Q&mr~e[!"?lwo35gM12&k}4nV546+~vua~I7-Z1n.mMku&lMҟVT1||Tĥ:|/MA2$[P +/Xn)O0J+[%#0}m 0yL0{M(0{,lx@# + |@x@|?OW/ +edTb$B6I6 11$/?>X xWp/1TC:8[>%!Ymϡ| ,`FȴS3^4K&N^mR$1O
P@|f>1A
lƧA
3>zC;fMU ^H3؞IY|4y"|7yJ +q=Z;M"Դ0<[3u5p\"jÒwnjWXSC|bk[+!Ҡ6VeZ3Op)C6Tps51$=ښ3Qgy+/N +x>XƢ7C9\1@t +1Z9;q
7U!PhA"{]~ +Qx6ϺF(VM桲aҟ+geQL=S..JX_: endstream endobj -535 0 obj +667 0 obj << /Type /Page -/Contents 536 0 R -/Resources 534 0 R +/Contents 668 0 R +/Resources 666 0 R /MediaBox [0 0 612 792] -/Parent 529 0 R +/Parent 651 0 R >> endobj -537 0 obj +669 0 obj << -/D [535 0 R /XYZ 132.768 705.06 null] +/D [667 0 R /XYZ 132.768 705.06 null] >> endobj -452 0 obj +230 0 obj << -/D [535 0 R /XYZ 133.768 454.154 null] +/D [667 0 R /XYZ 133.768 333.593 null] >> endobj -534 0 obj +666 0 obj << -/Font << /F53 252 0 R /F55 368 0 R /F61 369 0 R /F58 350 0 R /F59 386 0 R /F37 251 0 R /F65 258 0 R /F52 250 0 R /F68 299 0 R /F54 256 0 R >> +/Font << /F53 300 0 R /F37 299 0 R /F58 410 0 R /F64 440 0 R /F61 411 0 R /F62 478 0 R /F55 305 0 R /F54 304 0 R /F52 298 0 R /F67 346 0 R >> /ProcSet [ /PDF /Text ] >> endobj -540 0 obj +672 0 obj << -/Length 1561 +/Length 1905 /Filter /FlateDecode >> stream -xZKs6WV*Q,hǗ4m2C9cTLDz8c vA췠ht#FN."() 2:D{J?,i
wX&t<:;yIF8Q@lPI ^rV'pV'Q"o;=N٩xUUgΕO?=c-rVmq=+M8nPlPpRPj,ѯ'G -ōxuPPlq % --MhSG 0J1 -bMO4!WocG,%:dK,ԽBO61}O10.qjg4`YW[k0|=vɺ:7[A[jڍ\N4.+RSXU1C btUmz-=9aB=wd=mG{PoKo,{tzm;Ǩ{[l>nsDC>߮HPфk{/@
u|k~5k_s9
-շeGm2mLcpZOFiuaF&ΧEY*A\ [
S8fqn[cWU@4CZ^4*f \;VMU:1%E1~i -5.9q6/Rl# ҍN
m*t:Xo\fyOV -D(c~N~O:wO:@|O:\Q;H܅C|RtPx/e-4](Z߅wAoð5jV~|
>k -KrQe^cy˸,<<+Ӫx NKnP["E~r{ɞp1Uu۽Ǯ1[lخw
(Ni
F=5FW'I>O{I体31GpW +xZnF)xq2u.HDTy3CqXen=>h3ٻ#2pIe"DW5%xpsG}!Ȧ<!ZB٘-tU1v1"oA6_O :N$.TVU/aʊrLvSv=?,%0HXQb4FG HdDee:'8[lTQXlTvBwtN/Ձ|>-jaTq8Ɍzeky^- +l,E{qTk%hl+y<+
t:FXtnD}VDԪkY0Ƭ]!H;# )zBZ#ҊӠmZI}PG5׳9*frlw>]QB92Xu;HKA,?h-[NT-i1,qa0yҼv]@ɢ]# +tȥ!%iXH*&$-*q<ϽӦX]90O+{JLL7ViDQO1820<sW.ɐao^cFGpk'u T?|ڜ'抿)?o}MkS8I$IH1}_,BCIXqF.a]|+_.>0`Kxqvu ABʨ\D@G_g@VK % +h J$jx2ina1H +SK9,v?'mɎt\JH{ υ³%Cۉely34EV?r+BtmQp8]-($>GC>-<bPVC(v
qL)"n%N/N'+8<N8P+AdP{
|ҪNJ<Ċ`#i90όsGn-K76Tɦ"/7,Ǡ*@iYUP4ƣw|]$$˼25T,fi8[(S5ΰfZ8%yl?Uc?(ݯAOQ˲郟vm0L#>t`+յU&SЩh'E:1d\aEqaǧhN|k?4`fkDTדW>(4G6Pv0x{ +?&
WYl몢 +l!sߞOw:C][YA~AJx/[ޫFޗ/rRT震>AЈ7!ha4pԪuU_vT#kDٛPF(Zth
+.[VA,`K>e1b7WoM#gh&ICK&{e}O, endstream endobj -539 0 obj +671 0 obj << /Type /Page -/Contents 540 0 R -/Resources 538 0 R +/Contents 672 0 R +/Resources 670 0 R /MediaBox [0 0 612 792] -/Parent 529 0 R +/Parent 651 0 R >> endobj -541 0 obj +673 0 obj << -/D [539 0 R /XYZ 132.768 705.06 null] +/D [671 0 R /XYZ 132.768 705.06 null] >> endobj -186 0 obj +234 0 obj << -/D [539 0 R /XYZ 133.768 247.963 null] +/D [671 0 R /XYZ 133.768 289.536 null] >> endobj -538 0 obj +670 0 obj << -/Font << /F53 252 0 R /F55 368 0 R /F61 369 0 R /F58 350 0 R /F59 386 0 R /F37 251 0 R /F65 258 0 R /F67 298 0 R >> +/Font << /F54 304 0 R /F53 300 0 R /F37 299 0 R /F58 410 0 R /F55 305 0 R /F64 440 0 R /F61 411 0 R /F62 478 0 R /F57 345 0 R >> /ProcSet [ /PDF /Text ] >> endobj -545 0 obj +677 0 obj << -/Length 2814 +/Length 3097 /Filter /FlateDecode >> stream -xZ[o~#Z_C4.Pݺ}I -i2aBЖ1A>l?M2xacf7R}['ь=Z3ImiD3h'.G]S(2=9y<^lyz@tyFǗUymsܗUR%р8jzHfN:)N43.zEϸ="N5ϾXX>PQ` -8R47PQxjM>R -'SUua^`Pa緐@y^w$Im3o/)Yc&'8dz$# - -TPe>MuQAeHҖdOjm9"6S+@:N8fxbm/8Ly>JeDp15_uSSo0qUmV8Bx
߀7mOQFCc{<IT\x/ss@\w_B2cETք X`W㘁o)˛!O - "1 -Oxio -)-g]lEb Og -R^ɪ:O!Ύg)Z2$#TvYQ:ѢXo`e ݅ˠ]05\11lavYnWq%*A?6_.#$ -HGr՛4VENɑyk3c/+plYo@<WzB!ڭC51pq(<z -6Xu 50S;WDn89mwծ4yH
:Hak¹٩#fL3+? -w0 -7Te`p -EiY{Wܩ́-;; -u2?
0O>O)#iN|`ZY!>/雁s*s#GoD>쫅[]CϾ_,Tʝviv2&SߒF`7G`^bw9?"oƿP2niiv4ΠB4~G#3mXE=A% +xr]_G">R$oU\zU0 JX -\LN
eɤ*=a0=Cg3:矯^Tv\ϮV3&14cD3Z^eo~zRBMu +% w8 +UT@@8A@Nns@}7P;}6<=bY%Jj9DĄCIyS|.v[tپ)"9b2d[y]5<]8bjU~S x+NmW8?lr??W*e
\suq.ޟs5,$L.;X/u +V:@qKRǖ$&SnP3ߏɝv^WʀkGѦ\.dv:䋖2;v(.Jy/Ò`eU$B23d>!o9FG5Ub{
g{.Xv./[#KPjYV (j;Hj"{YĊP(*t +.Pu<ܝ^
s:j??ܛ}k!5vBc
ۭ~"?9HS*@m`@6Nx&|Q48bi& +bȳDr3ͽ14[ͮ<;X~4'm7qbL081~S"G)[۠jms\aʫrz
vL,7``.%80"A!ru<Y-@Zuj65^DdW7e>@[EB]lS2A]Ӎ w +HKqpR4Ům~t"E5OiUa") +) / +aOx<^|Eہhy">~U_7^4o3kFiƭ#jtOhPKq0Mj,SeF^KhVE4}dn@K +$/M4#0#4n OJDa3'RzqF̒zw}Q_Y !qػ(G,,|.cW@?3=z][T*P] +-y3v +2nvvf!$U"ͿbO`m*GU˱ᗌ.@u5D鍭p>.*B:we_#<".~'}s(`aÍ njtL
귯)ӉBLDGWlGPBzjq$$j\h/"Q-$ޥ\߶]m<^ʈC,Lt:My}kAfxv7ju\m\a%^ڄVȪZdbGũ`v`PVੜFz0o0\zpض_O';x?"<}1:xev|;e쿷DOOs"Zr~\vu5!ƱmwGwF\aRe\Gk 4X1 endstream endobj -544 0 obj +676 0 obj << /Type /Page -/Contents 545 0 R -/Resources 543 0 R +/Contents 677 0 R +/Resources 675 0 R /MediaBox [0 0 612 792] -/Parent 529 0 R -/Annots [ 542 0 R ] +/Parent 679 0 R +/Annots [ 674 0 R ] >> endobj -542 0 obj +674 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [185.121 439.587 215.341 450.38] -/A << /S /GoTo /D (subsubsection.2.5.1.1) >> +/Rect [151.305 461.543 181.525 472.336] +/A << /S /GoTo /D (table.2.8) >> >> endobj -546 0 obj +678 0 obj << -/D [544 0 R /XYZ 132.768 705.06 null] +/D [676 0 R /XYZ 132.768 705.06 null] >> endobj -190 0 obj +238 0 obj << -/D [544 0 R /XYZ 133.768 472.644 null] +/D [676 0 R /XYZ 133.768 494.6 null] >> endobj -543 0 obj +675 0 obj << -/Font << /F55 368 0 R /F61 369 0 R /F58 350 0 R /F65 258 0 R /F37 251 0 R /F53 252 0 R /F67 298 0 R /F56 374 0 R /F59 386 0 R /F62 480 0 R >> +/Font << /F58 410 0 R /F64 440 0 R /F61 411 0 R /F55 305 0 R /F37 299 0 R /F53 300 0 R /F57 345 0 R /F59 454 0 R /F62 478 0 R /F65 538 0 R >> /ProcSet [ /PDF /Text ] >> endobj -549 0 obj +682 0 obj << -/Length 2109 +/Length 1880 /Filter /FlateDecode >> stream -xڽYKsW(e%$R=l%ڜ6W` rHtdZMTI -1SQg}Os×]AwF|sp~432dfΒ ǴDTL9wk<0L[T"Sӊy)`ѯ~ -o3ES+c5Jxs*(8BB:w -ƋjSVv.H:'@xA<3RZ -zkxÂ#E'Zva/4AH4' -.T[Jx+{CD
OD"bB'F+KVGa
)K!~^>I!f2? d.KuTʩm\,0[`76^Z<^Lz}6_ -$p"8r\ڌBj8t*A -P +xY
VZxk"'yENi&.pRn5Tc%acqXS -1v&/O;_>m%
!E(D9M; V& -e#j3jT`2"
J -^!g+
}!>04p-)nRP -=(},]06 -I3FQR[:ǺmܦN<idA̋ u.q ~]Ԅ$=03aq]D]F{ғ`Ç~hNe"$5}YIT=5>}ɍe)tܤ'PPTxE1&?J"5"Tp%D⊲B$4#1T@e73p^44ܪNC5TWPJ3L}PC54W(1/*R -?03fU,B5g8es
%\@} tLHX~lhyS^ -@
lޢ%R'),$@2tkm^M崸WA5վ9-8ٿvO~A$qk\"Gd}]/g - +xZIs6W(}T=tL{3=8>0$qJI%t&]DQj%/"qp^TfTfی0ԙ +Q&Mv3{3r7E_"?L#8$w{r )jN50|STc3?/* y۶E] } H'$>WG!? 8pIDlI2"X;K%jfOc0Qqz)i &P٠<~ 2ԫ>g +V
͗9ZfTxO~&\A +uߎ% "+,dl&)fyt*Ã5[X32.]Nm Wn~icvu%d
rC蟏aI!ppƒhtXBԋ?/B_UrWήXu+/-
}-¾ta9A) J!*a`o]Pv!*J>"뇴*y|}eHVO&4g=ÐTS2bZe!uK2^f* +#t/҄T J.OqdH(= SOX`'G}KB1D=غ.edLA9Ѯ7Ӌ2HJ5U, |,)Y䒲<!^P$!).)5 +I.>qS +1L "A TČAƭֶ)"MbmSsyAԿyDa2]݄a_TZ& +QhƆ6?$qC0 ( jX"bv8xQ+XkI+F<90 +yxf'$j'J!)y+O8p8"`!/L;?/fbWtMQM"i{&rzEw +r&g!cS%l8qD8sq1]u_s%FB!R
ۜnL_Bz9)LG-T]BJ/h!L3-4_0J-L%`~%#
+\Pw8fO-.(.\"x:PQp4~..幸<X\b~}Jqa#=v0ŐPꢨ|juT?$Th%z>| +5ϲD~5RfDqo%zχOolز_ u8n8|Rhhmծ
b:uS)hr5_b*Rѡ r&W\+H@`KiE+F%>/KƶDzW'lWѹuh"56vA4uKO%WoE_lu]]]~WZ %u\N'DK<
endstream endobj -548 0 obj +681 0 obj << /Type /Page -/Contents 549 0 R -/Resources 547 0 R +/Contents 682 0 R +/Resources 680 0 R /MediaBox [0 0 612 792] -/Parent 529 0 R +/Parent 679 0 R >> endobj -550 0 obj +683 0 obj << -/D [548 0 R /XYZ 132.768 705.06 null] +/D [681 0 R /XYZ 132.768 705.06 null] >> endobj -194 0 obj +242 0 obj << -/D [548 0 R /XYZ 133.768 435.101 null] +/D [681 0 R /XYZ 133.768 473.557 null] >> endobj -547 0 obj +680 0 obj << -/Font << /F37 251 0 R /F55 368 0 R /F58 350 0 R /F62 480 0 R /F65 258 0 R /F53 252 0 R /F61 369 0 R /F67 298 0 R /F68 299 0 R /F78 417 0 R >> +/Font << /F37 299 0 R /F53 300 0 R /F58 410 0 R /F64 440 0 R /F61 411 0 R /F57 345 0 R /F67 346 0 R /F60 513 0 R >> /ProcSet [ /PDF /Text ] >> endobj -554 0 obj +687 0 obj << -/Length 3152 +/Length 3301 /Filter /FlateDecode >> stream -xk۶ -SIi.wg7vwʓ(5EIg7],} -v݂/~<˳g/],e.R"6Ieū.WZhS̕ʛZ-nnO26Enre~Vd˕L"xMW&Ϻl<FvUJ7mw|}gk%KIq781XhQV)sU;+Fy\ikE[sPn WVm?6)qt*})vETDOÛ,itEERDNa
DS5lGm]D?c!=e hPI"*\\;?{aR{NB"5gVy{/ə[r&&dԢ:Pn䂃IoF -iM] -^(u:P;7;R۟3<@4̧-dhc<=;3=8壠6 -Ez#)}{=k#*FzpW5.}{6搣xP3o3`f lD*WEČ'i@g?\=CkF1p}Hb}8{/6.na +xڽk۶%'xL}vӸNi:3I8D^H*>.C'_D +L-9gJv +(EQt1_ +~d- +=(X|uL0-7aIWz-pxvTkxAMG+e*5GhXt_PH[[Ko_>rzrɌᰵr]]]u6;2e}
c\nJR<.WLhY5qfsG5O4I` i)!\dmIu0s4~PhшQ9GNUO[N$N$&Bfw4&w&x-oe)1jF-X +Ê"|Dd.nm想jX`O j?8}ܒ9v&t]ӘП
.Ѿ"۲^8- h[a85:(oWMؖNTL.[VЍmLW}D1<e0$du&x$7fN34I# 7=M{1uȰ\u1ҵ`RveO4h_7,?Jbx n9zcܿȼMP<7qyفv{=Zȣѹ+r= DLS*E6% b
r&d+mӨ ++aw
K4944>=cd,hʒ7Ė*vS#R92<6"e@,dq/ڮޜԜw'SǏ^973uVH=Za*oA>B'˛;{qs[/P/LF\stF@h;7b/0HgC2JpbeX;p(,+k_dp%F)݆X?0cX}v; +&i4Udp1 a#q҅Ϲt'i#ws8s ә8HÆYh@T"@WM +WxTOL(*:xz5(2I`uI?SjTD3
~0r;4tM>%A?%|`)Ň1~S288{LӳJ!:[PDӞ
yV@$o4C!8>= +ieH3*w + eأc/D>YdO3=}ՅO"rÌ:ۖm2Xo`:邹aZo:Z9+|kkB<P~!s!(s}Qu8FjxoQÄe\>|p +0ɹ3Bku~;@_$s +R[! +F +77X19.߃Lm #zrlZj8ݻ6zߓC61po1aBi9 +(k6 +C0:{"9~^]|03ga 6Hk?XG0BK=[R|<yhScar!uZ]WqJMBۗەAwiiRoY5@K}t%/l?Ą3{C=o}wlnZRPd_T{Թ endstream endobj -553 0 obj +686 0 obj << /Type /Page -/Contents 554 0 R -/Resources 552 0 R +/Contents 687 0 R +/Resources 685 0 R /MediaBox [0 0 612 792] -/Parent 561 0 R -/Annots [ 551 0 R ] +/Parent 679 0 R +/Annots [ 684 0 R ] >> endobj -551 0 obj +684 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [249.459 178.844 255.92 191.058] -/A << /S /GoTo /D (Hfootnote.1) >> +/Rect [219.356 252.528 225.818 264.742] +/A << /S /GoTo /D (Hfootnote.2) >> >> endobj -555 0 obj +688 0 obj << -/D [553 0 R /XYZ 132.768 705.06 null] +/D [686 0 R /XYZ 132.768 705.06 null] >> endobj -198 0 obj +246 0 obj << -/D [553 0 R /XYZ 133.768 272.23 null] +/D [686 0 R /XYZ 133.768 343.074 null] >> endobj -558 0 obj +690 0 obj << -/D [553 0 R /XYZ 149.011 138.182 null] +/D [686 0 R /XYZ 149.011 139.524 null] >> endobj -552 0 obj +685 0 obj << -/Font << /F37 251 0 R /F53 252 0 R /F55 368 0 R /F61 369 0 R /F58 350 0 R /F65 258 0 R /F78 417 0 R /F67 298 0 R /F68 299 0 R /F120 556 0 R /F64 257 0 R /F123 557 0 R /F121 559 0 R /F124 560 0 R >> +/Font << /F37 299 0 R /F53 300 0 R /F55 305 0 R /F58 410 0 R /F64 440 0 R /F61 411 0 R /F65 538 0 R /F62 478 0 R /F60 513 0 R /F57 345 0 R /F67 346 0 R /F151 689 0 R /F68 388 0 R /F128 607 0 R /F148 609 0 R /F149 610 0 R >> /ProcSet [ /PDF /Text ] >> endobj -564 0 obj +694 0 obj << -/Length 2980 +/Length 3120 /Filter /FlateDecode >> stream -xڵZY6~_CB9B`%vle=r\DXH)} -aLG͛yT#e|zaSԕ&J"{k)F,֔DN4:zT4Z-ג(5iG1A@;&D_8V٫3AL->+0@όQD^H
a:<$$<[n\N̫t}VMڨ;]3ň++!,6dToE{*u^:@0bG9W%2"u'ELۣ?N^Պ㷟ZnpJ_'t($/'X*x[ߜR[UD*k)@mqAP{/yR6uS:r(̍tx -Ś%698NQn{1a) |n܁uHmffkddk0l-6#B -G"M8#}Pa4+:1pjY|tt0c_d - -RMnSCψz(z(z$
pא~1f ΏwsxOxt8GMO(꣙c K߷n0> +xڥZob/z))K"- +\m!zz_/+<~3pww9ϗg_|']#zǥdwFGLH<Wm ncN5CZ^tM~ +5߿iZAP__<ۿ?3Z3-@/LoҢ52B|um6>x248Kk_4mE(&h-RVlh۽A^4p=Ң}Z8SA>GZHlUE]TCkEӺvS՞>6]=̿Ț+(2uG<W&3t=u~ج\ӫl,dl01`No<c{g]݃8WnNj$/| TfBLwIϴiWya[sI>ts`2FNl PBGv]{$BJa~'l +xJ٨n&˒! >aQ21.~Rn= +| +tt(!sg^֔M'? g\.]8M[˔X2)&]~f?7lM0=qH8]P'L|ZibP+$RB7[_1%AWz( +E8=+ԥÊH:瀩)UΘ@ymoS_:wi_td.<jbsZgyB,U6FS}$ +ۦWC7E02qA"u,<4Gkͯ6nuw.˜C_gp$z{K۾Ȇ2mi<ka]L1p:=&Vwe~b^Fa@%OZV7?O%iu!9(cEziWETc3E# +m0Ox:]'Wd+<sp8qSVXT1u8ՋW%Cp1;/\s.y%
e_AZT#XG*:V%>߬@&@:%G10QG )6Q]htuG#E#$L9`Vzfh-
@˿ku{q=)W~ϓhWĩ1o +%Esf*q^g_Ta5Ȱ,f?
sP/|̶aj[Fyrk0/W +u3S{0{}@U$or{Fk~DAD<!4Wp[>J,%TBod,Sr +edvI +Q=Bjc/f8Bu[zheI!}3jS\Ǘ>,RO :ITJ-X/f*ÑRxMrjDmq.8 +Wbn^g0c4^;}8TdX[G'"\-{v1DdbJ!M{hքL/@YuDO א{KrymKpx/;m}slWRꦸq%LJ]ВbͻY[-6WʘzHaA:6.[4V~K@ZgIn!C/~4#Ba8NX=tw`0Hi;To/lAqsm|(fJŢdžhrbv{U/(× :>.>O~n,owX[4ё&A_ endstream endobj -563 0 obj +693 0 obj << /Type /Page -/Contents 564 0 R -/Resources 562 0 R +/Contents 694 0 R +/Resources 692 0 R /MediaBox [0 0 612 792] -/Parent 561 0 R +/Parent 679 0 R >> endobj -565 0 obj +695 0 obj << -/D [563 0 R /XYZ 132.768 705.06 null] +/D [693 0 R /XYZ 132.768 705.06 null] >> endobj -202 0 obj +250 0 obj << -/D [563 0 R /XYZ 133.768 181.468 null] +/D [693 0 R /XYZ 133.768 325.251 null] >> endobj -562 0 obj +692 0 obj << -/Font << /F61 369 0 R /F37 251 0 R /F53 252 0 R /F58 350 0 R /F65 258 0 R /F64 257 0 R /F55 368 0 R /F56 374 0 R /F52 250 0 R /F68 299 0 R >> +/Font << /F37 299 0 R /F53 300 0 R /F55 305 0 R /F68 388 0 R /F61 411 0 R /F50 696 0 R /F62 478 0 R /F58 410 0 R /F150 606 0 R /F64 440 0 R /F99 499 0 R /F52 298 0 R /F67 346 0 R >> /ProcSet [ /PDF /Text ] >> endobj -570 0 obj +699 0 obj << -/Length 2718 +/Length 2578 /Filter /FlateDecode >> stream -xZmo_ -8ȴEX$u;wfgIQ -'Rr;pF|r3ᓿxOM<VD(ŜM'8&_M.TɦN?oX-өr&Y/r묡QgUK7rU<QVu4\'tJa쁋@Gf̈́ݒuGy350虰f2ye@XN -["-ajE>$7LvTע}t5,xISh|]M[4`hMN.ڂ ҭ&_o;zQw툕(tK([_~2`8#R*1y%?` -Enc01mzݒyܔq˗\(AJ7횖\o:u@xWz:o0 -dYU%:09\5:挆aQ;F42}Hguv9"Y BD0yL<wךooBHz4kdeV}QB:}z!fcH -6aEW=-+m]yMuyU>.\jSmJlG;&t<\ 'b#1U&~E71tiJO7!#A>T8[f՞`(Ґ4F2ՇfYTźȖEQ] -Bx*h&y{~y!2a០+Is3?UX
;FttP;"/rJh'
sE2#fC$cd̽gP]2SK>TKl0@R\XRg3Y2kfn#L=55[^|5xW3ߡ'R}=_hδ.> -?a> -qzA_UKx4 --䟣 -ٟy=ٯ.1:"=]XgU_T :cS.JH뎗 -W~( F&R/Xc}zDj!#0٧ӿ4v+E܆|0"dbX,D)i844ǦB
j?)iQSW:K."~Ӄ8-|Xc#uii@Ymv ->cP#!cjnCWLr
he-bE^ϖg^z'E -HXbi1V_6 +xkoF(67/I⚻P1PF%T\~3;KĹw}p8* +Ap'GO_I$,1'YF[&NiX7iUeǧK(ds*ނd&DE:w00[hVMyVd8l",O8_Gq-Z(FOV@QXeDGr:\3D72q:d4 iɊj +%Y^Et>_]%r&9hIyLF +Wr3u[:Xρu8
>z=JP +kԟjX|(&1*#0pciRfgwyDljP#F$>jPcJc^D{"*8(gX%C18qiAYWLiZpxOxƆF1UHe f0)_)tچeHC&RG*
&)
)>#l1;A\1]?XC*fvQ/EO\&<ثX<-h;U&ԙgY5NH
ˍ_
M
Evn
-~fǶŒ2u,{g+aj^9t
r *i*Wl2SJ&KOX^MZ̳tkf(|_ :MOA1ǟon>MVtX&pBuAv:]BHdmNTzSA +w)[4@Q{S.ZpzI:8RA4Z>(~`67*1Ƅ:6b\:O_-Χ{SmE\~0yIU
-9 +fSMgиJ,Ёpd`2dk""Yޘy?15f}ouBqB.YG!eUU=&{sY*bvdom +6Y]SC8."5ի)
U|o5A)rŮ-u3}Lzw@%
/S^hqcqvD(n>}%qGQ}w睦چ"͈}KH)R߲" +o\H+kZw
|[[ |.R@'&1hPEN.EO}v}#YR^ݺa,bEP<P59Z +Ix$]Fe&vWF +}ڒ;>>¯rEms#9=\Dh֙LZ+Ah+R6u!],:&.<n>⼂9ԗhM#lmxg݊`DBX;fwîܰB=NFv*͗´+$Nb>9e- ZsF +7(;fEE79)@{W[R63Āz=d<>JIqIIE.Iĝ%+fw:%&m!nW.7m_ZPP`b*T7P{/P܃:qrNe)
x^0&pהpqtj0ZgA`JxwϨeіQOXdGw%u~M$h,K#^uƳWG/7TB"ܝo|{4dͷD 0O٣P YG +o;YAtjp}w92=Lli O-˓ endstream endobj -569 0 obj +698 0 obj << /Type /Page -/Contents 570 0 R -/Resources 568 0 R +/Contents 699 0 R +/Resources 697 0 R /MediaBox [0 0 612 792] -/Parent 561 0 R -/Annots [ 566 0 R 567 0 R ] +/Parent 679 0 R +/Annots [ 691 0 R ] >> endobj -566 0 obj -<< -/Type /Annot -/Subtype /Link -/Border[0 0 0]/H/I/C[1 0 0] -/Rect [379.579 511.069 386.041 523.006] -/A << /S /GoTo /D (Hfootnote.2) >> ->> -endobj -567 0 obj +691 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [200.164 499.114 214.887 509.906] +/Rect [162.32 642.347 177.042 653.139] /A << /S /GoTo /D (section.2.2) >> >> endobj -571 0 obj +700 0 obj << -/D [569 0 R /XYZ 132.768 705.06 null] +/D [698 0 R /XYZ 132.768 705.06 null] >> endobj -572 0 obj +701 0 obj << -/D [569 0 R /XYZ 133.768 311.93 null] +/D [698 0 R /XYZ 133.768 467.429 null] >> endobj -574 0 obj +702 0 obj << -/D [569 0 R /XYZ 133.768 226.941 null] +/D [698 0 R /XYZ 133.768 370.795 null] >> endobj -575 0 obj +704 0 obj << -/D [569 0 R /XYZ 149.011 147.646 null] +/D [698 0 R /XYZ 133.768 262.206 null] >> endobj -568 0 obj +697 0 obj << -/Font << /F37 251 0 R /F53 252 0 R /F55 368 0 R /F61 369 0 R /F58 350 0 R /F65 258 0 R /F64 257 0 R /F52 250 0 R /F126 573 0 R /F123 557 0 R /F121 559 0 R /F125 576 0 R >> +/Font << /F37 299 0 R /F53 300 0 R /F58 410 0 R /F64 440 0 R /F61 411 0 R /F52 298 0 R /F55 305 0 R /F152 703 0 R /F68 388 0 R /F65 538 0 R /F59 454 0 R >> /ProcSet [ /PDF /Text ] >> endobj -579 0 obj +707 0 obj << -/Length 1682 +/Length 2014 /Filter /FlateDecode >> stream -xڵX[F~WmRi)v`vVPr̹78]͂/|[=zYbAlaΐgP>[mfzKLY?I+\^r2>/[f觸ǑVqʦ=_ZYN}N-Yi4w-%Y_<a6 &TGIbB@Ԑ\AX? -D1Km~_DV"I0GxPAP(NP;L!a:% E՛qHA"Eq1N)%4!]8Q۪P1" %(f6'9$ zӐ{EҶn[A"?e-a +aU]f$keјfKZTFe -xŎ<)ps楐K[2{dR3ZӠ'i -4P7Pf%c8wGN
^uYcVUdsgq: Nq*< k6MGW|e)S4I}3\P_;s3ڮ?L"*,zڠ -EVF44?*? .㯒 pQ*[J -k/𦆧EYz_5Klvg AVN! -п"5
it*:鴀G˶'1,NzMoPSaT|#3{68FNS hW +xڥXK8W8@rfDR,3Y`6@#ɝ[Ţ$K-'I|z~U,_W/WтLX\\Jz Wŵ'X\s.{{0r-#IۚY\{-b"3ZpoSCJ~o_W#d)Ѷ"r|a:r)7Z6IgOIkU(0gRc6b*{Qw~4My f2sEB| @)VfNb&tUQ$vB +,IV~]2Խt4{G˰VK
vcBXsfx=g*43HYLtw<ձz; 5Ӳ?~aTqGҘ g>ctJo!"܁!ޅ.-[sF/&v3 +?~= xYZ5xoc ݇r~:4Yy>\e*ϓ[07C|c\<itpl
90_ay{|43"w'3* +=k%f:G/;6죏<AZMn>b IusoLL÷ +>\y}%>cu^W_{sFdm91RNYXpҖ1vә<#alءć_ +َ1h54`zu<vRJt=1?5#־HaXdPg4vm}P=3X7%P\7ߑ#~|y +Q۶Ys;n,bq4ڕJhyR endstream endobj -578 0 obj +706 0 obj << /Type /Page -/Contents 579 0 R -/Resources 577 0 R +/Contents 707 0 R +/Resources 705 0 R /MediaBox [0 0 612 792] -/Parent 561 0 R +/Parent 679 0 R >> endobj -580 0 obj +708 0 obj << -/D [578 0 R /XYZ 132.768 705.06 null] +/D [706 0 R /XYZ 132.768 705.06 null] >> endobj -206 0 obj +254 0 obj << -/D [578 0 R /XYZ 133.768 573.646 null] +/D [706 0 R /XYZ 133.768 667.198 null] >> endobj -210 0 obj +258 0 obj << -/D [578 0 R /XYZ 133.768 518.845 null] +/D [706 0 R /XYZ 133.768 619.859 null] >> endobj -577 0 obj +705 0 obj << -/Font << /F53 252 0 R /F55 368 0 R /F61 369 0 R /F58 350 0 R /F62 480 0 R /F56 374 0 R /F37 251 0 R /F67 298 0 R >> +/Font << /F57 345 0 R /F37 299 0 R /F53 300 0 R /F58 410 0 R /F64 440 0 R /F61 411 0 R /F152 703 0 R /F55 305 0 R >> /ProcSet [ /PDF /Text ] >> endobj -583 0 obj +711 0 obj << -/Length 2101 +/Length 2623 /Filter /FlateDecode >> stream -xnFP9P
VVUL&C0=*[I!)/0^(ӝ(H|Q-tr;__^A%6f$J.r9J>2!CV|3+TQe6eֹ&ɜ1bU|xմ._gl,m[}nk|KD+/ޭajjkab.W !o^:HxIx|@@qj,h -0nT*7b͛\J\OBX: xm 3(Ń_7yLXDw'XІma{du]Wo[dk{!zN.u4yҨQ74&ʍ)9|_UHj -upֶ - %MKV -eMY
lӂ}[<][2:c҆ M~IJ@G
ns:< 7Y`VDgM40@`4x
ƻ.7z>k"@SX`{|`ճB~@!7PeclظM;ચ4<, c@G05" rHLP z_/PR!kpAn_d9H/B}r.yuG+9曥Wi!Gʨ&z -5jÊ:|\Hr l!L堎6'iLr9$WDqw -Eyxw7TY ظP=#ۣei}VS`, -X_.>ď
f? +CkCaޟOދ6goGp:d+ -+N~L]lBΒc%|)7淸1q1
x)JR.el1p'a ߎSckƾĢs)EXY>psWv|C03C3EFquKMR+)S,;:1:33FOp&1iNgN;w -&Q'{Nc#
d>|} ux`ZfvUғXʾ_BL3^t!O){CįcPM]F7wZ|;3 +xZo
_GӒC+Z-xٞM%Ec{5fKlCQ䏤h'儇?]D#D(lX&I.e*YBi_S%ҏBYvժjJ{ILfȝ'r9JYUC/OKFʨ\,sUS"N0m=.Vutzw6ݶm
<h I4)AhuUagem[ńruMR ˶aܮvMthܭ0ԘX*zn łM^4i3ҜtIzյU!&Q)a{ڵ1,Mh᷐-ESR-"2NE +_(Miun*6ڮ9jݪ~;ljpm+z~
/6K,pUom@_`^yYta`&hRk[fmj9D`
0І|Ueݖ[RhW-AƸ".4H}'>d_ewbU8.@o֖qGEDSN3h<5"ݮh?\._:.'sνg2c"7_ʁ(Ň* +KAX\ɛ5UY Ik#Vט_^hk=]-q9DjE{UG^@kOꖆʦ*:xM,pkqB1v]M~#{X%D/-ޗl#"-hp{j Rt"K:ɸ8,, ?"s'3,>0'a-dlڻ<pƙ4gL~>kn6<?kvl/μN`Yl$@!Wչ<+~xO6т9H5 0@Zv@?_
Ngn?Oq=Wf2(6O)XMB"AKDa//N~;(\B@uI>|ϓ%AVa{u"r&٭_OI5A&ځ|V
d ^!>%<p*҇?Exa&p#s81pӞ^.1"
˅{BsC0e5o2X+r4" +)98mD@tl~?$A!<|ii_fا8I놀>zPs zt& + +xeJiNsDtfpyDu̙4M̍RR#S Uu?Vt<rg +8k!7N7Sz +#-J`rUbVe|4wHG[pjZÇ2,7Q%dQ5UÂqSƊz~Ky~se?D"QXpAKRIF2Q6`ԋJLJC%:Dp>5BF +UI%y-Y"d%kZ"G J\Qj s+,v#Xg_dTd׃ +
FTGl c<IFoIGD(J2(9rG_)61k\V#&3͜q#Ր ) +e_ ijWiaX=xv endstream endobj -582 0 obj +710 0 obj << /Type /Page -/Contents 583 0 R -/Resources 581 0 R +/Contents 711 0 R +/Resources 709 0 R /MediaBox [0 0 612 792] -/Parent 561 0 R +/Parent 714 0 R >> endobj -584 0 obj +712 0 obj << -/D [582 0 R /XYZ 132.768 705.06 null] +/D [710 0 R /XYZ 132.768 705.06 null] >> endobj -214 0 obj +262 0 obj << -/D [582 0 R /XYZ 133.768 513.836 null] +/D [710 0 R /XYZ 133.768 667.198 null] >> endobj -581 0 obj +266 0 obj << -/Font << /F53 252 0 R /F55 368 0 R /F61 369 0 R /F126 573 0 R /F37 251 0 R /F65 258 0 R /F67 298 0 R /F58 350 0 R >> +/D [710 0 R /XYZ 133.768 197.197 null] +>> +endobj +709 0 obj +<< +/Font << /F57 345 0 R /F37 299 0 R /F53 300 0 R /F55 305 0 R /F58 410 0 R /F64 440 0 R /F61 411 0 R /F153 713 0 R /F68 388 0 R >> /ProcSet [ /PDF /Text ] >> endobj -587 0 obj +717 0 obj << -/Length 2039 +/Length 402 /Filter /FlateDecode >> stream -xYYoH~1c~db -qm_;RƵ"L+EAi[D)בEH<LQV\ iX,Q Otg@KHcPfv.8qgZ:8
<wnD -H͔Y v
Tś?w&Ov8Toy˚^R -twJ- -'`bB8.N qrj!~h8ѩyڪ˅d(i?,tJsAt2hsD`R -pi41IFð(Cu])hk3y.+d!G[aùR+ۼ\/_i^J8NGyvzOrnؤ :ǛbE6^kC5\_&r8a>n-ן}JUklp?|yPfmzuzTm*AI)&S>GeSwqnhDE<*<!Gy;'~r -'9:=HFœ -Z5\ 94+!Ia``uXYͼ.:^p.M!X9L4'B=Y<&8Α؈MDe'Ư9@CʸQ
d1nav94L -JNڈmЈZš].M6Z3Xի*p? % -mJ`][ZDLᏴoX(Kx(@,N9 +x}0y +L!V5H +v}X4n87 fHmd&bh慷ʲzfM.6X9ru-rk[֧c}ֵS)tQ<1-@xs)(3N=Zy;Cm0nLdv:BL]P3ZZ!7! +ZW<R^;\jKjcѢQ>\ae^C8~hCutL5i»Dofz.Dwbj=p endstream endobj -586 0 obj +716 0 obj << /Type /Page -/Contents 587 0 R -/Resources 585 0 R +/Contents 717 0 R +/Resources 715 0 R /MediaBox [0 0 612 792] -/Parent 561 0 R +/Parent 714 0 R >> endobj -588 0 obj -<< -/D [586 0 R /XYZ 132.768 705.06 null] ->> -endobj -218 0 obj +718 0 obj << -/D [586 0 R /XYZ 133.768 264.143 null] +/D [716 0 R /XYZ 132.768 705.06 null] >> endobj -585 0 obj +715 0 obj << -/Font << /F53 252 0 R /F55 368 0 R /F61 369 0 R /F58 350 0 R /F37 251 0 R /F67 298 0 R /F128 589 0 R /F64 257 0 R >> +/Font << /F53 300 0 R /F58 410 0 R /F64 440 0 R /F37 299 0 R >> /ProcSet [ /PDF /Text ] >> endobj -592 0 obj +725 0 obj << -/Length 300 +/Length 1013 /Filter /FlateDecode >> stream -xej1>ER2Ĝ$)tS, -bĩ^tA|&.B.w.ŖL:ϯ`4H+#yFIm,+l_Y1@ʇBf1"CB2Y7z.(m!A~l~] +xڥVɒ6+pRfbRW*l8$,2OT=
dDy ~zy
R'YѸY2SК+&md%ןSu*J`&XÂ%t``tE&C&AHͣ2#Cl2UBr[ +YPXzŜbXeWgi=}iA:ZlSo:U'q+B3(+.f쏵I>:L%@y80ca]fncآC!;)ʐ}Wg˅d0f endstream endobj -591 0 obj +724 0 obj << /Type /Page -/Contents 592 0 R -/Resources 590 0 R +/Contents 725 0 R +/Resources 723 0 R /MediaBox [0 0 612 792] -/Parent 594 0 R +/Parent 714 0 R +/Annots [ 719 0 R 720 0 R 721 0 R 722 0 R ] >> endobj -593 0 obj +719 0 obj << -/D [591 0 R /XYZ 132.768 705.06 null] +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [376.04 405.88 390.762 416.672] +/A << /S /GoTo /D (section.1.1) >> >> endobj -590 0 obj +720 0 obj +<< +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [394.858 405.88 417.329 416.672] +/A << /S /GoTo /D (subsection.2.4.5) >> +>> +endobj +721 0 obj +<< +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [336.321 385.954 366.541 396.803] +/A << /S /GoTo /D (subsubsection.2.5.6.1) >> +>> +endobj +722 0 obj +<< +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [155.305 312.799 177.777 323.591] +/A << /S /GoTo /D (subsection.2.1.1) >> +>> +endobj +726 0 obj +<< +/D [724 0 R /XYZ 132.768 705.06 null] +>> +endobj +270 0 obj << -/Font << /F55 368 0 R /F61 369 0 R /F37 251 0 R >> +/D [724 0 R /XYZ 133.768 667.198 null] +>> +endobj +274 0 obj +<< +/D [724 0 R /XYZ 133.768 488.032 null] +>> +endobj +727 0 obj +<< +/D [724 0 R /XYZ 133.768 439.158 null] +>> +endobj +278 0 obj +<< +/D [724 0 R /XYZ 133.768 371.938 null] +>> +endobj +728 0 obj +<< +/D [724 0 R /XYZ 133.768 346.077 null] +>> +endobj +723 0 obj +<< +/Font << /F57 345 0 R /F67 346 0 R /F53 300 0 R /F52 298 0 R /F54 304 0 R /F37 299 0 R /F76 438 0 R /F77 439 0 R >> /ProcSet [ /PDF /Text ] >> endobj -600 0 obj +733 0 obj << -/Length 1129 +/Length 1507 /Filter /FlateDecode >> stream -xڽWMs6W΄0dʹɭnq4EYHJR.4;^D}x]r@8rq834YYv0d"_M6IT&_bY8IUƜP\mYe0]>OB1DCmFCD -~hЦ^uaUqrn:bc,ifF>ʶ*e,$o)@;v2?l|>.]D˔!nY sj~F!RmHOcb~@ˢ,jPWjSȻhqz8iHsq *⯈%0tL&tLb>D8%Oë;"YdK>/8̅QCbd-RwϘ -lF1`75npd(N C<k+`X]amfXk<7cqԈ
8Ww\Ȁvmnh;I @{O#&je:r[[C!OL$ut0ֻl~g}xXڣ"`M@O]bo5s@)3,橛.Fa1Ќ6f`LVQܩ -q
!R6nLD%N8Gba~/sj2p`7-9XvAxqhUvH2kOrjT9?$HPo;GǗ8*ŊSTg_cΆ+ -XqLXxM<><$OE%˘4r'EIt +xڵXK8ϯ\d=l&Um2L +`/o6
˘E?94z{Ͽooo84҂vaJ*\"Byt[D%UBVYWeҬ'˼K)˳ڵV 8nwmrhͮky֗Oo<qF V*~(iJ;B~aKu{x_"-Dp!) +]"enm"J1s}eLHtlƘ@)HkY+_%D4wȓ]OP"nʬUS85Mٚ} 8U1~iu|k 6}ƻ̢͡Xk0fw
;Le{? C +#f<иۙ7V\BUW;>x Hs_]
E&sXW +=ϥH7v:QXn`\N=,'w2+uΣTh7b[f(
bx(ο{=EOF Eod_200RQC" +!{jYyE +K4ܚQW9f<vlүuRPC?S 7@@}3,1Cֽx~ox"=* endstream endobj -599 0 obj +732 0 obj << /Type /Page -/Contents 600 0 R -/Resources 598 0 R +/Contents 733 0 R +/Resources 731 0 R /MediaBox [0 0 612 792] -/Parent 594 0 R -/Annots [ 595 0 R 596 0 R ] +/Parent 714 0 R +/Annots [ 729 0 R 730 0 R ] >> endobj -595 0 obj +729 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [346.098 395.223 371.641 406.292] -/A << /S /GoTo /D (subsection.2.1.1) >> +/Rect [155.305 635.913 177.777 646.705] +/A << /S /GoTo /D (subsection.2.1.2) >> >> endobj -596 0 obj +730 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [368.376 280.949 393.919 292.018] -/A << /S /GoTo /D (subsection.2.1.2) >> ->> -endobj -601 0 obj -<< -/D [599 0 R /XYZ 132.768 705.06 null] ->> -endobj -222 0 obj -<< -/D [599 0 R /XYZ 133.768 667.198 null] ->> -endobj -226 0 obj -<< -/D [599 0 R /XYZ 133.768 488.032 null] +/Rect [155.305 428.164 177.777 438.957] +/A << /S /GoTo /D (subsection.2.1.3) >> >> endobj -230 0 obj +734 0 obj << -/D [599 0 R /XYZ 133.768 436.7 null] +/D [732 0 R /XYZ 132.768 705.06 null] >> endobj -602 0 obj +735 0 obj << -/D [599 0 R /XYZ 133.768 410.287 null] +/D [732 0 R /XYZ 133.768 669.191 null] >> endobj -603 0 obj +736 0 obj << -/D [599 0 R /XYZ 133.768 296.012 null] +/D [732 0 R /XYZ 133.768 461.442 null] >> endobj -598 0 obj +731 0 obj << -/Font << /F67 298 0 R /F68 299 0 R /F53 252 0 R /F52 250 0 R /F75 361 0 R /F76 362 0 R /F37 251 0 R >> +/Font << /F52 298 0 R /F37 299 0 R /F76 438 0 R /F77 439 0 R >> /ProcSet [ /PDF /Text ] >> endobj -608 0 obj +742 0 obj << -/Length 1420 +/Length 1489 /Filter /FlateDecode >> stream -xXɎF+f -zz_ LA=M"9MJɉZUu- CYWɐV1nwr2HIvG5gaDWY)OnxP"ڕ!nk^}YM)o25vgg"!% -LQ -2,Jt(g5^n}> -&Ncq&&r8bi._tU@pHб[aHioX+OrqrzESa'L іI.SM0.yە]vOP/TJBwY<4bKc4FLu
ֆ? -,
iYLC4YsFO(Pp2wy:m7iUxoyZY'&p27_Xf:]T3:ޭ٫W7ffp2<.6|6p FsvL{ ݢ;-\\P86Y~;0^u=%=/hD -&hXuԄz/T +xڵXMsFW2H%JR٭m P +<Ǻmvu~e +!*Up3lώmʇd3rۄ іYE܅ơG ZK}xEn˸Uk$a(u`) +L,w]&yaR]c*< 'Q/lZmlV)C1nO$amb%.}[}sdwScNm_Ztb>:)f0Ϣg3vQ/hN0HtzOְ.fބD\s⽖HR~5{1k[ȯ}On}gxn[Ce\:Q gg?Ǡ4F +A+;HN*^1|pqCAn
IF DV/U +g:F#BEelyƉDM,˾L@=Vjwu^oTn#6'hD҇4OJnzygvH|TG;:ݕ;n3< ʕ'G3_7D(6yZ]AbmQgEwn"_}0(4d κ3rjeyCҵ@g_n3m^i<LC532 + qD endstream endobj -607 0 obj +741 0 obj << /Type /Page -/Contents 608 0 R -/Resources 606 0 R +/Contents 742 0 R +/Resources 740 0 R /MediaBox [0 0 612 792] -/Parent 594 0 R -/Annots [ 597 0 R 604 0 R 605 0 R ] +/Parent 714 0 R +/Annots [ 737 0 R 738 0 R 739 0 R ] >> endobj -597 0 obj +737 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [306.03 654.127 331.573 665.196] -/A << /S /GoTo /D (subsection.2.1.3) >> +/Rect [155.305 635.913 170.028 646.705] +/A << /S /GoTo /D (section.2.2) >> >> endobj -604 0 obj +738 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [291.351 456.166 307.983 467.235] -/A << /S /GoTo /D (section.2.2) >> +/Rect [155.305 489.933 177.777 500.725] +/A << /S /GoTo /D (subsection.2.2.2) >> >> endobj -605 0 obj +739 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [320.455 341.892 345.998 352.961] -/A << /S /GoTo /D (subsection.2.2.1) >> +/Rect [155.305 318.05 170.028 328.842] +/A << /S /GoTo /D (section.2.5) >> >> endobj -609 0 obj +743 0 obj << -/D [607 0 R /XYZ 132.768 705.06 null] +/D [741 0 R /XYZ 132.768 705.06 null] >> endobj -610 0 obj +744 0 obj << -/D [607 0 R /XYZ 133.768 669.191 null] +/D [741 0 R /XYZ 133.768 669.191 null] >> endobj -612 0 obj +745 0 obj << -/D [607 0 R /XYZ 133.768 471.23 null] +/D [741 0 R /XYZ 133.768 523.21 null] >> endobj -613 0 obj +746 0 obj << -/D [607 0 R /XYZ 133.768 356.955 null] +/D [741 0 R /XYZ 133.768 351.328 null] >> endobj -606 0 obj +740 0 obj << -/Font << /F52 250 0 R /F75 361 0 R /F76 362 0 R /F37 251 0 R /F130 611 0 R >> +/Font << /F52 298 0 R /F37 299 0 R /F76 438 0 R /F77 439 0 R /F108 574 0 R >> /ProcSet [ /PDF /Text ] >> endobj -618 0 obj +751 0 obj << -/Length 1289 +/Length 1175 /Filter /FlateDecode >> stream -xڵWMoFWl/(P
CZ @K+)*$e'.iQ$;m/ܝy3혠[D+ɐV1kD9ZƌKXɫU~lj͕Hb)7"YWum>6,]3ofTߢ30ư>` N=_.fIa -F!<ϳ`#_Hc!/ R8
eDN; ˌIZW\}5` X&qS!6`' A}|<S -R?A0*0esB9KdiM]k#f39, Jd#da,yS*W`1ɕ"kBTqyq㺪ȮÊUPP!<+y -ns(S6<nda8aЌiWvTOx$2˪24~ -.o9/\ -oଫjOrο -?=V&ÆDr}pӎ*z5aB`ka(a7O# -PpW,ۺj߄9qI&0x.wUdۇ -p3)!9]Qv3qus8,_0tEwo\g8ɇ\CMἤXi`&NkqSCu*b^,~yGR?&;ލ. -CΔ:ED +xڥWM6W(ߤZ +/y@Kxpv1]RDZCLc)*O z?? uѓ7"N(V +}ҡ2> +vH8;8g&s|B +nnGkFIRe_g.%X@\',Ä +ʜu:ƓRJq&nqGmHx:Ťi׀Sw2 +K&"K> &#`#YyU&o] +Sǩ]7@EwYz}4&*2PŭqE>Ci@KȒX7HJ^$-my}+SF
\lLQ+n.<cVTiwH_(:RrACE`N%S)33"F=Ў2^#awdԕٞ +aI,B˪)nͨ]ۡoyWPzԥ~0{Naآ'\ph; +@!U0BcϋX +P }MPݤ,$]>18hl.m^wr{Cۜ_uQ)RBe=j7Tn|bA
'^`nFyF\B,ھ,طwjUw`Em
SM|<st;[QS˓ endstream endobj -617 0 obj +750 0 obj << /Type /Page -/Contents 618 0 R -/Resources 616 0 R +/Contents 751 0 R +/Resources 749 0 R /MediaBox [0 0 612 792] -/Parent 594 0 R -/Annots [ 614 0 R 615 0 R ] +/Parent 714 0 R +/Annots [ 747 0 R 748 0 R ] >> endobj -614 0 obj +747 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [273.99 654.127 290.622 665.196] -/A << /S /GoTo /D (section.2.5) >> +/Rect [155.305 635.913 170.028 646.705] +/A << /S /GoTo /D (section.2.4) >> >> endobj -615 0 obj +748 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [274.648 503.987 291.28 515.056] -/A << /S /GoTo /D (section.2.4) >> ->> -endobj -619 0 obj -<< -/D [617 0 R /XYZ 132.768 705.06 null] +/Rect [162.501 370.381 184.972 381.174] +/A << /S /GoTo /D (subsection.2.6.3) >> >> endobj -620 0 obj +752 0 obj << -/D [617 0 R /XYZ 133.768 669.191 null] +/D [750 0 R /XYZ 132.768 705.06 null] >> endobj -621 0 obj +753 0 obj << -/D [617 0 R /XYZ 133.768 519.051 null] +/D [750 0 R /XYZ 133.768 669.191 null] >> endobj -622 0 obj +754 0 obj << -/D [617 0 R /XYZ 133.768 333.045 null] +/D [750 0 R /XYZ 133.768 415.614 null] >> endobj -616 0 obj +749 0 obj << -/Font << /F52 250 0 R /F75 361 0 R /F76 362 0 R /F37 251 0 R /F53 252 0 R /F64 257 0 R >> +/Font << /F52 298 0 R /F37 299 0 R /F76 438 0 R /F77 439 0 R /F54 304 0 R /F53 300 0 R /F68 388 0 R >> /ProcSet [ /PDF /Text ] >> endobj -746 0 obj +874 0 obj << -/Length 1489 +/Length 1513 /Filter /FlateDecode >> stream -xZMo6W7CtblE4=㰑%CE)-K$=m83|qz_nn#!hLwAb/xw[vsK#/I580 - -5ziQ\I둦O(UelFb -_\EAm00~<a߲Nʝ;Vt_]4]m4A -)Ê}ć֧_~X>+k0f~&goa<G"XХmV&>/Kn -~rZ/]O^--c#k8֒9_9y[ +xYKs6WН @lgzNv]`m5< +m̝.8 |:~/8 +V0Z׳ [0/5FUZv-d"-ޗ*- ^5`n}^c3ey%GIjj&.!L"(B䳇$UxMv=*~Xe+@2;9-h(o2U'Xh0%ؼJMoZ95ժiâA7GhZЊw>z36|n,\ړ0D~ аE)ǧǾLRU5UY(U`h*oIu˹SJK2|⡡hʊϤ\XW2n0Ť:$^<N,K09Ӆm逫2SjZNIB-Դ`4Kuv.|ryg,\i +MFƾҊR,+%:gLjJa'+oe[죕LOOBWZ, +BX&r;:rZ6;;\xt>~_x)Dr\(Om +*9xׂO۲X:0g<7
r +"ԚqHlDľC@}>4J;%@cPcQ]\1I#sʜ㐵}
3zOQ>[<ѤK|# endstream endobj -745 0 obj +873 0 obj << /Type /Page -/Contents 746 0 R -/Resources 744 0 R +/Contents 874 0 R +/Resources 872 0 R /MediaBox [0 0 612 792] -/Parent 594 0 R -/Annots [ 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 660 0 R 661 0 R 662 0 R 663 0 R 664 0 R 665 0 R 666 0 R 667 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 695 0 R 696 0 R 697 0 R 698 0 R 699 0 R 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 714 0 R 715 0 R 716 0 R 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 729 0 R 730 0 R 731 0 R 732 0 R 733 0 R 734 0 R 735 0 R 736 0 R 737 0 R ] +/Parent 877 0 R +/Annots [ 755 0 R 756 0 R 757 0 R 758 0 R 759 0 R 760 0 R 761 0 R 762 0 R 763 0 R 764 0 R 765 0 R 766 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 776 0 R 777 0 R 778 0 R 779 0 R 780 0 R 781 0 R 782 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 796 0 R 797 0 R 798 0 R 799 0 R 800 0 R 801 0 R 802 0 R 803 0 R 804 0 R 805 0 R 806 0 R 807 0 R 808 0 R 809 0 R 810 0 R 811 0 R 812 0 R 813 0 R 814 0 R 815 0 R 816 0 R 817 0 R 818 0 R 819 0 R 820 0 R 821 0 R 822 0 R 823 0 R 824 0 R 825 0 R 826 0 R 827 0 R 828 0 R 829 0 R 830 0 R 831 0 R 832 0 R 833 0 R 834 0 R 835 0 R 836 0 R 837 0 R 838 0 R 839 0 R 840 0 R 841 0 R 842 0 R 843 0 R 844 0 R 845 0 R 846 0 R 847 0 R 848 0 R 849 0 R 850 0 R 851 0 R 852 0 R 853 0 R 854 0 R 855 0 R 856 0 R 857 0 R 858 0 R 859 0 R 860 0 R 861 0 R 862 0 R 863 0 R ] >> endobj -623 0 obj +755 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [148.33 525.729 159.538 533.394] -/A << /S /GoTo /D (page.41) >> +/A << /S /GoTo /D (page.49) >> >> endobj -624 0 obj +756 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] /Rect [162.154 525.729 173.361 533.394] -/A << /S /GoTo /D (page.43) >> +/A << /S /GoTo /D (page.51) >> >> endobj -625 0 obj +757 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [195.404 512.777 206.612 522.989] -/A << /S /GoTo /D (page.33) >> +/Rect [195.404 512.726 206.612 522.938] +/A << /S /GoTo /D (page.41) >> >> endobj -626 0 obj +758 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [199.642 502.067 210.85 511.98] +/Rect [199.642 501.965 210.85 511.878] /A << /S /GoTo /D (page.17) >> >> endobj -627 0 obj +759 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [200.111 490.859 211.319 501.071] -/A << /S /GoTo /D (page.12) >> +/Rect [200.111 490.706 206.711 500.918] +/A << /S /GoTo /D (page.6) >> >> endobj -628 0 obj +760 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [209.526 471.183 220.734 481.395] -/A << /S /GoTo /D (page.33) >> +/Rect [210.35 490.706 221.558 500.918] +/A << /S /GoTo /D (page.20) >> >> endobj -629 0 obj +761 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [176.574 460.224 187.782 470.436] -/A << /S /GoTo /D (page.33) >> +/Rect [200.111 469.882 211.319 478.846] +/A << /S /GoTo /D (page.25) >> >> endobj -630 0 obj +762 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [176.574 449.514 183.175 458.924] -/A << /S /GoTo /D (page.4) >> +/Rect [209.526 457.624 220.734 467.836] +/A << /S /GoTo /D (page.41) >> >> endobj -631 0 obj +763 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [186.814 449.514 198.022 458.924] -/A << /S /GoTo /D (page.28) >> +/Rect [176.574 446.614 187.782 456.826] +/A << /S /GoTo /D (page.41) >> >> endobj -632 0 obj +764 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [201.661 449.514 212.869 458.924] -/A << /S /GoTo /D (page.29) >> +/Rect [176.574 435.853 183.175 445.263] +/A << /S /GoTo /D (page.4) >> >> endobj -633 0 obj +765 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [216.508 449.514 227.716 458.924] -/A << /S /GoTo /D (page.33) >> +/Rect [186.814 435.853 193.414 445.263] +/A << /S /GoTo /D (page.5) >> >> endobj -634 0 obj +766 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [167.16 429.589 178.368 439.247] -/A << /S /GoTo /D (page.22) >> +/Rect [197.053 435.853 208.261 445.263] +/A << /S /GoTo /D (page.35) >> >> endobj -635 0 obj +767 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [162.452 420.623 173.66 428.288] -/A << /S /GoTo /D (page.20) >> +/Rect [211.9 435.853 223.108 445.263] +/A << /S /GoTo /D (page.37) >> >> endobj -636 0 obj +768 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [176.276 420.623 187.484 428.288] -/A << /S /GoTo /D (page.22) >> +/Rect [226.748 435.853 237.955 445.263] +/A << /S /GoTo /D (page.41) >> >> endobj -637 0 obj +769 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [171.867 407.671 183.075 417.33] -/A << /S /GoTo /D (page.22) >> +/Rect [167.16 413.532 178.368 423.19] +/A << /S /GoTo /D (page.14) >> >> endobj -638 0 obj +770 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [185.69 407.671 196.898 417.33] -/A << /S /GoTo /D (page.23) >> +/Rect [182.007 413.532 193.215 423.19] +/A << /S /GoTo /D (page.27) >> >> endobj -639 0 obj +771 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [171.867 398.705 183.075 406.371] -/A << /S /GoTo /D (page.23) >> +/Rect [162.452 402.771 173.66 412.181] +/A << /S /GoTo /D (page.24) >> >> endobj -640 0 obj +772 0 obj +<< +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [177.3 402.771 188.507 412.181] +/A << /S /GoTo /D (page.27) >> +>> +endobj +773 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [185.69 398.705 196.898 406.371] +/Rect [167.16 391.761 178.368 401.171] /A << /S /GoTo /D (page.24) >> >> endobj -641 0 obj +774 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [171.867 385.753 183.075 395.412] -/A << /S /GoTo /D (page.20) >> +/Rect [182.007 391.761 193.215 401.171] +/A << /S /GoTo /D (page.30) >> >> endobj -642 0 obj +775 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [185.69 385.753 196.898 395.412] -/A << /S /GoTo /D (page.21) >> +/Rect [171.867 380.502 183.075 390.161] +/A << /S /GoTo /D (page.27) >> >> endobj -643 0 obj +776 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [200.111 365.084 211.319 374.047] +/Rect [185.69 380.502 196.898 390.161] /A << /S /GoTo /D (page.29) >> >> endobj -644 0 obj +777 0 obj +<< +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [230.898 371.485 242.106 379.654] +/A << /S /GoTo /D (page.28) >> +>> +endobj +778 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [204.818 354.125 216.026 363.088] +/Rect [171.867 360.475 183.075 368.141] +/A << /S /GoTo /D (page.23) >> +>> +endobj +779 0 obj +<< +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [167.16 349.465 178.368 357.131] /A << /S /GoTo /D (page.29) >> >> endobj -645 0 obj +780 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [157.745 343.91 168.953 351.576] -/A << /S /GoTo /D (page.18) >> +/Rect [171.867 336.463 183.075 346.121] +/A << /S /GoTo /D (page.26) >> >> endobj -646 0 obj +781 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [171.568 343.91 182.776 351.576] -/A << /S /GoTo /D (page.19) >> +/Rect [204.818 315.691 216.026 324.654] +/A << /S /GoTo /D (page.37) >> >> endobj -647 0 obj +782 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [202.68 332.951 209.28 341.121] -/A << /S /GoTo /D (page.5) >> +/Rect [157.745 305.425 168.953 313.091] +/A << /S /GoTo /D (page.22) >> >> endobj -648 0 obj +783 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [235.2 321.993 246.408 330.162] -/A << /S /GoTo /D (page.18) >> +/Rect [202.68 294.415 209.28 302.585] +/A << /S /GoTo /D (page.5) >> >> endobj -649 0 obj +784 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [239.985 309.29 251.193 319.203] -/A << /S /GoTo /D (page.18) >> +/Rect [235.2 283.406 246.408 291.575] +/A << /S /GoTo /D (page.21) >> >> endobj -650 0 obj +785 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [253.808 309.29 265.016 319.203] -/A << /S /GoTo /D (page.19) >> +/Rect [239.985 270.652 251.193 280.565] +/A << /S /GoTo /D (page.21) >> >> endobj -651 0 obj +786 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [232.402 300.075 243.61 308.244] -/A << /S /GoTo /D (page.19) >> +/Rect [253.808 270.652 265.016 280.565] +/A << /S /GoTo /D (page.22) >> >> endobj -652 0 obj +787 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [246.225 300.075 257.433 308.244] -/A << /S /GoTo /D (page.24) >> +/Rect [191.648 248.632 202.856 258.545] +/A << /S /GoTo /D (page.23) >> >> endobj -653 0 obj +788 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [221.888 289.116 233.096 297.285] -/A << /S /GoTo /D (page.20) >> +/Rect [205.471 248.632 216.679 258.545] +/A << /S /GoTo /D (page.29) >> >> endobj -654 0 obj +789 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [235.711 289.116 246.919 297.285] +/Rect [202.379 239.366 213.587 247.535] /A << /S /GoTo /D (page.24) >> >> endobj -655 0 obj +790 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [186.811 276.164 198.019 285.823] -/A << /S /GoTo /D (page.20) >> +/Rect [216.202 239.366 227.41 247.535] +/A << /S /GoTo /D (page.29) >> >> endobj -656 0 obj +791 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [200.634 276.164 211.842 285.823] -/A << /S /GoTo /D (page.21) >> +/Rect [223.223 226.612 234.431 236.525] +/A << /S /GoTo /D (page.23) >> >> endobj -657 0 obj +792 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [223.223 265.455 234.431 275.367] -/A << /S /GoTo /D (page.19) >> +/Rect [225.94 215.602 232.54 225.515] +/A << /S /GoTo /D (page.7) >> >> endobj -658 0 obj +793 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [240.107 254.496 251.315 264.408] -/A << /S /GoTo /D (page.25) >> +/Rect [236.179 215.602 247.387 225.515] +/A << /S /GoTo /D (page.14) >> >> endobj -659 0 obj +794 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [254.955 254.496 266.163 264.408] +/Rect [251.027 215.602 262.235 225.515] /A << /S /GoTo /D (page.30) >> >> endobj -660 0 obj +795 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [268.778 254.496 279.986 264.408] +/Rect [240.107 204.593 251.315 214.505] /A << /S /GoTo /D (page.31) >> >> endobj -661 0 obj +796 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [162.452 243.288 173.66 252.946] -/A << /S /GoTo /D (page.18) >> +/Rect [254.955 204.593 266.163 214.505] +/A << /S /GoTo /D (page.38) >> >> endobj -662 0 obj +797 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [176.276 243.288 187.484 252.946] -/A << /S /GoTo /D (page.19) >> +/Rect [268.778 204.593 279.986 214.505] +/A << /S /GoTo /D (page.39) >> >> endobj -663 0 obj +798 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [162.452 232.329 173.66 241.987] -/A << /S /GoTo /D (page.18) >> +/Rect [162.452 193.334 173.66 202.992] +/A << /S /GoTo /D (page.22) >> >> endobj -664 0 obj +799 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [176.276 232.329 187.484 241.987] -/A << /S /GoTo /D (page.19) >> +/Rect [176.276 193.334 187.484 202.992] +/A << /S /GoTo /D (page.23) >> >> endobj -665 0 obj +800 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [162.452 221.37 173.66 231.028] -/A << /S /GoTo /D (page.18) >> +/Rect [162.452 182.324 173.66 191.982] +/A << /S /GoTo /D (page.21) >> >> endobj -666 0 obj +801 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [176.276 221.37 187.484 231.028] -/A << /S /GoTo /D (page.19) >> +/Rect [176.276 182.324 187.484 191.982] +/A << /S /GoTo /D (page.22) >> >> endobj -667 0 obj +802 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [171.867 212.403 183.075 220.069] -/A << /S /GoTo /D (page.27) >> +/Rect [189.095 171.563 200.303 181.476] +/A << /S /GoTo /D (page.22) >> >> endobj -668 0 obj +803 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [167.16 199.701 178.368 209.11] -/A << /S /GoTo /D (page.19) >> +/Rect [203.943 171.563 215.15 181.476] +/A << /S /GoTo /D (page.28) >> >> endobj -669 0 obj +804 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [182.007 199.701 193.215 209.11] -/A << /S /GoTo /D (page.25) >> +/Rect [162.452 160.304 173.66 169.962] +/A << /S /GoTo /D (page.21) >> >> endobj -670 0 obj +805 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [195.83 199.701 207.038 209.11] -/A << /S /GoTo /D (page.27) >> +/Rect [176.276 160.304 187.484 169.962] +/A << /S /GoTo /D (page.22) >> >> endobj -671 0 obj +806 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [183.846 188.742 195.054 198.151] -/A << /S /GoTo /D (page.19) >> +/Rect [171.867 151.286 183.075 158.952] +/A << /S /GoTo /D (page.33) >> >> endobj -672 0 obj +807 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [188.553 177.783 199.761 187.193] -/A << /S /GoTo /D (page.19) >> +/Rect [167.16 140.276 178.368 147.942] +/A << /S /GoTo /D (page.31) >> >> endobj -673 0 obj +808 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [203.401 177.783 214.609 187.193] -/A << /S /GoTo /D (page.30) >> +/Rect [180.983 140.276 192.191 147.942] +/A << /S /GoTo /D (page.33) >> >> endobj -674 0 obj +809 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [157.745 168.568 168.953 176.234] -/A << /S /GoTo /D (page.18) >> +/Rect [199.157 127.523 210.365 137.984] +/A << /S /GoTo /D (page.32) >> >> endobj -675 0 obj +810 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [171.568 168.568 182.776 176.234] -/A << /S /GoTo /D (page.19) >> +/Rect [214.004 127.523 225.212 137.984] +/A << /S /GoTo /D (page.36) >> >> endobj -676 0 obj +811 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [201.378 147.148 207.978 157.061] -/A << /S /GoTo /D (page.6) >> +/Rect [157.745 118.257 168.953 125.922] +/A << /S /GoTo /D (page.21) >> >> endobj -677 0 obj +812 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [211.618 147.148 222.826 157.061] -/A << /S /GoTo /D (page.24) >> +/Rect [171.568 118.257 182.776 125.922] +/A << /S /GoTo /D (page.22) >> >> endobj -678 0 obj +813 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [180.723 137.933 191.931 146.102] -/A << /S /GoTo /D (page.40) >> +/Rect [398.83 512.976 410.038 522.889] +/A << /S /GoTo /D (page.14) >> >> endobj -679 0 obj +814 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [194.547 137.933 205.755 146.102] -/A << /S /GoTo /D (page.41) >> +/Rect [383.096 501.967 389.696 511.88] +/A << /S /GoTo /D (page.7) >> >> endobj -680 0 obj +815 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [192.495 118.257 199.095 125.922] -/A << /S /GoTo /D (page.6) >> +/Rect [393.335 501.967 404.543 511.88] +/A << /S /GoTo /D (page.14) >> >> endobj -681 0 obj +816 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [376.833 523.985 388.041 533.394] -/A << /S /GoTo /D (page.43) >> +/Rect [408.182 501.967 419.39 511.88] +/A << /S /GoTo /D (page.30) >> >> endobj -682 0 obj +817 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [327.658 503.861 338.866 513.27] -/A << /S /GoTo /D (page.24) >> +/Rect [355.902 490.709 367.11 500.921] +/A << /S /GoTo /D (page.25) >> >> endobj -683 0 obj +818 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [342.505 503.861 353.713 513.27] -/A << /S /GoTo /D (page.25) >> +/Rect [360.051 481.693 371.259 489.862] +/A << /S /GoTo /D (page.48) >> >> endobj -684 0 obj +819 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [357.352 503.861 368.56 513.27] -/A << /S /GoTo /D (page.31) >> +/Rect [373.874 481.693 385.082 489.862] +/A << /S /GoTo /D (page.49) >> >> endobj -685 0 obj +820 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [337.073 492.902 348.281 502.311] -/A << /S /GoTo /D (page.28) >> +/Rect [371.823 459.639 378.423 467.305] +/A << /S /GoTo /D (page.7) >> >> endobj -686 0 obj +821 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [351.92 492.902 363.128 502.311] +/Rect [376.833 446.887 388.041 456.296] +/A << /S /GoTo /D (page.51) >> +>> +endobj +822 0 obj +<< +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [327.658 424.833 338.866 434.243] /A << /S /GoTo /D (page.30) >> >> endobj -687 0 obj +823 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [381.546 483.686 392.754 491.856] -/A << /S /GoTo /D (page.28) >> +/Rect [342.505 424.833 353.713 434.243] +/A << /S /GoTo /D (page.38) >> >> endobj -688 0 obj +824 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [359.501 470.984 370.709 480.897] -/A << /S /GoTo /D (page.28) >> +/Rect [337.073 413.825 348.281 423.234] +/A << /S /GoTo /D (page.34) >> >> endobj -689 0 obj +825 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [374.348 470.984 385.556 480.897] -/A << /S /GoTo /D (page.29) >> +/Rect [351.92 413.825 363.128 423.234] +/A << /S /GoTo /D (page.38) >> >> endobj -690 0 obj +826 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [429.398 460.025 440.606 469.938] -/A << /S /GoTo /D (page.31) >> +/Rect [366.767 413.825 377.975 423.234] +/A << /S /GoTo /D (page.50) >> >> endobj -691 0 obj +827 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [421.692 439.851 432.9 448.02] -/A << /S /GoTo /D (page.19) >> +/Rect [382.045 391.807 393.253 401.72] +/A << /S /GoTo /D (page.50) >> >> endobj -692 0 obj +828 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [435.515 439.851 446.723 448.02] -/A << /S /GoTo /D (page.24) >> +/Rect [381.546 382.541 392.754 390.711] +/A << /S /GoTo /D (page.35) >> >> endobj -693 0 obj +829 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [388.673 428.892 399.881 437.061] +/Rect [359.501 371.533 370.709 379.702] /A << /S /GoTo /D (page.34) >> >> endobj -694 0 obj +830 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [402.496 428.892 413.704 437.061] -/A << /S /GoTo /D (page.44) >> +/Rect [421.692 349.515 432.9 357.684] +/A << /S /GoTo /D (page.23) >> >> endobj -695 0 obj +831 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [384.871 416.189 396.079 425.599] -/A << /S /GoTo /D (page.31) >> +/Rect [388.673 338.506 399.881 346.675] +/A << /S /GoTo /D (page.42) >> >> endobj -696 0 obj +832 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [398.695 416.189 409.902 425.599] -/A << /S /GoTo /D (page.32) >> +/Rect [402.496 338.506 413.704 346.675] +/A << /S /GoTo /D (page.51) >> >> endobj -697 0 obj +833 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [407.122 406.974 418.33 415.143] -/A << /S /GoTo /D (page.14) >> +/Rect [384.871 325.754 396.079 335.163] +/A << /S /GoTo /D (page.39) >> >> endobj -698 0 obj +834 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [420.945 406.974 432.153 415.143] -/A << /S /GoTo /D (page.15) >> +/Rect [398.695 325.754 409.902 335.163] +/A << /S /GoTo /D (page.40) >> >> endobj -699 0 obj +835 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [404.845 396.015 416.053 404.184] -/A << /S /GoTo /D (page.12) >> +/Rect [409.654 316.488 420.862 324.657] +/A << /S /GoTo /D (page.18) >> >> endobj -700 0 obj +836 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [418.668 396.015 429.876 404.184] -/A << /S /GoTo /D (page.13) >> +/Rect [423.477 316.488 434.685 324.657] +/A << /S /GoTo /D (page.19) >> >> endobj -701 0 obj +837 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [347.224 385.056 358.432 393.225] -/A << /S /GoTo /D (page.28) >> +/Rect [347.224 294.47 358.432 302.64] +/A << /S /GoTo /D (page.35) >> >> endobj -702 0 obj +838 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [361.047 385.056 372.255 393.225] -/A << /S /GoTo /D (page.30) >> +/Rect [361.047 294.47 372.255 302.64] +/A << /S /GoTo /D (page.37) >> >> endobj -703 0 obj +839 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [409.69 372.354 420.898 382.266] -/A << /S /GoTo /D (page.25) >> +/Rect [409.69 281.718 420.898 291.631] +/A << /S /GoTo /D (page.31) >> >> endobj -704 0 obj +840 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [423.513 372.354 434.721 382.266] -/A << /S /GoTo /D (page.28) >> +/Rect [423.513 281.718 434.721 291.631] +/A << /S /GoTo /D (page.35) >> >> endobj -705 0 obj +841 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [388.673 350.436 399.881 360.349] -/A << /S /GoTo /D (page.34) >> +/Rect [388.673 259.7 399.881 269.613] +/A << /S /GoTo /D (page.42) >> >> endobj -706 0 obj +842 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [402.496 350.436 413.704 360.349] -/A << /S /GoTo /D (page.35) >> +/Rect [402.496 259.7 413.704 269.613] +/A << /S /GoTo /D (page.43) >> >> endobj -707 0 obj +843 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [417.343 350.436 428.551 360.349] -/A << /S /GoTo /D (page.39) >> +/Rect [417.343 259.7 428.551 269.613] +/A << /S /GoTo /D (page.47) >> >> endobj -708 0 obj +844 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [404.845 341.22 416.053 349.39] -/A << /S /GoTo /D (page.16) >> +/Rect [404.845 250.435 416.053 258.604] +/A << /S /GoTo /D (page.15) >> >> endobj -709 0 obj +845 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [418.668 341.22 429.876 349.39] -/A << /S /GoTo /D (page.17) >> +/Rect [418.668 250.435 429.876 258.604] +/A << /S /GoTo /D (page.20) >> >> endobj -710 0 obj +846 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [442.171 328.02 453.379 338.979] -/A << /S /GoTo /D (page.39) >> +/Rect [444.731 237.184 455.939 248.143] +/A << /S /GoTo /D (page.47) >> >> endobj -711 0 obj +847 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [420.917 317.559 432.125 327.472] -/A << /S /GoTo /D (page.34) >> +/Rect [420.917 226.674 432.125 236.586] +/A << /S /GoTo /D (page.42) >> >> endobj -712 0 obj +848 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [434.74 317.559 445.948 327.472] -/A << /S /GoTo /D (page.44) >> +/Rect [434.74 226.674 445.948 236.586] +/A << /S /GoTo /D (page.51) >> >> endobj -713 0 obj +849 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [380.979 306.6 392.187 316.513] -/A << /S /GoTo /D (page.34) >> +/Rect [380.979 215.665 392.187 225.577] +/A << /S /GoTo /D (page.42) >> >> endobj -714 0 obj +850 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [394.802 306.6 406.01 316.513] -/A << /S /GoTo /D (page.35) >> +/Rect [394.802 215.665 406.01 225.577] +/A << /S /GoTo /D (page.43) >> >> endobj -715 0 obj +851 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [409.65 306.6 420.858 316.513] -/A << /S /GoTo /D (page.39) >> +/Rect [409.65 215.665 420.858 225.577] +/A << /S /GoTo /D (page.47) >> >> endobj -716 0 obj +852 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [433.525 295.641 444.733 305.554] -/A << /S /GoTo /D (page.41) >> +/Rect [433.525 204.656 444.733 214.569] +/A << /S /GoTo /D (page.49) >> >> endobj -717 0 obj +853 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [447.349 295.641 458.557 305.554] -/A << /S /GoTo /D (page.44) >> +/Rect [447.349 204.656 458.557 214.569] +/A << /S /GoTo /D (page.51) >> >> endobj -718 0 obj +854 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [404.565 284.682 411.165 294.595] -/A << /S /GoTo /D (page.8) >> +/Rect [404.565 193.647 411.165 203.56] +/A << /S /GoTo /D (page.9) >> >> endobj -719 0 obj +855 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [403.315 275.467 414.523 283.636] -/A << /S /GoTo /D (page.35) >> +/Rect [403.315 184.381 414.523 192.551] +/A << /S /GoTo /D (page.43) >> >> endobj -720 0 obj +856 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [417.138 275.467 428.346 283.636] -/A << /S /GoTo /D (page.38) >> +/Rect [417.138 184.381 428.346 192.551] +/A << /S /GoTo /D (page.46) >> >> endobj -721 0 obj +857 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [382.015 262.765 393.223 272.677] -/A << /S /GoTo /D (page.13) >> +/Rect [382.015 171.629 393.223 181.542] +/A << /S /GoTo /D (page.45) >> >> endobj -722 0 obj +858 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [396.862 262.765 408.07 272.677] -/A << /S /GoTo /D (page.37) >> +/Rect [395.838 171.629 407.046 181.542] +/A << /S /GoTo /D (page.47) >> >> endobj -723 0 obj +859 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [410.685 262.765 421.893 272.677] -/A << /S /GoTo /D (page.39) >> +/Rect [355.902 149.576 367.11 158.985] +/A << /S /GoTo /D (page.14) >> >> endobj -724 0 obj +860 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [355.902 220.722 367.11 230.132] -/A << /S /GoTo /D (page.12) >> +/Rect [370.749 149.576 381.957 158.985] +/A << /S /GoTo /D (page.34) >> >> endobj -725 0 obj +861 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [370.749 220.722 381.957 230.132] -/A << /S /GoTo /D (page.28) >> +/Rect [385.596 149.576 396.804 158.985] +/A << /S /GoTo /D (page.50) >> >> endobj -726 0 obj +862 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [388.853 209.514 400.061 219.726] -/A << /S /GoTo /D (page.29) >> +/Rect [388.853 138.318 400.061 148.529] +/A << /S /GoTo /D (page.37) >> >> endobj -727 0 obj +863 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [388.853 189.39 400.061 199.601] -/A << /S /GoTo /D (page.29) >> +/Rect [388.853 116.264 400.061 126.476] +/A << /S /GoTo /D (page.37) >> >> endobj -728 0 obj +875 0 obj +<< +/D [873 0 R /XYZ 132.768 705.06 null] +>> +endobj +282 0 obj +<< +/D [873 0 R /XYZ 133.768 667.198 null] +>> +endobj +872 0 obj +<< +/Font << /F57 345 0 R /F77 439 0 R /F76 438 0 R /F155 876 0 R /F37 299 0 R >> +/ProcSet [ /PDF /Text ] +>> +endobj +1021 0 obj +<< +/Length 1951 +/Filter /FlateDecode +>> +stream +xڽZK6m ŧSIТ-bµ^!zA4^hYe'[837C:rwNZ#ó1.,F]0vgϷV<~"Vr5F@eįV//>16h:~#oB!m~)^!>D +y!ي2LU%pɟ)QZAC#&DPY]qXbf*=t VB5DPE4ZZV*I/iv1I:D\lsC1FȊ TPcXIPa,ECJΐFQVޣCF}} W# uAҬriIS`\]1}
:F, 34L4(f`oWȷ}0_*@0"VP'JW6㻝t|YUt\n̨-GA)w[72yުͫ%uf% QOf=Ǧq?]!=OQ 0aC?y<w.4ͮyynKD-PEU910 +nsM<IH8o/ P"}l//{dH2.P]rEP̟] +"LYʑKbniI6'@HKRuqGRq{M`9/wĻ9Xqmd/aBIm+nCJ{t"XQdKwGD"#aLP[SP=8> <O.d{xA8+H@%)T{)>vrSpYQBx.@^Wަ\M1k8Q T/?t$6㴚)x)h1R"lhP72wA=K?:~(nA^[h4o-
o 8Lj +c|)=ȳd_}ߎ{zr + oi|ܱ"Np*^|j̀YWcI5Q~t~$`n_Şx~v0r +% Rf0
e)ò`˚_NOB`Z<)y5ij5UZ +,BY$W;}{ >l|0W{ k~&$ v+GCD"x:6ww4 +endstream +endobj +1020 0 obj +<< +/Type /Page +/Contents 1021 0 R +/Resources 1019 0 R +/MediaBox [0 0 612 792] +/Parent 877 0 R +/Annots [ 864 0 R 865 0 R 866 0 R 867 0 R 868 0 R 869 0 R 870 0 R 871 0 R 878 0 R 879 0 R 880 0 R 881 0 R 882 0 R 883 0 R 884 0 R 885 0 R 886 0 R 887 0 R 888 0 R 889 0 R 890 0 R 891 0 R 892 0 R 893 0 R 894 0 R 895 0 R 896 0 R 897 0 R 898 0 R 899 0 R 900 0 R 901 0 R 902 0 R 903 0 R 904 0 R 905 0 R 906 0 R 907 0 R 908 0 R 909 0 R 910 0 R 911 0 R 912 0 R 913 0 R 914 0 R 915 0 R 916 0 R 917 0 R 918 0 R 919 0 R 920 0 R 921 0 R 922 0 R 923 0 R 924 0 R 925 0 R 926 0 R 927 0 R 928 0 R 929 0 R 930 0 R 931 0 R 932 0 R 933 0 R 934 0 R 935 0 R 936 0 R 937 0 R 938 0 R 939 0 R 940 0 R 941 0 R 942 0 R 943 0 R 944 0 R 945 0 R 946 0 R 947 0 R 948 0 R 949 0 R 950 0 R 951 0 R 952 0 R 953 0 R 954 0 R 955 0 R 956 0 R 957 0 R 958 0 R 959 0 R 960 0 R 961 0 R 962 0 R 963 0 R 964 0 R 965 0 R 966 0 R 967 0 R 968 0 R 969 0 R 970 0 R 971 0 R 972 0 R 973 0 R 974 0 R 975 0 R 976 0 R 977 0 R 978 0 R 979 0 R 980 0 R 981 0 R 982 0 R 983 0 R 984 0 R 985 0 R 986 0 R 987 0 R 988 0 R 989 0 R 990 0 R 991 0 R 992 0 R 993 0 R 994 0 R 995 0 R 996 0 R 997 0 R 998 0 R 999 0 R 1000 0 R 1001 0 R 1002 0 R 1003 0 R 1004 0 R 1005 0 R 1006 0 R 1007 0 R 1008 0 R 1009 0 R 1010 0 R 1011 0 R 1012 0 R 1013 0 R 1014 0 R 1015 0 R 1016 0 R 1017 0 R 1018 0 R ] +>> +endobj +864 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [332.365 169.514 343.573 178.924] -/A << /S /GoTo /D (page.42) >> +/Rect [153.038 654.496 164.246 663.905] +/A << /S /GoTo /D (page.49) >> >> endobj -729 0 obj +865 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [347.212 169.514 358.42 178.924] -/A << /S /GoTo /D (page.43) >> +/Rect [167.885 654.496 179.093 663.905] +/A << /S /GoTo /D (page.51) >> >> endobj -730 0 obj +866 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [332.365 160.299 343.573 167.965] -/A << /S /GoTo /D (page.42) >> +/Rect [153.038 645.28 164.246 652.946] +/A << /S /GoTo /D (page.49) >> >> endobj -731 0 obj +867 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [402.26 147.597 413.468 157.509] +/Rect [222.933 632.578 234.141 642.491] /A << /S /GoTo /D (page.17) >> >> endobj -732 0 obj +868 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [417.107 147.597 428.315 157.509] -/A << /S /GoTo /D (page.24) >> +/Rect [237.78 632.578 248.988 642.491] +/A << /S /GoTo /D (page.30) >> >> endobj -733 0 obj +869 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [430.931 147.597 442.139 157.509] -/A << /S /GoTo /D (page.25) >> +/Rect [251.603 632.578 262.811 642.491] +/A << /S /GoTo /D (page.31) >> >> endobj -734 0 obj +870 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [445.778 147.597 456.986 157.509] -/A << /S /GoTo /D (page.39) >> +/Rect [266.45 632.578 277.658 642.491] +/A << /S /GoTo /D (page.47) >> >> endobj -735 0 obj +871 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [400.165 138.381 411.373 146.55] -/A << /S /GoTo /D (page.24) >> +/Rect [220.837 623.362 232.045 631.532] +/A << /S /GoTo /D (page.30) >> >> endobj -736 0 obj +878 0 obj +<< +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [200.351 600.946 206.951 610.859] +/A << /S /GoTo /D (page.7) >> +>> +endobj +879 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [379.679 116.513 386.279 126.426] +/Rect [195.404 589.988 202.004 599.95] /A << /S /GoTo /D (page.6) >> >> endobj -737 0 obj +880 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [389.918 116.513 401.126 126.426] -/A << /S /GoTo /D (page.25) >> +/Rect [205.643 589.988 212.243 599.95] +/A << /S /GoTo /D (page.7) >> >> endobj -747 0 obj +881 0 obj << -/D [745 0 R /XYZ 132.768 705.06 null] +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [177.603 579.029 188.811 588.438] +/A << /S /GoTo /D (page.52) >> >> endobj -234 0 obj +882 0 obj << -/D [745 0 R /XYZ 133.768 667.198 null] +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [207.926 567.572 219.134 578.531] +/A << /S /GoTo /D (page.50) >> >> endobj -744 0 obj +883 0 obj << -/Font << /F67 298 0 R /F76 362 0 R /F75 361 0 R /F131 748 0 R /F115 493 0 R /F37 251 0 R >> -/ProcSet [ /PDF /Text ] +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [171.867 557.111 183.075 566.52] +/A << /S /GoTo /D (page.10) >> >> endobj -855 0 obj +884 0 obj << -/Length 1494 -/Filter /FlateDecode +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [186.714 557.111 197.922 566.52] +/A << /S /GoTo /D (page.13) >> >> -stream -xڵZIF8WD)%#M@Fa`_*6Ulۗ2=ӳ-xSf!B]3`¬Ch_YSoHVy7~؈ǀ,jHG=_
*֏={&q#<4xwMh-]2(1.;1V:AL#I8p䠖dᇡTw?aRs!|n]6ߨ5L
Z0C0!Yg~TD%Ҿ# -r($>fd#eCj^ቩ$.yC;#~-[ģuBA3S
xsdӔMYI8b* )Sh>nItbqdUw$&RCùc0|I+Jz -f$Z e(M!ub2fQH -c^cl8z|:\۴{A525~ĒZ aE3"hE+vUcؖSg|. -0"do=日/1SF#㯣Ǘ(W&> -뤋]9613;BQ^p y]31k1:_5hXv[(B$ nVA-"=;؉FGZZ9.Mb^i$<z䚂oqL>o`pҕ6ER_f -endstream endobj -854 0 obj +885 0 obj << -/Type /Page -/Contents 855 0 R -/Resources 853 0 R -/MediaBox [0 0 612 792] -/Parent 594 0 R -/Annots [ 738 0 R 739 0 R 740 0 R 741 0 R 742 0 R 743 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 761 0 R 762 0 R 763 0 R 764 0 R 765 0 R 766 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 776 0 R 777 0 R 778 0 R 779 0 R 780 0 R 781 0 R 782 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 796 0 R 797 0 R 798 0 R 799 0 R 800 0 R 801 0 R 802 0 R 803 0 R 804 0 R 805 0 R 806 0 R 807 0 R 808 0 R 809 0 R 810 0 R 811 0 R 812 0 R 813 0 R 814 0 R 815 0 R 816 0 R 817 0 R 818 0 R 819 0 R 820 0 R 821 0 R 822 0 R 823 0 R 824 0 R 825 0 R 826 0 R 827 0 R 828 0 R 829 0 R 830 0 R 831 0 R 832 0 R 833 0 R 834 0 R 835 0 R 836 0 R 837 0 R 838 0 R 839 0 R 840 0 R 841 0 R 842 0 R 843 0 R 844 0 R 845 0 R 846 0 R 847 0 R 848 0 R 849 0 R 850 0 R 851 0 R 852 0 R ] +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [200.537 557.111 211.745 566.52] +/A << /S /GoTo /D (page.16) >> >> endobj -738 0 obj +886 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [195.404 654.496 202.004 664.458] -/A << /S /GoTo /D (page.5) >> +/Rect [215.384 557.111 226.592 566.52] +/A << /S /GoTo /D (page.34) >> >> endobj -739 0 obj +887 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [205.643 654.496 212.243 664.458] -/A << /S /GoTo /D (page.6) >> +/Rect [209.294 546.152 215.894 556.065] +/A << /S /GoTo /D (page.4) >> >> endobj -740 0 obj +888 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [177.603 643.537 188.811 652.946] -/A << /S /GoTo /D (page.44) >> +/Rect [202.967 525.479 209.567 535.392] +/A << /S /GoTo /D (page.4) >> >> endobj -741 0 obj +889 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [207.926 632.08 219.134 643.039] -/A << /S /GoTo /D (page.42) >> +/Rect [213.206 525.479 224.414 535.392] +/A << /S /GoTo /D (page.35) >> >> endobj -742 0 obj +890 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [234.449 611.407 245.657 621.32] -/A << /S /GoTo /D (page.36) >> +/Rect [228.053 525.479 239.261 535.392] +/A << /S /GoTo /D (page.51) >> >> endobj -743 0 obj +891 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [248.272 611.407 259.48 621.32] -/A << /S /GoTo /D (page.38) >> +/Rect [234.449 514.521 245.657 524.433] +/A << /S /GoTo /D (page.44) >> >> endobj -749 0 obj +892 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [215.275 600.448 221.875 610.361] -/A << /S /GoTo /D (page.8) >> +/Rect [248.272 514.521 259.48 524.433] +/A << /S /GoTo /D (page.46) >> >> endobj -750 0 obj +893 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [148.33 579.775 159.538 588.687] -/A << /S /GoTo /D (page.41) >> +/Rect [215.275 503.562 221.875 513.474] +/A << /S /GoTo /D (page.9) >> >> endobj -751 0 obj +894 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [162.154 579.775 173.361 588.687] -/A << /S /GoTo /D (page.43) >> +/Rect [148.33 483.386 159.538 492.298] +/A << /S /GoTo /D (page.49) >> >> endobj -752 0 obj +895 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [167.16 557.858 178.368 567.516] +/Rect [162.154 483.386 173.361 492.298] +/A << /S /GoTo /D (page.51) >> +>> +endobj +896 0 obj +<< +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [153.038 472.427 164.246 481.339] +/A << /S /GoTo /D (page.51) >> +>> +endobj +897 0 obj +<< +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [167.16 451.009 178.368 460.667] /A << /S /GoTo /D (page.13) >> >> endobj -753 0 obj +898 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [162.452 548.892 173.66 556.557] -/A << /S /GoTo /D (page.31) >> +/Rect [182.007 451.009 193.215 460.667] +/A << /S /GoTo /D (page.17) >> >> endobj -754 0 obj +899 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [176.276 548.892 187.484 556.557] -/A << /S /GoTo /D (page.32) >> +/Rect [162.452 442.042 173.66 449.708] +/A << /S /GoTo /D (page.39) >> >> endobj -755 0 obj +900 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [176.574 535.94 187.782 545.599] -/A << /S /GoTo /D (page.32) >> +/Rect [176.276 442.042 187.484 449.708] +/A << /S /GoTo /D (page.40) >> >> endobj -756 0 obj +901 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [162.452 526.974 173.66 534.64] -/A << /S /GoTo /D (page.10) >> +/Rect [176.574 429.091 187.782 438.749] +/A << /S /GoTo /D (page.40) >> >> endobj -757 0 obj +902 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [176.276 526.974 187.484 534.64] +/Rect [162.452 420.125 173.66 427.79] /A << /S /GoTo /D (page.12) >> >> endobj -758 0 obj +903 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [162.452 514.271 173.66 523.681] -/A << /S /GoTo /D (page.10) >> +/Rect [176.276 420.125 187.484 427.79] +/A << /S /GoTo /D (page.20) >> >> endobj -759 0 obj +904 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [177.3 514.271 188.507 523.681] +/Rect [167.16 409.166 178.368 416.831] +/A << /S /GoTo /D (page.14) >> +>> +endobj +905 0 obj +<< +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [162.452 396.463 173.66 405.872] /A << /S /GoTo /D (page.12) >> >> endobj -760 0 obj +906 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [162.452 503.313 173.66 512.722] +/Rect [177.3 396.463 188.507 405.872] +/A << /S /GoTo /D (page.14) >> +>> +endobj +907 0 obj +<< +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [162.452 387.248 173.66 394.914] +/A << /S /GoTo /D (page.18) >> +>> +endobj +908 0 obj +<< +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [162.452 376.289 173.66 383.955] +/A << /S /GoTo /D (page.12) >> +>> +endobj +909 0 obj +<< +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [176.276 376.289 187.484 383.955] /A << /S /GoTo /D (page.13) >> >> endobj -761 0 obj +910 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [177.3 503.313 188.507 512.722] -/A << /S /GoTo /D (page.14) >> +/Rect [167.16 365.33 178.368 372.996] +/A << /S /GoTo /D (page.38) >> >> endobj -762 0 obj +911 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [162.452 494.097 169.053 501.763] -/A << /S /GoTo /D (page.9) >> +/Rect [162.452 352.628 173.66 362.037] +/A << /S /GoTo /D (page.19) >> >> endobj -763 0 obj +912 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [171.668 494.097 182.876 501.763] -/A << /S /GoTo /D (page.10) >> +/Rect [177.3 352.628 188.507 362.037] +/A << /S /GoTo /D (page.21) >> >> endobj -764 0 obj +913 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [167.16 483.138 178.368 490.804] -/A << /S /GoTo /D (page.30) >> +/Rect [192.147 352.628 203.355 362.037] +/A << /S /GoTo /D (page.25) >> >> endobj -765 0 obj +914 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [180.983 483.138 192.191 490.804] -/A << /S /GoTo /D (page.31) >> +/Rect [171.867 341.42 183.075 351.078] +/A << /S /GoTo /D (page.19) >> >> endobj -766 0 obj +915 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [162.452 472.179 173.66 479.845] -/A << /S /GoTo /D (page.14) >> +/Rect [174.427 330.461 185.635 340.623] +/A << /S /GoTo /D (page.38) >> >> endobj -767 0 obj +916 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [176.276 472.179 187.484 479.845] -/A << /S /GoTo /D (page.18) >> +/Rect [167.16 321.494 178.368 329.16] +/A << /S /GoTo /D (page.20) >> >> endobj -768 0 obj +917 0 obj +<< +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [162.452 308.792 173.66 318.201] +/A << /S /GoTo /D (page.20) >> +>> +endobj +918 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [176.574 459.228 187.782 468.886] +/Rect [177.3 308.792 188.507 318.201] /A << /S /GoTo /D (page.30) >> >> endobj -769 0 obj +919 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [190.398 459.228 201.606 468.886] -/A << /S /GoTo /D (page.31) >> +/Rect [162.452 299.577 173.66 307.242] +/A << /S /GoTo /D (page.47) >> >> endobj -770 0 obj +920 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [171.867 448.269 183.075 457.927] -/A << /S /GoTo /D (page.15) >> +/Rect [176.276 299.577 187.484 307.242] +/A << /S /GoTo /D (page.48) >> >> endobj -771 0 obj +921 0 obj +<< +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [198.585 286.874 205.185 296.787] +/A << /S /GoTo /D (page.7) >> +>> +endobj +922 0 obj +<< +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [208.824 286.874 220.032 296.787] +/A << /S /GoTo /D (page.42) >> +>> +endobj +923 0 obj +<< +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [193.212 277.659 204.42 285.828] +/A << /S /GoTo /D (page.23) >> +>> +endobj +924 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [162.452 439.303 173.66 446.968] +/Rect [198.072 266.7 209.28 274.869] +/A << /S /GoTo /D (page.11) >> +>> +endobj +925 0 obj +<< +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [226.473 253.499 237.681 264.458] +/A << /S /GoTo /D (page.47) >> +>> +endobj +926 0 obj +<< +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [240.296 253.499 251.504 264.458] +/A << /S /GoTo /D (page.48) >> +>> +endobj +927 0 obj +<< +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [191.946 243.039 203.154 252.448] /A << /S /GoTo /D (page.39) >> >> endobj -772 0 obj +928 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [176.276 439.303 187.484 446.968] +/Rect [205.769 243.039 216.977 252.448] /A << /S /GoTo /D (page.40) >> >> endobj -773 0 obj +929 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [198.585 426.6 205.185 436.513] +/Rect [188.11 233.823 194.71 241.993] /A << /S /GoTo /D (page.5) >> >> endobj -774 0 obj +930 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [208.824 426.6 220.032 436.513] -/A << /S /GoTo /D (page.34) >> +/Rect [201.652 222.864 212.86 231.034] +/A << /S /GoTo /D (page.15) >> >> endobj -775 0 obj +931 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [193.212 417.385 204.42 425.554] -/A << /S /GoTo /D (page.23) >> +/Rect [215.475 222.864 226.683 231.034] +/A << /S /GoTo /D (page.20) >> >> endobj -776 0 obj +932 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [207.035 417.385 218.243 425.554] -/A << /S /GoTo /D (page.24) >> +/Rect [235.2 210.162 241.8 220.075] +/A << /S /GoTo /D (page.8) >> >> endobj -777 0 obj +933 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [198.072 406.426 209.28 414.595] -/A << /S /GoTo /D (page.12) >> +/Rect [245.44 210.162 256.648 220.075] +/A << /S /GoTo /D (page.13) >> >> endobj -778 0 obj +934 0 obj +<< +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [239.985 199.203 246.585 209.116] +/A << /S /GoTo /D (page.8) >> +>> +endobj +935 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [211.895 406.426 223.103 414.595] +/Rect [249.2 199.203 260.408 209.116] +/A << /S /GoTo /D (page.11) >> +>> +endobj +936 0 obj +<< +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [256.03 187.746 267.238 198.705] /A << /S /GoTo /D (page.13) >> >> endobj -779 0 obj +937 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [223.913 393.225 235.121 404.184] -/A << /S /GoTo /D (page.39) >> +/Rect [269.853 187.746 281.061 198.705] +/A << /S /GoTo /D (page.14) >> >> endobj -780 0 obj +938 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [237.736 393.225 248.944 404.184] -/A << /S /GoTo /D (page.40) >> +/Rect [215.257 177.285 226.465 187.198] +/A << /S /GoTo /D (page.12) >> >> endobj -781 0 obj +939 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [191.946 382.765 203.154 392.174] -/A << /S /GoTo /D (page.31) >> +/Rect [229.081 177.285 240.289 187.198] +/A << /S /GoTo /D (page.13) >> >> endobj -782 0 obj +940 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [205.769 382.765 216.977 392.174] -/A << /S /GoTo /D (page.32) >> +/Rect [212.185 166.326 223.393 176.239] +/A << /S /GoTo /D (page.13) >> >> endobj -783 0 obj +941 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [188.11 373.549 194.71 381.719] -/A << /S /GoTo /D (page.5) >> +/Rect [226.008 166.326 237.216 176.239] +/A << /S /GoTo /D (page.20) >> >> endobj -784 0 obj +942 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [201.652 362.59 212.86 370.76] -/A << /S /GoTo /D (page.16) >> +/Rect [240.855 166.326 252.063 176.239] +/A << /S /GoTo /D (page.42) >> >> endobj -785 0 obj +943 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [215.475 362.59 226.683 370.76] +/Rect [254.678 166.326 265.886 176.239] +/A << /S /GoTo /D (page.43) >> +>> +endobj +944 0 obj +<< +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [188.559 144.408 199.767 154.321] /A << /S /GoTo /D (page.17) >> >> endobj -786 0 obj +945 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [235.2 351.631 241.8 359.801] -/A << /S /GoTo /D (page.7) >> +/Rect [214.721 133.45 225.929 143.362] +/A << /S /GoTo /D (page.16) >> >> endobj -787 0 obj +946 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [239.985 338.929 246.585 348.842] -/A << /S /GoTo /D (page.7) >> +/Rect [229.568 133.45 240.776 143.362] +/A << /S /GoTo /D (page.37) >> >> endobj -788 0 obj +947 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [249.2 338.929 255.801 348.842] -/A << /S /GoTo /D (page.9) >> +/Rect [397.159 656.239 408.367 664.408] +/A << /S /GoTo /D (page.19) >> >> endobj -789 0 obj +948 0 obj +<< +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [410.982 656.239 422.19 664.408] +/A << /S /GoTo /D (page.20) >> +>> +endobj +949 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [266.802 327.97 278.01 337.883] +/Rect [337.073 645.198 348.281 652.864] /A << /S /GoTo /D (page.10) >> >> endobj -790 0 obj +950 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [280.625 327.97 291.833 337.883] -/A << /S /GoTo /D (page.12) >> +/Rect [337.073 632.165 348.281 641.824] +/A << /S /GoTo /D (page.14) >> >> endobj -791 0 obj +951 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [215.257 317.011 226.465 326.924] -/A << /S /GoTo /D (page.10) >> +/Rect [351.92 632.165 363.128 641.824] +/A << /S /GoTo /D (page.16) >> >> endobj -792 0 obj +952 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [212.185 306.052 223.393 315.965] -/A << /S /GoTo /D (page.11) >> +/Rect [366.767 632.165 377.975 641.824] +/A << /S /GoTo /D (page.17) >> >> endobj -793 0 obj +953 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [226.008 306.052 237.216 315.965] -/A << /S /GoTo /D (page.12) >> +/Rect [381.614 632.165 392.822 641.824] +/A << /S /GoTo /D (page.31) >> >> endobj -794 0 obj +954 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [240.855 306.052 252.063 315.965] -/A << /S /GoTo /D (page.34) >> +/Rect [396.461 632.165 407.669 641.824] +/A << /S /GoTo /D (page.37) >> >> endobj -795 0 obj +955 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [254.678 306.052 265.886 315.965] -/A << /S /GoTo /D (page.35) >> +/Rect [346.487 621.374 357.695 630.783] +/A << /S /GoTo /D (page.11) >> >> endobj -796 0 obj +956 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [188.559 284.134 199.767 294.047] -/A << /S /GoTo /D (page.13) >> +/Rect [361.334 621.374 372.542 630.783] +/A << /S /GoTo /D (page.14) >> >> endobj -797 0 obj +957 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [214.721 273.176 225.929 283.088] -/A << /S /GoTo /D (page.15) >> +/Rect [341.78 610.084 352.988 619.742] +/A << /S /GoTo /D (page.10) >> >> endobj -798 0 obj +958 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [229.568 273.176 240.776 283.088] -/A << /S /GoTo /D (page.30) >> +/Rect [356.627 610.084 367.835 619.742] +/A << /S /GoTo /D (page.11) >> >> endobj -799 0 obj +959 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [217.831 263.96 229.039 272.13] -/A << /S /GoTo /D (page.14) >> +/Rect [341.78 599.043 348.38 608.702] +/A << /S /GoTo /D (page.8) >> >> endobj -800 0 obj +960 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [231.655 263.96 242.863 272.13] -/A << /S /GoTo /D (page.15) >> +/Rect [368.423 589.995 379.631 598.164] +/A << /S /GoTo /D (page.22) >> >> endobj -801 0 obj +961 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [157.745 253.001 164.345 260.667] +/Rect [341.78 576.962 348.38 586.62] /A << /S /GoTo /D (page.8) >> >> endobj -802 0 obj +962 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [337.073 654.247 348.281 663.905] -/A << /S /GoTo /D (page.15) >> +/Rect [341.78 567.914 352.988 575.58] +/A << /S /GoTo /D (page.35) >> >> endobj -803 0 obj +963 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [351.92 654.247 363.128 663.905] -/A << /S /GoTo /D (page.17) >> +/Rect [355.603 567.914 366.811 575.58] +/A << /S /GoTo /D (page.38) >> >> endobj -804 0 obj +964 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [366.767 654.247 377.975 663.905] -/A << /S /GoTo /D (page.24) >> +/Rect [351.299 555.13 357.899 565.042] +/A << /S /GoTo /D (page.4) >> >> endobj -805 0 obj +965 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [381.614 654.247 392.822 663.905] -/A << /S /GoTo /D (page.25) >> +/Rect [361.538 555.13 372.746 565.042] +/A << /S /GoTo /D (page.35) >> >> endobj -806 0 obj +966 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [396.461 654.247 407.669 663.905] -/A << /S /GoTo /D (page.30) >> +/Rect [388.622 544.089 395.222 554.002] +/A << /S /GoTo /D (page.4) >> >> endobj -807 0 obj +967 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [346.487 645.28 357.695 652.946] -/A << /S /GoTo /D (page.12) >> +/Rect [398.861 544.089 410.069 554.002] +/A << /S /GoTo /D (page.35) >> >> endobj -808 0 obj +968 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [360.31 645.28 371.518 652.946] -/A << /S /GoTo /D (page.13) >> +/Rect [341.78 534.792 352.988 542.458] +/A << /S /GoTo /D (page.38) >> >> endobj -809 0 obj +969 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [341.78 632.329 348.38 641.987] +/Rect [337.073 523.751 343.673 531.417] /A << /S /GoTo /D (page.8) >> >> endobj -810 0 obj +970 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [341.78 621.37 348.38 631.028] -/A << /S /GoTo /D (page.7) >> +/Rect [341.78 512.71 352.988 520.376] +/A << /S /GoTo /D (page.12) >> >> endobj -811 0 obj +971 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [341.78 610.411 348.38 620.069] -/A << /S /GoTo /D (page.7) >> +/Rect [355.603 512.71 366.811 520.376] +/A << /S /GoTo /D (page.20) >> >> endobj -812 0 obj +972 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [337.262 599.701 343.862 609.614] -/A << /S /GoTo /D (page.4) >> +/Rect [390.232 501.67 401.44 509.839] +/A << /S /GoTo /D (page.15) >> >> endobj -813 0 obj +973 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [347.501 599.701 358.709 609.614] -/A << /S /GoTo /D (page.28) >> +/Rect [396.172 477.311 407.38 487.224] +/A << /S /GoTo /D (page.53) >> >> endobj -814 0 obj +974 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [361.324 599.701 372.532 609.614] -/A << /S /GoTo /D (page.30) >> +/Rect [467.268 466.271 478.476 476.183] +/A << /S /GoTo /D (page.43) >> >> endobj -815 0 obj +975 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [351.299 590.486 362.507 598.655] -/A << /S /GoTo /D (page.28) >> +/Rect [346.487 455.23 357.695 465.193] +/A << /S /GoTo /D (page.14) >> >> endobj -816 0 obj +976 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [341.78 579.527 352.988 587.193] -/A << /S /GoTo /D (page.28) >> +/Rect [361.334 455.23 372.542 465.193] +/A << /S /GoTo /D (page.42) >> >> endobj -817 0 obj +977 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [355.603 579.527 366.811 587.193] -/A << /S /GoTo /D (page.30) >> +/Rect [376.182 455.23 387.389 465.193] +/A << /S /GoTo /D (page.43) >> >> endobj -818 0 obj +978 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [341.78 568.568 352.988 576.234] -/A << /S /GoTo /D (page.30) >> +/Rect [341.78 443.94 352.988 453.599] +/A << /S /GoTo /D (page.45) >> >> endobj -819 0 obj +979 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [355.603 568.568 366.811 576.234] -/A << /S /GoTo /D (page.31) >> +/Rect [355.603 443.94 366.811 453.599] +/A << /S /GoTo /D (page.47) >> >> endobj -820 0 obj +980 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [337.073 557.609 343.673 565.275] -/A << /S /GoTo /D (page.7) >> +/Rect [390.719 433.149 401.927 443.061] +/A << /S /GoTo /D (page.25) >> >> endobj -821 0 obj +981 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [341.78 546.65 352.988 554.316] -/A << /S /GoTo /D (page.10) >> +/Rect [365.317 421.859 376.525 432.071] +/A << /S /GoTo /D (page.41) >> >> endobj -822 0 obj +982 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [355.603 546.65 366.811 554.316] -/A << /S /GoTo /D (page.12) >> +/Rect [358.688 401.236 369.896 408.902] +/A << /S /GoTo /D (page.44) >> >> endobj -823 0 obj +983 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [396.172 523.736 407.38 533.649] -/A << /S /GoTo /D (page.45) >> +/Rect [372.512 401.236 383.72 408.902] +/A << /S /GoTo /D (page.46) >> >> endobj -824 0 obj +984 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [467.268 512.777 478.476 522.69] -/A << /S /GoTo /D (page.35) >> +/Rect [414.062 388.452 425.27 398.365] +/A << /S /GoTo /D (page.45) >> >> endobj -825 0 obj +985 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [440.661 501.818 447.261 511.731] +/Rect [365.317 377.163 371.917 387.374] /A << /S /GoTo /D (page.6) >> >> endobj -826 0 obj +986 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [450.9 501.818 462.108 511.731] -/A << /S /GoTo /D (page.24) >> +/Rect [375.556 377.163 386.764 387.374] +/A << /S /GoTo /D (page.28) >> >> endobj -827 0 obj +987 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [346.487 490.859 357.695 500.822] -/A << /S /GoTo /D (page.12) >> +/Rect [412.982 354.832 419.582 365.791] +/A << /S /GoTo /D (page.5) >> >> endobj -828 0 obj +988 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [361.334 490.859 372.542 500.822] -/A << /S /GoTo /D (page.16) >> +/Rect [423.221 354.832 434.429 365.791] +/A << /S /GoTo /D (page.40) >> >> endobj -829 0 obj +989 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [376.182 490.859 387.389 500.822] -/A << /S /GoTo /D (page.34) >> +/Rect [437.044 354.832 448.252 365.791] +/A << /S /GoTo /D (page.41) >> >> endobj -830 0 obj +990 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [391.029 490.859 402.237 500.822] -/A << /S /GoTo /D (page.35) >> +/Rect [413.507 343.791 424.715 354.75] +/A << /S /GoTo /D (page.41) >> >> endobj -831 0 obj +991 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [341.78 479.651 352.988 489.31] -/A << /S /GoTo /D (page.37) >> +/Rect [379.457 333.249 390.665 343.162] +/A << /S /GoTo /D (page.53) >> >> endobj -832 0 obj +992 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [355.603 479.651 366.811 489.31] -/A << /S /GoTo /D (page.39) >> +/Rect [364.651 323.952 371.252 331.618] +/A << /S /GoTo /D (page.5) >> >> endobj -833 0 obj +993 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [365.317 468.692 376.525 478.904] -/A << /S /GoTo /D (page.33) >> +/Rect [407.087 310.981 418.295 321.08] +/A << /S /GoTo /D (page.53) >> >> endobj -834 0 obj +994 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [358.688 449.514 369.896 457.18] -/A << /S /GoTo /D (page.36) >> +/Rect [404.211 301.87 410.811 309.536] +/A << /S /GoTo /D (page.6) >> >> endobj -835 0 obj +995 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [372.512 449.514 383.72 457.18] -/A << /S /GoTo /D (page.38) >> +/Rect [352.313 279.789 363.521 287.958] +/A << /S /GoTo /D (page.31) >> >> endobj -836 0 obj +996 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [414.062 436.812 425.27 446.725] -/A << /S /GoTo /D (page.37) >> +/Rect [366.136 279.789 377.344 287.958] +/A << /S /GoTo /D (page.33) >> >> endobj -837 0 obj +997 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [371.218 416.638 382.426 424.807] +/Rect [376.15 268.748 387.358 276.918] /A << /S /GoTo /D (page.33) >> >> endobj -838 0 obj +998 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [375.314 403.935 381.914 413.848] +/Rect [360.609 255.715 367.209 265.374] /A << /S /GoTo /D (page.6) >> >> endobj -839 0 obj +999 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [385.553 403.935 396.761 413.848] -/A << /S /GoTo /D (page.33) >> +/Rect [370.849 255.715 382.057 265.374] +/A << /S /GoTo /D (page.40) >> >> endobj -840 0 obj +1000 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [377.731 394.72 384.331 402.889] -/A << /S /GoTo /D (page.4) >> +/Rect [384.672 255.715 395.88 265.374] +/A << /S /GoTo /D (page.41) >> >> endobj -841 0 obj +1001 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [379.457 371.059 390.665 380.971] -/A << /S /GoTo /D (page.45) >> +/Rect [364.954 244.675 376.162 254.836] +/A << /S /GoTo /D (page.16) >> >> endobj -842 0 obj +1002 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [407.087 359.913 418.295 370.012] -/A << /S /GoTo /D (page.46) >> +/Rect [379.801 244.675 391.009 254.836] +/A << /S /GoTo /D (page.38) >> >> endobj -843 0 obj +1003 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [352.313 339.925 363.521 348.095] -/A << /S /GoTo /D (page.25) >> +/Rect [394.649 244.675 405.857 254.836] +/A << /S /GoTo /D (page.41) >> >> endobj -844 0 obj +1004 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [366.136 339.925 377.344 348.095] -/A << /S /GoTo /D (page.27) >> +/Rect [391.29 233.883 402.498 243.796] +/A << /S /GoTo /D (page.10) >> >> endobj -845 0 obj +1005 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [376.15 328.966 387.358 337.136] -/A << /S /GoTo /D (page.27) >> +/Rect [406.138 233.883 417.346 243.796] +/A << /S /GoTo /D (page.15) >> >> endobj -846 0 obj +1006 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [346.487 305.803 357.695 315.462] -/A << /S /GoTo /D (page.33) >> +/Rect [420.985 233.883 432.193 243.796] +/A << /S /GoTo /D (page.16) >> >> endobj -847 0 obj +1007 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [337.073 296.837 348.281 304.503] -/A << /S /GoTo /D (page.46) >> +/Rect [435.832 233.883 447.04 243.796] +/A << /S /GoTo /D (page.22) >> >> endobj -848 0 obj +1008 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [408.587 274.919 415.188 283.088] -/A << /S /GoTo /D (page.6) >> +/Rect [450.679 233.883 461.887 243.796] +/A << /S /GoTo /D (page.30) >> >> endobj -849 0 obj +1009 0 obj +<< +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [346.487 211.019 357.695 220.677] +/A << /S /GoTo /D (page.41) >> +>> +endobj +1010 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [453.931 261.719 460.531 272.677] +/Rect [337.073 201.971 348.281 209.636] +/A << /S /GoTo /D (page.53) >> +>> +endobj +1011 0 obj +<< +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [343.381 190.93 349.981 199.099] /A << /S /GoTo /D (page.7) >> >> endobj -850 0 obj +1012 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [464.708 261.719 475.916 272.677] -/A << /S /GoTo /D (page.10) >> +/Rect [408.587 179.889 415.188 188.059] +/A << /S /GoTo /D (page.7) >> >> endobj -851 0 obj +1013 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [332.025 251.258 343.233 260.667] -/A << /S /GoTo /D (page.18) >> +/Rect [399.466 166.607 406.066 177.566] +/A << /S /GoTo /D (page.8) >> >> endobj -852 0 obj +1014 0 obj << /Type /Annot /Subtype /Link /Border[0 0 0]/H/I/C[1 0 0] -/Rect [346.872 251.258 358.08 260.667] -/A << /S /GoTo /D (page.19) >> +/Rect [409.705 166.607 420.913 177.566] +/A << /S /GoTo /D (page.13) >> >> endobj -856 0 obj +1015 0 obj << -/D [854 0 R /XYZ 132.768 705.06 null] +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [424.552 166.607 435.76 177.566] +/A << /S /GoTo /D (page.21) >> >> endobj -853 0 obj +1016 0 obj +<< +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [439.399 166.607 450.607 177.566] +/A << /S /GoTo /D (page.22) >> +>> +endobj +1017 0 obj +<< +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [404.589 155.566 411.189 166.525] +/A << /S /GoTo /D (page.9) >> +>> +endobj +1018 0 obj +<< +/Type /Annot +/Subtype /Link +/Border[0 0 0]/H/I/C[1 0 0] +/Rect [376.597 133.45 387.805 143.362] +/A << /S /GoTo /D (page.14) >> +>> +endobj +1022 0 obj +<< +/D [1020 0 R /XYZ 132.768 705.06 null] +>> +endobj +1019 0 obj << -/Font << /F76 362 0 R /F75 361 0 R /F131 748 0 R /F123 557 0 R /F37 251 0 R >> +/Font << /F77 439 0 R /F76 438 0 R /F109 545 0 R /F155 876 0 R /F128 607 0 R /F37 299 0 R >> /ProcSet [ /PDF /Text ] >> endobj -858 0 obj +1024 0 obj [524.7 472.2 472.2 524.7 472.2 314.8 472.2 524.7 314.8 314.8 472.2 262.3 839.5 577.2 524.7 524.7 472.2 432.9 419.8] endobj -860 0 obj -[525] -endobj -861 0 obj +1025 0 obj [922.3] endobj -862 0 obj -[493.7 548.6 493.7 329.2 493.7 548.6 329.2 329.2 493.7 274.3 877.8 603.5 548.6 548.6 493.7 452.6 438.9 356.6 576 493.7 713.2 494.8 521.2] -endobj -863 0 obj +1026 0 obj [536.1 536.1 813.9 813.9 500 319.5 433.8 833.3 500 833.3 758.3 277.8 388.9 388.9 500 777.8 277.8 333.3 277.8 500 500 500 500 500 500 500 500 500 500 500 277.8 277.8 777.8 777.8 777.8 472.2 666.7 666.7 666.7 638.9 722.2 597.2 569.5 666.7 708.3 277.8 472.2 694.5 541.7 875 708.3 736.1 638.9 736.1 645.8 555.6 680.6 687.5 666.7 944.4 666.7 666.7 611.1 288.9 500 288.9 555.6 666.7 277.8 480.6 516.7 444.5 516.7 444.5 305.6 500 516.7 238.9 266.7 488.9 238.9 794.5 516.7 500 516.7 516.7 341.7 383.3 361.1 516.7 461.1 683.3 461.1 461.1] endobj -864 0 obj -[531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531 531.3 531.3 531 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3] +1028 0 obj +[458.3 458.3] endobj -865 0 obj -[531.3 1062.5 0 414.9 295.1 324.7 619.8 590.3 590.3 885.4 885.4 531.3 295.1 403.1 885.4 531.3 885.4 826.4 295.1 413.2 413.2 531.3 826.4 295.1 354.2 295.1 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 295.1 295.1 826.4 826.4 826.4 501.8 826.4 795.9 752.1 767.4 811.1 722.6 693.1 833.5 795.9 382.6 545.5 825.4 663.5 972.9 795.9 826.4 722.6 826.4 781.6 590.3 767.4 795.9 795.9 1091 795.9 795.9 649.3 295.1 531.3 295.1 555.6 795.9 295.1 531.3 590.3 472.2 590.3 472.2 324.7 531.3 590.3 295.1 324.7 560.7 295.1 885.4 590.3 531.3 590.3 560.7 414.1 419.1 413.2 590.3 560.7 767.4 560.7 560.7] +1029 0 obj +[865.9] endobj -866 0 obj -[611.1 611.1 611.1 611.1 611.1 611.1 611.1 611.1 611.1 351.8 351.8 963 935.2 963 578.7 935.2 896.3] +1030 0 obj +[531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531 531.3 531.3 531 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3] endobj -867 0 obj -[865.9] +1031 0 obj +[413.2 413.2 531.3 826.4 295.1 354.2 295.1 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 295.1 295.1 826.4 826.4 826.4 501.8 826.4 795.9 752.1 767.4 811.1 722.6 693.1 833.5 795.9 382.6 545.5 825.4 663.5 972.9 795.9 826.4 722.6 826.4 781.6 590.3 767.4 795.9 795.9 1091 795.9 795.9 649.3 295.1 531.3 295.1 555.6 795.9 295.1 531.3 590.3 472.2 590.3 472.2 324.7 531.3 590.3 295.1 324.7 560.7 295.1 885.4 590.3 531.3 590.3 560.7 414.1 419.1 413.2 590.3 560.7 767.4 560.7] endobj -868 0 obj +1032 0 obj +[611.1 611.1 611.1 611.1 611.1 611.1 611.1 611.1 611.1 351.8 351.8 963 935.2 963 578.7 935.2 896.3] +endobj +1034 0 obj [525] endobj -870 0 obj -[513.9 513.9 513.9 513.9] +1036 0 obj +[963] endobj -872 0 obj -[799.4 513.9 799.4 513.9 543.7 770.7 777.7 733.6 847.5 756.3 656.2 804.8 850.1 449.3 566.3 870.4 699.4 992.9 821.6 782.1 656.2 810.6 777.6 627.8 599.6 699.1 599.4 970.5 849 596.5 699.2 399.7 399.7 399.7 1027.8 1027.8 424.4 544.5 440.4 444.9 532.5 477.8 498.8 490.1 592.2 351.7 420.1 535.1 306.7 905.5 620] +1037 0 obj +[799.4] endobj -874 0 obj -[892.9 339.3 892.9 585.3 892.9 585.3 892.9 892.9 892.9 892.9 892.9 892.9 892.9 1138.9 585.3 585.3 892.9 892.9 892.9 892.9 892.9 892.9 892.9 892.9 892.9 892.9 892.9 892.9 1138.9 1138.9 892.9 892.9 1138.9 1138.9 585.3 585.3 1138.9 1138.9 1138.9 892.9 1138.9 1138.9 708.3 708.3 1138.9 1138.9 1138.9 892.9 329.4] +1039 0 obj +[399.7 399.7 513.9 799.4 285.5 342.6 285.5 513.9 513.9 513.9 513.9 513.9 513.9 513.9 513.9 513.9 513.9 513.9 285.5 285.5 285.5 799.4 485.3 485.3 799.4 770.7 727.9 742.3 785 699.4 670.8 806.5 770.7 371 528.1 799.2 642.3 942 770.7 799.4 699.4 799.4 756.4 571 742.3 770.7 770.7 1056.1 770.7 770.7 628.1 285.5 485.9 285.5 513.9 285.5 285.5 513.9 571 456.8 571 457.2 314 513.9 571 285.5 314 542.4 285.5 856.4 571 513.9 571 542.4 402 405.4 399.7] endobj -875 0 obj -[736.1 1083.3 736.1 749 1036.1 1037 996 1109.9 1007 867.4 1064 1110.4 626.7 772.9 1138.9 955.6 1284 1075.7 1047.5 875.4 1082.2 1030 856.3 832.3 943.9 827.8 1279.2 1112.9 824.3 943.1 597.2 597.2 597.2 1361.1 1361.1 597.2 774.4 633.3 649.4 739.7 677 684 700.6 827.6 533.6 588.2 758.1 480.3 1228 880.8] +1040 0 obj +[826.4 295.1 354.2 295.1 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 295.1 295.1 295.1 826.4 501.8 501.8 826.4 795.9 752.1 767.4 811.1 722.6 693.1 833.5 795.9 382.6 545.5 825.4 663.5 972.9 795.9 826.4 722.6 826.4 781.6 590.3 767.4 795.9 795.9 1091 795.9 795.9 649.3 295.1 502.3 295.1 531.3 295.1 295.1 531.3 590.3 472.2 590.3 472.2 324.7 531.3 590.3 295.1 324.7 560.7 295.1 885.4 590.3 531.3 590.3 560.7 414.1 419.1] endobj -876 0 obj -[680.6 680.6 680.6 680.6 680.6 680.6 680.6 680.6 680.6 680.6] +1041 0 obj +[826.4] endobj -877 0 obj -[575 575 575 575 575 575 575 575] +1043 0 obj +[697.9] endobj -878 0 obj +1044 0 obj +[611.1 611.1] +endobj +1045 0 obj +[492.9 510.4 505.6 612.3 361.7 429.7 553.2 317.1 939.8 644.7 513.5 534.8 474.4 479.5 491.3 383.7 615.2 517.4 762.5 598.1] +endobj +1046 0 obj +[285.5 799.4 513.9 799.4 513.9 543.7 770.7 777.7 733.6 847.5 756.3 656.2 804.8 850.1 449.3 566.3 870.4 699.4 992.9 821.6 782.1 656.2 810.6 777.6 627.8 599.6 699.1 599.4 970.5 849 596.5 699.2 399.7 399.7 399.7 1027.8 1027.8 424.4 544.5 440.4 444.9 532.5 477.8 498.8 490.1 592.2 351.7 420.1 535.1 306.7 905.5 620 497.5 515.9 459.2 463.7 478.8 371.1 591.4 499.2 736.6 582.6] +endobj +1047 0 obj +[892.9 339.3 892.9 585.3 892.9 585.3 892.9 892.9 892.9 892.9 892.9 892.9 892.9 1138.9 585.3 585.3 892.9 892.9 892.9 892.9 892.9 892.9 892.9 892.9 892.9 892.9 892.9 892.9 1138.9 1138.9 892.9 892.9 1138.9 1138.9 585.3 585.3 1138.9 1138.9 1138.9 892.9 1138.9 1138.9 708.3 708.3 1138.9 1138.9 1138.9 892.9 329.4 1138.9 769.8 769.8 1015.9 1015.9 0 0 646.8 646.8 769.8 585.3 831.4 831.4 892.9 892.9 708.3 917.6 753.4 620.2 889.5 616.1 818.4 688.5 978.7 646.5 782.2 871.7 791.7 1342.7 935.6 905.8 809.2 935.9 981 702.2 647.8 717.8 719.9 1135.1 818.9 764.4 823.1 769.8 769.8 769.8 769.8 769.8 708.3 708.3 523.8 523.8 523.8 523.8 585.3 585.3 462.3 462.3 339.3 585.3 585.3 708.3 585.3 339.3 938.5] +endobj +1048 0 obj +[831.1 726 815.2 681.6 791.7 841.7 864.6 930.6 886.4 674.7 855.3 1144.8 726 578.1 918.1 1361.1 1361.1 1361.1 1361.1 458.3 458.3 736.1 736.1 736.1 736.1 736.1 736.1 736.1 736.1 736.1 736.1 736.1 736.1 458.3 458.3 1083.3 736.1 1083.3 736.1 749 1036.1 1037 996 1109.9 1007 867.4 1064 1110.4 626.7 772.9 1138.9 955.6 1284 1075.7 1047.5 875.4 1082.2 1030 856.3 832.3 943.9 827.8 1279.2 1112.9 824.3 943.1 597.2 597.2 597.2 1361.1 1361.1 597.2 774.4 633.3 649.4 739.7 677 684 700.6 827.6 533.6 588.2 758.1 480.3 1228 880.8 702.8 739.7 658.9 671.3 670.1 563.7 846.1 722.2 1009 791.7] +endobj +1049 0 obj +[1083.3 458.3 1083.3 736.1 1083.3 736.1 1083.3 1083.3 1083.3 1083.3 1083.3 1083.3 1083.3 1361.1 736.1 736.1 1083.3 1083.3 1083.3 1083.3 1083.3 1083.3 1083.3 1083.3 1083.3 1083.3 1083.3 1083.3 1361.1 1361.1 1083.3 1083.3 1361.1 1361.1 736.1 736.1 1361.1 1361.1 1361.1 1083.3 1361.1 1361.1 875 875 1361.1 1361.1 1361.1 1083.3 441 1361.1 944.5 944.5 1222.2 1222.2 0 0 805.6 805.6 944.5 736.1 1013.9 1013.9 1083.3 1083.3 875 1113.5 919.3 782.1 1083.9 770.8 988.2 850.4 1194.5 819.5 958.3 1055 964.7 1567.9 1126.1 1089.2 997.7 1132 1196.1 868.1 822.4 873.8 898.9 1367.7 996.6 929.5 991.4 944.5 944.5 944.5 944.5 944.5 875 875 666.7 666.7 666.7 666.7 736.1 736.1 597.2 597.2 458.3 736.1 736.1 875 736.1 458.3 1097.2] +endobj +1050 0 obj +[680.6 680.6 680.6 680.6 680.6 680.6 680.6 680.6 680.6 680.6] +endobj +1051 0 obj [659] endobj -879 0 obj +1052 0 obj +[575 575 575 575 575 575 575 575 575] +endobj +1053 0 obj [668 592.7 662 526.8 632.9 686.9 713.8 756 719.7 539.7 689.9 950 592.7 439.2 751.4 1138.9 1138.9 1138.9 1138.9 339.3 339.3 585.3 585.3 585.3 585.3 585.3 585.3 585.3 585.3 585.3 585.3 585.3 585.3 339.3 339.3 892.9 585.3 892.9 585.3 610.1 859.1 863.2 819.4 934.1 838.7 724.5 889.4 935.6 506.3 632 959.9 783.7 1089.4 904.9 868.9 727.3 899.7 860.6 701.5 674.8 778.2 674.6 1074.4 936.9 671.5 778.4 462.3 462.3 462.3 1138.9 1138.9 478.2 619.7 502.4 510.5 594.7 542 557.1 557.3 668.8 404.2 472.7 607.3 361.3 1013.7 706.2 563.9 588.9 523.6 530.4 539.2 431.6 675.4 571.4 826.4 647.8] endobj -880 0 obj -[569.4 569.4 569.4 569.4 569.4 569.4 569.4 569.4 569.4 569.4] +1054 0 obj +[446.4 446.4 569.4 877 323.4 384.9 323.4 569.4 569.4 569.4 569.4 569.4 569.4 569.4 569.4 569.4 569.4 569.4 323.4 323.4 323.4 877 538.7 538.7 877 843.3 798.6 815.5 860.1 767.9 737.1 883.9 843.3 412.7 583.3 874 706.4 1027.8 843.3 877 767.9 877 829.4 631 815.5 843.3 843.3 1150.8 843.3 843.3 692.4 323.4 538.4 323.4 569.4 323.4 323.4 569.4 631 507.9 631 507.9 354.2 569.4 631 323.4 354.2 600.2 323.4 938.5 631] endobj -881 0 obj +1055 0 obj [777.8 277.8 777.8 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 762 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 277.8 500 500 611.1 500 277.8 833.3] endobj -882 0 obj -[625 833.3 777.8 694.5 666.7 750 722.2 777.8 722.2 777.8 722.2 583.3 555.6 555.6 833.3 833.3 277.8 305.6 500 500 500 500 500 750 444.5 500 722.2 777.8 500 902.8 1013.9 777.8 277.8 277.8 472 833.3 500 833.3 777.8 277.8 388.9 388.9 500 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 472.2 472.2 777.8 750 708.3 722.2 763.9 680.6 652.8 784.7 750 361.1 513.9 777.8 625 916.7 750 777.8 680.6 777.8 736.1 555.6 722.2 750 750 1027.8 750 750 611.1 277.8 472 277.8 500 277.8 277.8 500 555.6 444.5 555.6 444.5 305.6 500 555.6 277.8 305.6 527.8 277.8 833.3 555.6 500 555.6 527.8 391.7 394.5 388.9 555.6 527.8 722.2 527.8] -endobj -883 0 obj +1056 0 obj [525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525] endobj -884 0 obj +1057 0 obj [513.9 1027.8 0 401.9 285.5 314 599.6 571 571 856.4 856.4 513.9 285.5 387.5 856.4 513.9 856.4 799.4 285.5 399.7 399.7 513.9 799.4 285.5 342.6 285.5 513.9 513.9 513.9 513.9 513.9 513.9 513.9 513.9 513.9 513.9 513.9 285.5 285.5 799.4 799.4 799.4 485.3 799.4 770.7 727.9 742.3 785 699.4 670.8 806.5 770.7 371 528.1 799.2 642.3 942 770.7 799.4 699.4 799.4 756.4 571 742.3 770.7 770.7 1056.1 770.7 770.7 628.1 285.5 513.9 285.5 555.6 770.7 285.5 513.9 571 456.8 571 457.2 314 513.9 571 285.5 314 542.4 285.5 856.4 571 513.9 571 542.4 402 405.4 399.7 571 542.4 742.3 542.4 542.4 456.8] endobj -885 0 obj +1058 0 obj [517.7 444.4 405.9 437.5 496.5 469.4 353.9 576.2 583.3 602.6 494 437.5 570 517 571.4 437.2 540.3 595.8 625.7 651.4 622.5 466.3 591.4 828.1 517 362.8 654.2 1000 1000 1000 1000 277.8 277.8 500 500 500 500 500 500 500 500 500 500 500 500 277.8 277.8 777.8 500 777.8 500 530.9 750 758.5 714.7 827.9 738.2 643.1 786.3 831.3 439.6 554.5 849.3 680.6 970.1 803.5 762.8 642 790.6 759.3 613.2 584.4 682.8 583.3 944.4 828.5 580.6 682.6 388.9 388.9 388.9 1000 1000 416.7 528.6 429.2 432.8 520.5 465.6 489.6 477 576.2 344.5 411.8 520.6 298.4 878 600.2 484.7 503.1 446.4 451.2 468.8 361.1 572.5 484.7 715.9 571.5 490.3] endobj -886 0 obj -[525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525] +1059 0 obj +[625 833.3 777.8 694.5 666.7 750 722.2 777.8 722.2 777.8 722.2 583.3 555.6 555.6 833.3 833.3 277.8 305.6 500 500 500 500 500 750 444.5 500 722.2 777.8 500 902.8 1013.9 777.8 277.8 277.8 472 833.3 500 833.3 777.8 277.8 388.9 388.9 500 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 472.2 472.2 777.8 750 708.3 722.2 763.9 680.6 652.8 784.7 750 361.1 513.9 777.8 625 916.7 750 777.8 680.6 777.8 736.1 555.6 722.2 750 750 1027.8 750 750 611.1 277.8 472 277.8 500 277.8 277.8 500 555.6 444.5 555.6 444.5 305.6 500 555.6 277.8 305.6 527.8 277.8 833.3 555.6 500 555.6 527.8 391.7 394.5 388.9 555.6 527.8 722.2 527.8] endobj -887 0 obj +1060 0 obj +[569.4 569.4 569.4 569.4 569.4 569.4 569.4 569.4 569.4 323.4 323.4 892.9 877 892.9 538.7 877 843.3 798.6 815.5 860.1 767.9 737.1 883.9 843.3 412.7 583.3 874 706.4 1027.8 843.3 877 767.9 877 829.4 631 815.5 843.3 843.3 1150.8 843.3 843.3 692.4 323.4 585.3 323.4 555.6 843.3 323.4 569.4 631 507.9 631 507.9 354.2 569.4 631 323.4 354.2 600.2 323.4 938.5 631 569.4 631 600.2 446.4 452.6 446.4] +endobj +1061 0 obj +[525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525] +endobj +1062 0 obj [656.2 625 625 937.5 937.5 562.5 342.6 462.5 937.5 562.5 937.5 875 312.5 437.5 437.5 562.5 875 312.5 375 312.5 562.5 562.5 562.5 562.5 562.5 562.5 562.5 562.5 562.5 562.5 562.5 312.5 312.5 894.4 875 894.4 531.2 875 849.5 799.7 812.5 862.2 738.4 707.2 884.2 879.6 419 581 880.7 675.9 1067.2 879.6 844.9 768.5 844.9 839.2 625 782.4 864.6 849.5 1162 849.5 849.5 687.5 312.5 575 312.5 555.6 849.5 312.5 546.9 625 500 625 513.3 343.7 562.5 625 312.5 343.7 593.7 312.5 937.5 625 562.5 625 593.7 459.5 443.7 437.5 625 593.7 812.5 593.7 593.7 500] endobj -888 0 obj +1063 0 obj [511.1 1022.2 0 408.5 306.7 306.7 613.3 562.2 587.8 881.7 894.4 511.1 306.7 400.7 817.8 500 817.8 766.7 306.7 408.9 408.9 511.1 766.7 306.7 357.8 306.7 511.1 511.1 511.1 511.1 511.1 511.1 511.1 511.1 511.1 511.1 511.1 306.7 306.7 777.8 766.7 777.8 511.1 766.7 743.4 703.9 715.6 755 678.4 652.8 773.6 743.4 385.5 525 768.9 627.2 896.7 743.4 766.7 678.4 766.7 729.5 562.2 715.6 743.4 743.4 998.9 743.4 743.4 613.3 306.7 500 306.7 555.6 743.4 306.7 511.1 460 460 511.1 460 306.7 460 511.1 306.7 306.7 460 255.5 817.8 562.2 511.1 511.1 460 421.7 408.9 332.2 536.7 460 664.5 463.9 485.6 408.9] endobj -889 0 obj -[569.4 569.4 569.4 569.4 569.4 569.4 569.4 569.4 569.4 323.4 323.4 892.9 877 892.9 538.7 877 843.3 798.6 815.5 860.1 767.9 737.1 883.9 843.3 412.7 583.3 874 706.4 1027.8 843.3 877 767.9 877 829.4 631 815.5 843.3 843.3 1150.8 843.3 843.3 692.4 323.4 585.3 323.4 555.6 843.3 323.4 569.4 631 507.9 631 507.9 354.2 569.4 631 323.4 354.2 600.2 323.4 938.5 631 569.4 631 600.2 446.4 452.6 446.4] +1064 0 obj +[777.8] endobj -890 0 obj -[500 0 277.8 333.3 277.8 551.1 500 500 500 500 500 500 500 500 500 500 0 0 388.9 777.8 388.9 0 0 0 0 0 0 0 0 0 0 0 0 0 0 722.2 0 683.3 0 777.8 0 0 0 0 0 722.2 0 0 0 402.7 0 402.7 500 500 500 0 500 500 500 0 0 0 0 0 0 0 1000 500 611.1 0 0 500 0 305.6 0 0 0 0 0 0 0 0 0 0 555.6 166.7 611.1 611.1 500 500 444.5 444.5 397.8 1140 777.8] -endobj -891 0 obj +1065 0 obj [525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525] endobj -892 0 obj +1066 0 obj [500 1000 0 391.7 277.8 305.6 583.3 555.6 555.6 833.3 833.3 500 277.8 373.8 833.3 500 833.3 777.8 277.8 388.9 388.9 500 777.8 277.8 333.3 277.8 500 500 500 500 500 500 500 500 500 500 500 277.8 277.8 777.8 777.8 777.8 472.2 777.8 750 708.3 722.2 763.9 680.6 652.8 784.7 750 361.1 513.9 777.8 625 916.7 750 777.8 680.6 777.8 736.1 555.6 722.2 750 750 1027.8 750 750 611.1 277.8 500 277.8 555.6 750 277.8 500 555.6 444.5 555.6 444.5 305.6 500 555.6 277.8 305.6 527.8 277.8 833.3 555.6 500 555.6 527.8 391.7 394.5 388.9 555.6 527.8 722.2 527.8 527.8 444.5 500 277.8 500 555.6 166.7 750 750 722.2 722.2 763.9 680.6 680.6 784.7 625 625 625 750 750 750 777.8 736.1 736.1 555.6 555.6 555.6 722.2 722.2 750 750 750 611.1 611.1 611.1 838.9 361.1 555.6 484] endobj -893 0 obj -[575 1150 0 449.7 319.5 351.4 670.8 638.9 638.9 958.3 958.3 575 350 481.5 958.3 575 958.3 894.4 319.5 447.2 447.2 575 894.4 319.5 383.3 319.5 575 575 575 575 575 575 575 575 575 575 575 319.5 319.5 894.4 894.4 894.4 543.1 894.4 869.4 818.1 830.6 881.9 755.6 723.6 904.2 900 436.1 594.5 901.4 691.7 1091.7 900 863.9 786.1 863.9 862.5 638.9 800 884.7 869.4 1188.9 869.4 869.4 702.8 319.5 575 319.5 555.6 869.4 319.5 559 638.9 511.1 638.9 527.1 351.4 575 638.9 319.5 351.4 607 319.5 958.3 638.9 575 638.9 607 473.6 453.6 447.2 638.9 607 830.6 607 607 511.1 575 319.5 575 555.6 191.7 869.4 869.4 830.6 830.6 881.9 755.6 755.6 904.2 691.7 691.7 691.7 900 900 900 863.9 862.5 862.5 638.9 638.9 638.9 800 800 884.7 884.7 869.4 702.8 702.8 702.8 987 436.1 638.9 695] +1067 0 obj +[575 1150 0 449.7 319.5 351.4 670.8 638.9 638.9 958.3 958.3 575 350 481.5 958.3 575 958.3 894.4 319.5 447.2 447.2 575 894.4 319.5 383.3 319.5 575 575 575 575 575 575 575 575 575 575 575 319.5 319.5 894.4 894.4 894.4 543.1 894.4 869.4 818.1 830.6 881.9 755.6 723.6 904.2 900 436.1 594.5 901.4 691.7 1091.7 900 863.9 786.1 863.9 862.5 638.9 800 884.7 869.4 1188.9 869.4 869.4 702.8 319.5 575 319.5 555.6 869.4 319.5 559 638.9 511.1 638.9 527.1 351.4 575 638.9 319.5 351.4 607 319.5 958.3 638.9 575 638.9 607 473.6 453.6 447.2 638.9 607 830.6 607 607 511.1] endobj -894 0 obj +1068 0 obj [380.8 380.8 489.6 761.6 272 326.4 272 489.6 489.6 489.6 489.6 489.6 489.6 489.6 489.6 489.6 489.6 489.6 272 272 761.6 761.6 761.6 462.4 761.6 734 693.4 707.2 747.8 666.2 639 768.2 734 353.2 503 761.2 611.8 897.2 734 761.6 666.2 761.6 720.6 544 707.2 734 734 1006 734 734 598.4 272 500 272 555.6 734 272 489.6 544 435.2 544 435.2 299.2 489.6 544 272 299.2 516.8 272 816 544 489.6 544 516.8 380.8 386.2 380.8 544 516.8 707.2] endobj -895 0 obj +1069 0 obj [514.6 514.6 514.6 514.6 514.6 514.6 514.6 514.6 514.6 514 514.6 514.6 514 514.6 514.6 514.6 514.6 514.6 514.6 514.6 514.6 514.6 514.6 514.6 514.6 514.6 514.6 514.6 514.6 514.6 514.6 514.6 514.6 514.6 514.6 514.6 514.6 514.6 514.6 514.6 514.6 514.6 514.6 514.6 514.6 514.6 514.6 514.6 514.6 514.6 514.6 514.6 514.6 514.6 514.6 514.6 514.6 514.6 514.6 514.6 514.6 514.6 514.6 514.6 514.6 514.6 514.6 514.6 514.6 514.6 514.6 514.6 514.6] endobj -896 0 obj +1070 0 obj << -/Length1 2432 -/Length2 28264 +/Length1 2486 +/Length2 28799 /Length3 0 -/Length 29699 -/Filter /FlateDecode ->> -stream -xڴeT6L#H20twHHwwwwHwtH#/o{=_533)HTDLF I#3/@N^leaf[ -PiU%TTR*J4UELUM] .& - - -Z1OW[-/+Y?Dv _-cyeW-,Kz-Z5& -xhWDW_pr/kYMdrW>JNܽ=N`+_&@'7]Uϝ(͓P0p"665KuA? -.m?dPC -?d9Sy||d3/qFQ\|Jk-B S&Ϧ/tJh;({;rʢBd#nh679A,rF{j[Oc},l0Qq[Xjc'S-Uh#ӕ2e.2#[%DO#uX9zsM_V: -?hBuYո5ϳ5)h-)dIЀ Br DyXFv -yz3@Rx~kwz -|zV{~|qdp*TWW Zm8~+qC\oxYHE`['wd"5Q1y_YG -UM1h{y}TWybKYVvjc1g4b6]W?;+LExRg59MgkWveWG
~t`J!)YB~W1~h"MҞ@Ǻ]]7ȔI(
0:V@/9Ee}e}A#%p
hYfڭkvuzt(`/T0n?DJTh|b-q/+.BF[WS2Ӡ"b(RMu
[ -Ssϒ&2R阁l:wtcV3Jg˄%H'4R3-t10?~M\}2(Oǐ_旕%nS_c!""J:بQqwbCsI -iX|YN]oWUlAF8U -ej&zcziԨGY
(/wD A>ađxIvZBY'9 -e%+{^{ - -&з_~<O?*~KhySMl0M(fNP7x
O%E3D}{lcWvF6ЛtYOC0+wrr_iL[+1YQKO?Nj1uTQ0Zz\!K)+7o0鶭.JAlu:E9#<J -P<":L4] :N73uE|$hGJN|V5$~ѫ9$x_,~ưyϻ 5 >GyրRyt&4lM.s_?̝eXkJ -[Dqk6C69Aw(!<o{i,ɑr/3h-N@x#6܀!m"A. -^$^K6,#lR)>NV#a{S/ʼn3o -KrWC)kO'iv#S+qR(D"Ua}Ipv'>-:zl^Mbe.|n=\J
CkF ^6'ՈU^H9:k>d|>j1`>"ewLLh_$%8$FJm\@QHp0ԩej8̣
ybŵN)4xU(i_2NC?BtYb}OĻx۔xP\pz=vk/Oz#O+V[ݹ'
qQm,%,~?V"c
}4 D5J;l-sf7@$:<MBMy1{)b"<(v&sx#OO(9,ÖMh7՜Ĥӊfrmb-NS -夃t/r#<(Bpbxw//&݀3\0A-K!ԟ7KMHi'0G,zǵrE\)g-Grr3.;M<ʐYF%~JX+Kڦvudxݺo2+u@YdB9V} +\LԯP@uu,(A4%|oY2w䷳Y@iA -πMLZ7,fpx93:6*sqݤ#ѠIkgxsTw!a3Xܰ*$GQ戞o}q L%HI?)GC3aZ4"ʛOrL>JrE5D|oQJ@vjv[[<ʛcO꜔ւ8#c,;܃*gZZۥjq#Yb7i4F3X%+sMp' g{u䒌BTSbcUJAD0PFPfkKj66̬YNi'B~$<axvfJ/FTA*b#ڣP\cNqtk6d] r^Nx? -a 7 vvZjBWpnn] -E bw]v-y1wq?SDf>1-W_.dё}nh68r1@DeZϟtDDklhč
9Sxckaj^žNә^\T,ήqU4zŶDP4zﳗ]-ey1%"G,.hs=iaaQKۊsjW+#BFV'+2&Q&KF*Mi;|cvڱ^
%M8}WcSxc:T]ASbBHZL܆ -U&:DELGRN;^ؒӳXuR{cWJ~[EZ<GġyN|ovusj۽Zޛd;yhI&PK4E]o* y]ǷcHVT%0ZhBR:hڡ˱gQTq0tqQ[5i}EdzevfVUkH5~_z<Kx֙~ªߛ#ΔjU[_:̇j|Jccw>` #LZ}2at!A?6ֵ߆gɮSQ1lENYYz:t[Y!:ǷMIH8t0-?mX|Oj9iabś*6>HvF2Bh ][ -F$^[Z\W r>*7j)j`=<\<,f2"$>/˭ae<@b%A)mi| -D@& -~\>܌SX'L54\y~o| -
$Rg.}ؗ6Y2:{8_GMX{mTqHs2:p<~
+˓d{u`@BO$oyZۯ
~\p2j%&xo5)BpBBv4gMO/$19g8gDz[87,c zPy)GIS;~͟_8|^FO -[K$FoH]U+Doy_:'=ouDOhM쳻4&sxUFqFTҞm'|ŏe˂\+~I⺊Nwbi*/a}W5<VH5F;or`mb60RT{;kV_MIfpUrsI56M"=V\>n摰
aĔ_I7%g;s78崰Bb,2mᶲ[P747נAս?2UɎpa0
#z7kZ+RN?-gZ.z
OiLJ8Hc5ݣx+HB<3DgX -bRNg$b̦+ '(IDPq4"[Ʋ˺q7]|{wa!hK(C
v41Y3z}u> ^/Ufvw䐉zn$&k1 -\\GQv!&{Ӏ?'n:g@:Ez9Q9t!UK9]gƭD C&2A2&FP7> -$b:~H-lv-'\ZٹWM"wT~ؽN
ZO-0}K!+Ѣk"xL0J=ڜ|MF#M8BMpi#7Op48 -8H㟰!94iN"QDIUuW[3~6~i|lRG2L1Lm ,q%UNfRElQOf7<%oh,LlQ"5V_)gc@X nqj٣yg --Nm3)Ԛ -=VUQk$}/Hz7GW.>L2ҹ:%d^d8Kw֯Ի{;(I<(pt/ ;|WKjjn\\|^#ae.lpt9.Aq2aIgX\b*B;8t= -2L,ɫUW/'5 ZoKB/nĴ#x{pE''AcC&9.dJ)X s;w]&:ht<N0#O$9V7A҈kXrs9Q)Qmvɽw`myV}w|D*Ԧ;߱wR
0_е_qc$(B
p n H2qu -ޣdZ<F*R!^oKg<5h!G\&9;|vZ'PJPpKkU.ll5dUh^//j Sm$YKh=蚙T'ZgT8soS/Ll{2=6B2lvkŝ
P]LRj~LΆv>2l7_:E
sCChM>h,C\/'aquAl>gxY>RD;[Č^꧂&?/~5mBkGђ0a++CDhK$_|!E q%^kVUQR}J}->G3D,~۷.G:#u|y".L~ehTQZ+5M\ͦ/M~_X+X,:P+&0D_E7ZH*-HhVucNmZ/;1Rms_Q6M)(LPeV$i -5$snADr?a Ap4aUǜ2I? -T(HdFKUEg -k6$xi<C3)ϝ|qʄ&S݁qP6lH3"zEOr,1b fID~+CqJa\h<7#VhD{jYdԕ)بLyO3@k,cen-iZ&ulL.r @n}SCwAxJc&|>*L֟3Q|{
g V$m<[\NM9;|H<3s]Ri}/s=^v#fyr:6ADZ"<8 -$,I-&)Nynw\G;@ځ&Ai|܊m،˚w4A/|ķ(d]b2\m>|I|s -|AAh科^o?߳dDik}PQir$
]钒aKJ%4(90}MޒQqrm@4l\eBac -&dL١z?seѭ -C~ڍR} H,OνUDP|8R-N)aDn"չfWJ66R_3Myz_ybR9{p'mzNF6Jmc1r\iGb͌Ӝr*Ԓ;jܠ!c.A
u$UF^:RK.嵌TFl\qr5`XN_ >D]w*' -j -W ۭ!ak0JI:9}"f*AOJ\Ԟ?bg~ -RĆjg -X&,}}O;8~7&@+k64b-(qfXab~n;kսnCI*_GmHXqZJ~ֱ*FgHs75 Z\#SC7t:]8TK2xy7Di5_脤#M7 {ECZUW}@%o;-
VC^}jи-H|.Qzcdl~P2j?JϽ0~
bˁ"_X/2Z=¤!HS*QkP2O>d8yPR -l-f/?kP]?3Kf"?c6wBipe4>uTxZT_yciJ&AVb"e -d۹>Czߨ3Kveu-D8\Ä2̔b0C}_fa`xc -$ PQt!k$dY{4NՊ)mʄ=f1ۻy*ȏ2=}ܫ6e:a_ጊ3J\ߣנTtd!ZYeJR@ @Ϛ-r0h7zMK3 NX -5M
K6DYhO+ɡGM#4TQd[GTMᣢrZ~SGpa*)uE|KBǯ綈5RB{~"-UtIg&b+?Bϯ̅Ndj1OG+Z^9ohB/P5Jl~ө("&}M)GUi598s=a;*p|<r#yq1k>V\VsN7g)5r܄Kx%VAO3LBX/g --H:N9*tXA38ph7[H%Jh`(Z{}wԥ3ȥ~)K]ny$SWOtͥ?EzA=k(dfRz5Kr袰 ÷?ZNkp[) 2Iw&bg%y{/IM0`aÊrgoŴB1%KdiGEx({kä <A*})yPA3F*UJ< -)R?,y5)q뜣ݓT]}^ - NT|4~Mj}TE0DdPcǃ)"pj0d -,nbLZv?9Q+PS\ZWMdpGqK.VB\uV;{{|'f}x>A/5ޗ%rIefǸr!Kz{Ctzz]jtD(A0*=f$|pg?E*;J]C?7oi8cOA6¢L -:;1Q -ׅ*@Үa.v&WU}svɪ%.$h4 -;S IW4Zi*Mb~/B6>&.kJχ=tc{FPHaZ4_Ъ '1l`AǕ +.r>gpu<1o6g|҃E4sy}sNȸs]Ԗt3N8>E[5Ӛa ph킨oO$''.W ,J&ńC4y_PjG2ä~cNNy>논dr2yn%r*.A9v۫Qm|mhS_dyŧ$^}YݍjOU7?J[h^ -w0)f襷%raPd-uގ8b5o;YT/Y
sS7)^SWPt43O0ض -_f>Z|Mb
ʀ{Ǡw]7N\CQq|f'SeޛGGӼx^0ޮa#IZrԝPK҃ۊiALn<H
;-MPcAHS7@bYT0ku\'573
ӣx+8J$墬l fBKg|97rE -l+}樋>4DSnI>5]ޣqj FDUnl*(_PSiZcr4ZqA1@cMf.~q? :c$8MJ$^{Ǥŝq;"˥b0!wl>xU(0~"{I=IϭZ=Lta>#%i܋Lyp:r/J?~䗶QmݐR_PB:aj?$3v7B>P2a<0yKN_сGYKpSEڇbw𒿢K2ܨ
I@\Ga+&P5[8~+E% OۂR:饏o|"X4wCt/&vǥCY$~'n l\xewM|_OKi(.y5(I!QG'zJprd3fFtB,+ 9_x\Pݱ4¸:Xc9( E
h@OЏv EV!FXw^0G -FHKϝb(
TwHut}F聸)
7&!N51}%^F\-<:d[@kgOXqRS^;N5ۂCP;qޤZ,Zg ?ssf jWK)@ؔW+&x!nc0*V^ί#kX;K!k-_"~[NAYR](N7YSϾOiF}})LDS?O5oyK_LAh< iṶ7'5ne UMj[䏥B;鉁D`谲wC%7k @el^}(bwJ\C.c`1$H]?Zi{\^P-}Zª
(=0v2-v؞W;Hn5+
*<[;;zBMU-S% -gsqap*|[\AFuq&GgӘ;N"ǚxa,-\ xsV=aقӂ?<)s|4(ۀS#[j>lgʭӕ9y -/?3<9kgs܁#Z`~JK6 -B,yvsWes0x\5/WaՔ|q+D@i㻼sx3aĤWpVw>~naÚ'qb -@`}ZJozPL,
SBSUҟ`tJkK2ʶkp܍*K -!d-wrc/~ Aj\]|@Q6
f-HrUB,V a ݦtM%ר2˚Z/9B"7Sk%$RBB!tM3.Wzfḁ<~1y-"OQP|g9{\id7bf!0Z:[<RrջjާU@dVz}uJ_B(BT9aN$=oP/Xz(o<>kźK+!/LDy5<ÚwB[ߣO=0r
5{-h@B?"Uخ* -kpd+`se$8_T0V3qBAѲf3 -d+,LPِpQt%XW43h$;4Ch>A6 gֵѤ S^vŏl");^ Ŭɣu~3;>k93,[џmʘE6LI$FǡOOioїܼ*@zD~mag<N -ϚI{e|nE0L;VvE DK-syT)W~#gcw;WUŕHWc6ܸzy_]]YP4ϸ(נb4BX=ۋvxM@B۟B/It'ӤguxGжjߙ8Rg!e}:LzٌK3{m`ղ{[rv<`$+qRٹn*h$(e$ܶu=ͅ4, -eoA#E|)DT*]$8xG(u/t"5i86zBU!9?aV +/Length 30255 +/Filter /FlateDecode +>> +stream +xڴeT\]5 + nww'K-kp
<v'\:}NQ(2%lXyr*v6F,v֦ -c V?06pIbOKD6ո?Hu+C")&g Hr{ iʕ d0T}Ej"\e_!E͍)_:݉:dn&fٺн{X;Q,]J4tؔZٛ' neoHaAeXHt0k$2Rl|az1x6^{~M@cd_A\D -J^z颃Ʀ8:=j -$JEP~dFUCԷqkKirVm%W,1(eV1]a>IgŸb<Xx)vN|Ϝ Seu2sWvP AUz^LR3|gi[/SRCs :I*S{(J&WEqi߷J-&r-WiUÅ[1B!q$(6F(hF#',ߟX՜$^-)xͳ* -/Rl.,~0%<tέbMFä:~ *uc&V}iQ>`A!ɇ3w +M aὪ>B5hdƕ}ӶBPQ%e3kb5Yun,)8rcuN̋vCÔ 71]<3,og!d?->vS2=^MhS̬s5e T}{!qN7l\x톷m0~!xR?&ڋArDXd]\dWTgDѺ}(IoacߵiG^QvĽ@Z:%d
L\7qEgN+NeE\(?h -+,gV5)
f֔1bŃxdo!;!P[43i!imi1an,4kD˻{A?gXlm`v\:0hB"R=P?t_"sxI_e(ҎPщ |PEV| ].E<]X%~KkZzpᛄxqY!Sh=69ܹ1<uvMt1uK}; -va~b9uVSmF*Z:2>7K#W]YV -ͺ]N[)yjX4@-{52N -3 -uf{y>#jPGѬiawkNܧɕiw,p lf -Xn]'FJS0BL^swk++Rfɸ):8{Ɨ+iA2&GN@[L4*ތQ0U\- S-fP$P[zpzkvIZѢwpD3PKq7
!tVg? K^D*RH'&ၹ&_J>KX/@f3s_2SvR}'OQ_%;#Yt`kiLlm~M0^x5 (da#C`9H(\@ڷ!1! xRׁ>_N:/嚫[q"._U7?MW0_:W]iv8!Qm:{:_
Ҩ$'5''䷙M4bQҰQyu_A$1-{재)kbjV7R~ǫN'U~4MkJr_ ߑj_# --gY -vw";>yEj4vBȎ UQ: -{V NOBqrQ}F|qӏcKB~`y44 -P9h{}i??ϙyjt,N̓=[+B.^Q46/xd9L%DddNT27$!gkXï -ҿ+d("髶x,2qNӮȐ`Hfش@^|*gt^wf#7c$oCRY nBP>4i00F/GJ)Ku[ 1E'qd_ji6w"h-Lh>G6ziX;EhB5N1|{&N1APPӔA~tlB#\?Vo";J,}MS7;sp"C6_VDtv`؏rw,W
lIC;Z<yF+`Uk}~XZ/Teq0t -v`?*(fTF4OWYH,H*Vrj7$RqE**Z)"k#s0LShӆR<CT0/U%:(bjP
d%/,푒`QAl`-W8onzY]nQ@t
ζ8 n5o# *rnp1lSU~eǕ'0%m/?1VT{e.CW^|"fu4b=YW-_p'K^1kIW23:ql^;U'BۭelMm0z04sS|IɵWZ@٭\ɩWVP˩0p?{U ~s'%Wg9BL^x[&h"%rrRcr(>5ǏOTk1Vm؉&h!2xc%Wl@xB'qK[vJ7ˍww7ƅް<Kf8%GB1NU
s2d6}y9E8PüXOs$<A4Yw/M-lykʼ(c@JCcG&*w#esb.jMLb/5{39· -8ʼnQWQI_[IgAuIwĆؚy$Gx&|nf-YJ=6[6_yQX -]Pme~gQ[@C5+ȟ8QfAqGS}hy -=1<XRm'ˀ'uj[ژǬď"'(1'uV?</*Mey!db
쉴*L.7I5+YؓMOtM+Ə5!ZC7gw4#"u*jYXjV'vf,cW
D(Cq+kBu0kl<ʮeCU_he7)%_L4C#6wf8?p&K"g5xV坸?'PYЂɚ!nmݳb:u#*RevоeS'5":e1Cz+ v]WG7 [Υq<X ǃ;UM<LLy90t+>VR{D-L/E'ӇZCZ;{up#91Sg&[kv9|5y!2,GR#NZ#)O50rr]u'0ZQ9ޠrtnϬ=DqZ'0B0 E-[[Zh)C"cfJGN΄}kw]<fԀ'A1;$=nbl{hXK)+]̺~<}
GjWPx;i8<n]vX!҂dK[ -;ds.R#M9-#dҪl77l:1qENCl<@7+?y(&{e=A)5J ϰ#"_/B+qIse\LA.&?*2{x?ZJm{B+0Fn)px W -D"ILB{Yɲu +1G3lP4q9:Xy( +0 +eg(ع +2jrųeuǖDx̜ +pvT_T_T_y/OuH@ύ߳hgԴ4e"ohtݲ䠟_ (<)sb`V +\Q˕o:LJ*>m9"-; E1~ӄ^K*\2wUv=DAʪ}gBE&5-+1l>!9/9;VkixBs2Rޛ:{]7Q}$5j~m8燴HOt"my%?X ~]tVܝrۇV$t3:HiSuwj=NO/[kPӿ.:z,sBۓ^+7XF7kP~jk]|%#->j ;NbAh*z]"-hT2[+Ncj~x8sK%2ncc@і
Sκ.&!OlBu%C:WWsh/i-0Y_uɳIO>sAH$|5r¢Bh"ÙpXLOOCH5Rܓw9g}͞㠚Ąa܌ԱWnN7U-/v*1Z,k,$7{jcoLdz%\* +ڽi!⇂H&\=nܗtwW07ped'Gc%(( +=-/5_ءΎ. +=ך>4BsRKubG +U[z^,վu^H\)r9ێT5?N藟m4bu#6xگs. +d1ޥYky44)| R;Ćzȗ):2K *f"L ]qX_}jg2Gb[H=(A̮.oˮsDkF̺>y"6
R*kOTZh +O>6+q/%.BFU[]2S"媯(JMm
CfUŎ&%}A*})?nMGdZQvFLpނ8s +HXԻ+f +eavUxtGu2H1O{3Fp0A\dCp})m3/v?(-5[93Tӏ(ݴB!x+c! +wqٴVxYV֢X=OJB(zWq`Eg4[4i"*n;k>" bN+!4"T5(`h[@`i8^URS*ŚLEqWUw^e\?7zd +ԞɺkQHM<b_v?]BHi+ĿӅ4ӊJB%q̵q,W]_XE7KT[a1^:h8 >jd[oLEYV |X"( +S^֞3<ak48 J\T3i<{"[}4)Ѯ%}Y~o OkG5ys.q?D,lp>NTDr˴)ib"d12=eam<:簬̨UA$tEV&@J%=3#a;(Q"qMhgKbJe^ꓵO7t
|undv^'Q.˙o*]5gu4.& ?MHSڑQZbNuw:;~S]~0WIwk?JzMUFH9 +~]J`qqCwB x{=9|UQAQͷ\.PNEs!͍/C 4?`؎~FaO)jK"mjDYw8@Y%^S]yvȥ,wA2!Vj[ѽ=@,#Oe7$J +Ǹa YzJ4xⵍ*6"ӝ + + u?
v}`Ec~x><]@TGnGG[g}vD-`SOU2Aޭ;5r +[TqK6C6~Rνc(8 vXwƢYg\ID~KqyZ~C 8v\~DrItlNF*R\'gS/sW&r׃)k/iQñ_4 iE
Y&>HPG(T18jcj&,q*t1Mgr岥U"%nYh6"}
TMxҶ:_&
"3K\aI֡ŎϗjIc +W <nu Sɴ-ZMS̛P + .ZLmK<PR +Xqc9CHI keIԎv;6V%:\fs<̶ +-KLON-rQU;uwX`&w%ɚ( Z=k0;ЌLmK>i9iJGG6+lL ^@edvSS;1LJȅ\_qo-4 +dlGaɊ[˹>m~y-EoӺ}))ܚuvN)nFn#M2l-Šg*O`3[>( +z_5v?c8WmFnǧDm͗'+W*yCOj }3˳zvjJH:m%?wQ!iUiɢdRJ
XݙT[jW~O+
F5ٜZ%%pսWr^aJJ눴zVQk[c?2=elG
i_ "a"#aܩCΫ/]D-?}U2,!8ceY\#wwɌX<זM!j ?/ھvu%RNS!=zЌQؙSWF\laπ=
Oe~V)(rЎ#UDM1+pP`q~AM,rkD2y7ħShx6ƍ)4r#kFo9Hd8
.tRMk_d5|!I+Ԟy"W"v)wAeh
FMH?J'J<+D5So<uKgCAP/v>lü ! +&mȓ6SRUSM-uwڶ΄Clg
B+]2k4<u O
Scyit/>Ꜹ[ς +c<k +EPmi4·O/_-&P07>~ĕ9Zl&K͓wr%6QшRH_xyutI'R)%
*9^RĖG6'(s4^UׯNj{m4IL;ak%>rBeTXbqsxscj%ޅ`)NV_f9i!/UJR)ڳpCOXڕHQIW{GKddޛ}ͽ +]ogW2Rx Q07 KU4XП~t4hҳzJH|(_>;rx8ꗱW/f h."v뛚Jڪ웖Z#?H>$`S&9JGR:e=el4(>ju"?k>*b&K"q58P"&+ ++裃>`5n,_J6+{N#|c[Vr%!".~ʞRxtCN#sZxjjl8l"łO>Z%BE¡dx+_jJT +WR]&KTU'lҢ #j rg;#0pJ9.& jpIwcGya,bع +Tpx +wӞUyb~IE;YlKq'״nBSm4b;g<j +<D$ɫ7/DhCbF+ -/_E.zX)9Ja#-^LCjRcTQ J3ERxtS"=}DFc0~t"f H#kMuF
"{#j]ȔPD +|!
SĮKq}-NdÔ::r{Hq'=4)VQQ
`iϏ~Ί|n4j֫U50xrYT]3<bifcrF-َg(;܆=QXH%_CЋ B&WPnz6)'Jabd3Ȼݴho pNXCB"A
P$*m' ӿham%=KAP #܁dtPՕ¯zDm7w8{Z~Lc3jFJT}Z"a~Vʣť^.zFʘ;VZE\υ=V٨yncFGp7bo:fߦ~=]L2?K +Lo䪘#<oYЬjaCZig>-quj)QevA);R^L0 +K\t0 +Wސ)r*Ș|w9I\QӅd+u3t* +j5>c4}ִ6b.Jf-5)~Ǿ&/'Rݩ1OqE5XGѿ10Rx:R䴹a)>Gr+"[f z2+pkؐ2(7ᚳUq蓱ҫD@Q=&(00:qxۚҩJOtYD=a쳤gzU-Ņ^bҀo]IFK/@ɺk\.&g|61^[ܷ(*[QU330+?g/-~7nW~09eEԂzw?!HFqٰJ%rcrdL +Q*R,nq,Y_?#TegFd|w
@[ +*dT\Ѧ>zo'ThT2uA[涊o@uñC#1~-l]:x߲)Vf]Z=t9>/p}<~KxF-r 2^aGc5MJϋ9tŸbcŞg@4Ve_Pzsՠ`9R>-\yڅ()gdnUzQLo~x0_[@ +%[kkS_!7?' iO +;9v#yCt\z>"jR]!&U>ݙH՝ItihSW.(y7|Z=ϋe,}w>#YuS&rk§3QAfrG+D8'q1/|[`bNƅ=QDPmmVu8h.á5ȍ3Uo8#ȔWP7}OR.ކv_\`l7Sim&>\J㧒o_R%0F{S\9܈mXF)\#8r9& +ܺݸXHP +ZLz>ب/=e襲b
yLW+
R
&,=
c%Z8S,lGs}MNק}"\AM:ƆJ,~\n?LӬBu)"Df)Dh""|*LW,@]n&!QԦsm<Hm@C_O;ITqRwMczdV{o>&}UK' !~,zƕM5s1lwbraQb2a|-M)@Gwso4DiMwslH9eEBrjjk5+b'}O'x4jqbY0qRyG#cɜ琡s{d>yIjƋk14#<ka6'S̱ +&]Cݓ +}%q'N}'XLjGYM3R}Vף7:.U5}{L RT_ƜR-M2/\
2#&ad 3vŭCLsLe?4LIXifI"r92l%dgm/P@Z5K-+/0:rl""n+s
hnNpD25R/^%
Vg>"rn?Fb:UX,PyW'S~O,q
D,2b@(ȫv#اrJGH5!ZUZ i"mia&z/_0r%`>gQw$ +TU|(Xw#%4mش+QJLy 2\8{w8GojU.졾d*w8^u)_rkR!fLڍ.5d'N՞8'0B0Q= +(n<LZzYnwQc#\/d U6YBzEae0
ـ8ZRx*Bߑ5K + +8NM8;߂z^䏫t`І|fNgI, 3Uބ̲X2ɼqOWs3L"#K'6f'1s,+MKe?EӍuwqal[dz熴|3{<8bNvRjݻ]Ndݞ +xRѺGy}ThΥX荾2BS +-[ +3 Ӣ!
kpGw,?}<]]5O'VY%<Ϋ/GPF1V:7nبfhDz6`@1hVV +wYHHήI滴Q
]Lo돌2d#i-cwyva<
7v(S~a\kR~!Ns_emȑu
ܿDhbm-@}E:+#sR^c= +"8E+$A1`Bs#u`!7?"2r-]=ꭁsyuVv<9X"v*qyd +1\- r!]M
cVp{@79F{@ [x!Z%gVUf[+Bv3KKtɽeƣj60yOf$T_ч>ZdL7)wkΡyTuy_x7xh J + lti&?l1:6*7Q8D^
Ӊ{q1A;
MVJ=lph1`!#Ιq{ֽ2wz;aeeCk# +dݥ5/+"V/K
hrQX_"{[x4uZw#UVMJyw֖yEhEK%Kho6 hCly`ݺ3SǮmZYU&kWBvjoЯa.)g8=[A +7B렾C
=`'`Q)VM/R|WbMՌ0zd[b,>-;.vZwFI +~{tjͬg'J +vA,%L9w6>9α@}OFk'վ{BMf>zpB6*50Y!ę Tq]v<u(9,sM(5[`&K4fs'^{Hd>y&`)xqv:SR1FMW[^f [jo0̅V1Wu
ӌ.G7CW#}I'3ӈUO'}AV"ڰ:վ<̚h)NWZ(*YApoDyiEY~r9EQL(p!IU~ʎ + +v3V17GOʣqxvd50PdKRqAyAZnh_c6@hqsUU`Hg uc.G3j(J&N7`~ Y!Iʚ3h<syu#|꛱\ d&,{D`z=p\Nv9Q{>J'/dgbK!&j_d mcڶms6N۶m۶m۶iV݇KR\A +1{تӉyF7L^:E *zT<n!W{8\dQAY`6JRa+edޙ5?(8s$\IV;nߒg%H +\`m.GHe/&vHm[ +ovMQKB1S0Rl'kd{v`?}m6L@:X8;XCZ$!^'\cҧcw~;I +Ci5hmZo$Hd(@5~vS\ScR|rz\^e˒Q;RgkS^V`^PYhmaC6E2'h6#K}]
ʹq0)1 u!*릺aq휻8{~ |T=FhQlxϔϾpeߡj99R:W{VCMDGv2+ią_H2q_@4yн%v-fm߂I!^!<^FJi:*&*zMV}2[4k`oVE}ʱ[Vӄ1`b:@4kazJx'R(mIPѣ +?ؐ9W#\}0 3OBFL<m6']!Z7=p ˃}ɳZO"N@QS z4]>(5DWi@[$ٷD|(nؘ=xKLjU
Iz,t ˀ<//!,jrn%&bQyH +JK([1{<7B5_-@*u}˿֙A=)C-x*;'P g;x +сz6Tq7"ɩ0 `'V*y|UOV`iX +0-03 +=iGV|r"]5/gH6ROTr +5}0pzSZ
M,mbNC?=,ج
xW&9{km@#QovCPL|f^7<-b}kJsQVR@z)i愍)M_
f36NXiw̕QFRdM̱' +jK&z߆ՠ"4Fg,7P;M]UgTP"H~cr`|xp#9E73њD}p$p'lpGP*Uスm乞ڪ=? +胯oe'86pKqDh$0o0La&ͪo7P2E"WEEj/qAubTdň8/_?.F^Wo{sjT[[9cKf1%k]˨ e$`} +tkMmѿ-S%q +i1+恺zHM%0@%^GYLaN$0~rG9EVB\/#){9njh5S=Qo.e*Xi˂I(,QTNTkՍp[5o4,q0Qvジ]J@]8h.<PWT:Yrd<ε\|]U5oψTzIm"tM +'\D1tmWFZw?}E<~0y^_V6܍cU1X%?(ą6P%2Ya8&ل +kMir@h2%ۇuiT<<U7#[JBpMRa*2gU֑q(L)Hĝ6&1ӀF)Tc +0Oۚ.VY8Z1aCx +lpd:Rq=3F".^:)`Ah.?H8H[);lA`ѠQ`vՌF!M[NAr{hN=>|ěet;jfba߆($8IȆJYw6=8)dA|iA¾K=;"hlOs1#\lHqHPB
\*m3ڈ]0p;W*L!MhxxB>lB8 qЫC㦩Di,6켣+N?b5.{łds&Ֆȃ{3zo=v@M;𡎾eu3R4M>(=sL9¨NI3Y8s?H E]%FrHex>ǠiVr6\Fu"qUL[;%]} +;~^X$G~O +d3(xȴ5'7mB5C*\)If}!LD@k( +(dhpI1T +rPǚ-VЛ@=Ӫ!<tqZ&V ^JV.`JWxl75"h@ lCMܘt^-:*)OG}6khY~nv<P_6ꠂ1'ב]`;[@>~h4O?t_Z"u3vM[ƌ.=MfEHPAi-&q'jyHhs3{w}BCtҪdR5dن(殙#I5}`R S +Sh!)=6$>mߒ/M-WVë4> bRLy>-!JO CFc +KI3Kk̆zՉw2-^TZ
Zg +bI +
![jPL4;A/z-N-:ЧZ
*t+CreczR06Rs0ן%r! 2ˉ̋TE0jˮ4Y7+*5LUqK.zc*#nl!Qc+ӽ+N>RsRv[E{Y24!:yeb(yZMл9&.ONuSkeLG{
}xYRZ^<X[#Y`2g[Y,$캥)<XbŘl+X`6rS3 euXo %y[iZgz)AmEGT{D%DX?3,c!0Y堿U 2;nܲ^#C,psn/iֲydœ8Vm2fR5/MPzT(n&(Ѧm^L(ѳ}",ojŰ%M $4d\/35?EWTrz6k-`)B*0\Rj~xM<ȢPɆTfuy*vMbYF߁.am|}h:ݏ + _w#¡q~VH` 7yk1^ +AZ3G^#K?hcӌlB0;yiRYK2jηyEft٫U%x=pA=/H&Y(ZzO7,q_v^DGσK/%b1ooT;s!&(M톞e(Ŏݯ:z0֙ + V#grC q@ +iLKe0ӆgT3הȒ~VC1PܷuMȽ\Y^/ӿUbY!?Jy+(#Dwl,&*yT1Ω{b- .г'" `b;V)cw>0hKW~`aQ"+ G7ľmߤpؠo>% ԧs[f]Ğw[bc"C?]Z
}?c/e[9d!Y l2>E}<AE#@GCߕLbF04yM#JYE49yO y^q01&ޫ|GA ҥ +%gv 219}5Dq;&# 2;+c4gJ$6`uJI7N9['!JlUTkn`4%Y
_"0paNxvwp> qI[ҫ5<Q5{r8ea6z[[8~lyL1F#2~HLF٤ȇCܗ `}XxG$Vfw+1K7-)!,vPmcY")YaC 2|ZnIi^~SǴ$Z1k)uGrdZ+3u֡q(LjL3 'd~Ә~<M^湛c:w\qIzp/">ϰ<sxǹsBTTj(mP6Wm`oL{?Ba93t!s}EFsOL#?sJw.HۘA^3>$բmxzS{VO#%UKؽu*Va\+=̛2E>=EPw|f|Tn\u +}^DŃW. +C8ioR;nYpT2'M"QVtx<xMN[L9曗PM[TZuV0[DӠVOdQ3.߲ctah=E\Pe{@+?9ճLd|$RїA~N'Q/>Q;1iqfP4H/FIu]$A +nL(
eE;aT#Bmyõ<$J] AP +ǐ$t?$PS5uZmRt˙>G8
m 6:v#SI퍦+~4x.;*#6~TH)ikgYa
z`j.#WW8,oͳ:)0=/4]ʼ$</*sADt2ɿB,VײMQsن*}bfǍդ #EM4'Ҏ4R. I8ߵbe&9XANxأ7dN
Ded>$NNv4*j:
w",ljVM%E5cڹ wp
DyRӼ*RO|afPQsa(֙?Q^O..; +&{SzeVʄ"vF
EIp\!d/כrU퇘"C=Ϩb$YҾna%\MF#A@79O +7J%O=r/"0%Pe>@QƧ@,bgNȁ;V!Zm=,ԃȇKE-z솠Ě@SD96AX*'C->4 ƀ)+YC8%0J' ɯ`GtzHÛ_
3 ԵBɚd|=A VY, +~w
WA,̯Gz>]Ȯ0u蝣M>fkMKl5g#QnLS#6(l5;g`3F@L|y/
aY/Q#7s1~Qiسlcdt90wgmZMUsɇ."h>Ch5݀ai*UL%<MߓdzJqcR\@_#tÆPw/[m .,ٱn"LNׅ̈]kLu.i,6aNZ1G +:4<p6tmPyQƶ$moXpah%ԔЇ +J^eT][>xhxaLQ8!~ہay߱0;r%*d +*=}>Z7ZJhjkY|}:̙D,N)W3ī7K +~ϕ0*jGv\<}oWIhLcm)Ծ(q _̳#nކ
qV[e'ٰ챟a_rJ_?]a8Q%9èARBq[.]f`Lo@#֭r@ +ZŻ +QYƔo48s&%Ak@t=#DC +\arOx#7kCl<JîiU̽&Y쵰ݟ(wu}Pad|=dz+}};ZA>k:W(yc +a" +%4G!txC4=ŭ<rW43p'!= +Uv;LPE8,BF!T]=b;0Q}y@vԤ:Ց +f,Bި$G-ݠg(T"#9:W +#:^oj&X+$#E#'D\}-OcRw{m'J(NCāPpcWTuX,&8໎_Я[Ԯ=9ɤTcqSr4^sݲۜ n'ǁ. +quͰL#.UaqK`Ƿ.dz!.n&`y +PA94m +oX)NкXHvNPȜi9|,`$ @/ endstream endobj -897 0 obj +1071 0 obj << /Type /FontDescriptor -/FontName /DECJEJ+LMRoman10-Bold +/FontName /DBMOAU+LMRoman10-Bold /Flags 4 /FontBBox [-486 -295 1607 1133] /Ascent 686 @@ -6036,144 +7252,134 @@ endobj /ItalicAngle 0 /StemV 114 /XHeight 444 -/CharSet (/A/C/E/F/I/M/N/P/R/S/T/U/V/W/a/b/c/colon/comma/d/e/eight/endash/f/fi/five/four/g/h/hyphen/i/j/l/m/n/o/one/p/period/r/s/section/seven/six/t/three/two/u/v/w/x/y/zero) -/FontFile 896 0 R +/CharSet (/A/B/C/E/F/H/I/M/N/P/R/S/T/U/V/W/a/b/c/colon/comma/d/e/eight/endash/f/fi/five/four/g/h/hyphen/i/j/k/l/m/n/nine/o/one/p/period/r/s/seven/six/t/three/two/u/v/w/x/y/z/zero) +/FontFile 1070 0 R >> endobj -898 0 obj +1072 0 obj << -/Length1 2482 -/Length2 28199 +/Length1 2549 +/Length2 28509 /Length3 0 -/Length 29672 -/Filter /FlateDecode ->> -stream -xڴeP]5k\ 84n܂; $3bm]{}TIAd -{I - -OH0w'#'B6#~+pv -/y#gGKw]fQ_IP%{1n -@0e׳%#tMq{WA/gǀx*`#;|RV{1/VR6X6s)JfE^dx;R]#cAO7r_NL+9Ɖ?QquҪSǰb7(trhf -$_3M1AbaQ6k]^B,ΰ< -8ТgKA5 ECWpdz5@mzv][;d!H8V0Q+[)\!{-YUyxP9"&A5'
-n
rrqdIuΩ>T|>dŮJybγu#Е}N1T:5[F9z0vf9rH:tرADAh}r5n;q:p
-Ś:=K͠k(?>NU[%;LPA {<ԶDTA$^):%#~?_õ/}
'K3dAJ>S8=ɏG>L/ -}GiFc4=)%&>iRQtr1|͊71I6:_}?ƵNɵנh-!}Ƅed1q9aknfKֆomJԪuΒNT#
y{y#w_pLx;{_*RC$Vn#-ޯ){ DŔBbs9g}T.J}^!'IJ@[QeNƿ:tk^ -7ѡ?q4Py!8ԴJz%VwI'50[Υ1e.mZO -&i%<PYyԠ.Sj'VbVs e ×\%#u̎gM}"%ԯw\2ǟQfe!kYeZXS~nyYj2uX}ITKS٨&MYTP<ΎsA/_KƻUMRݢVwOB4'[^CWWrW#b9Ea!% <C~t^pwbhV4}S棫.?/5C"En:؞L|1#hGi19J*ҸciA!YR3F U.Ma8c'RG+3:)D9Y5k^!tRZ;SjșU:yk{e&`(s].28#@azX-mS;tz 6+įEBBdn3r&בne>Y(\CV'~sJ5kD>IQ&&Cp5Oh8<fy<Н%|jtKkBXԭǐn5BGLCpǂmQ%&L1UN;B -~C`X_c^*y^hHH(D\ޤ/0O`]CKamLPC?pDY7r^&lr5OMJM-wg@7|^` -7b"D>ULK*o:1r8F$aoy0$TyVK1NkN^T·P2)fKIY(K( -(RIA3N+7
-bhQ -愈zD{L#y}ݩ)|/ͬ
|ʤQ3,ndϡgBs~ݘ˥OUl(7G-oN*gchSqqޡ/2#"8#7بvǠIC6Bnd(ƌV!ܗ֫b[;so/P%o+VQկS6cEH;#]KO2t}+
'<l7Q&fEʿ^
*ˉ<$tCU=-09%$Qb -46jB~v@^G2\+=(k|=_-բb~j{s$}FoաҢٽY^-yO;"3 @̉q*zek:!"^9WuAi5-G<Kkߗ{${ (UGh/% L^ă e~ ]6?5{O385:nؚ;?E+LY^K;?ji8cʹK.mՇ2bM\jbDfҚ -N_hF{ȕٸ+tNMƴtgtBݥt!η -}r{դ14dK&_R#(b>4'w/U?tA6"jJ2[WA־,yMb -i60|fBW(QF] &GbO][hy{ -<!YFs -?pN׆1E.Ͻ2dŚJ%lm0C_ g=ԩvr KX:@xN$rŘǙ -qּTvQMzVZ6# 4?8dҟf_<Ɖv0S av -|Ns,s:Z$i'ٸ`[R") %O`{TФS5MUOK]$G4ٚC>7ۇb+:DiuZp5BO"߉{g@l0uOt"-3hԺr敹3vzd皶M-$Du$INTo`VGO9}|A(>\v=6{}Q1>pi\{'< ͛+k|Fnmɮ~EKc=(t.REOOu&3?^3&PmRbfJZ5mTp^c8?"f\0 -~<YO25bZO2A*I}QҚ[ -71tuQa97_B&B!le$qXZR(DTAR%>vYg+jt`M>,~Jiv鏂iTu374RugBMVFk`Ym?P.YYP^ 4k|(^ޞ qylp8/%1.2aAD,{`B3uض2Ɇ8v)PeH;">t:MYM9u~˺A.??IC^IrWy}eݒ
AGGgwa ^t=ᅬDRkY&o˘yU_1waJE5:{ ?>Ow3¶k{΅ -$a%`Cj"?֊94]WVِI_zy!B)~)kxNd3WQW\3@UĬa}zir]8HR2Zz`;pWkw# -3$:`(XgkB*Dթ.r9^d tszuL|3^&ّ4~09',OX4}+qk̭H%̧׳4KdBIo|{Rb5UV[=)of,.m鼶a!,c>f4 c/٥5(qE.?|m* {AdpɅRCpA>4ZVtYY1BLsIOyQWї:wiCE\|yƼ SO4Y _ Zňcik"< b]0&6* 1WB.~F?M[KTYYw,Iȓ((jaxf^u,k4ljFõyBmf#fd!<W众$uϩ㪮(<"MH/ڨW|
|Tfe'w{ԠDwlRm-lOG5LնzG|؈DMr2sn9(d[$Gȸ;)F/'\R&\lB -/If9{7R7,G+rCgi61$Il!z@\pȑS -F4'վv`e*OOB FްÏx4^
WNok29MH03bPjǕ%paz^Q*mn -{+ O3ߕNoI?c2#2^]IZ0=z( -Tq\݃tMqeac1.aQVfiG -wN1ݐ4}M*& -j?9^ -i<qsIk=hLi>/Sl4n5&@(^b|`2#<}E(zag_CEUhARm -Ɋuf`_{&} -jϷPggjmBj*K;5֔sp|fW$/V< -FCI>YKdWeH<W?ON<pTMlO徢(qH*di #!%C Gu#{p{aQ |NG;Ͱq4.x>!IJ:\[M<wvwc
|ElxS wP/qkms(~Ba[s`J!&H@CbKn ZUn<WpM1HU֙v9$@Gx $QH}c qqBoIzS
l<([=Td$+?sʗHKEרլ-F1ςtj Vm$m'Q4xSZYR,
Ow
0V]{mysL;Gzm,gg*ǓGj)*9
[2M}֠vL4+Ʊwlhg~($ʹ:\'_=Ç˲=~6:H!Gc60}Z-Fs"EO;V@5`wW8- JHzvtNݩs'B͑#Yx 9W0<ʄNy)Rۻt7gfc8џf ,HI Ѓ+9"Azj+%K[O<P6j&P0>ǵ 2<XO4GHiqVö.X.`}|k1mD'Em;zDܘ!PFOAkTELk
(?U` -Пtq1,9SZ"D6ԔjPb\=r -el $Iɥ@&[+%DЦPrؐw=ۮHu -R߲GFRr{<s g
č.\.Q\GXN]M^дY`r@pvz+UhCT[V6#weu'#BGWB;e)+-y2v(k}*!q}apf]SaY0c*,ĵ7J&?lw)4NcZjs
~\/|C෧$2qx
-q7H,qGF^_DubR_%+3jZo~aTN̈gîԶmEzID&)GC\YހqF*18SJYѡqr -_NJ.8S(]6,kj|D^>Uyl -*^&+@gX{]'>p?O9_V|TbO-Af=AػuL`}Tܐ#DhY!TTj[Fw7뺃n~"(Hx;쬋ȸZ3>gi2-abeШC1xDR{Glo#&k{C$-zgo۰({(GTы_L(<B' -2?6զ z}s!6E#cI3䜿l\K>,fj\1n`l\@/x`~Kg|*_>HaɊSI*K +'J8T뱓 -F$|utw<W![QFB~8ʄ=9h0%UY,Ȕ?S] :M~#ν6uޠ@f66bYw*++tE,|- -ER
kju怇ir~[ cꃯNKѪ 7٭r*U. -ۦv,j*NuZ}B6Xtϸ$?cZ.И[LGw<ީG nKS.%=N1
D0&&`S'#rrze`a9u\ނ+ǡE L/ol{Pz\瑢Dts?2CuLugzs&T$/쑠Ѹ%B()Qg6%C|[;OoKAt++Uk2= - SvRCUta\ "Џ|' -8oJSfRq5Bs#Z-NptxWZ 2c` gSѪ:h:V0)S@o{a]*sJAi)ŗŮj09Quܲ}ѭQx#}zܸ9< >/
K64ٻǡ,X,3PG[hHd2zVv0/v~b:ʖidnc}xX*U
Rrghms}朕H]z;s!W%'Ç"i3 -2_UζWp6txotx94 6ۊ(NtABeE[2cijfiUsbjۻ#b(K=ة7FJ_{fnP5$ۮ}S4%`|n~|؊l-NI yу%u%rUM}O.Y^Wd˃_MyÞ(njn;]c\x&GYvHRf:ӳSpHZov}sUvB_( QM3c3ߔ`*p\?~od@>81e3sK>Үmlʙ -Uy*mLJEs~ʹ}R\Et]Ķ%]OS#Y}LW -
qy3>RzKL$~ D- -==asīADLOv{*b"lp"/RyDX?G2f٦K5]A.33wK
\2JN4+"Q=8X`C\|ie^sy#MڸdmOPR~ -4$)1H-%ay/1*ǓYuS[@j*tSF^+̻b-\ƧX̫tΞDO?Cwt7|͋Xcկ&'ؿG[ș)vjPg?=D`fz;rn/[Ԍ=WiMz(? lSt|6a|~?+.2ԧЃہ@XDj$'cTml씇XO>5~MNy`6QL>z/_G&ߺUR5.;j:ê1f -n*?Jyv=@f
-M8&7y3Kj.>:vy -ʉ5tz3BT -alݳ(gW0e|7՛ 3x3%}<wtG6O!Sd\!BCKLDp1(fÙɩ6o(zCbS/߳nMbi a/T{;갧hɴ'"S[.x*w$J@+>=X.Bh|͕{XD!XݳZx]h:WMw -RW+KߪbE_W?%qU#
?oUB,u MYt?Ot军..DUL^#~BɏœgbH%Li( /'iBLY}.GzSiwZjџ&9Q$t1٘e8z6f{#^{T*8old@V
Bhk ~VBQ$^_Q>tM -:iB\EQ#;F]=;]w 5Vѿ$Vo5N%W4tD]/0 -a5Q,a!%At!!7Yvif&3hq
qHθeTS;&Ze*QIB6"D#^Yx;o#!LiH -siL<vnSYݗ}H.SM;RTVK(8M+ -xLQa*)2سdsҩ([<Fz?hʈA(Z9tI~>gC]{G}vr`,NM6ɔ&5LhTuXV@?7I`1;lmr*!AH/,O\MG|$xء[mo/)_ҕTGzx -$O[zF;>߾ -[fb!@Gx%0H=iKӢHAWr/wB:RW!\/:M&G%'F/3K]W~OQX_AC!D4Ӱ?cy6)h\ebTP4[dm08|#s) -)=+{88l:2(s(8ueͼQ(
6w[>{Dx@6'؛7{3Fj,BD79pM!aKd=n=nX6DBbBt<*"}<OzoTxSڙϼu{y=+Q=%}%6#뽞~<yw9GI% -pt$+$~#ɞkh黺\Bx|ɶgB<QFS12ͩli$9v@R ?%p'*j/qc ;\9t/bqV$~}$^^CtR8{H;}mXG'Puh(hDEMҩG*g34R㟽Jtb#w<.I)hpm(e(a+ |Խ֙X}˯s1kln1;LZ`4쮪n/rD]2@'0K\xM3<t*gր ]ϛ2xiZHFj|468t%lpuFfeAV7}E@f҆vah>,;#kdҔ*.O/-=D%Ц~i@h'hPP_귶ơNtdṿxAwMNvѺƈEn-1Ey>łxmRq|27'pƐ6K&
ƙ/l@<j
(6@E6$)PD=i>jD~!](!2[&a_|&q(|R^:gRzpgGiyYԩ$CM,%jCzzշ;md,rS,VFdF/PwRI{0NЋ= -gԙ>ZS#:Ytϻy yNEսC1XeJ`W5srW,j}RIa>4*'<)
de=;XMp*92̮LB Zr7`I
Ҳ+c9 -"x~LTJTca@t0\@!C|+ -j1+$-!́
TbZyȐ&ˮsqfaΡ%U|cA."GDmP\ - îmƌgTV3m(zUۏLxk쫓7L^M{%챋jKPjmMQ,:F Y?T}81ԌeԎ;[c4X4>-l
ɋ4yFAeVtNH3#롺19kooF)wU)icT<`9LS7@]B7M4Q#Ew o#d*sQٰۧɛ :oi'9+@@Hj] -GD.3{ -\K|f,T=Sz80cTШChǂ,vH)T5}v#7#W!a3a'TeШyv37m)^Hme -#˾B^ !cl'݂l4B%Nr"=KN,:J+:kr~$jGȊiIr1CG - -N>LUBniD?7p/|&pX!p
n- s(ޑAokJG%"+ d4M̅jp-٬39 -N{N3gͱ0ZBr`l ѻ9u]p7*U&pHG,죐RKmIE?&{n - @"]}*g_1o0J}U.SR#h)_Pleɐp9Bkzǻ0\-b%@4%u$Pc
whO|i^*!9տ'ceώ,$H]m<h -9ۛqk -;FUBւ/VM/|D+b#'0+
MPoȘ -L^о8B?y, ;#[O>#/}ŋnGU;:/.EI/4sΎkxֱ.fN#3}#FLyG^sC -6 q&;|<ȬHzKMx6nyC: -fIpMBn~j]] ]{䆬F.їBQ|f{tܵx 拣zÑPYo_ -B)Օgds A2Cqri~Df][9 -)"r2aK
GI-w-Is,v˵f{szh¼^ -yW@Er
@NBm6ug+|釦`yn}V -OEy+Nv]?a`/[y_ǥEDFm:f~:g)=3F'ś4Lk)ΧԪL*0CZ:qIIIGI1a:7G&U>'j@w -8V ]h!+_TP80'DiΡOR,&ˁ1lwMw+ݮЖ
j?Y(0Ta - *=78\?ثG60M1]O5-NUu2c3Um7S[VC> Xz+dH(Y<cHŅvɆ__]. `+fX٢TU-~` -|&*ABdml\ʢ(c6RFr<}JoA&O -y~bW+<aCK!M}WuNUeݝHA))VR/L)&KD<z䁭J܆ؽɁm^q[):=~G OfT]ݥ8'$~Zq:3 - -yk[aFsp d3N|gH,cQGR(qϢuv2ͅ@s~Ay)di~{ -H\z/n7"qBJTUi*C}FfbMm/Vja<Vٲ8ѯG"yVjh)].0E;
zg).-͝hMKf8
ba<Y]*"wf&doMm%ׇ:WZQ'֒cUZV)JD~OMyO;7#K5 -[b;ӳ"<Ɣ}ʏ<7u,f| +-UuCd+HSzCǬ)weyV"&gťl35s2i[5[magkk\04XxcB"=<&6+Eb=P#㈛݆,#jsfpwTt=H{7I!Y=N-Q
ƣpPrܾJWLM]ȓ"Imzi/_\ m
$T)>i 'rJI(na+4XsTTq#T7[.~*\NF1*nLHcg_?t:g%ӫM} G#T,n -q -TC[a߽Y*wh{NX[6k (g56eONS.G9bEVbL8ĸNc
iɚF꾄N\D1BBs@N_Zyx@?ZROnUG- -Β;zb_ɑJK7LʸiAؒQEy%\{A4Q&]՜{b#TUjDK -99? -: -.ה~% -AH${g4۰
sVBrYT4dϝ9n -%9
DQSWDzˏ/Z|=-s\~7S\6hfﴣ.Z=^!syAN=uStLm
S4
-9rjބϹI@uDV" 5`S9(-}ׅiU[L-ɒC![#`rv
-XW]qKT*u0P\lj:"鄱0?Bh֡NLÙ -Klށ1Vm<@V+lO'Br:>U:[(CSkA35h.hҕ<bdN3cُ|E^O[wL8b< -r]mR[ M^P&DS'
_lÿ,q|IQU/=p= e[L`g7sWtr|j#ݽ -4ks0DB=6R8qׂh~&?71sϏWW N:3e*GZra\9B1;zcGC3. -6(d"gPїg'^<RsnG+#,r
`L=uȖFUc);aznha7O/(zd~-.z.m0V;=qw<`g;$CUup[Q#5&
fd -FZ'xc}~ -zдE\uYRU]MDDVK<1|[:cV;]9bfL -_V -|jvm'|r$>y^,Tr@09T -(¢?:wѹ\^xy_*'=w
D]2VNnq&~?znA:1LOD -@&B/:Hx+閜;6eFJ>P<+pMJq]}|)rOw%*ٶX]rņ*txZNICjEeU_~97\;<!@uhJ*bLzs='vFr\pUÖMw)N%5 zkpps~|Er~AE_ݶmB&졌@AON2FIҩIN36brPi2c(}wrg#pM/ݠ㩿뮇rjttLP58eeXns`q.d(ې kolgm6)_tS`I(f!gVu -Ե2d٠&vTzղH+4٘7"[^(I.9G+-T -4+r
HQJ}_t"X"a{ (i뵏+OE7_wޚ6-{0dbM [p biOEd1/T.DU:L.mZ@a%¥˒|Ui{?<ԕ;җ"+Zh=؞`dhd*iv]!-Zasvz::'Z7ؿoq.Sv-J{eXwkuG9jFg[X
`/[.A)>*HMM1P{Xd_Yu{vvV$/Pa{m355HE <+zCGRn2U8e=j'ZтKL2%zZvPyܱ?xVeR^ -M?$^6B?OQs*zQhS>YOxgGtA`+Ye~{s$ -8@dVJ|lٳbWeu{]tmз5; -(Z$wK'!WW,pS_(a9#V8cq8t,^10͆!Gj
Nt62F +/Length 29953 +/Filter /FlateDecode +>> +stream +xڴeTM5@4%HBpݝtyg=;tnHAN #dmgL'dma +г2 ++;XaeUqZ(P 1-@N;]VTEPESA + +2 +B J&_ __H ZݟRlT+l-OwPAmAj7K߄mg_*l1VLl?~#Cǿ +7u +2:#oTMTLìd +7>m6!]:a?Z[S=roQ¸0'aֵ!*h3̖z#sn#&:ArcX"kJXD7m_,hNfgckqnZ|l!^-os%$6UƯHPoL?`d]>dtNxCI_/z[Qi&$hăH&5=5IwsZZdMyk,G)G
5J$vrkbT~#8}5XK=E:(rt.|iZ1(4ϑ-!FD.*܁Ûހi4US-].W:zeݠ6d ?V 2h2K L!6XԊ;@Y~U^yz]hqrNpy/Y9sW ?| b +;bqKzf3q3ђ|I1W5ZB:CwL^9ٱ^ʭإ?w8hWV+DA0:b-v+n&p9;M\//k&f`N\P
Ab68(?PRM%F;{?A{xҭ>[c@+!X U|1AWJKBr=yBuN`A(洄 +_Qo-6Y<5ٖ#W4؋۹/SiϏdmd$0gyھV
wR +*oY7CIC
*?gjFmLBysXl/3p#Г~~)D*U3xr/'F6kP$qhӅ.Pd4֑>3'SY.Qjzww.HU IсG.Xtb9O'Z3ȎO#fsL
õB +w8.@9*`6a/[? 13UENv6kpfxijiU:*GVqCdƹ-?\oJLSut2CQ0-r4{ܗ'g\)Lu:`8mg3Gmݓ6wm IKٷI!%e|
g kS&=}c;TDzO18:GkXn"TJU/sѺ:x[0Rkי" Ϙ>̺ʤ/O^$@TCt>ȿQQ}-~ITHDH"nP{X!M&|&bt?D{[G>wǭgt1 B96a݇XHW.
6
sgHs97bDcǓU5a`y{g$;~UiqZdG~:=u15RDScRwNXk}vAv~}7Ʃd⯮;{;63<ܿS͐ +uV`HIy9|U+8N8'1px?߀J`1al|#14or68¿EicT]- +/?lK!G.vERk03S(6 +z_j||^5Ee g2碗/&!L | QVc)iQ<&CRl0U}T6sU[+ idT:"fx=vSQ-H,g[>VCgJGt78SuV<n7v@
96K.^z.`a@
һ3GDžҟu)cB
$g +Ca~mBnPB}
*q4\)WYEq6,$k;pW~p(mZi 8qyUdl6hfcD2%Hq*E_ye]zz6]](7]2|mb͛c97M@WBC\⏑"rx(yB-Gu@ADۥQ\~ӵX%Z"d6Z~bOս+ձ gBÝ*2*d5D8#";SFjuQy1!yW;`!Nq"kܥ&{;yyfy)7\UC.>2!+q}}7jQ|C%]Yș||% +|/UP쾗(Um<'ZBvvJՙǜőao5 +^ͩ+He;EwЗ +.Qشg
g#Vꜚ=wɸW`GdbYf4bdud1Ir{Vq8lB~5_g:YS~%nwKxH˓Zs<Xڳi~÷u6$ũ5bP/YjS#^"ㄘjI9w?ɡx~>RƊCM:x5u!4GwRbSt*XnlךH$ydB>F2GG%[v940-T;)UO`5^KXIR}˲9~J:r,Béhg}HBxuKF/wx"~[yP"6 h`)=zV%ϷcH8CWS}r"D_?:w+$ր+|L e~9,&Vȟ "X +pY$l$MX>I/`ĶR|E}ׂW-4!^%_{:q]ZX\3]ׁ.sIkZ#{^c8=cZn;ZȢ{(Xc~UW+aY}[hflr4S^8w%8-q$5k1kCp:v6_/4PC +o?ek7
Fߡo^"Q 7(Uw(" +N|z-s/|sB(ۃ䧘JYw|5+5Gdr[~PT'R>,;ў[!E!y;RtV#ᦸbR?|K{dw%][ +<]~1{| :&vlgPN^t3?bɰxLES +CZPyJZD>ԛ3|ճ"@o}ϖ嘉fqGF9B
O +2V}4\}M0%h*B(:'SEs 9Qw<0Jm ++B%|)K!)Pui]VP=/ghYN_aڌKZvX)&:UCRK_smd@ͅ +:=8Ҁdv+ +Kexfؐrԅ}m>
jBG7HÕZ4^͡@0@@rF&~ߋhוG.TSe7 sbtjBR99h<w'E8:}q㇋IQו9E{k.@7'JWv;t{@Q>JsG2 + +ec{WK*cwuOd}2ffUO'm"$hr;NrQ!8Z'p^/K"ȶA O-WŨSu!Eh)9xGΚsz|U]*jբɌە۲U'HLSȾ! K0OET6}jRT7>2 Q5g(
E1E/Fkm3RipNUo ù$L*!,t^a94gµya}d]<Rlj6
/Y7hM;j7a|˹:sm (` GNnb9_2NjOˌ~I|~.5`s3"ٕؼ;f8-}AxDcps nK667h6U,|^ F[%8||;tݰ֡P|xs{~klMec!>WlB}Y&a.nC!_RF80*qA K#%v}p'K}T 7~YEr<4!-sJ!XIR"j,ך +{(.X:/4'tYZP:2,>"zeIݞɘ8{<P&}"Ji:?s8ú,P;
TXZb 6wߋ'J%;u']gh0+$r7YPSP5Awe60*r#8_;!~#L>qTת5zhlDsjpv2Vfƕ₾RxYOVYuƝq(m`[G!fm7R +
A~pv|\B~bJq5X07&t78l +a\im^ ;v`_ƺ?7aFb:Fu] T/XԜ@heɼО,a
y;On%{EI}h9;P-(&B =6*oKα"+m"U<ybiuY:=#ۍN/gX;c5s +$;!}VƱ:h'z5d˥LcnI~V +6s%vqYjٕ
˱`ev6?CQY6Ph_X?|7L~EVY&!e|A8@`W~ f\~ݗF8گV?d'}.5}Z>L6I"GwUːw8QqjΠSL3nFLeW*6moBTxCG_8OpБʝKuD։v +cdnF+b=5٫Ni,%iq04͋ 3Uj'm@~(`XxNM=m+'A|&*Dy ;)ѭJ
KJ7ɺΔTzBk-7nĖC 6HG;8ʒ7,Qx]td~I&3<ѸwP0{sdk?EoS^)VoxF[y8_}%2_ƢŪ-M'ߖ4r=5z}-ϺB|b]_g7פ y4]3Zjov͏IΟ# +Ossm=WT) b=`SE؊ٹj0|ޕ$&X^wܘsYaZdmN!%q_HxM2N\9 k3E]% +Xnqm$ZXL)EP^Zkz5HaC#z+YBKviԗtUh2V/>m^db5yKv CmDo*=
(8.~ax˚~-F0o +̍RgւA?K˹8Mnn0eȴ&ë6
`%6)+(v]H?m~>2|qNU|Ҋ%M5sR?ߗcI/JQQ gP[z#[ʫN-uS@v5ƑTξ+]F0tl^3ܥai^^V"x(:;^uC\Ym*o;1jk- 4AT/B(H^Zɯ=m5l{reqGu;+
U~8[(|51EiU6#Ɂ%ՠϼħmC4Vh
>2r%֕~La4nOY6aG$Q V4e1{YmJ{ +g_`њ;hZD +<(?շȫ_d|8k +8/:}+kVԔQrU+S
9bEsdۤU>v9r娾OHLzUz}r^*~^[}%Ɖ-{Ni|8Ͳ8& +$}zmNJ[ʌ~9qJfܩ|}9YSVC\y
UOm^U3G'@t_s}VSDR'dvBkpXj_e4PR +͠[ngG~6i?yp$Lr.I/CE?<3L .טuQ+%iiIлsz-otn7_*<ub=͋o}P0Ō'ңp\_kɦ"l6ƞgCz=jۧjS6%"'Û +82xnO!0UC +pf㇖d/r[C|u]1pTmK<rR<H?'`1tL_=]|k,1Nq.DHmr0c(d8WWz9*%?vmŗnC\i" )j"pVlm xpp^3 X@~99g#f{R"iqNTG譏_gjN;$¥7TvB>vS9s֗K`}winn`fdy/%04P+/%yʫ ҍ4)PŇ1q
b_>vqlr_)M=˄n:}b5"#`f_ݗ*R܄>#Iha=k2~m ++~ +框xWȴ +u/ȝ]&AsVaKfM"jW\C1/VdQW5 O3eJCXE~,VP?a&Lk$6&T-|`;QeWL + #˻V"tôS$#d`3xx%Y"8y8
% +h]^)\E[z'nΟccb$ޏu +<e^n
Kt
K?>Lxr.ŷz(?3cefĽy*|qThOL~wjƷpֵ!z8-g>қn7eШח3a;Z?IG]#5y'{Dz(>ibg.I +>QnpYGFj}ocVyZ{Xرxȫ^>1f_"cC
MaDOGo8oJeP,Z9nMCM$ +Kt
la +˒% +e%O$EhYkR&BN=r++GDnc: ω]NkfrwfB7lz6&/kρh)Һ~oHp]xՀzqy+Zʙ%CVoC sN(0/{KENG:ԶU`!G
2Q_^FyL}xze +/D "=j, +793}ǐ2Kݡ;@~!Tv/F#;[J5T/xiw㎰4^ַN`P+ai$zݻ)qq]8&RŔAG.LNnkhS8C^Լ^%ϴ!nP=ܾ,C/=U9b\,JҸ_,&x
<4^_FSKej࿁W p=0lR\NNӽDe$VG )Q
qrzc#Gn# +o+OP=,L{dc+qyc%n%X$n7lА
ލ17ц
+zbo<Vw3)ށ%xWjՑ~unU#r5ҏ5Z}$*2^C{r +.ANe 6q;%dE^2Vt$othpW'H +#n7:W>[x8$~E6hga!|K`udX")i8 +0)Yh/`"rb5u`w_GĬ6_W3?4f'-TY/K1+O0hCzA$F
jX4L^tO&JQV/96~@dΩӋ?MRrk8g>H +5"gX|S +CaR+=%{HWaMWd/T[CWɂ'6Sn>a|1pwGMw~5}c\Bt3 +յ!ʆ$}*C)G)
7 X!UԞH-"Z
9J!F +Z ZOkOa|R*ק_g5<wf
e?'\Nv1}34=h&<TڀuVK-d֪3`-o/Strm|>UPݭ[&%@tIxL X;0E݆еL|THa6߅7gJXy}]Lǣ^Iz(++58xZ/J=VP|jR4df݄Tu5.٢|.XQXuRʜ3Rǥ#(KҾ)ZsC<136 +w-e覱cS{&|e</I-6Qd-<#ZY{9i$XMr-.ĝ$`g7pU"[ +=*fguRO*^Ɂۥ@bf4܀T5kL5E+¨~cj+x6j#`,!gX,fYg|hD Y +Vw6z `&R,
W r9$Q3v!CkR9vM_#@]$uǤ8^p+WBH1WA!nLhu!9xF}ዊ3AƙW57<+j ,Z%BhDi 5=M$9\NQOR}<='khGSRZ$aΪZ烃Hj4i,n' :Tnr#w,Z(=!,?kjP/trz3I\ѾӪ/j^ez"]}xXs=߰B:uaR>~(V|.LFJ^>b(D
ˎ +TFE$UhT_VJd/cJIk3:FgQ1;Qb^;^P5|x|T%.(vK`@دt|QFt2itX`JFS@_m6ߜspѓ=ar(v:m|67dvP+(><eQq\[R7¨`>/aE2I=1,v" wuhzPjϗ۰L$@#
'(f3hd1Ԟ8̑Ul0
+<R +txTrEF4>sG}膡}kTٖV +S5Ɛ%:8|t8kل\RRxrF!H_e~~9V0ʪRxqUJ&2$SL1ٲ>&}HCǧI +Iɚu-:}xpo]ļ/}ZWSF*}wKݹUu:m M8JDe@knOa f@G7l95쏎O>ϩѪM<$&걤[k~!'1z<*(d_gp +#JX[G>JHh~Lܛ}!75}Q|4JƏ7<n%8sHR+L +TW/lU9apts77COSjW:4aĝNV#}za +*zRO/[)%`Ok+%d$>BDaыnL&V1tLWT\h*Z,(PrgP#ޭcb E+775(LA(Ĝ[^*n~Oq3}Yp +Q۟©
lSu⌭KM@uP\OTgV>mH͢TfOSDn3jS,-G`߾ܡ2h6]FگZDEA%:SK7\<qB*n$b +{Yu\Uճ'ʘ!cqe#{ +MT}G;` +\~(,YDm,0Pzyu3?5KL5ᣧOӰKGQ>'cUqƣlw6Zz8ŐC `͵yrjoG
ۤu@QQ^k)j;+"6P"
|u]5S%iZM ++NyqW7t:Fj0tK
ŀL| =jG-0&䛰W}(qt/ +}G2xL;qd|$ +(#4LPYjvBܽSojIw'MKjLFѺ>fqBY" ،ͻ- +HnP&|yFGuYn47f;Hi4zg_ׁE4PNE) tc3.o"r-Z-*9 ZR~T[
ўm0߰e?L R?(80TMH>ǓsqJVg0#[VZz8ŐC +9FLts3#DQɟ45ōGr}I +}bcS8T_ +ldaIE{.u+JZ|H/8qbpw;MxbN^*rRKJ#bk5Wbu5嬴s EO>goW.{!H9Nܙ3TiN}WOLT͘'i3%<Ye2 +<UF,VX8kHHr:vp``5[+]㺄Hjp ӧ7ONwS0qǧ<;Yݔ'DGg5\n
8zgyR_?t֮ *d9MEkH0w<:10o88a-!HD~
y6AGYd^S.T +(s)V**+uHk6{72Ū
68W'\X'H:[ + +c{*y+Qx}BhxOy0C$8 +".8䩌Ym0m\Gy[xjgE4aJ$se +.T@V'
f`C%|(wAP +<z-H}կjY*ճ|ýC +c*H' 7rĴ?Ծ9cBd2,}^' j("F%*کx/jf=Z.v`4++(霶pWM{RtOXuIU'5gF\=w4DMk1+eQ*o4&늼 +J +"c0gd{D.[dg0#M#juٓ0qL0֮e~K,m}LX]vm5XMV8**o +sl +0;+{ {ѭ7Okat}wlBhuDc.
2
[X`cqK<l?L[GI[9_2^x:xʌ<Ix{`*]/.E_8;K!JUHNi uUTc@2t"ssaG${MONf4=+GJ_Tr4 +|uN\gw>+fIw>9Nj#T\e?i}RG7J}Q7+jIB3#/i(A2mm;(!N\gSiOBJn: IvLm]Pv3NAEDާd̖zY +7-se!(UR8WW*e"#kt+ބB뽳'8.
FYn(r*9)9M#I?.Nv@^#hg/ +VrRn_LngAN5ЭKk-WNڢecC4:5쏠+6p}.sU5Lv(X/RƼ؛@BD[K!3 "$}7E,0ChZ57ENPơF0U.^9w
lA|C9UBru]SgP`!ZTn{/ #41J^S<%ܲYXiF*diBe+"Z8fkk G:C$[ +}KGD4r]'<9"MާkNQ[OזD^Ś16ĎUB(oiP!.E;.`;x@_zsxo]җQ~V웳N:Jĭ[8V +Æ +x/]T1 +:KL^';D"0Lڜ!GKW%&4r`DP]E?Vs&w^ e endstream endobj -899 0 obj +1073 0 obj << /Type /FontDescriptor -/FontName /QVUVDT+LMRoman12-Bold +/FontName /FJOGDN+LMRoman12-Bold /Flags 4 /FontBBox [-476 -289 1577 1137] /Ascent 684 @@ -6182,11 +7388,11 @@ endobj /ItalicAngle 0 /StemV 109 /XHeight 444 -/CharSet (/A/B/C/D/E/F/H/I/L/M/N/O/R/S/T/V/W/X/a/ampersand/b/c/colon/d/e/eight/f/ff/fi/five/four/g/h/hyphen/i/j/k/l/m/n/o/one/p/period/r/s/seven/six/slash/t/three/two/u/v/w/x/y/z) -/FontFile 898 0 R +/CharSet (/B/C/D/E/F/H/I/L/M/N/O/P/R/S/T/V/W/X/a/ampersand/b/c/colon/comma/d/e/eight/f/ff/fi/five/four/g/h/hyphen/i/k/l/m/n/nine/o/one/p/period/quoteleft/quoteright/r/s/seven/six/slash/t/three/two/u/v/w/x/y/z) +/FontFile 1072 0 R >> endobj -900 0 obj +1074 0 obj << /Length1 1618 /Length2 18213 @@ -6256,7 +7462,7 @@ Hs nFxt1ڈ @hycc5(s!F2/բϚt)7!4T5~&.|J,jO|Wt0j{2iX{jkZkK"H+ endstream endobj -901 0 obj +1075 0 obj << /Type /FontDescriptor /FontName /AHPNOF+LMRoman8-Bold @@ -6269,52 +7475,102 @@ endobj /StemV 122 /XHeight 444 /CharSet (/A) -/FontFile 900 0 R +/FontFile 1074 0 R >> endobj -902 0 obj +1076 0 obj << -/Length1 2057 -/Length2 6333 +/Length1 1728 +/Length2 1439 /Length3 0 -/Length 7606 -/Filter /FlateDecode ->> -stream -xڵuwTS5)CEz&]z ! I" (*"H/Rwi"{ݧ*sמ{NV#A%0cED -!TAA@( -@ ->.2ABD/ -
h/n\XfojX# - 儅<!I (W -w$ -!*DLR -%!@X`! -m)=X??4}VVFx bXH -'UwμҀu&NGEQpkDbΓJt# -qҞ͊\L1]q\D!`wIDh$
cjI0=|܁pv
͒Ow_uxm?%ۄĥ~\ !.I7X'y/SwՆ]ҝbg]Qiѥ]AL}&\}/ذLr[hIPAsD -uQX4-MxCL͂^*y;+rꏫ5\87^Wziz5cjU;=-F*̓<Nttȃ9L2qdiO3ZP A?8ZSܿ5]$푓sGuŘC,*MctAenE_<N~kv4['ku^i˭5U~90~Īiyfŝ|ޔAwMbݺ[~OR2^YKh -x2@U2MFi,7!O6߂XYN~i8|SwZ>Mc3D)g3Rda.%GGYУ,^U9i$h_2D2p1}
G4+vHԶY^DZO-k>Pyl|תW\7xrP
T/<q<]<[VL?mohz*\+q(sS,}\ҹINcTmu|{BLq>"5#RLEm^v -=<oqMuLЂ^WX}B:\:*΄KMfnrXz嘓EޢHh\l2ʓ0t˂*V/2WwԆ! mD[ -:b7?,(FzV*Uiy'(Ur_9+\v"Jڻ˖3S"ߞ5N/~6X>5fJ0
I\XЗCS!4/tڥ8b -_{egv N`AT%@A%qDKİ4Sw9mѲYCkELXēًd7 D4M{q>Ck2xA/ch#!5&0jsKu_~CH -U>lޟ]'
i # GtDz`7͌kH_RZ)o -J/~/Mh*f <VU/m"]꼢n2~;N*FSV,kP0$Nn'n:V[Xp8,)3#R`ؑ,l[3
^$վaFSW"7W>pC|흸φZG? 8,eZ(Q-$ܳJ{|Pj 56YE bfciḱU+OnZU~BO$ĵW\IBRtQFTML
JE-;vq7})l4*S} -pnF\)8~i,^KDzqx%_, -KP_
Fet%g:!(!U_Au㯚Bdq*є]`d/ -N#L1>xn/Vîml>kksgeLdڛ+*`,1+'sml-K*9"\iy -'w~bz"X<s|@-l4rwCz@FcNVߪ+7!f<ղA4Ϊǫ:^_fu7W{]4WZht -v$d_fjlWM/~KMtd# -NgٚyE"Ǐ(tngJP'9a;-e+D#5bhd| j@giwR}&`.&<+U -*c$i9T.MMZ#.1qY8#2Ι+Gʜ -2ڇv\:"^wI/-0!WLYoİ?nHO4w(R!ͦM@ӮZ6t2?uۨB]evh˄>uVPLJ)\* -a8>o6zgMɬS t[!_k*=-!H:so̓\ͫ!'iYW95lVL ($I"C{xlW'z[O
:Ϸ\ghBj~PTKO~~cӐ.pCK,?{}0B`n6uQc3?80]}Nf0Ue_[KEKAQ 6 +/Length 2488 +/Filter /FlateDecode +>> +stream +xڵTkXW R`A(IB@
KH 3a2Kj["VhQ"]QwKjdn>y&3绝h/%aS,.D +%dR(Ί)ZF.ݝd+zSr j +%C_B/Y@)L\фb%cx.(%Pg9EdJtv c%Q* +!FiJ_]S54r##AQ1\)j@(1 -I{_ȿy=@'[鱌p&
n>@RP*H=S"YH{8KH vp6IzH?u*ADZBa+OAfq^Ju#@2R+ҵ0,e21^R L0S" + Ƈa;bFH^^كUY@ +eNA!8&o^!Z* +K,M)B!9 0(BȄh%P=b04|<EQ8zTH~R7`qGl%Jj4k$
"bF!GݠqN|D &l/%T +ʨdE +qxt6hz
t
EgX(Px]oHU\dGW_om|=od:`yzzTȕc4"՚w +I#=N'ZX|w$;a:]C6'"{uFw'uZ;X,
[h;-xܣ(}w)gC-|fCp]yB)(~k*tK|ԖcLCTa_5]ǡ?/<C]w>>lpC6sB}}$NU)Lȕ+~.L%ٸb~&/-<:./<QWo_ZXw{oIsW\iӋ&m}ov SM&UR:Y[3'vE1QvU(yMU-Ӭ\yr{;w5,Xr'wlLTOV{[3nL=FwO
.L'\0;|Yϡ<s>;gW.5q<zotrӓ`ڌ3kw +6=((]"쪭/,ZnuD+q:$\JmFE:X+L61ָĭxYY37xR/o-1V&{ +F[ָG6̨l{ +.gϫMu39Xet!϶ë U:w߲T'k>{~SWA?}q,1VRh&sӘ%_7jR'Ml09o9_'yn֚ώvc){u?wٿ8:=7|25O뗎)f0Zv_%->ԛ\jZUr\~m±"s!5S>ȫ)*Hr).ۙkcg;4M]כT endstream endobj -903 0 obj +1077 0 obj << /Type /FontDescriptor -/FontName /CWEEHJ+LMMathItalic10-Regular +/FontName /WKNEQI+LMMathExtension10-Regular +/Flags 4 +/FontBBox [-24 -2960 1454 772] +/Ascent 40 +/CapHeight 0 +/Descent -600 +/ItalicAngle 0 +/StemV 69 +/XHeight 431 +/CharSet (/parenleftbig/parenrightbig) +/FontFile 1076 0 R +>> +endobj +1078 0 obj +<< +/Length1 2043 +/Length2 6023 +/Length3 0 +/Length 7282 +/Filter /FlateDecode +>> +stream +xڵwuXm? H7]J7t;6JCAF$R D~}^};vܻw:u^M`hg6K(FFD@b>H +pA. +GAPP#7~&@80ۄo+GCc粡ha\Hzٞ!PtFjzZfbxČq_g4
Yi + <C$ed@00/ + q|pCq +r + +<l?D|/~ÓGc"?)oI<F?D|~oqtK&_[!`[<)0; ߿QT#Z](&% I#!-H#5<[> +s!QNr>?D,oL'5$UR}>>o:[<Y}_G@Sz|eO1b]&\m"Z5ǔaKdҰrPW
5i#x|/g%Bp{6^ Д;X'*Og~yrwt鋌e6/m?|I|ŸSXS
^<Tz\x՚ +.|D봙AݐN sCpfw0z.%|O#kNx_dLQ}x@++V=r\5+AJ +bxut+RLOaǃ;9F1'gvv-H"HHtr2?z lK'q"\̧o~n9mOb|sr7=q
=1<y4A +fⳬ;`?{â=)i۬-#50pC}oZ| + + +._)*2*Rv2T^dwc2W틂Ǒ
Ϛ:׆DZ_,:uXط.X4
t<2x_,>7Zj"h;'~zB5+{^9f˾0'tW[\@j>N7hbVN*h pk^L#2ۖ#>Tc+fv"!&4Ymd5ITo+zru{\QêvP"q%77^mEB1/zbM`3$nI;3 S6cw_hfϟ(1Uu}/8Vx-U'dw}irKmҝ_@)eZf +s+O5j\8dQ^$oFCq116хWk%,I$KYVwuᡵd[XPc>UpY=E~B-a|iH"TrKj: +>碱VZ1= +緕
Mɒv/?* ú4
rB֟h}<| |۲K9Mݓd +ꆾ7N[ˌu3㫥+vS-3ߙ,dG2r(ɓBsGto!,Oq:ВhwQ!n +N״rHsZިr 2\LF +d{"3Yԍi<o0B_r)f9 +koifn'r}۷=vSCL){jtXZ5B\!cc[EBE~
tCBV牚x^{5DGJE0 g&Em@BX:FުTG}rj攮V&'dmfq +4:m}!BW~{G>m +G +Wnzo(Ry +9Z9ƞD +_͉H^#uE)>Mq0MԍtJĶa+V@JCmw)k1IzA]#\kʹ[@9h" +n8tQkC#64R\ KZRzǺxcej&[j_v_5ElpTc.gCV`#brMҙQgRcW+SV@|$[wY}۱N${]M:YdL +[ja ,0Kd+#K:E6nb;cIؤoE#Lu hGR1Tb==<0mHQ 8eBťmaKc"Zd1ZȄa@RX@%X_֤ȘKO]"~lYSW*C9`*AD,\cI)Wwj,S31}#k_y:?"/4u lX'1ԑ +Mf=`YCW/;lNp#hG_P|Vƶ[AFʚ2-'ZINdR$aΚd5Z|d{~qB5Y"LH]wWc.Q(MHwN;jxوUϲڔ0&km]ai⒞Ta%WX&?mLfmJ
3%/V=t}_}D*&x<;xIq Uc8+yK}W +Bi"%0Dd.l\;!粨gHnaϜr +J"93;%HOUTa}LV䇳֧cF.eZ*yF3c~̘5jSf +BOf?e T#k~h7wV_/L}?}~erlM|tUkcHwغ\ {!ʲєzrGhpV;Bq>](Eb=*R +KRmwU_Q'Tp44,6'q|yaYʋ{p
QUwă:jb
]ajN2Q*<e(P~v۽;Wf'NCe3gK5[9^Ŝtke]H)VP=WUb7}?g78/MU7F찬jCs.>s] G0~ә6y)O^gSGp,}U0P)# 7Ong"Zέn~U0K𩌞Raڞv}22]ڝ[kFLG8CdxTBXx{=KB)k"i@0,Ȯ/͑ɒ\^c(-E k2MT!Xj?|jҒR"gU& 'Y"qQnnv7şC嵟heͰUP-Rn;&[hv2S +G(h#ȧb'Zn>հ!1G羙^yXy~5ڊinݼb9XHϟRQo^̪9_܂bνPɤ%u"+x3mUz^ĔF`f2 !mK.=2vO[r7L70f9Lwo4#H|ZVA1)`T *K=YǕ#pHno_(}S!Mwڝueۦ^6BW(:&>.N}}<ں~Kc!LmP5%]:70 +[(yw~4wT7oSx0^B4"[%Ӑ3pG
m,CGIJr3\\XjCs3n{ ժ55YAn!gJgw|{LQ477 Um!.,)N9Md>Uօ++m!ju^`;K] BLh'c7(Jj}Gnq%<|Q02)W#Hjki̴з%_d+X-;vvBwш6)Ⱥ0T35ޭ\> 2m{Iy(མHWu0/#NMV&AۭcnVsUyV}ҔA1M͝'fk㔯*9F8z~<^YMsf8Q>.a[x<&Sg +K{{qck) x}DAϵWd:Dx8Ll)cR{orIdB1"KP=9/~QR4톆oƼ{d9<emmdO@w)hFъmmTuvn3_<-br81dH/J~,t<?`cG2ldM2W.&ٮt:Y%N<A#.3I`'5nP<8Ds7Kk1;5;.˪q2 +bV{ $gNJ]<LL@w+k.=rNa2yP2&HĶ&jsDBa>WRiFWnSq-\yAi)[ɋZ7/Lw*-*6tR`j$h\sLݚEi)7o^PN癮`(#$:aM^XN3C}Ot}ܡؽ'ۆz({~"߾[;Te(d_3qUi:XT TJK,ނ<ýl䶚=?b){e+㰚$o8q8Zy j)Vh٧RQH +endstream +endobj +1079 0 obj +<< +/Type /FontDescriptor +/FontName /IRHEKJ+LMMathItalic10-Regular /Flags 4 /FontBBox [-32 -250 1048 750] /Ascent 694 @@ -6323,32 +7579,40 @@ endobj /ItalicAngle -14 /StemV 60 /XHeight 431 -/CharSet (/X/a/comma/e/epsilon/f/g/gamma/greater/k/less/m/n/p/period/phi/pi/q/r/slash/t/theta/x/y) -/FontFile 902 0 R +/CharSet (/a/comma/e/epsilon/f/g/gamma/greater/k/less/m/n/p/period/phi/pi/q/r/slash/t/theta/x/y) +/FontFile 1078 0 R >> endobj -904 0 obj +1080 0 obj << -/Length1 1688 -/Length2 2177 +/Length1 1701 +/Length2 2492 /Length3 0 -/Length 3233 +/Length 3556 /Filter /FlateDecode >> stream -xڵT{<TiO5raܶԸFFq)]3f2sΘ9ӸoJ&%[ޢJ!].Z*T$yόmws>s<>c"yh"J -Y@$*pXP>`\ޫWq,+^%HPXYl
=h9,͆
g~e<Pd!LO*Y@aLl824</EŪRa2YP2JI -[ * -`1rӉ ~B.`e:TIN)2 -;U:2UX9k,GsɽwחnK}`,Z`Qwq4j.4S:u:7qOtuƴ'~\>!yD-vBCxNw/-KQ=?$݆t
°(e-xMs.q{/9wzޞǽ
Ec5İ"ߢƹMKzxEoiW䴽yA|P9B^9d.Ӝk:Ji^o;zV
ygiMӂ^JlMLn͓[K&\<dN[ڹ,ݱ<v]W7V=ְ$Bxjr|rKt19,t]a|ًf,Pϑ.arjȷR'/V]2l?Odşh__w5xv -ֽ
B箳2v um;uuTUDRTӪrXӷFlˌC*L^]#aE5l>g:i:,K:,ypISC8:
yg_]Au%ݵ"Ɨ:@Ib~S3X#9|cBSGb
Ҭ<|i({y -KMO
uy
6xOpuΦKnQmLJ`o6Q˛R#}~IǽGk/mVmn4)xzaguTۭ|}'AϦ]1U:Khe1芀:uIkhwWm\7f%%0~>P,heO!}{qGUKỷ+"z#S?jh2xW|fA}kaIQ+M[*q#3b=ЋqLJnܖTmj2E2㧙;atB_~VGdk.Z꫶6$fNw2QGLڥTtȌN^O
9[ƾ#5)b +xڵT{<TyOe":e0#͌p̜a2ΙfθEr +DXvWH["B B*ֻg>f<|tTœ $dh# + +\&_* +""qX
S4 + }& +`s1;͐3"?` ] +\(7`jSJT_x1ddJB8Eb^%]k~0raH"(f]ȘD7߅4KO +9[!AQ7;;7}8~4*m8שׂbש>iIm~?pv:@ +\SHj
#[noZ:O'VIQ?'Ou j\_ŘeBƇ §d)xnlĦ7z:W3/{Bj1]ZTc^<m$Ȅ,O9hQUoU=U 4~tڌj~䑭X_EV{/;|^"Kqaw~jaZhcs%DzwﻭpU>Z?>qzlr)WKGD{yV78^Ș;ٵNؾ%g=}ZeIN +ƕVKnnYn^0{N-ze
0[h,!'[i*^^Voc#uإ+vw|ᖹJFȯԁ8WcUaM=%j9sgzZ*6#n]>..e[n[Dib +EM|hu?߲Ixcjz;9_.ќx)?'hgfoLG\EytÄ3_Җͱ~R,]fr bc}FñqKr>*;O<wf"Y/T1βp_3lO%83glN\˹0xzP^Saj!cmg5^X:x0)AÖTͣ1ŤY^co$CK}՞. +ḵC>!/n8LN;=
BEG&:jõMkUY*;xD*KR}cdFúzyk+# +Z
<<{y0ƕj>zCY~j'}:u;W~۱Tb"Q+7qBk>|}6)f]sZ]'ڞH}_C~a+eq&7҃7Y(Ѹ>Hr"~qj--{BVឥl'u{\gsmp23{6.e{GhF_!'(#4P|{=v=,o@ݥtHɼz0S +ϯ*&==sbuYIZcۥlbIHf3EEDw鍾ހ)GcRX.9+-'b@eDtW} ~4+v;=V^7K\ΎVثȩ5[,e5AT{uܔ,
O)OugУ5EꦷFQ+5LoO endstream endobj -905 0 obj +1081 0 obj << /Type /FontDescriptor -/FontName /PNDPYA+LMMathItalic5-Regular +/FontName /VLADYX+LMMathItalic5-Regular /Flags 4 /FontBBox [0 -250 1349 750] /Ascent 694 @@ -6357,39 +7621,86 @@ endobj /ItalicAngle -14 /StemV 84 /XHeight 431 -/CharSet (/n/slash) -/FontFile 904 0 R +/CharSet (/n/pi/x) +/FontFile 1080 0 R >> endobj -906 0 obj +1082 0 obj << -/Length1 1767 -/Length2 3097 +/Length1 1671 +/Length2 1385 /Length3 0 -/Length 4206 +/Length 2403 /Filter /FlateDecode >> stream -xڵUy<T{OLHB"ka٣t3f,ҢR$"!ijb-zϨ{33=MNhs2ZhDņEQIh0M#2 - ZN$+;8fbNݬ -lņbLf`iK(T& -3 -Wx7<5F
" FPA2! b
J(@X呵A-eaAԵ16i +K!Z@QXGPCg~eͦtP?3Nov<0Nf2De([]=9@4N4BiZ.6Į
a+)L@Gw"}
<2t -"d* -@MlO+,]ܸ^o;G֬'Wx_>qf"c7u0zEU5[N`1KU*hb=7=!>|g}Oos3v<im<i_Ĩn(|$ -0co*앂NE/-9$44E rNy%d@TV)_`y#9( -Np{bEV_ywp"R}+,cH;_dHWVهgBGIoOkǧQW`P~swSꔉC\lxcRO|;Q*^NPj?ʑ9h"B~d]~umW1XyC:?, +kOzL7$a-Ϋe[MU'ԯ=q큔OMt/X{Y 預qlݕaV|gd0,&wQ1aCcTO4[|347@YQjN֭S&CfSIp:y'CSLΌ*n*(Q<t\U{3Vޮ':Ekr\rX{i݅jAOB<&NZq%2Lbu_?MWzpη]1]0"![n3qT|sy%gkױK|Z73ZuRkHYOs+\1[9z]ֻT)*_nHXnSơWX5|]Ƣ5cjF=fPղoQrr%ԧUbAWP>Sۯ7|YK䦷bFy:tަOAsnW/z:#-So,2n.(ױ>^0v顨庢WKHƝ=}Xb<^ߞ;ٵP?F:&1-؝S*2=0g_tDѵ"t~囉nV΅9
7O.o B,u(/OE5feZÏ%doQz7MN]:\ FE^^L)v_#b_ƻNܞ
T5;9dxYr69?TkzrB.9zh}Uetu+SkJ9uWsfR
0Ĥ?:liz%tU!AP9be8jRu5qkrwYͣ=)r^lݚy~E-L]Ok<=l];IBv$a> {c]bP7{4f֭CE>kp64%/?B)Ձv|0C*NWS$E^~o6WfTz9li7qZׯN_]G)4vs託^|fg_ڥ-aU!T9NJL"\xKU"R5$P93UfkJGr&~{lMQA[/_.{z2#e
.'ss|?e; ٭1}bi Xc՝,7 \vuWikK_ ]aDw*\k,ifOp'Jv -G -)qp]3%rxőJ&`QRXԖjE'7=j -W9f1"Tf_)אnuv턔T;S.U_vWt{-"3NT(aUFaG`ְra7K5ڹP%DD-j4Uٲi3syòaoa|!/nrFQ)Pӕ
g -RYjxF.[)Y߸,/1#Q@oOHuU2>6O퇳i$d:d_l#:rrرz?غabQ5c.EG^-ܿ{oJBׅ$\'pT7ίpNN6N6}0QcI39'zVL(='%A*|vZQ\s[C*(,Q}EM{_\31>}'ԛcs^n#r}3I72.z ͚]T!oj)h{peMQv~nn~fړ&Ӿ
2R*klKOyey_ZV՚FgTړvVL -D~y3ZuF=r +xڵTkXW^"jBr\\)X1\%I)eqHNd&LLb +TZ +TXEԊ@u(^zчZZ-*vg2s{~C"ex1AXP +ѠPv2T5& B8P0C)5BY +_KH9ta^ÉX@#L*ħHe̿b4~U H~ȤceBY$e +1D !~"hzN
ق&/p3~r#Q"*BD5AO2gbVX+ial1Nq(#ef cA0?i,ƵZ5bAi(0q\néD19^M=LyBXm*H9 +TNђdže)qxL#yz*?&zd81TI8EK3qz5$D;|BX*dP%Ldj + Jc* 16? +yRIВ% +Z<qyxF<lj75/y{XrU$W>3VQ_!TwPT]/ f]Of+|;9ƾ^>w
{[{tN;M='svn9q*/\ܲ 5~ƀKSG;Բ)> +'sܞ..\ȗ>n>ܭҗq\`pKCNƽ֟sխ,U +3s&k={IJ²wV=xrЭuǍ7}/mOqۻu#}VL>Y^^ѴE1@]w)>&29o_|5lTEU[jnO$T m>=UPt$~&yr9$|zaÄpMMS
GS +?y.uPoI6qIneˉy68/y].,uonb36ԯ<~kߒ)ޯT;kv%NjwLoSr(u7+Ô3uO{l]+_w( +99G;l] q 20~ƙ5Is*eT8=樓䔌z_=_t|üQMNYZ|${,b`m_Ѭdٝ7'%wzLZQ:j}ôʯ yOͅï=b9\0m?b׳jЫ|O1v%ڏߘQqMr-qioc{a(玀.-ۛE=t_N}`ЌQgա2Gؑ-]NHݘջ"yJyoKWX{>nߠ֔
݁9&]槎-MKXTwrz{4:ky_;}yP\|n]Cw ͏:qkJ_u1TԬgLsT8#:vOݲ3O
W|ػW5[Guw{2m&h͖Z%5R<أʈmf)8l?*Apxo`srќuݓfXZMjŮ+ұ[}]Q2x7]/c\+C*S,47n\.;ٮXKzW#!g֬<s2RfZP['*mN
endstream endobj -907 0 obj +1083 0 obj << /Type /FontDescriptor -/FontName /CVHMNY+LMMathItalic7-Regular +/FontName /WJODPB+LMMathItalic6-Regular +/Flags 4 +/FontBBox [0 -250 1241 750] +/Ascent 694 +/CapHeight 683 +/Descent -194 +/ItalicAngle -14 +/StemV 37 +/XHeight 431 +/CharSet (/x) +/FontFile 1082 0 R +>> +endobj +1084 0 obj +<< +/Length1 1782 +/Length2 3249 +/Length3 0 +/Length 4365 +/Filter /FlateDecode +>> +stream +xڵUy<TkOȖ +YOi1cKc_0hkU,}IIQȒt$-ѽg>3g~>9M%
h`hd:QDN^td +9d +B"HGO3R720G0`vHHu3Oc(hi9S-^rsQSa0OTo} Ot$=Q$yv19T@ + -a^ + +Kq {m/~l['_9xK + +uZV&ßmCK+$dah@^VBjHM) +%*ytZ4x?`El~G?T+[F=9'Smd:n=z,XT|Rr]ec|i=3;DN**ʾk:#oC^p;x\uo18^ރ +7_ثr5#G?Y{q*gJ^|IX3hYHWH|CG[ݴZrZEj/R18Ep`sv&3z{gξK`5L (н|myVU[G{}$RxŗrsJeYRQv}n)YO6kSau"Csֶ#)>\ + p]U~ݺN3y LeJ7UĨE~S8{|Yc3[q?\$!M/76%$Xh֣y"`=(%z[^m|6|깏[oO{wu䔯ƕmjbK5f<{l˝jýQZq3>≺?kP}h>*l[h餛bvhm IƼ Ȏ4u XwS^{5;2ug3#A<3HܿuJ!˷8H>|E.A\ILE%j|zwNk:VŦ"Ƀ(;4[e:<.KI}ƨ|TI:GbodOQLE۬XC?
iݹ9;1䬲/Oͳv=ìZ˭zg.V9B;0=efm#lt<x0 LѱU)qq+
QYXQo/ SVD,&Oy._h'2ڧz CI7}_'9*v+ʛ +Jdqb8o@w^V|ڗy{pogy<S +w7x)ކsRM+Fq2#X&/ +rV,qJ;!{[@YS|x.%ƼJ +*K_pDAI(?j5rQOO<~c?:˒Us\>mE/ObE}v5/ɵ{2KX]l!{Ỷ^1mp3~y*
^L\UnyKVig4aزbm
Xo6aX|%,FK]Y0ü73վj%W;hrLt(yZ=2ѭPLB)TCw·j^:)g`]a]E.loWfG5zrgD5rwu.R7#p%ڸ&O^ >rd)[,3'Zc9!kCdI1r;wt߬+A4̫7t<6|;*=7y<"͋
-8n˾_Hޞ]h;í(wvl;E-Ԣܑ&FT~֓ݪy=UyYӗ|SSm̭rSkxm~ܚs-JΉjO
:NҘ?un<kF)wxJJDCưiׁC᪻DjǫԶ +Ͻ.k߶}үc7v*mA;o%pOo)7xpT KۡA:WI˫K#m8,<KWךUoGkZ8K{*`Խ6 +/n<wd\Tּ> Əy]<mnHɘEV%{T#;/vlW8^#Q ^ +)ĝ^YPC#Զv%0(OsMp;F٧g&% +VO|>f{I?׃9z]d,U<sNZw"jjt۷Eoǵ1)KˑG]fo(~'EQ
9ͧ}\{79TT=bVBOeOxWʖeiF/Ro[H9|Hç!>O(]BJ(Nm}Rhh|Z;&ޅvG]yÿ2wo`ǹu#$ +endstream +endobj +1085 0 obj +<< +/Type /FontDescriptor +/FontName /WJMPFK+LMMathItalic7-Regular /Flags 4 /FontBBox [-1 -250 1171 750] /Ascent 694 @@ -6398,37 +7709,81 @@ endobj /ItalicAngle -14 /StemV 72 /XHeight 431 -/CharSet (/k/m/n/pi/r/slash/x) -/FontFile 906 0 R +/CharSet (/e/k/m/n/pi/r/slash/x) +/FontFile 1084 0 R >> endobj -908 0 obj +1086 0 obj << -/Length1 1691 -/Length2 2294 +/Length1 1689 +/Length2 1525 /Length3 0 -/Length 3352 +/Length 2561 /Filter /FlateDecode >> stream -xڵTy<TkZPn/F15&[ef,1fp2s4sƒHm**S6JH"Q%$zp{?9|=ߣA1&`Qcpque(1!Hx"QNOφ2Pm( Y -4pryPXbCpPiF-ٍjFB 1ܨ]\sQT?;A|$.7}5,Gs - `_>#YX;Pp>p -9,y `#5\J}̟ÈPovL@T00Wji6vEx4#ۺ,L9 ̲֩A\@N>[0
,XBCۅ!$ -061E&ҜM$sF-̯k8 2<FkTkwHF -?R)MIfk2uۜ>pc8~>yM@ln^*GK|dyZbĺ.S#7e{i"!<6QeZ -vXb|f*B'Ne<}@vc+Rqs/Y{9vn6~8^of<v4z.yFAͤ~ -lASϮyǿ=7E~\ߣI 7?b2j%p}3սOF\W=l!qCyeZb;xI3*WT{uk-lqc䄉!sED}U u&vIpt_MeOHu Mx?u3Y27LSvPZ&8p+7i8Q_ZC#w5uuy ,5pV'BV@-1-y'rڤ7pEb7ԏΌt
v$In'?;pCMΞσkZE,|ɪoe.rG{{>+DoS|avdC?diN)p{֑}R(7tjǒ%DY1a[[C
#u+VJ?ݚQ#]ku-Bcg$VO;hŤS].Ceoʜ_ܣV)p/'+gKZbpMCmySiI_g.0l$S/_X CgG˻.^lb7ԡy37'uG !m-&p[J_H,^(\Q~gshBE{_w(t_FX?=Gmg,?G&ǨYвtցP|k妕&4Wh{?)pm{K
6mtTɹ/3
TZVɦ -%< -K[m&V"GI-?QU|`1AӤ5wuXV#vYcE:dqM].pLeV:9ӻd?T|쮊^ub~pxOx`^4:ݧ+]4TQ)=,>r&X+lxkMP*˪knEC#˜.9zuFj߮-}>UI×.5e%m6k͙;ߟ?-X{[zO"]2(J97M+ܐYEǶ6
1ƻ֣
u",Ax4owJ"ZL^(pYytʿEG56,*;g</Z8V9#ٗ /2|]lG56ML94gp -WuZW߸'Ͷ4KrM[S%&rTRkB7Ա]5?H^vRcoG<B=Lg?ilx}UUjCr,ԏJ8yu!O<Pǻ
pcroRMZ6,m.a<[IKa>nUܾ52+ -WNV;@
Nˊ[=\*uP k1
+xڵTiX*,"Ol Y6 K +ű`~K( +1H~5HHRH!Twĺ$I@H
1-A:%7VG15SpDD s\h# +q$@ +$HiXxNxpQd2qF№k[)t( L87JStR:U9 FB&)r&TIMwnmti͍"AbLERe$\~. !}"iz N,^z/U8F$EvU@!dŬ6i@\q8ƥ̔5D"_FL'%ѨIC_0JDDϿ;MXpjPLa@m4(14IMw6- +<Jfk e.6GUAB_Ҽ +_>:OTwn[Gqn>tyu+8zW"Zy/dߢY(b{nʓ]vV_>r^"txmj~Z4(i6⯪d%GxsCtRGק~m:ҙEyNwm9Ϗ_eGɺ_vu7 endstream endobj -909 0 obj +1087 0 obj +<< +/Type /FontDescriptor +/FontName /YSVMJE+LMMathItalic8-Regular +/Flags 4 +/FontBBox [-24 -250 1110 750] +/Ascent 694 +/CapHeight 683 +/Descent -194 +/ItalicAngle -14 +/StemV 72 +/XHeight 431 +/CharSet (/e/x) +/FontFile 1086 0 R +>> +endobj +1088 0 obj +<< +/Length1 1755 +/Length2 3028 +/Length3 0 +/Length 4129 +/Filter /FlateDecode +>> +stream +xڵUy<T{/E%4j6uK0sf9cITȭeHɒUHf-Pn[}|?9|AYۡ !Иh< ɰLQ=ѶFfx +ǏB@2Le@d
5`od m~`B SC +?TɝCDS +F(
rv3ȓhW#H~& +&ede)P@O~%Fq2hd:}ݙLon %E'~Q +%tVvn4|{xB.t%GT8̈́G(6!Đ͂F֬4b۔_g8uUUo[k>G/ KRP=ׅ!Ƣ Iqk%Y,&H='B՜P':2*OKx%OKRaJn\acBJ|ԽY&q$QUr/[
+-* mX,]bJθ&ToJ}S6wA~<xաu +n#V<^$PL= +:d#DSlonMcetޔQIAJ>e2#雓|zukp2 +2їїJwUjeM:Tg=O35E? {0 +Z&x̆M6j5Mu/<=H]{ Ԝ VuN4^y쥭cū_6,?>s9Yko1WT5hzT,uȁC+*ΑV\:V?v+$lUjk~S|SlV>#)_a
}{
_OfJ*?omNq&fЊ۶ct-V܀|$M[*Ҹ.B,GS
fwM>'vGz?4\O;f@c'{\5x6kWBa4T#ʜ*̍82R0H$jZY
Nby:h:,mu蕑̴|ssG%0:WƯ$77in6L4 +j9yꎐ)+xڭ +uSLZaŶ`:i~9Áto6~S&YwUhs罉sn3qmh6[WH>K][Φ3Qvg7\yL|ە(s{3S'LؿjiU['־cT×4)ZVPXk>yzٍYq,s>@аϔCO1*;bQRv|,6J~q+ƴaV +}x[Qj31P-OD2"<7yI2&ҧlh+Swҁ(ߐN +xZmא-C_#=;b*Jg3z8ԽaPMO Nr^Z[65oh
ߘ<ig|xl%mf6b'O=~igvOl4Q3:g3_V̈́il]kk_[4"i -[ս}ۅԟKmw
uظ*nPoOEAz㷒 %z'gm'u*eurQ5켼@u.Yu\'>Uz]4buޜyݴ6+͛f
d[`L?Eky휆)ކ 7cQfR]O$y M*BS$y8年#Mdʱߍڝ`?生O,:vZTC5g[lʓ6Y1q#vYm }Ol\fM +Rt<$E7;B6vF/EKt$jLA]"+p|!er5wl9.xcTlxrQ}~yGuouVF܅͝F
1XS?W7'vQ75E/s +v¼GM +%+×<8ylOg$ԝqv)GӻE_+"Jݑz]5bϧ +S;G +4 +YQSrHAd}UaQ 3VFoPUZ#VZU7MomR|)r3Lªw&ej#iŠtm+|)+V=sXJi^q}כI
J5MZ,h=1~azJ +<%1BfEc
l?Ir3(9%p
Z߬q~4˙@!m!\Gtubd\ϧӷ\*GPtYu~E2u9?-h,9O"?{D+ޙ'7h8-iPFFx?oywcmmbehWDdFbr3i|IK#M'4O},(oŗ#U\qشڦ\Ո'K!cRqհ$y+xrKBжP:zQՕ2!ŋydն#ڭ%ަ̏)-5|wq}AGK$a0;%,%פm{|/maG)VI&O)-:DtuܰY?5a:,k(s2q%v>BTi&c +endstream +endobj +1089 0 obj << /Type /FontDescriptor -/FontName /VGYIRG+LMMathItalic9-Regular +/FontName /OEXRPD+LMMathItalic9-Regular /Flags 4 /FontBBox [-29 -250 1075 750] /Ascent 694 @@ -6437,11 +7792,11 @@ endobj /ItalicAngle -14 /StemV 28 /XHeight 431 -/CharSet (/less/n) -/FontFile 908 0 R +/CharSet (/comma/e/k/n/slash/x) +/FontFile 1088 0 R >> endobj -910 0 obj +1090 0 obj << /Length1 1663 /Length2 1385 @@ -6460,7 +7815,7 @@ xڵT{\SeV@*q@)$vv&+xx@hPAD[& D&3V]._'s7<lՍ+?~n%mH|%8`H~4hhSNBOβx7oukp{ endstream endobj -911 0 obj +1091 0 obj << /Type /FontDescriptor /FontName /UOBGNU+LMMathItalic10-Bold @@ -6473,166 +7828,148 @@ endobj /StemV 107 /XHeight 444 /CharSet (/x) -/FontFile 910 0 R +/FontFile 1090 0 R >> endobj -912 0 obj +1092 0 obj << -/Length1 3074 -/Length2 35990 +/Length1 3088 +/Length2 35898 /Length3 0 -/Length 37697 -/Filter /FlateDecode ->> -stream -xڴeT5.]0-!hwwwwrν'9~î.U]U5,A@ir4sbgcVZ;8Xظ%\f`[x
X!
66>$j -Y{`3Mog ;/ -r3ANֶN@z'3/OY - -:Ҍmғr -$oA+F* ^Ht߈AF.oAhF.:oh8!fΐirA8AW[7߆Ub737f -?'q#;$sLP,A HW/ ;[NH%-ASD!. 3g<l\~{im3?<C -gGe lG=~f9O? $ߜ v:!!aG2r=sCL 됒~I2ę~W/pGNXѵB8;@n!:~w/)?_i@vHy(>;$7gn_2Gw%/C
f;_=]RpC*qѧ -=A@|!0!^@{? d|~x꯷_>?ƿdԱ<PQ2f!__?6y2sArpARkZ~ -"䤎C+IB eq)F9\2T~1Kɐ4_C8Goxm2lKņlpkJJ4<&(v<resaq:Ldǣ- N0ѳOz?V4lKjn8[ӑ+.ҏePEH&ѣp]>'j(N,<{ -<ˋY0y]j99t܋r-1[[$(:*4{m%_8Odo\@UOo:͈r#EVjQ*˧j\-^i@*ϑk7 -6h[Yփ5y_u/%}4({_vM_*#o{ö?\)jZr!&oچ
hK6RZItDKKԺ_͗mZ{a˸}xZNW]L;Y-×h2Z(i%juW9ߪ9 rFi4X;iڡ{_Qnr ^7`}b(?/^:!<# -XLp@ co9d?dWy1/J;G8$Od2D~x.ErLM
6i4`vRYRaߏPwZ,f҆/g9j7]%18-<'jj $j.FhCB*^ύn\ -IB7z]F/#a-BϷk5o{š\G|(X\'Zskw<q(
-Eq6\.-&{=<ԓ"90x ^%c%c;nƩ:HRX/L{>+{\/^ /STd!~R6ޙ^)PxNJܧ:]
fѺ -]||{IXkޢ8;75 -.&2ID#`<GYq'VAhd|3ge4 gSfDbXUcTh(=-"vii]jbN1X?BZ̧h^b|kY6scv;jv#"fs\F;jFz5P1<Y+41e8MD=+BPi.RJ9JU\)l11YVK| p -T'A9QImYx9^jJQ4TMMj栗Y#9Ul@h+fЦ(.T'/)I[B --װZEW84Kv^{>KgQhSpiD[$}n#[pȶ9ϗpl&!M^SE6evG -I)_dպA.3IL;_ﯪ[gN -<[ouù3&T~\Չ.k XMa+e|+jbhU)|j
DžbMrQR}dEXn'
U|x|Lw8kXm@?kiUeթXP^yVS(,A(I.t (E!Ͱ#7%}مxM*gIޯCDvس7_C:ԓ-)g)5F^oتfZP8nӛp0eu㸌oDkP?ؘ<\KBLLOc4>J1ViC5ĜDEh#mO -Ћux:Lk=`BQkjW)I{a[?9EW|o?arDu.TAp|+2ʤ8n3v
qEX
, YmTT/^G[gXL5!+͈(y`ށ!PVUJ1K-.+((hh^;Yl,X'4#$}XRYTg1?6WBxQv m2{i[ͬH
7 ,|t&CY߅%Oτ=3YsRaZEw2.S\KQb>"SEwB%i˹_c.]9>&JaTZ&'uXpO+O4۳/[Q)f nxk-"`ӣr-*;ķn.Jho`\3h|7<@qbo^>K -)֍@iuiBot!ZUdPh~rK2G[x`lW˗c9;!
xLnJnm,fk0,b>=f&4'س<'>:]iA\H̗6q4;r`VVYX^ G(n{8zsHH4[1抵3$}$ƫYVhZl&9[w{ʃx"blBzc𘈽=SC0iX@Z%WL%̆Zߵmf6:&2s^hR
sv_1xVAC+`}xGKO֪4ޢ{[%0 -u#
uIg(EwW߁.y,j4ynvpz5IY -`VyR%Nypofף +|v2*La=ߎo"Khۦ1D=OB+؈bO}'Β\^ܣ% -VK,C]Q|Pp*l~[Vdz<#Z|4yge.YУI{[7nCч*j<ey@Xunf #} -wt#@ȇ/;6d6SJ,È5۽MY3$rrְǟD`RƞW,ph]Iq"=K[źmJ 38T^6}$c\in;Ή.r39OsqanZF1뎡akw/ivB<A6 s -G݀R%^&r)9goj2IsBVqj:f!̞z/aibӌ -k!~VeӈSƄmi=4Kx194Cg+-i_:8S,g%_Hkq5KPttk _kRͩFCui$j#d{id¡p2)dI=:Ntn2JD(,qUtޖjeyb?&;%H?ҁSLvܪ87ROg;%{&Nk?4UƇbo -,
2Lm|)^<Dd#ke,_mv5N4:='3^}˪rZF W>FH2A? ODO - -O1srqeSgG=yѮ}EEVTRk yw.1<o5)D\P0X -KVﲼSysb |F<Q3wƷ]6ao_~k_V1uή)s`w -
4<透v7Ƥ1&6F)rfّ#jBe,|L73|PEK
_ĩ³ 4'a [}p;4}hpςA< w
6-O<O^[,41ĝA>pj)ߒ91=\Wǭde&Bibq],LT݉x~
nfz͈<PXwvJ{15e֫9cr
f0*&Boh
۳KLרJ*>j,)}
Ab8+A݈U˷iOkdӝjb|YVX5-a.6}=_{)R9yJF.P\(|eX}S6"q;2Ǣ.+e)5)+ҋe=fY*I폢Yי~W4$N:d@dͷ!˭])F9}k#CzUڧQSlGt/&tPjؓo|F1%3CXJHg 縳[Q]%jghQ~ -7§0^K|4FJqq*-cbt"?F#J67/SOOXLњioIR&>soۃ5.ebbKFp3]^./" -T@}hEr
uc輪amW
A
eםIqPkV:ů 9ra? -c%+Ԋ}ϘÇ|Mj#.qKnq zq3ǭ5ȅT~T=2rˎWp"<[!%@0I_^*syw1*֘L-l5$Ɔ&2YAbN+4赪ey>ַE>n;;gv|Ft_ -PsRȃ9b4Fi^5kR# -rJYqPF*r (B%>jO9^N]$˶8?i&=[JFG$`UDZaA^̨ qUʄd!u?g5(@oYy%1~slIșAe -XB5aI&g")RmMYMu^E4ϩ%B?<mHǾwߛ=C&zSm)-+;(oN65-mf0~ tisu17C/jNuTΠdF$+=iEZ"0RrYg97s<u2 -C H{x*:**ggXl;0h_i>|Zz{ud`8v\>5
c&4YϔtlaTlrN<7I-d
b?>+\VQXo8kX',Z/{AˀF9?!ԯSk/8RDD$" A㐘RWUieHBu}TcP ,e82Ȍɸc҄O3kBWQ"r$G5mN -tj]yئǣ/>M~sήHAa7!sO_gvقȸ>0zt0{ uw]X=prm`H4v?َ]{3O+q` `͈q].3gM6)=} -1W.sqffc#^"*UӒaſ#m(XfY -aWfl:JЀkce<"5~G9C&WraN<ǺX7O6Hl%\#5mYvf^{*UY
Tj-FbKn %˭o8!lu%'k1bsLw?@#U/(O5QmzPjsŲ,6sg6U}jVg 2j9&Qn]#ޤ/EHLddWof#o6P0?@Wݣs4E>,K<8@btIIdnƌ'B>n, -oj;p*~g<b_eb𭢳eFRRMv^`kJ%ײ -E[wb}1:іp?t>SPY)fQ&('N:7G a$D2sd;W|'\{,a<["U,g-H -e_af6L^<`K#2nDXmW"!%PE]46" -ĮCL}"ƈ2LVu&c?5Q$K{dd4$b:TYΐlPij,DB~pGdlOtLO [>٩Eȗ*p3ii(iRjݷ9rTLj;p,ID21 +d@d*Δ6oz-8Haj!j"Z-;t-4UоMv_o;WpB?OLC%/TIoSI"19R,<Zbo -1m̄Vf$103?Ǯ~ WSKrʑf/n?{kOg$&TK6\iꈰf,Ԝj6͐bqn^[$!mAyͻ -ʝpr!F˄Ok{;\YrEae˶k<eQٛw2Eջ/b%0jz7~"y%yc5z¤);ڨ̼)'U -PdkuYTy7m()ǰsP0 ~ܢ;]CYA1c'mySS#<4EKB&Omϒ[bXNX. + յћpFB}&2;H(b8ՋBR-Sv4Sc5Zh:pVEcOOY
sT#:/?¾l%}JN0/r<~
ADT~w`|Ehh"Ft]OPq|j$%ŝ%Lj{J:{a9u i{LG9U,n-4kzZa=Cb)ew<dyke.q"n>ʎkL}T۵֪䚀@(k0E=ns'X}RZQF9@AL$陯:DA_.^E:y<.K?>;جĘEAChȧWlc"P,;>j8OVL 2hjO'sq/J3Y|#r:zt
ޥ/ϋhv6n7-֬Ee\EPo!Wy -l":0=
~ʧԺTSœW-V/6ѡU`㼼 -@TF^$K\pa2Tʷ+{ƳzU$+sA+?<ȤwJߥ@TpZjAcaی=ۏIt[ʫ;C6Z\X% c;O7^x~#|S_BP\^ ʼnu᠔d'HZW*Ԫw -zxӮO}^<w
^{]l5VFl-%ukZδd
.έz<0}3?ba -}6@zh8o Xi|-Y' ^ ~Ra[JoX :P@YxPMdN'0(^7Ew&5UEWk
-Rv7iukF|GRZ $+W<jkjsўcKUȺJ<Km{Pzָ|%: -vwWX2VL;.GEuyۯ?6lhb1 qdspo6xUfu
A(mm6m۶m6N۶mn*0zh3u/仨yzktM]9d"w~Z,P1vJRG-
zoooagfeS\MEJW9MF5ͣPpV4) -N>}oykJWzəgzt/MuE^kG(uݸSy}Vo~zRaX1+oaCyv](%B8ծ9,~Q)RbR5?\<GG04Q[v5XPD9}Wql1՜7No?E>Q<7:HB#bmS{ZB 2#%*j8iR15Ef{!WswrI-<@IX(7!sX%k}gsTy_Sl/ذx+I}-)x@p*f" -\F-4>s>9heZ`QY(l3_y0B+$[\SvoMUsR`t~&gX9J_t$MC%b*v!u<W^M_
PE__ک@$Y?As~zrEl -"nƉ7BF.|7b9<\)ll|pTaFbۼX(?F(.IHg->Ŧ/cZ>ɜDB* --P<vh|7ϽTSfa]k)46ʷ/tɛps##Yp敃];X--G1_&aBr WzǩoT|1ʧz!\B(U9AS=.e4Nz>D#_ݣ*NiL4uiJ맘̽j"E=6aXYj1LsWwWG2N?їTy5uhi`Pā/Mvb^ܷ8qR](Xj&܂n\[djJolN?F ":KkcSσ7qx抦nfwE鰟l|CCMsoD/+MwD,Өӣj/sx.G)m7>NZo7hh|:ɐK|xVăy*uϱ5J ,GjЇ\hB5UfN0b-gASIg)e&5,xÚX/<2p 2Prv {#?)`o;P ->xGZPO?wu
&5jC3n7
#`aO5LLɔh({
{%ܝt9K9Uɿ(s 7io۷3Ydv -l۾juμJnZQ#G}VXc}="ڼw8d/>vHX%~AY"K88X<dNEԌ^D/o=6i!@8}VxX=UIxBVoIڞW&evlgxS;z!_~SNAGq6T$ݥP`3rx-LbaHeui4wsxN9- -d'Eޓz%yn#i8 -!pEؑO 0BHmG=N >-i.
ₙJUD820ܧt?ǖ9g V
0⤻zb9!asj8Y?$-S/|8<n K%4rL՟;Fp_WʠJw@nu#dY=(,1B -77""'@kwC>;lD*KW=Q*g^8ފb_b:.\vImk^ȇ-1f UcWH5ߑ%<sngAцh`1do52+D̩1<.E~ - -Ė}]< -a8Xqq(k~0aD2OTD'T<ϺlشW #<ы
([6h c_J|]Mm+ Gz/8?|07ujnƇ#/х21Q:9,V6
:E; -u5(IF|d*l8jQh/YtdZVyՇ]nx\A}
~Ԃ<p^ -io~Nn3[mxSЂEd;bl=`n`S3KGƎlPS/*>qV,rFTm#rм%EHk>@>_xv\u,7(E䣿טw @NK[5ʨ_"|?ݭUO_ٻ,z)e&*;,*#X
⠇mpٶp6kԤ8fi|Ls9H5?6ʼ-RO#:RYM&
*vokCs.[Fpm|XV9MƁtJ'AV}"^J7ͲNA&HQpnYF'i^37~& \A;a>^zvUyp[fs|-a[ P:kl%d=7T ЊMg.ILClE>ΘۊhLfY+zWo:WJxѳ[0߄aԍ_Sटj$PTc3y1IRTњgքXPm]G
+CW}K`TI@_ k/.XTvo"bz˿D}M4gNX^]nPe4CRؗt;$QîS]hה:ɚYZ0oG|o' 9~N g݇>|#uUǾ(0+=78`@ddwXaGb~<^D~tפ2SUt/^H-iy5[3tQ+j(i%ѻlUS ڜ -0"5lβ=|`r)FɮWgF\4зU:y~J|<hMPm -2KX`pbl`%b/Y M
!
a<F|gPfpapH3Z --%jDuދQ%*fd -YNGv|<w-|Zk|N2Ù*څ݇YF.ctه)_9RA[Vj.<9LFv<*OK,BŴoV$,sDaқe?_@|jeXBj,W)υݧӳeבo:mꆶ֠&.?)0lwIUHpԮLqz$
9v3vMw%wDIS@^Ȧ%#U|/!i;4&qVI__QhJaOćñnىUxf7;A=Rwc9c;;'T}KE]}e#vZrݘ2BUlcTb»bѰIx(b{P)k)^ -i?qg+bJ 4Š Y
k?Nxu<k"(H<h*#)0gpurgȨÌ${䬝pZ t!i,C_lQ~ -"z3ZoM1s@+i/bm'İK8zy껴66v,5ESIٳyj5EI+Q4/ι{&ĥj'vʒx{X
HV^~^NL>01a'<)-I9 b5pB#?m -ҚLʺffM~q_ -ZSѧ>Ieq(LTo8K|o!O0 -o)g-!-MDLYCc%W*~`l-Yտ*xӓ9)n4~9ߜC ոl1{K^Y -*QU]/'bda]sut'Lƽ@*pYXIU4 (&AI<^ra"(U!
u~]GwZu~XM@5?1 DذU+&PKzR-Ka2R>5NȻ|ht]~+ -ɏ^Iusͯ;}q!Ŵ -/pjX|B'#OC%o䎄ݺnPNcߏz|ԟy}Z;]hsGw||dg2EׇU^[E7*?\<WLyD0Yj<' -X,@J⣏XlJǶNmimH]N7ڑ$7%lbMBZv:S\sp#iLAì<Iɬ8l:M[f©]As3v!1D3HQ/jX/Z7}`פ\:oZ4V=- ^k9?a}oLBU_sAM3O~Jxs˷z(~N%DM_<~!,f -? -FMyv^klꔖxA9)Hӊb -a3S -{
$c}_|k5W!ۂ0+d>Pu2g@1}#$JQMv2\K+\b\fl|h%X'=Ȋ$I>VZb}yF3ˌE=x/X0a`|5`0#и=g_l8piVF糍(ڦxcf)9nڡىh-rɟ^$.}¿ýjxz[^)<Iní JbksMJW@\icv*M@UiThW3Y]<4:(ItGnp$}j߸n<Xm osJ2~YQ!?Ӗ
GN -;oGO!zg:Ƶ͔]cs-WJ酝 &ASS{䡠hT&&,t`=$3Hl#CdU6Pm9 RqFwRbNG8ޘDwiutKw+9yT;Z^(*.MH~1Z>mжH*J#)sGf]ó2e-Ϥ=}MjzJ0*d8!fe3FgnMWU0p.#`g_$u\mLӼֆyCE2t%@>J=Ju^5@ɿr4ƲVK-'| -&Z;(۶O -scj t}%_ʩN*h`6i5(Tb XXg}x\0n,]ģqzij_1nEm3c4fZZ2ʯ4I2v-שr -(XKRc0A?Hܗ:By?2mٲbAw&?B\C4BOȝϦ -5P:/{JbB<<C9bwDrt?
ܓti@8@ѳ*)t1D).c1`oE)9z[̭Nf0Č&dGQ꾋Y鲡/g^pӘRmRÇ23vXkK{ͧQ+R{͖mvBfN9Mk\8<S~@A[>R -Fd(f.N+fI -;Jf{)h#j&K - -x
}lamѵZJs>S٘mUs,Ͽ!m͚iy*gk8Q%fOH*+PP.We|^9CF,J6Ub)j -!TkEa|Q.Bg6X_fZ +&£O9$ڻ kp]{ u+zлCp#E_͋ ^0Մ P-hb~oڡxtL677)$`8G)Cx;@A`PO 1$ICZ䟁ӚU0,M*v't | -nQv"z -yGqn|i9]Ccqdp7-4hP6|dE\#4muKUNb4d)_)7Qp]I6 aZ}j&mkI~9#Qva6O~c_e%v -
" -7A@ϐ~NX tN?"sXI%[2,Stio.@=1MV8R<dTg`Md}E9m:,LJ̫H߅̰sE30ޠN#QT3[O{ (1c
v)XͪAx,=0-lvml(C"HԈ:LSj4au<d&cxZ֮#+2l蝰aF)2Kh\9g[ ch G/u]jk u3%XbL -2 X5_U8hR0 *
]F^N ~#aj F0^-$&usǷB,(mȦH^E}W +7C2Blugy\ -VYgkc1|sG͙@)Zh1h,$ -Luh.}TȊX2?"ˍ -,%BfR2(Ñ#iRAH0wi@[f?QBAۊ&z+Ʌ2wB`p/|ݥe~ yJNҜ{5N9K$|"Ș)hۼA| pe+T6²W#6łqe22nMfT >{u0&0]Ғ7B#*rI%rPr`9>
H0}Xbu-G\32O(YY~>vh;Q#mF@OTe7v?
b8:qW(,ѻT07فŧ*|R|=An#<,}̧yB- -U)`]cBi&ya*`L_N8S?bn<m.7nD!/=(ӣTup2y3l}o<a_c0MQAU^)uEq>/Iы7ݽl5*9IM9ݢ5|`iMBיmBބCAoPHIM*Cr|G+" -z9%<RԔN+hlc rqcbMl{r%F -ۀpΊiAO%'6:z#gYi_7%bgrpe -?>r}lM&=N/] -\Q92;v5Wwz|'3:[ϼZaN -hݨ}B4ѸD;@{9 ></7r؛Gt _CwgC,oq -ҟZLÔ/"e\ΥUֵ3 -nð.[Byjq^-
aw:Hg
aUkxV_kLG_EdNHͣL%]} f
7DƄeg5*Ǣa"Z¨lH~,tN?+H
OC/ygHbtMiW
S!Bʈ"G&f`QjZ:y_P [#ȉ&kD00$?Oww:C쮲jS*0*lぁNrk@}/_YeuGZ8f1) i -Ƅ`tїn6;lGWltuY^ 4&V..=Ff<E]=l3g+
FvkؑeK`4ȋr`rvY7+4>\ye+l8T16JRxO2Q - -8Jb+f<f+K6 |]].~*^M|L^>ٔ,"h$~6Ƃߜf -j -_ҐgG ˞pG kr<-2D{NS:(gGaOQu(kr:c*JXz&|;o^:'O3xvu,4ryGՑ4f`Ss. -2+ -}4ȆؖרA*#84"Lv+֮˞O; -giUy39,NDK%UtIbϥjx-x9jئ2.B=^indoӓ!̸H۷C+zZd`!a2BRJDG4yxBogAV9$ocseORif{dqF\璑Z$ωGJSp^Y!3FwJgP*DGT!8пka:m69ilTJQXSD+ -
-*Ҋ]ZeдѤX;,is۞U[ C2Sjl8A"ArKµ#8óU(D<h[MNpV<is.Ċ7JMY -L0<ӣl_:qP*"5{5AaFӴ[mL>E[>k XEQ.ZƜ.z&ËB业nk&zcn\-*UAv뙦]vL19!5 >'}O
gکZ[}ALX.Po0=t -Q*d= ,śiEobń-3W(+vt|*rfW}6['7yq6?<")Cy4a;bL3,/FG'<4Fz?H""9ƓԽy"Rv@:BCJ-35J+.~T141
)Fot]
6+ g<O5f@V0 u;Ëy A`x $LR0
n>$|RVLf>rq||琓^1xmD5FĚ,iBX>2Eڥ5b5~!I[Cv([i#[Awm/v[Cɰ?#Ѻy.iwX -!xj6xvCY'GIA]k|غ -~p7yE:ب{&gZ[F_{tc_?Ųr7jv)͂.i?GD -KhGIOߞ)v?9Y5(m´dFzsck=Yl6]kx5+YXiUrY(?M4M~%w,} s֣"Ra4}JMee/(OM{h7{y9'L}1 -\.33uT;<Gt?ikF-d -/CO@;grY3h$ލnoqei$h&nod1Ys9ǮId%`;I)ShO9E zhrn>_5c_ˍ#D7nhEGsHQƦwҷ܃blYt;(KOG҂ûT (WNJS
g -ӌ"Rf^7`FXin9Ť!Y%H)˽892,Z(}-Ǻx3>٪M)ֽvxXV -hrdOIr< -B܂;*1rL+- J:a>"xkPq̀uvk'+5mX -vRdxA:/@||V|xj02gz-RVMBi&#SY+KWGMUnQ,_#1ZpuF -?8:` -ze&=[64sdARQSdx -b ݳ%ѫ#+mcL'᭴i`9I9 -i
alhwPQ?U^M~xeq Uч#`jWFk^1ve?˧GNܦ:M <mS-w-ُ'[Mwy;h[SVOilCƷ3ʲQcezx -0EwITjZNS2n6MmuP"FXV$M
@@vimvR(d|i~9T}PD0UP:"z&D`QxֆZ?BK86;[cLqmA&3Z|^4-w}XfZ5z_$YL |%:ȐçNYOpV<%P-e)HAFQa&TBwsPSv(#\y2)[La RdJk{ yyZ?~~USPΙrs #d
5mO}J?姖 a
Q/vת1Y
fHlqScK&gYsׯ/HUNZMGc!4= G- -ܳh"~<IiԹ}sC -vکAwXuK1x2AS',W*l̸1-BPL+Rf0rVKx -g3)vhu`-h^pN4!oJ*90iUL% -B
i|T0vY0AYp r%oރe~Kl_WوSHG>.awla%Tj0ۓS mY-e&&#֦T={acg~5 IkK-m\W$M،-L}?bNL`!s`H1H!ݿm.傪Mg컉NjT +/Length 37595 +/Filter /FlateDecode +>> +stream +xڴeX5;ww. 2'hpw܂www@p}NyaU$UVc17J۹02TmXYU6FN +˧ +21͉TxO @P=m $ +"3't*o2 c-qr`m@3m-ZP!l@o \;:ӀQ|VOΠdJ_@?w:|{XA~sU G*nȇn@3?Zd79'/ߡ}K(z)`}m VsqjY(Ct䠟g +?fPK%jSaۼ7%VL\)Hdk2id(,~,m'=)hk&hmxbEL&/m^ͅv2
cMdVLQY]/B4|4zam`D(Kͥ +I(qy2bY?ѧyٯ|tWR$WR)lT3B[y 'I +y.T/ZjFIb~;IyO&ZS]1 +\b5;IGIU1IDW<s._Se!kԖieФ+!؆x+tb'Q顮\Vc7tQr4ǖn}jAX/5Bs)y&zY%;9Ӈ1Y46zBcDh^OH]"CRA",MYԣsL[ݢY#˰.~nUWWv`Enu4
>"QBMabWc?O.8-j?^;:/v.I +&XkH2Uu"ȲKܓB@YO-@.xj8ZK;@g0#ƈrGGphCXj@BGտHexQwirReG=M.-cJa6zDHw?BZM2R!؝_]epL1O>I<3j3F^MN nAoS|9֑7DU1(e<L` +#X90v +jMKPߞʻk'2n;Gfngq. +>x./aqVveqf>KdʷkS1cRF)W`Pda&Sͭ|R9W%nO +}t9;y6Mטe6zTo,F2LtʿxűCy%sehr;J]*U2^.u`B?jG:qX˲e4 #qdxc2F3')<*W%쥒wb?KәztVѰU8r=ܝEZﶢ)>m:~H0{
aYg|A%vSXScu^ Eʂ]i91G4U>wi@C8/7xx*I(V:pw=] +FGviI!9?r
Kνwxи1ƕj G7<{"Tfk+s3%Hd[&9#+qaKL>8"sbw'2v^RcsUv~l<;OOCd$ΨqW=Q%Pͨ +"K"{ϔ ne[q-_5Ms(@[vR_*ʸ|(JɺCk\ȈRW] 9݈]u"2BN4 kw
iltD"n;5'SBZV _RQή>|=QTJA\Xt?;yNhz鍸DU3H0W>QSvN| +K|tT<DTu{-FgIuWRݿԞ4=Jm Zv}bsՏ6-E)1
|8Z(WCp +47/fMi3
ɵ{m7=i;#픐YGVýUٶHn:$w7,&YET䠛Wjʫ=uI>1HHyì!kI6BS8;2 +gמWpJ/u*d")tIcP,&_F%#Nq+.mZ3="Df PbgOuc5/ip?=2`N~Ƭ. c᠋tU%6ۚf(:C +"ќ]C*W>B3^t{]:ٰюzlur\ϙӘ$!l=Q:"eR!G{ri~bKwVe; W'q,1Cߑ(Zev\D7$Ie%gHMtm%fǕ[x*q&*W(ZFx+A?.VT +$9Y +^9\SRe=GbFUAǯ75<S1
7YQ鷃gy!SE +PܪR;f10#M[Z/˜<` +p=6"i(l ӊW]A je{կIǩWߥtS߳6u9S]5O/QQ;!@?өq?F|zv"
nxH*{I0vqY6%R_6(Ȩ̦:o
GDF6G@0סIJqsJc3!(LѨc>%jl
lO{H4oKsn "WV3'y)5eƪۘGGf3o+BoemJ+iEX +kB*?XUmѾ
Scl7 +. *JFӱi)IE#CiCB.{2N +Lt ܷ@?{^2'%$@AH2A5̝j0:} (U<DӰŗAn'zݩrB ^8'ef:nWP<ٿ)-D n5'BSnzɫt/iK.ؿ*y_9O1Bw,8(DGpvdU0 +VQD +LexD"`KHU}bE岉Ēz咧
]lJh5MB7:dV"6`yUkQˁUd#6{ݟRl0CFR_[}T%f*<lB1Ϡ]sh!điMޢGR`96lo![9ZxeDibU>4?GJXH{_1/yTe{zm1c\H5Ws4EL[Uz;0* 7s 5fPlNS30y/Q7tt)کf߲siIyl_Ra#['r?lKDt,ۅL/;k|O'99}508'`ΌG-Pdo1dH$ֆZO%Ѧ|dAjiJS7H䪻eX*c&q RkE3,Zr{?^b#Bܭ[?M&i?L'V9|Tӷ,ox?CIy
r7V6נGS"J0 +JFC^r=@abxPnȝ()f=n\U|EMZ
iq|w!hqܙo$BX->4vdqV]E\VloQڮFZB%[l],NpxLg{I
s,Y2n ~,k46M"%~l)8N#`ð~ -8rﳛԑ`v6v)[a-n}HzƲiĽxWGD$r)G)ϠDZN^34va>ge+n9RM`Nfv2KȠ6#0naBW|FDdZ;ʶ.Ɩ'Sn +}Y'bۛރ6`/U6>d"XܷFEO40ȶ\0oCeQ'7Sp=y?%Q35i,0/+T
!oMY!X&%<MXe6F2Jٳ(ͣ&Sb~7=uL2^y|y~8(m
**x^+Ǵ:O7wKԑC%9mY@wl&~ސ" +59D}W`T l{X#!FF +PNB=G'}G0uvD?2%@iN?lө)[=vH&0Mj*35:k
Ma +w XXHgZ.FA͡p ]Iv>.1ٻ8+ _G$2[.ϝh>0Ej ubsuMnH<yxY&Pm2<$/|zGmDm7:[<F57*,ҜxU7mVv>;7Gf]ـEfM0Qg'ocp[k8͛)SPkbɗrB]b^sR5XE_MET2Y[#]Wk$p?g9DzPwG5x
_ϸGe
C][`{}NW'$a*GE(%dEHčܽ3+/ʮ.J}tHHw81
3xƸKlq<albǛi;ucBioh,,Ukc\%d
~G}>\uiIdR?eyn(=]dOf ]!du^b8xf!'Ž?KVZTp^cr\oN/;TωZanKT:Gҳ%{Y|/ͨMTX0e*<E&\u:f6yW[eF%>v^w-̮W^2_>R?0ʃ؛4n +яֈkZƚ܅iR
(ZEX_-`*z@B.!n@Bv(@s.gZ ќjY(u\oFihL?eѨJʒ%5w){aߙ2AKF C2Z.&|[g] ET&6M)rvT)e(8-!7Λl25Zeײw<CSM7x15<-+E<9NWڔ]nD#y^{S?= &6R}FxF(9nY'EkL6bYUG7! +(3`D!CD?~~knH#gބυrAJB[X`WT_YOX>&KA38:\-s93 M]}DW4- +\;T5],iN L;GMQ7Oc# v4-#خ)HQ@`i,?c;rXyyy%]Y}S<6RAdSU#cZ#<ԌTQ]Fbx϶P1a?ZG*-HkDYC#X"O*W1M7vt5eCE|MaRm&f FSCdd9ɠ*P\:]*߬+w ȗSy$kHG `tr"HnLSSSgI֟X-?| +ԝ4VLJ>h{CGJö́R/ʛv4([~Qڄr)El.'`U{uWg̑wW +zP*NθÂ51N%Dkm̛ۧV<٦W:?:eyLt4&LR$coͲ2d +V2FO(l$g 3hgWbrR\W2 mFr?ŽL 4wC:"<C7NӵNBf_:O<H{_֢B>P +I +֝<SنD;w̚=6;#3I}<b8)eh̵%֕M7J?\LA8\A/x`+ہO6Δ/ŵ`Ǔ@@7ijnX;Qo3}N|prYw\_kkH2Sp^zvu!>WeI´%/Wc +忇JJ$1[p|K0.x
Y-|Un<{(֩lD$,+R;xIQ}UC*]Dg-f,
+1/YTd~h7xϘeJVL.`"-̘>,PRx?/ˮVA^)Jܫ@1$] v+-*4`<dwv7!3*~o^jR38P3m<'KF|d](Tˍy:rc|̲|~v:T);nD_O? ^JP~INjknKӯnBFg|0M'U5.HCrf2!h4kOcPWuN6g36~V6[I<)@C^{AnpH5M{X] hp^^%kvnL>L%Fk^#̚"#b4jt+,}:OqUJ$^ufS/0<ﱅq6{/-Fa06|J(|"$|ʅ/v9e-LCwQeĴ)T=Dzy
b$߂ /^Dq?u0qS7bD=]rc~6)8 +C0'?-/>(9yOEY+oȽO/:BvjIH]`1o5']HUc<
E +Jx!|<Hr1¹29z.=Gϐ糝{$m鮀?>͟pvciX:굿 ]I
-g
gl +l4wD畘`m:Y};wfe~P\*ɓjvODddu
+nk{ɍq{kX0"X<MMN7&+eIFJsE=VgԻ7f:UsVVX!}z_u.onLqQUH`uNtM;s,lLtN֜iX=&T?UM^7f0z!*g!ecWہhIç߭ltA(*6MǧLEcOfbM&m^wO ]J䉜J,ZltkD{tUc`rf1M\&h*#`N2+Nh-ejhYx6zQR?$gfehiB5fׇ]8nh)ZQ0X{ + _|fwb}G=k:Ji%$|V 4x*?-&?kZH_zvi{H},>=-ݞ+(W7+6ZZr3J:IB*͛k
i$A݈]/X"ji?IFX~`2/I7Acp_&i2gdρd-贌Х~H`/,;\l;<$4mq/)g }A0y#qHm(xsy2L +'ػbit?@[^%(>i>Sb7V̠:kbXRqy=kP`7ЕkeU#n`r/-gɛTHEbiZM5cd9%ͣߡ" Eae.nsg-n+5&KYBLmpDy|Qn8FQ\U{
$3ul"h9j2}!_cbI_5r'//[7,<2MSE#mӓ0]u>xOأ=?I
+ +*[ZJ+f&_5Ċw;QիM<K%rXb%~gRDv +pJ}
8UbM:RkcB O\,-SXxoblKP_T a2}n6/g +8ԏB(%f +xjzJ؋RG4F K8Ä-,=̌yBsˊs>B s*\,,F,?N'1>ywͽڱ_3¯Mv_b
@BJUb2g&sCe mMrFtld83Q5U1hQ|&][l{};LFիҧz#dA_T_8 ֫ߊMÒB/j9q8WvdE~|zN(iYӣfR7ʲv/Rw925PEUABE ts @t6lemO0Zykr)fa6]!gѬP궠U.=s6tE$^.nj3R$T$al
-6Ke Zղ~Qs?LU^unFex-8
`}b` MOuƪdGmLpcko֮Kצ\AԠ#=<g(7ʙK{Һx_3Nňp@k/5Ȍ3|]Va5X]@!hBlx1,^ @ѼVG(J=]Gֽ01R7ۛe{)+3p^%Rr>|(=V=Cg9+
YE`v'o +Łtzv +zKG.ʈWf5AppZO3zBΓActO'|oe(Tn]0sI2%V9♩S|JƂ|ls)*\TJp,XUA(&Խt0aU:螽lz'b+3nvrU- B
g/uG`7}t\BlX<tUҤD:'MG%WʎFV+6R + jT= +eq!;ud37u0&ՇT"6.~z +\iQijlޥ leVP֩y!,Lg:F_eNzT3dfˠkrڛgbeyhNATq_kgpc+sҜv(&mm|K?]phT+(d0"N_u{X9 i7ȄyNadžű]dc7Z3g6M: 'Uzu?f.z1mȇ*NzY3OoX$'{` hղV +Hycv6p(,UNg`8^$
o +7PH?H]WzߡT,Gu*q67'v(2a@טlK +G4ǃط+
LDp/ܝ:qs1JBHaR0eǠr +H\\P)n&Tρ- L.lP'fB\t`y8L{Q\>1eMb~xF3Uc BkO9)'H Qm/aTH3H4 NAl4pkK%F,;ha, ?v8^ڰJ2F~WZ-ۨЂ{V,X3xJ +y(2jE32
VcL{mGyt 4P@֧WBfGN"/VX'~A q\zxHK Ɇ"` f<iiEsO Dٕ( +442$LS8X'J5" #]?>Tz
#3h1QfvdD6~Mᓂ̐%oej/W^Lj5d$S3/Jf}ѪM'f[iʳsf÷@rM>Ȩ-8Ί>U2cڇKOņ@[n$P"A +4\)ר; +u+wAT17`+.X lӂe5b"TuXQ{Q{SB wιZM"\Y[dژ1dHY
h{ʸ"PeB
YFퟵP>D=Pk'~-[&^lma/"WRo$A)t7>̮EhA$&cjLjHRjpZD/5?1sbU:Oi I,v45SrJHw8HvU[G^N!Ǡ3ZCI̋qufxz/-ϔxaSPn~9BPqPzHl}÷;e8%Žt}oCd;%yQ`Rl$U%|Ƙɾ߅C<vΉB9ŗÚX0Fe9Q +(ڭ.x +^U{֎68'+P80с&*uHỦ:/4+pi}{:;\d +o +>Cet+͵_i˷$+Colg9/3$BT}O@@4mҒ+tI@-uQ >ldK3v~R>AU?n_B23ڎ؈B{-+$P +A/E2j9=ڒQr/~m}u伨(&ߌڣ0ZF]'SPx>k2YT +LTVоLr)#q>&q +̻#H1<ASAWXîxސLLvl +U=5?vqش8Bz("^hw"9s+u_|VDҨDj!ҫ`Wb9uO4HL*:%Ee!a,D.<4Z5q0 xW$^mpuRrJXөTh7v)]$O/W4]Ds3+^jr<#ʵfȊ'{6k~0*
$cz摿SkeD@6FCBI40Z1p&3)7nF^6cF +bCGҡ +v +1ώA<8^),Cfb*Tְ7ґwn}XS!"8<3osF@D+ޭرahUäEYctxJt"^e!5iM3I5&¿f=}@LԨGDzv14kȽcCc4 >f +{1D^9Ly4<#ZY#K : = + |$qc +cъy +zh-6eGCvyp'4'(Z,wo:T"V~,:V䩒^gp<NCu92AWlSE$Çĝa#3x#J'>wCyJ/}}.8<?!(x%=>BZ췊5^qFq|4 +Hz0tFs\_X3|=5G2XS_Ԇu&Y.ݒ)npOZ.gP~iTԩ҈҈?q4P 7Ey+ڤaF%0@M_h><#_Y
xVwkqpޑ}}Ku=Us"Х`
D:t44[Ѽȕd"_9Pdqd!V&{r/20=tXEnI1vW|!Ml"Z]-+yI^nh9n(PsJo]yHNLe(3|8R$*fƝx?"а%>qU5xCK{ɟVXPI]ǎVw lMB1ew+hR&(/{R0
J\W%mE=ÅsGa/yd&OVk8 "I"5v^'jĶ +O1PZ^'vMՃMQibHρj.h"m dwp1'v$8 <qj"ū2ZB*Dm6[Kw9t)(`}Te'VGxjfhZ5 +,blԛG۰tgџ]+ʿ?d|j1D}`F`rqTgVjO +PHU3$;1,a?wX=ZspHm}255<Y
`7|(c(*[xglEGucF +bCGҡ:{M]!PZ`5,--Z0}>Y^RWOm +J&58܀zКJ-6pOr +42_>ESsq
ڏUX 4k%6)ؚpfE":m&KA-$#'oP #7l葫M' N1O;%ʡx̴G;cK#zB2{dJnMkѠ<΅vr]z;FavjK[SXU>vU +$'^.7Q- +J1gnY!J}=E<0!d b=ɿ}e>'"ڴEjN4
9Sr5Xt{з]YRu;8-U`5 +S}
Z}9E[lirߟz ^y5aid\YY/J<(&`CC +%.3 +Ԫ}gZE4vqʥuT{-ͥQhςܭn +xaݴqFW.u]]a;[䰽*._@۫3MtdB+Op=`JQr Cw-YDlIH]{ B9 0 d2@xr +ݞ#/EdDvHGJNW{gKMC7N(=#{z 7n]- +ź䦵5MԬPIHtx0% +pirq-qEXix"|St=mBUs ii:B1|Sq .q?Tn\Yycxҹ;㝗nJB^o">Iד1(6h<MZ#^UM(iaWm,UEPܨC0q[+@`D*zADpM
n>ؘlijt*6YA)Y5[,[
>{=c`Dp?B9wNҥ<Pk?wAvrÀv⻮[y3qUâȂ]g0;)=jtZDMQ}SD4 XY줮ZYR?v\yY.ӝ+@HO<q4fSܹKxWd"ɠE=c?A|(oӦ,B~8mnq/c-#n̦G<g;%]oPrHoSo_N*髲#a'DcYUT94mi׆*3_e&0!X=!=H(\]]{DNBX-~lU] ͅ
OMn0=v- -NQg~nph__|9Ex9Z?!@)TGHLH0Z1?71_q/~AECR|sơ,v9S@ondML-O\ӺfOfs pJf5e7`W$ +e#)2|-yԨQc',CF^K2gH*G&V{65-wz& +ے
ܤ~LsRp sUYaN(0J[Ɏ9f J> +r0:t5iYLIL䶅 If?ie!ء1aH5XhJ_A'a--0W n"l%%7X".4q.6=JrV-וgit[aVC+X}pD1Ρ+t}ۅLJ\c<|PXX%y5$ξ<A!ta4gɺ"H(Ks3|/9Y7t9w~uG[2<WdqH7]噥]/_yHCGcz"ű)AWƍ0,T'Os#Ir0i+XcOC|~OG
c6D}[;pk
۸ET
tlr8XG/K'f>g?}V)iACHcne;A/]Law]y(+jǁj&_Qp 8W<W;-dkg$ +5 $2
+5Wd\A~ČIqUã1HB|j+9fm8$THsI%FM>Ϸ]~O݉" )oEqe߾uԠ<Msa͞a.*|_-۩uQForҠDG/}hXrK}x|EOb7L -EѸlYˑ)xD@Pv#ͬe洓_S@i +o5#Oy%W 7l%~In@7:6lFM"KrkfWISO$rjƸS!7Tz{.THHT:c;!cTnv19ZxwI~ID]K,M +Nn!Gѧ<҈۷ԉCB]TU)䇩&\ +RDS3 WUt-qE"[x<ŰBKs\` V1_=aa5QELTC}8{A:4Kpɼ#rL)!IZ08/ЈY26YY5xC9lݪ9/xAVOL ŁгCuN +P#ېX5熔ݎ1Y&Ha,&K +'ai?8Z')̋eѪX[^^ ${RQTGLaRGB$r<}!g~@j֚m\$iʑ҄i'5krukl0tu.+"_ԹBŗ: V@?;)y dA%>0&0*u9CRw
Ia1odnν,v۞030h-Q"*XxjӚߌTt負ܺo*6p0Trva:N\ylR Wm.<Pe>㩬}L;4%o*[rգnIZXWi2eZ'~c+7KW>IPMnwQYR܋\VŃ +, +NG|y$ޥ=HP\B cu7lXaurUW
^TT]fI1^LO}&{gϺJhFH:x)q[+GNm^d5q C
U(^ܼt,K#Ɏd:Hm/!N :EBA_Y ++BC/nIz!>ۿݘHir0 zļxm]l\Gb¯ +>⚺\i3'U4(~v,Lg+D1,pMa`>zв?m@i<)Ex@u6.>kG|J>Rvc6v_p-UϜowz.ECTVoB|G U>r]_ў@W* +ߗ?u5Wm{<]eǝ$!."qjHE>Mh9#YWyt|IUl4ҪI_;S' +Mw3q]i$2lG~RCbdd{i;7{9cA%j>q҆n)/%S_DL+`aTMP{fjɜ0 +[|[@ ''>5fb4pwY_Ebb^t<5zufslh z@M^G/77Op74I7· tDKj>mh~M3慉sʽ.钇.k~؈$@@3Ҹ(ce͓^QvHz@A}$qWZX/R}@wǖ:D9I1%Z1%l*hj̚3+L.(U1} +%Ct͏=^iɋ +*L-7flv蕡\J; oHnIȆ!IڕpMrʧY\s}(K泂L^7eYReD#+`ىl ~Hl=)okzq*ϚzZbEˀ'pjФhI6==%
v쿻Kّ@лře- +s&{mj1^x=<e*r)iJ`G)S.2bQ,I@^gmG#G_%B<s3ƂMG?wshQFm0҇9>HԭYF5F@D +on'S2FL$J1?_OY'$#Hl5gssvaؐ1z<iZj'ªQ:}Wj3yߕX=gPcLi+mqP:m_s(\RNXS#\;?*ҲJvH@ޓaU?0k=c y7MTmxxq^ +zN&~3)TV4ꝒqfϹUAut"Q*EhϔFB`0"%{v(@ lN.y@MOj@=Si,&RO;O%|\1l~z۪?n{}c5NI` BECK١
LƭfsŜm˃dy%O(:h/"Es6ӁUmXM +
ʐf+B۶akkXkI%2ҕl6cyL +qg}T:;mKPS߳n4. +V?0$rM>wiCrN"즱#-F[JwH`\WhݐGs9WdK&:sȀ߁XJ˚k`Z^`
ˊ_>2|=ր|eۭwGU7Fm_>(/fŶʠM`ђHrr$oB`$8}7Dj9vexI31^Q-lqXM<mUxo,ISX~5z+WzL{N $[+<b<{\bT9ʱ]#2@Z9g ~)^Q +ƀ{qKzcYjg,pp +u4;7'ҝqWW]bǂDkrE9lI[{YJd&s..t)t֨MZσ:F?>fZq}"r057@ǮKX 9yPB8LO,ٹk̿Ռv5`$Q go/#:O!W ӍW⫒'h[ +=<ULhv!I
1%6R\RlB{P5D(R:rDGWxQZՍșP,[6&npڤmߤZfqőʜMF)9<O_0)Xhkjo +:ۏìrS6T-|TYZ kQqQ\;mv/2Z=&.osN0<\ۗjy1JU gJ874LMs^-8贒
wX$R;;VoQs</FuAh*^G&@Wsc.v` sԷ.makR7,Sp?% +?uzK@(nu/J.oh3Ko9OvBKVyg'ޗ:h/}U W9>TX$^b"%NO!A endstream endobj -913 0 obj +1093 0 obj << /Type /FontDescriptor -/FontName /UKSWVF+LMRoman10-Regular +/FontName /EAWJXH+LMRoman10-Regular /Flags 4 /FontBBox [-430 -290 1417 1127] /Ascent 689 @@ -6641,105 +7978,111 @@ endobj /ItalicAngle 0 /StemV 69 /XHeight 431 -/CharSet (/A/B/C/D/E/F/Gamma/H/I/J/K/L/M/N/O/P/Q/R/S/T/U/V/W/X/Y/a/ampersand/asterisk/asteriskmath/b/backslash/braceleft/braceright/bracketleft/bracketright/bullet/c/colon/comma/d/dollar/e/eight/endash/equal/exclam/f/ff/ffi/fi/five/fl/four/g/h/hyphen/i/j/k/l/m/n/nine/o/one/p/parenleft/parenright/period/plus/q/question/quoteleft/quoteright/r/s/section/semicolon/seven/six/slash/t/three/two/u/v/w/x/y/z/zero) -/FontFile 912 0 R +/CharSet (/A/B/C/D/E/F/G/Gamma/H/I/J/K/L/M/N/O/P/Q/R/S/T/U/V/W/X/Y/a/ampersand/asterisk/b/backslash/braceleft/braceright/bracketleft/bracketright/bullet/c/colon/comma/d/dollar/e/eight/endash/equal/exclam/f/ff/ffi/fi/five/fl/four/g/h/hyphen/i/j/k/l/m/n/nine/o/one/p/parenleft/parenright/period/plus/q/question/quoteleft/quoteright/r/s/section/semicolon/seven/six/slash/t/three/two/u/v/w/x/y/z/zero) +/FontFile 1092 0 R >> endobj -914 0 obj +1094 0 obj << -/Length1 2057 -/Length2 22810 +/Length1 2012 +/Length2 21804 /Length3 0 -/Length 24086 -/Filter /FlateDecode ->> -stream -xڴeTK5pww
N$kpw\Bpݧ{^棳UKTԙLR &6fV~=;ʉ@E%4Y9K -0wpF\ -4t6ZD&8aFYW6o$OPbOh}PB=S99NPmht!bE|#>_ǃ -]V~˕/9gۿ)~S&U"&SbɻFEPY)f79O2X*pMM]L:S7K>hO4a~Rmuk)^&ð'(KkG&/h};).|.c/Pcނv`F~u2*g_9~Cz^0[/Q;|pHna031Ӓ, rڑX$d%YZ5C]ya0qh}tKcaqƙ6n)(vƼzvf"B/\oH|v7УDo +
8G'-,ђ -"Q_j@;Q eVluOH!%Ղx+kJ[ڰf Ս!E/[p4#+Op˭[20H62bQXpsCW./?\nt<[n;$F8%D7NfvD<=<WC^8in_+YcKΫ:4U⤑Q6(ϾRbfZгrXشZe[AD4"LMMbiKfGAt4MMNRQCêmLVFڪ{K"=zO1vxIpp -b>s'ә(Ȓ`R&NYݵ\<3jN]l2G]Ӫy-(1u64<Jq4ɯ:[YƑ侏 -]o4ٿa=3\1rUfQ6%|EJhm$EWVt9Z6٫o>%fD;n:c!"ǚUE}%я]N69=Xmt؋(sA,M[
8LZWiDi_Nv2ĵh -rn2>y1!;EL)i'YUDr"'gY!9ϞTVL(/K)ѣ<*6MiDo
Ɲ6ۋ:#c!YQ¬Qh#[1"\CZV;NC -#KYD;2fF46{2GRIZE}bրW,/DҨP
@ǂIEzZFno+b(M_kh,2Z$>h驟\VIJŢkmGH栽/ʍY?|ʖAߴVd)Y/>/qR -#\n}}G5f4:\ QAU+zC]q1끾A:N -*kn>5H6г\fMaԱkfMViXnUx_bycBϔuC*uPRu*ypKZ9!LJPk4<frȾtq+߬!FMS-$`Sb& -O':?AzSK|1.¾Ϫ;{f3D*뤕~LYLӹ -ɍϖ$7}i3 SEzrԣT?<'gϢ1%ycU9a/Yy_ՊI#~$]\zsG%z CU&rQ.h<"kj;ICZ/cbtXح]© -m4*:t`Tt˽,sڎ[ -}D+Rhʕ(3k4LX`Eµh&,mG% HeAI'qvʜ|ۑ/*%?7
%?>R{)`v*~r _B֙Z-ˠς1(Z@ط0M_f
~mx^Y;vƶ -'i%57]4GL`lV|Q^\
52ae6۔=!*r1Y]RՅ8 -D.rj?BSMV3 -X:1pb6m+2qW~8>< R=i7ccLU[/eׅ\ -{L%A~ opb&zNw0}$eIņshu-YX:
7w_XAſ7SEcD!`TpcڤL`aGԩ"v{q^ìϊ4jԪaG0eoC}eW([U,Dg[~FjE
PSewj3}ŵM`fYp$+/AzFttBs*w z+- 5MO3QW-[@J%F_sqJmІD -8ƖT"h")JR["/dDq;3m -**eD$o,"2ij@,LPU'sӉ5o+ԝSRwze1*<2aJ.Do -yq!aSt9I?ih32[4rVzVVm"/iG -=s(c6< "+5/막k ]DDL>%;$=W5ze9ũ#p.;*xN%C5:iuMCa^Jl7IA
i1W3B}!R~pu~tԃV2"S|ԨΆ,42ӸRs{aV yBsh'5;FE|s;L<"t\bL,\ړƈDz*IBfQTdFP8J6w%!cIWG|WڴЇSsRfff2KL0ḌkAH7L% ?С /aXΓY;@Hڵ4A_ =ĻH6?jf-s:xlN((>:&ʜ @nDځ|V_E0Ol!KP1r_R5+q}M&\Idq< "ńCaOqJ+a5<i|}7c NsXT.h<>fRq,Rʬe:FKgg}/gXR %KEH<0oפϫO/#78 -ק -w+0}E?GpiiOݮf!Y(4Mrt%U/e*:ex1y|V'= w -s#t'"s*
:dVy|I4: -VŸBȕm_]DcC~x1,~d^+cbq(2#<R9K -uc7ա$l*dHbW=G-PZP3F -~$@$om5{R:'>4fČ_ͱ*TPi}ɫkdRe-dRYWji>*ÚX5&!_-*WEa`ZMw\i0明ϫn4e~PlG\vJ{<b>r`c.IN;ۣcvɛ|,
eFoR ̎%GgZ\Mw8>w_', _zu -d-߇cO{ټ=O((0n<<ٱdZ?`ۓ<458%iꉅ\D:>Lc'ZB)X;e6U0Z!nW>7Lh%)X|bHA{$~bpv\FQ%3r@14lC9^ޱ˼K½:yBo[w09iDTZo@푞ҟYl<AsRzzzڲ<jzjB2DbLޅQ{-hF3~ U5x@V7=uHBObJR 2eZCN6;xTl=gUm
_C~`Z'9,*"Aax,Idjz4]|~pPO!i711[JE:Dž4fBR#XSMdQ?/Oi\
U<BlE!?$5p۰n/SO&:(ڸaI2wxN]@R֖ݹǰ(I&9.&UϬasSoE[J]ׄv@S^
aD0lJdh4l -y>ծ~\AlLc&|&eC@)/8eT_}ei`ؓe·6~QP^^g*3'K'6VW(4ٹdI8FM;87@E$- -<Z֎Oj}pAC3A,ql6P<G,8-L uOoωxeEMǓ
/6ʒ}MQ8]ar~D+ÆWlc
o
\>\7}3BY=`YҙJrfƈ(ӡ4oa:Q"M|?^dVhuY짍4M=9OLOOM@)QU6h"0^m;8 -sH>"fL4^t\WK20w纾h4QW}l
evhMtUw3Wݯ-|*Ѐ34Zgמ]x*ELL.rT'k7DNxX4\'4dl&f{Yd(da%%tlkz3ŒJ>.)°xȜjX\ML_/Љy07_;a45:3&^R-%Q
HKӔT&Oa|zC<tdplmXUy"t&ZeCye3Kgxr
~
XcN)RpjgG;Պl%"!ϊg^_fU `L
:`ĴKv>9uRRl/d4cV>2I ư -wkJ
PL3JbzDF)?/ K( -;7}SU&QƝwXK}1SnȆJOJڹ1]D=on0qq"(HTlE[W 0G)MJGpf?D
R~0qDǎy&UуwX))|wgr R㮨>aA[xq@/S,x)\{ ->AX -TГ%n.,*RhT¹t
~u+
YTtRP#9pcO#MY9Mb;ԮPv٘©$fYmaPvuDNUw$~y|#&&W"܈$Dc%ʹl03 rNQ2"ۇ߾vVB}esG( trGSl30n+K8siK$i{)Y// J{1N%2:14̙+}LKtHD3Ew -G$fQ -Rč,LP,pv*ڰ(¡EAl0֫E0INM8k]܊+jXqq}sahU36?j5%|&̛@oq|T)z'nM6N5fh6%S3f -WO|Xdy#7*PHS_٪ɂi~浯skO&b?['ܴpDueqʎ|3Pn/7.ğ06Yaf| -cPW,WFƼ:}M 8Q -Xnq.s -
$^{!%X9J}pFgԽĀmn#.zJOujiofl#mƠ -8]3Qύ -e -KsexTui
F,+/y 3V&itI;z r2ض EHIu;2/P$L͠4oQ"{H!ہ|G!"嵐#:?"uq77̟G6C͎m=±3>9.L7zk.\tUӾ\O8d1M*Zצ4NI/-P#ýRb $ă;O9Wt],+gȰ3|65`Y"\We^-@9D݄,uӕNs )Y<n - -_$f}o -ν>
}i":9Uj-KæYˎp*աGuދ=+Z3}*>މ3*gyY'J0xm|1ܒGqbĴs@ JJxNS'0Z iA+.ӵ9ch54a?=Ve,D4mD$K"Y[JT6Z3 -;ЌQJQ3k)&#̡yMA](>K<IKNy갇,p@* ޡڔ6tHZ4OMa-uFX/ڐė㮥0=.\r]T;1(Vv㇅hkf0<S -XWՌrvk1=3R*kaT5m'*2Q9zY*a -h9/P(mOoKɷiodf3ODҼ3&@7MciU!*\;M6a|)`~-5."r}U_^^03+/w,sD: -<g9vfw5
K 9n b֤h2&gNw51w=i1g)8O%HWDDŽ+Fz7-Ĺ'Bۣؓp>G4{4kV(i30J2˧&#FĀmdFy gףlr}4,fq=Mݧp9#NGeCSh(i4iSVhkmDqn\.nGLg2U/!ˢ -X5<|>RV}Ŝ3?B=T*7=Dbz^ǴP<pmժDw:%8*Lr4r[dQUkB㛺aAB~@<F7={; G>"oѣ>ٟ14("Smq%W'iVg0hĖw'HƷ]cU+6vSe;io:<?{v'aB|d^Y)ю:K4>NŐx)lCY}7/Z㡂) -%WGr%:@W6 -,[fsנz0*lєu -"=E50.?DKC#:61)xaU -<DK! 3c1=BcxSz?2Hkq 갸a!Te3ڳF+JgJlosm|#Yke}.ڶ1-K"cM @$բFc-|ىS~6ʔxfki]~,%<ÈV'{;kT4s%Tj6GM|uY1ݱ'MrQҢF'ʱQ;~~)í^ѳUO?e>7'MlG>d~g#Oe`h }rk?# Ќ::ZF=J<bLTC$wnH9\FeKj#!pLy@f co&~,Zʟ}^
Uf{vRR!0gjߤ%*syXI?>Oxuekwm%Ifs,oOɼE01綢ߘJj -=/Ɩjt=r -Cq鴫
KG]-)r=[>#dq0Qp*`t6t)NlrM2}ȑ -"٠!ra -q4gtjN+wGZ<w`MY64 (`yz׃H yU
zB#ۃNHx9rs:ȹsH -AWUD7<=ΙWQQI+!,-6F(waB(4]|Z,~*SXgyDVr3&*f%1o7EnlۮhwUhƻ -+#~h5_R㧶ЕJ] 6yoeIq,hw'Qm/oD\bL>֟G5~}Љb쟃 -ͱrIC\kj(q<۞֘,[4Y컖FV -Wl -] -y][MgUno?,8My(x\iqιar6aUDkn'yL`*dl`uf#*nQ<tS~ehx6=lX)>~T?>2^䒎T]oM̹cUy"#UqdASb˚|:lizՄ]XID$xlbkTRtӨ!]C&/uHD21 +/Length 23067 +/Filter /FlateDecode +>> +stream +xڴeT[5N ݽp(%[pwݝ9}߿`@|ZENL/d2lx + +ɩjt +^DFLa"ʹA^0ֈ4]W~9@$&+fX7qJ6 +SZ
ʜY9{T!eJX<o[(*4%Hn!4
" +ݔÚ6|OO؆2Q?[`h>'&$Mŭv:6P桩@^y{=+ +@]]^L2b[L[êTȒ: +Y2TtN;VT>V4_/zSӑL.Vw<._wU9<Jw+* LC9%!/FπN3vĺa]yx_fW{h]\m13eSr&1-WYˢ?F&THh`dWw[fc +gSΤ#wl h2ѩ,n=M"^S6˯$S1}!*e
gFLe:~ A}&%e^2IXnu2n9_DIFo/IUSr6ruQnv5pQlD̙OU)ZvӶo]/ZWl||TaBM^UU}w׀& +(8]OώJ"rgH%2#f}$aJ鸘x)E*c1 +000}*U\UB}TXR},/5+r<gO(м܇5Td|oUAaEcBX{;DTur#jˏxUܡ_i˃x亸iT+:1ns58rE?{JҊac];%%b%bd +V2,XV)M_P6{rx/ +ud-QL:R6Yly/GzxJcUDxKS0iS\2B<׳K + oPJOSZT#|#CT^̤U@ݿ}l'K>8|]ആ..tz&ί" +0w>DP}s*pC(<G$d2j$z?;x:4p\(<'[x`'yI*aY> |CNXgRL3/J̈́MyZ+ + ˴}y7<Ciړ/]inͶ&<'+rH)cw5EEthCꡂ.T* +@bf&DsВxW_٢*9MTpq/mVO%q?{[\v'WV7^,Plu?UE&2WbaW|~XG'E u z'A Z۲.9]y^|?wJuy[R{ {ﷃ9?;K&J7#u< #Da)rfO8 y3*2V!j3biB> 9kڂ +^A!~i`FQh:3J1
Zs")T'I®xl7<ӑ6'X" qT_ea'1'Aa?\MJR@dPSkȀLMdN^h4>BYP!"@n +k#< +Y>r.}FF!Y_|Q8S!>Lީ1ݽ6Aڏ7ɯ]l94 HBIwbP<[}C'_+7e#FkLy#ijסl\$,(ٗz/HcЩ
G]vl0gȬrZ|ʊc&u㧇U[^ԇIq=_6Si\H/3,Kuv $7Y!IA^qfqw\hsmiRʯLSJFwH%P@;J,M9rBK"m>vBdeSpQaBRx Ǜ쒥!O>y4<M~;n*B#a r9گ.;?Ka!DF[/?NifyWQ ^olSRSa0ex[KH +:G>[gݑ!vtEČoxŅW8ܽ˾gfq}ƙݨt#xtQފFb2ӑaESJhU@L8ӑ01ZvU~>ZIΝ8# +~xIWYm0HZΗ4BgH&g}aonۂ<>Gzj̘DGaF. +<6pˈ_d@EyB#ԭ)gŜTd&fŜ#
{MwNo^`_"{z` (ycV.A%DcP^0:X.jSG:y!~}ϱ[bX$?G3, + +K^Sf4YEɣ +}YdWae谼q*T>NJ?tݾj%%pբ_64g9mv[d~\{PtAx>ҎΰD ꑥXX5Pғ*LQ֭.Fg^a$U +P9]?lErliP(ٸ1o1V'C[4P +8XNrͣ=M2vGtk>e"ܒ+Mi&l1C0IF\ceza!]J/lw4ڗiB슉͓ +?d?:Ǵ(nĒ:+d.5~^P?^_ϬKMׅ>jsY6RID>
m-e~R'[&ue&|lg0Wj՚ +
/c"(mJ4IjDMdUy٣>0$X)
'gN +)B.O bb6UT̆V
cnS$Hl#6
uRmW/QooBV&ڋE
,$w'5q}',EL&q^Ԥ_F\5kj8s5|}
Y9E!!(x?D<PSOHxJ9B(xnNrPBM>5cN?0@G"*CCڿH4Vm[KL2m#D*e͞O7gDN 0RGl߹UӳҽSxd"V̉&(sâ}zVAZJT/a"i@TНZž#B͎$o<`}6R<UIX.%$>Fi5Si;R)c^j3gN^nxLF!DJWeu=Jm Wkaj(N^zEx3݆/v^YlY%8W9AFd79|ⵃӘAITs1L5(0MjyDϜUk_8"ٌ4B>6"AM>zr߸ +ouz*zyG/TZ!T];@bx%><L)mԊ!U?@|Ɂ$ +c2IyԍλA@!:!vhȭ?J39<cI̿8|1j?z˯2,\*Jf+3{+gAH!"@zpW.
湔"ߟYQ53r%" GXP`0w^ oe̸)I*)
exfJ]uZo-On\$V }McE,ե+tTpO +:)NL̅j&oau&լtdLYR@LFq#NxS¹ֱq`{]=hM}*_0yMt|3w4'EE۷PYakĚG=qqk&F{T|IfAF꤂3 Cű@uFv!N)ZV\ +ucu$lL5<I +GC4d@/VI7&XΝ&ۆ.rA7ȏ"Z:MHI攻;%MsZ+[֙~[xq)ɍtl!7uGrb^ek*D(gBт٭M 猼W- be:&rL=' >UG +& U_fe +u&Kg#R?#ya}soff(ڄANXP9bhvQpKux o8q3,KT&/#JAO}U펠MyC66gRk~kU~PfBCJIIKWAo!8>nEJf/@3hpGY&"yY1ڨ0Mo\,m=VIE(~H{ȑ/C +ȻpE%8ceLO8&Ð G/
菖 $sA +%`r҂Qb&[T6}Wt0N<ֺjz +#P/>@zZB3W +rP
LMTԸP(_T Enխog\7cHl_[ݤy,HoYnU[fcbN@(ճmb+3d4sDw sȄZ<νyG+[`Q3Q<uV[T.7|0rAd|hOTAR3fqUM7enY!/Er^j:o9kgkҍ<Aiؗ~,?Bҭ|f4y^@.ԛtSW-ك!0
hجVT +h"nybj*nO2}P)x`ܬpPX}jq " +\`c 74Vl(Y^#SpQ*LD(,XJI,ݦ̆+}MY$`m_KP恼hX,fPblcs.IH=i^v|}eL')r<3n/+bcu5&.g:ìpqu)&6vl8:ְZӶokXJO?ROf ]hҗ!+[`X(GC-btUS#(|HHsۈpUvp1TL-mkIǧ\B':~:v@sMe(?"s7vw}(6 ag@P/<Dql$59}w% r)λ#Y0%ifu0i;T`6%4]&zcU7+3J8XJTXzWіe\@1?pA:!%U^JfWXұ.6A8y3sn`ɬ9N#EҸpQPΈ#Ě"^7,c-)-11U[+0/0V.6Eeꍲf +q[.li챚A2%4:ս3OI +˚;,>Vj*g)P4~3(۪fcWf*Ъi- + 6A +
HO Ȳb! 6v AZ-iocn]6Y0t!u:lH&1Ĵj/Ӭ|d-<UȦ&Fc+\nr?ܗeKhxhϫu5_z}9#G[X +7^G'~;/>
/aT5KTZb-$lg8X\/$c;儊\FȀ}T$ޔ頒~j`v5H+R'{j% +^2D\ PRHW[m]Gw3ڰe +G|jȒT +Jvi~:6%??/Am 4%W\naҋ_"I'_7M+,논@yשh)һZ5DTEY"a#8 +w;{˞ԧjaG/d\_]/*
x{ۗ-*X&r~.NSԆOyPvBk ~Y]wD1D8P vP@IyiPYZf;g'dW{owE@qf6]&h#{Qrq)t +:H C0X!0&[4Av-CAhݸG poܸ0/ +b+v({w5f:#'xx Psz3^#zqan3F}'^
n}h>EwEHh:̒H;i{V2fqĭ{y{4'Z*ˉ#t~*ƫDVx\m>{ +} +}[[FoNGo!]#V. 5ǯ.Ct|
|m^? +X0lI`ޫ9
OjO{Y?[
-^M> +ZzXWx<;k9i@%H!ц-f~:?.RV;ux,X/}Uݫ]B,Muh5: *砛6uao4wMP-<DT%c--)d0G
g#ԑsE-SLڔ5= UbsDπȁ_g7,o#&ǛD @4$^DgfAA}xǗ +8h%)ճ8eVG/Jp<Lp;mfH9rtMř2ǚphI+wgc,wRb
S&P)wrHU^*_9#^Ԥ=%7B`%nfzܪQOb7@Bj8)6}?_Đ\HH$
&Uc6D4t ++U5?<1l>tW歓TʅG'>.zY0P]HOP J;imFN庆7'pzOMLld,tj5mHY<^NT2')f$!G!O)S L4 XԚNDYƑjop@ᔄNv%l>~Kv<ydi~8Qt/uqmG߹ʬQ}0d3.h)>!P$L:Ų@/մk_w5W5o\`!B:TLc Sʛ9R`Ѡ|&Ѧ4v}{Lj
yB +B"LJ +!\ʧ<'#<g
$Qx;%z֘5tU`֬dW*jd?V!Ӽ^]{|rw<L㽢@#! 5EO ⯂Y'Ua.K.JzNK̙#9LOt]6=ɪp\tBjCN5e /r.ޖ64:++!?0!)A)IS^4b7Ӭa\-Q[4KFL6VmٖŻ SSᴵHZZa)9Iљ6wJѮy~jΗPl9 +Dn;NZKVL|"{'hIɟNNOPj'yWrN95>FXOkSnOےXO.R<~7{-Tn?#aDz5_HTvI<"Hi&,C*3o-Z8\\:ϭQD
fĨۊ3N;p˳|7z=I\Qd6DtL#odS,sVЭWv9xuhdpfL]U_S"UP_7֡};-[\BxRIRҖxa +mJQ6'Գ/Pur4l1sD*<V@ҹNVQN+qa_W3x3HFt.Mk.ꩽ#SbjFԘ^&}Dz*4j|Rfbs]6@hG%u{'LSmHMH0Vf=eg1h̞4,8GgxqF`v5ph`D"K`)/*
X ⵍ;D(uCDڔy_BO3NC³8M6IJUt1o.$v\`3UAFFh9/~LqAyܜd +a +7|a8eɍZxd9sEiJ$C!r:j&]Wq؛iBӎd!dדlN#>ܚ9x"X=H'\b&'5k[unĿR).`(AL +~bdS_|U聊d???"~TCEđ;l-L9;/oV=[|}=}H]q0~94[EKX3r=#]KZ0Ix!ڍ7- +cI8f8k;m/e"#לꢹ tgvƺ·%a _"7бtHRYj*ϑ_.2d'j>tn,S
&_B +=w0S%?T@
Sj5A7_v*Fä?R (zts`﵍H:y956<]¾k "z7°ͪ.UD̄5#%3h +LNgl.K)H+1fH`,*w|&RݧODc~ۇӌ&qDccydX%~B TweuT,Jw-uХAǘ%>
휣 nF mNKηѣjW7 +W~BWx@{} M`CoDOڢ,d~&zp!J`b˒qCeL N7b0UGh˹]֢ E
h:]Jy'<hՐ@GtsǢVIB_:`H,Q^-].͂B;EXXkZ;F +جRhErc83rN)co:=9F!|(njր7Dm1?&V'wum%"
7b*{M녑jx+Axb.j3 +Ѕi@m}k~[߽.tSSqNaHw ('e_[N UO0)鈳w}F,, +T1.Ҁ92AWlSE$-< gLHmOY?Z:T{?C<M=.xVUQnpM -sKCIVХE?EO
x(.Ÿ>z+GoURLdTC*判4/0ɹc:I`V xogm~j=`7nCzyt%Umqznkwp[2ɼʎٶܭiNeL4/N3aPi¥ąi'J\vEo\"'ҩҏʤ9C;85ҳ.LJ5l _opzނwrpHjA 9=2UAյm+mrLSHYҤrH*mC0 KH_,2Ôi -lOr#6 -s[`#Z
fS
Nm>\}ԖmC@IU?P*IzC[b"gpuuKh-"pB{<2Q@d?#i kimfdM
tKdIo]v<LՆA -VЈ`v<x7h)C
6 c%`49G -}%M>28M]yNآѐSfiquuzY樜'r% ;H` -6BlqGMT}CT0=:@\g?b1=B8Y,˕ +6u<JwUӶ9:.%95p| -0)ʛ?ޣ`[9x -iȓV#myQ{>keN7h%NZ腜<_w@P3ë/agwC܃1p]A0 (p}&w6|O7"9xW(H47
_d@{wlVpKrDPq]c-XG-ǎ۩go/^a)[nTdjo%%I9<45GaxۛxIϵ4HdN=O5(Y M{>I%&x!s#Sg.ƟHϣ -~5IdP$sMS a5s|hZ::aCZ8xۖt<X^Ef}_U"*B6]Xk}&gCZ/"X$3xzp}i}Ay &F]Y% r)p -xuC5h݇YH6 -[|P\· >L
yg֜L`1yvG+8Ri@[8יܣڕ)5]#_(ӁELiR{WN(`C&r"٩i<3E
zA>0Y7*uJ?vGӦw5dS۾Uk\5zDu]?Nb44M\zaKP"¡5U/J9K@YD,s0D7Kr7e +⁎H*NdCdѢI*.w-B-Ws> +.T*%Puz/-ϔx'p +Lmj{_ߺg*$DOEdLl7bs//_kθF +u?UqɭXXTe1!1vC7Х|EM>Qq;<ftA̝9%V9`HR:i!)3x$4hrG +:(pkS{}b=l|p#.2"!W#ICKY|mSzԁ^3zy©z5귽IkǼ{yS9&\;'͙}t.cgRwv/n4?z*J)Фڷ)n+)6WZKwem[
Z +miA+r*ş'KN]N5 &U@1鰨}~WqLkP<=rZ1deItMHj箐-C9{2c}r{GRf6gG+`.nʃx%r^Vͧڂ"M_{5r6l#-C:)ܓsnqsh&bPlD/XujKqN)_7kįo@yFT#i;KG ]v,XIrҒj%H:ы=GC>x$oEŁ\;掤yzwa0wTrVa[K8-A\Cy0#_W&FAl`+ʟ@E4
;F6#*,9pVckAS{DqE4DocˠHY挚?<l#?Ó1
ozGwolҙ_*N +PcQ7b?TФ몥ЭT4!1ix".0QG;{5nl$\S<; +M!u;|xF=3bSM|`kkQ(;>IR~;
81,C"e|jM3.Vz=QQF%IC`~irO +cl^#yԴ--Jk5rx7Z$1 +Q<:VAol_kY?bn,Ш@/2Xua +KtɹB;ń1.114-Y0,}{!qr,7 + <d/.#i"JuH+ԬJ[d*?9R0R>5m$8On{ښ<93 endstream endobj -915 0 obj +1095 0 obj << /Type /FontDescriptor -/FontName /WACCAK+LMRoman12-Regular +/FontName /KUHCFT+LMRoman12-Regular /Flags 4 /FontBBox [-422 -280 1394 1127] /Ascent 689 @@ -6748,11 +8091,11 @@ endobj /ItalicAngle 0 /StemV 65 /XHeight 431 -/CharSet (/A/P/S/a/b/comma/d/e/i/l/m/n/o/one/p/parenleft/parenright/period/r/s/six/t/three/two/v/w/zero) -/FontFile 914 0 R +/CharSet (/A/N/P/a/b/comma/d/e/four/i/l/m/n/o/parenleft/parenright/period/r/s/three/two/v/w/zero) +/FontFile 1094 0 R >> endobj -916 0 obj +1096 0 obj << /Length1 1772 /Length2 19895 @@ -6840,7 +8183,7 @@ u);\*&ȧ_#s;jzx0~:ʬJʚk'杘C\,y y<:27mx;1ыL}\uuӼd4|qG[p0ьF?^JűB$M"0)A>'qӡ3 endstream endobj -917 0 obj +1097 0 obj << /Type /FontDescriptor /FontName /FCWBYU+LMRoman5-Regular @@ -6853,10 +8196,10 @@ endobj /StemV 106 /XHeight 431 /CharSet (/five/four/nine/one/seven/six/three/two/zero) -/FontFile 916 0 R +/FontFile 1096 0 R >> endobj -918 0 obj +1098 0 obj << /Length1 1666 /Length2 13975 @@ -6926,7 +8269,7 @@ lVotsO*YHײNGpVͧ8P(rn3:[D.Q4bg)D&ҡ(x 9+>w-A> !TԼDAXqIk()m;~i-/WK"'n6'^ULe !)`}tem)ͰAގk`]l~x<g endstream endobj -919 0 obj +1099 0 obj << /Type /FontDescriptor /FontName /CNSQMW+LMRoman6-Regular @@ -6939,112 +8282,113 @@ endobj /StemV 83 /XHeight 431 /CharSet (/A/one/two) -/FontFile 918 0 R +/FontFile 1098 0 R >> endobj -920 0 obj +1100 0 obj << -/Length1 1850 -/Length2 21666 +/Length1 1910 +/Length2 22029 /Length3 0 -/Length 22844 -/Filter /FlateDecode ->> -stream -xڴeT\۶5S;Cw.Vda}Z%(
rrgbcf(*͜xԁf -@+I(?>p_5p߹ -jrsX>J=! -$Df -VZ%;/+L$hKu=ƱO_VuB{βa:`x/.wJ5[1-qևy(
-P=j%:y4Wa5n;?jutY_CIq;S1TE_!^hK[wA"n{0Y'y5zAOL9`PD-Zq7 D%F AU,·&ĆBgO3l -PؽQiijxp&y34?z8e;O>bqQtj_KB5LJ.ժ#MCNnU/m7ѵfm̿N+'kwqm(Nz*$( -pòF"+ve*ŗo00|^{IF8 -`Hԭ?w4c-|˿t3Q0YDqjeű8AP9$ˁ!^M7VCmI)8?=Y AEi,htj0G >k"pĤ"4VWv@J.Mv%[O%#H!f"$Ȣ3UQСtכT`T5EwtX~9PR['>"{:;q#9i0Yk I>5e/5b!؊|T&8%VO-bnp :ժLC%N՚PyqrC =4I -8IK[c`_681@? -YLO-&9/A{xlPߘRQsUbKU'Kl~HϣXp8ev ->N}|i^ᬭz>#s'dwr~v![F}ҡUa01i*?${sc\?O_'} .,{J{!ެ,4$V ;lE4gV7y+2B@wq;q21W18>:s3xnۖRBK@#,|IY8D}͐xyHlfzRWH>f"͆]&O/:k-LY}2b9l}BȠЀ@<n7}
>1Tdpŗ - 7W\xE)"ragU8ݫxTGђoòigVJE"gmgm0s_FsǰZw0V_gd7ƶvG4O|{+ -oYӰk~7IrzIړQ}P:XP[I'kg/TZKױ˦ݦK[5k϶L$kL3ȑ3B#Rf>I۹}[u+ةkc&'j'_LvPY@bpi{|=ci`53{48n$>%<KcčteC|[ħY*;Iu<#CU1F'X{f Dt\KWTŒ#NE3Sc&u-Yg<u'XIMyJ:$(/XG&#]LtW! \5J4oQ?<|ckvَVS -`On[#j>l$J"uݎL`c)"ܑhbBE0!E)1n}_:h"=zwu(^n}e 8u1+=[Fo\]Ժd,&QH>U<NFR4dSPIՐj#
?F=VّB<)AZӰJئ"fStLD;ƽoUZGiKn+TO0zJ\dqhД\Ax}[ym*l\Y%:O* ЃPD.HFQ]sN;<&݉Q%}7Nc Szr3VIe;H~fH -AzI^X`lkUqD[.U]˃M"(.vob<oOE -nΝ7(-v-*!ߎR7\1XIzͽ[S"`2ecS.P-U;%x#]'Bɏ#[c39`Ym7=`.łBW?|!qmEe(z=dm~yBN]GÍ+t4s6UVQ|'|C=>;_sZ}ęYO:.RáR<{Hv -so5=K cpkQRqԳW0?_Ls}"MU+DHfao!>BzHe&vv]rGtoP¨ i?E-!P -eZ/4k@Yse^l -#=y٫9DXCH}J/H.Y7=ՊQjv+]`ѳ`(
' B|Lpsa[Nv!kYiңjW`/RJslQf&qt0ZhgrʰxQկeZOy^0Gm4#wvAM/Czi52nPE$']xדS]>ϰuYYiuuőx鍯RRAqBIu:B*G-_woxp:G3~y_{hg
ܣld#|əT]j -DG!۷Ej]թS*"y7:F:]69P9;2bPQ9,!pU^+ݜg8Y?t*u`>! -+mFK\2[Oi@UkS`B3;<Q7V.R3[L|.P0YMnpAI2P*0}(2KLUO^4]gs!B)1d/-!j[
]AS-$ߍi.99Ӿ߶q!.eaVWxHe7U䮄2L&JbtTQ/4Z#/Lnl|ca-L}X3,7@^j#Qu_QF -XH2EJ=_]&Tb)̾XUU6#]S67MJY -k<C9A@&a#.чf@]v']Rߡ)- ⴐ{-5 <,8K2݊3ހ`#wΦ@kpq<ZF)Jՙ/S;
INk*41PqV]WWG4 -7g!>7z*JRg'بQm]afL!^V@h2a -[ۅZ=PG4 -<c{ۣSnal_֥BO}LǡAlYHLtD [;V-@Ai_l[ʬ<vHAG-yƦ3ܶKrM0AM5R>]_;Q9%E+ԲPKQ=Gx|; H,c<oHH9>nZm
܁yP@BKHc>hIv
,AA脢hwzcU@;rǠL̼,+ma&Gc4Ek[״S/
vo*)ep1D^jZS_Aj;zׁJԻj$?MK,%glE`uLQgiSV~EUK$BziLS37Ԛѓeƶ/ohd6TAخ՟EA #$3yكO2iWڝE6pvmygH>%ܪQ/-kjvHM2;Z+|i$^tưZYo4g(cw6m䔢@6V{#{fq"tОPNL4)K_-~˩*F%F;9r@RhdsNegr -njZX}_"rsٮ,J=U+Å
}u+8<)DA<ۗGG&n5O9lM j\]zٷбW \aW-Q-b@
vMa͌?maϑ'(U?bb0$ǝpR_0! -dO0}ȐZg̹ R d?(J]z'&3wLգMVK.Bƙv))9Uq:h&UWH2zZ20ሑW9 C0⒏'_BAP^|hŦSGBb39
yޤV (=KZOa̫_-Ci8jTwz1ɵK?C"7"yVV{ B!U,e%lÞʿP}1Y3/R]aޫ# , @>8>#ε]FI淂KD%w5}h 鷯PЈ9ERĴU0UB?sfKR@hf^QC#1kVfmTؙ9N=jIB'g_]JG~#I -B;N-љu Ok{27kD1D:+t'}60^'땂fi^CamQX!8Jd/ס#1LIGB[MV@_E+;3SvA?G}Bvϕ
Q4
M,"uL(VCW?FpAI!4+lmzݬ@sσ.2ʒu{X
PG_^Uة4|3縎.fif5">>B_*ٙf;88zw0\G42LiSCihN}Y㽣 #?9⥰qĦXRY69Tf[$ޒ&ey }bal!K7Y-/R֚1TX.R}>MW#Zr'UD7MD @ۮR/^79dWBމQpXCVở!e
QBL:=?!iK8F)$j;
4=6|筕Z0:R!v)o.3giS/pH -κVrc}Τc;T]+gJj\ϒ~>Ý1Z(@ġ21,\e.+X5^xv!yRu~rq֗js?[/5@{:JQ:R]x0R^Gˋ~:~w%* 4rAT -E=#FJuU:tЦbF\`Do{~?0'E)ɾ4`Mᣁr&4])]!-i]}D]RnyP[,O6cF%QM#ŝּ>ҭ}*ÂPXWhUpGPBP&opeRfy
FAƸ'./Z&_5DS<9)U_I Sq^tİO cwp
ΦQ;)'R>I:܋XhU -KjG1zGAs\/|/y8?LqN E.h-d2Ff{LˇY54r -Ǜ -|L\sԟ(~j,G9..v|-Nh~Q#|C)RqʷJ!W-} qᾘm:F=0x[5uD|!ùC7݂zMEmӦ92cŽ;Cz{F(3ymѪi#vFgsen$Y~ !EW?~M`"FxᆭN~ipqv t<G
R lq/MSblT>L{1&bgNMєAn[kN#wYu+qd})E)= f - -$cEF -{ -جđNp3]+0"g@]YsBCWUQ4}o%~2 ѹile]NRhU?1,rTA?xT*oͩO\;}֏D]2"c!A^]D'tYϢ%c,<7/2OprN2-vV?Bux̣ 'i5V$W#F^5NG<0}ڱ?ݏiWiUqѣ$CWw 7d7 a<CP./k~[ᠥƠD -%3(k_ -cp;]҃z#}aRTKn<{*gXC@?_%YgQn0qu[P}Rq) .WjH_̡ou2}M<C[ELȳUb&y
}.mX+A(&I֟3rJcz/uPt^Ж
D`8y[K;d4UtÑrA$Qf.t爤tn\QR&*>ZTs+l~}ѥ$/Tm@ՙʢ |a^jX>d=ۥXcZFr]mCJi?9yhZI!rᖊBԑh.n^L]?/yS̴),Brɓȕt_zXmN@f?m^]3/ JW)Z\ʼn@wEjXKKGbs!_=2s6"db
p'y R 0:%j!M(\NQ#LP{^1,P]lB'ciqţ}}~̾DEB >iFȽvUS:Tm^UP -c=|IItA3Z˜qIyE2ܙt
O4alj5l܄i*bJ7TVU
i"V0>F~4ϟJ,m'!mId=}a[c(2n"ZxAޔtE$9N^9{\B×i?`hGarJ1ҿWGv$A2 x[ʩO -9YJDP&Z {?GT3/QĊnyr,48m|CHL&[ti骂A?/I;'Kȵ'ḾX}^SF -:Rh Ϣy<* 6^AIp.&9 -xAñ -M`82̿YAdL#8ER - pJATkL@S_,{bq?|أeog?v0!x&+292{D3l)bQ*nOg9w8z,pQ,]>'HsxXWmIfu"MMi@'ġV?=0>_
'
Brfbco0}5GziaM -a- -2mlؗ|(٩DI38Pηܚx/e:Oy /+
UO !; -#MoLu$sYNŭ|<\Y8ꗳ< Bmq \ՇfaǤ1=P4)q$8? uҘ8J.nD1|&׳]'>27S,@턹wF7B/j|mBFn -( QH$I5TVάLODkA3ƁR7ǚ(l<5ZZ)3&1SwqW|λ(_',dZDfTzښ&N&YQ1
ؔ -POBĭ-fdG1PUC$ͧNJ#voSKuV-8@ج视Y^37'1z"4:o -FH@n\S,:ghI٬yl;w%(Sȭ]#i#H<*χq]n`ּ<f{7eƘҔSpJ6yXOP%+-L|c:$-R:hK]K%k=7S T@EUܙ.+s3iU -ߎwiA7q9]K?Ew$#c~-q>M/PXS6駂|EIV2?R[ME0Ul+.|wd^0/(2ןv:6*F.DzّWӵsJ8AZ -ai9kPaLb)*NQ3a/b9DqDPoIyW -Ԟ("?*&tZWGҊe"BQ:3)x_%&.^v3K>Z:9ܨT܁;
g\%8l)x]SBBur -R
R٣w8\F'1|v*ָrg1pOp:_7[ YoAi=R -I$V4톟<`q,Aq-sR6:wՍN%Ċcu`G -frouɫ"\oPǢEnl_^w1
Bck/mzu2ꚨkb.*ŌʊQ!xo)S6SI|a#&0oR/^X*+~鈄zY]`i">DfSnl12R1]LQRpNVnfrc@1DvftNPFT)n -(皮9nۮ<8Zk:\ gްےeT488Đ~]6Ʌ,4mAk"y@uIL -FTix.,I4A%$,K.bI[T) ~UP!!CjAԔB>Z!aԧAoԘ5LףWr8eVsFH<Y;;c-Չ~,ͳJРN2.L~~@p?/"_J7BTnӂ=KUA/g))Ca -Ƙgw\C"@5^}'AN,푰Jtp -
V42|
Rt9>vSq֦SRR𭋦+μTqmLniһƏbْu>nRfth3(2F` vLMJOAmWµYT%~;Hx/h`!l^Ǻ4̕'k
4w tX;R9y -Yљ(DV8l8(h2ľeڈt4GH']hot|ыQxSIj^kv
g$xzQ6n?j&w$۱GlfddXTj|!|. X94^\e)OdūT'-|BYgolܥohFOτa/TyTW5t 1-*0of`}@PKB ->P&bD.+ -wQCe5}`g;d>Fz$Y_0k-s"z9s{}QATXzTa-cirh<0M*P3cӉi\";l]UYztے:jbAb>%tu]1GZ<SA%%qҦI@N%t~QUf1eNM3éQeq<-{)Bὂ~e1)kgE3i>+]*W'XVĩfũ
3Ix -dMaTĉ^-x|ykon{tG$OF,];\E[ki?6N6^m1;BůM`WRR8` -iɿDJGk掃Ю}.nIC=5ҋ:i^'$L\1ϊ̟8֥"(4AZ?:\*PKM,s(\L uY3. Q -I=؛Ig&gf%1FZdx%\g<+<x -̭@bf7g %A
CLQ.{wKPxY1a_E|*Xk\%muX
%
kPxz3w(3i]¿FNȃk:p ] -I!wE_C}EYƬ]wj#nez+XK'
z<+mO7I)ϲnthvfJ_1)'#t뻾Jr6c)9}Ke/Kbd*&ja9%s!EJPCq:aF}K0ejj*w}ױ( -өӗk'$Ze?mZT|E{AJbtKy`tC7Ë20;lv튚6G萿7O
TƝ~TְP|nQ@jr42"Xʡa^py "L<29:| ·gQ3qSgjU!1j|^*b3Z-gPɘWIJruԹ}R'x+|Da*+9 ʝ*2<gt?Of0fͮ&KXh%|[-b9yL?1DȜS:뀽sy''mp4[ -~A>y'v(2,w]I$5{3UE2٥*8XGxHA'+`":dNFDNrJ/_4ZNęAExG "<}aZ:mB -Df`C%ڰ=EEeP kS -{Xicw>S$.(r2=d-CHOCcBȼϤnd
fo{J"m._'CX͖ʵÑY7U]{nMIJ{7~HL!+~qSN:Ѹ?="rVZqT=Xy'@5"
&ꟗm:+cvl|4zbM~鴆!R<gʋ'Dc\ -W+m!νI"%c kݣ%K0(dmUbI$;#e2Z:O)YGD eqt|)LC?<F C<sq*.b*㚙 -x턤G 9C8)UFqe<9 -ҳXGM[>ʣ(W{G.JLia -`G -%C8f_K7fA@,30Ute\>$o)Pl ӿ>=[&C -̔? j43[By$DT(OTM - -H">W7E{ODf(.z+lIe=\4n注ۜ s`iՅxeX3Z̻+b;sV2M]7~7mL0ص)%bَTK><):yd\>56>t)
!J>Mmјrz{.v_WUg÷lؕxƒEu-~H˖pc -7厁g!/=c?R&H/ugR8:cݢ-|b0Tݚ>O' } U5i -n C9H]B*{a. -Uf)N#YǠq+o4_8}# R`-yU7HM $! ?Ix ^{i#Л)֮Qj&XA\/J:n8L98%rszKIT7nVE<EFzԷ)̊?:}Kq?ۗx~B_`{_kk5{|'l3_mۭBEn5wh&9h(ur-&P$j-"=dH_h&@o.->"~6捶&Ӕ
趫۶@gEرșuRm-mq.b{2fpKZ3oϹ+XAuV"Xjm4N&tfS]XYb]Y?8>UpC=ZK%}ݗYag)R7lXR47(U)K -K1 UaV^QNoef6yd<(;dD>È=Va:{@[rA}U'ђ,~qkN| -꣬qAАqc, G.+OٸLRX%J -;YR6\sk}a1
6\~Dcb٠8'٢L,jIG땹vLn* 쪶l,+H{tuKr.dÝ<J\cL^@nab>gCdJƏ|tDSȾnc9dډrwj,c缸!^z9]ODp.<tRryIּ5 ,u,~Acf_VEF.CظC? +/Length 23245 +/Filter /FlateDecode +>> +stream +xڴzeT[[6š8ݡ'. +wP8w"E|{_72w3Ysi(ԵX$@Y0ȍ] v2hm! +ljnoo(4 +[|+~_tljRZLg6Y@6 +^ S8UO#zZ/1IL M + +n
ʤ-+JiB_R'o4wTe$ruYuB2U*)sJg2ۓ +HvB~åri0 ccyF/DS;g5}ro@7@] ɍyXXve]ؾ3DCGeB6u<vJĘ~>p7F.@9 7S:GG\y'+PPg + +O/wY/~mc]6\\\0_<q%Sr)[gDR:f;XXZ (l墸u2@+y5ۛd(ԁKzOp[H*7wOCf?薃-c0w$>ܗTZ
rՃOCE#c0 +49PU :]դ۰EW5>ntO A0Qp.9x:n!WU˲_+"gPE/ +(-ƗVz\1,^GH7{m6gedLsMM<p+h&+c. +`7jvh:ժrԝ5yG&LAE"9ՓPįxg1 +?h|*r2_8/Td/ތ윷pn9:qi)e,VU·CU(Vt"`ᚗJm +WwAgOjI&-=#(1ؕ{{4!Iq
k» +bxX{ɨ~$`/'jtLr[ax(g:Hȿx(Sv 1[ |+%~պΟEDzEO>K*G44.UN.F6 ὰH8UN*v}\Yn,ጭZcɤѯB"vʉ!ϿVEj?J8 Tͫr*GJN[\'YW<T!,/}0"Qx،jxYiR`j>cu2u6:>s5|kٖQ0H@%F2 h>'qTglEEql,Q1roTыD*Wt:FC/}3l:mM =5I3+=$5xbR۞P n$ 3j2fbdiڶq5*7
L oO"H.h~?w֟M<+WeKYK-/<nV/CL"ѵtL0{ba1
2g;WVTP=*"Nm&nD5w7I +}NHQI-N<nNޘ2m촁Ǚ-$Ɠ5z?4:KXױvfafK[UBkOve,Xdkv,(եR#S"N#2>BI&=[5+xx)kFcT'^'u;ߺ`yFKtKnD~{ם4iݿ:m$?&s=ɘ`Ǎt|1[PUT{(v>iDG7Iww|Z&QWĦZi1-V5TzKpvVG+ScD<}'XMAG~L]w8%N*`~(:,H:[*OE.]:puN{5jﮞ6L/QH4:> 'Z/Y )N)[ތ VApe=IiH,d;"&K ^rۧ +r!Dgvfȑ}&xڝ/IѰ
ECEt0C%G(e4"Gf [a6M%TzWo+tR-]WhVa`>PaShp,~_KP6zo[f.&|SN~&j* .@=c&iQ<8v+7JAÑ4hq0Ar?2o\{˕L۟nOʃ5ρݏU 1]yfWw&LL۫^@Љ{'0Ԭ#L3L76#~nA:4D|/-8ήpw&5&qepAecpIt<ă.qTs`#qDd18:+=ZEgVwӽe*[WnK |?w^kOC8.a?ykyK/WCqVBv|3d*W"6lzܼ+
Yb롮Rs3;X>`V2>'F.tå1RZL5/·?fYiɞfe-bL=?pPtSiI]!KNPa#UMp*ed-LjED[up0)ȧ"F UW!ߢZ<E5%+4
<L"ps[1Blfv4Ʃ%]|ayeZ۶XOLU^ +Rv?3$CɓLW=yU^Vc`SIӕg:8X$;F?ş}Vlt/")U8zKT0iAkX,4aP%(O=l2smuA`Ŧ~~tq4^vNF&0N}3f]PQ3|iܲy?78k4;nF"h"CS7Y3VJԣK
hX]vvt:_E*?|a)#/Ϗk@A5,.x[G,\ f7Ԩ@|MH/ +9rhvvʞ#+kNO\>xY-#MfWܴ×bR) u +kM.4U/ϫ%w])UN*rB64q?t:#䇃W5Bf7LDS̪/%
-d⫌AxtD-7p" `}!cC.Tp[rnTQQ2'[U2?'I* /}< d^Vϝ҅(
1DY϶ .U "#O۠Zߴ;nDHͥ.4q
yۼZc`}2t$y(Bnj9ĘpP5uޓq˷F$
!Asfs(nܑ`glg+陲GIljx_;)(l+hc'Np_M,G +R=Ircq:My<:
dww&cq"^D(\~#f{=f(?dX>՛+rRYhwr3?M6Tg(zZlB05AGLb,^R)x~EGbB]pMO"
-TIwfެM7s/HpI{̍bs4fHK(6#;D٩㌏]<m=輤>Ft}B_ $ШN;s<FgULufűBgX"Zů@tr@9⤛zbڮͳ@reWBs?[7nN19`g]&p:
V6n=v2'g@)LD"|TRG}=r_yO+tHHC#<aXFm{]!` 7ǒA:0:vMX:d 惢sLݮZ|e |?bS7hMH]ukq}ݴ^KiUai[!dbvgh+8Gs%a+X烆`QLBECq2?))a3@YKet7BIn[%յTGy֢9ɧliYB_ӫ g#!侜;_nn1[
SH6nO#p%6#Xd"#㟔2E넞$i뜩V!?e;eFĕޕ[EHJF-*14˿
ŀBȯN$^mtAgh)Xf15˗Q +1okC>Ebsn@{75E;I7/2̻qCڴ+t_1M|NdMYեXr +s0E'Y~Y[Y
@i{0pDJ*cY*!E++2_wH*#gQ/oru[3ed`0_4aO"ÐQtj_ȗ2ms``O̠?mm;;Փ(/m?[W)sU\ +Zb*qsvaqEnK"&Bi0 +?kZ>pﱝ AS[fO; BJ]. l!$M,۴!)#рG60Cw<I=rF7Nz[iDTsR@[d
8jSE|xAa$/e\%ibZXbztO[MB.}N$6~[(xr4&Y'7*
o݀Oy0]SZ[O +Mx|?äË0EZ㮴gzݸcpTAg}La̶]c_seˏ"V[NWiHMz'CeT(Ǹ#DWn\}~8| ̛~eY߇V#ѽ(Q;GJ*7e +?}%8ŅI?f%¨O98G8;bgs~Ty6! +T>CSyIzU{DHn7{mx +]zG +"`9xpkwڊ .9>Mn1"#M+`\ԸT!ӵs9~ +olKgc*[e?H^WڛTUHK|h|{J X\
m}_ P,fޒӑhlC^L0gRKh2I/M\,hiX^}`2,8m2gxƣX<q(UqExD!GV9Gw~ڡSR +`tq
$6lm⩸NraDw^ǒXͶQ$6B?I`+bЭj4qB&̧uz#kѹ}7Vrrs.r"MkX +yY"h⃯blhuvP^QX6f}֕摵̭ +2m[IK\W,L֛~͕~S!#~{mh.Mb^ԥ0Va? +8Z;"|nlS,dLlh\0̈К4Gh\u5)2 + ?HD +h e ƿ_yzG°,:x.O~ջ#lq \lPw;M,uo9&lxf 敷n<L[^rͽi~JLݵ׀f$VcƸ\P:о/c_D\nW~;~Y
^F4'aHF0VݳM+3a<()z?}&POhG ]S|Pu[+ѫš;EhC~MNj3&; +1!CMt?]qZm( +[#0'2&(#erFC^]b/E웘iRl8zYBQn,:uD&by`):
G +ȊQnDu=b*u[TA2ɀa[
ű@!ݩ9eSB씤Bc]ߝgmvE~cVblIbD[*oSpI8PzIzP~v(AJSg.N=Ŗ-Dl({,!cu!haдRwIƌ Y/<N+Sekko*FU0,.شb|Er[z2%I]K5TNkU-NjvT
94fcB*yK]yJ]'cJz~@܀c^oC$
\5ңU9̇ < r{bK= W8:51:8;J-Aj! r 4J`ӽFuIH()GR4f~T0I$ 9H(
^v=ZU=BSXȥM SpUlʱ(DKljVİ5 +Ӌյ:7$N~7sflU-r{ +qsܴl`kr
J~<g!9i4ZZcZM?4Z8O-х:W"X!Ipt';8CXx_/ޯ{$zɤSI/=ZW1@[X*9{`̕TMgHrMʑ3p$;y-q2"A&Gu+<nO}OM#!:;xh@Cƙ|?tBL+k+t<@FV4ǚF]QR-@#SzN(qL\|O9k +7eb>+#!))3LL|mSحF\8{:j9/dȰM/~̇Jw|@\|^9K(){fCu*e][)7f%4xO\n/?_apXde@6Ya.@d)oT1tqFX
a#m ~}gz1,)J\wr~JeGڪ_U@DjeS/? hu˙mA'g?;<>8WW6d.V +`;ti)veƹ9@|nOI +aAe(%}.+{cqX`&JjCfٙUj͗[ ;prM#}~<)e^8Ýc\dtwgzfK"_$0VMV=
qqn飹$6騔;}F
y@W){ +V:OEa߉&*y7p=6{ݽ_~aK%|={?sbk²~DtJ7j~|/~Ah0J)bSP!x#xMgNXϯ[Q%|PPB[^qg]җ $<Y[0
fj枣'
ΰ@w{=g)E).>Lo4$ +'zyC8&sŰ`b9hdN: ,XqTd*X87"46Q3Vr~l]/Wu*N>o+ڜ1izAJkL! f,{ͲPhg#GM5~[$5+#6ӿ'L +])ac^~RPC,]/aB.uzou!`+c21,`Ec0RfNp3Lw:̗b Jlb.ʚn b;$3ǭo8cT4_p3D{̃TP`xΔ_s~a$5v# +~+XOzʀ-A3Rb(C+W$شke-xbOecB hkI^t_7G?T~n:-Yoz,v"'RQyoE+5I5OUYWQ.+Mn\vr +c3xp)3MJ4HF2i;TTF}u07/s<cGRqm5vFHhQG[:OW`I2IHpG i#&
>.%L6,f^8`wCF!\CkϿgY.`Xڥy9DD#1TιWL+4U?)VmUQKHOc5d, SOR'hȩ\r~~nmZ +tQ>eڡ@ثA/EZ)Ɔ}lH%4hwKk+5d^+c[Ki>r{ +-j9_ikbn+:tnP(WA UǕ5K\/L_\3Z\IhB+èeP%k)sų3Jeqn(`tx4Ɵ~Ő^~Px{."Z?Uo>N?.X~E%{iǞ5UH07emHm +Y}H+C8{FJf齠^7 + +y]b塝]0^zOrP +pWR;|\A_ ʓ}BXp3-~27]ŷҗƯFðۖ!aPKhbHmҶgw*tt*XUχQ&.5h*=Gx&w}< eE~V?'fL)+\" qBƦI旑~iiPKH[_S`-خrc$w@aߧAvkPWu&+L,_;i.^j +;@
C:;:]͇x4E&]icIdRjٽ /*F^L +- +KԮH!6ʑO뒂dWL,(C,#yt#o,^Ӳȓ>GEVSem? +~ۨU#YJSB$=*!!Ȍ ^*Á=$_}QЃpP%VlU}KS,}&уW~+tXFiyGRW&-LL +BgU-A=C=jnDnQP9mn,@]~dlVJJǶcV< +,LbqC-A9ʣ;],/h$*gSiXc> .#l"cs} ++
)_|>})ED-Z=˛nrk4E,\6}~}܋^&!LD+/=oݎvy*BFVdP?ID]wkЬ mE~raF ݭ96.Q/wIo"1q*.R8* C^-ao$H!,8}`jTZAn툲.tF,{RMK_zɧ0vT7Z5aOGDPbMEYj[V#mu牑B
JH!Ю0Q
B=qd!]SvFJ[lUI?`0PעmUXRCdV6_~ݟVm'Ѡ)l-E5FMs}}n֘,**8Ĵs-|.])Dyi^r5*D#38 3=)8(*`Y3~G̦D-b3QO-v3>+3BA3*QQO|Qh&KHpg#h(vџξi.\S?EJCjt%|Mdn[ CӶvR +o RȻD-{ٔt\s|'V 4m$`) +FeUrHpD'R{Jily.?!0nDcw5gmUҭ<6Tfg|Ȭ7;ZJ +:EYG؏2j>֞9qS zmdƸ]O^-i_i:R#eZbC]s'yvw?f,yP\MPk
[{D#Bvnq.YSmf{VuVhv
CM[Kuw̳md@wuI|wOeeNh`/W +&ϥ+sNXf +`=za ++gd-@Gܷ%^(Vb"Vya3|DhjbܐGT4Fј*Rħ.<pLhiI+YqKNr(LD.PͶeLXu>`:㖗/MmDuL`C9eamq^0cI$hƂ!+)}-82?_kٽ%01h_MϿ"k0/RXxZ#x8M|?}OV_K@nD~,g;{<4s붔>B&Ӷhӵ}nTM҂-@#F&L SʪThN<tS%>)jlum겾c$uF;8qE*l%KDt&vȡ.p r@!2`oPcuq/=XqJ*A]PSU6jn
UEQyƆfPpS7`yqkpL?[&@@nj +/r^{w8f+ܷfQWh6R̬Baݧt5Re̶^,`7:P&ulgjJ]/+_FUM:cyʴNpZ5=+Bo?L.ާCn>h0}؟ND5sMD)>rEu{:g<KK|/^PBl-p@9]?#Gg1ҳ4QN9uXf2!Dz̡P[%/Y|K\@Xy +`?dq+g7xPBDZmξsy:pSÆUZϞ3Nxt(h+ Q,8$KEH43(XMŖNCd/ca0MhB1$sy +nz`#"@p h-JFEGHiw^+`Synb֎^Vȷsʆ|,6f:b;5U|"ρuY5fh[.V\Y,T(B>_m*5@%p*eYUcyg;ΩHLBsk3w5ɄA'2;nEĶ}<,ՉӲi 8*p@ᔄNv%lMbYT0kuZ8<KUK!-E0qrq9=/ +a⩬mXJg3sͬo"
8NC|/r[+`: +vh\)řCzU1>eSDĀyaݛ3`_:}px<OZ H_gU6ќ.9 +_JŊ3{wzѰL4cm.uO.Ά`ؘ0Ln$`a5nᇂءF@$F(q=fxҝKӎ̪R%1Ђ]Ӂ_h$Y-0G풒:TtzFs<'|eK`<MPU{?OL +!E;qYF#ݍ&^?gSEuj@eDÕYIsԽ\+ҲQ_n>Kcc +$"|hJQvB'MqZA%ll;[xya4,a.'e9怂GPL~8(uqxDɫЕ,@_VVtˮl +#);=G|ژ!BO:ør +['5ڃGT 2*&a}oe1SPI Hb$UI380P&5s68} +/@lBRql<ZFQSlΓSoKod18a*t^*?C*1I.Sk'CPSiFeY>aWGM +0#!CQ륩wNM) +
K[7XuO@m&c"ܴs>3_]dBtL7Z_?g[Eؚŋw + uSyQ?ט4w~21@(qNC,$U]Fj$}
iQnY<GQ[s{yA +6Y`x@Z?ߑå0>,0^$8lIKO|.\# @3Pp'Wy~~, +bECv!z՝I +?.[s +D0*-M hvK5#P@FZbR~-W[d9"v
g7b`ڋ+@&&(!i0ǁ?f1graOT`d:<_үodvn^{|ՆN4QlFT9lm-~thGۄ
Ƥ͙%U.x P(%Gޥ aIK:eOv8eܥf0;$( +[|o٪HrsZ>kSVLnBh2i +PCߐEk£n6 Ւ*^(Ң=^은!"+*Y^;֭PɊ@<>Ʈ9NlNel.D!QCy,NsuҴ 6=g9ƲWTKVZ/azB{%>x¢3K|.ESGD^/ypC[f'me5({.aitkm-$)L-7alqGJ{dqqA2[:
Aqx0e.tsF`<Y] +]Uo%9E~R.NeˍXc(
yӏ̀U}(F[~ OXvao(!:)rsZ}Uh=Y-[@ endstream endobj -921 0 obj +1101 0 obj << /Type /FontDescriptor -/FontName /JALGHF+LMRoman7-Regular +/FontName /TOLCSL+LMRoman7-Regular /Flags 4 /FontBBox [-483 -292 1562 1124] /Ascent 689 @@ -7053,123 +8397,116 @@ endobj /ItalicAngle 0 /StemV 79 /XHeight 431 -/CharSet (/A/eight/five/four/i/n/nine/one/seven/six/t/three/two/zero) -/FontFile 920 0 R +/CharSet (/A/eight/five/four/i/l/n/nine/one/parenleft/parenright/seven/six/t/three/two/zero) +/FontFile 1100 0 R >> endobj -922 0 obj +1102 0 obj << -/Length1 2064 -/Length2 24950 +/Length1 2144 +/Length2 25630 /Length3 0 -/Length 26148 -/Filter /FlateDecode ->> -stream -xڴeT˺5!ki=Cpw݂;A\gGg=5G$SVc57Jك\YX -v FUR hbe0v],J.,, -L]]\Ff":9o7u1z\1\=_ -MATQVJRMQ]x F逘\<\SOTB` -hJ^*!m̙NB<]rpQ`[@U_J D2m=zLEdOERt<WI#(Ka9X.@c.#1~"6:\c=ڽxcpy#V\q -ݼQAθC_a'KᜧYl7L~zQzQUc \h,a|6n%`\Y2~f/Xn$o:t l# k̋jMn.ۇ?F)Gq;MğZeqn3cc0(SKoW=N"ita$2VO!yc"%m\B:g[+,ߢ-ӆvmNJa U =,ˠY -Jr+X"!A\uOS;ѷZ&~ųO%_im8ñtGag\3S#k"}>/X03V{ЙS?-5EϾqQ -f+6E -wK`:245VF[Fʮ..t.zcyL_fj%],b_mwQֵ]Uv`/Oc=f2HG>m?Tk:e% [ֱT!gKdm5EK,D츤Ͳ5~yaP+*X9tZ0
<GUGjqK| 1ؕЁ^ksuIRRR>2 EXDj
Y|܋qB
{ȟT!{Wtˠ+WPuXwyb%k>9)qT8d)xqHz|g>'ľn2_9'e,*$߬VsVm*5;:/ZhaM"qŴ/J%KCc. iڬ:Հ64c|z6Sj:-kV5 -5[Q()-cE#g_čK@n|%Nuse-`W
&B*z??/ZmE:(,S]'q(|&8 - u#t7#EqávBp}0f -u AoKC)MFvF*܆[A{r"
e+9><,(
i -YǤnlCՊw痼OC߶9<Va+Ͻ&.][2l!a \-C^$̇yP:$HW0K\)>!܅1˝(xB;e^|[ -lIş.H;b$eKhz5W|&TV;GP/x_34AUB/Ol9s0 -ټ|d2Ր!+ B3[ɺY}ZKz(15#VH"^ۗrܪ1=n/rXZ5iaACzM)V;I'ǾƋ;j -4S"QN
6Q24(Sl? -q(\6gb"6$mw
Vmz0A`!=!Lh(ۍ'UWe4>(BQȱx' -^0 crk ,z2iS]:bN0K^3+@c$tеv<2pF#*|(vbS#5٧9 |=-e+Db"֛:-x]f -l\y2fj$[K=KLd}N34>5F
PG -j -(5'77u,01bv;YZx(+?kng!6YU10jIA`
Yr -(b/{jݤ?*,2{^
Y}C:EF<sOދԉܠq
f
|7WDmCB̥xm|.ng]c*ǥrZ1z* :7?\ċujbaeMŕȢ"U>ڻ_$Iun&="&¨9βr>Bޤ܀H`EGJ
2kւ`sx^DB|gÁ`o<YI[cPVB$ --,Bm*nI.!V+Pb#wv u>L~`k#oоǫZn+B|_?z('tq[_,*& fZEm^րu^"JߘXixCO@j{'RwL#mα$[1 -;k k&'XG3\+ (AsW>V͖;& !y\kJ_IO42]dyÍ5tc[AyR>U'K :71 ,LLgj)3 -#5t&vX0hra?̿IߗSL&{[fu=&W,f~o?pGK.;Qv̵4o9Y¼cm1f٪aD߬q(\%#佖2wx<S)P*Dh!"aiı~{5/'TC0;Ok|ͲRwuwDHqwŜ6lQOFhpvpODI=c[nN0XLj'ÍNsMX&Trt8RK\ropH`W'w#*e=~IK8>1NU4F|P\j<-.9jo7GN#(yUWbRHlȹk5(J5RHj"iu+M -F݆n-ZxTW夾MW|5A0_j
<IZ)/,XI=G@ҩ2{3jE"U%g!T)UmED/OGWb/W'jxQoUZ -rkHv~)yhZM9GÿKs^[$Si# VI?M(Xt
;_ѩ>?/Ы AgM")_#%r_|ރXe(fV=s&ңmcx5R϶vvenp@?bR==7ov=NFBb
x{S$'!z ֭bF#{-H^L{o;Q_`1sα=ߧ{~Mj4!-|6ՆȫBCfpcr&9^ms
q:Vl:7ċߑ:E~##Un75D{; -H*-%UQ)i/|Qi.b@M }9=H_SAqe5x9sQwRr^TD)ׁnI -ÆIRUAc&gUvGkɒ ~LC<X:_b߮?0i6cGh>߿ܶqkD@ Y$Vn //A]~kZU)Ez8uXHaj3ۇYPxb)zy {|*`<␜qJ7JBiKV3RtL1"nښC=N(9~Zm+WwpOulYk֗5,shnw/[mebp6Ƥ -q7F0Y&冇fZ96YĐZ]&/W8A<5;,?z̾`?<M(hr:_ï:QnUhiz߆&Hyxqx+|W;lvAۣ\V=;oXIUm#&5F2J"3N'EB5gGʌ#eQˇ{]qqY
6K|)juYl8Ë8חQ y[u=9m'醊WR|OJ$UM<@>ɄG%xVM>Mgq:V{[ \<ԭHU[TE T(ޠ=8/9>ivЁ'?Ew惏8"v)
xÂcsДw|DiFH+b(g0T>;?^EH獕If9#':vmR3L%:jWK -%uu
fS 8d59Jhࡃ`ˋ0fAG73;K77aST(OdSB?g7AgJj!i7oX%@͑A[C -uB]y*.cih閪iK1Ýsai,E
JƬDy4\7]Y;CjJD֎;!,ֿ]6̶^=!%x(ũDM9ft/ZPYw 1
+*kM3Imh+9s]ʫmn4Bim$YC&gX)ͬ`sn]d&OQ|JR$W5-pдǧ>̋q">00֙ҠSxzTKe -U VDk7J~?Lo'oM4~]ˢRFxi|N8SBT9:VsB,AGCywKT˄7>hTP%@P%\bq>f,K7eV3J-B]L*M/Q9ER0|p.H/s86lݸ=<Ґy)lGV,?pd -uliGy-_ZL/}uO篅DE#nnJd7C[%6<zՆ* "COİQTEUr#VGz½-W3=azY4,2٤c)D~hd-.i1Cy3$ #AmT8i|G7I?BQh3I -kT:\(xsfsք<_W'y ٥H%.{HvebDj0Zb6>U0`i~̷3jGN%UoIX(ګhUWme|GJ'Ng&\^D
ʹ -e
f~<X`{8ˠV"<C('1.f7ɏ!W4yϔT] SmK*̠F53N*3Y&<ZTP -`ȶ/ʶNo-p[r#h -.ZgUH3(u(_]Rr$5}!XB.E)?8?57E6UIe`kwYq!sW,X_o#VeYeN`gѣ"xF/ -6|ܜowRՐ]гqKd5zDV r9a6^dzQsw!#I.RM -\7- &ijE}#(2oi#&9kMZ -Ek]+t.4{y0BaP=ty5EJwq:vmrcc²T!e!@Ċ[TtBc:]xI^ -F^!Nf@мF̈'~nԷc 呬~ʕV4D`c -eGyG2P1yZ/"]9)hij-4ȌCI:xNtyޜz|?~c
߱_-UAh9G&w&zA"A;P8;ɮQQy_A:
b3j҇XCIs|/S| -4S<'v2Y6eoT)H[[r`<Mm]ϽDW-x%xy%
: [D=3AA*.tE@ee+:#@AA?s.|-1Wu[WAZx*M^RUT]^0|t{%D$h镙?p'tTrE@svT6<MT^VT)WfW% -͆`Aw]G[ACXɌ]xI"d -h-*<zX`C xiu׆]|2S:*,Ɔ'y,1xW$[+(o,>(Դ -ZɐZ
rKCLnA,A`~eUY=
-byw|;$9EɽmfT3fMy8 - x 07P;Rz̿_a9S;>79H"Z[[!Є(
sh'cN\&OR9<.oΐmĘl;C2ٗp ->I / -8S*?|xԎ=&H>]SǼeӺEycX_Jb!-d;>nԲ#Y(Gm[]^+ZNW䦭?mKaRc= S)Pv$XhKTR{VC^t$$lG"aQkg ;us)[aOS~Yz}+jB:{9yO,^v!4` g̹dNn[Cx&PrKERE'.uz}U -S#?Â%Ql@7i6`!'5VX`2S#| "=R - -
h%Ƣ -L1VtN]>-Q|D2bX -d?qedkFנm@L -,SII>Ay ̨ݦ|U0e9 m_;i̮O~FrGJT:miFcdbݽ|/O 延eA[ŞS?BpdS'`qq#2[Fk<atÎVaɳw/%͗⏏;Y;0س9D -%}QQ{3 Hcɡɨ<XhS$|z0)qXĠHk&Q}7X~I@@
tsI,˹2#9zq-k[d$ȗ {ؒ/V3:H5#ъ<yI)[{-8n`MyȷG,T8iJLsI>S>Ք'Ft&OBhUxIMWTp!|G-=P(Uzbf(xԿ6T=.:=1̢{Y ak
-5x.YHwpV9U(Ɂ?_ֈ#5Wid4]L*7[u71_y^6OmSuړC&X='M< -Xؑ/̷sj:ƔMV|=bO -.ACQA -olSJd&{VFZ3#dO'Kl\[VjŊh`uO7c_Ǻ-BίAf1kgYN-te3DK<>OgT2VnTS}th.ղ_B圜?OQwhkU8W74$R:~y2ܗ',4L%7Gۓ1y
G s =mQc/]Q_c=omԶ${dhB#ϖ>"P^-:u4kY)ȞEzdrCxk{Ds;t(ub+"j3F%w-ͩ1:u^_U4Z~ #' UnbʥlgNTU
pհ$<C|DMPmƜN&}#6[q446;IZcNrz((m& kp{(0>s -NVoHsPuU?E,& -Qm3X>L:>N8_'mjQ~nwؒ4F"TŷҶǪ1v%#,ϽOX8ҩ:#R9,5_d~l)~y8!K<*Kc,/!E=8v+|ixAWqȫ^ -P(a/hG7)u)qv¬e8ਰ5!1ï'XM)bt$;i.SAN#9238UnY8{lPיִ 0UG4m! xU,H_>{&Esy{A:j\G1*hvߠ-E`V/$E_K\85'DHePȬ*Qio۬&_Uw7Wؾ5K U)//N)qQ8lֽӮ-sө
i>j/>Sy -P5HQ~(2uK3Tiڥ4Nn*-f_k`ond(v~ʹk~ -4<|0I⽉gKwYu]B;b$<ca#b_>q\ݓJoKL -J(L@u>GиS(fBvCk()GN?1yMCD.o*$<)_wڳT7qIoٟ67@Am۶mԶm۶m[_Om۶ݗ&GLs*5 HϘ5ԡ7\*,
mQTwm -z3zm\ahBVn~p2hj{"%M1]^^M~k8ئ{2yx*;tr;[gnez:x{C[/$ -c!0^ЛL^-xrGA3+K_ˌxO<BH_iMx]{$Eݪ<W~$1%TϘ\$ &ۚ],l^T0xUǩ%-^%U~cƴ7kٸvt - &j`73V@h]
eQwj+CGD\RoP?0ߋtz]aOĵ^_܇bߌq~-.|IM~:\&~-9i0ۃJt[Ce>L`6Bm
JkrK9xl9G8s}yaD4xlփ$r!O&4m\ɌAmB?z˦Ԥb{M4N6Vd$/\0G~L#@:6d[~ŕ@? \Uő -|=ٯ9ZJ)Z9+ ?TD}f-b쯤o^s k5}Y`qG -qMoD-e'_1U yIH<;ɧ)Ҩ.OU=P敃^͇[5lҰ=IRuћeM6P`$5qLDUJLyY6l~ֱ?5nDM@ѣRzrQtg:F{\;M;U p<IdOl4,E19q0)фtp -M2sx-cYV֪&Z;mr!]*P౸y-`l[f|imL"Wft|<:l'1/<:kl]!^̊ʵx>GV rJ@F{!W;SoQlMWB,#SEw:r~nE45R]@1<3:~5"hK/'LlY\I䃦x:Q86:==Zgn]D:d}K6%+{)[γGDF:e"kE=1x0=:?91Xq\dNu࿆QZהP(^?4ꗀvZг&f2l($f_!g|G&ˠ$ -u d&cg#I -Yzȳ5KSΏOA0pFgw {>6kGz6]nԯ>9uyq$gq͐tw֬x -&_>[<nڳ27gq89vVc~7!_&NH]֖ S'^ -W -&u՛W( ѓ,,?pg&u>UI -ʴ1wh>o]6ኟ7&!RJv -~TDҠGvAiN߱i|<SCOo,ޓs}7 -t'LYTg6%Z8(ѽv?vCE_KZvg;-ik
!^wvhU4YňSrI;#Ko5%m3ǍZ̭~stw_4ηbbp,ՙ{N%eqR@ac;g1=.bk+ -j#<5cʥNzCiFu|myy$TcRs,:̵fKP""llW(TeG$7{X+Z7j<s%7T
:]Z6<"p۰Qz\/eN%+;.K4h?8 T'h;0~:U_#
Ė@45+UTM>^[ĨxzL`qvK<i} -&v^SHOc?̵E@|8D1եݞ{a>Oe{GR\nPMQ -$nteD߇~9F8ӽ)&trT7+ 0bD.|~0 -,m&WL#' yܷ%I 0GF\vN*EoB1b^;RƉ\5("=DaȊ62M榌*~>7MuKg%% In0m_6/h%Ѻ,{s"k{P*fYk/zhbPՏhͪ̀jF$9#E'*J}fϴZl@xO낤ްgxO#N4HO}4$Nn07d!S':Y˥{&qP8]J; -ٖ-9ājZ~Kv!}TgtP/mt 30
H+4wDU=+,ĝQHMҪs@/EouCrQЋ:_uR*&8+t9J~oS2tYn,~z ;k"DSL
<(bK -pvv27y{6RXJ/O-^3^s>~ʦ<fYhGbJE~)QgI[a2eAH\xڹcRPKRZ`mרo(#P:c@fit!/0ˊ=`)/^G%B96OQAq[,\3cnzLxOĒ~ -tD!-5y[fھP/@* X?+k[VDc$YpSu]njB\8ϛxEKh=Ob>7+ -kYxzd/|/g;*'ıVұ@J|@"o`CȢWX>o}8PjǑNzLXW%hZ}F{3ai?`oPLIk̇SJXHfJFFGfA r.F^^rhJIIJ(bvgYBB<ke~6jOx*Q8AgjBJ(t782N -T`ӅVq1z,7
;if,۬RokȪ2lLȳ`0I;kB\cL)ϒD7tՕJ#2*:# -wTAº{4uCd#{3̘X[Dbž잱*$j#iWl=~ݹO7.4K
V^%VTee*.8;d@L5 -Ve> -x,?硚LK%4XuĘڣkϐBvLS -lv62s/ѝfWlV&Y^+
W\VK`]X4"u\nuslcނݽ~eY|;W<٩? -ldw8ȩp75u~Z -]EQ6߭V\u;P>pC}pbuJ)U~ˁ/3eC7Ox*$XPh4sVcT' -|FY:q;Gl~Mƞ:mruf}\7{1~c;2f -Ef!le2N*QdaQ>J§(H=LNB=j` -Iب-uDʍL. PŃ_5_undp~|66!(5e8=-^8ƥ_c'^xu]\lN4pDfEV-iѼ+r 1x;Z#s}F<d)ϒ16(&A"JI9;&DW&B)U2U,kF0.@T:=r ym&)2zI};
G/*Xr[J
༆W|3Nrq$okT -<]E>Eecĵ0`+3+%¥)QMCxgDC +/Length 26940 +/Filter /FlateDecode +>> +stream +xڴeT˶5]{pwF4ָ[p,C|ds7̹l֪U4=PQgp0J;,l +j >f53Zh +q +2s]] +d!`oO$mvpd?smrpy_da 'W俽(9+ + + +
̖DÉ$10{qa.@z +u7)l30%|*
\ }JƤ̞.+"%&Ehu_*ce
uKO_ES"`&F\Ļ$ +HT(rDgfO݆c%l|Cۧ|&58|?62d}4Zn|oZ3S#k&u6'T83 #A5F+{ +Cy}bSCwe|abQ\_$$7Q@YWaFU36\z +RlAhQogE%a{tnӔXHcnyD4^d+e-erM!ۋůL, +R$F.|,E*!u-V@)znLD"8!%\y.+)JVJ D,Ojh9W`nY`*cy1
&u`B`=ʰbR;jdF D>nAPV()"&h _ږ(BȹO;dž.Sׅu +jyBȅIS-NU<?҅"fؔ-̥9)͢6͐64s۪]H|OZ*jpY/Op&-EX/j=,^n/ w>Z%ߍD`%Y۵>NU8;!<y|Sr K!CGَpQ3/JPkf(?x̸#NϰSd{U?ܝ1٬)5ܠo9Q**חP./yB,r*OU¾ۯ 2ٯ2rH a<TJlZ(n +.l[I$~De$0pbfte|dtʛkimP0zV!m%V5}<=>+Ю8dm=L.mL`J]V
[osayj;_p<hU%(,Ug#i\H<^A
4pZ9_1?~-3֜DN$SȨO= nkˊ2礨KFm/9f+Y|B--q)}Uwy8݈vv^qIHgE),ۍ{ռPO:⟟:k+|v<er9nUlD71l^fhfXdpiW8MjenRP-;n#]Ћʿ%Bi;ɒ*HCSO&>҅lyvߧ& sY=]1A
ȯ5as*~`gjm)>804ZVG
}O@40^Ja8y26ft AljTd.F:$LCJ:chn2s;XHJuXz+o:q'+l%DJ-t_m0-eQm$YFpѩ/\z]T~'6! + #'e7]7]1)tbʹxD)NYdrs砊lyW*9:ݾ\?ITƴwbg@!-XpgXJޡ_ٞDm"x1߹v42tJŕ+"PkWSR9"9|YMca +b\u8+MHCz(pO\]c̴ga~甆U&#XPJ+
Fugcb5Se
r~+c"oœ!)5WVĠl\$p`}KA)O4p`j`x8 KvD$]Oߺd4 +|R䕖Β
&*f3P%(휝x<n$Jo\M_,:P!F|~JLѯi/Nk5k`ѦiLL[V[4Z]Shx**u|=iT|@F{pvY!0/B%1sNW\e(\_&/ӫrlMB<}G+p"oEALiذc +9|zE`S';l=w+{K)6Ea鈆yaܸVmL;JU]u(QV
sOXR*&ZmXU` S`ΫpqKBIEa6gb(±4;O+ +,za[qS@suR^8cZS~Hf6v +)FGu__TT&rWݡA +O$+F7 +>w$!kXqiU`Gx ~5{
4LZ*.]ӎ>5eX_ܲLlu<:ƒou~Sqbq&h)xh8X㼔B?iL9jM
i?2cBҫĠ aLA3^_[aQ4Y:gɝl.$(&^|Թ,pddfd2qLTK[piUcJ槗`!zT>؉uUd%/6.`Erj2#|vA^QŢyV?bḤsxwq`{͙)~ZÆeD-{ +/`uES^ Dj4Thؾ#-_:j-R1gbe!vxѤKAVmEN}l%p`<G-/47 {l\oXFȃ9$/fsEFno{UeS|ƑLMm녥.G vYVN%2/3 ^$e%i +WCQSCE{0,
ry_!Ks$-X6G֓Nm+Yu\2&(=Ϩ!!=\~rJϻwTrŪHr**KOp2o1[>os8?#1mrmdo*D`J'dz/(7rz?]FE<o%[>δ8?x_s~?܋%7yexےxUh{|\@mCԢ`Dկ)]bB&*kxS-5D7o4`hDh~JMSPfc?dwXIU
Eճ +%zW+5)DREi1qG\g#^sy#@~vV(qW =VRg=G\»Y(i9 +<䒚ػUckGz6lj`UP WwoF`TBv孡U +chm4(fEs`OzL<FՃ4vݿ}x(cf. +b/LwN}QOJI.?0D5܄SV+iftq"b[(+2a#bSP2:SSԤMq]!]ׂu
BpG ƋP> ˄.l vrۊ9Z8 +NA&]3;)q0aĦV˸ܤ[ +4+~գw6j{dD97ˮ,v-zWJjlQgS4yORή`䝂 ƈ"j,l:X<B/
{:Ph
vg}jJ) vzkՏDd+ +_V,둢ŊnJK?ђVo#
~<DaO8Z:KdY4{H b}1B@8< :T~`$F801zvWYOhK3POt&y,~F`k`fMξv6b
+2{ADi,15ڊ*uLiZF+/tuP$nHOuZj
R"UD:m6lβ˂A~(|{Ԥ~5;ZIQΙH4C~^6 +"b^tL"Fe O1B%*$#T +OM#LÀT/ JLjHM/˴~[7pgZ᳡>u_kB܂<8&Ư@b
"J>{[`M:h.HѮR{V}Oj;-'CX\l +H嫓̏J|Ϗ/)D7XԐXTU$gpCyJظf.FN:P9AƟ8t
-/w!V\SR6q'iy. %s}JN(^0am%%27ҭwM".S:ȝO.$v$o_g^Y$J2{RVra +ë&R#E?D%aZ`0nP0!ͨfE͟<l6.]b
E_ +~˄z><PR\d<baJz{ %vo7=@[m9U> +#o~ kR,6`kuM{<% )O_ӋkGtJY(5§Mi]|⳨t35߂+ޒ:ג^'5NnL1 F`^ċwf14{%3=4JYQ +Ӯ-.<fc^$=n5}|o>51~ᖐ6<F9E;@?L$v?m[
}v~)c{Q +=N U)xDlhHK@|=YTsˤ:Cb]AZ&bdw!,aȬJ%: +̅y5UN} y3`n)wZ݇]DFbNx?K\_ecتkv:K}}DTT;N闠Aqzߵ#BR{~^UR畏0}1ҨGAf Щ5eW4HED<ܘ6vMs[W]4k$^njr^0KI(!?ܗE\( +.)/xn\_?ޕ6>$l?mPgIBmȁV˟h_M%u9k"4>6+$ɣ쑉<}b$c +Y5&r?^q[#G#/xyāhZNvebY`VzW|zW{n^e6Z͝Á˫TM5Yyw=B>≋`Ci*UPŎGMt$?܀B8}fm\O&2Rd75ϐ"Qݵ)^CchWe&M\EUNC\B"rm{Ө%Y6O+f-bJ<a}F8(&A2 + +k/Ed_,B1\ +#Y +Ə"5QH6K~y)3%P|8^ښa,^ `f)D`lEMNEqo'_*v̳{6N5:'¨#ӥhv{Lܡƻr%*!zV9wάimP!Ԝ3|EU-- +e0@\ʼ/4'.s>E_ȋ/˒kxBW5=I)bQ +KTD[0o?k.b8~**>--,@eBۡb,3$s.3X zoL?tv'fl`>@&8>R[n_r}E}jY,y>T a +4>$OU]-k|njy /w'BxYvV*e?eF\+ǦԀ豒e7DDUQ-ƫu?3r^4G?35Qg#OD~[%ж, +2J-B0ĴirTTr?ZGH/N.`CnBjuMǷo\P1/kFYυBy(E_^{>,XΕ +gVq
L;G z + +ZsH_W)Nّ'vM$ږͱ<> &kr,ZOZHk$ũ]UR4w9olAs-}GyihN¤}!s=?Nn`6,lϳvRםi@ +뱺q;Lag3&_мdCٙ\5.Cbڴ믊7v\"(]5`:~ź]|9@z<WRU[}>+yr[ooǓK;4"Z)xӈ
AjH Jah̛_3 +
P3Y$4sNngnGk2Zw/0Yٔ=HFBz^fRFzcU(oj?}iJc=mϯ4ˌki;y鋸1o"
rE@Kw +mʠ˃R#bnM7|CzH ӳ}]ةMk#9 +h5II=f=c3ܙ˙C\OTf8*Yv:Dnw=.QZpPd3v8R^SjMTzbal<]:G(Uw6}ˌc#2GDNf#Sڏ>tcHea.GQكtDj}?Y:^|$|؈lR[z^i$6 zw-Jbv* !)`{rRGkK3B,S2%*QInd|Nt<WwȄ깧M<˕S>%&Mb@Mfakx]D(kwlk=#Ìܾ~ +y;#+}&n=u/1A->O٫s[Onu~JNTN5vʄ:ympW-<e#5} +R",x9D + +GWU[f%DZ}f<t՛'k +IV"),Hk-W`rcRVT[0+ +oHHnZ9wHS̋lv̐=}쿎.?i=hc+
tY"]z]uAF'澉t;Ԩ+/!KM-lZʝu> /ҏK*y;`$ +o^ePKrnsiv<?V?,jqX?ž|6\Ur #F'M×Qk;M$-:F"Gz1q^$xnrlBwz6ͫxc1YmCN4,~+fMzDot{dƖe~>F:.)Rf~qy +uY(}Պ{m7F
57,IenjlR;`y`l'E{|g=1`B&]Q7T3fo~& Ζ]dv#ADjgInhAv[+h!bW'$Q7jreroDahzZ_?驥YXl+Wa@bf})zEՖk4J@IN&msbۙ>m۶mضm'{kը~P[>ା{dW
RK>owG[t tM+.+cHn]`cMG1&E%©Am}u+XsڤB/2-ixL.5si}h5mvЯ8ݙ5H]UFbs1 lRV612I7'^+tZ#gV$cx.W-3d?pbTSy8e,BcjEsot
27$gc*P^5Ok3c8=[.,DQJ/ +s4cN$
",A6s1UhFnʐAf\^yHۏXl}'"'M/N+҈:.j .JHR,BMѪ(Rx/rY{ZUQycQ<HNr`@\Dݢ5Bwڙgy>:ʊItYDVm=w=]%QH聱[+?M!Pxb*8đTSiDaHp٥ȼoψ$Yl<ɌJJ%:I.XKXhK8!y-:NK? Hħv{C"A#mogz:x|Ϸw{J6#QTiQPmq`*h<Y%@勈, +,2x;*#?eݒXs~ԅDaeaQu/<֭8]R S=hfk!ⲻ
(>pڤ|hհ:Ӧ4E!!
YaC]Hf 0$jAq> +Nr<_PE/+hrD&40rC`WkKgNboZo|g4ֻmbվEhXKG5Y[&֔5'/6NC)kĜSg\ +(1X?8,<jw`J?Y+W
$kL r4(yb(.8o3| +GKL۹<Eo`F^dsyjZQbet6b M9sv2LP9<2\pY=J^BhĹSvt͚p$O]k +_H2
ᱺЀ{VuEwIC)5ndI:;BĖyB5(W=
%/]iƈڳqv~hddz.K
*MY1ک7Id%ivpiL4;RxF>f +F4>"BdW[Vų +L\AZ%k.EsX/<,p)o^N'VQ?VΊ"M#Ecn`5.;%VMwPOZ1O4aegt%T{OB-45({s,/8Uc(~w)
:wc%dd5s^b#b"X +G(*u;sMY{K.c5_]m,06 3'D(N-Ҁmٓ'0*aR%Ņ6^N~$XF@}lMhTfިukº$hO|?wsSh:`SsMVl3KtlOגѫWD݊&,9+V +:0R/ۃI2]
zXbԂV2]F6Wc+)UfS"&>AC*=/,vm=TL@Mz<N
JBG)ĵ;ȫ7qyӬ&㝎Cg?FQhöLb5cO7sͥrU3]ɋ+dxW&MnZm +gPl%LCxΥMHH +e${ٽ\;4e"\?0h<g6"PUmD݁rbm!SHIeG? +H} +e^F;c(]_!4uS3J-Hʠ!(m9uS(y!Rj?c0dc<|S<pKf7FsȐVL=)A DGcW!/]ޕEAQb;މaWl1.KehJ<U*0(V\OPgB<|"O][clR/]^PÜAݱcucpF6F'< d!?
h4)cygoݏѳga*M!$gdy52'~r&G3C@YΑSzE:[uF%< +z$sN49LbMaaGv^~-
+# {\#F:u5Gr֬]yȲ2 +lMQgAږa:@t?%M^u ΐ!5xԷTPϊQ 5նhVzŰx8@p'C:Ѧ,prlMݻv +״Aѝn/$],SO N7&kŹli +^,$5vdhGPFZTtJRy c<l#F@
V@\@1
'%fQja8l- AʩiFb~NSV݃[εoa·8z?ۚF)̛ ϞŁzBlxK$QX:[{/ϕ"z,gy0sLԂkܶ箹m=Md2ZgLF?Zf̯N/eL~1?XoUY2g֙hw\h!hf, *њ[-aNpw#ٗz~S%(]4]8?L4Mel }s[iКM\#G>><=@ߑ82Pq7߱&ݵ+RH|;k nd#U@ʙ6^Ý7^8#Oro6+⥉ +<$/#ZmP[FPԼ_8y Bc(,re߾?r{Ư[zV~\y$IH9S˜ gʦ~KSWN1*xX<_mñ(A/0ژ>e+jWC?+qbׅ&QkC
9Ѱ+E_dKAUw +][<8[k3s^3ѡCгppx^g +4xGCjEFܾm\ +Q|nT4mb&" ٽVNDBw㱼M&'r!o鿧)"KNwPA,\)Kmb1ȥU{+o.H~?ʇKØh1dCYjKy+ e@iuPȇ>bw rRk +"|te>$s8ݼpf2~q`|!b`ž[֩]V(3~rly8[ +"FA endstream endobj -923 0 obj +1103 0 obj << /Type /FontDescriptor -/FontName /WOJEAD+LMRoman8-Regular +/FontName /XJQAAF+LMRoman8-Regular /Flags 4 /FontBBox [-456 -292 1497 1125] /Ascent 689 @@ -7178,133 +8515,150 @@ endobj /ItalicAngle 0 /StemV 76 /XHeight 431 -/CharSet (/D/I/a/b/c/comma/d/e/endash/f/fi/g/h/i/k/l/m/n/o/p/period/q/r/s/t/u/v/w/y) -/FontFile 922 0 R +/CharSet (/D/T/a/b/c/comma/d/e/f/g/h/hyphen/i/k/l/m/n/o/one/p/parenleft/parenright/period/plus/r/s/t/three/two/u/v/w/x) +/FontFile 1102 0 R >> endobj -924 0 obj +1104 0 obj << -/Length1 2514 -/Length2 28953 +/Length1 2531 +/Length2 28846 /Length3 0 -/Length 30421 -/Filter /FlateDecode ->> -stream -xڴeT[5Cp )![p)pw=;~~Q*ҹd?XQ^(nkDS6W9[: -PuPO;h -(oT%le%oh
ߖ5,B+@ 7"_\}l̬CK8YgfeJ[ -:
BEs>`:3]H!]xo_@Ce9T>jlF[kW `7351Ūg蛓n/9 >rbgW0Qҗ3.n9'~ˣ*lpOsBւGWf_-o8P>Gqs5{Iq=AE>[}^UkOtIL|hUW(trV_>;j+ԙg7N6cp|ԇvHt,^{`t2=@ٻ[(U`?$oL9Y$8uCf/ЬV_0iTcRx\yJ5pmp?474j'_4aTc*+Y n"1A0lk\aȎ8jciZ{/ץD'2c9-TrvV
su2JuW*D_#3"|+p#[=#?S}( -O!m(k'myi{>e0]Hr"-'`RApjAC}̗ HJs -6[-d - -"BxȻk8cԣ¿AYLPs\(Jj3Px't6H}5t-5Yħ_/>iI
@i<تQs4uO@S0h$o>S@`c^
TJ^d*@}ǬF%D32&ۙ:=Y'퐽*d⧞vb?wgxX,р5䧂5ϙ[dƭ;"0Vf.h
T,2Br<"JLÂ
ȁ][k4~ -:Ɓ>:,5hgBku<&g6cL2[a\DI@)-UA>hw`9Dj43Vhu?G>"gFN.#&Hi5*<"9(
\G3"sH@K{*̨MMV[e`06Xk!CUeILI,ꗒƻ){Y5PޡNPTp9K<kB,!rzv.+vkf̌TTUͺa/5H}vg5rk&.!%Oms8dzt#Et]<"XBJt'v-7u&<PUv~7W8GsH?t}t+\ ?0:Ry\0Vf͵-gnHrz@qKD03YttB$hKz]7sof/) -kicQ@(EvY>ѨB>baIFBpșQQC6cI+2% v+bg9jzjE-MyHTF @ftS[ 4LJ Z8k"VCҾ"q'sdž[p -Q&JB*ci@"h˵Ly1g -ƮTȧ~WPb|ЕayYhe2Jjg`zsӤ-xr!Wrru}G>V9A$\I{\Y.FEJֿc^&EC8Y$ۼ=Z -}ek -OpFW L;},!Am!fDv,<@:n@=ΆRըLKɁʎJ6XVUΫc.Cx`"n7ϋIHDLx]0R~R&,8r*cd"6
V"근A
!KL:
k߄a{_'f7|i8
y iI'ıѤ!ij/(B)RI6 Tʼnh30Oq.zEe*|*Qȷ2XH
X;y=+UCsЁ"ƬmƹD4kijOʾ~+QU: y2 aV7^~mqL(3Գ-XYOL<5/T-5H$$ՏQ])kEFkBLX}:YDz[/ --Zev}w8Ve"l'!w<n/S0H~>Ņ8ur(Fu(fdfIMz7!`W#H1#;=o0]lwn$rmw -b' }ӽ|sU.a]نa/[<9oBz5Z=#t{~)ukbO5ġB
9n@$a~x
"#kno1AuDkjGnLׂs=#FAt^]:kjW7'w˛C,2:bwɲUa)?NQƴM\[e#(Kw=hY;xc#Fe_x=IFLl^L!^ۂ& z'Hzw}^!q`&+w ZpqJѾg6ݚ[ee?/"3coucC?ȗk"n̯
<)eZc5!8Ch>3&P(zEMM=ΞNpɃO!>X<ܢ$օs6],JCA/ۻ)ffݰۛ)XS?qS»~U+!7->,~T|Uo{qx?G콡RAɽ\7ȈEH "sGS֙>= -Kuhϧж냣G_ɽi@[1*Jqռ,,S3m
Ay߇7,RRe1㝍f9iс(ҚpCxԡbG -\9
Ua>8艹6iEknW. ' hC1U[ഫL21њ1aƳ
2f}rzlЇi [?ߠ\OYUzsq[*lΦ<!m7$n$ip<A)_1^8c얉]I4*c$>7"ܩN -˽xb
ImCqT{rT>?Q.X/v $q~J:ގh7;{V0tFS7bjYlf8*NissA$6MZ<r%^zvTZҵ[+fvC"cǪ'-I8G#)hh_y -E wN06{R/
Jf(lyp% Qe>]y-qO0HJM1:!͂xFH6@TۖLo"F)f)C1_Y{&|'OثBԞ!@Jڷt|Q}Tb^]7ڷJ_/,,T fUCJ|M[pse*d0,YQ`9K0XA(B-_7P2_WiGh˨sɋB -vwnn+ fZxO>{)
ZT7/Qʱ85G -?Rz&B9tZ+S13FPq
XƋv=(Cr Qd&nxrұܱ W -ـ _aG_>C~1$M]K#WnNpFk6jX U`a -c!b&omS0"ᓵ4_ڕ[Hqd#98z/B BT e9q)WMN%m}䠢c -R7;H^d[&{N;#\9uǷK'ԔQEGTۨ=3hdkm@Kn,lP~v"\ݝ -2_i1;`0 - -ۉz5l̝4L}IEb>e<NGG'ltH-C|@!JhOfyt&>{[p0+8 - -%7eȬ},&Hn<3O;l6?z_>C}aBMl*^yo/Ӭʀl5ooGe+G.scyEx}rj4EDJE<eܘOW*7w -u6:=TMj-yQ&VN?/+[{<q!qKݿhjᒈ@,=.TVZĐi!:4PB8wMʹ~ -Ikq Z[y ?H8$m_+UܻLJy\̰0DNwCsTqmCy -1Pw7ĭM
qwqrsJ2`.uO&ptuȚ,ϴz Ey~rILD'0*%Ŋd7dFJ"0̵P_-hCiqxwSN<[yz$t~e1_-Y ơq.)2@8z1b~:LCɽ`(v -Mft+mډdOpO9.K:^7#Vu?2
y|&A - -!d3oӆ~0FB1[Eny\qzh>`kf8W`T٦t"@!?gΐ -sd4.%g/?,t6: - -,ٔBXSbO -G8?BJ U%iFd1մ,]^5,]ԍqn[d%!"Qzӵ={io+b;^=D^B
%M46\6i5aP_>͜G&>ql9eM0"=2\;7Nz;7}ؼ'βvwn576\Db>Uq:g@{AE^m϶ݔ4WSwtM1ۋ/plɄyCkֶb7Z== -^z?=I8WУ[{'A[&i)UUspdY_r"~L#<~%myhĴ'DtwGݻٞşm{aְKÕQv1RDNRNHXImӦZWCG/=r#ۄ$"Rӱf~ -/> #EP@}AρZF{s=*ps.vHuCCHdH̷Zޓ.;\vKDLB.dSn)0 ގɢɰ6b]O~7sy_sEbT9.e^-s
-юK^;h=vܩ{hDSqK#a1Qb,J`yd7${dllҧp|)RSnZ6M@dFқl{M|]JZSӞM5-^)O8ACT!uPy$kC2
#W7nh/#ثv6oR* >FjY0oKqUm5qE9 -">?9ٵ)W!7QSf~Vaho?$F*H*'jylM%:%]C_lts@/6MIGDri]o.4#AIw0:d:0, ?/A`"y;~;UKln{ -P"&]T -dOܯTnC09o"jt<c6meǧ#9Vdx,q<aјX bN]K54t}=YȲd+ɥ"J"iAOi%~3dJ$\5WwՓ^7)aLTv~('8*P;%硊bbZqΌ -GGsQVƿ2h -BZ^-R[T -yӻGI>iDt/*^SllRmg/E^ - %hk6ǿu_@7䀒W
uLtaUDWE%q\vFiZ -:yǣ`GGx/0HiꙂMG^;&WMԂJ܉<2
:\KjTH|+7ۅ>s)fJG|d5BWYPF[F|/'qPV1X~i*^yjdȿ(| -Z\Jn -J}xTz搷$5p%lY3<W싄J8]N@,ڠv vQݤOYEZ}vՏ\Y,^+7vQ3B`ngs8lÐ6hYoAX9̈́/䷃`8UOgKȱJX~Ϳ=١,?4m&loj lF,+x}o̮`+X6*a{q5Y9A,B -CGY~ԇT?L:)uVѫ=O|q~vq_oLnhA]`VM(FxzZmjon̾('!$"LQ}썩+r^vk
Ҽbjfbhak,R!1LݩW`SG"/˝0Zpzmܔ|\sND5s5ֳ}ڼ4_#ITڌwQ4vWQ'ïΌCͬ1g]igW(}6K|LAf9FLo -<B͖w%z9=STs{eͧ<4ϣ@zI3cNՙ?U &FBszh8{6FP<$&
6Ϳjȼt.-LQ/?,+m|:\z7^ -+nO -@$UwV9St e_b -=Z3vF|N}|D$23`演A)sT',?Zk))Cqx<M=!s`{ň!#NZxc+ڼat)Ʃ!Oل+#WO -F_y>ucz;#AoRm"eCkFF$c<qMdLz(uɭ4 07#}i+JhT{.
lonmn8jGv!G'Hoö;udK6RPBV6rMlZU`87EЋe1D陙33ĵt"A ԱG[_U.QnԹʒR{1=⾊Izc;q@hSEGr#0~>캟'2Be:tAdlRQvDį<5- -qd)6n+ -
3y(/bE;A.V=͡ -Կ3@m?c7.l``9hf;`(wpvMI@ƄX'IF$< AFZr+%4^AdT8}^)kplUDm3F!JѨ4B4X]NE(|~Ur`̡ġx%]U B<\S]h#ԏ -e?Lkgx3zM:thcee!QxѨ?.ƙPض'e17$2`ʈ}Dr'vHɾtʞ*Ejr
{PHЮbjى`tㆶ߸yOb -$&$ROC?ܨIٶ˥H^xǦwvc)>WCSI '=k?k.Â3+7 csbPk˾`=YHfWgk.c`3x.]ժZ@czk{c$g<~RgWTaz^43\; V*,NB!zH/ۂW]
. bBcf^.A -Gr$ .kɵfg"(25ԎXEh.XwM*A(qNmLt0pv,Շ|%yL
77GdDC7/+7IUo*S9}"9tjD[4T^h)$u,"Q]6~a*C{e ȩˠy$L+꧖M"'>}9)?^ep*[znR֓TN@ duyUٸW/%Zag."6t)]Uј=hѡ㒝˳9+Um:mb.:6?nplDY7|Q*KYnr%30c:un -}GT\C 2kv.Jq -x8zr0/N(R)#J#DP4*D@)vi7n -ɵJ~UR6_Og@53r^9; -WX\bFG@̫?0#L^!1iF]4i -Vu6jQPbtzA]e1k/z%v־_`G+-L>L˔
A_g/8_k_G`Mv5$ -u鑬gq}}˂|"_Khnp)"X~}Y z"Ў}}NQNڿ -<-y.WyګZAR=2g}+gPg?QQ0"L,\U$4._'Pp ߫pzɚpeXϮq9H;'?K,litawNQd@fYT1h[?[LHl<@n*O_5:,-TgQi"O.(Xn]>%l<28-=|
T:?P;I&k,@(əā -ox*p;)Ue娰]QFo@J6"2"8PhWàrUwkXwXbJw\Od)MVoZfUTd%c<uN0x/YtlgF_edt8nψJ<"iӯбϪBTAae] -v"u.R[}iP"^7ؐ<lmk?l0u.?{T|@7\W(cGmm(%UWOUϺө[MM?cTqhi9PF*%d҅й"z6{u箉C;µؿ)QS-AhY?k|Ě/hd~'f -l`Ty -2gH7+1Ht
ŕn&4Uz,'".P(&}d~!=00NK:`j\h7oarF>v_qT#;
.g7V -i&\OY(V A;l?~¡dKQQ&r4pEYE Yv"=<C78>֖d RCdF.-wr.MufڠMѭZJ-73
?&Hi/%Uxy\b.XHߊe)J/*dVh
=&?9&\Z8نDqU|C# ~Bޮ<zk":61=$4s<<MB%eUIT3G_SZⲮ:S\TwQe_n -B'9Ճh͛]^!{!Pџh: -<]}=3 -tYJ!v![{BYt -K=Gc}9UXX|,l1BAFWF %xP9XcM3p-Q:"M
Pg/uP+8u6-#){DR̻dP-H0H(.єHۄ*Е)'fp30ȸ5||z ,{wMnu߆ۗUs6. -3)}'XvLx9Ƹ,K/蛳 R_o,N1K$*ϦvqAIV_/JKǦ@F_Ӏ2Y,4Ҿ4tئS6)W+W^nkx]uZ2>kq^Jڵ#Qˇ!)2M==bWK"
%|b+w)|^h-/PxOo8l[u.U]I-ss,VlX?ZS -9E5woX`R_ ${oRʆ
9dS/kQgKt13Qû7PMF_d/m[cRc/*`ȫ/'b(4 --r#r,:\*UR9K01ø丁C[ZX`(FEo/g^>OKKsߓEL3fPnGa"7}3_华~'9`ʂ#25;'L@6FR<®"7hߧ! e/L7ː-쿞>gJ;Yl](V-Zr{Q@ʸ3AAУ&W8~w*ZZI</}NS3iKa5j -pvKJnIilav,uKow>2 -{c^<SNjߵDӠU@T_d!jcIleMK0!|vTSGEJ?WiS?Lȓn ^nљGL9ҥiJ7r
Hy"~ -}qgrVK6)[zD`>Ԗj02!T@z\՛^N96م -n<%X -Vp#Y։G'cfAQS+K=~n(jdW;X/ZΊpTlJ;Ary1R_X#5u;mPh/!nM,'v)IoPeS0ƚN6<ΥQ׆o$ -'_QuZzRVvPvA34A7(ELfkTtA00sݯ -51pIm/콚%?%'(2U?c%d)141v&bj#dIѠ#o}晒+~w;g)s$J%3|]EͳQ.[M~j.ĵMy;z("!QgM
F^i >`s{D\DOE,fDIìàk7GJ!$[v^N -lU\a/xgvܻ:[Yݷ 0>!Uk̭|0463)3RJn?p -jgd9?S8^>-z\Mp6tk("G]|7jal<Β7O@@bPVDO=qf? wLcMtSWq'xإ'/yҊhS@,R8# -o Sqz"3D -6e($ʱa2b_==)-{EQi\`Ԃ3?"Mx}*5L1|ЇKpA_|Wo<:>lD zlg|*H,,;bx<ZqjM◺;q:E1$M8gw;JzK1q̻7JfRdU(mrhzodF2 ?~}3O -%ք{[Dθh!w]p*R`do 7␄F3 -I)F#A/c79чE秋:K+3)SnTpLxKP[8%|e%o\s˧$[P@߿$זPoPİ<:J<>=TuA}6V -eT\6_DLu5k -Ӊ^b=B-."OO7kX+ÿ"֦yAibv7w|:} )|Sc -l1\e&(Ĭ -{}$ڨ7y-5 >=o_sT0Gp]8c?>P kc:8[V -m<7Z:P~@oK "e#aEqǣK& "i*..>zpW%Fmuy 4%ilpFc髐\wiۗ,/}zqNP*:93iǝRr%^!b9I9GOԉX#D3HWӰ=2NyB♚M6 -Ӂ/VRh ~+HycoYɥtcW㺟'sLVJ^Ldr<?Jl$ދE"?:g -f)<>x~a&e|QCtRcu=Cʶu]a91J/v k?G@fsM"=g73{#gM11p#+cAAUXB
#+5s(T<L9>usdZ8AnHzu\3nY,q2ũO?Pc -9:H݇˛c^pބgËQ(9tEǾj<KKek+B#a0Sּ/]O"Fu.Do6`tw U6X0&oBm&9(d٪؟}mfj5aEEc >3YUFƿh ;|ޝcg --zhi ˶b!&`53(yF^T!LZ\=pWR -̀PRRJ؉=J>qoG-v_zGփJ&n~IՠOӷCڋ3S|Tg;jRE
y+<Y73VlOͰn^4BZ -qIWhTfy`])WH2rl=;;׆_p@b"lAʌ -fܿ}?zRڌAz G?$
3SK5~]I1dX#~6G1k캥AUpHjeFM-ghp*k,VTcRx8:;,9$:(|P).<Β[I^2zU+se@7'j\.ˈѷmױ6yfAY4VH04Cwn^TX<(@џ2q@`Ԟ)GEl;pnf +/Length 30291 +/Filter /FlateDecode +>> +stream +xڴuXݺ=LtEâ;CJ@S:AJBٺ]\ĸs19&Wde@N,l +4s9I +f z +0DR;@␖bQ`zSuFkZԍخYr w9K] +ޖr%N$;9&a\ePVz}govu^B'$Ztg'0gZ; +\R$?-IzBЈ1yVLk]jQ={GY_vfoad/ti@RNwGe[#}ǷcH;˦1if/eBs|DCeak9o3ݾ*.PyUb}W,1nP6;ѶcG-T\N!cگ2y
TeҦ6ˠpN`R,JĽE~P(i,KllDu#i-5\kJs3%-F`A\nuxK,qƛԷvGUDPvZ&azsʏ(Nnz(a~QJlVC%8/]""-Ɨ.b0ף}6pg9FkP:ko,TPș4NsBX|2i[p籴)R"4M#g@]g[c~N$Gr%1BW8 ߷ ?`a, f Wo<wc`f9~^_6&y@cPvBRg`s(l6i;{h)N[ѷ?Nv9B;[`IinE-jjRP&'qQ-G>6!;{%1q_RlcӪ9QTaUMp9擄.w-</ԑ
;n1*;erjJ1הO2XZcŬzdߑQď[JlS[Lw6MvbVh[nC^Y!GTm߮Mb/D'U4EO!'U_}=b'I\FvZguCUH-9w|2JCl@\>?&
c@jNżxJ':4sH;f÷oغtHzBy,,":%nMArq8G4Q;P0Z&f|:MZLl!-MN]:F%kг'N.ɝ5b~@JD(=Nfx1\wVN}tDx|Q3\ t[iаԿHcVLjryYK:ot+X{Յ>w/Hxb 1֢0/O[\[bpܦ0.E%eh.^,sAd<GAwوUg +aF+x9S:f8x7c\VlDq;[m`ع6ep\FކP(jdz}# +_ܷ0w/]/-X={}ĭ +U!^Q5>?%~O?{nSo^L7ܯ f|e8{NmX9Kfߓ[)ϭ0ZuU +c?9X}3 +DtbRweLւZϐµ#b<2Ȇ֢/&KI!@B̊q|Eƛ
=`~J
2fgt:f,õ)g$d n"0{> rxEyNq|V* +.XN]@r;1 mVNt_)xv2XN걘C)1R}拤&aXr
F_OݱF&rWݑaS>FԸtbsӘiQH5e={[@QrI٧te(.29D=J+e 6K$4,cOj.YܓKpJOa+qkŒOk^^w'j[M NXe%1:>~&odMM 0b91FvUT:w{<+PvTW{rNO',3Ey p?kd-S?*?[M;Ţ9! QMt2ڦFMrl^.;E{Ri{IPdT/#oXd?z9`I}#52+(i)6'E?O*\L-[4^5'=RsLށZi͓o^)KP-ʂXxpxfO[`=5)q֏"X7,<Z|3Ho9|vg=HlgǓ/1ggA1*XM(ťn4PE&B8|$8㣙?H&+?㉺m yWV8UD"3ڼ5-g8WFXKeJBi(?fyׂysS]sQ+|MngD1=F-\ =$nB>ˊj=Y]ĘCC85{c%]Qf)DO`iTQdcH@Hz{vVJXHgtgJaV=*H?Mk
J_9_e'=ҹrބ`nxPvIpp$/EI$13S-}q4\K{wA.ޝgTm[v*h>#,N1ΰOzP^qcE;]}rXp_(.pX&Q:Z/xhw|YzV\i.]hˤr(lXCf2 +ؔW CUݞ<q]SG'ie;](KGlHT)j/NZJ2?C!M˥bD{kfGZn)Ѕ$F1!0mA|g18``^fr{y'rYFJ($'38$>@3k +I +_5w|4 +څRINT$1Hy'm?U:,ŔUmdś>vTJ[Wjܬa>"Ψ msaVnoR{a/4s>VE-EdmEeڟ;*))Y:i:ue:HMMDIV\Ìw¬V~t/ \ӔE'ۘ8D +L[m(A}JG6_YV|X!.g@)qкk,zX$B[ ++!#m#P|y(,H?P-fGU~j̧0{5F8@̗s]=ev<AF3!>&[O9SU$?W5dL|YYl˽Ge06v~8w~W*>0}vά]IJ%E)z p)!3JwѕplKr_
/M kq +`tdz~:gai6ˍ +yIYtmIU)DVJKz\ p p7U)c,ovھrcz|u_#V(z!J[9EtH +!
lqn֙\3vzw%|<۵fq>!U]盵$6B`T7o߽`Y +WFKiEl*z4'WK\ezK?|,hwٿc=k7S?=X<V +MRl{q1W9
8*k~yD +1*5LsϨ'7}ZQrFBEW:/Y[,lAB,ʕiRn ӒC4v/M4hv.LJձ<C
/Ϟ~BD(PҢK\5CY͚)z"df +d+|k<A^ zΔy%މoUleeFq co +G#R<@Ph!I"MjH=iuSE?Nyij&BA2'$ Yw&~4.lwuul}IW|TcKќH"~V]fiѹD~4vr)W!o4*dV<1bbu[KL傂{Њ$2&G}xu\ +\"K0d(vrXxb8nMatHMeI J^[
sl*V_O
Su +0dK+(vZϻZ +bW"o4}.C)??K=$S_Br/#69VWGzB"ZPQN6mQP'Ox;iN?^ +\cgR)qyK9j3$g#*,>T0d0dĀ:;xDajL4\ь +(EaCl;O1{auY.x.;&|_'+EՐuMM)q?FxZ}aBuFT°- $xO^߭K"wvMO |(ȭ,h݀A-TR4~5ʖ9urgz!I<٘9Һ0}5BAciWSw6&CoJ˵6{R2Vbbp1Z9>YU!FNa$^o|oJaGL%h~>1Ҭʉ%d^H^`4hʄn3r<0F畈(\LcA~ЉBk* +JFƙ9ryϬ_s=/F~ޟycg/$HQo.WJM7c{ݡN\SJ;O0N8[%?B j!R,Pmضr5龧`hǼ̞s٬6M4r{XNg\*(Q F"Ҷ|aeGJO6xsaͺJh,(GT&'[psᅂ|[~*i^\/)ҕPHe.=!ldB]dh32k|cxu`q:HhXb8G#Ut.=>sƷ{a+;g
Li~~z 8 ;ͲUdzd5fEiP{ ,ﻉIPDϜ]|4%>?<RI# "-{s0tce-zN'Qe/BA՜yJD@Y&}_R0̀nZ]֡!0Ujĵ
'zg%^7ۛ`EɁVr+ +~UF(_1\OsPf,0@Yo +`;&|+XnGۙ>y%o8o!w;%&nbKN֚!-rFAD
|0щEi8@FZ
*&T?<3;%.mM!1g+93XQq͈ @uݹF D/=@MzFVڼ` (=Mbb7Đ;%Z7bCZ{]AH"^l!#ϊ/IE<L[)2Q[ +SظݐчU11zg._;e/&QpHr*e/
<w.%WX`nnG9pվ}*}1- +Q&g [j3ݝDړwےVNq=sM@wDT@0s%[(ϟ01H7l\>,膍0e:H$;X]K}iE&}KYF=,mwb3M.Qԇa{ت,!yoJmeh9ΞT(S:ୂP4E"Gl؊60@(w>w +bv>uQ=8JlR+mvQ2%f
}>Wk +玝Ѹ<m ]q*wpADXkGna%&Ed2{ǂ^X-[އ'6w$VU@?y쥟rX]: +-UDz7SĨ$j=ImoDX`Zǣ3p̓X {&;/n"2B4lGU)uD/L իԆ^(rƴ£DyXLvxj[Y:Iv!7rnW-B:Wq"h'MP/}7~;J飁QJT˭*Z-]=3\]^䖬S҇)=_|:1/!H4Vϟeu0؆YIູs
6&sCV욵-m0Nף32&4&t.ˌvXsMlD?q1=Ug43hφ9} kېℹv
;ʷF~QM]'Ṿ\KRp& F#h.UAn{}G`37\wL ˷yNIP?</|?˴s&jӏ5X)}[5ih"t]1{ʮ/|h@ORf#*Wf})?#\j245$##Ti/X-:?fx.&}g8ܳm!GƂ֜5lFd +q>QSKɇMA^}+ +BAך.cg4:Bu%ɪR?R=P_-74 +
b]&p̰F/RKĦ78`BDL%o0e
*hΗNL&y +\ŒîT9bZ8tb+4^{G_.]]كs`Qz1v:]S(<IrP;>×=K]
k6CߴKد$ȩ}a5W$d]mV#`}8L:$ޛXE1BFN.0ؚF!G,/۹&LXx %*G}AWkG*8hC/D ,K^-d駁j@"s;t)ODW,@%LirZd3ßi0;&,n?1C:RvmŎR'^hi.H7|cPۆ^uUhϞ&{i&\JV#9<9q4 ?^̺ec#&1E{X +40HnM^.=Ib6tB-^Uڗ),ʔ6;qO+Vv<]maU\q17K5)),r.y\ͺkw +O|FcFH9[ݟa,T;veNidܓII]U쥤&/Bo-1\LX9͛Q*~jIAcýRG"57 +5XtE4Y]}^ mZbu6'9<oL>{5a#+e|ٲ:=B %*o_d`ʢEmDx(s˹?t2(l_Oک7
|_,~L~ܭDP0_WSc09V.qvxS hC;XE7-?lvEMb6
>@nrX."c40=-bE9"f~˱fTfUXsh&xꃭ9ܭ/0ʭk<f\b>o +
đ-,V6<taE'SՠLHl{*7&p9ZJ+s(={ +ݘ~2hv_ԌU~V
A09)2c""RI}LT)'Xxo/OBm5Z"=+) N3U_>~\eq)Z
x\kj0fG->|)s\``J>3.Kr]~ݠR +GO=L۫(13$Z*yg !#͝ʍ1XӃ}L#s;KUna0W|!! +"R7+~ =or~ǧ@og\ܤLD/ 8XHסH`nXWnq0тes!"X\wO=<AB+U)b=q5C2F$WրdcµjcJ!܌KJŇ6~^Y&"uj.DOp!HscH]~֬ftnؽn4+/@O*04yT!ѭIJ*M`ݢ hE&MMgH +Y<|,=CyiAg<ߠ.+ͯawȞ-M"6I]/-㚞1!˙цQؓ8{?r$Nq
PCM|۟'"-/IaR5v}yY8-9,H
kw]Г>ךONQS2'ҭnxVI-Gd8 eR_Lgݻ##c:@rK*)ӽ.yݎ0<!"9&!sAuR2:2Wsؼ_J0nYm\V)B +0NơOoMIuaA֯CEIzBCn.()&v ͷ|Z1F!jobN8\op'l]ѻ-U&yqp],r4G:]ȭݞaдBMP@L_p)&dZr/3#!:{B~oJ@byNRW-ocs܌yYk"ei8ɛoV
K3OqrR4V8YHzαI;`ۮ=6p Ġގ9݊4!hD9߈@WtYye$Zk)C:6b13BK&ѫ<1܋J1L j ) @xHRsC7|7JόƴQ4HL%E+Y>ʯ&n8>s;EZރ!$f+K<ԃ[Ms=ַ\u|,ק_#y6$j$\7p>?9C}:Ój`9z!>Ԛ +Ǿ:2CNdvo}"ՑЈf} +UF:i>ڗmmԅreK#STu$n{\@ ߰>`reiOn#LKC^A[-aEo5pyC(?4k?ˬ07_p_|X/֝"J)քdJA~mPQGܷ@|Ck;KE1`^m&Jq Po;K(lX]; z7.+,}s?$o_N4C^ +[Zlo +lJNCSOWx-h<;̍cSǻ%쾀3>(f>iXJ=MǞˈ4Fvyx_3j-keWGdWFVL>K'VFT^r"MQ~n#!ķϦVG: +Ru2]zTD +r="|bBkyE-}1yI U3;GvDdcӯ>rW,e;"ɧx)GL;
AK;&5}|o0f\zW߉z6ۆ}yCMZkkS_:iGOaWxC)~ußA1ZM_#;=@Yz'8=t[`Hc#_\ƻXz~3 EB炛m
kDt[\Cx +xYba%L]Ll~yu/OC%B%.It(œ +PlӏH{Pu*o!; +WOȯs/p^v.pu>?pf +lT8N-VnfQ[dl]/V+~`CƼY(ށ/υq0hE*ݖ3B bMR?o~[/w\߀QEG`Cs>~al&')$}clJ5oZ4duv*FB;? Oiс,Yh+x~3?ʳjcGXG,6rrԺ! +*_SeDV?XWı5M"^hec S~,s*׀tRF}Ml +F#\wC +>}>GrulډozVu0;'>_U6 +GF[p$_dL<(;py_@28ΎLER3[}Q 6kq@@ůmKu= +d? DP} o=\wp=|ױ2k(8:@J\>h?o0FmPZ 4.nʹgخ 9~N{8x|}wp>4x+,Ueܳ#S ֥xP2QSФ1ĊǦ:qXP=in{Jc;
as?jeR-3JZ˶Ʃq>t@ |E6h(}OS>[VTϟ0'&TcQt~ ++gIG-a +ayCP +4xCh%0IE{MC9//iU4:BRB9)|+]-S\]{%K4.Ѿ8dzEsj{<=:mm|)_?f|Y8HcIc_y7?O().1^ +2b%I`K#iW?%A3dܯl}O*G([o7NmIî\nwYިAj=pvݩltwT k/[#︨>eZ^"BU><w )h+"c>gs#_jӞNt\y>vfKuc@BB]:v'&O5XДt#1IM"Ibnm9i(dn9F%y[,P(Iֻ,F_S@N"Bne|]#,gv9`=&EGG4\&pO>bX4)Za)Nt}"T'/ԵJ8/;2:=
htR0]-B{|n0&5씷heykIT'A^Z;Wy:Hv8P1b3BilIs_l99/Z;f5b,32 +Y0[(6jbt\'=#^`p1J #yB_Ku\ZH!{K},.UDO9[k{{O%k>)TV4a238BbxL6!MKw_glLݲY7q`Z^Gr"WHG_yhߜ4'wh3t2u +Ӓٔg%$Q*se>YxF8jo>@vz(M {: 5_i8N([94d>A +rkZ=|ª0(myjoJTV͉7WQ^(X^pٵVUka0C4'<Ilӌ=4@K:ncOȺH»U +]rPzVe ,:x#qkkb3Z5d5{/vVB5o[ͭE4=[]&Rߠ{4dQU7ӽb۠7i0?%﵎6MCW.:N.t
0흥<^!n6~όXx= ^vaaQqe)Žk{iqJG:+%3 +f+g1JRYtMȄBQHY_]Όb +~H`h7()O=BՊ*6@/)jwbL%PO(Ri&moȖ[b&J;joi/L`@&G+T7\7 +Փ;%zchPE + #]TUxT)R#Y32]"7}K\'tԆ=7gX@㣉>v"Mōšim>|,h:Q4~ +rqc>M?|S^s@Bv^@nN~X94*G'w\gb]%q*0Ѐ U4m^ @%542Jī:pm>5I& }W!TĒLA$KujO۬ճ!߲xkqb +f^X keJqjN@idEiij]ttn(t֯m(7w}Rx{*$LCDv d+}Iч*! `;Q +n +F N~J]֬H1Ip>A ('x{Y(&r5w掋eDZ_4o5P2+ VꝀ+5儷:* +k;}*2'3lJ?vcSPF|RM`KmiRHD8w(+jW^DNm&aP&Vh",lk)tԵ*>DenOa\W͗8F0D E(y9;NMaGJ^Olv`0Y/b:ug/z+ʗ<·$Ϩ4ۈ% +alrRf
ɘQݴ~a6J*82Jv@l,V4#|JPIPґ=\{>~ҝ +#63sLQ]Rmao3ESL +r}@yVgG_|ΡjIL>K!h7SI?x0 /:ZXrh\lS%9-z>;śWݕhlQ!d:1J3bsڕo%{c)FR<=䶯1UvT%NEJ7;/ӡL?(5>~ qq,E +Xkœbd +o9Qf +gz4 +3IN<wfm6{^&#=ַZ{Iϑ1a^?1C*oR5:Oδ}-N=ƍ֑d$E3$ء@x8Jk?jMzLR܉;Uô^# +]]M|JM,E"jutzFrs!I}*YWH`x4+t^qt%BVYdymDYe3sגWbOjR) 4%+43W÷{˕iS}07oKO5En(>>@{DUe$#sܶ3DzS(Uma@:QdjA=Vb=&"|!8YEN`w;ώ[؟pj쫙]%'ӵFw;e }ʾ"7<NR4۟kbb.\ҰKwO7+ԅ[L>4г냕{ݼ[CKHʰf WDxVJytVkPA&dwl71dqhn +4wHuwjL6ھ˹"bc]KD6.q^8jG./v67Be7PZߏG='뛬08p]2@kG&FD0B +M|fq5h:ӂxHli<-F$>SQf.oPccѵc( +%:5HLE@>-a3?W^jqRD^5=_'U%zrq/5RFGWۆ|95[T +yA{{陸P=oܫw.zYwU86,=la1FV ,waoj JүJQDTK#,b݄$>J;﷾H2Y稽xФc}M|(aE!&Qsē=lg}rJ4rCE ~x;cn%`5~GL]`1Ӣ7DH| 3UI\A485,OАdlKM/^PPCʢz]!r
C:%2͉q=;(bkvsxhd;4$w53xt`!ymhZ|bKs{R;v ds!g6h٧m>k8d:cC|X䎵ur\_mDAlo }25J{Xyoģ<[DPG6(;_m ) x"IԉFh ӹ720
boIVb<RN'zh0M!<h>){j7%7¿Ai6(D4O?vqXCjn/K55t'k6%d_}ȣNƞ~NP(Ҍa +@-&!"拌}Ytt!*j)z'f%!lf,>_ yPci=+]{(dg)n +Sᣴ?=@v[VL4$/)Eۖij3rHJkR'fyI2`Zzm{Zy=4N⌅' +W&!}l؉EtYJޡF(:UsT qmL
Ed#ɕl{Y>MU? +o+qnPeU%1~m
٤rA.w\^G7%zHv@A0_kև5MZcœ&Z4ut9N$\1Zyw6TN;'%zR,2`2 )qOlF6SոفH6vrt$U +9m`6j$ +5!#<ﳉԦ>)WՓ]`<w]vN|ĿfL@c_oR*n͂vipΘ=N!\"hYVtSBi} ɠDdE.)ڏ،lo5q"8k{NBhmw,%:b4CN\K ;S̎-/Ձ~Es_ ++?~ /nף\&u[kQ*~np)2NraΫs],@Q;p&UwXe
aLdׁ}ŗ/#D!<aʼnI +«.ڰ6$g˯wj9A"8vT`O*ٌ +X-r3%+I;^cAbd=O!<!܄ir!<jopP +u?k;LeCj>VCV
f\Tܡ3VV`&ɳ(GbboOI[ +{j[F39$K*nQ +$pVͤ )ܨ%Iy,yOM/zp 4^0^41!d +n1>h2X4i>YoUTq>^/#Q%Z@&+FILuZ_ =7(N(^x[ڞ\z+/0fBB p'Y
4;;WVg`ͼHtS]Q1*~˕ +-$ͳOĒ[\!z灸m
QwD^RSG/S?8%>˓mݭP%d.rXrONzɊy9H1!~̦Xq8#@JY,I37fd
> +(JSI@hgYFwxvOت3PD8Mgd[x^u@;XGN{ +c==ԩ"0F,Il,S=%l-c`/M3ٺ.7 +TONs1R酤b0H®cb"{0*~0";4"mj36`hB +P>+]e۴b
@# G-;^5t=#dniL;a5&-w|Ս
d
+ʶ'e4#yK3-(-A|pW4Dq5OMh[M|-iM^qLO>w$P5D;5Nu$bwƔp{GM:4=[[ˋ$Џ,Yco+% 9yhp؉zlsw +(kG&cZՈ7b~KOQ;],kO"fc.D.NnUJ70 Pw ++:R%==m}#њħD!$lMv6^߬@"$`T C80,ʞ +BXɥIPcD=܃ާeD|?W߉$FO4 +@4qm[v/xNJl{撃X +[hz-J&?&\QyTK۰A&fOpTՂ'%8kTa^ 7Pɿ<=4>妄} ITD"v1E5sRTD5c_'cGp|5/gE29e1'p
IBG7E6l2SM +1Fd>#U-} +iM2rbxtΥM`c?Uɂ/_%Ui"DWhdcw:k]M:'xDgI2DƉ0B3:1y;.9+DJPg(Zr![1|y448etf;c0ъ)b>Ǩ}Av32ɴ!Or{&SxgLܕ%'MWcHD,kʦ~_9,l#IvE-
7#H3o
/McI7-ҦV9ojd'pLpyJѠ]Xokb$yM'N]&tbcgHBWUb{*î6s뢨Y4Cx=<j2%DGqpwSJA'4s)r`bۄ\/X,Q8BOLxܞtμ/ܫ}b +{@f,L@Si*Q%cLSH +
7G5Kn@U +axS_ꞣ5[`z/0l飢LRm[vdW| endstream endobj -925 0 obj +1105 0 obj << /Type /FontDescriptor -/FontName /TAETSC+LMRoman9-Regular +/FontName /IZRVXT+LMRoman9-Regular /Flags 4 /FontBBox [-443 -292 1454 1128] /Ascent 689 @@ -7313,103 +8667,106 @@ endobj /ItalicAngle 0 /StemV 90 /XHeight 431 -/CharSet (/E/I/L/T/X/a/ampersand/b/c/comma/d/e/eight/endash/equal/f/ff/fi/five/four/g/h/hyphen/i/j/k/l/less/m/n/nine/o/one/p/parenleft/parenright/period/quoteleft/quoteright/r/s/semicolon/seven/six/slash/t/three/two/u/v/w/x/y/z/zero) -/FontFile 924 0 R +/CharSet (/E/I/L/T/X/a/asterisk/b/c/colon/comma/d/e/eight/endash/equal/f/ff/fi/five/four/g/h/hyphen/i/j/k/l/m/n/nine/o/one/p/parenleft/parenright/period/plus/quoteleft/quoteright/r/s/semicolon/seven/six/slash/t/three/two/u/v/w/x/y/z/zero) +/FontFile 1104 0 R >> endobj -926 0 obj +1106 0 obj << -/Length1 2221 -/Length2 19040 +/Length1 2235 +/Length2 19276 /Length3 0 -/Length 20401 -/Filter /FlateDecode ->> -stream -xڴweX\[-n!Hp/ݝ¡p
݃{}USǚk&'VR6 - w -d0Zۚ@ -j -jo^NK)I/{)ߝ.&^?1mep#_rJJr -w2 - ';cY9KXy -6P-y;y_a͛pLoׯ!4ϟ@l7.,KPse!&21ft -kv2[tyQmtT(dzy>po%}da0N;okp
f7slXԨtTӌR2cJ:MkKyXy -y2s;$Ԝxh0s%I+媱Ѻ69^_ %(bn2)Be[h~.mY*M[MjRmm3ʉ\(CG -aۇ֏K-zh\0.~d{gO,8ICqi-ɹVŷD*xslQ2nn)؆ZBHmO?)Ρ7@*`S˂WdMǣ!-x\(7Sh%y/l110& vL{ Y7hA©r9X/To(~^txkԊ㰑38 vIQ%o=9 -ڨ}_ gf>kȠ;.ev.7hJI11/ -3o oiS[ - -Q9^k~|4+}]iY!. -"Hl@9C(0(PfGsi7z,گ_&f@[@:2S{gV=JC>@,
U Zl"0,렡"9yX*Xff[I}k.FWLJRxd{JӍ
&Li%C-۩ͳLX2}IR~ÌG_>_@Q\QQQ0{sdc&$KL.VO9JHʛPj#v<6OL1P!#ª*pƜXKz+`g4qhplnC.ν|j҃'?횚;%Xf.~J67NIK4l=~"J[? -ښKeZz*X QWBpUƮH>8=HXn<iLЧ_5LDr"-5 -
()"Q-<yaoD$P~s魲ݱ -WPW"rIo7{lՃDJ!g.M:> -5SrB*8zyYn3I_8rݦ*0Ƕ>bsw2o/lJAgZH|itQmb+)x?2)[XDzpBግ]${"90Lg}j楷kHMMs1ȪemŚb%{ם2e
Bڅ+1B nP~If -"ȍTC -OY#y}6Euo3cxYg>ڱ`l)1oV7qmOu0 pλM(瘁G{To>1r=l~4ȶԋ Rv@)r]5ûEg?_!7ɀ[$^Z%T{+-/8bCV]4[A8h3t_2|,0ܱsmx[1|R[%ri1{ТntY@Q/Dd2j^|0XLSq˨si81| -0bIExK¹ՍU,Os<gD -!u
7.6b//toPӰh9r`&!4vO)@Q$nx{^9CG5
ߚFZ2YD,nKԖDk6%Hw1ׄo7HFU}྿%,s"V-0*BƁQ,D~8d5Hf.ɷe_3- -qrBJl3w8 {5vĆXWv1x)%|' -ߙN6{5VG&tg.&_KF2zuj-z;Zbin Ԧ n1#'/(ebڥF"[m5VM?Aw}qPAU(ynIe=\erYLiNByX\-<X?tnL8&͏/ά϶Je LC7.VTf5lL%nў\v -fLるa.2n(CmOS!,pfA&=v (_UYҚSY^q˄]5}`iG\%q\ -sfҩ&z!q>8ܟ7]VǪSjyfDG̑jdeB3Xu7h!%E&#c[I*<ՍA0@LRai
6dd% -wO<C -M<&m͠Ekg}2~9EKiRHJOXA ӫv/!bSf1: -==N≮5d)l< b̠w/ULgu!iO=6АTwBc6Y57Oa?mulZ -l:kq:F(Zɒ*7x_AaAre HM\.O[kG[cNxpɯoV_mS̃3^HLDJ:ٱ 鴡ܥ%fbQ>i~EXIm"b/OAWucs0L#M=]iҧQ9lf|2"-QZ<o1^/AJ3:dՀrpQ+~b.^A%v:$TmN%fne.$f i/RG0qdQc{n@iGt9^i%s<?^0Tu,!{J|,kf1!|Z9">xlcKhL5ڟb _Y0Vt7ևx&ȵ]\G?$?h>YWvɰ3u띌aAQ`y~R'M fR^=E0$"*S nܦ+lg
.Ib4
A*h
05)jvS[Zv~-uhab*n2%9SٛJcXk?%u~ӃAzX*g,>yKݶ'GBApX\dWLګƁaeyj3E1ey|>KG.k˶bc]-XLèCHu$2<?h@8
D -݅H'HuΊn!֗Vx6P3%$*l1sY&j0уo($<Vdnʗq1R_L_.pϖc q[HQo`'nXQ7\ӣ{RΥWێ+6j66,=mGʚT!7`蛥qUFRjgGȯq;1'<dcUʗM@o#ڄwB2wl+龉/V0Lsy}"ƞw]RSed(t_ܹ=\)qo4E8^'&wQz"jEp||j}m$'Uu!G->~o8h%h=u FC_JLRǟ
Ӧ!(([u$I]3-#=!
95q <FUh,d8u]4 -@{P([Y'<hd)ja{0X eaOl`j#+ttFջLB?~y>V<9ϔ&BT;Gӓ3L,g<~ -Z`t);P`7⊟lPM`~(p]QyA8TɿAH -òxN,| YJd' -]bd@Bh8_g`*mb6@}wQ55&M۟+QT&BBG_µuGBZmz1U -럪栖|(1<i3cqK0[%U%r]pMۨ1W{cf)3ȃ`f7~]-J\P'ske4BL-,S335AgPAVZ~(lsfY$n2i -s $ȉt"#h/0/j0@vȖ[q0ߵN3
qtȺDxU-r-?T>{ X1 麅t}M98H~1M<!aG@ȠOq4jr&)!mS:s%X/@a
?[HmLq\(O4ߋnGwb='FG> -?D[kѩAbWZ?]T^2#C}}6$ G'%!tGG jݷl?Jiɋ{RR>F8%mI4A6?Tzi~F3X5Yh&FTqpTsi_&tc^J'c>8WavO5]h~'>}8OL膊&LC*oa-.[7baIQk/`zsx$v~hQn3N
݊A?P<)CI@r 5%Ly|%dyA:Muj3])d06[_~Q_2ƍc!fY"J=^1Na̛L3|fXHYnX -jחO(Z1j9<Zs赑MX 0HҌҩ$x;>}q̶mCc -Cs1ŝv)έURjBb*Axv^g5Ȟ.I KSSN]Q)-[l&sYBֱ7n&+訳\YrZXzͼK40;}ᒪi`Bpwc12~w9{%JHi>ORА+hϑKܲVj r6Srpyb9rSI=;0b#Kkg|fn>28'd6K2[#C̙T~Ug# -Zo(:+u^2 ߜ8M'yUV-F
.[}mz -U;* -+yw95bP^;GcyUuP?JTrhR-!{mB!QF 2Uj -m`=VSN}OƲk+GdU|G@_tWAO~+l- -3Ca7fk;:ֲyZ~NLzRG&1>Xd`/Qjm<J+q/~ުC1Yփ
%[ -^hڨ -љv>F&&sV'4s,,ќ]}D0 -|Bg}ꕄ F3Pb.ZYJ<m:*`D+ YKَA |=\}=Xnribo> -~UfȘZSïdNמpI|#:,: -Z1a*W)N&2f&TO q䕔SWY*&a4'aP{E'x=HW,\7 Z+mH\]>o,u2E;KZB/!fW&^W}{nj?p>["Ma31Pȫ,# :l8 -~EP,g32d%$V\ -gvv?A]Tj=Ͷl1^r&+7F#O) {$b[9{+q6_A\6ٍӐfOIlʎ\F?%hap
ſY(EIGo͊6d? - 碔+ׇl`m#IErwsPEWڰ(l}RT%iKs־"F8 -Y! 5Dt1,9+GBHZmf˧َ
,N05 -V $PթmۡucD>;g]@q~9mH#EuSL4]cT|2,xt柞~b^Xo|#^vr,K<
ѪY7b}QNYWڭᙸ_,Nqjp%ax5<y4_mYN#k+EYNo|pe?ks
dZ9Ta:X! - 7U Դx&~#2QZkZ+PsٓڽogWf`kЇ?# &Zp&lycLHMSJ-+Ciņj#<xLxh*Ӥ6n@9Va ssG[x;6El2qܔ0$dù
X$c-Jz]{ɈUZ2Ro7B(ע3\aڼAhSnlT3FKcT`Mĸ-ڱS|]m0R&t5%CH2͗p͢(Q
xgưjE0Kos}Ϳ5<*fިR4?]|P
qin;v' T+=ya$z<־+ڨ [mJ<0߸݊23:q^c89XfQcLgxԣe|KFv9|9j\b&,oK?R]}}-G USN0z :9 a\K+?8aӾmq-z0@TgX{"7MgȲa\T\.#F3^'[w1EdC+*U_1KKSLKY6hu}Qc)$rQ^ndfT `4q |˷\[v'=}&=B -4Lu{PXK/m<l^L| d͟VNV_pA@'xФ+ث0~&ꇑ.p
BS4hnmMYx3yIeٜbz8CʧS=xb&P֞R&%!%|E^:Z̶ hΥkߙKPX[?0 -z6)?Tφ1ABE&{Lxڰ -jb=\z^$pGK< -D-MJy`?XcR}A]ݨVOFu8g:
tJǙ/ՕrLQH&iy?_ -WA=g}61O~r%t'?Oc_ -Wa/9CpP1,H Gwf.2k!$6;H:.Q?PDܬU#&c
tkWؓ -]+ RgJ6f|/K<>%p*}F+% Pf#-AeܡPzB!H31%<ws+q4aoޕ_!%/=o_6jZPѡ4>zh;pzYEk槱Ɩm:& Mo&"iԢYX?aie$ՉAl:M!ypht[<]>|m{^1:r.u1q8-z/uUŚWa۲rˡpy 9BJݞog -I;L#'LAKf~vC'%Ek}‘Giy0b3*r|k[?Mh;g2 -eϟvx0>R7)s
uc6<0#ɀӳ?0\0ٜ2sk.# -]Y,hA~7)B-hz"MˢFq6%z -B-j`4nF數HSdA//hTZlÀ:ĦR}n ->`59ϒxt)D((JHh2% W$.ڑƟ@y`ª(J[/)
bMGSGz@'
4n(O䜮炃ٵC(CU)RuK(o.-B+ aBdX1PZ<Zgo>oWA1S|aEF+QdWvK?x*vr0KBlG.ʅKU1ԏ8jt>"A|e;"[|R}D)Dl @pϿq0 -p>h(p"ؒb21Z[Y`$E_Sz{&ʹ"}x:֓RvG[lG$TTƫ^K35P)gXPʁ$
:Q)CEN8\Eqfg$6мRL l
+4gh9ϛ7"B4DuV~8-?7,7;Q%o(eQ#QwZxت5@tDb{7)VWy"?ZKng1
j{4&@P+ȺkJOo:D\Y}=(%),9K
/~I1My#vń_lU"RT6eS~t!+ -rc}k]٘=d5ed7\C$ENe%(2 &7McRj"TgwP.oО)B2ߙ,`/ -gȞ^ːc%P}`)h0`#4</=+Js#n(sT5rucm -M0⫛=v}z^ףot>2n sS6-{MrDy_ 0ey)ɴ^yAZ>ΰ3mv*{i`ݍȷqy+^D;ÿtI2hQ(s܆|QR('*hTˏ|SDt3Hx@U#.6)A7 )ј[\oޥ,_&&SЁ?
t~&{IH=C^@ҺSSݬ -,kY:sht&vE=]%}5W65ge\]ԥ*
B)OQM+ݕK
{;ܝ/rCG*˥ʭd\OލXݗA[eQtrv7^%\g͍AAr!`]66GCzܻF0jM?ϳMR5Mz &{
`X&T3ZZzwl˴Zb&p??3lR4 LYrxrhj=Zz
vM8.d֬ a+FѓҲ7^#ܙ 5qBx-*QF, -}>ivhp-=3Lzhv;N[CƜqڌc+ -hD2=ZSI/BG -: ipå(D-uUuz,tzyq->X(Ø -g$]F.vLZ?wgli=6[=ٕ;bk|%3E8_o'zDع|c{Mz
L(m)
%DmsMIs"bOngTY$XPIްRA%#
MbxIC\blxS?AH;Wٻ;HQק%2p#%teXO&2FnUȓ \lZec#JN +/Length 20639 +/Filter /FlateDecode +>> +stream +xڴuT[>\\www-P,Cq)-ŊKqw"wޙJ>y>g}Z"SQg3w0J;Ll̬ +l~su!Rd ` PM4<l +vgaqwwgtu3;8[2;Olx{:dVN_l +@rqvoNor'ݿ.@2qWAEE`ob
A& 7C `
4A @OVok;fruGm{f k˿"v?]5/[じުb{OLR
`5\IZ --A*oȢ vrIo%` + +.RR͗I, M$2Q{m\+RZأg"dbz̖$,|̷r9@x+sO{=AaGG(T"Dˏ'5c$ttj>NI$h5OPj'`h}0b^&y4w$HmE:[)0ys:`;>
2(+PO{ׇƭE$0Xߐ$FqF?8K XEQ'l¡?1364֟A9m8!å}Z`6 +aaZ KAl cu? +[(}DiӬD<n [a0{Va-:zW_Vj#=3䬁.*HZbG;r~flZcNKLi1ˬ+M`ѽ%7V[V\mh[/`H0d`"ȡ`T%TxN3դg3vbs&x3|1۠_%l-08,aΈDOelѫ.Pq]!iC_UɸЄTœ|"lC'(#+Hꣽ*g
}TRl;B62fdyYĔvu <iwXgV2YC"P53L-n9:NhCnlfXhdNzejsc1U6t&Ӗ[
WLWNTѫ7/PU<d)]!~^w>E +q)z7B`4kweцZ*W=G56!6Dj3`#E9tPCKV1qH5/_<=EMIǗ5>Іc>
GxxC·$jDwʌIP(6Wvmy7nUF\azҤ&5oP:JDsZrz^+TÃya<~H1X<AZl`3mOuۧtѠ$V2ʮ\Ϻn
F6O8HWkkLÀvAf yH;2{ͭ +l&.}i*!^;_avE8ayAc $dRX'mqK&w I88 +/hq l_
V9E#G-d^-3Q9x>.)kcsQǗ!NB.iii<Lx%B2p̈́'V*n9IJ'_˒#(Zԭus>LbEESPm=2ЗRˢo_~vH QN=?MO[Kz:N5gr;M*ȇ`}ĢZDϛg?"ek + Tz M]n8|W?[af*á.-ZޚM%`]|,'WP[S#>猍.Rp| )\ra֯*y*zx>v`P"&CUg7UNLXs0<ne쓢CGGIF6f#Ӂ ϹC^Kί}RH94*,S5qơkL,goAjYqQ&<3˱:WhyNnލ
HPM_7@3̨0y#BWH~M4a2:THZ:J_T~Q,$Jg4(g_ar|2-FMvOyKR b,+%Wa(8}jBd,\~ڵZio\G4˞" +Vr瘈YYEiR;a@R RS +OqGpy}/!;;g?#-M◭J@ӗ:iB*i<r|$SpM!_`Ѽ +Qb$g !1<P{ JG-CYǕZ8<NΌq2k{h&9l1wsS>2(=W!.)yUH7
4LW{F"tdTc:bR=Li?GZQӇSIgTn"&Ko*M +^m~cKĂ~hߐ'$\aRqɉC@8x`)rYwnVdrSrDd,0i + +[:@!-FЂ]7irHl+$"F,"#t'H䁸#
Lmʊp^Hc,T!c٧ +^G}K.Ud;97 +uu6.~wChxgq4.o +6e%BĞbAt״F*ğO>]SglorKT3(}&I}v`mHU~VvAx2L\7O4GݷurY}14E-)g\\^F#Eѥ%F!3><0]C8 g˴oD8>4RSYy_u&GfIL,aM +P29cox!8b|BʍҴIB{%#q=gJa}]
Oe<|>ȓһoB2p}1}糿V8IW⒃ +
|U'掔hN$ҦpbSqfUyɻ"wã)85<Mu98@>%bTR.^#G
~gqȯ Sߞ3_USh`0$;_MRX>S:vۓCD +16&cGN%xBB3)B<F:Π8Yv1S]UH1<R3u 3
O禇,^i(rEz=,3/c"j=}xM$nAZKMu>m¬*ʂQ}dkS0$hQe41M".P-AStxfNnH1t:72Oodad]ѴepZ<O95b8 <Xʚ5:-iB+p࢙M`xtㅨ4ŤL `&נ>)nmX<Swa2{;9^ +A31v0\iT247ΘHB|.wK͉rE ,3c,ؘFW0%H1{wm40,Ǡ{+f@J2&Sºp\;~73/0՝䘄jQz*|Lo3^;:dvJ5C,=)_t@<gyu[kQ; +%I"=!xZ;[L'=.M}[Ynu}JA6N<ɇ8>Yjj6vheGWpP +HH_~լg{GAHdeOrtc$9+\W-y0r-Aʊ*.Q=zb7x[vj
QOr $j5$MrV͵9iaj +7JDj{ Îw>ٸVh;|{O"P\Jq鮘}Ao$⯳Hoh6\?Kk[ZׅnN{?o9c/STܵrqOX1˶S6l2!8KLfL+ғ%iIT{@0EV/]t냨4gAPʣ`eDLvA+z=\BОc;mQdCg"=q?%^ \5Q-_v-XIIi/uRMQBZ^ԏ"͵S:CjL81īs6ЎiZNV*7}NbZNU"@Є~`{T]ʳgsUBt^IBt\:"Da#XpY~IF>A. +Bz8oHߵ`ѮOc~AmZ吻|a9x> +0jV&I["Сqئ +s=>PZ@/Pfkޣ6 JL6ƃPf<YoìyP%kZL!>9+'z\x)14|/PhS Z~3Ct 8E@==2%e#W2R'rKŻ +@A-`x,L6ޝߘ֧D\@7aMpWy_`ZǾ-RY91lH:,`<>k6~^k
kKwUD90u%siYqөX88S +,m7lk^/- +[D&X?tr,Yu{6>l +Dz5^~ӫiVj{ַIol?)r@HFTxöLCکov̆ݡf.[څI. +ɾ +Bnd)u|?}d+<tƷ:Q\.|{d +&3)ӻ8soAp1<͎U!e^s8FW~{r:O^ܵZU!T_rA:̺[P;sk:{A;>bB|%623yd)|R3:{:1oVC$
okO#ȦH;xgȉ=xaj_)8WR$xB +%T1Oa 0z2K@¢P!;h2W/T[ҭ-Nn,2zKW>N)fGNhrN&~l8Q:"c:4Ղ4$w{:Sʢ xvM3~AV|W{idb̸#oS6y~_7R,e5/GHLO\nH[gs^
Ա*DgU~ɞyѕm+\ccBK +&flmE-Xd'|k:-jؠ:rd/i +!@^y~Ŏ<e%ʪfg5o(AG{km~/ԖgբC-pDZk>ے00B B`9R|a=e_©ylယlv^~x>:.!@т逆;3_}dؑӃXDu@x'D.R +@s/yi#:lvMd
yiv=O,9$jj݅Y5cGx|>Gw<w4A~uh0*33YLZ!3KB$bJ!!L;vJvF@XqV s}L*G̉^|LcA?C\f4ĹkIW{̰3~,-/NS>HP܂oBA .y,Ӟ$n. Ou_yƍX hهIZhCyrbV;w^4)*Ŷbe5L +Nqk->b܉6=SR(k}`d@r]];pN`V>8/ct3s_zi/s_~
bʮw~hi4q.IUcNXy8(>$H~iNfPn`B< +Kݙn^i#Q]ʤAF:x{b⛏Y!?Eh\$P?
6Akuv}fm$iYŭ?@%53pq{1f5Љ]6~N+2u,tszJ +7*s)0:*O0lLmx$v?~s;U|BhƒO(Ǵa_͍c2]8=#<aMܷ:U/_3nzݙۂ"2[@rx2Ñco^3 +kɁb^l%w ++\d iL.J,ֹ̍,y_6ߨHb/m ͚I'|O#ⴎAXpJ1Y- K\IUQ!$m?kOKQ䳴t@;0XHIork kS܉% +yZn2ϝmc>'_S8`_:KrL-{b
b-FPDE o('^4r<Ҍ*|"DȦ.=z.*Z<"R`U?5hB4yXzrlsHzt4n6 `hXȌ)7|6[Xd&!P6
V/+ckǕ0ubӱ5OasFu-o({rdu\˼Zڌ(2Z_ց7gi]AJ?%sm!ЬZ߉^hxKhg@4Jg$3ct8xeMFR+mHlײʹwղbYN9uOd7M`|X%Pv6 c[b4~)!MMyYSs*Y8tAZx^qTؙ* +zXA3g&?~jYjR*tAlyԇ1مwFEzcS*F[~phP82LlD]p-]lTvl{(* +4V<N^fT=ޝUο7&iStx,87=^u[v;w,?@ih~`L-rB2T};w>>tCHU;WtA`\W2 z\}M "$;fz~^bʊ4}ijHFqLwek=,}^KfADŽdW@>_[[,u%.!+&c!|[TF4Bc.=|\`O}"ioz +c丬@%32o3Z@WlOS&ݷB
Wd3=7{#<\$} >. 8'J1EK 3 +ef{cߙD]c=Bm1}EkH" +ʊ~+HƋb&<L"_s2
/h=hk>KmðWP`hs2dԝERAJ%r
a㨦gĺ5ߨ~krXgw[ڡ/~z
= +9IQ_pmX% |u~d慷D{Y<Kkv~=z]*IoSL#EjL-˯aCEJk5ſ*y:v[Y)Q!>tղ{Ѓ4jByN>=p)?bG0J@[FG\SkW% +57'q\,or)TzDC"1u!APt(5X]OEjXۢHC8MX{83)53vUE}&TVD{OqQrg:m,@ڌLt\p`{vN\ckė!GTf]lGx]2`i1̆ +]I7 ~ms%4tf +GDž>"}l6OY_1z~e}o0#dС%.Y$'RjvEƄ"%91n^qsAJT +vaC'eSw](Y@elX7Jg
Fߜ^a~?r;M_OJ`1i0)S#S벷TObZ}ٷ5>#l{JA%_Si:իCCG# +J&T7?F+R>iΡ%D~"R8Ipm4@DfB ĢQJֹn
1:[!؇9A-07cV7 +M^"VΨՓ0CaPEɚNK9a_? +k+͍}n.95LY^81ޯ١aoSTo14 HN!!*.ýDH8bGa{_ +KW~0>-^O^Aju15x&<Ė!jIS͍0_q&!2#;;ŏL5j%,1-|+s=^DRI[YapІ3;G0}`.\:U@K?t)-+-))DT3 +O3#~VKmfmn24n[ZJ{䣅$ImC՜\ެ.SmgPRU +2!]Ґ5{Qh%?FJ~rVψ?U / GQQ^y?~EXɆ+k G$&$lVboj"EF|Aۂ+_ ++BQY}+ +6[k{6(Хվ21:hԱu^t4y&!|:NQ,Q ŝ>Thvj\Cz̔'w/<bSs4vG_?x@oR I vV[>a8ްrא~5p~B>ɔQ4nY,/ejMӅ]CCuHUj{.q|Ve[;vS4}Bh!M_ʒYPVB:U+˄t$}aXzFP##>"CXTϟUj82tBoG~$T2iQ>R82q^Η!䄮*wd),Ut$a!k,?TzԿ]yK>hǁioBioi0'1k>VIR!,5l1qF\[盛)Ƞ81]ԃcN@\ +mQnPh˅b +|HZx=̾9dd<zh\G^*ՠ@uu,DQ y.3}Υlۀۘ{E)oL\5:~=7%==s=eY-Xuv$>Eg渂Xarv(2 kq~)UfiSG @Z+~OVqFbH䪡n +xaݴqJ$Ϻߍ*{frs?|<>f3L-f!oK4Ɯ X}#W'y_sܢQ8Q}}HP[n!983)`sͯFU:JM:>Os\Xb\?f41u=0v40B_mW(}bѣGs28U=p-'LG(D+Eӭ~ +-KTNClJӲ:v(5-z!S] +sO
uh>|$R^,{ c6L<3 U hF*xILLf ԍ@˞vYLDҢ- +LTBי41ʅ\,² +joԲScvfz(P3ݞ$sE>eC#'LY16Piً;)&oY+13 .V
y'Eݩ'_g2\2Q҆j*89NlPWjЧo +gF]EZh`ų5 쥺J&dAmţmcٵ( +r-̻Ѽbߚ`sx+S(&`KC9& <G"xx +~}E@V?Pe*Fy,dfb
}g`GNYͼtV+(rhR[AQPsd|`%Sf$BNrm + "P$ܣ1/eJQh70}LOR}9X1=C}> <;QvyTk +܄fA|IΚoL+zNxV= rC +:xBRw6Ȕ_"N٢%v37$Ij_>lrfwyaveb>ʸn^rGaD(=jX>ϬǽG{p {i68cNYwAv-{F~e=bvBCU^"ư3zX320|"Rޤbj +L2/=R!S5/o[X)KȄ^O)$bG2:Ч+u_0XLGb%Oq:P9"z#-{7G/[Be4 +@P\ endstream endobj -927 0 obj +1107 0 obj << /Type /FontDescriptor -/FontName /VNGPTC+LMRoman10-Italic +/FontName /QJWDZJ+LMRoman10-Italic /Flags 4 /FontBBox [-458 -290 1386 1125] /Ascent 689 @@ -7418,11 +8775,11 @@ endobj /ItalicAngle -14 /StemV 56 /XHeight 431 -/CharSet (/E/F/H/I/L/M/P/T/X/a/b/c/d/e/endash/equal/f/ff/fi/g/h/hyphen/i/k/l/m/n/o/p/q/question/r/s/t/u/v/w/x/y/z) -/FontFile 926 0 R +/CharSet (/E/F/H/I/L/M/N/P/T/X/a/b/c/d/e/endash/equal/f/ff/fi/g/h/hyphen/i/k/l/m/n/o/p/q/question/r/s/t/u/v/w/x/y/z) +/FontFile 1106 0 R >> endobj -928 0 obj +1108 0 obj << /Length1 1637 /Length2 5249 @@ -7463,7 +8820,7 @@ fK7O|M*< WS|`Zoe{7'Q@ΰܬ$}^+b?@p҆DKU}mopX@zz:o#Pnn\LqzUКƂv9I}ee@W*,a-Dv^rѽ^,bJbg>;d9apmA'YM*;ڜ`h֙<)?(h endstream endobj -929 0 obj +1109 0 obj << /Type /FontDescriptor /FontName /WXKWAB+LMRoman7-Italic @@ -7476,80 +8833,10 @@ endobj /StemV 70 /XHeight 431 /CharSet (/A) -/FontFile 928 0 R +/FontFile 1108 0 R >> endobj -930 0 obj -<< -/Length1 1757 -/Length2 10931 -/Length3 0 -/Length 12057 -/Filter /FlateDecode ->> -stream -xڵyeT[[.ŭxpwwwwť)P8"ݥhqK{{9##{gzj
B<ظ9jPg+ ɋFG' - -9\B -:; -<_ykg? -P{M'ԦK&ݜp}fI:HgG;`=nz',\zq%ގ}`pEK*t -V3ON!<"]:J5AגϛtmBg֤1Nh(<|2t?Ksz<pVF|<.r|ΦM{
*կ~[sm{X=C:#\`4CƩ[_}mBȜ7mzn3}{5IQP\ƘYBm!sȺ]:VQ$2v@hViJTm]2=P5N.7%]ܘDŽ$t9Iv -o~_TN_/D -6=:KnQHQFuWs.Y5#}qr)W1_UzD'O)G^aݜfFϮy-\sG$a%VK> ,pUduwm@d_L%5{ם]wss_D`gD>
gS=d;4#/eUk~f]HHq8ʟQy> Zi|;a0xFxi>"?hݲ8SSePQo?ެrA.;brh!³{LiQf^ՉD4SM#s#jy_j%9zRNk!EM}r2%slf\G[.(rF>`P;M*ziQᩃMx4ö -lSO0{9dGŗ{DJRՕZQ
56[_\9eCf+ ἬaZe {N^1drz?(XYi8&y(G'>تCC,?8{b(H(;Fԝr:g_P4IZ -u -SbfbNՔ̈rS]svR,!>+#0՞T4;v:L}vm"BIuAHdlؚڑ{9ƈΥ7``"ߕQ)`9`Qù.EojjM-)o\<*7QxhEkhDGUUk6Uk4L؛19#9̘3F3iMWﱳيpzF1益/RBoU)%R#)uQ<2[H0
2_@k=cCFe
de3Cf+EKW&7\j6Rd2
.̑]|B`h#Y!^j7#=io%+&[.t`Q/'^0,:P2=9)QF`r QsrF-cֲ0SŽ|!=:r?,{'5i[vaQ+gHN?нk~y4leFvZ&,KkB*sX]l09id-n__5?*yYHF$&p*XJ5wS7ӱɽh1|~t5/~>!EO~)i -C@szqGXMDqK$cY/bYK^!칻zjSګpq@Ԟѫ=9oTV7s@rU(EW&,$?$SOOH,eK=sGB;ݨ2Iψ(s\46~V@4W߭Og9}>`J2TOĴs<s
طMbǼ3ᆦK v# ¯k(@EDž79J<)'f25+s"S.ľR"j>P sTqǤ#H0SН -wyoYoS!mϧe< -^|hk!c4rYI拓>[Od"$p~2`ݤd[S6J%{V0i/7WBoSF(0ypf[ -Dt $Q`50#(V?
弦T_&r> -w>p]őb<||fƸfF(uW1軜Y&y@s"i>L
1 -
R9(Ev)U>?ÔP}}jgb1̇orM|`ʇrG)y^NxXe1N=YrGSoIdL}[S{G)QyhU_|=y7@7,ף!Tn.* Todz# - -LW![I<V%uAܨ+ -,cPM,fJOnJ"5H -3%u[҂,0hKg<e'/_լ7ዡV3IUAA(z14e1s@U̥G˘@uȢ@Y
MUM!Z9L;!ܨ-7,oGjw"Q<1J - PA}賈*JtبF$/dHiL+!*MBȹ!IJ2G9p`Ҥ٠ -H"<oR+ԏv%13_|y%iۊDm8N?V?SȺ0Dk<&osjmqt`O˂9 ZnoV>\5oo6/)31bPQ'+7SWIr(q1vNbm>ǘcKTl+1<F$Tj2VRuN8E%nF/Y͢9 -z[|7GטR1=ǡN]n_Κ<asIP{8rVe51)%R/r>uBTwÕLO]8DޒX/b{!nKlyYDtQ2Mnb=U.
be|d~z6sft'W(RL}?a(\)It$
G[+UOEA킩p -Gd^Ki0h뽤6 [n%k%f2KlYEF -^~=v>W|@jk}<dvIA$KGi_uQۅ4Yúe4^jn 2{3- -{I.Ư> VcМKvbG^qBI'ӸAI<?߿$+@`q3)z$pۜD5ƳV8A.Lg}ƋlӪ
JWy!M֬aaIIoQNo.ey5/C^
.gF<y -.bb&l f(+&Z!Zn3]=p*ODa3V,Eݎ iGi7%T80,I{tl15~I82D֭F/[V/,=CqlFd(;3ׂ?|%4SLAG.|,P|?RJV=sp˿wr9#uV'ʹ+sIЄnc -u -bNjdAPoQӥ!a -cqc%nB"|N{NOT_\}Z'E'rd\F'iM`n -p/rQu=*.9 PC@Yܩӓ4yJ}Yr<R:Ͽ_v5O1놎ꄁtk,;/_ך"a$%)OCݿmZ5R] -eS<bwlYS#3Vt2bĽ=GewDB`jmQتgcỵ)81ޓ[ 31}(*f
#Iv9Ѫx}S-h^ƊdZ]r8aQYU괞XSJ-}X H]Tf8._;4+-gâpcd{NidK͏ȨO],MKӬ+iqL -V*&T~1)e~ۋ hAvb'Al="0+;/$k͊rJ9$Qӕ;jAއ`ݧ*zJ0H'0M~$gQ9玠lW)jr?xDi@Freti1ⳇaCH7S+'\ʱ9Əє<)Ӯ\V*&;t/X+}h'Y-;QC/DžKi8ĸGH;A{xHHRm^B+?tm_ardӛ)P<{^'{|1ߡ YI O͐NĠcMAJGJ^&~a#'p`jT_Wa[_@CUޢI&2N0Zʉw&۸s2k>[ (>y1@p| 3+5YDeoh`UˡVN -_%qSAtG;sWK|&,{|bV0YvسPhI~Nxm }̝Kz<Y-ʹ6Ez^.VB -6z5clq4#l - -$\XFin(mȄn)k996s02VB]Gtd.'>iq'axт -/p/6NrN3^53aV$*_Y(YY{,&? -IjWtVdo9^r$%0 KK/muC56Xйx-~7xMl5d쵻IԷ-ϔLrtH\Cf&~ht*HUF;tԿkLJaa3$E+q=V*X2.߹֍Lj6]-! nRxյh|GE꛱w-Pg8 6-.}%EUX -Up)Ԡ
e"'E+7\<1rp[/x
ݒD]u^RHd,Gɔ@"ݣoCO5zo9efp_`1O%NXI˂ahF~Nr;=5"x,f9fjukk6C_q$RǍpazލY1g'- -biT^!c$1:*s.wo!r(-eCej+r%ѭ:a%*иۧ"Q|">4paL>.$6.xKj}]bW(9=H_f$^2*E}A4HƑ\¶3g1g~Ev}j>xjЛ^mr(5I
}@1o#`f-'1銪^bxV? -endstream -endobj -931 0 obj -<< -/Type /FontDescriptor -/FontName /ETIJNB+LMRoman8-Italic -/Flags 4 -/FontBBox [-489 -292 1472 1124] -/Ascent 689 -/CapHeight 689 -/Descent -194 -/ItalicAngle -14 -/StemV 66 -/XHeight 431 -/CharSet (/c/e/i/l/n/o/s/t/y) -/FontFile 930 0 R ->> -endobj -932 0 obj +1110 0 obj << /Length1 1697 /Length2 6902 @@ -7586,7 +8873,7 @@ WCfD _o5v_ݤ: hJ>d`4=UaL]A$`f2 vOeg&NF endstream endobj -933 0 obj +1111 0 obj << /Type /FontDescriptor /FontName /UHTCXY+LMRoman9-Italic @@ -7599,10 +8886,10 @@ endobj /StemV 65 /XHeight 431 /CharSet (/a/e/l/o/s) -/FontFile 932 0 R +/FontFile 1110 0 R >> endobj -934 0 obj +1112 0 obj << /Length1 1991 /Length2 16803 @@ -7690,7 +8977,7 @@ O.hVE̜#ڀTQ< eU"p PԺe Um#H6?`CNBF͖+"F>,|4GSvP_[߭9NuLa@(XʺX^?h'9]SlF:*_+@~qRЌѻi'S>* endstream endobj -935 0 obj +1113 0 obj << /Type /FontDescriptor /FontName /QTMYSI+LMSans10-Regular @@ -7703,44 +8990,36 @@ endobj /StemV 78 /XHeight 444 /CharSet (/N/a/b/colon/e/exclam/fi/g/i/l/n/o/parenleft/parenright/period/q/r/s/t/two/u/v/y) -/FontFile 934 0 R +/FontFile 1112 0 R >> endobj -936 0 obj +1114 0 obj << -/Length1 1932 -/Length2 2867 +/Length1 1956 +/Length2 3037 /Length3 0 -/Length 4050 -/Filter /FlateDecode ->> -stream -xڵUy<T{'j -)263zGNٗ,309c5["r(DNJn)[)ޖ{|?9s||A+cͩX010=I\
1Aі!!LA62) @\(4`@SJ$dR$$ -q[+uyr#xܨzcB,.s3@s3lN;lIXD{,#t#%o~>s+c/_,%d"(~H`7pVAt5?*`Cy/A -}.(
dm P yZ6<É?tF -3Ww8L2'εGT:H[n}LF -iw%^*﮾T8>$>:M-=enۭb_k^냼}unȳ2-cUv^[ִ.ͭUTO<^`zn˚EGU+zLgM|zKի֎eo4<vom{w5D"&〔\bQbdlq{qȼU:z};aCBMwkqLN.ro -.>uhփ7}V%T7*)ޝmcUߐPo?Ʉ0VZp۴U,oIՠJ}v|iNy ]gkFng`W,^(GW\=quy5tN&%Mء7{^ǽ? -J3ƅ6HFաzMFH[(b)9fnT+XX&YHuD4}VԄdef'b!/+[GF
^si܂!t;KVkA/JW1 jM< -+p|J '0TI<7WʷdzΝjxu*`UБw -mq
&؏I}1Q++sTit%Ur3wU&h~Ĵ(U1ϩ"[MH&7Min(.PpMɫlMoYr<msup͉p{lψ8Ѵ -#gWdZ2C{6(hWcg$lܕ>|q=F҈nً4Vnu*
[
M3MAh^1=ז0U()$?7OV؆~.\k:zfNT)$;+ )?(8b\ӱ
wEUֆȣ+T%9u@G,f -[$f[=Jx?uxJMHYbXԮ7墇4E?gmehL Cd{җݚ/oՠ*?/oc6֛kV-yB퓅ry -ܐ
ɏVƕnd`sDfuLx0o4&d2ig6ǷV -.~HplNK&b`UE+#nV;FMČp~ɹTk)OTlz6Sy]n+SK*>j%
|ΘT.>K^&&x_-֣kMag -+i,! S ICbJVc\;dVH<l\Y]]2;xJ[7Mh;m6~nQ`9F#tt^_Hb5sUOa\nt{x!z`Mw%3<RGj^gzhn<ټNf:e^Ʀ_Z5?,_p`KQzV}"\Ae2!ٕ.z
wqd}[<u1뙨53$eW}1}]ksPbx):=16fG2.qٽO)KjwGems8@P="VyOIwTmhHSb6fnTJE -J^97{4`Rj{#0Ԣ|,8th}kov -ylN K! -C}}ʻJ+k3?jGd%^j)=X {HjڗKWJ2Q% a#7:qw#7 -IckֺH۹/1IoEW(-pb2nDr=D蚰3]o<vO[YE>jƚϛ
,|a}JxoaG[M6~/c)tMqvxQ/X<ltQOͶF !>'0_E"rӴQKJ7EhjVE]GL{`J"Iȅ]jyC#x5_T -I=GrS.R\\Y3UVB&LqI +/Length 4231 +/Filter /FlateDecode +>> +stream +xڵUy<T{BFDYGtlfNHf,219̜iM$[%[UHR%%-m33ysh1 +BLNd8l
rd44X ALk28c8 0Y +qyb2A&+(4E?8B .;\ . +l0"T$`3( +=im 8磇,Ϸ?%?x[ZBH>pƀQO_֥Ef=T@z +a6Eq]Op5,#It⣇䛄+L( iݶ!/tNL6*?sQtՖ?Sܚ%up4]Fn%7)i0dKz7m3xlܥ!FTTj,yydLYaxx֚ve?~0dU
<QX^us#kˑh=Š+zuWݼ!{lUsﱆrwXETnaT4KjVhPumLQRmyK?~\cɔ~M:v5zJ{(*$00#O n[/liEq6?7!vP.,*lV1sʹ5~y
[xlDݾ*6DVءQav~SSƈ^V*,OTŦ_ y]ߞ|Q?"M}:̗?V'4(Z%nArݺn!ުGn^[<mԁOwuTNS=`GkfBI=iF68E8:0LyB)N2se~%ezu!̌_եyB2gy-[D-0{ԣ"V=XᦞOD w9Q0CwO,N&'Y5B0&ɂdqKơf\ޫ0[.uP\QsWipnܹlc0xYSkvmejuDe7Zݫuͦ dG/'u_ʿܳҐ<~]6+[\ٺz[pQu!}%|}uT)Gʱ2]>)`wCW3̲J5=Wxڊ&SWXM6#F};i2I7>; /'VdμP6pj^q23z^N58-{o=T|V]6lܠSqFOE5 +])0uX5-tk
<AK9%G꒴ +ea'#BW[tڟ +.@2{FΊ+dti5uB]r%/U"f7ߝ̬L^ 2M4H^\0箥/~p}Iſ?3*$X+pNHK'<ؐ;wvIBjmsJvU9FTiO$y'ؒ&3x6z1D +C˧V0rLK:0v+4=^_^Y籩AΖY<7<~[;xÚ57o&ywEw9s2&KfǠZ!Apr-0[p9ӌo!;cuWamQf*8^z.-8함bޠ]1]%7*_tS-χwJ~<GQ:`ݥE<laɹu[2o]sXO?ZeYyy+=~ʛ߉MvF́X)K#pއªZnWkybj8:{LHNe?z(kvpҾIc1<w?S?
.P@WG41zxXeuxGwyo@p-9C.˸,N N`!n&7<#κHͿgZ4
1҃f >*WPq8rTƒcTv9z=OZE3IJ϶38 +<cU݀IxSSe OPq{zMJPmVC?hmMk?}̬^-noum3{cU\TikӉQΣ)Tٗ +7GC;#zꄚl4E 9㪚N^bOzKg˦VGc]v8>q;lFwjWYO<_+ endstream endobj -937 0 obj +1115 0 obj << /Type /FontDescriptor -/FontName /KBHFZY+LMMathSymbols10-Regular +/FontName /YIDBNE+LMMathSymbols10-Regular /Flags 4 /FontBBox [-29 -960 1116 775] /Ascent 750 @@ -7749,41 +9028,111 @@ endobj /ItalicAngle -14 /StemV 40 /XHeight 431 -/CharSet (/angbracketleft/angbracketright/arrowdblright/backslash/bar/greaterequal/lessequal/minus/multiply/negationslash/radical) -/FontFile 936 0 R +/CharSet (/angbracketleft/angbracketright/arrowdblright/arrowright/backslash/bar/greaterequal/lessequal/minus/multiply/negationslash/radical) +/FontFile 1114 0 R >> endobj -938 0 obj +1116 0 obj << -/Length1 1727 -/Length2 1807 +/Length1 1701 +/Length2 1759 /Length3 0 -/Length 2885 +/Length 2820 /Filter /FlateDecode >> stream -xڵTy<TkVDR\yZ1cff,sƜ̜3͜1#"ZoF%](V"K$-h{[nʭgF?9|=c2+Ev`'dj|L_lK%|Hh:J21q`;f -"apfyWp -& -~l"RLÊHPN&E`T˃<Qh%DĈFQw "7 aBG%b̙?JnH^$Wp~|${b*7?n; -Cňfrb!cy{zd_B{(A)Wx6fe:@9n@@sG>(_bR4߬\p-QdvC@oX4*WXųV(G0ђx!&\/.L|Hb(H'oqE'r1`7 -LN!ɌZ -X -b(dc,1!q='SR(BbrGV(m_:Ś87w.Dl9?06Ebx2vt`Cd襣6kQV,!esʼnyQ^- -PȺ}pGa瓲cW$^?wg5 t~%2
5=\sB(IG/6{sxi슌 Ū7G3;hEWHLGזO14l]|ٱ
uXq8Ugj៖ӿλ[?qf+ǛMR& ->mɳcv{3'TVW`~g7 +<܈^?:fjBz 9xK!rN~.*zmWkXzNx-%\V<4^i[&=x;{.\R44)i<!Jv$9Ӣ~͒nU_;/pYZfz} ǎӺ/.2l?eBN݅y7/Yʡ>n"xJ}iLQߧ|mU=h$
wy}1]wZlܚJx0YZxPj& -CFoxPX?;^A擪U{u]Z0|ߠjveglu,ZuwGi3{nH -ϐ|ZxPLO' -v{_& *ȗ^*صg{w]XC롆>oё{gO4]IՍVTy#' {WL=h^w)`;}i{c})4ҕ,㢘EPIeM)gto4:QmliVG$_j!uً"oePozEƪ;4LjN.4';{zaYVZZ̮}ϭXǑtUiquo`O[me~/-jm?I7or,H$1"z.58ohWEQ[mtV9Vi:aU ќ -Q=s9:#MmfY%7JY|g*_Qp,vSI.
S|"K&niދLf|ZTOW -%-Um'Js -iI,]qD\s3'MXA,d3%;e}Ao'9xԼq;b5iH|LeFnxvQ£t>}ƶdΛҫ/!Svu5R>V0'oo@{&84Dڤ/ooz:gط<se6ς+tvҴ,qɎ6c\nМݹkӌm\n<)<Se:i<t]W7iIO^aD``ŬYTe֣j4lk+)Tg|zV7s^.VI44V$>kXVS؍N.j*R;~R*̸^Co(ͻ4)~B5u2'Ŗuy5}G"pj1u[ؙJ*:{`A8Qf[5.Bǵºt4wNRLle:?j}uo!KVr=}[]TZknhO_wvZmׅ'k1zz3'*=:1sX蚛{4Z˟C+T~6,;42ct~ŭchT>kU젭F,-1 +xڵT{<Tiߔ.SDEYR"FK2n3DR3d1sƘK*k$BtE.nVEUR6{fV>sn|Ol#0')4;bAcB5 ! S4YC8.B\ +$70ܨZn2fސ* +X ("uCb`/s#M1hdf1b PP5q3!ʻ
m,Gr#QX*[ &3<qJr[_rvEA# +bX2UB*{vUI;Mf,^b$&FN_wL7NNXL,
VVneel#WJDOs
`8Z1ks$ǻo8nʤ:43c\Ά*.{֗'=yyo_28]8ܶcx~P<+@ձ.?jI<|g";y?.gfՅ[f:\V./K?+Ĵhͪ6hiݚ +]rl/YsgGvn~ƥO_4xY%1gΘG>ya4q:2Q N55s\Y3X5q]BMv\z{EcQ`f\C7iMjlmΰ$oT86kGŹ:o`6!AEzx6tKǍ\mס
34_u7K*ͬigO*L]SG_&Rvd܆G3UrM︥8m<eۛy`6<3簙
sO9$pdT[N KVc1bi(tiF?ӰouoCPfFswQRͦhE}atlܥ
y}o +ipZ|E?GUϡWk']0rw yŲЬ]ў +EG['
Α/Nлޟepԥl٦KB7?վ0#u/nޑHkv3{O=.,}vໂD]T9?Az=c6kN6x
qU3)gUMN +-A [J*S{K{$ٹ˗˯N6q0-,iUةVόu؞ih~s0Dz?^2>uXKSU
[}qäj4< +ꭜrgYaǼ~PN4%/ǻt7Zdfi ])|[`vOrk'SY>qg.8lm\+Kiz2.R$L5q
nQ<zwLvNQL
-8nIY{䕊O`=irlhUQ06j/tGFCsEڢۇa}ɢMW4x{Ŏ&YK.x?\
ȅ|95=mM9DJ}N0u]<'vz쩫U~}8%vG&Pu7x^b6}vyuyZu1koFCԟ72*JgrqiM7Eh9 [bv_M#~<QD Y^&zҶGOvYэdAIo+:q5"<i2YWԯ\O7N~`_3Eo[?6|O(N_hIlݾ(A endstream endobj -939 0 obj +1117 0 obj +<< +/Type /FontDescriptor +/FontName /MFZHAK+LMMathSymbols5-Regular +/Flags 4 +/FontBBox [0 -944 1448 791] +/Ascent 750 +/CapHeight 683 +/Descent -194 +/ItalicAngle -14 +/StemV 56 +/XHeight 431 +/CharSet (/minus/radical) +/FontFile 1116 0 R +>> +endobj +1118 0 obj +<< +/Length1 1682 +/Length2 1601 +/Length3 0 +/Length 2638 +/Filter /FlateDecode +>> +stream +xڵTiXWVEQD +VT( dKK1@$$, +"C2 C43P +".T +" +TVQ* +ڪH+3A?'dB, +PdذѼ8Y&聰8V +) +V +2XDjlX}R-t7Y4>R?1ſ}-P |"Dԙ!exrx|=HvP"4T=,f:&P:BwL&#Q4>q!p )T(NA+Boba79& `o +1Tf8,?37gT`'v|4$Cq?..p[c +$CpODB=F݇ș`b);1O5mRRՄP;9sHPǁSIbƁ'OW-i9 +TБW{Zwo<:s[2Էoߠ~Y5D&Q"_ +zʎZpUtzus=XĀn}O\ӳYR`1$G-%V.~=.[=F/>,T8O4Uҝ
)VZ!aWeۇbU&inam̞J[sexBqR.&.s!nOL77P[x0zp8c-B#KNe^OVg$ELF! +isf^1/=ӝtq-R%Sջo[L{|B ܸ}A埖$fȦ%hPToh,L*I?N[Vm4EvC_u5=4#Oɉ9-~PffV̞V+[_; +~־6]:0f#grуK^7^,17~.Z#Yy:\,\2Kκ\QN7wN"wl+ElFWo*l,œ>şl:WIK|=ny[cgSԹv=H17S=,xiRy{[rU7mVSkmMwm&%u{k)q\m_?/|`8J}Bc广}{~G:M)_.]a?Ѽ/jhGY'OuP{yIc1k7mkP0waIQќۂ2&%u@o×L.z1c+oLbËtK9Ud^iJQU.ORf0~-@'UEv2EbD=8!fv,lm|`Pt55m +s\F|=Xkt~oMXhК$7$ki*%<d#Ht3çRlܯݒ;94S[;bݷaU!
SHe+1k?Gq`q{1yis]
φĿq|MQYS_aVS}+rU&{Zo!ӛD|; SUt>yi~N%\?*O +endstream +endobj +1119 0 obj << /Type /FontDescriptor -/FontName /VWOJXG+LMMathSymbols7-Regular +/FontName /ONAHZY+LMMathSymbols6-Regular +/Flags 4 +/FontBBox [-4 -948 1329 786] +/Ascent 750 +/CapHeight 683 +/Descent -194 +/ItalicAngle -14 +/StemV 52 +/XHeight 431 +/CharSet (/minus) +/FontFile 1118 0 R +>> +endobj +1120 0 obj +<< +/Length1 1729 +/Length2 1851 +/Length3 0 +/Length 2926 +/Filter /FlateDecode +>> +stream +xڵTy\Lk/ehEzpLʹi4I3m39c挙]BRZHdkQJHS7.½=3q?9|=c2#AvgaQ7d*a0ОLj +11"CÁlA@X$(aF!3D|>&ŃZh<^ +`d:Ft\-ley`<ZH!c8x,ŖKķB"kc10 +Ltf{8܁2/FIFc,4[; +ÝJzy*ef4暪suo*M07(~~Ϳ{v/~юvMOXܜ_3?G<* 1IkFᲸjϏO'Ow}Եiwqb5mOrJyZnx>,Yv}Y,J<W|
?ÜcΦO>;P 3Kō:Pv|JL|ɠC
BmQxѫ3fz:AҖwwa_}XqJg㗵?27o\aԔh-Ӵn?.8W9]lHXi֯J +7gorȥK,ft\zk\^tketn{Ct*ƦeFyr[?[6E*,i$EÆ+Oڂ=k㥴B{Uօ><]uoWTl1/;s>)Wz<o$y)oBB"J]ˎ9kTU>p܉MMyZVIΘI{W'.-)t`q9~jvCJq:ze/YYcߑu:QJ>'d[ߡ/sWcHŐuPSYFƞ?x;+k_T,^
S2nΪY9Epz^EjgQ]BF
$O*+;M{~f|5bUEQR~(Wب>QW +endstream +endobj +1121 0 obj +<< +/Type /FontDescriptor +/FontName /ZESWAE+LMMathSymbols7-Regular /Flags 4 /FontBBox [-15 -951 1252 782] /Ascent 750 @@ -7792,121 +9141,197 @@ endobj /ItalicAngle -14 /StemV 49 /XHeight 431 -/CharSet (/minus/openbullet/prime) -/FontFile 938 0 R +/CharSet (/minus/openbullet/radical) +/FontFile 1120 0 R >> endobj -940 0 obj +1122 0 obj << -/Length1 2153 -/Length2 25446 +/Length1 1684 +/Length2 1579 /Length3 0 -/Length 26729 -/Filter /FlateDecode ->> -stream -xڴeX۲5kp!Xݵqq ! ;YO?o1fYG)( lAtL܀/vv_@Ltv& -I)}yo9[:Y҃@YOH7`|oO1[;wN'j^';7651Swg{U[gSsf@ - @\A]`a#0v"`_&./m3}O+S nZ8L3~b -}"YRy6;bw=?b3|"^1dX\'Ie5îd|Ms\[M:_% -fZM3y{Ddɋb9sզl!Fn:O/q[!}Q'i -Z
6ir)>,'sZܴǡbr{?8Lz8x>2i]A8qI}_'oE#7'ӕkVvU teRVqEH!1@⡫c[0e`L}B4b.b9(7<n$^]En*H)wD6y~} -Z_K$CZ)]o"dECz,OXt\j -QgB2@OՄ;DOS_v6^;;VIѳPGFt? C!Z]%:<)œ$a)8L̺Ȃ1C}{^6a?YPiIקx4#SܳtdMbckjWDJN6A21_H )s67wlJmŚ[U1^#9-Ny\F+t?mc
XΪ ->N&.RI?3cXFboXo*eyB-cG^JS!^m0K' lZENezgbq^?ฮE+m$~^e[OJKzy~ &)ٍ};iv|wWEݖKALdhEFu
w$xA^QK2tM$l%ӂ?\qyCs@3K/UU^GJܾ,_yEQ8ܬN%zNml,.44|(ޛЀtHdϛEyKK> )@,\bMqߝ~0ϕ+H>)u+TÁ{e:墁ӾQ<ʶX3 NP:l|&3Є~R0NrxQ<$#Jxa1E:w&"O̺ܭ,8 FVQ&0aKuS<a
ko+_yx0A^>"f~ ٍB22һ)K&45QCCƈ -GU -tJXM&p(phrH8a3ƍ̋`$?>c9zʯ}rw5uƄp<S"rvq*n;,C7NoiV^oiVC~-Zd`b5r D!Zup|U1]E'[LRG=a8%Yzc瓸8q.UP'/8ޡC䓫4rDH2q0e:ىJ4_V*@|eCv/odC=W@cR"dyEh8 ʘd dԙ4o\ -d57}^y).ar="\/LՉpVvZ -7;ѩҋ/E<a)Fg(gվ>ѩjlj/uTZṵQ_NF1Q6#ehO8)96\ -'hzm}8P5z 'į}ӒWoka̫bS3 %L(@ݰĸ`G;ޤTd8mCp1ÂI)œ+g mHGV<5gP0^îᮩ -۵<A9Q2HW!y\3J>3t5&)/kFux˂ӫxOB{~&@8
sF֜R-66H\ч_OOP)<"bdLț fF >ZOh.Bs gɁ5"5jڛRCwӼmIb0`" "_Z^! -z*^(=ͼANY65K"W$;y<!_i6QJ* AF>^?+k Va0')x'5 KWzҧ3f^~odq`7EǴMHphΓ/їx!ɓ",rεm}$j/Yg?5tuh5r*@N| O7ils?MiF@Jo|VqrՈ@QulGɮ!$39еo"t7ڰAĤ_qb/ټRV"ʾ#YvS3=! -V˛2^vbb)Rʂ& id|َSǘ+.+U -rj&Ǒ"T*8/LE.#W<5$&P#LR>7Tk%
@C
#e - ܆.6ݟd0`]O?,,"p.:hW<)EZ]BöZ]8DNT;(rjM# |Uut2?}ZH
&
!)-m_o$wDYA;NЪV`w-,pri+z --p-2b>C';]Hr_a~a䜪EB0X((HɿT|<XE5])Vun&ݑef6!qi4Dq9w7j;e^<d6ȭ)TՙIi5aQ'TPq6ȉR;jd@yG n,fpj2rIDRݶGǡ`(>IZ-A,2$X~.ߴ6Idw~?&!4XLww/8r4#\)vI1p1έ7CVC6^YI8)hA{^9
z gFP'6?T4;Fmk?QZ4W2fM,yG~#u
MQ"zÌV9bʖ3Z=k +cfP+Uv&IT>̔B"y1aY[t=KG%ťTֺ:#PSp\ukQ - Pt[DL"/#kPh#YZ$D &CDwr1T#|$i$89CrK=8$VKʞrvty.;leB|o <UG3m/MH4ª/ϛ1\<!it?]HMB*>3/GqA -lUxA~LZKWlfOhSׂ~y-rAםc\_k\#-/(#=y:w𧇄+ܠxL" Ҕ\e3 - zT%bDjI=6ҜSC.<F>[-l+ Bbv3r<jO7,7p'ĵX#%ÊPhv-5J!s@to^
=5JqlpƂхi66q&9huXQڱjEXu(aO©%{kg/dq[d1^-BIU\k>mP^L.˱_Q#4=nL۔)ܓ>nh2|bփQNR𡕫p w&GjHd2)m~l=X4DxQ>c6hŃ~!.A7R+ˍz8,&B7/)ظj5pQTwdY> ZZ }io'#LgTmR{_bUoqؚU}6E=
W4Ǔ2d< -{m{c'%iPWstN9BUA&ߤ:`]tsۜ_7Oz5e: #>-lqG%K2u<>M8ٺlJw:pj`EAJ[ -skXq"5PtҕZ?-֦L&*ޝc_/ql=8W8f]-)ܡ<tS[lZWd{J[C*y]Qj]QDn>Dz~ܤStJe3gۈ,<uuECA\M2/l^.q00·a^䛐u@gGq>S8f<zEYz'H+YdV4]+ui7J Qmrv9+Lϫ?1 -fZ\v{ -6\E ݬg1j!t\_3+nZIw]~ sWs¦P^jw{sCZuxrE1V@{Ĭo0-&ݣO@džΎ4]>yͥ -mӹ@e.ID1y\Oo9A0
sYJ )_T#= -ǝO
&[@H96J3jiBl#!_s%3Ŭj`MleK܋]?WgBZȳ{Kߤ1mj/*lѽrQ`?,vY98*=[¯W2'_ j9Z'ˇOl 0Qr䗑oJ'OJg3ϰiTJhx;p58o:WhHHŐtd*8)Lk~tCEINhr.AIMʼ}a:|E:.<zι5veU U[\bKG$trߍE`VFBZaەXj60n|he(Agl mŎX'04/7Q~vh4JDN6Xﮕ0.OZCp/6/N7_sic-.u-ϗ+8废"CK:fu~U"^q5mR:.̵U\Jlb-f`~`)|kGWӗqi*CkT=V;}ncbZpffq`IU9*>|Nb3PQowUr i0"2Po$$W&}JЫ+&LB
g;zhn -nomZB -U:^~YU\* -4=:1X$Djgmy`9tF=IiD^8dLN:[R,rE7%(,ˤd^Zv`K%"VJR-Kɤ*2*p`le]Ȗ&q@+`IVe{}mN
i*~WV,ƲXۇHaqjOۗ:kL-$%`K99͢|)סSƗ^
kh}Y ގEH8= DKDʂ>n{~}ԭOc݊'a]Hm
<¹*e$B/HG
U֮meM5MԻw}X\6,~C/{IiwFKQyY+:}@u#1iQ_O/(uC`n=uwA=$tJKpa+ca#ȅĀzJtAH<EGa"Cཫ<D/]2DBbkS˿T9gǿ -©ž ->Vܗ:@Tb3S!b-S8h!7o-j"6CLvpXy
Cvw\a{qeITaOPz̶Zp#uے1a*^V -@p
RcHoKoM -p0FJHCV/XD-a`+6SeE$m%b!QуK9 -aRB2Kv1q|TicX@^Inٛ}'SH)d_pg"a#`SP۫]Rka?䬝3E拒Yg\K!3덺7HɕU.5itVbJ{Nw+ge{9 +"t$$s[1*htBاlrCU!kњS)'[6#K˅˫7ᬽ{QA0nZD:*^HרDIEE%:.,ewy$(GC -. K&6*hR= d\[WtmzrKC#Fn$\ܶݭ=F"ױ,XFM¤BNa\4LްW ilOX{~SpZ]etB.GKq^7
=Y&FSfR`f٢d<=L,ā[gzK5AZP3XB_>81%V]hVB$_8(xȺ}h>D@E4ep]E[O!X_pww!
JteʽAACR#a=a -Wi_֓Bİ%6ήZ5s>RxէG1(L -)\4ꫛZg=gIy
FPua
[HuiQL.3h/ +71so(&vRj t3%pfDZ*_Ku[8.t|?3z_X-JO6Rq{ro0yG~k9iLh!T&PDUw<{6D'$iȀ !>jaY$ioy~%az2H|D*~IH>L82~2AzXO -W傅1lF/Lb'n|C~_szBFn3(I>7ld~HSqw]Z9&1x42Ⱥ-Gh*`Hk|#>Ƙ'9[:`CSՉ|Aff N˵ň~q; -Km?XV=s{< ܞIuSlBH)D8Z
EдFqb%-|b``|M6m)nnqFڃ䖙w??`PLSEEr0\oRL#HO*=|=mE/6MbMgMqpw -Rc6Du&dz
ydH]ljMSg`!xic~xm(B"EM{=*͒UT1DlͣӼYxoRF/QB9u1a-G_+z9lg*(KwHpB9"-٠R־6V3x՚# B]*pWNudxP(؟0Qվ|XtSC,|q҆ -bcQ"pX\Ui -o2]k{5:)1tK@2!N*oi1$` U{7kRɽ/峂8Ko7Y@kk! d^ -aYGVS/
{Oj(bDQ#9\ rCÍLZdI=8{ \h 3C)il粓ebN\9%qôPW:jiah7BWm'>2[go߹=a(L'lI3|p_B\prH"3 D5JM[El&}pU=sի+)b!S^W)~Gt].ǐ{:z7eyTc}MhQ,A!ヹ#3" -\ ,CJ{d+mx-& -tT>IT_m3~eƖ'I+]gC.pd<ʅUo,v~p#eՓ에-.}"ҔߴW!jIRB gMm:o#W~qOoMsvD]5Ų_30s`9δU(A*OCXe_*7&̢ -K y4R]j<lo/WtUIyU?KN{{1q\UA6m܅6 lM!
Nu}3brnާs$D'iiGӃ0MIBl)%%ֱqU4j ~1D+uWr'JS6sSb(C4FO~ď -(`/t_#&lVQ)^*V/eD?Cf'P:ّ΅)e"
ǷQlYRfEÒ V\R03ZKpE~MYAz 'ytG>S -w}uj?_F^XUM^Χ$bheKbL_rtTԁdMGDJ
]z3-<B[sTɀi2f?eO~b%`|xhY]<TmU,% -n(+k~Q_ɛ۹4()&2d?)RRNI,~͢/=@0^z}-jҽV`".G`ҫi-%&Dz/,4J;/دNZ`Af<Ȫs8.y+dy< -},q߷dNi,1mgd)ch@]q]aHu90;4K-AR3˜i;
mpwGvY̷420-ɳl;*.8beш?:Zʀ;T(>uwnivKʜ<<!"c*e?
6cF9;ԯz$kŐ*8'· -@Y1Y~Bz>YOc}v'K;B|-J9bfNnhcRWOM -ڦ-Q7QJp_%fZ
fˀ!S[w[ -3g[/hɧ;ra:TcK5l;[~2a mzxRZtkJq831nHc3[vܭڲV(hi|`#7uZKqΝgx/\Ru55١p//22kj
+ѫA<^zn `?"POiPT`/G4ldT -G$+y148m]u7vnnednΒ~P -4j -LZq VOB?0\TU>e kFJGt=:vhӟG[ -n'\dgB5AJ巪 Ղ/T}`vbXh6h[t:i&E`[~
G_6~B!$%fO|yܘrwmn){xޤ뙱,)pKA{!3ɝQfmjU/"]YTyY.r6݉Oqe-ŰLLg ԶJ2ubL
Yu
¯agCjYs -m -+QwqUZ-c
}rx%&dP^J^۫¾Sr>kkۜ+a%sbMl۶3m۶m;ٱ&mv/]]]zELS -=jSzЏ>k:8H*_4T5O:T D -T5t;`ڋl&gnghk;۬#qWsK}48D@̻4ȭ+|!1<)ʫIe -/\? -ȚZ?.4RڀDN6s6 {{úҝkE܂RpԹ
쩚Tv79EB5(jg*0YWC6c"/;Vd&e]Q^kF>E{1[*OU a뜨_BqQVa#)f#Ƅ{ =`)x(D:6 lqȧᮋBHx\bS|Ewfr~ܴVV)@pDž|ܹd`~<|(EPbF~S$WibwJxA_"ڕ;#fc
%Ҁeʨ%='xe\3K[ -x>RetpW%4Е*k׳n|VP:|pAr]V>;A;Ns{vgw2T^bOePZSc=eю*OڔҐ92x̩X|
)@"\Dc?˖ -41-UCUO(u -ސ.y? w̑87LpRw6o*k* ->Tr^XJ~DĿfw6 -Kxm\Hټ6ޥ=u0Eβs(h3uŹQgxeraKD[D!d&Wڗua)f*^WPD5F/$ܸ<Eχ]V.[*uYRK*M!0e1RΚ%n1q b;`)'; -Љ٦$8.a_t'kr,`r:d퀽̨3}Z/D7if4$ur ۪W)?~_8/z#aו*Ѿd1Dw0=JX& -,L
:s-29-ޏAꖩºb8wN=%5өA,L~`$(dpq?_i;n#ʧۭ*tMW] ]:=nX ufzPGy2CDT8dG}ˉhF[513I_o E-}:JGNπp -(ic+vԺU*r|k6~ -3O=_oBd'`<P(qF#=ɉtO"ۅ&qeEǡ&Go)>]9D>4`^LAr{a83-J -mAK'`'Ys-bjP_
[=Wwݓtcŵk`\'cqUIٷi<+-kӊ`GԐS5$$)}~L(qd`$k
tZ -Z328" -L1OƵ.Pۧ i_x. W)pW+LUg9&P&v*t+:Jz ((Y!W_wM'׳xj~ቝgN*ݲ=Tv:jٮoGgLKt%rZRF,M?]ƛ..n -Tr zStqr,7vt)!%\x -yMTOЅ=<236Z8qF)E,j=u[ߓ^'~a]v }7'ћ@"!Lq8$Aɬv4kTQIq!ۮJeMx_:5 -NmtWwǯKlEh4;/)β<h\NVΈ$W2GQ '?hD_\iw!m+zJK?e֊:(,#j)dVA%!IJU0^KO̤ŸotbI;A(S&\@o\FUƓ8Q{ÖqEai6Z]׆pWJU#"Ce -7u︳W6
Ś/BmyI(y)k&1sU6zɼVhȺoWxGz1j
cɃ]'_7lTE5yPY $bG+)S있yB7{jMϻ6٩k8ډ#J'$Sm1Bي6&"?y{1aZWz CQę`MKQ~b.M -JtYk4Y@9χ9I1>G!MÙr;r\.R0u,w~eg&G7((aN<FVi~D'a2@'ܻf%$31b#(-mCډU.*o9V72~ )3ϳR?h.q)5ݓbGՒ9b1ț>M~W@MAvʉVjG[MԹh/@? T'"+g=0Ǯm"<. jX疒
;
"mנҳ4GJwx(~ -<J+/۷Hš7iԾ@WeQ9`:g>!7}k֚z)>a#s>+4>һȝ槵w^_Ar}Zw,Ʀe\ٙrpTeB2UYRґ;eJK38D^R cEQ`8u% x|8̓Pw13E/f,#qj[3p!N74~:ENձz?XDkGC`KcOlĞQ5gr]k!``ˁ2{XY2hOTm*)#|!@rѺ߷5JEؖ.tjXh7R -=Ky6MQJ=S۫,c6rQ(!_JM(?%ck'.eLؾ9Wy xO=c>|/+P,LR8 k~dͨ~چJ{
i+
:DTGk//(YlsJռ~Kv0VCS~7~ܢa@c7;ߊ=ITK -xdݱV% -?SG+:B%`:ZX̘b}5.ñRu&fvׯpSMw<ܬϥZ(Dldh:R{̢-[ЃT^
J`[|X+%ؿU.n4(EhOZ[`0fE0.џ{G|h)1+ -&xD-t[C/֡"Hίӻa)6dKBBV,`+p -8Jvy[Sh6$Ř~cfDrx0D/P|8@zdɸOm([vs\g,M ZD <^~;Q8nM'p/2膡1Q<c ,v*Gi?GeK**/Tn4%tRN+ZYw&tȄ_)bkx,:Z!ǻE^{a,]B@sܳ+=!Mc`=dž+IrxZ1fe]=-"/ӢxE ~N:\S)sl:n3ZDŤBQ$]4to[_쇤;&e6zw!V<=BI -\1t0)jg=ǽgby -RXۊ8rF 1j?4'یJV6j{ w1
Yhsދ6m*77Pp|0#i4-wj|Y÷;r)Dp|a} ~i(0* -~!@G=%{DHZUz] vpa3 zb6f:؆T F*QgWFVz'3pR@nFv -wuꚘ_}/SmO6i;uINR T8ɑh|De6C|mK`@Vν -!+ѠћJ*Miwd | -!'uUxi//NW4dpLE̫D2L| -iY贁)g|`ƶ -lazJp;'WYtv\؍?ubtqU]W1d;eE -Υ^ +/Length 2629 +/Filter /FlateDecode +>> +stream +xڵT{\LvI1QYR6SS*SHjJhN3gf9g9S.B7eV&hlEmZTr۵L,9|_l՝^S4;bAcBj ,TJ 9(ffrpНp2r@0(fFa9p`8U`:46ᐂpèAaK"P5T|!R +F)4l?B(@ +̟?J#ePILAR3nFn +D++@H`<3X>^LOh0Ghpttt!uDTJVPH<'lCbBc+@P<Rf"JCa| a8<-ZL'%q12LD!xQbP$p1rE;> CTA` $]`aO#ɒZ>JT(N3s_RJ$wbD/_ĭI\ +I! +/$'&yCLB 4;'aO9mBՄ'#B4.`q-qsCL`&*b!RQ;::!|>N +4)~Y|AZIlQ
οsi͘ecut{or];"Qj`Íjá'ft_]imsY-cE䥨)^w\!פ+spj0+)o-~xs:ggIonN6YB/s~~-;CH;g|@xC_.qzW%L c3j7pe|Eփ%|ͧ5T_}mwt[IșG{۸?B/m$s]s5^,m9ӻRRlT$&fT䴝;zWU8}i[LB-Aϙ~
{avˏ/nj!Ѵ*6EGWr19h%%6Zj1ik-VM8fPPܴJ4SczՐ!@o-gS%!ǞLz|aʤ5OnS}pm7MY<Iػø8?dAĖXvz$ 7K_)[,J_9&R!I1YGP*7\Zfze<nj>jgP?<jmE-ouuGK)UNƲ^{1Cm.awj\6w٭c}E];wCAo7l[秓0{?w+ҚҘt?7.Dz䗴|X`>/_캐qPf§)~UG5<<ҧ<u갞/bE2w͙hRϫ*B*6][iX=3}C.`o9ؠs}oQY
f:` endstream endobj -941 0 obj +1123 0 obj +<< +/Type /FontDescriptor +/FontName /ANTVSN+LMMathSymbols8-Regular +/Flags 4 +/FontBBox [-30 -955 1185 779] +/Ascent 750 +/CapHeight 683 +/Descent -194 +/ItalicAngle -14 +/StemV 46 +/XHeight 431 +/CharSet (/minus) +/FontFile 1122 0 R +>> +endobj +1124 0 obj +<< +/Length1 1684 +/Length2 1600 +/Length3 0 +/Length 2642 +/Filter /FlateDecode +>> +stream +xڵT{8TBR2WfCn&cq2s%Bҕ҅Ze)vEmy)Q~]Q[yvg391xb<0َ!b"qRQ +@8AID `8A2"rCLbp>4kX3t%:ۅ Q4"Q`ba_\EQ`c F!2 %@ +% +WDꩀ2&F):(8RFE# 䎏8c(*$N
"kFgmB
b#!`"*DH%"6# +z;kAբ:T-;Gd/09T0S'!ZS?k`Qdk6`8g-K,S4rJL10t;qSƪk+Rem0w`<crq?n8˭tޕkjѼ]i؞eT&6b/c +t;f6Wΐ.?j-]~?*{ޓmfa^+B"4L?kAaW[մ
^kgx7kE]x1Dͭ7j\10@G]*w"vk+dNm_]}vpxeÌnKvFAzµ^ճ W
%W{/
<{=R
.ͻ{KE}؆pUX(=bEAE'
y{OR0g[|%poR/:{H.jhss]&/w;[2k\k䴆)mg{
6O{bfḾ\fű\_1K:r: +Tnyä~uefbKUϩQWәH]FZzqܟ|sq# +~ywẎVU^.5<?w -\M.]Wv:@F9ƅJȻ!n%'RvsIꑶV4;qqmҵ
c~[<D[ǗUD1K'Bi>e5O[5
;2iMdǚ$}l̛Vf^N*k#19rt̴yӧըnH3M!!//Q=Mʽ&nwHOprDO:-þg0dL[|?3^ۛ3O(KZu bsv_ea{;~Ybݴe\>ܮR/
o3쾓OВ#2I͈-eO\W.40fVX1>jO+xe#[F/vV8A=}vLWeY +J^}s5l'e-u^SS
Hϛ2:2\] yUvJpM͢Un:Άޫ>Jjoϻqxxzd8eN͖MJb{guUu38:VbKEc>wnlKLn[W;NYlx?MSC¯K[,7|U@4\Њ<7n+uiS9&zz!훶-7]vmZ8;&lvuXDe
Emڛ>Q.; ªuGJjjJ;]xl®IFlKge +"^U>p?
gLpslC:9CW7 +zݙbY +endstream +endobj +1125 0 obj +<< +/Type /FontDescriptor +/FontName /JBUEEG+LMMathSymbols9-Regular +/Flags 4 +/FontBBox [-30 -958 1146 777] +/Ascent 750 +/CapHeight 683 +/Descent -194 +/ItalicAngle -14 +/StemV 43 +/XHeight 431 +/CharSet (/minus) +/FontFile 1124 0 R +>> +endobj +1126 0 obj +<< +/Length1 2219 +/Length2 26045 +/Length3 0 +/Length 27398 +/Filter /FlateDecode +>> +stream +xڴuTK
w qhqww$ !ȝoޙ}?#:UݽLYIdكؘY? +@
@kP9LߖV@7q%O?b +wr;+"`neϞY)*JI3ɿ=;`w_J +_eA +ljWE˂^%Q̾;V., +`1|]mpp1vyl\c&oop⍳|dg{+loAojNf`vl7o_3XП1[U7-m?[ɮC7oo5z{]UN & +`'+w=ַ{+bb w/&N.N +(#9 +tr9y:ŜS- -$ +b|
ɽSqi7;Z\}W'S(U!j0MCZC +hYOMA_Va4XuUE8ҢI-qNcn ,.66~cЅ9Wk!J1!o.R s +L8[*Uġq7w=`l/WzdqKi1Ayϙʈ]?cUusyk$iwķIP^!wA.Ptz?G5{75cއT*q%zf"9Svmh`&616H1k
S"bڶ>WyD51`ͅBR*ʻiKf,Ʀ_Yk +X˝4,2'iywnṭ`:⭶'bXal
ʿW慙i?({HGEL|˸a'zA8>Bq0u2Q}zeXMQ +Wnog2Jk)~|r[>S$nPBZdnFqz<p7ҫЀfsOJ +4߉&ɿR0pӡCG'7K]xe0]DgoBp +A[ + sdą`;Q+RQ/_،ĜSBʄ!Iܝܕ"0n31l-M<AA\~ǃp0ڸ^HCӑT0&\ #?4ӷuuo~b\y'*Me*t:f5sg n,a U9Y\Kf%*$)N<NΠ"c5An,O#%f,L@ +%ʃj3"6IܐE%!iOy
w2-mi],(Wa54XShaSC$?)'Rvc+\iY듆AZ߸ aAʣ|ӌdC!Xgw~~~yQk!~u:3\eF^#n`Ӊ}0UӰqA//$CGùj5XtQ -ҹ[zܒ/<uYq*H5|%weVu`G3(c7Q!acƯ +:[/ybM_xFoW]?k883i1K$n,G? +e@~{05ţ?Vկ +O*Vp2 V]ޮwR$"f<y͔,Ν6C +wISXD~w4'q>\ÏQ3վbF>u=҃}
U\̂{xR(A>#iDzBFk.$ڶ!;E7rE:۰=.UP651eZxju,cdچ&%.SOxS$*D L5#Ux߬!*ol~ZĠ0SmuY$cq"J2}yPL_"]}^bjOܥ#6.,g&p~N*+=AdF!2d~;Hn& (YrvLķsywp|JeOz(h&*_NI9|MhgFE5QvTz-*|16I=<hzTKGcVUt$'ǡB9X]$lt48ib(R-ϳދx&Cšn\kߞ +pZMCں6!Dnʋ>Lv"# +OJP̪A4vrR[?_QI]kY,
gMArs+e)fm]wРY/#XuEæ-_Wq;SlkZoH--&E"`BZֻ*q=8n$ИgbrJ||Kz.otO1~T6=GO`$%s+x` i{0 +mxx!?裯B q8ۀCyezWNک h
!YGr^(GUM3c <O@Ì('#hkF$(!R>#I9]W텗J$7 ց>3l֧yDqEeaK^K}>FKa=ŵi(H\7$jza]F+(lM녘s|:0{F}IqsD2~z +ܧx!G n}*vPV.$
jZ/jRHƏLy +["}V3á̡@ytmGZ;82 s˲O)nDHh8jtItU8AvshZ5Kk^&w;kFOIwıQ waeJݺ# +ezHVv<N@>mK :\\q֜sMlٷ`k\<wӡŭ't +>O^W`)_ޝO-2N}RRTr g'n|[$7^βF<K?%\Lkv2<Zͼby:rgYI3 +<d6^A3$"_KR_~5R?*n㬞759蕟&س5 &)1u%vN{&60Z"283 : +cs`\ckYB8JVjV$*@اڮ01nrl1[:|9ҟ83F*PĦ)ݍJ{eEI~ +:ņ?x"?bͿhM<:ju*Ɲj{b.f +/386bU]eH$t&{K|%e~17;cu-w ӪzX8~χWMli-H~A˺&D~nȟ؝KrǔG<3,vv.\|9円a1ЊxPJqkY+1w*{<ttN6YbS6VI?9M% +t*w]GS75epOK\nbgŚz0=K7OjK'G}UZ0Hhݎt$TK>p/798~<
l1(R{Vm"ޣ@ <UOn?^y_7fZ\E[AaOzdVO*:W"à=v-,t47A(ExP\Yz/'!fCʒ;Pߒ(ٚ6g9ψ7yKͥEFUͼZxK~yZS},۽JkOexuclnJQk3f#nHhK%69"&1bm""y:_&4_IJ +5lҧƔ#Nq/Ηy=<,F+s
/RW}"Unv2>ә1LtW#MV" tv*[I+?q9.D}FͫcT]RJ +}ڭgǔ.5<.=/.#b'!}FPn7 +FTDiJBYU⼺W&_@_˦&xDAXac/}g ;9iӏgƜQ멃1pg4=0״`i58+ڇP4@3 +ND(=eJ<);y®S w{ɭP2ѝhE)KVlR?X n~ȭզFz8!60=G0־i*E;8b 6Q@?)y_nr%^~˄H<K)5*!&j?3%u=)Y0;Q7|-nʂy8Ý1Cޭui7o}*A?Dž8M
1NHਲ਼j=r6e +9?>;ZfU EQ6QsGguPK8 M4s8Y +;(h/Z0<[=+3"bg(aaksz(Mk@qgedJ8.\vP$W{)zd=u7˼
L42뜻lc|&?$0>rgƝ{Vt-eW>rX0꼄muN3,7?p]N5 ouE\בFE5=u]ݨLV~ +Hewe9'H\X͑2%8<T_QR.~kRZ2!rqcI+geSHgZQ!$ýojl}.ǵQCb&/c-g`:IFwJi)PE2Z9 .8~r$'_"Kw\cXq2(ƪ^%#"ZPl1~7Xa1kz9/7r?+o.)!0b&֑֩#'$aePF#cȇ*qڿ>NDpfJJEQ@q!K%&0dm=8Or^#oّ]U/h +ȡp.Mm葹y
Dde>?DEl.kƩ}wP`,(`C'3!!pBSO|y*\cSXS-LHa\AN"~L&O2 +&?1fƦLB]yG1?@`( +R&XiRm+r!#Q>g<Qi.>9V죳i2)\'b +۪OT]
,BbJMiŐI;a1;~UDY=**اUVnsVj?7a $vV +& 0CPg"*yi߳lWw0 :kҵ/ТQ@]uu_q"8*)KlI_m@GY~6!>#B>ɱY+5z9v>Lyt%v[Y|2!gz/HZ0/@y*hox`K*VdEdxM2N215iY!# +rG.'kKį_<J-jpS}056JVP-{30R5ϽSFdZ_<F%1Bױ7qoVK)t*d79Z72RwJW^A͚dauyDIwml BE?M`c2I
m1I&ą*zYMQ{O9;vU}Yz +JKWt[6.n0j³`4ވ"I4ҶKߡzAj7<1j@"q -6k:0;w/Ⱦ<5.-#
ϴz^2<M"Uׇچ<<ޗ/ALFC8/7xxMH-j EME+[0G2(QǡmǴMָs*';f?Cl&$z +BhI +F14* +Bx/>1Kd03>P +/%pm~R5AQ`Eva5G"h3V(_֚,VfX +zXN䳋QrL-V\kk=GR5̜lNvzפfo +%tK=^;ڹjr[W@Ėm +h昶fT/(
OXJ}N57BU_韝J)iJ^NEaG~UEÜ7pWTc)5!9jiYt!ԙPH?[\<zj1eNWx +i *t:ldɂO2e^C)m`%Jvå)[7=It'LbʄY`17B&2B|*sCG`冘PldY ::V38mQLĭ^yV% +́m?Y--[Ʈv:mNRzgW+a fUB%c,
=Wt^@tUeVߐɚ&tԬ..)s+-dG\]_59ֺ[Bm<FM~wD'>2G.F%^VU"T
йyF7HYlM0I]>oHlᘯuKyczᷧ}KYplޝ;r,aj|8 +F,!,'HWOdqI\冖J
t}8(w<NC(4H-B?N-.%q&]!hт*D
? + z&~\=v,8KL&|"FESv"B*島' +_3_Uxjie6@XE&j-ZP6-؈H<)P^%ܨ鄆)aI::=١]>DM +Ąw))ZR-Uu֖[$*mED
[SfQCL:bM[pcEs%l +P:i5ǻ<" +DPwelGw6-iEL0[c^pͭ눎<] +a8^}'0 +jjF TO +͉):-0~Z,`fRq`Km[b@2fc46<O:OvA64@-/Nr".rD^?ZJ[ДF>H)(vPKm+ؕV1߭#=opXM,lkG#{A
q +uPqˎA3HrVNh6nG`&?OڅkDG؈ZRLѲ\gV7Ͳm] 1r D\Hb|tG-wS|k*v#5{`n˹ܢ4҆7dfQ4d|5L),,oT +Glib&Doe*}#w![.ꤎVE+XuS*x3EƓ,`k>'#3õQ{N-k])6!k-maw5j`kKt|E֤XD> +!Vd9AGcwHqE.[KbVa'v<Cqwi
&'bK-Z"ke И GKkҊ{G9T7 \}Ձ#X$RSD=mugĽl +3B!<lbϔ(D%B~}6<K%73>_.nm])Jз ѤmgIJ +-]>'w +x2s.\_w r,K$ZXu/<ep?.
Ek +H}316(L?|N?d|R77bvU3?C>Y,ÆmJA-]&D
t~6 5E[cq |=?a.4/kQJvF= %7mN-'M((KZp>]wK4~Zvy +ß爷0r/W1$!aAXar$q@W|\:ڧ4QK@I٨o"mhh B<<=}PeIi4SQ.EV<N!Ygy/Yv0#=9Kolda;}PtJBD!R搘DA:ps.ZtxaQ;{[ԅ̱؆yM6Vlu6)we+hd9]\20DP:@e Dp`xPd2f +MTk.I@UW> m Q>z717$87
"hC
x.\WM!OI_[dI_0=]kR~nk8#ke]RZ,{ +ϯ~9n VV\AMB+El`NÙ 2?T:Ìgq0I/ehD;yj۵RU9erfg:5ci +l6x $yat47'$c5, Lh?@M9P撂RS>&Zo:!K?!|8;X7ݏmCQ~lRJ<̬,u;wc;neU>'в+At3r0[^vtDLz`1?^<{Kd0VZ},nY$\N,\x)tVjo1Ab4vuKJZ
2{C LZ~ѩ`qɨ7taZE^ڕf)YM7@$"1-C-i@t[4>Or0SH^q>r0MU[؉~jtKbKJ9gmHQ?Iރ3OPxKبR;+FrsMl~WMBCŕa8E@Z)@OrKc\OɄkE.츪?C]47gGP9Rg~M)fGi>l'+F4;c0me`jq8OG%2+Ktn//Ļ|3Ӹǯ zu .<4?rNS+M$n>]BPWet)MolBo`Pk3x(%q0tG)ut5Xf;iȃvVM3s"]b>t<y}Z똾S1>]4L&U[oPdÁ/`բu$3q'K1%:cԢ_ d*Nm%{U۶X}G 1b-6?D71=U +{fOmέvSY"CI"}{H[yj=LJ +Vl6pg +Z5ad +ae&@'P,d=_ޅ6v^[k1GѼ F9BfXkdZUL} #;P""/1~ bbEk@ +t͚Di%Lk:^oduVxП 4PLFA7.GƗɃp(:QM,鬮@.Fzl!p9ٶA;m_.sI3"TUb8u|WǿfOj -so~=ul#Jɲ)Oy*2aiNŐMh5߰3 jEA^vOxm$*=S(R!r|8S0;.{UPN(Y˳sZ:Ti ^bUE9|},I]a@@06)Uylj7Dſz^QUituZ?Qz)HRTߙ-hh~>o#[n`=⡂z3 m$gaΤ +8t.5Lo(_d`Qo*EC +V#RoŘn>
I; J
T2M2D7ŋw@5Cǯ*zotC^UAaϹӡ*~巠U%yDhQLH%(3Z?x%I)uv<dN@n PJVÃ]ol"^4$ٖ1UT&)~"f^6|65 DX#Ӣ_-8:`ǹܤ/AAlc?c.jWՖ(П* +U{'hyJQJ+%C;KHn/~M<W>,Sn4^z͆~:CEH1kC +MD~ yh%swτ|YLM%JCT۲Ű[ޤЭl=ΉPPoPoRLH1oi0ˏX_m cDAÀ(S){lSFq<65M)ONjM2XEIrUb꼊_az|(>ٗIYuZ
X嘱4"x/EFƟ@2>%<ܟ<MӿA>=#
V5<f0;H L[f e*L \eOAa;?sChyMvZ@}5`2%\eי)%'4^C=[L;́MSJ#(\]1=!ȩUus9&;d -yrC *TT M
x^.闛QN㆐^Z/]%SL{$<(E+Oh"PڥmsA
v4?^Z%z[-3W/t-^zFq|p5a%]ӝD}Bmd:Aoto1h+4n߅醏%nopyO/+gYxfTM!e7Cuɪ$T + +-*:ޓ2j-/q~hUB͊)ܺqo'ڣxh!;,} +ơ}mǰPduP|osH^oTY<`|wl|juT˗yI+|e= +%XR/NBqi1Net[7-~H +`x)U"k6Pr=3DL4<Wr.`.82tdz:p9:nRcR+kuRa/ǭq%ɟ +{1ʗnSrz; ]+Qijr$A&a&k1dI]T`U`d.Cf=EN Xb5ӱl +gi <. s# 'mʁ?2Ə&dFyeSǑlqfio8V:&F0cAUNo9P9ZjU^ݭ8K(19wV]O|ݱ @{9dEҖ!uv2Gmm_4s0TXC|XF^j3X^n1"5K4od"u7oRM-LWsQO(Q룦]]C.,:tg@OC!7҅Y"ڸܢFtKgRRrﲨZOq(ˉ8ֿ;Rf9$+A.v_ d-OfX7CB:sNpeAҌtB +MUH4R}&M]:=EYaF4H]-#+p"%/ + [xBa]8wԭxC첔~e +>S,=](ҵ`ƴQ7)8QbQKB{fR,Ij㶙K$zsspv{"CYpuRhԟq`^%(bZN}6;9@5܇ёi8kANCītE6_`pijX,usFMff9Ipb
Ǡum7':쪏Mƹ +^ؤR7Qe^o$p54Cx_p:.)Kj"las^5~et@I"I^vf;мRG^>d|-8՜ +0E "`_
*JRX_9)|gp:dU[Vf>ƲA .: +I^ +ޯ5Zawj.Ztߔ
HzB!s@5"\l3I +Wdg= +~*ѬphNJmtqU6n\_dSW1? D7~JhwÙV_D?_g.i?UȔAgH^Mz@.?aͳ+&祾Ȯʻt O_b^E/8Fxw&[1P)9 +1yI?kpirpcGP:TCX]MȭdSNp +endstream +endobj +1127 0 obj << /Type /FontDescriptor -/FontName /BGRPQJ+LMMonoLt10-Bold +/FontName /OVNTJW+LMMonoLt10-Bold /Flags 4 /FontBBox [-454 -308 734 1039] /Ascent 600 @@ -7915,164 +9340,162 @@ endobj /ItalicAngle 0 /StemV 83 /XHeight 431 -/CharSet (/A/Q/T/a/asterisk/b/backslash/c/d/e/equal/exclam/f/four/g/h/hyphen/i/l/m/n/o/p/parenleft/parenright/question/quoteright/r/s/t/u/v/y) -/FontFile 940 0 R +/CharSet (/A/Q/T/a/asterisk/b/backslash/c/comma/d/e/equal/exclam/f/four/g/h/hyphen/i/l/m/n/o/p/parenleft/parenright/question/quoteright/r/s/t/three/u/v/x/y/z) +/FontFile 1126 0 R >> endobj -942 0 obj +1128 0 obj << -/Length1 2902 -/Length2 29740 +/Length1 2923 +/Length2 30065 /Length3 0 -/Length 31373 -/Filter /FlateDecode ->> -stream -xڴuTj>tKw] t0ҝҩ-Jt7sso`54j,f 4. -d/i - -`loxê -PA@+ -@h$
[i!+ -wr;0WϬ夥Y!gϢ -ve+<d^899!7 -!Q Vbb; DoiYo!$Zz8X`VCj^o=?1OC -I.@翎l~rt3|v B<9=_<ltwgp@Na -`תvqgv\-\D[+N@˓f -_0Fߥ0t #ZNnLH9юG7"nEt\3ֱx -9 -.}{%:?v*5uFsumsu,nKN#JuPчw,HݮSNWvIw<w$<xxQwrji8,PRbJ qrK+:ޭ?@OHL[lȼ2͜//paV5*m'eO. I?r}ǮU щ.7k -DU5dE}uĀhtD3$xi\&:וa̙W0Bu6'7c4{X.,\%-,v1[Y^0yk,0m/f1ʈ_@})m#"sTo&AZLv^mo=71=EIt4'P^{UhW~ՌJ[T]BOD;ũ -Y(|o -ʂ8N詋o=:FǒW*)]tDz?#kc`My@Y̭qLXCm5T6P?QH"yz\ܙūx,23oN`,__܋ļ/Hp+lKt\s՚p.e*q6"|kA -JjGYԅrI<K4p]7 [~Fʴp
aFUДr_VTɕpFp
$gF-%5#Y3f
Ane{P]G/؆>S5PHV%h|4HȆJa' 3S -W#A(EmW$::_DHxm.ܩׁռg>!*iM7cB>C{ŝ蘿ճn3jPoږ<raN̤VW *f:uN 3PםlV7]MCѦ?gI"<BoBsb|#g<
p"K<'A[o9
2u'42}cs2qZkfkulַtTf k=Ǥ5;Ryjv_T}4axJWE#v{cT<z@bz=
|dq"[o,RxGDbcF+$LMɰ8|>AFZ1u9͓p.FXtJh㉻gMMlj^|y))˜AhYeͳ6 OMUo{Ų2F+ˆDZ -}I,dWtK\<rNG#m,m{ԎSt#9*ғZ5ڥ#Sw}z;=2XEP;De0Ug.:Q6'Uz},.$/RSS3+S3Qwpf8J3#Q:jy?ot(1ȿ՛PORyIP~4 -^v")ȯeIo,)RBhV?qUV/ү<=#ivt՟U9은 Ӿ#Y>)h㇅aQ2hKx<1(g}ȷd|03=OJJҎO_t_hյYM* -(W21_L &'8tmIJ!=2R&*'$[^,(QSԲ^[QJrphW3-g5˯XSo|W=b!"
L~#}>3 /tM.F|eAm˦\2yZu2)"2t5enpW,Wb1X&pl>sxi=y#IIE(Kv8S(:%TwY@nb$}Q
Ri.ZsF$tDI (M~7wyP9
$}=';Ap?~v㲬 ʃ~>7y=45Ytγd*G;ROg^4w8KB$.A=ٖ_hxʢxQ߯2p27mgq2i홍\u"R\XޏyIIWĪQR4( ,LY()e2Ϟ;>]>RS-a 6NQ\eʊ}Q -04{XZ{[9jY>+|<{&#iƳ<8PƪU03CSX?'Kh{m -[Wc}r/ͅ8_8JF2;IB@|H -擉u %PFlznұyiG-#YM/w,p$w$_}E|#"p'=U3^c_/w"IWx\$W%AԦ!!V'aWXRD:Ƹhm(WM8z -UW٧;ڡū\ :Պ -~ǃ7KK5"r߱yk*]q1(o/&lƸZ -vj>vlK]aŕDk "υ}t~!Ky]F\bcFMJ}K,>:Zil>_#8}^ul -3|qSHSިZqi{FI}**唃)p~ɽN -t"(R9fM湍nנ[E|
89EZ6 -Ak]cu -bqbAU6z i4(8 d8786{tXmVMaYlqT֗9^Oކ -{xGNgB?)ClDr{V06| -N[]=Ѥ&w -A@``A~yw?#{W]qoU&-<bKӐIXDԋ^%!g8#CX$S-/o-g@\n( ]HB -EQi'"輭HŧfqLS'XN(vPBS:GxK_npxc4G7,1c%y -$_C]P>xn=(}e&T,9yق=,@;W:15_}GhS6oyK|:Ft5Oe\ԾH4l]DKTo/TJsϵY&"Kb,*b]o\f4a#;L}kG-Eo'vSҥ|hUxs4x萩Kcű4@$ӹL|[:fQ -%euOS):2Tu+;
~u疞o)z!y8>ehN uN-L=jdԻrS`{ +DGb۞,qs;ڤFTe[l{]C͚md -ZK-癮-9=wF*^gkOLvQ}Mǣ$-ZYó#6wKGA>6ł|ZKPTr~8!"s|b@@N=']K/v*લ3h^CO3Ԍ!
v caE/a ÉHw8lf}$dC
2tՌ%y.q<8_LCj`?C|Gsa}5s+4eݓŞ\w|Fo&,nϫV
&A7
oY^3\ObN -^&٘۸d5:`_H5c+t8uc?7šPb@ƟW@XV«iPaɐ2/ETYaRg`MDIp Fx:&qVu=kBI`Ob . w;v·|$]ZKS7Y:/Mc&Xe!FMix>|TC`ggdVQ[iE6?ɫ$36#5B,HKh9M\i7W7/)Wgi
<iaoX!Vsq6zΑ%W]4MW{|HXJj?DY!7)ѣ -"6x̱2
{@u@&{ZYNf\~49ʐ>l -+ȤyZ"yi:m+\
|r`n̚~ԷO765{knӳ3Me1[J'WKX?>W -nZx.OJu_ #RFHԸ<gy4j}F2)R47OM*)zYr-~so#ӡrAʑ&P -Efo9Jnp;}D1M)%oaذ. -G;مCoF)%O0Ŋ
%N_7q -aJTcs}/Ia,fT;<d`]zR>OPă,h(w&{6JO*J?<wvtr){ǐeA~<B/P#CIӥ<\6G+{V^G1'- `P!4&3Z(nvl$p~͈=ӖgAվ$/g\g|Q/y%&+ė=*0/+ruXݭƍycAhUۈ} -<F戞:MUjSlTI2IMІiR
aٗ䔈R9hop- -r$H3Oj/UZW -Hrm?u *dJ?P(+ -}
wݦ"Y{1rFb^Hۋ==Ydi*z|qd^jL7DuVԓҀHLʉ[u~#M6'zۍjY(!jFFf$Hgfhf%[EAN1Th)s0|miaX /a -q]WYq|YLX>E^u=ܼhb0b -L;l2YfMtHpaRZRLk╋7֢U:
<5ȴFw+# g9{-`D歽̏CYps?X^DY{2HwD@djw>
oIr@%uf7Nag58L${Z3%L>NoJWeVeퟠlA<M*Yo<$ԥĩOޛ -ܴ`EJk'BRZW v32[
H#bt> -(V}̚Fcpm*Q֍_Cn5#WX8ǼYf;66tY,ǫ8f
#(_~NLCZ$W0V?{ıj}ִ/@XYd-^jw"#N2M3Y;7,|}[KW+_U
JI=/`춳L#[1lw*!'z`fnB`J1*h&db^eTq+\xS+L3w^w$Y5VTYW P;eCpT!l蕙=jQ,lcz| y -(ٶOBHEڎu)i{j͖ .J*)3rvcԹjX^`HGVI2ZΦ}iɗ
C"_]NlD"q|ia8g]y1jz~kVBcbc\5!QEXyw,JO_:u+%CF6}|~
V8z~D0o؏vO"R#YW Ia2)[z{VUqʼnu,ג=wϴ&9@涷ՌFGH+d:&b^Q_Rw!& $^4fŝzS*}T+6_]Fl&-3[_h^'G _GW)]*AE3yZۊFFVoŻ5:ב;n\H4/词J}`uݠGc,p/j6o@u,⸰ H#uVrDWٶ(y\ta7"Xrm*O+-͖3Γf>V1(;ck"$woסWЎ>J -~~WVo9G?vVIZta}cp>3`o'fC -:1LILкj"jP,T{Xm2&<!?xjur78(aZĮar˭?&V -5Qm㼊2F%W^JERkHsZS$EA3Aކyafx)2>px]Wz0n -Ժei7q*n VTԘw{g蟄\au
kNm{qanJ24k;՝׆PѺ-/gΒ=-BEa֬'|Lʽ`qwc㚿JeKTA塙Yޮ^zgSUDB ؓ]x\/#+a<GvJԭ|zAFyRc֔P8קXd1d/ J*W5he|A/5?i 峚<lڀxk]S,Q$"*"rTzZў+]xGP|_W$a/8 -3 L.w!jh¤_cՆz?N^|6D1zdʋ|t- rs"-67v@ՁO?kO0 -g*=V\DV,4c+7[#{gHW؟XtqWS\>!m"s1Ʌ!}j1gI~8Ytf颳sCF;@O #L_}p[%Ĺǒ#eT -vh?I%K{ڈ- -s\Sً-=Rh+{j3D3V^Ĺuפے]Ff?'X(J24m6Ji0dO~6i.tvz\_)@cj-оIS;FɈ}A;{Jhu>Ht02{J;"?n*WЉs
}Hm:K,3*ف:Y|VI*l
r4 -K gUF͕U(fW寞l`/Y^70~m&W2y% -`):&^ĺjG\2kڼ"ٚ+TϱDc%6f2fR -AK**($3pnw"E4!}ZFO"7rn`8e9WWhAg[z V1 n^]?&!OJWՏV!-M"us 7}v)qJu!Dҍzxb*
K:W]8/4z[$vPνKI4Cr2(濍NF3K3EZڶōzd'. q0
~)}Si5)c*6 )$|ToW6;Bm-W#3潒+QC=e SY '*FEs@G/i"^ey.U0k˖{$lI*iVX\#tW#G/Iil}XQEAa:$?Xb -xwK.qqWDQ*26)(ƵZcY'ږQ;$%sb箾B<[r"}'a h3k+?Ds}ɳ=_jjPh<: UpJUߡgmf fX~[(HOǑR>uɳnb[$acOF1atKb̽&y -AK.ߩ\`7
Jkw -z{;𰪵Ҕ<YjSxX-*3'fKrX@)3Sg%EN
L7<hlP7~0FȨU5XGf5l7)[!Qm%+AG#aybQtT0k\S);7PuV^m -ʶ1֬+kyrbr@\uegZPx5}aF͎@L@߇"`J;{_%@D&O~axS-nHD|qUGWzLa>-+ #q$eΜvynn֒Ǩ\5 A&n?0LO
اyac@^-n"Or|(qsk;;%@)hNȞqoB'EI[ߚ_[G6L{W)/n5<98oQ:3RzAi/C*=յWqsL'̝UL7 n}e^9
-^yǂĻBbp8g4zCYjt:w}E(XVAǙIVav+#^8`N֤`noS9-'K3(U)廳}~rm<ONi1:0s4ziXI307v?jo_V:K(]%9SDNӰK#\<0˯eן^E!̺}p'rB,% -<4J5&+Ԥ\d M%go -Ԝk'ClػRH&OxCl;).d4FjO!EtSQuAUwgrvlYIM^5qo^*>TU/xoQ(pmĶʧؼY_o97 (nхR\hUcg㫇fToM(+}L-t\Z@ _@rcL}Cn
n+P^#\Hn@#AcaWƝ]}:mgծ0Y|AF7
iOtKO~<=YՎn't T9b{}Ԍ<i>'u^vwq%U"Z'*^?ymeWJ/<t*;efX4c/bU[jLrL|Edk%ބ$*Ϸ1-옔eMṙJP._fu_rmڏH88[bW_jo@y#:UwtZ)dm$]9+k<N[n'?K
|/M2P.At$a%/vVIyQ-C߁tAW±!&AQk G)m6lV8a''iBk@w+#_ -&`^HgJq1ɗzP2S?jVfLxVB^lb6niATĂ'?*`I')n$qU09gL˲6y_ʭpkUǵ^LB$uǩzL&j]f -YlZ2BATn5K3s.+HRD!3x.vxh4}~S"?BAԋ jd֗ b[hzARMC6#q\3cE'}uRĻZ>AobɥJ0.>Jz:%pAF0vI7".vq?'Xs)pI"pn:bS'Ӏ]S6V3@2Mgeh:)&"n|tFb=9%{vNQ_Gtech"-Z̝h؟20zII}HhcSozg>S4X˪H9[<`5i{Zs$W}RO]%
B/EgY79 -au`6u@|e1iU̮v6w==9FU9 \-W+ؽ'C_t!oo@EӋCymlwZ -Hz9ǝq}bsƷm*ho}ZV6L3B"_Dك2`%g*s",ro̒,3u&E7iC?bt_4UL~%o+_~zɖkN3W= -B[ "0cvMJYź8hZ쁶dkCu:<>cO/&p -<A|kbA8%{ -5a٦n%1r6ګtxNK:Aߴ qa@,bI/xT
!? R W#wSx/zխNmP,EH0n$x -;9EB)͑wlAiTUWlۚT!!RKAX
@72nN;WC<wmv]5xS=U8n$Ԓ?Ώ-L3ȥ~)K6P5bgt)D35 - - -֚`gIf&>iB1Fp*wQKo㼐O. -| O -DvAU(8`QFŵ;ҹbcLP~A7ޜ4g od}W}p -MONCKPIGWgo"±!kh>Ѽ[<aU]q(
L!n }u}GBi6Ҥ${>'"ڴh4tIyF>u[TR`+PȢ}@6֡ByS4 -g6&A$Dc6Cgdf<Gp -cjTwqψR-wax}7b Ř&"x
jcoxH\HtYK{B{Fi6`frq)jJ\H>¶צS<䋸,^Dx2ۧ -HkG'Mhgu:_ztGWLD$Ye'K%B#4ѸV{<24 ͖6ossRL88PoǓSm
"1&!`ƃ O4ei}k|JDU -3ccFࢦ -
KrY622u5`S`InNG6hHǾD~bx(q<ݦFt:J~d=҃9/G[u@fD2G>zz?M"JPcGbbqϻo͟@jBڑx/uk܍xuYv8*dZwqaO{Cdܮ۠d(ʉd~TTULzʍ$ QW38Je@`.h EBiu7 DmJN\Hq̳jeY
VKjiU*@@UPEbYyV(SӇ݆ -O(nJoONt!GshUum$XEMp@Sf@'nE9'_ט1!J/(bqG3{f9u0/pb -~֓( -v*6CQ*YAhh{$@v5ѲʲP>D=0W-ҡ%PvQq6Ӳ@Z#3ihq:͜:m,@?IDj5xBĒtA;͓5)EXrطS:Q -}PZ$.G_PU}(Ʈ3
B;ƫP[43i!+>t`̉|жv:yPY0H{kK7f~( VWva#ސ}!,5UɛDVAߛgn,e3xH -"Ϗ -PewRw<()u]\G<
EN=&݄3iղ
q7dYvrLa ,"gNO P4`W"ƹʱ;8A^,%:åx;O`x9~$/!
j m`ZQO -ԉϨjb"fA;o4:6oxS,-vq0 2>m9sk1NjyzAA# -ʬv_m^O -Mg"dwn|i RA5=OgClY3*\1œ;uuxjU(
"8^O;ĸ hxݿuV,.E:^'^^BSfkpYNN"=0gPWNF dh -JV]6qɈ3iS< ij-w>nVf
f`~Na-+JqbH9KnyqYCB0vE qޟ9HҖ \QGS֯&B˂;EL|XTʫ!`Flph)!_i8y'ϩLSg=W1RZ,? -PV -ofh5Q+I=Lq+._`4>AhFz" x@G̐:s<GeRAywZhAyH|I\֙$%pU. =|a^ny"98]Dz7DɮjpyINom2)˵hՒQ&4nSW^a|N|`<./`*]F=djTǑ}uM#^߅_0kCғ}<Q'V~xX[SFZdYe
hA=ٲ>&}HCǧI -0pHwؚ -5v}&H - -b2~Z$aI| ?G&Ux"rҵ'w\/ðMMľnXLٝ4"?6?ThPm3=Uŵq{A
O<:JctʆQ'&îՕg -]FAX
@N9̎s%SSk1E^K`8#dM5IxEU}?zbT
cg#nTɠJiQQIih<`` Ҁᖨ'D&lRAn5ErFۣ8iz\.S2.EmÚO,z/+goMxC IpG
e -2"2HQ}IuIIAh|*cS!xȚoML{PoCRn˵ -']xtx^)Sc>VEmd -GRF-ğ$ b=G#1M'/F饫 -b5n:4GuވV8`o - B]62'ݕ5\b#.ȗ+̉f4$AϊQHeb#G]RxTdd;3#עW.䳳t_߁̶{aGz'ҡxQ8t: -zΉT,83~m&^ )Gx7!2iB<yr%<ʬb&J/Ǧ@TCK0t, $>5awQ*+"1p ]^a -YR6|sjs^,3ұ=(?L -[Y9-450`ptz][ٔ)ܣ0 -A@O PIzȔ+tV87OsnP^`djf8Uݢŭ0?G`sOa?x5ZRۚ}M;2Q<}UDj/Oi>5b{\!sWBDmXBaẀ^(10+mZ]rm<U('XatufЖ?s%]nSxqX -FS#jSӴTGƱ -s*,Ц -y13I*= 7!5u"쵴 #_+<r9R]4iJoTe(͙߮7x - Ԡ`< [AC)' Ƹ^ZHo Hsֳ2u -`=IoxjRh~:[)ْ -j̅$Ӆ~.yJ"`WM5|'PO#YIFWU[v~c!|0dUaiϸ"xj=QgP:P>I7DLE|U_*9n
b2ŔOm)Q8>b\RFz(-΄zNִu2]saυ9m#SfoNNv|rmHףuB3%zĿgÞ: UzB#A}I`gvkO=3nP̾GXN8^o<C{Z -{.^ӢhZ e,"^}[SmF+s@愘Cvp2ɡXFJ2߂h6?IXBwxMIٴԟ/xOQ}'`t&<B)C ,AF6X$LمΙ"i=h+)v]v&řp# RnҪ?YΖѾ}jVauG40)Qd^'lnX=@W$9nP6'c6C{u%ր˰W&[X_Ú"zjJ (jhrlm84cϘ9oc١:TX<g1_(|iQ$_&`f]T!DsFom -VI_x Khց8zaT}2YȄOV7!^lO#SSzeyW8nHn'v&Z:3,WRS/g -qXBn}gr|o<vIZ*1t4:O^O9oe qɳՎx%g0!%[*^v -PP̄ٞ $n`@ťEXOnL%}Hj28! MD"iJwV9ɽ=3l/(53 -Lt6]/s߅* -oʛR -j2T_˰rW&vq<%ǃ#RƧt)@63ujyѶV{]&3{8?+N9hWUed|^`qx' @! -vhTD-[ݲQ= - -oCv;jE0mkbL["۟2Ԩ(a'bg(^7cPkNnշ*c/<Y3a -FwVFvhͼqퟒH[]/x%!́$h`Y{";yf`{8.{LÔ8_OzdL7wQ!-cŕ#,cU*nQe[D -?zLvPX -,rR&\jE(MbyQ.H6 -Krr_%[^y - -e=RՓ鱿%)07j -%n9Z +/Length 31718 +/Filter /FlateDecode +>> +stream +xڴuT[5ttl;;%7
tw7Hwwtw( H|s=z}Cq'\5"SVc5 +p5v3r"SQ;V { c0(!VV^d*41L< +@
@kP9L!f="rp+ӯh1f
+`locV`( d0Zۚ@ + :`w_JCF
+RI{3qkg_IXAt<X\/oneofKy3
{+GxC(ߜ` +暃o?/? c₴h +?ϞY!] +gRe|SK_>'WO^l*Kj2kf*,W|"ۗ-)H h~躋ax~u\c-έx} #;heYPQ9x.]u^img$s_u98kErT M2r +_p.I2_1a UKn^QiV%6U#A{$xoMfXo}`á?%6ʀV+Џ3cG%+;s%7sQAn( +iӾ=2Q+K:96ιQ&eQzd(1\Z9=>r)=gv'^œfP̈'ȍ2d[Y`6#ϢjmŧW2MS[n%8EWfhfb_;oٰ"4szE_Fm.vZ%T>+_v.9XjbxNH'ܠR+ZՈOXpLD3Di|&ԗ70S|6'G9qw=L,~H8
㢯Z虶Ix^0xk,l,sfKo\@6Ga9JF!\&;@6ɜ蘞"$^fڕ]~rVS9di:fN{Q- +۴ zbu0 +'DX('dΝ#>XrExLCZ.H(zl<z"a,хj.D;%r}CZVf낹ApWOڈ]Kb;"?'Rq:
"ssz@2B7Q=ژ,~gPBy?akYm4|4 +iOYSv"z?陔p=T,W +TJ +)V )W<H~"*J|awsrdKQ.cbvuc7d?LFf?$JP.8&W2y | z8zaԢ#Ccҧϭ)Na9ɝ81^ +ZG$r-"5eʭJR> +qH1;\b߂7t,cƢQq'f*_811H!ATTMuY5Z1-![>塚zNz6,Mȵs%?7 +m˻ScP1__UȊmľzJCTrPX|OjZg&ܺH|\ƺcVx~;ͣuk5Rs3]bՈSze튄J7$4?hi?&tA|?lHJoM컹머[F;%`sۂ*2ܗef\3e*}%)Q3w"ي8lrE/v1YUrkgήhSߟsYăAQY79vþGx%CSJ(M_4LNkm<lMWR
&ݾ1)mn-?]!H0<e"_{ı<>@bZ=
\d "ᄌ[ +SwCZ=2X_;DeRe}nujmNƺ9I<'Ս]Q[/R,Ss"#3C31wpfJQ:<2ZoptɋM')+4^z"ϫeIk,!Th0yUV'ܯ<#=av t5Y9❀ ӱ#Q>o}â4-'y My<bQlSoɦ"~pg wC6OJJO_t_hQڍtoE` +3ҽ#éflIF@nB$}Q܍tȩ+.ZFD4kI (YM~WYwP9D=';CApy}_h8,+#ϣMzO?mMs-h *i;h{5H̋yד +_{P[ EMT&'˲+H,z.{6u/iQgR8sADN
X澏yIIWQT( W2 +٠(ieʢϞ;>]s>ޒS-lA6qlc-&ah3v}e?2|VEy*L&FSUI%`f?O+c~,l})ya˽ +Bie|O +F +v0k>vlJ^aǕDk "χ}p~!Cy'{#^6STw1&I5yMqe=܅86ȫWts~C@Ǜ{
vzJv pNzA Dˮuo_[8igᴽfgɠ1r\0^{'Kor:O҄`yaoNqq7KQʭMZN:w8y%Zv -a[}Su aHT:ajK[$RK9ۓDΗ9A'D0;Ing!~|%>Q^&j>izoMj/HK#|x.L@Zutן4QX1M>_]\71{HW.Y@"B;(Ȏ`0#ڞ4/7ۇҤ/Ju}^;4gwJig. +0|. Ux5FIOȽuG)DjSv7Pq^g<(3fl4CLuڐgY
+v*YUXCqiu5,>YMx3E7Q(KҹuZ93Saٹ]w
<d(VWW,3,!B٨giJZ寬v7"JێͻZZa.1$COe!O;B̯UOqPW:Cf$T bqbQM6z0i4(8}D(W8v{tXmԗVa{ +
]*r§nC~`ʘJ-龫v}*rc=g1;!]+d(Q+o(JV-Vӭ_{<"u5©" y~GF 9b@q)/M6JpsԤRI2%Df4hEFc\#{dT'
B]ۅHOq(kzh>j2+]a&3xZp(s.!XSαٷgz9_BIQl>IٕH#*w/t۟=룝Mx3yY(mZ0+@O)2Fr$W;p[h,#G<nojTL5PQiZMi|J^u5 +
n:ȯ<xw +&^| aS/zPgaDs~#Ihjf +-X0-,$wy5?x¹jRFw>ӎY +ިOI$WoQp-,`7xa萨ig +EZEZn.( +*PA4fuf)S1IBOq#c~lP1t1~nH Nbr#<u+}MFH:3!F m +%dCZU\{_ +%,ݧ3JgUAEh*봀Wj5S)5jJ#瓧z6rs3?#K]8G-؊x+b9خ)n烓ϸfS; -#D["Fonn&S/Rqg}>|< 2Ǻi= +ـE50D{R<&;OC{NC;6RԋC'w2|LyM#r3"$#@PAN#,*)ixEC"v8>1=dY 9Pc3'$9Tw.c8ԇ+`!",j Ɲ+#ƶZp5CȡkgeK=x0s\=9ù_UvYP=a8Z<4vw|8am;nqЊ]8M)Zf3bB/%ATΤrLrzѰ3 ^?#JTGK2 +\TwX~LPQs#}%}G;@k +nEg@#[?¦F1I +8M![/3Kvu"tPt>y&Q6 +z c6&b:V$Rr\=/w/#hT)O-+Q^+SV"B'Qp=Q)J?1C%3Kee.`~C3!QzW +eԃz1ʷGk՛1uqY[Us7!DhAuB0{)R1J *I~A"aп EnO;KRrČ7٨y|oDZEr9lmYgΨ5pT+GMCU$UMr(PU8?.H6KzPhO%~k÷ttUxyŏ;n}9qO1F/cE,2r=>qǸ1kcQ|"f/$7 Qqr>yVݧ~@EHm"Ƽ]VEj(aJFk}Ff$HghFϱeN[%~v +ogʅv0̄<X0"G\ט}L'x>E^u>YNɿO[2yZ`bK1ȏ|,^ŋM"\%VJMaWaͦSz!f-\ـ(KDjlR_$<3;)CK.X=b?'wt8;8
}Nm?9uY%L{OxVf\Q̙c+w3ODX1QÄ29%?XU{ZOA}U4v{CY|'("GlFҗJIqۧ9M&[ +eNjA5UΓp D)$Yj3 +[ЎY
H#Bt2(f}&cp@A֍_Cn5#Xoܙf;664Lkf(?jg`f[$WW?x1k}ִ/gCXYd +%^jw"#N"U3Y;uX h5,a%WnYɀzrZG^2,esɔԈ9ֳL?2r"UQy
2X5]X*vG8@-<scr}GNWClyA!yK] +2R2^ZI-ZeFsCT[`>>ߥm<|hCf` +b#Ī}^r켹#&[i%W~F}z:AQ+LiʳIFkY/3,y`yxeUPx6K*'&v\Oܕv\lYӵ~稩j)cRFo_)5ֵsj6,\ Ó3'|;{UgY_
a|溧0oC +YMf!Kĭ+ۭ`Уzן\~f5OH2S3_=r ԟ'{{ף. +b>Cv)7K+LK
aj>.̌;aGX/ODQJ4{B|uB?o1ry3{q]Ihwӆψjk/Y֬8)HrڈwVr#
GqYcQr,KM~[g\PK.L(24E55:h*2.Bz] + +LKH6|J+f+@Wf>VX1(;BDMwo7Wю> m=IQG+7>͕+Z#~{^-cŻp\|.l'Xïi=o,qgXo"wce07\G0>Gzhx#Б?4y??-"eS0[nXۍ*SW'w0Knk!ջޒ۳=y+5p@LJwt~9/ұ\;t +:/\,.L}m/k*,n^#YǶGŅcq#ͤ=`*1Ā azdRefVة䧝$\V"d@UdU[!NNsyZ}hHt; +3
O@f>|SVU$5+yu<5>6n7KpJuݩE$[%_C)^ȸԽ +n~Wfo)G?!Vf ֥Z4A}cp3`ARRuxsca
q
8YlB)Gɚ?X):d˘f~Z?.'DopX±U?R9amS˩?.uP+(y
<F%W^RŀR[Ӹh+EٗHhqgVoܽ
|tp+;Sֱ`{]Wzo +ֺ
ej7s*n TTw{ld蟄X2eԷFn'
NQ7Ͽ̊88?-m^@ц-շC3gɞցwM0?$'}Lʽa^ǵ|C3]Lˢr'_AGVyB&[.x9p_DZb^Xщjt
j^j~&g-]yT̀pֶkUS"Y$UETDnԌB=G~Aʣp|W$~Qu C!)[.F>o6taN64/iY"bC;ԩ"Ǚ$ /+K: +B|[Ww!jh_bԆ>N]|;{Qv"Ay=:EJ\:iV_[G9w+/ЧT'w32n
+H+G[&*~ U뛭=3P+OL:k]?!k"s2Ʌ&uj>cIzD?ULf钳sc;5,_G
h{ +r|}mH(4ZHG6ƜQVc^qt,\x#6rO&E +M<u6Mu-0esSS+*Wn>ɢ;x5J]A7S`ɚ#\b>~ ԛ|1ZyLq"sʨf#9L<5"T&gГ18Dm%*ud]ͤ
E$|SUTPr3crZEE4#Nc.Zǿ"7v `8m9WWhAg[j Z1 nA]z &!OJW͏V>-U"es8?7mV1qҚJe6k}-xѶ +-!5*XǗ)xp'/&h4ZŃvh|0m=6^0 >jZʶՍrt'. P8ٜAi-){=m~b,K :ToWv;Bm-j+d/JTPsuxyc¹[JTo2p<wW5ef3 XnJŮjʔ؇Tp"rCiqpD +Ktn"JsHU:Opyy; +V_[_^fXV!KKB]$49ZˆX'XAt^tFFؿg;2<1?;G)9kb=Da|F%%.ɧ/_kaTgGZMu'rsЕCۭSurn +s9^a9n,1SL[4"j?\74qq[G +=?ad.+,l`SzDE?ZZ%I)Uҁ|EH3ķA=%c 1xـLY@iNʽ
ɂKSsKgaRWI]qy:Hv@iMxdą)oQ_%%[D3 |gCсmh噩o>E0'^ԯ;[³<8=J~v1zVq
́'n(
d*>CGHr
*yYLoX~ɼ2U|DáxOٺoĭ.|tr=LBUef&4zV]\;mΌvS%̨m֗USNOZM9abc"9ߪ5j'U`"ƻάY]8c>Ŕt<'x*1{yKZF((G&U8Js09&ƒEV)4X$mc=c~LffjKup0
ܹVxE +zbM +.<YCX,ևGtܡ;
P&bh +r1_B{X#NO+ +c-"%gIH܌n/;8bfXb}^&"+uPy/dXfO +eK9aw;jG[ECy$kvN&Ȅ#-qTRw;?fYg|hN2 <bY.g%;cKw&Qp[Ra;s@^^M9l/,)C63זьZ:[q-.b:]$]F. GIQYد(q + `֑&m<XGȖ:@W>8ؤt: 33&&3e"GFv&w +:ܣ&X}I^nh9n(fAx?Qb],zYSɄkx] nL$$9~sr@UiFfL}MݿE=(<ot<V4Gx^| bY?rZH|ic +͈(lZ&Ļ=~:'Ss~/8IOk4KS| +lCX) ~!,VO^&
f!#zuuLo;rD(` 0J@.n#7}ۧWm{6vÌh]~l zF|Yˊg:@BF=BNt
KN=^ƾPODV
iRkf8̖iӼX2'=os$|
!h|qLff#P#y*J. +5n
ԍsi +_c?BdnA +6W=5r2?#X|!?{,*^2rOo8M~8 W寀&THl=~AS1vFak.%IHEdlQKiEzeTwt<GP|~:a(e?e}ұSkUJqF6ty>HRHAxsyMT.˰P$ֶI/Tj8goB*} +)ŀZN\YXe+<}r1ƛ|\x.e@-<Rot5)tW9Ӎ_e&Q +7^~f<a<87-5
6q?qnL
!0FރkV!Se2ͱ\LtM2g3s=Y$̬W'MPEcjztBE)wyNXǢNci1j{ǭu'
C`4f;
ơ^Yx#"uuTs&"VIMYC</}.Li'(C8͆23ċL7l=[B`+fmIoUEG&?`8K6ģm^Y|Na|_S
lC"`>T@La1~=Nw !"e;٘ŽXw8';c +m;q@'rwh͑p>guhDl-dlڠQJH'7kq,{2 >LZVrV$Q1=\F.0/M\pKl +~DJMUyvp>yF9ВJo!GKnjckhBԶ`<϶|HB +/zGruOYnhºrOD +@&3}膃'3 +S=<ϑCA +Pt:2ы
t䏯5NC}`KT˒B` j6Lre!ϴS-U+_h'b=:qu +,x8[4kl(լZ8JĦKC OBCT?Gd|
їn-lIւ%@k6"QW=!-4".xDtRRM٧qkfXS^ j)^+40e?G^j0ɮj=YaM}P,@N%1'GfiaI]{aΡ)gZVk ܲ<T>n,\.|G:* +Z@(mm"P^Sss83a#{̳0v9le֊dOߌe4dq#> H~&fW^GDr<(':Z:6J/T5uű#7gŵ[=>GcU"/DOt66d*8*86pMSWf"#od狸f&}Wؚi/6W~>SB+ f(VOH1sѮZI[wG4)4M<z*)&̊~iVLH +\#AաJeFDQڨܢ|OA[4!]Rakf?bwK2پ_ *C,O+*!IHL)/IE@ϰ zEf~gH<u2J1,jLR62&&[g':^|n ^7F]hubS-2B[2\a[tҜH7oQa4M_1+ +▶NͤyBrWiwP1 >MC^df +I5pyhŵ-wtƇ]y'f8!Dg1buĪǓ)cMWiwy-^1_* +QVSt~CoR;ӌN Ev&Ni]qMc=Fc;EqEFKI[l6,ζ`B_ +>ee^?3{w ^oQYG]ngYk'\n#⯏$猨/ .VkϽǔEg|ۡUJXchM䠲 L|`=znez
c?G{s[BrqST\CkqḰ)&pqkOզ2YwY +#_
n
(bz\yrUXȷA4$9tdv?1;I9 Bt`5==]SjӺQ@07b)SẬc5%ӤqK@v5@|ݘ :aRHo3n%!Pz8)VIXQk&Isx3돇4B~@">7V#+Opb r +os^+L->*$$}x4OVQi&P7:{Pı +2_KaJ;×*~fi1W"AgNjN$45
qٲb
`tgV,Ϸ{T89G^]ԀNdGGHV3'!z%r +N7_NN5[6T#>u|Mև$`R3dqmu!\$u95qʩ +wБMnF +QOX!
ql)V:^Wa{F'MANjils@Հ2)ˁND +0:Θvb +F2.Hꞵ=ppVtxjZUX Ҋ ͙Mʱ.an9G#t/~h>QMVw@ 1"'wJt +uXp4K`Zg%55S).U<d +ܭLn[fɼ]EA_Z)1 +d)
7~'qȿo= *I&䓃,ëM5\ҒP< +JK +,YBb+mXdv,Ɍ"boTDJ !@\:&#V}!ܼ1eM6:Kן.-mj +Sz<p}YjYX>)o gyeN=|j{䡇Qonq8Y ns3elV*~p: XG@'6kZA[:ϭQD
fĩ1|ͱ!T0b !+"Q*;9㊟|e5τ])x:^pl5.JBÉ/&P\CXgJ;ѸI1ek";t͖39BR5o4&!uLٱ~oe`Z `FͫNJ&S&]nrն6pʊ/zzX?̓XJh?'O)뽯_tY7! Vߛhp,0bHGmg"?fnegu"AX^622HqH$BM˔XFRndӦh)PG؍&8dEX5&9D~
>ŜB53Z}:Yh-1uG_d>5Pmg-7pSV
B0jUDLFC7q+?gU;hfrTKPb&Iy:2=/N*$J=<JEThQ+J; +CZfҎs!&˴z1t#ƭI`hh~qvaFw"8AD㓘DAB9r&As1njE}a%$ +wsZ
fӞ +bpoGgm#,4#d_Mђis﷼o4f+*ؼԫSڮ7=kFq@^ճ1
0Gr}13\o[6km]F{YvhKtUn`sdPp9q?: +WwYUzx7wQVjDgi`K2,ۈ{LĒ@LjI
{ĖaJbQ1hA}:BnN@Öꪭ&{,3jY]+MQRde" q )wC1m/c +s$ք=Ϳ*.KDvtѠ]IVHΦq5@0SNP2\TvD/C6Rq>[*y<y+<l,لŇi*x
Ċg|ޗ/!3p!^dRR9o;n><F3__
=jB5.NUͺgݰ~601M(9 Sk۲lBFQEЋ`FGAk݃X=Q|b.FJ`Ȁ +\ϬuJ
%tn2!n%spYCp4k(6T +-oZlӹ
#y<q*$@-XQJ]%&r\Re5?lkg/+n3\8^3NX{Q{I_cn)|CtFcY^JaX\ASsuE@#զ6ec9̀ƴ1R +" kHpi1D +<T|B(iy(%\G|MS^16pw(9/ +if;k [C-iqB+Ȏn8_JzwqÒ`G(f# +o]p{s):$=Qe,1Yl!eq/ɵA((+a*,&-j$]@,X(8
;h5n*p
h +=(OL7. +P1כaaL̴8L;u*@5~(ޢx忩,tB!%ă3
m1ddeʨ&Blp^|p%B-(Ƭxz +O]zSwOg?=Ujj|3iSUH+4οqK*"/FVS$}{BxVʣEvWaldPWQpF'nQr6~!$/9+ZpXz8[K"fR7RUr%V z~'jÀbLtB{S
Erqq52ؕi=_I];\^RSVZǍRk+|D~T&ݳ +p#+fT9%_jK2؊>C8eM⡅qlnEa2C<J#ڤHgoHa +!f`x@ӧgg]0»°љ1&wCi +A<Hrzo6%7j;b8w+7Q]$4%k
JJ>}>>+%d]p`0 +1E"ca.!SWpD(?_$;usX~.墨z6VKK|f?oӎA\A2^jځ_rj%EuRe_Υ/ZCU?96O $ +LY/dɒ1r +Lwb>!FD"+I]kÅxd~[!H7m/:[M)X%^$5ZعE6vlnlY]kR+ +^"hѻ13c7*mq)4ux|e`pYGT"H +1M6\([OC|do:>z2x]ثst',Bg
HBЇ1࣠2J;퉒^j|ʪȶI + +~-$]))r ;FFprjui,iԠ=TZi4V. ++́rj)+ +&B;-&hd漜X Ϩ,NG&RDdwy_|Pr\ +p23E!HPbWå +NYj>h|vξ7`oz"4lUdyW5KZ%1S'ʯv0(uFsGM!0C>t~qaGA17XsarƣTvOˢ3inQwSMFoCz:'Nj4]7D`so黹f9ۦRƄ@oD-RoۣIi{!ҍ5Kz +d$˔d,/UCCR>O8(wx!HCyapLh(Ýi9N²&}yBd%9`Us2*kw,qHt.Av//tNHG'>\?+&=GcU\EPw-kPEPlUiVڞ]kwBjs +zϽ;6\
Y' +%H{0vNE 4-SHT:(ʨƕhWj5gF1\JvX}b$>NѽOG1c66InBρ9Zu`n&n s:S颤C+{R-:C`qFeyaj{r%lVWvXRK';R;ym%qjFb˳?WQ4a3mkhď~I$Y>I2qz= +mڦtzxa:MP& o+q5r}{3W^0\ˬrZgV'I:xWֵ8'Jb6MvX +f;TAH;l__rjuj=?bS"4g|^@bq}T=Tb24&]YA{-Ms:#NnDqJ3pb̼fvl}֨ٿ</TeǒؤڪſYG\NLE;;뾫RԺ.9.d8HD't878[)J~ VQl5tӽ^/M:_hc.B*9|OIMޝ҄-H53ri a1HJbTR-HrN7l>TU\ynfO(b3J_A۠HSL)̍wne1%+_ endstream endobj -943 0 obj +1129 0 obj << /Type /FontDescriptor -/FontName /HCGIQG+LMMono10-Regular +/FontName /NDWLKG+LMMono10-Regular /Flags 4 /FontBBox [-451 -316 731 1016] /Ascent 0 @@ -8081,11 +9504,11 @@ endobj /ItalicAngle 0 /StemV 69 /XHeight 431 -/CharSet (/A/B/C/E/F/H/I/M/N/Q/R/T/X/a/ampersand/asciicircum/asterisk/at/b/backslash/bar/braceleft/braceright/bracketleft/bracketright/c/colon/comma/d/dollar/e/eight/equal/exclam/f/five/four/g/greater/h/hyphen/i/k/l/less/m/n/nine/o/one/p/parenleft/parenright/percent/period/plus/q/question/quoteright/quotesingle.ts1/r/s/semicolon/seven/six/slash/t/three/two/u/underscore/v/w/x/y/zero) -/FontFile 942 0 R +/CharSet (/A/B/C/E/F/G/H/I/L/M/N/Q/R/T/X/a/ampersand/asciicircum/asterisk/at/b/backslash/bar/braceleft/braceright/bracketleft/bracketright/c/colon/comma/d/dollar/e/eight/equal/exclam/f/five/four/g/greater/h/hyphen/i/k/l/less/m/n/nine/o/one/p/parenleft/parenright/percent/period/plus/q/question/quoteright/quotesingle.ts1/r/s/seven/six/slash/t/three/two/u/underscore/v/w/x/y/z/zero) +/FontFile 1128 0 R >> endobj -944 0 obj +1130 0 obj << /Length1 1909 /Length2 19088 @@ -8172,7 +9595,7 @@ l 9g>Zܫ+c_/6*qNH]%%bV{p-HV̕jg} nj*M!+ endstream endobj -945 0 obj +1131 0 obj << /Type /FontDescriptor /FontName /FBPQEI+LMMono12-Regular @@ -8185,115 +9608,121 @@ endobj /StemV 65 /XHeight 431 /CharSet (/a/at/b/c/e/g/hyphen/i/j/l/m/n/o/p/period/r/s/t/u) -/FontFile 944 0 R +/FontFile 1130 0 R >> endobj -946 0 obj +1132 0 obj << -/Length1 1828 -/Length2 19393 +/Length1 2073 +/Length2 22167 /Length3 0 -/Length 20582 -/Filter /FlateDecode ->> -stream -xڴsx&٘Ķmv&m۶7h4ƶ9+W2Y7o= !PƉ -#ckcN4u2p -`da88#snL 3`
0u{l -(
1lW,{<$t۴lSf0tSD-3CpFIr-,q됄XH&ٔC0v -P>g2CY'w6)uzTAZIL֞=ă>w~K<mbgtsp}p%WJ#*-.
i9Q@~'\I?xQ`-)i1\˖g$^@d2ʤpE}3Vnxr$]5 YAȵ3=VMn2V -sNlIT`GO1@*E"Ίp9GEw+ʮIa1E{A -vJ8Z`JK(ʸu<Ԙ\3#&~zQY:l -mU[NTy5#>z0KO}
?|o)].
~)P-# ng-#:/sϓEf"¸`ƳH") *U iw$>r{Y.!0{tLRqf3o|}/8s߽\V:J*Fk "aVEA@ZG۹ߌ*LȰ=K~o;ΞגA'vW;ʒo0\>cm%j hJ"`D -V.YS6^:qS d랤hA9+Wv ݦK?4LC+^fXSOq^F>ÜsKO`$'I8/^:.48'Fs>8MsX NynΆU4rZ˹K>HANr&.h5L:c^h+w{w7XwQ*8[I -3-ŶJk7P1&0?O_yCYX~U1
+
6
>*o*"rZ5D(A15t!&jeߖIW\'Xm9w+uG~̇AQ1/u4my -t[1y6JiL&ݝ%Tҁ'ˣ贑6l2|)XqK2A}>E)]}+ghu@eahNRɻ^a -K8WQA`(IoyjI'zk渼Sީ 4J̿ Km7HɄ*zl\YCzա~(SY}xSN{ԕH%P!߫: .teswA#DUEg2zDOtIKiAb wIPz -3P)~` -#g'x'>h -j;ڭ/Q$69{ ~"Cnz`<aZYDϲD̘hr`p'mQ۽X.,_}2ԻMj1+ Г|1ac"ZgD*yyl15}0Z0=I_dn=~-L_Uy5ɵ8uO'|ac:x^ҷJO&ARt -=b'Ukg*?tڪZ}h4]7^ua?8S^PddhʮYA>*eZjwϘbLp!ݒYvU5ցEߘQwR\45e?%`Y -|-ƹ?)kYrT1A g<#Lx_7mZ"6>F*5ܚ-<mjCmKT)kR -YMgjO~f8f}W
|bP/ -k*TyS\2?&Sr]jr'ac.wODՓ!Q϶tf=13ƞq\;_cۡxmZ`51Nqq_,U
R.`;f,5yXI,0K?axpHYCj*eOrKZRQM`CEפv blԮp義Bv1(^U(Pv`_*}߈yS9e|d.ߠTcBWץ8aSvŕG -w[Tr6S`Ф]]"SYs.]:1|`)`Z/<qʽ)g-ſ#`sLrKu8ulY糀m:'Cɮyʶg8? -Ȳ<z-DkOUQ68fg=;X-IC`&q>=Z - -MIOpNR|f^^慷
3P:DW:S|A86senIK;-9.'{] '
]9^gw]yi.ˬ8*waPL.|p$9:pٚ}n#S~pqDG;\:J^2ZV/O8A3JT>aqo+'a3#_-U@vk(5nIT"W\Fʼ2
-汴RpU
Գ!q*~[ʁRڃP\,3ץUQSm5P+PucjT\n$B㨚)2V2fLoŶ[ -iK({Jm5"=B^d∻5)9IkO^K痳ߨsUǂE>!9#(c;uIim
*M~nxieNf$bw -(j$ׇ 'ܻo - FLY\J)-Л&\J3#BZ5%0a>Icaa-'W25ǭ-3.X3815Nzu,ᱱ`CLN6'K)gKZCDfs`t_$}|ZtLҴC4d,P+(I-9[rbUyv/8 -}Fu(;UEࣽi1;P>ZSyz~( nѝɴXSqi0A'_;&K_]d;rHc̈>s&W?.znC{~Ri|e,o)H>B - WvJLjK,b,rka3Dvʠql֛M993,f,'ݮ9
Z}A;D2Rz1$3%R]11a{̋vo4&RcAbK̤!# -kU@ܺ8w|[`gcl'ͨ6h7J6jݡJ鱺{%2ǥZjqh $1(Õ~*$P6qK [kiAMÎ{h~ukqqΛe͋n}-Gg{rEGls3 -ssJ~9 B+8:}ھla]U>qFsB?(c0)!Y&aQz*"#GovjB٧NLDC=x*pV[f\qLˎLo?NIQ9U.%5qOSxg?3ّd2sQ)s̈́_PX#9214!wƯ="-_ފeR(ji|G -)NEURp;%= >r7H4]j^@@Nc07KNNKal$-6!
r7+H -9;jO{]}=;Q~IdV^4gJج^AKVB.taոC.dPex?U -Hv/~7U~DJ`CQܢ`PE?a&OGonbݨ㻪dQDeGa -y -ι*DlP,U~IF+xꌾc4mJ]dضRPo5ΝJ2K-f,-6f3;a~QyIhs !{r@{kAs -nX S~WC/la^`8FF Qێnbl7WǥU8z̠BY .ء-eERd#ׂ89QjT+mGvlKFj{4F l/
-l-UsT:HX"-WXޘ1>F``ƫ+-um1t6Ni乚FB17K3f1_L~f4(6 -|YO^(ڎºk.,I0
TG_hB+Pg0)|%.Y*VgsGؒ}n&flӡE> *[QAHTpعNTԴZ4)gAQ^VnCǾ۔= T\[^VNoA/p]MC5U!Rk,Wz:o ;ҩ#dDM!S+ lJbc9)(⟞iM|ϟ;zyɪqS'&PyT{!oSJ)$e*!AMq_iłt?dNưaǒwyPeK̘}2]@M{K#d1bҟy7eiG -lᤌ8";Y؆jQӻu,[Hh"=c}7d{fRq -7\W҉k"g\>qqo|N*:<%\eݭw[9fU~ybdb&(Pl11/Ц@ے8Uh8ztaScVs2lAޟ 2(vG]KKm{ng1H@#:lMS،T ,q0\6PIgL]Vqh"ȻvcG4[O^F -U3Qe#fԚ -̣`-g\DnאH_R1QF@qF%:0_} TTDQZ^{%|}!5m:ܑh -B`%]f^Byb=R#3Z O~],dؽB4A-ƑCs!N%D(5P0Q:r3-8
fmiPzd ݙFn5[^=|e$;<ەC}z,8ra
}Nx7.{Djyr -rj_Ju TUQѧ4BlBXMҍ~<9;g9;o'@ukc dZ2{x"-!mg$.گqX[ЦE$zђ*߾WF'0X`a-)vGr{*"mIdAPtIE0 -.i~P(\h[ lD9][ }`1C'!eUzY,$|wFT4DCióXu't&%X~FAiSWxd*XeٌW]^'OZ0Hj4,J,Po
mzy^[
qo&CgKu1p=ȪY\"[ijj6~j1{^K*'މ%BsяQ>]8-Rgai!6ũ!.GbZb)Ӹ2̟#:W0g/:;wҕJ2's 2?]B)\Fx,ZA8Rl,Z=cBֆs@9l IiV.Xo{${ >Ι- FqC>"L[4E/mDa]5FXiLá/v`Q֯YP)i0p/ӽ/; -:V7ʳ6=qQLс:;_Mt582+Aٍ|$5T¼ħdM9VY -@o&qFl!Z}FN.%*VU歘$_7ܑxCIxqkP.8Z$y<Z"C?W8YZpt
xH]> @(\]ڎ^S@!)ӫhI74lf24g3 )dzW&G@u!aUJوX)۠
Q@Gl;8`[&Uh:!08kxJ7wLu7ږL =|"ǃ{?6ٲan8} -X+soJʉ
s -&P;R'L:o1^şM3vHoDF{QIoF&\j|ZIQ*ߐ̦ -:~7!Us4:'с>?=?ўnG6C>AkK
esV- ;ԗjт7b+sufi0!y?3({7;5Z؈jB?g~˦^M -"-2NBP6ʕ7<AkStZ@s< -&<5 .hb8Np@3 CtئLrf^CǓOj.mjֵe68UVc6K !/fG'M>@H
%P-T}\:clqrBP˛^*U58+-.( -}%n:A" -pn6{0B #Ʊ佁o)kH_4.kJ3jdb,ʔ*=05Ib -1b(-H_&4 -<'=K)JV\QCR[qVC0Z~8r~ǁ%̄QVՠg~"}zvbR
6F,ehX%F -D]O!:ȇgM}74=~`]r>
Z6voո,V*\JcB^Z8||[R(͑tF&sg#SbԬvGAA%\
7FrL۟ŅRc";|Twrve -:)Yc-7bjdgȜG -_Z}H"&Q/8+9G -jhz:hTHT;v 4~VFQF -d:ܩmxseU%0Ybp=DFTZIƾewV,QgS{qzR -~^
H~|'t,ݘ"TQ;cl9WCC}Ole^csS`!Si/F)N<Vʳ!I$ڒŤRBH:hϘ{Bq]p57U6WawX>[_籐[0tjx:6w{?/)ɍ;" -7;ݛtR8P -|<#3\F;m8)eCZ}Y5~$b.Me{R:6,4|9De#5ա~
Sr0&w!iQsxAB U9.qWJ: qZ^2PL}SL<~=&М\ -ǯUY{k)@с-~n_%z+ؘ~L';sG#*gk̩pSvo.f{2LxHQ~wmO -V6dvae'8s9
9B:nJyG^f -ҿnŷ`ѬDƜ:c(Yx;gEӪ]bYFt<&;ETSvjS͵f#лx1V -¹wO=3:ZZ-_
\٦dK`N䴛#;Y!F*ʸ&Cz"7G#QON^[(T:dIx()Pܵ ScU?X8PD%x>{,HBb7 CISuI]ħ(>UJa.ƙ|am*.|#%D,yj;9I -fr}*,|ƐfLźRϑ;aN l1ei3W1$ͲӡZx:9hŘa'i<mcA(v=ax2:Bv!|Kvq0` P -h*X;X -MxgWman<臬klհq$p<KK#KpJV8?@gZ q,LS#oԙt[_9sxumW]n9Dtg˝({)±Go, eDBf#~,I5](GixbY{g}9#Cv$<pfZw9-4:
V2Gy0dOzY<EM% -hGد5!i4gt -ƫ] 5/6Rf.upOр<ד?Dhۼ^1.$E|@=zٺ2ԛ>Э=%%EQ#[x5Sk2&dV&A4yӧpTJT#~P U}٢ltvtK4KN1LQN7 -AdW~ǔ)J<o,k-U!ÎaJ!-*K0kz
^q:ӟёn^?P=}^U;
eUcU{H
.DCJh8w G6\>[K#}YN6fV꼁<c+<X~9z*ܓyx{Z7TXBp%Qe5((@]7#&z*z{f
c& ĭѨ-+ݛhÎI;k{T1c,QTܱɒ
Y3L.$d',ś]P|Pc_s ZX\'e'd6!!N5W${+]֞nְ/`y嫷brwwwgvVޱŠ"y/]Y>aEiIIɝ*Y!,V#Ig78 -_|Z_ -cl$m(1ɫV(tGdР0 q%kٸgP=6v -"=E7Z7G\2, R -& AH`-d@c!@?٤YGpe(RJA-خ2es
c7YDwYPl//eΓ F8{LNunV3^d}GAY%pPȅw |kZTCݪȣeHXz -d] i -=] C:H5Чq! :dd9Qe,уF/?nKg%{~-)MN}h^զ>ȂWE hd6oѭg=}.ؒr1Ƅ?ˍ|T$;-',o -Cp -dX8I$se -8;hWܖW<n[s{yA -QPQC4F.Fԡ n5kBR7<)پ -IFOAj8f -W v+iThe=`Do^S v\?:q*#/[5JS+v
/./]M -$tkNLz[c&ڈBd1B)FVIwaj܈5}̳=|pJ荢Tm5/(dv94R -(eampb&*gS/s*h]gZ0:r,>l>r{)7-<_WT6[@:\1Vzg ps`nM4K9E799m;`JP2lJtQs}V\?)7l{F -lZ:oh²xؠP[iRǔ9'2w(*U0@f2cI@Yj۠#>z3ʘ||gKyK s܋J`I>;6_RmZ<=cv]fv|O",7Jlcc#'8}$(Q<L\\D({S6UFI8R%BUOEB]lJfe8
!pPOP|kld'E:.Sy!+z!2V.r͚-o9H~Dq =xKUzؓt80'_6YB]myF -^Q`0$͍BL[ٺO2Fuqj$u̵eLTgi$u彙::d$<9Ԕt xP) A?_Wr|_{դz-8kcceovoCcC!08e\D+^ނ/_h</T$~cKNUEYpU3fsncИ(,- qYӼ(t}&7ʢJ`HgG&2ǻNj!+4ԉnaҖoᙕD>N@<,M(Q9#Ūhd<?ȋHU؊l@nOs=BSy &/6Wiy?*Yok=丳F=Rh@SgohNZfNӠé+AE1 -ewys~|Os%|xrT.u䂑NXR Jԯ1JzYE),bI5f#1*eTgT#Ur@%${k!| +/Length 23482 +/Filter /FlateDecode +>> +stream +xڴeTڲ5A;wwh!x |d{go0%f՚⣒*1ؙ '/ofP +0 +TQTWRa|;XKE$ +@[&0? ÔZh/'Kw_3Y&{
F2yI6o}[;_75XANN +b`
; + +L<߱>v&Y +#ش.$GȜֶݻu5`֪@x;qhύ%3@exE5vgO\exVDb'*P)nsdZOPk{ sB +74ft});G՜WL `J):|w'3%U/{<\z _U`;,{ٱٙ995c#jF +-( "&Nr[}whP"ſDp1<>ZI!|)4W
$gE (BE3%et}ur*uS1oweVsaI`n- +Un@i3;|%/Vŕ)1Iq-+źVH֪HIVu#/YКs]B^S|SdRXunQE%0ǡ_>th!8ncU^fdp5$ӧδk7 PjŌS_$c-zߩ:j^L.}hY.ɴ )Qj_~5x +U8nL\('UD)H}2u.UHxԪs;-W`w;rM@YBHD?.>
uLifnIўre-cr2&!$p\*jՔu~q]
7P& +O/#>E.|FƲn.6W &R}GdhL' C)״laX\E g@ #/ +҈ڧC_^qݨARd-5ቆ
-HC5ej]!TrsXǣ,W; _PKs/uxI<slTp*jo#ǻ:{k'P$Ms7)5) +@QtmV'Iy+ޚL2lh B2>]Ejd<%O +mr}
6O@FSUFk4]WI$=U=Ur
n?_K6vBYNws-`Sϓ1U1o:M APH}:AKan y_ eYWKPCi~jJ+eo +}@ ɱ>-#ܦ6$8u=8BJx"\OdamTGR)H2FvUFb$+˹tYC1BWב-ͨȉ.*آ9YEld{BSS腎D~j(wm./c{N=eb_65>9Iګp}2.~25usffcћHف
(""YHұQ㼼j0Z˧q4!xQ(~MD=bbF,z0MJ`D:**۰$?x@eFs0|ЎA: q˚\6kjUMp~t3,Z2 +y>nl%]ߝNXhWv?W˱q6T|*,R=ᖉ}\>',ȏS+xT,c4تv|CxU9j6F0}61cRI y +{4A͈Kج:;,0K@އL"'iz=WibMgrSg~fOa'(8%lN);3/0aCש<15"px?@4Um~J1 ok ^ϯ%Pѧal2ח߳sʋYH/ߛංAjmlemVR>CwYI&=6w>\09q:fſlۑ +f _ȝ|!M)؟N{NA~Ar=f_O7c{jy^W%?c(JQY ?($eRx[R]<%hs[x/ժ]\e^w.G; +PMb_ bidN⃫2{T'Vmť?K^x)ch21jYJf +&>QܖGbdB)ѨÓxGvf`!v $"ƇQr/ް%8j>ۖwtmsmbbm6zt|f+gR@Ue4MWtȄ</l,Ivm֍<k{IuiZtr1f9#Uo";Eͻdʨ`]m4qÔ9GXZFV4RƑ>4W't[/b!Hr)?I2<eԸ}H8%ěb 9fK;eq8^^vqXo&sO~kG '_ H坰ckMA$*/{%. 0YS؍OTLZ= +jq`'O_ըKfW b(N|z|> bc"}p!=!<Fe\V PTƼ=$kf#gˮ
zDw<pO/W ʃ~c"#Ym?dXM<)F:n˷FhylJ#yo*eųRPڑx+YtiK:9R
iÔmu2A7H=!#%`XnnA˝;ikSKm}Ʋ +Q,LM;PDzh'U/xFMr#)mp0]Z{+U\>w$!pg +iA_^7w|@0ƥ_ihJ)EQ鴕'额W[C y_W:y6XL>R/RT]hIM)W7k¼^sXNYpG"|EZsV&{,#B9Jӓ'h>Q&=W>^IAhG+#ci50_H9\w0]hN6KuLBE&dq87G{1ܱ tw7DRRa{bOb[M8lRS}t,~qsonr+1>˹\0q +"?ZN؛RķwvG/=*x +ǭjX[Mw)ܖV|/wHZ]aR=><~uSThѐq3uiF(o5Yc|㤷7vQi{ ɝ|/CFXr#DGFJqd,YfL_: Q5;ˁihٿ0M6,s21ԒCƫz_N l`rţ2eu?k_h|n8pIo YM&4`(m0@ˤg>KKȒсMVhM_ǽ+(2)y Ix/ +0qS)?)ܣ @b6t
?9&ḛ =?N$:hC<ذ`EJOXJjWX-ڦ/ +6 ͐<+E~уP(qeO:`zWiWʧG}V +ʹgX#6f7&|K6.l-;+v Xr.Ӎ+jWc*"43iȮm>;rn~V[M=dU*
ry2SMID$5OzpfC&ĵԗPtTC,[KR,42T<["Rï09=ueu-=_}E/!sdIr6喱5ErZt?hUpGNc-q)B*^jO425\{#v+?䇘6ٻ`*K9^{v9WVO:*4ﲝt'X S]T"r_=_X{,`u +VL2mb_hl`2^ԖIte1:Q'],yx+\dp[LvBAR-gK}ٸZ@Ԫ,|[Tls__3r3rEUpads|1QIXPHGYYY#@ +BRF*8dȣjS;Gqcߴ抸ͼYkX,Zb eSB^tW{Yab;ғn?NV0ty.dܔ#Y3*r\ȦC.ôߧH(RRA4oW3 ;`W5I Z|]oGBݿ^ &r;&S_rko$4*1s?k{m}Ǣ"Hl%%O2cvW.F|TS4C#V>*75x!⇱%-qvVO +aNa[[dR~鞘){Z7cLb/jkX(PMzDg2_ +E\!`[;3UnM:PJҊQTzUzi6oe9pݷv
UqanQ݉B=жŅIbP5Ud_:sx"<ʯisNxz]k@XWxBY(]li#nu1 +ΟQNSE! V]je8s'rw%=u{J4J(\_)4
Z&|2{Rҩ܅˳G;"nOxL$/Mel+t`굕/&@l n'@p}8+n$g^X<KS9nr`:ܴu9ӫ^lE>s*lh1d}NaNP":ۚXIԩf<b툂15f4, + +d^]h؝jq[љvse9Ggg%$+!%\C")7Rʙ7m
#a[=F؛㺢 ƋH7>k)/րJK15tFtHJ<(.jgy_u/c֣!X<Axl-]mAq5̨5 )ce&,lH!U Զ19)/Xe"N}PA7)*7ξq +Sω֟rV++-uhSI>cN4UML\T۔>=^W?O +v~b!Yv8u%![Y>&yɨK%PN+VVCWTd93(&#Ş(r>6:#-Yۡz_~IR]i +N29DVE}]xE0ï5\sb1৳ODAS?FH>c?~t/өP!.*83ReQE`TAm;Ыi[߰Щ0V4ش$N\k F@¸x?5tNhXnۚ|:ByOL,%\W={R
`1YuNu1pFɻa e(o}\,7dĵOv<E=
58-Ob;Ge:Ho"SZ)^k5+DFM,LV{4jLD)p;%oG~3h~?Ze%GE<.PYb
,nVx/+i'YI nbcqk8SfL!kP@ 7T̠gE]\[`^F2p4=[{KB螺a
[TÉ,]%nEU+<Dd^Y=! /ψzrbǠ@,M?XYyO +H-XiХoxB믱9<Ҋ+܀g:31̂&&_JJC=N7)!G-n
QM<eppPũ4IZӑr|NgX<@w#$hmƴªMu@$+Jsn?4Qf'YMS0$w +K +H`g*7Y+!ɻK$4]x*&4Y1?8ߩ,CDi-ylNED&Yp6 +|n<kB[Zo9U֍2vӜW^'h792Q|UPƫ}*ﯡsA
n'7`zdB|#cxpܤ\wJD
z>I*tgLƩ`,QaOnZ[_Qn(P=ܨ煄蓢/Av\դG<qD(8W4HQE:2I$}8ff~<igbdEkؼ(FW\/M;^9(J~x%1s*6=NToƨ^akF6H~tMI7X415?Ng-AA)'Yu"tBF* 1OyPpڏe^1gd<.1kK{D|8}:'Aωr@o8 +\4̓}<Ω+zĬ~\cmuʼ/e] +<r@h+M֬87KoymKv]$J}Ul&Y꧓խ#)=$Fi61;p1DZ|IOLx9]u0I]7Zil +^"K͘ZGމ0OEg|$%lƣQ=3 +Fm<R <f
w/HH+ٝRtlPn;>Mĸ狠vbkà\)<ԫlCt<]zSb=:}&V{_Z'A,Zex+lțj(#p5i|c;)rhSJў[%IcUpEQjWVnJ/uC<؎$L2gYաU=&^@ޫS~'JtTvHYuJ?sy*,u.j +W $<ڷZzU{]w)ۀZktI!fW2LOhŚ{t4nYvI?vw>h=|3PB/u3@B;$iєO ;dVd"|2tۛڋ
6Z1W!IV?+|[U嬶
Z+'oi@6oL4_
';-QtlE\ݏgdqK`cm
hݔjKeūd} F]CZh +;']'>H'Mr/ Lih;Wδ +Ik'-Ğщ(ǁC%> +rSAC6%њu^
2~=98 +g$t!ӤPN"ovst!}957e܉(Ţr"?:oTtbʿ.ΓpEG +@<c|p#-d;hr
(~fGASN/d6B|-qSi0
<NĎ$ +w8q7$aucF3~wf6=ьM:>h7o]( +%k^4<eU({&z +2{`6CJc*8bL?>Cy[xj&}&ykq%D,J$w` |'/g]/ߠg\k~5YwM}ůtvM4 +w7xf^H$RV _u;B-A?H ep,wj)d +7D,ZJOx}d +M˦!Sc+;쓥jx{vDEo01ʸl*??6&oz5D5ԏvXdz#twop(6(ͥ5YF| TD.=s.JdMI"ɐ5TƇe'џC^1'l,7Ց9iq~&liQxVl)6i<η +ZF[&ZTy %8v{]&3ϕs>TTϐ7)N)PJ=©fg11vJ;4ͭՐ/6
a㹫& 9r7}~ulԍMɿlvtϴ+CDK)wx\xѺ*Fql@ ǹ3ej4r 4M2|]Qx'1q'"A+QELbd7DAdůAՕd> +odRS]Rh:1&6U
g]wf=/irJlBN`!19Ff]2|]9&掕 1UYϱ3xB3tU)=B6`5 +uAlU:-.q:ha9tdB$Xͽ̑ugQ29!Lv]gx3z".u+:6@OW-D8goyh'P\|$-6 +$,mFf#ʚJ'mf~Rxӗ/E/lbi9GccxEպw +Yq~L +'ؐ3eǯFVf/ٸ]
Sg9&5|k8(ŝg>D6GfĿD )=~8^3;RnޱmXۮߍST#~cD +/W}:a6zA 86'RG!YtZ֯5ח*Bw|^ԙ,yl^M +֏5ԛRQqbVa?(F鑾K})(S`3Kjy7Oe a!o*pJd'n +:#GSjYsFl`|'"AVM^FT\OIaTdIݮnv8ߌ'9>=6mќ7=OG I%S!$"VId5mtkKe|K}#X]K`WB'OHǭw4_?PmW>dܡ[1߮4֙FQi)9G%iU(\Zϣ xd+RAzp".[SOmOY,WqOwH=>\[+xߎmN4̦q{K`~&f';:%2m%~Zۍ+,V*'?l~nV/!*fI97ǰ9rwX%GVjssQҍ0@VuR81M9&hnI.} 9K"#%u kdn0QwB9)xש"WXQj|am1e'>(cYPGR|ڛ<CjFLΗ7 TX;Jӕ6cl%q~Ne0KL/;Nǹ@N5AƿLi1p5LAvֿ2|(6wI9g`Ա#:Vm<S`V!' !&/B7zV$u+:$Sk@W8?յP~[ď,EF:1$EwW"8ec%`2ߓf+PezW'(o颽d[4G>RrSޗ}9:N3Χ5
?'m]O/SϹ~ѦS2l$oC})54(-2^w;?>mwt)g7~ +(2
dǒWoVG+6L0QB/N {*I?SIϥpQU1'me ӊ=8P%_:9H%/*3%TKw<Quyw`SΝus9& +>T=xIA#) +>з釃tSU\~|Ik-3tα뒊|)8h0.L0I@iQד?)y%RSy3e~R +6.n)G5H¹x#0@6څHwr`"+[)=fZcf)@}S"g[&?\0ma GbYV.ݒj'?:M=}1Wعy^BS0Q<p#mKa.>yhzex131Z<bkJS0{W)Q潤v0o쎨n=#_
5d +us}R +W? +vQWWPoc߁7%LQx6PF]qTh4{ดJÁUk2xH·CX#W2ml}Բ$R}gr\qī9^J$ePX®]ƨ9pE{0mVw/vЦ +Sdo:@( + +~@E +,rR$I9Vii~Wx^
oK H=IT +G*DjJ1 _\nUM)|<+ Hk\l#JK8kHz}(9eo<UWmByye@亍~<_=(0ٕSJ"{[^-_D&wjT +I +KDX\{lz
+2Glò`+oK|[jṾI*WvN4?e?u wg'rrV0 +
fre6sß/K.-pCS.A]t0(KIw+SZϓ4Z6PMLSf>coyiNpKYl2v< +[,ؒVL?`b9ʅkS0HZ(:B(∓}fFJ{$bMEi:h^iƴdBq'<aE/ͯB)i6<#?BHf3HTd|q1HT +ޱ044gvyMKi@!t͞x~ךvSIvy︗E;}B +QH73dzԀVS便2j('_}bGJr@#j+`g,Zׁ8AZ:b.DP(7٩Y#eoke)_ +w.ᛱG;ŘOTn£ɛS>FbU5l$4:8vre
QBOyr̢Wu#U~e
A+3i3npaCX\PEcmlsZnvAam>hk7icMOztjV܃Eщ&˛xI3Vsw1s?LC`f'%sGҶ"p&{rs$4xgIdоZ +CqcDwVGk㹧|s"}÷n 12WOnXzt6@];nMW=cfgg/ BjqQ*yvwpĢݚأ[iBS'm+Jԝ:K|#c9dtXykic"#e5FP=Nx3jh[njI90 %6lf*6nZ`DPܨC0q_S<I&E]IA"͌Ɗu,zՁafUaHZ*yX4kĸw]P?.*wL_kC4*tYeܑ=vs߯fJOࣧPu!%>[B:hB_p
j"Ca + +0 USx$UUrp|w袉1HF5PËh 5r6VVeZ<|lz >"dYz"gD))B7(m4P W/G'-[w&#[qnB>?X:,Ytڮ%öN#$SiFLV]14c< +0jXz<Y;̗C$(llZm6ϤPRH{ʖL%̖YYy~,=@\;/|nmaR_6̺DW5Y7 0~OB l_;/..1+
^.A]c2i?kL-͎1¿ć<&VvFRc22| +Dgu}m-Mz(3 +4hƔ́=LV
y@^j8+4 +8@dVkFcN^<ڻ%yZ4 ہP
jTu Q}Go0\9Me/7\-t~}iG㊾bgg#9; +2-|W>JI贬6* +,G_Mtx2~&ȗv|jM>Gb~H$N{_?_1 [[U8:h2+ƹN0i'C4D}'c2HwbzqaҳU*;e$&G.`k\cٴ%#tg}3r,G @W7 [n?> ~2l01o]yR\IA9bRiTKc*=(&6!4O`aݢn߁W<U̬_J:<D7 b68͕~g[X3{ b|DU%1c8GO48=i?5.Ԭ?oEv~UcHb")/5}SbCfOa]4+
iEq=R,Elto QybL1X}Q.z_~VUE6~ud endstream endobj -947 0 obj +1133 0 obj << /Type /FontDescriptor -/FontName /VZTNFI+LMMono8-Regular +/FontName /ODQQOC+LMMono8-Regular /Flags 4 /FontBBox [-456 -320 743 1014] /Ascent 601 @@ -8302,165 +9731,180 @@ endobj /ItalicAngle 0 /StemV 76 /XHeight 431 -/CharSet (/a/c/d/e/f/i/k/l/n/p/period/r/t/three) -/FontFile 946 0 R +/CharSet (/a/b/backslash/c/d/e/eight/equal/f/five/g/h/hyphen/i/k/l/m/n/p/period/r/s/t/three/u/v/w/y/zero) +/FontFile 1132 0 R >> endobj -948 0 obj +1134 0 obj << -/Length1 2464 -/Length2 24361 +/Length1 2514 +/Length2 24530 /Length3 0 -/Length 25824 -/Filter /FlateDecode ->> -stream -xڴeTK -w'@]{pwoww A܃휙oΙ]fUMI(b2J]YX - HI)4vً -1KP90;@{+{ -8Ddea';#LE -2jrgٱgrpO>q9(r -̓ɓnR[ٛՁY(#og -o - 8_7c;+[:&Rج%<fJV.q/1xE-lKg'قG|X9 -P}##ZT7;ǟPݯ? -pGeazu -Դ{[/*g"
coW5
Wh$ݾf]lhfK_+3m)PR84+w4m!,
RߍEvXlDW(,P8.ӤI6$+E -u}c(>taWQFYY'5ѹ?}yWϴx?6rq\|ӧe3wKŸ -Xگ<zeFkKu'M.9]c0mc5tNmRܬ3bPp<+6tL'dn][ʻb,O>kFD&}ksxYmAS74DWtaixޅΉRM}4zBQU9XĬ b< -mC n]чN -'Z5lqX;Z9<^G+m
t'uKb>U[d7^ޘgaHɈ^'uˮ6Y8ֽ^Dtg"R~
4zEoKJ9S]-0tGp~ZhiEőkZw<7+#1Hw2A:un^0dcqd2<Èbnp[z`5kbh{UIuh6G臨U!ܥDks#4ٔ]YaYLGca[tB"W9~zƅ$0?4U -& -`6<&K@JÛqnF"cL{"']~\;[HU;[ȇ1LE#LJ5.SY˽}h9g8'l54j_XۗAuZv0DӃ;=X /]Vkݹ8{Aհy%t;(lRu5'hgSE4nO,|vb~ƵUvNe}IWZ%28rQUf$Q?G[Td>Qc _
_HfIQGI0nٻup
~=,#C,ϳHkzV&|E͟kA_Zqɜ¬ pWJu](
kLpKG,XҌXG.L}1ޢEvgy;=b7IC\OC"yS@!6=wa -pF,Fqcwy=Sհ#V6kHKB~"U
a[!/!IZ -AlѸV&*VlMV+?r4GT템ژ90%vzGUOOh[##6GH6ӝvv*5ANe>(\)|n],<rmo̩ZBl[Q
u?rX9 W$m:P%O,}qǴu(q S홱 -Q}^8]<tvS8)mqU\;m#>thmP`0[WςL{&$"" &t+FEt'z m Mb}tX2Q-_b)PW
OFGavPq(]T7`a`GuBPIxGMGtRp%NE|5#&m|| m@<u:x%,=ё$#R/i<խs(3Ysǡ7nn8GKiJ֊c9jO -M´uWt?D}B|wR2#g)e7Гdf9M1s; -+{`P*ZA57a\A}Z A1q`9.;6nɅiߙyz.e֬>s*#Zn2#ǏkN85:1ڀSE_[7C;j<sƥN(RGpqٲGX0v>OMŹ^vC Y٦ -$ܷ@is0CBi*L7LsJ[u9fi %'^HV#(Q~b7,,'3WHF}j*0N~G.n{Iɧ9A
l=L<Lc╊غPz-bQ2r ~]h%OkR!W0C5ch!@ -~b϶z@=Be4V%Kypo ctLV -N벽8}$:uY:
NnќC*w3Ր,S-oENLk7Z5_Y8jsyw=wqN2 i\wx,ka&v2!;eL8&+ox6>"'ފqu5@ -*11?|M=rR2 -:fZ5|h-%bR0:*v<,|Dş.*,-h@9No0!Nejz}ksx -z?KB{=~..wBWB"4HhPQƅhՆXMW_Z
z~D"j^砣ti/oePߣWryF5 #^n
?l%ZjB P]ל"12H)bJvbVG -0p݄'f+9_8:'|1(({WzreFφSVN5X;-ʾ+v~DForЭ4f<'R07Xkoc$*x"X|F҈:h3.d E%/(XD8#bNK%D8Ȗ]do,$=ץy5y<(_<H$
Q$Mqbo/s&}YiqĴdD\Ͱ3,zl -bll!Fr&Hg:=U07Mw0WveՒ]=E5 -'Û(y^9{{큧%FRvfT|!+DK9zۏׂѥWJ" -ov'+%͡gIf=I+0x۩uc>I3Ű욡kqHDE[2Y8WCKL".H ȸ[ك}
^[u$2PW<Ҷ^r"ĥ+)uBГ60|£a9joe<.VD.L~DJ,QE㒣B<b\d,=!sڜ5zֱeKʩ0뗇׀,.h} «PD(:(9yJip#}q+ăAZ -n<FG2N[k<31#|VëHCC%'5(zUkN/2i`7I=-?^ҕ*RoθD8p#j4k'%?=i~ʩ#NQm~E1I!Ѥ1ʪyx\{y82c bU&SD -2DYVWXZ$4xm(T袾ywAz%fr#kYTe=j(v%61K -GU)2snm dF0`As=UTsw&7ҐKu
3ZDh>IH+ 06}Z3Z%0ssA|KLDZ6nYwlrl<7~$G#&(eD^@K7q>4;CH cg|0'}IG94Q/3vE>wWbV3v/\NYmFݰ4MFIA<õȕDFjd
_x -+EX%(ʯYG
]Fm!}f詅i-N -3RO1ۛKS%CkCÞs(R*R:)"GM؆Ret& ږۏet*~\N5 l#&LPcpxðYaA(q"7zJ??M#dOf_Ss&Ɂ|07D;sA[+O58>WnM%baKa2GS+RŐ+RҽR)Q59Ȼirzɔ49K*#ObDvhn/۱4]CB9xAdղ'z[q2rڷtT=vɎhDYt[Bt[W/9r#dm?j.gۻah}Va2>bQ^%Uv)똘Sn1r#1 ȭ膈kIN1,\/6ǔx]>-([WLj7 -..P\Xg,}TV"&Ph䔋qM;vbSyDg:P2bV NdL#id,V3Jʨ7gm2;jcbr[i!\mDڏtg+e˫(PVTb_PAzo%j1䕉>SM:SLd!YT_V]Q*@!QM,&#)G)1hxռzY.<- - - -Yg!#f⩝XN -ca\)VN,pUJ] 72
C9UNVkxB9*C]Zm`^F㷫yqY
bkyv -ctQQFeB"vJSJ.vAtDY0oUr鰴\Kc<4`1)aIZi,B"l'CŲuAIZl9f
MTiwO/.ZwgS:Ĝ+{X'0ߛ#)LؤVjse)J'P6Ge)p M64]yn60qr:^CgGpWcw<;Wi~T*:vEǏ[]|Qwc0Xe*q#h<JxCs)]K -2mhڻqnA<n+E-?(+Uk&7DOп>AO}d;rɜQP>~'P|Oy",r{ƹ@/2 7emuwS^(gwk_}H&[Sh.#ybw9\jn<U4aGi$2Z/B4?MDڽӎ4zLrPs'y,9
v}\-M) qX")6{ii=ͣT^ -Bcb6.K[Tԁzx<(1bK3ŃqVNls}mnu?E@D!Yy|0H蕵 +|ѐn5<+\oRG Muz{'84R(.y1ߺkTzb%"*\G -alW&O&
4{sĢrnez}' jZ{u~kـ=7݅ dr(Q}Q#>~ji-2O3|G) -/[nZp|w*yj# 87AL$GL+@+*z:MKzhbO},e35ZT`I\\.zkuN%ob7/p7*ژ
pE_Tu.@(&<A̚-xljC0kl;*
yҰ 9]*ťJs_5|$l.0,ӪC8fiy]CH>)DaNBK3Y,q~g'Oդ0c?e5n)8Tic4 :sކfX3ʑ}U~{U_=ֿtvbUE?U1>*jP"uNI D;?3ǀUyO4#*@\#aNm\n_fUl\Л.N<1K -/[* ->/"7ٔ-1>~#֔]k0W!!˾/.Gocfk~"I -0xxkņM*VSRk:a>]V9H{JRQy<%1U5$)KR{kqOoBˋDFYMˇ(eVx5 ؞e-<b'ٸ,>[ǘ(d -T&L)ѕo_>}⡀yǓ6RYM>.r_ͶWY!7.,K_26Vj3 R am - "62Ǣ\`us}Gpom̰k>۰rxԓݹnƇt
]3В{Zя G[$8~3FXMFmߗoߒ:8/'fm VՓ^УIwQ -8@s^bh|վ^ӫ{~%wf& u|{J߱y%>8%(Fƒ0%x$4JOD\,1;>!7+6w*1V.ku|%qÍ٥ -xm^rHh:MTfu߈թ`rI;Jo~Ԏ(B|Yq\[v>brGG]30UpY@ň^ʏ(P\ |pR=K7ronCri!8cH .BKcax_V8x&w iD
?gd.COx/TDwkp女lɭa SYسp,zuuRQKV?njDDH<ת(CEx4AtpWGMѡ4-Sɀ~ч#A8<#rjM"Ytz\rl҄Znk){{LlɂzO?5(pBNӾ;uvڈ`
yUJӸ>zO_<,h?CkĄ -ݨk `uy,W-l"R͢j7cFW -^OqZ;D,iQkrDlp(ݓJT1cL)anr8 -YR[{HdSF(z:"rRDpOb8>̭hR$֞R:/呖lVU^͏ΘaҖؒ}dkI'7S0n7r;K9EN"k%~xb@5}lu{8 !599bh$=xuHSCSl
xBÏl~pq:t -wPkkjw\NŅ*nXq5@, J4a`
M(%#MH'T=i:[,$SiS3[ِTH.@m
ˇ<d:&`w(q82h#ɕfH_ 0ÆmBڎWxGHED}l&4enMxt|)5BE^gJܭګ_}Fvylc<{Y3P?++kVHD; KQC0ig -KKZOÃ}^fԧ|ŃFm#Y7$L -ԄD0Ql#MMq
jOpİ=v!8&|)Q|#vH->oy(@Bi73}xG;#+5#;2Szկ
3cX/gTzq+OE @qElSIKw -1(bDuApzsܾσE hSc1tBi5>KZrS5VbF)Sm~!wR#k#3S`Hez6ߏ d7QYAJ6&:ǿkvח`Ce -=SBUUY_8XTf2Bsw c| -I$+d9ϿbW: ~jjy_06HKߔIͱ9XjKL:eXJc?/P9^FJ?30FS|ԧS -[✂2f&m_zkveܠpfd|8
:cͯB ĐK4Z6wюmsZPhlضmLLl۶m۶5vlLl9:]jUa0+pPU`DL;IM~1! `| -w4DrrQ?IK|r'%TM -}T2p+DZ=31KY2˾okݛ7
ہC -YhSz<쎓U7lz5T2g͓%$0MNQZCED/A P zTenR̗D^7[=h?)C IwM/(Ās -}z{3(+0"?*!&d11Ƞۧ#0CA 3,=ܜoh#8!9nOgPr"7??B~y[q9|ilcD51e&lm?ەeI -pm9qjwJϊA QvR"%ͽ^r-K p.D3fNy\DmŘOKF3Ii"CʋΠ -ill+_xT!{~Ş!+.3nlڮI04(
yo*l_ynʛ7cٕd(G㗴D+7Ɋ)6"Ѧ?tB3$*estu3rD^5F9ꧽ)m2][
U3$ڭ=SN-/L`ir0/3ԑ?|txTmX{ׇ\?ͭ-`B~G7Ѷj;m
#F!iQŢȦg}>aѱm7YnR]:%AI֘:ٹie81JW5Cs]nӅFx#Bf\j= -Ft/H}Eu.U"vfSܕI6z$z9frDښz(2 -N+=˱vL=WIiqG]0-f1ùjrpКڇC|zDIAi>4~x"UcbBgLّPyLve`!,W( G$T\l&4b:eh"
$qidP~e,LK -VIs"'P^=DGz4s/*+ve=7 -_x-XY<f<sP,F}5ۺV7 jB^)VPI~&N4;BUkt84C oQ -bWgf{3&~7xи*k}vZ.{ގ:,(,ZϺܓQa_`ҽUjOꓭ2 Ac:9&VrV~X|[~L^))~}߸1`0HŻh-/\%`CeLZ)ěu_X]ga -ޠ
*FWz;W)=x+|N*X.ؤH8f)foI3ZڈAGxGI WHUBTg@z\"jEҸHޚh*<#.7lٿ!m?Sdck8?ғnⱙ*`:ۋ!<;adT<=_pѣ\L#4>UE͏hX#J:tzMcPƂf|(QVL'm0$' _Zn6@>krRW~O3T+7%"Ctȁ -8Uv|8Kiu>R 2;.
3H!"O/7 CvPь |5
0O_>5PbG)2@s+֡[f`dt%".1:T j,FyoF^ /V!hϝa؆s7f9r*s!7ŧax(pDA}}Y.^喨Ye}HQ={k@3);X)g5gTeHhf2cAz -9 wƋ YƺLSPʎ +/Length 26000 +/Filter /FlateDecode +>> +stream +xڴeTض5w)ݥ=Cp
\C !Hp*}wb\s-c%:)H˨t +6,@qG'okK+9g-:zZ + +s/`0jHK){^t0s4vqr..@oDqr|YlkJ +`V#q +5ύ +UK"u{B
vjl +<Wx%slD:`Eu@g;@`$6!R.]g{9zEЖYW]Kάsl]9%)sj0)F5xe70=h *3>6J(]cܲQkZX/ +[hд_m|;}9Jy8-T
\uX~qq˫#7E8
n
+29y6:ǘ^z廁hw qCjll}E4o봶y۷Y]|XܵqF6/A.f9e̕;EG#Nw~C~GWnQm ߺ ƗujeeV 73i݉.,ӷ_>\,E&I7}1LóBPDDʶ[E@E{)ށ@ +_eÏg&98qwA+8NETH'h%>E-3>Be35s%jB:ȶv2 j7<>?0!$IL-) +r<?&ȑqaoCj_ՆC4{@wޕx +FLEһQu|kFj
8(!vJdd2cL>@*;P1떑j6HUEOKR52؆S2Yڅq68~;=хNdU3^wh}-9E&LE'L?`+qSV#w8,voaXxD?%`x1/-TeVYuW^?K,?\XX
vBv{mXfILWYfQMJI&&q}A S0tApZ- Wm@ތT^6ǛV@Ԥ
;?k'Vƙia~:^a3#Y,e[xLaɫ$V$;nE)Z4.{4SG.-yh^`Cԯ,棉E,:7d
%_w5aM^=؟+h)Yltidiu###:iïyiLKS31ea9FxE~:=
}fӾZpoU+ՓB)J_qa^ndG1G~/eɉp?B%2.V0-0ܾz33L, @}琽~Ty;NNQ^YB1@t oܐP
jso^*\߭h4F_T{Kb8,'Ġ!d~O9IsR[cpgscsuj4~6G)ۢJ!o:ӧYW8ڂg +y ޙۚK&m$ay>* !ݠ/U]zbˇIܭYY&7ρ8.FJC;Ao4c@fy^.F*[q|b,Y+&Y(wyLnQ!VX? ZF_r}J**%CM +5"c%Ɲ@JA|.j}3 +]m.$\+#T)"lY1/K3iο6Z;(!iM'LfM>q"w~82yrTRBjʡx-.k%^!z|`@f@pύx4~N.yZ&YvP +|7Dkzt\ch2EtI(jxSGC>dM5Dp_ + ՛4Ww;l[2}3o@6Z +wJ[Fd2q>*R< +h"iϕpEΘwiKΦ*D0Lf){6&bY81K&f1ˋmk
CA|l,,r>DIY<sFHL>co1V6kQ4WV<M:8A80Tl+EΰKtcpT_2%Q^.)k
&iQL*]`pSt[
]I} +3d;j9qr`?SK4Ap* +*66MЍK^c/MF0z'B:+uw!~=<(_zpӷƃ?Da"@~p\>v9'e,2DR{SpbkDȦCcT̛SU|̊4!$hS%&1>.rݙ 3aQōvcYʉ}]3ØLlUMGTɹ[ +w*9$ܺ_@%k}oe8~ٙK_`Y햙Vx[`t\_JeCtT'<N
P'Pfd1eXQZot?-C)5c0?u!|G֭E%{FujSvn)_3Gp12"l"DNȒ[ +]7Y. +y˭Z_8{sg*J ̈#45߷Tq§9 [zmr` w;~MK}BjxB +jDӧ'> &1vMHފ4SD>dﮘ}rTz+ +zX{dE+~)-݆ yMϡQ?8~1e5;oP157vA +$b`z)*{Nk $1ӛلi/5~cuPwiX[3/ES} +^]#KN>x;>2 +.<}gޫj6 +OayqUM + +IJ=]{k 9sLC,x:FB'3#}+YsZ ai4};Q|Lf +zcV +4詃)-|Y&D:MܡJ+ªR_W|Emf?f.#pK:E֩^c ugxюcov_:Cv}ʀ^M fZ}`@Kkh7b?g/(ZFAJ=,IrBEMs>IXRɈ6<,a>sbXo*6l%=
Ƞt!a2Ι~ʐx)>7֧%M$ q=}DSVB=SuϰR9bpy4}F;s,RGc)VPO~WNs{)[84yz+OjiteBiϥBv2l-+ _υ(ԣ*Q:il" +t}E^{f +N`vը7j್E8Csaj_(]+M3BW-VEtFN +9O|Ib +xRU3Ůe_.%DYx=F"H5:alڙFwxA.f1Jv3/j$Y9ߙ9bw)Ks嬞Jh3t#c+@Up!|CWW&wG;zl:.\v$ܼ9ki׳]3z[|OskZX~"v{%ßDQGϋ[)&z=CgydإmI/ԏ:$ %8`o{eQTe-R"e5`َp߇by.Ѧ7rjljv+`SPƕhzڱ ,Eح4uGA ,} h)Y3J=iͼl=_n/DBڿ&~֫\LjFrĒRU;tVm.u8UIY/?UVtbH|'pc!u'u&tUG7ȆD5PR;>F̹Jlq앵ėبyCMxpd=vlQ4HjNm:K&,AǮ"+*w-_ΐ0+-_B:a0?<xcc#|-&Pn?'2Y83u,~^)1>'Nda$(2Noi5+x4w5=4uOZ
ت)6xCeax,xosJoICsl$0V#hG/}Hm/||Xz\zl9^eȄy^aN8]b_Fӄ7lt5 D +Mr&jLݥ}(r?ؖ|Cwƒ!ݺK/}+h;3G3aH\NdAWb
-cORCBTn ~ػp|(S_K1ڰ1m<?cO +0d8B@.zgܔSټ5oDY>lڏdf `Ĺڛ@oJ(D~}kl89~_ԜjS+1g12s ;y +us&#'|X
YE`"4jƝ>R-~IFG%O]ה; +_,ׂ&"=OKm=vT>)\0|q>>͇)"+@^2b@_4ej^X2ީvQ|OR_w GXkjhp6;|#~c{0 +7G*e59B]3$ڛLɬy%K\E-Qjf[@U8#!#ǪEnZmƆ$]eoc"hꂵleu:݊a;g'm(Xw`dff0mw2G*[SÍCpH\ٕŭӸ%
>+簝QQQ :a3$bШAPˏksk`ALԢ,.>B>C;SAv.*x9aRhиIiG\9YW/1hsmZ?8=ɧZ/k9Vq77FBB@p#8. +I؟OPUJE<:f\)BDϭ*_Cgxkgqoo6eVOhDv=6$2VПQ|ؽ@dZ':h%L3_%paUe02SE+b.AjХ9Zqq}/$Hl+h5-@G r{riAz.94T9L]M1Nkߜ?6
SB4NG;yf0$J7 ^K\9GrH`[b~ه/$
RW\DiˬdT{y_>bULüomurDs 3?3To
\=>ǒZ&L6At*zzvA|lv|g7l0SMh/Trw-j̩}?7¿giYb 5´]}ޒ#Zʪw~zK>=];XWGާD-!?&M +BMٕcK7[tnhyA[.OS }K&2VR"(ȩ^TZٟ.J_jV
4k) +%=(/?ߐeY(DIfKԇHe +riO_654\M_}[*\`滴gx뗘TћŢn E
9yS)s~l۸s'сGJN"]]'djۖz%clVvMOJ;G8,eJm3BER+Kہ=99iBZuWΆU>|oA"'#I[j&e0MAw$V'X+}[0cj%eQnW[W-־P5Isu**uKSg\|ђr)@%*Xr3~;!'$@J6+Mdw)%t5"Eel+
:ym- +}3e3>} +
oUo6G1욞Sn?>7r$bpl[$a_43b%*^O&ao6T>(pOΟkBz+Mko\3]4jjצ?Q1LSiyt͕cD%KplW㚯2q@y+aŁy5/DJ4w1! !_|-MOy0Fq[vr}pF!U.sm6l-c^Y͎;!-A/>~pv{iyqsj5mϑ(Zw(OYBbm]S%nǽE,C{0@ +s|TK;I|\AIǜ3ԔVnUѳMߣ"duπh\Ykk[CkIPů7e-uC7+mś5!0NMwL)!ฎn*dl=vegK{?EU<}N9];q/ cfH9Nt$r}t(V4c\2!ґK|-I,)\k\w1.y>%uR b|c:4ÅBy*& +{'݄V{tWPώPX2+A_YDUGH8QMGәpa
\8\mV?`}dro& >Qv:QrL@2,?KCEux|gӰЗ/o>Sj4t ̊<0摌'!~ɬ%6ޅJ̙-s!L i+mU[gV0R+h/%MtS/Q"!qͅW``8ccI +T۔,%DX\M7<8Uy +6# + N/!3r&*F֏آn,-===_h.'`";e97w(#@ts9.4c=l@wݏClB~I9_+DULΩFL/ +";TzѮ)h(w_ZK߭\-v fݰ0AxWh&S=$}o6zz$a0{Nf|w%RٔɃO{Fr,'~8k0|F~Pn!m=mm3^J/zN$B(YEeĒJ^3DD ro
2v6曥PG$Ds7-)Pa`oq[̤-@礊Ͷ$6pPL{nw +`~sO +l=9ݖ>=ƪw%\fYyHt5uiTwgzrHtjfzi"8 [i*h$qRl>NMcg7}~.7
ylioOD1aZS6[> emTqNKLLt}?J^b|؈4!ڲ̍ÞhScVVLCaj5;)yzAPS H~a/nWv|1oG"^ɟ4|'"Xܔ1̄ :L\sldPT +N~;x?sdU="dR%b.GȘgۀJ&E>ާak7J/}mRT>]6VlK=V!3(L6sr;Įз +0xh2r!NF9;(M=hLo+XED?T@(d c%rXƢ +Q5n7N/N<X*92,t28Pljױ~{~ +x{oЬSqĻ
SPl_ L"Y}-S߬<56@yY x7V0*L=ȟl4kwJ3d%v]PƜ?B`%zaN&}g hhWI?PNXy=9mZ"V*.Wx,s:y.tĝOȅvu*Ԓ04SB,+AEkq/&JF<q(YsGf"wsfTc5~9r^iN@eN._"]X][0ރJ7'"3!du'ƶ0Vm:O?T +b(Fﻱ|+ +si1R>OT|PYdB70gl3㪌{(o, Oܒ' +rCorLrXSjֳUq,=9ŸnΩF\`)#*!Ox=\,!N-Raob;fc7eoy0E+#x0Sq0l}̻(Y`pHe,q%j"YdEje=^'|t|ej~dKh쑛$fQUw] Oqkз1x8!8m +DۯF.B]N36ϟF}CPOGZfo:\?,ΦP9^3(8>Ni(5RW{](V)
sƗZ e:'Z -\R2=}k2q0 +B5ޜInv 8o#Fo'|x!>q ߌp6L/&'3qIԿZ7.)k헡V"ۋA WqfOXY.ah!#-Rg4R/+{
,DaO>2{_G(06!/<5*]Ga/D>Iew%FPa曋^)kZXq\Bw\Hj;sfcY^GF]ʒ6rrNgNy>D}i.^<31KH4pժ.QQFGp=r6%3ҽM{D|˷r+ a-vO%[ӏ6s(^|Too}=tcΙ>>иH%a?~ǬPCPܨe1ѯ>#&BS:4k0!+݆مHL?J#ǨOC94\e}߱bb>KCn!șQ{j95GH",P;նn "oeT4i7M3)/ħWO=KRac\p3:Z%f~Aن굼6pu.ІFItU)Am,p{.T^Cϑ2<p\7u~֒V bI]$5Qhvxa3f'
yUU0G\P>+y(|oz_o"{Ä*I-fUUv,q6JNRrsa*E]wK4ϱSYPnK=} [v +yFu%т0cukq;'Ij-|2X˭ <ؔ)UM"P#v?h?c¯;5tɝb),fMB($.HLJ-HR%ӿ߯y<d,58GeVxx/S均Uƪ6e*^s+CY`z's<oֹ(H)jnxsJI1iPC2wdܺ.BO彅e\ +UooM١d'~w0'`6xKRpS
[zC-MakY8|h.=t[S_j6o e
#e1:;a-TvX\f|:m'أvcFq1D.DQ
#ta>]Fd@0{X.lӅP@I
ngғ|Y0OB,iu2EpReLv/5넷\JHd[ԠNΌOOKY"/#=X$r_MH{'US{pğ$ij<h?]Zݶ4it}(U.gN%u$ջk +at.\~tb 5vfAǓ,֬cLJSG2Q"7yNq@M.i@w +UC@f҆vah>,=DIbݵ: +WRp* siA\[i*[5O+|FkI`8"Uv c%SX|$#Y]ٕ3S.lIE:40 +?z0.z$ + +hr£pi'ģ 3N}#Z} +L# XHuC1%EYmLBmHR +a?8\ʠ9b +4*2#+h76y3-suS`~BSxn'"T1O!̤IШ]wdf4=Z逜q`T?+ +ΛpfAqh2r &ѬnD
ՂlM>߫%n8 +0toz.d^P[q/'<1k:ժ&#qh'!Rמ܃Su>#laseA<ԅÅ.xy70rAo4-ـv-AHy<2 yH{x` +^U5|] 3>cf-q*+@isc,`dI&kfLSD >qK<{7:M4R%Mp'hn+XY5qh +aApJXe{p)-wn;`/ddj@1k7*U&pnHۣ8!ubhajK;!10,`_%MHk++H._<y$YPK|r=؝u'7Nyfk|02<zYs&84S֑㱭fL U; +֨,;
1G`֢z51,MaWGxya/N3> +f[ÀBt)@=RsU"--Ƥ1@zUV`hv+.sQw~}T|nfקy~tj +E"hu;&\E) +Vbw/ri
.YjUFBA:;rA^,}
*Z\hԦ!B>f^l[P]Cb +yzvtrLgW>_!-&+Y5)z!0!Y ڥ57;%Zty{.d(>ۀhS1řZRMIw\+Lڔ&HAC7eC5o + +=5Uxi 6l|^AOK>6(^?;Q8Wa*HCw0Lׂϣd9?8.E!v=\X,#~˒VL?` +fy{i4L'&vFx3;Bseh:@՛fl[+9ɮY7!ﯲ<Ⳓcy=2
ij[xF<mG&/OJ|HLY
,#Օ&
?HyCk(߷/XXq̋v0"ȪL}zBՠ1<ǤvcֵpeW1Jm=61_7KUۮ3H>uv)q걮OsRAMa[lD(2,㘔T?fXP}qZ[g9_bW]9谎'Il)[t] +Q|V?v,{ϬH*%iU=Q + ķ*HukHvxoos(b(g^A:$ Rˉ?.(4ӫGT+LP*U|*( +aj0?OT_ɑ2;!ՀcjxC!w.&|%dPZt7ub#[VmCh|WJjywj~`P՜{G-h@TFمZy4 !/h:? c*Yv]QR^֣f[hC<幢Ohш!pM-
H`iU߾@PƈaN'c`@;8m~_]Ī:'MmdNq!~6)&KO셭oLcxrbiRJ3wrh#oP75&UܴN.VkM
WVzz@ud6Q2Ox-pJoY':ٲGc,tHĊa`nS;r9D//mRGaˮl +.P[OD3
F\g g Q
'{1+q23J/cH{jD[
m1Iy\Cx[߶/T&mz32p!qb16#&9蝅W1}3~r
XÍ]҉s*3֣HxF9<y!Sp2ٞ L?B>-a9 +b}KJ0R?*uBJ3݂ы7 +ÑfۀZg@T
iE\7sCV5l5z!g2Ⱐ9dG~*:IU\+ܦz$XAwǶu-ň ]8hq3BMh-.:Bs)bi#n)ơ +{oJcоҔ+hOfʒ,JfΪR]3UBNaCÐ[K+CD@YU=ij#
^iff;v9ӄ$MCbaIA+Iy[p֓b?(a߾H'[eGN/jp+ɉKQb;~=瞽1Bf#c*(L1$-g`]SUӖs]S"0H T,t)2>ݬ&~JW`5^r :"PÊW.6wȑ2^)4(ї/&r7)(4om_(6?{mR<`iOT +bȼAݍBFR +#ޫ.zhQIUS[>4Ygj^ HPv>G8&(ɴӻݔ + 53ny_˽r'3zmBI?'8(r%jR6ķ<)8w*&8:;47Ҏ.9&8PXze` +EցeaS$үT2ҕxl,[g-sfG[$zv_FAh,{cARYFwďJEp~3P=?nnRZ>zEROϥEdKCk8#Ai̓aO]#Dk^d
7qJeP8d;848%\K;!jaNE^DU̳lxA_:1+y0)q|PUS3;sXHP*tL<zS&(`т/G?@WDO#<04- =(lEj6k6:PMxrHV=pGoF%;s#Y+}衭@%Mnq_sd8oa*uPԉ]F6L۾XIB#{fh- +dE?-7Q9kS#{כ[єQ҆aپ!DZX8˵ZgӅz<}wd&M +32rZPZVV$grH+sn^D#AЃh!ug84j4GdVND:[DԯΒNwԳ
})ܴ1*Mce] ?v1ŇHF=x^S/ 402g[R3y,ckfZG6Đ7`N/cy
k6kjɍt;hmv~`ȫYVHP0aS7J*4˰(Djoqӧv~21|
tO(nײ'C0z0 +oҽVF}zyTҽVg2𢡄(L/}ϯ ij-̩grE^+,-s6&a1phk\$(Ɵڇ3Iݟ-fQ<PUbu* $c}uLn5+#:`Yz5Ir3Y~4~Y3Tzs7|^@aƎtD~=^i*vS;LT|[}rV~86 L!N7SAX/x|st4ŵV]y^=pޙJ ލS?;TWh[8,SJ#,>GVr=5PrI)_rLR,oE"*㠛u~\< +Q6g";7xR}RVӾWK_0m5Wa"MSre֩!<ZvBk_g -i=e92ߓcD>O*"vo,lYGäBcoRM*i[3wΜFl[/nD9^\M؛%^E#Df}1/h:6fuYeJ=Xs@җڽ$!,\ĩMz.y{=iH-Q@NnAG1PS>%1G^+ۮjj>֯StirΦ@OgRnH_KQfjF«dS7YxLM؞6\W>NNRθ"[BWꢘ~\34DD}? -FHxUdf|iEr-#XwcwɨoZֲTCPdIX=&|;'`̜f1cбg+@? W}!-WMskvsR:uVe>,Ë[`,$%/YqplPmMNU:8IN LK5+bEm `K_|c(d8@',d=2-u6Dqf,V;_ڌbASXk|r,W>1"gf#.!YW_VZ56hJ9T^tC0 -mY鬛QQtj\cdS,ݟ>Iv7s$/k!$jyGd{xA}/&0b
%}[M
JJK|Oe1B(HH
hj|8\R`jޤAԸ3Xa}V).eB
"NÃ^6tnTPjN&З[E@@5aL8l1IUgU-3=h#fU .s6$Q3MW 2jxFC ֩rl[$ ռwXJyNX,yĮjՖEqgA*0d{5 -mu=t@>O͓}>GA^)rz9@+ċ\P?Ö3d9X"vKZgW8:ZI՟ԦG00:Eν+O"Y DhdবZ2RT.r;~CIͤ);jp_gA5j[GK5C/jOB07յnTe -ƹ$ӍjǘKY#g|y3>:&MDŽI#웄>$x0MM&"2i -&BMnzr<w,3Ia@VQ6p9bZ<H_/ܭ[LhXoѱ7,C+V3W6D0OJZ7D?Ϥ[;UC#xJ -7dXޏ&/;˟{tZ䁝ŪpF]YJ&^\E -ÅWp Хi5DAVg!4nDw - -t<;3-d5
=6$ -v3yԵ)dr^pi;8lJMDFb1x<vZ`-F˓TH'$/1BPf}3~'*idVi$m<j, -#ϡf2HIn61<Ee'%kn+=>%9spPt z6#bZV]PX;YrYONc+n qeSwW,&Y -<K⸆O$n{x_t
dwrt?.-VA?Yi?$7({ -207q5^K/KN -vAQLGBG -խbC{:X*W)WX"7 - =z?}?Sg5}tVi't~:U%M:QS}y<o;a]ed]TG-rxR ݡ8|p̬o[h:hʩ%lRlM(̺2+<Eu-˹4L>c!3#u6yجN/
2h8ݟ -#Cr?"+Uilhi91݇'o\(X5t>I,2~3B,4\?`̻}1H=ɿ CթYxwyu<:/(FL_+%sgdv38 -,'0#',A?g[_B{1tΤG H2-n% W" 8Pxa
x6Oc$*[&@39nզ,!8M"EhO(9>Uc8xULIM#%?SCx%OK؏UhXrxnTV;E$~zƿ,m0N"ŬS +{*}pYv +)yF93H%X`W]< endstream endobj -949 0 obj +1135 0 obj << /Type /FontDescriptor -/FontName /WAMEOP+LMMono9-Regular +/FontName /YQTGFO+LMMono9-Regular /Flags 4 /FontBBox [-451 -318 734 1016] -/Ascent 0 -/CapHeight 0 -/Descent 0 +/Ascent 600 +/CapHeight 600 +/Descent -222 /ItalicAngle 0 /StemV 74 /XHeight 431 -/CharSet (/A/B/I/M/N/Q/T/X/a/asterisk/b/backslash/braceleft/braceright/c/comma/d/e/eight/equal/exclam/f/five/four/g/greater/h/i/k/l/less/m/n/o/one/p/parenleft/parenright/period/question/quoteright/quotesingle.ts1/r/s/slash/t/three/u/v/w/y/zero) -/FontFile 948 0 R +/CharSet (/A/B/I/M/N/Q/T/X/a/asterisk/at/b/backslash/braceleft/braceright/c/comma/d/e/equal/exclam/f/five/four/g/greater/h/hyphen/i/k/l/less/m/n/o/one/p/parenleft/parenright/period/question/quoteright/r/s/semicolon/slash/t/u/v/w/x/y/z/zero) +/FontFile 1134 0 R >> endobj -857 0 obj +1023 0 obj << /Type /Encoding -/Differences [21/endash 27/ff/fi/fl/ffi 33/exclam 36/dollar/percent/ampersand/quoteright/parenleft/parenright/asterisk/plus/comma/hyphen/period/slash/zero/one/two/three/four/five/six/seven/eight/nine/colon/semicolon/less/equal/greater/question/at/A/B/C/D/E/F 72/H/I/J/K/L/M/N/O/P/Q/R/S/T/U/V/W/X/Y 91/bracketleft/backslash/bracketright/asciicircum/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/bar/braceright 159/section] +/Differences [21/endash 27/ff/fi/fl/ffi 33/exclam 36/dollar/percent/ampersand/quoteright/parenleft/parenright/asterisk/plus/comma/hyphen/period/slash/zero/one/two/three/four/five/six/seven/eight/nine/colon/semicolon/less/equal/greater/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 91/bracketleft/backslash/bracketright/asciicircum/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/bar/braceright 159/section] >> endobj -871 0 obj +1027 0 obj << /Type /Encoding -/Differences [13/gamma 18/theta 25/pi 30/phi 34/epsilon 58/period/comma/less/slash/greater 88/X 97/a 101/e/f/g 107/k 109/m/n 112/p/q/r 116/t 120/x/y] +/Differences [0/parenleftbig/parenrightbig] >> endobj -873 0 obj +1042 0 obj << /Type /Encoding -/Differences [0/minus 2/multiply 14/openbullet 20/lessequal/greaterequal 41/arrowdblright 48/prime 54/negationslash 104/angbracketleft/angbracketright/bar 110/backslash 112/radical] +/Differences [13/gamma 18/theta 25/pi 30/phi 34/epsilon 58/period/comma/less/slash/greater 97/a 101/e/f/g 107/k 109/m/n 112/p/q/r 116/t 120/x/y] >> endobj -869 0 obj +1035 0 obj << /Type /Encoding -/Differences [0/Gamma 33/exclam 40/parenleft/parenright 43/plus 48/zero/one/two/three/four/five/six/seven/eight/nine 61/equal 91/bracketleft 93/bracketright 97/a 99/c 101/e 104/h/i 108/l/m/n/o 115/s/t 120/x] +/Differences [0/minus 2/multiply 14/openbullet 20/lessequal/greaterequal 33/arrowright 41/arrowdblright 54/negationslash 104/angbracketleft/angbracketright/bar 110/backslash 112/radical] >> endobj -859 0 obj +1038 0 obj << /Type /Encoding -/Differences [39/quotesingle.ts1 42/asteriskmath 136/bullet] +/Differences [0/Gamma 33/exclam 40/parenleft/parenright 43/plus 48/zero/one/two/three/four/five/six/seven/eight/nine 61/equal 91/bracketleft 93/bracketright 96/quoteleft/a 99/c 101/e 104/h/i 108/l 110/n/o/p 115/s/t 120/x] >> endobj -950 0 obj +1033 0 obj +<< +/Type /Encoding +/Differences [39/quotesingle.ts1 136/bullet] +>> +endobj +1136 0 obj << /Length 859 /Filter /FlateDecode @@ -8471,20 +9915,20 @@ xmUMo0WxNWHv[jWHL @UǾضߺItճ;סq )q4 5'G`~ӛ>Tg]8i/nTv<k0Yڲ1g3K`ڐY1q22%/dchJ(S}Y:scݜ笟PcYB?A9Os֙3\Q.4aX=Z9#>c-+>c_ZZ~Z83z3[:ޭ߬Lg3t3-gB|B|\3gg|2?z)BXIAup*^+&#sU-'H8q_u
A8{N Y6ާ=_8N endstream endobj -250 0 obj +298 0 obj << /Type /Font /Subtype /Type1 -/BaseFont /DECJEJ+LMRoman10-Bold -/FontDescriptor 897 0 R +/BaseFont /DBMOAU+LMRoman10-Bold +/FontDescriptor 1071 0 R /FirstChar 21 -/LastChar 159 -/Widths 893 0 R -/Encoding 857 0 R -/ToUnicode 950 0 R +/LastChar 122 +/Widths 1067 0 R +/Encoding 1023 0 R +/ToUnicode 1136 0 R >> endobj -951 0 obj +1137 0 obj << /Length 859 /Filter /FlateDecode @@ -8497,20 +9941,20 @@ xmUMo0WxNWHv[jWHL @UǾضߺItճ;סq МQV1Կ'1t?ƺ9Y?ГrYs֟'g)43;YgD3\ib-z3zs,>G|ZV|ƾ3ֵ33qgng3tZ[Yog,g[3=L3z/gd ,gz)R؇O5[TTV*M2GZN(:pTjy0:q;~E衻mO1z'X endstream endobj -298 0 obj +345 0 obj << /Type /Font /Subtype /Type1 -/BaseFont /QVUVDT+LMRoman12-Bold -/FontDescriptor 899 0 R +/BaseFont /FJOGDN+LMRoman12-Bold +/FontDescriptor 1073 0 R /FirstChar 27 /LastChar 122 -/Widths 887 0 R -/Encoding 857 0 R -/ToUnicode 951 0 R +/Widths 1062 0 R +/Encoding 1023 0 R +/ToUnicode 1137 0 R >> endobj -952 0 obj +1138 0 obj << /Length 858 /Filter /FlateDecode @@ -8523,20 +9967,20 @@ xmUn0CƆ ,>G|ZN|ƾt3u3t3qggw3t:;9g,g[3=L3z/gķ|2?z)R8IIupj^+5&#su#'H8qyA8YvJ1zh9ށ endstream endobj -589 0 obj +713 0 obj << /Type /Font /Subtype /Type1 /BaseFont /AHPNOF+LMRoman8-Bold -/FontDescriptor 901 0 R +/FontDescriptor 1075 0 R /FirstChar 65 /LastChar 65 -/Widths 861 0 R -/Encoding 857 0 R -/ToUnicode 952 0 R +/Widths 1025 0 R +/Encoding 1023 0 R +/ToUnicode 1138 0 R >> endobj -953 0 obj +1139 0 obj << /Length 857 /Filter /FlateDecode @@ -8548,20 +9992,20 @@ N)$W?g^,ɝظYs{\wu4{S<.7զ7 55)FњSjR@J]!5<FSb"/!\,Ѹ8"\ 2:x0)ljsn
l9ux\רi"EܰpJM}4$x0.?1Yß8x!!aM4cnGym:C[1Flx
L^"K~2&NCC&^кY`YecO{"CgcY=9O('=g)YB|֙Bs:S|uF:#e~,٢+>G+>3qgegK+>c]+>O+>G|FV|~+>CѻV|B|ƺ~!>_Sϔ+>B|&LOrBG/}XTK5?)Nkx$sy儢 G5.[ s'~8ElUCjF endstream endobj -251 0 obj +299 0 obj << /Type /Font /Subtype /Type1 -/BaseFont /UKSWVF+LMRoman10-Regular -/FontDescriptor 913 0 R +/BaseFont /EAWJXH+LMRoman10-Regular +/FontDescriptor 1093 0 R /FirstChar 21 /LastChar 159 -/Widths 892 0 R -/Encoding 857 0 R -/ToUnicode 953 0 R +/Widths 1066 0 R +/Encoding 1023 0 R +/ToUnicode 1139 0 R >> endobj -954 0 obj +1140 0 obj << /Length 857 /Filter /FlateDecode @@ -8574,20 +10018,20 @@ kCX &+jRPC8I\U E'j\,@sGAC>Nwq8"٦:P endstream endobj -245 0 obj +293 0 obj << /Type /Font /Subtype /Type1 -/BaseFont /WACCAK+LMRoman12-Regular -/FontDescriptor 915 0 R +/BaseFont /KUHCFT+LMRoman12-Regular +/FontDescriptor 1095 0 R /FirstChar 40 /LastChar 119 -/Widths 894 0 R -/Encoding 857 0 R -/ToUnicode 954 0 R +/Widths 1068 0 R +/Encoding 1023 0 R +/ToUnicode 1140 0 R >> endobj -955 0 obj +1141 0 obj << /Length 856 /Filter /FlateDecode @@ -8599,20 +10043,20 @@ N)$W?g^,ɝظYs{\wu4{S<.7զ7 МQV1Կ'1t?ƺ9Y?ГrYs֟'g)437YgD3\ib-z3zs,>G|ZV|ƾ3ֵ33qgng3tZ[Yog,g[3=L3z/gd ,gz)R؇O5_TTV*M2GZN(:pTZ8:qwYн6ݢ=_3o endstream endobj -557 0 obj +607 0 obj << /Type /Font /Subtype /Type1 /BaseFont /CNSQMW+LMRoman6-Regular -/FontDescriptor 919 0 R +/FontDescriptor 1099 0 R /FirstChar 49 /LastChar 65 -/Widths 866 0 R -/Encoding 857 0 R -/ToUnicode 955 0 R +/Widths 1032 0 R +/Encoding 1023 0 R +/ToUnicode 1141 0 R >> endobj -956 0 obj +1142 0 obj << /Length 856 /Filter /FlateDecode @@ -8624,20 +10068,20 @@ N)$W?g^,ɝظYs{\wu4{S<.7զ7 МQV1Կ'1t?ƺ9Y?ГrYs֟'g)437YgD3\ib-z3zs,>G|ZV|ƾ3ֵ33qgng3tZ[Yog,g[3=L3z/gd ,gz)R؇O5_TTV*M2GZN(:pTZ8:qwYн6ݢ=_;;t endstream endobj -257 0 obj +388 0 obj << /Type /Font /Subtype /Type1 -/BaseFont /JALGHF+LMRoman7-Regular -/FontDescriptor 921 0 R +/BaseFont /TOLCSL+LMRoman7-Regular +/FontDescriptor 1101 0 R /FirstChar 49 /LastChar 116 -/Widths 889 0 R -/Encoding 857 0 R -/ToUnicode 956 0 R +/Widths 1060 0 R +/Encoding 1023 0 R +/ToUnicode 1142 0 R >> endobj -957 0 obj +1143 0 obj << /Length 856 /Filter /FlateDecode @@ -8647,20 +10091,20 @@ xmUn0CƆ N7RIU~<>O\7IrՓ?]]C{t}N=COZի~{ UΝ'mR~'
/@
U/1E)x2ZX]515(ln1"n۞dDv@~3D>i|'7aea|8<T(-P0~{5ƆUC珇uu棹5oE9p]n+I&H8@l:
ld`TYg``&*58`ԜR&4`4(pJ
RHijFhg1YbQ.gh\Uaar;ss`q endstream endobj -559 0 obj +609 0 obj << /Type /Font /Subtype /Type1 -/BaseFont /WOJEAD+LMRoman8-Regular -/FontDescriptor 923 0 R -/FirstChar 21 -/LastChar 121 -/Widths 865 0 R -/Encoding 857 0 R -/ToUnicode 957 0 R +/BaseFont /XJQAAF+LMRoman8-Regular +/FontDescriptor 1103 0 R +/FirstChar 40 +/LastChar 120 +/Widths 1031 0 R +/Encoding 1023 0 R +/ToUnicode 1143 0 R >> endobj -958 0 obj +1144 0 obj << /Length 856 /Filter /FlateDecode @@ -8672,20 +10116,20 @@ N)$W?g^,ɝظYs{\wu4{S<.7զ7 МQV1Կ'1t?ƺ9Y?ГrYs֟'g)437YgD3\ib-z3zs,>G|ZV|ƾ3ֵ33qgng3tZ[Yog,g[3=L3z/gd ,gz)R؇O5_TTV*M2GZN(:pTZ8:qwYн6ݢ=_K~ endstream endobj -361 0 obj +438 0 obj << /Type /Font /Subtype /Type1 -/BaseFont /TAETSC+LMRoman9-Regular -/FontDescriptor 925 0 R +/BaseFont /IZRVXT+LMRoman9-Regular +/FontDescriptor 1105 0 R /FirstChar 21 /LastChar 122 -/Widths 884 0 R -/Encoding 857 0 R -/ToUnicode 958 0 R +/Widths 1057 0 R +/Encoding 1023 0 R +/ToUnicode 1144 0 R >> endobj -959 0 obj +1145 0 obj << /Length 858 /Filter /FlateDecode @@ -8698,20 +10142,20 @@ ilXY3t6no.XjR˺^o̙S^ww?U4H6!L@@B@q\s * )q4 5'G`~ӛ>Tg]i/nTv<k0Yڲ1gk`ڐY1q22%/dchJ(S}Y:scݜ笟PcYB?A9Os֙3\Q.4aX=Z9#>c-+>c_ZZ~Z83z3[:ޭ߬Lg3t3-gB|B|\3gg|2?z)BXIAup*^+&#sU-'H8q|\e
A8}\Q,znS/S endstream endobj -258 0 obj +305 0 obj << /Type /Font /Subtype /Type1 -/BaseFont /VNGPTC+LMRoman10-Italic -/FontDescriptor 927 0 R +/BaseFont /QJWDZJ+LMRoman10-Italic +/FontDescriptor 1107 0 R /FirstChar 21 /LastChar 122 -/Widths 888 0 R -/Encoding 857 0 R -/ToUnicode 959 0 R +/Widths 1063 0 R +/Encoding 1023 0 R +/ToUnicode 1145 0 R >> endobj -960 0 obj +1146 0 obj << /Length 857 /Filter /FlateDecode @@ -8726,45 +10170,20 @@ ilXW3t6no.XjR˺^o3&su_U4H6!L@@B@q\s * ?a!SMW,:?8ÇqG湪N$ոX>n2ۇ}]>.pD=tMW)FuΎށ endstream endobj -556 0 obj +689 0 obj << /Type /Font /Subtype /Type1 /BaseFont /WXKWAB+LMRoman7-Italic -/FontDescriptor 929 0 R +/FontDescriptor 1109 0 R /FirstChar 65 /LastChar 65 -/Widths 867 0 R -/Encoding 857 0 R -/ToUnicode 960 0 R ->> -endobj -961 0 obj -<< -/Length 857 -/Filter /FlateDecode ->> -stream -xmUn0CƆ -N$L?f_,Ys..=pyp}GuYַC -ۡ};uT~`u|;{M
o`
s|oUAEItFkuwhEmDzĪۣH~z?v؎rapIU4:?ë*-L=7JG6Tmv^Ϳ*a]~i3hJ-fo$=sׁuRA)`*R2$!`8li9UEJ555` M5
6Ҡh -֟Q.{s3uL(u&:
XC/N|FN|NgXˉؗN|ƺN|N|&ޝN|N'>w'>7'>S}uKR|)W|FL|OrRG/}XTG5?)Nkx$syn䄢 G5.[=MS s'~?j?El&ކ -endstream -endobj -576 0 obj -<< -/Type /Font -/Subtype /Type1 -/BaseFont /ETIJNB+LMRoman8-Italic -/FontDescriptor 931 0 R -/FirstChar 99 -/LastChar 121 -/Widths 862 0 R -/Encoding 857 0 R -/ToUnicode 961 0 R +/Widths 1029 0 R +/Encoding 1023 0 R +/ToUnicode 1146 0 R >> endobj -962 0 obj +1147 0 obj << /Length 857 /Filter /FlateDecode @@ -8779,20 +10198,20 @@ ilXW3t6no.XjR˺^o3&su_U4H6!L@@B@q\s * ?a!SMW,:?8ÇqG湪N$ոX>n2ۇ}]>.pD=tMW)Fuދ endstream endobj -748 0 obj +876 0 obj << /Type /Font /Subtype /Type1 /BaseFont /UHTCXY+LMRoman9-Italic -/FontDescriptor 933 0 R +/FontDescriptor 1111 0 R /FirstChar 97 /LastChar 115 -/Widths 858 0 R -/Encoding 857 0 R -/ToUnicode 962 0 R +/Widths 1024 0 R +/Encoding 1023 0 R +/ToUnicode 1147 0 R >> endobj -963 0 obj +1148 0 obj << /Length 858 /Filter /FlateDecode @@ -8805,20 +10224,20 @@ N7R$ݪ~<>lۿYtՓиYs{ )q4 5'G`~ӛ>Tg]i/nTv<k0Yڲ1gk`ڐY1q22%/dchJ(S}Y:scݜ笟PcYB?A9Os֙3\Q.4aX=Z9#>c-+>c_ZZ~Z83z3[:ޭ߬Lg3t3-gB|B|\3gg|2?z)BXIAup*^+&#sU-'H8q|\e
A8N Y6ݧ=_}sߊ endstream endobj -573 0 obj +703 0 obj << /Type /Font /Subtype /Type1 /BaseFont /QTMYSI+LMSans10-Regular -/FontDescriptor 935 0 R +/FontDescriptor 1113 0 R /FirstChar 28 /LastChar 121 -/Widths 863 0 R -/Encoding 857 0 R -/ToUnicode 963 0 R +/Widths 1026 0 R +/Encoding 1023 0 R +/ToUnicode 1148 0 R >> endobj -964 0 obj +1149 0 obj << /Length 859 /Filter /FlateDecode @@ -8831,20 +10250,20 @@ ilXY3t6n.XjR˺^o?͙S^vw?U4H6!L@@B@q\s * )q4 5'G`~ӛ>Tg]i/nTv<k0Yڲ1gk`ڐY1q22%/dchJ(S}Y:scݜ笟PcYB?A9Os֙3\Q.4aX=Z9#>c-+>c_ZZ~Z83z3[:ޭ߬Lg3t3-gB|B|\3gg|2?z)BXIAup*^+&#sU-'H8q_e
A8_Q,znS/_g endstream endobj -299 0 obj +346 0 obj << /Type /Font /Subtype /Type1 -/BaseFont /BGRPQJ+LMMonoLt10-Bold -/FontDescriptor 941 0 R +/BaseFont /OVNTJW+LMMonoLt10-Bold +/FontDescriptor 1127 0 R /FirstChar 33 -/LastChar 121 -/Widths 886 0 R -/Encoding 857 0 R -/ToUnicode 964 0 R +/LastChar 122 +/Widths 1061 0 R +/Encoding 1023 0 R +/ToUnicode 1149 0 R >> endobj -965 0 obj +1150 0 obj << /Length 858 /Filter /FlateDecode @@ -8857,20 +10276,20 @@ ilXYӷ|6nvo.XjR˺^k̙S^ww?U4H6!L@@B@q\s * )q4 5'G`~ӛ>Tg]i/nTv<k0Yڲ1gk`ڐY1q22%/dchJ(S}Y:scݜ笟PcYB?A9Os֙3\Q.4aX=Z9#>c-+>c_ZZ~Z83z3[:ޭ߬Lg3t3-gB|B|\3gg|2?z)BXIAup*^+&#sU-'H8q|\e
A8N Y6ݧ=_ߔ endstream endobj -252 0 obj +300 0 obj << /Type /Font /Subtype /Type1 -/BaseFont /HCGIQG+LMMono10-Regular -/FontDescriptor 943 0 R +/BaseFont /NDWLKG+LMMono10-Regular +/FontDescriptor 1129 0 R /FirstChar 33 /LastChar 125 -/Widths 891 0 R -/Encoding 857 0 R -/ToUnicode 965 0 R +/Widths 1065 0 R +/Encoding 1023 0 R +/ToUnicode 1150 0 R >> endobj -966 0 obj +1151 0 obj << /Length 858 /Filter /FlateDecode @@ -8886,20 +10305,20 @@ N7R!ݪ~<>lۿYtՓ;q\]U}s9nwu4{SC<Q]jO МQV1Կ'1t?ƺ9Y?ГrYs֟'g)43;YgD3\ib-z3zs,>G|ZV|ƾ3ֵ33qgng3tZ[Yog,g[3=L3z/gd ,gz)R؇O5[TTV*M2GZN(:pTj0:q;qE衻mO1zߞ endstream endobj -244 0 obj +292 0 obj << /Type /Font /Subtype /Type1 /BaseFont /FBPQEI+LMMono12-Regular -/FontDescriptor 945 0 R +/FontDescriptor 1131 0 R /FirstChar 45 /LastChar 117 -/Widths 895 0 R -/Encoding 857 0 R -/ToUnicode 966 0 R +/Widths 1069 0 R +/Encoding 1023 0 R +/ToUnicode 1151 0 R >> endobj -967 0 obj +1152 0 obj << /Length 857 /Filter /FlateDecode @@ -8910,20 +10329,20 @@ N7R!L?f^,Yss..=}?y<{Q>I]Vm ֟Q.{s3uL(u&:
XC/N|FN|NgXˉؗN|ƺN|N|&ޝN|N'>w'>7'>S}uKR|)W|FL|OrRG/}XTG5?)Nkx$syn䄢 G5.[=c s'a8 W)FM endstream endobj -560 0 obj +610 0 obj << /Type /Font /Subtype /Type1 -/BaseFont /VZTNFI+LMMono8-Regular -/FontDescriptor 947 0 R -/FirstChar 46 -/LastChar 116 -/Widths 864 0 R -/Encoding 857 0 R -/ToUnicode 967 0 R +/BaseFont /ODQQOC+LMMono8-Regular +/FontDescriptor 1133 0 R +/FirstChar 45 +/LastChar 121 +/Widths 1030 0 R +/Encoding 1023 0 R +/ToUnicode 1152 0 R >> endobj -968 0 obj +1153 0 obj << /Length 857 /Filter /FlateDecode @@ -8940,20 +10359,45 @@ ilXWӷ|6nvo.XjR˺^k3&su_U4H6!L@@B@q\s * ?a!SMW,:?8ÇqG湪N$ոX>n2ۇ}}\P,zfR/ endstream endobj -362 0 obj +439 0 obj << /Type /Font /Subtype /Type1 -/BaseFont /WAMEOP+LMMono9-Regular -/FontDescriptor 949 0 R +/BaseFont /YQTGFO+LMMono9-Regular +/FontDescriptor 1135 0 R /FirstChar 33 /LastChar 125 -/Widths 883 0 R -/Encoding 857 0 R -/ToUnicode 968 0 R +/Widths 1056 0 R +/Encoding 1023 0 R +/ToUnicode 1153 0 R >> endobj -969 0 obj +1154 0 obj +<< +/Length 430 +/Filter /FlateDecode +>> +stream +xun0~HbM+ e5Q-')RyzlH] +a+|GVZ=Bt90-Cfp{Ȣd%aޢ]ިfi +M9;7,|1M06g۾iNHF,OۇF8E;7[GޛۦhJuDrAZC%rW~i#Ɨ,
Kg'29.c_|8̉{vw^_x9"~/<ψ^xyE~/Iă+g4ˍ{Yn
P+qitCUqs67^ +
^ +endstream +endobj +696 0 obj +<< +/Type /Font +/Subtype /Type1 +/BaseFont /WKNEQI+LMMathExtension10-Regular +/FontDescriptor 1077 0 R +/FirstChar 0 +/LastChar 1 +/Widths 1028 0 R +/Encoding 1027 0 R +/ToUnicode 1154 0 R +>> +endobj +1155 0 obj << /Length 600 /Filter /FlateDecode @@ -8964,20 +10408,20 @@ xuTn@+fH@!BHMV{5@,lsw m6n냝g)>mW_Ni Mg:]fMR2IV;e8p<_9"*G(dS>sQ DDr "qX+&Gha:$r5PHi@S91jU|s(V8>l;JۈYDIaoykrA)ς1R;JS΄U!ar.Qsy4M纑9Ҍi~h7!cD<`1 ySMgg>2 cs(>ZC@ f
fP7Fo?],}/Kۺ=/mS7m'{L: endstream endobj -350 0 obj +411 0 obj << /Type /Font /Subtype /Type1 -/BaseFont /CWEEHJ+LMMathItalic10-Regular -/FontDescriptor 903 0 R +/BaseFont /IRHEKJ+LMMathItalic10-Regular +/FontDescriptor 1079 0 R /FirstChar 13 /LastChar 121 -/Widths 885 0 R -/Encoding 871 0 R -/ToUnicode 969 0 R +/Widths 1058 0 R +/Encoding 1042 0 R +/ToUnicode 1155 0 R >> endobj -970 0 obj +1156 0 obj << /Length 598 /Filter /FlateDecode @@ -8988,20 +10432,43 @@ xmTM@+z&?DƉ1LF+BG Ч
}g?i{4Z76C
0b
S.0Y0XjGiʙ`2$C5%^s=j# \7c C1
ݏ7<
&dL8f>0Ozʣ)LPקZFw?a~NTKx6Ĭ#
ᯋUEvi[1mQ]/8}&?K^ endstream endobj -418 0 obj +537 0 obj << /Type /Font /Subtype /Type1 -/BaseFont /PNDPYA+LMMathItalic5-Regular -/FontDescriptor 905 0 R -/FirstChar 61 -/LastChar 110 -/Widths 875 0 R -/Encoding 871 0 R -/ToUnicode 970 0 R +/BaseFont /VLADYX+LMMathItalic5-Regular +/FontDescriptor 1081 0 R +/FirstChar 25 +/LastChar 120 +/Widths 1048 0 R +/Encoding 1042 0 R +/ToUnicode 1156 0 R >> endobj -971 0 obj +1157 0 obj +<< +/Length 598 +/Filter /FlateDecode +>> +stream +xmTM@+z&?DƉ1LF+BG +ٔB15*fH֊zAl@e
R3TE`̇G=O3~6"i0'DoR3l3`\aʳ`LԎҔ3!>teHkK1z\7FunƤAN4cAox*Mc7p|aGSYOF~4J2P-m-YYG_v_ҶnchiEe+
G>|_pLzKc +endstream +endobj +571 0 obj +<< +/Type /Font +/Subtype /Type1 +/BaseFont /WJODPB+LMMathItalic6-Regular +/FontDescriptor 1083 0 R +/FirstChar 120 +/LastChar 120 +/Widths 1043 0 R +/Encoding 1042 0 R +/ToUnicode 1157 0 R +>> +endobj +1158 0 obj << /Length 598 /Filter /FlateDecode @@ -9012,20 +10479,43 @@ xmTM@+z&?DƉ1LF+BG Ч
}g?i{4Z76C
0b
S.0Y0XjGiʙ`2$C5%^s=j# \7c C1
ݏ7<
&dL8f>0Ozʣ)LPקZFw?a~NTKx6Ĭ#
ᯋUEvi[1mQ]/8}&?Kh endstream endobj -386 0 obj +478 0 obj << /Type /Font /Subtype /Type1 -/BaseFont /CVHMNY+LMMathItalic7-Regular -/FontDescriptor 907 0 R +/BaseFont /WJMPFK+LMMathItalic7-Regular +/FontDescriptor 1085 0 R /FirstChar 25 /LastChar 120 -/Widths 879 0 R -/Encoding 871 0 R -/ToUnicode 971 0 R +/Widths 1053 0 R +/Encoding 1042 0 R +/ToUnicode 1158 0 R >> endobj -972 0 obj +1159 0 obj +<< +/Length 599 +/Filter /FlateDecode +>> +stream +xmTM@+z&?DtbL$3l:$~Ulb<H^~UO6y}*ŗkI;m(kim&>:^]ʼnwUvvP=\T%#wr)bន2~">ũc+(mބzR:b[Q]Λ݈TTy{$0)-"'zf :j%_|mnۢ:7w6z-r{r)Ҋ6D[cbgYۮI3ۦz+)b$kVÝ2r<
iD +ٔB1%
*fH֊zIl@e
R3TE`̇G=O3ξ>"i0'DoR3 +endstream +endobj +569 0 obj +<< +/Type /Font +/Subtype /Type1 +/BaseFont /YSVMJE+LMMathItalic8-Regular +/FontDescriptor 1087 0 R +/FirstChar 101 +/LastChar 120 +/Widths 1045 0 R +/Encoding 1042 0 R +/ToUnicode 1159 0 R +>> +endobj +1160 0 obj << /Length 598 /Filter /FlateDecode @@ -9035,20 +10525,20 @@ xmTM@+z&?DƉ1LF+BG ٔB15*fH֊zAl@e
R3TE`̇G=O3~6"i0'DoR3l3`\aʳ`LԎҔ3!>teHkK1z\7FunƤAN4cAox*Mc7p|aGSYOF~4J2P-m-YYG_v_ҶnchiEe+
G>|_pLKr endstream endobj -493 0 obj +545 0 obj << /Type /Font /Subtype /Type1 -/BaseFont /VGYIRG+LMMathItalic9-Regular -/FontDescriptor 909 0 R -/FirstChar 60 -/LastChar 110 -/Widths 872 0 R -/Encoding 871 0 R -/ToUnicode 972 0 R +/BaseFont /OEXRPD+LMMathItalic9-Regular +/FontDescriptor 1089 0 R +/FirstChar 59 +/LastChar 120 +/Widths 1046 0 R +/Encoding 1042 0 R +/ToUnicode 1160 0 R >> endobj -973 0 obj +1161 0 obj << /Length 602 /Filter /FlateDecode @@ -9061,20 +10551,20 @@ xuTn@+fH0C%DjX搿ߩnJSSS]ݦx9Z<Jn֏f eGSYn@FA4J2R-m-LXYG&Ov_ungh'iemk6-C>z endstream endobj -403 0 obj +500 0 obj << /Type /Font /Subtype /Type1 /BaseFont /UOBGNU+LMMathItalic10-Bold -/FontDescriptor 911 0 R +/FontDescriptor 1091 0 R /FirstChar 120 /LastChar 120 -/Widths 878 0 R -/Encoding 871 0 R -/ToUnicode 973 0 R +/Widths 1051 0 R +/Encoding 1042 0 R +/ToUnicode 1161 0 R >> endobj -974 0 obj +1162 0 obj << /Length 790 /Filter /FlateDecode @@ -9086,20 +10576,75 @@ xuUMo0Wx
B 8An) +4bX*^cH`&f P;6 <9Bi2)LeTV.>HEW0*50^ sغ~${S$2ˀQ
lC]j{Q\8jFجA`Z1Fcf1ur=#1SƤx-
907O`aaeVrLӔhVjeyQ(
a0<x?hkSIc/ -ur^vҁ7#!}BzUaQRZa~JÃy1KNqHC4cmӹy
7]t"jy3Vч.OOy/ endstream endobj -369 0 obj +440 0 obj << /Type /Font /Subtype /Type1 -/BaseFont /KBHFZY+LMMathSymbols10-Regular -/FontDescriptor 937 0 R +/BaseFont /YIDBNE+LMMathSymbols10-Regular +/FontDescriptor 1115 0 R /FirstChar 0 /LastChar 112 -/Widths 881 0 R -/Encoding 873 0 R -/ToUnicode 974 0 R +/Widths 1055 0 R +/Encoding 1035 0 R +/ToUnicode 1162 0 R >> endobj -975 0 obj +1163 0 obj +<< +/Length 789 +/Filter /FlateDecode +>> +stream +xmUMo0Wx
B +HJ+ML ~fTq zyyy_IZ6~bx]si?Yޟ).'_ޗvOmzmm]/UE+Y%#]WwH߫T"+hvUS? (Ħ. ;FLG.HiQVE?ѳ8`MX[\>DӗmU·|>z2Z.E!d6E׳;+w}}飅Ke7-yaVCyJ3"ac9Ċh2^ȉp 4%@d%L8 +c2h@B#E!%0f9K6absns\ dqVK-dJM]FUkXkZT|Rs0`KkG7Ir!=9ۥ氇ŵfx@Kn +cњ1jS'g3>eL0s+
(`ʫ[k%W4MɊf%aLqVƐ(%yR Kg +c&a8%|4r|Z,uo8i9/Hy3'Z؋ +*58nq4<xׁ+1ȑkI1F_܆1N +endstream +endobj +536 0 obj +<< +/Type /Font +/Subtype /Type1 +/BaseFont /MFZHAK+LMMathSymbols5-Regular +/FontDescriptor 1117 0 R +/FirstChar 0 +/LastChar 112 +/Widths 1049 0 R +/Encoding 1035 0 R +/ToUnicode 1163 0 R +>> +endobj +1164 0 obj +<< +/Length 788 +/Filter /FlateDecode +>> +stream +xmUMo0Wx
B +HJ+ML ~fTq zyyy_IZ6~bx]si?Yޟ).'_ޗvOmzmm]/UE+Y%#]mxNNN$UXozRbS愝ttp#CU`I|`(YBIxwzև&Z,-|J.K[?or>=|-2ybz{ߢMMBʥX2u㛖0jgA+<YFVH1HD +bK4S/IAl@D8 VsX>A1RU rKpHHXâVF01z99.8|tHHa2ݦ.z,wohE*rQ gpL|N[֥#ٛB$YjdʜRsCXQ3f
<g
+%7[Պ1hk5{3I2&}kMoρy +k
c0-õ+`dE08T+cH{fx<E)nx%Sijg1@^c>H{Ixgl_>co:ķCĴ
sb
sjL7 +V\Yr<Wt +@zȏ/nØEX'&7nۭmZYUܜ~tex{ɣxX +endstream +endobj +600 0 obj +<< +/Type /Font +/Subtype /Type1 +/BaseFont /ONAHZY+LMMathSymbols6-Regular +/FontDescriptor 1119 0 R +/FirstChar 0 +/LastChar 0 +/Widths 1036 0 R +/Encoding 1035 0 R +/ToUnicode 1164 0 R +>> +endobj +1165 0 obj << /Length 788 /Filter /FlateDecode @@ -9114,20 +10659,71 @@ bK4S/IAl@D8 VsX>A1RU rKpHHXâVF01z @zȏ/nØEX'&7nۭmZYUܜ~tex{ɣ] endstream endobj -480 0 obj +538 0 obj << /Type /Font /Subtype /Type1 -/BaseFont /VWOJXG+LMMathSymbols7-Regular -/FontDescriptor 939 0 R +/BaseFont /ZESWAE+LMMathSymbols7-Regular +/FontDescriptor 1121 0 R /FirstChar 0 -/LastChar 48 -/Widths 874 0 R -/Encoding 873 0 R -/ToUnicode 975 0 R +/LastChar 112 +/Widths 1047 0 R +/Encoding 1035 0 R +/ToUnicode 1165 0 R >> endobj -976 0 obj +1166 0 obj +<< +/Length 789 +/Filter /FlateDecode +>> +stream +xmUMo0Wx*8l[jW6$( ̈́Tq zyyy_IV~bx}{J?Yޝ-GW~kז[?&4ě<+U-g 'cIsr
_e"~CPe|m$ԣ2ZG줏1MՍFJ.1~Mo\L~.!tSmϧÇb!*!C
wG/-zYV?JOͥ\yQ,"T?iK>WmrZϒE4W:`eH-DBAXD 2K^A yIb
Д +,6>,,ag '@!Z"Ɍv~-r_n +^"KpNk+l]Z^?)HN,.5=(E6+kP +*38nq4<x@%zȏ/n͘EX'&7nۭ<w]ZYԞ~te_&RD +endstream +endobj +572 0 obj +<< +/Type /Font +/Subtype /Type1 +/BaseFont /ANTVSN+LMMathSymbols8-Regular +/FontDescriptor 1123 0 R +/FirstChar 0 +/LastChar 0 +/Widths 1041 0 R +/Encoding 1035 0 R +/ToUnicode 1166 0 R +>> +endobj +1167 0 obj +<< +/Length 789 +/Filter /FlateDecode +>> +stream +xmUMo0Wx
B +HJ+ML ~fTq zyyy_IZ6~bx]si?Yޟ).'_ޗvOmzmm]/UE+Y%#]99:PW1nD`Vв?~QJM]vEU]%Ң~xgq +%ݵi[hӷ+|/m۪?o|!d\BPɋm~ޯg/4+vV4·G)boZè\d-X"fD"! ,"Ms)/ Oe$@hJZ
J`p (S1H#V'-e""aFBXK`bsr la '@!Z"ɔv>: +F&+19an[do +5Bf0
z(sKa14kcG55(lU+ƈ5c!Nθg3&}ʘ7a<)x3W53QWSJiJP!=Q=JػA8OϞ\MzqJ i%~91Yqr^:f7OHϵ7<8Ujp2P+̏Zixp13f\)t3W<c#?֒&c
c:9c9 +endstream +endobj +599 0 obj +<< +/Type /Font +/Subtype /Type1 +/BaseFont /JBUEEG+LMMathSymbols9-Regular +/FontDescriptor 1125 0 R +/FirstChar 0 +/LastChar 0 +/Widths 1037 0 R +/Encoding 1035 0 R +/ToUnicode 1167 0 R +>> +endobj +1168 0 obj << /Length 977 /Filter /FlateDecode @@ -9136,20 +10732,20 @@ stream xmVMo:WԤd}EHLX6dh}9;
rp:\.gg)W|qߤMy7ͿCtuOޏ~<=~Ο涽O|;
_Xj('̻/k?Xh.KO?Kl?cBfC'hjEvg?@`dx']a,Aw>Zŏx_Dhmw³#6z1||Wlj-
ϛG+cבwlƔ\SOuJҀpaZ3P@1pm@ѪâA!cQB@bIJ! endstream endobj -404 0 obj +499 0 obj << /Type /Font /Subtype /Type1 -/BaseFont /DECJEJ+LMRoman10-Bold -/FontDescriptor 897 0 R +/BaseFont /DBMOAU+LMRoman10-Bold +/FontDescriptor 1071 0 R /FirstChar 48 -/LastChar 55 -/Widths 877 0 R -/Encoding 869 0 R -/ToUnicode 976 0 R +/LastChar 56 +/Widths 1052 0 R +/Encoding 1038 0 R +/ToUnicode 1168 0 R >> endobj -977 0 obj +1169 0 obj << /Length 975 /Filter /FlateDecode @@ -9159,20 +10755,20 @@ xmVnH+A)AI+J:weǁ"!G7_We >
1XR_}˞:+ϰnE>?sɥW_sSguxg*L%:SɥN*8=:->G}ZN}p3u3tpggw3t:;9Ygg[3=,3zgϭϜ|y#W`du0_|Q`ifڂ|H2Ԗ,oH}],/o'pphʉ,g!N,i{}?v endstream endobj -368 0 obj +410 0 obj << /Type /Font /Subtype /Type1 -/BaseFont /UKSWVF+LMRoman10-Regular -/FontDescriptor 913 0 R +/BaseFont /EAWJXH+LMRoman10-Regular +/FontDescriptor 1093 0 R /FirstChar 0 /LastChar 120 -/Widths 882 0 R -/Encoding 869 0 R -/ToUnicode 977 0 R +/Widths 1059 0 R +/Encoding 1038 0 R +/ToUnicode 1169 0 R >> endobj -978 0 obj +1170 0 obj << /Length 975 /Filter /FlateDecode @@ -9181,20 +10777,42 @@ stream xmVnH+A)AI+J:weǁ"!G7_We{{nnpяקo0s|ܵw%2+sRw;ķż_,\ endstream endobj -417 0 obj +513 0 obj << /Type /Font /Subtype /Type1 /BaseFont /FCWBYU+LMRoman5-Regular -/FontDescriptor 917 0 R +/FontDescriptor 1097 0 R /FirstChar 48 /LastChar 57 -/Widths 876 0 R -/Encoding 869 0 R -/ToUnicode 978 0 R +/Widths 1050 0 R +/Encoding 1038 0 R +/ToUnicode 1170 0 R >> endobj -979 0 obj +1171 0 obj +<< +/Length 975 +/Filter /FlateDecode +>> +stream +xmVnH+A)AI+J:weǁ"!G7_We{{nnpяקo0s|ܵw%2+sRw;ķż_<\ +endstream +endobj +570 0 obj +<< +/Type /Font +/Subtype /Type1 +/BaseFont /CNSQMW+LMRoman6-Regular +/FontDescriptor 1099 0 R +/FirstChar 49 +/LastChar 50 +/Widths 1044 0 R +/Encoding 1038 0 R +/ToUnicode 1171 0 R +>> +endobj +1172 0 obj << /Length 975 /Filter /FlateDecode @@ -9203,20 +10821,43 @@ stream xmVnH+A)AI+J:weǁ"!G7_We{{nnpяקo0s|ܵw%2+sRw;ķż_"\ endstream endobj -374 0 obj +454 0 obj << /Type /Font /Subtype /Type1 -/BaseFont /JALGHF+LMRoman7-Regular -/FontDescriptor 921 0 R -/FirstChar 48 -/LastChar 57 -/Widths 880 0 R -/Encoding 869 0 R -/ToUnicode 979 0 R +/BaseFont /TOLCSL+LMRoman7-Regular +/FontDescriptor 1101 0 R +/FirstChar 40 +/LastChar 110 +/Widths 1054 0 R +/Encoding 1038 0 R +/ToUnicode 1172 0 R >> endobj -980 0 obj +1173 0 obj +<< +/Length 975 +/Filter /FlateDecode +>> +stream +xmVMo8Wp҃k$P_@Mث#1Yd!~fIS`if
%毟+?Ώa~W8͗e1ir{cOOeY6wݴ?ixTN:!ZP?DgU1E)崟o|Z@7|@d-:i?Qp;h_Op椪W|x:/KaOr<P:nb!g
Q^AY7jp:TZoU$LL)OWnlT6c +:gLuJƔìTspCnwc<C=C1!N\3`
`i +endstream +endobj +573 0 obj +<< +/Type /Font +/Subtype /Type1 +/BaseFont /XJQAAF+LMRoman8-Regular +/FontDescriptor 1103 0 R +/FirstChar 43 +/LastChar 115 +/Widths 1040 0 R +/Encoding 1038 0 R +/ToUnicode 1173 0 R +>> +endobj +1174 0 obj << /Length 975 /Filter /FlateDecode @@ -9225,20 +10866,20 @@ stream xmVnH+A)AI+J:weǁ"!G7_We{{nnpяקo0s|ܵw%2+sRw;ķż_*\ endstream endobj -494 0 obj +574 0 obj << /Type /Font /Subtype /Type1 -/BaseFont /TAETSC+LMRoman9-Regular -/FontDescriptor 925 0 R -/FirstChar 49 -/LastChar 52 -/Widths 870 0 R -/Encoding 869 0 R -/ToUnicode 980 0 R +/BaseFont /IZRVXT+LMRoman9-Regular +/FontDescriptor 1105 0 R +/FirstChar 40 +/LastChar 116 +/Widths 1039 0 R +/Encoding 1038 0 R +/ToUnicode 1174 0 R >> endobj -981 0 obj +1175 0 obj << /Length 700 /Filter /FlateDecode @@ -9249,20 +10890,20 @@ xuTMo0+J!m0U !mTto4j{z<?xҺ{s^7tr zoZZgbT$Z|U endstream endobj -256 0 obj +304 0 obj << /Type /Font /Subtype /Type1 -/BaseFont /UKSWVF+LMRoman10-Regular -/FontDescriptor 913 0 R -/FirstChar 42 +/BaseFont /EAWJXH+LMRoman10-Regular +/FontDescriptor 1093 0 R +/FirstChar 136 /LastChar 136 -/Widths 890 0 R -/Encoding 859 0 R -/ToUnicode 981 0 R +/Widths 1064 0 R +/Encoding 1033 0 R +/ToUnicode 1175 0 R >> endobj -982 0 obj +1176 0 obj << /Length 701 /Filter /FlateDecode @@ -9272,151 +10913,253 @@ xuTn0+Cl m8(zu$:`K$Q4pufn}f)ɻ|tùA<]u6m;O\+$ޚv}qff8*h$iƃ}E>.>ttPRJ(:X/rߴu&^!3PZM5^F$o߇7V+1ؿһ`o7qIݞO!Znz/~N̿Z䄦buUWᴫ\k\r-Ve\[3sB
A
`ehHiJ}*>`! endstream endobj -502 0 obj +606 0 obj << /Type /Font /Subtype /Type1 -/BaseFont /HCGIQG+LMMono10-Regular -/FontDescriptor 943 0 R +/BaseFont /NDWLKG+LMMono10-Regular +/FontDescriptor 1129 0 R /FirstChar 39 /LastChar 39 -/Widths 868 0 R -/Encoding 859 0 R -/ToUnicode 982 0 R +/Widths 1034 0 R +/Encoding 1033 0 R +/ToUnicode 1176 0 R >> endobj -983 0 obj +294 0 obj << -/Length 700 -/Filter /FlateDecode +/Type /Pages +/Count 6 +/Parent 1177 0 R +/Kids [286 0 R 296 0 R 302 0 R 341 0 R 385 0 R 392 0 R] >> -stream -xuTMo0+J!m0U !mTto4j{z<?xҺ{s^7tr]u>v|tv ںQf|6'op݅uM{}ugf8&~
CCӵBK)}h;b1C0Ei~R%ޠ1PZM5N3wۏatMJ_a?H]0k7*ܞO!ZnkzwG'߬qrB\pUߵ.XI\9m?QCPRzcT{ -@r
0,jؘ@@t]DEQgOڥZk &Rg0y`!x8bǜם)`}qdBM -endstream endobj -611 0 obj +401 0 obj << -/Type /Font -/Subtype /Type1 -/BaseFont /WAMEOP+LMMono9-Regular -/FontDescriptor 949 0 R -/FirstChar 39 -/LastChar 39 -/Widths 860 0 R -/Encoding 859 0 R -/ToUnicode 983 0 R +/Type /Pages +/Count 6 +/Parent 1177 0 R +/Kids [398 0 R 407 0 R 418 0 R 429 0 R 434 0 R 446 0 R] >> endobj -246 0 obj +455 0 obj << /Type /Pages /Count 6 -/Parent 984 0 R -/Kids [238 0 R 248 0 R 254 0 R 294 0 R 326 0 R 330 0 R] +/Parent 1177 0 R +/Kids [451 0 R 457 0 R 463 0 R 470 0 R 475 0 R 483 0 R] >> endobj -345 0 obj +494 0 obj << /Type /Pages /Count 6 -/Parent 984 0 R -/Kids [337 0 R 347 0 R 357 0 R 365 0 R 371 0 R 377 0 R] +/Parent 1177 0 R +/Kids [490 0 R 496 0 R 503 0 R 510 0 R 515 0 R 522 0 R] >> endobj -387 0 obj +529 0 obj << /Type /Pages /Count 6 -/Parent 984 0 R -/Kids [383 0 R 391 0 R 396 0 R 400 0 R 406 0 R 414 0 R] +/Parent 1177 0 R +/Kids [526 0 R 532 0 R 542 0 R 547 0 R 556 0 R 560 0 R] >> endobj -424 0 obj +575 0 obj << /Type /Pages /Count 6 -/Parent 984 0 R -/Kids [421 0 R 426 0 R 434 0 R 440 0 R 444 0 R 449 0 R] +/Parent 1177 0 R +/Kids [566 0 R 577 0 R 584 0 R 590 0 R 596 0 R 603 0 R] >> endobj -457 0 obj +620 0 obj << /Type /Pages /Count 6 -/Parent 984 0 R -/Kids [454 0 R 461 0 R 466 0 R 471 0 R 477 0 R 484 0 R] +/Parent 1178 0 R +/Kids [616 0 R 623 0 R 630 0 R 634 0 R 638 0 R 642 0 R] >> endobj -495 0 obj +651 0 obj << /Type /Pages /Count 6 -/Parent 984 0 R -/Kids [489 0 R 499 0 R 504 0 R 508 0 R 515 0 R 520 0 R] +/Parent 1178 0 R +/Kids [648 0 R 654 0 R 659 0 R 663 0 R 667 0 R 671 0 R] >> endobj -529 0 obj +679 0 obj << /Type /Pages /Count 6 -/Parent 985 0 R -/Kids [526 0 R 531 0 R 535 0 R 539 0 R 544 0 R 548 0 R] +/Parent 1178 0 R +/Kids [676 0 R 681 0 R 686 0 R 693 0 R 698 0 R 706 0 R] >> endobj -561 0 obj +714 0 obj << /Type /Pages /Count 6 -/Parent 985 0 R -/Kids [553 0 R 563 0 R 569 0 R 578 0 R 582 0 R 586 0 R] +/Parent 1178 0 R +/Kids [710 0 R 716 0 R 724 0 R 732 0 R 741 0 R 750 0 R] >> endobj -594 0 obj +877 0 obj << /Type /Pages -/Count 6 -/Parent 985 0 R -/Kids [591 0 R 599 0 R 607 0 R 617 0 R 745 0 R 854 0 R] +/Count 2 +/Parent 1178 0 R +/Kids [873 0 R 1020 0 R] >> endobj -984 0 obj +1177 0 obj << /Type /Pages /Count 36 -/Parent 986 0 R -/Kids [246 0 R 345 0 R 387 0 R 424 0 R 457 0 R 495 0 R] +/Parent 1179 0 R +/Kids [294 0 R 401 0 R 455 0 R 494 0 R 529 0 R 575 0 R] >> endobj -985 0 obj +1178 0 obj << /Type /Pages -/Count 18 -/Parent 986 0 R -/Kids [529 0 R 561 0 R 594 0 R] +/Count 26 +/Parent 1179 0 R +/Kids [620 0 R 651 0 R 679 0 R 714 0 R 877 0 R] >> endobj -986 0 obj +1179 0 obj << /Type /Pages -/Count 54 -/Kids [984 0 R 985 0 R] +/Count 62 +/Kids [1177 0 R 1178 0 R] >> endobj -987 0 obj +1180 0 obj << /Type /Outlines /First 3 0 R -/Last 235 0 R -/Count 36 +/Last 283 0 R +/Count 40 +>> +endobj +283 0 obj +<< +/Title 284 0 R +/A 281 0 R +/Parent 1180 0 R +/Prev 271 0 R +>> +endobj +279 0 obj +<< +/Title 280 0 R +/A 277 0 R +/Parent 271 0 R +/Prev 275 0 R +>> +endobj +275 0 obj +<< +/Title 276 0 R +/A 273 0 R +/Parent 271 0 R +/Next 279 0 R +>> +endobj +271 0 obj +<< +/Title 272 0 R +/A 269 0 R +/Parent 1180 0 R +/Prev 27 0 R +/Next 283 0 R +/First 275 0 R +/Last 279 0 R +/Count 2 +>> +endobj +267 0 obj +<< +/Title 268 0 R +/A 265 0 R +/Parent 255 0 R +/Prev 263 0 R +>> +endobj +263 0 obj +<< +/Title 264 0 R +/A 261 0 R +/Parent 255 0 R +/Prev 259 0 R +/Next 267 0 R +>> +endobj +259 0 obj +<< +/Title 260 0 R +/A 257 0 R +/Parent 255 0 R +/Next 263 0 R +>> +endobj +255 0 obj +<< +/Title 256 0 R +/A 253 0 R +/Parent 27 0 R +/Prev 207 0 R +/First 259 0 R +/Last 267 0 R +/Count 3 +>> +endobj +251 0 obj +<< +/Title 252 0 R +/A 249 0 R +/Parent 247 0 R +>> +endobj +247 0 obj +<< +/Title 248 0 R +/A 245 0 R +/Parent 207 0 R +/Prev 243 0 R +/First 251 0 R +/Last 251 0 R +/Count -1 +>> +endobj +243 0 obj +<< +/Title 244 0 R +/A 241 0 R +/Parent 207 0 R +/Prev 239 0 R +/Next 247 0 R +>> +endobj +239 0 obj +<< +/Title 240 0 R +/A 237 0 R +/Parent 207 0 R +/Prev 235 0 R +/Next 243 0 R >> endobj 235 0 obj << /Title 236 0 R /A 233 0 R -/Parent 987 0 R +/Parent 207 0 R /Prev 223 0 R +/Next 239 0 R >> endobj 231 0 obj @@ -9439,19 +11182,19 @@ endobj << /Title 224 0 R /A 221 0 R -/Parent 987 0 R -/Prev 15 0 R +/Parent 207 0 R +/Prev 211 0 R /Next 235 0 R /First 227 0 R /Last 231 0 R -/Count 2 +/Count -2 >> endobj 219 0 obj << /Title 220 0 R /A 217 0 R -/Parent 207 0 R +/Parent 211 0 R /Prev 215 0 R >> endobj @@ -9459,8 +11202,7 @@ endobj << /Title 216 0 R /A 213 0 R -/Parent 207 0 R -/Prev 211 0 R +/Parent 211 0 R /Next 219 0 R >> endobj @@ -9469,18 +11211,22 @@ endobj /Title 212 0 R /A 209 0 R /Parent 207 0 R -/Next 215 0 R +/Next 223 0 R +/First 215 0 R +/Last 219 0 R +/Count -2 >> endobj 207 0 obj << /Title 208 0 R /A 205 0 R -/Parent 15 0 R -/Prev 163 0 R +/Parent 27 0 R +/Prev 147 0 R +/Next 255 0 R /First 211 0 R -/Last 219 0 R -/Count 3 +/Last 247 0 R +/Count 6 >> endobj 203 0 obj @@ -9494,7 +11240,7 @@ endobj << /Title 200 0 R /A 197 0 R -/Parent 163 0 R +/Parent 147 0 R /Prev 195 0 R /First 203 0 R /Last 203 0 R @@ -9505,8 +11251,8 @@ endobj << /Title 196 0 R /A 193 0 R -/Parent 163 0 R -/Prev 191 0 R +/Parent 147 0 R +/Prev 187 0 R /Next 199 0 R >> endobj @@ -9514,37 +11260,36 @@ endobj << /Title 192 0 R /A 189 0 R -/Parent 163 0 R -/Prev 187 0 R -/Next 195 0 R +/Parent 187 0 R >> endobj 187 0 obj << /Title 188 0 R /A 185 0 R -/Parent 163 0 R -/Prev 179 0 R -/Next 191 0 R +/Parent 147 0 R +/Prev 183 0 R +/Next 195 0 R +/First 191 0 R +/Last 191 0 R +/Count -1 >> endobj 183 0 obj << /Title 184 0 R /A 181 0 R -/Parent 179 0 R +/Parent 147 0 R +/Prev 167 0 R +/Next 187 0 R >> endobj 179 0 obj << /Title 180 0 R /A 177 0 R -/Parent 163 0 R -/Prev 167 0 R -/Next 187 0 R -/First 183 0 R -/Last 183 0 R -/Count -1 +/Parent 167 0 R +/Prev 175 0 R >> endobj 175 0 obj @@ -9553,6 +11298,7 @@ endobj /A 173 0 R /Parent 167 0 R /Prev 171 0 R +/Next 179 0 R >> endobj 171 0 obj @@ -9567,41 +11313,39 @@ endobj << /Title 168 0 R /A 165 0 R -/Parent 163 0 R -/Next 179 0 R +/Parent 147 0 R +/Prev 163 0 R +/Next 183 0 R /First 171 0 R -/Last 175 0 R -/Count -2 +/Last 179 0 R +/Count -3 >> endobj 163 0 obj << /Title 164 0 R /A 161 0 R -/Parent 15 0 R -/Prev 115 0 R -/Next 207 0 R -/First 167 0 R -/Last 199 0 R -/Count 6 +/Parent 147 0 R +/Prev 159 0 R +/Next 167 0 R >> endobj 159 0 obj << /Title 160 0 R /A 157 0 R -/Parent 155 0 R +/Parent 147 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 147 0 R -/First 159 0 R -/Last 159 0 R -/Count -1 +/Parent 147 0 R +/Prev 151 0 R +/Next 159 0 R >> endobj 151 0 obj @@ -9609,26 +11353,27 @@ endobj /Title 152 0 R /A 149 0 R /Parent 147 0 R +/Next 155 0 R >> endobj 147 0 obj << /Title 148 0 R /A 145 0 R -/Parent 115 0 R +/Parent 27 0 R /Prev 143 0 R -/Next 155 0 R +/Next 207 0 R /First 151 0 R -/Last 151 0 R -/Count -1 +/Last 199 0 R +/Count 9 >> endobj 143 0 obj << /Title 144 0 R /A 141 0 R -/Parent 115 0 R -/Prev 139 0 R +/Parent 27 0 R +/Prev 95 0 R /Next 147 0 R >> endobj @@ -9636,35 +11381,33 @@ endobj << /Title 140 0 R /A 137 0 R -/Parent 115 0 R -/Prev 131 0 R -/Next 143 0 R +/Parent 103 0 R +/Prev 135 0 R >> endobj 135 0 obj << /Title 136 0 R /A 133 0 R -/Parent 131 0 R +/Parent 103 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 +/Parent 103 0 R /Prev 127 0 R -/Next 139 0 R -/First 135 0 R -/Last 135 0 R -/Count -1 +/Next 135 0 R >> endobj 127 0 obj << /Title 128 0 R /A 125 0 R -/Parent 115 0 R +/Parent 103 0 R /Prev 123 0 R /Next 131 0 R >> @@ -9673,7 +11416,7 @@ endobj << /Title 124 0 R /A 121 0 R -/Parent 115 0 R +/Parent 103 0 R /Prev 119 0 R /Next 127 0 R >> @@ -9682,7 +11425,8 @@ endobj << /Title 120 0 R /A 117 0 R -/Parent 115 0 R +/Parent 103 0 R +/Prev 115 0 R /Next 123 0 R >> endobj @@ -9690,20 +11434,17 @@ endobj << /Title 116 0 R /A 113 0 R -/Parent 15 0 R +/Parent 103 0 R /Prev 111 0 R -/Next 163 0 R -/First 119 0 R -/Last 155 0 R -/Count 8 +/Next 119 0 R >> endobj 111 0 obj << /Title 112 0 R /A 109 0 R -/Parent 15 0 R -/Prev 79 0 R +/Parent 103 0 R +/Prev 107 0 R /Next 115 0 R >> endobj @@ -9711,25 +11452,26 @@ endobj << /Title 108 0 R /A 105 0 R -/Parent 83 0 R -/Prev 103 0 R +/Parent 103 0 R +/Next 111 0 R >> endobj 103 0 obj << /Title 104 0 R /A 101 0 R -/Parent 83 0 R +/Parent 95 0 R /Prev 99 0 R -/Next 107 0 R +/First 107 0 R +/Last 139 0 R +/Count -9 >> endobj 99 0 obj << /Title 100 0 R /A 97 0 R -/Parent 83 0 R -/Prev 95 0 R +/Parent 95 0 R /Next 103 0 R >> endobj @@ -9737,25 +11479,28 @@ endobj << /Title 96 0 R /A 93 0 R -/Parent 83 0 R -/Prev 91 0 R -/Next 99 0 R +/Parent 27 0 R +/Prev 31 0 R +/Next 143 0 R +/First 99 0 R +/Last 103 0 R +/Count 2 >> endobj 91 0 obj << /Title 92 0 R /A 89 0 R -/Parent 83 0 R +/Parent 59 0 R /Prev 87 0 R -/Next 95 0 R >> endobj 87 0 obj << /Title 88 0 R /A 85 0 R -/Parent 83 0 R +/Parent 59 0 R +/Prev 83 0 R /Next 91 0 R >> endobj @@ -9763,45 +11508,43 @@ endobj << /Title 84 0 R /A 81 0 R -/Parent 79 0 R -/First 87 0 R -/Last 107 0 R -/Count -6 +/Parent 59 0 R +/Prev 79 0 R +/Next 87 0 R >> endobj 79 0 obj << /Title 80 0 R /A 77 0 R -/Parent 15 0 R -/Prev 19 0 R -/Next 111 0 R -/First 83 0 R -/Last 83 0 R -/Count 1 +/Parent 59 0 R +/Prev 75 0 R +/Next 83 0 R >> endobj 75 0 obj << /Title 76 0 R /A 73 0 R -/Parent 19 0 R -/Prev 39 0 R +/Parent 59 0 R +/Prev 71 0 R +/Next 79 0 R >> endobj 71 0 obj << /Title 72 0 R /A 69 0 R -/Parent 39 0 R +/Parent 59 0 R /Prev 67 0 R +/Next 75 0 R >> endobj 67 0 obj << /Title 68 0 R /A 65 0 R -/Parent 39 0 R +/Parent 59 0 R /Prev 63 0 R /Next 71 0 R >> @@ -9810,8 +11553,7 @@ endobj << /Title 64 0 R /A 61 0 R -/Parent 39 0 R -/Prev 59 0 R +/Parent 59 0 R /Next 67 0 R >> endobj @@ -9819,25 +11561,26 @@ endobj << /Title 60 0 R /A 57 0 R -/Parent 39 0 R -/Prev 55 0 R -/Next 63 0 R +/Parent 31 0 R +/Prev 43 0 R +/First 63 0 R +/Last 91 0 R +/Count -8 >> endobj 55 0 obj << /Title 56 0 R /A 53 0 R -/Parent 39 0 R +/Parent 43 0 R /Prev 51 0 R -/Next 59 0 R >> endobj 51 0 obj << /Title 52 0 R /A 49 0 R -/Parent 39 0 R +/Parent 43 0 R /Prev 47 0 R /Next 55 0 R >> @@ -9846,8 +11589,7 @@ endobj << /Title 48 0 R /A 45 0 R -/Parent 39 0 R -/Prev 43 0 R +/Parent 43 0 R /Next 51 0 R >> endobj @@ -9855,28 +11597,30 @@ endobj << /Title 44 0 R /A 41 0 R -/Parent 39 0 R -/Next 47 0 R +/Parent 31 0 R +/Prev 35 0 R +/Next 59 0 R +/First 47 0 R +/Last 55 0 R +/Count -3 >> endobj 39 0 obj << /Title 40 0 R /A 37 0 R -/Parent 19 0 R -/Prev 27 0 R -/Next 75 0 R -/First 43 0 R -/Last 71 0 R -/Count -8 +/Parent 35 0 R >> endobj 35 0 obj << /Title 36 0 R /A 33 0 R -/Parent 27 0 R -/Prev 31 0 R +/Parent 31 0 R +/Next 43 0 R +/First 39 0 R +/Last 39 0 R +/Count -1 >> endobj 31 0 obj @@ -9884,50 +11628,46 @@ endobj /Title 32 0 R /A 29 0 R /Parent 27 0 R -/Next 35 0 R +/Next 95 0 R +/First 35 0 R +/Last 59 0 R +/Count 3 >> endobj 27 0 obj << /Title 28 0 R /A 25 0 R -/Parent 19 0 R -/Prev 23 0 R -/Next 39 0 R +/Parent 1180 0 R +/Prev 3 0 R +/Next 271 0 R /First 31 0 R -/Last 35 0 R -/Count -2 +/Last 255 0 R +/Count 29 >> endobj 23 0 obj << /Title 24 0 R /A 21 0 R -/Parent 19 0 R -/Next 27 0 R +/Parent 3 0 R +/Prev 11 0 R >> endobj 19 0 obj << /Title 20 0 R /A 17 0 R -/Parent 15 0 R -/Next 79 0 R -/First 23 0 R -/Last 75 0 R -/Count 4 +/Parent 11 0 R +/Prev 15 0 R >> endobj 15 0 obj << /Title 16 0 R /A 13 0 R -/Parent 987 0 R -/Prev 3 0 R -/Next 223 0 R -/First 19 0 R -/Last 207 0 R -/Count 28 +/Parent 11 0 R +/Next 19 0 R >> endobj 11 0 obj @@ -9936,6 +11676,10 @@ endobj /A 9 0 R /Parent 3 0 R /Prev 7 0 R +/Next 23 0 R +/First 15 0 R +/Last 19 0 R +/Count 2 >> endobj 7 0 obj @@ -9950,1239 +11694,1467 @@ endobj << /Title 4 0 R /A 1 0 R -/Parent 987 0 R -/Next 15 0 R +/Parent 1180 0 R +/Next 27 0 R /First 7 0 R -/Last 11 0 R -/Count 2 +/Last 23 0 R +/Count 5 >> endobj -988 0 obj +1181 0 obj << -/Names [(Doc-Start) 243 0 R (Hfootnote.1) 558 0 R (Hfootnote.2) 575 0 R (Item.1) 340 0 R (Item.2) 341 0 R (Item.3) 342 0 R] +/Names [(Doc-Start) 291 0 R (Hfootnote.1) 608 0 R (Hfootnote.2) 690 0 R (Item.1) 395 0 R (Item.2) 396 0 R (Item.3) 412 0 R] /Limits [(Doc-Start) (Item.3)] >> endobj -989 0 obj +1182 0 obj << -/Names [(Item.4) 343 0 R (Item.5) 344 0 R (chapter*.1) 297 0 R (chapter*.14) 234 0 R (chapter.1) 2 0 R (chapter.2) 14 0 R] -/Limits [(Item.4) (chapter.2)] +/Names [(Item.4) 413 0 R (Item.5) 414 0 R (Item.6) 421 0 R (Item.7) 422 0 R (chapter*.1) 344 0 R (chapter*.16) 282 0 R] +/Limits [(Item.4) (chapter*.16)] >> endobj -990 0 obj +1183 0 obj << -/Names [(chapter.3) 222 0 R (page.1) 242 0 R (page.10) 379 0 R (page.11) 385 0 R (page.12) 393 0 R (page.13) 398 0 R] -/Limits [(chapter.3) (page.13)] +/Names [(chapter.1) 2 0 R (chapter.2) 26 0 R (chapter.3) 270 0 R (page.1) 290 0 R (page.10) 448 0 R (page.11) 453 0 R] +/Limits [(chapter.1) (page.11)] >> endobj -991 0 obj +1184 0 obj << -/Names [(page.14) 402 0 R (page.15) 408 0 R (page.16) 416 0 R (page.17) 423 0 R (page.18) 428 0 R (page.19) 436 0 R] -/Limits [(page.14) (page.19)] +/Names [(page.12) 459 0 R (page.13) 465 0 R (page.14) 472 0 R (page.15) 477 0 R (page.16) 485 0 R (page.17) 492 0 R] +/Limits [(page.12) (page.17)] >> endobj -992 0 obj +1185 0 obj << -/Names [(page.2) 296 0 R (page.20) 442 0 R (page.21) 446 0 R (page.22) 451 0 R (page.23) 456 0 R (page.24) 463 0 R] -/Limits [(page.2) (page.24)] +/Names [(page.18) 498 0 R (page.19) 505 0 R (page.2) 343 0 R (page.20) 512 0 R (page.21) 517 0 R (page.22) 524 0 R] +/Limits [(page.18) (page.22)] >> endobj -993 0 obj +1186 0 obj << -/Names [(page.25) 468 0 R (page.26) 473 0 R (page.27) 479 0 R (page.28) 486 0 R (page.29) 491 0 R (page.3) 328 0 R] -/Limits [(page.25) (page.3)] +/Names [(page.23) 528 0 R (page.24) 534 0 R (page.25) 544 0 R (page.26) 549 0 R (page.27) 558 0 R (page.28) 562 0 R] +/Limits [(page.23) (page.28)] >> endobj -994 0 obj +1187 0 obj << -/Names [(page.30) 501 0 R (page.31) 506 0 R (page.32) 510 0 R (page.33) 517 0 R (page.34) 522 0 R (page.35) 528 0 R] -/Limits [(page.30) (page.35)] +/Names [(page.29) 568 0 R (page.3) 387 0 R (page.30) 579 0 R (page.31) 586 0 R (page.32) 592 0 R (page.33) 598 0 R] +/Limits [(page.29) (page.33)] >> endobj -995 0 obj +1188 0 obj << -/Names [(page.36) 533 0 R (page.37) 537 0 R (page.38) 541 0 R (page.39) 546 0 R (page.4) 332 0 R (page.40) 550 0 R] -/Limits [(page.36) (page.40)] +/Names [(page.34) 605 0 R (page.35) 618 0 R (page.36) 625 0 R (page.37) 632 0 R (page.38) 636 0 R (page.39) 640 0 R] +/Limits [(page.34) (page.39)] >> endobj -996 0 obj +1189 0 obj << -/Names [(page.41) 555 0 R (page.42) 565 0 R (page.43) 571 0 R (page.44) 580 0 R (page.45) 584 0 R (page.46) 588 0 R] -/Limits [(page.41) (page.46)] +/Names [(page.4) 394 0 R (page.40) 644 0 R (page.41) 650 0 R (page.42) 656 0 R (page.43) 661 0 R (page.44) 665 0 R] +/Limits [(page.4) (page.44)] >> endobj -997 0 obj +1190 0 obj << -/Names [(page.47) 593 0 R (page.48) 601 0 R (page.49) 609 0 R (page.5) 339 0 R (page.50) 619 0 R (page.51) 747 0 R] -/Limits [(page.47) (page.51)] +/Names [(page.45) 669 0 R (page.46) 673 0 R (page.47) 678 0 R (page.48) 683 0 R (page.49) 688 0 R (page.5) 400 0 R] +/Limits [(page.45) (page.5)] >> endobj -998 0 obj +1191 0 obj << -/Names [(page.52) 856 0 R (page.6) 349 0 R (page.7) 359 0 R (page.8) 367 0 R (page.9) 373 0 R (section*.10) 613 0 R] -/Limits [(page.52) (section*.10)] +/Names [(page.50) 695 0 R (page.51) 700 0 R (page.52) 708 0 R (page.53) 712 0 R (page.54) 718 0 R (page.55) 726 0 R] +/Limits [(page.50) (page.55)] >> endobj -999 0 obj +1192 0 obj << -/Names [(section*.11) 620 0 R (section*.12) 621 0 R (section*.13) 622 0 R (section*.2) 511 0 R (section*.3) 452 0 R (section*.4) 572 0 R] -/Limits [(section*.11) (section*.4)] +/Names [(page.56) 734 0 R (page.57) 743 0 R (page.58) 752 0 R (page.59) 875 0 R (page.6) 409 0 R (page.60) 1022 0 R] +/Limits [(page.56) (page.60)] >> endobj -1000 0 obj +1193 0 obj +<< +/Names [(page.7) 420 0 R (page.8) 431 0 R (page.9) 436 0 R (section*.10) 736 0 R (section*.11) 744 0 R (section*.12) 745 0 R] +/Limits [(page.7) (section*.12)] +>> +endobj +1194 0 obj +<< +/Names [(section*.13) 746 0 R (section*.14) 753 0 R (section*.15) 754 0 R (section*.2) 493 0 R (section*.3) 619 0 R (section*.4) 701 0 R] +/Limits [(section*.13) (section*.4)] +>> +endobj +1195 0 obj << -/Names [(section*.5) 574 0 R (section*.6) 602 0 R (section*.7) 603 0 R (section*.8) 610 0 R (section*.9) 612 0 R (section.1.1) 6 0 R] +/Names [(section*.5) 702 0 R (section*.6) 704 0 R (section*.7) 727 0 R (section*.8) 728 0 R (section*.9) 735 0 R (section.1.1) 6 0 R] /Limits [(section*.5) (section.1.1)] >> endobj -1001 0 obj +1196 0 obj << -/Names [(section.1.2) 10 0 R (section.2.1) 18 0 R (section.2.2) 78 0 R (section.2.3) 110 0 R (section.2.4) 114 0 R (section.2.5) 162 0 R] -/Limits [(section.1.2) (section.2.5)] +/Names [(section.1.2) 10 0 R (section.1.3) 22 0 R (section.2.1) 30 0 R (section.2.2) 94 0 R (section.2.3) 142 0 R (section.2.4) 146 0 R] +/Limits [(section.1.2) (section.2.4)] >> endobj -1002 0 obj +1197 0 obj << -/Names [(section.2.6) 206 0 R (section.3.1) 226 0 R (section.3.2) 230 0 R (subsection.2.1.1) 22 0 R (subsection.2.1.2) 26 0 R (subsection.2.1.3) 38 0 R] -/Limits [(section.2.6) (subsection.2.1.3)] +/Names [(section.2.5) 206 0 R (section.2.6) 254 0 R (section.3.1) 274 0 R (section.3.2) 278 0 R (subsection.1.2.1) 14 0 R (subsection.1.2.2) 18 0 R] +/Limits [(section.2.5) (subsection.1.2.2)] >> endobj -1003 0 obj +1198 0 obj << -/Names [(subsection.2.1.4) 74 0 R (subsection.2.2.1) 82 0 R (subsection.2.4.1) 118 0 R (subsection.2.4.2) 122 0 R (subsection.2.4.3) 126 0 R (subsection.2.4.4) 130 0 R] -/Limits [(subsection.2.1.4) (subsection.2.4.4)] +/Names [(subsection.2.1.1) 34 0 R (subsection.2.1.2) 42 0 R (subsection.2.1.3) 58 0 R (subsection.2.2.1) 98 0 R (subsection.2.2.2) 102 0 R (subsection.2.4.1) 150 0 R] +/Limits [(subsection.2.1.1) (subsection.2.4.1)] >> endobj -1004 0 obj +1199 0 obj << -/Names [(subsection.2.4.5) 138 0 R (subsection.2.4.6) 142 0 R (subsection.2.4.7) 146 0 R (subsection.2.4.8) 154 0 R (subsection.2.5.1) 166 0 R (subsection.2.5.2) 178 0 R] -/Limits [(subsection.2.4.5) (subsection.2.5.2)] +/Names [(subsection.2.4.2) 154 0 R (subsection.2.4.3) 158 0 R (subsection.2.4.4) 162 0 R (subsection.2.4.5) 166 0 R (subsection.2.4.6) 182 0 R (subsection.2.4.7) 186 0 R] +/Limits [(subsection.2.4.2) (subsection.2.4.7)] >> endobj -1005 0 obj +1200 0 obj << -/Names [(subsection.2.5.3) 186 0 R (subsection.2.5.4) 190 0 R (subsection.2.5.5) 194 0 R (subsection.2.5.6) 198 0 R (subsection.2.6.1) 210 0 R (subsection.2.6.2) 214 0 R] -/Limits [(subsection.2.5.3) (subsection.2.6.2)] +/Names [(subsection.2.4.8) 194 0 R (subsection.2.4.9) 198 0 R (subsection.2.5.1) 210 0 R (subsection.2.5.2) 222 0 R (subsection.2.5.3) 234 0 R (subsection.2.5.4) 238 0 R] +/Limits [(subsection.2.4.8) (subsection.2.5.4)] >> endobj -1006 0 obj +1201 0 obj << -/Names [(subsection.2.6.3) 218 0 R (subsubsection.2.1.2.1) 30 0 R (subsubsection.2.1.2.2) 34 0 R (subsubsection.2.1.3.1) 42 0 R (subsubsection.2.1.3.2) 46 0 R (subsubsection.2.1.3.3) 50 0 R] -/Limits [(subsection.2.6.3) (subsubsection.2.1.3.3)] +/Names [(subsection.2.5.5) 242 0 R (subsection.2.5.6) 246 0 R (subsection.2.6.1) 258 0 R (subsection.2.6.2) 262 0 R (subsection.2.6.3) 266 0 R (subsubsection.2.1.1.1) 38 0 R] +/Limits [(subsection.2.5.5) (subsubsection.2.1.1.1)] >> endobj -1007 0 obj +1202 0 obj << -/Names [(subsubsection.2.1.3.4) 54 0 R (subsubsection.2.1.3.5) 58 0 R (subsubsection.2.1.3.6) 62 0 R (subsubsection.2.1.3.7) 66 0 R (subsubsection.2.1.3.8) 70 0 R (subsubsection.2.2.1.1) 86 0 R] -/Limits [(subsubsection.2.1.3.4) (subsubsection.2.2.1.1)] +/Names [(subsubsection.2.1.2.1) 46 0 R (subsubsection.2.1.2.2) 50 0 R (subsubsection.2.1.2.3) 54 0 R (subsubsection.2.1.3.1) 62 0 R (subsubsection.2.1.3.2) 66 0 R (subsubsection.2.1.3.3) 70 0 R] +/Limits [(subsubsection.2.1.2.1) (subsubsection.2.1.3.3)] >> endobj -1008 0 obj +1203 0 obj << -/Names [(subsubsection.2.2.1.2) 90 0 R (subsubsection.2.2.1.3) 94 0 R (subsubsection.2.2.1.4) 98 0 R (subsubsection.2.2.1.5) 102 0 R (subsubsection.2.2.1.6) 106 0 R (subsubsection.2.4.4.1) 134 0 R] -/Limits [(subsubsection.2.2.1.2) (subsubsection.2.4.4.1)] +/Names [(subsubsection.2.1.3.4) 74 0 R (subsubsection.2.1.3.5) 78 0 R (subsubsection.2.1.3.6) 82 0 R (subsubsection.2.1.3.7) 86 0 R (subsubsection.2.1.3.8) 90 0 R (subsubsection.2.2.2.1) 106 0 R] +/Limits [(subsubsection.2.1.3.4) (subsubsection.2.2.2.1)] >> endobj -1009 0 obj +1204 0 obj << -/Names [(subsubsection.2.4.7.1) 150 0 R (subsubsection.2.4.8.1) 158 0 R (subsubsection.2.5.1.1) 170 0 R (subsubsection.2.5.1.2) 174 0 R (subsubsection.2.5.2.1) 182 0 R (subsubsection.2.5.6.1) 202 0 R] -/Limits [(subsubsection.2.4.7.1) (subsubsection.2.5.6.1)] +/Names [(subsubsection.2.2.2.2) 110 0 R (subsubsection.2.2.2.3) 114 0 R (subsubsection.2.2.2.4) 118 0 R (subsubsection.2.2.2.5) 122 0 R (subsubsection.2.2.2.6) 126 0 R (subsubsection.2.2.2.7) 130 0 R] +/Limits [(subsubsection.2.2.2.2) (subsubsection.2.2.2.7)] >> endobj -1010 0 obj +1205 0 obj +<< +/Names [(subsubsection.2.2.2.8) 134 0 R (subsubsection.2.2.2.9) 138 0 R (subsubsection.2.4.5.1) 170 0 R (subsubsection.2.4.5.2) 174 0 R (subsubsection.2.4.5.3) 178 0 R (subsubsection.2.4.7.1) 190 0 R] +/Limits [(subsubsection.2.2.2.8) (subsubsection.2.4.7.1)] +>> +endobj +1206 0 obj +<< +/Names [(subsubsection.2.4.9.1) 202 0 R (subsubsection.2.5.1.1) 214 0 R (subsubsection.2.5.1.2) 218 0 R (subsubsection.2.5.2.1) 226 0 R (subsubsection.2.5.2.2) 230 0 R (subsubsection.2.5.6.1) 250 0 R] +/Limits [(subsubsection.2.4.9.1) (subsubsection.2.5.6.1)] +>> +endobj +1207 0 obj << -/Names [(table.2.1) 360 0 R (table.2.2) 375 0 R (table.2.3) 394 0 R (table.2.4) 429 0 R (table.2.5) 437 0 R (table.2.6) 474 0 R] +/Names [(table.2.1) 437 0 R (table.2.2) 460 0 R (table.2.3) 479 0 R (table.2.4) 518 0 R (table.2.5) 535 0 R (table.2.6) 587 0 R] /Limits [(table.2.1) (table.2.6)] >> endobj -1011 0 obj +1208 0 obj << -/Names [(table.2.7) 492 0 R (table.2.8) 523 0 R] +/Names [(table.2.7) 621 0 R (table.2.8) 539 0 R] /Limits [(table.2.7) (table.2.8)] >> endobj -1012 0 obj +1209 0 obj << -/Kids [988 0 R 989 0 R 990 0 R 991 0 R 992 0 R 993 0 R] -/Limits [(Doc-Start) (page.3)] +/Kids [1181 0 R 1182 0 R 1183 0 R 1184 0 R 1185 0 R 1186 0 R] +/Limits [(Doc-Start) (page.28)] >> endobj -1013 0 obj +1210 0 obj << -/Kids [994 0 R 995 0 R 996 0 R 997 0 R 998 0 R 999 0 R] -/Limits [(page.30) (section*.4)] +/Kids [1187 0 R 1188 0 R 1189 0 R 1190 0 R 1191 0 R 1192 0 R] +/Limits [(page.29) (page.60)] >> endobj -1014 0 obj +1211 0 obj << -/Kids [1000 0 R 1001 0 R 1002 0 R 1003 0 R 1004 0 R 1005 0 R] -/Limits [(section*.5) (subsection.2.6.2)] +/Kids [1193 0 R 1194 0 R 1195 0 R 1196 0 R 1197 0 R 1198 0 R] +/Limits [(page.7) (subsection.2.4.1)] >> endobj -1015 0 obj +1212 0 obj << -/Kids [1006 0 R 1007 0 R 1008 0 R 1009 0 R 1010 0 R 1011 0 R] -/Limits [(subsection.2.6.3) (table.2.8)] +/Kids [1199 0 R 1200 0 R 1201 0 R 1202 0 R 1203 0 R 1204 0 R] +/Limits [(subsection.2.4.2) (subsubsection.2.2.2.7)] >> endobj -1016 0 obj +1213 0 obj +<< +/Kids [1205 0 R 1206 0 R 1207 0 R 1208 0 R] +/Limits [(subsubsection.2.2.2.8) (table.2.8)] +>> +endobj +1214 0 obj << -/Kids [1012 0 R 1013 0 R 1014 0 R 1015 0 R] +/Kids [1209 0 R 1210 0 R 1211 0 R 1212 0 R 1213 0 R] /Limits [(Doc-Start) (table.2.8)] >> endobj -1017 0 obj +1215 0 obj << -/Dests 1016 0 R +/Dests 1214 0 R >> endobj -1018 0 obj +1216 0 obj << /Type /Catalog -/Pages 986 0 R -/Outlines 987 0 R -/Names 1017 0 R +/Pages 1179 0 R +/Outlines 1180 0 R +/Names 1215 0 R /PageMode/UseOutlines/PageLabels<</Nums[0<</S/D>>1<</S/D>>2<</S/D>>]>> -/OpenAction 237 0 R +/OpenAction 285 0 R >> endobj -1019 0 obj +1217 0 obj << -/Producer (MiKTeX pdfTeX-1.40.25) -/Author(\376\377\000A\000n\000d\000r\000e\000w\000\040\000P\000a\000r\000s\000l\000o\000e\000,\000\040\000\050\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\000\051)/Title(\376\377\000n\000u\000m\000e\000r\000i\000c\000a\000-\000t\000a\000b\000l\000e\000s\000\040\000\040\000v\000e\000r\000s\000i\000o\000n\000\040\0003\000.\0001\000.\0000)/Subject()/Creator(LaTeX with hyperref)/Keywords() -/CreationDate (D:20230906080207+12'00') -/ModDate (D:20230906080207+12'00') +/Producer (MiKTeX pdfTeX-1.40.26) +/Author(\376\377\000A\000n\000d\000r\000e\000w\000\040\000P\000a\000r\000s\000l\000o\000e\000,\000\040\000\050\000`\000:\0001\0002\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\000\051)/Title(\376\377\000n\000u\000m\000e\000r\000i\000c\000a\000-\000t\000a\000b\000l\000e\000s\000\040\000\040\000v\000e\000r\000s\000i\000o\000n\000\040\0003\000.\0002\000.\0000)/Subject()/Creator(LaTeX with hyperref)/Keywords() +/CreationDate (D:20241120093205+13'00') +/ModDate (D:20241120093205+13'00') /Trapped /False -/PTEX.Fullbanner (This is MiKTeX-pdfTeX 4.15.0 (1.40.25)) +/PTEX.Fullbanner (This is MiKTeX-pdfTeX 4.19.0 (1.40.26)) >> endobj xref -0 1020 +0 1218 0000000000 65535 f 0000000015 00000 n -0000033530 00000 n -0000753815 00000 n +0000039174 00000 n +0000828439 00000 n 0000000060 00000 n 0000000159 00000 n -0000033590 00000 n -0000753745 00000 n +0000039358 00000 n +0000828369 00000 n 0000000206 00000 n 0000000333 00000 n -0000037221 00000 n -0000753674 00000 n +0000042770 00000 n +0000828249 00000 n 0000000380 00000 n -0000000498 00000 n -0000042087 00000 n -0000753548 00000 n -0000000544 00000 n -0000000695 00000 n -0000042148 00000 n -0000753438 00000 n -0000000743 00000 n -0000000901 00000 n -0000042209 00000 n -0000753364 00000 n -0000000954 00000 n -0000001223 00000 n -0000049022 00000 n -0000753240 00000 n -0000001276 00000 n -0000001568 00000 n -0000052320 00000 n -0000753166 00000 n -0000001626 00000 n -0000001721 00000 n -0000052381 00000 n -0000753092 00000 n -0000001779 00000 n -0000001958 00000 n -0000059332 00000 n -0000752968 00000 n -0000002011 00000 n -0000002284 00000 n -0000059393 00000 n -0000752894 00000 n -0000002342 00000 n -0000002495 00000 n -0000062061 00000 n -0000752807 00000 n -0000002553 00000 n -0000002681 00000 n -0000062122 00000 n -0000752720 00000 n -0000002739 00000 n -0000002897 00000 n -0000064950 00000 n -0000752633 00000 n -0000002955 00000 n -0000003161 00000 n -0000067828 00000 n -0000752546 00000 n -0000003219 00000 n -0000003433 00000 n -0000067889 00000 n -0000752459 00000 n -0000003491 00000 n -0000003708 00000 n -0000071177 00000 n -0000752372 00000 n -0000003766 00000 n -0000003957 00000 n -0000071238 00000 n -0000752298 00000 n -0000004015 00000 n -0000004226 00000 n -0000074187 00000 n -0000752224 00000 n -0000004279 00000 n -0000004495 00000 n -0000074248 00000 n -0000752100 00000 n -0000004543 00000 n -0000004716 00000 n -0000080166 00000 n -0000752001 00000 n -0000004769 00000 n -0000004955 00000 n -0000080227 00000 n -0000751927 00000 n -0000005013 00000 n -0000005186 00000 n -0000084362 00000 n -0000751840 00000 n -0000005244 00000 n -0000005460 00000 n -0000086672 00000 n -0000751753 00000 n -0000005518 00000 n -0000005724 00000 n -0000089620 00000 n -0000751664 00000 n -0000005782 00000 n -0000005941 00000 n -0000089681 00000 n -0000751573 00000 n -0000006000 00000 n -0000006235 00000 n -0000092568 00000 n -0000751495 00000 n -0000006294 00000 n -0000006453 00000 n -0000095556 00000 n -0000751404 00000 n -0000006502 00000 n -0000006748 00000 n -0000099175 00000 n -0000751274 00000 n -0000006797 00000 n -0000006976 00000 n -0000099237 00000 n -0000751195 00000 n -0000007030 00000 n -0000007303 00000 n -0000104882 00000 n -0000751102 00000 n -0000007357 00000 n -0000007588 00000 n -0000108847 00000 n -0000751009 00000 n -0000007642 00000 n -0000007829 00000 n -0000108909 00000 n -0000750877 00000 n -0000007883 00000 n -0000008038 00000 n -0000108971 00000 n -0000750812 00000 n -0000008097 00000 n -0000008251 00000 n -0000109033 00000 n -0000750719 00000 n -0000008305 00000 n -0000008487 00000 n -0000116543 00000 n -0000750626 00000 n -0000008541 00000 n -0000008784 00000 n -0000119620 00000 n -0000750494 00000 n -0000008838 00000 n -0000009071 00000 n -0000122817 00000 n -0000750429 00000 n -0000009130 00000 n -0000009391 00000 n -0000126169 00000 n -0000750311 00000 n -0000009445 00000 n -0000009584 00000 n -0000126231 00000 n -0000750246 00000 n -0000009643 00000 n -0000009807 00000 n -0000129144 00000 n -0000750116 00000 n -0000009856 00000 n -0000010038 00000 n -0000129206 00000 n -0000749998 00000 n -0000010092 00000 n -0000010289 00000 n -0000129268 00000 n -0000749919 00000 n -0000010348 00000 n -0000010522 00000 n -0000132431 00000 n -0000749840 00000 n -0000010581 00000 n -0000010750 00000 n -0000134968 00000 n -0000749708 00000 n -0000010804 00000 n -0000010931 00000 n -0000135030 00000 n -0000749643 00000 n -0000010990 00000 n -0000011211 00000 n -0000139801 00000 n -0000749550 00000 n -0000011265 00000 n -0000011533 00000 n -0000143277 00000 n -0000749457 00000 n -0000011587 00000 n -0000011787 00000 n -0000145891 00000 n -0000749364 00000 n -0000011841 00000 n -0000011995 00000 n -0000149721 00000 n -0000749246 00000 n -0000012049 00000 n -0000012305 00000 n -0000153323 00000 n -0000749181 00000 n -0000012364 00000 n -0000012574 00000 n -0000159222 00000 n -0000749065 00000 n -0000012623 00000 n -0000012742 00000 n -0000159284 00000 n -0000748986 00000 n -0000012796 00000 n -0000012892 00000 n -0000161864 00000 n -0000748893 00000 n -0000012946 00000 n -0000013121 00000 n -0000164383 00000 n -0000748814 00000 n -0000013175 00000 n -0000013355 00000 n -0000166990 00000 n -0000748684 00000 n -0000013402 00000 n -0000013531 00000 n -0000167052 00000 n -0000748605 00000 n -0000013580 00000 n -0000013815 00000 n -0000167114 00000 n -0000748526 00000 n -0000013864 00000 n -0000014049 00000 n -0000191998 00000 n -0000748447 00000 n -0000014098 00000 n -0000014151 00000 n -0000014545 00000 n -0000014677 00000 n -0000014967 00000 n -0000014201 00000 n -0000014844 00000 n -0000014905 00000 n -0000728930 00000 n -0000715385 00000 n -0000747036 00000 n -0000015730 00000 n -0000015618 00000 n -0000015052 00000 n -0000710873 00000 n -0000714255 00000 n -0000727800 00000 n -0000017754 00000 n -0000017642 00000 n -0000015828 00000 n -0000744902 00000 n -0000717641 00000 n -0000721027 00000 n -0000019857 00000 n -0000020008 00000 n -0000020161 00000 n -0000020315 00000 n -0000020467 00000 n -0000020621 00000 n -0000020778 00000 n -0000020936 00000 n -0000021100 00000 n -0000021264 00000 n -0000021422 00000 n -0000021585 00000 n -0000021747 00000 n -0000021909 00000 n -0000022072 00000 n -0000022235 00000 n -0000022399 00000 n -0000022562 00000 n -0000022726 00000 n -0000022883 00000 n -0000023037 00000 n -0000023195 00000 n -0000023359 00000 n -0000023523 00000 n -0000023687 00000 n -0000023851 00000 n -0000024015 00000 n -0000024178 00000 n -0000024331 00000 n -0000024484 00000 n -0000024642 00000 n -0000024800 00000 n -0000024958 00000 n -0000027093 00000 n -0000025238 00000 n -0000019469 00000 n -0000017891 00000 n -0000025115 00000 n -0000025176 00000 n -0000712002 00000 n -0000726671 00000 n -0000027257 00000 n -0000027415 00000 n -0000027573 00000 n -0000027731 00000 n -0000027895 00000 n -0000028053 00000 n -0000028217 00000 n -0000028371 00000 n -0000028529 00000 n -0000028693 00000 n -0000028857 00000 n -0000029015 00000 n -0000029179 00000 n -0000029337 00000 n -0000029490 00000 n -0000029648 00000 n -0000029806 00000 n -0000029970 00000 n -0000030124 00000 n -0000030282 00000 n -0000030440 00000 n -0000030598 00000 n -0000030749 00000 n -0000030902 00000 n -0000031056 00000 n -0000031271 00000 n -0000026761 00000 n -0000025362 00000 n -0000031210 00000 n -0000033650 00000 n -0000033357 00000 n -0000031382 00000 n -0000033469 00000 n -0000036688 00000 n -0000036850 00000 n -0000037002 00000 n -0000037591 00000 n -0000036540 00000 n -0000033761 00000 n -0000037160 00000 n -0000037282 00000 n -0000037344 00000 n -0000037405 00000 n -0000037467 00000 n -0000037529 00000 n -0000747153 00000 n -0000039371 00000 n -0000039198 00000 n -0000037715 00000 n -0000039310 00000 n -0000732058 00000 n -0000041414 00000 n -0000041568 00000 n -0000041720 00000 n -0000041872 00000 n -0000045706 00000 n -0000042332 00000 n -0000041258 00000 n -0000039482 00000 n -0000042026 00000 n -0000042270 00000 n -0000719897 00000 n -0000731187 00000 n -0000045865 00000 n -0000046084 00000 n -0000045566 00000 n -0000042482 00000 n -0000046023 00000 n -0000740192 00000 n -0000736629 00000 n -0000049145 00000 n -0000048849 00000 n -0000046234 00000 n -0000048961 00000 n -0000742685 00000 n -0000049083 00000 n -0000052442 00000 n -0000052147 00000 n -0000049347 00000 n -0000052259 00000 n -0000058635 00000 n -0000058793 00000 n -0000054915 00000 n -0000054742 00000 n -0000052605 00000 n -0000054854 00000 n -0000733809 00000 n -0000747270 00000 n -0000058957 00000 n -0000059121 00000 n -0000059454 00000 n -0000058479 00000 n -0000055065 00000 n -0000059271 00000 n -0000062000 00000 n -0000062183 00000 n -0000061827 00000 n -0000059617 00000 n -0000061939 00000 n -0000065011 00000 n -0000064777 00000 n -0000062359 00000 n -0000064889 00000 n -0000735563 00000 n -0000738948 00000 n -0000067950 00000 n -0000067655 00000 n -0000065201 00000 n -0000067767 00000 n -0000070482 00000 n -0000070641 00000 n -0000070795 00000 n -0000070954 00000 n -0000071299 00000 n -0000070326 00000 n -0000068153 00000 n -0000071116 00000 n -0000741439 00000 n -0000732934 00000 n -0000073973 00000 n -0000074308 00000 n -0000073841 00000 n -0000071501 00000 n -0000074126 00000 n -0000747387 00000 n -0000077506 00000 n -0000077272 00000 n -0000074471 00000 n -0000077384 00000 n -0000077445 00000 n -0000079947 00000 n -0000083814 00000 n -0000083973 00000 n -0000080350 00000 n -0000079815 00000 n -0000077682 00000 n -0000080105 00000 n -0000080288 00000 n -0000084137 00000 n -0000084423 00000 n -0000083666 00000 n -0000080513 00000 n -0000084301 00000 n -0000086733 00000 n -0000086499 00000 n -0000084599 00000 n -0000086611 00000 n -0000089406 00000 n -0000089743 00000 n -0000089274 00000 n -0000086896 00000 n -0000089559 00000 n -0000137735 00000 n -0000092630 00000 n -0000092395 00000 n -0000089906 00000 n -0000092507 00000 n -0000747504 00000 n -0000095336 00000 n -0000098796 00000 n -0000095618 00000 n -0000095204 00000 n -0000092793 00000 n -0000095495 00000 n -0000098955 00000 n -0000099299 00000 n -0000098656 00000 n -0000095768 00000 n -0000099114 00000 n -0000101696 00000 n -0000101977 00000 n -0000101564 00000 n -0000099462 00000 n -0000101854 00000 n -0000101915 00000 n -0000108463 00000 n -0000104944 00000 n -0000104709 00000 n -0000102127 00000 n +0000000508 00000 n +0000042831 00000 n +0000828175 00000 n +0000000561 00000 n +0000000709 00000 n +0000046187 00000 n +0000828101 00000 n +0000000762 00000 n +0000000920 00000 n +0000046248 00000 n +0000828028 00000 n +0000000968 00000 n +0000001086 00000 n +0000053047 00000 n +0000827901 00000 n +0000001132 00000 n +0000001283 00000 n +0000053108 00000 n +0000827791 00000 n +0000001331 00000 n +0000001492 00000 n +0000053169 00000 n +0000827680 00000 n +0000001545 00000 n +0000001817 00000 n +0000063896 00000 n +0000827619 00000 n +0000001875 00000 n +0000002028 00000 n +0000067097 00000 n +0000827495 00000 n +0000002081 00000 n +0000002373 00000 n +0000067158 00000 n +0000827421 00000 n +0000002431 00000 n +0000002526 00000 n +0000070360 00000 n +0000827334 00000 n +0000002584 00000 n +0000002806 00000 n +0000077897 00000 n +0000827260 00000 n +0000002864 00000 n +0000003037 00000 n +0000077958 00000 n +0000827149 00000 n +0000003090 00000 n +0000003386 00000 n +0000080730 00000 n +0000827075 00000 n +0000003444 00000 n +0000003661 00000 n +0000084621 00000 n +0000826988 00000 n +0000003719 00000 n +0000003877 00000 n +0000087533 00000 n +0000826901 00000 n +0000003935 00000 n +0000004063 00000 n +0000090813 00000 n +0000826814 00000 n +0000004121 00000 n +0000004330 00000 n +0000090874 00000 n +0000826727 00000 n +0000004388 00000 n +0000004602 00000 n +0000094853 00000 n +0000826640 00000 n +0000004660 00000 n +0000004900 00000 n +0000094914 00000 n +0000826553 00000 n +0000004958 00000 n +0000005053 00000 n +0000094975 00000 n +0000826479 00000 n +0000005111 00000 n +0000005302 00000 n +0000098220 00000 n +0000826354 00000 n +0000005350 00000 n +0000005523 00000 n +0000104994 00000 n +0000826278 00000 n +0000005576 00000 n +0000005725 00000 n +0000105055 00000 n +0000826162 00000 n +0000005779 00000 n +0000005966 00000 n +0000105117 00000 n +0000826083 00000 n +0000006025 00000 n +0000006199 00000 n +0000108203 00000 n +0000825990 00000 n +0000006258 00000 n +0000006427 00000 n +0000111725 00000 n +0000825897 00000 n +0000006486 00000 n +0000006645 00000 n +0000114688 00000 n +0000825804 00000 n +0000006704 00000 n +0000006901 00000 n +0000118823 00000 n +0000825711 00000 n +0000006960 00000 n +0000007167 00000 n +0000118885 00000 n +0000825618 00000 n +0000007226 00000 n +0000007385 00000 n +0000118947 00000 n +0000825525 00000 n +0000007444 00000 n +0000007679 00000 n +0000124814 00000 n +0000825432 00000 n +0000007738 00000 n +0000007905 00000 n +0000124876 00000 n +0000825353 00000 n +0000007964 00000 n +0000008126 00000 n +0000128723 00000 n +0000825262 00000 n +0000008175 00000 n +0000008421 00000 n +0000132296 00000 n +0000825132 00000 n +0000008470 00000 n +0000008649 00000 n +0000132358 00000 n +0000825053 00000 n +0000008703 00000 n +0000008976 00000 n +0000138590 00000 n +0000824960 00000 n +0000009030 00000 n +0000009261 00000 n +0000142359 00000 n +0000824867 00000 n +0000009315 00000 n +0000009502 00000 n +0000142421 00000 n +0000824774 00000 n +0000009556 00000 n +0000009703 00000 n +0000146932 00000 n +0000824642 00000 n +0000009757 00000 n +0000009939 00000 n +0000146994 00000 n +0000824563 00000 n +0000009998 00000 n +0000010193 00000 n +0000150323 00000 n +0000824470 00000 n +0000010252 00000 n +0000010452 00000 n +0000153825 00000 n +0000824391 00000 n +0000010511 00000 n +0000010729 00000 n +0000153887 00000 n +0000824298 00000 n +0000010783 00000 n +0000011036 00000 n +0000160722 00000 n +0000824166 00000 n +0000011090 00000 n +0000011323 00000 n +0000163684 00000 n +0000824101 00000 n +0000011382 00000 n +0000011643 00000 n +0000163746 00000 n +0000824008 00000 n +0000011697 00000 n +0000011920 00000 n +0000167340 00000 n +0000823890 00000 n +0000011974 00000 n +0000012113 00000 n +0000167402 00000 n +0000823825 00000 n +0000012172 00000 n +0000012336 00000 n +0000170518 00000 n +0000823695 00000 n +0000012385 00000 n +0000012572 00000 n +0000170578 00000 n +0000823577 00000 n +0000012626 00000 n +0000012823 00000 n +0000170640 00000 n +0000823498 00000 n +0000012882 00000 n +0000013056 00000 n +0000173460 00000 n +0000823419 00000 n +0000013115 00000 n +0000013284 00000 n +0000176524 00000 n +0000823287 00000 n +0000013338 00000 n +0000013465 00000 n +0000176586 00000 n +0000823208 00000 n +0000013524 00000 n +0000013745 00000 n +0000179354 00000 n +0000823129 00000 n +0000013804 00000 n +0000014072 00000 n +0000181764 00000 n +0000823036 00000 n +0000014126 00000 n +0000014394 00000 n +0000185525 00000 n +0000822943 00000 n +0000014448 00000 n +0000014708 00000 n +0000187908 00000 n +0000822850 00000 n +0000014762 00000 n +0000014916 00000 n +0000191862 00000 n +0000822732 00000 n +0000014970 00000 n +0000015226 00000 n +0000195631 00000 n +0000822667 00000 n +0000015285 00000 n +0000015495 00000 n +0000201584 00000 n +0000822551 00000 n +0000015544 00000 n +0000015663 00000 n +0000201646 00000 n +0000822472 00000 n +0000015717 00000 n +0000015813 00000 n +0000204749 00000 n +0000822379 00000 n +0000015867 00000 n +0000016042 00000 n +0000204811 00000 n +0000822300 00000 n +0000016096 00000 n +0000016276 00000 n +0000207761 00000 n +0000822169 00000 n +0000016323 00000 n +0000016452 00000 n +0000207823 00000 n +0000822090 00000 n +0000016501 00000 n +0000016736 00000 n +0000207947 00000 n +0000822011 00000 n +0000016785 00000 n +0000016970 00000 n +0000234116 00000 n +0000821931 00000 n +0000017019 00000 n +0000017072 00000 n +0000017472 00000 n +0000017604 00000 n +0000017894 00000 n +0000017122 00000 n +0000017771 00000 n +0000017832 00000 n +0000793802 00000 n +0000781330 00000 n +0000820282 00000 n +0000018681 00000 n +0000018569 00000 n +0000017979 00000 n +0000776798 00000 n +0000780195 00000 n +0000792667 00000 n +0000020580 00000 n +0000020468 00000 n +0000018779 00000 n +0000819108 00000 n +0000786997 00000 n +0000022664 00000 n +0000022815 00000 n +0000022968 00000 n +0000023122 00000 n +0000023279 00000 n +0000023437 00000 n +0000023591 00000 n +0000023743 00000 n +0000023897 00000 n +0000024054 00000 n +0000024217 00000 n +0000024375 00000 n +0000024537 00000 n +0000024701 00000 n +0000024864 00000 n +0000025021 00000 n +0000025185 00000 n +0000025347 00000 n +0000025511 00000 n +0000025675 00000 n +0000025839 00000 n +0000026003 00000 n +0000026167 00000 n +0000026330 00000 n +0000026484 00000 n +0000026642 00000 n +0000026800 00000 n +0000026964 00000 n +0000027128 00000 n +0000027292 00000 n +0000027456 00000 n +0000027620 00000 n +0000027784 00000 n +0000030549 00000 n +0000028071 00000 n +0000022276 00000 n +0000020704 00000 n +0000027948 00000 n +0000028009 00000 n +0000777932 00000 n +0000791533 00000 n +0000030713 00000 n +0000030877 00000 n +0000031031 00000 n +0000031184 00000 n +0000031342 00000 n +0000031500 00000 n +0000031658 00000 n +0000031816 00000 n +0000031974 00000 n +0000032138 00000 n +0000032302 00000 n +0000032466 00000 n +0000032624 00000 n +0000032782 00000 n +0000032946 00000 n +0000033104 00000 n +0000033262 00000 n +0000033426 00000 n +0000033580 00000 n +0000033738 00000 n +0000033902 00000 n +0000034066 00000 n +0000034224 00000 n +0000034388 00000 n +0000034552 00000 n +0000034710 00000 n +0000034867 00000 n +0000035024 00000 n +0000035181 00000 n +0000035344 00000 n +0000035497 00000 n +0000035655 00000 n +0000035813 00000 n +0000035971 00000 n +0000036123 00000 n +0000036276 00000 n +0000036430 00000 n +0000036645 00000 n +0000030121 00000 n +0000028195 00000 n +0000036584 00000 n +0000783596 00000 n +0000038792 00000 n +0000038955 00000 n +0000039418 00000 n +0000038652 00000 n +0000036756 00000 n +0000039113 00000 n +0000039234 00000 n +0000039296 00000 n +0000042892 00000 n +0000042597 00000 n +0000039529 00000 n +0000042709 00000 n +0000820400 00000 n +0000045477 00000 n +0000045636 00000 n +0000045800 00000 n +0000045964 00000 n +0000046495 00000 n +0000045321 00000 n +0000043003 00000 n +0000046126 00000 n +0000811873 00000 n +0000797658 00000 n +0000046309 00000 n +0000046371 00000 n +0000046433 00000 n +0000049182 00000 n +0000049341 00000 n +0000049690 00000 n +0000049042 00000 n +0000046658 00000 n +0000049505 00000 n +0000049566 00000 n +0000049628 00000 n +0000052212 00000 n +0000052366 00000 n +0000052520 00000 n +0000052674 00000 n +0000052828 00000 n +0000053229 00000 n +0000052048 00000 n +0000049814 00000 n +0000052986 00000 n +0000059615 00000 n +0000056209 00000 n +0000055974 00000 n +0000053379 00000 n +0000056086 00000 n +0000056147 00000 n +0000785862 00000 n +0000796069 00000 n +0000804017 00000 n +0000059779 00000 n +0000059937 00000 n +0000060096 00000 n +0000060254 00000 n +0000060479 00000 n +0000059451 00000 n +0000056385 00000 n +0000060418 00000 n +0000063676 00000 n +0000063957 00000 n +0000063544 00000 n +0000060629 00000 n +0000063835 00000 n +0000815627 00000 n +0000820518 00000 n +0000067218 00000 n +0000066862 00000 n +0000064133 00000 n +0000066974 00000 n +0000067035 00000 n +0000070135 00000 n +0000070421 00000 n +0000070003 00000 n +0000067407 00000 n +0000070299 00000 n +0000074265 00000 n +0000074423 00000 n +0000074585 00000 n +0000074810 00000 n +0000074117 00000 n +0000070597 00000 n +0000074749 00000 n +0000077687 00000 n +0000078019 00000 n +0000077555 00000 n +0000074934 00000 n +0000077836 00000 n +0000800300 00000 n +0000080668 00000 n +0000080295 00000 n +0000080448 00000 n +0000080791 00000 n +0000080155 00000 n +0000078208 00000 n +0000080607 00000 n +0000084030 00000 n +0000084184 00000 n +0000084335 00000 n +0000084682 00000 n +0000083882 00000 n +0000080993 00000 n +0000084498 00000 n +0000084559 00000 n +0000820636 00000 n +0000087594 00000 n +0000087360 00000 n +0000084858 00000 n +0000087472 00000 n +0000810624 00000 n +0000802946 00000 n +0000094152 00000 n +0000090935 00000 n +0000090640 00000 n +0000087810 00000 n +0000090752 00000 n +0000094315 00000 n +0000094469 00000 n +0000094633 00000 n +0000095035 00000 n +0000093996 00000 n +0000091138 00000 n +0000094792 00000 n +0000813125 00000 n +0000098281 00000 n +0000097986 00000 n +0000095211 00000 n +0000098098 00000 n +0000098159 00000 n +0000101533 00000 n +0000101697 00000 n +0000101917 00000 n +0000101393 00000 n +0000098470 00000 n +0000101856 00000 n +0000105179 00000 n 0000104821 00000 n -0000737695 00000 n -0000108627 00000 n -0000112483 00000 n -0000109095 00000 n -0000108323 00000 n -0000105146 00000 n -0000108786 00000 n -0000112635 00000 n -0000112908 00000 n -0000112343 00000 n -0000109284 00000 n -0000112785 00000 n -0000112846 00000 n -0000734684 00000 n -0000743931 00000 n -0000747621 00000 n -0000116169 00000 n -0000116330 00000 n -0000116604 00000 n -0000116029 00000 n -0000113047 00000 n -0000116482 00000 n -0000745876 00000 n -0000119682 00000 n -0000119447 00000 n -0000116794 00000 n -0000119559 00000 n -0000122879 00000 n -0000122582 00000 n -0000119885 00000 n -0000122694 00000 n -0000122755 00000 n -0000125795 00000 n -0000125949 00000 n -0000126293 00000 n -0000125655 00000 n -0000123042 00000 n -0000126108 00000 n -0000128857 00000 n -0000129330 00000 n -0000128725 00000 n -0000126469 00000 n -0000129021 00000 n -0000129082 00000 n -0000132211 00000 n -0000132492 00000 n -0000132079 00000 n -0000129519 00000 n -0000132370 00000 n -0000747738 00000 n -0000135092 00000 n -0000134795 00000 n -0000132734 00000 n -0000134907 00000 n -0000137797 00000 n -0000137562 00000 n -0000135307 00000 n -0000137674 00000 n -0000139863 00000 n -0000139628 00000 n -0000137986 00000 n -0000139740 00000 n -0000143053 00000 n -0000143339 00000 n -0000142921 00000 n -0000140026 00000 n -0000143216 00000 n -0000145953 00000 n -0000145718 00000 n -0000143528 00000 n -0000145830 00000 n -0000149507 00000 n -0000149844 00000 n -0000149375 00000 n -0000146142 00000 n -0000149660 00000 n -0000722156 00000 n -0000716514 00000 n -0000149782 00000 n -0000718769 00000 n -0000730059 00000 n -0000747855 00000 n -0000153385 00000 n +0000102067 00000 n +0000104933 00000 n +0000820754 00000 n +0000107928 00000 n +0000108265 00000 n +0000107796 00000 n +0000105355 00000 n +0000108080 00000 n +0000108141 00000 n +0000805089 00000 n +0000798539 00000 n +0000807227 00000 n +0000173398 00000 n +0000111501 00000 n +0000111785 00000 n +0000111369 00000 n +0000108519 00000 n +0000111664 00000 n +0000802062 00000 n +0000114750 00000 n +0000114515 00000 n +0000111975 00000 n +0000114627 00000 n +0000117958 00000 n +0000118112 00000 n +0000118275 00000 n +0000118434 00000 n +0000118598 00000 n +0000119009 00000 n +0000117794 00000 n +0000114913 00000 n +0000118762 00000 n +0000121913 00000 n +0000121740 00000 n +0000119172 00000 n +0000121852 00000 n +0000124599 00000 n +0000128509 00000 n +0000124938 00000 n +0000124467 00000 n +0000122050 00000 n +0000124753 00000 n +0000801181 00000 n +0000814376 00000 n +0000799419 00000 n +0000808298 00000 n +0000816879 00000 n +0000818131 00000 n +0000820872 00000 n +0000128785 00000 n +0000128377 00000 n +0000125207 00000 n +0000128662 00000 n +0000131771 00000 n +0000131930 00000 n +0000132082 00000 n +0000132420 00000 n +0000131623 00000 n +0000129026 00000 n +0000132235 00000 n +0000135150 00000 n +0000138370 00000 n +0000135212 00000 n +0000134977 00000 n +0000132570 00000 n +0000135089 00000 n +0000141825 00000 n +0000141987 00000 n +0000138651 00000 n +0000138238 00000 n +0000135440 00000 n +0000138529 00000 n +0000809367 00000 n +0000806159 00000 n +0000142141 00000 n +0000142545 00000 n +0000141677 00000 n +0000138921 00000 n +0000142298 00000 n +0000820088 00000 n +0000782464 00000 n +0000142483 00000 n +0000784729 00000 n +0000794936 00000 n +0000146341 00000 n +0000146493 00000 n +0000146657 00000 n +0000150036 00000 n +0000147056 00000 n +0000146193 00000 n +0000142803 00000 n +0000146809 00000 n +0000146870 00000 n +0000820990 00000 n +0000150261 00000 n +0000150385 00000 n +0000149904 00000 n +0000147220 00000 n +0000150200 00000 n +0000153298 00000 n +0000153450 00000 n +0000153611 00000 n +0000153949 00000 n 0000153150 00000 n -0000150089 00000 n -0000153262 00000 n -0000156513 00000 n -0000156667 00000 n -0000157067 00000 n -0000156373 00000 n -0000153574 00000 n -0000156821 00000 n -0000156882 00000 n -0000725540 00000 n -0000156943 00000 n -0000157005 00000 n -0000723283 00000 n -0000159346 00000 n -0000159049 00000 n -0000157286 00000 n -0000159161 00000 n -0000161926 00000 n -0000161691 00000 n -0000159509 00000 n -0000161803 00000 n -0000164445 00000 n -0000164210 00000 n -0000162090 00000 n -0000164322 00000 n -0000713130 00000 n -0000165163 00000 n -0000164990 00000 n -0000164609 00000 n -0000165102 00000 n -0000747972 00000 n -0000166611 00000 n -0000166770 00000 n -0000169097 00000 n -0000167298 00000 n -0000166471 00000 n -0000165261 00000 n -0000166929 00000 n -0000167174 00000 n -0000167236 00000 n -0000169255 00000 n -0000169409 00000 n -0000169814 00000 n -0000168949 00000 n -0000167448 00000 n -0000169568 00000 n -0000169629 00000 n -0000746847 00000 n -0000169691 00000 n -0000169752 00000 n -0000171449 00000 n -0000171602 00000 n -0000172002 00000 n -0000171309 00000 n -0000169939 00000 n -0000171755 00000 n -0000171816 00000 n -0000171878 00000 n -0000171940 00000 n -0000174753 00000 n -0000174902 00000 n -0000175052 00000 n -0000175202 00000 n -0000175350 00000 n -0000175500 00000 n -0000175650 00000 n -0000175800 00000 n -0000175949 00000 n -0000176099 00000 n -0000176249 00000 n -0000176399 00000 n -0000176548 00000 n -0000176697 00000 n -0000176847 00000 n -0000176996 00000 n -0000177144 00000 n -0000177294 00000 n -0000177443 00000 n -0000177593 00000 n -0000177742 00000 n -0000177892 00000 n -0000178042 00000 n -0000178191 00000 n -0000178340 00000 n -0000178487 00000 n -0000178635 00000 n -0000178784 00000 n -0000178933 00000 n -0000179082 00000 n -0000179232 00000 n -0000179382 00000 n -0000179532 00000 n -0000179682 00000 n -0000179832 00000 n -0000179982 00000 n -0000180132 00000 n -0000180282 00000 n -0000180432 00000 n -0000180581 00000 n -0000180731 00000 n -0000180880 00000 n -0000181030 00000 n -0000181178 00000 n -0000181327 00000 n -0000181477 00000 n -0000181625 00000 n -0000181774 00000 n -0000181922 00000 n -0000182072 00000 n -0000182222 00000 n -0000182372 00000 n -0000182522 00000 n -0000182672 00000 n -0000182821 00000 n -0000182971 00000 n -0000183121 00000 n -0000183271 00000 n -0000183420 00000 n -0000183570 00000 n -0000183719 00000 n -0000183868 00000 n -0000184016 00000 n -0000184166 00000 n -0000184315 00000 n -0000184465 00000 n -0000184615 00000 n -0000184765 00000 n -0000184915 00000 n -0000185062 00000 n -0000185211 00000 n -0000185361 00000 n -0000185511 00000 n -0000185661 00000 n -0000185811 00000 n -0000185960 00000 n -0000186110 00000 n -0000186260 00000 n -0000186410 00000 n -0000186560 00000 n -0000186710 00000 n -0000186859 00000 n -0000187009 00000 n -0000187159 00000 n -0000187309 00000 n -0000187459 00000 n -0000187607 00000 n -0000187755 00000 n -0000187904 00000 n -0000188054 00000 n -0000188203 00000 n -0000188351 00000 n -0000188498 00000 n -0000188645 00000 n -0000188795 00000 n -0000188945 00000 n -0000189094 00000 n -0000189244 00000 n -0000189394 00000 n -0000189544 00000 n -0000189693 00000 n -0000189843 00000 n -0000189992 00000 n -0000190142 00000 n -0000190292 00000 n -0000190441 00000 n -0000190591 00000 n -0000190740 00000 n -0000190890 00000 n -0000191039 00000 n -0000191189 00000 n -0000191339 00000 n -0000191489 00000 n -0000191638 00000 n -0000191787 00000 n -0000194778 00000 n -0000194927 00000 n -0000195076 00000 n -0000195226 00000 n -0000195375 00000 n -0000195524 00000 n -0000192060 00000 n -0000173709 00000 n -0000172139 00000 n -0000191937 00000 n -0000724411 00000 n -0000195672 00000 n -0000195821 00000 n -0000195970 00000 n -0000196120 00000 n -0000196269 00000 n -0000196418 00000 n -0000196568 00000 n -0000196717 00000 n -0000196865 00000 n -0000197014 00000 n -0000197163 00000 n -0000197311 00000 n -0000197460 00000 n -0000197608 00000 n -0000197757 00000 n -0000197907 00000 n -0000198056 00000 n -0000198206 00000 n -0000198355 00000 n -0000198505 00000 n -0000198655 00000 n -0000198805 00000 n -0000198955 00000 n -0000199104 00000 n -0000199254 00000 n -0000199401 00000 n -0000199549 00000 n -0000199698 00000 n -0000199848 00000 n -0000199997 00000 n -0000200147 00000 n -0000200297 00000 n -0000200447 00000 n -0000200597 00000 n -0000200747 00000 n -0000200894 00000 n -0000201041 00000 n -0000201189 00000 n -0000201334 00000 n -0000201483 00000 n -0000201630 00000 n -0000201778 00000 n -0000201927 00000 n -0000202077 00000 n -0000202227 00000 n -0000202377 00000 n -0000202527 00000 n -0000202677 00000 n -0000202827 00000 n -0000202977 00000 n -0000203127 00000 n -0000203275 00000 n -0000203423 00000 n -0000203572 00000 n -0000203722 00000 n -0000203871 00000 n -0000204021 00000 n -0000204171 00000 n -0000204321 00000 n -0000204470 00000 n -0000204618 00000 n -0000204765 00000 n -0000204911 00000 n -0000205058 00000 n -0000205207 00000 n -0000205357 00000 n -0000205507 00000 n -0000205657 00000 n -0000205806 00000 n -0000205956 00000 n -0000206105 00000 n -0000206255 00000 n -0000206404 00000 n -0000206552 00000 n -0000206701 00000 n -0000206850 00000 n -0000206999 00000 n -0000207148 00000 n -0000207296 00000 n -0000207446 00000 n -0000207596 00000 n -0000207746 00000 n -0000207896 00000 n -0000208044 00000 n -0000208193 00000 n -0000208343 00000 n -0000208492 00000 n -0000208640 00000 n -0000208789 00000 n -0000208939 00000 n -0000209088 00000 n -0000209238 00000 n -0000209386 00000 n -0000209536 00000 n -0000209686 00000 n -0000209836 00000 n -0000209986 00000 n -0000210135 00000 n -0000210285 00000 n -0000210435 00000 n -0000210584 00000 n -0000210733 00000 n -0000210883 00000 n -0000211033 00000 n -0000211243 00000 n -0000193774 00000 n -0000192199 00000 n -0000211182 00000 n -0000708678 00000 n -0000211369 00000 n -0000709833 00000 n -0000211502 00000 n -0000211525 00000 n -0000211550 00000 n -0000211705 00000 n -0000212252 00000 n -0000212693 00000 n -0000213314 00000 n -0000213431 00000 n -0000213456 00000 n -0000709586 00000 n -0000213479 00000 n -0000709176 00000 n -0000213522 00000 n -0000709365 00000 n -0000213845 00000 n -0000214171 00000 n -0000214488 00000 n -0000214567 00000 n -0000214618 00000 n -0000214641 00000 n -0000215233 00000 n -0000215312 00000 n -0000215960 00000 n -0000216633 00000 n -0000217024 00000 n -0000217621 00000 n -0000218244 00000 n -0000218619 00000 n -0000219176 00000 n -0000219782 00000 n -0000220189 00000 n -0000220538 00000 n -0000220929 00000 n -0000221694 00000 n -0000222470 00000 n -0000222912 00000 n -0000223365 00000 n -0000253185 00000 n -0000253577 00000 n -0000283370 00000 n -0000283767 00000 n -0000303159 00000 n -0000303389 00000 n -0000311115 00000 n -0000311438 00000 n -0000314791 00000 n -0000315032 00000 n -0000319358 00000 n -0000319611 00000 n -0000323083 00000 n -0000323325 00000 n -0000325847 00000 n -0000326083 00000 n -0000363901 00000 n -0000364529 00000 n -0000388736 00000 n -0000389060 00000 n -0000410256 00000 n -0000410531 00000 n -0000425647 00000 n -0000425887 00000 n -0000448852 00000 n -0000449140 00000 n -0000475409 00000 n -0000475712 00000 n -0000506254 00000 n -0000506706 00000 n -0000527228 00000 n -0000527563 00000 n -0000534001 00000 n -0000534234 00000 n -0000546412 00000 n -0000546661 00000 n -0000554802 00000 n -0000555043 00000 n -0000573234 00000 n -0000573544 00000 n -0000577714 00000 n -0000578070 00000 n -0000581075 00000 n -0000581334 00000 n -0000608184 00000 n -0000608543 00000 n -0000640037 00000 n -0000640633 00000 n -0000661033 00000 n -0000661311 00000 n -0000682014 00000 n -0000682279 00000 n -0000708224 00000 n -0000709933 00000 n -0000711062 00000 n -0000712191 00000 n -0000713317 00000 n -0000714447 00000 n -0000715577 00000 n -0000716704 00000 n -0000717832 00000 n -0000718960 00000 n -0000720088 00000 n -0000721218 00000 n -0000722345 00000 n -0000723473 00000 n -0000724601 00000 n -0000725731 00000 n -0000726861 00000 n -0000727991 00000 n -0000729121 00000 n -0000730249 00000 n -0000731377 00000 n -0000732255 00000 n -0000733130 00000 n -0000734005 00000 n -0000734880 00000 n -0000735758 00000 n -0000736826 00000 n -0000737890 00000 n -0000739136 00000 n -0000740383 00000 n -0000741629 00000 n -0000742875 00000 n -0000744121 00000 n -0000745094 00000 n -0000746066 00000 n -0000748089 00000 n -0000748207 00000 n -0000748301 00000 n -0000748371 00000 n -0000753922 00000 n -0000754100 00000 n -0000754277 00000 n -0000754450 00000 n -0000754620 00000 n -0000754788 00000 n -0000754956 00000 n -0000755126 00000 n -0000755295 00000 n -0000755465 00000 n -0000755634 00000 n -0000755808 00000 n -0000756006 00000 n -0000756201 00000 n -0000756401 00000 n -0000756621 00000 n -0000756862 00000 n -0000757105 00000 n -0000757348 00000 n -0000757616 00000 n -0000757893 00000 n -0000758173 00000 n -0000758456 00000 n -0000758643 00000 n -0000758750 00000 n -0000758861 00000 n -0000758974 00000 n -0000759102 00000 n -0000759229 00000 n -0000759331 00000 n -0000759371 00000 n -0000759550 00000 n +0000150589 00000 n +0000153764 00000 n +0000157209 00000 n +0000157036 00000 n +0000154126 00000 n +0000157148 00000 n +0000160784 00000 n +0000160549 00000 n +0000157386 00000 n +0000160661 00000 n +0000163807 00000 n +0000163511 00000 n +0000160947 00000 n +0000163623 00000 n +0000166972 00000 n +0000167126 00000 n +0000167464 00000 n +0000166832 00000 n +0000163983 00000 n +0000167279 00000 n +0000821108 00000 n +0000170304 00000 n +0000170702 00000 n +0000170172 00000 n +0000167680 00000 n +0000170457 00000 n +0000176305 00000 n +0000173522 00000 n +0000173225 00000 n +0000170878 00000 n +0000173337 00000 n +0000176648 00000 n +0000176173 00000 n +0000173764 00000 n +0000176463 00000 n +0000179416 00000 n +0000179181 00000 n +0000176863 00000 n +0000179293 00000 n +0000181826 00000 n +0000181591 00000 n +0000179605 00000 n +0000181703 00000 n +0000185312 00000 n +0000185585 00000 n +0000185180 00000 n +0000182002 00000 n +0000185464 00000 n +0000821226 00000 n +0000187970 00000 n +0000187735 00000 n +0000185774 00000 n +0000187847 00000 n +0000191647 00000 n +0000191986 00000 n +0000191515 00000 n +0000188133 00000 n +0000191801 00000 n +0000788131 00000 n +0000191924 00000 n +0000198713 00000 n +0000195693 00000 n +0000195458 00000 n +0000192257 00000 n +0000195570 00000 n +0000796775 00000 n +0000199113 00000 n +0000198581 00000 n +0000195922 00000 n +0000198866 00000 n +0000198927 00000 n +0000198989 00000 n +0000790397 00000 n +0000199051 00000 n +0000201708 00000 n +0000201411 00000 n +0000199316 00000 n +0000201523 00000 n +0000204873 00000 n +0000204576 00000 n +0000201872 00000 n +0000204688 00000 n +0000779065 00000 n +0000821344 00000 n +0000205706 00000 n +0000205533 00000 n +0000205050 00000 n +0000205645 00000 n +0000207067 00000 n +0000207219 00000 n +0000207377 00000 n +0000207541 00000 n +0000208071 00000 n +0000206911 00000 n +0000205817 00000 n +0000207700 00000 n +0000207885 00000 n +0000208009 00000 n +0000209962 00000 n +0000210121 00000 n +0000210465 00000 n +0000209822 00000 n +0000208234 00000 n +0000210280 00000 n +0000210341 00000 n +0000210403 00000 n +0000212294 00000 n +0000212448 00000 n +0000212607 00000 n +0000213006 00000 n +0000212146 00000 n +0000210576 00000 n +0000212760 00000 n +0000212821 00000 n +0000212883 00000 n +0000212944 00000 n +0000214527 00000 n +0000214681 00000 n +0000215025 00000 n +0000214387 00000 n +0000213131 00000 n +0000214840 00000 n +0000214901 00000 n +0000214963 00000 n +0000217765 00000 n +0000217914 00000 n +0000218064 00000 n +0000218214 00000 n +0000218363 00000 n +0000218512 00000 n +0000218661 00000 n +0000218811 00000 n +0000218961 00000 n +0000219111 00000 n +0000219260 00000 n +0000219409 00000 n +0000219559 00000 n +0000219707 00000 n +0000219857 00000 n +0000220005 00000 n +0000220154 00000 n +0000220303 00000 n +0000220451 00000 n +0000220600 00000 n +0000220750 00000 n +0000220900 00000 n +0000221049 00000 n +0000221199 00000 n +0000221349 00000 n +0000221498 00000 n +0000221648 00000 n +0000221798 00000 n +0000221948 00000 n +0000222095 00000 n +0000222243 00000 n +0000222393 00000 n +0000222543 00000 n +0000222693 00000 n +0000222843 00000 n +0000222993 00000 n +0000223142 00000 n +0000223292 00000 n +0000223439 00000 n +0000223589 00000 n +0000223739 00000 n +0000223889 00000 n +0000224039 00000 n +0000224189 00000 n +0000224338 00000 n +0000224488 00000 n +0000224637 00000 n +0000224787 00000 n +0000224937 00000 n +0000225086 00000 n +0000225235 00000 n +0000225385 00000 n +0000225535 00000 n +0000225684 00000 n +0000225834 00000 n +0000225984 00000 n +0000226134 00000 n +0000226284 00000 n +0000226434 00000 n +0000226583 00000 n +0000226731 00000 n +0000226880 00000 n +0000227028 00000 n +0000227177 00000 n +0000227327 00000 n +0000227477 00000 n +0000227626 00000 n +0000227776 00000 n +0000227926 00000 n +0000228076 00000 n +0000228226 00000 n +0000228375 00000 n +0000228525 00000 n +0000228674 00000 n +0000228824 00000 n +0000228974 00000 n +0000229122 00000 n +0000229272 00000 n +0000229422 00000 n +0000229572 00000 n +0000229722 00000 n +0000229872 00000 n +0000230022 00000 n +0000230170 00000 n +0000230318 00000 n +0000230467 00000 n +0000230617 00000 n +0000230765 00000 n +0000230913 00000 n +0000231061 00000 n +0000231211 00000 n +0000231361 00000 n +0000231511 00000 n +0000231661 00000 n +0000231810 00000 n +0000231960 00000 n +0000232109 00000 n +0000232258 00000 n +0000232408 00000 n +0000232558 00000 n +0000232706 00000 n +0000232856 00000 n +0000233006 00000 n +0000233156 00000 n +0000233306 00000 n +0000233455 00000 n +0000233605 00000 n +0000233755 00000 n +0000233905 00000 n +0000237674 00000 n +0000237824 00000 n +0000237974 00000 n +0000238123 00000 n +0000238273 00000 n +0000238422 00000 n +0000238572 00000 n +0000238721 00000 n +0000234178 00000 n +0000216769 00000 n +0000215175 00000 n +0000234055 00000 n +0000789263 00000 n +0000821462 00000 n +0000238871 00000 n +0000239020 00000 n +0000239168 00000 n +0000239316 00000 n +0000239466 00000 n +0000239616 00000 n +0000239765 00000 n +0000239914 00000 n +0000240063 00000 n +0000240212 00000 n +0000240361 00000 n +0000240510 00000 n +0000240660 00000 n +0000240810 00000 n +0000240960 00000 n +0000241109 00000 n +0000241258 00000 n +0000241407 00000 n +0000241557 00000 n +0000241707 00000 n +0000241856 00000 n +0000242006 00000 n +0000242155 00000 n +0000242305 00000 n +0000242455 00000 n +0000242603 00000 n +0000242752 00000 n +0000242901 00000 n +0000243050 00000 n +0000243198 00000 n +0000243347 00000 n +0000243496 00000 n +0000243646 00000 n +0000243794 00000 n +0000243943 00000 n +0000244091 00000 n +0000244241 00000 n +0000244390 00000 n +0000244540 00000 n +0000244688 00000 n +0000244837 00000 n +0000244985 00000 n +0000245134 00000 n +0000245284 00000 n +0000245433 00000 n +0000245583 00000 n +0000245732 00000 n +0000245879 00000 n +0000246029 00000 n +0000246179 00000 n +0000246329 00000 n +0000246479 00000 n +0000246626 00000 n +0000246775 00000 n +0000246925 00000 n +0000247070 00000 n +0000247219 00000 n +0000247368 00000 n +0000247516 00000 n +0000247665 00000 n +0000247815 00000 n +0000247965 00000 n +0000248115 00000 n +0000248265 00000 n +0000248415 00000 n +0000248565 00000 n +0000248715 00000 n +0000248865 00000 n +0000249014 00000 n +0000249163 00000 n +0000249313 00000 n +0000249462 00000 n +0000249612 00000 n +0000249762 00000 n +0000249911 00000 n +0000250061 00000 n +0000250211 00000 n +0000250361 00000 n +0000250511 00000 n +0000250661 00000 n +0000250810 00000 n +0000250960 00000 n +0000251107 00000 n +0000251257 00000 n +0000251403 00000 n +0000251551 00000 n +0000251700 00000 n +0000251848 00000 n +0000251997 00000 n +0000252146 00000 n +0000252296 00000 n +0000252445 00000 n +0000252594 00000 n +0000252742 00000 n +0000252891 00000 n +0000253039 00000 n +0000253188 00000 n +0000253338 00000 n +0000253487 00000 n +0000253636 00000 n +0000253785 00000 n +0000253933 00000 n +0000254082 00000 n +0000254232 00000 n +0000254382 00000 n +0000254532 00000 n +0000254681 00000 n +0000254830 00000 n +0000254979 00000 n +0000255129 00000 n +0000255278 00000 n +0000255428 00000 n +0000255578 00000 n +0000255727 00000 n +0000255877 00000 n +0000256026 00000 n +0000256175 00000 n +0000256323 00000 n +0000256473 00000 n +0000256623 00000 n +0000256772 00000 n +0000256921 00000 n +0000257071 00000 n +0000257221 00000 n +0000257372 00000 n +0000257523 00000 n +0000257674 00000 n +0000257824 00000 n +0000257975 00000 n +0000258126 00000 n +0000258276 00000 n +0000258427 00000 n +0000258578 00000 n +0000258729 00000 n +0000258878 00000 n +0000259028 00000 n +0000259178 00000 n +0000259329 00000 n +0000259479 00000 n +0000259630 00000 n +0000259780 00000 n +0000259993 00000 n +0000236336 00000 n +0000234303 00000 n +0000259930 00000 n +0000774516 00000 n +0000260134 00000 n +0000260268 00000 n +0000260294 00000 n +0000775014 00000 n +0000260842 00000 n +0000260874 00000 n +0000260900 00000 n +0000261378 00000 n +0000261883 00000 n +0000775772 00000 n +0000262001 00000 n +0000775283 00000 n +0000262025 00000 n +0000262049 00000 n +0000775510 00000 n +0000262075 00000 n +0000262534 00000 n +0000262991 00000 n +0000775098 00000 n +0000263017 00000 n +0000263043 00000 n +0000263075 00000 n +0000263215 00000 n +0000263605 00000 n +0000264311 00000 n +0000264906 00000 n +0000265635 00000 n +0000265715 00000 n +0000265739 00000 n +0000265795 00000 n +0000266388 00000 n +0000266814 00000 n +0000267463 00000 n +0000267855 00000 n +0000268453 00000 n +0000269077 00000 n +0000269751 00000 n +0000270159 00000 n +0000270539 00000 n +0000271097 00000 n +0000271704 00000 n +0000271730 00000 n +0000272122 00000 n +0000272888 00000 n +0000273461 00000 n +0000273904 00000 n +0000274358 00000 n +0000304735 00000 n +0000305134 00000 n +0000335209 00000 n +0000335638 00000 n +0000355031 00000 n +0000355263 00000 n +0000357872 00000 n +0000358136 00000 n +0000365539 00000 n +0000365862 00000 n +0000369539 00000 n +0000369781 00000 n +0000372305 00000 n +0000372542 00000 n +0000377028 00000 n +0000377285 00000 n +0000379967 00000 n +0000380208 00000 n +0000384458 00000 n +0000384715 00000 n +0000387238 00000 n +0000387476 00000 n +0000425193 00000 n +0000425812 00000 n +0000449001 00000 n +0000449320 00000 n +0000470517 00000 n +0000470794 00000 n +0000485911 00000 n +0000486153 00000 n +0000509520 00000 n +0000509833 00000 n +0000536895 00000 n +0000537235 00000 n +0000567648 00000 n +0000568107 00000 n +0000588868 00000 n +0000589207 00000 n +0000595646 00000 n +0000595881 00000 n +0000604023 00000 n +0000604266 00000 n +0000622458 00000 n +0000622770 00000 n +0000627122 00000 n +0000627491 00000 n +0000630432 00000 n +0000630682 00000 n +0000633441 00000 n +0000633684 00000 n +0000636731 00000 n +0000636994 00000 n +0000639744 00000 n +0000639988 00000 n +0000642751 00000 n +0000642995 00000 n +0000670515 00000 n +0000670892 00000 n +0000702732 00000 n +0000703326 00000 n +0000723727 00000 n +0000724007 00000 n +0000747611 00000 n +0000747935 00000 n +0000774057 00000 n +0000775857 00000 n +0000776991 00000 n +0000778125 00000 n +0000779256 00000 n +0000780391 00000 n +0000781526 00000 n +0000782658 00000 n +0000783791 00000 n +0000784924 00000 n +0000786057 00000 n +0000787192 00000 n +0000788324 00000 n +0000789457 00000 n +0000790592 00000 n +0000791727 00000 n +0000792862 00000 n +0000793997 00000 n +0000795130 00000 n +0000796263 00000 n +0000796976 00000 n +0000797859 00000 n +0000798739 00000 n +0000799620 00000 n +0000800500 00000 n +0000801382 00000 n +0000802262 00000 n +0000803145 00000 n +0000804218 00000 n +0000805289 00000 n +0000806357 00000 n +0000807427 00000 n +0000808496 00000 n +0000809565 00000 n +0000810816 00000 n +0000812068 00000 n +0000813319 00000 n +0000814570 00000 n +0000815822 00000 n +0000817074 00000 n +0000818326 00000 n +0000819305 00000 n +0000821549 00000 n +0000821669 00000 n +0000821781 00000 n +0000821854 00000 n +0000828547 00000 n +0000828726 00000 n +0000828903 00000 n +0000829078 00000 n +0000829249 00000 n +0000829419 00000 n +0000829590 00000 n +0000829760 00000 n +0000829931 00000 n +0000830100 00000 n +0000830269 00000 n +0000830440 00000 n +0000830611 00000 n +0000830794 00000 n +0000830993 00000 n +0000831188 00000 n +0000831387 00000 n +0000831603 00000 n +0000831842 00000 n +0000832085 00000 n +0000832328 00000 n +0000832580 00000 n +0000832857 00000 n +0000833135 00000 n +0000833418 00000 n +0000833701 00000 n +0000833984 00000 n +0000834171 00000 n +0000834278 00000 n +0000834396 00000 n +0000834512 00000 n +0000834636 00000 n +0000834775 00000 n +0000834889 00000 n +0000835000 00000 n +0000835040 00000 n +0000835221 00000 n trailer -<< /Size 1020 -/Root 1018 0 R -/Info 1019 0 R -/ID [<4B5580D2574824A72A44A2FA09A9D6E1> <4B5580D2574824A72A44A2FA09A9D6E1>] >> +<< /Size 1218 +/Root 1216 0 R +/Info 1217 0 R +/ID [<683663B6847589D3FAC00256A65906B9> <683663B6847589D3FAC00256A65906B9>] >> startxref -760227 +835918 %%EOF diff --git a/macros/latex/contrib/numerica-tables/numerica-tables.sty b/macros/latex/contrib/numerica-tables/numerica-tables.sty index c1808141e4..f3d1923c54 100644 --- a/macros/latex/contrib/numerica-tables/numerica-tables.sty +++ b/macros/latex/contrib/numerica-tables/numerica-tables.sty @@ -10,10 +10,10 @@ \RequirePackage{booktabs} \ProvidesExplFile {numerica-tables.sty} - {2023/08/25} - {3.1.0} + {2024/11/19} + {3.2.0} {Create mathematical tables of function values} - +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \msg_new:nnn {numerica-tables} {version} { Package~too~old!~This~version~of~numerica-tables~requires~ @@ -22,7 +22,7 @@ \msg_new:nnn {numerica-tables} {load-order} { Please~load~version~3.0~(or~later)~of~the~numerica~ - package~before~numerica~tables. + package~before~numerica-tables~version~3.2. } \cs_if_exist:NTF \c_nmc_version_tl { @@ -30,187 +30,355 @@ { \msg_fatal:nn {numerica-tables} {version} } } { \msg_fatal:nn {numerica-tables} {load-order} } -%---------------------------------------------------------- -\cs_generate_variant:Nn \tl_if_head_eq_charcode:nNTF { V } -\cs_generate_variant:Nn \tl_if_head_eq_charcode:nNT { V } +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\AtBeginDocument + { + \cs_if_exist:NF \sfrac + { \NewDocumentCommand \sfrac { m m } { \scriptstyle #1 / #2 } } + } +% debugging break point +\cs_new_protected:Npn \here { \tl_show:e {here} } +% to replace numerica.sty routine +\cs_set_protected:Npn \__nmc_fpify_fact: + { + \__nmc_error_where:n { factorial } + \tl_clear:N \l_tmpa_tl + \tl_if_head_eq_meaning:VNTF \l__nmc_fact_arg_tl \s__fp + { \tl_set_eq:NN \l_tmpa_tl \l__nmc_fact_arg_tl } + { \__nmc_fpify:VN \l__nmc_fact_arg_tl \l_tmpa_tl } + \bool_if:NF \g__nmc_error_bool + { + \tl_set:Ne \l_tmpa_tl { \fp_to_int:n \l_tmpa_tl } + \tl_if_eq:VnTF \l__nmcC_tl { ! } + { \__nmc_fpify_fact_repeated: } + { + \int_compare:nNnTF { \l_tmpa_tl } < { 0 } + { \__nmc_error_what:n { Integer~$\ge 0$~required~in } } + { + \seq_gpop:NN \g__nmc_error_where_seq \l__nmc_toss_tl + \__nmc_accum_fn_parenth:NVn \l__nmc_accum_tl + \l_tmpa_tl { fact } + } + } + } + \bool_set_true:N \l__nmc_insert_aster_bool + } +\cs_generate_variant:Nn \tl_if_eq:nnTF { v } +\cs_generate_variant:Nn \tl_if_head_eq_charcode:nNTF { V, v } \cs_generate_variant:Nn \seq_set_from_clist:Nn { No } \cs_generate_variant:Nn \int_compare:nNnTF { v } \cs_generate_variant:Nn \int_compare:nNnT { v } \cs_generate_variant:Nn \int_case:nnTF { v } -\cs_generate_variant:Nn \clist_pop:NN { cc } +\cs_generate_variant:Nn \clist_pop:NN { Nc, cc } +\cs_generate_variant:Nn \fp_add:Nn { cv } -\cs_new_protected:Npn \__nmc_table_prepad:Nnn #1#2#3 +\tl_new:N \l__nmc_swap_tl +\seq_new:N \l_tmpd_seq +\clist_const:Nn \c__nmc_table_fontsize_clist + { \tiny,\scriptsize,\footnotesize,\small,\normalsize, + \large,\Large,\LARGE,\huge,\Huge } +% +\cs_new_protected:Npn \__nmc_table_new:n #1 + { \clist_map_inline:nn { #1 } { \__nmc_table_new_aux:wN ##1\q_stop } } +\cs_new_protected:Npn \__nmc_table_new_aux:wN #1_#2\q_stop + { \use:c { #2_new:c } { l__nmc_table_#1_#2 } } +\__nmc_table_new:n { - \tl_put_left:Nx #1 { \prg_replicate:nn - { \int_max:nn { #2 - \tl_count:N #1 } { 0 } } { #3 } } + rvar_tl, rvari_tl, rvari_bool, rspec_clist, rspec_bool, rdelim_tl, + rpos_int, rvirreg_seq, rvirreg_bool, rfunc_tl, rverb_bool, rround_int, + rstart_fp, rstep_tl, rstep_fp, rstop_tl, rstop_fp, rnum_int, rfrac_int, + rhnudge_clist, rhnudge_tl, rheadi_tl, rhnudgei_tl, ralign_tl, rhsize_tl, + rhead_tl, rhead_bool, rhauto_bool, rhiauto_bool, rfont_tl, rmath_tl, + + cvar_tl, cstop_tl, cstop_fp, cstart_fp, cstep_tl, cstep_fp, cnum_int, + cspec_clist, cspec_bool, chverb_bool, chround_int, calign_tl, chfont_tl, + chstyle_int, chnudge_clist, chnudge_tl, chmath_clist,chmath_tl, + chsize_clist, chsize_tl, chead_tl, chead_seq, header_tl, footer_tl, + ctitle_tl, ctitle_int, csubt_tl, rules_tl, rules_int, headless_bool, + + rbloc_tl, rblock_tl, rbloc_int, rbloc_clist, rblocsep_tl, + signs_int, tsigns_int, signs_bool, diffs_bool, diffs_tl, diffs_int, + Q_tl, A_tl, QA_bool, query_tl, QAmax_bool, QAmin_bool, + + multifn_seq, multifn_bool, transpose_bool, totalcols_tl, + rvcol_seq, rvcoli_seq, fvcols_seq, thiscol_seq, rows_seq, + r_fp, c_fp, max_fp, min_fp, a_int, b_int, c_int, + store_int, numonly_tl, numonly_bool, round_bool, valign_tl } -\cs_new:Npn \__nmc_sci_num_table_plus:nn #1#2 - { % #1 significand, #2 exponent - \fp_compare:nTF { #1 >= 0 } - { ( #2 )\,{ \__nmc_sci_num_table_signs:n { #1 } } } - { ( #2 )\,{ #1 } } +%------------------------------------------------ +\nmc_define:NnN \nmcTabulate { table } \tabulate +% +\keys_define:nn { numerica-tables/package } + { + rules .tl_set:N = \l__nmc_table_rules_tl, + rules .initial:n = ThB, + norules .code:n = \tl_clear:N \l__nmc_table_rules_tl, + Q?* .tl_set:N = \l__nmc_table_Q_tl, + Q?* .initial:n = {@=MAX} } -\cs_new:Npn \__nmc_sci_num_table_signs:n #1 +\ProcessKeyOptions [ numerica-tables/package ] + +% \nmcTabulate / \__nmc_initialize:n +\cs_gset_protected:Npn \__nmc_table_initialize: + { + \bool_set_false:N \l__nmc_allow_TF_out_bool + \int_set:Nn \l__nmc_table_rnum_int { -1 } + \int_set:Nn \l__nmc_table_cnum_int { -1 } + \bool_if:NF \l__nmc_num_only_bool + { \tl_clear:N \l__nmc_table_Q_tl } + } +% \nmcTabulate / \__nmc_settings:nn +\keys_define:nn { numerica/table } + { + rvar .tl_set:N = \l__nmc_table_rvar_tl, + rstop .tl_set:N = \l__nmc_table_rstop_tl, + rstep .tl_set:N = \l__nmc_table_rstep_tl, + rows .code:n = \__nmc_table_kv_rcnum:nn { #1 } { r }, + rspec .clist_set:N = \l__nmc_table_rspec_clist, + rfunc .tl_set:N = \l__nmc_table_rfunc_tl, + rdelim .tl_set:N = \l__nmc_rdelim_tl, + rdelim .initial:V = \c__nmc_vv_delim_tl, + rdata .code:n = \__nmc_table_kv_rdata:n { #1 }, + rfile .code:n = \__nmc_table_kv_rfile:n { #1 }, + rverb .code:n = \__nmc_table_kv_rverb:n { #1 }, + rround .int_set:N = \l__nmc_table_rround_int, + rround .initial:n = 1, + rfont .code:n = \tl_set:Nn \l__nmc_table_rfont_tl + { \use:c { math#1 } }, + ralign .tl_set:N = \l__nmc_table_ralign_tl, + ralign .initial:n = r, + rhead .tl_set:N = \l__nmc_table_rhead_tl, + rhead .initial:n = `, + rhnudge .code:n = \tl_set:Nn \l__nmc_table_rhnudge_tl + { \mkern #1 mu }, + rhnudge .initial:n = { 0 }, + rhsize .code:n = \tl_set:Ne \l__nmc_table_rhsize_tl + { \clist_item:Nn \c__nmc_table_fontsize_clist { 5 + #1 } }, + rmath .code:n = \tl_set:Ne \l__nmc_table_rmath_tl + { \__nmc_table_kv_mathstyle:n { #1 } }, + rpos .int_set:N = \l__nmc_table_rpos_int, + rpos .initial:n = 1, + rvar' .code:n = \__nmc_table_kv_rvari:n { #1 }, + rhead' .tl_set:N = \l__nmc_table_rheadi_tl, + rhead' .initial:n = `, + rhnudge' .code:n = \tl_set:Nn \l__nmc_table_rhnudgei_tl + { \mkern #1 mu }, +% + cvar .tl_set:N = \l__nmc_table_cvar_tl, + cstop .tl_set:N = \l__nmc_table_cstop_tl, + cstep .tl_set:N = \l__nmc_table_cstep_tl, + cols .code:n = \__nmc_table_kv_rcnum:nn { #1 } { c }, + cspec .clist_set:N = \l__nmc_table_cspec_clist, + chround .int_set:N = \l__nmc_table_chround_int, + calign .tl_set:N = \l__nmc_table_calign_tl, + calign .initial:n = r, + chstyle .int_set:N = \l__nmc_table_chstyle_int, + chfont .code:n = \tl_set:Nn \l__nmc_table_chfont_tl + { \use:c { math#1 } }, + chnudge .clist_set:N = \l__nmc_table_chnudge_clist, + chnudge .initial:n = { 0 }, + chmath .clist_set:N = \l__nmc_table_chmath_clist, + chmath .initial:n = t, + chsize .code:n = \tl_set:Nn \l__nmc_table_chsize_tl { \normalsize } + \clist_set:Nn \l__nmc_table_chsize_clist { #1 }, + chead .tl_set:N = \l__nmc_table_chead_tl, +% + ctitle .tl_set:N = \l__nmc_table_ctitle_tl, + cmidrow .tl_set:N = \l__nmc_table_csubt_tl, + csubttl .tl_set:N = \l__nmc_table_csubt_tl, + foot .tl_set:N = \l__nmc_table_footer_tl, + norules .code:n = \tl_clear:N \l__nmc_table_rules_tl, + rules .tl_set:N = \l__nmc_table_rules_tl, + rbloc .clist_set:N = \l__nmc_table_rbloc_clist, + rblocsep .tl_set:N = \l__nmc_table_rblocsep_tl, + rblocsep .initial:n = 1ex, + signs .int_set:N = \l__nmc_table_signs_int, + (pad) .int_set:N = \l__nmc_table_tsigns_int, + diffs .int_set:N = \l__nmc_table_diffs_int, + diffs .initial:n = 0, +% + headless .code:n = \__nmc_int_to_bool:Nn + \l__nmc_table_headless_bool { #1 }, + headless .default:n = 1, + headless .initial:n = 0, + round .code:n = \__nmc_table_kv_rounding:n { #1 }, + Q? .tl_set:N = \l__nmc_table_Q_tl, + A! .tl_set:N = \l__nmc_table_A_tl, + valign .code:n = \tl_set:Nn \l__nmc_table_valign_tl { [#1] }, + valign .initial:n = m, + view .code:n = \__nmc_dbg_int:nn { 1 } { 11 }, + transpose .code:n = \__nmc_int_to_bool:Nn + \l__nmc_table_transpose_bool { #1 }, + transpose .default:n = 1, + transpose .initial:n = 0, + } +% \nmcTabulate / \__nmc_settings:nn +\cs_gset_protected:Npn \__nmc_table_settings: + { + \__nmc_table_settings_rpos: + \__nmc_table_settings_rv_vals: % for r \l__nmc_table_rspec_clist + \__nmc_table_settings_spec:NN c \l__nmc_table_cspec_clist + \__nmc_table_settings_rhead: + \__nmc_table_settings_rhnudge: + \__nmc_table_settings_chnudge: + \__nmc_table_settings_chmath: + \__nmc_table_settings_chsize: + \__nmc_table_settings_ctitle: + \__nmc_table_settings_QA: + \__nmc_table_settings_rbloc: + \__nmc_table_settings_rules: + \__nmc_table_settings_diffs: + \__nmc_table_settings_chead: + \int_compare:nNnF \l__nmc_dbg_int = { 11 } + { \int_zero:N \l__nmc_dbg_int } + } +% \nmcTabulate / \__nmc_formula:nn +\cs_set_protected:Npn \__nmc_table_formula: + { + \tl_set:Ne \l_tmpa_tl { \tl_head:N \l__nmc_formula_tl } + \tl_if_in:nVT { $ \( \[ } \l_tmpa_tl + { + \tl_set:Ne \l__nmc_formula_tl + { \tl_range:Nnn \l__nmc_formula_tl {2}{-2} } + } + \tl_set_eq:NN \l__nmc_formula_dup_tl \l__nmc_formula_tl + \int_compare:nNnT { \l__nmc_table_ctitle_int } > { 1 } + { \tl_set_eq:NN \l__nmc_table_ctitle_tl \l__nmc_formula_tl } + } +% \nmcTabulate / \__nmc_trailing_args:nnn #1 seq +\cs_gset_protected:Npn \__nmc_table_vv_digest:N #1 { - \int_compare:nNnF { \l__nmc_num_sgn_int } < { 0 } + \bool_if:NT \l__nmc_table_rvirreg_bool { - \int_case:nn { \l__nmc_table_signs_int } - { - {-2 } { \exp_not:N \hphantom{+} } - {-1 } { \bool_if:NTF \l__nmc_table_signs_bool - { + }{ \exp_not:N \hphantom{+} } } - { 1 } { \bool_if:NT \l__nmc_table_signs_bool { + } } - { 2 } { + } + \seq_get_left:NN \l__nmc_table_rvirreg_seq \l_tmpa_tl + \seq_push:Ne #1 + { \exp_not:o \l__nmc_table_rvar_tl = \exp_not:o \l_tmpa_tl } + } + \bool_if:NT \l__nmc_multitok_bool + { \__nmc_table_multitok:nn { cr } { \exp_args:NNc \clist_push:NV } } + \__nmc_vv_digest:N #1 + \bool_if:NT \l__nmc_multitok_bool + { \__nmc_table_multitok:nn { rc } { \clist_pop:Nc } } + \seq_gpop:NN \g__nmc_error_where_seq \l__nmc_toss_tl + \__nmc_table_get_ini_vals: + \bool_if:NF \g__nmc_error_bool + { \__nmc_table_add_vv_to_ctitle: } + } +% \nmcTabulate / +\cs_gset_protected:Npn \__nmc_table_process: + { + \__nmc_error_where:n { formula } + \__nmc_table_calculate: + \bool_if:NF \g__nmc_error_bool + { + \bool_if:NT \l__nmc_table_transpose_bool + { \__nmc_table_transpose: } + } + \bool_if:NF \g__nmc_error_bool + { + \tl_set:Ne \l__nmc_table_totalcols_tl { \__nmc_table_totalcols: } + \__nmc_table_format_items: + } + \bool_if:NF \g__nmc_error_bool + { + \__nmc_table_assemble_body: + \tl_set_eq:NN \l__nmc_fp_expr_tl \l__nmc_fp_exprn_tl + } + \bool_if:NF \g__nmc_error_bool + { + \bool_if:NT \l__nmc_num_only_bool + { \__nmc_table_num_only: } + \int_compare:nNnT \l__nmc_dbg_int = { 11 } + { + \__nmc_table_display: + \tl_set:NV \l__nmc_show_tl \l__nmc_result_tl } - } - \exp_not:o { #1 } + } } -\cs_generate_variant:Nn \__nmc_sci_num_table_signs:n { x } -\cs_new:Npn \__nmc_table_rc:N #1 - { \str_if_eq:nVTF { #1 } \c__nmc_r_tl { row } { column } } -\cs_new_protected:Npn \__nmc_table_rvround_pre: +% \nmcTabulate / +\cs_gset_protected:Npn \__nmc_table_display: { - \fp_set_eq:NN \l__nmc_table_r_fp \l__nmc_table_rstart_fp - \prop_put:NVx \l__nmc_subst_var_prop \l__nmc_table_rvar_tl - { \fp_use:N \l__nmc_table_r_fp } - \__nmc_table_reset_rounding: + \bool_if:NF \l__nmc_num_only_bool + { + \tl_set:Ne \l__nmc_result_tl + { + \__nmc_table_upper: + \bool_if:NF \l__nmc_table_headless_bool + { + \exp_not:o \l__nmc_table_header_tl \\~ + \__nmc_if_mod_zero:nnTF { \l__nmc_table_rules_int } { 11 } + { \exp_not:N \midrule } + { + \__nmc_if_mod_zero:nnT { \l__nmc_table_rules_int } { 7 } + { \exp_not:N \cmidrule(lr) + { 1-\l__nmc_table_totalcols_tl } } + } + } + \exp_not:o \l__nmc_result_tl + \__nmc_table_lower: + } + \bool_gset_false:N \g__nmc_reuse_bool + \tl_gset:Ne \g__nmc_reuse_tl { \exp_not:o \l__nmc_result_tl } + } + \int_if_zero:nT \l__nmc_dbg_int + { \l__nmc_result_tl } } -\cs_new_protected:Npn \__nmc_table_rvround_post: +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% keys_define:nn +\cs_new_protected:Npn \__nmc_table_kv_rcnum:nn #1#2 { - \fp_add:Nn \l__nmc_table_r_fp { \l__nmc_table_rstep_fp } - \prop_put:NVx \l__nmc_subst_var_prop \l__nmc_table_rvar_tl - { \fp_use:N \l__nmc_table_r_fp } - \__nmc_table_reset_rounding: + \__nmc_fpify_set:Nn \l_tmpb_fp { #1 } + \int_set:cn { l__nmc_table_#2 num_int } { \fp_to_int:N \l_tmpb_fp } } -\cs_new_protected:Npn \__nmc_table_cvround_pre: +\cs_generate_variant:Nn \__nmc_table_kv_rcnum:nn { V } + +\cs_new_protected:Npn \__nmc_table_kv_rdata:n #1 { - \fp_set_eq:NN \l__nmc_table_c_fp \l__nmc_table_cstart_fp - \prop_put:NVx \l__nmc_subst_var_prop \l__nmc_table_cvar_tl - { \fp_use:N \l__nmc_table_c_fp } - \__nmc_table_reset_rounding: + \tl_if_single:nT { #1 } { \exp_args:NNNV } + \seq_set_split:NVn \l__nmc_table_rvirreg_seq \l__nmc_rdelim_tl { #1 } + \seq_remove_all:Nn \l__nmc_table_rvirreg_seq {} } - -\cs_new_protected:Npn \__nmc_table_cvround_post: +\cs_new_protected:Npn \__nmc_table_kv_rfile:n #1 { - \fp_add:Nn \l__nmc_table_c_fp { \l__nmc_table_cstep_fp } - \prop_put:NVx \l__nmc_subst_var_prop \l__nmc_table_cvar_tl - { \fp_use:N \l__nmc_table_c_fp } - \__nmc_table_reset_rounding: + \file_get:nnNTF { #1 } {} \l_tmpa_tl + { \__nmc_table_kv_rdata:n \l_tmpa_tl } + { \__nmc_error_what:n { File~#1~not~found~in } } } -\cs_new_protected:Npn \__nmc_table_reset_rounding: - { - \tl_clear:N \l__nmca_tl - \__nmc_fpify:VN \l__nmc_round_xpr_tl \l__nmca_tl - \int_set:Nn \l__nmc_round_int { \fp_to_int:n \l__nmca_tl } +\cs_new_protected:Npn \__nmc_table_kv_rvari:n #1 + { + \bool_lazy_or:nnTF { \tl_if_empty_p:n { #1 } } + { \tl_if_head_eq_charcode_p:nN { #1 } * } + { \bool_set_false:N \l__nmc_table_rvari_bool } + { + \tl_set:Nn \l__nmc_table_rvari_tl { #1 } + \bool_set_true:N \l__nmc_table_rvari_bool + } } -%-------------------------------------- -\tl_new:N \l__nmc_x_tl -\seq_new:N \l_tmpd_seq -\tl_const:Nn \c__nmc_r_tl { r } -\tl_const:Nn \c__nmc_l_tl { l } -\bool_new:N \l__nmc_table_multifn_bool -\bool_new:N \l__nmc_table_round_bool -\seq_new:N \l__nmc_table_multifn_seq -\tl_new:N \l__nmc_table_valign_tl - -\tl_new:N \l__nmc_table_rvar_tl -\tl_new:N \l__nmc_table_rvari_tl -\tl_new:N \l__nmc_table_rstop_tl -\tl_new:N \l__nmc_table_rstep_tl -\tl_new:N \l__nmc_table_rspec_tl -\tl_new:N \l__nmc_table_rvfn_tl -\bool_new:N \l__nmc_table_rvfn_bool -\fp_new:N \l__nmc_table_rstart_fp -\fp_new:N \l__nmc_table_rstop_fp -\tl_new:N \l__nmc_table_cspec_tl -\fp_new:N \l__nmc_table_rstep_fp -\fp_new:N \l__nmc_table_r_fp -\fp_new:N \l__nmc_table_c_fp -\fp_new:N \l__nmc_table_fn_val_fp -\int_new:N \l__nmc_table_rnum_int -\clist_new:N \l__nmc_table_rspec_clist -\bool_new:N \l__nmc_table_rspec_bool -\seq_new:N \l__nmc_table_rdata_seq -\bool_new:N \l__nmc_table_rdata_bool - -\tl_new:N \l__nmc_table_cvar_tl -\tl_new:N \l__nmc_table_cstop_tl -\tl_new:N \l__nmc_table_cstep_tl -\fp_new:N \l__nmc_table_cstart_fp -\fp_new:N \l__nmc_table_cstop_fp -\fp_new:N \l__nmc_table_cstep_fp -\int_new:N \l__nmc_table_cnum_int -\clist_new:N \l__nmc_table_cspec_clist -\bool_new:N \l__nmc_table_cspec_bool - -\seq_new:N \l__nmc_table_rvraw_seq -\seq_new:N \l__nmc_table_rvcol_seq -\seq_new:N \l__nmc_table_rvcoli_seq -\seq_new:N \l__nmc_table_this_col_seq -\seq_new:N \l__nmc_table_recur_seq -\seq_new:N \l__nmc_table_body_cols_seq -\seq_new:N \l__nmc_table_body_rows_seq - -\seq_new:N \l__nmc_table_header_seq -\tl_new:N \l__nmc_table_header_tl -\tl_new:N \l__nmc_table_rfont_tl -\tl_new:N \l__nmc_table_rhead_tl -\tl_new:N \l__nmc_table_rheadi_tl -\tl_new:N \l__nmc_table_rhnudge_tl -\tl_new:N \l__nmc_table_rhnudgei_tl -\int_new:N \l__nmc_table_chfrac_int -\int_new:N \l__nmc_table_chround_int -\int_new:N \l__nmc_table_chstyle_int -\int_const:Nn \c__nmc_table_chstyle_int { 5 } -\tl_new:N \l__nmc_table_chnudge_tl - -\tl_new:N \l__nmc_table_ctitle_tl -\int_new:N \l__nmc_table_ctitle_int -\int_new:N \l__nmc_table_rules_int -\tl_new:N \l__nmc_table_footer_tl -\bool_new:N \l__nmc_table_foot_bool -\bool_new:N \l__nmc_table_footops_bool -\tl_new:N \l__nmc_table_csum_tl -\tl_new:N \l__nmc_table_cave_tl -\tl_new:N \l__nmc_table_cmax_tl -\tl_new:N \l__nmc_table_cmin_tl -\tl_new:N \l__nmc_table_rbloc_tl -\tl_new:N \l__nmc_table_rblock_tl -\int_new:N \l__nmc_table_rbloc_int -\clist_new:N \l__nmc_table_rbloc_clist - -\int_new:N \l__nmc_table_signs_int -\int_new:N \l__nmc_table_tsigns_int -\int_new:N \l__nmc_table_c_int -\int_new:N \l__nmc_table_b_int -\int_new:N \l__nmc_table_a_int -\bool_new:N \l__nmc_table_signs_bool -\bool_new:N \l__nmc_table_diffs_bool -\tl_new:N \l__nmc_table_diff_tl -\tl_new:N \l__nmc_table_diff_null_tl - -\tl_new:N \l__nmc_table_Q_tl -\tl_new:N \l__nmc_table_A_tl -\fp_new:N \l__nmc_table_max_fp -\fp_new:N \l__nmc_table_min_fp -\bool_new:N \l__nmc_table_QA_max_bool -\bool_new:N \l__nmc_table_QA_min_bool -\bool_new:N \l__nmc_table_QA_bool -\bool_new:N \l__nmc_table_num_only_bool -\tl_new:N \l__nmc_table_num_only_tl -\tl_new:N \l__nmc_table_query_tl -%------------------------------------------------ -\nmc_define:NnN \nmcTabulate { table } \tabulate +\cs_new_protected:Npn \__nmc_table_kv_rverb:n #1 + { + \int_set:Nn \l__nmc_table_rfrac_int { \fp_to_int:n { 10 * { #1 } } } + \bool_set:Nn \l__nmc_table_rverb_bool + { \int_compare_p:nNn {\l__nmc_table_rfrac_int } = { 10 } } + } +\cs_new:Npn \__nmc_table_kv_mathstyle:n #1 + { + \str_case:nnF { #1 } + { + { t } { \textstyle } + { d } { \displaystyle } + { s } { \scriptstyle } + } { \textstyle } + } +\cs_generate_variant:Nn \__nmc_table_kv_mathstyle:n { V } -\cs_gset_protected:Npn \__nmc_table_initialize: - { - \bool_set_false:N \l__nmc_allow_TF_out_bool - \int_set:Nn \l__nmc_table_rnum_int { -1 } - \int_set:Nn \l__nmc_table_cnum_int { -1 } - \bool_if:NT \l__nmc_num_only_bool - { \tl_set:Nn \l__nmc_table_Q_tl { @=MAX } } +\cs_new_protected:Npn \__nmc_table_kv_rounding:n #1 + { + \bool_set:Nn \l__nmc_table_round_bool { !\tl_if_blank_p:n { #1 } } + \tl_set:Nn \l__nmc_round_xpr_tl { #1 } } -\cs_gset_protected:Npn \__nmc_table_settings: +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% settings: +\cs_new_protected:Npn \__nmc_table_settings_rpos: { \int_compare:nTF { 0 <= \l__nmc_table_rpos_int <= 4 } { @@ -218,205 +386,276 @@ { \int_incr:N \l__nmc_table_rpos_int } } { \int_set:Nn \l__nmc_table_rpos_int { 1 } } - \seq_if_empty:NTF \l__nmc_table_rdata_seq - { - \clist_if_empty:NF \l__nmc_table_rspec_clist - { \__nmc_table_settings_spec:N r } - } + } +\cs_new_protected:Npn \__nmc_table_settings_rv_vals: + { + \seq_if_empty:NTF \l__nmc_table_rvirreg_seq + { \__nmc_table_settings_spec:NN r \l__nmc_table_rspec_clist } { - \bool_set_true:N \l__nmc_table_rdata_bool + \bool_set_true:N \l__nmc_table_rvirreg_bool \int_set:Nn \l__nmc_table_rnum_int - { \seq_count:N \l__nmc_table_rdata_seq } - \int_if_zero:nF { \l__nmc_table_rverb_int } + { \seq_count:N \l__nmc_table_rvirreg_seq } + \bool_if:NT \l__nmc_table_rverb_bool { \int_set_eq:NN \l__nmc_table_rround_int \c_max_int } - \__nmc_table_rdata_fpstart: } - \clist_if_empty:NF \l__nmc_table_cspec_clist - { \__nmc_table_settings_spec:N c } - \tl_if_empty:NT \l__nmc_table_rhead_tl - { \tl_set_eq:NN \l__nmc_table_rhead_tl \l__nmc_table_rvar_tl } - \tl_if_empty:NTF \l__nmc_table_rheadi_tl + + \bool_if:nT { !\l__nmc_table_rvari_bool && + \int_compare_p:nNn { \l__nmc_table_rpos_int } < { 5 } } + { \tl_set_eq:NN \l__nmc_table_rvari_tl \l__nmc_table_rvar_tl } + } +\cs_new_protected:Npn \__nmc_table_settings_spec:NN #1 #2 + { + \clist_if_empty:NF #2 + { + \bool_set_true:c { l__nmc_table_#1 spec_bool } + \clist_pop:cc { l__nmc_table_#1 spec_clist } + { l__nmc_table_#1 var_tl } + \clist_pop:cc { l__nmc_table_#1 spec_clist } + { l__nmc_table_#1 step_tl } + \clist_pop:cN { l__nmc_table_#1 spec_clist } \l_tmpb_tl + \__nmc_table_kv_rcnum:Vn \l_tmpb_tl { #1 } + \clist_if_empty:NF #2 + { + \clist_pop:cN { l__nmc_table_#1 spec_clist } \l_tmpa_tl + \tl_if_eq:NNTF #1 r + { \int_set:Nn \l__nmc_table_rround_int \l_tmpa_tl } + { \int_set:Nn \l__nmc_table_chround_int \l_tmpa_tl } + } + } + } +\cs_new_protected:Npn \__nmc_table_settings_rhead: + { + \tl_if_eq:VnTF \l__nmc_table_rhead_tl { ` } { - \tl_if_empty:NT \l__nmc_table_rvari_tl + \tl_if_empty:NT \l__nmc_table_chead_tl + { + \bool_set_true:N \l__nmc_table_rhead_bool + \__nmc_table_rhead:NNNn r \backslash c {} + } + { \tl_set_eq:NN \l__nmc_table_rhead_tl \l__nmc_table_rvar_tl } + \tl_if_eq:VnT \l__nmc_table_rheadi_tl { ` } { - \tl_set_eq:NN \l__nmc_table_rheadi_tl \l__nmc_table_rhead_tl - \tl_set_eq:NN \l__nmc_table_rvari_tl \l__nmc_table_rvar_tl - } + \int_compare:nNnTF { \l__nmc_table_rpos_int } = { 5 } + { + \int_if_zero:nTF { \l__nmc_table_chstyle_int } + { \tl_clear:N \l__nmc_table_rheadi_tl } + { \tl_set_eq:NN \l__nmc_table_rheadi_tl \l__nmc_table_rvari_tl } + } + { \__nmc_table_rhead:NNNn c / r { i } } + } } { - \tl_if_empty:NT \l__nmc_table_rvari_tl - { \tl_set_eq:NN \l__nmc_table_rvari_tl \l__nmc_table_rvar_tl } + \tl_if_eq:VnT \l__nmc_table_rheadi_tl { ` } + { \tl_set_eq:NN \l__nmc_table_rheadi_tl \l__nmc_table_rhead_tl } + } + } +% #4 blank or i +\cs_new:Npn \__nmc_table_rhead:NNNn #1#2#3#4 + { + \tl_if_empty:NTF \l__nmc_table_cvar_tl + { + \tl_set_eq:cc { l__nmc_table_rhead #4_tl } + { l__nmc_table_rvar #4_tl } } - \tl_if_empty:NT \l__nmc_table_rhnudgei_tl - { \tl_set_eq:NN \l__nmc_table_rhnudgei_tl \l__nmc_table_rhnudge_tl } - \tl_if_empty:NF \l__nmc_table_ctitle_tl - { \l__nmc_table_settings_ctitle: } - \tl_if_empty:NTF \l__nmc_table_Q_tl - { \tl_set:Nn \l__nmc_table_query_tl { Missing~ } } { - \tl_set:Nn \l__nmc_table_query_tl { No~table~value~satisfies~ } - \__nmc_table_settings_QA: + \bool_if:nF { \l__nmc_table_transpose_bool + && \l__nmc_table_multifn_bool } + { + \tl_set:ce { l__nmc_table_rhead #4_tl } + { + \int_if_zero:nTF { \l__nmc_table_chstyle_int } + { \__nmc_table_rhead:NNN #1 #2 #3 } + { \use:c { l__nmc_table_rvar_tl } } + } + \bool_set_true:c { l__nmc_table_rh #4 auto_bool } + } } - \clist_if_empty:NTF \l__nmc_table_rbloc_clist - { \tl_set:Nn \l__nmc_table_rbloc_tl { 10000 } } - { \clist_pop:NN \l__nmc_table_rbloc_clist \l__nmc_table_rbloc_tl } - \tl_set_eq:NN \l__nmc_table_rblock_tl \l__nmc_table_rbloc_tl - \int_set:Nn \l__nmc_table_rbloc_int { \l__nmc_table_rbloc_tl } - - \__nmc_table_settings_rules: - \int_if_zero:nTF \l__nmc_table_diffs_int - { \bool_set_false:N \l__nmc_table_diffs_bool } - { \bool_set_true:N \l__nmc_table_diffs_bool } - \tl_if_empty:NF \l__nmc_table_chead_tl - { \int_set_eq:NN \l__nmc_table_chstyle_int \c__nmc_table_chstyle_int } - \tl_if_empty:NF \l__nmc_table_footer_tl + } +\cs_new:Npn \__nmc_table_rhead:NNN #1#2#3 + { + \use:c { l__nmc_table_#1 var_tl } + \exp_not:n { \:\! #2 \:\! } + \use:c { l__nmc_table_#3 var_tl } + } +\cs_new_protected:Npn \__nmc_table_settings_rhnudge: + { + \tl_if_empty:NT \l__nmc_table_rhnudgei_tl + { \tl_set_eq:NN \l__nmc_table_rhnudgei_tl \l__nmc_table_rhnudge_tl } + } +\cs_new_protected:Npn \__nmc_table_settings_chnudge: + { + \clist_if_empty:NF \l__nmc_table_chnudge_clist { - \tl_if_eq:VnT \l__nmc_table_footer_tl { * } - { \bool_set_true:N \l__nmc_table_foot_bool } + \clist_pop:NN \l__nmc_table_chnudge_clist \l__nmc_table_chnudge_tl + \tl_set:Ne \l__nmc_table_chnudge_tl + { \mkern \l__nmc_table_chnudge_tl mu } } - \int_compare:nNnF \l__nmc_dbg_int = { 11 } - { \int_zero:N \l__nmc_dbg_int } - % \int_if_zero:nF { \l__nmc_table_rfrac_int + \l__nmc_table_chfrac_int } - \int_if_zero:nF { \l__nmc_table_rfrac_int } + } +\cs_new_protected:Npn \__nmc_table_settings_chmath: + { + \clist_if_empty:NF \l__nmc_table_chmath_clist { - \int_compare:nNnT { \l__nmc_table_chstyle_int } > { 2 } - { \int_zero:N \l__nmc_table_chstyle_int } + \clist_pop:NN \l__nmc_table_chmath_clist \l_tmpa_tl + \tl_set:Ne \l__nmc_table_chmath_tl + { \__nmc_table_kv_mathstyle:V \l_tmpa_tl } } - } -\cs_new_protected:Npn \l__nmc_table_settings_ctitle: + } +\cs_new_protected:Npn \__nmc_table_settings_chsize: { - \int_incr:N \l__nmc_table_ctitle_int % 1 - \tl_if_eq:VnTF \l__nmc_table_ctitle_tl { * } - { \int_incr:N \l__nmc_table_ctitle_int } % 2 + \clist_if_empty:NF \l__nmc_table_chsize_clist { - \tl_if_eq:VnT \l__nmc_table_ctitle_tl { ** } - { \int_set:Nn \l__nmc_table_ctitle_int { 3 } } % 3 + \clist_pop:NN \l__nmc_table_chsize_clist \l_tmpa_tl + \tl_set:Ne \l__nmc_table_chsize_tl + { \clist_item:Nn \c__nmc_table_fontsize_clist { 5+\l_tmpa_tl } } } } -\cs_new_protected:Npn \__nmc_table_settings_rules: +\cs_new_protected:Npn \__nmc_table_settings_ctitle: { - \clist_map_inline:nn - { {T}{*2},{t}{*3},{m}{*5},{s}{*5},{h}{*7},{f}{*11},{B}{*13} } - { \tl_replace_once:Nnn \l__nmc_table_rules_tl ##1 } - \int_set:Nn \l__nmc_table_rules_int { 1 \l__nmc_table_rules_tl } + \tl_if_empty:NF \l__nmc_table_ctitle_tl + { + \int_incr:N \l__nmc_table_ctitle_int % 1 + \tl_if_eq:VnT \l__nmc_table_ctitle_tl { * } + { \int_incr:N \l__nmc_table_ctitle_int } % 2 + \tl_if_eq:VnT \l__nmc_table_ctitle_tl { ** } + { \int_set:Nn \l__nmc_table_ctitle_int { 3 } } % 3 + } } \cs_new_protected:Npn \__nmc_table_settings_QA: { - \bool_set_true:N \l__nmc_table_QA_bool - \regex_replace_all:nnN { (\@) } { \c{l_tmpb_fp} } \l__nmc_table_Q_tl - \tl_set_rescan:Nno \l__nmc_table_Q_tl { \ExplSyntaxOn } \l__nmc_table_Q_tl - \regex_replace_all:nnN { (\cC.) } { \c{exp_not:N}\1 } \l__nmc_table_A_tl - \regex_replace_all:nnN { (\@) } { \c{l_tmpb_tl} } \l__nmc_table_A_tl - \tl_if_in:NnT \l__nmc_table_Q_tl { MAX } + \tl_if_empty:NTF \l__nmc_table_Q_tl + { \tl_set:Nn \l__nmc_table_query_tl { Missing~ } } { - \bool_set_true:N \l__nmc_table_QA_max_bool - \regex_replace_all:nnN { MAX } { \c{l__nmc_table_max_fp} } + \tl_set:Nn \l__nmc_table_query_tl { No~table~value~satisfies~ } + \bool_set_true:N \l__nmc_table_QA_bool + \regex_replace_all:nnN { (\@) } { \c{l_tmpb_fp} } \l__nmc_table_Q_tl - \fp_set:Nn \l__nmc_table_max_fp { -inf } - } - \tl_if_in:NnT \l__nmc_table_Q_tl { MIN } - { - \bool_set_true:N \l__nmc_table_QA_min_bool - \regex_replace_all:nnN { MIN } { \c{l__nmc_table_min_fp} } + \tl_set_rescan:Nno \l__nmc_table_Q_tl { \ExplSyntaxOn } \l__nmc_table_Q_tl - \fp_set:Nn \l__nmc_table_min_fp { inf } + \regex_replace_all:nnN { (\cC.) } { \c{exp_not:N}\1 } + \l__nmc_table_A_tl + \regex_replace_all:nnN { (\@) } { \c{l_tmpb_tl} } + \l__nmc_table_A_tl + \tl_if_in:NnT \l__nmc_table_Q_tl { MAX } + { + \bool_set_true:N \l__nmc_table_QAmax_bool + \regex_replace_all:nnN { MAX } { \c{l__nmc_table_max_fp} } + \l__nmc_table_Q_tl + \fp_set:Nn \l__nmc_table_max_fp { -inf } + } + \tl_if_in:NnT \l__nmc_table_Q_tl { MIN } + { + \bool_set_true:N \l__nmc_table_QAmin_bool + \regex_replace_all:nnN { MIN } { \c{l__nmc_table_min_fp} } + \l__nmc_table_Q_tl + \fp_set:Nn \l__nmc_table_min_fp { inf } + } } } -\cs_new_protected:Npn \__nmc_table_settings_spec:N #1 - { - \bool_set_true:c { l__nmc_table_ #1 spec_bool } - \clist_pop:cc { l__nmc_table_ #1 spec_clist } { l__nmc_table_ #1 var_tl } - \clist_pop:cc { l__nmc_table_ #1 spec_clist } { l__nmc_table_ #1 step_tl } - \clist_pop:cN { l__nmc_table_ #1 spec_clist } \l_tmpb_tl - \__nmc_table_set_rcnum:Vn \l_tmpb_tl { #1 } +\cs_new_protected:Npn \__nmc_table_settings_rbloc: + { + \clist_if_empty:NTF \l__nmc_table_rbloc_clist + { \tl_set:Nn \l__nmc_table_rbloc_tl { 10000 } } + { \clist_pop:NN \l__nmc_table_rbloc_clist \l__nmc_table_rbloc_tl } + \tl_set_eq:NN \l__nmc_table_rblock_tl \l__nmc_table_rbloc_tl + \int_set:Nn \l__nmc_table_rbloc_int { \l__nmc_table_rbloc_tl } } -\cs_new:Npn \__nmc_table_total_cols: - { - \int_eval:n { \int_sign:n { \l__nmc_table_rpos_int } - + \l__nmc_table_cnum_int + - \int_div_truncate:nn { \l__nmc_table_rpos_int } { 3 } } +\cs_new_protected:Npn \__nmc_table_settings_rules: + { + \clist_map_inline:nn { {T{*2}},{t{*3}},{m{*5}},{s{*5}},{{h'}{*7}}, + {h{*11}},{{f'}{*13}},{f{*17}},{B{*19}} } + { \tl_replace_once:Nnn \l__nmc_table_rules_tl ##1 } + \int_set:Nn \l__nmc_table_rules_int { 1 \l__nmc_table_rules_tl } } -\cs_gset_protected:Npn \__nmc_table_vv_digest:N #1 +\cs_new_protected:Npn \__nmc_table_settings_diffs: + { + \int_if_zero:nTF \l__nmc_table_diffs_int + { \bool_set_false:N \l__nmc_table_diffs_bool } + { \bool_set_true:N \l__nmc_table_diffs_bool } + } +\cs_new_protected:Npn \__nmc_table_settings_chead: + { + \tl_if_empty:NF \l__nmc_table_chead_tl + { \bool_set_true:N \l__nmc_table_chverb_bool } + } +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% vv_digest:N (x2) +\cs_new_protected:Npn \__nmc_table_multitok:nn #1#2 { - \bool_if:NTF \l__nmc_multitok_bool + \tl_map_inline:nn { #1 } { - \tl_if_empty:NF \l__nmc_table_cvar_tl - { \clist_push:NV \l__nmc_formula_tl \l__nmc_table_cvar_tl } - \tl_if_empty:NF \l__nmc_table_rvar_tl - { \clist_push:NV \l__nmc_formula_tl \l__nmc_table_rvar_tl } - \__nmc_vv_digest:N #1 - \tl_if_empty:NF \l__nmc_table_rvar_tl - { \clist_pop:NN \l__nmc_formula_tl \l__nmc_table_rvar_tl } - \tl_if_empty:NF \l__nmc_table_cvar_tl - { \clist_pop:NN \l__nmc_formula_tl \l__nmc_table_cvar_tl } - } - { \__nmc_vv_digest:N #1 } - \int_compare:nNnT { \l__nmc_table_ctitle_int } > { 1 } - { \tl_set_eq:NN \l__nmc_table_ctitle_tl \l__nmc_formula_dup_tl } - \seq_gpop:NN \g__nmc_error_where_seq \l__nmc_toss_tl - \__nmc_table_get_ini_vals: - \bool_if:NF \g__nmc_error_bool - { - \bool_if:nT - { - \int_if_zero_p:n { \l__nmc_table_rpos_int } && - \int_if_zero_p:n { \l__nmc_table_cnum_int } - } - { \__nmc_error_what:n { Null~table~specified~in } } - \int_compare:nNnT { \l__nmc_table_ctitle_int } = { 3 } - { - \tl_put_right:Nx \l__nmc_table_ctitle_tl - { - \c__nmc_vv_delim_tl \mskip18muminus15mu( - \seq_use:Nn \l__nmc_vv_visible_seq { \c__nmc_vv_delim_tl } ) - } - } + \tl_if_empty:cF { l__nmc_table_##1 var_tl } + { #2 \l__nmc_formula_tl { l__nmc_table_##1 var_tl } } } } +% vv_digest:N \cs_new_protected:Npn \__nmc_table_get_ini_vals: { \__nmc_error_where:n { settings } \__nmc_table_get_ini_vals_aux:N r - \bool_if:NF \g__nmc_error_bool + \bool_if:nF { \g__nmc_error_bool || \l__nmc_table_multifn_bool } { \tl_if_empty:NTF \l__nmc_table_cvar_tl { \int_set:Nn \l__nmc_table_cnum_int - { - \int_compare:nNnTF { \l__nmc_table_cnum_int } = { -1 } - { 1 } { \int_min:nn { 1 } - { \int_abs:n { \l__nmc_table_cnum_int } } } - } + { \int_min:nn { 1 } + { \int_abs:n { \l__nmc_table_cnum_int } } } } { \__nmc_table_get_ini_vals_aux:N c } } \bool_if:NT \l__nmc_table_round_bool - { \__nmc_fpify:VN \l__nmc_round_xpr_tl \l__nmc_toss_tl } - \seq_gpop:NN \g__nmc_error_where_seq \l__nmc_toss_tl + { + \__nmc_error_where:n { rounding~function } + \__nmc_fpify:VN \l__nmc_round_xpr_tl \l__nmc_toss_tl + \bool_if:NF \g__nmc_error_bool + { \seq_gpop:NN \g__nmc_error_where_seq \l__nmc_toss_tl } + } + \bool_if:NF \g__nmc_error_bool + { \seq_gpop:NN \g__nmc_error_where_seq \l__nmc_toss_tl } + } +% vv_digest:N +\cs_new_protected:Npn \__nmc_table_add_vv_to_ctitle: + { + \bool_if:nTF + { + \int_if_zero_p:n { \l__nmc_table_rpos_int } && + \int_if_zero_p:n { \l__nmc_table_cnum_int } + } + { \__nmc_error_what:n { Null~table~specified~in } } + { + \int_compare:nNnT { \l__nmc_table_ctitle_int } = { 3 } + { + \tl_put_right:Ne \l__nmc_table_ctitle_tl + { + \c__nmc_vv_delim_tl \mskip18muminus15mu( + \seq_use:Nn \l__nmc_vv_visible_seq { \c__nmc_vv_delim_tl } ) + } + } + } } +% get_ini_vals: \cs_new_protected:Npn \__nmc_table_get_ini_vals_aux:N #1 { \prop_get:NvNTF \l__nmc_subst_var_prop - { l__nmc_table_ #1 var_tl } \l_tmpa_tl - { - \fp_set:cn { l__nmc_table_ #1 start_fp } { \l_tmpa_tl } - \bool_if:cTF { l__nmc_table_ #1 spec_bool } + { l__nmc_table_#1 var_tl } \l_tmpa_tl + { + \fp_set:cn { l__nmc_table_#1 start_fp } { \l_tmpa_tl } + \bool_if:cTF { l__nmc_table_#1 spec_bool } { - \__nmc_fpify_set:cv { l__nmc_table_ #1 step_fp } - { l__nmc_table_ #1 step_tl } - \int_compare:vNnT { l__nmc_table_ #1 num_int } = { -1 } + \__nmc_fpify_set:cv { l__nmc_table_#1 step_fp } + { l__nmc_table_#1 step_tl } + \int_compare:vNnT { l__nmc_table_#1 num_int } = { -1 } { - \__nmc_fpify_set:cv { l__nmc_table_ #1 stop_fp } - { l__nmc_table_ #1 stop_tl } - \l__nmc_table_calc_num:cnnn { l__nmc_table_ #1 num_int } - { l__nmc_table_ #1 stop_fp } { l__nmc_table_ #1 start_fp } - { l__nmc_table_ #1 step_fp } + \__nmc_fpify_set:cv { l__nmc_table_#1 stop_fp } + { l__nmc_table_#1 stop_tl } + \__nmc_table_calc_rcnum:cnnn { l__nmc_table_#1 num_int } + { l__nmc_table_#1 stop_fp } { l__nmc_table_#1 start_fp } + { l__nmc_table_#1 step_fp } } } - { \__nmc_table_get_individual_ini_vals:N #1 } + { \__nmc_table_get_ini_vidual_vals:N #1 } } { - \tl_if_empty:cTF { l__nmc_table_ #1 var_tl } + \tl_if_empty:cTF { l__nmc_table_#1 var_tl } { \__nmc_error_what:n { No~ \__nmc_table_rc:N #1 \ variable~specified~in } @@ -427,42 +666,36 @@ } } } -\cs_new_protected:Npn \l__nmc_table_calc_num:Nnnn #1#2#3#4 - { - \int_set:Nn #1 { \fp_to_int:n { ( \exp_not:v { #2 } - \exp_not:v { #3 } ) - / \exp_not:v { #4 } } + 1 } - } -\cs_generate_variant:Nn \l__nmc_table_calc_num:Nnnn { c } - -\cs_new_protected:Npn \__nmc_table_get_individual_ini_vals:N #1 +% get_ini_vals_aux:N +\cs_new_protected:Npn \__nmc_table_get_ini_vidual_vals:N #1 { - \int_case:vnTF { l__nmc_table_ #1 num_int } + \int_case:vnTF { l__nmc_table_#1 num_int } { { -1 } { - \__nmc_fpify_set:cv { l__nmc_table_ #1 step_fp } - { l__nmc_table_ #1 step_tl } + \__nmc_fpify_set:cv { l__nmc_table_#1 step_fp } + { l__nmc_table_#1 step_tl } \bool_if:NF \g__nmc_error_bool - { \__nmc_fpify_set:cv { l__nmc_table_ #1 stop_fp } } - { l__nmc_table_ #1 stop_tl } + { \__nmc_fpify_set:cv { l__nmc_table_#1 stop_fp } } + { l__nmc_table_#1 stop_tl } \bool_if:NF \g__nmc_error_bool { - \l__nmc_table_calc_num:cnnn { l__nmc_table_ #1 num_int } - { l__nmc_table_ #1 stop_fp } { l__nmc_table_ #1 start_fp } - { l__nmc_table_ #1 step_fp } + \__nmc_table_calc_rcnum:cnnn { l__nmc_table_#1 num_int } + { l__nmc_table_#1 stop_fp } { l__nmc_table_#1 start_fp } + { l__nmc_table_#1 step_fp } } } { 0 } { - \fp_set:cn { l__nmc_table_ #1 stop_fp } - { \exp_not:v { l__nmc_table_ #1 start_fp } - 1 } - \fp_set:cn { l__nmc_table_ #1 step_fp } { 1 } + \fp_set:cn { l__nmc_table_#1 stop_fp } + { \exp_not:v { l__nmc_table_#1 start_fp } - 1 } + \fp_set:cn { l__nmc_table_#1 step_fp } { 1 } } { 1 } { - \fp_set_eq:cc { l__nmc_table_ #1 stop_fp } - { l__nmc_table_ #1 start_fp } - \fp_set:cn { l__nmc_table_ #1 step_fp } { 1 } + \fp_set_eq:cc { l__nmc_table_#1 stop_fp } + { l__nmc_table_#1 start_fp } + \fp_set:cn { l__nmc_table_#1 step_fp } { 1 } } } { @@ -470,160 +703,156 @@ { \__nmc_error_what:n { Missing~ \__nmc_table_rc:N #1-related~variable~in } } } - { - \int_compare:vNnTF { l__nmc_table_ #1 num_int } > { 1 } + { + \int_compare:vNnTF { l__nmc_table_#1 num_int } > { 1 } { - \bool_if:NF \l__nmc_table_rdata_bool + \bool_if:nF { \l__nmc_table_rvirreg_bool } { - \__nmc_fpify_set:cv { l__nmc_table_ #1 step_fp } - { l__nmc_table_ #1 step_tl } + \__nmc_fpify_set:cv { l__nmc_table_#1 step_fp } + { l__nmc_table_#1 step_tl } } } { \__nmc_error_what:n { Check~number~of~ \__nmc_table_rc:N #1s~specified~in } } } } -%%%%%%%%%% -\cs_set_protected:Npn \__nmc_table_formula: - { - \tl_set:Nx \l_tmpa_tl { \tl_head:N \l__nmc_formula_tl } - \tl_if_in:nVT { $ \( \[ } \l_tmpa_tl - { - \tl_set:Nx \l__nmc_formula_tl - { \tl_range:Nnn \l__nmc_formula_tl {2}{-2} } - } - \tl_set_eq:NN \l__nmc_formula_dup_tl \l__nmc_formula_tl - } -%%%%%%%%%% -\cs_gset_protected:Npn \__nmc_table_process: +% get_ini_vals_aux:N , get_ini_vidual_vals:N +\cs_new_protected:Npn \__nmc_table_calc_rcnum:Nnnn #1#2#3#4 { - \__nmc_error_where:n { formula } - \__nmc_table_calc_rvar_col: + \int_set:Nn #1 { \fp_to_int:n { ( \exp_not:v { #2 } - \exp_not:v { #3 } ) + / \exp_not:v { #4 } } + 1 } + } +\cs_generate_variant:Nn \__nmc_table_calc_rcnum:Nnnn { c } +% get_ini_vals_aux:N (x2), get_ini_vidual_vals:N (x2) +\cs_new:Npn \__nmc_table_rc:N #1 + { \str_if_eq:nnTF { #1 } { r } { row } { column } } +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% process: / +\cs_new_protected:Npn \__nmc_table_calculate: + { + \__nmc_table_rvcol_calc:N \l__nmc_table_rvcol_seq \bool_if:NF \g__nmc_error_bool - { - \seq_clear:N \l__nmc_table_header_seq - \tl_if_in:NVT \l__nmc_formula_tl \l__nmc_multi_delim_tl - { \__nmc_table_multifn: } - \__nmc_table_calc_cvar_cols: - \bool_if:NF \g__nmc_error_bool - { - \tl_clear:N \l__nmc_result_tl - \__nmc_table_form_body:N \l__nmc_result_tl - \tl_set_eq:NN \l__nmc_fp_expr_tl \l__nmc_fp_exprn_tl - \bool_if:NT \l__nmc_num_only_bool - { - \bool_if:NTF \l__nmc_table_num_only_bool - { - \tl_set_eq:NN \l__nmc_result_tl \l__nmc_table_num_only_tl - \tl_gset_eq:NN \g__nmc_reuse_tl \l__nmc_table_num_only_tl - \bool_gset_true:N \g__nmc_reuse_bool - } - { - \__nmc_error_where:n { settings } - \__nmc_error_what:n - { \l__nmc_table_query_tl~query~\__nmc_verb:n {Q?}~in } - \tl_clear:N \l__nmc_result_tl - } - } - } + { + \__nmc_table_multifn:NN \l__nmc_table_chead_seq \l__nmc_table_cnum_int + \bool_if:nT + { + \l__nmc_table_multifn_bool || + \int_compare_p:nNn \l__nmc_table_cnum_int = { 1 } + } + { \bool_set_true:N \l__nmc_table_chverb_bool } } - \int_compare:nNnT \l__nmc_dbg_int = { 11 } + \bool_if:NF \g__nmc_error_bool { - \__nmc_table_display: - \tl_set:NV \l__nmc_show_tl \l__nmc_result_tl + \__nmc_table_fvcols_calc:NN + \l__nmc_table_fvcols_seq \l__nmc_table_chead_seq + \bool_if:NT \l__nmc_table_rverb_bool + { \seq_set_eq:NN \l__nmc_table_rvcol_seq \l__nmc_table_rvirreg_seq } } } -\cs_new_protected:Npn \__nmc_table_multifn: +% calulate: / #1 = rvcol_seq +\cs_new_protected:Npn \__nmc_table_rvcol_calc:N #1 { - \bool_set_true:N \l__nmc_table_multifn_bool - \seq_set_split:NVV \l__nmc_table_multifn_seq - \l__nmc_multi_delim_tl \l__nmc_formula_tl - \seq_remove_all:Nn \l__nmc_table_multifn_seq {} - \seq_set_eq:NN \l__nmc_table_header_seq \l__nmc_table_multifn_seq - \int_set:Nn \l__nmc_table_cnum_int - { \seq_count:N \l__nmc_table_multifn_seq } - \fp_set:Nn \l__nmc_table_cstep_fp { 0 } - \fp_set:Nn \l__nmc_table_cstart_fp { 0 } - \tl_set:Nn \l__nmc_table_cvar_tl { \l__nmc_x_tl } - \prop_put:Nnn \l__nmc_subst_var_prop { \l__nmc_x_tl } { 1 } - \int_set_eq:NN \l__nmc_table_chstyle_int \c__nmc_table_chstyle_int - } -\cs_new_protected:Npn \__nmc_table_calc_rvar_col: + \bool_if:NTF \l__nmc_table_rvirreg_bool + { \__nmc_table_rdata:N #1 } + { + \tl_if_empty:NTF \l__nmc_table_rfunc_tl + { \__nmc_table_runiform:N #1 } + { \__nmc_table_rfunc:N #1 } + } + } +% calculate: / #1 chead_seq; #2 cnum_int +\cs_new_protected:Npn \__nmc_table_multifn:NN #1#2 { - \bool_if:NTF \l__nmc_table_rdata_bool + \tl_if_in:NVT \l__nmc_formula_tl \l__nmc_multi_delim_tl { - \__nmc_table_rdata_fpstart: - \bool_if:NF \g__nmc_error_bool - { - \seq_map_inline:Nn \l__nmc_table_rdata_seq - { - \tl_clear:N \l_tmpb_tl - \__nmc_fpify:nN { ##1 } \l_tmpb_tl - \fp_set:Nn \l__nmc_table_r_fp - { - \int_if_zero:nTF \l__nmc_table_rfrac_int - { round( \l_tmpb_tl, \l__nmc_table_rround_int ) } - { \l_tmpb_tl } - } - \__nmc_error_fpflag: - \bool_if:NT \g__nmc_error_bool - { \seq_map_break: } - \seq_put_right:NV \l__nmc_table_rvraw_seq \l__nmc_table_r_fp - } - } + \bool_set_true:N \l__nmc_table_multifn_bool + \seq_set_split:NVV \l__nmc_table_multifn_seq + \l__nmc_multi_delim_tl \l__nmc_formula_tl + \seq_remove_all:Nn \l__nmc_table_multifn_seq {} + \seq_set_eq:NN #1 \l__nmc_table_multifn_seq + \int_set:Nn #2 { \seq_count:N \l__nmc_table_multifn_seq } } + \tl_if_empty:NT \l__nmc_table_cvar_tl { - \tl_if_empty:NTF \l__nmc_table_rfunc_tl - { \__nmc_table_runiform: } - { \__nmc_table_rfunc: } + \fp_set:Nn \l__nmc_table_cstep_fp { 0 } + \fp_set:Nn \l__nmc_table_cstart_fp { 0 } + \tl_set:Nn \l__nmc_table_cvar_tl { \c_empty_tl } + \prop_put:Nnn \l__nmc_subst_var_prop { \c_empty_tl } { 0 } + } + } +% calculate: / #1 = fvcols_seq, #2 = chead_seq +\cs_new_protected:Npn \__nmc_table_fvcols_calc:NN #1#2 + { + \fp_set_eq:NN \l__nmc_table_c_fp \l__nmc_table_cstart_fp + \int_step_inline:nn { \l__nmc_table_cnum_int } + { + \bool_if:NF \g__nmc_error_bool + { \__nmc_table_thiscol_calc:NN \l__nmc_table_thiscol_seq #2 } + \bool_if:NF \g__nmc_error_bool + { + \__nmc_table_fvcols_append_col:NN #1 \l__nmc_table_thiscol_seq + \__nmc_calc_fn_val:VNnN \l__nmc_table_cvar_tl \l__nmc_formula_tl + { \l__nmc_table_c_fp } \l_tmpc_fp + } } - } -\cs_new_protected:Npn \__nmc_table_runiform: +%%%%%%%%%% +% rvcol_calc: / #1 = rvcol_seq +\cs_new_protected:Npn \__nmc_table_rdata:N #1 { + \seq_map_inline:Nn \l__nmc_table_rvirreg_seq + { + \tl_clear:N \l_tmpb_tl + \__nmc_fpify:nN { ##1 } \l_tmpb_tl + \fp_set:Nn \l__nmc_table_r_fp + { + \int_if_zero:nTF \l__nmc_table_rfrac_int + { round( \l_tmpb_tl, \l__nmc_table_rround_int ) } + { \l_tmpb_tl } + } + \__nmc_error_fpflag: + \bool_if:NT \g__nmc_error_bool + { \seq_map_break: } + \seq_put_right:NV #1 \l__nmc_table_r_fp + } + } +% rvcol_calc:N / #1 = rvcol_seq +\cs_new_protected:Npn \__nmc_table_runiform:N #1 + { \fp_set_eq:NN \l__nmc_table_r_fp \l__nmc_table_rstart_fp - \int_step_inline:nnnn { 1 } { 1 } { \l__nmc_table_rnum_int } + \int_step_inline:nn { \l__nmc_table_rnum_int } { \int_if_zero:nT \l__nmc_table_rfrac_int { \fp_set:Nn \l__nmc_table_r_fp { round( \l__nmc_table_r_fp, \l__nmc_table_rround_int ) } - } - \seq_put_right:NV \l__nmc_table_rvraw_seq \l__nmc_table_r_fp + } + \seq_put_right:NV #1 \l__nmc_table_r_fp \fp_add:Nn \l__nmc_table_r_fp { \l__nmc_table_rstep_fp } } } -\cs_new_protected:Npn \__nmc_table_rdata_fpstart: - { - \seq_get_left:NN \l__nmc_table_rdata_seq \l_tmpa_tl - \tl_put_left:Nn \l_tmpa_tl { = } - \tl_put_left:NV \l_tmpa_tl \l__nmc_table_rvar_tl - \seq_set_from_clist:NN \l_tmpa_seq \l_tmpa_tl - \__nmc_vv_digest:N \l_tmpa_seq - \bool_if:NF \g__nmc_error_bool - { - \prop_get:NVN \l__nmc_subst_var_prop \l__nmc_table_rvar_tl \l_tmpa_tl - \fp_set:Nn \l__nmc_table_rstart_fp { \l_tmpa_tl } - } - } -\cs_new_protected:Npn \__nmc_table_rfunc: +% rvcol_calc:N / +\cs_new_protected:Npn \__nmc_table_rfunc:N #1 { + \__nmc_error_where:n { row-variable~function } + \fp_set_eq:NN \l__nmc_table_r_fp \l__nmc_table_rstart_fp \bool_if:NF \g__nmc_error_bool { - \__nmc_error_where:n { row-variable~function } - \fp_set_eq:NN \l__nmc_table_r_fp \l__nmc_table_rstart_fp - \seq_clear:N \l__nmc_table_rdata_seq + \seq_clear:N \l__nmc_table_rvirreg_seq \int_step_function:nN { \l__nmc_table_rnum_int } \__nmc_table_rfunc_step_fn:n \seq_gpop:NN \g__nmc_error_where_seq \l__nmc_toss_tl - \bool_if:NF \g__nmc_error_bool - { - \__nmc_table_rdata_fpstart: - \seq_set_eq:NN \l__nmc_table_rvraw_seq \l__nmc_table_rdata_seq - \bool_set_true:N \l__nmc_table_rdata_bool - } } - } + \bool_if:NF \g__nmc_error_bool + { + \prop_get:NVN \l__nmc_subst_var_prop + \l__nmc_table_rvar_tl \l_tmpa_tl + \fp_set:Nn \l__nmc_table_rstart_fp { \l_tmpa_tl } + \seq_set_eq:NN #1 \l__nmc_table_rvirreg_seq + \bool_set_true:N \l__nmc_table_rvirreg_bool + } + } +% rfunc: / \cs_new_protected:Npn \__nmc_table_rfunc_step_fn:n #1 { \bool_if:NF \g__nmc_error_bool @@ -634,235 +863,268 @@ { \__nmc_num_format:nNnN { \l_tmpa_fp } \l_tmpb_tl { \l__nmc_table_rround_int } \c_false_bool + \tl_set:Ne \l_tmpb_tl + { \exp_not:o \l__nmc_table_rfont_tl { \l_tmpb_tl } } } - { \tl_set:Nx \l_tmpb_tl { \fp_use:N \l_tmpa_fp } } - \seq_put_right:NV \l__nmc_table_rdata_seq \l_tmpb_tl + { \tl_set:Ne \l_tmpb_tl { \fp_use:N \l_tmpa_fp } } + \seq_put_right:NV \l__nmc_table_rvirreg_seq \l_tmpb_tl \fp_add:Nn \l__nmc_table_r_fp { \l__nmc_table_rstep_fp } } - } -\cs_new:Npn \__nmc_table_calc_cvar_cols: - { - \fp_set_eq:NN \l__nmc_table_c_fp \l__nmc_table_cstart_fp - \int_step_inline:nn { \l__nmc_table_cnum_int } - { - \bool_if:NF \g__nmc_error_bool - { - \__nmc_table_multifn_header: - \seq_clear:N \l__nmc_table_this_col_seq - \seq_map_inline:Nn \l__nmc_table_rvraw_seq - { - \__nmc_calc_fn_val:VNnN \l__nmc_table_rvar_tl - \l__nmc_formula_tl { ####1 } \l_tmpa_fp - \bool_if:NT \g__nmc_error_bool - { \seq_map_break: } - \seq_put_right:NV \l__nmc_table_this_col_seq \l_tmpa_fp - \bool_if:NT \l__nmc_table_QA_bool - { \__nmc_table_maxmin_do:n { \l_tmpa_fp } } - } - } - \bool_if:NF \g__nmc_error_bool - { - \seq_put_right:NV \l__nmc_table_body_cols_seq - \l__nmc_table_this_col_seq - \fp_add:Nn \l__nmc_table_c_fp \l__nmc_table_cstep_fp - \int_if_zero:nTF { \l__nmc_mode_tl } - { \prop_put:NVV \l__nmc_subst_var_prop } - { \prop_put:NVV \l__nmc_vv_change_prop } - \l__nmc_table_rvar_tl \l__nmc_table_rstart_fp - \int_compare:nNnF { ##1 } > { \l__nmc_table_cnum_int } - { - \__nmc_calc_fn_val:VNnN \l__nmc_table_cvar_tl - \l__nmc_formula_tl { \l__nmc_table_c_fp } - \l__nmc_table_fn_val_fp - } - } - } } -\cs_new_protected:Npn \__nmc_table_multifn_header: +% fvcols_calc:NN / #1 = thiscol_seq, #2 = chead_seq +\cs_new_protected:Npn \__nmc_table_thiscol_calc:NN #1#2 { \bool_if:NTF \l__nmc_table_multifn_bool { \seq_pop:NN \l__nmc_table_multifn_seq \l__nmc_formula_tl } - { \seq_put_right:NV \l__nmc_table_header_seq { \l__nmc_table_c_fp } } + { + \int_compare:nNnTF { \l__nmc_table_cnum_int } = { 1 } + { \seq_put_right:NV #2 \l__nmc_formula_tl } + { \__nmc_table_chead:Nn #2 { \l__nmc_table_c_fp } } + } + \seq_clear:N #1 + \seq_map_inline:Nn \l__nmc_table_rvcol_seq + { + \__nmc_calc_fn_val:VNnN \l__nmc_table_rvar_tl + \l__nmc_formula_tl { ##1 } \l_tmpa_fp + \bool_if:NT \g__nmc_error_bool + { \seq_map_break: } + \seq_put_right:NV #1 \l_tmpa_fp + \bool_if:NT \l__nmc_table_QA_bool + { \__nmc_table_maxmin_do:n { \l_tmpa_fp } } + } } -\cs_new_protected:Npn \__nmc_table_maxmin_do:n #1 +% fvcols_calc:NN / append seq #2 to seq of seqs #1 +\cs_new_protected:Npn \__nmc_table_fvcols_append_col:NN #1 #2 { - \bool_if:NT \l__nmc_table_QA_max_bool - { \fp_set:Nn \l__nmc_table_max_fp - { \fp_max:nn { \l__nmc_table_max_fp } { #1} } } - \bool_if:NT \l__nmc_table_QA_min_bool - { \fp_set:Nn \l__nmc_table_min_fp - { \fp_min:nn { \l__nmc_table_min_fp } { #1 } } } + \seq_put_right:NV #1 #2 + \fp_add:Nn \l__nmc_table_c_fp \l__nmc_table_cstep_fp + \int_if_zero:nTF { \l__nmc_mode_tl } + { \prop_put:NVV \l__nmc_subst_var_prop } + { \prop_put:NVV \l__nmc_vv_change_prop } + \l__nmc_table_rvar_tl \l__nmc_table_rstart_fp + } +% thiscol_calc:NN / #1 = chead_seq, #2 = cvar_fp +\cs_new_protected:Npn \__nmc_table_chead:Nn #1#2 + { + \bool_if:nTF { \int_compare_p:nNn { \l__nmc_table_cnum_int } = { 1 } && + !\int_compare_p:nNn { \l__nmc_table_rnum_int } = { 1 } } + { \seq_put_right:Ne #1 { \exp_not:o\l__nmc_formula_dup_tl } } + { \seq_put_right:No #1 { #2 } } } -%---------------------------------------------------------- -\cs_gset_protected:Npn \__nmc_table_display: +%%%%%%%%%% +% process: / +\cs_new_protected:Npn \__nmc_table_transpose: + { + \__nmc_table_transpose_body:N \l__nmc_table_fvcols_seq + \__nmc_table_transpose_hrow_rvcol_vals: + } +% transpose: / #1 seq of seqs +\cs_new_protected:Npn \__nmc_table_transpose_body:N #1 { - \bool_if:NF \l__nmc_num_only_bool + \seq_clear:N \l_tmpd_seq + \int_step_inline:nn { \l__nmc_table_rnum_int } { - \int_if_zero:nT \l__nmc_table_headless_int - { - \__nmc_table_headercnum: - \tl_set:Nx \l__nmc_table_header_tl { \__nmc_table_header: } - } - \bool_if:NT \l__nmc_table_foot_bool - { - \seq_set_split:NnV \l_tmpa_seq { & }\l__nmc_table_header_tl - \seq_reverse:N \l_tmpa_seq - \tl_set:Nx \l__nmc_table_footer_tl - { \seq_use:Nn \l_tmpa_seq { & } } - } - \tl_put_left:Nx \l__nmc_result_tl - { - \__nmc_table_upper: - \exp_not:o \l__nmc_table_header_tl - \int_if_zero:nT \l__nmc_table_headless_int - { - \\~ - \__nmc_if_mod_zero:nnT { \l__nmc_table_rules_int } { 7 } - { \exp_not:N \midrule } - } - } - \tl_put_right:Nx \l__nmc_result_tl { \__nmc_table_form_lower: } - \bool_if:NF \l__nmc_num_only_bool + \seq_clear:N \l_tmpb_seq + \seq_clear:N \l_tmpc_seq + \seq_map_variable:NNn #1 \l_tmpa_seq { - \bool_gset_false:N \g__nmc_reuse_bool - \tl_gset:Nx \g__nmc_reuse_tl { \exp_not:o \l__nmc_result_tl } + \seq_pop:NN \l_tmpa_seq \l_tmpa_tl + \seq_put_right:Ne \l_tmpb_seq \l_tmpa_tl + \seq_put_right:NV \l_tmpc_seq \l_tmpa_seq } + \seq_put_right:NV \l_tmpd_seq \l_tmpb_seq + \seq_set_eq:NN #1 \l_tmpc_seq } - \int_if_zero:nT \l__nmc_dbg_int - { \l__nmc_result_tl } + \seq_set_eq:NN #1 \l_tmpd_seq } -\cs_new:Npn \__nmc_table_upper: - { - \exp_not:n { \begin{tabular} } - \exp_not:o \l__nmc_table_valign_tl - { - \int_if_odd:nT { \l__nmc_table_rpos_int } - { \l__nmc_table_rcalign_tl } - \prg_replicate:nn - { \l__nmc_table_cnum_int } \l__nmc_table_ccalign_tl - \int_compare:nNnT { \l__nmc_table_rpos_int } > { 1 } - { \l__nmc_table_rcalign_tl } - } - \__nmc_if_mod_zero:nnT { \l__nmc_table_rules_int } { 2 } - { \exp_not:N \toprule } - \int_if_zero:nF { \l__nmc_table_ctitle_int } - { \__nmc_table_form_ctitle: } - } -\cs_new:Npn \__nmc_table_form_ctitle: +\cs_new_protected:Npn \__nmc_table_transpose_hrow_rvcol_vals: { - \int_compare:nNnTF { \l__nmc_table_rpos_int } = { 0 } + \__nmc_table_swap:nNN {int} \l__nmc_table_rnum_int \l__nmc_table_cnum_int + \__nmc_table_swap:nNN {int} + \l__nmc_table_rround_int \l__nmc_table_chround_int + \bool_if:NT \l__nmc_table_rverb_bool + { \seq_set_eq:NN \l__nmc_table_rvcol_seq \l__nmc_table_rvirreg_seq } + \__nmc_table_swap:nNN {seq} + \l__nmc_table_rvcol_seq \l__nmc_table_chead_seq + \__nmc_table_swap:nNN {fp} + \l__nmc_table_rstep_fp \l__nmc_table_cstep_fp + \__nmc_table_swap:nNN {fp} + \l__nmc_table_rstart_fp \l__nmc_table_cstart_fp + \__nmc_table_swap:nNN {tl} + \l__nmc_table_rvar_tl \l__nmc_table_cvar_tl + \bool_xor:nnT { \l__nmc_table_rverb_bool } { \l__nmc_table_chverb_bool } { - \int_compare:nNnF { \l__nmc_table_cnum_int } = { 1 } - { - \__nmc_table_form_ctitle:nnnn {} {} { 1 } - { \l__nmc_table_cnum_int } - } + \bool_set_inverse:N \l__nmc_table_rverb_bool + \bool_set_inverse:N \l__nmc_table_chverb_bool } + \int_set:Nn \l__nmc_table_rpos_int + { \int_min:nn { \l__nmc_table_rpos_int } { 3 } } + \bool_if:NT \l__nmc_table_rhead_bool { - \int_compare:nNnT { \l__nmc_table_cnum_int } > { 1 } + \int_compare:nNnT \l__nmc_table_rnum_int > { 1 } { - \int_case:nnF { \l__nmc_table_rpos_int } + \bool_if:NF \l__nmc_table_multifn_bool { - { 1 } { \__nmc_table_form_ctitle:nnnn { & } {} { 2 } - { \l__nmc_table_cnum_int + 1 } } - { 2 } { \__nmc_table_form_ctitle:nnnn {} { & } { 1 } - { \l__nmc_table_cnum_int } } - } - { % 3,4/5 - \__nmc_table_form_ctitle:nnnn { & } { & } { 2 } - { \l__nmc_table_cnum_int + 1 } + \tl_set:Nn \l__nmc_table_rhead_tl { ` } + \tl_set:Nn \l__nmc_table_rheadi_tl { ` } } } + \__nmc_table_settings_rhead: } } -\cs_new:Npn \__nmc_table_form_ctitle:nnnn #1#2#3#4 - { - #1 \exp_not:N \multicolumn - { \int_eval:n { \l__nmc_table_cnum_int } } { c } - { $ \exp_not:o { \l__nmc_table_ctitle_tl } $ } - #2 \\~ - \__nmc_if_mod_zero:nnT { \l__nmc_table_rules_int } { 3 } - { \exp_not:N \cmidrule(lr) { #3-\int_eval:n { #4 } } } - \tl_if_empty:NF \l__nmc_table_csubttl_tl - { \__nmc_table_csubttl: \\~ } - \__nmc_if_mod_zero:nnT { \l__nmc_table_rules_int } { 5 } - { \__nmc_table_csubttl_rule:nn { #3 } { #4 } } - } -%%%%%%%%% -\cs_new:Npn \__nmc_table_csubttl: +% not applicable to boolean variables +\cs_new_protected:Npn \__nmc_table_swap:nNN #1#2#3 { - \int_if_zero:nF { \l__nmc_table_cnum_int } - { - \int_case:nnF { \l__nmc_table_rpos_int } - { - { 0 } { \exp_not:o \l__nmc_table_csubttl_tl } - { 1 } { & \exp_not:o \l__nmc_table_csubttl_tl } - { 2 } { \exp_not:o \l__nmc_table_csubttl_tl & } - } - { & \exp_not:o \l__nmc_table_csubttl_tl & } - } + \tl_set:NV \l__nmc_swap_tl #2 + \use:c {#1_set_eq:NN} #2 #3 + \use:c {#1_set_eq:NN} #3 \l__nmc_swap_tl } -\cs_new:Npn \__nmc_table_csubttl_rule:nn #1#2 +%%%%%%%%%% +% process: / +\cs_new:Npn \__nmc_table_totalcols: { - \int_compare:nNnTF { \l__nmc_table_rpos_int } > { 2 } - { \exp_not:N \cmidrule(lr) { 1-\__nmc_table_total_cols: } } - { \exp_not:N \cmidrule(lr) { { #1 } -\int_eval:n { #2 } } } + \int_eval:n { \int_sign:n { \l__nmc_table_rpos_int } + + \l__nmc_table_cnum_int + + \int_div_truncate:nn { \l__nmc_table_rpos_int } { 3 } } } -%%%%%%%%% -\cs_new:Npn \__nmc_table_header: - { - \int_if_zero:nTF { \l__nmc_table_cnum_int } +%%%%%%%%%% +% process: +\cs_new_protected:Npn \__nmc_table_format_items: + { + \__nmc_table_rvcol_format:NN + \l__nmc_table_rvcol_seq \l__nmc_table_rvcoli_seq + \__nmc_table_chead_format:NN + \l__nmc_table_chead_seq \l__nmc_table_chead_tl + \tl_set:Ne \l__nmc_table_header_tl { \__nmc_table_header: } + \__nmc_table_footer:NN + \l__nmc_table_footer_tl \l__nmc_table_header_tl + \__nmc_table_fvcols_format:N \l__nmc_table_fvcols_seq + } +% format_items: / #1 rvcol_seq #2 rvcoli_seq +\cs_new_protected:Npn \__nmc_table_rvcol_format:NN #1#2 + { + \seq_set_eq:NN #2 #1 + \bool_lazy_all:nTF { - \__nmc_table_header_rvar:nn { \exp_not:o \l__nmc_table_rhead_tl } - \l__nmc_table_rhnudge_tl + { \l__nmc_table_rvirreg_bool } + { \int_compare_p:nNn \l__nmc_table_rfrac_int = { 5 } } + { !\l__nmc_table_rverb_bool } } - { - \int_case:nnF { \l__nmc_table_rpos_int } + { + \__nmc_table_rdatafrac:NN + \l__nmc_table_rvcol_seq \l__nmc_table_rvirreg_seq + } + { + \int_zero:N \l__nmc_table_rfrac_int + \seq_clear:N \l_tmpa_seq + \bool_if:NTF \l__nmc_table_rverb_bool { - { 0 } { \exp_not:o \l__nmc_table_chead_tl } - { 1 } - { - \__nmc_table_header_rvar:nn - { \exp_not:o \l__nmc_table_rhead_tl } - \l__nmc_table_rhnudge_tl - & \exp_not:o \l__nmc_table_chead_tl - } - { 2 } - { - \exp_not:o \l__nmc_table_chead_tl & - \__nmc_table_header_rvar:nn - { \exp_not:o \l__nmc_table_rhead_tl } - \l__nmc_table_rhnudge_tl + \seq_map_inline:Nn #1 { \__nmc_table_rvcol_format_aux:nN + { \exp_not:n { ##1 } } \l_tmpa_seq } + } + { + \__nmc_table_swap:nNN {int} + \l__nmc_frac_out_int \l__nmc_table_rfrac_int + \seq_map_inline:Nn #1 + { + \__nmc_num_format:nNnN { ##1 } \l_tmpb_tl + { \l__nmc_table_rround_int } \c_false_bool + \__nmc_table_rvcol_format_aux:nN \l_tmpb_tl \l_tmpa_seq } + \__nmc_table_swap:nNN {int} \l__nmc_frac_out_int \l__nmc_table_rfrac_int } - { % 3,4/5 - \__nmc_table_header_rvar:nn - { \exp_not:o \l__nmc_table_rhead_tl } - \l__nmc_table_rhnudge_tl - & \exp_not:o \l__nmc_table_chead_tl & - \__nmc_table_header_rvar:nn - { \exp_not:o \l__nmc_table_rheadi_tl } - \l__nmc_table_rhnudgei_tl + \seq_set_eq:NN #1 \l_tmpa_seq + } + \int_compare:nNnTF { \l__nmc_table_rpos_int } < { 4 } + { \seq_set_eq:NN #2 \l_tmpa_seq } + { + \bool_if:NF \l__nmc_table_transpose_bool + { + \bool_if:NTF \l__nmc_table_rvari_bool + { \__nmc_table_rvcoli:N #2 } + { + \seq_reverse:N \l_tmpa_seq + \seq_set_eq:NN #2 \l_tmpa_seq + } } } } -\cs_new:Npn \__nmc_table_headercnum: - { - \int_compare:nNnTF { \l__nmc_table_cnum_int } = { 1 } - { \__nmc_table_headeri: } - { \__nmc_table_headern: } +% rvcol_format:N #1 rvcoli_seq +\cs_new_protected:Npn \__nmc_table_rvcoli:N #1 + { + \__nmc_error_where:n { settings } + \__nmc_table_swap:nNN {int} + \l__nmc_frac_out_int \l__nmc_table_rfrac_int + \seq_clear:N \l_tmpb_seq + \seq_map_inline:Nn #1 + { + \__nmc_calc_fn_val:VNnN \l__nmc_table_rvar_tl + \l__nmc_table_rvari_tl { ##1 } \l_tmpa_fp + \__nmc_num_format:nNnN { \l_tmpa_fp } \l_tmpb_tl + { \l__nmc_table_rround_int } \c_false_bool + \__nmc_table_rvcol_format_aux:VN \l_tmpb_tl \l_tmpb_seq + } + \__nmc_table_swap:nNN {int} \l__nmc_frac_out_int \l__nmc_table_rfrac_int + \seq_set_eq:NN #1 \l_tmpb_seq + \seq_gpop:NN \g__nmc_error_where_seq \l__nmc_toss_tl + } +\cs_new_protected:Npn \__nmc_table_rvcol_format_aux:nN #1#2 + { + \seq_put_right:Ne #2 { $ \l__nmc_table_rmath_tl + \exp_not:o \l__nmc_table_rfont_tl { \exp_not:o { #1 } } $ } } -\cs_new:Npn \__nmc_table_header_rvar:nn #1#2 - { \__nmc_table_header_nudge:Nnn r { #1 } { #2 } } +\cs_generate_variant:Nn \__nmc_table_rvcol_format_aux:nN { V } -\cs_new:Npn \__nmc_table_headeri: +% rvcol_format:N #1 rvcol_seq (out), #2 rvirreg_seq (in) +\cs_new_protected:Npn \__nmc_table_rdatafrac:NN #1#2 + { + \seq_clear:N \l_tmpa_seq + \seq_map_inline:Nn #2 + { + \__nmc_table_rvcol_format_aux:nN + { \__nmc_table_rdatafrac_split:wN ##1/\q_stop } + \l_tmpa_seq + } + \seq_set_eq:NN #1 \l_tmpa_seq + } +\cs_new:Npn \__nmc_table_rdatafrac_split:wN #1#2/#3\q_stop + { + \tl_if_empty:nTF { #3 } + { #1#2 } + { + \tl_if_head_eq_charcode:nNTF { #1 } - + { #1 \__nmc_table_frac_out_aux:nn { #2 } } + { \__nmc_table_frac_out_aux:nn { #1#2 } } + { \__nmc_table_rdatafrac_slash:wN #3\q_stop } + } + } +\cs_new:Npn \__nmc_table_rdatafrac_slash:wN #1/\q_stop { #1 } +\cs_new:Npn \__nmc_table_frac_out_aux:nn #1#2 { - \tl_if_empty:NT \l__nmc_table_chead_tl + \fp_compare:nNnT { #1 } < { 0 } { - } + \sfrac { #1 } { #2 } + } +% format_items: / #1 chead_seq #2 chead_tl +\cs_new_protected:Npn \__nmc_table_chead_format:NN #1#2 + { + \int_compare:nNnTF { \l__nmc_table_cnum_int } = { 1 } { - \tl_set:Nx \l__nmc_table_chead_tl + \int_compare:nNnTF { \l__nmc_table_rnum_int } = { 1 } + { \__nmc_table_chead_n:NN #1 #2 } + { \__nmc_table_chead_i:N #2 } + } + { \__nmc_table_chead_n:NN #1 #2 } + } +% chead_format:NN / #1 chead_seq, but cvar val if transpose=rnum=cnum=1 +\cs_new:Npn \__nmc_table_chead_i:N #1 + { + \tl_if_empty:NT #1 + { + \tl_set:Ne #1 { - \__nmc_table_header_nudge:Nnn c + \__nmc_table_chead_nudge:Nnn c { + \l__nmc_table_chmath_tl \int_if_zero:nTF { \l__nmc_table_ctitle_int } { \exp_not:o \l__nmc_formula_dup_tl } { \exp_not:o \l__nmc_table_ctitle_tl } @@ -871,210 +1133,272 @@ } } } -\cs_new:Npn \__nmc_table_headern: +% chead_format:NN / #1 chead_seq #2 chead_tl +\cs_new:Npn \__nmc_table_chead_n:NN #1#2 { - \int_set_eq:NN \l__nmc_table_chfrac_int \l__nmc_frac_out_int + \int_set_eq:NN \l__nmc_table_store_int \l__nmc_frac_out_int \int_zero:N \l__nmc_frac_out_int - \tl_if_empty:NT \l__nmc_table_chead_tl + \tl_if_empty:NT #2 { \seq_clear:N \l_tmpa_seq \bool_set_true:N \l__nmc_table_coli_only_bool - \bool_if:NTF \l__nmc_table_multifn_bool + \bool_if:NTF \l__nmc_table_chverb_bool { - \seq_map_inline:Nn \l__nmc_table_header_seq - { \__nmc_table_header_auxi:Nn \l_tmpa_seq { ##1 } } + \seq_map_variable:NNn #1 \l_tmpb_tl + { \__nmc_table_chstyler:NN \l_tmpa_seq \l_tmpb_tl } } - { - \seq_map_inline:Nn \l__nmc_table_header_seq + { + \seq_map_inline:Nn #1 { \__nmc_num_format:nNnN { ##1 } \l_tmpb_tl { \l__nmc_table_chround_int } \l__nmc_sci_num_out_bool + \int_if_zero:nF { \l__nmc_table_chstyle_int - 3 } + { + \tl_set:Ne \l_tmpb_tl + { \exp_not:o \l__nmc_table_chfont_tl { \l_tmpb_tl } } + } \__nmc_table_chstyler:NN \l_tmpa_seq \l_tmpb_tl } } - \tl_set:Nx \l__nmc_table_chead_tl { \seq_use:Nn \l_tmpa_seq { & } } + \tl_set:Ne #2 { \seq_use:Nn \l_tmpa_seq { & } } } - \int_set_eq:NN \l__nmc_frac_out_int \l__nmc_table_chfrac_int + \int_set_eq:NN \l__nmc_frac_out_int \l__nmc_table_store_int } -\cs_new_protected:Npn \__nmc_table_chstyler:NN #1 #2 - { - \int_case:nnF { \l__nmc_table_chstyle_int } +% headern:NN / #1 tmpa_seq #2 tmpb_tl +\cs_new_protected:Npn \__nmc_table_chstyler:NN #1#2 + { + \bool_if:NTF \l__nmc_table_transpose_bool + { + \int_compare:nNnT { \l__nmc_table_chstyle_int } > { 2 } + { \int_zero:N \l__nmc_table_chstyle_int } + } + { + \bool_if:NT \l__nmc_table_multifn_bool + { \int_zero:N \l__nmc_table_chstyle_int } + } + \int_case:nnTF { \l__nmc_table_chstyle_int } { - { 0 } { \__nmc_table_header_auxi:NV #1 #2 } + { 0 } { \__nmc_table_chead_auxi:NV #1 #2 } { 1 } { \bool_if:NTF \l__nmc_table_coli_only_bool { - \__nmc_table_header_auxi:Nx #1 + \__nmc_table_chead_auxi:Ne #1 { \l__nmc_table_cvar_tl = \exp_not:o #2 } \bool_set_false:N \l__nmc_table_coli_only_bool } - { \seq_put_right:NV #1 #2 } + { \__nmc_table_chead_auxi:Ne #1 { \exp_not:o #2 } } } - { 2 } { \__nmc_table_header_auxi:Nx #1 + { 2 } { \__nmc_table_chead_auxi:Ne #1 { \l__nmc_table_cvar_tl = \exp_not:o #2 } } - { 3 } { \__nmc_table_header_auxiii:NV #1 #2 } - { 4 } { \__nmc_table_header_auxiv:NV #1 #2 } - { 5 } { \seq_set_split:NnV #1 { & } \l__nmc_table_chead_tl } + { 3 } { \__nmc_table_chead_auxii:NV #1 #2 } + { 4 } { \__nmc_table_chead_auxiii:NV #1 #2 } } - { \__nmc_table_header_auxi:NV #1 #2 } + { + \int_if_zero:nF { \l__nmc_table_chstyle_int } + { \tl_set_eq:NN \l__nmc_table_rhead_tl \l__nmc_table_rvar_tl } + } + { + \bool_if:NTF \l__nmc_table_chverb_bool + { \seq_set_split:NnV #1 { & } \l__nmc_table_chead_tl } + { \__nmc_table_chead_auxi:NV #1 #2 } + } + \__nmc_table_settings_chnudge: + \__nmc_table_settings_chmath: + \__nmc_table_settings_chsize: } -\cs_new_protected:Npn \__nmc_table_header_auxi:Nn #1#2 - { - \seq_put_right:Nx #1 { \__nmc_table_header_nudge:Nnn c - { \exp_not:o { #2 } } \l__nmc_table_chnudge_tl } +\cs_new_protected:Npn \__nmc_table_chead_auxi:Nn #1#2 + { + \seq_put_right:Ne #1 { \exp_not:o \l__nmc_table_chsize_tl + \__nmc_table_chead_nudge:Nnn c + { \l__nmc_table_chmath_tl \ \exp_not:n { #2 } } + \l__nmc_table_chnudge_tl } } -\cs_generate_variant:Nn \__nmc_table_header_auxi:Nn { NV,Nx } +\cs_generate_variant:Nn \__nmc_table_chead_auxi:Nn { NV,Ne } -\cs_new_protected:Npn \__nmc_table_header_auxiii:Nn #1#2 - { +\cs_new_protected:Npn \__nmc_table_chead_auxii:Nn #1#2 + { \tl_set_eq:NN \l_tmpa_tl \l__nmc_formula_dup_tl \regex_replace_all:nnNT { \u{l__nmc_table_cvar_tl} } { #2 } \l_tmpa_tl - { \__nmc_table_header_auxi:NV #1 \l_tmpa_tl } + { \__nmc_table_chead_auxi:NV #1 \l_tmpa_tl } } -\cs_generate_variant:Nn \__nmc_table_header_auxiii:Nn { NV } +\cs_generate_variant:Nn \__nmc_table_chead_auxii:Nn { NV } -\cs_new_protected:Npn \__nmc_table_header_auxiv:Nn #1#2 - { +\cs_new_protected:Npn \__nmc_table_chead_auxiii:Nn #1#2 + { \tl_set_eq:NN \l_tmpa_tl \l__nmc_formula_dup_tl \fp_compare:nNnTF { #2 } = { 1 } { \regex_replace_all:nnNT { \u{l__nmc_table_cvar_tl} } { } \l_tmpa_tl } - { \regex_replace_all:nnNT { \u{l__nmc_table_cvar_tl} } { #2 } \l_tmpa_tl } - { \__nmc_table_header_auxi:NV #1 \l_tmpa_tl } - } -\cs_generate_variant:Nn \__nmc_table_header_auxiv:Nn { NV } + { \regex_replace_all:nnNT + { \u{l__nmc_table_cvar_tl} } { #2 } \l_tmpa_tl } + { \__nmc_table_chead_auxi:NV #1 \l_tmpa_tl } -\cs_new:Npn \__nmc_table_header_nudge:Nnn #1#2#3 - { % #1=r(ow)/c(ol), #2=var, #3=nudge - \tl_if_eq:cNTF { l__nmc_table_ #1 calign_tl } \c__nmc_r_tl - { $ #2 #3 $ } - { - \tl_if_eq:cNTF { l__nmc_table_ #1 calign_tl } \c__nmc_l_tl - { $ #3 #2 $ } { $ #2 $ } + } +\cs_generate_variant:Nn \__nmc_table_chead_auxiii:Nn { NV } +% #1=r(ow)/c(ol), #2=var, #3=nudge +\cs_new:Npn \__nmc_table_chead_nudge:Nnn #1#2#3 + { + \tl_if_head_eq_charcode:vNTF { l__nmc_table_#1 align_tl } r + { $ #2 #3 $ } { $ #3 #2 $ } + } +\cs_generate_variant:Nn \__nmc_table_chead_nudge:Nnn { NnV } +% format_items: / +\cs_new:Npn \__nmc_table_header: + { + \int_if_zero:nTF { \l__nmc_table_cnum_int } + { \exp_not:o \l__nmc_table_rhsize_tl + \__nmc_table_chead_nudge:Nnn r + { \exp_not:o \l__nmc_table_rhead_tl } + \l__nmc_table_rhnudge_tl + } + { + \int_if_odd:nT { \l__nmc_table_rpos_int } + { + \exp_not:o \l__nmc_table_rhsize_tl + \__nmc_table_chead_nudge:Nnn r + { \exp_not:o \l__nmc_table_rhead_tl } + \l__nmc_table_rhnudge_tl & + } + \exp_not:o \l__nmc_table_chead_tl + \int_compare:nNnT { \l__nmc_table_rpos_int } > { 1 } + { + & \exp_not:o \l__nmc_table_rhsize_tl + \__nmc_table_chead_nudge:Nnn r + { \exp_not:o \l__nmc_table_rheadi_tl } + \l__nmc_table_rhnudgei_tl + } } } -\cs_generate_variant:Nn \__nmc_table_header_nudge:Nnn { NnV } -%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\cs_new_protected:Npn \__nmc_table_form_body:N #1 - { % #1 <== \l__nmc_result_tl - \int_if_zero:nF { \l__nmc_table_rpos_int } +% format_items: / #1 footer_tl, #2 header_tl +\cs_new_protected:Npn \__nmc_table_footer:NN #1#2 + { + \bool_if:nTF + { + \l__nmc_table_transpose_bool && + \int_compare_p:nNn { \l__nmc_table_rpos_int } = { 5 } + } + { \tl_set:Ne #1 { \seq_use:Nn \l__nmc_table_rvcoli_seq { & } } } { - \int_set_eq:NN \l__nmca_int \l__nmc_frac_out_int - \int_set_eq:NN \l__nmc_frac_out_int \l__nmc_table_rfrac_int - \int_set_eq:NN \l__nmc_table_rfrac_int \l__nmca_int - \int_if_zero:nTF { \l__nmc_table_rverb_int } + \tl_if_empty:NF #1 { - \seq_clear:N \l_tmpa_seq - \seq_map_inline:Nn \l__nmc_table_rvraw_seq - { - \__nmc_num_format:nNnN { ##1 } \l_tmpa_tl - { \l__nmc_table_rround_int } \c_false_bool - \seq_put_right:NV \l_tmpa_seq \l_tmpa_tl + \seq_set_split:NnV \l_tmpa_seq { & } #2 + \str_if_eq:VnTF #1 {''} + { \__nmc_table_footer_ditto:NN #1#2 } + { + \str_if_eq:VnTF #1 { * } + { \__nmc_table_footer_reverse:N #1 } + { \tl_set_eq:NN #1 #2 } } - \__nmc_table_form_rvcol:NN \l_tmpa_seq \l__nmc_table_rvcol_seq } - { - \__nmc_table_form_rvcol:NN - \l__nmc_table_rdata_seq \l__nmc_table_rvcol_seq - } - \int_set_eq:NN \l__nmc_frac_out_int \l__nmc_table_rfrac_int - } - \int_zero:N \l__nmc_table_rbloc_int - \int_if_zero:nTF { \l__nmc_table_cnum_int } - { \__nmc_table_form_body_rvcol_only:N #1 } - { \__nmc_table_form_body_cvcols:N #1 } + } } -\cs_new_protected:Npn \__nmc_table_form_rvcol:NN #1#2 +\cs_new_protected:Npn \__nmc_table_footer_ditto:NN #1#2 { - \seq_clear:N \l_tmpb_seq - \seq_map_variable:NNn #1 \l_tmpa_tl + \bool_if:NTF \l__nmc_table_rhauto_bool { - \seq_put_right:Nx \l_tmpb_seq - { \exp_not:o \l__nmc_table_rfont_tl { \exp_not:o \l_tmpa_tl } } - } - \seq_set_eq:NN #2 \l_tmpb_seq - \int_compare:nNnTF { \l__nmc_table_rpos_int } > { 3 } - { \__nmc_table_form_rvcoli:NN #1 #2 } % reverse/pivot - { \seq_set_eq:NN \l__nmc_table_rvcoli_seq #2 } + \int_if_odd:nT { \l__nmc_table_rpos_int } + { + \seq_pop_left:NN \l_tmpa_seq \l_tmpa_tl + \tl_replace_once:Nnn \l_tmpa_tl { \backslash } { / } + \seq_put_left:NV \l_tmpa_seq \l_tmpa_tl + } + \int_compare:nNnT { \l__nmc_table_rpos_int } > { 1 } + { + \seq_pop_right:NN \l_tmpa_seq \l_tmpa_tl + \tl_replace_once:Nnn \l_tmpa_tl { / } { \backslash } + \seq_put_right:NV \l_tmpa_seq \l_tmpa_tl + } + \tl_set:Ne #1 { \seq_use:Nn \l_tmpa_seq { & } } + } + { \tl_set_eq:NN #1 #2 } } -\cs_new_protected:Npn \__nmc_table_form_rvcoli:NN #1 #2 - { - \seq_clear:N \l__nmc_table_rvcoli_seq - \seq_map_variable:NNn #1 \l_tmpa_tl +\cs_new_protected:Npn \__nmc_table_footer_reverse:N #1 + { + \int_if_zero:nTF \l__nmc_table_cnum_int { - \__nmc_calc_fn_val:VNnN \l__nmc_table_rvar_tl - \l__nmc_table_rvari_tl \l_tmpa_tl \l_tmpa_fp - \__nmc_num_format:nNnN { \l_tmpa_fp } \l_tmpb_tl - { \l__nmc_table_rround_int } \c_false_bool - \seq_put_right:Nx \l__nmc_table_rvcoli_seq - { \exp_not:o \l__nmc_table_rfont_tl { \l_tmpb_tl } } + \seq_pop_left:NNT \l_tmpa_seq \l_tmpa_tl + { \tl_set:NV #1 \l_tmpa_tl } } - } -\cs_new_protected:Npn \__nmc_table_form_body_rvcol_only:N #1 - { % #1 = \l__nmc_result_tl - \seq_clear:N \l_tmpb_seq - \seq_map_variable:NNn \l__nmc_table_rvcol_seq \l_tmpa_tl { - \tl_put_right:Nx #1 - { \exp_not:o \l_tmpa_tl \\~ } - \__nmc_table_rbloc_spc:NN \l__nmc_table_rbloc_int \l_tmpa_bool - \bool_if:NT \l_tmpa_bool - { - \tl_put_right:Nx #1 - { \exp_not:o \addlinespace[\l__nmc_table_blocsep_tl] } - } + \seq_reverse:N \l_tmpa_seq + \tl_set:Ne #1 { \seq_use:Nn \l_tmpa_seq { & } } } } -\cs_new_protected:Npn \__nmc_table_form_body_cvcols:N #1 - { % #1 \l__nmc_result_tl +%%%%%%%%%% +% process: / +\cs_new_protected:Npn \__nmc_table_assemble_body: + { + \__nmc_table_attach_rvcol:N \l__nmc_table_fvcols_seq + \__nmc_table_rows_from_cols:N \l__nmc_table_rows_seq + \__nmc_table_space_rows:N \l__nmc_result_tl + } +% assemble_body: / #1 fvcols_seq +\cs_new_protected:Npn \__nmc_table_fvcols_format:N #1 + { + \int_zero:N \l__nmc_table_rbloc_int \bool_if:NT \l__nmc_table_round_bool - { \__nmc_table_cvround_pre: } + { \__nmc_table_reset_rounding:Nn c { 0 } } \seq_clear:N \l_tmpd_seq - \seq_map_variable:NNn \l__nmc_table_body_cols_seq \l_tmpa_seq + \seq_map_variable:NNn #1 \l_tmpa_seq { \bool_if:NT \l__nmc_table_round_bool - { \__nmc_table_rvround_pre: } + { \__nmc_table_reset_rounding:Nn r { 0 } } \seq_clear:N \l_tmpb_seq - \__nmc_table_form_cols:NN \l_tmpa_seq \l_tmpb_seq + \__nmc_table_bodycols_format:NN \l_tmpb_seq \l_tmpa_seq \seq_put_right:NV \l_tmpd_seq \l_tmpb_seq } - \__nmc_table_transpose:NN \l_tmpd_seq \l__nmc_table_body_rows_seq - \seq_map_variable:NNn \l__nmc_table_body_rows_seq \l_tmpa_seq - { - \__nmc_table_rbloc_spc:NN \l__nmc_table_rbloc_int \l_tmpa_bool - \tl_put_right:Nx #1 - { - \seq_use:Nn \l_tmpa_seq { & } - \\~ - \bool_if:NT \l_tmpa_bool - { \exp_not:o \addlinespace[\l__nmc_table_blocsep_tl] } - } - } + \seq_set_eq:NN #1 \l_tmpd_seq } -\cs_new_protected:Npn \__nmc_table_transpose:NN #1#2 - { % #1 seq of seq in #2 seq of seq out +% process: #1 fvcols_seq +\cs_new_protected:Npn \__nmc_table_attach_rvcol:N #1 + { \int_if_zero:nF { \l__nmc_table_rpos_int } { \int_compare:nNnF { \l__nmc_table_rpos_int } = { 2 } - { \seq_put_left:NV #1 \l__nmc_table_rvcol_seq } + { \seq_put_left:NV #1 \l__nmc_table_rvcol_seq } \int_compare:nNnT { \l__nmc_table_rpos_int } > { 1 } - { \seq_put_right:NV #1 \l__nmc_table_rvcoli_seq } + { \seq_put_right:NV #1 \l__nmc_table_rvcoli_seq } } + } +\cs_new_protected:Npn \__nmc_table_attach_rvcol_aux:nn #1#2 + { + \seq_put_left:Nn #2 { #1 } + \seq_put_right:Nn \l_tmpa_seq { #2 } + } +% process: #1 rows_seq +\cs_new_protected:Npn \__nmc_table_rows_from_cols:N #1 + { \int_step_inline:nn { \l__nmc_table_rnum_int } { \seq_clear:N \l_tmpb_seq \seq_clear:N \l_tmpc_seq - \seq_map_variable:NNn #1 \l_tmpa_seq + \seq_map_variable:NNn \l__nmc_table_fvcols_seq \l_tmpa_seq { \seq_pop:NN \l_tmpa_seq \l_tmpa_tl - \seq_put_right:Nx \l_tmpb_seq { $\exp_not:o\l_tmpa_tl $ } + \seq_put_right:Ne \l_tmpb_seq { \exp_not:o\l_tmpa_tl } \seq_put_right:NV \l_tmpc_seq \l_tmpa_seq } - \seq_put_right:NV \l__nmc_table_body_rows_seq \l_tmpb_seq - \seq_set_eq:NN #1 \l_tmpc_seq + \seq_put_right:NV #1 \l_tmpb_seq + \seq_set_eq:NN \l__nmc_table_fvcols_seq \l_tmpc_seq + } + } +% process: #1 \l__nmc_result_tl +\cs_new_protected:Npn \__nmc_table_space_rows:N #1 + { + \tl_clear:N \l__nmc_result_tl + \seq_map_variable:NNn \l__nmc_table_rows_seq \l_tmpa_seq + { + \__nmc_table_rbloc_spc:NN \l__nmc_table_rbloc_int \l_tmpa_bool + \tl_put_right:Ne #1 + { + \seq_use:Nn \l_tmpa_seq { & } \\~ + \bool_if:NT \l_tmpa_bool + { \exp_not:o \addlinespace[\l__nmc_table_rblocsep_tl] } + } } } -\cs_new:Npn \__nmc_table_rbloc_spc:NN #1#2 + +\cs_new_protected:Npn \__nmc_table_rbloc_spc:NN #1#2 { \int_incr:N #1 \bool_set_false:N #2 @@ -1084,30 +1408,31 @@ { \bool_set_true:N #2 } \clist_if_empty:NF \l__nmc_table_rbloc_clist { \clist_pop:NN \l__nmc_table_rbloc_clist \l__nmc_table_rbloc_tl } - \tl_set:Nx \l__nmc_table_rblock_tl + \tl_set:Ne \l__nmc_table_rblock_tl { \int_eval:n { \l__nmc_table_rblock_tl + \l__nmc_table_rbloc_tl } } } } -\cs_new_protected:Npn \__nmc_table_form_cols:NN #1#2 - { % #1 raw cseq, #2 <--formatted cseq - \int_case:nnF { \l__nmc_table_rnum_int } +% #1 formatted col seq out #2 raw col seq in +\cs_new_protected:Npn \__nmc_table_bodycols_format:NN #1#2 + { + \int_case:nnF { \l__nmc_table_rnum_int } { { 0 } { \prg_do_nothing: } - { 1 } { \__nmc_table_form_cols_ri:NN #1#2 } - { 2 } { \__nmc_table_form_cols_rii:NN #1#2 } + { 1 } { \__nmc_table_form_cols_ri:NN #1 #2 } + { 2 } { \__nmc_table_form_cols_rii:NN #1 #2 } } - { \__nmc_table_form_cols_riii:NN #1#2 } + { \__nmc_table_form_cols_riii:NN #1 #2 } \bool_if:NT \l__nmc_table_round_bool - { \__nmc_table_cvround_post: } + { \__nmc_table_reset_rounding:Nn c { 1 } } } \cs_new_protected:Npn \__nmc_table_form_cols_ri:NN #1#2 { - \seq_pop:NN #1 \l_tmpb_fp + \seq_pop:NN #2 \l_tmpb_fp \__nmc_num_format:nNnN \l_tmpb_fp \l_tmpb_tl { \l__nmc_round_int } \l__nmc_sci_num_table_bool \bool_if:NT \l__nmc_table_QA_bool { \__nmc_table_QA:N \l_tmpb_tl } - \seq_put_right:Nx #2 { \exp_not:o \l_tmpb_tl } + \seq_put_right:Ne #1 { $ \exp_not:o \l_tmpb_tl $ } } \cs_new_protected:Npn \__nmc_table_form_cols_rii:NN #1#2 { @@ -1116,15 +1441,15 @@ \__nmc_num_format:nNnN \l_tmpb_fp \l_tmpb_tl { \l__nmc_round_int } \l__nmc_sci_num_out_bool \__nmc_table_num_format:N \l_tmpb_tl - \seq_put_right:Nx #2 - { \exp_not:o \l_tmpb_tl \exp_not:o \l__nmc_table_diff_tl } + \seq_put_right:Ne #1 + { $ \exp_not:o \l_tmpb_tl \exp_not:o \l__nmc_table_diffs_tl $ } } \cs_new_protected:Npn \__nmc_table_form_cols_rii_aux:NN #1#2 { - \seq_pop:NN #1 \l_tmpb_fp + \seq_pop:NN #2 \l_tmpb_fp \int_if_zero:nF \l__nmc_table_diffs_int { \__nmc_table_form_diffs_null:n { \l__nmc_table_diffs_int } } - \seq_pop:NN #1 \l_tmpa_fp + \seq_pop:NN #2 \l_tmpa_fp \int_set:Nn \l__nmc_table_c_int { 1 } \int_set:Nn \l__nmc_table_b_int { \fp_sign:n { \l_tmpb_fp } } \int_set:Nn \l__nmc_table_a_int { \fp_sign:n { \l_tmpa_fp } } @@ -1132,8 +1457,8 @@ \__nmc_num_format:nNnN \l_tmpb_fp \l_tmpb_tl { \l__nmc_round_int } \l__nmc_sci_num_out_bool \__nmc_table_num_format:N \l_tmpb_tl - \seq_put_right:Nx #2 - { \exp_not:o \l_tmpb_tl \exp_not:o \l__nmc_table_diff_tl } + \seq_put_right:Ne #1 + { $ \exp_not:o \l_tmpb_tl \exp_not:o \l__nmc_table_diffs_tl $ } \int_if_zero:nF \l__nmc_table_diffs_int { \__nmc_table_calc_diffs:nn { \l_tmpb_fp } { \l_tmpa_fp } } \fp_set_eq:NN \l_tmpb_fp \l_tmpa_fp @@ -1142,33 +1467,33 @@ { \__nmc_table_form_cols_rii_aux:NN #1#2 \bool_if:NT \l__nmc_table_round_bool - { \__nmc_table_rvround_post: } + { \__nmc_table_reset_rounding:Nn r { 1 } } \int_set_eq:NN \l__nmc_table_c_int \l__nmc_table_b_int - \int_set_eq:NN \l__nmc_table_b_int \l__nmc_table_a_int - \seq_map_variable:NNn #1 \l_tmpa_fp + \int_set_eq:NN \l__nmc_table_b_int \l__nmc_table_a_int + \seq_map_variable:NNn #2 \l_tmpa_fp { \int_set:Nn \l__nmc_table_a_int { \fp_sign:n { \l_tmpa_fp } } \__nmc_table_signs: \__nmc_num_format:nNnN \l_tmpb_fp \l_tmpb_tl { \l__nmc_round_int } \l__nmc_sci_num_out_bool \__nmc_table_num_format:N \l_tmpb_tl - \seq_put_right:Nx #2 - { \exp_not:o \l_tmpb_tl \exp_not:o \l__nmc_table_diff_tl } + \seq_put_right:Ne #1 + { $ \exp_not:o \l_tmpb_tl \exp_not:o \l__nmc_table_diffs_tl $ } \int_if_zero:nF \l__nmc_table_diffs_int { \__nmc_table_calc_diffs:nn { \l_tmpb_fp } { \l_tmpa_fp } } \fp_set_eq:NN \l_tmpb_fp \l_tmpa_fp \int_set_eq:NN \l__nmc_table_c_int \l__nmc_table_b_int \int_set_eq:NN \l__nmc_table_b_int \l__nmc_table_a_int \bool_if:NT \l__nmc_table_round_bool - { \__nmc_table_rvround_post: } + { \__nmc_table_reset_rounding:Nn r { 1 } } } \int_set:Nn \l__nmc_table_a_int { 1 } \__nmc_table_signs: \__nmc_num_format:nNnN \l_tmpb_fp \l_tmpb_tl { \l__nmc_round_int } \l__nmc_sci_num_out_bool \__nmc_table_num_format:N \l_tmpb_tl - \seq_put_right:Nx #2 - { \exp_not:o \l_tmpb_tl \exp_not:o \l__nmc_table_diff_tl } + \seq_put_right:Ne #1 + { $ \exp_not:o \l_tmpb_tl \exp_not:o \l__nmc_table_diffs_tl $ } } \cs_new_protected:Npn \__nmc_table_num_format:N #1 { @@ -1180,11 +1505,11 @@ \__nmc_table_t_format:wN #1\q_stop \l_tmpa_tl \tl_set_eq:NN #1 \l_tmpa_tl } - { \tl_set:Nx #1 { \__nmc_sci_num_table_signs:n { #1 } } + { \tl_set:Ne #1 { \__nmc_sci_num_table_signs:n { #1 } } } } - { \tl_set:Nx #1 { \__nmc_sci_num_table_signs:n { #1 } } } + { \tl_set:Ne #1 { \__nmc_sci_num_table_signs:n { #1 } } } \bool_if:NT \l__nmc_table_QA_bool { \__nmc_table_QA:N #1 } } @@ -1193,12 +1518,12 @@ \fp_compare:nNnT { \l__nmc_table_Q_tl } = { 1 } { \bool_lazy_and:nnT - { \l__nmc_num_only_bool } { !\l__nmc_table_num_only_bool } + { \l__nmc_num_only_bool } { !\l__nmc_table_numonly_bool } { - \tl_set_eq:NN \l__nmc_table_num_only_tl #1 - \bool_set_true:N \l__nmc_table_num_only_bool + \tl_set_eq:NN \l__nmc_table_numonly_tl #1 + \bool_set_true:N \l__nmc_table_numonly_bool } - \tl_set:Nx #1 { \l__nmc_table_A_tl } + \tl_set:Ne #1 { \l__nmc_table_A_tl } } } \cs_new_protected:Npn \__nmc_table_t_format:wN (#1)#2#3\q_stop #4 @@ -1206,138 +1531,207 @@ \tl_set:Nn \l__nmc_toss_tl { #1 } \__nmc_table_prepad:Nnn \l__nmc_toss_tl { \l__nmc_table_tsigns_int } { \exp_not:o \hphantom{-} } - \tl_set:Nx #4 { \__nmc_sci_num_table_plus:nn + \tl_set:Ne #4 { \__nmc_sci_num_table_plus:nn { #3 } { \exp_not:o\l__nmc_toss_tl } } - } -\cs_new_protected:Npn \__nmc_table_signs: - { % A prev, B current, C next - \int_compare:nNnTF \l__nmc_table_b_int > { -1 } - { - \bool_lazy_or:nnTF - { \int_compare_p:nNn \l__nmc_table_a_int = { -1 } } - { \int_compare_p:nNn \l__nmc_table_c_int = { -1 } } - { \bool_set_true:N \l__nmc_table_signs_bool } - { \bool_set_false:N \l__nmc_table_signs_bool } - } - { \bool_set_false:N \l__nmc_table_signs_bool } } -%%%%%%%%%% \cs_new_protected:Npn \__nmc_table_calc_diffs:nn #1#2 { \__nmc_num_format:nNnN { \fp_abs:n {round( #1,\l__nmc_round_int ) - round( #2, \l__nmc_round_int) } } \l_tmpb_tl { \l__nmc_round_int } \c_false_bool - \tl_set:Nx \l_tmpb_tl { \fp_eval:n { round( 10^{ \l__nmc_round_int } + \tl_set:Ne \l_tmpb_tl { \fp_eval:n { round( 10^{ \l__nmc_round_int } * \l_tmpb_tl, \l__nmc_round_int + 1) } } \__nmc_table_prepad:Nnn \l_tmpb_tl { \l__nmc_table_diffs_int } { 0 } - \tl_set:Nx \l__nmc_table_diff_tl { ^{\,^{ \l_tmpb_tl } } } + \tl_set:Ne \l__nmc_table_diffs_tl { ^{\,^{ \l_tmpb_tl } } } } \cs_new_protected:Npn \__nmc_table_form_diffs_null:n #1 { \tl_set:Nn \l_tmpb_tl { 0 } \__nmc_table_prepad:Nnn \l_tmpb_tl { #1 } { 0 } - \tl_set:Nx \l__nmc_table_diff_tl + \tl_set:Ne \l__nmc_table_diffs_tl { ^{\,^{ \exp_not:o \hphantom{ \l_tmpb_tl } } } } + } +\cs_new_protected:Npn \__nmc_table_signs: + { % A prev, B current, C next + \int_compare:nNnTF \l__nmc_table_b_int > { -1 } + { + \bool_lazy_or:nnTF + { \int_compare_p:nNn \l__nmc_table_a_int = { -1 } } + { \int_compare_p:nNn \l__nmc_table_c_int = { -1 } } + { \bool_set_true:N \l__nmc_table_signs_bool } + { \bool_set_false:N \l__nmc_table_signs_bool } + } + { \bool_set_false:N \l__nmc_table_signs_bool } } -%%%%%%%%%%%%%%%%%%% -\cs_new:Npn \__nmc_table_form_lower: - { - \tl_if_empty:NF \l__nmc_table_footer_tl +\cs_new:Npn \__nmc_sci_num_table_signs:n #1 + { + \int_compare:nNnF { \l__nmc_num_sgn_int } < { 0 } { - \__nmc_if_mod_zero:nnT { \l__nmc_table_rules_int } { 11 } - { \exp_not:N \cmidrule(lr) { 1-\__nmc_table_total_cols: } } - \exp_not:o \l__nmc_table_footer_tl \\~ - } - \__nmc_if_mod_zero:nnT { \l__nmc_table_rules_int } { 13 } - { \exp_not:N \bottomrule } - \exp_not:n { \end{tabular} } - } -%------------------------------------------------ -\cs_new_protected:Npn \__nmc_table_set_rcnum:nn #1#2 + \int_case:nn { \l__nmc_table_signs_int } + { + {-2 } { \exp_not:N \hphantom{+} } + {-1 } { \bool_if:NTF \l__nmc_table_signs_bool + { + }{ \exp_not:N \hphantom{+} } } + { 1 } { \bool_if:NT \l__nmc_table_signs_bool { + } } + { 2 } { + } + } + } + \exp_not:o { #1 } + } +\cs_new_protected:Npn \__nmc_table_prepad:Nnn #1#2#3 + { + \tl_put_left:Ne #1 { \prg_replicate:nn + { \int_max:nn { #2 - \tl_count:N #1 } { 0 } } { #3 } } + } +\cs_new:Npn \__nmc_sci_num_table_plus:nn #1#2 + { % #1 significand, #2 exponent + \fp_compare:nTF { #1 >= 0 } + { ( #2 )\,{ \__nmc_sci_num_table_signs:n { #1 } } } + { ( #2 )\,{ #1 } } + } +% \__nmc_table_format_cols:NN, #1 r/c; #2 0 (pre)/1 (post) +\cs_new_protected:Npn \__nmc_table_reset_rounding:Nn #1#2 + { + \int_if_zero:nTF { #2 } + { \fp_set_eq:cc { l__nmc_table_#1_fp } { l__nmc_table_#1 start_fp } } + { \fp_add:cv { l__nmc_table_#1_fp } { l__nmc_table_#1step_fp } } + \prop_put:Nve \l__nmc_subst_var_prop { l__nmc_table_#1 var_tl } + { \fp_use:c { l__nmc_table_#1_fp } } + \tl_clear:N \l_tmpc_tl + \__nmc_fpify:VN \l__nmc_round_xpr_tl \l_tmpc_tl + \int_set:Nn \l__nmc_round_int { \fp_to_int:n \l_tmpc_tl } + } +% thiscol_calc:NN #1 tmpa_fp (fn val. from calc_fn_val:VNnN) +\cs_new_protected:Npn \__nmc_table_maxmin_do:n #1 { - \__nmc_fpify_set:Nn \l_tmpb_fp { #1 } - \int_set:cn { l__nmc_table_ #2 num_int } { \fp_to_int:N \l_tmpb_fp } + \bool_if:NT \l__nmc_table_QAmax_bool + { \fp_set:Nn \l__nmc_table_max_fp + { \fp_max:nn { \l__nmc_table_max_fp } { #1} } } + \bool_if:NT \l__nmc_table_QAmin_bool + { \fp_set:Nn \l__nmc_table_min_fp + { \fp_min:nn { \l__nmc_table_min_fp } { #1 } } } } -\cs_generate_variant:Nn \__nmc_table_set_rcnum:nn { V } - -\cs_new_protected:Npn \__nmc_table_rvfile:n #1 +%%%%%%%%%% +% process: / +\cs_new_protected:Npn \__nmc_table_num_only: { - \file_get:nnNTF { #1 } {} \l_tmpa_tl - { \seq_set_from_clist:No \l__nmc_table_rdata_seq \l_tmpa_tl } - { \__nmc_error_what:n { File~#1~not~found~in } } + \bool_if:NTF \l__nmc_table_numonly_bool + { + \tl_set_eq:NN \l__nmc_result_tl \l__nmc_table_numonly_tl + \tl_gset_eq:NN \g__nmc_reuse_tl \l__nmc_table_numonly_tl + \bool_gset_true:N \g__nmc_reuse_bool + } + { + \__nmc_error_where:n { settings } + \__nmc_error_what:n + { \l__nmc_table_query_tl~query~\__nmc_verb:n {Q?}~in } + \tl_clear:N \l__nmc_result_tl + } + } +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% display: +\cs_new:Npn \__nmc_table_upper: + { + \exp_not:n { \begin{tabular} } + \l__nmc_table_valign_tl + { + \int_if_odd:nT { \l__nmc_table_rpos_int } + { \l__nmc_table_ralign_tl } + \prg_replicate:nn + { \l__nmc_table_cnum_int } \l__nmc_table_calign_tl + \int_compare:nNnT { \l__nmc_table_rpos_int } > { 1 } + { \l__nmc_table_ralign_tl } + } + \__nmc_if_mod_zero:nnT { \l__nmc_table_rules_int } { 2 } + { \exp_not:N \toprule } + \int_if_zero:nF { \l__nmc_table_ctitle_int } + { \__nmc_table_ctitle_form: } } -\cs_new_protected:Npn \__nmc_table_rounding:n #1 +% upper: +\cs_new:Npn \__nmc_table_ctitle_form: { - \bool_set:Nn \l__nmc_table_round_bool { !\tl_if_blank_p:n { #1 } } - \tl_set:Nn \l__nmc_round_xpr_tl { #1 } + \int_compare:nNnTF { \l__nmc_table_rpos_int } = { 0 } + { + \int_compare:nNnF { \l__nmc_table_cnum_int } = { 1 } + { + \__nmc_table_ctitle_form:nenn { 1 } + { \int_use:N \l__nmc_table_cnum_int } {} {} + } + } + { + \int_compare:nNnT { \l__nmc_table_cnum_int } > { 1 } + { + \int_case:nnF { \l__nmc_table_rpos_int } + { + { 1 } { \__nmc_table_ctitle_form:nenn { 2 } + { \l__nmc_table_totalcols_tl } { & } {} } + { 2 } { \__nmc_table_ctitle_form:nenn { 1 } + { \int_use:N \l__nmc_table_cnum_int } {} { & } } + } + { % 3,4/5 + \__nmc_table_ctitle_form:nenn { 2 } + { \int_eval:n { \l__nmc_table_cnum_int + 1 } } + { & } { & } + } + } + } } -\keys_define:nn { numerica/table } +% ctitle_form: #1 midrule start, #2 midrule end, #3 left &, #4 right & +\cs_new:Npn \__nmc_table_ctitle_form:nnnn #1#2#3#4 + { + #3 \exp_not:N \multicolumn + { \int_eval:n { \l__nmc_table_cnum_int } } { c } + { $ \exp_not:o \l__nmc_table_ctitle_tl $ } + #4 \\~ + \__nmc_if_mod_zero:nnT { \l__nmc_table_rules_int } { 3 } + { \exp_not:N \cmidrule(lr) { #1-\int_eval:n { #2 } } } + \tl_if_empty:NF \l__nmc_table_csubt_tl + { + \__nmc_table_csubtitle: + \__nmc_if_mod_zero:nnT { \l__nmc_table_rules_int } { 5 } + { \__nmc_table_csubtitle_rule:nn { #1 } { #2 } } + } + } +\cs_generate_variant:Nn \__nmc_table_ctitle_form:nnnn { ne } +% ctitle_form:nnnn +\cs_new:Npn \__nmc_table_csubtitle: { - view .code:n = \__nmc_dbg_int:nn { 1 } { 11 }, - round .code:n = \__nmc_table_rounding:n { #1 }, -% - rvar .tl_set:N = \l__nmc_table_rvar_tl, - rstop .tl_set:N = \l__nmc_table_rstop_tl, - rstep .tl_set:N = \l__nmc_table_rstep_tl, - rows .code:n = \__nmc_table_set_rcnum:nn { #1 } { r }, - rspec .clist_set:N = \l__nmc_table_rspec_clist, - rfunc .tl_set:N = \l__nmc_table_rfunc_tl, - rdata .code:n = \tl_if_single:nTF { #1 } - { \seq_set_from_clist:NN \l__nmc_table_rdata_seq #1 } - { \seq_set_from_clist:No \l__nmc_table_rdata_seq { ~#1 } }, - rfile .code:n = \__nmc_table_rvfile:n { #1 }, - rverb .int_set:N = \l__nmc_table_rverb_int, - rfrac .int_set:N = \l__nmc_table_rfrac_int, - rfrac .initial:n = 0, - rround .int_set:N = \l__nmc_table_rround_int, - rround .initial:n = 1, - rfont .code:n = \tl_set:Nn \l__nmc_table_rfont_tl - { \use:c { math#1 } }, - ralign .tl_set:N = \l__nmc_table_rcalign_tl, - ralign .initial:n = r, - rhead .tl_set:N = \l__nmc_table_rhead_tl, - rhnudge .code:n = \tl_set:Nn \l__nmc_table_rhnudge_tl - { \mkern #1 mu }, - rpos .int_set:N = \l__nmc_table_rpos_int, - rpos .initial:n = 1, - rvar' .tl_set:N = \l__nmc_table_rvari_tl, - rhead' .tl_set:N = \l__nmc_table_rheadi_tl, - rhnudge' .code:n = \tl_set:Nn \l__nmc_table_rhnudgei_tl - { \mkern #1 mu }, -% - cvar .tl_set:N = \l__nmc_table_cvar_tl, - cstop .tl_set:N = \l__nmc_table_cstop_tl, - cstep .tl_set:N = \l__nmc_table_cstep_tl, - cols .code:n = \__nmc_table_set_rcnum:nn { #1 } { c }, - cspec .clist_set:N = \l__nmc_table_cspec_clist, - calign .tl_set:N = \l__nmc_table_ccalign_tl, - calign .initial:n = r, - chstyle .int_set:N = \l__nmc_table_chstyle_int, - chnudge .code:n = \tl_set:Nn \l__nmc_table_chnudge_tl - { \mkern #1 mu }, - chead .tl_set:N = \l__nmc_table_chead_tl, - chround .int_set:N = \l__nmc_table_chround_int, -% - ctitle .tl_set:N = \l__nmc_table_ctitle_tl, - cmidrow .tl_set:N = \l__nmc_table_csubttl_tl, - csubttl .tl_set:N = \l__nmc_table_csubttl_tl, - headless .int_set:N = \l__nmc_table_headless_int, - headless .initial:n = 0, - rules .tl_set:N = \l__nmc_table_rules_tl, - rules .initial:n = ThB, - foot .tl_set:N = \l__nmc_table_footer_tl, - rbloc .clist_set:N = \l__nmc_table_rbloc_clist, - rblocsep .tl_set:N = \l__nmc_table_blocsep_tl, - rblocsep .initial:n = 1ex, - signs .int_set:N = \l__nmc_table_signs_int, - (pad) .int_set:N = \l__nmc_table_tsigns_int, - diffs .int_set:N = \l__nmc_table_diffs_int, - diffs .initial:n = 0, -% - Q? .tl_set:N = \l__nmc_table_Q_tl, - A! .tl_set:N = \l__nmc_table_A_tl, - valign .code:n = \tl_set:Nn \l__nmc_table_valign_tl { [#1] }, - valign .initial:n = m + \int_if_zero:nF { \l__nmc_table_cnum_int } + { + \int_case:nnF { \l__nmc_table_rpos_int } + { + { 1 } { & \exp_not:o \l__nmc_table_csubt_tl } + { 2 } { \exp_not:o \l__nmc_table_csubt_tl & } + { 0 } { \exp_not:o \l__nmc_table_csubt_tl } + } + { & \exp_not:o \l__nmc_table_csubt_tl & } + } + \\~ } +% ctitle_form:nnnn +\cs_new:Npn \__nmc_table_csubtitle_rule:nn #1#2 + { + \int_compare:nNnTF { \l__nmc_table_rpos_int } > { 2 } + { \exp_not:N \cmidrule(lr) { 1-\l__nmc_table_totalcols_tl } } + { \exp_not:N \cmidrule(lr) { { #1 }-\int_eval:n { #2 } } } + } +% display: +\cs_new:Npn \__nmc_table_lower: + { + \tl_if_empty:NF \l__nmc_table_footer_tl + { + \__nmc_if_mod_zero:nnTF { \l__nmc_table_rules_int } { 17 } + { \exp_not:N \midrule } + { + \__nmc_if_mod_zero:nnT { \l__nmc_table_rules_int } { 13 } + { \exp_not:N \cmidrule(lr) { 1-\l__nmc_table_totalcols_tl } } + } + \exp_not:o \l__nmc_table_footer_tl + \\~ + } + \__nmc_if_mod_zero:nnT { \l__nmc_table_rules_int } { 19 } + { \exp_not:N \bottomrule } + \exp_not:n { \end{tabular} } + } % end of `numerica-tables.sty'
\ No newline at end of file diff --git a/macros/latex/contrib/numerica-tables/numerica-tables.tex b/macros/latex/contrib/numerica-tables/numerica-tables.tex index 29f0e48129..72a814632a 100644 --- a/macros/latex/contrib/numerica-tables/numerica-tables.tex +++ b/macros/latex/contrib/numerica-tables/numerica-tables.tex @@ -1,4 +1,4 @@ -%% LyX 2.4.0-beta3-devel created this file. For more info, see https://www.lyx.org/. +%% LyX 2.4.2.1 created this file. For more info, see https://www.lyx.org/. %% Do not edit unless you really know what you are doing. \documentclass[english,tableposition=top]{report} \usepackage{lmodern} @@ -16,7 +16,7 @@ \usepackage{booktabs} \usepackage{framed} \usepackage{url} -\usepackage{multirow} +\usepackage{varwidth} \usepackage{amsmath} \usepackage{makeidx} \makeindex @@ -30,6 +30,10 @@ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%% LyX specific LaTeX commands. %% Because html converters don't know tabularnewline \providecommand{\tabularnewline}{\\} +%% Variable width box for table cells +\newenvironment{cellvarwidth}[1][t] + {\begin{varwidth}[#1]{\linewidth}} + {\@finalstrut\@arstrutbox\end{varwidth}} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%% Textclass specific LaTeX commands. \newenvironment{centred}% @@ -48,73 +52,67 @@ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%% User specified LaTeX commands. \usepackage{numerica} \usepackage{numerica-tables} -\usepackage{numerica-plus} -\newcommand\rel{\,\varrho\;} -\DeclareMathOperator{\erf}{erf} -\DeclareMathOperator{\gd}{gd} \usepackage{upquote} \usepackage{xfrac} \usepackage[indentunit=1em,totoc,columnsep=1.5em, initsep=10.25pt plus 5pt minus 3pt]{idxlayout} +\usepackage{diagbox} \reuse{} \makeatother \begin{document} \title{\texttt{numerica-tables}~\\ -{\large version 3.1.0}} +{\large version 3.2.0}} \author{Andrew Parsloe\\ (\url{ajparsloe@gmail.com})} \maketitle \begin{abstract} -The \texttt{numerica-tables} package defines a command \verb`\nmcTabulate` -which enables the creation of multi-column tables of mathematical -function values. Key\textendash value assignments allow presentation -in a wide variety of table styles within the `formal table' framework -of the \texttt{booktabs} package. \texttt{numerica-tables} requires -the \texttt{numerica} package to be loaded.\medskip{} +The \texttt{numerica-tables} package enables the creation of multi-row, +multi-column tables of values of mathematical functions. Key\textendash value +assignments allow presentation in a wide variety of table styles, +both vertically by column or horizontally by row, within the `formal +table' framework of the \texttt{booktabs} package. \texttt{numerica-tables} +requires the prior loading of the \texttt{numerica} package.\medskip{} \end{abstract} \noindent{}% \noindent\begin{minipage}[t]{1\columnwidth}% \begin{shaded}% \begin{itemize} -\item This document applies to version 3.1.0 of \texttt{numerica-tables}. +\item This document applies to version 3.2.0 of \texttt{numerica-tables} +and requires the \texttt{booktabs} package. \item Version 3 of \texttt{numerica} needs to be loaded before \texttt{numerica-tables}; -(\texttt{numerica} requires \texttt{amsmath}, \texttt{mathtools} and -a reasonably recent \LaTeX{} system). -\item The \texttt{booktabs} package is required. -\item I refer many times in this document to \emph{Handbook of Mathematical -Functions}, edited by Milton Abramowitz and Irene A. Stegun, Dover, -1965, abbreviated to \emph{HMF}, and often followed by a reference, -like Table 1.2, to a specific table. +(\texttt{numerica} requires \texttt{amsmath} and \texttt{mathtools}). +\item I refer many times in this document to tables included in \emph{Handbook +of Mathematical Functions}, edited by Milton Abramowitz and Irene +A. Stegun, Dover, 1965, and referenced as \emph{HMF}. +\item Version 3.2.0 of \texttt{numerica-tables} +\begin{itemize} +\item adds a setting \verb`transpose` to convert a table with function +values in columns into a table with function values in rows; +\item adds the package options \verb`rules` and \verb`norules` to specify +the default pattern of horizontal rules; +\item adds new settings and enhances existing settings to adjust the appearance, +size and positioning of items in both the row variable column and +the header row; +\item enhances and adjusts elements of fraction form output (e.g. with a +`semi-verbatim' setting); +\item fixes a bug when tabulating factorials; +\item updates documentation. +\end{itemize} \item Version 3.1.0 of \texttt{numerica-tables} \begin{itemize} \item adds an index to the documentation; -\item adds the ability to round table entries to different values depending -on row or column (or both) in the table; -\item fixes two minor presentation bugs. +\item adds the ability to round table entries to different values. \end{itemize} \item Version 3.0.0 of \texttt{numerica-tables} \begin{itemize} -\item adds the ability to use numbers or expressions from -\begin{itemize} -\item a comma list for row variable values, either as values or verbatim; -\item a macro containing a comma list for row variable values, either as -values or verbatim; -\item a file for row variable values, either as values or verbatim; -\end{itemize} -\item adds the ability to use functions of a stepped variable to generate -varyingly stepped row variable values; +\item adds the ability to use as row variable values numbers or expressions +from a comma list, a macro, a file, or a step function, to be displayed +either as values or verbatim; \item adds the ability to suppress the header row; \item is compatible with the additional features of \texttt{numerica} version -3.0.0, -\begin{itemize} -\item including the decimal comma if the \verb`comma` package option is -used with \texttt{numerica}; and -\item fraction-form row variables, or fraction-form output if the \verb`/` -or \verb`//` `triggers' are used in the number-format option; -\end{itemize} -\item amends and adds to documentation. +3.0.0, including the decimal comma and fraction-form output. \end{itemize} \end{itemize} \end{shaded}% @@ -124,14 +122,14 @@ or \verb`//` `triggers' are used in the number-format option; \chapter{Introduction} -Entering +\label{chap:Introduction}Entering \begin{verbatim} \usepackage[<options>]{numerica} - \usepackage{numerica-tables} + \usepackage[<options>]{numerica-tables} \end{verbatim} \noindent in the preamble of a document gives access to a command for creating tables of function values in a wide variety of styles. -Contrary to previous practice, for version 3.0.0 of \texttt{numerica-tables}, +Contrary to previous practice, from version 3.0.0 of \texttt{numerica-tables}, the \texttt{numerica} package is not loaded automatically but must be loaded explicitly (as above), with options if desired, \emph{before} \texttt{numerica-tables}. It is \emph{essential} that the version @@ -139,32 +137,64 @@ of \texttt{numerica} loaded is version 3. All tables are `formal tables' in the sense of the \texttt{booktabs}\index{booktabs@\texttt{booktabs}} package, which is loaded automatically. Such tables have no vertical -rules\index{rules} and few horizontal rules. +rules and few horizontal rules. Quoting from the documentation for +that package:\index{rules@\texttt{rules}!edicts} +\begin{enumerate} +\item Never, ever use vertical rules. +\item Never use double rules. +\end{enumerate} + +\section{Package options} + +\label{sec:Package-options}New \index{package options}\index{rules@\texttt{rules}!package option}\index{norules@\texttt{norules}!package option} +with version 3.2 of \texttt{numerica-tables} are the package options +\verb`rules` and \verb`norules`, and \verb`Q?*`, which is more +complicated and discussed later (\S\ref{sec:Star-option}). The \verb`rules` +option determines which (if any) horizontal rules are drawn in a table +if none are explicitly set for that table. Because most tables in +this document are set amongst text, they are delimited by top and +bottom rules, and one beneath the header row. For consistency with +earlier versions, `out of the box' the \verb`rules` package option +is initialized to \verb`rules=ThB`. + +For the user this may not be what is wanted. You may prefer by default +to insert a rule only beneath the header row of your tables in which +case the package option would be \verb`rules=h`. For other possible +values for the package option see the identical values of the \verb`rules` +\emph{setting} discussed in \ref{subsec:Rules:-rules-setting}. If, +as a default, you want no rules at all in your tables, you can either +give \verb`rules` an empty value (\verb`rules= ` ) or use the \verb`norules` +package option: +\begin{verbatim} + \usepackage[norules]{numerica-tables} +\end{verbatim} \section{Table structure} -I\index{table structure} take as my source of models of mathematical +I\index{tables!structure} take as my source of models of mathematical tables those presented in \emph{Handbook of Mathematical Functions}, edited by Milton Abramowitz and Irene A. Stegun, Dover, 1965, not -because the typesetting is elegant (it often isn't) but because \emph{HMF} +because the typesetting is elegant (it often is not) but because \emph{HMF} displays a wide variety of table styles. The editors of that volume were faced with a host of different problems requiring a host of different solutions. The \verb`\nmcTabulate` command of \texttt{numerica-tables} -aims to reproduce most of those different solutions, within \texttt{booktabs} -\index{booktabs@\texttt{booktabs}} elegance. - -To create a table we need to specify a function or functions to tabulate. -The values a function takes will generally depend on a primary parameter -and, possibly, a number of secondary parameters (which is where much -of the complexity comes from). Mathematical tables are structured -in \emph{columns}. We (nearly always) read \emph{down} a column as -the primary parameter is incremented, generally in regular steps. -We need to decide on the range of values the primary parameter will -take and how fine-grained the tabulation will be \textendash{} what -the step size of its increments will be. Assigning different values -to a second parameter generates a second, third,\ldots{} column. Sometimes -rather than a second parameter, a second, third, \ldots{} function -of the first parameter is tabulated in the successive columns. +aims to reproduce most of those different solutions, within \texttt{booktabs}\index{booktabs@\texttt{booktabs}} +elegance. + +Creating a table presumes we have a function or functions we wish +to tabulate. The values a function takes will generally depend on +a primary parameter and, possibly, a number of secondary parameters +(which is where much of the complexity comes from). Books of mathematical +tables are structured (nearly always) in \emph{columns} (but see below), +and we read (nearly always) \emph{down} a column as the primary parameter +is incremented, generally in regular steps. We need to decide on the +range of values the primary parameter will take and how fine-grained +the tabulation will be \textendash{} what the step size of its increments +will be. Assigning different values to a second parameter generates +a second, third, \ldots{} column of function values. Sometimes rather +than a second parameter, a second, third, \ldots{} function of the +first parameter is tabulated in the successive columns \textendash{} +like adjacent columns of different trigonometric functions. In this document the first parameter is called the \emph{row variable}\index{row variable} \textendash{} its value determines which row we are in; the second @@ -181,28 +211,76 @@ rules are absent, horizontal rules used sparingly \textendash{} for example, at the top and bottom of the table, or under the header row, but not in the body of the table. +\subsection{Transposed tables} + +From\index{tables!`horizontal'/`vertical'} version 3.2 of \texttt{numerica-tables} +it is also possible to present tables `horizontally', in which function +values are read in rows (generally) left-to-right across the page. +\texttt{numerica-tables} handles this situation by constructing the +table in the usual column-based `vertical' manner and then treating +the columns of calculated function values as rows; the row variable +column and the header row swap roles. The placement of the new row +variable column and header row and the `decoration' of the values +contained therein (font, alignment, etc.) is all done \emph{after} +transposition. + +The process is effected through the setting \verb`transpose`\index{transpose@\texttt{transpose}} +and is discussed at \ref{subsec:Transpose}, but examples are presented +throughout the document. + +\subsection{\texttt{tabular} environment} + +The tables created by \texttt{numerica-tables} use the \verb`tabular`\index{tabular environment@\texttt{tabular} environment} +environment of \LaTeX . This means that the vertical separation between +rows can be altered by means of the parameter \verb`\arraystretch`\index{arraystretch@\texttt{\textbackslash arraystretch}}. +Writing, for instance, +\begin{verbatim} + \renewcommand\arraystretch{1.2} +\end{verbatim} +increases the separation between rows by a scale factor of $1.2$. +An example of use occurs in \ref{subsec:rmath}. + +The separation between columns is determined by the parameter \verb`\tabcolsep`\index{tabcolsep@\texttt{\textbackslash tabcolsep}} +which is half the width of the space between columns and defaults +to $6$ pt. To change \verb`\tabcolsep` you can use either of the +commands \verb`\addtolength` or \verb`\setlength`. Since the default +is $6$pt, the commands +\begin{verbatim} + \addtolength\tabcolsep{3pt} + \setlength\tabcolsep{9pt} +\end{verbatim} +have the same effect and increase the half-width between columns to +$9$ pt; see the final example in \ref{subsec:Nudgingtheheaders:-chnudge}. + +After changing either of these parameters you will need to reset it +back to the default if you do not want all subsequent tables to be +stretched vertically or horizontally as the case may be. + \section{Shared syntax} The \verb`\nmcTabulate`\index{nmcTabulate@\texttt{\textbackslash nmcTabulate}} -command (short-name form \verb`\tabulate`\index{tabulate@\texttt{\textbackslash tabulate}|see{\texttt{\textbackslash nmcTabulate}}}) +command, short-name form \verb`\tabulate`\index{tabulate@\texttt{\textbackslash tabulate}|see{\texttt{\textbackslash nmcTabulate}}}, shares the syntax of \verb`\nmcEvaluate` (see \texttt{numerica.pdf}). When all options are used the command looks like \begin{verbatim} \nmcTabulate*[settings]{expr.}[vv-list][num. format] \end{verbatim} +\selectlanguage{english}% \begin{enumerate} \item \verb`*` optional switch; if present ensures a single number output with no formatting, or an appropriate error message if the single number cannot be produced; see \ref{sec:Star-option}; -\item \verb`[settings]` comma-separated list of \emph{key=value }settings; -this option is at the heart of creating a table of function values; -see Chapter~\ref{chap:=00005CnmcTabulate-settings}; +\item \verb`[settings]` \emph{mandatory }comma-separated list of \emph{key=value +}settings; this option is at the heart of creating a table of function +values, and is discussed in the next chapter; \item \verb`{expr.}` mandatory argument specifying the mathematical expression or expressions in \LaTeX{} form to be tabulated; -\item \verb`[vv-list]` comma-separated list (or semicolon-separated list -if the \verb`comma` package option is used with \texttt{numerica}) -of \emph{variable=value }items, in particular containing the initial -value of the row variable, and column variable if one is used; +\item \verb`[vv-list]`\index{vv-list} \emph{mandatory} comma-separated +list (or semicolon-separated\index{decimal comma!semicolon use} list +if the \verb`comma` package option\index{comma package option@\texttt{comma} package option} +is used with \texttt{numerica}) of \emph{variable=value }items, in +particular containing the initial value of the row variable (essential) +and column variable (if one is used); \item \verb`[num. format]` optional format specification for presentation of the numerical results (rounding, padding with zeros, scientific notation, fraction-form output); see \ref{subsec:Trailing-optional-argument}.\index{rounding value} @@ -216,47 +294,81 @@ contains items \emph{necessary} for the construction of any table of function values. Should \texttt{numerica} be loaded with the \verb`comma` package -option, numbers in tables will be displayed with a decimal comma\index{decimal comma}. -In this case items in the vv-list\index{vv-list!and decimal comma} -\emph{must} be separated by a semicolon\index{semicolon and decimal comma} -since the decimal comma is likely to feature there. Similarly, $n$-ary -functions \textendash{} \verb`\max`, \verb`\min` and \verb`\gcd`\index{n-ary@$n$-ary functions} -\textendash{} must use the semicolon as their argument separator. - -Math environments are significant for \verb`\nmcEvaluate`. They are -essentially irrelevant for \verb`\nmcTabulate`\index{nmcTabulate@\texttt{\textbackslash nmcTabulate}}\index{environments}, -although an external environment may determine how a table is positioned -on the page\index{table placement!on the page} (\verb`\[ <table> \]` -for instance will centre the table between the margins). Environments -specified in the main argument (the formula) should be avoided. \verb`$ $`, -\verb`\( \)` or \verb`\[ \]` will not cause error, but a \verb`\begin`\textendash \verb`\end` -environment there will. - -Just as the syntax is shared, so the settings available to the command -\verb`\nmcEvaluate` in \texttt{numerica} are also available to \verb`\nmcTabulate`, -although not all will be relevant. See the associated document \texttt{numerica.pdf} -for a list of these and associated discussion. I will point out instances -of their use in the following examples. +option\index{comma package option@\texttt{comma} package option}, +numbers in tables will be displayed with a decimal comma\index{decimal comma!semicolon use}. +In this case, to avoid confusion, items in the vv-list\index{vv-list!and decimal comma} +\emph{must} be separated by a semicolon. Similarly, $n$-ary functions +\textendash{} \verb`\max`, \verb`\min` and \verb`\gcd`\index{n-ary@$n$-ary functions} +\textendash{} must use semicolons as their argument separator. From +version 3.2 of \texttt{numerica-tables} row variable data in the form +of lists or files for the \verb`rdata` and \verb`rfile` settings +do not need to be \emph{comma} separated. If the \verb`comma` package +option\index{comma package option@\texttt{comma} package option} +is used, the semicolon is assumed (see \ref{subsec:rdata-rfile-rverb}) +or some other item separator can be set with the (new in version 3.2) +\verb`rdelim` setting. + +Although math environments are significant for \verb`\nmcEvaluate`, +they should be avoided with \verb`\nmcTabulate`\index{nmcTabulate@\texttt{\textbackslash nmcTabulate}}\index{environments}. +Placing a \verb`\tabulate` command within a math environment, or +vice versa, is likely to cause a \LaTeX{} error. From version 3.2 of +\texttt{numerica-tables}, it is possible to specify the math style +(\verb`\displaystyle`, \verb`\textstyle` or \verb`\scriptstyle`) +of entries in the row variable column and in the header row. Function +values (numbers) in the table cells are presented between inline math +delimiters (\verb`$` \verb`$`). \chapter{\texttt{\textbackslash nmcTabulate} settings} -\label{chap:=00005CnmcTabulate-settings}In addition to the shared -settings, \verb`\nmcTabulate` has many settings specific to it. They -are discussed in groups in subsequent sections, some in more than -one place. For the main discussion of row variable settings, see \ref{sec:Row-variable-settings}; -for column variable settings see \ref{sec:Column-variable-settings}; -for whole-of-table formatting see \ref{sec:Whole-of-table-formatting}; -for formatting the function values in table cells see \ref{sec:Function-value-formatting}. - -\section{Row-variable settings} +Just as \verb`\nmcTabulate` shares the syntax of \verb`\nmcEvaluate` +(of \texttt{numerica}), it also shares the \emph{settings} of the +latter command \textendash{} although not all will be relevant. See +the associated document \texttt{numerica.pdf} for a list of those +settings and associated discussion. I will point out instances of +their use in the following examples. + +In addition to the shared settings, there are many specific to \verb`\nmcTabulate`, +which is what this document is about. They are discussed in groups +in later sections, some in more than one place. For the main discussion +of row variable settings, see immediately below; for column variable +settings see \ref{sec:Column-variable-settings}; for multi-function +tables see \ref{sec:Multiple-function-tables}; for whole-of-table +formatting see \ref{sec:Whole-of-table-formatting}; for formatting +the function values in table cells see \ref{sec:Function-value-formatting}. + +\section{Row variable settings} + +\label{sec:Row-variable-settings}Okay, assume we have chosen the +function we want tabulated. Now we need to choose the row variable, +how fine-grained we want the tabulation to be and between which values. + +\subsection{Row variable specification: uniform case} + +\label{subsec:Row-var-spec-uniform}\index{row variable!start, step, stop values|(}The +\emph{row} variable is set in the settings option of the \verb`\tabulate` +command with the key \verb`rvar`\index{rvar@\texttt{rvar}} \textendash{} +say \verb`rvar=x`. What value to start tabulating from is specified +in the vv-list\index{vv-list!row/col.variables@row/col.\ variables}\index{row variable!initial value in vv-list} +\textendash{} \verb`x=0` perhaps \textendash{} and so does not need +a specific key, but what value to tabulate to, \verb`rstop`\index{rstop@\texttt{rstop}}, +and the step size, how fine-grained the tabulation is to be, \verb`rstep`\index{rstep@\texttt{rstep}}, +do need to be specified in the settings option. In the uniform case +(which makes up the overwhelming majority of cases in \emph{HMF}) +the step size is constant. It does not change as the value of the +row variable changes. (The non-uniform case, available from version +3.0.0 of \texttt{numerica-tables}, is discussed in \ref{subsec:Row-var-spec-nonuniform} +below. Quite different keys are required.) -\label{sec:Row-variable-settings} - -\subsection{Row-variable specification: uniform case} +The two tables in the example below tabulate $\sin x$ and $\cos x$ +between $0$ and $1$ in increments of $0.2$. By placing the start +value of the tabulation variable in the vv-list, the possibility is +opened for other parameters in more complicated functions to depend +on the row variable. Although it will often be the first entry in +the vv-list, it does not need to be. -\label{subsec:Row-var-spec-uniform} -\begin{table}[b] -\centering{}\caption{Row-variable specification} +\begin{table}[t] +\centering +\centering{}\caption{Row variable specification} \begin{center} \begin{tabular}{ll>{\raggedright}p{4cm}>{\raggedright}p{3cm}} \toprule @@ -264,462 +376,415 @@ for formatting the function values in table cells see \ref{sec:Function-value-f \midrule {\small\texttt{rvar}} & {\small token(s)} & {\small row variable} & \tabularnewline {\small\texttt{rstep}} & {\small real num.} & {\small step size} & \tabularnewline -{\small\texttt{rstop}} & {\small real num.} & {\small stop value} & \multirow{2}{3cm}{{\small use only one of rstop or rows}}\tabularnewline -{\small\texttt{rows}} & {\small int} & {\small number of rows} & \tabularnewline -{\small\texttt{rspec}} & {\small comma list} & {\small\texttt{\{rvar}}{\small , }{\small\texttt{step}}{\small , }{\small\texttt{rows\}}} & {\small short form spec.}\tabularnewline +{\small\texttt{rstop}} & {\small real num.} & {\small stop value} & {\small excludes }{\small\texttt{rows}}\tabularnewline +{\small\texttt{rows}} & {\small int} & {\small number of rows} & {\small excludes }{\small\texttt{rstop}}\tabularnewline +{\small\texttt{rspec}} & {\small comma list} & {\small\texttt{\{rvar}}{\small , }{\small\texttt{rstep}}{\small , }{\small\texttt{rows\}}} & {\small short form spec.}\tabularnewline +{\small\texttt{rround}} & {\small int} & {\small rounding} & {\small default: }{\small\texttt{1}}\tabularnewline \bottomrule \end{tabular} \par\end{center} \end{table} -Deciding\index{row variable!start, step, stop values|(} on a function -to tabulate (entered in the main or mandatory argument of \verb`\nmcTabulate`) -will inevitably also mean deciding on the tabulation variable, the -\emph{row} variable, \verb`rvar`\index{rvar@\texttt{rvar}}, what -value to start tabulating from \textendash{} \emph{that} is specified -in the vv-list\index{vv-list!row/col. variable initial values}\index{row variable!initial value in vv-list} -and so does not need a specific key \textendash{} what value to tabulate -to, \verb`rstop`\index{rstop@\texttt{rstop}}, and how fine-grained -the tabulation is to be, the step size \verb`rstep`\index{rstep@\texttt{rstep}}. -In the uniform case (which makes up the overwhelming majority of cases -in \emph{HMF} for instance) the step size is constant. It does not -change as the value of the row variable changes. (The non-uniform -case, available from version 3.0.0 of \texttt{numerica-tables}, is -discussed in \ref{subsec:Row-var-spec-nonuniform} below. Quite different -keys are required.) - -The two tables in the example below tabulate $\sin x$ and $\cos x$ -between $0$ and $1$ in increments of $0.2$. Note that the start -value of the tabulation variable is entered in the vv-list. The reason -for placing it there is that for more complicated functions other -parameters in the function and therefore in the vv-list may depend -on the row variable. Although it will often be the first entry in -the vv-list, it does not need to be. The initial value of the row -variable may depend on other quantities which must necessarily precede -it \textendash{} lie to the right of it \textendash{} in the list. - -In the vv-list, the start value of the row variable may be a \LaTeX{} +The initial value of the row variable may depend on other quantities +which must necessarily precede it \textendash{} lie to the right of +it \textendash{} in the vv-list. The start value may be a \LaTeX{} expression. Both \verb`rstep` and \verb`rstop` may also be \LaTeX{} expressions. They are evaluated \emph{after} the vv-list is evaluated and so may depend on the values of variables in the vv-list, including -the \emph{initial} value of the row variable. Thus setting \verb`rstep=1/x`, -where \verb`x` is the row variable, will give a \emph{constant} step -size equal to the reciprocal of the \emph{initial }value of the row -variable. - -The difference in appearance of the two tables results from padding -with zeros\index{function value formatting!padding with zeros}\index{padding with zeros} -in the second (the asterisk in the trailing optional argument has -the same effect in \verb`\nmcTabulate` as in \verb`\nmcEvaluate`). -As you can see, padding applies not only to the values of the function -but also to the values of the row variable, although that has been -padded to only $1$ decimal place rather than the $6$ of the function -values. Padding makes an obvious improvement to the appearance. (How -many digits to pad to in the row variable column is discussed in \ref{subsec:Row-var-col-formatting}.) +the \emph{initial} value of the row variable. As of v.3.2 of \texttt{numerica-tables} +the \verb`vv@=1`\index{vv-list!vva@\texttt{vv"@} (mode) setting} +(or \verb`vvmode=1`) setting from \texttt{numerica} does not affect +\verb`rstep` and \verb`rstop`. For instance if \verb`rvar=x`, setting +\verb`rstep=1/x` when \verb`vv@=1` gives a \emph{constant} step +size equal to the reciprocal of the initial\emph{ }value of the row +variable. The following examples illustrate the use of \verb`rvar`, +\verb`rstep` and \verb`rstop` and the presence of the initial value +of the row variable in the vv-list. \begin{verbatim} \tabulate[rvar=x,rstep=0.2,rstop=1] { \sin x }[x=0]\qquad \tabulate[rvar=x,rstep=0.2,rstop=1] - { \cos x }[x=0][*] + { \sin x }[x=0][*] \end{verbatim} $\Longrightarrow$ \tabulate[rvar=x,rstep=0.2,rstop=1] { \sin x }[x=0] \qquad \tabulate[rvar=x,rstep=0.2,rstop=1] - { \cos x }[x=0][*]\medskip{} - -Sometimes (perhaps often) it may prove more convenient to specify -the number of rows, \verb`rows`\index{rows@\texttt{rows}}, to tabulate -rather than a stop value. Only one of \verb`rows` and \verb`rstop` -should be given, but if both (inadvertently) are present, it is the -value of \verb`rows` that prevails. The first of the following three -tables shows an example where \verb`rows` is specified. - -The second and third tables use an abbreviated form of the row variable -specification, \verb`rspec`\index{rspec@\texttt{rspec}}. This is -a three-element comma list, \verb`{rvar,rstep,rows}`. The second -table gives a straightforward example. In the third table a \LaTeX{} -expression has been inserted for \verb`rows` in the \verb`rspec` -comma list. Like \verb`rstep` and \verb`rstop`, \verb`rows` can -be a \LaTeX{} expression, but it is evaluated \emph{before} the vv-list -and therefore, unlike \verb`rstep` and \verb`rstop`, cannot depend -on quantites specified there like the initial row variable value. + { \sin x }[x=0][*]\medskip{} + +The difference in appearance of the tables results from padding with +zeros\index{function-value formatting!padding with zeros}\index{padding with zeros} +in the second. The asterisk in the trailing optional argument has +the same effect in \verb`\nmcTabulate` as in \verb`\nmcEvaluate`. +As you can see, padding applies not only to the values of the function +but also to the values of the row variable, although that has been +padded to only $1$ decimal place (the default) rather than the $6$ +of the function values. (How many digits to round to, and therefore +pad the row variable values to, is discussed in \ref{subsec:Rounding:rround}.) +Padding makes an obvious improvement to the appearance, both in the +function-value column and the row variable column. + +You may feel a single column of function values makes poor use of +space on the page. To turn the second of these tables into a `horizontal' +table, add the key \verb`transpose` to the settings option. I have +also reduced the number of decimal places from the default $6$ to +$4$ to avoid any issues with page width. +\begin{verbatim} + \tabulate[rvar=x,rstep=0.2,rstop=1,transpose] + { \sin x }[x=0][4*] +\end{verbatim} +$\Longrightarrow$ \tabulate[rvar=x,rstep=0.2,rstop=1,transpose] + { \sin x }[x=0][4*] + +\medskip{} + +\index{transpose@\texttt{transpose}!examples of use}To my eye, for +such a `shallow' (vertically compressed) table, the horizontal rules +here are intrusive. They can be turned off; see \ref{subsec:Rules:-rules-setting} +or, anticipating the later discussion, add \verb`norules`\index{norules@\texttt{norules}} +to the settings option (prior to version 3.2 of \texttt{numerica-tables} +it was necessary to write \verb`rules=`\texttt{ }, an empty setting, +to achieve this), and just for variety use the cosine: +\begin{verbatim} + \tabulate[rvar=x,rstep=0.2,rstop=1,transpose,norules] + { \cos x }[x=0][4*] +\end{verbatim} +$\Longrightarrow$ \tabulate[rvar=x,rstep=0.2,rstop=1,transpose,norules] + { \cos x }[x=0][4*] \index{transpose@\texttt{transpose}!examples of use} + +\medskip{} + +The remaining quibble is the placement of the column headers. Can +they be centred or otherwise adjusted? Yes; see \ref{subsec:Row-var-col-formatting} +for ways of adjusting the row variable column and header, and \ref{subsec:Column-header-formatting} +for ways of adjusting the function-value columns and headers. + +It may be more convenient at times to specify the number of rows, +\verb`rows`\index{rows@\texttt{rows}}, to tabulate rather than a +stop value. Only one of \verb`rows` and \verb`rstop` should be given, +but if both (inadvertently) are present, it is \verb`rows` that +prevails. The first of the following three tables shows an example +where \verb`rows` is specified. The second and third tables use an +abbreviated form of the row variable specification, \verb`rspec`\index{rspec@\texttt{rspec}}. +This is a three-element comma list, \verb`{rvar,rstep,rows}` (with +an optional fourth element, \verb`rround`; see \ref{subsec:Rounding:rround}). +The second table gives a straightforward example. In the third table +a simple \LaTeX{} expression has been inserted for \verb`rows` in +the \verb`rspec` comma list. Like \verb`rstep` and \verb`rstop`, +\verb`rows` can be a \LaTeX{} expression but unlike \verb`rstep` +and \verb`rstop` it is evaluated \emph{before} the vv-list and therefore +cannot depend on quantites specified there like the initial row variable +value. On evaluation, the \LaTeX{} expression is rounded to an integer. \begin{verbatim} \tabulate[rvar=x,rstep=0.2,rows=6] { \sin x/\cos x }[x=0][*] \qquad \tabulate[rspec={x,0.2,6}] { \tan x }[x=0][*] \qquad - \tabulate[rspec={x,0.2,1+(1/0.2)}] - { \sqrt{\sec^2 x - 1} }[x=0][*] + \tabulate[rspec={x,0.2,1.2/0.2}] + { \sqrt{\sec^2 x - 1} }[x=0.2][*] \end{verbatim} $\Longrightarrow$ \tabulate[rvar=x,rstep=0.2,rows=6] - { \sin x/\cos x }[x=0][*] \qquad + { \sin x/\cos x }[x=0.2][*] \qquad \tabulate[rspec={x,0.2,6}] - { \tan x }[x=0][*] \qquad - \tabulate[rspec={x,0.2,1+(1/0.2)}] - { \sqrt{\sec^2 x - 1} }[x=0][*]\index{row variable!start, step, stop values|)}\medskip{} + { \tan x }[x=0.2][*] \qquad + \tabulate[rspec={x,0.2,1.2/0.2}] + { \sqrt{\sec^2 x - 1} }[x=0.2][*]\index{row variable!start, step, stop values|)} + +\subsubsection{Rounding: \texttt{rround}} +\label{subsec:Rounding:rround}After\index{rounding value!row variable|(}\index{rround@\texttt{rround}|(} +studying some of the previous tables, we might decide to adjust the +step size, say from $0.2$ to $0.25$. But changing \verb`rstep` +to the new value gives a disconcerting result, as you can see from +the first of the tables below. \texttt{numerica-tables} uses a default +rounding value of $1$ for the row variable and has rounded $0.25$ +down to $0.2$, then $0.2+0.25=0.45$ down to $0.4$, then $0.4+0.25=0.65$ +down to $0.6$, then $0.6+0.25=0.85$ down to $0.8$, at which point +it stops since $0.8+0.25>1$ which is the stopping value. The rounded-down +values are the values used \textendash{} always it is the \emph{displayed} +rounded value that is used for calculating function values. The second +table corrects matters by adjusting the row variable rounding with +\verb`rround=2`. From version 3.2 of \texttt{numerica-tables} the +\verb`rround` value can also be included as an optional fourth element +to \verb`rspec`\index{rspec@\texttt{rspec}}. The third table illustrates +this abbreviated form of specification: +\begin{verbatim} + \tabulate[rvar=x,rstep=0.25,rstop=1] + { \exp x }[x=0][*] \qquad + \tabulate[rvar=x,rstep=0.25,rstop=1,rround=2] + { \exp x }[x=0][*] \qquad + \tabulate[rspec={x,0.25,5,2}] + { \exp x }[x=0][*] +\end{verbatim} +$\Longrightarrow$ \tabulate[rvar=x,rstep=0.25,rstop=1] + { \exp x }[x=0][*] \qquad + \tabulate[rvar=x,rstep=0.25,rstop=1,rround=2] + { \exp x }[x=0][*] \qquad + \tabulate[rspec={x,0.25,5,2}] + { \exp x }[x=0][*]\medskip{} + +The reason for allowing the inclusion of the \verb`rround` value +in \verb`rspec` is because the values included in \verb`rspec`, +together with the initial value assigned to the row variable in the +vv-list, determine the numbers in the row variable column used to +calculate function values. The further settings discussed below in +\ref{subsec:Row-var-col-formatting} are \emph{formatting} elements +affecting appearance but irrelevant to the actual values calculated.\index{rround@\texttt{rround}|)}\index{rounding value!row variable|)} \subsection{Row variable specification: non-uniform case} -\label{subsec:Row-var-spec-nonuniform} -\begin{table}[b] +\label{subsec:Row-var-spec-nonuniform}Occasionally one wants to form +a table in which the row variable does not increase or decrease in +regular steps; for examples, see \emph{HMF} Tables 1.1 and 3.1. (Tables +9.7, 10.5, 10.10 use two step values and could also be handled with +these settings.) For instance, one might want a table of values of +simple functions of a list of constants, or a table of function values +at $\pi$, $\pi/2$, $\pi/3$, $\pi/4$, $\dots$, or at $1$, $10$, +$100$, $1000$, $\dots$, or a table of function values at thoroughly +irregular, perhaps experimentally determined, values. + +\texttt{numerica-tables} provides two means of specifying such row +variables, either by means of a row variable function (\verb`rfunc`\index{rfunc@\texttt{rfunc}}), +when the row variable values change in a non-uniform but formulaic +way, or by explicitly listing the row variable values in a comma list +(\verb`rdata`\index{rdata@\texttt{rdata}}, \verb`rfile`\index{rfile@\texttt{rfile}}), +or with some other separator. In the latter case, the row variable +can be displayed either as a sequence of \emph{values}, or verbatim +as a sequence of \emph{expressions} \textendash{} like fractions of +$\pi$ \textendash{} with the \verb`rverb`\index{rverb@\texttt{rverb}} +setting. + +\subsubsection{\texttt{rfunc}} + +\begin{table}[t] +\centering \centering{}\caption{Non-uniform row variable specification} \begin{center} -\begin{tabular}{ll>{\raggedright}p{4cm}>{\raggedright}p{3cm}} +\begin{tabular}{l>{\raggedright}p{2cm}>{\raggedright}p{4cm}>{\raggedright}p{3cm}} \toprule {\small key} & {\small type} & {\small meaning} & {\small comment}\tabularnewline \midrule -{\small\texttt{rdata}} & {\small comma list} & {\small list of row-var. values } & {\small comma list may be stored in a macro}\tabularnewline -{\small\texttt{rfile}} & {\small chars} & {\small filepath/name} & {\small file of comma separated values}\tabularnewline -{\small\texttt{rverb}} & {\small int (}{\small\texttt{0}}/\texttt{1}) & {\small display }{\small\texttt{rdata }}{\small or}{\small\texttt{ rfile}}{\small{} -values verbatim} & {\small initialized to }{\small\texttt{0}}\tabularnewline -{\small\texttt{rfunc}} & {\small token(s)} & {\small function of a stepped variable} & \tabularnewline +{\small\texttt{rfunc}} & {\small token(s)} & {\small formula for row var. values} & \tabularnewline +{\small\texttt{rdata}} & {\small comma list or macro} & {\small list or macro (containing list) of row var. values} & \tabularnewline +{\small\texttt{rfile}} & {\small chars} & {\small filepath/filename} & {\small file contains list of row var. values}\tabularnewline +{\small\texttt{rdelim}} & {\small char} & {\small item separator for }{\small\texttt{rdata}}{\small{} or }{\small\texttt{rfile}}{\small{} +lists} & {\small defaults to }{\small\texttt{,}}{\small{} or }{\small\texttt{;}}{\small{} +depending as }{\small\texttt{.}}{\small{} or }{\small\texttt{,}}{\small{} +is decimal mark}\tabularnewline +{\small\texttt{rverb}} & {\small fp (}{\small\texttt{0/0.5/1}}{\small )} & {\small display }{\small\texttt{rdata}}{\small , }{\small\texttt{rfile}}{\small{} +values verbatim (}{\small\texttt{1}}{\small ), or slash fractions formatted +(}{\small\texttt{0.5}}{\small )} & {\small initialized to }{\small\texttt{0}}\tabularnewline \bottomrule \end{tabular} \par\end{center} \end{table} -Occasionally one wants to form a table in which the row variable does -not increase or decrease in regular steps; for examples, see \emph{HMF} -Tables 1.1 and 3.1. (Tables 9.7, 10.5, 10.10 use two step values and -could also be handled with these settings.) For instance, one might -want a table of values of simple functions of a list of constants, -or a table of function values at $\pi$, $\pi/2$, $\pi/3$, $\pi/4$, -$\dots$, or at $1$, $10$, $100$, $1000$, $\dots$, or a table -of function values at thoroughly irregular, perhaps experimentally -determined, values. - -\texttt{numerica-tables} provides two means of specifying such row -variables, either by means of a row variable function (\verb`rfunc`\index{rfunc@\texttt{rfunc}}), -when the row variable values change in a non-uniform but formulaic -way, or by explicitly listing the row variable values in a comma list -(\verb`rdata`\index{rdata@\texttt{rdata}}, \verb`rfile`\index{rfile@\texttt{rfile}}). -In this latter case, a setting \verb`rverb`\index{rverb@\texttt{rverb}} -enables the row variable column to be displayed either as a sequence -of \emph{values} or verbatim as a sequence of \emph{expressions} \textendash{} -like fractions of $\pi$. - -\subsubsection{\texttt{rfunc}} - -\index{rfunc@\texttt{rfunc}|(}\index{row variable!variably stepped|(}Suppose +\index{rfunc@\texttt{rfunc}|(}\index{row variable!variably stepped|(}\label{subsec:rfunc}Suppose \textendash{} perhaps with an interest in the distribution of prime numbers \textendash{} that we want to create a small table of values of $n/\ln n$ for, say, $n=10$, $100$, 1000, $10000$, $\ldots$ -The prospective row variable $n$ is not increasing in constant steps, -although clearly in a regular manner. We handle such cases with the -\verb`rfunc` setting; in the present instance \verb`rfunc=10^n` -where now \verb`n` does increment by a constant amount: -\begin{verbatim} - \tabulate[rpos=1,rfunc=10^n,rvar=n,rstep=1, - rows=7,rround=0] - { n/\ln n }[n=1][0] -\end{verbatim} -$\Longrightarrow$ \tabulate[rpos=1,rfunc=10^n,rvar=n,rstep=1, - rows=7,rround=0] - { n/\ln n }[n=1][0]\medskip{} - -The variable \verb`n` has two different meanings here. Initially -it is the variable of a simple step function incrementing by $1$ -at each step. The function takes values \verb`10^n`. Once the table -is compiled however \verb`n` is used to denote these successive function -values, $10,100,\ldots,10000000$. To the \emph{reader} of the table, -only this latter meaning is evident. Yes, it would be possible to -add further keys to specify a distinct step function variable and -its start, step and stop values, but the list of keys to specify a -table is already large. The `double usage' implemented, perhaps -confusing initially, economizes on keys and is invisible to the reader -of the table. The initial value \verb`n=1`\index{vv-list!row/col. variable initial values} +The prospective row variable $n$ is not increasing uniformly, although +clearly in a formulaic way. The key \verb`rfunc` is for such cases; +in the present instance \verb`rfunc=10^n` where now \verb`n` does +increment by a constant amount: +\begin{verbatim} + \tabulate[rfunc=10^n,rvar=n,rstep=1,rows=7] + { n/\ln n }[n=1][0] \qquad + \tabulate[rfunc=10^n,rvar=n,rstep=1,rows=7,norules] + { n/\ln n }[n=1][0] +\end{verbatim} +$\Longrightarrow$ \tabulate[rpos=1,rfunc=10^n,rvar=n,rstep=1,rows=7] + { n/\ln n }[n=1][0]\qquad + \tabulate[rfunc=10^n,rvar=n,rstep=1,rows=7,norules] + { n/\ln n }[n=1][0]\medskip{} + +The benefit of the \verb`norules`\index{norules@\texttt{norules}} +setting in the second table is obvious. + +The variable \verb`n` has two meanings in these tables although only +one is publicly visible. Initially \verb`n` is the variable of a +step function, incremented by \verb`rstep=1` and taking values \verb`10^n`. +Once the table is compiled, \verb`n` denotes these successive function +values, $10,100,\ldots,10000000$. To the \emph{reader}, only this +latter meaning is evident, the potentially confusing `double usage' +not so. The initial value \verb`n=1`\index{vv-list!row/col.variables@row/col.\ variables}\index{row variable!initial value in vv-list} in the vv-list applies to the row variable function \verb`10^n`, -not to the function being tabulated (so the error-producing expression -\verb`1/\ln 1` does not arise).\index{rfunc@\texttt{rfunc}|)}\index{row variable!variably stepped|)} - -\subsubsection{\texttt{rdata}, \texttt{rfile}, \texttt{rverb} } - -\label{subsec:rdata-rfile-rverb}One\index{row variable!values from list, macro or file|(} -source of difficulty in reading the previous table is working out -just how many zeros there are in the larger numbers in the left column. -It would be more readable `at a glance' if we could write those -in scientific notation. To do that we use the \verb`rdata`\index{rdata@\texttt{rdata}|(} -and \verb`rverb`\index{rverb@\texttt{rverb}|(} keys. In the first -of the examples below, \verb`rverb` is absent (corresponding to the -default \verb`rverb=0`); in the second \verb`rverb=1`, the effect -of which is to use verbatim the row variable values provided in the -\verb`rdata` comma list:\index{row variable!verbatim values|(} +not to the function \verb`n/\ln n` being tabulated (so the error-producing +expression \verb`1/\ln 1` does not arise).\index{rfunc@\texttt{rfunc}|)}\index{row variable!variably stepped|)} + +\subsubsection{\texttt{rdata}, \texttt{rfile}, \texttt{rdelim}, \texttt{rverb} } + +\label{subsec:rdata-rfile-rverb}\index{row variable!values from list/macro/file|(}A +difficulty in reading the last two tables is working out just how +many zeros there are in the larger numbers in the left column. They +would be more readable `at a glance' if we could write them in scientific +notation. To do that, use the \verb`rdata`\index{rdata@\texttt{rdata}|(} +and \verb`rverb`\index{rverb@\texttt{rverb}|(} keys. In the tables +above, \verb`rverb` is absent (corresponding to \verb`rverb=0`); +in the tables below \verb`rverb=1`, the effect of which is to use +the row variable values in the \verb`rdata` list verbatim.\index{row variable!verbatim values|(} +In the first example below, the larger values of the row variable +are now expressed in scientific notation, which gives a table that +is easier to grasp \textendash{} but less pleasing to the eye. The +right alignment\index{ralign@\texttt{ralign}} of the column is the +culprit, as is seen when presented left-aligned in \ref{subsec:RValignment:ralign}. \begin{verbatim} \tabulate[rdata={10,100,1000,10^4,10^5,10^6,10^7}, - rvar=n,rround=0,ralign=l] - { n/\ln n }[0]\qquad - \tabulate[rdata={10,100,1000,10^4,10^5,10^6,10^7}, - rverb=1,rvar=n,rround=0,ralign=l] - { n/\ln n }[0] + rverb=1,rvar=n]{ n/\ln n }[0] \qquad + \def\mydata{\sfrac14\,\pi,\sfrac13\,\pi,\sfrac12\,\pi, + \sfrac23\,\pi,\sfrac34\,\pi,\pi} + \tabulate[rdata=\mydata,rverb=1,rvar=k] + { k }[*] \end{verbatim} $\Longrightarrow$ \tabulate[rdata={10,100,1000,10^4,10^5,10^6,10^7}, - rvar=n,rround=0] - { n/\ln n }[0]\qquad - \tabulate[rdata={10,100,1000,10^4,10^5,10^6,10^7}, - rverb=1,rvar=n,rround=0] - { n/\ln n }[0]\medskip{} - -\verb`rverb` is particularly useful if you want to make a table of -simple functions of constants. In the following example, with its -initial setting (\verb`rverb=0`), the constants would be listed in -the first column as numbers and repeated in the second column (perhaps -to a different number of decimal places), which would all be rather -pointless. With \verb`rverb=1`, the constants are listed verbatim -in the first column against their numerical values in the second. -In the example, the data has been stored in macros, \verb`\mydatai` -and \verb`\mydataii`, prior to calling the \verb`\tabulate` command. -\verb`\mydataii` uses the \verb`\sfrac` command from the \texttt{xfrac} -package. By setting \verb`rdata` equal to these macros, the \verb`\tabulate` -command gains access to the values stored in them. -\begin{verbatim} - \def\mydatai{\tfrac12\pi,\tfrac13\pi,\tfrac23\pi, - \tfrac14\pi,\tfrac34\pi} - \renewcommand\arraystretch{1.2} - \tabulate[rdata=\mydatai,rverb=1,rvar=k,headless=1] - { k }[6*] - \renewcommand\arraystretch{1} \qquad - \def\mydataii{\sfrac\pi2,\sfrac\pi3,\sfrac{2\pi}3, - \sfrac\pi4,\sfrac{3\pi}4} - \tabulate[rdata=\mydataii,rverb=1,rvar=k,headless=1] - { k }[6*] -\end{verbatim} -$\Longrightarrow$ \renewcommand\arraystretch{1.2} - \def\mydatai{\tfrac12\pi,\tfrac13\pi, - \tfrac23\pi,\tfrac14\pi,\tfrac34\pi} - \tabulate[rdata=\mydatai,rverb=1,rvar=k,headless=1 ] - { k }[6*] - \renewcommand\arraystretch{1} \qquad - \def\mydataii{\sfrac\pi2,\sfrac\pi3, - \sfrac{2\pi}3,\sfrac\pi4,\sfrac{3\pi}4} - \tabulate[rdata=\mydataii,rverb=1,rvar=k,headless=1] - { k }[6*]\medskip{} - -The setting \verb`headless=1`\index{headless@\texttt{headless}} -(see \ref{subsec:Header-row-suppress})\index{header row|see{column variable header, \texttt{headless}, row variable header}} -means the tables have no header row. To accommodate the tower of \verb`\tfrac`-s -in the first column of the first table, \verb`\arraystretch`\index{arraystretch@\texttt{\textbackslash arraystretch}} -has been used to add more space between the rows (and re-set afterwards). -Through the virtues of \verb`\sfrac` \index{sfrac@\texttt{\textbackslash sfrac}} -it is unnecessary in the second table which is neater and more readable -to my eye. But even better is the example at \ref{subsec:rfracFraction-form-rvar}. - -Note that the row variable can be chosen arbitrarily \textendash{} -I earlier used \verb`n` and have used \verb`k` here but it could -be anything. Nor does the function tabulated need to be the identity -\textendash{} see the earlier $n/\ln n$ example or a later example -in a multi-column setting in \ref{subsec:Headerstyle:-multi-column-case}. -The identity function was appropriate for tables showing the decimal -values of symbolic constants, as was the \verb`rverb=1` setting. + rverb=1,rvar=n,rround=0]{ n/\ln n }[0] \qquad + \def\mydata{\sfrac14\,\pi,\sfrac13\,\pi,\sfrac12\,\pi, + \sfrac23\,\pi,\sfrac34\,\pi,\pi} + \tabulate[rdata=\mydata,rverb=1,rvar=k] + { k }[*] \medskip{} + +In the second example \verb`rverb=1` is used to make a table of simple +fractions of $\pi$, listed verbatim in the row variable column against +their decimal values in the second column (the pointless header row +is discussed shortly). When \verb`rverb=1`, \verb`rround`\index{rround@\texttt{rround}} +does not apply. The full value is used in the calculation. For the +fractions I have used the \verb`\sfrac`\index{sfrac@\texttt{\textbackslash sfrac}} +command from the \texttt{xfrac}\index{xfrac package@\texttt{xfrac} package} +package (loaded in the preamble to the present document). \verb`\sfrac` +produces an elegant inline fraction with a smaller vertical footprint +than \verb`\tfrac` and so is better suited to use in a table column +that aligns fraction above fraction. The data has been stored in the +macro \verb`\mydata`. By setting \verb`rdata` equal to this macro, +the \verb`\tabulate` command gains access to the values stored in +it. + +In addition to a list or a macro, data for the row variable can also +be stored as a list in a file \textendash{} say \verb`mydata.txt`. +If \verb`mydata.txt` is placed in the directory of the current document +and \verb`rfile=mydata.txt`\index{rfile@\texttt{rfile}} entered +in the settings option of the \verb`\tabulate` command, the file +will be found and the values in the file used for the row variable. +Alternatively, the file could be placed in your \verb`texmf` tree +and your \TeX{} distro alerted to its presence (by refreshing the filename +database). Again \verb`rfile=mydata.txt` in the settings option will +ensure the file is found and the contents used for the row variable +values. Or, the file could be stored elsewhere and the \verb`rfile` +key equated to the full path and filename \textendash{} something +like \verb`rfile=e:/mydocs/mydatafiles/mydata.txt`. This ensures +the file will be found and the contents used for the row variable +values. Note that even in Windows systems (where file paths use backslashes) +the path requires that forward slashes only be used. \index{row variable!values from list/macro/file|)} + +The example above uses commas to separate the values accessed by \verb`rdata`. +In earlier versions of \texttt{numerica-tables} this was the case +even if the \verb`comma` package option was used with \texttt{numerica} +(meaning values using a comma as the decimal mark would need to be +enclosed in braces). From version 3.2 of \texttt{numerica-tables}, +if the \verb`comma` package option\index{comma package option@\texttt{comma} package option} +is used when calling \texttt{numerica}, then the list that \verb`rdata` +is equated to (or the file that \verb`rfile` references) should be, +by default, a \emph{semicolon} list.\index{decimal comma!semicolon use}\index{decimal comma!and rdata, rfile@and \texttt{rdata}, \texttt{rfile}} +It is also possible, from version 3.2, to specify your own delimiter +(item separator) by using the \verb`rdelim`\index{rdelim@\texttt{rdelim}} +setting. For instance, \verb`rdelim=|` would mean that the `pipe' +character separates items in the \verb`rdata` list (or the file referenced +by \verb`rfile`). + +An irritant with the second table above is the pointless header row. +To suppress it I could anticipate and enter \verb`headless`\index{headless@\texttt{headless}} +(see \ref{subsec:Header-row-suppress}) in the settings option. But +perhaps a better solution is to present the table horizontally by +means of the \verb`transpose` setting. Now the pointless header in +the vertical table becomes a pointless first column in the horizontal +table. The way to suppress that is by giving a zero value to the setting +\verb`rpos`\index{rpos@\texttt{rpos}} (see \ref{subsec:Row-var-col-pos} +for a discussion of \verb`rpos`). \verb`rpos` determines the placement +of the row variable column and a zero value suppresses its display +entirely. I have also suppressed all rules with the \verb`norules`\index{norules@\texttt{norules}} +setting, and reduced the rounding value to $4$. At which point the +remaining quibble is with the default right alignment of the entries +in the header row. I have anticipated again and centred each column +with the \verb`calign=c`\index{calign@\texttt{calign}} setting (\ref{subsec:Alignment:-calign}). +\begin{verbatim} + \def\mydata{\sfrac14\,\pi, \sfrac13\,\pi, \sfrac12\,\pi, + \sfrac23\,\pi, \sfrac34\,\pi, \pi} + \tabulate[rdata=\mydata,rverb=1,rvar=k,rpos=0,calign=c, + norules,transpose]{ k }[4*] +\end{verbatim} +$\Longrightarrow$ \def\mydata{\sfrac14\,\pi, \sfrac13\,\pi, \sfrac12\,\pi, + \sfrac23\,\pi, \sfrac34\,\pi, \pi } + \tabulate[rdata=\mydata,rverb=1,rvar=k,rpos=0,calign=c, + norules,transpose]{ k }[4*] \index{transpose@\texttt{transpose}!examples of use}\index{norules@\texttt{norules}}\medskip{} + + +\subsubsection{Fraction-form values} + +\label{subsec:rfracFraction-form-rvar}\index{row variable!fraction form|(}\index{fraction form!row variable values|(} The \verb`rverb` setting applies \emph{only} to the \verb`rdata` -and \verb`rfile` keys. It has no effect otherwise.\index{row variable!verbatim values|)}\index{rverb@\texttt{rverb}|)}\index{rdata@\texttt{rdata}|)} - -In addition to a comma list or macro, data for the row variable can -also be stored in a file of comma-separated values \textendash{} say -\verb`mydata.txt`. If \verb`mydata.txt` is placed in the directory -of the current document and \verb`rfile=mydata.txt`\index{rfile@\texttt{rfile}} -entered in the settings option of the \verb`\tabulate` command, the -file will be found and the values used for the row variable. Alternatively, -the file could be placed in your \verb`texmf` tree and your \TeX{} -distro alerted to its presence (by refreshing the filename database). -Again \verb`rfile=mydata.txt` in the settings option will ensure -the file is found and the contents used for the row variable values. -Or, the file could be stored elsewhere and the \verb`rfile` key equated -to the full path and filename \textendash{} something like \verb`rfile=e:/mydocs/mydatafiles/mydata.txt`. -This ensures the file will be found and the contents used for the -row variable values. Note that even in Windows systems (where file -paths use backslashes) the path requires that forward slashes only -be used. \index{row variable!values from list, macro or file|)} - -\subsection{Formatting row variable values \& column} +and \verb`rfile` keys. It has no effect otherwise. Besides \verb`0` +and \verb`1`, it can also take a third value, \verb`rverb=1/2`, +which can be thought of as `semi-verbatim'\index{rverb@\texttt{rverb}!`semi-verbatim'}. +(\verb`rverb=0.5` or indeed any expression in the syntax of \texttt{l3fp} +\textendash{} like \verb`sin(pi/6)` \textendash{} that evaluates +to one half will serve as well.) This renders `naked' slash fractions +from \verb`rdata` or \verb`rfile` input in formatted form using +the \verb`\sfrac` command from the \texttt{xfrac} package if it is +loaded (e.g. $\sfrac 23$), or in scriptstyle (e.g. $\scriptstyle 2/3$) +if it isn't. A `naked' slash fraction here means the fraction isn't +buried within parentheses or other constructs. + +I repeat the vertical presentation of the last table but use the `semi-verbatim' +setting. By moving the repeated factor \verb`\pi` from the data file +to the function being tabulated, the data file becomes a list of `naked' +slash fractions (and one integer) and the header row becomes meaningful. +Note that the integer is displayed as is with the `semi-verbatim' +setting; only the slash fractions are reformatted. Again, I have centred +the second column with the \verb`calign=c` setting: +\begin{verbatim} + \def\mydata{1/4,1/3,1/2,2/3,3/4,1} + \tabulate[rdata=\mydata,rverb=1/2, + rvar=k,calign=c] + { k\pi }[k=0][6*] +\end{verbatim} +$\Longrightarrow$ \def\mydata{1/4,1/3,1/2,2/3,3/4,1} + \tabulate[rdata=\mydata,rverb=0.5, + rvar=k,rhnudge=6,chnudge=18] + { k\pi }[k=0][6*] + +\subsection{Formatting the row variable column \& header} \label{subsec:Row-var-col-formatting}The padding option ({*}) of the trailing optional argument is one way of formatting the row variable values, but to how many decimal places? Aligned left or right or centred? -Under what heading \textendash{} the example tables so far have simply -used the row variable for the header? And should the row variable -column be at the left of the table, or the right \textendash{} or -both? These and related questions are answered by assigning values -to the keys listed in Table~\ref{tab:Formatting-the-row-variable}. -\begin{table}[tb] -\centering{}\caption{\protect\label{tab:Formatting-the-row-variable}Formatting the row -variable column} +Under what heading \textendash{} the examples so far have simply used +the row variable for the header? And should the row variable column +be at the left of the table, or the right \textendash{} or both? These +and related questions are answered by assigning values to the keys +listed in Table~\ref{tab:Formatting-the-row-variable}. + +\begin{table}[t] +\centering +\centering{}\caption{\label{tab:Formatting-the-row-variable}Formatting the row variable +column \& header} \begin{center} -\begin{tabular}{ll>{\raggedright}p{4cm}l} +\begin{tabular}{l>{\raggedright}p{2cm}>{\raggedright}p{4cm}>{\raggedright}p{2cm}} \toprule {\small key} & {\small type} & {\small meaning} & {\small initial}\tabularnewline \midrule -{\small\texttt{rround}} & {\small int} & {\small rounding} & {\small\texttt{1}}\tabularnewline -{\small\texttt{rfont}} & {\small chars} & {\small font (}{\small\verb`\math<chars>`}{\small )} & \tabularnewline -{\small\texttt{ralign}} & {\small char (}{\small\texttt{r/c/l}}{\small )} & {\small horizontal alignment} & {\small\texttt{r}}\tabularnewline -{\small\texttt{rhead}} & {\small tokens} & {\small header} & {\small\texttt{rvar}}\tabularnewline -{\small\texttt{rhnudge}} & int & {\small nudge header }{\small{\small\verb`<int>`}}{\small{} mu} & {\small\texttt{0}}\tabularnewline {\small\texttt{rpos}} & {\small int (}{\small\texttt{0}}{\small\ldots}{\small\texttt{4}}{\small )} & {\small column placement} & {\small\texttt{1}}\tabularnewline -{\small\texttt{rvar'}} & {\small tokens} & {\small 2nd row variable col. spec. } & {\small\texttt{rvar}}\tabularnewline -{\small\texttt{rhead'}} & {\small tokens} & {\small header of 2nd rv col. (if it exists)} & {\small\texttt{rvar'}}\tabularnewline -{\small\texttt{rhnudge'}} & int & {\small nudge 2nd rv col. header }{\small{\small\verb`<int>`}}{\small{} +{\small\texttt{ralign}} & {\small char (}{\small\texttt{r/c/l}}{\small )} & {\small horizontal alignment} & {\small\texttt{r}}\tabularnewline +{\small\texttt{rfont}} & {\small chars} & {\small font (}{\small\verb`\math<chars>`}{\small )} & \tabularnewline +{\small\texttt{rhead}} & {\small tokens} & {\small header} & \tabularnewline +{\small\texttt{rhnudge}} & {\small fp} & {\small nudge header }{\small{\small\verb`<fp>`}}{\small{} mu} & {\small\texttt{0}}\tabularnewline +{\small\texttt{rhsize}} & {\small int (}{\small\texttt{-4}}{\small\ldots}{\small\texttt{5}}{\small )} & {\small font size relative to }{\small\verb`0=\normalsize`} & {\small\texttt{0}}\tabularnewline +{\small\texttt{rmath}} & {\small char (}{\small\texttt{s/t/d}}{\small )} & {\small script-, text-, displaystyle} & {\small\texttt{t}}\tabularnewline +{\small\texttt{rvar'}} & {\small tokens} & {\small 2nd row variable col. spec. } & \tabularnewline +{\small\texttt{rhead'}} & {\small tokens} & {\small header of 2nd row var. col. (if it exists) } & \tabularnewline +{\small\texttt{rhnudge'}} & {\small fp} & {\small nudge 2nd row var. col. header }{\small{\small\verb`<fp>`}}{\small{} mu} & {\small\texttt{0}}\tabularnewline -{\small\texttt{rfrac}} & {\small int (}{\small\texttt{0}}{\small\ldots 5)} & {\small fraction form} & {\small\texttt{0}}\tabularnewline \bottomrule \end{tabular} \par\end{center} \end{table} -\subsubsection{Rounding: \texttt{rround}} - -After\index{rounding value!row variable|(}\index{rround@\texttt{rround}|(}\index{formatting!row variable values|(} -studying some of the previous tables, we might decide to adjust the -step size, say from $0.2$ to $0.25$. But changing \verb`rstep` -to the new value gives a disconcerting result. \texttt{numerica-tables} -uses a default rounding value of $1$ for the row variable and has -rounded $0.25$ down to $0.2$, then $0.2+0.25=0.45$ down to $0.4$, -then $0.4+0.25=0.65$ down to $0.6$, then $0.6+0.25=0.85$ down to -$0.8$, at which point it stops since $0.8+0.85>1$ which is the stopping -value. The rounded-down values are the values used for caclulating -the sines. The second table corrects matters by adjusting the row -variable rounding with \verb`rround=2`. -\begin{verbatim} - \tabulate[rvar=x,rstep=0.25,rstop=1] - { \sin x }[x=0][*] (Eh???) \quad - \tabulate[rvar=x,rstep=0.25,rstop=1,rround=2] - { \sin x }[x=0][*] -\end{verbatim} -$\Longrightarrow$ \tabulate[rvar=x,rstep=0.25,rstop=1] - { \sin x }[x=0][*](Eh???) \quad - \tabulate[rvar=x,rstep=0.25,rstop=1,rround=2] - { \sin x }[x=0][*]\index{rround@\texttt{rround}|)}\index{rounding value!row variable|)} - -\subsubsection{Font: \texttt{rfont}} - -In\index{rfont@\texttt{rfont}} the second table below bolding by -means of the setting \verb`rfont=bf` has been applied to emphasize -the distinction between the row variable values and the function values. -Possible values for this key are those characters that can be adjoined -to \verb`\math` to give a meaningful result. Thus other valid values -are \verb`it` (italic), \verb`sf` (sans serif), \verb`tt` (typewriter); -\verb`frak` (Fraktur); also \verb`rm` (roman) is available, but -that is the default.\index{formatting!row variable values|)} - -\subsubsection{Alignment: \texttt{ralign}} - -By\index{row variable column!alignment|(}\index{ralign@\texttt{ralign}} -default, the alignment of all columns is to the right, as in previous -examples. This lends itself to neat output when padding with zeros -is activated (the \verb`*` in the trailing argument) and when some -values are negative \textendash{} the minus signs interfere with -neat output in left or centred alignments.\index{function value formatting!sign handling} -But in a case like the second table in the last example, you might -prefer to centre the headers for both the row and function-value columns. -These alignments are independently set. For the row variable column -the default alignment is to the right \verb`ralign=r`; \verb`ralign=l` -(lowercase L) aligns entries in the row variable column to the left, -and \verb`ralign=c` centres entries in the row variable column. The -tables of the next example use a \verb`c` alignment to centre the -row variable column header. The third of those tables shows how minus -signs spoil the effect. - -\subsubsection{Row-variable header: \texttt{rhead}} - -In\index{rhead@\texttt{rhead}|(}\index{row variable header|(}\index{formatting!row variable header|(} -the second and third tables, the header for the row variable column -has also been bolded. The default header is the row variable symbol. -That can be replaced by giving a value to the key \verb`rhead`. I -have used \verb`rhead=\boldsymbol{x}` (rather than \verb`\mathbf{x}`) -in order to get an italicized bold symbol. Note that you do not need -to include math delimiters in the specification. It is assumed that -\verb`rhead` will sit between \verb`$ $` delimiters which are inserted -automatically by \verb`numerica-tables`. -\begin{verbatim} - \tabulate[rvar=x,rstep=0.25,rstop=1, - rround=2,ralign=c] - { \sin x }[x=0][*]\qquad - \tabulate[rvar=x,rstep=0.25,rstop=1,rround=2, - ralign=c,rfont=bf,rhead=\boldsymbol{x}] - { \sin x }[x=0][*]\qquad - \tabulate[rvar=x,rstep=0.25,rstop=0.5,rround=2, - ralign=c,rfont=bf,rhead=\boldsymbol{x}] - { \sin x }[x=-0.5][*] -\end{verbatim} -$\Longrightarrow$ \tabulate - [rvar=x,rstep=0.25,rstop=1, - rround=2,ralign=c] - { \sin x }[x=0][*]\qquad - \tabulate - [rvar=x,rstep=0.25,rstop=1, - rround=2,ralign=c,rfont=bf,rhead=\boldsymbol{x}] - { \sin x }[x=0][*]\qquad - \tabulate - [rvar=x,rstep=0.25,rstop=0.5,rround=2, - ralign=c,rfont=bf,rhead=\boldsymbol{x}] - { \sin x }[x=-0.5][*]\index{rfont@\texttt{rfont}}\medskip{} - -In these tables the row variable column has been given a centred alignment. -The third table shows what goes wrong when \emph{some} values in the -row variable column are negative. Better then is to use padding, a -right alignment (the default), and to use a phantom in the header. -The first table below does this. The second table incorporates kerning -into the header to achieve the same effect: -\begin{verbatim} - \tabulate[rvar=x,rstep=0.25,rstop=0.5,rround=2, - rfont=bf,rhead=\boldsymbol{x}\hphantom{0}] - { \sin x }[x=-0.5][*]\qquad - \tabulate[rvar=x,rstep=0.25,rstop=0.5,rround=2, - rfont=bf,rhead=\boldsymbol{x}\mkern 9 mu] - { \sin x }[x=-0.5][*] -\end{verbatim} -$\Longrightarrow$ \tabulate - [rvar=x,rstep=0.25,rstop=0.5,rround=2, - rfont=bf,rhead=\boldsymbol{x}\hphantom{0}] - { \sin x }[x=-0.5][*]\qquad - \tabulate - [rvar=x,rstep=0.25,rstop=0.5,rround=2, - rfont=bf,rhead=\boldsymbol{x}\mkern 9 mu] - { \sin x }[x=-0.5][*]\medskip{} - -(To my eye, aligning the $\boldsymbol{x}$ above the first column -of digits after the decimal point gives a better result than truly -centring it in the column; compare these examples with the first two -tables of the previous example.)\index{rhead@\texttt{rhead}}\index{formatting!row variable header|)} - -\subsubsection{Nudging~the~header: \texttt{rhnudge}} - -However\index{rhnudge@\texttt{rhnudge}|(}, you might prefer to avoid -inserting positioning commands into the actual row variable header, -obscuring its true content. You can avoid doing this by setting the -key \verb`rhnudge`. - -The first table below reverts to the default right alignment, avoids -any positioning commands in the row variable header, but instead nudges -it into position with the setting \verb`rhnudge=9`. For positive -nudge values, nudging works in the \emph{opposite} sense to the alignment. -The units for nudging are mu (math units, 18 to a quad), but only -a number \textendash{} generally an integer \textendash{} should be -specified; the `mu' is supplied by \verb`numerica-tables`. - -In the second table below the row variable takes single digit integer -values, while the row variable name now occupies more than one character. -With a right alignment the header would protrude out to the left. -By giving \verb`rhnudge` a \emph{negative} value (\verb`rhnudge=-12` -in the example) it is brought back to a centred position in the row -variable column. -\begin{verbatim} - \tabulate[rvar=x,rstep=0.25,rstop=0.5,rround=2, - rfont=bf,rhead=\boldsymbol{x},rhnudge=9] - { \sin x }[x=-0.5][4*]\qquad - \tabulate[rvar=x_{\text{int}},rstep=1,rstop=4, - rround=0,rfont=bf,rhnudge=-12, - rhead=\boldsymbol{x_{\text{int}}}] - { \sin x_{\text{int}} }[x_{\text{int}}=0][4*] -\end{verbatim} -$\Longrightarrow$ \tabulate - [rvar=x,rstep=0.25,rstop=0.5,rround=2, - rfont=bf,rhead=\boldsymbol{x},rhnudge=9] - { \sin x }[x=-0.5][4*]\qquad - \tabulate - [rvar=x_{\text{int}},rstep=1,rstop=4, - rround=0,rfont=bf,rhnudge=-12, - rhead=\boldsymbol{x_{\text{int}}}] - { \sin x_{\text{int}} }[x_{\text{int}}=0][4*]\index{row variable header|)}\index{rhnudge@\texttt{rhnudge}|)} - \subsubsection{Position in the table: \texttt{rpos}} \label{subsec:Row-var-col-pos}\index{row variable column!position in table}\index{rpos@\texttt{rpos}}By @@ -729,68 +794,41 @@ table. Its position is determined by the value of the key \texttt{rpos}: \item \verb`rpos=0`, suppressed (no row variable column); \item \verb`rpos=1`, first column (the default); \item \verb`rpos=2`, last column; -\item \verb`rpos=3`, first and last columns;\texttt{ } -\item \verb`rpos=4`, first and last columns, with the values in the last -column a user-defined function of the first; see \ref{subsec:Second-row-var-col}; +\item \verb`rpos=3`, first and last columns (e.g. see \ref{sec:Multiple-function-tables});\texttt{ } +\item \verb`rpos=4`, first column and a last column with values produced +by a user-defined function of the first; see \ref{subsec:Second-row-var-col}; \item Any other integer acts like \verb`rpos=1`. \end{itemize} -An example with \verb`rpos=3` is given shortly below, \ref{sec:Multiple-function-tables}. - -\subsubsection{\texttt{rvar'}, \texttt{rhead'}, \texttt{rhnudge'}} - -These settings become relevant only when \verb`rpos=4`; see \ref{subsec:Second-row-var-col}. - -\subsubsection{Fraction-form values: rfrac} - -\label{subsec:rfracFraction-form-rvar}\index{row variable!fraction form|(}\index{fraction form!row variable values|(} -By giving the setting \verb`rfrac` an integer value between $1$ -and $5$ inclusive it is possible to render the row variable values -as fractions with no more than \verb`rround` digits in the denominator. -Initially \verb`rfrac=0`, which gives decimal output. -\begin{itemize} -\item \verb`rfrac=1` produces a slash fraction like $2/3$; -\item \verb`rfrac=2` produces a scalable \verb`\frac`-tion like $\frac{2}{3}$ -in textstyle and $\dfrac{2}{3}$ in displaystyle; -\item \verb`rfrac=3` produces a non-scalable \verb`\tfrac` like $\tfrac{2}{3}$; -\item \verb`rfrac=4` produces a non-scalable \verb`\dfrac` like $\dfrac{2}{3}$; -\item \verb`rfrac=5` produces a slash fraction like $\sfrac 23$ (by means -of the \verb`\sfrac`\index{sfrac@\texttt{\textbackslash sfrac}} -command) in text- and displaystyles if the \texttt{xfrac} package -is loaded and like $\scriptstyle 2/3$ if it isn't; when used as a -super- or sub-script, the fractions reduce in size like $e^{\sfrac23}$ -or $e^{{\scriptscriptstyle 2/3}}$. -\end{itemize} -The following table repeats an earlier table from \ref{subsec:rdata-rfile-rverb}, -but more neatly, through using \verb`\sfrac` (with the \verb`rfrac=5` -call) instead of \verb`\tfrac`, and moving $\pi$ from the row variable -column into the formula: -\begin{verbatim} - \def\mydataii{1/2,1/3,2/3,1/4,3/4} - \tabulate[rdata=\mydataii,rpos=1, - rvar=k,rfrac=5,rhnudge=6,chnudge=18] - { k\pi }[k=0][6*] +When a table is transposed, these settings apply to the \emph{new} +row variable column (the old header row).\index{transpose@\texttt{transpose}!and rpos@and \texttt{rpos}} +For instance, with \verb`rpos=2` we get what was originally the header +row treated as the row variable column and placed on the right: +\begin{verbatim} + \tabulate[rspec={x,0.2,5},rpos=2,transpose,norules] + { \tan x }[x=0.2][*] \end{verbatim} -$\Longrightarrow$ \def\mydataii{1/2,1/3,2/3,1/4,3/4} - \tabulate[rdata=\mydataii,rpos=1, - rvar=k,rfrac=5,rhnudge=6,chnudge=18] - { k\pi }[k=0][6*]\index{fraction form!row variable values|)}\index{row variable!fraction form|)} +$\Longrightarrow$ \tabulate[rspec={x,0.2,5},rpos=2,transpose,norules] + { \tan x }[x=0.2][*]\index{transpose@\texttt{transpose}!examples of use}\index{norules@\texttt{norules}} -\subsection{Adjoined multi-function tables} +\paragraph{Adjoined multi-function tables} \label{subsec:Adjoining-tables}\index{adjoined tables}\index{multi-function tables} -How might one tabulate multiple functions simultaneously? \emph{HMF} -has many, many examples where multiple functions (like the trigonometric -or the hyperbolic functions) are tabulated in separate columns of -the same table. - -With the settings described so far, one way is to adjoin single column -tables. In the tables below, which display as a single multi-columned -table, I have used three different\index{rpos@\texttt{rpos}} \verb`rpos` -settings (\verb`rpos=1` is implicit in the first). This is one way -to build a table that displays as multi-column. If you use this method, -note that the \verb`%` comment characters are essential at the end -of the last argument of the \verb`\tabulate` commands if you want -the tables to abut exactly. Omitting them results in a space between +By assigning different values to \verb`rpos` it is possible to include +multiple functions in the same table by adjoining distinct single +column tables. \emph{HMF} has many, many examples where multiple functions +(like the trigonometric or hyperbolic functions) are tabulated in +separate columns of the same table. + +\texttt{numerica-tables} has a systematic way of doing this, described +in \ref{sec:Multiple-function-tables}, but with the settings discussed +to this point, the same effect can be achieved by the present more +naive means. The example below displays as a single multi-columned +table but is composed of three separate tables. I have used three +different\index{rpos@\texttt{rpos}} \verb`rpos` settings (\verb`rpos=1`, +the default setting, is implicit in the first) to achieve this and +ended all but the last \verb`\tabulate` command with the \LaTeX{} +comment character \verb`%`. These characters are essential if the +tables are to abut exactly. Omitting them results in a space between the tables. \begin{verbatim} \tabulate[rspec={x,0.2,6}] @@ -810,19 +848,223 @@ $\Longrightarrow$ \tabulate [rpos=2,rspec={x,0.2,6}] { \tan x }[x=0][*]\medskip{} -\noindent However, tabulating more than one function at a time is -too common a need to have to resort to a fudge like adjoining tables. -\verb`numerica-tables` offers a systematic way of doing this; see -\ref{sec:Multiple-function-tables}. +It is possible to similarly join transposed tables (you need the \verb`headless` +setting), stacked one below the other, but again that effect can be +achieved more readily in a systematic way \textendash{} see \ref{sec:Multiple-function-tables}. + +\subsubsection{Alignment: \texttt{ralign}} + +\label{subsec:RValignment:ralign}\index{row variable column!alignment|(}\index{ralign@\texttt{ralign}}By +default, the alignment of all columns including the row variable column +is to the right, as in the examples so far. This lends itself to clean +output when padding with zeros is activated (the \verb`*` in the +trailing argument) or when some values are negative, since minus signs +can interfere with alignment of digits in left or centred alignments. +In the first example below I present an earlier table where the row +variable values were a mix of powers of $10$ multiplied out and in +exponent form. In that table (see \ref{subsec:rdata-rfile-rverb}) +with its right alignment the eye stumbled over the exponents. In left +alignment, it is a column of `$1$'s which is aligned and the alignment +is `smooth'. Left alignment is achieved by setting \verb`ralign=l` +(a lowercase `L'). In the second table I have chosen a centred alignment +for the row variable column, \verb`ralign=c` (and once more used +\verb`calign=c` for the function-value column). The other possible +setting for \verb`ralign` is the default right alignment, \verb`ralign=r`. +\begin{verbatim} + \tabulate[rdata={10,100,1000,10^4,10^5,10^6,10^7}, + rverb=1,rvar=n,ralign=l] + { n/\ln n }[0]\qquad + \tabulate[rspec={x,0.01,7},rround=2,ralign=c,calign=c] + { \sin x }[x=1.51][*] +\end{verbatim} +$\Longrightarrow$ \tabulate[rdata={10,100,1000,10^4,10^5,10^6,10^7}, + rverb=1,rvar=n,ralign=l] + { n/\ln n }[0]\qquad + \tabulate[rspec={x,0.01,7},rround=2, + ralign=c,calign=c] + { \sin x }[x=1.51][*] + +\subsubsection{Font: \texttt{rfont}} + +\index{rfont@\texttt{rfont}}\index{formatting!row variable column|(}You +may wish to distinguish the values in the row variable column from +the values in the function-value column typographically, for instance +by bolding them. This is effected through the setting \verb`rfont`. +Possible values for this setting are \verb`rm` (roman), \verb`bf` +(bold face), \verb`it` (italic), \verb`sf` (sans serif), and \verb`tt` +(typewriter). For instance, \verb`rfont=bf` applies \verb`\mathbf` +to each row variable value, \verb`rfont=tt` applies \verb`\mathtt` +to each row variable value, and so on. If you set \verb`rfont=xx` +when \verb`\mathxx` has not been defined, then a \LaTeX{} error will +result. Equally, something like \verb`rfont=cal` (where \verb`\mathcal` +\emph{has} been defined) should not cause error but will give unexpected +results if the digits $0$ to $9$ are not part of the font. In the +next example, I repeat the last example in `vertical' form but with +the row variable column values bolded to draw attention to their placement +on the right \textendash{} but note that the \verb`rfont` setting +has no effect on the row variable header. +\begin{verbatim} + \tabulate[rspec={x,0.2,5},rpos=2,rfont=bf] + { \tan x }[x=0.2][*] \qquad + \tabulate[rspec={x,0.2,5},rpos=2,rfont=bf, + rhead=\boldsymbol{x}\phantom{.}] + { \tan x }[x=-0.4][*] +\end{verbatim} +$\Longrightarrow$ \tabulate[rspec={x,0.2,5},rpos=2,rfont=bf] + { \tan x }[x=0.2][*] \qquad + \tabulate[rspec={x,0.2,5},rpos=2,rfont=bf, + rhead=\boldsymbol{x}\phantom{.}] + { \tan x }[x=-0.4][*] + +\subsubsection{Row variable header: \texttt{rhead}} + +\label{subsec:RVheader:rhead}\index{rhead@\texttt{rhead}|(}\index{row variable header|(}The +default header is the row variable symbol. In the second table that +has been changed by giving a value to the key \verb`rhead`. I have +used \verb`rhead=\boldsymbol{x}` (rather than \verb`\mathbf{x}`) +in order to get an italicized bold symbol. I've also added a \verb`\phantom{.}` +to \verb`rhead` in order to push the (by default) right-aligned header +leftwards and give a more centred appearance to its positioning. Math +delimiters (\verb`$ $`) are inserted automatically by \texttt{numerica-tables}. +If you do not want any header at all for the row variable column, +entering \verb`rhead= ` , an empty setting, will achieve this \textendash{} +at least from version 3.2 of \texttt{numerica-tables}. In earlier +versions you needed to set \verb`rhead` to (e.g.) a space of some +kind like \verb`\ ` (an inter-word space). \index{rhead@\texttt{rhead}|)}\index{formatting!row variable header|)} + +\subsubsection{Nudging the header: \texttt{rhnudge}} + +\label{subsec:RVnudging:rhnudge}Choosing a centred alignment for +the header to the row variable column will generally not be appropriate +when negative values are involved. In an earlier table I used a phantom +to get around this. Another way which avoids obscuring the true content +of the \verb`rhead` setting with positioning commands is to use the +setting \verb`rhnudge`\index{rhnudge@\texttt{rhnudge}|(}. + +Both tables below have the default right alignment of the row variable +column and use \verb`rhnudge` to adjust the header position. For +positive values, \verb`rhnudge` works in the \emph{opposite} sense +to the alignment, to the left for right alignment, and to the right +otherwise. The units for nudging are mu (math units, 18 to a quad), +but only a number should be specified; the `mu' is supplied by +\texttt{numerica-tables}. +\begin{verbatim} + \tabulate[rvar=x,rstep=0.25,rstop=0.5,rround=2, + rfont=bf,rhead=\boldsymbol{x},rhnudge=9] + { \sin x }[x=-0.5][4*]\qquad + \tabulate[rvar=x_{\text{int}},rstep=1,rstop=4, + rround=0,rfont=bf,rhnudge=-12, + rhead=\boldsymbol{x_{\text{int}}}] + { \exp x_{\text{int}} }[x_{\text{int}}=0][4*] +\end{verbatim} +$\Longrightarrow$ \tabulate + [rvar=x,rstep=0.25,rstop=0.5,rround=2, + rfont=bf,rhead=\boldsymbol{x},rhnudge=9] + { \sin x }[x=-0.5][4*]\qquad + \tabulate + [rvar=x_{\text{int}},rstep=1,rstop=4, + rround=0,rfont=bf,rhnudge=-12, + rhead=\boldsymbol{x_{\text{int}}}] + { \exp x_{\text{int}} }[x_{\text{int}}=0][4*]\medskip{} + +\noindent In the second table the row variable takes single digit +integer values, while the row variable name occupies more than one +character. With a right alignment the header would protrude out to +the left. By giving \verb`rhnudge` a \emph{negative} value (\verb`rhnudge=-12` +in the example) it is brought back to a centred position in the row +variable column. \index{rhnudge@\texttt{rhnudge}|)}\index{formatting!row variable column|)} + +\subsubsection{Font size of the header: \texttt{rhsize}} + +The font size of the header can be changed by assigning an integer +value to the key \verb`rhsize`\index{rhsize@\texttt{rhsize}}. Valid +values range from $-4$, corresponding to \verb`\tiny`, through $0$, +corresponding to \verb`\normalsize`, to $5$, corresponding to \verb`\Huge`. +The actual values in points differ depending as \verb`\normalsize` +is $10$pt, $11$pt, or $12$pt, but range from $5$pt for \verb`\tiny` +when \verb`\normalsize` is $10$pt, to $24.88$pt for \verb`\Huge` +in all three cases. See also \ref{subsec:chsize}. + +\subsubsection{\texttt{rmath}} + +\label{subsec:rmath}By\index{rmath@\texttt{rmath}} default the row +variable column is displayed in textstyle (\verb`\textstyle`). By +setting \verb`rmath` to \verb`s`, \verb`t` or \verb`d` it is possible +to explicitly choose \verb`\scriptstyle`, \verb`\textstyle` or \verb`\displaystyle` +for its display. \verb`rmath` is relevant when one might want to +display more complicated structures than numbers in the row variable +column, e.g. verbatim items when using \verb`rdata` or \verb`rfile`, +or in transposed multi-function tables; see the example in \ref{sec:Multiple-function-tables}. +Returning to an earlier example, suppose the macro \verb`\mydata` +contains a list of fractions, not in slash form but \verb`\frac`-form:\index{arraystretch@\texttt{\textbackslash arraystretch}} +\begin{verbatim} + \def\mydata{\frac14,\frac13,\frac12,\frac23,\frac34,1} + \tabulate[rdata=\mydata,rverb=1,rvar=k,calign=c] + { k\pi }[k=0][6*]\qquad + \renewcommand\arraystretch{1.2} + \tabulate[rdata=\mydata,rverb=1,rvar=k,calign=c] + { k\pi }[k=0][6*]\qquad + \renewcommand\arraystretch{1} + \tabulate[rdata=\mydata,rverb=1,rvar=k,rmath=s,calign=c] + { k\pi }[k=0][6*] +\end{verbatim} +$\Longrightarrow$ \def\mydata{\frac14,\frac13,\frac12,\frac23, + \frac34,1} + \tabulate[rdata=\mydata,rverb=1,rvar=k,calign=c] + { k\pi }[k=0][6*]\qquad + \renewcommand\arraystretch{1.2} + \tabulate[rdata=\mydata,rverb=1,rvar=k,calign=c] + { k\pi }[k=0][6*]\qquad + \renewcommand\arraystretch{1} + \tabulate[rdata=\mydata,rverb=1,rvar=k,rmath=s,calign=c] + { k\pi }[k=0][6*]\medskip{} + +\noindent The first table is unacceptable; the second (with \verb`\arraystretch` +set to $1.2$) and the third (with \verb`rmath=s`) are at least readable +but neither is really satisfactory. Better is to use \verb`\sfrac`, +either directly or by the `semi-verbatim' \verb`rverb` setting +discussed earlier in \ref{subsec:rfracFraction-form-rvar}.\index{fraction form!row variable values|)}\index{row variable!fraction form|)}\index{row variable!verbatim values|)}\index{rverb@\texttt{rverb}|)}\index{rdata@\texttt{rdata}|)} + +\subsubsection{\texttt{rvar'}, \texttt{rhead'}, \texttt{rhnudge'}} + +These settings become relevant only when \verb`rpos=4`; see \ref{subsec:Second-row-var-col}.\index{row variable header|)} \section{Column-variable settings} -\label{sec:Column-variable-settings} -\begin{table} +\label{sec:Column-variable-settings}When a function of \emph{two} +variables is tabulated, we generally think of one variable as the +primary variable and the other as a parameter. To tabulate such a +function, we use the primary variable as the row variable and create +a succession of adjacent columns of function values according to the +different values of the parameter. In this document I call this second +variable the \emph{column} variable (\verb`cvar`). Just as with the +row variable, to create a table we need its start value (specified +in the vv-list), and its step (\verb`cstep`) and stop (\verb`cstop`) +values\index{column variable!start, step, stop values|(}. +\begin{verbatim} + \tabulate[rspec={x,0.2,5},cvar=k,cstep=2,cstop=9] + { \sin kx }[k=3,x=0.2][4*] +\end{verbatim} +$\Longrightarrow$ \tabulate[rspec={x,0.2,5},cvar=k,cstep=2,cstop=9] + { \sin kx}[k=3,x=0.2][4*] \medskip{} + +In \index{cvar@\texttt{cvar}|(} this example \verb`cvar=k` is the +column variable. I have chosen a step size \verb`cstep=2`\index{cstep@\texttt{cstep}|(} +and a stop value \verb`cstop=9`\index{cstop@\texttt{cstop}|(}. The +start value ({\ttfamily\verb`k=3`}) is specified in the +vv-list\index{vv-list!row/col.variables@row/col.\ variables}\index{column variable!initial value in vv-list}. +Although in the example these values are numbers, all three values +could be \LaTeX{} expressions that evaluate to numbers. In particular, +the expressions for step and stop values may include the row and column +variables (in the example $x$ and $k$) which are assigned their +\emph{initial} vv-list values. + +\begin{table}[t] +\centering \caption{Column-variable specification} \centering{}\begin{center} -\begin{tabular}{ll>{\raggedright}p{4cm}l} +\begin{tabular}{ll>{\raggedright}p{3cm}l} \toprule {\small key} & {\small type} & {\small meaning} & {\small comment}\tabularnewline \midrule @@ -831,453 +1073,591 @@ too common a need to have to resort to a fudge like adjoining tables. {\small\texttt{cstop}} & {\small real num.} & {\small stop value} & {\small either }{\small\texttt{cstop}}\tabularnewline {\small\texttt{cols}} & {\small int} & {\small number of columns} & {\small or }{\small\texttt{cols}}\tabularnewline {\small\texttt{cspec}} & {\small comma list} & {\small\texttt{\{cvar,cstep}}{\small ,}{\small\texttt{cols\}}} & {\small short form spec.}\tabularnewline +{\small\texttt{chround}} & {\small int} & {\small col. var. rounding} & {\small default: }{\small\texttt{0}}\tabularnewline \bottomrule \end{tabular} \par\end{center} \end{table} -When a function of \emph{two} variables is being tabulated, we generally -think of one variable as the primary variable and the other as a parameter. -To tabulate such a function, one way to proceed, as we have seen, -is to create and adjoin separate tables, one per parameter value, -but that is clumsy. A more systematic procedure is to specify, in -addition to the row variable, a \emph{column} variable and its start, -step and stop values\index{column variable!start, step, stop values|(}. - -In \index{cvar@\texttt{cvar}|(} the following example \verb`cvar=k` -is the column variable. I have chosen a step size \verb`cstep=2`\index{cstep@\texttt{cstep}|(} -and a stop value \verb`cstop=9`\index{cstop@\texttt{cstop}|(}. As -with the row variable, the start value ({\ttfamily\verb`k=3`}) -of the column variable is specified in the vv-list\index{vv-list!row/col. variable initial values}\index{column variable!initial value in vv-list}. -Although in the example these values are numbers, all three values -could be \LaTeX{} expressions that evaluate to numbers. In particular, -the expressions for step and stop values may include the row and column -variables (in the example $x$ and $k$) which are assigned their -initial vv-list values. Note also the setting for \verb`rhead`\index{rhead@\texttt{rhead}} -which shows the reader of the table that the numerical values displayed -in the column headers are values of \verb`k`. This usage occurs throughout -\emph{HMF}. +\texttt{numerica-tables} has automatically inserted the row variable +header which now has a double function: it serves also as the `header' +of the header row. As you can see $x\mkern1mu\backslash\mkern1mu k$ +has been inserted into this cell. From version 3.2 of \texttt{numerica-tables} +the automatic insertion of this form of header in a multi-column table +occurs if \verb`rhead`\index{rhead@\texttt{rhead}} is omitted. (If +you want nothing to show, put \verb`rhead= `, an empty setting.) +This form of header above the row variable column occurs throughout +\emph{HMF}. In the present example it shows the reader that the numerical +values displayed in the row variable column are values of $x$ and +the values in the column headers are values of $k$. + +As with the row variable, rather than using a stop value,\texttt{ +}{\ttfamily\verb`cstop`}, you can specify the number of +columns, \verb`cols`\index{cols@\texttt{cols}|(}, explicitly. I +could have replaced {\ttfamily\verb`cstop=9`} with \verb`cols=4` +to get the same result. \verb`cols` specifies the number of \emph{function-value} +columns; the row variable column is ignored for this count. A quirk +of using \verb`cols` is that it is then possible to have a \emph{zero} +step size, \verb`cstep=0`.\index{cstep@\texttt{cstep}!zero value} +(A similar comment applies to \verb`rows` and \verb`rstep`\index{rstep@\texttt{rstep}!zero value}.) +For an instance where this is useful, see the last example in \ref{subsec:Nudgingtheheaders:-chnudge}. + +Again as with the row variable, the column specification can be condensed +into a comma list with the key \verb`cspec`\index{cspec@\texttt{cspec}|(}. +This is a $3$-element comma list of the form \verb`{cvar,cstep,cols}` +(and as for \verb`rspec`, with an optional fourth element, \verb`chround`; +see \ref{subsec:chround}). Thus, for the preceding table I could +also have written \begin{verbatim} - \tabulate[rspec={x,0.2,6},rhead=x\backslash k, - cvar=k,cstep=2,cstop=9] - { \sin kx }[k=3,x=0][*] -\end{verbatim} -$\Longrightarrow$ \tabulate - [rspec={x,0.2,6},rhead=x\backslash k, - cvar=k,cstep=2,cstop=9] - { \sin kx }[k=3,x=0][*] \medskip{} - -Again, as with the row variable, rather than using an explicit stop -value\texttt{ }{\ttfamily\verb`cstop`}, you might prefer -to specify the number of columns, \verb`cols`\index{cols@\texttt{cols}|(}, -explicitly. I could have replaced {\ttfamily\verb`cstop=9`} -with \verb`cols=4` to get the same result. Note that the number of -columns specified here is the number of \emph{function-value} columns; -the row variable column is ignored for this count. - -It is worth pointing out explicitly that if \verb`cols` is specified, -then it is possible to have a \emph{zero} step size, \verb`cstep=0`. -(A similar comment applies to \verb`rows` and \verb`rstep`.) - -And again, as with the row variable, it is possible to condense the -specification into a comma list with the key \verb`cspec`\index{cspec@\texttt{cspec}|(}. -This is a $3$-element comma list of the form \verb`{cvar,cstep,cols}`. -Thus, for the preceding table I could also have written -\begin{verbatim} - \tabulate[rspec={x,0.2,6},rhead=x\backslash k, - cvar=k,cstep=2,cols=4] - { \sin kx }[k=3,x=0][*] + \tabulate[rspec={x,0.2,5},cvar=k,cstep=2,cols=4] + { \sin kx }[k=3,x=0.2][4*] \end{verbatim} or more succinctly \begin{verbatim} - \tabulate[rspec={x,0.2,6},rhead=x\backslash k, - cspec={k,2,4}] - { \sin kx }[k=3,x=0][*] + \tabulate[rspec={x,0.2,5},cspec={k,2,4}] + { \sin kx }[k=3,x=0.2][4*] \end{verbatim} and produced the same table. -As with the row equivalents, \verb`cstep`, \verb`cstop` and \verb`cols` -can all be \LaTeX{} expressions. Again like the row equivalents, the -first two are evaluated \emph{after }the vv-list and so may depend -not only on numbers and constants but also the initial values of the -row and column variables, which are given those values in the vv-list.\index{vv-list!row/col. variable initial values} +Like their row equivalents, \verb`cstep`, \verb`cstop` and \verb`cols` +can all be \LaTeX{} expressions, and like those equivalents, the first +two are evaluated \emph{after }the vv-list and so may depend not only +on numbers and constants but also on the \emph{initial} values of +the row and column variables, which are assigned in the vv-list.\index{vv-list!row/col.variables@row/col.\ variables} \verb`cols` is evaluated \emph{before }the vv-list; it may be a \LaTeX{} expression but cannot depend on the row or column variable.\index{cvar@\texttt{cvar}|)}\index{cstep@\texttt{cstep}|)}\index{cstop@\texttt{cstop}|)}\index{cols@\texttt{cols}|)}\index{cspec@\texttt{cspec}|)}\index{column variable!start, step, stop values|)} +Multi-column tables can be transposed: simply add \verb`transpose` +to the settings option. I have done this for the last example. Transposition +automatically changes the positions of $k$ and $x$ in the new row +variable header:\index{transpose@\texttt{transpose}!examples of use} +\begin{verbatim} + \tabulate[rspec={x,0.2,5},cvar=k,cstep=2,cstop=9, + transpose]{ \sin kx }[k=3,x=0.2][4*] +\end{verbatim} +$\Longrightarrow$ \tabulate[rspec={x,0.2,5},cvar=k,cstep=2,cstop=9, + transpose] + { \sin kx}[k=3,x=0.2][4*] \medskip{} + +\noindent To my eye, this table looks odd. Admittedly, the oddness +is exaggerated by the new row variable column being a column of integers; +\verb`ralign=c` would help there. But the underlying problem remains: +we expect the coarser graining in the column variable and its header +row, and the finer graining in the row variable and its column. Transposition +has confounded this expectation. + +\subsection{Rounding: \texttt{chround}} + +\label{subsec:chround}\index{chround@\texttt{chround}|(}\index{rounding value!header row|(}Generally +the column variable increments in larger steps than the row variable. +Often these are integer steps. For that reason the default rounding +value of the column variable is $0$ (as against $1$ for the row +variable), but it can be changed by assigning a different value to +the key \verb`chround`. + +For transposed tables, rounding is applied \emph{before }transposition. +The function values displayed in the body of the table are calculated +for the \emph{displayed} values of the row and column variables. Transposition +doesn't change the displayed function values and therefore shouldn't +change the displayed row and column variable values, irrespective +of their placement in the table. In the last (transposed) example +the `new' column headers show that the original row variable rounding +has been retained. As an essential part of the column variable specification, +\verb`chround` can be included as an optional fourth element in \verb`cspec`\index{cspec@\texttt{cspec}}. + +Since the default column variable rounding is $0$, any non-integer +increment to that variable needs an explicit value to be assigned +to \verb`chround`. For instance if $k$ increments by, say, $0.25$, +then \verb`chround=2` will need to be entered in the settings option +of the \verb`\tabulate` command, or \verb`2` entered as the fourth +element of \verb`cspec`: +\begin{verbatim} + \tabulate[rspec={x,0.2,5},ralign=c, + cspec={k,0.25,4,2}] + { \sin kx }[k=3,x=0.2][*4] +\end{verbatim} +$\Longrightarrow$ \tabulate + [rspec={x,0.2,5},ralign=c, + cspec={k,0.25,4,2}] + { \sin kx }[k=3,x=0.2][*4]\index{rounding value!header row|)}\index{chround@\texttt{chround}|)}\index{formatting!column variable header} + \subsection{Column header formatting} -\label{subsec:Column-header-formatting}\index{formatting!column variable header|(}\index{column variable header|(} -\begin{table}[b] +\label{subsec:Column-header-formatting}\index{formatting!column variable header|(}\index{column variable header!formatting|(} +\begin{table}[t] +\centering \centering{}\caption{Formatting the column variable header} \begin{center} +{\small{}% \begin{tabular}{ll>{\raggedright}p{4cm}l} \toprule -{\small key} & {\small type} & {\small meaning} & {\small initial}\tabularnewline +{\small key} & {\small type} & {\small meaning} & {\small default}\tabularnewline \midrule -{\small\texttt{chstyle}} & {\small int (0\ldots 4)} & {\small header style} & {\small\texttt{0}}\tabularnewline -{\small\texttt{ctitle}} & {\small tokens} & {\small single col. alt. header} & \tabularnewline -{\small\texttt{chead}} & {\small tokens} & {\small user-defined header } & \tabularnewline -{\small\texttt{calign}} & {\small char (r/c/l)} & {\small column alignment} & {\small\texttt{r}}\tabularnewline -{\small\texttt{chnudge}} & {\small int} & {\small nudge header }{\small{\small\verb`int`}}{\small{} mu} & {\small\texttt{0}}\tabularnewline -{\small\texttt{chround}} & {\small int} & {\small{} rounding} & {\small\texttt{0}}\tabularnewline +{\small\texttt{chstyle}} & {\small int (}{\small\texttt{0}}{\small\ldots}{\small\texttt{4}}{\small )} & {\small header style} & {\small\texttt{0}}\tabularnewline +{\small\texttt{chead}} & {\small token(s)} & {\small user-defined col. var. header} & \tabularnewline +{\small\texttt{calign}} & {\small char (}{\small\texttt{r}}{\small /}{\small\texttt{c}}{\small /}{\small\texttt{l}}{\small )} & {\small column alignment} & {\small\texttt{r}}\tabularnewline +{\small\texttt{chnudge}} & {\small fp} & {\small nudge header }{\small{\small\verb`chnudge`}}{\small{} +mu} & {\small\texttt{0}}\tabularnewline +{\small\texttt{chfont}} & {\small chars} & {\small font (}{\small\verb`\math<chars>`}{\small )} & \tabularnewline +{\small\texttt{chmath}} & {\small char (}{\small\texttt{s}}{\small /}{\small\texttt{t}}{\small /}{\small\texttt{d}}{\small )} & {\small script-, text- or displaystyle} & {\small\texttt{t}}\tabularnewline +{\small\texttt{chsize}} & {\small int (}{\small\texttt{-4}}{\small\ldots}{\small\texttt{5}}{\small )} & {\small font size relative to }{\small\verb`0 => \normalsize`} & {\small\texttt{0}}\tabularnewline \bottomrule -\end{tabular} +\end{tabular}} \par\end{center} \end{table} -There are four built-in style settings for the header to the column -variable (or function-value) columns (the `ch' prefix evoking `column -header'). If these don't meet your needs or otherwise satisfy, then -it is possible to define your own header to the function value columns -using the key \verb`chead`. First I discuss the built-in styles. +Column header formatting depends on whether the table has a single +column of function values, or multiple columns of function values. +For the latter there are a number of built-in style settings for the +header, accessed by assigning a value (\verb`0`, \verb`1`, \verb`2`, +\verb`3`) to the setting \verb`chstyle`. This can (sometimes) be +adjusted with the settings \verb`chfont`, \verb`chnudge` and \verb`chmath`. +If these built-in styles don't satisfy then it is possible to define +your own header to the function-value columns by using the setting +\verb`chead`. \subsubsection{Single-column header} -When\index{column variable header!single column case} there is only +\index{column variable header!single column case}When there is only one column of function values, the function being tabulated is by -default set as the header to the column. This corresponds to setting -\verb`ctitle=*`\index{ctitle@\texttt{ctitle}!* setting@\texttt{{*}} setting} -(see \ref{subsec:Title:-ctitle-setting} below). You may want some -other header. Then give \verb`ctitle`\index{ctitle@\texttt{ctitle}} -some other value (although note that giving it the value \texttt{{*}{*}}\index{ctitle@\texttt{ctitle}!** setting@\texttt{{*}{*}} setting} -will set both the function and the vv-list as the header; again see -\ref{subsec:Title:-ctitle-setting}). Whatever value you set, it -will be typeset between math delimiters (\verb`$` signs) and can -be nudged (see \ref{subsec:Nudgingtheheaders:-chnudge}) left or -right to fine-tune its position in the column. (If you want an asterisk -as the header, you will need to place it between \emph{two} pairs -of braces, \verb`ctitle={{*}}`, to prevent it being misinterpreted -as the default setting.) - -If you want some more complicated header, perhaps not constrained -by the \verb`$` delimiters, then give \verb`chead`\index{chead@\texttt{chead}} -a value. This key I discuss below in \ref{subsec:chead}. \verb`chead` -is entirely up to the user to specify, including any math delimiters -and positioning (nudging) of elements. - -If both \verb`ctitle` and \verb`chead` are given, the \verb`chead` -value prevails. - -\subsubsection{Multi-column header: \texttt{chstyle}} - -\label{subsec:Headerstyle:-multi-column-case}\index{column variable header!multi-column case|(}\verb`chstyle=0`\index{chstyle@\texttt{chstyle}|(}\index{column variable header!multi-column case!chstyle@\texttt{chstyle}|(} -which is the default gives a header of the form displayed in the last -example, with only the column variable \emph{value} at the head of -each column. This style generally requires the row variable header -to indicate what the values denote, as in the example above where -\verb`rhead=x\backslash k`, the backslash separating row from column -variable. \emph{HMF} contains a multitude of instances of this style; -see Tables~9.7, 17.5, 21.1, 24.3, 27.4, etc. for examples. - -\verb`chstyle=1` changes the header of the \emph{first} function -value column to the form \emph{variable=value} \textendash{} in the -example below, to $k=1$. This may be an appropriate choice when a -small rounding value is being used and the resulting columns are narrow. -I can find only one real instance in \emph{HMF}, Table~26.7. In the -example I have used the \verb`rdata` setting to collect an assortment -of nonsense values and for some weird reason wish to tabulate the -sines of multiples of these oddballs. Note that the row variable setting -\verb`rhead` (producing $X\backslash k$) is no longer needed since -the column variable is now explicitly indicated. (But the table is -lacking a title \textendash{} what on earth are we calculating with -this strange group of numbers?) -\begin{verbatim} - \tabulate[rdata={-e^2,1.234e2,3.1416,\pi/\gamma,1/9}, - ^,rvar=X,rverb=1,cspec={k,1,3},chstyle=1] - { \sin kX }[k=1][3*] -\end{verbatim} -$\Longrightarrow$ \tabulate[rdata={-e^2,1.234e2,3.1416,\pi/\gamma,1/9}, - ^,rvar=X,rverb=1,cspec={k,1,3},chstyle=1] - { \sin kX }[k=1][3*]\medskip{} +default set as the header to the column. This can be nudged left or +right by giving a numerical value to \verb`chnudge`. It can be set +in script-, text- or displaystyle (see the example) by setting \verb`chmath`\index{chmath@\texttt{chmath}} +to \verb`s`, \verb`t` (the default) or \verb`d`. \verb`chfont`, +however, has no effect in the single column case. +\begin{verbatim} + \tabulate[rspec={x,0.25,5},rround=2,chmath=s] + { \frac{2}{\sqrt\pi} e^{-x^2} }[x=0][*] \qquad + \tabulate[rspec={x,0.25,5},rround=2] + { \frac{2}{\sqrt\pi} e^{-x^2} }[x=1][*] \qquad + \tabulate[rspec={x,0.25,5},rround=2,chmath=d] + { \frac{2}{\sqrt\pi} e^{-x^2} }[x=2][*] +\end{verbatim} +$\Longrightarrow$ \tabulate[rspec={x,0.25,5},rround=2,chmath=s] + { \frac{2}{\sqrt\pi} e^{-x^2} }[x=0][*]\qquad + \tabulate[rspec={x,0.25,5},rround=2] + { \frac{2}{\sqrt\pi} e^{-x^2} }[x=1][*]\qquad + \tabulate[rspec={x,0.25,5},rround=2,chmath=d] + { \frac{2}{\sqrt\pi} e^{-x^2} }[x=2][*]\medskip{} + +You may want some other header to the function-value column, one of +your own choosing. In that case give \verb`chead`\index{chead@\texttt{chead}} +a value. You are responsible for the entire content, including any +math environment; see the examples at \ref{subsec:Fraction-form-output}. + +\subsubsection{Multi-column header} + +\label{subsec:Headerstyle:-multi-column-case}\index{column variable header!multi-column|(}The +default header style lists the column variable \emph{value} at the +head of each function-value column. Implicitly it corresponds to \verb`chstyle=0`. +\begin{verbatim} + \tabulate[rspec={x,0.2,5},cvar=k,cstep=2,cstop=9] + { \sin kx }[k=3,x=0.2][4*] +\end{verbatim} +$\Longrightarrow$ \tabulate[rspec={x,0.2,5},cvar=k,cstep=2,cstop=9] + { \sin kx}[k=3,x=0.2][4*]\medskip{} + +\noindent Unless \verb`rhead` is explicitly specified, \texttt{numerica-tables} +will automatically insert a row variable header, like $x\:\!\backslash\:\negmedspace k$ +in the example, where the backslash separates row from column variable. +(But see also \ref{subsec:diagbox,-slashbox} below.) \emph{HMF} +contains a multitude of instances of this style; see Tables~9.7, +17.5, 21.1, 24.3, 27.4, etc. for examples. As noted, you can override +the default assignment to \verb`rhead` with your own specification, +but for \verb`chstyle > 0` this is no longer true.\index{rhead@\texttt{rhead}} + +\subsubsection{\texttt{diagbox}, \texttt{slashbox}} + +\label{subsec:diagbox,-slashbox}Rather than having $x\:\!\backslash\:\negmedspace k$ +or something similar automatically inserted, you might be tempted +to use \verb`\diagbox`\index{diagbox@\texttt{\textbackslash diagbox}} +from the \texttt{diagbox} package, or \verb`\backslashbox`\index{backslashbox@\texttt{\textbackslash backslashbox}} +from the earlier \texttt{slashbox}\index{slashbox package@\texttt{slashbox} package} +package, say \verb`rhead=\diagbox{x}{k}`. Because \verb`rhead` wraps +its contents in math delimiters (\verb`$` signs) this causes a \LaTeX{} +error. The solution is to \emph{add} \verb`$` signs: \verb`rhead=$\diagbox{x}{k}$` +or, since $x$ and $k$ should be in math-italic, \verb`rhead=$\diagbox{$x$}{$k$}$`.\index{rhead@\texttt{rhead}} +You might therefore try +\begin{verbatim} + \tabulate[rspec={x,0.2,5},ralign=c, + cvar=k,cstep=2,cstop=9, + rhead=$\diagbox{$x$}{$k$}$] + { \sin kx }[k=3,x=0.2][4*] +\end{verbatim} +but the diagonal box is far too large. One solution is to use the +optional first argument of the \verb`\diagbox` command. In that argument +one can specify an explicit \verb`height` and \verb`width` but I +prefer to work solely with the settings available in \texttt{numerica-tables}. +In that spirit, put \verb`rhsize=-4`, its smallest value. Alas this +also shrinks the displayed size of the variables $x$ and $k$. To +counteract that, explicitly specify \verb`\small$x$` and \verb`\small$k$` +for the mandatory \verb`\diagbox` arguments, the \verb`\small` overriding +the \verb`rhsize` setting to give a presentable result: +\begin{verbatim} + \tabulate[rspec={x,0.2,5},ralign=c,rhsize=-4,cspec={k,2,4}, + rhead=$\diagbox{\small$x$}{\small$k$}$] + { \sin kx }[k=3,x=0.2][4*] +\end{verbatim} +$\Longrightarrow$ \tabulate[rspec={x,0.2,5},ralign=c,rhsize=-4,cspec={k,2,4}, + rhead=$\diagbox{\small$x$}{\small$k$}$] + { \sin kx }[k=3,x=0.2][4*] + +However, the \texttt{booktabs} manual admonishes against the use of +vertical rules and double rules and generally advises to use as few +rules as possible. By adding a line (admittedly \emph{diagonal}, so +only half sinning) the \texttt{diagbox} or \texttt{slashbox} packages +are working in the opposite direction, more suited to tables in the +older `grid' style. In the present document I shall use $x\:\!\backslash\:\negmedspace k$ +and make no further use of either \verb`\diagbox` or \verb`\backslashbox`. + +\subsubsection{Built-in styles: \texttt{chstyle}} + +There\index{chstyle@\texttt{chstyle}|(} are some built-in header +styles, depending on the value of the setting \verb`chstyle`. No +value for this setting corresponds to \verb`chstyle=0`, which results +in column variable values at the heads of function-value columns and +something like $x\:\!\backslash\:\negmedspace k$ at the head of the +row variable column, as previously described. + +\verb`chstyle=1` changes the header of the \emph{first} function-value +column to the form \emph{variable=value}, e.g. $k=3$ in the example +below. This may be apt when a small rounding value is being used and +the resulting columns are narrow. I can find only one real instance +in \emph{HMF}, Table~26.7. Note that the row variable header, inserted +automatically, simplifies in this case to $x$ rather than $x\:\!\backslash\:\negmedspace k$. +\begin{verbatim} + \tabulate[rspec={x,0.2,5},cspec={k,2,3},chstyle=1] + { \sin kx }[k=3,x=0.2][3*] +\end{verbatim} +$\Longrightarrow$ \tabulate[rspec={x,0.2,5},cspec={k,2,3},chstyle=1] + { \sin kx }[k=3,x=0.2][3*]\medskip{} \verb`chstyle=2` changes the header of all function-value columns to the form \emph{variable=value}.\emph{ }In \emph{HMF} examples are -Tables~7.4, 7.9, 10.10, 16.6, etc. Again, the row variable setting -\verb`rhead` no longer needs the \verb`\backslash k` part since -the column variable is now explicitly indicated. +Tables~7.4, 7.9, 10.10, 16.6, etc. Again, the row variable header +is inserted automatically and displays the row variable. \begin{verbatim} - \tabulate[rspec={x,0.2,6}, - cspec={k,2,3},chstyle=2] - { \sin kx }[k=3,x=0][3*] + \tabulate[rspec={x,0.2,5},cspec={k,2,3},chstyle=2] + { \sin kx }[k=3,x=0.2][4*] \end{verbatim} -$\Longrightarrow$ \tabulate[rspec={x,0.2,6}, - cspec={k,2,3},chstyle=2] - { \sin kx }[k=3,x=0][3*]\medskip{} +$\Longrightarrow$ \tabulate[rspec={x,0.2,5},cspec={k,2,3},chstyle=2] + { \sin kx }[k=3,x=0.2][4*]\medskip{} \verb`chstyle=3` fills each column variable header with the expression being tabulated but with the column variable replaced by its respective -values. See \emph{HMF} Tables~5.4, 8.1, 9.1, 19.1, etc. for examples. -Note that if the column variable value is \verb`1`, the \verb`1` -will be displayed: +values. See \emph{HMF} Tables~5.4, 8.1, 9.1, 19.1, etc. for examples. \begin{verbatim} - \tabulate[rspec={x,0.2,6}, - cspec={k,2,3},chstyle=3] - { \sin kx }[k=1,x=0][4*] + \tabulate[rspec={x,0.2,5},cspec={k,2,3},chstyle=3] + { \sin kx }[k=1,x=0.2][4*] \end{verbatim} -$\Longrightarrow$ \tabulate - [rspec={x,0.2,6}, - cspec={k,2,3},chstyle=3] - { \sin kx }[k=1,x=0][4*]\medskip{} - -In this last example you may not want the \verb`1` displayed. To -achieve that effect put \verb`chstyle=4`. This results in a header -as for \verb`chstyle=3` but if the column variable takes the value -\verb`1`, it has an empty replacement: -\begin{verbatim} - \tabulate[rspec={x,0.2,6}, - cspec={k,2,3},chstyle=4] - { \sin kx }[k=1,x=0][4*] -\end{verbatim} -$\Longrightarrow$ \tabulate - [rspec={x,0.2,6}, - cspec={k,2,3},chstyle=4] - { \sin kx }[k=1,x=0][4*]\index{column variable header!multi-column case!chstyle@\texttt{chstyle}|)}\index{chstyle@\texttt{chstyle}|)} +$\Longrightarrow$ \tabulate[rspec={x,0.2,5},cspec={k,2,3},chstyle=3] + { \sin kx }[k=1,x=0.2][4*]\medskip{} + +Notable here is that the column variable takes the value $1$, and +the $1$ is displayed ($\sin1x$) where it would normally be suppressed. +A similar situation can arise when the column variable takes the value +$0$. The legacy setting \verb`chstyle=4` will, in the present instance, +display $\sin1x$ as $\sin x$ but is deprecated \textendash{} given +the variety of ways that $1$ (and $0$) can appear in formulas, it +seems more straightforward in to set \verb`chstyle=0` (or omit it) +and \ldots{} \subsubsection{User-defined header: \texttt{chead}} -\label{subsec:chead}\index{chead@\texttt{chead}|(}If the function -in the last example were, for instance, $k+\sin kx$, then neither -replacing $k$ by \verb`1` nor an empty replacement would be appropriate. -In that case the only recourse is to use the \verb`chead` key. Users -can assign whatever value they like to \verb`chead`. The assignment -must contain the correct number of tab characters (\verb`&`) for -the \emph{column variable columns only}. It is a header only to the -function-value columns. The user will need to insert \verb`$` signs -or other math delimiters as appropriate. This differs from the practice -for \verb`rhead`, but \verb`chead` is potentially far more complicated. -Thus for $k+\sin kx$, -\begin{verbatim} - \tabulate[rspec={x,0.2,6},cspec={k,2,3}, - chead=$1+\sin x$&$3+\sin3x$&$5+\sin 5x$] - { k+\sin kx }[k=1,x=0][4*] +\ldots{} form \verb`chead`\index{chead@\texttt{chead}} oneself, with +the relevant math delimiters (\verb`$`) and tabbing ampersands (\verb`&`). +(Always, to use \verb`chead`, \verb`chstyle` must be omitted or +set to zero.) In the example, +\begin{verbatim} + chead=$\sin x$&$\sin3x$&$\sin5x$ \end{verbatim} -$\Longrightarrow$ \tabulate - [rspec={x,0.2,6}, - cspec={k,2,3}, - chead=$1+\sin x$&$3+\sin3x$&$5+\sin 5x$] - { k+\sin kx }[k=1,x=0][4*]\medskip{} +would do. It is a header for the function-value columns; a header +for the row variable column is not included. Note that there is also +no end of row mark which is inserted automatically. -\noindent Non-empty content for the \verb`chead` key overrides any -\verb`chstyle` setting and, in the case of a table with only a single -function-value column, overrides any \verb`ctitle` setting.\index{chead@\texttt{chead}|)} +Another way to tackle the particular issue in the present case is +to form a multi-function table (see \ref{sec:Multiple-function-tables}) +of, say, $\sin x$, $\sin3x$, $\sin5x$. \subsubsection{Alignment: \texttt{calign}} -The\index{calign@\texttt{calign}|(} function-value columns are aligned -right, \verb`calign=r`, by default. Also available are \verb`calign=c` -for centred alignment and \verb`calign=l` (lowercase L) for left -alignment. Using centred alignment with {\ttfamily\verb`chstyle=2`} -in a previous example table gives -\begin{verbatim} - \tabulate[rspec={x,0.2,6},ralign=c, - cspec={k,2,3},chstyle=2,calign=c] - { \sin kx }[k=3,x=0][*] -\end{verbatim} -$\Longrightarrow$ \tabulate - [rspec={x,0.2,6},rhead=x,ralign=c, - cspec={k,2,3},chstyle=2,calign=c] - { \sin kx }[k=3,x=0][*]\medskip{} - -\noindent The first column of function values looks better, but the -minus signs spoil the effect in the others. Handling signs in tables -is discussed below; see \ref{subsec:Signs}\index{calign@\texttt{calign}|)}. +\label{subsec:Alignment:-calign}\index{calign@\texttt{calign}}By +default the function-value columns are aligned right, \verb`calign=r`. +Also available are \verb`calign=c` for centred alignment and \verb`calign=l` +(lowercase L) for left alignment. A table containing both positive +and negative values is best set with right alignment and number padding +(\verb`*` in the trailing optional argument) to avoid the misalignment +of digits in columns caused by the presence of minus signs. (Handling +signs in tables is discussed later; see \ref{subsec:Signs}.) Varying +numbers of digits \emph{before} the decimal point may be best handled +with the t-notation of \ref{subsec:t-option}. Examples where a centred +alignment is helpful, centring the header above uniform columns of +figures (same number of digits before and after the decimal point) +have already been given; see \ref{subsec:rfracFraction-form-rvar} +and \ref{subsec:RValignment:ralign}. \subsubsection{Nudging header entries: \texttt{chnudge}} -\label{subsec:Nudgingtheheaders:-chnudge}In\index{chnudge@\texttt{chnudge}|(} -left or right alignment it is possible to nudge the column headers -in the opposite direction by giving a numerical value to the the key -\verb`chnudge`. The header is moved by the specified number of mu -(math units; 18 to a quad). Note that the `mu' does not need to -be written. {\ttfamily\verb`numerica-tables`} provides -that. In the next example I have chosen \verb`chnudge=12` to nudge -the column headers to the left to give a centred effect to the header -but leaving the function values with their (potentially) awkward minus -signs right aligned. -\begin{verbatim} - \tabulate[rspec={x,0.2,6},ralign=c, - cspec={k,2,3},chstyle=2,chnudge=12] - { \sin kx }[k=3,x=0][*] +\label{subsec:Nudgingtheheaders:-chnudge}\index{chnudge@\texttt{chnudge}|(}As +with the row variable header, it is possible to nudge the column headers +to left or right. A positive nudge value shifts the header in the +\emph{opposite} sense to the alignment by the specified number of +mu (math units; 18 to a quad), to the left in a right alignment and +to the right otherwise. In version 3.2 of \texttt{numerica-tables, +t}he key \verb`chnudge` is a comma list of nudge values (as against +a single value in earlier versions). As with \verb`rhnudge`, only +numbers should be supplied; \texttt{numerica-tables} inserts the unit +(\verb`mu`). Often a single value is all that is required. For instance, +in the next example \verb`chnudge=9` suffices to nudge the column +headers to the left but leave the function values (with their potentially +awkward minus signs) right aligned. +\begin{verbatim} + \tabulate[rspec={x,0.2,5},ralign=c, + cspec={k,2,3},chstyle=2,chnudge=9] + { \sin kx }[k=3,x=0.2][*] \end{verbatim} $\Longrightarrow$ \tabulate - [rspec={x,0.2,6},ralign=c, - cspec={k,2,3},chstyle=2,chnudge=12] - { \sin kx }[k=3,x=0][*]\medskip{} - -The \verb`chnudge` value does not need to be positive. Negative nudges -can be useful when a column header is \emph{longer} than the rounded -function values. In the second example below, I've reduced the rounding -value for function values to $3$, and chosen an initial $k$ value -of $100$ to ensure this circumstance. To centre the column headers -I have used \verb`chnudge=-9`. + [rspec={x,0.2,5},ralign=c, + cspec={k,2,3},chstyle=2,chnudge=9] + { \sin kx }[k=3,x=0.2][*]\medskip{} + +But if the values of $k$ in this example had different numbers of +digits, no single \verb`chnudge`\index{chnudge@\texttt{chnudge}!comma list of values} +value would do. In that case give \verb`chnudge` a comma-list of +values, potentially one for each function-value column. If the comma +list has fewer entries than the number of columns, the last entry +is used for all `left over' columns. For instance, in the following +example, \verb`chnudge` is given three values, the third of which +is also used for the fourth function-value column: \begin{verbatim} - \tabulate[rspec={x,0.2,6},ralign=c, - cspec={k,2,3},chstyle=2,chnudge=-9] - { \sin kx }[k=100,x=0][3*] + \tabulate[rspec={x,0.2,5},ralign=c,cspec={k,50,3}, + chstyle=2,chnudge={13.5,9,4.5}] + { \cos kx }[k=1,x=0.2][*] \end{verbatim} -$\Longrightarrow$ \tabulate - [rspec={x,0.2,6},ralign=c, - cspec={k,2,3},chstyle=2,chnudge=-9] - { \sin kx }[k=100,x=0][3*]\index{chnudge@\texttt{chnudge}|)} - -\subsubsection{Rounding: \texttt{chround}} - -In\index{chround@\texttt{chround}|(}\index{rounding value!header row|(} -the examples so far, the column variable has incremented in integer -steps. The default rounding value for the column variable is $0$ -(for the row variable it is $1$), so if it increments by some non-integer -amount, the result will be confusing \textendash{} if $k$ incremented -by, say, $0.25$, starting from $k=3$, then the next column would -also have a header $k=3$ (since $3.25$ with a rounding value $0$ -rounds to $3$). The appropriate key to remedy this state of affairs -is {\ttfamily\verb`chround`}. For a step size of $0.25$ -the appropriate setting is {\ttfamily\verb`chround=2`}. -\begin{verbatim} - \tabulate[rspec={x,0.2,6},ralign=c, - cspec={k,0.25,3},chstyle=2,chround=2] - { \sin kx }[k=3,x=0][*] +$\Longrightarrow$ \tabulate[rspec={x,0.2,5},ralign=c,cspec={k,50,4}, + chstyle=2,chnudge={13.5,9,4.5}] + { \cos kx }[k=1,x=0.2][*]\medskip{} + +\emph{Negative} nudges can be useful when a column header is longer +than the displayed function values. Just for the pleasure of providing +an instance where a \emph{zero} step value\index{cstep@\texttt{cstep}!zero value} +is useful, the following small table allows an immediate comparison +of a negative nudge with no nudge. I have adjusted the separation +of the columns with \verb`\tabcolsep`\index{tabcolsep@\texttt{\textbackslash tabcolsep}} +to provide a more adequate separation of the headers: +\begin{verbatim} + \setlength\tabcolsep{9pt} + \tabulate[rspec={n,100,5},ralign=c,rround=0, + cspec={k,0,2},chstyle=3,chnudge={-21,0}] + { (1+k/n)^n }[k=1,n=100][3*] + \setlength\tabcolsep{6pt} \end{verbatim} -$\Longrightarrow$ \tabulate - [rspec={x,0.2,6},rhead=x,ralign=c, - cspec={k,0.25,3},chstyle=2,chround=2] - { \sin kx }[k=3,x=0][*]\index{column variable header|)}\index{rounding value!header row|)}\index{column variable header!multi-column case|)}\index{chround@\texttt{chround}|)}\index{formatting!column variable header} +$\Longrightarrow$ \setlength\tabcolsep{9pt} + \tabulate[rspec={n,100,5},ralign=c,rround=0, + cspec={k,0,2},chstyle=3,chnudge={-21,0}] + { (1+k/n)^n }[k=1,n=100][3*] + \setlength\tabcolsep{6pt}\index{chnudge@\texttt{chnudge}|)} + +\subsubsection{Math style: \texttt{chmath}} + +The \verb`chmath` setting is a comma list of the values \verb`s`, +\verb`t`, or \verb`d` presenting the header of the corresponding +function-value column in either scriptstyle, textstyle or displaystyle +respectively. The setting is initialized to \verb`t`. If there are +more function-value columns in the table than entries in \verb`chmath` +the last value in \verb`chmath` is used for the extra columns. See +the first table in \ref{sec:Multiple-function-tables} (on multi-function +tables) for an example of this setting's use. + +\subsubsection{Font size: \texttt{chsize}} + +\label{subsec:chsize}The font size of the header row entries can +be changed with the setting \verb`chsize`\index{chsize@\texttt{chsize}} +which is a comma list of integer values, each integer in the range +$-4$ to $5$ corresponding to a \LaTeX{} font size command according +to the scheme + +\begin{tabular}{rlcrl} +$-4$ & \verb`\tiny` & & $1$ & \verb`\large`\tabularnewline +$-3$ & \verb`\scriptsize` & & $2$ & \verb`\Large`\tabularnewline +$-2$ & \verb`\footnotesize` & & $3$ & \verb`\LARGE`\tabularnewline +$-1$ & \verb`\small` & & $4$ & \verb`\huge`\tabularnewline +$0$ & \verb`\normalsize` & & $5$ & \verb`\Huge`\tabularnewline +\end{tabular}\medskip{} + +\noindent Should there be more columns in the table than entries in +\verb`chsize`, then the last value in \verb`chsize` is used for +the extra columns. In the following example, the font size has been +tweaked by means of the setting \verb`chsize={1,-1,1}` to bring the +character size of the column headings into greater conformity: +\begin{verbatim} + \tabulate[ff,rspec={x,0.5,4},chsize={1,-1,1}] + { \frac{ e^{2x}-1}{ e^{2x}+1},\tanh x, + \frac{ \sinh x}{\cosh x}} [x=0.5] [4*] +\end{verbatim} +$\Longrightarrow$ \tabulate[ff,rspec={x,0.5,4},chsize={1,-1,1}] + { \frac{ e^{2x}-1}{ e^{2x}+1}, \tanh x , + \frac{ \sinh x}{\cosh x}} [x=0.5] [4*]\index{column variable header!formatting|)}\index{column variable header!multi-column|)} \section{Multiple functions in a single table} \label{sec:Multiple-function-tables}As\index{multi-function tables|(} -already noted in \ref{subsec:Adjoining-tables}, tabulating more -than one function at a time is too common a need to have to resort -to a fudge like adjoining tables. The systematic way of handling this -task is to enter the functions in the main argument of a \verb`\tabulate` -command separated by a specified mark then alert \verb`\tabulate` -that this has happened with the \verb`ff`\index{ff@\texttt{ff}} -key in the settings option. - -By default the multi-function delimiter\index{multi-function tables!function delimiter} -is the comma if the decimal point is a dot (or period), or the semicolon\index{semicolon and decimal comma} -if the decimal point is a comma\index{decimal comma} (\texttt{numerica} -loaded with the \verb`comma` package option). If you are content -with the default delimiter then it suffices to enter \verb`ff` in -the settings option. If not, then enter \verb`ff=<mark>` there. For -example \verb`ff=|` would make the `pipe' character \verb`|` the -multi-formula delimiter. If the \verb`ff` key is overlooked then -multiple formulas in the main argument of \verb`\tabulate` will almost -certainly cause a \LaTeX{} error. - -In the following example, using the default comma, note first the -\verb`ff` setting, and then the \verb`o` setting indicating that -the arguments of the trig functions are in degrees and (just to amuse -myself) I have put the row variable column on both sides with the -\verb`rpos=3`\index{rpos@\texttt{rpos}} setting: -\begin{verbatim} - \tabulate[ff,o,rpos=3,rround=0, - rvar=\theta,rstep=10,rstop=90] - { \sin \theta, \cos \theta }[\theta=0][*] -\end{verbatim} -$\Longrightarrow$ \tabulate[ff,o,rpos=3,rround=0, - rvar=\theta,rstep=10,rstop=90] - { \sin \theta, \cos \theta }[\theta=0][*]\medskip{} - -The tables suggest a space saving possibility: since $\sin$ and $\cos$ -are complementary functions\index{complementary functions} ($\cos\theta=\sin(90-\theta)$), -the values in the bottom half of the table duplicate values in the -top half, only with the columns reversed. This is the reason for the -space saving \verb`rpos=4`\index{rpos@\texttt{rpos}} setting (\ref{subsec:Second-row-var-col}) -which enables complementary functions to be tabulated in `half tables' -(\emph{HMF} Tables 4.10\textendash 4.12 are examples for the trigonometric -functions). - -In the next example, the row variable column is again duplicated, -left and right, with the \verb`rpos=3` setting, and a centred alignment -is used for the function values. Because $\sin$ and $\cos$ are complementary, -I have stopped the table at \verb`rstop=45` since continuing to \verb`90` -would simply give a mirror reflection of the preceding values. To -accommodate the use of the comma in \verb`\max` and \verb`\min`\index{n-ary@$n$-ary functions} -I have stipulated \verb`ff=|`\index{ff@\texttt{ff}}. Visually, the -table has an unsatisfactory, sprawling appearance \textendash{} which -directs attention to how tables might be titled (\ref{subsec:Title:-ctitle-setting})\index{rpos@\texttt{rpos}}: -\begin{verbatim} - \tabulate[ff=|,o,rpos=3,rround=0, - rvar=\theta,rstep=10,rstop=45,calign=c] - { \max(\sin \theta,\cos \theta)| - \min(\sin \theta,\cos \theta) } - [\theta=0][*] -\end{verbatim} -$\Longrightarrow$ \tabulate[ff=|,o,rpos=3,rround=0, - rvar=\theta,rstep=10,rstop=45,calign=c] - { \max(\sin \theta,\cos \theta)| - \min(\sin \theta,\cos \theta) } - [\theta=0][*] \index{multi-function tables|)} +noted in \ref{subsec:Adjoining-tables}, using adjoining tables in +order to tabulate more than one function at a time is `clunky'. +Much better is to enter the functions in the main argument of a \verb`\tabulate` +command separated by a specified mark, then alert \verb`\tabulate` +that this has happened by setting \texttt{numerica}'s \verb`ff`\index{ff@\texttt{ff}} +key. + +The default multi-function delimiter\index{multi-function tables!function delimiter} +is the comma if the decimal point is a dot (period), or the semicolon\index{decimal comma!semicolon use} +if it is a comma (\texttt{numerica} loaded with the \verb`comma` +package option\index{comma package option@\texttt{comma} package option}). +With the default delimiter it suffices to enter \verb`ff` in the +settings option; otherwise enter \verb`ff=<mark>` there. For example +\verb`ff=|` makes the `pipe' character the multi-formula delimiter. +If the \verb`ff` key is overlooked then multiple formulas in the +main argument will almost certainly cause a \LaTeX{} error. + +The following example (of the so-called `Einstein functions') illustrates +both a multi-function table using the default comma as separator, +and the use of \verb`chmath`\index{chmath@\texttt{chmath}} to shrink +the function in the last column. If not shrunk, $\ln(1-e^{-x})$ appears +too large compared to the symbols in the fractions in the middle columns: +\begin{verbatim} + \tabulate[ff,rspec={x,0.3,4},rround=2,rhnudge=9, + chnudge={0,9,0},chmath={t,t,s}] + { \frac{x^2e^x}{(e^x-1)^2}, \frac{x}{e^x-1}, + \ln(1-e^{-x}) }[x=0.15][5*] +\end{verbatim} +$\Longrightarrow$ \tabulate[ff,rspec={x,0.3,4},rround=2,rhnudge=9, + chnudge={0,9,0},chmath={t,t,s}] + { \frac{x^2e^x}{(e^x-1)^2}, \frac{x}{e^x-1}, + \ln(1-e^{-x}) }[x=0.15][5*] \medskip{} + +In the next example I transpose this table, not because it is a good +example of a table that might benefit from this, but because it illustrates +a problem that can arise when a multi-function table is transposed. +On transposition the current header row becomes the row variable column: +\index{transpose@\texttt{transpose}!examples of use} +\begin{verbatim} + \tabulate[ff,rspec={x,0.3,4},rround=2,ralign=l, + chnudge={0,9},rules=hB,chstyle=1,transpose] + { \frac{x^2e^x}{(e^x-1)^2}, \frac{x}{e^x-1}, + \ln(1-e^{-x}) }[x=0.15][5*] +\end{verbatim} +$\Longrightarrow$ \tabulate[ff,rspec={x,0.3,4},rround=2,ralign=l, + chnudge={0,9},rules=hB,chstyle=1,transpose] + { \frac{x^2e^x}{(e^x-1)^2}, \frac{x}{e^x-1}, + \ln(1-e^{-x}) }[x=0.15][5*] \medskip{} + +\noindent What is immediately noticeable is the disparity in size +of the characters forming $\ln(1-e^{-x})$ compared to those in the +fractions above it. This was the reason for the \verb`chmath={t,t,s}` +setting in the original table, but \verb`rmath`\index{rmath@\texttt{rmath}} +is a single value applying to the \emph{whole} row variable column, +so that solution is not available. Two possibilities come to mind. +One is to force the function being tabulated into scriptstyle by +tabulating +\begin{verbatim} + \vphantom{\frac11}\scriptstyle\ln(1-e^{-x}) +\end{verbatim} +(The phantom ensures the spacing between the rows is the same.) This +new function produces exactly the same values as the previous one +did. The other possibility is to set \verb`rmath=d`, forcing all +members of the row variable column, in particular the fractions, into +displaystyle. With this setting the \verb`\scriptstyle` can be omitted +(but the phantom retained). + +Another example, now using \verb`ff=|` as the function separator, +places the row variable column on both sides of the table (\verb`rpos=3`)\index{rpos@\texttt{rpos}} +and uses the \verb`o` setting (see \texttt{numerica.pdf}) to indicate +that arguments of the trig functions are in degrees: +\begin{verbatim} + \tabulate[ff=|,o,rpos=3,rround=0,chnudge=9, + rvar=\theta,rstep=15,rstop=90] + { \sin \theta | \cos \theta }[\theta=0][*] +\end{verbatim} +$\Longrightarrow$ \tabulate[ff=|,o,rpos=3,rround=0,chnudge=9, + rvar=\theta,rstep=15,rstop=90] + { \sin \theta |\cos \theta }[\theta=0][*]\medskip{} -\section{Whole-of-table formatting} +The table suggests a space saving possibility: since $\sin$ and $\cos$ +are complementary functions\index{complementary functions} ($\sin(90-\theta)=\cos\theta$), +values in the bottom half of the table duplicate values in the top +half, only with the columns reversed. This is the reason for the \verb`rpos=4`\index{rpos@\texttt{rpos}} +setting discussed in \ref{subsec:Second-row-var-col}, which enables +complementary functions to be tabulated in `half tables'.\index{multi-function tables|)} -\label{sec:Whole-of-table-formatting}There\index{formatting!title, subtitle, footer|(} -are a number of settings pertaining to the appearance of the table -as a whole, things like the position of the row variable column, division -of the function values into blocks to aid readability, the presence -of horizontal rules or of a collective column title or of a footer -row. I discuss these here. +\section{Whole-of-table formatting} -\begin{table} -\centering{}\caption{\protect\label{tab:Table-formatting-settings}Table formatting} +\label{sec:Whole-of-table-formatting} +\begin{table}[t] +\centering +\centering{}\caption{\label{tab:Table-formatting-settings}\label{tab:Table-formatting}Table +formatting} \begin{center} \begin{tabular}{ll>{\raggedright}p{4cm}l} \toprule {\small key} & {\small type} & {\small meaning} & {\small initial}\tabularnewline \midrule -{\small\texttt{ctitle}} & {\small token(s)} & {\small collective title for function-value columns} & \tabularnewline - & {\small token(s)} & {\small subtitle row for} {\small function- value cols} & \tabularnewline -{\small\texttt{header}} & {\small int (}{\small\texttt{0/1}}{\small )} & {\small suppress/show header row} & {\small\texttt{1}}\tabularnewline +{\small\texttt{ctitle}} & {\small token(s)} & {\small collective title for columns} & \tabularnewline +{\small\texttt{csubttl}} & {\small token(s)} & {\small subtitle row for} {\small function- value cols} & \tabularnewline +{\small\texttt{calign}} & {\small char(}{\small\texttt{r}}{\small /}{\small\texttt{c}}{\small /}{\small\texttt{l}}{\small )} & {\small column alignment} & {\small\texttt{r}}\tabularnewline +{\small\texttt{headless}} & & {\small suppress header row} & \tabularnewline {\small\texttt{foot}} & {\small token(s)} & {\small table-wide footer row} & \tabularnewline {\small\texttt{rules}} & {\small char(s)} & {\small horizontal rule spec.} & {\small\texttt{ThB}}\tabularnewline +{\small\texttt{norules}} & & {\small cancel all rules} & \tabularnewline {\small\texttt{rpos}} & {\small int (}{\small\texttt{0}}{\small\ldots}{\small\texttt{4}}{\small )} & {\small row variable col. position(s)} & {\small\texttt{1}}\tabularnewline {\small\texttt{rbloc}} & {\small integer comma list} & {\small row block specification} & \tabularnewline +{\small\texttt{rblocsep}} & {\small length} & {\small extra space between row blocks} & {\small\texttt{1ex}}\tabularnewline +{\small\texttt{transpose}} & & {\small show funct. vals in rows} & \tabularnewline {\small\texttt{valign}} & {\small char (}{\small\texttt{t}}/{\small\texttt{m}}/{\small\texttt{b}}{\small )} & {\small vertical alignment of table relative to text baseline} & {\small\texttt{m}}\tabularnewline \bottomrule \end{tabular} \par\end{center} \end{table} - +There\index{formatting!title, subtitle, footer|(} are a number of +settings that affect the appearance of the table as a whole, things +like the position of the row variable column, the grouping of function +values in a column into blocks to aid readability, the presence of +horizontal rules, the use of a collective column title, or of a footer +row, or display of the table `horizontally' in rows rather than +columns. I discuss these here (Table~\ref{tab:Table-formatting}). \subsection{Title for function-value columns: \texttt{ctitle}} \label{subsec:Title:-ctitle-setting}\index{ctitle@\texttt{ctitle}|(}The\index{title row|(} -function-value columns have individual headers, formatted in the various -ways provided by the settings discussed in previous sections, but -it can also be helpful to have a collective title for these columns. -We saw the need in the last example. The need is met with the \verb`ctitle` -key. This can be set to whatever you like (e.g. \verb`ctitle=\text{Fred}`) -but, to more purpose, I shall use the setting to improve the look -of the table in the last example. Note that the content of the \verb`ctitle` -key is enclosed in braces. This is to shield the commas there from -being misinterpreted as item separators in the settings option. For -an analogous reason I have specified the semicolon (\verb`ff=;`)\index{ff@\texttt{ff}} -as the function separator in the main argument:\index{rpos@\texttt{rpos}}\index{n-ary@$n$-ary functions} -\begin{verbatim} - \tabulate[ff=;,o,rpos=3,rround=0, - rvar=\theta,rstep=10,rstop=45, - ctitle={\max,\min(\sin\theta,\cos\theta)}, - chead=max\hphantom{00} & min\hphantom{00}] - { \max(\sin \theta,\cos \theta); - \min(\sin \theta,\cos \theta) } [\theta=0][*] -\end{verbatim} -$\Longrightarrow$ \tabulate[ff=;,o,rpos=3,rround=0, - rvar=\theta,rstep=10,rstop=45, - ctitle={\max,\min(\sin\theta,\cos\theta)}, - chead=max\hphantom{00} & min\hphantom{00}] - { \max(\sin \theta,\cos \theta); - \min(\sin \theta,\cos \theta) } - [\theta=0][*]\medskip{} - -\noindent Now it is clearer what is being tabulated and the wide separation -of the function-value columns is reduced. - -There are two built-in values for the \verb`ctitle` key: \verb`ctitle=*`, +function-value columns have individual headings, formatted in the +various ways provided by the settings already discussed, but it can +also be helpful to have a collective title for these columns. For +instance our table of Einstein functions in \ref{sec:Multiple-function-tables} +would have benefited from this. The need is met with the \verb`ctitle` +key. This can be set to whatever you like (e.g. \verb`ctitle=Fred`), +taking care to shield commas with braces. By default, the title is +set between math delimiters (\verb`$` signs). For that reason in +the example I have placed it inside a \verb`\text` command: +\begin{verbatim} + \tabulate[ff,rspec={x,0.15,6},rround=2,rhnudge=9, + chnudge={0,9,0},chmath={t,t,s}, + ctitle=\text{Einstein functions}] + { \frac{x^2e^x}{(e^x-1)^2}, \frac{x}{e^x-1}, + \ln(1-e^{-x}) }[x=0.15][5*] +\end{verbatim} +$\Longrightarrow$ \tabulate[ff,rspec={x,.15,6},rround=2,rhnudge=9, + chnudge={0,9,0},chmath={t,t,s}, + ctitle=\text{Einstein functions}] + { \frac{x^2e^x}{(e^x-1)^2}, + \frac{x}{e^x-1},\ln(1-e^{-x}) }[x=0.15][5*] + +\medskip{} + +There are two built-in values for the \verb`ctitle` key: \verb`ctitle=*`,\index{ctitle@\texttt{ctitle}!{*},{*}{*} settings} which forms the title from the function being tabulated, and \verb`ctitle=**` which uses the function and vv-list for the title. Obviously these, particularly the latter, could easily become too long to be useful. -An example of \verb`ctitle=**` is presented below in \ref{subsec:Rules:-rules-setting}. -In the following example, inclusion of the vv-list in the title is -pointless since the variables there form the row and column variables -of the table; \verb`ctitle=*` is all that is needed: +An example of \verb`ctitle=**` is presented later in \ref{subsec:Rules:-rules-setting}, +but inclusion of the vv-list in the title in the next example would +be pointless since the row and column variables of the table are the +only members of the vv-list; \verb`ctitle=*` suffices: \begin{verbatim} \tabulate[rspec={n,1,5},rround=0, cspec={m,1,4},chstyle=2,ctitle=*] @@ -1289,266 +1669,351 @@ $\Longrightarrow$ \tabulate[rspec={n,1,5},rround=0, \subsection{Between header \& title: \texttt{csubttl}} -Some\index{csubttl@\texttt{csubttl}}\index{title row!subtitle row} -tables need to fit more header or title material into their rows than -can be comfortably accommodated in either row alone. For examples, -see \emph{HMF} Tables 7.9 (error function for complex arguments), -17.7 (Jacobian zeta function), 21.1 (eigenvalues of spheroidal wave -functions), and 26.7 (probability integrals). One way of handling -this problem is to resort to more complicated environments in header -and title rows. Another, more direct way, is to insert a row between -the header and title rows. - -I have chosen \verb`csubttl`, a contraction of `column variable -subtitle' for the key name. (In version 2 of \texttt{numerica-tables} -the name \verb`cmidrow`\index{cmidrow@\texttt{cmidrow }|see{\texttt{csubttl}}} -was used; that will still work but \verb`csubttl` gives a clearer -indication of what the key does.) The initial `c' emphasizes that -like \verb`chead` and \verb`ctitle` it is constrained to the span -of the column variable (or function-value) columns only. The content -of \verb`csubttl` is entirely the responsibility of the user, including -insertion of the necessary number of tab characters, \verb`&`, and -any math delimiters required. -\begin{verbatim} - \tabulate[ff,rspec={x,1,7},rround=0,chnudge=18, +\label{subsec:subtitle-row}Some\index{csubttl@\texttt{csubttl}}\index{title row!subtitle row} +tables need more header or title material than can be comfortably +accommodated in either row alone. For examples, see \emph{HMF} Tables +7.9, 17.7, 21.1, and 26.7. One way of handling this problem is to +resort to more complicated environments in header and title rows. +Another, more direct way, is to insert a row between the header and +title rows by means of the key \verb`csubttl`, a contraction of `c(olumn +variable) subtitle'. (In version 2 of \texttt{numerica-tables} the +name \verb`cmidrow`\index{cmidrow@\texttt{cmidrow }|see{\texttt{csubttl}}} +was used; that is still available, but deprecated.) Like \verb`chead` +and \verb`ctitle`, \verb`csubttl` is limited to the span of the +column variable (or function-value) columns only. The content of \verb`csubttl` +is entirely up to the user, including insertion of sufficient \verb`&` +characters and math delimiters (if required). + +An example where the subtitle row serves an explanatory role is shown +in the next table. I have used \verb`\sfrac` from the \texttt{xfrac} +package for neater fractions: +\begin{verbatim} + \tabulate[ff,rspec={x,1,6,0},chnudge={22.5,18}, ctitle=\text{Hyperbolic functions}, - csubttl=\multicolumn{3}{c}{$\sinh x=\tfrac12 - (e^x-e^{-x}),\ \cosh x=\tfrac12(e^x+e^{-x})$}] - { \tfrac12e^x, \sinh x, \cosh x } - [{x}=0][8*] + csubttl=\multicolumn{3}{c}{\small$\sinh x=\sfrac12 + (e^x-e^{-x}),\ \cosh x=\sfrac12(e^x+e^{-x})$}] + { \sfrac12\,e^x, \sinh x, \cosh x } [{x}=0][8*] \end{verbatim} -$\Longrightarrow$ \tabulate[ff,rspec={x,1,7},rround=0,chnudge=18, +$\Longrightarrow$ \tabulate[ff,rspec={x,1,6,0},chnudge={22.5,18}, ctitle=\text{Hyperbolic functions}, - csubttl=\multicolumn{3}{c}{$\sinh x=\tfrac12 - (e^x-e^{-x}),\ \cosh x=\tfrac12(e^x+e^{-x})$}] - { \tfrac12e^x, \sinh x, \cosh x } - [{x}=0][8*]\index{ctitle@\texttt{ctitle}|)}\index{title row|)} + csubttl=\multicolumn{3}{c}{\small$\sinh x=\sfrac12 + (e^x-e^{-x}),\ \cosh x=\sfrac12(e^x+e^{-x})$}] + { \sfrac12\,e^x, \sinh x, \cosh x } [{x}=0][8*]\index{ctitle@\texttt{ctitle}|)}\index{title row|)} +\begin{verbatim} + +\end{verbatim} \subsection{Suppress/show header row} -\label{subsec:Header-row-suppress}Usually\index{headless@\texttt{headless}} +\label{subsec:Header-row-suppress}By default\index{headless@\texttt{headless}} the header row in a table is shown. It carries essential information -as to the table's contents. However, there are occasions when it should -be suppressed. An example where this is appropriate is given in \ref{subsec:rdata-rfile-rverb} +as to the table's contents, but there are occasions when it should +be suppressed. An example occurs in \ref{subsec:rdata-rfile-rverb} where a table listing fractions of $\pi$ and their values is shown. -As in that example, to suppress the header enter the setting \verb`headless=1`. -(Otherwise tables default to \verb`headless=0`.) - -\subsection{Footer row: \texttt{foot} } - -Some\index{foot@\texttt{foot}}\index{footer row} tables have a footer -row and \verb`numerica-tables` allows such a row to be inserted, -but its entire content, with one exception, is the responsibility -of the user, including insertion of the necessary number of tab characters -\verb`&`. This will usually be $1$ less than the total number of -columns (including row variable columns) in the table \textendash{} -or some adjustment thereof if you use \verb`\multicolumn`. (\emph{HMF} -uses the footer mainly for cryptic descriptions of the accuracy and -needs of interpolation methods.) +The header there serves no purpose. To suppress it, use the \verb`headless`\footnote{There was a mix-up in the documentation of version 3.1 of \texttt{numerica-tables} +between what was entered in the table of whole-of-table settings and +what was described in this section.} setting. \index{norules@\texttt{norules}} +\begin{verbatim} + \def\mydata{\sfrac14\,\pi,\sfrac13\,\pi,\sfrac12\,\pi, + \sfrac23\,\pi,\sfrac34\,\pi,\pi} + \tabulate[rdata=\mydata,rverb=1,rvar=k,headless, + norules]{ k }[*] +\end{verbatim} +$\Longrightarrow$ \def\mydata{\sfrac14\,\pi,\sfrac13\,\pi,\sfrac12\,\pi, + \sfrac23\,\pi,\sfrac34\,\pi,\pi} + \tabulate[rdata=\mydata,rverb=1,rvar=k, headless, + norules]{ k }[*] + +\subsection{Footer row: \texttt{foot}} + +\label{subsec:Footer-row:-foot}Some\index{foot@\texttt{foot}}\index{footer row} +tables have a footer row and \verb`numerica-tables` allows such a +row to be inserted, but its entire content, with two exceptions, is +the responsibility of the user, including insertion of the necessary +number of tab characters \verb`&`. This will usually be $1$ less +than the total number of columns (including row variable columns) +in the table \textendash{} or some adjustment thereof if you use \verb`\multicolumn`. +(\emph{HMF} uses the footer mainly for cryptic descriptions of the +accuracy and needs of interpolation methods.) You can put into the footer what you wish with the setting \verb`foot=<tokens>`. -The one exception is when \verb`foot=*`\index{foot@\texttt{foot}}. -This will fill the footer with the header, but with the items of the -header presented in \emph{reversed} order \textendash{} the last item -first, and so on. This is useful for tabulating complementary functions -like the sine and cosine or, more generally, $f(x)$ and $g(x)$ where -$g(x)=f(k-x)$ for some constant $k$. Values for the complementary +There are two exceptions: +\begin{itemize} +\item when \verb`foot=''`\index{foot@\texttt{foot}} (two single quote +marks), suggesting ditto marks, the footer row is set equal to the +header row with one change, the backslash in row variable headers +of the form $n\:\!\backslash\:\!m$ are converted to forward slashes, +e.g. $n\:\!/\:\!m$; +\item when \verb`foot=*`\index{foot@\texttt{foot}}, the footer is set +equal to the header in \emph{reversed} order \textendash{} the last +item first, and so on. This is useful for tabulating complementary +functions like sine and cosine or, more generally, $f(x)$ and $g(x)$ +where $g(x)=f(k-x)$ for some constant $k$. Values for the complementary function are read from the bottom up and require a reversed row variable -column on the right of the table; see \ref{subsec:Second-row-var-col}. - -\noindent{}% -\noindent\begin{minipage}[t]{1\columnwidth}% -\begin{shaded}% +column on the right of the table; see the third example in \ref{subsec:Second-row-var-col}. +\end{itemize} -\subsubsection{Footer functions} +\paragraph{Footer functions} -In\index{footer functions} previous versions of \texttt{numerica-tables} -it was possible to perform certain simple operations on columns \textendash{} -calculate the sum, the average and maximum and minimum values. This -is no longer so in version 3. Not only does it seem tangential to -the primary function of the \verb`\tabulate` command but it was also -acutely dependent on the format of the numbers being operated on. -A simple change in the number-format option could cause a \LaTeX{} -error.\end{shaded}% -\end{minipage}\index{formatting!title, subtitle, footer|)} +In\index{footer functions} versions of \texttt{numerica-tables} before +version 3 it was possible to perform certain simple operations on +columns \textendash{} calculate the sum, the average and maximum and +minimum values. This is no longer so in version 3. Not only does it +seem tangential to the primary function of the \verb`\tabulate` command +but it was also acutely dependent on the format of the numbers being +operated on \textendash{} a change in the number-format option could +cause a \LaTeX{} error.\index{formatting!title, subtitle, footer|)} \subsection{Horizontal rules: \texttt{rules}} -\label{subsec:Rules:-rules-setting}\index{rules@\texttt{rules}|(}\index{rules|(}\index{formatting!rules|(} -\begin{table}[!b] -\centering{}\caption{\protect\label{tab:Rules}Rules. {\small (In the \textquoteleft span\textquoteright{} -column, \textquoteleft f-v\textquoteright =function-value; \textquoteleft r-v\textquoteright =row -variable; \textquoteleft$<$~table\textquoteright{} indicates that -the rule spans the table but is trimmed at each end.)}} +\label{subsec:Rules:-rules-setting}\index{rules@\texttt{rules}|(}\index{formatting!rules|(}The +\texttt{booktabs} \index{booktabs@\texttt{booktabs}} package which +\texttt{numerica-tables} uses is most emphatic that one should `1. +Never, ever use vertical rules.\index{rules@\texttt{rules}!edicts} +2. Never use double rules.' Most of the tables proper in \emph{HMF} +lack rules of any kind although closer inspection shows smaller tables +within the text generally \emph{are} delimited by horizontal rules +(often also with vertical rules). In the various examples in the present +document I have used horizontal rules because these too are tables +within text. Some form of delineation seems necessary although I think +I have `over ruled'. The question should always be: is a rule necessary +at all? Usually, less is more. (Although many of \emph{HMF}'s tables +are inelegantly typeset, I have used it as a valuable resource for +the variety of structures needed to present a multitude of different +kinds of numerical data.) + +The \verb`rules` key allows one to specify precisely which rules +are used. The content of the key is a `word' \textendash{} a sequence +of letters \textendash{} where the characters have the significance +and default thicknesses \textendash{} from the \texttt{booktabs}\index{booktabs@\texttt{booktabs}} +package \textendash{} shown in Table~\ref{tab:Rules}. (To adjust +the thickness of rules used, see \ref{subsec:Trim-and-thickness} +below.) No particular order is required in the \verb`rules` specification; +\verb`rules=hBT` would work as well as \verb`rules=ThB` but the +latter, reflecting the order of the rules in the table, is simpler +to grasp at a glance. + +In previous versions of \texttt{numerica-tables} the initial value +of this key was \verb`rules=ThB` so that if the \verb`rules` key +was not explicitly set then a rule was automatically drawn at the +top of the table, at the bottom of the table, and beneath the header +row. From version 3.2, no initial value is assigned to \verb`rules`. +Instead, a package option of the same name\index{rules@\texttt{rules}!package option}\index{package options} +can be set (see \ref{chap:Introduction}) which is initialized to +\verb`rules=ThB` to maintain previous behaviour. What is gained is +that by assigning a different value to the package option it is now +possible for a user to alter the default behaviour. A \verb`norules` +package option is also available if you want your tables free of rules +by default. The default set by the package option can always be overridden +for an individual table by means of the \verb`rules` \emph{setting}. + +\subsubsection{Header and footer rules} + +The header (resp. footer) rule specified by including \verb`h` (resp. +\verb`f`) in the \verb`rules` specification spans the whole table, +from the left of the first column to the right of the last column. +It can give a better visual appearance sometimes to trim (shorten) +these rules both left and right. This is specified by priming the +\verb`h` (resp. \verb`f`) in the specification. Thus \verb`rules=hf` +will produce header and footer rules spanning the whole table; \verb`rules=h'f'` +will produce slightly shorter header and footer rules trimmed by the +default $0.5\text{\,em}$ at both ends \textendash{} unless some other +trim value has been specified; see \ref{subsec:Trim-and-thickness} +below. + +\subsubsection{Title and subtitle rules} + +\begin{table}[t] +\centering +\centering{}\caption{\label{tab:Rules}Rules. {\small (In the \textquoteleft span\textquoteright{} +column, \textquoteleft fv\textquoteright =function-value; \textquoteleft rv\textquoteright =row +variable.)}} \begin{center} -\begin{tabular}{lll>{\raggedright}p{3cm}l} +\begin{tabular}{lll>{\raggedright}p{2.2cm}V{\linewidth}V{\linewidth}} \toprule -{\small char} & {\small rule} & {\small position} & {\small span} & {\small default rule thickness}\tabularnewline +{\footnotesize char} & {\footnotesize rule} & {\footnotesize position} & {\footnotesize span} & {\footnotesize trim} & {\footnotesize default rule thickness}\tabularnewline \midrule -{\small\texttt{T}} & {\small top} & {\small above table} & {\small table} & {\small\texttt{\textbackslash heavyrulewidth=.08em}}\tabularnewline -{\small\texttt{t}} & {\small title} & {\small below title} & {\small f-v cols} & {\small\texttt{\textbackslash cmidrulewidth =.03em}}\tabularnewline -{\small\texttt{s}} & {\small subtitle} & {\small below subtitle} & {\small f-v cols (if $1$ r-v col.)}{\small\par} - -{\small$<$ table (if $2$ r-v cols)} & {\small\texttt{\textbackslash cmidrulewidth =.03em}}\tabularnewline -{\small\texttt{h}} & {\small header} & {\small below header} & {\small table} & {\small\texttt{\textbackslash lightrulewidth=.05em}}\tabularnewline -{\small\texttt{f}} & {\small footer} & {\small above footer} & {\small < table} & {\small\texttt{\textbackslash cmidrulewidth =.03em}}\tabularnewline -{\small\texttt{B}} & {\small bottom} & {\small below table} & {\small table} & {\small\texttt{\textbackslash heavyrulewidth=.08em}}\tabularnewline +{\small\texttt{T}} & {\footnotesize top} & {\footnotesize above table} & {\footnotesize table} & & {\footnotesize\texttt{\textbackslash heavyrulewidth=.08em}}\tabularnewline +{\small\texttt{t}} & {\footnotesize title} & {\footnotesize below title} & {\footnotesize fv cols} & {\small\texttt{.5em}} & {\footnotesize\texttt{\textbackslash cmidrulewidth=.03em}}\tabularnewline +{\small\texttt{s}} & {\footnotesize subtitle} & {\footnotesize below subtitle} & {\footnotesize fv cols ($1$ rv col.) table ($2$ rv cols)} & {\small\texttt{.5em}}{\small\par} + +{\small\texttt{.5em}} & {\footnotesize\texttt{\textbackslash cmidrulewidth=.03em}}{\footnotesize\par} + +{\footnotesize\texttt{\textbackslash lightrulewidth=.05em}}\tabularnewline +{\small\texttt{h}} & {\footnotesize header} & {\footnotesize below header} & {\footnotesize table} & & {\footnotesize\texttt{\textbackslash lightrulewidth=.05em}}\tabularnewline +{\small\texttt{h'}} & & & & {\small\texttt{.5em}} & {\footnotesize\texttt{\textbackslash cmidrulewidth=.03em}}\tabularnewline +{\small\texttt{f}} & {\footnotesize footer} & {\footnotesize above footer} & {\footnotesize table} & & {\footnotesize\texttt{\textbackslash lightrulewidth=.05em}}\tabularnewline +{\small\texttt{f}}' & & & & {\small\texttt{.5em}} & {\footnotesize\texttt{\textbackslash cmidrulewidth=.03em}}\tabularnewline +{\small\texttt{B}} & {\footnotesize bottom} & {\footnotesize below table} & {\footnotesize table} & & {\footnotesize\texttt{\textbackslash heavyrulewidth=.08em}}\tabularnewline \bottomrule \end{tabular} \par\end{center} \end{table} -The \texttt{booktabs} \index{booktabs@\texttt{booktabs}} package -which \texttt{numerica} uses is most emphatic that one should `1. -Never, ever use vertical rules.\index{rules!edicts} 2. Never use -double rules.' Most of the tables proper in \emph{HMF} lack rules -of any kind although closer inspection shows smaller tables within -the text generally \emph{are} delimited by horizontal rules (often -also with vertical rules). In the various examples in the present -document I have used horizontal rules because these too are tables -within text. Some form of delineation seems necessary. (Although many -of \emph{HMF}'s tables are inelegantly typeset, I have used it as -a valuable source for the variety of structures that one might need -for presenting a multitude of different kinds of numerical data.) - -The \verb`rules` key allows one to specify precisely which rules -are used. The content of the key is a `word' \textendash{} a sequence -of letters \textendash{} where the characters have the significance -and default thicknesses (from \texttt{booktabs}\index{booktabs@\texttt{booktabs}}) -shown in Table~\ref{tab:Rules}. The default setting is \verb`rules=ThB`. -To insert a rule beneath the title, for example, change this to \verb`rules=TthB`. - -If you are using a subtitle row between header and title rows and -want a rule beneath that too, then the spec. is \verb`rules=TtshB`. -(For legacy reasons, \verb`m` \textendash{} from `midrow' \textendash{} -can also be used instead of \verb`s`, as in version 2 of \texttt{numerica-tables}.) -To my eye rules beneath both title and subtitle don't work; a rule -beneath the subtitle alone gives a better result. The subtitle rule -changes its behaviour depending on whether there are two row variable -columns \textendash{} on the left and right of the table \textendash{} -or not. If there is only such column then, like the title rule, the -subtitle rule spans only the function-value columns. If there are -two row variable columns then the subtitle rule spans the table but -is trimmed by 0.5 em at each end. That degree of trim is the \texttt{booktabs}\index{booktabs@\texttt{booktabs}} -default but can be changed by giving a different value to \verb`\cmidrulekern`\index{cmidrulekern@\texttt{\textbackslash cmidrulekern}} -in the preamble, e.g. \verb`\cmidrulekern=1em`. Note that the changed -trim will also apply to the title rule. - -If you are using a footer row\index{footer row} and want a rule above -it, then add \verb`f` to the specification, e.g. \verb`rules=TthfB`. -In version 3 of \texttt{numerica-tables} the rule is trimmed at each -end. Visually, having two table-spanning rules close together, the -\verb`f` and \verb`B` rules, doesn't work. The trimming makes a -difference. (For the \verb`T` and \verb`h` rules, the occurrence -of the table body beneath the \verb`h` rule seems to make a difference -to the visual impact of the rules.) But the question should always -be: is a rule necessary at all? Usually, less is more. - -If you wish to change the thickness of a rule from its default, then -enter new values for any or all of \verb`\heavyrulewidth`\index{heavyrulewidth@\texttt{\textbackslash heavyrulewidth}}, -\verb`\lightrulewidth`\index{lightrulewidth@\texttt{\textbackslash lightrulewidth}}, -\verb`\cmidrulewidth`\index{cmidrulewidth@\texttt{\textbackslash cmidrulewidth}} -in the preamble. The values listed in Table~\ref{tab:Rules} are -the default values in the \texttt{booktabs}\index{booktabs@\texttt{booktabs}} -package (except for the midrow and footer rules, which \texttt{booktabs}\index{booktabs@\texttt{booktabs}} -does not cover; in \texttt{numerica-tables} these rules are assigned -a thickness of \verb`\cmidrulewidth`). - -The order in which rules are placed in the specification doesn't matter. -I have entered them in their `natural' order simply because it feels -natural to do so, but it is their occurrence in the spec., not their -position, that matters. +If \verb`t` is included in the \verb`rules` specification, then +a rule will be drawn beneath the title. This will span the function-value +columns only and be trimmed at each end (by default by 0.5 em). If +you are also using a subtitle row, between title and header rows, +and want a rule beneath that too, then include \verb`s` in the setting +\textendash{} for instance \verb`rules=TtshB`. (For legacy reasons, +\verb`m` \textendash{} from `midrow' \textendash{} can also be +used instead of \verb`s`.) To my eye rules beneath \emph{both} title +and subtitle don't work; a rule beneath the subtitle alone gives a +better result \textendash{} if a rule is needed at all. + +The span of the subtitle rule depends on whether the row variable +column is placed only on one side of the table or on both (\verb`rpos<2` +or \verb`rpos>2`). If on only one then the rule spans only the function-value +columns \textendash{} like the title rule. If on both then the subtitle +rule spans the table but is trimmed by 0.5~em at each end. To the +author's eye, the extra span in this second case gives a better sense +of the row variable columns as part of the table as a whole rather +than as optional `clip ons' at the edges. In the example table below, a rule for the column title has been specified (the \verb`t` in the setting \verb`rules=TthB`). Also note the use -of \verb`ctitle=**`\index{ctitle@\texttt{ctitle}!** setting@\texttt{{*}{*}} setting}. +of \verb`ctitle=**`\index{ctitle@\texttt{ctitle}!{*},{*}{*} settings}. The formula contains an extra parameter $a$, assigned a value in -the vv-list. It now makes sense to display the vv-list in the column -title (but note the braces around \verb`k` and \verb`x` in the vv-list -so that \emph{they} don't display). +the vv-list, so that it now makes sense to display the vv-list in +the column title (the braces around \verb`k` and \verb`x` in the +vv-list ensure they don't display). \begin{verbatim} - \tabulate - [rspec={x,0.25,5},rround=2,rhnudge=9, - cspec={k,0.25,3},chstyle=2,chround=2, - ctitle=**,rules=TthB] - { a\sin kx }[a=2/\pi,{k}=3,{x}=0][*] + \tabulate[rspec={x,0.25,5,2},cspec={k,0.25,3,2}, + rhnudge=9,chstyle=2,ctitle=**,rules=TthB] + { a\sin kx }[a=2/\pi,{k}=3,{x}=0.25][*] \end{verbatim} -$\Longrightarrow$ \tabulate - [rspec={x,0.25,5},rround=2,rhnudge=9, - cspec={k,0.25,3},chstyle=2,chround=2, - ctitle=**,rules=TthB] - { a\sin kx }[a=2/\pi,{k}=3,{x}=0][*]\index{rules|)}\index{rules@\texttt{rules}|)}\index{formatting!rules} - -\subsection{Second row variable column: \texttt{rpos=4}} - -\label{subsec:Second-row-var-col}In\index{row variable column!position in table} -\index{rpos@\texttt{rpos}|(}\ref{subsec:Row-var-col-pos} I discussed -the settings \verb`rpos=0,1,2` and in \ref{sec:Multiple-function-tables} -gave an example of using {\ttfamily\verb`rpos=3`} where -repeating the row variable column on the right is helpful. There is -another value available for this key, \verb`rpos=4`. Like {\ttfamily\verb`rpos=3`} -this adds the row variable column to both left and right sides of -the table, but for the right column the values are a function of those -in the left column ({\ttfamily\verb`rpos=3`} corresponds -to the function being the identity). The value given to the key \verb`rvar'`\index{rvar@\texttt{rvar'}|(} -determines the function used and the value given to the key \verb`rhead'`\index{rhead@\texttt{rhead'}|(} -determines the header for the right-hand row variable column. If \verb`rhead'` -is omitted it defaults to a blank header, unless the \verb`rvar'` -setting is also omitted, when \verb`rpos=4` behaves like \verb`rpos=3`. - -For example, the sine and cosine are complementary functions\index{complementary functions|(}; -when working in degrees, $\cos\theta=\sin(90-\theta)$. We can exploit -this fact to halve the table size needed to tabulate the two functions. -In the table, $\theta'=90-\theta$ and \verb`rhead'=\theta'`. Simply -to illustrate the use of \verb`rhnudge'`\index{rhnudge@\texttt{rhnudge'}|(} -I have nudged the header in the second (right) row variable column -to sit above the tens digits of the row variable values. The example -also gives an illustration of the use of an expression in the third -element of \verb`rspec`.\index{foot@\texttt{foot}} -\begin{verbatim} - \tabulate[ff=;,o,rpos=4, - rspec={\theta,5,1+45/5},rround=0, - chnudge=14,rvar'=90-\theta,rhnudge'=4, - rhead'=\theta',rules=ThfB,foot=*] - { \sin\theta;\cos\theta }[\theta=0][*] -\end{verbatim} -$\Longrightarrow$ \tabulate[ff=;,o,rpos=4, - rspec={\theta,5,1+45/5},rround=0, - chnudge=14,rvar'=90-\theta,rhnudge'=4, - rhead'=\theta',rules=ThfB,foot=*] - { \sin\theta;\cos\theta }[\theta=0][*]\index{footer row!complementary functions}\index{rhnudge@\texttt{rhnudge'}|)}\index{rhead@\texttt{rhead'}|)}\index{ff@\texttt{ff}}\medskip{} +$\Longrightarrow$ \tabulate[rspec={x,0.25,5,2},cspec={k,0.25,3,2}, + rhnudge=9,chstyle=2,ctitle=**,rules=TthB] + { a\sin kx }[a=2/\pi,{k}=3,{x}=0.25][*] + +\subsubsection{Trim and thickness of rules} + +\label{subsec:Trim-and-thickness}The trim applied to rules \textendash{} +the amount cut from the ends \textendash{} is the \texttt{booktabs}'\index{booktabs@\texttt{booktabs}} +default value, $0.5$~em. To change it, enter the command +\begin{verbatim} + \setlength\cmidrulekern{<trim>} +\end{verbatim} +in the preamble where \verb`<trim>` is a length, something like \verb`0.5em`, +\verb`2.5mm`, etc. (Or, one could write, e.g. \verb`\cmidrulekern=2.5mm`.) +The new default will apply to the settings \verb`h'`, \verb`f'`, +\verb`t` and sometimes \verb`s`, since these all use \texttt{booktabs}' +\verb`\cmidrule`. + +To change the thickness of a rule from its default value, enter new +values in the preamble for any or all of \verb`\heavyrulewidth`\index{heavyrulewidth@\texttt{\textbackslash heavyrulewidth}}, +\verb`\lightrulewidth`\index{lightrulewidth@\texttt{\textbackslash lightrulewidth}}, +\verb`\cmidrulewidth`\index{cmidrulewidth@\texttt{\textbackslash cmidrulewidth}}, +e.g. +\begin{verbatim} + \setlength\heavyrulewidth{<width>} +\end{verbatim} +where \verb`<width>` is a length. The values listed in Table~\ref{tab:Rules} +are the default values, from the \texttt{booktabs}\index{booktabs@\texttt{booktabs}} +package, used in \texttt{numerica-tables}.\index{rules@\texttt{rules}|)}\index{formatting!rules} + +\subsection{Second row variable column: \texttt{rpos=3,4}} + +\label{subsec:Second-row-var-col}\index{row variable column!position in table}\index{rpos@\texttt{rpos}|(}The +settings \verb`rpos=0,1,2` have been discussed earlier; {\ttfamily\verb`rpos=3`} +duplicates the row variable column on the right of the table, with +the proviso that if the header of the row variable column on the left +is automatically generated and like $x\!\:\backslash\!\:k$, the header +on the right is changed to a form like $k\!\:/\!\:x$. Repeating the +first example of \ref{subsec:Headerstyle:-multi-column-case} but +with the setting \verb`rpos=3`, +\begin{verbatim} + \tabulate[rpos=3,rspec={x,0.2,5}, + ccspec={k,2,cstop=7,chnudge=18] + { \sin kx }[k=3,x=0.2][4*] +\end{verbatim} +$\Longrightarrow$ \tabulate[rpos=3,rspec={x,0.2,5}, + cvar=k,cstep=2,cstop=7,chnudge=18] + { \sin kx }[k=3,x=0.2][4*]\medskip{} + +\noindent An example of using \verb`rpos=3` in a multi-function table +is provided near the end of \ref{sec:Multiple-function-tables}. + +The \verb`rpos` key can also take the value $4$. \verb`rpos=4` +adds the row variable column to both left and right sides of the table, +but the values displayed in the right column are a \emph{function +of those in the left column} ({\ttfamily\verb`rpos=3`} +corresponds to the function being the identity). The value of the +key \verb`rvar'`\index{rvar@\texttt{rvar'}|(} specifies the function +used. +\begin{verbatim} + \tabulate[rpos=4,rspec={x,0.5,5,2},rhnudge=9, + cspec={k,2,3},chstyle=2,ctitle=*, + rvar'=x^2,rhnudge'=4] + { \sin(kx^2) }[k=3,x=1][4*] +\end{verbatim} +$\Longrightarrow$ \tabulate[rpos=4,rspec={x,0.5,5,2},rhnudge=9, + chstyle=2,cspec={k,2,3},ctitle=*, + rvar'=x^2,rhnudge'=4] + { \sin(kx^2) }[k=3,x=1][4*]\medskip{} + +\noindent If no value is given to \verb`rvar'` (or if \verb`rvar'=*`) +then the row variable column on the right of the table is the left +column reversed (with the possible exception of its header). +\begin{itemize} +\item Note:\index{transpose@\texttt{transpose}!and rpos@and \texttt{rpos}} +\verb`rpos=4` is incompatible with the \verb`transpose` setting. +If both settings are used, the table will be transposed as if \verb`rpos=3`. +\end{itemize} +When \verb`chstyle` is not zero, as in the example above, and \verb`rhead'` +is omitted or empty, the header for the right-hand row variable column +is automatically generated, displaying the value of the \verb`rvar'` +key. The positioning of the right-hand row variable header can be +adjusted with the use of \verb`rhnudge'`\index{rhnudge@\texttt{rhnudge}'} +as in the example. If \verb`chstyle=0`, the header is up to the user +to supply by assigning a value to the key \verb`rhead'`\index{rhead@\texttt{rhead'}}. +In all cases, \verb`rhead'` will override any automatically generated +header. + +The sine and cosine are complementary functions\index{complementary functions|(}; +when working in degrees (the \verb`o` setting in the next example), +$\cos\theta=\sin(90-\theta)$. We can exploit this fact to halve the +table size needed to tabulate the two functions. The following `toy' +example (see\emph{ HMF} Tables 4.10\textendash 4.12 for the real thing) +of a multi-function table (hence the \verb`ff`\index{ff@\texttt{ff}} +setting) also gives an example of the use of the \verb`foot=*`\index{foot@\texttt{foot}} +setting, and the primed versions of header and footer rules\index{rules@\texttt{rules}}. +Note also the use of an expression in the third element of \verb`rspec`. +The \verb`rhead'` setting is of no significance; it simply avoids +a large block of white space. +\begin{verbatim} + \tabulate[ff,o,rpos=4,rules=Th'f'B,foot=*,calign=c, + rspec={\theta,9,1+45/9,0}, + rvar'=90-\theta,rhead'=-] + { \sin\theta,\cos\theta }[\theta=0][*] +\end{verbatim} +$\Longrightarrow$ \tabulate[ff,o,rpos=4,rules=Th'f'B,foot=*,calign=c, + rspec={\theta,9,1+45/9,0}, + rvar'=90-\theta,rhead'=-] + { \sin\theta,\cos\theta }[\theta=0][*]\medskip{} \noindent The values of sines from $0$ to $45$ degrees are read -downwards from the first column of function values, and from 45 to -90 degrees are read upwards from the second column of function values. +downwards from the first column of function-values, and from 45 to +90 degrees are read upwards from the second column of function-values. For cosines it is downwards from the second column and upwards from the first column. The reversed footer line indicates the change of -columns to use. In the example note -\begin{itemize} -\item the setting of \verb`rvar'`\index{rvar@\texttt{rvar'}|)} to a function -\verb`90-\theta` of the row variable; -\item the footer setting \verb`foot=*` to obtain the reversed header in -the footer; -\item the rule \emph{above} the footer row specified by the \verb`f` added -to the \verb`rules` setting, \verb`rules=ThfB`. -\end{itemize} -Note also the degree setting \verb`o` in the settings option. +columns to use. -Although there is a significant space saving with tables like this -(see \emph{HMF} Tables 4.10, 4.11, 4.12), they are not `kind to the -reader'. They require a certain concentration to read and in my view -should be avoided unless space is seriously constrained. \emph{HMF} -Tables 6.1 and 6.2 are tables of the gamma function and its relatives -where $y=x-1$ is used in the row variable column on the right (stemming -from $y!=\Gamma(x-1)$); \emph{HMF }Table 6.5 in effect uses $\langle1/x\rangle$ -(the nearest integer to $1/x$) for the row variable on the right.\index{complementary functions|)} +Although there is a significant space saving with tables like this, +they are not `kind to the reader'. They require a certain concentration +to read and should be avoided unless space is seriously constrained. +\emph{HMF} Tables 6.1 and 6.2 are tables of the gamma function and +its relatives where $y=x-1$ is used in the row variable column on +the right (stemming from $x!=\Gamma(x-1)$); \emph{HMF }Table 6.5 +in effect uses $\langle1/x\rangle$ (the nearest integer to $1/x$) +for the row variable on the right.\index{complementary functions|)} \subsection{Separating blocks of rows: \texttt{rbloc}} Readability\index{formatting!grouping rows|(}\index{row grouping|(} -of long columns of figures can be aided by breaking the columns into -blocks with extra white space between blocks of rows. This is achieved -with the \verb`rbloc`\index{rbloc@\texttt{rbloc}|(} key: +of long columns of figures can be aided by adding extra white space +between blocks of rows. This is achieved with the \verb`rbloc`\index{rbloc@\texttt{rbloc}|(} +key: \begin{verbatim} rbloc = <comma list of positive integers> \end{verbatim} @@ -1565,14 +2030,7 @@ say, the row variable runs from $0$ to $1$ in increments of $0.1$ \textendash{} there are $11$ rows of which the first (when the row variable is zero) may have distinctive values. -\noindent{}% -\noindent\begin{minipage}[t]{1\columnwidth}% -\begin{shaded}% - -\subsubsection*{The pull of the nice round number} - -However, this is not how \emph{HMF} sets out its tables.\emph{ }The -dominant practice in \emph{HMF} is division into blocks of (generally) +The dominant practice in \emph{HMF} is division into blocks of (generally) $5$ rows, many of which start with a zero value for the row variable. Rather than isolate this initial value, they include it in the first block of $5$, then continue with blocks of $5$ until a single isolated @@ -1583,70 +2041,115 @@ than $0$ to $9$, from $0$ to $1$ rather than $0$ to $0.9$, and even from $0$ to $30$ or $0$ to $2$ rather than $0$ to $29$ or $0$ to $1.9$. Using blocks of $5$ the consequence is that there is always an isolated line at the end \textendash{} a kind of punctuation -mark to signal the end of the page or the table.\end{shaded}% -\end{minipage} +mark to signal the end of the page or the table. -\medskip{} -In the next example I have divided the rows into blocks of $5$ by -means of the setting \verb`rbloc=5`. +In the next example I have divided the rows into blocks of $4$ but +separated the special values of the first and last rows by setting +\verb`rbloc={1,4}`. \begin{verbatim} - \tabulate[ff=;,o,rspec={\theta,10,1+90/10}, - rround=0,rbloc=5] - { \sin\theta; \cos\theta }[\theta=0][*] + \tabulate[ff,o,rspec={\theta,10,1+90/10,0},rbloc={1,4}] + { \sin\theta, \cos\theta }[\theta=0][*] \end{verbatim} -$\Longrightarrow$ \tabulate[ff=;,o,rspec={\theta,10,1+90/10}, - rround=0,rbloc=5] - { \sin \theta; \cos \theta}[\theta=0][*]\index{rbloc@\texttt{rbloc}|)} +$\Longrightarrow$ \tabulate[ff,o,rspec={\theta,10,1+90/10,0},rbloc={1,4}] + { \sin\theta, \cos\theta }[\theta=0][*]\index{rbloc@\texttt{rbloc}|)} \subsubsection{Adjusting the extra space\texttt{ rblocsep} } -By default \texttt{numerica} sets the extra space between blocks of -rows at \verb`1 ex`. This value can easily by changed with the setting -\verb`rblocsep=<length>`\index{rblocsep@\texttt{rblocsep}}. The -units need to be included in the specification. \index{formatting!grouping rows|)}\index{row grouping|)} +By default \texttt{numerica-tables} sets the extra space between blocks +of rows at \verb`1 ex`. This value can easily by changed with the +setting \verb`rblocsep=<length>`\index{rblocsep@\texttt{rblocsep}}. +The units need to be included in the specification. \index{formatting!grouping rows|)}\index{row grouping|)} + +\subsection{\textquoteleft Horizontal\textquoteright{} tables: \texttt{transpose}} + +\label{subsec:Transpose}Traditionally\index{tables!`horizontal'/`vertical'|(}\index{transpose@\texttt{transpose}|(} +in a book of mathematical tables the function values are arranged +vertically in columns. This is why the row variable has been given +primacy in \texttt{numerica-tables}. But that may not always be what +is wanted nor make the best use of available space. From version 3.2.0 +of \texttt{numerica-tables} there is a setting, \verb`transpose`, +that will convert a `vertical' table (function values in columns) +to a `horizontal' table (function values in rows). The table is +\emph{constructed} as if the function values will be listed vertically +in columns, but with \verb`transpose` entered in the settings option +the table is displayed with the function values listed in rows. + +(Strictly, \verb`transpose` `is really' \verb`transpose=1`, but +\verb`transpose` alone suffices; \verb`transpose=0` corresponds +to the default situation of function values in columns.) + +With transposition, the row variable column and header row are interchanged. +The building of the row variable column and header row occurs \emph{before} +transposition. Hence \verb`rround` and \verb`chround` are applied +to these elements \emph{before} transposition. It is the rounded values +of the row and column variables that are used to calculate function +values. But `cosmetic effects' like placement of the (new) row variable +column or (new) header row, as well as header styling (\verb`chstyle`), +alignment (\verb`ralign`, \verb`calign`), nudging (\verb`rhnudge`, +\verb`chnudge`), fonts (\verb`rfont`, \verb`chfont`), and choice +of display-, text- or scriptstyle (\verb`rmath`, \verb`chmath`) +are applied \emph{after} transposition. A footer row is created \emph{after} +transposition. +\begin{itemize} +\item Transposition\index{transpose@\texttt{transpose}!and rpos@and \texttt{rpos}} +does not work for tables using a second row variable column with \verb`rpos=4`. +Such a table \emph{is} transposed, but treated as if \verb`rpos=3`. +\end{itemize} +In a `shallow' transposed table \textendash{} like one with a single +row of function values \textendash{} rules should be used sparingly +if at all. See the example at \ref{sec:Row-variable-settings} where +the \verb`norules` setting is used. In the following example, with +three function-value rows resulting from the transposition, a single +header rule suffices. +\begin{verbatim} + \tabulate[rspec={x,0.2,5},ralign=c,cspec={k,0.25,3,2}, + chstyle=1,rules=h',transpose] + { \sin kx }[k=3,x=0.2][*] +\end{verbatim} +$\Longrightarrow$ \tabulate[rspec={x,0.2,5},ralign=c,cspec={k,0.25,3,2}, + chstyle=1,rules=h',transpose] + { \sin kx }[k=3,x=0.2][*]\index{tables!`horizontal'/`vertical'|)}\index{transpose@\texttt{transpose}|)} \subsection{Table placement} -\label{sec:Table-placement}Tables\index{table placement!on the page} +\label{sec:Table-placement}Tables\index{tables!position on line/page} can be nudged vertically with the \LaTeX{} commands \verb`\bigskip`\index{bigskip@\texttt{\textbackslash bigskip}}, -\verb`\medskip`\verb`\medskip`, \verb`\smallskip`\index{smallskip@\texttt{\textbackslash smallskip}}, +\verb`\medskip`, \verb`\smallskip`\index{smallskip@\texttt{\textbackslash smallskip}}, usually about $1$, $\sfrac12$ and $\sfrac14$ line spaces (with stretch and shrink). \texttt{booktabs}\index{booktabs@\texttt{booktabs}} provides \verb`\abovetopsep`\index{abovetopsep@\texttt{\textbackslash abovetopsep}} and \verb`\belowbottomsep`\index{belowbottomsep@\texttt{\textbackslash belowbottomsep}}, both set by default to \verb`0ex` and easily changed by writing, -e.g., \verb`\abovetopsep=1.25ex` if you want to insert \verb`1.25ex` -of space above the table (perhaps to fit captions). +e.g. \verb`\setlength\abovetopsep{1.25ex}` (or \verb`\abovetopsep=1.25ex`) +if you want to insert \verb`1.25ex` of space above the table (perhaps +to fit captions). \subsubsection{Vertical~alignment} -\label{subsec:Verticalalignment}By\index{table placement!on the line} +\label{subsec:Verticalalignment}By\index{tables!position on line/page} writing\texttt{ }{\ttfamily\verb`valign=<char>`}\index{valign@\texttt{valign}} where \verb`<char>` is one of \verb`t`, \verb`m` or \verb`b` the -vertical alignment of the table can be set relative to the text baseline.\texttt{ }\verb`valign=t`\texttt{ -}aligns the top of the table with the text baseline, \verb`valign=b` -the bottom of the table with the text baseline, \verb`valign=m` aligns -the middle of the table with the text baseline. By default \verb`valign=m` -is set. Repeating an example from earlier (\ref{sec:Row-variable-settings}) -I have added letters A, B, C to show where the baseline is. In the -first table the top of the table aligns with the baseline; in the -second table (default case) the middle of the table aligns with the -baseline; in the third table, the bottom of the table aligns with -the baseline. -\begin{verbatim} - A \tabulate[valign=t,rvar=x,rstep=0.2,rows=6] +vertical alignment of the table can be set relative to the text baseline:\texttt{ }\verb`t`\texttt{ +}aligns the top of the table, \verb`b` the bottom of the table, and +\verb`m` the middle of the table with the text baseline. By default +\verb`valign=m` is set. Repeating an example from earlier (\ref{sec:Row-variable-settings}) +I have added letters A, B, C to show where the baseline is. Clearly +the top, middle and bottom of the respective tables aligns with the +baseline. +\begin{verbatim} + A \tabulate[valign=t,rvar=x,rstep=0.2,rows=5] { \sin x/\cos x }[x=0][*] \quad - B \tabulate[rspec={x,0.2,1+(1/0.2)}] + B \tabulate[rspec={x,0.2,1/0.2}] { \tan x }[x=0][*] \quad - C \tabulate[valign=b,rspec={x,0.2,(6)}] + C \tabulate[valign=b,rspec={x,0.2,5}] { \sqrt{\sec^2 x - 1} }[x=0][*] \end{verbatim} -$\Longrightarrow$ A \tabulate[valign=t,rvar=x,rstep=0.2,rows=6,rstop=2] - { \sin x/\cos x }[x=0][*] \quad - B \tabulate[rspec={x,0.2,1+(1/0.2)}] - { \tan x }[x=0][*] \quad - C \tabulate[valign=b,rspec={x,0.2,6}] - { \sqrt{\sec^2 x - 1} }[x=0][*]\medskip{} +$\Longrightarrow$ A \tabulate[valign=t,rvar=x,rstep=0.2,rows=5,rstop=2] + { \sin x/\cos x }[x=0.2][*] \quad + B \tabulate[rspec={x,0.2,1/0.2}] + { \tan x }[x=0.2][*] \quad + C \tabulate[valign=b,rspec={x,0.2,5}] + { \sqrt{\sec^2 x - 1} }[x=0.2][*]\medskip{} As explained in \ref{subsec:Adjoining-tables}, tables can be adjoined to give the appearance of a single larger table. If tables with different @@ -1654,34 +2157,17 @@ numbers of rows are adjoined in this manner, then a middle alignment fails and a top alignment is necessary (so that the header rows of the tables align). -\section{Function value formatting} +\section{Formatting function values} -\label{sec:Function-value-formatting}\index{formatting!function values|(}\index{function value formatting|(} -\begin{table} -\centering{}\caption{\protect\label{tab:Function-value-formatting}Formatting function -values} -\begin{center} -\begin{tabular}{cc>{\raggedright}p{5cm}c} -\toprule -{\small key} & {\small type} & {\small meaning} & {\small initial}\tabularnewline -\midrule -{\small\texttt{(pad)}} & {\small int} & {\small t-notation phantom padding} & \tabularnewline -{\small\texttt{signs}} & {\small int} & {\small sign handling for function-values} & {\small\texttt{0}}\tabularnewline -{\small\texttt{diffs}} & {\small int} & {\small insert differences \& pre-pad with zeros} & {\small\texttt{0}}\tabularnewline -{\small\texttt{round}} & {\small tokens} & {\small row or col. dependent rounding value} & \tabularnewline -{\small\texttt{Q?}} & {\small tokens} & {\small special cell conditional} & \tabularnewline -{\small\texttt{A!}} & {\small tokens} & {\small special cell formatting} & \tabularnewline -\bottomrule -\end{tabular} -\par\end{center} -\end{table} -In previous tables in this document, function values have generally -been limited to a fairly narrow range of values. What happens when -function values span orders of magnitude? Can we accommodate scientific -notation, expressly designed to cope with such orders of magnitude, -in a natural way? Can we round rows or columns to different rounding -values? Or, in a different direction, can we form tables of function -values in fraction form? +\label{sec:Function-value-formatting}\index{formatting!function values|(}\index{function-value formatting|(}In +previous tables in this document, function values have generally been +limited to a fairly narrow range of values. What happens when they +span orders of magnitude? Can scientific notation, expressly designed +to cope with such differing orders of magnitude, be accommodated in +a table in a natural way? Can rows or columns \textendash{} or individual +cells \textendash{} be rounded to different rounding values? Can we +indicate differences? Or form tables of function values in fraction +form? These and similar questions are our concern here. \subsection{Trailing optional argument} @@ -1694,26 +2180,39 @@ specified. \subsubsection{Fraction-form output} -\label{subsec:Fraction-form-output}In\index{fraction form!function values|(}\index{function value formatting!fraction form|(} -\ref{subsec:rfracFraction-form-rvar} we saw how to display the row -variable in fraction form. Function values can also be presented in -that form. The problem is that such output requires far more computation -than other output since finding denominators at the specified accuracy -is an iterative process that needs to be performed for every function -value. However, it is feasible for small tables. In the tables below, -approximations to small positive and inverse powers of $\pi$ are -listed to $2$ and $4$ decimal places of accuracy. It is interesting -that all the powers listed can be approximated to $4$-place accuracy -by $3$-figure denominators (and $\pi^{2}$ by a $2$-figure denominator).\index{row variable!verbatim values|(}\index{sfrac@\texttt{\textbackslash sfrac}} -\begin{verbatim} - \def\mydataiii{\pi,\pi^2,\pi^3, - \pi^{\sfrac12},\pi^{\sfrac13}} - \tabulate[rdata=\mydataiii,rverb=1,rpos=1, - rvar=k,ralign=l,chead={\small $2$ places}] - { k }[2/s] \qquad - \tabulate[rdata=\mydataiii,rverb=1,rpos=1, - rvar=k,ralign=l,chead={\small $4$ places}] - { k }[4/s] +\begin{table}[t] +\centering +\centering{}\caption{\label{tab:Function-value-formatting}Formatting function values} +\begin{center} +\begin{tabular}{cc>{\raggedright}p{5cm}c} +\toprule +{\small key} & {\small type} & {\small meaning} & {\small initial}\tabularnewline +\midrule +{\small\texttt{(pad)}} & {\small int} & {\small t-notation phantom padding} & \tabularnewline +{\small\texttt{signs}} & {\small int} & {\small sign handling for function values} & {\small\texttt{0}}\tabularnewline +{\small\texttt{diffs}} & {\small int} & {\small insert differences, pre-pad with $0$s} & {\small\texttt{0}}\tabularnewline +{\small\texttt{round}} & {\small tokens} & {\small row/col. dependent rounding value} & \tabularnewline +{\small\texttt{Q?}} & {\small tokens} & {\small special cell conditional} & \tabularnewline +{\small\texttt{A!}} & {\small tokens} & {\small special cell formatting} & \tabularnewline +\bottomrule +\end{tabular} +\par\end{center} +\end{table} +\label{subsec:Fraction-form-output}\index{fraction form!function values|(}\index{function-value formatting!fraction form|(}Function +values in a table can be presented in fraction form, but such output +requires far more computation than other forms since finding denominators +at the specified accuracy is an iterative process that needs doing +for every function value. But for small tables it is feasible. In +the tables below, approximations to small positive and inverse powers +of $\pi$ are listed to $2$ and $4$ decimal places of accuracy. +All the powers listed can be approximated to $4$-place accuracy by +$3$-figure denominators (and $\pi^{2}$ by a $2$-figure denominator).\index{row variable!verbatim values|(}\index{sfrac@\texttt{\textbackslash sfrac}} +\begin{verbatim} + \def\mypi{\pi,\pi^2,\pi^3,\pi^{\sfrac12},\pi^{\sfrac13}} + \tabulate[rdata=\mypi,rverb=1,rpos=1,rvar=k,ralign=l, + chead={\small $2$ places}]{ k }[2/s] \qquad + \tabulate[rdata=\mypi,rverb=1,rpos=1,rvar=k,ralign=l, + chead={\small $4$ places}]{ k }[4/s] \end{verbatim} $\Longrightarrow$ \def\mydataiii{\pi,\pi^2,\pi^3, \pi^{\sfrac12},\pi^{\sfrac13}} @@ -1724,71 +2223,73 @@ $\Longrightarrow$ \def\mydataiii{\pi,\pi^2,\pi^3, rvar=k,ralign=l,chead={\small $4$ places}] { k }[4/s]\medskip{} -A second example shows that all four built-in constants to \texttt{numerica} -and their first few inverse powers can be approximated to $5$ decimal -places with $3$-figure denominators:\index{sfrac@\texttt{\textbackslash sfrac}} +A second example shows that all four of \texttt{numerica}'s built-in +constants and their first few inverse powers can be approximated to +$5$ decimal places with $3$-figure denominators:\index{sfrac@\texttt{\textbackslash sfrac}} \begin{verbatim} - \tabulate[rdata={\pi ,e,\phi,\gamma},rverb=1,rvar=k, - cspec={n,1,4},chstyle=3,chnudge=9,rules=TthB,/max=1000, - ctitle=\lvert k^{\sfrac1n}-p/q \rvert<0.5\times10^{-5}] + \tabulate[rdata={\pi,e,\phi,\gamma},rverb=1,/max=1000, + rvar=k,cspec={n,1,4},chstyle=3,chnudge=9,rules=TthB, + ctitle=\abs{k^{\sfrac1n}-p/q}<0.5\times10^{-5}] { k^{\sfrac1n} }[n=1,k=1][/s5] \end{verbatim} $\Longrightarrow$ \tabulate[rdata={\pi ,e,\phi,\gamma},rverb=1,rvar=k, cspec={n,1,4},chstyle=3,chnudge=9,rules=TthB,/max=1000, ctitle=\lvert k^{\sfrac1n}-p/q \rvert<0.5\times10^{-5}] - { k^{\sfrac1n} }[n=1,k=1][/s5]\index{function value formatting!fraction form|)}\index{fraction form!function values|)}\index{row variable!verbatim values|)} + { k^{\sfrac1n} }[n=1,k=1][/s5]\index{function-value formatting!fraction form|)}\index{fraction form!function values|)}\index{row variable!verbatim values|)} \subsubsection{Scientific notation} -Elegant\index{function value formatting!scientific notations|(} scientific -notation\index{scientific notation},\index{scientific notation|seealso{t-notation}} -set with an \verb`x` in the trailing optional argument, is generally -not appropriate for use in tables; see the first table below. Repeating -the \verb`x` \textendash{} \verb`xx` \textendash{} in the trailing -optional argument (the second table) so that scientific notation extends -to numbers in the range $[1,10)$ helps, particularly with the \emph{left} -alignment chosen for the function-value column, but the result is -wasteful of space and the repetition of the `$\times10$' is distracting -and would be more so for a larger table. The \verb`x` specification -should be used in tables, if at all, only for \emph{small} tables -and special cases. The \verb`t` option is much preferred; see \ref{subsec:t-option} -below. +\index{function-value formatting!scientific notations|(}Scientific +notation\index{scientific notation} \textendash \index{scientific notation|seealso{t-notation}} +put \verb`x` in the trailing optional argument \textendash{} is generally +inappropriate for use in tables; see the first table below. Entering +\verb`xx` (second table) so that the notation extends to numbers +in the range $[1,10)$ helps, particularly with the \emph{left} alignment +of the function values, but the result is wasteful of space and the +repetition of the `$\times10$' is distracting and would be more +so for a larger table. The \verb`x` specification should be used +in tables, if at all, only for \emph{small} tables and special cases. +The \verb`t` option is much preferred; see \ref{subsec:t-option} +following. \begin{verbatim} - \tabulate[rspec={x,1,2*3+1},rround=0] - { e^x}[x=-5][*x]\qquad - \tabulate[rspec={x,1,2*3+1},rround=0,calign=l] - { e^x}[x=-3][*xx] + \tabulate[rspec={x,1,6,0},chnudge=58] + { e^x}[x=-2][*x]\qquad + \tabulate[rspec={x,1,6,0},calign=l,chnudge=45] + { e^x}[x=-2][*xx] \end{verbatim} -$\Longrightarrow$ \tabulate[rspec={x,1,2*3+1},rround=0] - { e^x}[x=-3][*x]\qquad - \tabulate[rspec={x,1,2*3+1},rround=0,calign=l] - { e^x}[x=-3][*xx] +$\Longrightarrow$ \tabulate[rspec={x,1,6,0},chnudge=58] + { e^x}[x=-2][*x]\qquad + \tabulate[rspec={x,1,6,0},calign=l,chnudge=45] + { e^x}[x=-2][*xx] \subsection{The \texttt{t} option} \label{subsec:t-option}\emph{HMF}\index{t-notation|(} uses a special -notation\index{function value formatting|(seealso{t-notation}} for -coping with function values spanning orders of magnitude. This notation -can be invoked by inserting \verb`t` in the trailing optional argument. -Repeating the previous two tables, and adding a \verb`chnudge` value, -gives a more compact and visually appealing result: +notation\index{function-value formatting|(seealso{t-notation}} for +coping with function values spanning different orders of magnitude. +This notation can be invoked by inserting \verb`t` in the trailing +optional argument. For the previous two tables the notation gives +a more compact and visually appealing result: \begin{verbatim} - \tabulate[rspec={x,1,2*3+1},rround=0,chnudge=24] + \tabulate[rspec={x,1,2*3+1,0},chnudge=24] { e^x}[x=-3][*t]\qquad - \tabulate[rspec={x,1,2*3+1},rround=0,chnudge=24] + \tabulate[rspec={x,1,2*3+1,0},chnudge=24] { e^x}[x=-3][*tt] \end{verbatim} -$\Longrightarrow$ \tabulate[rspec={x,1,2*3+1},rround=0,chnudge=24] +$\Longrightarrow$ \tabulate[rspec={x,1,2*3+1,0},chnudge=24] { e^x}[x=-3][*t] \qquad - \tabulate[rspec={x,1,2*3+1},rround=0,chnudge=24] - { e^x}[x=-3][*tt] + \tabulate[rspec={x,1,2*3+1,0},chnudge=24] + { e^x}[x=-3][*tt]\medskip{} + +Doubling the \verb`t` in the trailing optional argument (second table) +extends the notation to numbers in the range $[1,10)$ \textendash{} +as doubling \verb`x` extends normal scientific notation to this range. \subsubsection{Padding the exponent: \texttt{(pad)}} -In\index{padding with phantoms|(} the second table of the last example -some might quibble at the lack of alignment of the left parentheses. -\emph{HMF} tends to align these and \verb`numerica-tables` offers -the setting +In\index{padding with phantoms|(} the second table one might quibble +at the lack of alignment of the left parentheses. \emph{HMF} tends +to align these and \verb`numerica-tables` offers the setting \begin{verbatim} (pad) = <integer> \end{verbatim} @@ -1797,11 +2298,9 @@ a reminder of the \verb`t`-form of scientific notation.) \verb`<integer>` is the number of digits/characters to pad to. Repeating the last two tables with the setting \verb`(pad)=2` produces the following results: \begin{verbatim} - \tabulate[rspec={x,1,2*3+1},rround=0, - chnudge=24,(pad)=2] + \tabulate[rspec={x,1,2*3+1,0},chnudge=24,(pad)=2] { e^x}[x=-3][*t]\qquad - \tabulate[rspec={x,1,2*3+1},rround=0, - chnudge=24,(pad)=2] + \tabulate[rspec={x,1,2*3+1,0},chnudge=24,(pad)=2] { e^x}[x=-3][*tt] \end{verbatim} $\Longrightarrow$ \tabulate[rspec={x,1,2*3+1},rround=0, @@ -1811,15 +2310,19 @@ $\Longrightarrow$ \tabulate[rspec={x,1,2*3+1},rround=0, chnudge=24,(pad)=2] { e^x}[x=-3][*tt]\medskip{} -Note that this setting is relevant only when the \texttt{t} option -is used in the trailing number-formatting argument of the \verb`\tabulate` -command. Examples in \emph{HMF} of the style exemplified by the first +\noindent Examples in \emph{HMF} of the style exemplified by the first table are, among others, Tables 8.6, 9.2, 20.1, and of the style exemplified by the second table, among many, Tables 9.9, 10.5, 13.1, 14.1, 19.1.\index{padding with phantoms|)} +But note: +\begin{itemize} +\item the \verb`(pad)` setting is relevant only when the \verb`t` option +is used in the trailing number-format argument of the \verb`\tabulate` +command and should have no effect otherwise. +\end{itemize} -\paragraph{Accommodating signs: \texttt{signs}} +\subsubsection{Accommodating signs in the \texttt{t}-notation} -\label{subsec:Signs}Instead\index{t-notation!accommodating signs}\index{function value formatting!sign handling|(} +\label{subsec:Signs}Instead\index{t-notation!accommodating signs}\index{function-value formatting!sign handling|(} of $e^{x}$ as the test function, use $e^{x}-1.$ Now there are positive, zero and negative function values to contend with. Recall that in the \verb`t`-notation the \emph{exponent} is the parenthesized integer @@ -1829,8 +2332,8 @@ key to align (or not) the exponents. The setting is \begin{verbatim} signs = <integer> \end{verbatim} -Besides the do-nothing default \verb`(signs=0)`, there are four effective -values for \verb`<integer>`: +Besides the do-nothing default (\verb`signs=0` or omitted), there +are four effective values for \verb`<integer>`: \begin{itemize} \item \verb`signs=2`\texttt{ }inserts a $+$ sign between exponent and significand of every non-negative number; @@ -1847,14 +2350,11 @@ exponent and significand of every non-negative number; In the following examples, \verb`signs=-2`, \verb`signs=-1` and \verb`signs=2`, all give acceptable results. \begin{verbatim} - \tabulate[rspec={x,1,2*3+1},rround=0, - (pad)=2,signs=-2] - { e^x-1}[x=-3][4*tt]\qquad - \tabulate[rspec={x,1,2*3+1},rround=0, - (pad)=2,signs=-1] - { e^x-1}[x=-3][4*tt]\qquad - \tabulate[rspec={x,1,2*3+1},rround=0, - (pad)=2,signs=2] + \tabulate[rspec={x,1,2*3+1,0},(pad)=2,signs=-2] + { e^x-1}[x=-3][4*tt] \qquad + \tabulate[rspec={x,1,2*3+1,0},(pad)=2,signs=-1] + { e^x-1}[x=-3][4*tt] \qquad + \tabulate[rspec={x,1,2*3+1,0},(pad)=2,signs=2] { e^x-1}[x=-3][4*tt] \end{verbatim} $\Longrightarrow$ \tabulate[rspec={x,1,2*3+1},rround=0, @@ -1871,16 +2371,7 @@ $\Longrightarrow$ \tabulate[rspec={x,1,2*3+1},rround=0, 10.1, 13.1, 14.1, 19.1 among many others illustrate \verb`signs=-1`; and Tables 9.4, 10.6, 20.2, 22.11 among others illustrate \verb`signs=2`. -\verb`signs=1`, however, is an inappropriate setting for these function -values in the \verb`t`-notation: -\begin{verbatim} - \tabulate[rspec={x,1,2*3+1},rround=0, - (pad)=2,signs=1] - { e^x-1}[x=-3][4*tt] \qquad -\end{verbatim} -$\Longrightarrow$ \tabulate[rspec={x,1,2*3+1},rround=0, - (pad)=2,signs=1] - { e^x-1}[x=-3][4*tt]\index{t-notation|)}\index{function value formatting!scientific notations|)}\index{padding with phantoms|)}\medskip{} +For \verb`signs=1`, see the second table in the next example.\index{t-notation|)}\index{function-value formatting!scientific notations|)}\index{padding with phantoms|)}\medskip{} \subsection{Indicating signs outside the t-notation} @@ -1888,69 +2379,69 @@ $\Longrightarrow$ \tabulate[rspec={x,1,2*3+1},rround=0, The \verb`signs` key is not limited to the \verb`t`-notation. In the following tables where the notation is not used, positive values for the key, including \verb`signs=1`\index{signs@\texttt{signs}}, -give good results (I've included also the default setting \textendash{} -the third table): -\begin{verbatim} - \tabulate[rspec={x,0.1,9},(pad)=2,signs=2] - { 10\sin 5x}[x=-0.4][*4]\qquad - \tabulate[rspec={x,0.1,9},(pad)=2,signs=1] - { 10\sin 5x}[x=-0.4][*4]\qquad - \tabulate[rspec={x,0.1,9},(pad)=2] - { 10\sin 5x}[x=-0.4][*4] -\end{verbatim} -$\Longrightarrow$ \tabulate[rspec={x,0.1,9},(pad)=2,signs=2] - { 10\sin 5x}[x=-0.4][*4]\qquad - \tabulate[rspec={x,0.1,9},(pad)=2,signs=1] - { 10\sin 5x}[x=-0.4][*4]\qquad - \tabulate[rspec={x,0.1,9},(pad)=2] - { 10\sin 5x}[x=-0.4][*4]\medskip{} +give good results. The third table, corresponding to \verb`signs=0`, +shows that the comment extends to \emph{non-negative} values of the +\verb`signs` key. +\begin{verbatim} + \tabulate[rspec={x,0.1,7},(pad)=2,signs=2] + { 10\sin 5x}[x=-0.3][*4]\qquad + \tabulate[rspec={x,0.1,7},(pad)=2,signs=1] + { 10\sin 5x}[x=-0.3][*4]\qquad + \tabulate[rspec={x,0.1,7},(pad)=2] + { 10\sin 5x}[x=-0.3][*4] +\end{verbatim} +$\Longrightarrow$ \tabulate[rspec={x,0.1,7},(pad)=2,signs=2] + { 10\sin 5x}[x=-0.3][*4]\qquad + \tabulate[rspec={x,0.1,7},(pad)=2,signs=1] + { 10\sin 5x}[x=-0.3][*4]\qquad + \tabulate[rspec={x,0.1,7},(pad)=2] + { 10\sin 5x}[x=-0.3][*4]\medskip{} \noindent\emph{HMF} seems to use \verb`signs=2` when the sign of the function values changes every few entries and \verb`signs=1` when there are runs of entries of the same sign. Over the range tabulated here for $10\sin5x$, they would use the middle table of the three, -\verb`signs=1`.\index{function value formatting!sign handling|)}\index{signs@\texttt{signs}|)} +\verb`signs=1`.\index{function-value formatting!sign handling|)}\index{signs@\texttt{signs}|)} -\subsection{Rounding to varying values} +\subsection{Cell-, row-, column-dependent rounding} -\label{subsec:Rounding-varying} Above\index{rounding value!row/col-dependent|(}, -in \ref{subsec:Fraction-form-output}, we created two tables of fraction-form -approximations to simple power functions of $\pi$, one accurate to -two places of decimals, one to four places. Version 3.1 of \texttt{numerica-tables} -(as distinct from version 3.0) offers the means of producing tables +\label{subsec:Rounding-varying} \index{rounding value!row/col.dependent@row/col.\ dependent|(}In +\ref{subsec:Fraction-form-output}, we created two tables of fraction-form +approximations to simple powers of $\pi$, one accurate to two places +of decimals, one to four. From version 3.1 (as distinct from version +3.0) \texttt{numerica-tables} offers the means of producing tables with rounding values depending on position in the table. This is effected -through the key \index{round@\texttt{round}|(} -\begin{verbatim} - round = f(rvar,cvar) -\end{verbatim} -where \texttt{f(rvar,cvar)} denotes a function of row and column variables. -Usually this will mean dependence either on row variable or column -variable rather than both. In the present instance we form a multi-function -table and with the \verb`round` key let the rounding value equal -the row variable value \verb`r` (\verb`round=r`) to obtain fractional -approximations to simple powers of $\pi$ at rounding values from -$1$ to $5$ (and discover that all these values can be approximated -to $5$ decimal places with $3$ figure denominators \textendash{} -$\pi^{2}$ only just).\index{multi-function tables}\index{fraction form!row/col-dependent rounding} +through the key \verb`round`\index{round@\texttt{round}|(} which +sets the rounding value as a function of row and column variables. +In practice this usually means dependence on row or column variable +alone rather than both. In the example below, the rounding equals +the row variable value, \verb`round=r`, producing fractional approximations +to simple powers of $\pi$ at rounding values from $1$ to $5$, and +learn that all these powers can be approximated to $5$ decimal places +with $3$ figure denominators \textendash{} $\pi^{2}$ only just. +(The command \verb`\abs` used in \verb`ctitle` is defined in \texttt{numerica}.)\index{multi-function tables}\index{fraction form!row/col.-dependent rounding} \begin{verbatim} \tabulate[ff,rspec={r,1,5},round=r,/max=999,chstyle=2, - ctitle=\lvert\pi^k-\sfrac mn\rvert<0.5\times10^{-r}] + ctitle=\abs{\pi^k-\sfrac mn}<0.5\times10^{-r}] { \pi,\pi^2,\pi^3,\pi^{1/2},\pi^{1/3}}[r=1][/s] \end{verbatim} $\Longrightarrow$ \tabulate[ff,rspec={r,1,5},round=r,/max=999,chstyle=2, - ctitle=\lvert\pi^k-\sfrac mn\rvert<0.5\times10^{-r}] - { \pi ,\pi^2,\pi^3,\pi^{1/2},\pi^{1/3}}[r=1][/s]\index{fraction form!function values}\index{function value formatting!fraction form}\medskip{} + ctitle=\abs{\pi^k-\sfrac mn} < 0.5 + \times10^{-r}] + { \pi ,\pi^2,\pi^3,\pi^{1/2},\pi^{1/3}}[r=1][/s]\index{fraction form!function values}\index{function-value formatting!fraction form}\medskip{} Another place where a variable rounding value can be of value is when a function being tabulated changes slowly for each step in the row -variable value; the value of the cosine for instance changes from +variable value. The value of the cosine for instance changes from $1.0000$ to $\eval{\cos10\degree}[4]$ between $0\degree$ and $10\degree$. \emph{Part} of a table of the cosine might be something like the following, where values in the initial rows of the table are rounded to a higher -value than in later rows. \verb`round` is set to an expression involving -the row variable in boolean elements \verb`\theta<11` and \verb`\theta>10` -which evaluate to $0$ or $1$ so that \verb`round` takes the value -$6$ for the initial rows of the table and the value $4$ thereafter. +value than in later rows. In the example \verb`round` is set to an +expression in the row variable \verb`\theta` involving the boolean +expressions \verb`\theta<11` and \verb`\theta>10` which evaluate +to $0$ or $1$ depending on the value of \verb`\theta`. Thus \verb`round` +takes the value $6$ for the initial rows of the table and the value +$4$ thereafter. \begin{verbatim} \tabulate[o,rspec={\theta,1,6},calign=l,chnudge=15, round=6(\theta<11)+4(\theta>10)] @@ -1958,7 +2449,7 @@ $6$ for the initial rows of the table and the value $4$ thereafter. \end{verbatim} $\Longrightarrow$ \tabulate[o,rspec={\theta,1,6},calign=l,chnudge=15, round=6(\theta<11)+4(\theta>10)] - { \cos\theta }[\theta=8]\index{rounding value!row/col-dependent|)}\index{round@\texttt{round}|)} + { \cos\theta }[\theta=8]\index{rounding value!row/col.dependent@row/col.\ dependent|)}\index{round@\texttt{round}|)} \subsection{Differences: \texttt{diffs}} @@ -1973,59 +2464,58 @@ the \verb`\tabulate` command will include differences in a table. The \texttt{<non-negative integer>} is the maximum number of digits in a difference. \begin{verbatim} - \tabulate[rspec={x,0.01,1+(1.05-1)/0.01},rround=2, - rhnudge=9,chnudge=21,diffs=3] + \tabulate[rspec={x,0.01,6,2},diffs=3, + rhnudge=9,chnudge=21] + { \sinh x }[x=1,k=1][*4] \qquad + \tabulate[rspec={x,0.01,6,2},diffs=2, + rhnudge=9,chnudge=25] + { \sinh x }[x=1][*4]\qquad + \tabulate[rspec={x,0.01,6,2},diffs=4, + rhnudge=9,chnudge=30] { \sinh x }[x=1][*4] \end{verbatim} -$\Longrightarrow$ \tabulate[rspec={x,0.01,1+(1.05-1)/0.01},rround=2, - rhnudge=9,chnudge=21,diffs=3] +$\Longrightarrow$ \tabulate[rspec={x,0.01,6,2},diffs=3, + rhnudge=9,chnudge=21] + { \sinh x }[x=1,k=1][*4] \qquad + \tabulate[rspec={x,0.01,6,2},diffs=2, + rhnudge=9,chnudge=25] + { \sinh x }[x=1][*4]\qquad + \tabulate[rspec={x,0.01,6,2},diffs=4, + rhnudge=9,chnudge=30] { \sinh x }[x=1][*4]\medskip{} -I have deliberately chosen the function and settings here \textendash{} -particularly \texttt{diffs=3} \textendash{} to give a good result. -With the default right alignment of the function-value columns, it -is easy to get this wrong. The evidence will be either in the misalignment -of the first row of function values or unnecessary padding of differences -with leading zeros. It is a good idea to create your table first, -see how function values change between successive rows and judge how -many digits there will be in a difference. In the following examples -I have deliberately put \texttt{diffs=2} and \texttt{diffs=4} to show -the effect of a misjudgement. In the first table the first row of -function values is misaligned by one character. (\texttt{diffs=1} -would have produced a two-character misalignment.) In the second table -the unnecessary fourth digit for the differences results in pre-padding -with $0$. - -In the second table the function $-\sinh x$ is \emph{decreasing}, -showing how it is the \emph{absolute value of the difference} between -successive function values that is tabulated. A difference is always -a non-negative value. -\begin{verbatim} - \tabulate[rspec={x,0.01,1+(1.05-1)/0.01},rround=2, - rhnudge=9,chnudge=21,diffs=2] - { \sinh x }[x=1][*4]\qquad - \tabulate[rspec={x,0.01,1.05},rround=2, - rhnudge=9,chnudge=30,diffs=4] - { -\sinh x }[x=1][*4] +I have deliberately chosen the settings in the first table \textendash{} +\texttt{diffs=3} \textendash{} to give a good result. With the default +right alignment of the function-value columns, it is easy to get this +wrong. The evidence will be either in the misalignment of the first +row of function values (second table) or unnecessary padding of differences +with leading zeros (third table). It is a good idea to create your +table first, see how function values change between successive rows +and judge how many digits there will be in a difference. When the +\texttt{diffs} setting is too small, function values in the first +row are misaligned, the amount depending on how much too small. (A +left alignment of the function-value column is another way of tackling +this issue.) When the \texttt{diffs} setting is too big, alignment +is fine but differences are padded with unnecessary leading zeros, +meaning the column header will need a bigger nudge to bring \emph{it} +into alignment. + +In the next example the function is \emph{decreasing}, showing how +it is the \emph{absolute value of the difference} between successive +function values that is tabulated. A difference is always a non-negative +value. +\begin{verbatim} + \tabulate[rspec={x,0.01,6,2},diffs=2, + rhnudge=9,chnudge=21] + { e^{-x^2} }[x=0.05][*4] \end{verbatim} -$\Longrightarrow$ \tabulate[rspec={x,0.01,1+(1.05-1)/0.01},rround=2, - rhnudge=9,chnudge=21,diffs=2] - { \sinh x }[x=1][*4]\qquad - \tabulate[rspec={x,0.01,1+(1.05-1)/0.01},rround=2, - rhnudge=9,chnudge=21,diffs=4] - { -\sinh x }[x=1][*4]\medskip{} - -\noindent When the \texttt{diffs} setting is too small, function values -in the first row are misaligned, the amount depending on how much -too small. (A left alignment of the function value column is another -way of tackling this issue.) When the \texttt{diffs} setting is too -big, alignment is fine but differences are padded with unnecessary -leading zeros, meaning the column header will need a bigger nudge -to bring \emph{it} into alignment. \index{differences|)} +$\Longrightarrow$ \tabulate[rspec={x,0.01,6,2},diffs=2, + rhnudge=9,chnudge=21] + { e^{-x^2} }[x=0.05][*4] \index{differences|)} \subsection{Formatting special values: \texttt{Q?} and \texttt{A!}} -You\index{function value formatting!highlighting special values|(}\index{Q?@\texttt{Q?}|(}\index{A@\texttt{A"!}|(} +\label{subsec:QA-formatting}You\index{function-value formatting!highlighting special values|(}\index{Q?@\texttt{Q?}|(}\index{A@\texttt{A"!}|(} may wish to highlight or display in some special way a particular function value or values. \verb`\nmcTabulate` has two related settings that enable this: \verb`Q?=<tokens>` and \verb`A!=<tokens>`. As @@ -2033,53 +2523,55 @@ the names suggest: Question? and Answer! The question should be an expression that \texttt{l3fp} can digest and produce a boolean answer to (1 for `true', 0 for `false'). -\emph{This is not a \LaTeX{} expression};\emph{ this is an }\verb`l3fp` -\emph{expression}.\footnote{Documentation about \texttt{l3fp }can be found in \texttt{interface3.pdf}, -which is part of the \texttt{l3kernel} bundle.} For the user it should be enough to know that an expression formed -from decimal numbers (but only with the dot decimal point), parentheses -\verb`( )`, the familiar arithmetic symbols, \verb`+`,\texttt{ }\verb`-`,\texttt{ -}\verb`*`,\texttt{ }\verb`/` and \verb`^`, relation symbols \verb`<`,\texttt{ -}\verb`>`,\texttt{ }\verb`=` and combinations like \verb`!=` (for -$\ne$),\texttt{ }\verb`>=` (for $\ge$), and\texttt{ }\verb`<=` -(for $\le$) will be digested by \verb`l3fp`. In addition there are -\verb`||` for logical Or, \verb`&&` for logical And, and \verb`!` -for logical Not; \verb`exp(1)` for $e$ and \verb`pi` (no backslash) -for $\pi$. \texttt{numerica-tables} provides \verb`MAX`\index{MAX@\texttt{MAX}} -and \verb`MIN`\index{MIN@\texttt{MIN}} for the maximum and minimum -function values tabulated, and uses \verb`@` to denote the current -function value. +\emph{This is not a \LaTeX{} expression but an }\verb`l3fp` \emph{expression}.\footnote{Documentation about \texttt{l3fp }can be found in \texttt{interface3.pdf}, +which is part of the \texttt{l3kernel} bundle.} For the user it should suffice to know that an expression formed +from decimal numbers (but \verb`l3fp` knows only the decimal dot), +parentheses \verb`( )`, the familiar arithmetic symbols, \verb`+`,\texttt{ +}\verb`-`,\texttt{ }\verb`*`,\texttt{ }\verb`/` and \verb`^`, +relation symbols \verb`<`,\texttt{ }\verb`>`,\texttt{ }\verb`=` +and combinations like \verb`!=` (for $\ne$),\texttt{ }\verb`>=` +(for $\ge$), and\texttt{ }\verb`<=` (for $\le$) will be digested +by \verb`l3fp`. In addition there are \verb`||` for logical Or, +\verb`&&` for logical And, and \verb`!` for logical Not; \verb`exp(1)` +for $e$ and \verb`pi` (no backslash) for $\pi$. \texttt{numerica-tables} +provides \verb`MAX`\index{MAX@\texttt{MAX}} and \verb`MIN`\index{MIN@\texttt{MIN}} +for the maximum and minimum function values tabulated, and uses \verb`@` +to denote the function value of the current cell. So, a query might be \verb`Q?=@<0`, \emph{Is the current function value negative?}, or \verb`Q?={@>=pi}`, \emph{Is the current function value greater than or equal to $\pi$?} (The braces hide the equality -sign in the \emph{key=value} settings option.) \verb`Q?={@=MIN}` -(again note the braces) is the question: \emph{Is the current function -value equal to the minimum function value for the whole table?} +sign.) \verb`Q?={@=MIN}` (again note the braces) is the question: +\emph{Is the current function value equal to the minimum function +value for the whole table?} The answer must be in the form of a \LaTeXe{} formatting statement, -again using \verb`@` to denote the current function value. Thus \verb`A!=\mathbf{@}` -is a valid answer; so is \verb`A!=\color{red}{@}` (provided you have -\verb`\usepackage{color}` in the preamble); and so is \verb`A!=(@)`. -Another valid answer is \verb`A!= ` , meaning that function values -satisfying the \verb`Q?` question are omitted from the output. - -This can be useful to suppress `irrelevant' values in a particular -context. For example, suppose we wish to focus on the values of $\cos(m\pi/n)$ -lying between $0$ and $\tfrac{1}{2}$ inclusive for certain values -of $m$ and $n$. Rather than cluttering the table with values outside -that interval, we suppress them (the two occurrences of `\verb`1e-14`' -in the query are there to prevent rounding errors confusing the result): -\begin{verbatim} - \tabulate[rspec={n,1,1+(15-4)},rules=Tth,rround=0, - rpos=2,cspec={m,1,1+(5-2)},chstyle=2, - ctitle=*,Q?={@<-1e-14||@>0.5+1e-14},A!=] - { \cos(m\pi/n) }[n=4,m=2][*4] +again using \verb`@` to denote the function value of the current +cell. Thus \verb`A!=\mathbf{@}` is a valid answer; so is \verb`A!=\color{red}{@}` +(provided you have \verb`\usepackage{color}` in the preamble); and +so is \verb`A!=(@)`. Another valid answer is \verb`A!= ` , meaning +that function values satisfying the \verb`Q?` question are omitted +from the output. + +This can be useful to suppress `irrelevant' values in particular +contexts. For example, the \emph{non-zero} values of \verb`\binom{n}{m}`, +displaying as $\binom{n}{m}$, are the ones of interest. Rather than +cluttering the table with $0$s, suppress them, first by finding them +(\verb`Q?={@=0}`), and then by excising them (\verb`A!= ` ). The +table suppresses display of the header row with the \verb`headless`\index{headless@\texttt{headless}} +setting and instead displays it in the footer with the \verb`foot=''`\index{foot@\texttt{foot}}\index{footer!copies header} +setting, automatically changing what would have been $n\:\!\backslash\:\!m$ +in the header to $n\:\!/\:\!m$ in the footer. +\begin{verbatim} + \tabulate[rspec={n,1,5},rhnudge=-18,rfont=bf,chfont=bf, + cspec={m,1,5},ctitle=\binom nm\qquad, + headless,rules=f',foot='',Q?={@=0},A!=] + { \binom{n}{m} }[n=1,m=1] \end{verbatim} -$\Longrightarrow$ \tabulate - [rspec={n,1,1+(15-4)},rround=0,rpos=2,rules=Tth, - cspec={m,1,1+(5-2)},ctitle=*,chstyle=2, - Q?={@<-1e-14||@>0.5+1e-14},A!=] - { \cos(m\pi/n) }[n=4,m=2][*4] +$\Longrightarrow$ \tabulate[rspec={n,1,5},rhnudge=-18,rfont=bf,chfont=bf, + cspec={m,1,5},ctitle=\binom nm\qquad, + headless,rules=f',foot='',Q?={@=0},A!=] + { \binom{n}{m} }[n=1,m=1] \subsubsection{Star option: \texttt{\textbackslash nmcTabulate{*}}} @@ -2093,79 +2585,88 @@ display the first such instance. Like other starred commands in the you do not need an answering \verb`A!` to the query \verb`Q?` since no formatting of table values is involved. \begin{verbatim} - \tabulate*[rspec={n,1,1+(15-4)},cspec={m,1,1+(5-2)}, + \tabulate*[rspec={n,1,12},cspec={m,1,4)}, Q?={@<-1e-14||@>0.5+1e-14}] { \cos(m\pi/n) }[n=4,m=2][*4] \end{verbatim} $\Longrightarrow$ \tabulate* - [rspec={n,1,1+(15-4)},cspec={m,1,1+(5-2)}, + [rspec={n,1,12},cspec={m,1,4}, Q?={@<-1e-14||@>0.5+1e-14}] - { \cos(m\pi/n) }[n=4,m=2][*4]. Indeed, if you omit the \verb`Q?` and \verb`A!` settings from -the previous table so that all function values are visible then this -is the value that follows $0.5000$ in the \verb`m=2` column \textendash{} -the first function value encountered outside the interval $[0,0.5]$. + { \cos(m\pi/n) }[n=4,m=2][*4]. Indeed, if you omit the \verb`Q?` setting from the previous table +so that all function values are visible then this is the value that +follows $0.5000$ in the \verb`m=2` column, the first function value +encountered outside the interval $[0,0.5]$. (The \verb`1e-14` is +to ensure rounding errors don't give a spurious result.) If you want the \emph{maximum} value that has been tabulated then, from version 3 of \texttt{numerica-tables}, you do not even need the query: when \verb`\tabulate` is starred, \verb`Q?` is initialized -behind the scenes to \verb`@=MAX`\index{MAX@\texttt{MAX}}.\footnote{\noindent In the unlikely event that someone \emph{consistently} wanted -some other query to be asked \textendash{} the minimum value perhaps, -or first negative value or \ldots{} \textendash{} please let the author -know. It would be straightforward to use a package option to give -a choice in this matter.} Thus, repeating the example from \ref{sec:Column-variable-settings}, -\begin{verbatim} - \tabulate[rspec={x,0.2,6},rhead=x\backslash k, - cvar=k,cstep=2,cstop=9] - { \sin kx }[k=3,x=0] - \tabulate*[rspec={x,0.2,6},rhead=x\backslash k, - cvar=k,cstep=2,cstop=9] - { \sin kx }[k=3,x=0] -\end{verbatim} -$\Longrightarrow$ \tabulate - [rspec={x,0.2,6},rhead=x\backslash k, - cvar=k,cstep=2,cstop=9] - { \sin kx }[k=3,x=0][*] -\tabulate* - [rspec={x,0.2,6},rhead=x\backslash k, - cvar=k,cstep=2,cstop=9] - { \sin kx }[k=3,x=0] [*] +behind the scenes to \verb`@=MAX`\index{MAX@\texttt{MAX}}. Thus, +repeating the example from \ref{sec:Column-variable-settings}, a +visual check of the table shows that the starred command has, indeed, +isolated the maximum value displayed: +\begin{verbatim} + \tabulate[rspec={x,0.2,6},cspec={k,2,4},chnudge=27] + { \sin kx }[k=3,x=0] $\longrightarrow + \tabulate*[rspec={x,0.2,6},cspec={k,2,4},chnudge=27] + { \sin kx }[k=3,x=0] $ +\end{verbatim} +$\Longrightarrow$ \tabulate[rspec={x,0.2,6},cspec={k,2,4},chnudge=27] + { \sin kx }[k=3,x=0.2][*] $\longrightarrow + \tabulate*[rspec={x,0.2,6},cspec={k,2,4},chnudge=27] + { \sin kx }[k=3,x=0.2]$ + +\paragraph{Package option} + +There\index{package options} is a package option \verb`Q?*`\index{Q?*@\texttt{Q?{*}}} +available which can be set to give some other default query than \verb`@=MAX` +if you so wish. For instance +\begin{verbatim} + \usepackage[Q?*={@=MIN}]{numerica-tables} +\end{verbatim} +makes `what is the minimum value tabulated?' the default query for +a \verb`\tabulate*` command. Or, \verb`Q?*=@>0` makes `what is +the first positive value encountered?' the default query for a \verb`\tabulate*` +command, and so on. \paragraph{Errors} If\index{error messages} \emph{no} function value satisfies a query then a message is generated: \begin{verbatim} - \tabulate*[rspec={n,1,1+(15-4)}, - cspec={m,1,1+(5-2)},Q?=@>1] + \tabulate*[rspec={n,1,12)},cspec={m,1,4},Q?=@>1] { \cos(m\pi/n) }[n=4,m=2][*4] \end{verbatim} $\Longrightarrow$ \tabulate* [rspec={n,1,1+(15-4)},cspec={m,1,1+(5-2)}, Q?=@>1] - { \cos(m\pi/n) }[n=4,m=2][*4]\index{Q?@\texttt{Q?}|)}\index{A@\texttt{A"!}|)} + { \cos(m\pi/n) }[n=4,m=2][*4] + +\noindent Note that the same message is presented if the error arises +from the package option query, which may well be confusing (for a +moment) since there is no explicit query present in the settings option.\index{Q?@\texttt{Q?}|)}\index{A@\texttt{A"!}|)} \paragraph{Scientific notation} If you want the number output in scientific notation when the star option is chosen, then enter the exponent mark in the trailing number-format -option. This is straightforward for a letter like the commonly used -\verb`e`, but remember that if you enter the \verb`x` option you -will need to place the \verb`\tabulate*` command between math delimiters, -otherwise the \verb`\times` symbol resulting from the \verb`x` option -will generate a \LaTeX{} error (`Missing \$ inserted'): -\begin{verbatim} - $ - \tabulate*[rspec={n,1,1+(15-4)},cspec={m,1,1+(5-2)}, - Q?={@<-1e-14||@>0.5+1e-14},A!=] - { \cos(m\pi/n) }[n=4,m=2][*4x] - $ +option of the \verb`\tabulate*` command. This is straightforward +for a mark like the commonly used letter \verb`e`, but remember that +if you enter \verb`x` you will need to place the \verb`\tabulate*` +command between math delimiters, otherwise the \verb`\times` symbol +resulting from the \verb`x` option will generate a \LaTeX{} error +(`Missing \$ inserted'). Remembering the \verb`$` signs gives, +e.g., +\begin{verbatim} + $ \tabulate*[rspec={n,1,12},cspec={m,1,4}, + Q?={@<-1e-14||@>0.5+1e-14}] + { \cos(m\pi/n) }[n=4,m=2][*4x] $ \end{verbatim} $\Longrightarrow$ $ - \tabulate* - [rspec={n,1,1+(15-4)},cspec={m,1,1+(5-2)}, - Q?={@<-1e-14||@>0.5+1e-14},A!=] + \tabulate*[rspec={n,1,12},cspec={m,1,4}, + Q?={@<-1e-14||@>0.5+1e-14}] { \cos(m\pi/n) }[n=4,m=2][*4x] - $.\index{formatting!function values|)}\index{function value formatting|)}\index{function value formatting!highlighting special values|)} + $.\index{formatting!function values|)}\index{function-value formatting|)}\index{function-value formatting!highlighting special values|)} \section{Other matters} @@ -2188,36 +2689,32 @@ one tabulated function value. \eval[env=$]{(\tabulate [rspec={n,1,15},cspec={m,1,5},Q?={@=MAX}] { \cos(m\pi/n) }[n=4,m=2][*4])\sinh t + - (\tabulate[rspec={n,1,15},cspec={m,1,5}, - Q?={@=MIN}] - { \sin(m\pi/n) }[n=4,m=2][*4])\cosh t - }[t=2][4] + (\tabulate[rspec={n,1,15},cspec={m,1,5},Q?={@=MIN}] + { \sin(m\pi/n) }[n=4,m=2][*4])\cosh t } + [t=2][4] \end{verbatim} -$\Longrightarrow$ \eval{$ - (\tabulate - [rspec={n,1,15},cspec={m,1,5}, - Q?={@=MAX}] - { \cos(m\pi/n) }[n=4,m=2][*4])\sinh t + - (\tabulate - [rspec={n,1,15},cspec={m,1,5}, - Q?={@=MIN}] - { \sin(m\pi/n) }[n=4,m=2][*4])\cosh t - $}[t=2][4]. +$\Longrightarrow$ \eval[env=$]{(\tabulate + [rspec={n,1,15},cspec={m,1,5},Q?={@=MAX}] + { \cos(m\pi/n) }[n=4,m=2][*4])\sinh t + + (\tabulate[rspec={n,1,15},cspec={m,1,5},Q?={@=MIN}] + { \sin(m\pi/n) }[n=4,m=2][*4])\cosh t } + [t=2][4]. Forming the table \begin{verbatim} - \tabulate[rspec={n,1,15},rround=0,rpos=2,rules=Tth, + \tabulate[rspec={n,1,15,0},rpos=2,rules=Tth, cspec={m,1,5},ctitle=*,chstyle=2] { \cos(m\pi/n) }[n=4,m=2][*4] \end{verbatim} -for the cosine and the table +for the cosine (not presented here) and the table \begin{verbatim} - \tabulate[rspec={n,1,15},rround=0,rpos=2,rules=Tth, - cspec={m,1,5},ctitle=*,chstyle=2] + \tabulate[rspec={n,1,15,0},rpos=2,rules=Tth, + cspec={m,1,5},chstyle=2,ctitle=*] { \sin(m\pi/n) }[n=4,m=2][*4] \end{verbatim} -for the sine and checking the entries shows that indeed the maximum -and minimum values are $0.9397$ and $-1.0000$ respectively. +for the sine (also not presented here) and checking the entries shows +that indeed the maximum and minimum values are $0.9397$ and $-1.0000$ +respectively. If the \verb`Q?` setting is not satisfied by any function value a familiar error message is shown \textendash{} with a tweak: @@ -2237,10 +2734,10 @@ $\Longrightarrow$ \eval{$ \noindent Here, the \verb`(2)` tells us that the message refers to a command at the second level, a \emph{nested} command. -Perhaps a more likely situation is to want to nest other commands -within a \verb`\tabulate` command. I give an example in the documentation -to the associated package \verb`numerica-plus` around the timing -of signals between points fixed on a rotating disk. +A more likely situation is to want to nest other commands within a +\verb`\tabulate` command. I give an example in the documentation +to the associated package \verb`numerica-plus` about timing of signals +between points fixed on a rotating disk. \subsection{Saving tables to file} @@ -2257,19 +2754,15 @@ In the following example, a table is created and then saved to file and to the macro \verb`\mytable` by the subsequent \verb`\reuse` command: \begin{verbatim} - \tabulate - [rspec={x,0.25,5},rround=2,rhead=x, - ralign=r,rhnudge=9, - cspec={k,0.25,3},chstyle=2, - chround=2,calign=r,ctitle=**, - rules=TthB] - { a\sin kx }[a=2/\pi,{k}=3,{x}=0][*] - \reuse{mytable} + \tabulate[rspec={x,0.25,5,2},rhnudge=9,rules=TthB, + cspec={k,0.25,3,2},chstyle=2,ctitle=**] + { a\sin kx }[a=2/\pi,{k}=3,{x}=0.25][*] + \reuse[renew]{mytable} \end{verbatim} $\Longrightarrow$ \tabulate - [rspec={x,0.25,(5)},rround=2, + [rspec={x,0.25,5},rround=2, rhead=x,ralign=r,rhnudge=9, - cspec={k,0.25,(3)},chstyle=2, + cspec={k,0.25,3},chstyle=2, chround=2,calign=r,ctitle=**,rules=TthB] { a\sin kx }[a=2/\pi,{k}=3,{x}=0][*] \reuse[renew]{mytable}\medskip{} @@ -2278,37 +2771,29 @@ $\Longrightarrow$ \tabulate \noindent\verb`\mytable` $\Longrightarrow$ \mytable \medskip{} -\noindent Certainly \verb`\mytable` contains the table. - -If we use the \verb`view` setting with \verb`\reuse` we can see -that \verb`\mytable` and its contents have also been saved to file: -\begin{verbatim} - \reuse[view]{} -\end{verbatim} -$\Longrightarrow$ \reuse[view]{} - -The file that \verb`\mytable` is saved to is the \texttt{.nmc} file +\noindent Yes, \verb`\mytable` contains the table. The macro and +its contents have also been saved to file, the \texttt{.nmc} file of the current document, hence \texttt{numerica-tables.nmc} in the present instance. The contents of this file can be edited in a text -editor, or some limited file operations can be effected with the \verb`\reuse` +editor, or some limited file operations are possible with the \verb`\reuse` command. These have been described in the associated document \texttt{numerica.pdf}. \subsection{Viewing the \protect\LaTeX{} form} -In\index{tables!viewing LaTeX form@viewing \LaTeX{} form} previous -versions of \texttt{numerica-tables} the \verb`dbg` and \verb`view`\index{view@\texttt{view}} -settings were disabled. In version 3, they have been enabled to the -extent that the \LaTeX{} form of a table can be viewed by entering -either \verb`dbg=11` or, less nerdishly, \verb`view` into the settings -option of \verb`\nmcTabulate`. In the example I first create the -table and then use the \verb`view` setting: +\label{subsec:Viewing-latex-form}In\index{tables!viewing LaTeX form@viewing \LaTeX{} form} +previous versions of \texttt{numerica-tables} the \verb`dbg` and +\verb`view`\index{view@\texttt{view}} settings were disabled. In +version 3, they have been enabled to the extent that the \LaTeX{} form +of a table can be viewed by entering either \verb`dbg=11` or, less +nerdishly, \verb`view` into the settings option of \verb`\nmcTabulate`. +In the example a familiar table is specified and built in \LaTeX{} +and its form displayed with the \verb`view` setting: \begin{verbatim} - - \tabulate[view,rvar=x,rstep=0.2,rstop=1] - { \sin x }[x=0] + \tabulate[view,rspec={x,0.2,5}] + { \sin x }[x=0.2] \end{verbatim} -$\Longrightarrow$ \tabulate [view,rvar=x,rstep=0.2,rstop=1] - { \sin x }[x=0] +$\Longrightarrow$ \tabulate[view,rspec={x,0.2,5}] + { \sin x }[x=0.2] \chapter{Reference summary} @@ -2316,134 +2801,166 @@ $\Longrightarrow$ \tabulate [view,rvar=x,rstep=0.2,rstop=1] \texttt{\textbackslash nmcTabulate, \textbackslash tabulate} +\subsubsection*{Package options} +\begin{itemize} +\item default rule configuration: \verb`rules`, \verb`norules`; see \ref{sec:Package-options}, +\ref{subsec:Rules:-rules-setting}. +\item default query for \verb`\tabulate*`: \verb`Q?*`; see \ref{sec:Star-option}. +\end{itemize} + \section{Settings for \texttt{\textbackslash nmcTabulate}} -\subsubsection*{Row-variable specification: uniform case \ref{subsec:Row-var-spec-uniform}} +\subsubsection*{Row variable specification: uniform case } + +See \ref{subsec:Row-var-spec-uniform}. \begin{center} \begin{center} -\begin{tabular}{ll>{\raggedright}p{4cm}>{\raggedright}p{3cm}} +\begin{tabular}{l>{\raggedright}p{2cm}>{\raggedright}p{4cm}>{\raggedright}p{3cm}} \toprule -{\small key} & {\small type} & {\small meaning} & {\small comment}\tabularnewline +{\small key} & {\small type} & {\small meaning } & {\small comment}\tabularnewline \midrule {\small\texttt{rvar}} & {\small token(s)} & {\small row variable} & \tabularnewline -{\small\texttt{rstep}} & {\small real num} & {\small step size} & \tabularnewline -{\small\texttt{rstop}} & {\small real num} & {\small stop value} & \multirow{2}{3cm}{either {\small\texttt{rstop}}{\small{} or }{\small\texttt{rows}}{\small , -not both}}\tabularnewline -{\small\texttt{rows}} & {\small int} & {\small number of rows} & \tabularnewline -{\small\texttt{rspec}} & {\small comma list} & {\small\texttt{\{start}}{\small , }{\small\texttt{step}}{\small , }{\small\texttt{rows\}}} & {\small short form spec.}\tabularnewline +{\small\texttt{rstep}} & {\small real num.} & {\small step size} & \tabularnewline +{\small\texttt{rstop}} & {\small real num.} & {\small stop value} & {\small excludes }{\small\texttt{rows}}\tabularnewline +{\small\texttt{rows}} & {\small int} & {\small number of rows} & {\small excludes }{\small\texttt{rstop}}\tabularnewline +{\small\texttt{rspec}} & {\small comma list} & {\small\texttt{\{rvar}}{\small , }{\small\texttt{rstep}}{\small , }{\small\texttt{rows\}}} & {\small short form spec.}\tabularnewline +{\small\texttt{rround}} & {\small int} & {\small rounding} & {\small default: }{\small\texttt{1}}\tabularnewline \bottomrule \end{tabular} -\par\end{center} +\par\end{center}\pagebreak{} \par\end{center} -\subsubsection*{Row-variable specification: non-uniform case \ref{subsec:Row-var-spec-nonuniform}} -\begin{center} +\subsubsection*{Row variable specification: non-uniform case} + +See \ref{subsec:Row-var-spec-nonuniform}. + \begin{center} -\begin{tabular}{ll>{\raggedright}p{4cm}>{\raggedright}p{3cm}} +\begin{tabular}{l>{\raggedright}p{2cm}>{\raggedright}p{4cm}>{\raggedright}p{3cm}} \toprule {\small key} & {\small type} & {\small meaning} & {\small comment}\tabularnewline \midrule -{\small\texttt{rdata}} & {\small comma list} & {\small list of row-var. values} & {\small may be stored in a macro}\tabularnewline -{\small\texttt{rfile}} & {\small chars} & {\small file of row-var. values} & {\small file path/name}\tabularnewline -{\small\texttt{rverb}} & {\small int (}{\small\texttt{0}}{\small /}{\small\texttt{1}}{\small )} & {\small display }{\small\texttt{rdata}}{\small{} or }{\small\texttt{rfile}}{\small{} -values verbatim} & {\small default }{\small\texttt{0}}\tabularnewline -{\small\texttt{rfunc}} & {\small token(s)} & {\small step function specifying row-var. values} & \tabularnewline +{\small\texttt{rfunc}} & {\small token(s)} & {\small formula for row var. values} & \tabularnewline +{\small\texttt{rdata}} & {\small comma list or macro} & {\small list or macro (containing list) of row var. values} & \tabularnewline +{\small\texttt{rfile}} & {\small chars} & {\small filepath/filename} & {\small file contains list of row var. values}\tabularnewline +{\small\texttt{rdelim}} & {\small char} & {\small item separator for }{\small\texttt{rdata}}{\small{} or }{\small\texttt{rfile}}{\small{} +lists} & {\small defaults to }{\small\texttt{,}}{\small{} or }{\small\texttt{;}}{\small{} +depending as }{\small\texttt{.}}{\small{} or }{\small\texttt{,}}{\small{} +is decimal mark}\tabularnewline +{\small\texttt{rverb}} & {\small fp (}{\small\texttt{0/0.5/1}}{\small )} & {\small display }{\small\texttt{rdata}}{\small , }{\small\texttt{rfile}}{\small{} +values verbatim (}{\small\texttt{1}}{\small ), or slash fractions formatted +(}{\small\texttt{0.5}}{\small )} & {\small initialized to }{\small\texttt{0}}\tabularnewline \bottomrule \end{tabular} \par\end{center} -\par\end{center} -\subsubsection*{Row-variable column formatting \ref{subsec:Row-var-col-formatting}} +\subsubsection*{Row variable column formatting} + +See \ref{subsec:Row-var-col-formatting}. \begin{center} \begin{center} -\begin{tabular}{ll>{\raggedright}p{4cm}l} +\begin{tabular}{l>{\raggedright}p{2cm}>{\raggedright}p{4cm}>{\raggedright}p{2cm}} \toprule {\small key} & {\small type} & {\small meaning} & {\small initial}\tabularnewline \midrule -{\small\texttt{rround}} & {\small int} & {\small rounding} & {\small\texttt{1}}\tabularnewline +{\small\texttt{rpos}} & {\small int (}{\small\texttt{0}}{\small\ldots}{\small\texttt{4}}{\small )} & {\small column placement} & {\small\texttt{1}}\tabularnewline {\small\texttt{ralign}} & {\small char (}{\small\texttt{r/c/l}}{\small )} & {\small horizontal alignment} & {\small\texttt{r}}\tabularnewline {\small\texttt{rfont}} & {\small chars} & {\small font (}{\small\verb`\math<chars>`}{\small )} & \tabularnewline -{\small\texttt{rhead}} & {\small tokens} & {\small header} & {\small\texttt{rvar}}\tabularnewline -{\small\texttt{rhnudge}} & int & {\small nudge header }{\small{\small\verb`rhnudge`}}{\small{} -mu} & {\small\texttt{0}}\tabularnewline -{\small\texttt{rpos}} & {\small int (}{\small\texttt{0}}{\small\ldots}{\small\texttt{4}}{\small )} & & {\small\texttt{1}}\tabularnewline -{\small\texttt{rvar'}} & {\small token(s)} & {\small 2nd row variable col. spec.} & {\small\texttt{rvar}}\tabularnewline -{\small\texttt{rhead'}} & {\small token(s)} & {\small header of 2nd r-v col. (if it exists)} & {\small\texttt{rvar'}}\tabularnewline -{\small\texttt{rhnudge'}} & int & {\small nudge 2nd r-v col. header }{\small{\small\verb`rhnudge'`}}{\small{} +{\small\texttt{rhead}} & {\small tokens} & {\small header} & \tabularnewline +{\small\texttt{rhnudge}} & {\small fp} & {\small nudge header }{\small{\small\verb`<fp>`}}{\small{} mu} & {\small\texttt{0}}\tabularnewline +{\small\texttt{rhsize}} & {\small int (}{\small\texttt{-4}}{\small\ldots}{\small\texttt{5}}{\small )} & {\small font size relative to }{\small\verb`0=\normalsize`} & {\small\texttt{0}}\tabularnewline +{\small\texttt{rmath}} & {\small char (}{\small\texttt{s/t/d}}{\small )} & {\small script-, text-, displaystyle} & {\small\texttt{t}}\tabularnewline +{\small\texttt{rvar'}} & {\small tokens} & {\small 2nd row variable col. spec.} & \tabularnewline +{\small\texttt{rhead'}} & {\small tokens} & {\small header of 2nd row var. col. (if it exists)} & \tabularnewline +{\small\texttt{rhnudge'}} & {\small fp} & {\small nudge 2nd row var. col. header }{\small{\small\verb`<fp>`}}{\small{} mu} & {\small\texttt{0}}\tabularnewline -{\small\texttt{rfrac}} & {\small int (}{\small\texttt{0}}{\small\ldots 5)} & {\small fraction form} & {\small\texttt{0}}\tabularnewline \bottomrule \end{tabular} +\par\end{center}\pagebreak{} \par\end{center} -\par\end{center} -\subsubsection*{Column-variable specification \ref{sec:Column-variable-settings}.} +\subsubsection*{Column-variable specification } + +See \ref{sec:Column-variable-settings}. \begin{center} \begin{center} -\begin{tabular}{ll>{\raggedright}p{4cm}l} +\begin{tabular}{ll>{\raggedright}p{3cm}l} \toprule -{\small key} & {\small type} & {\small meaning} & {\small default}\tabularnewline +{\small key} & {\small type} & {\small meaning} & {\small comment}\tabularnewline \midrule {\small\texttt{cvar}} & {\small token(s)} & {\small column variable} & \tabularnewline -{\small\texttt{cstep}} & {\small real num} & {\small step size} & \tabularnewline -{\small\texttt{cstop}} & {\small real num} & {\small stop value} & {\small either }{\small\texttt{cstop}}\tabularnewline -{\small\texttt{cols}} & {\small int} & {\small number of columns} & {\small or }{\small\texttt{cols}}{\small , not both}\tabularnewline +{\small\texttt{cstep}} & {\small real num.} & {\small step size} & \tabularnewline +{\small\texttt{cstop}} & {\small real num.} & {\small stop value} & {\small either }{\small\texttt{cstop}}\tabularnewline +{\small\texttt{cols}} & {\small int} & {\small number of columns} & {\small or }{\small\texttt{cols}}\tabularnewline {\small\texttt{cspec}} & {\small comma list} & {\small\texttt{\{cvar,cstep}}{\small ,}{\small\texttt{cols\}}} & {\small short form spec.}\tabularnewline +{\small\texttt{chround}} & {\small int} & {\small col. var. rounding} & {\small default: }{\small\texttt{0}}\tabularnewline \bottomrule \end{tabular} \par\end{center} \par\end{center} -\subsubsection*{Column-variable header formatting \ref{subsec:Column-header-formatting}.} +\subsubsection*{Column-variable header formatting} + +See \ref{subsec:Column-header-formatting}. \begin{center} \begin{center} +{\small{}% \begin{tabular}{ll>{\raggedright}p{4cm}l} \toprule {\small key} & {\small type} & {\small meaning} & {\small default}\tabularnewline \midrule {\small\texttt{chstyle}} & {\small int (}{\small\texttt{0}}{\small\ldots}{\small\texttt{4}}{\small )} & {\small header style} & {\small\texttt{0}}\tabularnewline -{\small\texttt{ctitle}} & {\small token(s)} & {\small single col. alternative header} & \tabularnewline -{\small\texttt{chead}} & {\small token(s)} & {\small user-defined header} & \tabularnewline -{\small\texttt{calign}} & {\small char (r/c/l)} & {\small column alignment} & {\small\texttt{r}}\tabularnewline -{\small\texttt{chnudge}} & {\small int} & {\small nudge header }{\small{\small\verb`chnudge`}}{\small{} +{\small\texttt{chead}} & {\small token(s)} & {\small user-defined col. var. header} & \tabularnewline +{\small\texttt{calign}} & {\small char (}{\small\texttt{r}}{\small /}{\small\texttt{c}}{\small /}{\small\texttt{l}}{\small )} & {\small column alignment} & {\small\texttt{r}}\tabularnewline +{\small\texttt{chnudge}} & {\small fp} & {\small nudge header }{\small{\small\verb`chnudge`}}{\small{} mu} & {\small\texttt{0}}\tabularnewline -{\small\texttt{chround}} & {\small int} & {\small{} rounding} & {\small\texttt{0}}\tabularnewline +{\small\texttt{chfont}} & {\small chars} & {\small font (}{\small\verb`\math<chars>`}{\small )} & \tabularnewline +{\small\texttt{chmath}} & {\small char (}{\small\texttt{s}}{\small /}{\small\texttt{t}}{\small /}{\small\texttt{d}}{\small )} & {\small script-, text- or displaystyle} & {\small\texttt{t}}\tabularnewline +{\small\texttt{chsize}} & {\small int (}{\small\texttt{-4}}{\small\ldots}{\small\texttt{5}}{\small )} & {\small font size relative to }{\small\verb`0 => \normalsize`} & {\small\texttt{0}}\tabularnewline \bottomrule -\end{tabular} -\par\end{center}\newpage{} +\end{tabular}} +\par\end{center} \par\end{center} -\subsubsection*{Function-value formatting \ref{sec:Function-value-formatting}.} +\subsubsection*{Function-value formatting} + +See \ref{sec:Function-value-formatting}. \begin{center} \begin{center} -\begin{tabular}{cc>{\raggedright}p{4cm}c} +\begin{tabular}{cc>{\raggedright}p{5cm}c} \toprule -{\small key} & {\small type} & {\small meaning} & {\small default}\tabularnewline +{\small key} & {\small type} & {\small meaning} & {\small initial}\tabularnewline \midrule {\small\texttt{(pad)}} & {\small int} & {\small t-notation phantom padding} & \tabularnewline -{\small\texttt{signs}} & {\small int} & {\small sign handling for function-values} & {\small\texttt{0}}\tabularnewline -{\small\texttt{diffs}} & {\small int} & {\small insert differences \& pre-pad with zeros} & {\small\texttt{0}}\tabularnewline +{\small\texttt{signs}} & {\small int} & {\small sign handling for function values} & {\small\texttt{0}}\tabularnewline +{\small\texttt{diffs}} & {\small int} & {\small insert differences, pre-pad with $0$s} & {\small\texttt{0}}\tabularnewline +{\small\texttt{round}} & {\small tokens} & {\small row/col. dependent rounding value} & \tabularnewline {\small\texttt{Q?}} & {\small tokens} & {\small special cell conditional} & \tabularnewline -{\small\texttt{A!}} & {\small token(s)} & {\small special cell formatting} & \tabularnewline +{\small\texttt{A!}} & {\small tokens} & {\small special cell formatting} & \tabularnewline \bottomrule \end{tabular} +\par\end{center}\pagebreak{} \par\end{center} -\par\end{center} -\subsubsection*{Whole-of-table formatting \ref{sec:Whole-of-table-formatting}.} +\subsubsection*{Whole-of-table formatting } + +See \ref{sec:Whole-of-table-formatting}. \begin{center} \begin{center} \begin{tabular}{ll>{\raggedright}p{4cm}l} \toprule -{\small key} & {\small type} & {\small meaning} & {\small default}\tabularnewline +{\small key} & {\small type} & {\small meaning} & {\small initial}\tabularnewline \midrule -{\small\texttt{ctitle}} & {\small token(s)} & {\small collective title for function-value columns} & \tabularnewline - & {\small token(s)} & {\small inter-header/title row for} {\small function-value columns} & \tabularnewline -{\small\texttt{header}} & {\small int (}{\small\texttt{0/1}}{\small )} & {\small suppress/show header row} & {\small\texttt{1}}\tabularnewline -{\small\texttt{rules}} & {\small char(s)} & {\small horizontal rules template} & {\small\texttt{ThB}}\tabularnewline -{\small\texttt{foot}} & {\small token(s)} & {\small content of footer line} & \tabularnewline -{\small\texttt{rpos}} & {\small int (}{\small\texttt{0}}{\small\ldots}{\small\texttt{4}}{\small )} & {\small row variable } & {\small\texttt{1}}\tabularnewline -{\small\texttt{rbloc}} & {\small comma list} & {\small division of rows into blocks} & \tabularnewline +{\small\texttt{ctitle}} & {\small token(s)} & {\small collective title for columns} & \tabularnewline +{\small\texttt{csubttl}} & {\small token(s)} & {\small subtitle row for} {\small function- value cols} & \tabularnewline +{\small\texttt{calign}} & {\small char(}{\small\texttt{r}}{\small /}{\small\texttt{c}}{\small /}{\small\texttt{l}}{\small )} & {\small column alignment} & {\small\texttt{r}}\tabularnewline +{\small\texttt{headless}} & & {\small suppress header row} & \tabularnewline +{\small\texttt{foot}} & {\small token(s)} & {\small table-wide footer row} & \tabularnewline +{\small\texttt{rules}} & {\small char(s)} & {\small horizontal rule spec.} & {\small\texttt{ThB}}\tabularnewline +{\small\texttt{norules}} & & {\small cancel all rules} & \tabularnewline +{\small\texttt{rpos}} & {\small int (}{\small\texttt{0}}{\small\ldots}{\small\texttt{4}}{\small )} & {\small row variable col. position(s)} & {\small\texttt{1}}\tabularnewline +{\small\texttt{rbloc}} & {\small integer comma list} & {\small row block specification} & \tabularnewline +{\small\texttt{rblocsep}} & {\small length} & {\small extra space between row blocks} & {\small\texttt{1ex}}\tabularnewline +{\small\texttt{transpose}} & & {\small show funct. vals in rows} & \tabularnewline {\small\texttt{valign}} & {\small char (}{\small\texttt{t}}/{\small\texttt{m}}/{\small\texttt{b}}{\small )} & {\small vertical alignment of table relative to text baseline} & {\small\texttt{m}}\tabularnewline \bottomrule \end{tabular} @@ -2451,9 +2968,9 @@ mu} & {\small\texttt{0}}\tabularnewline \par\end{center} \subsubsection*{Miscellaneous settings} - -\verb`view`, equivalent to \verb`dbg=11`: show the \LaTeX{} expression -for the table. - +\begin{itemize} +\item \verb`view`, equivalent to \verb`dbg=11`: show the \LaTeX{} expression +for the table; see \ref{subsec:Viewing-latex-form}. +\end{itemize} {\small\printindex}{\small\par} \end{document} diff --git a/macros/latex/contrib/pageslts/README b/macros/latex/contrib/pageslts/README index 996d076901..e5fc3d7330 100644 --- a/macros/latex/contrib/pageslts/README +++ b/macros/latex/contrib/pageslts/README @@ -1,4 +1,4 @@ -README for pageslts package, 2015/12/21, v1.2f +README for pageslts package, 2024-11-20, v2.0a TABLE OF CONTENTS @@ -17,11 +17,14 @@ TABLE OF CONTENTS 1 INTRODUCTION ============== -This package puts the labels LastPage (\AtEndDocument) and -VeryLastPage (\AfterLastShipout) into the .aux file, -allowing the user to refer to the (very) last page of a -document. This might be particularly useful in places like -headers or footers. +This package puts the labels LastPage +(\AddToHook{enddocument/afterlastpage}, formerly +\AtEndDocument) and VeryLastPage (also +\AddToHook{enddocument/afterlastpage}, but formerly +\AfterLastShipout) into the .aux file, +allowing the user to refer to the last page of a document. +This might be particularly useful in places like headers or +footers. When more than one page numbering scheme is used, these references do not give the total number of pages. For this case the label LastPages is introduced. Additionally, at the @@ -39,7 +42,7 @@ the current total/absolute page number - in contrast to numbering scheme. \theCurrentPageLocal gives the current number of pages in the current page numbering scheme. \thepage and \theCurrentPageLocal are different e. g. when -\addtocounter{pageg}{...} or \setcounter{page}{...} were +\addtocounter{page}{...} or \setcounter{page}{...} were used. At the first page of the document a label pagesLTS.0 is created. This label can be referred to, too. Further labels @@ -58,27 +61,27 @@ may be distributed and/or modified under the conditions of the LaTeX Project Public License, either version 1.3c of this license or (at your option) any later version. This version of this license is in -http://www.latex-project.org/lppl/lppl-1-3c.txt +https://www.latex-project.org/lppl/lppl-1-3c.txt and the latest version of this license is in -http://www.latex-project.org/lppl.txt -and version 1.3c or later is part of all distributions -of LaTeX version 2005/12/01 or later. +https://www.latex-project.org/lppl.txt +and version 1.3c or later is part of all distributions of +LaTeX version 2005-12-01 or later. 2 DOWNLOAD ========== -`pageslts' is available on CTAN: -https://www.ctan.org/pkg/pageslts +"pageslts" is available on CTAN: +https://ctan.org/pkg/pageslts Also a ZIP file is provided that contains the files: the manual (pageslts.pdf), the example (pageslts-example.tex), -the compiled example (pageslts-example.pdf), +the compiled example (pageslts-example.pdf), driver (pageslts.drv), pageslts.dtx, -installation file (pageslts.ins), +installation file (pageslts.ins), the style file (pageslts.sty), and this README, already sorted in a TDS tree: -http://mirrors.ctan.org/install/macros/latex/contrib/pageslts.tds.zip +https://mirror.ctan.org/install/macros/latex/contrib/pageslts.tds.zip 3 INSTALLATION @@ -86,10 +89,10 @@ http://mirrors.ctan.org/install/macros/latex/contrib/pageslts.tds.zip Installation with ZIP file in TDS format ---------------------------------------- -The ZIP file `pageslts.tds.zip' contains the files +The ZIP file "pageslts.tds.zip" contains the files sorted in a TDS tree. Thus you can directly unpack the ZIP file inside a TDS tree. -See https://www.ctan.org/TDS-guidelines for an explanation +See https://ctan.org/TDS-guidelines for an explanation of TDS. Example: cd /...somewhere.../texmf @@ -106,11 +109,11 @@ a) Download the pageslts files from CTAN. b) Check for old `pagesLTS.sty' at other locations in your TeX installation and delete them (or back them up, but in a way TeX does NOT find them automatically). -c) Generate the package and driver files: +c) Generate the package and driver files, if necessary: tex pageslts.dtx -d) Install the file `pageslts.sty' in your TDS tree: +d) Install the file "pageslts.sty" in your TDS tree: cp pageslts.sty TDS:tex/latex/pageslts/ - Replace `TDS:' by the prefix of your TDS tree + Replace "TDS:" by the prefix of your TDS tree (texmf directory). e) Create the documentation, if necessary, e.g. pdflatex pageslts.dtx @@ -118,8 +121,8 @@ e) Create the documentation, if necessary, e.g. pdflatex pageslts.dtx makeindex -s gind.ist pageslts.idx pdflatex pageslts.dtx -f) Update the databases, if necessary, e.g. for teTeX: - mktexlsr .../texmf +f) Update the databases, if necessary, e.g. for TeXLive + texhash or mktexlsr. g) Create the pageslts-example.pdf, if necessary, e.g. pdflatex pageslts-example.tex pdflatex pageslts-example.tex @@ -133,64 +136,50 @@ h) Copy the documentation files to 4 ADDITIONAL PACKAGES ===================== -The pageslts.sty for LaTeX2e (i. e. all documents using the +The pageslts.sty for LaTeX2e (i.e. all documents using the pageslts package) requires: -- TeXFormat LaTeX2e, 2015/01/01 -- package atveryend, 2011/06/30, v1.8, https://www.ctan.org/pkg/atveryend -- package everyshi, 2001/05/15, v3.00, https://www.ctan.org/pkg/everyshi -- package kvoptions, 2011/06/30, v3.11, https://www.ctan.org/pkg/kvoptions -- package letltxmacro, 2010/09/02, v1.4, https://www.ctan.org/pkg/letltxmacro -- package ltxcmds, 2011/11/09, v1.22, https://www.ctan.org/pkg/ltxcmds -- package rerunfilecheck, 2011/04/15, v1.7, https://www.ctan.org/pkg/rerunfilecheck -- package undolabl, 2015/03/29, v1.0l, https://www.ctan.org/pkg/undolabl +- TeXFormat LaTeX2e, 2024-06-01 +- package undolabl, 2023-02-14, v1.0m, https://ctan.org/pkg/undolabl +- package kvoptions, 2022-06-15, v3.15, https://ctan.org/pkg/kvoptions +- if any of the options alphMult, AlphMulti, or fnsymbolmult is used: + package alphalph, 2019/12/09, v2.6, https://.ctan.org/pkg/alphalph The pageslts-example.tex requires the same files as all documents using the pageslts package, and additionally: -- class article, 2014/09/29, v1.4h, from classes.dtx: https://www.ctan.org/pkg/classes -- package alphalph, 2011/05/13, v2.4, https://www.ctan.org/pkg/alphalph -- package lipsum, 2014/07/27, v1.3, https://www.ctan.org/pkg/lipsum -- package showkeys, 2014/10/28, v3.17, https://www.ctan.org/pkg/showkeys -- package hyperref, 2012/11/06, v6.83m, https://www.ctan.org/pkg/hyperref -- package pageslts, 2015/12/21, v1.2f, https://www.ctan.org/pkg/pageslts - (Well, it is the example file for this package, and - because you are reading the README for the pageslts - package, it can be assumed that you already have some - version of it - is it the current one?) -which again load other packages -(see the result of the \listfiles command in the log-file - of the example). -Also the pageslts.dtx loads other packages -(for unpacking and constructing the documentation), +- class article, 2024/02/08, v1.4n, from classes.dtx: https://ctan.org/pkg/classes +- package alphalph, 2019/12/09, v2.6, https://ctan.org/pkg/alphalph +- package lipsum, 2021-09-20, v2.7, https://ctan.org/pkg/lipsum +- package showkeys, 2024/05/23, v3.21, https://ctan.org/pkg/showkeys +- package hyperref, 2024-10-30, v7.01k, https://ctan.org/pkg/hyperref +- package pageslts, 2015/12/21, v2.0a, https://ctan.org/pkg/pageslts + (Well, it is the example file for this package, and because you are + reading the README for the pageslts package, it can be assumed that + you already have some version of it - is it the current one?) +which again load other packages (see the result of the +\listfiles command in the log-file of the example). + +Also the pageslts.dtx loads other packages +(for unpacking and constructing the documentation), see "7.1 Downloads" in the manual -http://mirrors.ctan.org/macros/latex/contrib/pageslts/pageslts.pdf +https://mirror.ctan.org/macros/latex/contrib/pageslts/pageslts.pdf 5 PACKAGE COMPATIBILITY ======================= -* endfloat package: - pageslts is not compatible with very old versions of - endfloat(2.0 and older). - Just get the recent version of the endfloat package from - https://www.ctan.org/pkg/endfloat - -* lastpage package: - \usepackage[pagecontinue=false]{pageslts} - can simulate the behaviour of the lastpage package. - Loading old (!) versions of the lastpage package before - the pageslts package before the hyperref package results - in multiply definitions of the LastPage label. - -* undolabl package: - Version >= 1.0h is needed. +* This package really does not work with an old LaTeX format without hooks, + or without e-TEX, or with a pagesLTS package, or with + version 2.0 from 1992 of the endfloats package, or hyperref from 2015, + or _*OLD*_ versions of undolabl or lastpage or turnthepage and so on. * The romanbarpagenumber and pageslts package currently are - not compatible. + not yet compatible. + 6 AUTHOR/MAINTAINER ===================== - H.-Martin Mnch + H.-Martin Münch 7 BUG REPORTS @@ -201,12 +190,12 @@ A bug report should contain: warning messages. * \errorcontextlines=\maxdimen can be added in the TeX code to get more information in TeX error messages. -* Minimal test file that shows the problem, but does not - contain any unnecessary packages and code. +* Minimal test file that shows the problem, + but does not contain any unnecessary packages and code. * Used drivers/programs. * Version information about used packages and programs. -* If you are using LaTeX, then add "\listfiles". Then - a list of version information is printed at the end +* If you are using LaTeX, then add "\listfiles" to the document. + Then a list of version information is printed at the end of the LaTeX run. * Please no other files than the minimal test file. The other files .log, .dvi, .ps, .pdf are seldom @@ -216,11 +205,12 @@ A bug report should contain: Bug address ----------- Bug reports can be send to the maintainer: - H.-Martin Mnch + H.-Martin Münch <Martin [dot] Muench [at] Uni-Bonn [dot] de> 8 KNOWN PROBLEMS -================= +================ -* except those already mentioned above: none.
\ No newline at end of file +* except those already mentioned above: none, + but see chapter 3 of the documentation
\ No newline at end of file diff --git a/macros/latex/contrib/pageslts/pageslts-example.pdf b/macros/latex/contrib/pageslts/pageslts-example.pdf Binary files differindex fadf9f4121..9aac472f35 100644 --- a/macros/latex/contrib/pageslts/pageslts-example.pdf +++ b/macros/latex/contrib/pageslts/pageslts-example.pdf diff --git a/macros/latex/contrib/pageslts/pageslts.dtx b/macros/latex/contrib/pageslts/pageslts.dtx index b70a5ce689..108e2539be 100644 --- a/macros/latex/contrib/pageslts/pageslts.dtx +++ b/macros/latex/contrib/pageslts/pageslts.dtx @@ -1,29 +1,30 @@ % \iffalse meta-comment % % File: pageslts.dtx -% Version: 2015/12/21 v1.2f +% Version: 2024-11-20 v2.0a +% Info: Variants of last page labels % -% Copyright (C) 2010 - 2015 by -% H.-Martin M"unch <Martin dot Muench at Uni-Bonn dot de> +% Copyright © 2010 - 2024 by +% H.-Martin Münch <Martin dot Muench at Uni-Bonn dot de> % Portions of code copyrighted by other people as marked. % % This package first started as a revision of the lastpage % package of Jeffrey P. Goldberg (jeffrey+news at goldmark dot org), -% but it became obvious that a replacement was needed. +% but I thought a replacement was needed. % % This work may be distributed and/or modified under the % conditions of the LaTeX Project Public License, either % version 1.3c of this license or (at your option) any later % version. This version of this license is in -% http://www.latex-project.org/lppl/lppl-1-3c.txt +% https://www.latex-project.org/lppl/lppl-1-3c.txt % and the latest version of this license is in -% http://www.latex-project.org/lppl.txt +% https://www.latex-project.org/lppl.txt % and version 1.3c or later is part of all distributions of -% LaTeX version 2005/12/01 or later. +% LaTeX version 2005-12-01 or later. % % This work has the LPPL maintenance status "maintained". % -% The Current Maintainer of this work is H.-Martin Muench. +% The Current Maintainer of this work is H.-Martin Münch. % % This work consists of the main source file pageslts.dtx, % the README, and the derived files @@ -31,12 +32,12 @@ % pageslts.ins, pageslts.drv, % pageslts-example.tex, pageslts-example.pdf. % -% 'pageslts' is available on CTAN: -% https://www.ctan.org/pkg/pageslts +% "pageslts" is available on CTAN: +% https://ctan.org/pkg/pageslts % % Also a TDS.ZIP file is provided that contains all the files % already sorted in a TDS tree: -% http://mirrors.ctan.org/install/macros/latex/contrib/pageslts.tds.zip +% https://mirror.ctan.org/install/macros/latex/contrib/pageslts.tds.zip % %<*ignore> \begingroup @@ -51,10 +52,10 @@ %</ignore> %<*install> \input docstrip.tex -\Msg{*********************************************************************************} -\Msg{* Installation} -\Msg{* Package: pageslts 2015/12/21 v1.2f Refers to special pages' numbers/names (HMM)} -\Msg{*********************************************************************************} +\Msg{**********************************************************************************} +\Msg{* Installation *} +\Msg{* Package: pageslts 2024-11-20 v2.0a Refers to special pages' numbers/names (HMM)*} +\Msg{**********************************************************************************} \keepsilent \askforoverwritefalse @@ -65,10 +66,11 @@ This is a generated file. Project: pageslts -Version: 2015/12/21 v1.2f +Version: 2024-11-20 v2.0a +Info: Variants of last page labels -Copyright (C) 2010 - 2015 by - H.-Martin M"unch <Martin dot Muench at Uni-Bonn dot de> +Copyright (C) 2010 - 2024 by + H.-Martin Muench <Martin dot Muench at Uni-Bonn dot de> Portions of code copyrighted by other people as marked. IMPORTANT NOTICE: @@ -88,20 +90,15 @@ of backslash pagenumbering, but in that case this package does not see the change in the page numbering scheme and will make mistakes. The package takes options. -The usual disclaimer applies: -If it doesn't work right that's your problem. -(Nevertheless, send an e-mail to the maintainer - when you find an error in this package.) - This work may be distributed and/or modified under the conditions of the LaTeX Project Public License, either version 1.3c of this license or (at your option) any later version. This version of this license is in - http://www.latex-project.org/lppl/lppl-1-3c.txt + https://www.latex-project.org/lppl/lppl-1-3c.txt and the latest version of this license is in - http://www.latex-project.org/lppl.txt + https://www.latex-project.org/lppl.txt and version 1.3c or later is part of all distributions of -LaTeX version 2005/12/01 or later. +LaTeX version 2005-12-01 or later. This work has the LPPL maintenance status "maintained". @@ -109,7 +106,7 @@ The Current Maintainer of this work is H.-Martin Muench. This package first started as a revision of the lastpage package of Jeffrey P. Goldberg (jeffrey+news at goldmark dot org), -but it became obvious that a replacement was needed. +but I thought a replacement was needed. This work consists of the main source file pageslts.dtx, the README, and the derived files @@ -118,9 +115,9 @@ the README, and the derived files pageslts-example.tex, pageslts-example.pdf. In memoriam - Claudia Simone Barth + 1996/01/30 - Tommy Muench + 2014/01/02 - Hans-Klaus Muench + 2014/08/24 + Claudia Simone Barth + 1996-01-30 + Tommy Muench + 2014-01-02 + Hans-Klaus Muench + 2014-08-24 \endpreamble \let\MetaPrefix\DoubleperCent @@ -165,7 +162,6 @@ In memoriam %</ignore> % % \section{The documentation driver file} -% % The next bit of code contains the documentation driver file for % \TeX , i.\,e., the file that will produce the documentation you % are currently reading. It will be extracted from this file by the @@ -175,20 +171,15 @@ In memoriam % % \begin{macrocode} %<*driver> -\NeedsTeXFormat{LaTeX2e}[2015/01/01] -\ProvidesFile{pageslts.drv}[2015/12/21 v1.2f - Refers to special pages' numbers/names (HMM)] -\documentclass[landscape]{ltxdoc}[2015/03/26]% v2.0w -\usepackage{geometry}[2010/09/12]% v5.6 -\usepackage{holtxdoc}[2012/03/21]% v0.24 -%% pageslts may work with earlier versions of LaTeX2e and those -%% class and packages, but this was not tested. -%% Please consider updating your LaTeX, class, and packages -%% to the most recent version (if they are not already the most -%% recent version). +\NeedsTeXFormat{LaTeX2e}[2022-11-01] +\ProvidesFile{pageslts.drv}% + [2024-11-20 v2.0a Refers to special pages' numbers/names (HMM)] +\documentclass[landscape]{ltxdoc}[2024/02/08]% v2.1j Standard LaTeX documentation class +\usepackage{geometry}[2020/01/02]% v5.9 Page Geometry +\usepackage{holtxdoc}[2019/12/09]% v0.30 Private additional ltxdoc support (HO) \hypersetup{% pdfsubject={Refers to special pages' numbers/names (HMM)},% - pdfkeywords={LaTeX, pageslts, pagesLTS, lastpage, page number, page name, H.-Martin Muench},% + pdfkeywords={LaTeX, pageslts, pagesLTS, lastpage, page number, page name},% pdfencoding=auto,% pdflang={en},% breaklinks=true,% @@ -203,40 +194,16 @@ In memoriam pdfwindowui=true,% pdfnewwindow=true% } -\usepackage{ulem}[2012/05/18]% no version is given in the ulem.sty file +\usepackage{ulem}[2019-11-18]% no version is given in the ulem.sty file \CodelineIndex \hyphenation{created every-thing ignored} -\gdef\unit#1{\mathord{\thinspace\mathrm{#1}}} -\makeatletter -\@ifundefined{eTeX}{\gdef\eTeX{$\m@th \varepsilon $-\TeX }}{% else \relax -} -\makeatother \begin{document} \DocInput{pageslts.dtx}% \end{document} %</driver> % \end{macrocode} -% % \fi % -% \CheckSum{1790} -% -% \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 -% Digits \0\1\2\3\4\5\6\7\8\9 -% Exclamation \! Double quote \" Hash (number) \# -% Dollar \$ Percent \% Ampersand \& -% Acute accent \' Left paren \( Right paren \) -% Asterisk \* Plus \+ Comma \, -% Minus \- Point \. Solidus \/ -% Colon \: Semicolon \; Less than \< -% Equals \= Greater than \> Question mark \? -% Commercial at \@ Left bracket \[ Backslash \\ -% Right bracket \] Circumflex \^ Underscore \_ -% Grave accent \` Left brace \{ Vertical bar \| -% Right brace \} Tilde \~} -% % \GetFileInfo{pageslts.drv} % % \begingroup @@ -254,34 +221,47 @@ In memoriam % }%^^A % \expandafter\endgroup\x % -% \DoNotIndex{\",\-,\,,\\,\noindent} -% \DoNotIndex{\documentclass,\usepackage,\ProvidesPackage} -% \DoNotIndex{\NeedsTeXFormat,\TeX,\LaTeX} -% \DoNotIndex{\ldots,\thinspace,\textbackslash} -% \DoNotIndex{\begin,\end} -% \DoNotIndex{\textbf,\textit,\textquotedblleft,\textquotedblright,\textsc,\textsf,\texttt,\underline} -% \DoNotIndex{\ifx,\ifnum,\ifodd,\enduremath} -% \DoNotIndex{\newpage,\pagebreak,\clearpage,\newline,\linebreak,\nolinebreak} -% \DoNotIndex{\lipsum,\MessageBreak,\pageref,\protect} -% \DoNotIndex{\smallskip,\medskip,\bigskip,\hskip,\space,\hline} -% \DoNotIndex{\advance,\@ne} -% \DoNotIndex{\item} -% \DoNotIndex{\@PackageInfoNoLine,\@bsphack,\@esphack,\@ehc,\@ehd,\@ifundefined,% -% \addcontentsline,\arabic,\enddocument,\endinput,\href,\makeatletter,\makeatother,% -% \section,\subsection,\tableofcontents,\verb} +% \DoNotIndex{\ ,\",\,,\\,\@Alph,\@alph,\@bsphack,\@ehc,\@ehd,\@esphack,\@ifundefined,\@ne,% +% \@currentlabel,\@currentlabelname,\@evenfoot,\@fnsymbol,\@gobble,\@ifl@t@r,% +% \@kernel@reserved@label@data,\@oddfoot,\@tempcnta,\addcontentsline,\addtocounter,\AfterLastShipout,% +% \Alph,\alph,\alphalph,\AlphAlph,\AlphMult,\alphMult,\AlphMulti,\arabic,\AtEndDocument,\baselineskip,% +% \begin,\bigskip,\csname,\dagger,\ddagger,\detokenize,\documentclass,\endinput,% +% \empty,\END,\end,\endcsname,\ensuremath,\expanded,\extract,\extract@,\fmtversion,% +% \fnsymbol,\fnsymbolmult,\frontmatter,\gdef,\href,\hskip,\hypersetup,\hypertarget,\HyPsd@pageref,% +% \if,\if@filesw,\if@nobreak,\ifnum,\ifodd,\ifx,\ifvmode,% +% \IfPackageAtLeastTF,\IfPackageLoadedT,\IfPackageLoadedTF,\IfPackageLoadedWithOptionsF,% +% \immediate,\jobname,\label,\LaTeX,\ldots,\linebreak,\lipsum,\listfiles,\loop,% +% \makeatletter,\makeatother,\MessageBreak,\markboth,\mathparagraph,\mathsection,% +% \mbox,\meaning,\newcommand,\NeedsTeXFormat,\NewCommandCopy,\newcounter,\newlabel,% +% \nobreak,\noindent,\nolinebreak,\number,\numexpr,% +% \options,\PackageError,\PackageInfo,\PackageNoteNoLine,\PackageWarning,\PackageWarningNoLine,% +% \pagebreak,\pageref,\pagesLTS@tmpA,\pagesLTS@tmpB,\pagesLTS@tmpC,\pagesLTS@tmpD,\pagesLTS@tmpQ,\PassOptionsToPackage,% +% \phantomsection,\ProvidesPackage,\protect,\qquad,\ref,\renewcommand,\repeat,\RequirePackage,% +% \section,\setcounter,\smallskip,\space,\subsection,% +% \tableofcontents,\textbackslash,\textbf,\textit,\textquotedblleft,\textquotedblright,\textsf,\texttt,% +% \the,\thepage,\thispagestyle,\undefined,\url,\usepackage,\value,\verb,% +% \xpagesLTS@rmpage,\xxpagesLTS@rmpage,% +% \c@page,\DeclareBoolOption,\DeclareStringOption,\ProcessKeyvalOptions,\setkeys,\SetupKeyvalOptions% +% } +% +% \newlength\ltsindent +% \setlength{\ltsindent}{\parindent} +% \setlength{\parindent}{0pt} +% \renewcommand{\indent}{\hspace*{\ltsindent}} % % \title{The \xpackage{pageslts} package} -% \date{2015/12/21 v1.2f} -% \author{H.-Martin M\"{u}nch\\\xemail{Martin.Muench at Uni-Bonn.de}} +% \date{2024-11-20 v2.0a} +% \author{H.-Martin Münch\\\xemail{Martin.Muench at Uni-Bonn.de}} % % \maketitle % % \begin{abstract} % \noindent This \LaTeX{} package puts the labels \texttt{LastPage} -% (|\AtEndDocument|) and \texttt{VeryLastPage} (|\AfterLastShipout|) -% into the \xfile{.aux} file, allowing the user to refer -% to the (very) last page of a document. This might be -% particularly useful in places like headers or footers. +% (|\AddToHook{enddocument/afterlastpage}|, formerly |\AtEndDocument|) +% and \texttt{VeryLastPage} (also |\AddToHook{enddocument/afterlastpage}|, +% but formerly |\AfterLastShipout|) into the \xfile{.aux} file, +% allowing the user to refer to the last page of a document. +% This might be particularly useful in places like headers or footers. % When more than one page numbering scheme is used, % these references do not give the total \textit{number} of pages. % For this case the label \texttt{LastPages} is introduced. @@ -317,181 +297,143 @@ In memoriam % but suppressing links, are supported. % \end{abstract} % -% \noindent \textbf{Please make sure to first deinstall the obsolete -% \xpackage{pagesLTS} package before installing this \xpackage{pageslts} -% package!}\\ -% (There is at least one operating system which otherwise automatically -% renames \xfile{pageslts} to \xfile{pagesLTS}.) -% -% \noindent Right after |\begin{document}| a |\pagenumbering{|\ldots|}| should +% Right after |\begin{document}| a |\pagenumbering{|\ldots|}| should % be called -- with the appropriate argument out of e.\,g.\\ % arabic (Arabic numerals: 1, 2, 3, 4,\ldots),\\ % roman (Lowercase Roman numerals: i, ii, iii, iv,\ldots), % Roman (Uppercase Roman numerals: I, II, III, IV,\ldots),\\ % alph (Lowercase letters: a, b, c, d,\ldots), % Alph (Uppercase letters: A, B, C, D,\ldots),\\ -% fnsymbol (Footnote symbols: $*$, $\dagger $, $\ddagger $, $\mathsection $,\ldots). +% fnsymbol (Footnote symbols: $*$, $\dagger $, $\ddagger $, $\mathsection $,\ldots).\\ % -% \noindent This package first started as a revision of the +% This package first started as a revision of the % \xpackage{lastpage} package of \textbf{Jeffrey P. Goldberg} (Thanks!), -% but then it became obvious that a replacement was needed. +% but then it was deemed necessary to provide a separate, enhanced package. +% After updates of the kernel and the package, +% \xpackage{lastpage} now does what it is supposed to do.\\ % -% \noindent Disclaimer for web links: The author is not responsible for any contents +% Disclaimer for web links: The author is not responsible for any contents % referred to in this work unless he has full knowledge of illegal contents. % If any damage occurs by the use of information presented there, only the % author of the respective pages might be liable, not the one who has referred -% to these pages. -% -% \noindent Save per page about $200\unit{ml}$ water, -% $2\unit{g}$ CO$_{2}$ and $2\unit{g}$ wood: -% Therefore please print only if this is really necessary. -% -% \bigskip +% to these pages.\pagebreak % % \tableofcontents -% % \newpage % % \section{Introduction} -% -% \indent This package puts the labels \texttt{LastPage} -% (|\AtEndDocument|) (same as my \xpackage{LastPage} package, invented by -% \textsc{Jeffrey P. Goldberg}) and \texttt{VeryLastPage} (|\AfterLastShipout|) -% into the \xfile{.aux} file, allowing the user to refer to the (very) -% last page of a document via |\lastpageref{LastPage}| and -% |\lastpageref{VeryLastPage}|. This might be particularly useful in -% places like headers or footers. When more than one page numbering scheme -% is used, these references do not give the total \textit{number} of pages. -% For this case the label \texttt{LastPages} is introduced (similar to the -% label \texttt{TotPages} of the \xpackage{TotPages} package, but -% the label \texttt{LastPages} is set later in the document). +% This package puts the labels \texttt{LastPage} (|\AddToHook{enddocument/afterlastpage}|, +% formerly |\AtEndDocument|; same as the \xpackage{LastPage} package) and \texttt{VeryLastPage} +% (also |\AddToHook{enddocument/afterlastpage}|, but formerly |\AfterLastShipout|) into the \xfile{.aux} file, +% allowing the user to refer to the last page of a document via |\lastpageref{LastPage}| and +% |\lastpageref{VeryLastPage}|. This might be particularly useful in places like headers or footers. +% When more than one page numbering scheme is used, these references do not give the total \textit{number} +% of pages. For this case the label \texttt{LastPages} is introduced (similar to the label \texttt{TotPages} +% of the \xpackage{TotPages} package, but the label \texttt{LastPages} is set later in the document). % Additionally, at the last page of each page numbering scheme a label % \texttt{pagesLTS.<}\textit{numbering scheme}\texttt{>} is placed, % where \texttt{<}\textit{numbering scheme}\texttt{>} is e.\,g. % arabic, roman, Roman, alph, or Alph. For fnsymbol please use % |\lastpageref{pagesLTS.fnsymbol}| instead of |\pageref{pagesLTS.fnsymbol}|. -% When the same numbering scheme is used twice, the page numbers are -% either reset to one or continued automatically, depending on the option -% given when the package is called. The command |\theCurrentPage| prints -% the current total/absolute page number - in contrast to |\thepage|, -% which gives only the page \textit{name} in the current page numbering -% scheme. |\theCurrentPageLocal| gives the current number of pages -% in the current page numbering scheme. |\thepage| and |\theCurrentPageLocal| -% are different e.\,g. when |\addtocounter{page}{|\ldots|}| or -% |\setcounter{page}{|\ldots|}| were used. (See also \LaTeX\ bug~3421: -% 3rd~page is even (twoside, titlepage, abstract), -% \url{http://www.latex-project.org/cgi-bin/ltxbugs2html?category=LaTeX&responsible=anyone&state=anything&keyword=pagenumber&pr=latex%2F3421&search=}.) -% At the first page of the document a label \texttt{pagesLTS.0} is -% created. This label can be referred to, too. Further labels are -% provided for special cases.\\ -% The \xpackage{alphalph} package is supported, i.\,e. page numbers -% \texttt{alph} or \texttt{Alph} $>26$ and \texttt{fnsymbol} $>9$ can -% be used (with the according options set). Even zero or negative page -% numbers can be used with \texttt{arabic}, \texttt{alph}, \texttt{Alph}, and -% \texttt{fnsymbol} page numbering (with \xpackage{alphalph} package -% and according options), and zero \texttt{roman} and \texttt{Roman} pages, -% too. -% -% \bigskip -% \noindent Right after |\begin{document}| a |\pagenumbering{|\ldots|}| -% should be called -- with the appropriate argument out of e.\,g.\\ +% When the same numbering scheme is used twice, the page numbers are either reset to one +% or continued automatically, depending on the option given when the package is called. +% The command |\theCurrentPage| prints the current total/absolute page number -- in contrast to |\thepage|, +% which gives only the page \textit{name} in the current page numbering scheme. |\theCurrentPageLocal| +% gives the current number of pages in the current page numbering scheme. |\thepage| and |\theCurrentPageLocal| +% are different e.\,g. when |\addtocounter{page}{|\ldots|}| or |\setcounter{page}{|\ldots|}| were used. +% (See also \LaTeX\ bug~3421: 3rd~page is even (twoside, titlepage, abstract), +% \url{https://www.latex-project.org/cgi-bin/ltxbugs2html?category=LaTeX&responsible=anyone&state=anything&keyword=pagenumber&pr=latex%2F3421&search=}.) +% At the first page of the document a label \texttt{pagesLTS.0} is created. Also to this label it can be referred. +% Further labels are provided for special cases.\\ +% +% The \xpackage{alphalph} package is supported, i.\,e.\ page numbers \texttt{alph} or \texttt{Alph} $>26$ +% and \texttt{fnsymbol} $>9$ can be used (with the according options set). Even zero or negative page +% numbers can be used with \texttt{arabic}, \texttt{alph}, \texttt{Alph}, and \texttt{fnsymbol} +% page numbering (with \xpackage{alphalph} package and according options), and zero \texttt{roman} +% and \texttt{Roman} pages, too.\\ +% +% Right after |\begin{document}| a |\pagenumbering{|\ldots|}| should be called -- +% with the appropriate argument out of e.\,g.\\ % arabic (Arabic numerals: 1, 2, 3, 4,\ldots),\\ % roman (Lowercase Roman numerals: i, ii, iii, iv,\ldots), % Roman (Uppercase Roman numerals: I, II, III, IV,\ldots),\\ % alph (Lowercase letters: a, b, c, d,\ldots), % Alph (Uppercase letters: A, B, C, D,\ldots),\\ -% fnsymbol (Footnote symbols: $*$, $\dagger $, $\ddagger $, $\mathsection $,\ldots). +% fnsymbol (Footnote symbols: $*$, $\dagger $, $\ddagger $, $\mathsection $,\ldots).\\ % -% \bigskip -% \noindent This package first started as a revision of the +% This package first started as a revision of the % \xpackage{lastpage} package of \textsc{Jeffrey P. Goldberg} (Thanks!), % but then it became obvious that a replacement was needed to accomplish -% what this package does. +% what this package does.\\ % -% \bigskip -% \noindent \textbf{Trademarks} appear throughout this documentation -% without any trademark symbol; they are the property of their respective -% trademark owner. There is no intention of infringement; the usage is -% to the benefit of the trademark owner. +% \textbf{Trademarks} appear throughout this documentation without any trademark symbol; +% they are the property of their respective trademark owner. There is no intention of infringement; +% the usage is to the benefit of the trademark owner.\\ % -% \bigskip % \phantomsection -% \DescribeMacro{logical page numbers} -% \noindent \textbf{Tip}: For the display of the \xfile{pdf}~file use -% \textbf{logical page numbers} together with \xpackage{hyperref}! -% \label{logical page numbers} +% \DescribeMacro{logical page numbers}\label{logical page numbers} +% \textbf{Tip}: For the display of the \xfile{pdf}~file use \textbf{logical page numbers} +% together with \xpackage{hyperref}! % \begin{description} -% \item [-] In Adobe Reader DC 2015.008.20082 enable:\\ +% \item [-] In Adobe Reader Continuos Release 2024.004.20272 enable:\\ % Edit $>$ Preferences $>$ Categories: Page Display $>$ % Page Content and Information: Use logical page numbers % % \item[-] Use the \xpackage{hyperref} package with option |plainpages=false|\,. % \end{description} -% The display will be e.\,g.\ \textquotedblleft 7~(7~of~9)\textquotedblright, +% The display will be e.\,g.\ \mbox{\textquotedblleft 7 (7 of 9)\textquotedblright ,} % or, in case of Roman instead of arabic numbers, -% \textquotedblleft VII~(7~of~9)\textquotedblright, and when different +% \mbox{\textquotedblleft VII (7 of 9)\textquotedblright ,} and when different % page numbers are used (see below) e.\,g. arabic after 10~Roman pages: -% \textquotedblleft 17~(27~of~30)\textquotedblright. -% Please try this with the compiled \xpackage{pageslts-example} file! -% -% \bigskip -% \noindent The name of the \xpackage{pageslts} package refers to -% Last, Total, and page numbering Schemes pages. \xpackage{pagesLTS} -% was a former name of this package. -% -% \pagebreak +% \mbox{\textquotedblleft 17 (27 of 30)\textquotedblright .} +% Please try this with the compiled \xpackage{pageslts-example} file!\newline +% The name of the \xpackage{pageslts} package refers to Last, Total, and page numbering Schemes pages. +% \xpackage{pagesLTS} was a former name of this package. % % \section{Usage} -% -% \indent Just load the package placing +% Just load the package by placing % \begin{quote} % |\usepackage[<|\textit{options}|>]{pageslts}| % \end{quote} -% \noindent in the preamble of your \LaTeXe\ source file -% (about |\AtEndDocument| see subsection~\ref{ssec:aed}) -% and place a |\pagenumbering{...}| with appropriate argument +% in the preamble of your \LaTeX\ source file and place a |\pagenumbering{...}| with appropriate argument % (e.\,g.~arabic, roman, Roman, fnsymbol, alph, or Alph) % right behind |\begin{document}| (see subsubsection~\ref{sss:nopnc})!\\ % -% \indent For example for various draft forms it is desirable to have a -% page reference to the last page, so that e.\,g. page footers can -% contain something like \textquotedblleft page $N$ of $K$\textquotedblright, -% where $N$ is the current page and $K$ is the last page. Once the package -% is loaded, anywhere in the text references can be made to the labels -% \texttt{LastPage}, \texttt{VeryLastPage}, and \texttt{LastPages} +% For example for various draft forms it is desirable to have a page reference to the last page, +% so that e.\,g.\ page footers can contain something like +%\textquotedblleft page \mbox{$N$ of $K$\textquotedblright ,} where $N$~is the current page and +% $K$~is the last page. Once the package is loaded, anywhere in the text references can be made +% to the labels \texttt{LastPage}, \texttt{VeryLastPage}, and \texttt{LastPages} % (most times with |\pageref{...}|, but more save with |\lastpageref{...}|). -% In particular one can use the \xpackage{fancyhdr} or \xpackage{nccfancyhdr} -% package, or redefinitions of the page headings and footings to get -% a reference to the (very) last page.\\ +% In particular one can use the \xpackage{fancyhdr} (\url{https://ctan.org/pkg/fancyhdr}) or +% \xpackage{nccfancyhdr} (\url{https://ctan.org/pkg/nccfancyhdr}) package, or +% redefinitions of the page headings and footings to get a reference to the last page.\\ +% % \DescribeMacro{\pageref*} % \DescribeMacro{\lastpageref*} -% If the \xpackage{hyperref} package is used, the references are hyperlinked -% to their aims. If these hyperlinks shall be suppressed, |\pageref*{...}| -% and |\lastpageref*{...}| can be used. +% If the \xpackage{hyperref} package is used, the references are hyperlinked to their targets. +% If these hyperlinks shall be suppressed, |\pageref*{...}| and |\lastpageref*{...}| can be used. % % \subsection{Options} % \DescribeMacro{options} -% \indent The \xpackage{pageslts} package takes the following options: +% The \xpackage{pageslts} package takes the following options: % % \subsubsection{pagecontinue\label{sss:pagecontinue}} % \DescribeMacro{pagecontinue} -% \indent When option \texttt{pagecontinue=false} is \textbf{not} given -% (i.\,e. \texttt{pagecontinue} or \texttt{pagecontinue=true} -% or no \texttt{pagecontinue} option at all), at each +% When option \texttt{pagecontinue=false} is \textbf{not} given (i.\,e.\ \texttt{pagecontinue} +% or \texttt{pagecontinue=true} or no \texttt{pagecontinue} option at all), at each % |\pagenumbering{...}| command the number of the page will be continued -% with the page number following the last page of the same page numbering -% scheme. For example, if there are V~Roman pages in the frontmatter, -% some arabic ones in the mainmatter, and then Roman ones again in the -% backmatter, the last ones will start with VI instead of~I again.\\ -% \indent If you want to start with I (or i, 1, a, A, *,\ldots ) again, -% set option \texttt{pagecontinue=false}. If you want to generally continue -% the numbers, but for some page numbering scheme do not want this, -% use \texttt{pagecontinue=true} and say |\setcounter{page}{1}| -% after |\pagenumbering{...}| for that page numbering scheme. +% with the page number following the last page of the same page numbering scheme. For example, +% if there are V~Roman pages in the frontmatter, some arabic ones in the mainmatter, and then +% Roman ones again in the backmatter, the last ones will start with VI instead of~I again.\\ % -% \subsubsection{alphMult, AlphMulti, fnsymbolmult\label{sss:alphalph}} +% If you want to start with I (or i, 1, a, A, *,\ldots ) again, set option +% \texttt{pagecontinue=false}. If you want to generally continue the numbers, +% but for some page numbering scheme do not want this, use \texttt{pagecontinue=true} +% and say |\setcounter{page}{1}| after |\pagenumbering{...}| for that page numbering scheme. % -% \indent The page number printed in +% \subsubsection{alphMult, AlphMulti, fnsymbolmult\label{sss:alphalph}} +% The page number printed in % \nolinebreak{\texttt{fnsymbol}\footnote{% % \ensuremath {*},% % \ensuremath {\dagger },% @@ -507,45 +449,32 @@ In memoriam % i, j, k, l, m, n, o, p, q, r, s, t, u, v, w, x, y, z}} and % \nolinebreak{\texttt{Alph}\footnote{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}} must -% be $>0$ and $<27$. After page~Z\quad \LaTeX\ \textit{should} -% continue with AA, AB, AC,\ldots\ Some people prefer -% AA, BB, CC,\ldots, but in hexadecimal it is $AA_{16}=170_{10}$ -% and $171_{10}=AB_{16}$, whereas $BB_{16}=187_{10}$. In any way -% it should continue at all (maybe even with an user option to -% choose between the two continuations), but instead only gives -% an error: +% be $>0$ and $<27$. After page~Z\quad \LaTeX\ \textit{should} continue with +% AA, AB, AC,\ldots\ Some people prefer AA, BB, CC,\ldots, but in hexadecimal it is +% $AA_{16}=170_{10}$ and $171_{10}=AB_{16}$, whereas $BB_{16}=187_{10}$. In any way +% it should continue at all (maybe even with a user option to choose between the two +% continuations), but instead only gives an error: % \begin{quote} % |LaTeX Error: Counter too large|\\ % |See the LaTeX manual or LaTeX Companion for explanation.|\\ % |You've lost some text. Try typing <return> to proceed.|\\ % |If that doesn't work, type X <return> to quit.| % \end{quote} -% But thanks to the \xpackage{alphalph} package by \textsc{Heiko Oberdiek} -% these limitation no longer hold. With his |\erroralph| command -% now even negative or zero page -% \textquotedblleft numbers\textquotedblright{} are possible.\\ +% But thanks to the \xpackage{alphalph} package these limitation no longer hold. +% With his |\erroralph| command now even negative or zero page +% \textquotedblleft numbers\textquotedblright\ are possible.\\ +% Nevertheless, some \TeX\ capacity will be exceeded well before the +% $2\,147\,483\,647^{\textnormal{th}}$ page.\\ % % \DescribeMacro{alphMult} % The string option \texttt{alphMult} takes three values: |ab|, |bb|, |0|: % \begin{description} -% \item[ab] After page z, the page -% \textquotedblleft numbers\textquotedblright{} continue with -% aa, ab, ac, ad,\ldots, fxshrxw (the default), and before a with -% 0, -a, -b,\ldots, -z, -aa, -ab,\ldots, -fxshrxw ($=-21\,474\,836\,47$). -% \item[bb] After page z, the page -% \textquotedblleft numbers\textquotedblright{} continue with -% aa, bb, cc, dd,\ldots, and before a with -% 0, -a, -b,\ldots, -z, -aa, -bb,\ldots\\ -% (Internally up~to $\pm 55\,834\,558$ is allowed, but when printed will -% exceed the \LaTeX\ capacity even for smaller numbers -- -% in the example file this happens at about $6\,500$.)\\ -% (If you have a document with more than $6\,500$~pages, you might -% think about splitting it in volumes. And page -% \textquotedblleft numbers\textquotedblright{} with about 100~digits -% are probably not easy to grasp for the reader, too.)\\ -% \item[0] (zero) The \xpackage{pageslts} package does nothing, -% thus the user is free to define the page -% \textquotedblleft numbers\textquotedblright{} after~z and before~a.\\ +% \item[ab] After page z, the page \textquotedblleft numbers\textquotedblright\ continue with +% aa, ab, ac, ad,\ldots, and before a with 0, -a, -b,\ldots, -z, -aa, \mbox{-ab,\ldots .} +% \item[bb] After page z, the page \textquotedblleft numbers\textquotedblright\ continue with +% aa, bb, cc, dd,\ldots, and before a with 0, -a, -b,\ldots, -z, -aa, \mbox{-bb,\ldots .} +% \item[0] (zero) The \xpackage{pageslts} package does nothing, thus the user is free +% to define the page \textquotedblleft numbers\textquotedblright\ after~z and before~a.\\ % (But if the user does not do anything at all, the\\ % \ |LaTeX Error: Counter too large|\\ % will appear again.) @@ -554,18 +483,12 @@ In memoriam % \DescribeMacro{AlphMulti} % The string option \texttt{AlphMulti} takes three values: |AB|, |BB|, |0|: % \begin{description} -% \item[AB] After page Z, the page -% \textquotedblleft numbers\textquotedblright{} continue with -% AA, AB, AC, AD,\ldots, FXSHRXW (the default), and before A with -% 0, -A, -B,\ldots, -Z, -AA, -AB,\ldots, -FXSHRXW. -% \item[BB] After page Z, the page -% \textquotedblleft numbers\textquotedblright{} continue with -% AA, BB, CC, DD,\ldots, and before A with -% 0, -A, -B,\ldots, -Z, -AA, -BB,\ldots \\ -% (About the limits please see |alphMult| above.) -% \item[0] (zero) The \xpackage{pageslts} package does nothing, -% thus the user is free to define the page -% \textquotedblleft numbers\textquotedblright{} after~Z and before~A.\\ +% \item[AB] After page Z, the page \textquotedblleft numbers\textquotedblright\ continue with +% AA, AB, AC, AD,\ldots, and before A with 0, -A, -B,\ldots, -Z, -AA, \mbox{-AB,\ldots .} +% \item[BB] After page Z, the page \textquotedblleft numbers\textquotedblright\ continue with +% AA, BB, CC, DD,\ldots, and before A with 0, -A, -B,\ldots, -Z, -AA, \mbox{-BB,\ldots .} +% \item[0] (zero) The \xpackage{pageslts} package does nothing, thus the user is free +% to define the page \textquotedblleft numbers\textquotedblright\ after~Z and before~A.\\ % (But if the user does not do anything at all, the\\ % \ |LaTeX Error: Counter too large|\\ % will appear again.) @@ -573,228 +496,160 @@ In memoriam % % \DescribeMacro{fnsymbolmult} % When option \texttt{fnsymbolmult=false} is \textbf{not} given -% (i.\,e. \texttt{fnsymbolmult} or \texttt{fnsymbolmult=true} -% or no \texttt{fnsymbolmult} option at all), -% after 5 (\ensuremath {\mathparagraph }) the page -% \textquotedblleft number\textquotedblright{} is continued with -% the doubled \textquotedblleft number\textquotedblright{} of the -% first, second, third,\ldots\ page (\ensuremath {**}, -% \ensuremath {\dagger \dagger }, \ensuremath {\ddagger \ddagger }, -% \ensuremath {\mathsection \mathsection }, -% \ensuremath {\mathparagraph \mathparagraph }), -% and after the tenth page the -% \textquotedblleft number\textquotedblright{} is tripled -% (\ensuremath {***}, \ensuremath {\dagger \dagger \dagger },\ldots). -% Compile the \textsf{pageslts-example.tex} with \pdfLaTeX\ and -% see the resulting \xfile{pdf} file.\\ -% Before \ensuremath {*} (page~1) the page -% \textquotedblleft numbers\textquotedblright{} are continued with -% 0, \ensuremath {- * }, \ensuremath {- \dagger },\ldots, -% \ensuremath {- \mathparagraph }, \ensuremath {- **}, -% \ensuremath {- \dagger \dagger },\ldots \\ -% If this is not wanted, set option \texttt{fnsymbolmult=false}, -% and \xpackage{pageslts} will do nothing and allow the user to change -% the page \textquotedblleft number\textquotedblright . (But if the -% user does not do anything at all, the\\ +% (but \texttt{fnsymbolmult} or \texttt{fnsymbolmult=true} or no \texttt{fnsymbolmult} option +% at all), after \mbox{5 (\ensuremath {\mathparagraph })} the page +% \textquotedblleft number\textquotedblright\ is continued with the doubled +% \textquotedblleft number\textquotedblright{} of the first, second, third,\ldots\ page +% (\ensuremath{**}, \ensuremath{\dagger\dagger}, \ensuremath{\ddagger\ddagger}, +% \ensuremath{\mathsection\mathsection}, \ensuremath{\mathparagraph\mathparagraph}), +% and after the tenth page the \textquotedblleft number\textquotedblright\ is tripled +% (\ensuremath{***}, \ensuremath{\dagger\dagger\dagger},\ldots). +% Compile the \textsf{pageslts-example.tex} and see the resulting \xfile{pdf} file.\\ +% +% Before \ensuremath{*} (page~1) the page \textquotedblleft numbers\textquotedblright\ are +% continued with 0, \ensuremath{-*}, \ensuremath{-\dagger},\ldots, \ensuremath{-\mathparagraph}, +% \ensuremath{-**}, \ensuremath{-\dagger\dagger},\ldots\\ +% If this is not wanted, set option \texttt{fnsymbolmult=false}, and \xpackage{pageslts} +% will do nothing and allow the user to change the page +% \textquotedblleft number\textquotedblright . (But if the user does not do anything at all, +% the\\ % \ |LaTeX Error: Counter too large|\\ -% will appear again.)\\ -% While in \LaTeXe\ arabic (page) numbers are possible up~to -% |MAX|\,$ = 2\,147\,483\,647$ (cf.~the \xpackage{alphalph} package),\\ -% |\erroralphalph{\fnsymbolmult}{...}| numbers are possible up~to -% 10\,737\,415 only. If this number is not only used internally -% but printed, after number about 11\,705 (which is -% 2\,341 times \ensuremath {\mathparagraph }) the \LaTeXe\ capacity -% is exceeded, depending on the remaining file and its use of -% \TeX\ capacity, of course. (If you have a document with more than -% 11\,705~pages, you might think about splitting it in volumes. -% And page \textquotedblleft numbers\textquotedblright{} with -% 2\,341~digits are probably not easy to grasp for the reader, too.)\\ +% will appear again.) % % \subsubsection{romanMult, RomanMulti\label{sss:romanMult}} -% % \DescribeMacro{romanMult} % \DescribeMacro{RomanMulti} -% The options \texttt{romanMult(=true)} and \texttt{RomanMulti(=true)} -% expand the |\roman| and |\Roman| page numbering scheme to values -% below one ($<1$), i.\,e. 0, -i, -ii, -iii, -iv,\ldots\ and -% 0, -I, -II, -III, -IV,\ldots, respectively.\\ -% Again the \TeX\ capacity will be exceeded before -% \nolinebreak{$\pm$ |MAX|\,}$ = \pm 2\,147\,483\,647$, and even if -% $1\,000\,000\,000$ is internally possible, this would print -% $1\,000\,000$ times the letter~\textsf{m} (or~\textsf{M}), -% which would require either very small print or quite huge paper size.\\ -% (If you have a document with so many pages, you might think -% about splitting it in volumes. And page -% \textquotedblleft numbers\textquotedblright{} with -% thousands of digits are probably not easy to grasp for the reader, -% too.)\\ -% If the expansion below $1$ is not wanted, set options -% \texttt{romanMult=false} and/or \texttt{RomanMulti=false}, -% and \xpackage{pageslts} will do nothing and allow the user -% to change the page \textquotedblleft number\textquotedblright . -% (But if the user does not do anything at all, \LaTeX\ will just -% ignore the values - not even a warning will be issued.) +% The options \texttt{romanMult(=}\,\texttt{true)} and \texttt{RomanMulti(=}\,\texttt{true)} +% expand the |\roman| and |\Roman| page numbering scheme to values below one ($<1$), +% i.\,e.\ 0, -i, -ii, -iii, -iv,\ldots\ and 0, -I, -II, -III, -IV,\ldots, respectively.\\ +% Again the \TeX\ capacity will be exceeded well before \mbox{$\pm$ |MAX|\,}% +% $ = \pm 2\,147\,483\,647$. If the expansion below~$1$ is not wanted, set options +% \texttt{romanMult=false} and/or \texttt{RomanMulti=false}, and \xpackage{pageslts} +% will do nothing and allow the user to change the page +% \textquotedblleft number\textquotedblright. (But if the user does not do anything at all, +% \LaTeX\ will just ignore those values -- not even a warning will be issued!) % % \subsubsection{Arabic page numbers} -% % \DescribeMacro{Arabic page numbers} -% In \LaTeXe\ arabic (page) numbers are already possible between -% |-MAX...MAX|, where |MAX|\,$ = 2\,147\,483\,647$ (cf.~the -% \xpackage{alphalph} package), without any expansion necessary. -% (But if you have a document with so many pages, you might think -% about splitting it in volumes!) +% In \LaTeX\ arabic (page) numbers are already possible between |-MAX...MAX|, where +% |MAX|\,$ = 2\,147\,483\,647$ (cf.~the \xpackage{alphalph} package), without any expansion necessary. % % \subsection{Labels} -% % \DescribeMacro{pagesLTS.0} -% \indent At the first page a label \texttt{pagesLTS.0} is created. -% If |\pagenumbering{...}| is used right after -% |\begin{document}|, this is much easier for the -% \xpackage{pageslts} package (and chances for successful placing -% of all labels are much higher; -% \nolinebreak{cf.~subsubsection~\ref{sss:once}).}\\ +% At the first page a label \texttt{pagesLTS.0} is created. If |\pagenumbering{...}| is used right after +% |\begin{document}|, this is much easier for the \xpackage{pageslts} package (and chances for +% successful placing of all labels are much higher; \nolinebreak{cf.~subsubsection~\ref{sss:once}).}\\ % % \DescribeMacro{LastPage} -% |\AtEndDocument| (see subsection~\ref{ssec:aed}) this package defines -% a label, \texttt{LastPage}, which the user can refer to with the\linebreak -% |\lastpageref{LastPage}| command. While |\pageref{LastPage}| is also -% possible (especially for backward compatibility with the \xpackage{LastPage} -% package), this is discouraged, because it will not work when it is used -% together with the \xpackage{hyperref} package and the \xpackage{fnsymbol} -% page numbering scheme. (The \xpackage{LastPage} package did not work with -% this combination, too, so if you want to, you can reproduce the old error -% -- but you do not have to do it, but can use |\lastpageref{LastPage}|.)\\ +% |\AddToHook{enddocument/afterlastpage}| (formerly: |\AtEndDocument}| this package defines a label, +% \texttt{LastPage}, which the user can refer to with the |\lastpageref{LastPage}| command. +% In former times |\pageref{LastPage}| did not work when used together with the \xpackage{hyperref} +% package and the |fnsymbol| page numbering scheme. This should work now.\\ % % \DescribeMacro{VeryLastPage} -% |\AfterLastShipout| the label \texttt{VeryLastPage} is defined, which -% the user can also refer to with the |\lastpageref{VeryLastPage}| command. -% Depending on usage of |\AtEndDocument| by other packages, \texttt{LastPage} -% might not point to the very last page, but |\lastpageref{VeryLastPage}| -% should do this (cf.~subsection~\ref{ssec:aed}).\\ +% |\AddToHook{enddocument/afterlastpage}| (formerly: |\AfterLastShipout|) the label +% \texttt{VeryLastPage} is defined, which the user can also refer to with the +% |\lastpageref{VeryLastPage}| command. With the new kernel hooks \texttt{LastPage} +% as well as \texttt{VeryLastPage} point to the last page indeed.\\ % % \DescribeMacro{LastPages} % \DescribeMacro{page number} % \DescribeMacro{number of pages} -% When more than one page numbering scheme is used, neither \texttt{LastPage} -% nor \texttt{VeryLastPage} give the total \textbf{number} of pages. -% For example, for a document with VI+36 pages, both give -% \textquotedblleft 36\textquotedblright{} as reference to the last page. -% While this is correct, the total number of pages is 42, and this is given -% by the reference to \texttt{LastPage\underline{s}}: -% \nolinebreak{|\lastpageref{LastPage|\underline{|s|}|}|} (note the -% \textquotedblleft s\textquotedblright{} at the end). When the -% page number was manipulated by |\addtocounter{page}{...}| -% or |\setcounter{page}{...}|, \texttt{LastPages} ignores this. -% (At a page numbering change the page is reset to one (without option -% |pagecontinue|). This is done by |\setcounter{page}{1}|, thus this is -% ignored, too.)\\ +% When more than one page numbering scheme is used, neither \texttt{LastPage} nor +% \texttt{VeryLastPage} give the total \textbf{number} of pages. For example, for a document +% with VI+36 pages, both give \textquotedblleft 36\textquotedblright\ as reference to the last page. +% While this is correct, the total number of pages is 42, and this is given by the reference to +% \texttt{LastPage\underline{s}}: \nolinebreak{|\lastpageref{LastPage|\underline{|s|}|}|} (note the +% \textquotedblleft s\textquotedblright\ at the end). When the page number was manipulated by +% |\addtocounter{page}{...}| or |\setcounter{page}{...}|, \texttt{LastPages} ignores this. +% (At a page numbering change the page is automatically reset to one (without option +% |pagecontinue|). This is done by |\setcounter{page}{1}|, thus this is ignored, too.)\\ +% +% \DescribeMacro{totpages} % |\pageref{totpages}| of the \xpackage{totpages} package is similar to -% |\lastpageref{LastPages}|, but while the target for \linebreak[4] +% |\lastpageref{LastPages}|, but while the target for % |\pageref{totpages}| is placed |\AtEndDocument|, the target for -% |\lastpageref{LastPages}| is placed |\AfterLastShipout|, therefore -% |\lastpageref{LastPages}| is safer to really get the total page number.\\ +% |\lastpageref{LastPages}| is placed in the hook |enddocument/afterlastpage|, +% therefore |\lastpageref{LastPages}| is safer to really get the total page number.\\ % -% \pagebreak +% \DescribeMacro{\@abspage@last} +% Nowadays the kernel provides |\@abspage@last|, which contains the number of pages.\\ % % \DescribeMacro{\theCurrentPage} -% |\theCurrentPage| gives the current total/absolute page, in contrast to -% |\thepage|, which gives only the page \textit{name} in the current page -% numbering scheme. For example, when there are Roman VII pages in the -% frontmatter and afterwards in the mainmatter you are at arabic page~9, -% then |\theCurrentPage| is~16, whereas |\thepage| is~9. When the page -% \textquotedblleft number\textquotedblright{} (name) is manipulated by -% |\addtocounter{page}{...}| or |\setcounter{page}{...}|, |\theCurrentPage| -% \nolinebreak{ignores} this. Because \texttt{CurrentPage} is a normal -% counter, you can also say e.\,g.~|\Roman{CurrentPage}| to get the value -% in Roman page numbering scheme (e.\,g.~VIII for~8).\\ +% |\theCurrentPage| gives the current total/absolute page, in contrast to |\thepage|, +% which gives only the page \textit{name} in the current page numbering scheme. For example, +% when there are Roman VII~pages in the frontmatter and afterwards in the mainmatter you are +% at arabic page~9, then |\theCurrentPage| is~16, whereas |\thepage| is~9. When the page +% \textquotedblleft number\textquotedblright\ (name) is manipulated by +% |\addtocounter{page}{...}| or |\setcounter{page}{...}|, |\theCurrentPage| ignores this. +% Because \texttt{CurrentPage} is a normal counter, you can also say e.\,g.~|\Roman{CurrentPage}| +% to get the value in Roman page numbering scheme (e.\,g.~VIII for~8).\\ % % \phantomsection -% \label{CurrentPageLocal} % \DescribeMacro{\theCurrentPageLocal} -% |\theCurrentPageLocal| gives the current (arabic) number of pages in the -% current page numbering scheme. |\thepage| and |\theCurrentPageLocal| are -% different e.\,g. when |\addtocounter{page}{...}| or -% |\setcounter{page}{...}| were used.\\ -% |\theCurrentPageLocal| can be printed in other formats, e.\,g. -% |\roman{pagesLTS.current.local.roman}|, but probably it only makes -% sense if page numbering scheme and format are the same, e.\,g. -% |\Roman{pagesLTS.current.local.Roman}| or\\ -% |\Alph{pagesLTS.current.local.Alph}|.\\ -% |\arabic{pagesLTS.current.local.|\ldots|}| probably make sense even -% when combined with another page numbering scheme. And this is exactly -% what |\theCurrentPageLocal| does:\\ +% |\theCurrentPageLocal|\label{CurrentPageLocal} gives the current (arabic) +% number of pages in the current page numbering scheme. |\thepage| and |\theCurrentPageLocal| +% are different e.\,g.~when |\addtocounter{page}{...}| or |\setcounter{page}{...}| were used.\\ +% |\theCurrentPageLocal| can be printed in other formats, +% e.\,g.~|\roman{pagesLTS.current.local.roman}|, but probably it only makes sense +% if page numbering scheme and format are the same, +% e.\,g.~|\Roman{pagesLTS.current.local.Roman}| or\\ +% |\Alph{pagesLTS.current.local.Alph}|. +% \pagebreak +% |\arabic{pagesLTS.current.local.|\ldots|}| probably make sense even when combined with +% another page numbering scheme. And this is exactly what |\theCurrentPageLocal| does:\\ % |\def\theCurrentPageLocal{\arabic{pagesLTS.current.local.\pagesLTS@pnc}}|.\\ % % \DescribeMacro{pagesLTS. page numbering scheme . number } -% If you want to refer to the last page of the first, second,\ldots\ use -% of a page numbering scheme, you can refer to \linebreak -% |pagesLTS.<page numbering scheme>.<number>|, e.\,g. -% |\lastpageref{pagesLTS.Roman.1}|, where |<number>| is the occurrence -% of the page numbering scheme. For details please see +% If you want to refer to the last page of the first, second,\ldots\ use of a +% page numbering scheme, you can refer to\linebreak +% |pagesLTS.<page numbering scheme>.<number>|, e.\,g.~|\lastpageref{pagesLTS.Roman.1}|, +% where |<number>| is the occurrence of the page numbering scheme. For details please see % page~\pageref{pagesLTS.pnscheme.nr}.\\ % -% \bigskip % \DescribeMacro{\lastpageref} -% For pages with the \texttt{fnsymbol} page numbering scheme, -% |\lastpageref{...}| \nolinebreak{instead} of |\pageref{...}| -% \textit{must} be used. This is required for pages some\-where -% inside of the document as well as the (very) last page(s). -% Because |\lastpageref{...}| is a synonym for |\pageref{...}|, -% where no \xpackage{fnsymbol} page numbering scheme is used, -% it is save(r) to use it for all references to labels provided -% by the \xpackage{pageslts} package. +% In former times for pages with the \texttt{fnsymbol} page numbering scheme, +% |\lastpageref{...}| instead of |\pageref{...}| had to be used. +% |\lastpageref| can be used for all pages. % % \subsection[\texttt{\textbackslash pagenumbering\{\ldots \}}]{% % \texttt{\textbackslash pagenumbering\{\ldots \}}} +% \vspace{-1.8\baselineskip} % \DescribeMacro{\pagenumbering} % \subsubsection{If \texttt{\textbackslash pagenumbering\{\ldots \}} is \textbf{not} used\label{sss:nopnc}} -% -% \indent When the \xpackage{pageslts} package is used, but |\pagenumbering{...}| -% (with an argument like arabic, roman, Roman, fnsymbol, alph, or Alph) -% is not used, there should be no problem, except that you might need -% more~(!) compiler runs to get all references right, and some references -% might even be missing (see below). The \xpackage{pageslts} -% package tries to determine the page numbering scheme at the first -% shipout, but success is not guaranteed. Thus please use |\pagenumbering{...}| -% at the beginning of your document!\\ -% \indent Without |\pagenumbering{<something>}| (|<something>| e.\,g. = arabic) -% at the beginning of the document, the page numbers might be given in -% arabic \textit{by} (class) \textit{default}, but the \xpackage{pageslts} -% package does not know about this without |\pagenumbering{arabic}|.~--\\ -% \indent The label \texttt{pagesLTS.0} is created at the first -% page even if no |\pagenumbering{...}| command is given. -% Maybe have a look at the \xfile{.aux} file after compiling your -% document to detect further labels (of other packages, too).\\ -% -% \pagebreak +% When the \xpackage{pageslts} package is used, but |\pagenumbering{...}| (with an argument like +% arabic, roman, Roman, fnsymbol, alph, or Alph) is not used, there should be no problem, +% except that you might need more~(!) compiler runs to get all references right, and some +% references might even be missing (see below). The \xpackage{pageslts} package tries to determine +% the page numbering scheme at the first shipout, but success is not guaranteed. Thus please use +% |\pagenumbering{...}| at the beginning of your document!\\ +% Without |\pagenumbering{<something>}| (|<something>| e.\,g.~=~arabic) at the beginning of the document, +% the page numbers might be given in arabic \textit{by} (class) \textit{default}, but the +% \xpackage{pageslts} package does not know about this without |\pagenumbering{arabic}|.~--\\ +% The label \texttt{pagesLTS.0} is created at the first page even if no |\pagenumbering{...}| command +% is given. Maybe have a look at the \xfile{.aux} file after compiling your document to detect +% further labels (of other packages, too). % % \subsubsection{If \texttt{\textbackslash pagenumbering\{\ldots \}} is used once\label{sss:once}} -% % \DescribeMacro{pagesLTS.0} -% At the first page a label \texttt{pagesLTS.0} is created. -% If |\pagenumbering{...}| is used right after |\begin{document}|, -% this is much easier for the \xpackage{pageslts} package +% At the first page a label \texttt{pagesLTS.0} is created. If |\pagenumbering{...}| is used +% right after |\begin{document}|, this is much easier for the \xpackage{pageslts} package % (and chances for successful placing of all labels are much higher). % % \subsubsection{If \texttt{\textbackslash pagenumbering\{\ldots \}} is used more than once} -% -% \indent Everything from the preceding subsubsections applies and additionally -% the following:\\ -% \indent When different page numbering schemes are used, e.\,g. -% Roman numbers for the frontmatter and arabic numbers for the -% mainmatter, please use |\pagenumbering{...}| for each of them! -% Even if you do this, the reference to neither the label \texttt{LastPage} -% nor the label \texttt{VeryLastPage} gives the \textbf{total} -% number of pages, but only the number of pages of the last used page -% numbering scheme (which could be exactly what you want, e.\,g. if -% you want to refer to the last page itself and do not want to -% give the total number of pages).\\ +% Everything from the preceding subsubsections applies and additionally the following:\\ +% +% When different page numbering schemes are used, e.\,g.~Roman numbers for the frontmatter +% and arabic numbers for the mainmatter, please use |\pagenumbering{...}| for each of them! +% Even if you do this, the reference to neither the label \texttt{LastPage} nor the label +% \texttt{VeryLastPage} gives the \textbf{total} number of pages, but only the number of pages +% of the last used page numbering scheme (which could be exactly what you want, +% e.\,g.~if you want to refer to the last page itself and do not want to give the +% total number of pages).\\ % \DescribeMacro{LastPages} -% \indent For remediation the label -% \nolinebreak{\texttt{LastPage}\textbf{\underline{s}}} -% (with \textquotedblleft s\textquotedblright{} at its end) is -% introduced. Please then refer to this label by \newline -% |\lastpageref{LastPages}| instead of \texttt{LastPage} or +% For remediation the label \nolinebreak{\texttt{LastPage}\textbf{\underline{s}}} (with +% \textquotedblleft s\textquotedblright{} at its end) is introduced. Please then refer +% to this label by |\lastpageref{LastPages}| instead of \texttt{LastPage} or % \texttt{VeryLastPage}.\\ % % \DescribeMacro{pagesLTS.arabic} @@ -806,77 +661,43 @@ In memoriam % Additionally, at the last page of each page numbering scheme a label % \texttt{pagesLTS.<numbering scheme>} is placed, where % \texttt{<numbering scheme>} is e.\,g.\ arabic, roman, Roman, alph, -% Alph,\ldots .\\ -% For the \textbf{fnsymbol} page numbering scheme -% |\lastpageref{pagesLTS.fnsymbol}| is needed instead of \newline -% |\pageref{pagesLTS.fnsymbol}|. You can and should use -% |\lastpageref{...}| also for the other page numbering schemes.\\ -% -% \bigskip -% -% While at the time of the last revision of the \xpackage{pageslts} package -% no other page numbering schemes were known to the maintainer, -% this package in principle works with every scheme which is -% recognized by the original |\pagenumbering| command. -% But the \xpackage{hyperref} package only then works with crazy page names, -% if the references to those pages are given in a certain way, thus the -% combination of a new page numbering scheme, the \xpackage{hyperref} -% and the \xpackage{pageslts} package might not work.~-- -% The \xpackage{pageslts} package by itself also works with schemes, -% which the original |\pagenumbering{...}| does not recognize, but because -% the original |\pagenumbering{...}| is called by the \xpackage{pageslts} -% package, this might cause an error, see subsection~\ref{sec:unknown}! -% (And if the number format is unknown to \LaTeX{}, the pages will have -% no number, and therefore cannot be referenced. You might be able to -% help yourself by using the \xpackage{hyperref} package and -% manually placing |\hypertarget|s and |\href|s.) +% Alph,\mbox{\ldots .}\\ +% Additional page numbering schemes are unknown for \xpackage{pageslts}, +% see \autoref{sec:unknown} \nameref{sec:unknown}.\\ % % \subsubsection{If the same \texttt{\textbackslash pagenumbering\{\ldots \}}\ % % scheme is used more than once\label{sss:twice}} -% -% \indent Everything from the preceding subsubsections applies and additionally -% the following:\\ +% Everything from the preceding subsubsections applies and additionally the following:\\ % \DescribeMacro{pagecontinue} -% \indent If the same page numbering scheme is used twice (or even more often) -% in one document (e.\,g. in the frontmatter Roman: I--V, in the -% mainmatter arabic: 1--20, and in the backmatter again Roman: VI--X), -% the second time it is used, the page numbering is either continued (option -% \texttt{pagecontinue} or \texttt{pagecontinue=true} or no option -% \texttt{pagecontinue}; the default) or reset to one (option -% \texttt{pagecontinue=false}). It is even possible to use -% a~page numbering scheme more than twice.\\ +% If the same page numbering scheme is used twice (or even more often) in one document +% (e.\,g.\ in the frontmatter Roman: I--V, in the mainmatter arabic: 1--20, and in the +% backmatter again Roman: VI--X), the second time it is used, the page numbering is either +% continued (option \texttt{pagecontinue} or \texttt{pagecontinue=true} or no option +% \texttt{pagecontinue}; the default) or reset to one (option \texttt{pagecontinue=false}). +% It is even possible to use a~page numbering scheme more than twice.\\ % % \phantomsection -% \label{pagesLTS.pnscheme.nr} -% \DescribeMacro{pagesLTS. page numbering scheme . number } -% If you want to refer to the last page of the first, second,\ldots\ use -% of a page numbering scheme, page~V in the example above, you can refer to -% |pagesLTS.<page numbering scheme>.<number>|, e.\,g. -% |\lastpageref{pagesLTS.Roman.1}|, where |<number>| is the occurrence -% of the page numbering scheme.\\ -% -% \pagebreak +% \DescribeMacro{pagesLTS. page numbering scheme . number }\label{pagesLTS.pnscheme.nr} +% If you want to refer to the last page of the first, second,\ldots\ use of a +% page numbering scheme, page~V in the example above, you can refer to +% |pagesLTS.<page numbering scheme>.<number>|, e.\,g.~|\lastpageref{pagesLTS.Roman.1}|, +% where |<number>| is the occurrence of the page numbering scheme.\\ % -% If you want to refer to the first page of a page numbering scheme, -% just place a label there, e.\,g.\\ +% If you want to refer to the first page of a page numbering scheme, just place a label there, e.\,g.\\ % \indent |\pagenumbering{Roman}| \\ % \indent |\section{Section title\label{RomanSection}}| \\ -% (You know where you use |\pagenumbering{...}| and this is the -% \xpackage{pageslts} package, not the \xpackage{firstpage} one).\\ +% (You know where you use |\pagenumbering{...}| and this is the \xpackage{pageslts} package, +% not the \xpackage{firstpage} package).\\ % -% When you want to give the number of pages of each -% \textquotedblleft sector\textquotedblright{} of the page numbering -% scheme, you can use\\ +% When you want to give the number of pages of each \textquotedblleft sector\textquotedblright\ of +% the page numbering scheme, you can use\\ % \DescribeMacro{pagesLTS. page numbering scheme . number .local.cnt} % |\lastpages{<page numbering scheme>}{<number>}|, \\ -% where |<page numbering scheme>| is e.\,g. Roman, arabic,\ldots\ and -% |<number>| the \textquotedblleft sector\textquotedblright{} number, -% e.\,g.~|\lastpages{Roman}{2}|.\\ -% (Internally, the counter has the format -% |pagesLTS.<page numbering scheme>.<number>.local.cnt|.) -% -% \noindent If you used the page numbering scheme Roman for three times, -% you could say +% where |<page numbering scheme>| is e.\,g. Roman, arabic,\ldots\ and |<number>| the +% \textquotedblleft sector\textquotedblright{} number, e.\,g.~|\lastpages{Roman}{2}|.\\ +% (Internally, the counter has the format |pagesLTS.<page numbering scheme>.<number>.local.cnt|.) +% +% If you used the page numbering scheme Roman for three times, you could say % \begin{verbatim} % Last Roman page (pagesLTS.Roman): \lastpageref{pagesLTS.Roman}\\ % There are \lastpageref{pagesLTS.Roman.local}~pages with Roman numbers:\\ @@ -895,15 +716,13 @@ In memoriam % 4 pages in the second Roman sector (IV -- VII), and\\ % 3 pages in the third Roman sector (VIII -- X).\\ % \end{quote} -% (see e.\,g. the compiled \textsf{pageslts-example} file).\\ -% -% If you want to continue one page numbering scheme, but later on -% (third use of it, or for another page numbering scheme) want to -% reset the page number, just say |\setcounter{page}{1}| there.\\ +% (see e.\,g.~the compiled \textsf{pageslts-example} file).\\ % -% \pagebreak +% If you want to continue one page numbering scheme, but later on (third use of it, +% or for another page numbering scheme) want to reset the page number, just say +% |\setcounter{page}{1}| there.\\ % -% \noindent In your document the code +% In your document the code % \begin{verbatim} % \makeatletter % \renewcommand{\@evenfoot}% @@ -913,162 +732,88 @@ In memoriam % \renewcommand{\@oddfoot}{\@evenfoot} % \makeatother %\end{verbatim} -% \noindent creates footers like\\ +% creates footers like\\ % % \textquotedblleft\mbox{\textsl{DRAFT \today}\hspace{1cm}page V (5) of VII + 35 = 42 pages}\textquotedblright\\ % -% \noindent or\\ +% or\\ % % \textquotedblleft\mbox{\textsl{DRAFT \today}\hspace{1cm}page 10 (17) of VII + 35 = 42 pages}\textquotedblright\\ % -% \noindent in the compiled document (cf.~the \texttt{pageslts-example} file). +% in the compiled document (cf.~the \texttt{pageslts-example} file).\\ % -% \noindent Code like +% Code like % \begin{verbatim} % This book has \lastpageref{pagesLTS.Roman}+\lastpageref{pagesLTS.arabic} pages % % (\lastpageref{LastPages} pages in total). -% \end{verbatim} -% \noindent produces output like +%\end{verbatim} +% produces output like % \begin{quote} % This book has X+85 pages (95 pages in total). % \end{quote} -% \noindent (when using the \xpackage{hyperref} package, -% the references are even hyperlinked).\\ +% (when using the \xpackage{hyperref} package, the references are even hyperlinked).\\ % -% If |\addtocounter{page}{...}| or |\setcounter{page}{...}| have been used, -% the local version of \texttt{CurrentPage} can be used, |\theCurrentPageLocal|, -% see subsection~\ref{CurrentPageLocal}.\\ +% If |\addtocounter{page}{...}| or |\setcounter{page}{...}| have been used, the local version of +% \texttt{CurrentPage} can be used, |\theCurrentPageLocal|, see subsection~\ref{CurrentPageLocal}.\\ % % \subsection{\xpackage{papermas}(s) package\label{ss:papermas}} -% There is a kind of an add-on to this package, the \xpackage{papermas} -% package, which can be used to compute the number of sheets of paper -% needed to print a document (you can print more than one page of a -% document on one sheet of paper) as well as the approximate mass -% of the printout. Please see the \ref{ss:Downloads} subsection. -% -% \newpage +% There is a kind of an add-on to this package, the \xpackage{papermas} package, +% which can be used to compute the number of sheets of paper needed to print a document +% (you can print more than one page of a document on one sheet of paper) as well as the +% approximate mass of the printout. \url{https://ctan.org/pkg/papermas} % % \section{A few warnings\label{sec:warn}} -% % \subsection{Hyperref and repeated page numbers} -% -% When two (or more) different page numbering schemes are used, or the page number -% is reset, or for any other reason there are two pages with the same number -% (maybe in different format, e.\,g. $1$ and \textsc{I}), and \xpackage{hyperref} has -% not been configured right, this can cause problems. Use \xpackage{hyperref} with -% \texttt{plainpages=false} and \texttt{pdfpagelabels=true}, and everything should -% be fine.\\ -% More details can be found at -% \ \url{http://www.tex.ac.uk/cgi-bin/texfaq2html?label=pdfpagelabels}. -% -% \subsection{\texttt{\textbackslash AtEndDocument}\label{ssec:aed}} -% -% \indent The output of a \LaTeXe\ run is not independent of the order -% in which packages are loaded. It is often the case that the same -% formats for which one must put tables and figure at the end, -% are the ones in which endnotes are also required. -% If one wants to use |\AtEndDocument| here as well (as done for -% |\lastpageref{LastPage}|), then it is easy to get to three separate -% uses of |\AtEndDocument| (assuming one uses this for the endnotes -% as well). Clearly it is not safe for any package writer or user -% to assume that no material will follow what they put into -% |\AtEndDocument|. Therefore a message, which begins with -% \texttt{AED}, is included in every usage of |\AtEndDocument|, -% and it is tried to minimize any side effects the usage may have.\\ -% -% As now \textsc{Heiko Oberdiek}'s \texttt{atveryend} package is used, -% the references |\lastpageref{VeryLastPage}| and \newline -% |\lastpageref{LastPages}| should work all right. About how to get the -% \texttt{atveryend} package, please see subsection~\ref{ss:Downloads}. -% -% \subsection{Interaction with very old versions of the \xpackage{endfloat} % -% package\label{sec:endfloat}} -% -% \indent The \emph{very} old version~2.0 (and earlier) of the \xpackage{endfloat} -% package actually redefined the |\enddocument| command, -% and so interfered drastically with the \LaTeXe\ commands which make use -% of |\AtEndDocument|. Newer versions of \xpackage{endfloat} exist -% (at the time of writing this documentation: v2.5d as of 2011/12/25) -% in modern documentation form, which should be available from -% the same source where you received this file, see subsection~\ref{ss:Downloads}.\\ -% A note is placed in the style file at the |\RequirePackage| section, -% and later it is even checked whether a (very) old \xpackage{endfloat} -% package is in use. If it is, a warning or even an error message -% is given, depending on \xpackage{endfloat} version. -% This assumes, that the old versions of \xpackage{endfloat} at least gave -% a version date, of course.\\ -% If you want your \texttt{LastPage} to label the last page of -% these end floats, you need to load \xpackage{pageslts} \emph{after} -% loading \xpackage{endfloat}, or to use \texttt{VeryLastPage} instead. -% If, on the other hand, you \emph{want} \texttt{LastPage} to refer -% to the (not so) last page, exclusive of the floats at the end, -% then load in the reverse order. Independent from the order of -% \xpackage{pageslts} and \xpackage{endfloat}, you will still need the -% modified\footnote{New versions are available for over $15$~years now, -% so it might be time to update, if you did not do it already.} version of -% \xpackage{endfloat}.\\ -% Using the -% \nolinebreak{\texttt{LastPage}\textbf{\underline{s}}\ (\textit{s}!)}\ label -% should get you to the last page in all cases: |\lastpageref{LastPages}|.\\ -% -% Other \LaTeX209\ (!) packages also seem to like to redefine -% |\enddocument|. In addition to the old \xpackage{endfloat}, -% \xpackage{harvard} comes to mind. All of these will need to be -% modified swiftly. \textbf{If possible, update to \LaTeXe{}!} -% -% \pagebreak +% When two (or more) different page numbering schemes are used, or the page number is reset, +% or for any other reason there are two pages with the same number (maybe in different format, +% e.\,g.~$1$ and \textsc{I}), and \xpackage{hyperref} has not been configured right, +% this can cause problems. Use \xpackage{hyperref} with \texttt{plainpages=false} and +% \texttt{pdfpagelabels=true}, and everything should be fine. More details can be found at +% \url{https://texfaq.org/FAQ-pdfpagelabels}. % % \subsection{\xpackage{showkeys} package\label{ssec:showkeys}} -% % When the \xpackage{showkeys} package has been loaded in \texttt{draft} mode, % in the margin for each label a~box is displayed with the name of the label. % \xpackage{showkeys} accomplishes this by redefining |\label|, but -% \xpackage{pageslts} does not use |\label|, but writes directly to the -% {\nobreak |\jobname|\xfile{.aux}-}\allowbreak file, and this is generally done +% \xpackage{pageslts} does not always use |\label|, but sometimes writes directly into +% the {\nobreak |\jobname|\xfile{.aux}-}\allowbreak file, and this is generally done % \emph{after} the according page has shipped out, therefore no box can be placed % on the \emph{preceding} page. At~least \xpackage{pageslts} gives a warning, that % \xpackage{showkeys} cannot present the respective label. % % \subsection{\xpackage{lastpage} package\label{ssec:lastpage}} -% -% This package first started as a revision of the \xpackage{lastpage} -% package of \textsc{Jeffrey P. Goldberg} (jeffrey+news at goldmark dot org), -% but it became obvious that a replacement was needed to accomplish what this -% package does. For backward compatibility, a~label named |LastPage| is provided. -% Thus |\usepackage{lastpage}| can be replaced by\\ -% |\usepackage[pagecontinue=false,%|\newline -% |alphMult=0,AlphMulti=0,fnsymbolmult=false,romanMult=false,RomanMulti=false]{pageslts}|,\\ +% This package first started as a revision of the \xpackage{lastpage} package of +% \textsc{Jeffrey P. Goldberg} (jeffrey+news at goldmark dot org), but then I deemed +% a replacement necessary to accomplish what this package does. For backward compatibility, +% a~label named |LastPage| is provided. Thus |\usepackage{lastpage}| can be replaced by\\ +% |\usepackage[pagecontinue=false,alphMult=0,AlphMulti=0,fnsymbolmult=false,romanMult=false,RomanMulti=false%|% +% \linebreak{}| ]{pageslts}|,\\ % if the behaviour of the \xpackage{lastpage} package should be simulated. -% Using \textbf{old}~(!) versions of the \xpackage{lastpage} before the \xpackage{pageslts} -% before the \xpackage{hyperref} [2012/11/06 v6.83m] -% package results in multiply definitions of the |LastPage| label. -% While the \xpackage{pageslts} package cancels the command |\lastpage@putlabel| -% from the old \xpackage{lastpage} package (because it does this itself, and better), -% \xpackage{hyperref} redefines |\lastpage@putlabel| and thereby reintroduces it again -% (\xpackage{hyperref} should probably check for the version of the \xpackage{lastpage} -% package and/or whether the \xpackage{pageslts} package was also loaded.) +% It is also possible to load both packages (if recent versions are used). % % \subsection{Using an unknown page numbering scheme\label{sec:unknown}} -% -% \indent I do not know whether \LaTeXe\ can handle another page numbering -% scheme (e.\,g.~Hebraic), but if you want to use it, this should be -% no problem for the \xpackage{pageslts} package. But the original -% |\pagenumbering{...}| as well as the \xpackage{hyperref} package -% (if~used) might want to vote against it, especially when used together -% with the \xpackage{pageslts} package. Especially especially -% (\textit{sic}!) if the last page uses this new page numbering scheme, +% While at the time of the latest revision of the \xpackage{pageslts} package +% no other page numbering schemes (e.\,g.~Greek, Hebraic) were known to the maintainer, +% this package in principle works with every scheme which is recognized by the original +% |\pagenumbering| command. But the \xpackage{hyperref} package only then works with +% special page names, if the references to those pages are given in a certain way, +% thus the combination of a new page numbering scheme, the \xpackage{hyperref} and the +% \xpackage{pageslts} package might not work.~-- +% The \xpackage{pageslts} package by itself also works with schemes, which the original +% |\pagenumbering{...}| does not recognize, but because the original +% |\pagenumbering{...}| is called by the \xpackage{pageslts} package, this might cause +% an error. Especially if the last page uses this new page numbering scheme, % you should check everything double (at least).\\ -% (And if the number format is unknown to \LaTeX{}, the pages will have -% no number, and therefore cannot be referenced. You might be able to -% help yourself by using the \xpackage{hyperref} package and -% manually placing |\hypertarget|s and |\href|s.) +% And if the number format is unknown to \LaTeX , the pages will have no number, and +% therefore cannot be referenced. You might be able to help yourself by using the +% \xpackage{hyperref} package and manually placing |\phantomsectin|\,s and +% \nolinebreak{|\label{|\ldots|}|\,s} or even |\hypertarget|\,s and +% \nolinebreak{|\href|\,s.}\pagebreak % % \subsection{Page counter overflow\label{ss:overflow}} -% -% \indent Without the use of the \xpackage{alphalph} package, the\\ -% \textquotedblleft ranges of supported counter values are more or less -% restricted. Only \cs{arabic} can be used with any counter -% value \TeX\ supports. +% \underline{\textbf{WITHOUT~(!)}} the use of the \xpackage{alphalph} package, the\\[0.6ex] +% \textquotedblleft ranges of supported counter values are more or less restricted. +% Only \cs{arabic} can be used with any counter value \TeX\ supports. % \begin{quote} % \catcode`\|=12 % % \begin{tabular}{@{}l|l|l|l@{}} @@ -1087,137 +832,113 @@ In memoriam % \end{tabular}\\[1ex] % \texttt{MAX} = \texttt{2147483647} % \end{quote} -% \textquotedblright{} (\textsc{Heiko Oberdiek}: -% The \xpackage{alphalph} package, 2010/04/18, v2.3, first table, p.~2).\\ +% \textquotedblright\ (\xpackage{alphalph} package manual, 2019/12/09, v2.6, +% first table, p.~2).\\ % Please see subsubsections~\ref{sss:alphalph} and \ref{sss:romanMult} for -% instructions how to overcome these limitations. -% -% \newpage -% -% \subsection{Using the \xpackage{fnsymbol} page numbering scheme\label{ss:fnsymbol}} -% -% \indent Using the \texttt{fnsymbol} page numbering scheme can result in -% problems -- big ones!\\ -% \textbf{When using this page numbering scheme, it is very important to use} -% \ |\lastpageref{...}| \textbf{instead of}\ |\pageref{...}| \textbf{for any% -% link to any label provided by the \xpackage{pageslts} package.}\\ -% While the \xpackage{pageslts} package tries really very hard to circumvent -% any problem, other packages might screw up -- and quite totally for that. -% So,~you have been warned!\\ -% -% \begin{description} -% \item[-] There can be a counter overflow, see preceding subsection~\ref{ss:overflow}. -% -% \item[-] Adobe Reader DC 2015.008.20082 does not show the correct page names -% for all pages with \texttt{fnsymbol} page numbering scheme (see the example file), -% while at least the (\ldots\ of \ldots ) part of the page number is displayed correctly -% (see page~\pageref{logical page numbers}, tip about logical page numbers). -% When the \xpackage{alphalph} package and the \xpackage{pageslts} package with -% |fnsymbolmult| option are used, more page names are presented correctly by the Reader. -% (Adobe Reader~X even got all pages right.) -% \end{description} -% +% instructions how to overcome these limitations -- except \mbox{$\pm$MAX:} +% When this is exceeded via +% |\setcounter{<name>}{| something greater than MAX (or smaller then $-$MAX) |}|, +% then the error +% \begin{quote} +% \begin{verbatim} +% ! Number too big. +% I can only go up to 2147483647='17777777777="7FFFFFFF, +% so I'm using that number instead of yours. +% \end{verbatim} +% \end{quote} +% \vspace{-\baselineskip} +% will arise. But if the counter has a value of $2\,147\,483\,647 = {}$MAX, +% and |\addtocounter{<name>}{+1}| is tried, no error is issued, but +% |\arabic{<name>}| prints $-2147483648$, and further |\addtocounter{<name>}{+1}|s +% give $-2147483647$, $-2147483646$ and so on.\\ +% For a counter value of $-2\,147\,483\,647 = -$MAX and |\addtocounter{<name>}{-1}|s +% after $-2147483647$ it is printed $-2147483648$, $2147483647$, $2147483646$ and so on +% (without any message in the \xfile{log} file about any possible issue). % \newpage % % \section{Alternatives\label{sec:Alternatives}} -% -% There are similar packages, which do (or do not) similar things. As I -% neither know what exactly you want to accomplish when using this package -% (e.\,g.~page number vs. page name, hyperlinks or not), nor what resources -% you have (e.\,g.~\eTeX{}), here is a list of some possible alternatives:\\ -% -% \DescribeMacro{LastPage} -% \begin{description} -% \item[-] The \xpackage{LastPage} package also provides the -% \texttt{LastPage} label (but not \texttt{VeryLastPage} or -% \texttt{LastPages}). If you only want this and have a quite -% limited amount of \TeX\ resources, you might want to use that -% package instead. -% -% \item[-] If \LaTeX2.09\ is still used, and if you are unable -% to switch to \LaTeXe{}, the \LaTeX2.09{} compatible -% \xpackage{lastpage209.sty} can be used (which is also contained -% in the recent \xpackage{LastPage} package). -% \end{description} -% -% \DescribeMacro{totpages} -% \begin{description} -% \item[-] The \xpackage{totpages} package provides a -% \texttt{totpages} label similar to \texttt{LastPages}, -% but |\AtEndDocument| instead of |\AfterLastShipout|. Therefore -% you should stay with \xpackage{pageslts}. The \xpackage{totpages} -% package additionally computes the number of paper sheets needed to -% (double) print the document (with one, two, three,\ldots\ pages -% on one sheet of paper). This can also be accomplished with the -% \xpackage{papermas} package. -% \end{description} -% -% \DescribeMacro{totcount} -% \begin{description} -% \item[-] The \xpackage{totcount} package provides the last value -% of a counter, thus also the value of the \texttt{page} counter. -% You do not get a hyperlink to the last page, only the numerical -% value of the last page name is given (i.\,e. X+72 pages gives 72 -% instead of 82 as total number of pages), and the number of pages -% can be changed e.\,g. by |\addtocounter|. -% \end{description} -% -% \DescribeMacro{nofm} +% There are similar packages, which do (or do not) similar things. As I neither know +% what exactly you want to accomplish when using this package +% (e.\,g.~page number vs. page name, hyperlinks or not), nor what resources your system has, +% here is a list of some possible alternatives: % \begin{description} -% \item[-] \textquotedblleft There is a package \xpackage{nofm.sty} -% available, but some versions of it are defective, and most don't -% work with \xpackage{fancyhdr} because they take over the complete -% page layout.\textquotedblright{} (\textsc{Piet van Oostrum}: -% Page layout in \LaTeX{}, March~2, 2004, section~16; fancyhdr.pdf)\\ +% \item[-]\DescribeMacro{LaTeX kernel} +% The recent \LaTeX{} kernel already writes something like |\gdef \@abspage@last{42}| +% to the end of the \xfile{aux} file, where |42| is the number of pages, regardless of +% |\pagenumbering{...}| schemes, |\setcounter{page}{...}|, |\addtocounter{page}{...}| +% or whatever. |\the\ReadonlyShipoutCounter| contains the number of currently shipped out pages, +% i.e. current page minus one. +% +% \item[-]\DescribeMacro{LastPage} +% The \xpackage{lastpage} package also provides the \texttt{LastPage} label +% (but not \texttt{VeryLastPage} or \texttt{LastPages}). If you only want this and/or +% have a quite limited amount of \TeX\ resources, you might want to use that package instead. +% It includes versions for older \LaTeX-kernels and even for \mbox{\LaTeX2.09{}.}\\ +% \url{https://ctan.org/pkg/lastpage} +% +% \item[-]\DescribeMacro{totpages} +% The \xpackage{totpages} package provides a \texttt{totpages} label similar to +% \texttt{LastPages}, but |\AtEndDocument| instead of |\AfterLastShipout|. Therefore +% you should stay with \xpackage{pageslts}. The \xpackage{totpages} package additionally +% computes the number of paper sheets needed to (double) print the document (with one, +% two, three,\ldots\ pages on one sheet of paper). This can also be accomplished with the +% \xpackage{papermas} package (see \autoref{ss:papermas}).\\ +% \url{https://ctan.org/pkg/totpages} +% +% \item[-]\DescribeMacro{totcount} +% The \xpackage{totcount} package provides the last value of a counter, thus also the value +% of the \texttt{page} counter. You do not get a hyperlink to the last page, only the numerical +% value of the last page name is given \mbox{(i.\,e.~X+72} pages gives 72 instead of 82 +% as total number of pages), and the number of pages can be changed for example +% by |\addtocounter|.\\ +% \url{https://ctan.org/pkg/totcount} +% +% \item[-]\DescribeMacro{nofm} +% \textquotedblleft There is a package \xpackage{nofm.sty} available, but some versions +% of it are defective, and most don't work with \xpackage{fancyhdr} because they take over +% the complete page layout.\textquotedblright{} (\textsc{Piet van Oostrum}: +% Page layout in \LaTeX , March~2, 2004, section~16; fancyhdr.pdf)\\ % \xpackage{nofm} as of 1991/02/25 (without version number), available at\\ -% \url{http://mirror.ctan.org/obsolete/macros/latex209/contrib/misc/nofm.sty},\\ +% \url{https://mirror.ctan.org/obsolete/macros/latex209/contrib/misc/nofm.sty},\\ % does not work with e.\,g. \xpackage{hyperref}, redefines |\enddocument| % as well as |\@oddhead|, |\@evenhead|, |\@oddfoot|, and |\@evenfoot|.\\ -% If you know the (\url{https://www.CTAN.org}) location of a% +% If you know the (\url{https://CTAN.org}) location of a % \textbf{working}~(!) version, please send me an e-mail, thanks! -% \end{description} -% -% \DescribeMacro{count1to} -% \begin{description} -% \item[-] You may want to have a look at the \xpackage{count1to} package. -% \end{description} % -% \DescribeMacro{zref} -% \begin{description} -% \item[-] The \xpackage{zref} package of \textsc{Heiko Oberdiek} requires -% \eTeX . \xpackage{pageslts} does not require \eTeX , but if you -% already have \eTeX , you may have a look at the extensive -% \xpackage{zref} package, whether it suits your needs better -% (or additionally or whatsoever). +% \item[-]\DescribeMacro{count1to} +% The \xpackage{count1to} package \textquotedblleft sets |\count1| to |\count8| +% with the values of page to subparagraph. |\count9| is used to flag odd +% pages. \ldots\ [T]he code for the TotalPages +% label\textquotedblright\ (package manual, 2024-06-13) has been removed +% from the current package version.\\ +% \url{https://ctan.org/pkg/count1to} +% +% \item[-]\DescribeMacro{zref} +% The \xpackage{zref} package \textquotedblleft implements an extensible referencing +% system\textquotedblright\ (package manual, 2023-09-14).\\ +% \url{https://ctan.org/pkg/zref} % \end{description} % % \bigskip % % \noindent (You programmed or found another alternative, -% which is available at \url{https://www.CTAN.org}?\\ +% which is available at \url{https://CTAN.org}?\\ % OK, send an e-mail to me with the name, location at CTAN, -% and a short notice, and I will probably include it in the list above.)\\ -% -% \smallskip -% -% \noindent About how to get those packages, please see subsection~\ref{ss:Downloads}. -% +% and a short notice, and I will probably include it in the list above.) % \newpage % % \section{Example} -% % \begin{macrocode} %<*example> -\documentclass[british]{article}[2014/09/29]% v1.4h -\usepackage{lipsum}[2014/07/27]% v1.3 -\usepackage[draft]{showkeys}[2014/10/28]% v3.17 +\documentclass[british]{article}[2024/02/08]% v1.4n +\usepackage{lipsum}[2021-09-20]% v2.7 +\usepackage[draft]{showkeys}[2024/05/23]% v3.21 %% Use final instead of draft to hide the keys. %% -\usepackage{hyperref}[2012/11/06]% v6.83m +\PassOptionsToPackage{hyperref}{pdfpagelabels=true,hyperindex=false} +\usepackage{hyperref}[2024-10-30]% v7.01k \hypersetup{% extension=pdf,% plainpages=false,% - pdfpagelabels=true,% - hyperindex=false,% pdflang={en},% pdftitle={pageslts package example},% pdfauthor={Hans-Martin Muench},% @@ -1229,7 +950,7 @@ In memoriam bookmarksopen=true% } \usepackage[pagecontinue=true,alphMult=ab,AlphMulti=AB,fnsymbolmult=true,% - romanMult=true,RomanMulti=true]{pageslts}[2015/12/21]% v1.2f + romanMult=true,RomanMulti=true]{pageslts}[2024-11-20]% v2.0a %% These are the default options. %% \makeatletter @@ -1246,11 +967,13 @@ In memoriam \renewcommand{\@oddfoot}{\@evenfoot} \def\pagesLTSexampleArabic{3} \def\pagesLTSexamplealph{23} - \gdef\unit#1{\mathord{\thinspace\mathrm{#1}}}% \makeatother \listfiles +% \end{macrocode} +% \newpage +% \begin{macrocode} \begin{document} \pagenumbering{roman} %% Note the first \pagenumbering immediately behind \begin{document}! %% @@ -1261,13 +984,14 @@ In memoriam \markboth{Example for pageslts}{Example for pageslts} This example demonstrates the most common uses of package\\ -\textsf{pageslts}, v1.2f as of 2015/12/21 (HMM).\\ +\textsf{pageslts}, v2.0a as of 2024-11-20 (HMM);\\ +\url{https://ctan.org/pkg/pageslts}.\\ + The used options were \texttt{pagecontinue=true}, \texttt{alphMult=ab}, \texttt{AlphMulti=AB}, \linebreak \texttt{fnsymbolmult=true}, \texttt{romanMult=true}, and \texttt{RomanMulti=true} -(the default ones).\\ -For more details please see the documentation!\\ +(the default\linebreak ones). -- For more details please see the documentation!\\ \label{keys} To hide the \pageref{keys}{\qquad } use option \texttt{final} instead of \texttt{draft} with the \textsf{showkeys} @@ -1287,7 +1011,7 @@ Page \thepage\ (\theCurrentPage; local: \theCurrentPageLocal) of % \lastpageref{LastPages} pages.\\ If the \textsf{hyperref} package is loaded, but the hyperlinks of the references shall be suppressed, \verb|\pageref*{...}| -and \verb|\lastpageref*{...}| can be used:\\ +and \verb|\lastpageref*{...}| can be used:\\[0.5\baselineskip] Page \thepage\ (\theCurrentPage; local: \theCurrentPageLocal) of % \lastpageref*{pagesLTS.roman}(\lastpageref*{pagesLTS.roman.local}) + % \lastpageref*{pagesLTS.Roman}(\lastpageref*{pagesLTS.Roman.local}) + % @@ -1304,7 +1028,7 @@ trademark owner. There is no intention of infringement; the usage is to the benefit of the trademark owner.\\ \textbf{Tip}: Use \textit{logical page numbers} -for the display of the pdf (in Adobe Reader DC 2015.008.20082: +for the display of the pdf (in Adobe Reader Continuos Release 2024.004.20272:\\ Edit $>$ Preferences $>$ Categories: Page Display $>$ Page Content and Information: Use logical page numbers)!\\ @@ -1313,12 +1037,6 @@ Roman, alph, Alph or fnsymbol ones? No problem, e.\,g. just give a\\ \verb|\addtocounter{page}{|-\textit{some number}\verb|}| in the source code of this example file (or uncomment the prepared line)! -\bigskip - -Save per page about $200\unit{ml}$ water, $2\unit{g}$ CO$_{2}$ -and $2\unit{g}$ wood:\\ -Therefore please print only if this is really necessary. - \pagebreak \tableofcontents @@ -1327,8 +1045,7 @@ Therefore please print only if this is really necessary. \pagenumbering{roman} %% in case the page numbering is changed before, -%% otherwise pagesLTS.current.local.roman on this page -%% would be undefined +%% otherwise pagesLTS.current.local.roman on this page would be undefined \section{roman} @@ -1342,13 +1059,16 @@ the first page, of course.)\\ \noindent The page (\verb|\thepage|): \thepage \\ \noindent Current page (\verb|\theCurrentPage|), -i.\,e. counted continuously from the first page): \theCurrentPage \\ +i.\,e.\ counted continuously from the first\linebreak page):~\theCurrentPage \\ You can get this also in other formats: \roman{CurrentPage}, \Roman{CurrentPage}, \arabic{CurrentPage}, \fnsymbol{CurrentPage}, \alph{CurrentPage}, \Alph{CurrentPage}. +% \end{macrocode} +% \newpage +% \begin{macrocode} \noindent CurrentPageLocal (\verb|\theCurrentPageLocal|), -i.\,e. counted continuously from the first page of the +i.\,e.\ counted continuously from the first page of the current page numbering scheme): \theCurrentPageLocal \\ You can get also this in other formats, too: \roman{pagesLTS.current.local.roman}, \Roman{pagesLTS.current.local.roman}, @@ -1384,8 +1104,9 @@ because the number of pages does not change (only the page numbers).\\ (There are only \lastpageref{pagesLTS.arabic.local} pages with arabic numbers, because an \verb|\addtocounter{page}{|\pagesLTSexampleArabic\verb|}| was used.)\\ -\noindent Last fnsymbol page (pagesLTS.fnsymbol): \lastpageref{pagesLTS.fnsymbol} \\ -(\verb|\lastpageref{pagesLTS.fnsymbol}| -- never \verb|\pageref{pagesLTS.fnsymbol}|!)\\ +\noindent Last fnsymbol page (pagesLTS.fnsymbol): \lastpageref{pagesLTS.fnsymbol}\\ +(better \verb|\lastpageref{pagesLTS.fnsymbol}| than just\\ +\verb|\pageref{pagesLTS.fnsymbol}|!)\\ (There are \lastpageref{pagesLTS.fnsymbol.local} pages with fnsymbol numbers.)\\ \noindent Last alph page (pagesLTS.alph): \lastpageref{pagesLTS.alph}{\hskip4em } @@ -1398,9 +1119,9 @@ because an \verb|\addtocounter{page}{|\pagesLTSexamplealph\verb|}| was used.)\\ \noindent Last page's \textit{name} (LastPage): \lastpageref{LastPage}\\ \noindent Very last page's \textit{name} (VeryLastPage): \lastpageref{VeryLastPage}\\ -(\texttt{lastpage} and \texttt{VeryLastPage} are identical, unless -a package with output \linebreak -\verb|\AtEndDocument| after the \textsf{pageslts} package was added.)\\ +(\texttt{LastPage} and \texttt{VeryLastPage} are now identical, because both are now done +\verb|\AddToHook{enddocument/afterlastpage}| instead of formerly\\ +\verb|\AtEndDocument| and \verb|\AfterLastShipout|, which were different.)\\ \noindent Last page's \textit{number} (LastPages): \lastpageref{LastPages}{\hskip3em } (=~total number of pages)\\ @@ -1420,10 +1141,10 @@ a package with output \linebreak \noindent The page (\verb|\thepage|): \thepage \\ \noindent Current page (\verb|\theCurrentPage|), -i.\,e. counted continuously from the first page): \theCurrentPage \\ +i.\,e.\ counted continuously from the first page): \theCurrentPage \\ \noindent CurrentPageLocal (\verb|\theCurrentPageLocal|), -i.\,e. counted continuously from the first page of the +i.\,e.\ counted continuously from the first page of the current page numbering scheme): \theCurrentPageLocal \\ \noindent Last roman page (pagesLTS.roman): \lastpageref{pagesLTS.roman}{\hskip4em } @@ -1442,8 +1163,10 @@ current page numbering scheme): \theCurrentPageLocal \\ (There are only \lastpageref{pagesLTS.arabic.local} pages with arabic numbers, because an \verb|\addtocounter{page}{|\pagesLTSexampleArabic\verb|}| was used.)\\ -\noindent Last fnsymbol page (pagesLTS.fnsymbol): \lastpageref{pagesLTS.fnsymbol} \\ -(\verb|\lastpageref{pagesLTS.fnsymbol}| -- never \verb|\pageref{pagesLTS.fnsymbol}|!)\\ +\noindent Last fnsymbol page (pagesLTS.fnsymbol): \lastpageref{pagesLTS.fnsymbol}\\ +(better \verb|\lastpageref{pagesLTS.fnsymbol}| than just\\ +\verb|\pageref{pagesLTS.fnsymbol}|!)\\ + (There are \lastpageref{pagesLTS.fnsymbol.local} pages with fnsymbol numbers.)\\ \noindent Last alph page (pagesLTS.alph): \lastpageref{pagesLTS.alph}{\hskip4em } @@ -1456,9 +1179,9 @@ because an \verb|\addtocounter{page}{|\pagesLTSexamplealph\verb|}| was used.)\\ \noindent Last page's \textit{name} (LastPage): \lastpageref{LastPage}\\ \noindent Very last page's \textit{name} (VeryLastPage): \lastpageref{VeryLastPage}\\ -(\texttt{LastPage} and \texttt{VeryLastPage} are identical, unless -a package with output \linebreak -\verb|\AtEndDocument| after the \textsf{pageslts} package was added.)\\ +(\texttt{LastPage} and \texttt{VeryLastPage} are now identical, because both are now done +\verb|\AddToHook{enddocument/afterlastpage}| instead of formerly\\ +\verb|\AtEndDocument| and \verb|\AfterLastShipout|, which were different.)\\ \noindent Last page's \textit{number} (LastPages): \lastpageref{LastPages}{\hskip3em } (=~total number of pages)\\ @@ -1481,6 +1204,9 @@ The Roman page numbering scheme is continued later in section~\ref{Roman2})! \newpage +% \end{macrocode} +% \newpage +% \begin{macrocode} \pagenumbering{arabic} \section{arabic} @@ -1493,10 +1219,10 @@ The Roman page numbering scheme is continued later in section~\ref{Roman2})! \noindent The page (\verb|\thepage|): \thepage \\ \noindent Current page (\verb|\theCurrentPage|), -i.\,e. counted continuously from the first page): \theCurrentPage \\ +i.\,e.\ counted continuously from the first page): \theCurrentPage \\ \noindent CurrentPageLocal (\verb|\theCurrentPageLocal|), -i.\,e. counted continuously from the first page of the +i.\,e.\ counted continuously from the first page of the current page numbering scheme): \theCurrentPageLocal \\ \noindent Last roman page (pagesLTS.roman): \lastpageref{pagesLTS.roman}{\hskip4em } @@ -1511,12 +1237,17 @@ current page numbering scheme): \theCurrentPageLocal \\ \lastpages{Roman}{3}~pages in the third Roman sector (\pageref{Roman3}{\hskip3em }-\lastpageref{pagesLTS.Roman.3}{\hskip3em }).\\ +% \end{macrocode} +% \newpage +% \begin{macrocode} \noindent Last arabic page (pagesLTS.arabic): \lastpageref{pagesLTS.arabic}{\hskip5em } (There are only \lastpageref{pagesLTS.arabic.local} pages with arabic numbers, because an \verb|\addtocounter{page}{|\pagesLTSexampleArabic\verb|}| was used.)\\ -\noindent Last fnsymbol page (pagesLTS.fnsymbol): \lastpageref{pagesLTS.fnsymbol} \\ -(\verb|\lastpageref{pagesLTS.fnsymbol}| -- never \verb|\pageref{pagesLTS.fnsymbol}|!)\\ +\noindent Last fnsymbol page (pagesLTS.fnsymbol): \lastpageref{pagesLTS.fnsymbol}\\ +(better \verb|\lastpageref{pagesLTS.fnsymbol}| than just\\ +\verb|\pageref{pagesLTS.fnsymbol}|!)\\ + (There are \lastpageref{pagesLTS.fnsymbol.local} pages with fnsymbol numbers.)\\ \noindent Last alph page (pagesLTS.alph): \lastpageref{pagesLTS.alph}{\hskip4em } @@ -1529,9 +1260,9 @@ because an \verb|\addtocounter{page}{|\pagesLTSexamplealph\verb|}| was used.)\\ \noindent Last page's \textit{name} (LastPage): \lastpageref{LastPage}\\ \noindent Very last page's \textit{name} (VeryLastPage): \lastpageref{VeryLastPage}\\ -(\texttt{LastPage} and \texttt{VeryLastPage} are identical, unless -a package with output \linebreak -\verb|\AtEndDocument| after the \textsf{pagesLTS} package was added.)\\ +(\texttt{LastPage} and \texttt{VeryLastPage} are now identical, because both are now done +\verb|\AddToHook{enddocument/afterlastpage}| instead of formerly\\ +\verb|\AtEndDocument| and \verb|\AfterLastShipout|, which were different.)\\ \noindent Last page's \textit{number} (LastPages): \lastpageref{LastPages}{\hskip3em } (=~total number of pages)\\ @@ -1552,10 +1283,13 @@ for the current or total page count} \noindent The page (\verb|\thepage|): \thepage \\ \noindent Current page (\verb|\theCurrentPage|), -i.\,e. counted continuously from the first page): \theCurrentPage \\ +i.\,e.\ counted continuously from the first page): \theCurrentPage \\ +% \end{macrocode} +% \newpage +% \begin{macrocode} \noindent CurrentPageLocal (\verb|\theCurrentPageLocal|), -i.\,e. counted continuously from the first page of the +i.\,e.\ counted continuously from the first page of the current page numbering scheme): \theCurrentPageLocal \\ \noindent Last roman page (pagesLTS.roman): \lastpageref{pagesLTS.roman}{\hskip4em } @@ -1574,8 +1308,10 @@ current page numbering scheme): \theCurrentPageLocal \\ (There are only \lastpageref{pagesLTS.arabic.local} pages with arabic numbers, because an \verb|\addtocounter{page}{|\pagesLTSexampleArabic\verb|}| was used.)\\ -\noindent Last fnsymbol page (pagesLTS.fnsymbol): \lastpageref{pagesLTS.fnsymbol} \\ -(\verb|\lastpageref{pagesLTS.fnsymbol}| -- never \verb|\pageref{pagesLTS.fnsymbol}|!)\\ +\noindent Last fnsymbol page (pagesLTS.fnsymbol): \lastpageref{pagesLTS.fnsymbol}\\ +(better \verb|\lastpageref{pagesLTS.fnsymbol}| than just\\ +\verb|\pageref{pagesLTS.fnsymbol}|!)\\ + (There are \lastpageref{pagesLTS.fnsymbol.local} pages with fnsymbol numbers.)\\ \noindent Last alph page (pagesLTS.alph): \lastpageref{pagesLTS.alph}{\hskip4em } @@ -1588,9 +1324,9 @@ because an \verb|\addtocounter{page}{|\pagesLTSexamplealph\verb|}| was used.)\\ \noindent Last page's \textit{name} (LastPage): \lastpageref{LastPage}\\ \noindent Very last page's \textit{name} (VeryLastPage): \lastpageref{VeryLastPage}\\ -(\texttt{LastPage} and \texttt{VeryLastPage} are identical, unless -a package with output \linebreak -\verb|\AtEndDocument| after the \textsf{pageslts} package was added.)\\ +(\texttt{LastPage} and \texttt{VeryLastPage} are now identical, because both are now done +\verb|\AddToHook{enddocument/afterlastpage}| instead of formerly\\ +\verb|\AtEndDocument| and \verb|\AfterLastShipout|, which were different.)\\ \noindent Last page's \textit{number} (LastPages): \lastpageref{LastPages}{\hskip3em } (=~total number of pages)\\ @@ -1611,10 +1347,10 @@ in the source code.)\\ \noindent The page (from \verb|\thepage| command): \thepage \\ \noindent Current page (from \verb|\theCurrentPage|\ % -command), i.\,e. counted continuously from the first page): \theCurrentPage \\ +command), i.\,e.\ counted continuously from the first page): \theCurrentPage \\ \noindent CurrentPageLocal (from \verb|\theCurrentPageLocal|\ % -command), i.\,e. counted continuously from the first page of the +command), i.\,e.\ counted continuously from the first page of the current page numbering scheme): \theCurrentPageLocal\\ \noindent Last page's number (LastPages): \lastpageref{LastPages}{\hskip3em } @@ -1628,15 +1364,8 @@ current page numbering scheme): \theCurrentPageLocal\\ \section{fnsymbol} -Adobe Reader DC 2015.008.20082 does not show the correct page names -for all pages with \texttt{fnsymbol} page numbering scheme, -while at least the (\ldots\ of \ldots ) part of the page number is displayed correctly. -(Adobe Reader~X even got all pages right.) - -\bigskip - Without option \texttt{fnsymbolmult=true} of the \textsf{pageslts} package -(and the help of \textsc{Heiko Oberdiek}'s \textsf{alphalph} package), +(and the help of the \textsf{alphalph} package), after page~9 (\textquotedblleft \ensuremath {\ddagger \ddagger }\textquotedblright ) (and also for negative page numbers) there would just appear a \begin{quote} @@ -1655,8 +1384,8 @@ the first, second, third,\ldots\ page (\ensuremath {**}, \ensuremath {\mathparagraph \mathparagraph }), and after the tenth page the \textquotedblleft number\textquotedblright{} is tripled (\ensuremath {***}, \ensuremath {\dagger \dagger \dagger },\ldots). -Page zero is named 0 and negative pages just named like the positive ones -with addition of a minus sign~($-$). +Page zero is named 0 and negative pages are just named like the positive ones +with addition of a minus \mbox{sign ($-$).} \bigskip @@ -1666,10 +1395,10 @@ with addition of a minus sign~($-$). \noindent The page (\verb|\thepage|): \thepage \\ \noindent Current page (\verb|\theCurrentPage|), -i.\,e. counted continuously from the first page): \theCurrentPage \\ +i.\,e.\ counted continuously from the first page): \theCurrentPage \\ \noindent CurrentPageLocal (\verb|\theCurrentPageLocal|), -i.\,e. counted continuously from the first page of the +i.\,e.\ counted continuously from the first page of the current page numbering scheme): \theCurrentPageLocal \\ \noindent Last roman page (pagesLTS.roman): \lastpageref{pagesLTS.roman}{\hskip4em } @@ -1688,8 +1417,10 @@ current page numbering scheme): \theCurrentPageLocal \\ (There are only \lastpageref{pagesLTS.arabic.local} pages with arabic numbers, because an \verb|\addtocounter{page}{|\pagesLTSexampleArabic\verb|}| was used.)\\ -\noindent Last fnsymbol page (pagesLTS.fnsymbol): \lastpageref{pagesLTS.fnsymbol} \\ -(\verb|\lastpageref{pagesLTS.fnsymbol}| -- never \verb|\pageref{pagesLTS.fnsymbol}|!)\\ +\noindent Last fnsymbol page (pagesLTS.fnsymbol): \lastpageref{pagesLTS.fnsymbol}\\ +(better \verb|\lastpageref{pagesLTS.fnsymbol}| than just\\ +\verb|\pageref{pagesLTS.fnsymbol}|!)\\ + (There are \lastpageref{pagesLTS.fnsymbol.local} pages with fnsymbol numbers.)\\ \noindent Last alph page (pagesLTS.alph): \lastpageref{pagesLTS.alph}{\hskip4em } @@ -1702,9 +1433,9 @@ because an \verb|\addtocounter{page}{|\pagesLTSexamplealph\verb|}| was used.)\\ \noindent Last page's \textit{name} (LastPage): \lastpageref{LastPage}\\ \noindent Very last page's \textit{name} (VeryLastPage): \lastpageref{VeryLastPage}\\ -(\texttt{LastPage} and \texttt{VeryLastPage} are identical, unless -a package with output \linebreak -\verb|\AtEndDocument| after the \textsf{pageslts} package was added.)\\ +(\texttt{LastPage} and \texttt{VeryLastPage} are now identical, because both are now done +\verb|\AddToHook{enddocument/afterlastpage}| instead of formerly\\ +\verb|\AtEndDocument| and \verb|\AfterLastShipout|, which were different.)\\ \noindent Last page's \textit{number} (LastPages): \lastpageref{LastPages}{\hskip3em } (=~total number of pages)\\ @@ -1715,16 +1446,16 @@ a package with output \linebreak \pagenumbering{Roman} -\section{Roman - again!\label{Roman2}} +\section{Roman -- again!\label{Roman2}} The page number would start with \textquotedblleft I\textquotedblright{} again -- but for the \textsf{pageslts} package (with option \texttt{pagecontinue=true}, or with option just \texttt{pagecontinue}, or even just \nolinebreak{with\textbf{out}} option \texttt{pagecontinue=false}). -This package remembered the (\arabic{pagesLTS.double.Roman}-1)\footnote{% -OK, here you have to compute this value for yourself, but % -subtracting one should be manageable for \TeX{}nicians.} pages already -done in Roman output, and therefore continues with page +This package remembered the +\arabic{pagesLTS.double.Roman}-1, +i.\,e.~\the\numexpr\value{pagesLTS.double.Roman}-1\relax, pages +already done in Roman output, and therefore continues with page \textquotedblleft \thepage \textquotedblright .\\ If you want to start with \textquotedblleft I\textquotedblright{} all over again, you will have two pages with the same name, @@ -1737,10 +1468,13 @@ or a \verb|\setcounter{page}{1}|\ here (not demonstrated in this example file).\ \noindent The page (\verb|\thepage|): \thepage \\ \noindent Current page (\verb|\theCurrentPage|), -i.\,e. counted continuously from the first page): \theCurrentPage \\ +i.\,e.\ counted continuously from the first page): \theCurrentPage \\ +% \end{macrocode} +% \newpage +% \begin{macrocode} \noindent CurrentPageLocal (\verb|\theCurrentPageLocal|), -i.\,e. counted continuously from the first page of the +i.\,e.\ counted continuously from the first page of the current page numbering scheme): \theCurrentPageLocal \\ \noindent Last roman page (pagesLTS.roman): \lastpageref{pagesLTS.roman}{\hskip4em } @@ -1759,7 +1493,7 @@ current page numbering scheme): \theCurrentPageLocal \\ (There are only \lastpageref{pagesLTS.arabic.local} pages with arabic numbers, because an \verb|\addtocounter{page}{|\pagesLTSexampleArabic\verb|}| was used.)\\ -\noindent Last fnsymbol page (pagesLTS.fnsymbol): \lastpageref{pagesLTS.fnsymbol} \\ +\noindent Last fnsymbol page (pagesLTS.fnsymbol): \lastpageref{pagesLTS.fnsymbol}\\ (\verb|\lastpageref{pagesLTS.fnsymbol}| -- never \verb|\pageref{pagesLTS.fnsymbol}|!)\\ (There are \lastpageref{pagesLTS.fnsymbol.local} pages with fnsymbol numbers.)\\ @@ -1774,9 +1508,9 @@ because an \verb|\addtocounter{page}{|\pagesLTSexamplealph\verb|}| was used.)\\ \noindent Last page's \textit{name} (LastPage): \lastpageref{LastPage}\\ \noindent Very last page's \textit{name} (VeryLastPage): \lastpageref{VeryLastPage}\\ -(\texttt{LastPage} and \texttt{VeryLastPage} are identical, unless -a package with output \linebreak -\verb|\AtEndDocument| after the \textsf{pageslts} package was added.)\\ +(\texttt{LastPage} and \texttt{VeryLastPage} are now identical, because both are now done +\verb|\AddToHook{enddocument/afterlastpage}| instead of formerly\\ +\verb|\AtEndDocument| and \verb|\AfterLastShipout|, which were different.)\\ \noindent Last page's \textit{number} (LastPages): \lastpageref{LastPages}{\hskip3em } (=~total number of pages)\\ @@ -1808,10 +1542,10 @@ The Roman page numbering scheme is continued later in section~\ref{Roman3})! \noindent The page (\verb|\thepage|): \thepage \\ \noindent Current page (\verb|\theCurrentPage|), -i.\,e. counted continuously from the first page): \theCurrentPage \\ +i.\,e.\ counted continuously from the first page): \theCurrentPage \\ \noindent CurrentPageLocal (\verb|\theCurrentPageLocal|), -i.\,e. counted continuously from the first page of the +i.\,e.\ counted continuously from the first page of the current page numbering scheme): \theCurrentPageLocal \\ \noindent Last roman page (pagesLTS.roman): \lastpageref{pagesLTS.roman}{\hskip4em } @@ -1830,8 +1564,13 @@ current page numbering scheme): \theCurrentPageLocal \\ (There are only \lastpageref{pagesLTS.arabic.local} pages with arabic numbers, because an \verb|\addtocounter{page}{|\pagesLTSexampleArabic\verb|}| was used.)\\ -\noindent Last fnsymbol page (pagesLTS.fnsymbol): \lastpageref{pagesLTS.fnsymbol} \\ -(\verb|\lastpageref{pagesLTS.fnsymbol}| -- never \verb|\pageref{pagesLTS.fnsymbol}|!)\\ +% \end{macrocode} +% \newpage +% \begin{macrocode} +\noindent Last fnsymbol page (pagesLTS.fnsymbol): \lastpageref{pagesLTS.fnsymbol}\\ +(better \verb|\lastpageref{pagesLTS.fnsymbol}| than just\\ +\verb|\pageref{pagesLTS.fnsymbol}|!)\\ + (There are \lastpageref{pagesLTS.fnsymbol.local} pages with fnsymbol numbers.)\\ \noindent Last alph page (pagesLTS.alph): \lastpageref{pagesLTS.alph}{\hskip4em } @@ -1844,9 +1583,9 @@ because an \verb|\addtocounter{page}{|\pagesLTSexamplealph\verb|}| was used.)\\ \noindent Last page's \textit{name} (LastPage): \lastpageref{LastPage}\\ \noindent Very last page's \textit{name} (VeryLastPage): \lastpageref{VeryLastPage}\\ -(\texttt{LastPage} and \texttt{VeryLastPage} are identical, unless -a package with output \linebreak -\verb|\AtEndDocument| after the \textsf{pageslts} package was added.)\\ +(\texttt{LastPage} and \texttt{VeryLastPage} are now identical, because both are now done +\verb|\AddToHook{enddocument/afterlastpage}| instead of formerly\\ +\verb|\AtEndDocument| and \verb|\AfterLastShipout|, which were different.)\\ \noindent Last page's \textit{number} (LastPages): \lastpageref{LastPages}{\hskip3em } (=~total number of pages)\\ @@ -1855,9 +1594,9 @@ a package with output \linebreak \newpage -Without option \texttt{alphMult=ab} of the \textsf{pageslts} (and the help of -\textsc{Heiko Oberdiek's} \textsf{alphalph} package), after page -\textquotedblleft z\textquotedblright{} there would just appear a +Without option \texttt{alphMult=ab} of the \textsf{pageslts} (and the help of the +\textsf{alphalph} package), after page \textquotedblleft z\textquotedblright{} there +would just appear a \begin{quote} \begin{verbatim} LaTeX Error: Counter too large @@ -1884,16 +1623,14 @@ in the source code here. \section{Roman - third time!\label{Roman3}} -The page number would start with -\textquotedblleft I\textquotedblright{} again -- but -for the \textsf{pageslts} package (with option \texttt{pagecontinue=true}, +The page number would start with \textquotedblleft I\textquotedblright{} again +-- but for the \textsf{pageslts} package (with option \texttt{pagecontinue=true}, or with option just \texttt{pagecontinue}, or even just \nolinebreak{with\textbf{out}} option \texttt{pagecontinue=false}). This package remembered the -(\arabic{pagesLTS.double.Roman}-1)\footnote{OK, here % -you have to compute this value for yourself, but % -subtracting one should be managable for \TeX nicians.} pages already -done in Roman output, and therefore continues with page +\arabic{pagesLTS.double.Roman}-1, +i.\,e.~\the\numexpr\value{pagesLTS.double.Roman}-1\relax, pages +already done in Roman output, and therefore continues with page \textquotedblleft \thepage \textquotedblright .\\ If you want to start with \textquotedblleft I\textquotedblright{} all over again, you will have (at least) two pages with the same name, @@ -1907,10 +1644,10 @@ but nevertheless you can do this by using option \noindent The page (\verb|\thepage|): \thepage \\ \noindent Current page (\verb|\theCurrentPage|), -i.\,e. counted continuously from the first page): \theCurrentPage \\ +i.\,e.\ counted continuously from the first page): \theCurrentPage \\ \noindent CurrentPageLocal (\verb|\theCurrentPageLocal|), -i.\,e. counted continuously from the first page of the +i.\,e.\ counted continuously from the first page of the current page numbering scheme): \theCurrentPageLocal \\ \noindent Last roman page (pagesLTS.roman): \lastpageref{pagesLTS.roman}{\hskip4em } @@ -1929,8 +1666,10 @@ current page numbering scheme): \theCurrentPageLocal \\ (There are only \lastpageref{pagesLTS.arabic.local} pages with arabic numbers, because an \verb|\addtocounter{page}{|\pagesLTSexampleArabic\verb|}| was used.)\\ -\noindent Last fnsymbol page (pagesLTS.fnsymbol): \lastpageref{pagesLTS.fnsymbol} \\ -(\verb|\lastpageref{pagesLTS.fnsymbol}| -- never \verb|\pageref{pagesLTS.fnsymbol}|!)\\ +\noindent Last fnsymbol page (pagesLTS.fnsymbol): \lastpageref{pagesLTS.fnsymbol}\\ +(better \verb|\lastpageref{pagesLTS.fnsymbol}| than just\\ +\verb|\pageref{pagesLTS.fnsymbol}|!)\\ + (There are \lastpageref{pagesLTS.fnsymbol.local} pages with fnsymbol numbers.)\\ \noindent Last alph page (pagesLTS.alph): \lastpageref{pagesLTS.alph}{\hskip4em } @@ -1943,9 +1682,9 @@ because an \verb|\addtocounter{page}{|\pagesLTSexamplealph\verb|}| was used.)\\ \noindent Last page's \textit{name} (LastPage): \lastpageref{LastPage}\\ \noindent Very last page's \textit{name} (VeryLastPage): \lastpageref{VeryLastPage}\\ -(\texttt{LastPage} and \texttt{VeryLastPage} are identical, unless -a package with output \linebreak -\verb|\AtEndDocument| after the \textsf{pageslts} package was added.)\\ +(\texttt{LastPage} and \texttt{VeryLastPage} are now identical, because both are now done +\verb|\AddToHook{enddocument/afterlastpage}| instead of formerly\\ +\verb|\AtEndDocument| and \verb|\AfterLastShipout|, which were different.)\\ \noindent Last page's \textit{number} (LastPages): \lastpageref{LastPages}{\hskip3em } (=~total number of pages)\\ @@ -1977,10 +1716,10 @@ third Roman sector.\\ \noindent The page (\verb|\thepage|): \thepage \\ \noindent Current page (\verb|\theCurrentPage|), -i.\,e. counted continuously from the first page): \theCurrentPage \\ +i.\,e.\ counted continuously from the first page): \theCurrentPage \\ \noindent CurrentPageLocal (\verb|\theCurrentPageLocal|), -i.\,e. counted continuously from the first page of the +i.\,e.\ counted continuously from the first page of the current page numbering scheme): \theCurrentPageLocal \\ \noindent Last roman page (pagesLTS.roman): \lastpageref{pagesLTS.roman}{\hskip4em } @@ -1999,8 +1738,10 @@ current page numbering scheme): \theCurrentPageLocal \\ (There are only \lastpageref{pagesLTS.arabic.local} pages with arabic numbers, because an \verb|\addtocounter{page}{|\pagesLTSexampleArabic\verb|}| was used.)\\ -\noindent Last fnsymbol page (pagesLTS.fnsymbol): \lastpageref{pagesLTS.fnsymbol} \\ -(\verb|\lastpageref{pagesLTS.fnsymbol}| -- never \verb|\pageref{pagesLTS.fnsymbol}|!)\\ +\noindent Last fnsymbol page (pagesLTS.fnsymbol): \lastpageref{pagesLTS.fnsymbol}\\ +(better \verb|\lastpageref{pagesLTS.fnsymbol}| than just\\ +\verb|\pageref{pagesLTS.fnsymbol}|!)\\ + (There are \lastpageref{pagesLTS.fnsymbol.local} pages with fnsymbol numbers.)\\ \noindent Last alph page (pagesLTS.alph): \lastpageref{pagesLTS.alph}{\hskip4em } @@ -2013,18 +1754,20 @@ because an \verb|\addtocounter{page}{|\pagesLTSexamplealph\verb|}| was used.)\\ \noindent Last page's \textit{name} (LastPage): \lastpageref{LastPage}\\ \noindent Very last page's \textit{name} (VeryLastPage): \lastpageref{VeryLastPage}\\ -(\texttt{LastPage} and \texttt{VeryLastPage} are identical, unless -a package with output \linebreak -\verb|\AtEndDocument| after the \textsf{pageslts} package was added.)\\ +(\texttt{LastPage} and \texttt{VeryLastPage} are now identical, because both are now done +\verb|\AddToHook{enddocument/afterlastpage}| instead of formerly\\ +\verb|\AtEndDocument| and \verb|\AfterLastShipout|, which were different.)\\ \noindent Last page's \textit{number} (LastPages): \lastpageref{LastPages}{\hskip3em } (=~total number of pages)\\ \lipsum[1-3] -Without option \texttt{alphMulti=AB} of the \textsf{pageslts} (and the help of -\textsc{Heiko Oberdiek's} \textsf{alphalph} package), after page -\textquotedblleft Z\textquotedblright{} there would just appear a +\bigskip + +Without option \texttt{alphMulti=AB} of the \textsf{pageslts} +(and the help of the \textsf{alphalph} package), after page +\textquotedblleft Z\textquotedblright{} there would just appear~a \begin{quote} \begin{verbatim} LaTeX Error: Counter too large @@ -2047,12 +1790,15 @@ This is not demonstrated here, but see section~\ref{alph}. \noindent The page (\verb|\thepage|): \thepage \\ \noindent Current page (\verb|\theCurrentPage|), -i.\,e. counted continuously from the first page): \theCurrentPage \\ +i.\,e.\ counted continuously from the first page): \theCurrentPage \\ \noindent CurrentPageLocal (\verb|\theCurrentPageLocal|), -i.\,e. counted continuously from the first page of the +i.\,e.\ counted continuously from the first page of the current page numbering scheme): \theCurrentPageLocal \\ +% \end{macrocode} +% \newpage +% \begin{macrocode} \noindent Last roman page (pagesLTS.roman): \lastpageref{pagesLTS.roman}{\hskip4em } (There are \lastpageref{pagesLTS.roman.local} pages with roman numbers.)\\ @@ -2069,8 +1815,10 @@ current page numbering scheme): \theCurrentPageLocal \\ (There are only \lastpageref{pagesLTS.arabic.local} pages with arabic numbers, because an \verb|\addtocounter{page}{|\pagesLTSexampleArabic\verb|}| was used.)\\ -\noindent Last fnsymbol page (pagesLTS.fnsymbol): \lastpageref{pagesLTS.fnsymbol} \\ -(\verb|\lastpageref{pagesLTS.fnsymbol}| -- never \verb|\pageref{pagesLTS.fnsymbol}|!)\\ +\noindent Last fnsymbol page (pagesLTS.fnsymbol): \lastpageref{pagesLTS.fnsymbol}\\ +(better \verb|\lastpageref{pagesLTS.fnsymbol}| than just\\ +\verb|\pageref{pagesLTS.fnsymbol}|!)\\ + (There are \lastpageref{pagesLTS.fnsymbol.local} pages with fnsymbol numbers.)\\ \noindent Last alph page (pagesLTS.alph): \lastpageref{pagesLTS.alph}{\hskip4em } @@ -2083,48 +1831,32 @@ because an \verb|\addtocounter{page}{|\pagesLTSexamplealph\verb|}| was used.)\\ \noindent Last page's \textit{name} (LastPage): \lastpageref{LastPage}\\ \noindent Very last page's \textit{name} (VeryLastPage): \lastpageref{VeryLastPage}\\ -(\texttt{LastPage} and \texttt{VeryLastPage} are identical, unless -a package with output \linebreak -\verb|\AtEndDocument| after the \textsf{pageslts} package was added.)\\ +(\texttt{LastPage} and \texttt{VeryLastPage} are now identical, because both are now done +\verb|\AddToHook{enddocument/afterlastpage}| instead of formerly\\ +\verb|\AtEndDocument| and \verb|\AtEndDocument| and \verb|\AfterLastShipout|, which were different.)\\ \noindent Last page's \textit{number} (LastPages): \lastpageref{LastPages}{\hskip3em } -(=~total number of pages)\\ - -\medskip - -\noindent Page \thepage\ (\theCurrentPage; local: \theCurrentPageLocal) of % -\lastpageref{pagesLTS.roman} (\lastpageref{pagesLTS.roman.local}) + % -\lastpageref{pagesLTS.Roman} (\lastpageref{pagesLTS.Roman.local}) + % -\lastpageref{pagesLTS.arabic} (\lastpageref{pagesLTS.arabic.local}) + % -\lastpageref{pagesLTS.fnsymbol} (\lastpageref{pagesLTS.fnsymbol.local}) + % -\lastpageref{pagesLTS.alph} (\lastpageref{pagesLTS.alph.local}) + % -\lastpageref{pagesLTS.Alph} (\lastpageref{pagesLTS.Alph.local}) = % -\lastpageref{LastPages} pages. - +(=~total number of pages) \end{document} %</example> % \end{macrocode} -% % \pagebreak -% % \StopEventually{} % % \section{The implementation} -% % (This and the source code of the example file are the reasons % for printing the documentation in landscape format instead of portrait.)\\ % -% We start off by checking that we are loading into \LaTeXe{} and -% announcing the name and version of this package. +% We start off by checking that we are loading into \LaTeXe{}, +% format version at least 2024-06-01, and announcing the name and version of this package. % % \begin{macrocode} %<*package> % \end{macrocode} % % \begin{macrocode} -\NeedsTeXFormat{LaTeX2e}[2015/01/01] -\ProvidesPackage{pageslts}[2015/12/21 v1.2f - Refers to special pages' numbers/names (HMM)] +\NeedsTeXFormat{LaTeX2e}[2024-06-01] +\ProvidesPackage{pageslts}[2024-11-20 v2.0a Refers to special pages' numbers/names (HMM)] % \end{macrocode} % @@ -2145,189 +1877,63 @@ a package with output \linebreak % \end{macrocode} % -% The package is now named `pageslts' but had been named `pagesLTS' before. -% \LaTeX\ does not load a package two times, but it is case sensitive, -% i.\,e. \emph{would} load `pageslts' and `pagesLTS', resulting in -% possible problems. Therefore we check for a loaded `pagesLTS' package -% (assuming |\pagesLTS@loaded| is not |p@gesLTSlo@ded| and not defined to -% |p@gesLTSlo@ded| by another package). This check might work only for -% the second and following compilation runs. -% -% \begin{macrocode} -\@ifpackageloaded{pagesLTS}{% - \def\pagesLTS@doubleload{p@gesLTSlo@ded} - \ifx\pagesLTS@loaded\pagesLTS@doubleload% - \PackageError{pageslts}{Requested pagesLTS instead of pageslts}{% - You have requested package `pagesLTS'. This package is now named `pageslts'.\MessageBreak% - Requesting `pagesLTS' as well as `pageslts' leads to loading the same package\MessageBreak% - twice (and results in errors). Loading of `pageslts' will therefore be\MessageBreak% - abandoned now. To fix this problem, please look in the \jobname.log file for\MessageBreak% - LaTeX Warning: You have requested package `pagesLTS',\MessageBreak% - \space \space \space \space \space \space \space \space \space \space \space \space \space% - \space \space but the package provides `pageslts'.\MessageBreak% - and change the package call in the calling style/document.\MessageBreak% - If a style file made the mistake, please inform its maintainer and/or the\MessageBreak% - maintainer of the pageslts package about it (after making sure you have\MessageBreak% - the recent version of that style file).\MessageBreak% - Thank you and sorry for the inconvenience!\MessageBreak% - } - \endinput - \fi - }{% \relax - } - -\gdef\pagesLTS@loaded{p@gesLTSlo@ded} - -% \end{macrocode} -% -% For |\ltx@ifpackageloaded| the \xpackage{ltxcmds} package is needed, -% also by \textsc{Heiko Oberdiek} (see subsection~\ref{ss:Downloads}): -% -% \begin{macrocode} -\RequirePackage{ltxcmds}[2011/11/09]% v1.22 -% \end{macrocode} -% -% For its |\AfterLastShipout| (as well as its |\AtEndAfterFileList|) command -% we need the \xpackage{atveryend} package by \textsc{Heiko Oberdiek} -% (see subsection~\ref{ss:Downloads}): -% -% \begin{macrocode} -\RequirePackage{atveryend}[2011/06/30]% v1.8 -\AtBeginDocument{% - %% https://tex.stackexchange.com/a/45654/6865 - %% and https://tex.stackexchange.com/q/261445/6865 - \def\pagesLTS@etb{etoolbox.sty}% - \let\pagesLTS@ave\@empty% - \@for\@pageslts@currname:=\@filelist\do{% - \ifx\@pageslts@currname\pagesLTS@etb\relax% - \def\pagesLTS@ave{atveryend.sty}% - \fi% - \ifx\@pageslts@currname\pagesLTS@ave% - \@ifpackagelater{atveryend}{2015/08/01}{%\relax - \PackageInfo{pageslts}{etoolbox package loaded before atveryend package\MessageBreak% - With atveryend version 1.8 of 2011/06/30 this caused a problem,\MessageBreak% - which is probably solved in the new version used here.\MessageBreak% - To play it safe, you could load the atveryend package\MessageBreak% - before the etoolbox package.\MessageBreak% - }% - }{% else - \PackageError{pageslts}{etoolbox package loaded before atveryend package}{% - You can use both packages, but when etoolbox is loaded before atveryend,\MessageBreak% - atveryend no longer detects \string\enddocument\space\MessageBreak% - and hook "AtVeryVeryEnd" is not executed.\MessageBreak% - Just load the atveryend package before the etoolbox package!\MessageBreak% - }% - }% - \fi% - }% - } - -% \end{macrocode} -% -% For its |\EveryShipout| command we need the \xpackage{everyshi} -% package by \textsc{Martin Schr\"{o}der} (see subsection~\ref{ss:Downloads}): -% -% \begin{macrocode} -\RequirePackage{everyshi}[2001/05/15]% v3.00 -% \end{macrocode} -% -% For its |\LetLtxMacro| command we need the \xpackage{letltxmacro} -% package by \textsc{Heiko Oberdiek} (see subsection~\ref{ss:Downloads}): -% -% \begin{macrocode} -\RequirePackage{letltxmacro}[2010/09/02]% v1.4 -% \end{macrocode} -% -% For the handling of the options we need the \xpackage{kvoptions} -% package also by \textsc{Heiko Oberdiek} (see subsection~\ref{ss:Downloads}): -% -% \begin{macrocode} -\RequirePackage{kvoptions}[2011/06/30]% v3.11 -% \end{macrocode} -% -% The \xpackage{undolabl} package of \textsc{H.-Martin M\"{u}nch} (i.\,e. myself), -% with code from \textsc{Ulrich Diez}, (see subsection~\ref{ss:Downloads}) +% The \xpackage{undolabl} package (see subsection~\ref{ss:Downloads}) % is needed to overwrite labels, when the same page numbering scheme % is used twice (or even more often). % % \begin{macrocode} -\RequirePackage{undolabl}[2015/03/29]% v1.0l -% \end{macrocode} -% -% We use the \xpackage{rerunfilecheck} package by \textsc{Heiko Oberdiek} -% to make sure that the user gets and sees the rerun warnings (if any). -% -% \begin{macrocode} -\RequirePackage{rerunfilecheck}[2011/04/15]% v1.7 -% \end{macrocode} -% -% We must not forget to give the source of |Prelim@EveryShipout|: -% -% \begin{macrocode} -%% pageslts package uses Prelim@EveryShipout code from the -%% prelim2e package [2009/05/29 v1.3] by Martin Schr\"{o}der, thanks! - -% \end{macrocode} -% -% About the \xpackage{prelim2e} package by \textsc{Martin Schr\"{o}der} -% see subsection~\ref{ss:Downloads}.\\ -% -% A last information for the user(s): -% -% \begin{macrocode} -%% pageslts may work with earlier versions of LaTeX2e and those packages, -%% but this was not tested. Please consider updating your LaTeX -%% and packages to the most recent version (if they are not already -%% the most recent version). +\RequirePackage{undolabl}[2023-02-14] % \end{macrocode} -% See subsection~\ref{ss:Downloads} about how to get them.\\ % -% \pagebreak -% -% The very old version~2.0 (and earlier) of the \xpackage{endfloat} -% package actually redefined the |\enddocument| command, -% and so interfered drastically with the \LaTeXe\ commands which -% make use of |\AtEndDocument|. Newer versions of \xpackage{endfloat} -% exists (at the time of writing this documentation: v2.5d as of 2011/12/25) -% in modern documentation form, which are available from \url{https://www.CTAN.org} -% (see subsection~\ref{ss:Downloads}). -% A~note is placed here, and later it is checked whether a (very) old -% \xpackage{endfloat} package is in use. If it is, a warning or even -% an error message is given, depending on \xpackage{endfloat} version. -% This assumes, that the old versions of \xpackage{endfloat} at least gave -% a version date, of course. +% For the handling of the options we use the +% \xpackage{kvoptions} package (see subsection~\ref{ss:Downloads}): % % \begin{macrocode} -%% The recent version of the endfloat package is v2.5d as of 2011/12/25. -%% The pageslts package is not fully compatible with version 2.0 -%% (and earlier) of the endfloat package, because those versions -%% redefined the \enddocument command. +\RequirePackage{kvoptions}[2022-06-15] -% \end{macrocode} -% -% The options are introduced: -% -% \begin{macrocode} \SetupKeyvalOptions{family = pagesLTS,prefix = pagesLTS@} -\DeclareBoolOption[true]{pagecontinue}% \pagesLTS@pagecontinue \DeclareStringOption[ab]{alphMult} \DeclareStringOption[AB]{AlphMulti} \DeclareBoolOption[true]{romanMult} \DeclareBoolOption[true]{RomanMulti} \DeclareBoolOption[true]{fnsymbolmult} +\DeclareBoolOption[true]{pagecontinue} \ProcessKeyvalOptions* % \end{macrocode} % -% For comparisons, zero, one, two and three are defined (|\z@|, |\@ne| and so on -% do not work for this). +% This package really does not work with an old \LaTeX{} format +% without hooks, or without \eTeX, or with a \xpackage{pagesLTS} package, +% or with version~2.0 from~1992 of the \xpackage{endfloats} package, +% or \xpackage{hyperref} from 2015 and so on. Assuming that nobody +% would combine those old things with a modern \LaTeX{} format, +% we request a recent format and do not check for the rest. +% +% \begin{macrocode} +\@ifl@t@r\fmtversion{2024-06-01}{}{ + \PackageError{pageslts}{LaTeX format 2024-06-01 or newer needed}{% + Needed LaTeX format version: 2024-06-01 or newer.\MessageBreak% + Found\space\space LaTeX format version: \fmtversion.\MessageBreak% + Please update your TeX distribution!\MessageBreak% + Loading of pageslts package is aborted.} + \expandafter\endinput} + +% \end{macrocode} +% +% For comparisons, zero, one, two and three are defined +% (|\z@|, |\@ne| and so on do not work for this) +% and for the page numbering scheme handling some definitions are made. % % \begin{macrocode} \def\pagesLTS@zero{0} \def\pagesLTS@one{1} \def\pagesLTS@two{2} \def\pagesLTS@three{3} +\def\pagesLTS@ab{ab} +\def\pagesLTS@bb{bb} +\def\pagesLTS@ABi{AB} +\def\pagesLTS@BBi{BB} % \end{macrocode} % @@ -2338,42 +1944,34 @@ a package with output \linebreak % page numbering scheme. The user is informed accordingly. % % \begin{macrocode} -\ifpagesLTS@pagecontinue% - \PackageInfo{pageslts}{Option pagecontinue enabled\MessageBreak% - (maybe by default):\MessageBreak% +\ifpagesLTS@pagecontinue + \PackageNoteNoLine{pageslts}{Option pagecontinue enabled (maybe by default):\MessageBreak% The pageslts package will continue the page numbering,\MessageBreak% when the same page numbering scheme is used twice.\MessageBreak% If you do not want this, call pageslts with option\MessageBreak% - pagecontinue=false (or use \string\setcounter{page}=1).\MessageBreak% - } + pagecontinue=false (or use \string\setcounter{page}=1)} \else -% \end{macrocode} -% -% \pagebreak -% -% \begin{macrocode} - \PackageWarningNoLine{pageslts}{Option pagecontinue is false:\MessageBreak% + \PackageNoteNoLine{pageslts}{Option pagecontinue is false:\MessageBreak% The pageslts package was used, but the option\MessageBreak% pagecontinue was set to false.\MessageBreak% If you want the page numbers to be continued,\MessageBreak% when the same page numbering scheme is used twice,\MessageBreak% please call pageslts with option pagecontinue=true,\MessageBreak% otherwise the page number is reset to one each time\MessageBreak% - the page numbering scheme is changed.\MessageBreak% - For details please see the documentation% - } + the page numbering scheme is changed} \fi % \end{macrocode} % +% \newpage % The page number printed in \texttt{alph} or in \texttt{Alph} -% page numbering scheme had to be $>0$ and \nolinebreak{$<27$.}\ % +% page numbering scheme had to be $>0$ and \mbox{$<27$.}\ % % Now the \xpackage{alphalph} package allows to extend the % numbering scheme (not only for pages). Because some users % prefer aa, ab, ac, ad,\ldots\ and some aa, bb, cc, dd,\ldots, % both schemes can be chosen via the options. % The \texttt{fnsymbol} page numbering scheme was restricted to values -% $>0$ and \nolinebreak{$<10$.}\ The \xpackage{alphalph} package allows +% $>0$ and \mbox{$<10$.}\ The \xpackage{alphalph} package allows % to extend this page numbering scheme, too. Option \texttt{fnsymbolmult} % can be chosen with the \xpackage{pageslts} package. % If no extension is wished (or another extension is wished @@ -2382,17 +1980,12 @@ a package with output \linebreak % |fnsymbolmult=false|. % % \begin{macrocode} -\def\pagesLTS@ab{ab} -\def\pagesLTS@bb{bb} -\def\pagesLTS@ABi{AB} -\def\pagesLTS@BBi{BB} - \ifx\pagesLTS@alphMult\pagesLTS@ab% \else \ifx\pagesLTS@alphMult\pagesLTS@bb% \else \ifx\pagesLTS@alphMult\pagesLTS@zero% - \PackageWarningNoLine{pageslts}{% + \PackageNoteNoLine{pageslts}{% Option alphMult=0 found:\MessageBreak% The pageslts package was used, but the option\MessageBreak% alphMult was set to 0 (zero).\MessageBreak% @@ -2401,17 +1994,13 @@ a package with output \linebreak For automatic continuation, please use the\MessageBreak% alphalph package and call pageslts\MessageBreak% with option alphMult=ab (for aa, ab, ac, ad,...) or\MessageBreak% - with option alphMult=bb (for aa, bb, cc, dd,...).\MessageBreak% - For details please see the documentation!% - } + with option alphMult=bb (for aa, bb, cc, dd,...)} \else \PackageError{pageslts}{Unknown option value}{% The pageslts package was used with option\MessageBreak% - alphMult= \pagesLTS@alphMult . Only values\MessageBreak% - ab, bb, and 0 (zero) are valid.\MessageBreak% - The default ab is set.\MessageBreak% - For details please see the documentation!% - } + alphMult=\meaning\pagesLTS@alphMult .\MessageBreak% + Only values 'ab', 'bb', and '0' (zero) are valid.\MessageBreak% + Now the default 'ab' is being set.} \setkeys{pagesLTS}{alphMult=ab} \fi \fi @@ -2422,7 +2011,7 @@ a package with output \linebreak \ifx\pagesLTS@AlphMulti\pagesLTS@BBi% \else \ifx\pagesLTS@AlphMulti\pagesLTS@zero% - \PackageWarningNoLine{pageslts}{% + \PackageNoteNoLine{pageslts}{% Option AlphMulti=0 found:\MessageBreak% The pageslts package was used, but the option\MessageBreak% AlphMulti was set to 0 (zero).\MessageBreak% @@ -2431,17 +2020,13 @@ a package with output \linebreak For automatic continuation, please use the\MessageBreak% alphalph package and call pageslts\MessageBreak% with option AlphMulti=AB (for AA, AB, AC, AD,...) or\MessageBreak% - with option AlphMulti=BB (for AA, BB, CC, DD,...).\MessageBreak% - For details please see the documentation!% - } + with option AlphMulti=BB (for AA, BB, CC, DD,...)} \else \PackageError{pageslts}{Unknown option value}{% The pageslts package was used with option\MessageBreak% - AlphMulti= \pagesLTS@AlphMulti . Only values\MessageBreak% - AB, BB, and 0 (zero) are valid.\MessageBreak% - The default AB is set.\MessageBreak% - For details please see the documentation!% - } + AlphMulti=\meaning\pagesLTS@AlphMulti .\MessageBreak% + Only values 'AB', 'BB', and '0' (zero) are valid.\MessageBreak% + The default 'AB' is set.} \setkeys{pagesLTS}{AlphMulti=AB} \fi \fi @@ -2453,17 +2038,9 @@ a package with output \linebreak % the \xpackage{alphalph} package is required. % % \begin{macrocode} -\ifx\pagesLTS@alphMult\pagesLTS@zero% \relax -\else \RequirePackage{alphalph}[2011/05/13]% v2.4 -\fi - -\ifx\pagesLTS@AlphMulti\pagesLTS@zero% \relax -\else \RequirePackage{alphalph}[2011/05/13]% v2.4 -\fi - -\ifpagesLTS@fnsymbolmult% - \RequirePackage{alphalph}[2011/05/13]% v2.4 -\fi +\ifx\pagesLTS@alphMult\pagesLTS@zero\else\RequirePackage{alphalph}[2019/12/09]\fi +\ifx\pagesLTS@AlphMulti\pagesLTS@zero\else\RequirePackage{alphalph}[2019/12/09]\fi +\ifpagesLTS@fnsymbolmult\RequirePackage{alphalph}[2019/12/09]\fi % \end{macrocode} % @@ -2471,26 +2048,22 @@ a package with output \linebreak % choice of an extension by \xpackage{pageslts} or not. % % \begin{macrocode} -\ifpagesLTS@romanMult% - \PackageInfo{pageslts}{Option romanMult enabled\MessageBreak% - (maybe by default):\MessageBreak% +\ifpagesLTS@romanMult + \PackageNoteNoLine{pageslts}{Option romanMult enabled (maybe by default):\MessageBreak% The pageslts package will extend the page numbering\MessageBreak% of the roman scheme below i with\MessageBreak% 0, -i, -ii, -iii, -iv,...\MessageBreak% If you do not want this, call pageslts with option\MessageBreak% - romanMult=false.\MessageBreak% - } + romanMult=false} \else - \PackageWarningNoLine{pageslts}{Option romanMult is set to false:\MessageBreak% - The pageslts package was used, but the option\MessageBreak% - romanMult was set to false.\MessageBreak% - If you want the page numbering of the roman scheme\MessageBreak% - to be extended below i,\MessageBreak% - please call pageslts with option romanMult=true,\MessageBreak% - otherwise zero and negative page numbers of the\MessageBreak% - roman scheme will need to be defined otherwise.\MessageBreak% - For details please see the documentation!\MessageBreak% - } + \PackageNoteNoLine{pageslts}{Option romanMult is set to false:\MessageBreak% + The pageslts package was used, but the option\MessageBreak% + romanMult was set to false.\MessageBreak% + If you want the page numbering of the roman scheme\MessageBreak% + to be extended below i,\MessageBreak% + please call pageslts with option romanMult=true,\MessageBreak% + otherwise zero and negative page numbers of the\MessageBreak% + roman scheme will need to be defined otherwise} \fi % \end{macrocode} @@ -2498,26 +2071,22 @@ a package with output \linebreak % Same for the Roman page numbering scheme. % % \begin{macrocode} -\ifpagesLTS@RomanMulti% - \PackageInfo{pageslts}{Option RomanMulti enabled\MessageBreak% - (maybe by default):\MessageBreak% +\ifpagesLTS@RomanMulti + \PackageNoteNoLine{pageslts}{Option RomanMulti enabled (maybe by default):\MessageBreak% The pageslts package will extend the page numbering\MessageBreak% of the Roman scheme below I with\MessageBreak% 0, -I, -II, -III, -IV,...\MessageBreak% If you do not want this, call pageslts with option\MessageBreak% - RomanMulti=false.\MessageBreak% - } + RomanMulti=false} \else - \PackageWarningNoLine{pageslts}{Option RomanMulti is set to false:\MessageBreak% + \PackageNoteNoLine{pageslts}{Option RomanMulti is set to false:\MessageBreak% The pageslts package was used, but the option\MessageBreak% RomanMulti was set to false.\MessageBreak% If you want the page numbering of the Roman scheme\MessageBreak% to be extended below i,\MessageBreak% please call pageslts with option RomanMulti=true,\MessageBreak% otherwise zero and negative page numbers of the\MessageBreak% - Roman scheme will need to be defined otherwise.\MessageBreak% - For details please see the documentation!\MessageBreak% - } + Roman scheme will need to be defined otherwise} \fi % \end{macrocode} @@ -2526,17 +2095,15 @@ a package with output \linebreak % just the choice of a extension by \xpackage{pageslts} or not. % % \begin{macrocode} -\ifpagesLTS@fnsymbolmult% - \PackageInfo{pageslts}{Option fnsymbolmult enabled\MessageBreak% - (maybe by default):\MessageBreak% +\ifpagesLTS@fnsymbolmult + \PackageNoteNoLine{pageslts}{Option fnsymbolmult enabled (maybe by default):\MessageBreak% The pageslts package will extend the page numbering\MessageBreak% of the footnotesymbol scheme using the alphalph\MessageBreak% package.\MessageBreak% If you do not want this, call pageslts with option\MessageBreak% - fnsymbolmult=false.\MessageBreak% - } + fnsymbolmult=false} \else - \PackageWarningNoLine{pageslts}{% + \PackageNoteNoLine{pageslts}{% Option fnsymbolmult is set to false:\MessageBreak% The pageslts package was used, but the option\MessageBreak% fnsymbolmult was set to false.\MessageBreak% @@ -2544,9 +2111,7 @@ a package with output \linebreak scheme to be extended using the alphalph package,\MessageBreak% please call pageslts with option fnsymbolmult=true,\MessageBreak% otherwise page numbers of the footnotesymbol scheme\MessageBreak% - greater than nine will need to be defined otherwise.\MessageBreak% - For details please see the documentation!\MessageBreak% - } + greater than nine will need to be defined otherwise} \fi % \end{macrocode} @@ -2565,7 +2130,9 @@ a package with output \linebreak \def\lastpageref{\lastpagereftxt} \def\pagesLTS@undolable{none} \def\pncmissing{0} -\def\pagesLTS@SK{0} +% \end{macrocode} +% \newpage +% \begin{macrocode} \def\pagesLTS@messageNPN{% The pageslts package was used, but\MessageBreak% \string\pagenumbering \MessageBreak% @@ -2583,57 +2150,11 @@ a package with output \linebreak % \end{macrocode} % -% It is checked whether writing to files is allowed. -% The \xpackage{pageslts} package cannot be used without that! -% Some packages (e.\,g. \xpackage{tikz} and \xpackage{selectp}) sometimes prevent -% the output to the \xfile{aux} file. In that case a warning or an error message -% is issued. This is no problem as long as there is/was another compilation run -% where the labels can/could be processed via the \xfile{aux} file.\\ -% If it is allowed to write to the \xfile{aux} file, we define -% |\pagesLTS@loaded| as |p@gesLTSnotlo@ded| for the next compilation run. -% -% \begin{macrocode} -\AtBeginDocument{% - \if@filesw% -% \end{macrocode} -% -% \noindent then |\relax|.\newline -% When writing to files is not allowed, nothing can be done. -% But when the labels were already processed via the \xfile{aux} file, -% nothing needs to be done (if enough compilation runs have been done before). -% -% \begin{macrocode} - \else% - \@ifpackageloaded{tikz}{% - \PackageWarning{pageslts}% - {It was not allowed to write to an\MessageBreak% - .aux file. This package does not work without access\MessageBreak% - to an .aux file.\MessageBreak% - It is OK if the .aux file was already updated\MessageBreak% - by a previouse compiler run\MessageBreak% - and would not have changed anyway.\MessageBreak% - }% - }{\PackageError{pageslts}{No writing to auxiliary file allowed}% - {It was not allowed to write to an .aux file.\MessageBreak% - This package does not work without access to an .aux file.\MessageBreak% - Press Ctrl+Z to exit.\MessageBreak% - But it is OK if the .aux file was already updated\MessageBreak% - by previouse compiler runs\MessageBreak% - and would not have changed anyway.\MessageBreak% - (In that case just press Enter or Return\MessageBreak% - to continue the compilation.)\MessageBreak% - }% - }% - \fi% - } - -% \end{macrocode} -% % \begin{macro}{\pagenumbering} -% \indent \qquad To keep the original meaning of |\pagenumbering|: +% To keep the original meaning of |\pagenumbering|: % % \begin{macrocode} -\LetLtxMacro{\OrigPagenumbering}{\pagenumbering} +\NewCommandCopy{\OrigPagenumbering}{\pagenumbering} % \end{macrocode} % \end{macro} @@ -2646,18 +2167,17 @@ a package with output \linebreak \def\theCurrentPageLocal{\arabic{pagesLTS.current.local.\pagesLTS@pnc}} % \end{macrocode} % -% The counter |pagesLTS.pagenr| is for saving the total page -% number of the last page in the \xfile{.aux} file. +% The counter |pagesLTS.pagenr| is for saving into the \xfile{.aux} file +% the total page number of the last page. % % \begin{macrocode} \newcounter{pagesLTS.pagenr} +\setcounter{pagesLTS.pagenr}{1} % \end{macrocode} % -% While generally -% |\pagesLTS@ifcounter{pagesLTS.current.local.\pagesLTS@pnc}| -% is used, for the beginning of the document -% |pagesLTS.current.local.0| is predefined. -% (A~|\pagesLTS@ifcounter{pagesLTS.current.local.\pagesLTS@pnc}| +% While generally |\pagesLTS@providecounter{pagesLTS.current.local.\pagesLTS@pnc}| +% is used, for the beginning of the document |pagesLTS.current.local.0| is predefined. +% (A~|\pagesLTS@providecounter{pagesLTS.current.local.\pagesLTS@pnc}| % could be used for this, too, but we know that |pagesLTS.current.local.0| % was not defined, so we can just do the definition here.) % And the first local page gets the number one. @@ -2671,9 +2191,21 @@ a package with output \linebreak % % \begin{macrocode} \newcounter{pagesLTS.pnc.0} +% \end{macrocode} +% +% Also a scratch counter is defined, |\pagesLTSlastpage| and |\pagesLTSlastpageHy| are predefined +% \mbox{(e.\,g.}\ for computations in the first compilation run), +% and the obsolete |\pagesLTS.lastpage| points to the new |\pagesLTSlastpage|. +% +% \begin{macrocode} +\newcounter{pagesLTS.tmpcounter} +\def\pagesLTSlastpage{1} +\def\pagesLTSlastpageHy{1} +\def\pagesLTS.lastpage{\pagesLTSlastpage} % \end{macrocode} % +% \newpage % \phantomsection % \begin{macro}{\xroman}\label{xroman} % When |\roman{...}| is used with a value $<1$, \LaTeX\ just ignores this @@ -2713,8 +2245,6 @@ a package with output \linebreak % \end{macrocode} % \end{macro} % -% \pagebreak -% % \begin{macro}{\XRoman} % |\XRoman| does the same for uppercase |\Roman| numbers. % |-\uppercase{\romannumeral\number-\arabic{#1}}| cannot be used, @@ -2726,21 +2256,16 @@ a package with output \linebreak % |\def\@Roman#1{\expandafter\@slowromancap\romannumeral #1@}|,\\ % and use |\@slowromancap|, which is a fully expandable macro, % to do the trick for this: -% -% \noindent \textquotedblleft % \begin{quote} -%\begin{verbatim} -%\def\@slowromancap#1{\ifx @#1% then terminate -%\else -%\if i#1I\else\if v#1V\else\if x#1X\else\if l#1L\else\if -%c#1C\else\if d#1D\else \if m#1M\else#1\fi\fi\fi\fi\fi\fi\fi -%\expandafter\@slowromancap -%\fi -%} -%\end{verbatim} +% \textquotedblleft |\def\@slowromancap#1{\ifx @#1% then terminate|\newline% +% \hphantom{\textquotedblleft}|\else|\newline% +% \hphantom{\textquotedblleft}|\if i#1I\else\if v#1V\else\if x#1X\else\if l#1L\else\if|\newline% +% \hphantom{\textquotedblleft}|c#1C\else\if d#1D\else \if m#1M\else#1\fi\fi\fi\fi\fi\fi\fi|\newline% +% \hphantom{\textquotedblleft}|\expandafter\@slowromancap|\newline% +% \hphantom{\textquotedblleft}|\fi|\newline% +% \hphantom{\textquotedblleft}|}|\textquotedblright{} % +% (2021/11/08 Version v1.1n \LaTeX{} Kernel File~21: ltcounts.dtx Counters and Lengths). % \end{quote} -% \textquotedblright{} (1998/05/16 Version v1.1g LaTeX Kernel File~m -% ltcounts.dtx 105 Counters and Lengths). % % \begin{macrocode} \newcommand{\XRoman}[1]{% @@ -2758,19 +2283,7 @@ a package with output \linebreak % \end{macrocode} % \end{macro} % -% \begin{macro}{\XXRoman} -% In older versions |\XXRoman| was used. For compatibility, it is forwarded to |\XRoman| -% and an error message is given. -% -% \begin{macrocode} -\newcommand{\XXRoman}[1]{\XRoman{#1}% - \PackageError{pageslts}{Old command \string\XXRoman\space found}{Replaced by \string\XRoman.}% - } - -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\pagesLTS@ifcounter} +% \begin{macro}{\pagesLTS@providecounter} % We provide a way to create counters like % \begin{itemize} % \item[-] \DescribeMacro{pagesLTS.pnc. page numbering scheme } @@ -2782,8 +2295,7 @@ a package with output \linebreak % \end{itemize} % for all page numbering schemes, even those not supported % by the current original |\pagenumbering| -% (1994/05/19 v1.1a LaTeX Kernel File w ltpageno.dtx 52 Page Numbering), -% which is\\ +% (2020/12/05 Version v1.1a LaTeX Kernel File~33 ltpageno.dtx Page Numbering), which is % \begin{quote} %\begin{verbatim} %\countdef\c@page=0 \c@page=1 @@ -2795,8 +2307,26 @@ a package with output \linebreak % \end{quote} % % \begin{macrocode} -\newcommand{\pagesLTS@ifcounter}[1]{% - \@ifundefined{c@#1}{\newcounter{#1}}{\relax}% +\newcommand{\pagesLTS@providecounter}[1]{\@ifundefined{c@#1}{\newcounter{#1}}{}} +% \end{macrocode} +% +% The command |\pagesLTS@ifcounter| is obsolete, but if a document was compiled +% using an older version of the \xpackage{pageslts} package, +% the command will still be in the \xfile{.aux} file. +% (Following code will be removed in some further version.) +% +% \begin{macrocode} +\NewCommandCopy{\pagesLTS@ifcounter}{\pagesLTS@providecounter} +\AddToHook{begindocument}{% +% \end{macrocode} +% +% This hook is executed after the \xfile{.aux} file has been read, +% so there should be no following |\pagesLTS@ifcounter|. +% +% \begin{macrocode} + \AddToHookWithArguments{cmd/pagesLTS@ifcounter/before}{% + \PackageError{pageslts}{Old command \string\pagesLTS@ifcounter\space used}{Replace by \string\pagesLTS@providecounter.}% + }% } % \end{macrocode} @@ -2809,7 +2339,7 @@ a package with output \linebreak % % \begin{macrocode} \newcommand{\lastpages}[2]{% - \pagesLTS@ifcounter{pagesLTS.#1.#2.local.cnt}% + \pagesLTS@providecounter{pagesLTS.#1.#2.local.cnt}% \arabic{pagesLTS.#1.#2.local.cnt}% } @@ -2824,7 +2354,7 @@ a package with output \linebreak \addtocounter{page}{+1}% % \end{macrocode} % -% \noindent |\addtocounter{page}{+1}| because |\pagesLTS@putlabel| includes an\\ +% |\addtocounter{page}{+1}| because |\pagesLTS@putlabel| includes an\\ % |\addtocounter{page}{-1}|, which is not necessary here.\\ % Into the \xfile{.aux} file something like\\ % |\newlabel{pagesLTS.Roman}{{}{VIII}{}{page.VIII}{}}|\\ @@ -2832,55 +2362,56 @@ a package with output \linebreak % links to |page.VIII|. % % \begin{macrocode} - \pagesLTS@putlabel{pagesLTS.#1}{\thepage}{1} - \addtocounter{page}{-1}% - \ifx\pagesLTS@pnc\pagesLTS@zero% \relax + \pagesLTS@putlabel{pagesLTS.#1}{\thepage}{1}% % \end{macrocode} % -% i.\,e. if the current page numbering scheme is -% \textquotedblleft 0\textquotedblright, i.\,e. before the first -% |\pagenumbering{...}| command, do nothing, +% |\addtocounter{page}{-1}| is skipped, because another |\pagesLTS@putlabel| follows. +% +% \begin{macrocode} + \ifx\pagesLTS@pnc\pagesLTS@zero% +% \end{macrocode} +% +% i.\,e.\ if the current page numbering scheme is \textquotedblleft 0\textquotedblright, +% i.\,e.\ before the first |\pagenumbering{...}| command, do nothing, % % \begin{macrocode} \else% - \addtocounter{page}{+1}% - \pagesLTS@putlabel{pagesLTS.#1.local}{\theCurrentPageLocal}{1} % \end{macrocode} % % otherwise write into the \xfile{.aux} file something like\\ -% |\newlabel{pagesLTS.arabic.local}{{}{5}{}{page.8}{}}|,\\ -% thus |\lastpageref{pagesLTS.arabic.local}| prints |5| and -% links to |page.8|. Here (and in the example file) it is not -% \textquotedblleft print |8| and link to |page.8|\textquotedblright , -% because |\addtocounter{page}{3}| has been used, thus the page with -% \textquotedblleft number\textquotedblright{} (name) |8| is the -% \textbf{fifth} $(=8-3)$ page. +% |\newlabel{pagesLTS.arabic.local}{{}{6}{}{page.9}{}}|,\\ +% thus |\lastpageref{pagesLTS.arabic.local}| prints |6| and links to |page.9|.\\ +% +% |\addtocounter{page}{+1}| is skipped, because we skipped the |\addtocounter{page}{-1}| above. +% +% \begin{macrocode} + \pagesLTS@putlabel{pagesLTS.#1.local}{\theCurrentPageLocal}{1}% +% \end{macrocode} +% +% |\addtocounter{page}{-1}| immediately after the |\pagesLTS@putlabel| is skipped, +% because we do that outside of the |\ifx \else \fi|. % % \begin{macrocode} - \addtocounter{page}{-1}% \fi% + \addtocounter{page}{-1}% } % \end{macrocode} % \end{macro} % % \begin{macro}{\erroralphalph} -% \indent |\erroralphalph| extends the -% \textquotedblleft numbers\textquotedblright{} of counters -% to zero and negative values for representations usually -% not supporting this: |\alphalph|, |\AlphAlph|, and -% |\fnsymbolmult| of the \xpackage{alphalph} package.\\ +% |\erroralphalph| extends the \textquotedblleft numbers\textquotedblright\ of +% counters to zero and negative values for representations usually not supporting this: +% |\alphalph|, |\AlphAlph|, and |\fnsymbolmult| of the \xpackage{alphalph} package.\\ % |\alph|, |\Alph|, and |\fnsymbol| would not support -% \textquotedblleft numbers\textquotedblright{} below one.\\ +% \textquotedblleft numbers\textquotedblright\ below one.\\ % |\arabic| already supports negative numbers and zero.\\ -% |\roman| and |\Roman| support neither negative numbers -% nor zero, but are expanded in this package -% (|\xroman| and |\XRoman|), see page~\pageref{xroman}.\\ -% +% |\roman| and |\Roman| support neither negative numbers nor zero, but are expanded +% in this package (|\xroman| and |\XRoman|), see page~\pageref{xroman}. % \begin{macrocode} -%% The following code is from Heiko Oberdiek [2010/04/18], %% -%% expanding his alphalph package as of 2010/04/18, v2.3. (Thanks!) %% +%% The following code is from Heiko Oberdiek [2010/04/18], %% +%% expanding his alphalph package as of 2010/04/18, v2.3. (Thanks!) %% \newcommand*{\erroralphalph}[2]{% \ifnum\value{#2}>0% #1{\value{#2}}% @@ -2892,15 +2423,16 @@ a package with output \linebreak \fi% \fi% } -%% End of code from Heiko Oberdiek %% -%% Check and Error/Warning messages have been moved to \EveryShipout, %% -%% because messages inside e.g. the \pageref command can cause trouble. %% +%% End of code from Heiko Oberdiek %% +%% Check and Error/Warning messages have been moved to hook "shipout/foreground" %% +%% because messages inside e.g. the \pageref command can cause trouble. %% % \end{macrocode} % \end{macro} % +% \newpage % \begin{macro}{\expandPagenumbering} -% \indent Here the |\erroralphalph| command is called with the +% Here the |\erroralphalph| command is called with the % appropriate arguments for each page numbering scheme. % % \begin{macrocode} @@ -2908,7 +2440,7 @@ a package with output \linebreak \newcommand{\expandPagenumbering}[1]{% \let\Origthepage\thepage% \def\pagesLTS@tmpC{arabic}% - \ifx\pagesLTS@pnc\pagesLTS@tmpC% \relax + \ifx\pagesLTS@pnc\pagesLTS@tmpC% % \end{macrocode} % % |\arabic| already supports negative numbers and zero @@ -2957,17 +2489,19 @@ a package with output \linebreak % \begin{macrocode} \ifx\pagesLTS@alphMult\pagesLTS@ab% \renewcommand*{\thepage}{\erroralphalph{\alphalph}{page}}% - \else \ifx\pagesLTS@alphMult\pagesLTS@bb% - \renewcommand*{\thepage}{\erroralphalph{\alphMult}{page}}% - \fi% + \else% + \ifx\pagesLTS@alphMult\pagesLTS@bb% + \renewcommand*{\thepage}{\erroralphalph{\alphMult}{page}}% + \fi% \fi% \else% \ifx\pagesLTS@pnc\pagesLTS@Alph% \ifx\pagesLTS@AlphMulti\pagesLTS@ABi% \renewcommand*{\thepage}{\erroralphalph{\AlphAlph}{page}}% - \else \ifx\pagesLTS@AlphMulti\pagesLTS@BBi% - \renewcommand*{\thepage}{\erroralphalph{\AlphMult}{page}}% - \fi% + \else% + \ifx\pagesLTS@AlphMulti\pagesLTS@BBi% + \renewcommand*{\thepage}{\erroralphalph{\AlphMult}{page}}% + \fi% \fi% \else% \ifx\pagesLTS@pnc\pagesLTS@fns% @@ -2984,17 +2518,17 @@ a package with output \linebreak % % If the used page numbering scheme has not been recognized by the % \xpackage{pageslts} package so far, we can do nothing, and problems -% might result.\\ +% might result. % % \begin{macrocode} \PackageError{pageslts}{unknown page numbering scheme}{% The pageslts package encountered the unknown\MessageBreak% page numbering scheme\MessageBreak% - `#1'. \MessageBreak% + \meaning#1. \MessageBreak% If this is no typing mistake, it might work\MessageBreak% - or it might not work.\MessageBreak% \@ehc% - } + }% \fi% \fi% \fi% @@ -3008,33 +2542,33 @@ a package with output \linebreak % \end{macro} % % \begin{macro}{\pagenumbering} -% \indent Now for the \textbf{new} version of the |\pagenumbering| command: +% Now for the \textbf{new} version of the |\pagenumbering| command: % % \begin{macrocode} \renewcommand{\pagenumbering}[1]{% % \end{macrocode} % -% If the current page numbering scheme, |\pagesLTS@pnc|, or the -% requested page numbering scheme, |#1|, is |\pagesLTS@fns|, -% i.\,e. \texttt{fnsymbol}, the counter\texttt{pagesLTS.fnsymbol.local} +% If the current page numbering scheme, |\pagesLTS@pnc|, +% or the requested page numbering scheme, |#1|, is |\pagesLTS@fns|, +% \mbox{i.\,e.} \texttt{fnsymbol}, the counter\texttt{pagesLTS.fnsymbol.local} % is needed. If it does not exists yet, it is created here. % % \begin{macrocode} \edef\pagesLTS@tmpA{#1}% \ifx\pagesLTS@pnc\pagesLTS@fns% - \pagesLTS@ifcounter{pagesLTS.fnsymbol.local}% + \pagesLTS@providecounter{pagesLTS.fnsymbol.local}% \fi% \ifx\pagesLTS@tmpA\pagesLTS@fns% - \pagesLTS@ifcounter{pagesLTS.fnsymbol.local}% + \pagesLTS@providecounter{pagesLTS.fnsymbol.local}% \fi% % \end{macrocode} % -% If the current page numbering scheme, |\pagesLTS@pnc|, and the -% requested page numbering scheme, |#1|, is the same one, nothing -% further is done, otherwise the real action begins. +% If the current page numbering scheme, |\pagesLTS@pnc|, +% and the requested page numbering scheme, |#1|, is the same one, +% nothing further is done, otherwise the real action begins. % % \begin{macrocode} - \ifx\pagesLTS@pnc\pagesLTS@tmpA% \relax + \ifx\pagesLTS@pnc\pagesLTS@tmpA% \else% % \end{macrocode} % @@ -3053,10 +2587,8 @@ a package with output \linebreak % \end{macrocode} % % For the case that the page numbering scheme is or will be split, -% like e.\,g. the Roman one in the |pageslts-example.tex|, a counter -% like -% |pagesLTS.Roman.1.local.count| -% (or |pagesLTS.Roman.2.local.count|, +% like e.\,g. the Roman one in the |pageslts-example.tex|, a~counter like +% |pagesLTS.Roman.1.local.count| (or |pagesLTS.Roman.2.local.count|, % |pagesLTS.Roman.3.local.count|,\ldots ) is introduced and set to the % number of the local page. % @@ -3066,24 +2598,17 @@ a package with output \linebreak \value{pagesLTS.current.local.\pagesLTS@pnc}}% % \end{macrocode} % -% If the page numbering scheme is \xpackage{fnsymbol}, -% and if it \textit{was} used before, +% If the page numbering scheme is \xpackage{fnsymbol}, and if it \textit{was} used before, % from said counter the number of pages of the preceding uses % of the same page numbering scheme, |pagesLTS.\pagesLTS@pnc.done|, -% is subtracted (same as for the other schemes, see below). Instead of introducing a new -% counter (which can be problematic, when the number of available counters is limited), -% we borrow the \texttt{pagesLTS.pnc.0} counter, i.\,e. we save its value to |\pagesLTS@tmpa|, -% (ab)use the counter, and then set it back to its former value as saved in |\pagesLTS@tmpa|. +% is subtracted (same as for the other schemes, see below). % % \begin{macrocode} \ifx\pagesLTS@pnc\pagesLTS@fns% \ifnum \value{pagesLTS.pnc.\pagesLTS@pnc}>1% - \mathchardef\pagesLTS@tmpa=\arabic{pagesLTS.pnc.0}% - \setcounter{pagesLTS.pnc.0}{\value{pagesLTS.pnc.\pagesLTS@pnc}}% - \addtocounter{pagesLTS.pnc.0}{-1}% + \setcounter{pagesLTS.tmpcounter}{\numexpr\value{pagesLTS.pnc.\pagesLTS@pnc}-1\relax}% \addtocounter{pagesLTS.\pagesLTS@pnc.\arabic{pagesLTS.pnc.\pagesLTS@pnc}.local.count}{% - -\value{pagesLTS.\pagesLTS@pnc.\arabic{pagesLTS.pnc.0}.local.count}}% - \setcounter{pagesLTS.pnc.0}{\pagesLTS@tmpa}% + -\value{pagesLTS.\pagesLTS@pnc.\arabic{pagesLTS.tmpcounter}.local.count}}% \fi% % \end{macrocode} % @@ -3110,21 +2635,16 @@ a package with output \linebreak % If the page numbering scheme \textit{was} used before, % from said counter the number of pages of the preceding uses % of the same page numbering scheme, |pagesLTS.\pagesLTS@pnc.done|, -% is subtracted. Instead of introducing a new -% counter (which can be problematic, when the number of available counters is limited), -% we again borrow the \texttt{pagesLTS.pnc.0} counter (see above). +% is subtracted. % % \begin{macrocode} \else% - \mathchardef\pagesLTS@tmpa=\arabic{pagesLTS.pnc.0}% - \setcounter{pagesLTS.pnc.0}{\value{pagesLTS.pnc.\pagesLTS@pnc}}% - \addtocounter{pagesLTS.pnc.0}{-1}% - \pagesLTS@ifcounter{pagesLTS.\pagesLTS@pnc.done}% + \setcounter{pagesLTS.tmpcounter}{\numexpr\value{pagesLTS.pnc.\pagesLTS@pnc}-1\relax}% + \pagesLTS@providecounter{pagesLTS.\pagesLTS@pnc.done}% \addtocounter{pagesLTS.\pagesLTS@pnc.done}{% - \value{pagesLTS.\pagesLTS@pnc.\arabic{pagesLTS.pnc.0}.local.count}}% + \value{pagesLTS.\pagesLTS@pnc.\arabic{pagesLTS.tmpcounter}.local.count}}% \addtocounter{pagesLTS.\pagesLTS@pnc.\arabic{pagesLTS.pnc.\pagesLTS@pnc}.local.count}{% -\value{pagesLTS.\pagesLTS@pnc.done}}% - \setcounter{pagesLTS.pnc.0}{\pagesLTS@tmpa}% \fi% % \end{macrocode} % @@ -3135,7 +2655,7 @@ a package with output \linebreak % \begin{macrocode} \if@filesw% \immediate\write\@auxout{\string - \pagesLTS@ifcounter{pagesLTS.\pagesLTS@pnc.\arabic{pagesLTS.pnc.\pagesLTS@pnc}.local.cnt}}% + \pagesLTS@providecounter{pagesLTS.\pagesLTS@pnc.\arabic{pagesLTS.pnc.\pagesLTS@pnc}.local.cnt}}% \fi% \edef\pagesLTS@tmpB{\arabic{pagesLTS.\pagesLTS@pnc.\arabic{pagesLTS.pnc.\pagesLTS@pnc}.local.count}}% \if@filesw% @@ -3151,7 +2671,7 @@ a package with output \linebreak % numbering scheme is continued later. % % \begin{macrocode} - \pagesLTS@ifcounter{pagesLTS.double.\pagesLTS@pnc}% + \pagesLTS@providecounter{pagesLTS.double.\pagesLTS@pnc}% \setcounter{pagesLTS.double.\pagesLTS@pnc}{\value{page}}% % \end{macrocode} % @@ -3162,9 +2682,8 @@ a package with output \linebreak \addtocounter{page}{+1}% % \end{macrocode} % -% The page numbering scheme |\pagesLTS@pnc| is now set to -% the new one, given by the user as argument with the -% |\pagenumbering{...}| command: +% The page numbering scheme |\pagesLTS@pnc| is now set to the new one, +% given by the user as argument with the |\pagenumbering{...}| command: % % \begin{macrocode} \xdef\pagesLTS@pnc{#1}% @@ -3176,16 +2695,13 @@ a package with output \linebreak \OrigPagenumbering{#1}% % \end{macrocode} % -% If a page numbering scheme not known by the original -% |\pagenumbering{...}| command is used, an error will -% arise here - but maybe without error message.\\ +% If a page numbering scheme not known by the original |\pagenumbering{...}| command is used, +% an error will arise here - but maybe without error message.\\ % -% If page numbering schem |\alph|, |\Alph|, or |\fnsymbol| is used, -% \xpackage{pageslts} extends the page numbers according to -% the given options, using the \xpackage{alphalph} package. -% |\arabic| does not need any expansion. -% |\roman| and |\Roman| at least receive a definition for -% zero. +% If page numbering scheme |\alph|, |\Alph|, or |\fnsymbol| is used, +% \xpackage{pageslts} extends the page numbers according to the given options, +% using the \xpackage{alphalph} package. |\arabic| does not need any expansion. +% |\roman| and |\Roman| at least receive a definition for zero. % % \begin{macrocode} \expandPagenumbering{#1}% @@ -3194,30 +2710,27 @@ a package with output \linebreak % Counters like |pagesLTS.pnc.Roman| are introduced: % % \begin{macrocode} - \pagesLTS@ifcounter{pagesLTS.pnc.\pagesLTS@pnc}% + \pagesLTS@providecounter{pagesLTS.pnc.\pagesLTS@pnc}% % \end{macrocode} % -% The saved number of times this page numbering scheme was used -% is increased by one: +% The saved number of times, this page numbering scheme was used, is increased by one: % % \begin{macrocode} \addtocounter{pagesLTS.pnc.\pagesLTS@pnc}{1}% % \end{macrocode} % -% \indent Now defining the counter |pagesLTS.double.\pagesLTS@pnc|, -% if it did not exist already, adding~1, because this is -% the first page of it (or another one, if the scheme is -% continued): +% Now defining the counter |pagesLTS.double.\pagesLTS@pnc|, +% if it did not exist already, adding~1, because this is the first page of it +% (or another one, if the scheme is continued): % % \begin{macrocode} - \pagesLTS@ifcounter{pagesLTS.double.\pagesLTS@pnc}% + \pagesLTS@providecounter{pagesLTS.double.\pagesLTS@pnc}% \addtocounter{pagesLTS.double.\pagesLTS@pnc}{1}% % \end{macrocode} % -% The page number is continued, if the option |pagecontinue=false| -% is \textbf{not} set, otherwise it is reset to one. Note that neither -% the local nor the current counter are reset, as they contain -% the real \textit{values} and not the \textit{names} of the pages. +% The page number is continued, if the option |pagecontinue=false| is \textbf{not} set, +% otherwise it is reset to one. Note that neither the local nor the current counter are reset, +% as they contain the real \textit{values} and not the \textit{names} of the pages. % % \begin{macrocode} \ifpagesLTS@pagecontinue% @@ -3227,18 +2740,16 @@ a package with output \linebreak \fi% % \end{macrocode} % -% If it does not exist already, the counter -% |pagesLTS.current.local.\pagesLTS@pnc| -% (e.\,g. |pagesLTS.current.local.Roman|) is created. +% If it does not exist already, the counter |pagesLTS.current.local.\pagesLTS@pnc| +% \mbox{(e.\,g.} |pagesLTS.current.local.Roman|) is created. % % \begin{macrocode} - \pagesLTS@ifcounter{pagesLTS.current.local.\pagesLTS@pnc}% + \pagesLTS@providecounter{pagesLTS.current.local.\pagesLTS@pnc}% % \end{macrocode} % % If |pagesLTS.double.\pagesLTS@pnc| of the current page numbering -% scheme is equal to one, this is the first page of this page -% numbering scheme. Then |pagesLTS.current.local.\pagesLTS@pnc| -% (which was zero) is set to one. +% scheme is equal to one, this is the first page of this page numbering scheme. +% Then |pagesLTS.current.local.\pagesLTS@pnc| (which was zero) is set to one. % % \begin{macrocode} \ifnum \value{pagesLTS.double.\pagesLTS@pnc}=1% @@ -3246,64 +2757,58 @@ a package with output \linebreak \fi% % \end{macrocode} % -% Otherwise, i.\,e. if |\value{CurrentPage}| is not |>1|, -% i.\,e. before the first page has shiped out: +% Otherwise, i.\,e.\ if |\value{CurrentPage}| is not |>1|, +% i.\,e.~before the first page has shiped out: % % \begin{macrocode} - \else% - %% before the first page has shipped out + \else%% before the first page has shipped out % \end{macrocode} % -% The current page numbering scheme is defined by the -% argument of |\pagenumbering{...}|, which the user gave: +% The current page numbering scheme is defined by the argument of +% |\pagenumbering{...}|, which the user gave: % % \begin{macrocode} \xdef\pagesLTS@pnc{#1}% % \end{macrocode} % -% \noindent and the page numbering scheme set by the original -% page numbering command -% (1994/05/19 v1.1a LaTeX Kernel File w ltpageno.dtx 52 Page Numbering), -% which resets the page number to one, -% but at the first page continuation does not make sense). +% and the page numbering scheme set by the original page numbering command +% (2020/12/05 Version v1.1a LaTeX Kernel File~33 ltpageno.dtx Page Numbering), +% which resets the page number to one, but at the first page continuation does not make sense). % Well, nearly the original page numbering command: % |\OrigPagenumbering{\pagesLTS@pnc}| does not work, -% so we \textquotedblleft expand\textquotedblright{} the -% |\OrigPagenumbering| command: +% so we \textquotedblleft expand\textquotedblright{} the |\OrigPagenumbering| command: % % \begin{macrocode} \global\c@page \@ne\relax% \global\def\thepage{\csname \expandafter @\pagesLTS@pnc \endcsname \c@page}% % \end{macrocode} % -% If a page numbering scheme is used, which is not known by -% \LaTeX , an error might arise here -- but maybe without error message.\\ +% If a page numbering scheme is used, which is not known by \LaTeX, +% an error might arise here -- but maybe without error message.\\ % % If page numbering scheme |\alph|, |\Alph|, or |\fnsymbol| is used, -% \xpackage{pageslts} extends the page numbers according to -% the given options, using the \xpackage{alphalph} package. -% |\arabic| does not need any expansion. -% |\roman| and |\Roman| at least receive a definition for -% zero. +% \xpackage{pageslts} extends the page numbers according to the given options, +% using the \xpackage{alphalph} package. |\arabic| does not need any expansion. +% |\roman| and |\Roman| at least receive a definition for zero. % % \begin{macrocode} - \expandPagenumbering{#1} + \expandPagenumbering{#1}% % \end{macrocode} % % We are at the first page, so the page counters are set to one: % % \begin{macrocode} - \pagesLTS@ifcounter{pagesLTS.pnc.\pagesLTS@pnc}% + \pagesLTS@providecounter{pagesLTS.pnc.\pagesLTS@pnc}% \setcounter{pagesLTS.pnc.\pagesLTS@pnc}{1}% - \pagesLTS@ifcounter{pagesLTS.double.\pagesLTS@pnc}% + \pagesLTS@providecounter{pagesLTS.double.\pagesLTS@pnc}% \setcounter{pagesLTS.double.\pagesLTS@pnc}{1}% - \pagesLTS@ifcounter{pagesLTS.current.local.\pagesLTS@pnc}% + \pagesLTS@providecounter{pagesLTS.current.local.\pagesLTS@pnc}% \setcounter{pagesLTS.current.local.\pagesLTS@pnc}{1}% \fi% % \end{macrocode} % % Whether |\pagenumbering{...}| is called in the preamble, -% |\AtBeginDocument|, right after |\begin{document}|, +% in the |begindocument| hooks, right after |\begin{document}|, % or somewhere in the document, we want to remember % \textit{whether} it was called at all: % @@ -3324,19 +2829,18 @@ a package with output \linebreak % % \begin{macro}{\lastpageref*} % If \xpackage{hyperref} is used, but (some) references to some last page shall -% not be hyperlinked, a command |\lastpageref*| (analogous to |\pageref*|) is -% needed. Therefore we define (analogous to |\HyPsd@pageref| from -% the \xpackage{hyperref} package by \textsc{Heiko Oberdiek}) +% not be hyperlinked, a~command |\lastpageref*| (analogous to |\pageref*|) +% is needed. Therefore we define (analogous to |\HyPsd@pageref| from +% the \xpackage{hyperref} package % % \begin{macrocode} -%% analogous to \HyPsd@pageref from the hyperref package by Heiko Oberdiek: +%% analogous to \HyPsd@pageref from the hyperref package: \def\lastpagereftxt#1{\pagesLTS@@pageref#1*\END} % \end{macrocode} % -% Macro |\pagesLTSpageref| checks, whether a star is present (analogous to -% |\HyPsd@@pageref| again from the \xpackage{hyperref} package -% of \textsc{Heiko Oberdiek}): +% Macro |\pagesLTSpageref| checks, whether a star is present +% (analogous to |\HyPsd@@pageref| again from the \xpackage{hyperref} package): % % \begin{macrocode} \def\pagesLTS@@pageref#1*#2\END{% @@ -3354,9 +2858,9 @@ a package with output \linebreak % \end{macro} % % \phantomsection -% \begin{macro}{\lastpagereftext} \label{lastpagereftextlabel} -% \indent When |\lastpageref| is used somewhere inside the \texttt{txt} (text), -% i.\,e. not at the last page, it is defined as |\lastpagereftxt| (see above). +% \begin{macro}{\lastpagereftext}\label{lastpagereftextlabel}% +% When |\lastpageref| is used somewhere inside the \texttt{txt} (text), +% i.\,e.~not at the last page, it is defined as |\lastpagereftxt| (see above). % When the page numbering scheme is \xpackage{fnsymbol}, and the \xpackage{hyperref} % package has been loaded, a hyperref instead of a label is used for the reference % to |pagesLTS.fnsymbol.local.\arabic{pagesLTS.fnsymbol.local}|. @@ -3368,16 +2872,16 @@ a package with output \linebreak \def\pagesLTS@tmpA{#1}% \def\pagesLTS@tmpB{pagesLTS.fnsymbol.local}% \ifx\pagesLTS@tmpA\pagesLTS@tmpB% - \pagesLTS@ifcounter{pagesLTS.fnsymbol.local}% - \ltx@ifpackageloaded{hyperref}{% + \pagesLTS@providecounter{pagesLTS.fnsymbol.local}% + \IfPackageLoadedTF{hyperref}{% \href{\#pagesLTS.fnsymbol.local.\arabic{pagesLTS.fnsymbol.local}}% {\arabic{pagesLTS.fnsymbol.local}}% % \end{macrocode} % % When the page numbering scheme is \xpackage{fnsymbol}, but the \xpackage{hyperref} package % has \textit{not} been loaded, just the arabic number of the -% \texttt{pagesLTS.fnsymbol.local} counter is given (because there will be -% no hyperlink anyway). +% \texttt{pagesLTS.fnsymbol.local} counter is given +% (because there will be no hyperlink anyway). % % \begin{macrocode} }{\arabic{pagesLTS.fnsymbol.local}}% @@ -3409,7 +2913,7 @@ a package with output \linebreak \def\pagesLTS@tmpA{#1}% \def\pagesLTS@tmpB{pagesLTS.fnsymbol.local}% \ifx\pagesLTS@tmpA\pagesLTS@tmpB% - \pagesLTS@ifcounter{pagesLTS.fnsymbol.local}% + \pagesLTS@providecounter{pagesLTS.fnsymbol.local}% \arabic{pagesLTS.fnsymbol.local}% \else% % \end{macrocode} @@ -3417,7 +2921,7 @@ a package with output \linebreak % There is no |\pageref*| without \xpackage{hyperref}. % % \begin{macrocode} - \ltx@ifpackageloaded{hyperref}{\pageref*{#1}}{\pageref{#1}}% + \IfPackageLoadedTF{hyperref}{\pageref*{#1}}{\pageref{#1}}% \fi% \let\pagesLTS@tmpA\undefined% \let\pagesLTS@tmpB\undefined% @@ -3426,141 +2930,6 @@ a package with output \linebreak % \end{macrocode} % \end{macro} % -% \begin{macro}{\lastpagerefend} -% \indent When the \xpackage{hyperref} package is used and the page numbering scheme -% of the last page is \xpackage{fnsymbol}, |\lastpageref| is defined as -% |\lastpagerefend|. -% Hyperrefs instead of labels are used for the reference to -% \xpackage{fnsymbol} pages (including the last one).\\ -% -% Again it must be discriminated between unstarred form and starred form: -% -% \begin{macrocode} -\def\lastpagerefend#1{\pagesLTS@@pagerefend#1*\END} - -\def\pagesLTS@@pagerefend#1*#2\END{% - \ifx\\#2\\% no star - \pagesLTS@@@pagerefend{#1}% - \else% star - \expandafter\pagesLTS@@@pagerefendstar% - \fi% -} - -\def\pagesLTS@@@pagerefend#1{\l@stpagerefend{#1}} -\def\pagesLTS@@@pagerefendstar#1{\l@stpagerefendstar{#1}} - -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\l@stpagerefend} -% The unstarred form (i.\,e. with hyperlinks, if \xpackage{hyperref} is loaded, -% otherwise without hyperlinks): -% -% \begin{macrocode} -\newcommand{\l@stpagerefend}[1]{% - \def\pagesLTS@tmpA{#1}% - \def\pagesLTS@tmpB{pagesLTS.fnsymbol.local}% - \ifx\pagesLTS@tmpA\pagesLTS@tmpB% - \pagesLTS@ifcounter{pagesLTS.fnsymbol.local}% - \ltx@ifpackageloaded{hyperref}{% - \href{\#pagesLTS.fnsymbol.local.\arabic{pagesLTS.fnsymbol.local}}% - {\arabic{pagesLTS.fnsymbol.local}}% - }{\arabic{pagesLTS.fnsymbol.local}}% - \else% - \def\pagesLTS@tmpB{pagesLTS.fnsymbol}% - \ifx\pagesLTS@tmpA\pagesLTS@tmpB% - \ltx@ifpackageloaded{hyperref}{% - \href{\#pagesLTS.fnsymbol.local.\arabic{pagesLTS.fnsymbol.local}}% - {\pagesLTS.lastpage}% - }{\pageref{pagesLTS.fnsymbol}}% - \else% - \def\pagesLTS@tmpB{LastPage}% - \ifx\pagesLTS@tmpA\pagesLTS@tmpB% - \ltx@ifpackageloaded{hyperref}{% - \href{\#pagesLTS.fnsymbol.local.\pagesLTS@eso}% - {\pagesLTS.lastpage}% - }{\pageref{LastPage}}% - \else% - \def\pagesLTS@tmpB{VeryLastPage}% - \ifx\pagesLTS@tmpA\pagesLTS@tmpB% - \ltx@ifpackageloaded{hyperref}{% - \href{\#pagesLTS.fnsymbol.local.\arabic{pagesLTS.fnsymbol.local}}% - {\pagesLTS.lastpage}% - }{\pageref{VeryLastPage}}% - \else% - \def\pagesLTS@tmpB{LastPages}% - \ifx\pagesLTS@tmpA\pagesLTS@tmpB% - \ltx@ifpackageloaded{hyperref}{% - \href{\#pagesLTS.fnsymbol.local.\arabic{pagesLTS.fnsymbol.local}}% - {\arabic{pagesLTS.pagenr}}% - }{\pageref{LastPages}}% - \else% - \pageref{#1}% - \fi% - \fi% - \fi% - \fi% - \fi% -% \end{macrocode} -% -% We do not need the temporary definitions any more. -% -% \begin{macrocode} - \let\pagesLTS@tmpA\undefined% - \let\pagesLTS@tmpB\undefined% - } - -% \end{macrocode} -% \end{macro} -% -% \pagebreak -% -% \begin{macro}{\l@stpagerefendstar}% -% And the starred form, without hyperlinks, even if \xpackage{hyperref} is loaded, -% otherwise (i.\,e. without loaded \xpackage{hyperref}) this command is not called: -% -% \begin{macrocode} -\newcommand{\l@stpagerefendstar}[1]{% - \def\pagesLTS@tmpA{#1}% - \def\pagesLTS@tmpB{pagesLTS.fnsymbol.local}% - \ifx\pagesLTS@tmpA\pagesLTS@tmpB% - \pagesLTS@ifcounter{pagesLTS.fnsymbol.local}% - \arabic{pagesLTS.fnsymbol.local}% - \else% - \def\pagesLTS@tmpB{pagesLTS.fnsymbol}% - \ifx\pagesLTS@tmpA\pagesLTS@tmpB% - \ltx@ifpackageloaded{hyperref}{\pageref*{pagesLTS.fnsymbol}}{% - \pageref{pagesLTS.fnsymbol}}% - \else% - \def\pagesLTS@tmpB{LastPage}% - \ifx\pagesLTS@tmpA\pagesLTS@tmpB% - \ltx@ifpackageloaded{hyperref}{\pageref*{LastPage}}{\pageref{LastPage}}% - \else% - \def\pagesLTS@tmpB{VeryLastPage}% - \ifx\pagesLTS@tmpA\pagesLTS@tmpB% - \ltx@ifpackageloaded{hyperref}{\pageref*{VeryLastPage}}{% - \pageref{VeryLastPage}}% - \else% - \def\pagesLTS@tmpB{LastPages}% - \ifx\pagesLTS@tmpA\pagesLTS@tmpB% - \ltx@ifpackageloaded{hyperref}{\pageref*{LastPages}}{\pageref{LastPages}}% - \else% - \ltx@ifpackageloaded{hyperref}{\pageref*{#1}}{\pageref{#1}}% - \fi% - \fi% - \fi% - \fi% - \fi% - \fi% - \let\pagesLTS@tmpA\undefined% - \let\pagesLTS@tmpB\undefined% - } - -% \end{macrocode} -% \end{macro} -% -% \pagebreak -% % \begin{macro}{\overrideLTSlabel} % |\overridelabel| from the \xpackage{undolabl} package just |\undonewlabel|s % a~label and places a new |\label{#1}|, but we need to place a @@ -3568,15 +2937,13 @@ a package with output \linebreak % (but somewhat similar to) |\overridelabel|: % % \begin{macrocode} -% somewhat analogous to \overridelabel from the undolabl package: \newcommand\overrideLTSlabel[2]{% - \@bsphack + \@bsphack% \ifnum \value{pagesLTS.pnc.\pagesLTS@pnc}>1% - \edef\pagesLTStmpA{#1}% - \edef\pagesLTStmpB{pagesLTS.\pagesLTS@pnc.local}% - \ifx\pagesLTStmpA\pagesLTStmpB% - \immediate\write\@auxout{\string\undonewlabel{#1}}% - \@overriddenmessage s{#1}% + \edef\pagesLTS@tmpC{#1}% + \edef\pagesLTS@tmpD{pagesLTS.\pagesLTS@pnc.local}% + \ifx\pagesLTS@tmpC\pagesLTS@tmpD% + \immediate\write\@auxout{\string\undonewlabel{#1}}\@overriddenmessage s{#1}% \fi% \fi% \pagesLTS@putlabel{#1}{#2}{0}% @@ -3586,103 +2953,66 @@ a package with output \linebreak % \end{macrocode} % \end{macro} % -% \begin{macro}{\@pagesLTS@Prelim@EveryShipout} -% \indent Because we cannot make references to pages with \xpackage{fnsymbol} -% page \textquotedblleft numbers\textquotedblright{} manually -% with \xpackage{hyperref}, we use \nolinebreak{|\phantomsection|\,s} and -% refer to one of those. But because we do not know how many -% \nolinebreak{|\phantomsection|\,s} and \nolinebreak{|\section*|\,s} -% are introduced by the user (or other packages; -% cf.~\LaTeX~bug~2298: knowing level of |section*|, -% \ \url{http://www.latex-project.org/cgi-bin/ltxbugs2html?category=LaTeX&responsible=anyone&state=open&keyword=&pr=latex%2F2298&search=}), -% we cannot refer to the last one as we did with the pages. -% -% \begin{macrocode} -\newcommand{\@pagesLTS@Prelim@EveryShipout}{% -%% The following code is from the prelim2e package %% -%% [2009/05/29 v1.3] by Martin Schr\"{o}der (Thanks!): %% - \bgroup - \dimen\z@=\wd\@cclv - \dimen\@ne=\ht\@cclv - \dimen\tw@=\dp\@cclv - \dimen\thr@@=\dimen1 - \advance\dimen\thr@@ by \dimen\tw@ - \global\setbox\@cclv\vbox to \dimen\thr@@{% - \hb@xt@\dimen\z@{% - \box\@cclv% - \hss% - }% - \vbox to \z@{% - \hb@xt@\dimen\z@{% - \let\protect\relax -%% Code not from prelim2e package: %% -% \end{macrocode} +% \begin{macro}{\pagesLTS@EveryShipout} +% Because we cannot make references to pages with \xpackage{fnsymbol} +% page \textquotedblleft numbers\textquotedblright{} manually with \xpackage{hyperref}, +% we use \nolinebreak{|\phantomsection|\,s} and refer to one of those. +% But because we do not know how many \nolinebreak{|\phantomsection|\,s} and +% \nolinebreak{|\section*|\,s} are introduced by the user (or other packages; +% cf.~\LaTeX~bug~2298: knowing level of |section*|,\ % +% \url{https://www.latex-project.org/cgi-bin/ltxbugs2html?pr=latex/2298&introduction=yes&state=open}), +% we cannot refer to the last one as we did with the pages.\\ % % Therefore each page with \xpackage{fnsymbol} page -% \textquotedblleft number\textquotedblright{} receives a -% |\phantomsection| and a label, which includes a number increased -% by one for each page. This is done for -% |pagesLTS.fnsymbol.local.\arabic{pagesLTS.fnsymbol.cont}| -% as well as +% \textquotedblleft number\textquotedblright{} receives a |\phantomsection| and a label, +% which includes a number increased by one for each page. This is done for +% |pagesLTS.fnsymbol.local.\arabic{pagesLTS.fnsymbol.cont}| as well as % |pagesLTS.fnsymbol|, |pagesLTS.\pagesLTS@pnc|, and % |pagesLTS.\pagesLTS@pnc.local|.\\ -% In case an older label already existed, it is overwritten by an -% |\overridelabel| command. -% -% \begin{macrocode} - \ifx\pagesLTS@pnc\pagesLTS@fns% - \pagesLTS@ifcounter{pagesLTS.fnsymbol.cont}% - \addtocounter{pagesLTS.fnsymbol.cont}{1}% - \ltx@ifpackageloaded{hyperref}{% - \phantomsection% - \hypertarget{pagesLTS.fnsymbol.local.\arabic{pagesLTS.fnsymbol.cont}}{}% - }{}% - \ifnum \pagesLTS@esov=\pagesLTS@zero% - \label{pagesLTS.fnsymbol}% - \else% - \overridelabel{pagesLTS.fnsymbol}% - \fi% - \else% - \ltx@ifpackageloaded{hyperref}{\phantomsection}{}% - \if@filesw% - \overridelabel{pagesLTS.\pagesLTS@pnc}% +% In case an older label already existed, it is overwritten by an |\overridelabel| command. +% +% \begin{macrocode} +\newcommand{\pagesLTS@EveryShipout}{% + \begingroup% + \ifx\pagesLTS@pnc\pagesLTS@fns% + \pagesLTS@providecounter{pagesLTS.fnsymbol.cont}% + \addtocounter{pagesLTS.fnsymbol.cont}{1}% + \IfPackageLoadedT{hyperref}{\phantomsection% + \hypertarget{pagesLTS.fnsymbol.local.\arabic{pagesLTS.fnsymbol.cont}}{}% + }% + \ifnum \pagesLTS@esov=\pagesLTS@zero% + \label{pagesLTS.fnsymbol}% + \else% + \overridelabel{pagesLTS.fnsymbol}% + \fi% + \else% + \IfPackageLoadedT{hyperref}{\phantomsection}% + \if@filesw% + \overridelabel{pagesLTS.\pagesLTS@pnc}% % \end{macrocode} % % We need to go forward one page (and later backward again), because % |\overrideLTSlabel| calls a |\pagesLTS@putlabel|, and that one uses -% |\addtocounter{page}{-1}...\addtocounter{page}{+1}|, which is not -% needed here. +% |\addtocounter{page}{-1}...\addtocounter{page}{+1}|, which is not needed here. % % \begin{macrocode} - \addtocounter{page}{+1}% - \overrideLTSlabel{pagesLTS.\pagesLTS@pnc.local}{\theCurrentPageLocal}% - \addtocounter{page}{-1}% - \fi% - \fi% -%% Code from prelim2e package again: %% - }% - \vss% - }% - \vss% - }% - \wd\@cclv=\dimen\z@ - \ht\@cclv=\dimen\@ne - \dp\@cclv=\dimen\tw@ - \egroup -%% End of code from the prelim2e package. %% + \addtocounter{page}{+1}% + \overrideLTSlabel{pagesLTS.\pagesLTS@pnc.local}{\theCurrentPageLocal}% + \addtocounter{page}{-1}% + \fi% + \fi% + \endgroup% } % \end{macrocode} % \end{macro} % -% \pagebreak -% -% \begin{macro}{\EveryShipout} -% \indent At the end of each shipout, the following commands are executed: +% \begin{macro}{\AddToHook{shipout/foreground}} +% At the end of each shipout, the following commands are executed: % % \begin{macrocode} -\EveryShipout{% - \ifnum\value{page}>0% \relax +\AddToHook{shipout/foreground}{% + \ifnum\value{page}>0% \else% \ifnum\value{page}=0% \PackageWarning{pageslts}{% @@ -3704,10 +3034,10 @@ a package with output \linebreak this will lead to a counter overflow.\MessageBreak% }% \else% - \PackageError{pageslts}{% + \PackageError{pageslts}{Counter page has no recognized value}{% Counter `page' does not have a recognized value:\MessageBreak% `\the\value{page}'\MessageBreak% - \@ehd \MessageBreak% + \@ehd\MessageBreak% }% \fi% \fi% @@ -3717,7 +3047,7 @@ a package with output \linebreak % If the |CurrentPage| is equal to one, this is the first shipout. % % \begin{macrocode} - \ifnum \value{CurrentPage}=1% This is the first shipout! + \ifnum \value{CurrentPage}=1% % \end{macrocode} % % We check whether some page numbering scheme was defined by @@ -3730,37 +3060,35 @@ a package with output \linebreak % If it was not defined (i.\,e. |\pagesLTS@called| is zero), % the user should be informed, that a |\pagenumbering{...}| % is missing behind |\begin{document}|. -% Of course, it is possible that some package did some -% pages of output with |\AtBeginDocument|. In that case, +% Of course, it is possible that some package did some pages of output using +% the |begindocument/end| hook. In that case, % one |\pagenumbering{...}| before |\begin{document}| and % one |\pagenumbering{...}| (with the same argument, of course!) % behind |\begin{document}| could help somewhat. When |\PackageError| % was used here, the error message was not written to the screen and % the \xfile{.log}-file, but into the document. Therefore we just make -% a note to give the error message later (|\AtEndDocument|). At that -% time unfortunately most of the document has already been compiled -% (or did not compile due to this error), but I do not know how to -% change that. +% a note to give the error message later (|\AddToHook{enddocument/afterlastpage}|). +% At that time unfortunately most of the document has already been compiled +% (or did not compile due to this error), but I do not know how to change that. % % \begin{macrocode} - \global\def\pncmissing{1}% + \gdef\pncmissing{1}% % \end{macrocode} % % We save the current value of the page, % % \begin{macrocode} - \mathchardef\pagesLTS@tmpD=\arabic{page}% + \setcounter{pagesLTS.tmpcounter}{\value{page}}% % \end{macrocode} % -% determine the current page numbering scheme, +% determine the current page numbering scheme,\newpage % % \begin{macrocode} -%% Code from Andres L\"{o}h, Universiteit Utrecht (NL) %% +%% Code from Andres L\"{o}h, Universiteit Utrecht (NL) %% \def\extract#1{\expandafter\extract@ #1\END}% \def\extract@#1\csname @#2\endcsname#3\END{#2}% \edef\pagesLTS@tmpQ{\extract\thepage}% -%% End of code from Andres L\"{o}h %% - \let\pagesLTS@tmpP\pagesLTS@tmpQ% +%% End of code from Andres L\"{o}h %% % \end{macrocode} % % set the current page numbering scheme to~0 @@ -3774,20 +3102,19 @@ a package with output \linebreak % page numbering scheme as argument: % % \begin{macrocode} - \pagenumbering{\pagesLTS@tmpP}% + \pagenumbering{\pagesLTS@tmpQ}% % \end{macrocode} % -% This resets the page to one (if option |pagecontinue=false| -% was chosen), but because we do not start a new page numbering -% scheme here but manifest a page numbering scheme, which -% the user forgot to define, the page number should not have -% been reset to one. (This is the first page, but maybe the user -% wants it to have page number 2001?) Therefore we revert this here -% and set the page number to its value, which was saved before the -% |\pagenumbering| command. +% This resets the page to one (if option |pagecontinue=false| was chosen), +% but because we do not start a new page numbering scheme here +% but manifest a page numbering scheme, which the user forgot to define, +% the page number should not have been reset to one. (This is the first page, +% but maybe the user wants it to have page number 2024?) +% Therefore we revert this here and set the page number to its value, +% which was saved before the |\pagenumbering| command. % % \begin{macrocode} - \setcounter{page}{\pagesLTS@tmpD}% + \setcounter{page}{\value{pagesLTS.tmpcounter}}% \fi% % \end{macrocode} % @@ -3798,41 +3125,37 @@ a package with output \linebreak \fi% % \end{macrocode} % -% If the current page numbering scheme |\pagesLTS@pnc| is -% |\pagesLTS@fns| (which is defined as \texttt{fnsymbol}), -% the label is set by \linebreak -% |\@pagesLTS@Prelim@EveryShipout| (see just above), -% and |\pagesLTS@esov| is set to the (real) number (not the name) of -% this page numbering scheme, |\arabic{pagesLTS.fnsymbol.cont}|.\\ +% If the current page numbering scheme |\pagesLTS@pnc| is |\pagesLTS@fns| +% (which is defined as \texttt{fnsymbol}), the label is set by \linebreak +% |\pagesLTS@EveryShipout| (see just above), +% and |\pagesLTS@esov| is set to the (real) number (not the name) +% of this page numbering scheme, |\arabic{pagesLTS.fnsymbol.cont}|.\\ % When no more pages with \xpackage{fnsymbol} page % \textquotedblleft number\textquotedblright{} are shipped out, % the value remains fixed and we have our reference to the last page % of the \xpackage{fnsymbol} page numbering range. -% (At least we will have that reference after some more work, -% see below). +% (At least we will have that reference after some more work, see below). % % \begin{macrocode} \ifx\pagesLTS@pnc\pagesLTS@fns% - \@pagesLTS@Prelim@EveryShipout% - \gdef\pagesLTS@esov{\arabic{pagesLTS.fnsymbol.cont}}% + \pagesLTS@EveryShipout% + \xdef\pagesLTS@esov{\arabic{pagesLTS.fnsymbol.cont}}% % \end{macrocode} % -% When another page numbering scheme was reused (in the example file -% \xpackage{Roman}), we also need to apply\\ -% |\@pagesLTS@Prelim@EveryShipout|, +% When another page numbering scheme was reused (in the example file \xpackage{Roman}), +% we also need to apply |\pagesLTS@EveryShipout|, % because otherwise we would get multiply defined labels. % % \begin{macrocode} \else% \ifnum \value{pagesLTS.pnc.\pagesLTS@pnc}>1% - \@pagesLTS@Prelim@EveryShipout% + \pagesLTS@EveryShipout% \fi% \fi% % \end{macrocode} % % The |CurrentPage| as well as the |pagesLTS.current.local.\pagesLTS@pnc| -% are advanced by one (because one page was shipped out and the next is -% about to begin). +% are advanced by one (because one page was shipped out and the next is about to begin). % % \begin{macrocode} \addtocounter{CurrentPage}{1}% @@ -3842,83 +3165,92 @@ a package with output \linebreak % \end{macrocode} % \end{macro} % -% \begin{macro}{\pagesLTS@putlabelhyper} -% \indent Here the labels are set, if the \xpackage{hyperref} package -% was loaded. Simply using |\label| would not work, because labels -% wait for the output routines to work, and there may not be any -% more invocations of the output routines. To force the write out -% we need to do an |\immediate| write. +% We use some code from the \xpackage{lastpage} package: +% +% \begin{macro}{\protected@iwrite} +% We need an |\immediate\protected@write|. Just |\immediate\write| had led to errors, +% for example when packages like \xpackage{babel-greek} re-defined |\roman|. % % \begin{macrocode} -\newcommand{\pagesLTS@putlabelhyper}[2]{% - \ifHy@pageanchor \relax% - \else% +%% Code provided by Prof. Enrico Gregorio at https://tex.stackexchange.com/a/542425 +\long\def\protected@iwrite#1#2#3{% + \begingroup% + #2% + \let\protect\@unexpandable@protect% + \edef\reserved@a{\immediate\write#1{#3}}% + \reserved@a% + \endgroup% + \if@nobreak\ifvmode\nobreak\fi\fi% + } + % \end{macrocode} +% \end{macro} % -% If the \xpackage{hyperref} package is used, but pageanchors are disabled, -% the hyperlinking will not work. -% +% \begin{macro}{\pagesLTS@makeHy} +% Just once we need the page from |\@currentHpage| without any \mbox{\textquotedblleft |page.|\textquotedblright} +% (|\pagesLTS@makeHy| is identical to |\lastpage@makeHy| except of the used namings): +% \begin{macrocode} +\newcommand{\pagesLTS@makeHy}{% + \gdef\pagesLTS@Hy{}% + \IfPackageLoadedT{hyperref}{% + \ifHy@pageanchor% +% \end{macrocode} +% |\gdef\pagesLTS@Hy{}|, but that was already done at the beginning of this command. +% \begin{macrocode} + \xdef\pagesLTS@Hptest{Doc-Start}% + \ifx\pagesLTS@Hptest\@currentHpage\relax% + \gdef\pagesLTS@Hy{\@currentHpage}% + \else% + \edef\pagesLTS@Hptest{\@currentHpage}% + \ifx\pagesLTS@Hptest\empty\relax% +% \end{macrocode} +% then |\gdef\pagesLTS@Hy{}|, but that was already done at the beginning of this command. % \begin{macrocode} - \PackageError{pagesLTS}{hyperref option pageanchor disabled}{% - The \string\lastpageref{#1} link doesn't work\MessageBreak% - using hyperref with disabled option `pageanchor'.\MessageBreak% + \else% +% \end{macrocode} +% |\@currentHpage| should be |page.<some number>|, |\pagesLTS@rmpage| removes the +% \mbox{\textquotedblleft |page.|\textquotedblright .}\\ +% Next compilation run, |\pagesLTSlastpageHy| gets defined via the \xfile{aux} file. +% If we arrived at this place, but the definition is still empty, +% then |\@currentHpage| has some unexpected content. +% \begin{macrocode} + \gdef\pagesLTS@Hy{\pagesLTS@rmpage{\@currentHpage}}% + \ifx\pagesLTSlastpageHy\empty\relax% + \PackageWarningNoLine{pageslts}{% + \string\@currentHpage\space is\MessageBreak% + \meaning\@currentHpage\MessageBreak% + not beginning with "page.",\MessageBreak% + \string\pagesLTSlastpageHy\space is now let empty.}% + \fi% + \fi% + \fi% + \fi% }% - \fi + }% + % \end{macrocode} +% \end{macro} % -% If use of the \xfile{.aux}-file is allowed, the label for -% \texttt{LastPage} is written into that file, the page -% reference depending on the options, which where set for -% the \xpackage{hyperref} package. -% -% \begin{macrocode} -%% The following code is from the hyperref package %% -%% [2010/04/17 v6.80x; newer versions are available] %% -%% by Heiko Oberdiek (Big Thanks!). %% - \if@filesw - \begingroup - \let\@number\@firstofone - \ifHy@pageanchor - \ifHy@hypertexnames - \ifHy@plainpages - \def\Hy@temp{\arabic{page}}% - \else - \Hy@unicodefalse -%% Code not from hyperref package: %% -%% The following lines are modified from the hyperref package. %% -%% Without the modification, after the first shipout "PD1" is %% -%% inserted each time |\pdfstringdef\Hy@temp{\thepage}| is %% -%% executed (if |fnsymbol| is not used). %% - \ifnum \value{CurrentPage}=1% - \ifx\pagesLTS@pnc\pagesLTS@fns% - \pdfstringdef\Hy@temp{\thepage}% - \else% - \def\Hy@temp{\thepage}% - \fi% - \else% - \pdfstringdef\Hy@temp{\thepage}% - \fi% -%% Code from hyperref package again: %% - \fi - \else - \def\Hy@temp{\the\Hy@pagecounter}% - \fi - \fi -%% End of code from the hyperref package. %% -%% (The following four lines are modified %% -%% from the hyperref package.) %% - \immediate\write\@auxout{\string - \newlabel{#1}{{}{#2}{}{\ifHy@pageanchor page.\Hy@temp\fi}{}}}% - \endgroup% - \fi% - } +% \begin{macro}{\pagesLTS@rmpage} +% |\pagesLTS@rmpage| removes the \mbox{\textquotedblleft |page.|\textquotedblright.} +% +% \begin{macrocode} +%% Code provided by David Carlisle at https://tex.stackexchange.com/a/721877 +\def\pagesLTS@rmpage#1{% + \expandafter\xpagesLTS@rmpage\expanded{#1}\xpagesLTS@rmpage page.% + \xpagesLTS@rmpage\xxpagesLTS@rmpage{#1}} +\def\xpagesLTS@rmpage #1page.#2\xpagesLTS@rmpage#3\xxpagesLTS@rmpage#4{% + \if$\detokenize{#1}$#2%\else#4 + \fi} % \end{macrocode} +% |\else#4| means, that it did not start with |page.|, and whatever it is, +% we cannot use this |#4| for |\pagesLTS@Hy|. % \end{macro} % % \phantomsection % \begin{macro}{\pagesLTS@putlabel}\label{pagesLTSputlabel} -% \indent Since the page has been put out, we are on the page after +% Since the page has been put out, we are on the page after % that page. We therefore subtract one from the page counter. % % \begin{macrocode} @@ -3928,76 +3260,114 @@ a package with output \linebreak % % When the \xpackage{showkeys} package has been loaded in \texttt{draft} mode, % in the margin for each label a box is displayed with the name of the label. -% \xpackage{showkeys} accomplishes this by redefining |\label|, but -% \xpackage{pageslts} does not use |\label|, but writes directly to the +% \xpackage{showkeys} accomplishes this by redefining |\label|, +% but \xpackage{pageslts} does not use |\label|, but writes directly to the % {\nobreak |\jobname|\xfile{.aux}-}\allowbreak file, and this is generally done % \emph{after} the according page has shipped out, therefore no box can be placed % on the \emph{preceding} page. At least \xpackage{pageslts} gives a warning, that % \xpackage{showkeys} cannot present the respective label. % % \begin{macrocode} - \ifx\pagesLTS@SK\pagesLTS@one\relax% - \message{^^J}% - \message{Package pageslts Warning: Package showkeys without option final loaded,}% - \ifnum\value{pagesLTS.pagenr}<1% - \message{(pageslts) but label #1 on page \thepage\space(about \theCurrentPage)}% - \else% - \message{(pageslts) but label #1 on page \thepage\space(about \theCurrentPage\space of \arabic{pagesLTS.pagenr})}% - \fi% - \message{(pageslts) cannot be shown, because pageslts does not use \string\label,}% - \message{(pageslts) but writes directly to the \jobname.aux file. ^^J}% - \fi% + \IfPackageLoadedT{showkeys}{% + \IfPackageLoadedWithOptionsF{showkeys}{final}{% + \ifnum\value{pagesLTS.pagenr}<1% + \PackageWarningNoLine{pageslts}{% + Package showkeys without option final loaded,\MessageBreak% + but label #1 on page \thepage\space(about \theCurrentPage)\MessageBreak% + cannot be shown, because pageslts does not use \string\label,\MessageBreak% + but writes directly to the \jobname.aux file}% + \else% + \PackageWarningNoLine{pageslts}{% + Package showkeys without option final loaded,\MessageBreak% + but label #1 on page \thepage\space(about \theCurrentPage\space of \arabic{pagesLTS.pagenr})\MessageBreak% + cannot be shown, because pageslts does not use \string\label,\MessageBreak% + but writes directly to the \jobname.aux file}% + \fi% + }% + }% + \IfPackageLoadedTF{hyperref}{% % \end{macrocode} % -% If the \xpackage{hyperref} package is used, the format of the labels is somewhat longer. +% Here the labels are set, if the \xpackage{hyperref} package +% was loaded. Simply using |\label| would not work, because labels +% wait for the output routines to work, and there may not be any +% more invocations of the output routines. To force the write out +% we need to do an |\immediate| write (|\protected@iwrite|). % % \begin{macrocode} - \ltx@ifpackageloaded{hyperref}{\pagesLTS@putlabelhyper{#1}{#2}}{% else + \ifHy@pageanchor\else% % \end{macrocode} % -% \pagebreak +% If the \xpackage{hyperref} package is used, but pageanchors are disabled, +% the hyperlinking will not work. % -% If the \xpackage{hyperref} package is not used, there will be no hyperlinks, -% and the label is written in the way of the old \xpackage{lastpage} package. -% But we must remember to undo the label first, if it already exists. +% \begin{macrocode} + \PackageWarningNoLine{pagesLTS}{% + The \string\lastpageref{#1} link does not work\MessageBreak% + using hyperref with disabled option `pageanchor'.\MessageBreak% + Better enable `pageanchor' or use\MessageBreak% + \string\lastpageref*{...} (not generating a link)% + }% + \fi% +% \end{macrocode} +% +% If use of the \xfile{.aux}-file is allowed, the label for \texttt{LastPage} +% is written into that file, the page reference depending on the options, +% which where set for the \xpackage{hyperref} package. % % \begin{macrocode} \if@filesw% - \ifnum \value{pagesLTS.pnc.\pagesLTS@pnc}<2% + \begingroup% + \protected@iwrite\@auxout{}{\string\newlabel{#1}{% + {\@currentlabel}{#2}{\@currentlabelname}% + {\IfPackageLoadedTF{hyperref}{\ifHy@pageanchor\@currentHpage\fi% + }{\@currentHref}}% + {\@kernel@reserved@label@data}}% + }% + \endgroup% + \fi% + }{% % \end{macrocode} % -% When the \xpackage{nameref} package is used, |\newlabel| needs five instead of two arguments: +% If the \xpackage{hyperref} package is not used, there will be no hyperlinks, +% and the label is written in the way of the \xpackage{lastpage} package. +% But we must remember to undo the label first, if it already exists. % % \begin{macrocode} - \ltx@ifpackageloaded{nameref}{% - \immediate\write\@auxout{\string\newlabel{#1}{{}{#2}{}{}{}}}}{% else - \immediate\write\@auxout{\string\newlabel{#1}{{}{#2}}}}% + \if@filesw% + \ifnum \value{pagesLTS.pnc.\pagesLTS@pnc}<2% + \protected@iwrite\@auxout{}{\string\newlabel{#1}{% + {\@currentlabel}{#2}{\@currentlabelname}% + {\@currentHref}{\@kernel@reserved@label@data}}% + }% \else% - \edef\pagesLTStmpA{#1}% - \edef\pagesLTStmpB{pagesLTS.\pagesLTS@pnc.local}% - \ifx\pagesLTStmpA\pagesLTStmpB% - \edef\pagesLTStmpA{#3}% - \ifx\pagesLTStmpA\pagesLTS@one% + \edef\pagesLTS@tmpC{#1}% + \edef\pagesLTS@tmpD{pagesLTS.\pagesLTS@pnc.local}% + \ifx\pagesLTS@tmpC\pagesLTS@tmpD% + \edef\pagesLTS@tmpC{#3}% + \ifx\pagesLTS@tmpC\pagesLTS@one% % \end{macrocode} % -% Only when the third argument of |\pagesLTS@putlabel| is $1$, -% we do need to undo the label. Otherwise there is no label to -% undo, and the \xpackage{undolabl} package would give an error. +% Only when the third argument of |\pagesLTS@putlabel| is $1$, we do need to undo the label. +% Otherwise there is no label to undo, and the \xpackage{undolabl} package would give an error. % % \begin{macrocode} \immediate\write\@auxout{\string\undonewlabel{#1}}% \fi% \fi% - \ltx@ifpackageloaded{nameref}{% - \immediate\write\@auxout{\string\newlabel{#1}{{}{#2}{}{}{}}}}{% else - \immediate\write\@auxout{\string\newlabel{#1}{{}{#2}}}}% +% \end{macrocode} +% \newpage +% \begin{macrocode} + \protected@iwrite\@auxout{}{\string\newlabel{#1}{% + {\@currentlabel}{#2}{\@currentlabelname}% + {\@currentHref}{\@kernel@reserved@label@data}}% + }% \fi% \fi% - }% + }% % \end{macrocode} % -% After the writeout we restore the page number again, -% since there might be other things still to be done. +% After the writeout we restore the page number again, since there might be other things still to be done. % % \begin{macrocode} \addtocounter{page}{+1}% @@ -4006,10 +3376,8 @@ a package with output \linebreak % \end{macrocode} % \end{macro} % -% \pagebreak -% % \begin{macro}{\pagesLTS@putlabels} -% \indent |\pagesLTS@putlabels| is nearly identical to |\pagesLTS@putlabelV|: +% |\pagesLTS@putlabels| writes labels and calls |\pagesLTS@putlabel{LastPages}{\theCurrentPage}{1}|. % % \begin{macrocode} \newcommand{\pagesLTS@putlabels}{% @@ -4018,26 +3386,23 @@ a package with output \linebreak \addtocounter{pagesLTS.current.local.\pagesLTS@pnc}{-1}% % \end{macrocode} % -% If |\pagenumbering{...}| has not been used, -% |\pagesLTS@pnc| is still zero ($0$, |\pagesLTS@zero|), +% If |\pagenumbering{...}| has not been used, |\pagesLTS@pnc| is still zero ($0$, |\pagesLTS@zero|), % and the according warning message is given. % % \begin{macrocode} \ifx\pagesLTS@pnc\pagesLTS@zero% - \PackageWarning{pagesLTS}{No page numbering scheme found:\MessageBreak% - \pagesLTS@messageNPN }% + \PackageWarningNoLine{pagesLTS}{No page numbering scheme found:\MessageBreak% + \pagesLTS@messageNPN}% % \end{macrocode} % -% \noindent otherwise the numbered label is written, -% and if the page numbering scheme was not used before, -% the unnumbered label is written, too. -% +% otherwise the numbered label is written, and +% if the page numbering scheme was not used before, also the unnumbered label is written. % % \begin{macrocode} \else% \pagesLTS@writelabel{\pagesLTS@pnc.\arabic{pagesLTS.pnc.\pagesLTS@pnc}}% \ifnum \value{pagesLTS.pnc.\pagesLTS@pnc}<2% - \ifx\pagesLTS@pnc\pagesLTS@fns% \relax + \ifx\pagesLTS@pnc\pagesLTS@fns% \else% \pagesLTS@writelabel{\pagesLTS@pnc}% \fi% @@ -4045,24 +3410,22 @@ a package with output \linebreak \fi% % \end{macrocode} % -% \noindent Before the label for the \texttt{LastPages} can be put, -% we must advance one page again, because |\pagesLTS@putlabel| itself -% goes back one page (and at its end forward again). +% Before the label for the \texttt{LastPages} can be put, we must advance one page again, +% because |\pagesLTS@putlabel| itself goes back one page (and at its end forward again). % % \begin{macrocode} \addtocounter{page}{+1}% \pagesLTS@putlabel{LastPages}{\theCurrentPage}{1}% % \end{macrocode} % -% \noindent Here should follow a\\ +% \newpage +% Here should follow a\\ % |\addtocounter{page}{-1}|,\\ % but we have to remember to increase the page counters again, -% which were decreased at the start of this |\pagesLTS@putlabels| -% command, and that would include\\ +% which were decreased at the start of this |\pagesLTS@putlabels| command, and that would include\\ % |\addtocounter{page}{+1}|,\\ -% therefore this two lines cancel each other and -% therefore just can be skipped. But the other counters have to -% be increased: +% therefore these two lines cancel each other and therefore they just can be skipped. +% But the other counters have to be increased again: % % \begin{macrocode} \addtocounter{CurrentPage}{+1}% @@ -4072,251 +3435,137 @@ a package with output \linebreak % \end{macrocode} % \end{macro} % -% \pagebreak -% -% \begin{macro}{\AtBeginDocument} -% \indent |\AtBeginDocument| we write into the \xfile{aux} file regarding -% the double loading of the package. -% Then it is checked whether the \texttt{endfloat} -% package has been loaded, whether it is newer than March 1992 (i.\,e. at least -% April 1992 v2.0), in which case it is compatible with this -% \xpackage{pageslts} package.\\ -% If it is even newer than 2011/12/24, it is the recent version -% (as of the time of last revision of this documentation: -% 2011/12/25 v2.5d). -% +% \begin{macro}{\AddToHook{begindocument/end}} % \begin{macrocode} -\AtBeginDocument{% - \if@filesw% - \immediate\write\@auxout{\string\gdef\string\pagesLTS@loaded{p@gesLTSnotlo@ded}}% - \fi% - \@ifpackageloaded{endfloat}% - {\@ifpackagelater{endfloat}{1992/03/31}% April 1992 v2.0 - {\@ifpackagelater{endfloat}{2011/12/24}{% 2011/12/25 v2.5d - \relax}% +\AddToHook{begindocument/end}{% % \end{macrocode} % -% If it is compatible, but not the recent version, a warning is given: +% Checking, whether \xpackage{lastpage} and \xpackage{pageslts} have \emph{both} been loaded. % % \begin{macrocode} - {\PackageWarningNoLine{pageslts}{Old endfloat package detected:\MessageBreak% - There is a newer version of the endfloat package available.\MessageBreak% - Please consider updating your version.\MessageBreak% - The pageslts package might be incompatible with\MessageBreak% - your current endfloat package.\MessageBreak% - }% - }% + \IfPackageLoadedT{lastpage}{% + \PackageInfo{pageslts}{Packages lastpage and pageslts used}{% + Are you sure that you want to load both packages?\MessageBreak% + Typ <return> to continue or X <return> to quit.}% + }% % \end{macrocode} % -% If it is so very old, that it is not compatible, -% an Error message is given: +% It is checked whether the \xpackage{hyperref} package, if loaded, is recent enough: % % \begin{macrocode} - }{\PackageError{pageslts}{Incompatible, very old endfloat package detected.}% - {The very old version 2.0 (and earlier) of the\MessageBreak% - endfloat package actually redefined the \string\enddocument ,\MessageBreak% - and so interfered drastically with the LaTeX2e commands\MessageBreak% - which make use of \string\AtEndDocument .\MessageBreak% - Newer versions of the endfloat package exists\MessageBreak% - (at least: v2.5d as of 2011/12/25)\MessageBreak% - in modern documentation form,\MessageBreak% - which should be available from CTAN.\MessageBreak% - Please update your endfloat package\MessageBreak% - for use with the pageslts package.\MessageBreak % - }% - }% - }{}% -% \end{macrocode} -% -% \pagebreak -% -% It is checked whether the old \xpackage{lastpage} package has been loaded.\\ -% (If it has been loaded indeed, the |\lastpage@putlabel| is -% \textquotedblleft killed\textquotedblright , -% see subsection~\ref{ssec:lastpage}.) -% -% \begin{macrocode} - \@ifpackageloaded{lastpage}% - {\@ifpackagelater{lastpage}{2010/07/28}% 2010/07/29 v1.2a - {\@ifpackagelater{lastpage}{2013/01/27}% 2013/01/28 v1.2l - {\PackageWarning{pageslts}{lastpage package detected.\MessageBreak% - With pageslts package in use, lastpage has no function.\MessageBreak% - Just remove the lastpage package from your document.\MessageBreak% - }% - }{% - \PackageWarning{pageslts}{Old lastpage package detected.\MessageBreak% - With pageslts package in use, lastpage has no function.\MessageBreak% - Just remove the lastpage package from your document.\MessageBreak% - At least update it!\MessageBreak% - }% - }% - }{% - \PackageWarning{pageslts}{Incompatible package lastpage detected:\MessageBreak% - Package pageslts was loaded, but also an old\MessageBreak% - version of the lastpage package.\MessageBreak% - pageslts has all functionality of the lastpage\MessageBreak% - package (and more), so just remove the lastpage\MessageBreak% - package from your document.\MessageBreak% - (At least update it!)\MessageBreak% - pageslts will now ''kill'' the lastpage@putlabel\MessageBreak% - command of the lastpage package.\MessageBreak% - }% - \gdef\lastpage@putlabel{\relax}% - }% - }{}% + \IfPackageLoadedTF{hyperref}{% + \IfPackageAtLeastTF{hyperref}{2024-10-30}{}{% + \PackageError{pageslts}{hyperref package version too old}{% + required version: 2024-10-30 v7.01k or newer, found version:\MessageBreak% + \csname ver@hyperref.sty\endcsname.}}% + }{\PackageNoteNoLine{pageslts}{Package hyperref not loaded.\MessageBreak% + pageslts would support hyperref.\MessageBreak% + The page references will NOT be hyperlinked}% + }% % \end{macrocode} % % Further it is checked whether the \xpackage{alphalph} package has been loaded. -% If that is the case, the commands are defined accordingly.\\ -% -% \begin{macrocode} - \ltx@ifpackageloaded{alphalph}% - {\newalphalph{\AlphMult}[mult]{\@Alph}{26}% - \newalphalph{\alphMult}[mult]{\@alph}{26}% - \newalphalph{\fnsymbolmult}[mult]{\@fnsymbol}{5}% - }{}% -% \end{macrocode} -% -% \pagebreak -% -% Further it is checked whether the \xpackage{hyperref} package has been loaded: +% If that is the case, the commands are defined accordingly. % % \begin{macrocode} - \ltx@ifpackageloaded{hyperref}{% + \IfPackageLoadedT{alphalph}{% + \newalphalph{\AlphMult}[mult]{\@Alph}{26}% + \newalphalph{\alphMult}[mult]{\@alph}{26}% + \newalphalph{\fnsymbolmult}[mult]{\@fnsymbol}{5}% + }% % \end{macrocode} % -% and whether the \xpackage{pdfpages} package is loaded: +% It is checked whether writing to files is allowed. +% The \xpackage{pageslts} package cannot be used without that! +% Some packages (e.\,g. \xpackage{tikz} and \xpackage{selectp}) sometimes prevent +% the output to the \xfile{aux} file. In that case a warning or an error message +% is issued. This is no problem as long as there is/was another compilation run +% where the labels can/could be processed via the \xfile{aux} file.\\ % % \begin{macrocode} - \@ifpackageloaded{pdfpages}% - {\PackageWarningNoLine{pageslts}{Package pdfpages detected.\MessageBreak% - Using hyperref with pdfpages can cause problems. See\MessageBreak% - https://www.ctan.org/pkg/pax\MessageBreak% - for the Pdf Annotations eXtractor, pax% - }% - }{% \relax + \if@filesw% + \else% + \IfPackageLoadedTF{tikz}{% + \PackageWarning{pageslts}% + {It was not allowed to write to an\MessageBreak% + .aux file. This package does not work without access\MessageBreak% + to an .aux file.\MessageBreak% + It is OK if the .aux file was already updated\MessageBreak% + by a previouse compiler run\MessageBreak% + and would not have changed anyway.\MessageBreak% + }% + }{\PackageError{pageslts}{No writing to auxiliary file allowed}% + {It was not allowed to write to an .aux file.\MessageBreak% + This package does not work without access to an .aux file.\MessageBreak% + Press Ctrl+Z to exit.\MessageBreak% + But it is OK if the .aux file was already updated\MessageBreak% + by previouse compiler runs\MessageBreak% + and would not have changed anyway.\MessageBreak% + (In that case just press Enter or Return\MessageBreak% + to continue the compilation.)\MessageBreak% }% -% \end{macrocode} -% -% The \xpackage{undolabl} package has been updated and now uses |\undonewlabel| with only -% one argument. -% -% \begin{macrocode} - \@ifpackageloaded{undolabl}% - {\@ifpackagelater{undolabl}{2010/07/14}% 2010/07/15 v1.0d - {\@ifpackagelater{undolabl}{2015/03/29}% 2015/03/29 v1.0l - {% recent version as of the time of last revision of this package: OK - }{% old, but not obsolete version - \PackageWarningNoLine{pageslts}{Old version of undolabl package used.\MessageBreak% - See https://www.ctan.org/pkg/undolabl\MessageBreak% - for a new version.\MessageBreak% - }% - } - }{\PackageError{pageslts}{Incompatible, obsolete version of undolabl package used.}{% - See https://www.ctan.org/pkg/undolabl\MessageBreak% - for a new version.\MessageBreak% - Type X <return> to quit.\MessageBreak% - }% - } - }{\PackageError{pageslts}{Package undolabl missing}{% - Package undolabl not found.\MessageBreak% - The pageslts package needs the undolabl package.\MessageBreak% - See https://www.ctan.org/pkg/undolabl\MessageBreak% - Type X <return> to quit.\MessageBreak% - }% - } -% \end{macrocode} -% -% \pagebreak -% -% Additionally a version check of the available \xpackage{hyperref} -% package is performed and if need be a warning is issued: -% -% \begin{macrocode} - \@ifpackagelater{hyperref}{2012/11/05}{% 2012/11/06 v6.83m - \relax}{% - \PackageWarningNoLine{pageslts}{Old hyperref package detected:\MessageBreak% - There is a newer version of the\MessageBreak% - hyperref package available:\MessageBreak% - https://www.ctan.org/pkg/hyperref\MessageBreak% - Please consider updating your version.\MessageBreak% - }% }% - %% pageslts supports the use of the package hyperref by - %% Heiko Oberdiek (hyperref version 2012/11/06 v6.83m). - %% pageslts may work with earlier versions of this packages, - %% but this was not tested. - }{% + \fi% + } + % \end{macrocode} +% \end{macro} % -% If no \xpackage{hyperref} package in use is detected, a warning is issued, too: +% If a version of the \xpackage{undolabl} package before 2010/07/15~v1.0d +% has been used~-- your fault, we do not check for this anymore. % -% \begin{macrocode} - \PackageWarning{pageslts}{Package hyperref NOT detected.\MessageBreak% - pageslts would support hyperref. The page references\MessageBreak% - will NOT be hyperlinked!\MessageBreak }% - }% -% \end{macrocode} -% -% If the \xpackage{showkeys} package has been loaded in \texttt{draft} mode, -% warnings about missing label boxes will be issued (see p.~\pageref{pagesLTSputlabel}), -% but because it cannot be checked for \xpackage{showkeys} after |\AtBeginDocument|, -% the check must be done here and the result remembered. +% We do check whether \xpackage{showkeys} has been loaded (\emph{before} \xpackage{pageslts}!) +% in a mode to show the labels: % % \begin{macrocode} - \ltx@ifpackageloaded{showkeys}{% - \@ifpackagewith{showkeys}{final}{}{\gdef\pagesLTS@SK{1}}}{% else \relax +\def\pagesLTS@skld{0} +\IfPackageLoadedT{showkeys}{% + \IfPackageLoadedWithOptionsF{showkeys}{final}{% + \def\pagesLTS@skld{1}% }% - } + }% % \end{macrocode} -% \end{macro} % -% \begin{macro}{\AtEndDocument} -% \indent |\AtEndDocument| the check is repeated. If \xpackage{showkeys} was -% loaded after the check performed before, an error message is issued. +% \begin{macro}{\AddToHook{enddocument/afterlastpage}} +% |\AddToHook{enddocument/afterlastpage}| it is checked +% whether the \xpackage{showkeys} package was loaded after the check performed before, +% in which case an error message is issued. % % \begin{macrocode} -\AtEndDocument{% - \ltx@ifpackageloaded{showkeys}{% - \ifx\pagesLTS@SK\pagesLTS@one\relax% - \else% - \providecommand*\pagesLTS@sklf[1]{}% - \ifx\showkeyslabelformat\pagesLTS@sklf\relax% +\AddToHook{enddocument/afterlastpage}{% + \IfPackageLoadedT{showkeys}{% + \IfPackageLoadedWithOptionsF{showkeys}{final}{% + \ifx\pagesLTS@skld\pagesLTS@one\relax% \else% \PackageError{pageslts}{Package showkeys loaded after pageslts}{% The showkeys package with option "final" has been loaded\MessageBreak% after the pageslts package.\MessageBreak% Please first load showkeys and then pageslts}% \fi% - \fi% - }{% else no showcase, \relax - }% + }% + }% % \end{macrocode} % % We also give the error message about the missing (i.\,e.~not found) -% page numbering scheme, which could not be given in |\EveryShipout|. +% page numbering scheme, which could not be given in hook |shipout/foreground|. % % \begin{macrocode} \ifx\pncmissing\pagesLTS@one\relax% - \PackageError{pageslts}{pagenumbering scheme missing}{\pagesLTS@messageNPN }% + \PackageError{pageslts}{pagenumbering scheme missing}{\pagesLTS@messageNPN}% \fi% % \end{macrocode} % -% Then we put in a |\message| to show, in what order things (which were called) -% are done (see subsection~\ref{ssec:aed}). +% Then we put in an |info| to show, in what order things (which were called) are done. % % \begin{macrocode} - \message{^^J% - AED: pageslts setting LastPage ^^J}% + \PackageInfo{pageslts}{enddocument/afterlastpage (AED): pageslts setting LastPage}% % \end{macrocode} % -% After this we issue a |\clearpage| to put out all floats, -% which are still floating, remember the page number (if |fnsymbol|), +% After this we remember the page number (if |fnsymbol|), % and after that we place the \texttt{LastPage} label. % % \begin{macrocode} - \clearpage% \ifx\pagesLTS@pnc\pagesLTS@fns% \def\pagesLTS@tmpA{\arabic{pagesLTS.fnsymbol.local}}% \ifnum \pagesLTS@eso=\pagesLTS@tmpA% @@ -4335,86 +3584,49 @@ a package with output \linebreak % % \begin{macrocode} \let\pagesLTS@tmpA\undefined% - } - -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\AfterLastShipout} -% \indent |\AfterLastShipout| is a command from \textsc{Heiko Oberdiek's} -% \texttt{atveryend} package (see above). -% -% \begin{macrocode} -\AfterLastShipout{% -% \end{macrocode} -% -% If writing to the \xfile{.aux} file is allowed: -% -% \begin{macrocode} - \if@filesw% % \end{macrocode} % % The number of pages with the \xpackage{fnsymbol} page numbering scheme, % |\pagesLTS@esov|, is saved via the \xfile{.aux} file (if it is not zero): % % \begin{macrocode} - \ifx\pagesLTS@esov\pagesLTS@zero% + \if@filesw% + \ifx\pagesLTS@esov\pagesLTS@zero\relax% \else% - \immediate\write\@auxout{\string - \pagesLTS@ifcounter{pagesLTS.fnsymbol.local}}% - \immediate\write\@auxout{\string - \setcounter{pagesLTS.fnsymbol.local}{\pagesLTS@esov}}% + \immediate\write\@auxout{\string\pagesLTS@providecounter{pagesLTS.fnsymbol.local}}% + \immediate\write\@auxout{\string\setcounter{pagesLTS.fnsymbol.local}{\pagesLTS@esov}}% \fi% -% \end{macrocode} -% -% If the \xpackage{hyperref} package is in use, and the page numbering scheme -% of the last page is \xpackage{fnsymbol}, everything is quite more complicated. -% Therefore |\lastpageref| is switched from simple |\lastpagereftxt| -% to the more difficult |\lastpagerefend|. -% -% \begin{macrocode} - \ltx@ifpackageloaded{hyperref}{% - \ifx\pagesLTS@pnc\pagesLTS@fns% - \immediate\write\@auxout{\string - \gdef\string\lastpageref{\string\lastpagerefend}}% - \fi% - }{}% \fi% % \end{macrocode} % -% At the call of a |\pagenumbering{...}| command, everything -% for a split page numbering scheme is organized. For the last -% page numbering scheme, there is no |\pagenumbering{...}| command +% At the call of a |\pagenumbering{...}| command, everything for a split page numbering scheme +% is organized. For the last page numbering scheme, there is no |\pagenumbering{...}| command % at the end, so we need to handle this here: % % \begin{macrocode} - \pagesLTS@ifcounter{pagesLTS.\pagesLTS@pnc.\arabic{pagesLTS.pnc.\pagesLTS@pnc}.local.count}% + \pagesLTS@providecounter{pagesLTS.\pagesLTS@pnc.\arabic{pagesLTS.pnc.\pagesLTS@pnc}.local.count}% \setcounter{pagesLTS.\pagesLTS@pnc.\arabic{pagesLTS.pnc.\pagesLTS@pnc}.local.count}{% \value{pagesLTS.current.local.\pagesLTS@pnc}}% % \end{macrocode} % -% And we are one page after the last one (|\AfterLastShipout|!), -% so we go back one page. (We again borrow the \texttt{pagesLTS.pnc.0} counter for the computations -% instead of defining yet another one.) +% And we are one page after the last one (hook |enddocument/afterlastpage|!), so we go back one page. % % \begin{macrocode} - \addtocounter{pagesLTS.\pagesLTS@pnc.\arabic{pagesLTS.pnc.\pagesLTS@pnc}.local.count}{-1} + \addtocounter{pagesLTS.\pagesLTS@pnc.\arabic{pagesLTS.pnc.\pagesLTS@pnc}.local.count}{-1}% \ifnum \value{pagesLTS.pnc.\pagesLTS@pnc}>1% - \mathchardef\pagesLTS@tmpD=\arabic{pagesLTS.pnc.0}% - \setcounter{pagesLTS.pnc.0}{\value{pagesLTS.pnc.\pagesLTS@pnc}}% - \@tempcnta=\value{pagesLTS.pnc.0}\relax% + \setcounter{pagesLTS.tmpcounter}{\value{pagesLTS.pnc.\pagesLTS@pnc}}% + \@tempcnta=\value{pagesLTS.tmpcounter}\relax% \loop% \ifnum\@tempcnta>1\relax% - \addtocounter{pagesLTS.pnc.0}{-1}% + \addtocounter{pagesLTS.tmpcounter}{-1}% \addtocounter{pagesLTS.\pagesLTS@pnc.\arabic{pagesLTS.pnc.\pagesLTS@pnc}.local.count}{% - -\value{pagesLTS.\pagesLTS@pnc.\arabic{pagesLTS.pnc.0}.local.count}}% - \@tempcnta=\value{pagesLTS.pnc.0}\relax% + -\value{pagesLTS.\pagesLTS@pnc.\arabic{pagesLTS.tmpcounter}.local.count}}% + \@tempcnta=\value{pagesLTS.tmpcounter}\relax% \repeat% - \setcounter{pagesLTS.pnc.0}{\pagesLTS@tmpD}% \fi% \if@filesw% \immediate\write\@auxout{\string - \pagesLTS@ifcounter{pagesLTS.\pagesLTS@pnc.\arabic{pagesLTS.pnc.\pagesLTS@pnc}.local.cnt}}% + \pagesLTS@providecounter{pagesLTS.\pagesLTS@pnc.\arabic{pagesLTS.pnc.\pagesLTS@pnc}.local.cnt}}% \edef\pagesLTS@tmpA{\arabic{pagesLTS.\pagesLTS@pnc.\arabic{pagesLTS.pnc.\pagesLTS@pnc}.local.count}}% \immediate\write\@auxout{\string \setcounter{pagesLTS.\pagesLTS@pnc.\arabic{pagesLTS.pnc.\pagesLTS@pnc}.local.cnt}{\pagesLTS@tmpA}}% @@ -4422,90 +3634,46 @@ a package with output \linebreak \fi% % \end{macrocode} % -% We need to save (via the \xfile{.aux} file) the page name |\thepage| and -% the page number |\arabic{CurrentPage}| of the last page, +% We need to save (via the \xfile{.aux} file) the page name |\thepage| +% and the page number |\arabic{CurrentPage}| of the last page, % in case the last page has \xpackage{fnsymbol} page numbering scheme. % % \begin{macrocode} \addtocounter{page}{-1}% - \edef\pagesLTS@tmpA{\thepage}% + \def\pagesLTS@tmpA{\thepage}% \if@filesw% - \immediate\write\@auxout{\string - \gdef\string\pagesLTS.lastpage{\pagesLTS@tmpA}}% + \protected@iwrite\@auxout{}{\string\gdef\string\pagesLTSlastpage{\pagesLTS@tmpA}}% + \pagesLTS@makeHy|% + \protected@iwrite\@auxout{}{\string\gdef\string\pagesLTSlastpageHy{\pagesLTS@Hy}}% \fi% \addtocounter{page}{+1}% \addtocounter{CurrentPage}{-1}% \edef\pagesLTS@tmpB{\arabic{CurrentPage}}% \if@filesw% - \immediate\write\@auxout{\string - \setcounter{pagesLTS.pagenr}{\pagesLTS@tmpB}}% + \immediate\write\@auxout{\string\setcounter{pagesLTS.pagenr}{\pagesLTS@tmpB}}% \fi% \addtocounter{CurrentPage}{+1}% % \end{macrocode} % -% The \texttt{VeryLastPage} label is set here, and when -% |\lastpageref{VeryLastPage}| instead of |\lastpageref{LastPage}| is used, -% it should really point to the last page. -% |LastPage| and |VeryLastPage| should be identical, -% unless a package was active with output |\AtEndDocument| -% \textit{after} the \xpackage{pageslts} package. +% The \texttt{VeryLastPage} label is set here. Before the introduction of the hook mechanism in the kernel, +% |\lastpageref{VeryLastPage}| could point to a later page then |\lastpageref{LastPage}|. +% |LastPage| and |VeryLastPage| should now be identical, but for backward compatibility we keep both. % % \begin{macrocode} - \message{^^J% - AED: pageslts setting VeryLastPage via AfterLastShipout ^^J}% + \PackageInfo{pageslts}{enddocument/afterlastpage (AED): pageslts setting VeryLastPage}% \pagesLTS@putlabel{VeryLastPage}{\thepage}{1}% % \end{macrocode} % -% The \texttt{LastPages} label is set here, and -% |\lastpageref{LastPages}| gives the total number of pages -% and points to the (very) last page. +% The \texttt{LastPages} label is set here, and |\lastpageref{LastPages}| gives +% the total number of pages and points to the last page. % % \begin{macrocode} - \message{^^J% - AED: pageslts setting LastPages via AfterLastShipout ^^J}% + \PackageInfo{pageslts}{enddocument/afterlastpage (AED): pageslts setting LastPages}% \pagesLTS@putlabels% - \typeout{^^J}% \ifodd\pagesLTS@tmpB% - \@PackageInfoNoLine{pageslts}{Total number of pages is odd}% + \PackageNoteNoLine{pageslts}{Total number of pages is odd}% \else% - \@PackageInfoNoLine{pageslts}{Total number of pages is even}% - \fi% - \typeout{^^J}% -% \end{macrocode} -% -% We do not need the temporary definitions any more. -% -% \begin{macrocode} - \let\pagesLTS@tmpA\undefined% - \let\pagesLTS@tmpB\undefined% - } - -% \end{macrocode} -% \end{macro} -% -% \pagebreak -% -% \begin{macro}{\AtEndAfterFileList} -% \indent |\AtEndAfterFileList{...}| is even later: -% \begin{quote} -% \textquotedblleft After the .aux file closing and reading \LaTeX{} prints the -% file list if requested by |\listfiles|. Then this hook is executed.\textquotedblright -% \end{quote} -% (\xpackage{atveryend} package of \textsc{Heiko Oberdiek}, v1.7 as of 2011/04/23, -% newer version available.) Here it is used for a rerun hint.\\ -% For example if the page numbering scheme of the last page of the -% \textsf{pageslts-example.tex} file is changed to |fnsymbol| and two runs -% of \pdfLaTeX{} are done, \pdfLaTeX{} will be happy and will not complain -% about changed labels. But indeed, a \textit{third} run is necessary -% and indicated by the warning message below. -% -% \begin{macrocode} -\AtEndAfterFileList{% - \ifx\pagesLTS@rerun\pagesLTS@one% - \PackageWarningNoLine{pageslts}{% - Label(s) may have changed.\MessageBreak% - Rerun to get cross-references right% - }% + \PackageNoteNoLine{pageslts}{Total number of pages is even}% \fi% } @@ -4513,7 +3681,7 @@ a package with output \linebreak % \end{macro} % % \begin{macro}{\frontmatter} -% \indent |\frontmatter| often contains |\pagenumbering|, but for some unknown reason +% |\frontmatter| often contains |\pagenumbering|, but for some unknown reason % there are problems when another |\pagenumbering| with different page numbering scheme % has been used before on the same page. (This would not make any sense anyway, % because one page can only have one page numbering scheme.) This problem does not @@ -4521,61 +3689,26 @@ a package with output \linebreak % Thus we need to check whether |\frontmatter| has been defined, % whether it changes the page numbering scheme, and whether the page numbering scheme % before |\frontmatter| was initiated at the same page. -% \end{macro} -% -% We need an |\ifundefined|, which neither requires \eTeX{} nor -% defines the command, which is to be tested, to |\relax| (in which case -% it would be no longer undefined for further tests). For this we use -% code from \textsc{Markus Kohm} similar to his |\scr@ifundefinedorrelax| from % -% \xpackage{scrbase.sty} of the KOMA script bundle, -% but without the necessarity to use \eTeX : +% With the hook mechanism it does not matter whether the command to be patched is defined. % % \begin{macrocode} -\newcommand{\pagesLTS@ifundefinedorrelax}[1]{% - % Modified Markus Kohm code for use without e-TeX - \begingroup\expandafter\expandafter\expandafter\endgroup - \expandafter\ifx\csname #1\endcsname\relax% - \expandafter\ifx\csname #1\endcsname\relax% - \expandafter\expandafter\expandafter\@firstoftwo - \else% - \expandafter\expandafter\expandafter\@secondoftwo - \fi% - \else% - \expandafter\@firstoftwo - \fi% +\AddToHook{cmd/frontmatter/before}{% + \xdef\pagesLTS@FMBpncn{\pagesLTS@pnc}% + \xdef\pagesLTS@FMBpncp{\arabic{pagesLTS.current.local.\pagesLTS@pnc}}% } -\pagesLTS@ifundefinedorrelax{frontmatter}{% \relax -}{% else - \ltx@GlobalPrependToMacro{\frontmatter}{\pagesLTS@prefrontmatter}% - \ltx@GlobalAppendToMacro{\frontmatter}{\pagesLTS@postfrontmatter}% - } - % \end{macrocode} % -% \begin{macro}{\pagesLTS@prefrontmatter} -% -% At the beginning of the real (i.e. unchanged) |\frontmatter| (FMB), we remember the +% At the beginning of the |\frontmatter| (FMB), we remember the % current (c) page numbering (pn) scheme: its name (n) and page number (p). % |\pagesLTS@FMBpncp| would be |1| if the according |\pagenumbering| command % was used on the same page at the |\frontmatter|. % -% \begin{macrocode} -\newcommand{\pagesLTS@prefrontmatter}{% - \xdef\pagesLTS@FMBpncn{\pagesLTS@pnc}% - \xdef\pagesLTS@FMBpncp{\arabic{pagesLTS.current.local.\pagesLTS@pnc}}% - } - -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\pagesLTS@postfrontmatter} -% -% The named checks are performed and in case of the named problem an error message -% is given. Any idea how to automatically solve this issue? +% At the end of the |\frontmatter| the named checks are performed +% and in case of the named problem an error message is given. % % \begin{macrocode} -\newcommand{\pagesLTS@postfrontmatter}{% +\AddToHook{cmd/frontmatter/after}{% \xdef\pagesLTS@FMEpncn{\pagesLTS@pnc}% \ifx\pagesLTS@FMBpncn\pagesLTS@FMEpncn% \else% @@ -4583,205 +3716,140 @@ a package with output \linebreak \else% \ifx\pagesLTS@FMBpncp\pagesLTS@one% \PackageError{pageslts}{\string\pagenumbering\space before \string\frontmatter}{% - Do not use \string\pagenumbering{\pagesLTS@FMBpncn} before \string\frontmatter \MessageBreak% + Do not use \string\pagenumbering{\pagesLTS@FMBpncn} before \string\frontmatter\MessageBreak% on the same page!\MessageBreak% - \string\frontmatter\space (re)defines the page numbering scheme to \pagesLTS@FMEpncn , \MessageBreak% + \string\frontmatter\space (re)defines the page numbering scheme to \pagesLTS@FMEpncn ,\MessageBreak% thus earlier use of \string\pagenumbering{\pagesLTS@FMBpncn} on the same page is useless anyway.}% \fi% \fi% \fi% -} + } % \end{macrocode} % \end{macro} % +% \begin{macro}{\AddToHook{enddocument/info}} +% The hook |enddocument/info| is even later: +% \begin{quote} +% \textquotedblleft This hook is meant to receive code that write final information messages +% to the terminal. It follows immediately after the previous hook\textquotedblright +% \end{quote} +% (Frank Mittelbach (2024-06-26): \LaTeX's hook management, lthooks-code.pdf, p.~27) +% |enddocument/afteraux|. Here it is used for a rerun hint.\\ +% For example if the page numbering scheme of the last page of the +% \textsf{pageslts-example.tex} file is changed to |fnsymbol| and two runs +% of \pdfLaTeX{} are done, \pdfLaTeX{} will be happy and will not complain +% about changed labels. But indeed, a \emph{third} run is necessary +% and indicated by the warning message below. +% +% \begin{macrocode} +\AddToHook{enddocument/info}{% + \ifx\pagesLTS@rerun\pagesLTS@one% + \PackageWarningNoLine{pageslts}{Label(s) may have changed.\MessageBreak% + Rerun to get cross-references right}% + \fi% + } + +% \end{macrocode} +% \end{macro} % \begin{macrocode} %</package> % \end{macrocode} % % \newpage +% \setlength{\parindent}{\the\ltsindent} % % \section{Installation} % % \subsection{Downloads\label{ss:Downloads}} % -% Everything is available at \url{https://www.ctan.org}, +% Everything is available at \url{https://CTAN.org}, % but may need additional packages themselves.\\ % % \DescribeMacro{pageslts.dtx} -% For unpacking the |thumbs.dtx| file and constructing the documentation it is required: +% For unpacking the |pageslts.dtx| file and constructing the documentation it is required: % \begin{description} -% \item[-] \TeX Format \LaTeXe{}: \url{https://www.CTAN.org} +% \item[-] \TeX Format \LaTeXe{} 2024-06-01: \url{https://CTAN.org} % -% \item[-] document class \xclass{ltxdoc}, 2015-03-26, 2.0w, \url{https://www.ctan.org/pkg/ltxdoc} +% \item[-] document class \xclass{ltxdoc}, 2024/02/08, v2.1j, \url{https://ctan.org/pkg/ltxdoc} % -% \item[-] package \xpackage{holtxdoc}, 2012/03/21, v0.24, \url{https://www.ctan.org/pkg/holtxdoc} +% \item[-] package \xpackage{holtxdoc}, 2019/12/09, v0.30, \url{https://ctan.org/pkg/holtxdoc} % -% \item[-] package \xpackage{hypdoc}, 2011/08/19, v1.11, \url{https://www.ctan.org/pkg/hypdoc} +% \item[-] package \xpackage{hypdoc}, 2023-10-26, v1.19, \url{https://ctan.org/pkg/hypdoc} % -% \item[-] package \xpackage{geometry}, 2010/09/12, v5.6, \url{https://www.ctan.org/pkg/geometry} +% \item[-] package \xpackage{geometry}, 2020/01/02, v5.9, \url{https://ctan.org/pkg/geometry} % -% \item[-] package \xpackage{ulem}, 2012/05/18, no version number given, \url{https://www.ctan.org/pkg/ulem} +% \item[-] package \xpackage{ulem}, 2019-11-18, no version number given, \url{https://ctan.org/pkg/ulem} % \end{description} % % \DescribeMacro{pageslts.sty} -% The |pageslts.sty| for \LaTeXe{} (i.\,e. all documents using -% the \xpackage{pageslts} package) requires: +% The |pageslts.sty| for \LaTeXe{} (i.\,e.\ all documents using the \xpackage{pageslts} package) requires: % \begin{description} -% \item[-] \TeX{} Format \LaTeXe{}, \url{https://www.CTAN.org} -% -% \item[-] package \xpackage{atveryend}, 2011/06/30, v1.8, \url{https://www.ctan.org/pkg/atveryend} -% -% \item[-] package \xpackage{everyshi}, 2001/05/15, v3.00, \url{https://www.ctan.org/pkg/everyshi} +% \item[-] \TeX{} Format \LaTeXe{} 2024-06-01, \url{https://CTAN.org} % -% \item[-] package \xpackage{kvoptions}, 2011/06/30, v3.11, \url{https://www.ctan.org/pkg/kvoptions} +% \item[-] package \xpackage{undolabl}, 2023-02-14, v1.0m, \url{https://ctan.org/pkg/undolabl} % -% \item[-] package \xpackage{letltxmacro}, 2010/09/02, v1.4, \url{https://www.ctan.org/pkg/letltxmacro} +% \item[-] package \xpackage{kvoptions}, 2022-06-15, v3.15, \url{https://ctan.org/pkg/kvoptions} % -% \item[-] package \xpackage{ltxcmds}, 2011/11/09, v1.22, \url{https://www.ctan.org/pkg/ltxcmds} -% -% \item[-] package \xpackage{rerunfilecheck}, 2011/04/15, v1.7, \url{https://www.ctan.org/pkg/rerunfilecheck} -% -% \item[-] package \xpackage{undolabl}, 2015/03/29, v1.0l, \url{https://www.ctan.org/pkg/undolabl}\\ +% \item[-] if any of the options |alphMult|, |AlphMulti|, or |fnsymbolmult| is used: +% package \xpackage{alphalph}, 2019/12/09, v2.6, \url{https://ctan.org/pkg/alphalph} % \end{description} % % \DescribeMacro{pageslts-example.tex} -% The |pageslts-example.tex| requires the same files as all -% documents using the \xpackage{pageslts} package, and additionally: +% The |pageslts-example.tex| requires the same files as all documents using the +% \xpackage{pageslts} package, and additionally: % \begin{description} -% \item[-] class \textsf{article}, 2014/09/29, v1.4h, from \textsf{classes.dtx}: \url{https://www.ctan.org/pkg/classes} +% \item[-] class \textsf{article}, 2024/02/08, v1.4n, from \textsf{classes.dtx}: \url{https://ctan.org/pkg/classes} % -% \item[-] package \xpackage{alphalph}, 2011/05/13, v2.4, \url{https://www.ctan.org/pkg/alphalph} +% \item[-] package \xpackage{alphalph}, 2019/12/09, v2.6, \url{https://ctan.org/pkg/alphalph} % -% \item[-] package \xpackage{lipsum}, 2014/07/27, v1.3, \url{https://www.ctan.org/pkg/lipsum} +% \item[-] package \xpackage{lipsum}, 2021-09-20, v2.7, \url{https://ctan.org/pkg/lipsum} % -% \item[-] package \xpackage{showkeys}, 2014/10/28, v3.17, \url{https://www.ctan.org/pkg/showkeys} +% \item[-] package \xpackage{showkeys}, 2024/05/23, v3.21, \url{https://ctan.org/pkg/showkeys} % -% \item[-] package \xpackage{hyperref}, 2012/11/06, v6.83m, \url{https://www.ctan.org/pkg/hyperref} +% \item[-] package \xpackage{hyperref}, 2024-10-30, v7.01k, \url{https://ctan.org/pkg/hyperref} % -% \item[-] package \xpackage{pageslts}, 2015/12/21, v1.2f, \url{https://www.ctan.org/pkg/pageslts}\\ +% \item[-] package \xpackage{pageslts}, 2024-11-20, v2.0a, \url{https://ctan.org/pkg/pageslts}\\ % (Well, it is the example file for this package, and because you are reading the % documentation for the \xpackage{pageslts} package, it can be assumed that you already % have some version of it~-- is it the current one?) % \end{description} % -% \pagebreak -% -% \DescribeMacro{papermas} -% The \xpackage{papermas} package is not required, but requires itself the -% the \xpackage{pageslts} package and can be considered as kind of add-on: -% \begin{description} -% \item[-] package \xpackage{papermas}, 2011/08/22, v1.0h, \url{https://www.ctan.org/pkg/papermas} -% \end{description} -% -% \DescribeMacro{endfloat} -% The \xpackage{endfloat} package is not required, but because -% the \xpackage{pageslts} package is incompatibel with very old versions -% of the \xpackage{endfloat} package (see subsection~\ref{sec:endfloat}), -% here the recent one is listed: -% \begin{description} -% \item[-] package \xpackage{endfloat}, 2011/12/25, v2.5d, \url{https://www.ctan.org/pkg/endfloat} -% \end{description} -% -% \DescribeMacro{prelim2e} -% The \xpackage{prelim2e} package is not required either, but because -% |Prelim@EveryShipout| code was taken from that package, it is listed, too: -% \begin{description} -% \item[-] package \xpackage{prelim2e}, 2009/05/29, v1.3, \url{https://www.ctan.org/pkg/prelim2e} -% \end{description} -% -% \DescribeMacro{fancyhdr} -% \DescribeMacro{nccfancyhdr} -% Neither \xpackage{fancyhdr} nor \xpackage{nccfancyhdr} package is required -% (the \xpackage{lastpage} package used its predecessor \xpackage{fancyheadings}), -% but because they were mentioned, also they are listed here: -% \begin{description} -% \item[-] package \xpackage{fancyhdr}, \url{https://www.ctan.org/pkg/fancyhdr} -% -% \item[-] package \xpackage{nccfancyhdr}, \url{https://www.ctan.org/pkg/nccfancyhdr} -% \end{description} -% -% \DescribeMacro{lastpage} -% \DescribeMacro{totpages} -% \DescribeMacro{totcount} -% \DescribeMacro{nofm} -% \DescribeMacro{count1to} -% \DescribeMacro{zref} -% As possible alternatives in section \ref{sec:Alternatives} there are listed -% \begin{description} -% \item[-] package \xpackage{lastpage}, 2015/03/29, v1.2m, \url{https://www.ctan.org/pkg/lastpage} -% -% \item[-] package \xpackage{totpages}, 2005/09/19, v2.00, \url{https://www.ctan.org/pkg/totpages} -% -% \item[-] package \xpackage{totcount}, 2011/01/25, v1.2, \url{https://www.ctan.org/pkg/totcount} -% -% \item[-] package \xpackage{nofm}, 1991/02/25, without version number, -% \url{http://mirror.ctan.org/obsolete/macros/latex209/contrib/misc/nofm.sty}, -% does not work with e.\,g. \xpackage{hyperref} -% -% \item[-] package \xpackage{count1to}, 2009/05/24, v2.1, \url{https://www.ctan.org/pkg/count1to} -% -% \item[-] package \xpackage{zref}, 2012/04/04, v2.24, \url{https://www.ctan.org/pkg/zref} -% \end{description} -% -% \DescribeMacro{Oberdiek} -% \DescribeMacro{alphalph} -% \DescribeMacro{atveryend} -% \DescribeMacro{holtxdoc} -% \DescribeMacro{letltxmacro} -% \DescribeMacro{ltxcmds} -% \DescribeMacro{kvoptions} -% \DescribeMacro{rerunfilecheck} -% \DescribeMacro{zref} -% All packages of \textsc{Heiko Oberdiek's} bundle `oberdiek' -% (especially \xpackage{alphalph}, \xpackage{atveryend}, \xpackage{holtxdoc}, \xpackage{letltxmacro}, -% \xpackage{ltxcmds}, \xpackage{kvoptions}, \xpackage{rerunfilecheck}, and \xpackage{zref}) -% are also available in a TDS compliant ZIP archive:\\ -% \url{http://mirrors.ctan.org/install/macros/latex/contrib/oberdiek.tds.zip}.\\ -% It is probably best to download and use this, because the packages in there -% are quite probably both recent and compatible among themselves. -% -% \DescribeMacro{hyperref} -% \noindent \xpackage{hyperref} is not included in that bundle and needs to be -% downloaded separately,\\ -% \url{http://mirrors.ctan.org/install/macros/latex/contrib/hyperref.tds.zip}. -% -% \DescribeMacro{M\"{u}nch} -% A hyperlinked list of my (other) packages can be found at -% \url{https://www.ctan.org/author/muench-hm}. +% \DescribeMacro{Münch} +% A hyperlinked list of my (other) packages can be found at \url{https://ctan.org/author/muench-hm}. % % \subsection{Package, unpacking TDS} -% \paragraph{Package.} This package is available on \url{CTAN.org}. +% \paragraph{Package.} This package is available on \url{https://CTAN.org}. % \begin{description} -% \item[\url{http://mirrors.ctan.org/macros/latex/contrib/pageslts/pageslts.dtx}]\hspace*{0.1cm} \\ +% \item[\url{https://mirror.ctan.org/macros/latex/contrib/pageslts/pageslts.dtx}]\hspace*{0.1cm} \\ % The source file. -% \item[\url{http://mirrors.ctan.org/macros/latex/contrib/pageslts/pageslts.pdf}]\hspace*{0.1cm} \\ +% \item[\url{https://mirror.ctan.org/macros/latex/contrib/pageslts/pageslts.pdf}]\hspace*{0.1cm} \\ % The documentation. -% \item[\url{http://mirrors.ctan.org/macros/latex/contrib/pageslts/pageslts-example.pdf}]\hspace*{0.1cm} \\ +% \item[\url{https://mirror.ctan.org/macros/latex/contrib/pageslts/pageslts-example.pdf}]\hspace*{0.1cm} \\ % The compiled example file, as it should look like. -% \item[\url{http://mirrors.ctan.org/macros/latex/contrib/pageslts/README}]\hspace*{0.1cm} \\ +% \item[\url{https://mirror.ctan.org/macros/latex/contrib/pageslts/README}]\hspace*{0.1cm} \\ % The README file. % \end{description} -% There is also a |thumbs.tds.zip| available: +% There is also a |pageslts.tds.zip| available: % \begin{description} -% \item[\url{http://mirror.ctan.org/install/macros/latex/contrib/pageslts.tds.zip}]\hspace*{0.1cm} \\ +% \item[\url{https://mirror.ctan.org/install/macros/latex/contrib/pageslts.tds.zip}]\hspace*{0.1cm} \\ % Everything in TDS compliant, compiled format. % \end{description} % which additionally contains\\ % \begin{tabular}{ll} -% pageslts.ins & The installation file.\\ -% pageslts.drv & The driver to generate the documentation.\\ -% pageslts.sty & The \xext{sty}le file.\\ +% pageslts.ins & The \texttt{ins}tallation file.\\ +% pageslts.drv & The \mbox{\texttt{dr}i\texttt{v}er} to generate the documentation.\\ +% pageslts.sty & The \texttt{sty}le file.\\ % pageslts-example.tex & The example file.% % \end{tabular} % % \bigskip % -% \noindent For required other packages see the preceding subsection. +% \noindent For required other packages please see the preceding subsection. % % \paragraph{Unpacking.} The \xfile{.dtx} file is a self-extracting % \docstrip{} archive. The files are extracted by running the -% \xfile{.dtx} through \plainTeX : +% \xext{.dtx} through \plainTeX : % \begin{quote} % \verb|tex pageslts.dtx| % \end{quote} @@ -4865,13 +3933,11 @@ a package with output \linebreak % place, see the documentation of \docstrip. % % \subsection{Refresh file name databases} -% -% If your \TeX~distribution (\teTeX, \mikTeX,\dots) relies on file name -% databases, you must refresh these. For example, \teTeX\ users run -% \verb|texhash| or \verb|mktexlsr|. +% If your \TeX~distribution (\TeX\,Live, \mikTeX, \dots) relies on +% file name databases, you must refresh these. For example, \TeX\,Live\ users +% run \verb|texhash| or \verb|mktexlsr|. % % \subsection{Some details for the interested} -% % \paragraph{Unpacking with \LaTeX.} % The \xfile{.dtx} chooses its action depending on the format: % \begin{description} @@ -4889,7 +3955,7 @@ a package with output \linebreak % % \paragraph{Generating the documentation.\label{GenDoc}} % You can use both the \xfile{.dtx} or the \xfile{.drv} to generate -% the documentation. The process can be configured by the +% the documentation. The process can be configured by a % configuration file \xfile{ltxdoc.cfg}. For instance, put the following % line into this file, if you want to have A4 as paper format: % \begin{quote} @@ -4910,44 +3976,34 @@ a package with output \linebreak % \end{quote} % % \subsection{Compiling the example} -% % The example file, \textsf{pageslts-example.tex}, can be compiled via\\ % \indent |latex pageslts-example.tex|\\ % or (recommended)\\ % \indent |pdflatex pageslts-example.tex|\\ -% and will need \textit{at least} (!) three compiler runs to get -% all references right. +% and will need \textit{at least} (!) three compiler runs to get all references right. % % \pagebreak % % \section{Acknowledgements} -% -% I (H.-Martin M\"{u}nch) would like to thank \textsc{Jeffrey P. Goldberg} -% for inventing the \xpackage{lastpage} package. This package first started -% as a revision of the \xpackage{lastpage} package, but it became obvious -% that a replacement was needed to accomplish what this package does. +% I (\textsc{H.-Martin Münch}) would like to thank +% \textsc{Jeffrey P. Goldberg} (jeffrey+news at goldmark dot org) for +% inventing the \xpackage{lastpage} package. This \xpackage{pageslts} package +% first started as a revision of the \xpackage{lastpage} package, but a replacement +% was deemed necessary to accomplish what this package does. % Further I would like to thank \textsc{Heiko Oberdiek} for providing the % |\erroralphalph| command as well as a~lot~(!) of useful packages % (from which I also got everything I know about creating a file in -% \xfile{dtx} format, ok, say it: copying), \textsc{Martin Schr\"{o}der} -% for his \xpackage{prelim2e} package, from which I got the -% |Prelim@EveryShipout| code, \textsc{Ulrich Diez} for his code for the -% \xpackage{undolabl} package, which allows overwriting of labels, -% \textsc{Andres L\"{o}h} for the code to determine the current page -% numbering scheme, and the \Newsgroup{comp.text.tex} and -% \Newsgroup{de.comp.text.tex} newsgroups for their help in all things \TeX{}. -% For bug reports I thank Micha\l{} Herman, kwikwi, Joshua Ellis, -% and Dr. Clea F. Rees. For telling me how to fix a bug +% \xfile{dtx} format, OK, say it: copying), \textsc{Ulrich Diez} for his code for the +% \xpackage{undolabl} package, which allows overwriting of labels, and +% \textsc{Andres Löh} for the code to determine the current page numbering scheme. +% For bug reports I thank \textsc{Micha\l{} Herman}, \textsc{kwikwi}, \textsc{Joshua Ellis}, +% and \textsc{Dr.~Clea F. Rees}. For telling me how to fix a bug % (and for all his shared whisdom at \url{https://tex.stackexchange.com}) -% thanks go to Prof. Enrico Gregorio. +% thanks go to \textsc{Prof.~Enrico Gregorio}. % % \phantomsection % \begin{History}\label{History} -% -% Some old versions have been archived at -% \url{http://ctanhg.scharrer-online.de/pkg/pageslts.html}. -% -% \begin{Version}{1994/06/17, \xpackage{lastpage}} +% \begin{Version}{1994/06/17, \xpackage{lastpage}} % \item \xpackage{lastpage} v0.99a: First shot by \textsc{Jeffrey P. Goldberg}. % \end{Version} % \begin{Version}{1994/06/25, \xpackage{lastpage}} @@ -4972,9 +4028,9 @@ a package with output \linebreak % and then \xpackage{hyperref} and \xpackage{revtex} even redefine |\lastpage@putlabel|. % \end{Version} % \begin{Version}{2010/02/18, \xpackage{lastpage}} -% \item \xpackage{lastpage} v1.1: Proposed |LastPages| label by H.-Martin M\"{u}nch +% \item \xpackage{lastpage} v1.1: Proposed |LastPages| label by H.-Martin Münch % on \Newsgroup{comp.text.tex}, see e.\,g. -% \url{http://groups.google.com/group/comp.text.tex/msg/4407493da9c747f0?dmode=source}; +% \url{https://groups.google.com/group/comp.text.tex/msg/4407493da9c747f0?dmode=source}; % now available in this \xpackage{pageslts} package. % \end{Version} % \begin{Version}{2010/05/15 v1.0 \xpackage{pagesLTS}} @@ -4991,7 +4047,7 @@ a package with output \linebreak % \item Replacement of |\filedate|, |-version|, |-name|,\ldots{} because % of \LaTeX~bug 2705:\\ % Synopsis: Possible problem with |\fileversion| and |\filedate|\\ -% \url{http://www.latex-project.org/cgi-bin/ltxbugs2html?category=LaTeX&responsible=anyone&state=anything&keyword=lastpage&pr=latex%2F2705&search=} +% \url{https://www.latex-project.org/cgi-bin/ltxbugs2html?category=LaTeX&responsible=anyone&state=anything&keyword=lastpage&pr=latex%2F2705&search=} % \item \xpackage{alphalph} support included. % \item Page numbering extension |\erroralph| by \textsc{Heiko Oberdiek} included. % \item (Page-) Numbering extension for |roman| and |Roman| numbers included. @@ -5007,55 +4063,46 @@ a package with output \linebreak % \begin{Version}{2010/06/01 v1.1(a) \xpackage{pagesLTS}} % \item Abstract changed: Negative \texttt{roman} and \texttt{Roman} page % numbers are now possible. -% \item Some references to other packages have been updated. % \item Several typing mistakes have been corrected~- % both in the \xfile{sty}le file as well as in this documentation. % \end{Version} % \begin{Version}{2010/06/03 v1.1b \xpackage{pagesLTS}} % \item Corrected a bug in |\XXRoman|, where |\roman| instead of |\Roman| had been used. % \item New \xpackage{papermas} package mentioned. -% \item Several changes in the documentation and the Readme file. % \end{Version} % \begin{Version}{2010/06/24 v1.1c \xpackage{pagesLTS}} % \item \xpackage{holtxdoc} warning in \xfile{drv} updated. % \item Removed CRLF line endings from the \xfile{dtx} file. % \item Corrected the location of the package at CTAN. -% (In this version \xfile{TDS} was still missing due to packaging error.) +% (In this version \xfile{TDS} was still missing due to a packaging error.) % \item Corrected Message format in pagesLTS.\xfile{ins}. -% \item Updates to the documentation. % \end{Version} % \begin{Version}{2010/07/15 v1.1d \xpackage{pagesLTS}} % \item Added the |\@ifclassloaded{revtex4}| code for |\lastpage@putlabel| (changed to -% |\pagesLTS@putlabelhyper|) from the \xpackage{hyperref} package \textbf{as comment}~- -% what is the meaning of that code? +% |\pagesLTS@putlabelhyper|) from the \xpackage{hyperref} package \textbf{as comment}. % \item In the documentation added the explanation of the occurence of multiply definitions % of the |LastPage| label with \xpackage{lastpage}, \xpackage{pagesLTS}, \xpackage{hyperref} % package (in that order). % \item Updated to (then) new version of \xpackage{undolabl} package [2010/07/15] v1.0d, % which uses |\undonewlabel| with only one instead of two arguments. -% \item Added a warning message, if \xpackage{hyperref} \textit{and} \xpackage{pdfpages} are \textit{both} used. -% (Should not \xpackage{hyperref} give this warning?) -% \item Updates to the documentation. +% \item Added a warning message, if \xpackage{hyperref} \textit{and} \xpackage{pdfpages} were \textit{both} used. % \end{Version} % \begin{Version}{2010/07/29 v1.1e \xpackage{pagesLTS}} % \item Removed \xpackage{lastpage209.sty}, because it is now contained % in the \xpackage{lastpage}\xfile{.dtx}\ file, v\,$\geq 1.2$a. % \item Removed the |\@ifclassloaded{revtex4}| code for |\lastpage@putlabel|. % \item Handling of \xpackage{lastpage} package adapted to updated version~1.2(a). -% \item Corrected error in \xpackage{lastpage} code [1994/07/20 v0.1b] given in \ref{History}~History. +% \item Corrected error in \xpackage{lastpage} code [1994/07/20 v0.1b]. % \item Version handling for \xpackage{undolabl} package updated. % \item Included a |\CheckSum|. -% \item Some minor details. % \end{Version} % \begin{Version}{2010/08/08 v1.1f \xpackage{pagesLTS}} % \item Version 1.1e had a bug: AlphAlph was replaced by alphalph (because that package is named like this), % but this was done also in commands and definitions~- now reverted. -% \item Updates to the documentation. % \end{Version} % \begin{Version}{2010/08/12 v1.1g \xpackage{pagesLTS}} % \item Now the rerun warning is given \textit{after} e.\,g. the |\listfiles|, -% increasing the chance of the user to read it (trick found in -% \textsc{Harald Harders'} \xpackage{fnbreak} package, thanks!). +% increasing the chance of the user to read it. % \end{Version} % \begin{Version}{2010/08/23 v1.1h \xpackage{pagesLTS}} % \item Renamed |\XXRoman| to |\XRoman|. @@ -5065,7 +4112,6 @@ a package with output \linebreak % \item Without use of the \xpackage{hyperref} package, labels of type % \texttt{pagesLTS.}\meta{page numbering scheme}\texttt{.local} % became multiply defined. Now an |\undolabl| was inserted. -% \item Diverse details. % \end{Version} % \begin{Version}{2010/08/25 v1.1i \xpackage{pagesLTS}} % \item Bug fix: \textsf{tcilatex} defines the |\hyperref| command, therefore @@ -5083,9 +4129,7 @@ a package with output \linebreak % \item When no \texttt{fnsymbol} pagenumbering scheme is used, the respective % counters are not defined, saving three counters. % \item Moved the package from \texttt{.../latex/muench/pagesLTS/...} to -% \texttt{.../latex/pagesLTS/...}.\\ -% (Please make sure that the old version of the \xpackage{pagesLTS} package -% was properly uninstalled from your system.) +% \texttt{.../latex/pagesLTS/...}. % \end{Version} % \begin{Version}{2010/09/27 v1.1l \xpackage{pagesLTS}} % \item Bug fix: |\PackageError{pagesLTS}{pagenumbering missing}{\pagesLTS@messageNPN }| @@ -5105,11 +4149,8 @@ a package with output \linebreak % \xpackage{showkeys} package.) % \item Bug fix: In some situations a rerun warning was given even if no rerun % was necessary. -% \item The recent version of the Adobe Reader \sout{\ is}\uwave{\ was} X (10.0.0) -% (instead of 9.3.3). Its handling of special page numbers was improved. % \item The option \texttt{alphMult}\ \ is now set to \texttt{ab} by default. % \item The option \texttt{AlphMulti}\ is now set to \texttt{AB} by default. -% \item Some details. % \end{Version} % \begin{Version}{2011/03/16 v1.1n \xpackage{pagesLTS}} % \item Bug fix: Handling of option |pagecontinue=false| changed. @@ -5128,7 +4169,7 @@ a package with output \linebreak % \end{Version} % \begin{Version}{2011/03/17 v1.1o \xpackage{pagesLTS}} % \item Documentation and ReadMe bug fix: This \xpackage{pagesLTS} package is located at -% \url{https://www.ctan.org/pkg/pageslts} instead of \ldots /pagesLTS/. +% \url{https://ctan.org/pkg/pageslts} instead of \ldots /pagesLTS/. % \item There is a new (possible) alternative package, \xpackage{totcount}, % see section~\ref{sec:Alternatives}. % \item Bug fix: There was a reference to \xpackage{lastpage} 1994/07/20, v0.1b, @@ -5140,11 +4181,10 @@ a package with output \linebreak % Added checking against double loading as \xpackage{pagesLTS} and \xpackage{pageslts}. % \item The \xpackage{holtxdoc} package was fixed (recent: 2011/02/04, v0.21), therefore % the warning in \xfile{drv} could be removed. -% \item |\AtEndAfterFileList| from the \uwave{then} new version of the \xpackage{atveryend} package, +% \item |\AtEndAfterFileList| from the (then) new version of the \xpackage{atveryend} package, % 2011/04/23, v1.7, by \textsc{Heiko Oberdiek}, is now used for the rerun hint % instead of appending to |\@dofilelist|. -% \item Now defining $2$: |\def\pagesLTS@two{2}| (for example for the -% \xpackage{thumbs} package) and $3$: |\def\pagesLTS@three{3}|. +% \item Now defining $2$: |\def\pagesLTS@two{2}| and $3$: |\def\pagesLTS@three{3}|. % \item Replaced |\texttt{\textbackslash|\ldots|}| by % \textbar \textbackslash \ldots \textbar{} in the \xfile{dtx} and by % |\verb|\textbar \textbackslash \ldots \textbar{} in the example (where possible). @@ -5160,8 +4200,9 @@ a package with output \linebreak % \item The \xpackage{nameref} package redefines |\label| to have five arguments % instead of two, therefore |\newlabel{LastPage}{{}{\thepage}{}{}{}}| instead of % |\newlabel{LastPage}{{}{\thepage}}| must be used. -% (Bug reported at \url{http://tex.stackexchange.com/q/95541/6865}, -% thanks to Micha\l{} Herman!) Fixed. +% (Bug reported at \url{https://tex.stackexchange.com/q/95541/6865}, +% thanks to Micha\l{} Herman!) Fixed. [Later in the kernel \textit{all} labels +% got defined to have five arguments.] % \item Updates to a lot of details, also in the documentation. % \end{Version} % \begin{Version}{2014/01/19 v1.2c} @@ -5172,26 +4213,24 @@ a package with output \linebreak % for checking (even \emph{after} |\AtBeginDocument|) % whether a package has been loaded. % \item Bug: incompatibility with \xpackage{lineno} because of a mistake -% in the redefined |\pagenumbering|, fixed. (Bug reported by kwikwi, thanks!) +% in the redefined |\pagenumbering|, fixed. (Bug reported by \textsc{kwikwi}, thanks!) % \item Bug: When |\pagenumbering| preceded |\frontmatter| on the same page % but with different argument than the |\pagenumbering|, which was inside % |\frontmatter|, then some labelling got mixed up. -% (Also this bug reported by kwikwi, thanks!) While this is not fixed automatically, +% (Also this bug reported by \textsc{kwikwi}, thanks!) While this is not fixed automatically, % now an appropriate error message is given. (Two different page numbering schemes % on the same page make no sense anyway.) -% \item Updates of minor details. % \end{Version} % \begin{Version}{2015/08/02 v1.2d} % \item Updated to \TeX{} Live 2015 (for compiling the documentation and example) % and installed the available updates. Therefore I can no longer test -% whether \xpackage{thumbs} works with earlier versions of \LaTeX . -% (It probably does, but there is no guarantee.) +% whether \xpackage{pageslts} works with earlier versions of \LaTeX . % \item A |ifundefinedorrelax| similar to the one from \xpackage{scrbase.sty} % of the KOMA script bundle as 2013/12/19 v3.12 is used now, % without the need for \eTeX . % \item New versions of Adobe Reader and of some packages have become available. % \item Changed the message (type) to be displayed if writing to files is disallowed -% (as pointed out by Joshua Ellis, thanks!). +% (as pointed out by \textsc{Joshua Ellis}, thanks!). % \item Updates to several details, also in the documentation. % \end{Version} % \begin{Version}{2015/08/17 v1.2e} @@ -5206,22 +4245,25 @@ a package with output \linebreak % the question), I would have fixed it earlier, of course. % \item Changed minor details like fixing urls in the manual. % \end{Version} +% \begin{Version}{2024-11-20 v2.0a} +% \item Kernel-updates broke the package, the package was repaired and updated +% to the new kernel-code; ports from \xpackage{lastpage}. +% \item Removed |\unit|. +% \item Removed |\XXRoman| (deprecated at least since 2015). +% \item Removed code from/need for packages \xpackage{prelim2e}, \xpackage{ltxcmds}, +% \xpackage{atveryend}, \xpackage{etoolbox}, \xpackage{everyshi}, +% \xpackage{letltxmacro}, and \xpackage{rerunfilecheck}. +% \item Removed checks for available \eTeX, \xpackage{endfloats} package from 1992, +% \xpackage{pagesLTS} package from 2011, \xpackage{hyperref} from 2015 etc. +% \item Renamed |\pagesLTS@ifcounter| to |\pagesLTS@providecounter|. +% \item Renamed |\pagesLTS.lastpage| to |\pagesLTSlastpage|. +% \end{Version} % \end{History} -% % \bigskip % -% When you find a mistake or have a suggestion for an improvement of this package, +% \noindent When you find a mistake or have a suggestion for an improvement of this package, % please send an e-mail to the maintainer, thanks!\\ -% (Please see BUG REPORTS in the README.) -% -% \bigskip -% -% Note: \textsf{Y} is not missing in the following index, but no command beginning -% with this letter has been used in this \xpackage{pageslts} package. -% -% \pagebreak -% +% (Please see BUG REPORTS in the README.)\newpage % \PrintIndex -% % \Finale \endinput
\ No newline at end of file diff --git a/macros/latex/contrib/pageslts/pageslts.pdf b/macros/latex/contrib/pageslts/pageslts.pdf Binary files differindex 98f3b7a7b3..f4ccf5a1ba 100644 --- a/macros/latex/contrib/pageslts/pageslts.pdf +++ b/macros/latex/contrib/pageslts/pageslts.pdf diff --git a/macros/latex/contrib/tagpdf/README.md b/macros/latex/contrib/tagpdf/README.md index e8b315df71..3396d14b4f 100644 --- a/macros/latex/contrib/tagpdf/README.md +++ b/macros/latex/contrib/tagpdf/README.md @@ -1,6 +1,6 @@ #tagpdf — A package to create tagged pdf -Packageversion: 0.99h -Packagedate: 2024/11/18 +Packageversion: 0.99i +Packagedate: 2024/11/19 Author: Ulrike Fischer, LaTeX Project Team ## License diff --git a/macros/latex/contrib/tagpdf/ex-AF-file.pdf b/macros/latex/contrib/tagpdf/ex-AF-file.pdf index 132fd69459..428a959c66 100644 --- a/macros/latex/contrib/tagpdf/ex-AF-file.pdf +++ b/macros/latex/contrib/tagpdf/ex-AF-file.pdf @@ -1,7 +1,7 @@ %PDF-2.0 % 22 0 obj -<< /Subtype /application#2Fx-tex/Type /EmbeddedFile /Params<</ModDate (D:20241119104256+01'00') /Size 151 /CheckSum (3BB0C351ECA0A73E9FDE40BA44F671D4) >> /Length 151 >> +<< /Subtype /application#2Fx-tex/Type /EmbeddedFile /Params<</ModDate (D:20241119224731+01'00') /Size 151 /CheckSum (3BB0C351ECA0A73E9FDE40BA44F671D4) >> /Length 151 >> stream %% LaTeX2e file `example-input-file.tex' %% generated by the `filecontents' environment @@ -248,17 +248,17 @@ stream </dc:language> <dc:date> <rdf:Seq> - <rdf:li>2024-11-19T10:43:16+01:00</rdf:li> + <rdf:li>2024-11-19T22:47:48+01:00</rdf:li> </rdf:Seq> </dc:date> <dc:format>application/pdf</dc:format> <dc:source>ex-AF-file.tex</dc:source> <xmp:CreatorTool>LaTeX</xmp:CreatorTool> - <xmp:CreateDate>2024-11-19T10:43:16+01:00</xmp:CreateDate> - <xmp:ModifyDate>2024-11-19T10:43:16+01:00</xmp:ModifyDate> - <xmp:MetadataDate>2024-11-19T10:43:16+01:00</xmp:MetadataDate> + <xmp:CreateDate>2024-11-19T22:47:48+01:00</xmp:CreateDate> + <xmp:ModifyDate>2024-11-19T22:47:48+01:00</xmp:ModifyDate> + <xmp:MetadataDate>2024-11-19T22:47:48+01:00</xmp:MetadataDate> <xmpMM:DocumentID>uuid:38d5a844-2217-4081-87cc-b2129dc357a6</xmpMM:DocumentID> - <xmpMM:InstanceID>uuid:fda49eb9-4d22-45e2-804a-2b7e816673a0</xmpMM:InstanceID> + <xmpMM:InstanceID>uuid:2f710d34-78c6-4bc9-8502-9b00b05ae64f</xmpMM:InstanceID> <prism:complianceProfile>three</prism:complianceProfile> <prism:pageCount>1</prism:pageCount> </rdf:Description> @@ -353,7 +353,7 @@ endobj << /Type /Namespace /NS (https://www.latex-project.org/ns/book/2022) /RoleMapNS 18 0 R >> endobj 19 0 obj -<< /Type /Namespace /NS (data:,297B6224-B5EF-CA0B-BD30-B4229688F604) >> +<< /Type /Namespace /NS (data:,79AFDC2B-395F-522E-F64B-C75383295AE3) >> endobj 8 0 obj [ 9 0 R 11 0 R 13 0 R 15 0 R 17 0 R 19 0 R ] @@ -455,7 +455,7 @@ endobj << /Type /Catalog /Pages 36 0 R /MarkInfo 37 0 R/Lang (de-DE)/Metadata 31 0 R/StructTreeRoot 5 0 R >> endobj 46 0 obj -<< /Producer (luahbtex-1.18.0)/Creator (LaTeX)/CreationDate (D:20241119104316+01'00')/ModDate (D:20241119104316+01'00') /Trapped /False /PTEX.FullBanner (This is LuaHBTeX, Version 1.18.0 (TeX Live 2024)) >> +<< /Producer (luahbtex-1.18.0)/Creator (LaTeX)/CreationDate (D:20241119224748+01'00')/ModDate (D:20241119224748+01'00') /Trapped /False /PTEX.FullBanner (This is LuaHBTeX, Version 1.18.0 (TeX Live 2024)) >> endobj xref 0 47 @@ -507,7 +507,7 @@ xref 0000020862 00000 n 0000020980 00000 n trailer -<< /Size 47 /Root 45 0 R /Info 46 0 R /ID [ <C16E033BC150BC84003BBC451265C60F> <C16E033BC150BC84003BBC451265C60F> ] >> +<< /Size 47 /Root 45 0 R /Info 46 0 R /ID [ <B0E235E4007483FF122983C54572190B> <B0E235E4007483FF122983C54572190B> ] >> startxref 21203 %%EOF diff --git a/macros/latex/contrib/tagpdf/ex-alt-actualtext.pdf b/macros/latex/contrib/tagpdf/ex-alt-actualtext.pdf Binary files differindex 1276771fee..21301a484a 100644 --- a/macros/latex/contrib/tagpdf/ex-alt-actualtext.pdf +++ b/macros/latex/contrib/tagpdf/ex-alt-actualtext.pdf diff --git a/macros/latex/contrib/tagpdf/ex-attribute.pdf b/macros/latex/contrib/tagpdf/ex-attribute.pdf index 6cfdb6923b..dbe9017b92 100644 --- a/macros/latex/contrib/tagpdf/ex-attribute.pdf +++ b/macros/latex/contrib/tagpdf/ex-attribute.pdf @@ -222,17 +222,17 @@ stream </dc:language> <dc:date> <rdf:Seq> - <rdf:li>2024-11-19T10:44:10+01:00</rdf:li> + <rdf:li>2024-11-19T22:48:37+01:00</rdf:li> </rdf:Seq> </dc:date> <dc:format>application/pdf</dc:format> <dc:source>ex-attribute.tex</dc:source> <xmp:CreatorTool>LaTeX</xmp:CreatorTool> - <xmp:CreateDate>2024-11-19T10:44:10+01:00</xmp:CreateDate> - <xmp:ModifyDate>2024-11-19T10:44:10+01:00</xmp:ModifyDate> - <xmp:MetadataDate>2024-11-19T10:44:10+01:00</xmp:MetadataDate> + <xmp:CreateDate>2024-11-19T22:48:37+01:00</xmp:CreateDate> + <xmp:ModifyDate>2024-11-19T22:48:37+01:00</xmp:ModifyDate> + <xmp:MetadataDate>2024-11-19T22:48:37+01:00</xmp:MetadataDate> <xmpMM:DocumentID>uuid:7a9cf910-1c19-429a-8f24-339c62d8a57f</xmpMM:DocumentID> - <xmpMM:InstanceID>uuid:7761c697-6412-47ac-829a-40c8400c075a</xmpMM:InstanceID> + <xmpMM:InstanceID>uuid:b773e7fe-67e8-4055-8032-80290394fa80</xmpMM:InstanceID> <prism:complianceProfile>three</prism:complianceProfile> <prism:pageCount>1</prism:pageCount> </rdf:Description> @@ -456,7 +456,7 @@ endobj << /Type /Catalog /Pages 26 0 R /MarkInfo 27 0 R/Lang (de_DE)/Metadata 21 0 R/StructTreeRoot 5 0 R >> endobj 38 0 obj -<< /Producer (luahbtex-1.18.0)/Creator (LaTeX)/Title (Title)/CreationDate (D:20241119104410+01'00')/ModDate (D:20241119104410+01'00') /Trapped /False /PTEX.FullBanner (This is LuaHBTeX, Version 1.18.0 (TeX Live 2024)) >> +<< /Producer (luahbtex-1.18.0)/Creator (LaTeX)/Title (Title)/CreationDate (D:20241119224837+01'00')/ModDate (D:20241119224837+01'00') /Trapped /False /PTEX.FullBanner (This is LuaHBTeX, Version 1.18.0 (TeX Live 2024)) >> endobj xref 0 39 @@ -500,7 +500,7 @@ xref 0000018052 00000 n 0000018170 00000 n trailer -<< /Size 39 /Root 37 0 R /Info 38 0 R /ID [ <C67DB0D3B806EEB5A77134F6AE454548> <C67DB0D3B806EEB5A77134F6AE454548> ] >> +<< /Size 39 /Root 37 0 R /Info 38 0 R /ID [ <F6E6B59759C986D7783DD2985BE7BCF5> <F6E6B59759C986D7783DD2985BE7BCF5> ] >> startxref 18407 %%EOF diff --git a/macros/latex/contrib/tagpdf/ex-formula-problem.pdf b/macros/latex/contrib/tagpdf/ex-formula-problem.pdf index 52b45acce6..bcec5655af 100644 --- a/macros/latex/contrib/tagpdf/ex-formula-problem.pdf +++ b/macros/latex/contrib/tagpdf/ex-formula-problem.pdf @@ -245,17 +245,17 @@ stream </dc:language> <dc:date> <rdf:Seq> - <rdf:li>2024-11-19T10:44:40+01:00</rdf:li> + <rdf:li>2024-11-19T22:49:02+01:00</rdf:li> </rdf:Seq> </dc:date> <dc:format>application/pdf</dc:format> <dc:source>ex-formula-problem.tex</dc:source> <xmp:CreatorTool>LaTeX</xmp:CreatorTool> - <xmp:CreateDate>2024-11-19T10:44:40+01:00</xmp:CreateDate> - <xmp:ModifyDate>2024-11-19T10:44:40+01:00</xmp:ModifyDate> - <xmp:MetadataDate>2024-11-19T10:44:40+01:00</xmp:MetadataDate> + <xmp:CreateDate>2024-11-19T22:49:02+01:00</xmp:CreateDate> + <xmp:ModifyDate>2024-11-19T22:49:02+01:00</xmp:ModifyDate> + <xmp:MetadataDate>2024-11-19T22:49:02+01:00</xmp:MetadataDate> <xmpMM:DocumentID>uuid:8eb2ce1d-b2ec-440a-8bc2-73733eb3eeb0</xmpMM:DocumentID> - <xmpMM:InstanceID>uuid:957d284f-4684-48f7-85d5-0b6679bdae48</xmpMM:InstanceID> + <xmpMM:InstanceID>uuid:f8f27a4d-7bc2-41b9-81bf-65fbaafb0eb5</xmpMM:InstanceID> <prism:complianceProfile>three</prism:complianceProfile> <prism:pageCount>2</prism:pageCount> </rdf:Description> @@ -431,7 +431,7 @@ endobj << /Type /Catalog /Pages 16 0 R /MarkInfo 23 0 R/Lang (de-DE)/Metadata 19 0 R/StructTreeRoot 5 0 R >> endobj 33 0 obj -<< /Producer (luahbtex-1.18.0)/Creator (LaTeX)/CreationDate (D:20241119104440+01'00')/ModDate (D:20241119104440+01'00') /Trapped /False /PTEX.FullBanner (This is LuaHBTeX, Version 1.18.0 (TeX Live 2024)) >> +<< /Producer (luahbtex-1.18.0)/Creator (LaTeX)/CreationDate (D:20241119224902+01'00')/ModDate (D:20241119224902+01'00') /Trapped /False /PTEX.FullBanner (This is LuaHBTeX, Version 1.18.0 (TeX Live 2024)) >> endobj xref 0 34 @@ -470,7 +470,7 @@ xref 0000019217 00000 n 0000019335 00000 n trailer -<< /Size 34 /Root 32 0 R /Info 33 0 R /ID [ <3335943A793C062F073A72F1F8515D20> <3335943A793C062F073A72F1F8515D20> ] >> +<< /Size 34 /Root 32 0 R /Info 33 0 R /ID [ <AD516773C1078A8FBD26DE9CB65F31A9> <AD516773C1078A8FBD26DE9CB65F31A9> ] >> startxref 19558 %%EOF diff --git a/macros/latex/contrib/tagpdf/ex-list.pdf b/macros/latex/contrib/tagpdf/ex-list.pdf index 0b8b6fcfaf..032a39678c 100644 --- a/macros/latex/contrib/tagpdf/ex-list.pdf +++ b/macros/latex/contrib/tagpdf/ex-list.pdf @@ -216,17 +216,17 @@ stream </dc:language> <dc:date> <rdf:Seq> - <rdf:li>2024-11-19T10:45:10+01:00</rdf:li> + <rdf:li>2024-11-19T22:49:27+01:00</rdf:li> </rdf:Seq> </dc:date> <dc:format>application/pdf</dc:format> <dc:source>ex-list.tex</dc:source> <xmp:CreatorTool>LaTeX</xmp:CreatorTool> - <xmp:CreateDate>2024-11-19T10:45:10+01:00</xmp:CreateDate> - <xmp:ModifyDate>2024-11-19T10:45:10+01:00</xmp:ModifyDate> - <xmp:MetadataDate>2024-11-19T10:45:10+01:00</xmp:MetadataDate> + <xmp:CreateDate>2024-11-19T22:49:27+01:00</xmp:CreateDate> + <xmp:ModifyDate>2024-11-19T22:49:27+01:00</xmp:ModifyDate> + <xmp:MetadataDate>2024-11-19T22:49:27+01:00</xmp:MetadataDate> <xmpMM:DocumentID>uuid:4c749825-1de7-414c-879f-29e4d0bef66e</xmpMM:DocumentID> - <xmpMM:InstanceID>uuid:439ed40b-19c0-4a6d-878b-c6c680b215b0</xmpMM:InstanceID> + <xmpMM:InstanceID>uuid:a288f3f0-bb08-40fd-8976-634fc6a2f7b7</xmpMM:InstanceID> <prism:complianceProfile>three</prism:complianceProfile> <prism:pageCount>1</prism:pageCount> </rdf:Description> @@ -660,7 +660,7 @@ endobj << /Type /Catalog /Pages 54 0 R /MarkInfo 55 0 R/Lang (en)/Metadata 48 0 R/StructTreeRoot 5 0 R >> endobj 72 0 obj -<< /Producer (luahbtex-1.18.0)/Creator (LaTeX)/CreationDate (D:20241119104510+01'00')/ModDate (D:20241119104510+01'00') /Trapped /False /PTEX.FullBanner (This is LuaHBTeX, Version 1.18.0 (TeX Live 2024)) >> +<< /Producer (luahbtex-1.18.0)/Creator (LaTeX)/CreationDate (D:20241119224927+01'00')/ModDate (D:20241119224927+01'00') /Trapped /False /PTEX.FullBanner (This is LuaHBTeX, Version 1.18.0 (TeX Live 2024)) >> endobj xref 0 73 @@ -738,7 +738,7 @@ xref 0000029921 00000 n 0000030036 00000 n trailer -<< /Size 73 /Root 71 0 R /Info 72 0 R /ID [ <BB91C0B8F03749A9AC561FC98006C80C> <BB91C0B8F03749A9AC561FC98006C80C> ] >> +<< /Size 73 /Root 71 0 R /Info 72 0 R /ID [ <952C6CAF29B1804A26A091223DDA6B84> <952C6CAF29B1804A26A091223DDA6B84> ] >> startxref 30259 %%EOF diff --git a/macros/latex/contrib/tagpdf/ex-mc-manual-para-split-obsolete.pdf b/macros/latex/contrib/tagpdf/ex-mc-manual-para-split-obsolete.pdf index e9ba9bbc35..750133eb6a 100644 --- a/macros/latex/contrib/tagpdf/ex-mc-manual-para-split-obsolete.pdf +++ b/macros/latex/contrib/tagpdf/ex-mc-manual-para-split-obsolete.pdf @@ -249,17 +249,17 @@ stream </dc:language> <dc:date> <rdf:Seq> - <rdf:li>2024-11-19T10:45:35+01:00</rdf:li> + <rdf:li>2024-11-19T22:49:49+01:00</rdf:li> </rdf:Seq> </dc:date> <dc:format>application/pdf</dc:format> <dc:source>ex-mc-manual-para-split-obsolete.tex</dc:source> <xmp:CreatorTool>LaTeX</xmp:CreatorTool> - <xmp:CreateDate>2024-11-19T10:45:35+01:00</xmp:CreateDate> - <xmp:ModifyDate>2024-11-19T10:45:35+01:00</xmp:ModifyDate> - <xmp:MetadataDate>2024-11-19T10:45:35+01:00</xmp:MetadataDate> + <xmp:CreateDate>2024-11-19T22:49:49+01:00</xmp:CreateDate> + <xmp:ModifyDate>2024-11-19T22:49:49+01:00</xmp:ModifyDate> + <xmp:MetadataDate>2024-11-19T22:49:49+01:00</xmp:MetadataDate> <xmpMM:DocumentID>uuid:c33d64b4-96ec-4e48-8f27-0b3edc831547</xmpMM:DocumentID> - <xmpMM:InstanceID>uuid:66db277b-60b0-462a-8a80-6c7017917260</xmpMM:InstanceID> + <xmpMM:InstanceID>uuid:a799bf32-6ce2-48e5-8a75-109a41b522f4</xmpMM:InstanceID> <prism:complianceProfile>three</prism:complianceProfile> <prism:pageCount>2</prism:pageCount> </rdf:Description> @@ -419,7 +419,7 @@ endobj << /Type /Catalog /Pages 14 0 R /Lang (de)/Metadata 15 0 R >> endobj 25 0 obj -<< /Producer (luahbtex-1.18.0)/Creator (LaTeX)/CreationDate (D:20241119104535+01'00')/ModDate (D:20241119104535+01'00') /Trapped /False /PTEX.FullBanner (This is LuaHBTeX, Version 1.18.0 (TeX Live 2024)) >> +<< /Producer (luahbtex-1.18.0)/Creator (LaTeX)/CreationDate (D:20241119224949+01'00')/ModDate (D:20241119224949+01'00') /Trapped /False /PTEX.FullBanner (This is LuaHBTeX, Version 1.18.0 (TeX Live 2024)) >> endobj xref 0 26 @@ -450,7 +450,7 @@ xref 0000024225 00000 n 0000024303 00000 n trailer -<< /Size 26 /Root 24 0 R /Info 25 0 R /ID [ <55058AE0C8E2FCF8ED491979571EEF65> <55058AE0C8E2FCF8ED491979571EEF65> ] >> +<< /Size 26 /Root 24 0 R /Info 25 0 R /ID [ <EA8B3D201470B02DA6674585D3E863E4> <EA8B3D201470B02DA6674585D3E863E4> ] >> startxref 24526 %%EOF diff --git a/macros/latex/contrib/tagpdf/ex-softhyphen.pdf b/macros/latex/contrib/tagpdf/ex-softhyphen.pdf index 2e3ddcbeb1..3d269322ed 100644 --- a/macros/latex/contrib/tagpdf/ex-softhyphen.pdf +++ b/macros/latex/contrib/tagpdf/ex-softhyphen.pdf @@ -216,17 +216,17 @@ stream </dc:language> <dc:date> <rdf:Seq> - <rdf:li>2024-11-19T10:45:59+01:00</rdf:li> + <rdf:li>2024-11-19T22:50:10+01:00</rdf:li> </rdf:Seq> </dc:date> <dc:format>application/pdf</dc:format> <dc:source>ex-softhyphen.tex</dc:source> <xmp:CreatorTool>LaTeX</xmp:CreatorTool> - <xmp:CreateDate>2024-11-19T10:45:59+01:00</xmp:CreateDate> - <xmp:ModifyDate>2024-11-19T10:45:59+01:00</xmp:ModifyDate> - <xmp:MetadataDate>2024-11-19T10:45:59+01:00</xmp:MetadataDate> + <xmp:CreateDate>2024-11-19T22:50:10+01:00</xmp:CreateDate> + <xmp:ModifyDate>2024-11-19T22:50:10+01:00</xmp:ModifyDate> + <xmp:MetadataDate>2024-11-19T22:50:10+01:00</xmp:MetadataDate> <xmpMM:DocumentID>uuid:aa82e685-4098-469d-861c-3c45dfc700c7</xmpMM:DocumentID> - <xmpMM:InstanceID>uuid:e022e0fe-be4b-4919-82c6-acb7e7b2e48e</xmpMM:InstanceID> + <xmpMM:InstanceID>uuid:a8c332c8-79ff-4999-88e2-803f82297a46</xmpMM:InstanceID> <prism:complianceProfile>three</prism:complianceProfile> <prism:pageCount>1</prism:pageCount> </rdf:Description> @@ -399,7 +399,7 @@ endobj << /Type /Catalog /Pages 19 0 R /MarkInfo 20 0 R/Lang (de)/Metadata 14 0 R/StructTreeRoot 5 0 R >> endobj 30 0 obj -<< /Producer (luahbtex-1.18.0)/Creator (LaTeX)/CreationDate (D:20241119104559+01'00')/ModDate (D:20241119104559+01'00') /Trapped /False /PTEX.FullBanner (This is LuaHBTeX, Version 1.18.0 (TeX Live 2024)) >> +<< /Producer (luahbtex-1.18.0)/Creator (LaTeX)/CreationDate (D:20241119225010+01'00')/ModDate (D:20241119225010+01'00') /Trapped /False /PTEX.FullBanner (This is LuaHBTeX, Version 1.18.0 (TeX Live 2024)) >> endobj xref 0 31 @@ -435,7 +435,7 @@ xref 0000018444 00000 n 0000018559 00000 n trailer -<< /Size 31 /Root 29 0 R /Info 30 0 R /ID [ <AAD6573EB750FCABBA0E7D5689ED7A9F> <AAD6573EB750FCABBA0E7D5689ED7A9F> ] >> +<< /Size 31 /Root 29 0 R /Info 30 0 R /ID [ <CF1107B599ACBE43981C6ED3AC49C985> <CF1107B599ACBE43981C6ED3AC49C985> ] >> startxref 18782 %%EOF diff --git a/macros/latex/contrib/tagpdf/ex-spaceglyph-listings.pdf b/macros/latex/contrib/tagpdf/ex-spaceglyph-listings.pdf index d8a42275fe..c0d34c3c19 100644 --- a/macros/latex/contrib/tagpdf/ex-spaceglyph-listings.pdf +++ b/macros/latex/contrib/tagpdf/ex-spaceglyph-listings.pdf @@ -216,17 +216,17 @@ stream </dc:language> <dc:date> <rdf:Seq> - <rdf:li>2024-11-19T10:46:22+01:00</rdf:li> + <rdf:li>2024-11-19T22:50:30+01:00</rdf:li> </rdf:Seq> </dc:date> <dc:format>application/pdf</dc:format> <dc:source>ex-spaceglyph-listings.tex</dc:source> <xmp:CreatorTool>LaTeX</xmp:CreatorTool> - <xmp:CreateDate>2024-11-19T10:46:22+01:00</xmp:CreateDate> - <xmp:ModifyDate>2024-11-19T10:46:22+01:00</xmp:ModifyDate> - <xmp:MetadataDate>2024-11-19T10:46:22+01:00</xmp:MetadataDate> + <xmp:CreateDate>2024-11-19T22:50:30+01:00</xmp:CreateDate> + <xmp:ModifyDate>2024-11-19T22:50:30+01:00</xmp:ModifyDate> + <xmp:MetadataDate>2024-11-19T22:50:30+01:00</xmp:MetadataDate> <xmpMM:DocumentID>uuid:acdc2435-bf29-4e54-8d09-1c9b6dc32038</xmpMM:DocumentID> - <xmpMM:InstanceID>uuid:b64f785e-63d7-42c0-880c-dee73d033555</xmpMM:InstanceID> + <xmpMM:InstanceID>uuid:571a3419-a422-4036-8ee2-1ecda588ac54</xmpMM:InstanceID> <prism:complianceProfile>three</prism:complianceProfile> <prism:pageCount>1</prism:pageCount> </rdf:Description> @@ -360,7 +360,7 @@ endobj << /Type /Catalog /Pages 15 0 R /MarkInfo 16 0 R/Lang (de)/Metadata 10 0 R/StructTreeRoot 5 0 R >> endobj 26 0 obj -<< /Producer (luahbtex-1.18.0)/Creator (LaTeX)/CreationDate (D:20241119104622+01'00')/ModDate (D:20241119104622+01'00') /Trapped /False /PTEX.FullBanner (This is LuaHBTeX, Version 1.18.0 (TeX Live 2024)) >> +<< /Producer (luahbtex-1.18.0)/Creator (LaTeX)/CreationDate (D:20241119225030+01'00')/ModDate (D:20241119225030+01'00') /Trapped /False /PTEX.FullBanner (This is LuaHBTeX, Version 1.18.0 (TeX Live 2024)) >> endobj xref 0 27 @@ -392,7 +392,7 @@ xref 0000015816 00000 n 0000015931 00000 n trailer -<< /Size 27 /Root 25 0 R /Info 26 0 R /ID [ <B90DEF20E8C34D4F1B9EAE84E7D1773A> <B90DEF20E8C34D4F1B9EAE84E7D1773A> ] >> +<< /Size 27 /Root 25 0 R /Info 26 0 R /ID [ <DE60D05701170F341366D319F9E0F290> <DE60D05701170F341366D319F9E0F290> ] >> startxref 16154 %%EOF diff --git a/macros/latex/contrib/tagpdf/ex-structure-obsolete.pdf b/macros/latex/contrib/tagpdf/ex-structure-obsolete.pdf index 3c98abc1eb..dabd5ced26 100644 --- a/macros/latex/contrib/tagpdf/ex-structure-obsolete.pdf +++ b/macros/latex/contrib/tagpdf/ex-structure-obsolete.pdf @@ -216,17 +216,17 @@ stream </dc:language> <dc:date> <rdf:Seq> - <rdf:li>2024-11-19T10:46:47+01:00</rdf:li> + <rdf:li>2024-11-19T22:50:51+01:00</rdf:li> </rdf:Seq> </dc:date> <dc:format>application/pdf</dc:format> <dc:source>ex-structure-obsolete.tex</dc:source> <xmp:CreatorTool>LaTeX</xmp:CreatorTool> - <xmp:CreateDate>2024-11-19T10:46:47+01:00</xmp:CreateDate> - <xmp:ModifyDate>2024-11-19T10:46:47+01:00</xmp:ModifyDate> - <xmp:MetadataDate>2024-11-19T10:46:47+01:00</xmp:MetadataDate> + <xmp:CreateDate>2024-11-19T22:50:51+01:00</xmp:CreateDate> + <xmp:ModifyDate>2024-11-19T22:50:51+01:00</xmp:ModifyDate> + <xmp:MetadataDate>2024-11-19T22:50:51+01:00</xmp:MetadataDate> <xmpMM:DocumentID>uuid:bf5e4a2b-cfa9-4fc5-878c-8f9d2ee95445</xmpMM:DocumentID> - <xmpMM:InstanceID>uuid:bddbb871-526d-4f3d-8435-e12a1feeac71</xmpMM:InstanceID> + <xmpMM:InstanceID>uuid:01c3e39f-d3ec-407e-8266-902d4bdb0286</xmpMM:InstanceID> <prism:complianceProfile>three</prism:complianceProfile> <prism:pageCount>1</prism:pageCount> </rdf:Description> @@ -532,7 +532,7 @@ endobj << /Type /Catalog /Pages 26 0 R /MarkInfo 27 0 R/Lang (de)/Metadata 20 0 R/StructTreeRoot 5 0 R >> endobj 43 0 obj -<< /Producer (luahbtex-1.18.0)/Creator (LaTeX)/CreationDate (D:20241119104647+01'00')/ModDate (D:20241119104647+01'00') /Trapped /False /PTEX.FullBanner (This is LuaHBTeX, Version 1.18.0 (TeX Live 2024)) >> +<< /Producer (luahbtex-1.18.0)/Creator (LaTeX)/CreationDate (D:20241119225051+01'00')/ModDate (D:20241119225051+01'00') /Trapped /False /PTEX.FullBanner (This is LuaHBTeX, Version 1.18.0 (TeX Live 2024)) >> endobj xref 0 44 @@ -581,7 +581,7 @@ xref 0000023754 00000 n 0000023869 00000 n trailer -<< /Size 44 /Root 42 0 R /Info 43 0 R /ID [ <73ED9A692494A6647E97236BFC5CEEB2> <73ED9A692494A6647E97236BFC5CEEB2> ] >> +<< /Size 44 /Root 42 0 R /Info 43 0 R /ID [ <7514040B7A0416B917DF2DD48343ED50> <7514040B7A0416B917DF2DD48343ED50> ] >> startxref 24092 %%EOF diff --git a/macros/latex/contrib/tagpdf/ex-tagpdf-template.pdf b/macros/latex/contrib/tagpdf/ex-tagpdf-template.pdf index 3c57b57fa5..3f351d5002 100644 --- a/macros/latex/contrib/tagpdf/ex-tagpdf-template.pdf +++ b/macros/latex/contrib/tagpdf/ex-tagpdf-template.pdf @@ -216,17 +216,17 @@ stream </dc:language> <dc:date> <rdf:Seq> - <rdf:li>2024-11-19T10:47:11+01:00</rdf:li> + <rdf:li>2024-11-19T22:51:13+01:00</rdf:li> </rdf:Seq> </dc:date> <dc:format>application/pdf</dc:format> <dc:source>ex-tagpdf-template.tex</dc:source> <xmp:CreatorTool>LaTeX</xmp:CreatorTool> - <xmp:CreateDate>2024-11-19T10:47:11+01:00</xmp:CreateDate> - <xmp:ModifyDate>2024-11-19T10:47:11+01:00</xmp:ModifyDate> - <xmp:MetadataDate>2024-11-19T10:47:11+01:00</xmp:MetadataDate> + <xmp:CreateDate>2024-11-19T22:51:13+01:00</xmp:CreateDate> + <xmp:ModifyDate>2024-11-19T22:51:13+01:00</xmp:ModifyDate> + <xmp:MetadataDate>2024-11-19T22:51:13+01:00</xmp:MetadataDate> <xmpMM:DocumentID>uuid:f320abfc-f6ab-4d12-8719-d176f4d947cf</xmpMM:DocumentID> - <xmpMM:InstanceID>uuid:152254c5-c8bb-421a-887d-cd603bf6917b</xmpMM:InstanceID> + <xmpMM:InstanceID>uuid:d7f27e90-f8e5-40a5-8d1d-dc687039abf0</xmpMM:InstanceID> <prism:complianceProfile>three</prism:complianceProfile> <prism:pageCount>1</prism:pageCount> </rdf:Description> @@ -313,7 +313,7 @@ endobj << /Type /Namespace /NS (https://www.latex-project.org/ns/book/2022) /RoleMapNS 18 0 R >> endobj 19 0 obj -<< /Type /Namespace /NS (data:,7BF5F31B-5619-4032-6D86-912B6E92337B) >> +<< /Type /Namespace /NS (data:,AFC1665A-360C-1258-D705-A614163C7CD5) >> endobj 8 0 obj [ 9 0 R 11 0 R 13 0 R 15 0 R 17 0 R 19 0 R ] @@ -405,7 +405,7 @@ endobj << /Type /Catalog /Pages 31 0 R /MarkInfo 32 0 R/Lang (en)/Metadata 26 0 R/StructTreeRoot 5 0 R >> endobj 42 0 obj -<< /Producer (luahbtex-1.18.0)/Creator (LaTeX)/CreationDate (D:20241119104711+01'00')/ModDate (D:20241119104711+01'00') /Trapped /False /PTEX.FullBanner (This is LuaHBTeX, Version 1.18.0 (TeX Live 2024)) >> +<< /Producer (luahbtex-1.18.0)/Creator (LaTeX)/CreationDate (D:20241119225113+01'00')/ModDate (D:20241119225113+01'00') /Trapped /False /PTEX.FullBanner (This is LuaHBTeX, Version 1.18.0 (TeX Live 2024)) >> endobj xref 0 43 @@ -453,7 +453,7 @@ xref 0000018173 00000 n 0000018288 00000 n trailer -<< /Size 43 /Root 41 0 R /Info 42 0 R /ID [ <9EFF68CBFEF58EC72F40A7EED722ADE3> <9EFF68CBFEF58EC72F40A7EED722ADE3> ] >> +<< /Size 43 /Root 41 0 R /Info 42 0 R /ID [ <F5E1935F58F8396E4B7A31EB4FDE66AE> <F5E1935F58F8396E4B7A31EB4FDE66AE> ] >> startxref 18511 %%EOF diff --git a/macros/latex/contrib/tagpdf/tagpdf-backend.dtx b/macros/latex/contrib/tagpdf/tagpdf-backend.dtx index 44a8b2a14d..3e183a425a 100644 --- a/macros/latex/contrib/tagpdf/tagpdf-backend.dtx +++ b/macros/latex/contrib/tagpdf/tagpdf-backend.dtx @@ -47,13 +47,13 @@ % }^^A % } % -% \date{Version 0.99h, released 2024-11-18} +% \date{Version 0.99i, released 2024-11-19} % \maketitle % \begin{implementation} % \begin{macrocode} %<@@=tag> %<*luatex> -\ProvidesExplFile {tagpdf-luatex.def} {2024-11-18} {0.99h} +\ProvidesExplFile {tagpdf-luatex.def} {2024-11-19} {0.99i} {tagpdf~driver~for~luatex} % \end{macrocode} % \section{Loading the lua} @@ -174,8 +174,8 @@ local ProvidesLuaModule = { name = "tagpdf", - version = "0.99h", --TAGVERSION - date = "2024-11-18", --TAGDATE + version = "0.99i", --TAGVERSION + date = "2024-11-19", --TAGDATE description = "tagpdf lua code", license = "The LATEX Project Public License 1.3c" } diff --git a/macros/latex/contrib/tagpdf/tagpdf-checks.dtx b/macros/latex/contrib/tagpdf/tagpdf-checks.dtx index c7d5a92e71..f339936732 100644 --- a/macros/latex/contrib/tagpdf/tagpdf-checks.dtx +++ b/macros/latex/contrib/tagpdf/tagpdf-checks.dtx @@ -48,7 +48,7 @@ % }^^A % } % -% \date{Version 0.99h, released 2024-11-18} +% \date{Version 0.99i, released 2024-11-19} % \maketitle % \begin{documentation} % \section{Commands} @@ -331,7 +331,7 @@ % \begin{macrocode} %<@@=tag> %<*header> -\ProvidesExplPackage {tagpdf-checks-code} {2024-11-18} {0.99h} +\ProvidesExplPackage {tagpdf-checks-code} {2024-11-19} {0.99i} {part of tagpdf - code related to checks, conditionals, debugging and messages} %</header> % \end{macrocode} diff --git a/macros/latex/contrib/tagpdf/tagpdf-code.pdf b/macros/latex/contrib/tagpdf/tagpdf-code.pdf Binary files differindex 1a8d2ca664..118c957ac7 100644 --- a/macros/latex/contrib/tagpdf/tagpdf-code.pdf +++ b/macros/latex/contrib/tagpdf/tagpdf-code.pdf diff --git a/macros/latex/contrib/tagpdf/tagpdf-data.dtx b/macros/latex/contrib/tagpdf/tagpdf-data.dtx index 646255a3cb..84db53c7da 100644 --- a/macros/latex/contrib/tagpdf/tagpdf-data.dtx +++ b/macros/latex/contrib/tagpdf/tagpdf-data.dtx @@ -47,7 +47,7 @@ % }^^A % } % -% \date{Version 0.99h, released 2024-11-18} +% \date{Version 0.99i, released 2024-11-19} % \maketitle % \begin{documentation} % This files contains a various data files which are read in @@ -61,7 +61,7 @@ % latex-lab has also a namespace module, which takes precedence! % \begin{macrocode} %<*ns-latex> -%% \ProvidesExplFile {tagpdf-ns-latex.def} {2024-11-18} {0.99h} +%% \ProvidesExplFile {tagpdf-ns-latex.def} {2024-11-19} {0.99i} %% {latex} {https://www.latex-project.org/ns/dflt/2022}{} title, Title, pdf2, part, Title, pdf2, @@ -93,7 +93,7 @@ text, P, pdf2, % It is bound to change % \begin{macrocode} %<*ns-latex-book> -%% \ProvidesExplFile {tagpdf-ns-latex-book.def} {2024-11-18} {0.99h} +%% \ProvidesExplFile {tagpdf-ns-latex-book.def} {2024-11-19} {0.99i} %% {latex-book} {https://www.latex-project.org/ns/book/2022}{} chapter, H1,pdf2, section, H2,pdf2, @@ -107,7 +107,7 @@ subparagraph, H6,pdf2, % \section{The pdf namespace data} % \begin{macrocode} %<*ns-pdf> -%% \ProvidesExplFile {tagpdf-ns-pdf.def} {2024-11-18} {0.99h} +%% \ProvidesExplFile {tagpdf-ns-pdf.def} {2024-11-19} {0.99i} %% {pdf} {http://iso.org/pdf/ssn}{} StructTreeRoot,StructTreeRoot,pdf,D, Document,Document,pdf,D, @@ -175,7 +175,7 @@ Strong,Span,pdf,I, % \section{The pdf 2.0 namespace data} % \begin{macrocode} %<*ns-pdf2> -%% \ProvidesExplFile {tagpdf-ns-pdf2.def} {2024-11-18} {0.99h} +%% \ProvidesExplFile {tagpdf-ns-pdf2.def} {2024-11-19} {0.99i} %% {pdf2} {http://iso.org/pdf2/ssn}{} StructTreeRoot,StructTreeRoot,pdf2,D, Document,Document,pdf2,D, @@ -232,7 +232,7 @@ Strong,Strong,pdf2,I, % \section{The mathml namespace data} % \begin{macrocode} %<*ns-mathml> -%% \ProvidesExplFile {tagpdf-ns-mathml.def} {2024-11-18} {0.99h} +%% \ProvidesExplFile {tagpdf-ns-mathml.def} {2024-11-19} {0.99i} % {mathml}{http://www.w3.org/1998/Math/MathML}{} abs,abs,mathml, and,and,mathml, @@ -467,7 +467,7 @@ xor,xor,mathml, % This will perhaps change in future. % \begin{macrocode} %<*parent-child> -%% \ProvidesExplFile {tagpdf-parent-child.csv} {2024-11-18} {0.99h} +%% \ProvidesExplFile {tagpdf-parent-child.csv} {2024-11-19} {0.99i} ,,,StructTreeRoot,Document,Art,Part,Div,Sect,BlockQuote,NonStruct,TOC,TOCI,Index,Private,Quote,Note,Reference,BibEntry,P,Hn,H,Lbl,Code,Span,Link,Annot,Form,Ruby,RB,RT,RP,Warichu,WT,WP,L,LI,LBody,Table,TR,TH,TD,THead,TBody,TFoot,Caption,Figure,Formula,MC Document,both,document level,1,0..n,∅,‡,‡,∅,0..n,‡,∅,∅,∅,0..n,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅ Art,1.7,grouping,∅,0..n,∅,‡,‡,0..n,0..n,‡,∅,∅,∅,0..n,∅,0..n,∅,∅,∅,0..1,0..1,∅,∅,∅,0..n,0..n,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,0..n,∅,∅,0..n,0..n,∅,∅,∅,0..n,0..n,∅,∅ @@ -522,7 +522,7 @@ MC,both,---,∅,∅,∅,∅,∅,∅,0..n,‡,∅,∅,∅,0..n,0..n,0..n,0..n,0.. % This will perhaps change in future. % \begin{macrocode} %<*parent-child-2> -%% \ProvidesExplFile {tagpdf-parent-child-2.csv} {2024-11-18} {0.99h} +%% \ProvidesExplFile {tagpdf-parent-child-2.csv} {2024-11-19} {0.99i} ,,,StructTreeRoot,Document,DocumentFragment,Art,Part,Div,Sect,Aside,BlockQuote,NonStruct,TOC,TOCI,Index,Private,Title,Sub,Quote,Note,Reference,BibEntry,P,Hn,H,Lbl,Code,Em,Strong,Span,Link,Annot,Form,Ruby,RB,RT,RP,Warichu,WT,WP,FENote,L,LI,LBody,Table,TR,TH,TD,THead,TBody,TFoot,Caption,Figure,Formula,math,mathml,Artifact,MC Document,both,document level,1,0..n,0..n,∅,‡,‡,∅,0..n,0..n,‡,∅,∅,∅,0..n,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,0..n,∅ DocumentFragment,2.0,document level,∅,0..n,0..n,0..n,‡,‡,0..n,0..n,0..n,‡,∅,∅,∅,0..n,∅,∅,∅,∅*,∅,∅,∅,∅,∅,∅,∅*,∅,∅,∅,∅*,∅*,∅,∅,∅,∅,∅,∅,∅,∅,∅*,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅*,∅,∅,∅,∅,0..n,∅ diff --git a/macros/latex/contrib/tagpdf/tagpdf-mc-generic.dtx b/macros/latex/contrib/tagpdf/tagpdf-mc-generic.dtx index 2db0da56b9..af4af64e7d 100644 --- a/macros/latex/contrib/tagpdf/tagpdf-mc-generic.dtx +++ b/macros/latex/contrib/tagpdf/tagpdf-mc-generic.dtx @@ -46,7 +46,7 @@ % }^^A % } % -% \date{Version 0.99h, released 2024-11-18} +% \date{Version 0.99i, released 2024-11-19} % \maketitle % \begin{documentation} % \end{documentation} @@ -55,11 +55,11 @@ % \begin{macrocode} %<@@=tag> %<*generic> -\ProvidesExplPackage {tagpdf-mc-code-generic} {2024-11-18} {0.99h} +\ProvidesExplPackage {tagpdf-mc-code-generic} {2024-11-19} {0.99i} {part of tagpdf - code related to marking chunks - generic mode} %</generic> %<*debug> -\ProvidesExplPackage {tagpdf-debug-generic} {2024-11-18} {0.99h} +\ProvidesExplPackage {tagpdf-debug-generic} {2024-11-19} {0.99i} {part of tagpdf - debugging code related to marking chunks - generic mode} %</debug> % \end{macrocode} diff --git a/macros/latex/contrib/tagpdf/tagpdf-mc-luacode.dtx b/macros/latex/contrib/tagpdf/tagpdf-mc-luacode.dtx index a053bf89fe..afa172fc6d 100644 --- a/macros/latex/contrib/tagpdf/tagpdf-mc-luacode.dtx +++ b/macros/latex/contrib/tagpdf/tagpdf-mc-luacode.dtx @@ -46,7 +46,7 @@ % }^^A % } % -% \date{Version 0.99h, released 2024-11-18} +% \date{Version 0.99i, released 2024-11-19} % \maketitle % \begin{implementation} % The code is split into three parts: code shared by all engines, @@ -86,11 +86,11 @@ % \begin{macrocode} %<@@=tag> %<*luamode> -\ProvidesExplPackage {tagpdf-mc-code-lua} {2024-11-18} {0.99h} +\ProvidesExplPackage {tagpdf-mc-code-lua} {2024-11-19} {0.99i} {tagpdf - mc code only for the luamode } %</luamode> %<*debug> -\ProvidesExplPackage {tagpdf-debug-lua} {2024-11-18} {0.99h} +\ProvidesExplPackage {tagpdf-debug-lua} {2024-11-19} {0.99i} {part of tagpdf - debugging code related to marking chunks - lua mode} %</debug> % \end{macrocode} diff --git a/macros/latex/contrib/tagpdf/tagpdf-mc-shared.dtx b/macros/latex/contrib/tagpdf/tagpdf-mc-shared.dtx index 6600a59a90..1d97b75afc 100644 --- a/macros/latex/contrib/tagpdf/tagpdf-mc-shared.dtx +++ b/macros/latex/contrib/tagpdf/tagpdf-mc-shared.dtx @@ -46,7 +46,7 @@ % }^^A % } % -% \date{Version 0.99h, released 2024-11-18} +% \date{Version 0.99i, released 2024-11-19} % \maketitle % \begin{documentation} % \section{Public Commands} @@ -207,7 +207,7 @@ % \begin{macrocode} %<@@=tag> %<*header> -\ProvidesExplPackage {tagpdf-mc-code-shared} {2024-11-18} {0.99h} +\ProvidesExplPackage {tagpdf-mc-code-shared} {2024-11-19} {0.99i} {part of tagpdf - code related to marking chunks - code shared by generic and luamode } %</header> diff --git a/macros/latex/contrib/tagpdf/tagpdf-roles.dtx b/macros/latex/contrib/tagpdf/tagpdf-roles.dtx index 54810d3767..824a47b554 100644 --- a/macros/latex/contrib/tagpdf/tagpdf-roles.dtx +++ b/macros/latex/contrib/tagpdf/tagpdf-roles.dtx @@ -46,7 +46,7 @@ % }^^A % } % -% \date{Version 0.99h, released 2024-11-18} +% \date{Version 0.99i, released 2024-11-19} % \maketitle % \begin{documentation} % \begin{function} @@ -98,7 +98,7 @@ % \begin{macrocode} %<@@=tag> %<*header> -\ProvidesExplPackage {tagpdf-roles-code} {2024-11-18} {0.99h} +\ProvidesExplPackage {tagpdf-roles-code} {2024-11-19} {0.99i} {part of tagpdf - code related to roles and structure names} %</header> % \end{macrocode} diff --git a/macros/latex/contrib/tagpdf/tagpdf-space.dtx b/macros/latex/contrib/tagpdf/tagpdf-space.dtx index 378da69236..3250afc7e9 100644 --- a/macros/latex/contrib/tagpdf/tagpdf-space.dtx +++ b/macros/latex/contrib/tagpdf/tagpdf-space.dtx @@ -46,7 +46,7 @@ % }^^A % } % -% \date{Version 0.99h, released 2024-11-18} +% \date{Version 0.99i, released 2024-11-19} % \maketitle % \begin{documentation} % \begin{function}{activate/space (setup-key),interwordspace (deprecated)} @@ -66,7 +66,7 @@ % \begin{macrocode} %<@@=tag> %<*header> -\ProvidesExplPackage {tagpdf-space-code} {2024-11-18} {0.99h} +\ProvidesExplPackage {tagpdf-space-code} {2024-11-19} {0.99i} {part of tagpdf - code related to real space chars} %</header> % \end{macrocode} diff --git a/macros/latex/contrib/tagpdf/tagpdf-struct.dtx b/macros/latex/contrib/tagpdf/tagpdf-struct.dtx index 7be584e968..01abad65e3 100644 --- a/macros/latex/contrib/tagpdf/tagpdf-struct.dtx +++ b/macros/latex/contrib/tagpdf/tagpdf-struct.dtx @@ -47,7 +47,7 @@ % }^^A % } % -% \date{Version 0.99h, released 2024-11-18} +% \date{Version 0.99i, released 2024-11-19} % \maketitle % \begin{documentation} % \section{Public Commands} @@ -308,7 +308,7 @@ % \begin{macrocode} %<@@=tag> %<*header> -\ProvidesExplPackage {tagpdf-struct-code} {2024-11-18} {0.99h} +\ProvidesExplPackage {tagpdf-struct-code} {2024-11-19} {0.99i} {part of tagpdf - code related to storing structure} %</header> % \end{macrocode} @@ -2118,7 +2118,7 @@ % \section{Attributes and attribute classes} % \begin{macrocode} %<*header> -\ProvidesExplPackage {tagpdf-attr-code} {2024-11-18} {0.99h} +\ProvidesExplPackage {tagpdf-attr-code} {2024-11-19} {0.99i} {part of tagpdf - code related to attributes and attribute classes} %</header> % \end{macrocode} diff --git a/macros/latex/contrib/tagpdf/tagpdf-tree.dtx b/macros/latex/contrib/tagpdf/tagpdf-tree.dtx index 566e9b52ff..3ca9b60adc 100644 --- a/macros/latex/contrib/tagpdf/tagpdf-tree.dtx +++ b/macros/latex/contrib/tagpdf/tagpdf-tree.dtx @@ -47,13 +47,13 @@ % }^^A % } % -% \date{Version 0.99h, released 2024-11-18} +% \date{Version 0.99i, released 2024-11-19} % \maketitle % \begin{implementation} % \begin{macrocode} %<@@=tag> %<*header> -\ProvidesExplPackage {tagpdf-tree-code} {2024-11-18} {0.99h} +\ProvidesExplPackage {tagpdf-tree-code} {2024-11-19} {0.99i} {part of tagpdf - code related to writing trees and dictionaries to the pdf} %</header> % \end{macrocode} diff --git a/macros/latex/contrib/tagpdf/tagpdf-user.dtx b/macros/latex/contrib/tagpdf/tagpdf-user.dtx index 49923b594b..8fb9769dec 100644 --- a/macros/latex/contrib/tagpdf/tagpdf-user.dtx +++ b/macros/latex/contrib/tagpdf/tagpdf-user.dtx @@ -47,7 +47,7 @@ % }^^A % } % -% \date{Version 0.99h, released 2024-11-18} +% \date{Version 0.99i, released 2024-11-19} % \maketitle % \begin{documentation} % \section{Setup commands} @@ -262,11 +262,11 @@ % % \section{Socket support} % -% \begin{function}{\tag_socket_use:n,\tag_socket_use:nn,\UseTaggingSocket} +% \begin{function}{\tag_socket_use:n,\tag_socket_use:nnn,\UseTaggingSocket} % \begin{syntax} % \cs{tag_socket_use:n} \Arg{socket name}\\ % \cs{tag_socket_use:nn} \Arg{socket name} \Arg{socket argument}\\ -% \cs{tag_socket_use:nn} \Arg{socket name} \Arg{socket argument} \Arg{socket argument}\\ +% \cs{tag_socket_use:nnn} \Arg{socket name} \Arg{socket argument} \Arg{socket argument}\\ % \cs{tag_socket_use_expandable:n} \Arg{socket name}\\ % \cs{UseTaggingSocket} \Arg{socket name} \\ % \cs{UseTaggingSocket} \Arg{socket name} \Arg{socket argument}\\ @@ -322,7 +322,7 @@ % \begin{macrocode} %<@@=tag> %<*header> -\ProvidesExplPackage {tagpdf-user} {2024-11-18} {0.99h} +\ProvidesExplPackage {tagpdf-user} {2024-11-19} {0.99i} {tagpdf - user commands} %</header> % \end{macrocode} @@ -458,8 +458,9 @@ % \begin{macrocode} \cs_set_protected:Npn \tag_socket_use:nnn #1#2#3 { - \bool_if:NT \l_@@_active_socket_bool - { \socket_use:nnn {tagsupport/#1} {#2} {#3} } + \bool_if:NTF \l_@@_active_socket_bool + { \socket_use:nnn {tagsupport/#1} {#2} {#3} } + { #3 } } % \end{macrocode} % \begin{macrocode} diff --git a/macros/latex/contrib/tagpdf/tagpdf.dtx b/macros/latex/contrib/tagpdf/tagpdf.dtx index 931432a174..2135b686ca 100644 --- a/macros/latex/contrib/tagpdf/tagpdf.dtx +++ b/macros/latex/contrib/tagpdf/tagpdf.dtx @@ -47,7 +47,7 @@ % }^^A % } % -% \date{Version 0.99h, released 2024-11-18} +% \date{Version 0.99i, released 2024-11-19} % \maketitle% % % \begin{documentation} @@ -153,7 +153,7 @@ % \begin{macrocode} %<@@=tag> %<*package> -\ProvidesExplPackage {tagpdf} {2024-11-18} {0.99h} +\ProvidesExplPackage {tagpdf} {2024-11-19} {0.99i} { LaTeX kernel code for PDF tagging } \bool_if:nF @@ -179,7 +179,7 @@ % \end{macrocode} %<*debug> % \begin{macrocode} -\ProvidesExplPackage {tagpdf-debug} {2024-11-18} {0.99h} +\ProvidesExplPackage {tagpdf-debug} {2024-11-19} {0.99i} { debug code for tagpdf } \@ifpackageloaded{tagpdf}{}{\PackageWarning{tagpdf-debug}{tagpdf~not~loaded,~quitting}\endinput} % \end{macrocode} @@ -202,7 +202,7 @@ % we define a base package with dummy functions % \begin{macrocode} %<*base> -\ProvidesExplPackage {tagpdf-base} {2024-11-18} {0.99h} +\ProvidesExplPackage {tagpdf-base} {2024-11-19} {0.99i} {part of tagpdf - provide base, no-op versions of the user commands } %</base> % \end{macrocode} diff --git a/macros/latex/contrib/tagpdf/tagpdf.pdf b/macros/latex/contrib/tagpdf/tagpdf.pdf Binary files differindex 7c3ff4c613..152728f415 100644 --- a/macros/latex/contrib/tagpdf/tagpdf.pdf +++ b/macros/latex/contrib/tagpdf/tagpdf.pdf diff --git a/macros/latex/contrib/tagpdf/tagpdf.tex b/macros/latex/contrib/tagpdf/tagpdf.tex index 1c77cb7b7d..acd71a5bcf 100644 --- a/macros/latex/contrib/tagpdf/tagpdf.tex +++ b/macros/latex/contrib/tagpdf/tagpdf.tex @@ -16,8 +16,8 @@ } \DebugBlocksOff \makeatletter -\def\UlrikeFischer@package@version{0.99h} -\def\UlrikeFischer@package@date{2024-11-18} +\def\UlrikeFischer@package@version{0.99i} +\def\UlrikeFischer@package@date{2024-11-19} \makeatother \documentclass[bibliography=totoc,a4paper]{article} diff --git a/macros/latex/contrib/tagpdf/tagpdfdocu-patches.sty b/macros/latex/contrib/tagpdf/tagpdfdocu-patches.sty index 565db4c166..a458a88254 100644 --- a/macros/latex/contrib/tagpdf/tagpdfdocu-patches.sty +++ b/macros/latex/contrib/tagpdf/tagpdfdocu-patches.sty @@ -1,5 +1,5 @@ %\RequirePackage[enable-debug]{expl3}[2018/06/14] -\ProvidesExplPackage {tagpdfdocu-patches} {2024-11-18} {0.99h} +\ProvidesExplPackage {tagpdfdocu-patches} {2024-11-19} {0.99i} {patches/commands for the tagpdf documentation} \RequirePackage{etoolbox,xpatch} diff --git a/macros/xetex/latex/hduthesis/doc/hduthesis.pdf b/macros/xetex/latex/hduthesis/doc/hduthesis.pdf Binary files differindex d3e6fc83f9..782faa2bf9 100644 --- a/macros/xetex/latex/hduthesis/doc/hduthesis.pdf +++ b/macros/xetex/latex/hduthesis/doc/hduthesis.pdf diff --git a/macros/xetex/latex/hduthesis/doc/hduthesis.tex b/macros/xetex/latex/hduthesis/doc/hduthesis.tex index 0d59a53550..36b9642248 100644 --- a/macros/xetex/latex/hduthesis/doc/hduthesis.tex +++ b/macros/xetex/latex/hduthesis/doc/hduthesis.tex @@ -1,84 +1,48 @@ -\documentclass[11pt,letterpaper]{l3doc} - -\hypersetup{urlcolor = teal, filecolor = violet} -\hologoFontSetup{general = \sffamily} -\usepackage[mono = false]{libertine} -\usepackage{geometry,framed,xeCJKfntef,tikz,pdfpages,subcaption,fadingimage} -\setlength{\oddsidemargin}{63pt}\setlength{\evensidemargin}{63pt} -\FrameSep = 0pt -\usepackage[os = mac]{menukeys} -\AddToHook{env/function/before}{\vspace{-.3\baselineskip}} -\AddToHook{env/syntax/after}{\vspace{-.2\baselineskip}} -\usepackage{datetime}\yyyymmdddate -\usepackage[fontset = none, scheme = plain]{ctex}\linespread{1.5} -\setCJKmainfont[AutoFakeSlant]{Songti SC} -\setCJKsansfont[BoldFont = Hei, AutoFakeSlant]{Heiti SC} -\setCJKmonofont[AutoFakeSlant]{LXGW WenKai Mono} -\renewcommand{\emph}[1]{\CJKsout*[thickness=2.5ex, format=\color{blue!15}]{#1}} -\makeatletter -\def\HoLogo@hduthesis#1{% - \kern -1.3ex\raisebox{-.5pt} - { - \HOLOGO@mbox - { - \tikz[baseline = (hduthesis.base)] - { - \node [ inner sep = 0pt ] (hduthesis) - {\textsc{\cls{hduThesi\scalebox{1.2}[1.2]{S}}}}; - \draw - let \p1 = (hduthesis.west), \p2 = (hduthesis.east) - in (\x1,\y1) (\x2,\y2) - [line width = {.028pt*(\x2 - \x1)}] - ([yshift = -.5ex]hduthesis.north west) to[bend right = 5] - ([yshift = .25ex]hduthesis.north east); - } - } - }\kern -1.3ex - } -\makeatother - -\title{\bfseries The \hologo{hduthesis} Class\\\hologo{LaTeX} Thesis Template for Hangzhou Dianzi University} -\author -{ - Mingyu Xia \texttt{<\href{mailto:xiamyphys@gmail.com}{xiamyphys@hdu.edu.cn}>} - \footnote - { School of Sciences, Physics Department, Graduate in 06/2025 (expected) } -} -\date{v0.3.1\footnote{\url{https://github.com/xiamyphys/hduthesis}} ~(\today)} +\documentclass[11pt]{hduthesisdoc} + +\DocInfo + { + title = The \hologo{hduthesis} Class\\ + \hologo{LaTeX} Thesis Template for Hangzhou Dianzi University, + author = Mingyu Xia \mailto{xiamyphys@hdu.edu.cn} + \footnote{Physics Department, Graduate in 06/2025 (expected)}, + version = v0.3.2, + CJKmain-font = {[AutoFakeSlant]{Songti SC}}, + CJKsans-font = {[BoldFont = Hei, AutoFakeSlant]{Heiti SC}}, + CJKmono-font = {[AutoFakeSlant]{LXGW WenKai Mono}} + } \begin{document} -\begin{titlepage} - \newgeometry{margin = 1in} - \maketitle - \begin{center} - \tikz - { - \node [ opacity = .8 ] - { \includegraphics[width = .15\paperwidth]{hdumotto.pdf} }; - \node [ opacity = .3 ] - { \includegraphics[width = .2\paperwidth]{hdulogo.pdf} }; - } - \end{center} - \begin{abstract} - \hologo{hduthesis} 是杭州电子科技大学毕业论文 \hologo{LaTeX}模板,支持学士和硕士学位论文排版. - \vspace*{1em} - \begin{center} - \small\bfseries User Agreement - \end{center} - \begin{enumerate} - \item 本模板通过 LPPL 1.3c 协议开放源代码,您可以随意使用编译出的 PDF 文件. - \item 本模板根据杭州电子科技大学教务处颁发的 \href{https://jwc.hdu.edu.cn/2022/0428/c4528a153813/page.htm}{杭电理工类毕业论文写作规范} 编写而成. 作者不对使用本模板产生的格式审查问题负责. \emph{如果您所在的学院因论文查重、收录等原因要求提交 \file{.docx} 格式,不接收 \file{.pdf} 论文稿件,请勿执意使用本模板,避免因格式转换带来不必要的麻烦.} 使用本模板时,请按编译错误提示操作来勾选同意用户协议. - \item 欢迎前往 GitHub 提交反馈意见,为推动学校认证与规范化 \hologo{hduthesis} 贡献力量. - \end{enumerate} - \end{abstract} - \thispagestyle{empty} -\end{titlepage} +\maketitle + +\begin{abstract} + \hologo{hduthesis} 是杭州电子科技大学毕业论文 \hologo{LaTeX}模板,支持学士和硕士学位论文排版. +\end{abstract} +\begin{center} + \small\bfseries User Agreement +\end{center} +\begin{enumerate} + \item 本模板通过 LPPL 1.3c 协议开放源代码,您可以随意使用编译出的 PDF 文件. + \item 本模板根据杭州电子科技大学教务处颁发的 \href{https://jwc.hdu.edu.cn/2022/0428/c4528a153813/page.htm}{杭电理工类毕业论文写作规范} 编写而成. 作者不对使用本模板产生的格式审查问题负责. \emph{如果您所在的学院因论文查重、收录等原因要求提交 \file{.docx} 格式,不接收 \file{.pdf} 论文稿件,请勿执意使用本模板,避免因格式转换带来不必要的麻烦.} 使用本模板时,请按编译错误提示操作来勾选同意用户协议. + \item 欢迎前往 GitHub 提交反馈意见,为推动学校认证与规范化 \hologo{hduthesis} 贡献力量. +\end{enumerate} +\thispagestyle{empty} +\endtitlepage \restoregeometry -\section{Introduction: Why ``\hologo{hduthesis}''?} +\section{Introduction \& Loading \hologo{hduthesis}} -本模板被命名为\hologo{hduthesis},奇怪的大小写方式诠释了HDU校门——亚洲第二大门! +本模板为杭州电子科技大学学位论文 \underline{非官方} \hologo{LaTeX} 模板, +支持学士和硕士学位论文排版. 加载 \hologo{hduthesis} 时遇到``编译受阻''报错, +请认真阅读上页的用户协议. 键入全局选项 \cmd{agreed} 后, +方可顺利进行编译,并默认您已同意用户协议. + +\begin{framed} + \begin{verbatim} + \documentclass [ agreed, ... ] { hduthesis } + \end{verbatim} +\end{framed} \section{Generate the Cover} @@ -87,23 +51,21 @@ \cs{DocInfo}\marg{keyvals} \end{syntax} - 此命令接收键值,用于设置文档信息. 键 \keys{\cmdmac~title} 用于设置论文标题,键 \keys{\cmdmac~department} 用于设置学院,键 \keys{\cmdmac~major} 用于设置专业,键 \keys{\cmdmac~class} 用于设置班级,键 \keys{\cmdmac~stdntid} 用于设置学号,键 \keys{\cmdmac~author} 用于设置作者,键 \keys{\cmdmac~supervisor} 用于设置导师,键 \keys{\cmdmac~bibsource} 用于设置插入参考文献文件源. 命令会根据输入的学号自动判断使用者为本科生/研究生 \footnote{杭州电子科技大学本科生学号为8位,研究生学号为9位.}. + 此命令接收键值,用于设置文档信息. 键 \keys{\cmdmac~title} 用于设置论文标题,键 \keys{\cmdmac~department} 用于设置学院,键 \keys{\cmdmac~major} 用于设置专业,键 \keys{\cmdmac~class} 用于设置班级,键 \keys{\cmdmac~stdntid} 用于设置学号,键 \keys{\cmdmac~author} 用于设置作者,键 \keys{\cmdmac~supervisor} 用于设置导师,键 \keys{\cmdmac~bibsource} 用于设置插入参考文献文件源. 命令会根据输入的学号自动判断使用者为本科生/研究生. 命令 \cs{DocInfo} 需在导言区中执行. 完成文档信息输入后,在 \verb|\begin{document}| 后执行命令 \cs{maketitle} 会调用所设置的键值自动生成 \emph{论文封面} 和 \emph{诚信承诺书}. \end{function} -本科生输入样例如下. 需要使用键 \keys{\cmdmac~title} 设置类型为毕业设计/毕业论文,使用斜线 (/) 分隔,如 \cmd{title = 杭州电子科技大学学位论文 \hologo{LaTeX} 模板/毕业论文}. 如果未指定类型,则默认采用毕业设计版式. +本科生输入样例如下. 需要使用键 \keys{\cmdmac~title} 设置类型为毕业设计/毕业论文,使用斜线 (/) 分隔,如 \cmd{title = 杭州电子科技大学学位论文 \hologo{LaTeX} 模板/毕业论文}. \begin{framed} \begin{verbatim} - \documentclass { hduthesis } \DocInfo { title = 杭州电子科技大学学位论文 \hologo{LaTeX} 模板/毕业论文, department = 理学院, major = 物理学, stdntid = 21668668, author = 申智能, supervisor = 李智能, bibsource = reference } - \begin{document} \maketitle ... \end{document} \end{verbatim} \end{framed} @@ -113,7 +75,7 @@ [ angle = -90, nup = 1x2, frame, linktodoc, scale = 0.96, delta = 0 .25in ] { /Users/xiamyphys/Desktop/LaTeXer/hduthesis/examples/hduthesis-bc.pdf, 1-2 } -研究生输入样例如下. 依学校要求,硕士学位论文扉页需同时有英文版. 因此需要在键 \keys{\cmdmac~title} \keys{\cmdmac~author} \keys{\cmdmac~supervisor} 中分别输入中文和英文信息,使用斜线 (/) 分隔. 如作者中文姓名为 \cmd{申智能},英文姓名为 \cmd{SAN Chi Nan},则键值输入格式为 \cmd{author = 申智能/SAN Chi Nan}. +研究生输入样例如下. 硕士学位论文扉页需同时有英文版,因此需要在键 \keys{\cmdmac~title} \keys{\cmdmac~author} \keys{\cmdmac~supervisor} 中分别输入中文和英文信息,使用斜线 (/) 分隔. 如作者中文姓名为 \cmd{申智能},英文姓名为 \cmd{SAN Chi Nan},则键值输入格式为 \cmd{author = 申智能/SAN Chi Nan}. \begin{framed} \begin{verbatim} @@ -160,7 +122,7 @@ \end{verbatim} \end{framed} -通过命令 \cs{keywords} 以半角逗号 (,) 为分隔输入关键词列表,输出时会根据所处 \env{abstract} 环境选择的语言不同,自动以半 / 全角分号分隔. 下图为生成的中/英摘要样例,可在终端执行 \cmd{texdoc hduthesis-pg} 获取此样例文件. +通过命令 \cs{keywords} 以半角逗号 (,) 为分隔输入关键词列表,输出时会根据所处 \env{abstract} 环境选择的语言不同,自动以半 / 全角分号分隔. 下图为生成的中/英摘要样例,可在终端执行 \cmd{texdoc hduthesis-bc} 获取此样例文件. \begin{figure}[htbp] \centering diff --git a/macros/xetex/latex/hduthesis/examples/cha/cha4.tex b/macros/xetex/latex/hduthesis/examples/cha/cha4.tex index 47432b7968..b9fff1e848 100644 --- a/macros/xetex/latex/hduthesis/examples/cha/cha4.tex +++ b/macros/xetex/latex/hduthesis/examples/cha/cha4.tex @@ -73,7 +73,6 @@ $R_3$和$R_7$为输入匹配电阻。 v_-=v_o\frac{R_1}{R_1+R_f} \end{equation} 因而,放大器的增益: - \begin{equation} A_{Vf}=\frac{v_o}{v_s}=\frac{R_1+R_f}{R_1}=1+\frac{R_f}{R_1} \end{equation} @@ -128,7 +127,7 @@ $R_3$和$R_7$为输入匹配电阻。 \begin{figure}[htbp] \centering \includegraphics[width = .65\linewidth]{image-0284} - \caption{施密特触发器的电压传输特性 (a) 同相输出;(b) 反相输出} + \caption{施密特触发器的电压传输特性\quad (a) 同相输出;(b) 反相输出} \label{4-4} \end{figure} @@ -152,7 +151,7 @@ $R_3$和$R_7$为输入匹配电阻。 \begin{figure}[htbp] \centering - \includegraphics[width = .96\linewidth]{image-0289} + \includegraphics[width = .93\linewidth]{image-0289} \caption{40-6 优先编码器电路图} \label{4-6} \end{figure} @@ -245,7 +244,7 @@ $R_3$和$R_7$为输入匹配电阻。 \begin{figure}[htbp] \centering - \includegraphics[width = .86\linewidth]{image-0419} + \includegraphics[width = .9\linewidth]{image-0419} \caption{2051 单片机及其外围电路图}\label{4-8} \end{figure} diff --git a/macros/xetex/latex/hduthesis/examples/cha/cha5.tex b/macros/xetex/latex/hduthesis/examples/cha/cha5.tex index 875625017e..9d2e255e86 100644 --- a/macros/xetex/latex/hduthesis/examples/cha/cha5.tex +++ b/macros/xetex/latex/hduthesis/examples/cha/cha5.tex @@ -8,19 +8,17 @@ \section{程序流图} -\begin{figure}[htbp] +\begin{figure}[!ht] \centering \begin{tikzpicture} - [ - every node/.style = { font = {\small}, minimum height = 3em} - ] - \node [draw, rectangle, minimum width = 12em, minimum height = 2em] (a) at (0,0) {初始参数设置}; - \node [draw, rectangle, minimum width = 10em, rounded corners = 1.2em, below = of a] (b) {等待中断}; + [ every node/.style = { font = \small, minimum height = 2.5em } ] + \node [draw, rectangle, minimum width = 11em, minimum height = 2em] (a) at (0,0) {初始参数设置}; + \node [draw, rectangle, minimum width = 11em, rounded corners = 1.2em, below = of a] (b) {等待中断}; \node [draw, rectangle, minimum width = 11em, diamond, aspect=3, below = of b] (c) {中断服务程}; \node [draw, rectangle, minimum width = 11em, diamond, aspect=3, below = of c, yshift = 2ex] (d) {读取 P1 口值}; - \node [draw, rectangle, minimum width = 8em, rectangle, below = of d, minimum height = 2em] (e) {发送数据帧}; + \node [draw, rectangle, minimum width = 11em, rectangle, below = of d, minimum height = 2em] (e) {发送数据帧}; \node [draw, rectangle, minimum width = 11em, diamond, aspect=3, below = of e] (f) {延时$\qty{200}\ms$}; - \node [draw, rectangle, minimum width = 8em, rectangle, below = of f, minimum height = 2em, yshift = 2ex] (g) {清中断标志}; + \node [draw, rectangle, minimum width = 11em, rectangle, below = of f, minimum height = 2em, yshift = 2ex] (g) {清中断标志}; \node [draw, rectangle, minimum width = 10em, rounded corners = 1.2em, below = of g] (h) {中断返回}; \draw [->] (a.south) -- (b.north); \draw [->] (b.south) -- (c.north); @@ -35,7 +33,6 @@ \label{5-1} \end{figure} -\vspace*{-1.5em} \section{模块说明} \begin{enumerate} diff --git a/macros/xetex/latex/hduthesis/examples/hduthesis-bc.pdf b/macros/xetex/latex/hduthesis/examples/hduthesis-bc.pdf Binary files differindex 7d7e7a65c5..c560308a1e 100644 --- a/macros/xetex/latex/hduthesis/examples/hduthesis-bc.pdf +++ b/macros/xetex/latex/hduthesis/examples/hduthesis-bc.pdf diff --git a/macros/xetex/latex/hduthesis/examples/hduthesis-bc.tex b/macros/xetex/latex/hduthesis/examples/hduthesis-bc.tex index 28785c8877..381047a948 100644 --- a/macros/xetex/latex/hduthesis/examples/hduthesis-bc.tex +++ b/macros/xetex/latex/hduthesis/examples/hduthesis-bc.tex @@ -1,14 +1,15 @@ -\documentclass[I-agree]{hduthesis} - -\setmathfont{STIX Two Math} -\setCJKmainfont{Songti SC}[AutoFakeSlant] -\setCJKsansfont{STHeiti}[AutoFakeBold = 2] +\documentclass + [ + math-font = STIX Two Math, agreed, + CJKmain-font = { {Songti SC}[AutoFakeSlant] }, + CJKsans-font = { {STHeiti}[AutoFakeBold = 2] } + ] {hduthesis} \tikzset{ > = stealth } \usetikzlibrary{positioning,shapes.geometric} \DocInfo { - title = 杭州电子科技大学学位论文 \hologo{LaTeX} 模板/毕业论文, + title = 杭州电子科技大学学位论文 \hologo{LaTeX} 模板/毕业设计, department = 理学院, major = 物理学, class = 英才班, diff --git a/macros/xetex/latex/hduthesis/examples/hduthesis-pg.pdf b/macros/xetex/latex/hduthesis/examples/hduthesis-pg.pdf Binary files differindex 680d666616..30a01017bd 100644 --- a/macros/xetex/latex/hduthesis/examples/hduthesis-pg.pdf +++ b/macros/xetex/latex/hduthesis/examples/hduthesis-pg.pdf diff --git a/macros/xetex/latex/hduthesis/examples/hduthesis-pg.tex b/macros/xetex/latex/hduthesis/examples/hduthesis-pg.tex index 010e1f7cbf..d60d8fc9ae 100644 --- a/macros/xetex/latex/hduthesis/examples/hduthesis-pg.tex +++ b/macros/xetex/latex/hduthesis/examples/hduthesis-pg.tex @@ -1,8 +1,10 @@ -\documentclass[I-agree]{hduthesis} +\documentclass + [ + math-font = STIX Two Math, agreed, + CJKmain-font = { {Songti SC}[AutoFakeSlant] }, + CJKsans-font = { {STHeiti}[AutoFakeBold = 2] } + ] {hduthesis} -\setmathfont{STIX Two Math} -\setCJKmainfont{Songti SC}[AutoFakeSlant] -\setCJKsansfont{STHeiti}[AutoFakeBold = 2] \tikzset{ > = stealth } \usetikzlibrary{positioning,shapes.geometric} @@ -35,7 +37,7 @@ \end{abstract} \begin{abstract}[en] - \setstretch{1.3} + \setstretch{1.35} Design patterns are widely used to address the recurring design problems during the process of software design and development. The information about design patterns used in software source code-design pattern instances reveal much about the high-level abstract design ideas. Accurately identifying and detecting design pattern instances in a software system can help developers and maintainers to understand its original design and implementation, facilitating maintenance, update and re-development. In recent years, many approaches have been proposed to automatically or semi-automatically detecting design pattern instances from software source code. Among these approaches, some approaches transform software source code and design patterns into certain graphs, and then exploit subgraph isomorphism techniques to detect design pattern instances. However, as mining isomorphic subgraphs is an NP-complete problem, those approaches usually fail to achieve satisfactory efficiency. diff --git a/macros/xetex/latex/hduthesis/tex/hduthesis-bc.layout-module.code.tex b/macros/xetex/latex/hduthesis/tex/hduthesis-bc.layout-module.code.tex index 38199e6763..b9e5952086 100644 --- a/macros/xetex/latex/hduthesis/tex/hduthesis-bc.layout-module.code.tex +++ b/macros/xetex/latex/hduthesis/tex/hduthesis-bc.layout-module.code.tex @@ -1,16 +1,11 @@ +\ExplSyntaxOn \makeatletter \hduthesis_provide_module:n {bc.layout} -\makeatletter \geometry { top = 3.25cm, bottom = 2.4cm, left = 4cm, right = 2cm, headheight = 15pt, headsep = .72cm } -\tl_if_eq:NnTF \l__docinfo_entitle_tl {毕业设计} -{ \chead{\raisebox{.12ex}{\small 杭州电子科技大学本科毕业设计}} } -{ - \tl_if_eq:NnTF - \l__docinfo_entitle_tl {毕业论文} - { \chead{\raisebox{.12ex}{\small 杭州电子科技大学本科毕业论文}} } - { \chead{\raisebox{.12ex}{\small 杭州电子科技大学本科毕业设计}} } -}\lhead{}\rhead{} +\chead + { \raisebox { .12ex } { \small 杭州电子科技大学本科 \l__docinfo_entitle_tl } } +\lhead{}\rhead{} \int_new:N \l__hduthesis_grade_int \int_set:Nn \l__hduthesis_grade_int @@ -21,20 +16,16 @@ \cs_new_protected_nopar:Nn \__hduthesis_cover_bc_aux: { \begin{center} - \vspace*{1.8\baselineskip} + \vspace*{36\p@} \includegraphics{hdubadge} - \par\vspace*{2\baselineskip} + \par \vspace*{36\p@} \scalebox{3.2} { - \tl_if_eq:NnTF - \l__docinfo_entitle_tl {毕业设计} - { \textbf { \l_spread_box:nn {.191\paperwidth} {本科毕业设计} }} - { - \tl_if_eq:NnTF - \l__docinfo_entitle_tl {毕业论文} - { \textbf { \l_spread_box:nn {.191\paperwidth} {本科毕业论文} }} - { \textbf { \l_spread_box:nn {.191\paperwidth} {本科毕业设计} }} - } + \textbf + { + \exp_args:Nne \l_spread_box:nn + { .191\paperwidth } { 本科 \l__docinfo_entitle_tl } + } } \par\vspace*{1.3\baselineskip} { @@ -48,25 +39,25 @@ } 题\qquad 目 & \l_center_box:nn { .95\linewidth } - { \l__docinfo_cntitle_tl }\\[5.4ex] + { \l__docinfo_cntitle_tl }\\[5.2ex] 学\qquad 院 & \l_center_box:nn { .95\linewidth } - { \l__docinfo_department_tl }\\[5.4ex] + { \l__docinfo_department_tl }\\[5.2ex] 专\qquad 业 & \l_center_box:nn { .95\linewidth } - { \l__docinfo_major_tl }\\[5.4ex] + { \l__docinfo_major_tl }\\[5.2ex] 班\qquad 级 & \l_center_box:nn { .95\linewidth } - { \l__docinfo_class_tl }\\[5.4ex] + { \l__docinfo_class_tl }\\[5.2ex] 学\qquad 号 & \l_center_box:nn { .95\linewidth } - { \l__docinfo_stdntid_tl }\\[5.4ex] + { \l__docinfo_stdntid_tl }\\[5.2ex] 学生姓名 & \l_center_box:nn { .95\linewidth } - { \l__docinfo_cnauthor_tl }\\[5.4ex] + { \l__docinfo_cnauthor_tl }\\[5.2ex] 指导教师 & \l_center_box:nn { .95\linewidth } - { \l__docinfo_cnsupervisor_tl }\\[5.4ex] + { \l__docinfo_cnsupervisor_tl }\\[5.2ex] 完成日期 & \l_center_box:nn { .95\linewidth } { @@ -79,13 +70,13 @@ \cs_new_protected_nopar:Nn \__hduthesis_promise_bc_aux: { - \vspace*{3.5\baselineskip} + \vspace*{70\p@} \begin{center} - \@beginparpenalty\@lowpenalty - \Large\textsf{\bfseries \l_spread_box:nn {6\ccwd}{诚信承诺}} - \@endparpenalty\@M + \@beginparpenalty \@lowpenalty + \Large \textsf{\bfseries \l_spread_box:nn {6\ccwd}{诚信承诺}} + \@endparpenalty \@M \end{center} - \vspace*{.6\baselineskip}\par + \vspace*{.5\baselineskip} \par \linespread{2.1} {\semilarge 我谨在此承诺:本人所写的毕业论文《\l__docinfo_cntitle_tl》均系本人独立完成, @@ -93,13 +84,13 @@ \par\vspace*{\baselineskip} \bfseries\sffamily \hskip.48\linewidth 承诺人(签名): \vspace*{.5\baselineskip}\par - \hskip \dim_eval:n{.48\linewidth+2em} 年\qquad 月\qquad 日 + \hskip \dim_eval:n{ .48\linewidth + 2em } 年\qquad 月\qquad 日 } } \RenewDocumentCommand \maketitle {} { - \newgeometry{left = 4cm, right = 2cm, top = 1cm, bottom = 1cm} + \newgeometry{ left = 4cm, right = 2cm, top = 3cm, bottom = 1cm } \begin{titlepage} \__hduthesis_cover_bc_aux: \end{titlepage} @@ -143,43 +134,40 @@ \hook_gput_code:nnn { cmd/tableofcontents/after } { . } { \thispagestyle{fancy} } \RequirePackage{tocloft} -\renewcommand{\contentsname}{\hfill 目 \qquad 录 \hfill} -\renewcommand \cfttoctitlefont{\sffamily\large} +\renewcommand \contentsname {\hfill 目 \qquad 录 \hfill} +\renewcommand \cfttoctitlefont {\sffamily\semiLarge} \dim_set:Nn \cftbeforetoctitleskip {3pt} \dim_set:Nn \cftaftertoctitleskip {24pt} \dim_set:Nn \cftbeforechapskip {1pt} \dim_set:Nn \cftbeforesecskip {-.2pt} -\renewcommand*\l@chapter{\@dottedtocline{1}{0em}{1.6em}} -\renewcommand*\l@section{\@dottedtocline{1}{2.3em}{2.1em}} -\renewcommand*{\@dotsep}{1.7} -\renewcommand*{\@pnumwidth}{2.5ex} -\renewcommand{\cftchapfont}{\normalfont} +\renewcommand*\l@chapter {\@dottedtocline{1}{0em}{1.6em}} +\renewcommand*\l@section {\@dottedtocline{1}{2.3em}{2.1em}} +\renewcommand \@dotsep{1.7} +\renewcommand \@pnumwidth{2.5ex} +\renewcommand \cftchapfont{\normalfont} \setcounter{tocdepth}{1} \ctexset { - chapter = + chapter = { - name = {}, + name = {}, fixskip = true, + beforeskip = 21pt, afterskip = 34pt, number = \arabic{chapter}, - format = { \sffamily\centering\large }, - beforeskip = { -18\p@ }, - afterskip = { 24\p@ }, - pagestyle = { fancy } + format = \sffamily\centering\large, + pagestyle = fancy }, - } -\renewcommand\section - { - \vspace*{-2.4ex} - \@startsection {section}{1}{\z@}% - {0ex}{.1pt}{\sffamily\semilarge} - } -\renewcommand\subsection - { - \vspace*{-1.8ex} - \@startsection {subsection}{2}{\z@}% - {0ex}{.1pt}{\sffamily} + section = + { + beforeskip = 1.25ex, afterskip = 1.5ex, + fixskip = true, format = \sffamily\semilarge + }, + subsection = + { + beforeskip = 1.25ex, afterskip = 1.5ex, + fixskip = true, format = \sffamily + } } -\makeatother +\makeatother \ExplSyntaxOff \endinput diff --git a/macros/xetex/latex/hduthesis/tex/hduthesis-font-module.code.tex b/macros/xetex/latex/hduthesis/tex/hduthesis-font-module.code.tex index 8237f780c0..300e2ca0ad 100644 --- a/macros/xetex/latex/hduthesis/tex/hduthesis-font-module.code.tex +++ b/macros/xetex/latex/hduthesis/tex/hduthesis-font-module.code.tex @@ -7,13 +7,13 @@ \setmainfont{texgyretermes} [ - Extension = .otf, UprightFont = *-regular, BoldFont = *-bold, - ItalicFont = *-italic, BoldItalicFont = *-bolditalic + Extension = .otf, UprightFont = *-regular, BoldFont = *-bold, ItalicFont = *-italic, BoldItalicFont = *-bolditalic ] \setsansfont{texgyreheros} [ - Extension = .otf, scale = .9, UprightFont = *-regular, BoldFont = *-bold, - ItalicFont = *-italic, BoldItalicFont = *-bolditalic, + Extension = .otf, BoldItalicFont = *-bolditalic, + UprightFont = *-regular, BoldFont = *-bold, + ItalicFont = *-italic, scale = .9, ] \RequirePackage { amsmath, amssymb, mathtools, extarrows, @@ -27,4 +27,13 @@ \dim_set:Nn \belowdisplayskip {3pt} } +\tl_if_empty:NF \g__hduthesis_math_font + { \setmathfont { \g__hduthesis_math_font } } +\tl_if_empty:NF \g__hduthesis_main_CJK_font + { \exp_last_unbraced:No \setCJKmainfont \g__hduthesis_main_CJK_font } +\tl_if_empty:NF \g__hduthesis_sans_CJK_font + { \exp_last_unbraced:No \setCJKsansfont \g__hduthesis_sans_CJK_font } +\tl_if_empty:NF \g__hduthesis_mono_CJK_font + { \exp_last_unbraced:No \setCJKmonofont \g__hduthesis_mono_CJK_font } + \endinput diff --git a/macros/xetex/latex/hduthesis/tex/hduthesis-pg.layout-module.code.tex b/macros/xetex/latex/hduthesis/tex/hduthesis-pg.layout-module.code.tex index df36c2a00b..62ed79a523 100644 --- a/macros/xetex/latex/hduthesis/tex/hduthesis-pg.layout-module.code.tex +++ b/macros/xetex/latex/hduthesis/tex/hduthesis-pg.layout-module.code.tex @@ -1,5 +1,5 @@ +\ExplSyntaxOn \makeatletter \hduthesis_provide_module:n {pg.layout} -\makeatletter \geometry { top = 2.75cm, bottom = 2cm, left = 3.2cm, right = 3.2cm, headheight = 15pt, headsep = .72cm } @@ -158,8 +158,16 @@ \tl_set:Nn \l__keywords_sep_tl {,} } \@beginparpenalty\@lowpenalty - \str_if_eq:nnT {#1} {cn} {\chapter*{摘要}} - \str_if_eq:nnT {#1} {en} {\chapter*{\normalfont\bfseries Abstract}} + \str_if_eq:nnT {#1} {cn} + { + \chapter*{摘要} + \addcontentsline{toc}{chapter}{摘要} + } + \str_if_eq:nnT {#1} {en} + { + \chapter*{\normalfont\bfseries Abstract} + \addcontentsline{toc}{chapter}{\bfseries Abstract} + } } { \par\null @@ -181,7 +189,7 @@ { \thispagestyle{fancy} } \RequirePackage{tocloft} \renewcommand{\contentsname}{\hfill 目录 \hfill} -\renewcommand \cfttoctitlefont{\sffamily\large} +\renewcommand \cfttoctitlefont{\sffamily\semiLarge} \dim_set:Nn \cftbeforetoctitleskip {12pt} \dim_set:Nn \cftaftertoctitleskip {24pt} \dim_set:Nn \cftbeforechapskip {1pt} @@ -195,27 +203,27 @@ \ctexset { - chapter = + chapter = { - aftername = { \hspace{.5\ccwd} }, - format = { \sffamily\centering\semiLarge }, - beforeskip = { 10\p@ }, - afterskip = { 20\p@ }, - pagestyle = { fancy } + aftername = \hspace{.5\ccwd}, fixskip = true, + beforeskip = 35pt, afterskip = 30pt, + format = \sffamily\centering\semiLarge, + pagestyle = fancy + }, + section = + { + aftername = \hspace{.5\ccwd}, fixskip = true, + beforeskip = 2ex, afterskip = 2.5ex, + format = \sffamily\large + , + }, + subsection = + { + aftername = \hspace{.5\ccwd}, fixskip = true, + beforeskip = 2ex, afterskip = 3ex, + format = \sffamily\semilarge } } -\renewcommand\section - { - \vspace*{1pt} - \@startsection {section}{1}{\z@}% - {0ex}{.8ex}{\sffamily\large} - } -\renewcommand\subsection - { - \vspace*{2pt} - \@startsection {subsection}{2}{\z@}% - {0ex}{1.2ex}{\sffamily\semilarge} - } -\makeatother +\makeatother \ExplSyntaxOff \endinput diff --git a/macros/xetex/latex/hduthesis/tex/hduthesis-unv.layout-module.code.tex b/macros/xetex/latex/hduthesis/tex/hduthesis-unv.layout-module.code.tex index 8c20b7e254..2d351f674a 100644 --- a/macros/xetex/latex/hduthesis/tex/hduthesis-unv.layout-module.code.tex +++ b/macros/xetex/latex/hduthesis/tex/hduthesis-unv.layout-module.code.tex @@ -1,7 +1,6 @@ \hduthesis_provide_module:n {unv.layout} -\RequirePackage{geometry, fancyhdr, array, setspace} -\pagestyle{fancy} +\RequirePackage{geometry, array, setspace} \newcommand\frontmatter { @@ -51,21 +50,20 @@ \box1 } -\RequirePackage[skip = 1em, labelsep = quad, font = small]{caption} -\renewcommand{\thefigure}{\arabic{chapter}-\arabic{figure}} -\renewcommand{\thetable}{\arabic{chapter}-\arabic{table}} -\renewcommand{\theequation}{\arabic{chapter}-\arabic{equation}} +\RequirePackage[skip = 1.75ex, labelsep = quad, font = small]{caption} +\renewcommand*\thefigure {\arabic{chapter}-\arabic{figure}} +\renewcommand*\thetable {\arabic{chapter}-\arabic{table}} +\renewcommand*\theequation {\arabic{chapter}-\arabic{equation}} \AddToHook{env/figure/after}{\vspace*{-2.3ex}} \AddToHook{env/table/after}{\vskip-1.9ex} \RequirePackage{enumitem, cleveref} \setlist[enumerate,1] { - label = (\arabic*), itemindent = 4.5em, leftmargin = 0em, - labelsep = 0em, topsep = -1pt, itemsep = 0pt, partopsep = 0pt, + label = (\,\arabic*\,), itemindent = 4em, leftmargin = 0em, + labelsep = 1ex, topsep = 0pt, itemsep = 0pt, partopsep = 0pt, parsep = 0em, listparindent = 2\ccwd } -\AddToHook{env/enumerate/after}{\vspace*{.1ex}} \crefformat{figure}{图#2#1#3} \crefformat{table}{表#2#1#3} \graphicspath diff --git a/macros/xetex/latex/hduthesis/tex/hduthesis.cls b/macros/xetex/latex/hduthesis/tex/hduthesis.cls index a02cd9677e..844127806a 100644 --- a/macros/xetex/latex/hduthesis/tex/hduthesis.cls +++ b/macros/xetex/latex/hduthesis/tex/hduthesis.cls @@ -20,12 +20,12 @@ %% and README.md. * %% available at https://github.com/xiamyphys/hduthesis * %% *********************************************************************** -\def\hduthesis@date{2024/11/16} -\def\hduthesis@version{0.3.1} +\def\hduthesis@date{2024/11/20} +\def\hduthesis@version{0.3.2} \RequirePackage{etoolbox} \ProvidesExplClass{hduthesis} {\hduthesis@date} {\hduthesis@version} -{HDU Thesis Class} + {LaTeX Class for Thesis at Hangzhou Dianzi University} \cs_new_protected:Npn \hduthesis_msg_new:nn #1#2 { \msg_new:nnn { hduthesis } {#1} {#2} } @@ -35,13 +35,12 @@ \hduthesis_msg_new:nn { 用户协议 } { \exp_not:n { - ⚠️⚠️⚠️⚠️⚠️⚠️~「HduThesis」编译受阻~⚠️⚠️⚠️⚠️⚠️⚠️~ + ⚠️⚠️⚠️⚠️⚠️~「hduThesiS」编译受阻🥵~⚠️⚠️⚠️⚠️⚠️~ 使用模板前请认真阅读模板说明文档封面上的「用户协议」~ 😡👊模板作者不对使用本模板产生的格式审查问题负责👊😡~ - 导言区添加全局选项 `I-agree': - `\documentclass[I-agree]{hduthesis}`~ - 即可顺利编译✌️并代表您已同意本协议🥰~ - 可反馈Issues至📮xiamyphys@gmail.com.~ 祝君科研顺利! + 添加选项 `agreed'[\documentclass[agreed]{hduthesis}]~ + 即可顺利编译并默认代表您已同意本协议.~ 祝君科研顺利!~ + 如遇问题,可邮件反馈至📮xiamyphys@gmail.com.~ } } @@ -67,13 +66,10 @@ \clist_new:N \g__hdu_base_class_options_clist \keys_define:nn { hduthesis / classoption } { - I-agree .bool_set:N = \g__hduthesis_agreement_bool, - I-agree .initial:n = false, - I-agree .default:n = true, + agreed .bool_set:N = \g__hduthesis_agreement_bool, + agreed .initial:n = false, + agreed .default:n = true, math-font .tl_set:N = \g__hduthesis_math_font, - main-font .tl_set:N = \g__hduthesis_main_font, - sans-font .tl_set:N = \g__hduthesis_sans_font, - mono-font .tl_set:N = \g__hduthesis_mono_font, CJKmain-font .tl_set:N = \g__hduthesis_main_CJK_font, CJKsans-font .tl_set:N = \g__hduthesis_sans_CJK_font, CJKmono-font .tl_set:N = \g__hduthesis_mono_CJK_font, @@ -91,35 +87,40 @@ } } -\ProcessKeyOptions[ hduthesis / classoption ] -\PassOptionsToClass{a4paper,zihao = -4}{ctexrep} -\PassOptionsToPackage{quiet,no-math}{xeCJK} -\exp_args:NNV \LoadClass[\g__hdu_base_class_options_clist]{ctexrep} -\bool_if:NF \g__hduthesis_agreement_bool - { \hduthesis_msg_error:nn { 用户协议 } { 未确认 } } +\ProcessKeyOptions [ hduthesis / classoption ] +\PassOptionsToClass { a4paper, zihao = -4 } { ctexrep } +\PassOptionsToPackage { quiet, no-math } { xeCJK } +\exp_args:NNV \LoadClass [ \g__hdu_base_class_options_clist ] { ctexrep } \RequirePackage { siunitx, circuitikz, pgfplots, listings, hologo, - lipsum, zhlipsum, booktabs, multicol, hyperref } -\pgfplotsset{compat = newest} -\pdfstringdefDisableCommands + lipsum, zhlipsum, booktabs, multicol } +\pgfplotsset { compat = newest } + +\bool_if:NTF \g__hduthesis_agreement_bool { - \def\cite#1{<#1>} - \def\hologoRobust#1{<#1>} - } + \RequirePackage{hyperref} + \pdfstringdefDisableCommands + { + \def\cite#1{<#1>} + \def\hologoRobust#1{<#1>} + } + \AtBeginDocument + { \hypersetup { hidelinks, pdfproducer = hduThesiS~by~Mingyu~Xia } } + } { \hduthesis_msg_error:nn { 用户协议 } { 未确认 } } \hduthesis_load_module:n { font } \hduthesis_load_module:n { unv.layout } \keys_define:nn { hduthesis / docinfo } { - title.clist_set:N = \l__docinfo_title_clist, - department.tl_set:N = \l__docinfo_department_tl, - major.tl_set:N = \l__docinfo_major_tl, - class.tl_set:N = \l__docinfo_class_tl, - stdntid.tl_set:N = \l__docinfo_stdntid_tl, - author.clist_set:N = \l__docinfo_author_clist, - supervisor.clist_set:N = \l__docinfo_supervisor_clist, - bibsource.tl_set:N = \l__docinfo_bibsource_tl, + title .clist_set:N = \l__docinfo_title_clist, + department .tl_set:N = \l__docinfo_department_tl, + major .tl_set:N = \l__docinfo_major_tl, + class .tl_set:N = \l__docinfo_class_tl, + stdntid .tl_set:N = \l__docinfo_stdntid_tl, + author .clist_set:N = \l__docinfo_author_clist, + supervisor .clist_set:N = \l__docinfo_supervisor_clist, + bibsource .tl_set:N = \l__docinfo_bibsource_tl, } \clist_set:Nn \g_system_month_clist { @@ -159,31 +160,20 @@ \bibliographystyle{gbt7714-numerical} \dim_set:Nn \bibsep {.35ex} \newcommand*\printbibliography - { \nocite{*}\bibliography{ \l__docinfo_bibsource_tl } } - \hook_gput_code:nnn { cmd/printbibliography/before } { . } { - \group_begin: - \hook_gput_code:nnn { cmd/@makeschapterhead/before } { . } { \null } - } - \hook_gput_code:nnn { cmd/printbibliography/after } { . } - { - \group_end: + \nocite{*} \bibliography { \l__docinfo_bibsource_tl } \addcontentsline{toc}{chapter}{参考文献} } } - \hypersetup - { - hidelinks, pdftitle = \l__docinfo_entitle_tl, - pdfauthor = \l__docinfo_enauthor_tl, - pdfproducer = hduTeX~bundle~by~Mingyu~Xia, - } - \ExplSyntaxOn - \int_compare:nNnTF { \tl_count:N \l__docinfo_stdntid_tl } = { 8 } - { \hduthesis_load_module:n { bc.layout } } - { \hduthesis_load_module:n { pg.layout } } - \ExplSyntaxOff + \int_compare:nNnTF { \tl_count:N \l__docinfo_stdntid_tl } = { 8 } + { \hduthesis_load_module:n { bc.layout } } + { \hduthesis_load_module:n { pg.layout } } } +\RequirePackage{fancyhdr} +\pagestyle{fancy} +\renewcommand*\headrulewidth {.6pt} + \endinput % End of file hduthesis.cls diff --git a/macros/xetex/latex/hduthesis/tex/hduthesisdoc.cls b/macros/xetex/latex/hduthesis/tex/hduthesisdoc.cls new file mode 100644 index 0000000000..5c14cbf1e2 --- /dev/null +++ b/macros/xetex/latex/hduthesis/tex/hduthesisdoc.cls @@ -0,0 +1,111 @@ +%% *********************************************************************** +%% Copyright 2024 by M.Y. XIA <xiamyphys@gmail.com> * +%% * +%% This work may be distributed and/or modified under the conditions * +%% of the LaTeX Project Public License * +%% * +%% http://www.latex-project.org/lppl.txt * +%% * +%% either version 1.3c of this license or any later version. * +%% * +%% This work has the LPPL maintenance status `maintained'. * +%% * +%% The Current Maintainers of this work is M.Y. XIA * +%% * +%% This work consists of the files hduthesisdoc.cls, * +%% available at https://github.com/xiamyphys/hduthesis * +%% *********************************************************************** +\def\hduthesisdoc@date{2024/11/20} +\def\hduthesisdoc@version{0.3.2} + +\ProvidesExplClass{hduthesisdoc} {\hduthesisdoc@date} {\hduthesisdoc@version} + {LaTeX Manual Class for LaTeX Package hduthesis} + +\LoadClass [ 11pt ] { l3doc } + +\keys_define:nn { hduthesisdoc / docinfo } + { + title .tl_set:N = \l__docinfo_title_clist, + author .tl_set:N = \l__docinfo_author_tl, + version .tl_set:N = \l__docinfo_version_tl, + CJKmain-font .tl_set:N = \g__hduthesisdoc_main_CJK_font, + CJKsans-font .tl_set:N = \g__hduthesisdoc_sans_CJK_font, + CJKmono-font .tl_set:N = \g__hduthesisdoc_mono_CJK_font + } + +\NewDocumentCommand \DocInfo { m } + { + \keys_set:nn { hduthesisdoc / docinfo } {#1} + \title { \bfseries \l__docinfo_title_clist } + \author { \l__docinfo_author_tl } + \date + { + \l__docinfo_version_tl + \footnote{\url{https://github.com/xiamyphys/hduthesis}}~ (\today) + } + \tl_if_empty:NF \g__hduthesisdoc_main_CJK_font + { \exp_last_unbraced:No \setCJKmainfont \g__hduthesisdoc_main_CJK_font } + \tl_if_empty:NF \g__hduthesisdoc_sans_CJK_font + { \exp_last_unbraced:No \setCJKsansfont \g__hduthesisdoc_sans_CJK_font } + \tl_if_empty:NF \g__hduthesisdoc_mono_CJK_font + { \exp_last_unbraced:No \setCJKmonofont \g__hduthesisdoc_mono_CJK_font } + } + +\hypersetup{urlcolor = teal, filecolor = violet} +\hologoFontSetup{general = \sffamily} +\RequirePackage[mono = false]{libertine} +\RequirePackage{geometry,framed,xeCJKfntef,tikz,pdfpages,subcaption,fadingimage} +\setlength{\oddsidemargin}{63pt}\setlength{\evensidemargin}{63pt} +\FrameSep = 0pt +\RequirePackage[os = mac]{menukeys} +\AddToHook{env/function/before}{\vspace{-.3\baselineskip}} +\AddToHook{env/syntax/after}{\vspace{-.2\baselineskip}} +\RequirePackage{datetime}\yyyymmdddate +\RequirePackage[fontset = none, scheme = plain]{ctex}\linespread{1.5} +\renewcommand{\emph}[1]{\CJKsout*[thickness=2.5ex, format=\color{blue!15}]{#1}} + +\def\HoLogo@hduthesis#1{% + \raisebox{-.5pt} + { + \HOLOGO@mbox + { + \tikz[baseline = (hduthesis.base)] + { + \node [ inner~sep = 0pt ] (hduthesis) + {\textsc{\cls{hduThesi\scalebox{1.2}[1.2]{S}}}}; + \draw + let \p1 = (hduthesis.west), \p2 = (hduthesis.east) + in (\x1,\y1) (\x2,\y2) + [line~width = {.028pt*(\x2 - \x1)}] + ([yshift = -.5ex]hduthesis.north~west) to[bend~right = 5] + ([yshift = .25ex]hduthesis.north~east); + } + } + } + } + +\let \legacy@maketitle \maketitle +\RenewDocumentCommand \maketitle {} + { + \titlepage + \newgeometry{margin = 1in} + \legacy@maketitle + \begin{center} + \tikz + { + \node [ opacity = .8 ] + { \includegraphics[width = .15\paperwidth]{hdumotto.pdf} }; + \node [ opacity = .3 ] + { \includegraphics[width = .21\paperwidth]{hdulogo.pdf} }; + } + \end{center} + } + +\NewDocumentCommand \mailto {m} + { \texttt{<\href{mailto:#1}{#1}>} } +\pdfstringdefDisableCommands + { \def\mailto#1{<#1>} } + +\endinput + +% End of file hduthesisdoc.cls diff --git a/systems/texlive/tlnet/tlpkg/installer/ctan-mirrors.pl b/systems/texlive/tlnet/tlpkg/installer/ctan-mirrors.pl index 84bd4df41b..371fd3d0e6 100644 --- a/systems/texlive/tlnet/tlpkg/installer/ctan-mirrors.pl +++ b/systems/texlive/tlnet/tlpkg/installer/ctan-mirrors.pl @@ -41,7 +41,6 @@ $mirrors = { 'http://ctan.asis.ai/' => 1, }, 'Japan' => { - 'https://ftp.jaist.ac.jp/pub/CTAN/' => 1, 'https://ftp.kddilabs.jp/CTAN/' => 1, 'https://ftp.yz.yamagata-u.ac.jp/pub/CTAN/' => 1, 'https://jp.mirrors.cicku.me/ctan/' => 1, diff --git a/systems/texlive/tlnet/tlpkg/texlive.tlpdb b/systems/texlive/tlnet/tlpkg/texlive.tlpdb index 107caeab7f..15f3347399 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/2024 -depend revision/72892 +depend revision/72904 name 00texlive.image category TLCore -revision 72890 +revision 72895 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 @@ -479,6 +479,7 @@ runfiles size=14488 tlpkg/tlpsrc/amstex.tlpsrc tlpkg/tlpsrc/amsthdoc-it.tlpsrc tlpkg/tlpsrc/andika.tlpsrc + tlpkg/tlpsrc/anima.tlpsrc tlpkg/tlpsrc/animate.tlpsrc tlpkg/tlpsrc/annee-scolaire.tlpsrc tlpkg/tlpsrc/annotate-equations.tlpsrc @@ -4978,7 +4979,7 @@ depend setting_available_architectures:aarch64-linux amd64-freebsd amd64-netbsd name 00texlive.installer category TLCore -revision 72870 +revision 72904 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 @@ -19415,6 +19416,47 @@ catalogue-license ofl lppl catalogue-topics font font-sans font-cyrillic font-ttf font-type1 font-supp catalogue-version 6.101 +name anima +category Package +revision 72895 +shortdesc Create slideshows with simple animations +relocated 1 +longdesc The idea for this package arose from noticing that including +longdesc the \pause command from the beamer class within the \foreach +longdesc loop command from the TikZ package creates a sequence of +longdesc frames, where each slide presents a step in the construction of +longdesc the image. The purpose of the anima class is to provide macros +longdesc that simplify the use of this effect for creating animated +longdesc slide presentations. Although the functionality of this class +longdesc can be compared to the transition effects of the beamer class, +longdesc it is not a dependency of the anima class. However, the class +longdesc makes extensive use of the image creation language provided by +longdesc the TikZ package. Lastly, it is worth noting a comparison +longdesc between this class and the animate package. The animate package +longdesc can create embedded animations within the document, while the +longdesc anima class produces an animation where each frame corresponds +longdesc to a page of the document. This distinction highlights the +longdesc different design goals of the anima class. +containersize 3080 +containerchecksum 410f1a8a9303a9cd7608d6f57c99e2df8d90ab583188bb4aa3328840164222586a56869e2f2cca2a09f9075405c59edb5cb45396b0cd115317984c296045e812 +doccontainersize 429988 +doccontainerchecksum f16866cfcaa8102b3d2e2f6e45a8680dfb47a18bd32e434df41a55f44d43d22f66a7127ee2e70d5e22cbccbb4e7242f42caab28de2d35294fd97bee1dc0a1548 +docfiles size=110 + RELOC/doc/latex/anima/README.txt details="Readme" + RELOC/doc/latex/anima/anima-doc.pdf details="Package documentation" + RELOC/doc/latex/anima/exemplo.tex +srccontainersize 8784 +srccontainerchecksum a614adae913c40f6f782affaebd240af0293cfcd1d3ffbbf8cc3a648ce796802cf0e8edd88b2a697e678ac3ea338e58bff5346d153bcfea3e6f03b89ada80537 +srcfiles size=9 + RELOC/source/latex/anima/anima.dtx + RELOC/source/latex/anima/anima.ins +runfiles size=2 + RELOC/tex/latex/anima/anima.cls +catalogue-ctan /macros/latex/contrib/anima +catalogue-license lppl1.3c +catalogue-topics presentation graphics-motion class presentation +catalogue-version 1.0 + name animate category Package revision 72548 @@ -47437,7 +47479,7 @@ catalogue-version 0.5 name bxcoloremoji category Package -revision 72817 +revision 72896 shortdesc Use color emojis more conveniently relocated 1 longdesc This package lets users output color emojis in LaTeX documents. @@ -47454,10 +47496,10 @@ longdesc image data that are essentially identical, the package was longdesc revised in version 1.0 so that the image output was delegated longdesc to the twmojis package. Therefore, this package now contains no longdesc image data. -containersize 33664 -containerchecksum da8548a0345b447ed311b859bbc1575db6d4b74249253fda06a67d054a9b0c002ad12ad0b8c2c5e0a915ec6d75a5adb0ef08168eadc93544a1c26907d91d3d3d -doccontainersize 2697012 -doccontainerchecksum e3d0fb4ae4741e10514309a49d564c9a31c0c77c3b43e8d848c04edb2f6fd3f181d462a27724c7a803916a956fe1c37c585d04b02083d5430a62995c5403197b +containersize 33688 +containerchecksum 77191e768fefb877e87376ad65e521e1458e61b64618849b9ff276266dc184904a9fd2194fe04f995ae67d262c730c9bb46dfe149ffe8614e39cf30b01b88da3 +doccontainersize 2697308 +doccontainerchecksum b11b28b4ac7ff39809f8587798b88544fc1256e696bac96d83d1426b345f69e84340ac32acd15d8e9cc6a743d11b41f4aa47c31fa638bf20a41c0d95b7a7dd02 docfiles size=877 RELOC/doc/latex/bxcoloremoji/LICENSE RELOC/doc/latex/bxcoloremoji/README-ja.md details="Readme (Japanese)" language="ja" @@ -47475,7 +47517,7 @@ catalogue-contact-repository https://github.com/zr-tex8r/BXcoloremoji catalogue-ctan /macros/latex/contrib/bxcoloremoji catalogue-license mit catalogue-topics text-symbol -catalogue-version 1.0 +catalogue-version 1.0a name bxdpx-beamer category Package @@ -72842,7 +72884,7 @@ containerchecksum e2186a4295eb854d56e838deaae8330e47ced975d28ad83b51d8ada6955a5a name collection-latexextra category Collection -revision 72875 +revision 72895 shortdesc LaTeX additional packages relocated 1 longdesc A very large collection of add-on packages for LaTeX. @@ -72878,6 +72920,7 @@ depend alterqcm depend altfont depend altsubsup depend amsaddr +depend anima depend animate depend anonchap depend answers @@ -74430,8 +74473,8 @@ depend zref-vario depend zugferd depend zwgetfdate depend zwpagelayout -containersize 7328 -containerchecksum f3af30e163a11012586b84a9e593eecd68467759e308d5c90f2926c12fd6df5e814d0af45a07d133329197475ab14d0075481aa5829112ebe6c9f39dfabf64b0 +containersize 7332 +containerchecksum 28d6642ca963f8a612210afe3c63e11359488d4d173611c0386dcdd04b356e13b469e177672fb6d5cd43d138cc560064a82da13e81c88cefdd42a5265fb9d5b8 name collection-latexrecommended category Collection @@ -108081,7 +108124,7 @@ catalogue-topics notes editorial name easybook category Package -revision 72874 +revision 72897 shortdesc Easily typesetting Chinese theses or books relocated 1 longdesc easybook is a pure academic template created based on the @@ -108092,16 +108135,16 @@ longdesc providing multiple commands and interfaces allows users to longdesc easily customize the thesis template. Its basic macro package longdesc easybase can also be used with CTeX and standard document longdesc classes. -containersize 20284 -containerchecksum a9832dd2495bd3b4ff2a023747624b6cac621a5cd22656aac76428e624647d9c5e6ffdb8f612d2bb38b4b3c29c26c293a52af2b67420b0349da2287cc591be04 -doccontainersize 677896 -doccontainerchecksum 952776c295d97458c77298751de5025f08c55eabcd3f07be7aad1625aa5f95ab8c3c221776994284d6837fb84e61c95e54d4020fb44c48e9b0d041c4ad923573 -docfiles size=219 +containersize 20296 +containerchecksum ba786ea3813e982b5c3f8128101b4b9610fefe94e5959140b8df6cdeaa65ff3f8efab80b709afa7ae9ee75ebb8802b351418a7701768758c8cc61962f470438e +doccontainersize 682124 +doccontainerchecksum 2ff93f91063b7efd8705c0f5f40dc55591597844fed9cc40cb798b37e073eb9a962a70878d351f3246d620b4c60d635e38c9345fb9ce7255422bfc7f3fd12b6b +docfiles size=189 RELOC/doc/latex/easybook/README.md details="Readme" RELOC/doc/latex/easybook/easybook.pdf details="Package documentation" language="zh" RELOC/doc/latex/easybook/easybook.tex -srccontainersize 20168 -srccontainerchecksum 9ca0d2268ba00e4a7971a5791eb4204cdb435ec38dc37c85206623f72d9cdec115fe1b132bc758ae9b0a238c381683ad61a13476cad301145b2191a2338479a7 +srccontainersize 20156 +srccontainerchecksum 6a611767256a8a85793b33dcc4de6f9872d3ec9c7dff6adfad732ac69dd91196fbbdf6d606b4d382d7c5b2ac238b40f3f7717a45239b8dc3429bd4c132ed5f07 srcfiles size=25 RELOC/source/latex/easybook/easybook.dtx RELOC/source/latex/easybook/easybook.ins @@ -108114,7 +108157,7 @@ catalogue-contact-repository https://gitee.com/texno3/easybook catalogue-ctan /macros/latex/contrib/easybook catalogue-license lppl1.3c catalogue-topics book-pub dissertation class doc-templ chinese expl3 -catalogue-version 2024hh +catalogue-version 2024hm name easydtx category Package @@ -170977,17 +171020,17 @@ catalogue-topics letter class doc-templ name jpneduenumerate category Package -revision 63893 +revision 72898 shortdesc Enumerative expressions in Japanese education relocated 1 longdesc Mathematical equation representation in Japanese education longdesc differs somewhat from the standard LaTeX writing style. This longdesc package introduces enumerative expressions in Japanese longdesc education. -containersize 2720 -containerchecksum 10bb936cbddc6e88979ceed208bdba424d4e4c9c388cadd3a9b84a767c59ea43362f11092907f98c16696f07134ed66765a8bc7b02ea0a8fbe9eb7b814760780 -doccontainersize 160748 -doccontainerchecksum 447c925bfe05d1c6657bbf2592bfbd16f80d9bcc1a3320635231153b90198f2e8010cef5d13573e84504d5a41b9cc6ec750054c00a9178154c4e210684919d0a +containersize 2768 +containerchecksum 86a6d325c9bfeeccda2b0f134fd6756fc68f0d529f56dcd3f7df33d9ce02452bd71a8a55faae8644d71e8602b13f325e6a5f6670bf3e65d5f3e6ebc3ad97796d +doccontainersize 162368 +doccontainerchecksum 84e5c54c731976ec8b5e2bd105856299bf170d203a490955bc11429d142fccac509062dd0efded4e033ad590a3a8b0a0f81e6c675c4af57b4e2370328f7d1362 docfiles size=47 RELOC/doc/latex/jpneduenumerate/README.md details="Readme" RELOC/doc/latex/jpneduenumerate/jpneduenumerate.pdf details="Package documentation" language="en,ja" @@ -170998,7 +171041,7 @@ catalogue-contact-home https://www.metaphysica.info/technote/package_jpneduenume catalogue-ctan /macros/latex/contrib/jpneduenumerate catalogue-license mit catalogue-topics maths japanese list-enum -catalogue-version 1.2 +catalogue-version 1.3 name jpnedumathsymbols category Package @@ -239005,7 +239048,7 @@ catalogue-topics font font-type1 font-decor name nicematrix category Package -revision 72844 +revision 72899 shortdesc Improve the typesetting of mathematical matrices with PGF relocated 1 longdesc This package is based on the package array. It creates PGF/TikZ @@ -239017,19 +239060,19 @@ longdesc border matrices); control of the width of the columns; tools to longdesc color rows and columns with a good PDF result; blocks of cells; longdesc tabular notes; etc. The package requires and loads l3keys2e, longdesc array, amsmath, pgfcore, and the module shapes of PGF. -containersize 42504 -containerchecksum 8da75e0ccd0534ec0ffe5f3a4d0b068b372044c77dc7d5b4d1858b5ec18a6a53d633f0996e351c68d3f6c44d251c3158bdb3c72028c33cf81cde1cc71ebde9b8 -doccontainersize 2159472 -doccontainerchecksum 0766ca0d4bb0903def5fabba10f006ee45c90a0ba66dbd50a6f51b341e7ed070ebe39ef44597161841885275284e3df27e1860fb578c9f4afcba3ff27cf32031 -docfiles size=1076 +containersize 42532 +containerchecksum 37449a3d67096cb7d73a6f029e76d74bd448dbc6eef8ce3e961c3969186ac15d0f09cfacd0a9de8e712180486c2b54e2d1cb8c00ff043ee5a6617331b54ca4cb +doccontainersize 2163868 +doccontainerchecksum 5fe0e54e4025a86dc62cfd161bb2405f46a4c35e6db6089afd32fa54de1c24daeebfea1dbecc70cdfd06a4a621c73ce227c2408b906b2d382a05ff4f59936484 +docfiles size=1078 RELOC/doc/latex/nicematrix/README.md details="Readme" RELOC/doc/latex/nicematrix/nicematrix-code.pdf RELOC/doc/latex/nicematrix/nicematrix-french.pdf details="Package documentation in French" language="fr" RELOC/doc/latex/nicematrix/nicematrix-french.tex RELOC/doc/latex/nicematrix/nicematrix.pdf details="Package documentation" RELOC/doc/latex/nicematrix/nicematrix.tex -srccontainersize 92504 -srccontainerchecksum 5364928f8f0c66ea870eadfcd6d227529cfd67e218c9a77b420bfe09a7aad77633f145bcb9ed939197c4c8f5ef059cfa3ad18462b82253a9e32c21b9001727aa +srccontainersize 92636 +srccontainerchecksum b0c31295d6c18c87634010722320b16604c6e7c61fb3a7be7b481ac6ce0ca266f1ec4563bd2acd6c468629c59bc01ca42946b6e565b3cb4d85b9cddf72a21ab1 srcfiles size=150 RELOC/source/latex/nicematrix/nicematrix-code.dtx RELOC/source/latex/nicematrix/nicematrix.ins @@ -239038,7 +239081,7 @@ runfiles size=95 catalogue-ctan /macros/latex/contrib/nicematrix catalogue-license lppl1.3 catalogue-topics maths matrix pgf-tikz expl3 -catalogue-version 6.29b +catalogue-version 7.0 name nicetext category Package @@ -239226,7 +239269,7 @@ catalogue-topics cv name nimbus15 category Package -revision 58839 +revision 72894 shortdesc Support files for Nimbus 2015 Core fonts relocated 1 longdesc The Nimbus 2015 Core fonts added Greek and Cyrillic glyphs. @@ -239237,10 +239280,10 @@ longdesc is provided, along with a narrower version which may be useful longdesc for rendering code. depend fontools execute addMap nimbus15.map -containersize 3815932 -containerchecksum 9e39f92dea1fa293d6249d16877dd6b2d990d1d48cfd31f4ac1d66233b97ff178d2b70f428978a084fc9a50b9dd994adb6a8ad29375e54f5d5ccf6ca7ed62f64 -doccontainersize 725056 -doccontainerchecksum 8fb9ece6ca17549572a0d79a541397c6545dc01ac0422a5270314bba1cb83b1451fb0f56e34f449cc3d3de326e063e4ea1f2ea03a0fbda7342e9d0a101fb5ed1 +containersize 3816244 +containerchecksum 128f36e310f3785b2f66e9d56bfca840548c8e5636ea97f97c95940e4f1e797e981fc1ab74fcaa91e7a29f7b66621661adc21193707fecdef3a0da9cd78d7b24 +doccontainersize 725092 +doccontainerchecksum 28dc0788816c0db4e0a902c024c54c4131279a9dbf19a9753917b515b774d8092fbaabfe917eefe9f87730dca81d30298e2b72defe73cf795de2454f491502fd docfiles size=205 RELOC/doc/fonts/nimbus15/COPYING RELOC/doc/fonts/nimbus15/LICENSE @@ -239546,7 +239589,7 @@ runfiles size=2049 catalogue-ctan /fonts/nimbus15 catalogue-license other-free lppl1.3 catalogue-topics font font-body font-proportional font-mono font-multilingual font-greek font-cyrillic font-type1 font-otf font-supp font-t1enc -catalogue-version 1.014 +catalogue-version 1.015 name nimsticks category Package @@ -300625,7 +300668,7 @@ catalogue-version 1.36 name siunitx category Package -revision 72859 +revision 72900 shortdesc A comprehensive (SI) units package relocated 1 longdesc Physical quantities have both numbers and units, and each @@ -300643,17 +300686,17 @@ longdesc make it possible to follow varying typographic conventions with longdesc the same input syntax. The package includes automated longdesc processing of numbers and units, and the ability to control longdesc tabular alignment of numbers. -containersize 68184 -containerchecksum 1e1ea06d8c79d7a778830d6bf3532c69e900e048511d7cba0d4af7eca22d8a63d7047d7a3f1d09101d5657c4fe9a056fb345e4fd86f4e250e1a0c19d3b5ef39f -doccontainersize 1286888 -doccontainerchecksum 7e1f8f23d75b413159bf85e6ff62c32114ed958340663c2a4f0453ce8bcecaab83b1dad8816255ff550a03642941ebe0f083cc1676a454ce92204eb7855b7666 +containersize 68188 +containerchecksum 508cd6a40f9de4873a7c33cba86820361975bbcb59c1e0ab685a7c30a91c23545e7a113f2499fe193b878c223472299febd2640cf7c4e05a2c27c3a28a747598 +doccontainersize 1286620 +doccontainerchecksum b7348bd1e4125a74985be845ad6f5bdced5295d5f4ad64ae9ddf359f234f67b4081e6fd16fda0e2ed616329998783e11093940a8c1f8117e7225e81446a79c7e docfiles size=352 RELOC/doc/latex/siunitx/CHANGELOG.md RELOC/doc/latex/siunitx/README.md details="Readme" RELOC/doc/latex/siunitx/siunitx-code.pdf details="Code documentation" RELOC/doc/latex/siunitx/siunitx.pdf details="User manual" -srccontainersize 123980 -srccontainerchecksum 8b02a374b7a3d18d6942f338f977ecc5004950cbb8d4e2a8cb45c4e31d851526bdc0bf90a5f2c365f95a256b5684b3b2ba970427a80eb63a6869eeef9c299508 +srccontainersize 123996 +srccontainerchecksum f95b01570637877b27461969efb09d8f0b88bb4958c6452777b1e2198bb35f133f9b934cf4db76ce9524de3756f44d6b959c36820fc38039457d169f591ec59a srcfiles size=190 RELOC/source/latex/siunitx/siunitx-abbreviation.dtx RELOC/source/latex/siunitx/siunitx-angle.dtx @@ -300685,7 +300728,7 @@ catalogue-contact-repository https://github.com/josephwright/siunitx catalogue-ctan /macros/latex/contrib/siunitx catalogue-license lppl1.3c catalogue-topics units scientific-docs expl3 -catalogue-version 3.3.23 +catalogue-version 3.3.24 name sjtutex category Package @@ -314763,18 +314806,18 @@ catalogue-version 1.1 name tagpdf category Package -revision 72690 +revision 72901 shortdesc Code for PDF tagging using pdfLaTeX and LuaLaTeX relocated 1 longdesc The package contains the core code for tagging and longdesc accessibility used by the LaTeX kernel in the Tagged PDF longdesc project. See https://github.com/latex3/tagging-project for more longdesc information. -containersize 39348 -containerchecksum 840889f6c2e5ab965eca73e48dcf30378cfa00fca8599a482101138cf34e554a7202622fa157af78da78126e01bc16ddab4d430e37e100f5c4a6e842f8394225 -doccontainersize 1834692 -doccontainerchecksum 9680ae4d78ee66a8bcca7e74990d4e4041ff653c03b381cc016ec9483de85534eb52ba73d4fb100b351d7e03dfd51567a27b391120df53e4dc04887b1712a5cf -docfiles size=797 +containersize 39364 +containerchecksum a890e48131a27a4897282f68e5728fc0bb68ab513511a3fb6bb39fbb3caf659f429860148d00c19e0695c18c90f5b49b4ba3fbde58d801af68fe4fd1d21af172 +doccontainersize 1852944 +doccontainerchecksum 0e8c1b7583bafd43df42b1e6c8d3c702fc385efeb296713074d63472da682822baf2d0b3302f00d7d35ff1809a706b6cbb63292b9e4bd7c026a2ca627bdb8c23 +docfiles size=798 RELOC/doc/latex/tagpdf/README.md details="Readme" RELOC/doc/latex/tagpdf/acrobat.png RELOC/doc/latex/tagpdf/ex-AF-file.pdf @@ -314813,9 +314856,9 @@ docfiles size=797 RELOC/doc/latex/tagpdf/tagpdf.pdf details="Package documentation" RELOC/doc/latex/tagpdf/tagpdf.tex RELOC/doc/latex/tagpdf/tagpdfsetup-keys.tex -srccontainersize 73960 -srccontainerchecksum 7ca010bddfefbcd39de1e1b2fbbbb7d8b9233cd8da6074e111ee35a4a42c3e6fe5c5f041849216bd907453917e425a8ea6dd0e670d0e319d31f350b60a9cea21 -srcfiles size=106 +srccontainersize 74224 +srccontainerchecksum 096074c0afd20d588435ecc9e4b523866967e26eea003682dbc64e918e2cec1a6db2bae070adcf0c31e28ffc8e1969f81da8d00557fa15ebdaadee056211cb4c +srcfiles size=109 RELOC/source/latex/tagpdf/tagpdf-backend.dtx RELOC/source/latex/tagpdf/tagpdf-checks.dtx RELOC/source/latex/tagpdf/tagpdf-data.dtx @@ -314853,7 +314896,7 @@ catalogue-contact-support https://github.com/latex3/tagpdf/issues catalogue-ctan /macros/latex/contrib/tagpdf catalogue-license lppl1.3c catalogue-topics tagged-pdf accessible expl3 -catalogue-version 0.99g +catalogue-version 0.99h name talk category Package @@ -331156,7 +331199,7 @@ docfiles size=376 name texlive-scripts category TLCore -revision 72892 +revision 72904 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. @@ -331164,10 +331207,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 114412 -containerchecksum e662503183b68b1e07d16b8e6943ee6da6bc891eb34cc093cea02484d47140e76454080849fb4716f9bd56049778edeb2bfb3cc2591b18228390205d171b048b +containersize 114404 +containerchecksum 53cdba2054b495e5aee4398da557d705e7e3de66e76a4e8a12e1680e3840ee6fb5747e6e6c9ee35e3bcb837cabaf0568c7b7f7b2558aa8217c0164cebbccdcaf doccontainersize 440100 -doccontainerchecksum 4b5b9f7b1aebdc23c5693273309dcdb4384949c9a8947b167d7e8b6c116c4be763e951edc5a935995d0545e943a7c6b7029f09fc10dc95569c4147028aa720e7 +doccontainerchecksum 312f9d35fc2f3f36a2107593d0494ccdbe6266341121e310b33cc44cc71e90e79f1b5d367b48ea96e4e247852642e81a6a4d014d84fd9a937c407528e864f84c docfiles size=573 doc.html texmf-dist/doc/man/man1/fmtutil-sys.1 @@ -349883,20 +349926,18 @@ catalogue-version 1.0 name turnthepage category Package -revision 29803 +revision 72902 shortdesc Provide "turn page" instructions relocated 1 longdesc The package prints a 'turn' instruction at the bottom of longdesc odd-numbered pages (except the last). This is a common longdesc convention for examination papers and the like. -containersize 1664 -containerchecksum 446b0516264eac6b880048e16cf4ad7bb529718c726233fc645b8c32d625f3f6b505b72beef81994b61ddc77ec8ecfece907347be4f9e18a79fa36c2aef91b5d -doccontainersize 78428 -doccontainerchecksum 4af8dc61e53df587f19b61f6260e7a7820a8334f2841a63f2ecc05b7197eb69596dc36163b39cdaff9258651241a334b6e3a814699065c8ce4f861fba6110f83 -docfiles size=45 - RELOC/doc/latex/turnthepage/Makefile +containersize 1780 +containerchecksum b8be9a4a2026969c424dee2bf484eb4030800aa960d3a77a9ae2c8dd87e51907c0b3fdf0e99267cfce98fe8a920f9504eb7a16b7d93e2ec74273148ef7f0138f +doccontainersize 124912 +doccontainerchecksum 4033467f66fa676bdde4cb208bf183565542772794115e40fca77c80b1cf3d07acab7a757d1930443c6ab99c474465bfc66928abb1ac45bbe6d1459386174608 +docfiles size=34 RELOC/doc/latex/turnthepage/README details="Readme" - RELOC/doc/latex/turnthepage/perso.ist RELOC/doc/latex/turnthepage/turnthepage-bib.bib RELOC/doc/latex/turnthepage/turnthepage.pdf details="Package documentation" RELOC/doc/latex/turnthepage/turnthepage.tex @@ -349905,9 +349946,9 @@ runfiles size=3 RELOC/tex/latex/turnthepage/turnpagewoetex.sty RELOC/tex/latex/turnthepage/turnthepage.sty catalogue-ctan /macros/latex/contrib/turnthepage -catalogue-license lppl +catalogue-license lppl1.3c catalogue-topics layout exam -catalogue-version 1.3a +catalogue-version 2.0a name tutodoc category Package @@ -367174,7 +367215,7 @@ catalogue-version 1.10 name wargame category Package -revision 69692 +revision 72903 shortdesc A LaTeX package to prepare hex'n'counter wargames relocated 1 longdesc This package can help make classic Hex'n'Counter wargames using @@ -367189,11 +367230,11 @@ longdesc for units. The package uses TikZ for most things. The package longdesc supports exporting the game to a VASSAL module See also the longdesc README.md file for more, and of course the documentation longdesc (including the tutorial in tutorial/game.pdf). -containersize 242576 -containerchecksum 8302254134c342db781f4bfdfafd92dd3484e2a0e91dca2bf43113665bc3c44c0bf50637bb702f33fe243108bf1902283059a923e64bacdcdf7c9a5bfecc8836 -doccontainersize 2505788 -doccontainerchecksum dc1a5d8ce42661ebe5f0bf9cdba69ae66f8fe592bc48c8036ed60cd75b07a84e18c5d92fa4c4730155c5858f7ade450d59934db4e55a6ddc6a3d93ea0c78a0ef -docfiles size=687 +containersize 276556 +containerchecksum c874be4b481f83a50eb8cb2eead7d5293cd4b351098a98e62f67ed8710025aac16e38636907c4961240e6b46a4f815b5eccf2db7d79adcbe5c72237f56ebd657 +doccontainersize 2573940 +doccontainerchecksum 31996118470475a2052de529268060a08928dcac6af41cab8e5e08fe93ac87e005d9399ce431b86d0a866cfddeb786eddfc6286b87ade9867056a192eb1c18b6 +docfiles size=705 RELOC/doc/latex/wargame/README.md details="Readme" RELOC/doc/latex/wargame/compat.pdf RELOC/doc/latex/wargame/symbols.pdf @@ -367205,9 +367246,9 @@ docfiles size=687 RELOC/doc/latex/wargame/tutorial/game.tex RELOC/doc/latex/wargame/tutorial/patch.py RELOC/doc/latex/wargame/wargame.pdf details="Package documentation" -srccontainersize 206492 -srccontainerchecksum c7a04ae48a204f6e4c3819f8f4781ba65f4a71c72e011e4aa83680818f35bdf1b5cf57f92e58ad7eca366a677f2101d1c58e362869156c61d53e0028f250ef9f -srcfiles size=389 +srccontainersize 221796 +srccontainerchecksum 8f15055fb39ee61ac11eb19cafa01900d20645ffd5ef909251f4623b6dc4440bb88db23a0d4bec8559769e53a782eabf60da0c4a9ae7abfa8a06b459c74cfd1f +srcfiles size=415 RELOC/source/latex/wargame/Makefile RELOC/source/latex/wargame/chit/battle.dtx RELOC/source/latex/wargame/chit/core.dtx @@ -367231,10 +367272,12 @@ srcfiles size=389 RELOC/source/latex/wargame/hex/terrain.dtx RELOC/source/latex/wargame/hex/terrain/beach.dtx RELOC/source/latex/wargame/hex/terrain/city.dtx + RELOC/source/latex/wargame/hex/terrain/fields.dtx RELOC/source/latex/wargame/hex/terrain/light_woods.dtx RELOC/source/latex/wargame/hex/terrain/mountain.dtx RELOC/source/latex/wargame/hex/terrain/mountains.dtx RELOC/source/latex/wargame/hex/terrain/rough.dtx + RELOC/source/latex/wargame/hex/terrain/speckle.dtx RELOC/source/latex/wargame/hex/terrain/swamp.dtx RELOC/source/latex/wargame/hex/terrain/town.dtx RELOC/source/latex/wargame/hex/terrain/tree.dtx @@ -367278,19 +367321,22 @@ srcfiles size=389 RELOC/source/latex/wargame/util/randomid.dtx RELOC/source/latex/wargame/util/tikz.dtx RELOC/source/latex/wargame/utils/wgexport.py + RELOC/source/latex/wargame/utils/wgmakenato.py RELOC/source/latex/wargame/utils/wgsvg2tikz.py RELOC/source/latex/wargame/wargame.dtx RELOC/source/latex/wargame/wargame.ins -runfiles size=312 +runfiles size=342 RELOC/tex/latex/wargame/tikzlibrarywargame.chit.code.tex RELOC/tex/latex/wargame/tikzlibrarywargame.hex.code.tex RELOC/tex/latex/wargame/tikzlibrarywargame.natoapp6c.code.tex RELOC/tex/latex/wargame/tikzlibrarywargame.util.code.tex RELOC/tex/latex/wargame/wargame.beach.pdf RELOC/tex/latex/wargame/wargame.city.pdf + RELOC/tex/latex/wargame/wargame.fields.pdf RELOC/tex/latex/wargame/wargame.light_woods.pdf RELOC/tex/latex/wargame/wargame.mountains.pdf RELOC/tex/latex/wargame/wargame.rough.pdf + RELOC/tex/latex/wargame/wargame.speckle.pdf RELOC/tex/latex/wargame/wargame.sty RELOC/tex/latex/wargame/wargame.swamp.pdf RELOC/tex/latex/wargame/wargame.town.pdf @@ -367298,12 +367344,13 @@ runfiles size=312 RELOC/tex/latex/wargame/wargame.woods.pdf RELOC/tex/latex/wargame/wgexport.cls RELOC/tex/latex/wargame/wgexport.py + RELOC/tex/latex/wargame/wgmakenato.py RELOC/tex/latex/wargame/wgsvg2tikz.py catalogue-contact-repository https://gitlab.com/wargames_tex/wargame_tex catalogue-ctan /macros/latex/contrib/wargame catalogue-license cc-by-sa-4 catalogue-topics pgf-tikz games symbol-supp -catalogue-version 0.6 +catalogue-version 0.8 name warning category Package diff --git a/systems/texlive/tlnet/tlpkg/texlive.tlpdb.md5 b/systems/texlive/tlnet/tlpkg/texlive.tlpdb.md5 index 114150f3ef..5a4bcc88eb 100644 --- a/systems/texlive/tlnet/tlpkg/texlive.tlpdb.md5 +++ b/systems/texlive/tlnet/tlpkg/texlive.tlpdb.md5 @@ -1 +1 @@ -cca8cd505eea935b9d4c08f2cd597a1f texlive.tlpdb +06c5f3d4c30f96f3fdbdd01e8caac8ee texlive.tlpdb diff --git a/systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512 b/systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512 index fd2d1f4865..0cc7b5a86c 100644 --- a/systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512 +++ b/systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512 @@ -1 +1 @@ -99c10d9fad13a22ae08ca7cece09133463f904a0d6b8c90d1a5629b6da26804f73b7a3cc4c6d0002aacc7433f52d45d47b97f11d83361dc69f54ed064e31687d texlive.tlpdb +2c86651604f37c1de9a51681b2d20fbd0498a22f1202623299e47c0822364682cd90f287caf68bcfdbf79dd710cbe1edcc269f4213c807773e5590b8abc095f4 texlive.tlpdb diff --git a/systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512.asc b/systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512.asc index 8d0b382418..c032407d9c 100644 --- a/systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512.asc +++ b/systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512.asc @@ -1,11 +1,11 @@ -----BEGIN PGP SIGNATURE----- -iQEzBAEBCgAdFiEE2PL4YFeoV+QqiBBqTOGHfhlDjHAFAmc74EYACgkQTOGHfhlD -jHAVCAf8CBCVF373uwTQz1eqBtl4ke6crVgnAbPKb5trnAmHeZosjwiW19wJI9nx -chv1iCpoQ17bVHWyR6nHgLWvT9BokA/uZ3zbyt96jafjn1g7PziKm8LG0xyPBITx -cSfzyMfd14mu2Nl62dderRwK2GkFK/Gz9WlO7IHATj1lwXSoEkvB1+CeiNEbwqdl -o2BBZ6zpNkXNMc6dsmDbHGkF3PGFA7Mu22ELDVP/YnKmdSoe6MAx2ispg/ph/30p -G118bnsFlmpupgkgRjfyJx8tm57lOogcvnDhTyvCOkZ3lRomNoFJDD+w0vA857wJ -/bltbSLNzcd0zJ+QTZswscDYwaLFGQ== -=O0z/ +iQEzBAEBCgAdFiEE2PL4YFeoV+QqiBBqTOGHfhlDjHAFAmc9MYcACgkQTOGHfhlD +jHBNwQf+O/hmgdf3QaTFqnrhtw3pYp0EUD5xaocLCHvzdPuK9DBPpA7EceVAUjXk +2Lo83uzRJqW8G41GXsbHtH9/4cejM9VUE1z3scDHqQ4mnt+3VWNfXLoHtjQn7lWs +cKJipLSvPdBKcH6nyVRVe/4zQzT2aT/enId26MJ04u/ycK4CsE5w3JsFXH4BHtB9 +37fmfSSOZOLaxYy108FWEaqhU99M836VcSKOjoE+i7KHaa1tE0abC56IM1IGyftA +eJ9ThhlMvb/yWpLn4am/jFZ0BA70cVLDJUdDhjoeEWjDqLNcpGC1p5ZKN1cPfv5+ +vcd/Lu4m3OSxSN8VJSnTxQvqbnyKmw== +=cwWn -----END PGP SIGNATURE----- diff --git a/systems/texlive/tlnet/tlpkg/texlive.tlpdb.xz b/systems/texlive/tlnet/tlpkg/texlive.tlpdb.xz Binary files differindex 86977aa6b8..4a999af299 100644 --- a/systems/texlive/tlnet/tlpkg/texlive.tlpdb.xz +++ b/systems/texlive/tlnet/tlpkg/texlive.tlpdb.xz @@ -2,4 +2,4 @@ # The source CTAN of this site's material: irony.dante.de # The year-month-day-hour-minute of this site's material: -2024-11-20-02-02 +2024-11-21-02-02 |